博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vim使用快捷键F4生成文件头注释、F5生成main函数模板、F6生成.h文件框架模板
阅读量:2177 次
发布时间:2019-05-01

本文共 4225 字,大约阅读时间需要 14 分钟。

在家目录下的.vimrc文件中增加如下代码即可,如果没有.vimrc文件,则新建该文件。

cd ~touch .vimrc   #如果有该文件则跳过此步骤vim .vimrc

在文件末尾追加如下代码:

""""""""""""""""""""""""""""""""""""""""""""""""""快捷键F4,添加文件头注释,以及版权声明map 
:call TitleDet()
'sfunction AddTitle() "call append( 0, "/* COPYRIGHT NOTICE") call append( 0, "\/* 版权声明") call append( 1, " * 功能 :") call append( 2, " * 作者 :lsy") call append( 3, " * 文件路径 : ".expand("%:p:h")."/".expand("%:t")) call append( 4, " * 创建时间 :".strftime("%Y/%m/%d %H:%M")) call append( 5, " *\/") call append( 6, "") echohl WarningMsg | echo "Successful in adding the copyright." | echohl Noneendfunction"更新最近修改时间和文件名function UpdateTitle() normal m' execute '/# @date /s@:.*$@\=strftime(":%Y-%m-%d %H:%M")@' normal '' normal mk execute '/# @file /s@:.*$@\=":".expand("%:p:h")."\\".expand("%:t")@' execute "noh" normal 'k echohl WarningMsg | echo "Successful in updating the copy right." | echohl Noneendfunction"判断前10行代码里面,是否有COPYRIGHT NOTICE这个单词,"如果没有的话,代表没有添加过作者信息,需要新添加;"如果有的话,那么只需要更新即可function TitleDet() let n = 1 "默认为添加 let line = getline(n) "let str = '^/\* COPYRIGHT NOTICE$' let str = '^/\* 版权声明$' if line =~ str call UpdateTitle() return endif call AddTitle()endfunction""""""""""""""""""""""""""""""""""""""""""""""""""""快捷键F5,生成main函数模板map
:call TitleDet_main()
'sfunction AddTitle_main() "call append( 0, "/* COPYRIGHT NOTICE") call append( 0, "\/* 版权声明") call append( 1, " * 功能 :") call append( 2, " * 作者 :lsy") call append( 3, " * 文件路径 : ".expand("%:p:h")."/".expand("%:t")) call append( 4, " * 创建时间 :".strftime("%Y/%m/%d %H:%M")) call append( 5, " *\/") call append( 6, "") call append( 7, "#include
") call append( 8, "#include
") call append( 9, "") call append(10, "int main(int argc, char *argv[]) { ") call append(11, "") call append(12, " return 0;") call append(13, "}") echohl WarningMsg | echo "Successful in adding the main function." | echohl Noneendfunction"更新最近修改时间和文件名function UpdateTitle_main() normal m' execute '/# @date /s@:.*$@\=strftime(":%Y-%m-%d %H:%M")@' normal '' normal mk execute '/# @file /s@:.*$@\=":".expand("%:p:h")."\\".expand("%:t")@' execute "noh" normal 'k echohl WarningMsg | echo "Successful in updating the main function." | echohl Noneendfunction"判断前10行代码里面,是否有COPYRIGHT NOTICE这个单词,"如果没有的话,代表没有添加过作者信息,需要新添加;"如果有的话,那么只需要更新即可function TitleDet_main() let n = 1 "默认为添加 let line = getline(n) "let str = '^/\* COPYRIGHT NOTICE$' let str = '^/\* 版权声明$' if line =~ str call UpdateTitle_main() return endif call AddTitle_main()endfunction""""""""""""""""""""""""""""""""""""""""""""""""""""快捷键F6,生成.h文件模板map
:call TitleDet_h()
'sfunction AddTitle_h() "call append( 0, "/* COPYRIGHT NOTICE") call append( 0, "\/* 版权声明") call append( 1, " * 功能 :") call append( 2, " * 作者 :lsy") call append( 3, " * 文件路径 : ".expand("%:p:h")."/".expand("%:t")) call append( 4, " * 创建时间 :".strftime("%Y/%m/%d %H:%M")) call append( 5, " *\/") call append( 6, "") call append( 7, "#ifndef ") call append( 8, "#define ") call append( 9, "") call append(10, "") call append(11, "") call append(12, "#endif") echohl WarningMsg | echo "Successful in adding the .h file." | echohl Noneendfunction"更新最近修改时间和文件名function UpdateTitle_h() normal m' execute '/# @date /s@:.*$@\=strftime(":%Y-%m-%d %H:%M")@' normal '' normal mk execute '/# @file /s@:.*$@\=":".expand("%:p:h")."\\".expand("%:t")@' execute "noh" normal 'k echohl WarningMsg | echo "Successful in updating the .h file." | echohl None endfunction"判断前10行代码里面,是否有COPYRIGHT NOTICE这个单词,"如果没有的话,代表没有添加过作者信息,需要新添加;"如果有的话,那么只需要更新即可function TitleDet_h() let n = 1 "默认为添加 let line = getline(n) "let str = '^/\* COPYRIGHT NOTICE$' let str = '^/\* 版权声明$' if line =~ str call UpdateTitle_h() return endif call AddTitle_h() endfunction

然后保存退出即可使用快捷键:(注意所有文件都以第一行的“版权声明”为关键字,若已存在该关键字,则不会插入模板)

F4:插入文件头注释
F5:插入main函数模板
F6:插入.h文件框架模板

转载地址:http://mjdkb.baihongyu.com/

你可能感兴趣的文章
PHPUnit安装及使用
查看>>
PHP项目用xhprof性能分析(安装及应用实例)
查看>>
composer安装YII
查看>>
Sublime text3快捷键演示
查看>>
sublime text3 快捷键修改
查看>>
关于PHP几点建议
查看>>
硬盘的接口、协议
查看>>
VLAN与子网划分区别
查看>>
Cisco Packet Tracer教程
查看>>
02. 交换机的基本配置和管理
查看>>
03. 交换机的Telnet远程登陆配置
查看>>
微信小程序-调用-腾讯视频-解决方案
查看>>
phpStudy安装yaf扩展
查看>>
密码 加密 加盐 常用操作记录
查看>>
TP 分页后,调用指定页。
查看>>
Oracle数据库中的(+)连接
查看>>
java-oracle中几十个实用的PL/SQL
查看>>
PLSQL常用方法汇总
查看>>
几个基本的 Sql Plus 命令 和 例子
查看>>
PLSQL单行函数和组函数详解
查看>>