Using Black Theme - jeeeyul/eclipse-themes GitHub Wiki

SWT is originated to be provide native experience and native look & feel. Customizing all widgets conflict with fundamental philosophy of SWT. Jeeeyul's Eclipse Themes only customizes Custom Widgets(Such as Canvas, CTabFolder, StyledText...) Custom widgets are intended to be seen same no matter what native platform is.

If native widgets were customized, there could be various side effects. For example, consider some table based viewer. It displays warning items with red color, What if you change background of table to red, Then You can't see warning items anymore. And red color is dynamically applied through hard coded routine with intention of plugin author, You can't change it with CSS.

Similar problem occurs everywhere in Eclipse. (Such as Label Decorators.)

Personally I don't want to break design and intention of plugin authors because I honor them.

So, I strongly recommend that do not customize inside world of each plugin. It is almost close to Disrespectful Hacking.

Yes, I love dark IDE also likes you when I using sublime or Xcode. However, I don't think that everything should have to be black.

Example

However, What if you still want to use black theme anyway, And you think that you can handle all side effect, then you can easily create one through Preference Dialog. Jeeeyul's Eclipse Themes provides full functionalities that are required to create dark themes. Refer Deploy Your Preset And CSS document.

To make start quick, download below preset.

  • [Black Theme.epf](files/Black Theme.epf)

This preset results seems like:

Black Example

You can import this preset through Preference > General > Appearance > Jeeeyul's Themes > Preset. You can find import... button in there.

import

You may need Eclipse Color Theme or Nodeclipse EditBox to customize syntax color in text based editor easily.

Alternative Solutions

There are several dark themes that are provided by others:

If you find other solutions, then please add it.

⚠️ **GitHub.com Fallback** ⚠️