麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > .NET > 正文

vim vax 快捷鍵大全

2024-07-10 13:31:00
字體:
供稿:網(wǎng)友

高效率移動

在插入模式之外

基本上來說,你應(yīng)該盡可能少的呆在插入模式里面,因為在插入模式里面VIM就像一個“啞巴”編輯器一樣。很多新手都會一直呆在插入模式里面,因為這樣易于使用。但VIM的強大之處在于他的命令行模式!你會發(fā)現(xiàn),在你越來越了解VIM之后,你就會花越來越少的時間使用插入模式了。

使用 h,j,k,l

使用VIM高效率編輯的第一步,就是放棄使用箭頭鍵。使用VIM,你就不用頻繁的在箭頭鍵和字母鍵之間移來移去了,這會節(jié)省你很多時間。當(dāng)你在命令模式時,你可以用h,j,k,l來分別實現(xiàn)左,下,上,右箭頭的功能。一開始可能需要適應(yīng)一下,但一旦習(xí)慣這種方式,你就會發(fā)現(xiàn)這樣操作的高效之處了。

在你編輯你的電子郵件或者其他有段落的文本時,你可能會發(fā)現(xiàn)使用方向鍵和你預(yù)期的效果不一樣,有時候可能會一次跳過了很多行。這是因為你的段落在VIM看來是一個大的長長的行。這時你可以在按h,j,k或者l 之前鍵入一個g,這樣VIM就會按屏幕上面的行如你所愿的移動了。

在當(dāng)前行里面有效的移動光標

很多編輯器只提供了簡單的命令來控制光標的移動(比如左,上,右,下,到行首/尾等)。VIM則提供了很多強大的命令來滿足你控制光標的欲望。當(dāng)光標從一點移動到另外一點,在這兩點之間的文本(包括這兩個點)稱作被“跨過”,這里的命令也被稱作是motion。(簡單說明一下,后面會用到這個重要的概念)

這里是常用到的一些命令(motion):

fx:移動光標到當(dāng)前行的下一個x處。很明顯,x可以是任意一個字母,而且你可以使用;來重復(fù)你的上一個f命令。

tx:和上面的命令類似,但是是移動到x的左邊一個位置。(這真的很有用)

Fx:和fx類似,不過是往回找。

w:光標往前移動一個詞。

b: 光標往后移動一個詞。

0: 移動光標到當(dāng)前行首。

^:移動光標到當(dāng)前行的第一個字母位置。

$: 移動光標到行尾。

):移動光標到下一個句子。

