Neovim 是久负盛名的文本编辑器 vim 的一个分支,专注于可扩展性和可用性。它不是重写,而是 Vim 的延续和扩展。存在许多克隆和衍生产品,其中一些非常巧妙,但没有一个是 Vim。Neovim 是为希望使用 Vim 的优点以及更多功能的用户而构建的。有关差异列表,请参见 :help vim-differences。
如果您有兴趣为 Neovim 做出贡献,请访问 github 页面 获取详细信息。我们拥有出色的测试套件和自动化 CI,因此您可以直接参与并尝试。不要害怕打开 PR 以获取评论或仅仅利用基础设施的优势!
要与团队联系,请加入 gitter 频道(也可以通过 IRC 访问),或访问 Neovim 子reddit,许多开发人员都会阅读该子reddit。参与对话也是一种贡献!
上一次新闻稿 涵盖了 Neovim v0.3.0 的发布,现在是时候用自那以后最令人兴奋的 Neovim 版本:v0.4.4 来做同样的事情了!
Neovim 开始为与 xterm 兼容的终端检测终端的背景颜色 (@joshtriplett, #9509)
'fillchars'
设置现在具有 eob
选项,允许用户配置用于表示缓冲区末尾后的行的字符(以前硬编码为 ~
)(@FriedSock, #8546)
F
已添加到默认的 'shortmess'
选项中,并且已删除 S
(@justinmk, #8619, #10136)
CursorLine
类型现在将更智能:如果其前景色未设置,CursorLine
的文本将使用 CursorLine
的背景颜色和默认语法突出显示颜色作为前景色 (@zhou13, #8578).
Neovim 的 'background'
设置现在默认设置为 dark
,以便在跨平台获得一致的设置 (@justinmk, #9205).
Vim 的 TermDebug 插件已移植到 neovim (@kwon-young, #8364).
现在可以使用 wildoptions=pum
将通配符菜单变成弹出菜单 (@bfredl, #9607)。事实上,这是默认设置!
当 UI 连接到和断开 Neovim 时,现在会触发两个事件:UIEnter 和 UILeave (@equalsraf, #6917).
当进入/离开终端时,也会触发 TermEnter
和 TermLeave
自动命令 (usama54321, #8550).
nvim_buf_get_offset
:返回行的字节偏移量 (@bfredl, #9180)nvim_buf_is_loaded
:检查缓冲区是否已加载 (@phodge, #7688).nvim_create_buf
:创建新缓冲区 (@bredl, #9272)nvim_get_context
/nvim_load_context
:探索和恢复编辑器的状态 (@justinmk, #10619.nvim_input_mouse
:执行鼠标操作 (@bfredl, #9429).nvim_open_win
:创建浮动外部窗口nvim_set_keymap
:为模式设置全局映射 (@yilin-yang, #9224).nvim_win_close
:关闭窗口 (@bfredl, #9667).nvim_win_set_buf
:设置窗口的当前缓冲区 (@justinmk, #9100)nvim_win_set_config
:配置窗口的布局 (@mhinz, #9626).Neovim 现在始终等待 UI,除非也提供 –headless,否则使用 –embed 启动 (@bfredl, #9024).
vim.loop
(@zhaozg, @andreypopp, #10123).Neovim 贡献者一直在努力工作,并为 v0.5.0 添加了许多新功能,例如用 Lua 编写的 LSP 客户端 和 TreeSitter 集成。下一个 Neovim 版本有望令人着迷!
相关项目 的 wiki 页面是一个不断增长的项目列表,这些项目以某种方式利用了 Neovim 的扩展功能。以下是自上一次新闻稿以来的新增内容概览
以下插件已找到进入我们 wiki 的方法
大量新的 API 客户端
python 客户端也已重命名为“pynvim”。
也许 2018/2019 年不是 Linux 桌面的年头,但它们一定是 Neovim GUI 的年头
一些专门讨论 Neovim 相关事物的文章
自上次通讯以来的更改行
git log v0.3.0..v0.4.4 --numstat --pretty=tformat: --numstat | nawk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s removed lines: %s total lines: %s\n", add, subs, loc }'
added lines: 168844 removed lines: 75466 total lines: 93378
合并的提交
git log v0.3.0..v0.4.4 --pretty=oneline | wc -l
3477
不同的提交作者
git shortlog -e -s -n v0.3.0..v0.4.4 | wc -l
164
文档变更
git log v0.3.0..v0.4.4 --numstat --pretty=tformat: --numstat runtime/doc | nawk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s removed lines: %s total lines: %s\n", add, subs, loc }'
added lines: 9226 removed lines: 7002 total lines: 2224
感谢贡献者、赞助商、错误报告者和支持者。请注意,您现在可以通过 github Sponsors 或 OpenCollective 赞助 neovim。感谢 @justinmk 的精彩项目,并感谢 @brammool 的基础工作。
Neovim 是一款基于 Vim 的文本编辑器,旨在实现 可扩展性 和 可用性,以鼓励新应用和 贡献。
访问 #neovim:matrix.org 或 irc.libera.chat 上的 #neovim 与团队聊天。