This Lua-based template replaces the older parser-function-based {{BS-map}} (and deprecated {{Railway line header}}, {{BS-header}} and {{BS-table}}) templates for Wikipedia:Route diagram templates because diagrams created by {{Routemap}} load faster.

Markup for map parameter

rætta

The markup for composing the diagram in {{{map}}} parameter is different than the legacy BS row templates. The major difference is the separators for separating icon IDs and text of each row. There is no need to call new BS row template for each new row because the hard return itself serves as a separator for calling another new table row in the diagram. You can use other supplementary templates like {{rmr}} in the text cell as usual, but be aware that special treatment is required for templates like {{BSsplit}} and {{BSto}} because they are essentially calling another new table for formatting.

icon id\icon id\icon id~~dist./time~~main text~~remark~~right remark

or

icon id\icon id\icon id~~main text
{{Routemap
|title=Example 1
|map=
KBHFa~~terminus
WASSERq\hKRZW\WASSERq~~ ~~ ~~ ~~Bridge
LDER\INT\~~1 km~~station~~transfer for HSR
\KBHFe\BUS~~2 km~~terminus~~bus terminal
}}
Example 1
terminus
Bridge
1 km station transfer for HSR
2 km terminus bus terminal
  • The separator between icon IDs uses backslash (\) instead of slash (/ commonly used by XML closing tag).
  • After the last icon ID, if there is only one set of "tilde-tilde" (~~), the following text will be displayed in the main text cell instead of dist./time.
  • Separating text cells requires at least one empty space, otherwise it will be treated as a signature.

Icon overlay, icon link, background color and colspan

rætta
{{Routemap
|title=Example 2
|map=
-colspan-1
Icon overlay
uSTRq!~STR2!~BHF!~lHUB
-colspan-2-style=border-bottom:5px solid red;
----
icon link
utBHF!@Superhub
-colspan
----
background color
-colspan-end
utSTR~~ ~~ ~~ ~~ ~~bg=#7af
}}
Example 2

Icon overlay


icon link


background color

  • Overlay separator "exclamation mark-tilde" (!~) must follow the icon id which is to be overlaid.
  • Overlay is practically unlimited, but legibility should be taken into account.
  • When using icon overlay and icon link for the same icon cell, the icon link separator (!@) must follow the last (top) overlaying icon id.
  • The background color separator (~~bg=) requires 4 sets of preceding text separators to be recognizable even if there is no text on that row whatsoever.

Collapsible

rætta
{{Routemap
|title=Example 3.1: Basic collapsible
|text-width=80
|map=
-startCollapsible-collapsed
\KBHFa\~~terminus
hSTRa@g
WASSERq\hKRZW\WASSERq~~ ~~ ~~ ~~bridge
hSTRe@f
-endCollapsible-
LDER\INT\~~ ~~station~~transfer for HSR
\KBHFe\BUS~~ ~~terminus~~bus terminal
}}
Example 3.1: Basic collapsible
terminus
bridge
station transfer for HSR
terminus bus terminal
{{Routemap
|title=Example 3.2: Mixed odd and even rows
|tw=70
|map=
-startCollapsible-collapsed
d\KBHFa\d~~terminus
hKRZW~~ ~~ ~~ ~~bridge
-endCollapsible-
BS2+l\BS2+r~~junction
}}
Example 3.2: Mixed odd and even rows
terminus
bridge
junction
  • Adjust {{{text-width}}} (or tw) parameter until there is no break.
    • Unit "px" by default, but other units such as "em" are acceptable.
    • Check the map in different browser and increase text-width if it breaks.
  • The icon number of the first row of collapsible section must equal to or greater than the icon number of the widest non-collapsible row.
    • As in example 3.2, use half width empty icon   (d) as filler when you are mixing both odd and even rows in the same map.
  • Change "collapsed" to "nil" will change the default state of the collapible to uncollapsed.

Collapsible replacement

