babel: New function to mark the body of a src block.

* ob.el (org-babel-mark-block): New function to mark the body
    of a src block in the style of `mark-defun'.

    * ob-keys.el (org-babel-key-bindings): Bind
    `org-babel-mark-block' to C-c C-v C-M-h
This commit is contained in:
Dan Davison 2010-10-18 20:15:35 +01:00
parent c9bb51e883
commit a6d30d3b9b
2 changed files with 14 additions and 1 deletions

View file

@ -83,7 +83,8 @@ functions which are assigned key bindings, and see
("a" . org-babel-sha1-hash)
("h" . org-babel-describe-bindings)
("\C-x" . org-babel-do-key-sequence-in-edit-buffer)
("x" . org-babel-do-key-sequence-in-edit-buffer))
("x" . org-babel-do-key-sequence-in-edit-buffer)
("\C-\M-h" . org-babel-mark-block))
"Alist of key bindings and interactive Babel functions.
This list associates interactive Babel functions
with keys. Each element of this list will add an entry to the

View file

@ -1114,6 +1114,18 @@ With optional prefix argument ARG, jump backward ARG many source blocks."
(defvar org-babel-load-languages)
;;;###autoload
(defun org-babel-mark-block ()
"Mark current src block"
(interactive)
((lambda (head)
(when head
(save-excursion
(goto-char head)
(looking-at org-babel-src-block-regexp))
(push-mark (match-end 5) nil t)
(goto-char (match-beginning 5))))
(org-babel-where-is-src-block-head)))
(defun org-babel-demarcate-block (&optional arg)
"Wrap or split the code in the region or on the point.
When called from inside of a code block the current block is