如何配置VIM中<C-X><C-i>仅对指定.bib文件进行补全?
配置VIM的仅扫描指定Bib文件补全
需求背景
使用VIM作为LaTeX编辑器时,仅需通过<C-X><C-i>触发的包含文件补全,从父目录的CentralRepository.bib文件获取内容(该文件通过.tex中的\bibliography{../CentralRepository.bib}引入),其他LaTeX补全由自定义代码片段引擎负责。当前include选项的默认规则会导致触发补全时扫描大量冗余文件,需修改配置限制扫描范围。
解决方案
1. 重置include匹配规则
<C-X><C-i>的扫描范围由include选项的正则模式决定,我们需要将其修改为仅匹配目标Bib文件:
在~/.vimrc中添加以下配置:
set include=\v\\bibliography\s*\{\zs../CentralRepository.bib\ze\}
该模式仅识别\bibliography{../CentralRepository.bib}语句中的目标文件路径,VIM会仅扫描此文件用于补全。
2. 验证配置
执行:set include?命令,输出应显示为上述设置的正则模式。此时按下<C-X><C-i>,将仅从指定Bib文件获取补全内容。
3. 可选:仅针对LaTeX文件生效
如果不想全局修改include规则,可在~/.vim/after/ftplugin/tex.vim中添加上述set include命令,确保仅在编辑.tex文件时应用该配置。
内容的提问来源于stack exchange,提问作者Tryer
相关产品推荐
相关产品推荐

