emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Re: Org-mode
       [not found] ` <4CD15272.2080303@siege-engine.com>
@ 2010-11-03 12:34   ` Lennart Borgman
  2010-11-04 14:37     ` Re: [CEDET-devel] Org-mode Carsten Dominik
  0 siblings, 1 reply; 7+ messages in thread
From: Lennart Borgman @ 2010-11-03 12:34 UTC (permalink / raw)
  To: Eric M. Ludlam; +Cc: Org Mode, Matt Price, cedet-devel, Jambunathan K

On Wed, Nov 3, 2010 at 1:15 PM, Eric M. Ludlam <eric@siege-engine.com> wrote:
> On 10/30/2010 03:45 AM, Konrad Scorciapino wrote:
>> Hey!
>>
>> Is anybody working on Org-mode? My main interest is to build a parser to
>> manipulate the nodes of the resulting tree and save them back. Tips on
>> how to get started are also welcome.
>>
>
> I know of no one doing that.  I don't know what org-mode's code
> structure is like, but I'd assume it already has a parser, and you could
> adapt the output to Semantic tag format.
>
> The HTML parser also handles arbitrary text so you could look in
> semantic-html to see what sort of things that  does.

There are different exporters for org-mode.

Currently we are trying to make an exporter to ODT files. I think a
parser would come in handy.

------------------------------------------------------------------------------
Achieve Improved Network Security with IP and DNS Reputation.
Defend against bad network traffic, including botnets, malware, 
phishing sites, and compromised hosts - saving your company time, 
money, and embarrassment.   Learn More! 
http://p.sf.net/sfu/hpdev2dev-nov
_______________________________________________
Cedet-devel mailing list
Cedet-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cedet-devel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Re: [CEDET-devel] Org-mode
  2010-11-03 12:34   ` Org-mode Lennart Borgman
@ 2010-11-04 14:37     ` Carsten Dominik
  2010-11-04 15:45       ` [Orgmode] Org-mode Lennart Borgman
  0 siblings, 1 reply; 7+ messages in thread
From: Carsten Dominik @ 2010-11-04 14:37 UTC (permalink / raw)
  To: Lennart Borgman
  Cc: Konrad Scorciapino, Jambunathan K, Org Mode, cedet-devel,
	Eric M. Ludlam


On Nov 3, 2010, at 1:34 PM, Lennart Borgman wrote:

> On Wed, Nov 3, 2010 at 1:15 PM, Eric M. Ludlam <eric@siege- 
> engine.com> wrote:
>> On 10/30/2010 03:45 AM, Konrad Scorciapino wrote:
>>> Hey!
>>>
>>> Is anybody working on Org-mode? My main interest is to build a  
>>> parser to
>>> manipulate the nodes of the resulting tree and save them back.  
>>> Tips on
>>> how to get started are also welcome.
>>>
>>
>> I know of no one doing that.  I don't know what org-mode's code
>> structure is like, but I'd assume it already has a parser, and you  
>> could
>> adapt the output to Semantic tag format.
>>
>> The HTML parser also handles arbitrary text so you could look in
>> semantic-html to see what sort of things that  does.
>
> There are different exporters for org-mode.
>
> Currently we are trying to make an exporter to ODT files. I think a
> parser would come in handy.


org-html.el is probably the best starting point to make a complete  
parser.  It does a very detailed analysis of the text.

We should have built all the exporters on the same parser -  
unfortunately we did not.  One of the hard to correct mistakes we made  
in early development.

- Carsten

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Orgmode] Re:  Org-mode
  2010-11-04 14:37     ` Re: [CEDET-devel] Org-mode Carsten Dominik
@ 2010-11-04 15:45       ` Lennart Borgman
  2010-11-04 15:50         ` Re: [CEDET-devel] Org-mode Carsten Dominik
  2010-11-04 18:04         ` Jambunathan K
  0 siblings, 2 replies; 7+ messages in thread
From: Lennart Borgman @ 2010-11-04 15:45 UTC (permalink / raw)
  To: Carsten Dominik; +Cc: Jambunathan K, Org Mode, cedet-devel, Eric M. Ludlam

