emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Micah Anderson <micah@riseup.net>
To: emacs-orgmode@gnu.org
Subject: Re: org-capture-hook only when in frame?
Date: Tue, 20 Sep 2011 20:21:32 -0400	[thread overview]
Message-ID: <87pqiupwxf.fsf@algae.riseup.net> (raw)
In-Reply-To: 87k4927orp.fsf@hermes.hocat.ca

Tom Prince <tom.prince@ualberta.net> writes:

> On Tue, 20 Sep 2011 18:45:31 -0400, Micah Anderson <micah@riseup.net> wrote:
> Non-text part: multipart/signed
>> 
>> I have a function to create a frame for capture mode that I can call
>> with emacsclient at any time:
>> 
>> ;; Initialization of capture frames
>> (defun make-capture-frame ()
>>   "Create a new frame and run org-capture"
>>   (interactive)  
>>   (make-frame '((name . "capture") (width . 80) (height . 10)))
>>   (select-frame-by-name "capture")
>>   ;; Org-remember splits windows, force it to a single window
> (let ((org-capture-mode-hook))
>>   (add-hook 'org-capture-mode-hook  'delete-other-windows)
>>   (org-capture)
>     )
>> )
> Would probably work, although there may be better ways.

Actually, it seems like I didn't need to do the hook at all, I just had
to put a (delete-other-window) after the (org-capture), like this:


(defun make-capture-frame ()
  "Create a new frame and run org-capture."
  (interactive)
  (make-frame '((name . "capture") (width . 80 ) (height . 10)))
  (select-frame-by-name "capture")
  (org-capture)
  (delete-other-windows)
  )

Now I am trying to get the frame to be destroyed after I've either
canceled, or saved the capture, I found these referenced on the mailing
list, and I've added them and loaded them, but for some reason they
aren't working:

(defadvice capture-finalize (after delete-capture-frame activate)
  "Advise capture-finalize to close the frame if it is the capture frame"
  (if (equal "capture" (frame-parameter nil 'name))
      (delete-frame)))

(defadvice capture-destroy (after delete-capture-frame activate)
  "Advise capture-destroy to close the frame if it is the rememeber frame"
  (if (equal "capture" (frame-parameter nil 'name))
      (delete-frame)))

what happens is I get the frame, I get the org-capture template, I enter
my item, I finalize it, and then I'm switched back to the scratch
buffer, rather than the frame being destroyed :P

micah

  reply	other threads:[~2011-09-21  0:21 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-20 22:45 org-capture-hook only when in frame? Micah Anderson
2011-09-20 23:55 ` Tom Prince
2011-09-21  0:21   ` Micah Anderson [this message]
2011-09-21  0:24     ` Micah Anderson

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=87pqiupwxf.fsf@algae.riseup.net \
    --to=micah@riseup.net \
    --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).