Linux中國

Vim 與 nano:你應該選擇哪個?

Vim 和 nano 是最流行的 CLI 文本編輯器 之二。

但是,是什麼讓它們如此受歡迎?你應該選擇哪個作為你的文本編輯器?讓我指出一下 Vim 和 nano 的區別,以幫助你決定。

1、基於終端的編輯器介紹

nano 和 Vim 都提供了大部分的基本功能。雖然 nano 在大多數 Linux 發行版上是內置的,但你必須手動安裝 Vim。

為了比較這兩者,讓我給你簡單介紹一下這兩者。

Vim

Vim 是 「Vi」 文本編輯器的改進版,開發於 1991 年。Vim 是 「 Vi 改進版 Vi IMproved 」 的意思。

Vi 是一個基於終端的文本編輯器,最初於 1976 年為 Unix 操作系統而開發。Vim 是它的一個具有現代功能的增強版。

考慮到它的各種功能可以幫助編輯程序文件,它也被稱為「程序員的文本編輯器」。雖然它提供了一些高級功能,但你也可以用來編輯純文本文件。

GNU nano

GNU nano(我們在文章中稱它為 「nano」)是一個簡單的基於終端的文本編輯器,其靈感來自於 Pico —— 這個基於 Unix 的文本編輯器是華盛頓大學 1989 年開發的 Pine 電子郵件套件的一部分。

Pico 文本編輯器沒有 GPL(許可證),這使得它很難被納入 Linux 發行版。

因此,nano 被開發出來作為它的自由軟體替代品。nano 編輯器最初被稱為 「tip」,然後在 Richard Stallman 宣布它成為正式的 GNU 程序之前重新命名為 nano。

這個編輯器的亮點是它的易用性和極小的學習曲線。你不一定需要成為程序員才能使用 nano。

2、功能差異

下面是 Vim 和 nano 的主要功能差異:

Vim 的主要特點

  • 多級撤銷
  • 語法高亮
  • 命令行編輯
  • 文件名補完
  • 多窗口和緩衝區
  • 摺疊
  • 會話
  • 支持宏

nano 的主要特點

  • 打開多個文件
  • 逐行滾動
  • 撤銷/重做
  • 語法著色
  • 行號

請注意,一般來說,Vim 提供了更高級的功能。然而,它們都提供了編輯系統配置文件、編程和文本編輯等基本功能。

3、用作文本編輯器

在 Vim 或 nano 中打開一個文件很簡單,只要輸入你想使用的編輯器的名字,然後再輸入文件的路徑。路徑可以是文件的絕對路徑,也可以是文件的相對路徑。

vim Documents/text.txt
nano Documents/text.txt

但是,除了用作文本編輯器訪問或打開一個文件之外,還有很多功能,對嗎?

如果你想快速比較一下,這裡有一些基於我的使用情況的比較點:

Vim:

  • 模式驅動的編輯器
  • 在開始時有巨大的學習曲線
  • 會話恢復
  • 語法高亮/著色
  • 提供高級功能

nano:

  • 易於使用(經常使用的功能及其組合鍵列在底部)
  • 不存在學習曲線
  • 旨在進行快速編輯

nano 和 Vim 的主要區別在於,它們的目標受眾非常不同。

Vim

Vim 是一個模式驅動的編輯器。這意味著字母、數字和標點符號鍵在按下時都要做一件獨特的事情,而不是在屏幕上打出一個字元。

這些模式包括:

  • 正常模式
  • 視覺模式
  • 插入模式
  • 命令行命令
  • 命令行編輯

默認情況下,當你啟動 Vim 時,它以 正常 模式打開。每個鍵都有其獨特的功能,不會立即開始輸入所按下的字元。

不管什麼模式,如果你願意,你也可以 把 Vim 配置成一個寫作工具

要知道更多關於這些有趣的事情,你可以參考我們關於 基本 Vim 命令 以及 Vim 技巧和竅門 的文章。

當你啟動 Vim(無參數)時的終端屏幕

在正常模式下,按特定的鍵會移動你的游標。

例如,如果你按下 l(小寫字母 L),它將把游標向右移動一個字元,按 h 鍵將把游標向左移動一個字元。

如果你想把游標向下移動一行,你就按 j 鍵,如果要把游標向上移動一行,你應該按 k 鍵。

在正常模式下 lkjh 是導航鍵。雖然你可以用方向鍵來移動,但這樣做更有效率。

這些是 Vim 中的基本導航鍵。

