Module:WPSHIPS utilities/data

From Ethan's Workspace
Jump to navigation Jump to search

Documentation for this module may be created at Module:WPSHIPS utilities/data/doc

--[[-------------------------< S H I P  P R E F I X   L I S T >-----------------------------------------------

This is a list of currently supported ship prefixes.

To add to this list the form is:
	['prefix'] = true,
the trailing comma is important.

]]

local ship_prefix_t =
	{
	['ARA'] = true,																-- Armada de la República Argentina
	['ARC'] = true,																-- Armada Nacional de la República de Colombia
	['ARM'] = true,																-- Armada de la República Mexicana
	['ARV'] = true,																-- Armada Republica de Venezuela
	['BAE'] = true,																-- Buque de la Armada de Ecuador
	['BAP'] = true,																-- Peruvian Navy Ship
	['BNS'] = true,																-- Bangladesh Navy Ship
	['BRP'] = true,																-- Barko ng Republika ng Pilipinas
	['CCGS'] = true,															-- Canadian Coast Guard Ship
	['CFAV'] = true,															-- Canadian Forces Auxiliary Vessel
	['CS'] = true,																-- Cable Ship
	['CSS'] = true,																-- Confederate States Ship
	['FGS'] = true,																-- Federal German Ship
	['GTS'] = true,																-- Gas Turbine Ship
	['HDMS'] = true,															-- His/Her Danish Majesty's Ship
	['HM'] = true,																-- His/Her Majesty's, then used with the type of ship in military use (UK)
	['HMAS'] = true,															-- Her/His Majesty's Australian Ship
	['HMBS'] = true,															-- Her/His Majesty's Britannic Ship (also: Bahamian, Bermudian, Burmese)
	['HMC'] = true,																-- Her/His Majesty's Cutter
	['HMCS'] = true,															-- Her/His Majesty's Canadian Ship (also Colonial)
	['HMHS'] = true,															-- His/Her Majesty's Hospital Ship
	['HMIS'] = true,															-- Her/His Majesty's Indian Ship (pre republic)
	['HMNZS'] = true,															-- Her/His Majesty's New Zealand Ship
	['HMPNGS'] = true,															-- His/Her Majesty's Papua New Guinea Ship
	['HMQS'] = true,															-- Her/His Majesty's Queensland Ship
	['HMRC'] = true,															-- His/Her Majesty's Revenue Cutter
	['HMS'] = true,																-- Her/His Majesty's Ship
	['HMSAS'] = true,															-- Her/His Majesty's South African Ship
	['HMT'] = true,																-- Her/His Majesty's Trawler
	['HMVS'] = true,															-- Her/His Majesty's Victorian Ship
	['HMY'] = true,																-- His/Her Majesty's Yacht
	['HNLMS'] = true,															-- His/Her Netherlands Majesty’s Ship
	['HNoMS'] = true,															-- His/Her Norwegian Majesty's Ship
	['HSC'] = true,																-- High-Speed Craft
	['HSwMS'] = true,															-- His/Her Swedish Majesty's Ship
	['HTMS'] = true,															-- His Thai Majesty's Ship
	['ICGS'] = true,															-- Indian Coast Guard Ship
	['IIS'] = true,																-- Imperial Iranian Ship
	['INS'] = true,																-- Indian Naval Ship, Israeli Naval Ship
	['IRIS'] = true,															-- Islamic Republic of Iran Ship
	['JDS'] = true,																-- Japanese Defence Ship
	['JS'] = true,																-- Japanese Ship (post 2008)
	['KA'] = true,																-- Kapal Auksiliari – Auxiliary Ship (Malaysia)
	['KD'] = true,																-- Kapal Di-Raja — His Majesty's Ship (Malaysia)
	['KM'] = true,																-- Kapal Motor (Motor Ship) (Indonesia)
	['KDB'] = true,																-- Kapal Diraja Brunei (Royal Brunei Ship) (in Malay)
	['KDM'] = true,																-- Kongelige Danske Marine
	['KLD'] =true,																-- Kapal Layar Diraja – His Majesty's Sailing Ship (Malaysia)
	['KRI'] = true,																-- Kapal Republik Indonesia
	['LÉ'] = true,																-- Long Éireannach – Irish ship
	['MF'] = true,																-- Motor Ferry
	['LKL'] = true,																-- Lietuvos Karinis Laivas – Lithuania
	['MS'] = true,																-- Motor Ship
	['MT'] = true,																-- Motor Tanker
	['MV'] = true,																-- Motor Vessel
	['NLV'] = true,																-- Northern Lighthouse Vessel
	['NMS'] = true,																-- Nava Majestăţii Sale (His/Her Majesty's Ship) - used before 1945 by the Royal Romanian Navy
	['NoCGV'] = true,															-- Norwegian Coast Guard Vessel
	['NOAAS'] = true,															-- National Oceanic and Atmospheric Administration Ship
	['NRP'] = true,																-- Navio da República Portuguesa
	['ORP'] = true,																-- Okręt Rzeczypospolitej Polskiej
	['PNS'] = true,																-- Pakistani Naval Ship
	['PS'] = true,																-- Paddle Steamer
	['RFA'] = true,																-- Royal Fleet Auxiliary
	['RMAS'] = true,															-- Royal Maritime Auxiliary Service
	['RMS'] = true,																-- Royal Mail Ship
	['RNLB'] = true,															-- Royal National Lifeboat
	['ROCS'] = true,															-- Republic of China Ship
	['ROKS'] = true,															-- Republic of Korea Ship
	['RPS'] = true,																-- Republic of the Philippines Ship
	['RRS'] = true,																-- Royal Research Ship
	['RS'] = true,																-- Rocket Ship
	['RSS'] = true,																-- Republic of Singapore Ship
	['RV'] = true,																-- Research Vessel
	['SAS'] = true,																-- South African Ship
	['SLNS'] = true,															-- Sri Lanka Naval Ship
	['SM'] = true,																-- Seiner Majestät Unterseeboot
	['SMS'] = true,																-- Seiner Majestät Schiff
	['SS'] = true,																-- Screw Steamer or Steamship
	['STV'] = true,																-- Sail training vessel
	['TCG'] = true,																-- Türkiye Cumhuriyeti Gemisi
	['TS'] = true,																-- Training ship
	['TV'] = true,																-- Training vessel
	['UAM'] = true,																-- Unidade Auxiliar da Marinha - Navy Auxiliary Unit (Portuguese Navy non-military ships)
	['USAFS'] = true,															-- United States Air Force ship
	['USAHS'] = true,															-- United States Army Hospital Ship
	['USAS'] = true,															-- United States Army Ship
	['USAT'] = true,															-- United States Army Transport
	['USAV'] = true,															-- United States Army Vessel
	['USC&GS'] = true,															-- United States Coast and Geodetic Survey
	['USC&amp;GS'] = true,														-- United States Coast and Geodetic Survey (crude work-around)
	['USC&#38;GS'] = true,														-- United States Coast and Geodetic Survey (crude work-around)
	['USC&GSS'] = true,															-- United States Coast and Geodetic Survey Ship
	['USC&amp;GSS'] = true,														-- United States Coast and Geodetic Survey Ship (crude work-around)
	['USC&#38;GSS'] = true,														-- United States Coast and Geodetic Survey Ship (crude work-around)
	['USCGC'] = true,															-- United States Coast Guard Cutter
	['USLHT'] = true,															-- United State Light House Tender
	['USNS'] = true,															-- United States Naval Ship
	['USRC'] = true,															-- United States Revenue Cutter
	['USS'] = true,																-- United States Ship
	}


--[[--------------------------< N A T I O N A L I T Y >--------------------------------------------------------

Article titles for ships in navies that do not use a standardized prefix follow the title format:
	<nationality> <ship type> <name> <(disambiguator)>

This is a list of nationalities. 

To add to this list the form is:
	['Nationality'] = true,
the trailing comma is important. Use the adjective form for nationality, always capitalize.  Please insert nationalities in alphabetical order.

]]

local nationality_t =
	{
	['Albanian'] = true,
	['American'] = true,
	['Australian'] = true,
	['Belgian'] = true,
	['Brazilian'] = true,
	['Bulgarian'] = true,
	['Chilean'] = true,	
	['Chinese'] = true,
	['Croatian'] = true,
	['Danish'] = true,
	['Dominican'] = true,
	['Dutch'] = true,
	['East Timorese'] = true,
	['Egyptian'] = true,
	['English'] = true,
	['Finnish'] = true,
	['French'] = true,
	['German'] = true,
	['Greek'] = true,
	['Grenadan'] = true,
	['Haitian'] = true,
	['Iranian'] = true,
	['Irish'] = true,
	['Italian'] = true,
	['Japanese'] = true,
	['Latvian'] = true,
	['Libyan'] = true,
	['Lithuanian'] = true,
	['Maltese'] = true,
	['Mexican'] = true,
	['Nigerian'] = true,
	['Ottoman'] = true,
	['Peruvian'] = true,
	['Portuguese'] = true,
	['Romanian'] = true,
	['Russian'] = true,
	['Scottish'] = true,
	['Slovenian'] = true,
	['Soviet'] = true,
	['Spanish'] = true,
	['Swedish'] = true,
	['Texan'] = true,
	['Ukrainian'] = true,
	['United States'] = true,
	['Vietnamese'] = true,
	['Yugoslav'] = true,
	}


--[[--------------------------< S H I P   T Y P E >------------------------------------------------------------

Article titles for ships in navies that do not use a standardized prefix follow the title format:
	<nationality> <ship type> <name> <(disambiguator)>

Article titles for ships may or may not be naval ships may follow the title format:
	<name> <(disambiguator)>
where <(disambiguator)> may be some form of ship type, hull designator or pennant number, or year.  This tool will
format ship names that contain a recognized ship type in <(disambiguator)>.

This list is used to <find ship> when the article title begins with a nationality.  This is important because the tool
needs to know where the <ship type> ends and <name> begins so that it can properly place the italic markup.  The search
will find an exact match (including case) for ship types that are 1 to 4 words long.

This list is also used to find ship type in <(disambiguator)>.  The search is whole word; use the simplest form.
For example, because 'icebreaker' is defined, that ship type is sufficient to cause the tool to properly format:
	Astrolabe (icebreaker)
	Krassin (1917 icebreaker)
	Taymyr (nuclear icebreaker)

Searches for ship type in <(disambiguator)> are whole word.  When looking for 'ship', the tool will find
	Auguste (ship)
	Queen of Nations (clipper ship)
but will not find:
	Sibir (steamship icebreaker) – the search for 'icebreaker' will

This is a list of ship types.  When adding new ship types, do not be too specific: 'aircraft carrier' but not 'light aircraft carrier'

To add to this list the form is:
	['ship type'] = true,
the trailing comma is important. At the time of this writing, a ship type may be one to four words, almost always lowercase.
Please insert ship types in alphabetical order.

]]

local ship_type_t =
	{
	['armoured cruiser'] = true,
	['aircraft carrier'] = true,
	['amphibious assault ship'] = true,
	['Army ship'] = true,														-- should be capitalized
	['auxiliary cruiser'] = true,
	['auxiliary raider'] = true,
	['auxiliary'] = true,
	['aviso'] = true,
	['barge'] = true,
	['barque'] = true,
	['barquentine'] = true,
	['battlecruiser'] = true,
	['battleship'] = true,
	['boat'] = true,
	['brig sloop'] = true,
	['brig-sloop'] = true,
	['brig'] = true,
	['brigantine'] = true,
	['carrack'] = true,
	['clipper'] = true,
	['coast defense ship'] = true,
	['coastal defence ship'] = true,
	['coastal defense ship'] = true,
	['communications ship'] = true,
	['corvette'] = true,
	['cruiser'] = true,
	['cutter'] = true,
	['deep submergence rescue vehicle'] = true,
	['destroyer leader'] = true,
	['destroyer'] = true,
	['dragger'] = true,
	['dredge'] = true,
	['East Indiaman'] = true,													-- should be capitalized
	['escort ship'] = true,
	['escort'] = true,
	['ferry'] = true,
	['ferryboat'] = true,
	['fireboat'] = true,
	['fleet oiler'] = true,
	['floating battery'] = true,
	['floating crane'] = true,
	['fluyt'] = true,
	['food supply ship'] = true,
	['freighter'] = true,
	['frigate'] = true,
	['galleon'] = true,
	['galley'] = true,
	['gunboat'] = true,
	['helicopter carrier'] = true,
	['hospital ship'] = true,
	['hovercraft'] = true,
	['hydrofoil'] = true,
	['icebreaker'] = true,
	['Indiaman'] = true,														-- should be capitalized
	['ironclad'] = true,
	['ketch'] = true,
	['landing ship'] = true,
	['landing ship medium'] = true,
	['lifeboat'] = true,
	['lightship'] = true,
	['log canoe'] = true,
	['lugger'] = true,
	['merchant cruiser'] = true,
	['minehunter'] = true,
	['minelayer'] = true,
	['minelaying cruiser'] = true,
	['minesweeper'] = true,
	['missile boat'] = true,
	['monitor'] = true,
	['munition ship'] = true,
	['naval ship'] = true,
	['night fighter direction vessel'] = true,
	['ocean liner'] = true,
	['oiler'] = true,
	['paddle steamer'] = true,
	['patrol boat'] = true,
	['patrol gunboat'] = true,
	['patrol vessel'] = true,
	['pinnace'] = true,
	['pollution control vessel'] = true,
	['privateer'] = true,
	['protected cruiser'] = true,
	['pusher'] = true,
	['rescue ship'] = true,
	['riverboat'] = true,
	['ROV'] = true,
	['sailboat'] = true,
	['schooner'] = true,
	['seaplane carrier'] = true,
	['seaplane tender'] = true,
	['ship of the line'] = true,
	['ship'] = true,
	['shipwreck'] = true,
	['shore establishment'] = true,												-- use stone frigate instead?
	['showboat'] = true,
	['sidewheeler'] = true,
	['skipjack'] = true,
	['sloop-of-war'] = true,
	['sloop'] = true,
	['smack'] = true,
	['snagboat'] = true,
	['speedboat'] = true,
	['steam frigate'] = true,
	['steam warship'] = true,
	['steamboat'] = true,
	['steamer'] = true,
	['steamship'] = true,
	['sternwheeler'] = true,
	['stores lighter'] = true,
	['submarine chaser'] = true,
	['submarine rescue vehicle'] = true,
	['submarine tender'] = true,
	['submarine'] = true,
	['submersible'] = true,
	['supertanker'] = true,
	['support ship'] = true,
	['survey ship'] = true,
	['tanker'] = true,
	['target ship'] = true,
	['tender'] = true,
	['torpedo boat'] = true,
	['torpedo gunboat'] = true,
	['towboat'] = true,
	['training cruiser'] = true,
	['training ship'] = true,
	['transport'] = true,
	['trawler'] = true,
	['trireme'] = true,
	['tug'] = true,
	['tugboat'] = true,
	['vessel'] = true,
	['warship'] = true,
	['weather ship'] = true,
	['whaler'] = true,
	['whaleship'] = true,
	['wherry'] = true,
	['yacht'] = true,
	['yawl'] = true,
	}


--[[--------------------------< I N F O B O X   L I N E   I T E M   P A R A M E T E R S >----------------------
]]

local infobox_career_params_t = {												-- table of parameters that are rendered in the same way
	['Ship name'] = {1, 'Name'},
	['Ship namesake'] = {2, 'Namesake'},
	['Ship owner'] = {3, 'Owner'},
	['Ship operator'] = {4, 'Operator'},
	['Ship registry'] = {5, 'Port of registry'},
	['Ship route'] = {6, 'Route'},
	['Ship ordered'] = {7, 'Ordered'},
	['Ship awarded'] = {8, 'Awarded'},
	['Ship builder'] = {9, 'Builder'},
	['Ship original cost'] = {10, 'Cost'},
	['Ship yard number'] = {11, 'Yard number'},
	['Ship way number'] = {12, 'Way number'},
	['Ship laid down'] = {13, 'Laid down'},
	['Ship launched'] = {14, 'Launched'},
	['Ship sponsor'] = {15, 'Sponsored by'},
	['Ship christened'] = {16, 'Christened'},
	['Ship completed'] = {17, 'Completed'},
	['Ship acquired'] = {18, 'Acquired'},
	['Ship commissioned'] = {19, 'Commissioned'},
	['Ship recommissioned'] = {20, 'Recommissioned'},
	['Ship decommissioned'] = {21, 'Decommissioned'},
	['Ship maiden voyage'] = {22, 'Maiden voyage'},
	['Ship in service'] = {23, 'In service'},
	['Ship out of service'] = {24, 'Out of service'},
	['Ship renamed'] = {25, 'Renamed'},
	['Ship reclassified'] = {26, 'Reclassified'},
	['Ship refit'] = {27, 'Refit'},
	['Ship struck'] = {28, 'Stricken'},
	['Ship stricken'] = {29, 'Stricken'},
	['Ship reinstated'] = {30, 'Reinstated'},
	['Ship homeport'] = {31, 'Homeport'},
	['Ship identification'] = {32, 'Identification'},
	['Ship motto'] = {33, 'Motto'},
	['Ship nickname'] = {34, 'Nickname(s)'},
	['Ship honours'] = {35, 'Honours and<br />awards'},							-- make these two the same index?
	['Ship honors'] = {36, 'Honors and<br />awards'},
	['Ship captured'] = {37, 'Captured'},
	['Ship fate'] = {38, 'Fate'},
	['Ship status'] = {39, 'Status'},
	['Ship notes'] = {40, 'Notes'},
	['Ship badge'] = {41, 'Badge'},
	}

local infobox_characteristics_params_t = {										-- table of parameters that are rendered in the same way
	['Ship class'] = {1, 'Class and type'},
	['Ship type'] = {2, 'Type'},
	['Ship tonnage'] = {3, 'Tonnage'},
	['Ship displacement'] = {4, 'Displacement'},
	['Ship tons burthen'] = {5, 'Tons burthen'},
	['Ship length'] = {6, 'Length'},
	['Ship beam'] = {7, 'Beam'},
	['Ship height'] = {8, 'Height'},
	['Ship draught'] = {9, 'Draught'},											-- make these two the same index?
	['Ship draft'] = {10, 'Draft'},
	['Ship depth'] = {11, 'Depth'},
	['Ship hold depth'] = {12, 'Depth of hold'},
	['Ship decks'] = {13, 'Decks'},
	['Ship deck clearance'] = {14, 'Deck clearance'},
	['Ship ramps'] = {15, 'Ramps'},
	['Ship ice class'] = {16, 'Ice class'},
	['Ship power'] = {17, 'Installed power'},
	['Ship propulsion'] = {18, 'Propulsion'},
	['Ship sail plan'] = {19, 'Sail plan'},
	['Ship speed'] = {20, 'Speed'},
	['Ship range'] = {21, 'Range'},
	['Ship endurance'] = {22, 'Endurance'},
	['Ship test depth'] = {23, 'Test depth'},
	['Ship boats'] = {24, 'Boats & landing <br /> craft carried'},
	['Ship capacity'] = {25, 'Capacity'},
	['Ship troops'] = {26, 'Troops'},
	['Ship complement'] = {27, 'Complement'},
	['Ship crew'] = {28, 'Crew'},
	['Ship time to activate'] = {29, 'Time to activate'},
	['Ship sensors'] = {30, 'Sensors and <br /> processing systems'},
	['Ship EW'] = {31, 'Electronic warfare <br /> & decoys'},
	['Ship armament'] = {32, 'Armament'},
	['Ship armour'] = {33, 'Armour'},											-- make these two the same index?
	['Ship armor'] = {34, 'Armor'},
	['Ship aircraft'] = {35, 'Aircraft carried'},
	['Ship aircraft facilities'] = {36, 'Aviation facilities'},
	['Ship notes'] = {37, 'Notes'},
	}

local infobox_class_overview_params_t = {										-- table of parameters that are rendered in the same way
	['Name'] = {1, 'Name'},
	['Builders'] = {2, 'Builders'},
	['Operators'] = {3, 'Operators'},
	['Class before'] = {4, 'Preceded by'},
	['Class after'] = {5, 'Succeeded&nbsp;by'},
	['Subclasses'] = {6, 'Subclasses'},
	['Cost'] = {7, 'Cost'},
	['Built range'] = {8, 'Built'},
	['In service range'] = {9, 'In service'},
	['In commission range'] = {10, 'In commission'},
	['Total ships planned'] = {11, 'Planned'},
	['Total ships on order'] = {12, 'On order'},
	['Total ships building'] = {13, 'Building'},
	['Total ships completed'] = {14, 'Completed'},
	['Total ships cancelled'] = {15, 'Cancelled'},
	['Total ships active'] = {16, 'Active'},
	['Total ships laid up'] = {17, 'Laid up'},
	['Total ships lost'] = {18, 'Lost'},
	['Total ships retired'] = {19, 'Retired'},
	['Total ships scrapped'] = {20, 'Scrapped'},
	['Total ships preserved'] = {21, 'Preserved'},
	}


--[[--------------------------< C I T E   P L I M S O L L >----------------------------------------------------
]]

local subtitles_t = {
	['C'] = 'Chalutiers &c.',													-- French headings used as subtitles; these appear on even page numbers
	['F'] = 'Liste des Navires Pourvus de Machines Frigorifiques',
	['NV'] = 'Navires à Voiles',
	['NVM'] = 'Navires à Vapeur et à Moteurs',
	
	['R'] = 'List of Vessels Fitted with Refrigerating Appliances',				-- English headings used as subtitles; these appear on odd page numbers
	['SM'] = 'Steamers & Motorships',
	['SV'] = 'Sailing Vessels',
	['T'] = 'Trawlers &c.',
	}

local subtitles_xlate_t = {
	['odd'] = {																	-- |filename= <page_num> is odd (en) so use French subtitle
		['C'] = 'T',															-- map fr keyword to en keyword
		['F'] = 'R',
		['NV'] = 'SV',
		['NVM'] = 'SM',
		},
	['even'] = {																-- |filename= <page_num> is even (fr) so use English subtitle
		['R'] = 'F',															-- map en keyword to fr keyword
		['SM'] = 'NVM',
		['SV'] = 'NV',
		['T'] = 'C',
		}
	}


--[[--------------------------< E X P O R T S >----------------------------------------------------------------
]]

return {
	infobox_career_params_t = infobox_career_params_t,
	infobox_characteristics_params_t = infobox_characteristics_params_t,
	infobox_class_overview_params_t = infobox_class_overview_params_t,
	nationality_t = nationality_t,
	ship_prefix_t = ship_prefix_t,
	ship_type_t = ship_type_t,
	subtitles_t = subtitles_t,
	subtitles_xlate_t = subtitles_xlate_t,
	}