Bu modül şu Lua modüllerini kullanıyor: |
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. |
Bu modül şu TemplateStyles biçemini kullanıyor: |
İlişkili sayfalar |
---|
|
Bu modül {{}} şablonunu yürütür.
Kullanımı
Vikimetin ile
Modülün özellikleri {{}} şablonu vasıtasıyla kullanılabilir olup şablonun belgelemesinde nasıl yapılacağı açıklanmıştır. Aynı işlevler {{#invoke:Kısayol|main|değişkenler}}
çağrısı ile de kullanılabilir.
Lua ile
Modülü Lua ile kullanmak için öncelikle yükleme işlemi yapılmalıdır:
local mShortcut = require('Modül:Kısayol')
Daha sonra aşağıdaki sözdizimiyle kısayol kutuları oluşturulabilir:
mShortcut._main(shortcuts, options, frame, cfg)
- shortcuts kısayol sayfaları listesi. (zorunlu)
- options ayar tablosu olup şu anahtarlar ile özelleştirilebilir:
msg
kısayol listesinden sonra görüntülenecek bir ileti.category
"hayır" değeri ile kullanılan ve sayfanın hata kategorisine eklenmesini engellemeyi sağlayan parametre.
- frame çerçeve nesnesi. İsteğe bağlıdır ve yalnızca dahili olarak kullanılması amaçlanmıştır.
- cfg yapılandırma değerleri tablosu. İsteğe bağlıdır ve yalnızca test amaçlıdır.
Teknik detaylar
Modülün ayar dosyası (Modül:Kısayol/yapılandırma) sayfasında saklanmaktadır. Modülü farklı dillere çevirmek ya da kategori adları gibi detayları değiştirmek için kullanılabilir.
-- Bu modül {{kısayol}} şablonunu yürütür. -- Set constants local CONFIG_MODULE = 'Modül:Kısayol/yapılandırma' -- Load required modules local checkType = require('libraryUtil').checkType local yesno = require('Modül:Evethayır') local p = {} local function message(msg, ...) return mw.message.newRawMessage(msg, ...):plain() end local function makeCategoryLink(cat) return string.format('[[%s:%s]]', mw.site.namespaces[14].name, cat) end function p._main(shortcuts, options, frame, cfg) checkType('_main', 1, shortcuts, 'table') checkType('_main', 2, options, 'table', true) options = options or {} frame = frame or mw.getCurrentFrame() cfg = cfg or mw.loadData(CONFIG_MODULE) local isCategorized = yesno(options.kategori or options.category) ~= false -- Validate shortcuts for i, shortcut in ipairs(shortcuts) do if type(shortcut) ~= 'string' or #shortcut < 1 then error(message(cfg['invalid-shortcut-error'], i), 2) end end -- Make the list items. These are the shortcuts plus any extra lines such -- as options.msg. local listItems = {} for i, shortcut in ipairs(shortcuts) do listItems[i] = frame:expandTemplate{ title = 'Yönlenme', args = {shortcut} } end table.insert(listItems, options.msg or options.ileti) -- Return an error if we have nothing to display if #listItems < 1 then local msg = cfg['no-content-error'] msg = string.format('<strong class="error">%s</strong>', msg) if isCategorized and cfg['no-content-error-category'] then msg = msg .. makeCategoryLink(cfg['no-content-error-category']) end return msg end local root = mw.html.create() root:wikitext(frame:extensionTag{ name = 'templatestyles', args = { src = 'Kısayol/biçem.css'} }) -- Anchors local anchorDiv = root :tag('div') :addClass('module-shortcutanchordiv') for i, shortcut in ipairs(shortcuts) do local anchor = mw.uri.anchorEncode(shortcut) anchorDiv:tag('span'):attr('id', anchor) end -- Shortcut heading local shortcutHeading do local nShortcuts = #shortcuts if nShortcuts > 0 then shortcutHeading = message(cfg['shortcut-heading'], nShortcuts) shortcutHeading = frame:preprocess(shortcutHeading) end end -- Shortcut box local shortcutList = root :tag('div') :addClass('module-shortcutboxplain plainlist noprint') :attr('role', 'note') if shortcutHeading then shortcutList :tag('div') :addClass('module-shortcutlist') :wikitext(shortcutHeading) end local list = shortcutList:tag('ul') for i, item in ipairs(listItems) do list:tag('li'):wikitext(item) end return tostring(root) end function p.main(frame) local args = require('Modül:Bağımsız değişkenler').getArgs(frame, { wrappers = 'Şablon:Kısayol' }) -- Separate shortcuts from options local shortcuts, options = {}, {} for k, v in pairs(args) do if type(k) == 'number' then shortcuts[k] = v else options[k] = v end end -- Compress the shortcut array, which may contain nils. local function compressArray(t) local nums, ret = {}, {} for k in pairs(t) do nums[#nums + 1] = k end table.sort(nums) for i, num in ipairs(nums) do ret[i] = t[num] end return ret end shortcuts = compressArray(shortcuts) return p._main(shortcuts, options, frame) 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 EvethayirModul Bagimsiz degiskenlerBu 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 Bu modul su TemplateStyles bicemini kullaniyor Sablon Kisayol bicem cssIliskili sayfalarSablon Sablon belgesi Sablon altsayfalari Modul Modul belgesi Modul altsayfalari Bu modul kisayol sablonunu yurutur Kullanimi Vikimetin ile Modulun ozellikleri kisayol sablonu vasitasiyla kullanilabilir olup sablonun belgelemesinde nasil yapilacagi aciklanmistir Ayni islevler invoke Kisayol main i degiskenler i cagrisi ile de kullanilabilir Lua ile Modulu Lua ile kullanmak icin oncelikle yukleme islemi yapilmalidir local mShortcut require Modul Kisayol Daha sonra asagidaki sozdizimiyle kisayol kutulari olusturulabilir mShortcut main shortcuts options frame cfg shortcuts kisayol sayfalari listesi zorunlu options ayar tablosu olup su anahtarlar ile ozellestirilebilir msg kisayol listesinden sonra goruntulenecek bir ileti category hayir degeri ile kullanilan ve sayfanin hata kategorisine eklenmesini engellemeyi saglayan parametre frame cerceve nesnesi Istege baglidir ve yalnizca dahili olarak kullanilmasi amaclanmistir cfg yapilandirma degerleri tablosu Istege baglidir ve yalnizca test amaclidir Teknik detaylar Modulun ayar dosyasi Modul Kisayol yapilandirma sayfasinda saklanmaktadir Modulu farkli dillere cevirmek ya da kategori adlari gibi detaylari degistirmek icin kullanilabilir Yukaridaki belgeleme icerigi Modul Kisayol 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 Bu modul kisayol sablonunu yurutur Set constants local CONFIG MODULE Modul Kisayol yapilandirma Load required modules local checkType require libraryUtil checkType local yesno require Modul Evethayir local p local function message msg return mw message newRawMessage msg plain end local function makeCategoryLink cat return string format s s mw site namespaces 14 name cat end function p main shortcuts options frame cfg checkType main 1 shortcuts table checkType main 2 options table true options options or frame frame or mw getCurrentFrame cfg cfg or mw loadData CONFIG MODULE local isCategorized yesno options kategori or options category false Validate shortcuts for i shortcut in ipairs shortcuts do if type shortcut string or shortcut lt 1 then error message cfg invalid shortcut error i 2 end end Make the list items These are the shortcuts plus any extra lines such as options msg local listItems for i shortcut in ipairs shortcuts do listItems i frame expandTemplate title Yonlenme args shortcut end table insert listItems options msg or options ileti Return an error if we have nothing to display if listItems lt 1 then local msg cfg no content error msg string format lt strong class error gt s lt strong gt msg if isCategorized and cfg no content error category then msg msg makeCategoryLink cfg no content error category end return msg end local root mw html create root wikitext frame extensionTag name templatestyles args src Kisayol bicem css Anchors local anchorDiv root tag div addClass module shortcutanchordiv for i shortcut in ipairs shortcuts do local anchor mw uri anchorEncode shortcut anchorDiv tag span attr id anchor end Shortcut heading local shortcutHeading do local nShortcuts shortcuts if nShortcuts gt 0 then shortcutHeading message cfg shortcut heading nShortcuts shortcutHeading frame preprocess shortcutHeading end end Shortcut box local shortcutList root tag div addClass module shortcutboxplain plainlist noprint attr role note if shortcutHeading then shortcutList tag div addClass module shortcutlist wikitext shortcutHeading end local list shortcutList tag ul for i item in ipairs listItems do list tag li wikitext item end return tostring root end function p main frame local args require Modul Bagimsiz degiskenler getArgs frame wrappers Sablon Kisayol Separate shortcuts from options local shortcuts options for k v in pairs args do if type k number then shortcuts k v else options k v end end Compress the shortcut array which may contain nils local function compressArray t local nums ret for k in pairs t do nums nums 1 k end table sort nums for i num in ipairs nums do ret i t num end return ret end shortcuts compressArray shortcuts return p main shortcuts options frame end return p