《Practical Vim》第十章:复制和粘贴
第十章和第十一章讲了 Vim 的寄存器功能,
寄存器,是用于保存文本的特定的容器.它的内容:
- 既可以是类似于系统剪切板功能的,用于粘贴的文本
- 也可以是录制成的宏的命令.
第十章讲使用寄存器使用复制与粘贴功能.
""(无名寄存器)
命令:
| 命令 | 按键 |
|---|---|
| 剪切 | d |
| 删除(光标下的)字符 | x |
| 删除(光标下的)字符,并进入插入模式 | s |
| 粘贴(到光标后面) | p |
| 复制 | y |
当使用以上命令的时候,即将所选的文本保存到了无名寄存器当中.
应用:
- 调换两个字母: xp 命令
- 调换两行: ddp 命令
其他寄存器
在默认情况下, Vim 使用 "",
可以通过 定义 ""{register}前缀的方式来指定要用的寄存器
在 Ex 模式下,定义: put {register}, :delete {register}的后缀来指定要用的寄存器
"0 (复制专用寄存器)
调用:
在执行 y 命令时,不需要指定前缀
在执行 p 命令时, 指定"0{P/p}
"a-"z (有名寄存器)
调用:
在执行 y 命令时,需要指定前缀
在执行 p 命令时,需要指定前缀.
表达式寄存器
表达式寄存器是寄存器中的例外,可以执行 Vim 脚本中的表达式
光标
p 粘贴在光标之后, P 粘贴在光标之前.
但是:
- 当复制、剪切面对的对象为字符,则 p P 在光标的字符之后或之前执行.
- 当复制、剪切面对的对象为段落,则 p P 在光标的段落之后或之前执行.
{register} 命令:
将内容复制在光标之前.
:put 命令:
将内容粘贴到光标当前行的下方
《Practical Vim》第十章:复制和粘贴的更多相关文章
- vim 介绍安装 复制 剪切 粘贴
1. vim 产生:对于linux 文件的编辑,最初是vi,然后对于其功能的扩展,就产生了vim vim 的安装 yum install vim 2.光标的移动 用得最多的就是方向键上的 上下左右,和 ...
- vim选中字符复制/剪切/粘贴
转载自:http://www.cnblogs.com/luosongchao/p/3193153.html 问题描述: vim 中选中指定字符,进行复制/剪切/粘贴 选择:1.普通模式下--v+hjk ...
- vim操作(复制,粘贴)
整行操作 单行复制 在"命令"模式下,将光标移动到将要复制的行处,按"yy"进行复制 多行复制 在"命令"模式下,将光标移动到将要复制的首行 ...
- vi学习 常用命令-新建-复制-剪切-粘贴
mkdir /home/brandon.du/desktop/mylinux/test_1.txt ---------mkdir新建文件夹 rm /home/brandon.du/desktop/ ...
- Vim 下的复制/粘贴/剪切/撤销
一 了解 vim 有 12 个粘贴板,分别是 0.1.2.....9.a.“.+:用 :reg 命令可以查看各个粘贴板里的内容.在 vim 中简单用 y 命令只是复制到 "(双引号)粘贴板里 ...
- 关于vim复制剪贴粘贴命令的总结
最近在使用vim,感觉很好很强大,但是在使用复制剪切粘贴命令是,碰到了一些小困惑,网上找了一些资料感觉很不全,讲的也不好,遂自己进行实践并总结了. 首先是剪切(删除): 剪切其实也就顺带删除了所选择的 ...
- Linux使用技巧(一):vim中选中多行、复制和粘贴
一.选中多行: 使用命令vim打开文件,移动光标至所选行的开头,按v进入视图,键盘上按向下键,选中所需行即可. 二.复制与粘贴 三种方法: 1)在上文第一部分的基础上,按y,然后移动光标至所需粘贴处, ...
- vim寄存器与复制粘贴的实现
对于大多数在Ubuntu下使用vim作为常用编辑器的同学来讲,他们遇到的第一个比较大的麻烦来自于vim与外部应用的复制粘贴. 当然,愿意选择ubuntu以及vim的同学肯定是google好手.不幸的是 ...
- 【转】vim复制与粘贴
用vim写代码时,经常遇到这样的场景,复制多行,然后粘贴. 这样做:1. 将光标移动到要复制的文本开始的地方,按v进入可视模式.2. 将光标移动到要复制的文本的结束的地方,按y复制.此时vim会自动将 ...
随机推荐
- Vue中computed,methods 和watch
Vue中的计算属性和方法属性 1.计算属性 computed 模版中可以使用表达式 <div id="example"> {{ message.split('').re ...
- Spring之IOC注入
注入 spring依赖注入 set方法: <property name="属性名" values ="值">--ref="对象名" ...
- Mac 启动或者禁用翻盖自动开关机
从 2016 新款 MacBook Pro 起,预设打开笔电上盖或连接电源供应器时,电脑就会自动开机而且开机时没有启动声,本文教你如何将这些东西调整回原本的样子. 以下指令都是通过「应用程序」→「终端 ...
- typescript interface 泛型
interface interface Obj { [index: string]: any; } class Person { name: string; } let obj: obj = { na ...
- linux iptables 防火墙简介
iptables防火墙简介 Netfilter/Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的安全自由的基于包过滤的防火墙工具,它的功能十分强大,使用非 ...
- java String[] 初始化
String[] 初始化 String[] s1 = {"hello", "world"}; String[] s2 = new String[]{" ...
- RNA-seq基本流程
https://www.2cto.com/net/201801/714420.html
- Oarcle的开始
1.数据库大致分类两种 1.关系型数据库(SQL) Oracle.Mysql(80%).DB2.Microsoft SQL Server.ProsgreSQL.Access.SQLSite 2.非关系 ...
- webform ajax 异步请求
第一种就是对应方法的请求 虽然对应方法 但还是会刷新页面 webform是基于事件的 每次请求都会出发pageload <script> $(function () { $("# ...
- oracle(3)
存储过程: CREATE OR REPLACE PROCEDURE PROC_ABC ( currency IN NUMBER, aysdate IN DATE, money OUT number ) ...