vim的安裝以及常用命令

1. vim安裝

在線安裝(建議)
sudo apt-get install vim (ubuntu)
yum install vim (redHat/Fedora/CentOS) 

2. vim使用

2.1 vim的工作模式:命令模式、編輯模式、末行模式

就是直接在vim + 文件名,進行編輯
常用命令

含義 命令
添加批量註釋 1. 首先把光標定位到要註釋的最前面
2.ctrl+v進入視圖模式,向下或者向上移動光標,移動到註釋的最後一行
3.然後按大寫的i(shift+i),插入註釋符,註釋符比如 # 等等
4.最後按 esc ,這樣就選中的全部註釋了
去掉批量註釋 1. ctrl+v進入視圖模式,選中要取消註釋的區域
2. 然後按d,就會刪除選中的註釋符號
剪切文本 1. ctrl+v進入視圖模式,選中要剪切的文本
2. 點擊 y 進行復制
3. 點擊 p 進行剪切
4. 點擊 p 進行復制
剪切當前行光標所在的位置到行尾:d$
剪切當前行光標所在的位置到行首:d^
剪切三行:3dd,就是從當前行 + 下兩行被剪切
剪切1-10到20行(括號裏面的):(:1,10 m 20)
刪除 1. 刪除一行 : dd
2.刪除以當前行開始的n行 : ndd
3. 刪除以當前字符開始的一個字符 : dw
4. 刪除以當前字符開始的n個字符 : ndw
5. 刪除以當前字符開始的一行字符 : d$ , D
6. 刪除到下一句的開始 : d)
7. 刪除到下一段的開始 : d}
8. 刪除兩行 : d + 回車
複製 將第9行至15行的數據,複製到16行
1. (:9,15 copy 16 或者 :9,15 co 16)
2.ctrl+v進入視圖模式,選中複製的文本,點擊y,將光標選擇要粘貼的地方,esc退出可視模式,點擊p進行復制
換行 點擊 o 就可以換行(不過是編輯模式,注意一下)
撤回操作 點擊 u 就可以撤銷到上一次的輸入(這個只能在一般模式下使用)
在每行前面加入行號 :set su
取消行號 :set nonu
開啓鼠標控制 :set mouse=a
設置搜索高亮 :set hls
設置字體 :set guifont=monaco\10
標記當前所在行 :set sursorline
在命令模式下退出並保存 :wq
文件未作修改退出 :q
強制退出,不保存 :q!
光標跳到指定行行首 :行號
光標移動到最後一行 G
光標移動到首行 gg
字符的替換 1. :%s/源字符/替換字符(將每行出現的第一個源字符替換爲目標字符)
2. :%s/源字符/替換後的字符/g(將全文源字符替換爲目標字符)3. : 8,10s/源字符/替換後字符/g(替換第八行到第十行的字符)
2. 2 永久設置一些行號啥的,可以對/etc/vimrc進行編輯添加(vim /etc/vimrc),成爲永久,不用每次進入終端進行設置(建議:用啥添加啥,都添加進去也沒問題)
"打開語法高亮
syntax on

"使用配色方案
colorscheme desert

"打開文件類型檢測功能
filetype on

"不同文件類型採用不同縮進
filetype indent on

"允許使用插件
filetype plugin on
filetype plugin indent on

"關閉vi模式
set nocp

"與windows共享剪貼板
set clipboard+=unnamed

"取消VI兼容,VI鍵盤模式不易用
set nocompatible

"顯示行號, 或set number
set nu

"歷史命令保存行數 
set history=100 

"當文件被外部改變時自動讀取
set autoread 

"取消自動備份及產生swp文件
set nobackup
set nowb
set noswapfile

"允許使用鼠標點擊定位
set mouse=a

"允許區域選擇
set selection=exclusive
set selectmode=mouse,key

"高亮光標所在行
set cursorline

"取消光標閃爍
set novisualbell

"總是顯示狀態行
set laststatus=2

"狀態欄顯示當前執行的命令
set showcmd

"標尺功能,顯示當前光標所在行列號
set ruler

"設置命令行高度爲3
set cmdheight=3

"粘貼時保持格式
set paste

"高亮顯示匹配的括號
set showmatch

"在搜索的時候忽略大小寫
set ignorecase
 
"高亮被搜索的句子
set hlsearch
 
"在搜索時,輸入的詞句的逐字符高亮(類似firefox的搜索)
set incsearch

"繼承前一行的縮進方式,特別適用於多行註釋
set autoindent

"爲C程序提供自動縮進
set smartindent

"使用C樣式的縮進
set cindent

"製表符爲4
set tabstop=4

"統一縮進爲4
set softtabstop=4
set shiftwidth=4

"允許使用退格鍵,或set backspace=2
set backspace=eol,start,indent
set whichwrap+=<,>,h,l

"取消換行
set nowrap

"啓動的時候不顯示那個援助索馬里兒童的提示
set shortmess=atI

"在被分割的窗口間顯示空白,便於閱讀
set fillchars=vert:\ ,stl:\ ,stlnc:\

"光標移動到buffer的頂部和底部時保持3行距離, 或set so=3
set scrolloff=3

"設定默認解碼
set fenc=utf-8
set fencs=utf-8,usc-bom,euc-jp,gb18030,gbk,gb2312,cp936

"設定字體
set guifont=Courier_New:h11:cANSI
set guifontwide=新宋體:h11:cGB2312
 
"設定編碼
set enc=utf-8
set fileencodings=ucs-bom,utf-8,chinese
set langmenu=zh_CN.UTF-8
language message zh_CN.UTF-8
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim

"自動補全
filetype plugin indent on
set completeopt=longest,menu

"自動補全命令時候使用菜單式匹配列表
set wildmenu
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType java set omnifunc=javacomplete#Complet
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章