Module:Lang/doc

This module exists primarily to provide correct html markup for non–English language text where that text is used in the English Wikipedia. It has a secondary purpose of providing correct visual rendering for this non-English text. The module was developed to consolidate processing for, the (most), and  templates into a single source and to use a clearly defined data set extracted from international standards. It provides error checking and reporting to ensure that the html rendered is correct for browsers and screen readers.

Other templates that get language name support from this module are:

Data set
The data set is specified in Module:Lang/data and its included data modules:
 * language tag-and-name data
 * Module:Language/data/iana languages – from IANA language-subtag-registry file
 * language script data
 * Module:Language/data/iana scripts – from IANA language-subtag-registry file
 * language region data
 * Module:Language/data/iana regions – from IANA language-subtag-registry file
 * language variant data
 * Module:Language/data/iana variants – from IANA language-subtag-registry file
 * suppressed-script data
 * Module:Language/data/iana suppressed scripts – from IANA language-subtag-registry file

The data set also includes supplementary data modules:
 * override and other non-standard data
 * Module:Lang/ISO 639 synonyms – maps three character ISO 639-2, -2T, -3 codes to two character ISO 639-1 codes – from Codes for the Representation of Names of Languages
 * Module:Lang/tag from name – reversed language tag-and-name data so that the language name is the key and the language tag is the value

Testcases

 * Module:Lang/testcases (run)
 * category_from_tag
 * Module:Lang/testcases/ISO 639-1 category from tag (run)
 * Module:Lang/testcases/ISO 639-3-1 category from tag (A–H) (run)
 * Module:Lang/testcases/ISO 639-3-2 category from tag (I–N) (run)
 * Module:Lang/testcases/ISO 639-3-3 category from tag (O–Z) (run)
 * Module:Lang/testcases/ISO 639 deprecated and override category from tag (run)
 * name_from_tag
 * Module:Lang/testcases/ISO 639-1 name from tag (run)
 * Module:Lang/testcases/ISO 639-3-1 name from tag (A–H) (run)
 * Module:Lang/testcases/ISO 639-3-2 name from tag (I–N) (run)
 * Module:Lang/testcases/ISO 639-3-3 name from tag (O–Z) (run)
 * Module:Lang/testcases/ISO 639 deprecated and override name from tag (run)
 * tag_from_name
 * Module:Lang/testcases/ISO 639-1 tag from name (run)
 * Module:Lang/testcases/ISO 639-3-1 tag from name (A–H) (run)
 * Module:Lang/testcases/ISO 639-3-2 tag from name (I–N) (run)
 * Module:Lang/testcases/ISO 639-3-3 tag from name (O–Z) (run)
 * Module:Lang/testcases/ISO 639 deprecated and override tag from name (run)