如何使用vim:基礎指南

計劃使用vim文字編輯器for Linux嗎?以下是開始使用所需的所有命令-幾分鐘內學習如何使用vim!...

Vim是適用於類Unix系統的最強大和通用的程式碼編輯器。它是由billjoy開發的Vi編輯器的擴充套件。Vim在大多數Linux和BSD系統上預設是可用的。

Featured Image for Vim Commands in Linux

因此,您可以在所有系統和遠端機器上使用相同的編輯器。Vim嚴謹的詞彙表也使得它非常高效和富有表現力。

vim是如何工作的?

Vim不同於傳統的Linux文字編輯器。它保持了Unix的理念,即做一件事並把它做好。最基本的概念是,作為程式設計師,我們把大部分時間花在編輯程式碼上,而不是寫程式碼上。

Vim提供了幾種模式來解決這個問題。每種模式都有不同的功能,透過按鍵來控制。基本vim模式有正常模式、可視模式、**模式和命令模式。

Illustration of Vim Modes

我們使用普通模式來檢查程式碼和執行快速操作。視覺模式用於突出顯示文字部分,**模式用於新增文字。您將使用命令模式鍵入各種vim命令。

如何在**模式下使用vim

當您開啟vim時,它以正常模式啟動。您可以透過輸入i鍵切換到**模式。這將在游標位置呼叫**模式。你應該在左下角看到一個指示。

現在您可以輸入任何文字,vim將這些文字複製到緩衝區中。要儲存進度,請按ESC鍵<ESC>切換回正常模式;。現在輸入以下vim命令。

:w

還有其他方法進入**模式。例如,可以在正常模式下按o鍵在當前行的正下方**文字。使用O在當前行上方**文字。

Inserting Text in Vim

使用I在當前行的開頭**文字。您可以使用a鍵在游標後面新增文字。在行尾新增文字時使用。

要儲存並退出當前檔案,請切換到命令模式,然後鍵入以下命令。

:wq

如何在正常模式下使用vim

Vim使用者大部分時間都在正常模式下使用。在這裡,您可以瀏覽文字並執行快速編輯。在任何模式下按ESC<ESC>鍵都將進入正常模式。

vim使用hjkl(h表示左,j表示下,k表示上,l表示右)代替標準的箭頭鍵進行導航。一開始似乎適得其反。但是,vim這樣做是為了節省使用者在鍵盤上按箭頭鍵所需的時間。

另外,與許多基於控制檯的編輯器一樣,vim鼓勵使用者遠離滑鼠。不過,您可以配置vim來啟用滑鼠支援。

你也可以一個字一個字地移動文字。例如,在正常模式下按w將游標移動到下一個單詞的開頭。你可以用b移到當前單詞的開頭,用e結束。

Navigating Vim Using Words

使用0導航到行首,使用$移動到行尾。按H將游標移到螢幕頂部,M移到中間,L移到底部。您可以使用Ctrl+u和Ctrl+d上下滾動。如果在正常模式下按gg,vim會將游標移到頂部。輸入G移動到終點。

你可以學習vim編輯命令,一旦你在正常模式下移動自如。使用x刪除字元,使用s替換。使用d運算子刪除文字。它以一個動議作為論據。其語法如下所示。

d{motion}

運動可以是任何東西。例如,在正常模式下按dw將刪除當前單詞。如果您鍵入d$,vim將刪除該行末尾的所有內容。類似地,鍵入d0將刪除行首。使用dd刪除整行。

Deleting Texts in Vim

但是,您不需要刪除某些內容並進入替換模式進行更改。c操作員允許我們直接從正常模式更改vim運動。

c{motion}

因此,當您按cw時,vim刪除當前單詞並將您置於**模式。您的游標需要位於單詞的開頭,因為vim將從當前位置刪除。用ciw來解決這個問題。這會在當前單詞中進行更改。使用cc更改整條生產線。

Changing Texts in Vim

用y來複制運動,用p來貼上它們。所以,yw複製當前單詞,yy複製整行。可以使用點重複上一個命令。運算子,使用u撤消更改,並使用Ctrl+r重做。

如果您想在程式碼中找到一些東西,請在Linux中使用以下vim命令。

/{regex}

這裡,regex是一個正則表示式。按n鍵進入下一場比賽,按n鍵進入上一場比賽。

Finding Strings in Vim

如何在可視模式下使用vim

在視覺模式下使用vim允許我們使用移動鍵選擇文字塊。這就是高階使用者在vim中移動程式碼塊的方式。在正常模式下輸入v以切換到可視模式。

現在可以使用導航鍵hjkl高亮顯示部分文字或程式碼。使用Ctrl+v切換到可視塊模式。在這裡,您可以選擇文字塊。您可以透過進入可視線模式高亮顯示線。使用V選擇可視線模式。

Block Selection in Vim

