File: font-switch

package info (click to toggle)
console-setup 1.245
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 62,488 kB
  • sloc: perl: 11,225; xml: 8,643; sh: 3,902; makefile: 778
file content (50 lines) | stat: -rwxr-xr-x 1,168 bytes parent folder | download | duplicates (2)
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
#!/bin/sh

LANGUAGE="$1"

FONT_RECORD=/var/run/console-setup.font

case "$LANGUAGE" in
	ar|fa|ps|ur)		CODESET=Arabic ;;
	hy)			CODESET=Armenian ;;
	ab|av|az|ba|chm|ce|cv|ik|kaa|kk|ku|kum|kv|ky|lez|mn|os|sah|sel|tg|tk|tt|tyv|uz)
				CODESET=CyrAsia ;;
	be|bg|mk|ru|sr|uk)	CODESET=CyrSlav ;;
	am|byn|gez|ti|tig)	CODESET=Ethiopian ;;
	ka)			CODESET=Georgian ;;
	el)			CODESET=Greek ;;
	he|iw|yi)		CODESET=Hebrew ;;
	lo)			CODESET=Lao ;;
	ast|et|sq|tr|xh)	CODESET=Lat15 ;;
	bs|cs|hr|hu|pl|ro|sk|sl|dsb|hsb)
				CODESET=Lat2 ;;
	cy|eo|ga|mt|ny)		CODESET=Lat38 ;;
	lt|lv|mh|mi)		CODESET=Lat7 ;;
	th)			CODESET=Thai ;;
	vi)			CODESET=Vietnamese ;;

	*) # Languages which are fine with default VGA CP437 font
		[ -r $FONT_RECORD ] || exit 0
		# Need to switch back to Lat15
		CODESET=Lat15
		;;
esac

FONT=
if lsmod 2> /dev/null | grep -q speakup ; then
	# Try to load full font for the screen reader
	FONT="`eval echo /usr/share/consolefonts/Full$CODESET*`"
fi

if [ ! -r "$FONT" ]
then
	FONT="`eval echo /usr/share/consolefonts/$CODESET*`"
fi

if [ -r "$FONT" ]
then
	gunzip < "$FONT" > /tmp/font.psf
	setfont /tmp/font.psf
	rm /tmp/font.psf
	echo "$FONT" > $FONT_RECORD
fi