自用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.www58058.com/74119

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

相關推薦

  • 磁盤文件掛載與卸載

    掛載(mount)何為掛載?掛載指將文件系統與根文件系統的某個現存的目錄建立起來的關聯關系,這樣我們就可以將目錄作為訪問磁盤文件的入口,進行存取交互。掛載點:掛載點指的是被掛載的對象,通常掛載點是一個目錄,不過有時候也有文件作為掛載點格式:mount 設備 掛載點 ;此掛載方法味臨時掛載,只在當前的shell中有效,退出則清除掛載關聯設備文件在/dev/sd…

    Linux干貨 2017-04-24
  • n28-第二周

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示 cp:copy files and directories 復制文件和目錄 -i:交互式復制 默認情況下是別名定義了alias cp=’cp -i’ -f:強制復制 #cp -f /etc/issue /tmp/first.txt -r:遞歸復制目錄 將/etc目錄遞歸復制到/tmp…

    Linux干貨 2017-12-10
  • 第三周

    第三周 1.列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 [root@node1 ~]# who -q | sed -n ‘1p’ centos root fedora redhat mint 2.取出最后登錄到當前系統的用戶的相關信息。 [root@node1 ~]# who -a | tail -1 mint +…

    Linux干貨 2017-07-25
  • Linux第九周總結

    1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現; #!/bin/bash # login_user=0 nologin_user=0 for i in $(cat /etc/passwd | cut -d : -f 7);do &nbsp…

    Linux干貨 2017-08-28
  • Linux啟動流程

    內核級別: 1、POST開機加電自檢 BIOS加載CMOS信息并進行開機自檢,檢測硬件設備是否正常并進行硬件設備初始化 2、Boot Sequence(BIOS):定義設備啟動順序 BIOS定義設備啟動順序,并讀取啟動設備數據加載硬盤上的第一個扇區MBR。 3、Boot Loader(MBR):bootloader功能實現 Boot Loader提供一個菜單…

    Linux干貨 2016-11-23
  • 腳本實現httpd創建虛擬主機

    概述 本文使用腳本實現基于主機名的虛擬主機按需創建: 腳本可接受參數,提供獨立站點目錄; 生成獨立站點首頁; 腳本可接受參數,參數虛擬主機名稱; 每虛擬使用單獨的配置文件; 腳本可接受參數,參數虛擬主機名稱; 環境 系統基于CentOS7.2,并通過yum安裝httpd 2.4.6 建議關閉防火墻和selinux。 演示   客戶機將域名解析寫入/…

    Linux干貨 2016-10-08

評論列表(1條)

  • renjin
    renjin 2017-04-28 11:28

    對vim編輯器進行了詳細的介紹,內容寫的很詳細,排版也很好,加油!

欧美性久久久久