0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

超全vim使用和配置

馬哥Linux運維 ? 來源:CSDN技術(shù)社區(qū) ? 作者:@每天都要敲代碼 ? 2022-10-25 09:13 ? 次閱讀

首先我們先理清楚一個概念:編輯器和編譯器和調(diào)試器!

vim:是一款編輯器,只負責(zé)寫代碼;相當(dāng)于 windows 的記事本;

gcc:是一款編譯器,只負責(zé)程序的翻譯;

gdb:是一款調(diào)試器,只負責(zé)程序的調(diào)試


而在我們在用 VS 寫 C 代碼的時候,這些是全都在 VS 編譯器上實現(xiàn)的;因為 VS 是集成開發(fā)環(huán)境!

vim 的使用學(xué)習(xí)

vim 簡介

vim 是一個功能強大的多模式編輯器, 是 Linux/UNIX 上最常用的文本編輯器, 它的作用是建立、編輯、顯示文本文件。Vim 沒有菜單,只有命令。

命令模式(默認):輸入的任何內(nèi)容,都被當(dāng)做命令;

插入模式;

低行模式;

3629de3c-53b1-11ed-a3b6-dac502259ad0.png

總結(jié):任何模式互相切換,都可以先 Esc 切換到命令模式!

命令模式下的常用命令

插入命令

3661d6c0-53b1-11ed-a3b6-dac502259ad0.png

對于小寫的 aio:

a 代表在當(dāng)前光標(biāo)后插入;

i 代表在當(dāng)前光標(biāo)前插入;

o 在光標(biāo)下一行插入

對于大寫的 AIO:

A 代表在當(dāng)前光標(biāo)所在行的行尾插入;

I 代表在當(dāng)前光標(biāo)所在行的行首插入;

O 代表在當(dāng)前光標(biāo)所在行的上一行進行插入;

定位命令

367be376-53b1-11ed-a3b6-dac502259ad0.png

首先 shift+: 進入低行模式,然后輸入 set nu 就可以在前面加上行號,set nonu 就可以取消行號;

GG 跳到最后一行的開頭,gg 回到第一行的開頭;

跳到指定的行:nG 或者: n

$ 移至到當(dāng)前光標(biāo)所在的行尾,0 移至到當(dāng)前光標(biāo)所在的行首

補充:b 往前找,w 往后找,并且每次跳過一個單詞;

補充:hjkl 對應(yīng)著左移、下移、上移、右移;也可以用上下左右鍵來移動;

補充:L 是移動到本界面的最后一行;

刪除命令

x 刪除光標(biāo)所在處字符,每次刪除一個字符;

nx 刪除光標(biāo)所在處后 n 個字符,nX 刪除光標(biāo)所在處前 n 個字符,n 是幾就刪除光標(biāo)后幾個字符;

dd 刪除光標(biāo)所在的這一行;

D 刪除光標(biāo)所在處到這一行的行尾位置;

ndd 從光標(biāo)所在行算起,n 是幾就刪除后面的幾行;

dG 刪除光標(biāo)所在的這一行到整個文件的末尾處;

:n1,n2d 刪除指定范圍的行;

u 如果誤刪除,可以利用 u 進行回退恢復(fù),相當(dāng)于 windows 里的 ctrl+z 的作用;

補充:shift ~ 可以實現(xiàn)大小寫之間的轉(zhuǎn)換;

復(fù)制和剪貼

yy 復(fù)制當(dāng)前行,nyy 復(fù)制當(dāng)前行以下 n 行;然后 p 就可以復(fù)制到當(dāng)前光標(biāo)處的下一行,P 復(fù)制到當(dāng)前光標(biāo)處的上一行;

dd 剪切當(dāng)前行,ndd 剪切當(dāng)前行以下 n 行;然后 p 就可以復(fù)制到當(dāng)前光標(biāo)處的下一行,P 復(fù)制到當(dāng)前光標(biāo)處的上一行;

搜索和搜索替換命令

:%s/old/new 全文替換指定字符串,%s 代表整個全文,把 old 字符串替換成 new 字符串;

:n1,n2s/old/new/g 全文替換指定字符串,n1 是起始行,n2 是終止行;把 old 字符串替換成 new 字符串;g 代表不詢問,也可以用 c 代表詢問;

r 取代光標(biāo)所在處的一個字符;后面在輸入相當(dāng)于在光標(biāo)處后面直接插入;

R 從光標(biāo)所在處開始替換字符,直到整個行被替換完,后面在輸入相當(dāng)于在光標(biāo)處后面直接插入,按 ESC 結(jié)束;

