Module:tln-headword: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
local p = {} | local p = {} | ||
local function get_args(frame) | |||
return frame:getParent().args | |||
end | |||
local function format_rom(rom) | |||
if rom and rom ~= "" then | |||
return " • (" .. rom .. ")" | |||
end | |||
return "" | |||
end | |||
local function format_gender(g) | |||
local gender_map = { | |||
m = "m.", | |||
f = "f.", | |||
n = "n." | |||
} | |||
local label = gender_map[g] or (g and (g .. ".") or "?.") | |||
return " ''" .. label .. "''" | |||
end | |||
-- ========================= | |||
-- NOUN | |||
-- ========================= | |||
function p.noun(frame) | function p.noun(frame) | ||
local args = frame | local args = get_args(frame) | ||
local title = mw.title.getCurrentTitle().text | |||
local | local rom = args.rom or "" | ||
local g = args.g or "?" | |||
local pl = args.pl or "" | |||
local plrom = args.plrom or "" | |||
local | local text = "'''" .. title .. "'''" | ||
text = text .. format_rom(rom) | |||
text = text .. format_gender(g) | |||
if pl ~= "" then | |||
text = text .. ", plural '''[[" .. pl .. "]]'''" | |||
if plrom ~= "" then | |||
text = text .. " (" .. plrom .. ")" | |||
end | |||
end | |||
return text | |||
text | |||
end | end | ||
text = | -- ========================= | ||
-- VERB | |||
-- ========================= | |||
function p.verb(frame) | |||
local args = get_args(frame) | |||
local title = mw.title.getCurrentTitle().text | |||
local rom = args.rom or "" | |||
local past = args.past or "" | |||
local text = "'''" .. title .. "'''" | |||
text = text .. format_rom(rom) | |||
text = text .. " ''v.''" | |||
text = text .. " | |||
if | if past ~= "" then | ||
text = text .. " | text = text .. ", past '''" .. past .. "'''" | ||
end | end | ||
return text | |||
end | end | ||
-- ========================= | |||
-- ADJECTIVE (basic placeholder) | |||
-- ========================= | |||
function p.adj(frame) | |||
local args = get_args(frame) | |||
local title = mw.title.getCurrentTitle().text | |||
local rom = args.rom or "" | |||
local text = "'''" .. title .. "'''" | |||
text = text .. format_rom(rom) | |||
text = text .. " ''adj.''" | |||
return text | return text | ||
Revision as of 19:38, 18 June 2026
- This module lacks a documentation subpage. Please create it.
- Useful links: subpage list • links • transclusions • testcases • sandbox
local p = {}
local function get_args(frame)
return frame:getParent().args
end
local function format_rom(rom)
if rom and rom ~= "" then
return " • (" .. rom .. ")"
end
return ""
end
local function format_gender(g)
local gender_map = {
m = "m.",
f = "f.",
n = "n."
}
local label = gender_map[g] or (g and (g .. ".") or "?.")
return " ''" .. label .. "''"
end
-- =========================
-- NOUN
-- =========================
function p.noun(frame)
local args = get_args(frame)
local title = mw.title.getCurrentTitle().text
local rom = args.rom or ""
local g = args.g or "?"
local pl = args.pl or ""
local plrom = args.plrom or ""
local text = "'''" .. title .. "'''"
text = text .. format_rom(rom)
text = text .. format_gender(g)
if pl ~= "" then
text = text .. ", plural '''[[" .. pl .. "]]'''"
if plrom ~= "" then
text = text .. " (" .. plrom .. ")"
end
end
return text
end
-- =========================
-- VERB
-- =========================
function p.verb(frame)
local args = get_args(frame)
local title = mw.title.getCurrentTitle().text
local rom = args.rom or ""
local past = args.past or ""
local text = "'''" .. title .. "'''"
text = text .. format_rom(rom)
text = text .. " ''v.''"
if past ~= "" then
text = text .. ", past '''" .. past .. "'''"
end
return text
end
-- =========================
-- ADJECTIVE (basic placeholder)
-- =========================
function p.adj(frame)
local args = get_args(frame)
local title = mw.title.getCurrentTitle().text
local rom = args.rom or ""
local text = "'''" .. title .. "'''"
text = text .. format_rom(rom)
text = text .. " ''adj.''"
return text
end
return p