Vim编辑器

安装

sudo apt-get install vim

状态模式
在这里插入图片描述
vim通常的两种模式:命令模式(左)、插入模式(右)

常用命令

命令详情
i/a/o从命令模式切换到插入模式
Esc从插入模式切换到命令模式
dd删除当前行
yy复制当前行
3dd/yy从当前行开始删除/复制3行
p粘贴剪贴板中内容
u撤销上一次操作
gg去到首行
:w保存
:wq保存并退出
:q退出(未编辑时)
:q!不保存编辑并退出
h/j/k/l左/下/上/右(vi不支持方向键)

自定义配置文件

vim ~/.vimrc
"==============================================================
" vim 自定义配置文件
"==============================================================

set nocompatible            " 关闭 vi 兼容模式
set mouse=a                 " 支持使用鼠标

" 显示设置-----------------------------------------------------
syntax on					" 开启语法高亮显示
set t_Co=256				" 打开256色  
set number                  " 显示行号
set cursorline              " 突出显示当前行
set ruler                   " 打开状态栏标尺
set linespace=2             " 字符间插入的像素行数目
set guioptions-=T           " 隐藏工具栏
set guioptions-=m           " 隐藏菜单栏
set scrolloff=3				" 光标移动到顶或底部时保持3行距离

" 文件设置-----------------------------------------------------
set autowrite				" 自动保存
set autoread				" 设置当文件被改动时自动载入
set confirm					" 在处理未保存或只读文件的时候,弹出确认 
set nobackup				" 从不备份
set noswapfile				" 禁止生成临时文件

" 文本格式和排版------------------------------------------------
set formatoptions=tcrqn
set autoindent              " 继承前一行的缩进方式,特别适用于多行注释
set smartindent             " 为C程序提供自动缩进"
set smartindent             " 开启新行时使用智能自动缩进
set iskeyword+=_,$,@,%,#,-  " 带有如下符号的单词不要被换行分割

" 按键设置------------------------------------------------------
set shiftwidth=4            " 设定 << 和 >> 命令移动时的宽度为 4
set softtabstop=4           " 使得按退格键时可以一次删掉 4 个空格
set tabstop=8               " 设定 tab 长度为 4
set expandtab               " 不要用空格替代制表符
set backspace=indent,eol,start	" 非插入模式无法用退格和 Delete 键

" 状态栏-命令行-窗口--------------------------------------------
set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\ 
set laststatus=2			" 默显示2
set cmdheight=1             " 设定命令行的行数为 2 
set showcmd					" 显示输入的命令
set wildmenu                " 增强模式中的命令行自动完成操作

" 窗口分割时,<c-w-w>,切换窗口重映射为<c-k>-----------------------
nnoremap <C-h> <C-w>h
nnoremap <C-k> <C-w>k
nnoremap <C-j> <C-w>j
nnoremap <C-l> <C-w>l

" 符号自动补全--------------------------------------------------
:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(')')<CR>
:inoremap { {}<ESC>i
:inoremap } <c-r>=ClosePair('}')<CR>
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(']')<CR>
:inoremap < <><ESC>i
:inoremap > <c-r>=ClosePair('>')<CR>
:inoremap " ""<ESC>i
:inoremap ' ''<ESC>i
function ClosePair(char)
	if getline('.')[col('.') - 1] == a:char
        return "\<Right>"
	else
		return a:char
	endif
endfunction

" 中文编码-----------------------------------------------------
"let &termencoding=&encoding
"set fileencodings=utf-8,gbk

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值