Estoy tratando de invertir una cadena, por lo que se 'abc defg hij'
convierte 'jih gfed cba'
. La solución que se me ocurrió es
join(reverse(split(l:text, '.\zs')), '')
¿Existe una solución más elegante o debería seguir con lo que se me ocurrió?
vimscript
string-manipulation
René Nyffenegger
fuente
fuente
split()
sin la{keepempty}
opción debe eliminar un solo elemento vacío al principio y un único elemento vacío al final. Actualmente elimina todos los elementos vacíos, incluidos los que están en el medio de la lista (que es más útil que el comportamiento documentado si me pregunta, pero probablemente no lo sea). Creo que esto se ha discutido recientementevim_dev
.Respuestas:
¡Tu solución es muy elegante! Una alternativa si está en un entorno basado en Unix:
fuente
De wikia
Para más ver:
:h revins
fuente
Si está utilizando un sistema similar a Unix, en vim, escriba ex-command
:%! rev
fuente