一篇文章搞定GVIM(根据工作经验持续更新)
文章目录
- 0、引言
- 1、在Linux下面安装VIM
- 2、基本操作
- 2.1三种模式
- 2.1 保存退出:wq没反应?!
- 2.2 解决鼠标不能用的问题
- 2.3 VIM上下左右移动hjkl
- 2.4 跳转到第n行
- 2.5 复制、粘贴、删除一行代码
- 2.6 搜索文件内容
- 2.7 不用鼠标怎么滚动屏幕?
- 2.8 撤销修改与反撤销
- 3、实战操作
- 3.1 自动补齐
- 3.2 如何实现查找时候忽略大小写
- 3.3 如何中间插入序列
0、引言
之前有写过VIM的文章,是通过GVIM官方的教程学习的,但是长期不用,我都已经忘了,现在决定抛弃很多招式,直接用一篇文章搞定VIM的基础操作,至于有的大神式的操作这里不再炫技,在日后不断使用过程中来补充即可。在工程中的我经常用到的操作会放在实战操作里面,并不断更新。
1、在Linux下面安装VIM
使用命令
apt -get install vim
apt -get remove vim//删除VIM
2、基本操作
2.1三种模式
VIM有三种模式:普通模式、编辑模式、命令模式
普通模式【ESC】
编辑模式【i】
命令模式【:】
普通模式如下图所示:
插入命令i:进入编辑模式
命令模式,点击冒号:即可进入命令行模式
比如:q就可以强制退出不保存内容
2.1 保存退出:wq没反应?!
输入一段代码后,然后保存 :wq没反应?仍然输入在终端是是:wq,当成文本来打
先按ESC,再输入:wq
如果是直接打开的vim,还没有创建文件名,可以
:wq filename
2.2 解决鼠标不能用的问题
上古神器vim没有鼠标?众多大神都说有很多命令记住了一样好用,至于好用不好用,对于我来说,我还是喜欢用鼠标,下面就来解决这个问题
修改vim的配置文件
vim ~/vimrc
添加一行,保存退出
set mouse=i
打开是空白的,添加一行即可在编辑模式下面使用鼠标了
2.3 VIM上下左右移动hjkl
向左移动:h
向下移动:j
向上移动:k
向右移动:l
在普通模式下面才有效
如果不习惯,使用右边的小键盘也可以
2.4 跳转到第n行
跳转到第一行
gg【普通模式下】
跳转到最后一行
G【普通模式下】
跳转到指定行,比如第10行
:10【命令模式下】
2.5 复制、粘贴、删除一行代码
复制一行代码
yy
粘贴
p
删除一行代码
dd
以上皆为普通模式下面运行
2.6 搜索文件内容
搜索的命令
/
搜索hello
/hello【普通模式】
继续搜索下一个hello
n【普通模式】
搜索上一个hello
N【普通模式】
2.7 不用鼠标怎么滚动屏幕?
向上滚动屏幕
ctrl+u【普通用户】
向下滚动屏幕
ctrl+d【普通用户】
2.8 撤销修改与反撤销
撤销修改
u【普通模式】
反撤销,也就是取消撤销
ctrl+r【普通模式】
3、实战操作
3.1 自动补齐
按ctrl+p
可以实现自动补齐的功能
3.2 如何实现查找时候忽略大小写
区分大小写
默认是区分大小写的
先输入:
:set ignorecase //忽略大小写
进行查找
再输入
:set noignorecase //恢复到大小写敏感
3.3 如何中间插入序列
一篇文章搞定GVIM(根据工作经验持续更新)相关推荐
- 超硬核!!!一篇文章搞定TCP、UDP、Socket、HTTP(详细网络编程内容+现实解释三次握手四次挥手+代码示例)【网络编程 1】
TCP.UDP.Socket 一天面试的经验: 什么是网络编程 网络编程中两个主要的问题 网络协议是什么 为什么要对网络协议分层 计算机网络体系结构 1 TCP / UDP 1.1 什么是TCP/IP ...
- 一篇文章搞定《RecyclerView缓存复用机制》
一篇文章搞定<RecyclerView缓存复用机制> 前言 零.为什么要缓存 一.RecyclerView如何构建我们的列表视图 二.缓存过程 三.缓存结构 1.mChangedScrap ...
- Android NDK开发之旅(2):一篇文章搞定Android Studio中使用CMake进行NDK/JNI开发
Android NDK开发之旅(2):一篇文章搞定android Studio中使用CMake进行NDK/JNI开发 (码字不易,转载请声明出处:http://blog.csdn.NET/andrex ...
- 一篇文章搞定百度OCR图片文字识别API
一篇文章搞定百度OCR图片文字识别API https://www.jianshu.com/p/7905d3b12104 转载于:https://www.cnblogs.com/chongdongxia ...
- python基础知识-一篇文章搞定Python全部基础知识
原标题:一篇文章搞定Python全部基础知识 前言: 1.Python软件安装 第一章.字符串及数字变量 1.变量 要点提炼:Python变量为强类型动态类型.换言之,变量很任性,你给他int,他就是 ...
- 一篇文章搞定DX9.0c 环境里的3DXSpriet !!
四年前写过一篇<一篇文章搞定3DXSpriet !! >得到了很多的反馈,现在那篇文章中的好多代码已经不可以再用了,所以对其中的一些代码做了改动,为了方便初学者掌握3DXSpriet,再写 ...
- 一篇文章搞定java中的垃圾回收机制面试题
一篇文章搞定java中的垃圾回收机制面试题 任何语言在运行过程中都会创建对象,也就意味着需要在内存中为这些对象在内存中分配空间,在这些对象失去使用的意义的时候,需要释放掉这些内容,保证内存能够提供给新 ...
- 一篇文章搞定《Android布局优化》
------<一篇文章搞定Android布局优化> 前言 为什么要进行布局优化? Android绘制原理 双缓冲机制 布局加载原理 布局加载优化的一些方法介绍 AsyncLayoutInf ...
- 一篇文章搞定交换机的三种端口类型
啥?交换机的三种端口类型是哪三种?他们有哪些特点?数据处理过程是怎样?你可千万别再一问三不知了,一篇文章帮你搞定. 一.交换机三种端口类型特点: 二.交换机接口出入数据处理过程: 理解这三个名词解 ...
最新文章
- C/C++常见库函数实现(memcpy、memset、 strcpy)
- Java怎么学?一些非常有用的书单和网站推荐
- 初识canvas,使用canvas做一个百分比加载进度的动画
- 开启简单的laravel5 MVC模式
- 真香定律!Android动态换肤实现原理解析,原理+实战+视频+源码
- JEB 无源码调试 以dvm smali字节码方式,Demo尝试
- b超可以看出什么_B超什么时候可以看到孕囊?
- 数据库进行大数据量插入/更新操作
- 试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点
- 好用的在线HTTP接口测试 - HTTP GET/POST模拟请求测试工具-ApiPost
- iOS 玩转微信——下拉小程序
- (十五)TcpClient
- Apache-Flink深度解析-JOIN-LATERAL-Time Interval(Time-windowed)
- awd的批量脚本 pwn_北极星杯 awd复现
- 基于javaweb的医院病历信息管理系统(java+ssm+jsp+bootstrap+easyui+mysql)
- 01 Redis安装、配置详解、数据备份与恢复
- myeclipse编译无效,debug下一步执行不正确,修改的代码没有起作用
- 云炬股市学习笔记20220118
- 住房月租金预测大数据赛
- 招银网络科技提前批面试
热门文章
- Class类是什么? Class.forName()是干什么的?
- A Complete List of .NET Open Source Developer Projects
- linux入门教程(七) linux系统用户以及用户组管理
- 关于谷歌自动换行的奇异效果
- perl学习:一些字符串操作
- DataList 外部事件获取DataList内部值
- TreeView控件节点重命名后没有进入beginEdit的解决方案
- UA MATH563 概率论的数学基础 中心极限定理22 度量概率空间中的弱收敛 Portmanteau定理
- WebX.0:Web1.0
- 数据库中的约束和三大范式