天天看点

Linux下vim操作基础

总结自vim入门教程

用vim打开文件

vim code.c	
           

vim的两种模式:命令模式/编辑模式

命令模式通过按键 i 转到编辑模式(下方出现INSERT字样)

编辑模式通过按键 ESC 转到命令模式(下方INSERT消失)

命令模式下按 : 表示要输入命令

w表示保存

q表示退出

wq表示保存并退出

**q!**表示强制退出,不保存

打开vim的配置文件(~表示根目录 /.表示当前目录)对vim进行配置(.vimrc文件默认在根目录下)

vim ~/.vimrc
           
set nu
set number
syntax enable       
syntax on           
set tabstop=4
set softtabstop=4   
set cindent shiftwidth=4 
set backspace=indent,eol,start
set autoindent
set laststatus=2
set mouse=a
set scrolloff=4
set showcmd

set nocompatible
set encoding=utf-8
set fileencodings=utf-8,chinese
autocmd Filetype c set omnifunc=ccomplete#Complete
autocmd Filetype cpp set omnifunc=cppcomplete#Complete
set incsearch
set display=lastline
set ignorecase
set nobackup
set ruler
set smartindent
set hlsearch
set cmdheight=1
set shortmess=atI
set formatoptions=tcrqn

inoremap ( ()<ESC>i
inoremap [ []<ESC>i
inoremap { {}<ESC>i
inoremap ' ''<ESC>i
inoremap " ""<ESC>i
inoremap {<CR> {<CR>}<ESC>O

""call plug#begin()
""call plug#end()

"将vim剪贴板里面的东西粘贴到vim之外的地方 
set clipboard=unnamedplus
           

除了常规的上下左右键外,H 表示向左一列

​ L 表示向右一列

​ J 表示向下一行

​ K表示向上一行

W 跳转到下一个单词

B 回跳一个单词

除了PgUp和PgDn可以向上向下翻页,Ctrl+f表示往下翻页

​ Ctrl+b表示往上翻页

数字X+gg 表示跳转到第X行 gg 跳转到第一行 GG或者G跳转到最后一行

数字X+j表示往下X行

数字X+k表示往上X行

如果想向下跳转90但按成80,按Esc消除打错的命令

命令**/Node**+回车,会高亮代码中所有的Node,按n 跳转到下一个Node,Shift+n 表示回退到上一个Node,按Esc清空命令

cc 剪切当前行,随后vim会进入编辑模式

u 撤销恢复

cXc 连续删除X行

yy 复制当前行

p 粘贴

按 v 进入visual模式,可以选中多行代码,按 c 剪切,按 y 复制

按 V 也可以进入visual模式,但该情况下是以行为单位,两者区别如下

我们使用命令全选代码,注意最后一行

ggvG
           
Linux下vim操作基础
ggVG
           
Linux下vim操作基础

全选并复制

ggVGy
           

全选并删除(剪切)

ggcG
ggdG
           

删除(剪切)光标之后的全部内容

cG
dG
           

继续阅读