【问题标题】:Screen + vim causes shift-enter to insert 'M' and a newlineScreen + vim 导致 shift-enter 插入 'M' 和换行符
【发布时间】:2008-09-15 14:24:36
【问题描述】:

当在 gnu 屏幕中运行 vim 实例时,在插入模式下按 shift enter 会添加一个“M”,然后是一个换行符,而不仅仅是一个换行符。

有人知道问题可能出在哪里,或者去哪里寻找吗?

相关系统信息:

Ubuntu 8.04.1

屏幕版本 4.00.03 (FAU) 23-Oct-06

VIM - Vi IMproved 7.1(2007 年 5 月 12 日,2008 年 1 月 31 日 12:20:21 编译) 包含的补丁:1-138

Konsole 1.6.6(使用 KDE 3.5.10)

感谢 cmets。检查$TERM 的值时,我注意到它是xterm(如预期的那样),但在屏幕内$TERM 被设置为screen-bce。启动屏幕后设置TERM=xterm 可解决此问题。

将以下内容添加到~/.screenrc 即可解决问题,而无需手动执行任何操作:

术语 xterm

【问题讨论】:

  • 你可能想指定你的终端设置,因为我认为这可能是问题
  • 你完全正确。我没有注意到在我的屏幕会话中 $TERM(通常是 xterm)被设置为 screen-bce。

标签: vim ide editor gnu-screen


【解决方案1】:

您的问题中缺少信息:

  1. 您在哪里运行屏幕并看到此问题?一些终端应用程序(KTerminal、Gnome 终端、虚拟控制台等)或远程会话(例如 putty、来自另一台计算机的 ssh)
  2. 执行“echo $TERM”并告诉我们它的输出
  3. 执行“cat -v”,按 Shift-Enter,然后按 Enter,然后按 Ctrl-D,然后告诉我们输出什么。

【讨论】:

  • cat -v 关心扩展这个小宝藏吗?
  • cat -v 将以可读的格式显示控制代码。在这种情况下,如果他的终端在按下 Shift-Enter 时输出控制码,就会显示出来。
【解决方案2】:

首先,您可以在 konsole 中修复您的 $TERM。安装“ncurses-term”并配置 konsole 以设置 $TERM=konsole-256color。然后使用“term screen-256color”配置屏幕。或“konsole”和“screen”,如果这是您的偏好。 Konsole 和 screen 不是 xterm 并且不支持 xterm 所做的一切,因此使用不正确的 $TERM 可能会导致坏事。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-24
    • 2023-03-13
    • 2011-08-21
    • 2013-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多