Testei salvar seu arquivo CSS de amostra em um arquivo emacs-zufall.css
que importei do arquivo gtk.css
modificado localmente usando
@import url("apps/emacs-zufall.css");
e funcionou: minha barra de menu se transformou em cor verde psicodélica com texto em preto.
Eu estou supondo que o seu emacs não está nem lendo o arquivo no local que você criou. A localização depende do nome do tema. Estou usando o tema Orion
e o emacs está tentando carregar gtk.css
usando caminho
~/.local/share/themes/Orion/gtk-3.0/gtk.css
e, se falhar, a partir de
~/.themes/Orion/gtk-3.0/gtk.css
A maneira mais fácil de ver isso é apenas rastrear as chamadas do sistema. Se estiver usando o Linux, você pode executar
$ strace -o strace.log emacs &
e procure a string themes
em strace.log
usando seu pager ou editor favorito (por exemplo, emacs
!). Há muita saída, mas é possível localizar rapidamente o caminho usando essa sequência de pesquisa (para corresponder às tentativas de localizar o arquivo de tema). Aqui está o que eu encontrei na minha strace
saída quando eu movi temporariamente o diretório do tema modificado localmente:
access("/home/foof/.local/share/themes/Orion/gtk-3.0/gtk.css", F_OK) = -1 ENOENT (No such file or directory)
access("/home/foof/.themes/Orion/gtk-3.0/gtk.css", F_OK) = -1 ENOENT (No such file or directory)
access("/usr/share/themes/Orion/gtk-3.0/gtk.css", F_OK) = 0
Se você vir um resultado ENOENT
semelhante indicando seu emacs
e tiver uma opinião diferente sobre onde procurar os arquivos CSS, você pode:
-
copie o tema para o seu diretório local e faça as modificações necessárias:
$ mkdir -pv ~/.local/share/themes/Orion $ cp -ai /usr/share/themes/Orion/gtk-3.0 ~/.local/share/themes/Orion/
-
adicione a instrução @import ao arquivo
gtk.css
modificado localmente:@import url("apps/emacs.css");
-
e crie ou certifique-se de que o arquivo
apps/emacs.css
exista no local esperado com as modificações desejadas.
Lembre-se de lançar emacs
usando a linha de comando para ver possíveis erros relacionados ao CSS. Na minha experiência, não há cache de temas, então era possível ter vários aplicativos emacs abertos com diferentes configurações de tema, ao contrário do que a resposta do superusuário ligado dizia; mas isso pode ser porque eu não estou executando o sistema de desktop Gnome (o KDE é a minha escolha).
Se você estiver usando outro sistema operacional, deve haver outro utilitário para rastrear as chamadas do sistema. OS X e talvez outros sistemas BSD usem o DTrace, etc. Você também pode considerar a execução do emacs sob o debugger se você não puder encontrar como rastrear as chamadas do sistema em seu sistema, embora isso seja muito mais problemático.