【问题标题】:How can I benchmark editor productivity objectively?如何客观地对编辑器的生产力进行基准测试?
【发布时间】:2025-12-15 04:10:02
【问题描述】:

我不确定 Vim 是否比其他编辑器/IDE 更高效,例如 Eclipse。

但不知何故,我在使用 Vim 时获得了一种强大的感觉,并注意到尝试使用其他编辑器时遇到阻力。

示例:当我在其他编辑器中看到一些很酷的功能时,我会想“Vi 可以做到这一点(我只需要找到按键或配置插件)”

如何客观地衡量编辑器的工作效率?

我理想的编辑器是:Netbeans 功能集和易用性,但具有 SublimeText 的性能和漂亮的外观。

更新
Visual Studio Code 现在是我的主要代码编辑器。
Sublime Text 用于配置文件和快速编辑。
Vim 用于 ssh 会话或使用宏进行编辑.

【问题讨论】:

  • “标题”字段是针对您的问题。这不是您输入主题或临时评论的随机位置。请在以后将您的实际问题放在该字段中。
  • 我发现“Addicted to Vim”是一个更有趣的标题。但你是对的,所以我在描述中添加了“上瘾的主题”

标签: vim editor benchmarking


【解决方案1】:

如果您喜欢在 vim 中编写代码,那么仅此一项就是使用 vim 的一个很好的理由。

一个工具有什么好处可以让你的工作效率提高 2%(根据一些研究),但你不喜欢那么多?我告诉你,使用你喜欢的工具非常重要!

【讨论】:

    【解决方案2】:

    我也沉迷于 Vi 输入模型,我相信它会让我更有效率。

    当我使用其他一些编辑器时,我感到不舒服。当我使用 Visual Studio 时,我真的需要 ViEmu,在 Eclipse 中我使用 viPlugin,等等。

    前段时间我是 Emacs 用户,现在没有Viper 就无法使用。

    然而,当您无需考虑命令即可使用命令时,Vi 的工作效率就真正体现出来了。

    因此,无论您使用何种编辑器,为了获得真正的生产力提升,编辑器必须成为您的双手的延伸

    【讨论】:

    • 是的,幸运的是 IDE 确实为我们 Vim 上瘾者提供了住宿。
    【解决方案3】:

    我会说这些症状是你可能在 Vim 中更有效率的主观线索 - 对其他工具的挫败感可能是一个相当好的指标。

    我非常肯定地说,如果您对 Vim 的了解深入到对其他编辑器感到沮丧,那么切换所带来的任何生产力提升都可能非常小。

    【讨论】:

      【解决方案4】:

      要做到这一点客观地,你需要一些可衡量的东西。

      如果您有足够的空闲时间进行实验,我想您可以使用每个编辑器录制自己几个小时的视频,然后将您与每个编辑器花费的时间相加......

      【讨论】:

      • 但是结果仍然会严重偏向您最有经验的编辑器。
      【解决方案5】:

      为什么不尝试几种不同的编辑器,看看您是否可以注意到它们带来的任何生产力提升。如果您不选择最吸引您的那个,那么您将需要确定生产力的提升是否超过了您在使用 vim 时所感受到的快乐。

      您可能还想为不同的框架/语言考虑不同的编辑器。我在大部分 C 和 Perl 编程中使用 vim,为非平凡的 Java 应用程序使用不同的编辑器,以及在 Rails 中开发的另一个编辑器,我还没有找到一个万能的编辑器。

      【讨论】:

        【解决方案6】:

        我建议简单地测量您的实际输出:

        • 使用vim一周,测一下实际输出。将结果另存为V
        • 使用另一个编辑器一周并测量实际输出。将结果另存为E

        如果V E,那么另一个编辑器的工作效率更高,否则vim是你更好的选择。


        请注意,困难的部分是测量实际输出。例如,一周的代码总行数或diff 输出的大小可能是糟糕的方法。此外,可能会证明在第一周您编写了一些简单的代码,而在第二周您尝试修复一个非常困难的错误。因此,您可能实际上是在将一个工作周与另一个工作周进行基准测试,而不是一个编辑器与另一个编辑器进行基准测试。

        我想这归结为弄清楚你想要完成什么,然后尽可能地决定作为客观的衡量方法。然后衡量哪个编辑器得到更好的结果。

        我什至不会尝试测量实际的编辑器使用情况。一个非常高性能的编辑器可以实现为dd if=/dev/urandom bs=1M count=1 > code.cpp,但是变化很大,你的代码质量很糟糕。如果输出很好,没有人会关心你是如何发出它的。

        仅当您无法长时间实际使用编辑器时,才应计算实际的编辑器使用量;例如,如果编辑器经常需要在键盘和鼠标之间切换,您可能会遇到 RSI 问题,尽管在短期内该编辑器会提供最佳工作效率。

        【讨论】: