Re: [Rd] Unexpected behavior with \r in Rgui 2.12.0

From: Henrik Bengtsson <hb_at_biostat.ucsf.edu>
Date: Thu, 25 Nov 2010 10:02:31 -0800

FYI, this topic was discussed in R-help thread 'cat(), Rgui, and support for carriage return \r...' on March 17-29, 2006:

  https://stat.ethz.ch/pipermail/r-help/2006-March/101863.html

Some modifications to Rgui's behavior was brought up and (I think) implemented at the time.

As far as I remember, after that discussion ASCII carriage return did indeed *move* the point/cursor to the beginning of the current line. I remember trying it at the time, but I admit I haven't verified it in several years now. However, I believe that that was before Unicode character support was introduced, and my best guess is that support for the latter may have changed the expected behavior of carriage return.

My $.02 on the history

/Henrik

On Thu, Nov 25, 2010 at 7:49 AM, Russell Pierce <rpier001_at_ucr.edu> wrote:
> Prof. Ripley & Joris,
>
> I concur with Joris, the behavior persists in R version 2.12.0 Patched
> (2010-11-24 r53655) and  under Windows XP.  The current development build
> for Windows did not have an RGui at the time I wrote this.
>
> I did not realize that the functionality of "\r" to return to
> the beginning of the line in Windows was undocumented/unsupported.  ?Quotes
> lists \r as carriage return without any warning that it is unsupported in
> RGui, perhaps a notice should be put in?
>
> Since "\r" is not supported, I would like to express a desire that it at
> least do something predictable.  Certainly, it seems doubtful that
> these "strange characters" (with the copying characteristics described) is
> what a user expects.  If "\r" is not usable under RGui perhaps it would be
> better to ignore it entirely than to parse it and return the odd output that
> I am seeing?
>
> In the RGui for Windows prior to this version "\r" returned to
> the beginning of the line without deleting the already written content.
>  Thus cat(70,"\r") and cat("\r",70) only differed in terms of where the
> cursor was left.
>
> I started using "\r" because I had seen it in the code for txtProgressBar.
>  The help for txtProgressBar does note that it "uses \r to return to the
> left margin – the interpretation of carriage return is up to the terminal or
> console in which *R* is running". For Jorris' reference, in a windows
> environment there are several methods to produce keep track of progress:
> tcltk::tkProgressBar, utils::txtProgressBar , and utils::winProgressBar.
>  None of them are as "user friendly" as cat and "\r" because you have to
> create the progress bar, increment it, then destroy it.  If you want to
> output debugging information as well as increment a counter you need to
> tweak the title attribute as you go.
>
> Best,
>
> Russell S. Pierce
>
>        [[alternative HTML version deleted]]
>
>
> ______________________________________________
> R-devel_at_r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>
>



R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Thu 25 Nov 2010 - 18:05:42 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 Thu 25 Nov 2010 - 20:20:27 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.

list of date sections of archive