Tengo el siguiente comando en mi vimrc:
execute "set path+=".getcwd()."/**"
Funciona bien si el directorio de trabajo actual es como /home/tamlok/my_work/. Sin embargo, si el directorio contiene espacios, como D:\Program Files\vim\, vim se quejará.
Supongo que puedo arreglar esto usando la substitute()función para reemplazar todos los espacios con espacios escapados. ¿Qué haría un vimmer experimentado aquí?
Otro problema es \en Windows. Si getcwd()consigue D:\Program Files\vim\, ¿necesito para escapar de la \con \\o sustituirla /?
Por ahora lo manejo así:
let mycwd=substitute(getcwd(), '\\', '/', 'g')
let mycwd=substitute(mycwd, ' ', '\\ ', 'g')
execute "set path+=".mycwd."/**"
¿Eso esta bien? Cualquier ayuda es apreciada! ¡Muchas gracias!

/lo mismo que `\` en la ruta del archivo en GVim en Windows?fnameescape()yshellescape(). El primero se usa al pasar argumentos en la línea de comando de Vim, para que Vim no los moleste. El último se usa al pasar argumentos a comandos externos, para que el shell no los moleste. En Windows también existeshellslash, lo que tendrá una gran influencia en la cantidad de pelos en la cabeza si alguna vez necesita meterse con!commandamigos.Yo tuve el mismo problema. Intenta usarlo solo
/en rutas y escapa de espacios en blanco como este\. Por ejemplo, agrego esta línea en mi vimrc:Que si usted lo ordena
:echo &rtppuede ver:Tenga en cuenta que aquí no hay
\espacios en blanco antes.fuente