国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
*20.1* 命令行編輯

USR_20

*usr_20.txt*    For Vim version 7.3.    最近更新: 2005年3月VIM 用戶手冊 - Bram Moolenaar 著譯者:  Chimin Yen http://vimcdoc.sf.net快速鍵入命令行命令Vim 具備若干基本功能,以簡化鍵入命令的工作。你可以縮寫,編輯和重復(fù)冒號命令,而補全功能幾乎可以用于所有的場合。|20.1|  命令行編輯|20.2|  命令行縮寫|20.3|  命令行補全|20.4|  命令行歷史|20.5|  命令行窗口下一章: |usr_21.txt|  離開和回來前一章: |usr_12.txt|  小竅門目錄: |usr_toc.txt|

*20.1* 命令行編輯

當(dāng)你用冒號 (:) 命令或用 / 或 ? 搜索一個字符串時,Vim 就會把光標(biāo)置于屏幕下方。你在那兒鍵入命令或者搜索模式。此處即稱為命令行,也是用來輸入搜索命令的地方。最為顯而易見的編輯命令的方法是按 <BS> 退格鍵。按下此鍵即刪去光標(biāo)前面的字符。如果要刪去另一個更早鍵入的字符,得先用光標(biāo)方向鍵把光標(biāo)移到那兒。例如,你鍵入了: :s/col/pig/在你按下回車鍵之前,你注意到 "col" 應(yīng)為 "cow"。為了糾正這個錯誤,你按五次<Left> 鍵?,F(xiàn)在,光標(biāo)正好在 "col" 后面。按 <BS> 鍵,然后鍵入正確的字符 "w": :s/cow/pig/現(xiàn)在你可以立刻按 <Enter> 鍵了。在執(zhí)行這個命令之前,你無須先把光標(biāo)移到命令行的末尾。命令行上移動光標(biāo)時最常用的鍵:<Left> 左移一個字符<Right> 右移一個字符<S-Left><C-Left> 左移一個單詞<S-Right><C-Right> 右移一個單詞CTRL-B<Home> 命令行行首CTRL-E<End> 命令行行尾備注:<S-Left> (光標(biāo)左移鍵和 Shift 鍵同時按下) 和 <C-Left> (光標(biāo)左移鍵和Control 鍵同時按下) 并非在所有鍵盤上都有效。其它 Shift 和 Control 組合鍵也是這種情況。你也可以用鼠標(biāo)來移動光標(biāo)。刪 除如前所述,<BS> 鍵刪除光標(biāo)前一個字符。刪除光標(biāo)前整個單詞,則用 CTRL-W。 /the fine pig CTRL-W /the fine CTRL-U 刪除命令行上全部文字,從而讓你從頭開始。替 換插入鍵 <Insert> 讓你在插入字符和替換字符兩種方式之間切換。先鍵入如下文字: /the fine pig 再按兩次 <S-Left> (或 <S-Left> 無效時按八次 <Left>),把光標(biāo)移到 "fine" 起始處?,F(xiàn)在,按插入鍵 <Insert>,切換到替換方式,并鍵入 "great": /the greatpig 喲,空格沒了?,F(xiàn)在,別用 <BS> 鍵,因為那會刪除 "t" (這跟插入方式不同)。此時應(yīng)該按插入鍵 <Insert>,從替換方式切換到插入方式,并鍵入空格: /the great pig 取 消你本想執(zhí)行一個 : 或 / 命令,但卻改變了主意。要清除命令行上你已經(jīng)鍵入的文字卻不執(zhí)行該命令,按 CTRL-C<Esc>。備注:<Esc> 是普遍采用的 "退出" 鍵。不幸的是,在過去美好的 Vi 版本里,在命令行上按 <Esc> 卻是執(zhí)行命令!由于那會被認(rèn)為是程序 bug,Vim 采用 <Esc> 來取消命令。但其 'cpoptions' 選項可以使 Vim 跟 Vi 兼容。而且,使用映射時(那可能是為 Vi 而寫的),<Esc> 鍵也總和 Vi 兼容。由此看來,采用 CTRL-C倒不失為一種永遠(yuǎn)奏效的方法。如果你在命令行開始處,那么按 <BS> 將取消整個命令。這就像刪除命令行賴以開始的":" 或 "/"。

*20.2* 命令行縮寫

