文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

开发人员为什么更喜欢 NeoVim 而不是 Vim

2024-12-13 16:20

关注

Vim 是经验丰富的系统管理员的绝佳选择。然而,NeoVim 在开发人员中聚集了大量追随者。

想知道为什么更多的开发人员选择 NeoVim 而不是 Vim?作为一名热心的 NeoVim 用户,我可以想到以下原因。

1、项目维护和功能改进

你可能想知道“Vim 如此流行,尤其是因为‘我已经无法退出 Vim 了’,Vim 将成为用户的首选。为什么有人会分叉 Vim 并冒着浪费开发时间呢?”

这个问题提的好。Vim 真的很受欢迎!但这并不意味着开发 Vim 的社区对项目本身的状态感到满意。

相关:Vim 9.0 重大更新,Linux 编辑器使用新的脚本语言 https://www.linuxmi.com/vim-9-0.html

Vim 目前的代码库存在两个问题:

2、代码自动完成(LSP)

LSP 或语言服务器协议是一种协议,它定义了编辑器如何与“语言服务器”通信以启用代码突出显示、语法检查、代码完成、嵌入提示、类型提示等选项。

无论您是多么优秀的开发人员,在编辑器中获得类型提示、错误突出显示等功能都可能不会让您成为更好的开发人员。尽管如此,它无疑会减少您的开发和/或调试时间。

Neovim 附带了对 LSP 的开箱即用支持,并使用 Lua 进行进一步配置。然而,Vim 需要一个外部插件来实现这个功能。

3、支持更好的插件

插件是插入现有事物并为其添加新功能的东西。在这种情况下,编辑器插件是插入编辑器并提供更多功能的东西。

Vim 已经拥有丰富的插件支持和生态系统,以至于有专为 Vim 设计的插件管理器!

但是 Neovim 通过允许插件使用“更通用的语言”在 Lua 中编写插件来超越 Vim 。并不是说 Vim 的内置语言不好,而是如果您想要类似 IDE 的功能,设置会变得很复杂。而且,对于实际的编程语言,这种配置比 Vim 更容易。

这意味着您甚至可以扩展或修改核心的 Neovim功能。

这是Neovim 专用的插件列表,因为 Vim 不提供类似级别的可扩展性。

4、并行启动

我在上面讨论过,Neovim 使用 Lua 作为插件配置的可选但附加的语言。但是你知道 Neovim 并行启动每个插件吗?

这应该会让你感觉使用 Neovim 更快,特别是如果你有需要几秒钟初始化的插件!

5、能够嵌入编辑器

由于 Neovim 编辑器的代码库比 Vim 更容易维护,将核心编辑器嵌入到其他东西中的可能性成为现实。

你现在终于可以在 VS Code 中拥有一个好的编辑器😎

6、配置文件的位置

使用 Vim 后,当我需要将跨发行版迁移到新的不同 Linux 发行版时,我通常会忘记备份~/.vimrc​文件,因为它不在我的~/.config目录中。

大多数现代 Linux 应用程序都遵循称为 XDG(Cross Desktop Group)的标准。该标准定义了各种内容,但在本例中最重要的内容之一是应用程序加载其配置文件的位置。

该标准规定用户特定的配置文件应存储在~/.config​目录中。Neovim 坚持这一点,主要配置文件 ( init.nvim​) 存储在~/.config/nvim/目录中。

这是一个小问题,但在备份计算机上的重要文件时,它的重要性很高。

7、在 Neovim 中进行的优化

在我谈论优化之前,请注意这两个编辑器的速度都足够快,以至于在日常任务中都不会感觉比另一个更快。但我觉得有必要分享这个。

Neovim 对其如何响应用户命令进行了多项优化。例如,使用以下命令:

:g/<pattern>/d

如果您在 Vim 中执行上述命令,它将找到所有具有您指定的正则表达式模式的行并删除这些行。这不是Vim 要做的全部。该d密钥还将删除的文本复制到寄存器(剪贴板)。

这意味着,Vim 将执行以下操作:

如果不需要第 2 步,可以在 Vim 中使用以下命令:

:g/<pattern>/d _

上面的命令除了将行复制到寄存器之外,将执行所有操作,从而加快操作速度。假设您在 Neovim 中运行前面的命令(没有下划线)。在这种情况下,它会注意到您正在尝试删除多行,并将通过包含下划线自动“优化”它。

好处:更好的开箱即用配置

这有点个人意见,但如果你是 Vim 或 Neovim 的新手,我建议你从 Neovim 开始你的旅程。两个编辑器都可以配置,但 Neovim 有更好的默认值。

例如,Neovim 默认启用以下特性:

尽管随着 Vim 的更新版本,这可能会有所改变,因为这两个编辑器都在不断发展。

结论

Vim 的创建是为了改进现有的 Vi 编辑器。它代表 V 改进。同样,NeoVim 的创建是为了改进现有的 Vim 编辑器。它代表新 Vim。

自从我尝试并愉快地将我所有的 Vim 配置迁移到 Neovim以来,我已经成为 Vim 用户两年了。本文概述了为什么有人会选择 Neovim 而不是传统的 Vim。

来源:Linux迷内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