Vim漫游鍵,為什么不設(shè)定左手?介紹一種5x倍速漫游方式

原創(chuàng):小姐姐味道(微信公眾號(hào)ID:xjjdog),歡迎分享,轉(zhuǎn)載請(qǐng)保留出處。

先給大家講個(gè)故事。

老家的一個(gè)小孩,習(xí)慣用左手吃飯,就連擦屁股,都是用左手拿紙。結(jié)果,這個(gè)習(xí)慣,被他粗心的奶奶發(fā)現(xiàn)了,不知出于什么原因,暴躁如虎。

接下來,這位奶奶每天在他身邊念叨、念叨…,甚至上了刑。前幾天回去一瞧,這習(xí)慣竟然硬生生給改變了。

老遠(yuǎn)就能看見,娃娃右手甩的小陀螺,滴溜滴溜直轉(zhuǎn)。我側(cè)了側(cè)身子和孩子保持一個(gè)方向,彎腰比劃了下手勢(shì),確認(rèn)是右手無疑。

為什么要強(qiáng)迫孩子用右手?因?yàn)樗约河玫木褪怯沂郑A(chǔ)設(shè)施也都是右傾,她就覺得左手不倫不類。

Vim的問題

vim對(duì)于程序員來說,無疑是最流行的編輯器。不管你是主動(dòng)還是被動(dòng),都會(huì)與它有些接觸。主流的Idea、Atom、VSCode等等等等,都會(huì)通過插件提供vim的按鍵綁定。就連chrome,都提供Vimium這樣的插件,方便vim黨進(jìn)行漫游操作。

最基礎(chǔ)的操作,就是對(duì)光標(biāo)的控制。

`h` 左
`l` 右
`j` 下
`k` 上

比較令人納悶的是,這四個(gè)字母,并沒有什么縮寫的含義,他就是相連的幾個(gè)鍵而已。

由于我用這幾個(gè)鍵是那么的多,以至于鍵帽光滑、明亮照人。

可以說自己是一個(gè)徹頭徹尾的vim黨。入門推薦看一篇以前寫的文章。

Linux生產(chǎn)環(huán)境上,最常用的一套“vim“技巧

?我整理了一份《最有用系列,百頁精華》pdf,想要可以加我微信:xjjdog0。

為什么vim方向鍵要受人嘲笑

為了不再使用方向鍵控制光標(biāo)的移動(dòng),強(qiáng)制使用H、J、K、L,可以在vim的配置文件中,把這四個(gè)鍵給禁了。

noremap <Up> <NOP>
noremap <Down> <NOP>
noremap <Left> <NOP>
noremap <Right> <NOP>

這樣,你在按下方向鍵的時(shí)候,將什么反應(yīng)都沒有,強(qiáng)制你的手放在hjkl上。

不要和信仰掛鉤,也不要有什么哲學(xué)方面的討論。這就是一個(gè)習(xí)慣而已。

為了說明這個(gè)問題,我特意畫了幾根線,把hjkl四個(gè)鍵給廢了,改成了對(duì)應(yīng)的sdfg。

`s` 左
`g` 右
`d` 下
`f` 上

要是按照這個(gè)模式來,照樣玩得轉(zhuǎn),對(duì)于入門者來說不會(huì)有什么差別。不過一些觀念讓你深入為主覺得別扭罷了。我可以左手控制方向,右手控制鼠標(biāo),在理論上碾壓你一番。不要和我談離著i(插入模式)近的緣故,因?yàn)槲铱梢园?code>w改成相應(yīng)的功能。

這意味著成套的經(jīng)驗(yàn)轉(zhuǎn)移和定制化,所以xjjdog不會(huì)這么干。

那么,為什么使用方向鍵控制vim的移動(dòng)方向,就要遭受嘲笑呢?難道是因?yàn)榉较蜴I長(zhǎng)得小么?應(yīng)該是這樣。因?yàn)楝F(xiàn)在很多鍵盤的方向鍵都沒了,你換臺(tái)機(jī)器就抓瞎。

一種更快的瀏覽方式

以下的內(nèi)容,來自13年的一個(gè)探討,并在Hacknews上有相應(yīng)的討論。下面將變換成第一人稱口吻,進(jìn)行說明。

參考內(nèi)容:

Habit breaking, habit making
?
http://1t.click/a8r5?
Vim users: stop using hjkl (vimcasts.org)
?http://1t.click/a8r8

光標(biāo)一個(gè)一個(gè)的移動(dòng),慢如蝸牛。有沒有比較快的速度呢?也是有的。

5倍速的左右移動(dòng)

hl是用來控制光標(biāo)的左右移動(dòng)的,每次可以移動(dòng)一個(gè)距離單位。對(duì)于左右移動(dòng)來說,有更快的方式。

與此對(duì)應(yīng)的是bw;e、ge等。如果平均每個(gè)單詞的長(zhǎng)度是5,則移動(dòng)就是5倍速度。

單行字符搜索

