emacs-orgmode
[Top][All Lists]
Advanced

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

[Orgmode] Re: [BABEL] [PROPOSAL] Seemless editing of Babel Blocks


From: Jambunathan K
Subject: [Orgmode] Re: [BABEL] [PROPOSAL] Seemless editing of Babel Blocks
Date: Sun, 05 Sep 2010 15:25:40 +0530
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.91 (windows-nt)

Eric

>
> I've just pushed up an implementation of the functionality described at
> the link above, see [1] for examples and details.
>

> Footnotes: 
> [1]  
> http://eschulte.github.com/babel-dev/DONE-tangle-entire-org-mode-file-in-comments.html
>

I have pulled your changes and examined it. Some commets:

Comment #1: Org Manual

> Org Manual - Section 14.8.2.7 comments

> org - Include text from the original org-mode file which preceded the
> code block as a comment which precedes the tangled code.

I suggest the following wording - 

"Include text from the org-mode file as a comment. 

 The text is picked from the leading context of the tangled code and is
 limited by the nearest headline or source block as the case may be."

Comment #2: Perceived gaps

In my original case,

1. Tangling happens in-place.

   The source and target buffers are one and the same only their major
   made changes. i.e., it is destructive. Think of 'replace-region' ...

2. There is no lossage.

   I can tangle to elisp-mode and untangle it to org-mode without any
   round-trip losses.

   With your changes, the following are lost - the 'trailing' text and
   the 'stars' in the headline.


That said, I have upgraded my request to a generic API (see attachment)
and I am not too particular about my original use-case (which I agree as
'contrived', 'drastic' and 'one-off')

Jambunathan K.

Attachments: This for the benefit of the list. 

I had accidentally unicast the reply. My recent transition to gnus has
made me very clumsy.

From: Jambunathan K <address@hidden>
To: "Eric Schulte" <address@hidden>
Subject: Re: [BABEL] [PROPOSAL] Seemless editing of Babel Blocks
References: <address@hidden> <address@hidden>
        <address@hidden> <address@hidden>
        <address@hidden> <address@hidden>
        <address@hidden>
X-Draft-From: ("nntp+news.gmane.org:gmane.emacs.orgmode" 29790)
Date: Sun, 05 Sep 2010 14:28:16 +0530
In-Reply-To: <address@hidden> (Eric Schulte's message of "Sat, 04
        Sep 2010 09:04:03 -0600")
Message-ID: <address@hidden>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.91 (windows-nt)
--text follows this line--

jambu> How about providing user-accessible tapping points within
jambu> 'org-babel-map-src-blocks' (or a variation thereof) that would
jambu> enable me have a custom command in my .emacs.
jambu>
jambu> For the sake of record, my suggestion is very closely related to
jambu> what is discussed here.
jambu>
jambu> 
http://eschulte.github.com/babel-dev/PROPOSED-tangle-entire-org-mode-file-in-comments.html

Eric> I've just pushed up an implementation of the functionality
Eric> described at the link above, see [1] for examples and details.
Eric>
Eric> Is this sufficient to satisfy the need you were addressing?  If
Eric> not how could it be improved?

Eric> Footnotes: 
Eric> [1]  
http://eschulte.github.com/babel-dev/DONE-tangle-entire-org-mode-file-in-comments.html

I am making a request for an API from BABEL core which roughly parallels
org's org-map-entries.

Using this API a user should be able to 'traverse' babel and non-babel
blocks within a given scope (region, buffer), examine the local state
(say a tag or a user-defined property on a subtree), provide a verdict
on it's inclusion (yes I want it, no skip it) or possibly return a
transformed custom content (as a list).

'org-babel-map-src-blocks' has the skeletal structure for this API. All
it needs is some minimal tinkering to take on a more user-pluggable
form.

The proposed API would make UseCase-1 and UseCase-2 possible.

UseCase-1: 
http://article.gmane.org/gmane.emacs.orgmode/28823

Section-6 provides an illustration.
Section-5 helps one visualize the essentials of the propsed API.

a) org-to-org-src-view => potential consumer of the proposed API.
b) beg-org, end-org, beg-babel, end-babel => strategic 'points' of
   user-interest.
c) body, body1 => Hooks for user

UseCase-2: Tangling with custom pragmas.
http://article.gmane.org/gmane.emacs.orgmode/29805

Additional Note: Thinking out loud here (aka contrived, over-the-top
requirement). 

A user might want to override the in-buffer babel-control parameters
while tangling or execution.

Think of this scenario, I would like to tangle but with comments and
line nos as a one-off (say for circulating to my colleagues). The
in-buffer 'static/default' settings suppresses comments. I couldn't be
bothered to edit the in-buffer settings just for this one-off case. Is
there a possible way I can achieve this?

Jambunathan K.




reply via email to

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