Ubuntu + Eclipse 4.2-Tema oscuro-Cómo oscurecer los fondos de la barra lateral?


Debido al gasto de programación 24/7 frente a la pantalla de una computadora (trabajo, tesis), es beneficioso ver los colores oscuros tanto como sea posible.

El tema Ambiance de Ubuntu se puede mejorar cuidadosamente usando las personalizaciones de Solancer, y Eclipse Juno se ve mayormente consistente después de aplicar el tema dark Juno de Roger Dudler.

Sin embargo, hay un problema con el uso de un tema Juno oscuro como el de Dudler. El color de fondo de los elementos activos dentro de Package Explorer, Project Explorer y otras vistas de Eclipse muestran colores blanco / gris que no solo son inconsistentes, sino que en realidad oscurecen componentes importantes de la pantalla como flechas de expansión.

Después de mucho buscar en Google, parece que tales colores son heredados del sistema operativo, y por lo tanto no se pueden cambiar desde Eclipse Preferences. Esperaba que el tema dark GTK 3 / Unity (Ambiente de Solancer) proporcionara los colores oscuros necesarios, pero este no es el caso.

He usado sed para reemplazar todos predefinidos colores en todos los archivos .css bajo /opt/eclipse/plugins/org.eclipse.platform_4.2.0.v*/css con #FF0000 para establecer si algún color definido allí afecta a los colores problemáticos blanco/gris; lamentablemente no lo hacen.

Habiendo visto la mención de una carpeta ~/.e4css en línea que puede contener definiciones CSS sobreescritas para tales propiedades, busqué la carpeta en mi máquina local, solo para encontrar que no existe.

Existen preguntas similares a esta en SO, pero ninguna especifica explícitamente cómo "arreglar" estos colores.

Mi pregunta es simple: hay una propiedad CSS GTK+ 3.0 (grupo) que se puede definir para especificar estos colores para Eclipse 4.x, ¿y dónde debe configurarse?

La luz burns ¡arde!

Author: TylerH, 2012-09-02

5 answers

Finalmente encontré la solución buscando los archivos de configuración de GTK manualmente.

Resulta que Eclipse usa GTK+ 2.0 .

Si instala un tema GTK personalizado en Ubuntu (todos son compatibles con Unity también) extraerá la carpeta del tema en ~/.themes.

GTK + 3.0 se configura a través de css, por ejemplo, ~/.themes/YourTheme/gtk-3.0/gtk.css

GTK + 2.0 se configura a través de un archivo rc, por ejemplo, ~/.themes/YourTheme/gtk-2.0/gtkrc

La mayoría de los temas GTK+ 3.0 contienen estas dos carpetas de configuración debido a muchos aplicaciones específicas de GTK + 2.0.

La línea principal en el archivo GTK+ 2.0 gtkrc contiene los colores fundamentales del primer plano y del fondo; estos son los que deben cambiarse.

Para modificar el color bg del elemento activo seleccionado en las vistas de Eclipse, debe cambiar de color base_color. Para modificar el color del elemento bg no seleccionado, debe cambiar selected_bg_color. El color de la fuente se cambia con las propiedades equivalentes fg_color (en el caso de base_color esto es simplemente 'fg_color').

Tenga en cuenta esto afectará a todas las aplicaciones GTK, por lo que es posible que tenga que ajustar de acuerdo a su gusto personal. También tenga en cuenta que debe volver a cargar el tema GTK activo y reiniciar Eclipse para ver los cambios en efecto. La forma más rápida de hacerlo es sudo apt-get install myunity, iniciarlo y dejarlo abierto mientras reinicia Eclipse durante los cambios de color, y seleccionar otro tema seguido por el tema deseado cada vez que desee cargar sus cambios gtkrc.

La línea inicial original gtkrc en mi tema GTK activo léase:

gtk-color-scheme = "base_color:#ffffff\nfg_color:#4c4c4c\ntooltip_fg_color:#ffffff\nselected_bg_color:#f07746\nselected_fg_color:#FFFFFF\ntext_color:#3C3C3C\nbg_color:#F2F1F0\ntooltip_bg_color:#000000\nlink_color:#DD4814"

Después de mucha experimentación me decidí por esta configuración de reemplazo:

gtk-color-scheme = "base_color:#555555\nfg_color:#000000\ntooltip_fg_color:#999999\nselected_bg_color:#666666\nselected_fg_color:#ffffff\ntext_color:#000000\nbg_color:#333333\ntooltip_bg_color:#000000\nlink_color:#DD4814"

El cambio en todo el sistema operativo es muy agradable! Así es como se ve Eclipse ahora, sin oscurecer esta vez:

Dulce madre de la oscuridad

Espero que os guste el nuevo look:)

P.d. Como se puede predecir, el proceso para Netbeans es equivalente.

ACTUALIZAR

Esta es información complementaria, el proceso anterior sigue siendo correcto cuando se utiliza un tema personalizado como Dudler del.

