Vim 8.2 發布帶來彈出窗口與文本屬性兩大新功能
距推出 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”命令,用於聲明一個不能改變的變量:
constTIMER_DELAY = 400
- 用於方法調用的函數鏈
mylist->filter(filterexpr)->map(mapexpr)->sort()->join()
- 通過指派Heredoc 樣式,可以輕鬆地將行列表指派給變量,而無需引用或line continuation:
letlines =<< trim ENDlineonelinetwoEND
- 為Windows 10 添加了ConPTY 支持,可以在控制台中顯示全彩色
詳細更新內容請查看 https://www.vim.org/vim-8.2-released.php