我最近开始遇到 Neovim 的一个奇怪问题,其中随机字符在我的 session 中打印。当我在插入模式下按 Space
时,可以复制此内容,如下所示。这些字符在正常模式下消失。
此外,退出 session 后,终端上会打印出一些字符。
我猜测这个问题与字符编码有关,并且由于溢出而打印了随机字符,但我不确定。 如果我使用其他终端模拟器,似乎没有问题(我已经用 gnome-terminal 尝试过,一切似乎都工作正常)。
我的系统中 locale
命令的输出 -
LANG=en_IN
LANGUAGE=en_IN:en
LC_CTYPE="en_IN.UTF-8"
LC_NUMERIC="en_IN.UTF-8"
LC_TIME="en_IN.UTF-8"
LC_COLLATE="en_IN.UTF-8"
LC_MONETARY="en_IN.UTF-8"
LC_MESSAGES="en_IN.UTF-8"
LC_PAPER="en_IN.UTF-8"
LC_NAME="en_IN.UTF-8"
LC_ADDRESS="en_IN.UTF-8"
LC_TELEPHONE="en_IN.UTF-8"
LC_MEASUREMENT="en_IN.UTF-8"
LC_IDENTIFICATION="en_IN.UTF-8"
LC_ALL=en_IN.UTF-8
我目前正在使用terminator使用默认编码 - Unicode UTF-8
。我的终结者配置文件可用 here .
我尝试过更改编码,但似乎没有解决问题。任何帮助将不胜感激。
最佳答案
来自Neovim FAQ :
This is a bug in your terminal emulator. It happens because Nvim sends cursor-shape termcodes by default, if the terminal appears to be xterm-compatible (
TERM=xterm-256color
).To workaround the issue, you can:
- Use a different terminal emulator
- Disable
guicursor
in your Nvim config::set guicursor= " Workaround some broken plugins which set guicursor indiscriminately. :autocmd OptionSet guicursor noautocmd set guicursor=
See also
:help $TERM
for recommended values of$TERM
.
关于character-encoding - 在 neovim 缓冲区中打印随机字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42117981/