Keyboard Mapping
TinyTERM for Mac allows you to remap the physical keyboard. It requires creating
and editing a text file named keyboard.dat
. (You can download a sample
copy by clicking the file name.) This is actually the same file used by
TinyTERM Plus for Windows, trimmed
to include only the [Default.keyboard]
section.
Keys are mapped in the file using this format:
<KEYNAME>=string
KEYNAME
The KEYNAME paced in the angle brackets may be any one of the following:
Key Name | Key Description | |
---|---|---|
^A – ^Z | Ctrl-A – Ctrl-Z | |
F1 – F12 | Function keys F1 – F12 | |
SF1 – SF12 | Shift–Function keys | |
CF1 – CF12 | Ctrl–Function keys | |
CSF1 – CSF12 | Ctrl–Shift–Function keys | |
KP0 – KP9, KP+, ... | Keypad number and symbol keys (NumLock must be on) | |
UP, DOWN, LEFT, RIGHT | Arrow keys | |
ESC, INS, DEL, HOME, END, PGUP, PGDN | Other named keys |
Note that the Alt key is primarily labeled as option on the standard Mac keyboard. The option key on the Mac keyboard replaces the Windows Ctrl key for keys other than A–Z when mapping the TinyTERM keyboard. So a mapping for <CF1> – Ctrl-F1 – would be used by typing option–F1. As such, Alt key mappings are not available.
Strings
The string
on the right of the equals sign can include any plain text.
It can also include the ESC key or any control character ^A – ^Z, if included in angle brackets.
For example, to map F12 to the sequence ESC X ^M, the mapping would look like this:
<F12>=<ESC>X<^M>
The keyboard.dat
File
A complete keyboard.dat file will start with the [Default.keyboard]
header mentioned above, then have several keyboard mappings. A customized file might
look like this:
[Default.keyboard]
<F12>=<ESC>X<^M>
<CF11>=username<^M>
<SF10>=0013<^I>AB<^M>
Once the keyboard.dat file is created, copy it into the
/Users/username/Library/Application Support/TinyTERM–ITX
folder, replacing
"username" with your username on the Mac.
Note that there is no user interface option for keyboard remapping yet. It must be done
through editing keyboard.dat
for now. A user interface will be added in
a future release, pending design details.