Después de más experimentación, ahora está claro por qué la edición /opt/eclipse/plugins/org.eclipse.platform_4.2.0.v*/css/*.css no tuvo ningún efecto:

Supongamos que está editando e4_default_gtk.css en esa ubicación: los efectos de los estilos modificados en ese archivo solo se aplicarán cuando seleccione GTK en Window -> Preferences -> Appearance -> [Theme].

Puede relacionar los temas enumerados en este menú desplegable, junto con su sistema operativo, con los nombres de los .archivos css en la ubicación del sistema de archivos antes mencionada.

 20
Author: KomodoDave,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-09-05 20:56:18

Si no desea cambiar el aspecto de todo el escritorio, puede iniciar un tema GTK+ separado para Eclipse configurando la bandera GTK2_RC_FILES en el comando para iniciar Eclipse.

Ejemplo:

GTK2_RC_FILES=/path/to/gtk/theme/gtkrc /opt/eclipse/eclipse

Eso significa que puede crear una copia de su tema GTK+ y modificarlo para Eclipse sin afectar a ninguna otra parte de su escritorio.

 9
Author: Martin Wallgren,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-11-07 21:37:40

Finalmente no necesita cambiar su tema GTK para tener un Explorador de Paquetes oscuro o un Explorador de Proyectos, etc. Windows. Prueba la solución publicada aquí , para mí funciona bien tanto en Ubuntu como en Windows sin cambiar el tema del sistema.

 2
Author: John Carmak,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:17:04

Incluso en 2013, algunos elementos todavía no pueden ser 'temáticos', y no solo en Eclipse IDE. La única manera de luchar con los hardcoders de color (personas que definen el color del elemento a través de constante, no a través del parámetro de tema) es el filtro de color Compiz. Desarrollo este filtro que preserva los colores al invertir. Así que ya no hay problema con ningún software.

Desafortunadamente, el filtrado de color no funcionará en Ubuntu más reciente, como sé.

Por favor, lea más aquí http://ubuntuforums.org/showthread.php?t=1419702&page=3

!!ARBfp1.0
TEMP temp, neg, YPbPr;
TEX temp, fragment.texcoord[0], texture[0], RECT;
RCP neg.a, temp.a;
MAD temp.rgb, -neg.a, temp, 1.0;
MUL temp.rgb, temp.a, temp;
MUL temp, fragment.color, temp;
DP3 YPbPr.x, temp, {0.333, 0.333, 0.333, 1};
SUB YPbPr.y, YPbPr.x, temp.b;
SUB YPbPr.z, YPbPr.x, temp.r;
ADD temp.r, YPbPr.x, YPbPr.z; 
ADD temp.b, YPbPr.x, YPbPr.y;
SUB temp.g, YPbPr.x, YPbPr.z; 
SUB temp.g, temp.g, YPbPr.y;

MOV result.color, temp;
END

# DO NOT MOVE LINE #2 (TEMP...) below, i.e. do not insert comments before it!
# do not insert comments before 'END' token: SOMETIMES not work!

# replace file /usr/share/compiz/filters/negative with this file.

#  Color filter: negative, but preserve colours. Tested on Ubuntu LTS 10.04.

# compiled from [1], [2] by [email protected], www.bdyssh.ru
# [1] http://hronir.blogspot.com/2008/09/compiz-fusion-color-filter-for-hue.html
# [2] http://ubuntuforums.org/showthread.php?t=1419702

# add to line 15:  MUL temp.b, 0.5, temp.b;  - for warm/melatonine colors, or 
#  MUL temp.g, 0.5, temp.g;  - for cold colors.
 1
Author: user2223633,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-10-09 08:39:30

Para Eclipse 4.5: 1. Crear un archivo como el fragmento insertado 2. Guárdelo como " / usr / share / themes/..tema usado../ gtk-3.0 / apps / eclipse.css" 3. Inclúyalo "/usr/share / themes/..tema usado../ gtk-3.0 / gtk-main.css "

@define-color ecl_scrollbutton_color #7C7C7C;
@define-color ecl_scrollbutton_color_hover #FB7A00;
 
.scrollbar,
.scrollbar.vertical {
    -GtkScrollbar-has-backward-stepper: 0;
    -GtkScrollbar-has-forward-stepper: 0;
    -GtkRange-slider-width: 14;

    border-radius: 20px;

    border-image: none;
}

/*.scrollbar.trough,
.scrollbar.trough.vertical {
}
*/
.scrollbar.slider,
.scrollbar.slider.horizontal,
.scrollbar.slider.vertical,
.scrollbar.button,
.scrollbar.button.horizontal,
.scrollbar.button.vertical {
    border-width: 0.5px;
    border-style: solid;
    border-color: shade (@ecl_scrollbutton_color, 0.66);
    background-image: -gtk-gradient (linear, left top, right top,
                                     from (shade (@ecl_scrollbutton_color, 1)),
                                     color-stop (0.5, @ecl_scrollbutton_color),
                                     to (shade (@ecl_scrollbutton_color, 1)));
    box-shadow: inset 1px 0 shade (@bg_color, 1.1),
                inset -1px 0 shade (@bg_color, 1.01),
                inset 0 1px shade (@bg_color, 1.1),
                inset 0 -1px shade (@bg_color, 1.1);
}

.scrollbar.slider:hover,
.scrollbar.slider.vertical:hover,
.scrollbar.slider.horizontal:hover {
    background-image: -gtk-gradient (linear, left top, left bottom,
                                     from (shade (@ecl_scrollbutton_color_hover, 1)),
                                     color-stop (0.5, @ecl_scrollbutton_color_hover),
                                     to (shade (@ecl_scrollbutton_color_hover, 1)));
    box-shadow: inset 1px 0 shade (@bg_color, 1.1),
                inset -1px 0 shade (@bg_color, 1.1),
                inset 0 1px shade (@bg_color, 1.1),
                inset 0 -1px shade (@bg_colo
 0
Author: Attila Perger,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-03-07 11:18:06