( : 移動光標到上一個句子。

在整個文件里面有效移動光標

VIM有很多命令,可以用來到達文件里面你想到達的地方。下面是一些在文件里面移動的命令

:向下移動一屏。

:向上移動一屏。

G:到文件尾

numG:移動光標到指定的行(num)。(比如10G就是到第10行)

gg:到文件首

H:移動光標到屏幕上面

M:移動光標到屏幕中間

L:移動光標到屏幕下面

*:讀取光標處的字符串,并且移動光標到它再次出現(xiàn)的地方。

#:和上面的類似,但是是往反方向?qū)ふ摇?/p>

/text:從當(dāng)前光標處開始搜索字符串text,并且到達text出現(xiàn)的地方。必須使用回車來開始這個搜索命令。如果想重復(fù)上次的搜索的話,按n。

?text:和上面類似,但是是反方向。

ma:在當(dāng)前光標的位置標記一個書簽,名字為a。書簽名只能是小寫字母。你看不見書簽的存在,但它確實已經(jīng)在那里了。

`a:到書簽a處。注意這個不是單引號,它一般位于大部分鍵盤的1的左邊。

`.:到你上次編輯文件的地方。這個命令很有用,而且你不用自己去標記它。

高效的輸入

使用關(guān)鍵詞自動完成

VIM 有一個非常漂亮的關(guān)鍵詞自動完成系統(tǒng)。這表示,你可以輸入一個長詞的一部分,然后按一下某個鍵,然后VIM就替你完成了這個長詞的輸入了。舉個例子:你有一個變量名為 iAmALongAndAwkwardVarName 在你寫的代碼的某個地方。也許你不想每回都自己一個一個字母的去輸入它。

使用關(guān)鍵詞自動完成功能,你只需要輸入開始幾個字母(比如iAmAL),然后按(按住Ctrl,再按N)或者。如果VIM沒有給出你想要的詞,基本按,直到你滿意為止,VIM會一直循環(huán)它找到的匹配的字符串。

聰明的進入插入模式

很多新手進入插入模式都只是用i。這樣當(dāng)然可以進入插入模式,但通常不是那么合適,因為VIM提供了很多進入插入模式的命令。下面是最常用的一些:

i:在當(dāng)前字符的左邊插入

I:在當(dāng)前行首插入

a:在當(dāng)前字符的右邊插入

A:在當(dāng)前行尾插入

o:在當(dāng)前行下面插入一個新行

O:在當(dāng)前行上面插入一個新行

c{motion}:刪除motion命令跨過的字符,并且進入插入模式。比如:c$,這將會刪除從光標位置到行尾的字符并且進入插入模式。ct!,這會刪除從光標位置到下一個嘆號(但不包括),然后進入插入模式。被刪除的字符被存在了剪貼板里面,并且可以再粘貼出來。

d{motion}:和上面差不多,但是不進入插入模式。

有效的移動大段的文本

使用可視選擇(visual selections)和合適的選擇模式

不想最初的VI,VIM允許你高亮(選擇)一些文本,并且進行操作。這里有三種可視選擇模式:

v:按字符選擇。經(jīng)常使用的模式,所以親自嘗試一下它。

V:按行選擇。這在你想拷貝或者移動很多行的文本的時候特別有用。

:按塊選擇。非常強大,只在很少的編輯器中才有這樣的功能。你可以選擇一個矩形塊,并且在這個矩形里面的文本會被高亮。

在選擇模式的時候使用上面所述的方向鍵和命令(motion)。比如,vwww,會高亮光標前面的三個詞。Vjj將會高亮當(dāng)前行以及下面兩行。

在可視選擇模式下剪切和拷貝

一旦你高亮了選區(qū),你或許想進行一些操作:

d:剪貼選擇的內(nèi)容到剪貼板。

y:拷貝選擇的內(nèi)容到剪貼板。

c:剪貼選擇的內(nèi)容到剪貼板并且進入插入模式。

在非可視選擇模式下剪切和拷貝

如果你很清楚的知道你想拷貝或者剪切什么,那你根本就不需要進入可視選擇模式。這樣也會節(jié)省時間:

d{motion}:剪切motion命令跨過的字符到剪貼板。比如,dw會剪切一個詞而dfS會將從當(dāng)前光標到下一個S之間的字符剪切至剪貼板。

y{motion}:和上面類似,不過是拷貝。

c{motion}:和d{motion}類似,不過最后進入插入模式。

dd:剪切當(dāng)前行。

yy:拷貝當(dāng)前行。

cc:剪切當(dāng)前行并且進入插入模式。

D:剪切從光標位置到行尾到剪貼板。

Y:拷貝當(dāng)前行。

C:和D類似,最后進入插入模式。

x:剪切當(dāng)前字符到剪貼板。

s:和x類似,不過最后進入插入模式。

粘貼

粘貼很簡單,按p。

使用多重剪貼板

很多編輯器都只提供了一個剪貼板。VIM有很多。剪貼板在VIM里面被稱為寄存器(Registers)。你可以列出當(dāng)前定義的所有寄存器名和它們的內(nèi)容,命令為":reg"。最好使用小寫字母來作為寄存器的名稱,因為大寫的有些被VIM占用了。

使用寄存器的命令為雙引號“。

比如:我們要拷貝當(dāng)前行到寄存器k。你應(yīng)該按 "kyy。(你也可以使用 V"ky。為什么這樣也可以呢?)現(xiàn)在當(dāng)前行應(yīng)該已經(jīng)存在了寄存器k里面直到你又拷貝了一些東西進入寄存器k。現(xiàn)在你可以使用命令 "kp 來粘貼寄存器k里面的內(nèi)容到你想要的位置。

避免重復(fù)

令人驚奇的 . 命令

