emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] [PATCH] ob-R.el: Add customizable R command primary prompt setti


From: Grant Rettke
Subject: Re: [O] [PATCH] ob-R.el: Add customizable R command primary prompt setting
Date: Sat, 23 Aug 2014 08:52:19 -0500

Gotcha.

I wasn't tracking that thread. My desires was independent, I had just
wanted supported for a non-standard prompt because my source block
evaluation obviously quit working.

Good to know it is addressed!

Have a great day.
Grant Rettke | ACM, ASA, FSF, IEEE, SIAM
address@hidden | http://www.wisdomandwonder.com/
“Wisdom begins in wonder.” --Socrates
((λ (x) (x x)) (λ (x) (x x)))
“Life has become immeasurably better since I have been forced to stop
taking it seriously.” --Thompson


On Sat, Aug 23, 2014 at 3:34 AM, Aaron Ecay <address@hidden> wrote:
> Hi Grant,
>
> We have some discussion of realted issues in the thread that starts at
> <http://mid.gmane.org/address@hidden>.
>
> 2014ko abuztuak 22an, Grant Rettke-ek idatzi zuen:
>>
>>  list/ob-R.el (org-babel-R-command-primary-prompt,
>> org-babel-R-evaluate-session): Former adds customizable prompt value
>> the latter utilizes it.
>>
>> My R prompt looks like this "ℝ> ".  Babel needs to know more how to
>> handle various situations so the
>> regex used in `org-babel-R-evaluate-session' to identify the prompt
>> looks like this "^\\([ ]*[ℝ>+\\.][ ]?\\)+\\([[0-9]+\\|[ ]\\)".
>> It is required to handle various R prompt situations correctly.  It
>> may change over time to handle more situations.  The
>> user doesn't need to know about those details.  The user only cares
>> about the R prompt alone.  For example, when
>> they set the prompt in R it looks like this =options(prompt="ℝ> ")=,
>> it is very simple.  It should be this simple for bable, too.
>>
>> This change adds a user customizable variable for the prompt from user
>> perspective `org-babel-R-command-primary-prompt'.  That variable is
>> utilized in `org-babel-R-evaluate-session' where the full regular
>> expression to match the prompt is constructed.  This makes it very
>> easy to handle a custom prompt since from the R side of things, the
>> value of `org-babel-R-command-primary-prompt' is the only thing that
>> the user needs to know to set.  Via custom it looks like this
>> '(org-babel-R-command-primary-prompt "ℝ>").
>>
>> TINYCHANGE
>> ---
>>  lisp/ob-R.el | 6 ++++++
>>  1 file changed, 6 insertions(+)
>>
>> diff --git a/lisp/ob-R.el b/lisp/ob-R.el
>> index 41b943c..1cb675b 100644
>> --- a/lisp/ob-R.el
>> +++ b/lisp/ob-R.el
>> @@ -87,6 +87,11 @@ this variable.")
>>    :version "24.1"
>>    :type 'string)
>>
>> +(defcustom org-babel-R-command-primary-prompt ">"
>> +  "User configurable portion of the primary prompt."
>> +  :group 'org-babel
>> +  :type 'string)
>> +
>>  (defvar ess-local-process-name) ; dynamically scoped
>>  (defun org-babel-edit-prep:R (info)
>>    (let ((session (cdr (assoc :session (nth 2 info)))))
>> @@ -413,6 +418,7 @@ last statement in BODY, as elisp."
>>      (list body org-babel-R-eoe-indicator)
>>      "\n"))
>>   (inferior-ess-send-input)))))) "\n"))))
>> +                      (concat  "^\\([ ]*[" 
>> org-babel-R-command-primary-prompt "+\\.][ ]?\\)+\\([[0-9]+\\|[ ]\\)") line)
>
> I don’t think this does what you want it to: you’re inserting the
> contents of the variable inside a regex character class (delimited by
> []).
>
> See the patch I just sent
> <http://mid.gmane.org/address@hidden> for a different
> approach.
>
> --
> Aaron Ecay



reply via email to

[Prev in Thread] Current Thread [Next in Thread]