oeasy教您玩转vim - 39 - # 剪切粘贴
剪切粘贴
回忆上节课内容
- 我们大幅度地复习了整个
motion: 直接运动
- h j k l
行运动
- 首行g g
- 末行G
- 第n行n G
单词运动
wbe- w 是到下一个
word的开头 - b 是到当前
word的开头 - e 是到当前
word的结尾 - 除了
word之外还有WORD
- w 是到下一个
行头行尾
- ^ 是到本行第一个非空字符
- 0 是到本行第一个字符,不管是不是空格
- g_ 是到本行最后一个非空字符
- $ 跳到本行最后一个字符,即使他是空格
行内跳跃和贴靠
- 向
前跳跃是f - 向
后跳跃是F - 向
前贴靠是t - 向
后贴靠是T
- 向
全文查找
- 查找的话就是 /
- 反向查找的话就是 ?
文本区块
- {、} 按段落移动
- (、) 按句子移动
- 这些
motion都可以 d配合使用,完成快速删除的工作 - 过程中还可以使用
[count]进行翻倍 - 删除的内容,放在
""寄存器中 - 可以配合重复.
- 而且以前的一些命令可以有了新的理解
回忆过去
一些原来的操作可以有了新的写法
- D 对应的d$
- x 对应 dl
- X 对应 dh
- 体会多多运动左手无名指的快乐
- 删除的内容,放在
""寄存器中 - 那这个东西删了
- 放在寄存器里
- 我想粘贴到别的地方
- 怎么办呢?
关于粘贴
- 粘贴的话,应该离这个删除
d的位置不远 h d找到剪切的帮助文件在change.txt- 文件中的
5.copying and moving text中 - 可以找到 p 应该就是粘贴对应的命令

- 不是
paste p对应的是put放上去- 把什么放上去呢?
- 把
d到寄存器的东西放上去
动手
我们试一试
- 我们输入一行
oeasy然后对他进行 dd - 这个时候
oeasy这一行就进入了寄存器""了 - 然后 p 一下,就会出现一个
oeasy - 9 p 就会出现
9行oeasy - 真的可以!!!
- 我们输入一行
但是这里面有两个 p
- 一个叫做 p 说是
after cursor - 另一个叫做 P 说是
before cursor
- 一个叫做 p 说是

- 啥意思呢?
上下
- 先都删除 g g d G
- 我们首先把标尺调出来
:ru 然后插入
1行9个1- 9
- i进入插入模式
- 输入
1 - esc退回到普通模式
- o 换行回车
然后再插入
1行9个2- 先esc进入正常模式(目的是打断输入状态)
- i进入插入模式
- 输入
2 - esc退回到普通模式
8.
- 把插入2这个事重复
8次
- 把插入2这个事重复
- o换行
- esc
然后再尝试插入
1行3- 方法和上面一样
最后插入一行
oeasy- 并用d d把他删除
- 也就是把他放到了
""默认寄存器里面了

体会上下
- 我们把光标移动到第
2行 - p这个时候
- 寄存器
""中的oeasy会放到2222222...的下面

- 用u撤销刚才的操作
我们再试试 P,大写的这个
- 我们把光标移动到第
2行 - P这个时候
- 寄存器
""中的oeasy会放到2222222...的上面
- 我们把光标移动到第

- 他怎么知道这是一行?
细节
- 如果寄存器里面的不是一整行呢?
- 我们先
:reg看一下寄存器""

- 寄存器中除了
oeasy还有个^J意思是包括换行符 - 我们这次不用dd
我们用d$
motion是$意味着到行尾- 这样就把
oeasy放进了寄存器"" - 看一下
:reg ^J换行这个消失了!- p一把!

这个p也分大小写么?
前后
- 把光标移动到
222222...第5个2 - 然后p

- 他就在第
5个2后面插入寄存器内容 - u回来,还放在第
5个2上 - 然后P
- 他就在第
5个2前面插入

常规操作

dw是删除单词
- 这里删的没有换行符
- 注意把后面的空格也删除了
- 一并放入寄存器
wel是移动位置
- 下一个word头 到 to的t
- 下个word尾 到 to的o
- 向右一格 到空格
- p是粘贴到光标之后
常用的交换字符

