a resposta de obsoleta é muito boa, mas não funcionou muito bem para mim. Atualmente, estou no Emacs 24.4 e na 8.2.4, e o conselho org-indent-initialize
não fez nada. Eu tive que redefinir a função com o caractere de recuo alterado, e isso funcionou. Talvez quando eu atualizar para o Emacs 24.5 e org 8.3, o aviso funcionará.
Mas também tive que fazer alguns outros ajustes, porque uso fontes de tamanho variável de tamanho diferente para diferentes níveis de cabeçalho, o que significa que um cabeçalho de nível 1 *
não tem a mesma largura que um de nível 2 e assim por diante.
Então eu também tive que fazer isso:
- Defina as faces
org-hide
(usadas para recuar linhas de título) e org-indent
(usadas para recuar linhas que não sejam de título) para garantir que elas usem a mesma fonte no mesmo tamanho.
- Defina a variável
org-indent-boundary-character
como em *
vez do padrão
(um espaço). Esse é o caractere que é inserido após os caracteres de recuo, mas antes do conteúdo. Não tenho certeza se mudar isso é uma necessidade, mas parece ajudar a consistência. Pode depender da fonte que você está usando, tamanhos, etc.
Fazer essas coisas, além de fazer a alteração org-indent-initialize
como obsoleta fornecida, parece ter feito isso. Acabo com um buffer parecido com este:
Você pode ver que, à medida que o nível do título diminui, o recuo não se alinha perfeitamente ao texto do cabeçalho. Acho que é por causa do uso de fontes menores para títulos de nível inferior, e não acho que haja uma maneira fácil de corrigir isso. Pode ser possível fazer algo com propriedades de texto comoline-prefix
e wrap-prefix
, porque elas podem ser configuradas para imagens e caracteres especiais, mas isso provavelmente seria complicado e lento. Se você usar o mesmo tamanho de fonte para todos os níveis de cabeçalho, isso provavelmente não será um problema.
Enfim, isso provavelmente é bom o suficiente. :)
PS Conforme solicitado, aqui estão meus org-level
rostos. Eles são copiados custom-set-faces
, mas se você não usar, customize
pode configurá-los fora dele.
'(org-level-1 ((t (:inherit variable-pitch :foreground "#cb4b16" :weight bold :height 1.3))))
'(org-level-2 ((t (:inherit variable-pitch :foreground "#859900" :weight bold :height 1.2))))
'(org-level-3 ((t (:inherit variable-pitch :foreground "#268bd2" :weight bold :height 1.15))))
'(org-level-4 ((t (:inherit variable-pitch :foreground "#b58900" :weight bold :height 1.1))))
'(org-level-5 ((t (:inherit variable-pitch :foreground "#2aa198" :weight bold))))
'(org-level-6 ((t (:inherit variable-pitch :foreground "#6c71c4" :weight bold))))
'(org-level-7 ((t (:inherit variable-pitch :foreground "#d33682" :weight bold))))
'(org-level-8 ((t (:inherit variable-pitch :foreground "#dc322f" :weight bold))))