[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[O] org-edit-src-code outside of org
From: |
Jorge A. Alfaro-Murillo |
Subject: |
[O] org-edit-src-code outside of org |
Date: |
Tue, 13 May 2014 16:49:57 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) |
Hi, I would like to use org-edit-src-code outside of org, I think it
would be very handy in Message mode, to send messages that contain code
and edit that code in the proper mode.
I put something like this
#+BEGIN_SRC emacs-lisp
(defun mm-org-try-structure-completion ()
(interactive)
(if (not (org-try-structure-completion))
(message-tab)))
(eval-after-load "message"
'(progn
(define-key message-mode-map (kbd "<tab>")
'mm-org-try-structure-completion)))
#+END_SRC
which allows me now to do <'a letter' and hit <tab> and get a the proper
source block just as in org.
I can enter the editing of the source block without problems with
org-edit-src-code (which I plan to bind to C-c ', just as in org),
however when I am want to close the editing and go back to the message
buffer it fails, specifically the part of org-edit-src-exit that says:
#+BEGIN_SRC emacs-lisp
(unless (org-bound-and-true-p org-edit-src-from-org-mode)
(error "This is not a sub-editing buffer, something is wrong"))
#+END_SRC
Is there a particular reason why the code has to check to see if it is
coming from org-mode? Shouldn't it be enough that already the
org-in-block-p was passed?
If I evaluate the function definition of org-edit-src-exit without the
last part everything works as expect, I can exit with C-c ' and the code
is there. Even doing C-x C-s before exiting works as well.
Best,
Jorge.
PS: What is the alternative when you write messages with code, do you
guys first write it in org and then copy and yank it?
- [O] org-edit-src-code outside of org,
Jorge A. Alfaro-Murillo <=