Vim ium C – 全部由键盘控制

Vimium C 是一款、免费开源的键盘增强类浏览器扩展,支持为异构的命令自行设置键盘。只要有键盘,您就可以自由点击网页中的链接和按钮、选择和复制文字和网址,也能够轻松操作浏览器标签页,还可以在便捷的搜索框中轻松搜索历史记录、收藏夹和打开标签页等等。

差异的命令

它支持Vimium已有的所有命令和一些分区新命令,具体命令列表请参考安装后设置界面的帮助对话框。而且同一个键盘可以在不同网站上分别触发各自的命令,也可以基于当前键盘焦点处的页面元素来触发不同的命令。

支持很多网页上的常用操作:

  • 按F自动找到并标出可点击的链接和按钮,输入一个定位标记上的文字即可点击它
  • 按字母O可以显示一个方便美观的搜索框,在里边可以轻松查找浏览历史和收藏的网页,还可以自定义搜索引擎来快速打开搜索页面、查找已打开的标签页、实时计算数学表达式等等。甚至可以按Shift+Enter(上档键+回车)来删除选中的历史记录。
  • 按 J/K/H/L 来像 VIM 里移动屏幕一样滚动屏幕内容
  • 按“/”显示页面内查找浮层,输入“\r”可以做正则查找,“\w”会执行整词匹配,还有\R、\W、\i和\I等多种搭配
  • 按V进入自由选择模式后,能像VIM一样用J/K/H/L等快捷键修改文字的选择范围
  • 按“?” 显示帮助对话框,快速查看所有设置界面的快捷键

