#!/bin/sh
ALT_XKC=64

xmodmap -e "remove mod1 = Alt_L"
xmodmap -e "keycode $ALT_XKC = Mode_switch"
xmodmap -e "add mod5 = Mode_switch"

table="
59:F1:F1:1
60:F2:F2:2
61:F3:F3:3
62:F4:F4:4
63:F5:F5:5
33:f:F:6
64:F6:F6:7
35:h:H:8
23:i:I:9
36:j:J:0
37:k:K:minus
38:l:L:equal
50:m:M:plus
49:n:N:asterisk
24:o:O:slash
25:p:P:underscore
16:q:Q:period
19:r:R:comma
31:s:S:semicolon
20:t:T:colon
22:u:U:apostrophe
47:v:V:quotedbl
17:w:W:exclam
45:x:X:question
21:y:Y:at
44:z:Z:numbersign
57:space:space:Tab
53:slash:question:bar
"

echo "$table" | while IFS=: read -r lk base shifted sym; do
	[ -z "$lk" ] && continue
	xk=$((lk + 8))
	xmodmap -e "keycode $xk = $base $shifted $sym"
done
