2012-03-19 9 views
9

Estoy intentando editar un documento usando el modo org. El documento representa una publicación de blog. Necesito que el cuerpo de la publicación esté en rebajas, así que estoy usando un bloque src.Extraña sangría dentro del bloque src del modo org de emacs

El problema es que cuando alterno o guardo el texto en el bloque src después de abrirlo en otro buffer utilizando C-c ', hay algún tipo de sangría automática aplicada que daña mi formateo.

Aquí están los detalles.

Comenzando con una memoria intermedia que tiene este aspecto:

* title... 
* body 
#+begin_src markdown 
Some text. 
#+end_src 

presiono C-c ' y conseguir un nuevo buffer donde puedo editar el texto de reducción del precio a tener este aspecto en el modo de reducción del precio:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam 
lectus. Sed sit amet ipsum mauris. Maecenas congue ligula ac quam 
viverra nec consectetur ante hendrerit. Donec et mollis 
dolor. Praesent et diam eget libero egestas mattis sit amet vitae 

Usé M-q para formatear las líneas de texto, por lo que hay líneas nuevas al final de cada línea anterior. Tampoco hay espacios iniciales.

Ahora bien, si bien la prensa C-x C-s para guardar o C-c ' el formato anterior se cambia a tener este aspecto:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec a diam 
lectus. Sed sit amet ipsum mauris. Maecenas congue ligula ac quam 
    viverra nec consectetur ante hendrerit. Donec et mollis 
dolor. Praesent et diam eget libero egestas mattis sit amet vitae 

cada línea tiene sangría de dos espacios.

He intentado esto con otros tipos src, como el uso:

#+begin_src javascript 

me sale muesca similar, aunque no lo hace alternativo. En su lugar, se agregan dos espacios a cada línea.

Supongo que esto no es un error, pero mis búsquedas de Internet y miras a través de la documentación no han dado la respuesta.

Estoy usando GNU Emacs 23.4.1 en Arch Linux con Org-mode 6.33x.

También intenté utilizar la última versión de org-mode de git 7.8.05.

Respuesta

12

La variable que está mirando para personalizar es org-edit-src-content-indentation

org-edit-src-content-muesca es una variable definida en `org-src.el'.

Su valor es 2

Documentación: sangría para el contenido de un bloque de código fuente. Este debe ser el número de espacios añadidos a la sangría de la línea # + begin para calcular la sangría del contenido del bloque después de editándolo con M-x org-edit-src-code. No tiene efecto si `org-src-preserve-indentation 'no es nulo.

Usted puede descubrir esto por sí mismo por:

  1. C-h kC-C 'org-edit-special

  2. M-xapropos-variableorg-edit

+1

'org-src-preserve-indentation', que se menciona más arriba, puede que aborde más directamente mis necesidades. – noahdiewald

2

A primera vista, esto parece una autodentación de bloques en Org. Sé que, de forma predeterminada, intenta sangrar el cuerpo del bloque para que esté a dos espacios de las líneas #+begin y #+end.

Sin embargo, recomendaría actualizar a una versión más nueva de Org. 6.33x es muy antiguo y ha habido cambios en los bloques de código mientras tanto. Está disponible en AUR (Here). Sin embargo, recomendaría usar git para extraer la versión 7.8.03 en este momento, se cometió un error al liberar 7.8.04 y luego 7.8.05 y están en el medio de arreglarlo. Alternativamente, la versión incluida con Emacs24 es estable y mucho más actualizada.

+0

Actualicé usando git y estoy viendo lo mismo. – noahdiewald

Cuestiones relacionadas