vim程序模板设置
<pre><code class="language-shell">autocmd BufNewFile *.c,*.h,*cpp,*.hpp exec ":call SetFileHead()"
function SetFileHead()
    call setline(1,          '/**')
    call append(line('.'),   ' * @file '.expand('%'))
    call append(line('.')+1, ' * @brief')
    call append(line('.')+2, ' * @author')
    call append(line('.')+3, ' * @date '.strftime("%Y-%m-%d %H:%M:%S"))
    call append(line('.')+4, ' * @version')
    call append(line('.')+5, ' * @copyright (c) Copyright 2010-2040, Wanbang New Energy Investment Co.,LTD.')
    call append(line('.')+6, ' *                       All Rights Reserved')
    call append(line('.')+7, ' ***********************************************************************************')
    call append(line('.')+8, ' * @attension')
    call append(line('.')+9, ' * Environment: ')
    call append(line('.')+10,' * @par 修改日志:')
    call append(line('.')+11,' * <table>')
    call append(line('.')+12,' * <tr><th>Date          <th>Version                 <th>Author       <th>Description')
    call append(line('.')+13,' * </table>')
    call append(line('.')+14,' ***********************************************************************************')
    call append(line('.')+15,' */')
    if expand('%:e') == 'h'
        call append(line('.')+16, "#ifndef __".toupper(expand("%:t:r"))."_H__")
        call append(line('.')+17, "#define __".toupper(expand("%:t:r"))."_H__")
        call append(line('.')+18, "")
        call append(line('.')+19, "/********************************************************************************")
        call append(line('.')+20, "*                                    Include files")
        call append(line('.')+21, "********************************************************************************/")
        call append(line('.')+22, "")
        call append(line('.')+23, "/********************************************************************************")
        call append(line('.')+24, "*                                    Struct   Union  Declaration")
        call append(line('.')+25, "********************************************************************************/")
        call append(line('.')+26, "")
        call append(line('.')+27, "/*******************************************************************************")
        call append(line('.')+28, "*                                    Global data Declaration")
        call append(line('.')+29, "********************************************************************************/")
        call append(line('.')+30, "")
        call append(line('.')+31, "/********************************************************************************")
        call append(line('.')+32, "*                                    Function Declaration")
        call append(line('.')+33, "********************************************************************************/")
        call append(line('.')+34, "")
        call append(line('.')+35, "#endif //__".toupper(expand("%:t:r"))."_H__")
        call append(line('.')+36, "")
        call append(line('.')+37, "/********************************************************************************")
        call append(line('.')+38, " * Copyright (c) 2010 Star Charge. * All rights reserved. ")
        call append(line('.')+39, " ********************************************************************************")
        call append(line('.')+40, " * End of this File (EOF): ")
        call append(line('.')+41, " * !!!!!!Do not put anything after this part!!!!!!!!!!! ************************/")
        call append(line('.')+42, "")
    elseif expand('%:e') == 'c'
        call append(line('.')+16, "")
        call append(line('.')+17, "/********************************************************************************")
        call append(line('.')+18, "*                                    Include files")
        call append(line('.')+19, "********************************************************************************/")
        call append(line('.')+20, "")
        call append(line('.')+21, "/********************************************************************************")
        call append(line('.')+22, "*                                    Local macro Defines (#define)")
        call append(line('.')+23, "********************************************************************************/")
        call append(line('.')+24, "")
        call append(line('.')+25, "/*******************************************************************************")
        call append(line('.')+26, "*                                    Local variable definition")
        call append(line('.')+27, "********************************************************************************/")
        call append(line('.')+28, "")
        call append(line('.')+29, "/********************************************************************************")
        call append(line('.')+30, "*                                    Local Function definition")
        call append(line('.')+31, "********************************************************************************/")
        call append(line('.')+32, "")
        call append(line('.')+33, "/********************************************************************************")
        call append(line('.')+34, " * Copyright (c) 2010 Star Charge. * All rights reserved. ")
        call append(line('.')+35, " ********************************************************************************")
        call append(line('.')+36, " * End of this File (EOF): ")
        call append(line('.')+37, " * !!!!!!Do not put anything after this part!!!!!!!!!!! ************************/")
        call append(line('.')+38, "")
    endif
endfunction
map <F2> :call SetFileHead()<CR></code></pre>