[ 更新于 2022 年 9 月 28 日 15:44 ]
距推出 Vim 8.1 已过去一年多,Vim 8.2 也终于在近日发布了。除了修复错误、更新文档和改进测试覆盖率等常规更新外,此版本还带来了一些有趣的新功能。
Vim 开发团队的成员表示,在去年的 VimConf 2018 做主题演讲之前,他向 Vim 插件开发者询问了他们对 Vim 的功能需求。
其中 “弹出窗口(Popup Windows)” 和 “文本属性(Text Properties)” 这两项呼声最大。经过一年多的开发,这两个新功能已顺利实现。
先简单介绍一下 “弹出窗口”,这是 Vim 8.2 新引入的概念,此功能的正式名称为”Popup Windows”,用于在正在编辑的窗口的最前方显示文本(消息框、函数原型、代码片段以及其他信息),而且显示的位置也非常灵活:它们可以相对于文本定位在绝对位置或仅在屏幕中间。
窗口的大小可以修改,并调整以适应文本。设置”zindex” 值就能指定 popup window 在其他窗口前面。
另一项同样重要的新功能是 “文本属性(Text Properties)”,用于处理语法高亮显示等特性,而不是使用基于模式的高亮显示。


▲新功能使用截图,图片来自 Linux 公社
为了介绍 Popup Windows 和 Text Properties 这两个新功能,Vim 团队的开发者还写了一个小游戏 Killersheep(已开源) 来进行展示。

其他值得关注的新功能:
- “const” 命令,用于声明一个不能改变的变量:
const TIMER_DELAY = 400
- 用于方法调用的函数链:
mylist->filter(filterexpr)->map(mapexpr)->sort()->join()
- 通过指派 Heredoc 样式,可以轻松地将行列表指派给变量,而无需引用或 line continuation:
let lines =<< trim END line one line two END
- 为 Windows 10 添加了 ConPTY 支持,可以在控制台中显示全彩色
详细更新内容请查看 https://www.vim.org/vim-8.2-released.php
原文出处:综合,如若转载,须获得稿源授权。