关于 dired
dired 是一个用于将近期交互中相关文件打开到 Emacs dired 缓冲区的技能,适合使用 Emacs 的用户。它按文件所在目录组织选择,并通过 emacsclient 标记文件。
主要功能
- 01打开近期交互中的相关文件
- 02同目录文件在 dired 中标记
- 03跨目录文件汇集到专用缓冲区
- 04通过 emacsclient 执行
适用场景
- 01查看刚生成或编辑的文件
- 02集中查看最近工具输出中的文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ xenodium/ emacs-skills --skill dired安装后在 Claude Code 中输入/dired确认已加载。
附带文件agent-skill-dired.el
详细介绍
在 Emacs dired 中打开文件
使用 emacsclient --eval,在 Emacs dired 缓冲区中打开最近一次交互中的文件。仅包含与最近一次交互相关的文件(刚生成、编辑、列出或由最近一次工具输出产生的文件),不要包含整个对话中提到的所有文件。
策略
判断相关文件是否都位于同一目录,还是分布在多个目录中,然后相应地调用 agent-skill-dired。
- 同一目录:
:dir是目录,:files是文件名。会在该目录打开 dired,并在上下文中标记这些文件。 - 多个目录:
:dir是共同的上级目录,:files是相对路径。会创建一个包含所有标记文件的精选*agent-files*缓冲区。
首先,找到 agent-skill-dired.el。该文件与此技能文件位于同一目录,在 emacs-skills 插件目录下的 skills/dired/agent-skill-dired.el。
emacsclient --eval '
(progn
(load "/path/to/skills/dired/agent-skill-dired.el" nil t)
(agent-skill-dired
:dir "/path/to/directory"
:files (quote ("file1.txt"
"file2.txt"
"file3.txt"))))'
规则
:files中使用相对于:dir的相对路径。- 相对于此技能文件所在目录,找到
agent-skill-dired.el。 - 如果最近一次交互中没有相关文件,请告知用户。
- 通过 Bash 工具运行
emacsclient --eval命令。
评论
支持 Markdown