neovim和vim區(qū)別 neovim和vim區(qū)別?
neovim和vim區(qū)別?vim和neovim都是終端機(jī)上強(qiáng)大編輯器。最初是unix上的ex(行編輯器)然后是vi(visual,可視化的編輯器)vim是vi improved(更先進(jìn)的vi)neov
neovim和vim區(qū)別?
vim和neovim都是終端機(jī)上強(qiáng)大編輯器。
- 最初是unix上的ex(行編輯器)
- 然后是vi(visual,可視化的編輯器)
- vim是vi improved(更先進(jìn)的vi)
- neovim(neo vim,新的vim)
從括號(hào)中文字語(yǔ)義上就能看出,這些文本編輯器對(duì)前輩演進(jìn)過(guò)程,至少目標(biāo)是這樣。
Vim:許多Linux發(fā)行版默認(rèn),無(wú)需特別安裝,功能強(qiáng)大,可定制,插件生態(tài)相對(duì)繁瑣
neovim:需自行安裝,輕量級(jí),速度快,插件生態(tài)簡(jiǎn)單,強(qiáng)大。
基本上,如果使用neovim穩(wěn)定版0.4和vim 8.0,外觀和使用體驗(yàn)上,那么沒(méi)有特別大的區(qū)別,很多插件也都既支持neovim,也支持vim。優(yōu)秀的插件開(kāi)發(fā)者,也會(huì)在插件中注意對(duì)兩者的支持,使得插件生態(tài)大部分是兼容狀態(tài)。
Neovim的預(yù)覽版0.5,增加對(duì)有些vim還不支持語(yǔ)法檢查、高亮、重構(gòu)等等功能。
而Vim 9.0會(huì)加入更新更快的vimscript腳本,不會(huì)向下兼容,因此neovim也可能不支持這些新特性。
Vim和Emacs都用過(guò)兩年以上的人,說(shuō)說(shuō)它們使用起來(lái)感覺(jué)最大的區(qū)別是什么?
兩個(gè)同時(shí)在用,先用了 Vim(2009年) 后用 Emacs(2013年)。
用 Emacs org mode 寫(xiě)文檔、編程練習(xí)、發(fā)博客、做時(shí)間管理。
現(xiàn)在用 Vim 和 VS Code 寫(xiě)產(chǎn)品代碼(設(shè)置了 Vim 按鍵綁定),之前也用 Emacs 寫(xiě)。
總體而言,如果你是程序員,尤其是后端。 我建議你一定要掌握 Vim,它可以極大提高代碼鍵入、修改、光標(biāo)移動(dòng)效率。 Vim 從嵌入式設(shè)備到桌面發(fā)行版 Linux,幾乎隨處可見(jiàn),并且?guī)缀跛兄髁鞯?IDE 都能支持 Vim 按鍵綁定。我也希望你能掌握 Emacs,尤其是 org mode(當(dāng)然 Emacs 還有很多其他強(qiáng)大的功能,但 org mode 可以成為你使用 Emacs 的起點(diǎn)),它能讓你體會(huì)到使用純文本的方式編寫(xiě)文檔(含流程圖)和做時(shí)間管理的樂(lè)趣。
下面我說(shuō)說(shuō) 3 點(diǎn)比較顯著的差異:
1. 鍵入:Vim 因?yàn)橛?3 種不同模式,在進(jìn)入 Normal 和 Visual 模式后,快捷鍵都可以非常短。Emacs 沒(méi)有像 Vim 的模式概念,所以更多的需要使用 Control、Meta 等組合鍵,相比 Vim 會(huì)可能需要按更多按鍵(這并不代表 Emacs 鍵入速度會(huì)比 Vim 慢,只要熟練掌握,速度沒(méi)什么大差別)。Emacs 使用 Evil Mode 后,也可以使用 Vim 的按鍵綁定方式,例如 Spacemacs 配置。
2. 擴(kuò)展:Vim 使用 VimL 獨(dú)創(chuàng)的語(yǔ)言開(kāi)發(fā)插件(NeoVim 可以支持各種編程語(yǔ)言寫(xiě)插件)。Emacs 使用 lisp 開(kāi)發(fā)插件,相對(duì)而言編寫(xiě)會(huì)稍微困難一些,因?yàn)樾枰~外學(xué)習(xí) emacs lisp)。兩者都龐大的社區(qū),有非常豐富的插件可供使用。
3. 體積:Vim 相對(duì)而言,可以比 Emacs 小很多。在許多 Linux 發(fā)行版 或嵌入式 Linux 均帶有 Vi 或 Vim,但不一定有 Emacs。
怎么才能讓gvim的配色和終端里的vim配色一樣?
如果你需要終端的背景色和monokai一樣,那么只能把你終端的配色方案改成和monokai一樣。如果你用的終端是iTerm2的話,找找這個(gè)項(xiàng)目 GitHub - mbadolato/iTerm2-Color-Schemes: Over 130 color schemes/themes for iTerm/iTerm2 。如果你想要vim的背景和變得和終端一樣,那么改monokai.vim配色,把Normal的配色改成 ctermbg=NONE即可。
如果只想讓vim和終端看起來(lái)和諧一些,那么沒(méi)必要要求他們背景色都一樣。如果你的終端軟件支持真彩色,那么開(kāi)啟vim的真彩色即可。
vim v7.4之后、neovim v0.1之后,都是支持真彩色的。在vimrc中添加 set termguicolors 即可。然后用一個(gè)支持真彩色的vim配色,如 https://github.com/iCyMind/NeoSolarized 。比如終端采用這個(gè)配色:用NeoSolarized則不管終端用的什么配色,vim都能正確使用你定義的配色方案