自用vim环境参数设置

基本显示设置

set nu mber 显示行号 
syntax on 语法高亮 
set cursorline 用浅色高亮当前行 
set ruler 显示标尺 
set showcmd 输入的命令显示出来,看的清楚些 
set cmdheight=1 命令行(在状态行下)的高度,设置为1 
set tabstop=4 设置tab为四个空格 
set hlsearch 搜索时高亮显示被找到的文本 
set smartindent 开启新行时使用智能自动缩进

插件设置

filetype plugin on 允许插件

if has(‘/opt/local/bin/ctags’) 
let Tlist_Ctags_Cmd=’/opt/local/bin/ctags’ 
endif

” Taglist plugin 
map :TlistToggle 
let Tlist_WinWidth = 30 
let Tlist_Use_Right_Window = 1 
let Tlist_Use_SingleClick = 1 
let Tlist_Show_One_File=1 
let Tlist_Exit_OnlyWindow=1 
let Tlist_Auto_Open=1 
map :! ctags -R .

” NERDTree plugin 
map :NERDTreeMirror 
map :NERDTreeToggle 
” au VimEnter * NERDTree

自动插入文件头

func SetFileTitle() 
#如果文件类型为.sh文件
     if &filetype == 'sh' 
         call setline(1,"\#########################################################################") 
         call append(line("."), "\# File Name: ".expand("%")) 
         call append(line(".")+1, "\# Author: ") 
         call append(line(".")+2, "\# mail:") 
         call append(line(".")+3, "\# Created Time: ".strftime("%c")) 
         call append(line(".")+4, "\#########################################################################")
         call append(line(".")+5, "\#!/bin/bash") 
        call append(line(".")+6, "") 
     else
         call setline(1, "/*************************************************************************") 
         call append(line("."), "    > File Name: ".expand("%"))
         call append(line(".")+1, "    > Author: ")
         call append(line(".")+2, "    > Mail: ")
         call append(line(".")+3, "    > Created Time: ".strftime("%c"))
         call append(line(".")+4, " ************************************************************************/")
         call append(line(".")+5, "")
     endif
#如果文件类型为.py文件
    if &filetype == 'py'
        call append(line(".")+6, "#!/usr/bin/env python")
        call append(line(".")+7, "# -*- coding: utf-8 -*-")
    endif
#如果文件类型为.php文件
    if &filetype == 'php'
        call append(line(".")+6, "<?php")
    endif
#如果文件类型为.html文件
    if &filetype == 'html'
        call append(line(".")+6, "<!DOCTYPE HTML>")
        call append(line(".")+7, "<html lang="en-US">")
        call append(line(".")+8, "<head>")
        call append(line(".")+9, "  <meta charset="UTF-8">")
        call append(line(".")+10, " <title></title>")
        call append(line(".")+11, "</head>")
        call append(line(".")+12, "<body>")
        call append(line(".")+13, "</body>")
        call append(line(".")+14, "</html>")
    endif
#如果文件类型为.c文件
    if &filetype == 'c'
        call append(line(".")+6, "#include<stdio.h>")
        call append(line(".")+7, "")
    endif
#新建文件后,自动定位到文件末尾
    autocmd BufNewFile * normal G
endfunc 

快捷键

F4插入作者信息

map <F4> ms:call TitleDet()<cr>'s  
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 None  
endfunction  

映射全选+复制 ctrl+a

map ggVGY 
map! ggVGY 
map gg=G

选中状态下 Ctrl+c 复制

vmap “+y

F2去空行

nnoremap :g/^\s*$/d

原创文章,作者:zero,如若转载,请注明出处:http://www.178linux.com/74119

(0)
zerozero
上一篇 2017-04-24
下一篇 2017-04-24

相关推荐

  • 快速搭建ss上网

    快速搭建ss 方法一: [root@cloud ~]# yum install build-essential autoconf libtool openssl-devel gcc -y [root@cloud ~]# git clone&…

    Linux干货 2016-06-09
  • 双网卡绑定及单网卡多IP地址实现方法

    Bonding就是将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。当然,直接给两块网卡设置同一IP地址是不可能的。通过bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址。mode=1(active-backup):一个网卡处于活动状态 ,一个处于备份状态,所有流量都在主链路上处理。当活动网卡down掉时,启用备份…

    Linux干货 2016-09-05
  • 管道,用户组管理

    管道 |          把左边的命令执行结果输送到右边的命令作为参数执行,可以多管道多任务执行     这就是linux的哲学思想之一,链接程序,共同完成复杂任务     错误输出默认不能通过管道…

    Linux干货 2016-08-04
  • 运行级别

    运行级别(Runlevel)指的是Unix或者Linux等类Unix操作系统下不同的运行模式。运行级别通常分为7等,分别是从0到6,但如果必要的话也可以更多。 例如在大多数Linux操作系统下一共有如下7个典型的运行级别: 0 停机,关机 1 单用户,无网络连接,不运行守护进程,不允许非超级用户登录 2 多用户,无网络连接,不运行守护进程 3 多用户,正常启…

    Linux干货 2017-07-10
  • Redis的编译安装

    介绍     redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set –有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更…

    Linux干货 2015-02-28

评论列表(1条)

  • renjin
    renjin 2017-04-28 11:28

    对vim编辑器进行了详细的介绍,内容写的很详细,排版也很好,加油!