mirror of
https://gitlab.com/wsdjeg/vim-galore-zh_cn.git
synced 2025-01-19 03:39:29 +08:00
Fix all errors detect by vim script
This commit is contained in:
parent
0fad103137
commit
82181481c8
62
README.md
62
README.md
@ -19,8 +19,8 @@
|
||||
|
||||
## [基础](#基础-1)
|
||||
|
||||
- [缓冲区, 窗口, 标签](#缓冲区窗口标签)
|
||||
- [当前缓冲区, 加载缓冲区, 缓冲区列表,命名缓冲区](#已激活已载入已列出已命名缓冲区)
|
||||
- [缓冲区,窗口,标签](#缓冲区窗口标签)
|
||||
- [当前缓冲区,加载缓冲区,缓冲区列表,命名缓冲区](#已激活已载入已列出已命名缓冲区)
|
||||
- [参数列表](#参数列表)
|
||||
- [按键映射](#按键映射)
|
||||
- [快捷键前缀](#快捷键前缀)
|
||||
@ -51,7 +51,7 @@
|
||||
- [剪贴板使用 (Windows, OSX)](#剪贴板使用-windows-osx)
|
||||
- [剪贴板使用 (Linux, BSD, ...)](#剪贴板使用-linux-bsd-)
|
||||
- [打开文件时恢复光标位置](#打开文件时恢复光标位置)
|
||||
- [备份文件,交换文件,撤销文件以及viminfo文件的处理](#备份文件交换文件撤销文件以及viminfo文件的处理)
|
||||
- [备份文件,交换文件,撤销文件以及 viminfo 文件的处理](#备份文件交换文件撤销文件以及-viminfo-文件的处理)
|
||||
- [编辑远程文件](#编辑远程文件)
|
||||
- [插件管理](#插件管理)
|
||||
- [片段插入](#片段插入)
|
||||
@ -60,15 +60,15 @@
|
||||
|
||||
## [技巧](#技巧-1)
|
||||
|
||||
- [聪明的使用n和N](#聪明的使用n和n)
|
||||
- [聪明的使用 n 和 N](#聪明的使用-n-和-n)
|
||||
- [聪明的使用命令行历史](#聪明的使用命令行历史)
|
||||
- [智能CTRL-L](#智能ctrl-l)
|
||||
- [智能 Ctrl-l](#智能-ctrl-l)
|
||||
- [禁用错误报警声音和图标](#禁用错误报警声音和图标)
|
||||
- [快速移动当前行](#快速移动当前行)
|
||||
- [快速添加空行](#快速添加空行)
|
||||
- [快速编辑自定义宏](#快速编辑自定义宏)
|
||||
- [快速跳转到源(头)文件](#快速跳转到源头文件)
|
||||
- [在GUI中快速改变字体大小](#在gui中快速改变字体大小)
|
||||
- [在 GUI 中快速改变字体大小](#在-gui-中快速改变字体大小)
|
||||
- [根据模式改变光标类型](#根据模式改变光标类型)
|
||||
- [防止水平滑动的时候失去选择](#防止水平滑动的时候失去选择)
|
||||
- [重新载入保存文件](#重新载入保存文件)
|
||||
@ -87,7 +87,7 @@
|
||||
- [查看启动日志](#查看启动日志)
|
||||
- [查看运行时日志](#查看运行时日志)
|
||||
- [调整日志等级](#调整日志等级)
|
||||
- [Vim脚本调试](#vim脚本调试)
|
||||
- [Vim 脚本调试](#vim-脚本调试)
|
||||
- [语法文件调试](#语法文件调试)
|
||||
|
||||
## [杂项](#杂项-1)
|
||||
@ -95,17 +95,17 @@
|
||||
- [附加资源](#附加资源)
|
||||
- [Vim 配置集合](#vim-配置集合)
|
||||
- [内置插件](#内置插件)
|
||||
- [将Control映射到CapsLock](#将control映射到capslock)
|
||||
- [将 Control 映射到 CapsLock](#将-control-映射到-capslock)
|
||||
- [复活节彩蛋](#复活节彩蛋)
|
||||
- [为何使用hjkl](#为何使用hjkl)
|
||||
- [为何使用 hjkl](#为何使用-hjkl)
|
||||
|
||||
## [怪癖](#怪癖-1)
|
||||
|
||||
- [编辑小文件很慢](#编辑小文件很慢)
|
||||
- [编辑大文件很慢](#编辑大文件很慢)
|
||||
- [新行用于NUL](#新行用于nul)
|
||||
- [新行用于 NUL](#新行用于-nul)
|
||||
- [相同部分粘贴 (要不为什么我总要设置‘粘贴’?)](#相同部分粘贴-要不为什么我总要设置粘贴)
|
||||
- [在终端使用Esc延时](#在终端使用esc延时)
|
||||
- [在终端使用 Esc 延时](#在终端使用-esc-延时)
|
||||
- [无法重复函数中执行的搜索](#无法重复函数中执行的搜索)
|
||||
|
||||
## [主题列表](#主题列表-1)
|
||||
@ -120,15 +120,15 @@
|
||||
|
||||
## 什么是 Vim?
|
||||
[Vim](http://www.vim.org) 是一个历史悠久的文本编辑器,可以追溯到 [qed](https://en.wikipedia.org/wiki/QED_(text_editor))。[Bram
|
||||
Moolenaar](https://en.wikipedia.org/wiki/Bram_Moolenaar) 于1991年发布初始版本。
|
||||
Moolenaar](https://en.wikipedia.org/wiki/Bram_Moolenaar) 于 1991 年发布初始版本。
|
||||
|
||||
该项目托管在 [vim.org](http://www.vim.org/index.php)。
|
||||
|
||||
获取Vim:用包管理器安装或者直接到 vim.org [下载](http://www.vim.org/download.php)。
|
||||
获取 Vim:用包管理器安装或者直接到 vim.org [下载](http://www.vim.org/download.php)。
|
||||
|
||||
讨论使用相关问题最好使用 [vim_use](https://groups.google.com/forum/#!forum/vim_use) 邮件列表或者使用 IRC([Freenode](https://freenode.net)) 的 `#vim` 频道。
|
||||
|
||||
欢迎加入我们的中文讨论群:[![QQ](https://img.shields.io/badge/QQ群-121056965-blue.svg)](https://jq.qq.com/?_wv=1027&k=43DB6SG)
|
||||
欢迎加入我们的中文讨论群:[![QQ](https://img.shields.io/badge/QQ%e7%be%a4-121056965-blue.svg)](https://jq.qq.com/?_wv=1027&k=43DB6SG)
|
||||
|
||||
项目在 [Github](https://github.com/vim/vim) 上开发,项目讨论请订阅 [vim_dev](https://groups.google.com/forum/#!forum/vim_dev) 邮件列表。
|
||||
|
||||
@ -136,9 +136,9 @@ Moolenaar](https://en.wikipedia.org/wiki/Bram_Moolenaar) 于1991年发布初始
|
||||
|
||||
## Vim 哲学
|
||||
|
||||
Vim 采用模式编辑的理念,即它提供了多种模式,按键在不同的模式下作用不同。你可以在 _普通模式_ 下浏览文件, 在 _插入模式_ 下插入文本, 在 _可视模式_ 下选择行, 在 _命令模式_ 下执行命令等等。起初这听起来可能很复杂,但是这有一个很大的优点:不需要通过同时按住多个键来完成操作,大多数时候你只需要依次按下这些按键即可。越常用的操作,所需要的按键数量越少。
|
||||
Vim 采用模式编辑的理念,即它提供了多种模式,按键在不同的模式下作用不同。你可以在 _普通模式_ 下浏览文件,在 _插入模式_ 下插入文本,在 _可视模式_ 下选择行,在 _命令模式_ 下执行命令等等。起初这听起来可能很复杂,但是这有一个很大的优点:不需要通过同时按住多个键来完成操作,大多数时候你只需要依次按下这些按键即可。越常用的操作,所需要的按键数量越少。
|
||||
|
||||
和模式编辑紧密相连的概念是“操作符”和“动作”。_操作符_开始一些行为,例如:修改,删除,或者选择文本。之后你要用一个_动作_来指定需要操作的文本区域。比如,要改变括号内的文本,需要执行 `ci(` (读做 _change inner parentheses_);删除整个段落的内容,需要执行 `dap` (读做: _delete
|
||||
和模式编辑紧密相连的概念是“操作符”和“动作”。_操作符_开始一些行为,例如:修改,删除,或者选择文本。之后你要用一个_动作_来指定需要操作的文本区域。比如,要改变括号内的文本,需要执行 `ci(` (读做 _change inner parentheses_);删除整个段落的内容,需要执行 `dap` (读做:_delete
|
||||
around paragraph_)。
|
||||
|
||||
如果你能看见 Vim 老司机操作,你会发现他们使用 Vim 脚本语言就如同钢琴师弹钢琴一样。复杂的操作只需要几个按键就能完成。他们甚至不用刻意去想,因为这已经成为[肌肉记忆](https://en.wikipedia.org/wiki/Muscle_memory)了。这减少[认识负荷](https://en.wikipedia.org/wiki/Cognitive_load)并帮助人们专注于实际任务。
|
||||
@ -169,9 +169,9 @@ Vim 基于一个 [vi](https://en.wikipedia.org/wiki/Vi) 克隆,叫做 [Stevie]
|
||||
|
||||
用户的 vimrc 配置文件可以放在 `~/.vimrc`,或者为了更好的分离放在 `~/.vim/vimrc`,后者更便于通过版本控制软件备份和同步整个配置,比方说 Github。
|
||||
|
||||
你可以在网上找到许多精简的 vimrc 配置文件, 我的版本可能并不是最简单的版本,但是我的版本提供了一套我认为良好的,非常适合入门的设置。
|
||||
你可以在网上找到许多精简的 vimrc 配置文件,我的版本可能并不是最简单的版本,但是我的版本提供了一套我认为良好的,非常适合入门的设置。
|
||||
|
||||
最终你需要阅读完那些设置,然后自行决定需要使用哪些。 :-)
|
||||
最终你需要阅读完那些设置,然后自行决定需要使用哪些。:-)
|
||||
|
||||
精简的 vimrc 地址:[minimal-vimrc](contents/minimal-vimrc.vim)
|
||||
|
||||
@ -191,7 +191,7 @@ Vim 基于一个 [vi](https://en.wikipedia.org/wiki/Vi) 克隆,叫做 [Stevie]
|
||||
|
||||
一些功能特性需要编译支持才能正常工作。例如:为了让 `:prof` 工作,你需要使用 `huge` 模式编译的 Vim,因为那种模式启用了 `+profile` 特性。
|
||||
|
||||
如果你的输出情况并不是那样,并且你是从包管理器安装 Vim 的,确保你安装了 `vim-x`,`vim-x11`,`vim-gtk`,`vim-gnome` 这些包或者相似的, 因为这些包通常都是 `huge` 模式编译的。
|
||||
如果你的输出情况并不是那样,并且你是从包管理器安装 Vim 的,确保你安装了 `vim-x`,`vim-x11`,`vim-gtk`,`vim-gnome` 这些包或者相似的,因为这些包通常都是 `huge` 模式编译的。
|
||||
|
||||
你也可以运行下面这段代码来测试 Vim 版本以及功能支持:
|
||||
|
||||
@ -238,7 +238,7 @@ Vim 是一个文本编辑器。每次文本都是作为**缓冲区**的一部分
|
||||
|
||||
**标签页** (标签)是窗口的集合。因此使用标签当你想使用多种窗口布局的时候。
|
||||
|
||||
简单的说,如果你启动VIM的时候没有附带任何参数,你会得到一个包含着一个呈现一个缓冲区的窗口的标签。
|
||||
简单的说,如果你启动 Vim 的时候没有附带任何参数,你会得到一个包含着一个呈现一个缓冲区的窗口的标签。
|
||||
|
||||
顺带提一下,缓冲区列表是全局可见的,你可以在任何标签中访问任何一个缓冲区。
|
||||
|
||||
@ -270,13 +270,13 @@ Vim 是一个文本编辑器。每次文本都是作为**缓冲区**的一部分
|
||||
:argdo %s/foo/bar/ge | update
|
||||
```
|
||||
|
||||
这条命令将替换掉当前目录下以及当前目录的子目录中所有的C源文件和头文件中的“foo”,并用“bar”代替。
|
||||
这条命令将替换掉当前目录下以及当前目录的子目录中所有的 C 源文件和头文件中的“foo”,并用“bar”代替。
|
||||
|
||||
相关帮助:`:h argument-list`
|
||||
|
||||
## 按键映射
|
||||
|
||||
使用 `:map` 命令家族你可以定义属于你自己的快捷键。该家族的每一个命令都限定在特定的模式下。从技术上来说 Vim 自带高达12中模式,其中6种可以被映射。另外一些命令作用于多种模式:
|
||||
使用 `:map` 命令家族你可以定义属于你自己的快捷键。该家族的每一个命令都限定在特定的模式下。从技术上来说 Vim 自带高达 12 中模式,其中 6 种可以被映射。另外一些命令作用于多种模式:
|
||||
|
||||
| 递归 | 非递归 | 模式 |
|
||||
|-----------|---------------|----------------------------------|
|
||||
@ -358,7 +358,7 @@ Vim 是一个文本编辑器。每次文本都是作为**缓冲区**的一部分
|
||||
## 剪贴板使用 (Windows, OSX)
|
||||
## 剪贴板使用 (Linux, BSD, ...)
|
||||
## 打开文件时恢复光标位置
|
||||
## 备份文件,交换文件,撤销文件以及viminfo文件的处理
|
||||
## 备份文件,交换文件,撤销文件以及 viminfo 文件的处理
|
||||
## 编辑远程文件
|
||||
## 插件管理
|
||||
## 片段插入
|
||||
@ -366,15 +366,15 @@ Vim 是一个文本编辑器。每次文本都是作为**缓冲区**的一部分
|
||||
## MatchIt
|
||||
# 技巧
|
||||
|
||||
## 聪明的使用n和N
|
||||
## 聪明的使用 n 和 N
|
||||
## 聪明的使用命令行历史
|
||||
## 智能CTRL-L
|
||||
## 智能 Ctrl-l
|
||||
## 禁用错误报警声音和图标
|
||||
## 快速移动当前行
|
||||
## 快速添加空行
|
||||
## 快速编辑自定义宏
|
||||
## 快速跳转到源(头)文件
|
||||
## 在GUI中快速改变字体大小
|
||||
## 在 GUI 中快速改变字体大小
|
||||
## 根据模式改变光标类型
|
||||
## 防止水平滑动的时候失去选择
|
||||
## 重新载入保存文件
|
||||
@ -391,23 +391,23 @@ Vim 是一个文本编辑器。每次文本都是作为**缓冲区**的一部分
|
||||
## 查看启动日志
|
||||
## 查看运行时日志
|
||||
## 调整日志等级
|
||||
## vim脚本调试
|
||||
## vim 脚本调试
|
||||
## 语法文件调试
|
||||
# 杂项
|
||||
|
||||
## 附加资源
|
||||
## Vim 配置集合
|
||||
## 内置插件
|
||||
## 将Control映射到CapsLock
|
||||
## 将 Control 映射到 CapsLock
|
||||
## 复活节彩蛋
|
||||
## 为何使用hjkl
|
||||
## 为何使用 hjkl
|
||||
# 怪癖
|
||||
|
||||
## 编辑小文件很慢
|
||||
## 编辑大文件很慢
|
||||
## 新行用于NUL
|
||||
## 新行用于 NUL
|
||||
## 相同部分粘贴 (要不为什么我总要设置‘粘贴’?)
|
||||
## 在终端使用Esc延时
|
||||
## 在终端使用 Esc 延时
|
||||
## 无法重复函数中执行的搜索
|
||||
## 主题列表
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user