cursor-movement – ¿Cuál es la diferencia entre j, CTRL-J,<NL> y CTRL-N en modo normal?

Pregunta:

Vi en algún lugar de la web a alguien que usaba Ctrl-J y, como no conocía este mapeo, busqué en el documento relevante y encontré lo siguiente:

j           or
<Down>      or
CTRL-J      or
<NL>        or
CTRL-N          [count] lines downward linewise.

Lo que me lleva a varias preguntas:

  • ¿Qué es <NL> : lo vería como un equivalente de <CR> ya que presionar Enter bajará una línea en el modo normal de forma predeterminada, pero por qué está <NL> aquí y no <CR> ?
  • ¿Cuál es la diferencia entre estas asignaciones ? ¿Todas estas 5 opciones van una línea hacia abajo de la misma manera? Según mis pruebas, respondería que sí, pero eso me llevaría a mi siguiente pregunta.
  • ¿Por qué hay 5 asignaciones para hacer exactamente lo mismo ? Puedo entender que j y <down> se guardan para los usuarios que no están acostumbrados a las asignaciones de vim, pero ¿por qué existen las otras asignaciones?
  • Cuándo es más interesante usar uno más que el otro : Esa es una continuación de la pregunta anterior: si hay tantas posibilidades supongo que tienen diferentes ventajas o es mejor usarlas en casos de uso específicos. ¿Cuáles son esos casos de uso?

Encuentro la redundancia de estos comandos aún más extraña cuando miro :hk : solo hay 3 formas de subir: k , <UP> y ctrl-p . Entonces, la pregunta adicional es: ¿Por qué hay 5 formas de bajar y solo 3 de subir?

Respuesta:

Interesante que hayas mencionado <CR> . <CR> o retorno de carro, técnicamente usado para significar ir al inicio de la línea . <NL> , o salto de línea también conocido como salto de línea (generalmente llamado LF ), se usó para significar ir a la siguiente línea . Con el tiempo, la distinción se perdió en la mayoría de las aplicaciones. 1 Al presionar Enter, en realidad se produce un retorno de carro, generalmente (intente presionar Ctrl V Enter ; debería ver ^M en terminales Unix). El código de control de <NL> es Ctrl J.

Ctrl N me sorprendió. Según man ascii 2 , es un carácter desplazado :

Oct   Dec   Hex   Char                        Oct   Dec   Hex   Char
────────────────────────────────────────────────────────────────────────
016   14    0E    SO  (shift out)             116   78    4E    N

El cambio hacia adentro y hacia afuera de los personajes, segúnWikipedia :

… proporcionó una forma de cambiar, de ahí la nomenclatura, una cinta de color, dividida longitudinalmente generalmente con rojo y negro, hacia arriba y hacia abajo al otro color en una máquina de escribir o teleimpresora electromecánica …

Cómo terminó significando bajar es un misterio para mí.


¿Por qué hay 5 formas de bajar y solo 3 de subir?

Bueno, las tres formas de subir tienen todas las formas correspondientes de bajar. ( Ctrl P es presumiblemente el complemento de Ctrl N , lo que implica que el cambio de entrada / salida no es relevante aquí). Las dos formas adicionales hacia abajo ( <NL> o Ctrl J ) son en realidad dos representaciones de la misma forma. <NL> es una herencia de los días de la máquina de escribir, y en esos días, no creo que hubiera una llave para subir, solo para bajar.

Ver también:

1 Todavía es importante en algunos casos (imprimir \r (retorno de carro) y \n (avance de línea) utilizando la mayoría de las funciones / herramientas de impresión formateadas aún conservan el significado anterior).

2 Esta tabla está organizada de tal manera que el alfabeto corresponde al código de control del carácter en la misma línea.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım