From: Aaron Ecay <aaronecay@gmail.com>
To: emacs-orgmode@gnu.org
Subject: [RFC] [patch] open/delete attachment with inherited directory
Date: Mon, 16 Dec 2013 00:02:07 -0500 [thread overview]
Message-ID: <874n69fkxc.fsf@gmail.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 719 bytes --]
Hello,
I have some org files where each headline corresponds to an entry in a
bibliography. The headlines each have attached to them a pdf file of
the corresponding document. The attachment directory is set as a
file-level property and inherited by the children (this is so that I can
access the files easily also outside of org).
In the current implementation of org-attach-{open,delete-one}, I am
prompted to choose among all files in the attachment directory (i.e. all
the pdfs of entries in the bibliography), not just the (usually single)
file attached to the headline at point. I think the latter behavior
makes more sense. The attached (heh) patch implements this change. Are
there any comments?
Thanks,
[-- Attachment #2: 0001-org-attach-only-offer-to-delete-open-attachments-of-.patch --]
[-- Type: text/x-diff, Size: 1696 bytes --]
From 4681055651950bdd66090745dcd2cc9f2b90a0f2 Mon Sep 17 00:00:00 2001
From: Aaron Ecay <aaronecay@gmail.com>
Date: Sun, 15 Dec 2013 23:52:02 -0500
Subject: [PATCH] org-attach: only offer to delete/open attachments of the
current headline
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* lisp/org-attach.el (org-attach-open): Only get the files pertaining
to the present headline
This change is useful in cases where the attachment directory is
inherited – in such cases, the we don’t want to see all the files in
the directory, but rather only those associated to the present
headline.
---
lisp/org-attach.el | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/lisp/org-attach.el b/lisp/org-attach.el
index 58ec2d1..6ec5da8 100644
--- a/lisp/org-attach.el
+++ b/lisp/org-attach.el
@@ -374,7 +374,8 @@ The attachment is created as an Emacs buffer."
"Delete a single attachment."
(interactive)
(let* ((attach-dir (org-attach-dir t))
- (files (org-attach-file-list attach-dir))
+ (files (org-entry-get-multivalued-property
+ nil org-attach-file-list-property))
(file (or file
(org-icompleting-read
"Delete attachment: "
@@ -449,7 +450,8 @@ and in the system-specific variants of this variable.
If IN-EMACS is non-nil, force opening in Emacs."
(interactive "P")
(let* ((attach-dir (org-attach-dir t))
- (files (org-attach-file-list attach-dir))
+ (files (org-entry-get-multivalued-property
+ nil org-attach-file-list-property))
(file (if (= (length files) 1)
(car files)
(org-icompleting-read "Open attachment: "
--
1.8.5.1
[-- Attachment #3: Type: text/plain, Size: 15 bytes --]
--
Aaron Ecay
next reply other threads:[~2013-12-16 5:02 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-16 5:02 Aaron Ecay [this message]
2013-12-17 17:34 ` [RFC] [patch] open/delete attachment with inherited directory Nicolas Goaziou
2013-12-18 5:11 ` Aaron Ecay
2013-12-18 13:57 ` Nicolas Goaziou
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=874n69fkxc.fsf@gmail.com \
--to=aaronecay@gmail.com \
--cc=emacs-orgmode@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).