是否可以对某些文件类型禁用LargeFile Vim插件?

是否可以对某些文件类型禁用LargeFile Vim插件?,vim,Vim,我对LargeFile插件非常满意,但最近需要针对特定的文件类型选择性地禁用它。LargeFile插件禁用FileType事件;问题中的文件类型是根据文件内容而不是文件扩展名确定的,因此我需要像这样使用BufReadPost事件: au BufReadPost * if &ft == "myfiletype" | let g:LargeFile=100 | endif 但是设置g:LargeFile在那里没有效果。我还尝试调用:Unlarge命令,但没有效果。如何禁

我对LargeFile插件非常满意,但最近需要针对特定的文件类型选择性地禁用它。LargeFile插件禁用FileType事件;问题中的文件类型是根据文件内容而不是文件扩展名确定的,因此我需要像这样使用BufReadPost事件:

au BufReadPost * if &ft == "myfiletype" | let g:LargeFile=100 | endif

但是设置g:LargeFile在那里没有效果。我还尝试调用:Unlarge命令,但没有效果。如何禁用LargeFile插件或根据文件类型修改其设置?

您的auto命令无法工作,因为在执行时 尚未检测到当前缓冲区的文件类型。如果目标 文件类型可以从文件名推断,使用自动命令模式 而不是针对文件类型进行测试

以下是C文件的示例:

autocmd BufRead *.c Unlarge
如果文件名模式检测不够,请手动触发 首先检测文件类型:

autocmd BufRead *.c
\   if !did_filetype() | filetype detect | endif |
\   if &ft is# 'c' | Unlarge | endif