国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Vim編輯器

AdolphLWQ / 1248人閱讀

摘要:什么是是從發(fā)展出來的一個文本編輯器。依次沿著你的跳轉(zhuǎn)記錄向回跳依次沿著你的跳轉(zhuǎn)記錄向前跳命令當(dāng)輸入會進(jìn)入命令行編輯,在編輯器的最下邊,出現(xiàn),其中命令被稱作命令。選項(xiàng),設(shè)置當(dāng)前打開的編輯器的選項(xiàng),例如是否展示行號,自動縮進(jìn)等。

什么是Vim

Vim是從 vi 發(fā)展出來的一個文本編輯器。代碼補(bǔ)全、編譯及錯誤跳轉(zhuǎn)等方便編程的功能特別豐富,在程序員中被廣泛使用,和Emacs(夸張的說法是偽裝成編輯器的操作系統(tǒng))并列成為類Unix系統(tǒng)用戶最喜歡的文本編輯器。Bram Moolenaar 從一個開源的vi開發(fā)了1.0的Vim,并且在1992 年 1.22 版本的 Vim 被移植到了 UNIX 和MS-DOS上。自vim發(fā)布有很多程序員使用,到2010年vim發(fā)布7.3版本,目前最新的一個版本。

安裝Vim

Mac下可以直接使用brew安裝:

brew install macvim

其他系統(tǒng)下的安裝可查看官方網(wǎng)站http://www.vim.org/download.p...

基本概念 普通( Normal )模式

當(dāng)我們通過vim 文件或文件夾進(jìn)入編輯器時,默認(rèn)的就是普通模式,或者叫做命令模式,在這種模式下,鍵盤上的大部分輸入會被認(rèn)作是快捷鍵。普通模式也是vim使用中最多使用的模式,能很大的提高編輯效率。
命令解釋中的參數(shù):

CHAR 任何非空白字符
WORD 非空白字符的序列 (字串)
N 命令前輸入的數(shù)值
{motion} 光標(biāo)移動命令
Nmove {motion} 移動經(jīng)過的文本

當(dāng)進(jìn)入普通模式時左下角顯示--INSERT--,下面介紹一些常用的快捷鍵:

1.模式轉(zhuǎn)換

基本的模式轉(zhuǎn)換快捷鍵,對于進(jìn)入編輯模式,下面還有其他快捷鍵在完成后也會進(jìn)入編輯模式。
普通模式進(jìn)入編輯模式

i 在當(dāng)前位置生前插入N次     
I 在當(dāng)前行首插入N次
a 在當(dāng)前位置后插入N次       
A 在當(dāng)前行尾插入N次
o 在當(dāng)前行之后插入一行N次    
O 在當(dāng)前行之前插入一行N次

普通模式進(jìn)入可視化模式

v 開始面向字符的可視 (Visual) 模式
V 進(jìn)入面向行的可視 (Visual) 模式
CTRL+v 進(jìn)入面向列的可視 (Visual) 模式
2.光標(biāo)移動及屏幕調(diào)整

通過快捷鍵我們可以完成光標(biāo)的快速移動.

h 光標(biāo)左移 N 個字符
l 光標(biāo)右移 N 個字符,這個命令很少用,一般用w代替。
k 光標(biāo)上移 N 行
j 光標(biāo)下移 N 行

w 光標(biāo)向前移動 N 個 WORD,停留在該 WORD 的第一個字符,當(dāng)?shù)竭_(dá)該行行尾時,會自動換行。
e 光標(biāo)向前移動 N 個 WORD,停留在該 WORD 的最后一個字符,當(dāng)?shù)竭_(dá)該行行尾時,會自動換行。
b 光標(biāo)向后移動 N 個 WORD,停留在該 WORD 的第一個字符,當(dāng)?shù)竭_(dá)該行行首時,會自動換行。
W,E,B 與w,e,b 功能是一致的,但是在區(qū)分 WORD 上是不同的,對于parent.child這種,大寫的快捷鍵會忽略標(biāo)點(diǎn)符號。