当需要操作浏览器标签页时,部分默认快捷键是:

  • 按Shift+J、Shift+K、“g0”或“g$”来切换到左边、右边、最左或最右的标签页
  • 按“^”(Shift+6)切换到最近访问的上一个标签页
  • 按 X 关闭当前网页,然后按 Shift+X 可以恢复。关闭网页时默认会保留一个窗口来避免浏览器退出
  • 按“M+字母”创建标记,在其他网页就可以按“`+字母”切换到(或者打开)该标记的网页
  • 按R刷新网页,Shift+W移动网页到下一个窗口,“yt”复制标签页

以上所有键盘都可以解绑或重新绑定其他命令,也可以添加新的键盘。绑定键盘到新的命令后,还可以实现静音切换网页、删除其他网页、切换网站的图片/ JS功能权限、在无痕模式中重新打开等等。

快捷键最高级

大部分命令都支持按数字关闭来设置数量。比如“5”后跟“Shift+X”可以恢复5个最近关闭的标签页,然后依次按“-15X”这4个键重启关闭当前和左边的共有15个标签页。很多命令都支持通过参数来改变具体的操作细节,可以在快捷键中指定参数。

如果需要在某些网页上特定破坏的快捷键,可以在扩展中设置里指定规则。筛选网址时可使用正则表达式,相关指定的快捷键列表支持“只破坏列表内”和“列表外”全部失效”(此时列出以“^”开头)两种模式。

普通快捷键是通过 JavaScript 脚本程序识别的,存在被其他拦截的可能性,也无法在一些浏览器内置页面上使用。如果需要让快捷键在浏览器的任何位置都生效,Vimium C 提供模块了 8个快捷键,可以自由绑定到任何需要的命令上。但是要注意快捷键不支持按网址规则失效。

Vimium C 还提供了一个用于浏览器地址栏的搜索引擎“v”,在地址栏输入“v + 空格”即可进入搜索模式。此模式类似于按字母O 显示的搜索框,会自动搜索历史记录记录和收藏夹,也可以指定搜索引擎修剪想要的网址。输入“v + 空格 + :t + 空格 + 关键词”即会在已打开的标签页中搜索。

中文处理的优化

  • 支持识别网址中GBK编码的汉字(比如百度贴吧网址的贴吧名)之前在搜索框中搜索,可以自定义要识别的编码
  • 在自由选择模式中,使用w、e、b等处理词汇的快捷键时,会在中文词汇的开始/结束位置处停顿
  • 浏览器语言设置为中文时,默认设置“百度搜索”为默认搜索引擎
  • “上一页”和“下一页”功能默认会识别中文里常用于翻页按钮的词汇

安全与隐私

Vimium C 具有完善的安全机制:

  • 处理网页内容时,及时清理使用痕迹操作,执行命令期间的文字输入、结果等都会被迅速丢弃
  • 相关搜索框支持设置亮点词来隐藏部分结果搜索(搜索激活了某亮点词时则不)
  • 当收到来自其他扩展程序的消息时,会按照一个用户指定的受信任扩展标识符的列表来审核消息来源
  • 可以关闭“借助浏览器云服务同步配置”的功能,且此同步功能不会同步页面内查找历史等信息

键盘绑定

本节修改自philc/vimium 的.

<c-x>修饰键分别指定为Ctrl+x、Meta+x 和 Alt+x 的 、<m-x>和。<a-x>对于 Shift+X 和 Ctrl+Shift+X,只需键入X<c-s-x>。有关如何自定义这些绑定的信息,请参阅下一节。

安装 Vimium C 后,您可以随时通过键入 来查看此键绑定列表?

导航当前页面:

?       show the help dialog for a list of all available keys
h       scroll left
j       scroll down
k       scroll up
l       scroll right
gg      scroll to top of the page
G       scroll to bottom of the page
d       scroll down half a page
u       scroll up half a page
f       show hints for links and buttons to open in the current tab
F       show link hints and open a link in a new tab
r       reload
gs      view source
i       enter insert mode -- all commands will be ignored until you hit Esc to exit
yy      copy the current url to the clipboard
yf      copy a link url to the clipboard
gf      cycle forward to the next frame
gF      focus the main/top frame

导航到新页面:

o       open URL, bookmark, or history entry, on an English letter "o"
O       open URL, bookmark, history entry in a new tab, on an English letter "O"
b       open bookmark
B       open bookmark in a new tab

使用查找:

/       enter find mode
          -- type your search query and hit enter to search, or Esc to cancel
n       cycle forward to the next find match
N       cycle backward to the previous find match

有关高级用法,请参阅wiki 上的正则表达式。

浏览您的历史记录:

H       go back in history
L       go forward in history

操作选项卡:

J, gT   go one tab left
K, gt   go one tab right
g0      go to the first tab. Use `ng0` to go to n-th tab, on `g` and a number character of `0`
g$      go to the last tab
^       visit the previously-visited tab
t       create tab
yt      duplicate current tab
x       close current tab
X       restore closed tab (i.e. unwind the `x` command)
T       search through your open tabs
W       move current tab to new window
<a-p>   pin/unpin current tab

使用标记:

ma, mA  set local mark "a" (global mark "A")
`a, `A  jump to local mark "a" (global mark "A")
``      jump back to the position before the previous jump
          -- that is, before the previous gg, G, n, N, / or `a

