Received: from mail-yk0-f186.google.com ([209.85.160.186]:44384) by stodi.digitalkingdom.org with esmtps (TLSv1:RC4-SHA:128) (Exim 4.80.1) (envelope-from ) id 1XTBDN-0000jE-Uq for lojban-list-archive@lojban.org; Sun, 14 Sep 2014 07:55:47 -0700 Received: by mail-yk0-f186.google.com with SMTP id q200sf611377ykb.13 for ; Sun, 14 Sep 2014 07:55:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20120806; h=date:from:to:message-id:in-reply-to:references:subject:mime-version :x-original-sender:reply-to:precedence:mailing-list:list-id :list-post:list-help:list-archive:sender:list-subscribe :list-unsubscribe:content-type; bh=kfv9G2AY83CVcK8Ea7ebwqGUJ+A0S0wkcUrqViDwa54=; b=NAC8s+2O+bbbkf/Lekp90XNcVkEg7hOQeYzpaiDtnUnDxqK1lAwSe6qDcsHTJPhx6D PyFP+3ua+fjkZfHNz431ZKZnwnyOiFmKT8znE1E6/yN8kmixcLvKwPtY99nSm6jeHai0 6re3ttuGPbEQsh5pOEWs2dQ/f4wOWabeFyqM4yRrR8yULtmpcyAPD/fJdPgQctg0ajBq YCCNHcqmy9IuOWdDS2oR+sGsh1oEwjHxy1lNGgwOVFYq7B5WH5m9AJTZUD05DYBcA7c5 48+6KuyzbpgPAC9nmt6jiUuOClh3lSjpiA3VX08Rg78ZEEoLlJQ3fXJGldoS2uafwjm/ L0Vw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:message-id:in-reply-to:references:subject:mime-version :x-original-sender:reply-to:precedence:mailing-list:list-id :list-post:list-help:list-archive:sender:list-subscribe :list-unsubscribe:content-type; bh=kfv9G2AY83CVcK8Ea7ebwqGUJ+A0S0wkcUrqViDwa54=; b=BmjYyIu8g4HiB1R7Pj67ZwotOL6yjSlx4M1fFtapHbYffeHQ26LuDSH9siSHeCEXu7 mfdsLSbttjpGtSkEWoPMwT7HXx+fM2NoJHoqTpaB3ipyfMFyg4+s8WIGPL1okHoAW+2p J9XpW1bo/dHRYsM43n8AsQ6+tqaWqvz/y27R9Q1URToNMb2BEvUa2FgrOXC3DB7SbOVp l5pGQpzZeoyTe8Cpdn5ez4Bo0Gs1uQbIHoRBcyDjFkxYL/OSe3ia9cSKZASmVeqwIOUZ 7dcszIUZXIqD/dO8OgncLzIpOtaUXleZgDioFCt82AG7/b2xss22gvSI7V7QH1UFxYJs rZ2g== X-Received: by 10.50.114.170 with SMTP id jh10mr158212igb.6.1410706539008; Sun, 14 Sep 2014 07:55:39 -0700 (PDT) X-BeenThere: lojban@googlegroups.com Received: by 10.50.143.102 with SMTP id sd6ls1492204igb.8.gmail; Sun, 14 Sep 2014 07:55:38 -0700 (PDT) X-Received: by 10.50.43.196 with SMTP id y4mr157078igl.13.1410706538664; Sun, 14 Sep 2014 07:55:38 -0700 (PDT) Date: Sun, 14 Sep 2014 07:55:36 -0700 (PDT) From: Andrew Browne To: lojban@googlegroups.com Message-Id: <461e7159-2dc2-4176-869d-2b9da47540e5@googlegroups.com> In-Reply-To: <20140914133015.GJ30324@stodi.digitalkingdom.org> References: <20140809202309.GA23392@stodi.digitalkingdom.org> <20140910173804.GP30324@stodi.digitalkingdom.org> <20140910233108.GD30324@stodi.digitalkingdom.org> <20140911005841.GF30324@stodi.digitalkingdom.org> <20140911023800.GG30324@stodi.digitalkingdom.org> <20140912181104.GH30324@stodi.digitalkingdom.org> <984b6369-540d-4559-8703-640774f5666c@googlegroups.com> <20140914133015.GJ30324@stodi.digitalkingdom.org> Subject: Re: [lojban] Re: The CLL project, technical directions MIME-Version: 1.0 X-Original-Sender: dersaidin@gmail.com Reply-To: lojban@googlegroups.com Precedence: list Mailing-list: list lojban@googlegroups.com; contact lojban+owners@googlegroups.com List-ID: X-Google-Group-Id: 1004133512417 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , Content-Type: multipart/alternative; boundary="----=_Part_2839_466546038.1410706537101" X-Spam-Note: SpamAssassin invocation failed ------=_Part_2839_466546038.1410706537101 Content-Type: text/plain; charset=UTF-8 Instead of converting all the source files to reStructedText, I would consider writing a different front end for Sphinx to support the existing CLL format. Sphinx currently parses reST into a doctree data structure (this is what I'm calling the "front end" for Sphinx) which represents the document. This doctree object can than be given to a variety of builders to output various formats. I had a look in the source to see how this might be done. If my understanding of the source is correct: - This function is key for running the front end. The Publisher object does most of the work. Also note the post-processing where stuff like index or gloss entries could be built. https://bitbucket.org/birkenfeld/sphinx/src/c0e4b2698d1e57b2ed7fa41ad82c26e80bd15926/sphinx/environment.py?at=default#cl-553 - The Publisher object this creates is in the docutils library/repository. http://sourceforge.net/p/docutils/code/HEAD/tree/trunk/docutils/docutils/core.py - The doctree datastructure is also in docutils. These nodes could be extended if necessary. http://sourceforge.net/p/docutils/code/HEAD/tree/trunk/docutils/docutils/nodes.py - The reStructuredText parser is part of docutils http://sourceforge.net/p/docutils/code/HEAD/tree/trunk/docutils/docutils/parsers/rst/ This reStructuredText parser is the part we would need to swap out for a whateverXMLFormatCLLSourceFilesAreIn (docbook?) parser. I suspect this might be less work than converting all of the CLL source to reST, and I don't think reST is a good format/syntax for this. The simplicity of reST is excellent for a basic document with headings and text - very productive, but [imo] not so good when we have so much metadata (cross-references, languages, phonetics, examples, etc.) in the markup. (Yes, you can add directives to reST to do more; but I still don't think the syntax scales well to complicated stuff.) On Sunday, September 14, 2014 11:30:18 PM UTC+10, Robin Powell wrote: > > On Fri, Sep 12, 2014 at 11:27:35AM -0700, TR NS wrote: > > > > > > On Friday, September 12, 2014 2:11:07 PM UTC-4, Robin Powell wrote: > > > > > > On Wed, Sep 10, 2014 at 11:04:49PM -0700, TR NS wrote: > > > > > > > > > > > > On the other hand, I have worked with the git repo enough now > > > > to think that perhaps an approach that combines (enhanced) > > > > markdown as a source format with your Ruby transforms would be > > > > a good stop-gap solution (at least until these HTML/CSS print > > > > solutions mature). The markdown can take care of basic styling > > > > needs in a format that is much easier to work with, while the > > > > xhtml it produces along with pass-thru xml can be handled via > > > > the Ruby code. > > > > > > For that, though, someone (and it won't be me) has to convert > > > the source to markdown. > > > > > > > > I'd be happy to do that. I can just work on it a bit each week. > > Estimate it will take a week or two to do each chapter. > > That sounds like you're talking about doing it by hand? > > If so, I think you're badly underestimating how cross-reference > heavy (i.e. index and glossary entries) this book is; that's a > staggering amount of work. > > More importantly, the problem with by-hand changes is that it's hard > to demonstrate that the *content* hasn't changed. I would > definitely consider the burden of proof that the text is all the > same to be on you in that case. > > -- > http://intelligence.org/ : Our last, best hope for a fantastic future. > .i ko na cpedu lo nu stidi vau loi jbopre .i dafsku lu na go'i li'u .e > lu go'i li'u .i ji'a go'i lu na'e go'i li'u .e lu go'i na'i li'u .e > lu no'e go'i li'u .e lu to'e go'i li'u .e lu lo mamta be do cu sofybakni > li'u > -- You received this message because you are subscribed to the Google Groups "lojban" group. To unsubscribe from this group and stop receiving emails from it, send an email to lojban+unsubscribe@googlegroups.com. To post to this group, send email to lojban@googlegroups.com. Visit this group at http://groups.google.com/group/lojban. For more options, visit https://groups.google.com/d/optout. ------=_Part_2839_466546038.1410706537101 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Instead of converting all the source files to reStructedTe= xt, I would consider writing a different front end for Sphinx to support th= e existing CLL format.

Sphinx currently parses reST into= a doctree data structure (this is what I'm calling the "front end" for Sph= inx) which represents the document.
This doctree object can than = be given to a variety of builders to output various formats.

=
I had a look in the source to see how this might be done.
<= div>
If my understanding of the source is correct:
=
- This function is key for running the front end. The Publis= her object does most of the work.
  Also note the post-proce= ssing where stuff like index or gloss entries could be built.
&nb= sp; https://bitbucket.org/birkenfeld/sphinx/src/c0e4b2698d1e57b2ed7fa41ad82= c26e80bd15926/sphinx/environment.py?at=3Ddefault#cl-553

<= /div>
- The Publisher object this creates is in the docutils library/re= pository.
  http://sourceforge.net/p/docutils/code/HEAD= /tree/trunk/docutils/docutils/core.py

- The doctre= e datastructure is also in docutils. These nodes could be extended if neces= sary.
  http://sourceforge.net/p/docutils/code/HEAD/tree/tru= nk/docutils/docutils/nodes.py

- The reStructuredTe= xt parser is part of docutils
  http://sourceforge.net/= p/docutils/code/HEAD/tree/trunk/docutils/docutils/parsers/rst/
This reStructuredText parser is the part we would need to swap= out for a whateverXMLFormatCLLSourceFilesAreIn (docbook?) parser.

I suspect this might be less work than converting all of t= he CLL source to reST, and I don't think reST is a good format/syntax for t= his.
The simplicity of reST is excellent for a basic document wit= h headings and text - very productive, but [imo] not so good when we have s= o much metadata (cross-references, languages, phonetics, examples, etc.) in= the markup.
(Yes, you can add directives to reST to do more;= but I still don't think the syntax scales well to complicated stuff.)



On Sunday, September 14, 2014 11:30= :18 PM UTC+10, Robin Powell wrote:
On Fri, Sep 12, 2014 at 11:27:35AM -0700, TR NS wrote:
>=20
>=20
> On Friday, September 12, 2014 2:11:07 PM UTC-4, Robin Powell wrote= :
> >
> > On Wed, Sep 10, 2014 at 11:04:49PM -0700, TR NS wrote:=20
> > >=20
> > >=20
> > > On the other hand, I have worked with the git repo enoug= h now
> > > to think that perhaps an approach that combines (enhance= d)
> > > markdown as a source format with your Ruby transforms wo= uld be
> > > a good stop-gap solution (at least until these HTML/CSS = print
> > > solutions mature). The markdown can take care of basic s= tyling
> > > needs in a format that is much easier to work with, whil= e the
> > > xhtml it produces along with pass-thru xml can be handle= d via
> > > the Ruby code.=20
> >
> > For that, though, someone (and it won't be me) has to convert
> > the source to markdown.=20
> >
> >
> I'd be happy to do that. I can just work on it a bit each week.
> Estimate it will take a week or two to do each chapter.

That sounds like you're talking about doing it by hand?

If so, I think you're badly underestimating how cross-reference
heavy (i.e. index and glossary entries) this book is; that's a
staggering amount of work.

More importantly, the problem with by-hand changes is that it's hard
to demonstrate that the *content* hasn't changed.  I would
definitely consider the burden of proof that the text is all the
same to be on you in that case.

--=20
http://intelligence.org/ :  Our last, best hop= e for a fantastic future.
.i ko na cpedu lo nu stidi vau loi jbopre .i dafsku lu na go'i li'u .e
lu go'i li'u .i ji'a go'i lu na'e go'i li'u .e lu go'i na'i li'u .e
lu no'e go'i li'u .e lu to'e go'i li'u .e lu lo mamta be do cu sofybakn= i li'u

--
You received this message because you are subscribed to the Google Groups &= quot;lojban" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to lojban+unsub= scribe@googlegroups.com.
To post to this group, send email to lojban@googlegroups.com.
Visit this group at http:= //groups.google.com/group/lojban.
For more options, visit http= s://groups.google.com/d/optout.
------=_Part_2839_466546038.1410706537101--