[R] Off topic: Tcl/Tk outside R.
Peter Dalgaard
p.dalgaard at biostat.ku.dk
Mon Jul 14 09:15:29 CEST 2008
Rolf Turner wrote:
>
> I'm trying to learn about the tcltk package and its uses. Floundering
> around a bit ... Have discovered Peter Dalgaard's articles in R-News,
> which should help. Also James Wettenhall's suite of examples look like
> they might be enlightening, even though the indications are that they are
> Windoze oriented.
>
> Be that as it were, I decided to fool around a bit with Tcl/Tk *outside*
> of R to see if I could get the hang of just what Tcl/Tk actually is.
> (As I said I am floundering; I can't seem to get a conceptual grip on
> what it's all about.) I discovered a Tcl/Tk ``Cookbook'' by Sastry
> and Sastry that looked promising. URL:
>
> http://www.dci.clrc.ac.uk/Publications/Cookbook/
>
> Tried the first couple of (ultra-simple) examples and they seemed to
> work.
> (Amazing, for me.)
>
> Then I tried the example on creating an executable file for invoking
> the Tcl/Tk commands. The instructions said to create a file
> ``button.tcl'' with a first line
>
> #!/usr/bin/wish
>
> and succeeding lines
>
> button .b -text "Press Me" -command exit
> pack .b
>
> I did this, did a chmod to make the file executable, and then typed
>
> button.tcl
>
> at the command line prompt. I got the error messages
>
> tcsh: button: Command not found.
> tcsh: pack: Command not found.
>
> So the code at the beginning of the script telling the machine
> to use the ``wi'' shell (rather than tcsh) is being ignored.
> Why?
>
> The Tcl/Tk executables really are in /usr/bin.
>
> If I invoke ``wish'' interactively, and then type in the ``succeeding
> lines''
> interactively the ``Press Me'' button pops up as it should. (And goes
> away
> when I click on it.)
>
> Also if I type ``wish button.tcl'' then it seems to work; i.e. the button
> pops up and goes away when clicked.
>
> Can anyone give me a hint as to why it doesn't work when the the
> executable
> script is invoked directly (from tcsh)? Other than the fact that I'm
> using a Mac :-) .
>
> [Invoking unname -a gives ``Darwin TURNER-ROLF.local 8.11.1 Darwin Kernel
> Version 8.11.1: Wed Oct 10 18:23:28 PDT 2007;
> root:xnu-792.25.20~1/RELEASE_I386 i386 i386''.]
>
> The Tcl/Tk software, from what I can glean, appears to be version 8.4
> (???).
>
> Thanks for any insights.
Odd... That _does_ actually work for me, so I guess the issue is
Mac-specific. One thought:
Tcl is like R; a core language where you load packages in order to do
any real work and wish is just Tcl with the Tk package preloaded. I.e.,
the following also works for me
$ cat rolf.wish
#!/usr/bin/tclsh
package require Tk
button .b -text "Press Me" -command exit
pack .b
--
O__ ---- Peter Dalgaard Øster Farimagsgade 5, Entr.B
c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
More information about the R-help
mailing list