Skip to content

Commit d4eedd2

Browse files
committed
Archive outdated images, update image paths in documentation, and refine "File Status Colors" content with improved structure and new visuals.
1 parent 9036887 commit d4eedd2

2 files changed

Lines changed: 34 additions & 64 deletions

File tree

docs/configuration/file-status-colors.md

Lines changed: 34 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -24,53 +24,36 @@ This feature is available in the free plan.
2424

2525
## Introduction
2626

27-
__File Status Colors__ is a feature of the IDE to colorize certain parts of the UI displaying a file according to its status.
28-
Some most obvious examples are:
27+
**File Status Colors** is a built-in feature of the IDE that colorizes filenames according to their status. These colors are applied across various parts of the IDE, including:
2928

3029
- Project View
3130
- Editor Tabs
3231
- Recent Files
33-
- Navigate to file/class/symbol
34-
- etc...
32+
- Navigate to File/Class/Symbol
33+
- and more...
3534

36-
By status, it means relatively to version control systems, such as modified files, newly added files, deleted files, ignored files or conflicted files.
35+
A file's "status" refers to its state within a Version Control System (VCS), such as Git, SVN, or Mercurial. This includes states like *modified*, *newly added*, *deleted*, *ignored*, or *conflicted*.
3736

38-
Originally these color settings were found inside the `Color Schemes` section of the settings,
39-
allowing color schemes designers to set their own file status colors, but at some point JetBrains decided to remove this ability,
40-
having judged that it doesn't make sense to have colors affecting the UI found inside settings affecting the editor.
37+
Originally, these color settings were found within the **Color Schemes** section of the settings, allowing designers to define their own file status colors. However, JetBrains later moved these settings to the application level, reasoning that UI colors should be separated from editor-specific settings.
4138

42-
While this makes sense, it was still a good thing to let people change these colors according to their themes.
43-
Why wouldn't the <u>Monokai theme</u> creator change the `Modified Files` color with a shade of cyan?
44-
Or the `Conflicted files` with a shade of magenta?
45-
A lot of scheme designers supplied those colors, so why remove this feature?
39+
While this change organized the settings differently, many users still prefer to have these colors change automatically with their theme. For instance, a theme creator might want *Modified Files* to appear in cyan for a specific dark theme but use a different color for a light one.
4640

47-
Therefore, after reconsideration, JetBrains decided to let people customize file colors anyway, but instead of a per-color scheme basis,
48-
it's now **per-application basis**, and not provided by color scheme designers.
41+
Because the IDE now treats these colors as application-level settings rather than scheme-specific ones, they are typically coupled to the global *Look and Feel* (e.g., Light or Dark). The Material Theme UI plugin restores the ability to customize these colors on a per-scheme basis.
4942

