Vim 配置文件 并生成 注释文件头部
2017-09-05 20:07
465 查看
set nu
"设置行号
set mouse=a
"设置鼠标可以随意移动
syntax on
"语法高
set hlsearch
" 搜索时高亮显示被找到的文本
"set showmatch
"显示括号配对情况
set shiftwidth=4
set softtabstop=4
"统一缩进为4
set tabstop=4
"tab键的宽度为4
set noautoindent
"自动缩进
set clipboard+=unnamed
"与windows共享剪切板
set cindent
" 侦测文件类型
filetype on
" 载入文件类型插件
filetype plugin on
" 为特定文件类型载入相关缩进文件
filetype indent on
set nocompatible
filetype plugin indent on
"新建.c,.h,.sh,.java文件,自动插入文件头
autocmd BufNewFile *.cpp,*.[ch],*.sh exec ":call SetTitle()"
""定义函数SetTitle,自动插入文件头
func SetComment()
"如果文件类型为.sh文件
if &filetype == 'sh'
call setline(1,"\####################################################")
call append(line("."), "\# Copyright (C) ".strftime("%Y") ." ==GENG ALLEN== All rights reserved.")
call append(line(".")+1, "\# File Name: ".expand("%"))
call append(line(".")+2, "\# Author: ALLEN GENG")
call append(line(".")+3, "\# mail:genglei1022@126.com")
call append(line(".")+4, "\#Created Time:".strftime("%c"))
call append(line(".")+5,"\####################################################")
call append(line(".")+6,"\#!/bin/bash")
call append(line(".")+7,"")
else
call setline(1, "/***************************************************")
call append(line("."), "> Copyright (C) ".strftime("%Y") ." ==GENG ALLEN== All rights reserved.")
call append(line(".")+1, "> File Name: ".expand("%"))
call append(line(".")+2, "> Author: ALLEN GENG")
call append(line(".")+3, "> Mail:genglei1022@126.com ")
call append(line(".")+4, "> Created Time: ".strftime("%c"))
call append(line(".")+5, "***************************************************/")
call append(line(".")+6, "")
endif
endfunc
func SetTitle()
call SetComment()
if expand("%:e") == 'h'
call append(line(".")+7, "#ifndef _".toupper(expand("%:t:r"))."_H_")
call append(line(".")+8, "#define _".toupper(expand("%:t:r"))."_H_")
call append(line(".")+9, "")
call append(line(".")+10, "#endif")
elseif expand("%:e") == 'c'
call append(line(".")+7, "#include <stdio.h>")
call append(line(".")+8, "")
call append(line(".")+9, "int main(int argc,const char* argv[])")
call append(line(".")+10, "{")
call append(line(".")+11, "")
call append(line(".")+12, " return 0;")
call append(line(".")+13, "}")
elseif expand("%:e") == 'cpp'
call append(line(".")+7, "#include <iostream>")
call append(line(".")+8, "")
call append(line(".")+9, "using namespace std;")
call append(line(".")+10, "int main(int argc,const char* argv[])")
call append(line(".")+11, "{")
call append(line(".")+12, "")
call append(line(".")+13, " return 0;")
call append(line(".")+14, "}")
endif
endfunc
"新建文件后,自动定位到文件末尾
autocmd BufNewFile * normal G
"设置行号
set mouse=a
"设置鼠标可以随意移动
syntax on
"语法高
set hlsearch
" 搜索时高亮显示被找到的文本
"set showmatch
"显示括号配对情况
set shiftwidth=4
set softtabstop=4
"统一缩进为4
set tabstop=4
"tab键的宽度为4
set noautoindent
"自动缩进
set clipboard+=unnamed
"与windows共享剪切板
set cindent
" 侦测文件类型
filetype on
" 载入文件类型插件
filetype plugin on
" 为特定文件类型载入相关缩进文件
filetype indent on
set nocompatible
filetype plugin indent on
"新建.c,.h,.sh,.java文件,自动插入文件头
autocmd BufNewFile *.cpp,*.[ch],*.sh exec ":call SetTitle()"
""定义函数SetTitle,自动插入文件头
func SetComment()
"如果文件类型为.sh文件
if &filetype == 'sh'
call setline(1,"\####################################################")
call append(line("."), "\# Copyright (C) ".strftime("%Y") ." ==GENG ALLEN== All rights reserved.")
call append(line(".")+1, "\# File Name: ".expand("%"))
call append(line(".")+2, "\# Author: ALLEN GENG")
call append(line(".")+3, "\# mail:genglei1022@126.com")
call append(line(".")+4, "\#Created Time:".strftime("%c"))
call append(line(".")+5,"\####################################################")
call append(line(".")+6,"\#!/bin/bash")
call append(line(".")+7,"")
else
call setline(1, "/***************************************************")
call append(line("."), "> Copyright (C) ".strftime("%Y") ." ==GENG ALLEN== All rights reserved.")
call append(line(".")+1, "> File Name: ".expand("%"))
call append(line(".")+2, "> Author: ALLEN GENG")
call append(line(".")+3, "> Mail:genglei1022@126.com ")
call append(line(".")+4, "> Created Time: ".strftime("%c"))
call append(line(".")+5, "***************************************************/")
call append(line(".")+6, "")
endif
endfunc
func SetTitle()
call SetComment()
if expand("%:e") == 'h'
call append(line(".")+7, "#ifndef _".toupper(expand("%:t:r"))."_H_")
call append(line(".")+8, "#define _".toupper(expand("%:t:r"))."_H_")
call append(line(".")+9, "")
call append(line(".")+10, "#endif")
elseif expand("%:e") == 'c'
call append(line(".")+7, "#include <stdio.h>")
call append(line(".")+8, "")
call append(line(".")+9, "int main(int argc,const char* argv[])")
call append(line(".")+10, "{")
call append(line(".")+11, "")
call append(line(".")+12, " return 0;")
call append(line(".")+13, "}")
elseif expand("%:e") == 'cpp'
call append(line(".")+7, "#include <iostream>")
call append(line(".")+8, "")
call append(line(".")+9, "using namespace std;")
call append(line(".")+10, "int main(int argc,const char* argv[])")
call append(line(".")+11, "{")
call append(line(".")+12, "")
call append(line(".")+13, " return 0;")
call append(line(".")+14, "}")
endif
endfunc
"新建文件后,自动定位到文件末尾
autocmd BufNewFile * normal G
相关文章推荐
- 第一个 想创建文件时 文件的头部注释会自动生成我自己想要的信息 怎么配置呢
- vim根据不同的文件名后缀生成头部注释
- 基于Java形式的Mybatis逆向工程(无配置文件,生成注释)
- Vim配置文件,带详细注释
- vim配置文件(带详细中文注释)
- 我的vim配置文件(带详细中文注释)
- 关于mybatis生成插件Generator配置文件中自定义注释
- Xcode模版生成文件头部注释
- Vim常用操作-Nginx配置文件批量加注释。
- sublime text 3:创建可重复用的代码片段php文件头部注释信息快速生成
- vim创建程序文件自动添加头部注释
- vim配置文件(带中文注释)
- vim创建程序文件自动添加头部注释
- Vim常用操作-Nginx配置文件批量加注释。
- vim配置文件(带详细中文注释)
- 一套强大的vim配置文件+详细注释
- 标准vim配置文件 带注释(适合C++编译)
- 配置Vim为创建不同类型的文件添加注释
- SublimeText用FileHeader给代码文件生成头部注释
- 一套强大的vim配置文件+详细注释