From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rainer M Krug Subject: Re: Folding in iESS R buffer Date: Tue, 27 May 2014 11:00:20 +0200 Message-ID: References: <87d2ez1vjq.fsf@gmail.com> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51426) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WpDFR-00022I-J3 for emacs-orgmode@gnu.org; Tue, 27 May 2014 05:00:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WpDFH-0000OI-Er for emacs-orgmode@gnu.org; Tue, 27 May 2014 05:00:41 -0400 Received: from mail-wi0-f173.google.com ([209.85.212.173]:43604) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WpDFH-0000O6-6N for emacs-orgmode@gnu.org; Tue, 27 May 2014 05:00:31 -0400 Received: by mail-wi0-f173.google.com with SMTP id bs8so1253895wib.6 for ; Tue, 27 May 2014 02:00:30 -0700 (PDT) In-Reply-To: (Rainer M. Krug's message of "Tue, 27 May 2014 10:30:30 +0200") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Thorsten Jolitz Cc: emacs-orgmode@gnu.org --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Rainer M Krug writes: > Thorsten Jolitz writes: > >> Rainer M Krug writes: >> >> Hi Rainer, >> >> sorry for the late reply, I was offline some time.=20 > > No problem. > >> >>> I have modified the variable transfer in ob-R.el so that the variable >>> transfer code is enclosed as can be seen below. >>> >>> My idea is that I can fold the R output so that the variable transfer is >>> collapsed. I understand that I can use one of the org-outside-org minor >>> modes [1] (presumibly utshine?) - but I can't figure out how. >>> >>> My questions are: >>> >>> 1) which enclosing should I use to fold the transfer code away? >> >> Outshine is like Org, no enclosing, but file structuring with >> (outcommented) headlines.=20 > > So everything after the outcommented headline will be folded - so if I > only want to fold one part, I have to use > > ,---- > | ## * If this is folded > | SOME R CODE > | ## * This not anymore > | SOME R CODE > `---- > > which I could fold to > > ,---- > | ## * If this is folded [...] > | ## * This not anymore > | SOME R CODE > `---- > > correct? I just tried it, and get the following: Unfolded: ,---- | >=20 | + . + ## * Variable Transfer from org | ########################################################## | ## org:variables environment created and in search path | ########################################################## |=20 | ## * Back to normal code | here it is @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ | > >=20 `---- where "here it is @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@" is output From=20normal R code in a source block evaluated. Folded: ,---- | >=20 | + . + ## * Variable Transfer from org | ##########################################################... | here it is @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ | > >=20 `---- Is this what is expected? Rainer > >> >>> 2) which minor mode should I use for this and how can I configure it? >> >> I'm not sure if I understand. When you use ob-R.el, you work in Org >> files with R source blocks, right?=20 > > Correct. > >> When do you want to fold the R output below? When you are in org-mode >> or when editing source blocks in R-mode? > > The evaluated code - not in the source code. > >> >> In the former case, Org-mode is in charge and you don't need >> outshine.=20 > > True. > >> In the latter case, you could install outshine as described in the >> docs and then add outline-minor-mode to the ESS/R mode hook, i.e. > > That's it. > >> >> ,-----------------------------------------------------------------------= -------- >> | ;; outline >> | (when (require 'outline nil t) >> | (add-hook 'ess-mode-hook 'outline-minor-mode)) ; is that the hook for= R-mode? >> |=20 >> | ;; outshine >> | (when (require 'outshine nil t) >> | (add-hook 'outline-minor-mode-hook 'outshine-hook-function) >> | (setq outshine-use-speed-commands t)) >> `-----------------------------------------------------------------------= -------- >> >> Outshine headlines are outcommented Org headlines, i.e.=20 >> >> ,---------------------------------- >> | * Beginning org variable transfer >> `---------------------------------- >> >> becomes=20 >> >> ,---------- >> | ## * Beginning org variable transfer >> `---------- >> >> in R-mode.=20 >> >> The R output would become an outshine-subtree with the header above, >> just like in Org-mode, possibly surrounded by other subtrees. > > Sounds great - thanks a lot. I will try it out, > > Rainer > >> >>> --8<---------------cut here---------------start------------->8--- >>>> ###################################################################### >>> ## Beginning org variable transfer >>> try(detach(.org_variables_), silent=3DTRUE) >>> .org_variables_ <- new.env() >>> assign( 'COLUMNS', read.table("/var/folders/50/wcr5bjwn75q595n6x82g= xj280000gn/T/babel-74428N93/R-import-74428U4A", header=3DTRUE, row.names=3D= 1, sep=3D"\t", as.is=3DTRUE ), envir =3D .org_variables_ ); lockBinding('CO= LUMNS', .org_variables_) >>> assign( 'COLS_TO_EVAL', read.table("/var/folders/50/wcr5bjwn75q595n= 6x82gxj280000gn/T/babel-74428N93/R-import-74428hCH", header=3DTRUE, row.nam= es=3D1, sep=3D"\t", as.is=3DTRUE ), envir =3D .org_variables_ ); lockBindin= g('COLS_TO_EVAL', .org_variables_) >>> assign( 'ALLSPECIES', read.table("/var/folders/50/wcr5bjwn75q595n6x= 82gxj280000gn/T/babel-74428N93/R-import-74428uMN", header=3DTRUE, row.names= =3D1, sep=3D"\t", as.is=3DTRUE ), envir =3D .org_variables_ ); lockBinding(= 'ALLSPECIES', .org_variables_) >>> assign( 'SPECIES', read.table("/var/folders/50/wcr5bjwn75q595n6x82g= xj280000gn/T/babel-74428N93/R-import-744287WT", header=3DTRUE, row.names=3D= 1, sep=3D"\t", as.is=3DTRUE ), envir =3D .org_variables_ ); lockBinding('SP= ECIES', .org_variables_) >>> assign( 'YEARS', read.table("/var/folders/50/wcr5bjwn75q595n6x82gxj= 280000gn/T/babel-74428N93/R-import-74428IhZ", header=3DTRUE, row.names=3D1,= sep=3D"\t", as.is=3DTRUE ), envir =3D .org_variables_ ); lockBinding('YEAR= S', .org_variables_) >>> assign('PRESENT', 2008, envir =3D .org_variables_); lockBinding('PR= ESENT', .org_variables_) >>> assign('MINEFFORT', 3, envir =3D .org_variables_); lockBinding('MIN= EFFORT', .org_variables_) >>> assign('PROPTRAIN', 0.6, envir =3D .org_variables_); lockBinding('P= ROPTRAIN', .org_variables_) >>> assign('RNGSEED', 13, envir =3D .org_variables_); lockBinding('RNGS= EED', .org_variables_) >>> assign('RNGKIND', "Mersenne-Twister", envir =3D .org_variables_); l= ockBinding('RNGKIND', .org_variables_) >>> assign('RNGNORMALKIND', "Inversion", envir =3D .org_variables_); lo= ckBinding('RNGNORMALKIND', .org_variables_) >>> assign('REFGRID', "./refGrid_8km.rds", envir =3D .org_variables_); = lockBinding('REFGRID', .org_variables_) >>> assign('IFN', "./__BOX__/IFN/DB_IFN/rds/tabplot.rds", envir =3D .or= g_variables_); lockBinding('IFN', .org_variables_) >>> assign('IFNCOUNT', "./__BOX__/IFN/DB_IFN/rdsRasterized/tabplot.coun= t.8km.rds", envir =3D .org_variables_); lockBinding('IFNCOUNT', .org_variab= les_) >>> assign('IFNMEAN', "./__BOX__/IFN/DB_IFN/rdsRasterized/tabplot.mean.= 8km.rds", envir =3D .org_variables_); lockBinding('IFNMEAN', .org_variables= _) >>> assign('IFNPRES', "./__BOX__/IFN/DB_IFN/rdsRasterized/tabplot.pres.= 8km.rds", envir =3D .org_variables_); lockBinding('IFNPRES', .org_variables= _) >>> assign('IFNSD', "./__BOX__/IFN/DB_IFN/rdsRasterized/tabplot.sd.8km.= rds", envir =3D .org_variables_); lockBinding('IFNSD', .org_variables_) >>> assign('IFNTABTREE', "./__BOX__/IFN/DB_IFN/rds/tabtree.rds", envir = =3D .org_variables_); lockBinding('IFNTABTREE', .org_variables_) >>> lockEnvironment(.org_variables_) >>> attach(.org_variables_) >>> save(.org_variables_, file=3D'org_variables.RData') >>> ## end org variable transfer >>> ###################################################################### >>> --8<---------------cut here---------------end--------------->8--- >>> >>> >>> Footnotes:=20 >>> [1] http://orgmode.org/worg/org-tutorials/org-outside-org.html =2D-=20 Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology,= UCT), Dipl. Phys. (Germany) Centre of Excellence for Invasion Biology Stellenbosch University South Africa Tel : +33 - (0)9 53 10 27 44 Cell: +33 - (0)6 85 62 59 98 Fax : +33 - (0)9 58 10 27 44 Fax (D): +49 - (0)3 21 21 25 22 44 email: Rainer@krugs.de Skype: RMkrug PGP: 0x0F52F982 --=-=-= Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.22 (Darwin) iQEcBAEBAgAGBQJThFQoAAoJENvXNx4PUvmC0DMIAIarYPyz/cagFbo23jaLfdVB PD0fTI2bz8ZB2T+dE2UTY1EDG1Z6LY6bW1xsqquiX/cU8mMUwQFjCa1Ef6mX9+I3 uMKUdBszPxmZyZScTVlOcJ+evgLjKbvzKFIPDfhEiZ3xQ6Ke5R31JY7WBs+44qOk JpL6gPlmib63n93czuQS7D3xweZtrXd2Oq8jrOpiCNrc8yn8jMiapmLilyoSPpX3 awzzt9xSFLT3HeQK3W/uHrovk1cDrkNK8RxlhwXzAOUGESjvt4lCT9clMbiyUucf OCBzlRTj6SZkdqS1dCLAdlKuDrIWuH3K4xRaQSbFYhLLFSXGIKmuDPG2NUCoF28= =AeDa -----END PGP SIGNATURE----- --=-=-=--