Vim 与 Neovim 比较:哪个文本编辑器更优秀且适合您?

Vim 与 Neovim 比较:哪个文本编辑器更优秀且适合您?

在编码、脚本编写或管理配置文件时,文本编辑器在提升工作效率和娱乐性方面起着至关重要的作用。Linux 提供了丰富的选择,其中 Vim 和 Neovim 是这个生态系统中讨论最多的两个文本编辑器。持续不断的Vim 与 Neovim 之争吸引了众多 Linux 爱好者的关注,其中两种编辑器都拥有忠实的追随者。本指南将深入探讨每款编辑器的功能、独特功能以及它们之间的区别。

Vim 是什么?

Vim(Vi IMproved 的缩写)是原始 Vi 文本编辑器的高级版,功能丰富,长期以来一直是 UNIX 环境中的主流工具。它功能强大,可在多个平台上运行,包括 Unix 系统、Windows 和 macOS。如果您使用的是 Linux 发行版或 macOS,则很可能已预装 Vim。

如果不存在,您可以通过包管理器快速安装。例如,在 Ubuntu 上,只需执行:

sudo apt install vim

在终端中输入vim来启动 Vim。

从 Ubuntu 终端启动 Vim。

Vim 采用模态编辑系统,让您无需鼠标即可管理文件、编辑文本、保存工作并执行众多任务。您可以通过配置文件自定义 Vim 的几乎所有功能,使其适合您的工作流程。然而,初学者可能会觉得它难以掌握,有些用户甚至连退出编辑器等基本命令都难以掌握!

Neovim 是什么?

Neovim 于 2014 年作为 Vim 的一个分支诞生,旨在增强 Vim 的底层架构,同时保留其备受喜爱的模态编辑功能。作为 Vim 的直接替代品,您可以继续在 Neovim 中使用现有的“.vimrc”配置文件。

从功能上讲,Neovim 的基本操作与 Vim 几乎完全相同。然而,它更突出的功能包括异步处理,允许在后台执行任务而不会冻结编辑界面。此外,它还提供内置终端仿真,使用户能够直接在编辑器中执行 Shell 命令。

Neovim 未预装,但安装仍然很简单。在 Ubuntu 上,运行:

sudo apt install neovim

在 Ubuntu 上安装 Neovim

使用nvim命令启动 Neovim ,并输入 来熟悉编辑器,利用其内置教程:Tutor

从 Ubuntu 终端启动 Neovim

Vim 和 Neovim 之间的主要区别

尽管有相似之处,但与 Vim 相比,Neovim 提供了更现代、更简化的体验。

Neovim 的一项重大改进在于其架构,旨在提升可维护性和模块化。这有利于快速演进,并促进开发者的贡献。增强的设计也带来了卓越的性能和可靠性。在 Vim 保持稳健的同时,Neovim 的开发也更具前瞻性,对开发者更加友好。

Neovim 指南选项

Neovim 的异步处理意味着自动完成、linting 或加载大型项目等任务可以在后台进行,从而保持您的编辑界面响应。

值得注意的是,Neovim 对插件的支持比 Vim 更高效。Vim 使用 Vimscript,这可能会带来一些限制,而 Neovim 则采用了 Lua,这是一种轻量级脚本语言,可以增强插件开发。这使得 Neovim 的功能显著增强,例如 和 等插件telescope.nvimnvim-treesitter搜索和语法高亮方面的表现远超 Vim。

Neovim 的配置管理功能也得到了提升,遵循了 XDG 基础目录规范。Neovim 不再使用传统的 “~/.vim” 目录,而是将配置和插件组织在 “~/.config/nvim” 下,在保持与 Vim 配置兼容的同时,为你的设置提供了结构化。

虽然两种编辑器都提供了基于终端的用户界面,但 Neovim 通过内置终端模拟器增强了此功能,并且支持 Oni、Goneovim 和 VimR 等现代 GUI。

Vim 和 Neovim 的优缺点

了解每个编辑器的优缺点将帮助您做出明智的决定,选择最适合您需求的编辑器。

我来这里是为了以下目的

  • 广泛预装在众多 Linux 系统上
  • 成熟的代码库,高度稳定
  • 强大的社区支持和丰富的资源
  • 高效的性能,尤其是在低资源环境中

Vim 缺点

  • 新手的初始学习曲线陡峭
  • 复杂的插件管理可能具有挑战性
  • 适应现代功能并不那么简单
  • 缺乏对语言服务器协议(LSP)的固有支持

Neovim 优点

  • 提供卓越的性能和响应能力
  • 内置对语言服务器协议的支持,增强编码任务
  • 利用 Lua 脚本优化插件开发
  • 简化且更精简的插件管理
  • 更合理的可用性默认设置
  • 具有内置终端仿真器,更加方便

Neovim缺点

  • 在大多数系统上默认安装的情况并不常见
  • 一些使用 Vim 特定功能的插件可能需要调整
  • 较旧的 Vim 插件可能会遇到兼容性问题
  • 根据使用情况,可能需要稍微多一点的资源
  • 学习 Lua 进行配置可能会成为额外的障碍

您应该使用哪一个:Neovim 还是 Vim?

Vim 和 Neovim 之间的最终选择很大程度上取决于您的工作流程、使用舒适度以及对编辑器的具体要求。如果您经常跨系统操作,并且无法安装其他软件,那么 Vim 将是您的首选,因为它非常普及。对于那些喜欢轻量级、稳定的解决方案,并且已经投入大量时间配置 Vim 的用户来说,它也是理想之选。

相反,如果您寻求功能增强的现代编辑环境,那么 Neovim 是您的最佳选择。它拥有合理的默认设置、活跃的支持社区以及内置 LSP 和 Lua 脚本等高级功能,使其成为寻求更多扩展功能的开发者的首选。对于模态编辑新手来说,Neovim 的用户友好设置可以帮助您轻松上手。

最后的想法

Vim 和 Neovim 的核心功能相似,但 Neovim 提供了现代化的编辑体验,展现了更佳的性能、更简化的插件开发以及 LSP 集成。这些增强功能使 Neovim 成为寻求动态编辑器的开发者的理想之选。

相当多的开发者同时使用这两种编辑器——Neovim 用于本地项目,Vim 用于在远程服务器上快速调整。我个人更喜欢 Vim,因为它可靠,并且对各种 Linux 发行版都提供广泛的支持。

两款编辑器在技巧和按键绑定方面有很多相似之处,这意味着掌握其中一种编辑器会极大地提升另一种编辑器的熟练程度。Linux 的丰富性源于其丰富的编辑器选择,能够满足每位用户的独特偏好。

常见问题

1. Vim 和 Neovim 主要区别是什么?

Neovim 在 Vim 的基础上进行了改进,提供了更现代化的架构、支持异步进程、内置终端仿真器以及用于插件开发的 Lua 语言。Vim 已预装在大多数系统上,而 Neovim 则需要手动安装。

2.我可以将现有的 Vim 配置与 Neovim 一起使用吗?

是的,Neovim 旨在替代 Vim,允许您使用现有的“.vimrc”配置文件,只需进行最少的调整。

3.哪个编辑器更适合初学者?

对于初学者来说,Neovim 可能是更好的选择,因为它拥有用户友好的默认设置和内置教程。然而,鉴于 Vim 在各个系统中的普及程度,学习它的基础知识也会大有裨益。

来源和图片

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注