@@ -12,13 +12,18 @@ Only tested on Mac OSx
1212<details >
1313<summary >点击展开目录菜单</summary >
1414
15+ <!-- TOC -->
16+
17+ - [ 目录] ( #目录 )
1518- [ 安装] ( #安装 )
1619- [ 插件管理] ( #插件管理 )
1720- [ 理解Vim] ( #理解vim )
1821- [ 常用快捷键] ( #常用快捷键 )
22+ - [ 基本配置说明] ( #基本配置说明 )
1923- [ 基础使用] ( #基础使用 )
2024 - [ 快捷键通配符] ( #快捷键通配符 )
2125 - [ 插入命令] ( #插入命令 )
26+ - [ 删除命令] ( #删除命令 )
2227 - [ 定位命令] ( #定位命令 )
2328 - [ 复制剪切] ( #复制剪切 )
2429 - [ 多光标编辑] ( #多光标编辑 )
@@ -28,28 +33,30 @@ Only tested on Mac OSx
2833 - [ 整页翻页] ( #整页翻页 )
2934 - [ 开关注释] ( #开关注释 )
3035 - [ 工程文件菜单] ( #工程文件菜单 )
36+ - [ 切割窗口] ( #切割窗口 )
3137 - [ Tab操作] ( #tab操作 )
32- - [ HTML操作] ( #html操作 )
33- - [ 代码片段补全] ( #代码片段补全 )
38+ - [ 多tab窗口拆分] ( #多tab窗口拆分 )
39+ - [ tab切换] ( #tab切换 )
40+ - [ HTML操作] ( #html操作 )
41+ - [ 代码片段补全] ( #代码片段补全 )
3442- [ 搜索查找替换] ( #搜索查找替换 )
35- + [ 搜索] ( #替换 )
36- + [ 文件搜索] ( #文件搜索 )
37- + [ 搜索文本内容] ( #搜索文本内容 )
38- + [ 快速移动] ( #快速移动 )
39- + [ 替换] ( #替换 )
40- + [ 替换取消] ( #替换取消 )
41- + [ 快捷替换] ( #快捷替换 )
42- + [ 精确替换] ( #精确替换 )
43+ - [ 搜索] ( #搜索 )
44+ - [ 替换] ( #替换 )
4345- [ 文件恢复] ( #文件恢复 )
4446- [ 多文档编辑] ( #多文档编辑 )
47+ - [ 环境恢复] ( #环境恢复 )
4548- [ 插件列表] ( #插件列表 )
46- - [ 主题风格] ( #主题风格 )
47- - [ 使用界面] ( #使用界面 )
48- - [ 管理项目] ( #管理项目 )
49- - [ 代码书写] ( #代码书写 )
50- - [ 代码阅读] ( #代码阅读 )
49+ - [ 插件管理工具] ( #插件管理工具 )
50+ - [ 主题风格] ( #主题风格 )
51+ - [ 使用界面] ( #使用界面 )
52+ - [ 管理项目] ( #管理项目 )
53+ - [ 代码书写] ( #代码书写 )
54+ - [ 代码阅读] ( #代码阅读 )
5155- [ 错误处理] ( #错误处理 )
5256- [ 参考资料] ( #参考资料 )
57+ - [ 其它人的vimrc配置] ( #其它人的vimrc配置 )
58+
59+ <!-- /TOC -->
5360
5461</details >
5562
@@ -300,7 +307,7 @@ dfx # 删除文本直到字符“x”(包括字符“x”): delete forward x
300307
301308## 常用快捷键
302309
303- 这里的快捷键是我配置好的可用的 。
310+ 这里的快捷键大部分是配置好的可用的,还有一部分是Vim自带的快捷键 。
304311
305312<details >
306313<summary >大小写切换</summary >
@@ -475,6 +482,116 @@ zR # 所有代码折叠取消
475482
476483</details >
477484
485+ ## 基本配置说明
486+
487+ <details >
488+ <summary >取消备份</summary >
489+
490+ ``` vim
491+ set nobackup
492+ set noswapfile
493+ ```
494+
495+ </details >
496+
497+ <details >
498+ <summary >文件编码</summary >
499+
500+ ``` vim
501+ set encoding=utf-8
502+ ```
503+
504+ </details >
505+
506+ <details >
507+ <summary >显示行号</summary >
508+
509+ ``` vim
510+ set number " 开启行号显示
511+ " 显示绝对行号 set number
512+ " 取消显示绝对行号 set nonumber
513+ " 显示相对行号 set relativenumber
514+ " 取消显示相对行号 set norelativenumber
515+ ```
516+
517+ </details >
518+
519+ <details >
520+ <summary >显示状态栏</summary >
521+
522+ ``` vim
523+ set laststatus=2 " 总是显示状态栏
524+ ```
525+
526+ </details >
527+
528+ <details >
529+ <summary >高亮显示当前 - 行/列/搜索结果</summary >
530+
531+ ``` vim
532+ set cursorline " 高亮显示当前 - 行
533+ set cursorcolumn " 高亮显示当前 - 列
534+ set hlsearch " 高亮显示搜索结果
535+ ```
536+
537+ </details >
538+
539+ <details >
540+ <summary >取消换行</summary >
541+
542+ ``` vim
543+ set nowrap
544+ ```
545+
546+ </details >
547+
548+ <details >
549+ <summary >设置鼠标操作</summary >
550+
551+ ``` vim
552+ set mouse=a " 设置鼠标滚动
553+ "set mouse=v " 若要使用鼠标复制内容到剪切板
554+ ```
555+
556+ </details >
557+
558+ <details >
559+ <summary >设置缩进</summary >
560+
561+ ``` vim
562+ set cindent
563+ set tabstop=2
564+ set shiftwidth=2
565+ ```
566+
567+ </details >
568+
569+ <details >
570+ <summary >光标定位行显示设置</summary >
571+
572+ ``` vim
573+ " set scrolloff=7 " 在上下移动光标时,光标的上方或下方至少会保留显示的行数
574+ " :se so=7 " 上面配置的简写
575+ :se so=999 " 总在中间
576+ ```
577+
578+ </details >
579+
580+ <details >
581+ <summary >定义快捷键</summary >
582+
583+ ``` vim
584+ " 定义快捷键的前缀,即 <Leader>
585+ let mapleader=";"
586+
587+ nmap LB 0 " 定义快捷键到行首 / “)” 页尾
588+ nmap LE $ " 定义快捷键到行尾
589+
590+ vnoremap <Leader>y "+y " 设置快捷键将选中文本块复制至系统剪贴板
591+ nnoremap <Leader>p "+p " 设置快捷键将系统剪贴板内容粘贴至vim
592+ ```
593+
594+ </details >
478595
479596## 基础使用
480597
@@ -776,15 +893,19 @@ let g:UltiSnipsJumpBackwardTrigger="<leader><s-tab>" " 配向后跳转快捷键
776893
777894### 搜索
778895
779- #### 文件搜索
896+ <details >
897+ <summary >文件搜索</summary >
780898
781899搜索有两个插件可以使用 [ wincent/command-t] ( https://github.com/wincent/command-t ) 和 [ junegunn/fzf] ( https://github.com/junegunn/fzf ) ,` fzf ` 没有下载下来,这里在使用 ` command-t ` ,使用的时候记得,进入目录 ` cd ~/.vim/plugged/command-t ` 运行 ` rake make ` 。
782900
783901``` shell
784902; t # 启动搜索文件
785903```
786904
787- #### 搜索文本内容
905+ </details >
906+
907+ <details >
908+ <summary >搜索文本内容</summary >
788909
789910[ dyng/ctrlsf.vim] ( https://github.com/dyng/ctrlsf.vim ) ,在插件完成安装之后,需要安装另外的工具,才能运行
790911
@@ -885,7 +1006,10 @@ vim搜索时默认是大小写敏感的,要想实现大小写不敏感的搜
8851006set ignorecase
8861007```
8871008
888- #### 快速移动
1009+ </details >
1010+
1011+ <details >
1012+ <summary >文本中快速移动</summary >
8891013
8901014[ Lokaltog/vim-easymotion] ( https://github.com/Lokaltog/vim-easymotion ) 把满足条件的位置用 [ ;A~ Za~ z] 间的标签字符标出来,找到你想去的位置再键入对应标签字符即可快速到达。
8911015
@@ -896,9 +1020,12 @@ set ignorecase
8961020;; F # 光标前代码定位 <搜索自负> 出现定位信息
8971021```
8981022
1023+ </details >
1024+
8991025### 替换
9001026
901- #### 替换取消
1027+ <details >
1028+ <summary >替换取消</summary >
9021029
9031030``` bash
9041031r # → 取代关闭所在处字符
@@ -907,7 +1034,10 @@ u # → 取消上一步操作
9071034ctrl + r # → 返回上一步
9081035```
9091036
910- #### 快捷替换
1037+ </details >
1038+
1039+ <details >
1040+ <summary >快捷替换</summary >
9111041
9121042可视化模式下选中其中一个,接着键入 ctrl-n,你会发现第二个该字符串也被选中了,持续键入 ctrl-n,你可以选中所有相同的字符串,把这个功能与 ctrlsf 结合。这个功能是上面已经提过的 [ 多光标编辑] ( #多光标编辑 ) 的一个插件提供的功能。默认的快捷键已经被替换掉了,` ctrl-n ` 替换成了 ` shift-n ` ,跳过选中` ctrl-k ` 换成了` shift-n ` 。
9131043
@@ -916,7 +1046,11 @@ let g:multi_cursor_next_key='<S-n>' " 选中下一个相同内容
9161046let g:multi_cursor_skip_key='<S-k>' " 跳过当前这个选中
9171047```
9181048
919- #### 精确替换
1049+ </details >
1050+
1051+
1052+ <details >
1053+ <summary >精确替换</summary >
9201054
9211055vim 有强大的内容替换命令,进行内容替换操作时,注意:如何指定替换文件范围、是否整词匹配、是否逐一确认后再替换。
9221056
@@ -936,6 +1070,8 @@ vim 有强大的内容替换命令,进行内容替换操作时,注意:如
9361070` :21,27s/^/#/g ` 行首替换` # ` 替换(增加)掉
9371071` :ab mymail asdf@qq.com ` 输入` mymail ` 摁下空格自动替换成` asdf@qq.com `
9381072
1073+ </details >
1074+
9391075## 文件恢复
9401076
9411077非正常关闭vi编辑器时会生成一个` .swp ` 文件,这个文件是为了避免同一个文件产生两个不同的版本。同时可以用作意外退出恢复历史记录。
0 commit comments