273得票11回答
如何在Vim中选择括号(引号或其他符号)之间的内容?

我确定以前有个插件可以做这种事情,但现在需要用到时却找不到了(当然),所以我会简单地问一下。 最简单的方法是什么来选择括号、引号或者一般匹配字符列表中的内容? write ( *, '(a)' ) 'Computed solution coefficients:' 例如,这里我想选择(a...

257得票14回答
在Vim中提取当前缓冲区文件名/路径

假设当前缓冲区是一个打开以供编辑的文件,因此: e不会显示 E32:无文件名。 我想要复制以下内容中的一个或全部: 与状态行上显示的完全相同的文件名,例如 ~\myfile.txt 文件的完整路径,例如 c:\foo\bar\myfile.txt 仅文件名,例如 myfile.txt

98得票10回答
Vim复制行的范围

我是一名C#开发者,最近决定扩展自己的工具知识。我决定学习的第一个工具是Vi/Vim。到目前为止一切都进展顺利,但是有几个问题我找不到答案: 假设我想要拷贝一段行数范围内的内容。虽然有很多方法可以实现,但我想按行号来选取。我认为它应该与替换命令类似,像81,91y这样。有没有办法做到这一点...

50得票2回答
使用Vim:替换选择内容为默认缓冲区中的内容,而无需覆盖缓冲区。

我的问题如下: 我在可视模式下。 我选择文本并将其复制到缓冲区中。((y)ank) 我选择另一个我想要替换的文本,并粘贴缓冲区中的内容。((p)aste) 现在第二个选择已经被替换到缓冲区中,但是我仍然希望第一个选择保留在其中。 有什么想法吗?

34得票8回答
Emacs:如何粘贴最后一次复制的文本,而不管后续是否有删除操作?

我经常发现自己在执行一些操作后不断地重复粘贴某个内容,这个过程如下: C-y C-y M-y C-y M-y M-y C-y M-y M-y M-y 每次我杀死(kill)一些文本时,它会把第一个 kill 的内容推回kill ring中,因此需要循环浏览所有的kill才能返回到想要粘...

31得票5回答
Vim的"yank"功能似乎无法使用。

我对Vim还比较陌生。今晚,我学习了"yank"命令,但是在MacVim中尝试使用它时,它没有任何作用。无论是Y还是y{motion}都没有任何反应。我尝试使用默认的.vimrc文件来排除任何奇怪的配置问题。 Google搜索也没能解决我的问题。这感觉像是新手问题。我是否漏掉了一些显而易见的东西?

22得票1回答
为什么在Vim中,“复制”被称为“yank”?

拉: 用快速有力的动作拉扯某物 "拉"在Vim中如何对应复制功能?

17得票5回答
将正则表达式组的所有匹配项复制到寄存器中。使用vim实现。

我知道可以像这样将所有匹配的行复制到寄存器A中::g/regex/y/A 但我似乎无法弄清楚如何将正则表达式组提取到寄存器A中::g/\(regex\)/\1y A (E10: \ should be followed by /, ? or &)

12得票1回答
在Emacs中将某个东西插入到kill ring中

我想写一个函数,在当前缓冲区中插入文件名到kill ring中,以便我可以在另一个窗口的终端中粘贴它。如何编程将字符串插入到kill ring中?(<SOME FUNCTION> (buffer-file-name)) 有没有(内置)函数可以实现这个功能,或者我需要将想要的字符串插...

12得票4回答
Vim - 如何捕获斜杠之间的内容?

有没有一种方法可以捕获在/或\之间的文本?我知道还有其他符号的方法 --- ci" - 捕获"text"中的'text' vi( - 在foo(int var)内部捕获int var di[ - 删除[word]单词并保留[] 我唯一能找到的解决方法是使用Vim Surround插件,...