接下來最常用的鍵是 wbe

  • w 鍵可將游標移到下一個詞。如果它已經在一個詞的開頭,它就會移動到下一個詞的開頭。
  • b 鍵,游標會移到左邊的詞的開頭。
  • e 鍵,則將游標移到右邊的詞的末尾。

你甚至可以用這些鍵混合數字(作為前綴)。例如,按 6w 可以將游標向前(向右)移動六個詞。

如果你想進入一個模式,你必須按類似的組合鍵:

  • i 為插入模式
  • CTRL+C 回到正常模式
  • :wq 寫入文件並關閉窗口。

最後,我們已經 列出了退出 Vim 的多種方法,如果你想了解一下的話。

這只是冰山一角。要學習更多關於 Vim 的知識,你可以使用vimtutor 命令,它可以給你提供大多數基本命令的信息,如刪除、編輯、保存文件等。

GNU nano

nano 有一個基本的交互界面,在窗口的底部給你提供關鍵信息。

要想有個初步的了解,你可以參考我們的 nano 編輯器指南

![Terminal screen when you launch nano without argumentswithoutarguments] 13

你不需要參考手冊頁或任何文檔來執行基本操作。這就是為什麼與 Vim 相比,nano 被認為是用戶友好的。

儘管如此,nano 中使用的一些術語仍然是「舊術語」,一個例子是 「 寫出 Write Out 」、「 在哪裡 Where Is 」短語,而不是分別用「 保存 Save 」和「 查找 Find 」。

但是,這並不是什麼大問題。

雖然很容易習慣,但它與使用記事本或 Gedit(GUI 程序)並不完全相同。

例如,在大多數現代編輯器中,執行剪切操作的組合鍵通常是 Ctrl + X,但在 nano 中,它是 Ctrl + K

符號 ^ 是用來表示將 Ctrl 鍵作為修飾鍵使用,並與旁邊的鍵組合使用。

你還可以找到像 Ctrl + F(將游標向前移動)、Ctrl + B(將游標向後移動)這樣的組合鍵。一些快捷鍵包括:

  • Ctrl + X 退出
  • Ctrl + O 寫入(或保存為)
  • Alt + U 撤銷上一個動作
  • Ctrl + ← 向後退一個字
  • Ctrl + → 向前進一個字

你可以看看 GNU nano 的官方速查表 來學習更多的快捷鍵。

總的來說,nano 是一個更適合初學者的編輯器,當你只想偶爾編輯一個文件時,它可以簡單地讓你完成。

4、學習曲線

考慮到上面的所有信息,你一定已經意識到 Vim 與你所習慣的傳統文本編輯器不同。

這是真的,這就是為什麼 Vim 在學習的初始階段會顯得很艱難。

然而,對於高級用戶來說,使用宏、自動補完等高級能力很重要,可以節省時間。

因此,如果你是一個程序員,或者碰巧經常編輯許多文件,Vim 的學習曲線可能是富有成效的。

另一方面,nano 提供了極小的學習曲線,而且感覺比基於圖形用戶界面的文本編輯器如 Gedit 或 Notepad 更讓你熟悉。

哪個是最適合你的?

Vim 和 nano 都是合格的基於終端的文本編輯器。但是,當涉及到你如何與上述編輯器互動和使用時,它們有很大的不同。

Vim 很靈活,可以適應各種工作流程,前提是你已經習慣了它的工作方式。

相比之下,nano 工作起來很簡單,可以幫助你編輯任何你想要的東西。

如果你還不確定,我建議先開始使用 nano。而且,如果你認為你需要更快地完成工作,並且想要更多的功能,那麼就換成 Vim。

常見的問題

繼續,讓我來談談幾個問題,這將有助於你獲得一個良好的開端。

Vim 比 nano 好嗎?

技術上講,是的。但是,如果你不需要它提供的所有功能,使用起來可能會感到力不從心。

程序員是否使用 Vim?

系統管理員和程序員喜歡 Vim 的高級功能。所以,是的,他們傾向於使用它。

nano 是否更受歡迎?

可以說是的。nano 是一個基於終端的編輯器,被大多數用戶使用。此外,它還內置在大多數 Linux 發行版中。

因此,它在用戶中普遍受歡迎,而 Vim 仍然是一個為特定人群服務的編輯器。

via: https://itsfoss.com/vim-vs-nano/

作者:Pratham Patel 選題:lujun9972 譯者:wxy 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國