1. VIM 系列 - 简单入门,拾起兴趣
1. 认识模式
vim 一共有四种模:
1. 正常模式
2. 插入模式
3. 命令模式
4. 可视模式
1.1 正常模式
vim 打开一个文件时,处于正常模式。
正常模式一般用来浏览文件,也可进行复制、粘贴、删除等操作。
浏览文件时,可以采用一些快捷键在文本中进行跳转。
注:无论当前处于什么模式,按下 ESC 键 都会回到正常模式。
1.2 插入模式
插入模式:在正常模式下,按下(i/I/a/A)键即可进入插入模式;当我们需要编辑文本时,可以进入这个模式。
1.3 命令模式
命令模式:在正常模式下,按下(:)冒号即可进入命令模式,这个模式可以输入vim 的一些命令或是第三方插件的命令。
1.4 可视模式
可视模式:在正常模式下,按下(v)键即可进入可视模式,按上下键可以选中一块文本,然后对这个文件进行操作,和windows鼠标选中文本类似。
2. 常用快捷键
保存文件&退出:
:w // 保存文件
:q // 退出vi
:wq // 保存退出
:wq! // 保存强制退出
:q! // 强制退出
:x // 保存退出
光标跳转:
//字符级
h // 左移一个字符
l // 右移一个字符
f/F<c> // 移动到本行下一个字符<c>、上一个字符<c>
t/T<c> // 移动到本行下一个字符<c>之前、上一个字符<c>之后
//单词级
w // 移动到下一个单词
b // 移动到上一个单词
e // 移动到当前单词的词尾
* // 移动到下一个相同的单词
# // 移动到上一个相同的单词
//行级
j // 移动到下一行
k // 移动到上一行
gg // 跳转到文本第一行
G // 跳转到文本最后一行
<n>gg // 跳转到第n行
<n>l // 跳转到本行的第n列
0 // 跳转到行首
^ // 跳转到行首第一个非空格字符
$ // 跳转到行尾
//函数级
gd // 跳转到局部变量的定义处
//屏幕级
<Ctrl>+f // 向前翻一页
<Ctrl>+b // 向后翻一页
<Ctrl>+d // 向前翻半页
<Ctrl>+u // 向后翻半页
复制、粘贴、删除:
// 简单操作
yw // 复制单词
yy // 复制一行
dw // 删除单词
dd // 删除一行
p // 粘贴
// 更复杂操作(d/y+光标移动)
//区域操作(可视化模式选中文本 + d/y)
1. VIM 系列 - 简单入门,拾起兴趣的更多相关文章
- Elasticsearch系列---简单入门实战
概要 本篇主要介绍一下Elasticsearch Document的数据格式,在Java应用程序.关系型数据库建模的对比,介绍在Kibana平台编写Restful API完成基本的集群状态查询,Doc ...
- HTML5简单入门系列(五)
前言 本篇将讲述HTML5的服务器发送事件(server-sent event) Server-Sent 事件 Server-Sent 事件是单向消息传递,指的是网页自动获取来自服务器的更新. 以前的 ...
- 【java开发系列】—— spring简单入门示例
1 JDK安装 2 Struts2简单入门示例 前言 作为入门级的记录帖,没有过多的技术含量,简单的搭建配置框架而已.这次讲到spring,这个应该是SSH中的重量级框架,它主要包含两个内容:控制反转 ...
- EF CodeFirst系列(1)---CodeFirst简单入门
1.什么是CodeFirst 从EF4.1开始,EF可以支持CodeFirst开发模式,这种开发模式特别适用于领域驱动设计(Domain Driven Design,大名鼎鼎的DDD).在CodeFi ...
- emacs最简单入门,只要10分钟
macs最简单入门,只要10分钟 windwiny @2013 无聊的时候又看到鼓吹emacs的文章,以前也有几次想尝试,结果都是玩不到10分钟就退出删除了. 这次硬着头皮,打开几篇文章都看完 ...
- 数据结构和算法(Golang实现)(1)简单入门Golang-前言
数据结构和算法在计算机科学里,有非常重要的地位.此系列文章尝试使用 Golang 编程语言来实现各种数据结构和算法,并且适当进行算法分析. 我们会先简单学习一下Golang,然后进入计算机程序世界的第 ...
- 一篇文章带你了解服务器操作系统——Linux简单入门
一篇文章带你了解服务器操作系统--Linux简单入门 Linux作为服务器的常用操作系统,身为工作人员自然是要有所了解的 在本篇中我们会简单介绍Linux的特点,安装,相关指令使用以及内部程序的安装等 ...
- 一篇文章带你了解NoSql数据库——Redis简单入门
一篇文章带你了解NoSql数据库--Redis简单入门 Redis是一个基于内存的key-value结构数据库 我们会利用其内存存储速度快,读写性能高的特点去完成企业中的一些热门数据的储存信息 在本篇 ...
- 一篇文章带你了解轻量级Web服务器——Nginx简单入门
一篇文章带你了解轻量级Web服务器--Nginx简单入门 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件代理服务器 在本篇中我们会简单介绍Nginx的特点,安装,相关指令使用以及配置信 ...
随机推荐
- Spark SQL UDAF示例
UDAF:用户自定义聚合函数 Scala 2.10.7,spark 2.0.0 package UDF_UDAF import java.util import org.apache.spark.Sp ...
- .net基础学java系列(二)IDE
上一篇文章.net基础学java系列(一)视野 废话: "视野"这篇文章,管理员说它比较空洞!也许初学者看不懂表格中的大部分内容!多年的neter估计也有很多不知道的! 有.net ...
- Selenium自动化测试之元素定位
步骤: 1.通过前端工具,查看元素的属性 2.通过属性定位 iddriver.findElement(By.id("kw")) namedriver.findElement(By. ...
- python全栈开发day115、116-websocket、websocket原理、websocket加解密、简单问答机器人实现
1.websocket 1.websocket 与轮询 轮询: 不断向服务器发起询问,服务器还不断的回复 浪费带宽,浪费前后端资源 保证数据的实时性 长轮询: 1.客户端向服务器发起消息,服务端轮询, ...
- 基于SSL实现Mysql加密主从
Mysql主从复制是明文传输的,对于一些特殊的场合是绝对不允许的,数据的安全性会受到威胁,在这里,简单的构建基于SSL的mysql主从复制 Ps:这里采用master-mysql为CA服务器 主端生成 ...
- UOJ#129. 【NOI2015】寿司晚宴 动态规划
原文链接www.cnblogs.com/zhouzhendong/p/UOJ129.html 题解 考虑把大于等于 $\sqrt n$ 的质数和小于 $\sqrt n$ 的分开考虑: 1. 小于等于 ...
- 线程池ThreadPoolTaskExecutor配置说明
一般实际开发中经常用到多线程,所以需要使用线程池了, ThreadPoolTaskExecutor通常通过XML方式配置,或者通过Executors的工厂方法进行配置. XML方式配置代码如下:交给 ...
- adjustResize模式下ExpandaleListView中输入框焦点错乱及布局底部的导航栏被顶在键盘上方的处理
为了更好的用户体验,煎熬了许久,得到这么个解决方案.在此记录下来,以供后来者参考. 第一部分 清单文件中组件activity的android:windowSoftInputMode属性值的含义: [A ...
- Spring常用注解总结
转载自:https://www.cnblogs.com/xiaoxi/p/5935009.html 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点 ...
- ISP PIPLINE (十四) AE(自动曝光)
自动曝光可以可以通过调节 模拟增益,数字增益,曝光时间,光圈大小来调剂曝光. 曝光在ISP PIPLINE的位置. (先介绍一个额外的知识点: ) gamma compression(也就是de-ga ...