欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vim如何使用相對(duì)行號(hào)實(shí)現(xiàn)一切操作詳解

 更新時(shí)間:2017年11月16日 11:02:22   作者:laixintao  
在使用用Vim時(shí)時(shí)常會(huì)遇到像復(fù)制多行或者想快速向下/向上移動(dòng)多行時(shí)而不知道行數(shù)的情況, 今天發(fā)現(xiàn)一個(gè)Vim對(duì)此有幫助的特性: 相對(duì)行號(hào),下面這篇文章主要給大家介紹了關(guān)于Vim如何使用相對(duì)行號(hào)實(shí)現(xiàn)一切操作的相關(guān)資料,需要的朋友可以參考下。

前言

大家都知道,我們使用Vim的一點(diǎn)好處就是,可定制性非常高,如果遇到任何讓自己感到不適的痛點(diǎn),都可以通過配置甚至開發(fā)一款插件來解決。開始使用Vim一段時(shí)間之后,我發(fā)現(xiàn)一個(gè)非?!胺慈祟悺钡牡胤剑篤im的很多命令都是需要查行數(shù)的。比如“刪除一個(gè)函數(shù)體”,你就要數(shù)數(shù)這個(gè)函數(shù)占了幾行(比如5行),然后按5dd。如果是使用鼠標(biāo)的話就不用數(shù)了,可以直接拖過去,但是鼠標(biāo)效率太低,既然學(xué)了Vim就不要讓手離開鍵盤了。

我總結(jié)了一套方案,幾乎所有的操作都可以不用數(shù)數(shù)來完成。

Vim支持兩種行號(hào),相對(duì)行號(hào)和絕對(duì)行號(hào)。相對(duì)行號(hào)是顯示每一行距離光標(biāo)所在行相隔多少行,絕對(duì)行號(hào)就是順序顯示每一行的序號(hào)。

Vim使用相對(duì)

set nu打開行號(hào)顯示, set rnu打開相對(duì)行號(hào)顯示(更多信息可以查看:help nu :help rnu。

效果如下:


打開行號(hào)顯示


打開相對(duì)行號(hào)的顯示


同時(shí)打開相對(duì)行號(hào)和絕對(duì)行號(hào)

可以看到,如果同時(shí)打開二者,就會(huì)在當(dāng)前行顯示絕對(duì)行號(hào),其他顯示距離當(dāng)前行的距離。

使用一段時(shí)間我發(fā)現(xiàn),在normal模式時(shí),經(jīng)常進(jìn)行對(duì)多行的操作,這時(shí)候如果使用絕對(duì)行號(hào),那么必然是要做減法,或者去數(shù)數(shù)來確定行的數(shù)量的。所以在normal模式應(yīng)該使用相對(duì)行號(hào)。0對(duì)我們來說是沒有任何作用的,所以當(dāng)前行還是顯示行號(hào)吧。

然后一些常用的操作習(xí)慣都要相應(yīng)換一下:

  • 刪除n行。3dd是刪除包括當(dāng)前行一共3行,但是因?yàn)轱@示的是相對(duì)行號(hào),我們要“刪除直到目標(biāo)行”的時(shí)候,要不自覺的+1,比如在上面最后一幅圖,要?jiǎng)h除直到“終端配色安裝”的內(nèi)容,就要按4dd。有沒有辦法不用計(jì)算,所見即所得呢?有的,d3j即可。command+直到目標(biāo)行號(hào)+方向。例如刪除直到上面“我對(duì)……”的內(nèi)容,就是d4k。
  • 其余的操作也是類似,例如移動(dòng)到下面4行,可以用4gg,也可以用g4j。其他還有yank操作等。
  • 替換范圍本來是使用絕對(duì)行號(hào)就可以,例如替換10-20行,就是:10,20s/xxx/yyy/g,但是由于我們normal模式顯示了相對(duì)行號(hào),那么就要根據(jù)相對(duì)行號(hào)操作了: :.+2,.+12s/xxx/yyy/g (假設(shè)當(dāng)前在第8行)。.在Vim中表示當(dāng)前行,要善于利用。由于我們顯示的是相對(duì)行號(hào),所以基本上和行號(hào)有關(guān)的操作都需要計(jì)算完成,用.加上/減去顯示的相對(duì)行號(hào)(所見即所得)

在insert模式時(shí),我們一般都是編輯操作,不會(huì)對(duì)多行進(jìn)行判斷,此時(shí)可能對(duì)絕對(duì)行號(hào)更關(guān)心(寫到多少行了等)。所以可以監(jiān)聽一下事件,進(jìn)入編輯模式時(shí)使用絕對(duì)行號(hào),退出編輯模式進(jìn)入normal模式時(shí)使用相對(duì)行號(hào)。

設(shè)置如下:

set nu
augroup relative_numbser
 autocmd!
 autocmd InsertEnter * :set norelativenumber
 autocmd InsertLeave * :set relativenumber
