Vim Keybindings for Safari 技术文档
2024-12-20 08:30:06作者:齐添朝
1. 安装指南
安装步骤
- 打开Safari浏览器。
- 进入Safari扩展商店。
- 搜索“Vim Keybindings for Safari”扩展。
- 点击“安装”按钮进行安装。
- 安装完成后,重启Safari浏览器。
配置
- 安装完成后,点击Safari菜单栏中的“偏好设置”。
- 在“扩展”选项卡中,找到并启用“Vim Keybindings for Safari”扩展。
- 在扩展的偏好设置中,可以配置不需要加载扩展的网站列表,多个网站之间用逗号分隔。
2. 项目的使用说明
基本功能
- 导航键:
gg(跳到页面顶部)、G(跳到页面底部)、h(左移)、j(下移)、k(上移)、l(右移)。 - 页面滚动:
^D(向下滚动半页)、^U(向上滚动半页)、^F(向下滚动一页)、^B(向上滚动一页)。 - 编辑模式:
esc(退出编辑模式)、i(进入编辑模式)、dd(删除当前行)。 - 标签页操作:
gt(下一个标签页)、gT(上一个标签页)、<number>gt(跳转到指定编号的标签页)。
命令模式
- 退出:
:q(退出当前标签页)、:q!(强制退出当前标签页)。 - 新建标签页:
:tabnew。 - 标签页导航:
:tabn(下一个标签页)、:tabp(上一个标签页)、:tabfir或:tabfirst(第一个标签页)、:tablast(最后一个标签页)。 - 编辑URL:
:e @url、:edit @url、:tabe @url、:tabedit @url。 - 查找替换:
:%s/@search/@replace。
注意事项
@url需要是一个有效的URL,如果未提供http://,扩展会自动添加。@search和@replace需要是正则表达式,支持修饰符,但使用的是JavaScript引擎,而非Vim引擎。
3. 项目API使用文档
命令模式API
:q:退出当前标签页。:q!:强制退出当前标签页。:tabnew:新建一个标签页。:tabn:切换到下一个标签页。:tabp:切换到上一个标签页。:tabfir或:tabfirst:切换到第一个标签页。:tablast:切换到最后一个标签页。:e @url、:edit @url、:tabe @url、:tabedit @url:在当前或新标签页中打开指定URL。:%s/@search/@replace:在当前页面中查找并替换内容。
快捷键API
gg:跳到页面顶部。G:跳到页面底部。h、j、k、l:页面导航。^D、^U、^F、^B:页面滚动。esc:退出编辑模式。i:进入编辑模式。dd:删除当前行。gt、gT、<number>gt:标签页导航。
4. 项目安装方式
通过Safari扩展商店安装
- 打开Safari浏览器。
- 进入Safari扩展商店。
- 搜索“Vim Keybindings for Safari”扩展。
- 点击“安装”按钮进行安装。
- 安装完成后,重启Safari浏览器。
手动安装(适用于开发者)
- 克隆项目仓库到本地。
- 打开Safari的“开发”菜单,选择“显示扩展构建器”。
- 点击“+”按钮,选择“添加扩展”。
- 选择克隆的项目文件夹。
- 点击“安装”按钮进行安装。
- 安装完成后,重启Safari浏览器。
已知问题
- 某些页面会接管键盘输入,导致扩展的覆盖层无法显示或接收键盘输入。
- 某些页面会导致
gt和gT组合键跳过页面内容。
贡献者
- Mutwin Kraus
- Jason Green
- Jannik Nielsen
登录后查看全文
热门项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0144- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
MiniCPM-V-4.6这是 MiniCPM-V 系列有史以来效率与性能平衡最佳的模型。它以仅 1.3B 的参数规模,实现了性能与效率的双重突破,在全球同尺寸模型中登顶,全面超越了阿里 Qwen3.5-0.8B 与谷歌 Gemma4-E2B-it。Jinja00
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0109
热门内容推荐
最新内容推荐
项目优选
收起
暂无描述
Dockerfile
729
4.69 K
Ascend Extension for PyTorch
Python
604
772
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
432
385
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed.
Get Started
Rust
1.08 K
144
deepin linux kernel
C
29
16
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
994
996
暂无简介
Dart
982
247
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.67 K
974
Oohos_react_native
React Native鸿蒙化仓库
C++
346
397
华为昇腾面向大规模分布式训练的多模态大模型套件,支撑多模态生成、多模态理解。
Python
145
232