VIM寄存器

VIM有兩個地方可以保存臨時數(shù)據(jù)

  1. OS級別-剪切板
  2. VIM級別-寄存器

VIM寄存器概述

寄存器是VIM用于保存臨時數(shù)據(jù)的地方,不同于傳統(tǒng)的編輯器(于系統(tǒng)共享一個寄存器昌简,也成為剪切板)吟逝,VIM具有多個寄存器帽蝶,分別保存不同的臨時數(shù)據(jù),活用多個寄存器可以顯著提高數(shù)據(jù)的安全和可操作性块攒。
同時励稳,為了與系統(tǒng)剪切板互通,VIM有一個專用的寄存器囱井,與系統(tǒng)剪切板內(nèi)容一致驹尼,既保證了VIM本身的統(tǒng)一性,也實(shí)現(xiàn)了與操作系統(tǒng)的對接庞呕。

查看寄存器值

  • 查看所有寄存器值::reg
  • 查看指定寄存器值::reg "{register_name}

調(diào)取寄存器值

  • NORMAL Mode:"{register_name}
  • COMMAND MODE:<C-r>+"寄存器名稱 (輸入<C-r>后VIM會自動打出"寄存器引用符號新翎。
  • INSERT MODE:<C-r>+寄存器名稱(無需輸入寄存器引用符號")

VIM寄存器分類

1. 無名寄存器(默認(rèn)寄存器)

引用方式:""
該寄存器是默認(rèn)的寄存器,所有的復(fù)制和修改操作(x、s料祠、d骆捧、c澎羞、y)都會將該數(shù)據(jù)復(fù)制到無名寄存器髓绽。

2. 字母寄存器

引用方式:"a - "z 或"A - "Z
{register_name}只能是一位的26個英文字母,從a-z妆绞。
大寫字母A-Z寄存器內(nèi)容將會合并到對應(yīng)小寫字母內(nèi)容后邊顺呕。

3. 數(shù)字寄存器

引用方式:"0 (數(shù)字0)- "9

3.1 復(fù)制專用寄存器0**

引用方式:"0 (數(shù)字0)
僅當(dāng)使用復(fù)制操作(y)時,該數(shù)據(jù)將會同時被復(fù)制到無名寄存器和復(fù)制專用寄存器括饶。

3.2 逐級臨時緩存寄存器1-9**

引用方式:"1 - "9 (數(shù)字1-9)
所有不帶范圍(‘(’株茶,‘)’,‘{’图焰,‘}’)启盛、操作涉及1行以上的刪除修改操作(x、s技羔、d僵闯、c)的數(shù)據(jù)都會復(fù)制到逐級臨時緩存寄存器,并在新的數(shù)據(jù)加入時藤滥,逐級先后推移鳖粟。1的數(shù)據(jù)復(fù)制到2,2的復(fù)制到3拙绊,最后的9寄存器內(nèi)容將會被刪除向图。

1行以內(nèi)的數(shù)據(jù)刪除修改操作的數(shù)據(jù)不會復(fù)制到逐級臨時緩存寄存器1-9,而是復(fù)制到另一個Small Delete Register: "-

4. 黑洞寄存器

引用方式:"_
幾乎所有的操作涉及的數(shù)據(jù)都會被復(fù)制到寄存器标沪,如果想讓操作的數(shù)據(jù)不經(jīng)過寄存器榄攀,可以指定黑洞寄存器,數(shù)據(jù)到該寄存器就會消失掉金句,不能顯示檩赢,也不存在。

5. 系統(tǒng)剪切板

引用方式:"+"*
于VIM外部的GUI交互數(shù)據(jù)時趴梢,需要使用專用的系統(tǒng)剪切板漠畜。
在Unix環(huán)境下,"+寄存器需要+xterm-clipboard feature的VIM軟件才能使用坞靶,具有這個feature的VIM可以安裝vim-gtk(包含gvim和vim)憔狞,使用gvim可以正常調(diào)用"+寄存器。

"+和"*的區(qū)別:

  • Under Windows, the * and + registers are equivalent.
  • For X11 systems, though, they differ. For X11 systems, * is the selection, and + is the cut buffer (like clipboard).
    • Text selected, or otherwise highlighted in one X11 app is available in the selection buffer.
    • Text explicitly copied or cut is available in the cut buffer.

Ref:
1. Accessing the system clipboard
2. Getting Vim with +clipboard support

5.1 剪切板與自動縮進(jìn)indent

如果開啟了set autoindent彰阴,在粘貼具有格式縮進(jìn)的文本時(如python程序)瘾敢,粘貼的結(jié)果將會是縮進(jìn)混亂的,因?yàn)閟et autoindent的影響。
解決這個問題有兩個方法:

  1. 使用set paste模式
    開啟paste模式后簇抵,autoindent等縮進(jìn)功能將會被屏蔽庆杜,粘貼格式就會不受影響。
    每次手工開啟關(guān)閉paste模式將會比較麻煩碟摆,可以在_vimrc中為其設(shè)置一個快捷鍵晃财,每次需要時按一下即可切換:set pastetoggle=<f12>
  2. 使用普通模式的"+p命令
  3. 插入模式輸入<C-r><C-p>"+

6. 表達(dá)式寄存器

引用方式:"=
所有寄存器里最特殊的一個,用于計算表達(dá)式典蜕。
輸入完該寄存器應(yīng)用后断盛,會在命令行里提示“=”,按需輸入表達(dá)式愉舔,結(jié)果將會顯示到光標(biāo)處钢猛。

7. 其他寄存器

"% 當(dāng)前文件名,包含文件路徑轩缤。
"/ 上次查找的內(nèi)容命迈。
". 上次插入的內(nèi)容。


參考:

  1. 《Vim實(shí)用技巧》
  2. vim help :help registers
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末火的,一起剝皮案震驚了整個濱河市壶愤,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌卫玖,老刑警劉巖公你,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異假瞬,居然都是意外死亡陕靠,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進(jìn)店門脱茉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來剪芥,“玉大人,你說我怎么就攤上這事琴许∷胺荆” “怎么了?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵榜田,是天一觀的道長益兄。 經(jīng)常有香客問我,道長箭券,這世上最難降的妖魔是什么净捅? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮辩块,結(jié)果婚禮上蛔六,老公的妹妹穿的比我還像新娘荆永。我一直安慰自己,他們只是感情好国章,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布具钥。 她就那樣靜靜地躺著,像睡著了一般液兽。 火紅的嫁衣襯著肌膚如雪骂删。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天抵碟,我揣著相機(jī)與錄音桃漾,去河邊找鬼坏匪。 笑死拟逮,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的适滓。 我是一名探鬼主播敦迄,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼凭迹!你這毒婦竟也來了罚屋?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤嗅绸,失蹤者是張志新(化名)和其女友劉穎脾猛,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鱼鸠,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡猛拴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了蚀狰。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片愉昆。...
    茶點(diǎn)故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖麻蹋,靈堂內(nèi)的尸體忽然破棺而出跛溉,到底是詐尸還是另有隱情,我是刑警寧澤扮授,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布芳室,位于F島的核電站,受9級特大地震影響刹勃,放射性物質(zhì)發(fā)生泄漏堪侯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一深夯、第九天 我趴在偏房一處隱蔽的房頂上張望抖格。 院中可真熱鬧诺苹,春花似錦、人聲如沸雹拄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽滓玖。三九已至坪哄,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間势篡,已是汗流浹背翩肌。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留禁悠,地道東北人念祭。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像碍侦,于是被迫代替她去往敵國和親粱坤。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容