linux系统
vim编辑器
redhat/centos系统下,需要修改Vim的配置文件vimrc,位于/etc目录下,所以必须以root用户修改,登陆root用户,进入/etc目录,打开vimrc文件
用vi打开vimrc配置文件后,连点两次大写字母’G’跳到文件末尾进行编辑。将键盘上的F4功能键映射为添加作者信息的快捷键,按字母’i’进入写入模式,添加以下内容:map
添加AddAuthor()函数,函数的功能是判断文件前5行内容是否有Last modified这个单词,如果没有,代表没有添加过作者信息,需要新添加;如果有只需更新这个单词后的文件更改时间即可,函数内容:function AddAuthor() let n=1 while n < 5 let line = getline(n) if line =~'^\s*\*\s*\S*Last\s*modified\s*:\s*\S*.*$' call UpdateTitle() return endif let n = n + 1 endwhile call AddTitle()endfunction
添加UpdateTitle()更新更改时间函数,在AddAuthor()函数判断文件前五行内容中出现Last modified字符后,将执行此函数进行更新时间,函数内容如下:function UpdateTitle() normal m' execute '/* Last modified\s*:/s@:.*$@\=strftime(': %Y-%m-%d %H:%M')@' normal ' normal mk execute '/* Filename\s*:/s@:.*$@\=': '.expand('%:t')@' execute 'noh' normal 'k echohl WarningMsg | echo 'Successful in updating the copy right.' | echohl Noneendfunction
添加AddTitle()新添加作者信息函数,在AddAuthor()函数判断文件前五行内容中没有出现Last modified字符,将执行此函数进行添加作者信息,此函数需要设置作者信息的内容,可自行设置,但必须要有” Last modified”信息行,且此行必须在前5行内,否则AddAuthor()函数在前5行判断不到此条信息,那么每按一次F4都将添加作者信息。AddTitle()函数内容如下,可参照:function AddTitle() call append(0,'/**********************************************************') call append(1,' * Author : 作者') call append(2,' * Email : 邮箱地址') call append(3,' * Last modified : '.strftime('%Y-%m-%d %H:%M')) call append(4,' * Filename : '.expand('%:t')) call append(5,' * Description : ') call append(6,' * *******************************************************/') echohl WarningMsg | echo 'Successful in adding the copyright.' | echohl Noneendfunction
检测编辑无误后保存退出,用非root用户登录,进行测试。用vi随便创建一个文件进行编辑,vi 1.c
按F4键,查看效果,可以看到在AddTitle()函数中设置的作者信息已经字段添加在了文件的开始位置,继续F4(间隔时间大于一分钟)会发现Last modified后的时间也会改变,且在屏幕最下方会提示” Successful in updating the copy right.”
在用root用户编辑/etc/vimrc之前请记住常识性操作:备份