50-
As a result, this ability has now moved under **Version Control****File Status Colors**.
51-
But because these colors are related to the UI Theme, they aren't independent standalone settings, but rather coupled to the relevant _look and feel_.
52-
That means that those colors are actually set inside **IntelliJ or Darcula Color Scheme** rather than inside application settings.
53-
54-
The plugin tries to solve this issue by providing back the ability to edit _File Status Colors_ from the _Color Scheme_.
55-
56-
**UPDATE**: since 2019.1 JetBrains gave the ability to plugin creators to define their own custom themes, thus extending the list of available Look and Feels!
57-
And because of this decision, the _File Status Colors_ needed to be customizable again,
58-
so they added back the ability to customize the File Colors via
59-
the [Color Scheme](http://www.jetbrains.org/intellij/sdk/docs/reference_guide/ui_themes/themes_extras.html#customizing-version-control-file-status-colors).
60-
But again, there are still no settings for that, so the _Material Theme File Status Colors_ still come in handy!
61-
{:class='card-panel'}
43+
**Note**: Although the IntelliJ SDK provides a way for theme authors to customize these colors via the [Color Scheme](http://www.jetbrains.org/intellij/sdk/docs/reference_guide/ui_themes/themes_extras.html#customizing-version-control-file-status-colors), this method is relatively unknown and often conflicts with the Version Control settings. The **Custom File Colors** provided by this plugin is the recommended alternative.
44+
{:class='card-panel warn'}
6245

63-
---
46+
----
6447

65-
## Custom file colors
48+
## Custom File Colors
6649

67-
These settings aren't found inside the `Material Theme Settings` but instead in a specific section of the `Color Schemes`, just like before.
50+
These settings are located in a dedicated section within the **Color Schemes** settings rather than the main Material Theme settings.
6851

69-
{% include figure.html content="/screens/fileStatusColors.png" caption="Material File Status Colors" %}
52+
{% include figure.html content="/screens/features/customFileColors.png" caption="Custom File Colors" %}
7053

71-
There you can override the _File Status Colors_ from the _IntelliJ/Darcula_ color scheme to the ones specified by the color scheme.
54+
Editing these colors will directly update the values found in `Settings > Version Control > File Status Colors`.
7255

73-
Here's an explanation of the file status, and their default color:
56+
The following table describes the available file statuses and their default Material Theme colors:
7457

7558
| Title | Material Color | Explanation |
7659
|:------------------------------|:------------------------------------------------------------------------------------------------------------------------------|:----------------------------------------------------------|
@@ -80,8 +63,7 @@ Here's an explanation of the file status, and their default color:
8063
| Copied | <span style="background-color:#000; font-weight: bold; font-family: monospace; color:#C3E88D">#C3E88D</span> (green) | File copied (Mercurial only) |
8164
| Deleted | <span style="background-color:#000; font-weight: bold; font-family: monospace; color:#808080">#808080</span> (gray) | File removed from the repository |
8265
| Deleted from FS | <span style="background-color:#000; font-weight: bold; font-family: monospace; color:#808080">#808080</span> (gray) | File deleted from the file system |
83-
| Directories | <span style="background-color:#000; font-weight: bold; font-family: monospace; color:#FCFCFA">#FCFCFA</span> (default text) | Directory (depends on the *
84-
Styled Directories* setting). |
66+
| Directories | <span style="background-color:#000; font-weight: bold; font-family: monospace; color:#FCFCFA">#FCFCFA</span> (default text) | Directory color (depends on *Styled Directories*) |
8567
| Have changed descendants | <span style="background-color:#000; font-weight: bold; font-family: monospace; color:#80cbc4">#80cbc4</span> (cyan) | Directory has recursively changed files (not used) |
8668
| Have immediate changed | <span style="background-color:#000; font-weight: bold; font-family: monospace; color:#80cbc4">#80cbc4</span> (cyan) | Directory has immediate changed descendants (not used) |
8769
| Hijacked | <span style="background-color:#000; font-weight: bold; font-family: monospace; color:#ffcb6b">#ffcb6b</span> (yellow) | File is modified without editing (Perforce only) |
@@ -98,43 +80,32 @@ Here's an explanation of the file status, and their default color:
9880
| Unknown | <span style="background-color:#000; font-weight: bold; font-family: monospace; color:#d5756c">#d5756c</span> (red) | Unversioned file |
9981
| Up to date | none (default tree color) | File unchanged |
10082

101-
&nbsp;
102-
103-
Note: these colors are only relevant for Material Dark themes. Other themes such as _Monokai Pro_ or _Solarized_ would have different colors..
104-
105-
Other statuses may come from third-party plugins and should have the default colors provided by the plugin.
83+
**Note**: This feature works best when the *Color Scheme* and the *UI Theme* are aligned. Using mismatched schemes could yield unpredictable results, such as colors failing to update or displaying incorrectly.
84+
{:class='card-panel warn'}
10685

107-
**Note**: because this feature overrides the one from the IDE,
108-
changing colors via the original screen (`VCS → File Status Colors`) would be overriden the next time you change the color scheme.
109-
Therefore, it's recommended to use the `Custom File Colors` from now on, even if you are on Darcula or a custom color scheme.
86+
**Note 2**: The available statuses depend on your VCS. For example, Git does not support the `Copied` status, and Perforce does not support the `Renamed` status. If no VCS is used, no status colors will be applied.
11087
{:class='card-panel warn'}
11188

112-
---
89+
----
11390

11491
## Directories
11592

116-
From version 2.9.0 a new entry named _Directories_ has been added to the page,
117-
allowing to set a custom color to directories only, thus differentiating from regular files.
93+
In the **Custom File Colors** section, you can find a property called **Directories**. This allows you to set a custom color for directories, helping to differentiate them from regular files.
11894

119-
This setting depends on the [Project View Settings's Styled Directories](/docs/configuration/trees-settings#styled-directories), and is disabled by
120-
default.
95+
This setting requires the [Styled Directories](/docs/configuration/trees-settings#styled-directories) option to be enabled.
12196

122-
{% include figure.html content="/screens/styledDirectories.png" caption="Styled Directories" %}
97+
{% include figure.html content="/screens/features/directories.png" caption="Styled Directories" %}
12398

124-
Note: even though all customization options are available, only a portion of them have an effect.
125-
These are `Bold`, `Italic`, `Foreground`, `Error Stripe Mark`, `Underscored` and `Underwaved`. The rest doesn't work.
99+
**Note**: Although all customization options are available in the settings, only `Bold`, `Italic`, `Foreground`, `Error Stripe Mark`, `Underscored`, and `Underwaved` are currently supported for directories.
126100
{:class='card-panel warn'}
127101

128102
----
129103

130-
## Advanced customization
104+
## Advanced Customization
131105

132-
If you're a color scheme designer and want to make use of this feature for your color scheme,
133-
please insert those keys inside your `.icls` or `.xml` file, after replacing the values.
134-
Note that if you already defined colors when the IDE feature was still working, it should work again when using the plugin.
106+
Color scheme designers can manually implement this feature by adding the following keys to their `.icls` or `.xml` scheme files. If you previously defined these colors in the IDE before the feature was moved, they should still work when using this plugin.
135107

136108
```xml
137-
138109
<colors>
139110
<option name="FILESTATUS_ADDED" value="C3E88D"/>
140111
<option name="FILESTATUS_COPIED" value="C3E88D"/>
@@ -156,18 +127,17 @@ Note that if you already defined colors when the IDE feature was still working,
156127
<option name="FILESTATUS_changelistConflict" value="d5756c"/>
157128
<option name="FILESTATUS_modifiedOutside" value="82AAFF"/>
158129
</colors>
159-
```
130+
```
160131

161132
## Caveats
162133

163-
Because this feature modifies the original `VCS File Colors` feature, please bear in mind the following issues:
134+
Because this feature overrides the default VCS file color behavior, please keep the following in mind:
135+
136+
- If you switch to a scheme that does not define custom file status colors, the IDE will apply its own defaults, which may not align perfectly with the Material Theme.
137+
- Disabling or uninstalling the plugin will not automatically revert these colors. The last applied colors will remain in your settings.
164138

165-
- When switching to other schemes that don't define file status colors, the defaults will be applied,
166-
which aren't the defaults provided by Darcula/IntelliJ, and might therefore look bad.
167-
- Uninstalling/Disabling the plugin won't revert these settings, so you would still keep the last file colors even after restarting.
139+
To restore the original colors, go to the **VCS File Colors** settings and click **Reset to Default**. This will revert the colors back to the Darcula or IntelliJ defaults.
168140

169-
Thankfully, there is an easy fix for that: in the `VCS File Colors` there is a button _Reset Default_ that revert the values back to the Darcula/IntelliJ
170-
default.
171-
**Note however, that as soon as you change the color scheme, the values should change back once again.**
141+
**Note: These values will be overridden again if you change back to a color scheme that uses custom status colors.**
172142

173-
{% include figure.html content="/screens/restoreDefault.png" caption="Restore Default" %}
143+
{% include figure.html content="/screens/features/restoreDefault.png" caption="Restore Default" %}

0 commit comments

Comments
 (0)