Module:Italic title

-- This module implements. local p = {} function p.main(frame) -- Process the arguments. local args if frame == mw.getCurrentFrame then args = frame:getParent.args for k, v in pairs(frame.args) do           args = frame.args break end else args = frame end local title = mw.title.getCurrentTitle -- Get the current page object. -- Find the parts before and after the disambiguation parentheses, if any. -- local prefix, parentheses = mw.ustring.match(title.text, '^(.+) (%([^%(%)]+%))$') local prefix, parentheses = mw.ustring.match(title.text, '^(.+)([%(%)%/].+)$') -- If parentheses were found, italicise only the part before them. Otherwise -- italicise the whole title. -- Edit by Vorticity -- don't italicize subpages either local result if prefix and parentheses and args.all ~= 'yes' then result = "''" .. prefix .. "''" .. parentheses else result = "''" .. title.text .. "''"   end -- Add the namespace if it exists. if title.nsText and title.nsText ~= "" then result = title.nsText .. ':' .. result end -- Call displaytitle with the text we generated. return mw.getCurrentFrame:callParserFunction( 'DISPLAYTITLE', result ) end return p