Home / Blog / 工具
Tech · 工具 · Vim

vim 教程

H by Haofly
· 2013-06-06 · updated 2021-05-22 · 38 views

VIM

在编辑界一直有两大传说:Vim——编辑器之神,Emacs——神之编辑器。而我是坚定的VIM党,至今都没用过emacs,垃圾nano倒是用过。我平时用vim的功能用得不多,其实我只是初学者,基本入门而已。这里不列举太多功能,用到的时候再说吧。

保存时切换为root

:w !sudo dd of=%	# 期间会让你确认,但是确认后依然没变化,此时强制退出即可:q!,其实已经写入了

常用快捷键

# 插入
o # 在下面添加一行,并进入编辑模式

# 查找
/关键字	# 使用n查找下一个,使用N查找上一个
?关键字	# 反向查找,从当前位置往前查找

# 查找替换
:%s/源字符串/目的字符串/g    # 全局替换
:%s/^/呵呵			# 在每行行首添加字符串
:%s/$/呵呵			# 在每行行尾添加字符串

# 复制粘贴
## 复制所选择的字段
1. 在要复制的地方,按"v"进入可视模式
2. 移动到最后,按"y"复制选中的文本
3. 按"p"粘贴
## 复制整行
1. 按yy复制当前行
2. 命令行模式按p粘贴
## 复制多行
1. 首先到要复制的行的行首,按"nyy"复制n行
2. 命令行模式按p粘贴

# 快速跳跃
$: 快速跳到行尾
0: 快速跳到行首

# 删除
22 40 dd # 删除指定行范围的行
gg然后dG  # 清空文件内容(先跳到第一行)
## 纵向删除
ctrl + v 进入选择模式
d 删除选择的地方

# 纵向编辑列
ctrl + v 进入选择模式,选择要编辑的行
shift + i 执行编辑操作,这时候只会在一行上编辑
两次ESC 所有行都和那一行一样了

动态配置

:set nu		# 显示行号
:set nonu	# 取消显示行号
:set paste	# 设置为粘贴模式,这样在粘贴的时候tab和空格才能正确。。。

配置文件/etc/vim/vimrc

# 可添加如下这些选项
set autoindent      ; 自动缩进
set number          ; 显示行号
set nonumber		; 取消显示行号
set smartindent     ; 智能对齐
set tabstop=4       ; tab键设置为4个空格宽度
set background=dark ; 如果感觉太暗可以使用这个(比如deepin默认的那个主题)
添加自动缩进: set autoindent
Haofly · 豪翔天下 · 2013-06-06

评论 · Comments

评论由 Giscus 提供,需用 GitHub 账号登录;留言会同步到这个仓库的 Discussions 里。