分类: LINUX
2015-09-15 11:04:31
今天要讲的是整行移动和拷贝,涉及的命令是::m
和t
。这两个命令其实是move
和copy
的简写形式。 其实整行的拷贝相信你能用yank解决,但是它有一个缺点就是必须把光标移到要拷贝的行才能执行该操作,然而:copy
和:move
命令可以在任何地方拷贝或者移动任意一行或者多行。
copy命令格式::[range]copy{address}
,range表示拷贝范围,address表示目标地址。举例来说:把下面三行if语句块拷贝到main代码段中去,不管此时你的光标在何处,现在假设光标在main那行:
if choise=='n':newuser()
if choise=='e':olduser()
if choise=='q':done=True
if __name__=='__main__':
我们可以用:1copy.
把第一行拷贝到光标的下一行(.
代表当前行),如果三行全拷贝::1,3copy.
,copy的另外两个写法:co
或者:t
。 常用命令:
:3t.
拷贝第三行到当前光标的下一行
:t3
拷贝当前行到第三行的下一行
:t.
拷贝当前行到光标的一下行,相当于Yp
和yyp
:t$
拷贝当前行到最后一行
:'<,'>t0
拷贝所选区域到文本的开头处,这里的操作步骤是:现在visual 模式下选中文本,然后输入:
,接着t0
。
move:move的操作完全和copy是一样的,它的简写格式有mo
和m
。可以对照上面的例子重复操作一遍。更多帮助可以查看:h :move
和:h copy
。