mac/ubuntu 下设置vim打开自动添加头部代码

mac下

cp usr/share/vim/vimrc ~/.vimrc

#接下来编辑vimrc
vim ~/.vimrc
//将下文代码粘贴进去
:wq

source ~/.vimrc

ubuntu

vim /etc/vim/vimrc

插入的代码

"新建.c,.h,.sh,.java文件,自动插入文件头
autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()"
""定义函数SetTitle,自动插入文件头
func SetTitle()
    "如果文件类型为.sh文件
"   if &filetype == 'sh'
        call setline(1,          "/****************************************************    *******“")
        call append(line("."),   "  > File Name: ".expand("%"))
        call append(line(".")+1, "  > Author: xxx")
        call append(line(".")+2, "  > Mail: [email protected]")
        call append(line(".")+3, "  > Created Time: ".strftime("%c"))
        call append(line(".")+4, "  > Modified Time:".strftime("%c"))
        call append(line(".")+5, " ****************************************************    ***/")
        call append(line(".")+6, "")
"   if &filetype == 'cpp'
    if expand("%:e") == 'cpp'
        call append(line(".")+7, "#include ")
        call append(line(".")+8, "#include ")
        call append(line(".")+9, "#include ")
        call append(line(".")+10, "#include ")
        call append(line(".")+11, "#include ")
        call append(line(".")+12, "#include ")
        call append(line(".")+13, "#include ")
        call append(line(".")+14, "#include ")
        call append(line(".")+15, "")
        call append(line(".")+16, "using namespace std;")
        call append(line(".")+17, "")
        call append(line(".")+18, "int main()")
        call append(line(".")+19, "{")
        call append(line(".")+20, "")
        call append(line(".")+21, "    return 0;")
        call append(line(".")+22, "}")
        call append(line(".")+23, "")
    endif
"   if &filetype == 'c'
  if expand("%:e") == 'c'
        call append(line(".")+7, "#include <stdio.h>")
        call append(line(".")+8, "#include <stdlib.h>")
        call append(line(".")+9, "#include <string.h>")
        call append(line(".")+10, "#include <unistd.h>")
        call append(line(".")+11, "#include <errno.h>")
        call append(line(".")+12, "#include <pthread.h>")
        call append(line(".")+13, "#include <fcntl.h>")
        call append(line(".")+14, "#include <sys/wait.h>")
        call append(line(".")+15, "#include <sys/stat.h>")
        call append(line(".")+16, "")
        call append(line(".")+17, "int main(int argc,char *argv[])")
        call append(line(".")+18, "{
     ")
        call append(line(".")+19, "")
        call append(line(".")+20, "    return 0;")
        call append(line(".")+21, "}")
        call append(line(".")+22, "")
    endif
    "   if &filetype == 'java'
    "       call append(line(".")+6,"public class ".expand("%"))
    "       call append(line(".")+7,"")
    "   endif
endfunc
"新建文件后,自动定位到文件末尾
autocmd BufNewFile * normal G

"--------------------------------------------------------------------------
" modify the last modified time of a file
function SetLastModifiedTime(lineno)
    let modif_time = strftime("%c")
    let line = '    > Modified Time:'.modif_time
    call setline(6, line)
    endfunction

" map the SetLastModifiedTime command automatically
au BufWrite *.v,*.c call SetLastModifiedTime(-1)

你可能感兴趣的:(linux)