"Eric Schulte" <schulte.e...@gmail.com> writes: > Thanks, I hope fellow Orgers find it useful
Sure they do! Make Emacs+Org-mode the `killer-application' :) >> I wonder how complicated it would be to add more languages. Especially >> PHP, JavaScript (e.g. per rhino) and Perl. ... >> Hmmm - maybe `org-babel-sh.el' is a good starting point. >> > > Yes, currently the best way to get a feel for how to add languages would > be to start with an existing language file (I'd suggest > org-babel-python.el or org-babel-ruby.el, or for simpler less > comprehensive language support look at org-babel-ditaa or > org-babel-haskell) and make changes from there. I agree that a brief > tutorial for adding language support would be helpful. A skeleton maybe? And just a few comments describing the I/O of the basic functions (and/or the global vars/containers that take the results). > Basically Org-babel expects any new language file to define two > functions... > > - org-babel-execute:lang-name (body params) :: which executes the code > in body according to the header arguments in params, and > > - org-babel-prep-session:ruby (session params) :: which starts an > interactive session in session setting any variables from params OK. I'll look at those... > There are two key language specific features which keep us from treating > all interpreted languages identically. > 1) Org-babel collects the last value of a source-code block to be > returned (see [1]) and this value needs to be collected and > potentially converted into elisp in a language specific manner > 2) Org-babel has support for evaluation in a session allowing > persistence of state between different blocks which use the same > session. I now notice that the :session header argument is not > currently documented on the Worg page. I'll try to add this > documentation soon. The sessions are handled through Emacs comint > buffers which are very language specific. Ahhh, I now comprehend. You're library makes all kinds of source blocks work together as a whole. Great! I now understand your intention! Make that old joke become true: "Emacs is a great OS, it's just missing a good editor" :-D ..... Nachtigall ick hör dir trappsen ... Seriously: There's not that much code to write in the language files. The features seem more than worth it. I just had little snippets in mind... hrm, sorry. > Footnotes: > [1] http://orgmode.org/worg/org-contrib/babel/org-babel.php#results > > [2] http://orgmode.org/worg/org-contrib/babel/org-babel.php#languages OK - not _really_ RTFM :-D I remember I stared at those sections last night - seems I was half asleep already. Best wishes Sebastian _______________________________________________ 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