mcpField
S
select

select

github.com/xenodium生产力14788 次安装14 周前更新
代码仓库

关于 select

此 Emacs 技能通过 `emacsclient --eval` 打开文件,并选中与当前讨论相关的代码或文本,便于直接在 Emacs 中处理。

主要功能

  1. 01跨文件选择行范围
  2. 02激活相关文本区域
  3. 03使用绝对文件路径
  4. 04重新激活其他文件的选择

适用场景

  1. 01选中讨论中的函数
  2. 02选择包含错误的代码
  3. 03标记生成或修改的代码

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/xenodium/emacs-skills --skill select

安装后在 Claude Code 中输入/select确认已加载。

附带文件agent-skill-select.el

详细介绍

在 Emacs 中选择区域

在 Emacs 中打开一个或多个文件,并使用 emacsclient --eval 选择(激活周围的区域)与当前讨论最相关的代码或文本。这样,用户可以立即对所选内容执行操作:缩窄、复制、重构、注释等。

根据最近的交互上下文,确定相关文件和行范围。

如何选择

首先,找到 agent-skill-select.el。该文件与此技能文件位于 emacs-skills 插件目录中的 skills/select/agent-skill-select.el 同级。

emacsclient --eval '
(progn
  (load "/path/to/skills/select/agent-skill-select.el" nil t)
  (agent-skill-select
    :selections (quote (("/path/to/file1.el"
                         :start 10
                         :end 25)
                        ("/path/to/file2.el"
                         :start 5
                         :end 12)))))'
  • :start 是从 1 开始计数的起始行。
  • :end 是从 1 开始计数的结束行。
  • 最后访问的文件会显示视觉上处于激活状态的区域。其他文件会设置标记和光标位置(切换到这些文件后,使用 C-x C-x 重新激活)。

规则

  • 文件使用绝对路径。
  • 选择与当前讨论最相关的区域(例如,刚修改的函数、包含错误的代码块、刚生成的代码)。
  • 如果看不出具体的相关区域,请选择整个相关函数或代码块。
  • 相对于此技能文件所在的目录定位 agent-skill-select.el。
  • 如果最近的交互中不存在相关文件或区域,请告知用户。
  • 通过 Bash 工具运行 emacsclient --eval 命令。

评论

支持 Markdown