All lines in the .ttkeyboard file must end in
a line feed (LF, ASCII 10) or a CR/LF pair.
General Settings
Setting |
Description |
-spacing |
Minimum number of pixels between keys
-spacing 2 |
-margin |
Minimum number of pixels on each edge of the keyboard
-margin 3 |
-fontSize |
Maximum font size in points of key labels
-fontSize 30 |
-keyHeight |
Relative height of keys compared to default value of 1
-keyHeight 1.4 |
# |
Comment line
# Default keyboard |
+ |
Name keyboard layout and begin section. Also ends previous keyboard
layout if one is present. A period in the name; e.g.
English (STD 437).shift , prevents the layout name from being
displayed in TinyTERM
+QWERTY (portrait) |
Key Options
When a key is defined by more than a single character, these options may be added to
the definition, separated by two semicolons. When a single semicolon is desired
inside the brackets, separate it from the others by a space:
[; ;;shiftLabel=:]
Options are all case-sensitive.
Option |
Description |
\ |
Escape character. Used for special characters
that have other uses without the \.
\\ |
blank |
When set to 1, prevents the key from being drawn. Used for creating
space between visible keys.
[SPACER;;blank=1] |
capsKey |
When set to 1, causes the key to act as the Caps Lock key,
regardless of other settings.
[Caps;;capsKey=1] |
ctrlKey |
When set to 1, causes the key to act as the Ctrl key,
regardless of other settings.
[Ctrl;;ctrlKey=1] |
hideKey |
When set to 1, causes the key to hide the keyboard when tapped. Also
replaces any text with a keyboard graphic. The keyboard can be restored by
tapping the keyboard icon in the title bar.
[HIDE;;hideKey=1] |
keyChar |
Assigns a specific value to a key. Available values are
listed below.
[Enter;;keyChar=13] |
keyString |
Assigns a multi-character string to a key.
This allows you to create custom key mappings with multi-byte
sequences on a single keystroke.
[F20;;keyString=\033\[34~] |
shiftLabel |
Displays the character as secondary on the keyboard key. Used
to show what character will be typed when a shiftTo key is held. There is
no way to display more than two such characters on a key.
[3;;shiftLabel=#] |
shiftLock |
Selects a keyboard layout to display. The selected layout
will replace the current layout.
[Fn;;shiftLock=IBM3151 (STD 437).function] |
shiftTo |
Selects a keyboard layout to display while key is held. The selected
layout will replace the current layout until the key is released.
[AltGr;;shiftTo=Deutsch (ISO 8859-1).altgr] |
size |
Changes the width of the key, relative to the default size of 1. Actual
key size is determined automatically by the number of keys, and the
general settings. It cannot be set as an absolute value.
[Shift;;shiftTo=English (STD 437).shift;;size=1.5] |
Special Characters
The following characters are created with the escape character \.
Character |
Value |
Character |
Value |
\b |
backspace (hex 08) |
\v |
vertical tab (hex 0b) |
\e |
escape (hex 1b) |
\\ |
backslash (hex 5c) |
\f |
form feed (hex 0c) |
\[ |
left square bracket (hex 5b) |
\n |
line feed (hex 0a) |
\] |
right square bracket (hex 5d) |
\r |
carriage return (hex 0d) |
\x |
UTF-8 hexadecimal number; e.g., \x001b for escape |
\t |
horizontal tab (hex 09) |
\0 |
octal constant; e.g., \024 for Ctrl-T |
Special characters may be used in combination with the keyString
option to create complex sequences:
[F20;;keyString=\033\[34~]
keyChar Values
The following values may be assigned to keys, using the keyChar
option. Values not listed have been reserved, and are not available.
Value |
Keyboard Key |
Value |
Keyboard Key |
0-255 |
Equivalent ASCII character1 |
307 |
Ctrl-Page Down |
256-275 |
Function keys F1-F20 |
308 |
Ctrl-⌫ |
276 |
Up ↑ |
309 |
Ctrl-Enter |
277 |
Down ↓ |
310 |
Ctrl-Esc |
278 |
Right → |
311 |
Ctrl-Keypad - |
279 |
Left ← |
312 |
Ctrl-Keypad + |
280 |
Home |
313 |
Ctrl-Keypad * |
281-290 |
Numeric Keypad 0-9 |
314 |
Keypad * |
291 |
Keypad - |
315 |
Keypad + |
292 |
Keypad , |
316 |
Keypad / |
293 |
Keypad . |
317 |
Num Lock |
294 |
Keypad Enter |
318 |
Scroll Lock |
295 |
Page Down |
319 |
⌫ |
296 |
Page Up |
320 |
Ctrl-↑ |
297 |
Ctrl-Home |
321 |
Ctrl-↓ |
298 |
End |
322 |
Ctrl-Insert |
299 |
Ctrl-End |
323 |
Ctrl-Delete |
300 |
Insert |
326 |
Ctrl-Tab |
301 |
Delete |
327 |
Ctrl-Keypad / |
302 |
Ctrl-→ |
328 |
Ctrl-Keypad Enter |
303 |
Ctrl-← |
329-348 |
Shift-F1 to Shift-F20 |
304 |
Print Screen |
349-368 |
Ctrl-F1 to Ctrl-F202 |
305 |
Shift-Tab |
369-388 |
Alt-F1 to Alt-F20 |
306 |
Ctrl-Page Up |
389-408 |
Ctrl-Shift-F1 to Ctrl-Shift-F20 |
1ASCII values are interpreted through the
currently selected code page.
2Ctrl-F5 (key value 353) is also used for the VT220/VT320
Help key. Ctrl-F6 (key value 354) is also used for the VT220/VT320 Do key.