Vim 技巧 - 调整查找模式的大小写敏感性
我们既可以全局性地调整 Vim 查找功能的大小写敏感性,也可以在每次查找时进行局部调整。
# 全局设置大小写敏感性
如果启用‘ignorecase’设置,Vim 的查找模式将不区分大小写。正如在自动补全与大小写敏感性中所讨论的那样,我们应该意识到这项设置具有副作用,即会影响 Vim 关键字自动补全的行为。
VSCodeVim 默认忽略搜索模式中的大小写,可通过 vim.ignorecase: false
设置为区分大小写
# 每次查找时设置大小写敏感性
通过使用元字符 \c
与 \C
,可以覆盖 Vim 缺省的大小写敏感性设置。小写字母 \c
会让查找模式忽略大小写,而大写字母 \C
则会强制区分大小写。若在某个查找模式中使用了两者中的某一个,‘ignorecase’的值将被这次查找忽略。
注意:这两个元字符可以出现在模式的任意位置。假设你已输入了完整的模式,却发现需要按区分大小写的方式进行查找。此时,你只需在模式的结尾加上 \C
,该元字符就会作用于它前面的所有文本。
# 启用更具智能的大小写敏感性设置
Vim 提供了一项额外设置,用于最大限度地推测我们是想用大写还是小写,这就是‘smartcase’选项。该选项被启用后,无论何时,只要我们在查找模式中输入了大写字母,‘ignorecase’设置就不再生效了。换句话说,如果我们的模式全是由小写字母组成的,就会按照忽略大小写的方式进行查找,但只要我们输入一个大写字母,查找方式就会变成区分大小写的了。
是不是听起来有点复杂?不过你试一下就会发现这其实很直观。另外请记住,我们总能使用元字符 \C
或 \c
强制使某次查找区分大小写或忽略大小写。下表列举了一组有关大小写敏感性的选项。你也可以通过查阅:h /ignorecase,在 Vim 内置的文档中找到类似的表格。
模式 | ignorecase | smartcase | 匹配 |
---|---|---|---|
foo | off | - | foo |
foo | on | - | foo Foo FOO |
foo | on | on | foo Foo FOO |
Foo | on | on | Foo |
Foo | on | off | foo Foo FOO |
\cfoo | - | - | foo Foo FOO |
foo\C | - | - | foo |
编辑 (opens new window)
上次更新: 11/20/2022, 11:49:40 AM
- 01
- 搭配 Jenkins 实现自动化打包微前端多个项目09-15
- 02
- 自动化打包微前端多个项目09-15
- 03
- el-upload 直传阿里 oss 并且显示自带进度条和视频回显封面图06-05