
Estoy usando el fantásticoNrrwRgnenchufar. A menudo edito archivos XML con PHP en secciones CDATA, por lo que en el búfer reducido obtengo esto:
<![CDATA[
$foo='bar';
doSomething($foo);
]]>
¿Cómo puedo identificar la región estrechada como PHP cuando es PHP y como XML o algo más cuando es otra cosa? Tenga en cuenta que incluso en este ejemplo, al seleccionar la sección PHP con vit\nr
las etiquetas CDATA todavía están allí, por lo que técnicamente esto no es XML bien formado, no PHP.
Respuesta1
No pude encontrar una solución a este problema así que me conformé con
nnoremap <leader>js set ft=javascript
Yo también tengo curiosidad por encontrar una solución.
Respuesta2
No estoy exactamente seguro, entiendo completamente lo que quieres. El complemento NrrwRgn debería establecer automáticamente el tipo de archivo de la ventana reducida al del búfer original. Sin embargo, si esto no es lo que desea, puede conectarse al comando NrrwRgn al crear y cerrar las ventanas. Así que esto es lo que podrías hacer:
Cree un archivo ~/.vim/after/ftplugin/php.vim
(cree directorios no existentes, en Windows, este sería $VIM/vimfiles/after/ftplugin/php.vim
, donde $VIM es cualquier directorio que vim le indique al emitir :echo $VIM
) y colóquelo en él:
let g:nrrw_custom_options={}
let g:nrrw_custom_options['filetype']='php'
Y en tu .vimrc
pones esto:
let b:nrrw_aucmd_close= "unlet! g:nrrw_custom_options"
Eso debería ser todo lo que necesita ser configurado y luego, cada vez que limite algo de un archivo php, se configurará automáticamente en el tipo de archivo php.
Asegúrese de que los complementos de tipo de archivo estén habilitados (para esto, coloque algo como
filetype plugin on
en su archivo .vimrc
.