Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
vimtex:force}和{不跳过空行_Vim_Latex_Keyboard Shortcuts_Vim Plugin - Fatal编程技术网

vimtex:force}和{不跳过空行

vimtex:force}和{不跳过空行,vim,latex,keyboard-shortcuts,vim-plugin,Vim,Latex,Keyboard Shortcuts,Vim Plugin,当我使用}和{时,vimtex+vim会在文档中随机跳转,跳过几行空行。请参见下文 如何恢复默认vim行为以不跳过空行 使用查找}是否存在任何映射 :map } 现在,您可以取消映射找到的所有映射 :unmap } 如果你想把它放在你的.vimrc,我建议你在插件的after目录下做 例如~/.vim/after/plugin简短回答 跳过是随机发生的,这表明空行并不是真的空的。它们包含空格或其他特殊字符 将光标移动到这些“空”行,然后按$查看它们是否真的为空 如何避免此类问题: (是的,

当我使用
}
{
时,vimtex+vim会在文档中随机跳转,跳过几行空行。请参见下文

如何恢复默认vim行为以不跳过空行


使用查找
}
是否存在任何映射

:map }
现在,您可以取消映射找到的所有映射

:unmap }
如果你想把它放在你的
.vimrc
,我建议你在插件的after目录下做

例如
~/.vim/after/plugin

简短回答 跳过是随机发生的,这表明空行并不是真的空的。它们包含空格或其他特殊字符

将光标移动到这些“空”行,然后按
$
查看它们是否真的为空


如何避免此类问题: (是的,其他人也有你的问题。)

使vim显示空白字符
Vim有一种显示这些字符的方法。使用
设置列表
并定义
列表字符
。从列表字符的vim帮助中:

有关更多信息,请参见
:帮助:列表
:帮助列表字符


突出显示尾随空格
我发现总是在任何空格中显示一个字符是非常烦人的,我的眼睛很难看到一行末尾的一个小点(对于尾随空格)。因此,我使用突出显示组来显示所有尾随的空白字符:

" Show trailing whitespace
    highlight ExtraWhitespace ctermbg=red       " define highlight group                      
    match ExtraWhitespace /\s\+$/               " define pattern
    autocmd BufWinEnter * match ExtraWhitespace /\s\+$/         " apply match to all buffers
    autocmd InsertEnter * match ExtraWhitespace /\s\+\%#\@<!$/  " don't match while in insert 
    autocmd InsertLeave * match ExtraWhitespace /\s\+$/
    autocmd BufWinLeave * call clearmatches()                   " It's good for the RAM
到您的
.vimrc
或相应的
ftplugin
文件。 我个人在我的
vimrc
中有一个函数,在我不想要/不需要的文件类型中禁用它


您也可能对以下内容感兴趣:


免责声明

有些字符可能不是空白,但vim默认情况下也不会显示。我从来没有遇到过这个问题,但我在“简短回答”下所说的仍然适用。

这些行是真的空的还是包含了你看不到的字符?@rkta解决了这个问题。难以置信的当然,下一个问题是如何不跳过视觉上的空行,但这是另一个问题。把你的评论作为回答,我会接受的。谢谢关于“视觉上是空的”行,像插件一样的插件会有所帮助。或者不需要插件,请看下面我的回答。@rkta的评论是正确的——这些行只是在视觉上是空的,但实际上它们有空格。然而,你的回答很有帮助:没有特殊的映射,这可能会让我发现那些空间符号。所以,谢谢你的回答!
" Show trailing whitespace
    highlight ExtraWhitespace ctermbg=red       " define highlight group                      
    match ExtraWhitespace /\s\+$/               " define pattern
    autocmd BufWinEnter * match ExtraWhitespace /\s\+$/         " apply match to all buffers
    autocmd InsertEnter * match ExtraWhitespace /\s\+\%#\@<!$/  " don't match while in insert 
    autocmd InsertLeave * match ExtraWhitespace /\s\+$/
    autocmd BufWinLeave * call clearmatches()                   " It's good for the RAM
 autocmd BufWritePre * %s/\s\+$//e