Corregir plegable marcador incorrecto en VIM
Pregunta
por error me hice marcador de plegado a mi .vimrc:
{{{8 #CS
something..
}}}8
{{{9 #Math
...
}}}9
... many more!
necesito para cambiar el formato de "#SOMETHING {{{NÚMERO" como:
#CS {{{8
something..
}}}8
#Math {{{9
...
}}}9
... many more!
Lo que está mal en el código siguiente:
:%s$/({{{\d/) /(#[:alpha:]/)$\2 \1$g
[Solución]
%s$\({{{\d\) \(#[[:alnum:]]*\)$\2 \1$g
Solución
Se le olvidó para escapar de los paréntesis y las clases de caracteres POSIX sólo son válidos dentro de un [[:alpha:]]
clase de caracteres:
:%s$/\({{{\d/\) /\(#[[:alpha:]]/\)$\2 \1$g
Tenga en cuenta, sin embargo, que el texto de ejemplo no contiene barras -? Es esto lo que el texto de muestra es en realidad como
La expresión regular anterior cambia este
/{{{8/ /#A/
Para este
#A/ {{{8/
Otros consejos
:%s/{{{\(\d\) \(.*\)/\2 {{{\1/g
funciona, pero en su expresión regular no entiendo por qué tiene un $ s después.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow