Module:WPSHIPS utilities/doc explained

ship_name_format

This function attempts to apply appropriate formatting to unformatted ship names. The formats supported are:

  1. <(prefix)> <(disambiguator)> where:
    • <(prefix)> (optional) – 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
    • <(disambiguator)> (optional) – typically the ship's hull or pennant number, or other disambiguator; always contained in parentheses; rendered in upright font
  2. <(disambiguator)> where:
    • – 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)
  3. <(disambiguator)> 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
    • <(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:

Lists

The function relies on three lists to accomplish its task. These lists are:

  1. ship_prefix_list – a list of commonly used ship prefixes initially taken from ; these are usually, but not always wholly uppercase
  2. nationality_list – a list of nation names in their adjectival form; these are always capitalized; always one or two words
  3. 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:

<nowiki>['</nowiki>''addition''<nowiki>'] = true,</nowiki>the trailing comma is important. See the instructions that accompany each list for limitations and implementation details.

Usage

The minimal form is:

<nowiki>{{#invoke:WPSHIPS_utilities|ship_name_format|name=}}</nowiki>

Parameters

The function requires one parameter and supports several optional parameters.

|name= – (required) the name to format

|dab=none – for use with in, excludes a disambiguator from the formatted name

|sclass=2 – for use with <nowiki>{{</nowiki>DISPLAYTITLE}} and with or in, 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 or in, 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;

Wrapper template

wpsu.navsource

This function is the driver for . The function assembles an external wikilink from known fragments and positional parameter <nowiki>{{{1}}}</nowiki>. A ship name provided in positional parameter <nowiki>{{{2}}}</nowiki> is formatted using ship_name_format. New with this implementation of is the addition of . The <nowiki>{{#invoke:}}</nowiki> in the template defaults to which can be overridden by setting in the template.

wpsu.hnsa

Similar to, this code supports by attempting to construct a link to a ship article at the Historic Naval Ships Association website.

The template has the form:

<nowiki>{{hnsa|<page>|<name>}}</nowiki>where:

is the name of the page from the url <nowiki>http://hnsa.org/hnsa-ships/<page></nowiki>

(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_formatfrom which this code produces:

<nowiki>[http://hnsa.org/hnsa-ships/<page> <name>] at Historic Naval Ships Association</nowiki>