You need to enable JavaScript to run this app. 能否通过org-attach对话框将目录复制到附件目录?
优惠活动
大模型
产品
解决方案
定价
更多

能否通过org-attach对话框将目录复制到附件目录?

报错原因

默认绑定到C-c C-a c的org-attach-copy命令原生仅支持单文件复制,未实现目录递归复制逻辑,因此操作文件夹时会直接返回File is a directory的错误提示。

解决方案

方法1:自定义扩展命令支持目录复制

将以下代码加入Emacs配置文件,替换原有org-attach-copy的逻辑即可支持目录递归复制:

(defun org-attach-copy (file)
  "Copy FILE to the attachment directory of the current entry.
Supports copying directories recursively."
  (interactive "fCopy file or directory to attachment: ")
  (let ((target (expand-file-name (file-name-nondirectory file)
                                  (org-attach-dir t))))
    (if (file-directory-p file)
        (copy-directory file target t t t)
      (copy-file file target t))
    (org-attach-sync)
    (message "Copied %s to attachment directory" file)))

配置生效后再使用C-c C-a c选择目录即可正常完成复制。

方法2:使用内置操作流程(无需修改配置)

如果不想调整默认配置,可以通过org附件的原生操作组合实现目录添加:

  • 按C-c C-a o打开当前条目对应的附件目录
  • 手动将目标文件夹移动/复制到该目录下
  • 按C-c C-a s执行附件元信息同步,新加入的文件夹就会被纳入org附件的管理体系
org附件库针对文件夹的常用便捷功能
  • 绑定已有目录为附件:执行C-c C-a a后选择目标目录,即可直接完成附件绑定,无需手动迁移文件
  • 批量管理附件目录内容:调用org-attach-dired命令可以直接在dired缓冲区打开附件目录,支持所有dired的批量编辑、移动、重命名操作,操作完成后同步元信息即可生效
  • 目录归档压缩:执行C-c C-a x可以将整个附件目录打包压缩后归档,降低存储空间占用

内容的提问来源于stack exchange,提问作者flipflop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 17:36:07