zoukankan      html  css  js  c++  java
  • 让vim更加智能化

    从此,让我的vim更加的智能化,整整用了一个周日,基本是值得的:

    "新建.c.cpp.python.sh等文件时,使用定义的函数SetTitle,自动插入文件头
    276 func SetTitle()
    277 "如果文件类型为不同种类文件文件时:
    278 if &filetype == 'c'
    279     call setline(1, "//This is c program code!")
    280     call append(line(".")+0,"/* *=+=+=+=+* *** *=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=")
    281     call append(line(".")+1,"  * 文档信息: *** :".expand("%:p:~"))
    282     call append(line(".")+2,"  * 创建时间: *** :".strftime("%c"))
    283     call append(line(".")+3,"  * 版权声明: *** :(魎魍魅魑)MIT")
    284     call append(line(".")+4,"  * 联络信箱: *** :guochaoxxl@163.com")
    285     call append(line(".")+5,"  * 文档用途: *** :深入理解C指针")
    286     call append(line(".")+6,"  * 作者信息: *** :guochaoxxl(http://cnblogs.com/guochaoxxl)")
    287     call append(line(".")+7,"  * 修订时间: *** :".strftime("%Y年第%W周 %m月%d日 %A %p%I:%M (%j天)"))
    288     call append(line(".")+8,"  * 文件描述: *** :自行添加")
    289     call append(line(".")+9," * *+=+=+=+=* *** *+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+*/")
    290     call append(line(".")+10," ")
    291 endif
    292 
    293 if &filetype == 'cpp'
    294     call append(line(".")+0,"/* *=+=+=+=+* *** *=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=")
    295     call append(line(".")+1,"  * 文档信息: *** :".expand("%:p:~"))
    296     call append(line(".")+2,"  * 创建时间: *** :".strftime("%c"))
    297     call append(line(".")+3,"  * 版权声明: *** :(魎魍魅魑)MIT")
    298     call append(line(".")+4,"  * 联络信箱: *** :guochaoxxl@163.com")
    299     call append(line(".")+5,"  * 文档用途: *** :深入理解C指针")
    300     call append(line(".")+6,"  * 作者信息: *** :guochaoxxl(http://cnblogs.com/guochaoxxl)")
    301     call append(line(".")+7,"  * 修订时间: *** :".strftime("%Y年第%W周 %m月%d日 %A %p%I:%M (%j天)"))
    302     call append(line(".")+8,"  * 文件描述: *** :自行添加")
    303     call append(line(".")+9," * *+=+=+=+=* *** *+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+*/")
    304     call append(line(".")+10," ")
    305 endif
    306 
    307 if &filetype == 'python'
    308     call setline(1, "#!/usr/bin/env python")
    309     call append(line(".")+0,"#/* *=+=+=+=+* *** *=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=")
    310     call append(line(".")+1,"#  * 文档信息: *** :".expand("%:p:~"))
    311     call append(line(".")+2,"#  * 创建时间: *** :".strftime("%c"))
    312     call append(line(".")+3,"#  * 版权声明: *** :(魎魍魅魑)MIT")
    313     call append(line(".")+4,"#  * 联络信箱: *** :guochaoxxl@163.com")
    314     call append(line(".")+5,"#  * 文档用途: *** :深入理解C指针")
    315     call append(line(".")+6,"#  * 作者信息: *** :guochaoxxl(http://cnblogs.com/guochaoxxl)")
    316     call append(line(".")+7,"#  * 修订时间: *** :".strftime("%Y年第%W周 %m月%d日 %A %p%I:%M (%j天)"))
    317     call append(line(".")+8,"#  * 文件描述: *** :自行添加")                                                                                                                                                                                                                                                                                                                                
    318     call append(line(".")+9,"# * *+=+=+=+=* *** *+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+*/")
    319     call append(line(".")+10," ")
    320 endif
    321 
    322 if &filetype == 'sh'
    323     call setline(1, "#!/usr/bin/bash")
    324     call append(line(".")+0,"#/* *=+=+=+=+* *** *=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=")
    325     call append(line(".")+1,"#  * 文档信息: *** :".expand("%:p:~"))
    326     call append(line(".")+2,"#  * 创建时间: *** :".strftime("%c"))
    327     call append(line(".")+3,"#  * 版权声明: *** :(魎魍魅魑)MIT")
    328     call append(line(".")+4,"#  * 联络信箱: *** :guochaoxxl@163.com")
    329     call append(line(".")+5,"#  * 文档用途: *** :深入理解C指针")
    330     call append(line(".")+6,"#  * 作者信息: *** :guochaoxxl(http://cnblogs.com/guochaoxxl)")
    331     call append(line(".")+7,"#  * 修订时间: *** :".strftime("%Y年第%W周 %m月%d日 %A %p%I:%M (%j天)"))
    332     call append(line(".")+8,"#  * 文件描述: *** :自行添加")
    333     call append(line(".")+9,"# * *+=+=+=+=* *** *+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+*/")
    334     call append(line(".")+10," ")
    335 endif
    336 
    337 normal Gj
    338 normal I
    339 endfunc
    340 
    341 autocmd BufNewFile *.c,*.cpp,*.py,*.sh exec ":call SetTitle()"

    当然可以继续优化,都是后话了,能用再说吧。

  • 相关阅读:
    纹理mag filter不能取GL_XXX_MIPMAP_XXXX
    (转)No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=arm64, VA 解决办法
    轻松制作儿童趣味算术软件
    批处理设置IP地址
    安卓手机文件管理器简单横向评比
    Linux基础和网络管理上机试题
    值得收藏的批处理程序
    王垠:完全用Linux工作
    XINU安装程序.exe一键配置好XINU实验环境
    很全面的WinRAR实用技巧系列
  • 原文地址:https://www.cnblogs.com/guochaoxxl/p/11830833.html
Copyright © 2011-2022 走看看