VIM使用

  1. 原版
    1. 文件打开
    2. 多文件操作
    3. 查找
  2. spf13
    1. 乱码解决
    2. 基本操作
    3. 注释 NERDCommenter
    4. 文件导航工具 NERDTree

原版

文件打开

vim x x x # 打开所有文件

:open file # 进入vim后打开文件

:e file # 关闭当前文件 打开新文件

:ls # 查看缓存
:ls
1 %a "boot.sh" line 3
2 "login.sh" line 0

多文件操作

:split :sp  # 打开新的水平窗口
:vsplit :vsp # 打开新的垂直窗口

ctrl + ww # 依次向后切换
ctrl + w + 方向键 h/j/k/l # 向前下上后切换窗口

:n # 编辑下一个文档
:N # 编辑上一个文档

查找

:/http # 查找http 并高亮所有
:noh # 取消高亮

n # 查找下一个

N # 查找上一个

:%s/xxx/yyy/g # 将所有xxx替换为yyy
# :[range]s/xxx/yyy/[c,e,g,i]
# range 1,7 第一行到第七行 1,$ 第一行到结尾 % 全文
# xxx 待替换字符
# yyy 替换为的字符
# c 每次替换前都询问 e 不显示错误 g 全部替换 i 不区分大小写

spf13

https://www.cnblogs.com/floatedclouds/archive/2011/11/10/2245008.html vim分屏

乱码解决

中文乱码

修改locale.conf确实解决了 但我想要的是阿里云那种显示英文中文却不是乱码

最终vim /etc/vconsole.conf将cn改为us就解决了….

中间也尝试安装语言包, 记得是已经安装 最终是修改上面那个之后就好了

基本操作

R           进入替换模式

e 光标后移一个单词 连续的符号也算一个单词 <<
E 光标后移一个单词 无视符号

b 光标前移一个单词 连续的符号也算一个单词 <<
B 光标前移一个单词 无视符号

yy或Y 复制整行
p 光标之后粘贴
P大写 光标之前粘贴

## 2020年7月30日10:14:18
ctrl+r 重做撤销内容
u 撤销

^ 本行第一个非空格字符
$ 本行最后一个非空格字符
G 文件尾
gg 文件头

## 2020年10月27日08:51:36
V选中行后
SHIFT + . 缩进
SHIFT + , 取消缩进

:1,10> 1~10行缩进
:1,10< 1~10行取消缩进

注释 NERDCommenter

,c<space>   当前行注释和切换注释

,cs 块注释当前选中或当前行
v 小写v进入多字符选择模式
V 大写V进入多行选择

文件导航工具 NERDTree

ctrl + e    打开文件导航
o 打开文件, 目录, 标签
go 打开文件, 目录, 标签, 但光标仍位于导航栏

R 刷新根目录下所有文件
r 刷新当前目录下文件

## 2020年7月30日16:22:01
--------------------------------------
t 在新tab中打开选中节点书签
T 同上 但焦点仍在当前tab

gt, gT 在tab之间切换

:tabc 关闭当前tab
:tabo 关闭其他tab
:tabs 查看所有打开的tab
-----------------------------------------
i 在新的split中打开选择文件 两个部分水平切割
gi 同上 焦点仍位于导航栏
s 在新的split中打开选择文件 垂直切割
gs 同上 焦点仍位于导航栏

ctrl+w w 顺序切换, 两个窗口的时候非常方便
ctrl+w hjkl 对应左 下 上 有

ctrl+w c 关闭当前split
ctrl+w o 关闭其他split
-----------------------------------------


tab 补全菜单向下移动
space 补全为当前单词 附带一个空格

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。