u 取消上一步操作

保存和退出命令

:w! 保存修改

:q! 不保存修改退出

:wq! 保存修改并退出;或者用 x!,在或者用 ESC+shift+ZZ;

:w 文件名;表示把當(dāng)前文件的內(nèi)容另存到指定文件里;相當(dāng)于備份;

vim 使用技巧

簡單技巧

導(dǎo)入命令執(zhí)行結(jié)果到文件里 :r ! 命令

r:代表寫入;! 命令:表示命令執(zhí)行的結(jié)果,就相當(dāng)于我們在終端里直接輸入命令一樣比如:我們正在編寫一個 111 文件 (vim 111),我們想要把當(dāng)前的時間寫入進來;我們需要退出當(dāng)前編輯的文件,然后在終端輸入 date 命令,把結(jié)果復(fù)制,然后在 vim 111 進入文件,進行粘貼,想一想都麻煩!

但是如果我們在當(dāng)前編輯的 111 文件內(nèi),直接執(zhí)行:r!date;就能把時間直接打印到當(dāng)前光標(biāo)處!

連續(xù)行注釋

:n1,n2s/^/#/g

對于 Linux 來說,注釋符是 #;這里和搜索替換的用法很相似,我們就先解讀一下:把 n1 起始行和 n2 終止行里面的內(nèi)容進行注釋 (#);^(尖角號) 代表移到首行字符并進入插入模式;# 是把注釋符 #插入進去;g 代表不詢問;

:n1,n2s/^#//g

表示把首行的注釋符 #取消掉;相當(dāng)于把首行的 #替換成空;

快捷鍵的定義

定義快捷鍵 :map 快捷鍵 觸發(fā)命令