On Thu, Nov 4, 2010 at 3:37 PM, Carsten Dominik
<carsten.dominik@gmail.com> wrote:
>
> On Nov 3, 2010, at 1:34 PM, Lennart Borgman wrote:
>
>> On Wed, Nov 3, 2010 at 1:15 PM, Eric M. Ludlam <eric@siege-engine.com>
>> wrote:
>>>
>>> On 10/30/2010 03:45 AM, Konrad Scorciapino wrote:
>>>>
>>>> Hey!
>>>>
>>>> Is anybody working on Org-mode? My main interest is to build a parser to
>>>> manipulate the nodes of the resulting tree and save them back. Tips on
>>>> how to get started are also welcome.
>>>>
>>>
>>> I know of no one doing that.  I don't know what org-mode's code
>>> structure is like, but I'd assume it already has a parser, and you could
>>> adapt the output to Semantic tag format.
>>>
>>> The HTML parser also handles arbitrary text so you could look in
>>> semantic-html to see what sort of things that  does.
>>
>> There are different exporters for org-mode.
>>
>> Currently we are trying to make an exporter to ODT files. I think a
>> parser would come in handy.
>
>
> org-html.el is probably the best starting point to make a complete parser.
>  It does a very detailed analysis of the text.
>
> We should have built all the exporters on the same parser - unfortunately we
> did not.  One of the hard to correct mistakes we made in early development.

Then perhaps the best we can do now is starting by breaking up
org-hml.el in the parser and a callback function for writing the
export. After that we can add new exports by adding new callback
functions.

------------------------------------------------------------------------------
The Next 800 Companies to Lead America's Growth: New Video Whitepaper
David G. Thomson, author of the best-selling book "Blueprint to a 
Billion" shares his insights and actions to help propel your 
business during the next growth cycle. Listen Now!
http://p.sf.net/sfu/SAP-dev2dev
_______________________________________________
Cedet-devel mailing list
Cedet-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cedet-devel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Re: [CEDET-devel] Org-mode
  2010-11-04 15:45       ` [Orgmode] Org-mode Lennart Borgman
@ 2010-11-04 15:50         ` Carsten Dominik
  2010-11-04 18:04         ` Jambunathan K
  1 sibling, 0 replies; 7+ messages in thread
From: Carsten Dominik @ 2010-11-04 15:50 UTC (permalink / raw)
  To: Lennart Borgman
  Cc: Konrad Scorciapino, Jambunathan K, Org Mode, cedet-devel,
	Eric M. Ludlam


On Nov 4, 2010, at 4:45 PM, Lennart Borgman wrote:

> On Thu, Nov 4, 2010 at 3:37 PM, Carsten Dominik
> <carsten.dominik@gmail.com> wrote:
>>
>> On Nov 3, 2010, at 1:34 PM, Lennart Borgman wrote:
>>
>>> On Wed, Nov 3, 2010 at 1:15 PM, Eric M. Ludlam <eric@siege-engine.com 
>>> >
>>> wrote:
>>>>
>>>> On 10/30/2010 03:45 AM, Konrad Scorciapino wrote:
>>>>>
>>>>> Hey!
>>>>>
>>>>> Is anybody working on Org-mode? My main interest is to build a  
>>>>> parser to
>>>>> manipulate the nodes of the resulting tree and save them back.  
>>>>> Tips on
>>>>> how to get started are also welcome.
>>>>>
>>>>
>>>> I know of no one doing that.  I don't know what org-mode's code
>>>> structure is like, but I'd assume it already has a parser, and  
>>>> you could
>>>> adapt the output to Semantic tag format.
>>>>
>>>> The HTML parser also handles arbitrary text so you could look in
>>>> semantic-html to see what sort of things that  does.
>>>
>>> There are different exporters for org-mode.
>>>
>>> Currently we are trying to make an exporter to ODT files. I think a
>>> parser would come in handy.
>>
>>
>> org-html.el is probably the best starting point to make a complete  
>> parser.
>>  It does a very detailed analysis of the text.
>>
>> We should have built all the exporters on the same parser -  
>> unfortunately we
>> did not.  One of the hard to correct mistakes we made in early  
>> development.
>
> Then perhaps the best we can do now is starting by breaking up
> org-hml.el in the parser and a callback function for writing the
> export. After that we can add new exports by adding new callback
> functions.

Be my guest.

- Carsten


- Carsten

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Re: [CEDET-devel] Org-mode
  2010-11-04 15:45       ` [Orgmode] Org-mode Lennart Borgman
  2010-11-04 15:50         ` Re: [CEDET-devel] Org-mode Carsten Dominik
@ 2010-11-04 18:04         ` Jambunathan K
  2010-11-04 18:44           ` [Orgmode] Org-mode Lennart Borgman
  2010-11-04 19:16           ` Re: [CEDET-devel] Org-mode Eric Schulte
  1 sibling, 2 replies; 7+ messages in thread
