emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Dan Davison <davison@stats.ox.ac.uk>
To: mail@christianmoe.com
Cc: Richard Riley <rileyrg@gmail.com>, emacs-orgmode@gnu.org
Subject: Re: Re: org-babel - utility to ease chopping src chunks into	smaller org entries
Date: Tue, 21 Sep 2010 15:50:11 +0100	[thread overview]
Message-ID: <87mxrb40d8.fsf@stats.ox.ac.uk> (raw)
In-Reply-To: <4C98C2A8.1080709@christianmoe.com> (Christian Moe's message of "Tue, 21 Sep 2010 16:35:20 +0200")

Christian -- thanks, I think your suggestion is better than mine.

Eric -- here's a small change that allows it to work before the first
        headline. (protected from patchwork I hope)

Dan

--8<---------------cut here---------------start------------->8---
X  diff --git a/lisp/ob.el b/lisp/ob.el
X  index e3f9fc7..655a79d 100644
X  --- a/lisp/ob.el
X  +++ b/lisp/ob.el
X  @@ -1146,7 +1146,8 @@ region is not active then the point is demarcated."
X                (goto-char place)
X                (let ((lang (nth 0 info))
X                      (indent (make-string (nth 6 info) ? ))
X  -                   (stars (concat (make-string (org-current-level) ?*) " ")))
X  +                   (stars
X  +		    (concat (make-string (or (org-current-level) 0) ?*) " ")))
X   	       (when (string-match "^[[:space:]]*$"
X   				   (buffer-substring (point-at-bol)
X   						     (point-at-eol)))
X  @@ -1161,7 +1162,7 @@ region is not active then the point is demarcated."
X         (let ((start (point))
X   	    (body (delete-and-extract-region
X   		   (if (region-active-p) (mark) (point)) (point)))
X  -	    (stars (concat (make-string (org-current-level) ?*) " ")))
X  +	    (stars (concat (make-string (or (org-current-level) 0) ?*) " ")))
X   	(insert (concat (if (looking-at "^") "" "\n")
X   			(if arg (concat stars "\n") "")
X   			"#+begin_src " (read-from-minibuffer "Lang: ") "\n"
X 
--8<---------------cut here---------------end--------------->8---


Christian Moe <mail@christianmoe.com> writes:

> Hi Eric,
>
> Great, thanks.
>
> Christian
>
> On 9/21/10 3:04 PM, Eric Schulte wrote:
>> Hi Christian,
>>
>> I agree generalizing this function over all block types would be very
>> useful.  When I find the time I will make this change.
>>
>> Thanks -- Eric
>>
>> Christian Moe<mail@christianmoe.com>  writes:
>>
>>> Hi,
>>>
>>> I'm late to this discussion, but just a lateral thought:
>>>
>>> Would you consider rewriting this as `org-demarcate-block' or similar,
>>> to operate on all #+begin_...end blocks, not just src?
>>>
>>> If generalized this function could be equally useful for non-src
>>> blocks as well. Example blocks come immediately to mind, but there are
>>> non-coding applications too.
>>>
>>> For instance, I store many notes with quotes from various texts,
>>> sometimes in fairly long =#+begin_quote= blocks, which I then need to
>>> split up when I want to write an extended discussion of a passage,
>>> quoting a few lines at a time.
>>>
>>> For those who use verse blocks (I all too seldom have the need...), it
>>> may be even more useful.
>>>
>>> For personal use, I already have a little org-insert-block utility
>>> function to insert/wrap [q]uote, [s]rc, e[x]ample, [v]erse or [o]ther
>>> blocks at a keystroke. This works for me since I use at least the
>>> first two more or less equally often. A generalized demarcate-block
>>> function would be a nice complement.
>>>
>>> Yours,
>>> CM
>>>
>>>
>>>
>>>
>>>>> I've just added this to the org-mode repo.
>>>>>
>>>>>> Not in the babel key map - in the org key map (I use it most in normal
>>>>>> non src org entries to mark a block of elisp as src for samples/examples).
>>>>>
>>>>> For now it still lives in the babel keymap behind (C-c C-v d) since it
>>>>> is fundamentally code-block related,
>>>>
>>>> For me, "fundamentally code-block related", in the absence of
>>>> execution-related functionality, points to org-src.el rather than
>>>> org-babel, so I suggest naming this function
>>>> org-src-demarcate-block. The babel keymap is still a good place for a
>>>> binding -- I think it's reasonable for the babel keymap to accomodate
>>>> pure code block stuff in addition to execution/tangling stuff.
>>>>
>>>> Dan
>>>>
>>>> _______________________________________________
>>>> 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
>>>>
>>

  reply	other threads:[~2010-09-21 14:51 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
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 [this message]
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=87mxrb40d8.fsf@stats.ox.ac.uk \
    --to=davison@stats.ox.ac.uk \
    --cc=emacs-orgmode@gnu.org \
    --cc=mail@christianmoe.com \
    --cc=rileyrg@gmail.com \
    /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).