Module:Lang: Difference between revisionsGive feedback
Jump to navigation
Jump to search
Gammaton32 (talk | contribs) added replacement and binding list in case of mismatched keys |
Gammaton32 (talk | contribs) optimized keybind replacement |
||
| Line 162: | Line 162: | ||
-- List for keybinds with mismatched names. Replace with the correct name under "citadel_keybind_[key]" in Data:Lang | -- List for keybinds with mismatched names. Replace with the correct name under "citadel_keybind_[key]" in Data:Lang | ||
keybinds = { | |||
MoveForward = "forward", | MoveForward = "forward", | ||
AltCast = "alt_cast", | AltCast = "alt_cast", | ||
| Line 169: | Line 169: | ||
-- Process citadel_binding/citadel_keybind tags to replace with keybind strings/templates | -- Process citadel_binding/citadel_keybind tags to replace with keybind strings/templates | ||
text = text:gsub("{g:citadel_binding:'(.-)'}", function(key) | text = text:gsub("{g:citadel_binding:'(.-)'}", function(key) | ||
-- convert key to lowercase | -- convert key to lowercase | ||
local lower_key = key:lower() | local lower_key = key:lower() | ||
-- look up key with Module:Lang. check if it has a replacement key first | |||
local | local replacement = keybinds[key] or lower_key | ||
local translated = frame:preprocess('{{#invoke:Lang|get_string|citadel_keybind_'.. replacement ..'}}') | |||
if translated ~= nil and translated ~= '' then | |||
return "'''" .. translated .. "'''" | |||
else | |||
return '<span style="color:red;font-weight:bold;border-bottom:1px dotted red;" title="Missing keybind - Add \''..key..'\' to local replacements in [Module:Lang]">['..key..']</span>' | |||
end | end | ||
end) | end) | ||