From: Jambunathan K @ 2010-11-04 18:04 UTC (permalink / raw)
  To: Lennart Borgman
  Cc: Konrad Scorciapino, Eric M. Ludlam, Org Mode, cedet-devel,
	Carsten Dominik

Lennart Borgman <lennart.borgman@gmail.com> writes:

> On Thu, Nov 4, 2010 at 3:37 PM, Carsten Dominik
> <carsten.dominik@gmail.com> wrote:
>>
>> On Nov 3, 2010, at 1:34 PM, Lennart Borgman wrote:
>>
>>> On Wed, Nov 3, 2010 at 1:15 PM, Eric M. Ludlam <eric@siege-engine.com>
>>> wrote:
>>>>
>>>> On 10/30/2010 03:45 AM, Konrad Scorciapino wrote:
>>>>>
>>>>> Hey!
>>>>>
>>>>> Is anybody working on Org-mode? My main interest is to build a parser to
>>>>> manipulate the nodes of the resulting tree and save them back. Tips on
>>>>> how to get started are also welcome.
>>>>>
>>>>
>>>> I know of no one doing that.  I don't know what org-mode's code
>>>> structure is like, but I'd assume it already has a parser, and you could
>>>> adapt the output to Semantic tag format.
>>>>
>>>> The HTML parser also handles arbitrary text so you could look in
>>>> semantic-html to see what sort of things that  does.
>>>
>>> There are different exporters for org-mode.
>>>
>>> Currently we are trying to make an exporter to ODT files. I think a
>>> parser would come in handy.
>>
>>
>> org-html.el is probably the best starting point to make a complete parser.
>>  It does a very detailed analysis of the text.
>>
>> We should have built all the exporters on the same parser - unfortunately we
>> did not.  One of the hard to correct mistakes we made in early development.
>
> Then perhaps the best we can do now is starting by breaking up
> org-hml.el in the parser and a callback function for writing the
> export. After that we can add new exports by adding new callback
> functions.

The suggested refactoring could be a side-effect of org-odt.el that is
shaping up from org-html.el. Note that the refactoring happens or
atleast is visible in org-odt.el (which I control) and *not* in
org-html.el (which is in the field)

The main challenge with breaking up org-html.el first and then say
plugging in org-odt.el to that later is:

1. Code-churn that it would create in org-html.el
2. Proving that *nothing* in HTML export actually breaks.

Carsten would like to avoid (1) - he might want to go with one bit
commit and (naturally) shift the responsibility of (2) to the committer.

So a committer has one more thing he needs to be concerned about.

I do see some regression tests for html exporter and I am unsure how
*complete* they are. What would have really made things easier is the
following:

1. One Org file in repo that has *all* the Org-specific markups.
2. One HTML file that is a exported from this Org file which is
   re-checked in as and when the org-html.el changes it's markups.

Everytime something changes in the exporter one just diffs the *new*
HTML file with the one in the repo and be able to say with assured
confidence that something has improved or broken.

In some sense, test.org in my repo does this today:

- Base URL: http://repo.or.cz/w/org-mode/oo.git/blob_plain/HEAD
  Rel URL:  :/contrib/odt/files/test.org

What I believe I am recording here is that org-odt.el moves the Org
export engine in the "right" direction without me having to sell to
Carsten the need for a complete refactoring of org-html.

From my experience, re-factoring is all good. But at the end of the day
if it is going to delay something useful or places overly much
responsibilities on regression and validation it is better avoided.

Then there is also this question of how many more export formats that
Org could be possibly have in the future ... If there aren'y many that
we foresee maybe the prudent thing to do is to be not overly much
concerned about refactoring the parsing engine.

Lennart 

Btw, can you summarize what UseCase in cedet-devel triggered this line
of thought ...

Just my 2 cents here. Sorry if I sound too overboard or venturing in to
the speculative realm.

