写了个bash脚本让 vim可以识别include
脚本名: gen_include_path_for_vim.sh
#!/bin/bash
include_path=$(make --just-print $*\
| sed -n -e '/^g++/p' | sed -n -e "1p" \
| awk 'BEGIN{RS=" "; ORS="\n"} { print $0; }' \
| sed -n -r -e '/^-I/{s/^-I//;p}' | awk -vORS="," '{print $0;}'\
)
touch .prj.vimrc
sed -i -e '/^\s*set\s\+path/d;' .prj.vimrc
echo "set path=./,$include_path" >> .prj.vimrc
我把脚本发到了 ~/.bin/目录下, 并且修改 ~/.bash_profile 脚本 添加 PATH="~/.bin/:$PATH"
在我工程目录下,使用 使用 gen_include_path_for_vim.sh clean all
在 vim 中 source .prj.vimrc 或使用我写那个 auto_project.vim 插件, 这样你可以在 vim中使用 gf来打开头文件了, 而且对[d, [D的定义查找也有帮助。