-
Notifications
You must be signed in to change notification settings - Fork 5
/
tek
executable file
·73 lines (57 loc) · 1.67 KB
/
tek
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
#! /bin/sh
case "$1" in
-h|--help)
echo "Usage: $0 [-] [CMD PARAMS | FILES]"
echo "Run shell or command, or display files in Tektronix 4014 mode."
echo "Set up or adjust variables PS1, TERM, GNUTERM."
echo "Resize mintty terminal window to 780x1024 pixels unless disabled."
echo
echo Arguments:
echo " - do not resize window to Tek small resolution and aspect ratio"
exit;;
-) scale=false; shift;;
*) scale=true;;
esac
#############################################################################
# configure TERM value to use
TEKTERM=tek4014
#TEKTERM=tek # large/default font size
#############################################################################
# resize mintty
if $scale
then case "$TERM_PROGRAM" in
mintty) h=780
w=1024
echo -en "\e[4;${h};${w}t"
;;
esac
fi
#############################################################################
# switch to Tek mode
echo -en "\e[?38h"
#############################################################################
# set variables
TERM=$TEKTERM
GNUTERM=tek40xx
export TERM
export GNUTERM
#############################################################################
# run shell (if no arguments) or command (if given) or display files
case "$1" in
"") ${SHELL:-sh};;
*) if type "$1" > /dev/null 2> /dev/null
then cmd="$1"
shift
"$cmd" "$@"
else cat "$@"
fi
read x;;
esac
#############################################################################
# switch back to DEC mode
echo -e "\e"
#############################################################################
# notify parent shell of changed window size
kill -WINCH $PPID
#############################################################################
# end