在VI里面,輸入 . (小數(shù)點符號),將會重復(fù)你給入的上一個命令。比如,你上個命令為 'dw'(刪除一個詞),VI將會接著再刪除一個詞。

使用數(shù)字

使用數(shù)字也是VIM強大的而且很節(jié)省時間的重要特性之一。在很多VIM的命令之前都可以使用一個數(shù)字,這個數(shù)字將會告訴VIM這個命令需要執(zhí)行幾次。比如:

3j 將會把光標向下移動三行。

10dd 將會刪除十行。

y3" 將會拷貝從當(dāng)前光標到第三個出現(xiàn)的引號之間的內(nèi)容到剪貼板。

數(shù)字是擴展motion命令作用域非常有效的方法。

記錄宏

有時候,你會發(fā)現(xiàn)你自己在文章的每段或者每行都重復(fù)相同的一系列動作。VIM允許你記錄一個宏來完成你的特殊需要。

qregister:記錄宏到寄存器register,這里register是任意的你的寄存器的名字。比如qa,將會記錄并且把宏存在寄存器a里面。

q:結(jié)束宏的記錄。

@register:使用存在寄存器register的宏。比如@a,將會使用存在寄存器a里面的宏。

必須要記住的是,宏只記錄了你的系列按鍵并且重復(fù)執(zhí)行它們。它們不是魔法。因為在VIM里面完成目的的方法有很多,所以有時候你要小心選擇命令來記錄你的宏。因為它們會在所有你要執(zhí)行它的地方執(zhí)行。

用VIM寫代碼

VIM是一個絕好的編輯器來寫代碼,因為它有一些特性是專門為程序員而設(shè)。這里是一些常用的:

]p:和p的功能差不多,但是它會自動調(diào)整被粘貼的文本的縮進去適應(yīng)當(dāng)前代碼的位置。試一下!

%:匹配花括號,方括號,括號等。在一個括號的上面,然后按%,鼠標就會出現(xiàn)在匹配的另外一半括號處。

>>:縮進所有選擇的代碼

<<:和上面類似,但是反縮進

gd:到達光標所在處函數(shù)或者變量的定義處。

K:在Man里面查找光標當(dāng)前所在處的詞。

vim查找替換小結(jié)

0,:g/null/d

找到null的行并且刪掉

1,簡單替換表達式

替換命令可以在全文中用一個單詞替換另一個單詞:

:%s/four/4/g

“%” 范圍前綴表示在所有行中執(zhí)行替換。最后的 “g” 標記表示替換行中的所有匹配點。如果僅僅對當(dāng)前行進行操作,那么只要去掉%即可

    如果你有一個象 “thirtyfour” 這樣的單詞,上面的命令會出錯。這種情況下,這個單詞會被替換成”thirty4″。要解決這個問題,用 “/<” 來指定匹配單詞開頭:

         :%s//

顯然,這樣在處理 “fourty” 的時候還是會出錯。用 “/>” 來解決這個問題:

         :%s///4/g

如果你在編碼,你可能只想替換注釋中的 “four”,而保留代碼中的。由于這很難指定,可以在替換命令中加一個 “c” 標記,這樣,Vim 會在每次替換前提示你:

         :%s///4/gc

2,刪除多余的空格

要刪除這些每行后面多余的空格,可以執(zhí)行如下命令:

         :%s//s/+$//

命令前面指明范圍是 “%”,所以這會作用于整個文件。”substitute” 命令的匹配模式是

“/s/+$”。這表示行末($)前的一個或者多個(/+)空格(/s)。替換命令的 “to” 部分是空的:”//”。這樣就會刪除那些匹配的空白字符。

3,匹配重復(fù)性模式

星號項 “*” 規(guī)定在它前面的項可以重復(fù)任意次。因此:

         /a*

匹配 “a”,”aa”,”aaa”,等等。但也匹配 “” (空字串),因為零次也包含在內(nèi)。星號 “*” 僅僅應(yīng)用于那個緊鄰在它前面的項。因此 “ab*” 匹配 “a”,”ab”,”abb”,”abbb”,等等。如要多次重復(fù)整個字符串,那么該字符串必須被組成一個項。組成一項的方法就是在它前面加 “/(”,后面加 “/)”。因此這個命令:

         //(ab/)*

