ᥝᥤᥱ ᥑᥤᥱ ᥚᥤᥱ ᥖᥤᥱ ᥕᥣᥱ tddwiki https://tdd.wikipedia.org/wiki/%E1%A5%9E%E1%A5%A8%E1%A5%9D%E1%A5%B4_%E1%A5%98%E1%A5%A3%E1%A5%B2_%E1%A5%96%E1%A5%A5%E1%A5%B0 MediaWiki 1.47.0-wmf.7 first-letter ᥛᥤᥱ ᥖᥤᥱ ᥕᥣᥱ ᥑᥪᥐ ᥖᥩᥢᥰ ᥟᥧᥙᥱ ᥐᥧᥛ ᥚᥧᥱ ᥕᥧᥒᥱ ᥖᥪᥰ ᥟᥧᥙᥱ ᥐᥧᥛ ᥚᥧᥱ ᥕᥧᥒᥱ ᥖᥪᥰ ᥝᥤᥱ ᥑᥤᥱ ᥚᥤᥱ ᥖᥤᥱ ᥕᥣᥱ ᥟᥧᥙᥱ ᥐᥧᥛ ᥝᥤᥱ ᥑᥤᥱ ᥚᥤᥱ ᥖᥤᥱ ᥕᥣᥱ ᥜᥣᥭᥱ ᥟᥧᥙᥱ ᥐᥧᥛ ᥜᥣᥭᥱ ᥛᥤᥱ ᥖᥤᥱ ᥕᥣᥱ ᥝᥤᥱ ᥑᥤᥱ ᥟᥧᥙᥱ ᥐᥧᥛ ᥛᥤᥱ ᥖᥤᥱ ᥕᥣᥱ ᥝᥤᥱ ᥑᥤᥱ ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ ᥟᥧᥙᥱ ᥐᥧᥛ ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ ᥘᥩᥒ ᥓᥩᥭ ᥗᥦᥛ ᥟᥧᥙᥱ ᥐᥧᥛ ᥘᥩᥒ ᥓᥩᥭ ᥗᥦᥛᥴ ᥙᥫᥒ ᥗᥣᥢ ᥟᥧᥙᥱ ᥐᥧᥛ ᥙᥫᥒ ᥗᥣᥢ TimedText TimedText talk ᥛᥨᥝᥱ ᥓᥧᥰ ᥟᥧᥙᥱ ᥐᥧᥛᥴ ᥛᥩᥱ ᥓᥧᥰ Event Event talk ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Replace 10 278 7637 4955 2026-06-17T13:10:31Z Saimawnkham 28 7637 wikitext text/x-wiki <includeonly>{{safesubst:#invoke:String|replace|source={{{1}}}|{{{2}}}|{{{3}}}|plain={{safesubst:#if:{{{plain|}}}|{{{plain}}}|true}}|count={{{count|}}}}}</includeonly><noinclude> {{documentation}} </noinclude> r178n7opmwh460jjikowaqng5m5fzrn ᥛᥨᥝᥱ ᥓᥧᥰ:Side box 828 453 7634 1441 2026-06-17T13:07:52Z Saimawnkham 28 7634 Scribunto text/plain local yesno = require('Module:Yesno') local p = {} local function makeData(args) local data = {} -- Main table classes data.classes = {} if yesno(args.metadata) ~= false then table.insert(data.classes, 'metadata') end if args.position and args.position:lower() == 'left' then table.insert(data.classes, 'side-box-left') else table.insert(data.classes, 'side-box-right') end if args.collapsible then table.insert(data.classes, 'mw-collapsible') if args.collapsible == "collapsed" then table.insert(data.classes, 'mw-collapsed') end data.collapsible = true end table.insert(data.classes, args.class) -- Image if args.image and args.image ~= 'none' then data.image = args.image end -- we have to check to see if a downstream use has plainlist like -- Template:Sister_project. also it's the default. wikitext is :( if args.textclass == 'plainlist' or not args.textclass then data.textclass = 'plainlist' data.plainlist_templatestyles = 'Plainlist/styles.css' else data.textclass = args.textclass end -- Copy over data that does not need adjusting local argsToCopy = { -- aria qualities 'role', 'labelledby', -- Styles 'style', 'textstyle', 'templatestyles', -- Above row 'above', 'abovestyle', -- Body row 'text', 'imageright', -- Below row 'below', } for i, key in ipairs(argsToCopy) do data[key] = args[key] end return data end local function renderSidebox(data) -- Renders the sidebox HTML. -- Table root local root = mw.html.create('div') root:attr('role', data.role) :attr('aria-labelledby', data.labelledby) :addClass('side-box') for i, class in ipairs(data.classes or {}) do root:addClass(class) end if data.style then root:cssText(data.style) end local frame = mw.getCurrentFrame() if data.plainlist_templatestyles then root:wikitext(frame:extensionTag{ name = 'templatestyles', args = { src = data.plainlist_templatestyles } }) end -- The "above" row if data.above then local above = root:newline():tag('div') above:addClass('side-box-abovebelow') :newline() :wikitext(data.above) if data.textstyle then above:cssText(data.textstyle) end if data.abovestyle then above:cssText(data.abovestyle) end end -- The body row local body = root:newline():tag('div') body:addClass('side-box-flex') :addClass(data.collapsible and 'mw-collapsible-content') :newline() if data.image then body:tag('div') :addClass('side-box-image') :wikitext(data.image) end local text = body:newline():tag('div') text:addClass('side-box-text') :addClass(data.textclass) if data.textstyle then text:cssText(data.textstyle) end text:wikitext(data.text) if data.imageright then body:newline():tag('div') :addClass('side-box-imageright') :wikitext(data.imageright) end -- The below row if data.below then local below = root:newline():tag('div') below :addClass('side-box-abovebelow') :wikitext(data.below) if data.textstyle then below:cssText(data.textstyle) end end root:newline() local templatestyles = '' if data.templatestyles then templatestyles = frame:extensionTag{ name = 'templatestyles', args = { src = data.templatestyles } } end return frame:extensionTag{ name = 'templatestyles', args = { src = 'Module:Side box/styles.css' } } .. templatestyles .. tostring(root) end -- private, export for testing p._makeData = makeData p._renderSidebox = renderSidebox function p._main(args) local data = makeData(args) return renderSidebox(data) end function p.main(frame) local origArgs = frame:getParent().args local args = {} for k, v in pairs(origArgs) do v = v:match('%s*(.-)%s*$') if v ~= '' then args[k] = v end end return p._main(args) end return p hu1w1vy5vzibls2pne08un5bivqwbcp ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:ISO 15924 name 10 2472 7629 2026-06-17T13:01:17Z Saimawnkham 28 Created page with "{{#switch:{{{alpha4|{{ISO 15924 code|{{{1|}}}}}}}}<!-- ISO 15924 list as of 2025-04-24: this is the complete list of the 224 + 50 Qaaa-Qabx codes--> | Adlm = Adlam | Afak = Afaka | Aghb = Caucasian Albanian | Ahom = Ahom, Tai Ahom | Arab = Arabic | Aran = Arabic (Nastaliq variant) | Armi = Imperial Aramaic | Armn = Armenian | Avst = Avestan | Bali = Balinese | Bamu = Bamum | Bass = Bassa Vah | Batk = Batak | Beng = Bengali (Bangla) | Berf = Beria Erfe | Bhks = Bhaiksuki..." 7629 wikitext text/x-wiki {{#switch:{{{alpha4|{{ISO 15924 code|{{{1|}}}}}}}}<!-- ISO 15924 list as of 2025-04-24: this is the complete list of the 224 + 50 Qaaa-Qabx codes--> | Adlm = Adlam | Afak = Afaka | Aghb = Caucasian Albanian | Ahom = Ahom, Tai Ahom | Arab = Arabic | Aran = Arabic (Nastaliq variant) | Armi = Imperial Aramaic | Armn = Armenian | Avst = Avestan | Bali = Balinese | Bamu = Bamum | Bass = Bassa Vah | Batk = Batak | Beng = Bengali (Bangla) | Berf = Beria Erfe | Bhks = Bhaiksuki | Blis = Blissymbols | Bopo = Bopomofo | Brah = Brahmi | Brai = Braille | Bugi = Buginese | Buhd = Buhid | Cakm = Chakma | Cans = Unified Canadian Aboriginal Syllabics | Cari = Carian | Cham = Cham | Cher = Cherokee | Chis = Chisoi | Chrs = Chorasmian | Cirt = Cirth | Copt = Coptic | Cpmn = Cypro-Minoan | Cprt = Cypriot syllabary | Cyrl = Cyrillic | Cyrs = Cyrillic (Old Church Slavonic variant) | Deva = Devanagari (Nagari) | Diak = Dives Akuru | Dogr = Dogra | Dsrt = Deseret (Mormon) | Dupl = Duployan shorthand, Duployan stenography | Egyd = Egyptian demotic | Egyh = Egyptian hieratic | Egyp = Egyptian hieroglyphs | Elba = Elbasan | Elym = Elymaic | Ethi = Ethiopic (Geʻez) | Gara = Garay | Geok = Khutsuri (Asomtavruli and Nuskhuri) | Geor = Georgian (Mkhedruli and Mtavruli) | Glag = Glagolitic | Gong = Gunjala Gondi | Gonm = Masaram Gondi | Goth = Gothic | Gran = Grantha | Grek = Greek | Gujr = Gujarati | Gukh = Gurung Khema | Guru = Gurmukhi | Hanb = Han with Bopomofo (alias for Han + Bopomofo) | Hang = Hangul (Hangŭl, Hangeul) | Hani = Han (Hanzi, Kanji, Hanja) | Hano = Hanunoo (Hanunóo) | Hans = Han (Simplified variant) | Hant = Han (Traditional variant) | Hatr = Hatran | Hebr = Hebrew | Hira = Hiragana | Hluw = Anatolian Hieroglyphs (Luwian Hieroglyphs, Hittite Hieroglyphs) | Hmng = Pahawh Hmong | Hmnp = Nyiakeng Puachue Hmong | Hntl = Han (Traditional variant) with Latin (alias for Hant + Latn) | Hrkt = Japanese syllabaries (alias for Hiragana + Katakana) | Hung = Old Hungarian (Hungarian Runic) | Inds = Indus (Harappan) | Ital = Old Italic (Etruscan, Oscan, etc.) | Jamo = Jamo (alias for Jamo subset of Hangul) | Java = Javanese | Jpan = Japanese (alias for Han + Hiragana + Katakana) | Jurc = Jurchen | Kali = Kayah Li | Kana = Katakana | Kawi = Kawi | Khar = Kharoshthi | Khmr = Khmer | Khoj = Khojki | Kitl = Khitan large script | Kits = Khitan small script | Knda = Kannada | Kore = Korean (alias for Hangul + Han) | Kpel = Kpelle | Krai = Kirat Rai | Kthi = Kaithi | Lana = Tai Tham (Lanna) | Laoo = Lao | Latf = Latin (Fraktur variant) | Latg = Latin (Gaelic variant) | Latn = Latin | Leke = Leke | Lepc = Lepcha (Róng) | Limb = Limbu | Lina = Linear A | Linb = Linear B | Lisu = Lisu (Fraser) | Loma = Loma | Lyci = Lycian | Lydi = Lydian | Mahj = Mahajani | Maka = Makasar | Mand = Mandaic, Mandaean | Mani = Manichaean | Marc = Marchen | Maya = Mayan hieroglyphs | Medf = Medefaidrin (Oberi Okaime, Oberi Ɔkaimɛ) | Mend = Mende Kikakui | Merc = Meroitic Cursive | Mero = Meroitic Hieroglyphs | Mlym = Malayalam | Modi = Modi, Moḍī | Mong = Mongolian | Moon = Moon (Moon code, Moon script, Moon type) | Mroo = Mro, Mru | Mtei = Meitei Mayek (Meithei, Meetei) | Mult = Multani | Mymr = Myanmar (Burmese) | Nagm = Nag Mundari | Nand = Nandinagari | Narb = Old North Arabian (Ancient North Arabian) | Nbat = Nabataean | Newa = Newa, Newar, Newari, Nepāla lipi | Nkdb = Naxi Dongba (na²¹ɕi³³ to³³ba²¹, Nakhi Tomba) | Nkgb = Naxi Geba (na²¹ɕi³³ gʌ²¹ba²¹, 'Na-'Khi ²Ggŏ-¹baw, Nakhi Geba) | Nkoo = N’Ko | Nshu = Nüshu | Ogam = Ogham | Olck = Ol Chiki (Ol Cemet’, Ol, Santali) | Onao = Ol Onal | Orkh = Old Turkic, Orkhon Runic | Orya = Oriya (Odia) | Osge = Osage | Osma = Osmanya | Ougr = Old Uyghur | Palm = Palmyrene | Pauc = Pau Cin Hau | Pcun = Proto-Cuneiform | Pelm = Proto-Elamite | Perm = Old Permic | Phag = Phags-pa | Phli = Inscriptional Pahlavi | Phlp = Psalter Pahlavi | Phlv = Book Pahlavi | Phnx = Phoenician | Piqd = Klingon (KLI pIqaD) | Plrd = Miao (Pollard) | Prti = Inscriptional Parthian | Psin = Proto-Sinaitic | Qaaa-Qabx | Qaaa–Qabx = Reserved for private use (range) | Qaaa = Reserved for private use (start) | Qaab | Qaac | Qaad | Qaae | Qaaf | Qaag | Qaah | Qaai | Qaaj | Qaak | Qaal | Qaam | Qaan | Qaao | Qaap | Qaaq | Qaar | Qaas | Qaat | Qaau | Qaav | Qaaw | Qaax | Qaay | Qaaz | Qaba | Qabb | Qabc | Qabd | Qabe | Qabf | Qabg | Qabh | Qabi | Qabj | Qabk | Qabl | Qabm | Qabn | Qabo | Qabp | Qabq | Qabr | Qabs | Qabt | Qabu | Qabv | Qabw = Reserved for private use | Qabx = Reserved for private use (end) | Ranj = Ranjana | Rjng = Rejang (Redjang, Kaganga) | Rohg = Hanifi Rohingya | Roro = Rongorongo | Runr = Runic | Samr = Samaritan | Sara = Sarati | Sarb = Old South Arabian | Saur = Saurashtra | Seal = (Small) Seal | Sgnw = SignWriting | Shaw = Shavian (Shaw) | Shrd = Sharada, Śāradā | Shui = Shuishu | Sidd = Siddham, Siddhaṃ, Siddhamātṛkā | Sidt = Sidetic | Sind = Khudawadi, Sindhi | Sinh = Sinhala | Sogd = Sogdian | Sogo = Old Sogdian | Sora = Sora Sompeng | Soyo = Soyombo | Sund = Sundanese | Sunu = Sunuwar | Sylo = Syloti Nagri | Syrc = Syriac | Syre = Syriac (Estrangelo variant) | Syrj = Syriac (Western variant) | Syrn = Syriac (Eastern variant) | Tagb = Tagbanwa | Takr = Takri, Ṭākrī, Ṭāṅkrī | Tale = Tai Le | Talu = New Tai Lue | Taml = Tamil | Tang = Tangut | Tavt = Tai Viet | Tayo = Tai Yo | Telu = Telugu | Teng = Tengwar | Tfng = Tifinagh (Berber) | Tglg = Tagalog (Baybayin, Alibata) | Thaa = Thaana | Thai = Thai | Tibt = Tibetan | Tirh = Tirhuta | Tnsa = Tangsa | Todr = Todhri | Tols = Tolong Siki | Toto = Toto | Tutg = Tulu-Tigalari | Ugar = Ugaritic | Vaii = Vai | Visp = Visible Speech | Vith = Vithkuqi | Wara = Warang Citi (Varang Kshiti) | Wcho = Wancho | Wole = Woleai | Xpeo = Old Persian | Xsux = Cuneiform, Sumero-Akkadian | Yezi = Yezidi | Yiii = Yi | Zanb = Zanabazar Square (Zanabazarin Dörböljin Useg, Xewtee Dörböljin Bicig, Horizontal Square Script) | Zinh = Code for inherited script | Zmth = Mathematical notation | Zsye = Symbols (emoji variant) | Zsym = Symbols | Zxxx = Code for unwritten documents | Zyyy = Code for undetermined script | Zzzz = Code for uncoded script | #default = {{{default|}}} }}<noinclude> {{documentation}} </noinclude> 35fuvdjlsjrqacyk2vqfjakiggcaum5 ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:ISO 15924 name/doc 10 2473 7630 2026-06-17T13:01:44Z Saimawnkham 28 Created page with "{{Documentation subpage}} <!-- Categories and interwikis go at the bottom of this page. --> == Usage == {{main|ISO 15924}} * <syntaxhighlight lang="wikitext" inline>{{ISO 15924 name|Adlm}}</syntaxhighlight> → {{ISO 15924 name|Adlm}} * <syntaxhighlight lang="wikitext" inline>{{ISO 15924 name|incorrect value}}</syntaxhighlight> → {{ISO 15924 name|incorrect value}} ==Template data== {{template data header}} <templatedata> { "params": { "1": {} } } </templatedata>..." 7630 wikitext text/x-wiki {{Documentation subpage}} <!-- Categories and interwikis go at the bottom of this page. --> == Usage == {{main|ISO 15924}} * <syntaxhighlight lang="wikitext" inline>{{ISO 15924 name|Adlm}}</syntaxhighlight> → {{ISO 15924 name|Adlm}} * <syntaxhighlight lang="wikitext" inline>{{ISO 15924 name|incorrect value}}</syntaxhighlight> → {{ISO 15924 name|incorrect value}} ==Template data== {{template data header}} <templatedata> { "params": { "1": {} } } </templatedata> {{ISO 15924 templates/doc}} <includeonly>{{Sandbox other|| [[Category:ISO 15924 templates|Name]] }}</includeonly> ip6qi1k5ln5kydhh0u3rauukt11wqkd ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Commons category 10 2474 7631 2026-06-17T13:05:29Z Saimawnkham 28 Created page with "{{Sister project | position = {{{position|}}} | project = commons | text = ᥝᥤᥱᥑᥤᥱᥛᥤᥱᥖᥤᥱᥕᥣᥱ ᥑᥩᥛᥱᥛᥩᥢᥰ ᥛᥤᥰᥝᥭᥳ {{{alt-term|ᥔᥪᥱᥑᥣᥝᥱ ᥟᥢᥴᥐᥥᥝᥱᥐᥙᥰ}}} <span style="font-weight: bold; {{#ifeq:{{{nowrap|no}}}|yes|white-space:nowrap;}} {{#ifeq:{{{italic|yes}}}|yes|font-style: italic;}}">commons:{{#if:{{{1|}}}|Category:{{{1|}}}|{{if then show|{{#invoke:WikidataIB |getCommonsLink|qid={{{q..." 7631 wikitext text/x-wiki {{Sister project | position = {{{position|}}} | project = commons | text = ᥝᥤᥱᥑᥤᥱᥛᥤᥱᥖᥤᥱᥕᥣᥱ ᥑᥩᥛᥱᥛᥩᥢᥰ ᥛᥤᥰᥝᥭᥳ {{{alt-term|ᥔᥪᥱᥑᥣᥝᥱ ᥟᥢᥴᥐᥥᥝᥱᥐᥙᥰ}}} <span style="font-weight: bold; {{#ifeq:{{{nowrap|no}}}|yes|white-space:nowrap;}} {{#ifeq:{{{italic|yes}}}|yes|font-style: italic;}}">[[commons:{{#if:{{{1|}}}|Category:{{{1|}}}|{{if then show|{{#invoke:WikidataIB |getCommonsLink|qid={{{qid|}}}|onlycat=True|fallback=False}}|Category:{{PAGENAME}}}}}}|{{#ifeq:{{{lcf|{{{lcfirst|no}}}}}}|yes|{{lcfirst:{{{2|{{#if:{{{1|}}} | {{{1|}}} <!-- -->|{{if then show|{{#invoke:String|replace|{{#invoke:WikidataIB |getCommonsLink|qid={{{qid|}}}|onlycat=True|fallback=False}}|Category:|}}<!-- --> |{{PAGENAME}} }} }} }}} }}<!-- -->|{{{2|{{#if:{{{1|}}} | {{{1|}}} <!-- -->|{{if then show|{{#invoke:String|replace|{{#invoke:WikidataIB |getCommonsLink|qid={{{qid|}}}|onlycat=True|fallback=False}}|Category:|}}|{{PAGENAME}} }}<!-- -->}}}}}}}]]</span>.<!-- End of the template code, now add relevant tracking categories --><includeonly>{{#switch:{{NAMESPACE}}||{{ns:14}}=<!-- Only add tracking categories to articles and categories. -->{{#if:{{{1|}}}|{{#ifeq:Category:{{replace|{{{1|}}}|_|&#32;}}|{{#invoke:WikidataIB |getCommonsLink|qid={{{qid|}}}|onlycat=True|fallback=False}}|<!-- -->[[Category:Commons category link is on Wikidata]]<!-- -->|{{#ifeq:{{replace|{{{1|}}}|_|&#32;}}|{{PAGENAME}}|<!-- ... the local parameter is the same as the local pagename -->[[Category:Commons category link is defined as the pagename]]{{preview warning|Commons category does not match the Commons sitelink on Wikidata – [[Template:Commons_category#Resolving_discrepancies|please check]]}}<!-- ... the local parameter is not the pagename -->|[[Category:Commons category link is locally defined]]{{preview warning|Commons category does not match the Commons sitelink on Wikidata – [[Template:Commons_category#Resolving_discrepancies|please check]]}}}} }}<!-- We don't have a locally-defined link -->|{{#if:{{#invoke:WikidataIB |getCommonsLink|qid={{{qid|}}}|onlycat=True|fallback=False}}|<!-- ... so we're using Wikidata -->[[Category:Commons category link from Wikidata]]<!-- <!-- ... or we're using the pagename -->|[[Category:Commons category link is the pagename]]{{preview warning|Commons category does not match the Commons sitelink on Wikidata – [[Template:Commons_category#Resolving_discrepancies|please check]]}} }} }} }}</includeonly> }}<noinclude> {{Documentation}} <!-- Add categories to the /doc subpage, not here! --> </noinclude> rtd29n0r2ozl0hlkbdxniemo7432yne ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:If then show 10 2475 7632 2026-06-17T13:05:55Z Saimawnkham 28 Created page with "{{SAFESUBST:<noinclude />#if:{{{1|}}}|{{{3|}}}{{{1|}}}{{{4|}}}|{{{2|}}}}}<noinclude> {{Documentation}} </noinclude>" 7632 wikitext text/x-wiki {{SAFESUBST:<noinclude />#if:{{{1|}}}|{{{3|}}}{{{1|}}}{{{4|}}}|{{{2|}}}}}<noinclude> {{Documentation}} </noinclude> 7d83cpur6ml0umb4qqvcpyge8uuck90 ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:If then show/doc 10 2476 7633 2026-06-17T13:06:21Z Saimawnkham 28 Created page with "{{Documentation subpage}} <!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) --> {{High-use}} This template tests whether the first unnamed parameter is not an empty string and returns it if it is not empty. Otherwise it returns the second unnamed parameter. This is useful when the first parameter is a <nowiki>{{#invoke: }}</nowiki> of a Lua module that may return a value or nothing. Because it..." 7633 wikitext text/x-wiki {{Documentation subpage}} <!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) --> {{High-use}} This template tests whether the first unnamed parameter is not an empty string and returns it if it is not empty. Otherwise it returns the second unnamed parameter. This is useful when the first parameter is a <nowiki>{{#invoke: }}</nowiki> of a Lua module that may return a value or nothing. Because it uses the <nowiki>{{#invoke: }}</nowiki> just once, it simplifies the coding of infoboxes, for example. The optional third and fourth unnamed parameters provide a prefix and a suffix for the first parameter when returned. This enables the designer to construct more complex templates that still only use one invoke of a Lua module. == Usage == ; {{q|P26}} for {{q|Q151973}} : <syntaxhighlight lang="wikitext" inline>{{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q151973|fwd=ALL|osd=no}}|unmarried}}</syntaxhighlight> → {{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q151973|fwd=ALL|osd=no}}|unmarried}} ; {{q|P26}} for {{q|Q905}} : <syntaxhighlight lang="wikitext" inline>{{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q905|fwd=ALL|osd=no}}|unmarried}}</syntaxhighlight> → {{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q905|fwd=ALL|osd=no}}|unmarried}} === Prefix and suffix === ==== Infobox field with microformat ==== A value in an infobox can be designed to be wrapped in a microformat if the wikidata call is not empty: : <syntaxhighlight lang="wikitext" inline>{{if then show | {{#invoke:WikidataIB | getValue | rank=best |P19 |name=birth_place |qid={{{qid|}}} |suppressfields={{{suppressfields|}}} |fetchwikidata={{{fetchwikidata|}}} |noicon={{{noicon|}}} | {{{birth_place|}}} }} || <span class="birthplace"> | </span>}}</syntaxhighlight> : If there is a local parameter supplied in the article (e.g. {{para|birth_place|London}}), the code will return <code><nowiki><span class="birthplace">London</span></nowiki></code>. : If there is no local parameter it will attempt to fetch a value for {{q|P19}} from Wikidata. : If that has a value, such as "New York", the code will return <code><nowiki><span class="birthplace">New York</span></nowiki></code>. : If there is no value returned from Wikidata, the code returns nothing. ==== Table ==== A table can be designed to display a row only when a particular property of the article exists on Wikidata. ; {{q|P26}} for {{q|Q151973}} : <syntaxhighlight lang="wikitext"> {| class="wikitable" |- ! scope="col" style="width:15em;" | Label ! scope="col" style="width:36em;" | Value {{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q151973|fwd=ALL|osd=no}}||<tr><th>{{#invoke:WikidataIB|getLabel|P26|qid=Q151973}}</th><td>|</td></tr>}} |} </syntaxhighlight> : → {| class="wikitable" |- ! scope="col" style="width:15em;" | Label ! scope="col" style="width:36em;" | Value {{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q151973|fwd=ALL|osd=no}}||<tr><th>{{#invoke:WikidataIB|getLabel|P26|qid=Q151973}}</th><td>|</td></tr>}} |} ; {{q|P26}} for {{q|Q905}} : <syntaxhighlight lang="wikitext"> {| class="wikitable" |- ! scope="col" style="width:15em;" | Label ! scope="col" style="width:36em;" | Value {{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q905|fwd=ALL|osd=no}}||<tr><th>{{#invoke:WikidataIB|getLabel|P26|qid=Q905}}</th><td>|</td></tr>}} |} </syntaxhighlight> : → {| class="wikitable" |- ! scope="col" style="width:15em;" | Label ! scope="col" style="width:36em;" | Value {{If then show|{{#invoke:WikidataIB|getValue|P26|qid=Q905|fwd=ALL|osd=no}}||<tr><th>{{#invoke:WikidataIB|getLabel|P26|qid=Q905}}</th><td>|</td></tr>}} |} == See also == ; [[Template:Ifnoteq then show]] : tests whether the first unnamed parameter is equal to the second unnamed parameter and returns the third unnamed parameter if it does. Otherwise it returns the first unnamed parameter. This is useful when the first parameter is a <code><nowiki>{{#invoke:</nowiki></code> of a Lua module that returns a value for which a specific exception is required. ; [[Template:If then wikilink]] : tests whether the first unnamed parameter is not an empty string and if it isn't, it returns the parameter formatted as piped wiki-link using an optional namespace prefix. ; [[Template:Formatter link]] : takes an external identifier code as {{para|code}} and uses a formatter url as {{para|url}} to construct a link to the external resource, which uses the code as display. ; [[Template:Empty or|Template:Emptyor]] : tests a piece of text to ascertain whether it's effectively empty or contains some text. If the unnamed parameter consists only of html tags, punctuation (e.g. Wiki-markup) and whitespace, then Emptyor returns nothing; otherwise it returns the parameter unchanged. Wrapper for p.emptyor function. == Further readings == * {{mfl|params|value_of}} <includeonly>{{sandbox other|| <!-- Categories below this line, please; interwikis at Wikidata --> [[Category:If-then-else templates]] }}</includeonly> f6vusondh4ipsnmt76dxbo0pteo7x17 ᥛᥨᥝᥱ ᥓᥧᥰ:Side box/doc 828 2477 7635 2026-06-17T13:08:22Z Saimawnkham 28 Created page with "{{Module rating|protected}} {{High-use}} {{Lua|Module:Yesno}} {{Uses TemplateStyles|Module:Side box/styles.css|Template:Plainlist/styles.css}} This module implements the {{tl|side box}} template. == Usage from wikitext == This module cannot be used directly from wikitext. It can only be used through the {{tl|side box}} template. Please see the template page for documentation. == Usage from Lua modules == To use this module from other Lua modules, first load the modul..." 7635 wikitext text/x-wiki {{Module rating|protected}} {{High-use}} {{Lua|Module:Yesno}} {{Uses TemplateStyles|Module:Side box/styles.css|Template:Plainlist/styles.css}} This module implements the {{tl|side box}} template. == Usage from wikitext == This module cannot be used directly from wikitext. It can only be used through the {{tl|side box}} template. Please see the template page for documentation. == Usage from Lua modules == To use this module from other Lua modules, first load the module. <syntaxhighlight lang="lua"> local mSideBox = require('Module:Side box') </syntaxhighlight> You can then generate a side box using the _main function. <syntaxhighlight lang="lua"> mSideBox._main(args) </syntaxhighlight> The <var>args</var> variable should be a table containing the arguments to pass to the module. To see the different arguments that can be specified and how they affect the module output, please refer to the {{tl|side box}} template documentation. <includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox|| <!-- Categories go here and interwikis go in Wikidata. --> }}</includeonly> ocu64az470qhjsyf6nf4ppfsdifq2el ᥛᥨᥝᥱ ᥓᥧᥰ:Side box/styles.css 828 2478 7636 2026-06-17T13:08:36Z Saimawnkham 28 Created page with "/* {{pp|small=y}} */ .side-box { margin: 4px 0; box-sizing: border-box; border: 1px solid #aaa; font-size: 88%; line-height: 1.25em; background-color: var(--background-color-interactive-subtle, #f8f9fa);color:inherit; display: flow-root; } /* embedded side boxes need larger font */ .infobox .side-box { font-size: 100%; } .side-box-abovebelow, .side-box-text { padding: 0.25em 0.9em; } .side-box-image { /* @noflip */ padding: 2px 0 2px 0.9em; text-align: c..." 7636 sanitized-css text/css /* {{pp|small=y}} */ .side-box { margin: 4px 0; box-sizing: border-box; border: 1px solid #aaa; font-size: 88%; line-height: 1.25em; background-color: var(--background-color-interactive-subtle, #f8f9fa);color:inherit; display: flow-root; } /* embedded side boxes need larger font */ .infobox .side-box { font-size: 100%; } .side-box-abovebelow, .side-box-text { padding: 0.25em 0.9em; } .side-box-image { /* @noflip */ padding: 2px 0 2px 0.9em; text-align: center; } .side-box-imageright { /* @noflip */ padding: 2px 0.9em 2px 0; text-align: center; } /* roughly the skin's sidebar + size of side box */ @media (min-width: 500px) { .side-box-flex { display: flex; align-items: center; } .side-box-text { flex: 1; min-width: 0; } } @media (min-width: 640px) { .side-box { width: 238px; } .side-box-right { /* @noflip */ clear: right; /* @noflip */ float: right; /* @noflip */ margin-left: 1em; } /* derives from mbox classes, which do not float left in mbox-small-left * so far as I can tell, that was a deliberate decision, since only .ambox * supports mbox-left */ .side-box-left { /* @noflip */ margin-right: 1em; } } qq1i4w5vxwhm3bo4it30jpdvi25oyrp ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Replace/doc 10 2479 7638 2026-06-17T13:10:46Z Saimawnkham 28 Created page with "{{used in system|in [[MediaWiki:Titleblacklist-custom-archive]]}} {{Documentation subpage}} {{Lua|Module:String}} <!----PLEASE ADD CATEGORIES WHERE INDICATED AT THE END OF THIS PAGE----> ===Usage=== <code>{{((}}replace|''string''|''target''|''replacement''|count=''n''{{))}}</code> Returns ''string'' with the first ''n'' occurrences of ''target'' replaced with ''replacement''. Omitting {{code|1=count}} will replace all occurrences. Space counts as a character if placed i..." 7638 wikitext text/x-wiki {{used in system|in [[MediaWiki:Titleblacklist-custom-archive]]}} {{Documentation subpage}} {{Lua|Module:String}} <!----PLEASE ADD CATEGORIES WHERE INDICATED AT THE END OF THIS PAGE----> ===Usage=== <code>{{((}}replace|''string''|''target''|''replacement''|count=''n''{{))}}</code> Returns ''string'' with the first ''n'' occurrences of ''target'' replaced with ''replacement''. Omitting {{code|1=count}} will replace all occurrences. Space counts as a character if placed in any of the first three parameters. ===Examples=== * <code><nowiki>{{replace|One two two three two four twotwo five|two|NINE}}</nowiki></code> &rarr; {{replace|One two two three two four twotwo five|two|NINE}} * <code><nowiki>{{replace|One two two three two four twotwo five|two|NINE|count=2}}</nowiki></code> &rarr; {{replace|One two two three two four twotwo five|two|NINE|count=2}} * <code><nowiki>{{replace|foo_bar|_| }}</nowiki></code> &rarr; {{replace|foo_bar|_| }} ====Space==== * <code><nowiki>{{replace|One-two two-three two-four twotwo-five|-|—}}</nowiki></code> &rarr; {{replace|One-two two-three two-four twotwo-five|-|—}} * <code><nowiki>{{replace|One-two two-three two-four twotwo-five|- |—}}</nowiki></code> &rarr; {{replace|One-two two-three two-four twotwo-five|- |—}} ===See also=== * {{tl|transliterate}} * {{tl|str rep}}, which replaces only the first occurrence of a string. * [[mw:Extension:ParserFunctions/String functions##replace]] {{String-handling templates |IRL}} <includeonly>{{Sandbox other|| <!----CATEGORIES BELOW THIS LINE, PLEASE:----> [[Category:String manipulation templates]] }}</includeonly> qo8bwz3bvfqzpr2nvv4222xjt8qaz9l ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Commons category/doc 10 2480 7639 2026-06-17T13:12:07Z Saimawnkham 28 Created page with "{{Documentation subpage}} {{High-use|all-pages=yes}} <!-- Categories go where indicated at the bottom of this page, please; interwikis go to Wikidata (see also: [[Wikipedia:Wikidata]]). --> {{redirect|Template:CC|Creative Commons templates|Category:Creative Commons copyright templates}} {{hatnote|This template is part of [[Wikipedia:Wikimedia sister projects|Wikimedia sister projects]].}} {{tlb|Commons category}} links to a "Category:" name in the [[Wikimedia Commons]]..." 7639 wikitext text/x-wiki {{Documentation subpage}} {{High-use|all-pages=yes}} <!-- Categories go where indicated at the bottom of this page, please; interwikis go to Wikidata (see also: [[Wikipedia:Wikidata]]). --> {{redirect|Template:CC|Creative Commons templates|Category:Creative Commons copyright templates}} {{hatnote|This template is part of [[Wikipedia:Wikimedia sister projects|Wikimedia sister projects]].}} {{tlb|Commons category}} links to a "Category:" name in the [[Wikimedia Commons]] repository that corresponds to the article or category. If the Commons category name is misspelled or missing, the link will still appear "[[Help:Link color|blue]]" even though the link will fail. Check the existence of the category on Commons as well as the spelling of names carefully. That said, {{No ping|Pi bot}} will attempt to fix or remove links to non-existent categories. In articles, this template should be placed at the top of the last section on the page so that it floats to the right of that section. A warning will appear if the Commons link is not on Wikidata. {{tsh|Ccat|Commonscat|Cc}} == Usage == {| style="clear:right" |- | {{tl2|Commons category}} || – || Fetches the Commons sitelink from Wikidata (where available) |- | {{tl2|Commons category|''catname''}} || – || Puts link-box connecting title ''catname'' |- | {{tl2|Commons category|''catname''|''showname''}} || – || Puts link-box showing the title ''showname'' |- | {{tl2|Commons category|''catname''|3=position=left}} || style="vertical-align:top;" | – || Floats link-box to the left side, as option to align box to left-margin |- | {{tl2|Commons category|3=nowrap=yes}} || style="vertical-align:top;" | – || Stops the text of the Commons category from wrapping |- | {{tl2|Commons category|3=lcfirst=yes}} || style="vertical-align:top;" | – || Displays the first letter as lower-case |- | {{tl2|Commons category|3=italic=no}} || style="vertical-align:top;" | – || Turn off italics for displayed text |} The two parameters ''catname'' and ''showname'' (1 & 2) are optional, and are intended for cases where the Commons category name is different from the Wikipedia page name. The first parameter is the name of the corresponding category on the Wikimedia Commons, ''without'' the "<code>Category:</code>" prefix. If this first parameter is used, then the template will display the Commons category name, which may be confusing to readers. This text can be overridden by the second parameter, where the Wikipedia page name would typically be used. {{Commons category|Ursus maritimus|Polar bears}} For example, on the [[Polar bear]] page, {{tlc|Commons category|Ursus maritimus|Polar bears}} produces a link to [[Commons:Category:Ursus maritimus]] displayed as "[[Commons:Category:Ursus maritimus|Polar bears]]". The parameter {{para|position}} accepts one value, {{para|position|left}}, that moves the box to the left side, instead of the default right side. More information may be found at [[Template:Side box]]. == Location == <!-- Red messages in preview mode link to this section. --> {{Commons templates location}} == Resolving discrepancies == This template compares locally-defined values against the interwiki links to Commons stored on Wikidata. The discrepancies are highlighted through the addition of [[#Maintenance categories|maintenance categories]]. Pages can be removed from the tracking categories by correcting the local link; removing misplaced template uses; fixing the sitelinks on Wikidata; or expanding the category system on Commons. A workaround is to switch to {{tl|Commons category multi}}, but ideally there should be one Commons category link per article, and it should be easy for readers to identify the related content on Commons. Some suggested approaches are: The link is to a more general topic than the article: # Is there a more specific Commons category that could be linked to instead? # If not, could it be created with images connected to the article? # Or if there aren't any images connected to the article on Commons, could the Commons category link be removed? There are links to multiple Commons categories in the article: # Could they be replaced by a single Commons category that has the rest as subcategories? # Do all of the Commons categories still exist? # Are they all necessary, or could they be removed? The Commons category links back to the wrong Wikipedia article: # Can you move the sitelink to the Wikidata item for the article? == Tracking categories == === Normal categories === * {{clc|Commons category link from Wikidata}} * {{clc|Commons category link is on Wikidata}} === Maintenance categories === * {{clc|Commons category link is defined as the pagename}} * {{clc|Commons category link is locally defined}} * {{clc|Commons category link is the pagename}} == TemplateData == {{TemplateData header}} <TemplateData> { "description": "This template creates a small box containing a link to a category on Commons. If no value is provided the Commons category value from Wikidata is used, and if none was provided there then the page name is used.", "params": { "1": { "label": "Category name", "description": "The name of the Commons category this template will link to. If no value is provided the Commons category value from Wikidata is used, and if none was provided there then the page name is used.", "type": "string", "required": false }, "2": { "label": "Displayed text", "description": "The text that the link will display to the user. If no value is provided it will default to category name or page name, in that order.", "type": "string", "required": false }, "position": { "label": "Position", "description": "When set to 'left', the template will be positioned on the left side of the page. Otherwise it will default to the right side.", "type": "string", "required": false }, "nowrap": { "label": "nowrap", "description": "Stops the text of the Commons category from wrapping", "type": "string", "required": false }, "lcfirst": { "label": "lcfirst", "description": "Displays the first letter as lower-case", "type": "string", "required": false } } } </TemplateData> == Redirects == * {{Tl|C cat}} * {{Tl|Category commons}} * {{Tl|Category Commons}} * {{Tl|Cc}} * {{Tl|Ccat}} * {{Tl|Commons cat}} * {{Tl|Commonscat}} * {{Tl|Commonscategory}} * {{Tl|Commonsimages cat}} * {{Tl|Wikimedia commons cat}} == See also == {{Commons templates see also}} <includeonly>{{Sandbox other|| <!-- Categories go below this line, please; interwikis go to Wikidata, thank you! --> [[Category:Interwiki category linking templates]] [[Category:Interwiki link sidebar templates]] [[Category:Wikimedia Commons templates|category]] [[Category:Templates that add a tracking category]] }}</includeonly> 61sw1zoo5yy5tij7js3trwim0ksmhew ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Commonscat 10 2481 7640 2026-06-17T13:12:42Z Saimawnkham 28 Redirected page to [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Commons category]] 7640 wikitext text/x-wiki #REDIRECT [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Commons category]] qhqbpukujoehaps8qxzv3f290hgr377 ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Unicode chart Myanmar Extended-B 10 2482 7641 2026-06-17T13:13:26Z Saimawnkham 28 Created page with "{| class="wikitable nounderlines" style="border-collapse:collapse;background:var(--background-color-base,#fff);color:inherit;font-size:large;text-align:center" | colspan="17" style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small"| '''[[Myanmar Extended-B]]'''{{ref label|UA9E0_as_of_Unicode_version|1}}{{ref label|UA9E0_grey|2}}<br />[https://www.unicode.org/charts/PDF/UA9E0.pdf Official Unicode Consortium code chart] (PDF) |- style..." 7641 wikitext text/x-wiki {| class="wikitable nounderlines" style="border-collapse:collapse;background:var(--background-color-base,#fff);color:inherit;font-size:large;text-align:center" | colspan="17" style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small"| '''[[Myanmar Extended-B]]'''{{ref label|UA9E0_as_of_Unicode_version|1}}{{ref label|UA9E0_grey|2}}<br />[https://www.unicode.org/charts/PDF/UA9E0.pdf Official Unicode Consortium code chart] (PDF) |- style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | style="width:45pt" | &nbsp; || style="width:20pt" | 0 || style="width:20pt" | 1 || style="width:20pt" | 2 || style="width:20pt" | 3 || style="width:20pt" | 4 || style="width:20pt" | 5 || style="width:20pt" | 6 || style="width:20pt" | 7 || style="width:20pt" | 8 || style="width:20pt" | 9 || style="width:20pt" | A || style="width:20pt" | B || style="width:20pt" | C || style="width:20pt" | D || style="width:20pt" | E || style="width:20pt" | F |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small"| U+A9Ex | title="U+A9E0: MYANMAR LETTER SHAN GHA" | {{Script|Mymr| &#xA9E0;}} | title="U+A9E1: MYANMAR LETTER SHAN CHA" | {{Script|Mymr| &#xA9E1;}} | title="U+A9E2: MYANMAR LETTER SHAN JHA" | {{Script|Mymr| &#xA9E2;}} | title="U+A9E3: MYANMAR LETTER SHAN NNA" | {{Script|Mymr| &#xA9E3;}} | title="U+A9E4: MYANMAR LETTER SHAN BHA" | {{Script|Mymr| &#xA9E4;}} | title="U+A9E5: MYANMAR SIGN SHAN SAW" | {{Script|Mymr| &#xA9E5;}} | title="U+A9E6: MYANMAR MODIFIER LETTER SHAN REDUPLICATION" | {{Script|Mymr| &#xA9E6;}} | title="U+A9E7: MYANMAR LETTER TAI LAING NYA" | {{Script|Mymr| &#xA9E7;}} | title="U+A9E8: MYANMAR LETTER TAI LAING FA" | {{Script|Mymr| &#xA9E8;}} | title="U+A9E9: MYANMAR LETTER TAI LAING GA" | {{Script|Mymr| &#xA9E9;}} | title="U+A9EA: MYANMAR LETTER TAI LAING GHA" | {{Script|Mymr| &#xA9EA;}} | title="U+A9EB: MYANMAR LETTER TAI LAING JA" | {{Script|Mymr| &#xA9EB;}} | title="U+A9EC: MYANMAR LETTER TAI LAING JHA" | {{Script|Mymr| &#xA9EC;}} | title="U+A9ED: MYANMAR LETTER TAI LAING DDA" | {{Script|Mymr| &#xA9ED;}} | title="U+A9EE: MYANMAR LETTER TAI LAING DDHA" | {{Script|Mymr| &#xA9EE;}} | title="U+A9EF: MYANMAR LETTER TAI LAING NNA" | {{Script|Mymr| &#xA9EF;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small"| U+A9Fx | title="U+A9F0: MYANMAR TAI LAING DIGIT ZERO" | {{Script|Mymr| &#xA9F0;}} | title="U+A9F1: MYANMAR TAI LAING DIGIT ONE" | {{Script|Mymr| &#xA9F1;}} | title="U+A9F2: MYANMAR TAI LAING DIGIT TWO" | {{Script|Mymr| &#xA9F2;}} | title="U+A9F3: MYANMAR TAI LAING DIGIT THREE" | {{Script|Mymr| &#xA9F3;}} | title="U+A9F4: MYANMAR TAI LAING DIGIT FOUR" | {{Script|Mymr| &#xA9F4;}} | title="U+A9F5: MYANMAR TAI LAING DIGIT FIVE" | {{Script|Mymr| &#xA9F5;}} | title="U+A9F6: MYANMAR TAI LAING DIGIT SIX" | {{Script|Mymr| &#xA9F6;}} | title="U+A9F7: MYANMAR TAI LAING DIGIT SEVEN" | {{Script|Mymr| &#xA9F7;}} | title="U+A9F8: MYANMAR TAI LAING DIGIT EIGHT" | {{Script|Mymr| &#xA9F8;}} | title="U+A9F9: MYANMAR TAI LAING DIGIT NINE" | {{Script|Mymr| &#xA9F9;}} | title="U+A9FA: MYANMAR LETTER TAI LAING LLA" | {{Script|Mymr| &#xA9FA;}} | title="U+A9FB: MYANMAR LETTER TAI LAING DA" | {{Script|Mymr| &#xA9FB;}} | title="U+A9FC: MYANMAR LETTER TAI LAING DHA" | {{Script|Mymr| &#xA9FC;}} | title="U+A9FD: MYANMAR LETTER TAI LAING BA" | {{Script|Mymr| &#xA9FD;}} | title="U+A9FE: MYANMAR LETTER TAI LAING BHA" | {{Script|Mymr| &#xA9FE;}} | title="Reserved" style="background-color:var(--background-color-disabled,#c8ccd1);color:inherit;" | |- | colspan="17" style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small;text-align:left"| '''Notes''' :1.{{note|UA9E0_as_of_Unicode_version}}{{Unicode version|prefix=Asof|version=17.0}} :2.{{note|UA9E0_grey}}Grey area indicates non-assigned code point |}<noinclude> {{documentation|template:Unicode chart/block documentation}} </noinclude> 22mv4jgisxvycdptioikd892smyzyet ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Script/Myanmar 10 2483 7642 2026-06-17T13:13:46Z Saimawnkham 28 Created page with "{{{{{|safesubst:}}}ifsubst|1=|2=<templatestyles src="Script/styles_myanmar.css" />}}<span class="script-myanmar">{{{1}}}</span><!-- --><noinclude>{{Script/basic documentation}}</noinclude>" 7642 wikitext text/x-wiki {{{{{|safesubst:}}}ifsubst|1=|2=<templatestyles src="Script/styles_myanmar.css" />}}<span class="script-myanmar">{{{1}}}</span><!-- --><noinclude>{{Script/basic documentation}}</noinclude> 0y22c0m8uzdfycco4ja5r0hwxvjx2xs ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Script/styles myanmar.css 10 2484 7643 2026-06-17T13:14:26Z Saimawnkham 28 Created page with "/* {{pp-template}} */ .script-myanmar { line-height: 100%; font-family: Pyidaungsu, 'Myanmar Text', Myanmar3, Myanmar2, Myanmar1, Padauk, 'Noto Sans Myanmar', mm3web, TharLon, 'Masterpiece Uni Sans', Parabaik, Yunghkio, Thanlwin, 'Win Uni Innwa', 'MyMyanmar Unicode', 'WinUni Innwa'; }" 7643 sanitized-css text/css /* {{pp-template}} */ .script-myanmar { line-height: 100%; font-family: Pyidaungsu, 'Myanmar Text', Myanmar3, Myanmar2, Myanmar1, Padauk, 'Noto Sans Myanmar', mm3web, TharLon, 'Masterpiece Uni Sans', Parabaik, Yunghkio, Thanlwin, 'Win Uni Innwa', 'MyMyanmar Unicode', 'WinUni Innwa'; } 9woboexyyy320tp4lb1z56327t5d9k6 ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Unicode chart/block documentation 10 2485 7644 2026-06-17T13:14:55Z Saimawnkham 28 Created page with "{{Documentation subpage}} <!-- Categories go at the bottom of this page and interwikis go in Wikidata. --> '''{{tl|{{PAGENAME}}|nolink=yes}}''' provides a list of [[Unicode]] code points in the '''{{#invoke:String|replace|{{PAGENAME}}|Unicode chart |}}''' block. == Usage == To display the Unicode block: : {{tlx|{{PAGENAME}}}} This template does not take any parameters. <includeonly>{{Sandbox other|| <!-- Categories go here, and interwikis go in Wikidata --> Category..." 7644 wikitext text/x-wiki {{Documentation subpage}} <!-- Categories go at the bottom of this page and interwikis go in Wikidata. --> '''{{tl|{{PAGENAME}}|nolink=yes}}''' provides a list of [[Unicode]] code points in the '''{{#invoke:String|replace|{{PAGENAME}}|Unicode chart |}}''' block. == Usage == To display the Unicode block: : {{tlx|{{PAGENAME}}}} This template does not take any parameters. <includeonly>{{Sandbox other|| <!-- Categories go here, and interwikis go in Wikidata --> [[Category:Unicode charts|{{#invoke:String|replace|{{PAGENAME}}|Unicode chart |}}]] }}</includeonly> qerep3tsf7kwvxv3v9vxz0aq20fb6go ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Unicode chart Myanmar Extended-A 10 2486 7645 2026-06-17T13:15:26Z Saimawnkham 28 Created page with "{| class="wikitable nounderlines" style="border-collapse:collapse;background:var(--background-color-base,#fff);color:inherit;font-size:large;text-align:center" | colspan="17" style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | '''[[Myanmar Extended-A]]'''{{ref label|UAA60_as_of_Unicode_version|1}}<br />[https://www.unicode.org/charts/PDF/UAA60.pdf Official Unicode Consortium code chart] (PDF) |- style="background:var(--backgr..." 7645 wikitext text/x-wiki {| class="wikitable nounderlines" style="border-collapse:collapse;background:var(--background-color-base,#fff);color:inherit;font-size:large;text-align:center" | colspan="17" style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | '''[[Myanmar Extended-A]]'''{{ref label|UAA60_as_of_Unicode_version|1}}<br />[https://www.unicode.org/charts/PDF/UAA60.pdf Official Unicode Consortium code chart] (PDF) |- style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | style="width:45pt" | &nbsp; || style="width:20pt" | 0 || style="width:20pt" | 1 || style="width:20pt" | 2 || style="width:20pt" | 3 || style="width:20pt" | 4 || style="width:20pt" | 5 || style="width:20pt" | 6 || style="width:20pt" | 7 || style="width:20pt" | 8 || style="width:20pt" | 9 || style="width:20pt" | A || style="width:20pt" | B || style="width:20pt" | C || style="width:20pt" | D || style="width:20pt" | E || style="width:20pt" | F |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+AA6x | title="U+AA60: MYANMAR LETTER KHAMTI GA" | {{Script|Mymr| &#xAA60;}} | title="U+AA61: MYANMAR LETTER KHAMTI CA" | {{Script|Mymr| &#xAA61;}} | title="U+AA62: MYANMAR LETTER KHAMTI CHA" | {{Script|Mymr| &#xAA62;}} | title="U+AA63: MYANMAR LETTER KHAMTI JA" | {{Script|Mymr| &#xAA63;}} | title="U+AA64: MYANMAR LETTER KHAMTI JHA" | {{Script|Mymr| &#xAA64;}} | title="U+AA65: MYANMAR LETTER KHAMTI NYA" | {{Script|Mymr| &#xAA65;}} | title="U+AA66: MYANMAR LETTER KHAMTI TTA" | {{Script|Mymr| &#xAA66;}} | title="U+AA67: MYANMAR LETTER KHAMTI TTHA" | {{Script|Mymr| &#xAA67;}} | title="U+AA68: MYANMAR LETTER KHAMTI DDA" | {{Script|Mymr| &#xAA68;}} | title="U+AA69: MYANMAR LETTER KHAMTI DDHA" | {{Script|Mymr| &#xAA69;}} | title="U+AA6A: MYANMAR LETTER KHAMTI DHA" | {{Script|Mymr| &#xAA6A;}} | title="U+AA6B: MYANMAR LETTER KHAMTI NA" | {{Script|Mymr| &#xAA6B;}} | title="U+AA6C: MYANMAR LETTER KHAMTI SA" | {{Script|Mymr| &#xAA6C;}} | title="U+AA6D: MYANMAR LETTER KHAMTI HA" | {{Script|Mymr| &#xAA6D;}} | title="U+AA6E: MYANMAR LETTER KHAMTI HHA (alias MYANMAR LETTER KHAMTI LLA)" | {{Script|Mymr| &#xAA6E;}} | title="U+AA6F: MYANMAR LETTER KHAMTI FA" | {{Script|Mymr| &#xAA6F;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+AA7x | title="U+AA70: MYANMAR MODIFIER LETTER KHAMTI REDUPLICATION" | {{Script|Mymr| &#xAA70;}} | title="U+AA71: MYANMAR LETTER KHAMTI XA" | {{Script|Mymr| &#xAA71;}} | title="U+AA72: MYANMAR LETTER KHAMTI ZA" | {{Script|Mymr| &#xAA72;}} | title="U+AA73: MYANMAR LETTER KHAMTI RA" | {{Script|Mymr| &#xAA73;}} | title="U+AA74: MYANMAR LOGOGRAM KHAMTI OAY" | {{Script|Mymr| &#xAA74;}} | title="U+AA75: MYANMAR LOGOGRAM KHAMTI QN" | {{Script|Mymr| &#xAA75;}} | title="U+AA76: MYANMAR LOGOGRAM KHAMTI HM" | {{Script|Mymr| &#xAA76;}} | title="U+AA77: MYANMAR SYMBOL AITON EXCLAMATION" | {{Script|Mymr| &#xAA77;}} | title="U+AA78: MYANMAR SYMBOL AITON ONE" | {{Script|Mymr| &#xAA78;}} | title="U+AA79: MYANMAR SYMBOL AITON TWO" | {{Script|Mymr| &#xAA79;}} | title="U+AA7A: MYANMAR LETTER AITON RA" | {{Script|Mymr| &#xAA7A;}} | title="U+AA7B: MYANMAR SIGN PAO KAREN TONE" | {{Script|Mymr| &#xAA7B;}} | title="U+AA7C: MYANMAR SIGN TAI LAING TONE-2" | {{Script|Mymr| &#xAA7C;}} | title="U+AA7D: MYANMAR SIGN TAI LAING TONE-5" | {{Script|Mymr| &#xAA7D;}} | title="U+AA7E: MYANMAR LETTER SHWE PALAUNG CHA" | {{Script|Mymr| &#xAA7E;}} | title="U+AA7F: MYANMAR LETTER SHWE PALAUNG SHA" | {{Script|Mymr| &#xAA7F;}} |- | colspan="17" style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small;text-align:left" | '''Notes''' :1.{{note|UAA60_as_of_Unicode_version}}{{Unicode version|prefix=Asof|version=17.0}} |}<noinclude> {{documentation|template:Unicode chart/block documentation}} </noinclude> 1rrcr137fglu7kqxuk7vn22e5lk3bun ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Unicode chart Myanmar 10 2487 7646 2026-06-17T13:16:16Z Saimawnkham 28 Created page with "{| class="wikitable nounderlines" style="border-collapse:collapse;background:var(--background-color-base,#fff);color:inherit;font-size:large;text-align:center" | colspan="17" style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | '''[[Myanmar (Unicode block)|Myanmar]]'''{{ref label|U1000_as_of_Unicode_version|1}}<br />[https://www.unicode.org/charts/PDF/U1000.pdf Official Unicode Consortium code chart] (PDF) |- style="background..." 7646 wikitext text/x-wiki {| class="wikitable nounderlines" style="border-collapse:collapse;background:var(--background-color-base,#fff);color:inherit;font-size:large;text-align:center" | colspan="17" style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | '''[[Myanmar (Unicode block)|Myanmar]]'''{{ref label|U1000_as_of_Unicode_version|1}}<br />[https://www.unicode.org/charts/PDF/U1000.pdf Official Unicode Consortium code chart] (PDF) |- style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | style="width:45pt" | &nbsp; || style="width:20pt" | 0 || style="width:20pt" | 1 || style="width:20pt" | 2 || style="width:20pt" | 3 || style="width:20pt" | 4 || style="width:20pt" | 5 || style="width:20pt" | 6 || style="width:20pt" | 7 || style="width:20pt" | 8 || style="width:20pt" | 9 || style="width:20pt" | A || style="width:20pt" | B || style="width:20pt" | C || style="width:20pt" | D || style="width:20pt" | E || style="width:20pt" | F |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+100x | title="U+1000: MYANMAR LETTER KA" | {{Script|Mymr| &#x1000;}} | title="U+1001: MYANMAR LETTER KHA" | {{Script|Mymr| &#x1001;}} | title="U+1002: MYANMAR LETTER GA" | {{Script|Mymr| &#x1002;}} | title="U+1003: MYANMAR LETTER GHA" | {{Script|Mymr| &#x1003;}} | title="U+1004: MYANMAR LETTER NGA" | {{Script|Mymr| &#x1004;}} | title="U+1005: MYANMAR LETTER CA" | {{Script|Mymr| &#x1005;}} | title="U+1006: MYANMAR LETTER CHA" | {{Script|Mymr| &#x1006;}} | title="U+1007: MYANMAR LETTER JA" | {{Script|Mymr| &#x1007;}} | title="U+1008: MYANMAR LETTER JHA" | {{Script|Mymr| &#x1008;}} | title="U+1009: MYANMAR LETTER NYA" | {{Script|Mymr| &#x1009;}} | title="U+100A: MYANMAR LETTER NNYA" | {{Script|Mymr| &#x100A;}} | title="U+100B: MYANMAR LETTER TTA" | {{Script|Mymr| &#x100B;}} | title="U+100C: MYANMAR LETTER TTHA" | {{Script|Mymr| &#x100C;}} | title="U+100D: MYANMAR LETTER DDA" | {{Script|Mymr| &#x100D;}} | title="U+100E: MYANMAR LETTER DDHA" | {{Script|Mymr| &#x100E;}} | title="U+100F: MYANMAR LETTER NNA" | {{Script|Mymr| &#x100F;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+101x | title="U+1010: MYANMAR LETTER TA" | {{Script|Mymr| &#x1010;}} | title="U+1011: MYANMAR LETTER THA" | {{Script|Mymr| &#x1011;}} | title="U+1012: MYANMAR LETTER DA" | {{Script|Mymr| &#x1012;}} | title="U+1013: MYANMAR LETTER DHA" | {{Script|Mymr| &#x1013;}} | title="U+1014: MYANMAR LETTER NA" | {{Script|Mymr| &#x1014;}} | title="U+1015: MYANMAR LETTER PA" | {{Script|Mymr| &#x1015;}} | title="U+1016: MYANMAR LETTER PHA" | {{Script|Mymr| &#x1016;}} | title="U+1017: MYANMAR LETTER BA" | {{Script|Mymr| &#x1017;}} | title="U+1018: MYANMAR LETTER BHA" | {{Script|Mymr| &#x1018;}} | title="U+1019: MYANMAR LETTER MA" | {{Script|Mymr| &#x1019;}} | title="U+101A: MYANMAR LETTER YA" | {{Script|Mymr| &#x101A;}} | title="U+101B: MYANMAR LETTER RA" | {{Script|Mymr| &#x101B;}} | title="U+101C: MYANMAR LETTER LA" | {{Script|Mymr| &#x101C;}} | title="U+101D: MYANMAR LETTER WA" | {{Script|Mymr| &#x101D;}} | title="U+101E: MYANMAR LETTER SA" | {{Script|Mymr| &#x101E;}} | title="U+101F: MYANMAR LETTER HA" | {{Script|Mymr| &#x101F;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+102x | title="U+1020: MYANMAR LETTER LLA" | {{Script|Mymr| &#x1020;}} | title="U+1021: MYANMAR LETTER A" | {{Script|Mymr| &#x1021;}} | title="U+1022: MYANMAR LETTER SHAN A" | {{Script|Mymr| &#x1022;}} | title="U+1023: MYANMAR LETTER I" | {{Script|Mymr| &#x1023;}} | title="U+1024: MYANMAR LETTER II" | {{Script|Mymr| &#x1024;}} | title="U+1025: MYANMAR LETTER U" | {{Script|Mymr| &#x1025;}} | title="U+1026: MYANMAR LETTER UU" | {{Script|Mymr| &#x1026;}} | title="U+1027: MYANMAR LETTER E" | {{Script|Mymr| &#x1027;}} | title="U+1028: MYANMAR LETTER MON E" | {{Script|Mymr| &#x1028;}} | title="U+1029: MYANMAR LETTER O" | {{Script|Mymr| &#x1029;}} | title="U+102A: MYANMAR LETTER AU" | {{Script|Mymr| &#x102A;}} | title="U+102B: MYANMAR VOWEL SIGN TALL AA" | {{Script|Mymr| &#x102B;}} | title="U+102C: MYANMAR VOWEL SIGN AA" | {{Script|Mymr| &#x102C;}} | title="U+102D: MYANMAR VOWEL SIGN I" | {{Script|Mymr| &#x102D;}} | title="U+102E: MYANMAR VOWEL SIGN II" | {{Script|Mymr| &#x102E;}} | title="U+102F: MYANMAR VOWEL SIGN U" | {{Script|Mymr| &#x102F;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+103x | title="U+1030: MYANMAR VOWEL SIGN UU" | {{Script|Mymr| &#x1030;}} | title="U+1031: MYANMAR VOWEL SIGN E" | {{Script|Mymr| &#x1031;}} | title="U+1032: MYANMAR VOWEL SIGN AI" | {{Script|Mymr| &#x1032;}} | title="U+1033: MYANMAR VOWEL SIGN MON II" | {{Script|Mymr| &#x1033;}} | title="U+1034: MYANMAR VOWEL SIGN MON O" | {{Script|Mymr| &#x1034;}} | title="U+1035: MYANMAR VOWEL SIGN E ABOVE" | {{Script|Mymr| &#x1035;}} | title="U+1036: MYANMAR SIGN ANUSVARA" | {{Script|Mymr| &#x1036;}} | title="U+1037: MYANMAR SIGN DOT BELOW" | {{Script|Mymr| &#x1037;}} | title="U+1038: MYANMAR SIGN VISARGA" | {{Script|Mymr| &#x1038;}} | title="U+1039: MYANMAR SIGN VIRAMA" | {{border|{{spaces|3}}{{Script|Mymr| &#x1039;}}{{spaces|1}}|style=dashed|color=black|lh=1em}} | title="U+103A: MYANMAR SIGN ASAT" | {{Script|Mymr| &#x103A;}} | title="U+103B: MYANMAR CONSONANT SIGN MEDIAL YA" | {{Script|Mymr| &#x103B;}} | title="U+103C: MYANMAR CONSONANT SIGN MEDIAL RA" | {{Script|Mymr| &#x103C;}} | title="U+103D: MYANMAR CONSONANT SIGN MEDIAL WA" | {{Script|Mymr| &#x103D;}} | title="U+103E: MYANMAR CONSONANT SIGN MEDIAL HA" | {{Script|Mymr| &#x103E;}} | title="U+103F: MYANMAR LETTER GREAT SA" | {{Script|Mymr| &#x103F;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+104x | title="U+1040: MYANMAR DIGIT ZERO" | {{Script|Mymr| &#x1040;}} | title="U+1041: MYANMAR DIGIT ONE" | {{Script|Mymr| &#x1041;}} | title="U+1042: MYANMAR DIGIT TWO" | {{Script|Mymr| &#x1042;}} | title="U+1043: MYANMAR DIGIT THREE" | {{Script|Mymr| &#x1043;}} | title="U+1044: MYANMAR DIGIT FOUR" | {{Script|Mymr| &#x1044;}} | title="U+1045: MYANMAR DIGIT FIVE" | {{Script|Mymr| &#x1045;}} | title="U+1046: MYANMAR DIGIT SIX" | {{Script|Mymr| &#x1046;}} | title="U+1047: MYANMAR DIGIT SEVEN" | {{Script|Mymr| &#x1047;}} | title="U+1048: MYANMAR DIGIT EIGHT" | {{Script|Mymr| &#x1048;}} | title="U+1049: MYANMAR DIGIT NINE" | {{Script|Mymr| &#x1049;}} | title="U+104A: MYANMAR SIGN LITTLE SECTION" | {{Script|Mymr| &#x104A;}} | title="U+104B: MYANMAR SIGN SECTION" | {{Script|Mymr| &#x104B;}} | title="U+104C: MYANMAR SYMBOL LOCATIVE" | {{Script|Mymr| &#x104C;}} | title="U+104D: MYANMAR SYMBOL COMPLETED" | {{Script|Mymr| &#x104D;}} | title="U+104E: MYANMAR SYMBOL AFOREMENTIONED" | {{Script|Mymr| &#x104E;}} | title="U+104F: MYANMAR SYMBOL GENITIVE" | {{Script|Mymr| &#x104F;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+105x | title="U+1050: MYANMAR LETTER SHA" | {{Script|Mymr| &#x1050;}} | title="U+1051: MYANMAR LETTER SSA" | {{Script|Mymr| &#x1051;}} | title="U+1052: MYANMAR LETTER VOCALIC R" | {{Script|Mymr| &#x1052;}} | title="U+1053: MYANMAR LETTER VOCALIC RR" | {{Script|Mymr| &#x1053;}} | title="U+1054: MYANMAR LETTER VOCALIC L" | {{Script|Mymr| &#x1054;}} | title="U+1055: MYANMAR LETTER VOCALIC LL" | {{Script|Mymr| &#x1055;}} | title="U+1056: MYANMAR VOWEL SIGN VOCALIC R" | {{Script|Mymr| &#x1056;}} | title="U+1057: MYANMAR VOWEL SIGN VOCALIC RR" | {{Script|Mymr| &#x1057;}} | title="U+1058: MYANMAR VOWEL SIGN VOCALIC L" | {{Script|Mymr| &#x1058;}} | title="U+1059: MYANMAR VOWEL SIGN VOCALIC LL" | {{Script|Mymr| &#x1059;}} | title="U+105A: MYANMAR LETTER MON NGA" | {{Script|Mymr| &#x105A;}} | title="U+105B: MYANMAR LETTER MON JHA" | {{Script|Mymr| &#x105B;}} | title="U+105C: MYANMAR LETTER MON BBA" | {{Script|Mymr| &#x105C;}} | title="U+105D: MYANMAR LETTER MON BBE" | {{Script|Mymr| &#x105D;}} | title="U+105E: MYANMAR CONSONANT SIGN MON MEDIAL NA" | {{Script|Mymr| &#x105E;}} | title="U+105F: MYANMAR CONSONANT SIGN MON MEDIAL MA" | {{Script|Mymr| &#x105F;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+106x | title="U+1060: MYANMAR CONSONANT SIGN MON MEDIAL LA" | {{Script|Mymr| &#x1060;}} | title="U+1061: MYANMAR LETTER SGAW KAREN SHA" | {{Script|Mymr| &#x1061;}} | title="U+1062: MYANMAR VOWEL SIGN SGAW KAREN EU" | {{Script|Mymr| &#x1062;}} | title="U+1063: MYANMAR TONE MARK SGAW KAREN HATHI" | {{Script|Mymr| &#x1063;}} | title="U+1064: MYANMAR TONE MARK SGAW KAREN KE PHO" | {{Script|Mymr| &#x1064;}} | title="U+1065: MYANMAR LETTER WESTERN PWO KAREN THA" | {{Script|Mymr| &#x1065;}} | title="U+1066: MYANMAR LETTER WESTERN PWO KAREN PWA" | {{Script|Mymr| &#x1066;}} | title="U+1067: MYANMAR VOWEL SIGN WESTERN PWO KAREN EU" | {{Script|Mymr| &#x1067;}} | title="U+1068: MYANMAR VOWEL SIGN WESTERN PWO KAREN UE" | {{Script|Mymr| &#x1068;}} | title="U+1069: MYANMAR SIGN WESTERN PWO KAREN TONE-1" | {{Script|Mymr| &#x1069;}} | title="U+106A: MYANMAR SIGN WESTERN PWO KAREN TONE-2" | {{Script|Mymr| &#x106A;}} | title="U+106B: MYANMAR SIGN WESTERN PWO KAREN TONE-3" | {{Script|Mymr| &#x106B;}} | title="U+106C: MYANMAR SIGN WESTERN PWO KAREN TONE-4" | {{Script|Mymr| &#x106C;}} | title="U+106D: MYANMAR SIGN WESTERN PWO KAREN TONE-5" | {{Script|Mymr| &#x106D;}} | title="U+106E: MYANMAR LETTER EASTERN PWO KAREN NNA" | {{Script|Mymr| &#x106E;}} | title="U+106F: MYANMAR LETTER EASTERN PWO KAREN YWA" | {{Script|Mymr| &#x106F;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+107x | title="U+1070: MYANMAR LETTER EASTERN PWO KAREN GHWA" | {{Script|Mymr| &#x1070;}} | title="U+1071: MYANMAR VOWEL SIGN GEBA KAREN I" | {{Script|Mymr| &#x1071;}} | title="U+1072: MYANMAR VOWEL SIGN KAYAH OE" | {{Script|Mymr| &#x1072;}} | title="U+1073: MYANMAR VOWEL SIGN KAYAH U" | {{Script|Mymr| &#x1073;}} | title="U+1074: MYANMAR VOWEL SIGN KAYAH EE" | {{Script|Mymr| &#x1074;}} | title="U+1075: MYANMAR LETTER SHAN KA" | {{Script|Mymr| &#x1075;}} | title="U+1076: MYANMAR LETTER SHAN KHA" | {{Script|Mymr| &#x1076;}} | title="U+1077: MYANMAR LETTER SHAN GA" | {{Script|Mymr| &#x1077;}} | title="U+1078: MYANMAR LETTER SHAN CA" | {{Script|Mymr| &#x1078;}} | title="U+1079: MYANMAR LETTER SHAN ZA" | {{Script|Mymr| &#x1079;}} | title="U+107A: MYANMAR LETTER SHAN NYA" | {{Script|Mymr| &#x107A;}} | title="U+107B: MYANMAR LETTER SHAN DA" | {{Script|Mymr| &#x107B;}} | title="U+107C: MYANMAR LETTER SHAN NA" | {{Script|Mymr| &#x107C;}} | title="U+107D: MYANMAR LETTER SHAN PHA" | {{Script|Mymr| &#x107D;}} | title="U+107E: MYANMAR LETTER SHAN FA" | {{Script|Mymr| &#x107E;}} | title="U+107F: MYANMAR LETTER SHAN BA" | {{Script|Mymr| &#x107F;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+108x | title="U+1080: MYANMAR LETTER SHAN THA" | {{Script|Mymr| &#x1080;}} | title="U+1081: MYANMAR LETTER SHAN HA" | {{Script|Mymr| &#x1081;}} | title="U+1082: MYANMAR CONSONANT SIGN SHAN MEDIAL WA" | {{Script|Mymr| &#x1082;}} | title="U+1083: MYANMAR VOWEL SIGN SHAN AA" | {{Script|Mymr| &#x1083;}} | title="U+1084: MYANMAR VOWEL SIGN SHAN E" | {{Script|Mymr| &#x1084;}} | title="U+1085: MYANMAR VOWEL SIGN SHAN E ABOVE" | {{Script|Mymr| &#x1085;}} | title="U+1086: MYANMAR VOWEL SIGN SHAN FINAL Y" | {{Script|Mymr| &#x1086;}} | title="U+1087: MYANMAR SIGN SHAN TONE-2" | {{Script|Mymr| &#x1087;}} | title="U+1088: MYANMAR SIGN SHAN TONE-3" | {{Script|Mymr| &#x1088;}} | title="U+1089: MYANMAR SIGN SHAN TONE-5" | {{Script|Mymr| &#x1089;}} | title="U+108A: MYANMAR SIGN SHAN TONE-6" | {{Script|Mymr| &#x108A;}} | title="U+108B: MYANMAR SIGN SHAN COUNCIL TONE-2" | {{Script|Mymr| &#x108B;}} | title="U+108C: MYANMAR SIGN SHAN COUNCIL TONE-3" | {{Script|Mymr| &#x108C;}} | title="U+108D: MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE" | {{Script|Mymr| &#x108D;}} | title="U+108E: MYANMAR LETTER RUMAI PALAUNG FA" | {{Script|Mymr| &#x108E;}} | title="U+108F: MYANMAR SIGN RUMAI PALAUNG TONE-5" | {{Script|Mymr| &#x108F;}} |- | style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small" | U+109x | title="U+1090: MYANMAR SHAN DIGIT ZERO" | {{Script|Mymr| &#x1090;}} | title="U+1091: MYANMAR SHAN DIGIT ONE" | {{Script|Mymr| &#x1091;}} | title="U+1092: MYANMAR SHAN DIGIT TWO" | {{Script|Mymr| &#x1092;}} | title="U+1093: MYANMAR SHAN DIGIT THREE" | {{Script|Mymr| &#x1093;}} | title="U+1094: MYANMAR SHAN DIGIT FOUR" | {{Script|Mymr| &#x1094;}} | title="U+1095: MYANMAR SHAN DIGIT FIVE" | {{Script|Mymr| &#x1095;}} | title="U+1096: MYANMAR SHAN DIGIT SIX" | {{Script|Mymr| &#x1096;}} | title="U+1097: MYANMAR SHAN DIGIT SEVEN" | {{Script|Mymr| &#x1097;}} | title="U+1098: MYANMAR SHAN DIGIT EIGHT" | {{Script|Mymr| &#x1098;}} | title="U+1099: MYANMAR SHAN DIGIT NINE" | {{Script|Mymr| &#x1099;}} | title="U+109A: MYANMAR SIGN KHAMTI TONE-1" | {{Script|Mymr| &#x109A;}} | title="U+109B: MYANMAR SIGN KHAMTI TONE-3" | {{Script|Mymr| &#x109B;}} | title="U+109C: MYANMAR VOWEL SIGN AITON A" | {{Script|Mymr| &#x109C;}} | title="U+109D: MYANMAR VOWEL SIGN AITON AI" | {{Script|Mymr| &#x109D;}} | title="U+109E: MYANMAR SYMBOL SHAN ONE" | {{Script|Mymr| &#x109E;}} | title="U+109F: MYANMAR SYMBOL SHAN EXCLAMATION" | {{Script|Mymr| &#x109F;}} |- | colspan="17" style="background:var(--background-color-neutral-subtle,#f8f9fa);color:inherit;font-size:small;text-align:left" | '''Notes''' :1.{{note|U1000_as_of_Unicode_version}}{{Unicode version|prefix=Asof|version=17.0}} |}<noinclude> {{documentation|template:Unicode chart/block documentation}} </noinclude> 42ns0ivd3rq2wyuve3gsucrqyxdwhjx ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Border 10 2488 7647 2026-06-17T13:16:51Z Saimawnkham 28 Created page with "<{{#if:{{{div|}}}|div|span}} style="display:{{{display|{{#if:{{{noinline|}}}|table-cell|inline-block}}}}};<!--("table-cell" seemingly ignored by IE)--> <!--border-collapse:collapse;--> border:{{{width|1px}}} {{{style|solid}}} {{{color|#ddd}}}; {{#if:{{{lh|{{{line-height|}}}}}}|line-height:{{{lh|{{{line-height|}}}}}};}} {{{style2|}}}">{{{1}}}</{{#if:{{{div|}}}|div|span}}><noinclude>{{documentation}} <!--Please add any interwiki links etc on the /doc page, not here - thank..." 7647 wikitext text/x-wiki <{{#if:{{{div|}}}|div|span}} style="display:{{{display|{{#if:{{{noinline|}}}|table-cell|inline-block}}}}};<!--("table-cell" seemingly ignored by IE)--> <!--border-collapse:collapse;--> border:{{{width|1px}}} {{{style|solid}}} {{{color|#ddd}}}; {{#if:{{{lh|{{{line-height|}}}}}}|line-height:{{{lh|{{{line-height|}}}}}};}} {{{style2|}}}">{{{1}}}</{{#if:{{{div|}}}|div|span}}><noinclude>{{documentation}} <!--Please add any interwiki links etc on the /doc page, not here - thanks!--> </noinclude> lzb7eo3tdgdlau9jtsgd43icesjsoso ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Border/doc 10 2489 7648 2026-06-17T13:17:14Z Saimawnkham 28 Created page with "{{Documentation subpage}} {{High-use}} <!-- EDIT TEMPLATE DOCUMENTATION BELOW THIS LINE --> {{template shortcut|Bor}} This template is used to place a customized border around text or an image. Note, to add a plain border to an image, use the <code><nowiki>|border</nowiki></code> parameter in <code><nowiki>[[File:...]]</nowiki></code> (see [[Wikipedia:Picture tutorial#Border|Wikipedia:Picture tutorial]]). __NOTOC__ == Syntax == ===Basic=== Basic usage is <code><nowik..." 7648 wikitext text/x-wiki {{Documentation subpage}} {{High-use}} <!-- EDIT TEMPLATE DOCUMENTATION BELOW THIS LINE --> {{template shortcut|Bor}} This template is used to place a customized border around text or an image. Note, to add a plain border to an image, use the <code><nowiki>|border</nowiki></code> parameter in <code><nowiki>[[File:...]]</nowiki></code> (see [[Wikipedia:Picture tutorial#Border|Wikipedia:Picture tutorial]]). __NOTOC__ == Syntax == ===Basic=== Basic usage is <code><nowiki>{{border|</nowiki>''element''}}</code>, where ''element'' is the text, image, etc. around which the border is to appear. The border will be a solid light grey color (#ddd) and 1px (1 pixel) wide by default (for custom settings; see below). <!--If applying the template appears to shift the ''element'''s position, try adding the <code>display=noinline</code> parameter described below.--> : <code><nowiki>{{border|Abc}}</nowiki></code> &rarr; {{border|Abc}} All options show: : <code><nowiki>{{border |</nowiki>''element'' |display=''display'' |width=''width'' |style=''style'' |style2=''2nd style'' |color=''color'' |lh=''line height''}}</code> : <code><nowiki>{{border |Abc|width=2px|style=dotted |color=red}}</nowiki></code> &rarr; {{border |Abc|width=2px|style=dotted |color=red}} ====Parameters==== ; ''element'': (required) The element (image, text, etc) around which the border is to appear. ; ''display'' The ''element'''s display method: ''inline-block'' (default if the parameter is not used), ''block'', ''inline'', ''table'', ''flex'', etc. ; ''width'': The width (thickness) of the border (default is <code>1px</code>). ; ''style'' The border's style: ''solid'' (default if the parameter is not used), ''dotted'', ''dashed'', ''double'', ''groove'', ''ridge'', ''inset'' or ''outset''. ; ''style2'': Additional CSS properties can be used in this template. ; ''color'': The border's color (default #ddd, otherwise recommend a [[Web colors#X11 color names|named color]]). =====Inline of element===== ; ''noinline'': Set {{para|noinline|&lt;anytext>}} to replace the default <code>inline-block</code> display style. :Some text {{border |Abc|width=2px|style=dotted|noinline=indeed}} :Inline reading {{border |Abc|width=2px|style=dotted}} ; ''div'': Set {{para|div|&lt;anytext>}} to wrap the template's content in {{tag|div}} tags instead of the default {{tag|span}} tags. This is required if the template's content uses div tags or contains multiple lines of text. == See also == * {{tl|color box}} * {{tl|legend inline}} <includeonly>{{Sandbox other|| <!--Categories--> [[Category:Text color templates]] }}</includeonly> b3hae94ciunfpuppz5ftnoydl4nndun ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Bor 10 2490 7649 2026-06-17T13:17:37Z Saimawnkham 28 Redirected page to [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Border]] 7649 wikitext text/x-wiki #REDIRECT [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Border]] fve30qkde5eb18ynef24kg23s9pwauw ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box 10 2491 7650 2026-06-17T13:18:00Z Saimawnkham 28 Created page with "<templatestyles src="Legend/styles.css" /><span class="legend-color mw-no-invert" style="forced-color-adjust:none; {{#if:{{{1|}}}|{{greater color contrast ratio|{{{1}}}|black|white|css=y}} }}{{#if:{{{3|}}}|color:{{{3}}}; }}{{#if:{{{border|}}}|border:1px solid {{{border}}}; }}{{#if:{{{padding|}}}|padding:{{{padding}}};}}">{{#if:{{{2|}}} |{{#if:{{{padding|}}}|{{{2}}}|&nbsp;{{{2}}}&nbsp;}} |&nbsp;}}</span><noinclude> {{documentation}}</noinclude>" 7650 wikitext text/x-wiki <templatestyles src="Legend/styles.css" /><span class="legend-color mw-no-invert" style="forced-color-adjust:none; {{#if:{{{1|}}}|{{greater color contrast ratio|{{{1}}}|black|white|css=y}} }}{{#if:{{{3|}}}|color:{{{3}}}; }}{{#if:{{{border|}}}|border:1px solid {{{border}}}; }}{{#if:{{{padding|}}}|padding:{{{padding}}};}}">{{#if:{{{2|}}} |{{#if:{{{padding|}}}|{{{2}}}|&nbsp;{{{2}}}&nbsp;}} |&nbsp;}}</span><noinclude> {{documentation}}</noinclude> 7mfqty5xaifm6r4z5xswt057lzwgp52 ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Legend/styles.css 10 2492 7651 2026-06-17T13:18:28Z Saimawnkham 28 Created page with "/* {{pp-template}} */ .legend { page-break-inside: avoid; break-inside: avoid-column; } .legend-color { display: inline-block; min-width: 1.25em; height: 1.25em; line-height: 1.25; margin: 1px 0; text-align: center; border: 1px solid black; background-color: transparent; color: black; } .legend-text {/*empty for now, but part of the design!*/}" 7651 sanitized-css text/css /* {{pp-template}} */ .legend { page-break-inside: avoid; break-inside: avoid-column; } .legend-color { display: inline-block; min-width: 1.25em; height: 1.25em; line-height: 1.25; margin: 1px 0; text-align: center; border: 1px solid black; background-color: transparent; color: black; } .legend-text {/*empty for now, but part of the design!*/} snsolhs3l12896xqc89e8b5hu9itnmf ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box/doc 10 2493 7652 2026-06-17T13:18:42Z Saimawnkham 28 Created page with "{{Documentation subpage}} {{tsh|Colorbox|Colourbox|Colour box|Color square|Legend3}} {{For-text|the templates that display text in a colored box|{{tl|Divbox}} or [[Template:Mbox templates see also]]}} {{Uses TemplateStyles|Template:Legend/styles.css}} {{High-use}} <!-- PLEASE ADD CATEGORIES AT THE BOTTOM OF THIS PAGE --> ==Usage== {{Format TemplateData|JSON= { "params": { "1": { "label": "Color", "description": "Background color of the box.", "example": "Gre..." 7652 wikitext text/x-wiki {{Documentation subpage}} {{tsh|Colorbox|Colourbox|Colour box|Color square|Legend3}} {{For-text|the templates that display text in a colored box|{{tl|Divbox}} or [[Template:Mbox templates see also]]}} {{Uses TemplateStyles|Template:Legend/styles.css}} {{High-use}} <!-- PLEASE ADD CATEGORIES AT THE BOTTOM OF THIS PAGE --> ==Usage== {{Format TemplateData|JSON= { "params": { "1": { "label": "Color", "description": "Background color of the box.", "example": "Green", "type": "string", "required": true, "suggested": true }, "2": { "label": "Text", "description": "Adds text inside the box; box is otherwise an empty square.", "example": "Hello, world!", "type": "string", "suggested": true }, "3": { "label": "Text color", "description": "Sets the color of the text inside the box.", "example": "Yellow", "type": "string", "suggested": true, "default": "Either black or white; whichever has greater contrast." }, "border": { "label": "Border color", "description": "Sets the color of the border around the box.", "example": "#FF0", "type": "string", "default": "black" } }, "description": "<noexport><code>&#123;&#123;color box&#124;''color''&#124;''text''&#124;''text color''&#125;&#125;</code><br></noexport>Adds a rectangular color box. <ul><li>Colors are most commonly specified as either a color keyword or as the [[Web colors#Hex triplet|hexadecimal triplet]] representing an RGB combination. See the article [[web colors]] for details.</li><li>If specified, the text is centered within the box.</li></ul>", "format": "inline" } }} {| class="wikitable" |+ '''Examples''' |- ! Visual effect !! Markup |- | {{color box|Green}} || <code><nowiki>{{color box|Green}}</nowiki></code> |- | {{color box|Yellow|Default color for this text}} || <code><nowiki>{{color box|Yellow|Default color for this text}}</nowiki></code> |- | {{color box|Blue|Default color for this text}} || <code><nowiki>{{color box|Blue|Default color for this text}}</nowiki></code> |- | {{color box|SteelBlue|'''Using X11 color names'''|Gold}} || <code><nowiki>{{color box|SteelBlue|'''</nowiki>Using [[X11 color names]]<nowiki>'''|Gold}}</nowiki></code> |- | {{color box|#012345|''Using RGB hex triplets''|#FEDCBA}} || <code><nowiki>{{color box|#012345|''</nowiki>Using [[Web colors#Hex triplet|RGB hex triplet]]<nowiki>''|#FEDCBA}}</nowiki></code> |- | {{color box|Yellow|Red|#f00|border=#f00}} || <code><nowiki>{{color box|Yellow|Red|#f00|border=#f00}}</nowiki></code> |- | {{color box|white|bordercolor like wikitable|border=#A2A9B1}} || <code><nowiki>{{color box|white|bordercolor like wikitable|border=#A2A9B1}} </nowiki></code> |} == Variants == {{Color box templates}} == Supporting template == * {{tl|Greater color contrast ratio}} == See also == * {{tl|Infobox color}}, an infobox for the detailed description of a color. * {{tl|Legend}} <includeonly>{{Sandbox other| | <!-- CATEGORIES BELOW THIS LINE, PLEASE: --> [[Category:Color templates]] [[Category:Box templates]] }}</includeonly> 08kb99a8jfgouhpc9b81gstqbrvqro9 ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Colourbox 10 2494 7653 2026-06-17T13:19:05Z Saimawnkham 28 Redirected page to [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box]] 7653 wikitext text/x-wiki #REDIRECT [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box]] fdnhngihl6v4rmcldyfeuy2jfj69gzn ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Colour box 10 2495 7654 2026-06-17T13:19:07Z Saimawnkham 28 Redirected page to [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box]] 7654 wikitext text/x-wiki #REDIRECT [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box]] fdnhngihl6v4rmcldyfeuy2jfj69gzn ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color square 10 2496 7655 2026-06-17T13:19:09Z Saimawnkham 28 Redirected page to [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box]] 7655 wikitext text/x-wiki #REDIRECT [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box]] fdnhngihl6v4rmcldyfeuy2jfj69gzn ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Legend3 10 2497 7656 2026-06-17T13:19:11Z Saimawnkham 28 Redirected page to [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box]] 7656 wikitext text/x-wiki #REDIRECT [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box]] fdnhngihl6v4rmcldyfeuy2jfj69gzn ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box templates 10 2498 7657 2026-06-17T13:20:05Z Saimawnkham 28 Created page with "{|class="wikitable" |+ Color box templates {{VTE|1=Color box templates}} ! scope="col" | Template ! scope="col" | Description ! scope="col" | Example |- ! scope="row" | {{tl|Color box}} | Color box size with black borders and text color. Standard size. | {{Color box|orange}} or {{Color box|orange|ORANGE|white}} |- ! scope="row" | {{tl|Color box striped}} | Striped color box. Standard size. | {{Color box striped|orange}} |- ! scope="row" | {{tl|RouteBox}} | Borderless col..." 7657 wikitext text/x-wiki {|class="wikitable" |+ Color box templates {{VTE|1=Color box templates}} ! scope="col" | Template ! scope="col" | Description ! scope="col" | Example |- ! scope="row" | {{tl|Color box}} | Color box size with black borders and text color. Standard size. | {{Color box|orange}} or {{Color box|orange|ORANGE|white}} |- ! scope="row" | {{tl|Color box striped}} | Striped color box. Standard size. | {{Color box striped|orange}} |- ! scope="row" | {{tl|RouteBox}} | Borderless color box with text color and [[wikilink]]s. | {{RouteBox|ORANGE|Orange (colour|orange|white}} |- ! scope="row" | {{tl|Colorbull}} | Colored bullet with [[wikilink]]s. | {{colorbull|orange}} |- ! scope="row" | {{tl|Legend inline}} | Color box size with black borders. Standard size. | {{Legend inline|orange}} |- ! scope="row" | {{tl|Color sample}} | Color box size with black borders. Smaller size. | {{Color sample|orange}} |- ! scope="row" | {{tl|Swatch inline}} | | {{Swatch inline|orange|orange}} |- ! scope="row" | {{tl|Background color}} | | {{Background color|orange|orange}} |- ! scope="row" | {{tl|Rail color box}} | A version with more display options. Part of [[Module:Adjacent stations]] | {{Rail color box|Taipei Metro|O|ldot}}, {{Rail color box|San Diego Trolley|Orange|xroute}} |- ! scope="row" | {{tl|Diagonal split color box}} | Color box split diagonally. Standard size. | {{Diagonal split color box|LightGray|Orange|font-size=0.6em}} |}<noinclude> [[Category:Color templates]] [[Category:Box templates]] </noinclude> p10hymxkuh2yl495rtxxp7drc1ql978 ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box striped 10 2499 7658 2026-06-17T13:20:49Z Saimawnkham 28 Created page with "<templatestyles src="Legend/styles.css" /><span class="legend-color" style="background:repeating-linear-gradient({{{degrees|-45}}}deg, {{{1|}}} 0 {{#expr:2^{{{stripe|1}}}}}px, {{#if:{{{2|}}}|{{{2}}}|white}} 0 {{#expr:2*2^{{{stripe|1}}}}}px); border:1px solid {{{border|#000000}}}; text-align:center; color:{{#if:{{{4|}}}|{{{4}}}|{{greater color contrast ratio|{{{1|}}}{{#if:{{{2|}}}|{{!}}{{{2}}}|{{!}}white}}|black|white}}}};"> {{#if:{{{3|}}}|&nbsp;{{{3}}}&nbsp;|&nbsp;&nbsp;..." 7658 wikitext text/x-wiki <templatestyles src="Legend/styles.css" /><span class="legend-color" style="background:repeating-linear-gradient({{{degrees|-45}}}deg, {{{1|}}} 0 {{#expr:2^{{{stripe|1}}}}}px, {{#if:{{{2|}}}|{{{2}}}|white}} 0 {{#expr:2*2^{{{stripe|1}}}}}px); border:1px solid {{{border|#000000}}}; text-align:center; color:{{#if:{{{4|}}}|{{{4}}}|{{greater color contrast ratio|{{{1|}}}{{#if:{{{2|}}}|{{!}}{{{2}}}|{{!}}white}}|black|white}}}};"> {{#if:{{{3|}}}|&nbsp;{{{3}}}&nbsp;|&nbsp;&nbsp;&nbsp;&nbsp;}}</span><noinclude> {{documentation}} </noinclude> j8cd71v2xslswcnt1yop2zv7k40mncy ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Color box striped/doc 10 2500 7659 2026-06-17T13:21:14Z Saimawnkham 28 Created page with "{{Documentation subpage}} {{For-text|the templates that display text in a colored box|{{tl|Divbox}} or [[Template:Mbox templates see also]]}} <!-- PLEASE ADD CATEGORIES AT THE BOTTOM OF THIS PAGE --> ==Usage== {{Format TemplateData|JSON= { "params": { "1": { "label": "Color", "description": "Background color of the box.", "example": "Green", "type": "string", "required": true, "suggested": true }, "2": { "label": "Stripe color", "descripti..." 7659 wikitext text/x-wiki {{Documentation subpage}} {{For-text|the templates that display text in a colored box|{{tl|Divbox}} or [[Template:Mbox templates see also]]}} <!-- PLEASE ADD CATEGORIES AT THE BOTTOM OF THIS PAGE --> ==Usage== {{Format TemplateData|JSON= { "params": { "1": { "label": "Color", "description": "Background color of the box.", "example": "Green", "type": "string", "required": true, "suggested": true }, "2": { "label": "Stripe color", "description": "Stripe color of the box", "example": "blue", "type": "string", "required": false, "suggested": true,"default":"white" }, "3": { "label": "Text", "description": "Sets the text", "example": "Loren ipsum", "type": "string" }, "4": { "label": "Text color", "description": "Sets the text color", "example": "red", "type": "string", "default": "Either black or white or background color or stripe color if exists; whichever has greater contrast." }, "stripe": { "label": "Stripe width", "description": "Sets the width of the stripe.", "example": "2", "type": "number", "default": "1" },"border": { "label": "Border color", "description": "Sets the color of the border around the box.", "example": "#FF0", "type": "string", "default": "black" },"degrees": { "label": "Stripe degrees", "description": "Sets the degrees of the stripes.", "example": "180", "type": "number", "default": "-45"} }, "description": "<noexport><code>&#123;&#123;color box striped&#124;''color''&#124;''stripe color''&#124;''text''&#124;''text color''&#124;''stripe = ''&#124;''border = ''&#124;''degrees = '' &#125;&#125;</code><br></noexport>Adds a rectangular color box striped. <ul><li>Colors are most commonly specified as either a color keyword or as the [[Web colors#Hex triplet|hexadecimal triplet]] representing an RGB combination. See the article [[web colors]] for details.</li><li>If specified, the text is centered within the box.</li></ul>", "format": "inline" } }} {| class="wikitable" |+ '''Examples''' |- ! Visual effect !! Markup |- | {{color box striped|Green}} || <code><nowiki>{{color box striped|Green}}</nowiki></code> |- | {{color box striped|Yellow|Green}} || <code><nowiki> {{color box striped|Yellow|Green}} </nowiki></code> |- | {{color box striped|Blue|Green|degrees=180}} || <code><nowiki> {{color box striped|Blue|Green|degrees=180}} </nowiki></code> |- | {{color box striped|Blue|Red|striped = 2}} || <code><nowiki> {{color box striped|Blue|Red|striped =2}} </nowiki></code> |- | {{color box striped|SteelBlue|Gold|'''Using X11 color names'''}} || <code><nowiki>{{color box striped|SteelBlue|Gold|'''</nowiki>Using [[X11 color names]]<nowiki>'''}}</nowiki></code> |- | {{color box striped|#012345 |#FEDCBA |''Using RGB hex triplets''}} || <code><nowiki>{{color box striped|#012345|#FEDCBA|''</nowiki>Using [[Web colors#Hex triplet|RGB hex triplet]]<nowiki>''}}</nowiki></code> |- | {{color box striped|Gray|Yellow|Red|#f00|border=#f00}} || <code><nowiki> {{color box striped|Gray|Yellow|Red|#f00|border=#f00}} </nowiki></code> |- | {{color box striped|purple||bordercolor like wikitable|border=#A2A9B1}} || <code><nowiki>{{color box striped|purple||bordercolor like wikitable|border=#A2A9B1}} </nowiki></code> |} == Variants == {{Color box templates}} == Supporting template == * {{tl|Greater color contrast ratio}} == See also == * {{tl|Infobox color}}, an infobox for the detailed description of a color. * {{tl|Legend}} <includeonly>{{Sandbox other| | <!-- CATEGORIES BELOW THIS LINE, PLEASE: --> [[Category:Color templates]] [[Category:Box templates]] }}</includeonly> 6b6c43qohqfzx02ofiijiarulqsz110 ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:RouteBox 10 2501 7660 2026-06-17T13:21:31Z Saimawnkham 28 Created page with "<span style="background-color:{{{3|black}}}; color:{{{4|white}}}; border:0.1em solid {{{border|{{{3}}}}}};">&nbsp;{{{{{|safesubst:}}}#if:{{{2|}}}| [[{{{2}}}|<span style="color:{{{4|white}}}; {{{{{|safesubst:}}}#ifeq:{{{bold|}}}|no||font-weight:bold;}} font-size:inherit; white-space:nowrap;">{{{1}}}</span>]] | <span style="color:{{{4|white}}}; {{{{{|safesubst:}}}#ifeq:{{{bold|}}}|no||font-weight:bold;}} font-size:inherit; white-space:nowrap;">{{{1}}}</span> }}&nbsp;</span..." 7660 wikitext text/x-wiki <span style="background-color:{{{3|black}}}; color:{{{4|white}}}; border:0.1em solid {{{border|{{{3}}}}}};">&nbsp;{{{{{|safesubst:}}}#if:{{{2|}}}| [[{{{2}}}|<span style="color:{{{4|white}}}; {{{{{|safesubst:}}}#ifeq:{{{bold|}}}|no||font-weight:bold;}} font-size:inherit; white-space:nowrap;">{{{1}}}</span>]] | <span style="color:{{{4|white}}}; {{{{{|safesubst:}}}#ifeq:{{{bold|}}}|no||font-weight:bold;}} font-size:inherit; white-space:nowrap;">{{{1}}}</span> }}&nbsp;</span><noinclude>{{documentation}} </noinclude> n4ijgxcyl65h9zloxfqodtmd87bshrc ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:RouteBox/doc 10 2502 7661 2026-06-17T13:21:55Z Saimawnkham 28 Created page with "{{Documentation subpage}} {{High-use}} <!-- Categories and interwikis go at the bottom of this page. --> {{Template shortcut|Rbox}} This template is similar to {{tl|Color box}}, but provides for both [[wikilink]]s and text color and omits the contrasting border. == Usage == <code>&#123;&#123;RouteBox|''text''|''link''|''box color''|''text color''|''border=''|''bold=''}}</code> {| |- | *<code>RouteBox</code> |can be abbreviated to <code><nowiki>{{rbox|…}}</nowiki></co..." 7661 wikitext text/x-wiki {{Documentation subpage}} {{High-use}} <!-- Categories and interwikis go at the bottom of this page. --> {{Template shortcut|Rbox}} This template is similar to {{tl|Color box}}, but provides for both [[wikilink]]s and text color and omits the contrasting border. == Usage == <code>&#123;&#123;RouteBox|''text''|''link''|''box color''|''text color''|''border=''|''bold=''}}</code> {| |- | *<code>RouteBox</code> |can be abbreviated to <code><nowiki>{{rbox|…}}</nowiki></code> |- | *<code>''text''</code> |text (bold) to be displayed in the box |- | *<code>''link''</code> |any valid wikilink; <code>&#91;&#91;</code> and <code>]]</code> are not required; can be omitted if no link is wanted |- | *<code>''box color''</code> |background color of the box; default is '''black'''; can be omitted if <code>''text color''</code> is not specified |- | *<code>''text color''</code>  |optional; default is '''white''' |- | *<code>''border=''</code> |optional; default is '''box color''' |- | *<code>''bold=''</code> |optional; default is '''yes''' |} === Examples === <code><nowiki>{{RouteBox|Line|Line}}</nowiki></code> → {{rbox|Line|Line}} <code><nowiki>{{rbox|Circle line|Circle line (London Underground)|#{{rcr|London Underground|Circle}}|#{{rcr|London Underground|Piccadilly}}}}</nowiki></code> → {{RouteBox|Circle line|Circle line (London Underground)|#{{rcr|London Underground|Circle}}|#{{rcr|London Underground|Piccadilly}}}} <code><nowiki>{{RouteBox|Text||bold=no}}</nowiki></code> → {{rbox|Text||bold=no}} == Variants == {{Color box templates}} == TemplateData == {{TemplateData header}} <templatedata> { "params": { "1": { "label": "text", "description": "text (bold by default) to be displayed in the box", "example": "Circle line", "type": "string", "suggested": true }, "2": { "label": "link", "description": "The name of the page to link towards; can be omitted if no link is wanted", "example": "Circle line (London Underground)", "type": "wiki-page-name" }, "3": { "label": "box color", "description": "background color of the box; can be omitted if text color is not specified", "example": "yellow", "type": "string", "default": "black", "suggested": true }, "4": { "label": "text color", "description": "color of the text", "example": "blue", "type": "string", "default": "white" }, "border": { "description": "color of the border; enabled by default", "example": "black", "type": "string", "default": "{{{3}}}" }, "bold": { "description": "bolds the text; enabled by default", "example": "no", "type": "string", "default": "yes" } }, "paramOrder": [ "1", "2", "3", "4", "border", "bold" ], "description": "Adds a colored box with no border.", "format": "inline" } </templatedata> <includeonly>{{sandbox other|| [[Category:Color templates]] }}</includeonly> lsv42umtglp60k6m81uxskmiq5ogq72 ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Rbox 10 2503 7662 2026-06-17T13:22:06Z Saimawnkham 28 Redirected page to [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:RouteBox]] 7662 wikitext text/x-wiki #REDIRECT [[ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:RouteBox]] hj1vde1q7askya1tz46g20touycorsy ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Colorbull 10 2504 7663 2026-06-17T13:22:31Z Saimawnkham 28 Created page with "{{#if:{{{3|}}}|[[{{{3}}}|<span style="color:{{{1|black}}}; font-size:{{{size|100}}}%; line-height:{{#expr:100/{{{size|100}}}}};" title="{{title case|{{{description|{{{1}}}}}}}}">{{#switch:{{lc:{{{2}}}}} | c|circle|r|round = ● | d|diamond = ◆ | tu|up|uptriangle = ▲ | td|dn|downtriangle = ▼ | tl|lt|lefttriangle = ◀ | tr|rt|righttriangle = ▶ | #default = ■ }}</span>]]|<span style="color:{{{1|black}}}; font-size:{{{size|100}}}%; line-height:{{#exp..." 7663 wikitext text/x-wiki {{#if:{{{3|}}}|[[{{{3}}}|<span style="color:{{{1|black}}}; font-size:{{{size|100}}}%; line-height:{{#expr:100/{{{size|100}}}}};" title="{{title case|{{{description|{{{1}}}}}}}}">{{#switch:{{lc:{{{2}}}}} | c|circle|r|round = ● | d|diamond = ◆ | tu|up|uptriangle = ▲ | td|dn|downtriangle = ▼ | tl|lt|lefttriangle = ◀ | tr|rt|righttriangle = ▶ | #default = ■ }}</span>]]|<span style="color:{{{1|black}}}; font-size:{{{size|100}}}%; line-height:{{#expr:100/{{{size|100}}}}};" title="{{title case|{{{description|{{{1}}}}}}}}">{{#switch:{{lc:{{{2}}}}} | c|circle|r|round = ● | d|diamond = ◆ | tu|up|uptriangle = ▲ | td|dn|downtriangle = ▼ | tl|lt|lefttriangle = ◀ | tr|rt|righttriangle = ▶ | #default = ■ }}</span>}}<noinclude> {{documentation}} </noinclude> bcd163fp9vrzc2imdpoyxg9jl5s6hnp ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Colorbull/doc 10 2505 7664 2026-06-17T13:22:52Z Saimawnkham 28 Created page with "{{Documentation subpage}} {{High-use}} <!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) --> This template inserts a colored bullet, with an optional [[wikilink]]. The bullet’s shape and size can also be changed. == Usage == <code>&#123;&#123;colorbull{{!}}{{var|color}}{{!}}{{var|shape}}{{!}}{{var|wikilink}}{{!}}{{var|size<nowiki>=</nowiki>}}{{!}}{{var|description<nowiki>=</nowiki>}}}}</cod..." 7664 wikitext text/x-wiki {{Documentation subpage}} {{High-use}} <!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) --> This template inserts a colored bullet, with an optional [[wikilink]]. The bullet’s shape and size can also be changed. == Usage == <code>&#123;&#123;colorbull{{!}}{{var|color}}{{!}}{{var|shape}}{{!}}{{var|wikilink}}{{!}}{{var|size<nowiki>=</nowiki>}}{{!}}{{var|description<nowiki>=</nowiki>}}}}</code> *{{var|Colors}} are most commonly specified as either a color keyword or as the hexadecimal triplet representing an RGB combination. See [[web colors]] for details. The default is black. *{{var|Shape}} is optional; valid arguments are: ::{|class="wikitable" |- | c / circle / r / round || ● |- | d / diamond || ◆ |- | tu / up / uptriangle || ▲ |- | td / dn / downtriangle || ▼ |- | tl / lt / lefttriangle || ◀ |- | tr / rt / righttriangle || ▶ |- | {{var|default}} || ■ |} * The {{var|wikilink}} parameter is also optional and specifies the article to which the text should point. * The named parameter {{var|size}} is a number specifying the bullet size as a % of the default style text size. Default is 100. * The named parameter {{var|description}} replaces the default <code>{{var|color}}</code> tooltip. This is also heard by a screen reader. === Examples === {| class="wikitable" |- ! Visual<br/>effect !! Markup |- | {{colorbull}} || <code><nowiki>{{colorbull}}</nowiki></code> |- | {{colorbull|#039}} || <code><nowiki>{{colorbull|#039}}</nowiki></code> |- | {{colorbull|size=50}} || <code><nowiki>{{colorbull|size=50}}</nowiki></code> |- | {{colorbull|red|round}} || <code><nowiki>{{colorbull|red|round}}</nowiki></code> |- | {{colorbull|green|d}} || <code><nowiki>{{colorbull|green|d}}</nowiki></code> |- | {{colorbull||tu|triangle}} || <code><nowiki>{{colorbull||tu|triangle}}</nowiki></code> |} == See also == {{Color box templates}} *{{tl|*}} / {{tl|bull}} / {{tl|bullet}}, a simple bullet. (e.g. {{*}}) {{Format TemplateData|TOC=0|JSON= { "params": { "1": { "label": "Color", "description": "Most commonly specified as either a color keyword or as the hexadecimal triplet representing an RGB combination. See the article [[web colors]] for details.", "example": "#f00", "type": "string", "default": "black (or standard link color for links)", "suggested": true }, "2": { "label": "Shape", "description": "“c” or “circle” or “r” or “round” gives ●; “d” or “diamond” gives ◆; “tu” or “up” or “uptriangle” gives ▲; “td” or “dn” or “downtriangle” gives ▼; “tl” or “lt” or “lefttriangle” gives ◀; “tr” or “rt” or “righttriangle” gives ▶; default is ■", "type": "string", "suggested": true, "default": "■" }, "3": { "label": "Link target", "description": "Optionally, a page name to link to.", "type": "wiki-page-name", "required": false }, "size": { "label": "Size", "description": "The size of the bullet relative to surrounding text, as a percentage. Omit the % sign.", "example": "80", "type": "number", "default": "The same size as surrounding text (100)", "required": false }, "description": { "label": "Description", "description": "When hovered over, this is also heard by a screen reader. This optional parameter can be used to change the default to something more user-friendly.", "example": "dark blue", "type": "string", "default": "the value used for color as a tooltip", "required": false } }, "paramOrder": [ "1", "2", "3", "size", "description" ], "description": " ", "format": "inline" } }} <includeonly>{{Sandbox other|| <!-- Categories below this line, please; interwikis at Wikidata --> [[Category:Color templates]] }}</includeonly> 2qlfdhwz2umrq86cybf1mcixvjr0y4s ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Rail color box 10 2506 7665 2026-06-17T13:23:14Z Saimawnkham 28 Created page with "<includeonly>{{#invoke:Adjacent stations|box}}</includeonly><noinclude> {{documentation}} </noinclude>" 7665 wikitext text/x-wiki <includeonly>{{#invoke:Adjacent stations|box}}</includeonly><noinclude> {{documentation}} </noinclude> 0z5wsspuhn41s44huksyg8mmcifp924 ᥗᥦᥛᥰ ᥙᥣ ᥘᥥᥐᥳ:Rail color box/doc 10 2507 7666 2026-06-17T13:23:52Z Saimawnkham 28 Created page with "{{Documentation subpage}} {{High-use}} {{Accessibility dispute|date=October 2024|talk=Accessibility issues created by the Rail color box template}} {{Sidebar Adjacent stations}} {{Template shortcut|rcb}} {{Lua|Module:Adjacent stations}} '''Template:Rail color box''' is intended to be used within station and line infoboxes, diagrams, navboxes and tables to show a small color box and a link to the associated line or service name. Its use should be avoided within body text..." 7666 wikitext text/x-wiki {{Documentation subpage}} {{High-use}} {{Accessibility dispute|date=October 2024|talk=Accessibility issues created by the Rail color box template}} {{Sidebar Adjacent stations}} {{Template shortcut|rcb}} {{Lua|Module:Adjacent stations}} '''Template:Rail color box''' is intended to be used within station and line infoboxes, diagrams, navboxes and tables to show a small color box and a link to the associated line or service name. Its use should be avoided within body text. == Usage == * {{tlx|Rail color box|system{{=}}|line{{=}}|inline{{=}}|type{{=}}|note{{=}}}} == Parameters == {| class="wikitable" |+ Template parameters |- ! scope="col" | Parameter ! scope="col" | Description |- ! scope="row" | <code>system</code> or <code>1</code> | An identifier to specify which system's color and line article name convention should be used. Either <code>Module:Adjacent stations/<var>system</var></code> or <code>Template:<var>system</var> color</code> ''must'' exist, e.g. [[Template:RE-BB color]] or [[Module:Adjacent stations/Taipei Metro]] |- ! scope="row" | <code>line</code> or <code>2</code> | The line or service to be linked. |- ! scope="row" | <code>inline</code> or <code>3</code> | An optional parameter to create a color box and link suitable for use inline with other text: {| class="wikitable" style="margin-left:1em" |- ! scope="col" | Value ! scope="col" | Description ! scope="col" | Example ! scope="col" | Example |- ! scope="row" | {{Kbd|yes}} | Inline color box with link | {{Rail color box|RTD|C|yes}} | {{Rail color box|Washington Metro|Green|yes}} |- ! scope="row" | {{Kbd|small}} | Line strip with link | {{Rail color box|RTD|C|small}} | {{Rail color box|Washington Metro|Green|small}} |- ! scope="row" | {{Kbd|dot}} | Small circle with link | {{Rail color box|RTD|C|dot}} | {{Rail color box|Washington Metro|Green|dot}} |- ! scope="row" | {{Kbd|square}} | Small square with link | {{Rail color box|RTD|C|square}} | {{Rail color box|Washington Metro|Green|square}} |- ! scope="row" | {{Kbd|link}} | Linked box | {{Rail color box|RTD|C|link}} | {{Rail color box|Washington Metro|Green|link}} |- ! scope="row" | {{Kbd|ldot}} | Linked small circle | {{Rail color box|RTD|C|ldot}} | {{Rail color box|Washington Metro|Green|ldot}} |- ! scope="row" | {{Kbd|lsquare}} | Linked small square | {{Rail color box|RTD|C|lsquare}} | {{Rail color box|Washington Metro|Green|lsquare}} |- ! scope="row" | {{Kbd|box}} | Box with link omitted. | {{Rail color box|RTD|C|box}} | {{Rail color box|Washington Metro|Green|box}} |- ! scope="row" | {{Kbd|route}} | Box with text | {{Rail color box|RTD|C|route}} | {{Rail color box|Washington Metro|Green|route}} |- ! scope="row" | {{Kbd|broute}} | Bordered box with text | {{Rail color box|RTD|C|broute}} | {{Rail color box|Washington Metro|Green|broute}} |- ! scope="row" | {{Kbd|croute}} | Box with text and border radius | {{Rail color box|RTD|C|croute}} | {{Rail color box|Washington Metro|Green|croute}} |- ! scope="row" | {{Kbd|xroute}} | Transparent box with text and border radius | {{Rail color box|RTD|C|xroute}} | {{Rail color box|Washington Metro|Green|xroute}} |} |- ! scope="row" | <code>type</code> | This adds " – <var>type</var>" to the end, where <var>type</var> is the parameter value (which may be changed by a module subpage), and also passes the value to the data template or module. Typically a service or branch of the line. |- ! scope="row" | <code>note</code> | An optional note with more information added at the end. |} For systems where multiple colors are used to designate different lines, the appropriate color will be selected based on the combination of the system and line parameters. The same is done for systems where types or services have their own colors. Some options, such as setting the text color, border color, and the short name for the latter three, require the use of a module subpage. Each line can have its own values, as can each type. The table keys for line and type tables are the same: <code>["border color"]</code>, <code>["text color"]</code> and <code>["short name"]</code>. Note that the <code>["background color"]</code> key is not used by this template. ===TemplateData=== {{Collapse top|title=[[Wikipedia:TemplateData|TemplateData]] documentation used by [[Wikipedia:VisualEditor|VisualEditor]] and other tools}} {{TemplateData header|noheader=1}} <templatedata> { "params": { "1": { "aliases": [ "system" ], "label": "System", "type": "string", "required": true, "suggested": true }, "2": { "aliases": [ "line" ], "label": "Line", "type": "string", "suggested": true }, "3": { "aliases": [ "inline" ], "label": "Inline display type", "type": "string", "suggested": true }, "note": { "type": "string", "label": "Note" }, "type": { "label": "Type (branch/service)", "type": "string" } }, "description": "Template which generates colored boxes to indicate rail lines, optionally with a link to the line's article.", "paramOrder": [ "1", "2", "3", "type", "note" ], "format": "inline" } </templatedata> {{Collapse bottom}} == Examples == * {{tlx|Rail color box|system{{=}}Amtrak|line{{=}}Southwest Chief}} and {{tlx|Rail color box|Amtrak|Southwest Chief}} produce {{Rail color box|Amtrak|Southwest Chief}}. * {{tlx|Rail color box|SEPTA|Wilmington/Newark|note{{=}}(rush hour service only)}} produces {{Rail color box|SEPTA|Wilmington/Newark|note=(rush hour service only)}}. == System abbreviations == Lists of available systems are at [[:Category:Rail transport color templates]] and [[Special:PrefixIndex/Module:Adjacent stations/]]. {| class="wikitable sortable mw-collapsible" ! scope="col" | Abbreviation ! scope="col" | System |- ! scope="row" | AMT | [[Agence métropolitaine de transport]] |- ! scope="row" | BART | [[Bay Area Rapid Transit]] |- ! scope="row" | CTA | [[Chicago Transit Authority]] |- ! scope="row" | DART | [[Dallas Area Rapid Transit]] |- ! scope="row" | HBLR | [[Hudson–Bergen Light Rail]] |- ! scope="row" | KAT | [[Kenosha Transit]] |- ! scope="row" | LACMTA | [[Los Angeles Metro Rail]] |- ! scope="row" | LIRR | [[Long Island Rail Road]] |- ! scope="row" | MARC | [[MARC Train]] |- ! scope="row" | MARTA | [[Metropolitan Atlanta Rapid Transit Authority]] |- ! scope="row" | MBTA | [[MBTA Commuter Rail]] |- ! scope="row" | METROMN | [[Metro (Minnesota)]] |- ! scope="row" | MNRR | [[Metro-North Railroad]] |- ! scope="row" | MUNI | [[Muni Metro]] |- ! scope="row" | NJT | [[NJ Transit]] |- ! scope="row" | NMRX | [[New Mexico Rail Runner Express]] |- ! scope="row" | NYCRR | [[New York Central Railroad]] |- ! scope="row" | PATCO | [[Port Authority Transit Corporation]] |- ! scope="row" | PATH | [[Port Authority Trans-Hudson]] |- ! scope="row" | PLR | [[Pittsburgh Light Rail]] |- ! scope="row" | RIRTR | [[Rochester Subway]] |- ! scope="row" | RTD | [[Denver]] [[Regional Transportation District]] |- ! scope="row" | SCAX | [[Metrolink (California)]] |- ! scope="row" | SCVTA | [[VTA light rail|Santa Clara Valley Transportation Authority light rail]] |- ! scope="row" | SEPTA | [[SEPTA|Southeastern Pennsylvania Transportation Authority]] |- ! scope="row" | SFRTA | [[Tri-Rail]] |- ! scope="row" | STLLR | [[Link light rail|Sound Transit Link light rail]] |- ! scope="row" | SNDX | [[Sounder commuter rail]] |- ! scope="row" | STML | [[St Louis MetroLink]] |- ! scope="row" | TMTC | [[MAX Light Rail]] |- ! scope="row" | VMR | [[Valley Metro Rail]] |- ! scope="row" | VREX | [[Virginia Railway Express]] |- ! scope="row" | WMATA | [[Washington Metropolitan Area Transit Authority]] |} == Variants == {{Color box templates}} <includeonly>{{Sandbox other|| [[Category:Rail transport templates]] }}</includeonly> 4p9xlei8szsxh78vx5c6d4c1l0yrn4w ᥛᥨᥝᥱ ᥓᥧᥰ:Adjacent stations 828 2508 7667 2026-06-17T13:24:14Z Saimawnkham 28 Created page with "require('strict') local p = {} local lang = 'en-GB' -- local default language -- Below these comments: Internationalization table -- How to translate this module (for languages without variants): -- • Characters inside single and double quotation marks are called strings. -- The strings in this i18n table are used as output. -- • Strings within square brackets are keys. -- • Strings are concatenated (joined) with two dots. -- • Set the string after «local l..." 7667 Scribunto text/plain require('strict') local p = {} local lang = 'en-GB' -- local default language -- Below these comments: Internationalization table -- How to translate this module (for languages without variants): -- • Characters inside single and double quotation marks are called strings. -- The strings in this i18n table are used as output. -- • Strings within square brackets are keys. -- • Strings are concatenated (joined) with two dots. -- • Set the string after «local lang =» to your language's code. -- Change the first key after "i18n" (usually "en-GB") to the same thing. -- • For each string which is not inside a function, translate it directly. -- • Strings with keys named "format" are Lua regular expressions. -- «()» is a match; «.+» means all characters; «%s+» means all spaces. -- • For each string which is concatenated to the variable «var», -- translate the phrase assuming that «var» will be a noun. -- • Remove any unnecessary translations. local i18n = require("Module:Adjacent stations/i18n") local function getData(system, verify) if verify then local title = mw.title.new('Module:Adjacent stations/' .. system -- .. '/sandbox' ) if not (title and title.exists) then return nil end end return require('Module:Adjacent stations/' .. system -- .. '/sandbox' ) end local function getLine(data, lineN) if lineN then if data['aliases'] then lineN = data['aliases'][mw.ustring.lower(lineN)] or lineN end local default = data['lines']['_default'] or {} local line = data['lines'][lineN] or {} for k, v in pairs(default) do if v then line[k] = line[k] or v end end line['title'] = line['title'] and mw.ustring.gsub(line['title'], '%%1', lineN) return line, lineN end end local function getColor(data, system, line, Type, frame) if system then if line then return frame:expandTemplate{ title = system .. ' color', args = {line, ['branch'] = Type} } end return frame:expandTemplate{ title = system .. ' color' } else line = (getLine(data, line)) local default = data['lines']['_default'] if line or default then default = default or {} if not line then line = mw.clone(default) end local color = line['color'] or line['background color'] or default['color'] or default['background color'] or data['system color'] local Type_value = Type and line['types'] and (line['types'][Type] and line['types'][Type]['color']) if Type_value then color = Type_value end return color end return (default and (default['color'] or default['background color']) or data['system color'] or '') end end local lineN, typeN local function somethingMissing(name, key, formats) local formatKeys = {} for k in pairs(formats) do table.insert(formatKeys, k) end return name .. ' was "' .. key .. '" but neither an entry for it nor a default was found. Choices were: ' .. table.concat(formatKeys, ', ') end local function getStation(station, _Format) if type(_Format) == 'table' then local lineNformats = _Format _Format = lineNformats[lineN] or lineNformats[1] if not _Format then error(somethingMissing('lineN', lineN, lineNformats)) elseif type(_Format) == 'table' then local typeNformats = _Format _Format = typeNformats[typeN] or typeNformats[1] if not _Format then error(somethingMissing('typeN', typeN, typeNformats)) end end end if typeN then _Format = mw.ustring.gsub(_Format, '%%3', typeN) end if lineN then _Format = mw.ustring.gsub(_Format, '%%2', lineN) end return (mw.ustring.match(_Format, '%[%[.+%]%]')) and (mw.ustring.gsub(_Format, '%%1', station)) or table.concat({'[[', mw.ustring.gsub(_Format, '%%1', station), '|', station, ']]'}) end local function getTerminusText(var, Format) local function subst(var1, var2) -- var1 is the terminus or table of termini; var2 is the key for the table of termini return type(var1) == 'string' and getStation(var1, (Format[var1] or Format[1])) or type(var1) == 'table' and #var1 > 0 and getStation(var1[var2], (Format[var1[var2]] or Format[1])) or '' end if Format then if type(var) == 'string' then return subst(var) elseif type(var) == 'table' and #var > 0 then local t = {subst(var, 1)} for i = 2, #var - 1 do t[i] = i18n[lang]['comma'](subst(var, i)) end if #var > 1 then t[#var] = i18n[lang]['or'](subst(var, #var)) end if var['via'] then if i18n[lang]['via-first'] then table.insert(t, 1, i18n[lang]['via'](subst(var, 'via'))) else table.insert(t, i18n[lang]['via'](subst(var, 'via'))) end end return table.concat(t) else return '' end else return var or '' end end function p._main(_args) -- Arguments are processed here instead of the main function local yesno = require('Module:Yesno') local trimq = require('Module:Trim quotes')._trim local boolean = { ['oneway-left'] = true, ['oneway-right'] = true, ['reverse'] = true, ['reverse-left'] = true, ['reverse-right'] = true } local args = {} -- Processed arguments local index = {} -- A list of addresses corresponding to number suffixes in the arguments for k, v in pairs(_args) do -- Maps each raw argument to processed arguments by string matching _args[k] = v:match('^%s*(.-)%s*$') if _args[k] and _args[k] ~= '' then local a = mw.ustring.match(k, '^(.*%D)%d+$') or k -- The parameter; address 1 can be omitted local b = tonumber(mw.ustring.match(k, '^.*%D(%d+)$')) or 1 -- The address for a given argument; address 1 can be omitted if boolean[a] then v = yesno(v) end if not args[b] then args[b] = {[a] = v} table.insert(index, b) elseif args[b][a] then return error(i18n[lang]['error_duplicate'](a .. b)) else args[b][a] = v end end end table.sort(index) local function small(s, italic) return italic and '<div class="isA">' .. s .. '</div>' or '<div class="smA">' .. s .. '</div>' end local style = { -- Style for each cell type ['header cell'] = 'class="hcA"|', ['header midcell'] = 'colspan="3" class="hmA"|', ['body cell'] = 'class="bcA"|', ['body banner'] = 'class="bbA notheme" style="color:inherit;background-color:#', } local function rgb(var) if var:len() == 3 then return {tonumber(var:sub(1, 1), 16) * 17, tonumber(var:sub(2, 2), 16) * 17, tonumber(var:sub(2, 2), 16) * 17} elseif var:len() == 6 then return {tonumber(var:sub(1, 2), 16), tonumber(var:sub(3, 4), 16), tonumber(var:sub(5, 6), 16)} end return {} end local data = {} -- A table of data modules for each address local noclearclass = (((_args.noclear or '') ~= '') and ' adjacent-stations-noclear' or '') local wikitable = {'{| class="wikitable adjacent-stations' .. noclearclass .. '"'} for i, v in ipairs(index) do -- If an address has a system argument, indexes the data module data[v] = args[v]['system'] and getData(args[v]['system']) -- If an address has no system, the row uses data from the previous address or data[index[i - 1]] or (args[v]['header'] and getData(args[index[i+1]]['system'])) or error(i18n[lang]['error_unknown'](args[v]['system'])) local lang = data[v]['lang'] or lang if args[v]['system'] and not args[v]['hide-system'] then -- Header row local stop_noun = data[v]['header stop noun'] or i18n[lang]['stop_noun'] table.insert(wikitable, table.concat({'\n|-', '\n! scope="col" ', style['header cell'], i18n[lang]['preceding'](stop_noun), '\n! scope="col" ', style['header midcell'], (data[v]['system icon'] and data[v]['system icon'] .. ' ' or ''), (data[v]['system title'] or ('[['.. args[v]['system'] ..']]')), '\n! scope="col" ', style['header cell'], i18n[lang]['following'](stop_noun) })) table.insert(wikitable, '') table.insert(wikitable, '') table.insert(wikitable, '') end if args[v]['header'] then -- Subheader table.insert(wikitable, '\n|-\n!colspan="5" class="hmA"|'.. args[v]['header']) table.insert(wikitable, '') table.insert(wikitable, '') table.insert(wikitable, '') end if args[v]['line'] or args[v]['left'] or args[v]['right'] or args[v]['nonstop'] then if not args[v]['line'] and i > 1 and not args[v]['system'] then args[v]['line'] = args[index[i - 1]]['line'] end lineN = args[v]['line'] or '_default' typeN = args[v]['type'] if data[v]['aliases'] then lineN = data[v]['aliases'][mw.ustring.lower(lineN)] or lineN if typeN then typeN = data[v]['aliases'][mw.ustring.lower(typeN)] or typeN end end -- get the line table local line = data[v]['lines'] and (mw.clone(data[v]['lines'][lineN]) or error(i18n[lang]['error_unknown'](args[v]['line']))) or error(i18n[lang]['error_line']) local default = data[v]['lines']['_default'] or {} line['title'] = line['title'] or default['title'] or '' line['title'] = mw.ustring.gsub(line['title'], '%%1', lineN) -- cell across row for non-stop service if args[v]['nonstop'] then table.insert(wikitable, table.concat({'\n|-\n|colspan="5" ', style['body cell'], ((args[v]['nonstop'] == 'former') and i18n[lang]['nonstop_past'] or i18n[lang]['nonstop_present'])(p._box({data = data[v], line = lineN, Type = typeN, inline = 'yes'})) }) ) table.insert(wikitable, '') table.insert(wikitable, '') table.insert(wikitable, '') else local Format = data[v]['station format'] or i18n[lang]['error_format'] local color, color_2, background_color, circular local Type = line['types'] and line['types'][typeN] -- get the line type table if Type then if Type['color'] then -- line color is used as background if there is no background color in the line type table background_color = Type['background color'] or line['color'] color = Type['color'] color_2 = Type['color2'] or color else background_color = Type['background color'] or line['background color'] color = line['color'] or default['color'] or '' color_2 = line['color2'] or color end if Type['circular'] then -- Type may override the circular status of the line circular = Type['circular'] end else background_color = line['background color'] color = line['color'] or default['color'] or '' color_2 = line['color2'] or color circular = line['circular'] end -- Alternate termini can be specified based on type local sideCell = {true, true} for i, b in ipairs({'left', 'right'}) do if not args[v][b] then -- If no station is given on one side, the station is assumed to be the terminus on that side local _through = args[v]['through-' .. b] or args[v]['through'] local _through_data = getLine(data[v], _through) if _through_data then _through = _through_data['title'] or _through end sideCell[i] = _through and "''" .. i18n[lang]['through'](trimq(_through)) .. "''" or "''" .. trimq((args[v]['reverse-' .. b] or args[v]['reverse']) and i18n[lang]['reverse'] or i18n[lang]['terminus']) .. "''" else local terminusT local terminusN = Type and Type[b .. ' terminus'] or line[b .. ' terminus'] -- If the terminus table has more than one numbered key or has the via key then the table shows only the default termini, since terminusN[2] cannot be used and terminusN[via] is reserved if type(terminusN) == 'string' or (type(terminusN) == 'table' and (terminusN[2] or terminusN['via'])) then if args[v]['to-' .. b] then terminusT = args[v]['to-' .. b] local _or = mw.ustring.match(terminusT, i18n[lang]['or-format']) if _or then terminusT = mw.ustring.gsub(terminusT, i18n[lang]['or-format'], '\127_OR_\127') terminusT = mw.ustring.gsub(terminusT, i18n[lang]['comma-format'], '\127_OR_\127') end local _via = (mw.ustring.match(terminusT, i18n[lang]['via-format'])) if _via then terminusT = mw.ustring.gsub(terminusT, i18n[lang]['via-format'], '') terminusT = mw.text.split(terminusT, '\127_OR_\127') terminusT['via'] = _via elseif _or then terminusT = mw.text.split(terminusT, '\127_OR_\127') end else terminusT = terminusN end elseif type(terminusN) == 'table' then terminusT = terminusN[args[v]['to-' .. b]] or terminusN[args[v]['to']] or terminusN[1] end local mainText = args[v]['note-' .. b] and getTerminusText(args[v][b], Format) .. small(args[v]['note-' .. b]) or getTerminusText(args[v][b], Format) local subText = (args[v]['oneway-' .. b] or line['oneway-' .. b]) and i18n[lang]['oneway'] or args[v][b] == terminusT and i18n[lang]['terminus'] or circular and terminusT or i18n[lang]['towards'](getTerminusText(terminusT, Format)) subText = small(subText, true) sideCell[i] = mainText .. subText end end table.insert(wikitable, '\n|-') table.insert(wikitable, '\n|' .. style['body cell'] .. sideCell[1]) table.insert(wikitable, table.concat({'\n|', style['body banner'], color, '"|', '\n|', (background_color and 'class="bcA" style="background-color:rgba(' .. table.concat(rgb(background_color), ',') .. ',.2)"|' or style['body cell']), line['title'], -- Type; table key 'types' in subpages (datatype table, with strings as keys). If table does not exist then the input is displayed as the text (typeN and '<div>' .. (Type and Type['title'] or typeN) .. '</div>' or ''), -- Note-mid; table key 'note-mid' in subpages. Overridden by user input ((args[v]['note-mid'] and small(args[v]['note-mid'])) or (Type and Type['note-mid'] and small(Type['note-mid'])) or (line['note-mid'] and small(line['note-mid'])) or ''), -- Transfer; uses system's station link table (args[v]['transfer'] and small('transfer at ' .. getTerminusText(args[v]['transfer'], Format), true) or ''), '\n|', style['body banner'], color_2, '"|'})) table.insert(wikitable, '\n|' .. style['body cell'] .. sideCell[2]) end end if args[v]['note-row'] then -- Note if args[v]['note-row']:match('^%s*<tr') or args[v]['note-row']:match('^%s*%|%-') then table.insert(wikitable, '\n' .. args[v]['note-row']) else table.insert(wikitable, '\n|-\n|colspan="5" ' .. style['body cell'] .. args[v]['note-row']) end table.insert(wikitable, '') table.insert(wikitable, '') table.insert(wikitable, '') end end local function combine(t, n) if t[n + 4] ~= '' and t[n + 4] == t[n] then t[n + 4] = '' -- The cell in the next row is deleted local rowspan = 2 while t[n + rowspan * 4] == t[n] do t[n + rowspan * 4] = '' rowspan = rowspan + 1 end t[n] = mw.ustring.gsub(t[n], '\n|class="', '\n|rowspan="' .. rowspan .. '" class="') end end local M = #wikitable for i = 3, M, 4 do combine(wikitable, i) end for i = 4, M, 4 do combine(wikitable, i) end for i = 5, M, 4 do combine(wikitable, i) end table.insert(wikitable, '\n|}') return table.concat(wikitable) end local getArgs = require('Module:Arguments').getArgs local function makeInvokeFunction(funcName) -- makes a function that can be returned from #invoke, using -- [[Module:Arguments]] return function (frame) local args = getArgs(frame, {parentOnly = true}) return p[funcName](args, frame) end end local function makeTemplateFunction(funcName) -- makes a function that can be returned from #invoke, using -- [[Module:Arguments]] return function (frame) local args = getArgs(frame, {frameOnly = true}) return p[funcName](args, frame) end end p.main = makeInvokeFunction('_main') function p._color(args, frame) local data = args.data if args[1] or data then data = data or getData(args[1], true) if not data then return getColor(nil, args[1], args[2], args[3], frame) end return getColor(data, nil, args[2], args[3]) end end p.color = makeInvokeFunction('_color') function p._box(args, frame) local system = args[1] or args.system lineN = args[2] or args.line if not (system or lineN) then return '' end local line, Type, line_data local inline = args[3] or args.inline typeN = args.type local data = args.data if system or data then data = data or getData(system, true) local color if data then local default = data['lines']['_default'] or {} line, lineN = getLine(data, lineN) if typeN then typeN = data['aliases'] and data['aliases'][mw.ustring.lower(typeN)] or typeN Type = line['types'] and line['types'][typeN] and line['types'][typeN]['title'] or typeN end color = getColor(data, nil, lineN, typeN) if inline ~= 'box' then line_data = line or error(i18n[lang]['error_unknown'](lineN)) line = line_data['title'] or default['title'] or error(i18n[lang]['error_missing']('title')) line = mw.ustring.gsub(line, '%%1', lineN) end else color = getColor(nil, system, lineN, typeN, frame) if inline ~= 'box' then line = frame:expandTemplate{ title = system .. ' lines', args = {lineN, ['branch'] = typeN} } if mw.text.trim(line) == '' then return error(i18n[lang]['error_unknown'](lineN)) end end Type = typeN end local result if Type and Type ~= '' and inline ~= 'box' then if line == '' then line = Type else result = ' – ' .. Type end end if args.note then result = (result or '') .. ' ' .. args.note end result = result or '' if not inline then -- [[Template:Legend]] result = '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;min-width:1.25em;height:1.25em;line-height:1.25;margin:1px 0;border:1px solid black;color:inherit;background-color:#' .. color .. '"> </span> ' .. line .. result .. '</div>' elseif inline == 'yes' then result = '<span style="color:inherit;background-color:#' .. color .. ';border:1px solid #000">    </span>&nbsp;' .. line .. result elseif inline == 'box' then result = '<span style="color:inherit;background-color:#' .. color .. ';border:1px solid #000">    </span>' .. result elseif inline == 'link' then local link = args.link or mw.ustring.match(line, '%[%[([^%[:|%]]+)[|%]]') if link then result = '[[' .. link .. '|<span style="color:inherit;background-color:#' .. color .. ';border:1px solid #000">    </span>]]' .. result else result = '<span style="color:inherit;background-color:#' .. color .. ';border:1px solid #000">    </span>' .. result end elseif inline == 'square' then result = '<span style="color:#' .. color .. ';line-height:initial">■</span>&nbsp;' .. line .. result elseif inline == 'lsquare' then local link = args.link or mw.ustring.match(line, '%[%[([^%[:|%]]+)[|%]]') if link then result = '[[' .. link .. '|<span style="color:#' .. color .. ';line-height:initial">■</span>]]' else result = '<span style="color:#' .. color .. ';line-height:initial">■</span>' end elseif inline == 'dot' then result = '<span style="color:#' .. color .. ';line-height:initial">●</span> ' .. line .. result elseif inline == 'ldot' then local link = args.link or mw.ustring.match(line, '%[%[([^%[:|%]]+)[|%]]') if link then result = '[[' .. link .. '|<span style="color:#' .. color .. ';line-height:initial">●</span>]]' else result = '<span style="color:#' .. color .. ';line-height:initial">●</span>' end elseif inline == 'small' then result = '<span style="color:inherit;background-color:#' .. color .. '"> </span>' .. ' ' .. line .. result else local yesno = require("Module:Yesno") local link = args.link or mw.ustring.match(line, '%[%[([^%[:|%]]+)[|%]]') local border_color, text_color local color_box = data['color box format'] or data['rail box format'] or {} if line_data then if line_data['types'] and line_data['types'][typeN] then local Type_data = line_data['types'][typeN] border_color = Type_data['border color'] or line_data['border color'] or color text_color = Type_data['text color'] or line_data['text color'] if color_box == 'title' and not args[4] then lineN = Type_data['short name'] or line_data['short name'] or require('Module:Delink')._delink{line} else lineN = Type_data['short name'] or line_data['short name'] or lineN end else border_color = line_data['border color'] or color text_color = line_data['text color'] if color_box == 'title' and not args[4] then lineN = line_data['short name'] or require('Module:Delink')._delink{line} else lineN = line_data['short name'] or lineN end end else border_color = color end text_color = text_color and '#' .. text_color or require('Module:Color contrast')._greatercontrast{color} local bold = ';font-weight:bold' if (yesno(args.bold) == false) then bold = '' end if inline == 'route' then -- [[Template:RouteBox]] if link then result = '<span style="color:inherit;background-color:#' .. color .. ';border:.075em solid #' .. border_color .. ';padding:0 .3em">[[' .. link .. '|<span style="color:' .. text_color .. bold .. ';font-size:inherit;white-space:nowrap">' .. lineN .. '</span>]]</span>' else result = '<span style="background-color:#' .. color .. ';border:.075em solid #' .. border_color .. ';padding:0 .3em;color:' .. text_color .. bold .. ';font-size:inherit;white-space:nowrap">' .. lineN .. '</span>' end elseif inline == 'croute' then -- [[Template:Bahnlinie]] if link then result = '<span style="color:inherit;background-color:#' .. color .. ';border:.075em solid #' .. border_color .. ';border-radius:.5em;padding:0 .3em">[[' .. link .. '|<span style="color:' .. text_color .. bold .. ';font-size:inherit;white-space:nowrap">' .. lineN .. '</span>]]</span>' else result = '<span style="color:inherit;background-color:#' .. color .. ';border:.075em solid #' .. border_color .. ';border-radius:.5em;padding:0 .3em;color:' .. text_color .. bold .. ';font-size:inherit;white-space:nowrap">' .. lineN .. '</span>' end elseif inline == 'xroute' then -- [[Template:Bahnlinie]] if link then result = '<span style="border:.075em solid #' .. border_color .. ';border-radius:.5em;padding:0 .3em">[[' .. link .. '|<span style="color:#' .. color .. bold .. ';font-size:inherit;white-space:nowrap">' .. lineN .. '</span>]]</span>' else result = '<span style="border:.075em solid #' .. border_color .. ';border-radius:.5em;padding:0 .3em;color:#' .. color .. bold .. ';font-size:inherit;white-space:nowrap">' .. lineN .. '</span>' end elseif inline == 'broute' then if link then result = '<span style="color:inherit;background-color:#' .. color .. ';border:.075em solid #000;padding:0 .3em">[[' .. link .. '|<span style="color:' .. text_color .. bold .. ';font-size:inherit;white-space:nowrap">' .. lineN .. '</span>]]</span>' else result = '<span style="background-color:#' .. color .. ';border:.075em solid #000;padding:0 .3em;color:' .. text_color .. bold .. ';font-size:inherit;white-space:nowrap">' .. lineN .. '</span>' end else -- [[Template:Legend]] (fallback; duplication to simplify logic) result = '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;min-width:1.25em;height:1.25em;line-height:1.25;margin:1px 0;border:1px solid black;color:inherit;background-color:#' .. color .. '"> </span> ' .. line .. result .. '</div>' end end result = mw.ustring.gsub(result, ':%s*#transparent', ':transparent') return result end end p.box = makeInvokeFunction('_box') function p._icon(args, frame) local system = args[1] or args.system local data = args.data if not system and not data then return end data = data or getData(system) local line, line_name = getLine(data, args[2] or args.line) local icon local icon_format if line then local line_type = args[3] or args.type if line_type then line_type = data.aliases and data.aliases[mw.ustring.lower(line_type)] or line_type line_type = line.types and line.types[line_type] -- If there's no type table or entry for this type, then it can't have its own icon icon_format = line_type['icon format'] or data['type icon format'] if line_type.icon then icon = line_type.icon end end if not icon then icon = line.icon end -- Only if there is no icon use the icon_format. if not icon and not icon_format then icon_format = line['icon format'] or data['line icon format'] end local default = data.lines._default or {} if icon and string.find(icon, "%%1") and default and default.icon then icon = mw.ustring.gsub(default.icon, '%%1', line_name) end end if not icon then icon = data['system icon'] end if not icon_format then icon_format = data['system icon format'] end if icon_format then if icon_format ~= 'image' then icon = p._box({data = data, [2] = (args[2] or args.line), [3] = icon_format, type = (args[3] or args.type), bold = args.bold, link = args.link}, frame) if args.name then if line and line.title then return icon .. " " .. line.title end return icon .. " " .. data["system title"] end end end local size = args.size if size then if mw.ustring.match(size, '%d$') then size = '|' .. size .. 'px' else size = '|' .. size end -- Upright values are to be disabled until there is use of upright scaling in subpages; doesn't seem to work anyway as of 2018-08-10 local regex = { '|%s*%d*x?%d+px%s*([%]|])', -- '|%s*upright=%d+%.?%d*%s*([%]|])', '|%s*upright%s*([%]|])' } if mw.ustring.match(icon, regex[1]) then icon = mw.ustring.gsub(icon, regex[1], size .. '%1') -- elseif mw.ustring.match(icon, regex[2]) then -- icon = gsub(icon, regex[2], size .. '%1') -- elseif mw.ustring.match(icon, regex[3]) then -- icon = gsub(icon, regex[3], size .. '%1') else icon = mw.ustring.gsub(icon, '(%[%[[^%]|]+)([%]|])', '%1' .. size .. '%2') end end local link = args.link if link then if mw.ustring.match(icon, '|%s*link=[^%]|]*[%]|]') then icon = mw.ustring.gsub(icon, '|%s*link=[^%]|]*([%]|])', '|link=' .. link .. '%1') else icon = mw.ustring.gsub(icon, '(%[%[[^%]|]+)([%]|])', '%1|link=' .. link .. '%2') end end local alt = args.alt or link if alt then if mw.ustring.match(icon, '|%s*alt=[^%]|]*[%]|]') then icon = mw.ustring.gsub(icon, '|%s*alt=[^%]|]*([%]|])', '|alt=' .. alt .. '%1') else icon = mw.ustring.gsub(icon, '(%[%[[^%]|]+)([%]|])', '%1|alt=' .. alt .. '%2') end end if args.name then if line and line.title then return icon .. " " .. line.title end return icon .. " " .. data["system title"] end return icon end p.icon = makeInvokeFunction('_icon') p['rail icon'] = makeTemplateFunction('_icon') function p._line(args, frame) local system = args[1] or args.system local line = args[2] or args.line if not line then return '' end local Type = args[3] or args.type local data = args.data if system or data then data = data or getData(system, true) if data then line = (getLine(data, line)) or error(i18n[lang]['error_unknown'](line)) if Type then Type = data['aliases'] and data['aliases'][mw.ustring.lower(Type)] or Type Type = line['types'] and line['types'][Type] and line['types'][Type]['title'] or Type end line = line['title'] or error(i18n[lang]['error_missing']('title')) else line = frame:expandTemplate{ title = system .. ' lines', args = {line, ['branch'] = Type} } if mw.text.trim(line) == '' then return error(i18n[lang]['error_unknown'](lineN)) end end if Type and Type ~= '' then if line == '' then line = Type else line = line .. ' – ' .. Type end end return line end end p.line = makeInvokeFunction('_line') function p._shortline(args, frame) local system = args[1] or args.system lineN = args[2] or args.line if not (system or lineN) then return '' end local line, Type, line_data typeN = args.type local data = args.data if system or data then data = data or getData(system, true) if data then local default = data['lines']['_default'] or {} line, lineN = getLine(data, lineN) if typeN then typeN = data['aliases'] and data['aliases'][mw.ustring.lower(typeN)] or typeN Type = line['types'] and line['types'][typeN] and line['types'][typeN]['title'] or typeN end line_data = line or error(i18n[lang]['error_unknown'](lineN)) line = line_data['title'] or default['title'] or error(i18n[lang]['error_missing']('title')) line = mw.ustring.gsub(line, '%%1', lineN) else line = frame:expandTemplate{ title = system .. ' lines', args = {lineN, ['branch'] = typeN} } if mw.text.trim(line) == '' then return error(i18n[lang]['error_unknown'](lineN)) end Type = typeN end local result if Type and Type ~= '' then if line == '' then line = Type else result = ' – ' .. Type end end if args.note then result = (result or '') .. ' ' .. args.note end result = result or '' local link = args.link or mw.ustring.match(line, '%[%[([^%[:|%]]+)[|%]]') if line_data then if line_data['types'] and line_data['types'][typeN] then local Type_data = line_data['types'][typeN] lineN = Type_data['short name'] or line_data['short name'] or lineN else lineN = line_data['short name'] or lineN end end if link then result = '[[' .. link .. '|' .. lineN .. ']]' else result = lineN end result = mw.ustring.gsub(result, ':%s*#transparent', ':transparent') return result end end p.shortline = makeInvokeFunction('_shortline') function p._station(args, frame) local system = args[1] or args.system local station = args[2] or args.station if not station then return '' end lineN = args[3] or args.line typeN = args[4] or args.type local data = args.data if system or data then data = data or getData(system, true) if data then local _Format = data['station format'][station] or data['station format'][1] if _Format then if data['aliases'] then if lineN then lineN = data['aliases'][mw.ustring.lower(lineN)] or lineN end if typeN then typeN = data['aliases'][mw.ustring.lower(typeN)] or typeN end end station = getStation(station, _Format) else station = station or '' end else station = frame:expandTemplate{ title = system .. ' stations', args = {['station'] = station, ['line'] = lineN, ['branch'] = typeN} } end return station end end p.station = makeInvokeFunction('_station') p['station link'] = makeTemplateFunction('_station') function p._terminusTable(args, frame) local system = args[1] or args.system lineN = args[2] or args.line local side = mw.ustring.sub(mw.ustring.lower(args[3] or args.side or ''), 1, 1) typeN = args.type local prefix = (side == 'r') and 'right' or 'left' local data = args.data if system or data then data = data or getData(system, true) end if data then local line = getLine(data, lineN) or error(i18n[lang]['error_unknown'](lineN)) if typeN and data and data['aliases'] then typeN = data['aliases'][mw.ustring.lower(typeN)] or typeN end local Type = line['types'] and line['types'][typeN] local circular if Type then if Type['circular'] then -- Type may override the circular status of the line circular = Type['circular'] end else circular = line['circular'] end return Type and Type[prefix .. ' terminus'] or line[prefix .. ' terminus'], data['station format'] or i18n[lang]['error_format'], circular else local terminus = frame:expandTemplate{ title = 'S-line/' .. system .. ' ' .. prefix .. '/' .. lineN } return mw.ustring.gsub(terminus, '{{{type}}}', typeN) end end function p._terminus(args, frame) local var, Format, circular = p._terminusTable(args, frame) return circular and var or getTerminusText(var, Format) end p.terminus = makeInvokeFunction('_terminus') function p._style(args, frame) local style = args[1] or args.style local system = args[2] or args.system local line = args[3] or args.line local station = args[4] or args.station local result = {} local data = args.data local default = 'color:inherit;background-color:#efefef' -- Default text and background color for {{Infobox station}} if system or data then data = data or getData(system, true) end if data then local function getValue(var) if type(var) == 'table' then var = var[line] or var[1] if type(var) == 'table' then var = var[station] or var[1] end end if var ~= '' then return var end end if style == 'header' then local tmp = data['name format'] and getValue(data['name format']) if tmp then table.insert(result, tmp) end elseif style == 'subheader' then local tmp = data['header background color'] and getValue(data['header background color']) if tmp then table.insert(result, 'background-color:#' .. tmp) local color = data['header text color'] and getValue(data['header text color']) if color then table.insert(result, 'color:#' .. color) else local greatercontrast = require('Module:Color contrast')._greatercontrast if greatercontrast{tmp} == '#FFFFFF' then table.insert(result, 'color:#FFFFFF') end end else table.insert(result, default) local color = data['header text color'] and getValue(data['header text color']) if color then table.insert(result, 'color:#' .. color) end end end result = table.concat(result, ';') elseif system then local title = 'Template:' .. system .. ' style' local titleObj = mw.title.new(title) if titleObj and titleObj.exists then local tmp if style == 'header' then tmp = frame:expandTemplate{ title = title, args = {'name_format', line, station} } if tmp ~= '' then table.insert(result, tmp) end elseif style == 'subheader' then tmp = frame:expandTemplate{ title = title, args = {'thbgcolor', line, station} } if tmp ~= '' then table.insert(result, 'background-color:#' .. tmp) local color = frame:expandTemplate{ title = title, args = {'thcolor', line, station} } if color ~= '' then table.insert(result, 'color:#' .. color) else local ratio = require('Module:Color contrast')._ratio if ratio{tmp, '222222'} < 4.5 then table.insert(result, 'color:#FFFFFF') end -- 222222 is the default text color in Vector end else table.insert(result, default) tmp = frame:expandTemplate{ title = title, args = {'thcolor', line, station} } if tmp ~= '' then table.insert(result, 'color:#' .. tmp) end end end result = table.concat(result, ';') else if style == 'subheader' then result = default else result = '' end end else if style == 'subheader' then result = default else result = '' end end return result end function p.style(frame) local args = getArgs(frame, {frameOnly = true}) return p._style(args, frame) end function p.convert(frame) local args = frame.args local code = mw.text.split(mw.ustring.gsub(args[1], '^%s*{{(.*)}}%s*$', '%1'), '%s*}}%s*{{%s*') local system local group = tonumber(args.offset or 0) or 0 local firstgroup = group + 1 local delete = { ['s-rail'] = true, ['s-rail-next'] = true, ['s-rail-national'] = true, ['s-start'] = true, ['s-rail-start'] = true, ['start'] = true, ['s-end'] = true, ['end'] = true } local order = { 'line', 'left', 'right', 'to-left', 'to-right', 'oneway-left', 'oneway-right', 'through-left', 'through-right', 'reverse', 'reverse-left', 'reverse-right', 'note-left', 'note-mid', 'note-right', 'transfer' -- circular: use module subpage -- state: not implemented } local replace = { ['previous'] = 'left', ['next'] = 'right', ['type'] = 'to-left', ['type2'] = 'to-right', ['branch'] = 'type', ['note'] = 'note-left', ['notemid'] = 'note-mid', ['note2'] = 'note-right', ['oneway1'] = 'oneway-left', ['oneway2'] = 'oneway-right', ['through1'] = 'through-left', ['through2'] = 'through-right' } local remove_rows = {} local data = {} local noclear = false for i, v in ipairs(code) do code[i] = mw.ustring.gsub(code[i], '\n', ' ') local template = mw.ustring.lower(mw.text.trim(mw.ustring.match(code[i], '^[^|]+'))) code[i] = mw.ustring.match(code[i], '(|.+)$') if (mw.ustring.match(code[i] or '', 'noclear%s*=%s*[a-z]')) then noclear = true end if template == 's-line' then data[i] = {} local this_system = mw.text.trim(mw.ustring.match(code[i], '|%s*system%s*=([^|]+)')) code[i] = mw.text.split(code[i], '%s*|%s*') for m, n in ipairs(code[i]) do local tmp = mw.text.split(n, '%s*=%s*') if tmp[3] then tmp[2] = mw.ustring.gsub(n, '^.-%s*=', '') end tmp[1] = replace[tmp[1]] or tmp[1] if tmp[2] then -- checks for matching brackets local curly = select(2, mw.ustring.gsub(tmp[2], "{", ""))-select(2, mw.ustring.gsub(tmp[2], "}", "")) local square = select(2, mw.ustring.gsub(tmp[2], "%[", ""))-select(2, mw.ustring.gsub(tmp[2], "%]", "")) if not (curly == 0 and square == 0) then local count = mw.clone(m)+1 while not (curly == 0 and square == 0) do tmp[2] = tmp[2]..'|'..code[i][count] curly = curly+select(2, mw.ustring.gsub(code[i][count], "{", ""))-select(2, mw.ustring.gsub(code[i][count], "}", "")) square = square+select(2, mw.ustring.gsub(code[i][count], "%[", ""))-select(2, mw.ustring.gsub(code[i][count], "%]", "")) code[i][count] = '' count = count+1 end end data[i][tmp[1]] = tmp[2] end end if (this_system ~= system) or (not system) then system = this_system data[i]['system'] = system else data[i]['system'] = nil end local last = data[i-1] or data[i-2] or data[i-3] if last then for r, s in pairs({ ['hide1'] = {'left', 'to-left', 'note-left', 'oneway-left'}, ['hide2'] = {'right', 'to-right', 'note-right', 'oneway-right'}, ['hidemid'] = {'type', 'note-mid'} }) do if data[i][r] then for m, n in ipairs(s) do if not data[i][n] then data[i][n] = last[n] end end end end end code[i] = {} local X = '|' local Y = (i+group)..'=' if data[i]['system'] then table.insert(code[i], '|system') table.insert(code[i], Y) table.insert(code[i], data[i]['system']) table.insert(code[i], '\n') end for m, n in ipairs(order) do if data[i][n] then table.insert(code[i], X) table.insert(code[i], n) table.insert(code[i], Y) table.insert(code[i], data[i][n]) end end code[i] = table.concat(code[i]) elseif template == 's-note' then code[i] = mw.ustring.gsub(code[i], '|%s*text%s*=', '|header'..i+group..'=') code[i] = mw.ustring.gsub(code[i], '|%s*wide%s*=[^|]*', '') elseif template == 's-text' then code[i] = mw.ustring.gsub(code[i], '|%s*text%s*=', '|note-row'..i+group..'=') elseif delete[template] then code[i] = '' table.insert(remove_rows, 1, i) -- at the start, so that the rows are deleted in reverse order group = group-1 end end for i, v in ipairs(remove_rows) do table.remove(code, v) end code = table.concat(code, '\n') local t = {'{{Adjacent stations' .. (noclear and '|noclear=y\n' or ''), '\n}}'} system = mw.ustring.match(code, '|system(%d*)=') code = mw.ustring.gsub(code, '\n\n+', '\n') if tonumber(system) > firstgroup then -- If s-line isn't the first template then the system will have to be moved to the top system = mw.ustring.match(code, '|system%d*=([^|]*[^|\n])') code = mw.ustring.gsub(code, '|system%d*=[^|]*', '') code = '\n|system'..firstgroup..'='..system..code elseif not mw.ustring.match(code, '^[^{%[]*|[^=|]+2=') then -- If there's only one parameter group then there's no need to have line breaks code = mw.ustring.gsub(code, '\n', '') code = mw.ustring.gsub(code, '(|[^=|]+)1=', '%1=') t[2] = '}}' if not mw.ustring.match(code, '[%[{]') then code = mw.ustring.gsub(code, '|[^=|]*=$', '') code = mw.ustring.gsub(code, '|[^=|]*$', '') end end if not mw.ustring.match(code, '[%[{]') then code = mw.ustring.gsub(code, '|[^=|]*=|', '|') code = mw.ustring.gsub(code, '|[^=|]*|', '|') code = mw.ustring.gsub(code, '|[^=|]*=\n', '\n') code = mw.ustring.gsub(code, '|[^=|]*\n', '\n') end return t[1]..code..t[2] end return p jca1evjg28y2y92hnk1s3eak58flopp ᥛᥨᥝᥱ ᥓᥧᥰ:Adjacent stations/doc 828 2509 7668 2026-06-17T13:24:48Z Saimawnkham 28 Created page with "{{High-use}} {{Lua|Module:Yesno|Module:Arguments|Module:Color contrast|Module:Trim quotes}} {{Module rating|protected}} {{Sidebar Adjacent stations}} This module implements {{tl|Adjacent stations}}, {{tl|Rail icon}}, {{tl|Rail color box}}, {{tl|Line link}}, {{tl|Station link}} and {{tl|Rail color}}. Please see those templates' pages for documentation on how to use those templates. (Instructions for the <code>convert</code> function of this module are in the {{tl|Adjacen..." 7668 wikitext text/x-wiki {{High-use}} {{Lua|Module:Yesno|Module:Arguments|Module:Color contrast|Module:Trim quotes}} {{Module rating|protected}} {{Sidebar Adjacent stations}} This module implements {{tl|Adjacent stations}}, {{tl|Rail icon}}, {{tl|Rail color box}}, {{tl|Line link}}, {{tl|Station link}} and {{tl|Rail color}}. Please see those templates' pages for documentation on how to use those templates. (Instructions for the <code>convert</code> function of this module are in the {{tl|Adjacent stations}} documentation.) The aforementioned templates rely on data stored in subpages for this module ([[Special:PrefixIndex/Module:Adjacent_stations/|list]]). For example, {{tl2|Rail icon|MTR}} generates {{Rail icon|MTR}} using [[Module:Adjacent stations/MTR]]. It is possible to create and edit data by following existing examples, but having some knowledge of Lua helps prevent mistakes. If you have programmed or used Lua before, you may like to skip the next subsection. == Terms == {{for|a more comprehensive overview of Lua|:mw:Extension:Scribunto/Lua reference manual}} * Lua has ''data types''. The ones relevant here are ''boolean'', ''string'', ''number'', and ''table''. ** A ''[[Boolean data type|boolean]]'' is either <code>true</code> or <code>false</code>. ** A ''string'' is text, stored as a list of characters. While Lua has several ways of indicating strings within code, in the Lua examples here, strings are indicated by enclosing text in double quotes (e.g. <code>"This is a string"</code>). ** A ''number'' is a numerical value, like <code>0.5</code> or <code>42</code>. ** A ''table'' is a structure that can contain other objects, including other tables. *** An empty table looks like <code>{}</code> in the code. *** Tables have ''keys'' and ''values'', which are typically of the structure <code>["<var>key</var>"] = <var>value</var></code>; each key–value pair is separated by a comma. All keys used here are strings or numbers. *** <code>{"text", "more text"}</code> is equivalent to <code>{[1] = "text", [2] = "more text"}</code>. * A ''variable'' can be defined using <code>local <var>variable_name</var> = <var>"value"</var>.</code> * ''Whitespace'' is any tab, line break or other space. Whitespace doesn't matter in Lua, but all examples here except for those inline with text are neatly indented for readability, with separate table keys on separate lines. * A ''return statement'' (e.g. <code>return <var>variable_name</var></code>) causes a function to exit and reports the value of <code><var>variable_name</var></code>. The "function" here is the code in the main module calling the subpage, and the <code><var>variable_name</var></code> should be the data table. == Basic structure == Two modules are demonstrated below: {| class="wikitable" |- | [[Module:Adjacent stations/blank|Blank]] || {{syntaxhighlight|lang=lua|{{Module:Adjacent stations/blank}}}} |- | [[Module:Adjacent stations/Kaohsiung Rapid Transit|Example]] || {{syntaxhighlight|lang=lua|{{Module:Adjacent stations/Kaohsiung Rapid Transit}}}} |} The example module is [[Module:Adjacent stations/Kaohsiung Rapid Transit]]. * The two required table entries are "station format" and "lines". The former is a table with data to form links to station articles, and the latter is a table containing a table for each line. * "system title" is the text in the middle cell of the table header row. * "station format" defines the default name format for station articles and exceptions. The first variable ("%1 metro station") is the default. Exceptions are listed as key–value pairs (e.g. "Zuoying"–"Zuoying HSR station"), where the key is the input name. The module displays the input name and links to the article with the formatted name, replacing "%1" with the input. Alternatively, the full wikilink and be entered. This can be used to have the display be different from the input. * "lines" is where the lines are listed. The names here are used internally and not displayed, so choose a concise one. * "line title" is the text displayed in the middle of each row indicating the line; "left terminus" is the default station name for the left side terminus, and "right terminus" is the default station name for the right side terminus. * Each "color" entry is the colour of the line. Below is [[Module:Adjacent stations/Taiwan High Speed Rail]]: {{syntaxhighlight|lang=lua|{{Module:Adjacent stations/Taiwan High Speed Rail}}}} * <var>x</var> (defined in the first line) is a string used for formatting the station name. The variable <var>x</var> is used inside the "station format" table for the three articles where the title ends in "station" instead of "HSR station". This practice is optional but helpful when many articles fit a second pattern. * The module recognises a virtual line named <code>["_default"]</code>. The title and colour of this line is used for all lines unless overridden. Parameters are used in the absence of a specified <code>line=</code> in transclusion. == Hierarchy and list of parameters == # The first layer of the table is data for the entire system, as well as output options. # Under the system table is the list of lines. # The third layer is data for a given line. # Each line can have 'types'. This can be either types of services or branches of the line. # The fifth layer is data for a given type. If not specified, all keys and values are strings. === Main layer (1) === {| class="wikitable" |+ !Parameter !Type !Used in {{Tl|Adjacent stations}} !Description |- |<code>["lang"]</code> |String |{{Yes}} |Values are <code>"en-US"</code> and <code>"en-GB"</code>. If not set, <code>"en-GB"</code> is assumed. |- |<code>["system title"]</code> |String |{{Yes}} |Text in the middle cell of the header. |- |<code>["system icon"]</code> |String |{{Yes}} |Image used in the middle cell of the {{tl|Adjacent stations}} header and by {{tl|Rail icon}}. |- |<code>["system icon format"]</code> |String |{{No}} |Icon type, used by {{tl|Rail icon}}. If specified and not <code>"image"</code>, the value is passed to the function that implements {{tl|Rail color box}}. |- |<code>["system color"]</code> |String |{{No}} |RGB hex triplet (three or six characters, like <code>"BE2D2C"</code> or <code>"039"</code>). Can be called by using only one parameter in {{tl|Rail color}}. |- |<code>["header stop noun"]</code> |String |{{Yes}} |The noun after 'preceding' and 'following' in the left and right header cells. Default value is <code>"station"</code>. |- |<code>["name format"]</code> |String |{{No}} |CSS for the header of {{tl|Infobox station}} and anything else using the <code>style</code> function with {{para|1|header}}. Values can be strings or nested tables, with the first level being for the line (whatever's in {{para|style2}} of {{tl|Infobox station}}). The second level is currently unused. The first entry in a nested table with no key (i.e. with key <code>1</code>) is the default. |- |<code>["header background color"]</code> |String |{{No}} |RGB hex triplet for {{tl|Infobox station}} subheaders and anything else using the <code>style</code> function with {{para|1|subheader}}. By default, it is a light gray. Values can be strings or nested tables, like those for <code>"name format"</code>. |- |<code>["header text color"]</code> |String |{{No}} |RGB hex triplet for {{tl|Infobox station}} subheaders and anything else using the <code>style</code> function with {{para|1|subheader}}. By default, it is calculated based on the header background color. Values can be strings or nested tables, like those for <code>["name format"]</code>. |- |<code>["station format"]</code> |Table or string |{{Yes}} |Table containing station format strings. The first entry without a specified key (i.e. with the key being the number <code>1</code>) is the default, and all other entries must have keys corresponding to the input. Format strings without wikilink brackets are converted to links, with the input (usually the station name) used as the displayed text. Tables can be nested within this table to indicate options based on the line and line type passed to this template. <code>%1</code>, <code>%2</code> and <code>%3</code> can be used in all strings regardless of the level of nesting to be replaced respectively by the station input, the line input (after alias replacement) and the type input (after alias replacement). |- |<code>["lines"]</code> |Table |{{Yes}} |Data table containing line tables. |- |<code>["aliases"]</code> |Table |{{Yes}} |Table containing aliases (as table keys) for lines (as values). All keys are lowercase, as the input is treated as case-insensitive by being lower-cased. |} === Station format table (2) === {| class="wikitable" |+ !Parameter !Type !Used in {{Tl|Adjacent stations}} !Description |- |<code>[1]</code> |String |{{Yes}} |Default format. |- |<code>["''non-default station name''"]</code> |String or table |{{Yes}} |Format for a non-default station, or line-specific format table. |} === Line-specific format table (3) === {| class="wikitable" |+ !Parameter !Type !Used in {{Tl|Adjacent stations}} !Description |- |<code>[1]</code> |String |{{Yes}} |Default format. |- |<code>["''line name''"]</code> |String or table |{{Yes}} |Format for a non-default station, or type-specific format table. |} === Type-specific format table (4) === {| class="wikitable" |+ !Parameter !Type !Used in {{Tl|Adjacent stations}} !Description |- |<code>[1]</code> |String |{{Yes}} |Default format. |- |<code>["''type name''"]</code> |String |{{Yes}} |Format for a non-default station. |} === Line table (3) === A virtual line named <code>["_default"]</code> can be added to set default values for all lines. Currently, this is available for three parameters. {| class="wikitable" !Parameter !Type !Used in {{Tl|Adjacent stations}} !Description |- |<code>["title"]</code> |String |{{Yes}} |The text displayed in the middle cell, typically a link to the line's article. If not specified, then the data in <code>["_default"]</code> is used (<code>%1</code> in the default value is replaced by the input after alias replacement). |- |<code>["short name"]</code> |String |{{No}} |Abbreviated line name used by {{tl|Rail color box}}. |- |<code>["icon"]</code> |String |{{No}} |Image used by {{tl|Rail icon}}. If not specified, then the data in <code>["_default"]</code> is used (<code>%1</code> in the default value is replaced by the input after alias replacement). |- |<code>["icon format"]</code> |String |{{No}} |Icon type used by {{tl|Rail icon}}. If specified and not <code>"image"</code>, the value is passed to the function that implements {{tl|Rail color box}}. |- |<code>["color"]</code> |String |{{Yes}} |RGB hex triplet. Lines fall back to the <code>["_default"]</code> colour (if any) or the system's colour if they themselves do not have one; types fall back to the line's colour (if any), to the <code>["_default"]</code> colour (if any) or to the system's colour. This colour is used in the second and fourth columns of {{tl|Adjacent stations}}, and by {{tl|Rail color box}} and {{tl|Rail icon}} as the emphasised colour. By default, if a type and its line both have a colour, then the line's colour will be treated as the background colour (see next section) for the line name in the middle cell. This can be turned off by setting the type's background colour to <code>""</code> or <code>"transparent"</code>. |- |<code>["background color"]</code> |String |{{Yes}} |RGB hex triplet (three or six characters). This colour is optional and is only displayed behind the line name in the middle cell. The module adds transparency so that all text displayed over the background is legible. |- |<code>["border color"]</code> |String |{{No}} |RGB hex triplet used by {{tl|Rail color box}}. |- |<code>["text color"]</code> |String |{{No}} |RGB hex triplet used by {{tl|Rail color box}}. |- |<code>["left terminus"]</code> |String |{{Yes}} |The station which is usually the left terminus of the line. If there are multiple stations by default, the value should be a table containing numbered values (e.g. <code>["left terminus"] = {"Chesham", "Amersham"}</code>). The key <code>["via"]</code> in that table can be used to append 'via' and the value's station link. |- |<code>["right terminus"]</code> |String |{{Yes}} |The station which is usually the right terminus of the line; behaves like <code>["left terminus"]</code>. |- |<code>["note-mid"]</code> |String |{{Yes}} |Default small text below line and type names. Overridden by {{para|note-mid}} in transclusion. |- |<code>["circular"]</code> |Boolean |{{Yes}} |If the value is <code>true</code> then the termini will display without 'toward'/'towards'. May be overridden by type. |- |<code>["oneway-left"]</code> |Boolean |{{Yes}} |If the value is <code>true</code> then 'One-way operation' will display instead of the left terminus. |- |<code>["oneway-right"]</code> |Boolean |{{Yes}} |Right counterpart of oneway-left. |- |<code>["types"]</code> |Table |{{Yes}} |Table containing the line type tables. |} === Type table (5) === {| class="wikitable" !Parameter !Type !Used in {{Tl|Adjacent stations}} !Description |- |<code>["title"]</code> |String |{{Yes}} |The name of the line type. In {{tl|Adjacent stations}}, this is displayed as normal-sized text below the line name in the middle cell; in {{tl|Rail color box}}, for some options this is displayed after the line name, separated from it by a spaced [[en dash]] (this is also used for the nonstop text). To avoid displaying a type name, set this to <code>""</code>. |- |<code>["short name"]</code> |String |{{No}} |Abbreviated line name used by {{tl|Rail color box}}. |- |<code>["icon"]</code> |String |{{No}} |Image used by {{tl|Rail icon}}. |- |<code>["icon format"]</code> |String |{{No}} |Icon type used by {{tl|Rail icon}}. If specified and not <code>"image"</code>, the value is passed to the function that implements {{tl|Rail color box}}. |- |<code>["color"]</code> |String |{{Yes}} |RGB hex triplet. Lines fall back to the <code>["_default"]</code> colour (if any) or the system's colour if they themselves do not have one; types fall back to the line's colour (if any), to the <code>["_default"]</code> colour (if any) or to the system's colour. This colour is used in the second and fourth columns of {{tl|Adjacent stations}}, and by {{tl|Rail color box}} and {{tl|Rail icon}} as the emphasised colour. By default, if a type and its line both have a colour, then the line's colour will be treated as the background colour (see next section) for the line name in the middle cell. This can be turned off by setting the type's background colour to <code>""</code> or <code>"transparent"</code>. |- |<code>["background color"]</code> |String |{{Yes}} |RGB hex triplet (three or six characters). This colour is optional and is only displayed behind the line name in the middle cell. The module adds transparency so that all text displayed over the background is legible. |- |<code>["border color"]</code> |String |{{No}} |RGB hex triplet used by {{tl|Rail color box}}. |- |<code>["text color"]</code> |String |{{No}} |RGB hex triplet used by {{tl|Rail color box}}. |- |<code>["left terminus"]</code> |String |{{Yes}} |The station which is usually the left terminus of the line. Overrides line terminus. If there are multiple stations by default, the value should be a table containing numbered values (e.g. <code>["left terminus"] = {"Chesham", "Amersham"}</code>). The key <code>["via"]</code> in that table can be used to append 'via' and the value's station link. |- |<code>["right terminus"]</code> |String |{{Yes}} |The station which is usually the right terminus of the line; behaves like <code>["left terminus"]</code>. |- |<code>["note-mid"]</code> |String |{{Yes}} |Default small text below line and type names. Overridden by {{para|note-mid}} in transclusion. |- |<code>["circular"]</code> |Boolean |{{Yes}} |If the value is <code>true</code> then the termini will display without 'toward'/'towards'. <!-- Types currently do not have these parameters. However, it could make sense to add them if the need arises. |- |<code>["oneway-left"]</code> |Boolean |{{Yes}} |If the value is <code>true</code> then 'One-way operation' will display instead of the left terminus. |- |<code>["oneway-right"]</code> |Boolean |{{Yes}} |Right counterpart of oneway-left. --> |} == For editors == === Disambiguating stations === Station links are generated using the <code>station format</code> part of the data module. Each data module defines a default case and then exceptions, if necessary. <code>Station format</code> is an array, similar to a switch with cases. Take [[Module:Adjacent stations/Incheon Subway]], shown below: {{syntaxhighlight|lang=lua|{{Module:Adjacent stations/Incheon Subway}}}} The default case is <code>"%1 station"</code>, listed first. The "%1" expands to whatever the passed name of the station is. "Bakchon" becomes [[Bakchon station]]. There are several exceptions. The two usual reasons for exceptions are disambiguation or presenting a name in a non-standard way. In this case, the [[Incheon Subway]] serves three stations whose names are disambiguated: [[Arts Center station (Incheon)]], [[Central Park station (Incheon)]], and [[Mansu station (Incheon)]]. This is handled by specifying a key for each station and supplying a different format. Since all three are disambiguated the same way, you can define a local variable at the top of the module: {{syntaxhighlight|lang=lua|code=local incheon = "%1 station (Incheon)"}} This can then be used with the exceptions: {{syntaxhighlight|lang=lua|code=["Arts Center"] = incheon,}} Were it written out, it would look like this: {{syntaxhighlight|lang=lua|code=["Arts Center"] = "%1 station (Incheon)"}} == For developers == Suggestions are welcomed on the talk page. === To-do list === * Convert more systems from {{tl|S-line}}, {{tl|rail line}}, {{tl|J-rserv}} and {{tl|J-route}} * Make [[Module:Adjacent stations/example|an example module]] which contains all of the module's features, to avoid excessive examples in the documentation (maybe based on {{tl|Rdt demo}}) * Allow direct replacement of {{tl|Rail line}}? * Before translation: figure out how to handle grammatical gender and inflection in various languages with the i18n table (e.g. [https://translate.google.com/#en/fi/towards%20Edgware%2C%20High%20Barnet%20or%20Mill%20Hill%20East%0Atowards%20Edgware%20via%20Charing%20Cross%0Atowards%20High%20Barnet%20via%20Charing%20Cross%0Athrough%20to%20the%20Piccadilly%20line%0Athrough%20to%20the%20route%20Q42%0Athrough%20to%20the%20Waterfront%20line%0AThe%20red%20route%20does%20not%20stop%20here%0AThe%20blue%20line%20does%20not%20stop%20here%0ALine%2014%20does%20not%20stop%20here%0AService%2014%20does%20not%20stop%20here%0ARed%20line%20does%20not%20stop%20here%0ABlue%20route%20does%20not%20stop%20here these phrases]) * Allow inline sources to be added * Figure out Wikidata integration (require sources on Wikidata end) : *:should be doable with P197, P5051, P1192 and P81. [[User:Bouzinac|Bouzinac]] ([[User talk:Bouzinac|talk]]) 09:17, 3 December 2021 (UTC) * Add a short list of changes from {{tl|S-line}}, for the convenience of the many editors who have used it in the last 11 years ** changes in function (new structure, data inside module, circular and branch functionality changed, replacement of manual cell merging…) ** parameter name changes (-left and -right, mostly – search {{tl|S-line}} for {{(((}}, maybe with the TemplateData generator, to make a list) <includeonly>{{Sandbox other|| [[Category:Rail transport succession modules| ]] }}</includeonly><noinclude>[[Category:Module documentation pages]]</noinclude> kvjg76y8u4urc5paw93kiueg67lm0df ᥛᥨᥝᥱ ᥓᥧᥰ:Adjacent stations/i18n 828 2510 7669 2026-06-17T13:25:28Z Saimawnkham 28 Created page with "local p = {} p = { ['en-GB'] = { ['preceding'] = function(s) return s and 'Preceding ' .. s end, ['following'] = function(s) return s and 'Following ' .. s end, ['stop_noun'] = 'station', ['nonstop_past'] = function(s) return s and s .. ' did not stop here' end, ['nonstop_present'] = function(s) return s and s .. ' does not stop here' end, ['comma'] = function(s) return s and ', ' .. s end, ['or'] = function(s) return s and ' o..." 7669 Scribunto text/plain local p = {} p = { ['en-GB'] = { ['preceding'] = function(s) return s and 'Preceding ' .. s end, ['following'] = function(s) return s and 'Following ' .. s end, ['stop_noun'] = 'station', ['nonstop_past'] = function(s) return s and s .. ' did not stop here' end, ['nonstop_present'] = function(s) return s and s .. ' does not stop here' end, ['comma'] = function(s) return s and ', ' .. s end, ['or'] = function(s) return s and ' or ' .. s end, ['via-first'] = false, -- If the «via» text comes before termini, change to «true» ['via'] = function(s) return s and ' via&nbsp;' .. s end, ['comma-format'] = ',%s+', ['or-format'] = '%s+or%s+', ['via-format'] = '%s+via%s+(.+)$', -- first match is station name ['towards'] = function(s) return s and 'towards ' .. s end, ['through'] = function(s) return s and 'through to ' .. s end, ['reverse'] = 'Reverses direction', ['oneway'] = 'One-way operation', ['terminus'] = 'Terminus', ['transfer'] = function(s) return s and 'transfer at ' .. s end, ['error_duplicate'] = function(s) return s and 'Same row number used multiple times for ' .. s end, ['error_format'] = 'Station format table missing in data page', ['error_line'] = 'Lines table missing in data module', ['error_missing'] = function(s) return s and '"' .. (s or '') .. '" is missing from the data page' end, ['error_unknown'] = function(s) return s and 'Unknown line "' .. (s or '') .. '"' end } } p['en-US'] = mw.clone(p['en-GB']) p['en-US']['towards'] = function(s) return s and 'toward ' .. s end p['en-AU'] = mw.clone(p['en-GB']) return p qjwzqzndyls4gd2zajp1iwpq4kxtlyj