惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

SecWiki News
SecWiki News
I
InfoQ
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
博客园 - Franky
T
Tailwind CSS Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
量子位
博客园_首页
罗磊的独立博客
V
V2EX
李成银的技术随笔
大猫的无限游戏
大猫的无限游戏
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
True Tiger Recordings
Vercel News
Vercel News
Cyberwarzone
Cyberwarzone
Cisco Talos Blog
Cisco Talos Blog
F
Fox-IT International blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
M
Microsoft Research Blog - Microsoft Research
Know Your Adversary
Know Your Adversary
爱范儿
爱范儿
The Register - Security
The Register - Security
G
Google Developers Blog
The Hacker News
The Hacker News
Malwarebytes
Malwarebytes
S
Securelist
博客园 - 三生石上(FineUI控件)
Jina AI
Jina AI
T
Threat Research - Cisco Blogs
T
The Exploit Database - CXSecurity.com
S
SegmentFault 最新的问题
博客园 - 叶小钗
F
Fortinet All Blogs
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
博客园 - 聂微东
T
Threatpost
博客园 - 【当耐特】
D
Docker
P
Privacy & Cybersecurity Law Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
G
GRAHAM CLULEY
V
Visual Studio Blog
C
Cisco Blogs
IT之家
IT之家
S
Security Archives - TechRepublic
Latest news
Latest news
阮一峰的网络日志
阮一峰的网络日志

PixelNest

会议是效率的杀手 国庆出游记录 对居家办公的一些想法 2022 春节 《搏击俱乐部》的结局 纪念 PAI 头一回达到 100 卡片笔记法 《刑法学讲义》的部分摘录 迁移博客 《UNIX 传奇》摘录 就地过年 一点记录:docker-compose 编排不同项目间的网络 近期读的几本书 办新身份证 git 获取其他分支的单个文件或目录 我的高考成绩 推荐 2020 年上半年的 8 部影视作品 ChromeOS 开发者模式 终于下单了《守望者》 联通来电管家服务 一些实用的 bash 代码片段 关于 鸟枪换炮 《架构整洁之道》摘录 惨淡的星球大战 旧笔记本电脑 if...then... 命令行检测 SSL 证书过期时间 《程序员的职业素养》读书笔记 2019 国庆假期 在 Ubuntu 里按空格键预览 《基本穿搭》笔记 我在 Ubuntu 里安装的一些软件 让人郁闷的英语学习过程 色彩理论基础 向百度主动推送网站链接 两部电视剧 《历史的教训》摘录 新工具 Koa 获取客户端 IP 备案了 apiDoc 基础语法 《代码整洁之道》摘录 BBC 纪录片 《逻辑的乐趣》 读不下去的《原则》 蓝牙鼠标唤醒休眠的 Ubuntu Google 发布会 2018 国庆假期 开发者的时间追踪和统计 使用 curl 发送 POST 请求的几种方式 《重来 2》读书笔记 Linux 和 MacOS 命令行转换图片用法整理 《Go 语言实战》笔记 Win10 微软拼音添加小鹤双拼以及其他配置 针对不同场景临时禁用 eslint 规则的方法 《好妈妈胜过好老师》读书笔记 配置 Win10 Linux 子系统作为开发环境 又读完一本尤·奈斯博的小说 近期写 Go 的一点语法碎片整理 ffmpeg 合并 MP4 M4A 文件 睡前看手机的大问题 《局外人》读书笔记 菊次郎与佐纪 读书笔记 3 菊次郎与佐纪 读书笔记 2 菊次郎与佐纪 读书笔记 1 豆瓣图片服务器防盗链 《如何有效阅读一本书》读书笔记 - 3 《如何有效阅读一本书》读书笔记 - 2 《如何有效阅读一本书》读书笔记 - 1 济南 图个乐 开始看不懂《西部世界》了 剧透 听到几个好故事 过周末 相亲 让人失望的 Apple 悬疑故事 AI 记忆 世纪三部曲 上帝的梦
Vim iskeyword
2018-06-26 · via PixelNest

近期使用 Vim 碰到一个问题,比如有下面这样几行代码

object1.member = 2;
object2.member = 3;

当光标处于第一行的 member 时,按下 * 号搜索 member ,结果搜索的内容是 object1.member ,点号 . 连接的整个部分,被当作一个单词来搜索了。

Vim 通过 iskeyword 的配置项来决定什么样的内容算作一个单词(word),打开 Vim,在 Normal 模式下键入 :set isk?——isk 是 iskeyword 的缩写——可以查看当前的配置,默认的结果是 iskeyword=@,48-57,_,192-255,是由逗号分隔的字符列表,48-57 是指 ASCII 48 到 57 之间的字符,也就是数字 0 到 9,后面跟着的是下划线,再后面是扩展 ASCII 字符中 192 到 255 之间的字符。第一个字符 @ 代表的是 isalpha() 函数“认证”为真的所有字符。

iskeyword 指定的任意字符连接在一起,都被算作一个单词,比如 abc, abc_xyz, abc012xyz, abc_012_xyz,回到最初的问题来,显然是因为点号 . 也被加入 iskeyword 配置项了,查看一下果然如此,iskeyword=@,48-57,_,192-255,-,#,.,多出来三个字符,点号就在其中。

随便搜索就查到为什么会多出来三个字符,是个普遍问题。vim-coloresque 这个 Vim 插件的锅,写 HTML 或者 CSS 中的颜色值时,这个插件提供了直接预览颜色的功能。在插件的 after/syntax/css/vim-coloresque.vim 文件中这样几行导致了问题:

:set isk+=-
:set isk+=#
:set isk+=.

解决办法至少有两个。

一是自己去 Vim 配置文件里用 set isk-=-, set isk-=#,set isk-=. 把这三个字符去掉。

二是把这个插件修改了,把那几行代码中的 set 改成 setl,set 修改了全局配置,setl 中的 l 是指 local,setl 设置的项是个“本地值”,在当前 buffer 或者 window 生效。