发布于 2026-01-06 1 阅读
0

使用 Neovim 两年后,为什么选择 Neovim?我的需求是什么?

Neovim 两年后

为什么选择 Neovim?

我的需求

对于开发者而言,最重要的因素之一就是开发环境。工作效率很大程度上取决于你拥有哪些工具以及你对它们的熟悉程度。作为一名程序员,你用来编写代码的软件将是你最重要的工具之一。

为什么选择 Neovim?

我坚信效率与舒适度息息相关。对我而言,舒适意味着能够事半功倍。我总是努力学习我使用的每个软件的快捷键,因为这通常是完成任务最快捷、最简单的方法。当我了解到 Vim 的键盘操作特性时,它简直就是为我量身打造的。这正契合了我当时的目标:减少鼠标的使用(我的触控板很糟糕,所以我不得不使用外接鼠标)。

我的需求

我认为工具应该适应你的需求,而不是反过来。我的期望受到了我使用 JetBrains 产品经验的影响。对我来说必不可少的功能包括自动补全(主要用于变量名)、代码检查(在修复语法错误时能节省大量时间)、项目管理(主要用于在目录内执行命令)、Git(用于查看差异和提交等基本操作)以及代码片段(后来才添加)。

自动完成

为了实现自动补全,我最初在 Vim 中使用youcompleteme。但它的安装对我来说过于复杂,所以大多数时候我干脆放弃,直接使用 Vim 自带的补全引擎。后来我了解到deoplete,于是转而使用 Neovim(在 Neovim 中安装更方便)。现在,我用的是COC,它的安装和配置都非常简单。虽然 Vim 自带的补全引擎也够用,但 COC 对我来说更简单。

绒毛

没有什么比代码检查更能提升编码速度了。能够纠正语法错误并正确格式化文件,对开发过程大有裨益。起初,我对 Vim 的make系统并不了解。我用的是Syntastic ,后来转到 Neovim 时又换成了Alemake 。现在,我已经了解了 Vim 的系统,也理解了编辑-编译-修复的流程,但对我来说,使用 Ale 更方便。

项目管理

我不需要像IDE那样的项目管理功能。我需要的是快速切换文件,以及在编辑器打开的目录下执行命令。一开始我用的是Ctrl+P。但一听说FZF,我就换用了。至于文件管理器,我一开始用的是默认的Netrw,之后很长一段时间都没用别的(FZF就够用了)。几个月前,我试过Denite和[The NERD Tree]( https://vimawesome.com/plugin/nerdtree-red ),但感觉不太顺手,所以又换回了FZF和Netrw。

Git

我在编辑器中使用 Git 的需求很简单。我只需要能够查看哪些文件被修改,选择要暂存的文件,以及快速编写提交信息。从一开始我就使用fugitive,它完美契合我的工作流程。我还为一些常用命令添加了映射。

片段

我平时不太用代码片段。不过我安装了UltiSnips,也添加了一些代码片段。它功能强大,速度也很快。

就是这样。Neovim 满足了我对文本编辑器的所有需求。我也会时不时地分析我的编码过程,看看有哪些可以改进的地方。我的配置文件init.vim在这里。

文章来源:https://dev.to/skydevht/neovim-after-2-years-3aa8