augroup END

set nu是因?yàn)槲乙话愦蜷_一個(gè)文件不一定是編輯目的,瀏覽的話絕對(duì)行號(hào)更方便。這樣設(shè)置可以讓第一次進(jìn)入文件的時(shí)候使用絕對(duì)行號(hào),進(jìn)入編輯模式再退出到normal模式時(shí)再顯示相對(duì)行號(hào)。

這樣用了一段時(shí)間,感覺按下的鍵多了,但是腦子里需要的計(jì)算少了很多,還不容易出錯(cuò),挺好的。

最后附上我的.vimrc,供參考使用,不推薦盲目復(fù)制。

相關(guān)問題

在 Vim 7.4 之前的版本, 啟用相對(duì)行號(hào)當(dāng)前行號(hào)將變?yōu)?, 無法顯示正常的行號(hào), 在 Vim 7.4 中則可以正常的顯示當(dāng)前行號(hào)的同時(shí)來顯示相對(duì)行號(hào), 下面有兩張圖可以對(duì)比

Vim 7.3

Vim 7.4


從上面的圖片看來, 啟用相對(duì)行號(hào)后可以很直觀的看到當(dāng)前行距離上面/下面某行的行數(shù)

可以使用以下指令啟用這個(gè)特性

set relativenumber

啟用相對(duì)行號(hào)后再也不用為了復(fù)制多行費(fèi)力氣的去數(shù)了

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • Centos/Ubuntu下安裝nodejs教程

    Centos/Ubuntu下安裝nodejs教程

    本篇文章主要介紹了Centos/Ubuntu下安裝nodejs教程,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-04-04
  • 萬網(wǎng)獨(dú)享主機(jī)Apache為Ecshop商城添加404頁面的方法詳解

    萬網(wǎng)獨(dú)享主機(jī)Apache為Ecshop商城添加404頁面的方法詳解

    基本都是做看客的角色,自己基本都沒寫過文章,不過昨天的經(jīng)歷確實(shí)讓我有想法了,因?yàn)樵诰W(wǎng)絡(luò)上面看了很多文章,每篇寫的都相對(duì)較片面,對(duì)于我這個(gè)Linux新手來說不免有點(diǎn)分不清東南西北,一不小心就浪費(fèi)了半天時(shí)間。
    2011-03-03
  • Ubuntu系統(tǒng)下網(wǎng)絡(luò)配置文件解析與說明

    Ubuntu系統(tǒng)下網(wǎng)絡(luò)配置文件解析與說明

    這篇文章主要給大家介紹了關(guān)于Ubuntu系統(tǒng)下網(wǎng)絡(luò)配置文件的解析與說明,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Ubuntu具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Linux使用粘滯位 (t-bit)共享文件的方法教程

    Linux使用粘滯位 (t-bit)共享文件的方法教程

    在 Linux 系統(tǒng)中,共享文件是日常管理和協(xié)作中的常見任務(wù),而粘滯位(Sticky Bit 或 t-bit)是實(shí)現(xiàn)共享目錄安全性的重要工具之一,本文將帶您詳細(xì)了解如何在 Linux 中共享文件并配置粘滯位來保護(hù)共享資源的安全,需要的朋友可以參考下
    2024-12-12
  • ubuntu20.04 LTS系統(tǒng)默認(rèn)源sources.list文件的修改

    ubuntu20.04 LTS系統(tǒng)默認(rèn)源sources.list文件的修改

    這篇文章主要介紹了ubuntu20.04 LTS系統(tǒng)默認(rèn)源sources.list文件的修改,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • node+Express測(cè)試服務(wù)器性能

    node+Express測(cè)試服務(wù)器性能

    這篇文章介紹了使用node+Express測(cè)試服務(wù)器性能,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • Apache 安全配置方法

    Apache 安全配置方法

    在本文中,筆者將為你提供10個(gè)技巧,借此你可以保護(hù)自己的Apache Web服務(wù)器免于受到許多攻擊。不過,必須謹(jǐn)記,你需要仔細(xì)地評(píng)估每一個(gè)技巧,以確保其適合于你的組織。
    2010-12-12
  • CentOS7.6系統(tǒng)下使用yum配置lnmp環(huán)境的方法

    CentOS7.6系統(tǒng)下使用yum配置lnmp環(huán)境的方法

    這篇文章主要介紹了CentOS7.6系統(tǒng)下使用yum配置lnmp環(huán)境的方法,需要的朋友可以參考下
    2018-12-12
  • 詳解centos7中配置keepalived日志為別的路徑

    詳解centos7中配置keepalived日志為別的路徑

    這篇文章主要介紹了centos7中配置keepalived日志為別的路徑,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-10-10
  • linux 命名管道實(shí)例詳解

    linux 命名管道實(shí)例詳解

    這篇文章主要介紹了linux 命名管道實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06

最新評(píng)論