Encontrei uma resposta no seguinte link: http://codeisland.org/2013/codeblocks-dark-theme/
Para mim, um usuário do Linux Mint, a versão do sistema não funcionou.
Agora vou reproduzi-lo aqui, caso o link desapareça. Todos os créditos vão para o localizador original da solução alternativa.
Suporte ao tema Code :: Blocks…
... não existe. Isso se deve ao fato de que (para portabilidade) a GUI do Code :: Blocks é criada usando o wxWidgets , que oferece uma aparência nativa em todas as plataformas. Isso é equivalente ao que o ambiente da área de trabalho achar adequado.
Então, para obter um tema sombrio no Code :: Blocks, você precisa de um tema sombrio para todo o ambiente da área de trabalho? Sim e não.
O Code :: Blocks para Linux é criado explicitamente com a porta wxGTK, o que significa que a API wxWidgets é agrupada em torno da API Gtk. Portanto, no Linux, o Code :: Blocks usa o Gtk para sua GUI.
Agora, a porta wxGTK não está completamente atualizada, portanto, não usa o Gtk-3, mas o Gtk-2 (mais antigo). Isso é importante, porque a maneira como os temas funcionam mudou ligeiramente entre essas versões.
Para aplicativos que usam o Gtk-3, o Gnome 3 oferece uma gtk-application-prefer-dark-theme
entrada no arquivo settings.ini, que instrui todos os aplicativos do Gtk-3 a usar a versão escura do tema definido no momento (se disponível, por exemplo, o padrão do Gnome 3). tema "Adwaita"). No entanto, isso não afeta os aplicativos Gtk-2 (como Code :: Blocks).
Além disso, os aplicativos Gtk-3 podem decidir não usar o tema sombrio ou sempre usá-lo (como Eye of Gnome):
GtkSettings *settings = gtk_settings_get_default ();
g_object_set (G_OBJECT (settings),
"gtk-application-prefer-dark-theme", TRUE, NULL
);
(Da fonte “Eye of Gnome”, main.c linha 175 ) Tema escuro para Gtk2
Então, fui até o Gnome-Look.org e procurei um bom tema sombrio do Gtk-2 e descobri que “ Elegant Gnome ” era uma boa combinação. Eu então copiei manualmente o próprio tema [ Elegant-GTK
] para ~/.themes/
e o ícone-tema [ Elegant-AwOken
] para ~/.icons/
.
Agora, para que o Code :: Blocks use o tema, você tem duas opções: Torne-o o tema padrão do Gtk-2 ou diga ao Code :: Blocks para usar explicitamente os arquivos de tema que você baixou.
Eu escolho a opção posterior. Após algumas pesquisas, deparei-me com uma postagem no blog, onde encontrei o seguinte método:
GTK2_RC_FILES=/path/to/your/theme/gtkrc application
Isso define temporariamente a variável de ambiente GTK2_RC_FILES
para o caminho do tema, para o início de application
(no nosso caso codeblocks
). O Code :: Blocks agora deve ter uma aparência sombria.
[...]
Ativar tudo como padrão
Por último, mas não menos importante, quero que o Code :: Blocks comece sempre com o tema escuro do Gtk-2. Se você definir o tema em todo o sistema, não precisará fazer isso .
Coloquei o comando com o tema temporário em um shell-script e alterei o /usr/share/applications/codeblocks.desktop
arquivo-para ler:
[Desktop Entry]
Exec=/home/luke/.codeblocks/start_dark.sh
# More stuff down here...
Ou você pode copiar o arquivo para o diretório inicial e modificá-lo lá: cp /usr/share/applications/codeblocks.desktop ~/.local/share/applications/codeblocks.desktop
O script fica assim:
# It's important to give the path to the "gtkrc"-file here!
GTK2_RC_FILES=~/.themes/Elegant-GTK/gtk-2.0/gtkrc codeblocks
E agora, o Code :: Blocks está escuro.
Livrar-se da decoração da janela
Agora, eu tinha um editor preto e um tema de GUI, mas uma barra de título de janela branca. Para me livrar disso, instalei a extensão “Maximus” para o GnomeShell .
O futuro
Este artigo pode não funcionar por muito tempo! Conforme publicado na página inicial do wxWidgets:
2012-07-09
wxWidgets 2.9.4 has been officially released. […]
2.9 series bring many improvements compared to 2.8 series […] Compared to the previous 2.9.3 release, the most important change in this release is beta-level support for GTK+ 3 in wxGTK port.
we believe that 2.9.4 can be used in production environment […]
Portanto, é uma questão de tempo até que o Code :: Blocks avance e use o Gtk-3, que não funcionará com as etapas descritas aqui. Vou atualizar o artigo assim que tiver problemas com isso. Já não uso code :: blocks :(