RangeLink v1.0.0:完善的 AI 工作流 + R 键绑定系列
Source: Dev.to
TL;DR – 一个键绑定真正统领一切,工作流现在已实现无缝。
🎯 完善的粘贴目标(重大用户体验改进)
| AI 目的地 | 旧工作流 (v0.3.0) | 新工作流 (v1.0.0) |
|---|---|---|
| Claude Code Extension | Select code → Cmd+R Cmd+L → RangeLink 复制链接 → 手动 Cmd+V 粘贴 → 继续输入 | Select code → Cmd+R Cmd+L → 链接自动出现在聊天中 → 继续输入 |
| Cursor AI | 相同的手动粘贴步骤 | 相同的自动粘贴步骤 |
| GitHub Copilot Chat | 不支持 | 完全自动,和上述两者相同 |
| Terminal / Text Editor | 已自动 | 仍然自动 |
打断流程的手动 Cmd+V 步骤已在 所有 AI 聊天目的地中消除。
🤖 GitHub Copilot Chat 集成(第三方 AI 聊天选项)
- 粘贴目标 现在支持 GitHub Copilot Chat。
- 您可以选择 Claude、Cursor AI 或 Copilot——任选最适合您工作流的。
通过命令面板绑定 → “Bind RangeLink to GitHub Copilot Chat Destination”.
⌨️ 完整 R‑Keybinding 系列(新命令)
| Keybinding | Emoji | 名称 | 功能说明 |
|---|---|---|---|
| R‑L | 🚀 | Rocket League | 为当前选区生成 RangeLink。 |
| R‑C | 📻 | Radio Control | 将 RangeLink 仅复制到剪贴板(不粘贴到目标)。 |
| R‑V | 🚐 | Recreational Vehicle | 将 选中的文本本身 直接粘贴到绑定的目标位置。 |
| R‑J | 🎯 | Roger Junior | 跳转(聚焦)到当前绑定的目标位置。 |
所有命令均以 Cmd+R(用于 RangeLink)开头,提供易记且一致的操作模式。
🔄 Smart Bind with Confirmation (QoL)
- 切换目标不再需要显式的 unbind。
- 当已经绑定时运行任何 “Bind to …” 命令,会打开一个 QuickPick 对话框:
Currently bound to: Terminal
Switch to: Claude Code Chat?
[Yes] [No]
该对话框在替换现有绑定之前确认更改。
🛠️ 工作原理(技术细节)
- PR #136 引入了对 Terminal 目标的修复。
executeCommand()可以以编程方式触发其他 VS Code 扩展中的操作。- 对于 Claude Code 与 Cursor AI(它们缺少直接的文本插入 API),RangeLink 现在:
- 将焦点设置到聊天面板(已完成)。
- 将链接复制到剪贴板。
- 等待 50‑150 ms 以确保面板已准备好。
- 以编程方式执行 paste 命令。
结果:一种 基于剪贴板的变通方案,从用户的角度来看与真正的 API 插入 无差别。
📋 使用场景
1️⃣ 仅剪贴板链接 (R‑C)
当你需要链接但不想让它自动粘贴时。
| Situation | Command | Result |
|---|---|---|
| 在不同项目/IDE 实例之间共享链接 | Cmd+R Cmd+C | 已复制格式化的 RangeLink(例如 src/auth.ts#L42C10-L58C25)到剪贴板。 |
| 为跨项目使用共享绝对路径 | Cmd+R Cmd+Shift+C | 已复制绝对路径的 RangeLink。 |
| 粘贴到 Slack、文档等 | – | 无需先解除绑定目标。 |
2️⃣ 直接粘贴所选文本 (R‑V)
当你想发送代码本身而不是链接时。
Cmd+R Cmd+V→ 所选文本会发送到已绑定的目标(Claude、Cursor、Copilot、终端、文本编辑器)。- 多选文本会用换行符连接。
- 非常适合快速向不原生支持代码粘贴的 AI 助手提供代码片段。
3️⃣ 跳转到已绑定目标 (R‑J)
当你的已绑定终端或编辑器被其他标签页/窗格隐藏时。
Cmd+R Cmd+J可立即聚焦目标,免去在标签页中寻找的麻烦。
📚 完整键绑定参考
| 键绑定 | 不是关于… | 实际作用 |
|---|---|---|
| R‑L | Rocket League 🎮 | 在当前选区生成一个 RangeLink。 |
| R‑C | Radio Control 📻 | 仅将 RangeLink 复制到剪贴板 (跳过目标)。 |
| R‑V | Recreational Vehicle 🚐 | 将 选中的文本 直接粘贴到绑定的目标。 |
| R‑J | Roger Junior | 跳转到您当前绑定的目标。 |
🚀 Closing Thoughts
- One keybinding to rule them all 终于成为现实。
- 所有三个 AI 聊天目的地现在提供 identical, fully automatic paste UX。
- 新的 R‑family 命令让您对 link generation、code paste 和 destination navigation 进行细粒度控制。
RangeLink v1.0.0 已成熟、可靠,随时可用于日常使用。祝链接愉快! 🎉
为什么选择 RangeLink?
内置的 AI 功能虽然方便,但会把你锁定在 单一 AI 模型、单一工作流,并且通常只能提供 行级精度。
RangeLink 为你提供:
- 字符级精度 – 精确高亮函数签名、出问题的条件、那一个隐藏的分号。
- 任意 AI 助手 – Claude、GPT、Gemini、Copilot,随你喜欢。
- 单键绑定记忆 –
Cmd+R Cmd+L在所有地方的行为一致。 - 你的 AI 没有的功能 –
Cmd+R Cmd+V可直接将选中文本发送到任意 AI 聊天。 - 灵活的工作流 – 终端用于快速提问,草稿本用于复杂提示,直接的 AI‑chat 集成。
- 通用格式 – GitHub 风格的链接可在任何地方使用(PR、Slack、文档、没有安装 RangeLink 的同事)。
在 v1.0.0 中,工作流与集成工具一样顺畅——甚至可以说更好,因为你不受单一 AI 供应商或工作流模式的限制。
安装 RangeLink
| 平台 | 链接 |
|---|---|
| VS Code | [VS Code Marketplace] |
| Cursor | [Open VSX Registry] |
快速入门
- 绑定目标
Command Palette → “Bind RangeLink to [your preferred destination]” - 选择代码
- 使用 R 键绑定
| 快捷键 | 操作 |
|---|---|
Cmd+R Cmd+L | 生成 RangeLink(自动粘贴到目标) |
Cmd+R Cmd+C | 仅复制到剪贴板(不粘贴到目标) |
Cmd+R Cmd+V | 直接粘贴所选文本 |
Cmd+R Cmd+J | 跳转到绑定的目标 |
Cmd+Click on any RangeLink (terminal or editor) | 在任何 RangeLink(终端或编辑器)上 Cmd+Click → 导航到链接 |
文本编辑器 → 分屏草稿本 目的地仍然是复杂 AI 提示的首选。
反馈与社区
RangeLink v1.0.0 已经 功能完整且稳定。核心愿景已实现:字符级精度、无缝 AI 工作流、灵活的粘贴目标。
我很想听取您的意见
- 您最常使用哪些粘贴目标?(终端?Scratchpad?AI 聊天?)
- R 键绑定在您的工作流中表现如何?
- 有没有粗糙的地方或意外的行为?
您的反馈决定优先级。如果您有兴趣贡献代码、文档或想法,请查看仓库。
贡献
- ⭐ 在 GitHub 上给仓库加星
- 🐛 通过 GitHub Issues 报告问题或分享想法
- 🤝 提交 PR —— 代码库使用 TypeScript,拥有全面的测试覆盖
- 💬 分享您的工作流 —— 在下方留言或开启讨论线程
链接
- GitHub 仓库 –
- VS Code 市场 –
- Open VSX 注册表 –
- 更新日志 –