【问题标题】:Backspace doesn't work in gvim 7.2 64-bit for Windows?退格在 gvim 7.2 64 位 Windows 中不起作用?
【发布时间】:2011-07-22 03:33:53
【问题描述】:

我刚刚在我工作的新机器上安装了64-bit zipped version for Windows of gvim,并安装了I changed some settings 以使其与Visual Studio 2010 兼容。

现在退格键由于某种原因不起作用。

这是我的 .vimrc 文件:

set nowrap
set ruler
set encoding=utf-8
set fileencoding=utf-8
set ff=dos

这只是一个小麻烦(删除键有效),但我只是想知道是否有人知道。

【问题讨论】:

  • 猜猜看,你之前有没有在你的 vimrc 中有源 mswin.vim 现在它不见了?
  • @Johnny 我的 C:\Program Files\vim72 中有那个文件 (mswin.vim)
  • 我不是 vim 专家,但我注意到如果 vimrc 文件中缺少 source mswin.vim,退格键的工作方式不同。 Ctrl-C、Ctrl-V 也不会复制/粘贴
  • 如果你需要检查,我发现这个链接有帮助:vim.wikia.com/wiki/Open_vimrc_file

标签: windows-7 vim windows-7-x64 backspace


【解决方案1】:

它是否完全不起作用,或者它只是没有退格到您进入插入模式的位置?有一个选项backspace 可以控制这个:

Influences the working of <BS>, <Del>, CTRL-W and CTRL-U in Insert
mode.  This is a list of items, separated by commas.  Each item allows
a way to backspace over something:
value       effect
indent      allow backspacing over autoindent
eol         allow backspacing over line breaks (join lines)
start       allow backspacing over the start of insert; CTRL-W and CTRL-U
            stop once at the start of insert.

owen_water's suggestion 与 Carpetsmoker 的评论相同,启用所有这三个。这通常是人们想要的,因为让 Vim 拒绝让你退格就在那里的文本有点令人惊讶。因此,请从两个等效选项中选择 - 我会选择更详细和更清晰的选项:

set backspace=2
set backspace=indent,eol,start

在某些情况下,错误的终端可能会混淆退格和删除,但我怀疑这是您在 Windows 中的问题。有一些能力可以解决这个问题;见:help fixdel

【讨论】:

  • 在 Windows7 上的 Cygwin 中,我使用以下 .vimrc 来修复退格问题。 set nocompatible syntax on set nu set ts=2 set autoindent set bs=2 set bs=indent,eol,start fixdel
  • @Jerry: nocompatible 已设置(相反,compatible 已关闭)如果您有 vimrc,则语法高亮、行号、制表位和缩进无关紧要,因此您的解决方案是正是我发布的内容,加上一些冗余 - backspace=2backspace=indent,eol,start 是完全等价的。
  • 你是对的,@Jefromi 我只是复制我的整个 .vimrc 以确认你的答案也适用于 Cygwin。应该只关注相关部分以使答案清晰。
  • 在 Windows 8.1 和 Vim 7.4 的 grapic 版本中使用 set backspace=indent,eol,start 命令允许我像在 Linux 中一样使用退格,谢谢!
【解决方案2】:

从不在 Windows 中使用 vim,但我之前在 open solaris 中遇到过同样的问题。
试试看:

设置退格=2

【讨论】:

  • 我的~/.vimrc中有:set backspace=indent,eol,start
猜你喜欢
  • 2011-12-29
  • 2013-03-01
  • 2016-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-20
  • 1970-01-01
  • 2012-06-11
相关资源
最近更新 更多