化身天使的博客

vim命令

1. 移动

0 //行首
$ //行尾

^ //行首非空白字符

fx //向后移动到字符x

Fx //向后移动到字符x

e #单词尾

ge #上一个单词尾

b #向后移动一个单词,把符号或标点当作单词处理

B #向后移动一个单词,不把符号或标点当作单词处理

w #向前移动一个单词,将符号或标点当作单词处理

W #向前移动一个单词,不把符号或标点当作单词处理

G //移动到文件尾
gg //移动到文件首

H //移动到上面

M //移动到屏幕中间

L //移动到下面

Ctrl-f //向下移动一屏
Ctrl-b //向上移动一屏

Ctrl-d //向下移动半屏

Ctrl-u //向上移动半屏

Ctrl o ”回到前一个浏览过的位置

Ctrl i “回到后一个浏览过的位置

2. 删除

x ”删除光标处字符

s ”删除光标处字符输入

s #删除一个字符插入

S #删除整行插入

dd "删除整行

D #删除到行尾

C "删除到行尾输入

cw #删除光标后单词插入

caw #删除光标处单词插入

cis "删除整段输入

dw #删除光标后单词

daw #删除光标处单词

😒/a//g #删除所有a
g/this/d //删除带有this的行
g!/this/d //删除不带this的行

3. 编辑

常规编辑

i "光标前输入

a "光标后输入

o “光标下方新开一行输入

O ”欧,光标上方新开一行输入

r “替换光标处字符

u "撤销

Ctrl r "取消撤销

v “标记

y ”复制标记的内容

d ”剪切标记到内容

p “粘贴

列模式

ctrl +q "进入列模式, 或ctrl+v
移动选择选区
shitf + i “插入
esc “按完执行

4. 查找替换

:/a #查找a。n向下搜索,N向上搜索

😒/a/b/g #将当前行所有a替换为b

:%s/a/b/g #将所有a替换为b

5.控制
:color 然后空格 然后Tab #配色

Ctrl z "挂起

fg 回车 "恢复

5. 窗口

:vnew //垂直分割窗口
:new //水平分割
:split //水平分割,新窗口克隆原窗口
:vsplit //垂直分割,新窗口克隆原窗口
ctrl+w+w //切换窗口
:close //关闭窗口,或 :q 等
:only //关闭其余窗口

6. 编程

* //标记字符串
# //反向标记字符串
ctrl+x+l //整行补全
ctrl+x+d //宏补全
ctrl+x+u //函数补全
ctrl+x+o //omni 函数补全
ctrl+n //向下切换 or 补全
ctrl+p //向上切换
ctrl+e //停止补全
:make file //编译 file.c
:cnext //定位到下一个错误

ctrv+v //块操作

$vim -b file //编辑二进制文件
$vim -d file1 file2 //对比文件
$vimdiff file1 file2 //对比
mksession session1.vim //保存会话,保存文件名为session1.vim
source session1.vim //恢复保存的session1.vim

7. 配置文件

/etc/vimrc #全局配置文件路径, 需要有操作权限

.vimrc # 个人配置文件, 家目录下, 不存在时自己创建

" 注释 ,双引号作为注释

set nocompatible "不对vi进行兼容, 兼容模式无法使用vim扩展
set cindent //c语言自动缩进

set autoindent //换行后自动进行同级别缩进

set smartindent //智能对齐, 各种配置前加no就反过来了, 例如nosmartindent
set nu //设置行号, set nonu 取消行号

set ts=4 //tab4个空格

set softtabstop=4 " 按退格键的时候退回缩进的长度
set expandtab " 缩进用空格来表示

set showmatch //显示匹配的括号

set hlsearch //搜索高亮

syntax on //语法高亮

set statusline =%f_%l--%L "状态栏显示文件名,当前行号,总行数

set laststatus=2 "总是显示状态栏, 不能由空格

posted @ 2021-09-01 15:47  化身天使  阅读(70)  评论(0)    收藏  举报