Colour Theme per project.

Answered

hi, i have many projects opened at the same time and in order to keep the confusion down, i want separate colors,themes for each project.

for example, if i have a branch project open, the background for java files will be greenish while the trunk project will have white backgrounds.
i've tried to change this but ended up changing all intellij instances.

is this possible?

16 comments
Comment actions Permalink

i found something.  this will change the background of the project pane.  not the file editor but that's good enough for me.

Settings>Project Files
add a new one
select "All Files"
pick a color
select "use in project view".
optionally deselect "use in tabs"

5
Comment actions Permalink

Is there any way to do this for the file editor or the window as a whole? Ideally my two windows would look very different (I'm frequently editing two different projects that look very similar, and it would be easy to apply edits to one that I don't intend, if the editor itself is the same color).

2
Comment actions Permalink

i've been thinking about this as well. Anyone who works on any sizeable project, where there's different repositories will have run into the problem of accidentally working in the wrong one. Thanks @derek dick for that tip. Better than nothing!

0
Comment actions Permalink

I can't find "project files" under Preferences (on a mac)

can you be more specific? are you talking about editing Scopes? I can't figure out what you guys are doing.

0
Comment actions Permalink

OK I got it. Preferences > Appearance & Behavior > File Colors
Then click + to add new to "local colors". Basically we are associating a color with a Scope, so I add "Profile Files" which is my default view. Select a color to go with it, and deselect "Use in editor tabs". you do want to Enable File Colors and Use in Project View.

What you get is a colored project view panel. So I have RED here for my admin project and green for my customer-facing project.




7
Comment actions Permalink

While Max's suggestion is a good start given the tools we currently have, here's what I think would my ideal scenario.

I'd like to be able to change the header area's background color based upon project, possibly the window decoration bar (though this would have to be done in the window manager and is not the responsibility of intelliJ), and also the icon used when alt+tabbing and/or in the taskbar.

The different icon (or a differentiated version of the same icon) would be most helpful in ensuring that I reach the right workspace, but once I'm there some coloring/theming difference is also required to ensure that I'm not doing work in the wrong place.  Chrome used to have different icons for the different chrome profiles you made that would show up in the alt+tab UI as well as in the taskbar (they have since broken this functionality, much to my chagrin).  I struggled to find a good picture of it online, but here's the best I could do.  While this seems involved (overlaying images on the existing icon), I would be happy with the ability to specify a custom icon per-profile too.

 

The purpose of doing this, at least for me, is I like to have several branches of work open at once and the easiest way to accomplish this is to have several intellij projects.  I realize this can (and sometimes is) done by stashing work and switching branches with git, this is a very lengthy process and the side-by-side development saves a lot of pain.

Thank you for considering any options to make this process more streamlined.

2
Comment actions Permalink

Check out https://stackoverflow.com/a/40861163/17697 for a clever solution that does exactly what I was looking for.  I made a few 1px by 1px pngs of various colors and set them as the background images on different projects.

2
Comment actions Permalink

Project Labels is a pretty decent plugin for differentiating project windows. Not as distinctive as some of the other solutions here, but definitely helps.

1
Comment actions Permalink

The material UI plugin has a feature you can enable in the settings where each project is assigned a colour across the top of the application window with the project name written in it.

Super easy to see when your flipping through windows in task view(windows) or command centre(mac) and is a must-have feature IMO.

The colours are generated from the project name too so it will always be the same colours for the same projects on different computers.

https://plugins.jetbrains.com/plugin/8006-material-theme-ui

It used to be free but now they want payment for enabling the extra features including this one 😢.

I've asked them to sell this one feature by itself as it was the only reason I wanted it coz I don't actually care about the colour themes just want the project colours.

They offered me a discount if that's the only feature I want it for. If more people ask for it maybe they will release it as a separate plugin.

I've been trying to live without it and find an alternative hence I ended up here. But there is no good alternative it seems so might just pay them. 😫

-1
Comment actions Permalink

Hello everyone!

I've found other one solution - is to set background image to entire project window.

  • File -> Settings... -> Appearance & Behavior -> Appearance
  • Push Background Image... button
  • Then tune up your background image
  • Set checkbox This project only as checked

And of course changes will apply only after Apply | OK button in Settings window.

2
Comment actions Permalink

I am using Hyperflash00 solution with a different image file painted entierly with the color I want as a background. Made several files for the different projects I work on. Very easy. Just keep the files in a place they will not accidently get deleted. 

0
Comment actions Permalink

I'd warn anyone against the Material UI solution by Bradley. Not only does it cost money to even enable the option (as he warns), it doesn't seem like it works like it would be expected, at least not from my standpoint.

"Per project" suggests that, no matter how many projects I have open, I'll be able to differentiate from each one. Their use of the term is entirely misleading. From the look of it, what it does is that when a project is open, it sets the tab coloring for EVERYTHING that is currently open to it.

So, if you have Project A set to red, and Project B set to blue:
- Starting with IntelliJ completely closed.
- Open Project A, and you'll see your tabs as Red
- Open Project B in a new window, without closing Project A
- Tabs in Project B AND in Project A will now be Blue.

The reason that I wanted this feature was because I have multiple projects open at a time, and this is not at all what I expected by "Per Project"

0
Comment actions Permalink

I think you might be using the wrong feature. You cant set the colour and it doesn't colour the tabs.

The setting your looking for is a simple check box toggle it on and it will automatically pick a colour based on the project folder name and apply it as a bar of colour at the top with the projects name in the middle.

I don't have it installed anymore so I cant show you right now.

0
Comment actions Permalink

Or the project has changed, and what you're suggesting no longer exists/there's a new setting you're not familiar with?

This is what's available.

0
Comment actions Permalink

Your right that is new. i was talking about Project Frame.
If the new feature isnt working properly best to report it. Its only 1 dev supporting it but hell probably get to it eventually.

0

Please sign in to leave a comment.