^ 移動到本行第一個非空白字符上。
0(數(shù)字0)移動到本行第一個字符上,HOME鍵也可。
$ 移動到當(dāng)前行,下 N 行行尾。
| 移到當(dāng)前行的第 N 個字符。
gg 移動到文件的第一行,同 [[。
G  移動到文件的最后一行,同 ]]。(NG會移動到第 N 行)
f 也可用于移動光標(biāo),fx會查找光標(biāo)后的字符x,3fx會查找光標(biāo)后的第三個字符x。但f只局限與當(dāng)前行不會跨行。
F 同f,反向查找。
; 重復(fù)前面的f、F、t或T查找命令。
, 以相反的方向重復(fù)前面的f、F、t或T查找命令。

z 將當(dāng)前行下的第 N 行置為屏幕的頂行(即z+ENTER) 或者zt
z. 將當(dāng)前行上的第 N 行置為屏幕的中央 或者zz
z- 將當(dāng)前行上的第 N 行置為屏幕的底行 或者zb

H 移動到當(dāng)前屏幕的開頭下 N 行。
M 移動到當(dāng)前屏幕的中間。
L 移動到當(dāng)前屏幕的結(jié)尾上 N 行。
gm 移動到屏幕中間
+ 移動到下一行的第一個非空字符
- 移動到上一行的第一個非空字符
% 光標(biāo)會移動后面的第一個小括號中括號大括號 ,所匹配的小括號中括號大括號,即成對出現(xiàn)的符號。

書簽

m[a-zA-Z] 在光標(biāo)所在行定義書簽,使用"+書簽名 跳轉(zhuǎn)。例如 ma,"a。

組合鍵

Ctrl + e 向下滾動一行
Ctrl + y 向上滾動一行
Ctrl + d 向下滾動半屏
Ctrl + u 向上滾動半屏
Ctrl + f 向下滾動一屏,同 PAGEDOWN。
Ctrl + b 向上滾動一屏,同 PAGEUP。
Ctrl + o 依次沿著你的跳轉(zhuǎn)記錄向回跳
Ctrl + i 依次沿著你的跳轉(zhuǎn)記錄向前跳

EX命令 當(dāng)輸入: / ? 會進(jìn)入命令行編輯,在編輯器的最下邊,出現(xiàn) : / ? ,其中: + 命令 被稱作EX命令。

:+行號 可以直接跳到該行 ,當(dāng)輸入行號大于最大行號時,會跳到最后一行。在便器展示行號的情況下,這個命令被經(jīng)常使用。
:ju 列出跳轉(zhuǎn)歷史。
3.查找及替換

查找,vim中可以通過EX命令 :set + 選項(xiàng) ,去設(shè)置一些選項(xiàng)來影響查找。輸入/ ? 時,會在底行出現(xiàn)該命令,然后可以輸入字符,輸入ENTER開始查找,支持正則表達(dá)式,并且支持歷史操作。

/{查找的內(nèi)容}[/偏移量] 光標(biāo)處向下查找指定內(nèi)容 
?{查找的內(nèi)容}[/偏移量] 光標(biāo)處向上查找指定內(nèi)容
/和? 在開始查找時可使用n或者N在找到的內(nèi)容之間跳轉(zhuǎn)。
n 重復(fù)前一個查找的動作
N 與 n 剛好相反,反向進(jìn)行前一個查找動作
:set ignorecase  忽略大小寫的查找
:set noignorecase  不忽略大小寫的查找
:set hlsearch  高亮搜索結(jié)果,所有結(jié)果都高亮顯示,而不是只顯示一個匹配。
:set nohlsearch  關(guān)閉高亮搜索顯示
:nohlsearch  關(guān)閉當(dāng)前的高亮顯示,如果再次搜索或者按下n或N鍵,則會再次高亮。
:set incsearch  逐步搜索模式,對當(dāng)前鍵入的字符進(jìn)行搜索而不必等待鍵入完成。
:set wrapscan  重新搜索,在搜索到文件頭或尾時,返回繼續(xù)搜索,默認(rèn)開啟。
*或者# 會選中光標(biāo)處的WORD,然后 直接輸入N/n,開始查找。