rætta
{{Routemap
|title=Example 4.1
|text-width=120
|map=
KBHFa~~terminus
-startCollapsible-collapsed-replace
\LSTR\~~dispensable section
\hSTRa@g\
WASSERq\hKRZW\WASSERq~~ ~~ ~~ ~~bridge
hSTRe@f
-endCollapsible-
LDER\INT\~~ ~~station~~transfer for HSR
\KBHFe\BUS~~ ~~terminus~~bus terminal
}}
Example 4.1
terminus
dispensable section
bridge
station transfer for HSR
terminus bus terminal
{{Routemap
|title=Example 4.2: Empty filler
|text-width=120
|map=
-startCollapsible-collapsed-replace
exCONTg~~under construction
leer
exKBHFa~~future terminus
exBHF~~future station
-endCollapsible
KBHFxa~~terminus
KBHFe~~terminus
}}
Example 4.2: Empty filler
under construction
future terminus
future station
terminus
terminus
  • The icon number of both replacement and replaced rows must equal to or greater than the icon number of the widest non-collapsible row.
  • If you want to hide the replaced row after expanding the collapsible, use icon   (leer) as empty filler as in example 4.2.

Dual text cell

rætta
left-left remark~~left remark~~left main text~~left dist./time! !icon id~~right dist./time~~right main text~~right remark~~right-right remark

or

left main text! !icon id~~right main text
{{Routemap
|title=Example 5
|map=
commuter terminus! !uKBHFa\\KBHFa~~regional terminus
River Boris~~ ~~ ~~! !uhKRZW\WASSERq\hKRZW~~ ~~ ~~ ~~bridge
transfer for HSR~~station~~1 km! !uINT\LDER\LSTR
commuter terminus~~2 km! !uKBHFe\\KBHFe~~2 km~~regional terminus
}}
Example 5
commuter terminus
regional terminus
River Boris
bridge
transfer for HSR station 1 km
commuter terminus 2 km
2 km regional terminus
  • Left text cells require "exclamation mark-space-exclamation mark" (! !) to separate from icon cells.
  • If there is no "tilde-tilde" (~~) separator to the left of "exclamation mark-space-exclamation mark", the text to the left of icon cells will be displayed in left main text cell.

Dual text cell collapsible

rætta
{{Routemap
|title=Example 6.1: All text cells applied
|style=width:540px
|text-width=65,150,30,30,120,
|map=
-startCollapsible
commuter terminus! !uKBHFa\leer\KBHFa~~regional terminus
River Boris~~ ~~ ~~! !uhKRZW\WASSERq\hKRZW~~ ~~ ~~ ~~bridge
-endCollapsible
transfer for HSR~~station~~1 km! !uINT\LDER\LSTR
commuter terminus~~2 km! !uKBHFe\\KBHFe~~2 km~~regional terminus
}}
Example 6.1: All text cells applied
commuter terminus
regional terminus
River Boris
bridge
transfer for HSR station 1 km
commuter terminus 2 km
2 km regional terminus
{{Routemap
|map-title=Example 6.2: Only main text cell applied
|style=width:380px
|text-width=,120,,,120,
|map=
-startCollapsible
commuter terminus! !uKBHFa\\KBHFa~~regional terminus
River Boris! !uhKRZW\WASSERq\hKRZW~~bridge
-endCollapsible
station! !uINT\LDER\LSTR
commuter terminus! !uKBHFe\\KBHFe~~regional terminus
}}
Example 6.2: Only main text cell applied
commuter terminus
regional terminus
River Boris
bridge
station
commuter terminus
regional terminus
  • Apply {{{text-width}}} to eliminate the break:
    • Only 1 value: right main text+right remark
    • 3 values, separated by commas: right dist./time,right main text+right remark,right-right remark
    • 6 values: Left-left remark,left remark+left main text,left dist./time,right dist./time,right main text+right remark,right-right remark
    • If the amount of values does not equal to 1, 3 or 6, the whole parameter will be ignored.
  • If the text width of right-right remark is shorter to some degree, its width definition can be omitted, as in example 6.1.
  • If the entire map never uses a specific text cell, that width definition can be omitted, as in example 6.2.
  • Define the general table width in {{{style}}} parameter as well if {{{text-width}}} alone is ineffective to prevent the break.
  • If the empty icon cell of the collapsible row is being squashed, use empty icon   (leer) to fixate the icon columns.

