c/c++防止头文件重复包含的vim插件headerGatesAdd.vim
2012-02-02 11:28
281 查看
c/c++防止头文件重复包含的插件headerGatesAdd.vim----作者:帅得不敢出门 c++哈哈堂群31843264
当创建一个新的c/c++头文件时,会自动添加防止重复包含的代码(有多种风格可以选择,并可以自行修改前缀后缀)
已上传到vim插件网上,地址为http://www.vim.org/scripts/script.php?script_id=3407
可用bundle管理自动安装或者升级(Bundle 'tczengming/headerGatesAdd.vim'),1.3前版本依赖python,1.4以后不再依赖
有什么BUG或者建议欢迎提出.
默认后缀配置,自动加 _H,下面这个可以在你的vimrc中修改成其他配置
let g:HeaderGatesAdd_suffix="_H"
1. 对于大小写变换的中间会加个_下划线
foo_n.h or FooN.h or foo n.h ...
#ifndef FOO_N_H
#define FOO_N_H
#endif /*FOO_N_H*/
如果你设定了 let g:HeaderGatesAdd_suffix="__"
那么FOO_N_H 就会变成 FOO_N__
2.
如果在.vimrc 或者 _vimrc 中设定了 let g:insert_extern_c_flag=1
当你创建新头文件如 foo_h.h时,则自动添加内容如下(就是额外添加了extern "C"那一段):
#ifndef FOO_N_H
#define FOO_N_H
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#endif /*FOO_N_H*/
3.
:HeaderGatesAdd 可用这个命令动态添加防重复包含的代码
比如已经存在代码如下
/**
* @file foo_n.h
* @version 0.1.00
*/
void test();
在vim中运行上面命令后会变成如下
/**
* @file foo_n.h
* @version 0.1.00
*/
#ifndef FOO_N_H
#define FOO_N_H
#ifdef __cplusplus
extern "C" {
#endif
void test();
#ifdef __cplusplus
}
#endif
#endif /*FOO_N_H*/
4.修改前缀,默认为空
let g:HeaderGatesAdd_prefix="__"
foo_n.h ---------> __FOO_N
5.修改后缀,默认为"_H"
let g:HeaderGatesAdd_suffix="_SUFFIX"
foo_n.h ---------> FOO_N_SUFFIX
6.
以下示例是在前后缀都为空情况下
g:HeaderGatesAdd_gate_type不同值下不同的效果展示
let g:HeaderGatesAdd_gate_type=0 这个是默认的,中间会加 _
aTestFile.h ---------> A_TEST_FILE
let g:HeaderGatesAdd_gate_type=1 全大写
aTestFile.h ---------> ATESTFILE
let g:HeaderGatesAdd_gate_type=2 大小写与文件名一样
aTestFile.h --------->aTestFile
安装方法用bundle管理或者下载后放到vim插件目录下如 ~/.vim/plugin/
当创建一个新的c/c++头文件时,会自动添加防止重复包含的代码(有多种风格可以选择,并可以自行修改前缀后缀)
已上传到vim插件网上,地址为http://www.vim.org/scripts/script.php?script_id=3407
可用bundle管理自动安装或者升级(Bundle 'tczengming/headerGatesAdd.vim'),1.3前版本依赖python,1.4以后不再依赖
有什么BUG或者建议欢迎提出.
默认后缀配置,自动加 _H,下面这个可以在你的vimrc中修改成其他配置
let g:HeaderGatesAdd_suffix="_H"
1. 对于大小写变换的中间会加个_下划线
foo_n.h or FooN.h or foo n.h ...
#ifndef FOO_N_H
#define FOO_N_H
#endif /*FOO_N_H*/
如果你设定了 let g:HeaderGatesAdd_suffix="__"
那么FOO_N_H 就会变成 FOO_N__
2.
如果在.vimrc 或者 _vimrc 中设定了 let g:insert_extern_c_flag=1
当你创建新头文件如 foo_h.h时,则自动添加内容如下(就是额外添加了extern "C"那一段):
#ifndef FOO_N_H
#define FOO_N_H
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#endif /*FOO_N_H*/
3.
:HeaderGatesAdd 可用这个命令动态添加防重复包含的代码
比如已经存在代码如下
/**
* @file foo_n.h
* @version 0.1.00
*/
void test();
在vim中运行上面命令后会变成如下
/**
* @file foo_n.h
* @version 0.1.00
*/
#ifndef FOO_N_H
#define FOO_N_H
#ifdef __cplusplus
extern "C" {
#endif
void test();
#ifdef __cplusplus
}
#endif
#endif /*FOO_N_H*/
4.修改前缀,默认为空
let g:HeaderGatesAdd_prefix="__"
foo_n.h ---------> __FOO_N
5.修改后缀,默认为"_H"
let g:HeaderGatesAdd_suffix="_SUFFIX"
foo_n.h ---------> FOO_N_SUFFIX
6.
以下示例是在前后缀都为空情况下
g:HeaderGatesAdd_gate_type不同值下不同的效果展示
let g:HeaderGatesAdd_gate_type=0 这个是默认的,中间会加 _
aTestFile.h ---------> A_TEST_FILE
let g:HeaderGatesAdd_gate_type=1 全大写
aTestFile.h ---------> ATESTFILE
let g:HeaderGatesAdd_gate_type=2 大小写与文件名一样
aTestFile.h --------->aTestFile
安装方法用bundle管理或者下载后放到vim插件目录下如 ~/.vim/plugin/
相关文章推荐
- [转]C++学习:防止变量重复定义;头文件重复包含、嵌套包含
- 【C++】 防止重复包含头文件
- C++ 防止头文件被重复包含(#pragma once 与 #ifndef 的区别)
- C++防止头文件重复包含
- 关于C++/C中防止头文件的重复包含的解决办法
- 关于C++/C中防止头文件的重复包含的解决办法 (转)
- 改善C++ 程序的150个建议学习之建议 9:防止重复包含头文件
- 防止头文件重复包含和兼容C++编译器
- 关于C++/C中防止头文件的重复包含的解决办法
- C++防止头文件重复包含
- C/C++防止头文件重复包含的方法
- [C++]头文件重复包含问题
- #ifndef#define#endif防止头文件重复包含, 你不是真的懂
- C++ 关于声明,定义,类的定义,头文件作用,防止头文件在同一个编译单元重复引用,不具名空间
- #ifndef#define#endif防止头文件重复包含, 你不是真的懂
- C++头文件防止重复包含
- VC、iOS中 防止变量重复定义、头文件重复包含、嵌套包含
- 防止头文件重复包含
- #ifndef#endif防止头文件重复包含
- 防止全局变量、头文件重复包含与 extern 的使用