替換,替換操作可以實(shí)現(xiàn)縮進(jìn),注釋。

r{CHAR} 替換光標(biāo)處的字符。
R{WORD} 替換光標(biāo)處的字符,直到輸入或者CTRL+[為止。
:s/old/new/ 用old替換new,替換當(dāng)前行的第一個匹配
:s/old/new/c 用old替換new,替換當(dāng)前行的第一個匹配 帶確認(rèn)選項(xiàng)的刪除(選項(xiàng)y[es] ,n[o] ,a[ll] ,q[uit],l[ast]替換完當(dāng)前退出,Ctrl+e ,Ctrl+y)
:%s/s+$// 刪除行尾空格
:s/old/new/g 用old替換new,替換當(dāng)前行的所有匹配
:%s/old/new/ 用old替換new,替換所有行的第一個匹配
:%s/old/new/g 用old替換new,替換所有行的所有匹配
:%s/([^,]*), (.*)/2 1/
:n,m s/old/new/g 在第n行到第m行之間,用old替換new,替換所有匹配。
& 重復(fù)最后的:s命令
:10,20 s/^/    /g 在第10行知第20行每行前面加四個空格,用于縮進(jìn)。
:起始行號,結(jié)束行號s/^/注釋符/g
:起始行號,結(jié)束行號s/^注釋符//g

查找并執(zhí)行命令

:g/text1/s/text2/text3 查找包含text1的行,用text3替換text2
:g/text/command 在所有包含text的行運(yùn)行command所表示的命令 :g/^/m 0
:v/text/command 在所有不包含text的行運(yùn)行command所表示的命令
4.刪除 剪切 拷貝 粘貼

vim是不支持系統(tǒng)的剪切板,linux中,通常通過vim的寄存器來實(shí)現(xiàn),"+y 復(fù)制到系統(tǒng)剪切板 ,"+p 把系統(tǒng)粘貼板里的內(nèi)容粘貼到vim,對于mac,macvim是command+c 和command+v

x 刪除光標(biāo)后 N 個字符
d{motion} 刪除移動命令經(jīng)過的字符,例如 dj 刪除當(dāng)前行及下面一行。
dd 刪除當(dāng)前行
d$ 刪除光標(biāo)到行尾的內(nèi)容 同D。
Ndd 刪除當(dāng)前行開始的N行。
dG 刪除當(dāng)前行之后所有行
dgg 刪除當(dāng)前行之前所有行
:1,10d 刪除1-10行
:11,$d 刪除11行及以后所有的行
:1,$d 刪除所有行
J 合并當(dāng)前行及下面 N 行。即刪除空格。
s 刪除光標(biāo)處的 N 個字符并進(jìn)入插入模式
S 刪除光標(biāo)下的 N 行并進(jìn)入插入模式
c{motion} 改變移動命令經(jīng)過的字符,同d 命令,并進(jìn)入插入模式。
y  拷貝當(dāng)前光標(biāo)選中部分,常在可視模式中使用。
yy 拷貝當(dāng)前行下 N 行
:1,10y 復(fù)制1-10行
:,10y  復(fù)制光標(biāo)所在行到10行
p  在當(dāng)前光標(biāo)后粘貼 N 次,如果之前使用了yy命令來復(fù)制一行,那么就在當(dāng)前行的下一行粘貼。
P  在當(dāng)前行前粘貼 N 次
:1,n co m 將1-n行插入到第m行之后。
:1,$ co $ 將整個文件復(fù)制一份并添加到文件尾部。
5.撤銷 重復(fù)
u 撤銷(Undo)
U 撤銷對整行的操作
Ctrl + r ,即撤銷的撤銷。
. 重復(fù)上次修改,包含你在插入模式的插入。許多如果想多次使用的修改命令,可以它代替。
6.EX命令

當(dāng)輸入:會在底行出現(xiàn):,再次輸入的內(nèi)容都會出現(xiàn)在:之后,這些輸入的內(nèi)容,會被認(rèn)作EX命令。
通過EX命令設(shè)置的vim選項(xiàng),都只在當(dāng)前編輯窗中有效,退出后,則消失,如需永久有效,需修改vim的配置文件.vimrc。
常使用的EX命令:

:q 退出文件
:w 保存文件 (或者+ filename 另存為)
:wq 保存退出文件(也可在普通模式下使用 ZZ 快捷鍵)
:x 保存退出 與wq的區(qū)別是保存退出時,如果該文件沒有修改,則不會修改文件的時間戳,wq則一定會。
:q! 強(qiáng)制退出
:help+命令 查看幫助
:e 后接文件名,打開文件,支持ftp,不接文件名時,直接刷新當(dāng)前文件。
:e!放棄所有修改,重新打開文件。
:open+ 打開file
#可通過:files或者:ls或者:buffers,來查看vim緩沖區(qū),即可跳轉(zhuǎn)文件。
:bn 切換到下一個文件 
:n   編輯下一個文件
:bp 切換到上一個文件
:new 打開個新窗口或者在新窗口打開文件
:split 打開個新窗口或者在新窗口打開文件(vsplit也可以,split打開的窗口都是橫向的,使用vsplit可以縱向打開窗口。)
:!command  在當(dāng)前目錄下執(zhí)行shell命令。
:sh 打開子shell,ctrl+d或者exit退出 (或者使用Ctrl+z 掛起 ,fg返回)
:r 文件名   在光標(biāo)所在處插入一個文件的內(nèi)容。
:10r 文件名   將文件插入至 10 行之后。
:r! {command} 將命令 {command} 的標(biāo)準(zhǔn)輸出插入到光標(biāo)之下
:10,29write [!或者>>]name   將10-29 行的內(nèi)容保存到文件name中。!表示強(qiáng)制 >> 表示追加 
:f 顯示文件名、當(dāng)前的行號、文件的總行數(shù)和文件位置的百分比,是否修改。
:f+ 改變編輯中的文件名。
:iab[breviate] re React 定義插入模式下縮寫。
:abclear
#set 選項(xiàng)
:set+
7.其他
:ls 查看緩存區(qū)
q: 查看命令窗口
:reg 查看寄存器
:marks 查看書簽
:delm[ark] + 書簽名  刪除書簽。
<{motion} 將動作 {motion} 覆蓋的所有行向左移動 1個移位寬度
>{motion} 將動作 {motion} 覆蓋的所有行向右移動 1個移位寬度
>> 向右移動一個移位寬度
<< 向左移動一個移位寬度
:n,m>> ,n到m行右移一個移位寬度
CTRL+g 顯示文件名、當(dāng)前的行號、文件的總行數(shù)和文件位置的百分比,是否修改。
:= 打印文件中的行數(shù)
gf 打開光標(biāo)處文件,文件要在當(dāng)前目錄內(nèi)。
gd 到達(dá)光標(biāo)所在處函數(shù)或者變量的定義處。
:".   它移動光標(biāo)到上一次的修改行
K  看光標(biāo)所指標(biāo)識符的 man 幫助頁
~ 大小寫替換,同時光標(biāo)前移
gu{motion} 經(jīng)過的位置內(nèi)容小寫(guu 當(dāng)前行)
gU{motion} 經(jīng)過的位置內(nèi)容大寫(gUU 當(dāng)前行)
g~{motion} 經(jīng)過的位置內(nèi)容大小寫互換。
zfap 按段落折疊
zo 打開折疊
插入模式

只有在插入模式下,才可以做文字輸入,不會被認(rèn)為是快捷鍵,在普通模式下可以通過i進(jìn)入插入模式。

CTRL+c 同離開插入模式
CTRL+o {command}短暫離開插入模式,執(zhí)行命令command后回到插入。
可視模式

可視模式下可以使用普通模式的大部分快捷鍵,當(dāng)進(jìn)入可視模式時左下角顯示--VISUAL--,具體細(xì)節(jié)可查看vim的文檔
可視模式主要是做選擇操作,此時移動光標(biāo)的操作都會把光標(biāo)經(jīng)過的部分選中。

CTRL+c 同離開可視模式
ab 選擇 "一個塊" (從 "[(" 至 "])") (block)
ib 選擇 "內(nèi)含塊" (從 "[(" 到 "])")
aB 選擇 "一個大塊" (從 "[{" 到 "]}") (Block)
iB 選擇 "內(nèi)含大塊" (從 "[{" 到 "]}")
U 選中部分大寫
u 選中部分小寫
常用插件 NERDTree

NERDTree最常用的插件之一,以樹形結(jié)構(gòu)展示文件夾,實(shí)現(xiàn)我們在IDE的項(xiàng)目視圖。可以去官方網(wǎng)站https://github.com/scrooloose...查看如何下載安裝。
主要快捷鍵:

ctrl + w + h    工作窗口左移
ctrl + w + l    工作窗口右移
ctrl + w + w    光標(biāo)自動在左右側(cè)窗口切換
ctrl + w + r    移動當(dāng)前窗口的布局位置
o       在已有窗口中打開文件、目錄或書簽,并跳到該窗口
go      在已有窗口 中打開文件、目錄或書簽,但不跳到該窗口
t       在新 Tab 中打開選中文件/書簽,并跳到新 Tab
T       在新 Tab 中打開選中文件/書簽,但不跳到新 Tab
i       split 一個新窗口打開選中文件,并跳到該窗口
gi      split 一個新窗口打開選中文件,但不跳到該窗口
s       vsplit 一個新窗口打開選中文件,并跳到該窗口
gs      vsplit 一個新 窗口打開選中文件,但不跳到該窗口
!       執(zhí)行當(dāng)前文件
O       遞歸打開選中 結(jié)點(diǎn)下的所有目錄
x       合攏選中結(jié)點(diǎn)的父目錄
X       遞歸 合攏選中結(jié)點(diǎn)下的所有目錄
e       Edit the current dif
雙擊    相當(dāng)于 NERDTree-o
中鍵    對文件相當(dāng)于 NERDTree-i,對目錄相當(dāng)于 NERDTree-e
D       刪除當(dāng)前書簽
P       跳到根結(jié)點(diǎn)
p       跳到父結(jié)點(diǎn)
K       跳到當(dāng)前目錄下同級的第一個結(jié)點(diǎn)
J       跳到當(dāng)前目錄下同級的最后一個結(jié)點(diǎn)
k       跳到當(dāng)前目錄下同級的前一個結(jié)點(diǎn)
j       跳到當(dāng)前目錄下同級的后一個結(jié)點(diǎn)
C       將選中目錄或選中文件的父目錄設(shè)為根結(jié)點(diǎn)
u       將當(dāng)前根結(jié)點(diǎn)的父目錄設(shè)為根目錄,并變成合攏原根結(jié)點(diǎn)
U       將當(dāng)前根結(jié)點(diǎn)的父目錄設(shè)為根目錄,但保持展開原根結(jié)點(diǎn)
r       遞歸刷新選中目錄
R       遞歸刷新根結(jié)點(diǎn)
m       顯示文件系統(tǒng)菜單
cd      將 CWD 設(shè)為選中目錄
I       切換是否顯示隱藏文件
f       切換是否使用文件過濾器
F       切換是否顯示文件
B       切換是否顯示書簽
q       關(guān)閉 NerdTree 窗口
?       切換是否顯示 Quick Help
#切換標(biāo)簽頁
:tabnew [++opt選項(xiàng)] [+cmd] 文件 建立對指定文件新的tab
:tabc   關(guān)閉當(dāng)前的 tab
:tabo   關(guān)閉所有其他的 tab
:tabs   查看所有打開的 tab
:tabp   前一個 tab
:tabn   后一個 tab
pathogen

插件管理工具,vim有很多插件可供我們使用,當(dāng)插件數(shù)量大的時候就需要一個專門的工具去管理,pathogen就是實(shí)現(xiàn)功能,下載安裝https://github.com/tpope/vim-...

其他

vim 有很多有用的插件,像ctags、taglist、foldmethod、xmledit、visualmark、vim-markdown等。當(dāng)然也有一些人把一些好的配置分享出來,比較受歡迎的有:
https://github.com/spf13/spf1...
https://github.com/carlhuda/j...

最近發(fā)現(xiàn)個,可以看看試著去配置自己的vim
https://github.com/square/max...

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/24843.html

相關(guān)文章

  • Linux學(xué)習(xí)筆記:4.Vim輯器(1)

    摘要:概述用戶經(jīng)常需要對系統(tǒng)配置文件進(jìn)行文本編輯,所以至少掌握一種文本編輯器,首選編輯器是。的命令幾乎全部都可以在上使用,安裝了的系統(tǒng),在命令行輸入,實(shí)際啟動的是編輯器。 Vi/Vim概述 Linux用戶經(jīng)常需要對系統(tǒng)配置文件進(jìn)行文本編輯,所以至少掌握一種文本編輯器,首選編輯器是Vi/Vim。幾乎任何一個發(fā)行版都有Vi或者Vim編輯器。 Vi編輯器可以對文本進(jìn)行編輯、刪除、查找和替...

    hss01248 評論0 收藏0
  • 還有必要學(xué)Vim嗎?

    摘要:在這樣一個時代,還要學(xué)這種中古的技能嗎我來討論一下為什么要,不但要,而且必須要。其實(shí)要說功能強(qiáng)大,的產(chǎn)品無疑都很牛。這也是造成它學(xué)習(xí)成本高,被人吐槽多的原因。出現(xiàn)之后,包括等等在內(nèi)的各種創(chuàng)新涌現(xiàn)了出來。 曾經(jīng)有一段時間,編輯器領(lǐng)域的創(chuàng)新停滯了。在web編程走紅,尤其是electron出現(xiàn)之后,這個領(lǐng)域又上了一個新臺階。Atom, VsCode等等替代了之前唯一的但是臃腫的跨平臺選擇 -...

    ytwman 評論0 收藏0
  • 折騰Vim 輯器

    摘要:目的不是比較什么編輯器更好,也不是宣傳多么神奇,只是想給需要的人提供一些幫助。編輯的時候不用頻繁的敲和了。所以,針對不容的環(huán)境,不同的項(xiàng)目,應(yīng)選擇最合適的編輯器,就像不同的項(xiàng)目要用不同的開發(fā)語言一樣。 Abstract 本文主要介紹如何從0開始,構(gòu)造適合自己的vim。目的不是比較什么編輯器更好,也不是宣傳vim多么神奇,只是想給需要的人提供一些幫助。文章以ubuntu14.04,Vim...

    李世贊 評論0 收藏0
  • 優(yōu)測優(yōu)社區(qū)干貨精選|老司機(jī)亂談輯器之神——vim

    摘要:點(diǎn)擊原文鏈接體驗(yàn)更佳哦優(yōu)測優(yōu)社區(qū)干貨精選老司機(jī)亂談編輯器之神騰訊優(yōu)測騰訊優(yōu)測是專業(yè)的移動云測試平臺,為應(yīng)用游戲,混合應(yīng)用的研發(fā)團(tuán)隊(duì)提供產(chǎn)品質(zhì)量檢測與問題解決服務(wù)。 文 / 騰訊 吳雙 前言 優(yōu)測小優(yōu) 有話說: 騰訊優(yōu)測只有應(yīng)用測試大神?不不不,我們還有各種研發(fā)大牛! vim 是一種信仰,我自從2004年有了這個信仰,已經(jīng)12個年頭了。本文介紹了學(xué)習(xí)vim的方法以及一些vim常用的插件...

    BaronZhang 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<