《vim实用技巧》读书笔记
1、 . 命令
2、 * 命令
3、 cw 命令: (c:修改)会删除从光标位置到单词结尾间的字符,并进入插入模式。 eg: cw.copy1 即: 删除从光标位置到单词结尾间的字符,并插入 copy1 。
5、 db:按 db 命令删除从光标起始位置到单词开头的内容,但光标处的字符没有删除。再按一下 x 键就可以删除这个捣乱的字符。
6、 daw:可以把 daw 命令解读为“delete a word”,这样比较容易记忆。
7、 yyp :文本行的复制与粘贴。
ddp : 文本行的剪切与粘贴。
yiw : 复制光标处的单词。(p粘贴)
diw : 剪切光标处的单词。(p粘贴)
8、 <C-a> 和 <C-x> 命令:分别对数字执行加和减操作。在不带次数执行时,它们会逐个加减,但如果带一个次数前缀,那么就可以用它们加减任意整数。例如,如果我们把光标移到字符5上,执行 10<C-a>就会把它变成15。(如果光标不在数字上,那么 <C-a> 命令将在当前行正向查找一个数字,如果找到了,它就径直跳到那里。)
9、.f : (find) 查找。
10、R : (replace) 转到替换模式。
11、ggVG :全部选择。
gg 让光标移到首行,在vim才有效,vi中无效
V 是进入Visual(可视)模式
G 光标移到最后一行
选中内容以后就可以其他的操作了,比如:
d 删除选中内容
y 复制选中内容到0号寄存器
"+y 复制选中内容到+寄存器,也就是系统的剪贴板,供其他程序用
删除所有内容 :%d
. 当前行
%当前文件中的所有行
1 文件的第一行
$ 文件的最后一行
hjkl:
h:光标往左移动一个;
j:光标往下移动;
k:光标往上移动;
l:光标往右移动;
整段代码缩进:
<C-v>进入块模式- hjkl选中相关行
- A
- 光标移到最开始(home键)
- tab键
- ESC退出
dt; : 删除当前位置到;之间的内容。(t:to)
nyy : 多行复制。(光标要在单词前)
yy : 单行复制。
多行复制粘贴:
方法一:(适合复制的行数较少的情况)
(1):n (光标移到第n行,即要复制的那行)
(2) nyy (复制n行)
(3) :n (光标移到要粘贴的那行)
(4) p或者P (p是在所在位置的后方黏贴,P是在所在位置前方黏贴)
方法二:(适合有大量行数的情况)
在normal模式下输入:开始行数,结束行数 co(py) 要黏贴的行数。
例如要将第5到10行黏贴到第15行后面可以这么写:5,10 copy 15 这个方法适合有大量的行数情况。
方法三:(最直观)
(1) shift+v进入可视模式
(2) 选中要拷贝的行
(3) 输入y复制
(4) 光标移到奥黏贴的位置 ( :n )
(5) 输入p或者P粘贴
代码多行注释和删除(代码多行缩进同样适用):
(1) 光标移到要注释的行首( :n )
(2) ctrl+v进入可视块模式
(3) 移动上下键选中要注释的行
(4) 输入I(大写i)
(5) 输入要注释的字符(eg: //)
(6) 输入两个esc,回到normal模式。
(7) 删除过程一样:先ctrl+v,选中要删除注释的行,输入x即可
如果要在很多行后面加相同的东西也可以用这个方法:ctrl+v,选中要添加的行,输入A,输入要添加的字符,输入两个esc回到normal模式。

《vim实用技巧》读书笔记的更多相关文章
- csapp读书笔记-并发编程
这是基础,理解不能有偏差 如果线程/进程的逻辑控制流在时间上重叠,那么就是并发的.我们可以将并发看成是一种os内核用来运行多个应用程序的实例,但是并发不仅在内核,在应用程序中的角色也很重要. 在应用级 ...
- CSAPP 读书笔记 - 2.31练习题
根据等式(2-14) 假如w = 4 数值范围在-8 ~ 7之间 2^w = 16 x = 5, y = 4的情况下面 x + y = 9 >=2 ^(w-1) 属于第一种情况 sum = x ...
- CSAPP读书笔记--第八章 异常控制流
第八章 异常控制流 2017-11-14 概述 控制转移序列叫做控制流.目前为止,我们学过两种改变控制流的方式: 1)跳转和分支: 2)调用和返回. 但是上面的方法只能控制程序本身,发生以下系统状态的 ...
- CSAPP 并发编程读书笔记
CSAPP 并发编程笔记 并发和并行 并发:Concurrency,只要时间上重叠就算并发,可以是单处理器交替处理 并行:Parallel,属于并发的一种特殊情况(真子集),多核/多 CPU 同时处理 ...
- 读书笔记汇总 - SQL必知必会(第4版)
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
- 读书笔记--SQL必知必会18--视图
读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...
- 《C#本质论》读书笔记(18)多线程处理
.NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...
- C#温故知新:《C#图解教程》读书笔记系列
一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...
- C#刨根究底:《你必须知道的.NET》读书笔记系列
一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心 ...
- Web高级征程:《大型网站技术架构》读书笔记系列
一.此书到底何方神圣? <大型网站技术架构:核心原理与案例分析>通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计 ...
随机推荐
- Oracle11g温习-第十九章:审计(audit)
2013年4月27日 星期六 10:52 1.审计的功能:监控用户在database 的 action (操作) 2.审计分类 1) session :在同一个session,相同的语句只产生一个审计 ...
- Leetcode 127 **
class Solution { public: int ladderLength(string beginWord, string endWord, vector<string>& ...
- python中sys.argv[]的使用
sys.argv[]主要用于程序从外部获取参数.其参数个数可以是多个,组建成一个列表(list). 几个简单示例如下: fun_test.py: #!/usr/bin/env python # -*- ...
- [NOIP 2015TG D1T3] 斗地主
题目描述 牛牛最近迷上了一种叫斗地主的扑克游戏.斗地主是一种使用黑桃.红心.梅花.方片的A到K加上大小王的共54张牌来进行的扑克牌游戏.在斗地主中,牌的大小关系根据牌的数码表示如下:3<4< ...
- axios全局设置url公共请求头
需求由来:公司项目外链到别公司项目或者网页(通俗的说就是通过别的随意网页跳转至你项目网页),这时公司项目就要区分是从哪个公司或者哪个网页跳转过来的,从而进行不同的接口请求(公司所有接口都要带上请求头) ...
- 四、持久层框架(Hibernate)
一.一级缓存与二级缓存 1.一级缓存:Hibernate默认是开启一级缓存的,一级缓存存放在session里,一个Session做一次查询操作,会把这个操作的结果放在一级缓存中,如果短时间内这个ses ...
- Jupyter 快速入门——写python项目博客非常有用!!!
from:https://blog.csdn.net/m0_37338590/article/details/78862488 一.简介: Jupyter Notebook(此前被称为 IPython ...
- Lamda 表达式里的Join和GroupJoin的区别, 如何实现SQL的Left Join效果
例如,可以将产品表与产品类别表相联接,得到产品名称和与其相对应的类别名称 db.Products .Join ( db.Categories, p => p.CategoryID, c => ...
- SpringBoot与Web开发
web开发1).创建SpringBoot应用,选中我们需要的模块:2).SpringBoot已经默认将这些场景已经配置好了,只需要在配置文件中指定少量配置就可以运行起来3).自己编写业务代码: 自动配 ...
- jQuery获取select值
jQuery操作select标签 即控制select的option属性 <select id="sid" > <option value="-1&quo ...