Mô đun:WPSHIPS utilities/tài liệu

== ship_name_format**
This function attempts to apply appropriate formatting to unformatted ship names.  The formats supported are:
#   where:
#* – one from a list of defined prefixes commonly used for ships (ARA, HMS, USS, etc.); rendered in upright font
#* – the ship's proper name; rendered in italic font
#* (optional) – typically the ship's hull or pennant number, or other disambiguator; always contained in parentheses; rendered in upright font
#  where:
#* – the ship's proper name; rendered in italic font
#* (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)
#    where:
#* – one- or two- word nation name in adjectival form (Dutch, East Timorese, French, Ottoman, etc.); rendered in upright font
#* – 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
#* – the ship's proper name; rendered in italic font
#* (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:
*-class  where:
** – the class' proper name; rendered in italic font according to the setting of sclass
** – a phrase that describes a ship's type; rendered in upright font

**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 uppercase
#nationality_list – a list of nation names in their adjectival form; these are always capitalized; always one or two words
#ship_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
the trailing comma is important. See the instructions that accompany each list for limitations and implementation details.

**Usage**
The minimal form is:


**Parameters**
The function requires one parameter and supports several optional parameters.
|name= – (required) the name to format
|dab=none – for use with nodab in infobox ship begin, excludes a disambiguator from the formatted name
|sclass=2 – for use with - Other templates and modules should not transclude this template, instead they should call the module directly.- Wikipedia pages should not transclude this template many times, as it may cause the page to exceed Wikipedia's template limits.  Those pages should invoke the module directly.

**wpsu.navsource()**
This function is the driver for navsource.  The function assembles an external wikilink from known fragments and positional parameter .  A ship name provided in positional parameter  is formatted using ship_name_format().  New with this implementation of navsource is the addition of showerrs.  The  in the template defaults to yes which can be overridden by setting 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:

where:
 is the name of the page from the url 
 (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: