Release 22.08 Highlights
Helix 是一款模态文本编辑器,内置支持多重选择、 语言服务器协议 (LSP)、tree-sitter,并实验性地支持调试适配器协议 (DAP)。
今天发布的是 22.08 版本,该版本包含大量修复和新功能。 非常感谢所有贡献者!本次版本共有 87 位贡献者。🎉
让我们来看看 22.08 版本的一些亮点功能。
缩进指南
缩进辅助线可以直观地显示当前的缩进级别。您可以通过 editor.indent-guides.render 键启用缩进辅助线。
用于显示辅助线的字符也可以自定义。
光标线
光标线是一条跟随光标的水平高亮条。
可以为主光标和所有辅助光标设置光标线的主题,
并且可以使用 editor.cursorline 选项独立于主题设置来启用或禁用光标线。
模式颜色
状态栏中的模式指示器现在可以根据当前模式进行样式设置。此功能可以通过 editor.color-modes
选项启用,并且可以使用主题中的 ui.statusline.{insert,normal,select} 键配置颜色。
可配置的状态栏
现在可以在配置文件的 editor.statusline 部分配置状态栏。元素可以放置在状态栏的左侧、中间或右侧,
并可配置分隔符和间距。此外,还可以向状态栏添加两个新元素:file-line-ending 和 position-percentage。
LSP signature help
Signature help 功能会在您输入函数调用参数时提供文档说明,并跟踪当前正在输入的函数参数。签名帮助功能默认启用。
LSP 文档高亮显示
文档高亮显示请求(Space-h)会选中主光标下方符号的所有实例。Helix 对多重选择提供了强大的支持,
因此您可以同时编辑所有选中的内容(例如使用 c 命令),或者在不同的选中项之间切换(使用 / 命令)。
LSP 诊断选择器
新的缓冲区和工作区诊断选择器可用于跳转到语言服务器提供的诊断信息,例如警告和错误。使用 Space-g
打开当前缓冲区的诊断信息选择器,使用 Space-G 查看工作区中的所有诊断信息。
跳转列表选择器
跳转列表会保存选择历史记录。使用 C-s 保存选择,使用 C-i 向前跳转,使用 C-o 向后跳转。
跳转列表是一个强大的工具,尤其是在使用语言服务器的“跳转到定义”功能或全局搜索功能时,这两个功
能都会自动将结果保存到跳转列表中。
22.08 版本新增了一个选择器,可用于在跳转列表中的条目之间跳转。预览窗格会显示已保存的主要选择
所在行的内容。使用 Space-j 调出跳转列表选择器。
外部格式化程序
许多语言服务器都提供保存时自动格式化功能。对于没有语言服务器的语言,或者对于未实现格式化功能的 语言服务器,现在可以配置外部格式化程序。文档内容将通过标准输入传递给格式化程序,并用格式化程序 从标准输出返回的格式化结果替换。
如果您更喜欢使用外部工具提供的格式化功能,而不是语言服务器提供的格式化功能,也可以使用外部格式
化程序。例如,如果您配置使用 black 来格式化 Python 代码,那么格式化将由 black 完成,
而不是 pylsp。
Bracketed paste
带括号粘贴是终端模拟器的一项功能,它允许终端程序识别粘贴序列并处理粘贴的文本。如果没有带括号粘
贴的支持,使用操作系统级别的粘贴功能(Ctrl+v)粘贴的文本在 Helix 中看起来就像是快速输入的
文本,这会导致一些奇怪的副作用,例如缩进异常或莫名其妙地出现自动匹配的字符。
22.08 版本添加了对带括号粘贴的支持,因此现在所有从支持带括号粘贴的终端模拟器粘贴到 Helix 的
文本都将像在普通模式下按下 Space+p 一样工作。在上面的示例中,整本《白鲸记》的文本都可以通
过在插入模式下按下 Ctrl+v 瞬间粘贴进去。
总结
以上仅为部分重要更新。请查看完整的更新日志,了解自 22.05 版本以来所有更改。 发布版本二进制文件可在[发布页面]找到。
敬请期待 10 月份发布的 Helix 22.10 版本带来的更多精彩更新! 欢迎访问 Helix GitHub 仓库 参与贡献并关注开发进展, 也欢迎加入 Matrix 频道 参与讨论。