From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Davison Subject: Re: [babel] Writing R-packages the org way? Date: Fri, 08 Oct 2010 13:10:09 +0100 Message-ID: <87fwwglwbi.fsf@stats.ox.ac.uk> References: <4CADD83B.4000602@ccbr.umn.edu> <8762xeniy6.fsf@stats.ox.ac.uk> <4CADE357.1090803@ccbr.umn.edu> <87pqvlncsk.fsf@stats.ox.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from [140.186.70.92] (port=51939 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1P4BmH-0004jU-Vi for emacs-orgmode@gnu.org; Fri, 08 Oct 2010 08:10:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1P4BmG-0004dJ-54 for emacs-orgmode@gnu.org; Fri, 08 Oct 2010 08:10:21 -0400 Received: from markov.stats.ox.ac.uk ([163.1.210.1]:51003) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1P4BmF-0004d6-Ub for emacs-orgmode@gnu.org; Fri, 08 Oct 2010 08:10:20 -0400 In-Reply-To: (Charles C. Berry's message of "Thu, 7 Oct 2010 21:29:59 -0700") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: "Charles C. Berry" Cc: emacs-orgmode , Rainer M Krug Hi Chuck, I agree about making use of existing ESS tools and that a more traditional Org approach might be appropriate. > If you do decide to go all in for a 'one org file makes one package' > approach, you might try to get Rd language support added, so you can > edit Rd directly in an Org Src buffer in Rd-mode. No extra code is needed to get editing support for languages. #+begin_src XXX provides an edit buffer in XXX-mode automatically, with no special customization. Also fontification in the org buffer works automatically if `org-src-fontify-natively' is set. Dan > And get > org-babel-Rd-evaluate to run Rd-preview-help or call Rd2HTML or > whatnot. > > HTH, > > Chuck > >> Then, to insert a template, you can use >> >> #+call: R-pkg-template(function_name="do.something") :results output org raw >> >> which should give something like this: >> >> --8<---------------cut here---------------start------------->8--- >> #+results: R-pkg-template(function_name="do.something") >> * do.something >> ** Help >> *** Title >> this is do.something title >> *** Description >> do.something does this... >> *** Usage >> do.something(arg1, arg2, ...) >> *** Arguments >> arg1: the first argument >> *** Examples >> do.something(arg1 = x, arg2 = y) >> ** Definition >> begin_src R :tangle R/package.R >> do.something <- function(arg1, arg2) { >> >> } >> --8<---------------cut here---------------end--------------->8--- >> >> While playing about you may want to get rid of the "raw" directive so >> that the results will automatically be replaced on repeated evaluations. >> >> Dan >> >>> >>> >>> >>>> >>>>>> Any suggestions how to best proceed? >>>>>>> >>>>>>> Dream: I would like to have one org file which contains everything >>>>>>> (documentation, code, other relevant files) and if I export or >>>>>>> tangle the file, I have the package ready. >>>>>>> >>>>>> Well, that functionality is essentially present with code blocks >>>>>> and tangling, except the documentation part. >>>>>> >>>>> >>> Exactly - and that is the part I would like to have. >>> >>> >>>> >>>>> Hi Erik, >>>>> >>>>> Would you mind expanding on that -- what are we missing for the >>>>> documentation part? >>>>> >>>>> >>>> Dan, by "except for the documentation part", I meant generating >>>> .Rd files (the LaTeX-like syntax) automatically from some org-syntax >>>> that does *not* depend on code blocks. I.e., it would be cool to >>>> specify syntax like I have above for documentation. Using org-mode >>>> headlines for each section like Description, Usage, Arguments, etc. >>>> >>>> Just like exporting to LaTeX generates sections, some process would >>>> use these headlines to generate the .Rd sections. >>>> >>>> That way, you don't have to use the .Rd syntax yourself. No big deal, >>>> just a convenience feature. I don't know how you'd specify to org-mode >>>> that a particular subtree was to generate .Rd syntax, and I don't know >>>> if it would be on export or tangling. >>>> >>>> An alternative is simply just to use code blocks of type Rd within >>>> org-mode and then tangle to .Rd files. That's what I currently do. >>>> >>>> Hope that explains it, >>>> Erik >>>> >>>> >>>> Dan >>>>> >>>> >> >> _______________________________________________ >> Emacs-orgmode mailing list >> Please use `Reply All' to send replies to the list. >> Emacs-orgmode@gnu.org >> http://lists.gnu.org/mailman/listinfo/emacs-orgmode >> > > Charles C. Berry (858) 534-2098 > Dept of Family/Preventive Medicine > E mailto:cberry@tajo.ucsd.edu UC San Diego > http://famprevmed.ucsd.edu/faculty/cberry/ La Jolla, San Diego 92093-0901 > > > > _______________________________________________ > Emacs-orgmode mailing list > Please use `Reply All' to send replies to the list. > Emacs-orgmode@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-orgmode