匹配: “ab”,”abab”,”ababab”,等等。而且也匹配 “”。

要避免匹配空字串,使用 “/+”。這表示前面一項可以被匹配一次或多次。

         /ab/+

匹配 “ab”,”abb”,”abbb”,等等。它不匹配 后面沒有跟隨 “b” 的 “a”。

要匹配一個可選項,用 “/=”。 例如:

         /folders/=

匹配 “folder” 和 “folders”。

4,指定重復(fù)次數(shù)

要匹配某一項的特定次數(shù)重復(fù),使用 “/{n,m}” 這樣的形式。其中 “n” 和 “m” 都是數(shù)字。在它前面的那個項將被重復(fù) “n” 到 “m” 次 (|inclusive| 包含 “n” 和 “m”)。例如:

         /ab/{3,5}

匹配 “abbb”,”abbbb” 以及 “abbbbb”。

    當(dāng) “n” 省略時,被默認為零。當(dāng) “m” 省略時,被默認為無限大。當(dāng) “,m” 省略時,就表示重復(fù)正好 “n” 次。例如:

         模式            匹配次數(shù)

         /{,4}             0,1,2,3 或 4

         /{3,}             3,4,5,等等

         /{0,1}            0 或 1,同 /=

         /{0,}             0 或 更多,同 *

         /{1,}             1 或 更多,同 /+

         /{3}              3

5,多選一匹配

在一個查找模式中,”或” 運算符是 “/|”。例如:

         /foo/|bar

這個命令匹配了 “foo” 或 “bar”。更多的抉擇可以連在后面:

         /one/|two/|three

匹配 “one”,”two” 或 “three”。

    如要匹配其多次重復(fù),那么整個抉擇結(jié)構(gòu)須置于 “/(” 和 “/)” 之間:

         //(foo/|bar/)/+

這個命令匹配 “foo”,”foobar”,”foofoo”,”barfoobar”,等等。

    再舉個例子:

         /end/(if/|while/|for/)

這個命令匹配 “endif”,”endwhile” 和 “endfor”。

viemu插件VIM for Visual Studio安裝破解

在當(dāng)前用戶目錄"C:/Users/Administrator"下建  _viemurc 為 viemu配置文件

下載ViMenu

.破解

1.刪除目錄 C:/Documents and Settings/用戶名/Local Settings/Application Data/Identities/{17582A9E-740A-47F2-8256-D09F1378E7FA}

2.刪除注冊表項HKEY_CURRENT_USER/Software/Classes/CLSID/{D31F31E1-B08F-46FF-92C5-CA111A2053DF}


注:相關(guān)教程知識閱讀請移步到ASP.NET教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 91丨九色丨国产在线观看 | av性色全交蜜桃成熟时 | 在线成人免费网站 | 他也色在线视频 | 在线天堂中文在线资源网 | 草久视频在线观看 | 精品国产91久久久久久久 | 亚洲免费看片网站 | av不卡免费在线观看 | 在线日韩av电影 | 成人毛片网站 | 毛片免费一区二区三区 | 国产精品一区在线看 | 国产精品视频亚洲 | 国产精品视频自拍 | 精品一区二区久久久久久久网精 | 欧美成人三级视频 | 国产亚洲精品成人a | 性插视频| 好吊色欧美一区二区三区四区 | 欧美日本日韩 | 欧美人一级淫片a免费播放 久久久久久久久91 国产99久久久久久免费看 | 国产羞羞视频在线观看免费应用 | 在线成人免费av | 72pao成人国产永久免费视频 | 免费观看一区二区三区视频 | 日本在线视频免费 | 黄色av网站免费 | 国产精品一区二区三区在线播放 | 免费国产一级淫片 | 视频一区二区视频 | 精品久久久久久中文字幕 | 久久影院免费观看 | 黄色片在线播放 | 国产正在播放 | 久久国产精品久久久久久久久久 | 欧美黄色免费视频 | 国产精品久久久不卡 | 日本a在线观看 | 亚洲免费观看视频 | 欧美性精品videofree |