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 ...
随机推荐
- WDA学习(24):Context Menu使用
1.17 UI Element:Context Menu使用 本实例测试创建Context Menu. 1.创建Component,View: V_CONTEXT_MENU; 2.创建Context节 ...
- sql中exists用法
exists关键字介绍 exists强调的是 是否返回结果集,不要求知道返回什么,比如: SELECT * FROM AM_USER WHERE EXISTS (SELECT 1 FROM AM_RO ...
- Java基础——控制语句、switch结构与三元运算符
package com.zhao.demo; public class Demo03 { public static void main(String[] args) { int num=1; swi ...
- VMware 15pro虚拟机网络设置
在关闭虚拟机的情况下:VM 15pro. 编辑->虚拟网络编辑器:
- SpringBoot - 参数校验、统一异常、统一响应
转载自: https://blog.csdn.net/chaitoudaren/article/details/105610962 前言 本篇主要要介绍的就是controller层的处理,一个完整的后 ...
- 记一次mybatis中like 不执行sql的问题,单引号 与双引号的坑
使用环境: springboot 2.0.4 mybatis-spring:1.3.2 错误也是比较蛋疼: 不报错,但是查询出来的结果不对. 原错误sql 示意: select * from ...
- flask create_time update_time is_delete
create_time = db.Column(db.DateTime, server_default=func.now()) update_time = db.Column(db.DateTime, ...
- homework1(1)
来自桂林理工大学物联网工程2019届的April 没参与过什么比赛项目但是课程学习能力还行,主要是快速学习之后很快就会忘记,接下来应该好好的总结并熟练记住运用知识完成对生活等各种的实践. 对课程的希望 ...
- JS笔记(四):面向对象、异常处理
镇楼图 Pixiv:torino 六.JS中的面向对象 类(class) 博主视为你已拥有相关基础,这里不再赘述相关概念 类的语法如下,class在本质上是function,可以说class只是针对构 ...
- 文献阅读——Watch Sat and LTO for CaDiCaL and Kissat
Norbert Mantheynmanthey@conp-solutions.comDresden, Germany Proceedings of SAT Competition 2022: Solv ...