ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/util/util.tcl
Revision: 2.3
Committed: Fri Dec 9 14:17:47 1994 UTC (29 years, 3 months ago) by greg
Content type: application/x-tcl
Branch: MAIN
Changes since 2.2: +6 -1 lines
Log Message:
made it so editors like emacs open their own window

File Contents

# Content
1 # SCCSid "$SunId$ LBL"
2 #
3 # General utility routines
4 #
5
6 proc beep {} { # ring the bell
7 puts -nonewline stderr "\a"
8 }
9
10 proc view_txt fn { # view a text file
11 global env
12 if [info exists env(EDITOR)] {
13 if {[lsearch -exact {vi vedit view ex edit ed red} \
14 [file tail [lindex $env(EDITOR) 0]]] >= 0} {
15 eval exec xterm +sb -e $env(EDITOR) $fn
16 } else {
17 eval exec $env(EDITOR) $fn
18 }
19 } else {
20 foreach f $fn {
21 exec xedit $f
22 }
23 }
24 }
25
26 proc cardval {var cvl} { # set variable to one of a set of values
27 upvar $var v
28 set tv [string toupper $v]
29 foreach cv $cvl {
30 if {[string first $tv [string toupper $cv]] == 0} {
31 set v $cv
32 return $cv
33 }
34 }
35 return {} ; # this would seem to be an error
36 }
37
38 proc writevars {f vl} { # write variables to a file
39 foreach v $vl {
40 upvar $v myv
41 if [catch {set il [array names myv]}] {
42 puts $f "set $v [list $myv]"
43 } else {
44 foreach i $il {
45 puts $f "set ${v}($i) [list $myv($i)]"
46 }
47 }
48 }
49 }