[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Orgmode] running remember with emacsclient - how to get a new frame
From: |
John Wiegley |
Subject: |
Re: [Orgmode] running remember with emacsclient - how to get a new frame |
Date: |
Thu, 06 Sep 2007 18:31:44 -0400 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.1 (darwin) |
"Scott Jaderholm" <address@hidden> writes:
> On 9/6/07, Jason F. McBrayer <address@hidden> wrote:
>
>> I define this function in my .emacs:
>>
>> (defun my-remember nil
>> (progn (select-frame
>> (make-frame '((name . "*Remember*") )))
>> (raise-frame)
>> (remember)))
>>
>
> Jason,
>
> This is great. How would you make it so that the frame displays with
> remember as the only window ?
I've made changes to remember.el to support this kind of usage. Just replace
the `remember' function in your remember.el file with the following.
John
(defcustom remember-in-new-frame nil
"Non-nil means use a separate frame for capturing remember data."
:type 'boolean
:group 'remember)
;;;###autoload
(defun remember (&optional initial)
"Remember an arbitrary piece of data.
With a prefix, uses the region as INITIAL."
(interactive
(list (when current-prefix-arg
(buffer-substring (point) (mark)))))
(funcall (if remember-in-new-frame
#'frame-configuration-to-register
#'window-configuration-to-register) remember-register)
(let* ((annotation
(if remember-run-all-annotation-functions-flag
(mapconcat 'identity
(delq nil (mapcar 'funcall
remember-annotation-functions))
"\n")
(run-hook-with-args-until-success
'remember-annotation-functions)))
(buf (get-buffer-create remember-buffer)))
(run-hooks 'remember-before-remember-hook)
(funcall (if remember-in-new-frame
#'switch-to-buffer-other-frame
#'switch-to-buffer-other-window) buf)
(if remember-in-new-frame
(set-window-dedicated-p
(get-buffer-window (current-buffer) (selected-frame)) t))
(remember-mode)
(when (= (point-max) (point-min))
(when initial (insert initial))
(setq remember-annotation annotation)
(when remember-initial-contents (insert remember-initial-contents))
(when (and (stringp annotation)
(not (equal annotation "")))
(insert "\n\n" annotation))
(setq remember-initial-contents nil)
(goto-char (point-min)))
(message "Use C-c C-c to remember the data.")))
;;;###autoload
(defun remember-other-frame (&optional initial)
(interactive
(list (when current-prefix-arg
(buffer-substring (point) (mark)))))
(let ((remember-in-new-frame t))
(remember initial)))