mac comandos emacs

comandos - emacs ubuntu



Rectángulo funciones en emacs (3)

He leído en varios lugares que las funciones rectangulares en emacs son muy útiles. He leído un poco sobre ellos, y no puedo entender por qué. Quiero decir, cuando quieres matar un párrafo, marcas la primera fila / columna y luego la última, y ​​eso es en realidad un rectángulo, ¿verdad? Pero aún puedes usar el kill normal ...

Entonces, ¿qué tipo de transformaciones harías con ellos?


En emacs24 + también hay funciones para líneas de numeración:

(rectangle-number-lines START END START-AT &optional FORMAT) Insert numbers in front of the region-rectangle. START-AT, if non-nil, should be a number from which to begin counting. FORMAT, if non-nil, should be a format string to pass to `format'' along with the line count. When called interactively with a prefix argument, prompt for START-AT and FORMAT.

Está vinculado a Cx r N de forma predeterminada.


Me gusta usar el rectángulo con 2 propósitos principales, insertando el mismo texto en cada línea, o matando una columna de texto (similar a la respuesta de Dave Webb).

Hay 2 atajos útiles para estos, Cx rk matará un rectángulo y Cx rt para insertar (hay otros comandos de rectángulo con un prefijo Cx r , pero estos son los que yo uso).

Supongamos que desea tomar un código y formatearlo para que pueda publicarlo en una publicación de ... debe prefijar con 4 espacios. Entonces, vaya al comienzo de la primera línea, C-SPC para marcar, luego vaya al comienzo de la última línea y Cx rt <SPC> <SPC> <SPC> <SPC> <RET> , y ahí lo tiene ! Luego puede copiarlo y pegarlo en . Me he encontrado con situaciones más complejas en las que esto es útil, donde realmente tienes el texto que deseas insertar en cada línea en un lugar en particular.

Entonces, la otra situación, como la situación de Dave Webb, si quieres matar un rectángulo, usa Cx rk , porque es mucho más rápido ;-)

Además, de acuerdo con mi tarjeta de referencia que imprimí cuando comencé, puede hacer lo siguiente:

  • Cx rr : copiar a un registro
  • Cx ry : tirar de un rectángulo
  • Cx ro : abre un rectángulo, desplaza el texto hacia la derecha (lo que sea que eso signifique ...)
  • Cx rc : en blanco un rectángulo (supongo que eso significa reemplazarlo con espacios, pero tendrías que probarlo para verlo)
  • Cx rt : prefijo con texto (como se describe arriba)
  • Cx rk : matar (como se describe arriba)

Si tiene datos en columnas en un archivo de texto con Mx delete-rectangle o Mx kill-rectangle , puede eliminar una sola columna de datos. Del mismo modo, Mx yank-rectangle pegará en una columna de texto.

Por ejemplo, tome el siguiente texto:

1. alligator alphorn 2. baboon bugle 3. crocodile cornet 4. dog didgeridoo 5. elephant euphonium 6. fish flugelhorn 7. gopher guitar

Seleccione desde la a de cocodrilo hasta la guitarra g. El comienzo y el final de la selección marcan dos esquinas opuestas del rectángulo. Ingresa Mx kill-rectangle e inmediatamente tienes:

1. alphorn 2. bugle 3. cornet 4. didgeridoo 5. euphonium 6. flugelhorn 7. guitar

Luego ponga la marca al final de la línea superior, agregue algunos espacios si es necesario e ingrese Mx yank-rectangle y ta-da! Has vuelto a ordenar las columnas:

1. alphorn alligator 2. bugle baboon 3. cornet crocodile 4. didgeridoo dog 5. euphonium elephant 6. flugelhorn fish 7. guitar gopher