Questions tagged «vim»

Vim是可用于大多数主要平台的免费和开放源代码的模式文本编辑器。它可以在许多文本编辑任务中实现高效率,但学习曲线陡峭。要学习基础知识,请运行“:help vimtutor”。对于非编程问题,请使用https://vi.stackexchange.com/。

9
在Vim中合并多行(两个块)
我想在Vim中合并两行线,即取线n..m并将其附加到lines a..b。如果您喜欢伪代码说明:[a[i] + b[i] for i in min(len(a), len(b))] 例: abc def ... 123 45 ... 应该成为 abc123 def45 有没有一种好的方法,而无需手动进行复制和粘贴?
323 vim 

12
在插入模式下遍历文本
在插入模式下在Vim,除了使用箭头键之外,是否有任何其他方式可以遍历文本来移动某些字符? 如果我按h,j,k和l在插入模式下,实际的字符显示在屏幕上,而不是在文本上移动。 目前,我这样做的方法是必须诉诸Ctrl+ [(Esc)然后遍历文本。但显然那没有效果。
321 vim  vi 


5
如何查看哪些插件使Vim变慢?
有没有一种配置Vim插件的方法? 当我打开大盘时,我的MacVim变得越来越慢.py。我知道我可以取消选择所有插件,然后一个一个地重新选择,以检查哪个插件是罪魁祸首,但是有没有更快的方法? 我的dotvim在这里:https : //github.com/charlax/dotvim

9
如何在Vim中增加垂直分割窗口的大小
:vsplit(简称:vs:)垂直分割Vim视口。:30vs拆分视口,使新窗口宽30个字符。创建此30个字符的窗口后,如何将其大小更改为31或29? 使用水平窗口时Ctrl- W +将行数增加一。将列增加一的等效命令是什么?
316 vim  window  viewport 

12
如何在vim中交换两个打开文件的位置(拆分)?
假设我在vim中有一些分割的任意布局。 ____________________ | one | two | | | | | |______| | | three| | | | |___________|______| 有没有一种方法来交换one和two维护相同的布局?在此示例中,这很简单,但是我正在寻找一种解决方案,该解决方案将有助于更复杂的布局。 更新: 我想我应该更清楚。我之前的示例是实际用例的简化。对于实际实例: 如何交换这些拆分中的任何两个,并保持相同的布局? 更新!3年后... 我将sgriffin的解决方案放在可以轻松安装的Vim插件中!使用您喜欢的插件管理器进行安装,然后尝试一下:WindowSwap.vim
313 layout  editor  split  vim 

18
在Vim中上下移动整个行
在Notepad ++中,我可以使用Ctrl+ Shift+ Up/ Down上下移动当前行。在Vim中有与此类似的命令吗?我浏览了无休止的指南,但一无所获。 如果没有,如何将操作绑定到该组合键? 编辑:Mykola的答案适用于所有行,除了缓冲区开头和结尾处的行。向上移动第一行或向下移动底部行会删除该行,而向上移动底部线则会首先跳两个空格,就像典当一样!谁能提供任何改进?
311 vim  vi 

12
Vim:在多行中插入相同的字符
有时我想跨多行编辑特定的可视文本块。 例如,我将输入如下文本: name comment phone email 并使其看起来像这样 vendor_name vendor_comment vendor_phone vendor_email 目前我现在要做的方式是... 按下V然后选择j四次,选择一个块的所有4行。 缩进>。 回上一个字母h。 使用进入阻止视觉模式Ctrlv。 按下四下选择四行j。此时,您已经选择了一个4x1的可视空白块(四行一列)。 按C。请注意,这几乎缩进了一列。 输入" vendor_"不含引号的a。请注意,我们不得不退还多余的空间。 按Esc。这是我Esc用来退出插入模式的极少数情况之一。Ctrlc只会编辑第一行。 重复步骤1。 缩进另一种方式<。 我不需要缩进单词之前是否至少有一列空格。如果不必使用清除可视块,则不需要空格c。 但是,如果我必须清除,那么有没有一种方法可以做上面的事情而又不用缩进来创建所需的空格? 另外,为什么一次编辑多行只能通过退出带有Escover 的插入模式来工作Ctrlc? 这是一个更复杂的示例: name = models.CharField( max_length = 135 ) comment = models.TextField( blank = True ) phone = models.CharField( max_length = 135, blank = …
306 vim 

20
如何在Vim内部运行终端?
我已经习惯了Emacs,但是我正在尝试Vim,看看我更喜欢哪一个。 我喜欢Emacs的一件事是能够在Emacs中运行终端。这可能在Vim内部吗?我知道您可以从Vim执行命令,但是我希望能够在选项卡中运行终端。
303 vim 


4
如何在Vimdiff中展开/折叠差异部分?
我今天开始使用vimdiff,并想做一些我在基于Windows的差异编辑器上理所当然的事情(例如,展开/折叠差异部分,具有完整的文件扩展/仅具有3条上下文行的差异或下方等)。我目前只知道以下命令: 键盘快捷键: do -从其他窗口更改到当前窗口。 dp -将当前窗口中的更改放入另一个窗口。 ]c -跳至下一个更改。 [c -跳至上一个更改。 CTRL+ W,w-切换到另一个拆分窗口(CTRL+ W,CTRL+ W做同样的事情,以防您CTRL稍后松开键) 有人可以指出我正确的方向,以便我可以复制类似的功能吗? 例如,如果我可以展开/折叠差异周围的线条,那将是很好的。




6
如何从Git的文本窗口退出?
我正在使用Windows,并且在提交之前,Git希望我输入文本消息,然后会出现一个新的文本窗口。 我该如何退出? 我正在尝试学习Git。因此,将为您提供一点帮助。
275 git  vim 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.