blob: 7859f5fb9f4635da8bd645529e28fd6f806a23f7 (
plain)
| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
 | #!/sbin/runscript
# Copyright 2008 Roy Marples <roy@marples.name>
# All rights reserved. Released under the 2-clause BSD license.
depend()
{
	need localmount
}
start()
{
	wscfg=/usr/sbin/wsconscfg
	wsfld=/usr/sbin/wsfontload
	wsctl=/sbin/wsconsctl
	config=/etc/wscons.conf
	# args mean:
	#	screen idx scr emul
	#	font   name width height enc file
	while read type arg1 arg2 arg3 arg4 arg5; do
		case "${type}" in
			\#*|"")
				continue
				;;
			font)
				cmd=${wsfld}
				[ "${arg2}" != "-" ] && cmd="${cmd} -w ${arg2}"
				[ "${arg3}" != "-" ] && cmd="${cmd} -h ${arg3}" 
				[ "${arg4}" != "-" ] && cmd="${cmd} -e ${arg4}"
				cmd="${cmd} -N ${arg1} ${arg5}"
				eval "${cmd}"				
				;;
			screen)
				cmd=${wscfg}
				[ "${arg2}" != "-" ] && cmd="${cmd} -t ${arg2}"
				[ "${arg3}" != "-" ] && cmd="${cmd} -e ${arg3}"
				cmd="${cmd} ${arg1}"
				eval "${cmd}"
				;;
			keyboard)
				cmd=${wscfg}
				case "${arg1}" in
					-|auto)
						cmd="${cmd} -k"
						;;
					*)
						cmd="${cmd} -k ${arg1}"
						;;
				esac
				${cmd}
				;;
			encoding)
				eval ${wsctl} -w "\"encoding=${arg1}\""
				;;
			mapfile)
				local entry=
				while read entry; do
				    case "${entry}" in
					\#*|"")
					    continue
					    ;;
					*)
					    cmd="${wsctl} -w \"map+=${entry}\""
					    eval "${cmd} >/dev/null"
					    ;;
				    esac
				done < "${arg1}"
				;;
			mux)
				eval "${wscfg} -m ${arg1}"
				;;
			setvar)
				case "${arg1}" in
				keyboard)
					cmd="${wsctl} -kw ${arg2}"
					;;
				display)
					cmd="${wsctl} -dw ${arg2}"
					;;
				mouse)
					cmd="${wsctl} -mw ${arg2}"
					;;
				*)
					cmd="${wsctl} -w ${arg1}"
					;;
				esac
				eval "${cmd}"
				;;
		esac
	done < "${config}"
}
 |