Usando fontes de largura fixa e de largura variável no modo organizacional

9

Eu gostaria de ter um arquivo de modo organizacional com o seguinte conteúdo:

#+TITLE: My awesome Emacs file

* My Header
Here's some information under the header

#+BEGIN_SRC sh
echo "this is some code"
#+END_SRC

More text and =verbatim= things

É possível ter tela Emacs o cabeçalho e texto em uma fonte de largura variável e apenas o #+BEGIN_SRC, #+END_SRC, =verbatim=e código fonte em uma fonte de largura fixa?

Lee H
fonte

Respostas:

5

Isso é quase uma bobagem dessa questão no SO. Até o momento em que escrevo, a resposta aceita lá é (mutatis mutandis):

(set-face-attribute 'org-verbatim nil :inherit 'fixed-pitch)

EDIT: Leia realmente sua pergunta. Como você deseja alterar várias faces, esta é uma resposta mais completa:

(dolist (face '(org-block-begin-line 
                org-block-end-line 
                org-verbatim 
                org-block-background))
  (set-face-attribute face nil :inherit 'fixed-pitch)

Observe que isso substituirá quaisquer :inheritparâmetros existentes nas faces. Se isso for um problema, outra resposta para a mesma pergunta SO fornece código para solucionar o problema.

purple_arrows
fonte
1

Não estou muito familiarizado com a org-modedelimitação de blocos, portanto, só posso dar uma resposta geral.

Existe uma face padrão chamada variable-pitch, que você pode aplicar a uma determinada região como esta:

(set-text-properties (region-beginning) (region-end) '(face (variable-pitch))))

Porém, isso funciona apenas quando a fonte automática é inibida. Você pode conectar-se ao org-modecódigo de fonte e substituir a face das regiões selecionadas por variable-pitch.

rekado
fonte