Jambunathan K.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Orgmode] Re:  Org-mode
  2010-11-04 18:04         ` Jambunathan K
@ 2010-11-04 18:44           ` Lennart Borgman
  2010-11-04 19:16           ` Re: [CEDET-devel] Org-mode Eric Schulte
  1 sibling, 0 replies; 7+ messages in thread
From: Lennart Borgman @ 2010-11-04 18:44 UTC (permalink / raw)
  To: Jambunathan K; +Cc: Eric M. Ludlam, Org Mode, cedet-devel, Carsten Dominik

On Thu, Nov 4, 2010 at 7:04 PM, Jambunathan K <kjambunathan@gmail.com> wrote:
>>
>> Then perhaps the best we can do now is starting by breaking up
>> org-hml.el in the parser and a callback function for writing the
>> export. After that we can add new exports by adding new callback
>> functions.
>
> The suggested refactoring could be a side-effect of org-odt.el that is
> shaping up from org-html.el. Note that the refactoring happens or
> atleast is visible in org-odt.el (which I control) and *not* in
> org-html.el (which is in the field)
>
> The main challenge with breaking up org-html.el first and then say
> plugging in org-odt.el to that later is:
>
> 1. Code-churn that it would create in org-html.el
> 2. Proving that *nothing* in HTML export actually breaks.

I am playing a bit with refactoring. A main issue might be how refined
the callback function should be. Not sure what I think yet, but I will
come back with an example.

------------------------------------------------------------------------------
The Next 800 Companies to Lead America's Growth: New Video Whitepaper
David G. Thomson, author of the best-selling book "Blueprint to a 
Billion" shares his insights and actions to help propel your 
business during the next growth cycle. Listen Now!
http://p.sf.net/sfu/SAP-dev2dev

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Re: [CEDET-devel] Org-mode
  2010-11-04 18:04         ` Jambunathan K
  2010-11-04 18:44           ` [Orgmode] Org-mode Lennart Borgman
@ 2010-11-04 19:16           ` Eric Schulte
  1 sibling, 0 replies; 7+ messages in thread
From: Eric Schulte @ 2010-11-04 19:16 UTC (permalink / raw)
  To: Jambunathan K
  Cc: Eric M. Ludlam, Lennart Borgman, Konrad Scorciapino,
	Carsten Dominik, Org Mode, cedet-devel

Jambunathan K <kjambunathan@gmail.com> writes:

> The main challenge with breaking up org-html.el first and then say
> plugging in org-odt.el to that later is:
>
> 1. Code-churn that it would create in org-html.el
> 2. Proving that *nothing* in HTML export actually breaks.
>
> Carsten would like to avoid (1) - he might want to go with one bit
> commit and (naturally) shift the responsibility of (2) to the committer.
>
> So a committer has one more thing he needs to be concerned about.
>
> I do see some regression tests for html exporter and I am unsure how
> *complete* they are. What would have really made things easier is the
> following:
>

I don't believe that there are any existing unit tests for the org html
exporter, however writing a suite of such tests seems like the best
first step in this project.  It would allow sanity checks throughout the
implementation of the parser, and would give some confidence in the
parsers functionality before merging back into the core.

Org-mode has a test suite based around ERT, which should facilitate this
process.  Look in the testing directory of the Org-mode repository.

>
> 1. One Org file in repo that has *all* the Org-specific markups.

Yes, either one large file or many smaller files.  For the Babel tests
we use one large file with one subtree per test s.t. it is easy for a
specific test to jump to the appropriate section of the file.

> 
> 2. One HTML file that is a exported from this Org file which is
> re-checked in as and when the org-html.el changes it's markups.
>
> Everytime something changes in the exporter one just diffs the *new*
> HTML file with the one in the repo and be able to say with assured
> confidence that something has improved or broken.
>

I think a series of feature specific unit tests would provide more
granular feedback, would allow incremental development, and would allow
differences in non-essential properties like white-space.

Best -- Eric

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2010-11-04 19:17 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <AANLkTinWfjJ_t=1E8=Xmy2T+dThzC9N8wBoKj+Nw7XS9@mail.gmail.com>
     [not found] ` <4CD15272.2080303@siege-engine.com>
2010-11-03 12:34   ` Org-mode Lennart Borgman
2010-11-04 14:37     ` Re: [CEDET-devel] Org-mode Carsten Dominik
2010-11-04 15:45       ` [Orgmode] Org-mode Lennart Borgman
2010-11-04 15:50         ` Re: [CEDET-devel] Org-mode Carsten Dominik
2010-11-04 18:04         ` Jambunathan K
2010-11-04 18:44           ` [Orgmode] Org-mode Lennart Borgman
2010-11-04 19:16           ` Re: [CEDET-devel] Org-mode Eric Schulte

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).