【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
进入插入模式
i/a 在光标字符处/后 I/A 在光标行首/尾 O/o 在光标上/下行新建一行
s 删除当前字符后插入 与xi功能相同 cw 删除当前单词后插入 与dwi功能相同
文件退出与保存
:wq, ZZ, :x[如果内容和源文件一致 则不保存] 保存退出 :q! 不保存退出
:w 保存 :w! 保存只读文件(root) :saveas FILE 另存为
将当前文件中部分内容另存为另外一个文件 :ADDR1,ADDR2w PATH
将另外一个文件填充到当前文件中 :r PATH
光标移动
逐字符移动
h, l ,j ,k --- left, right, up, down <iMode>
逐单词移动
w移至下一个单词词首 e移至当前单词/下一个单词词尾
b移至当前单词/前一个单词词首 B与b类似
shift+left/right 单词词首移动 <iMode>
翻屏操作
ctrl+b/f 上/下翻一屏 ctrl+u/d 上/下翻半屏
shift+up/down 上/下翻一屏 <iMode>
行内跳转
0, ^[非空白字符]行首 $, g_[非空白字符]行尾
#G 第#行 G 最后一行 gg 第一行
#f& 第#个&字符 #t& 第#个&字符前 F/T 功能相同 方向相反
% 匹配括号移动 m& 标记 '& 标记跳转 ''回到上一次位置
{/} 上/下一段开头 (/)光标处/下一个句子开头
编辑命令
x 删除单个字符 dd 删除整行 yy 复制整行
P/p 粘贴至所在行上方/下方|字符前/后
d, x, yy与组合 #[d/x/yy] #代表数字 de dw ye 等等也可以组合
替换模式
r 替换单个字符 用法同x R 替换多个字符 需ESC
u 撤销前一次编辑操作 #u 撤销#次编辑操作
撤销最近一次撤销操作 Ctrl+r 重复最近一次操作 .
选取模式
v 按字符选取 V 按行选取 Ctrl+V 按块选取
查找和替换
/PATTERN 从前往后查找 ?PATTERN 从后往前查找 n 查找下一个 N 查找上一个
用法同sed :{sed_script} 例子-> :.,$s/hello/HELLO/g
打开文件时操作
光标自动处于 vim +N FILE N行 vim + FILE 最后一行 vim +/PATTERN FILE 符合PATTERN的行
vim FILE... :next :prev 来切换上/下一个文件 :first :last 切换到最前/后一个文件
vim -o/O FILE...水平/垂直分窗口编辑多个文件 :qa 退出所有文件/窗口
打开多个文件和分屏
:e FILE :bn :bp来切换上/下一个文件 如果使用:wq则全部保存 [临时打开多个文件]
Ctrl+w, s 水平拆分窗口 Ctrl+w, v 垂直拆分窗口 Ctrl+w, ARROW 窗口间切换光标
:sp 水平拆分窗口 :vsp 垂直拆分窗口 :qa 退出所有文件/窗口
其他
配置文件 全局 /etc/vimrc 个人 ~/.vimrc 行为 ~/.viminfo
和shell交互 不用退出vim也能执行命令 :! CMD
vim出错的应对情况 删除对应文件.swp后缀名的文件
一个vim高级操作例子
0<Ctrl-v>[选取行数]I[输入字符串]<ESC> 批量在行首添加字符串
<Ctrl-v>[选取行数]$A[输入字符串]<ESC> 批量在行尾添加字符串
一些vim设置
显示/隐藏行号 :set nu/nonu
忽略/区分大小写 :set ic/noic
设定自动缩进/不缩进 :set ai/noai
查找单词时高亮 :set hlsearch/nohlsearch
语法高亮 :syntax on/off
C/C++缩进方式:set cindent
用其他命令以及map键位映射等高级设置配置VIM
自己的vim简易设置[shell脚本]
set nu
set tabstop=4
set ai
inoremap ( ()<ESC>i
inoremap [ []<ESC>i
inoremap { {}<ESC>i<cr><cr><UP><TAB>
inoremap < <><ESC>i
inoremap " ""<ESC>i
inoremap ' ''<ESC>i
imap if<TAB> if [ <RIGHT>; then<cr>fi<ESC>O<TAB><UP><RIGHT>
imap for<TAB> for in ; do<cr>done<ESC>O<TAB><UP>
imap case<TAB> case in<cr>*)<cr><TAB><cr>;;<cr><bs>esac<ESC>4k2li
imap func<TAB> (<RIGHT> {
来源:oschina
链接:https://my.oschina.net/u/2898088/blog/742128