vim
u :撤销
crtl + r:重复上一个动作
.重复上一个动作
p 向下复制
P 向上复制
crtl + z / fg
光标
| h | j | k | l |
|---|---|---|---|
| ← | ↓ | ↑ | → |
| + | - | 0 | $ |
|---|---|---|---|
| 上一行,非空格字符 | 下一行,非空格字符 | 当前行最前面 | 当前行最后面 |
number + 空格:向后移动 20 个空格
编辑
x
| x | X | nX,如 10X |
|---|---|---|
| 删除键,向后删 | 删除键,向前删 | 删除 10 个字符 |
d
| dd | 20dd | d1G | dG |
|---|---|---|---|
| 整行删除 | 删除 20 行(包括当前) | 光标到顶,全删(包括光标) | 光标到尾,全删(包括光标) |
y
| yy | 20yy | y1G | yG |
|---|---|---|---|
| 选中并且复制当前行 | 复制 20 行(包括当前) | 光标到顶,全复制(包括光标) | 光标到尾,全复制(包括光标) |
其他快捷键 01
| d$ | d0 |
|---|---|
| 删除光标后面所有字符(行,包括光标) | 删除光标前面所有字符(行,不包括光标) |
| y$ | y0 |
|---|---|
| 复制光标后面所有字符(行,包括光标) | 复制光标前面所有字符(行,不包括光标) |
vim +
多行选择
选择:v V ctrl+v
复制:y
删除:d
多文档切换
:n 去下一个文档:N 去上一个文档:files 显示所有文档
窗口分割
:sp: 开启分屏:sp: 文件名:开启分屏,打开文件
ctrl + w + k:↑
ctrl + w + j:↓:q: 退出
设置
http://cn.linux.vbird.org/linux_basic/0310vi_3.php
vim ~/.vimrc" 基础设置
set nocompatible " 不启用 Vi 兼容模式
set number " 显示行号
" set relativenumber " 显示相对行号(便于跳转)
set cursorline " 高亮当前行
set showcmd " 显示命令
set ruler " 显示光标位置
" 缩进与制表
set tabstop=4 " Tab 显示为 4 个空格
set shiftwidth=4 " 缩进为 4 个空格
set expandtab " 将 Tab 替换为空格
set autoindent " 自动缩进
set smartindent " 智能缩进
" 搜索相关
set ignorecase " 搜索时忽略大小写
set smartcase " 如果有大写字符,则大小写敏感
set incsearch " 输入搜索内容时实时搜索
set hlsearch " 搜索后高亮匹配内容
" 外观
syntax on " 启用语法高亮
set background=dark " 深色背景适配
colorscheme desert " 设置配色方案(可换成你喜欢的)
" 编辑增强
set mouse=a " 启用鼠标支持
set clipboard=unnamedplus " 使用系统剪贴板(需要 Vim 支持)
set wildmenu " 命令行补全增强
set backspace=indent,eol,start " Backspace 更加智能
set undofile " 启用撤销历史文件
" 状态栏优化
set laststatus=2
set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\
" 文件编码
set encoding=utf-8
set fileencodings=utf-8,gbk,latin1翻页
向上 = Ctrl + f = Ctrl + d
向下 = Ctrl + b = Ctrl + u
G 最后一行
1G,第一行
2G,第二行
gg = 1G = 第一行
| H | M | L |
|---|---|---|
| 可视区域 最上 | 可视区域 中间 | 可视区域 最下 |
find
/word 向下找 word
?word 向上找 word
n 下一个
N 上一个
.swp
Swap file ".man.config.swp" already exists!底下说明你可进行的动作
[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit, (A)bort:[O]pen Read-Only:只读
(E)dit anyway:正常打开,但是放弃之前的内容
(R)ecover:加载之前的内容,需要自己手动删除 .swp
(D)elete it:删除 .swp,无视