例:我們想進行注釋 (#):

1.按 0 移至首行

2.i 插入

3.# 注釋

4.退回到命令模式;

我們需要四步;但是如果我們自己定義快捷鍵呢?只需要一步!

:map^PI#

我們利用 map 進行快捷鍵的定義,^ 并不是 ctr+6,而是 ctrl+v+p;I 代表行首并進入插入模式;# 代表插入的是 #;成功插入后退回到命令模式;

這樣以后再注釋,直接 ctrl+p,就可以了,感興趣的小伙伴快快操作起來吧!

:map^B0x

有了首行插入注釋符 #的快捷鍵,不妨在定義一個,刪除首字符的快捷鍵;0 代表移動到首行,x 表示刪除一個字符;

以后想要直接刪除首行的第一個字符,直接 ctrl+b 就可以了;

替換快捷鍵:ab

例:我們經(jīng)常要輸入自己的郵箱,但是每次那么長太麻煩了;所以我們不妨定義一個快捷鍵來代替我們的郵箱;這就需要 ab 命令;

:abmymail1870298470@qq.com

這樣我們在輸入郵箱直接輸 mymail 回車,就可以替換成 1870298470@qq.com,是不是很方便;

注意:對于我們當(dāng)前定義的快捷鍵都是臨時生效的,要想永久生效需保存在:文件.vimrc中

對于root 用戶:寫入 / root/.vimrc 當(dāng)中

對于普通用戶:寫入/home/username/.vimrc

簡單 vim 配置(重點)

首先讓大家看一下我的 vim 配置后的結(jié)果

369844da-53b1-11ed-a3b6-dac502259ad0.gif

配置過后是不是有點像 VS 的環(huán)境?不妨打開自己的 vim 看看是不是這樣的效果!

基本配置

所有的基本配置,本質(zhì)是將我們的配置項寫入. vimrc 當(dāng)中;對于普通用戶,我們直接 vim .vimrc 把配置文件寫進去就行;例如一些簡單的配置:

37417db6-53b1-11ed-a3b6-dac502259ad0.png

也可以用別人的配置,我目前就用的別人的,更加全面!

>curl-sLfhttps://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh-o./install.sh&&bash./install.sh

直接在終端輸入,然后回車就可以啦!

下載完成后還要 source ~/.bashrc 讓配置生效

卸載配置直接執(zhí)行:bash ~/.VimForCpp/uninstall.sh

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • VIM
    VIM
    +關(guān)注

    關(guān)注

    0

    文章

    132

    瀏覽量

    15250
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1602

    瀏覽量

    48896
  • C代碼
    +關(guān)注

    關(guān)注

    1

    文章

    89

    瀏覽量

    14237
  • 調(diào)試器
    +關(guān)注

    關(guān)注

    1

    文章

    297

    瀏覽量

    23569

原文標(biāo)題:超全 vim 使用和配置

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    12個實用的vim編輯技巧

    vim 是一個很好用的編輯器,應(yīng)用十分廣泛。但關(guān)于 vim,總有一些你不知道的事情,我們需要持續(xù)不斷的學(xué)習(xí)。
    發(fā)表于 11-25 09:26 ?899次閱讀

    Vim - .vimrc學(xué)習(xí)使用教程

    )---->運行程序(./run) ,這樣,一段代碼或者一個程序就跑起來了3. 調(diào)試:調(diào)試時使用gdb命令,調(diào)試功能非常,包括加點電、單步調(diào)試、跳進跳出函數(shù)等等 二、Vim自定義屬性:(先看
    發(fā)表于 07-05 10:39

    vim配置

    "設(shè)置tab鍵寬度set softtabstop=4set shiftwidth=4set rulerset noeb “去除錯誤提示聲音---》使配置生效:source /etc/vim
    發(fā)表于 09-25 16:46

    vim的常用配置及使用方法

    vim是vi發(fā)展出來的一個編輯器,ubuntu為了減小安裝文件的尺寸,默認安裝了vi的原始版本,我們需要下載安裝它的升級版本:vim. vim的功能豐富,而且可以根據(jù)自己的需要對其進行配置
    發(fā)表于 09-26 18:03

    介紹下vim的基本操作

    嵌入式學(xué)習(xí)開篇的虛擬機設(shè)置,deepin Linux發(fā)行版安裝,虛擬機網(wǎng)絡(luò)配置等基本操作這里就不在介紹了.由于本人對vim也并非使用特別多,但也就是離不開而已,所以這里就簡單介紹下基本使用.平時編碼
    發(fā)表于 12-15 09:18

    學(xué)會使用和如何配置vim文本編輯器

    學(xué)會使用和如何配置vim文本編輯器?動態(tài)庫和靜態(tài)庫及使用和區(qū)別是什么?
    發(fā)表于 12-23 08:49

    如何使用及配置vim?

    如何使用及配置vim?gcc編譯器怎么使用?使用Gdb單步調(diào)試程序的方法是什么?
    發(fā)表于 12-24 07:01

    VIM for windows

    VIM for windows Vim目前已經(jīng)有類Unix版和Windows版,盡管vim較vi已經(jīng)改良了不少,但是初次使用還是會一頭霧水,不知如何操作,所以學(xué)習(xí)vim要首先過2關(guān)。
    發(fā)表于 03-13 14:41 ?30次下載

    Vim用戶手冊中文版7.2

    Vim是一個強大的文本編譯器,是程序員編程的好工具,書中提供了各種Vim編輯技巧和配置
    發(fā)表于 08-08 18:20 ?0次下載

    VIM高級技巧

    VIM高級技巧
    發(fā)表于 10-29 11:06 ?9次下載
    <b class='flag-5'>VIM</b>高級技巧

    Vim Bootstrap Vim配置文件生成器

    ./oschina_soft/vim-bootstrap.zip
    發(fā)表于 05-23 09:33 ?0次下載
    <b class='flag-5'>Vim</b> Bootstrap <b class='flag-5'>Vim</b><b class='flag-5'>配置</b>文件生成器

    vim-go Vim的Go開發(fā)插件

    ./oschina_soft/vim-go.zip
    發(fā)表于 05-24 09:42 ?1次下載
    <b class='flag-5'>vim</b>-go <b class='flag-5'>Vim</b>的Go開發(fā)插件

    vim-switchtoinc Vim插件

    ./oschina_soft/vim-switchtoinc.zip
    發(fā)表于 05-24 09:19 ?3次下載
    <b class='flag-5'>vim</b>-switchtoinc <b class='flag-5'>Vim</b>插件

    IC驗證入門基礎(chǔ)—Vim配置

    Vim或者是gvim是我們IC設(shè)計或者驗證工程師,日常工作當(dāng)中常用到的一個編輯器,我們的RTL代碼就是在vim當(dāng)中寫的,而gvim是vim的圖形化界面,我入職拿到電腦的時候,做的第一件事就是
    發(fā)表于 06-15 17:52 ?1027次閱讀
    IC驗證入門基礎(chǔ)—<b class='flag-5'>Vim</b>的<b class='flag-5'>配置</b>

    vim編輯器如何使用

    Vim編輯器是一個功能強大的文本編輯器,它基于Vi進行改進,并增加了許多新特性。Vim編輯器的使用主要涉及其不同的工作模式及相應(yīng)操作。以下是Vim編輯器的基本使用方法: 一、Vim編輯
    的頭像 發(fā)表于 08-30 14:58 ?174次閱讀