自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

好用到哭!8個技巧讓Vim菜鳥變專家

系統(tǒng) 開發(fā)工具
Vim只不過是一個文本編輯器,但如果你曾見過真正的高手是如何使用vim的,你就會知道,這個軟件出人意料地強(qiáng)大、高效、迅捷。對于高水平使用者而言,vim能夠幫助其更清晰、明確地表達(dá)操作指令。

Vim只不過是一個文本編輯器,但如果你曾見過真正的高手是如何使用vim的,你就會知道,這個軟件出人意料地強(qiáng)大、高效、迅捷。對于高水平使用者而言,vim能夠幫助其更清晰、明確地表達(dá)操作指令。一旦熟練掌握vim語言,使用者就能更加快速地和自己的電腦交流。

[[279556]]

必備條件

在開始閱讀本文之前,你應(yīng)該至少知道vim有哪些簡單的指令,例如基本動作、導(dǎo)入操作和查找信息。如果你還不了解這些知識,你可以打開軟件終端并運(yùn)行:

  1. sudo apt-get install vim 

接著,你就可以運(yùn)行以下指令來自學(xué)vim:

  1. vimtutor 

1. 宏指令

不得不重復(fù)進(jìn)行的某些文本編輯任務(wù)會讓人覺得很煩躁,做那些需要操作者重復(fù)幾十次的任務(wù)就更糟糕了。宏指令能夠有效地解除這些麻煩。你只需要敲擊一個記錄鍵,輸入需要改變的指令,然后在指令結(jié)束時停止記錄就可以了。之后,你就可以重復(fù)使用在這個記錄里的動作了,而這只需你按下一個鍵。

  • 按下‘q’鍵讓vim開始記錄,然后按任意鍵,來告訴vim你想把保存的記錄下次通過這個鍵來調(diào)出。本次案例中,這個鍵設(shè)置為‘a’,所以完整的指令就是‘qa’。
  • 執(zhí)行你的命令。
  • 按下‘q’來結(jié)束記錄。
  • 需要重復(fù)保存的系列動作時,輸入‘@a’即可。

2. 相對行號

沒人喜歡心算。即使你能心算得很快,算出23=23總要快于141-118=23。相對行號和絕對行號不同,它顯示的是你光標(biāo)所在行的相對數(shù)字。這個功能不僅便利了刪除行的操作,也使跳到指定位置的過程變得更為簡潔。你可以在.vimrc中加入以下指令來得到這個結(jié)果:

  1. set relativenumber 

舉例來講,你可以通過輸入下列vim指令來刪除其后的25行:

  1. 25dd 

[[279557]]

3. 寄存器(Registers)

寄存器是在復(fù)制文本后,臨時儲存要粘貼內(nèi)容的空間。每臺電腦都有很多寄存器。Vim會自動地使用一個寄存器來儲存它的文本,這些文本和電腦里其他臨時儲存的復(fù)制文本不一樣。向你的.vimrc中加入以下指令:

  1. set clipboard=unnamed 
  2. set clipboard=unnamedplus 

加入這項指令后,在vim中復(fù)制粘貼文本就從“CTRL+V”, 和“CTRL+C”這一過程變?yōu)楹唵蔚剌斎?lsquo;p’。

如果你想在不重寫你的寄存器的情況下刪除文本,你可以在指令前加上“_符號:“_dd 來刪除一行。

4. 重映射Escape操作

Escape鍵和主鍵(home row)離得很遠(yuǎn)。因此,它并不是一個離開當(dāng)前指令很好的選擇。你可以在你的.vimrc中加入:

  1. cnoremap kj <C-C> 
  2. cnoremap jk <C-C> 

這樣,你就可以通過鍵入’jk’或者‘kj’來離開一個指令,同時,你的手一直呆在主鍵區(qū)。

5. 動詞+修飾詞+賓語

Vim有一套自己特殊的語法,這套語法遵循‘動詞+修飾詞+賓語’結(jié)構(gòu)。

