Hi Sébastien, Thanks for giving this a try, comments below...
Sébastien Vauban <wxhgmqzgw...@spammotel.com> writes: > Hi Eric, > > "Eric Schulte" wrote: >> "Eric Schulte" <schulte.e...@gmail.com> writes: [...] >>> As source-code blocks are already named in the current org-babel setup this >>> wouldn't be a very significant change. Once this is added it shouldn't be >>> difficult to expand these links/references on export. > > Excellent. > > >>> Under this new setup the example file you described would be analogous >>> to the this org-mode file. >>> >>> Does this sound like it would accomplish most of what you are after? > > I think so, yes. I'll scan all my Nuweb and noweb files over the past years, > but I am positive you cover all of my needs -- with the exception of one, but > I guess it's solvable somehow: the fact that the code should be included via > the LaTeX `listings' package (thus, colored contextually to the programming > language) and not as verbatim. > I agree fontified code would certainly be preferable to the current approach of inserting source-code as verbatim. This seems to be a general org-mode development issue rather than org-babel specific, so I'm happy to push the buck on this one :). I don't know much about the listings package, but would another possibly be easier to use htmlize.el (used for fontification on html export) along with html -> latex conversion? > > >> With the newest version of org-babel [1] > > Done: `git pull'. > Please do another git pull before trying the steps below so we can be sure we're working off the same code base. > > >> try opening the attached org-mode file [2] which is an org-mode >> translation of Sébastien's noweb file from his previous email. > > I wanted to translate it in Org. You've been much quicker than I currently am. > Thanks. > > >> Calling `org-babel-tangle' from within this file will create the >> Payment.sql, Lessons.sql, and Enterprise.sql source-code files. > > Nope... > > Open ~/Personal/Templates/org-babel-lit-prog.org > tangled 0 source-code blocks > > I don't understand why. > Me either... I'm not sure what could be different about our two environments that could be causing this problem. Maybe it has to do with the --8<---------------cut here---------------start------------->8--- (setq org-odd-levels-only t) --8<---------------cut here---------------end--------------->8--- that you mention below. Also note that with org-babel by default source-code blocks are not tangled, only those with a :tangle header argument will be tangled to source-code files. So for example --8<---------------cut here---------------start------------->8--- #+srcname: sql-init #+begin_src sql -- <<sql-init>> SELECT abcID, etpID, etpAssurATPolNum FROM enterprise JOIN record ON (etpAbcID_fk = abcID) WHERE etpAbcID_fk -- <<sql-cond>> #+end_src --8<---------------cut here---------------end--------------->8--- will not be tangled, while --8<---------------cut here---------------start------------->8--- #+srcname: enterprise #+begin_src sql :tangle Enterprise -- <<sql-init>> SELECT abcID, etpID, etpAssurATPolNum FROM enterprise JOIN record ON (etpAbcID_fk = abcID) WHERE etpAbcID_fk -- <<sql-cond>> #+end_src --8<---------------cut here---------------end--------------->8--- will be tangled. I have changed the original org-babel-lit-prog.org so that it should work with your configuration of odd levels only and posted it up here [1]. Note that you can grab all of these referenced files by cloning the git repo at git://github.com/eschulte/noweb-example.git. By calling org-babel-tangle from within this org-mode file I was able to generate Enterprise.sql [2], Lessons.sql [3], and Payment.sql [4]. > > Is it normal that you don't include the extension in the tangle property? > Does it add the language extension automatically? > > Yes, org-babel adds the language specific extension automatically. This could be changed/overridden if it proves to limiting. It grew out of the fact that originally source-code files were named based upon the basename of the org-mode file and the language extension. > >> The document can also be exported into html and latex using org-mode's >> standard export functionality. > > I have problems as well... > Again maybe this is the result of conflicting values of org-odd-levels-only? Please try this with the newer org-mode file [1]. I was able to export this to latex resulting in the following tex file [5] and pdf file [6]. I was also able to export this file to html which includes code highlighting [7]. [...] > BTW, what do you think of my proposal to include the Tangle process as a > built-in step of the export to LaTeX (and HTML)? > > That way, we only would export and get both flies caught with one stone. > I like that idea, once this is working as two separate processes it should be relatively trivial to optionally hook org-babel-tangle onto the other export commands. > > Thanks for all! This is seriously a hot topic you've almost solved... > > Seb Sorry I can't be more specific with answers to your problems tangling and exporting. Please do give the new org-mode file [1] a try with the latest version org-babel and let me know if the problems persist. Cheers -- Eric Footnotes: [1] http://github.com/eschulte/noweb-example/raw/a130e165c79c8f6c2f5147330fe4ae5ab6428c17/w-babel/org-babel-lit-prog.org [2] http://github.com/eschulte/noweb-example/raw/a130e165c79c8f6c2f5147330fe4ae5ab6428c17/w-babel/Enterprise.sql [3] http://github.com/eschulte/noweb-example/raw/a130e165c79c8f6c2f5147330fe4ae5ab6428c17/w-babel/Lessons.sql [4] http://github.com/eschulte/noweb-example/raw/a130e165c79c8f6c2f5147330fe4ae5ab6428c17/w-babel/Payment.sql [5] http://github.com/eschulte/noweb-example/raw/a130e165c79c8f6c2f5147330fe4ae5ab6428c17/w-babel/org-babel-lit-prog.tex [6] http://github.com/eschulte/noweb-example/raw/a130e165c79c8f6c2f5147330fe4ae5ab6428c17/w-babel/org-babel-lit-prog.pdf [7] http://github.com/eschulte/noweb-example/raw/a130e165c79c8f6c2f5147330fe4ae5ab6428c17/w-babel/org-babel-lit-prog.html _______________________________________________ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode