Neovim 成我首選文本編輯器,魅力何在?

雖說其他編輯器或許能提供更多的視覺效果以及更友好的美感,但 Neovim 能夠追溯至 20 世紀 70 年代的一款編輯器。那麼爲什麼它是我選擇的文本編輯器呢?主要是因爲它具有大多數其他編輯器根本沒有的超能力。

鼠標支持被內置在 Neovim 中(如同在 Vim 裡一樣,它是由 Vim 衍生而來的文本編輯器),而且在默認情況下甚至是啓用的。也就是說,Neovim 的強大之處在於其鍵盤控制。像之前的 Vim 和 vi 一樣,Neovim 使用不同的模式來輸入和編輯文本,實現強大的編輯操作。

例如,“d”鍵執行刪除或剪切操作。要刪除一整行,只需輸入“dd”。添加一個數字,結果是可預測的:“5dd”將刪除接下來的五行。

這種運用命令的組合方式意味着,儘管存在一個初始的學習曲線,可一旦您開始學習一些基本命令,以有趣的方式把它們組合起來就會極爲直觀。

我上述所提到的所有內容對於 Vim 和 Neovim 均是相同的,並且我曾作爲 Vim 的快樂用戶很長一段時間。吸引我使用 Neovim 的是其處理插件的方式以及這所允許第三方開發人員爲編輯器增添的酷炫功能。

雖說您當然能把 Neovim 和簡單的.vimrc 文件一塊兒用,甚至根本不用配置文件,可您在擺弄各種選項時很容易就迷失了。而且這還是在您連插件都沒開始添加的時候呢。

話雖這麼說,有好多工具能讓強大的 Neovim 配置的設置和使用變得特別容易。像LazyVim這種完整的發行版,能把簡單的編輯器變成功能完備的 IDE。

要是您正在找介於這兩者之間的那種,您可以選我選的。我用的是kickstart.nvim。它不是完整的發行版,倒更像是構建您自己自定義配置的入門套裝。它預先配置了一堆有用的插件,然後您還能爲各種編程語言或者其他功能添加自己的插件。

不管您是用像 kickstart.nvim 這類的,還是自己拼湊配置,Neovim 豐富的插件生態系統意味着您差不多能無限拓展這個應用程序。

我把寫代碼當作一種愛好,但我在文本編輯器中花費的絕大部分時間要麼是用 Markdown 寫作,要麼是做筆記。Neovim 內置的 Markdown 支持相當不錯,但對於快速輕鬆地做筆記,我使用了一個名爲Telekasten的插件來搜索和創建筆記。

把它添加到我的配置裡,意味着只需從 Telekasten 的 GitHub 上覆制粘貼幾行到我的配置文件中,再把插件指向我的筆記目錄。設置其他任何插件通常都這麼簡單,它能讓您自定義編輯器的工作方式,來適應您自己理想的工作流程。

一個簡單的例子:當我正在寫這篇文章並且完成了一個部分的時候,我按幾下鍵打開一個集成了 LazyGit 應用程序的插件。再按幾下鍵,我就提交了更改並將它們推送到存儲我正在進行的工作的遠程存儲庫,然後又回到編輯文章。這在我的工作流程中是相對較新的一項添加,不過在這一點上,它幾乎跟保存文件一樣自然。

當然,我得自己配置這個(儘管我厚着臉皮從 LazyVim 那裡竊取了集成)。即便如此,我能夠輕鬆地將這個和像 Telekasten 這樣的其他功能構建到我的設置中,展示了 Neovim 設計的強大之處。這也說明了圍繞該編輯器的開發者社區是多麼健康。

雖然我喜歡 Vim 和 Neovim,但並非一見鍾情。正如我想象的許多人的情況一樣,當我第一次碰到一個有着不閃爍光標的空白黑色屏幕時,我很好奇人們在這個他們如此鍾愛的編輯器裡究竟看到了什麼。

在互聯網上四處查看,我會看到 Vim 設置的屏幕截圖,帶有語法高亮、側邊欄中的樹形文件瀏覽器和其他現代功能。我對於深入探究配置文件並不陌生,但我可以看出,這需要的不僅僅是我在 ~/.bashrc 文件中調整的幾行。

我不記得是什麼讓我不斷回來,但從 Github 上分散的配置文件中拼湊出各種片段之後,我開始理解 Vim 的強大之處,後來是 Neovim。也就是說,我屬於那種獲得一個有效的配置後就堅持使用的人。如果您不是這樣,那麼 Neovim 可能會是一個陷阱。

選擇一個文本編輯器,可能會有一個有關其用戶花更多時間自定義它而非實際用它來完成工作的笑話。對於 VS Code 可能是這樣,對於 Emacs 肯定是這樣,對於 Neovim 也是如此。

甚至比起 Vim 來,人們很容易陷入調整 Neovim 配置的狀態

爲何要止步於此呢?

你有沒有注意到,啓動 Neovim 時它大概需要半秒鐘?

現在,半秒的啓動時間縮減到了只有四分之一秒。

別讓這種情況在你身上發生。

雖然這是一篇主要關於我有多喜歡 Neovim 的文章,但它肯定並非適合所有人,也並非是最簡單的編輯器。即使是在終端運行的編輯器,也有一堆 適用於 Linux 的其他出色的文本編輯器。如果你更喜歡圖形編輯器,有很多編輯器會讓你感覺更熟悉。

話雖這麼說,要是你願意嘗試,Neovim 絕對值得一試。可能得嘗試幾次才能搞懂它,不過要是你跟我一樣,你會發現有些能讓你一直回頭的東西