¿Cómo lograr la numeración automática de listas en vim?

11

Los contratos, etc., las cosas formales necesitan listas numeradas.

1. Some text

2. More text

 2.1. Sub-section text

etc.

La clave es eliminar la nueva numeración manual al insertar o eliminar un elemento de la lista. ¿Es esto posible con vim? La consistencia de la numeración de listas es realmente difícil de rastrear manualmente.

Uno de los objetivos asociados con esto es tener un control de revisión adecuado hecho posible por un formato de almacenamiento no ofuscado, como texto claro.

lkraav
fuente
1
Si un PDF es aceptable, se puede usar el marcado de lista sin numerar para etiquetar los elementos de la lista y asciidocluego se puede usar para convertir el marcado en un PDF con numeración de línea. Pero también me gustaría saber cómo usar vim para la numeración automática de líneas de archivos de solo texto.
Comodín el
1
Eso es algo en lo que los procesadores de texto son bastante buenos.
romainl
@Wildcard PDF es realmente aceptable, lo único es que el etiquetado anónimo inicial dificulta la referencia a elementos numerados específicos en todo el documento. Pero aún así, su método es definitivamente mejor que nada.
lkraav
¿Sería aceptable utilizar alguna forma de reducción que luego se convertiría / desconvertiría automáticamente con un comando ex-mode? por ejemplo, elementos de lista de nivel superior de prefijo con - , elementos de lista de segundo nivel con -- , etc. Esta parece ser la vía más probable de enfoque; vea mi pregunta reciente sobre numeración consecutiva en modo Ex para un punto de partida.
Comodín el
Como las opciones son escasas, todo vale.
lkraav

Respuestas:

1

Tengo un complemento que puede (¿Parcialmente?) Ayudarte : lazyList (Sin numeración automática de listas).

En el siguiente ejemplo ( _es la posición del cursor) ...

1. Some text
2. More text   
 Sub-secti_on text
 Sub-section text   
 Sub-section text

... simplemente ejecute el comando :LazyList '2.%1%. 'para obtener:

1. Some text
2. More text   
 2.1. Sub-secti_on text
 2.2. Sub-section text   
 2.3. Sub-section text

Para eliminar los índices, ejecute el mismo comando.

De manera predeterminada, los índices se agregan al párrafo actual (misma sangría o cuando están rodeados por líneas vacías), pero puede agregarlos a una selección visual.

Una buena forma de hacerlo en su caso:

  1. Agregar índices
  2. Elimine los índices antes de agregar uno o más elementos nuevos.
  3. Agregue índices después de agregar los nuevos elementos.

Este video debería ser más explícito.

Lo malo del complemento es que no tiene en cuenta una selección visual con líneas vacías, debería reconsiderar este comportamiento.

PS English no es mi idioma nativo, así que disculpe los errores.

MisterOccan
fuente