If you use these templates, the vertical line separator (|) right after the template name must be converted to {{!}} otherwise you will get a mess of unprocessed markups.

{{Routemap
|title=Example 7.1: Correct usage
|map=
BHF~~{{BSsplit{{!}}upper|lower}}
}}
}}
Example 7.1: Correct usage
upper
lower
{{Routemap
|title=Example 7.2: Wrong usage
|map=
BHF~~{{BSto|upper|lower}}
}}
}}
Example 7.2: Wrong usage
[[File:BSicon_{| cellspacing="0" cellpadding="0" style="font-size:80%; text-align:inherit; color:inherit; margin-top=-1px; margin-bottom:-1px; display:inline-table;vertical-align:bottom;".svg|x20px|link=|alt=]]
Mynd:BSicon
Mynd:BSicon
Mynd:BSicon
Mynd:BSicon

Embedding into infobox

rætta
  • Use {{{inline}}} to remove title bar and table border. If creating a separate template which will be embedded into an infobox, wrap inline=1 in <includeonly> tags.
{{Infobox station
| name = {{colorbox|orange}} Station layout
| image = Placeholder.png
| image_upright = 0.5
| image_caption = Platform level
| opened = {{Start date|1935|05|15|df=y}}
| tracks = 2
| route_map =
{{routemap|inline=1|navbar=asd|navbar pos=2|
KBHFa~~terminus
WASSERq\hKRZW\WASSERq~~ ~~ ~~ ~~Bridge
LDER\INT\~~1 km~~station~~transfer for HSR
\KBHFe\BUS~~2 km~~terminus~~bus terminal
}}
}}
     Station layout
Platform level
Spor 2
Søga
Læt upp 15 mai 1935 (1935-05-15)
Route map
terminus
Bridge
1 km station transfer for HSR
2 km terminus bus terminal

Template data

rætta

Template for displaying diagram composed of icon images and text labels in uniform style.

Template parameters

ParameterDescriptionTypeStatus
Inline stateinline

Remove title bar and border for transclusion in infobox

Default
Stringoptional
Table titletitle

Official title of the system. Value «no» will remove the table title row, but this will also disable the table collapsible switch as well

Default
Stringoptional
Title font colortitle color title-color

Title font color. Use high contrast color to the title background color

Default
#FFFFFF
Stringoptional
Title background colortitle bg color title-bg

Title background color. Use high contrast color to the title font color

Default
#27404E
Stringoptional
Collapsibilitycollapsible

Whether the whole infobox is collapsible or not

Stringoptional
Collapsing statecollapse collapsed

Collapsing state. Shown by default. Any value will make the table collapse by default

Stringoptional
Template name for Navbarnavbar tnavbar

Type the diagram template page name so the Navbar template will appear and link to the template page

Default
Stringoptional
Position of the Navbarnavbar pos

Position of the Navbar template. Float to left in the title bar by default; «1» for top-right corner of the map (just under the title bar); «2» for the middle bottom of the map

Default
Stringoptional
Legend appearancelegend

Alias of the legend link. It can be «bus», «canal», «footpath» or «track». «0» or «no» for no legend at all

Default
Template:Railway line legend
Page nameoptional
Legend link textlegend alt

Different link name in place of «Legend» if desirable

Default
Legend
Stringoptional
Floating statefloat

Floating state of the whole box: «right» by default; optionally «left» or «none»

Default
right
Stringoptional
Background colorbg

Background color of the whole map area

Default
#F9F9F9
Stringoptional
CSS style valuesstyle

Additional CSS style definition of the whole infobox

Stringoptional
Top notetop on top

Space for optional note or infobox above the map

Stringoptional
Bottom notefootnote bottom

Space for optional note or infobox below the map

Stringoptional
Width of map text celltext-width tw

Extend the width of the map text cell so the collapsible section within the map does not break

Default
Stringoptional
Map markupsmap 1

Map data which uses specific markup/separators to load icon image and arrange the text in the uniform style

Stringrequired