# Trainz/kbL
## 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).

## 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.:
{{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)}}

## Head to head examples

    ... 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...
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.

## See Also
### These all perform the same task more or less

* {{key}} for darker keys.
* {{key2}} for lighter keys.
* {{keypress}} (this) - is the base code of the following five variants:
** {{kp}} & {{kb}} - short-named utilities variant, featuring: • users standard font, • 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)'.
** {{kpL}} & {{kbL}} - short-named utilities variant, featuring: • users '+1-Sized font' (i.e. <Big>...<\big>), • 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)'.
** {{kpb}} - enlarged key with bolded font weight using the same core (next below)
* {{mb}} - larger lighter mouse button uses same core code