I think its best if core mods are done by the core group while others focus on work that can be done external to the core.
Thus, what I have done is to enhance the batchfiles distribution with 3 new batchfiles: Rscript.bat, #Rscript.bat and runR.bat which will be part of the next distribution of batchfiles but can be obtained now, if desired, from the batchfiles svn (with the caveat that they require R 2.5.0). The batchfiles home page is here: http://code.google.com/p/batchfiles The source tab on that page gets you to the svn and the links on the right include links to the NEWS and README files which describe the additions, a link to info on the Windows bug that I mentioned and two perl links that describe how this all works in perl which may be a helpful analogous situation. . On 2/17/07, Duncan Murdoch <[EMAIL PROTECTED]> wrote: > On 2/16/2007 9:35 AM, Gabor Grothendieck wrote: > > I mentioned this twice already and no one answered;however, I am mentioning > > this a third time since its a serious deficiency. > > I agree this would be a reasonable addition, but I wouldn't class it as > a serious deficiency, and I don't plan to work on it myself. > > If you want to put together patches to the trunk code and docs to > implement this I'll review them and possibly commit them. If you don't > see this as a high enough priority to do that, then I'd suggest doing > what I do: don't use the CMD.EXE shell. There are a number of > Unix-like shells available in Windows (Cygwin, MSYS, etc.) that can > handle the #! syntax just fine. Or just use two files, as you describe > below. > > Duncan Murdoch > > > The Rscript facility > > that is upcoming in R is useful but on Windows one will often be relegated > > to having two files: a batch file and an R file unless the -x switch > > is implemented > > to allow them to be combined. This is not a problem on UNIX which supports > > #! but on Windows we need -x. Every other common scripting language > > including > > perl, python and ruby supports -x for this purpose. > > > > (The -x flag would start R processing at the first line that begins with #! > > so > > that prior lines could be Windows batch commands allowing the same file > > to be used as a batch file and an R file.) > > > > Note that there is a bug in Windows which means that if you simply associate > > .R to running R then the result cannot be redirected. There is a bug > > fix available > > for this but I think we need to be able to run out of the box for something > > this > > common. > > > > > > On 1/29/07, Gabor Grothendieck <[EMAIL PROTECTED]> wrote: > >> Haven't got any feedback on this one. > >> > >> Will we be getting a perl/python/ruby style -x switch for Rscript for R > >> 2.5.0? > >> > >> It certainly would give more flexibility to users of Rscript on non-UNIX > >> systems > >> where #! notation is not available. > >> > >> On 1/26/07, Gabor Grothendieck <[EMAIL PROTECTED]> wrote: > >>> Good idea. ruby seems to work the same way. python does too but with > >>> a slightly different definition: > >>> > >>> C:\> ruby -h | findstr strip > >>> -x[directory] strip off text before #!ruby line and perhaps cd to > >>> directory > >>> > >>> C:\> perl -h | findstr strip > >>> -x[directory] strip off text before #!perl line and perhaps cd to > >>> directory > >>> > >>> C:\> python -h | findstr skip > >>> -x : skip first line of source, allowing use of non-Unix forms of > >>> #!cmd > >>> > >>> > >>> On 1/26/07, Vladimir Eremeev <[EMAIL PROTECTED]> wrote: > >>>> ActivePerl has '-x' switch which tells it to skip all lines in the file > >>>> till > >>>> "#!". > >>>> This allows writing perl scripts in ordinary .bat files. > >>>> > >>>> ?shQuote contains a link with the following perl script example: > >>>> ===8<=== > >>>> @echo off > >>>> :: hello.bat > >>>> :: Windows executable Perl script > >>>> :: Note: > >>>> :: assumes perl.exe is in path > >>>> :: otherwise, use absolute path > >>>> perl -x -S "%0" %* > >>>> goto end > >>>> #!perl > >>>> > >>>> print "Hello, World!\n"; > >>>> __END__ > >>>> :end > >>>> :: ------ end of hello.bat ------ > >>>> > >>>> Windows Notes: > >>>> " -x " (lower case x): Skip all text until shebang line. > >>>> " -S " (upper case S): Look for script using PATH variable. Special > >>>> meaning > >>>> in Windows: appends .bat or .cmd if lookup for name fails and name does > >>>> not > >>>> have either suffix. > >>>> " %* " only on WinNT/2K/XP; use %1 %2 . . . %9 on Win9x/DOS > >>>> ===8<=== > >>>> > >>>> I think the simplest way to implement shebang on windows would be > >>>> embedding > >>>> one more command line switch with similar functionality to perl's '-x'. > >>>> > >>>> -- > >>>> View this message in context: > >>>> http://www.nabble.com/Rscript-on-Windows-tf3120774.html#a8651815 > >>>> Sent from the R devel mailing list archive at Nabble.com. > >>>> > > > > ______________________________________________ > > R-devel@r-project.org mailing list > > https://stat.ethz.ch/mailman/listinfo/r-devel > > ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel