【备忘】Vim配置

 

记录个人习惯的vim配置。

Vim配置

~目录下创建.vimrc文件输入以下配置:

syntax on
set mouse=a

set number
set autoindent
set tabstop=4
set expandtab
set shiftwidth=4
set splitright

set showmode
set showcmd
set encoding=utf-8
set t_Co=256
filetype indent on

set showmatch
set hlsearch
set incsearch

set nobackup
set noswapfile
set noundofile
set nocompatible

set autoread
set foldenable
set history=1000

" set netrw
let g:netrw_winsize = 25
let g:netrw_liststyle = 3
let g:netrw_banner = 0
let g:netrw_browse_split = 2
let g:netrw_chgwin = 1

" map
noremap <C-F> <ESC>:/
noremap <C-B> <ESC>:Vex<CR>

inoremap jj <ESC>

Vim基本操作

vim有四种模式:

  1. 普通模式
  2. 插入模式
  3. 可视模式

每种模式都可以通过按<ESC>进入普通模式。下面分别介绍这几种模式,以及常用的快捷键。

普通模式

普通模式主要是用来看代码的,因此提供了许多快速移动光标、搜索的命令。也可以进行一些简单的删改操作。

j k w l  " 上下左右移动光标
b  " 让光标向前移动一个单词
w  " 让光标向后移动一个单词
0  " 跳转到行首
$  " 跳转到行尾
f 字符  " find,跳转到当前行中光标后的 字符 处
F 字符  " 跳转到当前行中光标前的 字符 处,即反向查找
G  " 跳转到最后一行
gg  " 跳转到第一行
%  " 括号匹配

yy  " 复制当前行
dd  " 删除当前行并复制
x  " 删除当前字符并复制
X  " 删除当前光标前的字符并复制
p  " paste,在光标后粘贴
P  " 在光标后粘贴
u  " 撤销
q:  " 编辑历史命令

i  " 进入插入模式
I  " 在行首插入
a  " after,光标往后移一格,然后进入插入模式
A  " 光效移到改行最后一格,然后进入插入模式
o  " 在当前行下创建一个新行,然后进入插入模式
O  " 在当前行上创建一个新行,然后进入插入模式
s  " 删除当前字符,然后进入插入模式
S  " 删除当前行,然后进入插入模式

命令模式

在普通模式输入:就可以进入命令模式

:w  " 保存
:q  " 退出,如果做出了更改就无法退出
:wq  " 保存并退出
:q!  " 不保存,强制退出
:w filename  " 将文件另存为filename

:! 命令  " 暂时离开vim执行命令行命令

:m, n s/文本1/文本2/g  " 将m, n行的文本1都替换为文本2,g表示每行的所有文本1都要替换

:set  " 进行一些设置

:bd  " 删除当前缓冲区

:his  " 查看命令历史
:reg  " 查看寄存器

插入模式

插入模式就像其他编辑器一样,输入啥就是啥。

可视模式

与普通模式的操作类似,但是此时移动光标会把文本选中,就像用鼠标选中一段文本一样。可视模式也有好几种模式。

  • 可视模式:在普通模式下按v进入该模式。
  • 可视行模式:在普通模式下按V进入该模式。
  • 可视块模式:在普通模式下按ctrl + v进入该模式。

netrw

netrw是一个远程文件读写插件,是内置在vim中的,可以直接用,这里用不到远程操作,把netrw当做一个目录查看器来用。

:E  "explore的缩写,打开当前文件所在目录
:Vex  "vertical explore,左边分屏打开netrw