localp={}localgrey="#888"-- Make a piped link to a category, if it exists-- If it doesn't exist, just display the greyed unlinked titlefunctionmakeCatLink(catname,disp)localdisplaytext=catnameifdispanddisp~=''then-- use 'disp' parameter, but strip any trailing disambiguatordisplaytext=mw.ustring.gsub(disp,'%s+%(.+$','');endlocalcatPage=mw.title.new(catname,'Category')if(catPage.exists)thenreturn'[[:Category:'..catname..'|'..displaytext..']]'elsereturn'<span style="color:'..grey..'">'..displaytext.."</span>"endendfunctionp.navyear(frame)--Expects a PAGENAME of the form "Some sequential 1760 example cat", where -- {{{1}}}=Some sequential-- {{{2}}}=1760-- {{{3}}}=example cat-- {{{4}}}=1758 ('min' year parameter; optional)-- {{{5}}}=1800 ('max' year parameter; optional)localfirsthalf=frame.args[1]localyear=tonumber(frame.args[2])locallasthalf=frame.args[3]localminyear=tonumber(frame.args[4])or-9999localmaxyear=tonumber(frame.args[5])or9999localnavyear='{| class="toccolours hlist" style="text-align: center; margin: auto;"\n'..'|\n'locali=-5whilei<=5dolocaly=year+iifi~=0thenif(y>=minyear)and(y<=maxyear)then-- ex: 1758, 1759, 1761, 1762, 1763, 1764, 1765navyear=navyear..'*'..makeCatLink(firsthalf..' '..y..' '..lasthalf,y)..'\n'else-- ex: 1755, 1756, 1757navyear=navyear..'*<span style="visibility:hidden">'..y..'</span>\n'endelse-- ex: 1760navyear=navyear..'*<b>'..year..'</b>\n'endi=i+1endreturnnavyear..'|}'endreturnp