vim omni STL自动补全
来源:岁月联盟
时间:2012-02-15
( http://www.sgi.com/tech/stl/download.html)
2) With vim replace all __STL_BEGIN_NAMESPACE by "namespace std {" and
__STL_END_NAMESPACE by "}" (I use a macro to do this but maybe there
is a better way eg: the command :bufdo) from header and source files.
3) Run ctags and put the generated tags file in a directory eg:~/MyTags
4) set tags+=~/MyTags/stl.tags
We can do step 2) and 3) use the following sh:
#!/bin/bash
mkdir stl2
mkdir stl3
cd stl
for i in *
do
sed 's/__STL_BEGIN_NAMESPACE/namespace std{/' $i > ../stl2/$i
done
cd ../stl2
for i in *
do
sed 's/__STL_END_NAMESPACE/}/' $i > ../stl3/$i
done
cd ../stl3
ctags -R --c++-kinds=+p --fields=+iaS --extra=+q -f ../stltags
cd ..
rm -rf stl2
rm -rf stl3
Make sure that the stl is the same directory with sh.
摘自 int64Ago的专栏