Free 14-Day Evaluations    
Product Downloads    

Sign in     


PRODUCTS DOWNLOAD PURCHASE SUPPORT PARTNERS COMPANY
 Home  >>  Documentation  >>  TinyTERM for Mac  >>  Button Bar Reference



“We didn't have any problems at all in everything we tried it on.”
— Roger Finks

Button Bar Reference

The itx.ttkeyboard file must be in UTF-8 format. All lines in the file must end in a line feed or a carriage return/line feed pair. All settings are case-sensitive.

Identifiers

These settings identify specific keyboard layouts and set off comments.

  Setting   Description
+ Name layout and begin section. Also ends previous layout if one is present. A period in the name identifies the layout as subordinate to another layout with the same name, but without the dot extension. It also prevents the layout name from being displayed in TinyTERM. For example, +IBM3151.shift is a subordinate layout of +IBM3151.
+Basic Function Keys
# Comment line. These can be inserted anywhere in the .ttkeyboard file.
# Accounting layout

General Settings

These settings can be placed anywhere in the .ttkeyboard file, preceded with a dash. They will affect all lines below them, until a new instance of the setting is found.

  Setting   Description
fontSize Maximum font size in points of main key labels. The label size will be reduced automatically to fit the key if needed.
-fontSize 30
keyboardHeight Height of button bar in pixels.
-keyboardHeight 50
keyHeight Changes the default height of the keys, relative to a base value of 1. keyHeight can be specified to the second decimal place, as in the example below. It cannot be set to a specific number of pixels. Default key height in pixels is calculated instead, based on the number of key rows, the spacing and margin settings, iPad orientation, and individual keys not using the default keyHeight value.
-keyHeight 1.44
labelPosition Sets vertical position and horizontal justification of the main key label. See image at right for the available values. Note that 0, 3 and 6 left-justify the text; 2, 5 and 8 right-justify it; and 1, 4 and 7 center the label. Defaults to 4.
-labelPosition 5
lineJustification Sets the justification for rows of keys:
0 center (default)
1 left justify
2 right justify
-lineJustify 1
margin Minimum number of free pixels on each edge – top, bottom, left and right – of the keyboard.
-margin 3
shiftFontSize Maximum font size in points of shiftLabel text. As with fontSize, shift labels will be reduced to fit if needed.
-shiftFontSize 16
shiftLabelPosition Starting position of the shiftLabel text. Uses the same values as labelPosition. Defaults to 0.
-shiftLabelPosition 1
size Changes the default width of keys, relative to a base value of 1. size can be specified to the second decimal place. It cannot be set to a specific number of pixels. Default key size in pixels is calculated instead, based on the number of keys in the widest row, the spacing and margin settings, iPad orientation, and any individual keys not using the default size value.
-size 1.5
spacing Minimum number of pixels between keys
-spacing 2

Key Options

When a key is defined within square brackets [ ], options may be added to the definition, set off by two semicolons. Many of the general settings can also be applied to individual keys, and so are repeated below with key-specific examples. Options are all case-sensitive.

When a semicolon is desired as a displayed character inside the brackets, such as for a label or shiftLabel, separate it from the double semicolons by a space:

[; ;;shiftLabel=:]
  Option   Description
\ Escape character. Used for special characters that have other uses without the \. Square brackets are not required for this option.
\\
\n Line break. Used for key labels and the shiftLabel option to break a string into multiple lines.
[Send\nLine;;keyString=\e!8\r]
blank When set to 1, prevents the key from being drawn. Used for creating space between visible keys in addition to that specified by the spacing attribute. Blank keys are treated as any others by general attributes.
[BLANK;;blank=1]
capsKey When set to 1, causes the key to act as a Caps Lock key, regardless of other settings.
[Caps;;capsKey=1]
fontSize Sets the font size for the primary label of the key.
[Clear;;keyChar=1148;;fontSize=15]
keyChar Assigns a specific value to a key. Available values are listed below.
[Enter;;keyChar=13]
keyHeight Changes the height of the individual key, relative to a base value of 1. keyHeight can be specified to the second decimal place. Keys taller than the default for the row expand into the next row down. When making single a key taller than 1, free the space in the row below by creating a key there with the blank option.
[New Line;;keyHeight=2;;keyChar=1153]
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.
[Login;;keyString=username]
labelPosition Sets vertical position and horizontal justification of the primary key label.
[,;;labelPosition=7]
shiftFontSize Sets the font size for the shiftLabel of this key.
[2;;shiftLabel=@;;shiftFontSize=12]
shiftId Changes the identity of a shift key. By default, the ID for a given shiftTo or shiftLock key is the layout it refers to. This option overrides that behavior, giving the key a unique ID.
[SLock;;shiftId=shiftLock;;shiftLock=3270 Landscape.shift]
shiftLabelPosition Sets vertical position and horizontal justification of the shiftLabel.
[3;;shiftLabel=#;;shiftLabelPosition=2]
shiftLabel Displays the character as secondary on the keyboard key. Most often used to show what character will be typed when a shiftLock is clicked.
[3;;shiftLabel=#]
shiftLock Selects a keyboard layout to display. The selected layout will replace the current layout. Note that all shiftLock and shiftTo keys that refer to the current layout will darken when any one is selected, unless they use separate shiftId values.
[Fn;;shiftLock=3270 Portrait.function]
size Changes the width of the individual key, relative to a base value of 1. size can be specified to the second decimal place.
[Q;;size=1.45]

Special Characters

The following characters are created with the escape character \.

  Character   Value   Character   Value
\b backspace (hex 08) \\ backslash (hex 5c)
\[ left square bracket (hex 5b) \] right square bracket (hex 5d)
\r carriage return (hex 0d) \x UTF-8 hexadecimal number; e.g., \x000d for carriage return
\t horizontal tab (hex 09) \0 octal constant; e.g., \011 for horizontal tab

Special characters may be used in combination with the keyString option to create complex sequences:

[PartNum;;keyString=015-249\tsku015249\x000d]

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.

Putting It All Together

As seen above, there are a variety of options for defining keyboard keys in TinyTERM. Combined, they can create just about any key design needed. Here are two examples from the included button bar layouts. They use these default values:

-spacing 3
-margin 5
-labelPosition 4
-keyboardHeight 50
-fontSize 30


[F10;;keyChar=265]

The first argument (here F10) is always the key label. keyChar causes the key to send the F10 function key to the host. The specific value of the key changes with the terminal emulation, so this key will work for any emulation.


[Send\nLine;;keyString=\e!8\r;;fontSize=25]

This key shows a more complex labeling scheme. The string Send\nLine includes the line break \n, so the label displays across two lines. Given the default -labelPosition 4 argument, the two-line string ends up centered on the key.

The keyString value sends an ASCII sequence built with non-printable characters. It breaks down as: escape ! 8 CR

Finally, the individual fontSize argument makes the text slightly smaller than default. This allows the entire label to fit on the key.

  Copyright © 2017 Century Software, Inc. All Rights Reserved (1.0.1)999 TERMS OF USE PRIVACY POLICY EULA