Linux-Vim的使用,快速入门Vim,Linux入门教程,精讲Linux

Vim的三种模式

  • 输入模式,键入 i 或 a 或 o 都可以进入输入模式。

  • 普通模式,打开Vim默认的模式。

  • 命令模式,键入 : 进入命令模式。
    注意:按下 ESC 可以从输入模式或命令模式退回到普通模式
    退出 vim ,需要在普通模式下切换到命令模式( : )

  • q 无修改的情况下,直接退出。

  • q! 有修改的情况下,不保存退出。

  • wq 有修改的情况下,保存并退出。

Vim的配置相关知识点

编辑 .vimrc 文件: vim .vimrc

bash 复制代码
"语法高亮
set syntax=on
"自动缩进
set autoindent
"Tab键的宽度
set tabstop=4
"显示行号
set number
"高亮显示匹配的括号
set showmatch
"快速插入文本, o表示换行输入
"map <keymap> oContent
"例子:快速打印一行日志,命令模式输入'dz',将会输出 Bd_Log::warning("==dz==>"
map dz oBd_Log::warning("==dz==>".var_export($,true));<ESC>F$1li

编辑完成后, source .vimrc 使配置生效

光标移动

== 普通模式下==

单词间移动

(分隔符为非英文)

  1. w 移动光标到下一个单词的词首
  2. b 移动光标到上一个单词的词首
  3. e 移动光标到下一个单词的结尾
  4. ge 移动光标到上一个单词的结尾
    (分隔符为空格)
  5. W 移动光标到下一个单词的词首word
  6. B 移动光标到上一个单词的词首begin
  7. E 移动光标到下一个单词的结尾end

行内移动

^ 移动到行首

$ 移动到行尾

行移动

  1. :行号 跳转到相应的行首
  2. 行号gg 跳转到相应的行首
  3. gg 跳转到文件第一行
  4. shift + g 跳转到文件最后一行

翻页操作

  1. Ctrl + f:向后翻一页(forward)
  2. Ctrl + b:向前翻一页(backward)
  3. Ctrl + d:向后翻半页(down)
  4. Ctrl + u:向前翻半页(up)

调整页面布局

  1. zz :让当前行居中显示,方便浏览上下文
  2. zt :让当前行显示在最上方,方便浏览后面的内容(t 表示 top)
  3. zb :让当前行显示在最下方,方便浏览前面的内容(b 表示 bottom)

匹配括号

光标提留在括号上,包括( { , } , [ , ] , ( , ) ),键入 % ,将会跳转到匹配

的括号上

文本编辑

o 进入输入模式,并从下一行进行编辑

i 或 a 进入输入模式,从当前光标位置进行编辑

I 从光标所在行的行首进行编辑

A 从光标所在行的行尾进行编辑

dd 快速删除一行,其实这个命令本质上是剪切

5dd 快速删除5行

p 粘贴

yy 复制

5yy 复制5行

u 撤销上一次修改

diw : 删除一个单词(word)

ca" :删除双引号内的文本并编辑(包含双引号自身)

yi" :复制双引号内的文本(不包含双引号自身)

dtx :向右删除,直到遇到遇到字符 x(不包含 x)

搜索与替换

普通模式或命令模式下

/pattern 搜索一个文本,不区分大小写

/pattern\C 搜索一个文本,区分大小写

:范围s/oldpattern/newpattern/替换模式 替换

大小写转换

  1. guu 当前行全部小写, gUU 当前行全部大写
  2. ~ 当前光标下的字符切换大小写, 3~ 当前光标下后面三个字符切换大小写
  3. guiw 当前单词全部小写, gUiw 当前单词全部大写
  4. g~iw 当前单词每个字符大小写交换

列操作

Ctrl + V 进入列操作模式,此时可以选择要操作的行

ec 删除所选单词,并进入编辑模式

ESC 退出编辑模式,并且编辑后的改动作用于选中的行

相关推荐
田野里的雨2 小时前
manticore离线安装(Ubuntu )
linux·运维·服务器·全文检索
Angletank2 小时前
虚拟机中centos简单配置
linux·经验分享·程序人生·centos
黑唐僧2 小时前
Linux 高阶命令-常用命令详解
linux
疾风铸境2 小时前
项目研发实录:电子称SDK封装dll给到QT和C#调用
linux·服务器·网络
怀旧,3 小时前
【C++】19. 封装红⿊树实现set和map
linux·c++·算法
敲上瘾3 小时前
Docker 存储卷(Volume)核心概念、类型与操作指南
linux·服务器·数据库·docker·容器·架构
神里流~霜灭3 小时前
(C++)数据结构初阶(顺序表的实现)
linux·c语言·数据结构·c++·算法·顺序表·单链表
禁默4 小时前
已知 inode 号,如何操作文件?Ext 文件系统增删查改底层逻辑拆解
linux·服务器·数据库
许怀楠4 小时前
【Linux】基础指令(下)
linux
咕咚.萌西4 小时前
RISC-V开发环境搭建
linux·硬件架构·risc-v