11

我正在 Windows 8 上运行默认的 cygwin 安装,并且无法获取 Backspace 键来删除字符 - 我希望在退格时字符会被空白覆盖。

我试过了

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

似乎没有任何效果。

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

4

6 回答 6

21

将这些设置添加在一起:

:set nocompatible
:set backspace=2
于 2013-11-13T12:59:01.407 回答
2

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

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

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

享受你的退格:)

于 2014-06-11T09:17:26.810 回答
0

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

于 2013-10-27T03:44:14.777 回答
0

我刚刚为自己解决了这个问题,并认为我可能会为您提供正确的答案:

type -a vim 

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

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

于 2018-12-03T23:43:31.863 回答
0

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

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

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

于 2017-02-12T17:11:54.433 回答
-1

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

于 2018-06-11T12:58:30.657 回答