【问题标题】:Backspace in Terminal Vim (Cygwin)终端 Vim (Cygwin) 中的退格键
【发布时间】:2013-10-26 01:02:52
【问题描述】:

我在 Windows 8 上运行默认的 cygwin 安装,无法使用退格键删除字符 - 我希望退格时字符会被空白覆盖。

我试过了

set backspace=2 "
set backspace=indent,eol,start
:fixdel

似乎没有任何效果。

两者 :verbose imap <BS>:verbose imap ^H 返回 No mapping found

【问题讨论】:

  • Vim 是否会选择退格键?我使用:echo getchar() 作为此类事情的健全性检查。尝试运行该命令并在键盘上按一个键——空格或其他东西。您应该会出现一个数字(密钥代码)。如果你这样做并按退格键会发生什么?
  • 是的,光标确实向后移动。当您退出插入模式时,字符将从视图中删除。尝试 :echo getchar() 时出现以下错误“E319:抱歉,此版本中没有该命令”
  • 所以要清楚。我进入插入模式..输入 123456 ...按退格键 3 次。这会将光标向后移动 3 个空格。当我然后他的 ESC 退出插入模式时,字符 456 被删除.. 我希望它们在我处于插入模式时被删除。
  • 真正发生的是字符被删除,但您的 cygwin 终端没有刷新。真不知道怎么解决。不过,如果你使用 gvim,你应该没问题。
  • 谢谢,但是真的在寻找一个可以在 vim 中工作的解决方案。

标签: windows vim terminal cygwin


【解决方案1】:

将这些设置加在一起:

:set nocompatible
:set backspace=2

【讨论】:

    【解决方案2】:

    最近我在 Windows 7 上安装 Cygwin 时遇到了一个奇怪的行为。当按下退格键 Cygwin 时,将其解释为空格。

    幸运的是,这个问题很容易解决。最简单的方法(在测试时每次都不起作用)是简单地通过 setup.exe 重新安装 terminfo 和 termcap,如下所述:Backspace 在 Cygwin 中不起作用。如果您没有安装 termcap,请安装它,但请确保也正确重新安装 terminfo。充其量,这就是您需要做的所有事情来重新获得退格键。

    如果没有,您可能需要从主文件夹中删除 .bashrc,例如/cygwin/home/you/.bashrc。然后,只是为了确保再次重新安装 terminfo 和 termcap。这一直对我有用。

    享受你的退格吧:)

    【讨论】:

      【解决方案3】:

      在命令模式下,您是否考虑过只按大写“X”来代替退格键?这将删除左侧的一个字符,与您期望的退格行为非常相似。

      【讨论】:

        【解决方案4】:

        我遇到了同样的问题,使用退格无法擦除任何内容,当使用箭头按钮时,我得到了像 ABCD 这样的字符。

        我按照下面的链接创建了“.virc”来修复它,现在我可以使用它了。我删除了没有用的“.vimrc”。

        https://www.quora.com/How-do-I-fix-the-annoying-arrow-key-and-backspace-problem-in-Cygwin

        【讨论】:

          【解决方案5】:

          我刚刚自己解决了这个问题,我想我可能会给你一个正确的答案:

          type -a vim 
          

          这告诉我 vim 是 vi -N 的别名。如果你看到了,那就去你的 setup-x86_64.exe(Cywgin 安装程序,例如在 32 位系统上可能不同)并安装完整的 Vim 包。

          只是一个免责声明:我的印象是,这是一个具有多个根本原因的症状。因为这个问题已经开放了 5 年,仍然没有一个可以接受的答案,所以我添加了我的。

          【讨论】:

            【解决方案6】:

            我在 vi 命令行中使用了这个命令:set nocp(然后按回车键)。 但是,每次启动 vi 时都需要这样做。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2020-12-22
              • 1970-01-01
              • 2016-01-27
              • 2021-08-17
              • 1970-01-01
              • 2020-06-17
              • 1970-01-01
              相关资源
              最近更新 更多