Usar org-src-preserve-indentación solo en bloques de código específicos (o buffers, o cualquier cosa más allá del contexto global, realmente)

7

He estado buscando en Google y buscando en los org-babeldocumentos, pero está saliendo con poco.

La cuestión es que una de las cosas en las que estoy trabajando es usar org-babel para enredar la fuente de Makefile . En ella, la documentación indica, y entiendo por qué lo hace, que necesito evaluar (setq org-src-preserve-indentation t), lo que tengo, en este momento.

La cosa es que no quiero habilitar este valor a nivel mundial. Puedo entender que tiene sentido para Python, Makefile u otros lenguajes que son sensibles al espacio en blanco, pero realmente no quiero que esté habilitado en otro lugar. Además, el resultado final de esto es que el archivo org final no funcionará para las personas que no habilitan el valor por defecto, por lo que el archivo org resultante es menos portátil de todos modos.

Preferiría que si podía simplemente permitir que org-src-preserve-indentationen función de cada código de bloque (que es la tipificación adicional, pero puedo vivir con eso), pero incluso un ajuste de tampón específico es aceptable. La cuestión es que no estoy seguro de cómo hacerlo.

Yo sospecho que podría hacerse mediante el aprovechamiento de cómo #+HEADERlos ajustes se eval código Lisp, pero ¿eso no significa que cada vez que el archivo de enredo, o algo así, el ajuste se mantiene en cada momento? Prefiero no hacer eso, eso solo hace que el archivo sea impredecible de usar.

Tariq Kamal
fuente

Respuestas:

5

En base a los comentarios que recibí del grupo de modo de organización de Google+ , además de leer sobre las variables locales del búfer , finalmente terminé usando M-x add-file-local-variable RET org-src-preserve-indentation RET tpara finalmente agregar este bloque de código en la parte inferior de mi archivo de organización:

# Local Variables:
# org-src-preserve-indentation: t
# End:

Una vez que actualizar la configuración local (es decir, pulsar CC en los argumentos de cabecera), Emacs me pregunta si quiero usar la variable local búfer, y luego ajusta org-src-preserve-indentationa teste tampón solo.

Esto parece resolver el problema a mi gusto, por lo que voy a marcar esta pregunta como cerrada.

Tariq Kamal
fuente