- x删除当前字符
- p是在后面粘贴
总结
- 我们这次的内容是粘贴
- 粘贴的内容是
:reg中的内容 - 内容放在
""寄存器中 如果
:reg删除的是一整行或者多行- 那么粘贴的时候就在当前行上面或者下面粘贴
如果
:reg删除的是不包括换行符- 那么粘贴的时候就在当前位置前面或者后面粘贴
p
如果剪贴板里面是行
- 那么在光标下面粘贴
如果剪贴板里面不是行
- 那么在光标后面粘贴
P
如果剪贴板里面是行
- 那么在光标上面粘贴
如果剪贴板里面不是行
- 那么在光标前面粘贴
- 大小写对应的是粘贴位置
- 有了删除和粘贴,我们其实可以做剪切的操作了
- 但是如果我想要复制粘贴,那应该怎么办呢?
- 下次再说
[Github地址] (https://github.com/overmind1980/vimtutorial)
[Gitee地址] (https://gitee.com/overmind1980/vimtutorial)
[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/courses/2840)
oeasy教您玩转vim - 39 - # 剪切粘贴的更多相关文章
- oeasy教您玩转vim - 56 - # 字符可视化模式
可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...
- oeasy教您玩转vim - 57 - # 行可视化
可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...
- oeasy教您玩转vim - 53 - # 批量替换
查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...
- oeasy教您玩转linux010203显示logo
我们来回顾一下 上一部分我们都讲了什么?
- oeasy 教您玩转linux010101查看内核uname
linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...
- oeasy教您玩转linux010202软件包管理apt
顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010201持续输出yes
我们来回顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010108到底哪个which
到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?
- oeasy教您玩转python - 006 - # hello world
Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...
- oeasy教您玩转linux-010110内容回顾
我们来回顾一下 我们都讲了什么?
随机推荐
- 超详细--redis在Linux环境搭建主从复制
引言Redis是一个高性能的缓存中间件,一个Redis服务器可以支撑很多的并发请求.但是在一些超高的并发场景下,虽然Redis读写速度很快,但也会产生读写压力过大,服务器负载过高的情况.为了分担读写的 ...
- 《HelloGitHub》第 98 期
兴趣是最好的老师,HelloGitHub 让你对编程感兴趣! 简介 HelloGitHub 分享 GitHub 上有趣.入门级的开源项目. https://github.com/521xueweiha ...
- MR+meta分析的摘录
第四篇公众号:来自微信 天桥下的卖艺者 零基础说科研,仅为个人学习用,如有侵权,可以删除 吸烟没什么创意,唯一的创意就是加入了MR和meta分析,作者显示介绍吸烟与多种疾病之间的因果关系扔不明确, 第 ...
- Yii AR事务操作
Yii Ar事务操作,示例代码如下: $model=Post::model(); $transaction=$model->dbConnection->beginTransaction() ...
- NOIP模拟87(多校20)
前言 题目不难,但是个人感觉小细节有一些,然后有亿点卡常.. 感觉对于笛卡尔树的题目看不出算法,然后代码实现方面细节注意太少,常数有点大. 下次注意吧. T1 集合均值 解题思路 感觉应该是期望题里面 ...
- 探索Semantic Plugins:开启大模型的技能之门
前言 在之前的章节中我们或多或少的已经接触到了 Semantic Kernel 的 Plugins,本章我们讲详细介绍如何使用插件. Semantic Kernel 的一大特点是拥有强大的插件,通过结 ...
- IMX6ULL基本环境搭建
基本环境搭建 1 交叉编译工具 在虚拟机中安装交叉编译工具,为后续开发做准备. 1.1 工具版本 工具版本:Linaro Releases 当前虚拟机为64位系统,因此下载64位系统的工具: $ un ...
- 详解 JS 中的事件循环、宏/微任务、Primise对象、定时器函数,以及其在工作中的应用和注意事项
为什么会突然想到写这么一个大杂烩的博文呢,必须要从笔者几年前的一次面试说起 当时的我年轻气盛,在简历上放了自己的博客地址,而面试官应该是翻了我的博客,好几道面试题都是围绕着我的博文来提问 其中一个问题 ...
- C#.NET 操作FTP
工具类: using System; using System.Collections.Generic; using System.IO; using System.Net; namespace Co ...
- golang 泛型的格式写法
Go语言中的泛型(Generics)是在 Go 1.18 版本中引入的一个重要特性,它允许你编写可重用的代码,而不需要为每种数据类型重复编写相同的逻辑. 泛型通过参数化类型(type paramete ...