Vim 光标高亮错误位置

Vim 光标高亮错误位置

我遇到了一些奇怪的 vim 光标行为,我无法解决。当我编辑文件时,光标标记突然向右移动了一个或多个空格,而光标操作仍然影响标记之前所在的当前列。

我添加了一个屏幕截图以供澄清:

在此输入图像描述

正如您所看到的,光标位于最后一个大括号上,但光标标记放置在稍后的一些空格上。如果我按删除键,它就会删除大括号。

有人可以帮我解决这个(烦人的)问题吗?任何帮助将不胜感激。

更新:

我目前使用的是今年 7 月 28 日发布的 Vim v7-4-801。

答案1

我很久以前就遇到过这个问题,字符损坏,无法正确显示。我想我在 Unix 和 Windows 下编辑了一个文件,然后文件中出现了不同编码的字符。

你可以尝试的事情:

  • 如果您的文档应该只包含 ASCII 字符,您可以使用以下 vim 命令删除所有其他字符(以及除制表符和空格之外的所有不可打印的字符):

    :%s/[^\t -~]//gc

  • 如果你想更加小心,:set list可以玩:set listchars=...让角色可见。

  • 外部修复(不是最佳的,但我当时使用的):在不同的编辑器中打开文件(我使用emacs)并希望坏男孩显示在那里,这样你就可以删除它们。

相关内容