[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] Google Summer of Code -- 3 Org projects for our first participat
From: |
Neil Smithline |
Subject: |
Re: [O] Google Summer of Code -- 3 Org projects for our first participation! |
Date: |
Sat, 28 Apr 2012 20:20:07 -0400 |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:14.0) Gecko/20120426 Thunderbird/14.0a2 |
On 4/26 03:57 , Bastien wrote:
What will help org-ruby (and github's support of org files) is to
stabilize the syntax of .org files as much as possible. We are
currently working in this direction.
org-ruby's main job is to convert .org files into HTML or textile files.
The org-ruby gem is really in its infancy with regards to processing Org
Mode. For example, I added support for converting a line with just
"-----" to an HTML <hr/> tag. So now it supports horizontal rules but it
still doesn't support centering of text.
> If the list can specifically help about org-ruby issues, let's help!
A quick hack to provide better support would be to add support to the
org-ruby gem to process HTML in a .org file. While not the cleanest of
solutions, being able to process HTML will allow work-arounds for many
missing features.
But it would be much better if the org-ruby gem could process a larger
subset of Org Mode directives. But this isn't as easy as it sounds.
The gem is a reasonably well-written parser that is organized to allow
pluggable backends. I kind of like it. But it is really, really tiny.
(See the end of this email for details about the size).
I think the basic parser framework is too simplistic to support much
more of Org. No fault to the gem; it was written to be no more complex
than it had to be to do what it does.
In the end, my thought is that I'm not sure if it is better to extend
the org-ruby gem or to do something totally different (I don't know what).
In the end, I think the way that the best way the list could help
improve Github's support of Org files would be to provide two things:
1) Come up with a prioritized list of features that would be nice to be
supported by Github. This may just be the most used features of Org Mode
or it may be something special to how Org Mode is used in Github. I'm
not sure.
2) Have a few people look at the org-ruby gem and then brainstorm about
the best way to proceed. This would either require people who know Ruby
or more experienced software engineers. I modified the gem and learned
Ruby by reading the source for this gem and occasionally looking
something up in a reference manual. But I'd bet I've been coding longer
than list members such as Thorsten have been alive.
I really don't know enough about the culture of the Org Mode developers
to know if this is possible or not. The alternative is that I can just
keep adding features as I need them and think I can implement them.
As I said in my initial email:
>> PS: And the answer is "Yes. I am aware that vehemently suggesting a
project
>> is equivalent to offering to help with it." :-D
Neil
ORG-RUBY LINES OF CODE
Here's a wc output on the gem's source code with tests and other
non-functional parts omitted:
110 394 3392 headline.rb
246 793 8521 html_output_buffer.rb
345 691 18139 html_symbol_replace.rb
258 839 7877 line.rb
241 909 8318 output_buffer.rb
370 1189 12363 parser.rb
192 843 7020 regexp_helper.rb
102 320 2919 textile_output_buffer.rb
346 695 16882 textile_symbol_replace.rb
29 49 498 tilt.rb
2239 6722 85929 total
If you subtract out the two dedicated textile files, the org-ruby gem
has fewer than 10% of the lines that org.el alone has. The comparison
isn't wholly fair as org.el has many more public functions than org-ruby
and, correspondingly, org.el has significantly more lines of documentation.
Neil Smithline
http://www.neilsmithline.com
Proud GNU Emacs user since 1986, v. 18.24.
Re: [O] Google Summer of Code -- 3 Org projects for our first participation!, Rasmus, 2012/04/24
Re: [O] Google Summer of Code -- 3 Org projects for our first participation!, Richard Riley, 2012/04/24