emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [PATCH] [babel] R :session should respect ess-ask-for-ess-directory set by user
@ 2010-08-21 18:03 Erik Iverson
  2010-08-24  3:12 ` [APPLIED] " Dan Davison
  0 siblings, 1 reply; 2+ messages in thread
From: Erik Iverson @ 2010-08-21 18:03 UTC (permalink / raw)
  To: emacs-orgmode

Hello,

I have (setq ess-ask-for-ess-directory nil) in my .emacs.  I.e., I don't
want to be asked to set my working directory.  As it stands, if we
run an R code block with the :session argument and no :dir argument,
ess-ask-for-ess-directory gets set to t.  I would prefer if I had
it previously set to nil, to do what ESS usually does to decide
which directory to use.

The following patch should do that, and below is some test code to
make sure it works in each of the 4 cases.

---
  lisp/ob-R.el |    3 ++-
  1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/lisp/ob-R.el b/lisp/ob-R.el
index 2a11421..e767449 100644
--- a/lisp/ob-R.el
+++ b/lisp/ob-R.el
@@ -155,7 +155,8 @@ This function is called by `org-babel-execute-src-block'."
    "If there is not a current R process then create one."
    (unless (string= session "none")
      (let ((session (or session "*R*"))
-	  (ess-ask-for-ess-directory (not (cdr (assoc :dir params)))))
+	  (ess-ask-for-ess-directory
+	   (and ess-ask-for-ess-directory (not (cdr (assoc :dir params))))))
        (if (org-babel-comint-buffer-livep session)
  	  session
  	(save-window-excursion
-- 
1.7.0.4


;; test code below

(setq ess-ask-for-ess-directory t)

#+begin_src R :session

2 + 2

#+end_src

#+begin_src R :session :dir /tmp

2 + 2

#+end_src


(setq ess-ask-for-ess-directory nil)

#+begin_src R :session

2 + 2

#+end_src

#+begin_src R :session :dir /tmp

2 + 2

#+end_src

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [APPLIED] Re: [PATCH] [babel] R :session should respect ess-ask-for-ess-directory set by user
  2010-08-21 18:03 [PATCH] [babel] R :session should respect ess-ask-for-ess-directory set by user Erik Iverson
@ 2010-08-24  3:12 ` Dan Davison
  0 siblings, 0 replies; 2+ messages in thread
From: Dan Davison @ 2010-08-24  3:12 UTC (permalink / raw)
  To: Erik Iverson; +Cc: emacs-orgmode

Erik Iverson <iverson@biostat.wisc.edu> writes:

> Hello,
>
> I have (setq ess-ask-for-ess-directory nil) in my .emacs.  I.e., I don't
> want to be asked to set my working directory.  As it stands, if we
> run an R code block with the :session argument and no :dir argument,
> ess-ask-for-ess-directory gets set to t.  I would prefer if I had
> it previously set to nil, to do what ESS usually does to decide
> which directory to use.
>
> The following patch should do that, and below is some test code to
> make sure it works in each of the 4 cases.

Thanks Erik, I've applied that.

Dan

>
> ---
>  lisp/ob-R.el |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/lisp/ob-R.el b/lisp/ob-R.el
> index 2a11421..e767449 100644
> --- a/lisp/ob-R.el
> +++ b/lisp/ob-R.el
> @@ -155,7 +155,8 @@ This function is called by `org-babel-execute-src-block'."
>    "If there is not a current R process then create one."
>    (unless (string= session "none")
>      (let ((session (or session "*R*"))
> -	  (ess-ask-for-ess-directory (not (cdr (assoc :dir params)))))
> +	  (ess-ask-for-ess-directory
> +	   (and ess-ask-for-ess-directory (not (cdr (assoc :dir params))))))
>        (if (org-babel-comint-buffer-livep session)
>  	  session
>  	(save-window-excursion

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-08-24  3:12 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-08-21 18:03 [PATCH] [babel] R :session should respect ess-ask-for-ess-directory set by user Erik Iverson
2010-08-24  3:12 ` [APPLIED] " Dan Davison

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).