emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orgmode] Re: org-babel - utility to ease chopping src chunks into s


From: Eric Schulte
Subject: Re: [Orgmode] Re: org-babel - utility to ease chopping src chunks into smaller org entries
Date: Tue, 21 Sep 2010 09:35:29 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Applied, Thanks

Dan Davison <address@hidden> writes:

> 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
>
> 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 
>
>
> Christian Moe <address@hidden> 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<address@hidden>  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.
>>>>> address@hidden
>>>>> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>>>>>
>>>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]