人生苦短,我用vim
vim的使用
- 一、vim
- 1.1 vim简单介绍
- 1.2 vim的三种模式
- 1.3 vim基本操作
- 1.3.1命令模式下的操作
- 1.3.2 切换到文本输入模式
- 1.3.3 末行模式下的操作
- 1.3.4 vim的配置文件
- 总结
提示:以下是本篇文章正文内容,下面案例可供参考
一、vim
1.1 vim简单介绍
vi
是”visual interface”的简称, 它在 Linux 上的地位就仿佛 Windows 中的记事本一样. 它可以执行编辑、删除、查找、替换、块操作等众多文本操作, 而且用户可以根据自己的需要对其进行定制.。vi
是一个文本编辑程序, 没有菜单, 只有命令。vim
是 vi
的高级版本。
1.2 vim的三种模式
Vi
有三种基本工作模式: 命令模式、文本输入模式、末行模式。
1.3 vim基本操作
1.3.1命令模式下的操作
用户按下 esc
键, 就可以使 vi
进入命令模式下; 当使用 vi
打开一个新文件开始也是进入命令模式下。
保存退出
快捷键 | 操作 |
---|---|
ZZ | 保存退出 |
当你使用 Vi / Vim 进行编辑,在命令行模式下,你使用ZZ退出会出现下列情况(这是我用Centos7.6测试的)
代码格式化
快捷键 | 操作 |
---|---|
gg=G | 代码的格式化 |
光标移动
快捷键 | 操作 |
---|---|
h | 光标左移 |
j | 光标下移 |
k | 代码上移 |
l | 光标右移 |
w | 移动一个单词 |
gg | 光标移动到文件开头 |
G | 光标移动到文件末尾 |
0 | 光标移到到行首 |
$ | 光标移到到行尾 |
nG | 行跳转, 例12G, 跳到12行处 |
删除命令
快捷键 | 操作 |
---|---|
x
|
删除光标后一个字符,相当于 Del |
X
|
删除光标前一个字符,相当于 Backspace |
dw
|
删除光标开始位置的字,包含光标所在字符 |
d0
|
删除光标前本行所有内容,不包含光标所在字符 |
D[d$]
|
删除光标后本行所有内容,包含光标所在字符 |
dd
|
删除光标所在行(本质其实是剪切) |
ndd
|
从光标当前行向下删除指定的行数, 如15dd |
v/ctrl+v
|
使用h、j、k、l移动选择内容, 然后按d删除其中ctrl+v是列模式, v为非列模式 |
撤销和反撤销命令
快捷键 | 操作 |
---|---|
u
|
一步一步撤销, 相当于word文档的ctrl+z |
ctrl-r
|
反撤销, 相当于word文档的ctrl+y |
复制粘贴
快捷键 | 操作 |
---|---|
yy
|
复制当前行 |
nyy
|
复制n行, 如10yy
|
P
|
在光标所在位置向下新开辟一行, 粘贴 |
p
|
在光标所在位置向下新开辟一行, 粘贴 |
剪切操作 |
按dd 或者ndd 删除, 将删除的行保存到剪贴板中, 然后按p/P 就可以粘贴了
|
可视模式
快捷键 | 操作 |
---|---|
v/ctrl+v
|
使用h、j、k、l 移动选择内容;使用 d 删除,使用 y 复制,使用 p 粘贴到光标的后面,使用P粘贴到光标的前面
|
r | 替换当前字符 |
R | 替换当前行光标后的字符 |
查找命令
快捷键 | 操作 |
---|---|
/
|
/xxxx, 从光标所在的位置开始搜索, 按n向下搜索, 按N向上搜索 |
?
|
?xxxx, 从光标所在的位置开始搜索, 按n向上搜索, 按N向下搜索 |
#
|
将光标移动到待搜索的字符串上, 然后按n向上搜索,但N向下搜索 |
shift + k
|
在待搜索的字符串上按shift+k或者K, 可以查看相关的帮助文档 |
1.3.2 切换到文本输入模式
- 从命令模式切换到文本输入模式只需输入如下命令:
快捷键 | 操作 |
---|---|
i
|
在光标前插入 |
a
|
在光标后插入 |
I
|
在光标所在行的行首插入 |
A
|
在光标所在行的行尾插入 |
o
|
在光标所在的行的下面新创建一行, 行首插入 |
O
|
在光标所在的行的上面新创建一行, 行首插入 |
s
|
删除光标后边的字符, 从光标当前位置插入 |
S
|
删除光标所在当前行, 从行首插入 |
按列模式插入 |
先按ctrl+v 进入列模式, 按hjkl 移动选定某列,按I 或者shift+i 向前插入, 然后插入字符, 最后按两次esc
|
1.3.3 末行模式下的操作
- 从命令模式切换到末行模式, 输入冒号
(:)
保存退出
快捷键 | 操作 |
---|---|
q
|
退出 |
q!
|
强制退出,不保存修改内容 |
w
|
保存修改内容, 不退出 |
wq
|
保存并退出 |
x
|
相当于wq |
替换操作
下面表格中 old
表示原字符串, new
表示新字符串
快捷键 | 操作 |
---|---|
:s/old/new/
|
光标所在行的第一个old 替换为new
|
:s/old/new/g
|
光标所在行的所有old 替换为new
|
:m, ns/old/new/g
|
将第m 行至第n 行之间的old 全部替换成new
|
:%s/old/new/g
|
当前文件的所有old 替换为new
|
:1,$s/old/new/g
|
当前文件的所有old 替换为new
|
:%s/old/new/gc
|
同上,但是每次替换需要用户确认 |
快速翻屏
快捷键 | 操作 |
---|---|
ctrl + u
|
向下翻半屏(up )–光标向上移动
|
ctrl + d
|
向上翻半屏(down )–光标向下移动
|
ctrl + f
|
向上翻一屏(front )
|
ctrl + b
|
向后翻一屏(back )
|
- 在末行模式下执行shell命令
!shell
命令
按下两次esc
可以回到命令模式
分屏操作
- 在打开文件之后分屏:
快捷键 | 操作 |
---|---|
sp
|
当前文件水平分屏 |
vsp
|
当前文件垂直分屏 |
sp 文件名
|
当前文件和另一个文件水平分屏 |
vsp 文件名
|
当前文件和另一个文件垂直分屏 |
ctrl-w-w
|
在多个窗口切换光标 |
wall/wqall/xall/qall/qall!
|
保存/保存退出/保存退出/退出/强制退出分屏窗口 |
屏:
分屏:vim -on file1 file2 …
垂直分屏:vim -On file1 file2…
注意:n
可以省略, 有几个文件就分几屏从末行模式切换回命令模式
按两次ESC
, 退格(backspace
)或者回车键
1.3.4 vim的配置文件
用户级别配置文件
~/.vimrc
, 修改用户级别的配置文件只会影响当前用户, 不会影响其他的用户.
例如: 在用户的家目录下的.vimrc
文件中添加
set tabstop=4
----设置缩进4个空格set nu
----设置行号set shiftwidth=4
—设置gg=G缩进4个空格, 默认是缩进8个空格
系统级别配置文件
/etc/vim/vimrc
, 修改了系统级别的配置文件将影响系统下的所有用户.
Note: 由于linux是多用户操作系统, 建议只在用户级别的配置文件下进行修改, 不要影响其他用户.
总结
期待大家和我交流,留言或者私信,一起学习,一起进步!
人生苦短,我用vim相关推荐
- vim命令模式和底线_人生苦短!老鸟带你用Vim偷懒!
本文大约 5000 字, 阅读大约需要 10 分钟 在 Linux 下最常使用的文本编辑器就是 vi 或者 vim 了,如果能很好掌握这个编辑器,非常有利于我们更好的在 Linux 下面进行编程开发. ...
- Linux | 人生苦短,我用Vim【最受欢迎的编辑器】
一探顶级编辑器--Vim 一.初次见面,你好vim 1.vim的基本概念 2.IDE与编辑器的区别 3.vim中的五种常见模式介绍 二.初出茅庐,vim基本操作 1.安装vim,进入vim 2.vim ...
- 将Vim打造成Python快速开发环境(一)
2019独角兽企业重金招聘Python工程师标准>>> 一直以来博主都是用阳春版的Vim来撸Python的,vimrc里只有些配色.键位.tab设置之类的小功能.中间也被安利过一些高 ...
- python的开发者太负责任了_人生苦短,我用 Python
我接触 Python 并不算早,第一次使用 Python 写生产系统的程序是2004年,那时候我已经有了几年的编程经验.当然了,现在这年头说早晚都不合适,昨天我说2000年就开始使用 Vim 编程了, ...
- 人生苦短我用python谁说的_人生苦短,我用 Python
我接触 Python 并不算早,第一次使用 Python 写生产系统的程序是2004年,那时候我已经有了几年的编程经验.当然了,现在这年头说早晚都不合适,昨天我说2000年就开始使用 Vim 编程了, ...
- 初试linux编译(ubuntu+vim)+玩转智能蛇
一.初试linux编译(ubuntu+vim) 步骤: ①下载vmware15+ubuntu桌面版映像 ②安装ubuntu ③下载vim+gcc 在ubuntu终端输入: sudo apt-get i ...
- Linux shell 学习笔记(6)— vim 编辑器使用方法及技巧
1. 检查 vim 软件包 1.1 CentOS 发行版 $ alias vi alias vi='vim' $ $ which vim /usr/bin/vim $ $ ls -l /usr/bin ...
- linux高效办公环境配置(vim、tmux、bash_profile)
文章目录 Vim 个人设置(.vimrc) tmux 安装参考 个人配置(.tmux.conf) bash_prifile 个人配置(.bash_profile) shell Vim 个人设置(.vi ...
- vim中tab键8空格换4空格
前言 很多时候,都看不惯vim中tab键8个空格,觉得这个空格实在是太长了,浪费屏幕,那么现在就让你解决掉8个tab键8个空格,换成4个空格. 具体步骤 打开文件:/etc/vimrc vim /et ...
最新文章
- jQuery选择器实现隔行变色和使用javaScript实现隔行变色
- Spring-data-redis:特性与实例--转载
- Eclipse 中 Maven 项目默认JDK版本为1.5 的解决方法
- Ubuntu 16.04上搭建CDH5.16.1集群
- LuckyDraw app使用CosmosDB的成本分析
- 衰落信道中的平均信噪比和瞬时信噪比
- cmake编译多个文件夹_CMake应用技巧:在一个工程中编译运行多个文件
- Scratch(二十七):恐龙飞奔
- mysql间隙锁_解决MySQL可重复读——详解间隙锁
- Unity发布ios和Android获取相机权限的相关问题
- deepin配置ssh访问
- mysql 1032_MySQL数据库之MySQL 报错 Last_SQL_Errno: 1032
- Apsara Clouder阿里巴巴开发规范认证
- JAVA语言程序设计教程张席_Java语言程序设计教程
- Translation Regime介绍
- 【容斥】[ZJOI2016] 小星星
- cmd启动MySQL服务显示服务名无效,MySQL服务无法启动 Java
- 谷歌chrome xp_从Chrome向Google笔记本添加便笺
- 张一鸣“神隐”130天
- thumb2 BL / BLX指令机器码计算