Re: [Rd] deparse operators in expressions

From: Duncan Murdoch <>
Date: Sun, 10 Apr 2011 14:26:09 -0400

On 10/04/2011 2:08 PM, Yihui Xie wrote:
> Thanks for pointing out the direction. Since this is unlikely to
> change in base R, is it possible to change from an add-on package?

Of course. Just write your own deparse function. You can start with the code from the standard one, and make any changes you like.

Alternatively, just type your code the way you like it, and use keep.source to have it displayed as you entered it.

> I think it is reasonable to eliminate spaces around ^ and :, but I
> don't understand why /, %% and %/% should be different with other
> arithmetic operators like +, - and *.

I looked it up, and it has been like that since revision 2 when this code was first committed to our repository in 1997. I imagine whoever wrote it was following the pattern of some other language (maybe S), or maybe just their own personal taste.

Duncan Murdoch

> Regards,
> Yihui
> --
> Yihui Xie<>
> Phone: 515-294-2465 Web:
> Department of Statistics, Iowa State University
> 2215 Snedecor Hall, Ames, IA
> On Sun, Apr 10, 2011 at 8:20 AM, Duncan Murdoch
> <> wrote:
>> On 11-04-09 9:43 PM, Yihui Xie wrote:
>>> Hi,
>>> I observed a slight problem in deparse(): it will add spaces around
>>> most operators except /. I wonder if this is easy to fix. I know this
>>> is quite trivial, but I will appreciate if / is not treated as an
>>> exception. Examples:
>> It's easy to change: take a look at src/main/deparse.c. The operators that
>> are labelled as PP_BINARY2 get no spaces. Looking in src/main/names.c, we
>> see those are /, ^, %%, %/% and :.
>> But clearly this is by design, and I think it's unlikely to change.
>> Duncan Murdoch
>> mailing list Received on Sun 10 Apr 2011 - 18:29:16 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Mon 11 Apr 2011 - 00:10:59 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.

list of date sections of archive