Su tarea es crear un script vim o proporcionar una secuencia de pulsaciones de teclas que opere en una sola línea de texto con hasta 140 caracteres ASCII imprimibles (en cualquier parte de un archivo, con el cursor comenzando en cualquier lugar de la línea) e invierta cada espacio. cadena separada en la oración manteniendo las cadenas en el mismo orden.
Por ejemplo, la entrada:
roF emos nosaer m'I gnisu a retcarahc-041 timil no siht noitseuq neve hguoht ti t'nseod evlovni .rettiwT RACECAR
debería volver:
For some reason I'm using a 140-character limit on this question even though it doesn't involve Twitter. RACECAR
El guión con la menor cantidad de caracteres, o la secuencia de la menor cantidad de pulsaciones de teclas, para lograr este resultado es el ganador.

Respuestas:
282524 pulsaciones de teclasMacro recursiva, supongo que Ctrl- rcuenta como un golpe de teclado.
La parte más difícil fue asegurarse de que la macro permanezca en la misma línea y no destruya el resto del archivo.
fuente
cElugar dect, si no estaba terminando la macro. Pero puede usar enWlugar def lguardar 2 golpes.cEhace cuando el cursor está al principio dea retcarahc-041? ¿Y adivina quéWhace cuando estamos al final de la línea?E. las minúsculaseirían hasta el guión, las mayúsculasEirían hasta el siguiente espacio. Solo lo intenté para confirmar.:set ri<Enter>^qqct <C-r>"<Esc>W@qq@qpor 23.E, sé lo que hace. Me refería a quecE<C-r><Esc>se convertiríaa retcarahc-041en140-character aAKA, que cambiaría las palabras.24 pulsaciones de teclas
Sé que esta pregunta es muy antiguo, pero amo vimgolf así que no podía no publicar una respuesta en uno de los pocos retos vim-específicas en el sitio. Además, esta solución está vinculada con Orlp's.
Al igual que Orlp dijo, la parte más difícil fue asegurarse de que el resto del búfer no se modificara. Si no fuera por esa restricción, simplemente podríamos hacer:
(19 pulsaciones de teclas) pero necesitamos un poco más para mantenerlo a salvo de búfer. Esto supone un entorno unix.
fuente