Hi Benjamin, Benjamin Slade <sl...@jnanam.net> writes:
> I had the following snippets in my .emacs which allowed me to call up a > mini-emacsclient frame to quickly add notes and TODOs etc. It doesn't > seem to work anymore (it comes up, but as soon as I choose [t], [n] > etc. it disappears). Is there an updated recommendation on how to do > this? > > ################################### > (defcustom remember-frame-alist nil > "Additional frame parameters for dedicated remember frame." > :type 'alist > :group 'remember) > > (defadvice remember (around remember-frame-parameters activate) > "Set some frame parameters for the remember frame." > (let ((default-frame-alist (append remember-frame-alist default-frame-alist))) > ad-do-it)) > > ;;; > > (defun make-remember-frame () > "turn the current frame into a small popup frame for remember mode; > this is meant to be called with > emacsclient -c -e '(make-remember-frame)'" > (modify-frame-parameters nil > '( (name . "*Remember*") ;; must be same as in > mode-hook below > (width . 80) > (height . 20) > (vertical-scroll-bars . nil) > (menu-bar-lines . nil) > (tool-bar-lines . nil))) > (set-frame-parameter (selected-frame) 'alpha '(85 50)) > (org-capture) > (when (fboundp 'x-focus-frame) (x-focus-frame nil)) ;; X only.... > (delete-other-windows) > ) > > ;; when we're in such a remember-frame, close it when done. (doesn't work > when cancelled...) > (add-hook 'org-capture-mode-hook > (lambda() > (define-key org-capture-mode-map (kbd "C-c C-c") > '(lambda()(interactive) > (let ((capture-frame-p > (string= (frame-parameter nil 'name) "*Remember*"))) > (when capture-frame-p (make-frame-invisible)) ;; hide > quickly > (org-capture-finalize) > (when capture-frame-p (delete-frame))))))) > > > (setq org-capture-templates > '(("t" "Todo" entry (file+headline "~/Documents/Org/ToDo.org" "Captured > Tasks") > "* TODO %?\n %i\n %a") > ("n" "Notes" entry (file+headline "~/Documents/Org/Notes.org" > "Captured Notes") > "* %?\nEntered on %U\n %i\n %a") > ("m" "Meetings" entry (file "~/Documents/Org/Meetings.org" ) > "* %?\n %i\n %a") > ("c" "Clipboard" entry (file+headline "~/Documents/Org/Notes.org" > "Captured Notes") > "* %x %?\nEntered on %U\n %i\n %a"))) Your code works for me (Emacs 25 with a current Org from the git repo). Just guessing: Do you have installed a further hook for deleting frames in certain situations which might be the wrongdoer? HTH, Marco -- http://www.wahlzone.de GPG: 0x0A3AE6F2