化身天使的博客

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                       #删除光标处单词

:s/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向上搜索

:s/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  化身天使  阅读(53)  评论(0)    收藏  举报