Uso de fuente de ancho fijo y ancho variable en modo org

9

Me gustaría tener un archivo de modo org con el siguiente contenido:

#+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

¿Es posible tener pantalla Emacs el encabezado y el texto en una fuente de anchura variable y sólo el #+BEGIN_SRC, #+END_SRC, =verbatim=y el código fuente en una fuente de ancho fijo?

Lee H
fuente

Respuestas:

5

Esto es casi un engaño de esta pregunta sobre SO. Al escribir estas líneas, la respuesta aceptada allí es (mutatis mutandis):

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

EDITAR: en realidad lea su pregunta. Como desea cambiar varias caras, esta es una respuesta más completa:

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

Tenga en cuenta que esto sobrescribirá cualquier :inheritparámetro existente en las caras. Si eso es un problema, otra respuesta a la misma pregunta SO proporciona un código para solucionar el problema.

flechas_púrpura
fuente
1

No estoy muy familiarizado con cómo org-modedelimita los bloques, por lo que solo puedo dar una respuesta general.

Hay una cara estándar llamada variable-pitch, que puede aplicar a una región determinada como esta:

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

Sin embargo, esto solo funciona cuando se inhibe la fuente automática. Es posible que pueda engancharse en org-modeel código de fuente y anular la cara de las regiones seleccionadas con variable-pitch.

rekado
fuente