Linux常用命令学习笔记:Vim 编辑器学习

1. Vim 概述

Vim(Vi IMproved)是 Vi 编辑器的增强版本,是一个功能强大的文本编辑器,广泛应用于 Linux 和 Unix 系统。Vim 具有模式编辑的特点,分为普通模式、插入模式和命令行模式。

2. Vim 的三种工作模式

(1) 普通模式(Normal Mode)

  • 进入方式:按 Esc
  • 特点:用于移动光标、删除、复制、粘贴等操作
  • 常用操作
    • hjkl:左、下、上、右移动光标
    • w:移动到下一个单词开头
    • b:移动到上一个单词开头
    • 0:移动到行首
    • $:移动到行尾
    • gg:移动到文件开头
    • G:移动到文件末尾
    • :n:移动到第 n 行

(2) 插入模式(Insert Mode)

  • 进入方式:按 iaoIAO等键
  • 特点:用于输入文本内容
  • 常用操作
    • i:在光标前插入
    • a:在光标后插入
    • o:在当前行下方插入新行
    • O:在当前行上方插入新行
    • I:在行首插入
    • A:在行尾插入

(3) 命令行模式(Command Mode)

  • 进入方式:在普通模式下按 :
  • 特点:用于执行保存、退出、查找、替换等命令
  • 常用操作
    • :w:保存文件
    • :q:退出 Vim
    • :wq:保存并退出
    • :q!:强制退出不保存
    • :w filename:另存为
    • :e filename:打开文件
    • :set nu:显示行号
    • :set nonu:隐藏行号

3. 基本编辑操作

(1) 删除操作

x       删除当前字符
dd      删除当前行
dw      删除当前单词
d$      删除到行尾
d0      删除到行首
ndd     删除 n 行

(2) 复制和粘贴

yy      复制当前行
yw      复制当前单词
y$      复制到行尾
y0      复制到行首
nyy     复制 n 行
p       在光标后粘贴
P       在光标前粘贴

(3) 撤销和重做

u       撤销上一次操作
Ctrl+r  重做上一次撤销

(4) 查找和替换

/pattern    向前查找 pattern
?pattern    向后查找 pattern
n           查找下一个
N           查找上一个
:s/old/new  替换当前行的第一个 old 为 new
:s/old/new/g 替换当前行的所有 old 为 new
:%s/old/new/g 替换全文的 old 为 new

4. 高级编辑技巧

(1) 多文件编辑

:e filename    打开新文件
:bn            切换到下一个文件
:bp            切换到上一个文件
:bd            关闭当前文件
:ls            列出所有打开的文件

(2) 分屏操作

:sp filename    水平分屏
:vsp filename   垂直分屏
Ctrl+w w        切换窗口
Ctrl+w h        切换到左边窗口
Ctrl+w j        切换到下边窗口
Ctrl+w k        切换到上边窗口
Ctrl+w l        切换到右边窗口
Ctrl+w q        关闭当前窗口

(3) 宏录制

qa              开始录制宏到寄存器 a
q               停止录制
@a              执行寄存器 a 中的宏
@@              重复执行上一次宏

(4) 标记和跳转

ma              设置标记 a
'a              跳转到标记 a
``              跳转到上次编辑的位置
Ctrl+o          跳转到上一次位置
Ctrl+i          跳转到下一次位置

5. Vim 配置文件

(1) Vim 配置文件位置

~/.vimrc        # 用户配置文件
/etc/vim/vimrc  # 系统配置文件

(2) 常用配置选项

set nu          " 显示行号
set nonu        " 隐藏行号
set tabstop=4   " 设置制表符宽度为 4
set shiftwidth=4 " 设置缩进宽度为 4
set expandtab   " 使用空格代替制表符
set autoindent  " 自动缩进
set smartindent " 智能缩进
set hlsearch    " 高亮搜索结果
set incsearch   " 增量搜索
set ignorecase  " 忽略大小写
set smartcase   " 智能大小写
set mouse=a     " 启用鼠标支持
syntax on       " 语法高亮
filetype on     " 文件类型检测
filetype plugin on " 文件类型插件
filetype indent on " 文件类型缩进

6. Vim 插件管理

(1) Vim 插件管理器

(2) 常用插件

  • NERDTree:文件浏览器
  • CtrlP:文件快速查找
  • vim-airline:状态栏美化
  • vim-fugitive:Git 集成
  • vim-surround:快速操作括号、引号等
  • vim-commentary:快速注释
  • vim-markdown:Markdown 语法高亮

7. Vim 常用命令

(1) 文件操作

:w             保存文件
:w filename    另存为
:q             退出
:q!            强制退出不保存
:wq            保存并退出
:x             保存并退出
:e filename    打开文件
:r filename    读取文件内容到当前光标位置

(2) 光标移动

h j k l        左、下、上、右
w              移动到下一个单词开头
b              移动到上一个单词开头
e              移动到下一个单词末尾
0              移动到行首
$              移动到行尾
gg             移动到文件开头
G              移动到文件末尾
:n             移动到第 n 行

(3) 文本操作

i              插入模式
a              追加模式
o              在当前行下方插入新行
O              在当前行上方插入新行
x              删除当前字符
dd             删除当前行
dw             删除当前单词
yy             复制当前行
p              粘贴
u              撤销
Ctrl+r         重做

(4) 查找替换

/pattern       向前查找
?pattern       向后查找
n              查找下一个
N              查找上一个
:s/old/new     替换当前行的第一个 old
:s/old/new/g   替换当前行的所有 old
:%s/old/new/g  替换全文的 old

8. Vim 实用技巧

(1) 批量注释

Ctrl+v         进入可视块模式
选择多行
I              插入
输入注释符号
Esc            退出

(2) 批量缩进

Ctrl+v         进入可视块模式
选择多行
>              向右缩进
<              向左缩进

(3) 多行编辑

Ctrl+v         进入可视块模式
选择多行
I              插入
输入内容
Esc            退出

(4) 快速跳转

Ctrl+o         跳转到上一次位置
Ctrl+i         跳转到下一次位置
ma             设置标记 a
'a             跳转到标记 a

9. Vim 学习建议

  1. 循序渐进:从基本操作开始,逐步学习高级功能
  2. 多练习:在实际工作中使用 Vim,熟能生巧
  3. 使用插件:根据需求安装合适的插件,提高效率
  4. 参考文档:遇到问题时查阅 Vim 帮助文档(:help
  5. 保持耐心:Vim 学习曲线较陡,但掌握后效率极高

核心要点总结

  • Vim 具有三种工作模式:普通模式、插入模式、命令行模式
  • 熟练掌握光标移动、文本编辑、查找替换等基本操作
  • 了解 Vim 配置文件(.vimrc)的常用设置
  • 学习使用插件提高编辑效率
  • 多练习,熟能生巧

Vim 是一个功能强大的文本编辑器,掌握 Vim 可以大大提高文本编辑效率。


作 者:南烛
链 接:https://www.itnotes.top/archives/427
来 源:IT笔记
文章版权归作者所有,转载请注明出处!


上一篇
下一篇