¿Expandir subárbol de modo org con punto después de puntos suspensivos?

10

Me encanta el modo org, pero una de las cosas que siempre me ha molestado es que, si el punto es después de los puntos suspensivos de un subárbol colapsado, presionar TABno lo expande. Por ejemplo, si el punto está aquí (representado por |):

* Grandiose Plans
** Save the world...|
** Colonize Mars...

... y presiono TAB, no pasa nada. En cambio, tengo que poner el punto aquí:

* Grandiose Plans
** Save the world|...
** Colonize Mars...

... y luego puedo expandir el subárbol.

Tenga en cuenta que usar C-epara mover el cursor al final de un encabezado no soluciona este comportamiento, solo funciona a su alrededor. Por ejemplo, mira este árbol:

* Long level one heading foo bar baz fizz buzz|...
** Shorter level two heading...

El punto está al final del primer encabezado. Si presiono la flecha hacia abajo o C-npara mover hacia abajo una línea, el punto estará aquí:

* Long level one heading foo bar baz fizz buzz...
** Shorter level two heading...|

... y presionar TABno expandirá el encabezado de segundo nivel.

La idea es arreglarlo TABpara que expanda el encabezado de todos modos. De esa manera, en lugar de tener que hacer C-n C-e TAB, uno puede hacer C-n TAB.

No he podido averiguar nada sobre cómo solucionar este comportamiento. ¿Me estoy perdiendo algo o es necesario escribir algún código? Gracias.

Blujay
fuente

Respuestas:

4

Prueba esto:

(setq org-special-ctrl-a/e t)

Luego se C-emueve antes de las elipses, no después.

scbagley
fuente
1
Gracias, pero ya tengo ese conjunto, y no resuelve el problema. Por ejemplo, si un encabezado de primer nivel tiene 80 caracteres y el encabezado de segundo nivel tiene 40 caracteres, y el punto está al final del encabezado de primer nivel, y presiono la flecha hacia abajo o C-n, el punto se moverá al encabezado de segundo nivel más allá de los puntos suspensivos.
blujay
2
@blujay Establecer esta opción hace que sus ejemplos funcionen como lo desee para mí. Tengo emacs 24.5.1, org 8.3.1, en OS X 10.10.5, si eso ayuda. Ejecutar emacs -Qy requerir org me da la versión 8.2.10, que reproduce tus ejemplos.
scbagley
¡Gracias! Todavía estoy en Org 8.2.4, la versión empaquetada en mi distribución. Supongo que debería seguir adelante y actualizar manualmente. No pude encontrar nada en el registro de cambios que pareciera causar que este comportamiento cambie en 8.3, ¡pero aceptaré su palabra! :) Informaré después de actualizar.
blujay
3

org-revelar

Cuando esté a la derecha de las elipses, podría estar (dependiendo de lo que oculten las elipses) en efecto en el árbol de la jerarquía y no en el título respectivo. En esta situación, puede escribir C-u C-c C-ry se mostrará el título (pero terminará con el cursor en otra ubicación). O primero tiene que cambiar la posición del cursor, como lo ha mostrado en su pregunta (preferiría un C-apensamiento).

Dieter.Wilhelm
fuente
Por "detrás de los dos puntos", querías decir "después de los puntos suspensivos", ¿verdad? Sé que quieres decir eso, pero el uso de la palabra "detrás" me hace interpretar como "antes de los puntos suspensivos" o "a la izquierda de los puntos suspensivos".
Kaushal Modi
@kaushalmodi gracias por detectar esta estupidez, fue bastante tarde, cuando lo escribí y actualicé ahora.
Dieter.Wilhelm
1
Gracias, pero la idea es evitar tener que mover el punto o usar otra secuencia de teclas. TABcon el punto después de los puntos suspensivos debería seguir adelante y expandir el subárbol.
blujay
2

Esto se puede resolver agregando un gancho al org-tab-first-hookque agrega org-end-of-line. Cada vez que TABse usa, salta al último carácter visible del org-line, pero antes de los puntos suspensivos, y luego abre / cierra el contenedor como de costumbre.

(add-hook 'org-tab-first-hook 'org-end-of-line)
David
fuente