Hi Alan

your code seems very intersting and i have been looking for something like
this for a while. yet for me it opens a new frame without org capture. i
use linux (arch) and put in the following code. please note that when i
evaled your code it said:
`flet' is an obsolete macro (as of 24.3); use either `cl-flet' or `cl-letf'.
so i changed flet to cl-flet and it still didnt work :)

here is the code

(defun make-orgcapture-frame ()
  "Create a new frame and run org-capture."
  (interactive)
  (make-frame '((name . "remember") (width . 80) (height . 16)
                (top . 400) (left . 300)
                (font . "Pragmata Pro-16")
                ))
  (select-frame-by-name "remember")
  (delete-other-windows)
  (flet ((switch-to-buffer-other-window (buf) (switch-to-buffer buf)))
    (org-capture nil "t")))

;; delete the frame in that case
(add-hook 'org-capture-after-finalize-hook
          (lambda ()
            (when (equal
                   (cdr (assoc 'name (frame-parameters (selected-frame))))
                   "remember")
              (delete-frame))))


any ideas?

thx

z

On Tue, Jun 9, 2015 at 12:22 PM, Alan Schmitt <
alan.schm...@polytechnique.org> wrote:

> Hello Eric,
>
> On 2015-06-08 17:23, Eric S Fraga <e.fr...@ucl.ac.uk> writes:
>
> > as monitors get bigger and bigger, I tend to have lots of (emacs)
> > windows in a frame.  No matter how many I have, org-capture takes over
> > the whole frame which is kind of wasteful.
>
> How about using several frames? For instance I have the following code
> bound globally in my OS:
>
> #+begin_src sh
> /usr/local/bin/emacsclient -n -e '(make-orgcapture-frame)'
> #+end_src
>
> The function is defined as follows (with some supporting code to delete
> the frame when I'm done):
>
> #+begin_src emacs-lisp
> (defun make-orgcapture-frame ()
>   "Create a new frame and run org-capture."
>   (interactive)
>   (make-frame '((name . "remember") (width . 80) (height . 16)
>                 (top . 400) (left . 300)
>                 (font .
> "-*-Consolas-normal-normal-normal-*-13-*-*-*-m-0-iso10646-1")
>                 ))
>   (select-frame-by-name "remember")
>   (delete-other-windows)
>   (flet ((switch-to-buffer-other-window (buf) (switch-to-buffer buf)))
>     (org-capture nil "t")))
>
> ;; delete the frame in that case
> (add-hook 'org-capture-after-finalize-hook
>           (lambda ()
>             (when (equal
>                    (cdr (assoc 'name (frame-parameters (selected-frame))))
>                    "remember")
>               (delete-frame))))
> #+end_src
>
> Alan
>
> --
> OpenPGP Key ID : 040D0A3B4ED2E5C7
> Weekly CO₂ average (2015-05-30, Mauna Loa Observatory): 403.41 ppm
>

Reply via email to