有些 ":" 命令確實很長。我們已經(jīng)提及替代命令 ":substitute" 可以被縮寫成 ":s"。這是一個基本機理,即所有 ":" 冒號命令都可以被縮寫。一個命令可以被縮寫成多短呢?英文有 26 個字母,而 Vim 卻有多得多的命令。例如,":set" 也以 ":s" 開頭,但 ":s" 不是啟動 ":set" 命令的。":set" 可以被縮寫成":se"。把一個命令縮寫得更短即可能適用于兩個命令,此時,該縮寫仍然只能代表其中的一個。而選擇哪個卻沒有任何邏輯,你不得不一個一個地記。最短的有效縮寫形式可以在幫助文件里找到。例如: :s[ubstitute]它的意思是替代命令 ":substitute" 的最短縮寫形式是 ":s"。隨后的字符可以任選。因此 ":su" 和 ":sub" 都有效。在用戶手冊里我們有時用命令的全稱,有時簡稱意義明白就用簡稱。例如,":function"可以縮寫成 ":fu"。但既然大多數(shù)讀者不明其所指,所以我們采用簡稱 ":fun"。(Vim 沒有命令 ":funny",否則簡稱 ":fun" 也會令人迷惑。)在 Vim 腳本里你最好用命令全稱。當(dāng)你日后改編腳本時,全稱讀起來比較容易。除非那是一些常用命令如 ":w" (":write") 和 ":r" (":read")。一個特別令人迷惑的縮寫是 ":end",它可以指 ":endif",":endwhile" 或":endfunction"。所以,遇到這類命令時,最好永遠(yuǎn)采用全稱。選 項 簡 稱在用戶手冊里,我們采用選項的全稱。許多選項還有簡稱。跟 ":" 冒號命令不一樣,有效的選項簡稱只有一個。例如,'autoindent' 的簡稱是 'ai'。因而下面兩個命令完成同樣的動作: :set autoindent :set ai你可以從這兒找到完整的選項全稱和簡稱的列表: |option-list|。

*20.3* 命令行補全

命令行補全是那些僅僅因為它就值得從 Vi 轉(zhuǎn)到 Vim 的功能之一。一旦你用上了這個功能,你就離不開它了。假定你有個文件目錄,其中存放了這些文件:info.txtintro.txtbodyofthepaper.txt你用這個命令來編輯最后那個文件: :edit bodyofthepaper.txt這很容易打錯。一個快得多的方法是: :edit b<Tab>其結(jié)果是同樣的命令。這是怎么回事?制表鍵 <Tab> 會補全光標(biāo)前的詞。在本例中就是"b"。Vim 在目錄中尋找并找到了唯一的一個以 "b" 開頭的文件。那個文件想必是你尋找的,因此 Vim 為你補全了文件名?,F(xiàn)在鍵入: :edit i<Tab>Vim 會鳴起響鈴,并給你這個結(jié)果: :edit info.txt響鈴的意思是 Vim 找到了不止一個匹配。然后它使用了找到的第一個匹配 (按字母順序)。如果你再按一次 <Tab>,你得到: :edit intro.txt這樣,如果第一次 <Tab> 沒給你你要找的文件,你就再按一次。如果還有匹配的文件,你將會看到它們每一個,每按一次,就看到一個。如果你在最后一個匹配文件名上按 <Tab>,你將會再次看到你起初鍵入的那個命令: :edit i然后一切再從頭開始。這樣,Vim 就在匹配列表內(nèi)周而復(fù)始地循環(huán)。使用 CTRL-P 依相反方向循環(huán)匹配列表:<------------------- <Tab> -------------------------+|<Tab> --> <Tab> -->:edit i :edit info.txt :edit intro.txt<-- CTRL-P <-- CTRL-P|+---------------------- CTRL-P ------------------------>上 下 文當(dāng)你鍵入 ":set i" 而不是 ":edit i",并按 <Tab>,你得到的是: :set icon嗨,為什么你沒得到 ":set info.txt"?這是由于 Vim 的補全功能是上下文相關(guān)的。Vim 尋找的那類詞取決于關(guān)鍵詞前面的命令。Vim 知道你不可能在命令 ":set" 后面用一個文件名,但卻可以用一個選項名。同樣,如果你重復(fù)鍵入 <Tab>,Vim 就會在所有匹配間周而復(fù)始地循環(huán)。你最好開始時多鍵入幾個字符,否則匹配的選項會很多: :set isk<Tab>結(jié)果是: :set iskeyword現(xiàn)在鍵入 "=" 并按 <Tab>: :set iskeyword=@,48-57,_,192-255在此,Vim 插入的是該選項原來的設(shè)定值?,F(xiàn)在你可以編輯它了。按 <Tab> 鍵補全的乃是 Vim 在命令行那個位置上所期待的。你不妨試試,看它究竟是如何補全的。在某些情形下你會得不到你想要的結(jié)果。那或者因為 Vim 不知道你要什么,或者因為 Vim 還沒有為該情況實現(xiàn)補全功能。在那個場合,你的 <Tab> 就會被當(dāng)作字符插入文本 (顯示為 ^I)。匹 配 列 表當(dāng)匹配有很多時,你可能希望看到一個總覽。要看匹配總覽,請按 CTRL-D。例如,你鍵入了以下命令以后按 CTRL-D: :set is結(jié)果是: :set is incsearch isfname isident iskeyword isprint :set isVim 列出了匹配,然后又伴隨著你早先鍵入的命令回到命令行。你現(xiàn)在可以檢驗匹配列表,找你想要的選項了。如果它不在列表中,你可以用 <BS> 修正那個詞。如果匹配太多了,就在按 <Tab> 鍵補全命令之前再多打幾個字符。如果你仔細(xì)觀察了,你就會注意到選項 "incsearch" 不是以 "is" 開頭。在這個場合,"is" 指的就是 "incsearch" 的簡稱。(許多選項都有其簡稱和全稱。) Vim 知道你可能要把選項的簡稱擴展成全稱,夠聰明的吧。更 多 選 項命令 CTRL-L 把詞補全為最長無歧義字符串。如果你鍵入 ":edit i" 而目錄內(nèi)存放著文件 "info.txt" 和 "info_backup.txt",那么,你將得到 ":edit info"。選項 'wildmode' 可用來改變補全時采用的方式。選項 'wildmenu' 可用來取得菜單式的匹配列表。利用選項 'suffixes' 來指定一些不太重要的文件,并讓它們出現(xiàn)在文件列表末尾。選項 'wildignore' 指定一些根本用不著表列的文件。欲知更多此類選項詳情,參見: |cmdline-completion|

