Skip to content

Instantly share code, notes, and snippets.

@i-square
Last active August 29, 2024 12:49
Show Gist options
  • Save i-square/d0ee445a9783c2f1901ab3c499d4fb5b to your computer and use it in GitHub Desktop.
Save i-square/d0ee445a9783c2f1901ab3c499d4fb5b to your computer and use it in GitHub Desktop.
surfingkeys扩展的一些使用技巧、踩坑记录

1. PDF阅读器问题

surfingkeys 有一个 pdf viewer 功能,不知道作者出于什么想法要开发此功能并且默认开启,十分影响查看PDF的体验

解决方式

按下 ;s 关闭 pdf viewer 功能

2. 网站黑名单问题

surfingkeys 是个极佳的类vim扩展,默认是对所有网站生效的

但有时候有些页面里内置了一些快捷键,会跟 surfingkeys 冲突,这种时候有两种方式解决这个问题

解决方式

直通模式

直通 pass through 模式指的是在网站上临时禁用 surfingkeys 快捷键,所有的按键直接发送给网站

使用方式是在页面内 按下 Alt-i 组合键,即时生效,右下角会显示 pass through 提示,按 ESC 键退出该模式

禁用页面

如果需要经常访问一些与 surfingkeys 冲突的页面,用直通模式就不太方便了,这种情况可以直接在指定网站禁用

使用方式是在页面内 按下 Alt-s 组合键,刷新页面后生效,再次按下 Alt-s 组合键取消

这个方式的缺点是没有明文保存在配置文件里,屏蔽的网站需要使用 yj 拷贝设置自己查看,不太方便,久了容易忘记

关于这两种禁用方式的区别和开发动机请看 why we brought this in and the difference between Alt-i and Alt-s

正则禁用

有些时候想要在某个域名内禁用 surfingkeys ,每个页面都按一次 Alt-s 显然不现实,幸好还有一种方式可以用来满足这类需求

参考自 regex for disabling

但回答已经比较久远了,目前的版本屏蔽关键词从 blacklist 换成了 blocklist

当前(2024.08.29)可用的配置如下

// 在 surfingkeys 设置里启用高级模式,粘贴以下配置并保存
// 有一点需要注意:如果有多个网站需要屏蔽,则需要写到一条正则里,比如在飞书wiki、牛客喝力扣做题页面禁用
settings.blocklistPattern = /.*feishu.cn\/wiki.*|.*nowcoder.com\/practice.*|.*leetcode.cn\/problems.*/i;

// 取消所有禁用的页面
// settings.blocklistPattern = undefined;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment