检测缩小区域中的文件类型

检测缩小区域中的文件类型

我正在使用极好的北纬插件。我经常使用 PHP 在 CDATA 部分编辑 XML 文件,因此在缩小的缓冲区中我得到了以下信息:

<![CDATA[                        
$foo='bar';
doSomething($foo);
            ]]>

当缩小的区域是 PHP 时,如何将其标识为 PHP;当缩小的区域是其他内容时,如何将其标识为 XML 或其他内容?请注意,即使在此示例中,通过选择 PHP 部分,vit\nrCDATA 标记仍然存在,因此从技术上讲,这不是格式良好的 XML,而不是 PHP。

答案1

我找不到解决这个问题的方法,所以我决定

nnoremap <leader>js set ft=javascript

我也很好奇,想知道解决方案。

答案2

我不太确定,但我完全理解你想要什么。NrrwRgn 插件应该自动将缩小窗口的文件类型设置为原始缓冲区的文件类型。如果这不是你想要的,你可以在创建和关闭窗口时挂接到 NrrwRgn 命令。所以你可以这样做:

创建一个文件~/.vim/after/ftplugin/php.vim(创建不存在的目录,在 Windows 上,这将是$VIM/vimfiles/after/ftplugin/php.vim,其中 $VIM 是 vim 在发出时告诉您的任何目录:echo $VIM)并将其放入其中:

let g:nrrw_custom_options={}
let g:nrrw_custom_options['filetype']='php'

在你的里面.vimrc输入这个:

let b:nrrw_aucmd_close= "unlet! g:nrrw_custom_options"

这就是所有需要设置的,然后每当你从 php 文件中缩小某些内容时,它将自动设置为文件类型 php。

确保文件类型插件已启用(您可以通过将类似的内容 filetype plugin on放入.vimrc.

相关内容