Vim的强大就不用我多说了,很多的自定义功能可以由自己更改Vim的配置文件以实现,本文将介绍的是:
- 创建新文件时,自动添加头部注释信息
- 保存文件时,自动重写“修改时间”
先来看看效果,当直接创建一个新文件的时候(vim filename.php),就会出现以下注释文字
02 | #*********************************************** |
04 | # Filename: Mysql.class.php |
06 | # Author: Mp - mingpeng16@gmail.com |
07 | # Description: Abstract CLASS |
08 | # Create: 2013-12-17 15:19:20 |
09 | # Last Modified: 2013-12-18 10:41:31 |
10 | #*********************************************** |
当保存文件的时候(:w ),会自动修改相应的“修改时间”
我们需要做的就是打开vimrc配置文件,一般来说,vim的位置在 etc/vim 目录下,然后在文件的末尾添加相应的代码即可。
02 | autocmd BufNewFile *.php,*.js,*.cpp exec ":call SetComment()" |normal 10Go |
05 | if expand("%:e") == 'php' |
06 | call setline(1, "<?php") |
07 | elseif expand("%:e") == 'js' |
08 | call setline(1, '//JavaScript file') |
09 | elseif expand("%:e") == 'cpp' |
10 | call setline(1, '//C++ file') |
12 | call append(1, '#***********************************************') |
14 | call append(3, '# Filename: '.expand("%")) |
16 | call append(5, '# Author: Mp - mingpeng16@gmail.com') |
17 | call append(6, '# Description: ---') |
18 | call append(7, '# Create: '.strftime("%Y-%m-%d %H:%M:%S")) |
19 | call append(8, '# Last Modified: '.strftime("%Y-%m-%d %H:%M:%S")) |
20 | call append(9, '#***********************************************') |
24 | map <F2> :call SetComment()<CR>:10<CR>o |
上面的这段代码,简要说明一下,用的是vim language,SetComment就是主要功能实现函数,autocmd该行是在创建新文件的时候自动执行SetComment函数,最后还有个map映射,这里绑定了F2安键,每次按下也会插入头部信息。
01 | "SET Last Modified Time START |
05 | if search ('Last Modified') != 0 |
07 | call setline(line, '# Last Modified: '.strftime("%Y-%m-%d %H:%M:%S")) |
11 | autocmd FileWritePre,BufWritePre *.php,*.js,*.cpp ks|call DataInsert() |'s |
12 | "SET Last Modified Time END |
上面这段代码,本质就是查找信息进行修改,最后的autocmd也是同上道理。