Estou usando um modo livre de distrações que usa franjas gigantes para centralizar o buffer chamado bzg-big-fringe-mode
.
O problema é que essas franjas geralmente têm uma cor diferente da do fundo, o que dá um efeito visual feio (veja a figura no final).
Não tenho problema em corrigir isso manualmente, definindo a cor da franja para a cor do plano de fundo, da seguinte maneira:
(set-face-attribute 'fringe nil :background "#3F3F3F" :foreground "#3F3F3F")
O problema é que, ao alterar os temas, as cores das bordas permanecem cinza, mesmo que isso não faça sentido para o novo tema.
Existe uma maneira de definir programaticamente a franja para a cor de fundo?
Eu acho que preciso de duas coisas:
- A capacidade de definir a cor de fundo da franja para a cor de fundo padrão.
- Uma função ligada à alteração de temas e que faz 1. acima.
Eu acho que deveria ser capaz de fazer 2) mesmo que eu não possua habilidades no emacs, mas como eu faço 1)?
Ou isso é uma má idéia por algum motivo? Nesse caso, como seria uma abordagem melhor?
face-background
eface-foreground
neste trecho de código?Você pode definir a cor da franja como nula, caso em que não precisa se preocupar com alterações no tema. Eu tenho o seguinte na minha configuração:
(set-face-attribute 'fringe nil :background nil)
E a franja simplesmente desaparece .... :)
fonte
De alguma forma,
'fringe
parou de funcionar para mim, e agora isso:fonte