# Trainz/kbL

{{{1}}}

Purpose and usage

This is the same template internal code as Template:Key_press and template:Kb, but differing from the latter, since it is both wrapped in a BLACK(or using parameter |CO=color), an alternative colorizing HTML wrapper as {{Kb}} supports, but also the wrapper increasing the font size '...' in wiki-markup. The key displayed is expressed in the user's (browser's) default monospace font within the wrappers (or Software container).

• The related templates template:Kb and template:KbL use instead a blue motif which is used on the Trainz Wikibook extensively to emphasize the difference between Tools selection command and Hotkeys of other kinds, but with the same distinction between HTML wrappers.

Purpose and usage

This 'Keypress Blue' variant ({{kbL}} and/or {{kb}}) is the same template internal code as Template:Key_press and {{kp}} and {{kpL}}—the respective black text variants generating the same presentation, but in bold black text.

nuts 'N' Bolts

Each variant wraps the entered keys to present a different way inside an alternative colorizing HTML wrapper, and expresses the browser (user's) default monospace font within the wrapper.:

• Each allows colorized keys (using parameter |CO=color) [which defaults as BLUE], for Kb & KbL
• and as BLACK in Kp & Kpl... and the less user friendly parent template: {{keypress}}
• All present the keys list in BOLD text, unlike parent template: {{keypress}}, giving impact to key commands in exposition.
• All four, excepting {{keypress}}, will take any legal web-color as the parameter '|CO=' s.a. |CO=#F867BC or |CO=lightgreen... in which case their is no difference between kp vs. kb or between kpL or kbL text & graphics generation:
{{kb|SHFT|ALT|TAB|CO=#F867BC}} versus larger {{kpL|SHFT|ALT|TAB|CO=darkgreen}}

{{kb|SHFT|ALT|TAB|CO=#F867BC}} versus larger {{kpL|SHFT|ALT|TAB|CO=darkgreen}}

• These behaviors are duplicated in the templates {{kpL}} and {{kbL}} with one difference. These later two templates nest the key sequence in '<Big>...</Big> tags' as presentation of command sequences in text, 'buried the keystrokes' in relative 'noise' of the surrounding text.
• The parameter |p= if defined (i.e. {{{p}}})will express as a suffix, without padding. This is intend to encapsulate Hotkey definitions with an explanation following in the same font uses such as >{{Kb|CTRL|V|p= (Paste)}} Compared to {{Kp|CTRL|V|p= (Paste)}}
... then press CTRL+V(Paste) to put the value in the spreadsheet cell...
... then press CTRL+V(Paste) to put the value in the spreadsheet cell...

The author is dubious the forms would have a use with the 'L' suffixed 'Larger Key' variants, but for the sake of completness...

... then press CTRL+V(Paste) to put the value in the spreadsheet cell...
... then press CTRL+V(Paste) to put the value in the spreadsheet cell...

Note that the '|p' parameter is displayed in the normal web font in both L variants, not monospace as inside the Keys depicted, AND, in these two the font for '|p' is not enlarged...

• If you want all monospace and a large key and message, wrap Kp or Kb in BIG tags to get that effect.

The usage is linked next below and is common to all these template calls:

This is the {{key press}} template, which can be used to illustrate keystrokes. Typographically it works best with examples that are separated from the normal flow of text, e.g. in table cells. It can also be used in lists (as in this page), but it may be a good idea to add an empty line between each list item, so the key borders won't overlap each other.

Example:

{{key press|A}} produces A

### Keystroke combinations

To illustrate keystroke combinations, just use extra parameters:

{{key press|Alt|P}} produces Alt+P
{{key press|Ctrl|Alt|Del}} produces Ctrl+Alt+Del

This template currently handles up to 5 key name parameters.

When you feed several key names to this template, it adds a "+" with no spaces around. This means it won't line wrap. But when you show key combinations for instance in a table then that might cause too wide items. Then instead manually build the key combination with spaces around the "+" so it can line wrap. Like this:

{{key press|Ctrl}} + {{key press|Alt}} + {{key press|Del}} produces Ctrl + Alt + Del

On the other hand, to illustrate Windows Alt codes you might want to use separate templates with no intervening punctuation or space. In most Windows systems in North America and Western Europe, for example, the plus-minus sign (±) can be entered by holding down the Alt key while typing 0177 (with the numeric keypad). This could be illustrated like this:

{{key press|Alt|0}}{{key press|1}}{{key press|7}}{{key press|7}} produces Alt+0177

### Wiki characters

Some wiki markup character, like the Pipe symbol, the Semicolon and the Equals sign, need to be entered using the {{!}}, {{;}} and {{=}} templates:

{{key press|{{!}}}} produces |
{{key press|{{;}}}} produces ;
{{key press|{{=}}}} produces =

### Key symbols

Some key names have a fitting unicode character. This template automatically adds such "icons" to the following key names:

{{key press|Shift}} produces ⇧ Shift
{{key press|Enter}} produces ↵ Enter
{{key press|Tab}} produces Tab ↹
{{key press|Backspace}} produces ← Backspace
{{key press|Cmd}} produces ⌘ Cmd
{{key press|Opt}} produces ⌥ Opt
{{key press|Up}} produces
{{key press|Down}} produces
{{key press|Left}} produces
{{key press|Right}} produces

There are no characters for the Windows key and Menu key. Besides, the Windows logo is trademarked. So this template shows approximate characters for them in the following way:

{{key press|Win}} produces ⊞ Win
{{key press|Menu}} produces ≣ Menu

### Technical details

This template calls {{key press/core}}, which holds the code that otherwise would be repeated several times in {{key press}}, thus simplifying the code.

• kb defaults to font color as blue; but both allow a font color override parameter  '...|key(s)...|CO=hex-color-code' or '...|CO=######|key(s)'.
• kbL defaults to font color as blue; but both allow a font color override parameter  '...|key(s)...|CO=hex-color-code' or '...|CO=######|key(s)'.