*20.4* 命令行歷史

我們曾經(jīng)在第三章簡單提到過歷史記錄功能。其基本用法就是你可以用 <Up> 鍵調(diào)用較早的命令行。而 <Down> 鍵則讓你回到較晚的命令行。歷史記錄功能實際上共有四種。我們在這里要提到的是用于 ":" 冒號命令以及用于 "/"和 "?" 搜索命令的歷史記錄功能。"/" 和 "?" 命令共享同一歷史記錄。因為兩者同為搜索命令。另外兩種歷史記錄功能用于函數(shù) input() 的表達(dá)式和輸入行。|<Up>。更快捷的方法是: :se<Up>你現(xiàn)在就回到以前執(zhí)行過的,以 "se" 開頭的命令。沒準(zhǔn)兒那就是你想找的 ":set" 命令。至少你不至于按很多 <Up> 鍵 (除非你執(zhí)行的都是 ":set" 命令)。<Up> 鍵用你在命令行上已經(jīng)鍵入的文本去跟歷史記錄里的命令作比較。只有匹配的命令才被顯示出來。如果你沒找到你要找的命令,用 <Down> 回到你鍵入的文本作修改。或者用 CTRL-U從頭來過。顯示歷史記錄里所有的命令: :history那是 ":" 冒號命令的歷史記錄。搜索歷史記錄用這個命令來顯示: :history /如果你不愿用光標(biāo)方向鍵,CTRL-P 作用就跟 <Up> 一樣。而 CTRL-N<Down> 一樣。CTRL-P 意指前一個 (previous),CTRL-N 意指下一個 (next)。

*20.5* 命令行窗口

在命令行上鍵入文本跟插入模式下鍵入文本有所不同。許多修改文本的命令都不能用。對大多數(shù)命令而言,那問題不大,但有時你必須鍵入一個復(fù)雜的命令。那樣的場合用命令行窗口就非常有用了。用這個命令來打開命令行窗口: q:Vim 現(xiàn)在就在屏幕底部打開了一個 (很小的) 窗口。它存放著命令行歷史記錄,以及一行空行在末尾:+-------------------------------------+|other window ||~ ||file.txt=============================||:e c ||:e config.h.in ||:set path=.,/usr/include,, ||:set iskeyword=@,48-57,_,192-255 ||:set is ||:q ||: ||command-line=========================|| |+-------------------------------------+現(xiàn)在你處于普通模式下。你可以用 "hjkl" 鍵來移動光標(biāo)。例如,用 "5k" 上移至":e config.h.in" 那一行。鍵入 "$h" 移到 "in" 的 "i" 字符上,并鍵入 "cwout"?,F(xiàn)在你把這一行改成了這樣: :e config.h.out 現(xiàn)在按 <Enter> 執(zhí)行這個命令。命令行窗口就關(guān)上了。按 <Enter> 鍵執(zhí)行光標(biāo)下的那個命令。這跟 Vim 處于插入模式抑或普通模式無關(guān)。在命令行窗口內(nèi)所作的修改不會被保存。它們不會導(dǎo)致歷史記錄被修改。唯一例外就是你執(zhí)行的命令將被加到歷史記錄的末尾,跟所有執(zhí)行過的命令一樣。在你要總覽歷史記錄時,命令行窗口十分有用,查找類似命令,修改一點點,然后執(zhí)行它。一個搜索命令可用來尋找某些東西。在前面那個例子中,搜索命令 "?config" 是可以用來尋找先前那個含有 "config" 的命令的。這有點兒特別,因為你是在命令行窗口內(nèi)用命令行作搜索。在鍵入搜索命令時,你打不開另一個命令行窗口,命令行窗口是唯一的。

下一章: |usr_21.txt| 離開和返回版權(quán): 參見 |manual-copyright| vim:tw=78:ts=8:ft=help:norl:

Generated by vim2html on Wed Sep 8 00:16:19 UTC 2010

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
普通人的編輯利器——Vim
Linux命令行下編輯常用的快捷鍵
[推薦]RedHat Linux 9 常用鍵盤快捷鍵 | 銳博
20個Linux命令小貼士與技巧,提高生產(chǎn)力
使用終端命令行的一些技巧
Windows 7 下的快捷鍵大全
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服