vim编辑器
  • ~/.viminfo文件中存储了vim编辑器中常用的命令
  • vim编辑器共有3中模式:命令模式、末行模式和输入模式,三种模式的转换方式如下图所示:
  • vim 文件名      # 编辑一个文件,默认会直接进入命令模式,若该文件不存在,那么会自动进行创建,并直接进入
  • 命令模式下,可以对文件进行搜索、复制、粘贴、剪切(删除)等操作
  • 命令模式下的操作如下:
  • dd      --剪切(删除)光标所在行的内容
  • 5dd    --剪切(删除)光标所在行下面5行,包括光标所在行
  • yy       --复制光标所在行的内容
  • 5yy     --复制光标所在行下面5行,包括光标所在行
  • p         --将剪切或复制的内容粘贴到光标所在行的下一行
  • u         --撤销操作,按一下,撤销上次操作,按两下,撤销上上次操作,···,直到回到最初进入时的状态,然后你会看到文档左下角由如下信息:
  • /搜索内容   --指定内容进行搜索,搜索到结果后,按"n"键或"N"键,可以在多个结果之间切换,"n"键向下切换,"N"键向上切换
  • shift+g      --跳到末行
  • gg             --跳到首行​
  • 命令模式是输入模式与末行模式切换的桥梁,即,输入模式无法直接转换成末行模式,必须先进入命令模式
  • 在命令模式下,按下"a、i、o"中的任意一个键即可进入输入模式
  • a      --在光标所在位置的下一个字符处开始进行编辑
  • i       --在光标所在位置开始进行编辑
  • o      --在光标所在行下新建一个空行开始编辑
  • 输入模式下,可以进行文本内容的正常编辑操作
  • 在输入模式下,按下"Esc"键,即可返回到命令模式
  • 在命令模式下,按下"shift + ;"键,即可进入末行模式
  • 末行模式下的操作如下
  • :w      --保存
  • :q      --退出
  • :wq    --保存并退出
  • :q!      --强制退出
  • :wq!   --强制保存并退出
  • :set nu  --显示行号
  • :$       --​跳到末行
  • :1       --​跳到首行
  • :数字   --跳到指定行​
  • 在末行模式下,按下"Esc"键,即可返回到命令模式
 
 

第十九篇 vim编辑器的使用技巧的更多相关文章

  1. Python之路【第十九篇】:爬虫

    Python之路[第十九篇]:爬虫   网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用 ...

  2. Egret入门学习日记 --- 第十九篇(书中 8.8~8.10 节 内容)

    第十九篇(书中 8.8~8.10 节 内容) 开始 8.8节. 重点: 1.类型推断. 2.类型强制转换,使其拥有代码提示功能. 3.除了TS自带的类型判断,Egret官方也提供了类型判断的方法. 操 ...

  3. Android UI开发第三十九篇——Tab界面实现汇总及比较

    Tab布局是iOS的经典布局,Android应用中也有大量应用,前面也写过Android中TAb的实现,<Android UI开发第十八篇——ActivityGroup实现tab功能>.这 ...

  4. Linux学习笔记(十二)VIM编辑器

    一.概述 VI Visual interface 可视化接口,类似于Windows中的记事本 VI->VIM 操作模式: (1)Command mode 命令模式 (2)Insert mode ...

  5. Linux中vim编辑器常用操作技巧

    Normal 0 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable {mso-styl ...

  6. 第十九篇 -- QTableWidget的使用

    QTableWidget的一些常用方法 下面两个类可以根据自己的情况自定义. 单元格类型的类: class CellType(Enum): ctKey = 1000 ctPath = 1001 ctI ...

  7. 第九十九篇:JS闭包

    好家伙,总是要来的,去面对那些晦涩难懂的原理,它就在那里,等着我去搞定它 首先我要去补充一些最基本的概念, 1.什么是内存? 新华字典永远的神, 但这个解释显然不够   去看看百度百科: 内存: CP ...

  8. Python开发【第十九篇】:Python操作MySQL

    本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb ...

  9. 【Python之路】第十九篇--Python操作MySQL

    本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb ...

随机推荐

  1. vue常用插件之图片预览

    v-viewer(1.4.2) 非常实用的图片预览插件,支持旋转.缩放.翻转等操作 一.npm安装 npm i v-viewer -S 二.全局引入(main.js中) import 'viewerj ...

  2. 关闭Apache的目录浏览功能

    一.默认情况 默认情况下,Apache的配置文件C:\web\apache2.4\conf/httpd.conf中有如下参数: 引用 <Directory "/var/www/html ...

  3. 梯度下降算法&线性回归算法

    **机器学习的过程说白了就是让我们编写一个函数使得costfunction最小,并且此时的参数值就是最佳参数值. 定义 假设存在一个代价函数 fun:\(J\left(\theta_{0}, \the ...

  4. Meta(其他信息)

    简介 元数据就是描述数据的数据 <meta> 元素表示那些不能由其它HTML元相关元素 (<base>, <link>, <script>, <s ...

  5. 链表问题----删除链表的中间节点和a/b处的节点

    删除链表的中间节点和a/b处的节点 对于给定一个链表的头节点head,实现删除链表的中间节点的函数. 例如 不删除任何节点: 1->2,删除节点1 1->2->3,删除节点2 1-& ...

  6. Wannafly Camp 2020 Day 1I K小数查询 - 分块

    给你一个长度为\(n\)序列\(A\),有\(m\)个操作,操作分为两种: 输入\(x,y,c\),表示对\(i\in[x,y]\),令\(A_{i}=min(A_{i},c)\) 输入\(x,y,k ...

  7. MySql 存储大量长字节 Text报错处理办法

    今天线上版本的错误: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Row size too large ...

  8. flask入门(四)

    数据库 flask在数据库这一块有一个扩展应用叫做flask-sqlalchemy,去虚拟环境里pip install一下,如下 我这边用的是mysql,指定的url是这个mysql://userna ...

  9. Java时间格式字符串与Date的相互转化

    目录 将Date转化为格式化字符串 时间格式字符串转化为Date @ 将Date转化为格式化字符串 将Date转化为格式化字符串是利用SimpleDateFormat类继承自 java.text.Da ...

  10. vue项目出现Module not found: Error: Can't resolve 'stylus-loader'错误解决方案

    因为没有安装stylus和stylus-loader npm install stylus stylus-loader --save-dev 安装成功后,使用npm install重新建立依赖 打开项 ...