ubuntu 启动后Vim命令行中出现奇怪符号

epfja78i  于 2023-10-17  发布在  其他
关注(0)|答案(2)|浏览(207)

我用的是Kubuntu 15.10,konsole和Vim。当我最初在konsole中启动Vim时,我得到奇怪的符号(“115; 0 c”)在我的命令行中,这真的很烦人。
我尝试了“set term=konsole”设置在我的.vimrc,但我得到了这个

  1. E558: Terminal entry not found in terminfo
  2. 'konsole' not known. Available builtin terminals are:
  3. builtin_gui
  4. builtin_amiga
  5. builtin_beos-ansi
  6. builtin_ansi
  7. builtin_pcansi
  8. builtin_win32
  9. builtin_vt320
  10. builtin_vt52
  11. builtin_xterm
  12. builtin_iris-ansi
  13. builtin_debug
  14. builtin_dumb
  15. defaulting to 'ansi'

但所有这些选项都很烦人,因为我在关闭退出Vim后得到了“trace”。
有人有同样的问题吗?我很感激任何帮助。

ezykj2lf

ezykj2lf1#

这通常表示TERM环境变量设置不正确--当vim启动时,它会根据TERM设置生成许多终端配置命令来配置终端。如果TERM设置错误,可能会生成一个错误的设置字符串,显示如下。
对于konsole窗口,TERM应设置为konsole

lzfw57am

lzfw57am2#

问题是konsole假装是xterm,迷惑了Vim。这个“115; 0 c”(由konsole的开发者设计)看起来像是对xterm的辅助设备响应的响应。特别是,konsole假装是xterm补丁#115,通过发送以下响应:

  • 逃生 * [x 1 m1n1xx 1 m2n1xx 1 m3n1xx 1 m4n1xx 1 m5n1xx 1 m6n1xx 1 m7n1xx 1 m8n1x

konsole,像所有的xterm-wannbes一样,在影响任何使用terminfo的应用程序的方式上与xterm不同(这当然是一个常见问题)。
实际代码:

  1. void Vt102Emulation::reportSecondaryAttributes()
  2. {
  3. // Secondary device attribute response (Request was: ^[[>0c or ^[[>c)
  4. if (getMode(MODE_Ansi)) {
  5. sendString("\033[>1;115;0c"); // Why 115? ;)
  6. } else {
  7. sendString("\033/Z"); // FIXME I don't think VT52 knows about it but kept for
  8. }
  9. // konsoles backward compatibility.
  10. }

可以追溯到这个commit:

  1. commit 2d93fed82aa27e89c9d7301d09d2e24e4fa4416d
  2. Author: Waldo Bastian <[email protected]>
  3. Date: Sat Sep 15 21:21:44 2001 +0000
  4. proper impl. of primary/secondary device attributes (DA)
  5. Patch by Achim Bohnet <[email protected]>
  6. svn path=/trunk/kdebase/konsole/; revision=114396
  7. diff --git a/konsole/TEmuVt102.cpp b/konsole/TEmuVt102.cp

在可选的ncurses-term包中有一个“konsole”条目(参见源代码)。这需要几兆字节。所需的ncurses-base封装要小得多:
这个软件包包含了终端数据文件来支持最常见的终端类型,包括ansi,dumb,linux,rxvt,screen,sun,vt 100,vt 102,vt 220,vt 52和xterm。
这有点奇怪,因为在过去的20年里,很少有人真正使用ansi,sun或vt 52,除非是偶然或听从不好的建议。

展开查看全部

相关问题