Bu modül şu Lua modüllerini kullanıyor: |
Bu Lua modülü yaklaşık 165.000 sayfada kullanılmaktadır. Lütfen yapacağınız değişiklikleri büyük ölçekli aksamaları ve sunucuya gereksiz yük binmesini önlemek için öncelikle şablonun ile alt sayfalarında ya da kendi test ediniz. Testten geçen değişiklikler daha sonra bu sayfaya tek bir düzenlemede eklenebilir. Eğer yapmayı planladığınız değişiklikler ile istediğiniz sonucu elde edemiyorsanız görüş alışverişinde bulununuz. |
Bu modül . Tam sürüme ulaştığı, hatasız olarak ilgili maddelerde kullanıma hazır olduğu düşünülmektedir. Modül üzerinde yapılacak deneme-yanılma değişiklikleri için sunucu yükünü azaltmak ve değişiklik süresince hatalı görünümlerden kaçınmak adına kullanılması önerilir. |
Kullanımı
Bu modül {{}} şablonunu yürütmektedir. Detaylı bilgi için lütfen şablon kılavuzunu okuyun.
İzleme kategorisi
- (0)
--[[ This module was created by User:CodeHydro (Alexander Zhikun He). User:Jackmcbarn and User:Mr._Stradivarius provided a great deal of assistance in writting p.main() p.main() draw heavily from the following version of Template:Asbox of the English Wikipedia, authored primarily by User:Rich_Farmbrough https://en.wikipedia.org/w/index.php?title=Template:Asbox&oldid=619510287 p.templatepage() is derived from the following revision of Template:Asbox/templatepage, authored primarily by User:MSGJ https://en.wikipedia.org/w/index.php?title=Template:Asbox/templatepage&oldid=632914791 Both templates had significant contributions from numerous others listed in the revision history tab of their respective pages. --]] local WRAPPER_TEMPLATE, args = 'Şablon:Mtkutu' local p, Buffer, stubCats = { --Prevents dupli-cats... get it? Maybe not? cats = setmetatable({}, {__newindex = function(t, i, v) if not rawget(t, i) then rawset(t, i, v) table.insert(t, i) end end}), --initializes variables required by both p.main and p.templatepage init = function(self, frame, page) args, page = args or require('Modül:Arguments').getArgs(frame, { wrappers = WRAPPER_TEMPLATE }), page or mw.title.getCurrentTitle() --Ensures demo parameter will never affect kategori() output for articles self.demo = self.demo or page.namespace ~= 0 and args.demo return args, page end }, require('Modül:Arabellek') --[[ Formats kategori links. Stores them until called with cat.done=true Takes multiple or single categories in the form of 'cat' or a table of strings and/or tables containing parts. (See below) ]] local attention, catTag, catKey = Buffer'Bakıma ihtiyaç duyan taslak şablonları', '[[Kategori:%s]]', '%s|%s%s' local function kategori(cat) for _, v in ipairs((tostring(cat) == cat or cat.t) and {cat} or cat) do --[[ If v is a table: [1] = full kategori name; defaults to local attention if blank k = Category sort key. Prefix before v.t t = page.text or args.anahtar#; appended after k (or in its place if omitted). Required if v is not a string Basically the same as v = (v[1] or attention) .. ' | ' .. (v.k or '') .. v.t ]] if v and v ~= true then--reject v = nil, false, or true p.cats[catTag:format(tostring(v) == v and v or (v[1] and Buffer(v[1]) or Buffer'Taslak şablonları'):_in(v.k):_(v.t):_str(2, nil, nil, '|') )] = true end end return cat.done and table.concat(p.cats, p.demo and ' | ' or nil) or '' end --[[ Makes an ombox warning; Takes table {ifNot = Boolean, text, {cat. sort key, cat. sort name}} Will return an empty string instead when ifNot evaluates to true ]] local function ombox(v) if v.ifNot then return end p.ombox = p.ombox or require('Modül:İleti kutusu').ombox kategori{v[2]} return p.ombox{ type = 'content', text = v[1] } end --[[ Unlike original template, module now takes unlimited cats! This function also performs most stub kategori error checks except for the ombox for when main |kategori= is omitted (See p.template()) ]] local function catStub(page, pageDoc) stubCats = {missing = {}, v = {}} local code for k, _ in pairs(args) do --Find kategori parameters and store the number (main cat = '') table.insert(stubCats, string.match(k, '^kategori(%d*)$')) end table.sort(stubCats) for k, v in ipairs(stubCats) do --Get kategori names and, if called by p.templatepage, the optional sort key local tsort, cat = args['anahtar' .. v], mw.ustring.gsub(args['kategori' .. v], '[^%w%p%s]', '')--remove all hidden unicode chars --Do not place template in main kategori if |anahtar= 'no'. However, DO place articles of that template in the main kategori. table.insert(stubCats.v, page and (--p.templatepage passes page; p.main does not, i.e. articles are categorized without sort keys. v=='' and tsort == 'no'--if true, inserts 'true' in table, which kategori() will reject or tsort and {cat, k = ' ', t = tsort} or {cat, k = ' *', t = page.text}--note space in front of sort key ) or cat ) --Check kategori existance only if on the template page (i.e. stub documentation) if page then if not mw.title.new('Kategori:' .. cat).exists then code = code or mw.html.create'code':wikitext'|kategori' table.insert(stubCats.missing, tostring(mw.clone(code):wikitext(v))) end --[[ Checks non-demo stub template for documentation and flags if doc is present. All stub cats names are checked and flagged if it does not match 'Kategori: [] stub'. The main stub cat is exempt from the name check if the stub template has its own doc (presumably, this doc would have an explanation as to why the main stub cat is non-conforming). ]] table.insert(stubCats.v, v == '' and not p.demo and pageDoc.exists and 'Stub message templates with documentation subpages' or not cat:match' stubs$' and {k = 'T', t = page.text} ) end end --Add kategori names after loop is completed kategori(stubCats.v) return #stubCats.missing > 0 and ombox{ --Changed, original msg: --One or more of the stub categories defined in this template do not seem to exist! --Please double-check the parameters {{para|kategori}}, {{para|kategori1}} and {{para|kategori2}}. 'Şu parametre' .. (#stubCats.missing == 1 and 'ye tanımlanan adda bir taslak kategorisi' or 'lere tanımlanan adda taslak kategorileri') .. ' yok: ' .. mw.text.listToText(stubCats.missing), {k = 'V', t = page.text} } end --Shows population of categories found by catStub(). Outputs demo values if none local function population() local wikitext, base = {}, '* [[:Kategori:%s]] (%s)\n' if not (args.kategori) and stubCats[1] ~= false then table.insert(stubCats, 1, false) end for _, v in ipairs(stubCats) do table.insert(wikitext, base:format( v and args['kategori' .. v] or '{{{kategori}}}', v and mw.site.stats.pagesInCategory(args['kategori' .. v], 'all') or 0 )) end return table.concat(wikitext) end --Includes standard stub documention and flags stub templates with bad parameter values. function p.templatepage(frame, page) args, page = p:init(frame, page) local tStubDoc = mw.title.new'Şablon:Mtkutu/şablon belgelemesi' local pageDoc = page:subPageTitle('doc') --Reorganization note: Original Asbox alternates between outputting categories and checking on params |kategori#=. --Rather than checking multiple times and switching tasks, all stub kategori param operations have been rolled into catStub() return Buffer( ombox{--Show ombox warnings for missing args. ifNot = (args.kategori), '<code>|kategori</code> parametresine bilgi girilmedi. Lütfen geçerli bir taslak kategorisi belirtin.', {k = 'K', t = page.text} }) :_(ombox{ ifNot = args.konu or args.subject or args.madde or args.article or (args["ayrıntı"] or args.qualifier), 'This stub template contains no description! At least one of the parameters <code>|konu</code>, <code>|madde</code> ya da <code>|ayrıntı</code> must be defined.', {k = 'A', t = page.text} }) :_(catStub(page, pageDoc))--catStub() may also return an ombox if there are non-existing categories :_(kategori{ done = p.demo ~= 'doc',--Outputs categories if not doc demo 'Taslak şablonları', 'Yazdırırken hariç tut', (args["ikon"] or args["simge"] or args.icon) and 'Simge parametresini kullanan taslak şablonları' or (args["resim"] or args.image) and ( mw.title.new('Dosya:' .. mw.text.split(args["resim"] or args.image, '|')[1]).exists--do nothing if exists. kategori() will reject true or {k = 'B', t = page.text} ) or 'Resimsiz taslak şablonları', args.imagealt and {k = 'I', t = page.text}, }) :_((not p.demo or p.demo == 'doc') and--Add standard stub template documentation require('Modül:Belgeleme').main{ content = Buffer(page.text ~= 'Taslak' and--This comparison performed in {{mtkutu taslak ağacı}} before it invokes Modül:Mtkutu taslak ağacı require('Modül:Mtkutu taslak ağacı').subtree{args = {pagename = page.text}} ) :_in'\n== Bu şablon hakkında ==\nBu şablon taslak seviyesindeki':_(args.konu or args.subject):_'ile ilgili':_(args["ayrıntı"] or args.qualifier):_'maddeleri etiketlemek için kullanılır':_out' '--space :_'. Taslak şablonlarını oluşturma ve maddeleri etiketleme işlemi {{[[Şablon:Mtkutu|mtkutu]]}} üst şablonu vasıtasıyla yapılmaktadır.\n=== Kullanım ===\nİlgili maddeye ' :_(mw.html.create'code' :wikitext('{{', page.text == 'Taslak' and 'taslak' or page.text, '}}') ) :_' kodu eklendiği takdirde bu sayfanın en üstündeki ileti görüntülenerek madde şu kategori' :_(#stubCats > 1 and 'lere' or 'ye') :_' eklenir:\n' :_(population()) :_(pageDoc.exists and--transclusion of /doc if it exists frame:expandTemplate{title = pageDoc.text} ) :_'\n== Genel bilgiler ==\n' :_(frame:expandTemplate{title = tStubDoc.text}) :_'\n\n'(), ['link box'] = Buffer'Bu belgeleme [[Modül:Mtkutu]] tarafından otomatik olarak oluşturulmuştur.' :_in'Detaylı bilgi bu içeriğin yansıtıldığı [[Şablon:Mtkutu/şablon belgelemesi]] sayfasında bulunabilir. ' :_(mw.html.create'span' :cssText'font-size:smaller;font-style:normal;line-height:130%' :node(('([%s değiştir] | [%s geçmiş])'):format( tStubDoc:fullUrl('action=edit', 'relative'), tStubDoc:fullUrl('action=history', 'relative') )) ) :_out() :_(page.protectionLevels.edit and page.protectionLevels.edit[1] == 'sysop' and "This template is [[WP:PROTECT|fully protected]] and any [[WP:CAT|categories]] should be added to the template's [" .. pageDoc:fullUrl('action=edit&preload=Template:Category_interwiki/preload', 'relative') .. '| /doc] subpage, which is not protected.' )' <br/>' } )() end function p.main(frame, page) args, page = p:init(frame, page) local output = mw.html.create'table' :addClass'metadata plainlinks stub' :css{background = 'transparent'} :attr{role = 'presentation'} :tag'tr' :node((args["ikon"] or args["simge"] or args.icon or args["resim"] or args.image) and mw.html.create'td' :wikitext(args["ikon"] or args["simge"] or args.icon or ('[[Dosya:%s|%spx|alt=%s]]'):format( (args["resim"] or args.image) or '', (args["boyut"] or args.pix) or '40x30', args.imagealt or 'Taslak simgesi' )) ) :tag'td' :tag'i' :wikitext( Buffer'':_(args.konu or args.subject):_('ile ilgili'):_(args["ayrıntı"] or args.qualifier):_('bu'):_(args.madde or args.article or 'madde')' ',--space ' [[Vikipedi:Taslak madde|taslak]] seviyesindedir. Madde içeriğini [', page:fullUrl('action=edit', 'relative'), ' genişleterek] Vikipedi'ye katkı sağlayabilirsiniz.' ) :done() :node(args.name and require'Modül:Dolçub'._navbar{ args.name, mini = 'yes', style = 'position: absolute; right: 15px; display: none;' } ) :node(args.note and mw.html.create() :tag'br':done() :tag'span' :css{['font-style'] = 'normal', ['font-size'] = 'smaller'} :wikitext(args.note) :done() ) :node(args["not"] and mw.html.create() :tag'br':done() :tag'span' :css{['font-style'] = 'normal', ['font-size'] = 'smaller'} :wikitext(args["not"]) :done() ) :allDone() --[[ Stub categories for templates include a sort key; this ensures that all stub tags appear at the beginning of their respective categories. Articles using the template do not need a sort key since they have unique names. When p.demo equals 'doc', the demo stub categories will appear as those for a stub template. Otherwise, any non-nil p.demo will emulate article space categories (plus any error cats unless set to 'art') ]] if page.namespace == 0 then -- Main namespace kategori'Tüm taslak maddeler' catStub() elseif p.demo then if p.demo ~= 'doc' then catStub() end --Unless p.demo is set to 'art', it will also include error categories normally only shown on --the template but not in the article. The elseif after namespace == 0 means demo cats will never show in article space. p.demodoc = p.demo ~= 'art' and p.templatepage(frame, page) output = mw.html.create() :node(output) :tag'small':wikitext( 'Demo categories: ', (kategori{done = true}:gsub('(%[%[)(Kategori:)([^|%]]-)(%|)', '%1%2%3|%2%3%4'):gsub('(%[%[)(Kategori:)', '%1:%2')) ):done() :wikitext(p.demo == 'doc' and p.demodoc or nil) else --Checks for valid name; emulates original template's check using {{FULLPAGENAME:{{{name|}}}}} local normalizedName = mw.title.new(args["ad"] or args["isim"] or args.name or '') if normalizedName and normalizedName.fullText == page.fullText then output = mw.html.create():node(output):wikitext(p.templatepage(frame, page)) elseif not page.isSubpage and page.namespace == 10 then-- Template namespace and not a subpage kategori{{k = (args["ad"] or args["isim"] or args.name) and 'H' or 'Y', t = page.text}} end end return output:wikitext(not p.demo and kategori{done = true} or nil) end return p
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
Modul belgelemesi gor degistir gecmis temizle Bu modul su Lua modullerini kullaniyor Modul ArgumentsModul ArabellekModul Ileti kutusuModul BelgelemeModul Mtkutu taslak agaciBu Lua modulu yaklasik 165 000 sayfada kullanilmaktadir Lutfen yapacaginiz degisiklikleri buyuk olcekli aksamalari ve sunucuya gereksiz yuk binmesini onlemek icin oncelikle sablonun ile alt sayfalarinda ya da kendi kullanici sayfanizda test ediniz Testten gecen degisiklikler daha sonra bu sayfaya tek bir duzenlemede eklenebilir Eger yapmayi planladiginiz degisiklikler ile istediginiz sonucu elde edemiyorsaniz gorus alisverisinde bulununuz Bu modul genel kullanima yoneliktir Tam surume ulastigi hatasiz olarak ilgili maddelerde kullanima hazir oldugu dusunulmektedir Modul uzerinde yapilacak deneme yanilma degisiklikleri icin sunucu yukunu azaltmak ve degisiklik suresince hatali gorunumlerden kacinmak adina kullanilmasi onerilir Kullanimi Bu modul mtkutu sablonunu yurutmektedir Detayli bilgi icin lutfen sablon kilavuzunu okuyun Izleme kategorisi Kategori Bakima ihtiyac duyan taslak sablonlari 0 Yukaridaki belgeleme icerigi Modul Mtkutu belge sayfasindan yansitilmaktadir degistir gecmis Kullanicilar denemelerini bu sablonun deneme tahtasi olustur yansitma ve test senaryosu olustur sayfalarinda yapabilirler Lutfen kategorileri belge alt sayfasina ekleyin Bu modul ile ilgili alt sayfalar icin buraya tiklayiniz This module was created by User CodeHydro Alexander Zhikun He User Jackmcbarn and User Mr Stradivarius provided a great deal of assistance in writting p main p main draw heavily from the following version of Template Asbox of the English Wikipedia authored primarily by User Rich Farmbrough https en wikipedia org w index php title Template Asbox amp oldid 619510287 p templatepage is derived from the following revision of Template Asbox templatepage authored primarily by User MSGJ https en wikipedia org w index php title Template Asbox templatepage amp oldid 632914791 Both templates had significant contributions from numerous others listed in the revision history tab of their respective pages local WRAPPER TEMPLATE args Sablon Mtkutu local p Buffer stubCats Prevents dupli cats get it Maybe not cats setmetatable newindex function t i v if not rawget t i then rawset t i v table insert t i end end initializes variables required by both p main and p templatepage init function self frame page args page args or require Modul Arguments getArgs frame wrappers WRAPPER TEMPLATE page or mw title getCurrentTitle Ensures demo parameter will never affect kategori output for articles self demo self demo or page namespace 0 and args demo return args page end require Modul Arabellek Formats kategori links Stores them until called with cat done true Takes multiple or single categories in the form of cat or a table of strings and or tables containing parts See below local attention catTag catKey Buffer Bakima ihtiyac duyan taslak sablonlari Kategori s s s s local function kategori cat for v in ipairs tostring cat cat or cat t and cat or cat do If v is a table 1 full kategori name defaults to local attention if blank k Category sort key Prefix before v t t page text or args anahtar appended after k or in its place if omitted Required if v is not a string Basically the same as v v 1 or attention v k or v t if v and v true then reject v nil false or true p cats catTag format tostring v v and v or v 1 and Buffer v 1 or Buffer Taslak sablonlari in v k v t str 2 nil nil true end end return cat done and table concat p cats p demo and or nil or end Makes an ombox warning Takes table ifNot Boolean text cat sort key cat sort name Will return an empty string instead when ifNot evaluates to true local function ombox v if v ifNot then return end p ombox p ombox or require Modul Ileti kutusu ombox kategori v 2 return p ombox type content text v 1 end Unlike original template module now takes unlimited cats This function also performs most stub kategori error checks except for the ombox for when main kategori is omitted See p template local function catStub page pageDoc stubCats missing v local code for k in pairs args do Find kategori parameters and store the number main cat table insert stubCats string match k kategori d end table sort stubCats for k v in ipairs stubCats do Get kategori names and if called by p templatepage the optional sort key local tsort cat args anahtar v mw ustring gsub args kategori v w p s remove all hidden unicode chars Do not place template in main kategori if anahtar no However DO place articles of that template in the main kategori table insert stubCats v page and p templatepage passes page p main does not i e articles are categorized without sort keys v and tsort no if true inserts true in table which kategori will reject or tsort and cat k t tsort or cat k t page text note space in front of sort key or cat Check kategori existance only if on the template page i e stub documentation if page then if not mw title new Kategori cat exists then code code or mw html create code wikitext kategori table insert stubCats missing tostring mw clone code wikitext v end Checks non demo stub template for documentation and flags if doc is present All stub cats names are checked and flagged if it does not match Kategori stub The main stub cat is exempt from the name check if the stub template has its own doc presumably this doc would have an explanation as to why the main stub cat is non conforming table insert stubCats v v and not p demo and pageDoc exists and Stub message templates with documentation subpages or not cat match stubs and k T t page text end end Add kategori names after loop is completed kategori stubCats v return stubCats missing gt 0 and ombox Changed original msg One or more of the stub categories defined in this template do not seem to exist Please double check the parameters para kategori para kategori1 and para kategori2 Su parametre stubCats missing 1 and ye tanimlanan adda bir taslak kategorisi or lere tanimlanan adda taslak kategorileri yok mw text listToText stubCats missing k V t page text end Shows population of categories found by catStub Outputs demo values if none local function population local wikitext base Kategori s s n if not args kategori and stubCats 1 false then table insert stubCats 1 false end for v in ipairs stubCats do table insert wikitext base format v and args kategori v or kategori v and mw site stats pagesInCategory args kategori v all or 0 end return table concat wikitext end Includes standard stub documention and flags stub templates with bad parameter values function p templatepage frame page args page p init frame page local tStubDoc mw title new Sablon Mtkutu sablon belgelemesi local pageDoc page subPageTitle doc Reorganization note Original Asbox alternates between outputting categories and checking on params kategori Rather than checking multiple times and switching tasks all stub kategori param operations have been rolled into catStub return Buffer ombox Show ombox warnings for missing args ifNot args kategori lt code gt kategori lt code gt parametresine bilgi girilmedi Lutfen gecerli bir taslak kategorisi belirtin k K t page text ombox ifNot args konu or args subject or args madde or args article or args ayrinti or args qualifier This stub template contains no description At least one of the parameters lt code gt konu lt code gt lt code gt madde lt code gt ya da lt code gt ayrinti lt code gt must be defined k A t page text catStub page pageDoc catStub may also return an ombox if there are non existing categories kategori done p demo doc Outputs categories if not doc demo Taslak sablonlari Yazdirirken haric tut args ikon or args simge or args icon and Simge parametresini kullanan taslak sablonlari or args resim or args image and mw title new Dosya mw text split args resim or args image 1 exists do nothing if exists kategori will reject true or k B t page text or Resimsiz taslak sablonlari args imagealt and k I t page text not p demo or p demo doc and Add standard stub template documentation require Modul Belgeleme main content Buffer page text Taslak and This comparison performed in mtkutu taslak agaci before it invokes Modul Mtkutu taslak agaci require Modul Mtkutu taslak agaci subtree args pagename page text in n Bu sablon hakkinda n Bu sablon taslak seviyesindeki args konu or args subject ile ilgili args ayrinti or args qualifier maddeleri etiketlemek icin kullanilir out space Taslak sablonlarini olusturma ve maddeleri etiketleme islemi Sablon Mtkutu mtkutu ust sablonu vasitasiyla yapilmaktadir n Kullanim n Ilgili maddeye mw html create code wikitext page text Taslak and taslak or page text kodu eklendigi takdirde bu sayfanin en ustundeki ileti goruntulenerek madde su kategori stubCats gt 1 and lere or ye eklenir n population pageDoc exists and transclusion of doc if it exists frame expandTemplate title pageDoc text n Genel bilgiler n frame expandTemplate title tStubDoc text n n link box Buffer Bu belgeleme Modul Mtkutu tarafindan otomatik olarak olusturulmustur in Detayli bilgi bu icerigin yansitildigi Sablon Mtkutu sablon belgelemesi sayfasinda bulunabilir mw html create span cssText font size smaller font style normal line height 130 node s degistir s gecmis format tStubDoc fullUrl action edit relative tStubDoc fullUrl action history relative out page protectionLevels edit and page protectionLevels edit 1 sysop and This template is WP PROTECT fully protected and any WP CAT categories should be added to the template s pageDoc fullUrl action edit amp preload Template Category interwiki preload relative doc subpage which is not protected lt br gt end function p main frame page args page p init frame page local output mw html create table addClass metadata plainlinks stub css background transparent attr role presentation tag tr node args ikon or args simge or args icon or args resim or args image and mw html create td wikitext args ikon or args simge or args icon or Dosya s spx alt s format args resim or args image or args boyut or args pix or 40x30 args imagealt or Taslak simgesi tag td tag i wikitext Buffer args konu or args subject ile ilgili args ayrinti or args qualifier bu args madde or args article or madde space Vikipedi Taslak madde taslak seviyesindedir Madde icerigini page fullUrl action edit relative genisleterek Vikipedi amp 39 ye katki saglayabilirsiniz done node args name and require Modul Dolcub navbar args name mini yes style position absolute right 15px display none node args note and mw html create tag br done tag span css font style normal font size smaller wikitext args note done node args not and mw html create tag br done tag span css font style normal font size smaller wikitext args not done allDone Stub categories for templates include a sort key this ensures that all stub tags appear at the beginning of their respective categories Articles using the template do not need a sort key since they have unique names When p demo equals doc the demo stub categories will appear as those for a stub template Otherwise any non nil p demo will emulate article space categories plus any error cats unless set to art if page namespace 0 then Main namespace kategori Tum taslak maddeler catStub elseif p demo then if p demo doc then catStub end Unless p demo is set to art it will also include error categories normally only shown on the template but not in the article The elseif after namespace 0 means demo cats will never show in article space p demodoc p demo art and p templatepage frame page output mw html create node output tag small wikitext Demo categories kategori done true gsub Kategori 1 2 3 2 3 4 gsub Kategori 1 2 done wikitext p demo doc and p demodoc or nil else Checks for valid name emulates original template s check using FULLPAGENAME name local normalizedName mw title new args ad or args isim or args name or if normalizedName and normalizedName fullText page fullText then output mw html create node output wikitext p templatepage frame page elseif not page isSubpage and page namespace 10 then Template namespace and not a subpage kategori k args ad or args isim or args name and H or Y t page text end end return output wikitext not p demo and kategori done true or nil end return p