Tag: vim

VimScript或VimL?

什么是Vim脚本语言的正确名称? 我看到它被称为VimScript , Vim脚本 ,甚至VimL 。 VimL甚至被GitHub列为第十大最stream行的编程语言 ! VimL名字背后的历史是什么? 为什么Git的人把它叫做VimL?

在vim正常模式下使用g键

在vim的正常模式下, g前缀用于许多命令。 一些命令在文档中的某处,但是其他命令则处理文件编码和交换大写/小写字母。 ga – 显示字符编码 10gg – 去第10行 gg – 去第1行 gH – 启动select线路模式 gr {char} – 用{char}虚拟replaceN个字符 所有这些命令之间缺失的连接是什么?

在.vim和.vimrc中组织文件types设置的最佳方法是什么?

我正在通过我的vim dotfiles来整理它们。 我注意到,通过时间我已经以各种不一致的方式添加了各种文件types的具体设置。 假设我正在为Python定制: au BufRead,BufNewFile *.py (do something) 。 我不喜欢这个,因为一些Python文件可能没有.py终止。 au FileType python (do something) 。 这似乎是一个更好的select,因为它不依赖于具有.py终止的文件。 缺点是Vim不知道一些文件types。 我可以让Vim识别附加的文件types,但是我也有各种不一致的方法: .vim/filetype.vim文件,另外一个在.vim/after/filetype.vim以及.vimrc各种set filetype命令。 添加一个.vim/ftplugin/python.vim文件,具有文件types特定的设置。 我知道$VIMRUNTIME/ftplugin/python.vim可以覆盖我在这里设置的任何设置。 一个问题是,我不知道这是如何与.vim/filetype.vim和.vim/after/filetype.vim交互。 添加一个.vim/after/ftplugin/python.vim 。 我知道这是$VIMRUNTIME/ftplugin/python.vim之后加载,所以它可以覆盖那里的设置。 和前面的方法一样,我不确定它如何与filetype.vim文件交互。 所以我至less有四种方法来做这个,而不是提到语法文件和文件types特定的插件。 在我看来,最好的办法是将我的文件types特定的设置放在after/ftplugin这样它们不会被覆盖,而filetypes.vim也会出于同样的原因。 但是,在我继续之前,我想问问任何人是否有处理文件types特定设置的最佳方法的build议。

如何将ctrl x ctrl o映射到terminalvim中的ctrl空间?

在网上search一下后,似乎我无法将Ctrl 空间映射到任何东西/很多。 有没有办法做到今天,我发现通常是2岁。

VIM:let g:,let b:等等有什么区别?

我经常在vim插件中看到类似这样的东西: let g:variable let b:variable let l:variable 我对vim文档和Internet上的这些字母“g”,“b”,“l”进行了长时间的研究,但是我注意到了。 那么这些字母对应什么呢? 什么是完整的信件列表?

如何在vim中unindent而不离开编辑模式?

我最近写了很多python代码,而且我在vim中使用了tab-to-space模式。 我只是想知道我将如何unimited在vim不离开编辑模式,例如我完成后,如果…:块。 通常情况下,我可以直接input<<来代替,但是需要太多密钥,任何人都有更好的主意?

如何在vi或vim中多次缩进一行?

我已经find了几个关于如何在vim中缩进多行的答案,我想知道如何取一行并缩进多次。 实际上,我想要一个缩短版本的下面的命令:“>>>>>>>>>>”(这是10右括号“大于”的迹象。)

什么是最适用于Eclipse的VI / Vim插件?

我曾经是Intelli-J的狂热粉丝,还有一个梦幻般的VI插件。 现在我正在转移到我的主要IDE的Spring Source Tool Suite,并且需要find一个VI插件,这将使我能够有效地工作。 人们使用什么插件?

在vi / vim中从当前位置移动光标x行

有没有办法在vi / vim中移动光标的相对数量的行? 假设你想要删除的代码块下有10行光标。 如果你有相对的顺序显示的行号,那么有一个“跳转10行命令”将是很好的,将带你到那里。 或者,最好是显示绝对行数,然后转到xgg,其中x是行号?

更改VIM中的下N个字符

说我有以下行: |add_test() (| == cursor position) 并想用'del'replace'add'。 del|_test() 我可以按三次X然后按i来插入并键入del。 我想要的是像3c或3r的东西来覆盖只有3个字符。 这两个都不做我想要的,3c用相同的字符覆盖3个字符,3r用几个其他的东西。 有没有一个简单的方法来做到这一点,而无需手动邢和插入文本?