這允許我們一次對文字塊進行編輯。例如,您可以選擇一個文字塊並按y鍵將文字複製到vim緩衝區中。

如何使用vim命令模式

我們可以透過鍵入:in normal mode來訪問命令模式。它會將游標移到螢幕底部,後跟冒號。下面是Linux中一些最有用的vim命令。

  • :w將更改儲存到檔案
  • :wq儲存並退出
  • :saveas FILE將當前檔案另存為檔案
  • :q退出vim
  • :q!退出並放棄更改
  • :e檔案開啟檔案進行編輯
  • :幫助開啟幫助

將此vim備忘單新增為書籤,以便快速訪問有用的vim命令。

掌握vim基礎知識

Vim是一個健壯的編輯器,它消除了思考和編輯之間的差距。一旦精通vim,編寫程式碼就變得更加令人興奮。儘管您需要多年的實踐才能真正掌握它,但瞭解vim的基礎知識應該可以讓您在正確的軌道上開始。

  • 發表於 2021-03-28 06:00
  • 閱讀 ( 55 )
  • 分類:電腦

你可能感興趣的文章

9個最好的程式碼遊戲,以建立你的程式設計技能

...bat卻有著重要的教育傾向,教師可以用它來幫助學生學習如何編寫程式碼。在撰寫本文時,有三種課程路徑可供選擇:電腦科學、Web開發和遊戲開發。 ...

  • 發佈於 2021-03-17 21:19
  • 閲讀 ( 49 )

如何在android和termux上使用linux命令列

...許您在Android裝置上安裝誠實善良的Linux應用程式。下面是如何使用Termux應用程式。 ...

  • 發佈於 2021-03-18 07:26
  • 閲讀 ( 69 )

如何在vim中儲存和退出檔案

...學者一開始感到不知所措是很正常的。但是一旦你掌握瞭如何從終端儲存和退出Vim檔案,你就會變得更有效率。 ...

  • 發佈於 2021-03-28 02:49
  • 閲讀 ( 60 )

如何在linux中建立新檔案

Linux中有幾種不同的應用程式和命令可以為您建立新檔案,即使不啟動應用程式。使用哪種方法取決於檔案的用途。讓我們看看這些選項,這樣您就可以知道哪一個對您最有用。 ...

  • 發佈於 2021-03-28 22:06
  • 閲讀 ( 69 )

保持程式碼整潔美觀

...個無關緊要的問題,但它會影響程式碼的質量和正確性、如何控制版本以及如何與他人協作。但是,如果你不想陷入每一個大括號的細節中,那麼可以嘗試將問題外包給開源工具Prettier。 ...

  • 發佈於 2021-03-28 23:47
  • 閲讀 ( 71 )

6種不用滑鼠快速瀏覽網頁的方法

...可以讓你以比滑鼠更快的速度完成任務。今天我們來看看如何將這一理念應用到你的網際網路瀏覽中。 ...

  • 發佈於 2021-03-29 08:04
  • 閲讀 ( 101 )

使用vimium在chrome和firefox中使用鍵盤進行瀏覽

...借用了從主行控制程式的思想,使之超級高效。任何知道如何使用Vim的人都可以很容易地適應瀏覽器外掛,因為他們使用類似的命令。 Vimium可用於Chrome和Firefox。它還與Opera、新版Edge、Brave和Vivaldi合作,它們都基於Chrome的開源版...

  • 發佈於 2021-04-02 03:43
  • 閲讀 ( 59 )

如何退出vi或vim編輯器

...了此應用程式,則需要祕密握手才能從中逃脫。下面介紹如何退出Linux、macOS或任何其他類Unix系統上的vi或vim。 快速回答 如果您在vi或vim中,需要在儲存更改或不儲存更改的情況下退出,以下是方法: 首先,按幾次Esc鍵。這將...

  • 發佈於 2021-04-03 16:20
  • 閲讀 ( 51 )

如何在linux(或macos)上使用vim對文字檔案進行密碼保護

...使用單獨的實用程式加密文字檔案更快、更方便。下面是如何設定它。 確保系統的vim支援加密 一些Linux發行版,包括Ubuntu,預設情況下包含vim的最低版本,僅用於基本的文字編輯。例如,Ubuntu稱這個包為“vim tiny”。如果您嘗...

  • 發佈於 2021-04-08 02:37
  • 閲讀 ( 53 )

shell指令碼初學者指南:基礎知識

...檔案時,shell將透過它們來分析它們是否是指令碼,以及如何正確處理一切。因此,您需要了解一些準則。 每個指令碼都應該有“#”!/“箱/bash” 每一行都是一條新命令 註釋行以# 命令被() 雜湊爆炸駭客 當shell透過文字檔...

  • 發佈於 2021-04-10 05:43
  • 閲讀 ( 67 )
4100344496
4100344496

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