Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

Jump to content

Module:Adjacent stations/MTR

Permanently protected module
From Wikipedia, the free encyclopedia

local x = "%1 station (MTR)"
local y = "%1 railway station"

local c = {
	EastRail         = '53B7E8',
	WestRail         = 'A3238F',
	KwunTong         = '00AB4E',
	TsuenWan         = 'ED1D24',
	Island           = '007DC5',
	TseungKwanO      = '7D499D',
	TungChung        = 'F7943E',
	AirportExpress   = '00888A',
	DisneylandResort = 'F173AC',
	SouthIsland      = 'BAC429',
	TuenMa           = '923011',
	SouthIslandWest  = '9182C2',
	EastKowloon      = '006633',
	Northern         = 'E0027A',
	MaOnShan         = '923011',
	CentralRailLink  = 'CCCCCC',
	GuangzhouKowloon = '824CA0',
	BeijingKowloon   = '008000',
	ShanghaiKowloon  = 'FFA500',
	LightRail        = 'D3A809',
	NgongPing360     = '94989A',
	HighSpeedRail    = 'BBB0A3',
	Northeast        = 'FE7F1D',
}

-- Draw stacked bottom bars
local function bottomBars(cols)
    local n = #cols
    if n == 0 then return "" end
    local total = n * 6 + 1
    local images = {"linear-gradient(#11254A,#11254A)"}
    local sizes = {"100% calc(100% - "..total.."px)"}
    local pos = {"left top"}
    local off = 0
    for _, hex in ipairs(cols) do
        off = off + 1
        images[#images+1], sizes[#sizes+1], pos[#pos+1] = "linear-gradient(#"..hex..",#"..hex..")", "100% 5px", "left bottom "..off.."px"
        off = off + 5
    end
    return "background-color:transparent; background-image:"..table.concat(images,",").."; background-size:"..table.concat(sizes,",").."; background-position:"..table.concat(pos,",").."; background-repeat:no-repeat; padding-bottom:calc(0.3em + "..total.."px);"
end

-- Convert input text to stacked bottom bars
local function styleFromNames(styleText)
    local base = "font-size:125%; font-weight:bold; color:#FFFFFF; background-color:#11254A; padding:0.3em 4px; line-height:110%;"
	if not styleText or styleText == "" then return base end
    local cols = {}
    for part in styleText:gmatch("[^,]+") do
        local key = (part or ""):gsub("[^%w]", "")
        local hex = c[key]
        if not hex then return base end
        cols[#cols+1] = hex
    end
    local rev = {}
    for i = #cols, 1, -1 do
        rev[#rev+1] = cols[i]
    end
    return base .. bottomBars(rev)
end

local p = {
	["system title"] = "[[MTR]]",
	["system icon"] = "[[File:HK MTR logo.svg|x16px|link=MTR|alt=MTR]]",
	["system color"] = "ad2a42",
	["line icon format"] = "link",
	["rail box format"] = "title",
	["name format"] = setmetatable({}, {
	    __index = function(_, key)
	        return styleFromNames(key)
	    end
	}),
	["header background color"] = {
		"11254A",
	},["header text color"] = "FFFFFF",
	["station format"] = {
		"%1 station",
		
		["Aberdeen"] = x,
		["Admiralty"] = x,
		["Airport"] = x,
		["Austin"] = x,
		["Central"] = x,
		["Exhibition Centre"] = x,
		["Kowloon"] = x,
		["Racecourse"] = x,
		["Science Park"] = x,
		["University"] = x,
		["Oyster Bay"] = x,
		
		["Beijing West"] = y,
		["Changsha"] = y,
		["Foshan"] = y,
		["Guangzhou East"] = y,
		["Jinhua"] = y,
		["Shanghai"] = y,
		["West Kowloon"] = y,
		["Wuchang"] = y,
		["Zhaoqing"] = y,
		["Zhengzhou"] = y,
		["Zhuzhou"] = y,
		
		["Changping"] = "%1 railway station (Guangdong)",
		["Dongguan"] = "%1 railway station (Guangdong)",
		["Argyle"] = "Mong Kok station",
		["Chater"] = "Central station (MTR)",
		["Lai Wan"] = "Mei Foo station",
		["Waterloo"] = "Yau Ma Tei station",
		
		["Ngong Ping Terminal"] = "%1",
		
	},
	["lines"] = {
		["_default"] = {
			["title"] = "[[%1 line]]",
			["text color"] = "FFFFFF"
		},
		["East Rail"] = {
			["color"] = c.EastRail,
			["icon"] = "[[File:東鐵綫 Hong Kong MTR East Rail Line.png|28px|link=East Rail line]]",
			["left terminus"] = "Admiralty",
			["right terminus"] = {"Lo Wu", "Lok Ma Chau"},
		},
		["West Rail"] = {
			["color"] = c.WestRail,
			["left terminus"] = "Hung Hom",
			["right terminus"] = "Tuen Mun",
		},
		["Kwun Tong"] = {
			["color"] = c.KwunTong,
			["icon"] = "[[File:觀塘綫 Hong Kong MTR Kwun Tong Line.png|28px|link=Kwun Tong line]]",
			["left terminus"] = "Whampoa",
			["right terminus"] = "Tiu Keng Leng",
		},
		["Tsuen Wan"] = {
			["color"] = c.TsuenWan,
			["icon"] = "[[File:荃灣綫 Hong Kong MTR Tsuen Wan Line.png|28px|link=Tsuen Wan line]]",
			["left terminus"] = "Central",
			["right terminus"] = "Tsuen Wan",
		},
		["Island"] = {
			["title"] = "[[Island line (MTR)|Island line]]",
			["icon"] = "[[File:港島綫 Hong Kong MTR Island Line.png|28px|link=Island line (MTR)]]",
			["color"] = c.Island,
			["left terminus"] = "Kennedy Town",
			["right terminus"] = "Chai Wan",
		},
		["Tseung Kwan O"] = {
			["color"] = c.TseungKwanO,
			["icon"] = "[[File:將軍澳綫 Hong Kong MTR Tseung Kwan O Line.png|28px|link=Tseung Kwan O line]]",
			["left terminus"] = "North Point",
			["right terminus"] = "Po Lam",
			["types"] = {
				["LOHAS Park rush hours"] = {
					["title"] = "",
					["right terminus"] = "LOHAS Park",
					["note-mid"] = "<small><i>(Rush hours only)</i></small>",
				},
				["LOHAS Park off-peak"] = {
					["title"] = "",
					["left terminus"] = "Tiu Keng Leng",
					["right terminus"] = "LOHAS Park",
					["note-mid"] = "Off-peak shuttle service",
				},
				["NIL"] = {
					["title"] = "",
					["left terminus"] = "Tamar",
					["right terminus"] = {"Po Lam", "LOHAS Park"},
					["note-mid"] = "([[North Island line]])",
				},
			},
		},
		["Tung Chung"] = {
			["color"] = c.TungChung,
			["icon"] = "[[File:東涌綫 Hong Kong MTR Tung Chung Line.png|28px|link=Tung Chung line]]",
			["left terminus"] = "Hong Kong",
			["right terminus"] = "Tung Chung",
			["types"] = {
				["NIL"] = {
					["title"] = "",
					["left terminus"] = "Tamar",
					["note-mid"] = "([[North Island line]])",
				},
				["Tung Chung West"] = {
					["title"] = "",
					["right terminus"] = "Tung Chung West",
					["note-mid"] = "Tung Chung line extension",
				},
			},
		},
		["Airport Express"] = {
			["title"] = "[[Airport Express (MTR)|Airport Express]]",
			["color"] = c.AirportExpress,
			["left terminus"] = "Hong Kong",
			["icon"] = "[[File:AirportExpressMTR.svg|16px|link=Airport Express (MTR)]]",
			["right terminus"] = "AsiaWorld–Expo"
		},
		["Disneyland Resort"] = {
			["color"] = c.DisneylandResort,
			["icon"] = "[[File:迪士尼綫 Hong Kong MTR Disneyland Resort Line.png|28px|link=Disneyland Resort line]]",
			["left terminus"] = "Sunny Bay",
			["right terminus"] = "Disneyland Resort"
		},
		["South Island"] = {
			["color"] = c.SouthIsland,
			["icon"] = "[[File:南港島綫 Hong Kong MTR South Island Line.png|28px|link=South Island line]]",
			["left terminus"] = "Admiralty",
			["right terminus"] = "South Horizons",
		},
		["Tuen Ma"] = {
			["color"] = c.TuenMa,
			["icon"] = "[[File:屯馬綫 Hong Kong MTR Tuen Ma Line.png|28px|link=Tuen Ma line]]",
			["left terminus"] = "Wu Kai Sha",
			["right terminus"] = "Tuen Mun",
			["types"] = {
				["Tuen Mun South"] = {
					["title"] = "",
					["right terminus"] = "Tuen Mun South",
					["note-mid"] = "Tuen Mun South extension",
				},
			},
		},
		["South Island West"] = {
			["title"] = "[[South Island line (West)]]",
			["short name"] = "South Island (West)",
			["color"] = c.SouthIslandWest,
			["left terminus"] = "HKU",
			["right terminus"] = "Wong Chuk Hang"
		},
		["East Kowloon"] = {
			["color"] = c.EastKowloon,
			["left terminus"] = "Choi Hung East",
			["right terminus"] = "Yau Tong East"
		},
		["Northern"] = {
			["title"] = "[[Northern Link (MTR)|Northern Link]]",
			["color"] = c.Northern,
			["left terminus"] = "Kam Sheung Road",
			["right terminus"] = {"Kwu Tung", "Huanggang Port"}
		},
		["Ma On Shan"] = {
			["color"] = c.MaOnShan,
			["left terminus"] = "Wu Kai Sha",
			["right terminus"] = "Tai Wai"
		},
		["Central Rail Link"] = {
			["title"] = "[[Central Rail Link]]",
			["color"] = c.CentralRailLink,
			["left terminus"] = "Kam Sheung Road",
			["right terminus"] = "Kowloon Tong"
		},
		["Guangzhou–Kowloon"] = {
			["title"] = "[[Guangzhou–Kowloon through train]]",
			["short name"] = "Guangzhou–Kowloon",
			["color"] = c.GuangzhouKowloon,
			["left terminus"] = "Guangzhou East",
			["right terminus"] = "Hung Hom"
		},
		["Beijing–Kowloon"] = {
			["title"] = "[[Beijing–Kowloon through train]]",
			["short name"] = "Beijing–Kowloon",
			["color"] = c.BeijingKowloon,
			["left terminus"] = "Beijing West",
			["right terminus"] = "Hung Hom"
		},
		["Shanghai–Kowloon"] = {
			["title"] = "[[Shanghai–Kowloon through train]]",
			["short name"] = "Shanghai–Kowloon",
			["color"] = c.ShanghaiKowloon,
			["left terminus"] = "Shanghai",
			["right terminus"] = "Hung Hom"
		},
		["Light Rail"] = {
			["icon"] = "[[File:MTRlightrail.svg|16px|link=Light Rail (MTR)]]",
			["title"] = "[[Light Rail (MTR)|Light Rail]]",
			["color"] = c.LightRail
		},
		["Ngong Ping 360"] = {
			["icon"] = "[[File:MTRNgongPing360.svg|16px|link=Ngong Ping 360]]",
			["title"] = "[[Ngong Ping 360]]",
			["color"] = c.NgongPing360,
			["left terminus"] = "Tung Chung Terminal",
			["right terminus"] = "Ngong Ping Terminal",
		},
		["High Speed Rail"] = {
			["icon"] = "[[File:MTRExpressRail.svg|16px|link=Hong Kong Express Rail Link]]",
			["title"] = "[[Hong Kong Express Rail Link]]",
			["color"] = c.HighSpeedRail
		},
		["Northeast New Territories"] = {
			["title"] = "[[Northeast New Territories line]]",
			["color"] = c.Northeast,
			["left terminus"] = "Fanling",
			["right terminus"] = "Heung Yuen Wai"
		}
	},
	["aliases"] = {
		["tsuen wan"] = "Tsuen Wan",
		["tsuen wan line"] = "Tsuen Wan",
		["twl"] = "Tsuen Wan",
		["tw"] = "Tsuen Wan",
		["kwun tong"] = "Kwun Tong",
		["kwun tong line"] = "Kwun Tong",
		["ktl"] = "Kwun Tong",
		["kt"] = "Kwun Tong",
		["k"] = "Kwun Tong",
		["island"] = "Island",
		["island line"] = "Island",
		["isl"] = "Island",
		["is"] = "Island",
		["i"] = "Island",
		["tseung kwan o line"] = "Tseung Kwan O",
		["tseung kwan o"] = "Tseung Kwan O",
		["tkol"] = "Tseung Kwan O",
		["tko"] = "Tseung Kwan O",
		["tkl"] = "Tseung Kwan O",
		["tk"] = "Tseung Kwan O",
		["tung chung"] = "Tung Chung",
		["tung chung line"] = "Tung Chung",
		["tcl"] = "Tung Chung",
		["tc"] = "Tung Chung",
		["disneyland resort line"] = "Disneyland Resort",
		["disneyland"] = "Disneyland Resort",
		["disney"] = "Disneyland Resort",
		["drl"] = "Disneyland Resort",
		["dr"] = "Disneyland Resort",
		["d"] = "Disneyland Resort",
		["airport express"] = "Airport Express",
		["airport"] = "Airport Express",
		["ael"] = "Airport Express",
		["ae"] = "Airport Express",
		["a"] = "Airport Express",
		["east rail line"] = "East Rail",
		["east rail"] = "East Rail",
		["east"] = "East Rail",
		["eal"] = "East Rail",
		["erl"] = "East Rail",
		["er"] = "East Rail",
		["ea"] = "East Rail",
		["e"] = "East Rail",
		["north south corridor"] = "East Rail",
		["north south line"] = "East Rail",
		["north-south line"] = "East Rail",
		["north south"] = "East Rail",
		["north-south"] = "East Rail",
		["central rail"] = "Central Rail Link",
		["crl"] = "Central Rail Link",
		["west rail line"] = "West Rail",
		["west"] = "West Rail",
		["wrl"] = "West Rail",
		["wr"] = "West Rail",
		["w"] = "West Rail",
		["ma on shan line"] = "Ma On Shan",
		["ma on shan"] = "Ma On Shan",
		["mosl"] = "Ma On Shan",
		["mos"] = "Ma On Shan",
		["mol"] = "Ma On Shan",
		["mo"] = "Ma On Shan",
		["m"] = "Ma On Shan",
		["tuen ma line"] = "Tuen Ma",
		["tuen ma"] = "Tuen Ma",
		["tml"] = "Tuen Ma",
		["tm"] = "Tuen Ma",
		["east west corridor"] = "Tuen Ma",
		["east west line"] = "Tuen Ma",
		["east-west line"] = "Tuen Ma",
		["east west"] = "Tuen Ma",
		["east-west"] = "Tuen Ma",
		["ewl"] = "Tuen Ma",
		["ewc"] = "Tuen Ma",
		["ew"] = "Tuen Ma",
		["east kowloon line"] = "East Kowloon",
		["ekl"] = "East Kowloon",
		["ek"] = "East Kowloon",
		["south island"] = "South Island",
		["south island line"] = "South Island",
		["south island line east section"] = "South Island",
		["south island line east"] = "South Island",
		["south island east"] = "South Island",
		["sil"] = "South Island",
		["sile"] = "South Island",
		["sie"] = "South Island",
		["sel"] = "South Island",
		["se"] = "South Island",
		["south island line west section"] = "South Island West",
		["south island line west"] = "South Island West",
		["south island west"] = "South Island West",
		["silw"] = "South Island West",
		["siw"] = "South Island West",
		["swl"] = "South Island West",
		["sw"] = "South Island West",
		["northern link"] = "Northern",
		["northern"] = "Northern",
		["nol"] = "Northern",
		["nrl"] = "Northern",
		["nr"] = "Northern",
		["nl"] = "Northern",
		["guangzhou-kowloon through train"] = "Guangzhou–Kowloon",
		["guangdong through train"] = "Guangzhou–Kowloon",
		["guangjiu"] = "Guangzhou–Kowloon",
		["guangzhou-kowloon"] = "Guangzhou–Kowloon",
		["jiuguang"] = "Guangzhou–Kowloon",
		["guangdong"] = "Guangzhou–Kowloon",
		["gd"] = "Guangzhou–Kowloon",
		["gz"] = "Guangzhou–Kowloon",
		["beijing–kowloon through train"] = "Beijing–Kowloon",
		["beijing–kowloon"] = "Beijing–Kowloon",
		["beijing-kowloon"] = "Beijing–Kowloon",
		["beijingkowloon"] = "Beijing–Kowloon",
		["beijing"] = "Beijing–Kowloon",
		["bk"] = "Beijing–Kowloon",
		["shanghai–kowloon through train"] = "Shanghai–Kowloon",
		["shanghai–kowloon"] = "Shanghai–Kowloon",
		["shanghai-kowloon"] = "Shanghai–Kowloon",
		["shanghaikowloon"] = "Shanghai–Kowloon",
		["shanghai"] = "Shanghai–Kowloon",
		["sk"] = "Shanghai–Kowloon",
		["lrt"] = "Light Rail",
		["lr"] = "Light Rail",
		["l"] = "Light Rail",
		["ngong ping cable car"] = "Ngong Ping 360",
		["ngong ping"] = "Ngong Ping 360",
		["360"] = "Ngong Ping 360",
		["np360"] = "Ngong Ping 360",
		["ngp"] = "Ngong Ping 360",
		["xrl"] = "High Speed Rail",
		["guangshengang"] = "High Speed Rail",
		["guangzhou-shenzhen-hong kong"] = "High Speed Rail",
		["nel"] = "Northeast New Territories",
		["northeast"] = "Northeast New Territories"
	}
}

return p