Composiphrase:像 Vim 一样可组合的编辑语言,但更甚于此

主要观点:

  • 介绍了 Composiphrase 这一可组合文本编辑系统,它借鉴了 Vi 和 Vim 的一些理念,如可组合性和语言特性,并在此基础上进行了扩展和改进。
  • 对比了 Vim 的文本对象选择机制,指出其存在一些不足之处,如不同的移动操作需要不同的绑定,缺乏从较小部分构建较大事物的组合性。
  • 阐述了 Composiphrase 如何通过将组合语言与键分离,实现更灵活的操作和组合,以及如何通过配置动词、对象和匹配规范来扩展编辑功能。
  • 讨论了 Composiphrase 的一些特点和优势,如易于记忆绑定、提高操作效率、支持多种语言语法等,同时也承认系统存在一些限制和不足之处。

关键信息:

  • Vi 和 Vim 中“可组合文本编辑语言”的概念,如dw删除一个单词,4dw删除 4 个单词等。
  • Vim 的文本对象,如w移动到下一个单词,i选择内部,a选择周围等,但存在一些不一致性。
  • Composiphrase 通过将单个键操作分解为多个部分,如w变为move forward beginning word execute,并可以重新组合,实现更灵活的编辑。
  • Composiphrase 可以通过配置来添加新的动词、对象和匹配规范,以适应不同的操作需求。
  • 系统存在一些限制,如部分操作尚未实现、测试不足等,但作者仍在使用并希望与他人分享和交流。

重要细节:

  • Composiphrase 实现了一个小库,用于进行可组合的、模态的编辑,包括各种库和配置,如用于缩进树移动、包装 smartparens 等。
  • 演示了 Composiphrase 的一些操作,如transpose、slurp/barf、join、open line 等,并指出部分操作尚未实现或需要进一步优化。
  • 讨论了 Composiphrase 的一些可能的改进方向,如考虑上下文感知的绑定、重新考虑操作顺序等。
  • 强调了 Composiphrase 系统的灵活性和可扩展性,以及作者对它的喜爱和使用体验。
阅读 9
0 条评论