Remove reundant quote.
[netbsd-mini2440.git] / etc / rc.d / wscons
blob630bcaf3e96d514895830611c1dc62e5a7e02cf1
1 #!/bin/sh
3 # $NetBSD: wscons,v 1.11 2005/12/13 21:46:47 peter Exp $
6 # PROVIDE: wscons
7 # REQUIRE: mountcritremote
8 # BEFORE: LOGIN
10 $_rc_subr_loaded . /etc/rc.subr
12 name="wscons"
13 rcvar=$name
14 start_cmd="wscons_start"
15 stop_cmd=":"
17 wscons_start()
19 wscfg=/usr/sbin/wsconscfg
20 wsfld=/usr/sbin/wsfontload
21 wsctl=/sbin/wsconsctl
22 config=/etc/wscons.conf
23 usage="Usage: wsconfig [-n] [-f configfile] [-font fontpgm] [-screen screenpgm]"
24 DOIT=
26 while [ $# -gt 0 ]; do
27 case $1 in
28 -n)
29 DOIT=echo
31 -f)
32 config=$2
33 shift
35 -font)
36 wsfld=$2
37 shift
39 -screen)
40 wscfg=$2
41 shift
44 echo $usage
45 exit 1
47 esac
48 shift
49 done
52 # args mean:
53 # screen idx scr emul
54 # font name width height enc file
55 ( while read type arg1 arg2 arg3 arg4 arg5; do
56 case "$type" in
57 \#*|"")
58 continue
61 font)
62 name=$arg1
63 width=$arg2
64 height=$arg3
65 enc=$arg4
66 file=$arg5
67 cmd=$wsfld
69 case $width in
73 cmd="$cmd -w $width"
75 esac
76 case $height in
80 cmd="$cmd -h $height"
82 esac
83 case $enc in
87 cmd="$cmd -e $enc"
89 esac
90 cmd="$cmd -N $name $file"
91 eval $DOIT $cmd
94 screen)
95 idx=$arg1
96 scr=$arg2
97 emul=$arg3
98 cmd=$wscfg
100 case $scr in
104 cmd="$cmd -t $scr"
106 esac
107 case $emul in
111 cmd="$cmd -e $emul"
113 esac
114 cmd="$cmd $idx"
115 eval $DOIT $cmd
118 keyboard)
119 kbd=$arg1
120 cmd=$wscfg
121 case $kbd in
122 -|auto)
123 cmd="$cmd -k"
126 cmd="$cmd -k $kbd"
128 esac
129 eval $DOIT $cmd
132 encoding)
133 map=$arg1
134 cmd="$wsctl -w \"encoding=$map\""
135 eval $DOIT $cmd
138 mapfile)
139 mapfile=$arg1
140 ( while read entry; do
141 case "$entry" in
142 \#*|"")
143 continue
146 cmd="$wsctl -w \"map+=$entry\""
147 cmd="$cmd >/dev/null"
148 eval $DOIT $cmd
150 esac
151 done ) < $mapfile
154 mux)
155 cmd="$wscfg -m $arg1"
156 eval $DOIT $cmd
159 setvar)
160 dev=$arg1
161 var=$arg2
162 val=$arg3
164 case $dev in
165 ttyE*)
166 cmdmod="-d"
168 wskbd*)
169 cmdmod="-k"
171 wsmouse*)
172 cmdmod="-m"
174 esac
175 echo -n "$dev: "
176 cmd="$wsctl -f /dev/$dev $cmdmod -w $var=$val"
177 eval $DOIT $cmd
180 esac
181 done ) < $config
184 load_rc_config $name
185 run_rc_command "$1"