【Linux】vi / vim 编辑器

在这里插入图片描述

个人主页:Guiat
归属专栏:Linux

在这里插入图片描述

正文

1. vi/vim 编辑器基础概念

1.1 编辑器简介

vi(Visual Interface)是Unix/Linux系统标准文本编辑器,vim(Vi IMproved)是其增强版本,新增了:

  • 语法高亮
  • 多级撤销
  • 插件支持
  • 跨平台兼容性

1.2 安装验证

# Debian/Ubuntu
sudo apt install vim

# CentOS/RHEL
sudo yum install vim-enhanced

# 验证版本
vim --version | head -n1

2. 基础操作模式

2.1 模式切换流程

i/I/a/A
Esc
: / ? / /
Enter
正常模式
插入模式
命令模式

2.2 模式详解

2.2.1 正常模式(Normal Mode)

  • 移动光标:

    h(←) j(↓) k(↑) l(→)
    w(下一个词首) b(上一个词首)
    gg(文件头) G(文件尾)
    
  • 文本操作:

    dd 删除整行
    yy 复制当前行
    p 粘贴
    u 撤销
    Ctrl+r 重做
    

2.2.2 插入模式(Insert Mode)

i 当前光标前插入
I 行首插入
a 当前光标后插入
A 行尾插入
o 下方新建行
O 上方新建行

2.2.3 命令模式(Command Mode)

:w 保存
:q 退出
:wq 保存并退出
:q! 强制退出
:set nu 显示行号
:/search_pattern 向前搜索
:?search_pattern 向后搜索

3. 进阶编辑技巧

3.1 可视模式操作

v 字符可视模式
V 行可视模式
Ctrl+v 块选择模式

# 示例:批量注释
1. Ctrl+v 进入块选择
2. 选择多行
3. Shift+i
4. 输入注释符
5. Esc 生效

3.2 多文件编辑

:split 水平分屏
:vsplit 垂直分屏
Ctrl+w + 方向键 切换窗口
:bn 下一个缓冲区
:bp 上一个缓冲区

4. 高级配置与扩展

4.1 .vimrc 配置文件示例

" 基础设置
set tabstop=4       " 制表符宽度
set shiftwidth=4    " 缩进宽度
set expandtab       " 空格替代制表符
set number          " 显示行号
syntax on           " 语法高亮

" 快捷键映射
nmap <C-s> :w<CR>   " Ctrl+s 保存
imap jk <Esc>       " jk 退出插入模式

4.2 插件管理(使用vim-plug)

# 安装vim-plug
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
" ~/.vimrc配置
call plug#begin('~/.vim/plugged')
Plug 'preservim/nerdtree'        " 文件树
Plug 'vim-airline/vim-airline'   " 状态栏
Plug 'tpope/vim-fugitive'        " Git集成
call plug#end()

5. 效率提升技巧

5.1 宏录制

qa        开始录制宏(寄存器a)
...执行操作
q         停止录制
@a        执行宏
10@a     重复执行10次

5.2 正则替换

:%s/old/new/g      全局替换
:%s/\d\+/NUM/g     替换所有数字为NUM
:'<,'>s/^/#/g      选区行首添加注释

6. 常见问题处理

6.1 故障排查表

现象解决方案
方向键输出ABCD执行:set nocompatible
粘贴格式错乱:set paste 进入粘贴模式
中文乱码添加 set encoding=utf-8

6.2 恢复交换文件

vim -r          查看可用交换文件
vim -r filename 恢复指定文件

7. 学习路径建议

  1. 完成内置教程:终端执行vimtutor
  2. 掌握30个核心命令
  3. 自定义个性化配置
  4. 逐步添加生产力插件
  5. 学习VimScript基础语法

结语
感谢您的阅读!期待您的一键三连!欢迎指正!

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Guiat

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值