01. vim入门
0. 前言
我打算写一个系列文章,用来详细介绍vim的使用技巧,我会从头开始,从vim入门,到vim的各种配置,这是第一篇
1. vim 的三种模式
- Normal mode (正常模式)
- Inster mode (编辑模式)
- command mode (命令行模式)
- 在直接进入 vim 的时候,默认是 Normal mode 模式。
- 如果需要进行编辑,需要进入 instert mode,即编辑模式,输入小写「i」可以进入编辑模式
- 从编辑模式退回到正常模式的时候,只需要按
exc键即可。 - 命令行模式则是在你需要进行保存,使用脚本等操作的时候需要的模式,进入方法为在正常模式下输入 「:」
2. vim 的使用
- 如果没有 vim,使用以下命令来下载
sudo pacman -S neovim
- 注:neovim 也是 vim 的一种衍生版本,只不过更好用,唯一的区别就是启动命令的不同,分别是 vim 和 nvim
- 使用
nvim 文件名即可打开文件,如果文件并不存在的话,就会创建文件
3. 编辑模式
在正常模式下输入 i ,进入编辑模式。

在编辑模式下,编辑完成内容之后,如果需要退出的话,需要进入命令行模式,输入「:」wq,即可选择保存退出。

需要注意的地方是:如果你修改了文件,那么你有两种处理方式
- 保存并退出 - wq
- 不保存退出 - q!
- 如果选择的是不保存退出,并且是使用 nvim 创建的文件,那么在不保存退出的情况下,是不会创建这个文件的(因为文件没有内容)
- 也就是说,在使用 vim 创建文件的时候,在退出的时候,里面必须有内容,这样的话才会创建文件。
2. 正常模式
2.1 导航
- 在 vim 中,导航键可以使用小键盘的上下左右,但是并不建议使用它,因为会影响效率
- vim 中导航键为 :H J K L(移动光标的操作需要进入正常模式)
- K: 上
- J: 下
- H:左
- L:右
2.2 插入
- i 会插入到光标的左侧,如果需要插入的光标的右侧,输入「a」
- 相对的,如果需要插入光标到最前面的位置,使用大写的 「i」或者使用快捷键 「shift + i」
- 在最后面插入光标,则使用大写的「a」或者快捷键「shift + a」
- 如果在行首,并不想移动到行尾再换行,则可以使用「o」来直接新增下一行,大写的「O」可以新增上一行
- 使用大写的「G」可以将光标移动到文件末尾
2.3 复制和粘贴
- yy:复制当前所在的行
- p:粘贴所复制的内容 (粘贴可以指定函数,如 3p 代表粘贴 3 行)
2.4 删除
- dd: 删除所在的一整行
- dG: 删除光标后面的所有内容
- dw:删除光标左边的字符
- cw:删除当前字符并进入编辑模式
- Ci{ : 删除 「{ } 」中的内容,小括号和中括号使用的时候,只需要替换掉括号的符号
2.5 跳转
- W: 跳到每个单词的开头,会把括号当为一个单词
3. 命令行模式
- 在命令行模式中,输入「/ 」可以进入搜索模式, 搜索内容会以高亮显示。

- 替换:
:%s /旧字符/新字符/g,g 代表全局替换
01. vim入门的更多相关文章
- Redis 笔记 01:入门篇
Redis 笔记 01:入门篇 ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ...
- Vim入门基础
公司新员工学习有用到,Vim官网的手册又太大而全,而网上各方资料要么不全面,要么不够基础.在网上搜集各方资料,按照自己的框架整理一份Vim入门基础教程,分享出来.特点是偏向基础,但对入门者来说足够全面 ...
- Ubuntu学习小结(二)PostgreSQL的使用,进程的查看关闭,编辑器之神Vim入门
距离上次发布文章已经过去了很久.在过去的半年中,虽然写的代码不多,但是在接触了计算机一些其他的知识,包括数据库.网络之后,感觉能够融会贯通,写代码水平又有了一定的提高.接下来,将会发表几篇文章,简单介 ...
- Vim入门操作整理
根据小甲鱼的vim入门视频整理,供查阅 移动指令:上下左右 k j h l 翻页: ctrl + b ctrl + f 保存退出:ZZ 普通模式:vim fileName 首次进入的就是普通模式 从 ...
- Vim 入门教程
Vim 入门教程 转载请保留以上信息 Vim 的教程相对比较零散,系统的教程比较少,我也阅读过不少教程,走过很 多弯路.借着 Vim-china 组织组建这一契机,整理下自己学习过的内容, 分享给大家 ...
- vim入门过程
先下载了一本VIM的用户手册. 看到可以使用vimtutor(VIM的入门教程,很不错,由浅入深)作为入门. Unix系统中,请在命令行输入:vimtutor,进入教程. MS-Windows系统中, ...
- [vim] vim入门
1. 概述 工欲善其事 必先利其器.vim是非常好用的文本编辑器,可以将它看作是vi的进阶.绝大多数Unix系统都会内置vi编辑器,vi是文本编辑器,vim是程序编辑器.相比vi,它可以根据文件的类型 ...
- Vim入门学习之Vim解析
Vim解析... ----------------------- 首先你要会从官网上下载你想要的Vim版本: 官网: http://www.vim.org/==================== ...
- SpringMVC札集(01)——SpringMVC入门完整详细示例(上)
自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...
- 01 Linux入门介绍
一.Linux 初步介绍 Linux的优点 免费的,开源的 支持多线程,多用户 安全性好 对内存和文件管理优越 系统稳定 消耗资源少 Linux的缺点 操作相对困难 一些专业软件以及游戏支持度不足 L ...
随机推荐
- 无法启动iis服务器
网上的大多数教程都千篇一律,增加我寻找解决方法的难度 ,在我边气边找的努力下终于找到了解决办法. 不过还是建议先去看其他的教程,其他的不行的话再来看这个 因为工作进程未能正确初始化,因而无法启动.返回 ...
- cmd执行程序时容易卡住阻塞以及解决方式
遇到问题: cmd执行程序时总是卡住,敲回车后继续执行程序. 我司公众号需要去内网获取数据,cmd执行了内网穿透程序,期间cmd两次卡住,公众号无法获取内网数据导致无法运行. 解决方案: cmd默认开 ...
- 【RTOS】《基于嵌入式实时操作系统的程序设计技术》——任务的划分与封装
任务的划分与封装 关键任务的划分处理 对于某些对于系统的正常运作至关重要,少执行一次会对系统产生较大影响的功能,我们倾向于将它从原有任务中剥离出来,称为关键任务,用一个独立任务或者ISR(如外部中断) ...
- API+MVC强类型添加
mvc强类型用HttpClient方法不需要跨域 API添加方法于之前一样,不同的地方在MVC的操作中,而且不需要添加跨域请求 [HttpPost] public ActionResult Add(I ...
- 【LeetCode】 907 子数组的最小值之和
Decrisption Given an array of integers arr, find the sum of min(b), where b ranges over every (conti ...
- 主要转引本地的pycharm如何与服务器连接
需求:本地电脑pycharm上编写程序,在服务器端运行代码. 主要参考了这两篇文章: 1. https://blog.csdn.net/qq_43391414/article/details/1205 ...
- http hook
class XMLHttp { request = function(param) {} ; response = function(param) {} ; } let httpCopy = new ...
- vue项目中 vscode 保存时自动格式化设置,保持单引号和去除多余分号、逗号
1.settings.json中添加: "prettier.semi": false, // 取消自动加分号 "prettier.singleQuote": t ...
- operations使用研究
简介 operations支持在peer或者orderer运行过程中,提供基于restful接口的运维服务.包括健康检查.日志level管理.指标metrics接口等.首先利用test-network ...
- Typora 基本功能
Typora 基本功能 typora 下载官网:https://www.typora.io/ "安装到C盘" 基本使用 1.该文件后缀 .md2.六级标题 :ctrl+ ...