Me parece que las macros son una forma increíble de hacer cosas inusuales si estás interesado en hacerlo no más de una vez en una luna azul. Digamos que tienes la siguiente tabla:
%
% Not Important
% O ------------------------->
% | Stuff in side the table
% S |
% o | So you can't just write your
% m |
% e | text and transform it into
% |
% M | the shape that you want
% s |
% g | Macros help here
% |
% V
Y digamos que desea reemplazar Some Msg
con Other Message
. En primer lugar, ampliemos la tabla para el carácter adicional (línea antes de la última yy5p
:
%
% Not Important
% O ------------------------->
% | Stuff in side the table
% S |
% o | So you can't just write your
% m |
% e | text and transform it into
% |
% M | the shape that you want
% s |
% g | Macros help here
% |
% |
% |
% |
% |
% |
% V
La macro que se me ocurrirá se encargará de convertir el texto de horizontal a vertical mientras reemplaza el texto anterior. Comience escribiendo el texto en la primera ubicación (el cursor está al final de Other Message
):
%
% Not Important
% O ------------------------->
% | Stuff in side the table
% SOther Message |
% o | So you can't just write your
% m |
% e | text and transform it into
% |
% M | the shape that you want
% s |
% g | Macros help here
% |
% |
% |
% |
% |
% |
% V
Grabe la siguiente macro:
qq
: comienza a grabar la macro llamada q
^
: ir al comienzo de la línea
3l
: ir a la columna donde se colocará el texto
x
: borra el antiguo personaje
l
: moverse hacia la derecha, dejando un carácter del mensaje en lugar del antiguo carácter:
v
: ir al modo visual
f|
: Salta a |
2h
: retroceder dos personajes
d
: selección de corte
j
: mover hacia abajo
P
: pegar antes del cursor
q
: terminar de grabar la macro
En este punto tienes:
%
% Not Important
% O ------------------------->
% | Stuff in side the table
% O |
% other Message | So you can't just write your
% m |
% e | text and transform it into
% |
% M | the shape that you want
% s |
% g | Macros help here
% |
% |
% |
% |
% |
% |
% V
Repita la macro la cantidad suficiente de veces (es decir, la cantidad de caracteres, pero no necesita saberlo de antemano. Simplemente subestime y continúe una vez que vea cuán cerca estaba su estimación). Así que vamos a ir con 10@q
. Usted obtiene:
%
% Not Important
% O ------------------------->
% | Stuff in side the table
% O |
% t | So you can't just write your
% h |
% e | text and transform it into
% r |
% | the shape that you want
% M |
% e | Macros help here
% s |
% s |
% a |
% ge |
% |
% |
% V
Ok, uno más ( @q
):
%
% Not Important
% O ------------------------->
% | Stuff in side the table
% O |
% t | So you can't just write your
% h |
% e | text and transform it into
% r |
% | the shape that you want
% M |
% e | Macros help here
% s |
% s |
% a |
% g |
% e |
% |
% V
Tu cursor está ahora en el último e
. La macro no funciona bien con la última letra (puede intentar con @q
y luego u
(deshacer) para obtener resultados insatisfactorios). Simplemente ajústelo usted mismo ( X
para retroceder).
:s/./% \0\r/
agregar las%
nuevas líneas ... Sin embargo, no es una gran solución ...