其他高级浏览命令:

]], [[  follow the link labeled "next or ">" ("previous" or "<">)
          - helpful for browsing paginated sites
<a-f>   open multiple links in a new tab
gi      focus the first (or n-th) text input box on the page. Use <tab> to cycle through options.
gu      go up one level in the URL hierarchy
gU      go up to root of the URL hierarchy
ge      edit the current URL
gE      edit the current URL and open in a new tab
zH      scroll all the way left
zL      scroll all the way right
v       enter visual mode; use p/P to paste-and-go, use y to yank, use v/c/V to toggle visual/line/caret modes
V       enter visual line mode
yc      select a first word of a sentence and enter visual mode

Vimium C 支持命令重复,例如,点击5t将快速连续打开 5 个选项卡。<esc> (或<c-[>) 将清除队列中的所有部分命令,并且还将退出插入和查找模式。

有一些高级命令未在此处记录;请参阅帮助对话框(键入?)以获取完整列表。

自定义按键映射

本节修改自philc/vimium 的.

当您刚刚安装 Vimium C 时,它将打开一个新选项卡来显示其默认的按键映射,您也可以打开 Vimium C 的选项页面并按?(通常是Shift+/)再次显示这些映射。

您可以在选项页面的“自定义键映射”中重新映射或取消映射任何默认键绑定。

每行输入以下键映射命令之一:

  • map <key> command:将映射到 Vimium C 命令。覆盖网页的默认行为(如果有)。
  • mapKey <key> <another_key>:让 Vimium C 将一个视为另一个键。不会影响您的浏览器或网页。
  • unmap <key>:取消映射键并恢复默认行为(如果有)。
  • unmapAll:取消映射所有绑定。如果您想完全擦除 Vimium C 的默认命令并使用您自己的设置从头开始,这非常有用。

例子:

  • map r reload将 r 键映射为重新加载页面。
  • map <c-d> scrollPageDown将 Ctrl+D 映射为向下滚动页面。
  • unmap r删除 r 键的任何映射。
  • unmap <c-d>删除 Ctrl+D 的任何映射并恢复网页或浏览器的默认行为。
  • unmap g0g删除一个键和下一个键的任何映射0

?可用的 Vimium C 命令可以通过选项页面上的“显示可用命令”链接或键找到。命令名称显示在说明右侧的括号中。

您可以通过以"#或空格字符和下一个#字符开始一行来向键映射添加注释。

以下特殊键可用于映射:

  • <c-*><a-*><s-*><m-*>分别代表 Ctrl、Alt、Shift 和 Meta(macOS 上的命令)和任意键。替换*为所选的键名称。
  • <left><right><up><down>为方向键。
  • <f1>通过<f12>为功能键。
  • <space>为空格键。
  • <tab><enter><delete><backspace><insert>和对于不可打印的<home>按键<end>

以下是一些与 philc/vimium 不同的高级用法:

  • Shift会自动检测到,因此&对应于Shift+7英文 QWERTY 键盘。
    • 但是,如果单个键长度超过 1 个字符,请用<+括起来>并插入一个s-
    • 如果您想在按下多个修饰键时触发某个键,请按a/c/m/s-字母顺序对前缀进行排序
    • 例如,这些键是有效名称:<s-left><c-j><a-s-k><a-#><a-?>
  • mapKey <key:o> <another_key>仅在名为 Vomnibar 的特殊模式下 使键作为另一个键工作
  • map <key:i> command使按键仅在插入模式下触发命令,而不是默认的正常模式
  • 自 v1.99.98 起,如果序列不是很长,则在正常模式和插入模式下 map! <single_key>映射
    • 例如,map! jj是无效的,但是map! <home>map! <c-j>是合适的
  • unmap只能取消映射手动映射的键或默认键,因此第二次unmap <key>可能会导致错误
    • unmap!当您不确定某个键之前是否已映射时可以使用
  • 数字键(09-)默认映射到命令的“计数前缀”,因此不会传递到网页。
    • 然后,即使在 之后unmapAll,它们也会自动添加回下一个map
    • 你可以写unmap 0明确地取消映射它

项目地址

https://github.com/gdh1995/vimium-c?tab=readme-ov-file

新媒体运营,新媒体代运营,cloudneo

原创文章,作者:超哥,如若转载,请注明出处:https://www.chaoneo.cn/archives/3641.html

0 0 投票
五星评级

如果您觉得超哥分享对您有所帮助的话,记得打赏给我😀

订阅
提醒
guest
0 评论
内联反馈
查看所有评论
房先生
我们将24小时内回复。
2024-04-27 15:38:11
您好,有任何疑问请与我们联系!
您的工单我们已经收到,我们将会尽快跟您联系!
[加我微信]
chaoneo
注:点击复制微信号并打开微信APP,添加好友后进行聊天。
[电话联系]
13585372227
[电子邮件]
chaoneo@163.com
取消

选择聊天工具:

1
0
喜欢你的想法,请评论x
()
x