動詞舉例:

  • ‘d’刪除(delete)
  • ‘c’改變(change)

修飾詞舉例:

  • ‘t’直到(till)
  • ‘f’找到(find)
  • ‘i’里(inside)

賓語舉例:

  • ‘w’詞(word)
  • ‘(’插入語(parenthesis)
  • ‘t’標(biāo)簽(tag)
  • ‘s’句子(sentence)
  • ‘“’引用

舉個例子,‘diw’就是刪除光標(biāo)所在的詞,無論光標(biāo)是在詞首還是詞尾。‘dt)’刪除光標(biāo)所在位置和下括號之間的文本。‘cfp’能刪除光標(biāo)所在位置到該段落結(jié)束前的所有文本,之后自動載入插入模式。和‘.’(重復(fù)前序指令)一起使用,這套語法就非常強(qiáng)大。

6. 處理空白格(White space fixing)

軟件工程中最讓人受不了的情況,就是遇到tabs而不是空和空白格(white space)在一行的結(jié)尾。為了解決這個問題,你可以向.vimrc加入:

set list

這個指令會在每行結(jié)尾顯示一個$符號,并且用^I代替tabs。你從而能更容易地識別出tabs和行尾。除此之外,下面的例子中,使用了空代替所有的tabs,這也讓空白格更加便于處理:

https://vim.fandom.com/wiki/Example_vimrc.

[[279558]]

7. 快速查找(navigate)

你習(xí)得的有關(guān)vim的第一個操作,就是如何使用hjkl鍵來查找信息。但是,這其實是很慢的查找方式。這里列出了能幫助你快速查找的指令:

  • 敲擊‘gg’來移動到文檔的頂部,‘G’來移動到最底部。
  • 敲擊CTRL+F來快速向前移動,CTRL+B來快速向后移動。
  • 敲擊‘zz’來重新定位頁的中心,這也你的光標(biāo)就成為新的中心。
  • 遇到上括號像‘{’或者‘(’,你可以敲擊‘%’來移動到它們所匹配的下括號。
  • ‘/’可以開始查找你想要的詞。

8. 日期(date)

在許多場景下,你需要給文件加上日期。這一操作緩慢且乏味。這時,你可以向你的.vimrc中加入:

  1. nmap <F3> i<C-R>=strftime("%Y-%m-%d %a %I:%M %p")<CR><Esc> 
  2. imap <F3> <C-R>=strftime("%Y-%m-%d %a %I:%M %p")<CR> 

從而可以只通過鍵入F3來給文檔加日期和時間。 

 

責(zé)任編輯:趙寧寧 來源: 讀芯術(shù)
相關(guān)推薦

2019-08-22 17:43:40

PythonHTML可視化技術(shù)

2021-07-19 15:47:45

Python編程語言代碼

2020-10-14 18:53:14

Python編程語言

2022-03-29 18:18:07

Kubernetes框架

2021-11-15 10:02:16

Python命令技巧

2023-04-26 00:34:36

Python技巧程序員

2019-07-15 15:59:32

高維數(shù)據(jù)降維數(shù)據(jù)分析

2021-10-06 15:58:26

Python工具代碼

2009-08-27 11:43:21

VMware必備資源

2019-11-24 23:12:30

Vim插件編輯器編程語言

2021-12-11 23:13:16

Python語言技巧

2022-01-13 11:50:57

Python技巧代碼

2009-03-18 09:28:14

Linux操作系統(tǒng)技巧

2022-06-21 14:30:16

Vim自定義Linux

2020-08-23 09:30:32

jupyter lab插件開發(fā)

2022-11-04 15:56:41

2019-02-25 10:35:04

Vim插件編程語言

2020-12-14 08:30:02

JavaScript開發(fā)代碼

2023-08-18 15:12:00

JavaScript開發(fā)

2024-07-19 10:31:15

點贊
收藏

51CTO技術(shù)棧公眾號