emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Richard Riley <rileyrg@gmail.com>
To: emacs-orgmode@gnu.org
Subject: Re: org-babel - utility to ease chopping src chunks into smaller org entries
Date: Mon, 20 Sep 2010 01:20:36 +0200	[thread overview]
Message-ID: <i765s6$fje$1@dough.gmane.org> (raw)
In-Reply-To: i761ci$vt$1@dough.gmane.org

Richard Riley <rileyrg@gmail.com> writes:

> "Eric Schulte" <schulte.eric@gmail.com> writes:
>
>>
>> Let me know what you think.  I notice your implementation uses
>> regions,
>
> It puts the begin/src markers around the region if selected or current word.
>
>> where as this one does not, so it's possible I left out some
>> functionality.  I'd like to include some version of this functionality
>> into Org-mode core.
>
> _______________________________________________
> Emacs-orgmode mailing list
> Please use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>

using your lang selection example

If not in a source block then just surround current region with
#+begin/end_src. If no region just put in markers around empty
area. Dont create new org items since probably just including src code
in an existing org item.

If in a source block with region create new region with current
region. If no region just create new empty block. previous src blocks
delimited and marked as org items at current level (because almost
certainly splitting the code to maintain it in discreate titled blocks.



--8<---------------cut here---------------start------------->8---
(define-key org-mode-map (kbd "C-c C-b") 'rgr/org-split-src)

(defun rgr/org-split-src(&optional arg)
  (interactive "P")
  (beginning-of-line)
  (save-excursion((lambda(info)
     (if info
         (let ((lang (nth 0 info))
               (stars (make-string (org-current-level) ?*)))
           (insert 
            (format 
             "%s\n%s\n#+begin_src %s\n%s#+end_src\n%s\n#+begin_src %s\n" 
             "#+end_src"
             stars
             lang
             (if (region-active-p) 
                 (delete-and-extract-region (region-beginning) (region-end)) "\n")
             stars
             lang)))
       (insert 
	(format 
	 "\n#+begin_src\n%s\n#+end_src\n" 
	 (if (region-active-p) 
	     (delete-and-extract-region (region-beginning) (region-end)) "")))))
   (org-babel-get-src-block-info))))
--8<---------------cut here---------------end--------------->8---

  reply	other threads:[~2010-09-19 23:20 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-19  1:48 org-babel - utility to ease chopping src chunks into smaller org entries Richard Riley
2010-09-19 18:21 ` Eric Schulte
2010-09-19 22:03   ` Richard Riley
2010-09-19 23:20     ` Richard Riley [this message]
2010-09-20  3:41       ` Eric Schulte
2010-09-20  5:18         ` Richard Riley
2010-09-20 14:30           ` Eric Schulte
2010-09-20 15:15             ` Sébastien Vauban
2010-09-20 22:21               ` Sébastien Vauban
2010-09-21 12:46                 ` Eric Schulte
2010-09-21 13:49                   ` Dan Davison
2010-09-21 14:37                   ` Sébastien Vauban
2010-09-21 12:44               ` Eric Schulte
2010-09-21 15:19                 ` Sébastien Vauban
2010-09-20 20:09             ` Dan Davison
2010-09-21  7:58               ` Christian Moe
2010-09-21 11:17                 ` Richard Riley
2010-09-21 13:04                 ` Eric Schulte
2010-09-21 14:35                   ` Christian Moe
2010-09-21 14:50                     ` Dan Davison
2010-09-21 15:35                       ` Eric Schulte
2010-09-24 13:24                         ` Requests about the code demarcation Sébastien Vauban
2010-09-27 13:18                           ` Eric Schulte
2010-09-27 13:47                             ` Sébastien Vauban
2010-09-27 14:36                               ` Sébastien Vauban
2010-09-27 14:58                                 ` Eric Schulte
2010-09-30 18:17                             ` Achim Gratz
2010-09-30 22:19                               ` Eric Schulte
2010-10-01 19:28                                 ` Achim Gratz
2010-10-17 11:53                               ` Richard Riley
2010-09-21  6:33         ` org-babel - utility to ease chopping src chunks into smaller org entries Achim Gratz
2010-09-21 13:01           ` Eric Schulte
2010-09-21 17:03             ` Achim Gratz
2010-09-19 21:24 ` Sébastien Vauban
2010-09-19 21:44   ` Richard Riley
2010-09-19 21:52     ` Sébastien Vauban

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='i765s6$fje$1@dough.gmane.org' \
    --to=rileyrg@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).