我們平常用的,可能搜索模式多一些。就是在普通模式下輸入/進(jìn)行查找的那種。而對(duì)于某一行來說,通過f、Ft、T、,、;等按鍵,可以快速的,瞬時(shí)的定位到相應(yīng)的位置。

`f` 查找字符 ; f {char}會(huì)定位到第一個(gè){char}出現(xiàn)的光標(biāo)位置
`F` 查找字符;與f類似,不過是向后查找
`;` 重復(fù)上次搜索
`, `如果重復(fù)上次搜索按多了,則可以通過`,`回退

這些操作,相對(duì)來說比較冷門。但對(duì)于一個(gè)已經(jīng)入門了vim的人來說,掌握它會(huì)如虎添翼。為了強(qiáng)制訓(xùn)練這些命令,可以先禁掉一些按鍵,進(jìn)入困難模式。

欲練此功,必先自宮??纯唇氖鞘裁矗?/p>

noremap h <NOP>
noremap j <NOP>
noremap k <NOP>
noremap l <NOP>

在某個(gè)悠閑的讓人心醉的下午,就可以沏上一杯小茶,開啟訓(xùn)練。

你可以通過強(qiáng)制使用上面所提到的一些增加漫游速度的按鍵,讓自己的肌肉強(qiáng)制接受這種更加快速的設(shè)定。這對(duì)于追求更加迅捷的效率的你來說,萬分珍貴。

End

本篇文章的主題,其實(shí)很明了。除了談到一種可能的讓你的vim飛的更快的方式,主要說明了一個(gè)習(xí)慣問題。

習(xí)慣問題就是習(xí)慣問題,雖然也能找到一些信仰方面的解釋,或者一些神乎其神的吹捧,不過這都是自嗨。什么是好的習(xí)慣?不過是群體進(jìn)化中對(duì)某件事情的大多數(shù)看法,并沒有對(duì)錯(cuò)。

但總有些偏了的。習(xí)慣問題除了與大眾接軌,看起來不那么不倫不類,更重要的,是一種主動(dòng)糾正和進(jìn)化。雖然痛苦,卻受益無窮。

方塊字并不是一定要橫著寫的,但現(xiàn)在你卻是在從左到右讀著一行行字。

就像是,當(dāng)所有人都用左手擦屁股,我一定不會(huì)用右手。

作者簡(jiǎn)介:小姐姐味道 ?(xjjdog),一個(gè)不允許程序員走彎路的公眾號(hào)。聚焦基礎(chǔ)架構(gòu)和Linux。十年架構(gòu),日百億流量,與你探討高并發(fā)世界,給你不一樣的味道。我的個(gè)人微信xjjdog0,歡迎添加好友,進(jìn)一步交流。

最常用系列↓

1、最常用的一套“Vim“技巧


2、

最常用的一套“Sed“技巧


3、

最常用的一套“AWK“技巧


玩轉(zhuǎn)Linux

1、Java堆外內(nèi)存排查小結(jié)

??據(jù)說很多人拿來洗稿
2

、"Sed" 高級(jí)功能:我這小腦瓜都快繞暈了


3、

將java進(jìn)程轉(zhuǎn)移到“解剖臺(tái)”之前,法醫(yī)都干了什么?


3、

LWP進(jìn)程資源耗盡,Resource temporarily unavailable


4

、命令行版星球大戰(zhàn) # 挖墳會(huì)不會(huì)被打?


5

、在終端畫畫、炒股、玩游戲


6、

這是一張top命令的動(dòng)動(dòng)圖


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Linux vi/vim 介紹 【轉(zhuǎn)載】http://www.runoob.com/linux/linux-vim...
    KurtChow閱讀 707評(píng)論 0 0
  • 一. Vim是什么 都說程序員只用兩種編輯器,一種是編輯器之神Vim,一種是神的編輯器Emacs,可現(xiàn)實(shí)生活中,我...
    程序員在深圳閱讀 7,855評(píng)論 9 58
  • 一、Python簡(jiǎn)介和環(huán)境搭建以及pip的安裝 4課時(shí)實(shí)驗(yàn)課主要內(nèi)容 【Python簡(jiǎn)介】: Python 是一個(gè)...
    _小老虎_閱讀 6,353評(píng)論 0 10
  • vim一直是程序員之間比較有爭(zhēng)議的一個(gè)話題。有人認(rèn)為她是編輯器之神,有人則認(rèn)為她古老過時(shí),遠(yuǎn)遠(yuǎn)不如IDE,或是以當(dāng)...
    擦柱而出閱讀 1,689評(píng)論 0 41
  • 在這里我先不會(huì)去寫什么自己的感觸,因?yàn)槲抑皇且粋€(gè)新手 我只會(huì)先根據(jù) Node.js 的文檔對(duì)整體進(jìn)行一個(gè)概括性的總...
    阿瑟李閱讀 396評(píng)論 1 1

友情鏈接更多精彩內(nèi)容