模块:WPSHIPS utilities/doc
这是Module:WPSHIPS utilities的文档页面
format_ship_name
[编辑]This function attempts to apply appropriate formatting to unformatted ship names. The formats supported are:
- <prefix> <name> <(disambiguator)> where:
- <prefix> – one from a list of defined prefixes commonly used for ships (ARA, HMS, USS, etc.); rendered in upright font
- <name> – the ship's proper name; rendered in italic font
- <(disambiguator)> (optional) – typically the ship's hull or pennant number, or other disambiguator; always contained in parentheses; rendered in upright font
- <name> <(disambiguator)> where:
- <name> – the ship's proper name; rendered in italic font
- <(disambiguator)> (required) – the ship's hull or pennant number or a recognized ship-type descriptor; always contained in parentheses; rendered in upright font
- hull and pennant numbers take two basic forms
- uppercase letters, possibly followed by a space or hyphen, followed by digits (SSBN-659, R07, ON 688)
- digits, possibly followed by a space or hyphen, followed by uppercase letters (401B)
- hull and pennant numbers take two basic forms
- <nationality> <ship type> <name> <(disambiguator)> where:
- <nationality> – one- or two- word nation name in adjectival form (Dutch, East Timorese, French, Ottoman, etc.); rendered in upright font
- <ship type> – one from a list of one- to four-word phrases that describes a ship's type (aviso, brig sloop, landing ship medium, ship of the line); rendered in upright font
- <name> – the ship's proper name; rendered in italic font
- <(disambiguator)> (optional) – typically the ship's hull or pennant number, or other disambiguator; always contained in parentheses; rendered in upright font
The function will also attempt to render ship-class names when the name is in the form:
- <name>-class <ship type> where:
- <name> – the class' proper name; rendered in italic font according to the setting of
|sclass= - <ship type> – a phrase that describes a ship's type; rendered in upright font
- <name> – the class' proper name; rendered in italic font according to the setting of
Lists
[编辑]The function relies on three lists to accomplish its task. These lists are:
ship_prefix_list– a list of commonly used ship prefixes initially taken from{{ship prefix}}; these are usually, but not always wholly uppercasenationality_list– a list of nation names in their adjectival form; these are always capitalized; always one or two wordsship_type_list– a list ship-type descriptor phrases; these are usually, but not always wholly lowercase; always one to two words
To add to any of these lists, the form is:
['addition'] = true,
the trailing comma is important. See the instructions that accompany each list for limitations and implementation details.
Usage
[编辑]The minimal form is:
{{#invoke:WPSHIPS_utilities|ship_name_format|name=}}
Parameters
[编辑]The function requires one parameter and supports several optional parameters.
- |name= – (required) the name to format
- |dab=none – for use with
|infobox caption=nodabin{{infobox ship begin}}, excludes a disambiguator from the formatted name - |sclass=2 – for use with
{{DISPLAYTITLE}}and with|infobox caption=yesor|infobox caption=nodabin{{infobox ship begin}}, when the class is not named for a member of the class; causes the class name to be rendered in upright font - |adj=off – for use in ship-class articles with
|infobox caption=yesor|infobox caption=nodabin{{infobox ship begin}}, formats the class name in its noun form and excludes the ship type phrase and disambiguator - |showerrs=yes – debug tool; not currently supported in any templates;
wpsu.navsource()
[编辑]This function is the driver for {{navsource}}. The function assembles an external wikilink from known fragments and positional parameter {{{1}}}. A ship name provided in positional parameter {{{2}}} is formatted using format_ship_name(). New with this implementation of {{navsource}} is the addition of |showerrs=. The {{#invoke:}} in the template defaults to |showerrs=yes which can be overridden by setting |showerrs=no in the template.
wpsu.hnsa()
[编辑]Similar to {{navsource}}, this code supports {{hnsa}} by attempting to construct a link to a ship article at the Historic Naval Ships Association website.
The template has the form:
{{hnsa|<page>|<name>}}
where:
- <page> is the name of the page from the url
http://hnsa.org/hnsa-ships/<page> - <name> (optional) is the name of the ship; if left blank, the template uses the current page title; if a ship name, it is formatted using
do_ship_name_format()
from which this code produces:
[http://hnsa.org/hnsa-ships/<page> <name>] at Historic Naval Ships Association