如何在一行的开头添加一段文字

时间:2013-06-25 12:56:52

标签: vim

在我的文本文件中,我有一行:some text

我想在第一行的开头添加另一个文本some other text,以便该行现在看起来some other text:some text。我一直尝试使用:some text命令在p之前移动所需的文本并移动光标,但复制的文本显示在:some text上方的行中。

我想知道是否有某种方法可以做同样的事情。

如果有一种方法可以选择多个文本并将其放在多行的开头,那么也会很好。例如,如果文件读取:

some text 

some other text

line1 

line2 

我想选择line1line2并将其放在some textsome other text的开头,以便它看起来像

line1 some text

line2 some other text

4 个答案:

答案 0 :(得分:3)

一些选项:

  • I将在行的开头
  • 进入插入模式
  • ^会将光标移动到该行的开头。
  • 如果您想在文字前粘贴一整行,您可以例如将其粘贴到P,然后使用J加入这些行。

对于第二个问题,您可以使用“Visual Block”模式:

  • 移至“some text”的开头。
  • Ctrl+V输入“Visual Block”。
  • 选择跨越两行的矩形
  • 移至“line1”的末尾,粘贴p

请注意,仅当“line1”和“line2”具有相同的长度时,此方法才有效。

答案 1 :(得分:1)

连接两行:J

在一行开头插入文字:0iyour text here ESC

在行的第一个非空格之前插入文本:Iyour text here ESC

答案 2 :(得分:1)

  1. 阻止选择{ Ctrl + V line 1line 2
  2. 转到第some text行并在光标之前经过它( Shift + p / P

答案 3 :(得分:1)

如果你用yyY划线,那么该线就会被拉开,包括最后的换行符。 要在没有换行符的情况下划线,您可以使用0y$0 - 转到行首,y$ - 抽到行尾。)

然后,您可以使用0P将其粘贴到所需行的开头。 P表示在光标前粘贴。