I do not want to use the terminal, just double clicks (i.e. the simplest, automatic, non-manual way, without having to write a line / command). Therefore everything should happen outside any terminal. The user won't use a terminal.
I don't have a Mac and I'm not familiar with this OS, sorry. But I'm really surprised the click method gives different results than on Linux and Windows. I know the click method worked both on Linux (Ubuntu latest version) and Windows (10). Yes, I executed my file from a terminal and got obviously the same result as you (that's reassuring). Come on guys, creating a package... It's like using a hammer to kill a fly... ________________________________ De : Duncan Murdoch <murdoch.dun...@gmail.com> Envoy� : mercredi 10 octobre 2018 20:54 � : Olivier GIVAUDAN; Jeff Newmiller Cc : r-help@r-project.org Objet : Re: [R] Genuine relative paths with R On 10/10/2018 4:42 PM, Olivier GIVAUDAN wrote: > Why are you not simply double-clicking on 'TestPWD' and choosing to > execute the file (don't add anything)? > Are you executing the file from a terminal? Yes, I was executing the file from my terminal. Otherwise I really have no idea what the "current directory" is in the Finder. (I'm on a Mac. I just tried the click method; it printed my home directory, not the directory of the script.) I don't know the name of your visual front end, but you are displaying the working directory that it sets when you click on TestPWD. That will be different from the working directory that your user sees in the Terminal. You can see what I saw if you run TestPWD from the Terminal. It will print the current working directory, not the one where TestPWD happens to live. If you want to do the same sort of thing in R, you could set up a script that calls R, and execute that in the way you executed TestPWD. But in another message you said you aren't allowed to do that, so I think your best solution is the one offered by Bill Dunlap: organize your files as an R package. If you name your package "Olivier", then you can find all the files in it under the directory returned by system.file(".", package = "Olivier") The package system is designed for R code, but you can put arbitrary files into a package: just store them under the "inst" directory in your source. When the package is installed, those files will be moved up one level, i.e. Olivier/inst/foo will become system.file("foo", package = "Olivier") Duncan Murdoch [[alternative HTML version deleted]]
______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.