编程与软件工程kakoune.org
为什么选择 Kakoune——寻找更好的代码编辑器
Why Kakoune – The quest for a better code editor
2016 — 2018,它一次次回到首页
黑点是上首页(≥ 50 分)的那次投稿,空心点是没冲上去的投稿,点越大分数越高。
导读
这是 Kakoune 编辑器的“Why Kakoune”页面,作者主张用更一致、更容易发现的设计来改进 Vim 的模态编辑模型,例如采用“对象后接动词”的命令语法,从而减少按键并降低学习曲线。页面本质上是在论证:Kakoune 能在保留高效编辑的同时,提供比 Vim 更清晰、更可预测的交互方式。
为什么经久不衰:它把 Vim 式模态编辑重新设计得更一致,并引出关于学习成本、编辑器范式差异和生态锁定的长期讨论,因此多年后仍值得一读。
HN 评论精选
转述原文的核心卖点:更一致的模型、更少按键和更低学习曲线,同时声明这不是自己的观点。
如果你想知道为什么选 Kakoune 而不是 Vim,楼主声称……(以下段落出现在他文章后面,不代表我的观点)> Kakoune 的一个设计目标是在 Vim 擅长的领域击败 Vim,同时提供更干净的编辑模型。> Kakoune 在大多数情况下能用更符合习惯的命令,在按键数上胜过 Vim。> Kakoune 提供高效的代码编辑环境,既非常可预测、因而可脚本化,又非常交互。得益于更一致的设计和很强的可发现性,它的学习曲线比 Vim 容易得多,同时在多数场景下仍然更快(也就是按键更少)。
greenspot查看英文原文
If you are wondering why Kakoune and not Vim, the OP claims... (you find following passages later in his post and they don't reflect my opinion) > A design goal of Kakoune is to beat vim at its own game, while providing a cleaner editing model. > Kakoune manages to beat Vim at the keystroke count game in most cases, using much more idiomatic commands. > Kakoune provides an efficient code editing environment, both very predictible, hence scriptable, and very interactive. Its learning curve is considerably easier than Vim thanks to a more consistent design associated with strong discoverability, while still being faster (as in less keystrokes) in most use cases.
经典编辑器学习成本高、上手期生产力下降,是否值得投入仍是常见疑问。
这看起来很赞(不过我觉得名字可以再改改)。这也让我想问 HN:每隔几年,我都会尝试学 Vim 或 Emacs 这类经典编辑器,但写代码时生产力骤降,最后总是放弃。我就是练不出肌肉记忆,海量自定义选项也让我沮丧。最烦的是我其实想学,因为觉得学会后会喜欢。学过的人能分享点建议吗?另外,值得吗?
ncd查看英文原文
This looks awesome (although I think the name could use a little work). It also brings up a question I have for HN: Every few years, I make an attempt to learn to use one of the classic editors like vim or emacs, and inevitably give up after the enormous productivity drop I suffer when writing code. I just can't seem to pick up the muscle memory required to become fast with these tools, and the overwhelming array of customization options leaves me frustrated. The most annoying thing is that I want to learn one of these, because I think I'll enjoy it once I do. Any suggestions from people who have picked one up on how to accomplish this seemingly Herculean task? And, I suppose, I have another another question: is it worth it?
Emacs 的非模态范式更贴近现代 IDE,而改良 Vim 很难弥合两种编辑范式之间的鸿沟。
作为 Emacs 用户有个好处(别急,我确实要谈 Vim):它的概念(尤其是非模态编辑)和快捷键能很好地映射到新 IDE。我整天在 IntelliJ 和 Emacs 之间切换,只需在 IntelliJ 偏好里选 Emacs 键位。Eclipse 和 Visual Studio 也一样。Emacs 范式比 Vim 范式更接近现代 IDE,所以来回切换容易得多。做一个更好的 Vim 是不错的目标,但除非对 Vim 范式做根本改变,否则我看不出它如何弥合 Vim 与现代编辑器/IDE 的差距;可那样它就不是更好的 Vim,而是 Vim 用户可能不喜欢的东西。我怀疑 Vim 和现代编辑器/IDE 注定永远分道扬镳。
twblalock查看英文原文
One of the nice things about being an Emacs user (hang in there, I have a real point about Vim to make) is that the concepts (especially non-modal editing) and the keyboard shortcuts map well to newer IDEs. I switch between IntelliJ and Emacs all day, and all I had to do to become comfortable is choose the Emacs keyboard preset in the IntelliJ preferences. The same is true for Eclipse and Visual Studio. The Emacs paradigm is a lot more similar to contemporary IDEs than the Vim paradigm, and that makes it a lot easier to switch back and forth. While a better Vim is a nice goal, I don't see how it will bridge the gap between Vim and newer editors/IDEs unless it includes some fairly fundamental changes to the Vim paradigm. But then it wouldn't be a better Vim -- it would be something different enough that Vim users probably wouldn't like it. I suspect that Vim and modern editors/IDEs are doomed to remain divergent forever.
Kakoune 的模型易理解且令人向往,但生态普及远不及 Vim。
我以前试过这个编辑器,立刻就能理解它的模态编辑模型。一旦懂了,就很难不希望 Vim 也这样工作。问题是 Vim 无处不在,而 Kakoune 不是。:(
jchw查看英文原文
I tried this editor a while ago and immediately was able to understand their model for modal editing. Once you've gotten it, it's hard to not wish vim worked this way. The problem is, vim is everywhere, and Kakoune isn't. :(
历次讨论
同类还值得读
开源应用架构
The Architecture of Open Source Applications
《开源软件架构》(AOSA)是一本在线免费书,邀请知名开源项目的作者亲自剖析其内部设计,涵盖 SQLAlchemy、LLVM、Audacity、Apache、Bash 等系统。
编程与软件工程上首页 9 次 · 2011–2024aosabook.org编辑精选编程语言简史:简短、不完整且多半错误
A Brief, Incomplete, and Mostly Wrong History of Programming Languages
一篇以戏谑、故意不准确的方式回顾编程语言史的博客文章,用夸张轶事和讽刺定义串起 Lisp、C、C++、Java、JavaScript、PHP 等语言。
编程与软件工程上首页 8 次 · 2009–2021james-iry.blogspot.comSQLite 是如何测试的
How SQLite is tested
SQLite 官方文档页,系统介绍 SQLite 的测试体系:多种测试方法(TCL 测试、模糊测试、回归测试、静态分析等)和海量测试用例,展示了这个小型开源项目如何靠极致测试获得…
编程与软件工程上首页 8 次 · 2009–2025sqlite.org编辑精选高级编程语言(2009)
Advanced programming languages (2009)
Matt Might 的经典文章,按用途推荐“高级编程语言”:如果追求就业就选主流语言,如果追求表达力、学术研究或创业,则推荐 Haskell、OCaml、Scala 等函数式语…
编程与软件工程上首页 8 次 · 2009–2022matt.might.net我的 Forth 与栈机器经历
Yosefk - My history with Forth & stack machines
作者以亲身经历回顾了使用 Forth 语言和栈式机器的历程:既赞叹其简洁优雅、代码量小、可自举的优点,也坦率指出栈操作在实际编程中的痛苦,以及 Forth 社区文化中的问题。
编程与软件工程上首页 8 次 · 2010–2024yosefk.com编辑精选