ವಿಕಿಪೀಡಿಯ
tcywiki
https://tcy.wikipedia.org/wiki/%E0%B2%AE%E0%B3%81%E0%B2%96%E0%B3%8D%E0%B2%AF_%E0%B2%AA%E0%B3%81%E0%B2%9F
MediaWiki 1.47.0-wmf.21
first-letter
ಮಾದ್ಯಮೊ
ವಿಸೇಸೊ
ಪಾತೆರ
ಬಳಕೆದಾರೆ
ಬಳಕೆದಾರೆ ಪಾತೆರ
ವಿಕಿಪೀಡಿಯ
ವಿಕಿಪೀಡಿಯ ಪಾತೆರ
ಫೈಲ್
ಫೈಲ್ ಪಾತೆರ
ಮಾದ್ಯಮೊವಿಕಿ
ಮಾದ್ಯಮೊವಿಕಿ ಪಾತೆರ
ಟೆಂಪ್ಲೇಟ್
ಟೆಂಪ್ಲೇಟ್ ಪಾತೆರ
ಸಕಾಯೊ
ಸಕಾಯೊ ಪಾತೆರ
ವರ್ಗೊ
ವರ್ಗೊ ಪಾತೆರ
ತಡ್ಯ
ತಡ್ಯ ಪಾತೆರ
ಕರಡು
ಕರಡು ಪಾತೆರ
TimedText
TimedText talk
ಮೋಡ್ಯೂಲ್
ಮೋಡ್ಯೂಲ್ ಪಾತೆರ
Event
Event talk
ಮುಖ್ಯ ಪುಟ
0
1
370275
364294
2026-09-27T14:17:55Z
ChiK
1136
370275
wikitext
text/x-wiki
<templatestyles src="ವಿಕಿಪೀಡಿಯ:Main Page/styles.css" />
<div id="mp-topbanner" class="mp-box">
<div id="mp-welcomecount">
<div id="mp-welcome"><h1>[[ವಿಕಿಪೀಡಿಯ|ವಿಕಿಪೀಡಿಯಗ್]] ಸ್ವಾಗತ</h1>,</div>
<div id="mp-free">ಈ ಸೊತಂತ್ರ [[ವಿಶ್ವಕೋಶ|ವಿಶ್ವಕೋಸೊನು]] ಏರ್ಲಾ [[ಸಕಾಯೊ:ಸಂಪಾದಕೆ|ಸಂಪೊಲಿಪೊಲಿ]].</div>
<div id="articlecount"><ul><li>[[Special:Statistics|{{NUMBEROFACTIVEUSERS}}]] ಸಕ್ರಿಯ ಸಂಪಾದಕೆರ್</li> <li>[[Special:Statistics|{{NUMBEROFARTICLES}}]] ಲೇಕನೊಲು [[ತುಳು ಬಾಸೆ|ತುಳುಟು]] ಉಂಡು</li></ul></div>
</div>
</div>
{{#if:{{Main Page banner}}|
<div id="mp-banner" class="MainPageBG mp-box">
{{Main Page banner}}
</div>
}}
<div id="mp-upper">
<div id="mp-left" class="MainPageBG mp-box">
<h2 id="mp-tfa-h2" class="mp-h2">ತುಳು ವಿಕಿಪೀಡಿಯ</h2>
<div id="mp-tfa" class="mp-contains-float">{{ತುಳು ವಿಕಿಪೀಡಿಯ ಮುಕ್ಯೊ}}</div>
</div>
<div id="mp-right" class="MainPageBG mp-box">
<h2 id="mp-itn-h2" class="mp-h2">ಸುದ್ದಿಲೆಡ್</h2>
<div id="mp-itn" class="mp-contains-float">{{In the news}}</div>
</div>
</div>
<div id="tulu-mp-content 1">{{ವಿಕಿಪೀಡಿಯ ಸುತ್ತಾಟೊ}}</div>
<div id="tulu-mp-content 2">{{ಟೆಂಪ್ಲೇಟ್:ಮಾತ ಪುಟೊಕುಲು}}</div>
<div id="mp-bottom" class="mp-box">
<h2 id="mp-other" class="mp-h2">ವಿಕಿಪೀಡಿಯದ ಬೇತೆ ಅದೆಕುಲು</h2>
<div id="mp-other-content">{{ವಿಕಿಪೀಡಿಯದ ಬೇತೆ ಅದೆಕುಲು}}</div>
<h2 id="mp-sister" class="mp-h2">ವಿಕಿಪೀಡಿಯದ ಅಂಗ ಯೋಜನೆಲು</h2>
<div id="mp-sister-content">{{ವಿಕಿಪೀಡಿಯದ ಅಂಗ ಯೋಜನೆಲು}}</div>
<h2 id="mp-lang" class="mp-h2">ವಿಕಿಪೀಡಿಯ ಬೇತೆ ಬಾಸೆಲೆಡ್</h2>
<div>{{ವಿಕಿಪೀಡಿಯ ಬೇತೆ ಬಾಸೆಲೆಡ್}}</div>
</div>__NOTOC____NOEDITSECTION__
bvoqjs7zj8lwgthdma6dm0v5jjydjk9
ತೋಡು
0
4346
370354
280173
2026-09-28T07:54:14Z
ChiK
1136
370354
wikitext
text/x-wiki
'''ತೋಡು''' ಕಂಡೊಡು, ಗುಂಡಿಡ್ ಇಜ್ಜಾಂಡ ಪಲ್ಲಡ್ ಉಂತಿನ ನೀರ್ನ್ ಬುಡ್ಪಾದ್ ಕಣಿ ಮಲ್ತ್ದ್ ಪರಿಪ್ಪೆರೆ ಸಾದಿ ಮಲ್ತ್ ಕೊರ್ಪೆರ್. ಐಟ್ ನೀರ್ ಜತ್ತ್ದ್ ಪೋಪುಂಡು. ಅಂಚಿನ ಮಸ್ತ್ ಕಣಿಕುಲೆನ ನೀರ್ ಒಂಜಾಂಡ ತೋಡಾಪುಂಡು. ಪ್ರತಿಯೊಂಜಿ ಊರುಡುಲಾ ಒಂಜಿ ತೋಡು ಇಪ್ಪುಂಡು. ಅಂಚಿನ ಮಸ್ತ್ ತೋಡುಲು ಸೇರ್ಂಡ ಸುದೆ ಆಪುಂಡು.
== ಪದತೋ ಅರ್ಥೋ ==
ತೋಡು ಪನ್ಪುನೆಕ್ ಗುಂಡಿ ಮಲ್ಪು ಪನ್ಪುನ ಅರ್ಥ ಉಪ್ಪುನೆರ್ದ್ ತೋಡ್ದ್ ಮಲ್ತ್ನವು ತೋಡು ಆದ್ ಉಪ್ಪೆರೆಲಾ ಯಾವು. ತೋಡು ಮಾತೆನ್ಲಾ ತನ್ನ ಪರಿಪುದ ಒಟ್ಟುಗು ತೋಡ್ದ್ ಕೋನೊಪುಂಡು. ತೋಡು ಪಂಡ ಒಂಜಿ ಅರ್ತೊಡು [[ನೀರ್]] ಪರಪ್ಪುನ ಜಾಗೆ ಪಂಡಲಾ, ನನೊಂಜಿ ಅರ್ತೊಡು ತೋಡ್ದ್ ಕೊರ್ಪುನ ಬಗೆತ್ತ ಅರ್ತೊಲಾ ಉಂಡು. ನುಪ್ಪು ತೋಡುನೆ, ಕಜಿಪ್ಪು ತೋಡುನೆ, ಪಾಯಸ ತೋಡುನೆ, ಬೆಂದ್ರ್ ತೋಡುನೆ. ಮಲ್ಲ ಪಾತ್ರೆಡ್ ಉಪ್ಪುನ ವಸ್ತುಲೆನ್ ಎಲ್ಯ ಪಾತ್ರೆಲೆಗ್ ತೋಡುನೆ ಪನ್ಪಿ ಅರ್ತೊಲಾ ಉಂಡು.
== ತುಳುಗಾದೆ ==
[[ಬಂಗುಡೆ]] ಮದಿಮಾಯೆ [[ಬೂತಾಯಿ]] ಮದಿಮಾಲ್ ಸುದೆಟೆ ಪೋನಗ ತೋಡುಡಿತ್ತಿನ ಕೈಪೆ ತರುಕ್ಕುಲು ಮಸ್ಕಿರಿ ಮಲ್ತೊಗೆ.
== ಉಪಯೋಗ ==
ಇಂಚಿತ್ತಿನ ತೋಡುಡು ತರು [[ಮೀನ್|ಮೀನ್ಲು]] ಮಸ್ತ್ ಇಪ್ಪುವೊ. ಆ ತರುಕ್ಕುಲ ಸುದೆತ್ತ ಮೀನ್ಡ್ದ್ಲ ಜೋರು ಇಪ್ಪುವೊ. ಬೆನ್ನಿ ಬೆನ್ಪಿನಕುಲು ಕಂಡೊಗ್ ಇಜ್ಜಿಂಡ ತೋಟೊಗ್ ನೀರ್ದ ತೊಂದರೆ ಆನಗ ತೋಡುಗ್ ಕಟ್ಟ ಕಟ್ಟ್ದ್ ನೀರ್ನ್ ದಾಸ್ತಾನ್ ಮಲ್ಪುವೆರ್. ಮಲ್ಲ ಮಲ್ಲ ತೋಡುಲೆನ್ ಕಡಪೆರೆ [[ಪಾಪು]] ಪಾಡುವೆರ್.
== ಉಲ್ಲೇಕೊಲು ==
{{Reflist}}
[[ವರ್ಗೊ:ಸುದೆಕುಲು]]
76i6b62u87nprw6j84benrdfgz8cewc
370355
370354
2026-09-28T07:54:50Z
ChiK
1136
Added {{[[Template:Unreferenced|Unreferenced]]}} tag
370355
wikitext
text/x-wiki
{{Unreferenced|date=ಸಪ್ಟಂಬರ್ 2026}}
'''ತೋಡು''' ಕಂಡೊಡು, ಗುಂಡಿಡ್ ಇಜ್ಜಾಂಡ ಪಲ್ಲಡ್ ಉಂತಿನ ನೀರ್ನ್ ಬುಡ್ಪಾದ್ ಕಣಿ ಮಲ್ತ್ದ್ ಪರಿಪ್ಪೆರೆ ಸಾದಿ ಮಲ್ತ್ ಕೊರ್ಪೆರ್. ಐಟ್ ನೀರ್ ಜತ್ತ್ದ್ ಪೋಪುಂಡು. ಅಂಚಿನ ಮಸ್ತ್ ಕಣಿಕುಲೆನ ನೀರ್ ಒಂಜಾಂಡ ತೋಡಾಪುಂಡು. ಪ್ರತಿಯೊಂಜಿ ಊರುಡುಲಾ ಒಂಜಿ ತೋಡು ಇಪ್ಪುಂಡು. ಅಂಚಿನ ಮಸ್ತ್ ತೋಡುಲು ಸೇರ್ಂಡ ಸುದೆ ಆಪುಂಡು.
== ಪದತೋ ಅರ್ಥೋ ==
ತೋಡು ಪನ್ಪುನೆಕ್ ಗುಂಡಿ ಮಲ್ಪು ಪನ್ಪುನ ಅರ್ಥ ಉಪ್ಪುನೆರ್ದ್ ತೋಡ್ದ್ ಮಲ್ತ್ನವು ತೋಡು ಆದ್ ಉಪ್ಪೆರೆಲಾ ಯಾವು. ತೋಡು ಮಾತೆನ್ಲಾ ತನ್ನ ಪರಿಪುದ ಒಟ್ಟುಗು ತೋಡ್ದ್ ಕೋನೊಪುಂಡು. ತೋಡು ಪಂಡ ಒಂಜಿ ಅರ್ತೊಡು [[ನೀರ್]] ಪರಪ್ಪುನ ಜಾಗೆ ಪಂಡಲಾ, ನನೊಂಜಿ ಅರ್ತೊಡು ತೋಡ್ದ್ ಕೊರ್ಪುನ ಬಗೆತ್ತ ಅರ್ತೊಲಾ ಉಂಡು. ನುಪ್ಪು ತೋಡುನೆ, ಕಜಿಪ್ಪು ತೋಡುನೆ, ಪಾಯಸ ತೋಡುನೆ, ಬೆಂದ್ರ್ ತೋಡುನೆ. ಮಲ್ಲ ಪಾತ್ರೆಡ್ ಉಪ್ಪುನ ವಸ್ತುಲೆನ್ ಎಲ್ಯ ಪಾತ್ರೆಲೆಗ್ ತೋಡುನೆ ಪನ್ಪಿ ಅರ್ತೊಲಾ ಉಂಡು.
== ತುಳುಗಾದೆ ==
[[ಬಂಗುಡೆ]] ಮದಿಮಾಯೆ [[ಬೂತಾಯಿ]] ಮದಿಮಾಲ್ ಸುದೆಟೆ ಪೋನಗ ತೋಡುಡಿತ್ತಿನ ಕೈಪೆ ತರುಕ್ಕುಲು ಮಸ್ಕಿರಿ ಮಲ್ತೊಗೆ.
== ಉಪಯೋಗ ==
ಇಂಚಿತ್ತಿನ ತೋಡುಡು ತರು [[ಮೀನ್|ಮೀನ್ಲು]] ಮಸ್ತ್ ಇಪ್ಪುವೊ. ಆ ತರುಕ್ಕುಲ ಸುದೆತ್ತ ಮೀನ್ಡ್ದ್ಲ ಜೋರು ಇಪ್ಪುವೊ. ಬೆನ್ನಿ ಬೆನ್ಪಿನಕುಲು ಕಂಡೊಗ್ ಇಜ್ಜಿಂಡ ತೋಟೊಗ್ ನೀರ್ದ ತೊಂದರೆ ಆನಗ ತೋಡುಗ್ ಕಟ್ಟ ಕಟ್ಟ್ದ್ ನೀರ್ನ್ ದಾಸ್ತಾನ್ ಮಲ್ಪುವೆರ್. ಮಲ್ಲ ಮಲ್ಲ ತೋಡುಲೆನ್ ಕಡಪೆರೆ [[ಪಾಪು]] ಪಾಡುವೆರ್.
== ಉಲ್ಲೇಕೊಲು ==
{{Reflist}}
[[ವರ್ಗೊ:ಸುದೆಕುಲು]]
3ihtxo8q7s33jp0kf3au7wmjr1ii33d
ಪೆದಂಗರೆ
0
4484
370334
210772
2026-09-28T05:52:41Z
ChiK
1136
370334
wikitext
text/x-wiki
[[File:Harrington-pottery-vessel-bussell-tn1.jpg|thumb|ಪೆದಂಗರೆ]]
'''ಪೆದಂಗರೆ''' ಇಲ್ಲ ಎದುರುಡ ಜಾಲ ಮುಂದಿಲ್ಡ್ ಕೈ ಕಾರ್ ಮೋನೆ ದೆಕ್ಕೆರೆ ಉಪ್ಪುನ ಅಗೆಲೆ ಬಾಯಿದ ಕರತ್ತಂಚ್ಚಿನ <ref>{{Cite web |title=Archive copy |url=http://www.tulusiri.com/channels.asp?id=628&catg=story |access-date=2014-11-27 |archive-date=2016-03-04 |archive-url=https://web.archive.org/web/20160304114118/http://www.tulusiri.com/channels.asp?id=628&catg=story |dead-url=yes }}</ref>. ಜಾಲ ಬರೀಟ್ ಇಲ್ಲ ಎದುರುಡು ಉಪ್ಪುನ ಈ [[ಬಾಜೊನೊ]]ನು ದೆಕ್ಕುನ ಕಂಕನೆ ಪಾಡುನ ಕ್ರಮ ಇಜ್ಜಿ. ಸಾಮಾನ್ಯವಾದ ವನಸ್ಗ್ ಬಡವು ಬಾಜೆಲ್ದ ಪೊರ್ತುಡು ಕೈ ಕಾರ್ ಮೋನೆ ದೆಕ್ಕೆರೆ ಒಂಜಿ [[ಬೋಂಕ್ರತಿಪ್ಪಿ]]ನ್ ಅಯಿಟ್ಟ್ ಪಾಡ್ದ್ ಉಪ್ಪುವೆರ್. ಒಂಜಿ ಕಾಂಡೆ ಅಯ್ಕಿ ನೀರ್ ಮೈತ್ತ್ಂಡ ಬಯ್ಯ ಮಟ್ಟ ಒರಿಜಿಡಲಾ ಗಡಿ ಗಡಿ ಕಂದೆಲ್ಡ್ ನೀರ್ನ್ ಕಂತ್ದ್ ಅಯ್ಕಿ ಮಲ್ಪುವೆರ್. ಜಾಲ ಮುಂದಿಲ್ದ ಉಗ್ಗೆಲ್ದಾವಡ್ ಕಟ್ಟೆ ಕಟ್ಟ್ದಿನ ಗುವೆಲ್ಡ್ದ್ ನೀರ್ನ್ ಕಂತ್ದ್ ಮೈಪುವೆರ್. ಇಂಚ ಮೈತಿನ ನೀರ್ ಅಯಿಟ್ಟ್ ಅಡಿಟ್ ಬೆಜಕರೆ. ಮೀನ್ದ ಮಿಲ್ಲು ಬಟ್ಟಲ್ದ ನುಪ್ಪು ಅಯ್ಕಿ ಬಟ್ಟಲ್ ಮುರ್ಕಾನಗಾ ಅಯಿಟ್ಟೆ ಒರಿಯುನಲಾ ಉಂಡು.
ಜಾಲ ಮುಂದಿಲ್ದ ತಾರೆದ ಕಟ್ಟೆಡ್ ಉಪ್ಪುನ ಈ ಬಾಜೊನೊಲು ವಿಶೇಷ ಗಮನ ರಕ್ಷಣೆ ಇಜ್ಜಿ. ತಾರಾಯಿ ಮಡಲ್ ಬೂಪ್ರದು ಅವು ದರಿದ್ ಪೋಪಿನಲಾ ಉಂಡು ಆಂಡಲಾ ಅಯಿನ್ ದೆತ್ತ್ ದೀಪಿನ ಜಾಗ್ರತೆ ಮಲ್ಪುನ ಕ್ರಮಲಾ ಇಜ್ಜಿ. ಅತ್ತಂದೆ ಪೆದಂಗರನೊ ಉಲಾಯಿ ದೆತ್ತ್ ದೀಪಿನ ಕ್ರಮಲಾಇಜ್ಜಿ
== ಉಲ್ಲೇಕೊಲು ==
{{Reflist}}
{{stub}}
1sjbmikwnnm2ulf2afqksjbv8pd1tl8
ಲೆಂಚಿ
0
4751
370352
282278
2026-09-28T07:52:40Z
ChiK
1136
370352
wikitext
text/x-wiki
[[File:Bandelier-Children and Ladder.jpg|thumb]]
[[File:Wodden ladder.jpg|thumb|ಇಲ್ಲದ ಉಪ್ಪರಿಗೆಗ್ ಪೋವರ ಇಲ್ಲದ ಉಲಾಯಿಡೆ ಮಲ್ತಿನ ಲೆಂಚಿ]]
'''ಲೆಂಚಿ''' ಮಿತ್ತ್ ಮಿತರ್ರೆಗ್ ಉಪ್ಪುನ ಅತ್ತೆರಿ. ಎತ್ತರ ಜಾಗೆಗ್ ಮಿತ್ತ್ ಪೋವೊಡ್ಡ ಲೆಂಚಿದ ಸಾಯೋ ಅಗತ್ಯ. ರಡ್ಡ್ ಉದ್ದದ ಮರ, ಇಜ್ಜಿಂಡ ಕರ್ಬ, ಇಜ್ಜಿಡ ಅಲುಮಿನ್ದ ಕೋಲುಗ್ ಅಜೆಕ್ ಒಂಜಿ ಅಡ್ಡ ಅಡ್ಡ ತಿಕ್ಕಾದಿನ ಎಲ್ಯ ಎಲ್ಯ ಕೋಲುಲ್ ಇಂದೆಟ್ ಉಂಡು.
== ಬೇತೆ ಬೇತೆ ರೀತಿದ ಲೆಂಚಿಲು ==
ಕಟ್ಟಡ ಕಾರ್ಮಿಕೆರ್, ವ್ಯಾಪರಸ್ಥೆರ್ ಗಟ್ಟಿದ ಲೆಂಚಿ ಬಳಕೆ ಮಲ್ಪುವೆರ್. ಆಯಾಯ ಕೆಲಸಗ್ ತಕ್ಕಂತಿನ ಲೆಂಚಿಲು ಬೋಡಾಪುಂಡು.<ref>https://www.sitesafe.org.nz/guides--resources/practical-safety-advice/hard-hat-basic-safety3/</ref>
== ಲೆಂಚಿದ ವಿದೊಕುಲು ==
* ಕೇರ್ಪು
* ಏಣಿ/ಲೆಂಚಿ
* ಬೇತೆ ಬೇತೆ ಅಳತೆದ ಏಣಿಲು
== ಬಾಸೆ ==
* 'ಅಟ್ಟ ಬಡ್ತಿ ಬುಕ್ಕೊ ಲೆಂಚಿದ ನೆಂಪು ಇಜ್ಜಿ' ಪನ್ಪೆರ್.
* ಅಕಾಸೊಗು ಏಣಿ ದೀಯಿಲೆಕೊ
== ಗಾದೆಲು ==
* ಬಾಣೊಗು ಲೆಂಚಿ ಪಾಡಿಲೆಕ್ಕ
* ಮಿತ್ತ್ ಪೋಯಿ ಬುಕ್ಕೊ ಏಣಿಗ್ ತೊರಿತ್ತಿಲೆಕೊ
== ಉಲ್ಲೇಕೊಲು ==
{{Reflist}}
[[ವರ್ಗೊ:ವಸ್ತುಲು]]
44rlkijnwxnsqurq2mte1hqz7kk7pcc
ಸದಾನಂದ ಗೌಡ
0
4833
370282
54881
2026-09-28T01:08:11Z
ChiK
1136
/* */
370282
wikitext
text/x-wiki
#REDIRECT [[ಡಿ. ವಿ. ಸದಾನಂದ ಗೌಡ]]
72mo895cmoyekx430e5empietv4btpo
ಮೋಡ್ಯೂಲ್:Message box
828
4907
370362
213137
2025-04-17T06:50:46Z
meta>Veritas Sapientiae
0
Restored revision 25547115 by [[Special:Contributions/Billinghurst|Billinghurst]] ([[User talk:Billinghurst|talk]])([[:m:User:Xiplus/TwinkleGlobal|TwinkleGlobal]])
370362
Scribunto
text/plain
require('strict')
local getArgs
local yesno = require('Module:Yesno')
local lang = mw.language.getContentLanguage()
local CONFIG_MODULE = 'Module:Message box/configuration'
local DEMOSPACES = {talk = 'tmbox', image = 'imbox', file = 'imbox', category = 'cmbox', article = 'ambox', main = 'ambox'}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function getTitleObject(...)
-- Get the title object, passing the function through pcall
-- in case we are over the expensive function count limit.
local success, title = pcall(mw.title.new, ...)
if success then
return title
end
end
local function union(t1, t2)
-- Returns the union of two arrays.
local vals = {}
for i, v in ipairs(t1) do
vals[v] = true
end
for i, v in ipairs(t2) do
vals[v] = true
end
local ret = {}
for k in pairs(vals) do
table.insert(ret, k)
end
table.sort(ret)
return ret
end
local function getArgNums(args, prefix)
local nums = {}
for k, v in pairs(args) do
local num = mw.ustring.match(tostring(k), '^' .. prefix .. '([1-9]%d*)$')
if num then
table.insert(nums, tonumber(num))
end
end
table.sort(nums)
return nums
end
--------------------------------------------------------------------------------
-- Box class definition
--------------------------------------------------------------------------------
local MessageBox = {}
MessageBox.__index = MessageBox
function MessageBox.new(boxType, args, cfg)
args = args or {}
local obj = {}
-- Set the title object and the namespace.
obj.title = getTitleObject(args.page) or mw.title.getCurrentTitle()
-- Set the config for our box type.
obj.cfg = cfg[boxType]
if not obj.cfg then
local ns = obj.title.namespace
-- boxType is "mbox" or invalid input
if args.demospace and args.demospace ~= '' then
-- implement demospace parameter of mbox
local demospace = string.lower(args.demospace)
if DEMOSPACES[demospace] then
-- use template from DEMOSPACES
obj.cfg = cfg[DEMOSPACES[demospace]]
elseif string.find( demospace, 'talk' ) then
-- demo as a talk page
obj.cfg = cfg.tmbox
else
-- default to ombox
obj.cfg = cfg.ombox
end
elseif ns == 0 then
obj.cfg = cfg.ambox -- main namespace
elseif ns == 6 then
obj.cfg = cfg.imbox -- file namespace
elseif ns == 14 then
obj.cfg = cfg.cmbox -- category namespace
else
local nsTable = mw.site.namespaces[ns]
if nsTable and nsTable.isTalk then
obj.cfg = cfg.tmbox -- any talk namespace
else
obj.cfg = cfg.ombox -- other namespaces or invalid input
end
end
end
-- Set the arguments, and remove all blank arguments except for the ones
-- listed in cfg.allowBlankParams.
do
local newArgs = {}
for k, v in pairs(args) do
if v ~= '' then
newArgs[k] = v
end
end
for i, param in ipairs(obj.cfg.allowBlankParams or {}) do
newArgs[param] = args[param]
end
obj.args = newArgs
end
-- Define internal data structure.
obj.categories = {}
obj.classes = {}
-- For lazy loading of [[Module:Category handler]].
obj.hasCategories = false
return setmetatable(obj, MessageBox)
end
function MessageBox:addCat(ns, cat, sort)
if not cat then
return nil
end
if sort then
cat = string.format('[[Category:%s|%s]]', cat, sort)
else
cat = string.format('[[Category:%s]]', cat)
end
self.hasCategories = true
self.categories[ns] = self.categories[ns] or {}
table.insert(self.categories[ns], cat)
end
function MessageBox:addClass(class)
if not class then
return nil
end
table.insert(self.classes, class)
end
function MessageBox:setParameters()
local args = self.args
local cfg = self.cfg
-- Get type data.
self.type = args.type
local typeData = cfg.types[self.type]
self.invalidTypeError = cfg.showInvalidTypeError
and self.type
and not typeData
typeData = typeData or cfg.types[cfg.default]
self.typeClass = typeData.class
self.typeImage = typeData.image
-- Find if the box has been wrongly substituted.
self.isSubstituted = cfg.substCheck and args.subst == 'SUBST'
-- Find whether we are using a small message box.
self.isSmall = cfg.allowSmall and (
cfg.smallParam and args.small == cfg.smallParam
or not cfg.smallParam and yesno(args.small)
)
-- Add attributes, classes and styles.
self.id = args.id
self.name = args.name
if self.name then
self:addClass('box-' .. string.gsub(self.name,' ','_'))
end
if yesno(args.plainlinks) ~= false then
self:addClass('plainlinks')
end
for _, class in ipairs(cfg.classes or {}) do
self:addClass(class)
end
if self.isSmall then
self:addClass(cfg.smallClass or 'mbox-small')
end
self:addClass(self.typeClass)
self:addClass(args.class)
self.style = args.style
self.attrs = args.attrs
-- Set text style.
self.textstyle = args.textstyle
-- Find if we are on the template page or not. This functionality is only
-- used if useCollapsibleTextFields is set, or if both cfg.templateCategory
-- and cfg.templateCategoryRequireName are set.
self.useCollapsibleTextFields = cfg.useCollapsibleTextFields
if self.useCollapsibleTextFields
or cfg.templateCategory
and cfg.templateCategoryRequireName
then
if self.name then
local templateName = mw.ustring.match(
self.name,
'^[tT][eE][mM][pP][lL][aA][tT][eE][%s_]*:[%s_]*(.*)$'
) or self.name
templateName = 'Template:' .. templateName
self.templateTitle = getTitleObject(templateName)
end
self.isTemplatePage = self.templateTitle
and mw.title.equals(self.title, self.templateTitle)
end
-- Process data for collapsible text fields. At the moment these are only
-- used in {{ambox}}.
if self.useCollapsibleTextFields then
-- Get the self.issue value.
if self.isSmall and args.smalltext then
self.issue = args.smalltext
else
local sect
if args.sect == '' then
sect = 'This ' .. (cfg.sectionDefault or 'page')
elseif type(args.sect) == 'string' then
sect = 'This ' .. args.sect
end
local issue = args.issue
issue = type(issue) == 'string' and issue ~= '' and issue or nil
local text = args.text
text = type(text) == 'string' and text or nil
local issues = {}
table.insert(issues, sect)
table.insert(issues, issue)
table.insert(issues, text)
self.issue = table.concat(issues, ' ')
end
-- Get the self.talk value.
local talk = args.talk
-- Show talk links on the template page or template subpages if the talk
-- parameter is blank.
if talk == ''
and self.templateTitle
and (
mw.title.equals(self.templateTitle, self.title)
or self.title:isSubpageOf(self.templateTitle)
)
then
talk = '#'
elseif talk == '' then
talk = nil
end
if talk then
-- If the talk value is a talk page, make a link to that page. Else
-- assume that it's a section heading, and make a link to the talk
-- page of the current page with that section heading.
local talkTitle = getTitleObject(talk)
local talkArgIsTalkPage = true
if not talkTitle or not talkTitle.isTalkPage then
talkArgIsTalkPage = false
talkTitle = getTitleObject(
self.title.text,
mw.site.namespaces[self.title.namespace].talk.id
)
end
if talkTitle and talkTitle.exists then
local talkText
if self.isSmall then
local talkLink = talkArgIsTalkPage and talk or (talkTitle.prefixedText .. '#' .. talk)
talkText = string.format('([[%s|talk]])', talkLink)
else
talkText = 'Relevant discussion may be found on'
if talkArgIsTalkPage then
talkText = string.format(
'%s [[%s|%s]].',
talkText,
talk,
talkTitle.prefixedText
)
else
talkText = string.format(
'%s the [[%s#%s|talk page]].',
talkText,
talkTitle.prefixedText,
talk
)
end
end
self.talk = talkText
end
end
-- Get other values.
self.fix = args.fix ~= '' and args.fix or nil
local date
if args.date and args.date ~= '' then
date = args.date
elseif args.date == '' and self.isTemplatePage then
date = lang:formatDate('F Y')
end
if date then
self.date = string.format(" <span class='date-container'><i>(<span class='date'>%s</span>)</i></span>", date)
end
self.info = args.info
if yesno(args.removalnotice) then
self.removalNotice = cfg.removalNotice
end
end
-- Set the non-collapsible text field. At the moment this is used by all box
-- types other than ambox, and also by ambox when small=yes.
if self.isSmall then
self.text = args.smalltext or args.text
else
self.text = args.text
end
-- Set the below row.
self.below = cfg.below and args.below
-- General image settings.
self.imageCellDiv = not self.isSmall and cfg.imageCellDiv
self.imageEmptyCell = cfg.imageEmptyCell
-- Left image settings.
local imageLeft = self.isSmall and args.smallimage or args.image
if cfg.imageCheckBlank and imageLeft ~= 'blank' and imageLeft ~= 'none'
or not cfg.imageCheckBlank and imageLeft ~= 'none'
then
self.imageLeft = imageLeft
if not imageLeft then
local imageSize = self.isSmall
and (cfg.imageSmallSize or '30x30px')
or '40x40px'
self.imageLeft = string.format('[[File:%s|%s|link=|alt=]]', self.typeImage
or 'Information icon4.svg', imageSize)
end
end
-- Right image settings.
local imageRight = self.isSmall and args.smallimageright or args.imageright
if not (cfg.imageRightNone and imageRight == 'none') then
self.imageRight = imageRight
end
-- set templatestyles
self.base_templatestyles = cfg.templatestyles
self.templatestyles = args.templatestyles
end
function MessageBox:setMainspaceCategories()
local args = self.args
local cfg = self.cfg
if not cfg.allowMainspaceCategories then
return nil
end
local nums = {}
for _, prefix in ipairs{'cat', 'category', 'all'} do
args[prefix .. '1'] = args[prefix]
nums = union(nums, getArgNums(args, prefix))
end
-- The following is roughly equivalent to the old {{Ambox/category}}.
local date = args.date
date = type(date) == 'string' and date
local preposition = 'from'
for _, num in ipairs(nums) do
local mainCat = args['cat' .. tostring(num)]
or args['category' .. tostring(num)]
local allCat = args['all' .. tostring(num)]
mainCat = type(mainCat) == 'string' and mainCat
allCat = type(allCat) == 'string' and allCat
if mainCat and date and date ~= '' then
local catTitle = string.format('%s %s %s', mainCat, preposition, date)
self:addCat(0, catTitle)
catTitle = getTitleObject('Category:' .. catTitle)
if not catTitle or not catTitle.exists then
self:addCat(0, 'Articles with invalid date parameter in template')
end
elseif mainCat and (not date or date == '') then
self:addCat(0, mainCat)
end
if allCat then
self:addCat(0, allCat)
end
end
end
function MessageBox:setTemplateCategories()
local args = self.args
local cfg = self.cfg
-- Add template categories.
if cfg.templateCategory then
if cfg.templateCategoryRequireName then
if self.isTemplatePage then
self:addCat(10, cfg.templateCategory)
end
elseif not self.title.isSubpage then
self:addCat(10, cfg.templateCategory)
end
end
-- Add template error categories.
if cfg.templateErrorCategory then
local templateErrorCategory = cfg.templateErrorCategory
local templateCat, templateSort
if not self.name and not self.title.isSubpage then
templateCat = templateErrorCategory
elseif self.isTemplatePage then
local paramsToCheck = cfg.templateErrorParamsToCheck or {}
local count = 0
for i, param in ipairs(paramsToCheck) do
if not args[param] then
count = count + 1
end
end
if count > 0 then
templateCat = templateErrorCategory
templateSort = tostring(count)
end
if self.categoryNums and #self.categoryNums > 0 then
templateCat = templateErrorCategory
templateSort = 'C'
end
end
self:addCat(10, templateCat, templateSort)
end
end
function MessageBox:setAllNamespaceCategories()
-- Set categories for all namespaces.
if self.invalidTypeError then
local allSort = (self.title.namespace == 0 and 'Main:' or '') .. self.title.prefixedText
self:addCat('all', 'Wikipedia message box parameter needs fixing', allSort)
end
if self.isSubstituted then
self:addCat('all', 'Pages with incorrectly substituted templates')
end
end
function MessageBox:setCategories()
if self.title.namespace == 0 then
self:setMainspaceCategories()
elseif self.title.namespace == 10 then
self:setTemplateCategories()
end
self:setAllNamespaceCategories()
end
function MessageBox:renderCategories()
if not self.hasCategories then
-- No categories added, no need to pass them to Category handler so,
-- if it was invoked, it would return the empty string.
-- So we shortcut and return the empty string.
return ""
end
-- Convert category tables to strings and pass them through
-- [[Module:Category handler]].
return require('Module:Category handler')._main{
main = table.concat(self.categories[0] or {}),
template = table.concat(self.categories[10] or {}),
all = table.concat(self.categories.all or {}),
nocat = self.args.nocat,
page = self.args.page
}
end
function MessageBox:export()
local root = mw.html.create()
-- Add the subst check error.
if self.isSubstituted and self.name then
root:tag('b')
:addClass('error')
:wikitext(string.format(
'Template <code>%s[[Template:%s|%s]]%s</code> has been incorrectly substituted.',
mw.text.nowiki('{{'), self.name, self.name, mw.text.nowiki('}}')
))
end
local frame = mw.getCurrentFrame()
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.base_templatestyles },
})
-- Add support for a single custom templatestyles sheet. Undocumented as
-- need should be limited and many templates using mbox are substed; we
-- don't want to spread templatestyles sheets around to arbitrary places
if self.templatestyles then
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.templatestyles },
})
end
-- Create the box table.
local boxTable = root:tag('table')
boxTable:attr('id', self.id or nil)
for i, class in ipairs(self.classes or {}) do
boxTable:addClass(class or nil)
end
boxTable
:cssText(self.style or nil)
:attr('role', 'presentation')
if self.attrs then
boxTable:attr(self.attrs)
end
-- Add the left-hand image.
local row = boxTable:tag('tr')
if self.imageLeft then
local imageLeftCell = row:tag('td'):addClass('mbox-image')
if self.imageCellDiv then
-- If we are using a div, redefine imageLeftCell so that the image
-- is inside it. Divs use style="width: 52px;", which limits the
-- image width to 52px. If any images in a div are wider than that,
-- they may overlap with the text or cause other display problems.
imageLeftCell = imageLeftCell:tag('div'):addClass('mbox-image-div')
end
imageLeftCell:wikitext(self.imageLeft or nil)
elseif self.imageEmptyCell then
-- Some message boxes define an empty cell if no image is specified, and
-- some don't. The old template code in templates where empty cells are
-- specified gives the following hint: "No image. Cell with some width
-- or padding necessary for text cell to have 100% width."
row:tag('td')
:addClass('mbox-empty-cell')
end
-- Add the text.
local textCell = row:tag('td'):addClass('mbox-text')
if self.useCollapsibleTextFields then
-- The message box uses advanced text parameters that allow things to be
-- collapsible. At the moment, only ambox uses this.
textCell:cssText(self.textstyle or nil)
local textCellDiv = textCell:tag('div')
textCellDiv
:addClass('mbox-text-span')
:wikitext(self.issue or nil)
if (self.talk or self.fix) then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:wikitext(self.talk and (' ' .. self.talk) or nil)
:wikitext(self.fix and (' ' .. self.fix) or nil)
end
textCellDiv:wikitext(self.date and (' ' .. self.date) or nil)
if self.info and not self.isSmall then
textCellDiv
:tag('span')
:addClass('hide-when-compact')
:wikitext(self.info and (' ' .. self.info) or nil)
end
if self.removalNotice then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:tag('i')
:wikitext(string.format(" (%s)", self.removalNotice))
end
else
-- Default text formatting - anything goes.
textCell
:cssText(self.textstyle or nil)
:wikitext(self.text or nil)
end
-- Add the right-hand image.
if self.imageRight then
local imageRightCell = row:tag('td'):addClass('mbox-imageright')
if self.imageCellDiv then
-- If we are using a div, redefine imageRightCell so that the image
-- is inside it.
imageRightCell = imageRightCell:tag('div'):addClass('mbox-image-div')
end
imageRightCell
:wikitext(self.imageRight or nil)
end
-- Add the below row.
if self.below then
boxTable:tag('tr')
:tag('td')
:attr('colspan', self.imageRight and '3' or '2')
:addClass('mbox-text')
:cssText(self.textstyle or nil)
:wikitext(self.below or nil)
end
-- Add error message for invalid type parameters.
if self.invalidTypeError then
root:tag('div')
:addClass('mbox-invalid-type')
:wikitext(string.format(
'This message box is using an invalid "type=%s" parameter and needs fixing.',
self.type or ''
))
end
-- Add categories.
root:wikitext(self:renderCategories() or nil)
return tostring(root)
end
--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------
local p, mt = {}, {}
function p._exportClasses()
-- For testing.
return {
MessageBox = MessageBox
}
end
function p.main(boxType, args, cfgTables)
local box = MessageBox.new(boxType, args, cfgTables or mw.loadData(CONFIG_MODULE))
box:setParameters()
box:setCategories()
return box:export()
end
function mt.__index(t, k)
return function (frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return t.main(k, getArgs(frame, {trim = false, removeBlanks = false}))
end
end
return setmetatable(p, mt)
109haa8fa6erok27r4amq7gmehofivo
370363
283340
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Message_box]]
282827
Scribunto
text/plain
require('strict')
local getArgs
local yesno = require('Module:Yesno')
local lang = mw.language.getContentLanguage()
local CONFIG_MODULE = 'Module:Message box/configuration'
local DEMOSPACES = {talk = 'tmbox', image = 'imbox', file = 'imbox', category = 'cmbox', article = 'ambox', main = 'ambox'}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function getTitleObject(...)
-- Get the title object, passing the function through pcall
-- in case we are over the expensive function count limit.
local success, title = pcall(mw.title.new, ...)
if success then
return title
end
end
local function union(t1, t2)
-- Returns the union of two arrays.
local vals = {}
for i, v in ipairs(t1) do
vals[v] = true
end
for i, v in ipairs(t2) do
vals[v] = true
end
local ret = {}
for k in pairs(vals) do
table.insert(ret, k)
end
table.sort(ret)
return ret
end
local function getArgNums(args, prefix)
local nums = {}
for k, v in pairs(args) do
local num = mw.ustring.match(tostring(k), '^' .. prefix .. '([1-9]%d*)$')
if num then
table.insert(nums, tonumber(num))
end
end
table.sort(nums)
return nums
end
--------------------------------------------------------------------------------
-- Box class definition
--------------------------------------------------------------------------------
local MessageBox = {}
MessageBox.__index = MessageBox
function MessageBox.new(boxType, args, cfg)
args = args or {}
local obj = {}
-- Set the title object and the namespace.
obj.title = getTitleObject(args.page) or mw.title.getCurrentTitle()
-- Set the config for our box type.
obj.cfg = cfg[boxType]
if not obj.cfg then
local ns = obj.title.namespace
-- boxType is "mbox" or invalid input
if args.demospace and args.demospace ~= '' then
-- implement demospace parameter of mbox
local demospace = string.lower(args.demospace)
if DEMOSPACES[demospace] then
-- use template from DEMOSPACES
obj.cfg = cfg[DEMOSPACES[demospace]]
elseif string.find( demospace, 'talk' ) then
-- demo as a talk page
obj.cfg = cfg.tmbox
else
-- default to ombox
obj.cfg = cfg.ombox
end
elseif ns == 0 then
obj.cfg = cfg.ambox -- main namespace
elseif ns == 6 then
obj.cfg = cfg.imbox -- file namespace
elseif ns == 14 then
obj.cfg = cfg.cmbox -- category namespace
else
local nsTable = mw.site.namespaces[ns]
if nsTable and nsTable.isTalk then
obj.cfg = cfg.tmbox -- any talk namespace
else
obj.cfg = cfg.ombox -- other namespaces or invalid input
end
end
end
-- Set the arguments, and remove all blank arguments except for the ones
-- listed in cfg.allowBlankParams.
do
local newArgs = {}
for k, v in pairs(args) do
if v ~= '' then
newArgs[k] = v
end
end
for i, param in ipairs(obj.cfg.allowBlankParams or {}) do
newArgs[param] = args[param]
end
obj.args = newArgs
end
-- Define internal data structure.
obj.categories = {}
obj.classes = {}
-- For lazy loading of [[Module:Category handler]].
obj.hasCategories = false
return setmetatable(obj, MessageBox)
end
function MessageBox:addCat(ns, cat, sort)
if not cat then
return nil
end
if sort then
cat = string.format('[[Category:%s|%s]]', cat, sort)
else
cat = string.format('[[Category:%s]]', cat)
end
self.hasCategories = true
self.categories[ns] = self.categories[ns] or {}
table.insert(self.categories[ns], cat)
end
function MessageBox:addClass(class)
if not class then
return nil
end
table.insert(self.classes, class)
end
function MessageBox:setParameters()
local args = self.args
local cfg = self.cfg
-- Get type data.
self.type = args.type
local typeData = cfg.types[self.type]
self.invalidTypeError = cfg.showInvalidTypeError
and self.type
and not typeData
typeData = typeData or cfg.types[cfg.default]
self.typeClass = typeData.class
self.typeImage = typeData.image
self.typeImageNeedsLink = typeData.imageNeedsLink
-- Find if the box has been wrongly substituted.
self.isSubstituted = cfg.substCheck and args.subst == 'SUBST'
-- Find whether we are using a small message box.
self.isSmall = cfg.allowSmall and (
cfg.smallParam and args.small == cfg.smallParam
or not cfg.smallParam and yesno(args.small)
)
-- Set the below row.
self.below = cfg.below and args.below
-- Add attributes, classes and styles.
self.id = args.id
self.name = args.name
if self.name then
self:addClass('box-' .. string.gsub(self.name,' ','_'))
end
if yesno(args.plainlinks) ~= false then
self:addClass('plainlinks')
end
if self.below then
self:addClass('mbox-with-below')
end
for _, class in ipairs(cfg.classes or {}) do
self:addClass(class)
end
if self.isSmall then
self:addClass(cfg.smallClass or 'mbox-small')
end
self:addClass(self.typeClass)
self:addClass(args.class)
self.style = args.style
self.attrs = args.attrs
-- Set text style.
self.textstyle = args.textstyle
-- Set image classes.
self.imageRightClass = args.imagerightclass or args.imageclass
self.imageLeftClass = args.imageleftclass or args.imageclass
-- Find if we are on the template page or not. This functionality is only
-- used if useCollapsibleTextFields is set, or if both cfg.templateCategory
-- and cfg.templateCategoryRequireName are set.
self.useCollapsibleTextFields = cfg.useCollapsibleTextFields
if self.useCollapsibleTextFields
or cfg.templateCategory
and cfg.templateCategoryRequireName
then
if self.name then
local templateName = mw.ustring.match(
self.name,
'^[tT][eE][mM][pP][lL][aA][tT][eE][%s_]*:[%s_]*(.*)$'
) or self.name
templateName = 'Template:' .. templateName
self.templateTitle = getTitleObject(templateName)
end
self.isTemplatePage = self.templateTitle
and mw.title.equals(self.title, self.templateTitle)
end
-- Process data for collapsible text fields. At the moment these are only
-- used in {{ambox}}.
if self.useCollapsibleTextFields then
-- Get the self.issue value.
if self.isSmall and args.smalltext then
self.issue = args.smalltext
else
local sect
if args.sect == '' then
sect = 'This ' .. (cfg.sectionDefault or 'page')
elseif type(args.sect) == 'string' then
sect = 'This ' .. args.sect
end
local issue = args.issue
issue = type(issue) == 'string' and issue ~= '' and issue or nil
local text = args.text
text = type(text) == 'string' and text or nil
local issues = {}
table.insert(issues, sect)
table.insert(issues, issue)
table.insert(issues, text)
self.issue = table.concat(issues, ' ')
end
-- Get the self.talk value.
local talk = args.talk
-- Show talk links on the template page or template subpages if the talk
-- parameter is blank.
if talk == ''
and self.templateTitle
and (
mw.title.equals(self.templateTitle, self.title)
or self.title:isSubpageOf(self.templateTitle)
)
then
talk = '#'
elseif talk == '' then
talk = nil
end
if talk then
-- If the talk value is a talk page, make a link to that page. Else
-- assume that it's a section heading, and make a link to the talk
-- page of the current page with that section heading.
local talkTitle = getTitleObject(talk)
local talkArgIsTalkPage = true
if not talkTitle or not talkTitle.isTalkPage then
talkArgIsTalkPage = false
talkTitle = getTitleObject(
self.title.text,
mw.site.namespaces[self.title.namespace].talk.id
)
end
if talkTitle and talkTitle.exists then
local talkText
if self.isSmall then
local talkLink = talkArgIsTalkPage and talk or (talkTitle.prefixedText .. (talk == '#' and '' or '#') .. talk)
talkText = string.format('([[%s|talk]])', talkLink)
else
talkText = 'Relevant discussion may be found on'
if talkArgIsTalkPage then
talkText = string.format(
'%s [[%s|%s]].',
talkText,
talk,
talkTitle.prefixedText
)
else
talkText = string.format(
'%s the [[%s' .. (talk == '#' and '' or '#') .. '%s|talk page]].',
talkText,
talkTitle.prefixedText,
talk
)
end
end
self.talk = talkText
end
end
-- Get other values.
self.fix = args.fix ~= '' and args.fix or nil
local date
if args.date and args.date ~= '' then
date = args.date
elseif args.date == '' and self.isTemplatePage then
date = lang:formatDate('F Y')
end
if date then
self.date = string.format(" <span class='date-container'><i>(<span class='date'>%s</span>)</i></span>", date)
end
self.info = args.info
if yesno(args.removalnotice) then
self.removalNotice = cfg.removalNotice
end
end
-- Set the non-collapsible text field. At the moment this is used by all box
-- types other than ambox, and also by ambox when small=yes.
if self.isSmall then
self.text = args.smalltext or args.text
else
self.text = args.text
end
-- General image settings.
self.imageCellDiv = not self.isSmall and cfg.imageCellDiv
self.imageEmptyCell = cfg.imageEmptyCell
-- Left image settings.
local imageLeft = self.isSmall and args.smallimage or args.image
if cfg.imageCheckBlank and imageLeft ~= 'blank' and imageLeft ~= 'none'
or not cfg.imageCheckBlank and imageLeft ~= 'none'
then
self.imageLeft = imageLeft
if not imageLeft then
local imageSize = self.isSmall
and (cfg.imageSmallSize or '30x30px')
or '40x40px'
self.imageLeft = string.format('[[File:%s|%s%s|alt=]]', self.typeImage
or 'Information icon4.svg', imageSize, self.typeImageNeedsLink and "" or "|link=" )
end
end
-- Right image settings.
local imageRight = self.isSmall and args.smallimageright or args.imageright
if not (cfg.imageRightNone and imageRight == 'none') then
self.imageRight = imageRight
end
-- set templatestyles
self.base_templatestyles = cfg.templatestyles
self.templatestyles = args.templatestyles
end
function MessageBox:setMainspaceCategories()
local args = self.args
local cfg = self.cfg
if not cfg.allowMainspaceCategories then
return nil
end
local nums = {}
for _, prefix in ipairs{'cat', 'category', 'all'} do
args[prefix .. '1'] = args[prefix]
nums = union(nums, getArgNums(args, prefix))
end
-- The following is roughly equivalent to the old {{Ambox/category}}.
local date = args.date
date = type(date) == 'string' and date
local preposition = 'from'
for _, num in ipairs(nums) do
local mainCat = args['cat' .. tostring(num)]
or args['category' .. tostring(num)]
local allCat = args['all' .. tostring(num)]
mainCat = type(mainCat) == 'string' and mainCat
allCat = type(allCat) == 'string' and allCat
if mainCat and date and date ~= '' then
local catTitle = string.format('%s %s %s', mainCat, preposition, date)
self:addCat(0, catTitle)
catTitle = getTitleObject('Category:' .. catTitle)
if not catTitle or not catTitle.exists then
self:addCat(0, 'Articles with invalid date parameter in template')
end
elseif mainCat and (not date or date == '') then
self:addCat(0, mainCat)
end
if allCat then
self:addCat(0, allCat)
end
end
end
function MessageBox:setTemplateCategories()
local args = self.args
local cfg = self.cfg
-- Add template categories.
if cfg.templateCategory then
if cfg.templateCategoryRequireName then
if self.isTemplatePage then
self:addCat(10, cfg.templateCategory)
end
elseif not self.title.isSubpage then
self:addCat(10, cfg.templateCategory)
end
end
-- Add template error categories.
if cfg.templateErrorCategory then
local templateErrorCategory = cfg.templateErrorCategory
local templateCat, templateSort
if not self.name and not self.title.isSubpage then
templateCat = templateErrorCategory
elseif self.isTemplatePage then
local paramsToCheck = cfg.templateErrorParamsToCheck or {}
local count = 0
for i, param in ipairs(paramsToCheck) do
if not args[param] then
count = count + 1
end
end
if count > 0 then
templateCat = templateErrorCategory
templateSort = tostring(count)
end
if self.categoryNums and #self.categoryNums > 0 then
templateCat = templateErrorCategory
templateSort = 'C'
end
end
self:addCat(10, templateCat, templateSort)
end
end
function MessageBox:setAllNamespaceCategories()
-- Set categories for all namespaces.
if self.invalidTypeError then
local allSort = (self.title.namespace == 0 and 'Main:' or '') .. self.title.prefixedText
self:addCat('all', 'Wikipedia message box parameter needs fixing', allSort)
end
if self.isSubstituted then
self:addCat('all', 'Pages with incorrectly substituted templates')
end
end
function MessageBox:setCategories()
if self.title.namespace == 0 then
self:setMainspaceCategories()
elseif self.title.namespace == 10 then
self:setTemplateCategories()
end
self:setAllNamespaceCategories()
end
function MessageBox:renderCategories()
if not self.hasCategories then
-- No categories added, no need to pass them to Category handler so,
-- if it was invoked, it would return the empty string.
-- So we shortcut and return the empty string.
return ""
end
-- Convert category tables to strings and pass them through
-- [[Module:Category handler]].
return require('Module:Category handler')._main{
main = table.concat(self.categories[0] or {}),
template = table.concat(self.categories[10] or {}),
all = table.concat(self.categories.all or {}),
nocat = self.args.nocat,
page = self.args.page
}
end
function MessageBox:exportDiv()
local root = mw.html.create()
-- Add the subst check error.
if self.isSubstituted and self.name then
root:tag('b')
:addClass('error')
:wikitext(string.format(
'Template <code>%s[[Template:%s|%s]]%s</code> has been incorrectly substituted.',
mw.text.nowiki('{{'), self.name, self.name, mw.text.nowiki('}}')
))
end
local frame = mw.getCurrentFrame()
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.base_templatestyles },
})
-- Add support for a single custom templatestyles sheet. Undocumented as
-- need should be limited and many templates using mbox are substed; we
-- don't want to spread templatestyles sheets around to arbitrary places
if self.templatestyles then
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.templatestyles },
})
end
-- Create the box.
local mbox = root:tag('div')
mbox:attr('id', self.id or nil)
for i, class in ipairs(self.classes or {}) do
mbox:addClass(class or nil)
end
mbox
:cssText(self.style or nil)
if self.attrs then
mbox:attr(self.attrs)
end
local flex_container
if self.below then
-- we need to wrap the flex components (`image(right)` and `text`) in their
-- own container div to support the `below` parameter
flex_container = mw.html.create('div')
flex_container:addClass('mbox-flex')
else
-- the mbox itself is the parent, so we need no HTML flex_container
flex_container = mw.html.create()
end
-- Add the left-hand image.
if self.imageLeft then
local imageLeftCell = flex_container:tag('div'):addClass('mbox-image')
imageLeftCell
:addClass(self.imageLeftClass)
:wikitext(self.imageLeft or nil)
end
-- Add the text.
local textCell = flex_container:tag('div'):addClass('mbox-text')
if self.useCollapsibleTextFields then
-- The message box uses advanced text parameters that allow things to be
-- collapsible. At the moment, only ambox uses this.
textCell:cssText(self.textstyle or nil)
local textCellDiv = textCell:tag('div')
textCellDiv
:addClass('mbox-text-span')
:wikitext(self.issue or nil)
if (self.talk or self.fix) then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:wikitext(self.talk and (' ' .. self.talk) or nil)
:wikitext(self.fix and (' ' .. self.fix) or nil)
end
textCellDiv:wikitext(self.date and (' ' .. self.date) or nil)
if self.info and not self.isSmall then
textCellDiv
:tag('span')
:addClass('hide-when-compact')
:wikitext(self.info and (' ' .. self.info) or nil)
end
if self.removalNotice then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:tag('i')
:wikitext(string.format(" (%s)", self.removalNotice))
end
else
-- Default text formatting - anything goes.
textCell
:cssText(self.textstyle or nil)
:wikitext(self.text or nil)
end
-- Add the right-hand image.
if self.imageRight then
local imageRightCell = flex_container:tag('div'):addClass('mbox-imageright')
imageRightCell
:addClass(self.imageRightClass)
:wikitext(self.imageRight or nil)
end
mbox:node(flex_container)
-- Add the below row.
if self.below then
mbox:tag('div')
:addClass('mbox-text mbox-below')
:cssText(self.textstyle or nil)
:wikitext(self.below or nil)
end
-- Add error message for invalid type parameters.
if self.invalidTypeError then
root:tag('div')
:addClass('mbox-invalid-type')
:wikitext(string.format(
'This message box is using an invalid "type=%s" parameter and needs fixing.',
self.type or ''
))
end
-- Add categories.
root:wikitext(self:renderCategories() or nil)
return tostring(root)
end
function MessageBox:export()
local root = mw.html.create()
-- Add the subst check error.
if self.isSubstituted and self.name then
root:tag('b')
:addClass('error')
:wikitext(string.format(
'Template <code>%s[[Template:%s|%s]]%s</code> has been incorrectly substituted.',
mw.text.nowiki('{{'), self.name, self.name, mw.text.nowiki('}}')
))
end
local frame = mw.getCurrentFrame()
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.base_templatestyles },
})
-- Add support for a single custom templatestyles sheet. Undocumented as
-- need should be limited and many templates using mbox are substed; we
-- don't want to spread templatestyles sheets around to arbitrary places
if self.templatestyles then
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.templatestyles },
})
end
-- Create the box table.
local boxTable = root:tag('table')
boxTable:attr('id', self.id or nil)
for i, class in ipairs(self.classes or {}) do
boxTable:addClass(class or nil)
end
boxTable
:cssText(self.style or nil)
:attr('role', 'presentation')
if self.attrs then
boxTable:attr(self.attrs)
end
-- Add the left-hand image.
local row = boxTable:tag('tr')
if self.imageLeft then
local imageLeftCell = row:tag('td'):addClass('mbox-image')
if self.imageCellDiv then
-- If we are using a div, redefine imageLeftCell so that the image
-- is inside it. Divs use style="width: 52px;", which limits the
-- image width to 52px. If any images in a div are wider than that,
-- they may overlap with the text or cause other display problems.
imageLeftCell = imageLeftCell:tag('div'):addClass('mbox-image-div')
end
imageLeftCell
:addClass(self.imageLeftClass)
:wikitext(self.imageLeft or nil)
elseif self.imageEmptyCell then
-- Some message boxes define an empty cell if no image is specified, and
-- some don't. The old template code in templates where empty cells are
-- specified gives the following hint: "No image. Cell with some width
-- or padding necessary for text cell to have 100% width."
row:tag('td')
:addClass('mbox-empty-cell')
end
-- Add the text.
local textCell = row:tag('td'):addClass('mbox-text')
if self.useCollapsibleTextFields then
-- The message box uses advanced text parameters that allow things to be
-- collapsible. At the moment, only ambox uses this.
textCell:cssText(self.textstyle or nil)
local textCellDiv = textCell:tag('div')
textCellDiv
:addClass('mbox-text-span')
:wikitext(self.issue or nil)
if (self.talk or self.fix) then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:wikitext(self.talk and (' ' .. self.talk) or nil)
:wikitext(self.fix and (' ' .. self.fix) or nil)
end
textCellDiv:wikitext(self.date and (' ' .. self.date) or nil)
if self.info and not self.isSmall then
textCellDiv
:tag('span')
:addClass('hide-when-compact')
:wikitext(self.info and (' ' .. self.info) or nil)
end
if self.removalNotice then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:tag('i')
:wikitext(string.format(" (%s)", self.removalNotice))
end
else
-- Default text formatting - anything goes.
textCell
:cssText(self.textstyle or nil)
:wikitext(self.text or nil)
end
-- Add the right-hand image.
if self.imageRight then
local imageRightCell = row:tag('td'):addClass('mbox-imageright')
if self.imageCellDiv then
-- If we are using a div, redefine imageRightCell so that the image
-- is inside it.
imageRightCell = imageRightCell:tag('div'):addClass('mbox-image-div')
end
imageRightCell
:addClass(self.imageRightClass)
:wikitext(self.imageRight or nil)
end
-- Add the below row.
if self.below then
boxTable:tag('tr')
:tag('td')
:attr('colspan', self.imageRight and '3' or '2')
:addClass('mbox-text')
:cssText(self.textstyle or nil)
:wikitext(self.below or nil)
end
-- Add error message for invalid type parameters.
if self.invalidTypeError then
root:tag('div')
:addClass('mbox-invalid-type')
:wikitext(string.format(
'This message box is using an invalid "type=%s" parameter and needs fixing.',
self.type or ''
))
end
-- Add categories.
root:wikitext(self:renderCategories() or nil)
return tostring(root)
end
--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------
local p, mt = {}, {}
function p._exportClasses()
-- For testing.
return {
MessageBox = MessageBox
}
end
function p.main(boxType, args, cfgTables)
local box = MessageBox.new(boxType, args, cfgTables or mw.loadData(CONFIG_MODULE))
box:setParameters()
box:setCategories()
-- DIV MIGRATION CONDITIONAL
if box.cfg.div_structure then
return box:exportDiv()
end
-- END DIV MIGRATION CONDITIONAL
return box:export()
end
function mt.__index(t, k)
return function (frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return t.main(k, getArgs(frame, {trim = false, removeBlanks = false}))
end
end
return setmetatable(p, mt)
ocboyo877qnpqum2b9fyiquh72vukqa
ಟೆಂಪ್ಲೇಟ್:ಮಾಜಾವುನೆ
10
4912
370283
280036
2026-09-28T01:13:25Z
ChiK
1136
/* */
370283
wikitext
text/x-wiki
{{ombox
| name = ಮಾಜಾವುನೆ
| type = speedy
| image = [[Image:Icono aviso borrar.png|40px]]
| style = CSS values
| textstyle = CSS values
| plainlinks = no
|text= ''ಈ ಪುಟೊನು ಮಾಜಾಯೆರೆ ಗುರ್ತೊ ಮಲ್ತುತೊ. ಈರೆಗ್ ಈ ಲೇಕನೊನು ಮಾಜಾವುನೆಗ್ ವಿರೋದೊ ಇತ್ತ್ಂಡ [[ವಿಕಿಪೀಡಿಯ:ಮಾಜಾಯರ ಪಾಡಿನ ಲೇಕೊನೊಲು]] ಪುಟೊಡು ತೆರಿಪಾಲೆ.''<br /><br>
ಮಾಜಾವುನೆಗ್ ಗುರ್ತೊ ಮಲ್ಪೆರೆ ಕಾರಣೊ: '''{{{1}}}'''
}}
<includeonly>[[Category:ಮಾಜಾಯಿನೆಗ್ ಪಾಡಿನ ಲೇಕನೊಲು]]</includeonly><noinclude>
{{documentation}}
[[Category:ಮಾಜಾವುನ ಟೆಂಪ್ಲೇಟ್]]
</noinclude>
olbddgxrxggsxo3md5rqw5opatxrl6f
ಟೆಂಪ್ಲೇಟ್:Documentation
10
5005
370384
149098
2025-07-13T15:27:12Z
meta>Pppery
0
Deeper revert
370384
wikitext
text/x-wiki
{{#invoke:Documentation|main}}
luikhwbwvdtumpb22702sp0wax3ql0s
370385
370384
2026-09-28T08:07:29Z
ChiK
1136
1 revision imported from [[:meta:Template:Documentation]]
370384
wikitext
text/x-wiki
{{#invoke:Documentation|main}}
luikhwbwvdtumpb22702sp0wax3ql0s
370476
370385
2026-09-28T09:30:58Z
ChiK
1136
370476
wikitext
text/x-wiki
{{#invoke:documentation|main|_content={{ {{#invoke:documentation|contentTitle}}}}}}<noinclude>
<!-- Add categories to the /doc subpage -->
</noinclude>
ii1kftoonz87mztj4siz1yhyqeg6agm
ಟೆಂಪ್ಲೇಟ್:Documentation subpage
10
5006
370402
157763
2025-04-27T19:22:45Z
meta>Pppery
0
Protected "[[Template:Documentation subpage]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
370402
wikitext
text/x-wiki
<includeonly>{{#if:{{IsDocSubpage|override={{{override|doc}}}}}
| <!--doc subpage--></includeonly>{{#ifeq:{{{doc-notice|show}}}|show
| {{Ombox|type=notice|image=[[File:Edit-copy green.svg|40px|link=]]
|text='''This is a [[Help:Template documentation|documentation]] [[mw:Help:Subpages|subpage]] for {{#if:{{{1|}}}
| {{{1}}}
| [[:{{SUBJECTSPACE}}:{{BASEPAGENAME}}]]
}}.'''<br/> It contains usage information, [[Categorization|categories]], and other content that is not part of the original<!--
--> {{#if: {{{text2|}}}
| {{{text2|}}}
| {{#if: {{{text1|}}}
| {{{text1|}}}
| {{#ifeq: {{SUBJECTSPACE}} | {{ns:User}}
| {{lc:{{SUBJECTSPACE}}}} template page
| {{#if: {{SUBJECTSPACE}}
| {{lc:{{SUBJECTSPACE}}}} page
| article
}}
}}
}}
}}.
}}
<!--If not on a doc subpage, do nothing-->}}{{DEFAULTSORT:{{{defaultsort|{{PAGENAME}}}}}}}{{#if: {{{inhibit|}}}
| <!--Skip-->
| <includeonly>{{#ifexist: {{NAMESPACE}}:{{BASEPAGENAME}}
| [[Category:{{#switch: {{SUBJECTSPACE}}
|Template=Template
|Module=Module
|User=User
|#default=Template
}} documentation pages{{#translation:}}]]
| [[Category:Documentation subpages without corresponding pages{{#translation:}}]]
}}</includeonly>
}}<includeonly>
}}</includeonly><noinclude>{{Documentation}}<!--Add categories and interwikis to the /doc subpage, not here!--></noinclude>
janb5ut2et9wnhlm3nidujawx7yux43
370403
368365
2026-09-28T08:07:29Z
ChiK
1136
1 revision imported from [[:meta:Template:Documentation_subpage]]
368365
wikitext
text/x-wiki
<includeonly><!--
-->{{#ifeq:{{lc:{{SUBPAGENAME}}}} |{{{override|doc}}}
| <!--(this template has been transcluded on a /doc or /{{{override}}} page)-->
</includeonly><!--
-->{{#ifeq:{{{doc-notice|show}}} |show
| {{Mbox
| type = notice
| style = margin-bottom:1.0em;
| image = [[File:Edit-copy green.svg|40px|alt=icon]]
| text =
{{strong|ಉಂದು {{{1|[[:{{SUBJECTSPACE}}:{{BASEPAGENAME}}]]}}}ಗ್ ಒಂಜಿ [[:en:Wikipedia:Template documentation|ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ಉಪಪುಟೊ]].}}<br />It may contain usage information, [[Wikipedia:Categorization|categories]] and other content that is not part of the original {{#if:{{{text2|}}} |{{{text2}}} |{{#if:{{{text1|}}} |{{{text1}}} |{{#ifeq:{{SUBJECTSPACE}} |{{ns:User}} |{{lc:{{SUBJECTSPACE}}}} template page |{{#if:{{SUBJECTSPACE}} |{{lc:{{SUBJECTSPACE}}}} page|article}}}}}}}}.
}}
}}<!--
-->{{DEFAULTSORT:{{{defaultsort|{{PAGENAME}}}}}}}<!--
--><includeonly>__EXPECTED_UNCONNECTED_PAGE__</includeonly><!--
-->{{#if:{{{nocat|}}}{{{inhibit|}}}|<!--(don't categorize)-->
|<includeonly><!--
-->{{#ifexist:{{NAMESPACE}}:{{BASEPAGENAME}}
| [[Category:{{#switch:{{SUBJECTSPACE}} |Template=Template |Module=Module |User=User |#default=Wikipedia}} documentation pages]]
| [[Category:Documentation subpages without corresponding pages]]
}}<!--
--></includeonly>
}}<!--
(completing initial #ifeq: at start of template:)
--><includeonly>
| <!--(this template has not been transcluded on a /doc or /{{{override}}} page)-->
}}<!--
--></includeonly><noinclude>{{Documentation}}</noinclude>
4anro6oj3ttp1r8xuu38v3yw8hbvs8v
ಮೋಡ್ಯೂಲ್:Documentation
828
5067
370386
361822
2026-06-28T06:36:31Z
meta>NguoiDungKhongDinhDanh
0
Per [[Special:Permalink/30742714#Proposed Improvement for Action Links|discussion]]
370386
Scribunto
text/plain
-- This module implements {{documentation}}.
-- Get required modules.
local getArgs = require('Module:Arguments').getArgs
local messageBox = require('Module:Message box')
-- Get the config table.
local cfg = mw.loadData('Module:Documentation/config')
local i18n = mw.loadData('Module:Documentation/i18n')
local p = {}
-- Often-used functions.
local ugsub = mw.ustring.gsub
----------------------------------------------------------------------------
-- Helper functions
--
-- These are defined as local functions, but are made available in the p
-- table for testing purposes.
----------------------------------------------------------------------------
local function message(cfgKey, valArray, expectType)
--[[
-- Gets a message from the cfg table and formats it if appropriate.
-- The function raises an error if the value from the cfg table is not
-- of the type expectType. The default type for expectType is 'string'.
-- If the table valArray is present, strings such as $1, $2 etc. in the
-- message are substituted with values from the table keys [1], [2] etc.
-- For example, if the message "foo-message" had the value 'Foo $2 bar $1.',
-- message('foo-message', {'baz', 'qux'}) would return "Foo qux bar baz."
--]]
local msg = cfg[cfgKey]
expectType = expectType or 'string'
if type(msg) ~= expectType then
error(require('Module:TNT').format('I18n/Documentation', 'cfg-error-msg-type', cfgKey, expectType, type(msg)), 2)
end
if not valArray then
return msg
end
local function getMessageVal(match)
match = tonumber(match)
return valArray[match] or error(require('Module:TNT').format('I18n/Documentation', 'cfg-error-msg-empty', '$' .. match, cfgKey), 4)
end
local ret = ugsub(msg, '$([1-9][0-9]*)', getMessageVal)
return ret
end
p.message = message
local function makeWikilink(page, display)
if display then
return mw.ustring.format('[[%s|%s]]', page, display)
else
return mw.ustring.format('[[%s]]', page)
end
end
p.makeWikilink = makeWikilink
local function makeCategoryLink(cat, sort)
local catns = mw.site.namespaces[14].name
return makeWikilink(catns .. ':' .. cat, sort)
end
p.makeCategoryLink = makeCategoryLink
local function makeUrlLink(url, display)
return mw.ustring.format('[%s %s]', url, display)
end
p.makeUrlLink = makeUrlLink
local function makeToolbar(...)
local ret = {}
local lim = select('#', ...)
if lim < 1 then
return nil
end
for i = 1, lim do
ret[#ret + 1] = select(i, ...)
end
return '<small>(' .. table.concat(ret, ' | ') .. ')</small>'
end
p.makeToolbar = makeToolbar
----------------------------------------------------------------------------
-- Argument processing
----------------------------------------------------------------------------
local function makeInvokeFunc(funcName)
return function (frame)
local args = getArgs(frame, {
valueFunc = function (key, value)
if type(value) == 'string' then
value = value:match('^%s*(.-)%s*$') -- Remove whitespace.
if key == 'heading' or value ~= '' then
return value
else
return nil
end
else
return value
end
end
})
return p[funcName](args)
end
end
----------------------------------------------------------------------------
-- Load TemplateStyles
----------------------------------------------------------------------------
p.main = function(frame)
local parent = frame.getParent(frame)
local output = p._main(parent.args)
return frame:extensionTag{ name='templatestyles', args = { src= message('templatestyles-scr') } } .. output
end
----------------------------------------------------------------------------
-- Main function
----------------------------------------------------------------------------
function p._main(args)
--[[
-- This function defines logic flow for the module.
-- @args - table of arguments passed by the user
--
-- Messages:
-- 'main-div-id' --> 'template-documentation'
-- 'main-div-classes' --> 'template-documentation iezoomfix'
--]]
local env = p.getEnvironment(args)
local root = mw.html.create()
root
:wikitext(p._getModuleWikitext(args, env))
:wikitext(p.protectionTemplate(env))
:wikitext(p.sandboxNotice(args, env))
-- This div tag is from {{documentation/start box}}, but moving it here
-- so that we don't have to worry about unclosed tags.
:tag('div')
:attr('id', message('main-div-id'))
:addClass(message('main-div-class'))
:wikitext(p._startBox(args, env))
:wikitext(p._content(args, env))
:done()
:wikitext(p._endBox(args, env))
:wikitext(p.addTrackingCategories(env))
return tostring(root)
end
----------------------------------------------------------------------------
-- Environment settings
----------------------------------------------------------------------------
function p.getEnvironment(args)
--[[
-- Returns a table with information about the environment, including title objects and other namespace- or
-- path-related data.
-- @args - table of arguments passed by the user
--
-- Title objects include:
-- env.title - the page we are making documentation for (usually the current title)
-- env.templateTitle - the template (or module, file, etc.)
-- env.docTitle - the /doc subpage.
-- env.sandboxTitle - the /sandbox subpage.
-- env.testcasesTitle - the /testcases subpage.
-- env.printTitle - the print version of the template, located at the /Print subpage.
--
-- Data includes:
-- env.protectionLevels - the protection levels table of the title object.
-- env.subjectSpace - the number of the title's subject namespace.
-- env.docSpace - the number of the namespace the title puts its documentation in.
-- env.docpageBase - the text of the base page of the /doc, /sandbox and /testcases pages, with namespace.
-- env.compareUrl - URL of the Special:ComparePages page comparing the sandbox with the template.
--
-- All table lookups are passed through pcall so that errors are caught. If an error occurs, the value
-- returned will be nil.
--]]
local env, envFuncs = {}, {}
-- Set up the metatable. If triggered we call the corresponding function in the envFuncs table. The value
-- returned by that function is memoized in the env table so that we don't call any of the functions
-- more than once. (Nils won't be memoized.)
setmetatable(env, {
__index = function (t, key)
local envFunc = envFuncs[key]
if envFunc then
local success, val = pcall(envFunc)
if success then
env[key] = val -- Memoise the value.
return val
end
end
return nil
end
})
function envFuncs.title()
-- The title object for the current page, or a test page passed with args.page.
local title
local titleArg = args.page
if titleArg then
title = mw.title.new(titleArg)
else
title = mw.title.getCurrentTitle()
end
return title
end
function envFuncs.templateTitle()
--[[
-- The template (or module, etc.) title object.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
-- 'testcases-subpage' --> 'testcases'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local subpage = title.subpageText
if subpage == message('sandbox-subpage') or subpage == message('testcases-subpage') then
return mw.title.makeTitle(subjectSpace, title.baseText)
else
return mw.title.makeTitle(subjectSpace, title.text)
end
end
function envFuncs.docTitle()
--[[
-- Title object of the /doc subpage.
-- Messages:
-- 'doc-subpage' --> 'doc'
--]]
local title = env.title
local docname = args[1] -- User-specified doc page.
local docpage
if docname then
docpage = docname
else
docpage = env.docpageBase .. '/' .. message('doc-subpage')
end
return mw.title.new(docpage)
end
function envFuncs.sandboxTitle()
--[[
-- Title object for the /sandbox subpage.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('sandbox-subpage'))
end
function envFuncs.testcasesTitle()
--[[
-- Title object for the /testcases subpage.
-- Messages:
-- 'testcases-subpage' --> 'testcases'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('testcases-subpage'))
end
function envFuncs.printTitle()
--[[
-- Title object for the /Print subpage.
-- Messages:
-- 'print-subpage' --> 'Print'
--]]
return env.templateTitle:subPageTitle(message('print-subpage'))
end
function envFuncs.protectionLevels()
-- The protection levels table of the title object.
return env.title.protectionLevels
end
function envFuncs.subjectSpace()
-- The subject namespace number.
return mw.site.namespaces[env.title.namespace].subject.id
end
function envFuncs.docSpace()
-- The documentation namespace number. For most namespaces this is the same as the
-- subject namespace. However, pages in the Article, File, MediaWiki or Category
-- namespaces must have their /doc, /sandbox and /testcases pages in talk space.
local subjectSpace = env.subjectSpace
if subjectSpace == 0 or subjectSpace == 6 or subjectSpace == 8 or subjectSpace == 14 then
return subjectSpace + 1
else
return subjectSpace
end
end
function envFuncs.docpageBase()
-- The base page of the /doc, /sandbox, and /testcases subpages.
-- For some namespaces this is the talk page, rather than the template page.
local templateTitle = env.templateTitle
local docSpace = env.docSpace
local docSpaceText = mw.site.namespaces[docSpace].name
-- Assemble the link. docSpace is never the main namespace, so we can hardcode the colon.
return docSpaceText .. ':' .. templateTitle.text
end
function envFuncs.compareUrl()
-- Diff link between the sandbox and the main template using [[Special:ComparePages]].
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
if templateTitle.exists and sandboxTitle.exists then
local compareUrl = mw.uri.fullUrl(
'Special:ComparePages',
{page1 = templateTitle.prefixedText, page2 = sandboxTitle.prefixedText}
)
return tostring(compareUrl)
else
return nil
end
end
return env
end
----------------------------------------------------------------------------
-- Auxiliary templates
----------------------------------------------------------------------------
p.getModuleWikitext = makeInvokeFunc('_getModuleWikitext')
function p._getModuleWikitext(args, env)
local currentTitle = mw.title.getCurrentTitle()
if currentTitle.contentModel ~= 'Scribunto' then return end
pcall(require, currentTitle.prefixedText) -- if it fails, we don't care
local moduleWikitext = package.loaded["Module:Module wikitext"]
if moduleWikitext then
return moduleWikitext.main()
end
end
function p.sandboxNotice(args, env)
--[=[
-- Generates a sandbox notice for display above sandbox pages.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-notice-image' --> '[[Image:Sandbox.svg|50px|alt=|link=]]'
-- 'sandbox-notice-blurb' --> 'This is the $1 for $2.'
-- 'sandbox-notice-diff-blurb' --> 'This is the $1 for $2 ($3).'
-- 'sandbox-notice-pagetype-template' --> '[[w:Wikipedia:Template test cases|template sandbox]] page'
-- 'sandbox-notice-pagetype-module' --> '[[w:Wikipedia:Template test cases|module sandbox]] page'
-- 'sandbox-notice-pagetype-other' --> 'sandbox page'
-- 'sandbox-notice-compare-link-display' --> 'diff'
-- 'sandbox-notice-testcases-blurb' --> 'See also the companion subpage for $1.'
-- 'sandbox-notice-testcases-link-display' --> 'test cases'
-- 'sandbox-category' --> 'Template sandboxes'
--]=]
local title = env.title
local sandboxTitle = env.sandboxTitle
local templateTitle = env.templateTitle
local subjectSpace = env.subjectSpace
if not (subjectSpace and title and sandboxTitle and templateTitle and mw.title.equals(title, sandboxTitle)) then
return nil
end
-- Build the table of arguments to pass to {{ombox}}. We need just two fields, "image" and "text".
local omargs = {}
omargs.image = message('sandbox-notice-image')
-- Get the text. We start with the opening blurb, which is something like
-- "This is the template sandbox for [[Template:Foo]] (diff)."
local text = ''
local frame = mw.getCurrentFrame()
local isPreviewing = frame:preprocess('{{REVISIONID}}') == '' -- True if the page is being previewed.
local pagetype
if subjectSpace == 10 then
pagetype = message('sandbox-notice-pagetype-template')
elseif subjectSpace == 828 then
pagetype = message('sandbox-notice-pagetype-module')
else
pagetype = message('sandbox-notice-pagetype-other')
end
local templateLink = makeWikilink(templateTitle.prefixedText)
local compareUrl = env.compareUrl
if isPreviewing or not compareUrl then
text = text .. message('sandbox-notice-blurb', {pagetype, templateLink})
else
local compareDisplay = message('sandbox-notice-compare-link-display')
local compareLink = makeUrlLink(compareUrl, compareDisplay)
text = text .. message('sandbox-notice-diff-blurb', {pagetype, templateLink, compareLink})
end
-- Get the test cases page blurb if the page exists. This is something like
-- "See also the companion subpage for [[Template:Foo/testcases|test cases]]."
local testcasesTitle = env.testcasesTitle
if testcasesTitle and testcasesTitle.exists then
if testcasesTitle.contentModel == "Scribunto" then
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesRunLinkDisplay = message('sandbox-notice-testcases-run-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-run-blurb', {testcasesLink, testcasesRunLink})
else
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-blurb', {testcasesLink})
end
end
-- Add the sandbox to the sandbox category.
text = text .. makeCategoryLink(message('sandbox-category'))
omargs.text = text
omargs.class = message('sandbox-class')
return messageBox.main('ombox', omargs)
end
function p.protectionTemplate(env)
-- Generates the padlock icon in the top right.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'protection-template' --> 'pp-template'
-- 'protection-template-args' --> {docusage = 'yes'}
local title = env.title
local protectionLevels
local protectionTemplate = message('protection-template')
local namespace = title.namespace
if not (protectionTemplate and (namespace == 10 or namespace == 828)) then
-- Don't display the protection template if we are not in the template or module namespaces.
return nil
end
protectionLevels = env.protectionLevels
if not protectionLevels then
return nil
end
local editLevels = protectionLevels.edit
local moveLevels = protectionLevels.move
if moveLevels and moveLevels[1] == 'sysop' or editLevels and editLevels[1] then
-- The page is full-move protected, or full, template, or semi-protected.
local frame = mw.getCurrentFrame()
return frame:expandTemplate{title = protectionTemplate, args = message('protection-template-args', nil, 'table')}
else
return nil
end
end
----------------------------------------------------------------------------
-- Start box
----------------------------------------------------------------------------
p.startBox = makeInvokeFunc('_startBox')
function p._startBox(args, env)
--[[
-- This function generates the start box.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- The actual work is done by p.makeStartBoxLinksData and p.renderStartBoxLinks which make
-- the [view] [edit] [history] [purge] links, and by p.makeStartBoxData and p.renderStartBox
-- which generate the box HTML.
--]]
env = env or p.getEnvironment(args)
local links
local content = args.content
if not content then
-- No need to include the links if the documentation is on the template page itself.
local linksData = p.makeStartBoxLinksData(args, env)
if linksData then
links = p.renderStartBoxLinks(linksData)
end
end
-- Generate the start box html.
local data = p.makeStartBoxData(args, env, links)
if data then
return p.renderStartBox(data)
else
-- User specified no heading.
return nil
end
end
function p.makeStartBoxLinksData(args, env)
--[[
-- Does initial processing of data to make the [view] [edit] [history] [purge] links.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'view-link-display' --> 'view'
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'purge-link-display' --> 'purge'
-- 'file-docpage-preload' --> 'Template:Documentation/preload-filespace'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'docpage-preload' --> 'Template:Documentation/preload'
-- 'create-link-display' --> 'create'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local docTitle = env.docTitle
if not title or not docTitle then
return nil
end
if docTitle.isRedirect then
docTitle = docTitle.redirectTarget
end
local data = {}
data.title = title
data.docTitle = docTitle
-- View, display, edit, and purge links if /doc exists.
data.viewLinkDisplay = i18n['view-link-display']
data.editLinkDisplay = i18n['edit-link-display']
data.historyLinkDisplay = i18n['history-link-display']
data.purgeLinkDisplay = i18n['purge-link-display']
-- Create link if /doc doesn't exist.
local preload = args.preload
if not preload then
if subjectSpace == 6 then -- File namespace
preload = message('file-docpage-preload')
elseif subjectSpace == 828 then -- Module namespace
preload = message('module-preload')
else
preload = message('docpage-preload')
end
end
data.preload = preload
data.createLinkDisplay = i18n['create-link-display']
return data
end
function p.renderStartBoxLinks(data)
--[[
-- Generates the [view][edit][history][purge] or [create] links from the data table.
-- @data - a table of data generated by p.makeStartBoxLinksData
--]]
local ret
local docTitle = data.docTitle
local title = data.title
if docTitle.exists then
local viewLink = makeWikilink(docTitle.prefixedText, data.viewLinkDisplay)
local editLink = makeUrlLink(docTitle:fullUrl{action = 'edit'}, data.editLinkDisplay)
local historyLink = makeUrlLink(docTitle:fullUrl{action = 'history'}, data.historyLinkDisplay)
local purgeLink = makeUrlLink(title:fullUrl{action = 'purge'}, data.purgeLinkDisplay)
ret = '%s%s%s%s'
ret = mw.ustring.format(ret, viewLink, editLink, historyLink, purgeLink)
else
local createLink = makeUrlLink(docTitle:fullUrl{action = 'edit', preload = data.preload}, data.createLinkDisplay)
ret = '%s'
ret = mw.ustring.format(ret, createLink)
end
return ret
end
function p.makeStartBoxData(args, env, links)
--[=[
-- Does initial processing of data to pass to the start-box render function, p.renderStartBox.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- @links - a string containing the [view][edit][history][purge] links - could be nil if there's an error.
--
-- Messages:
-- 'documentation-icon-wikitext' --> '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=Documentation icon]]'
-- 'template-namespace-heading' --> 'Template documentation'
-- 'module-namespace-heading' --> 'Module documentation'
-- 'file-namespace-heading' --> 'Summary'
-- 'other-namespaces-heading' --> 'Documentation'
-- 'start-box-linkclasses' --> 'mw-editsection-like plainlinks'
-- 'start-box-link-id' --> 'doc_editlinks'
-- 'testcases-create-link-display' --> 'create'
--]=]
local subjectSpace = env.subjectSpace
if not subjectSpace then
-- Default to an "other namespaces" namespace, so that we get at least some output
-- if an error occurs.
subjectSpace = 2
end
local data = {}
-- Heading
local heading = args.heading -- Blank values are not removed.
if heading == '' then
-- Don't display the start box if the heading arg is defined but blank.
return nil
end
if heading then
data.heading = heading
elseif subjectSpace == 10 then -- Template namespace
data.heading = i18n['template-namespace-heading']
elseif subjectSpace == 828 then -- Module namespace
data.heading = i18n['module-namespace-heading']
elseif subjectSpace == 6 then -- File namespace
data.heading = i18n['file-namespace-heading']
else
data.heading = i18n['other-namespaces-heading']
end
-- Data for the [view][edit][history][purge] or [create] links.
if links then
data.linksClass = message('start-box-linkclasses')
data.linksId = message('start-box-link-id')
data.links = links
end
return data
end
function p.renderStartBox(data)
-- Renders the start box html.
-- @data - a table of data generated by p.makeStartBoxData.
local sbox = mw.html.create('div')
sbox
:addClass(message('header-div-class'))
:tag('div')
:addClass(message('heading-div-class'))
:wikitext(data.heading)
local links = data.links
if links then
sbox
:tag('div')
:addClass(data.linksClass)
:attr('id', data.linksId)
:wikitext(links)
end
return tostring(sbox)
end
----------------------------------------------------------------------------
-- Documentation content
----------------------------------------------------------------------------
p.content = makeInvokeFunc('_content')
function p._content(args, env)
-- Displays the documentation contents
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
local content = args.content
if not content and docTitle and docTitle.exists then
content = args._content or mw.getCurrentFrame():expandTemplate{title = docTitle}
end
-- The line breaks below are necessary so that "=== Headings ===" at the start and end
-- of docs are interpreted correctly.
local cbox = mw.html.create('div')
cbox
:addClass(message('content-div-class'))
:wikitext('\n' .. (content or '') .. '\n')
return tostring(cbox)
end
p.contentTitle = makeInvokeFunc('_contentTitle')
function p._contentTitle(args, env)
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
if not args.content and docTitle and docTitle.exists then
return docTitle.prefixedText
else
return ''
end
end
----------------------------------------------------------------------------
-- End box
----------------------------------------------------------------------------
p.endBox = makeInvokeFunc('_endBox')
function p._endBox(args, env)
--[=[
-- This function generates the end box (also known as the link box).
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--]=]
-- Get environment data.
env = env or p.getEnvironment(args)
local subjectSpace = env.subjectSpace
local docTitle = env.docTitle
if not subjectSpace or not docTitle then
return nil
end
-- Check whether we should output the end box at all. Add the end
-- box by default if the documentation exists or if we are in the
-- user, module or template namespaces.
local linkBox = args['link box']
if linkBox == 'off'
or not (
docTitle.exists
or subjectSpace == 2
or subjectSpace == 828
or subjectSpace == 10
)
then
return nil
end
-- Assemble the footer text field.
local text = ''
if linkBox then
text = text .. linkBox
else
text = text .. (p.makeDocPageBlurb(args, env) or '') -- "This documentation is transcluded from [[Foo]]."
if subjectSpace == 2 or subjectSpace == 10 or subjectSpace == 828 then
-- We are in the user, template or module namespaces.
-- Add sandbox and testcases links.
-- "Editors can experiment in this template's sandbox and testcases pages."
text = text .. (p.makeExperimentBlurb(args, env) or '')
text = text .. '<br />'
if not args.content and not args[1] then
-- "Please add categories to the /doc subpage."
-- Don't show this message with inline docs or with an explicitly specified doc page,
-- as then it is unclear where to add the categories.
text = text .. (p.makeCategoriesBlurb(args, env) or '')
end
text = text .. ' ' .. (p.makeSubpagesBlurb(args, env) or '') --"Subpages of this template"
local printBlurb = p.makePrintBlurb(args, env) -- Two-line blurb about print versions of templates.
if printBlurb then
text = text .. '<br />' .. printBlurb
end
end
end
local ebox = mw.html.create('div')
ebox
:addClass(message('footer-div-class'))
:wikitext(text)
return tostring(ebox)
end
function p.makeDocPageBlurb(args, env)
--[=[
-- Makes the blurb "This documentation is transcluded from [[Template:Foo]] (edit, history)".
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'transcluded-from-blurb' -->
-- 'The above [[w:Wikipedia:Template documentation|documentation]]
-- is [[w:Wikipedia:Transclusion|transcluded]] from $1.'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'create-link-display' --> 'create'
-- 'create-module-doc-blurb' -->
-- 'You might want to $1 a documentation page for this [[w:Wikipedia:Lua|Scribunto module]].'
--]=]
local docTitle = env.docTitle
if not docTitle or args.content then
return nil
end
local ret
if docTitle.exists then
-- /doc exists; link to it.
local docLink = makeWikilink(docTitle.prefixedText)
local editUrl = docTitle:fullUrl{action = 'edit'}
local editDisplay = i18n['edit-link-display']
local editLink = makeUrlLink(editUrl, editDisplay)
local historyUrl = docTitle:fullUrl{action = 'history'}
local historyDisplay = i18n['history-link-display']
local historyLink = makeUrlLink(historyUrl, historyDisplay)
ret = message('transcluded-from-blurb', {docLink})
.. ' '
.. makeToolbar(editLink, historyLink)
.. '<br />'
elseif env.subjectSpace == 828 then
-- /doc does not exist; ask to create it.
local createUrl = docTitle:fullUrl{action = 'edit', preload = message('module-preload')}
local createDisplay = i18n['create-link-display']
local createLink = makeUrlLink(createUrl, createDisplay)
ret = message('create-module-doc-blurb', {createLink})
.. '<br />'
end
return ret
end
function p.makeExperimentBlurb(args, env)
--[[
-- Renders the text "Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-link-display' --> 'sandbox'
-- 'sandbox-edit-link-display' --> 'edit'
-- 'compare-link-display' --> 'diff'
-- 'module-sandbox-preload' --> 'Template:Documentation/preload-module-sandbox'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'sandbox-create-link-display' --> 'create'
-- 'mirror-edit-summary' --> 'Create sandbox version of $1'
-- 'mirror-link-display' --> 'mirror'
-- 'mirror-link-preload' --> 'Template:Documentation/mirror'
-- 'sandbox-link-display' --> 'sandbox'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display'--> 'edit'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'testcases-create-link-display' --> 'create'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display' --> 'edit'
-- 'module-testcases-preload' --> 'Template:Documentation/preload-module-testcases'
-- 'template-testcases-preload' --> 'Template:Documentation/preload-testcases'
-- 'experiment-blurb-module' --> 'Editors can experiment in this module's $1 and $2 pages.'
-- 'experiment-blurb-template' --> 'Editors can experiment in this template's $1 and $2 pages.'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
local testcasesTitle = env.testcasesTitle
local templatePage = templateTitle.prefixedText
if not subjectSpace or not templateTitle or not sandboxTitle or not testcasesTitle then
return nil
end
-- Make links.
local sandboxLinks, testcasesLinks
if sandboxTitle.exists then
local sandboxPage = sandboxTitle.prefixedText
local sandboxDisplay = message('sandbox-link-display')
local sandboxLink = makeWikilink(sandboxPage, sandboxDisplay)
local sandboxEditUrl = sandboxTitle:fullUrl{action = 'edit'}
local sandboxEditDisplay = message('sandbox-edit-link-display')
local sandboxEditLink = makeUrlLink(sandboxEditUrl, sandboxEditDisplay)
local compareUrl = env.compareUrl
local compareLink
if compareUrl then
local compareDisplay = message('compare-link-display')
compareLink = makeUrlLink(compareUrl, compareDisplay)
end
sandboxLinks = sandboxLink .. ' ' .. makeToolbar(sandboxEditLink, compareLink)
else
local sandboxPreload
if subjectSpace == 828 then
sandboxPreload = message('module-sandbox-preload')
else
sandboxPreload = message('template-sandbox-preload')
end
local sandboxCreateUrl = sandboxTitle:fullUrl{action = 'edit', preload = sandboxPreload}
local sandboxCreateDisplay = message('sandbox-create-link-display')
local sandboxCreateLink = makeUrlLink(sandboxCreateUrl, sandboxCreateDisplay)
local mirrorSummary = message('mirror-edit-summary', {makeWikilink(templatePage)})
local mirrorPreload = message('mirror-link-preload')
local mirrorUrl = sandboxTitle:fullUrl{action = 'edit', preload = mirrorPreload, summary = mirrorSummary}
local mirrorDisplay = message('mirror-link-display')
local mirrorLink = makeUrlLink(mirrorUrl, mirrorDisplay)
if subjectSpace == 828 then
mirrorUrl = sandboxTitle:fullUrl{action = 'edit', preload = templateTitle.prefixedText, summary = mirrorSummary}
end
sandboxLinks = message('sandbox-link-display') .. ' ' .. makeToolbar(sandboxCreateLink, mirrorLink)
end
if testcasesTitle.exists then
local testcasesPage = testcasesTitle.prefixedText
local testcasesDisplay = message('testcases-link-display')
local testcasesLink = makeWikilink(testcasesPage, testcasesDisplay)
local testcasesEditUrl = testcasesTitle:fullUrl{action = 'edit'}
local testcasesEditDisplay = message('testcases-edit-link-display')
local testcasesEditLink = makeUrlLink(testcasesEditUrl, testcasesEditDisplay)
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink)
else
local testcasesPreload
if subjectSpace == 828 then
testcasesPreload = message('module-testcases-preload')
else
testcasesPreload = message('template-testcases-preload')
end
local testcasesCreateUrl = testcasesTitle:fullUrl{action = 'edit', preload = testcasesPreload}
local testcasesCreateDisplay = message('testcases-create-link-display')
local testcasesCreateLink = makeUrlLink(testcasesCreateUrl, testcasesCreateDisplay)
testcasesLinks = message('testcases-link-display') .. ' ' .. makeToolbar(testcasesCreateLink)
end
local messageName
if subjectSpace == 828 then
messageName = 'experiment-blurb-module'
else
messageName = 'experiment-blurb-template'
end
return message(messageName, {sandboxLinks, testcasesLinks})
end
function p.makeCategoriesBlurb(args, env)
--[[
-- Generates the text "Please add categories to the /doc subpage."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'doc-link-display' --> '/doc'
-- 'add-categories-blurb' --> 'Please add categories to the $1 subpage.'
--]]
local docTitle = env.docTitle
if not docTitle then
return nil
end
local docPathLink = makeWikilink(docTitle.prefixedText, message('doc-link-display'))
return message('add-categories-blurb', {docPathLink})
end
function p.makeSubpagesBlurb(args, env)
--[[
-- Generates the "Subpages of this template" link.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'template-pagetype' --> 'template'
-- 'module-pagetype' --> 'module'
-- 'default-pagetype' --> 'page'
-- 'subpages-link-display' --> 'Subpages of this $1'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
if not subjectSpace or not templateTitle then
return nil
end
local pagetype
if subjectSpace == 10 then
pagetype = message('template-pagetype')
elseif subjectSpace == 828 then
pagetype = message('module-pagetype')
else
pagetype = message('default-pagetype')
end
local subpagesLink = makeWikilink(
'Special:PrefixIndex/' .. templateTitle.prefixedText .. '/',
message('subpages-link-display', {pagetype})
)
return message('subpages-blurb', {subpagesLink})
end
function p.makePrintBlurb(args, env)
--[=[
-- Generates the blurb displayed when there is a print version of the template available.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'print-link-display' --> '/Print'
-- 'print-blurb' --> 'A [[Help:Books/for experts#Improving the book layout|print version]]'
-- .. ' of this template exists at $1.'
-- .. ' If you make a change to this template, please update the print version as well.'
-- 'display-print-category' --> true
-- 'print-category' --> 'Templates with print versions'
--]=]
local printTitle = env.printTitle
if not printTitle then
return nil
end
local ret
if printTitle.exists then
local printLink = makeWikilink(printTitle.prefixedText, message('print-link-display'))
ret = message('print-blurb', {printLink})
local displayPrintCategory = message('display-print-category', nil, 'boolean')
if displayPrintCategory then
ret = ret .. makeCategoryLink(message('print-category'))
end
end
return ret
end
----------------------------------------------------------------------------
-- Tracking categories
----------------------------------------------------------------------------
function p.addTrackingCategories(env)
--[[
-- Check if {{documentation}} is transcluded on a /doc or /testcases page.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'display-strange-usage-category' --> true
-- 'doc-subpage' --> 'doc'
-- 'testcases-subpage' --> 'testcases'
-- 'strange-usage-category' --> 'Wikipedia pages with strange ((documentation)) usage'
--
-- /testcases pages in the module namespace are not categorised, as they may have
-- {{documentation}} transcluded automatically.
--]]
local title = env.title
local subjectSpace = env.subjectSpace
if not title or not subjectSpace then
return nil
end
local subpage = title.subpageText
local ret = ''
if message('display-strange-usage-category', nil, 'boolean')
and (
subpage == message('doc-subpage')
or subjectSpace ~= 828 and subpage == message('testcases-subpage')
)
then
ret = ret .. makeCategoryLink(message('strange-usage-category'))
end
return ret
end
return p
3pvb1w3yfyy7pn1nzqizw3nbekyi5dq
370387
370386
2026-09-28T08:07:29Z
ChiK
1136
1 revision imported from [[:meta:Module:Documentation]]
370386
Scribunto
text/plain
-- This module implements {{documentation}}.
-- Get required modules.
local getArgs = require('Module:Arguments').getArgs
local messageBox = require('Module:Message box')
-- Get the config table.
local cfg = mw.loadData('Module:Documentation/config')
local i18n = mw.loadData('Module:Documentation/i18n')
local p = {}
-- Often-used functions.
local ugsub = mw.ustring.gsub
----------------------------------------------------------------------------
-- Helper functions
--
-- These are defined as local functions, but are made available in the p
-- table for testing purposes.
----------------------------------------------------------------------------
local function message(cfgKey, valArray, expectType)
--[[
-- Gets a message from the cfg table and formats it if appropriate.
-- The function raises an error if the value from the cfg table is not
-- of the type expectType. The default type for expectType is 'string'.
-- If the table valArray is present, strings such as $1, $2 etc. in the
-- message are substituted with values from the table keys [1], [2] etc.
-- For example, if the message "foo-message" had the value 'Foo $2 bar $1.',
-- message('foo-message', {'baz', 'qux'}) would return "Foo qux bar baz."
--]]
local msg = cfg[cfgKey]
expectType = expectType or 'string'
if type(msg) ~= expectType then
error(require('Module:TNT').format('I18n/Documentation', 'cfg-error-msg-type', cfgKey, expectType, type(msg)), 2)
end
if not valArray then
return msg
end
local function getMessageVal(match)
match = tonumber(match)
return valArray[match] or error(require('Module:TNT').format('I18n/Documentation', 'cfg-error-msg-empty', '$' .. match, cfgKey), 4)
end
local ret = ugsub(msg, '$([1-9][0-9]*)', getMessageVal)
return ret
end
p.message = message
local function makeWikilink(page, display)
if display then
return mw.ustring.format('[[%s|%s]]', page, display)
else
return mw.ustring.format('[[%s]]', page)
end
end
p.makeWikilink = makeWikilink
local function makeCategoryLink(cat, sort)
local catns = mw.site.namespaces[14].name
return makeWikilink(catns .. ':' .. cat, sort)
end
p.makeCategoryLink = makeCategoryLink
local function makeUrlLink(url, display)
return mw.ustring.format('[%s %s]', url, display)
end
p.makeUrlLink = makeUrlLink
local function makeToolbar(...)
local ret = {}
local lim = select('#', ...)
if lim < 1 then
return nil
end
for i = 1, lim do
ret[#ret + 1] = select(i, ...)
end
return '<small>(' .. table.concat(ret, ' | ') .. ')</small>'
end
p.makeToolbar = makeToolbar
----------------------------------------------------------------------------
-- Argument processing
----------------------------------------------------------------------------
local function makeInvokeFunc(funcName)
return function (frame)
local args = getArgs(frame, {
valueFunc = function (key, value)
if type(value) == 'string' then
value = value:match('^%s*(.-)%s*$') -- Remove whitespace.
if key == 'heading' or value ~= '' then
return value
else
return nil
end
else
return value
end
end
})
return p[funcName](args)
end
end
----------------------------------------------------------------------------
-- Load TemplateStyles
----------------------------------------------------------------------------
p.main = function(frame)
local parent = frame.getParent(frame)
local output = p._main(parent.args)
return frame:extensionTag{ name='templatestyles', args = { src= message('templatestyles-scr') } } .. output
end
----------------------------------------------------------------------------
-- Main function
----------------------------------------------------------------------------
function p._main(args)
--[[
-- This function defines logic flow for the module.
-- @args - table of arguments passed by the user
--
-- Messages:
-- 'main-div-id' --> 'template-documentation'
-- 'main-div-classes' --> 'template-documentation iezoomfix'
--]]
local env = p.getEnvironment(args)
local root = mw.html.create()
root
:wikitext(p._getModuleWikitext(args, env))
:wikitext(p.protectionTemplate(env))
:wikitext(p.sandboxNotice(args, env))
-- This div tag is from {{documentation/start box}}, but moving it here
-- so that we don't have to worry about unclosed tags.
:tag('div')
:attr('id', message('main-div-id'))
:addClass(message('main-div-class'))
:wikitext(p._startBox(args, env))
:wikitext(p._content(args, env))
:done()
:wikitext(p._endBox(args, env))
:wikitext(p.addTrackingCategories(env))
return tostring(root)
end
----------------------------------------------------------------------------
-- Environment settings
----------------------------------------------------------------------------
function p.getEnvironment(args)
--[[
-- Returns a table with information about the environment, including title objects and other namespace- or
-- path-related data.
-- @args - table of arguments passed by the user
--
-- Title objects include:
-- env.title - the page we are making documentation for (usually the current title)
-- env.templateTitle - the template (or module, file, etc.)
-- env.docTitle - the /doc subpage.
-- env.sandboxTitle - the /sandbox subpage.
-- env.testcasesTitle - the /testcases subpage.
-- env.printTitle - the print version of the template, located at the /Print subpage.
--
-- Data includes:
-- env.protectionLevels - the protection levels table of the title object.
-- env.subjectSpace - the number of the title's subject namespace.
-- env.docSpace - the number of the namespace the title puts its documentation in.
-- env.docpageBase - the text of the base page of the /doc, /sandbox and /testcases pages, with namespace.
-- env.compareUrl - URL of the Special:ComparePages page comparing the sandbox with the template.
--
-- All table lookups are passed through pcall so that errors are caught. If an error occurs, the value
-- returned will be nil.
--]]
local env, envFuncs = {}, {}
-- Set up the metatable. If triggered we call the corresponding function in the envFuncs table. The value
-- returned by that function is memoized in the env table so that we don't call any of the functions
-- more than once. (Nils won't be memoized.)
setmetatable(env, {
__index = function (t, key)
local envFunc = envFuncs[key]
if envFunc then
local success, val = pcall(envFunc)
if success then
env[key] = val -- Memoise the value.
return val
end
end
return nil
end
})
function envFuncs.title()
-- The title object for the current page, or a test page passed with args.page.
local title
local titleArg = args.page
if titleArg then
title = mw.title.new(titleArg)
else
title = mw.title.getCurrentTitle()
end
return title
end
function envFuncs.templateTitle()
--[[
-- The template (or module, etc.) title object.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
-- 'testcases-subpage' --> 'testcases'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local subpage = title.subpageText
if subpage == message('sandbox-subpage') or subpage == message('testcases-subpage') then
return mw.title.makeTitle(subjectSpace, title.baseText)
else
return mw.title.makeTitle(subjectSpace, title.text)
end
end
function envFuncs.docTitle()
--[[
-- Title object of the /doc subpage.
-- Messages:
-- 'doc-subpage' --> 'doc'
--]]
local title = env.title
local docname = args[1] -- User-specified doc page.
local docpage
if docname then
docpage = docname
else
docpage = env.docpageBase .. '/' .. message('doc-subpage')
end
return mw.title.new(docpage)
end
function envFuncs.sandboxTitle()
--[[
-- Title object for the /sandbox subpage.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('sandbox-subpage'))
end
function envFuncs.testcasesTitle()
--[[
-- Title object for the /testcases subpage.
-- Messages:
-- 'testcases-subpage' --> 'testcases'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('testcases-subpage'))
end
function envFuncs.printTitle()
--[[
-- Title object for the /Print subpage.
-- Messages:
-- 'print-subpage' --> 'Print'
--]]
return env.templateTitle:subPageTitle(message('print-subpage'))
end
function envFuncs.protectionLevels()
-- The protection levels table of the title object.
return env.title.protectionLevels
end
function envFuncs.subjectSpace()
-- The subject namespace number.
return mw.site.namespaces[env.title.namespace].subject.id
end
function envFuncs.docSpace()
-- The documentation namespace number. For most namespaces this is the same as the
-- subject namespace. However, pages in the Article, File, MediaWiki or Category
-- namespaces must have their /doc, /sandbox and /testcases pages in talk space.
local subjectSpace = env.subjectSpace
if subjectSpace == 0 or subjectSpace == 6 or subjectSpace == 8 or subjectSpace == 14 then
return subjectSpace + 1
else
return subjectSpace
end
end
function envFuncs.docpageBase()
-- The base page of the /doc, /sandbox, and /testcases subpages.
-- For some namespaces this is the talk page, rather than the template page.
local templateTitle = env.templateTitle
local docSpace = env.docSpace
local docSpaceText = mw.site.namespaces[docSpace].name
-- Assemble the link. docSpace is never the main namespace, so we can hardcode the colon.
return docSpaceText .. ':' .. templateTitle.text
end
function envFuncs.compareUrl()
-- Diff link between the sandbox and the main template using [[Special:ComparePages]].
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
if templateTitle.exists and sandboxTitle.exists then
local compareUrl = mw.uri.fullUrl(
'Special:ComparePages',
{page1 = templateTitle.prefixedText, page2 = sandboxTitle.prefixedText}
)
return tostring(compareUrl)
else
return nil
end
end
return env
end
----------------------------------------------------------------------------
-- Auxiliary templates
----------------------------------------------------------------------------
p.getModuleWikitext = makeInvokeFunc('_getModuleWikitext')
function p._getModuleWikitext(args, env)
local currentTitle = mw.title.getCurrentTitle()
if currentTitle.contentModel ~= 'Scribunto' then return end
pcall(require, currentTitle.prefixedText) -- if it fails, we don't care
local moduleWikitext = package.loaded["Module:Module wikitext"]
if moduleWikitext then
return moduleWikitext.main()
end
end
function p.sandboxNotice(args, env)
--[=[
-- Generates a sandbox notice for display above sandbox pages.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-notice-image' --> '[[Image:Sandbox.svg|50px|alt=|link=]]'
-- 'sandbox-notice-blurb' --> 'This is the $1 for $2.'
-- 'sandbox-notice-diff-blurb' --> 'This is the $1 for $2 ($3).'
-- 'sandbox-notice-pagetype-template' --> '[[w:Wikipedia:Template test cases|template sandbox]] page'
-- 'sandbox-notice-pagetype-module' --> '[[w:Wikipedia:Template test cases|module sandbox]] page'
-- 'sandbox-notice-pagetype-other' --> 'sandbox page'
-- 'sandbox-notice-compare-link-display' --> 'diff'
-- 'sandbox-notice-testcases-blurb' --> 'See also the companion subpage for $1.'
-- 'sandbox-notice-testcases-link-display' --> 'test cases'
-- 'sandbox-category' --> 'Template sandboxes'
--]=]
local title = env.title
local sandboxTitle = env.sandboxTitle
local templateTitle = env.templateTitle
local subjectSpace = env.subjectSpace
if not (subjectSpace and title and sandboxTitle and templateTitle and mw.title.equals(title, sandboxTitle)) then
return nil
end
-- Build the table of arguments to pass to {{ombox}}. We need just two fields, "image" and "text".
local omargs = {}
omargs.image = message('sandbox-notice-image')
-- Get the text. We start with the opening blurb, which is something like
-- "This is the template sandbox for [[Template:Foo]] (diff)."
local text = ''
local frame = mw.getCurrentFrame()
local isPreviewing = frame:preprocess('{{REVISIONID}}') == '' -- True if the page is being previewed.
local pagetype
if subjectSpace == 10 then
pagetype = message('sandbox-notice-pagetype-template')
elseif subjectSpace == 828 then
pagetype = message('sandbox-notice-pagetype-module')
else
pagetype = message('sandbox-notice-pagetype-other')
end
local templateLink = makeWikilink(templateTitle.prefixedText)
local compareUrl = env.compareUrl
if isPreviewing or not compareUrl then
text = text .. message('sandbox-notice-blurb', {pagetype, templateLink})
else
local compareDisplay = message('sandbox-notice-compare-link-display')
local compareLink = makeUrlLink(compareUrl, compareDisplay)
text = text .. message('sandbox-notice-diff-blurb', {pagetype, templateLink, compareLink})
end
-- Get the test cases page blurb if the page exists. This is something like
-- "See also the companion subpage for [[Template:Foo/testcases|test cases]]."
local testcasesTitle = env.testcasesTitle
if testcasesTitle and testcasesTitle.exists then
if testcasesTitle.contentModel == "Scribunto" then
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesRunLinkDisplay = message('sandbox-notice-testcases-run-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-run-blurb', {testcasesLink, testcasesRunLink})
else
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-blurb', {testcasesLink})
end
end
-- Add the sandbox to the sandbox category.
text = text .. makeCategoryLink(message('sandbox-category'))
omargs.text = text
omargs.class = message('sandbox-class')
return messageBox.main('ombox', omargs)
end
function p.protectionTemplate(env)
-- Generates the padlock icon in the top right.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'protection-template' --> 'pp-template'
-- 'protection-template-args' --> {docusage = 'yes'}
local title = env.title
local protectionLevels
local protectionTemplate = message('protection-template')
local namespace = title.namespace
if not (protectionTemplate and (namespace == 10 or namespace == 828)) then
-- Don't display the protection template if we are not in the template or module namespaces.
return nil
end
protectionLevels = env.protectionLevels
if not protectionLevels then
return nil
end
local editLevels = protectionLevels.edit
local moveLevels = protectionLevels.move
if moveLevels and moveLevels[1] == 'sysop' or editLevels and editLevels[1] then
-- The page is full-move protected, or full, template, or semi-protected.
local frame = mw.getCurrentFrame()
return frame:expandTemplate{title = protectionTemplate, args = message('protection-template-args', nil, 'table')}
else
return nil
end
end
----------------------------------------------------------------------------
-- Start box
----------------------------------------------------------------------------
p.startBox = makeInvokeFunc('_startBox')
function p._startBox(args, env)
--[[
-- This function generates the start box.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- The actual work is done by p.makeStartBoxLinksData and p.renderStartBoxLinks which make
-- the [view] [edit] [history] [purge] links, and by p.makeStartBoxData and p.renderStartBox
-- which generate the box HTML.
--]]
env = env or p.getEnvironment(args)
local links
local content = args.content
if not content then
-- No need to include the links if the documentation is on the template page itself.
local linksData = p.makeStartBoxLinksData(args, env)
if linksData then
links = p.renderStartBoxLinks(linksData)
end
end
-- Generate the start box html.
local data = p.makeStartBoxData(args, env, links)
if data then
return p.renderStartBox(data)
else
-- User specified no heading.
return nil
end
end
function p.makeStartBoxLinksData(args, env)
--[[
-- Does initial processing of data to make the [view] [edit] [history] [purge] links.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'view-link-display' --> 'view'
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'purge-link-display' --> 'purge'
-- 'file-docpage-preload' --> 'Template:Documentation/preload-filespace'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'docpage-preload' --> 'Template:Documentation/preload'
-- 'create-link-display' --> 'create'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local docTitle = env.docTitle
if not title or not docTitle then
return nil
end
if docTitle.isRedirect then
docTitle = docTitle.redirectTarget
end
local data = {}
data.title = title
data.docTitle = docTitle
-- View, display, edit, and purge links if /doc exists.
data.viewLinkDisplay = i18n['view-link-display']
data.editLinkDisplay = i18n['edit-link-display']
data.historyLinkDisplay = i18n['history-link-display']
data.purgeLinkDisplay = i18n['purge-link-display']
-- Create link if /doc doesn't exist.
local preload = args.preload
if not preload then
if subjectSpace == 6 then -- File namespace
preload = message('file-docpage-preload')
elseif subjectSpace == 828 then -- Module namespace
preload = message('module-preload')
else
preload = message('docpage-preload')
end
end
data.preload = preload
data.createLinkDisplay = i18n['create-link-display']
return data
end
function p.renderStartBoxLinks(data)
--[[
-- Generates the [view][edit][history][purge] or [create] links from the data table.
-- @data - a table of data generated by p.makeStartBoxLinksData
--]]
local ret
local docTitle = data.docTitle
local title = data.title
if docTitle.exists then
local viewLink = makeWikilink(docTitle.prefixedText, data.viewLinkDisplay)
local editLink = makeUrlLink(docTitle:fullUrl{action = 'edit'}, data.editLinkDisplay)
local historyLink = makeUrlLink(docTitle:fullUrl{action = 'history'}, data.historyLinkDisplay)
local purgeLink = makeUrlLink(title:fullUrl{action = 'purge'}, data.purgeLinkDisplay)
ret = '%s%s%s%s'
ret = mw.ustring.format(ret, viewLink, editLink, historyLink, purgeLink)
else
local createLink = makeUrlLink(docTitle:fullUrl{action = 'edit', preload = data.preload}, data.createLinkDisplay)
ret = '%s'
ret = mw.ustring.format(ret, createLink)
end
return ret
end
function p.makeStartBoxData(args, env, links)
--[=[
-- Does initial processing of data to pass to the start-box render function, p.renderStartBox.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- @links - a string containing the [view][edit][history][purge] links - could be nil if there's an error.
--
-- Messages:
-- 'documentation-icon-wikitext' --> '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=Documentation icon]]'
-- 'template-namespace-heading' --> 'Template documentation'
-- 'module-namespace-heading' --> 'Module documentation'
-- 'file-namespace-heading' --> 'Summary'
-- 'other-namespaces-heading' --> 'Documentation'
-- 'start-box-linkclasses' --> 'mw-editsection-like plainlinks'
-- 'start-box-link-id' --> 'doc_editlinks'
-- 'testcases-create-link-display' --> 'create'
--]=]
local subjectSpace = env.subjectSpace
if not subjectSpace then
-- Default to an "other namespaces" namespace, so that we get at least some output
-- if an error occurs.
subjectSpace = 2
end
local data = {}
-- Heading
local heading = args.heading -- Blank values are not removed.
if heading == '' then
-- Don't display the start box if the heading arg is defined but blank.
return nil
end
if heading then
data.heading = heading
elseif subjectSpace == 10 then -- Template namespace
data.heading = i18n['template-namespace-heading']
elseif subjectSpace == 828 then -- Module namespace
data.heading = i18n['module-namespace-heading']
elseif subjectSpace == 6 then -- File namespace
data.heading = i18n['file-namespace-heading']
else
data.heading = i18n['other-namespaces-heading']
end
-- Data for the [view][edit][history][purge] or [create] links.
if links then
data.linksClass = message('start-box-linkclasses')
data.linksId = message('start-box-link-id')
data.links = links
end
return data
end
function p.renderStartBox(data)
-- Renders the start box html.
-- @data - a table of data generated by p.makeStartBoxData.
local sbox = mw.html.create('div')
sbox
:addClass(message('header-div-class'))
:tag('div')
:addClass(message('heading-div-class'))
:wikitext(data.heading)
local links = data.links
if links then
sbox
:tag('div')
:addClass(data.linksClass)
:attr('id', data.linksId)
:wikitext(links)
end
return tostring(sbox)
end
----------------------------------------------------------------------------
-- Documentation content
----------------------------------------------------------------------------
p.content = makeInvokeFunc('_content')
function p._content(args, env)
-- Displays the documentation contents
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
local content = args.content
if not content and docTitle and docTitle.exists then
content = args._content or mw.getCurrentFrame():expandTemplate{title = docTitle}
end
-- The line breaks below are necessary so that "=== Headings ===" at the start and end
-- of docs are interpreted correctly.
local cbox = mw.html.create('div')
cbox
:addClass(message('content-div-class'))
:wikitext('\n' .. (content or '') .. '\n')
return tostring(cbox)
end
p.contentTitle = makeInvokeFunc('_contentTitle')
function p._contentTitle(args, env)
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
if not args.content and docTitle and docTitle.exists then
return docTitle.prefixedText
else
return ''
end
end
----------------------------------------------------------------------------
-- End box
----------------------------------------------------------------------------
p.endBox = makeInvokeFunc('_endBox')
function p._endBox(args, env)
--[=[
-- This function generates the end box (also known as the link box).
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--]=]
-- Get environment data.
env = env or p.getEnvironment(args)
local subjectSpace = env.subjectSpace
local docTitle = env.docTitle
if not subjectSpace or not docTitle then
return nil
end
-- Check whether we should output the end box at all. Add the end
-- box by default if the documentation exists or if we are in the
-- user, module or template namespaces.
local linkBox = args['link box']
if linkBox == 'off'
or not (
docTitle.exists
or subjectSpace == 2
or subjectSpace == 828
or subjectSpace == 10
)
then
return nil
end
-- Assemble the footer text field.
local text = ''
if linkBox then
text = text .. linkBox
else
text = text .. (p.makeDocPageBlurb(args, env) or '') -- "This documentation is transcluded from [[Foo]]."
if subjectSpace == 2 or subjectSpace == 10 or subjectSpace == 828 then
-- We are in the user, template or module namespaces.
-- Add sandbox and testcases links.
-- "Editors can experiment in this template's sandbox and testcases pages."
text = text .. (p.makeExperimentBlurb(args, env) or '')
text = text .. '<br />'
if not args.content and not args[1] then
-- "Please add categories to the /doc subpage."
-- Don't show this message with inline docs or with an explicitly specified doc page,
-- as then it is unclear where to add the categories.
text = text .. (p.makeCategoriesBlurb(args, env) or '')
end
text = text .. ' ' .. (p.makeSubpagesBlurb(args, env) or '') --"Subpages of this template"
local printBlurb = p.makePrintBlurb(args, env) -- Two-line blurb about print versions of templates.
if printBlurb then
text = text .. '<br />' .. printBlurb
end
end
end
local ebox = mw.html.create('div')
ebox
:addClass(message('footer-div-class'))
:wikitext(text)
return tostring(ebox)
end
function p.makeDocPageBlurb(args, env)
--[=[
-- Makes the blurb "This documentation is transcluded from [[Template:Foo]] (edit, history)".
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'transcluded-from-blurb' -->
-- 'The above [[w:Wikipedia:Template documentation|documentation]]
-- is [[w:Wikipedia:Transclusion|transcluded]] from $1.'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'create-link-display' --> 'create'
-- 'create-module-doc-blurb' -->
-- 'You might want to $1 a documentation page for this [[w:Wikipedia:Lua|Scribunto module]].'
--]=]
local docTitle = env.docTitle
if not docTitle or args.content then
return nil
end
local ret
if docTitle.exists then
-- /doc exists; link to it.
local docLink = makeWikilink(docTitle.prefixedText)
local editUrl = docTitle:fullUrl{action = 'edit'}
local editDisplay = i18n['edit-link-display']
local editLink = makeUrlLink(editUrl, editDisplay)
local historyUrl = docTitle:fullUrl{action = 'history'}
local historyDisplay = i18n['history-link-display']
local historyLink = makeUrlLink(historyUrl, historyDisplay)
ret = message('transcluded-from-blurb', {docLink})
.. ' '
.. makeToolbar(editLink, historyLink)
.. '<br />'
elseif env.subjectSpace == 828 then
-- /doc does not exist; ask to create it.
local createUrl = docTitle:fullUrl{action = 'edit', preload = message('module-preload')}
local createDisplay = i18n['create-link-display']
local createLink = makeUrlLink(createUrl, createDisplay)
ret = message('create-module-doc-blurb', {createLink})
.. '<br />'
end
return ret
end
function p.makeExperimentBlurb(args, env)
--[[
-- Renders the text "Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-link-display' --> 'sandbox'
-- 'sandbox-edit-link-display' --> 'edit'
-- 'compare-link-display' --> 'diff'
-- 'module-sandbox-preload' --> 'Template:Documentation/preload-module-sandbox'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'sandbox-create-link-display' --> 'create'
-- 'mirror-edit-summary' --> 'Create sandbox version of $1'
-- 'mirror-link-display' --> 'mirror'
-- 'mirror-link-preload' --> 'Template:Documentation/mirror'
-- 'sandbox-link-display' --> 'sandbox'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display'--> 'edit'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'testcases-create-link-display' --> 'create'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display' --> 'edit'
-- 'module-testcases-preload' --> 'Template:Documentation/preload-module-testcases'
-- 'template-testcases-preload' --> 'Template:Documentation/preload-testcases'
-- 'experiment-blurb-module' --> 'Editors can experiment in this module's $1 and $2 pages.'
-- 'experiment-blurb-template' --> 'Editors can experiment in this template's $1 and $2 pages.'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
local testcasesTitle = env.testcasesTitle
local templatePage = templateTitle.prefixedText
if not subjectSpace or not templateTitle or not sandboxTitle or not testcasesTitle then
return nil
end
-- Make links.
local sandboxLinks, testcasesLinks
if sandboxTitle.exists then
local sandboxPage = sandboxTitle.prefixedText
local sandboxDisplay = message('sandbox-link-display')
local sandboxLink = makeWikilink(sandboxPage, sandboxDisplay)
local sandboxEditUrl = sandboxTitle:fullUrl{action = 'edit'}
local sandboxEditDisplay = message('sandbox-edit-link-display')
local sandboxEditLink = makeUrlLink(sandboxEditUrl, sandboxEditDisplay)
local compareUrl = env.compareUrl
local compareLink
if compareUrl then
local compareDisplay = message('compare-link-display')
compareLink = makeUrlLink(compareUrl, compareDisplay)
end
sandboxLinks = sandboxLink .. ' ' .. makeToolbar(sandboxEditLink, compareLink)
else
local sandboxPreload
if subjectSpace == 828 then
sandboxPreload = message('module-sandbox-preload')
else
sandboxPreload = message('template-sandbox-preload')
end
local sandboxCreateUrl = sandboxTitle:fullUrl{action = 'edit', preload = sandboxPreload}
local sandboxCreateDisplay = message('sandbox-create-link-display')
local sandboxCreateLink = makeUrlLink(sandboxCreateUrl, sandboxCreateDisplay)
local mirrorSummary = message('mirror-edit-summary', {makeWikilink(templatePage)})
local mirrorPreload = message('mirror-link-preload')
local mirrorUrl = sandboxTitle:fullUrl{action = 'edit', preload = mirrorPreload, summary = mirrorSummary}
local mirrorDisplay = message('mirror-link-display')
local mirrorLink = makeUrlLink(mirrorUrl, mirrorDisplay)
if subjectSpace == 828 then
mirrorUrl = sandboxTitle:fullUrl{action = 'edit', preload = templateTitle.prefixedText, summary = mirrorSummary}
end
sandboxLinks = message('sandbox-link-display') .. ' ' .. makeToolbar(sandboxCreateLink, mirrorLink)
end
if testcasesTitle.exists then
local testcasesPage = testcasesTitle.prefixedText
local testcasesDisplay = message('testcases-link-display')
local testcasesLink = makeWikilink(testcasesPage, testcasesDisplay)
local testcasesEditUrl = testcasesTitle:fullUrl{action = 'edit'}
local testcasesEditDisplay = message('testcases-edit-link-display')
local testcasesEditLink = makeUrlLink(testcasesEditUrl, testcasesEditDisplay)
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink)
else
local testcasesPreload
if subjectSpace == 828 then
testcasesPreload = message('module-testcases-preload')
else
testcasesPreload = message('template-testcases-preload')
end
local testcasesCreateUrl = testcasesTitle:fullUrl{action = 'edit', preload = testcasesPreload}
local testcasesCreateDisplay = message('testcases-create-link-display')
local testcasesCreateLink = makeUrlLink(testcasesCreateUrl, testcasesCreateDisplay)
testcasesLinks = message('testcases-link-display') .. ' ' .. makeToolbar(testcasesCreateLink)
end
local messageName
if subjectSpace == 828 then
messageName = 'experiment-blurb-module'
else
messageName = 'experiment-blurb-template'
end
return message(messageName, {sandboxLinks, testcasesLinks})
end
function p.makeCategoriesBlurb(args, env)
--[[
-- Generates the text "Please add categories to the /doc subpage."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'doc-link-display' --> '/doc'
-- 'add-categories-blurb' --> 'Please add categories to the $1 subpage.'
--]]
local docTitle = env.docTitle
if not docTitle then
return nil
end
local docPathLink = makeWikilink(docTitle.prefixedText, message('doc-link-display'))
return message('add-categories-blurb', {docPathLink})
end
function p.makeSubpagesBlurb(args, env)
--[[
-- Generates the "Subpages of this template" link.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'template-pagetype' --> 'template'
-- 'module-pagetype' --> 'module'
-- 'default-pagetype' --> 'page'
-- 'subpages-link-display' --> 'Subpages of this $1'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
if not subjectSpace or not templateTitle then
return nil
end
local pagetype
if subjectSpace == 10 then
pagetype = message('template-pagetype')
elseif subjectSpace == 828 then
pagetype = message('module-pagetype')
else
pagetype = message('default-pagetype')
end
local subpagesLink = makeWikilink(
'Special:PrefixIndex/' .. templateTitle.prefixedText .. '/',
message('subpages-link-display', {pagetype})
)
return message('subpages-blurb', {subpagesLink})
end
function p.makePrintBlurb(args, env)
--[=[
-- Generates the blurb displayed when there is a print version of the template available.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'print-link-display' --> '/Print'
-- 'print-blurb' --> 'A [[Help:Books/for experts#Improving the book layout|print version]]'
-- .. ' of this template exists at $1.'
-- .. ' If you make a change to this template, please update the print version as well.'
-- 'display-print-category' --> true
-- 'print-category' --> 'Templates with print versions'
--]=]
local printTitle = env.printTitle
if not printTitle then
return nil
end
local ret
if printTitle.exists then
local printLink = makeWikilink(printTitle.prefixedText, message('print-link-display'))
ret = message('print-blurb', {printLink})
local displayPrintCategory = message('display-print-category', nil, 'boolean')
if displayPrintCategory then
ret = ret .. makeCategoryLink(message('print-category'))
end
end
return ret
end
----------------------------------------------------------------------------
-- Tracking categories
----------------------------------------------------------------------------
function p.addTrackingCategories(env)
--[[
-- Check if {{documentation}} is transcluded on a /doc or /testcases page.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'display-strange-usage-category' --> true
-- 'doc-subpage' --> 'doc'
-- 'testcases-subpage' --> 'testcases'
-- 'strange-usage-category' --> 'Wikipedia pages with strange ((documentation)) usage'
--
-- /testcases pages in the module namespace are not categorised, as they may have
-- {{documentation}} transcluded automatically.
--]]
local title = env.title
local subjectSpace = env.subjectSpace
if not title or not subjectSpace then
return nil
end
local subpage = title.subpageText
local ret = ''
if message('display-strange-usage-category', nil, 'boolean')
and (
subpage == message('doc-subpage')
or subjectSpace ~= 828 and subpage == message('testcases-subpage')
)
then
ret = ret .. makeCategoryLink(message('strange-usage-category'))
end
return ret
end
return p
3pvb1w3yfyy7pn1nzqizw3nbekyi5dq
370416
370387
2026-09-28T08:18:39Z
ChiK
1136
370416
Scribunto
text/plain
-- This module implements {{documentation}}.
-- Get required modules.
local getArgs = require('Module:Arguments').getArgs
-- Get the config table.
local cfg = mw.loadData('Module:Documentation/config')
local p = {}
-- Often-used functions.
local ugsub = mw.ustring.gsub
local format = mw.ustring.format
----------------------------------------------------------------------------
-- Helper functions
--
-- These are defined as local functions, but are made available in the p
-- table for testing purposes.
----------------------------------------------------------------------------
local function message(cfgKey, valArray, expectType)
--[[
-- Gets a message from the cfg table and formats it if appropriate.
-- The function raises an error if the value from the cfg table is not
-- of the type expectType. The default type for expectType is 'string'.
-- If the table valArray is present, strings such as $1, $2 etc. in the
-- message are substituted with values from the table keys [1], [2] etc.
-- For example, if the message "foo-message" had the value 'Foo $2 bar $1.',
-- message('foo-message', {'baz', 'qux'}) would return "Foo qux bar baz."
--]]
local msg = cfg[cfgKey]
expectType = expectType or 'string'
if type(msg) ~= expectType then
error('message: type error in message cfg.' .. cfgKey .. ' (' .. expectType .. ' expected, got ' .. type(msg) .. ')', 2)
end
if not valArray then
return msg
end
local function getMessageVal(match)
match = tonumber(match)
return valArray[match] or error('message: no value found for key $' .. match .. ' in message cfg.' .. cfgKey, 4)
end
return ugsub(msg, '$([1-9][0-9]*)', getMessageVal)
end
p.message = message
local function makeWikilink(page, display)
if display then
return format('[[%s|%s]]', page, display)
else
return format('[[%s]]', page)
end
end
p.makeWikilink = makeWikilink
local function makeCategoryLink(cat, sort)
local catns = mw.site.namespaces[14].name
return makeWikilink(catns .. ':' .. cat, sort)
end
p.makeCategoryLink = makeCategoryLink
local function makeUrlLink(url, display)
return format('[%s %s]', url, display)
end
p.makeUrlLink = makeUrlLink
local function makeToolbar(...)
local ret = {}
local lim = select('#', ...)
if lim < 1 then
return nil
end
for i = 1, lim do
ret[#ret + 1] = select(i, ...)
end
-- 'documentation-toolbar'
return format(
'<span class="%s">(%s)</span>',
message('toolbar-class'),
table.concat(ret, ' | ')
)
end
p.makeToolbar = makeToolbar
----------------------------------------------------------------------------
-- Argument processing
----------------------------------------------------------------------------
local function makeInvokeFunc(funcName)
return function (frame)
local args = getArgs(frame, {
valueFunc = function (key, value)
if type(value) == 'string' then
value = value:match('^%s*(.-)%s*$') -- Remove whitespace.
if key == 'heading' or value ~= '' then
return value
else
return nil
end
else
return value
end
end
})
return p[funcName](args)
end
end
----------------------------------------------------------------------------
-- Entry points
----------------------------------------------------------------------------
function p.nonexistent(frame)
if mw.title.getCurrentTitle().subpageText == 'testcases' then
return frame:expandTemplate{title = 'module test cases notice'}
else
return p.main(frame)
end
end
p.main = makeInvokeFunc('_main')
function p._main(args)
--[[
-- This function defines logic flow for the module.
-- @args - table of arguments passed by the user
--]]
local env = p.getEnvironment(args)
local root = mw.html.create()
root
:wikitext(p._getModuleWikitext(args, env))
:wikitext(p.protectionTemplate(env))
:wikitext(p.sandboxNotice(args, env))
:tag('div')
-- 'documentation-container'
:addClass(message('container'))
:attr('role', 'complementary')
:attr('aria-labelledby', args.heading ~= '' and 'documentation-heading' or nil)
:attr('aria-label', args.heading == '' and 'Documentation' or nil)
:newline()
:tag('div')
-- 'documentation'
:addClass(message('main-div-classes'))
:newline()
:wikitext(p._startBox(args, env))
:wikitext(p._content(args, env))
:tag('div')
-- 'documentation-clear'
:addClass(message('clear'))
:done()
:newline()
:done()
:wikitext(p._endBox(args, env))
:done()
:wikitext(p.addTrackingCategories(env))
-- 'Module:Documentation/styles.css'
return mw.getCurrentFrame():extensionTag (
'templatestyles', '', {src=cfg['templatestyles']
}) .. tostring(root)
end
----------------------------------------------------------------------------
-- Environment settings
----------------------------------------------------------------------------
function p.getEnvironment(args)
--[[
-- Returns a table with information about the environment, including title
-- objects and other namespace- or path-related data.
-- @args - table of arguments passed by the user
--
-- Title objects include:
-- env.title - the page we are making documentation for (usually the current title)
-- env.templateTitle - the template (or module, file, etc.)
-- env.docTitle - the /doc subpage.
-- env.sandboxTitle - the /sandbox subpage.
-- env.testcasesTitle - the /testcases subpage.
--
-- Data includes:
-- env.protectionLevels - the protection levels table of the title object.
-- env.subjectSpace - the number of the title's subject namespace.
-- env.docSpace - the number of the namespace the title puts its documentation in.
-- env.docpageBase - the text of the base page of the /doc, /sandbox and /testcases pages, with namespace.
-- env.compareUrl - URL of the Special:ComparePages page comparing the sandbox with the template.
--
-- All table lookups are passed through pcall so that errors are caught. If an error occurs, the value
-- returned will be nil.
--]]
local env, envFuncs = {}, {}
-- Set up the metatable. If triggered we call the corresponding function in the envFuncs table. The value
-- returned by that function is memoized in the env table so that we don't call any of the functions
-- more than once. (Nils won't be memoized.)
setmetatable(env, {
__index = function (t, key)
local envFunc = envFuncs[key]
if envFunc then
local success, val = pcall(envFunc)
if success then
env[key] = val -- Memoise the value.
return val
end
end
return nil
end
})
function envFuncs.title()
-- The title object for the current page, or a test page passed with args.page.
local title
local titleArg = args.page
if titleArg then
title = mw.title.new(titleArg)
else
title = mw.title.getCurrentTitle()
end
return title
end
function envFuncs.templateTitle()
--[[
-- The template (or module, etc.) title object.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
-- 'testcases-subpage' --> 'testcases'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local subpage = title.subpageText
if subpage == message('sandbox-subpage') or subpage == message('testcases-subpage') or (subpage == message('doc-subpage') and mw.title.getCurrentTitle().namespace == env.docSpace) then
return mw.title.makeTitle(subjectSpace, title.baseText)
else
return mw.title.makeTitle(subjectSpace, title.text)
end
end
function envFuncs.docTitle()
--[[
-- Title object of the /doc subpage.
-- Messages:
-- 'doc-subpage' --> 'doc'
--]]
local title = env.title
local docname = args[1] -- User-specified doc page.
local docpage
if docname then
docpage = docname
else
docpage = env.docpageBase .. '/' .. message('doc-subpage')
end
return mw.title.new(docpage)
end
function envFuncs.sandboxTitle()
--[[
-- Title object for the /sandbox subpage.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('sandbox-subpage'))
end
function envFuncs.testcasesTitle()
--[[
-- Title object for the /testcases subpage.
-- Messages:
-- 'testcases-subpage' --> 'testcases'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('testcases-subpage'))
end
function envFuncs.protectionLevels()
-- The protection levels table of the title object.
return env.title.protectionLevels
end
function envFuncs.subjectSpace()
-- The subject namespace number.
return mw.site.namespaces[env.title.namespace].subject.id
end
function envFuncs.docSpace()
-- The documentation namespace number. For most namespaces this is the
-- same as the subject namespace. However, pages in the Article, File,
-- MediaWiki or Category namespaces must have their /doc, /sandbox and
-- /testcases pages in talk space.
local subjectSpace = env.subjectSpace
if subjectSpace == 0 or subjectSpace == 6 or subjectSpace == 8 or subjectSpace == 14 then
return subjectSpace + 1
else
return subjectSpace
end
end
function envFuncs.docpageBase()
-- The base page of the /doc, /sandbox, and /testcases subpages.
-- For some namespaces this is the talk page, rather than the template page.
local templateTitle = env.templateTitle
local docSpace = env.docSpace
local docSpaceText = mw.site.namespaces[docSpace].name
-- Assemble the link. docSpace is never the main namespace, so we can hardcode the colon.
return docSpaceText .. ':' .. templateTitle.text
end
function envFuncs.compareUrl()
-- Diff link between the sandbox and the main template using [[Special:ComparePages]].
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
if templateTitle.exists and sandboxTitle.exists then
local compareUrl = mw.uri.canonicalUrl(
'Special:ComparePages',
{ page1 = templateTitle.prefixedText, page2 = sandboxTitle.prefixedText}
)
return tostring(compareUrl)
else
return nil
end
end
return env
end
----------------------------------------------------------------------------
-- Auxiliary templates
----------------------------------------------------------------------------
p.getModuleWikitext = makeInvokeFunc('_getModuleWikitext')
function p._getModuleWikitext(args, env)
local currentTitle = mw.title.getCurrentTitle()
if currentTitle.contentModel ~= 'Scribunto' then return end
pcall(require, currentTitle.prefixedText) -- if it fails, we don't care
local moduleWikitext = package.loaded["Module:Module wikitext"]
if moduleWikitext then
return moduleWikitext.main()
end
end
function p.sandboxNotice(args, env)
--[=[
-- Generates a sandbox notice for display above sandbox pages.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-notice-image' --> '[[File:Sandbox.svg|50px|alt=|link=]]'
-- 'sandbox-notice-blurb' --> 'This is the $1 for $2.'
-- 'sandbox-notice-diff-blurb' --> 'This is the $1 for $2 ($3).'
-- 'sandbox-notice-pagetype-template' --> '[[Wikipedia:Template test cases|template sandbox]] page'
-- 'sandbox-notice-pagetype-module' --> '[[Wikipedia:Template test cases|module sandbox]] page'
-- 'sandbox-notice-pagetype-other' --> 'sandbox page'
-- 'sandbox-notice-compare-link-display' --> 'diff'
-- 'sandbox-notice-testcases-blurb' --> 'See also the companion subpage for $1.'
-- 'sandbox-notice-testcases-link-display' --> 'test cases'
-- 'sandbox-category' --> 'Template sandboxes'
-- 'module-sandbox-category' --> 'Module sandboxes'
-- 'other-sandbox-category' --> 'Sandboxes outside of template or module namespace'
--]=]
local title = env.title
local sandboxTitle = env.sandboxTitle
local templateTitle = env.templateTitle
local subjectSpace = env.subjectSpace
if not (subjectSpace and title and sandboxTitle and templateTitle
and mw.title.equals(title, sandboxTitle)) then
return nil
end
-- Build the table of arguments to pass to {{ombox}}. We need just two fields, "image" and "text".
local omargs = {}
omargs.image = message('sandbox-notice-image')
-- Get the text. We start with the opening blurb, which is something like
-- "This is the template sandbox for [[Template:Foo]] (diff)."
local text = '__EXPECTUNUSEDTEMPLATE__'
local pagetype, sandboxCat
if subjectSpace == 10 then
pagetype = message('sandbox-notice-pagetype-template')
sandboxCat = message('sandbox-category')
elseif subjectSpace == 828 then
pagetype = message('sandbox-notice-pagetype-module')
sandboxCat = message('module-sandbox-category')
else
pagetype = message('sandbox-notice-pagetype-other')
sandboxCat = message('other-sandbox-category')
end
local templateLink = makeWikilink(templateTitle.prefixedText)
local compareUrl = env.compareUrl
if compareUrl then
local compareDisplay = message('sandbox-notice-compare-link-display')
local compareLink = makeUrlLink(compareUrl, compareDisplay)
text = text .. message('sandbox-notice-diff-blurb', {pagetype, templateLink, compareLink})
else
text = text .. message('sandbox-notice-blurb', {pagetype, templateLink})
end
-- Get the test cases page blurb if the page exists. This is something like
-- "See also the companion subpage for [[Template:Foo/testcases|test cases]]."
local testcasesTitle = env.testcasesTitle
if testcasesTitle and testcasesTitle.exists then
if testcasesTitle.contentModel == "Scribunto" then
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesRunLinkDisplay = message('sandbox-notice-testcases-run-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-run-blurb', {testcasesLink, testcasesRunLink})
else
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-blurb', {testcasesLink})
end
end
-- Add the sandbox to the sandbox category.
omargs.text = text .. makeCategoryLink(sandboxCat)
-- 'documentation-clear'
return '<div class="' .. message('clear') .. '"></div>'
.. require('Module:Message box').main('ombox', omargs)
end
function p.protectionTemplate(env)
-- Generates the padlock icon in the top right.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'protection-template' --> 'pp-template'
-- 'protection-template-args' --> {docusage = 'yes'}
local protectionLevels = env.protectionLevels
if not protectionLevels then
return nil
end
local editProt = protectionLevels.edit and protectionLevels.edit[1]
local moveProt = protectionLevels.move and protectionLevels.move[1]
if editProt then
-- The page is edit-protected.
return require('Module:Protection banner')._main{
message('protection-reason-edit'), small = true
}
elseif moveProt and moveProt ~= 'autoconfirmed' then
-- The page is move-protected but not edit-protected. Exclude move
-- protection with the level "autoconfirmed", as this is equivalent to
-- no move protection at all.
return require('Module:Protection banner')._main{
action = 'move', small = true
}
else
return nil
end
end
----------------------------------------------------------------------------
-- Start box
----------------------------------------------------------------------------
p.startBox = makeInvokeFunc('_startBox')
function p._startBox(args, env)
--[[
-- This function generates the start box.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- The actual work is done by p.makeStartBoxLinksData and p.renderStartBoxLinks which make
-- the [view] [edit] [history] [purge] links, and by p.makeStartBoxData and p.renderStartBox
-- which generate the box HTML.
--]]
env = env or p.getEnvironment(args)
local links
local content = args.content
if not content or args[1] then
-- No need to include the links if the documentation is on the template page itself.
local linksData = p.makeStartBoxLinksData(args, env)
if linksData then
links = p.renderStartBoxLinks(linksData)
end
end
-- Generate the start box html.
local data = p.makeStartBoxData(args, env, links)
if data then
return p.renderStartBox(data)
else
-- User specified no heading.
return nil
end
end
function p.makeStartBoxLinksData(args, env)
--[[
-- Does initial processing of data to make the [view] [edit] [history] [purge] links.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'view-link-display' --> 'view'
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'purge-link-display' --> 'purge'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'docpage-preload' --> 'Template:Documentation/preload'
-- 'create-link-display' --> 'create'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local docTitle = env.docTitle
if not title or not docTitle then
return nil
end
if docTitle.isRedirect then
docTitle = docTitle.redirectTarget
end
-- Create link if /doc doesn't exist.
local preload = args.preload
if not preload then
if subjectSpace == 828 then -- Module namespace
preload = message('module-preload')
else
preload = message('docpage-preload')
end
end
return {
title = title,
docTitle = docTitle,
-- View, display, edit, and purge links if /doc exists.
viewLinkDisplay = message('view-link-display'),
editLinkDisplay = message('edit-link-display'),
historyLinkDisplay = message('history-link-display'),
purgeLinkDisplay = message('purge-link-display'),
preload = preload,
createLinkDisplay = message('create-link-display')
}
end
function p.renderStartBoxLinks(data)
--[[
-- Generates the [view][edit][history][purge] or [create][purge] links from the data table.
-- @data - a table of data generated by p.makeStartBoxLinksData
--]]
local docTitle = data.docTitle
-- yes, we do intend to purge the template page on which the documentation appears
local purgeLink = makeWikilink("Special:Purge/" .. data.title.prefixedText, data.purgeLinkDisplay)
if docTitle.exists then
local viewLink = makeWikilink(docTitle.prefixedText, data.viewLinkDisplay)
local editLink = makeWikilink("Special:EditPage/" .. docTitle.prefixedText, data.editLinkDisplay)
local historyLink = makeWikilink("Special:PageHistory/" .. docTitle.prefixedText, data.historyLinkDisplay)
return viewLink .. editLink .. historyLink .. purgeLink
else
local createLink = makeUrlLink(docTitle:canonicalUrl{action = 'edit', preload = data.preload}, data.createLinkDisplay)
return createLink .. purgeLink
end
return ret
end
function p.makeStartBoxData(args, env, links)
--[=[
-- Does initial processing of data to pass to the start-box render function, p.renderStartBox.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- @links - a string containing the [view][edit][history][purge] links - could be nil if there's an error.
--
-- Messages:
-- 'documentation-icon-wikitext' --> '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]]'
-- 'template-namespace-heading' --> 'Template documentation'
-- 'module-namespace-heading' --> 'Module documentation'
-- 'file-namespace-heading' --> 'Summary'
-- 'other-namespaces-heading' --> 'Documentation'
-- 'testcases-create-link-display' --> 'create'
--]=]
local subjectSpace = env.subjectSpace
if not subjectSpace then
-- Default to an "other namespaces" namespace, so that we get at least some output
-- if an error occurs.
subjectSpace = 2
end
local data = {}
-- Heading
local heading = args.heading -- Blank values are not removed.
if heading == '' then
-- Don't display the start box if the heading arg is defined but blank.
return nil
end
if heading then
data.heading = heading
elseif subjectSpace == 10 then -- Template namespace
data.heading = message('documentation-icon-wikitext') .. ' ' .. message('template-namespace-heading')
elseif subjectSpace == 828 then -- Module namespace
data.heading = message('documentation-icon-wikitext') .. ' ' .. message('module-namespace-heading')
elseif subjectSpace == 6 then -- File namespace
data.heading = message('file-namespace-heading')
else
data.heading = message('other-namespaces-heading')
end
-- Heading CSS
local headingStyle = args['heading-style']
if headingStyle then
data.headingStyleText = headingStyle
else
-- 'documentation-heading'
data.headingClass = message('main-div-heading-class')
end
-- Data for the [view][edit][history][purge] or [create] links.
if links then
-- 'mw-editsection-like plainlinks'
data.linksClass = message('start-box-link-classes')
data.links = links
end
return data
end
function p.renderStartBox(data)
-- Renders the start box html.
-- @data - a table of data generated by p.makeStartBoxData.
local sbox = mw.html.create('div')
sbox
-- 'documentation-startbox'
:addClass(message('start-box-class'))
:newline()
:tag('span')
:addClass(data.headingClass)
:attr('id', 'documentation-heading')
:cssText(data.headingStyleText)
:wikitext(data.heading)
local links = data.links
if links then
sbox:tag('span')
:addClass(data.linksClass)
:attr('id', data.linksId)
:wikitext(links)
end
return tostring(sbox)
end
----------------------------------------------------------------------------
-- Documentation content
----------------------------------------------------------------------------
p.content = makeInvokeFunc('_content')
function p._content(args, env)
-- Displays the documentation contents
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
local content = args.content
if not content and docTitle and docTitle.exists then
content = args._content or mw.getCurrentFrame():expandTemplate{title = docTitle.prefixedText}
end
-- The line breaks below are necessary so that "=== Headings ===" at the start and end
-- of docs are interpreted correctly.
return '\n' .. (content or '') .. '\n'
end
p.contentTitle = makeInvokeFunc('_contentTitle')
function p._contentTitle(args, env)
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
if not args.content and docTitle and docTitle.exists then
return docTitle.prefixedText
else
return ''
end
end
----------------------------------------------------------------------------
-- End box
----------------------------------------------------------------------------
p.endBox = makeInvokeFunc('_endBox')
function p._endBox(args, env)
--[=[
-- This function generates the end box (also known as the link box).
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
--]=]
-- Get environment data.
env = env or p.getEnvironment(args)
local subjectSpace = env.subjectSpace
local docTitle = env.docTitle
if not subjectSpace or not docTitle then
return nil
end
-- Check whether we should output the end box at all. Add the end
-- box by default if the documentation exists or if we are in the
-- user, module or template namespaces.
local linkBox = args['link box']
if linkBox == 'off'
or not (
docTitle.exists
or subjectSpace == 2
or subjectSpace == 828
or subjectSpace == 10
)
then
return nil
end
-- Assemble the link box.
local text = ''
if linkBox then
text = text .. linkBox
else
text = text .. (p.makeDocPageBlurb(args, env) or '') -- "This documentation is transcluded from [[Foo]]."
if subjectSpace == 2 or subjectSpace == 10 or subjectSpace == 828 then
-- We are in the user, template or module namespaces.
-- Add sandbox and testcases links.
-- "Editors can experiment in this template's sandbox and testcases pages."
text = text .. (p.makeExperimentBlurb(args, env) or '') .. '<br />'
if not args.content and not args[1] then
-- "Please add categories to the /doc subpage."
-- Don't show this message with inline docs or with an explicitly specified doc page,
-- as then it is unclear where to add the categories.
text = text .. (p.makeCategoriesBlurb(args, env) or '')
end
text = text .. ' ' .. (p.makeSubpagesBlurb(args, env) or '') --"Subpages of this template"
end
end
local box = mw.html.create('div')
-- 'documentation-metadata'
box:attr('role', 'note')
:addClass(message('end-box-class'))
-- 'plainlinks'
:addClass(message('end-box-plainlinks'))
:wikitext(text)
:done()
return '\n' .. tostring(box)
end
function p.makeDocPageBlurb(args, env)
--[=[
-- Makes the blurb "This documentation is transcluded from [[Template:Foo]] (edit, history)".
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'transcluded-from-blurb' -->
-- 'The above [[Wikipedia:Template documentation|documentation]]
-- is [[Help:Transclusion|transcluded]] from $1.'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'create-link-display' --> 'create'
-- 'create-module-doc-blurb' -->
-- 'You might want to $1 a documentation page for this [[Wikipedia:Lua|Scribunto module]].'
--]=]
local docTitle = env.docTitle
if not docTitle then
return nil
end
if docTitle.exists then
-- /doc exists; link to it.
local docLink = makeWikilink(docTitle.prefixedText)
local editDisplay = message('edit-link-display')
local editLink = makeWikilink("Special:EditPage/" .. docTitle.prefixedText, editDisplay)
local historyDisplay = message('history-link-display')
local historyLink = makeWikilink("Special:PageHistory/" .. docTitle.prefixedText, historyDisplay)
return message('transcluded-from-blurb', {docLink})
.. ' '
.. makeToolbar(editLink, historyLink)
.. '<br />'
elseif env.subjectSpace == 828 then
-- /doc does not exist; ask to create it.
local createUrl = docTitle:canonicalUrl{action = 'edit', preload = message('module-preload')}
local createDisplay = message('create-link-display')
local createLink = makeUrlLink(createUrl, createDisplay)
return message('create-module-doc-blurb', {createLink})
.. '<br />'
end
end
function p.makeExperimentBlurb(args, env)
--[[
-- Renders the text "Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-link-display' --> 'sandbox'
-- 'sandbox-edit-link-display' --> 'edit'
-- 'compare-link-display' --> 'diff'
-- 'module-sandbox-preload' --> 'Template:Documentation/preload-module-sandbox'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'sandbox-create-link-display' --> 'create'
-- 'mirror-edit-summary' --> 'Create sandbox version of $1'
-- 'mirror-link-display' --> 'mirror'
-- 'mirror-link-preload' --> 'Template:Documentation/mirror'
-- 'sandbox-link-display' --> 'sandbox'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display'--> 'edit'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'testcases-create-link-display' --> 'create'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display' --> 'edit'
-- 'module-testcases-preload' --> 'Template:Documentation/preload-module-testcases'
-- 'template-testcases-preload' --> 'Template:Documentation/preload-testcases'
-- 'experiment-blurb-module' --> 'Editors can experiment in this module's $1 and $2 pages.'
-- 'experiment-blurb-template' --> 'Editors can experiment in this template's $1 and $2 pages.'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
local testcasesTitle = env.testcasesTitle
local templatePage = templateTitle.prefixedText
if not subjectSpace or not templateTitle or not sandboxTitle or not testcasesTitle then
return nil
end
-- Make links.
local sandboxLinks, testcasesLinks
if sandboxTitle.exists then
local sandboxPage = sandboxTitle.prefixedText
local sandboxDisplay = message('sandbox-link-display')
local sandboxLink = makeWikilink(sandboxPage, sandboxDisplay)
local sandboxEditDisplay = message('sandbox-edit-link-display')
local sandboxEditLink = makeWikilink("Special:EditPage/" .. sandboxPage, sandboxEditDisplay)
local compareUrl = env.compareUrl
local compareLink
if compareUrl then
local compareDisplay = message('compare-link-display')
compareLink = makeUrlLink(compareUrl, compareDisplay)
end
sandboxLinks = sandboxLink .. ' ' .. makeToolbar(sandboxEditLink, compareLink)
else
local sandboxPreload
if subjectSpace == 828 then
sandboxPreload = message('module-sandbox-preload')
else
sandboxPreload = message('template-sandbox-preload')
end
local sandboxCreateUrl = sandboxTitle:canonicalUrl{action = 'edit', preload = sandboxPreload}
local sandboxCreateDisplay = message('sandbox-create-link-display')
local sandboxCreateLink = makeUrlLink(sandboxCreateUrl, sandboxCreateDisplay)
local mirrorSummary = message('mirror-edit-summary', {makeWikilink(templatePage)})
local mirrorPreload = message('mirror-link-preload')
local mirrorUrl = sandboxTitle:canonicalUrl{action = 'edit', preload = mirrorPreload, summary = mirrorSummary}
if subjectSpace == 828 then
mirrorUrl = sandboxTitle:canonicalUrl{action = 'edit', preload = templateTitle.prefixedText, summary = mirrorSummary}
end
local mirrorDisplay = message('mirror-link-display')
local mirrorLink = makeUrlLink(mirrorUrl, mirrorDisplay)
sandboxLinks = message('sandbox-link-display') .. ' ' .. makeToolbar(sandboxCreateLink, mirrorLink)
end
if testcasesTitle.exists then
local testcasesPage = testcasesTitle.prefixedText
local testcasesDisplay = message('testcases-link-display')
local testcasesLink = makeWikilink(testcasesPage, testcasesDisplay)
local testcasesEditUrl = testcasesTitle:canonicalUrl{action = 'edit'}
local testcasesEditDisplay = message('testcases-edit-link-display')
local testcasesEditLink = makeWikilink("Special:EditPage/" .. testcasesPage, testcasesEditDisplay)
-- for Modules, add testcases run link if exists
if testcasesTitle.contentModel == "Scribunto" and testcasesTitle.talkPageTitle and testcasesTitle.talkPageTitle.exists then
local testcasesRunLinkDisplay = message('testcases-run-link-display')
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink, testcasesRunLink)
else
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink)
end
else
local testcasesPreload
if subjectSpace == 828 then
testcasesPreload = message('module-testcases-preload')
else
testcasesPreload = message('template-testcases-preload')
end
local testcasesCreateUrl = testcasesTitle:canonicalUrl{action = 'edit', preload = testcasesPreload}
local testcasesCreateDisplay = message('testcases-create-link-display')
local testcasesCreateLink = makeUrlLink(testcasesCreateUrl, testcasesCreateDisplay)
testcasesLinks = message('testcases-link-display') .. ' ' .. makeToolbar(testcasesCreateLink)
end
local messageName
if subjectSpace == 828 then
messageName = 'experiment-blurb-module'
else
messageName = 'experiment-blurb-template'
end
return message(messageName, {sandboxLinks, testcasesLinks})
end
function p.makeCategoriesBlurb(args, env)
--[[
-- Generates the text "Please add categories to the /doc subpage."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'doc-link-display' --> '/doc'
-- 'add-categories-blurb' --> 'Please add categories to the $1 subpage.'
--]]
local docTitle = env.docTitle
if not docTitle then
return nil
end
local docPathLink = makeWikilink(docTitle.prefixedText, message('doc-link-display'))
return message('add-categories-blurb', {docPathLink})
end
function p.makeSubpagesBlurb(args, env)
--[[
-- Generates the "Subpages of this template" link.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'template-pagetype' --> 'template'
-- 'module-pagetype' --> 'module'
-- 'default-pagetype' --> 'page'
-- 'subpages-link-display' --> 'Subpages of this $1'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
if not subjectSpace or not templateTitle then
return nil
end
local pagetype
if subjectSpace == 10 then
pagetype = message('template-pagetype')
elseif subjectSpace == 828 then
pagetype = message('module-pagetype')
else
pagetype = message('default-pagetype')
end
local subpagesLink = makeWikilink(
'Special:PrefixIndex/' .. templateTitle.prefixedText .. '/',
message('subpages-link-display', {pagetype})
)
return message('subpages-blurb', {subpagesLink})
end
----------------------------------------------------------------------------
-- Tracking categories
----------------------------------------------------------------------------
function p.addTrackingCategories(env)
--[[
-- Check if {{documentation}} is transcluded on a /doc or /testcases page.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'display-strange-usage-category' --> true
-- 'doc-subpage' --> 'doc'
-- 'testcases-subpage' --> 'testcases'
-- 'strange-usage-category' --> 'Wikipedia pages with strange ((documentation)) usage'
--
-- /testcases pages in the module namespace are not categorised, as they may have
-- {{documentation}} transcluded automatically.
--]]
local title = env.title
local subjectSpace = env.subjectSpace
if not title or not subjectSpace then
return nil
end
local subpage = title.subpageText
if message('display-strange-usage-category', nil, 'boolean')
and (
subpage == message('doc-subpage')
or subjectSpace ~= 828 and subpage == message('testcases-subpage')
)
then
return makeCategoryLink(message('strange-usage-category'))
end
return ''
end
return p
bo74oekmmsj1xtpw7dlzkvkhc0k05g6
370434
370416
2026-09-28T08:23:46Z
ChiK
1136
Restored revision 370386 by [[Special:Contributions/meta>NguoiDungKhongDinhDanh|meta>NguoiDungKhongDinhDanh]] ([[User talk:meta>NguoiDungKhongDinhDanh|talk]]): Work good (TwinkleGlobal)
370434
Scribunto
text/plain
-- This module implements {{documentation}}.
-- Get required modules.
local getArgs = require('Module:Arguments').getArgs
local messageBox = require('Module:Message box')
-- Get the config table.
local cfg = mw.loadData('Module:Documentation/config')
local i18n = mw.loadData('Module:Documentation/i18n')
local p = {}
-- Often-used functions.
local ugsub = mw.ustring.gsub
----------------------------------------------------------------------------
-- Helper functions
--
-- These are defined as local functions, but are made available in the p
-- table for testing purposes.
----------------------------------------------------------------------------
local function message(cfgKey, valArray, expectType)
--[[
-- Gets a message from the cfg table and formats it if appropriate.
-- The function raises an error if the value from the cfg table is not
-- of the type expectType. The default type for expectType is 'string'.
-- If the table valArray is present, strings such as $1, $2 etc. in the
-- message are substituted with values from the table keys [1], [2] etc.
-- For example, if the message "foo-message" had the value 'Foo $2 bar $1.',
-- message('foo-message', {'baz', 'qux'}) would return "Foo qux bar baz."
--]]
local msg = cfg[cfgKey]
expectType = expectType or 'string'
if type(msg) ~= expectType then
error(require('Module:TNT').format('I18n/Documentation', 'cfg-error-msg-type', cfgKey, expectType, type(msg)), 2)
end
if not valArray then
return msg
end
local function getMessageVal(match)
match = tonumber(match)
return valArray[match] or error(require('Module:TNT').format('I18n/Documentation', 'cfg-error-msg-empty', '$' .. match, cfgKey), 4)
end
local ret = ugsub(msg, '$([1-9][0-9]*)', getMessageVal)
return ret
end
p.message = message
local function makeWikilink(page, display)
if display then
return mw.ustring.format('[[%s|%s]]', page, display)
else
return mw.ustring.format('[[%s]]', page)
end
end
p.makeWikilink = makeWikilink
local function makeCategoryLink(cat, sort)
local catns = mw.site.namespaces[14].name
return makeWikilink(catns .. ':' .. cat, sort)
end
p.makeCategoryLink = makeCategoryLink
local function makeUrlLink(url, display)
return mw.ustring.format('[%s %s]', url, display)
end
p.makeUrlLink = makeUrlLink
local function makeToolbar(...)
local ret = {}
local lim = select('#', ...)
if lim < 1 then
return nil
end
for i = 1, lim do
ret[#ret + 1] = select(i, ...)
end
return '<small>(' .. table.concat(ret, ' | ') .. ')</small>'
end
p.makeToolbar = makeToolbar
----------------------------------------------------------------------------
-- Argument processing
----------------------------------------------------------------------------
local function makeInvokeFunc(funcName)
return function (frame)
local args = getArgs(frame, {
valueFunc = function (key, value)
if type(value) == 'string' then
value = value:match('^%s*(.-)%s*$') -- Remove whitespace.
if key == 'heading' or value ~= '' then
return value
else
return nil
end
else
return value
end
end
})
return p[funcName](args)
end
end
----------------------------------------------------------------------------
-- Load TemplateStyles
----------------------------------------------------------------------------
p.main = function(frame)
local parent = frame.getParent(frame)
local output = p._main(parent.args)
return frame:extensionTag{ name='templatestyles', args = { src= message('templatestyles-scr') } } .. output
end
----------------------------------------------------------------------------
-- Main function
----------------------------------------------------------------------------
function p._main(args)
--[[
-- This function defines logic flow for the module.
-- @args - table of arguments passed by the user
--
-- Messages:
-- 'main-div-id' --> 'template-documentation'
-- 'main-div-classes' --> 'template-documentation iezoomfix'
--]]
local env = p.getEnvironment(args)
local root = mw.html.create()
root
:wikitext(p._getModuleWikitext(args, env))
:wikitext(p.protectionTemplate(env))
:wikitext(p.sandboxNotice(args, env))
-- This div tag is from {{documentation/start box}}, but moving it here
-- so that we don't have to worry about unclosed tags.
:tag('div')
:attr('id', message('main-div-id'))
:addClass(message('main-div-class'))
:wikitext(p._startBox(args, env))
:wikitext(p._content(args, env))
:done()
:wikitext(p._endBox(args, env))
:wikitext(p.addTrackingCategories(env))
return tostring(root)
end
----------------------------------------------------------------------------
-- Environment settings
----------------------------------------------------------------------------
function p.getEnvironment(args)
--[[
-- Returns a table with information about the environment, including title objects and other namespace- or
-- path-related data.
-- @args - table of arguments passed by the user
--
-- Title objects include:
-- env.title - the page we are making documentation for (usually the current title)
-- env.templateTitle - the template (or module, file, etc.)
-- env.docTitle - the /doc subpage.
-- env.sandboxTitle - the /sandbox subpage.
-- env.testcasesTitle - the /testcases subpage.
-- env.printTitle - the print version of the template, located at the /Print subpage.
--
-- Data includes:
-- env.protectionLevels - the protection levels table of the title object.
-- env.subjectSpace - the number of the title's subject namespace.
-- env.docSpace - the number of the namespace the title puts its documentation in.
-- env.docpageBase - the text of the base page of the /doc, /sandbox and /testcases pages, with namespace.
-- env.compareUrl - URL of the Special:ComparePages page comparing the sandbox with the template.
--
-- All table lookups are passed through pcall so that errors are caught. If an error occurs, the value
-- returned will be nil.
--]]
local env, envFuncs = {}, {}
-- Set up the metatable. If triggered we call the corresponding function in the envFuncs table. The value
-- returned by that function is memoized in the env table so that we don't call any of the functions
-- more than once. (Nils won't be memoized.)
setmetatable(env, {
__index = function (t, key)
local envFunc = envFuncs[key]
if envFunc then
local success, val = pcall(envFunc)
if success then
env[key] = val -- Memoise the value.
return val
end
end
return nil
end
})
function envFuncs.title()
-- The title object for the current page, or a test page passed with args.page.
local title
local titleArg = args.page
if titleArg then
title = mw.title.new(titleArg)
else
title = mw.title.getCurrentTitle()
end
return title
end
function envFuncs.templateTitle()
--[[
-- The template (or module, etc.) title object.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
-- 'testcases-subpage' --> 'testcases'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local subpage = title.subpageText
if subpage == message('sandbox-subpage') or subpage == message('testcases-subpage') then
return mw.title.makeTitle(subjectSpace, title.baseText)
else
return mw.title.makeTitle(subjectSpace, title.text)
end
end
function envFuncs.docTitle()
--[[
-- Title object of the /doc subpage.
-- Messages:
-- 'doc-subpage' --> 'doc'
--]]
local title = env.title
local docname = args[1] -- User-specified doc page.
local docpage
if docname then
docpage = docname
else
docpage = env.docpageBase .. '/' .. message('doc-subpage')
end
return mw.title.new(docpage)
end
function envFuncs.sandboxTitle()
--[[
-- Title object for the /sandbox subpage.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('sandbox-subpage'))
end
function envFuncs.testcasesTitle()
--[[
-- Title object for the /testcases subpage.
-- Messages:
-- 'testcases-subpage' --> 'testcases'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('testcases-subpage'))
end
function envFuncs.printTitle()
--[[
-- Title object for the /Print subpage.
-- Messages:
-- 'print-subpage' --> 'Print'
--]]
return env.templateTitle:subPageTitle(message('print-subpage'))
end
function envFuncs.protectionLevels()
-- The protection levels table of the title object.
return env.title.protectionLevels
end
function envFuncs.subjectSpace()
-- The subject namespace number.
return mw.site.namespaces[env.title.namespace].subject.id
end
function envFuncs.docSpace()
-- The documentation namespace number. For most namespaces this is the same as the
-- subject namespace. However, pages in the Article, File, MediaWiki or Category
-- namespaces must have their /doc, /sandbox and /testcases pages in talk space.
local subjectSpace = env.subjectSpace
if subjectSpace == 0 or subjectSpace == 6 or subjectSpace == 8 or subjectSpace == 14 then
return subjectSpace + 1
else
return subjectSpace
end
end
function envFuncs.docpageBase()
-- The base page of the /doc, /sandbox, and /testcases subpages.
-- For some namespaces this is the talk page, rather than the template page.
local templateTitle = env.templateTitle
local docSpace = env.docSpace
local docSpaceText = mw.site.namespaces[docSpace].name
-- Assemble the link. docSpace is never the main namespace, so we can hardcode the colon.
return docSpaceText .. ':' .. templateTitle.text
end
function envFuncs.compareUrl()
-- Diff link between the sandbox and the main template using [[Special:ComparePages]].
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
if templateTitle.exists and sandboxTitle.exists then
local compareUrl = mw.uri.fullUrl(
'Special:ComparePages',
{page1 = templateTitle.prefixedText, page2 = sandboxTitle.prefixedText}
)
return tostring(compareUrl)
else
return nil
end
end
return env
end
----------------------------------------------------------------------------
-- Auxiliary templates
----------------------------------------------------------------------------
p.getModuleWikitext = makeInvokeFunc('_getModuleWikitext')
function p._getModuleWikitext(args, env)
local currentTitle = mw.title.getCurrentTitle()
if currentTitle.contentModel ~= 'Scribunto' then return end
pcall(require, currentTitle.prefixedText) -- if it fails, we don't care
local moduleWikitext = package.loaded["Module:Module wikitext"]
if moduleWikitext then
return moduleWikitext.main()
end
end
function p.sandboxNotice(args, env)
--[=[
-- Generates a sandbox notice for display above sandbox pages.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-notice-image' --> '[[Image:Sandbox.svg|50px|alt=|link=]]'
-- 'sandbox-notice-blurb' --> 'This is the $1 for $2.'
-- 'sandbox-notice-diff-blurb' --> 'This is the $1 for $2 ($3).'
-- 'sandbox-notice-pagetype-template' --> '[[w:Wikipedia:Template test cases|template sandbox]] page'
-- 'sandbox-notice-pagetype-module' --> '[[w:Wikipedia:Template test cases|module sandbox]] page'
-- 'sandbox-notice-pagetype-other' --> 'sandbox page'
-- 'sandbox-notice-compare-link-display' --> 'diff'
-- 'sandbox-notice-testcases-blurb' --> 'See also the companion subpage for $1.'
-- 'sandbox-notice-testcases-link-display' --> 'test cases'
-- 'sandbox-category' --> 'Template sandboxes'
--]=]
local title = env.title
local sandboxTitle = env.sandboxTitle
local templateTitle = env.templateTitle
local subjectSpace = env.subjectSpace
if not (subjectSpace and title and sandboxTitle and templateTitle and mw.title.equals(title, sandboxTitle)) then
return nil
end
-- Build the table of arguments to pass to {{ombox}}. We need just two fields, "image" and "text".
local omargs = {}
omargs.image = message('sandbox-notice-image')
-- Get the text. We start with the opening blurb, which is something like
-- "This is the template sandbox for [[Template:Foo]] (diff)."
local text = ''
local frame = mw.getCurrentFrame()
local isPreviewing = frame:preprocess('{{REVISIONID}}') == '' -- True if the page is being previewed.
local pagetype
if subjectSpace == 10 then
pagetype = message('sandbox-notice-pagetype-template')
elseif subjectSpace == 828 then
pagetype = message('sandbox-notice-pagetype-module')
else
pagetype = message('sandbox-notice-pagetype-other')
end
local templateLink = makeWikilink(templateTitle.prefixedText)
local compareUrl = env.compareUrl
if isPreviewing or not compareUrl then
text = text .. message('sandbox-notice-blurb', {pagetype, templateLink})
else
local compareDisplay = message('sandbox-notice-compare-link-display')
local compareLink = makeUrlLink(compareUrl, compareDisplay)
text = text .. message('sandbox-notice-diff-blurb', {pagetype, templateLink, compareLink})
end
-- Get the test cases page blurb if the page exists. This is something like
-- "See also the companion subpage for [[Template:Foo/testcases|test cases]]."
local testcasesTitle = env.testcasesTitle
if testcasesTitle and testcasesTitle.exists then
if testcasesTitle.contentModel == "Scribunto" then
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesRunLinkDisplay = message('sandbox-notice-testcases-run-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-run-blurb', {testcasesLink, testcasesRunLink})
else
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-blurb', {testcasesLink})
end
end
-- Add the sandbox to the sandbox category.
text = text .. makeCategoryLink(message('sandbox-category'))
omargs.text = text
omargs.class = message('sandbox-class')
return messageBox.main('ombox', omargs)
end
function p.protectionTemplate(env)
-- Generates the padlock icon in the top right.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'protection-template' --> 'pp-template'
-- 'protection-template-args' --> {docusage = 'yes'}
local title = env.title
local protectionLevels
local protectionTemplate = message('protection-template')
local namespace = title.namespace
if not (protectionTemplate and (namespace == 10 or namespace == 828)) then
-- Don't display the protection template if we are not in the template or module namespaces.
return nil
end
protectionLevels = env.protectionLevels
if not protectionLevels then
return nil
end
local editLevels = protectionLevels.edit
local moveLevels = protectionLevels.move
if moveLevels and moveLevels[1] == 'sysop' or editLevels and editLevels[1] then
-- The page is full-move protected, or full, template, or semi-protected.
local frame = mw.getCurrentFrame()
return frame:expandTemplate{title = protectionTemplate, args = message('protection-template-args', nil, 'table')}
else
return nil
end
end
----------------------------------------------------------------------------
-- Start box
----------------------------------------------------------------------------
p.startBox = makeInvokeFunc('_startBox')
function p._startBox(args, env)
--[[
-- This function generates the start box.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- The actual work is done by p.makeStartBoxLinksData and p.renderStartBoxLinks which make
-- the [view] [edit] [history] [purge] links, and by p.makeStartBoxData and p.renderStartBox
-- which generate the box HTML.
--]]
env = env or p.getEnvironment(args)
local links
local content = args.content
if not content then
-- No need to include the links if the documentation is on the template page itself.
local linksData = p.makeStartBoxLinksData(args, env)
if linksData then
links = p.renderStartBoxLinks(linksData)
end
end
-- Generate the start box html.
local data = p.makeStartBoxData(args, env, links)
if data then
return p.renderStartBox(data)
else
-- User specified no heading.
return nil
end
end
function p.makeStartBoxLinksData(args, env)
--[[
-- Does initial processing of data to make the [view] [edit] [history] [purge] links.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'view-link-display' --> 'view'
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'purge-link-display' --> 'purge'
-- 'file-docpage-preload' --> 'Template:Documentation/preload-filespace'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'docpage-preload' --> 'Template:Documentation/preload'
-- 'create-link-display' --> 'create'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local docTitle = env.docTitle
if not title or not docTitle then
return nil
end
if docTitle.isRedirect then
docTitle = docTitle.redirectTarget
end
local data = {}
data.title = title
data.docTitle = docTitle
-- View, display, edit, and purge links if /doc exists.
data.viewLinkDisplay = i18n['view-link-display']
data.editLinkDisplay = i18n['edit-link-display']
data.historyLinkDisplay = i18n['history-link-display']
data.purgeLinkDisplay = i18n['purge-link-display']
-- Create link if /doc doesn't exist.
local preload = args.preload
if not preload then
if subjectSpace == 6 then -- File namespace
preload = message('file-docpage-preload')
elseif subjectSpace == 828 then -- Module namespace
preload = message('module-preload')
else
preload = message('docpage-preload')
end
end
data.preload = preload
data.createLinkDisplay = i18n['create-link-display']
return data
end
function p.renderStartBoxLinks(data)
--[[
-- Generates the [view][edit][history][purge] or [create] links from the data table.
-- @data - a table of data generated by p.makeStartBoxLinksData
--]]
local ret
local docTitle = data.docTitle
local title = data.title
if docTitle.exists then
local viewLink = makeWikilink(docTitle.prefixedText, data.viewLinkDisplay)
local editLink = makeUrlLink(docTitle:fullUrl{action = 'edit'}, data.editLinkDisplay)
local historyLink = makeUrlLink(docTitle:fullUrl{action = 'history'}, data.historyLinkDisplay)
local purgeLink = makeUrlLink(title:fullUrl{action = 'purge'}, data.purgeLinkDisplay)
ret = '%s%s%s%s'
ret = mw.ustring.format(ret, viewLink, editLink, historyLink, purgeLink)
else
local createLink = makeUrlLink(docTitle:fullUrl{action = 'edit', preload = data.preload}, data.createLinkDisplay)
ret = '%s'
ret = mw.ustring.format(ret, createLink)
end
return ret
end
function p.makeStartBoxData(args, env, links)
--[=[
-- Does initial processing of data to pass to the start-box render function, p.renderStartBox.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- @links - a string containing the [view][edit][history][purge] links - could be nil if there's an error.
--
-- Messages:
-- 'documentation-icon-wikitext' --> '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=Documentation icon]]'
-- 'template-namespace-heading' --> 'Template documentation'
-- 'module-namespace-heading' --> 'Module documentation'
-- 'file-namespace-heading' --> 'Summary'
-- 'other-namespaces-heading' --> 'Documentation'
-- 'start-box-linkclasses' --> 'mw-editsection-like plainlinks'
-- 'start-box-link-id' --> 'doc_editlinks'
-- 'testcases-create-link-display' --> 'create'
--]=]
local subjectSpace = env.subjectSpace
if not subjectSpace then
-- Default to an "other namespaces" namespace, so that we get at least some output
-- if an error occurs.
subjectSpace = 2
end
local data = {}
-- Heading
local heading = args.heading -- Blank values are not removed.
if heading == '' then
-- Don't display the start box if the heading arg is defined but blank.
return nil
end
if heading then
data.heading = heading
elseif subjectSpace == 10 then -- Template namespace
data.heading = i18n['template-namespace-heading']
elseif subjectSpace == 828 then -- Module namespace
data.heading = i18n['module-namespace-heading']
elseif subjectSpace == 6 then -- File namespace
data.heading = i18n['file-namespace-heading']
else
data.heading = i18n['other-namespaces-heading']
end
-- Data for the [view][edit][history][purge] or [create] links.
if links then
data.linksClass = message('start-box-linkclasses')
data.linksId = message('start-box-link-id')
data.links = links
end
return data
end
function p.renderStartBox(data)
-- Renders the start box html.
-- @data - a table of data generated by p.makeStartBoxData.
local sbox = mw.html.create('div')
sbox
:addClass(message('header-div-class'))
:tag('div')
:addClass(message('heading-div-class'))
:wikitext(data.heading)
local links = data.links
if links then
sbox
:tag('div')
:addClass(data.linksClass)
:attr('id', data.linksId)
:wikitext(links)
end
return tostring(sbox)
end
----------------------------------------------------------------------------
-- Documentation content
----------------------------------------------------------------------------
p.content = makeInvokeFunc('_content')
function p._content(args, env)
-- Displays the documentation contents
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
local content = args.content
if not content and docTitle and docTitle.exists then
content = args._content or mw.getCurrentFrame():expandTemplate{title = docTitle}
end
-- The line breaks below are necessary so that "=== Headings ===" at the start and end
-- of docs are interpreted correctly.
local cbox = mw.html.create('div')
cbox
:addClass(message('content-div-class'))
:wikitext('\n' .. (content or '') .. '\n')
return tostring(cbox)
end
p.contentTitle = makeInvokeFunc('_contentTitle')
function p._contentTitle(args, env)
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
if not args.content and docTitle and docTitle.exists then
return docTitle.prefixedText
else
return ''
end
end
----------------------------------------------------------------------------
-- End box
----------------------------------------------------------------------------
p.endBox = makeInvokeFunc('_endBox')
function p._endBox(args, env)
--[=[
-- This function generates the end box (also known as the link box).
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--]=]
-- Get environment data.
env = env or p.getEnvironment(args)
local subjectSpace = env.subjectSpace
local docTitle = env.docTitle
if not subjectSpace or not docTitle then
return nil
end
-- Check whether we should output the end box at all. Add the end
-- box by default if the documentation exists or if we are in the
-- user, module or template namespaces.
local linkBox = args['link box']
if linkBox == 'off'
or not (
docTitle.exists
or subjectSpace == 2
or subjectSpace == 828
or subjectSpace == 10
)
then
return nil
end
-- Assemble the footer text field.
local text = ''
if linkBox then
text = text .. linkBox
else
text = text .. (p.makeDocPageBlurb(args, env) or '') -- "This documentation is transcluded from [[Foo]]."
if subjectSpace == 2 or subjectSpace == 10 or subjectSpace == 828 then
-- We are in the user, template or module namespaces.
-- Add sandbox and testcases links.
-- "Editors can experiment in this template's sandbox and testcases pages."
text = text .. (p.makeExperimentBlurb(args, env) or '')
text = text .. '<br />'
if not args.content and not args[1] then
-- "Please add categories to the /doc subpage."
-- Don't show this message with inline docs or with an explicitly specified doc page,
-- as then it is unclear where to add the categories.
text = text .. (p.makeCategoriesBlurb(args, env) or '')
end
text = text .. ' ' .. (p.makeSubpagesBlurb(args, env) or '') --"Subpages of this template"
local printBlurb = p.makePrintBlurb(args, env) -- Two-line blurb about print versions of templates.
if printBlurb then
text = text .. '<br />' .. printBlurb
end
end
end
local ebox = mw.html.create('div')
ebox
:addClass(message('footer-div-class'))
:wikitext(text)
return tostring(ebox)
end
function p.makeDocPageBlurb(args, env)
--[=[
-- Makes the blurb "This documentation is transcluded from [[Template:Foo]] (edit, history)".
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'transcluded-from-blurb' -->
-- 'The above [[w:Wikipedia:Template documentation|documentation]]
-- is [[w:Wikipedia:Transclusion|transcluded]] from $1.'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'create-link-display' --> 'create'
-- 'create-module-doc-blurb' -->
-- 'You might want to $1 a documentation page for this [[w:Wikipedia:Lua|Scribunto module]].'
--]=]
local docTitle = env.docTitle
if not docTitle or args.content then
return nil
end
local ret
if docTitle.exists then
-- /doc exists; link to it.
local docLink = makeWikilink(docTitle.prefixedText)
local editUrl = docTitle:fullUrl{action = 'edit'}
local editDisplay = i18n['edit-link-display']
local editLink = makeUrlLink(editUrl, editDisplay)
local historyUrl = docTitle:fullUrl{action = 'history'}
local historyDisplay = i18n['history-link-display']
local historyLink = makeUrlLink(historyUrl, historyDisplay)
ret = message('transcluded-from-blurb', {docLink})
.. ' '
.. makeToolbar(editLink, historyLink)
.. '<br />'
elseif env.subjectSpace == 828 then
-- /doc does not exist; ask to create it.
local createUrl = docTitle:fullUrl{action = 'edit', preload = message('module-preload')}
local createDisplay = i18n['create-link-display']
local createLink = makeUrlLink(createUrl, createDisplay)
ret = message('create-module-doc-blurb', {createLink})
.. '<br />'
end
return ret
end
function p.makeExperimentBlurb(args, env)
--[[
-- Renders the text "Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-link-display' --> 'sandbox'
-- 'sandbox-edit-link-display' --> 'edit'
-- 'compare-link-display' --> 'diff'
-- 'module-sandbox-preload' --> 'Template:Documentation/preload-module-sandbox'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'sandbox-create-link-display' --> 'create'
-- 'mirror-edit-summary' --> 'Create sandbox version of $1'
-- 'mirror-link-display' --> 'mirror'
-- 'mirror-link-preload' --> 'Template:Documentation/mirror'
-- 'sandbox-link-display' --> 'sandbox'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display'--> 'edit'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'testcases-create-link-display' --> 'create'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display' --> 'edit'
-- 'module-testcases-preload' --> 'Template:Documentation/preload-module-testcases'
-- 'template-testcases-preload' --> 'Template:Documentation/preload-testcases'
-- 'experiment-blurb-module' --> 'Editors can experiment in this module's $1 and $2 pages.'
-- 'experiment-blurb-template' --> 'Editors can experiment in this template's $1 and $2 pages.'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
local testcasesTitle = env.testcasesTitle
local templatePage = templateTitle.prefixedText
if not subjectSpace or not templateTitle or not sandboxTitle or not testcasesTitle then
return nil
end
-- Make links.
local sandboxLinks, testcasesLinks
if sandboxTitle.exists then
local sandboxPage = sandboxTitle.prefixedText
local sandboxDisplay = message('sandbox-link-display')
local sandboxLink = makeWikilink(sandboxPage, sandboxDisplay)
local sandboxEditUrl = sandboxTitle:fullUrl{action = 'edit'}
local sandboxEditDisplay = message('sandbox-edit-link-display')
local sandboxEditLink = makeUrlLink(sandboxEditUrl, sandboxEditDisplay)
local compareUrl = env.compareUrl
local compareLink
if compareUrl then
local compareDisplay = message('compare-link-display')
compareLink = makeUrlLink(compareUrl, compareDisplay)
end
sandboxLinks = sandboxLink .. ' ' .. makeToolbar(sandboxEditLink, compareLink)
else
local sandboxPreload
if subjectSpace == 828 then
sandboxPreload = message('module-sandbox-preload')
else
sandboxPreload = message('template-sandbox-preload')
end
local sandboxCreateUrl = sandboxTitle:fullUrl{action = 'edit', preload = sandboxPreload}
local sandboxCreateDisplay = message('sandbox-create-link-display')
local sandboxCreateLink = makeUrlLink(sandboxCreateUrl, sandboxCreateDisplay)
local mirrorSummary = message('mirror-edit-summary', {makeWikilink(templatePage)})
local mirrorPreload = message('mirror-link-preload')
local mirrorUrl = sandboxTitle:fullUrl{action = 'edit', preload = mirrorPreload, summary = mirrorSummary}
local mirrorDisplay = message('mirror-link-display')
local mirrorLink = makeUrlLink(mirrorUrl, mirrorDisplay)
if subjectSpace == 828 then
mirrorUrl = sandboxTitle:fullUrl{action = 'edit', preload = templateTitle.prefixedText, summary = mirrorSummary}
end
sandboxLinks = message('sandbox-link-display') .. ' ' .. makeToolbar(sandboxCreateLink, mirrorLink)
end
if testcasesTitle.exists then
local testcasesPage = testcasesTitle.prefixedText
local testcasesDisplay = message('testcases-link-display')
local testcasesLink = makeWikilink(testcasesPage, testcasesDisplay)
local testcasesEditUrl = testcasesTitle:fullUrl{action = 'edit'}
local testcasesEditDisplay = message('testcases-edit-link-display')
local testcasesEditLink = makeUrlLink(testcasesEditUrl, testcasesEditDisplay)
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink)
else
local testcasesPreload
if subjectSpace == 828 then
testcasesPreload = message('module-testcases-preload')
else
testcasesPreload = message('template-testcases-preload')
end
local testcasesCreateUrl = testcasesTitle:fullUrl{action = 'edit', preload = testcasesPreload}
local testcasesCreateDisplay = message('testcases-create-link-display')
local testcasesCreateLink = makeUrlLink(testcasesCreateUrl, testcasesCreateDisplay)
testcasesLinks = message('testcases-link-display') .. ' ' .. makeToolbar(testcasesCreateLink)
end
local messageName
if subjectSpace == 828 then
messageName = 'experiment-blurb-module'
else
messageName = 'experiment-blurb-template'
end
return message(messageName, {sandboxLinks, testcasesLinks})
end
function p.makeCategoriesBlurb(args, env)
--[[
-- Generates the text "Please add categories to the /doc subpage."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'doc-link-display' --> '/doc'
-- 'add-categories-blurb' --> 'Please add categories to the $1 subpage.'
--]]
local docTitle = env.docTitle
if not docTitle then
return nil
end
local docPathLink = makeWikilink(docTitle.prefixedText, message('doc-link-display'))
return message('add-categories-blurb', {docPathLink})
end
function p.makeSubpagesBlurb(args, env)
--[[
-- Generates the "Subpages of this template" link.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'template-pagetype' --> 'template'
-- 'module-pagetype' --> 'module'
-- 'default-pagetype' --> 'page'
-- 'subpages-link-display' --> 'Subpages of this $1'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
if not subjectSpace or not templateTitle then
return nil
end
local pagetype
if subjectSpace == 10 then
pagetype = message('template-pagetype')
elseif subjectSpace == 828 then
pagetype = message('module-pagetype')
else
pagetype = message('default-pagetype')
end
local subpagesLink = makeWikilink(
'Special:PrefixIndex/' .. templateTitle.prefixedText .. '/',
message('subpages-link-display', {pagetype})
)
return message('subpages-blurb', {subpagesLink})
end
function p.makePrintBlurb(args, env)
--[=[
-- Generates the blurb displayed when there is a print version of the template available.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'print-link-display' --> '/Print'
-- 'print-blurb' --> 'A [[Help:Books/for experts#Improving the book layout|print version]]'
-- .. ' of this template exists at $1.'
-- .. ' If you make a change to this template, please update the print version as well.'
-- 'display-print-category' --> true
-- 'print-category' --> 'Templates with print versions'
--]=]
local printTitle = env.printTitle
if not printTitle then
return nil
end
local ret
if printTitle.exists then
local printLink = makeWikilink(printTitle.prefixedText, message('print-link-display'))
ret = message('print-blurb', {printLink})
local displayPrintCategory = message('display-print-category', nil, 'boolean')
if displayPrintCategory then
ret = ret .. makeCategoryLink(message('print-category'))
end
end
return ret
end
----------------------------------------------------------------------------
-- Tracking categories
----------------------------------------------------------------------------
function p.addTrackingCategories(env)
--[[
-- Check if {{documentation}} is transcluded on a /doc or /testcases page.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'display-strange-usage-category' --> true
-- 'doc-subpage' --> 'doc'
-- 'testcases-subpage' --> 'testcases'
-- 'strange-usage-category' --> 'Wikipedia pages with strange ((documentation)) usage'
--
-- /testcases pages in the module namespace are not categorised, as they may have
-- {{documentation}} transcluded automatically.
--]]
local title = env.title
local subjectSpace = env.subjectSpace
if not title or not subjectSpace then
return nil
end
local subpage = title.subpageText
local ret = ''
if message('display-strange-usage-category', nil, 'boolean')
and (
subpage == message('doc-subpage')
or subjectSpace ~= 828 and subpage == message('testcases-subpage')
)
then
ret = ret .. makeCategoryLink(message('strange-usage-category'))
end
return ret
end
return p
3pvb1w3yfyy7pn1nzqizw3nbekyi5dq
370437
370434
2026-09-28T09:04:26Z
ChiK
1136
syc from [[en:Module:Documentation]]
370437
Scribunto
text/plain
-- This module implements {{documentation}}.
-- Get required modules.
local getArgs = require('Module:Arguments').getArgs
-- Get the config table.
local cfg = mw.loadData('Module:Documentation/config')
local p = {}
-- Often-used functions.
local ugsub = mw.ustring.gsub
local format = mw.ustring.format
----------------------------------------------------------------------------
-- Helper functions
--
-- These are defined as local functions, but are made available in the p
-- table for testing purposes.
----------------------------------------------------------------------------
local function message(cfgKey, valArray, expectType)
--[[
-- Gets a message from the cfg table and formats it if appropriate.
-- The function raises an error if the value from the cfg table is not
-- of the type expectType. The default type for expectType is 'string'.
-- If the table valArray is present, strings such as $1, $2 etc. in the
-- message are substituted with values from the table keys [1], [2] etc.
-- For example, if the message "foo-message" had the value 'Foo $2 bar $1.',
-- message('foo-message', {'baz', 'qux'}) would return "Foo qux bar baz."
--]]
local msg = cfg[cfgKey]
expectType = expectType or 'string'
if type(msg) ~= expectType then
error('message: type error in message cfg.' .. cfgKey .. ' (' .. expectType .. ' expected, got ' .. type(msg) .. ')', 2)
end
if not valArray then
return msg
end
local function getMessageVal(match)
match = tonumber(match)
return valArray[match] or error('message: no value found for key $' .. match .. ' in message cfg.' .. cfgKey, 4)
end
return ugsub(msg, '$([1-9][0-9]*)', getMessageVal)
end
p.message = message
local function makeWikilink(page, display)
if display then
return format('[[%s|%s]]', page, display)
else
return format('[[%s]]', page)
end
end
p.makeWikilink = makeWikilink
local function makeCategoryLink(cat, sort)
local catns = mw.site.namespaces[14].name
return makeWikilink(catns .. ':' .. cat, sort)
end
p.makeCategoryLink = makeCategoryLink
local function makeUrlLink(url, display)
return format('[%s %s]', url, display)
end
p.makeUrlLink = makeUrlLink
local function makeToolbar(...)
local ret = {}
local lim = select('#', ...)
if lim < 1 then
return nil
end
for i = 1, lim do
ret[#ret + 1] = select(i, ...)
end
-- 'documentation-toolbar'
return format(
'<span class="%s">(%s)</span>',
message('toolbar-class'),
table.concat(ret, ' | ')
)
end
p.makeToolbar = makeToolbar
----------------------------------------------------------------------------
-- Argument processing
----------------------------------------------------------------------------
local function makeInvokeFunc(funcName)
return function (frame)
local args = getArgs(frame, {
valueFunc = function (key, value)
if type(value) == 'string' then
value = value:match('^%s*(.-)%s*$') -- Remove whitespace.
if key == 'heading' or value ~= '' then
return value
else
return nil
end
else
return value
end
end
})
return p[funcName](args)
end
end
----------------------------------------------------------------------------
-- Entry points
----------------------------------------------------------------------------
function p.nonexistent(frame)
if mw.title.getCurrentTitle().subpageText == 'testcases' then
return frame:expandTemplate{title = 'module test cases notice'}
else
return p.main(frame)
end
end
p.main = makeInvokeFunc('_main')
function p._main(args)
--[[
-- This function defines logic flow for the module.
-- @args - table of arguments passed by the user
--]]
local env = p.getEnvironment(args)
local root = mw.html.create()
root
:wikitext(p._getModuleWikitext(args, env))
:wikitext(p.protectionTemplate(env))
:wikitext(p.sandboxNotice(args, env))
:tag('div')
-- 'documentation-container'
:addClass(message('container'))
:attr('role', 'complementary')
:attr('aria-labelledby', args.heading ~= '' and 'documentation-heading' or nil)
:attr('aria-label', args.heading == '' and 'Documentation' or nil)
:newline()
:tag('div')
-- 'documentation'
:addClass(message('main-div-classes'))
:newline()
:wikitext(p._startBox(args, env))
:wikitext(p._content(args, env))
:tag('div')
-- 'documentation-clear'
:addClass(message('clear'))
:done()
:newline()
:done()
:wikitext(p._endBox(args, env))
:done()
:wikitext(p.addTrackingCategories(env))
-- 'Module:Documentation/styles.css'
return mw.getCurrentFrame():extensionTag (
'templatestyles', '', {src=cfg['templatestyles']
}) .. tostring(root)
end
----------------------------------------------------------------------------
-- Environment settings
----------------------------------------------------------------------------
function p.getEnvironment(args)
--[[
-- Returns a table with information about the environment, including title
-- objects and other namespace- or path-related data.
-- @args - table of arguments passed by the user
--
-- Title objects include:
-- env.title - the page we are making documentation for (usually the current title)
-- env.templateTitle - the template (or module, file, etc.)
-- env.docTitle - the /doc subpage.
-- env.sandboxTitle - the /sandbox subpage.
-- env.testcasesTitle - the /testcases subpage.
--
-- Data includes:
-- env.protectionLevels - the protection levels table of the title object.
-- env.subjectSpace - the number of the title's subject namespace.
-- env.docSpace - the number of the namespace the title puts its documentation in.
-- env.docpageBase - the text of the base page of the /doc, /sandbox and /testcases pages, with namespace.
-- env.compareUrl - URL of the Special:ComparePages page comparing the sandbox with the template.
--
-- All table lookups are passed through pcall so that errors are caught. If an error occurs, the value
-- returned will be nil.
--]]
local env, envFuncs = {}, {}
-- Set up the metatable. If triggered we call the corresponding function in the envFuncs table. The value
-- returned by that function is memoized in the env table so that we don't call any of the functions
-- more than once. (Nils won't be memoized.)
setmetatable(env, {
__index = function (t, key)
local envFunc = envFuncs[key]
if envFunc then
local success, val = pcall(envFunc)
if success then
env[key] = val -- Memoise the value.
return val
end
end
return nil
end
})
function envFuncs.title()
-- The title object for the current page, or a test page passed with args.page.
local title
local titleArg = args.page
if titleArg then
title = mw.title.new(titleArg)
else
title = mw.title.getCurrentTitle()
end
return title
end
function envFuncs.templateTitle()
--[[
-- The template (or module, etc.) title object.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
-- 'testcases-subpage' --> 'testcases'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local subpage = title.subpageText
if subpage == message('sandbox-subpage') or subpage == message('testcases-subpage') or (subpage == message('doc-subpage') and mw.title.getCurrentTitle().namespace == env.docSpace) then
return mw.title.makeTitle(subjectSpace, title.baseText)
else
return mw.title.makeTitle(subjectSpace, title.text)
end
end
function envFuncs.docTitle()
--[[
-- Title object of the /doc subpage.
-- Messages:
-- 'doc-subpage' --> 'doc'
--]]
local title = env.title
local docname = args[1] -- User-specified doc page.
local docpage
if docname then
docpage = docname
else
docpage = env.docpageBase .. '/' .. message('doc-subpage')
end
return mw.title.new(docpage)
end
function envFuncs.sandboxTitle()
--[[
-- Title object for the /sandbox subpage.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('sandbox-subpage'))
end
function envFuncs.testcasesTitle()
--[[
-- Title object for the /testcases subpage.
-- Messages:
-- 'testcases-subpage' --> 'testcases'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('testcases-subpage'))
end
function envFuncs.protectionLevels()
-- The protection levels table of the title object.
return env.title.protectionLevels
end
function envFuncs.subjectSpace()
-- The subject namespace number.
return mw.site.namespaces[env.title.namespace].subject.id
end
function envFuncs.docSpace()
-- The documentation namespace number. For most namespaces this is the
-- same as the subject namespace. However, pages in the Article, File,
-- MediaWiki or Category namespaces must have their /doc, /sandbox and
-- /testcases pages in talk space.
local subjectSpace = env.subjectSpace
if subjectSpace == 0 or subjectSpace == 6 or subjectSpace == 8 or subjectSpace == 14 then
return subjectSpace + 1
else
return subjectSpace
end
end
function envFuncs.docpageBase()
-- The base page of the /doc, /sandbox, and /testcases subpages.
-- For some namespaces this is the talk page, rather than the template page.
local templateTitle = env.templateTitle
local docSpace = env.docSpace
local docSpaceText = mw.site.namespaces[docSpace].name
-- Assemble the link. docSpace is never the main namespace, so we can hardcode the colon.
return docSpaceText .. ':' .. templateTitle.text
end
function envFuncs.compareUrl()
-- Diff link between the sandbox and the main template using [[Special:ComparePages]].
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
if templateTitle.exists and sandboxTitle.exists then
local compareUrl = mw.uri.canonicalUrl(
'Special:ComparePages',
{ page1 = templateTitle.prefixedText, page2 = sandboxTitle.prefixedText}
)
return tostring(compareUrl)
else
return nil
end
end
return env
end
----------------------------------------------------------------------------
-- Auxiliary templates
----------------------------------------------------------------------------
p.getModuleWikitext = makeInvokeFunc('_getModuleWikitext')
function p._getModuleWikitext(args, env)
local currentTitle = mw.title.getCurrentTitle()
if currentTitle.contentModel ~= 'Scribunto' then return end
pcall(require, currentTitle.prefixedText) -- if it fails, we don't care
local moduleWikitext = package.loaded["Module:Module wikitext"]
if moduleWikitext then
return moduleWikitext.main()
end
end
function p.sandboxNotice(args, env)
--[=[
-- Generates a sandbox notice for display above sandbox pages.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-notice-image' --> '[[File:Sandbox.svg|50px|alt=|link=]]'
-- 'sandbox-notice-blurb' --> 'This is the $1 for $2.'
-- 'sandbox-notice-diff-blurb' --> 'This is the $1 for $2 ($3).'
-- 'sandbox-notice-pagetype-template' --> '[[Wikipedia:Template test cases|template sandbox]] page'
-- 'sandbox-notice-pagetype-module' --> '[[Wikipedia:Template test cases|module sandbox]] page'
-- 'sandbox-notice-pagetype-other' --> 'sandbox page'
-- 'sandbox-notice-compare-link-display' --> 'diff'
-- 'sandbox-notice-testcases-blurb' --> 'See also the companion subpage for $1.'
-- 'sandbox-notice-testcases-link-display' --> 'test cases'
-- 'sandbox-category' --> 'Template sandboxes'
-- 'module-sandbox-category' --> 'Module sandboxes'
-- 'other-sandbox-category' --> 'Sandboxes outside of template or module namespace'
--]=]
local title = env.title
local sandboxTitle = env.sandboxTitle
local templateTitle = env.templateTitle
local subjectSpace = env.subjectSpace
if not (subjectSpace and title and sandboxTitle and templateTitle
and mw.title.equals(title, sandboxTitle)) then
return nil
end
-- Build the table of arguments to pass to {{ombox}}. We need just two fields, "image" and "text".
local omargs = {}
omargs.image = message('sandbox-notice-image')
-- Get the text. We start with the opening blurb, which is something like
-- "This is the template sandbox for [[Template:Foo]] (diff)."
local text = '__EXPECTUNUSEDTEMPLATE__'
local pagetype, sandboxCat
if subjectSpace == 10 then
pagetype = message('sandbox-notice-pagetype-template')
sandboxCat = message('sandbox-category')
elseif subjectSpace == 828 then
pagetype = message('sandbox-notice-pagetype-module')
sandboxCat = message('module-sandbox-category')
else
pagetype = message('sandbox-notice-pagetype-other')
sandboxCat = message('other-sandbox-category')
end
local templateLink = makeWikilink(templateTitle.prefixedText)
local compareUrl = env.compareUrl
if compareUrl then
local compareDisplay = message('sandbox-notice-compare-link-display')
local compareLink = makeUrlLink(compareUrl, compareDisplay)
text = text .. message('sandbox-notice-diff-blurb', {pagetype, templateLink, compareLink})
else
text = text .. message('sandbox-notice-blurb', {pagetype, templateLink})
end
-- Get the test cases page blurb if the page exists. This is something like
-- "See also the companion subpage for [[Template:Foo/testcases|test cases]]."
local testcasesTitle = env.testcasesTitle
if testcasesTitle and testcasesTitle.exists then
if testcasesTitle.contentModel == "Scribunto" then
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesRunLinkDisplay = message('sandbox-notice-testcases-run-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-run-blurb', {testcasesLink, testcasesRunLink})
else
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-blurb', {testcasesLink})
end
end
-- Add the sandbox to the sandbox category.
omargs.text = text .. makeCategoryLink(sandboxCat)
-- 'documentation-clear'
return '<div class="' .. message('clear') .. '"></div>'
.. require('Module:Message box').main('ombox', omargs)
end
function p.protectionTemplate(env)
-- Generates the padlock icon in the top right.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'protection-template' --> 'pp-template'
-- 'protection-template-args' --> {docusage = 'yes'}
local protectionLevels = env.protectionLevels
if not protectionLevels then
return nil
end
local editProt = protectionLevels.edit and protectionLevels.edit[1]
local moveProt = protectionLevels.move and protectionLevels.move[1]
if editProt then
-- The page is edit-protected.
return require('Module:Protection banner')._main{
message('protection-reason-edit'), small = true
}
elseif moveProt and moveProt ~= 'autoconfirmed' then
-- The page is move-protected but not edit-protected. Exclude move
-- protection with the level "autoconfirmed", as this is equivalent to
-- no move protection at all.
return require('Module:Protection banner')._main{
action = 'move', small = true
}
else
return nil
end
end
----------------------------------------------------------------------------
-- Start box
----------------------------------------------------------------------------
p.startBox = makeInvokeFunc('_startBox')
function p._startBox(args, env)
--[[
-- This function generates the start box.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- The actual work is done by p.makeStartBoxLinksData and p.renderStartBoxLinks which make
-- the [view] [edit] [history] [purge] links, and by p.makeStartBoxData and p.renderStartBox
-- which generate the box HTML.
--]]
env = env or p.getEnvironment(args)
local links
local content = args.content
if not content or args[1] then
-- No need to include the links if the documentation is on the template page itself.
local linksData = p.makeStartBoxLinksData(args, env)
if linksData then
links = p.renderStartBoxLinks(linksData)
end
end
-- Generate the start box html.
local data = p.makeStartBoxData(args, env, links)
if data then
return p.renderStartBox(data)
else
-- User specified no heading.
return nil
end
end
function p.makeStartBoxLinksData(args, env)
--[[
-- Does initial processing of data to make the [view] [edit] [history] [purge] links.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'view-link-display' --> 'view'
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'purge-link-display' --> 'purge'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'docpage-preload' --> 'Template:Documentation/preload'
-- 'create-link-display' --> 'create'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local docTitle = env.docTitle
if not title or not docTitle then
return nil
end
if docTitle.isRedirect then
docTitle = docTitle.redirectTarget
end
-- Create link if /doc doesn't exist.
local preload = args.preload
if not preload then
if subjectSpace == 828 then -- Module namespace
preload = message('module-preload')
else
preload = message('docpage-preload')
end
end
return {
title = title,
docTitle = docTitle,
-- View, display, edit, and purge links if /doc exists.
viewLinkDisplay = message('view-link-display'),
editLinkDisplay = message('edit-link-display'),
historyLinkDisplay = message('history-link-display'),
purgeLinkDisplay = message('purge-link-display'),
preload = preload,
createLinkDisplay = message('create-link-display')
}
end
function p.renderStartBoxLinks(data)
--[[
-- Generates the [view][edit][history][purge] or [create][purge] links from the data table.
-- @data - a table of data generated by p.makeStartBoxLinksData
--]]
local docTitle = data.docTitle
-- yes, we do intend to purge the template page on which the documentation appears
local purgeLink = makeWikilink("Special:Purge/" .. data.title.prefixedText, data.purgeLinkDisplay)
if docTitle.exists then
local viewLink = makeWikilink(docTitle.prefixedText, data.viewLinkDisplay)
local editLink = makeWikilink("Special:EditPage/" .. docTitle.prefixedText, data.editLinkDisplay)
local historyLink = makeWikilink("Special:PageHistory/" .. docTitle.prefixedText, data.historyLinkDisplay)
return viewLink .. editLink .. historyLink .. purgeLink
else
local createLink = makeUrlLink(docTitle:canonicalUrl{action = 'edit', preload = data.preload}, data.createLinkDisplay)
return createLink .. purgeLink
end
return ret
end
function p.makeStartBoxData(args, env, links)
--[=[
-- Does initial processing of data to pass to the start-box render function, p.renderStartBox.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- @links - a string containing the [view][edit][history][purge] links - could be nil if there's an error.
--
-- Messages:
-- 'documentation-icon-wikitext' --> '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]]'
-- 'template-namespace-heading' --> 'Template documentation'
-- 'module-namespace-heading' --> 'Module documentation'
-- 'file-namespace-heading' --> 'Summary'
-- 'other-namespaces-heading' --> 'Documentation'
-- 'testcases-create-link-display' --> 'create'
--]=]
local subjectSpace = env.subjectSpace
if not subjectSpace then
-- Default to an "other namespaces" namespace, so that we get at least some output
-- if an error occurs.
subjectSpace = 2
end
local data = {}
-- Heading
local heading = args.heading -- Blank values are not removed.
if heading == '' then
-- Don't display the start box if the heading arg is defined but blank.
return nil
end
if heading then
data.heading = heading
elseif subjectSpace == 10 then -- Template namespace
data.heading = message('documentation-icon-wikitext') .. ' ' .. message('template-namespace-heading')
elseif subjectSpace == 828 then -- Module namespace
data.heading = message('documentation-icon-wikitext') .. ' ' .. message('module-namespace-heading')
elseif subjectSpace == 6 then -- File namespace
data.heading = message('file-namespace-heading')
else
data.heading = message('other-namespaces-heading')
end
-- Heading CSS
local headingStyle = args['heading-style']
if headingStyle then
data.headingStyleText = headingStyle
else
-- 'documentation-heading'
data.headingClass = message('main-div-heading-class')
end
-- Data for the [view][edit][history][purge] or [create] links.
if links then
-- 'mw-editsection-like plainlinks'
data.linksClass = message('start-box-link-classes')
data.links = links
end
return data
end
function p.renderStartBox(data)
-- Renders the start box html.
-- @data - a table of data generated by p.makeStartBoxData.
local sbox = mw.html.create('div')
sbox
-- 'documentation-startbox'
:addClass(message('start-box-class'))
:newline()
:tag('span')
:addClass(data.headingClass)
:attr('id', 'documentation-heading')
:cssText(data.headingStyleText)
:wikitext(data.heading)
local links = data.links
if links then
sbox:tag('span')
:addClass(data.linksClass)
:attr('id', data.linksId)
:wikitext(links)
end
return tostring(sbox)
end
----------------------------------------------------------------------------
-- Documentation content
----------------------------------------------------------------------------
p.content = makeInvokeFunc('_content')
function p._content(args, env)
-- Displays the documentation contents
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
local content = args.content
if not content and docTitle and docTitle.exists then
content = args._content or mw.getCurrentFrame():expandTemplate{title = docTitle.prefixedText}
end
-- The line breaks below are necessary so that "=== Headings ===" at the start and end
-- of docs are interpreted correctly.
return '\n' .. (content or '') .. '\n'
end
p.contentTitle = makeInvokeFunc('_contentTitle')
function p._contentTitle(args, env)
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
if not args.content and docTitle and docTitle.exists then
return docTitle.prefixedText
else
return ''
end
end
----------------------------------------------------------------------------
-- End box
----------------------------------------------------------------------------
p.endBox = makeInvokeFunc('_endBox')
function p._endBox(args, env)
--[=[
-- This function generates the end box (also known as the link box).
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
--]=]
-- Get environment data.
env = env or p.getEnvironment(args)
local subjectSpace = env.subjectSpace
local docTitle = env.docTitle
if not subjectSpace or not docTitle then
return nil
end
-- Check whether we should output the end box at all. Add the end
-- box by default if the documentation exists or if we are in the
-- user, module or template namespaces.
local linkBox = args['link box']
if linkBox == 'off'
or not (
docTitle.exists
or subjectSpace == 2
or subjectSpace == 828
or subjectSpace == 10
)
then
return nil
end
-- Assemble the link box.
local text = ''
if linkBox then
text = text .. linkBox
else
text = text .. (p.makeDocPageBlurb(args, env) or '') -- "This documentation is transcluded from [[Foo]]."
if subjectSpace == 2 or subjectSpace == 10 or subjectSpace == 828 then
-- We are in the user, template or module namespaces.
-- Add sandbox and testcases links.
-- "Editors can experiment in this template's sandbox and testcases pages."
text = text .. (p.makeExperimentBlurb(args, env) or '') .. '<br />'
if not args.content and not args[1] then
-- "Please add categories to the /doc subpage."
-- Don't show this message with inline docs or with an explicitly specified doc page,
-- as then it is unclear where to add the categories.
text = text .. (p.makeCategoriesBlurb(args, env) or '')
end
text = text .. ' ' .. (p.makeSubpagesBlurb(args, env) or '') --"Subpages of this template"
end
end
local box = mw.html.create('div')
-- 'documentation-metadata'
box:attr('role', 'note')
:addClass(message('end-box-class'))
-- 'plainlinks'
:addClass(message('end-box-plainlinks'))
:wikitext(text)
:done()
return '\n' .. tostring(box)
end
function p.makeDocPageBlurb(args, env)
--[=[
-- Makes the blurb "This documentation is transcluded from [[Template:Foo]] (edit, history)".
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'transcluded-from-blurb' -->
-- 'The above [[Wikipedia:Template documentation|documentation]]
-- is [[Help:Transclusion|transcluded]] from $1.'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'create-link-display' --> 'create'
-- 'create-module-doc-blurb' -->
-- 'You might want to $1 a documentation page for this [[Wikipedia:Lua|Scribunto module]].'
--]=]
local docTitle = env.docTitle
if not docTitle then
return nil
end
if docTitle.exists then
-- /doc exists; link to it.
local docLink = makeWikilink(docTitle.prefixedText)
local editDisplay = message('edit-link-display')
local editLink = makeWikilink("Special:EditPage/" .. docTitle.prefixedText, editDisplay)
local historyDisplay = message('history-link-display')
local historyLink = makeWikilink("Special:PageHistory/" .. docTitle.prefixedText, historyDisplay)
return message('transcluded-from-blurb', {docLink})
.. ' '
.. makeToolbar(editLink, historyLink)
.. '<br />'
elseif env.subjectSpace == 828 then
-- /doc does not exist; ask to create it.
local createUrl = docTitle:canonicalUrl{action = 'edit', preload = message('module-preload')}
local createDisplay = message('create-link-display')
local createLink = makeUrlLink(createUrl, createDisplay)
return message('create-module-doc-blurb', {createLink})
.. '<br />'
end
end
function p.makeExperimentBlurb(args, env)
--[[
-- Renders the text "Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-link-display' --> 'sandbox'
-- 'sandbox-edit-link-display' --> 'edit'
-- 'compare-link-display' --> 'diff'
-- 'module-sandbox-preload' --> 'Template:Documentation/preload-module-sandbox'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'sandbox-create-link-display' --> 'create'
-- 'mirror-edit-summary' --> 'Create sandbox version of $1'
-- 'mirror-link-display' --> 'mirror'
-- 'mirror-link-preload' --> 'Template:Documentation/mirror'
-- 'sandbox-link-display' --> 'sandbox'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display'--> 'edit'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'testcases-create-link-display' --> 'create'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display' --> 'edit'
-- 'module-testcases-preload' --> 'Template:Documentation/preload-module-testcases'
-- 'template-testcases-preload' --> 'Template:Documentation/preload-testcases'
-- 'experiment-blurb-module' --> 'Editors can experiment in this module's $1 and $2 pages.'
-- 'experiment-blurb-template' --> 'Editors can experiment in this template's $1 and $2 pages.'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
local testcasesTitle = env.testcasesTitle
local templatePage = templateTitle.prefixedText
if not subjectSpace or not templateTitle or not sandboxTitle or not testcasesTitle then
return nil
end
-- Make links.
local sandboxLinks, testcasesLinks
if sandboxTitle.exists then
local sandboxPage = sandboxTitle.prefixedText
local sandboxDisplay = message('sandbox-link-display')
local sandboxLink = makeWikilink(sandboxPage, sandboxDisplay)
local sandboxEditDisplay = message('sandbox-edit-link-display')
local sandboxEditLink = makeWikilink("Special:EditPage/" .. sandboxPage, sandboxEditDisplay)
local compareUrl = env.compareUrl
local compareLink
if compareUrl then
local compareDisplay = message('compare-link-display')
compareLink = makeUrlLink(compareUrl, compareDisplay)
end
sandboxLinks = sandboxLink .. ' ' .. makeToolbar(sandboxEditLink, compareLink)
else
local sandboxPreload
if subjectSpace == 828 then
sandboxPreload = message('module-sandbox-preload')
else
sandboxPreload = message('template-sandbox-preload')
end
local sandboxCreateUrl = sandboxTitle:canonicalUrl{action = 'edit', preload = sandboxPreload}
local sandboxCreateDisplay = message('sandbox-create-link-display')
local sandboxCreateLink = makeUrlLink(sandboxCreateUrl, sandboxCreateDisplay)
local mirrorSummary = message('mirror-edit-summary', {makeWikilink(templatePage)})
local mirrorPreload = message('mirror-link-preload')
local mirrorUrl = sandboxTitle:canonicalUrl{action = 'edit', preload = mirrorPreload, summary = mirrorSummary}
if subjectSpace == 828 then
mirrorUrl = sandboxTitle:canonicalUrl{action = 'edit', preload = templateTitle.prefixedText, summary = mirrorSummary}
end
local mirrorDisplay = message('mirror-link-display')
local mirrorLink = makeUrlLink(mirrorUrl, mirrorDisplay)
sandboxLinks = message('sandbox-link-display') .. ' ' .. makeToolbar(sandboxCreateLink, mirrorLink)
end
if testcasesTitle.exists then
local testcasesPage = testcasesTitle.prefixedText
local testcasesDisplay = message('testcases-link-display')
local testcasesLink = makeWikilink(testcasesPage, testcasesDisplay)
local testcasesEditUrl = testcasesTitle:canonicalUrl{action = 'edit'}
local testcasesEditDisplay = message('testcases-edit-link-display')
local testcasesEditLink = makeWikilink("Special:EditPage/" .. testcasesPage, testcasesEditDisplay)
-- for Modules, add testcases run link if exists
if testcasesTitle.contentModel == "Scribunto" and testcasesTitle.talkPageTitle and testcasesTitle.talkPageTitle.exists then
local testcasesRunLinkDisplay = message('testcases-run-link-display')
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink, testcasesRunLink)
else
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink)
end
else
local testcasesPreload
if subjectSpace == 828 then
testcasesPreload = message('module-testcases-preload')
else
testcasesPreload = message('template-testcases-preload')
end
local testcasesCreateUrl = testcasesTitle:canonicalUrl{action = 'edit', preload = testcasesPreload}
local testcasesCreateDisplay = message('testcases-create-link-display')
local testcasesCreateLink = makeUrlLink(testcasesCreateUrl, testcasesCreateDisplay)
testcasesLinks = message('testcases-link-display') .. ' ' .. makeToolbar(testcasesCreateLink)
end
local messageName
if subjectSpace == 828 then
messageName = 'experiment-blurb-module'
else
messageName = 'experiment-blurb-template'
end
return message(messageName, {sandboxLinks, testcasesLinks})
end
function p.makeCategoriesBlurb(args, env)
--[[
-- Generates the text "Please add categories to the /doc subpage."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'doc-link-display' --> '/doc'
-- 'add-categories-blurb' --> 'Please add categories to the $1 subpage.'
--]]
local docTitle = env.docTitle
if not docTitle then
return nil
end
local docPathLink = makeWikilink(docTitle.prefixedText, message('doc-link-display'))
return message('add-categories-blurb', {docPathLink})
end
function p.makeSubpagesBlurb(args, env)
--[[
-- Generates the "Subpages of this template" link.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'template-pagetype' --> 'template'
-- 'module-pagetype' --> 'module'
-- 'default-pagetype' --> 'page'
-- 'subpages-link-display' --> 'Subpages of this $1'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
if not subjectSpace or not templateTitle then
return nil
end
local pagetype
if subjectSpace == 10 then
pagetype = message('template-pagetype')
elseif subjectSpace == 828 then
pagetype = message('module-pagetype')
else
pagetype = message('default-pagetype')
end
local subpagesLink = makeWikilink(
'Special:PrefixIndex/' .. templateTitle.prefixedText .. '/',
message('subpages-link-display', {pagetype})
)
return message('subpages-blurb', {subpagesLink})
end
----------------------------------------------------------------------------
-- Tracking categories
----------------------------------------------------------------------------
function p.addTrackingCategories(env)
--[[
-- Check if {{documentation}} is transcluded on a /doc or /testcases page.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'display-strange-usage-category' --> true
-- 'doc-subpage' --> 'doc'
-- 'testcases-subpage' --> 'testcases'
-- 'strange-usage-category' --> 'Wikipedia pages with strange ((documentation)) usage'
--
-- /testcases pages in the module namespace are not categorised, as they may have
-- {{documentation}} transcluded automatically.
--]]
local title = env.title
local subjectSpace = env.subjectSpace
if not title or not subjectSpace then
return nil
end
local subpage = title.subpageText
if message('display-strange-usage-category', nil, 'boolean')
and (
subpage == message('doc-subpage')
or subjectSpace ~= 828 and subpage == message('testcases-subpage')
)
then
return makeCategoryLink(message('strange-usage-category'))
end
return ''
end
return p
bo74oekmmsj1xtpw7dlzkvkhc0k05g6
ಮೋಡ್ಯೂಲ್:Arguments
828
5068
370360
122353
2025-04-27T20:14:11Z
meta>Pppery
0
Protected "[[Module:Arguments]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
122352
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
370361
370360
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Arguments]]
122352
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
ಮೋಡ್ಯೂಲ್:Category handler
828
5069
370370
132465
2025-04-27T20:02:12Z
meta>Pppery
0
Protected "[[Module:Category handler]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
60080
Scribunto
text/plain
--------------------------------------------------------------------------------
-- --
-- CATEGORY HANDLER --
-- --
-- This module implements the {{category handler}} template in Lua, --
-- with a few improvements: all namespaces and all namespace aliases --
-- are supported, and namespace names are detected automatically for --
-- the local wiki. This module requires [[Module:Namespace detect]] --
-- and [[Module:Yesno]] to be available on the local wiki. It can be --
-- configured for different wikis by altering the values in --
-- [[Module:Category handler/config]], and pages can be blacklisted --
-- from categorisation by using [[Module:Category handler/blacklist]]. --
-- --
--------------------------------------------------------------------------------
-- Load required modules
local yesno = require('Module:Yesno')
-- Lazily load things we don't always need
local mShared, mappings
local p = {}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function trimWhitespace(s, removeBlanks)
if type(s) ~= 'string' then
return s
end
s = s:match('^%s*(.-)%s*$')
if removeBlanks then
if s ~= '' then
return s
else
return nil
end
else
return s
end
end
--------------------------------------------------------------------------------
-- CategoryHandler class
--------------------------------------------------------------------------------
local CategoryHandler = {}
CategoryHandler.__index = CategoryHandler
function CategoryHandler.new(data, args)
local obj = setmetatable({ _data = data, _args = args }, CategoryHandler)
-- Set the title object
do
local pagename = obj:parameter('demopage')
local success, titleObj
if pagename then
success, titleObj = pcall(mw.title.new, pagename)
end
if success and titleObj then
obj.title = titleObj
if titleObj == mw.title.getCurrentTitle() then
obj._usesCurrentTitle = true
end
else
obj.title = mw.title.getCurrentTitle()
obj._usesCurrentTitle = true
end
end
-- Set suppression parameter values
for _, key in ipairs{'nocat', 'categories'} do
local value = obj:parameter(key)
value = trimWhitespace(value, true)
obj['_' .. key] = yesno(value)
end
do
local subpage = obj:parameter('subpage')
local category2 = obj:parameter('category2')
if type(subpage) == 'string' then
subpage = mw.ustring.lower(subpage)
end
if type(category2) == 'string' then
subpage = mw.ustring.lower(category2)
end
obj._subpage = trimWhitespace(subpage, true)
obj._category2 = trimWhitespace(category2) -- don't remove blank values
end
return obj
end
function CategoryHandler:parameter(key)
local parameterNames = self._data.parameters[key]
local pntype = type(parameterNames)
if pntype == 'string' or pntype == 'number' then
return self._args[parameterNames]
elseif pntype == 'table' then
for _, name in ipairs(parameterNames) do
local value = self._args[name]
if value ~= nil then
return value
end
end
return nil
else
error(string.format(
'invalid config key "%s"',
tostring(key)
), 2)
end
end
function CategoryHandler:isSuppressedByArguments()
return
-- See if a category suppression argument has been set.
self._nocat == true
or self._categories == false
or (
self._category2
and self._category2 ~= self._data.category2Yes
and self._category2 ~= self._data.category2Negative
)
-- Check whether we are on a subpage, and see if categories are
-- suppressed based on our subpage status.
or self._subpage == self._data.subpageNo and self.title.isSubpage
or self._subpage == self._data.subpageOnly and not self.title.isSubpage
end
function CategoryHandler:shouldSkipBlacklistCheck()
-- Check whether the category suppression arguments indicate we
-- should skip the blacklist check.
return self._nocat == false
or self._categories == true
or self._category2 == self._data.category2Yes
end
function CategoryHandler:matchesBlacklist()
if self._usesCurrentTitle then
return self._data.currentTitleMatchesBlacklist
else
mShared = mShared or require('Module:Category handler/shared')
return mShared.matchesBlacklist(
self.title.prefixedText,
mw.loadData('Module:Category handler/blacklist')
)
end
end
function CategoryHandler:isSuppressed()
-- Find if categories are suppressed by either the arguments or by
-- matching the blacklist.
return self:isSuppressedByArguments()
or not self:shouldSkipBlacklistCheck() and self:matchesBlacklist()
end
function CategoryHandler:getNamespaceParameters()
if self._usesCurrentTitle then
return self._data.currentTitleNamespaceParameters
else
if not mappings then
mShared = mShared or require('Module:Category handler/shared')
mappings = mShared.getParamMappings(true) -- gets mappings with mw.loadData
end
return mShared.getNamespaceParameters(
self.title,
mappings
)
end
end
function CategoryHandler:namespaceParametersExist()
-- Find whether any namespace parameters have been specified.
-- We use the order "all" --> namespace params --> "other" as this is what
-- the old template did.
if self:parameter('all') then
return true
end
if not mappings then
mShared = mShared or require('Module:Category handler/shared')
mappings = mShared.getParamMappings(true) -- gets mappings with mw.loadData
end
for ns, params in pairs(mappings) do
for i, param in ipairs(params) do
if self._args[param] then
return true
end
end
end
if self:parameter('other') then
return true
end
return false
end
function CategoryHandler:getCategories()
local params = self:getNamespaceParameters()
local nsCategory
for i, param in ipairs(params) do
local value = self._args[param]
if value ~= nil then
nsCategory = value
break
end
end
if nsCategory ~= nil or self:namespaceParametersExist() then
-- Namespace parameters exist - advanced usage.
if nsCategory == nil then
nsCategory = self:parameter('other')
end
local ret = {self:parameter('all')}
local numParam = tonumber(nsCategory)
if numParam and numParam >= 1 and math.floor(numParam) == numParam then
-- nsCategory is an integer
ret[#ret + 1] = self._args[numParam]
else
ret[#ret + 1] = nsCategory
end
if #ret < 1 then
return nil
else
return table.concat(ret)
end
elseif self._data.defaultNamespaces[self.title.namespace] then
-- Namespace parameters don't exist, simple usage.
return self._args[1]
end
return nil
end
--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------
local p = {}
function p._exportClasses()
-- Used for testing purposes.
return {
CategoryHandler = CategoryHandler
}
end
function p._main(args, data)
data = data or mw.loadData('Module:Category handler/data')
local handler = CategoryHandler.new(data, args)
if handler:isSuppressed() then
return nil
end
return handler:getCategories()
end
function p.main(frame, data)
data = data or mw.loadData('Module:Category handler/data')
local args = require('Module:Arguments').getArgs(frame, {
wrappers = data.wrappers,
valueFunc = function (k, v)
v = trimWhitespace(v)
if type(k) == 'number' then
if v ~= '' then
return v
else
return nil
end
else
return v
end
end
})
return p._main(args, data)
end
return p
letwavu3yvlayfzew66uuwixmwebq5b
370371
370370
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Category_handler]]
60080
Scribunto
text/plain
--------------------------------------------------------------------------------
-- --
-- CATEGORY HANDLER --
-- --
-- This module implements the {{category handler}} template in Lua, --
-- with a few improvements: all namespaces and all namespace aliases --
-- are supported, and namespace names are detected automatically for --
-- the local wiki. This module requires [[Module:Namespace detect]] --
-- and [[Module:Yesno]] to be available on the local wiki. It can be --
-- configured for different wikis by altering the values in --
-- [[Module:Category handler/config]], and pages can be blacklisted --
-- from categorisation by using [[Module:Category handler/blacklist]]. --
-- --
--------------------------------------------------------------------------------
-- Load required modules
local yesno = require('Module:Yesno')
-- Lazily load things we don't always need
local mShared, mappings
local p = {}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function trimWhitespace(s, removeBlanks)
if type(s) ~= 'string' then
return s
end
s = s:match('^%s*(.-)%s*$')
if removeBlanks then
if s ~= '' then
return s
else
return nil
end
else
return s
end
end
--------------------------------------------------------------------------------
-- CategoryHandler class
--------------------------------------------------------------------------------
local CategoryHandler = {}
CategoryHandler.__index = CategoryHandler
function CategoryHandler.new(data, args)
local obj = setmetatable({ _data = data, _args = args }, CategoryHandler)
-- Set the title object
do
local pagename = obj:parameter('demopage')
local success, titleObj
if pagename then
success, titleObj = pcall(mw.title.new, pagename)
end
if success and titleObj then
obj.title = titleObj
if titleObj == mw.title.getCurrentTitle() then
obj._usesCurrentTitle = true
end
else
obj.title = mw.title.getCurrentTitle()
obj._usesCurrentTitle = true
end
end
-- Set suppression parameter values
for _, key in ipairs{'nocat', 'categories'} do
local value = obj:parameter(key)
value = trimWhitespace(value, true)
obj['_' .. key] = yesno(value)
end
do
local subpage = obj:parameter('subpage')
local category2 = obj:parameter('category2')
if type(subpage) == 'string' then
subpage = mw.ustring.lower(subpage)
end
if type(category2) == 'string' then
subpage = mw.ustring.lower(category2)
end
obj._subpage = trimWhitespace(subpage, true)
obj._category2 = trimWhitespace(category2) -- don't remove blank values
end
return obj
end
function CategoryHandler:parameter(key)
local parameterNames = self._data.parameters[key]
local pntype = type(parameterNames)
if pntype == 'string' or pntype == 'number' then
return self._args[parameterNames]
elseif pntype == 'table' then
for _, name in ipairs(parameterNames) do
local value = self._args[name]
if value ~= nil then
return value
end
end
return nil
else
error(string.format(
'invalid config key "%s"',
tostring(key)
), 2)
end
end
function CategoryHandler:isSuppressedByArguments()
return
-- See if a category suppression argument has been set.
self._nocat == true
or self._categories == false
or (
self._category2
and self._category2 ~= self._data.category2Yes
and self._category2 ~= self._data.category2Negative
)
-- Check whether we are on a subpage, and see if categories are
-- suppressed based on our subpage status.
or self._subpage == self._data.subpageNo and self.title.isSubpage
or self._subpage == self._data.subpageOnly and not self.title.isSubpage
end
function CategoryHandler:shouldSkipBlacklistCheck()
-- Check whether the category suppression arguments indicate we
-- should skip the blacklist check.
return self._nocat == false
or self._categories == true
or self._category2 == self._data.category2Yes
end
function CategoryHandler:matchesBlacklist()
if self._usesCurrentTitle then
return self._data.currentTitleMatchesBlacklist
else
mShared = mShared or require('Module:Category handler/shared')
return mShared.matchesBlacklist(
self.title.prefixedText,
mw.loadData('Module:Category handler/blacklist')
)
end
end
function CategoryHandler:isSuppressed()
-- Find if categories are suppressed by either the arguments or by
-- matching the blacklist.
return self:isSuppressedByArguments()
or not self:shouldSkipBlacklistCheck() and self:matchesBlacklist()
end
function CategoryHandler:getNamespaceParameters()
if self._usesCurrentTitle then
return self._data.currentTitleNamespaceParameters
else
if not mappings then
mShared = mShared or require('Module:Category handler/shared')
mappings = mShared.getParamMappings(true) -- gets mappings with mw.loadData
end
return mShared.getNamespaceParameters(
self.title,
mappings
)
end
end
function CategoryHandler:namespaceParametersExist()
-- Find whether any namespace parameters have been specified.
-- We use the order "all" --> namespace params --> "other" as this is what
-- the old template did.
if self:parameter('all') then
return true
end
if not mappings then
mShared = mShared or require('Module:Category handler/shared')
mappings = mShared.getParamMappings(true) -- gets mappings with mw.loadData
end
for ns, params in pairs(mappings) do
for i, param in ipairs(params) do
if self._args[param] then
return true
end
end
end
if self:parameter('other') then
return true
end
return false
end
function CategoryHandler:getCategories()
local params = self:getNamespaceParameters()
local nsCategory
for i, param in ipairs(params) do
local value = self._args[param]
if value ~= nil then
nsCategory = value
break
end
end
if nsCategory ~= nil or self:namespaceParametersExist() then
-- Namespace parameters exist - advanced usage.
if nsCategory == nil then
nsCategory = self:parameter('other')
end
local ret = {self:parameter('all')}
local numParam = tonumber(nsCategory)
if numParam and numParam >= 1 and math.floor(numParam) == numParam then
-- nsCategory is an integer
ret[#ret + 1] = self._args[numParam]
else
ret[#ret + 1] = nsCategory
end
if #ret < 1 then
return nil
else
return table.concat(ret)
end
elseif self._data.defaultNamespaces[self.title.namespace] then
-- Namespace parameters don't exist, simple usage.
return self._args[1]
end
return nil
end
--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------
local p = {}
function p._exportClasses()
-- Used for testing purposes.
return {
CategoryHandler = CategoryHandler
}
end
function p._main(args, data)
data = data or mw.loadData('Module:Category handler/data')
local handler = CategoryHandler.new(data, args)
if handler:isSuppressed() then
return nil
end
return handler:getCategories()
end
function p.main(frame, data)
data = data or mw.loadData('Module:Category handler/data')
local args = require('Module:Arguments').getArgs(frame, {
wrappers = data.wrappers,
valueFunc = function (k, v)
v = trimWhitespace(v)
if type(k) == 'number' then
if v ~= '' then
return v
else
return nil
end
else
return v
end
end
})
return p._main(args, data)
end
return p
letwavu3yvlayfzew66uuwixmwebq5b
ಮೋಡ್ಯೂಲ್:Category handler/blacklist
828
5070
370378
132469
2025-04-27T18:49:24Z
meta>Pppery
0
Protected "[[Module:Category handler/blacklist]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
132468
Scribunto
text/plain
-- This module contains the blacklist used by [[Module:Category handler]].
-- Pages that match Lua patterns in this list will not be categorised unless
-- categorisation is explicitly requested.
return {
'^Main Page$', -- don't categorise the main page.
-- Don't categorise the following pages or their subpages.
-- "%f[/\0]" matches if the next character is "/" or the end of the string.
'^Wikipedia:Cascade%-protected items%f[/\0]',
'^User:UBX%f[/\0]', -- The userbox "template" space.
'^User talk:UBX%f[/\0]',
-- Don't categorise subpages of these pages, but allow
-- categorisation of the base page.
'^Wikipedia:Template index/.*$',
-- Don't categorise archives.
'/[aA]rchive',
"^Wikipedia:Administrators' noticeboard/IncidentArchive%d+$",
}
fsv1drcay6t25e91hzhqxtyp7pckbpx
370379
370378
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Category_handler/blacklist]]
132468
Scribunto
text/plain
-- This module contains the blacklist used by [[Module:Category handler]].
-- Pages that match Lua patterns in this list will not be categorised unless
-- categorisation is explicitly requested.
return {
'^Main Page$', -- don't categorise the main page.
-- Don't categorise the following pages or their subpages.
-- "%f[/\0]" matches if the next character is "/" or the end of the string.
'^Wikipedia:Cascade%-protected items%f[/\0]',
'^User:UBX%f[/\0]', -- The userbox "template" space.
'^User talk:UBX%f[/\0]',
-- Don't categorise subpages of these pages, but allow
-- categorisation of the base page.
'^Wikipedia:Template index/.*$',
-- Don't categorise archives.
'/[aA]rchive',
"^Wikipedia:Administrators' noticeboard/IncidentArchive%d+$",
}
fsv1drcay6t25e91hzhqxtyp7pckbpx
ಮೋಡ್ಯೂಲ್:Category handler/config
828
5071
370374
132472
2025-04-27T18:49:38Z
meta>Pppery
0
Protected "[[Module:Category handler/config]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
120245
Scribunto
text/plain
--------------------------------------------------------------------------------
-- [[Module:Category handler]] configuration data --
-- Language-specific parameter names and values can be set here. --
-- For blacklist config, see [[Module:Category handler/blacklist]]. --
--------------------------------------------------------------------------------
local cfg = {} -- Don't edit this line.
--------------------------------------------------------------------------------
-- Start configuration data --
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
-- Parameter names --
-- These configuration items specify custom parameter names. --
-- To add one extra name, you can use this format: --
-- --
-- foo = 'parameter name', --
-- --
-- To add multiple names, you can use this format: --
-- --
-- foo = {'parameter name 1', 'parameter name 2', 'parameter name 3'}, --
--------------------------------------------------------------------------------
cfg.parameters = {
-- The nocat and categories parameter suppress
-- categorisation. They are used with Module:Yesno, and work as follows:
--
-- cfg.nocat:
-- Result of yesno() Effect
-- true Categorisation is suppressed
-- false Categorisation is allowed, and
-- the blacklist check is skipped
-- nil Categorisation is allowed
--
-- cfg.categories:
-- Result of yesno() Effect
-- true Categorisation is allowed, and
-- the blacklist check is skipped
-- false Categorisation is suppressed
-- nil Categorisation is allowed
nocat = 'nocat',
categories = 'categories',
-- The parameter name for the legacy "category2" parameter. This skips the
-- blacklist if set to the cfg.category2Yes value, and suppresses
-- categorisation if present but equal to anything other than
-- cfg.category2Yes or cfg.category2Negative.
category2 = 'category2',
-- cfg.subpage is the parameter name to specify how to behave on subpages.
subpage = 'subpage',
-- The parameter for data to return in all namespaces.
all = 'all',
-- The parameter name for data to return if no data is specified for the
-- namespace that is detected.
other = 'other',
-- The parameter name used to specify a page other than the current page;
-- used for testing and demonstration.
demopage = 'page',
}
--------------------------------------------------------------------------------
-- Parameter values --
-- These are set values that can be used with certain parameters. Only one --
-- value can be specified, like this: --
-- --
-- cfg.foo = 'value name' -- --
--------------------------------------------------------------------------------
-- The following settings are used with the cfg.category2 parameter. Setting
-- cfg.category2 to cfg.category2Yes skips the blacklist, and if cfg.category2
-- is present but equal to anything other than cfg.category2Yes or
-- cfg.category2Negative then it supresses cateogrisation.
cfg.category2Yes = 'yes'
cfg.category2Negative = '¬'
-- The following settings are used with the cfg.subpage parameter.
-- cfg.subpageNo is the value to specify to not categorise on subpages;
-- cfg.subpageOnly is the value to specify to only categorise on subpages.
cfg.subpageNo = 'no'
cfg.subpageOnly = 'only'
--------------------------------------------------------------------------------
-- Default namespaces --
-- This is a table of namespaces to categorise by default. The keys are the --
-- namespace numbers. --
--------------------------------------------------------------------------------
cfg.defaultNamespaces = {
[ 0] = true, -- main
[ 6] = true, -- file
[ 12] = true, -- help
[ 14] = true, -- category
[100] = true, -- portal
[108] = true, -- book
}
--------------------------------------------------------------------------------
-- Wrappers --
-- This is a wrapper template or a list of wrapper templates to be passed to --
-- [[Module:Arguments]]. --
--------------------------------------------------------------------------------
cfg.wrappers = 'Template:Category handler'
--------------------------------------------------------------------------------
-- End configuration data --
--------------------------------------------------------------------------------
return cfg -- Don't edit this line.
6ga9hbq2pdwalsvx68i53dmbr421rq5
370375
370374
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Category_handler/config]]
120245
Scribunto
text/plain
--------------------------------------------------------------------------------
-- [[Module:Category handler]] configuration data --
-- Language-specific parameter names and values can be set here. --
-- For blacklist config, see [[Module:Category handler/blacklist]]. --
--------------------------------------------------------------------------------
local cfg = {} -- Don't edit this line.
--------------------------------------------------------------------------------
-- Start configuration data --
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
-- Parameter names --
-- These configuration items specify custom parameter names. --
-- To add one extra name, you can use this format: --
-- --
-- foo = 'parameter name', --
-- --
-- To add multiple names, you can use this format: --
-- --
-- foo = {'parameter name 1', 'parameter name 2', 'parameter name 3'}, --
--------------------------------------------------------------------------------
cfg.parameters = {
-- The nocat and categories parameter suppress
-- categorisation. They are used with Module:Yesno, and work as follows:
--
-- cfg.nocat:
-- Result of yesno() Effect
-- true Categorisation is suppressed
-- false Categorisation is allowed, and
-- the blacklist check is skipped
-- nil Categorisation is allowed
--
-- cfg.categories:
-- Result of yesno() Effect
-- true Categorisation is allowed, and
-- the blacklist check is skipped
-- false Categorisation is suppressed
-- nil Categorisation is allowed
nocat = 'nocat',
categories = 'categories',
-- The parameter name for the legacy "category2" parameter. This skips the
-- blacklist if set to the cfg.category2Yes value, and suppresses
-- categorisation if present but equal to anything other than
-- cfg.category2Yes or cfg.category2Negative.
category2 = 'category2',
-- cfg.subpage is the parameter name to specify how to behave on subpages.
subpage = 'subpage',
-- The parameter for data to return in all namespaces.
all = 'all',
-- The parameter name for data to return if no data is specified for the
-- namespace that is detected.
other = 'other',
-- The parameter name used to specify a page other than the current page;
-- used for testing and demonstration.
demopage = 'page',
}
--------------------------------------------------------------------------------
-- Parameter values --
-- These are set values that can be used with certain parameters. Only one --
-- value can be specified, like this: --
-- --
-- cfg.foo = 'value name' -- --
--------------------------------------------------------------------------------
-- The following settings are used with the cfg.category2 parameter. Setting
-- cfg.category2 to cfg.category2Yes skips the blacklist, and if cfg.category2
-- is present but equal to anything other than cfg.category2Yes or
-- cfg.category2Negative then it supresses cateogrisation.
cfg.category2Yes = 'yes'
cfg.category2Negative = '¬'
-- The following settings are used with the cfg.subpage parameter.
-- cfg.subpageNo is the value to specify to not categorise on subpages;
-- cfg.subpageOnly is the value to specify to only categorise on subpages.
cfg.subpageNo = 'no'
cfg.subpageOnly = 'only'
--------------------------------------------------------------------------------
-- Default namespaces --
-- This is a table of namespaces to categorise by default. The keys are the --
-- namespace numbers. --
--------------------------------------------------------------------------------
cfg.defaultNamespaces = {
[ 0] = true, -- main
[ 6] = true, -- file
[ 12] = true, -- help
[ 14] = true, -- category
[100] = true, -- portal
[108] = true, -- book
}
--------------------------------------------------------------------------------
-- Wrappers --
-- This is a wrapper template or a list of wrapper templates to be passed to --
-- [[Module:Arguments]]. --
--------------------------------------------------------------------------------
cfg.wrappers = 'Template:Category handler'
--------------------------------------------------------------------------------
-- End configuration data --
--------------------------------------------------------------------------------
return cfg -- Don't edit this line.
6ga9hbq2pdwalsvx68i53dmbr421rq5
ಮೋಡ್ಯೂಲ್:Category handler/data
828
5072
370372
132475
2025-04-27T18:49:28Z
meta>Pppery
0
Protected "[[Module:Category handler/data]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
120247
Scribunto
text/plain
-- This module assembles data to be passed to [[Module:Category handler]] using
-- mw.loadData. This includes the configuration data and whether the current
-- page matches the title blacklist.
local data = require('Module:Category handler/config')
local mShared = require('Module:Category handler/shared')
local blacklist = require('Module:Category handler/blacklist')
local title = mw.title.getCurrentTitle()
data.currentTitleMatchesBlacklist = mShared.matchesBlacklist(
title.prefixedText,
blacklist
)
data.currentTitleNamespaceParameters = mShared.getNamespaceParameters(
title,
mShared.getParamMappings()
)
return data
k26mwixuaeijisfddb0sxkg82iux8v4
370373
370372
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Category_handler/data]]
120247
Scribunto
text/plain
-- This module assembles data to be passed to [[Module:Category handler]] using
-- mw.loadData. This includes the configuration data and whether the current
-- page matches the title blacklist.
local data = require('Module:Category handler/config')
local mShared = require('Module:Category handler/shared')
local blacklist = require('Module:Category handler/blacklist')
local title = mw.title.getCurrentTitle()
data.currentTitleMatchesBlacklist = mShared.matchesBlacklist(
title.prefixedText,
blacklist
)
data.currentTitleNamespaceParameters = mShared.getNamespaceParameters(
title,
mShared.getParamMappings()
)
return data
k26mwixuaeijisfddb0sxkg82iux8v4
ಮೋಡ್ಯೂಲ್:Category handler/shared
828
5073
370376
132478
2025-04-27T18:49:33Z
meta>Pppery
0
Protected "[[Module:Category handler/shared]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
120249
Scribunto
text/plain
-- This module contains shared functions used by [[Module:Category handler]]
-- and its submodules.
local p = {}
function p.matchesBlacklist(page, blacklist)
for i, pattern in ipairs(blacklist) do
local match = mw.ustring.match(page, pattern)
if match then
return true
end
end
return false
end
function p.getParamMappings(useLoadData)
local dataPage = 'Module:Namespace detect/data'
if useLoadData then
return mw.loadData(dataPage).mappings
else
return require(dataPage).mappings
end
end
function p.getNamespaceParameters(titleObj, mappings)
-- We don't use title.nsText for the namespace name because it adds
-- underscores.
local mappingsKey
if titleObj.isTalkPage then
mappingsKey = 'talk'
else
mappingsKey = mw.site.namespaces[titleObj.namespace].name
end
mappingsKey = mw.ustring.lower(mappingsKey)
return mappings[mappingsKey] or {}
end
return p
omlsnhudxz6juptvtxz7ns97jutbzc5
370377
370376
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Category_handler/shared]]
120249
Scribunto
text/plain
-- This module contains shared functions used by [[Module:Category handler]]
-- and its submodules.
local p = {}
function p.matchesBlacklist(page, blacklist)
for i, pattern in ipairs(blacklist) do
local match = mw.ustring.match(page, pattern)
if match then
return true
end
end
return false
end
function p.getParamMappings(useLoadData)
local dataPage = 'Module:Namespace detect/data'
if useLoadData then
return mw.loadData(dataPage).mappings
else
return require(dataPage).mappings
end
end
function p.getNamespaceParameters(titleObj, mappings)
-- We don't use title.nsText for the namespace name because it adds
-- underscores.
local mappingsKey
if titleObj.isTalkPage then
mappingsKey = 'talk'
else
mappingsKey = mw.site.namespaces[titleObj.namespace].name
end
mappingsKey = mw.ustring.lower(mappingsKey)
return mappings[mappingsKey] or {}
end
return p
omlsnhudxz6juptvtxz7ns97jutbzc5
ಮೋಡ್ಯೂಲ್:Documentation/config
828
5074
370388
283321
2026-01-08T00:27:56Z
meta>Pppery
0
Undo revision [[Special:Diff/29839693|29839693]] by [[Special:Contributions/Codename Noreste|Codename Noreste]] ([[User talk:Codename Noreste|talk]])
370388
Scribunto
text/plain
----------------------------------------------------------------------------------------------------
--
-- Configuration for Module:Documentation
--
-- Here you can set the values of the parameters and messages used in Module:Documentation to
-- localise it to your wiki and your language. Unless specified otherwise, values given here
-- should be string values.
----------------------------------------------------------------------------------------------------
local _format = require('Module:TNT').format
local function format(id)
return _format('I18n/Documentation', id)
end
local cfg = {} -- Do not edit this line.
cfg['templatestyles-scr'] = 'Module:Documentation/styles.css'
----------------------------------------------------------------------------------------------------
-- Protection template configuration
----------------------------------------------------------------------------------------------------
-- cfg['protection-template']
-- The name of the template that displays the protection icon (a padlock on enwiki).
cfg['protection-template'] = 'PP-template'
-- cfg['protection-reason-edit']
-- The protection reason for edit-protected templates to pass to
-- [[Module:Protection banner]].
cfg['protection-reason-edit'] = 'template'
--[[
-- cfg['protection-template-args']
-- Any arguments to send to the protection template. This should be a Lua table.
-- For example, if the protection template is "pp-template", and the wikitext template invocation
-- looks like "{{pp-template|docusage=yes}}", then this table should look like "{docusage = 'yes'}".
--]]
cfg['protection-template-args'] = {docusage = 'yes'}
--[[
----------------------------------------------------------------------------------------------------
-- Sandbox notice configuration
--
-- On sandbox pages the module can display a template notifying users that the current page is a
-- sandbox, and the location of test cases pages, etc. The module decides whether the page is a
-- sandbox or not based on the value of cfg['sandbox-subpage']. The following settings configure the
-- messages that the notices contains.
----------------------------------------------------------------------------------------------------
--]]
-- cfg['sandbox-notice-image']
-- The image displayed in the sandbox notice.
cfg['sandbox-notice-image'] = '[[Image:Edit In Sandbox Icon - Color.svg|40px|alt=|link=]]'
--[[
-- cfg['sandbox-notice-pagetype-template']
-- cfg['sandbox-notice-pagetype-module']
-- cfg['sandbox-notice-pagetype-other']
-- The page type of the sandbox page. The message that is displayed depends on the current subject
-- namespace. This message is used in either cfg['sandbox-notice-blurb'] or
-- cfg['sandbox-notice-diff-blurb'].
--]]
cfg['sandbox-notice-pagetype-template'] = format('sandbox-notice-pagetype-template')
cfg['sandbox-notice-pagetype-module'] = format('sandbox-notice-pagetype-module')
cfg['sandbox-notice-pagetype-other'] = format('sandbox-notice-pagetype-other')
--[[
-- cfg['sandbox-notice-blurb']
-- cfg['sandbox-notice-diff-blurb']
-- cfg['sandbox-notice-diff-display']
-- Either cfg['sandbox-notice-blurb'] or cfg['sandbox-notice-diff-blurb'] is the opening sentence
-- of the sandbox notice. The latter has a diff link, but the former does not. $1 is the page
-- type, which is either cfg['sandbox-notice-pagetype-template'],
-- cfg['sandbox-notice-pagetype-module'] or cfg['sandbox-notice-pagetype-other'] depending what
-- namespace we are in. $2 is a link to the main template page, and $3 is a diff link between
-- the sandbox and the main template. The display value of the diff link is set by
-- cfg['sandbox-notice-compare-link-display'].
--]]
cfg['sandbox-notice-blurb'] = format('sandbox-notice-blurb')
cfg['sandbox-notice-diff-blurb'] = format('sandbox-notice-diff-blurb')
cfg['sandbox-notice-compare-link-display'] = format('sandbox-notice-compare-link-display')
--[[
-- cfg['sandbox-notice-testcases-blurb']
-- cfg['sandbox-notice-testcases-link-display']
-- cfg['sandbox-notice-testcases-run-blurb']
-- cfg['sandbox-notice-testcases-run-link-display']
-- cfg['sandbox-notice-testcases-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit. $1 is a link to the test cases page.
-- cfg['sandbox-notice-testcases-link-display'] is the display value for that link.
-- cfg['sandbox-notice-testcases-run-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit, along with a link to run it. $1 is a link to the test
-- cases page, and $2 is a link to the page to run it.
-- cfg['sandbox-notice-testcases-run-link-display'] is the display value for the link to run the test
-- cases.
--]]
cfg['sandbox-notice-testcases-blurb'] = format('sandbox-notice-testcases-blurb')
cfg['sandbox-notice-testcases-link-display'] = format('sandbox-notice-testcases-link-display')
cfg['sandbox-notice-testcases-run-blurb'] = format('sandbox-notice-testcases-run-blurb')
cfg['sandbox-notice-testcases-run-link-display'] = format('sandbox-notice-testcases-run-link-display')
-- cfg['sandbox-category']
-- A category to add to all template sandboxes.
cfg['sandbox-category'] = 'Template sandboxes'
----------------------------------------------------------------------------------------------------
-- Start box configuration
----------------------------------------------------------------------------------------------------
-- cfg['documentation-icon-wikitext']
-- The wikitext for the icon shown at the top of the template.
cfg['documentation-icon-wikitext'] = '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=Documentation icon]]'
----------------------------------------------------------------------------------------------------
-- Link box (end box) configuration
----------------------------------------------------------------------------------------------------
-- cfg['transcluded-from-blurb']
-- Notice displayed when the docs are transcluded from another page. $1 is a wikilink to that page.
cfg['transcluded-from-blurb'] = format('transcluded-from-blurb')
--[[
-- cfg['create-module-doc-blurb']
-- Notice displayed in the module namespace when the documentation subpage does not exist.
-- $1 is a link to create the documentation page with the preload cfg['module-preload'] and the
-- display cfg['create-link-display'].
--]]
cfg['create-module-doc-blurb'] = format('create-module-doc-blurb')
----------------------------------------------------------------------------------------------------
-- Experiment blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['experiment-blurb-template']
-- cfg['experiment-blurb-module']
-- The experiment blurb is the text inviting editors to experiment in sandbox and test cases pages.
-- It is only shown in the template and module namespaces. With the default English settings, it
-- might look like this:
--
-- Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages.
--
-- In this example, "sandbox", "edit", "diff", "testcases", and "edit" would all be links.
--
-- There are two versions, cfg['experiment-blurb-template'] and cfg['experiment-blurb-module'], depending
-- on what namespace we are in.
--
-- Parameters:
--
-- $1 is a link to the sandbox page. If the sandbox exists, it is in the following format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-edit-link-display'] | cfg['compare-link-display'])
--
-- If the sandbox doesn't exist, it is in the format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-create-link-display'] | cfg['mirror-link-display'])
--
-- The link for cfg['sandbox-create-link-display'] link preloads the page with cfg['template-sandbox-preload']
-- or cfg['module-sandbox-preload'], depending on the current namespace. The link for cfg['mirror-link-display']
-- loads a default edit summary of cfg['mirror-edit-summary'].
--
-- $2 is a link to the test cases page. If the test cases page exists, it is in the following format:
--
-- cfg['testcases-link-display'] (cfg['testcases-edit-link-display'])
--
-- If the test cases page doesn't exist, it is in the format:
--
-- cfg['testcases-link-display'] (cfg['testcases-create-link-display'])
--
-- If the test cases page doesn't exist, the link for cfg['testcases-create-link-display'] preloads the
-- page with cfg['template-testcases-preload'] or cfg['module-testcases-preload'], depending on the current
-- namespace.
--]]
cfg['experiment-blurb-template'] = format('experiment-blurb-template')
cfg['experiment-blurb-module'] = format('experiment-blurb-module')
----------------------------------------------------------------------------------------------------
-- Sandbox link configuration
----------------------------------------------------------------------------------------------------
-- cfg['sandbox-subpage']
-- The name of the template subpage typically used for sandboxes.
cfg['sandbox-subpage'] = 'sandbox'
-- cfg['template-sandbox-preload']
-- Preload file for template sandbox pages.
cfg['template-sandbox-preload'] = 'Template:Documentation/preload-sandbox'
-- cfg['module-sandbox-preload']
-- Preload file for Lua module sandbox pages.
cfg['module-sandbox-preload'] = 'Template:Documentation/preload-module-sandbox'
-- cfg['sandbox-link-display']
-- The text to display for "sandbox" links.
cfg['sandbox-link-display'] = format('sandbox-link-display')
-- cfg['sandbox-edit-link-display']
-- The text to display for sandbox "edit" links.
cfg['sandbox-edit-link-display'] = format('sandbox-edit-link-display')
-- cfg['sandbox-create-link-display']
-- The text to display for sandbox "create" links.
cfg['sandbox-create-link-display'] = format('sandbox-create-link-display')
-- cfg['compare-link-display']
-- The text to display for "compare" links.
cfg['compare-link-display'] = format('compare-link-display')
-- cfg['mirror-edit-summary']
-- The default edit summary to use when a user clicks the "mirror" link. $1 is a wikilink to the
-- template page.
cfg['mirror-edit-summary'] = 'Create sandbox version of $1'
-- cfg['mirror-link-display']
-- The text to display for "mirror" links.
cfg['mirror-link-display'] = format('mirror-link-display')
-- cfg['mirror-link-preload']
-- The page to preload when a user clicks the "mirror" link.
cfg['mirror-link-preload'] = 'Template:Documentation/mirror'
----------------------------------------------------------------------------------------------------
-- Test cases link configuration
----------------------------------------------------------------------------------------------------
-- cfg['testcases-subpage']
-- The name of the template subpage typically used for test cases.
cfg['testcases-subpage'] = 'testcases'
-- cfg['template-testcases-preload']
-- Preload file for template test cases pages.
cfg['template-testcases-preload'] = 'Template:Documentation/preload-testcases'
-- cfg['module-testcases-preload']
-- Preload file for Lua module test cases pages.
cfg['module-testcases-preload'] = 'Template:Documentation/preload-module-testcases'
-- cfg['testcases-link-display']
-- The text to display for "testcases" links.
cfg['testcases-link-display'] = format('testcases-link-display')
-- cfg['testcases-edit-link-display']
-- The text to display for test cases "edit" links.
cfg['testcases-edit-link-display'] = format('testcases-edit-link-display')
-- cfg['testcases-create-link-display']
-- The text to display for test cases "create" links.
cfg['testcases-create-link-display'] = format('testcases-create-link-display')
----------------------------------------------------------------------------------------------------
-- Add categories blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['add-categories-blurb']
-- Text to direct users to add categories to the /doc subpage. Not used if the "content" or
-- "docname fed" arguments are set, as then it is not clear where to add the categories. $1 is a
-- link to the /doc subpage with a display value of cfg['doc-link-display'].
--]]
cfg['add-categories-blurb'] = format('add-categories-blurb')
-- cfg['doc-link-display']
-- The text to display when linking to the /doc subpage.
cfg['doc-link-display'] = '/doc'
----------------------------------------------------------------------------------------------------
-- Subpages link configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['subpages-blurb']
-- The "Subpages of this template" blurb. $1 is a link to the main template's subpages with a
-- display value of cfg['subpages-link-display']. In the English version this blurb is simply
-- the link followed by a period, and the link display provides the actual text.
--]]
cfg['subpages-blurb'] = format('subpages-blurb')
--[[
-- cfg['subpages-link-display']
-- The text to display for the "subpages of this page" link. $1 is cfg['template-pagetype'],
-- cfg['module-pagetype'] or cfg['default-pagetype'], depending on whether the current page is in
-- the template namespace, the module namespace, or another namespace.
--]]
cfg['subpages-link-display'] = format('subpages-link-display')
-- cfg['template-pagetype']
-- The pagetype to display for template pages.
cfg['template-pagetype'] = format('template-pagetype')
-- cfg['module-pagetype']
-- The pagetype to display for Lua module pages.
cfg['module-pagetype'] = format('module-pagetype')
-- cfg['default-pagetype']
-- The pagetype to display for pages other than templates or Lua modules.
cfg['default-pagetype'] = format('default-pagetype')
----------------------------------------------------------------------------------------------------
-- Doc link configuration
----------------------------------------------------------------------------------------------------
-- cfg['doc-subpage']
-- The name of the subpage typically used for documentation pages.
cfg['doc-subpage'] = 'doc'
-- cfg['file-docpage-preload']
-- Preload file for documentation page in the file namespace.
cfg['file-docpage-preload'] = 'Template:Documentation/preload-filespace'
-- cfg['docpage-preload']
-- Preload file for template documentation pages in all namespaces.
cfg['docpage-preload'] = 'Template:Documentation/preload'
-- cfg['module-preload']
-- Preload file for Lua module documentation pages.
cfg['module-preload'] = 'Template:Documentation/preload-module-doc'
----------------------------------------------------------------------------------------------------
-- Print version configuration
----------------------------------------------------------------------------------------------------
-- cfg['print-subpage']
-- The name of the template subpage used for print versions.
cfg['print-subpage'] = 'Print'
-- cfg['print-link-display']
-- The text to display when linking to the /Print subpage.
cfg['print-link-display'] = '/Print'
-- cfg['print-blurb']
-- Text to display if a /Print subpage exists. $1 is a link to the subpage with a display value of cfg['print-link-display'].
cfg['print-blurb'] = format('print-blurb')
-- cfg['display-print-category']
-- Set to true to enable output of cfg['print-category'] if a /Print subpage exists.
-- This should be a boolean value (either true or false).
cfg['display-print-category'] = true
-- cfg['print-category']
-- Category to output if cfg['display-print-category'] is set to true, and a /Print subpage exists.
cfg['print-category'] = 'Templates with print versions'
----------------------------------------------------------------------------------------------------
-- HTML and CSS configuration
----------------------------------------------------------------------------------------------------
-- cfg['main-div-id']
-- The "id" attribute of the main HTML "div" tag.
cfg['main-div-id'] = 'template-documentation'
-- cfg['main-div-classes']
-- The CSS classes added to the main HTML "div" tag.
cfg['main-div-class'] = 'ts-doc-doc'
cfg['header-div-class'] = 'ts-doc-header'
cfg['heading-div-class'] = 'ts-doc-heading'
cfg['content-div-class'] = 'ts-doc-content'
cfg['footer-div-class'] = 'ts-doc-footer plainlinks'
cfg['sandbox-class'] = 'ts-doc-sandbox'
-- cfg['start-box-linkclasses']
-- The CSS classes used for the [view][edit][history] or [create] links in the start box.
cfg['start-box-linkclasses'] = 'ts-tlinks-tlinks mw-editsection-like plainlinks'
-- cfg['start-box-link-id']
-- The HTML "id" attribute for the links in the start box.
cfg['start-box-link-id'] = 'doc_editlinks'
----------------------------------------------------------------------------------------------------
-- Tracking category configuration
----------------------------------------------------------------------------------------------------
-- cfg['display-strange-usage-category']
-- Set to true to enable output of cfg['strange-usage-category'] if the module is used on a /doc subpage
-- or a /testcases subpage. This should be a boolean value (either true or false).
cfg['display-strange-usage-category'] = true
-- cfg['strange-usage-category']
-- Category to output if cfg['display-strange-usage-category'] is set to true and the module is used on a
-- /doc subpage or a /testcases subpage.
cfg['strange-usage-category'] = 'Pages with strange documentation template usage'
--[[
----------------------------------------------------------------------------------------------------
-- End configuration
--
-- Don't edit anything below this line.
----------------------------------------------------------------------------------------------------
--]]
return cfg
4y5z3gavhdf825owkcodrvz7z8wpxbe
370389
369552
2026-09-28T08:07:29Z
ChiK
1136
1 revision imported from [[:meta:Module:Documentation/config]]
369552
Scribunto
text/plain
----------------------------------------------------------------------------------------------------
--
-- Configuration for Module:Documentation
--
-- Here you can set the values of the parameters and messages used in Module:Documentation to
-- localise it to your wiki and your language. Unless specified otherwise, values given here
-- should be string values.
----------------------------------------------------------------------------------------------------
local cfg = {} -- Do not edit this line.
----------------------------------------------------------------------------------------------------
-- Protection template configuration
----------------------------------------------------------------------------------------------------
-- cfg['protection-reason-edit']
-- The protection reason for edit-protected templates to pass to
-- [[Module:Protection banner]].
cfg['protection-reason-edit'] = 'template'
--[[
----------------------------------------------------------------------------------------------------
-- Sandbox notice configuration
--
-- On sandbox pages the module can display a template notifying users that the current page is a
-- sandbox, and the location of test cases pages, etc. The module decides whether the page is a
-- sandbox or not based on the value of cfg['sandbox-subpage']. The following settings configure the
-- messages that the notices contains.
----------------------------------------------------------------------------------------------------
--]]
-- cfg['sandbox-notice-image']
-- The image displayed in the sandbox notice.
cfg['sandbox-notice-image'] = '[[File:Edit In Sandbox Icon - Color.svg|50px|alt=|link=]]'
--[[
-- cfg['sandbox-notice-pagetype-template']
-- cfg['sandbox-notice-pagetype-module']
-- cfg['sandbox-notice-pagetype-other']
-- The page type of the sandbox page. The message that is displayed depends on the current subject
-- namespace. This message is used in either cfg['sandbox-notice-blurb'] or
-- cfg['sandbox-notice-diff-blurb'].
--]]
cfg['sandbox-notice-pagetype-template'] = '[[Wikipedia:Template test cases|template sandbox]] page'
cfg['sandbox-notice-pagetype-module'] = '[[Wikipedia:Template test cases|module sandbox]] page'
cfg['sandbox-notice-pagetype-other'] = 'sandbox page'
--[[
-- cfg['sandbox-notice-blurb']
-- cfg['sandbox-notice-diff-blurb']
-- cfg['sandbox-notice-diff-display']
-- Either cfg['sandbox-notice-blurb'] or cfg['sandbox-notice-diff-blurb'] is the opening sentence
-- of the sandbox notice. The latter has a diff link, but the former does not. $1 is the page
-- type, which is either cfg['sandbox-notice-pagetype-template'],
-- cfg['sandbox-notice-pagetype-module'] or cfg['sandbox-notice-pagetype-other'] depending what
-- namespace we are in. $2 is a link to the main template page, and $3 is a diff link between
-- the sandbox and the main template. The display value of the diff link is set by
-- cfg['sandbox-notice-compare-link-display'].
--]]
cfg['sandbox-notice-blurb'] = 'This is the $1 for $2.'
cfg['sandbox-notice-diff-blurb'] = 'This is the $1 for $2 ($3).'
cfg['sandbox-notice-compare-link-display'] = 'diff'
--[[
-- cfg['sandbox-notice-testcases-blurb']
-- cfg['sandbox-notice-testcases-link-display']
-- cfg['sandbox-notice-testcases-run-blurb']
-- cfg['sandbox-notice-testcases-run-link-display']
-- cfg['sandbox-notice-testcases-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit. $1 is a link to the test cases page.
-- cfg['sandbox-notice-testcases-link-display'] is the display value for that link.
-- cfg['sandbox-notice-testcases-run-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit, along with a link to run it. $1 is a link to the test
-- cases page, and $2 is a link to the page to run it.
-- cfg['sandbox-notice-testcases-run-link-display'] is the display value for the link to run the test
-- cases.
--]]
cfg['sandbox-notice-testcases-blurb'] = 'See also the companion subpage for $1.'
cfg['sandbox-notice-testcases-link-display'] = 'test cases'
cfg['sandbox-notice-testcases-run-blurb'] = 'See also the companion subpage for $1 ($2).'
cfg['sandbox-notice-testcases-run-link-display'] = 'run'
-- cfg['sandbox-category'] - A category to add to all template sandboxes.
-- cfg['module-sandbox-category'] - A category to add to all module sandboxes.
-- cfg['module-sandbox-category'] - A category to add to all sandboxe not in templates or modules.
cfg['sandbox-category'] = 'Template sandboxes'
cfg['module-sandbox-category'] = 'Module sandboxes'
cfg['other-sandbox-category'] = 'Sandboxes outside of template or module namespace'
----------------------------------------------------------------------------------------------------
-- Start box configuration
----------------------------------------------------------------------------------------------------
-- cfg['documentation-icon-wikitext']
-- The wikitext for the icon shown at the top of the template.
cfg['documentation-icon-wikitext'] = '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]]'
-- cfg['template-namespace-heading']
-- The heading shown in the template namespace.
cfg['template-namespace-heading'] = 'ಟೆಂಪ್ಲೇಟ್ ದಾಕಲೆ'
-- cfg['module-namespace-heading']
-- The heading shown in the module namespace.
cfg['module-namespace-heading'] = 'ಮೋಡ್ಯೂಲ್ ದಾಕಲೆ'
-- cfg['file-namespace-heading']
-- The heading shown in the file namespace.
cfg['file-namespace-heading'] = 'Summary'
-- cfg['other-namespaces-heading']
-- The heading shown in other namespaces.
cfg['other-namespaces-heading'] = 'Documentation'
-- cfg['view-link-display']
-- The text to display for "view" links.
cfg['view-link-display'] = 'view'
-- cfg['edit-link-display']
-- The text to display for "edit" links.
cfg['edit-link-display'] = 'edit'
-- cfg['history-link-display']
-- The text to display for "history" links.
cfg['history-link-display'] = 'history'
-- cfg['purge-link-display']
-- The text to display for "purge" links.
cfg['purge-link-display'] = 'purge'
-- cfg['create-link-display']
-- The text to display for "create" links.
cfg['create-link-display'] = 'create'
----------------------------------------------------------------------------------------------------
-- Link box (end box) configuration
----------------------------------------------------------------------------------------------------
-- cfg['transcluded-from-blurb']
-- Notice displayed when the docs are transcluded from another page. $1 is a wikilink to that page.
cfg['transcluded-from-blurb'] = 'The above [[:en:Wikipedia:Template documentation|documentation]] is [[:en:Help:Transclusion|transcluded]] from $1.'
--[[
-- cfg['create-module-doc-blurb']
-- Notice displayed in the module namespace when the documentation subpage does not exist.
-- $1 is a link to create the documentation page with the preload cfg['module-preload'] and the
-- display cfg['create-link-display'].
--]]
cfg['create-module-doc-blurb'] = 'You might want to $1 a documentation page for this [[:en:Wikipedia:Lua|Scribunto module]].'
----------------------------------------------------------------------------------------------------
-- Experiment blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['experiment-blurb-template']
-- cfg['experiment-blurb-module']
-- The experiment blurb is the text inviting editors to experiment in sandbox and test cases pages.
-- It is only shown in the template and module namespaces. With the default English settings, it
-- might look like this:
--
-- Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages.
--
-- In this example, "sandbox", "edit", "diff", "testcases", and "edit" would all be links.
--
-- There are two versions, cfg['experiment-blurb-template'] and cfg['experiment-blurb-module'], depending
-- on what namespace we are in.
--
-- Parameters:
--
-- $1 is a link to the sandbox page. If the sandbox exists, it is in the following format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-edit-link-display'] | cfg['compare-link-display'])
--
-- If the sandbox doesn't exist, it is in the format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-create-link-display'] | cfg['mirror-link-display'])
--
-- The link for cfg['sandbox-create-link-display'] link preloads the page with cfg['template-sandbox-preload']
-- or cfg['module-sandbox-preload'], depending on the current namespace. The link for cfg['mirror-link-display']
-- loads a default edit summary of cfg['mirror-edit-summary'].
--
-- $2 is a link to the test cases page. If the test cases page exists, it is in the following format:
--
-- cfg['testcases-link-display'] (cfg['testcases-edit-link-display'] | cfg['testcases-run-link-display'])
--
-- If the test cases page doesn't exist, it is in the format:
--
-- cfg['testcases-link-display'] (cfg['testcases-create-link-display'])
--
-- If the test cases page doesn't exist, the link for cfg['testcases-create-link-display'] preloads the
-- page with cfg['template-testcases-preload'] or cfg['module-testcases-preload'], depending on the current
-- namespace.
--]]
cfg['experiment-blurb-template'] = "Editors can experiment in this template's $1 and $2 pages."
cfg['experiment-blurb-module'] = "Editors can experiment in this module's $1 and $2 pages."
----------------------------------------------------------------------------------------------------
-- Sandbox link configuration
----------------------------------------------------------------------------------------------------
-- cfg['sandbox-subpage']
-- The name of the template subpage typically used for sandboxes.
cfg['sandbox-subpage'] = 'sandbox'
-- cfg['template-sandbox-preload']
-- Preload file for template sandbox pages.
cfg['template-sandbox-preload'] = 'Template:Documentation/preload-sandbox'
-- cfg['module-sandbox-preload']
-- Preload file for Lua module sandbox pages.
cfg['module-sandbox-preload'] = 'Template:Documentation/preload-module-sandbox'
-- cfg['sandbox-link-display']
-- The text to display for "sandbox" links.
cfg['sandbox-link-display'] = 'sandbox'
-- cfg['sandbox-edit-link-display']
-- The text to display for sandbox "edit" links.
cfg['sandbox-edit-link-display'] = 'edit'
-- cfg['sandbox-create-link-display']
-- The text to display for sandbox "create" links.
cfg['sandbox-create-link-display'] = 'create'
-- cfg['compare-link-display']
-- The text to display for "compare" links.
cfg['compare-link-display'] = 'diff'
-- cfg['mirror-edit-summary']
-- The default edit summary to use when a user clicks the "mirror" link. $1 is a wikilink to the
-- template page.
cfg['mirror-edit-summary'] = 'Create sandbox version of $1'
-- cfg['mirror-link-display']
-- The text to display for "mirror" links.
cfg['mirror-link-display'] = 'mirror'
-- cfg['mirror-link-preload']
-- The page to preload when a user clicks the "mirror" link.
cfg['mirror-link-preload'] = 'Template:Documentation/mirror'
----------------------------------------------------------------------------------------------------
-- Test cases link configuration
----------------------------------------------------------------------------------------------------
-- cfg['testcases-subpage']
-- The name of the template subpage typically used for test cases.
cfg['testcases-subpage'] = 'testcases'
-- cfg['template-testcases-preload']
-- Preload file for template test cases pages.
cfg['template-testcases-preload'] = 'Template:Documentation/preload-testcases'
-- cfg['module-testcases-preload']
-- Preload file for Lua module test cases pages.
cfg['module-testcases-preload'] = 'Template:Documentation/preload-module-testcases'
-- cfg['testcases-link-display']
-- The text to display for "testcases" links.
cfg['testcases-link-display'] = 'testcases'
-- cfg['testcases-edit-link-display']
-- The text to display for test cases "edit" links.
cfg['testcases-edit-link-display'] = 'edit'
-- cfg['testcases-run-link-display']
-- The text to display for test cases "run" links.
cfg['testcases-run-link-display'] = 'run'
-- cfg['testcases-create-link-display']
-- The text to display for test cases "create" links.
cfg['testcases-create-link-display'] = 'create'
----------------------------------------------------------------------------------------------------
-- Add categories blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['add-categories-blurb']
-- Text to direct users to add categories to the /doc subpage. Not used if the "content" or
-- "docname fed" arguments are set, as then it is not clear where to add the categories. $1 is a
-- link to the /doc subpage with a display value of cfg['doc-link-display'].
--]]
cfg['add-categories-blurb'] = 'Add categories to the $1 subpage.'
-- cfg['doc-link-display']
-- The text to display when linking to the /doc subpage.
cfg['doc-link-display'] = '/doc'
----------------------------------------------------------------------------------------------------
-- Subpages link configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['subpages-blurb']
-- The "Subpages of this template" blurb. $1 is a link to the main template's subpages with a
-- display value of cfg['subpages-link-display']. In the English version this blurb is simply
-- the link followed by a period, and the link display provides the actual text.
--]]
cfg['subpages-blurb'] = '$1.'
--[[
-- cfg['subpages-link-display']
-- The text to display for the "subpages of this page" link. $1 is cfg['template-pagetype'],
-- cfg['module-pagetype'] or cfg['default-pagetype'], depending on whether the current page is in
-- the template namespace, the module namespace, or another namespace.
--]]
cfg['subpages-link-display'] = 'Subpages of this $1'
-- cfg['template-pagetype']
-- The pagetype to display for template pages.
cfg['template-pagetype'] = 'template'
-- cfg['module-pagetype']
-- The pagetype to display for Lua module pages.
cfg['module-pagetype'] = 'module'
-- cfg['default-pagetype']
-- The pagetype to display for pages other than templates or Lua modules.
cfg['default-pagetype'] = 'page'
----------------------------------------------------------------------------------------------------
-- Doc link configuration
----------------------------------------------------------------------------------------------------
-- cfg['doc-subpage']
-- The name of the subpage typically used for documentation pages.
cfg['doc-subpage'] = 'doc'
-- cfg['docpage-preload']
-- Preload file for template documentation pages in all namespaces.
cfg['docpage-preload'] = 'Template:Documentation/preload'
-- cfg['module-preload']
-- Preload file for Lua module documentation pages.
cfg['module-preload'] = 'Template:Documentation/preload-module-doc'
----------------------------------------------------------------------------------------------------
-- HTML and CSS configuration
----------------------------------------------------------------------------------------------------
-- cfg['templatestyles']
-- The name of the TemplateStyles page where CSS is kept.
-- Sandbox CSS will be at Module:Documentation/sandbox/styles.css when needed.
cfg['templatestyles'] = 'Module:Documentation/styles.css'
-- cfg['container']
-- Class which can be used to set flex or grid CSS on the
-- two child divs documentation and documentation-metadata
cfg['container'] = 'documentation-container'
-- cfg['main-div-classes']
-- Classes added to the main HTML "div" tag.
cfg['main-div-classes'] = 'documentation'
-- cfg['main-div-heading-class']
-- Class for the main heading for templates and modules and assoc. talk spaces
cfg['main-div-heading-class'] = 'documentation-heading'
-- cfg['start-box-class']
-- Class for the start box
cfg['start-box-class'] = 'documentation-startbox'
-- cfg['start-box-link-classes']
-- Classes used for the [view][edit][history] or [create] links in the start box.
-- mw-editsection-like is per [[Wikipedia:Village pump (technical)/Archive 117]]
cfg['start-box-link-classes'] = 'mw-editsection-like plainlinks'
-- cfg['end-box-class']
-- Class for the end box.
cfg['end-box-class'] = 'documentation-metadata'
-- cfg['end-box-plainlinks']
-- Plainlinks
cfg['end-box-plainlinks'] = 'plainlinks'
-- cfg['toolbar-class']
-- Class added for toolbar links.
cfg['toolbar-class'] = 'documentation-toolbar'
-- cfg['clear']
-- Just used to clear things.
cfg['clear'] = 'documentation-clear'
----------------------------------------------------------------------------------------------------
-- Tracking category configuration
----------------------------------------------------------------------------------------------------
-- cfg['display-strange-usage-category']
-- Set to true to enable output of cfg['strange-usage-category'] if the module is used on a /doc subpage
-- or a /testcases subpage. This should be a boolean value (either true or false).
cfg['display-strange-usage-category'] = true
-- cfg['strange-usage-category']
-- Category to output if cfg['display-strange-usage-category'] is set to true and the module is used on a
-- /doc subpage or a /testcases subpage.
cfg['strange-usage-category'] = 'Wikipedia pages with strange ((documentation)) usage'
--[[
----------------------------------------------------------------------------------------------------
-- End configuration
--
-- Don't edit anything below this line.
----------------------------------------------------------------------------------------------------
--]]
return cfg
p2z9jflm8l725l59666uexzzut9w0pk
370436
370389
2026-09-28T08:41:36Z
ChiK
1136
Restored revision 358456 by [[Special:Contributions/ChiK|ChiK]] ([[User talk:ChiK|talk]]): Fix
370436
Scribunto
text/plain
----------------------------------------------------------------------------------------------------
--
-- Configuration for Module:Documentation
--
-- Here you can set the values of the parameters and messages used in Module:Documentation to
-- localise it to your wiki and your language. Unless specified otherwise, values given here
-- should be string values.
----------------------------------------------------------------------------------------------------
local cfg = {} -- Do not edit this line.
----------------------------------------------------------------------------------------------------
-- Protection template configuration
----------------------------------------------------------------------------------------------------
-- cfg['protection-reason-edit']
-- The protection reason for edit-protected templates to pass to
-- [[Module:Protection banner]].
cfg['protection-reason-edit'] = 'template'
--[[
----------------------------------------------------------------------------------------------------
-- Sandbox notice configuration
--
-- On sandbox pages the module can display a template notifying users that the current page is a
-- sandbox, and the location of test cases pages, etc. The module decides whether the page is a
-- sandbox or not based on the value of cfg['sandbox-subpage']. The following settings configure the
-- messages that the notices contains.
----------------------------------------------------------------------------------------------------
--]]
-- cfg['sandbox-notice-image']
-- The image displayed in the sandbox notice.
cfg['sandbox-notice-image'] = '[[File:Edit In Sandbox Icon - Color.svg|50px|alt=|link=]]'
--[[
-- cfg['sandbox-notice-pagetype-template']
-- cfg['sandbox-notice-pagetype-module']
-- cfg['sandbox-notice-pagetype-other']
-- The page type of the sandbox page. The message that is displayed depends on the current subject
-- namespace. This message is used in either cfg['sandbox-notice-blurb'] or
-- cfg['sandbox-notice-diff-blurb'].
--]]
cfg['sandbox-notice-pagetype-template'] = '[[Wikipedia:Template test cases|template sandbox]] page'
cfg['sandbox-notice-pagetype-module'] = '[[Wikipedia:Template test cases|module sandbox]] page'
cfg['sandbox-notice-pagetype-other'] = 'sandbox page'
--[[
-- cfg['sandbox-notice-blurb']
-- cfg['sandbox-notice-diff-blurb']
-- cfg['sandbox-notice-diff-display']
-- Either cfg['sandbox-notice-blurb'] or cfg['sandbox-notice-diff-blurb'] is the opening sentence
-- of the sandbox notice. The latter has a diff link, but the former does not. $1 is the page
-- type, which is either cfg['sandbox-notice-pagetype-template'],
-- cfg['sandbox-notice-pagetype-module'] or cfg['sandbox-notice-pagetype-other'] depending what
-- namespace we are in. $2 is a link to the main template page, and $3 is a diff link between
-- the sandbox and the main template. The display value of the diff link is set by
-- cfg['sandbox-notice-compare-link-display'].
--]]
cfg['sandbox-notice-blurb'] = 'This is the $1 for $2.'
cfg['sandbox-notice-diff-blurb'] = 'This is the $1 for $2 ($3).'
cfg['sandbox-notice-compare-link-display'] = 'diff'
--[[
-- cfg['sandbox-notice-testcases-blurb']
-- cfg['sandbox-notice-testcases-link-display']
-- cfg['sandbox-notice-testcases-run-blurb']
-- cfg['sandbox-notice-testcases-run-link-display']
-- cfg['sandbox-notice-testcases-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit. $1 is a link to the test cases page.
-- cfg['sandbox-notice-testcases-link-display'] is the display value for that link.
-- cfg['sandbox-notice-testcases-run-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit, along with a link to run it. $1 is a link to the test
-- cases page, and $2 is a link to the page to run it.
-- cfg['sandbox-notice-testcases-run-link-display'] is the display value for the link to run the test
-- cases.
--]]
cfg['sandbox-notice-testcases-blurb'] = 'See also the companion subpage for $1.'
cfg['sandbox-notice-testcases-link-display'] = 'test cases'
cfg['sandbox-notice-testcases-run-blurb'] = 'See also the companion subpage for $1 ($2).'
cfg['sandbox-notice-testcases-run-link-display'] = 'run'
-- cfg['sandbox-category'] - A category to add to all template sandboxes.
-- cfg['module-sandbox-category'] - A category to add to all module sandboxes.
-- cfg['module-sandbox-category'] - A category to add to all sandboxe not in templates or modules.
cfg['sandbox-category'] = 'Template sandboxes'
cfg['module-sandbox-category'] = 'Module sandboxes'
cfg['other-sandbox-category'] = 'Sandboxes outside of template or module namespace'
----------------------------------------------------------------------------------------------------
-- Start box configuration
----------------------------------------------------------------------------------------------------
-- cfg['documentation-icon-wikitext']
-- The wikitext for the icon shown at the top of the template.
cfg['documentation-icon-wikitext'] = '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]]'
-- cfg['template-namespace-heading']
-- The heading shown in the template namespace.
cfg['template-namespace-heading'] = 'ಟೆಂಪ್ಲೇಟ್ ದಾಕಲೆ'
-- cfg['module-namespace-heading']
-- The heading shown in the module namespace.
cfg['module-namespace-heading'] = 'ಮೋಡ್ಯೂಲ್ ದಾಕಲೆ'
-- cfg['file-namespace-heading']
-- The heading shown in the file namespace.
cfg['file-namespace-heading'] = 'Summary'
-- cfg['other-namespaces-heading']
-- The heading shown in other namespaces.
cfg['other-namespaces-heading'] = 'Documentation'
-- cfg['view-link-display']
-- The text to display for "view" links.
cfg['view-link-display'] = 'view'
-- cfg['edit-link-display']
-- The text to display for "edit" links.
cfg['edit-link-display'] = 'edit'
-- cfg['history-link-display']
-- The text to display for "history" links.
cfg['history-link-display'] = 'history'
-- cfg['purge-link-display']
-- The text to display for "purge" links.
cfg['purge-link-display'] = 'purge'
-- cfg['create-link-display']
-- The text to display for "create" links.
cfg['create-link-display'] = 'create'
----------------------------------------------------------------------------------------------------
-- Link box (end box) configuration
----------------------------------------------------------------------------------------------------
-- cfg['transcluded-from-blurb']
-- Notice displayed when the docs are transcluded from another page. $1 is a wikilink to that page.
cfg['transcluded-from-blurb'] = 'The above [[Wikipedia:Template documentation|documentation]] is [[Help:Transclusion|transcluded]] from $1.'
--[[
-- cfg['create-module-doc-blurb']
-- Notice displayed in the module namespace when the documentation subpage does not exist.
-- $1 is a link to create the documentation page with the preload cfg['module-preload'] and the
-- display cfg['create-link-display'].
--]]
cfg['create-module-doc-blurb'] = 'You might want to $1 a documentation page for this [[Wikipedia:Lua|Scribunto module]].'
----------------------------------------------------------------------------------------------------
-- Experiment blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['experiment-blurb-template']
-- cfg['experiment-blurb-module']
-- The experiment blurb is the text inviting editors to experiment in sandbox and test cases pages.
-- It is only shown in the template and module namespaces. With the default English settings, it
-- might look like this:
--
-- Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages.
--
-- In this example, "sandbox", "edit", "diff", "testcases", and "edit" would all be links.
--
-- There are two versions, cfg['experiment-blurb-template'] and cfg['experiment-blurb-module'], depending
-- on what namespace we are in.
--
-- Parameters:
--
-- $1 is a link to the sandbox page. If the sandbox exists, it is in the following format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-edit-link-display'] | cfg['compare-link-display'])
--
-- If the sandbox doesn't exist, it is in the format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-create-link-display'] | cfg['mirror-link-display'])
--
-- The link for cfg['sandbox-create-link-display'] link preloads the page with cfg['template-sandbox-preload']
-- or cfg['module-sandbox-preload'], depending on the current namespace. The link for cfg['mirror-link-display']
-- loads a default edit summary of cfg['mirror-edit-summary'].
--
-- $2 is a link to the test cases page. If the test cases page exists, it is in the following format:
--
-- cfg['testcases-link-display'] (cfg['testcases-edit-link-display'] | cfg['testcases-run-link-display'])
--
-- If the test cases page doesn't exist, it is in the format:
--
-- cfg['testcases-link-display'] (cfg['testcases-create-link-display'])
--
-- If the test cases page doesn't exist, the link for cfg['testcases-create-link-display'] preloads the
-- page with cfg['template-testcases-preload'] or cfg['module-testcases-preload'], depending on the current
-- namespace.
--]]
cfg['experiment-blurb-template'] = "Editors can experiment in this template's $1 and $2 pages."
cfg['experiment-blurb-module'] = "Editors can experiment in this module's $1 and $2 pages."
----------------------------------------------------------------------------------------------------
-- Sandbox link configuration
----------------------------------------------------------------------------------------------------
-- cfg['sandbox-subpage']
-- The name of the template subpage typically used for sandboxes.
cfg['sandbox-subpage'] = 'sandbox'
-- cfg['template-sandbox-preload']
-- Preload file for template sandbox pages.
cfg['template-sandbox-preload'] = 'Template:Documentation/preload-sandbox'
-- cfg['module-sandbox-preload']
-- Preload file for Lua module sandbox pages.
cfg['module-sandbox-preload'] = 'Template:Documentation/preload-module-sandbox'
-- cfg['sandbox-link-display']
-- The text to display for "sandbox" links.
cfg['sandbox-link-display'] = 'sandbox'
-- cfg['sandbox-edit-link-display']
-- The text to display for sandbox "edit" links.
cfg['sandbox-edit-link-display'] = 'edit'
-- cfg['sandbox-create-link-display']
-- The text to display for sandbox "create" links.
cfg['sandbox-create-link-display'] = 'create'
-- cfg['compare-link-display']
-- The text to display for "compare" links.
cfg['compare-link-display'] = 'diff'
-- cfg['mirror-edit-summary']
-- The default edit summary to use when a user clicks the "mirror" link. $1 is a wikilink to the
-- template page.
cfg['mirror-edit-summary'] = 'Create sandbox version of $1'
-- cfg['mirror-link-display']
-- The text to display for "mirror" links.
cfg['mirror-link-display'] = 'mirror'
-- cfg['mirror-link-preload']
-- The page to preload when a user clicks the "mirror" link.
cfg['mirror-link-preload'] = 'Template:Documentation/mirror'
----------------------------------------------------------------------------------------------------
-- Test cases link configuration
----------------------------------------------------------------------------------------------------
-- cfg['testcases-subpage']
-- The name of the template subpage typically used for test cases.
cfg['testcases-subpage'] = 'testcases'
-- cfg['template-testcases-preload']
-- Preload file for template test cases pages.
cfg['template-testcases-preload'] = 'Template:Documentation/preload-testcases'
-- cfg['module-testcases-preload']
-- Preload file for Lua module test cases pages.
cfg['module-testcases-preload'] = 'Template:Documentation/preload-module-testcases'
-- cfg['testcases-link-display']
-- The text to display for "testcases" links.
cfg['testcases-link-display'] = 'testcases'
-- cfg['testcases-edit-link-display']
-- The text to display for test cases "edit" links.
cfg['testcases-edit-link-display'] = 'edit'
-- cfg['testcases-run-link-display']
-- The text to display for test cases "run" links.
cfg['testcases-run-link-display'] = 'run'
-- cfg['testcases-create-link-display']
-- The text to display for test cases "create" links.
cfg['testcases-create-link-display'] = 'create'
----------------------------------------------------------------------------------------------------
-- Add categories blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['add-categories-blurb']
-- Text to direct users to add categories to the /doc subpage. Not used if the "content" or
-- "docname fed" arguments are set, as then it is not clear where to add the categories. $1 is a
-- link to the /doc subpage with a display value of cfg['doc-link-display'].
--]]
cfg['add-categories-blurb'] = 'Add categories to the $1 subpage.'
-- cfg['doc-link-display']
-- The text to display when linking to the /doc subpage.
cfg['doc-link-display'] = '/doc'
----------------------------------------------------------------------------------------------------
-- Subpages link configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['subpages-blurb']
-- The "Subpages of this template" blurb. $1 is a link to the main template's subpages with a
-- display value of cfg['subpages-link-display']. In the English version this blurb is simply
-- the link followed by a period, and the link display provides the actual text.
--]]
cfg['subpages-blurb'] = '$1.'
--[[
-- cfg['subpages-link-display']
-- The text to display for the "subpages of this page" link. $1 is cfg['template-pagetype'],
-- cfg['module-pagetype'] or cfg['default-pagetype'], depending on whether the current page is in
-- the template namespace, the module namespace, or another namespace.
--]]
cfg['subpages-link-display'] = 'Subpages of this $1'
-- cfg['template-pagetype']
-- The pagetype to display for template pages.
cfg['template-pagetype'] = 'template'
-- cfg['module-pagetype']
-- The pagetype to display for Lua module pages.
cfg['module-pagetype'] = 'module'
-- cfg['default-pagetype']
-- The pagetype to display for pages other than templates or Lua modules.
cfg['default-pagetype'] = 'page'
----------------------------------------------------------------------------------------------------
-- Doc link configuration
----------------------------------------------------------------------------------------------------
-- cfg['doc-subpage']
-- The name of the subpage typically used for documentation pages.
cfg['doc-subpage'] = 'doc'
-- cfg['docpage-preload']
-- Preload file for template documentation pages in all namespaces.
cfg['docpage-preload'] = 'Template:Documentation/preload'
-- cfg['module-preload']
-- Preload file for Lua module documentation pages.
cfg['module-preload'] = 'Template:Documentation/preload-module-doc'
----------------------------------------------------------------------------------------------------
-- HTML and CSS configuration
----------------------------------------------------------------------------------------------------
-- cfg['templatestyles']
-- The name of the TemplateStyles page where CSS is kept.
-- Sandbox CSS will be at Module:Documentation/sandbox/styles.css when needed.
cfg['templatestyles'] = 'Module:Documentation/styles.css'
-- cfg['container']
-- Class which can be used to set flex or grid CSS on the
-- two child divs documentation and documentation-metadata
cfg['container'] = 'documentation-container'
-- cfg['main-div-classes']
-- Classes added to the main HTML "div" tag.
cfg['main-div-classes'] = 'documentation'
-- cfg['main-div-heading-class']
-- Class for the main heading for templates and modules and assoc. talk spaces
cfg['main-div-heading-class'] = 'documentation-heading'
-- cfg['start-box-class']
-- Class for the start box
cfg['start-box-class'] = 'documentation-startbox'
-- cfg['start-box-link-classes']
-- Classes used for the [view][edit][history] or [create] links in the start box.
-- mw-editsection-like is per [[Wikipedia:Village pump (technical)/Archive 117]]
cfg['start-box-link-classes'] = 'mw-editsection-like plainlinks'
-- cfg['end-box-class']
-- Class for the end box.
cfg['end-box-class'] = 'documentation-metadata'
-- cfg['end-box-plainlinks']
-- Plainlinks
cfg['end-box-plainlinks'] = 'plainlinks'
-- cfg['toolbar-class']
-- Class added for toolbar links.
cfg['toolbar-class'] = 'documentation-toolbar'
-- cfg['clear']
-- Just used to clear things.
cfg['clear'] = 'documentation-clear'
----------------------------------------------------------------------------------------------------
-- Tracking category configuration
----------------------------------------------------------------------------------------------------
-- cfg['display-strange-usage-category']
-- Set to true to enable output of cfg['strange-usage-category'] if the module is used on a /doc subpage
-- or a /testcases subpage. This should be a boolean value (either true or false).
cfg['display-strange-usage-category'] = true
-- cfg['strange-usage-category']
-- Category to output if cfg['display-strange-usage-category'] is set to true and the module is used on a
-- /doc subpage or a /testcases subpage.
cfg['strange-usage-category'] = 'Wikipedia pages with strange ((documentation)) usage'
--[[
----------------------------------------------------------------------------------------------------
-- End configuration
--
-- Don't edit anything below this line.
----------------------------------------------------------------------------------------------------
--]]
return cfg
6gl36j1xp3yly0ny7ria2vfb4kweghb
370461
370436
2026-09-28T09:15:35Z
ChiK
1136
370461
Scribunto
text/plain
----------------------------------------------------------------------------------------------------
--
-- Configuration for Module:Documentation
--
-- Here you can set the values of the parameters and messages used in Module:Documentation to
-- localise it to your wiki and your language. Unless specified otherwise, values given here
-- should be string values.
----------------------------------------------------------------------------------------------------
local cfg = {} -- Do not edit this line.
----------------------------------------------------------------------------------------------------
-- Protection template configuration
----------------------------------------------------------------------------------------------------
-- cfg['protection-reason-edit']
-- The protection reason for edit-protected templates to pass to
-- [[Module:Protection banner]].
cfg['protection-reason-edit'] = 'template'
--[[
----------------------------------------------------------------------------------------------------
-- Sandbox notice configuration
--
-- On sandbox pages the module can display a template notifying users that the current page is a
-- sandbox, and the location of test cases pages, etc. The module decides whether the page is a
-- sandbox or not based on the value of cfg['sandbox-subpage']. The following settings configure the
-- messages that the notices contains.
----------------------------------------------------------------------------------------------------
--]]
-- cfg['sandbox-notice-image']
-- The image displayed in the sandbox notice.
cfg['sandbox-notice-image'] = '[[File:Edit In Sandbox Icon - Color.svg|50px|alt=|link=]]'
--[[
-- cfg['sandbox-notice-pagetype-template']
-- cfg['sandbox-notice-pagetype-module']
-- cfg['sandbox-notice-pagetype-other']
-- The page type of the sandbox page. The message that is displayed depends on the current subject
-- namespace. This message is used in either cfg['sandbox-notice-blurb'] or
-- cfg['sandbox-notice-diff-blurb'].
--]]
cfg['sandbox-notice-pagetype-template'] = '[[Wikipedia:Template test cases|template sandbox]] page'
cfg['sandbox-notice-pagetype-module'] = '[[Wikipedia:Template test cases|module sandbox]] page'
cfg['sandbox-notice-pagetype-other'] = 'sandbox page'
--[[
-- cfg['sandbox-notice-blurb']
-- cfg['sandbox-notice-diff-blurb']
-- cfg['sandbox-notice-diff-display']
-- Either cfg['sandbox-notice-blurb'] or cfg['sandbox-notice-diff-blurb'] is the opening sentence
-- of the sandbox notice. The latter has a diff link, but the former does not. $1 is the page
-- type, which is either cfg['sandbox-notice-pagetype-template'],
-- cfg['sandbox-notice-pagetype-module'] or cfg['sandbox-notice-pagetype-other'] depending what
-- namespace we are in. $2 is a link to the main template page, and $3 is a diff link between
-- the sandbox and the main template. The display value of the diff link is set by
-- cfg['sandbox-notice-compare-link-display'].
--]]
cfg['sandbox-notice-blurb'] = 'This is the $1 for $2.'
cfg['sandbox-notice-diff-blurb'] = 'This is the $1 for $2 ($3).'
cfg['sandbox-notice-compare-link-display'] = 'diff'
--[[
-- cfg['sandbox-notice-testcases-blurb']
-- cfg['sandbox-notice-testcases-link-display']
-- cfg['sandbox-notice-testcases-run-blurb']
-- cfg['sandbox-notice-testcases-run-link-display']
-- cfg['sandbox-notice-testcases-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit. $1 is a link to the test cases page.
-- cfg['sandbox-notice-testcases-link-display'] is the display value for that link.
-- cfg['sandbox-notice-testcases-run-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit, along with a link to run it. $1 is a link to the test
-- cases page, and $2 is a link to the page to run it.
-- cfg['sandbox-notice-testcases-run-link-display'] is the display value for the link to run the test
-- cases.
--]]
cfg['sandbox-notice-testcases-blurb'] = 'See also the companion subpage for $1.'
cfg['sandbox-notice-testcases-link-display'] = 'test cases'
cfg['sandbox-notice-testcases-run-blurb'] = 'See also the companion subpage for $1 ($2).'
cfg['sandbox-notice-testcases-run-link-display'] = 'run'
-- cfg['sandbox-category'] - A category to add to all template sandboxes.
-- cfg['module-sandbox-category'] - A category to add to all module sandboxes.
-- cfg['module-sandbox-category'] - A category to add to all sandboxe not in templates or modules.
cfg['sandbox-category'] = 'Template sandboxes'
cfg['module-sandbox-category'] = 'Module sandboxes'
cfg['other-sandbox-category'] = 'Sandboxes outside of template or module namespace'
----------------------------------------------------------------------------------------------------
-- Start box configuration
----------------------------------------------------------------------------------------------------
-- cfg['documentation-icon-wikitext']
-- The wikitext for the icon shown at the top of the template.
cfg['documentation-icon-wikitext'] = '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]]'
-- cfg['template-namespace-heading']
-- The heading shown in the template namespace.
cfg['template-namespace-heading'] = 'ಟೆಂಪ್ಲೇಟ್ ದಾಕಲೆ'
-- cfg['module-namespace-heading']
-- The heading shown in the module namespace.
cfg['module-namespace-heading'] = 'ಮೋಡ್ಯೂಲ್ ದಾಕಲೆ'
-- cfg['file-namespace-heading']
-- The heading shown in the file namespace.
cfg['file-namespace-heading'] = 'Summary'
-- cfg['other-namespaces-heading']
-- The heading shown in other namespaces.
cfg['other-namespaces-heading'] = 'Documentation'
-- cfg['view-link-display']
-- The text to display for "view" links.
cfg['view-link-display'] = 'view'
-- cfg['edit-link-display']
-- The text to display for "edit" links.
cfg['edit-link-display'] = 'edit'
-- cfg['history-link-display']
-- The text to display for "history" links.
cfg['history-link-display'] = 'history'
-- cfg['purge-link-display']
-- The text to display for "purge" links.
cfg['purge-link-display'] = 'purge'
-- cfg['create-link-display']
-- The text to display for "create" links.
cfg['create-link-display'] = 'create'
----------------------------------------------------------------------------------------------------
-- Link box (end box) configuration
----------------------------------------------------------------------------------------------------
-- cfg['transcluded-from-blurb']
-- Notice displayed when the docs are transcluded from another page. $1 is a wikilink to that page.
cfg['transcluded-from-blurb'] = 'The above [[:enWikipedia:Template documentation|documentation]] is [[:en:Help:Transclusion|transcluded]] from $1.'
--[[
-- cfg['create-module-doc-blurb']
-- Notice displayed in the module namespace when the documentation subpage does not exist.
-- $1 is a link to create the documentation page with the preload cfg['module-preload'] and the
-- display cfg['create-link-display'].
--]]
cfg['create-module-doc-blurb'] = 'You might want to $1 a documentation page for this [[:en:Wikipedia:Lua|Scribunto module]].'
----------------------------------------------------------------------------------------------------
-- Experiment blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['experiment-blurb-template']
-- cfg['experiment-blurb-module']
-- The experiment blurb is the text inviting editors to experiment in sandbox and test cases pages.
-- It is only shown in the template and module namespaces. With the default English settings, it
-- might look like this:
--
-- Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages.
--
-- In this example, "sandbox", "edit", "diff", "testcases", and "edit" would all be links.
--
-- There are two versions, cfg['experiment-blurb-template'] and cfg['experiment-blurb-module'], depending
-- on what namespace we are in.
--
-- Parameters:
--
-- $1 is a link to the sandbox page. If the sandbox exists, it is in the following format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-edit-link-display'] | cfg['compare-link-display'])
--
-- If the sandbox doesn't exist, it is in the format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-create-link-display'] | cfg['mirror-link-display'])
--
-- The link for cfg['sandbox-create-link-display'] link preloads the page with cfg['template-sandbox-preload']
-- or cfg['module-sandbox-preload'], depending on the current namespace. The link for cfg['mirror-link-display']
-- loads a default edit summary of cfg['mirror-edit-summary'].
--
-- $2 is a link to the test cases page. If the test cases page exists, it is in the following format:
--
-- cfg['testcases-link-display'] (cfg['testcases-edit-link-display'] | cfg['testcases-run-link-display'])
--
-- If the test cases page doesn't exist, it is in the format:
--
-- cfg['testcases-link-display'] (cfg['testcases-create-link-display'])
--
-- If the test cases page doesn't exist, the link for cfg['testcases-create-link-display'] preloads the
-- page with cfg['template-testcases-preload'] or cfg['module-testcases-preload'], depending on the current
-- namespace.
--]]
cfg['experiment-blurb-template'] = "Editors can experiment in this template's $1 and $2 pages."
cfg['experiment-blurb-module'] = "Editors can experiment in this module's $1 and $2 pages."
----------------------------------------------------------------------------------------------------
-- Sandbox link configuration
----------------------------------------------------------------------------------------------------
-- cfg['sandbox-subpage']
-- The name of the template subpage typically used for sandboxes.
cfg['sandbox-subpage'] = 'sandbox'
-- cfg['template-sandbox-preload']
-- Preload file for template sandbox pages.
cfg['template-sandbox-preload'] = 'Template:Documentation/preload-sandbox'
-- cfg['module-sandbox-preload']
-- Preload file for Lua module sandbox pages.
cfg['module-sandbox-preload'] = 'Template:Documentation/preload-module-sandbox'
-- cfg['sandbox-link-display']
-- The text to display for "sandbox" links.
cfg['sandbox-link-display'] = 'sandbox'
-- cfg['sandbox-edit-link-display']
-- The text to display for sandbox "edit" links.
cfg['sandbox-edit-link-display'] = 'edit'
-- cfg['sandbox-create-link-display']
-- The text to display for sandbox "create" links.
cfg['sandbox-create-link-display'] = 'create'
-- cfg['compare-link-display']
-- The text to display for "compare" links.
cfg['compare-link-display'] = 'diff'
-- cfg['mirror-edit-summary']
-- The default edit summary to use when a user clicks the "mirror" link. $1 is a wikilink to the
-- template page.
cfg['mirror-edit-summary'] = 'Create sandbox version of $1'
-- cfg['mirror-link-display']
-- The text to display for "mirror" links.
cfg['mirror-link-display'] = 'mirror'
-- cfg['mirror-link-preload']
-- The page to preload when a user clicks the "mirror" link.
cfg['mirror-link-preload'] = 'Template:Documentation/mirror'
----------------------------------------------------------------------------------------------------
-- Test cases link configuration
----------------------------------------------------------------------------------------------------
-- cfg['testcases-subpage']
-- The name of the template subpage typically used for test cases.
cfg['testcases-subpage'] = 'testcases'
-- cfg['template-testcases-preload']
-- Preload file for template test cases pages.
cfg['template-testcases-preload'] = 'Template:Documentation/preload-testcases'
-- cfg['module-testcases-preload']
-- Preload file for Lua module test cases pages.
cfg['module-testcases-preload'] = 'Template:Documentation/preload-module-testcases'
-- cfg['testcases-link-display']
-- The text to display for "testcases" links.
cfg['testcases-link-display'] = 'testcases'
-- cfg['testcases-edit-link-display']
-- The text to display for test cases "edit" links.
cfg['testcases-edit-link-display'] = 'edit'
-- cfg['testcases-run-link-display']
-- The text to display for test cases "run" links.
cfg['testcases-run-link-display'] = 'run'
-- cfg['testcases-create-link-display']
-- The text to display for test cases "create" links.
cfg['testcases-create-link-display'] = 'create'
----------------------------------------------------------------------------------------------------
-- Add categories blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['add-categories-blurb']
-- Text to direct users to add categories to the /doc subpage. Not used if the "content" or
-- "docname fed" arguments are set, as then it is not clear where to add the categories. $1 is a
-- link to the /doc subpage with a display value of cfg['doc-link-display'].
--]]
cfg['add-categories-blurb'] = 'Add categories to the $1 subpage.'
-- cfg['doc-link-display']
-- The text to display when linking to the /doc subpage.
cfg['doc-link-display'] = '/doc'
----------------------------------------------------------------------------------------------------
-- Subpages link configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['subpages-blurb']
-- The "Subpages of this template" blurb. $1 is a link to the main template's subpages with a
-- display value of cfg['subpages-link-display']. In the English version this blurb is simply
-- the link followed by a period, and the link display provides the actual text.
--]]
cfg['subpages-blurb'] = '$1.'
--[[
-- cfg['subpages-link-display']
-- The text to display for the "subpages of this page" link. $1 is cfg['template-pagetype'],
-- cfg['module-pagetype'] or cfg['default-pagetype'], depending on whether the current page is in
-- the template namespace, the module namespace, or another namespace.
--]]
cfg['subpages-link-display'] = 'Subpages of this $1'
-- cfg['template-pagetype']
-- The pagetype to display for template pages.
cfg['template-pagetype'] = 'template'
-- cfg['module-pagetype']
-- The pagetype to display for Lua module pages.
cfg['module-pagetype'] = 'module'
-- cfg['default-pagetype']
-- The pagetype to display for pages other than templates or Lua modules.
cfg['default-pagetype'] = 'page'
----------------------------------------------------------------------------------------------------
-- Doc link configuration
----------------------------------------------------------------------------------------------------
-- cfg['doc-subpage']
-- The name of the subpage typically used for documentation pages.
cfg['doc-subpage'] = 'doc'
-- cfg['docpage-preload']
-- Preload file for template documentation pages in all namespaces.
cfg['docpage-preload'] = 'Template:Documentation/preload'
-- cfg['module-preload']
-- Preload file for Lua module documentation pages.
cfg['module-preload'] = 'Template:Documentation/preload-module-doc'
----------------------------------------------------------------------------------------------------
-- HTML and CSS configuration
----------------------------------------------------------------------------------------------------
-- cfg['templatestyles']
-- The name of the TemplateStyles page where CSS is kept.
-- Sandbox CSS will be at Module:Documentation/sandbox/styles.css when needed.
cfg['templatestyles'] = 'Module:Documentation/styles.css'
-- cfg['container']
-- Class which can be used to set flex or grid CSS on the
-- two child divs documentation and documentation-metadata
cfg['container'] = 'documentation-container'
-- cfg['main-div-classes']
-- Classes added to the main HTML "div" tag.
cfg['main-div-classes'] = 'documentation'
-- cfg['main-div-heading-class']
-- Class for the main heading for templates and modules and assoc. talk spaces
cfg['main-div-heading-class'] = 'documentation-heading'
-- cfg['start-box-class']
-- Class for the start box
cfg['start-box-class'] = 'documentation-startbox'
-- cfg['start-box-link-classes']
-- Classes used for the [view][edit][history] or [create] links in the start box.
-- mw-editsection-like is per [[Wikipedia:Village pump (technical)/Archive 117]]
cfg['start-box-link-classes'] = 'mw-editsection-like plainlinks'
-- cfg['end-box-class']
-- Class for the end box.
cfg['end-box-class'] = 'documentation-metadata'
-- cfg['end-box-plainlinks']
-- Plainlinks
cfg['end-box-plainlinks'] = 'plainlinks'
-- cfg['toolbar-class']
-- Class added for toolbar links.
cfg['toolbar-class'] = 'documentation-toolbar'
-- cfg['clear']
-- Just used to clear things.
cfg['clear'] = 'documentation-clear'
----------------------------------------------------------------------------------------------------
-- Tracking category configuration
----------------------------------------------------------------------------------------------------
-- cfg['display-strange-usage-category']
-- Set to true to enable output of cfg['strange-usage-category'] if the module is used on a /doc subpage
-- or a /testcases subpage. This should be a boolean value (either true or false).
cfg['display-strange-usage-category'] = true
-- cfg['strange-usage-category']
-- Category to output if cfg['display-strange-usage-category'] is set to true and the module is used on a
-- /doc subpage or a /testcases subpage.
cfg['strange-usage-category'] = 'Wikipedia pages with strange ((documentation)) usage'
--[[
----------------------------------------------------------------------------------------------------
-- End configuration
--
-- Don't edit anything below this line.
----------------------------------------------------------------------------------------------------
--]]
return cfg
5to0cyy0jg9wioww9x0scrx6t23o1nu
370462
370461
2026-09-28T09:16:00Z
ChiK
1136
370462
Scribunto
text/plain
----------------------------------------------------------------------------------------------------
--
-- Configuration for Module:Documentation
--
-- Here you can set the values of the parameters and messages used in Module:Documentation to
-- localise it to your wiki and your language. Unless specified otherwise, values given here
-- should be string values.
----------------------------------------------------------------------------------------------------
local cfg = {} -- Do not edit this line.
----------------------------------------------------------------------------------------------------
-- Protection template configuration
----------------------------------------------------------------------------------------------------
-- cfg['protection-reason-edit']
-- The protection reason for edit-protected templates to pass to
-- [[Module:Protection banner]].
cfg['protection-reason-edit'] = 'template'
--[[
----------------------------------------------------------------------------------------------------
-- Sandbox notice configuration
--
-- On sandbox pages the module can display a template notifying users that the current page is a
-- sandbox, and the location of test cases pages, etc. The module decides whether the page is a
-- sandbox or not based on the value of cfg['sandbox-subpage']. The following settings configure the
-- messages that the notices contains.
----------------------------------------------------------------------------------------------------
--]]
-- cfg['sandbox-notice-image']
-- The image displayed in the sandbox notice.
cfg['sandbox-notice-image'] = '[[File:Edit In Sandbox Icon - Color.svg|50px|alt=|link=]]'
--[[
-- cfg['sandbox-notice-pagetype-template']
-- cfg['sandbox-notice-pagetype-module']
-- cfg['sandbox-notice-pagetype-other']
-- The page type of the sandbox page. The message that is displayed depends on the current subject
-- namespace. This message is used in either cfg['sandbox-notice-blurb'] or
-- cfg['sandbox-notice-diff-blurb'].
--]]
cfg['sandbox-notice-pagetype-template'] = '[[Wikipedia:Template test cases|template sandbox]] page'
cfg['sandbox-notice-pagetype-module'] = '[[Wikipedia:Template test cases|module sandbox]] page'
cfg['sandbox-notice-pagetype-other'] = 'sandbox page'
--[[
-- cfg['sandbox-notice-blurb']
-- cfg['sandbox-notice-diff-blurb']
-- cfg['sandbox-notice-diff-display']
-- Either cfg['sandbox-notice-blurb'] or cfg['sandbox-notice-diff-blurb'] is the opening sentence
-- of the sandbox notice. The latter has a diff link, but the former does not. $1 is the page
-- type, which is either cfg['sandbox-notice-pagetype-template'],
-- cfg['sandbox-notice-pagetype-module'] or cfg['sandbox-notice-pagetype-other'] depending what
-- namespace we are in. $2 is a link to the main template page, and $3 is a diff link between
-- the sandbox and the main template. The display value of the diff link is set by
-- cfg['sandbox-notice-compare-link-display'].
--]]
cfg['sandbox-notice-blurb'] = 'This is the $1 for $2.'
cfg['sandbox-notice-diff-blurb'] = 'This is the $1 for $2 ($3).'
cfg['sandbox-notice-compare-link-display'] = 'diff'
--[[
-- cfg['sandbox-notice-testcases-blurb']
-- cfg['sandbox-notice-testcases-link-display']
-- cfg['sandbox-notice-testcases-run-blurb']
-- cfg['sandbox-notice-testcases-run-link-display']
-- cfg['sandbox-notice-testcases-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit. $1 is a link to the test cases page.
-- cfg['sandbox-notice-testcases-link-display'] is the display value for that link.
-- cfg['sandbox-notice-testcases-run-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit, along with a link to run it. $1 is a link to the test
-- cases page, and $2 is a link to the page to run it.
-- cfg['sandbox-notice-testcases-run-link-display'] is the display value for the link to run the test
-- cases.
--]]
cfg['sandbox-notice-testcases-blurb'] = 'See also the companion subpage for $1.'
cfg['sandbox-notice-testcases-link-display'] = 'test cases'
cfg['sandbox-notice-testcases-run-blurb'] = 'See also the companion subpage for $1 ($2).'
cfg['sandbox-notice-testcases-run-link-display'] = 'run'
-- cfg['sandbox-category'] - A category to add to all template sandboxes.
-- cfg['module-sandbox-category'] - A category to add to all module sandboxes.
-- cfg['module-sandbox-category'] - A category to add to all sandboxe not in templates or modules.
cfg['sandbox-category'] = 'Template sandboxes'
cfg['module-sandbox-category'] = 'Module sandboxes'
cfg['other-sandbox-category'] = 'Sandboxes outside of template or module namespace'
----------------------------------------------------------------------------------------------------
-- Start box configuration
----------------------------------------------------------------------------------------------------
-- cfg['documentation-icon-wikitext']
-- The wikitext for the icon shown at the top of the template.
cfg['documentation-icon-wikitext'] = '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]]'
-- cfg['template-namespace-heading']
-- The heading shown in the template namespace.
cfg['template-namespace-heading'] = 'ಟೆಂಪ್ಲೇಟ್ ದಾಕಲೆ'
-- cfg['module-namespace-heading']
-- The heading shown in the module namespace.
cfg['module-namespace-heading'] = 'ಮೋಡ್ಯೂಲ್ ದಾಕಲೆ'
-- cfg['file-namespace-heading']
-- The heading shown in the file namespace.
cfg['file-namespace-heading'] = 'Summary'
-- cfg['other-namespaces-heading']
-- The heading shown in other namespaces.
cfg['other-namespaces-heading'] = 'Documentation'
-- cfg['view-link-display']
-- The text to display for "view" links.
cfg['view-link-display'] = 'view'
-- cfg['edit-link-display']
-- The text to display for "edit" links.
cfg['edit-link-display'] = 'edit'
-- cfg['history-link-display']
-- The text to display for "history" links.
cfg['history-link-display'] = 'history'
-- cfg['purge-link-display']
-- The text to display for "purge" links.
cfg['purge-link-display'] = 'purge'
-- cfg['create-link-display']
-- The text to display for "create" links.
cfg['create-link-display'] = 'create'
----------------------------------------------------------------------------------------------------
-- Link box (end box) configuration
----------------------------------------------------------------------------------------------------
-- cfg['transcluded-from-blurb']
-- Notice displayed when the docs are transcluded from another page. $1 is a wikilink to that page.
cfg['transcluded-from-blurb'] = 'The above [[:en:Wikipedia:Template documentation|documentation]] is [[:en:Help:Transclusion|transcluded]] from $1.'
--[[
-- cfg['create-module-doc-blurb']
-- Notice displayed in the module namespace when the documentation subpage does not exist.
-- $1 is a link to create the documentation page with the preload cfg['module-preload'] and the
-- display cfg['create-link-display'].
--]]
cfg['create-module-doc-blurb'] = 'You might want to $1 a documentation page for this [[:en:Wikipedia:Lua|Scribunto module]].'
----------------------------------------------------------------------------------------------------
-- Experiment blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['experiment-blurb-template']
-- cfg['experiment-blurb-module']
-- The experiment blurb is the text inviting editors to experiment in sandbox and test cases pages.
-- It is only shown in the template and module namespaces. With the default English settings, it
-- might look like this:
--
-- Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages.
--
-- In this example, "sandbox", "edit", "diff", "testcases", and "edit" would all be links.
--
-- There are two versions, cfg['experiment-blurb-template'] and cfg['experiment-blurb-module'], depending
-- on what namespace we are in.
--
-- Parameters:
--
-- $1 is a link to the sandbox page. If the sandbox exists, it is in the following format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-edit-link-display'] | cfg['compare-link-display'])
--
-- If the sandbox doesn't exist, it is in the format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-create-link-display'] | cfg['mirror-link-display'])
--
-- The link for cfg['sandbox-create-link-display'] link preloads the page with cfg['template-sandbox-preload']
-- or cfg['module-sandbox-preload'], depending on the current namespace. The link for cfg['mirror-link-display']
-- loads a default edit summary of cfg['mirror-edit-summary'].
--
-- $2 is a link to the test cases page. If the test cases page exists, it is in the following format:
--
-- cfg['testcases-link-display'] (cfg['testcases-edit-link-display'] | cfg['testcases-run-link-display'])
--
-- If the test cases page doesn't exist, it is in the format:
--
-- cfg['testcases-link-display'] (cfg['testcases-create-link-display'])
--
-- If the test cases page doesn't exist, the link for cfg['testcases-create-link-display'] preloads the
-- page with cfg['template-testcases-preload'] or cfg['module-testcases-preload'], depending on the current
-- namespace.
--]]
cfg['experiment-blurb-template'] = "Editors can experiment in this template's $1 and $2 pages."
cfg['experiment-blurb-module'] = "Editors can experiment in this module's $1 and $2 pages."
----------------------------------------------------------------------------------------------------
-- Sandbox link configuration
----------------------------------------------------------------------------------------------------
-- cfg['sandbox-subpage']
-- The name of the template subpage typically used for sandboxes.
cfg['sandbox-subpage'] = 'sandbox'
-- cfg['template-sandbox-preload']
-- Preload file for template sandbox pages.
cfg['template-sandbox-preload'] = 'Template:Documentation/preload-sandbox'
-- cfg['module-sandbox-preload']
-- Preload file for Lua module sandbox pages.
cfg['module-sandbox-preload'] = 'Template:Documentation/preload-module-sandbox'
-- cfg['sandbox-link-display']
-- The text to display for "sandbox" links.
cfg['sandbox-link-display'] = 'sandbox'
-- cfg['sandbox-edit-link-display']
-- The text to display for sandbox "edit" links.
cfg['sandbox-edit-link-display'] = 'edit'
-- cfg['sandbox-create-link-display']
-- The text to display for sandbox "create" links.
cfg['sandbox-create-link-display'] = 'create'
-- cfg['compare-link-display']
-- The text to display for "compare" links.
cfg['compare-link-display'] = 'diff'
-- cfg['mirror-edit-summary']
-- The default edit summary to use when a user clicks the "mirror" link. $1 is a wikilink to the
-- template page.
cfg['mirror-edit-summary'] = 'Create sandbox version of $1'
-- cfg['mirror-link-display']
-- The text to display for "mirror" links.
cfg['mirror-link-display'] = 'mirror'
-- cfg['mirror-link-preload']
-- The page to preload when a user clicks the "mirror" link.
cfg['mirror-link-preload'] = 'Template:Documentation/mirror'
----------------------------------------------------------------------------------------------------
-- Test cases link configuration
----------------------------------------------------------------------------------------------------
-- cfg['testcases-subpage']
-- The name of the template subpage typically used for test cases.
cfg['testcases-subpage'] = 'testcases'
-- cfg['template-testcases-preload']
-- Preload file for template test cases pages.
cfg['template-testcases-preload'] = 'Template:Documentation/preload-testcases'
-- cfg['module-testcases-preload']
-- Preload file for Lua module test cases pages.
cfg['module-testcases-preload'] = 'Template:Documentation/preload-module-testcases'
-- cfg['testcases-link-display']
-- The text to display for "testcases" links.
cfg['testcases-link-display'] = 'testcases'
-- cfg['testcases-edit-link-display']
-- The text to display for test cases "edit" links.
cfg['testcases-edit-link-display'] = 'edit'
-- cfg['testcases-run-link-display']
-- The text to display for test cases "run" links.
cfg['testcases-run-link-display'] = 'run'
-- cfg['testcases-create-link-display']
-- The text to display for test cases "create" links.
cfg['testcases-create-link-display'] = 'create'
----------------------------------------------------------------------------------------------------
-- Add categories blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['add-categories-blurb']
-- Text to direct users to add categories to the /doc subpage. Not used if the "content" or
-- "docname fed" arguments are set, as then it is not clear where to add the categories. $1 is a
-- link to the /doc subpage with a display value of cfg['doc-link-display'].
--]]
cfg['add-categories-blurb'] = 'Add categories to the $1 subpage.'
-- cfg['doc-link-display']
-- The text to display when linking to the /doc subpage.
cfg['doc-link-display'] = '/doc'
----------------------------------------------------------------------------------------------------
-- Subpages link configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['subpages-blurb']
-- The "Subpages of this template" blurb. $1 is a link to the main template's subpages with a
-- display value of cfg['subpages-link-display']. In the English version this blurb is simply
-- the link followed by a period, and the link display provides the actual text.
--]]
cfg['subpages-blurb'] = '$1.'
--[[
-- cfg['subpages-link-display']
-- The text to display for the "subpages of this page" link. $1 is cfg['template-pagetype'],
-- cfg['module-pagetype'] or cfg['default-pagetype'], depending on whether the current page is in
-- the template namespace, the module namespace, or another namespace.
--]]
cfg['subpages-link-display'] = 'Subpages of this $1'
-- cfg['template-pagetype']
-- The pagetype to display for template pages.
cfg['template-pagetype'] = 'template'
-- cfg['module-pagetype']
-- The pagetype to display for Lua module pages.
cfg['module-pagetype'] = 'module'
-- cfg['default-pagetype']
-- The pagetype to display for pages other than templates or Lua modules.
cfg['default-pagetype'] = 'page'
----------------------------------------------------------------------------------------------------
-- Doc link configuration
----------------------------------------------------------------------------------------------------
-- cfg['doc-subpage']
-- The name of the subpage typically used for documentation pages.
cfg['doc-subpage'] = 'doc'
-- cfg['docpage-preload']
-- Preload file for template documentation pages in all namespaces.
cfg['docpage-preload'] = 'Template:Documentation/preload'
-- cfg['module-preload']
-- Preload file for Lua module documentation pages.
cfg['module-preload'] = 'Template:Documentation/preload-module-doc'
----------------------------------------------------------------------------------------------------
-- HTML and CSS configuration
----------------------------------------------------------------------------------------------------
-- cfg['templatestyles']
-- The name of the TemplateStyles page where CSS is kept.
-- Sandbox CSS will be at Module:Documentation/sandbox/styles.css when needed.
cfg['templatestyles'] = 'Module:Documentation/styles.css'
-- cfg['container']
-- Class which can be used to set flex or grid CSS on the
-- two child divs documentation and documentation-metadata
cfg['container'] = 'documentation-container'
-- cfg['main-div-classes']
-- Classes added to the main HTML "div" tag.
cfg['main-div-classes'] = 'documentation'
-- cfg['main-div-heading-class']
-- Class for the main heading for templates and modules and assoc. talk spaces
cfg['main-div-heading-class'] = 'documentation-heading'
-- cfg['start-box-class']
-- Class for the start box
cfg['start-box-class'] = 'documentation-startbox'
-- cfg['start-box-link-classes']
-- Classes used for the [view][edit][history] or [create] links in the start box.
-- mw-editsection-like is per [[Wikipedia:Village pump (technical)/Archive 117]]
cfg['start-box-link-classes'] = 'mw-editsection-like plainlinks'
-- cfg['end-box-class']
-- Class for the end box.
cfg['end-box-class'] = 'documentation-metadata'
-- cfg['end-box-plainlinks']
-- Plainlinks
cfg['end-box-plainlinks'] = 'plainlinks'
-- cfg['toolbar-class']
-- Class added for toolbar links.
cfg['toolbar-class'] = 'documentation-toolbar'
-- cfg['clear']
-- Just used to clear things.
cfg['clear'] = 'documentation-clear'
----------------------------------------------------------------------------------------------------
-- Tracking category configuration
----------------------------------------------------------------------------------------------------
-- cfg['display-strange-usage-category']
-- Set to true to enable output of cfg['strange-usage-category'] if the module is used on a /doc subpage
-- or a /testcases subpage. This should be a boolean value (either true or false).
cfg['display-strange-usage-category'] = true
-- cfg['strange-usage-category']
-- Category to output if cfg['display-strange-usage-category'] is set to true and the module is used on a
-- /doc subpage or a /testcases subpage.
cfg['strange-usage-category'] = 'Wikipedia pages with strange ((documentation)) usage'
--[[
----------------------------------------------------------------------------------------------------
-- End configuration
--
-- Don't edit anything below this line.
----------------------------------------------------------------------------------------------------
--]]
return cfg
p2z9jflm8l725l59666uexzzut9w0pk
ಮೋಡ್ಯೂಲ್:Documentation/doc
828
5075
370424
348221
2026-08-30T19:56:36Z
en>Andrybak
0
[[Module:Protection banner]] was renamed to [[Module:Protected page]] (per [[Special:Diff/1372159443]], [[Template talk:Protected page#Requested move 16 August 2026]]) [[:w:en:User:Ponor/wAwB| #wAwB]]
370424
wikitext
text/x-wiki
{{Used in system|in [[MediaWiki:Scribunto-doc-page-show]], in [[MediaWiki:Scribunto-doc-page-does-not-exist]]}}
{{Module rating|protected}}
{{Lua|Module:Documentation/config|Module:Arguments|Module:Message box|Module:Module wikitext|Module:Protected page}}
{{Uses TemplateStyles|Module:Documentation/styles.css}}
{{Infobox Lua
| title = Documentation
| description = Displays a green box containing documentation for [[Help:Template|templates]], [[Wikipedia:Lua|Lua modules]], or other pages.
| status = stable
| dependencies =
* [[Module:Documentation/config]]
* [[Module:Arguments]]
* [[Module:Message box]]
* [[Module:Module wikitext]]
* [[Module:Protected page]]
}}
This module displays a green box containing documentation for [[Help:Template|templates]], [[Wikipedia:Lua|Lua modules]], or other pages. The {{tl|documentation}} template invokes it.
== Normal usage ==
For most uses, you should use the {{tl|documentation}} template; please see that template's page for its usage instructions and parameters.
== Use in other modules ==
To use this module from another Lua module, first load it with <code>require</code>:
<syntaxhighlight lang="lua">
local documentation = require('Module:Documentation').main
</syntaxhighlight>
Then you can simply call it using a table of arguments.
<syntaxhighlight lang="lua">
documentation{content = 'Some documentation', ['link box'] = 'My custom link box'}
</syntaxhighlight>
Please refer to the [[Template:Documentation/doc|template documentation]] for usage instructions and a list of parameters.
== Porting to other wikis ==
The module has a configuration file at [[Module:Documentation/config]] which is intended to allow easy translation and porting to other wikis. Please see the code comments in the config page for instructions. Also, links to Wikipedia within config strings, i.e. <code><nowiki>[[Wikipedia:Template documentation|documentation]]</nowiki></code> will point to non-existent Wikipedia pages if config is on another wiki. Either modify, remove it, or add the interwiki prefix like so: <code><nowiki>[[w:Wikipedia:Template documentation|documentation]]</nowiki></code>.
If you have any questions, or you need a feature which is not currently implemented, please leave a message at <span class="plainlinks">[https://en.wikipedia.org/wiki/Template_talk:Documentation Template talk:Documentation]</span><!-- this link uses external link syntax because it is intended to direct users from third-party wikis to the Wikipedia template talk page; in this situation, an internal link would unhelpfully just point to their local template talk page, and the existence of any given interwiki prefix cannot be assumed --> to get the attention of a developer.
The messages that need to be customized to display a documentation template/module at the top of module pages are [[MediaWiki:Scribunto-doc-page-show]] and [[MediaWiki:Scribunto-doc-page-does-not-exist]].<noinclude>
[[Category:Module documentation pages]]
</noinclude>
fdogfy9bsfhigoyab2mg7sod3au9er2
370425
370424
2026-09-28T08:22:28Z
ChiK
1136
1 revision imported from [[:en:Module:Documentation/doc]]
370424
wikitext
text/x-wiki
{{Used in system|in [[MediaWiki:Scribunto-doc-page-show]], in [[MediaWiki:Scribunto-doc-page-does-not-exist]]}}
{{Module rating|protected}}
{{Lua|Module:Documentation/config|Module:Arguments|Module:Message box|Module:Module wikitext|Module:Protected page}}
{{Uses TemplateStyles|Module:Documentation/styles.css}}
{{Infobox Lua
| title = Documentation
| description = Displays a green box containing documentation for [[Help:Template|templates]], [[Wikipedia:Lua|Lua modules]], or other pages.
| status = stable
| dependencies =
* [[Module:Documentation/config]]
* [[Module:Arguments]]
* [[Module:Message box]]
* [[Module:Module wikitext]]
* [[Module:Protected page]]
}}
This module displays a green box containing documentation for [[Help:Template|templates]], [[Wikipedia:Lua|Lua modules]], or other pages. The {{tl|documentation}} template invokes it.
== Normal usage ==
For most uses, you should use the {{tl|documentation}} template; please see that template's page for its usage instructions and parameters.
== Use in other modules ==
To use this module from another Lua module, first load it with <code>require</code>:
<syntaxhighlight lang="lua">
local documentation = require('Module:Documentation').main
</syntaxhighlight>
Then you can simply call it using a table of arguments.
<syntaxhighlight lang="lua">
documentation{content = 'Some documentation', ['link box'] = 'My custom link box'}
</syntaxhighlight>
Please refer to the [[Template:Documentation/doc|template documentation]] for usage instructions and a list of parameters.
== Porting to other wikis ==
The module has a configuration file at [[Module:Documentation/config]] which is intended to allow easy translation and porting to other wikis. Please see the code comments in the config page for instructions. Also, links to Wikipedia within config strings, i.e. <code><nowiki>[[Wikipedia:Template documentation|documentation]]</nowiki></code> will point to non-existent Wikipedia pages if config is on another wiki. Either modify, remove it, or add the interwiki prefix like so: <code><nowiki>[[w:Wikipedia:Template documentation|documentation]]</nowiki></code>.
If you have any questions, or you need a feature which is not currently implemented, please leave a message at <span class="plainlinks">[https://en.wikipedia.org/wiki/Template_talk:Documentation Template talk:Documentation]</span><!-- this link uses external link syntax because it is intended to direct users from third-party wikis to the Wikipedia template talk page; in this situation, an internal link would unhelpfully just point to their local template talk page, and the existence of any given interwiki prefix cannot be assumed --> to get the attention of a developer.
The messages that need to be customized to display a documentation template/module at the top of module pages are [[MediaWiki:Scribunto-doc-page-show]] and [[MediaWiki:Scribunto-doc-page-does-not-exist]].<noinclude>
[[Category:Module documentation pages]]
</noinclude>
fdogfy9bsfhigoyab2mg7sod3au9er2
ಮೋಡ್ಯೂಲ್:Namespace detect/config
828
5080
370382
123835
2025-04-27T18:48:03Z
meta>Pppery
0
Protected "[[Module:Namespace detect/config]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
123834
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Namespace detect configuration data --
-- --
-- This module stores configuration data for Module:Namespace detect. Here --
-- you can localise the module to your wiki's language. --
-- --
-- To activate a configuration item, you need to uncomment it. This means --
-- that you need to remove the text "-- " at the start of the line. --
--------------------------------------------------------------------------------
local cfg = {} -- Don't edit this line.
--------------------------------------------------------------------------------
-- Parameter names --
-- These configuration items specify custom parameter names. Values added --
-- here will work in addition to the default English parameter names. --
-- To add one extra name, you can use this format: --
-- --
-- cfg.foo = 'parameter name' --
-- --
-- To add multiple names, you can use this format: --
-- --
-- cfg.foo = {'parameter name 1', 'parameter name 2', 'parameter name 3'} --
--------------------------------------------------------------------------------
---- This parameter displays content for the main namespace:
-- cfg.main = 'main'
---- This parameter displays in talk namespaces:
-- cfg.talk = 'talk'
---- This parameter displays content for "other" namespaces (namespaces for which
---- parameters have not been specified):
-- cfg.other = 'other'
---- This parameter makes talk pages behave as though they are the corresponding
---- subject namespace. Note that this parameter is used with [[Module:Yesno]].
---- Edit that module to change the default values of "yes", "no", etc.
-- cfg.subjectns = 'subjectns'
---- This parameter sets a demonstration namespace:
-- cfg.demospace = 'demospace'
---- This parameter sets a specific page to compare:
cfg.demopage = 'page'
--------------------------------------------------------------------------------
-- Table configuration --
-- These configuration items allow customisation of the "table" function, --
-- used to generate a table of possible parameters in the module --
-- documentation. --
--------------------------------------------------------------------------------
---- The header for the namespace column in the wikitable containing the list of
---- possible subject-space parameters.
-- cfg.wikitableNamespaceHeader = 'Namespace'
---- The header for the wikitable containing the list of possible subject-space
---- parameters.
-- cfg.wikitableAliasesHeader = 'Aliases'
--------------------------------------------------------------------------------
-- End of configuration data --
--------------------------------------------------------------------------------
return cfg -- Don't edit this line.
1o6ozz56i8q0xgyl6xa41n2v7kelhli
370383
370382
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Namespace_detect/config]]
123834
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Namespace detect configuration data --
-- --
-- This module stores configuration data for Module:Namespace detect. Here --
-- you can localise the module to your wiki's language. --
-- --
-- To activate a configuration item, you need to uncomment it. This means --
-- that you need to remove the text "-- " at the start of the line. --
--------------------------------------------------------------------------------
local cfg = {} -- Don't edit this line.
--------------------------------------------------------------------------------
-- Parameter names --
-- These configuration items specify custom parameter names. Values added --
-- here will work in addition to the default English parameter names. --
-- To add one extra name, you can use this format: --
-- --
-- cfg.foo = 'parameter name' --
-- --
-- To add multiple names, you can use this format: --
-- --
-- cfg.foo = {'parameter name 1', 'parameter name 2', 'parameter name 3'} --
--------------------------------------------------------------------------------
---- This parameter displays content for the main namespace:
-- cfg.main = 'main'
---- This parameter displays in talk namespaces:
-- cfg.talk = 'talk'
---- This parameter displays content for "other" namespaces (namespaces for which
---- parameters have not been specified):
-- cfg.other = 'other'
---- This parameter makes talk pages behave as though they are the corresponding
---- subject namespace. Note that this parameter is used with [[Module:Yesno]].
---- Edit that module to change the default values of "yes", "no", etc.
-- cfg.subjectns = 'subjectns'
---- This parameter sets a demonstration namespace:
-- cfg.demospace = 'demospace'
---- This parameter sets a specific page to compare:
cfg.demopage = 'page'
--------------------------------------------------------------------------------
-- Table configuration --
-- These configuration items allow customisation of the "table" function, --
-- used to generate a table of possible parameters in the module --
-- documentation. --
--------------------------------------------------------------------------------
---- The header for the namespace column in the wikitable containing the list of
---- possible subject-space parameters.
-- cfg.wikitableNamespaceHeader = 'Namespace'
---- The header for the wikitable containing the list of possible subject-space
---- parameters.
-- cfg.wikitableAliasesHeader = 'Aliases'
--------------------------------------------------------------------------------
-- End of configuration data --
--------------------------------------------------------------------------------
return cfg -- Don't edit this line.
1o6ozz56i8q0xgyl6xa41n2v7kelhli
ಮೋಡ್ಯೂಲ್:Namespace detect/data
828
5081
370380
123838
2025-04-27T18:47:39Z
meta>Pppery
0
Protected "[[Module:Namespace detect/data]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
123837
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Namespace detect data --
-- This module holds data for [[Module:Namespace detect]] to be loaded per --
-- page, rather than per #invoke, for performance reasons. --
--------------------------------------------------------------------------------
local cfg = require('Module:Namespace detect/config')
local function addKey(t, key, defaultKey)
if key ~= defaultKey then
t[#t + 1] = key
end
end
-- Get a table of parameters to query for each default parameter name.
-- This allows wikis to customise parameter names in the cfg table while
-- ensuring that default parameter names will always work. The cfg table
-- values can be added as a string, or as an array of strings.
local defaultKeys = {
'main',
'talk',
'other',
'subjectns',
'demospace',
'demopage'
}
local argKeys = {}
for i, defaultKey in ipairs(defaultKeys) do
argKeys[defaultKey] = {defaultKey}
end
for defaultKey, t in pairs(argKeys) do
local cfgValue = cfg[defaultKey]
local cfgValueType = type(cfgValue)
if cfgValueType == 'string' then
addKey(t, cfgValue, defaultKey)
elseif cfgValueType == 'table' then
for i, key in ipairs(cfgValue) do
addKey(t, key, defaultKey)
end
end
cfg[defaultKey] = nil -- Free the cfg value as we don't need it any more.
end
local function getParamMappings()
--[[
-- Returns a table of how parameter names map to namespace names. The keys
-- are the actual namespace names, in lower case, and the values are the
-- possible parameter names for that namespace, also in lower case. The
-- table entries are structured like this:
-- {
-- [''] = {'main'},
-- ['wikipedia'] = {'wikipedia', 'project', 'wp'},
-- ...
-- }
--]]
local mappings = {}
local mainNsName = mw.site.subjectNamespaces[0].name
mainNsName = mw.ustring.lower(mainNsName)
mappings[mainNsName] = mw.clone(argKeys.main)
mappings['talk'] = mw.clone(argKeys.talk)
for nsid, ns in pairs(mw.site.subjectNamespaces) do
if nsid ~= 0 then -- Exclude main namespace.
local nsname = mw.ustring.lower(ns.name)
local canonicalName = mw.ustring.lower(ns.canonicalName)
mappings[nsname] = {nsname}
if canonicalName ~= nsname then
table.insert(mappings[nsname], canonicalName)
end
for _, alias in ipairs(ns.aliases) do
table.insert(mappings[nsname], mw.ustring.lower(alias))
end
end
end
return mappings
end
return {
argKeys = argKeys,
cfg = cfg,
mappings = getParamMappings()
}
ojp6d3pc8mql5nufaqdg576c9so3479
370381
370380
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Namespace_detect/data]]
123837
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Namespace detect data --
-- This module holds data for [[Module:Namespace detect]] to be loaded per --
-- page, rather than per #invoke, for performance reasons. --
--------------------------------------------------------------------------------
local cfg = require('Module:Namespace detect/config')
local function addKey(t, key, defaultKey)
if key ~= defaultKey then
t[#t + 1] = key
end
end
-- Get a table of parameters to query for each default parameter name.
-- This allows wikis to customise parameter names in the cfg table while
-- ensuring that default parameter names will always work. The cfg table
-- values can be added as a string, or as an array of strings.
local defaultKeys = {
'main',
'talk',
'other',
'subjectns',
'demospace',
'demopage'
}
local argKeys = {}
for i, defaultKey in ipairs(defaultKeys) do
argKeys[defaultKey] = {defaultKey}
end
for defaultKey, t in pairs(argKeys) do
local cfgValue = cfg[defaultKey]
local cfgValueType = type(cfgValue)
if cfgValueType == 'string' then
addKey(t, cfgValue, defaultKey)
elseif cfgValueType == 'table' then
for i, key in ipairs(cfgValue) do
addKey(t, key, defaultKey)
end
end
cfg[defaultKey] = nil -- Free the cfg value as we don't need it any more.
end
local function getParamMappings()
--[[
-- Returns a table of how parameter names map to namespace names. The keys
-- are the actual namespace names, in lower case, and the values are the
-- possible parameter names for that namespace, also in lower case. The
-- table entries are structured like this:
-- {
-- [''] = {'main'},
-- ['wikipedia'] = {'wikipedia', 'project', 'wp'},
-- ...
-- }
--]]
local mappings = {}
local mainNsName = mw.site.subjectNamespaces[0].name
mainNsName = mw.ustring.lower(mainNsName)
mappings[mainNsName] = mw.clone(argKeys.main)
mappings['talk'] = mw.clone(argKeys.talk)
for nsid, ns in pairs(mw.site.subjectNamespaces) do
if nsid ~= 0 then -- Exclude main namespace.
local nsname = mw.ustring.lower(ns.name)
local canonicalName = mw.ustring.lower(ns.canonicalName)
mappings[nsname] = {nsname}
if canonicalName ~= nsname then
table.insert(mappings[nsname], canonicalName)
end
for _, alias in ipairs(ns.aliases) do
table.insert(mappings[nsname], mw.ustring.lower(alias))
end
end
end
return mappings
end
return {
argKeys = argKeys,
cfg = cfg,
mappings = getParamMappings()
}
ojp6d3pc8mql5nufaqdg576c9so3479
ಮೋಡ್ಯೂಲ್:Protection banner/config
828
5084
370443
359300
2026-08-30T17:20:50Z
en>Primefac
0
Primefac moved page [[Module:Protection banner/config]] to [[Module:Protected page/config]]: update following [[Special:Permalink/1372151970#Requested_move_16_August_2026|RM]]
370443
Scribunto
text/plain
return require [[Module:Protected page/config]]
9sgamab0yv8m46yxkwzud1pycb9kki4
370444
370443
2026-09-28T09:13:08Z
ChiK
1136
1 revision imported from [[:en:Module:Protection_banner/config]]
370443
Scribunto
text/plain
return require [[Module:Protected page/config]]
9sgamab0yv8m46yxkwzud1pycb9kki4
ಮೋಡ್ಯೂಲ್:Yesno
828
5085
370358
122367
2025-04-27T20:15:12Z
meta>Pppery
0
Protected "[[Module:Yesno]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
122366
Scribunto
text/plain
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to the template {{yesno}}.
return function (val, default)
-- If your wiki uses non-ascii characters for any of "yes", "no", etc., you
-- should replace "val:lower()" with "mw.ustring.lower(val)" in the
-- following line.
val = type(val) == 'string' and val:lower() or val
if val == nil then
return nil
elseif val == true
or val == 'yes'
or val == 'y'
or val == 'true'
or val == 't'
or val == 'on'
or tonumber(val) == 1
then
return true
elseif val == false
or val == 'no'
or val == 'n'
or val == 'false'
or val == 'f'
or val == 'off'
or tonumber(val) == 0
then
return false
else
return default
end
end
swdskn7svew8i9wuydn9uj5l3r2ghcs
370359
370358
2026-09-28T08:07:27Z
ChiK
1136
1 revision imported from [[:meta:Module:Yesno]]
122366
Scribunto
text/plain
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to the template {{yesno}}.
return function (val, default)
-- If your wiki uses non-ascii characters for any of "yes", "no", etc., you
-- should replace "val:lower()" with "mw.ustring.lower(val)" in the
-- following line.
val = type(val) == 'string' and val:lower() or val
if val == nil then
return nil
elseif val == true
or val == 'yes'
or val == 'y'
or val == 'true'
or val == 't'
or val == 'on'
or tonumber(val) == 1
then
return true
elseif val == false
or val == 'no'
or val == 'n'
or val == 'false'
or val == 'f'
or val == 'off'
or tonumber(val) == 0
then
return false
else
return default
end
end
swdskn7svew8i9wuydn9uj5l3r2ghcs
ಟೆಂಪ್ಲೇಟ್:Clear
10
5318
370396
139648
2021-10-29T20:00:38Z
meta>GeneralNotability
0
30 revisions imported from [[:w:Template:Clear]]: blame [[User:Barkeep49]]
370396
wikitext
text/x-wiki
<div style="clear:{{{1|both}}};"></div><noinclude>{{documentation}}</noinclude>
5aa2j06l3n3husy1g6jggf6oznzocau
370397
363225
2026-09-28T08:07:29Z
ChiK
1136
1 revision imported from [[:meta:Template:Clear]]
166136
wikitext
text/x-wiki
<div style="clear:{{{1|both}}};" class={{{class|}}}></div><noinclude>
{{documentation}}
</noinclude>
an9yinekx1cqo1nkoi5u8nuqub9qbvg
ಟೆಂಪ್ಲೇಟ್:Doc
10
5490
370406
159349
2022-03-31T20:21:40Z
meta>Xaosflux
0
Changed protection settings for "[[Template:Doc]]": used in interface ([Edit=Allow only administrators] (indefinite))
370406
wikitext
text/x-wiki
#redirect [[Template:Documentation]]
0h49uabfhaeo9mrdbcrfaps8q3fhem8
370407
159350
2026-09-28T08:07:30Z
ChiK
1136
1 revision imported from [[:meta:Template:Doc]]
159349
wikitext
text/x-wiki
#REDIRECT [[Template:Documentation]]
{{rcat shell|
{{R from template shortcut}}
}}
9lwgzjtu24rn0rx33yf4xwq9el62159
ಬಳಕೆದಾರೆ ಪಾತೆರ:Mahaveer Indra
3
5970
370270
370254
2026-09-27T13:31:46Z
Mahaveer Indra
1023
/* 10ನೇ ವರ್ಸಂತಿಗೆದ ಬರವು ಪಂತೊ!! */ ಪ್ರತಿಕ್ರಿಯೆ
370270
wikitext
text/x-wiki
{{ಸುಸ್ವಾಗತೊ}}--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೦:೫೪, ೩೦ ಜುಲಾಯಿ ೨೦೧೭ (IST)
== Wiki Loves Women South Asia Barnstar Award ==
{| style="background-color: ; border: 3px solid #f1a7e8; padding-right: 10px;"
|rowspan="2" valign="left; padding: 5px;" | [[File:WLW Barnstar.png|150px|frameless|left]]
|style="vertical-align:middle;" |
[[File:Wiki Loves Women South Asia 2020.svg|frameless|100px|right]]
Greetings!
Thank you for contributing to the [[:m:Wiki Loves Women South Asia 2020|Wiki Loves Women South Asia 2020]]. We are appreciative of your tireless efforts to create articles about Women in Folklore on Wikipedia. We are deeply inspired by your persistent efforts, dedication to bridge the gender and cultural gap on Wikipedia. Your tireless perseverance and love for the movement has brought us one step closer to our quest for attaining equity for underrepresented knowledge in our Wikimedia Projects. We are lucky to have amazing Wikimedians like you in our movement. Please find your Wiki Loves Women South Asia postcard [https://docs.google.com/forms/d/e/1FAIpQLSeGOOxMFK4vsENdHZgF56NHPw8agfiKD3OQMGnhdQdjbr6sig/viewform here]. Kindly obtain your postcards before 15th July 2020.
Keep shining!
Wiki Loves Women South Asia Team
|}
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೭, ೫ ಜುಲಾಯಿ ೨೦೨೦ (IST)
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/wlwsa&oldid=20247075 -->
== Review the Wikidata item ==
Hi Mahaveer Indra, I'm a Tamil Wikimedian, My understanding tulu is very basic level. I created a item based on tcy.wikipedia article {{Q|Q124285248}}. Kindly review this WD Item. Thank you [[ಬಳಕೆದಾರೆ:Sriveenkat|Sriveenkat]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Sriveenkat|ಪಾತೆರ್ಲೆ]]) ೧೬:೨೧, ೧೪ ಜನವರಿ ೨೦೨೪ (IST)
:Hi Namaste and Vanakkam. Actually I dont have much knowledge about wikidata, as per my review about wikidata relating to tcy article is correct. I was too added some data in coloumn. And i will forward ur mesaage to other Tulu wikipedians and will confirm once it will reviewed.
:Thank you. [[ಬಳಕೆದಾರೆ:Mahaveer Indra|Mahaveer Indra]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Mahaveer Indra|ಪಾತೆರ್ಲೆ]]) ೧೬:೪೬, ೧೪ ಜನವರಿ ೨೦೨೪ (IST)
::Ok Thank you! Wikidata is a very simple project and have big goals. If you interested on wikidata? See [[d:Help:Contents]].
::Currently tcy.wikipedia without wikidata item article list: https://wikidata-todo.toolforge.org/duplicity/#/list/tcywiki .
::Some items without statements Category:ತೆನಸ್ article with wikidata item without any statements: https://petscan.wmflabs.org/?psid=26757589 [[ಬಳಕೆದಾರೆ:Sriveenkat|Sriveenkat]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Sriveenkat|ಪಾತೆರ್ಲೆ]]) ೧೮:೦೬, ೧೪ ಜನವರಿ ೨೦೨೪ (IST)
== Invitation to Participate in the Wikimedia SAARC Conference Community Engagement Survey ==
Dear Community Members,
I hope this message finds you well. Please excuse the use of English; we encourage translations into your local languages to ensure inclusivity.
We are conducting a Community Engagement Survey to assess the sentiments, needs, and interests of South Asian Wikimedia communities in organizing the inaugural Wikimedia SAARC Regional Conference, proposed to be held in Kathmandu, Nepal.
This initiative aims to bring together participants from eight nations to collaborate towards shared goals. Your insights will play a vital role in shaping the event's focus, identifying priorities, and guiding the strategic planning for this landmark conference.
Survey Link: https://forms.gle/en8qSuCvaSxQVD7K6
We kindly request you to dedicate a few moments to complete the survey. Your feedback will significantly contribute to ensuring this conference addresses the community's needs and aspirations.
Deadline to Submit the Survey: 20 January 2025
Your participation is crucial in shaping the future of the Wikimedia SAARC community and fostering regional collaboration. Thank you for your time and valuable input.
Warm regards,<br>
[[:m:User:Biplab Anand|Biplab Anand]]
<!-- Message sent by User:Biplab Anand@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Biplab_Anand/lists&oldid=28078122 -->
== ಸ್ತ್ರೀವಾದೊ ಬೊಕ್ಕ ಜಾನಪದೊ 2025 ==
<div style="border:8px maroon ridge;padding:6px;>
[[File:ಸ್ತ್ರೀವಾದೊ ಬುಕ್ಕೊ ಜಾನಪದೊ banner.svg|750px|center|link=ವಿಕಿಪೀಡಿಯ:ಸ್ತ್ರೀವಾದೊ ಬುಕ್ಕೊ ಜಾನಪದೊ 2025]]<div style="padding:2em; background:#F6F6F6">
'''[[ವಿಕಿಮೀಡಿಯ:ಸ್ತ್ರೀವಾದೊ ಬುಕ್ಕೊ ಜಾನಪದೊ 2025|ಸ್ತ್ರೀವಾದೊ ಬೊಕ್ಕ ಜಾನಪದೊ 2025]]''' ಪನ್ಪಿನವು ವಿಕಿಪೀಡಿಯೊಡು ವರ್ಸೊಡೊರ ಫೆಬ್ರವರಿ ಬೊಕ್ಕ ಮಾರ್ಚ್ಡ್ ಆಯೋಜನೆ ಮಲ್ಪಿನ ಅಂತಾರಾಷ್ಟ್ರೀಯ ಬರವುದ ಪಂತೊ ಅತುಂಡು, ಉಂದೆನ್ ವಿಕಿಪೀಡಿಯೊಡು ಪ್ರಪಂಚೊದ ಬೇತೆ ಬೇತೆ ಪ್ರದೇಸೊಲೆಡ್ ಜಾನಪದೊ ಸಂಸ್ಕೃತಿಲು ಬೊಕ್ಕ ಪೊಂಜೊವುಲೆನ್ ಜಾನಪದೊಟ್ಟು ದಾಕಲೆ ಮಲ್ಪರೆ ಆಯೋಜನೆ ಮಲ್ಪುವೆರ್. ಈ ಯೋಜನೆ ಪಟ ಪಾಡುನ ಅಬಿಯಾನವಾದ್ ವಿಕಿಪೀಡಿಯ ಆವೃತ್ತಿಯಾತ್ಂಡ್ ವಿಕಿ ಲವ್ಸ್ ಫೋಕ್ಲೋರ್ (WLF) ಉಂದು ಪ್ರಪಂಚೊಡುಪ್ಪುನ ಜಾನಪದೊ ಸಂಪ್ರದಾಯೊಲೆನ್ ದಾಕಲೆ ಮಲ್ಪರೆ ವಿಕಿಮೀಡಿಯ ಕಾಮನ್ಸ್ಡ್ ಆಯೋಜನೆ ಮಲ್ದೆರ್.
</div></div>
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೦೦:೧೧, ೨೪ ಜನವರಿ ೨೦೨೫ (IST)
<!-- Message sent by User:ChiK@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:ChiK/list&oldid=28162174 -->
== Invitation: Karavali Wikimedians Stall & Community Meetup at Mangaluru Lit Fest 2026 ==
<div style="margin: 1em auto; padding: 15px; border: 2px solid #4b0082; border-radius: 15px; background-color: #fdfaf5; box-shadow: 5px 5px 15px rgba(0,0,0,0.1); max-width: 100%;">
<div style="text-align: center; margin-bottom: 20px;">
<span style="font-size: 160%; font-weight: bold; color: #cc5500; text-shadow: 1px 1px 2px #ddd;">✨ Karavali Wikimedians @ Mangaluru Lit Fest 2026 ✨</span><br>
<span style="font-size: 120%; color: #4b0082; font-weight: bold;">Celebrating 10th Years of Tulu Wikipedia & 25th Years of Wikipedia</span></div>
Dear Wikimedians,
Warm greetings from '''Karavali Wikimedians User Group'''! 🌟
We are thrilled to invite you to the '''[[:m:Karavali Wikimedians Stall & Community Meetup at Mangaluru Lit Fest 2026|8th Edition of the Mangaluru Literature Festival (#MlrLitFest)]]'''. This year is a historic milestone as we kick-start the '''[[:m:Tulu Wikipedia 10th Anniversary|10th Anniversary of Tulu Wikipedia]]'''!
<div style="display: flex; flex-wrap: wrap; gap: 10px; width: 100%; background: transparent;">
<div style="flex: 1; min-width: 250px; padding: 10px; border: 1px dashed #cc5500; border-radius: 10px; background: #ffffff; box-sizing: border-box;">
<span style="font-size: 110%; color: #cc5500;">📅 '''When:'''</span><br>
'''10th & 11th January 2026'''
<br><br>
<span style="font-size: 110%; color: #cc5500;">📍 '''Where:'''</span><br>
'''Dr. TMA Pai International Convention Centre, Mangaluru'''
</div>
<div style="flex: 1; min-width: 250px; padding: 10px; border: 1px dashed #2e8b57; border-radius: 10px; background: #ffffff; box-sizing: border-box;">
<span style="font-size: 110%; color: #2e8b57;">🚀 '''The Wiki Stall:'''</span><br>
Visit our stall to see our work in language documentation and cultural preservation. We need your energy to help manage and showcase our projects!
</div></div>
<div style="margin-top: 20px; padding: 15px; background-color: #f3eafb; border-left: 10px solid #4b0082; border-radius: 5px;">
<span style="font-size: 130%; font-weight: bold; color: #202122;">📌 Special Community Meetup</span><br>
'''Date:''' 11th January 2026 (Day 2)<br>
'''Time:''' 11:00 AM (Followed by Lunch 🍛)<br>
'''Agenda:''' '''''Future roadmaps, upcoming projects, Community health and capacity building.'''''
</div>
<br>
* We warmly invite all community members to attend both days of the festival, and we strongly encourage you not to miss the second day’s meetup, which will be an important space for collective reflection and future planning. We look forward to your presence, participation, and support in making this celebration and gathering meaningful and successful.
'''Warm regards,'''<br/>
<span style="color: #4b0082; font-weight: bold;">President and Secretary</span><br/>Karavali Wikimedians User Group, Mangaluru</div>
<!-- Message sent by User:ChiK@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Karavali_Wikimedians/Events/delivery_list/MlrLitFest&oldid=29873017 -->
== Meeting Invitation: Karavali Wikimedians User Group (KWUG) ==
'''Namaskara!'''
You are cordially invited to the upcoming online meeting of the Karavali Wikimedians User Group. We will be discussing key projects, including the 10th-anniversary celebrations for Tulu Wikipedia and our cultural heritage campaigns.
'''Meeting Details:''' <br/>
📅 Date: Thursday, 23 April 2026 <br/>
⏰ Time: 07:30 PM (IST) <br/>
📍 Venue: Google Meet (Online) <br/>
🔗 Meeting Link: https://meet.google.com/xgs-fodf-ouy
'''Agenda:''' <br/>
Wiki Loves Tuluvas: Living and Cultural Heritage campaign. <br/>
Tulu Wikipedia 10th Anniversary: Planning the milestone celebration. <br/>
In-person Meeting: Scheduling our next physical gathering. <br/>
GLAM Activity: Updates on gallery and library collaborations. <br/>
Open Discussion: Other community matters.
Your participation and ideas are vital to the growth of our community. See you there...
'''More:''' <br/>
https://meta.wikimedia.org/wiki/Karavali_Wikimedians/Meetups/Online_Meetup_23_April_2026
'''On behalf''', <br/>
Karavali Wikimedians
<!-- Message sent by User:ChiK@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Karavali_Wikimedians/Events/delivery_list&oldid=30440036 -->
== ತುಳು ವಿಕಿಪೀಡಿಯ ೧೦ನೇ ವರ್ಸಂತಿಗೆದ ಬರೆವು ಪಂತೊಗು ಲೆಪ್ಪೋಲೆ! ==
{| style="border: 2px solid #FFCC00; background-color: #FFF9E6; padding: 10px; border-radius: 8px; font-family: sans-serif; width: 100%;"
|-
|
'''ನಮಸ್ಕಾರ!''' 🙏
ನಮ್ಮ ತುಳು ವಿಕಿಪೀಡಿಯ ಸುರು ಆದ್ ಇತ್ತೆ ಪತ್ತ್ ವರ್ಷದ ಸಂಭ್ರಮೋಡುಂಡು. ಈ ಎಡ್ಡೆ ಲೇಸ್ದ ನೆನಪುಗಾದ್, ನಮ್ಮ ತುಳು ಬಾಸೆ ಬುಕ್ಕೊ ಸಂಸ್ಕೃತಿನ್ ಇಂಟರ್ನೆಟ್ಡ್ ಜಗತ್ತ್ಗೇ ತೆರಿಪಾಯೆರೆ ಒಂಜಿ ಪೊರ್ಲುದ '''ಲೇಖನ ಬರೆಪುನ ಪಂತೊನು''' ದೀಡುಂಡು.
ನಮ್ಮ ತುಳುನಾಡ್ದ ಇತಿಹಾಸ, ಸಂಸ್ಕೃತಿ, ಆಚಾರ-ವಿಚಾರದ ಬಗ್ಗೆ ಜ್ಞಾನ ಉಪ್ಪುನ ಮಾತೆರೆಗ್ಲಾ ಮುಲ್ಪ ಮುಕ್ತ ಆಯಿನ ಅವಕಾಶ ಉಂಡು!
=== 📅 ಪಂತೊದ ದಿನೊಕ್ಕುಲು ===
* '''ಸುರು ಆಪುನ ದಿನ:''' ಜೂನ್ ೫, ೨೦೨೬ (00:00 UTC)
* '''ಮುಗಿಯುನಾ ದಿನ:''' ಆಗಸ್ಟ್ ೪, ೨೦೨೬ (11:59 UTC)
=== 📝 ಪಂತೊದ ನಿಯಮೊಲು ===
# '''ವಿಷಯ:''' ನಮ್ಮ ಸ್ಥಳೀಯ ಸಂಸ್ಕೃತಿ ಬೊಕ್ಕ ತುಳುನಾಡ್ದ ಬಗ್ಗೆ ಇಪ್ಪೊಡು.
# '''ಗಾತ್ರ:''' ಪೊಸ ಲೇಖನ ಅತ್ತಂಡ ಎಕ್ಸ್ಪ್ಯಾಂಡ್ ಮಲ್ತಿನ ಲೇಖನ ಕಮ್ಮಿ ಪಂಡಲಾ '''೩೦೦ ಪದೊಕುಲು''' (ಅತ್ತಂಡ ೩,೦೦೦ ಬೈಟ್ಸ್) ಇಪ್ಪೊಡು.
# '''ಗುಣಮಟ್ಟ:''' ಸ್ವಂತ ಬರೆತಿನ ಇಪ್ಪೊಡು (Copy-paste ಬುಕ್ಕೊ ಮೆಷಿನ್ ಟ್ರಾನ್ಸ್ಲೇಟ್ ಮಲ್ದಿನ ಲೇಖನೊಲು ಬಲ್ಲಿ). ಸರಿಯಾಯಿನ ಆಧಾರ/ಲಿಂಕ್ ದೀಡೊಡು.
=== 🏆 ಬೊಮ್ಮನೊಲು ===
* ವಿಶೇಷ ಬಹುಮಾನೊಲು ಬುಕ್ಕೊ ಸರ್ಟಿಫಿಕೇಟ್ಲು ಉಂಡು! (ವಿವರೊಲು ಬೇಗನೇ ಪ್ರಕಟ ಆಪುಂಡು).
----
📢 '''ಹೆಚ್ಚಿನ ಮಾಹಿತಿ ಬುಕ್ಕೊ ಪಾಲ್ ಪಡೆಯರೆ ಈ ಪುಟೊಗು ಬಲೆ:''' [[tcy:ವಿಕಿಪೀಡಿಯ:10ನೇ ವರ್ಸಂತಿಗೆದ ಬರವು ಪಂತೊ|ವಿಕಿಪೀಡಿಯ:10ನೇ ವರ್ಸಂತಿಗೆದ ಬರವು ಪಂತೊ]]
ನಿಕ್ಲೆನ ಅಕ್ಷರೊಲು ನಮ್ಮ ತುಳು ಬಾಸೆಗ್ ಬಲ ಕೊರಡ್. ಬಲೆ, ಮಾತೆರ್ಲಾ ಒಟ್ಟಿಗೆ ಸೇರ್ದ್ ತುಳು ವಿಕಿಪೀಡಿಯನ್ ಬಂಗಾರ ಮಲ್ಪುಗ!
|}
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೪೮, ೪ ಜೂನ್ ೨೦೨೬ (IST)
<!-- Message sent by User:ChiK@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Tulu_Wikipedia_10th_Anniversary/delivery_list&oldid=30611683 -->
== ತುಳು ವಿಕಿಪೀಡಿಯಾದ ೧೦ನೇ ವರ್ಸೊದ ಸಂಭ್ರಮದ ಉಚ್ಚಯ ==
<div style="background: #fffdf5; border: 2px solid #800000; border-radius: 8px; padding: 18px; max-width: 650px; margin: 15px auto; font-family: sans-serif; color: #222; line-height: 1.6;">
<!-- Banner Header -->
<div style="text-align: center; border-bottom: 2px solid #ffe082; padding-bottom: 10px; margin-bottom: 15px;">
<h2 style="color: #d84315; margin: 0 0 5px 0; border: none; font-size: 22px;">🎉 ತುಳು ವಿಕಿಪೀಡಿಯದ ೧೦ನೇ ವರ್ಷದ ಆಚರಣೆ</h2>
<p style="margin: 0; font-weight: bold; color: #555;">ಮಾತೆರೆಗ್ಲಾ ಎಡ್ಡೆಪ್ಪುಲು!</p></div>
<p>ಸೆಪ್ಟೆಂಬರ್ 12 ಬುಕ್ಕೊ 13ನೇ ತಾರೀಕ್ದಾನಿ ಕುಡ್ಲಡ್ ನಡಪರೆ ಇಪ್ಪುನ ತುಳು ವಿಕಿಪೀಡಿಯದ ಪತ್ತನೇ ವರ್ಷದ ಆಚರಣೆನ್ ತೆರಿಪಾವರೆ ಎಂಕ್ಲೆಗ್ ಮಸ್ತ್ ಕುಸಿ ಆವೊಂದುಂಡು.</p>
<!-- Key Event Details -->
<div style="background: #fff8e1; border-left: 4px solid #ff8f00; padding: 10px 14px; margin: 12px 0;"><b>📅 ತಾರೀಕ್:</b> ಸೆಪ್ಟೆಂಬರ್ 12 ಬುಕ್ಕೊ 13<br><b>📍 ಜಾಗೆ:</b> ಕುಡ್ಲ (ಜಾಗೆ ನಿಗಾಂಟಾತ್ಜಿ)</div>
<p>ಆಚರಣೆ ಮಲ್ಪಿಯರ ಸುರು ಆತ್ಂಡ್. ಜವಾಬ್ದಾರಿಲೆನ್ ತಂಡೊ ಆದ್ ಪಟ್ಟೊಂದು, ಒಟ್ಟು ಸೇರ್ದ್ ಈ ಮೈಲಿಗಲ್ಲ್ನ್ ಮಾತೆರೆಗ್ಲಾ ಒಂಜಿ ನೆಂಪು ಇಪ್ಪುನಂನೆ ಆಚರಣೆ ಮಲ್ಪಿಯರ ಎಂಕುಲು ಎದುರು ತೂವೊಂದುಲ್ಲ.</p>
<p>ಜವಾಬ್ದಾರಿ ದೆತೊಂದು ಸ್ವಯಂಸೇವಕೆರಾದ್ ಈ ಲೇಸ್ಗ್ ಸಕಾಯೊ ಕೊರಿಯರ ಇಚ್ಚೆ ಇತ್ತ್ಂಡ, ದಯಮಲ್ತ್ ಎಂಕ್ಲೆಗ್ ತೆರಿಪಾಲೆ. ಪಾಲ್ ದೆತೊನಿಯರ ಮಾತೆರೆಗ್ಲಾ ಅವಕಾಸೊ ಉಂಡು ಅಂಚನೆ ನಿಕ್ಲೆನ ಬೆರಸಾಯೊ ಇತ್ತ್ಂಡ ಎಂಕ್ಲೆಗ್ ಕುಸಿಯಾಪುಂಡು.</p>
<p>ವ್ಯವಸ್ತೆ ಮಲ್ಲಪುನೆ - ವಿಸೇಸವಾದ್ ಒನಸ್ ತೆನಸ್ ಬುಕ್ಕೊ ಲಾಜಿಸ್ಟಿಕ್ಸ್ ಆಯೋಜಿಸಯರ ದಯಮಲ್ತ್ ಲಗತ್ತಿಸಾಯಿನ ಗೂಗಲ್ ಫಾರ್ಮ್ನ್ ಬರ್ತಿ ಮಲ್ತ್ದ್ ನಿಗ್ಲ್ ಬರ್ಪುನೆನ್ ಎಂಕ್ಲೆಗ್ ತೆರಿಪಾಲೆ.</p>
<!-- CTA Registration Button -->
<div style="text-align: center; margin: 20px 0; background: #fff8e1; color: #ffffff !important; padding: 10px 20px; text-decoration: none; font-weight: bold; border-radius: 4px; display: inline-block;">[https://docs.google.com/forms/d/e/1FAIpQLSenIOP2YtOn3bbxSU2ijO5YeYveIECUu_UovVREKz7Iy-jkjg/viewform?usp=dialog📝 ಗೂಗಲ್ ಫಾರ್ಮ್ ಬರ್ತಿ ಮಲ್ಪಿ (ಆಗಸ್ಟ್ 13 ಮುಟ್ಟ)]</div>
<!-- Note Box -->
<div style="background: #e8f5e9; border: 1px solid #c8e6c9; border-radius: 4px; padding: 10px 14px; font-size: 14px; color: #1b5e20; margin: 12px 0;"><b>📌 ಗಮನಿಸಲೆ:</b> ನಮೊ ಒಂಜಿ ಕಿನ್ಯ ಬಜೆಟ್ಡ್ ಬೇಲೆ ಮಲ್ತೊಂದಿಪ್ಪುನೆ. ಅಯಿಡ್ದಾದ್ ನೆರೆಕರೆ ತಾಲೂಕು, ಜಿಲ್ಲೆದಗ್ಲ್ ಪಾಲ್ ಪಡೆವೊನ್ಬೆರ್. ಅಂಚನೇ ದೂರೊದ ಜಿಲ್ಲೆದಕ್ಲ್ ಬರೊಂದುಲ್ಲೆರ್. ಕುಡ್ಲದ ಪಿದಯಿಡ್ದ್ ಬರ್ಪುನಕ್ಲೆಗ್ ಉಂತುನೆಗ್ ಬೆಂಬಲೊ ಕೊರೊಂದುಲ್ಲೊ. ದೂರೊದಕ್ಲೆಗ್ ಉಂತುನ ವ್ಯವಸ್ತೆನ್ ಮಲ್ಪೊಡು, ಅಂಚನೆ ವನಸ್ಗ್ ಪನೊಡು ಪನ್ಪುನ ನೆಲೆಟ್ ನಿಕ್ಲ್ ಬರ್ಪುನೆನ್ ದುಂಬೆ ಪನ್ಲೆಂದ್ ವಿನಂತಿ ಮಲ್ತೊಂದುಲ್ಲೊ.</div>
<p>ಕುಡ್ಲದ ಮಾತೆರೆನ್ಲಾ ತುಳು ವಿಕಿಪೀಡಿಯದ 10 ವರ್ಸೊದ ಗೌಜಿನ್ ಒಟ್ಟಾದ್ ಆಚರಣೆ ಮಲ್ಪಿಯರ ಎದುರು ತೂವೊಂದುಲ್ಲೊ! 🙌</p>
<!-- Signature -->
<div style="text-align: right; margin-top: 15px; font-size: 14px; color: #666; border-top: 1px solid #eee; padding-top: 8px;"> ಪತ್ತನೇ ವರ್ಸೊದ ತಯಾರಿಡ್ ಪಾಲ್ ಪಡೆಯಿನ ಮಾತೆರೆಗ್ಲಾ ಎಡ್ಡೆಪುದ ಸೊಲ್ಮೆಲು.<br> <b>ಈವೆಂಟ್ ಕೋ-ಆರ್ಡಿನೇಟರ್</b>, ತುಳು ವಿಕಿಪೀಡಿಯ ಪತ್ತನೆ ವರ್ಸಾಚರಣೆ</div>
</div>
<!-- Message sent by User:ChiK@tcywiki using the list at https://tcy.wikipedia.org/w/index.php?title=%E0%B2%B5%E0%B2%BF%E0%B2%95%E0%B2%BF%E0%B2%AA%E0%B3%80%E0%B2%A1%E0%B2%BF%E0%B2%AF:10%E0%B2%A8%E0%B3%87_%E0%B2%B5%E0%B2%B0%E0%B3%8D%E0%B2%B8%E0%B2%82%E0%B2%A4%E0%B2%BF%E0%B2%97%E0%B3%86/%E0%B2%B2%E0%B3%86%E0%B2%AA%E0%B3%8D%E0%B2%AA%E0%B3%8B%E0%B2%B2%E0%B3%86&oldid=365205 -->
== ತುಳು ವಿಕಿಪೀಡಿಯ 10ನೇ ವರ್ಸಂತಿಗೆದ ಬರವು ಪಂತೊದ ಎಡ್ಡೆಪ್ಪುಲು ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{| style="background-color: #ffe3ec; border: 1px solid #800000;"
|rowspan="2" style="vertical-align: middle; padding: 5px;" | [[File:TCYWIKI-10.svg|130px]]
|style="font-size: x-large; padding: 3px 3px 0 3px; height: 1.5em;" |'''ಪಂತೊದ ಎಡ್ಡೆಪ್ಪುಲು'''
|-
| ತುಳು ವಿಕಿಪೀಡಿಯದ ಪತ್ತನೇ ವರ್ಷದ ಬರವುದ ಪಂತೊದ ಪಾಲ್ ದೆತೊಂದು ಯಶಸ್ವಿ ಕೊಡುಗೆ ಕೊರ್ನೆಗ್ ವಿಕಿಪೀಡಿಯ ಸಮುದಾಯದ ಪರವಾದ್ ಸೊಲ್ಮೆಲು!
''ತುಳು ಬಾಸೆ ಬುಲೆವಡ್, ಗೇನೊದ ಸಿರಿ ಒರಿಯಡ್.''
|}
</div>
<!-- Message sent by User:ChiK@tcywiki using the list at https://tcy.wikipedia.org/w/index.php?title=%E0%B2%B5%E0%B2%BF%E0%B2%95%E0%B2%BF%E0%B2%AA%E0%B3%80%E0%B2%A1%E0%B2%BF%E0%B2%AF:10%E0%B2%A8%E0%B3%87_%E0%B2%B5%E0%B2%B0%E0%B3%8D%E0%B2%B8%E0%B2%82%E0%B2%A4%E0%B2%BF%E0%B2%97%E0%B3%86%E0%B2%A6_%E0%B2%AC%E0%B2%B0%E0%B2%B5%E0%B3%81_%E0%B2%AA%E0%B2%82%E0%B2%A4%E0%B3%8A/%E0%B2%AA%E0%B2%B2%E0%B2%BF%E0%B2%A4%E0%B2%BE%E0%B2%82%E0%B2%B8%E0%B3%8A%E0%B2%B2%E0%B3%8D/dl&oldid=368681 -->
== 10ನೇ ವರ್ಸಂತಿಗೆದ ಬರವು ಪಂತೊ!! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{| style="background-color: #ffe3ec; border: 1px solid #800000; border-radius:8px; box-shadow:2px 2px 10px rgba(0,0,0,0.2); box-sizing:border-box; overflow:hidden;"
|rowspan="2" style="vertical-align: middle; padding: 5px;" | [[File:Wikipedia-logo-v2-tcy-10-alt.svg|120px]]
|style=" padding: 3px 3px 0 3px; height: 1.0em;" |Mahaveer Indra, ಈರೆಗ್ '''ತುಳು ವಿಕಿಪೀಡಿಯ 10ನೇ ವರ್ಸಂತಿಗೆದ ಎಡ್ಡೆಪ್ಪುಲು!'''
|-
| ತುಳು ವಿಕಿಪೀಡಿಯದ ಪತ್ತನೇ ವರ್ಷದ ಬರವುದ ಪಂತೊಡು ಪಾಲ್ ದೆತೊಂದು ಯಶಸ್ವಿ ಕೊಡುಗೆ ಕೊರ್ನೆಗ್ ತುಳು ವಿಕಿಪೀಡಿಯ ಸಮುದಾಯದ ಪರವಾದ್ ಸೊಲ್ಮೆಲು!.
ಬರವು ಪಂತೊಡು ಪಾಲು ಪಡೆಯಿನ ಬೆರಿ ಸಕಾಯೊದ ಇನಾಮ್ಗು 05 ಅಕ್ಟೋಬರ್ 2026 ಗ್ ದುಂಬು '''[https://forms.gle/ocwMFdrSQDsyB9Jn9 ಪಾರ್ಮ್ ದಿಂಜಾಲೆ]'''
''ತುಳು ಬಾಸೆ ಬುಲೆವಡ್, ಗೇನೊದ ಸಿರಿ ಒರಿಯಡ್.''
|}</div>
[[User:ChiK|ChiK]] ([[User talk:ChiK|ಪಾತೆರ]]) 13:25, 27 ಸಪ್ಟಂಬರ್ 2026 (IST)
<!-- Message sent by User:ChiK@tcywiki using the list at https://tcy.wikipedia.org/w/index.php?title=%E0%B2%AC%E0%B2%B3%E0%B2%95%E0%B3%86%E0%B2%A6%E0%B2%BE%E0%B2%B0%E0%B3%86:ChiK/%E0%B2%95%E0%B2%B2%E0%B3%8D%E0%B2%AA%E0%B3%81%E0%B2%A8%E0%B2%95%E0%B2%B3/2&oldid=370249 -->
:Done [[ಬಳಕೆದಾರೆ:Mahaveer Indra|Mahaveer Indra]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Mahaveer Indra|ಪಾತೆರ್ಲೆ]]) 19:01, 27 ಸಪ್ಟಂಬರ್ 2026 (IST)
ozchg7efcr82f1w934uj1614og7jzbt
ಬಳಕೆದಾರೆ:Mahaveer Indra
2
5989
370344
360934
2026-09-28T07:36:58Z
Mahaveer Indra
1023
/* */
370344
wikitext
text/x-wiki
'''''{{CURRENTMONTHNAME}} {{CURRENTYEAR}}, {{CURRENTDAY}}'''ನೇ ತಾರೀಕ್ಗ್ '''[[ತುಳು ವಿಕಿಪೀಡಿಯ|ತುಳು ವಿಕಿಪೀಡಿಯೊ]]'''ಡು ಒಟ್ಟು '''{{NUMBEROFARTICLES}}''' ತುಳು ಬರವುಲು ಉಲ್ಲ.''
----------------------------------------------------------------------------------------------------------------------------------------------
{{#babel:kn|tcy-4|en-1}}{{Userbox/100wikidays}}
ಮಾತೆರೆಗ್ಲಾ [[ಸೊಲ್ಮೆ]]ಲು
ಎನ್ನ ಪುದರ್ ಮಹಾವೀರ್. ತಿರ್ಗಾಟ, ಪದ್ಯ ಕೇಣುನು, ರೇಡಿಯೋ, ಪಟ ದೆಪ್ಪುನು ಎನ್ನ ಹವ್ಯಾಸೊ.
ವಿಕಿಪೀಡಿಯದ ಕೆಲವೊಂಜಿ ಲೇಖನೊಲೆಡ್ ಕಿನ್ಯ ಕಿನ್ಯ ಬದಲಾವಣೆ, ಬೊಕ್ಕ ಭಾಷಾಂತರ ಮಾತ ಮಲ್ತೊಂದು ಉಪ್ಪುವೆ.
==ತುಳು ವಿಕಿಪಿಡಿಯೋಗು ಎನ್ನ ಕಾನಿಕೆಲು(ಪೊಸ ಬರವು)==
# [[ಒಂಟೆ]]
# [[ಕುಂದಾದ್ರಿ ಬೊಟ್ಟ]]
# [[ಶಂಕರ್ ನಾಗ್]]
# [[ರಾಜೇಶ್ವರಿ ಚಟರ್ಜಿ]]
# [[ರಾಮದಾಸ್ ಪಾಣೆಮಂಗಳೂರು ಶೆಣೈ]]
# [[ಉತ್ತರಣೆ]]
# [[ಗೋರಟೆ]]
# [[ಕೊರೋನಾವೈರಸ್ ಸೀಕ್ ೨೦೧೯]]
# [[ಕರ್ನಾಟಕೊಡು ೨೦೨೦ ಕೊರೋನಾವೈರಸ್ ಸೀಕ್]]
# [[ಕೃಷ್ಣರಾಜಸಾಗರ ಅಣೆಕಟ್ಟ್]]
# [[ಉಮಾಬಾಯಿ ಕುಂದಾಪುರ]]
# [[ವಿಲ್ಫಿ ರೆಬಿಂಬಸ್]]
# [[ಚೆಕ್ ಇಲಾವರಿ ವ್ಯವಸ್ಥೆ(ಸಿಟಿಎಸ್ 2010)]]
# [[ಪಲ್ಸ್ ಆಕ್ಸಿಮೀಟರ್]]
# [[ವೀರ ಚಕ್ರ]]
# [[ಚತುರ್ಮುಖ ಬಸದಿ, ಕಾರ್ಕಳ]]
# [[ಅಲೆಕ್ಸಾಂಡರ್ ಫ್ಲೆಮಿಂಗ್]]
# [[ಭಾರತೊದ ರಾಷ್ಟ್ರಗೀತೆ]]
# [[ಪ್ರಧಾನ ಮಂತ್ರಿ ಜನ್ ಧನ್ ಯೋಜನೆ]]
# [[ತೂಟೆದಾರ]]
# [[ಜಾನಕಿ ಆದಿ ನಾಗಪ್ಪನ್]]
# [[ಈಂದ್ದ ಮರ]]
# [[ಕರ್ನಾಟಕೊದ ನಾಡಗೀತೆ]]
# [[ಕೆ ಪಿ ರಾವ್]]
# [[ಮಿಜಾರು ಅಣ್ಣಪ್ಪ]]
# [[ಝಾನ್ಸಿ ರಾಣಿ ರೆಜಿಮೆಂಟ್]]
# [[ಕಾಮ ಕಸ್ತೂರಿ]]
# [[ಕುಕ್ಕು ಶುಂಠಿ]]
# [[ಮಣಿಪಾಲ]]
# [[ಕಾಟ್ ಬಸಲೆ(ಕಾಡ ಬಸಲೆ)|ಕಾಟ್ ಬಸಲೆ]]
# [[ಸೋಣ ಪೂತ್ತ ದೈ]]
# [[ಅರ್ಕೆದ ಬೂರು]]
# [[ಕುಮೆ ಮಣ್ಣ್]]
# [[ಕಾಂತಾರ (ಕನ್ನಡ ಸಿನಿಮಾ)|ಕಾಂತಾರ]]
# [[ಈಸ್ವರ ಬೂರು]]
# [[ಪರಮ ವೀರ ಚಕ್ರ]]
# [[ಹಲ್ಮಿಡಿ]]
# [[ಕಾಟ್ ತುಳಸಿ]]
# [[ವೀಟೆಕರ್'ಸ್ ಇರ್ಬಾಯೆಕ್ಕಲೆ]]
# [[ಕೆಂಪು ಇರ್ಬಾಯೆಕ್ಕಲೆ]]
# [[ಬಜಿಲ್]]
# [[ಹಿಮಾಲಯ ಪರ್ವತ ಸಾಲ್]]
# [[ಕರ್ನಾಟಕ ವಿಧಾನಸಭಾ ಚುನಾವಣೆ ೨೦೨೩]]
# [[ಪಂಚಗವ್ಯ]]
# [[ವಾರಾಹಿ ತುದೆ]]
# [[ವಂಶವೃಕ್ಷ(ಕಾದಂಬರಿ)]]
# [[ಅರುವ ಕೊರಗಪ್ಪ ಶೆಟ್ಟಿ]]
# [[ವಿಜಯನಗರ ಜಿಲ್ಲೆ]]
# [[ಅಂಪಾರು (ಕುಂದಾಪುರ)]]
# [[ಪುತ್ತಿಗೆ ಮಠ]]
# [[ಕುಡು]]
== ಭಾರತೊದ ಪುರಾಣ ಪಾತ್ರೊಲು ==
# [[ದೇವಕಿ]]
# [[ಜರಾಸಂಧ]]
# [[ಅಕ್ರೂರ]]
# [[ಯಯಾತಿ]]
# [[ಮುಚುಕುಂದ]]
# [[ನಹುಷ]]
# [[ಗಾಲವ]]
==ಭಾರತೊದ ರಾಜ್ಯೊಲು ==
# [[ಬಿಹಾರ]]
# [[ಛತ್ತೀಸ್ಗಢ]]
# [[ಉತ್ತರ ಪ್ರದೇಶ]]
# [[ಹಿಮಾಚಲ ಪ್ರದೇಶ]]
# [[ಝಾರ್ಖಂಡ್]]
# [[ಮೇಘಾಲಯ]]
# [[ಒಡಿಶಾ]]
# [[ಹರ್ಯಾಣ]]
# [[ರಾಜಸ್ಥಾನ]]
# [[ತ್ರಿಪುರ]]
# [[ಉತ್ತರಾಖಂಡ]]
# [[ಪಶ್ಚಿಮ ಬಂಗಾಳ]]
== ಒಡಿಪು ಜಿಲ್ಲೆದ ಹಳ್ಳಿಲು==
# [[ಅಂಪಾರು (ಕುಂದಾಪುರ)]]
6ijrjd2g8tj6h0losd62ds15k3hb8vq
ಮೋಡ್ಯೂಲ್:Color contrast
828
7196
370398
113591
2021-10-29T20:02:25Z
meta>GeneralNotability
0
50 revisions imported from [[:w:Module:Color_contrast]]: blame [[User:Barkeep49]]
370398
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
hvtmcsb4mviz7lzj6tgvyp5kohk0vr7
370399
364713
2026-09-28T08:07:29Z
ChiK
1136
1 revision imported from [[:meta:Module:Color_contrast]]
364712
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB (v)
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum(R, G, B)
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum(h, s, l)
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum(c)
if (c == nil) then
return ''
end
-- html '#' entity
c = c:gsub("#", "#")
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
-- This exports the function for use in other modules.
-- The colour is passed as a string.
function p._lum(color)
return color2lum(color)
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local css = (args['css'] and args['css'] ~= '') and true or false
local v1 = color2lum(args[1] or '')
local c2 = args[2] or 'white'
local v2 = color2lum(c2)
local c3 = args[3] or 'black'
local v3 = color2lum(c3)
local ratio1 = -1;
local ratio2 = -1;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
if css then
local c1 = args[1] or ''
if mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c1 = '#' .. c1
end
if mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c2 = '#' .. c2
end
if mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c3 = '#' .. c3
end
return 'background-color:' .. c1 .. '; color:' .. ((ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or '') .. ';'
end
return (ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
--[[
Use {{#invoke:Color contrast|somecolor}} directly or
{{#invoke:Color contrast}} from a wrapper template.
Parameters:
-- |1= — required; A color to check.
--]]
function p.lum(frame)
local color = frame.args[1] or frame:getParent().args[1]
return p._lum(color)
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
bx0blwcv5isqzm2jrxnp01lj4148n73
ಮೋಡ್ಯೂಲ್:Color contrast/doc
828
7197
370464
99148
2025-02-18T00:25:39Z
en>Nux
0
/* Usage */ template name fix
370464
wikitext
text/x-wiki
<!-- Categories go at the bottom of this page and interwikis go in Wikidata. -->
{{module rating|protected}}
{{High-use|325916}}
{{Lua|Module:Color contrast/colors}}
This module is used primarily by
* {{tl|Color contrast ratio}}
* {{tl|RGBColorToLum}}
* {{tl|Color contrast conformance}}
* {{tl|Ensure AAA contrast ratio}}
* {{tl|Ensure AA contrast ratio}}
* {{tl|Greater color contrast ratio}}
It is also used for tracking within
* [[Module:Navbox]]
* [[Module:Userbox]]
* [[Module:Episode list]]
and for documentation in
* [[Module:College color]]
The formulas used are [https://www.w3.org/WAI/GL/wiki/Relative_luminance#Definition_as_Stated_in_WCAG_2.x stated in WCAG 2.x specifications]. [[WCAG]] is the main guideline for creating accessible interfaces on the web.
== Usage ==
To use this module, you may use one of the above listed templates or invoke the module directly
* To compute relative luminescence: <br> <syntaxhighlight lang="wikitext" inline>{{RGBColorToLum|color}}</syntaxhighlight> or <syntaxhighlight lang="wikitext" inline>{{#invoke:Color contrast|lum|color}}</syntaxhighlight>
* To compute a contrast ratio between two colors: <br> <syntaxhighlight lang="wikitext" inline>{{Color contrast ratio|color1|color2|error=?}}</syntaxhighlight> or <syntaxhighlight lang="wikitext" inline>{{#invoke:Color contrast|ratio|color1|color2|error=?}}</syntaxhighlight>
* To determine which of two colors (color2a and color2b) has the greater contrast ratio with a particular color (color1): <br> <syntaxhighlight lang="wikitext" inline>{{Greater color contrast ratio|color1|color2a|color2b}}</syntaxhighlight> or <syntaxhighlight lang="wikitext" inline>{{#invoke:Color contrast|greatercontrast|color1|color2a|color2b}}</syntaxhighlight>
* To compute the contrast ratio between the background and text colors specified in a css style string: <br> <syntaxhighlight lang="wikitext" inline>{{#invoke:Color contrast|styleratio|css style statement string|default background color|default text color}}</syntaxhighlight>
<includeonly>{{sandbox other||
[[Category:Modules handling colors]]
}}</includeonly>
<noinclude>
[[Category:Module documentation pages]]
</noinclude>
a6eyb13u6mgwzh6yqbilkp4eekhqpmp
370465
370464
2026-09-28T09:23:16Z
ChiK
1136
1 revision imported from [[:en:Module:Color_contrast/doc]]
370464
wikitext
text/x-wiki
<!-- Categories go at the bottom of this page and interwikis go in Wikidata. -->
{{module rating|protected}}
{{High-use|325916}}
{{Lua|Module:Color contrast/colors}}
This module is used primarily by
* {{tl|Color contrast ratio}}
* {{tl|RGBColorToLum}}
* {{tl|Color contrast conformance}}
* {{tl|Ensure AAA contrast ratio}}
* {{tl|Ensure AA contrast ratio}}
* {{tl|Greater color contrast ratio}}
It is also used for tracking within
* [[Module:Navbox]]
* [[Module:Userbox]]
* [[Module:Episode list]]
and for documentation in
* [[Module:College color]]
The formulas used are [https://www.w3.org/WAI/GL/wiki/Relative_luminance#Definition_as_Stated_in_WCAG_2.x stated in WCAG 2.x specifications]. [[WCAG]] is the main guideline for creating accessible interfaces on the web.
== Usage ==
To use this module, you may use one of the above listed templates or invoke the module directly
* To compute relative luminescence: <br> <syntaxhighlight lang="wikitext" inline>{{RGBColorToLum|color}}</syntaxhighlight> or <syntaxhighlight lang="wikitext" inline>{{#invoke:Color contrast|lum|color}}</syntaxhighlight>
* To compute a contrast ratio between two colors: <br> <syntaxhighlight lang="wikitext" inline>{{Color contrast ratio|color1|color2|error=?}}</syntaxhighlight> or <syntaxhighlight lang="wikitext" inline>{{#invoke:Color contrast|ratio|color1|color2|error=?}}</syntaxhighlight>
* To determine which of two colors (color2a and color2b) has the greater contrast ratio with a particular color (color1): <br> <syntaxhighlight lang="wikitext" inline>{{Greater color contrast ratio|color1|color2a|color2b}}</syntaxhighlight> or <syntaxhighlight lang="wikitext" inline>{{#invoke:Color contrast|greatercontrast|color1|color2a|color2b}}</syntaxhighlight>
* To compute the contrast ratio between the background and text colors specified in a css style string: <br> <syntaxhighlight lang="wikitext" inline>{{#invoke:Color contrast|styleratio|css style statement string|default background color|default text color}}</syntaxhighlight>
<includeonly>{{sandbox other||
[[Category:Modules handling colors]]
}}</includeonly>
<noinclude>
[[Category:Module documentation pages]]
</noinclude>
a6eyb13u6mgwzh6yqbilkp4eekhqpmp
ಮೋಡ್ಯೂಲ್:Color contrast/colors
828
7198
370400
113604
2021-10-29T20:02:26Z
meta>GeneralNotability
0
7 revisions imported from [[:w:Module:Color_contrast/colors]]: blame [[User:Barkeep49]]
113597
Scribunto
text/plain
return {
aliceblue = 0.92880068253475,
antiquewhite = 0.84646951707754,
aqua = 0.7874,
aquamarine = 0.8078549208338,
azure = 0.97265264954166,
beige = 0.8988459998705,
bisque = 0.80732327372979,
black = 0,
blanchedalmond = 0.85084439608156,
blue = 0.0722,
blueviolet = 0.12622014321946,
brown = 0.098224287876511,
burlywood = 0.51559844533893,
cadetblue = 0.29424681085422,
chartreuse = 0.76032025902623,
chocolate = 0.23898526114557,
coral = 0.37017930872924,
cornflowerblue = 0.30318641994179,
cornsilk = 0.93562110372965,
crimson = 0.16042199953026,
cyan = 0.7874,
darkblue = 0.018640801980939,
darkcyan = 0.20329317839046,
darkgoldenrod = 0.27264703559993,
darkgray = 0.39675523072563,
darkgreen = 0.091143429047575,
darkgrey = 0.39675523072563,
darkkhaki = 0.45747326349994,
darkmagenta = 0.07353047651207,
darkolivegreen = 0.12651920884889,
darkorange = 0.40016167026524,
darkorchid = 0.13413142174857,
darkred = 0.054889674531132,
darksalmon = 0.40541471563381,
darkseagreen = 0.43789249325969,
darkslateblue = 0.065792846227988,
darkslategray = 0.067608151928044,
darkslategrey = 0.067608151928044,
darkturquoise = 0.4874606277449,
darkviolet = 0.10999048339343,
deeppink = 0.23866895828276,
deepskyblue = 0.44481603395575,
dimgray = 0.14126329114027,
dimgrey = 0.14126329114027,
dodgerblue = 0.27442536991456,
firebrick = 0.10724525535015,
floralwhite = 0.95922484825004,
forestgreen = 0.18920812076002,
fuchsia = 0.2848,
gainsboro = 0.71569350050648,
ghostwhite = 0.94311261886323,
gold = 0.69860877428159,
goldenrod = 0.41919977809569,
gray = 0.2158605001139,
green = 0.15438342968146,
greenyellow = 0.80609472611453,
grey = 0.2158605001139,
honeydew = 0.96336535554782,
hotpink = 0.34658438169715,
indianred = 0.21406134963884,
indigo = 0.03107561486337,
ivory = 0.99071270600615,
khaki = 0.77012343394121,
lavender = 0.80318750514521,
lavenderblush = 0.90172748631046,
lawngreen = 0.73905893124963,
lemonchiffon = 0.94038992245622,
lightblue = 0.63709141280807,
lightcoral = 0.35522120733135,
lightcyan = 0.94587293494829,
lightgoldenrodyellow = 0.93348351018297,
lightgray = 0.65140563741982,
lightgreen = 0.69091979956865,
lightgrey = 0.65140563741982,
lightpink = 0.58566152734898,
lightsalmon = 0.4780675225206,
lightseagreen = 0.35050145117042,
lightskyblue = 0.56195637618331,
lightslategray = 0.23830165007287,
lightslategrey = 0.23830165007287,
lightsteelblue = 0.53983888284666,
lightyellow = 0.98161818392882,
lime = 0.7152,
limegreen = 0.44571042246098,
linen = 0.88357340984379,
magenta = 0.2848,
maroon = 0.045891942324215,
mediumaquamarine = 0.49389703310801,
mediumblue = 0.044077780212328,
mediumorchid = 0.21639251153773,
mediumpurple = 0.22905858091648,
mediumseagreen = 0.34393112338131,
mediumslateblue = 0.20284629471622,
mediumspringgreen = 0.70704308194184,
mediumturquoise = 0.5133827926448,
mediumvioletred = 0.14371899849357,
midnightblue = 0.02071786635086,
mintcream = 0.97834604947588,
mistyrose = 0.82183047859185,
moccasin = 0.80083000991567,
navajowhite = 0.76519682342785,
navy = 0.015585128108224,
oldlace = 0.91900633405549,
olive = 0.20027537200568,
olivedrab = 0.22593150951929,
orange = 0.4817026703631,
orangered = 0.25516243753416,
orchid = 0.31348806761439,
palegoldenrod = 0.78792647887614,
palegreen = 0.77936759006353,
paleturquoise = 0.76436077921714,
palevioletred = 0.28754994117889,
papayawhip = 0.87797100199835,
peachpuff = 0.74905589878251,
peru = 0.30113074877936,
pink = 0.63271070702466,
plum = 0.45734221587969,
powderblue = 0.68254586500605,
purple = 0.061477070432439,
rebeccapurple = 0.07492341159447,
red = 0.2126,
rosybrown = 0.32319457649407,
royalblue = 0.16663210743188,
saddlebrown = 0.097922285020521,
salmon = 0.36977241527596,
sandybrown = 0.46628543696283,
seagreen = 0.19734199706275,
seashell = 0.92737862206922,
sienna = 0.13697631337098,
silver = 0.52711512570581,
skyblue = 0.55291668518184,
slateblue = 0.14784278062136,
slategray = 0.20896704076536,
slategrey = 0.20896704076536,
snow = 0.96533341834849,
springgreen = 0.73052306068529,
steelblue = 0.20562642207625,
tan = 0.48237604163921,
teal = 0.16996855778968,
thistle = 0.56818401093733,
tomato = 0.30638612719415,
turquoise = 0.5895536427578,
violet = 0.40315452986676,
wheat = 0.74909702820482,
white = 1,
whitesmoke = 0.91309865179342,
yellow = 0.9278,
yellowgreen = 0.50762957208707,
}
chi69ar1btd4wp6xbk3uez6sfu0vipn
370401
370400
2026-09-28T08:07:29Z
ChiK
1136
1 revision imported from [[:meta:Module:Color_contrast/colors]]
113597
Scribunto
text/plain
return {
aliceblue = 0.92880068253475,
antiquewhite = 0.84646951707754,
aqua = 0.7874,
aquamarine = 0.8078549208338,
azure = 0.97265264954166,
beige = 0.8988459998705,
bisque = 0.80732327372979,
black = 0,
blanchedalmond = 0.85084439608156,
blue = 0.0722,
blueviolet = 0.12622014321946,
brown = 0.098224287876511,
burlywood = 0.51559844533893,
cadetblue = 0.29424681085422,
chartreuse = 0.76032025902623,
chocolate = 0.23898526114557,
coral = 0.37017930872924,
cornflowerblue = 0.30318641994179,
cornsilk = 0.93562110372965,
crimson = 0.16042199953026,
cyan = 0.7874,
darkblue = 0.018640801980939,
darkcyan = 0.20329317839046,
darkgoldenrod = 0.27264703559993,
darkgray = 0.39675523072563,
darkgreen = 0.091143429047575,
darkgrey = 0.39675523072563,
darkkhaki = 0.45747326349994,
darkmagenta = 0.07353047651207,
darkolivegreen = 0.12651920884889,
darkorange = 0.40016167026524,
darkorchid = 0.13413142174857,
darkred = 0.054889674531132,
darksalmon = 0.40541471563381,
darkseagreen = 0.43789249325969,
darkslateblue = 0.065792846227988,
darkslategray = 0.067608151928044,
darkslategrey = 0.067608151928044,
darkturquoise = 0.4874606277449,
darkviolet = 0.10999048339343,
deeppink = 0.23866895828276,
deepskyblue = 0.44481603395575,
dimgray = 0.14126329114027,
dimgrey = 0.14126329114027,
dodgerblue = 0.27442536991456,
firebrick = 0.10724525535015,
floralwhite = 0.95922484825004,
forestgreen = 0.18920812076002,
fuchsia = 0.2848,
gainsboro = 0.71569350050648,
ghostwhite = 0.94311261886323,
gold = 0.69860877428159,
goldenrod = 0.41919977809569,
gray = 0.2158605001139,
green = 0.15438342968146,
greenyellow = 0.80609472611453,
grey = 0.2158605001139,
honeydew = 0.96336535554782,
hotpink = 0.34658438169715,
indianred = 0.21406134963884,
indigo = 0.03107561486337,
ivory = 0.99071270600615,
khaki = 0.77012343394121,
lavender = 0.80318750514521,
lavenderblush = 0.90172748631046,
lawngreen = 0.73905893124963,
lemonchiffon = 0.94038992245622,
lightblue = 0.63709141280807,
lightcoral = 0.35522120733135,
lightcyan = 0.94587293494829,
lightgoldenrodyellow = 0.93348351018297,
lightgray = 0.65140563741982,
lightgreen = 0.69091979956865,
lightgrey = 0.65140563741982,
lightpink = 0.58566152734898,
lightsalmon = 0.4780675225206,
lightseagreen = 0.35050145117042,
lightskyblue = 0.56195637618331,
lightslategray = 0.23830165007287,
lightslategrey = 0.23830165007287,
lightsteelblue = 0.53983888284666,
lightyellow = 0.98161818392882,
lime = 0.7152,
limegreen = 0.44571042246098,
linen = 0.88357340984379,
magenta = 0.2848,
maroon = 0.045891942324215,
mediumaquamarine = 0.49389703310801,
mediumblue = 0.044077780212328,
mediumorchid = 0.21639251153773,
mediumpurple = 0.22905858091648,
mediumseagreen = 0.34393112338131,
mediumslateblue = 0.20284629471622,
mediumspringgreen = 0.70704308194184,
mediumturquoise = 0.5133827926448,
mediumvioletred = 0.14371899849357,
midnightblue = 0.02071786635086,
mintcream = 0.97834604947588,
mistyrose = 0.82183047859185,
moccasin = 0.80083000991567,
navajowhite = 0.76519682342785,
navy = 0.015585128108224,
oldlace = 0.91900633405549,
olive = 0.20027537200568,
olivedrab = 0.22593150951929,
orange = 0.4817026703631,
orangered = 0.25516243753416,
orchid = 0.31348806761439,
palegoldenrod = 0.78792647887614,
palegreen = 0.77936759006353,
paleturquoise = 0.76436077921714,
palevioletred = 0.28754994117889,
papayawhip = 0.87797100199835,
peachpuff = 0.74905589878251,
peru = 0.30113074877936,
pink = 0.63271070702466,
plum = 0.45734221587969,
powderblue = 0.68254586500605,
purple = 0.061477070432439,
rebeccapurple = 0.07492341159447,
red = 0.2126,
rosybrown = 0.32319457649407,
royalblue = 0.16663210743188,
saddlebrown = 0.097922285020521,
salmon = 0.36977241527596,
sandybrown = 0.46628543696283,
seagreen = 0.19734199706275,
seashell = 0.92737862206922,
sienna = 0.13697631337098,
silver = 0.52711512570581,
skyblue = 0.55291668518184,
slateblue = 0.14784278062136,
slategray = 0.20896704076536,
slategrey = 0.20896704076536,
snow = 0.96533341834849,
springgreen = 0.73052306068529,
steelblue = 0.20562642207625,
tan = 0.48237604163921,
teal = 0.16996855778968,
thistle = 0.56818401093733,
tomato = 0.30638612719415,
turquoise = 0.5895536427578,
violet = 0.40315452986676,
wheat = 0.74909702820482,
white = 1,
whitesmoke = 0.91309865179342,
yellow = 0.9278,
yellowgreen = 0.50762957208707,
}
chi69ar1btd4wp6xbk3uez6sfu0vipn
ಟೆಂಪ್ಲೇಟ್:Hlist
10
7370
370286
366697
2026-09-12T17:59:44Z
en>MusikBot II
0
Protected "[[Template:Hlist]]": [[Wikipedia:High-risk templates|High-risk template or module]]: 310424 transclusions ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Require template editor access] (indefinite) [Move=Require template editor access] (indefinite))
370286
wikitext
text/x-wiki
#REDIRECT [[Template:Horizontal list]]
j3di4tswthkvewum4j2tczpbseqofxy
370287
370286
2026-09-28T01:40:47Z
ChiK
1136
1 revision imported from [[:en:Template:Hlist]]
370286
wikitext
text/x-wiki
#REDIRECT [[Template:Horizontal list]]
j3di4tswthkvewum4j2tczpbseqofxy
ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ/2019
4
7641
370347
280357
2026-09-28T07:40:07Z
ChiK
1136
370347
wikitext
text/x-wiki
== ಕಜ್ಜಕೊಟ್ಯ ==
* ಉಂದುವೆ ಜನವರಿ ತಿಂಗೊಲು ೧೯-೨೦, ೨೦೧೯ ದಾನಿ ಕುಕ್ಕೇಶ್ರೀ ಸುಬ್ರಹ್ಮಣ್ಯೇಶ್ವರ ಪದವಿ ಕಾಲೇಜು, ಸುಬ್ರಹ್ಮಣ್ಯೊಡ್ ಒಂಜಿ ಲೇಸ್ ನಡಪ್ಪಾಯರ ಉಂಡು. [[ವಿಕಿಪೀಡಿಯ:ಕಜ್ಜಕೊಟ್ಯ-೨೩|ವಿವರೊ ಮುಲುಂಡು]].
* ಬರ್ಪಿ ಪೆಬ್ರವರಿ ತಿಂಗೊಲು ೦೨-೦೩, ೨೦೧೯ ದಾನಿ ನೆಹರು ಮೆಮೋರಿಯಲ್ ಕಾಲೇಜು ಸುಳ್ಯೊಡ್ ಒಂಜಿ ಲೇಸ್ ನಡಪ್ಪಾಯರ ಉಂಡು. [[ವಿಕಿಪೀಡಿಯ:ಕಜ್ಜಕೊಟ್ಯ-೨೨|ಅಯಿನ ವಿವರೊ ಮುಲುಂಡು]]--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೭:೩೮, ೩ ಜನವರಿ ೨೦೧೯ (IST)
== Call for bids to host Train-the-Trainer 2019 ==
''Apologies for writing in English, please consider translating the message''
Hello everyone,
This year CIS-A2K is seeking expressions of interest from interested communities in India for hosting the Train-the-Trainer 2019.
Train-the-Trainer or TTT is a residential training program which attempts to groom leadership skills among the Indian Wikimedia community (including English) members. Earlier TTT has been conducted in 2013, 2015, 2016, 2017 and 2018.
If you're interested in hosting the program, Following are the per-requests to propose a bid:
* Active local community which is willing to support conducting the event
** At least 4 Community members should come together and propose the city. Women Wikimedians in organizing team is highly recommended.
* The city should have at least an International airport.
* Venue and accommodations should be available for the event dates.
** Participants size of TTT is generally between 20-25.
** Venue should have good Internet connectivity and conference space for the above-mentioned size of participants.
* Discussion in the local community.
Please learn more about the [[:m:CIS-A2K/Events/Train the Trainer Program|Train-the-Trainer program]] and to submit your proposal please visit [[:m:CIS-A2K/Events/Train the Trainer Program/2019/Bids|this page]]. Feel free to [[m:Special:EmailUser/Pavan Santhosh (CIS-A2K)|reach]] to me for more information or email tito{{@}}cis-india.org
Best!
[[User:Pavan Santhosh (CIS-A2K)|Pavan Santhosh]] ( [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೧:೨೨, ೬ ಜನವರಿ ೨೦೧೯ (IST) )
<!-- Message sent by User:Saileshpat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=17298203 -->
== Temporary admin rights for adding gadgets ==
<s>
Hello I am AnoopZ you may probably know me by previous user name - [[User:Anoop Rao]] ,as per above request to add some gadgets, I would like to request temporary admin rights for 3days.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೨:೦೬, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}-[[ಬಳಕೆದಾರೆ:Vikashegde|Vikashegde]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vikashegde|ಪಾತೆರ್ಲೆ]]) ೧೨:೧೩, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
* {{support}} --[[ಬಳಕೆದಾರೆ:Gopala Krishna A|Gopala Krishna A]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Gopala Krishna A|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೩, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}} --[[ಬಳಕೆದಾರೆ:Ananth subray|Ananth subray]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ananth subray|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೪, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೩:೧೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:BENET G AMANNA|BENET G AMANNA]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BENET G AMANNA|ಪಾತೆರ್ಲೆ]]) ೧೩:೫೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Durga bhat bollurodi|Durga bhat bollurodi]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Durga bhat bollurodi|ಪಾತೆರ್ಲೆ]]) ೧೬:೧೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Pranavshivakumar|Pranavshivakumar]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pranavshivakumar|ಪಾತೆರ್ಲೆ]]) ೧೭:೦೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೧೭:೦೨, ೨೫ ಜನವರಿ ೨೦೧೯ (IST). Welcome Anoop. Please look into and resolve the bugs in tcy templates like Infobox:settlement,mbox etc. Maybe template file autotranslate need to be imported for this.
</s>
above request will be completed by stewards.@[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] i will look into templates, there is no auto translate scripts in my knowledge it should be done manually.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೮:೧೨, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
@ [[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]. Please check up the missing map link in an example like the following:
https://tcy.wikipedia.org/wiki/ಮುಂಡ್ಕೂರು. [[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೭:೩೮, ೨೯ ಜನವರಿ ೨೦೧೯ (IST).
Further:
Resource for "autotranslate" is here:
https://commons.wikimedia.org/wiki/Template:Autotranslate. [[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೭:೫೯, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
:I have imported Template:Autotranslate from Commons. It need not be translated as per its documentation. It uses Module:Autotranslate. There is a dangerous possibility of recursive calling and hence should be used with care.-[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೧೭, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
== ಟೆಂಪ್ಲೇಟ್ ==
ಇತ್ತೆ ನಮ ಏತ್ ಟೆಂಪ್ಲೇಟ್ ಬಲಕೆ ಮಾಲ್ಪೊಲಿ. ಅಯಿನ ಪಟ್ಟಿ ಕೊರ್ಂಟಾ ಎಡ್ಡೆ ಇತ್ತ್ಂಡ್.ಅನುವಾದ ಅಯಿನ ಟೆಂಪ್ಲೇಟ್ ಪಟ್ಟಿ ಕೊರ್ಲೆ.ತುಳು ವಿಕಿಪೀಡಿಯ ಗ್ ಬಾರಿ ಕಮ್ಮಿ ಉಂಡು ಅನುವಾದ ಅಯಿನ ಟೆಂಪ್ಲೇಟ್ ನಾಣ ದುಂಬುಗು ಬಲಕೆ ಮಾಲ್ಪಿಯರ ಪಟ್ಟಿ ಇತ್ತ್ಂಟಾ ಎಡ್ಡೆ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೨೩, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
== Gadgets ಅಮದ್ ಮಾಲ್ತ್ ಕೊರ್ಲೆ ==
#ProveIt
#:{{done}} needs admin to put translated label in [[Mediawiki:Gadget-ProveIt]] and check that it is functioning [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೭, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
#UTCLiveClock
#:{{done}} needs admin to put translated label in [[Mediawiki:Gadget-UTCLiveClock]] [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#exlinks
#:{{done}} plese check, also needs translated labels [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#PrintOptions
#:{{done}} plese check, also needs translated labels [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#refToolbar
#:{{not done}} customised for enWP; won't import nicely, and would need code changes. Better for locals to add to personal common.js the required subpart [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#ImageAnnotator
#:{{not done}} as you don't have local uploads, annotations are better made at Commons with that tool [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#Twinkle
#:{{not done}} this is a complex beast and for the work here it is overkill [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೭, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
#Navigation_popups
#:already in place, needs admin to put tcy label in [[ಮಾದ್ಯಮೊ ವಿಕಿ:Gadget-Navigation popups/tcy]], or provide some text and ping me [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
::I am an admin. Please let me know what exactly needs to be done.-[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೭:೫೪, ೨೮ ಜನವರಿ ೨೦೧೯ (IST)
#GoogleTrans
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#citations
#: {{not done}} enWP tool only
#XTools-ArticleInfo
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#CommentsInLocalTime
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#Reference Tooltips
#: {{not done}} tips in English, users would be better loading script through their personal common.js
#markAdmins
#:{{not done}} manually contained list required, and insufficient rightsholders to add value to this wiki
ಇತ್ Gadgets ತುಳು ವಿಕಿಗ್ ಬೊಡಾಪುಂಡು--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೧:೨೭, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
::above request will be completed by stewards.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೮:೧೨, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
{{comment}} see above. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೦೫, ೨೬ ಜನವರಿ ೨೦೧೯ (IST) <small>(global systop, not steward)</small>
[[user:Pavanaja|Pavanaja]] I have installed the gadgets identified above, and put in place EN language descriptions, what needs to now be done is to put in TCY language descriptions. You can get a listing at [[Special:Gadgets]] and [[ವಿಸೇಸೊ:PrefixIndex/Mediawiki:]] though for you.
[[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೫:೦೪, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
{| border=1
!Gadget!!EN!!TCY
|-
|CommentsInLocalTime||[[Mediawiki:Gadget-CommentsInLocalTime/en]]||[[Mediawiki:Gadget-CommentsInLocalTime/tcy]]
|-
|GoogleTrans||[[Mediawiki:Gadget-GoogleTrans/en]]||[[Mediawiki:Gadget-GoogleTrans/tcy]]
|-
|HotCat||[[Mediawiki:Gadget-HotCat/en]]||[[Mediawiki:Gadget-HotCat/tcy]]
|-
|popups||[[Mediawiki:Gadget-Navigation popups/en]]||[[Mediawiki:Gadget-Navigation popups/tcy]]
|-
|PrintOptions||[[Mediawiki:Gadget-PrintOptions/en]]||[[Mediawiki:Gadget-PrintOptions/tcy]]
|-
|ProveIt||[[Mediawiki:Gadget-ProveIt/en]]||[[Mediawiki:Gadget-ProveIt/tcy]]
|-
|UTCLiveClock||[[Mediawiki:Gadget-UTCLiveClock/en]]||[[Mediawiki:Gadget-UTCLiveClock/tcy]]
|-
|XTools-ArticleInfo||[[Mediawiki:Gadget-XTools-ArticleInfo/en]]||[[Mediawiki:Gadget-XTools-ArticleInfo/tcy]]
|-
|exlinks||[[Mediawiki:Gadget-exlinks/en]]||[[Mediawiki:Gadget-exlinks/tcy]]
|-
|refToolbar||[[Mediawiki:Gadget-refToolbar/en]]||[[Mediawiki:Gadget-refToolbar/tcy]]
|}
I have watched the page for a few days in case of questions, and nwo will stop that active watch. If there are questions, then please [[mw:Manual:Echo|ping me]] directly and I will address them then. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೬:೫೮, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
:[[user:Lokesha kunchadka|Lokesha kunchadka]] you may wish to check whether the added gadgets work for you. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೬:೫೯, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
::Thanks--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೨೫, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
== ಬೇತೆ ಬೇತೆ ವಿಸಯೊಳೆನ ಕಜ್ಜಕೊಟ್ಯ ==
ಬೇತೆ ಬೇತೆ ವಿಸಯೊಲು, ಪೊಂಜೊಳೆನ ವಿಸಯೊಲು ಬೊಕ್ಕ ಪೊಂಜೊಳೆನ್ ಸೇರಾಪುನೆ -ಇಂದೆಕ್ ಬೋಡಾದ್ ಕಜ್ಜಕೊಟ್ಯ ನಡಪ್ಪಾಯೆರೆ ಕಾಸ್ಗ್ ಬೋಡಾದ್ [https://meta.wikimedia.org/wiki/Grants:Project/Rapid/Dhanalakshmi_.K._T/Diversity_editathons_2019 ಅರ್ಜಿ ಪಾಡ್ದೆ]. ಅಯಿನ್ ಓದ್ದ್ ಇರೆನ್ ಸಲಹೆ ಇತ್ತ್ಂಡ ದೀವೊಡ್ ಬೊಕ್ಕ ಅಯಿಕ್ ಸಪೋರ್ಟ್ ಮಲ್ಪೊಡ್ಂದ್ ಕೇಂಡೊಣ್ವೆ--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೨:೫೬, ೧೪ ಮಾರ್ಚಿ ೨೦೧೯ (IST)
== Train-the-Trainer 2019 Application open ==
''Apologies for writing in English, please consider translating''<br>
Hello,<br>
It gives us great pleasure to inform that the Train-the-Trainer (TTT) 2019 programme organised by CIS-A2K is going to be held from 31 May, 1 & 2 June 2019.
'''What is TTT?'''<br>
Train the Trainer or TTT is a residential training program. The program attempts to groom leadership skills among the Indian Wikimedia community members. Earlier TTT has been conducted in 2013, 2015, 2016, 2017 and 2018.
'''Who should apply?'''<br>
* Any active Wikimedian contributing to any Indic language Wikimedia project (including English) is eligible to apply.
* An editor must have 600+ edits on Zero-namespace till 31 March 2019.
* Anyone who has the interest to conduct offline/real-life Wiki events.
* Note: anyone who has already participated in an earlier iteration of TTT, cannot apply.
Please '''[[:m:CIS-A2K/Events/Train the Trainer Program/2019|learn more]]''' about this program and apply to participate or encourage the deserving candidates from your community to do so. Regards. -- [[User:Tito (CIS-A2K)|Tito (CIS-A2K)]], sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೦:೩೭, ೨೬ ಎಪ್ರಿಲ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=17298203 -->
== Wikimedia Education SAARC conference application is now open ==
''Apologies for writing in English, please consider translating''<br/>
Greetings from CIS-A2K,<br/>
The Wikimedia Education SAARC conference will take place on 20-22 June 2019. Wikimedians from Indian, Sri Lanka, Bhutan, Nepal, Bangladesh and Afghanistan can apply for the scholarship. This event will take place at [https://goo.gl/maps/EkNfU7FTqAz5Hf977 Christ University], Bangalore.
'''Who should apply?'''<br>
*Any active contributor to a Wikimedia project, or Wikimedia volunteer in any other capacity, from the South Asian subcontinent is eligible to apply
* An editor must have 1000+ edits before 1 May 2019.
* Anyone who has the interest to conduct offline/real-life Wikimedia Education events.
*Activity within the Wikimedia movement will be the main criteria for evaluation. Participation in non-Wikimedia free knowledge, free software, collaborative or educational initiatives, working with institutions is a plus.
Please '''[[:m:Wikimedia_Education_SAARC_conference/Registration|know more]]''' about this program and apply to participate or encourage the deserving candidates from your community to do so. Regards.[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೨೪, ೧೧ ಮೇ ೨೦೧೯ (IST)
<!-- Message sent by User:Saileshpat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19091276 -->
== CIS-A2K: 3 Work positions open ==
Hello,<br>Greetings for CIS-A2K. We want to inform you that 3 new positions are open at this moment.
* Communication officer: (staff position) The person will work on CIS-A2K's blogs, reports, newsletters, social media activities, and over-all CIS-A2K general communication. The last date of application is 4 June 2019.
* Wikidata consultant: (consultant position), The person will work on CIS-A2K's Wikidata plan, and will support and strengthen Wikidata community in India. The last date of application is 31 May 2019
* Project Tiger co-ordinatorː (consultant position) The person will support Project tiger related communication, documentation and coordination, Chromebook disbursal, internet support etc. The last date of application is 7 June 2019.
'''For details about these opportunities please see [[:m:CIS-A2K/Team/Join|here]]'''. <small>-- [[User:Tito (CIS-A2K)|Tito (CIS-A2K)]], sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೫:೩೨, ೨೨ ಮೇ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯ ಕಾರ್ಯಕ್ರಮಕ್ಕೆ ಅರ್ಜಿ ಸಲ್ಲಿಸಲಾಗಿದೆ ==
ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯ ಸಂಪಾದನೋತ್ಸವ ಮತ್ತು ವಿಕಿಪೀಡಿಯ ಬಳಕೆಯ ಕುರಿತು ಇತರ ಕಾಲೇಜುಗಳಲ್ಲಿ ನಡೆಸಲು ಹಣಕಾಸಿನ ನೆರವಿಗಾಗಿ ಅರ್ಜಿಯನ್ನು ವಿಕಿಮೀಡಿಯ ಫೌಂಡೇಶನ್ ಗೆ ಸಲ್ಲಿಸಲಾಗಿದೆ. ಈ ಕಾರ್ಯಕ್ರಮವನ್ನು ಅಳ್ವಾಸ್ ವಿಕಿಪೀಡಿಯ ಅಸೋಸಿಯೇಷನ್ ಮೂಲಕ ನಡೆಸಲಾಗುವುದು.ನಾನು ಸಲ್ಲಿಸಿದ ಅರ್ಜಿಯನ್ನು ಬೆಂಬಲಿಸಬೇಕಾಗಿ ತಮ್ಮಲ್ಲಿ ಕೋರಿಕೆ ಲಿಂಕ್[https://meta.wikimedia.org/wiki/Grants:Project/Rapid/Lokesha_Kunchadka/Semister_Program_in_Alvas,_Kannada_and_Tulu_Wikipedia ಇಲ್ಲಿದೆ] .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೦:೩೩, ೨ ಜೂನ್ ೨೦೧೯ (IST)
== Wikidata Bridge: edit Wikidata’s data from Wikipedia infoboxes ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''Sorry for writing this message in English - feel free to help us translating it :)''
Hello all,
Many language versions of Wikipedia use the content of [[Wikidata]], the centralized knowledge base, to fill out the content of infoboxes. The data is stored in Wikidata and displayed, partially or completely, in the Wikipedia’s language, on the articles.
This feature is used by many template editors, but brought several issues that were raised by communities in various places: not being able to edit the data directly from Wikipedia was one of them.
This is the reason why the '''[[mw:Wikidata Bridge|Wikidata Bridge]]''' project started, with the goal of offering a way to Wikipedia editors to edit Wikidata’s data more easily. This will be achieved by an interface, connected to the infobox, that users can access directly from their local wiki.
The project is now at an early stage of development. A lot of [[mw:Wikidata_Bridge/Research|user research]] has been done, and will continue to be done through the different phases of the project. The next steps of [[mw:Wikidata_Bridge/Development|development]] will be achieved by the development team working at Wikimedia Deutschland, starting now until the end of 2019.
In order to make sure that we’re building a tool that is answering editors’ needs, we’re using agile methods in our development process. We don’t start with a fixed idea of the tool we want to deliver: we will build it together with the editors, based on feedback loops that we will regularly organize. The first version will not necessarily have all of the features you want, but it will keep evolving.
Here’s the planned timeline:
* From June to August, we will build the setup and technical groundwork.
* From September to November 2019, we will develop the first version of the feature and publish a test system so you can try it and give feedback.
* Later on, we will test the feature on a few projects, in collaboration with the communities.
** We will first focus on early adopters communities who already implemented a shortcut from their infoboxes to edit Wikidata (for example Russian, Catalan, Basque Wikipedias)
** but we also welcome also communities who [[mw:Wikidata_Bridge/Get_involved|volunteer to be part of the first test round]].
** Then we will reach some of the big Wikipedias (French, German, English) in order to see if the project scales and to address their potentially different needs.
** Even later, we can consider enabling the feature on all the other projects.
In any case, no deployment or big change will be enforced on the projects without talking to the communities first, and helping the template builders to prepare for the changes they will have to do on the infoboxes’ code.
If you want to get involved, there are several ways to help:
* Read and help translating [[mw:Wikidata_Bridge|the documentation pages]]
* Follow the [[mw:Wikidata_Bridge/Updates|updates]] and participate in [[mw:Topic:V1x2lxtu8rgi954a|the first feedback loop]]
* Talk about it with your local community
More ideas will be added [[mw:Wikidata_Bridge/Get_involved|on this page]] along the way
If you have any questions for the development team, feel free to ask them [[mw:Talk:Wikidata_Bridge|on the main talk page]]. You can also ask under this message, but if you expect an answer from me, please make sure to ping me.
Thanks for your attention, [[:d:User:Lea Lacroix (WMDE)|Lea Lacroix (WMDE)]] ೧೮:೩೩, ೨೪ ಜೂನ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Lea Lacroix (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Lea_Lacroix_(WMDE)/List_Wikipedias&oldid=19168539 -->
== Indic Wikimedia Campaigns/Contests Survey ==
Hello fellow Wikimedians,
Apologies for writing in English. Please help me in translating this message to your language.
I am delighted to share a survey that will help us in the building a comprehensive list of campaigns and contests organized by the Indic communities on various Wikimedia projects like Wikimedia Commons, Wikisource, Wikipedia, Wikidata etc. We also want to learn what's working in them and what are the areas that needs more support.
If you have organized or participated in any campaign or contest (such as Wiki Loves Monuments type Commons contest, Wikisource Proofreading Contest, Wikidata labelathons, 1lib1ref campaigns etc.), we would like to hear from you.
You can read the Privacy Policy for the Survey [https://foundation.wikimedia.org/wiki/Indic_Wikimedia_Campaigns_and_Contests_Survey_Privacy_Statement here]
Please find the link to the Survey at:
'''https://docs.google.com/forms/d/e/1FAIpQLSdzz8P6flgP7rcpkZYWIg70COCVvBaVA1VnWOqRcH4F6pTsjg/closedform'''
P.S. If you have been involved in multiple campaigns/contests, feel free to submit the form multiple times.
Looking forward to hearing and learning from you.
<small>-- [[User:SGill (WMF)|SGill (WMF)]] sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೧:೩೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:SGill (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:SGill_(WMF)/MassMessage_List&oldid=19169935 -->
== ಸಾಲೆಳೆಗ್ ಆಫ್ ಲೈನ್ ತುಳು ವಿಕಿಪೀಡಿಯ ಯೋಜನೆಗ್ ಗ್ರಾಂಟ್ ಬೇಡಿಕೆ ==
ತುಳು ವಿಕಿಪೀಡಿಯನು ಬುಳೆಪ್ಪಾಯೆರೆ ೨೦೧೬ ಜುಲೈಡ್ದ್ ೨೦೧೭ ಜೂನ್ ದಿಂಜಿದ ಸಮಯೊಡ್ ಒಂಜಿ ಯೋಜನೆ ಮಲ್ತ್ದ್ ಕೊರ್ದಿತ್ತೊ. ಅಯಿನ್ ನಿಕುಲು ತೂದಿಪ್ಪರ್. ಅವ್ವೇ ಆಲೋಚನೆನ್ ಇತ್ತೆ ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಬುಳೆಪ್ಪಾಯೆರೆಗಾದ ೨೦೧೯ಡ್ದ್ ೨೦೨೦ ಅಕೇರಿ ಮುಟ್ಟ, ಈ ಒಂಜಿ ವರ್ಸೊಡು CIS-A2K ಗ್ ಒಂಜಿ ಯೋಜನೆಯಾದ್ ತಯಾರ್ ಮಲ್ತ್ ಕೊರೊಂದುಲ್ಲೊ. [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]] ಈ ಪುಟೊಡು ಸುಮಾರ್ ೭೦೦ ಲೇಖನೊ ತಯಾರಿಗ್ ಪಟ್ಟಿನ್ ತಯಾರ್ ಮಲ್ತ್ ದೀಡ್ತೊ. ಇತ್ತೆ ಈ ಯೋಜನೆನ್ CIS-A2K ಬೆಂಗಳೂರುಗು ಗ್ರಾಂಟ್ ಯೋಜನೆಯಾದ್ ಕೊರೊಂದುಲ್ಲೊ. ಈ ಬಗೆಟ್ ನಿಕ್ಲೆನ ಒಪ್ಪಿಗೆ ಬೋಡು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೩:೦೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
=== ನಿಕ್ಲೆನ್ ಒಪ್ಪಿಗೆನ್ ಸೂಚಿಸಲೆ ===
ಬೋಡುಂದು ಇಂಚ <nowiki>{{tick}}</nowiki> ಗುರುತು ಮಲ್ತ್ದ್ ಒಪ್ಪಿಗೆ ಸೂಚಿಸಲೆ
*'''ಎನ್ನ ಒಪ್ಪಿಗೆ {{tick}} ಉಂಡು'''. ೨೦೧೦ಗ್ [[ಕರ್ನಾಟಕ ತುಳು ಸಾಹಿತ್ಯ ಅಕಾಡೆಮಿ]] ೬ನೆ ಕ್ಲಾಸ್ಗ್ ತುಳು ಮೂಜನೆ ಬಾಸೆಯಾದ್ ಓದುನ ತಯಾರ್ ಮಲ್ತ್ಂಡ್. ಅಯಿಡ್ದ್ ಬುಕ್ಕೊ ೧೦ನೇ ಕ್ಲಾಸ್ದ ಬೂಕು ಆಂಡ್. ೨೦೧೮-೨೦೧೯ಗ್ ತುಳು ಎಂ.ಎ. ಸುರುವಾಂಡ್. ಇತ್ತೆ ೨೦೧೯-೨೦೨೦ಡ್ದ್ ಪದವಿ ತರಗತಿಗ್ ತುಳು ರಡ್ಡನೇ ಬಾಸೆಯಾದ್ ಕಲ್ಪಾಯೆರೆ ತಯಾರಾವೊಂದುಂಡು. ಇಂಚ ಮಾಂತ ಬೂಕುಲು ತಯಾರಾನಗ ಓದುನ ಜೋಕ್ಲೆಗ್ ಬೂಕುಲು ಒಲ್ಪ ತಿಕುವೊ ಪನ್ಪುನ ಯೋಚನೆ ಬರ್ಪುಂಡು. ಅಯಿಕಾತ್ರೊ ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಲೇಕನೊ ತಯಾರ್ ಮಲ್ಪುನೆ,ತುಳುತ ಬೂಕುಲೆನ್ ವಿಕಿಸೋರ್ಸ್ಗ್ ಸೇರಾವುನೆ, ತುಳು ವಿಕ್ಷನರಿನ್ ಬುಲೆಪಾವುನೆ ಇಂಚ ಪೂರ ಮಲ್ಲ ಯೋಜನೆಡ್ ಈ '''ಆಫ್ ಲೈನ್ ವಿಕಿಪೀಡಿಯ ಯೋಜನೆ'''ನ್ ಬೇಗೊ ತಯಾರ್ ಮಲ್ತ್ದ್ ಜೊಕ್ಲೆಗ್ ಓದೆರೆ ತಿಕುನ ಲೆಕೊ ಮಲ್ಪುನ ಈ ಎಡ್ಡೆ ಉದ್ದೇಸೊಗ್ ಎನ್ನ ಸಕಾಯೊ ಬುಕ್ಕೊ ಒಪ್ಪಿಗೆ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೩:೨೬, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ. ಉಂದ್ ಒಂಜಿ ದಿಂಜ ಎಡ್ಡೆ ಯೋಜನೆ. ಆಯಿನಾತ್ ಬೇಕ ಆವೊಡ್.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೫:೨೦, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ. ಅಂದ್ ಉಂದೊಂಜಿ ಲಾಯಿಕ್ ತ ಯೋಜನೆ, ತುಲುತ್ತ ಬೊಲಿಚಿಲಿಗಾತ್ ಇಂಚಿತ್ತಿ ಯೋಜನೆ ಅವೊಡಾಯಿನವು ಅಗತ್ಯ ಅತುಂಡು. - [[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೧೬:೦೪, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೧, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಪೂರ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಉಂದು ಬಾರಿ ಎಡ್ಡೆ ಯೋಜನೆ, ದುಂಬೆ ಆವೊಡಾಯಿನವು. ಆಯಿನಾತ್ ಬೇಗ ಆವಾಡ್.--[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೧:೪೫, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಪೂರ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಉಂದು ಎಡ್ಡೆ ಯೋಜನೆ. ಆಯಿನಾತ್ ಬೇಗ ಆವಡ್--[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೮:೦೯, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} [[ಬಳಕೆದಾರೆ:BENET G AMANNA|BENET G AMANNA]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BENET G AMANNA|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೧, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಆಯಿನಾತ್ ಬೇಗ ಆವೊಡು.--[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೨೦:೧೭, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}}.ಒಪ್ಪಿತ.[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೯:೧೧, ೨೯ ಜೂನ್ ೨೦೧೯ (IST).
*{{tick}} [[ಬಳಕೆದಾರೆ:Ashay vb|Ashay vb]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ashay vb|ಪಾತೆರ್ಲೆ]]) ೨೦:೦೮, ೨೬ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
===Oppose===
[[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]] ಯೋಜನೆ ಸರು ಅತ್ ರಡ್ಡು ವರ್ಷಲಾ [https://meta.wikimedia.org/wiki/Grants:Project/Pavanaja/Tulu_offline_Wikipedia_to_schools reject] ಅಂಡ್, ಆ ಪೇಜ್ ಮಾಲ್ತ್ ಏತ್ ಲೇಖನೊ ಅಂಡ್?. ಎರ್ಲಾ ಬರೆಯರ ಉಮೆದ್ಡ್ ಬತ್ತುಜ್ಜಿ. ರಡ್ಡ್ ಸರ್ತಿ ಗ್ರ್ಯಾಂಟ್ ಗ್ ಅರ್ಜಿ ಪಾಡ್ತ್ rejected ಅತ್ಂಡ್ .ದಿನೊ ಸಂಪಾದನೆ ಮಾಲ್ಪುನಕುಲು ಎರ್ಲಾ ಇಜ್ಜಿ?. ಎಂ.ಎ ತುಳು ಪಠ್ಯಗ್ ಬೊಡಯಿನ ಪಟ್ಟಿ ನಾನಲ, ಪಟ್ಟಿ ರೆಡಿ ಅತ್ ಜ್ಜಿ ?. ಪದವಿ ಕಾಲೇಜ್ ಗ್ ಬೊಡಯಿನ ಲೇಕನೊತ ಪಟ್ಟಿ ಅವೊಡಾತೆ. Update ಮಾಲ್ಪುನಕುಲು ಎರ್ಲಾ ಇಜ್ಜಿ, ದಾನೆ?. ಅಯಿಕ್ಕ್ ದುಂಬು ಒಟ್ಟಾರೆ ಪೊಂಡಾ ಎಂಚ.?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೯:೦೩, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
:[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|ಲೋಕೇಶ್]] ಸುರು ಮಲ್ತ್ನ [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ಯೋಜನೆ]] ರಿಜೆಕ್ಟ್ ಆಯಿನೆಗ್ ಈರೆ ಉತ್ತರೊ ಕೊರೊಡು. [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ಈ]] ಯೋಜನೆಗಾದ್ ಸುಮಾರ್ ೭೨೦ ದಾತ್ ಲೇಕನೊ ಪಟ್ಟಿ ಮಲ್ತ್ನಾರ್ ಲೋಕೇಶ್. ಸಂಪೊಲೊಪುನಕುಲು ಏರ್ಲಾ ಇಜ್ಜಿ ಪನ್ಪುನೆಡ್ದ್ ಈರೆ ಲೇಕನೊ ಮಲ್ಪುಲೆ. ಈರೆ ಇರೋದಗ್ ಕಾರನೊ ಸರಿ ಇದ್ದಿ. ದೂರುನೆಡ್ ದಾನೆ ಪ್ರೇಜನೊ? ಲೇಕನೊ ಪಟ್ಟಿ ತಯಾರ್ ಮಲ್ತ್ನಕುಲುಲಾ ಲೇಕನ ಬರೆಪುನ ಉಮೇದ್ಡ್ ಇಪ್ಪೊಡು. ದಾಯೆ ರಿಜೆಕ್ಟ್ ಆಂಡ್ ಪನ್ಪುನವು ಮುಲ್ಪ ಅಗತ್ಯೊ ಇದ್ದಿ. ತುಳುತ ಅಬಿಮಾನಿಲು ಮೆಚ್ಚ್'ದ್ ತುಳುತ ಬೇಲೆ ಮಲ್ಪುವೆರ್. ತುಳು ಎಂ.ಎ. ಬುಕ್ಕೊ ಪದವಿದ ಬೇಲೆಗ್ ಬೋಡಾಪುನಾತ್ ಲೇಕನೊಲೆ ಪಟ್ಟಿ ನಾನ ಆವೊಡಾತೆ. ಅವು ಬೇತೆನೇ ಆವೊಡಾಯಿನವು. ತುಳು ಸಮುದಾಯೊಡು ಈತನೇಟ್ ದಾಲಾ ಮನಸ್ತಾಪೊ ಇದ್ದಿ. ಬೊಡಿತ್ತಿನಾತ್ ಬೇಲೆ ಮಲ್ಪೆರೆ ಉಂಡು. ಅಯಿನ್ ಮಲ್ಪೆರೆ ಬೆರಿಸಾಯೊ ಕೊರ್ಲೆ. ಅಂಚನೆ ತುಳು ಸಮುದಾಯೊಡು ತುಳುನಾಡ್ದ ಅಪ್ಪೆ ಬಾಸೆದೊಟ್ಟುಗು ಕನ್ನಡೊದಕುಲುಲಾ ಸೇರೊಂದು ಬೆನ್ಪುನವು ಎಂಕ್ಲೆಗ್ ಪೆರ್ಮೆನೇ ಆಪುಂಡು. ಪೊಕ್ಕಡೆ ಕಿರಿಕಿರಿ ದಾಯೆ--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೬, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
: The project Tulu offline Wikipedia to schools ([[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]]) was started by [[User:Lokesha kunchadka|Lokesha Kunchadka]] himself. He has supported and endorsed the [[:m:Grants:Project/Pavanaja/Tulu offline Wikipedia to schools|grant request to WMF]] twice. It is surprising to see the same person is now opposing the idea started by himself. He has not given any scientific or logical reason to oppose. I think he is suffering from short term memory loss. His opinion need not be given any weightage as he is contradicting himself. (''This comment is written in English so that non-Tulu speaking people can understand'').--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೫೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|ಲೋಕೇಶ್]] ಮಂಗಳೂರು ವಿಶ್ವವಿದ್ಯಾನಿಯೊಡು ತುಳು ಸಂಶೋಧನೆ ಮಲ್ಪುನಕ್ಲ್ ಮಸ್ತ್ ಜನ ಉಲ್ಲೆರ್. ಅಕುಲು ಪೂರ ವಿಕಿಪೀಡಿಯೊಡು ಬೇಲೆ ಮಲ್ಪೊಡು. ಅವು ಬುಡ್ದ್ ನಮನ್ ನಮನೇ ದೂರೊಂದು ಕಾಲ ಹರನ ಮಲ್ಪುನೆರ್ದ್ ದಾದಾ ಲಾಭ? ತುಳುಟು ಮಲ್ಪುನ ಬೇಲೆ ಮಸ್ರ್ ಉಂಡು. ಆ ಬೇಲೆನ್ ನಮ ಕುಲ್ಲುದ್ ಚರ್ಚೆ ಮಲ್ತ್ ದ್ ಬೇಲೆ ಬೆಂದ್ಂಡ ಅಯಿತ್ತ ಪೊರ್ಲೆ ಬೇತೆ. ಲೋಕೇಶ್ ತುಳು ಪಾಠಬೂಕುದ ಕೆಲಸೊದ ಸುರುತ ಕಾರ್ಯಕರ್ತೆ, ಆರ್ ತುಳುತ್ತ ಜವ್ವನೆರೆನ್ ಒಟ್ಟು ಸೇರಾದ್ ಬೇಲೆ ಮಲ್ಪಾವುನಾರ್ --[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೫:೪೩, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
::# [[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|ಬದಿಕಾನ]] ಸರ್, ಬೆತೆ ಉದ್ದೇಶ ದಿತ್ ಪಾತೆರುನ ಅತ್ತ್ ಸರ್. Straight ಪಂಡಿನ ಪಾತೆರ ತಡೆಯರ ಅಪುಜ್ಜಿ ಅತಾ ಸರ್. ಕಲೆಂಕ್ ಮಾಲ್ಪುಜ್ಜಿ ಇತ್ತಿನ ವಿಚಾರ ಪಂಡಿನ. ಸರ್. ಕೆಲವೆರ್ ಪಿರಾವುಡ್ತ್ ಪಾತೆರುವೆರ್ ನಮಕ್ ಅಂಚಿನ ಅಭ್ಯಾಸ ಇಜ್ಜಿ. ನೇರ ಪನ್ಪುನನೆ, ಏರಾಂಟಲಾ ಅವಾಡ್ ತೂಯಾರ ಇಜ್ಜಿ. ಮೊನೆಗ್ ಬೊಡಾಯಿನಲೆಕೊ ಪಾತೆರುಜ್ಜಿ,ಸರ್.
# [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ಪಾಪ ಇಂಬೆರ್ ಗ್ರ್ಯಾಂಟ್ ಪೇಜ್ ಸರಿಯಾತ್ ತೂವಾಡ್. ಒಂಜಿ ಸರ್ತಿ support and endorse, ಬುಕ್ಕೊಂಜಿ ಸರ್ತಿ support ಮಾತ್ರೊ ಮಾಲ್ತಿನ , endorse ಮಾತ್ತಿಜ್ಜಿ. ಸರಿಯಾತ್ ತೂಲೆ ಒರ.
# [[ಬಳಕೆದಾರೆ:Kishorekumarrai|ಕಿಶೋರ್ ]] ಸರ್, ನೇರ ಪಣಿಯರ ಬಲ್ಲಿ ಅತೆ.ತಾಂತ್ರಿಕ ಬೆಲೆಗ್ ಸಂಬಂಧ ಮೂಜಿ ಕಾರ್ಯಕ್ರಮೊಡ್ ಸುಮಾರ್ ಟೆಂಪ್ಲೇಟ್ ಅನುವಾದ ಅತ್ ಇಪ್ಪು ಅತ ಸರ್. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೭:೨೩, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
== Editing News #1—July 2019 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''[[m:VisualEditor/Newsletter/2019/July|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]''
<div style="float:right;width:270px;margin-left:1em;border-style:solid;border-width:1px;padding:1em;">
[[File:VisualEditor-logo.svg|200px|center]]
<big>'''Did you know?'''</big>
<div class="thumbcaption" style="font-size: 90%;">
Did you know that you can use the visual editor on a mobile device?
Every article has a pencil icon at the top. Tap on the pencil icon [[File:OOjs UI icon edit-ltr.svg|frameless|16x16px]] to start editing.
'''<big>Edit Cards</big>'''
[[File:EditCards-v.20.png|alt=Toolbar with menu opened|center|frameless|250px]]
This is what the new '''Edit Cards for editing links''' in the mobile visual editor look like. You can try the prototype here: '''[[mw:Topic:V394zwrigth8ii7c|📲 Try Edit Cards]].'''
</div></div>
Welcome back to the [[mw:Editing|Editing]] newsletter.
Since [[m:VisualEditor/Newsletter/2018/October|the last newsletter]], the team has released two new features for the [[mw:VisualEditor on mobile|mobile visual editor]] and has started developing three more. All of this work is part of the team's goal to [[m:Wikimedia Foundation Annual Plan/2018-2019/Audiences#Outcome 3: Mobile Contribution|make editing on mobile web simpler]].
Before talking about the team's recent releases, we have a question for you:
<strong>Are you willing to try a new way to add and change links?</strong>
If you are interested, we would value your input! You can try this new link tool in the mobile visual editor on a separate wiki.
<em>Follow these instructions and share your experience:</em>
<strong>[[mw:Topic:V394zwrigth8ii7c|📲 Try Edit Cards]].</strong>
=== Recent releases ===
The mobile visual editor is a simpler editing tool, for smartphones and tablets using the [[mw:Reading/Web/Mobile#About|mobile site]]. The Editing team recently launched two new features to improve the mobile visual editor:
# [[mw:VisualEditor on mobile/Section editing|Section editing]]
#* The purpose is to help contributors focus on their edits.
#* The team studied this with an A/B test. [[mw:VisualEditor on mobile/Section editing#16 June 2019|This test showed]] that contributors who could use section editing were '''1% more likely to publish''' the edits they started than people with only full-page editing.
# [[mw:VisualEditor on mobile#March 1, 2019|Loading overlay]]
#* The purpose is to smooth the transition between reading and editing.
Section editing and the new loading overlay are '''now available to everyone''' using the mobile visual editor.
=== New and active projects ===
This is a list of our most active projects. [[mw:Help:Watching pages|Watch]] these pages to learn about project updates and to share your input on new designs, prototypes and research findings.
*[[mw:VisualEditor on mobile/Edit cards|Edit cards]]: This is a clearer way to add and edit links, citations, images, templates, etc. in articles. You can try this feature now. <em>Go here to see how:</em> [[mw:Topic:V394zwrigth8ii7c|📲 <em>Try Edit Cards</em>]].
*[[mw:VisualEditor on mobile/Toolbar refresh|Mobile toolbar refresh]]: This project will learn if contributors are more successful when the editing tools are easier to recognize.
*[[mw:VisualEditor on mobile/VE mobile default|Mobile visual editor availability]]: This A/B test asks: ''Are newer contributors more successful if they use the mobile visual editor?'' We are collaborating with [[mw:VisualEditor on mobile/VE mobile default#26 June 2019 %E2%80%93 Participating wikis and test start date|20 Wikipedias]] to answer this question.
*[[mw:VisualEditor on mobile/Usability improvements|Usability improvements]]: This project will make the mobile visual editor easier to use. The goal is to let contributors stay focused on editing and to feel more confident in the editing tools.
=== Looking ahead ===
* '''Wikimania:''' Several members of the Editing Team will be attending [[wmania:|Wikimania]] in August 2019. They will lead a session about mobile editing in the [[wmania:2019:Community Growth/Visual editing on mobile: An accessible editor for all|Community Growth space]]. Talk to the team about how editing can be improved.
* '''Talk Pages:''' In the coming months, the Editing Team will begin [[mw:Talk pages consultation 2019|improving talk pages]] and communication on the wikis.
=== Learning more ===
The [[mw:VisualEditor on mobile|VisualEditor on mobile]] is a good place to learn more about the projects we are working on. The team wants to talk with you about anything related to editing. If you have something to say or ask, please leave a message at [[mw:Talk:VisualEditor on mobile|Talk:VisualEditor on mobile]].
[[user:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:user_talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:user_talk:Whatamidoing (WMF)|talk]])
</div> ೦೦:೦೨, ೨೪ ಜುಲಾಯಿ ೨೦೧೯ (IST)
<!-- Message sent by User:Trizek (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=19175117 -->
== ಉಲ್ಲೆಕೊ ==
ರಡ್ಡು ತಿಂಗೊಲ್ದ್ ಇಂಚಿಗ್ ಲೇಖನೊ ಮಾಲ್ಪುಗಲು ಒಂಜಿ ಅತ್ತಂದೆ ರಡ್ಡ್ ಉಲ್ಲೆಕೊ ಕೊರ್ಪೆರ್ ಅತೆ ಉಲ್ಲೇಖ ಯಾವೊ?. ಇತ್ತೆ ಎಡ್ಮಿನ್ ದಾದ ಮಾಲ್ತೊಂದು ಉಲ್ಲೆರ್ ?. ದಾಯೆ ತೂಪುಜ್ಜಿ? ಅಯಿಕ್ಕ್ ಬೊಡಾಯಿನ ಟೆಂಪ್ಲೇಟ್ ಇಜ್ಜಿ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೧೧, ೧ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
:ಏರ್ ಉಲ್ಲೇಕೊ ಕೊರ್ಪುಜ್ಜೆರುಂದ್ ತೂಪುನೆ ಅಡ್ಮಿನ್ ಬೇಲೆ ಅತ್ತ್. ವಾ ಟೆಂಪ್ಲೇಟ್ ಇಜ್ಜಿ? ಅಯನ್ ಒಲ್ತ್ ಇಂಪೋರ್ಟ್ ಮಲ್ಪೊಡು? ಅಯಿನ ಕೊಂಡಿ ಬೋಡು.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೦೭:೦೫, ೨ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
== '''Folk-a-thon''' ತುಳುನಾಡ್ದ ಮಾಜಿತ್ ಪೋಪುನ ನಲಿಕೆದ ಪಠ್ಯ ಪ್ರದರ್ಸನೊ ಬೊಕ್ಕ ಡಾಕ್ಯುಮೆಂಟೆಷನ್ ==
ತುಲುವೆರ್ ಒಂಜಿ ವರ್ಸೊದ ಬೇತೆ ಬೇತೆ ತಿಂಗೊಲುಡು ಬೇತೆ ಬೇತೆ ನಲಿಕೆಲು ನಡತೊಂತಿತ್ತ್ಂಡ್. ಇನಿ ಅವು ಪ್ರದರ್ಸನ ಆವಾಂದೆ ಮಾಜೊಂದು ಬರೊಂದುಂಡು. ಮಸ್ತ್ ನಲಿಕೆಲೆನ ಬಗೆಟ್ ಪಟ, ವಿಡಿಯೋ, ಅಡಿಯೋ ಮಾತ ತಿಕೊಂದು ಇಜ್ಜಿ. ಅಂಚಾಯಿನೆಡ್ಧ್ ಅಯಿನ್ Wikicommons ಒಂಜೆ ಕಡೆಟ್ಟ್ ತಿಕುನಂಚ ಮಾಲ್ಪೆರೆ ಬೋಡಾದ್ ನಲಿಕೆಲೆನ ಪಟ, ವೀಡಿಯೋ, ಅಡಿಯೋಲೆನ್ ಅಚ್ಚಿ ಪತ್ತಪುನ ಬೇಲೆಗ್ ನಿಕುಲೆನ ಮಾತ ಬಲ/ಸಕಾಯೊ ಬೋಡು. ನನಾದ ದಿನೊಕುಲೆಡ್ ತುಲುವ ಜೋಕುಲೆಗ್, ಸಂಶೋಧನೆಗ್ ಮಸ್ತ್ ವಿಸಯೊಲು ಬೋಡಾಪುನೆರ್ದ್ ನಲಿಕೆಲೆನ್ ಡಾಕ್ಯುಮೆಂಟೆಷನ್ ಮಲ್ತ್ ದ್ ದೀಡ್ಂಡ ಮಸ್ತ್ ಸಕಾಯೊ ಅವು. ಜಾನಪದ ನಲಿಕೆದ ಕರಜನೊಲ ಅಪುಂಡು. ಉಂದು ವಿಕಿಪೀಡಿಯ ವ್ಯವಸ್ಥೆಡ್ ತುಲು ಜಾನಪದ ನಲಿಕೆಲೆನ್ ಸೇರವುನ ಸುರುತ್ತ ಬೇಲೆ. [https://meta.wikimedia.org/wiki/CIS-A2K/Requests#Folk-a-thon:_A_Text-Performance-Documentation_and_Reconstruction_of_rare_Folk_Performing_Arts_of_Tulunadu ಮುಲ್ಪ] ನಿಕುಲೆನ ಒಪ್ಪು ಪಾಡ್ಲೆ ಸೊಲ್ಮೆಲು. ಮ - --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೧೧:೪೮, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಡ್ಡೆ ಬೇಲೆಗ್ ಎಂಕ್ಲೆನ ಬೆರಿ ಸಾಯೊ ಉಂಡು. ತುಲು ವಿಕಿತ ಮಾತೆಕ್ಲಾ ಇಂದೆತ ಪ್ರೇಜನೊ ಆವು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೪:೦೫, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--Document ಮಾಲ್ಪುಲೆ. ಈ ತಿಂಗೊಲು ಸೋಣದ ಜೋಗಿ ಕುಣಿತ ನಡಪ್ಪಂಡು.ಎಚ್ಚರ ದಿತ್ document ಮಾಲ್ಪುಲೆ ಒಟ್ಟಾರೆ ಮಾಲ್ಪುನ ಅತ್ತ್ ಕಲಾವಿದೆರೆಗ್ ಲಾ ಬೆಲೆ ಕೊರ್ತ್ ಬೆಲೆ ಮಾಲ್ಪುಲೆ, ಕಲಾವಿದೆರೆನ ಪಾತೆರ ಕೇಣ್ಲೆ.ಮಸ್ತ್ ವಿದ್ವಾಂಸೆರ್ ಮಾಲ್ತಿನ ತಪ್ಪು ಅಯರ ಬಲ್ಲಿ. .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೬, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಡ್ಡೆ ಬೇಲೆ. ಉಂಡು ಆವೊಡೆ. ಎನ್ನ ಸಾಯ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೦೬, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಂಕ್ಲೆನ ಬೆರಿ ಸಹಾಯೊ ಉಂಡು---[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೫:೨೪, ೧೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಬಾರಿ ಎಡ್ಡೆ ಆಲೋಚನೆ, ಉಂದು ತುಲುತ್ತ ಮಾತೆರ್ ಲಾ ಸೇರ್ ದ್ ಮಲ್ಪೊಡಾಯಿನ ಬೇಲೆ. ಉಂದು ಆವೊಡೇ. ಎನ್ನ ಎಡ್ಡೆಪ್ಪು ಬೊಕ್ಕ ಸಕಾಯೊ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೩೫, ೧೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
* -- ತುಳು ಸಂಸ್ಕ್ರುತಿದ ತಿಂಗೊಲುಡು ಬರ್ಪಿನ ನಲಿಕೆದ ಸಾಕ್ಷ್ಯ ಸಂಕಲನಲು ಬೋಡು. ಬಾರಿ ಎಡ್ಡೆ ಯೊಚನೆ ಆದುಂಡು, ಎನ್ನ ಒಪ್ಪಿಗೆ ಬೊಕ್ಕ ಸಕಾಯ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೮, ೨೦ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
{{clear}}
== Project Tiger 2.0 ==
''Sorry for writing this message in English - feel free to help us translating it''
<div style="align:center; width:90%%;float:left;font-size:1.2em;margin:0 .2em 0 0;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[File:PT2.0 PromoMotion.webm|right|320px]]
Hello,
We are glad to inform you that [[m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|'''Project Tiger 2.0/GLOW''']] is going to start very soon. You know about Project Tiger first iteration where we saw exciting and encouraging participation from different Indian Wikimedia communities. To know about Project Tiger 1.0 please [[m:Supporting Indian Language Wikipedias Program|'''see this page''']]
Like project Tiger 1.0, This iteration will have 2 components
* Infrastructure support - Supporting Wikimedians from India with internet support for 6 months and providing Chrome books.
* Article writing contest - A 3-month article writing contest will be conducted for Indian Wikimedians communities. Following community feedback, we noted some community members wanted the process of article list generation to be improved. In this iteration, there will be at least two lists of articles
:# Google-generated list,
:#Community suggested a list. Google generated list will be given to the community members before finalising the final list. On the other hand, the community may create a list by discussing among the community over Village pump, Mailing list and similar discussion channels.
Thanks for your attention,<br/>
[[User:Ananth (CIS-A2K)]]<br/>
Message sent by [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೨, ೨೦ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
</div>
</div>
<!-- Message sent by User:Tulsi Bhagat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19312574 -->
{{clear}}
== Project Tiger important 2.0 updates ==
<div style="align:center; width:44%;float:left;font-size:1.2em;height:22em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<div style="color:Red;font-size:1.5em;text-align:center;"> '''Infrastructure support'''</div>
[[File:Project Tiger Community Based Applications.png|280px|upright|right]]
Did you know that applications for Chromebooks and Internet stipends under [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|Project Tiger 2.0]] are open since 25th August 2019?<br/>
We have already received 35 applications as of now from 12 communities. If you are interested to apply, please visit the [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support| '''support page''']] and apply on or before 14 September 2019.
</div>
</div>
<div style="align:center; width:44%;float:left;font-size:1.2em;height:22em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<div style="color:Red;font-size:1.5em;text-align:center;"> '''Article writing contest'''</div>
[[File:Project Tiger Media post Black.png|280px|upright|right]]
As part of the article writing contest of Project Tiger 2.0, we request each community to create their own list by discussing on the village pump and put it on respective [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest#Topics|'''topic list''']].
We also request you to create a pan India article list which needs to be part of writing contest by voting under each topic [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Topics/Proposal for additional items with pan-national interests|'''here''']]
</div>
</div>
{{clear}}
For any query, feel free to contact us on the [[:m:Talk:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|'''talk page''']] 😊<br/>
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೦, ೨೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19312574 -->
== Wikimedia movement strategy recommendations India salon ==
''Please translate this message to your language if possible.''
[[File:Talk-icon-Tamil-yesNO.svg|right|120px]]
Greetings,<br/>
You know Strategy Working Groups have published draft recommendations at the beginning of August. On 14-15 September we are organising a strategy salon/conference at Bangalore/Delhi (exact venue to be decided) It'll be a 2 days' residential conference and the event aims to provide a discussion platform for experienced Wikimedians in India to learn, discuss and comment about the draft recommendations. Feedback and discussions will be documented.
If you are a Wikipedian from India, and want to discuss the draft recommendations, or learn more about them, you may apply to participate in the event.
Please have a look at the '''[[:m:CIS-A2K/Events/Wikimedia movement strategy recommendations India salon|event page for more details]]''' The last date of application is 7 September 2019.
It would be great if you share this information who needs this. For questions, please write on the event talk page, or email me at tito+indiasalon@cis-india.org
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] sent through [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೪:೪೫, ೨ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs/1&oldid=19346824 -->
== Project Tiger Article writing contest Update ==
{{clear}}
''Sorry for writing this message in English - feel free to help us translating it''
<div style="align:center; width:90%;float:left;font-size:1.2em;height:20em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#F9ED94;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hello all,
We would like to give some of the important updates about Project Tiger 2.0.
[[File:Emoji u1f42f.svg|frameless|right|100px]]
* It was informed about the community-generated list for the Article writing contest. The deadline for this has been extended till '''30 September 2019''' since few communities are working on it.
* We are expecting the Project Tiger 2.0 article writing contest to begin from 10 October 2019 and also there is a need for creating the [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest|writing contest page]] in the local Wiki's if you are interested to help please contact [[User talk:Nitesh (CIS-A2K)]] & [[User talk:SuswethaK(CIS-A2K)]].
Looking forward to exciting participation this year! Please let us know if you have any doubts.
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]]<br/>sent by [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೫:೧೦, ೨೭ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
</div>
</div>
{{clear}}
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19346827 -->
== GLOW edit-a-thon starts on 10 October 2019 ==
<div style="border:8px black ridge; background:#f2df94;">
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
Hope this message finds you well. Here are some important updates about [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|Project Tiger 2.0/GLOW edit-a-thon]].
* The participating communities are requested to create an '''[[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest|event page on their Wikipedia]]''' (which has been already updated with template link in the last post). Please prepare this local event page before 10 October (i.e. Edit-a-thon starting date)
* All articles will be submitted here under Project Tiger 2.0. Please copy-paste the fountain tool link in the section of submitted articles. Please see the links '''[[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest#Statistics|here on this page]]'''.
Regards. -- [[User:Nitesh (CIS-A2K)]] and [[User:SuswethaK(CIS-A2K)]] (on benhalf of Project Tiger team) <small>using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೦೧:೧೧, ೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)</small>
</div>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Project Tiger 2.0: Article contest jury information ==
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]We want to inform you that Project Tiger 2.0 is going to begin on 10 October. It's crucial to select jury for the writing contest as soon as possible. Jury members will assess the articles.
Please start discussing on your respective village pump and '''[[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|add your name here]]''' as a jury for writing contest if you are interested. Thank you. --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೬, ೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Proposal of WikiConference India 2020 in Hyderabad ==
Dear all, I am posting this message on behalf of Wikimedians from Andhra Pradesh and Telangana, who, as some of us might already know, have come forward to host WikiConference India 2020 in Hyderabad. A national conference will help us to connect from people from other communities, share knowledge, learn new stuff, and come closer to the Wiki-family. The last conference happened in 2016, and there was nothing for the past three years. Lack of such activities will make individual communities be disconnected from other communities, and this hampers the progress of Indian community as a whole. It is high time that we have the next conference as soon as possible. Since no one came forward in the last three years, and Hyderabad well-connected is all ways, I think this is a good opportunity to be supportive of.
But they would like to gather support from all the communities as a whole before proceeding, rather than just based on individual support, to be inclusive and add more credibility. So it would be good to have consensus among us to support the conference, and endorse it.
There is a Meta-Wiki page which clearly outlines the proposal and their plan, please have a look it at [[m:WikiConference India 2020: Initial conversations|here]]. Endorsements from other communities can be seen at [[WikiConference_India_2020:_Initial_conversations#Community_endorsements|this section]]. Please go through the page, and give your support in the section below, so that we can also be a part of this initiative. It would be great if our community endorses this at the earliest possible, so that the organisers can proceed to further steps without much delay, at the latest by 18 October 2019. This is to be in-line grant funding guidelines by December, which also require a community engagement survey to be done before developing the grant proposal in November. [[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೪:೩೦, ೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
===Support===
===Discussion===
== ಅಗತ್ಯವಾತ್ ಬೊಡಾಯಿನ ಟೆಂಟ್ಲೆಟ್(template import) ==
#[https://en.wikipedia.org/wiki/Template:Cite_AV_media Cite AV media]
#[https://en.wikipedia.org/wiki/Template:Cite_AV_media_notes Cite AV media notes]
#[https://en.wikipedia.org/wiki/Template:Cite_book Cite book]
#[https://en.wikipedia.org/wiki/Template:Cite_conference Cite conference]
#[https://en.wikipedia.org/wiki/Template:Cite_encyclopedia Cite encyclopedia]
#[https://en.wikipedia.org/wiki/Template:Cite_episode Cite episode]
#[https://en.wikipedia.org/wiki/Template:Cite_interview Cite interview]
#[https://en.wikipedia.org/wiki/Template:Cite_journal Cite journal]
#[https://en.wikipedia.org/wiki/Template:Cite_magazine Cite magazine]
#[https://en.wikipedia.org/wiki/Template:Cite_map Cite map]
#[https://en.wikipedia.org/wiki/Template:Cite_news Cite news]
#[https://en.wikipedia.org/wiki/Template:Cite_newsgroup Cite newsgroup]
#[https://en.wikipedia.org/wiki/Template:Cite_press_release Cite press release]
#[https://en.wikipedia.org/wiki/Template:Cite_report Cite report]
#[https://en.wikipedia.org/wiki/Template:Cite_serial Cite serial]
#[https://en.wikipedia.org/wiki/Template:Cite_speech Cite speech]
#[https://en.wikipedia.org/wiki/Template:Cite_techreport Cite techreport]
#[https://en.wikipedia.org/wiki/Template:Cite_thesis Cite thesis]
ಈತ್ ಟೆಂಟ್ಲೆಟ್ ತುಳು ವಿಕಿಪೀಡಿಯತ ಗುಣಮಟ್ಟ ಸುಧಾರಣೆಗ್ ಬೊಡಾಪುಂಡು, ಬೇಗ ಮಾಲ್ತ್ ಕೊರ್ಲೆ(plz template import) .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೫೦, ೨೯ ಜೂನ್ ೨೦೧೯ (IST)
:From where to import? Link to original template please.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೫:೧೫, ೧೦ ಜುಲಾಯಿ ೨೦೧೯ (IST)
:: [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ಇತ್ತೆ ಲಿಂಕ್ ಪಾಡ್ತೆ ಪೂರೆಗ್ಲಾ ಅತ್ ಟೆಂಪ್ಲೇಟ್ ಬೊಡು--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೪೩, ೨೫ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::ಈ ಟೆಂಪ್ಲೇಟುಲು ಕನ್ನಡೊಟು ಉಂಡಾ? ಇತ್ತ್ಂಡ ಅಲ್ತ್ ಇಂಪೋರ್ಟ್ ಮಲ್ಪುನೆ ಎಡ್ಡೆ. ಅಪಗ ಅನುವಾದ ಬೇಕ ಆಪುಂಡ್--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೦೭:೦೫, ೨೬ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::: ಮನಸ್ಸಿಜ್ಜಿ ಇನ್ ಪೊರ್ಟ್ ಮಾಲ್ಪಿಯರ ಪನ್ಲೆ?. ಪೊಕ್ಕಡೆ ಅಲ್ಪ ಉಂಡಾ, ಮುಲ್ಪಾ ಉಂಡಾಂದ್ ನರ್ಜಗುಂನ ಬೊಡ್ಚಿ. ಟೆಂಪ್ಲೇಟ್ ಟ್ರೈನಿಂಗ್ ಬತ್ತಿನನಕಲ್ಲು ಉಲ್ಲೆರ್ ಅನುವಾದ ಮಾಲ್ಪಿಯರ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೪೧, ೨೬ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::: [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]]Template import ಮಾಲ್ಪುಜ್ಜಾಯರಾ?..
:::::ವಿಸಯೊ ಗೊತ್ತಿಜ್ಜಾಂತೆ ಪಾತೆರಿಯರೆ ಬಲ್ಲಿ. ಇಂಗ್ಲಿಷ್ ವಿಕಿಪೀಡಿಯಡ್ದ್ ಟೆಂಪ್ಲೇಟು ಆತಿಜ್ಜಿ. ದಿಂಜ ಸರ್ತಿ ಟ್ರೈ ಮಲ್ತೆ. ಇನಿ ಕನ್ನಡಡ್ದ್ ಮಲ್ತೆ. ಬತ್ತುಂಡು. ಮಾತ ಟೆಂಪ್ಲೇಟುಲೆನ್ ತುಳುಕ್ ಅನುವಾದ ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೩, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:::::ವಿಕಿಪೀಡಿಯದ ಬೇಲೆ ಸ್ವತಂತ್ರವಾದ್ ಮಲ್ಪುನವು. ಉಂದೆಕ್ ಏರ್ ಲಾ ಒತ್ತಾಯ ಅಂತ್ಂಡ ಅಧಿಕಾರ ಚಲಾವಣೆ ಮಲ್ಪೆರೆ ಆವಂದ್. ತೀರ್ಂಡ ಬರವುನು ಮಲ್ಲೆ ಮಲ್ಪನ ಬೇಲೆ ಮಲ್ಪುಲೆ. ಅಂಚನೆ ಆಡ್ಮಿನ್ ನ ಬೇಲೆ ಪುರುಸೋತ್ತು ಉಪ್ಪುನಗ ಬೇಲೆ ಮಲ್ಪುನೆ ಅತ್ತಂದೆ ಅಯಿನೇ ತೂವೊಂದು ಉಪ್ಪುನವು ಅತ್ತ್. ಒಂತೆ ಗೌರವೊಡು ಪಾತೆರುನವು ಎಡ್ಡೆ.[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೦೯, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::::::[[ಬಳಕೆದಾರೆ:Kishorekumarrai|ಕಿಶೋರ್ ಸರ್]] ಇದನ್ನು ಗಮನಿಸಿ[[:en:Wikipedia:Administrators' reading list]]. ಎಡ್ಮಿನ್ ವಿಷಯ ಸಂಪೂರ್ಣ ಮಾಹಿತಿ ಇದರಲ್ಲಿ ಇದೆ ಪೂರ್ತಿ ಓದಿ. ಎಡ್ಮಿನ್ ಜೂನ್ ಬಳಿಕ ಯಾವುದೆ ಎಡಿಡ್ ನಿನ್ನೆಯವರೆಗೆ ಬೇರೆ ಯಾವುದೆ wiki project ನಲ್ಲಿ ಮಾಡಿಲ್ಲವೆ?. ಎಡ್ಮಿನ್ ಕೆಲಸ ಏನಿದೆ ಅದನ್ನು ಅತ ಮಾಡಬೇಕು ಹೊರತು, ಎರಡು ಬಗೆಯುವುದಲ್ಲ. ಬರಿ ಉದ್ದದ ಲೇಖನಕ್ಕೆ ಉಲ್ಲೇಖ ಎಲ್ಲಿಂದ ಹಾಕುವಿರಿ?. ಕಳೆದ ಆರು ತಿಂಗಳಿಂದ ಎಷ್ಟು ಲೇಖನ ನಕ್ಕೆ ಎಷ್ಟು reference ಹಾಕುತ್ತಿದ್ದಿರಿ ಸರ್ ಹೇಳಿ ನೊಡೊಣಷ. Reference ಹಾಕೊದಕ್ಕೆ ಅನುಕೂಲ ಅಗುವ ದೃಷ್ಟಿಯಿಂದ ಕೇಳಿದರೆ ತಪ್ಪೆ?. ಇಷ್ಟು ಸಮಯ ಎಡ್ಮಿನ್ ನಿದ್ರೆಯಲ್ಲಿ ಇದ್ದರಾ??.ಎಷ್ಟು ಟೆಂಪ್ಲೇಟ್ ಅಮದು ಮಾಡಿದರು ಪಟ್ಟಿ ನೀಡಲಿ?. ಇನ್ಯಾರದೊ ಮಾತು ಕೇಳಿ ಮಾತಾಡುವ ಬದಲು ಸ್ವಂತಿಕೆ ಇದ್ದರೆ ಒಳ್ಳೆಯದು ಸರ್ (ನಿಮ್ಮಂತ ದೊಡ್ಡವರಿಗೆ ಹೇಳಬಾರದು ಅದರೂ ,ಚಿಕ್ಕವನಾದರೂ ಈ ಮಾತು ಹೇಳಬೇಕೆನಿಸಿತ್ತು ಅದಿಕ್ಕೆ ಹೇಳಿದೆ) ಮೇಲೆನಮ ಹಾಕಿದ ವಿಷಯವನ್ನು ದಾರಿ ತಪ್ಪಿಸ ಬೇಡಿ--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೮, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::ತುಳುಟೊಂಜಿ ಗಾದೆ ಉಂಡು, `ಬೆಂಜನೊಡು ಕಲ್ಲ್' ಪಂಡ್ದ್. ಅಂಚ ಉಂಡು ಕೆಲವೆರೆ ಪರಿಸ್ಥಿತಿ. ಯಾನಾದ್ ಬೇಲೆ ಮಲ್ಪುಜಿ, ಬೇತೆಕುಲು ಬೇಲೆ ಮಲ್ತ್ಂಡ ಅಯಿಟ್ಟ್ ತಪ್ಪು ನಾಡುನೆ. ತೀರ್ಂಡ ಬೇಲೆ ಮಲ್ಪೊಡು ಇಜ್ಜಾ ಬಾಯಿ ಮುಚ್ಚಿದ್ ತನ್ನ ಬೇಲೆ ಮಲ್ತೊಂದು ಪೋವೊಡು. ಅವು ಬುಡ್ದ್ ಅಯೆ ಅಂಚ ಮಲ್ತೆ, ಇಂಬಿಯೆ ಇಂಚ ಮಲ್ತೆ ಪಂಡೊಂದು ತಿರುಗುನೆ ದಾಯೆ. ಅಕ್ಲೆಗ್ ಬೋಡಾಪಿ ಲೆಕೊ ಅಕುಲು ಮಲ್ತೊಂದು ಉಪ್ಪುವೆರ್. ಏರೆಗ್ಲಾ ಬತ್ತಿ ಸೂತಕ ದಾನೆ. ಮಾತೆರ್ ಲಾ ಒಟ್ಟು ಸೇರ್ ದ್ ಬೇಲೆ ಬೆನ್ಕ. ಉಂದೆಟ್ಟ್ ಏರ್ ಲಾ ಪನವುಗಾದ್ ಬೆನ್ಪುನಕ್ ಲತ್ತ್. ತನ್ಕುಲೆ ಮನಸ್ದ ಕುಸಿಕಾದ್ ಬೆನ್ಪುನೆ ಪನ್ಪುನವು ನೆನೆಪುಡು ಇತ್ತ್ಂಡ ಎಡ್ಡೆ. [[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೨೪, ೩೦ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::ಎಡ್ಮಿನ್ ಸೈತೆರಾ.... ?. ದಾಯೆ import ಮಾಲ್ಪುಜ್ಜಿ ಪಣಾಡ್, reason ದಾದಂದ್ ಗೊತ್ತಾವಾಡ್. ಬೇತಾಯೆನ್ ಚು ಬುಡ್ಪುನಿ ಅತ್ತ್. ಇಜ್ಜಿಯಾಂಟ adimnship ನ್ deactivate ಮಾಲ್ಪಾಡ್?. ಕುಂಬಳ ಕಾಯಿ ಕಳ್ಳ ಎಂದಾಗ ಏಕೆ ಹೆಗಲು ಮುಟ್ಟಿ ನೋಡುತ್ತಿದ್ದೀರಿ ಸರ್?.. ನಮಕ್ ಬೆಲೆ ಅವೊಡ್. ಇಜ್ಜಿಯಾಂಟ reference ಇಪ್ಪಾಂತೆ ಲೇಖನ ಬರು.. ಅಪಗ ದಾದ ಮಾಲ್ಪರ್ ಪನ್ಲೆ. ಒಂಜಿ ಪಾಲಿಸಿ ಇತ್ನೆ ಮುಟ್ಟ ತುಳುಕ್ಕು ಮಾಲ್ತಿಜ್ಜಿ ದಾಯೆ. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೦೦, ೩೦ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::@[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] This is a case of violation of Wikipedia's friendly space policy. I am warning you not to use this kind of foul language. One more such instance, you will be banned from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೩, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
: ಪೊಕ್ಕಡೆ ಪಾತೆರುನೆಡ್ದ್ ಈರೆ ಸುರು ಮಲ್ಪುಲೆ. ಏರೆಗ್ಲ ಗುತ್ತಿಗೆ ಕೊರ್ತ್'ರ್.[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೬:೧೫, ೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:::ಬದಿಕಾನ ಸರ್, ಕಿಶೋರ್ ಸರ್ ನಡುವಲ್ಲಿ ಬಂದು ಬಾಯಿಹಾಕಿದ್ದು. ನಾನು ಕೇಳುತ್ತಿರುವುದು ಟೆಂಪ್ಲೇಟ್ ಅಮದು ಮಾಡಿ ಕೊಡಿ ಎಂದು, ಅಮದು ಮಾಡುವ ಹಕ್ಕು ಇರುವುದು ಎಡ್ಮಿನ್ ಒಬ್ಬರಿಗೆ, ಬೇರೆ ಯಾರಿಗೂ ಇಲ್ಲ. ನಮಿಗೆ ಆದರೆ ಕೇಳುತ್ತಿದೇನಾ?. ನಮ್ಮ ತುಳು ವಿಕಿಪೀಡಿಯದ ಗುಣಮಟ್ಟ ಸುಧಾರಣೆ ಮಾಡಲು ಅನುಕೂಲ ಆಗುತ್ತದೆ. ಸಹಕಾರ ನೀಡದಿದ್ದರೆ ಮುಂದೇನು ಮಾಡಬೇಕು ಅದನ್ನೆ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಸರ್. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೦:೫೪, ೨ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== template ಬೊಡು ==
*[https://en.wikipedia.org/wiki/Template:Copy_edit Copy edit]
* [https://en.wikipedia.org/wiki/Template:Refexample Ref improve]
* [https://en.wikipedia.org/wiki/Template:Wikify Wikify]
* [https://en.wikipedia.org/wiki/Wikipedia:Template_messages/Merging Merge]
* [https://en.wikipedia.org/wiki/Template:Advert Advert]
* [https://en.wikipedia.org/wiki/Template:Unreferenced Reference]
* [https://en.wikipedia.org/wiki/Template:Copy_to_Wikisource Copy to Wikisource]
* [https://en.wikipedia.org/wiki/Template:Underlinked Underlinked]
* [https://en.wikipedia.org/wiki/Template:Copy_to_Wiktionary Copy to Wiktionary]
* [https://en.wikipedia.org/wiki/Template:Merging_from Merging from]
ಇತ್ template ಅಗತ್ಯ ಉಂಡು. ಇತ್ತೆ.import ಮಾಲ್ಪುಲೆ link ಪಾಡ್ತೆ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೫:೪೦, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:ಎಡ್ಮಿನ್ ಯಾಕೆ ಟೆಂಪ್ಲೇಟ್ import ಮಾಡುತ್ತಿಲ್ಲ.?. ಅದಕ್ಕೆ ಸೂಕ್ತ ಕಾರಣ ಕೊಡಿ? ಚಿಕ್ಕ ಲೇಖನವನ್ನು ಕೆಲವರು ಮತ್ತೆ ಮುಂದುವರಿಸಿದ್ದಾರೆ ಅದಕ್ಕೆ ಎಡ್ಮಿನ್ ಸಾತ್ ಕೊಟ್ಟಿದ್ದಾರೆ ಎಂದು ಬಾವಿಸಬಹುದು ಅಲ್ವೆ? ವಿಕಿಪೀಡಿಯ ನಿಯಮವನ್ನು ಪಾಲಿಸದೆ ಲೇಖನ ಬರೆಯುವವರಿಗೆ ಎಡ್ಮಿನ್ ಬೆಂಬಲ ಕೊಟ್ಟಿದ್ದಾರೆ ಎನ್ನುವುದು ಸ್ಪಷ್ಟ.ಅದಕ್ಕಾಗಿ ಎಡ್ಮಿನ್ ಯಾವುದೆ ಟೆಂಪ್ಲೇಟ್ ತರದೆ ಇರುವುದು ಎನ್ನಬಹುದು. ವಿಕಿಪೀಡಿಯ ಮಾರ್ಗದರ್ಶಿ ಸೂತ್ರವನ್ನು ಮುರಿದು ಲೇಖನ ಬರೆಯುವಂತೆ ಎಡ್ಮಿನ್ ಹೇಳಿರಬಹುದು ಹಾಗೆಂದು ಗ್ರಹಿಸಬಹುದು?.!. ಎಡ್ಮಿನ್ ನಿಯಮವನ್ನು ಮುರಿದುದು ಸ್ಪಷ್ಟವಾಗಿ ಗೊಚರಿಸುತ್ತದೆ. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೪, ೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::ಇಂಗ್ಲಿಷ್ ವಿಕಿಪೀಡಿಯಡ್ದ್ ಟೆಂಪ್ಲೇಟು ಆತಿಜ್ಜಿ. ದಿಂಜ ಸರ್ತಿ ಟ್ರೈ ಮಲ್ತೆ. ಇನಿ ಕನ್ನಡಡ್ದ್ ಮಲ್ತೆ. ಬತ್ತುಂಡು. ಮಾತ ಟೆಂಪ್ಲೇಟುಲೆನ್ ತುಳುಕ್ ಅನುವಾದ ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೪, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== ಸರಿಪಡಿಸಿ ==
*[[ವಿಕಿಪೀಡಿಯ:ಸಮುದಾಯೊ ಪುಟೊ]] , [[ವಿಕಿಪೀಡಿಯ: ಚಾವಡಿ]]ಗೆ ಸಂಪರ್ಕ ಆಗುವುದಿಲ್ಲ.
*Under contraction ಟೆಂಪ್ಲೇಟ್ ನಲ್ಲಿ ತಪ್ಪಿದೆ ಸರಿ ಮಾಡಿ
* ವರ್ಗೊ:Pages with script errors ಇದನ್ನು ಯಾರು ಪಡಿಸೊದು???. ಎಡ್ಮಿನ್ ಏನು ಮಾಡುತ್ತಿದ್ದಾರೆ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೨೯, ೪ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::@[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] - You are once again violating Wikipedia's friendly space policy. This is final warning. If you once again personally attack any editor, you will be banned from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೫, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::@[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]]ರೆ, ಕಿಶೋರ್ ಕುಮಾರ್ ರೈ ಯವರು [[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ನನ್ನ ಸದಸ್ಯ]] ಪುಟದಲ್ಲಿ ಮಾಡಿದ್ದು ಏನು?. ಅದನ್ನು ಯಾಕೆ ಪ್ರಸ್ತಾಪಿಸಿಲ್ಲ?. '''ಒಂದು ಕಣ್ಣಿಗೆ ಬೆಣ್ಣೆ ಒಂದು ಕಣ್ಣಿಗೆ ಸುಣ್ಣ''' ಯಾಕೆ?.ತಪ್ಪು ಮಾಡಿದ್ದನ್ನು ಹೇಳಿದರೆ ತಪ್ಪೆ?. ನ್ಯಾಯವೆಂದಾದರೆ ಎಲ್ಲಾರಿಗೂ ಸಮಾನವಾಗಿರಲಿ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೬:೪೪, ೧೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== Project Tiger Article writing contest Jury Update ==
Hello all,
[[File:Emoji u1f42f.svg|frameless|right|100px]]
There are some issues that need to be addressed regarding the Juries of the Project Tiger 2.0 article writing contest. Some of the User has [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|shown interest]] to be a jury and evaluate the articles created as the part of the writing contest. But they don't meet the [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|eligibility criteria]]. Please discuss this aspect with the community, if the community feel that they have the potential to be a jury then we can go ahead. If not please make a decision on who can be the jury members from your community within two days. The community members can change the juries members in the later stage of the writing contest if the work done is not satisfactory or the jury member is inactive with the proper discussion over the village pump.
Regards, <br>
Project Tiger team at [[:m:CIS-A2K|CIS-A2K]] <br>
Sent through--[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೬:೨೧, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== Newbie Biting ==
We are all aware of Newbie biting. One editor by User:Lokesha kunchadka who is indulging in Newbie biting in Kannada and Tulu Wikipedias from almost last 2-3 months. He was issued a warning by the admin in Kannada Wikipedia, link is [https://kn.wikipedia.org/wiki/%E0%B2%B8%E0%B2%A6%E0%B2%B8%E0%B3%8D%E0%B2%AF%E0%B2%B0_%E0%B2%9A%E0%B2%B0%E0%B3%8D%E0%B2%9A%E0%B3%86%E0%B2%AA%E0%B3%81%E0%B2%9F:Lokesha_kunchadka#Newbie_biting here].
I have been conducting Diversity Editathons from last 3 months. One of the major aims of these editathons is to bring more women editors. Before the new editor completes the article this person jumps in and adds templates to imply the article is not of good quality. The new editors, especially the women editors, are scared to continue editing because of this newbie biting. Apart from this I had written an article on 13th October 2019 with the template Under constriction for which he commented saying there is no such topic. I was planning to complete the article with reference to the title today.
I would like to bring to the notice of the community and to hear suggestions from experienced people on how do deal with this kind of situation.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೭, ೧೪ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:Message copied from Kannada Wikipedia:
{{Quote|''ಅಕ್ಟೋಬರ್ ೧೨ ಮತ್ತು ೧೩ ರಂದು ಉಡುಪಿಯ ಮಹಿಳಾ ಕಾಲೇಜಿನಲ್ಲಿ ನೆಡೆದ ವೈವಿಧ್ಯತೆಯ ಸಂಪಾದನೋತ್ಸವಗಳು ೨೦೧೯ ರಲ್ಲಿ ನಮ್ಮ ಕಾಲೇಜಿನ ೧೯ ವಿದ್ಯಾರ್ಥಿನಿಯರು ಭಾಗವಹಿಸಿದ್ದರು. ಮಹಿಳಾ ವಿಜ್ಞಾನಿಗಳ ಬಗ್ಗೆ ಲೇಖನಗಳನ್ನು ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯಕ್ಕೆ ಸೇರಿಸಲಾಗಿತ್ತು. ಲೇಖನಕ್ಕೆ ಎರಡು ಉಲ್ಲೇಖಗಳು ಇರಲೇ ಬೇಕು, ಎಲ್ಲಾ ಲೇಖನಗಳಿಗೂ ಎರಡು ಉಲ್ಲೇಖಗಳನ್ನು ಸೇರಿಸಲಾಗಿತ್ತು. ಆದರೆ ಹೆಚ್ಚಿನ ಉಲ್ಲೇಖಗಳ ಅಗತ್ಯವಿದೆ ಎಂದು Lokesha kunchadka ರವರು ಟೆಂಪ್ಲೇಟ್ ಸೇರಿಸಿದ್ದಾರೆ. ಲೇಖನದ ಗುಣಮಟ್ಟದ ಮೇಲೆ ನಮಗೂ ಅರಿವಿದೆ. ಹೊಸಬರಿಗೆ ಹೆಚ್ಚಿನ ನಿಯಮವನ್ನು ತಿಳಿಸಿದರೆ ಅವರು ವಿಕಿಪೀಡಿಯಕ್ಕೆ ಬರೆಯಲು ಬರುವುದಿಲ್ಲ. ಈ ರೀತಿ ಮಾಡಿದರೆ ಹೊಸಬರು ನಿರುತ್ಸಾಹಗೊಳ್ಳುತ್ತಾರೆ. ನನ್ನ ಸ್ನೇಹಿತೆಯರು ಈಗ ಬರೆಯಲು ಹಿಂಜರಿಯುತ್ತಿದ್ದಾರೆ. ಕಾರಣ ಕೇಳಿದರೆ ನಾವು ಹಾಕಿದ ಲೇಖನದ ಉಲ್ಲೇಖಗಳು ಸರಿ ಇಲ್ಲ ಎಂದು ಬರುತ್ತಿದೆ ಮತ್ತು ಲೇಖನ ಸೇರಿಸಿದ ನಂತರ ಅದರಲ್ಲಿ ಉಲ್ಲೇಖದ ಅಗತ್ಯವಿದೆ ಎಂದು ಬರುತ್ತಿದೆ ಹಾಗಾಗಿ ನಾವು ಬರೆಯುವುದಿಲ್ಲ ಎಂದು ಹೇಳುತ್ತಿದ್ದಾರೆ. ನಾನು ಆ ಲೇಖನಗಳಿಗೆ ಅಗತ್ಯವಿರುವ ಉಲ್ಲೇಖಗಳನ್ನು, ಇನ್ಫೋಬಾಕ್ಸ್, ಆಂತರಿಕ ಮತ್ತು ಬಾಹ್ಯ ಕೊಂಡಿಗಳನ್ನು ಸೇರಿಸುತ್ತಿದ್ದೇನೆ. ಅಕ್ಷರಗಳು ಮತ್ತು ವಾಕ್ಯಗಳಲ್ಲಿ ತಪ್ಪಿದ್ದಲ್ಲಿ ಅದನ್ನೂ ಸರಿಪಡಿಸಿ ಲೇಖನ ಸೇರಿಸಿದ ವಿದ್ಯಾರ್ಥಿನಿಯರಿಗೆ ಅದರ ಬಗ್ಗೆ ತಿಳಿಸಿದ್ದೇನೆ ಕೂಡ. ಇದಲ್ಲದೆ ಕೆಲವು ಲೇಖನಗಳ ವಯಕ್ತಿಕ ಜೀವನ ಎಂಬ ವಿಭಾಗವನ್ನು ತೆಗೆದಿದ್ದಾರೆ. ಲೇಖನಗಳ ಗುಣಮಟ್ಟ ಕಡಿಮೆ ಇದ್ದರೆ ಯಾರು ಬೇಕಾದರು ಸರಿಪಡಿಸಬಹುದಲ್ಲ. ಅದಕ್ಕೆ ಟೆಂಪ್ಲೇಟ್ ಸೇರಿಸ ಬೇಕೆಂದಿಲ್ಲವಲ್ಲ. ಇದು ಹೊಸ ಲೇಖಕರ ಉತ್ಸಾಹವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತಿದೆ. ಈ ಸಮಸ್ಯೆಗೆ ಪರಿಹಾರವನ್ನು ಸಮುದಾಯದವರು ತಿಳಿಸಬೇಕಾಗಿ ಕೇಳಿಕೊಳ್ಳುತ್ತೇನೆ.--Arpitha05 (ಚರ್ಚೆ) ೧೪:೩೬, ೧೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (UTC) ''}}
::@[[User:Lokesha kunchadka]] - In spite of warnings, you are continuing your disruptive behaviour in Kannada and Tulu Wikipedias. This time you have also harassed newly joined woman editors. Explain me the reasons for your behaviour and give me reasons why you should not be barred from Kannada and Tulu Wikipedias? I am expecting a convincing logical answer by tomorrow--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೩:೧೫, ೧೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST) (Admin, Kannada and Tulu Wikipedias)
::೨೦೧೯ ಅಗಸ್ಟ್ ರಡ್ಡನೆ ತಾರೀಖ್ ತಾನಿ [[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]]ರೆ ಕೊರ್ತಿನ ಉತ್ತರೊ '''ಏರ್ ಉಲ್ಲೇಕೊ ಕೊರ್ಪುಜ್ಜೆರುಂದ್ ತೂಪುನೆ ಅಡ್ಮಿನ್ ಬೇಲೆ ಅತ್ತ್.''' --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೩, ೧೬ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::::@[[User:Lokesha kunchadka]] - Instead of answering to the warning, you are indulging in whataboutery. You are also continuing adding templates to articles indicating more references are needed. But you yourself have created articles with no reference or just one reference. The link to such article is [[ಪತೆಂಗ ಬೀಚ್|here]] and [[ರಾಜಶ್ರೀ|here]]. It is noticed that you are harassing newly joined woman editors. You have continued this in spite of warnings. Hence [[User:Lokesha kunchadka]] is barred from Tulu Wikipedia for a month. If the practice is continued after the expiry of the ban, [[User:Lokesha kunchadka]] will be barred permanently from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೭, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST) (Admin, Tulu Wikipedia)
:: ಎಡ್ಮಿನ್ ಬಾರಿ ಎಡ್ಡೆ ಬೇಲೆ ಮಲ್ತೆರ್. ಉಂದೆಕ್ಕ್ ಯಾನ್ ಪೂರ್ಣ ಪ್ರಮಾಣದ ಬೆಂಬಲ ಕೊರೊಂದುಲ್ಲೆ. ಉಂದು ಸುಮಾರ್ ದುಂಬೆ ಅವೊಡಂಡ್. ನನ ಅಂಚ ಮಲ್ಪುನಕ್ಲೆಗ್ ಬುದ್ಧಿಗಾಂಡ್[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೧, ೧೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
: ಸಮುದಾಯೊಡು ಎಚ್ಚಿಕಮ್ಮಿ ಪಾತೆರೊಕತೆ ಬನ್ನಗ ಮಾತೆರೆಕ್ಲ ಬೇನೆ ಆಪುಂಡು. '''ಅಡ್ಮಿನ್ ಸೈತೆರೋ''' ಪನ್ಪುನವು ಏರೆಗ್ಲಾ ಬೇನೆ ಆಪುನವು. ಆ ನಿಲೆಟ್ ಆನಿಯೇ ಅಡ್ಮಿನ್ ತೀರ್ಮಾನೊ ದೆತೊಂತೊಲಿ. ಒಂತೆ ಪೊರ್ತಾಂಡಲಾ ತೀರ್ಮಾನೊ ಮಲ್ತಿನವು ಎಡ್ಡೆ ಆಂಡ್. ಪೊಸಬೆರ್ ಬರೆನಗ ಎಡ್ಡೆ ಆಂಡ್ಂದ್ ಬೆರಿ ಬೊಟ್ಟೊಡು. ಅಲ್ಪಲಾ ಮಾತೆರೆಕ್ಲಾ ಕಿರಿಕಿರಿ ಆಂಡ್. ಅಂಚಾದ್ ಅಡ್ಮಿನ್ ಮಲ್ತಿನವು ಸದ್ಯೊಗು ಸರಿಂದ್ ಎನ್ನ ಒಪ್ಪಿಗೆ.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೯, ೧೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::ಎನ್ಬ ಒಪ್ಪ ಉಂಡು, ಕೊಂಪೆನ್ ಒಗ್ಗಟ್ ಡ್ ಕಟ್ಟೊಡಾಯಿನ ನೆಲೆಟ್ ಬೇಲೆ ಅವೊಡು ಬುಡುತ್ ಬೇತೆ ನೆಲೆತ್ತ ಅಲೋಚನೆತಕುಲೆಗ್ ಉಂದು ಅಗತ್ಯ ಮಾನ್ಪೊಡು.--[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೦೭:೫೯, ೧೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ==
ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಲೇಕನೊ ಬರೆಪುನ ಸ್ಪರ್ಧೆ ನಡತ್ತೊಂಡ್ತೊಂಡ್ತ್ ಉಂಡು. ಅಯಿನ ವಿವರೊ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0) ಮೂಲುಂಡು]. ತುಳು ಬಾಸೆಡ್ ಎಂಚಿನ ವಿಸಯೊಳೆನ್ ಬರೆವುಡು ಪಣ್ಪಿನ ಪಟ್ಟಿ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest/Topics/Tulu ಮೂಲುಂಡು]. ಆ ಪಟ್ಟಿಡ್ತ್ ವಿಸಯೊ ಆಯ್ಕೆ ಮಲ್ತುದ್ ಬರೆಲೆ. ಬೊಕ್ಕ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest ಈ ಪುಟೊಟ್] ಅಯಿನ್ submit ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೧:೧೧, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ಕ್ ಬೋಡಾದ್ ಪಟ್ಟಿಡ್ ಇತ್ತ್ ನ ಬರವುಲೆನ್ ಬರೆವೊಂದು ಉಪ್ಪುನಗನೇ ಏರೋ ಪುದರ್ ಇಜ್ಜಂದಿನಕುಲು ಬತ್ತ್ ದ್ ಬರವುಲೆಗ್ ಟೆಂಪ್ಲೆಟ್ ಸೇರಾವುನೆ, ಅತ್ತ್ಂಡ ಬರವುನು ಮಾಜಾವುನ ಬೇಲೆ ಮಲ್ತೊಂದು ಉಲ್ಲೆರ್. ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್ ಮುಗಿಪುನಡೆ ಮುಟ್ಟ ಅನಾಮದೇಯೆರ್ ಏರ್ ಲಾ ಉಂದೆಕ್ಕ್ ಬರಂದಿಲೆಕೊ ಎಡ್ಮಿನ್ ತೂವೊನೊಡು ಪಂಡ್ದ್ ಕೇನೊಂದುಲ್ಲೆ.[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೩, ೨೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::IPತ್ ಪುದರ್ ದಾಂತಿನಕುಲು ಕೆಲಸ ಮಾಂತೊಂತುಲ್ಲೆರ್. ಅಕುಲೆನ್ ತಡೆಂಡ ಲಾಯಿಕ್. --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೦೮:೨೩, ೨೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:ಪೊಸ ಲೇಕನೊಗು <nowiki>[[ವರ್ಗೊ:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಪಂತೊಗು ಬರೆಯಿನ ಲೇಕನೊ]]</nowiki> ಪಂಡ್ದ್ ಸೇರ್ಪಾಲೆ. ದುಂಬೇ ಇತ್ತಿನ ಲೇಕನೊನು ಮಲ್ಲೆ ಮಲ್ತಿನೆ ಆಂಡ ಅಯಿಕ್ <nowiki>[[ವರ್ಗೊ:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಪಂತೊಗು ಮಲ್ಲೆ ಮಲ್ತಿನ ಲೇಕನೊ]]</nowiki> ಪಂಡ್ದ್ ಸೇರ್ಪಾಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೦೩, ೨೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== Editing News #2 – Mobile editing and talk pages ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<em>[[m:VisualEditor/Newsletter/2019/October|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</em>
Inside this newsletter, the [[mw:Editing|Editing team]] talks about their work on the [[mw:Mobile visual editor|mobile visual editor]], on [[mw:Talk pages project|the new talk pages project]], and at [[wikimania:|Wikimania 2019]].
=== Help ===
<strong>What talk page interactions do you remember?</strong> Is it a story about how someone helped you to learn something new? Is it a story about how someone helped you get involved in a group? Something else? Whatever your story is, we want to hear it!
Please tell us a story about how you used a talk page. <mark>Please share a link to a memorable discussion, or describe it on the <strong>[[mw:Topic:V8d91yh8gcg404dj|talk page for this project]]</strong>.</mark> The team wants your examples. These examples will help everyone develop a shared understanding of what this project should support and encourage.
=== Talk pages project ===
The [[mw:Talk pages consultation 2019|Talk Pages Consultation]] was a global consultation to define better tools for wiki communication. From February through June 2019, more than 500 volunteers on 20 wikis, across 15 languages and multiple projects, came together with members of the Foundation to create a product direction for a set of discussion tools. The [[mw:Talk pages consultation 2019/Phase 2 report|Phase 2 Report]] of the Talk Page Consultation was published in August. It summarizes the product direction the team has started to work on, which you can read more about here: [[mw:Talk pages project|Talk Page Project project page]].
The team needs and wants your help at this early stage. They are starting to develop the first idea. Please add your name to the [[mw:Talk pages project#Getting involved|<strong>"Getting involved"</strong>]] section of the project page, if you would like to hear about opportunities to participate.
=== Mobile visual editor ===
The Editing team is trying to make it simpler to edit on mobile devices. The team is changing the [[mw:VisualEditor on mobile|visual editor on mobile]]. If you have something to say about editing on a mobile device, please leave a message at [[mw:Talk:VisualEditor on mobile|Talk:VisualEditor on mobile]].
==== [[mw:VisualEditor on mobile/Edit cards|Edit Cards]] ====
[[File:Edit Cards-before-v3-comparison.png|thumb|486x486px|What happens when you click on a link. The new Edit Card is bigger and has more options for editing links.]]
* On 3 September, the Editing team released [[:File:Edit Cards comparison v2 and v3.png|version 3 of Edit Cards]]. Anyone could use the new version in the mobile visual editor.
* There is an [[:File:Edit Cards comparison v2 and v3.png|updated design]] on the Edit Card for adding and modifying links. There is also a new, [[mw:VisualEditor on mobile/Edit cards#2 September 2019 - v3 deployment timing|combined workflow for editing a link's display text and target]].
* Feedback: You can try the new Edit Cards by opening the mobile visual editor on a smartphone. Please post your feedback on the [[:mw:Topic:V5rg0cqmikpubmjj|Edit cards talk page]].
==== [[mw:VisualEditor on mobile/Toolbar refresh|Toolbar]] ====
[[File:Toolbar-comparison-v1.png|thumb|486px|The editing toolbar is changing in the mobile visual editor. The old system had two different toolbars. Now, all the buttons are together. [[mw:Topic:V79x6zm8n6i4nb56|Tell the team what you think about the new toolbar]].]]
* In September, the Editing team updated the mobile visual editor's editing toolbar. Anyone could see these changes in the mobile visual editor.
** <em>One toolbar:</em> All of the editing tools are located in one toolbar. Previously, the toolbar changed when you clicked on different things.
**<em>New navigation:</em> The buttons for moving forward and backward in the edit flow have changed.
**<em>Seamless switching:</em> an [[phab:T228159|improved workflow]] for switching between the visual and wikitext modes.
* Feedback: You can try the refreshed toolbar by opening the mobile VisualEditor on a smartphone. Please post your feedback on the [[mw:Topic:V79x6zm8n6i4nb56|Toolbar feedback talk page]].
=== Wikimania ===
The Editing Team attended [[wmania:2019:Program|Wikimania 2019]] in Sweden. They led a session on [[wmania:2019:Community Growth/Visual editing on mobile: An accessible editor for all|the mobile visual editor]] and a session on [[wmania:2019:Community Growth/After Flow: A new direction for improving talk pages|the new talk pages project]]. They tested [[mw:VisualEditor on mobile/Toolbar refresh#v1 prototype|two]] new [[mw:VisualEditor on mobile/Edit cards#v3 prototype|features]] in the mobile visual editor with contributors. You can read more about what the team did and learned in [[mw:VisualEditor on mobile#Wikimania Stockholm: Overview|the team's report on Wikimania 2019]].
=== Looking ahead ===
* <strong>Talk Pages Project:</strong> The team is thinking about the first set of proposed changes. The team will be working with a few communities to pilot those changes. The best way to stay informed is by adding your username to the list on the project page: [[mw:Talk pages project#Getting involved|<strong>Getting involved</strong>]].
* <strong>Testing the mobile visual editor as the default:</strong> The Editing team plans to post results before the end of the calendar year. The best way to stay informed is by adding the project page to your watchlist: [[mw:VisualEditor on mobile/VE mobile default|<strong>VisualEditor as mobile default project page</strong>]].
* <strong>Measuring the impact of Edit Cards:</strong> This study asks whether the project helped editors add links and citations. The Editing team hopes to share results in November. The best way to stay informed is by adding the project page to your watchlist: [[mw:VisualEditor on mobile/Edit cards|<strong>Edit Cards project page</strong>]].
– [[User:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:User talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:User talk:Whatamidoing (WMF)|talk]])
</div> ೧೬:೪೨, ೨೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Johan (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/Target_lists/VE_201910/5&oldid=19500851 -->
== Project Tiger update: Let's walk together with Wikipedia Asian Month and WWWW ==
<div style="border:8px red ridge;padding:6px;>
[[File:Emoji_u1f42f.svg|thumb|140px|The Tiger says "Happy Dipavali" to you]]
::''Apologies for writing in English, Kindly translate this message if possible.''
Greetings!
First of all "Happy Dipavali/Festive season". On behalf of the Project Tiger 2.0 team we have exciting news for all. Thanks for your enthusiastic participation in Project Tiger 2.0. You also know that there is a couple of interesting edit-a-thons around. We are happy to inform that the '''Project Tiger article list just got bigger.'''
We'll collaborate on Project Tiger article writing contest with [[:m:Wikipedia_Asian_Month_2019|Wikipedia Asian Month 2019]] (WAM2019) and [[:m:Wiki_Women_for_Women_Wellbeing_2019|Wiki Women for Women Wellbeing 2019 (WWWW-2019)]]. Most communities took part in these events in the previous iterations. Fortunately this year, all three contests are happening at the same time.
Wikipedia Asian Month agenda is to increase Asian content on Wikipedias. There is no requirement for selecting an article from the list provided. Any topic related to Asia can be chosen to write an article in WAM. This contest runs 1 November till 30 November.
For more rules and guidelines, you can follow the event page on Meta or local Wikis.
WWWW focus is on increase content related to women's health issues on Indic language Wikipedias. WWWW 2019 will start from 1 November 2019 and will continue till 10 January 2020. A common list of articles will be provided to write on.
'''<span style="background:yellow;">In brief: The articles you are submitting for Wikipedia Asian Month or WWWW, you may submit the same articles for Project Tiger also.</span>''' Articles created under any of these events can be submitted to fountain tool of Project Tiger 2.0. Article creation rule will remain the same for every community. -- sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೮:೧೪, ೨೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Wikipedia Asian Month 2019 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:WAM logo without text.svg|right|frameless]]
'''Wikipedia Asian Month''' is back! We wish you all the best of luck for the contest. The basic guidelines of the contest can be found on your local page of Wikipedia Asian Month. For more information, refer [[:m:Wikipedia Asian Month 2019|to our Meta page]] for organizers.
Looking forward to meet the next ambassadors for Wikipedia Asian Month 2019!
For additional support for organizing offline event, contact our international team [[:m:Talk:Wikipedia Asian Month 2019|on wiki]] or on email. We would appreciate the translation of this message in the local language by volunteer translators. Thank you!
[[:m:Wikipedia Asian Month 2019/International Team|Wikipedia Asian Month International Team.]]
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೨:೨೭, ೩೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/WAM&oldid=19499019 -->
== Project Tiger 2.0 - Hardware support recipients list ==
<div style="border:6px black ridge; background:#f2df94;">
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
Thank you all for actively participating and contributing to the writing contest of Project Tiger 2.0. We are very happy to announce the much-awaited results of the hardware support applications. You can see the names of recipients for laptop [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support/Laptops|here]] and for laptop see [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support/Internet|here]].
78 Wikimedians will be provided with internet stipends and 50 Wikimedians will be provided with laptop support. Laptops will be delivered to all selected recipients and we will email you in person to collect details. Thank you once again.
Regards. <small>-- [[User:Nitesh (CIS-A2K)]] and [[User:SuswethaK(CIS-A2K)]] (on benhalf of Project Tiger team) <br>
using --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೨:೪೫, ೮ ನವಂಬರ್ ೨೦೧೯ (IST)</small>
</div>
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ (Interface admin) ಆಯೆರ ನಿಕುಲೆನ ಬೆಂಬಲೊ ಬೋಡು ==
ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ ಇಜ್ಜಿ. ಎಡಿಟ್ ಟೂಲ್ಬಾರ್ ಬದಲಾವಣೆ ಮಲ್ಪೆರೆ, ಸುಮಾರು ಅಡ್ಮಿನ್ ಬೇಲೆಲೆನ್ ಮಲ್ಪೆರೊ ಅವು ಬೋಡು. ಅಂಚಾತ್ ಯಾನ್ ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯೆರ ಅರ್ಜಿ ಪಾಡ್ಪೆ. ನಿಕುಲೆನ ಬೆಂಬಲೊ ಬೋಡು. Tulu Wikipedia does not have an Interface Admin. I would like to apply to become.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೫೧, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
===ಒಪ್ಪಿಗೆ/Support===
# {{support}}-- ಈರ್ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಅಡ್ಮಿನ್ ಆದುಲ್ಲರ್. ಅಯಿತೊಟ್ಟುಗೆ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯೆರೆ ಎನ್ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೨:೫೪, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}}-- ಈರ್ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಅಡ್ಮಿನ್ ಆದ್ ಉಲ್ಲರ್. ಇತ್ತೆ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯರ್ ದಾಂಡ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಬುಳೆಚ್ಚಿಲ್ಗ್ ಪ್ರಯೋಜನ ಅವು ಪನ್ಪಿ ನಂಬುಗೆ ಎನ್ನವು. ಅಂಚಾದ್ ಈರ್ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಪುನೆಕ್ ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೮:೩೮, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಈರ್ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯರೆ ಎನ್ನ ಒಪ್ಪಿಗೆ ಸೂಚಿಸದೆ-[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೯:೪೪, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೦:೩೯, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೫, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} --[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೭:೩೫, ೧ ನವಂಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Arpitha05|Arpitha05]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Arpitha05|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೦, ೭ ನವಂಬರ್ ೨೦೧೯ (IST)
====ಕೆಲ ಪ್ರಶ್ನೆಲು\Question ====
* ಟೆಂಪ್ಲೇಟ್ ಅನುವಾದ ಮಾಲ್ತಿನ ಪಟ್ಟಿನ್(Trancelated Template list) ಜನವರಿಡ್ ಕೆಂಡೊ ಅಯಿನ ಪಟ್ಟಿ ಇತ್ನೆ [[ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ/2019|ಮುಟ್ಟ ಕೊರ್ತಿಜ್ಜಿ]] ದಾಯೆ?.
* ವರ್ಗೊ:Pages with script errors ಇಂದೆನ್ ನಮೊ [[ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ/2019|ಆನಿಯೆ ವರದಿ ಮಾಲ್ತೊ]] ಅತ್ನೆ ಮುಟ್ಟ ಎಚ್ಚರ ಇಜ್ಜಿಯಾಂಡ್ ದಾಯೆ?.
* ಇಂಪೊರ್ಟ್ ಮಾಲ್ಪುನಗ ಅಂಡ ಸುಲಭ ಇತ್ತ್ಂಡ್, ಮಸ್ತ್ ಟೆಂಪ್ಲೇಟ್ ಇಂಪೊರ್ಟ್ ಮಾಲ್ತಿವು error's ಉಂಡು ಅಯಿನ್ ಟೆಸ್ಟ್ (test, fix) ಮಾಲ್ಪಾರ? ಇಜ್ಜಿಯಾ?.
* ೬ ತಿಂಗೋಲು ಮುಟ್ಟ ಇಂಟರ್ ಪೇಸ್ ಎಡ್ಮಿನ್(Six Months valid interface adminship) ಯಾವಾಂದ?.
* ೬ ತಿಂಗೋಲು ಕರಿನೆಟ್ಟ್ ಬುಕ್ಕೊ(After ೬ month report and diceded community), ಮಾಲ್ತಿನ ಬೆಲೆತ ವರದಿ ಸಮುದಾಯೋಗು ಕೊರೊಡು.
* ೬ ತಿಂಗೊಲು ಕರಿನೆಟ್ಟ್ ಬುಕ್ಕೊ ಸಮುದಾಯೊ ಅಯಿತ್ತಾ ಮಿತ್ತ್ ಸಬೆ ನಡಪ್ಪೊಡು, ಅಲ್ಪ ದೆತ್ತೊಂದ್ನ ನಿರ್ಣೊಯೊನು ಸಮುದಾಯೊಗು ತೆರಿಪಾವೋಡು.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೧:೫೯, ೧೭ ನವಂಬರ್ ೨೦೧೯ (IST)
===approved===
*ಪವನಜೆರೆಗ್ interface adminship ತಿಕ್ಕ್ತ್ಂಡ್--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೩:೧೯, ೨೨ ನವಂಬರ್ ೨೦೧೯ (IST)
== Extension of Wikipedia Asian Month contest ==
In consideration of a week-long internet block in Iran, [[:m:Wikipedia Asian Month 2019|Wikipedia Asian Month 2019]] contest has been extended for a week past November. The articles submitted till 7th December 2019, 23:59 UTC will be accepted by the fountain tools of the participating wikis.
Please help us translate and spread this message in your local language.
[[:m:Wikipedia Asian Month 2019/International Team|Wikipedia Asian Month International Team]]
--[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೪೬, ೨೭ ನವಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/WAM&oldid=19592127 -->
== [WikiConference India 2020] Invitation to participate in the Community Engagement Survey ==
This is an invitation to participate in the Community Engagement Survey, which is one of the key requirements for drafting the Conference & Event Grant application for WikiConference India 2020 to the Wikimedia Foundation. The survey will have questions regarding a few demographic details, your experience with Wikimedia, challenges and needs, and your expectations for WCI 2020. The responses will help us to form an initial idea of what is expected out of WCI 2020, and draft the grant application accordingly. Please note that this will not directly influence the specificities of the program, there will be a detailed survey to assess the program needs post-funding decision.
*Please fill the survey at; https://docs.google.com/forms/d/e/1FAIpQLSd7_hpoIKHxGW31RepX_y4QxVqoodsCFOKatMTzxsJ2Vbkd-Q/viewform
*The survey will be open until 23:59 hrs of 22 December 2019.
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೪:೩೫, ೧೮ ದಸಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:KCVelaga@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Project Tiger updates - quality of articles ==
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
It has been around 70 days since Project Tiger 2.0 started and we are amazed by the enthusiasm and active participation being shown by all the communities. As much as we celebrate the numbers and statistics, we would like to reinstate that the quality of articles is what matters the most. Project Tiger does not encourage articles that do not have encyclopedic value. Hence we request participants to take care of the quality of the articles submitted. Because [[:en:Wikipedia:Wikipedia_is_not_about_winning|Wikipedia is not about winning]], it is about users collectively building a reliable encyclopedia.
Many thanks and we hope to see the energy going! <small>(on behalf of Project Tiger team) <br>
sent using --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೧:೫೧, ೧೯ ದಸಂಬರ್ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== SVG ಚಿತ್ರೊನ್ ತುಳುಟ್ ಅನುವಾದ ಮಾಲ್ಪುನ ಆಭಿಯಾನ ==
[[File:Commons-logo-en.svg|thumb|left|100px]]
[https://commons.wikimedia.org ವಿಕಿಕಾಮನ್ಸ್] ಮೂಲಕೊ ವಿಕಿಪೀಡಿಯಟ್ ವಿಜ್ಞಾನ, ತಂತ್ರಜ್ಞಾನ, ಶೈಕ್ಷಣಿಕ ಮಾಹಿತಿ ಸೇರಾವುನ ಅತ್ತಂದೆ ಮಸ್ತ್ ವಿಷಯಗ್ ಸಂಬಂಧಪಟ್ಟಿನ ಚಿತ್ರೊನ್ ಭಾರತೀಯ ಭಾಸೆಗ್ ಮಸ್ತ್ ಕಡಿಮೆ ಬಲಕೆ ಉಂಡು. ಅಂಚಾತ್ ಅಂಚಿನ ಚಿತ್ರೊನ್ ತುಳು ಸೇರಾತ್ ಬೇತೆ ಭಾರತೀಯ ಭಾಸೆಟ್ ಇಪ್ಪುನ ಅಭಿಯಾನ ೨೧ ಫೆಬ್ರವರಿ ೨೦೧೯ಡ್ತ್ ಸುರು ಮಾಲ್ಪುನೆ. ಅಂಚಾತ್ ಮಸ್ತ್ ಚಿತ್ರೊ ಇಂಗ್ಲೀಶ್ ಅವೃತ್ತಿಟ್ ಮೂಲವಾತ್ ಅಯಿನ ಭಾರತೀಯ ಭಾಷಾ ಆವೃತ್ತಿನ್ ತಯಾರುಮಾಲ್ಪುನ ಯೋಜನೆ ಉಂದು. ಈ ಚಿತ್ರೊ [[:en:Scalable Vector Graphics|Scalable Vector Graphics (svg)]] ಮಾದರಿತವ್. ಅಯಿನ್ ಇಂಕ್ ಸ್ಕೇಪ್ (Inkscape) ಅಂಚಿನ ತಂತ್ರಾಶೊಟ್ ದೆತ್ತ್ ಬದಲಾವಣೆ ಮಾಲ್ಪೊಲಿ. ಈ ಅಭಿಯಾನಟ್ ಕಲ್ಪಿಯರ ಮುಖ್ಯ ಸಂಗತಿ ಪಂಡ ಇಂಕ್ ಸ್ಕೇಪ್ ತಂತ್ರಾಂಶತ ಬಲಕೆ, ಅಯಿನ್ ಕನ್ನಡೊ ಚಿತ್ರೊತ ಆವೃತ್ತಿನ್ ತಯಾರ್ ಮಾಲ್ಪುನ, ವಿಕಿ ಕಾಮನ್ಸಿಗ್ ಅಪ್ಲೋಡ್ ಮಾಲ್ಪುನ. ಈ ಅಭಿಯಾನಡ್ ಮಸ್ತ್ ಸಂಖ್ಯೆಟ್ ಚಿತ್ರೊ ತಯಾರುಮಾಲ್ಪೊಡು, ಮಾಲ್ತಿನಂಗ್ಲೆಗ್ ಇನಾಮ್ ಉಂಡು. ಅಯಿಟ್ ತುಳು ಬುಕ್ಕ ತುಳು ವಿಕಿ ಸಮುದಾಯ ಸಕ್ರಿಯವಾತ್ ಪಾಲ್ ಪಡೆತ್ ನಮ್ಮ ಭಾಷೆತ contentನ್ ಅಭಿವೃದ್ಧಿ ಮಾಲ್ಪುಗೊ. ಇಂದೆಕ್ ಮಸ್ತ್ ವಿಶೇಷ ತಾಂತ್ರಿಕ ಜ್ಞಾನತ ಅವಶ್ಯಕತೆ ಬೊಡ್ಚಿ. ಅಂಚನೆ ಪೂರ ಆಸಕ್ತೆರ್ ಪಾಲ್ ಪಡೆಲೆಂದ್ ಕೋರಿಕೆ. ಈ ಸಂಬಂಧ ಫೆಬ್ರವರಿ ೨೧ ಬುಕ್ಕೊ ಒಂಜಿ ತರಬೇತಿ ಅತ್ತಂದೆ ಸಂಪಾದನೋತ್ಸವ ಪಾಡೊಕ್ಣಕೊ ಅಯಿನ ಆಲೋಚನೆ ಮಾಲ್ತೊ ತಾರೀಖು ಬುಕ್ಕೊ ಜಾಗೆನ್ ಕೆಲ ದಿನಟ್ ಘೋಷಣೆ ಮಾಲ್ಪೊ. ಬಲೆ.. ಕೈಜೋಡಾಲೆ.
<big>'''ಅಭಿಯಾನತ ಪುಟ ಮುಲುಂಡು: [https://commons.wikimedia.org/wiki/Commons:SVG_Translation_Campaign_2019_in_India SVG Translation Campaign 2019 in India]'''
'''ಪಾಲ್ ಪಡೆಪ್ಪುನಗ್ಲ್ ಮುಲ್ಪ ಪುದಾರ್ ಸೇರಾಲೆ:[https://commons.wikimedia.org/wiki/Commons:SVG_Translation_Campaign_2019_in_India/Participants Participants]'''</big>
== ಕಜ್ಜ ಕೂಟ ==
ತುಳು ಬಾಸೆದ ಪೊಸ ದೇಕಿಗಾದ್ ಪೊಸ ವರ್ಸೊದ ಅಲೋಚನೆನ್ ಒಟ್ಟು ಪಾಡಿಯೆರ ಬೋಡಾದ್ ತಾರೀಕ್ ೦೧ ಫೆಬ್ರುವರಿ ೨೦೨೦ಗ್ ಒಟ್ಟು ಸೇರುನೆಂದ್ ಪಾಡ್ತೊ. ಪಾಲು ಪಾಡೆಪುನಕುಲು [https://meta.wikimedia.org/wiki/Karavali_Wikimedians/Meetups/Meetup_at_Sri_Ramakrishna_Pre-University_College-10 ಮೂಲು] ಸೈನ್ ಪಾಡ್ಲೆ.
ಚರ್ಚೆತ ವಿಸಯೊಲು.
*ತುಲು ವಿಕ್ಷನರಿನ್ ಜುವೊ ಮಾನ್ಪುನ.
*ವಿಕಿ ಲವ್ಸ್ ಜಾನಪದ(Folklore).
*ವಿಕಿ ಲವ್ಸ್ ವಿಮೆನ್ ಸೌತ್ ಏಶಿಯಾ - ೨೦೨೦ ಅಯಿನ ತುಲುತ ಸಂಘಟಕೆರಾತ್ ಪಾಲ್ ಗೆತುನೊನಕುಲು.
*Wiki Summit 2020 ಪೊಪುನ ಬಗೆಟ್ಟ್
*Folkothanಗ್ ದುಡ್ಡುತ ವಿಚಾರೊ.
*ಇಲ್ಲ್ ಇಲ್ಲ್ ವಿಕಿ ಪಿಡಿಯಾ.
*ಒಂಜಿ ಕಾರ್ಯಗಾರೊ '''ಸಿಮಂತಿ ಬಾಯಿ ಸರಕಾರೊತ ಮ್ಯೂಸಿಯಂ'''ಡ್ ಮಾನ್ಪಿ ಬಗೆಟ್.
jc6sgfh76ne8j88bgfvflwh0m64dr51
370349
370347
2026-09-28T07:42:39Z
ChiK
1136
370349
wikitext
text/x-wiki
== ಕಜ್ಜಕೊಟ್ಯ ==
* ಉಂದುವೆ ಜನವರಿ ತಿಂಗೊಲು ೧೯-೨೦, ೨೦೧೯ ದಾನಿ ಕುಕ್ಕೇಶ್ರೀ ಸುಬ್ರಹ್ಮಣ್ಯೇಶ್ವರ ಪದವಿ ಕಾಲೇಜು, ಸುಬ್ರಹ್ಮಣ್ಯೊಡ್ ಒಂಜಿ ಲೇಸ್ ನಡಪ್ಪಾಯರ ಉಂಡು. [[ವಿಕಿಪೀಡಿಯ:ಕಜ್ಜಕೊಟ್ಯ-೨೩|ವಿವರೊ ಮುಲುಂಡು]].
* ಬರ್ಪಿ ಪೆಬ್ರವರಿ ತಿಂಗೊಲು ೦೨-೦೩, ೨೦೧೯ ದಾನಿ ನೆಹರು ಮೆಮೋರಿಯಲ್ ಕಾಲೇಜು ಸುಳ್ಯೊಡ್ ಒಂಜಿ ಲೇಸ್ ನಡಪ್ಪಾಯರ ಉಂಡು. [[ವಿಕಿಪೀಡಿಯ:ಕಜ್ಜಕೊಟ್ಯ-೨೨|ಅಯಿನ ವಿವರೊ ಮುಲುಂಡು]]--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೭:೩೮, ೩ ಜನವರಿ ೨೦೧೯ (IST)
== Call for bids to host Train-the-Trainer 2019 ==
''Apologies for writing in English, please consider translating the message''
Hello everyone,
This year CIS-A2K is seeking expressions of interest from interested communities in India for hosting the Train-the-Trainer 2019.
Train-the-Trainer or TTT is a residential training program which attempts to groom leadership skills among the Indian Wikimedia community (including English) members. Earlier TTT has been conducted in 2013, 2015, 2016, 2017 and 2018.
If you're interested in hosting the program, Following are the per-requests to propose a bid:
* Active local community which is willing to support conducting the event
** At least 4 Community members should come together and propose the city. Women Wikimedians in organizing team is highly recommended.
* The city should have at least an International airport.
* Venue and accommodations should be available for the event dates.
** Participants size of TTT is generally between 20-25.
** Venue should have good Internet connectivity and conference space for the above-mentioned size of participants.
* Discussion in the local community.
Please learn more about the [[:m:CIS-A2K/Events/Train the Trainer Program|Train-the-Trainer program]] and to submit your proposal please visit [[:m:CIS-A2K/Events/Train the Trainer Program/2019/Bids|this page]]. Feel free to [[m:Special:EmailUser/Pavan Santhosh (CIS-A2K)|reach]] to me for more information or email tito{{@}}cis-india.org
Best!
[[User:Pavan Santhosh (CIS-A2K)|Pavan Santhosh]] ( [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೧:೨೨, ೬ ಜನವರಿ ೨೦೧೯ (IST) )
<!-- Message sent by User:Saileshpat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=17298203 -->
== Temporary admin rights for adding gadgets ==
Hello I am AnoopZ you may probably know me by previous user name - [[User:Anoop Rao]] ,as per above request to add some gadgets, I would like to request temporary admin rights for 3days.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೨:೦೬, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}-[[ಬಳಕೆದಾರೆ:Vikashegde|Vikashegde]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vikashegde|ಪಾತೆರ್ಲೆ]]) ೧೨:೧೩, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
* {{support}} --[[ಬಳಕೆದಾರೆ:Gopala Krishna A|Gopala Krishna A]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Gopala Krishna A|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೩, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}} --[[ಬಳಕೆದಾರೆ:Ananth subray|Ananth subray]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ananth subray|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೪, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೩:೧೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:BENET G AMANNA|BENET G AMANNA]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BENET G AMANNA|ಪಾತೆರ್ಲೆ]]) ೧೩:೫೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Durga bhat bollurodi|Durga bhat bollurodi]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Durga bhat bollurodi|ಪಾತೆರ್ಲೆ]]) ೧೬:೧೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Pranavshivakumar|Pranavshivakumar]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pranavshivakumar|ಪಾತೆರ್ಲೆ]]) ೧೭:೦೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೧೭:೦೨, ೨೫ ಜನವರಿ ೨೦೧೯ (IST). Welcome Anoop. Please look into and resolve the bugs in tcy templates like Infobox:settlement,mbox etc. Maybe template file autotranslate need to be imported for this.
above request will be completed by stewards.@[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] i will look into templates, there is no auto translate scripts in my knowledge it should be done manually.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೮:೧೨, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
@ [[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]. Please check up the missing map link in an example like the following:
https://tcy.wikipedia.org/wiki/ಮುಂಡ್ಕೂರು. [[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೭:೩೮, ೨೯ ಜನವರಿ ೨೦೧೯ (IST).
Further:
Resource for "autotranslate" is here:
https://commons.wikimedia.org/wiki/Template:Autotranslate. [[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೭:೫೯, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
:I have imported Template:Autotranslate from Commons. It need not be translated as per its documentation. It uses Module:Autotranslate. There is a dangerous possibility of recursive calling and hence should be used with care.-[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೧೭, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
== ಟೆಂಪ್ಲೇಟ್ ==
ಇತ್ತೆ ನಮ ಏತ್ ಟೆಂಪ್ಲೇಟ್ ಬಲಕೆ ಮಾಲ್ಪೊಲಿ. ಅಯಿನ ಪಟ್ಟಿ ಕೊರ್ಂಟಾ ಎಡ್ಡೆ ಇತ್ತ್ಂಡ್.ಅನುವಾದ ಅಯಿನ ಟೆಂಪ್ಲೇಟ್ ಪಟ್ಟಿ ಕೊರ್ಲೆ.ತುಳು ವಿಕಿಪೀಡಿಯ ಗ್ ಬಾರಿ ಕಮ್ಮಿ ಉಂಡು ಅನುವಾದ ಅಯಿನ ಟೆಂಪ್ಲೇಟ್ ನಾಣ ದುಂಬುಗು ಬಲಕೆ ಮಾಲ್ಪಿಯರ ಪಟ್ಟಿ ಇತ್ತ್ಂಟಾ ಎಡ್ಡೆ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೨೩, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
== Gadgets ಅಮದ್ ಮಾಲ್ತ್ ಕೊರ್ಲೆ ==
#ProveIt
#:{{done}} needs admin to put translated label in [[Mediawiki:Gadget-ProveIt]] and check that it is functioning [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೭, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
#UTCLiveClock
#:{{done}} needs admin to put translated label in [[Mediawiki:Gadget-UTCLiveClock]] [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#exlinks
#:{{done}} plese check, also needs translated labels [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#PrintOptions
#:{{done}} plese check, also needs translated labels [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#refToolbar
#:{{not done}} customised for enWP; won't import nicely, and would need code changes. Better for locals to add to personal common.js the required subpart [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#ImageAnnotator
#:{{not done}} as you don't have local uploads, annotations are better made at Commons with that tool [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#Twinkle
#:{{not done}} this is a complex beast and for the work here it is overkill [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೭, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
#Navigation_popups
#:already in place, needs admin to put tcy label in [[ಮಾದ್ಯಮೊ ವಿಕಿ:Gadget-Navigation popups/tcy]], or provide some text and ping me [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
::I am an admin. Please let me know what exactly needs to be done.-[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೭:೫೪, ೨೮ ಜನವರಿ ೨೦೧೯ (IST)
#GoogleTrans
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#citations
#: {{not done}} enWP tool only
#XTools-ArticleInfo
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#CommentsInLocalTime
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#Reference Tooltips
#: {{not done}} tips in English, users would be better loading script through their personal common.js
#markAdmins
#:{{not done}} manually contained list required, and insufficient rightsholders to add value to this wiki
ಇತ್ Gadgets ತುಳು ವಿಕಿಗ್ ಬೊಡಾಪುಂಡು--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೧:೨೭, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
::above request will be completed by stewards.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೮:೧೨, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
{{comment}} see above. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೦೫, ೨೬ ಜನವರಿ ೨೦೧೯ (IST) <small>(global systop, not steward)</small>
[[user:Pavanaja|Pavanaja]] I have installed the gadgets identified above, and put in place EN language descriptions, what needs to now be done is to put in TCY language descriptions. You can get a listing at [[Special:Gadgets]] and [[ವಿಸೇಸೊ:PrefixIndex/Mediawiki:]] though for you.
[[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೫:೦೪, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
{| border=1
!Gadget!!EN!!TCY
|-
|CommentsInLocalTime||[[Mediawiki:Gadget-CommentsInLocalTime/en]]||[[Mediawiki:Gadget-CommentsInLocalTime/tcy]]
|-
|GoogleTrans||[[Mediawiki:Gadget-GoogleTrans/en]]||[[Mediawiki:Gadget-GoogleTrans/tcy]]
|-
|HotCat||[[Mediawiki:Gadget-HotCat/en]]||[[Mediawiki:Gadget-HotCat/tcy]]
|-
|popups||[[Mediawiki:Gadget-Navigation popups/en]]||[[Mediawiki:Gadget-Navigation popups/tcy]]
|-
|PrintOptions||[[Mediawiki:Gadget-PrintOptions/en]]||[[Mediawiki:Gadget-PrintOptions/tcy]]
|-
|ProveIt||[[Mediawiki:Gadget-ProveIt/en]]||[[Mediawiki:Gadget-ProveIt/tcy]]
|-
|UTCLiveClock||[[Mediawiki:Gadget-UTCLiveClock/en]]||[[Mediawiki:Gadget-UTCLiveClock/tcy]]
|-
|XTools-ArticleInfo||[[Mediawiki:Gadget-XTools-ArticleInfo/en]]||[[Mediawiki:Gadget-XTools-ArticleInfo/tcy]]
|-
|exlinks||[[Mediawiki:Gadget-exlinks/en]]||[[Mediawiki:Gadget-exlinks/tcy]]
|-
|refToolbar||[[Mediawiki:Gadget-refToolbar/en]]||[[Mediawiki:Gadget-refToolbar/tcy]]
|}
I have watched the page for a few days in case of questions, and nwo will stop that active watch. If there are questions, then please [[mw:Manual:Echo|ping me]] directly and I will address them then. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೬:೫೮, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
:[[user:Lokesha kunchadka|Lokesha kunchadka]] you may wish to check whether the added gadgets work for you. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೬:೫೯, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
::Thanks--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೨೫, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
== ಬೇತೆ ಬೇತೆ ವಿಸಯೊಳೆನ ಕಜ್ಜಕೊಟ್ಯ ==
ಬೇತೆ ಬೇತೆ ವಿಸಯೊಲು, ಪೊಂಜೊಳೆನ ವಿಸಯೊಲು ಬೊಕ್ಕ ಪೊಂಜೊಳೆನ್ ಸೇರಾಪುನೆ -ಇಂದೆಕ್ ಬೋಡಾದ್ ಕಜ್ಜಕೊಟ್ಯ ನಡಪ್ಪಾಯೆರೆ ಕಾಸ್ಗ್ ಬೋಡಾದ್ [https://meta.wikimedia.org/wiki/Grants:Project/Rapid/Dhanalakshmi_.K._T/Diversity_editathons_2019 ಅರ್ಜಿ ಪಾಡ್ದೆ]. ಅಯಿನ್ ಓದ್ದ್ ಇರೆನ್ ಸಲಹೆ ಇತ್ತ್ಂಡ ದೀವೊಡ್ ಬೊಕ್ಕ ಅಯಿಕ್ ಸಪೋರ್ಟ್ ಮಲ್ಪೊಡ್ಂದ್ ಕೇಂಡೊಣ್ವೆ--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೨:೫೬, ೧೪ ಮಾರ್ಚಿ ೨೦೧೯ (IST)
== Train-the-Trainer 2019 Application open ==
''Apologies for writing in English, please consider translating''<br>
Hello,<br>
It gives us great pleasure to inform that the Train-the-Trainer (TTT) 2019 programme organised by CIS-A2K is going to be held from 31 May, 1 & 2 June 2019.
'''What is TTT?'''<br>
Train the Trainer or TTT is a residential training program. The program attempts to groom leadership skills among the Indian Wikimedia community members. Earlier TTT has been conducted in 2013, 2015, 2016, 2017 and 2018.
'''Who should apply?'''<br>
* Any active Wikimedian contributing to any Indic language Wikimedia project (including English) is eligible to apply.
* An editor must have 600+ edits on Zero-namespace till 31 March 2019.
* Anyone who has the interest to conduct offline/real-life Wiki events.
* Note: anyone who has already participated in an earlier iteration of TTT, cannot apply.
Please '''[[:m:CIS-A2K/Events/Train the Trainer Program/2019|learn more]]''' about this program and apply to participate or encourage the deserving candidates from your community to do so. Regards. -- [[User:Tito (CIS-A2K)|Tito (CIS-A2K)]], sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೦:೩೭, ೨೬ ಎಪ್ರಿಲ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=17298203 -->
== Wikimedia Education SAARC conference application is now open ==
''Apologies for writing in English, please consider translating''<br/>
Greetings from CIS-A2K,<br/>
The Wikimedia Education SAARC conference will take place on 20-22 June 2019. Wikimedians from Indian, Sri Lanka, Bhutan, Nepal, Bangladesh and Afghanistan can apply for the scholarship. This event will take place at [https://goo.gl/maps/EkNfU7FTqAz5Hf977 Christ University], Bangalore.
'''Who should apply?'''<br>
*Any active contributor to a Wikimedia project, or Wikimedia volunteer in any other capacity, from the South Asian subcontinent is eligible to apply
* An editor must have 1000+ edits before 1 May 2019.
* Anyone who has the interest to conduct offline/real-life Wikimedia Education events.
*Activity within the Wikimedia movement will be the main criteria for evaluation. Participation in non-Wikimedia free knowledge, free software, collaborative or educational initiatives, working with institutions is a plus.
Please '''[[:m:Wikimedia_Education_SAARC_conference/Registration|know more]]''' about this program and apply to participate or encourage the deserving candidates from your community to do so. Regards.[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೨೪, ೧೧ ಮೇ ೨೦೧೯ (IST)
<!-- Message sent by User:Saileshpat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19091276 -->
== CIS-A2K: 3 Work positions open ==
Hello,<br>Greetings for CIS-A2K. We want to inform you that 3 new positions are open at this moment.
* Communication officer: (staff position) The person will work on CIS-A2K's blogs, reports, newsletters, social media activities, and over-all CIS-A2K general communication. The last date of application is 4 June 2019.
* Wikidata consultant: (consultant position), The person will work on CIS-A2K's Wikidata plan, and will support and strengthen Wikidata community in India. The last date of application is 31 May 2019
* Project Tiger co-ordinatorː (consultant position) The person will support Project tiger related communication, documentation and coordination, Chromebook disbursal, internet support etc. The last date of application is 7 June 2019.
'''For details about these opportunities please see [[:m:CIS-A2K/Team/Join|here]]'''. <small>-- [[User:Tito (CIS-A2K)|Tito (CIS-A2K)]], sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೫:೩೨, ೨೨ ಮೇ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯ ಕಾರ್ಯಕ್ರಮಕ್ಕೆ ಅರ್ಜಿ ಸಲ್ಲಿಸಲಾಗಿದೆ ==
ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯ ಸಂಪಾದನೋತ್ಸವ ಮತ್ತು ವಿಕಿಪೀಡಿಯ ಬಳಕೆಯ ಕುರಿತು ಇತರ ಕಾಲೇಜುಗಳಲ್ಲಿ ನಡೆಸಲು ಹಣಕಾಸಿನ ನೆರವಿಗಾಗಿ ಅರ್ಜಿಯನ್ನು ವಿಕಿಮೀಡಿಯ ಫೌಂಡೇಶನ್ ಗೆ ಸಲ್ಲಿಸಲಾಗಿದೆ. ಈ ಕಾರ್ಯಕ್ರಮವನ್ನು ಅಳ್ವಾಸ್ ವಿಕಿಪೀಡಿಯ ಅಸೋಸಿಯೇಷನ್ ಮೂಲಕ ನಡೆಸಲಾಗುವುದು.ನಾನು ಸಲ್ಲಿಸಿದ ಅರ್ಜಿಯನ್ನು ಬೆಂಬಲಿಸಬೇಕಾಗಿ ತಮ್ಮಲ್ಲಿ ಕೋರಿಕೆ ಲಿಂಕ್[https://meta.wikimedia.org/wiki/Grants:Project/Rapid/Lokesha_Kunchadka/Semister_Program_in_Alvas,_Kannada_and_Tulu_Wikipedia ಇಲ್ಲಿದೆ] .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೦:೩೩, ೨ ಜೂನ್ ೨೦೧೯ (IST)
== Wikidata Bridge: edit Wikidata’s data from Wikipedia infoboxes ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''Sorry for writing this message in English - feel free to help us translating it :)''
Hello all,
Many language versions of Wikipedia use the content of [[Wikidata]], the centralized knowledge base, to fill out the content of infoboxes. The data is stored in Wikidata and displayed, partially or completely, in the Wikipedia’s language, on the articles.
This feature is used by many template editors, but brought several issues that were raised by communities in various places: not being able to edit the data directly from Wikipedia was one of them.
This is the reason why the '''[[mw:Wikidata Bridge|Wikidata Bridge]]''' project started, with the goal of offering a way to Wikipedia editors to edit Wikidata’s data more easily. This will be achieved by an interface, connected to the infobox, that users can access directly from their local wiki.
The project is now at an early stage of development. A lot of [[mw:Wikidata_Bridge/Research|user research]] has been done, and will continue to be done through the different phases of the project. The next steps of [[mw:Wikidata_Bridge/Development|development]] will be achieved by the development team working at Wikimedia Deutschland, starting now until the end of 2019.
In order to make sure that we’re building a tool that is answering editors’ needs, we’re using agile methods in our development process. We don’t start with a fixed idea of the tool we want to deliver: we will build it together with the editors, based on feedback loops that we will regularly organize. The first version will not necessarily have all of the features you want, but it will keep evolving.
Here’s the planned timeline:
* From June to August, we will build the setup and technical groundwork.
* From September to November 2019, we will develop the first version of the feature and publish a test system so you can try it and give feedback.
* Later on, we will test the feature on a few projects, in collaboration with the communities.
** We will first focus on early adopters communities who already implemented a shortcut from their infoboxes to edit Wikidata (for example Russian, Catalan, Basque Wikipedias)
** but we also welcome also communities who [[mw:Wikidata_Bridge/Get_involved|volunteer to be part of the first test round]].
** Then we will reach some of the big Wikipedias (French, German, English) in order to see if the project scales and to address their potentially different needs.
** Even later, we can consider enabling the feature on all the other projects.
In any case, no deployment or big change will be enforced on the projects without talking to the communities first, and helping the template builders to prepare for the changes they will have to do on the infoboxes’ code.
If you want to get involved, there are several ways to help:
* Read and help translating [[mw:Wikidata_Bridge|the documentation pages]]
* Follow the [[mw:Wikidata_Bridge/Updates|updates]] and participate in [[mw:Topic:V1x2lxtu8rgi954a|the first feedback loop]]
* Talk about it with your local community
More ideas will be added [[mw:Wikidata_Bridge/Get_involved|on this page]] along the way
If you have any questions for the development team, feel free to ask them [[mw:Talk:Wikidata_Bridge|on the main talk page]]. You can also ask under this message, but if you expect an answer from me, please make sure to ping me.
Thanks for your attention, [[:d:User:Lea Lacroix (WMDE)|Lea Lacroix (WMDE)]] ೧೮:೩೩, ೨೪ ಜೂನ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Lea Lacroix (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Lea_Lacroix_(WMDE)/List_Wikipedias&oldid=19168539 -->
== Indic Wikimedia Campaigns/Contests Survey ==
Hello fellow Wikimedians,
Apologies for writing in English. Please help me in translating this message to your language.
I am delighted to share a survey that will help us in the building a comprehensive list of campaigns and contests organized by the Indic communities on various Wikimedia projects like Wikimedia Commons, Wikisource, Wikipedia, Wikidata etc. We also want to learn what's working in them and what are the areas that needs more support.
If you have organized or participated in any campaign or contest (such as Wiki Loves Monuments type Commons contest, Wikisource Proofreading Contest, Wikidata labelathons, 1lib1ref campaigns etc.), we would like to hear from you.
You can read the Privacy Policy for the Survey [https://foundation.wikimedia.org/wiki/Indic_Wikimedia_Campaigns_and_Contests_Survey_Privacy_Statement here]
Please find the link to the Survey at:
'''https://docs.google.com/forms/d/e/1FAIpQLSdzz8P6flgP7rcpkZYWIg70COCVvBaVA1VnWOqRcH4F6pTsjg/closedform'''
P.S. If you have been involved in multiple campaigns/contests, feel free to submit the form multiple times.
Looking forward to hearing and learning from you.
<small>-- [[User:SGill (WMF)|SGill (WMF)]] sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೧:೩೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:SGill (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:SGill_(WMF)/MassMessage_List&oldid=19169935 -->
== ಸಾಲೆಳೆಗ್ ಆಫ್ ಲೈನ್ ತುಳು ವಿಕಿಪೀಡಿಯ ಯೋಜನೆಗ್ ಗ್ರಾಂಟ್ ಬೇಡಿಕೆ ==
ತುಳು ವಿಕಿಪೀಡಿಯನು ಬುಳೆಪ್ಪಾಯೆರೆ ೨೦೧೬ ಜುಲೈಡ್ದ್ ೨೦೧೭ ಜೂನ್ ದಿಂಜಿದ ಸಮಯೊಡ್ ಒಂಜಿ ಯೋಜನೆ ಮಲ್ತ್ದ್ ಕೊರ್ದಿತ್ತೊ. ಅಯಿನ್ ನಿಕುಲು ತೂದಿಪ್ಪರ್. ಅವ್ವೇ ಆಲೋಚನೆನ್ ಇತ್ತೆ ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಬುಳೆಪ್ಪಾಯೆರೆಗಾದ ೨೦೧೯ಡ್ದ್ ೨೦೨೦ ಅಕೇರಿ ಮುಟ್ಟ, ಈ ಒಂಜಿ ವರ್ಸೊಡು CIS-A2K ಗ್ ಒಂಜಿ ಯೋಜನೆಯಾದ್ ತಯಾರ್ ಮಲ್ತ್ ಕೊರೊಂದುಲ್ಲೊ. [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]] ಈ ಪುಟೊಡು ಸುಮಾರ್ ೭೦೦ ಲೇಖನೊ ತಯಾರಿಗ್ ಪಟ್ಟಿನ್ ತಯಾರ್ ಮಲ್ತ್ ದೀಡ್ತೊ. ಇತ್ತೆ ಈ ಯೋಜನೆನ್ CIS-A2K ಬೆಂಗಳೂರುಗು ಗ್ರಾಂಟ್ ಯೋಜನೆಯಾದ್ ಕೊರೊಂದುಲ್ಲೊ. ಈ ಬಗೆಟ್ ನಿಕ್ಲೆನ ಒಪ್ಪಿಗೆ ಬೋಡು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೩:೦೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
=== ನಿಕ್ಲೆನ್ ಒಪ್ಪಿಗೆನ್ ಸೂಚಿಸಲೆ ===
ಬೋಡುಂದು ಇಂಚ <nowiki>{{tick}}</nowiki> ಗುರುತು ಮಲ್ತ್ದ್ ಒಪ್ಪಿಗೆ ಸೂಚಿಸಲೆ
*'''ಎನ್ನ ಒಪ್ಪಿಗೆ {{tick}} ಉಂಡು'''. ೨೦೧೦ಗ್ [[ಕರ್ನಾಟಕ ತುಳು ಸಾಹಿತ್ಯ ಅಕಾಡೆಮಿ]] ೬ನೆ ಕ್ಲಾಸ್ಗ್ ತುಳು ಮೂಜನೆ ಬಾಸೆಯಾದ್ ಓದುನ ತಯಾರ್ ಮಲ್ತ್ಂಡ್. ಅಯಿಡ್ದ್ ಬುಕ್ಕೊ ೧೦ನೇ ಕ್ಲಾಸ್ದ ಬೂಕು ಆಂಡ್. ೨೦೧೮-೨೦೧೯ಗ್ ತುಳು ಎಂ.ಎ. ಸುರುವಾಂಡ್. ಇತ್ತೆ ೨೦೧೯-೨೦೨೦ಡ್ದ್ ಪದವಿ ತರಗತಿಗ್ ತುಳು ರಡ್ಡನೇ ಬಾಸೆಯಾದ್ ಕಲ್ಪಾಯೆರೆ ತಯಾರಾವೊಂದುಂಡು. ಇಂಚ ಮಾಂತ ಬೂಕುಲು ತಯಾರಾನಗ ಓದುನ ಜೋಕ್ಲೆಗ್ ಬೂಕುಲು ಒಲ್ಪ ತಿಕುವೊ ಪನ್ಪುನ ಯೋಚನೆ ಬರ್ಪುಂಡು. ಅಯಿಕಾತ್ರೊ ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಲೇಕನೊ ತಯಾರ್ ಮಲ್ಪುನೆ,ತುಳುತ ಬೂಕುಲೆನ್ ವಿಕಿಸೋರ್ಸ್ಗ್ ಸೇರಾವುನೆ, ತುಳು ವಿಕ್ಷನರಿನ್ ಬುಲೆಪಾವುನೆ ಇಂಚ ಪೂರ ಮಲ್ಲ ಯೋಜನೆಡ್ ಈ '''ಆಫ್ ಲೈನ್ ವಿಕಿಪೀಡಿಯ ಯೋಜನೆ'''ನ್ ಬೇಗೊ ತಯಾರ್ ಮಲ್ತ್ದ್ ಜೊಕ್ಲೆಗ್ ಓದೆರೆ ತಿಕುನ ಲೆಕೊ ಮಲ್ಪುನ ಈ ಎಡ್ಡೆ ಉದ್ದೇಸೊಗ್ ಎನ್ನ ಸಕಾಯೊ ಬುಕ್ಕೊ ಒಪ್ಪಿಗೆ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೩:೨೬, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ. ಉಂದ್ ಒಂಜಿ ದಿಂಜ ಎಡ್ಡೆ ಯೋಜನೆ. ಆಯಿನಾತ್ ಬೇಕ ಆವೊಡ್.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೫:೨೦, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ. ಅಂದ್ ಉಂದೊಂಜಿ ಲಾಯಿಕ್ ತ ಯೋಜನೆ, ತುಲುತ್ತ ಬೊಲಿಚಿಲಿಗಾತ್ ಇಂಚಿತ್ತಿ ಯೋಜನೆ ಅವೊಡಾಯಿನವು ಅಗತ್ಯ ಅತುಂಡು. - [[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೧೬:೦೪, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೧, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಪೂರ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಉಂದು ಬಾರಿ ಎಡ್ಡೆ ಯೋಜನೆ, ದುಂಬೆ ಆವೊಡಾಯಿನವು. ಆಯಿನಾತ್ ಬೇಗ ಆವಾಡ್.--[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೧:೪೫, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಪೂರ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಉಂದು ಎಡ್ಡೆ ಯೋಜನೆ. ಆಯಿನಾತ್ ಬೇಗ ಆವಡ್--[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೮:೦೯, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} [[ಬಳಕೆದಾರೆ:BENET G AMANNA|BENET G AMANNA]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BENET G AMANNA|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೧, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಆಯಿನಾತ್ ಬೇಗ ಆವೊಡು.--[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೨೦:೧೭, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}}.ಒಪ್ಪಿತ.[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೯:೧೧, ೨೯ ಜೂನ್ ೨೦೧೯ (IST).
*{{tick}} [[ಬಳಕೆದಾರೆ:Ashay vb|Ashay vb]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ashay vb|ಪಾತೆರ್ಲೆ]]) ೨೦:೦೮, ೨೬ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
===Oppose===
[[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]] ಯೋಜನೆ ಸರು ಅತ್ ರಡ್ಡು ವರ್ಷಲಾ [https://meta.wikimedia.org/wiki/Grants:Project/Pavanaja/Tulu_offline_Wikipedia_to_schools reject] ಅಂಡ್, ಆ ಪೇಜ್ ಮಾಲ್ತ್ ಏತ್ ಲೇಖನೊ ಅಂಡ್?. ಎರ್ಲಾ ಬರೆಯರ ಉಮೆದ್ಡ್ ಬತ್ತುಜ್ಜಿ. ರಡ್ಡ್ ಸರ್ತಿ ಗ್ರ್ಯಾಂಟ್ ಗ್ ಅರ್ಜಿ ಪಾಡ್ತ್ rejected ಅತ್ಂಡ್ .ದಿನೊ ಸಂಪಾದನೆ ಮಾಲ್ಪುನಕುಲು ಎರ್ಲಾ ಇಜ್ಜಿ?. ಎಂ.ಎ ತುಳು ಪಠ್ಯಗ್ ಬೊಡಯಿನ ಪಟ್ಟಿ ನಾನಲ, ಪಟ್ಟಿ ರೆಡಿ ಅತ್ ಜ್ಜಿ ?. ಪದವಿ ಕಾಲೇಜ್ ಗ್ ಬೊಡಯಿನ ಲೇಕನೊತ ಪಟ್ಟಿ ಅವೊಡಾತೆ. Update ಮಾಲ್ಪುನಕುಲು ಎರ್ಲಾ ಇಜ್ಜಿ, ದಾನೆ?. ಅಯಿಕ್ಕ್ ದುಂಬು ಒಟ್ಟಾರೆ ಪೊಂಡಾ ಎಂಚ.?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೯:೦೩, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
:[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|ಲೋಕೇಶ್]] ಸುರು ಮಲ್ತ್ನ [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ಯೋಜನೆ]] ರಿಜೆಕ್ಟ್ ಆಯಿನೆಗ್ ಈರೆ ಉತ್ತರೊ ಕೊರೊಡು. [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ಈ]] ಯೋಜನೆಗಾದ್ ಸುಮಾರ್ ೭೨೦ ದಾತ್ ಲೇಕನೊ ಪಟ್ಟಿ ಮಲ್ತ್ನಾರ್ ಲೋಕೇಶ್. ಸಂಪೊಲೊಪುನಕುಲು ಏರ್ಲಾ ಇಜ್ಜಿ ಪನ್ಪುನೆಡ್ದ್ ಈರೆ ಲೇಕನೊ ಮಲ್ಪುಲೆ. ಈರೆ ಇರೋದಗ್ ಕಾರನೊ ಸರಿ ಇದ್ದಿ. ದೂರುನೆಡ್ ದಾನೆ ಪ್ರೇಜನೊ? ಲೇಕನೊ ಪಟ್ಟಿ ತಯಾರ್ ಮಲ್ತ್ನಕುಲುಲಾ ಲೇಕನ ಬರೆಪುನ ಉಮೇದ್ಡ್ ಇಪ್ಪೊಡು. ದಾಯೆ ರಿಜೆಕ್ಟ್ ಆಂಡ್ ಪನ್ಪುನವು ಮುಲ್ಪ ಅಗತ್ಯೊ ಇದ್ದಿ. ತುಳುತ ಅಬಿಮಾನಿಲು ಮೆಚ್ಚ್'ದ್ ತುಳುತ ಬೇಲೆ ಮಲ್ಪುವೆರ್. ತುಳು ಎಂ.ಎ. ಬುಕ್ಕೊ ಪದವಿದ ಬೇಲೆಗ್ ಬೋಡಾಪುನಾತ್ ಲೇಕನೊಲೆ ಪಟ್ಟಿ ನಾನ ಆವೊಡಾತೆ. ಅವು ಬೇತೆನೇ ಆವೊಡಾಯಿನವು. ತುಳು ಸಮುದಾಯೊಡು ಈತನೇಟ್ ದಾಲಾ ಮನಸ್ತಾಪೊ ಇದ್ದಿ. ಬೊಡಿತ್ತಿನಾತ್ ಬೇಲೆ ಮಲ್ಪೆರೆ ಉಂಡು. ಅಯಿನ್ ಮಲ್ಪೆರೆ ಬೆರಿಸಾಯೊ ಕೊರ್ಲೆ. ಅಂಚನೆ ತುಳು ಸಮುದಾಯೊಡು ತುಳುನಾಡ್ದ ಅಪ್ಪೆ ಬಾಸೆದೊಟ್ಟುಗು ಕನ್ನಡೊದಕುಲುಲಾ ಸೇರೊಂದು ಬೆನ್ಪುನವು ಎಂಕ್ಲೆಗ್ ಪೆರ್ಮೆನೇ ಆಪುಂಡು. ಪೊಕ್ಕಡೆ ಕಿರಿಕಿರಿ ದಾಯೆ--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೬, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
: The project Tulu offline Wikipedia to schools ([[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]]) was started by [[User:Lokesha kunchadka|Lokesha Kunchadka]] himself. He has supported and endorsed the [[:m:Grants:Project/Pavanaja/Tulu offline Wikipedia to schools|grant request to WMF]] twice. It is surprising to see the same person is now opposing the idea started by himself. He has not given any scientific or logical reason to oppose. I think he is suffering from short term memory loss. His opinion need not be given any weightage as he is contradicting himself. (''This comment is written in English so that non-Tulu speaking people can understand'').--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೫೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|ಲೋಕೇಶ್]] ಮಂಗಳೂರು ವಿಶ್ವವಿದ್ಯಾನಿಯೊಡು ತುಳು ಸಂಶೋಧನೆ ಮಲ್ಪುನಕ್ಲ್ ಮಸ್ತ್ ಜನ ಉಲ್ಲೆರ್. ಅಕುಲು ಪೂರ ವಿಕಿಪೀಡಿಯೊಡು ಬೇಲೆ ಮಲ್ಪೊಡು. ಅವು ಬುಡ್ದ್ ನಮನ್ ನಮನೇ ದೂರೊಂದು ಕಾಲ ಹರನ ಮಲ್ಪುನೆರ್ದ್ ದಾದಾ ಲಾಭ? ತುಳುಟು ಮಲ್ಪುನ ಬೇಲೆ ಮಸ್ರ್ ಉಂಡು. ಆ ಬೇಲೆನ್ ನಮ ಕುಲ್ಲುದ್ ಚರ್ಚೆ ಮಲ್ತ್ ದ್ ಬೇಲೆ ಬೆಂದ್ಂಡ ಅಯಿತ್ತ ಪೊರ್ಲೆ ಬೇತೆ. ಲೋಕೇಶ್ ತುಳು ಪಾಠಬೂಕುದ ಕೆಲಸೊದ ಸುರುತ ಕಾರ್ಯಕರ್ತೆ, ಆರ್ ತುಳುತ್ತ ಜವ್ವನೆರೆನ್ ಒಟ್ಟು ಸೇರಾದ್ ಬೇಲೆ ಮಲ್ಪಾವುನಾರ್ --[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೫:೪೩, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
::# [[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|ಬದಿಕಾನ]] ಸರ್, ಬೆತೆ ಉದ್ದೇಶ ದಿತ್ ಪಾತೆರುನ ಅತ್ತ್ ಸರ್. Straight ಪಂಡಿನ ಪಾತೆರ ತಡೆಯರ ಅಪುಜ್ಜಿ ಅತಾ ಸರ್. ಕಲೆಂಕ್ ಮಾಲ್ಪುಜ್ಜಿ ಇತ್ತಿನ ವಿಚಾರ ಪಂಡಿನ. ಸರ್. ಕೆಲವೆರ್ ಪಿರಾವುಡ್ತ್ ಪಾತೆರುವೆರ್ ನಮಕ್ ಅಂಚಿನ ಅಭ್ಯಾಸ ಇಜ್ಜಿ. ನೇರ ಪನ್ಪುನನೆ, ಏರಾಂಟಲಾ ಅವಾಡ್ ತೂಯಾರ ಇಜ್ಜಿ. ಮೊನೆಗ್ ಬೊಡಾಯಿನಲೆಕೊ ಪಾತೆರುಜ್ಜಿ,ಸರ್.
# [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ಪಾಪ ಇಂಬೆರ್ ಗ್ರ್ಯಾಂಟ್ ಪೇಜ್ ಸರಿಯಾತ್ ತೂವಾಡ್. ಒಂಜಿ ಸರ್ತಿ support and endorse, ಬುಕ್ಕೊಂಜಿ ಸರ್ತಿ support ಮಾತ್ರೊ ಮಾಲ್ತಿನ , endorse ಮಾತ್ತಿಜ್ಜಿ. ಸರಿಯಾತ್ ತೂಲೆ ಒರ.
# [[ಬಳಕೆದಾರೆ:Kishorekumarrai|ಕಿಶೋರ್ ]] ಸರ್, ನೇರ ಪಣಿಯರ ಬಲ್ಲಿ ಅತೆ.ತಾಂತ್ರಿಕ ಬೆಲೆಗ್ ಸಂಬಂಧ ಮೂಜಿ ಕಾರ್ಯಕ್ರಮೊಡ್ ಸುಮಾರ್ ಟೆಂಪ್ಲೇಟ್ ಅನುವಾದ ಅತ್ ಇಪ್ಪು ಅತ ಸರ್. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೭:೨೩, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
== Editing News #1—July 2019 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''[[m:VisualEditor/Newsletter/2019/July|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]''
<div style="float:right;width:270px;margin-left:1em;border-style:solid;border-width:1px;padding:1em;">
[[File:VisualEditor-logo.svg|200px|center]]
<big>'''Did you know?'''</big>
<div class="thumbcaption" style="font-size: 90%;">
Did you know that you can use the visual editor on a mobile device?
Every article has a pencil icon at the top. Tap on the pencil icon [[File:OOjs UI icon edit-ltr.svg|frameless|16x16px]] to start editing.
'''<big>Edit Cards</big>'''
[[File:EditCards-v.20.png|alt=Toolbar with menu opened|center|frameless|250px]]
This is what the new '''Edit Cards for editing links''' in the mobile visual editor look like. You can try the prototype here: '''[[mw:Topic:V394zwrigth8ii7c|📲 Try Edit Cards]].'''
</div></div>
Welcome back to the [[mw:Editing|Editing]] newsletter.
Since [[m:VisualEditor/Newsletter/2018/October|the last newsletter]], the team has released two new features for the [[mw:VisualEditor on mobile|mobile visual editor]] and has started developing three more. All of this work is part of the team's goal to [[m:Wikimedia Foundation Annual Plan/2018-2019/Audiences#Outcome 3: Mobile Contribution|make editing on mobile web simpler]].
Before talking about the team's recent releases, we have a question for you:
<strong>Are you willing to try a new way to add and change links?</strong>
If you are interested, we would value your input! You can try this new link tool in the mobile visual editor on a separate wiki.
<em>Follow these instructions and share your experience:</em>
<strong>[[mw:Topic:V394zwrigth8ii7c|📲 Try Edit Cards]].</strong>
=== Recent releases ===
The mobile visual editor is a simpler editing tool, for smartphones and tablets using the [[mw:Reading/Web/Mobile#About|mobile site]]. The Editing team recently launched two new features to improve the mobile visual editor:
# [[mw:VisualEditor on mobile/Section editing|Section editing]]
#* The purpose is to help contributors focus on their edits.
#* The team studied this with an A/B test. [[mw:VisualEditor on mobile/Section editing#16 June 2019|This test showed]] that contributors who could use section editing were '''1% more likely to publish''' the edits they started than people with only full-page editing.
# [[mw:VisualEditor on mobile#March 1, 2019|Loading overlay]]
#* The purpose is to smooth the transition between reading and editing.
Section editing and the new loading overlay are '''now available to everyone''' using the mobile visual editor.
=== New and active projects ===
This is a list of our most active projects. [[mw:Help:Watching pages|Watch]] these pages to learn about project updates and to share your input on new designs, prototypes and research findings.
*[[mw:VisualEditor on mobile/Edit cards|Edit cards]]: This is a clearer way to add and edit links, citations, images, templates, etc. in articles. You can try this feature now. <em>Go here to see how:</em> [[mw:Topic:V394zwrigth8ii7c|📲 <em>Try Edit Cards</em>]].
*[[mw:VisualEditor on mobile/Toolbar refresh|Mobile toolbar refresh]]: This project will learn if contributors are more successful when the editing tools are easier to recognize.
*[[mw:VisualEditor on mobile/VE mobile default|Mobile visual editor availability]]: This A/B test asks: ''Are newer contributors more successful if they use the mobile visual editor?'' We are collaborating with [[mw:VisualEditor on mobile/VE mobile default#26 June 2019 %E2%80%93 Participating wikis and test start date|20 Wikipedias]] to answer this question.
*[[mw:VisualEditor on mobile/Usability improvements|Usability improvements]]: This project will make the mobile visual editor easier to use. The goal is to let contributors stay focused on editing and to feel more confident in the editing tools.
=== Looking ahead ===
* '''Wikimania:''' Several members of the Editing Team will be attending [[wmania:|Wikimania]] in August 2019. They will lead a session about mobile editing in the [[wmania:2019:Community Growth/Visual editing on mobile: An accessible editor for all|Community Growth space]]. Talk to the team about how editing can be improved.
* '''Talk Pages:''' In the coming months, the Editing Team will begin [[mw:Talk pages consultation 2019|improving talk pages]] and communication on the wikis.
=== Learning more ===
The [[mw:VisualEditor on mobile|VisualEditor on mobile]] is a good place to learn more about the projects we are working on. The team wants to talk with you about anything related to editing. If you have something to say or ask, please leave a message at [[mw:Talk:VisualEditor on mobile|Talk:VisualEditor on mobile]].
[[user:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:user_talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:user_talk:Whatamidoing (WMF)|talk]])
</div> ೦೦:೦೨, ೨೪ ಜುಲಾಯಿ ೨೦೧೯ (IST)
<!-- Message sent by User:Trizek (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=19175117 -->
== ಉಲ್ಲೆಕೊ ==
ರಡ್ಡು ತಿಂಗೊಲ್ದ್ ಇಂಚಿಗ್ ಲೇಖನೊ ಮಾಲ್ಪುಗಲು ಒಂಜಿ ಅತ್ತಂದೆ ರಡ್ಡ್ ಉಲ್ಲೆಕೊ ಕೊರ್ಪೆರ್ ಅತೆ ಉಲ್ಲೇಖ ಯಾವೊ?. ಇತ್ತೆ ಎಡ್ಮಿನ್ ದಾದ ಮಾಲ್ತೊಂದು ಉಲ್ಲೆರ್ ?. ದಾಯೆ ತೂಪುಜ್ಜಿ? ಅಯಿಕ್ಕ್ ಬೊಡಾಯಿನ ಟೆಂಪ್ಲೇಟ್ ಇಜ್ಜಿ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೧೧, ೧ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
:ಏರ್ ಉಲ್ಲೇಕೊ ಕೊರ್ಪುಜ್ಜೆರುಂದ್ ತೂಪುನೆ ಅಡ್ಮಿನ್ ಬೇಲೆ ಅತ್ತ್. ವಾ ಟೆಂಪ್ಲೇಟ್ ಇಜ್ಜಿ? ಅಯನ್ ಒಲ್ತ್ ಇಂಪೋರ್ಟ್ ಮಲ್ಪೊಡು? ಅಯಿನ ಕೊಂಡಿ ಬೋಡು.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೦೭:೦೫, ೨ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
== '''Folk-a-thon''' ತುಳುನಾಡ್ದ ಮಾಜಿತ್ ಪೋಪುನ ನಲಿಕೆದ ಪಠ್ಯ ಪ್ರದರ್ಸನೊ ಬೊಕ್ಕ ಡಾಕ್ಯುಮೆಂಟೆಷನ್ ==
ತುಲುವೆರ್ ಒಂಜಿ ವರ್ಸೊದ ಬೇತೆ ಬೇತೆ ತಿಂಗೊಲುಡು ಬೇತೆ ಬೇತೆ ನಲಿಕೆಲು ನಡತೊಂತಿತ್ತ್ಂಡ್. ಇನಿ ಅವು ಪ್ರದರ್ಸನ ಆವಾಂದೆ ಮಾಜೊಂದು ಬರೊಂದುಂಡು. ಮಸ್ತ್ ನಲಿಕೆಲೆನ ಬಗೆಟ್ ಪಟ, ವಿಡಿಯೋ, ಅಡಿಯೋ ಮಾತ ತಿಕೊಂದು ಇಜ್ಜಿ. ಅಂಚಾಯಿನೆಡ್ಧ್ ಅಯಿನ್ Wikicommons ಒಂಜೆ ಕಡೆಟ್ಟ್ ತಿಕುನಂಚ ಮಾಲ್ಪೆರೆ ಬೋಡಾದ್ ನಲಿಕೆಲೆನ ಪಟ, ವೀಡಿಯೋ, ಅಡಿಯೋಲೆನ್ ಅಚ್ಚಿ ಪತ್ತಪುನ ಬೇಲೆಗ್ ನಿಕುಲೆನ ಮಾತ ಬಲ/ಸಕಾಯೊ ಬೋಡು. ನನಾದ ದಿನೊಕುಲೆಡ್ ತುಲುವ ಜೋಕುಲೆಗ್, ಸಂಶೋಧನೆಗ್ ಮಸ್ತ್ ವಿಸಯೊಲು ಬೋಡಾಪುನೆರ್ದ್ ನಲಿಕೆಲೆನ್ ಡಾಕ್ಯುಮೆಂಟೆಷನ್ ಮಲ್ತ್ ದ್ ದೀಡ್ಂಡ ಮಸ್ತ್ ಸಕಾಯೊ ಅವು. ಜಾನಪದ ನಲಿಕೆದ ಕರಜನೊಲ ಅಪುಂಡು. ಉಂದು ವಿಕಿಪೀಡಿಯ ವ್ಯವಸ್ಥೆಡ್ ತುಲು ಜಾನಪದ ನಲಿಕೆಲೆನ್ ಸೇರವುನ ಸುರುತ್ತ ಬೇಲೆ. [https://meta.wikimedia.org/wiki/CIS-A2K/Requests#Folk-a-thon:_A_Text-Performance-Documentation_and_Reconstruction_of_rare_Folk_Performing_Arts_of_Tulunadu ಮುಲ್ಪ] ನಿಕುಲೆನ ಒಪ್ಪು ಪಾಡ್ಲೆ ಸೊಲ್ಮೆಲು. ಮ - --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೧೧:೪೮, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಡ್ಡೆ ಬೇಲೆಗ್ ಎಂಕ್ಲೆನ ಬೆರಿ ಸಾಯೊ ಉಂಡು. ತುಲು ವಿಕಿತ ಮಾತೆಕ್ಲಾ ಇಂದೆತ ಪ್ರೇಜನೊ ಆವು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೪:೦೫, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--Document ಮಾಲ್ಪುಲೆ. ಈ ತಿಂಗೊಲು ಸೋಣದ ಜೋಗಿ ಕುಣಿತ ನಡಪ್ಪಂಡು.ಎಚ್ಚರ ದಿತ್ document ಮಾಲ್ಪುಲೆ ಒಟ್ಟಾರೆ ಮಾಲ್ಪುನ ಅತ್ತ್ ಕಲಾವಿದೆರೆಗ್ ಲಾ ಬೆಲೆ ಕೊರ್ತ್ ಬೆಲೆ ಮಾಲ್ಪುಲೆ, ಕಲಾವಿದೆರೆನ ಪಾತೆರ ಕೇಣ್ಲೆ.ಮಸ್ತ್ ವಿದ್ವಾಂಸೆರ್ ಮಾಲ್ತಿನ ತಪ್ಪು ಅಯರ ಬಲ್ಲಿ. .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೬, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಡ್ಡೆ ಬೇಲೆ. ಉಂಡು ಆವೊಡೆ. ಎನ್ನ ಸಾಯ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೦೬, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಂಕ್ಲೆನ ಬೆರಿ ಸಹಾಯೊ ಉಂಡು---[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೫:೨೪, ೧೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಬಾರಿ ಎಡ್ಡೆ ಆಲೋಚನೆ, ಉಂದು ತುಲುತ್ತ ಮಾತೆರ್ ಲಾ ಸೇರ್ ದ್ ಮಲ್ಪೊಡಾಯಿನ ಬೇಲೆ. ಉಂದು ಆವೊಡೇ. ಎನ್ನ ಎಡ್ಡೆಪ್ಪು ಬೊಕ್ಕ ಸಕಾಯೊ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೩೫, ೧೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
* -- ತುಳು ಸಂಸ್ಕ್ರುತಿದ ತಿಂಗೊಲುಡು ಬರ್ಪಿನ ನಲಿಕೆದ ಸಾಕ್ಷ್ಯ ಸಂಕಲನಲು ಬೋಡು. ಬಾರಿ ಎಡ್ಡೆ ಯೊಚನೆ ಆದುಂಡು, ಎನ್ನ ಒಪ್ಪಿಗೆ ಬೊಕ್ಕ ಸಕಾಯ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೮, ೨೦ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
{{clear}}
== Project Tiger 2.0 ==
''Sorry for writing this message in English - feel free to help us translating it''
<div style="align:center; width:90%%;float:left;font-size:1.2em;margin:0 .2em 0 0;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[File:PT2.0 PromoMotion.webm|right|320px]]
Hello,
We are glad to inform you that [[m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|'''Project Tiger 2.0/GLOW''']] is going to start very soon. You know about Project Tiger first iteration where we saw exciting and encouraging participation from different Indian Wikimedia communities. To know about Project Tiger 1.0 please [[m:Supporting Indian Language Wikipedias Program|'''see this page''']]
Like project Tiger 1.0, This iteration will have 2 components
* Infrastructure support - Supporting Wikimedians from India with internet support for 6 months and providing Chrome books.
* Article writing contest - A 3-month article writing contest will be conducted for Indian Wikimedians communities. Following community feedback, we noted some community members wanted the process of article list generation to be improved. In this iteration, there will be at least two lists of articles
:# Google-generated list,
:#Community suggested a list. Google generated list will be given to the community members before finalising the final list. On the other hand, the community may create a list by discussing among the community over Village pump, Mailing list and similar discussion channels.
Thanks for your attention,<br/>
[[User:Ananth (CIS-A2K)]]<br/>
Message sent by [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೨, ೨೦ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
</div>
</div>
<!-- Message sent by User:Tulsi Bhagat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19312574 -->
{{clear}}
== Project Tiger important 2.0 updates ==
<div style="align:center; width:44%;float:left;font-size:1.2em;height:22em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<div style="color:Red;font-size:1.5em;text-align:center;"> '''Infrastructure support'''</div>
[[File:Project Tiger Community Based Applications.png|280px|upright|right]]
Did you know that applications for Chromebooks and Internet stipends under [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|Project Tiger 2.0]] are open since 25th August 2019?<br/>
We have already received 35 applications as of now from 12 communities. If you are interested to apply, please visit the [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support| '''support page''']] and apply on or before 14 September 2019.
</div>
</div>
<div style="align:center; width:44%;float:left;font-size:1.2em;height:22em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<div style="color:Red;font-size:1.5em;text-align:center;"> '''Article writing contest'''</div>
[[File:Project Tiger Media post Black.png|280px|upright|right]]
As part of the article writing contest of Project Tiger 2.0, we request each community to create their own list by discussing on the village pump and put it on respective [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest#Topics|'''topic list''']].
We also request you to create a pan India article list which needs to be part of writing contest by voting under each topic [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Topics/Proposal for additional items with pan-national interests|'''here''']]
</div>
</div>
{{clear}}
For any query, feel free to contact us on the [[:m:Talk:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|'''talk page''']] 😊<br/>
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೦, ೨೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19312574 -->
== Wikimedia movement strategy recommendations India salon ==
''Please translate this message to your language if possible.''
[[File:Talk-icon-Tamil-yesNO.svg|right|120px]]
Greetings,<br/>
You know Strategy Working Groups have published draft recommendations at the beginning of August. On 14-15 September we are organising a strategy salon/conference at Bangalore/Delhi (exact venue to be decided) It'll be a 2 days' residential conference and the event aims to provide a discussion platform for experienced Wikimedians in India to learn, discuss and comment about the draft recommendations. Feedback and discussions will be documented.
If you are a Wikipedian from India, and want to discuss the draft recommendations, or learn more about them, you may apply to participate in the event.
Please have a look at the '''[[:m:CIS-A2K/Events/Wikimedia movement strategy recommendations India salon|event page for more details]]''' The last date of application is 7 September 2019.
It would be great if you share this information who needs this. For questions, please write on the event talk page, or email me at tito+indiasalon@cis-india.org
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] sent through [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೪:೪೫, ೨ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs/1&oldid=19346824 -->
== Project Tiger Article writing contest Update ==
{{clear}}
''Sorry for writing this message in English - feel free to help us translating it''
<div style="align:center; width:90%;float:left;font-size:1.2em;height:20em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#F9ED94;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hello all,
We would like to give some of the important updates about Project Tiger 2.0.
[[File:Emoji u1f42f.svg|frameless|right|100px]]
* It was informed about the community-generated list for the Article writing contest. The deadline for this has been extended till '''30 September 2019''' since few communities are working on it.
* We are expecting the Project Tiger 2.0 article writing contest to begin from 10 October 2019 and also there is a need for creating the [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest|writing contest page]] in the local Wiki's if you are interested to help please contact [[User talk:Nitesh (CIS-A2K)]] & [[User talk:SuswethaK(CIS-A2K)]].
Looking forward to exciting participation this year! Please let us know if you have any doubts.
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]]<br/>sent by [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೫:೧೦, ೨೭ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
</div>
</div>
{{clear}}
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19346827 -->
== GLOW edit-a-thon starts on 10 October 2019 ==
<div style="border:8px black ridge; background:#f2df94;">
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
Hope this message finds you well. Here are some important updates about [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|Project Tiger 2.0/GLOW edit-a-thon]].
* The participating communities are requested to create an '''[[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest|event page on their Wikipedia]]''' (which has been already updated with template link in the last post). Please prepare this local event page before 10 October (i.e. Edit-a-thon starting date)
* All articles will be submitted here under Project Tiger 2.0. Please copy-paste the fountain tool link in the section of submitted articles. Please see the links '''[[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest#Statistics|here on this page]]'''.
Regards. -- [[User:Nitesh (CIS-A2K)]] and [[User:SuswethaK(CIS-A2K)]] (on benhalf of Project Tiger team) <small>using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೦೧:೧೧, ೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)</small>
</div>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Project Tiger 2.0: Article contest jury information ==
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]We want to inform you that Project Tiger 2.0 is going to begin on 10 October. It's crucial to select jury for the writing contest as soon as possible. Jury members will assess the articles.
Please start discussing on your respective village pump and '''[[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|add your name here]]''' as a jury for writing contest if you are interested. Thank you. --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೬, ೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Proposal of WikiConference India 2020 in Hyderabad ==
Dear all, I am posting this message on behalf of Wikimedians from Andhra Pradesh and Telangana, who, as some of us might already know, have come forward to host WikiConference India 2020 in Hyderabad. A national conference will help us to connect from people from other communities, share knowledge, learn new stuff, and come closer to the Wiki-family. The last conference happened in 2016, and there was nothing for the past three years. Lack of such activities will make individual communities be disconnected from other communities, and this hampers the progress of Indian community as a whole. It is high time that we have the next conference as soon as possible. Since no one came forward in the last three years, and Hyderabad well-connected is all ways, I think this is a good opportunity to be supportive of.
But they would like to gather support from all the communities as a whole before proceeding, rather than just based on individual support, to be inclusive and add more credibility. So it would be good to have consensus among us to support the conference, and endorse it.
There is a Meta-Wiki page which clearly outlines the proposal and their plan, please have a look it at [[m:WikiConference India 2020: Initial conversations|here]]. Endorsements from other communities can be seen at [[WikiConference_India_2020:_Initial_conversations#Community_endorsements|this section]]. Please go through the page, and give your support in the section below, so that we can also be a part of this initiative. It would be great if our community endorses this at the earliest possible, so that the organisers can proceed to further steps without much delay, at the latest by 18 October 2019. This is to be in-line grant funding guidelines by December, which also require a community engagement survey to be done before developing the grant proposal in November. [[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೪:೩೦, ೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
===Support===
===Discussion===
== ಅಗತ್ಯವಾತ್ ಬೊಡಾಯಿನ ಟೆಂಟ್ಲೆಟ್(template import) ==
#[https://en.wikipedia.org/wiki/Template:Cite_AV_media Cite AV media]
#[https://en.wikipedia.org/wiki/Template:Cite_AV_media_notes Cite AV media notes]
#[https://en.wikipedia.org/wiki/Template:Cite_book Cite book]
#[https://en.wikipedia.org/wiki/Template:Cite_conference Cite conference]
#[https://en.wikipedia.org/wiki/Template:Cite_encyclopedia Cite encyclopedia]
#[https://en.wikipedia.org/wiki/Template:Cite_episode Cite episode]
#[https://en.wikipedia.org/wiki/Template:Cite_interview Cite interview]
#[https://en.wikipedia.org/wiki/Template:Cite_journal Cite journal]
#[https://en.wikipedia.org/wiki/Template:Cite_magazine Cite magazine]
#[https://en.wikipedia.org/wiki/Template:Cite_map Cite map]
#[https://en.wikipedia.org/wiki/Template:Cite_news Cite news]
#[https://en.wikipedia.org/wiki/Template:Cite_newsgroup Cite newsgroup]
#[https://en.wikipedia.org/wiki/Template:Cite_press_release Cite press release]
#[https://en.wikipedia.org/wiki/Template:Cite_report Cite report]
#[https://en.wikipedia.org/wiki/Template:Cite_serial Cite serial]
#[https://en.wikipedia.org/wiki/Template:Cite_speech Cite speech]
#[https://en.wikipedia.org/wiki/Template:Cite_techreport Cite techreport]
#[https://en.wikipedia.org/wiki/Template:Cite_thesis Cite thesis]
ಈತ್ ಟೆಂಟ್ಲೆಟ್ ತುಳು ವಿಕಿಪೀಡಿಯತ ಗುಣಮಟ್ಟ ಸುಧಾರಣೆಗ್ ಬೊಡಾಪುಂಡು, ಬೇಗ ಮಾಲ್ತ್ ಕೊರ್ಲೆ(plz template import) .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೫೦, ೨೯ ಜೂನ್ ೨೦೧೯ (IST)
:From where to import? Link to original template please.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೫:೧೫, ೧೦ ಜುಲಾಯಿ ೨೦೧೯ (IST)
:: [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ಇತ್ತೆ ಲಿಂಕ್ ಪಾಡ್ತೆ ಪೂರೆಗ್ಲಾ ಅತ್ ಟೆಂಪ್ಲೇಟ್ ಬೊಡು--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೪೩, ೨೫ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::ಈ ಟೆಂಪ್ಲೇಟುಲು ಕನ್ನಡೊಟು ಉಂಡಾ? ಇತ್ತ್ಂಡ ಅಲ್ತ್ ಇಂಪೋರ್ಟ್ ಮಲ್ಪುನೆ ಎಡ್ಡೆ. ಅಪಗ ಅನುವಾದ ಬೇಕ ಆಪುಂಡ್--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೦೭:೦೫, ೨೬ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::: ಮನಸ್ಸಿಜ್ಜಿ ಇನ್ ಪೊರ್ಟ್ ಮಾಲ್ಪಿಯರ ಪನ್ಲೆ?. ಪೊಕ್ಕಡೆ ಅಲ್ಪ ಉಂಡಾ, ಮುಲ್ಪಾ ಉಂಡಾಂದ್ ನರ್ಜಗುಂನ ಬೊಡ್ಚಿ. ಟೆಂಪ್ಲೇಟ್ ಟ್ರೈನಿಂಗ್ ಬತ್ತಿನನಕಲ್ಲು ಉಲ್ಲೆರ್ ಅನುವಾದ ಮಾಲ್ಪಿಯರ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೪೧, ೨೬ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::: [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]]Template import ಮಾಲ್ಪುಜ್ಜಾಯರಾ?..
:::::ವಿಸಯೊ ಗೊತ್ತಿಜ್ಜಾಂತೆ ಪಾತೆರಿಯರೆ ಬಲ್ಲಿ. ಇಂಗ್ಲಿಷ್ ವಿಕಿಪೀಡಿಯಡ್ದ್ ಟೆಂಪ್ಲೇಟು ಆತಿಜ್ಜಿ. ದಿಂಜ ಸರ್ತಿ ಟ್ರೈ ಮಲ್ತೆ. ಇನಿ ಕನ್ನಡಡ್ದ್ ಮಲ್ತೆ. ಬತ್ತುಂಡು. ಮಾತ ಟೆಂಪ್ಲೇಟುಲೆನ್ ತುಳುಕ್ ಅನುವಾದ ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೩, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:::::ವಿಕಿಪೀಡಿಯದ ಬೇಲೆ ಸ್ವತಂತ್ರವಾದ್ ಮಲ್ಪುನವು. ಉಂದೆಕ್ ಏರ್ ಲಾ ಒತ್ತಾಯ ಅಂತ್ಂಡ ಅಧಿಕಾರ ಚಲಾವಣೆ ಮಲ್ಪೆರೆ ಆವಂದ್. ತೀರ್ಂಡ ಬರವುನು ಮಲ್ಲೆ ಮಲ್ಪನ ಬೇಲೆ ಮಲ್ಪುಲೆ. ಅಂಚನೆ ಆಡ್ಮಿನ್ ನ ಬೇಲೆ ಪುರುಸೋತ್ತು ಉಪ್ಪುನಗ ಬೇಲೆ ಮಲ್ಪುನೆ ಅತ್ತಂದೆ ಅಯಿನೇ ತೂವೊಂದು ಉಪ್ಪುನವು ಅತ್ತ್. ಒಂತೆ ಗೌರವೊಡು ಪಾತೆರುನವು ಎಡ್ಡೆ.[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೦೯, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::::::[[ಬಳಕೆದಾರೆ:Kishorekumarrai|ಕಿಶೋರ್ ಸರ್]] ಇದನ್ನು ಗಮನಿಸಿ[[:en:Wikipedia:Administrators' reading list]]. ಎಡ್ಮಿನ್ ವಿಷಯ ಸಂಪೂರ್ಣ ಮಾಹಿತಿ ಇದರಲ್ಲಿ ಇದೆ ಪೂರ್ತಿ ಓದಿ. ಎಡ್ಮಿನ್ ಜೂನ್ ಬಳಿಕ ಯಾವುದೆ ಎಡಿಡ್ ನಿನ್ನೆಯವರೆಗೆ ಬೇರೆ ಯಾವುದೆ wiki project ನಲ್ಲಿ ಮಾಡಿಲ್ಲವೆ?. ಎಡ್ಮಿನ್ ಕೆಲಸ ಏನಿದೆ ಅದನ್ನು ಅತ ಮಾಡಬೇಕು ಹೊರತು, ಎರಡು ಬಗೆಯುವುದಲ್ಲ. ಬರಿ ಉದ್ದದ ಲೇಖನಕ್ಕೆ ಉಲ್ಲೇಖ ಎಲ್ಲಿಂದ ಹಾಕುವಿರಿ?. ಕಳೆದ ಆರು ತಿಂಗಳಿಂದ ಎಷ್ಟು ಲೇಖನ ನಕ್ಕೆ ಎಷ್ಟು reference ಹಾಕುತ್ತಿದ್ದಿರಿ ಸರ್ ಹೇಳಿ ನೊಡೊಣಷ. Reference ಹಾಕೊದಕ್ಕೆ ಅನುಕೂಲ ಅಗುವ ದೃಷ್ಟಿಯಿಂದ ಕೇಳಿದರೆ ತಪ್ಪೆ?. ಇಷ್ಟು ಸಮಯ ಎಡ್ಮಿನ್ ನಿದ್ರೆಯಲ್ಲಿ ಇದ್ದರಾ??.ಎಷ್ಟು ಟೆಂಪ್ಲೇಟ್ ಅಮದು ಮಾಡಿದರು ಪಟ್ಟಿ ನೀಡಲಿ?. ಇನ್ಯಾರದೊ ಮಾತು ಕೇಳಿ ಮಾತಾಡುವ ಬದಲು ಸ್ವಂತಿಕೆ ಇದ್ದರೆ ಒಳ್ಳೆಯದು ಸರ್ (ನಿಮ್ಮಂತ ದೊಡ್ಡವರಿಗೆ ಹೇಳಬಾರದು ಅದರೂ ,ಚಿಕ್ಕವನಾದರೂ ಈ ಮಾತು ಹೇಳಬೇಕೆನಿಸಿತ್ತು ಅದಿಕ್ಕೆ ಹೇಳಿದೆ) ಮೇಲೆನಮ ಹಾಕಿದ ವಿಷಯವನ್ನು ದಾರಿ ತಪ್ಪಿಸ ಬೇಡಿ--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೮, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::ತುಳುಟೊಂಜಿ ಗಾದೆ ಉಂಡು, `ಬೆಂಜನೊಡು ಕಲ್ಲ್' ಪಂಡ್ದ್. ಅಂಚ ಉಂಡು ಕೆಲವೆರೆ ಪರಿಸ್ಥಿತಿ. ಯಾನಾದ್ ಬೇಲೆ ಮಲ್ಪುಜಿ, ಬೇತೆಕುಲು ಬೇಲೆ ಮಲ್ತ್ಂಡ ಅಯಿಟ್ಟ್ ತಪ್ಪು ನಾಡುನೆ. ತೀರ್ಂಡ ಬೇಲೆ ಮಲ್ಪೊಡು ಇಜ್ಜಾ ಬಾಯಿ ಮುಚ್ಚಿದ್ ತನ್ನ ಬೇಲೆ ಮಲ್ತೊಂದು ಪೋವೊಡು. ಅವು ಬುಡ್ದ್ ಅಯೆ ಅಂಚ ಮಲ್ತೆ, ಇಂಬಿಯೆ ಇಂಚ ಮಲ್ತೆ ಪಂಡೊಂದು ತಿರುಗುನೆ ದಾಯೆ. ಅಕ್ಲೆಗ್ ಬೋಡಾಪಿ ಲೆಕೊ ಅಕುಲು ಮಲ್ತೊಂದು ಉಪ್ಪುವೆರ್. ಏರೆಗ್ಲಾ ಬತ್ತಿ ಸೂತಕ ದಾನೆ. ಮಾತೆರ್ ಲಾ ಒಟ್ಟು ಸೇರ್ ದ್ ಬೇಲೆ ಬೆನ್ಕ. ಉಂದೆಟ್ಟ್ ಏರ್ ಲಾ ಪನವುಗಾದ್ ಬೆನ್ಪುನಕ್ ಲತ್ತ್. ತನ್ಕುಲೆ ಮನಸ್ದ ಕುಸಿಕಾದ್ ಬೆನ್ಪುನೆ ಪನ್ಪುನವು ನೆನೆಪುಡು ಇತ್ತ್ಂಡ ಎಡ್ಡೆ. [[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೨೪, ೩೦ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::ಎಡ್ಮಿನ್ ಸೈತೆರಾ.... ?. ದಾಯೆ import ಮಾಲ್ಪುಜ್ಜಿ ಪಣಾಡ್, reason ದಾದಂದ್ ಗೊತ್ತಾವಾಡ್. ಬೇತಾಯೆನ್ ಚು ಬುಡ್ಪುನಿ ಅತ್ತ್. ಇಜ್ಜಿಯಾಂಟ adimnship ನ್ deactivate ಮಾಲ್ಪಾಡ್?. ಕುಂಬಳ ಕಾಯಿ ಕಳ್ಳ ಎಂದಾಗ ಏಕೆ ಹೆಗಲು ಮುಟ್ಟಿ ನೋಡುತ್ತಿದ್ದೀರಿ ಸರ್?.. ನಮಕ್ ಬೆಲೆ ಅವೊಡ್. ಇಜ್ಜಿಯಾಂಟ reference ಇಪ್ಪಾಂತೆ ಲೇಖನ ಬರು.. ಅಪಗ ದಾದ ಮಾಲ್ಪರ್ ಪನ್ಲೆ. ಒಂಜಿ ಪಾಲಿಸಿ ಇತ್ನೆ ಮುಟ್ಟ ತುಳುಕ್ಕು ಮಾಲ್ತಿಜ್ಜಿ ದಾಯೆ. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೦೦, ೩೦ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::@[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] This is a case of violation of Wikipedia's friendly space policy. I am warning you not to use this kind of foul language. One more such instance, you will be banned from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೩, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
: ಪೊಕ್ಕಡೆ ಪಾತೆರುನೆಡ್ದ್ ಈರೆ ಸುರು ಮಲ್ಪುಲೆ. ಏರೆಗ್ಲ ಗುತ್ತಿಗೆ ಕೊರ್ತ್'ರ್.[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೬:೧೫, ೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:::ಬದಿಕಾನ ಸರ್, ಕಿಶೋರ್ ಸರ್ ನಡುವಲ್ಲಿ ಬಂದು ಬಾಯಿಹಾಕಿದ್ದು. ನಾನು ಕೇಳುತ್ತಿರುವುದು ಟೆಂಪ್ಲೇಟ್ ಅಮದು ಮಾಡಿ ಕೊಡಿ ಎಂದು, ಅಮದು ಮಾಡುವ ಹಕ್ಕು ಇರುವುದು ಎಡ್ಮಿನ್ ಒಬ್ಬರಿಗೆ, ಬೇರೆ ಯಾರಿಗೂ ಇಲ್ಲ. ನಮಿಗೆ ಆದರೆ ಕೇಳುತ್ತಿದೇನಾ?. ನಮ್ಮ ತುಳು ವಿಕಿಪೀಡಿಯದ ಗುಣಮಟ್ಟ ಸುಧಾರಣೆ ಮಾಡಲು ಅನುಕೂಲ ಆಗುತ್ತದೆ. ಸಹಕಾರ ನೀಡದಿದ್ದರೆ ಮುಂದೇನು ಮಾಡಬೇಕು ಅದನ್ನೆ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಸರ್. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೦:೫೪, ೨ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== template ಬೊಡು ==
*[https://en.wikipedia.org/wiki/Template:Copy_edit Copy edit]
* [https://en.wikipedia.org/wiki/Template:Refexample Ref improve]
* [https://en.wikipedia.org/wiki/Template:Wikify Wikify]
* [https://en.wikipedia.org/wiki/Wikipedia:Template_messages/Merging Merge]
* [https://en.wikipedia.org/wiki/Template:Advert Advert]
* [https://en.wikipedia.org/wiki/Template:Unreferenced Reference]
* [https://en.wikipedia.org/wiki/Template:Copy_to_Wikisource Copy to Wikisource]
* [https://en.wikipedia.org/wiki/Template:Underlinked Underlinked]
* [https://en.wikipedia.org/wiki/Template:Copy_to_Wiktionary Copy to Wiktionary]
* [https://en.wikipedia.org/wiki/Template:Merging_from Merging from]
ಇತ್ template ಅಗತ್ಯ ಉಂಡು. ಇತ್ತೆ.import ಮಾಲ್ಪುಲೆ link ಪಾಡ್ತೆ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೫:೪೦, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:ಎಡ್ಮಿನ್ ಯಾಕೆ ಟೆಂಪ್ಲೇಟ್ import ಮಾಡುತ್ತಿಲ್ಲ.?. ಅದಕ್ಕೆ ಸೂಕ್ತ ಕಾರಣ ಕೊಡಿ? ಚಿಕ್ಕ ಲೇಖನವನ್ನು ಕೆಲವರು ಮತ್ತೆ ಮುಂದುವರಿಸಿದ್ದಾರೆ ಅದಕ್ಕೆ ಎಡ್ಮಿನ್ ಸಾತ್ ಕೊಟ್ಟಿದ್ದಾರೆ ಎಂದು ಬಾವಿಸಬಹುದು ಅಲ್ವೆ? ವಿಕಿಪೀಡಿಯ ನಿಯಮವನ್ನು ಪಾಲಿಸದೆ ಲೇಖನ ಬರೆಯುವವರಿಗೆ ಎಡ್ಮಿನ್ ಬೆಂಬಲ ಕೊಟ್ಟಿದ್ದಾರೆ ಎನ್ನುವುದು ಸ್ಪಷ್ಟ.ಅದಕ್ಕಾಗಿ ಎಡ್ಮಿನ್ ಯಾವುದೆ ಟೆಂಪ್ಲೇಟ್ ತರದೆ ಇರುವುದು ಎನ್ನಬಹುದು. ವಿಕಿಪೀಡಿಯ ಮಾರ್ಗದರ್ಶಿ ಸೂತ್ರವನ್ನು ಮುರಿದು ಲೇಖನ ಬರೆಯುವಂತೆ ಎಡ್ಮಿನ್ ಹೇಳಿರಬಹುದು ಹಾಗೆಂದು ಗ್ರಹಿಸಬಹುದು?.!. ಎಡ್ಮಿನ್ ನಿಯಮವನ್ನು ಮುರಿದುದು ಸ್ಪಷ್ಟವಾಗಿ ಗೊಚರಿಸುತ್ತದೆ. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೪, ೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::ಇಂಗ್ಲಿಷ್ ವಿಕಿಪೀಡಿಯಡ್ದ್ ಟೆಂಪ್ಲೇಟು ಆತಿಜ್ಜಿ. ದಿಂಜ ಸರ್ತಿ ಟ್ರೈ ಮಲ್ತೆ. ಇನಿ ಕನ್ನಡಡ್ದ್ ಮಲ್ತೆ. ಬತ್ತುಂಡು. ಮಾತ ಟೆಂಪ್ಲೇಟುಲೆನ್ ತುಳುಕ್ ಅನುವಾದ ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೪, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== ಸರಿಪಡಿಸಿ ==
*[[ವಿಕಿಪೀಡಿಯ:ಸಮುದಾಯೊ ಪುಟೊ]] , [[ವಿಕಿಪೀಡಿಯ: ಚಾವಡಿ]]ಗೆ ಸಂಪರ್ಕ ಆಗುವುದಿಲ್ಲ.
*Under contraction ಟೆಂಪ್ಲೇಟ್ ನಲ್ಲಿ ತಪ್ಪಿದೆ ಸರಿ ಮಾಡಿ
* ವರ್ಗೊ:Pages with script errors ಇದನ್ನು ಯಾರು ಪಡಿಸೊದು???. ಎಡ್ಮಿನ್ ಏನು ಮಾಡುತ್ತಿದ್ದಾರೆ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೨೯, ೪ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::@[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] - You are once again violating Wikipedia's friendly space policy. This is final warning. If you once again personally attack any editor, you will be banned from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೫, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::@[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]]ರೆ, ಕಿಶೋರ್ ಕುಮಾರ್ ರೈ ಯವರು [[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ನನ್ನ ಸದಸ್ಯ]] ಪುಟದಲ್ಲಿ ಮಾಡಿದ್ದು ಏನು?. ಅದನ್ನು ಯಾಕೆ ಪ್ರಸ್ತಾಪಿಸಿಲ್ಲ?. '''ಒಂದು ಕಣ್ಣಿಗೆ ಬೆಣ್ಣೆ ಒಂದು ಕಣ್ಣಿಗೆ ಸುಣ್ಣ''' ಯಾಕೆ?.ತಪ್ಪು ಮಾಡಿದ್ದನ್ನು ಹೇಳಿದರೆ ತಪ್ಪೆ?. ನ್ಯಾಯವೆಂದಾದರೆ ಎಲ್ಲಾರಿಗೂ ಸಮಾನವಾಗಿರಲಿ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೬:೪೪, ೧೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== Project Tiger Article writing contest Jury Update ==
Hello all,
[[File:Emoji u1f42f.svg|frameless|right|100px]]
There are some issues that need to be addressed regarding the Juries of the Project Tiger 2.0 article writing contest. Some of the User has [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|shown interest]] to be a jury and evaluate the articles created as the part of the writing contest. But they don't meet the [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|eligibility criteria]]. Please discuss this aspect with the community, if the community feel that they have the potential to be a jury then we can go ahead. If not please make a decision on who can be the jury members from your community within two days. The community members can change the juries members in the later stage of the writing contest if the work done is not satisfactory or the jury member is inactive with the proper discussion over the village pump.
Regards, <br>
Project Tiger team at [[:m:CIS-A2K|CIS-A2K]] <br>
Sent through--[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೬:೨೧, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== Newbie Biting ==
We are all aware of Newbie biting. One editor by User:Lokesha kunchadka who is indulging in Newbie biting in Kannada and Tulu Wikipedias from almost last 2-3 months. He was issued a warning by the admin in Kannada Wikipedia, link is [https://kn.wikipedia.org/wiki/%E0%B2%B8%E0%B2%A6%E0%B2%B8%E0%B3%8D%E0%B2%AF%E0%B2%B0_%E0%B2%9A%E0%B2%B0%E0%B3%8D%E0%B2%9A%E0%B3%86%E0%B2%AA%E0%B3%81%E0%B2%9F:Lokesha_kunchadka#Newbie_biting here].
I have been conducting Diversity Editathons from last 3 months. One of the major aims of these editathons is to bring more women editors. Before the new editor completes the article this person jumps in and adds templates to imply the article is not of good quality. The new editors, especially the women editors, are scared to continue editing because of this newbie biting. Apart from this I had written an article on 13th October 2019 with the template Under constriction for which he commented saying there is no such topic. I was planning to complete the article with reference to the title today.
I would like to bring to the notice of the community and to hear suggestions from experienced people on how do deal with this kind of situation.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೭, ೧೪ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:Message copied from Kannada Wikipedia:
{{Quote|''ಅಕ್ಟೋಬರ್ ೧೨ ಮತ್ತು ೧೩ ರಂದು ಉಡುಪಿಯ ಮಹಿಳಾ ಕಾಲೇಜಿನಲ್ಲಿ ನೆಡೆದ ವೈವಿಧ್ಯತೆಯ ಸಂಪಾದನೋತ್ಸವಗಳು ೨೦೧೯ ರಲ್ಲಿ ನಮ್ಮ ಕಾಲೇಜಿನ ೧೯ ವಿದ್ಯಾರ್ಥಿನಿಯರು ಭಾಗವಹಿಸಿದ್ದರು. ಮಹಿಳಾ ವಿಜ್ಞಾನಿಗಳ ಬಗ್ಗೆ ಲೇಖನಗಳನ್ನು ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯಕ್ಕೆ ಸೇರಿಸಲಾಗಿತ್ತು. ಲೇಖನಕ್ಕೆ ಎರಡು ಉಲ್ಲೇಖಗಳು ಇರಲೇ ಬೇಕು, ಎಲ್ಲಾ ಲೇಖನಗಳಿಗೂ ಎರಡು ಉಲ್ಲೇಖಗಳನ್ನು ಸೇರಿಸಲಾಗಿತ್ತು. ಆದರೆ ಹೆಚ್ಚಿನ ಉಲ್ಲೇಖಗಳ ಅಗತ್ಯವಿದೆ ಎಂದು Lokesha kunchadka ರವರು ಟೆಂಪ್ಲೇಟ್ ಸೇರಿಸಿದ್ದಾರೆ. ಲೇಖನದ ಗುಣಮಟ್ಟದ ಮೇಲೆ ನಮಗೂ ಅರಿವಿದೆ. ಹೊಸಬರಿಗೆ ಹೆಚ್ಚಿನ ನಿಯಮವನ್ನು ತಿಳಿಸಿದರೆ ಅವರು ವಿಕಿಪೀಡಿಯಕ್ಕೆ ಬರೆಯಲು ಬರುವುದಿಲ್ಲ. ಈ ರೀತಿ ಮಾಡಿದರೆ ಹೊಸಬರು ನಿರುತ್ಸಾಹಗೊಳ್ಳುತ್ತಾರೆ. ನನ್ನ ಸ್ನೇಹಿತೆಯರು ಈಗ ಬರೆಯಲು ಹಿಂಜರಿಯುತ್ತಿದ್ದಾರೆ. ಕಾರಣ ಕೇಳಿದರೆ ನಾವು ಹಾಕಿದ ಲೇಖನದ ಉಲ್ಲೇಖಗಳು ಸರಿ ಇಲ್ಲ ಎಂದು ಬರುತ್ತಿದೆ ಮತ್ತು ಲೇಖನ ಸೇರಿಸಿದ ನಂತರ ಅದರಲ್ಲಿ ಉಲ್ಲೇಖದ ಅಗತ್ಯವಿದೆ ಎಂದು ಬರುತ್ತಿದೆ ಹಾಗಾಗಿ ನಾವು ಬರೆಯುವುದಿಲ್ಲ ಎಂದು ಹೇಳುತ್ತಿದ್ದಾರೆ. ನಾನು ಆ ಲೇಖನಗಳಿಗೆ ಅಗತ್ಯವಿರುವ ಉಲ್ಲೇಖಗಳನ್ನು, ಇನ್ಫೋಬಾಕ್ಸ್, ಆಂತರಿಕ ಮತ್ತು ಬಾಹ್ಯ ಕೊಂಡಿಗಳನ್ನು ಸೇರಿಸುತ್ತಿದ್ದೇನೆ. ಅಕ್ಷರಗಳು ಮತ್ತು ವಾಕ್ಯಗಳಲ್ಲಿ ತಪ್ಪಿದ್ದಲ್ಲಿ ಅದನ್ನೂ ಸರಿಪಡಿಸಿ ಲೇಖನ ಸೇರಿಸಿದ ವಿದ್ಯಾರ್ಥಿನಿಯರಿಗೆ ಅದರ ಬಗ್ಗೆ ತಿಳಿಸಿದ್ದೇನೆ ಕೂಡ. ಇದಲ್ಲದೆ ಕೆಲವು ಲೇಖನಗಳ ವಯಕ್ತಿಕ ಜೀವನ ಎಂಬ ವಿಭಾಗವನ್ನು ತೆಗೆದಿದ್ದಾರೆ. ಲೇಖನಗಳ ಗುಣಮಟ್ಟ ಕಡಿಮೆ ಇದ್ದರೆ ಯಾರು ಬೇಕಾದರು ಸರಿಪಡಿಸಬಹುದಲ್ಲ. ಅದಕ್ಕೆ ಟೆಂಪ್ಲೇಟ್ ಸೇರಿಸ ಬೇಕೆಂದಿಲ್ಲವಲ್ಲ. ಇದು ಹೊಸ ಲೇಖಕರ ಉತ್ಸಾಹವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತಿದೆ. ಈ ಸಮಸ್ಯೆಗೆ ಪರಿಹಾರವನ್ನು ಸಮುದಾಯದವರು ತಿಳಿಸಬೇಕಾಗಿ ಕೇಳಿಕೊಳ್ಳುತ್ತೇನೆ.--Arpitha05 (ಚರ್ಚೆ) ೧೪:೩೬, ೧೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (UTC) ''}}
::@[[User:Lokesha kunchadka]] - In spite of warnings, you are continuing your disruptive behaviour in Kannada and Tulu Wikipedias. This time you have also harassed newly joined woman editors. Explain me the reasons for your behaviour and give me reasons why you should not be barred from Kannada and Tulu Wikipedias? I am expecting a convincing logical answer by tomorrow--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೩:೧೫, ೧೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST) (Admin, Kannada and Tulu Wikipedias)
::೨೦೧೯ ಅಗಸ್ಟ್ ರಡ್ಡನೆ ತಾರೀಖ್ ತಾನಿ [[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]]ರೆ ಕೊರ್ತಿನ ಉತ್ತರೊ '''ಏರ್ ಉಲ್ಲೇಕೊ ಕೊರ್ಪುಜ್ಜೆರುಂದ್ ತೂಪುನೆ ಅಡ್ಮಿನ್ ಬೇಲೆ ಅತ್ತ್.''' --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೩, ೧೬ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::::@[[User:Lokesha kunchadka]] - Instead of answering to the warning, you are indulging in whataboutery. You are also continuing adding templates to articles indicating more references are needed. But you yourself have created articles with no reference or just one reference. The link to such article is [[ಪತೆಂಗ ಬೀಚ್|here]] and [[ರಾಜಶ್ರೀ|here]]. It is noticed that you are harassing newly joined woman editors. You have continued this in spite of warnings. Hence [[User:Lokesha kunchadka]] is barred from Tulu Wikipedia for a month. If the practice is continued after the expiry of the ban, [[User:Lokesha kunchadka]] will be barred permanently from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೭, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST) (Admin, Tulu Wikipedia)
:: ಎಡ್ಮಿನ್ ಬಾರಿ ಎಡ್ಡೆ ಬೇಲೆ ಮಲ್ತೆರ್. ಉಂದೆಕ್ಕ್ ಯಾನ್ ಪೂರ್ಣ ಪ್ರಮಾಣದ ಬೆಂಬಲ ಕೊರೊಂದುಲ್ಲೆ. ಉಂದು ಸುಮಾರ್ ದುಂಬೆ ಅವೊಡಂಡ್. ನನ ಅಂಚ ಮಲ್ಪುನಕ್ಲೆಗ್ ಬುದ್ಧಿಗಾಂಡ್[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೧, ೧೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
: ಸಮುದಾಯೊಡು ಎಚ್ಚಿಕಮ್ಮಿ ಪಾತೆರೊಕತೆ ಬನ್ನಗ ಮಾತೆರೆಕ್ಲ ಬೇನೆ ಆಪುಂಡು. '''ಅಡ್ಮಿನ್ ಸೈತೆರೋ''' ಪನ್ಪುನವು ಏರೆಗ್ಲಾ ಬೇನೆ ಆಪುನವು. ಆ ನಿಲೆಟ್ ಆನಿಯೇ ಅಡ್ಮಿನ್ ತೀರ್ಮಾನೊ ದೆತೊಂತೊಲಿ. ಒಂತೆ ಪೊರ್ತಾಂಡಲಾ ತೀರ್ಮಾನೊ ಮಲ್ತಿನವು ಎಡ್ಡೆ ಆಂಡ್. ಪೊಸಬೆರ್ ಬರೆನಗ ಎಡ್ಡೆ ಆಂಡ್ಂದ್ ಬೆರಿ ಬೊಟ್ಟೊಡು. ಅಲ್ಪಲಾ ಮಾತೆರೆಕ್ಲಾ ಕಿರಿಕಿರಿ ಆಂಡ್. ಅಂಚಾದ್ ಅಡ್ಮಿನ್ ಮಲ್ತಿನವು ಸದ್ಯೊಗು ಸರಿಂದ್ ಎನ್ನ ಒಪ್ಪಿಗೆ.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೯, ೧೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::ಎನ್ಬ ಒಪ್ಪ ಉಂಡು, ಕೊಂಪೆನ್ ಒಗ್ಗಟ್ ಡ್ ಕಟ್ಟೊಡಾಯಿನ ನೆಲೆಟ್ ಬೇಲೆ ಅವೊಡು ಬುಡುತ್ ಬೇತೆ ನೆಲೆತ್ತ ಅಲೋಚನೆತಕುಲೆಗ್ ಉಂದು ಅಗತ್ಯ ಮಾನ್ಪೊಡು.--[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೦೭:೫೯, ೧೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ==
ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಲೇಕನೊ ಬರೆಪುನ ಸ್ಪರ್ಧೆ ನಡತ್ತೊಂಡ್ತೊಂಡ್ತ್ ಉಂಡು. ಅಯಿನ ವಿವರೊ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0) ಮೂಲುಂಡು]. ತುಳು ಬಾಸೆಡ್ ಎಂಚಿನ ವಿಸಯೊಳೆನ್ ಬರೆವುಡು ಪಣ್ಪಿನ ಪಟ್ಟಿ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest/Topics/Tulu ಮೂಲುಂಡು]. ಆ ಪಟ್ಟಿಡ್ತ್ ವಿಸಯೊ ಆಯ್ಕೆ ಮಲ್ತುದ್ ಬರೆಲೆ. ಬೊಕ್ಕ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest ಈ ಪುಟೊಟ್] ಅಯಿನ್ submit ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೧:೧೧, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ಕ್ ಬೋಡಾದ್ ಪಟ್ಟಿಡ್ ಇತ್ತ್ ನ ಬರವುಲೆನ್ ಬರೆವೊಂದು ಉಪ್ಪುನಗನೇ ಏರೋ ಪುದರ್ ಇಜ್ಜಂದಿನಕುಲು ಬತ್ತ್ ದ್ ಬರವುಲೆಗ್ ಟೆಂಪ್ಲೆಟ್ ಸೇರಾವುನೆ, ಅತ್ತ್ಂಡ ಬರವುನು ಮಾಜಾವುನ ಬೇಲೆ ಮಲ್ತೊಂದು ಉಲ್ಲೆರ್. ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್ ಮುಗಿಪುನಡೆ ಮುಟ್ಟ ಅನಾಮದೇಯೆರ್ ಏರ್ ಲಾ ಉಂದೆಕ್ಕ್ ಬರಂದಿಲೆಕೊ ಎಡ್ಮಿನ್ ತೂವೊನೊಡು ಪಂಡ್ದ್ ಕೇನೊಂದುಲ್ಲೆ.[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೩, ೨೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::IPತ್ ಪುದರ್ ದಾಂತಿನಕುಲು ಕೆಲಸ ಮಾಂತೊಂತುಲ್ಲೆರ್. ಅಕುಲೆನ್ ತಡೆಂಡ ಲಾಯಿಕ್. --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೦೮:೨೩, ೨೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:ಪೊಸ ಲೇಕನೊಗು <nowiki>[[ವರ್ಗೊ:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಪಂತೊಗು ಬರೆಯಿನ ಲೇಕನೊ]]</nowiki> ಪಂಡ್ದ್ ಸೇರ್ಪಾಲೆ. ದುಂಬೇ ಇತ್ತಿನ ಲೇಕನೊನು ಮಲ್ಲೆ ಮಲ್ತಿನೆ ಆಂಡ ಅಯಿಕ್ <nowiki>[[ವರ್ಗೊ:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಪಂತೊಗು ಮಲ್ಲೆ ಮಲ್ತಿನ ಲೇಕನೊ]]</nowiki> ಪಂಡ್ದ್ ಸೇರ್ಪಾಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೦೩, ೨೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== Editing News #2 – Mobile editing and talk pages ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<em>[[m:VisualEditor/Newsletter/2019/October|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</em>
Inside this newsletter, the [[mw:Editing|Editing team]] talks about their work on the [[mw:Mobile visual editor|mobile visual editor]], on [[mw:Talk pages project|the new talk pages project]], and at [[wikimania:|Wikimania 2019]].
=== Help ===
<strong>What talk page interactions do you remember?</strong> Is it a story about how someone helped you to learn something new? Is it a story about how someone helped you get involved in a group? Something else? Whatever your story is, we want to hear it!
Please tell us a story about how you used a talk page. <mark>Please share a link to a memorable discussion, or describe it on the <strong>[[mw:Topic:V8d91yh8gcg404dj|talk page for this project]]</strong>.</mark> The team wants your examples. These examples will help everyone develop a shared understanding of what this project should support and encourage.
=== Talk pages project ===
The [[mw:Talk pages consultation 2019|Talk Pages Consultation]] was a global consultation to define better tools for wiki communication. From February through June 2019, more than 500 volunteers on 20 wikis, across 15 languages and multiple projects, came together with members of the Foundation to create a product direction for a set of discussion tools. The [[mw:Talk pages consultation 2019/Phase 2 report|Phase 2 Report]] of the Talk Page Consultation was published in August. It summarizes the product direction the team has started to work on, which you can read more about here: [[mw:Talk pages project|Talk Page Project project page]].
The team needs and wants your help at this early stage. They are starting to develop the first idea. Please add your name to the [[mw:Talk pages project#Getting involved|<strong>"Getting involved"</strong>]] section of the project page, if you would like to hear about opportunities to participate.
=== Mobile visual editor ===
The Editing team is trying to make it simpler to edit on mobile devices. The team is changing the [[mw:VisualEditor on mobile|visual editor on mobile]]. If you have something to say about editing on a mobile device, please leave a message at [[mw:Talk:VisualEditor on mobile|Talk:VisualEditor on mobile]].
==== [[mw:VisualEditor on mobile/Edit cards|Edit Cards]] ====
[[File:Edit Cards-before-v3-comparison.png|thumb|486x486px|What happens when you click on a link. The new Edit Card is bigger and has more options for editing links.]]
* On 3 September, the Editing team released [[:File:Edit Cards comparison v2 and v3.png|version 3 of Edit Cards]]. Anyone could use the new version in the mobile visual editor.
* There is an [[:File:Edit Cards comparison v2 and v3.png|updated design]] on the Edit Card for adding and modifying links. There is also a new, [[mw:VisualEditor on mobile/Edit cards#2 September 2019 - v3 deployment timing|combined workflow for editing a link's display text and target]].
* Feedback: You can try the new Edit Cards by opening the mobile visual editor on a smartphone. Please post your feedback on the [[:mw:Topic:V5rg0cqmikpubmjj|Edit cards talk page]].
==== [[mw:VisualEditor on mobile/Toolbar refresh|Toolbar]] ====
[[File:Toolbar-comparison-v1.png|thumb|486px|The editing toolbar is changing in the mobile visual editor. The old system had two different toolbars. Now, all the buttons are together. [[mw:Topic:V79x6zm8n6i4nb56|Tell the team what you think about the new toolbar]].]]
* In September, the Editing team updated the mobile visual editor's editing toolbar. Anyone could see these changes in the mobile visual editor.
** <em>One toolbar:</em> All of the editing tools are located in one toolbar. Previously, the toolbar changed when you clicked on different things.
**<em>New navigation:</em> The buttons for moving forward and backward in the edit flow have changed.
**<em>Seamless switching:</em> an [[phab:T228159|improved workflow]] for switching between the visual and wikitext modes.
* Feedback: You can try the refreshed toolbar by opening the mobile VisualEditor on a smartphone. Please post your feedback on the [[mw:Topic:V79x6zm8n6i4nb56|Toolbar feedback talk page]].
=== Wikimania ===
The Editing Team attended [[wmania:2019:Program|Wikimania 2019]] in Sweden. They led a session on [[wmania:2019:Community Growth/Visual editing on mobile: An accessible editor for all|the mobile visual editor]] and a session on [[wmania:2019:Community Growth/After Flow: A new direction for improving talk pages|the new talk pages project]]. They tested [[mw:VisualEditor on mobile/Toolbar refresh#v1 prototype|two]] new [[mw:VisualEditor on mobile/Edit cards#v3 prototype|features]] in the mobile visual editor with contributors. You can read more about what the team did and learned in [[mw:VisualEditor on mobile#Wikimania Stockholm: Overview|the team's report on Wikimania 2019]].
=== Looking ahead ===
* <strong>Talk Pages Project:</strong> The team is thinking about the first set of proposed changes. The team will be working with a few communities to pilot those changes. The best way to stay informed is by adding your username to the list on the project page: [[mw:Talk pages project#Getting involved|<strong>Getting involved</strong>]].
* <strong>Testing the mobile visual editor as the default:</strong> The Editing team plans to post results before the end of the calendar year. The best way to stay informed is by adding the project page to your watchlist: [[mw:VisualEditor on mobile/VE mobile default|<strong>VisualEditor as mobile default project page</strong>]].
* <strong>Measuring the impact of Edit Cards:</strong> This study asks whether the project helped editors add links and citations. The Editing team hopes to share results in November. The best way to stay informed is by adding the project page to your watchlist: [[mw:VisualEditor on mobile/Edit cards|<strong>Edit Cards project page</strong>]].
– [[User:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:User talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:User talk:Whatamidoing (WMF)|talk]])
</div> ೧೬:೪೨, ೨೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Johan (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/Target_lists/VE_201910/5&oldid=19500851 -->
== Project Tiger update: Let's walk together with Wikipedia Asian Month and WWWW ==
<div style="border:8px red ridge;padding:6px;>
[[File:Emoji_u1f42f.svg|thumb|140px|The Tiger says "Happy Dipavali" to you]]
::''Apologies for writing in English, Kindly translate this message if possible.''
Greetings!
First of all "Happy Dipavali/Festive season". On behalf of the Project Tiger 2.0 team we have exciting news for all. Thanks for your enthusiastic participation in Project Tiger 2.0. You also know that there is a couple of interesting edit-a-thons around. We are happy to inform that the '''Project Tiger article list just got bigger.'''
We'll collaborate on Project Tiger article writing contest with [[:m:Wikipedia_Asian_Month_2019|Wikipedia Asian Month 2019]] (WAM2019) and [[:m:Wiki_Women_for_Women_Wellbeing_2019|Wiki Women for Women Wellbeing 2019 (WWWW-2019)]]. Most communities took part in these events in the previous iterations. Fortunately this year, all three contests are happening at the same time.
Wikipedia Asian Month agenda is to increase Asian content on Wikipedias. There is no requirement for selecting an article from the list provided. Any topic related to Asia can be chosen to write an article in WAM. This contest runs 1 November till 30 November.
For more rules and guidelines, you can follow the event page on Meta or local Wikis.
WWWW focus is on increase content related to women's health issues on Indic language Wikipedias. WWWW 2019 will start from 1 November 2019 and will continue till 10 January 2020. A common list of articles will be provided to write on.
'''<span style="background:yellow;">In brief: The articles you are submitting for Wikipedia Asian Month or WWWW, you may submit the same articles for Project Tiger also.</span>''' Articles created under any of these events can be submitted to fountain tool of Project Tiger 2.0. Article creation rule will remain the same for every community. -- sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೮:೧೪, ೨೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Wikipedia Asian Month 2019 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:WAM logo without text.svg|right|frameless]]
'''Wikipedia Asian Month''' is back! We wish you all the best of luck for the contest. The basic guidelines of the contest can be found on your local page of Wikipedia Asian Month. For more information, refer [[:m:Wikipedia Asian Month 2019|to our Meta page]] for organizers.
Looking forward to meet the next ambassadors for Wikipedia Asian Month 2019!
For additional support for organizing offline event, contact our international team [[:m:Talk:Wikipedia Asian Month 2019|on wiki]] or on email. We would appreciate the translation of this message in the local language by volunteer translators. Thank you!
[[:m:Wikipedia Asian Month 2019/International Team|Wikipedia Asian Month International Team.]]
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೨:೨೭, ೩೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/WAM&oldid=19499019 -->
== Project Tiger 2.0 - Hardware support recipients list ==
<div style="border:6px black ridge; background:#f2df94;">
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
Thank you all for actively participating and contributing to the writing contest of Project Tiger 2.0. We are very happy to announce the much-awaited results of the hardware support applications. You can see the names of recipients for laptop [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support/Laptops|here]] and for laptop see [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support/Internet|here]].
78 Wikimedians will be provided with internet stipends and 50 Wikimedians will be provided with laptop support. Laptops will be delivered to all selected recipients and we will email you in person to collect details. Thank you once again.
Regards. <small>-- [[User:Nitesh (CIS-A2K)]] and [[User:SuswethaK(CIS-A2K)]] (on benhalf of Project Tiger team) <br>
using --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೨:೪೫, ೮ ನವಂಬರ್ ೨೦೧೯ (IST)</small>
</div>
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ (Interface admin) ಆಯೆರ ನಿಕುಲೆನ ಬೆಂಬಲೊ ಬೋಡು ==
ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ ಇಜ್ಜಿ. ಎಡಿಟ್ ಟೂಲ್ಬಾರ್ ಬದಲಾವಣೆ ಮಲ್ಪೆರೆ, ಸುಮಾರು ಅಡ್ಮಿನ್ ಬೇಲೆಲೆನ್ ಮಲ್ಪೆರೊ ಅವು ಬೋಡು. ಅಂಚಾತ್ ಯಾನ್ ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯೆರ ಅರ್ಜಿ ಪಾಡ್ಪೆ. ನಿಕುಲೆನ ಬೆಂಬಲೊ ಬೋಡು. Tulu Wikipedia does not have an Interface Admin. I would like to apply to become.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೫೧, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
===ಒಪ್ಪಿಗೆ/Support===
# {{support}}-- ಈರ್ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಅಡ್ಮಿನ್ ಆದುಲ್ಲರ್. ಅಯಿತೊಟ್ಟುಗೆ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯೆರೆ ಎನ್ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೨:೫೪, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}}-- ಈರ್ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಅಡ್ಮಿನ್ ಆದ್ ಉಲ್ಲರ್. ಇತ್ತೆ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯರ್ ದಾಂಡ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಬುಳೆಚ್ಚಿಲ್ಗ್ ಪ್ರಯೋಜನ ಅವು ಪನ್ಪಿ ನಂಬುಗೆ ಎನ್ನವು. ಅಂಚಾದ್ ಈರ್ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಪುನೆಕ್ ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೮:೩೮, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಈರ್ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯರೆ ಎನ್ನ ಒಪ್ಪಿಗೆ ಸೂಚಿಸದೆ-[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೯:೪೪, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೦:೩೯, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೫, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} --[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೭:೩೫, ೧ ನವಂಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Arpitha05|Arpitha05]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Arpitha05|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೦, ೭ ನವಂಬರ್ ೨೦೧೯ (IST)
====ಕೆಲ ಪ್ರಶ್ನೆಲು\Question ====
* ಟೆಂಪ್ಲೇಟ್ ಅನುವಾದ ಮಾಲ್ತಿನ ಪಟ್ಟಿನ್(Trancelated Template list) ಜನವರಿಡ್ ಕೆಂಡೊ ಅಯಿನ ಪಟ್ಟಿ ಇತ್ನೆ [[ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ/2019|ಮುಟ್ಟ ಕೊರ್ತಿಜ್ಜಿ]] ದಾಯೆ?.
* ವರ್ಗೊ:Pages with script errors ಇಂದೆನ್ ನಮೊ [[ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ/2019|ಆನಿಯೆ ವರದಿ ಮಾಲ್ತೊ]] ಅತ್ನೆ ಮುಟ್ಟ ಎಚ್ಚರ ಇಜ್ಜಿಯಾಂಡ್ ದಾಯೆ?.
* ಇಂಪೊರ್ಟ್ ಮಾಲ್ಪುನಗ ಅಂಡ ಸುಲಭ ಇತ್ತ್ಂಡ್, ಮಸ್ತ್ ಟೆಂಪ್ಲೇಟ್ ಇಂಪೊರ್ಟ್ ಮಾಲ್ತಿವು error's ಉಂಡು ಅಯಿನ್ ಟೆಸ್ಟ್ (test, fix) ಮಾಲ್ಪಾರ? ಇಜ್ಜಿಯಾ?.
* ೬ ತಿಂಗೋಲು ಮುಟ್ಟ ಇಂಟರ್ ಪೇಸ್ ಎಡ್ಮಿನ್(Six Months valid interface adminship) ಯಾವಾಂದ?.
* ೬ ತಿಂಗೋಲು ಕರಿನೆಟ್ಟ್ ಬುಕ್ಕೊ(After ೬ month report and diceded community), ಮಾಲ್ತಿನ ಬೆಲೆತ ವರದಿ ಸಮುದಾಯೋಗು ಕೊರೊಡು.
* ೬ ತಿಂಗೊಲು ಕರಿನೆಟ್ಟ್ ಬುಕ್ಕೊ ಸಮುದಾಯೊ ಅಯಿತ್ತಾ ಮಿತ್ತ್ ಸಬೆ ನಡಪ್ಪೊಡು, ಅಲ್ಪ ದೆತ್ತೊಂದ್ನ ನಿರ್ಣೊಯೊನು ಸಮುದಾಯೊಗು ತೆರಿಪಾವೋಡು.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೧:೫೯, ೧೭ ನವಂಬರ್ ೨೦೧೯ (IST)
===approved===
*ಪವನಜೆರೆಗ್ interface adminship ತಿಕ್ಕ್ತ್ಂಡ್--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೩:೧೯, ೨೨ ನವಂಬರ್ ೨೦೧೯ (IST)
== Extension of Wikipedia Asian Month contest ==
In consideration of a week-long internet block in Iran, [[:m:Wikipedia Asian Month 2019|Wikipedia Asian Month 2019]] contest has been extended for a week past November. The articles submitted till 7th December 2019, 23:59 UTC will be accepted by the fountain tools of the participating wikis.
Please help us translate and spread this message in your local language.
[[:m:Wikipedia Asian Month 2019/International Team|Wikipedia Asian Month International Team]]
--[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೪೬, ೨೭ ನವಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/WAM&oldid=19592127 -->
== [WikiConference India 2020] Invitation to participate in the Community Engagement Survey ==
This is an invitation to participate in the Community Engagement Survey, which is one of the key requirements for drafting the Conference & Event Grant application for WikiConference India 2020 to the Wikimedia Foundation. The survey will have questions regarding a few demographic details, your experience with Wikimedia, challenges and needs, and your expectations for WCI 2020. The responses will help us to form an initial idea of what is expected out of WCI 2020, and draft the grant application accordingly. Please note that this will not directly influence the specificities of the program, there will be a detailed survey to assess the program needs post-funding decision.
*Please fill the survey at; https://docs.google.com/forms/d/e/1FAIpQLSd7_hpoIKHxGW31RepX_y4QxVqoodsCFOKatMTzxsJ2Vbkd-Q/viewform
*The survey will be open until 23:59 hrs of 22 December 2019.
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೪:೩೫, ೧೮ ದಸಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:KCVelaga@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Project Tiger updates - quality of articles ==
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
It has been around 70 days since Project Tiger 2.0 started and we are amazed by the enthusiasm and active participation being shown by all the communities. As much as we celebrate the numbers and statistics, we would like to reinstate that the quality of articles is what matters the most. Project Tiger does not encourage articles that do not have encyclopedic value. Hence we request participants to take care of the quality of the articles submitted. Because [[:en:Wikipedia:Wikipedia_is_not_about_winning|Wikipedia is not about winning]], it is about users collectively building a reliable encyclopedia.
Many thanks and we hope to see the energy going! <small>(on behalf of Project Tiger team) <br>
sent using --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೧:೫೧, ೧೯ ದಸಂಬರ್ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== SVG ಚಿತ್ರೊನ್ ತುಳುಟ್ ಅನುವಾದ ಮಾಲ್ಪುನ ಆಭಿಯಾನ ==
[[File:Commons-logo-en.svg|thumb|left|100px]]
[https://commons.wikimedia.org ವಿಕಿಕಾಮನ್ಸ್] ಮೂಲಕೊ ವಿಕಿಪೀಡಿಯಟ್ ವಿಜ್ಞಾನ, ತಂತ್ರಜ್ಞಾನ, ಶೈಕ್ಷಣಿಕ ಮಾಹಿತಿ ಸೇರಾವುನ ಅತ್ತಂದೆ ಮಸ್ತ್ ವಿಷಯಗ್ ಸಂಬಂಧಪಟ್ಟಿನ ಚಿತ್ರೊನ್ ಭಾರತೀಯ ಭಾಸೆಗ್ ಮಸ್ತ್ ಕಡಿಮೆ ಬಲಕೆ ಉಂಡು. ಅಂಚಾತ್ ಅಂಚಿನ ಚಿತ್ರೊನ್ ತುಳು ಸೇರಾತ್ ಬೇತೆ ಭಾರತೀಯ ಭಾಸೆಟ್ ಇಪ್ಪುನ ಅಭಿಯಾನ ೨೧ ಫೆಬ್ರವರಿ ೨೦೧೯ಡ್ತ್ ಸುರು ಮಾಲ್ಪುನೆ. ಅಂಚಾತ್ ಮಸ್ತ್ ಚಿತ್ರೊ ಇಂಗ್ಲೀಶ್ ಅವೃತ್ತಿಟ್ ಮೂಲವಾತ್ ಅಯಿನ ಭಾರತೀಯ ಭಾಷಾ ಆವೃತ್ತಿನ್ ತಯಾರುಮಾಲ್ಪುನ ಯೋಜನೆ ಉಂದು. ಈ ಚಿತ್ರೊ [[:en:Scalable Vector Graphics|Scalable Vector Graphics (svg)]] ಮಾದರಿತವ್. ಅಯಿನ್ ಇಂಕ್ ಸ್ಕೇಪ್ (Inkscape) ಅಂಚಿನ ತಂತ್ರಾಶೊಟ್ ದೆತ್ತ್ ಬದಲಾವಣೆ ಮಾಲ್ಪೊಲಿ. ಈ ಅಭಿಯಾನಟ್ ಕಲ್ಪಿಯರ ಮುಖ್ಯ ಸಂಗತಿ ಪಂಡ ಇಂಕ್ ಸ್ಕೇಪ್ ತಂತ್ರಾಂಶತ ಬಲಕೆ, ಅಯಿನ್ ಕನ್ನಡೊ ಚಿತ್ರೊತ ಆವೃತ್ತಿನ್ ತಯಾರ್ ಮಾಲ್ಪುನ, ವಿಕಿ ಕಾಮನ್ಸಿಗ್ ಅಪ್ಲೋಡ್ ಮಾಲ್ಪುನ. ಈ ಅಭಿಯಾನಡ್ ಮಸ್ತ್ ಸಂಖ್ಯೆಟ್ ಚಿತ್ರೊ ತಯಾರುಮಾಲ್ಪೊಡು, ಮಾಲ್ತಿನಂಗ್ಲೆಗ್ ಇನಾಮ್ ಉಂಡು. ಅಯಿಟ್ ತುಳು ಬುಕ್ಕ ತುಳು ವಿಕಿ ಸಮುದಾಯ ಸಕ್ರಿಯವಾತ್ ಪಾಲ್ ಪಡೆತ್ ನಮ್ಮ ಭಾಷೆತ contentನ್ ಅಭಿವೃದ್ಧಿ ಮಾಲ್ಪುಗೊ. ಇಂದೆಕ್ ಮಸ್ತ್ ವಿಶೇಷ ತಾಂತ್ರಿಕ ಜ್ಞಾನತ ಅವಶ್ಯಕತೆ ಬೊಡ್ಚಿ. ಅಂಚನೆ ಪೂರ ಆಸಕ್ತೆರ್ ಪಾಲ್ ಪಡೆಲೆಂದ್ ಕೋರಿಕೆ. ಈ ಸಂಬಂಧ ಫೆಬ್ರವರಿ ೨೧ ಬುಕ್ಕೊ ಒಂಜಿ ತರಬೇತಿ ಅತ್ತಂದೆ ಸಂಪಾದನೋತ್ಸವ ಪಾಡೊಕ್ಣಕೊ ಅಯಿನ ಆಲೋಚನೆ ಮಾಲ್ತೊ ತಾರೀಖು ಬುಕ್ಕೊ ಜಾಗೆನ್ ಕೆಲ ದಿನಟ್ ಘೋಷಣೆ ಮಾಲ್ಪೊ. ಬಲೆ.. ಕೈಜೋಡಾಲೆ.
<big>'''ಅಭಿಯಾನತ ಪುಟ ಮುಲುಂಡು: [https://commons.wikimedia.org/wiki/Commons:SVG_Translation_Campaign_2019_in_India SVG Translation Campaign 2019 in India]'''
'''ಪಾಲ್ ಪಡೆಪ್ಪುನಗ್ಲ್ ಮುಲ್ಪ ಪುದಾರ್ ಸೇರಾಲೆ:[https://commons.wikimedia.org/wiki/Commons:SVG_Translation_Campaign_2019_in_India/Participants Participants]'''</big>
== ಕಜ್ಜ ಕೂಟ ==
ತುಳು ಬಾಸೆದ ಪೊಸ ದೇಕಿಗಾದ್ ಪೊಸ ವರ್ಸೊದ ಅಲೋಚನೆನ್ ಒಟ್ಟು ಪಾಡಿಯೆರ ಬೋಡಾದ್ ತಾರೀಕ್ ೦೧ ಫೆಬ್ರುವರಿ ೨೦೨೦ಗ್ ಒಟ್ಟು ಸೇರುನೆಂದ್ ಪಾಡ್ತೊ. ಪಾಲು ಪಾಡೆಪುನಕುಲು [https://meta.wikimedia.org/wiki/Karavali_Wikimedians/Meetups/Meetup_at_Sri_Ramakrishna_Pre-University_College-10 ಮೂಲು] ಸೈನ್ ಪಾಡ್ಲೆ.
ಚರ್ಚೆತ ವಿಸಯೊಲು.
*ತುಲು ವಿಕ್ಷನರಿನ್ ಜುವೊ ಮಾನ್ಪುನ.
*ವಿಕಿ ಲವ್ಸ್ ಜಾನಪದ(Folklore).
*ವಿಕಿ ಲವ್ಸ್ ವಿಮೆನ್ ಸೌತ್ ಏಶಿಯಾ - ೨೦೨೦ ಅಯಿನ ತುಲುತ ಸಂಘಟಕೆರಾತ್ ಪಾಲ್ ಗೆತುನೊನಕುಲು.
*Wiki Summit 2020 ಪೊಪುನ ಬಗೆಟ್ಟ್
*Folkothanಗ್ ದುಡ್ಡುತ ವಿಚಾರೊ.
*ಇಲ್ಲ್ ಇಲ್ಲ್ ವಿಕಿ ಪಿಡಿಯಾ.
*ಒಂಜಿ ಕಾರ್ಯಗಾರೊ '''ಸಿಮಂತಿ ಬಾಯಿ ಸರಕಾರೊತ ಮ್ಯೂಸಿಯಂ'''ಡ್ ಮಾನ್ಪಿ ಬಗೆಟ್.
fm898ctes5szt8p8zgfr5kswg3rseb2
370351
370349
2026-09-28T07:45:07Z
ChiK
1136
370351
wikitext
text/x-wiki
== ಕಜ್ಜಕೊಟ್ಯ ==
* ಉಂದುವೆ ಜನವರಿ ತಿಂಗೊಲು ೧೯-೨೦, ೨೦೧೯ ದಾನಿ ಕುಕ್ಕೇಶ್ರೀ ಸುಬ್ರಹ್ಮಣ್ಯೇಶ್ವರ ಪದವಿ ಕಾಲೇಜು, ಸುಬ್ರಹ್ಮಣ್ಯೊಡ್ ಒಂಜಿ ಲೇಸ್ ನಡಪ್ಪಾಯರ ಉಂಡು. [[ವಿಕಿಪೀಡಿಯ:ಕಜ್ಜಕೊಟ್ಯ-೨೩|ವಿವರೊ ಮುಲುಂಡು]].
* ಬರ್ಪಿ ಪೆಬ್ರವರಿ ತಿಂಗೊಲು ೦೨-೦೩, ೨೦೧೯ ದಾನಿ ನೆಹರು ಮೆಮೋರಿಯಲ್ ಕಾಲೇಜು ಸುಳ್ಯೊಡ್ ಒಂಜಿ ಲೇಸ್ ನಡಪ್ಪಾಯರ ಉಂಡು. [[ವಿಕಿಪೀಡಿಯ:ಕಜ್ಜಕೊಟ್ಯ-೨೨|ಅಯಿನ ವಿವರೊ ಮುಲುಂಡು]]--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೭:೩೮, ೩ ಜನವರಿ ೨೦೧೯ (IST)
== Call for bids to host Train-the-Trainer 2019 ==
''Apologies for writing in English, please consider translating the message''
Hello everyone,
This year CIS-A2K is seeking expressions of interest from interested communities in India for hosting the Train-the-Trainer 2019.
Train-the-Trainer or TTT is a residential training program which attempts to groom leadership skills among the Indian Wikimedia community (including English) members. Earlier TTT has been conducted in 2013, 2015, 2016, 2017 and 2018.
If you're interested in hosting the program, Following are the per-requests to propose a bid:
* Active local community which is willing to support conducting the event
** At least 4 Community members should come together and propose the city. Women Wikimedians in organizing team is highly recommended.
* The city should have at least an International airport.
* Venue and accommodations should be available for the event dates.
** Participants size of TTT is generally between 20-25.
** Venue should have good Internet connectivity and conference space for the above-mentioned size of participants.
* Discussion in the local community.
Please learn more about the [[:m:CIS-A2K/Events/Train the Trainer Program|Train-the-Trainer program]] and to submit your proposal please visit [[:m:CIS-A2K/Events/Train the Trainer Program/2019/Bids|this page]]. Feel free to [[m:Special:EmailUser/Pavan Santhosh (CIS-A2K)|reach]] to me for more information or email tito{{@}}cis-india.org
Best!
[[User:Pavan Santhosh (CIS-A2K)|Pavan Santhosh]] ( [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೧:೨೨, ೬ ಜನವರಿ ೨೦೧೯ (IST) )
<!-- Message sent by User:Saileshpat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=17298203 -->
== Temporary admin rights for adding gadgets ==
Hello I am AnoopZ you may probably know me by previous user name - [[User:Anoop Rao]] ,as per above request to add some gadgets, I would like to request temporary admin rights for 3days.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೨:೦೬, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}-[[ಬಳಕೆದಾರೆ:Vikashegde|Vikashegde]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vikashegde|ಪಾತೆರ್ಲೆ]]) ೧೨:೧೩, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
* {{support}} --[[ಬಳಕೆದಾರೆ:Gopala Krishna A|Gopala Krishna A]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Gopala Krishna A|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೩, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}} --[[ಬಳಕೆದಾರೆ:Ananth subray|Ananth subray]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ananth subray|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೪, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೩:೧೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:BENET G AMANNA|BENET G AMANNA]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BENET G AMANNA|ಪಾತೆರ್ಲೆ]]) ೧೩:೫೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Durga bhat bollurodi|Durga bhat bollurodi]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Durga bhat bollurodi|ಪಾತೆರ್ಲೆ]]) ೧೬:೧೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Pranavshivakumar|Pranavshivakumar]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pranavshivakumar|ಪಾತೆರ್ಲೆ]]) ೧೭:೦೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೧೭:೦೨, ೨೫ ಜನವರಿ ೨೦೧೯ (IST). Welcome Anoop. Please look into and resolve the bugs in tcy templates like Infobox:settlement,mbox etc. Maybe template file autotranslate need to be imported for this.
above request will be completed by stewards.@[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] i will look into templates, there is no auto translate scripts in my knowledge it should be done manually.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೮:೧೨, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
@ [[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]. Please check up the missing map link in an example like the following:
https://tcy.wikipedia.org/wiki/ಮುಂಡ್ಕೂರು. [[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೭:೩೮, ೨೯ ಜನವರಿ ೨೦೧೯ (IST).
Further:
Resource for "autotranslate" is here:
https://commons.wikimedia.org/wiki/Template:Autotranslate. [[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೭:೫೯, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
:I have imported Template:Autotranslate from Commons. It need not be translated as per its documentation. It uses Module:Autotranslate. There is a dangerous possibility of recursive calling and hence should be used with care.-[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೧೭, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
== ಟೆಂಪ್ಲೇಟ್ ==
ಇತ್ತೆ ನಮ ಏತ್ ಟೆಂಪ್ಲೇಟ್ ಬಲಕೆ ಮಾಲ್ಪೊಲಿ. ಅಯಿನ ಪಟ್ಟಿ ಕೊರ್ಂಟಾ ಎಡ್ಡೆ ಇತ್ತ್ಂಡ್.ಅನುವಾದ ಅಯಿನ ಟೆಂಪ್ಲೇಟ್ ಪಟ್ಟಿ ಕೊರ್ಲೆ.ತುಳು ವಿಕಿಪೀಡಿಯ ಗ್ ಬಾರಿ ಕಮ್ಮಿ ಉಂಡು ಅನುವಾದ ಅಯಿನ ಟೆಂಪ್ಲೇಟ್ ನಾಣ ದುಂಬುಗು ಬಲಕೆ ಮಾಲ್ಪಿಯರ ಪಟ್ಟಿ ಇತ್ತ್ಂಟಾ ಎಡ್ಡೆ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೨೩, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
== Gadgets ಅಮದ್ ಮಾಲ್ತ್ ಕೊರ್ಲೆ ==
#ProveIt
#:{{done}} needs admin to put translated label in [[Mediawiki:Gadget-ProveIt]] and check that it is functioning [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೭, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
#UTCLiveClock
#:{{done}} needs admin to put translated label in [[Mediawiki:Gadget-UTCLiveClock]] [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#exlinks
#:{{done}} plese check, also needs translated labels [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#PrintOptions
#:{{done}} plese check, also needs translated labels [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#refToolbar
#:{{not done}} customised for enWP; won't import nicely, and would need code changes. Better for locals to add to personal common.js the required subpart [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#ImageAnnotator
#:{{not done}} as you don't have local uploads, annotations are better made at Commons with that tool [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#Twinkle
#:{{not done}} this is a complex beast and for the work here it is overkill [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೭, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
#Navigation_popups
#:already in place, needs admin to put tcy label in [[ಮಾದ್ಯಮೊ ವಿಕಿ:Gadget-Navigation popups/tcy]], or provide some text and ping me [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
::I am an admin. Please let me know what exactly needs to be done.-[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೭:೫೪, ೨೮ ಜನವರಿ ೨೦೧೯ (IST)
#GoogleTrans
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#citations
#: {{not done}} enWP tool only
#XTools-ArticleInfo
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#CommentsInLocalTime
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#Reference Tooltips
#: {{not done}} tips in English, users would be better loading script through their personal common.js
#markAdmins
#:{{not done}} manually contained list required, and insufficient rightsholders to add value to this wiki
ಇತ್ Gadgets ತುಳು ವಿಕಿಗ್ ಬೊಡಾಪುಂಡು--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೧:೨೭, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
::above request will be completed by stewards.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೮:೧೨, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
{{comment}} see above. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೦೫, ೨೬ ಜನವರಿ ೨೦೧೯ (IST) <small>(global systop, not steward)</small>
[[user:Pavanaja|Pavanaja]] I have installed the gadgets identified above, and put in place EN language descriptions, what needs to now be done is to put in TCY language descriptions. You can get a listing at [[Special:Gadgets]] and [[ವಿಸೇಸೊ:PrefixIndex/Mediawiki:]] though for you.
[[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೫:೦೪, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
{| border=1
!Gadget!!EN!!TCY
|-
|CommentsInLocalTime||[[Mediawiki:Gadget-CommentsInLocalTime/en]]||[[Mediawiki:Gadget-CommentsInLocalTime/tcy]]
|-
|GoogleTrans||[[Mediawiki:Gadget-GoogleTrans/en]]||[[Mediawiki:Gadget-GoogleTrans/tcy]]
|-
|HotCat||[[Mediawiki:Gadget-HotCat/en]]||[[Mediawiki:Gadget-HotCat/tcy]]
|-
|popups||[[Mediawiki:Gadget-Navigation popups/en]]||[[Mediawiki:Gadget-Navigation popups/tcy]]
|-
|PrintOptions||[[Mediawiki:Gadget-PrintOptions/en]]||[[Mediawiki:Gadget-PrintOptions/tcy]]
|-
|ProveIt||[[Mediawiki:Gadget-ProveIt/en]]||[[Mediawiki:Gadget-ProveIt/tcy]]
|-
|UTCLiveClock||[[Mediawiki:Gadget-UTCLiveClock/en]]||[[Mediawiki:Gadget-UTCLiveClock/tcy]]
|-
|XTools-ArticleInfo||[[Mediawiki:Gadget-XTools-ArticleInfo/en]]||[[Mediawiki:Gadget-XTools-ArticleInfo/tcy]]
|-
|exlinks||[[Mediawiki:Gadget-exlinks/en]]||[[Mediawiki:Gadget-exlinks/tcy]]
|-
|refToolbar||[[Mediawiki:Gadget-refToolbar/en]]||[[Mediawiki:Gadget-refToolbar/tcy]]
|}
I have watched the page for a few days in case of questions, and nwo will stop that active watch. If there are questions, then please [[mw:Manual:Echo|ping me]] directly and I will address them then. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೬:೫೮, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
:[[user:Lokesha kunchadka|Lokesha kunchadka]] you may wish to check whether the added gadgets work for you. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೬:೫೯, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
::Thanks--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೨೫, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
== ಬೇತೆ ಬೇತೆ ವಿಸಯೊಳೆನ ಕಜ್ಜಕೊಟ್ಯ ==
ಬೇತೆ ಬೇತೆ ವಿಸಯೊಲು, ಪೊಂಜೊಳೆನ ವಿಸಯೊಲು ಬೊಕ್ಕ ಪೊಂಜೊಳೆನ್ ಸೇರಾಪುನೆ -ಇಂದೆಕ್ ಬೋಡಾದ್ ಕಜ್ಜಕೊಟ್ಯ ನಡಪ್ಪಾಯೆರೆ ಕಾಸ್ಗ್ ಬೋಡಾದ್ [https://meta.wikimedia.org/wiki/Grants:Project/Rapid/Dhanalakshmi_.K._T/Diversity_editathons_2019 ಅರ್ಜಿ ಪಾಡ್ದೆ]. ಅಯಿನ್ ಓದ್ದ್ ಇರೆನ್ ಸಲಹೆ ಇತ್ತ್ಂಡ ದೀವೊಡ್ ಬೊಕ್ಕ ಅಯಿಕ್ ಸಪೋರ್ಟ್ ಮಲ್ಪೊಡ್ಂದ್ ಕೇಂಡೊಣ್ವೆ--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೨:೫೬, ೧೪ ಮಾರ್ಚಿ ೨೦೧೯ (IST)
== Train-the-Trainer 2019 Application open ==
''Apologies for writing in English, please consider translating''<br>
Hello,<br>
It gives us great pleasure to inform that the Train-the-Trainer (TTT) 2019 programme organised by CIS-A2K is going to be held from 31 May, 1 & 2 June 2019.
'''What is TTT?'''<br>
Train the Trainer or TTT is a residential training program. The program attempts to groom leadership skills among the Indian Wikimedia community members. Earlier TTT has been conducted in 2013, 2015, 2016, 2017 and 2018.
'''Who should apply?'''<br>
* Any active Wikimedian contributing to any Indic language Wikimedia project (including English) is eligible to apply.
* An editor must have 600+ edits on Zero-namespace till 31 March 2019.
* Anyone who has the interest to conduct offline/real-life Wiki events.
* Note: anyone who has already participated in an earlier iteration of TTT, cannot apply.
Please '''[[:m:CIS-A2K/Events/Train the Trainer Program/2019|learn more]]''' about this program and apply to participate or encourage the deserving candidates from your community to do so. Regards. -- [[User:Tito (CIS-A2K)|Tito (CIS-A2K)]], sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೦:೩೭, ೨೬ ಎಪ್ರಿಲ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=17298203 -->
== Wikimedia Education SAARC conference application is now open ==
''Apologies for writing in English, please consider translating''<br/>
Greetings from CIS-A2K,<br/>
The Wikimedia Education SAARC conference will take place on 20-22 June 2019. Wikimedians from Indian, Sri Lanka, Bhutan, Nepal, Bangladesh and Afghanistan can apply for the scholarship. This event will take place at [https://goo.gl/maps/EkNfU7FTqAz5Hf977 Christ University], Bangalore.
'''Who should apply?'''<br>
*Any active contributor to a Wikimedia project, or Wikimedia volunteer in any other capacity, from the South Asian subcontinent is eligible to apply
* An editor must have 1000+ edits before 1 May 2019.
* Anyone who has the interest to conduct offline/real-life Wikimedia Education events.
*Activity within the Wikimedia movement will be the main criteria for evaluation. Participation in non-Wikimedia free knowledge, free software, collaborative or educational initiatives, working with institutions is a plus.
Please '''[[:m:Wikimedia_Education_SAARC_conference/Registration|know more]]''' about this program and apply to participate or encourage the deserving candidates from your community to do so. Regards.[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೨೪, ೧೧ ಮೇ ೨೦೧೯ (IST)
<!-- Message sent by User:Saileshpat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19091276 -->
== CIS-A2K: 3 Work positions open ==
Hello,<br>Greetings for CIS-A2K. We want to inform you that 3 new positions are open at this moment.
* Communication officer: (staff position) The person will work on CIS-A2K's blogs, reports, newsletters, social media activities, and over-all CIS-A2K general communication. The last date of application is 4 June 2019.
* Wikidata consultant: (consultant position), The person will work on CIS-A2K's Wikidata plan, and will support and strengthen Wikidata community in India. The last date of application is 31 May 2019
* Project Tiger co-ordinatorː (consultant position) The person will support Project tiger related communication, documentation and coordination, Chromebook disbursal, internet support etc. The last date of application is 7 June 2019.
'''For details about these opportunities please see [[:m:CIS-A2K/Team/Join|here]]'''. <small>-- [[User:Tito (CIS-A2K)|Tito (CIS-A2K)]], sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೫:೩೨, ೨೨ ಮೇ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯ ಕಾರ್ಯಕ್ರಮಕ್ಕೆ ಅರ್ಜಿ ಸಲ್ಲಿಸಲಾಗಿದೆ ==
ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯ ಸಂಪಾದನೋತ್ಸವ ಮತ್ತು ವಿಕಿಪೀಡಿಯ ಬಳಕೆಯ ಕುರಿತು ಇತರ ಕಾಲೇಜುಗಳಲ್ಲಿ ನಡೆಸಲು ಹಣಕಾಸಿನ ನೆರವಿಗಾಗಿ ಅರ್ಜಿಯನ್ನು ವಿಕಿಮೀಡಿಯ ಫೌಂಡೇಶನ್ ಗೆ ಸಲ್ಲಿಸಲಾಗಿದೆ. ಈ ಕಾರ್ಯಕ್ರಮವನ್ನು ಅಳ್ವಾಸ್ ವಿಕಿಪೀಡಿಯ ಅಸೋಸಿಯೇಷನ್ ಮೂಲಕ ನಡೆಸಲಾಗುವುದು.ನಾನು ಸಲ್ಲಿಸಿದ ಅರ್ಜಿಯನ್ನು ಬೆಂಬಲಿಸಬೇಕಾಗಿ ತಮ್ಮಲ್ಲಿ ಕೋರಿಕೆ ಲಿಂಕ್[https://meta.wikimedia.org/wiki/Grants:Project/Rapid/Lokesha_Kunchadka/Semister_Program_in_Alvas,_Kannada_and_Tulu_Wikipedia ಇಲ್ಲಿದೆ] .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೦:೩೩, ೨ ಜೂನ್ ೨೦೧೯ (IST)
== Wikidata Bridge: edit Wikidata’s data from Wikipedia infoboxes ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''Sorry for writing this message in English - feel free to help us translating it :)''
Hello all,
Many language versions of Wikipedia use the content of [[Wikidata]], the centralized knowledge base, to fill out the content of infoboxes. The data is stored in Wikidata and displayed, partially or completely, in the Wikipedia’s language, on the articles.
This feature is used by many template editors, but brought several issues that were raised by communities in various places: not being able to edit the data directly from Wikipedia was one of them.
This is the reason why the '''[[mw:Wikidata Bridge|Wikidata Bridge]]''' project started, with the goal of offering a way to Wikipedia editors to edit Wikidata’s data more easily. This will be achieved by an interface, connected to the infobox, that users can access directly from their local wiki.
The project is now at an early stage of development. A lot of [[mw:Wikidata_Bridge/Research|user research]] has been done, and will continue to be done through the different phases of the project. The next steps of [[mw:Wikidata_Bridge/Development|development]] will be achieved by the development team working at Wikimedia Deutschland, starting now until the end of 2019.
In order to make sure that we’re building a tool that is answering editors’ needs, we’re using agile methods in our development process. We don’t start with a fixed idea of the tool we want to deliver: we will build it together with the editors, based on feedback loops that we will regularly organize. The first version will not necessarily have all of the features you want, but it will keep evolving.
Here’s the planned timeline:
* From June to August, we will build the setup and technical groundwork.
* From September to November 2019, we will develop the first version of the feature and publish a test system so you can try it and give feedback.
* Later on, we will test the feature on a few projects, in collaboration with the communities.
** We will first focus on early adopters communities who already implemented a shortcut from their infoboxes to edit Wikidata (for example Russian, Catalan, Basque Wikipedias)
** but we also welcome also communities who [[mw:Wikidata_Bridge/Get_involved|volunteer to be part of the first test round]].
** Then we will reach some of the big Wikipedias (French, German, English) in order to see if the project scales and to address their potentially different needs.
** Even later, we can consider enabling the feature on all the other projects.
In any case, no deployment or big change will be enforced on the projects without talking to the communities first, and helping the template builders to prepare for the changes they will have to do on the infoboxes’ code.
If you want to get involved, there are several ways to help:
* Read and help translating [[mw:Wikidata_Bridge|the documentation pages]]
* Follow the [[mw:Wikidata_Bridge/Updates|updates]] and participate in [[mw:Topic:V1x2lxtu8rgi954a|the first feedback loop]]
* Talk about it with your local community
More ideas will be added [[mw:Wikidata_Bridge/Get_involved|on this page]] along the way
If you have any questions for the development team, feel free to ask them [[mw:Talk:Wikidata_Bridge|on the main talk page]]. You can also ask under this message, but if you expect an answer from me, please make sure to ping me.
Thanks for your attention, [[:d:User:Lea Lacroix (WMDE)|Lea Lacroix (WMDE)]] ೧೮:೩೩, ೨೪ ಜೂನ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Lea Lacroix (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Lea_Lacroix_(WMDE)/List_Wikipedias&oldid=19168539 -->
== Indic Wikimedia Campaigns/Contests Survey ==
Hello fellow Wikimedians,
Apologies for writing in English. Please help me in translating this message to your language.
I am delighted to share a survey that will help us in the building a comprehensive list of campaigns and contests organized by the Indic communities on various Wikimedia projects like Wikimedia Commons, Wikisource, Wikipedia, Wikidata etc. We also want to learn what's working in them and what are the areas that needs more support.
If you have organized or participated in any campaign or contest (such as Wiki Loves Monuments type Commons contest, Wikisource Proofreading Contest, Wikidata labelathons, 1lib1ref campaigns etc.), we would like to hear from you.
You can read the Privacy Policy for the Survey [https://foundation.wikimedia.org/wiki/Indic_Wikimedia_Campaigns_and_Contests_Survey_Privacy_Statement here]
Please find the link to the Survey at:
'''https://docs.google.com/forms/d/e/1FAIpQLSdzz8P6flgP7rcpkZYWIg70COCVvBaVA1VnWOqRcH4F6pTsjg/closedform'''
P.S. If you have been involved in multiple campaigns/contests, feel free to submit the form multiple times.
Looking forward to hearing and learning from you.
<small>-- [[User:SGill (WMF)|SGill (WMF)]] sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೧:೩೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:SGill (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:SGill_(WMF)/MassMessage_List&oldid=19169935 -->
== ಸಾಲೆಳೆಗ್ ಆಫ್ ಲೈನ್ ತುಳು ವಿಕಿಪೀಡಿಯ ಯೋಜನೆಗ್ ಗ್ರಾಂಟ್ ಬೇಡಿಕೆ ==
ತುಳು ವಿಕಿಪೀಡಿಯನು ಬುಳೆಪ್ಪಾಯೆರೆ ೨೦೧೬ ಜುಲೈಡ್ದ್ ೨೦೧೭ ಜೂನ್ ದಿಂಜಿದ ಸಮಯೊಡ್ ಒಂಜಿ ಯೋಜನೆ ಮಲ್ತ್ದ್ ಕೊರ್ದಿತ್ತೊ. ಅಯಿನ್ ನಿಕುಲು ತೂದಿಪ್ಪರ್. ಅವ್ವೇ ಆಲೋಚನೆನ್ ಇತ್ತೆ ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಬುಳೆಪ್ಪಾಯೆರೆಗಾದ ೨೦೧೯ಡ್ದ್ ೨೦೨೦ ಅಕೇರಿ ಮುಟ್ಟ, ಈ ಒಂಜಿ ವರ್ಸೊಡು CIS-A2K ಗ್ ಒಂಜಿ ಯೋಜನೆಯಾದ್ ತಯಾರ್ ಮಲ್ತ್ ಕೊರೊಂದುಲ್ಲೊ. [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]] ಈ ಪುಟೊಡು ಸುಮಾರ್ ೭೦೦ ಲೇಖನೊ ತಯಾರಿಗ್ ಪಟ್ಟಿನ್ ತಯಾರ್ ಮಲ್ತ್ ದೀಡ್ತೊ. ಇತ್ತೆ ಈ ಯೋಜನೆನ್ CIS-A2K ಬೆಂಗಳೂರುಗು ಗ್ರಾಂಟ್ ಯೋಜನೆಯಾದ್ ಕೊರೊಂದುಲ್ಲೊ. ಈ ಬಗೆಟ್ ನಿಕ್ಲೆನ ಒಪ್ಪಿಗೆ ಬೋಡು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೩:೦೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
=== ನಿಕ್ಲೆನ್ ಒಪ್ಪಿಗೆನ್ ಸೂಚಿಸಲೆ ===
ಬೋಡುಂದು ಇಂಚ <nowiki>{{tick}}</nowiki> ಗುರುತು ಮಲ್ತ್ದ್ ಒಪ್ಪಿಗೆ ಸೂಚಿಸಲೆ
*'''ಎನ್ನ ಒಪ್ಪಿಗೆ {{tick}} ಉಂಡು'''. ೨೦೧೦ಗ್ [[ಕರ್ನಾಟಕ ತುಳು ಸಾಹಿತ್ಯ ಅಕಾಡೆಮಿ]] ೬ನೆ ಕ್ಲಾಸ್ಗ್ ತುಳು ಮೂಜನೆ ಬಾಸೆಯಾದ್ ಓದುನ ತಯಾರ್ ಮಲ್ತ್ಂಡ್. ಅಯಿಡ್ದ್ ಬುಕ್ಕೊ ೧೦ನೇ ಕ್ಲಾಸ್ದ ಬೂಕು ಆಂಡ್. ೨೦೧೮-೨೦೧೯ಗ್ ತುಳು ಎಂ.ಎ. ಸುರುವಾಂಡ್. ಇತ್ತೆ ೨೦೧೯-೨೦೨೦ಡ್ದ್ ಪದವಿ ತರಗತಿಗ್ ತುಳು ರಡ್ಡನೇ ಬಾಸೆಯಾದ್ ಕಲ್ಪಾಯೆರೆ ತಯಾರಾವೊಂದುಂಡು. ಇಂಚ ಮಾಂತ ಬೂಕುಲು ತಯಾರಾನಗ ಓದುನ ಜೋಕ್ಲೆಗ್ ಬೂಕುಲು ಒಲ್ಪ ತಿಕುವೊ ಪನ್ಪುನ ಯೋಚನೆ ಬರ್ಪುಂಡು. ಅಯಿಕಾತ್ರೊ ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಲೇಕನೊ ತಯಾರ್ ಮಲ್ಪುನೆ,ತುಳುತ ಬೂಕುಲೆನ್ ವಿಕಿಸೋರ್ಸ್ಗ್ ಸೇರಾವುನೆ, ತುಳು ವಿಕ್ಷನರಿನ್ ಬುಲೆಪಾವುನೆ ಇಂಚ ಪೂರ ಮಲ್ಲ ಯೋಜನೆಡ್ ಈ '''ಆಫ್ ಲೈನ್ ವಿಕಿಪೀಡಿಯ ಯೋಜನೆ'''ನ್ ಬೇಗೊ ತಯಾರ್ ಮಲ್ತ್ದ್ ಜೊಕ್ಲೆಗ್ ಓದೆರೆ ತಿಕುನ ಲೆಕೊ ಮಲ್ಪುನ ಈ ಎಡ್ಡೆ ಉದ್ದೇಸೊಗ್ ಎನ್ನ ಸಕಾಯೊ ಬುಕ್ಕೊ ಒಪ್ಪಿಗೆ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೩:೨೬, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ. ಉಂದ್ ಒಂಜಿ ದಿಂಜ ಎಡ್ಡೆ ಯೋಜನೆ. ಆಯಿನಾತ್ ಬೇಕ ಆವೊಡ್.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೫:೨೦, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ. ಅಂದ್ ಉಂದೊಂಜಿ ಲಾಯಿಕ್ ತ ಯೋಜನೆ, ತುಲುತ್ತ ಬೊಲಿಚಿಲಿಗಾತ್ ಇಂಚಿತ್ತಿ ಯೋಜನೆ ಅವೊಡಾಯಿನವು ಅಗತ್ಯ ಅತುಂಡು. - [[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೧೬:೦೪, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೧, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಪೂರ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಉಂದು ಬಾರಿ ಎಡ್ಡೆ ಯೋಜನೆ, ದುಂಬೆ ಆವೊಡಾಯಿನವು. ಆಯಿನಾತ್ ಬೇಗ ಆವಾಡ್.--[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೧:೪೫, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಪೂರ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಉಂದು ಎಡ್ಡೆ ಯೋಜನೆ. ಆಯಿನಾತ್ ಬೇಗ ಆವಡ್--[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೮:೦೯, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} [[ಬಳಕೆದಾರೆ:BENET G AMANNA|BENET G AMANNA]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BENET G AMANNA|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೧, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಆಯಿನಾತ್ ಬೇಗ ಆವೊಡು.--[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೨೦:೧೭, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}}.ಒಪ್ಪಿತ.[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೯:೧೧, ೨೯ ಜೂನ್ ೨೦೧೯ (IST).
*{{tick}} [[ಬಳಕೆದಾರೆ:Ashay vb|Ashay vb]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ashay vb|ಪಾತೆರ್ಲೆ]]) ೨೦:೦೮, ೨೬ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
===Oppose===
[[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]] ಯೋಜನೆ ಸರು ಅತ್ ರಡ್ಡು ವರ್ಷಲಾ [https://meta.wikimedia.org/wiki/Grants:Project/Pavanaja/Tulu_offline_Wikipedia_to_schools reject] ಅಂಡ್, ಆ ಪೇಜ್ ಮಾಲ್ತ್ ಏತ್ ಲೇಖನೊ ಅಂಡ್?. ಎರ್ಲಾ ಬರೆಯರ ಉಮೆದ್ಡ್ ಬತ್ತುಜ್ಜಿ. ರಡ್ಡ್ ಸರ್ತಿ ಗ್ರ್ಯಾಂಟ್ ಗ್ ಅರ್ಜಿ ಪಾಡ್ತ್ rejected ಅತ್ಂಡ್ .ದಿನೊ ಸಂಪಾದನೆ ಮಾಲ್ಪುನಕುಲು ಎರ್ಲಾ ಇಜ್ಜಿ?. ಎಂ.ಎ ತುಳು ಪಠ್ಯಗ್ ಬೊಡಯಿನ ಪಟ್ಟಿ ನಾನಲ, ಪಟ್ಟಿ ರೆಡಿ ಅತ್ ಜ್ಜಿ ?. ಪದವಿ ಕಾಲೇಜ್ ಗ್ ಬೊಡಯಿನ ಲೇಕನೊತ ಪಟ್ಟಿ ಅವೊಡಾತೆ. Update ಮಾಲ್ಪುನಕುಲು ಎರ್ಲಾ ಇಜ್ಜಿ, ದಾನೆ?. ಅಯಿಕ್ಕ್ ದುಂಬು ಒಟ್ಟಾರೆ ಪೊಂಡಾ ಎಂಚ.?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೯:೦೩, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
:[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|ಲೋಕೇಶ್]] ಸುರು ಮಲ್ತ್ನ [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ಯೋಜನೆ]] ರಿಜೆಕ್ಟ್ ಆಯಿನೆಗ್ ಈರೆ ಉತ್ತರೊ ಕೊರೊಡು. [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ಈ]] ಯೋಜನೆಗಾದ್ ಸುಮಾರ್ ೭೨೦ ದಾತ್ ಲೇಕನೊ ಪಟ್ಟಿ ಮಲ್ತ್ನಾರ್ ಲೋಕೇಶ್. ಸಂಪೊಲೊಪುನಕುಲು ಏರ್ಲಾ ಇಜ್ಜಿ ಪನ್ಪುನೆಡ್ದ್ ಈರೆ ಲೇಕನೊ ಮಲ್ಪುಲೆ. ಈರೆ ಇರೋದಗ್ ಕಾರನೊ ಸರಿ ಇದ್ದಿ. ದೂರುನೆಡ್ ದಾನೆ ಪ್ರೇಜನೊ? ಲೇಕನೊ ಪಟ್ಟಿ ತಯಾರ್ ಮಲ್ತ್ನಕುಲುಲಾ ಲೇಕನ ಬರೆಪುನ ಉಮೇದ್ಡ್ ಇಪ್ಪೊಡು. ದಾಯೆ ರಿಜೆಕ್ಟ್ ಆಂಡ್ ಪನ್ಪುನವು ಮುಲ್ಪ ಅಗತ್ಯೊ ಇದ್ದಿ. ತುಳುತ ಅಬಿಮಾನಿಲು ಮೆಚ್ಚ್'ದ್ ತುಳುತ ಬೇಲೆ ಮಲ್ಪುವೆರ್. ತುಳು ಎಂ.ಎ. ಬುಕ್ಕೊ ಪದವಿದ ಬೇಲೆಗ್ ಬೋಡಾಪುನಾತ್ ಲೇಕನೊಲೆ ಪಟ್ಟಿ ನಾನ ಆವೊಡಾತೆ. ಅವು ಬೇತೆನೇ ಆವೊಡಾಯಿನವು. ತುಳು ಸಮುದಾಯೊಡು ಈತನೇಟ್ ದಾಲಾ ಮನಸ್ತಾಪೊ ಇದ್ದಿ. ಬೊಡಿತ್ತಿನಾತ್ ಬೇಲೆ ಮಲ್ಪೆರೆ ಉಂಡು. ಅಯಿನ್ ಮಲ್ಪೆರೆ ಬೆರಿಸಾಯೊ ಕೊರ್ಲೆ. ಅಂಚನೆ ತುಳು ಸಮುದಾಯೊಡು ತುಳುನಾಡ್ದ ಅಪ್ಪೆ ಬಾಸೆದೊಟ್ಟುಗು ಕನ್ನಡೊದಕುಲುಲಾ ಸೇರೊಂದು ಬೆನ್ಪುನವು ಎಂಕ್ಲೆಗ್ ಪೆರ್ಮೆನೇ ಆಪುಂಡು. ಪೊಕ್ಕಡೆ ಕಿರಿಕಿರಿ ದಾಯೆ--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೬, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
: The project Tulu offline Wikipedia to schools ([[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]]) was started by [[User:Lokesha kunchadka|Lokesha Kunchadka]] himself. He has supported and endorsed the [[:m:Grants:Project/Pavanaja/Tulu offline Wikipedia to schools|grant request to WMF]] twice. It is surprising to see the same person is now opposing the idea started by himself. He has not given any scientific or logical reason to oppose. I think he is suffering from short term memory loss. His opinion need not be given any weightage as he is contradicting himself. (''This comment is written in English so that non-Tulu speaking people can understand'').--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೫೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|ಲೋಕೇಶ್]] ಮಂಗಳೂರು ವಿಶ್ವವಿದ್ಯಾನಿಯೊಡು ತುಳು ಸಂಶೋಧನೆ ಮಲ್ಪುನಕ್ಲ್ ಮಸ್ತ್ ಜನ ಉಲ್ಲೆರ್. ಅಕುಲು ಪೂರ ವಿಕಿಪೀಡಿಯೊಡು ಬೇಲೆ ಮಲ್ಪೊಡು. ಅವು ಬುಡ್ದ್ ನಮನ್ ನಮನೇ ದೂರೊಂದು ಕಾಲ ಹರನ ಮಲ್ಪುನೆರ್ದ್ ದಾದಾ ಲಾಭ? ತುಳುಟು ಮಲ್ಪುನ ಬೇಲೆ ಮಸ್ರ್ ಉಂಡು. ಆ ಬೇಲೆನ್ ನಮ ಕುಲ್ಲುದ್ ಚರ್ಚೆ ಮಲ್ತ್ ದ್ ಬೇಲೆ ಬೆಂದ್ಂಡ ಅಯಿತ್ತ ಪೊರ್ಲೆ ಬೇತೆ. ಲೋಕೇಶ್ ತುಳು ಪಾಠಬೂಕುದ ಕೆಲಸೊದ ಸುರುತ ಕಾರ್ಯಕರ್ತೆ, ಆರ್ ತುಳುತ್ತ ಜವ್ವನೆರೆನ್ ಒಟ್ಟು ಸೇರಾದ್ ಬೇಲೆ ಮಲ್ಪಾವುನಾರ್ --[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೫:೪೩, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
::# [[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|ಬದಿಕಾನ]] ಸರ್, ಬೆತೆ ಉದ್ದೇಶ ದಿತ್ ಪಾತೆರುನ ಅತ್ತ್ ಸರ್. Straight ಪಂಡಿನ ಪಾತೆರ ತಡೆಯರ ಅಪುಜ್ಜಿ ಅತಾ ಸರ್. ಕಲೆಂಕ್ ಮಾಲ್ಪುಜ್ಜಿ ಇತ್ತಿನ ವಿಚಾರ ಪಂಡಿನ. ಸರ್. ಕೆಲವೆರ್ ಪಿರಾವುಡ್ತ್ ಪಾತೆರುವೆರ್ ನಮಕ್ ಅಂಚಿನ ಅಭ್ಯಾಸ ಇಜ್ಜಿ. ನೇರ ಪನ್ಪುನನೆ, ಏರಾಂಟಲಾ ಅವಾಡ್ ತೂಯಾರ ಇಜ್ಜಿ. ಮೊನೆಗ್ ಬೊಡಾಯಿನಲೆಕೊ ಪಾತೆರುಜ್ಜಿ,ಸರ್.
# [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ಪಾಪ ಇಂಬೆರ್ ಗ್ರ್ಯಾಂಟ್ ಪೇಜ್ ಸರಿಯಾತ್ ತೂವಾಡ್. ಒಂಜಿ ಸರ್ತಿ support and endorse, ಬುಕ್ಕೊಂಜಿ ಸರ್ತಿ support ಮಾತ್ರೊ ಮಾಲ್ತಿನ , endorse ಮಾತ್ತಿಜ್ಜಿ. ಸರಿಯಾತ್ ತೂಲೆ ಒರ.
# [[ಬಳಕೆದಾರೆ:Kishorekumarrai|ಕಿಶೋರ್ ]] ಸರ್, ನೇರ ಪಣಿಯರ ಬಲ್ಲಿ ಅತೆ.ತಾಂತ್ರಿಕ ಬೆಲೆಗ್ ಸಂಬಂಧ ಮೂಜಿ ಕಾರ್ಯಕ್ರಮೊಡ್ ಸುಮಾರ್ ಟೆಂಪ್ಲೇಟ್ ಅನುವಾದ ಅತ್ ಇಪ್ಪು ಅತ ಸರ್. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೭:೨೩, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
== Editing News #1—July 2019 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''[[m:VisualEditor/Newsletter/2019/July|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]''
<div style="float:right;width:270px;margin-left:1em;border-style:solid;border-width:1px;padding:1em;">
[[File:VisualEditor-logo.svg|200px|center]]
<big>'''Did you know?'''</big>
<div class="thumbcaption" style="font-size: 90%;">
Did you know that you can use the visual editor on a mobile device?
Every article has a pencil icon at the top. Tap on the pencil icon [[File:OOjs UI icon edit-ltr.svg|frameless|16x16px]] to start editing.
'''<big>Edit Cards</big>'''
[[File:EditCards-v.20.png|alt=Toolbar with menu opened|center|frameless|250px]]
This is what the new '''Edit Cards for editing links''' in the mobile visual editor look like. You can try the prototype here: '''[[mw:Topic:V394zwrigth8ii7c|📲 Try Edit Cards]].'''
</div></div>
Welcome back to the [[mw:Editing|Editing]] newsletter.
Since [[m:VisualEditor/Newsletter/2018/October|the last newsletter]], the team has released two new features for the [[mw:VisualEditor on mobile|mobile visual editor]] and has started developing three more. All of this work is part of the team's goal to [[m:Wikimedia Foundation Annual Plan/2018-2019/Audiences#Outcome 3: Mobile Contribution|make editing on mobile web simpler]].
Before talking about the team's recent releases, we have a question for you:
<strong>Are you willing to try a new way to add and change links?</strong>
If you are interested, we would value your input! You can try this new link tool in the mobile visual editor on a separate wiki.
<em>Follow these instructions and share your experience:</em>
<strong>[[mw:Topic:V394zwrigth8ii7c|📲 Try Edit Cards]].</strong>
=== Recent releases ===
The mobile visual editor is a simpler editing tool, for smartphones and tablets using the [[mw:Reading/Web/Mobile#About|mobile site]]. The Editing team recently launched two new features to improve the mobile visual editor:
# [[mw:VisualEditor on mobile/Section editing|Section editing]]
#* The purpose is to help contributors focus on their edits.
#* The team studied this with an A/B test. [[mw:VisualEditor on mobile/Section editing#16 June 2019|This test showed]] that contributors who could use section editing were '''1% more likely to publish''' the edits they started than people with only full-page editing.
# [[mw:VisualEditor on mobile#March 1, 2019|Loading overlay]]
#* The purpose is to smooth the transition between reading and editing.
Section editing and the new loading overlay are '''now available to everyone''' using the mobile visual editor.
=== New and active projects ===
This is a list of our most active projects. [[mw:Help:Watching pages|Watch]] these pages to learn about project updates and to share your input on new designs, prototypes and research findings.
*[[mw:VisualEditor on mobile/Edit cards|Edit cards]]: This is a clearer way to add and edit links, citations, images, templates, etc. in articles. You can try this feature now. <em>Go here to see how:</em> [[mw:Topic:V394zwrigth8ii7c|📲 <em>Try Edit Cards</em>]].
*[[mw:VisualEditor on mobile/Toolbar refresh|Mobile toolbar refresh]]: This project will learn if contributors are more successful when the editing tools are easier to recognize.
*[[mw:VisualEditor on mobile/VE mobile default|Mobile visual editor availability]]: This A/B test asks: ''Are newer contributors more successful if they use the mobile visual editor?'' We are collaborating with [[mw:VisualEditor on mobile/VE mobile default#26 June 2019 %E2%80%93 Participating wikis and test start date|20 Wikipedias]] to answer this question.
*[[mw:VisualEditor on mobile/Usability improvements|Usability improvements]]: This project will make the mobile visual editor easier to use. The goal is to let contributors stay focused on editing and to feel more confident in the editing tools.
=== Looking ahead ===
* '''Wikimania:''' Several members of the Editing Team will be attending [[wmania:|Wikimania]] in August 2019. They will lead a session about mobile editing in the [[wmania:2019:Community Growth/Visual editing on mobile: An accessible editor for all|Community Growth space]]. Talk to the team about how editing can be improved.
* '''Talk Pages:''' In the coming months, the Editing Team will begin [[mw:Talk pages consultation 2019|improving talk pages]] and communication on the wikis.
=== Learning more ===
The [[mw:VisualEditor on mobile|VisualEditor on mobile]] is a good place to learn more about the projects we are working on. The team wants to talk with you about anything related to editing. If you have something to say or ask, please leave a message at [[mw:Talk:VisualEditor on mobile|Talk:VisualEditor on mobile]].
[[user:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:user_talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:user_talk:Whatamidoing (WMF)|talk]])
</div> ೦೦:೦೨, ೨೪ ಜುಲಾಯಿ ೨೦೧೯ (IST)
<!-- Message sent by User:Trizek (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=19175117 -->
== ಉಲ್ಲೆಕೊ ==
ರಡ್ಡು ತಿಂಗೊಲ್ದ್ ಇಂಚಿಗ್ ಲೇಖನೊ ಮಾಲ್ಪುಗಲು ಒಂಜಿ ಅತ್ತಂದೆ ರಡ್ಡ್ ಉಲ್ಲೆಕೊ ಕೊರ್ಪೆರ್ ಅತೆ ಉಲ್ಲೇಖ ಯಾವೊ?. ಇತ್ತೆ ಎಡ್ಮಿನ್ ದಾದ ಮಾಲ್ತೊಂದು ಉಲ್ಲೆರ್ ?. ದಾಯೆ ತೂಪುಜ್ಜಿ? ಅಯಿಕ್ಕ್ ಬೊಡಾಯಿನ ಟೆಂಪ್ಲೇಟ್ ಇಜ್ಜಿ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೧೧, ೧ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
:ಏರ್ ಉಲ್ಲೇಕೊ ಕೊರ್ಪುಜ್ಜೆರುಂದ್ ತೂಪುನೆ ಅಡ್ಮಿನ್ ಬೇಲೆ ಅತ್ತ್. ವಾ ಟೆಂಪ್ಲೇಟ್ ಇಜ್ಜಿ? ಅಯನ್ ಒಲ್ತ್ ಇಂಪೋರ್ಟ್ ಮಲ್ಪೊಡು? ಅಯಿನ ಕೊಂಡಿ ಬೋಡು.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೦೭:೦೫, ೨ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
== '''Folk-a-thon''' ತುಳುನಾಡ್ದ ಮಾಜಿತ್ ಪೋಪುನ ನಲಿಕೆದ ಪಠ್ಯ ಪ್ರದರ್ಸನೊ ಬೊಕ್ಕ ಡಾಕ್ಯುಮೆಂಟೆಷನ್ ==
ತುಲುವೆರ್ ಒಂಜಿ ವರ್ಸೊದ ಬೇತೆ ಬೇತೆ ತಿಂಗೊಲುಡು ಬೇತೆ ಬೇತೆ ನಲಿಕೆಲು ನಡತೊಂತಿತ್ತ್ಂಡ್. ಇನಿ ಅವು ಪ್ರದರ್ಸನ ಆವಾಂದೆ ಮಾಜೊಂದು ಬರೊಂದುಂಡು. ಮಸ್ತ್ ನಲಿಕೆಲೆನ ಬಗೆಟ್ ಪಟ, ವಿಡಿಯೋ, ಅಡಿಯೋ ಮಾತ ತಿಕೊಂದು ಇಜ್ಜಿ. ಅಂಚಾಯಿನೆಡ್ಧ್ ಅಯಿನ್ Wikicommons ಒಂಜೆ ಕಡೆಟ್ಟ್ ತಿಕುನಂಚ ಮಾಲ್ಪೆರೆ ಬೋಡಾದ್ ನಲಿಕೆಲೆನ ಪಟ, ವೀಡಿಯೋ, ಅಡಿಯೋಲೆನ್ ಅಚ್ಚಿ ಪತ್ತಪುನ ಬೇಲೆಗ್ ನಿಕುಲೆನ ಮಾತ ಬಲ/ಸಕಾಯೊ ಬೋಡು. ನನಾದ ದಿನೊಕುಲೆಡ್ ತುಲುವ ಜೋಕುಲೆಗ್, ಸಂಶೋಧನೆಗ್ ಮಸ್ತ್ ವಿಸಯೊಲು ಬೋಡಾಪುನೆರ್ದ್ ನಲಿಕೆಲೆನ್ ಡಾಕ್ಯುಮೆಂಟೆಷನ್ ಮಲ್ತ್ ದ್ ದೀಡ್ಂಡ ಮಸ್ತ್ ಸಕಾಯೊ ಅವು. ಜಾನಪದ ನಲಿಕೆದ ಕರಜನೊಲ ಅಪುಂಡು. ಉಂದು ವಿಕಿಪೀಡಿಯ ವ್ಯವಸ್ಥೆಡ್ ತುಲು ಜಾನಪದ ನಲಿಕೆಲೆನ್ ಸೇರವುನ ಸುರುತ್ತ ಬೇಲೆ. [https://meta.wikimedia.org/wiki/CIS-A2K/Requests#Folk-a-thon:_A_Text-Performance-Documentation_and_Reconstruction_of_rare_Folk_Performing_Arts_of_Tulunadu ಮುಲ್ಪ] ನಿಕುಲೆನ ಒಪ್ಪು ಪಾಡ್ಲೆ ಸೊಲ್ಮೆಲು. ಮ - --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೧೧:೪೮, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಡ್ಡೆ ಬೇಲೆಗ್ ಎಂಕ್ಲೆನ ಬೆರಿ ಸಾಯೊ ಉಂಡು. ತುಲು ವಿಕಿತ ಮಾತೆಕ್ಲಾ ಇಂದೆತ ಪ್ರೇಜನೊ ಆವು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೪:೦೫, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--Document ಮಾಲ್ಪುಲೆ. ಈ ತಿಂಗೊಲು ಸೋಣದ ಜೋಗಿ ಕುಣಿತ ನಡಪ್ಪಂಡು.ಎಚ್ಚರ ದಿತ್ document ಮಾಲ್ಪುಲೆ ಒಟ್ಟಾರೆ ಮಾಲ್ಪುನ ಅತ್ತ್ ಕಲಾವಿದೆರೆಗ್ ಲಾ ಬೆಲೆ ಕೊರ್ತ್ ಬೆಲೆ ಮಾಲ್ಪುಲೆ, ಕಲಾವಿದೆರೆನ ಪಾತೆರ ಕೇಣ್ಲೆ.ಮಸ್ತ್ ವಿದ್ವಾಂಸೆರ್ ಮಾಲ್ತಿನ ತಪ್ಪು ಅಯರ ಬಲ್ಲಿ. .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೬, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಡ್ಡೆ ಬೇಲೆ. ಉಂಡು ಆವೊಡೆ. ಎನ್ನ ಸಾಯ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೦೬, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಂಕ್ಲೆನ ಬೆರಿ ಸಹಾಯೊ ಉಂಡು---[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೫:೨೪, ೧೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಬಾರಿ ಎಡ್ಡೆ ಆಲೋಚನೆ, ಉಂದು ತುಲುತ್ತ ಮಾತೆರ್ ಲಾ ಸೇರ್ ದ್ ಮಲ್ಪೊಡಾಯಿನ ಬೇಲೆ. ಉಂದು ಆವೊಡೇ. ಎನ್ನ ಎಡ್ಡೆಪ್ಪು ಬೊಕ್ಕ ಸಕಾಯೊ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೩೫, ೧೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
* -- ತುಳು ಸಂಸ್ಕ್ರುತಿದ ತಿಂಗೊಲುಡು ಬರ್ಪಿನ ನಲಿಕೆದ ಸಾಕ್ಷ್ಯ ಸಂಕಲನಲು ಬೋಡು. ಬಾರಿ ಎಡ್ಡೆ ಯೊಚನೆ ಆದುಂಡು, ಎನ್ನ ಒಪ್ಪಿಗೆ ಬೊಕ್ಕ ಸಕಾಯ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೮, ೨೦ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
{{clear}}
== Project Tiger 2.0 ==
''Sorry for writing this message in English - feel free to help us translating it''
<div style="align:center; width:90%%;float:left;font-size:1.2em;margin:0 .2em 0 0;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[File:PT2.0 PromoMotion.webm|right|320px]]
Hello,
We are glad to inform you that [[m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|'''Project Tiger 2.0/GLOW''']] is going to start very soon. You know about Project Tiger first iteration where we saw exciting and encouraging participation from different Indian Wikimedia communities. To know about Project Tiger 1.0 please [[m:Supporting Indian Language Wikipedias Program|'''see this page''']]
Like project Tiger 1.0, This iteration will have 2 components
* Infrastructure support - Supporting Wikimedians from India with internet support for 6 months and providing Chrome books.
* Article writing contest - A 3-month article writing contest will be conducted for Indian Wikimedians communities. Following community feedback, we noted some community members wanted the process of article list generation to be improved. In this iteration, there will be at least two lists of articles
:# Google-generated list,
:#Community suggested a list. Google generated list will be given to the community members before finalising the final list. On the other hand, the community may create a list by discussing among the community over Village pump, Mailing list and similar discussion channels.
Thanks for your attention,<br/>
[[User:Ananth (CIS-A2K)]]<br/>
Message sent by [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೨, ೨೦ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
</div>
</div>
<!-- Message sent by User:Tulsi Bhagat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19312574 -->
{{clear}}
== Project Tiger important 2.0 updates ==
<div style="align:center; width:44%;float:left;font-size:1.2em;height:22em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<div style="color:Red;font-size:1.5em;text-align:center;"> '''Infrastructure support'''</div>
[[File:Project Tiger Community Based Applications.png|280px|upright|right]]
Did you know that applications for Chromebooks and Internet stipends under [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|Project Tiger 2.0]] are open since 25th August 2019?<br/>
We have already received 35 applications as of now from 12 communities. If you are interested to apply, please visit the [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support| '''support page''']] and apply on or before 14 September 2019.
</div>
</div>
<div style="align:center; width:44%;float:left;font-size:1.2em;height:22em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<div style="color:Red;font-size:1.5em;text-align:center;"> '''Article writing contest'''</div>
[[File:Project Tiger Media post Black.png|280px|upright|right]]
As part of the article writing contest of Project Tiger 2.0, we request each community to create their own list by discussing on the village pump and put it on respective [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest#Topics|'''topic list''']].
We also request you to create a pan India article list which needs to be part of writing contest by voting under each topic [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Topics/Proposal for additional items with pan-national interests|'''here''']]
</div>
</div>
{{clear}}
For any query, feel free to contact us on the [[:m:Talk:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|'''talk page''']] 😊<br/>
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೦, ೨೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19312574 -->
== Wikimedia movement strategy recommendations India salon ==
''Please translate this message to your language if possible.''
[[File:Talk-icon-Tamil-yesNO.svg|right|120px]]
Greetings,<br/>
You know Strategy Working Groups have published draft recommendations at the beginning of August. On 14-15 September we are organising a strategy salon/conference at Bangalore/Delhi (exact venue to be decided) It'll be a 2 days' residential conference and the event aims to provide a discussion platform for experienced Wikimedians in India to learn, discuss and comment about the draft recommendations. Feedback and discussions will be documented.
If you are a Wikipedian from India, and want to discuss the draft recommendations, or learn more about them, you may apply to participate in the event.
Please have a look at the '''[[:m:CIS-A2K/Events/Wikimedia movement strategy recommendations India salon|event page for more details]]''' The last date of application is 7 September 2019.
It would be great if you share this information who needs this. For questions, please write on the event talk page, or email me at tito+indiasalon@cis-india.org
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] sent through [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೪:೪೫, ೨ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs/1&oldid=19346824 -->
== Project Tiger Article writing contest Update ==
{{clear}}
''Sorry for writing this message in English - feel free to help us translating it''
<div style="align:center; width:90%;float:left;font-size:1.2em;height:20em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#F9ED94;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hello all,
We would like to give some of the important updates about Project Tiger 2.0.
[[File:Emoji u1f42f.svg|frameless|right|100px]]
* It was informed about the community-generated list for the Article writing contest. The deadline for this has been extended till '''30 September 2019''' since few communities are working on it.
* We are expecting the Project Tiger 2.0 article writing contest to begin from 10 October 2019 and also there is a need for creating the [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest|writing contest page]] in the local Wiki's if you are interested to help please contact [[User talk:Nitesh (CIS-A2K)]] & [[User talk:SuswethaK(CIS-A2K)]].
Looking forward to exciting participation this year! Please let us know if you have any doubts.
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]]<br/>sent by [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೫:೧೦, ೨೭ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
</div>
</div>
{{clear}}
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19346827 -->
== GLOW edit-a-thon starts on 10 October 2019 ==
<div style="border:8px black ridge; background:#f2df94;">
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
Hope this message finds you well. Here are some important updates about [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|Project Tiger 2.0/GLOW edit-a-thon]].
* The participating communities are requested to create an '''[[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest|event page on their Wikipedia]]''' (which has been already updated with template link in the last post). Please prepare this local event page before 10 October (i.e. Edit-a-thon starting date)
* All articles will be submitted here under Project Tiger 2.0. Please copy-paste the fountain tool link in the section of submitted articles. Please see the links '''[[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest#Statistics|here on this page]]'''.
Regards. -- [[User:Nitesh (CIS-A2K)]] and [[User:SuswethaK(CIS-A2K)]] (on benhalf of Project Tiger team) <small>using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೦೧:೧೧, ೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)</small>
</div>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Project Tiger 2.0: Article contest jury information ==
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]We want to inform you that Project Tiger 2.0 is going to begin on 10 October. It's crucial to select jury for the writing contest as soon as possible. Jury members will assess the articles.
Please start discussing on your respective village pump and '''[[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|add your name here]]''' as a jury for writing contest if you are interested. Thank you. --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೬, ೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Proposal of WikiConference India 2020 in Hyderabad ==
Dear all, I am posting this message on behalf of Wikimedians from Andhra Pradesh and Telangana, who, as some of us might already know, have come forward to host WikiConference India 2020 in Hyderabad. A national conference will help us to connect from people from other communities, share knowledge, learn new stuff, and come closer to the Wiki-family. The last conference happened in 2016, and there was nothing for the past three years. Lack of such activities will make individual communities be disconnected from other communities, and this hampers the progress of Indian community as a whole. It is high time that we have the next conference as soon as possible. Since no one came forward in the last three years, and Hyderabad well-connected is all ways, I think this is a good opportunity to be supportive of.
But they would like to gather support from all the communities as a whole before proceeding, rather than just based on individual support, to be inclusive and add more credibility. So it would be good to have consensus among us to support the conference, and endorse it.
There is a Meta-Wiki page which clearly outlines the proposal and their plan, please have a look it at [[m:WikiConference India 2020: Initial conversations|here]]. Endorsements from other communities can be seen at [[WikiConference_India_2020:_Initial_conversations#Community_endorsements|this section]]. Please go through the page, and give your support in the section below, so that we can also be a part of this initiative. It would be great if our community endorses this at the earliest possible, so that the organisers can proceed to further steps without much delay, at the latest by 18 October 2019. This is to be in-line grant funding guidelines by December, which also require a community engagement survey to be done before developing the grant proposal in November. [[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೪:೩೦, ೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
===Support===
===Discussion===
== ಅಗತ್ಯವಾತ್ ಬೊಡಾಯಿನ ಟೆಂಟ್ಲೆಟ್(template import) ==
#[https://en.wikipedia.org/wiki/Template:Cite_AV_media Cite AV media]
#[https://en.wikipedia.org/wiki/Template:Cite_AV_media_notes Cite AV media notes]
#[https://en.wikipedia.org/wiki/Template:Cite_book Cite book]
#[https://en.wikipedia.org/wiki/Template:Cite_conference Cite conference]
#[https://en.wikipedia.org/wiki/Template:Cite_encyclopedia Cite encyclopedia]
#[https://en.wikipedia.org/wiki/Template:Cite_episode Cite episode]
#[https://en.wikipedia.org/wiki/Template:Cite_interview Cite interview]
#[https://en.wikipedia.org/wiki/Template:Cite_journal Cite journal]
#[https://en.wikipedia.org/wiki/Template:Cite_magazine Cite magazine]
#[https://en.wikipedia.org/wiki/Template:Cite_map Cite map]
#[https://en.wikipedia.org/wiki/Template:Cite_news Cite news]
#[https://en.wikipedia.org/wiki/Template:Cite_newsgroup Cite newsgroup]
#[https://en.wikipedia.org/wiki/Template:Cite_press_release Cite press release]
#[https://en.wikipedia.org/wiki/Template:Cite_report Cite report]
#[https://en.wikipedia.org/wiki/Template:Cite_serial Cite serial]
#[https://en.wikipedia.org/wiki/Template:Cite_speech Cite speech]
#[https://en.wikipedia.org/wiki/Template:Cite_techreport Cite techreport]
#[https://en.wikipedia.org/wiki/Template:Cite_thesis Cite thesis]
ಈತ್ ಟೆಂಟ್ಲೆಟ್ ತುಳು ವಿಕಿಪೀಡಿಯತ ಗುಣಮಟ್ಟ ಸುಧಾರಣೆಗ್ ಬೊಡಾಪುಂಡು, ಬೇಗ ಮಾಲ್ತ್ ಕೊರ್ಲೆ(plz template import) .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೫೦, ೨೯ ಜೂನ್ ೨೦೧೯ (IST)
:From where to import? Link to original template please.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೫:೧೫, ೧೦ ಜುಲಾಯಿ ೨೦೧೯ (IST)
:: [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ಇತ್ತೆ ಲಿಂಕ್ ಪಾಡ್ತೆ ಪೂರೆಗ್ಲಾ ಅತ್ ಟೆಂಪ್ಲೇಟ್ ಬೊಡು--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೪೩, ೨೫ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::ಈ ಟೆಂಪ್ಲೇಟುಲು ಕನ್ನಡೊಟು ಉಂಡಾ? ಇತ್ತ್ಂಡ ಅಲ್ತ್ ಇಂಪೋರ್ಟ್ ಮಲ್ಪುನೆ ಎಡ್ಡೆ. ಅಪಗ ಅನುವಾದ ಬೇಕ ಆಪುಂಡ್--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೦೭:೦೫, ೨೬ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::: ಮನಸ್ಸಿಜ್ಜಿ ಇನ್ ಪೊರ್ಟ್ ಮಾಲ್ಪಿಯರ ಪನ್ಲೆ?. ಪೊಕ್ಕಡೆ ಅಲ್ಪ ಉಂಡಾ, ಮುಲ್ಪಾ ಉಂಡಾಂದ್ ನರ್ಜಗುಂನ ಬೊಡ್ಚಿ. ಟೆಂಪ್ಲೇಟ್ ಟ್ರೈನಿಂಗ್ ಬತ್ತಿನನಕಲ್ಲು ಉಲ್ಲೆರ್ ಅನುವಾದ ಮಾಲ್ಪಿಯರ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೪೧, ೨೬ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::: [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]]Template import ಮಾಲ್ಪುಜ್ಜಾಯರಾ?..
:::::ವಿಸಯೊ ಗೊತ್ತಿಜ್ಜಾಂತೆ ಪಾತೆರಿಯರೆ ಬಲ್ಲಿ. ಇಂಗ್ಲಿಷ್ ವಿಕಿಪೀಡಿಯಡ್ದ್ ಟೆಂಪ್ಲೇಟು ಆತಿಜ್ಜಿ. ದಿಂಜ ಸರ್ತಿ ಟ್ರೈ ಮಲ್ತೆ. ಇನಿ ಕನ್ನಡಡ್ದ್ ಮಲ್ತೆ. ಬತ್ತುಂಡು. ಮಾತ ಟೆಂಪ್ಲೇಟುಲೆನ್ ತುಳುಕ್ ಅನುವಾದ ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೩, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:::::ವಿಕಿಪೀಡಿಯದ ಬೇಲೆ ಸ್ವತಂತ್ರವಾದ್ ಮಲ್ಪುನವು. ಉಂದೆಕ್ ಏರ್ ಲಾ ಒತ್ತಾಯ ಅಂತ್ಂಡ ಅಧಿಕಾರ ಚಲಾವಣೆ ಮಲ್ಪೆರೆ ಆವಂದ್. ತೀರ್ಂಡ ಬರವುನು ಮಲ್ಲೆ ಮಲ್ಪನ ಬೇಲೆ ಮಲ್ಪುಲೆ. ಅಂಚನೆ ಆಡ್ಮಿನ್ ನ ಬೇಲೆ ಪುರುಸೋತ್ತು ಉಪ್ಪುನಗ ಬೇಲೆ ಮಲ್ಪುನೆ ಅತ್ತಂದೆ ಅಯಿನೇ ತೂವೊಂದು ಉಪ್ಪುನವು ಅತ್ತ್. ಒಂತೆ ಗೌರವೊಡು ಪಾತೆರುನವು ಎಡ್ಡೆ.[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೦೯, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::::::[[ಬಳಕೆದಾರೆ:Kishorekumarrai|ಕಿಶೋರ್ ಸರ್]] ಇದನ್ನು ಗಮನಿಸಿ[[:en:Wikipedia:Administrators' reading list]]. ಎಡ್ಮಿನ್ ವಿಷಯ ಸಂಪೂರ್ಣ ಮಾಹಿತಿ ಇದರಲ್ಲಿ ಇದೆ ಪೂರ್ತಿ ಓದಿ. ಎಡ್ಮಿನ್ ಜೂನ್ ಬಳಿಕ ಯಾವುದೆ ಎಡಿಡ್ ನಿನ್ನೆಯವರೆಗೆ ಬೇರೆ ಯಾವುದೆ wiki project ನಲ್ಲಿ ಮಾಡಿಲ್ಲವೆ?. ಎಡ್ಮಿನ್ ಕೆಲಸ ಏನಿದೆ ಅದನ್ನು ಅತ ಮಾಡಬೇಕು ಹೊರತು, ಎರಡು ಬಗೆಯುವುದಲ್ಲ. ಬರಿ ಉದ್ದದ ಲೇಖನಕ್ಕೆ ಉಲ್ಲೇಖ ಎಲ್ಲಿಂದ ಹಾಕುವಿರಿ?. ಕಳೆದ ಆರು ತಿಂಗಳಿಂದ ಎಷ್ಟು ಲೇಖನ ನಕ್ಕೆ ಎಷ್ಟು reference ಹಾಕುತ್ತಿದ್ದಿರಿ ಸರ್ ಹೇಳಿ ನೊಡೊಣಷ. Reference ಹಾಕೊದಕ್ಕೆ ಅನುಕೂಲ ಅಗುವ ದೃಷ್ಟಿಯಿಂದ ಕೇಳಿದರೆ ತಪ್ಪೆ?. ಇಷ್ಟು ಸಮಯ ಎಡ್ಮಿನ್ ನಿದ್ರೆಯಲ್ಲಿ ಇದ್ದರಾ??.ಎಷ್ಟು ಟೆಂಪ್ಲೇಟ್ ಅಮದು ಮಾಡಿದರು ಪಟ್ಟಿ ನೀಡಲಿ?. ಇನ್ಯಾರದೊ ಮಾತು ಕೇಳಿ ಮಾತಾಡುವ ಬದಲು ಸ್ವಂತಿಕೆ ಇದ್ದರೆ ಒಳ್ಳೆಯದು ಸರ್ (ನಿಮ್ಮಂತ ದೊಡ್ಡವರಿಗೆ ಹೇಳಬಾರದು ಅದರೂ ,ಚಿಕ್ಕವನಾದರೂ ಈ ಮಾತು ಹೇಳಬೇಕೆನಿಸಿತ್ತು ಅದಿಕ್ಕೆ ಹೇಳಿದೆ) ಮೇಲೆನಮ ಹಾಕಿದ ವಿಷಯವನ್ನು ದಾರಿ ತಪ್ಪಿಸ ಬೇಡಿ--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೮, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::ತುಳುಟೊಂಜಿ ಗಾದೆ ಉಂಡು, `ಬೆಂಜನೊಡು ಕಲ್ಲ್' ಪಂಡ್ದ್. ಅಂಚ ಉಂಡು ಕೆಲವೆರೆ ಪರಿಸ್ಥಿತಿ. ಯಾನಾದ್ ಬೇಲೆ ಮಲ್ಪುಜಿ, ಬೇತೆಕುಲು ಬೇಲೆ ಮಲ್ತ್ಂಡ ಅಯಿಟ್ಟ್ ತಪ್ಪು ನಾಡುನೆ. ತೀರ್ಂಡ ಬೇಲೆ ಮಲ್ಪೊಡು ಇಜ್ಜಾ ಬಾಯಿ ಮುಚ್ಚಿದ್ ತನ್ನ ಬೇಲೆ ಮಲ್ತೊಂದು ಪೋವೊಡು. ಅವು ಬುಡ್ದ್ ಅಯೆ ಅಂಚ ಮಲ್ತೆ, ಇಂಬಿಯೆ ಇಂಚ ಮಲ್ತೆ ಪಂಡೊಂದು ತಿರುಗುನೆ ದಾಯೆ. ಅಕ್ಲೆಗ್ ಬೋಡಾಪಿ ಲೆಕೊ ಅಕುಲು ಮಲ್ತೊಂದು ಉಪ್ಪುವೆರ್. ಏರೆಗ್ಲಾ ಬತ್ತಿ ಸೂತಕ ದಾನೆ. ಮಾತೆರ್ ಲಾ ಒಟ್ಟು ಸೇರ್ ದ್ ಬೇಲೆ ಬೆನ್ಕ. ಉಂದೆಟ್ಟ್ ಏರ್ ಲಾ ಪನವುಗಾದ್ ಬೆನ್ಪುನಕ್ ಲತ್ತ್. ತನ್ಕುಲೆ ಮನಸ್ದ ಕುಸಿಕಾದ್ ಬೆನ್ಪುನೆ ಪನ್ಪುನವು ನೆನೆಪುಡು ಇತ್ತ್ಂಡ ಎಡ್ಡೆ. [[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೨೪, ೩೦ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::ಎಡ್ಮಿನ್ ಸೈತೆರಾ.... ?. ದಾಯೆ import ಮಾಲ್ಪುಜ್ಜಿ ಪಣಾಡ್, reason ದಾದಂದ್ ಗೊತ್ತಾವಾಡ್. ಬೇತಾಯೆನ್ ಚು ಬುಡ್ಪುನಿ ಅತ್ತ್. ಇಜ್ಜಿಯಾಂಟ adimnship ನ್ deactivate ಮಾಲ್ಪಾಡ್?. ಕುಂಬಳ ಕಾಯಿ ಕಳ್ಳ ಎಂದಾಗ ಏಕೆ ಹೆಗಲು ಮುಟ್ಟಿ ನೋಡುತ್ತಿದ್ದೀರಿ ಸರ್?.. ನಮಕ್ ಬೆಲೆ ಅವೊಡ್. ಇಜ್ಜಿಯಾಂಟ reference ಇಪ್ಪಾಂತೆ ಲೇಖನ ಬರು.. ಅಪಗ ದಾದ ಮಾಲ್ಪರ್ ಪನ್ಲೆ. ಒಂಜಿ ಪಾಲಿಸಿ ಇತ್ನೆ ಮುಟ್ಟ ತುಳುಕ್ಕು ಮಾಲ್ತಿಜ್ಜಿ ದಾಯೆ. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೦೦, ೩೦ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::@[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] This is a case of violation of Wikipedia's friendly space policy. I am warning you not to use this kind of foul language. One more such instance, you will be banned from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೩, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
: ಪೊಕ್ಕಡೆ ಪಾತೆರುನೆಡ್ದ್ ಈರೆ ಸುರು ಮಲ್ಪುಲೆ. ಏರೆಗ್ಲ ಗುತ್ತಿಗೆ ಕೊರ್ತ್'ರ್.[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೬:೧೫, ೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:::ಬದಿಕಾನ ಸರ್, ಕಿಶೋರ್ ಸರ್ ನಡುವಲ್ಲಿ ಬಂದು ಬಾಯಿಹಾಕಿದ್ದು. ನಾನು ಕೇಳುತ್ತಿರುವುದು ಟೆಂಪ್ಲೇಟ್ ಅಮದು ಮಾಡಿ ಕೊಡಿ ಎಂದು, ಅಮದು ಮಾಡುವ ಹಕ್ಕು ಇರುವುದು ಎಡ್ಮಿನ್ ಒಬ್ಬರಿಗೆ, ಬೇರೆ ಯಾರಿಗೂ ಇಲ್ಲ. ನಮಿಗೆ ಆದರೆ ಕೇಳುತ್ತಿದೇನಾ?. ನಮ್ಮ ತುಳು ವಿಕಿಪೀಡಿಯದ ಗುಣಮಟ್ಟ ಸುಧಾರಣೆ ಮಾಡಲು ಅನುಕೂಲ ಆಗುತ್ತದೆ. ಸಹಕಾರ ನೀಡದಿದ್ದರೆ ಮುಂದೇನು ಮಾಡಬೇಕು ಅದನ್ನೆ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಸರ್. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೦:೫೪, ೨ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== template ಬೊಡು ==
*[https://en.wikipedia.org/wiki/Template:Copy_edit Copy edit]
* [https://en.wikipedia.org/wiki/Template:Refexample Ref improve]
* [https://en.wikipedia.org/wiki/Template:Wikify Wikify]
* [https://en.wikipedia.org/wiki/Wikipedia:Template_messages/Merging Merge]
* [https://en.wikipedia.org/wiki/Template:Advert Advert]
* [https://en.wikipedia.org/wiki/Template:Unreferenced Reference]
* [https://en.wikipedia.org/wiki/Template:Copy_to_Wikisource Copy to Wikisource]
* [https://en.wikipedia.org/wiki/Template:Underlinked Underlinked]
* [https://en.wikipedia.org/wiki/Template:Copy_to_Wiktionary Copy to Wiktionary]
* [https://en.wikipedia.org/wiki/Template:Merging_from Merging from]
ಇತ್ template ಅಗತ್ಯ ಉಂಡು. ಇತ್ತೆ.import ಮಾಲ್ಪುಲೆ link ಪಾಡ್ತೆ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೫:೪೦, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:ಎಡ್ಮಿನ್ ಯಾಕೆ ಟೆಂಪ್ಲೇಟ್ import ಮಾಡುತ್ತಿಲ್ಲ.?. ಅದಕ್ಕೆ ಸೂಕ್ತ ಕಾರಣ ಕೊಡಿ? ಚಿಕ್ಕ ಲೇಖನವನ್ನು ಕೆಲವರು ಮತ್ತೆ ಮುಂದುವರಿಸಿದ್ದಾರೆ ಅದಕ್ಕೆ ಎಡ್ಮಿನ್ ಸಾತ್ ಕೊಟ್ಟಿದ್ದಾರೆ ಎಂದು ಬಾವಿಸಬಹುದು ಅಲ್ವೆ? ವಿಕಿಪೀಡಿಯ ನಿಯಮವನ್ನು ಪಾಲಿಸದೆ ಲೇಖನ ಬರೆಯುವವರಿಗೆ ಎಡ್ಮಿನ್ ಬೆಂಬಲ ಕೊಟ್ಟಿದ್ದಾರೆ ಎನ್ನುವುದು ಸ್ಪಷ್ಟ.ಅದಕ್ಕಾಗಿ ಎಡ್ಮಿನ್ ಯಾವುದೆ ಟೆಂಪ್ಲೇಟ್ ತರದೆ ಇರುವುದು ಎನ್ನಬಹುದು. ವಿಕಿಪೀಡಿಯ ಮಾರ್ಗದರ್ಶಿ ಸೂತ್ರವನ್ನು ಮುರಿದು ಲೇಖನ ಬರೆಯುವಂತೆ ಎಡ್ಮಿನ್ ಹೇಳಿರಬಹುದು ಹಾಗೆಂದು ಗ್ರಹಿಸಬಹುದು?.!. ಎಡ್ಮಿನ್ ನಿಯಮವನ್ನು ಮುರಿದುದು ಸ್ಪಷ್ಟವಾಗಿ ಗೊಚರಿಸುತ್ತದೆ. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೪, ೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::ಇಂಗ್ಲಿಷ್ ವಿಕಿಪೀಡಿಯಡ್ದ್ ಟೆಂಪ್ಲೇಟು ಆತಿಜ್ಜಿ. ದಿಂಜ ಸರ್ತಿ ಟ್ರೈ ಮಲ್ತೆ. ಇನಿ ಕನ್ನಡಡ್ದ್ ಮಲ್ತೆ. ಬತ್ತುಂಡು. ಮಾತ ಟೆಂಪ್ಲೇಟುಲೆನ್ ತುಳುಕ್ ಅನುವಾದ ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೪, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== ಸರಿಪಡಿಸಿ ==
*[[ವಿಕಿಪೀಡಿಯ:ಸಮುದಾಯೊ ಪುಟೊ]] , [[ವಿಕಿಪೀಡಿಯ: ಚಾವಡಿ]]ಗೆ ಸಂಪರ್ಕ ಆಗುವುದಿಲ್ಲ.
*Under contraction ಟೆಂಪ್ಲೇಟ್ ನಲ್ಲಿ ತಪ್ಪಿದೆ ಸರಿ ಮಾಡಿ
* ವರ್ಗೊ:Pages with script errors ಇದನ್ನು ಯಾರು ಪಡಿಸೊದು???. ಎಡ್ಮಿನ್ ಏನು ಮಾಡುತ್ತಿದ್ದಾರೆ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೨೯, ೪ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::@[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] - You are once again violating Wikipedia's friendly space policy. This is final warning. If you once again personally attack any editor, you will be banned from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೫, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::@[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]]ರೆ, ಕಿಶೋರ್ ಕುಮಾರ್ ರೈ ಯವರು [[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ನನ್ನ ಸದಸ್ಯ]] ಪುಟದಲ್ಲಿ ಮಾಡಿದ್ದು ಏನು?. ಅದನ್ನು ಯಾಕೆ ಪ್ರಸ್ತಾಪಿಸಿಲ್ಲ?. '''ಒಂದು ಕಣ್ಣಿಗೆ ಬೆಣ್ಣೆ ಒಂದು ಕಣ್ಣಿಗೆ ಸುಣ್ಣ''' ಯಾಕೆ?.ತಪ್ಪು ಮಾಡಿದ್ದನ್ನು ಹೇಳಿದರೆ ತಪ್ಪೆ?. ನ್ಯಾಯವೆಂದಾದರೆ ಎಲ್ಲಾರಿಗೂ ಸಮಾನವಾಗಿರಲಿ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೬:೪೪, ೧೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== Project Tiger Article writing contest Jury Update ==
Hello all,
[[File:Emoji u1f42f.svg|frameless|right|100px]]
There are some issues that need to be addressed regarding the Juries of the Project Tiger 2.0 article writing contest. Some of the User has [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|shown interest]] to be a jury and evaluate the articles created as the part of the writing contest. But they don't meet the [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|eligibility criteria]]. Please discuss this aspect with the community, if the community feel that they have the potential to be a jury then we can go ahead. If not please make a decision on who can be the jury members from your community within two days. The community members can change the juries members in the later stage of the writing contest if the work done is not satisfactory or the jury member is inactive with the proper discussion over the village pump.
Regards, <br>
Project Tiger team at [[:m:CIS-A2K|CIS-A2K]] <br>
Sent through--[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೬:೨೧, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== Newbie Biting ==
We are all aware of Newbie biting. One editor by User:Lokesha kunchadka who is indulging in Newbie biting in Kannada and Tulu Wikipedias from almost last 2-3 months. He was issued a warning by the admin in Kannada Wikipedia, link is [https://kn.wikipedia.org/wiki/%E0%B2%B8%E0%B2%A6%E0%B2%B8%E0%B3%8D%E0%B2%AF%E0%B2%B0_%E0%B2%9A%E0%B2%B0%E0%B3%8D%E0%B2%9A%E0%B3%86%E0%B2%AA%E0%B3%81%E0%B2%9F:Lokesha_kunchadka#Newbie_biting here].
I have been conducting Diversity Editathons from last 3 months. One of the major aims of these editathons is to bring more women editors. Before the new editor completes the article this person jumps in and adds templates to imply the article is not of good quality. The new editors, especially the women editors, are scared to continue editing because of this newbie biting. Apart from this I had written an article on 13th October 2019 with the template Under constriction for which he commented saying there is no such topic. I was planning to complete the article with reference to the title today.
I would like to bring to the notice of the community and to hear suggestions from experienced people on how do deal with this kind of situation.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೭, ೧೪ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:Message copied from Kannada Wikipedia:
{{Quote|''ಅಕ್ಟೋಬರ್ ೧೨ ಮತ್ತು ೧೩ ರಂದು ಉಡುಪಿಯ ಮಹಿಳಾ ಕಾಲೇಜಿನಲ್ಲಿ ನೆಡೆದ ವೈವಿಧ್ಯತೆಯ ಸಂಪಾದನೋತ್ಸವಗಳು ೨೦೧೯ ರಲ್ಲಿ ನಮ್ಮ ಕಾಲೇಜಿನ ೧೯ ವಿದ್ಯಾರ್ಥಿನಿಯರು ಭಾಗವಹಿಸಿದ್ದರು. ಮಹಿಳಾ ವಿಜ್ಞಾನಿಗಳ ಬಗ್ಗೆ ಲೇಖನಗಳನ್ನು ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯಕ್ಕೆ ಸೇರಿಸಲಾಗಿತ್ತು. ಲೇಖನಕ್ಕೆ ಎರಡು ಉಲ್ಲೇಖಗಳು ಇರಲೇ ಬೇಕು, ಎಲ್ಲಾ ಲೇಖನಗಳಿಗೂ ಎರಡು ಉಲ್ಲೇಖಗಳನ್ನು ಸೇರಿಸಲಾಗಿತ್ತು. ಆದರೆ ಹೆಚ್ಚಿನ ಉಲ್ಲೇಖಗಳ ಅಗತ್ಯವಿದೆ ಎಂದು Lokesha kunchadka ರವರು ಟೆಂಪ್ಲೇಟ್ ಸೇರಿಸಿದ್ದಾರೆ. ಲೇಖನದ ಗುಣಮಟ್ಟದ ಮೇಲೆ ನಮಗೂ ಅರಿವಿದೆ. ಹೊಸಬರಿಗೆ ಹೆಚ್ಚಿನ ನಿಯಮವನ್ನು ತಿಳಿಸಿದರೆ ಅವರು ವಿಕಿಪೀಡಿಯಕ್ಕೆ ಬರೆಯಲು ಬರುವುದಿಲ್ಲ. ಈ ರೀತಿ ಮಾಡಿದರೆ ಹೊಸಬರು ನಿರುತ್ಸಾಹಗೊಳ್ಳುತ್ತಾರೆ. ನನ್ನ ಸ್ನೇಹಿತೆಯರು ಈಗ ಬರೆಯಲು ಹಿಂಜರಿಯುತ್ತಿದ್ದಾರೆ. ಕಾರಣ ಕೇಳಿದರೆ ನಾವು ಹಾಕಿದ ಲೇಖನದ ಉಲ್ಲೇಖಗಳು ಸರಿ ಇಲ್ಲ ಎಂದು ಬರುತ್ತಿದೆ ಮತ್ತು ಲೇಖನ ಸೇರಿಸಿದ ನಂತರ ಅದರಲ್ಲಿ ಉಲ್ಲೇಖದ ಅಗತ್ಯವಿದೆ ಎಂದು ಬರುತ್ತಿದೆ ಹಾಗಾಗಿ ನಾವು ಬರೆಯುವುದಿಲ್ಲ ಎಂದು ಹೇಳುತ್ತಿದ್ದಾರೆ. ನಾನು ಆ ಲೇಖನಗಳಿಗೆ ಅಗತ್ಯವಿರುವ ಉಲ್ಲೇಖಗಳನ್ನು, ಇನ್ಫೋಬಾಕ್ಸ್, ಆಂತರಿಕ ಮತ್ತು ಬಾಹ್ಯ ಕೊಂಡಿಗಳನ್ನು ಸೇರಿಸುತ್ತಿದ್ದೇನೆ. ಅಕ್ಷರಗಳು ಮತ್ತು ವಾಕ್ಯಗಳಲ್ಲಿ ತಪ್ಪಿದ್ದಲ್ಲಿ ಅದನ್ನೂ ಸರಿಪಡಿಸಿ ಲೇಖನ ಸೇರಿಸಿದ ವಿದ್ಯಾರ್ಥಿನಿಯರಿಗೆ ಅದರ ಬಗ್ಗೆ ತಿಳಿಸಿದ್ದೇನೆ ಕೂಡ. ಇದಲ್ಲದೆ ಕೆಲವು ಲೇಖನಗಳ ವಯಕ್ತಿಕ ಜೀವನ ಎಂಬ ವಿಭಾಗವನ್ನು ತೆಗೆದಿದ್ದಾರೆ. ಲೇಖನಗಳ ಗುಣಮಟ್ಟ ಕಡಿಮೆ ಇದ್ದರೆ ಯಾರು ಬೇಕಾದರು ಸರಿಪಡಿಸಬಹುದಲ್ಲ. ಅದಕ್ಕೆ ಟೆಂಪ್ಲೇಟ್ ಸೇರಿಸ ಬೇಕೆಂದಿಲ್ಲವಲ್ಲ. ಇದು ಹೊಸ ಲೇಖಕರ ಉತ್ಸಾಹವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತಿದೆ. ಈ ಸಮಸ್ಯೆಗೆ ಪರಿಹಾರವನ್ನು ಸಮುದಾಯದವರು ತಿಳಿಸಬೇಕಾಗಿ ಕೇಳಿಕೊಳ್ಳುತ್ತೇನೆ.--Arpitha05 (ಚರ್ಚೆ) ೧೪:೩೬, ೧೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (UTC) ''}}
::@[[User:Lokesha kunchadka]] - In spite of warnings, you are continuing your disruptive behaviour in Kannada and Tulu Wikipedias. This time you have also harassed newly joined woman editors. Explain me the reasons for your behaviour and give me reasons why you should not be barred from Kannada and Tulu Wikipedias? I am expecting a convincing logical answer by tomorrow--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೩:೧೫, ೧೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST) (Admin, Kannada and Tulu Wikipedias)
::೨೦೧೯ ಅಗಸ್ಟ್ ರಡ್ಡನೆ ತಾರೀಖ್ ತಾನಿ [[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]]ರೆ ಕೊರ್ತಿನ ಉತ್ತರೊ '''ಏರ್ ಉಲ್ಲೇಕೊ ಕೊರ್ಪುಜ್ಜೆರುಂದ್ ತೂಪುನೆ ಅಡ್ಮಿನ್ ಬೇಲೆ ಅತ್ತ್.''' --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೩, ೧೬ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::::@[[User:Lokesha kunchadka]] - Instead of answering to the warning, you are indulging in whataboutery. You are also continuing adding templates to articles indicating more references are needed. But you yourself have created articles with no reference or just one reference. The link to such article is [[ಪತೆಂಗ ಬೀಚ್|here]] and [[ರಾಜಶ್ರೀ|here]]. It is noticed that you are harassing newly joined woman editors. You have continued this in spite of warnings. Hence [[User:Lokesha kunchadka]] is barred from Tulu Wikipedia for a month. If the practice is continued after the expiry of the ban, [[User:Lokesha kunchadka]] will be barred permanently from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೭, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST) (Admin, Tulu Wikipedia)
:: ಎಡ್ಮಿನ್ ಬಾರಿ ಎಡ್ಡೆ ಬೇಲೆ ಮಲ್ತೆರ್. ಉಂದೆಕ್ಕ್ ಯಾನ್ ಪೂರ್ಣ ಪ್ರಮಾಣದ ಬೆಂಬಲ ಕೊರೊಂದುಲ್ಲೆ. ಉಂದು ಸುಮಾರ್ ದುಂಬೆ ಅವೊಡಂಡ್. ನನ ಅಂಚ ಮಲ್ಪುನಕ್ಲೆಗ್ ಬುದ್ಧಿಗಾಂಡ್[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೧, ೧೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
: ಸಮುದಾಯೊಡು ಎಚ್ಚಿಕಮ್ಮಿ ಪಾತೆರೊಕತೆ ಬನ್ನಗ ಮಾತೆರೆಕ್ಲ ಬೇನೆ ಆಪುಂಡು. '''ಅಡ್ಮಿನ್ ಸೈತೆರೋ''' ಪನ್ಪುನವು ಏರೆಗ್ಲಾ ಬೇನೆ ಆಪುನವು. ಆ ನಿಲೆಟ್ ಆನಿಯೇ ಅಡ್ಮಿನ್ ತೀರ್ಮಾನೊ ದೆತೊಂತೊಲಿ. ಒಂತೆ ಪೊರ್ತಾಂಡಲಾ ತೀರ್ಮಾನೊ ಮಲ್ತಿನವು ಎಡ್ಡೆ ಆಂಡ್. ಪೊಸಬೆರ್ ಬರೆನಗ ಎಡ್ಡೆ ಆಂಡ್ಂದ್ ಬೆರಿ ಬೊಟ್ಟೊಡು. ಅಲ್ಪಲಾ ಮಾತೆರೆಕ್ಲಾ ಕಿರಿಕಿರಿ ಆಂಡ್. ಅಂಚಾದ್ ಅಡ್ಮಿನ್ ಮಲ್ತಿನವು ಸದ್ಯೊಗು ಸರಿಂದ್ ಎನ್ನ ಒಪ್ಪಿಗೆ.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೯, ೧೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::ಎನ್ಬ ಒಪ್ಪ ಉಂಡು, ಕೊಂಪೆನ್ ಒಗ್ಗಟ್ ಡ್ ಕಟ್ಟೊಡಾಯಿನ ನೆಲೆಟ್ ಬೇಲೆ ಅವೊಡು ಬುಡುತ್ ಬೇತೆ ನೆಲೆತ್ತ ಅಲೋಚನೆತಕುಲೆಗ್ ಉಂದು ಅಗತ್ಯ ಮಾನ್ಪೊಡು.--[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೦೭:೫೯, ೧೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ==
ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಲೇಕನೊ ಬರೆಪುನ ಸ್ಪರ್ಧೆ ನಡತ್ತೊಂಡ್ತೊಂಡ್ತ್ ಉಂಡು. ಅಯಿನ ವಿವರೊ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0) ಮೂಲುಂಡು]. ತುಳು ಬಾಸೆಡ್ ಎಂಚಿನ ವಿಸಯೊಳೆನ್ ಬರೆವುಡು ಪಣ್ಪಿನ ಪಟ್ಟಿ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest/Topics/Tulu ಮೂಲುಂಡು]. ಆ ಪಟ್ಟಿಡ್ತ್ ವಿಸಯೊ ಆಯ್ಕೆ ಮಲ್ತುದ್ ಬರೆಲೆ. ಬೊಕ್ಕ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest ಈ ಪುಟೊಟ್] ಅಯಿನ್ submit ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೧:೧೧, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ಕ್ ಬೋಡಾದ್ ಪಟ್ಟಿಡ್ ಇತ್ತ್ ನ ಬರವುಲೆನ್ ಬರೆವೊಂದು ಉಪ್ಪುನಗನೇ ಏರೋ ಪುದರ್ ಇಜ್ಜಂದಿನಕುಲು ಬತ್ತ್ ದ್ ಬರವುಲೆಗ್ ಟೆಂಪ್ಲೆಟ್ ಸೇರಾವುನೆ, ಅತ್ತ್ಂಡ ಬರವುನು ಮಾಜಾವುನ ಬೇಲೆ ಮಲ್ತೊಂದು ಉಲ್ಲೆರ್. ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್ ಮುಗಿಪುನಡೆ ಮುಟ್ಟ ಅನಾಮದೇಯೆರ್ ಏರ್ ಲಾ ಉಂದೆಕ್ಕ್ ಬರಂದಿಲೆಕೊ ಎಡ್ಮಿನ್ ತೂವೊನೊಡು ಪಂಡ್ದ್ ಕೇನೊಂದುಲ್ಲೆ.[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೩, ೨೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::IPತ್ ಪುದರ್ ದಾಂತಿನಕುಲು ಕೆಲಸ ಮಾಂತೊಂತುಲ್ಲೆರ್. ಅಕುಲೆನ್ ತಡೆಂಡ ಲಾಯಿಕ್. --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೦೮:೨೩, ೨೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:ಪೊಸ ಲೇಕನೊಗು <nowiki>[[ವರ್ಗೊ:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಪಂತೊಗು ಬರೆಯಿನ ಲೇಕನೊ]]</nowiki> ಪಂಡ್ದ್ ಸೇರ್ಪಾಲೆ. ದುಂಬೇ ಇತ್ತಿನ ಲೇಕನೊನು ಮಲ್ಲೆ ಮಲ್ತಿನೆ ಆಂಡ ಅಯಿಕ್ <nowiki>[[ವರ್ಗೊ:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಪಂತೊಗು ಮಲ್ಲೆ ಮಲ್ತಿನ ಲೇಕನೊ]]</nowiki> ಪಂಡ್ದ್ ಸೇರ್ಪಾಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೦೩, ೨೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== Editing News #2 – Mobile editing and talk pages ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<em>[[m:VisualEditor/Newsletter/2019/October|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</em>
Inside this newsletter, the [[mw:Editing|Editing team]] talks about their work on the [[mw:Mobile visual editor|mobile visual editor]], on [[mw:Talk pages project|the new talk pages project]], and at [[wikimania:|Wikimania 2019]].
=== Help ===
<strong>What talk page interactions do you remember?</strong> Is it a story about how someone helped you to learn something new? Is it a story about how someone helped you get involved in a group? Something else? Whatever your story is, we want to hear it!
Please tell us a story about how you used a talk page. <mark>Please share a link to a memorable discussion, or describe it on the <strong>[[mw:Topic:V8d91yh8gcg404dj|talk page for this project]]</strong>.</mark> The team wants your examples. These examples will help everyone develop a shared understanding of what this project should support and encourage.
=== Talk pages project ===
The [[mw:Talk pages consultation 2019|Talk Pages Consultation]] was a global consultation to define better tools for wiki communication. From February through June 2019, more than 500 volunteers on 20 wikis, across 15 languages and multiple projects, came together with members of the Foundation to create a product direction for a set of discussion tools. The [[mw:Talk pages consultation 2019/Phase 2 report|Phase 2 Report]] of the Talk Page Consultation was published in August. It summarizes the product direction the team has started to work on, which you can read more about here: [[mw:Talk pages project|Talk Page Project project page]].
The team needs and wants your help at this early stage. They are starting to develop the first idea. Please add your name to the [[mw:Talk pages project#Getting involved|<strong>"Getting involved"</strong>]] section of the project page, if you would like to hear about opportunities to participate.
=== Mobile visual editor ===
The Editing team is trying to make it simpler to edit on mobile devices. The team is changing the [[mw:VisualEditor on mobile|visual editor on mobile]]. If you have something to say about editing on a mobile device, please leave a message at [[mw:Talk:VisualEditor on mobile|Talk:VisualEditor on mobile]].
==== [[mw:VisualEditor on mobile/Edit cards|Edit Cards]] ====
[[File:Edit Cards-before-v3-comparison.png|thumb|486x486px|What happens when you click on a link. The new Edit Card is bigger and has more options for editing links.]]
* On 3 September, the Editing team released [[:File:Edit Cards comparison v2 and v3.png|version 3 of Edit Cards]]. Anyone could use the new version in the mobile visual editor.
* There is an [[:File:Edit Cards comparison v2 and v3.png|updated design]] on the Edit Card for adding and modifying links. There is also a new, [[mw:VisualEditor on mobile/Edit cards#2 September 2019 - v3 deployment timing|combined workflow for editing a link's display text and target]].
* Feedback: You can try the new Edit Cards by opening the mobile visual editor on a smartphone. Please post your feedback on the [[:mw:Topic:V5rg0cqmikpubmjj|Edit cards talk page]].
==== [[mw:VisualEditor on mobile/Toolbar refresh|Toolbar]] ====
[[File:Toolbar-comparison-v1.png|thumb|486px|The editing toolbar is changing in the mobile visual editor. The old system had two different toolbars. Now, all the buttons are together. [[mw:Topic:V79x6zm8n6i4nb56|Tell the team what you think about the new toolbar]].]]
* In September, the Editing team updated the mobile visual editor's editing toolbar. Anyone could see these changes in the mobile visual editor.
** <em>One toolbar:</em> All of the editing tools are located in one toolbar. Previously, the toolbar changed when you clicked on different things.
**<em>New navigation:</em> The buttons for moving forward and backward in the edit flow have changed.
**<em>Seamless switching:</em> an [[phab:T228159|improved workflow]] for switching between the visual and wikitext modes.
* Feedback: You can try the refreshed toolbar by opening the mobile VisualEditor on a smartphone. Please post your feedback on the [[mw:Topic:V79x6zm8n6i4nb56|Toolbar feedback talk page]].
=== Wikimania ===
The Editing Team attended [[wmania:2019:Program|Wikimania 2019]] in Sweden. They led a session on [[wmania:2019:Community Growth/Visual editing on mobile: An accessible editor for all|the mobile visual editor]] and a session on [[wmania:2019:Community Growth/After Flow: A new direction for improving talk pages|the new talk pages project]]. They tested [[mw:VisualEditor on mobile/Toolbar refresh#v1 prototype|two]] new [[mw:VisualEditor on mobile/Edit cards#v3 prototype|features]] in the mobile visual editor with contributors. You can read more about what the team did and learned in [[mw:VisualEditor on mobile#Wikimania Stockholm: Overview|the team's report on Wikimania 2019]].
=== Looking ahead ===
* <strong>Talk Pages Project:</strong> The team is thinking about the first set of proposed changes. The team will be working with a few communities to pilot those changes. The best way to stay informed is by adding your username to the list on the project page: [[mw:Talk pages project#Getting involved|<strong>Getting involved</strong>]].
* <strong>Testing the mobile visual editor as the default:</strong> The Editing team plans to post results before the end of the calendar year. The best way to stay informed is by adding the project page to your watchlist: [[mw:VisualEditor on mobile/VE mobile default|<strong>VisualEditor as mobile default project page</strong>]].
* <strong>Measuring the impact of Edit Cards:</strong> This study asks whether the project helped editors add links and citations. The Editing team hopes to share results in November. The best way to stay informed is by adding the project page to your watchlist: [[mw:VisualEditor on mobile/Edit cards|<strong>Edit Cards project page</strong>]].
– [[User:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:User talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:User talk:Whatamidoing (WMF)|talk]])
</div> ೧೬:೪೨, ೨೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Johan (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/Target_lists/VE_201910/5&oldid=19500851 -->
== Project Tiger update: Let's walk together with Wikipedia Asian Month and WWWW ==
<div style="border:8px red ridge;padding:6px;>
[[File:Emoji_u1f42f.svg|thumb|140px|The Tiger says "Happy Dipavali" to you]]
::''Apologies for writing in English, Kindly translate this message if possible.''
Greetings!
First of all "Happy Dipavali/Festive season". On behalf of the Project Tiger 2.0 team we have exciting news for all. Thanks for your enthusiastic participation in Project Tiger 2.0. You also know that there is a couple of interesting edit-a-thons around. We are happy to inform that the '''Project Tiger article list just got bigger.'''
We'll collaborate on Project Tiger article writing contest with [[:m:Wikipedia_Asian_Month_2019|Wikipedia Asian Month 2019]] (WAM2019) and [[:m:Wiki_Women_for_Women_Wellbeing_2019|Wiki Women for Women Wellbeing 2019 (WWWW-2019)]]. Most communities took part in these events in the previous iterations. Fortunately this year, all three contests are happening at the same time.
Wikipedia Asian Month agenda is to increase Asian content on Wikipedias. There is no requirement for selecting an article from the list provided. Any topic related to Asia can be chosen to write an article in WAM. This contest runs 1 November till 30 November.
For more rules and guidelines, you can follow the event page on Meta or local Wikis.
WWWW focus is on increase content related to women's health issues on Indic language Wikipedias. WWWW 2019 will start from 1 November 2019 and will continue till 10 January 2020. A common list of articles will be provided to write on.
'''<span style="background:yellow;">In brief: The articles you are submitting for Wikipedia Asian Month or WWWW, you may submit the same articles for Project Tiger also.</span>''' Articles created under any of these events can be submitted to fountain tool of Project Tiger 2.0. Article creation rule will remain the same for every community. -- sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೮:೧೪, ೨೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Wikipedia Asian Month 2019 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:WAM logo without text.svg|right|frameless]]
'''Wikipedia Asian Month''' is back! We wish you all the best of luck for the contest. The basic guidelines of the contest can be found on your local page of Wikipedia Asian Month. For more information, refer [[:m:Wikipedia Asian Month 2019|to our Meta page]] for organizers.
Looking forward to meet the next ambassadors for Wikipedia Asian Month 2019!
For additional support for organizing offline event, contact our international team [[:m:Talk:Wikipedia Asian Month 2019|on wiki]] or on email. We would appreciate the translation of this message in the local language by volunteer translators. Thank you!
[[:m:Wikipedia Asian Month 2019/International Team|Wikipedia Asian Month International Team.]]
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೨:೨೭, ೩೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/WAM&oldid=19499019 -->
== Project Tiger 2.0 - Hardware support recipients list ==
<div style="border:6px black ridge; background:#f2df94;">
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
Thank you all for actively participating and contributing to the writing contest of Project Tiger 2.0. We are very happy to announce the much-awaited results of the hardware support applications. You can see the names of recipients for laptop [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support/Laptops|here]] and for laptop see [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support/Internet|here]].
78 Wikimedians will be provided with internet stipends and 50 Wikimedians will be provided with laptop support. Laptops will be delivered to all selected recipients and we will email you in person to collect details. Thank you once again.
Regards. <small>-- [[User:Nitesh (CIS-A2K)]] and [[User:SuswethaK(CIS-A2K)]] (on benhalf of Project Tiger team) <br>
using --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೨:೪೫, ೮ ನವಂಬರ್ ೨೦೧೯ (IST)</small>
</div>
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ (Interface admin) ಆಯೆರ ನಿಕುಲೆನ ಬೆಂಬಲೊ ಬೋಡು ==
ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ ಇಜ್ಜಿ. ಎಡಿಟ್ ಟೂಲ್ಬಾರ್ ಬದಲಾವಣೆ ಮಲ್ಪೆರೆ, ಸುಮಾರು ಅಡ್ಮಿನ್ ಬೇಲೆಲೆನ್ ಮಲ್ಪೆರೊ ಅವು ಬೋಡು. ಅಂಚಾತ್ ಯಾನ್ ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯೆರ ಅರ್ಜಿ ಪಾಡ್ಪೆ. ನಿಕುಲೆನ ಬೆಂಬಲೊ ಬೋಡು. Tulu Wikipedia does not have an Interface Admin. I would like to apply to become.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೫೧, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
===ಒಪ್ಪಿಗೆ/Support===
# {{support}}-- ಈರ್ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಅಡ್ಮಿನ್ ಆದುಲ್ಲರ್. ಅಯಿತೊಟ್ಟುಗೆ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯೆರೆ ಎನ್ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೨:೫೪, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}}-- ಈರ್ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಅಡ್ಮಿನ್ ಆದ್ ಉಲ್ಲರ್. ಇತ್ತೆ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯರ್ ದಾಂಡ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಬುಳೆಚ್ಚಿಲ್ಗ್ ಪ್ರಯೋಜನ ಅವು ಪನ್ಪಿ ನಂಬುಗೆ ಎನ್ನವು. ಅಂಚಾದ್ ಈರ್ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಪುನೆಕ್ ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೮:೩೮, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಈರ್ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯರೆ ಎನ್ನ ಒಪ್ಪಿಗೆ ಸೂಚಿಸದೆ-[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೯:೪೪, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೦:೩೯, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೫, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} --[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೭:೩೫, ೧ ನವಂಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Arpitha05|Arpitha05]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Arpitha05|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೦, ೭ ನವಂಬರ್ ೨೦೧೯ (IST)
====ಕೆಲ ಪ್ರಶ್ನೆಲು\Question ====
* ಟೆಂಪ್ಲೇಟ್ ಅನುವಾದ ಮಾಲ್ತಿನ ಪಟ್ಟಿನ್(Trancelated Template list) ಜನವರಿಡ್ ಕೆಂಡೊ ಅಯಿನ ಪಟ್ಟಿ ಇತ್ನೆ [[ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ/2019|ಮುಟ್ಟ ಕೊರ್ತಿಜ್ಜಿ]] ದಾಯೆ?.
* ವರ್ಗೊ:Pages with script errors ಇಂದೆನ್ ನಮೊ [[ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ/2019|ಆನಿಯೆ ವರದಿ ಮಾಲ್ತೊ]] ಅತ್ನೆ ಮುಟ್ಟ ಎಚ್ಚರ ಇಜ್ಜಿಯಾಂಡ್ ದಾಯೆ?.
* ಇಂಪೊರ್ಟ್ ಮಾಲ್ಪುನಗ ಅಂಡ ಸುಲಭ ಇತ್ತ್ಂಡ್, ಮಸ್ತ್ ಟೆಂಪ್ಲೇಟ್ ಇಂಪೊರ್ಟ್ ಮಾಲ್ತಿವು error's ಉಂಡು ಅಯಿನ್ ಟೆಸ್ಟ್ (test, fix) ಮಾಲ್ಪಾರ? ಇಜ್ಜಿಯಾ?.
* ೬ ತಿಂಗೋಲು ಮುಟ್ಟ ಇಂಟರ್ ಪೇಸ್ ಎಡ್ಮಿನ್(Six Months valid interface adminship) ಯಾವಾಂದ?.
* ೬ ತಿಂಗೋಲು ಕರಿನೆಟ್ಟ್ ಬುಕ್ಕೊ(After ೬ month report and diceded community), ಮಾಲ್ತಿನ ಬೆಲೆತ ವರದಿ ಸಮುದಾಯೋಗು ಕೊರೊಡು.
* ೬ ತಿಂಗೊಲು ಕರಿನೆಟ್ಟ್ ಬುಕ್ಕೊ ಸಮುದಾಯೊ ಅಯಿತ್ತಾ ಮಿತ್ತ್ ಸಬೆ ನಡಪ್ಪೊಡು, ಅಲ್ಪ ದೆತ್ತೊಂದ್ನ ನಿರ್ಣೊಯೊನು ಸಮುದಾಯೊಗು ತೆರಿಪಾವೋಡು.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೧:೫೯, ೧೭ ನವಂಬರ್ ೨೦೧೯ (IST)
===approved===
*ಪವನಜೆರೆಗ್ interface adminship ತಿಕ್ಕ್ತ್ಂಡ್--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೩:೧೯, ೨೨ ನವಂಬರ್ ೨೦೧೯ (IST)
== Extension of Wikipedia Asian Month contest ==
In consideration of a week-long internet block in Iran, [[:m:Wikipedia Asian Month 2019|Wikipedia Asian Month 2019]] contest has been extended for a week past November. The articles submitted till 7th December 2019, 23:59 UTC will be accepted by the fountain tools of the participating wikis.
Please help us translate and spread this message in your local language.
[[:m:Wikipedia Asian Month 2019/International Team|Wikipedia Asian Month International Team]]
--[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೪೬, ೨೭ ನವಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/WAM&oldid=19592127 -->
== [WikiConference India 2020] Invitation to participate in the Community Engagement Survey ==
This is an invitation to participate in the Community Engagement Survey, which is one of the key requirements for drafting the Conference & Event Grant application for WikiConference India 2020 to the Wikimedia Foundation. The survey will have questions regarding a few demographic details, your experience with Wikimedia, challenges and needs, and your expectations for WCI 2020. The responses will help us to form an initial idea of what is expected out of WCI 2020, and draft the grant application accordingly. Please note that this will not directly influence the specificities of the program, there will be a detailed survey to assess the program needs post-funding decision.
*Please fill the survey at; https://docs.google.com/forms/d/e/1FAIpQLSd7_hpoIKHxGW31RepX_y4QxVqoodsCFOKatMTzxsJ2Vbkd-Q/viewform
*The survey will be open until 23:59 hrs of 22 December 2019.
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೪:೩೫, ೧೮ ದಸಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:KCVelaga@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Project Tiger updates - quality of articles ==
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
It has been around 70 days since Project Tiger 2.0 started and we are amazed by the enthusiasm and active participation being shown by all the communities. As much as we celebrate the numbers and statistics, we would like to reinstate that the quality of articles is what matters the most. Project Tiger does not encourage articles that do not have encyclopedic value. Hence we request participants to take care of the quality of the articles submitted. Because [[:en:Wikipedia:Wikipedia_is_not_about_winning|Wikipedia is not about winning]], it is about users collectively building a reliable encyclopedia.
Many thanks and we hope to see the energy going! <small>(on behalf of Project Tiger team) <br>
sent using --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೧:೫೧, ೧೯ ದಸಂಬರ್ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== SVG ಚಿತ್ರೊನ್ ತುಳುಟ್ ಅನುವಾದ ಮಾಲ್ಪುನ ಆಭಿಯಾನ ==
[[File:Commons-logo-en.svg|thumb|left|100px]]
[https://commons.wikimedia.org ವಿಕಿಕಾಮನ್ಸ್] ಮೂಲಕೊ ವಿಕಿಪೀಡಿಯಟ್ ವಿಜ್ಞಾನ, ತಂತ್ರಜ್ಞಾನ, ಶೈಕ್ಷಣಿಕ ಮಾಹಿತಿ ಸೇರಾವುನ ಅತ್ತಂದೆ ಮಸ್ತ್ ವಿಷಯಗ್ ಸಂಬಂಧಪಟ್ಟಿನ ಚಿತ್ರೊನ್ ಭಾರತೀಯ ಭಾಸೆಗ್ ಮಸ್ತ್ ಕಡಿಮೆ ಬಲಕೆ ಉಂಡು. ಅಂಚಾತ್ ಅಂಚಿನ ಚಿತ್ರೊನ್ ತುಳು ಸೇರಾತ್ ಬೇತೆ ಭಾರತೀಯ ಭಾಸೆಟ್ ಇಪ್ಪುನ ಅಭಿಯಾನ ೨೧ ಫೆಬ್ರವರಿ ೨೦೧೯ಡ್ತ್ ಸುರು ಮಾಲ್ಪುನೆ. ಅಂಚಾತ್ ಮಸ್ತ್ ಚಿತ್ರೊ ಇಂಗ್ಲೀಶ್ ಅವೃತ್ತಿಟ್ ಮೂಲವಾತ್ ಅಯಿನ ಭಾರತೀಯ ಭಾಷಾ ಆವೃತ್ತಿನ್ ತಯಾರುಮಾಲ್ಪುನ ಯೋಜನೆ ಉಂದು. ಈ ಚಿತ್ರೊ [[:en:Scalable Vector Graphics|Scalable Vector Graphics (svg)]] ಮಾದರಿತವ್. ಅಯಿನ್ ಇಂಕ್ ಸ್ಕೇಪ್ (Inkscape) ಅಂಚಿನ ತಂತ್ರಾಶೊಟ್ ದೆತ್ತ್ ಬದಲಾವಣೆ ಮಾಲ್ಪೊಲಿ. ಈ ಅಭಿಯಾನಟ್ ಕಲ್ಪಿಯರ ಮುಖ್ಯ ಸಂಗತಿ ಪಂಡ ಇಂಕ್ ಸ್ಕೇಪ್ ತಂತ್ರಾಂಶತ ಬಲಕೆ, ಅಯಿನ್ ಕನ್ನಡೊ ಚಿತ್ರೊತ ಆವೃತ್ತಿನ್ ತಯಾರ್ ಮಾಲ್ಪುನ, ವಿಕಿ ಕಾಮನ್ಸಿಗ್ ಅಪ್ಲೋಡ್ ಮಾಲ್ಪುನ. ಈ ಅಭಿಯಾನಡ್ ಮಸ್ತ್ ಸಂಖ್ಯೆಟ್ ಚಿತ್ರೊ ತಯಾರುಮಾಲ್ಪೊಡು, ಮಾಲ್ತಿನಂಗ್ಲೆಗ್ ಇನಾಮ್ ಉಂಡು. ಅಯಿಟ್ ತುಳು ಬುಕ್ಕ ತುಳು ವಿಕಿ ಸಮುದಾಯ ಸಕ್ರಿಯವಾತ್ ಪಾಲ್ ಪಡೆತ್ ನಮ್ಮ ಭಾಷೆತ contentನ್ ಅಭಿವೃದ್ಧಿ ಮಾಲ್ಪುಗೊ. ಇಂದೆಕ್ ಮಸ್ತ್ ವಿಶೇಷ ತಾಂತ್ರಿಕ ಜ್ಞಾನತ ಅವಶ್ಯಕತೆ ಬೊಡ್ಚಿ. ಅಂಚನೆ ಪೂರ ಆಸಕ್ತೆರ್ ಪಾಲ್ ಪಡೆಲೆಂದ್ ಕೋರಿಕೆ. ಈ ಸಂಬಂಧ ಫೆಬ್ರವರಿ ೨೧ ಬುಕ್ಕೊ ಒಂಜಿ ತರಬೇತಿ ಅತ್ತಂದೆ ಸಂಪಾದನೋತ್ಸವ ಪಾಡೊಕ್ಣಕೊ ಅಯಿನ ಆಲೋಚನೆ ಮಾಲ್ತೊ ತಾರೀಖು ಬುಕ್ಕೊ ಜಾಗೆನ್ ಕೆಲ ದಿನಟ್ ಘೋಷಣೆ ಮಾಲ್ಪೊ. ಬಲೆ.. ಕೈಜೋಡಾಲೆ.
<big>'''ಅಭಿಯಾನತ ಪುಟ ಮುಲುಂಡು: [https://commons.wikimedia.org/wiki/Commons:SVG_Translation_Campaign_2019_in_India SVG Translation Campaign 2019 in India]'''</big>
<big>'''ಪಾಲ್ ಪಡೆಪ್ಪುನಗ್ಲ್ ಮುಲ್ಪ ಪುದಾರ್ ಸೇರಾಲೆ:[https://commons.wikimedia.org/wiki/Commons:SVG_Translation_Campaign_2019_in_India/Participants Participants]'''</big>
== ಕಜ್ಜ ಕೂಟ ==
ತುಳು ಬಾಸೆದ ಪೊಸ ದೇಕಿಗಾದ್ ಪೊಸ ವರ್ಸೊದ ಅಲೋಚನೆನ್ ಒಟ್ಟು ಪಾಡಿಯೆರ ಬೋಡಾದ್ ತಾರೀಕ್ ೦೧ ಫೆಬ್ರುವರಿ ೨೦೨೦ಗ್ ಒಟ್ಟು ಸೇರುನೆಂದ್ ಪಾಡ್ತೊ. ಪಾಲು ಪಾಡೆಪುನಕುಲು [https://meta.wikimedia.org/wiki/Karavali_Wikimedians/Meetups/Meetup_at_Sri_Ramakrishna_Pre-University_College-10 ಮೂಲು] ಸೈನ್ ಪಾಡ್ಲೆ.
ಚರ್ಚೆತ ವಿಸಯೊಲು.
*ತುಲು ವಿಕ್ಷನರಿನ್ ಜುವೊ ಮಾನ್ಪುನ.
*ವಿಕಿ ಲವ್ಸ್ ಜಾನಪದ(Folklore).
*ವಿಕಿ ಲವ್ಸ್ ವಿಮೆನ್ ಸೌತ್ ಏಶಿಯಾ - ೨೦೨೦ ಅಯಿನ ತುಲುತ ಸಂಘಟಕೆರಾತ್ ಪಾಲ್ ಗೆತುನೊನಕುಲು.
*Wiki Summit 2020 ಪೊಪುನ ಬಗೆಟ್ಟ್
*Folkothanಗ್ ದುಡ್ಡುತ ವಿಚಾರೊ.
*ಇಲ್ಲ್ ಇಲ್ಲ್ ವಿಕಿ ಪಿಡಿಯಾ.
*ಒಂಜಿ ಕಾರ್ಯಗಾರೊ '''ಸಿಮಂತಿ ಬಾಯಿ ಸರಕಾರೊತ ಮ್ಯೂಸಿಯಂ'''ಡ್ ಮಾನ್ಪಿ ಬಗೆಟ್.
pnt5x76vtmrgbokll6h859xnusuhtqn
ಮೋಡ್ಯೂಲ್:TNT
828
7855
370390
178973
2025-04-27T18:50:27Z
meta>Pppery
0
Protected "[[Module:TNT]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
166238
Scribunto
text/plain
--
-- INTRO: (!!! DO NOT RENAME THIS PAGE !!!)
-- This module allows any template or module to be copy/pasted between
-- wikis without any translation changes. All translation text is stored
-- in the global Data:*.tab pages on Commons, and used everywhere.
--
-- SEE: https://www.mediawiki.org/wiki/Multilingual_Templates_and_Modules
--
-- ATTENTION:
-- Please do NOT rename this module - it has to be identical on all wikis.
-- This code is maintained at https://www.mediawiki.org/wiki/Module:TNT
-- Please do not modify it anywhere else, as it may get copied and override your changes.
-- Suggestions can be made at https://www.mediawiki.org/wiki/Module_talk:TNT
--
-- DESCRIPTION:
-- The "msg" function uses a Commons dataset to translate a message
-- with a given key (e.g. source-table), plus optional arguments
-- to the wiki markup in the current content language.
-- Use lang=xx to set language. Example:
--
-- {{#invoke:TNT | msg
-- | I18n/Template:Graphs.tab <!-- https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab -->
-- | source-table <!-- uses a translation message with id = "source-table" -->
-- | param1 }} <!-- optional parameter -->
--
--
-- The "doc" function will generate the <templatedata> parameter documentation for templates.
-- This way all template parameters can be stored and localized in a single Commons dataset.
-- NOTE: "doc" assumes that all documentation is located in Data:Templatedata/* on Commons.
--
-- {{#invoke:TNT | doc | Graph:Lines }}
-- uses https://commons.wikimedia.org/wiki/Data:Templatedata/Graph:Lines.tab
-- if the current page is Template:Graph:Lines/doc
--
local p = {}
local i18nDataset = 'I18n/Module:TNT.tab'
-- Forward declaration of the local functions
local sanitizeDataset, loadData, link, formatMessage
function p.msg(frame)
local dataset, id
local params = {}
local lang = nil
for k, v in pairs(frame.args) do
if k == 1 then
dataset = mw.text.trim(v)
elseif k == 2 then
id = mw.text.trim(v)
elseif type(k) == 'number' then
params[k - 2] = mw.text.trim(v)
elseif k == 'lang' and v ~= '_' then
lang = mw.text.trim(v)
end
end
return formatMessage(dataset, id, params, lang)
end
-- Identical to p.msg() above, but used from other lua modules
-- Parameters: name of dataset, message key, optional arguments
-- Example with 2 params: format('I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.format(dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('format', 1, dataset, 'string')
checkType('format', 2, key, 'string')
return formatMessage(dataset, key, {...})
end
-- Identical to p.msg() above, but used from other lua modules with the language param
-- Parameters: language code, name of dataset, message key, optional arguments
-- Example with 2 params: formatInLanguage('es', I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.formatInLanguage(lang, dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('formatInLanguage', 1, lang, 'string')
checkType('formatInLanguage', 2, dataset, 'string')
checkType('formatInLanguage', 3, key, 'string')
return formatMessage(dataset, key, {...}, lang)
end
-- Obsolete function that adds a 'c:' prefix to the first param.
-- "Sandbox/Sample.tab" -> 'c:Data:Sandbox/Sample.tab'
function p.link(frame)
return link(frame.args[1])
end
function p.doc(frame)
local dataset = 'Templatedata/' .. sanitizeDataset(frame.args[1])
return frame:extensionTag('templatedata', p.getTemplateData(dataset)) ..
formatMessage(i18nDataset, 'edit_doc', {link(dataset)})
end
function p.getTemplateData(dataset)
-- TODO: add '_' parameter once lua starts reindexing properly for "all" languages
local data = loadData(dataset)
local names = {}
for _, field in ipairs(data.schema.fields) do
table.insert(names, field.name)
end
local numOnly = true
local params = {}
local paramOrder = {}
for _, row in ipairs(data.data) do
local newVal = {}
local name = nil
for pos, columnName in ipairs(names) do
if columnName == 'name' then
name = row[pos]
else
newVal[columnName] = row[pos]
end
end
if name then
if (
(type(name) ~= "number")
and (
(type(name) ~= "string")
or not string.match(name, "^%d+$")
)
) then
numOnly = false
end
params[name] = newVal
table.insert(paramOrder, name)
end
end
-- Work around json encoding treating {"1":{...}} as an [{...}]
if numOnly then
params['zzz123']=''
end
local json = mw.text.jsonEncode({
params=params,
paramOrder=paramOrder,
description=data.description,
})
if numOnly then
json = string.gsub(json,'"zzz123":"",?', "")
end
return json
end
-- Local functions
sanitizeDataset = function(dataset)
if not dataset then
return nil
end
dataset = mw.text.trim(dataset)
if dataset == '' then
return nil
elseif string.sub(dataset,-4) ~= '.tab' then
return dataset .. '.tab'
else
return dataset
end
end
loadData = function(dataset, lang)
dataset = sanitizeDataset(dataset)
if not dataset then
error(formatMessage(i18nDataset, 'error_no_dataset', {}))
end
-- Give helpful error to thirdparties who try and copy this module.
if not mw.ext or not mw.ext.data or not mw.ext.data.get then
error(string.format([['''Missing JsonConfig extension, or not properly configured;
Cannot load https://commons.wikimedia.org/wiki/Data:%s.
See https://www.mediawiki.org/wiki/Extension:JsonConfig#Supporting_Wikimedia_templates''']], dataset))
end
local data = mw.ext.data.get(dataset, lang)
if data == false then
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Missing Commons dataset ' .. i18nDataset)
else
error(formatMessage(i18nDataset, 'error_bad_dataset', {link(dataset)}))
end
end
return data
end
-- Given a dataset name, convert it to a title with the 'commons:data:' prefix
link = function(dataset)
return 'c:Data:' .. mw.text.trim(dataset or '')
end
formatMessage = function(dataset, key, params, lang)
for _, row in pairs(loadData(dataset, lang).data) do
local id, msg = unpack(row)
if id == key then
local result = mw.message.newRawMessage(msg, unpack(params or {}))
return result:plain()
end
end
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Invalid message key "' .. key .. '"')
else
error(formatMessage(i18nDataset, 'error_bad_msgkey', {key, link(dataset)}))
end
end
return p
r7hn49mbqg5sfa9i7l9l3ts62h7gy7u
370391
350769
2026-09-28T08:07:29Z
ChiK
1136
1 revision imported from [[:meta:Module:TNT]]
350769
Scribunto
text/plain
--
-- INTRO: (!!! DO NOT RENAME THIS PAGE !!!)
-- This module allows any template or module to be copy/pasted between
-- wikis without any translation changes. All translation text is stored
-- in the global Data:*.tab pages on Commons, and used everywhere.
--
-- SEE: https://www.mediawiki.org/wiki/Multilingual_Templates_and_Modules
--
-- ATTENTION:
-- Please do NOT rename this module - it has to be identical on all wikis.
-- This code is maintained at https://www.mediawiki.org/wiki/Module:TNT
-- Please do not modify it anywhere else, as it may get copied and override your changes.
-- Suggestions can be made at https://www.mediawiki.org/wiki/Module_talk:TNT
--
-- DESCRIPTION:
-- The "msg" function uses a Commons dataset to translate a message
-- with a given key (e.g. source-table), plus optional arguments
-- to the wiki markup in the current content language.
-- Use lang=xx to set language. Example:
--
-- {{#invoke:TNT | msg
-- | I18n/Template:Graphs.tab <!-- https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab -->
-- | source-table <!-- uses a translation message with id = "source-table" -->
-- | param1 }} <!-- optional parameter -->
--
--
-- The "doc" function will generate the <templatedata> parameter documentation for templates.
-- This way all template parameters can be stored and localized in a single Commons dataset.
-- NOTE: "doc" assumes that all documentation is located in Data:Templatedata/* on Commons.
--
-- {{#invoke:TNT | doc | Graph:Lines }}
-- uses https://commons.wikimedia.org/wiki/Data:Templatedata/Graph:Lines.tab
-- if the current page is Template:Graph:Lines/doc
--
local config = (function()
local ok, res = pcall(mw.loadData, "Module:TNT/config");
return ok and res or {};
end)();
local p = {}
local i18nDataset = 'I18n/Module:TNT.tab'
-- Forward declaration of the local functions
local sanitizeDataset, loadData, link, formatMessage
function p.msg(frame)
local dataset, id
local params = {}
local lang = nil
for k, v in pairs(frame.args) do
if k == 1 then
dataset = mw.text.trim(v)
elseif k == 2 then
id = mw.text.trim(v)
elseif type(k) == 'number' then
params[k - 2] = mw.text.trim(v)
elseif k == 'lang' and v ~= '_' then
lang = mw.text.trim(v)
end
end
return formatMessage(dataset, id, params, lang)
end
-- Identical to p.msg() above, but used from other lua modules
-- Parameters: name of dataset, message key, optional arguments
-- Example with 2 params: format('I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.format(dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('format', 1, dataset, 'string')
checkType('format', 2, key, 'string')
return formatMessage(dataset, key, {...})
end
-- Identical to p.msg() above, but used from other lua modules with the language param
-- Parameters: language code, name of dataset, message key, optional arguments
-- Example with 2 params: formatInLanguage('es', I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.formatInLanguage(lang, dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('formatInLanguage', 1, lang, 'string')
checkType('formatInLanguage', 2, dataset, 'string')
checkType('formatInLanguage', 3, key, 'string')
return formatMessage(dataset, key, {...}, lang)
end
-- Obsolete function that adds a 'c:' prefix to the first param.
-- "Sandbox/Sample.tab" -> 'c:Data:Sandbox/Sample.tab'
function p.link(frame)
return link(frame.args[1])
end
local implGetTemplateData;
function p.doc(frame)
local dataset = sanitizeDataset(frame.args[1])
local json, dataPage, categories = implGetTemplateData(nil, dataset, frame.args)
return frame:extensionTag('templatedata', json) ..
formatMessage(i18nDataset, 'edit_doc', {link(dataPage)}) ..
(categories or "");
end
function p.getTemplateData(dataset)
local data = implGetTemplateData(true, dataset);
return data;
end
function p.getTemplateDataNew(...)
return implGetTemplateData(nil, ...);
end
function implGetTemplateData(legacy, dataset, args)
-- TODO: add '_' parameter once lua starts reindexing properly for "all" languages
local data, dataPage, categories = loadData(
dataset, nil, not legacy and 'TemplateData' or nil);
local names = {}
for _, field in ipairs(data.schema.fields) do
table.insert(names, field.name)
end
local numOnly = true
local params = {}
local paramOrder = {}
for _, row in ipairs(data.data) do
local newVal = {}
local name = nil
for pos, columnName in ipairs(names) do
if columnName == 'name' then
name = row[pos]
else
newVal[columnName] = row[pos]
end
end
if name then
if (
(type(name) ~= "number")
and (
(type(name) ~= "string")
or not string.match(name, "^%d+$")
)
) then
numOnly = false
end
params[name] = newVal
table.insert(paramOrder, name)
end
end
-- Work around json encoding treating {"1":{...}} as an [{...}]
if numOnly then
params['zzz123']=''
end
local json = mw.text.jsonEncode({
params=params,
paramOrder=paramOrder,
description=data.description,
-- TODO: Store this in a dataset:
format = (args and args.format or nil),
})
if numOnly then
json = string.gsub(json,'"zzz123":"",?', "")
end
return json, dataPage, categories;
end
-- Local functions
sanitizeDataset = function(dataset)
if not dataset then
return nil
end
dataset = mw.text.trim(dataset)
if dataset == '' then
return nil
elseif string.sub(dataset,-4) ~= '.tab' then
return dataset .. '.tab'
else
return dataset
end
end
loadData = function(dataset, lang, dataType)
dataset = sanitizeDataset(dataset)
if not dataset then
error(formatMessage(i18nDataset, 'error_no_dataset', {}))
end
-- Give helpful error to thirdparties who try and copy this module.
if not mw.ext or not mw.ext.data or not mw.ext.data.get then
error(string.format([['''Missing JsonConfig extension, or not properly configured;
Cannot load https://commons.wikimedia.org/wiki/Data:%s.
See https://www.mediawiki.org/wiki/Extension:JsonConfig#Supporting_Wikimedia_templates''']], dataset))
end
local dataPage = dataset;
local data, categories;
if dataType == 'TemplateData' then
dataPage = 'TemplateData/' .. dataset;
data = mw.ext.data.get(dataPage, lang);
if data == false then
data = mw.ext.data.get('Templatedata/' .. dataset, lang);
if data ~= false then
local legacyTemplateDataCategoryName = config.legacyTemplateDataCategoryName;
if legacyTemplateDataCategoryName ~= false then
categories = string.format(
'[[Category:%s%s]]',
legacyTemplateDataCategoryName or "Templates using legacy global TemplateData table name",
config.translatableCategoryLink and mw.getCurrentFrame():callParserFunction("#translation:") or ""
);
end
dataPage = 'Templatedata/' .. dataset;
end
end
else
data = mw.ext.data.get(dataset, lang)
end
if data == false then
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Missing Commons dataset ' .. i18nDataset)
else
error(formatMessage(i18nDataset, 'error_bad_dataset', {link(dataPage)}))
end
end
return data, dataPage, categories;
end
-- Given a dataset name, convert it to a title with the 'commons:data:' prefix
link = function(dataset)
return 'c:Data:' .. mw.text.trim(dataset or '')
end
formatMessage = function(dataset, key, params, lang)
for _, row in pairs(loadData(dataset, lang).data) do
local id, msg = unpack(row)
if id == key then
local result = mw.message.newRawMessage(msg, unpack(params or {}))
return result:plain()
end
end
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Invalid message key "' .. key .. '"')
else
error(formatMessage(i18nDataset, 'error_bad_msgkey', {key, link(dataset)}))
end
end
return p
2ii65lh3z6ssbx7s7r8h0vsbnbhbiyl
370417
370391
2026-09-28T08:20:10Z
ChiK
1136
370417
Scribunto
text/plain
--
-- INTRO: (!!! DO NOT RENAME THIS PAGE !!!)
-- This module allows any template or module to be copy/pasted between
-- wikis without any translation changes. All translation text is stored
-- in the global Data:*.tab pages on Commons, and used everywhere.
--
-- SEE: https://www.mediawiki.org/wiki/Multilingual_Templates_and_Modules
--
-- ATTENTION:
-- Please do NOT rename this module - it has to be identical on all wikis.
-- This code is maintained at https://www.mediawiki.org/wiki/Module:TNT
-- Please do not modify it anywhere else, as it may get copied and override your changes.
-- Suggestions can be made at https://www.mediawiki.org/wiki/Module_talk:TNT
--
-- DESCRIPTION:
-- The "msg" function uses a Commons dataset to translate a message
-- with a given key (e.g. source-table), plus optional arguments
-- to the wiki markup in the current content language.
-- Use lang=xx to set language. Example:
--
-- {{#invoke:TNT | msg
-- | I18n/Template:Graphs.tab <!-- https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab -->
-- | source-table <!-- uses a translation message with id = "source-table" -->
-- | param1 }} <!-- optional parameter -->
--
--
-- The "doc" function will generate the <templatedata> parameter documentation for templates.
-- This way all template parameters can be stored and localized in a single Commons dataset.
-- NOTE: "doc" assumes that all documentation is located in Data:Templatedata/* on Commons.
--
-- {{#invoke:TNT | doc | Graph:Lines }}
-- uses https://commons.wikimedia.org/wiki/Data:Templatedata/Graph:Lines.tab
-- if the current page is Template:Graph:Lines/doc
--
local p = {}
local i18nDataset = 'I18n/Module:TNT.tab'
-- Forward declaration of the local functions
local sanitizeDataset, loadData, link, formatMessage
function p.msg(frame)
local dataset, id
local params = {}
local lang = nil
for k, v in pairs(frame.args) do
if k == 1 then
dataset = mw.text.trim(v)
elseif k == 2 then
id = mw.text.trim(v)
elseif type(k) == 'number' then
table.insert(params, mw.text.trim(v))
elseif k == 'lang' and v ~= '_' then
lang = mw.text.trim(v)
end
end
return formatMessage(dataset, id, params, lang)
end
-- Identical to p.msg() above, but used from other lua modules
-- Parameters: name of dataset, message key, optional arguments
-- Example with 2 params: format('I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.format(dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('format', 1, dataset, 'string')
checkType('format', 2, key, 'string')
return formatMessage(dataset, key, {...})
end
-- Identical to p.msg() above, but used from other lua modules with the language param
-- Parameters: language code, name of dataset, message key, optional arguments
-- Example with 2 params: formatInLanguage('es', I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.formatInLanguage(lang, dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('formatInLanguage', 1, lang, 'string')
checkType('formatInLanguage', 2, dataset, 'string')
checkType('formatInLanguage', 3, key, 'string')
return formatMessage(dataset, key, {...}, lang)
end
-- Obsolete function that adds a 'c:' prefix to the first param.
-- "Sandbox/Sample.tab" -> 'c:Data:Sandbox/Sample.tab'
function p.link(frame)
return link(frame.args[1])
end
function p.doc(frame)
local dataset = 'Templatedata/' .. sanitizeDataset(frame.args[1])
return frame:extensionTag('templatedata', p.getTemplateData(dataset)) ..
formatMessage(i18nDataset, 'edit_doc', {link(dataset)})
end
function p.getTemplateData(dataset)
-- TODO: add '_' parameter once lua starts reindexing properly for "all" languages
local data = loadData(dataset)
local names = {}
for _, field in pairs(data.schema.fields) do
table.insert(names, field.name)
end
local params = {}
local paramOrder = {}
for _, row in pairs(data.data) do
local newVal = {}
local name = nil
for pos, val in pairs(row) do
local columnName = names[pos]
if columnName == 'name' then
name = val
else
newVal[columnName] = val
end
end
if name then
params[name] = newVal
table.insert(paramOrder, name)
end
end
-- Work around json encoding treating {"1":{...}} as an [{...}]
params['zzz123']=''
local json = mw.text.jsonEncode({
params=params,
paramOrder=paramOrder,
description=data.description
})
json = string.gsub(json,'"zzz123":"",?', "")
return json
end
-- Local functions
sanitizeDataset = function(dataset)
if not dataset then
return nil
end
dataset = mw.text.trim(dataset)
if dataset == '' then
return nil
elseif string.sub(dataset,-4) ~= '.tab' then
return dataset .. '.tab'
else
return dataset
end
end
loadData = function(dataset, lang)
dataset = sanitizeDataset(dataset)
if not dataset then
error(formatMessage(i18nDataset, 'error_no_dataset', {}))
end
-- Give helpful error to thirdparties who try and copy this module.
if not mw.ext or not mw.ext.data or not mw.ext.data.get then
error('Missing JsonConfig extension; Cannot load https://commons.wikimedia.org/wiki/Data:' .. dataset)
end
local data = mw.ext.data.get(dataset, lang)
if data == false then
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Missing Commons dataset ' .. i18nDataset)
else
error(formatMessage(i18nDataset, 'error_bad_dataset', {link(dataset)}))
end
end
return data
end
-- Given a dataset name, convert it to a title with the 'commons:data:' prefix
link = function(dataset)
return 'c:Data:' .. mw.text.trim(dataset or '')
end
formatMessage = function(dataset, key, params, lang)
for _, row in pairs(loadData(dataset, lang).data) do
local id, msg = unpack(row)
if id == key then
local result = mw.message.newRawMessage(msg, unpack(params or {}))
return result:plain()
end
end
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Invalid message key "' .. key .. '"')
else
error(formatMessage(i18nDataset, 'error_bad_msgkey', {key, link(dataset)}))
end
end
return p
icfixo3zxiew6gqg3s5h19xr03x3wkh
370435
370417
2026-09-28T08:36:22Z
ChiK
1136
Restored revision 350769 by [[Special:Contributions/ExE Boss|ExE Boss]] ([[User talk:ExE Boss|talk]]): Work fine (TwinkleGlobal)
370435
Scribunto
text/plain
--
-- INTRO: (!!! DO NOT RENAME THIS PAGE !!!)
-- This module allows any template or module to be copy/pasted between
-- wikis without any translation changes. All translation text is stored
-- in the global Data:*.tab pages on Commons, and used everywhere.
--
-- SEE: https://www.mediawiki.org/wiki/Multilingual_Templates_and_Modules
--
-- ATTENTION:
-- Please do NOT rename this module - it has to be identical on all wikis.
-- This code is maintained at https://www.mediawiki.org/wiki/Module:TNT
-- Please do not modify it anywhere else, as it may get copied and override your changes.
-- Suggestions can be made at https://www.mediawiki.org/wiki/Module_talk:TNT
--
-- DESCRIPTION:
-- The "msg" function uses a Commons dataset to translate a message
-- with a given key (e.g. source-table), plus optional arguments
-- to the wiki markup in the current content language.
-- Use lang=xx to set language. Example:
--
-- {{#invoke:TNT | msg
-- | I18n/Template:Graphs.tab <!-- https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab -->
-- | source-table <!-- uses a translation message with id = "source-table" -->
-- | param1 }} <!-- optional parameter -->
--
--
-- The "doc" function will generate the <templatedata> parameter documentation for templates.
-- This way all template parameters can be stored and localized in a single Commons dataset.
-- NOTE: "doc" assumes that all documentation is located in Data:Templatedata/* on Commons.
--
-- {{#invoke:TNT | doc | Graph:Lines }}
-- uses https://commons.wikimedia.org/wiki/Data:Templatedata/Graph:Lines.tab
-- if the current page is Template:Graph:Lines/doc
--
local config = (function()
local ok, res = pcall(mw.loadData, "Module:TNT/config");
return ok and res or {};
end)();
local p = {}
local i18nDataset = 'I18n/Module:TNT.tab'
-- Forward declaration of the local functions
local sanitizeDataset, loadData, link, formatMessage
function p.msg(frame)
local dataset, id
local params = {}
local lang = nil
for k, v in pairs(frame.args) do
if k == 1 then
dataset = mw.text.trim(v)
elseif k == 2 then
id = mw.text.trim(v)
elseif type(k) == 'number' then
params[k - 2] = mw.text.trim(v)
elseif k == 'lang' and v ~= '_' then
lang = mw.text.trim(v)
end
end
return formatMessage(dataset, id, params, lang)
end
-- Identical to p.msg() above, but used from other lua modules
-- Parameters: name of dataset, message key, optional arguments
-- Example with 2 params: format('I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.format(dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('format', 1, dataset, 'string')
checkType('format', 2, key, 'string')
return formatMessage(dataset, key, {...})
end
-- Identical to p.msg() above, but used from other lua modules with the language param
-- Parameters: language code, name of dataset, message key, optional arguments
-- Example with 2 params: formatInLanguage('es', I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.formatInLanguage(lang, dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('formatInLanguage', 1, lang, 'string')
checkType('formatInLanguage', 2, dataset, 'string')
checkType('formatInLanguage', 3, key, 'string')
return formatMessage(dataset, key, {...}, lang)
end
-- Obsolete function that adds a 'c:' prefix to the first param.
-- "Sandbox/Sample.tab" -> 'c:Data:Sandbox/Sample.tab'
function p.link(frame)
return link(frame.args[1])
end
local implGetTemplateData;
function p.doc(frame)
local dataset = sanitizeDataset(frame.args[1])
local json, dataPage, categories = implGetTemplateData(nil, dataset, frame.args)
return frame:extensionTag('templatedata', json) ..
formatMessage(i18nDataset, 'edit_doc', {link(dataPage)}) ..
(categories or "");
end
function p.getTemplateData(dataset)
local data = implGetTemplateData(true, dataset);
return data;
end
function p.getTemplateDataNew(...)
return implGetTemplateData(nil, ...);
end
function implGetTemplateData(legacy, dataset, args)
-- TODO: add '_' parameter once lua starts reindexing properly for "all" languages
local data, dataPage, categories = loadData(
dataset, nil, not legacy and 'TemplateData' or nil);
local names = {}
for _, field in ipairs(data.schema.fields) do
table.insert(names, field.name)
end
local numOnly = true
local params = {}
local paramOrder = {}
for _, row in ipairs(data.data) do
local newVal = {}
local name = nil
for pos, columnName in ipairs(names) do
if columnName == 'name' then
name = row[pos]
else
newVal[columnName] = row[pos]
end
end
if name then
if (
(type(name) ~= "number")
and (
(type(name) ~= "string")
or not string.match(name, "^%d+$")
)
) then
numOnly = false
end
params[name] = newVal
table.insert(paramOrder, name)
end
end
-- Work around json encoding treating {"1":{...}} as an [{...}]
if numOnly then
params['zzz123']=''
end
local json = mw.text.jsonEncode({
params=params,
paramOrder=paramOrder,
description=data.description,
-- TODO: Store this in a dataset:
format = (args and args.format or nil),
})
if numOnly then
json = string.gsub(json,'"zzz123":"",?', "")
end
return json, dataPage, categories;
end
-- Local functions
sanitizeDataset = function(dataset)
if not dataset then
return nil
end
dataset = mw.text.trim(dataset)
if dataset == '' then
return nil
elseif string.sub(dataset,-4) ~= '.tab' then
return dataset .. '.tab'
else
return dataset
end
end
loadData = function(dataset, lang, dataType)
dataset = sanitizeDataset(dataset)
if not dataset then
error(formatMessage(i18nDataset, 'error_no_dataset', {}))
end
-- Give helpful error to thirdparties who try and copy this module.
if not mw.ext or not mw.ext.data or not mw.ext.data.get then
error(string.format([['''Missing JsonConfig extension, or not properly configured;
Cannot load https://commons.wikimedia.org/wiki/Data:%s.
See https://www.mediawiki.org/wiki/Extension:JsonConfig#Supporting_Wikimedia_templates''']], dataset))
end
local dataPage = dataset;
local data, categories;
if dataType == 'TemplateData' then
dataPage = 'TemplateData/' .. dataset;
data = mw.ext.data.get(dataPage, lang);
if data == false then
data = mw.ext.data.get('Templatedata/' .. dataset, lang);
if data ~= false then
local legacyTemplateDataCategoryName = config.legacyTemplateDataCategoryName;
if legacyTemplateDataCategoryName ~= false then
categories = string.format(
'[[Category:%s%s]]',
legacyTemplateDataCategoryName or "Templates using legacy global TemplateData table name",
config.translatableCategoryLink and mw.getCurrentFrame():callParserFunction("#translation:") or ""
);
end
dataPage = 'Templatedata/' .. dataset;
end
end
else
data = mw.ext.data.get(dataset, lang)
end
if data == false then
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Missing Commons dataset ' .. i18nDataset)
else
error(formatMessage(i18nDataset, 'error_bad_dataset', {link(dataPage)}))
end
end
return data, dataPage, categories;
end
-- Given a dataset name, convert it to a title with the 'commons:data:' prefix
link = function(dataset)
return 'c:Data:' .. mw.text.trim(dataset or '')
end
formatMessage = function(dataset, key, params, lang)
for _, row in pairs(loadData(dataset, lang).data) do
local id, msg = unpack(row)
if id == key then
local result = mw.message.newRawMessage(msg, unpack(params or {}))
return result:plain()
end
end
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Invalid message key "' .. key .. '"')
else
error(formatMessage(i18nDataset, 'error_bad_msgkey', {key, link(dataset)}))
end
end
return p
2ii65lh3z6ssbx7s7r8h0vsbnbhbiyl
370463
370435
2026-09-28T09:21:48Z
ChiK
1136
sync [[:en:Module:TNT]]
370463
Scribunto
text/plain
--
-- INTRO: (!!! DO NOT RENAME THIS PAGE !!!)
-- This module allows any template or module to be copy/pasted between
-- wikis without any translation changes. All translation text is stored
-- in the global Data:*.tab pages on Commons, and used everywhere.
--
-- SEE: https://www.mediawiki.org/wiki/Multilingual_Templates_and_Modules
--
-- ATTENTION:
-- Please do NOT rename this module - it has to be identical on all wikis.
-- This code is maintained at https://www.mediawiki.org/wiki/Module:TNT
-- Please do not modify it anywhere else, as it may get copied and override your changes.
-- Suggestions can be made at https://www.mediawiki.org/wiki/Module_talk:TNT
--
-- DESCRIPTION:
-- The "msg" function uses a Commons dataset to translate a message
-- with a given key (e.g. source-table), plus optional arguments
-- to the wiki markup in the current content language.
-- Use lang=xx to set language. Example:
--
-- {{#invoke:TNT | msg
-- | I18n/Template:Graphs.tab <!-- https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab -->
-- | source-table <!-- uses a translation message with id = "source-table" -->
-- | param1 }} <!-- optional parameter -->
--
--
-- The "doc" function will generate the <templatedata> parameter documentation for templates.
-- This way all template parameters can be stored and localized in a single Commons dataset.
-- NOTE: "doc" assumes that all documentation is located in Data:Templatedata/* on Commons.
--
-- {{#invoke:TNT | doc | Graph:Lines }}
-- uses https://commons.wikimedia.org/wiki/Data:Templatedata/Graph:Lines.tab
-- if the current page is Template:Graph:Lines/doc
--
local p = {}
local i18nDataset = 'I18n/Module:TNT.tab'
-- Forward declaration of the local functions
local sanitizeDataset, loadData, link, formatMessage
function p.msg(frame)
local dataset, id
local params = {}
local lang = nil
for k, v in pairs(frame.args) do
if k == 1 then
dataset = mw.text.trim(v)
elseif k == 2 then
id = mw.text.trim(v)
elseif type(k) == 'number' then
table.insert(params, mw.text.trim(v))
elseif k == 'lang' and v ~= '_' then
lang = mw.text.trim(v)
end
end
return formatMessage(dataset, id, params, lang)
end
-- Identical to p.msg() above, but used from other lua modules
-- Parameters: name of dataset, message key, optional arguments
-- Example with 2 params: format('I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.format(dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('format', 1, dataset, 'string')
checkType('format', 2, key, 'string')
return formatMessage(dataset, key, {...})
end
-- Identical to p.msg() above, but used from other lua modules with the language param
-- Parameters: language code, name of dataset, message key, optional arguments
-- Example with 2 params: formatInLanguage('es', I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.formatInLanguage(lang, dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('formatInLanguage', 1, lang, 'string')
checkType('formatInLanguage', 2, dataset, 'string')
checkType('formatInLanguage', 3, key, 'string')
return formatMessage(dataset, key, {...}, lang)
end
-- Obsolete function that adds a 'c:' prefix to the first param.
-- "Sandbox/Sample.tab" -> 'c:Data:Sandbox/Sample.tab'
function p.link(frame)
return link(frame.args[1])
end
function p.doc(frame)
local dataset = 'Templatedata/' .. sanitizeDataset(frame.args[1])
return frame:extensionTag('templatedata', p.getTemplateData(dataset)) ..
formatMessage(i18nDataset, 'edit_doc', {link(dataset)})
end
function p.getTemplateData(dataset)
-- TODO: add '_' parameter once lua starts reindexing properly for "all" languages
local data = loadData(dataset)
local names = {}
for _, field in pairs(data.schema.fields) do
table.insert(names, field.name)
end
local params = {}
local paramOrder = {}
for _, row in pairs(data.data) do
local newVal = {}
local name = nil
for pos, val in pairs(row) do
local columnName = names[pos]
if columnName == 'name' then
name = val
else
newVal[columnName] = val
end
end
if name then
params[name] = newVal
table.insert(paramOrder, name)
end
end
-- Work around json encoding treating {"1":{...}} as an [{...}]
params['zzz123']=''
local json = mw.text.jsonEncode({
params=params,
paramOrder=paramOrder,
description=data.description
})
json = string.gsub(json,'"zzz123":"",?', "")
return json
end
-- Local functions
sanitizeDataset = function(dataset)
if not dataset then
return nil
end
dataset = mw.text.trim(dataset)
if dataset == '' then
return nil
elseif string.sub(dataset,-4) ~= '.tab' then
return dataset .. '.tab'
else
return dataset
end
end
loadData = function(dataset, lang)
dataset = sanitizeDataset(dataset)
if not dataset then
error(formatMessage(i18nDataset, 'error_no_dataset', {}))
end
-- Give helpful error to thirdparties who try and copy this module.
if not mw.ext or not mw.ext.data or not mw.ext.data.get then
error('Missing JsonConfig extension; Cannot load https://commons.wikimedia.org/wiki/Data:' .. dataset)
end
local data = mw.ext.data.get(dataset, lang)
if data == false then
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Missing Commons dataset ' .. i18nDataset)
else
error(formatMessage(i18nDataset, 'error_bad_dataset', {link(dataset)}))
end
end
return data
end
-- Given a dataset name, convert it to a title with the 'commons:data:' prefix
link = function(dataset)
return 'c:Data:' .. mw.text.trim(dataset or '')
end
formatMessage = function(dataset, key, params, lang)
for _, row in pairs(loadData(dataset, lang).data) do
local id, msg = unpack(row)
if id == key then
local result = mw.message.newRawMessage(msg, unpack(params or {}))
return result:plain()
end
end
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Invalid message key "' .. key .. '"')
else
error(formatMessage(i18nDataset, 'error_bad_msgkey', {key, link(dataset)}))
end
end
return p
icfixo3zxiew6gqg3s5h19xr03x3wkh
ಕೋದಂಡರಾಮ ದೇವಸ್ಥಾನ
0
8359
370497
106790
2026-09-28T09:40:21Z
ChiK
1136
370497
wikitext
text/x-wiki
'''ಕೋದಂಡರಾಮ ದೇವಸ್ಥಾನ''' ಮಾತುಂಗ ಬೆಟ್ಟರ್ದ್ ರಥಬೀದಿಗ್ ಬತ್ತ್ಂಡ ಬಲತ್ತ ಪುಡೆಟ್ಟ್ ವಿಠಲ ದೇವಸ್ಥಾನೊಗು ಪನ್ಪಿ ಸಾಧಿತೋಜವುನ ಫಲಕ ತೋಜುಂಡು.ಅಲ್ಪನೇ ಬಲತ್ತ್ ಗ್ ಒಂಜಿ ನಡತ್ದ್ ಪೋಪುನ ಸಾದಿ ಉಂಡು. ಅಯಿಟ್ಟೆ ದುಂಬು ಪೋಂಡ ಅವು ತುಂಗಭದ್ರಾ ಸುದೆತ್ತ ಪುಡೆಟ್ಟೆ ಪೋಪುಂಡು. ಈ ಸಾದಿಯೆ ಪೊಂಡ ಕಲ್ಲ್ ಲ್, ಬಂಡೆಕಲ್ಲ್ ಲ್ ತಿಕ್ಕುಂಡು. ಆ ಕಲ್ಲ್, ಬಂಡೆಲೆನ್ ಬಡ್ತ್ದ್ ಜತ್ತ್ ದ್ ಒಂತೆ ದೂರ ಪೊಂಡ ಕೋದಂಡರಾಮ ದೇವಸ್ಥಾನ ತಿಕ್ಕುಂಡು. ಈ ದೇವಸ್ಥಾನೊ ಸುದೆರ್ದ್ ಸುಮಾರ್ ೬೦-೭೦ ಮೊಟ್ಟು ಎತ್ತರೊಡು ಉಂಡು. ಈ ದೇವಸ್ಥಾನೊದ ಎದುರುಡು ಉಂತ್ದ್ ತೂಂಡ ಸುದೆತ್ತ ಪೊರ್ಲುದ ದೇಕಿನ್ ತೂಯೆರೆ ಅಪುಂಡು. ಮುಲ್ಪ ತುಂಗಭದ್ರಾ ಸುದೆ ರಡ್ಡ್ ಗುಡ್ಡೆದ ನಡುಟ್ಟೆ ಪರತೊಂದು ಪೋಪುಂಡು. ಇಂಚ ಪೋನಗ ಬಾರಿ ಮಲ್ಲ ಗುಂಡಿಯೇ ಅತ್ಂಡ್. ಬರ್ಸದಪಗ ಬಾರಿ ಮಲ್ಲ ಪ್ರವಾಹ ಬರ್ಪುನೆರ್ದ್ ನೀರ್ ಮಿತ್ತ್ ಬತ್ತ್ ದ್ ಈ ದೇವಸ್ಥಾನೊದ ಉಲಯಿ ಸುದೆತ್ತ ನೀರ್ ಬರ್ಪುಂಡು. ಅವು ಅತ್ತಂದೆ ನೀರ್ ಬಾರಿ ರಭಸೊಡೇ ನೂರೊಂದು ಬನ್ನಗ ಗುಡ್ಡೆಗ್ ತಾಗ್ದ್ ಸುತ್ತೊಂದು ದುಂಬು ಪೋಪುಂಡು. ಅಂಚ ತಿರುಗೊಂದು ಪೋಪುನ ಈ ಜಾಗೆಗ್ [[ಚಕ್ರತೀರ್ಥ]] ಪಂಡ್ದ್ ಪುದರ್.
ಈ ದೇವಸ್ಥಾನೊಡು ಒಂಜೇ ಬಂಡೆಡ್ ಶ್ರೀರಾಮೆ,ಸೀತೆ,ಲಕ್ಷ್ಮಣೆ ಈ ಮೂಜಿ ಜನತ್ತಲಾ ಮೂರ್ತಿನ್ ಕೆತ್ತ್ ದೆರ್. ಈ ಮೂರ್ತಿಲು ಸುಮಾರ್ ೬ ರ್ದ್ ೯ ಮೊಟ್ಟು ಎತ್ತರವಾದ್ ಉಪ್ಪು. ಈ ಮೂಲ ದೇವಸ್ಥಾನೊನು ಅರವೀಡು ವಂಶದ ಚಿಕ್ಕ ವೆಂಕಟಪತಿರಾಯೆ ಕಟ್ಟಯೆ ಪಂದ್ ತೆರಿದ್ ಬರ್ಪುಂಡು. ಈ ದೇವಸ್ಥಾನೊದ ರಂಗ ಮಂಟಪದ ಗೋಪುರ ಇಂಚಿಪ ಕಟ್ಟ್ ನಂಚ ತೋಜುಂಡು.
{{Stub}}
kdwrplf9z8kquch2lvp8z7t0ytp5xrb
ಇಟಲಿ
0
8654
370342
366392
2026-09-28T07:26:34Z
ChiK
1136
370342
wikitext
text/x-wiki
{{Infobox country
| conventional_long_name = ಇಟಾಲಿಯನ್ ಗಣರಾಜ್ಯೊ
| common_name = Italy
| native_name = ರಿಪಬ್ಲಿಕಾ ಇಟಾಲಿಯಾನ {{small|(ಇಟಾಲಿಯನ್ ಬಾಸೆಡ್)}}
| image_flag = Flag of Italy.svg
| image_coat = Emblem of Italy.svg
| symbol_type = ಲಾಂಛನ
| national_anthem = "Il Canto degli Italiani"<br/>"The
Song of the Italians"<div style="padding-top:0.5em;">{{Center|[[File:Canto degli Italiani - Marina Militare (strumentale).wav]]}}</div>
| image_map = [[File:EU-Italy (orthographic projection).svg|frameless]]
| capital = [[ರೋಮ್]]
| coordinates = {{Coord|41|54|N|12|29|E|type:city}}
| largest_city = ರೋಮ್
| languages_type =
| languages =
| official_languages = ಇಟಾಲಿಯನ್ ಬಾಸೆ
{{Infobox|child=yes
|label1 = ರಾಷ್ಟ್ರೀಯತೆ {{Nobold|(2021)}}<ref name="id2020">{{Cite web|title=Indicatori demografici, anno 2020 |url=https://www.istat.it/it/files//2021/05/REPORT_INDICATORI-DEMOGRAFICI-2020.pdf|url-status=live|archive-url=https://web.archive.org/web/20210503091112/https://www.istat.it/it/files//2021/05/REPORT_INDICATORI-DEMOGRAFICI-2020.pdf|archive-date=3 May 2021|access-date=3 May 2021}}</ref>
| data1 = {{Unbulleted list|91% ಇಟಲಿಯನ್ನೆರ್|9% ಬೇತೆ}}
}}
| religion = {{Ublist|item_style=white-space:nowrap;|84% ಕ್ರಿಸ್ತನೆರ್|12% ಜಾತಿದಾಂತಿನಕ್ಲು|4% ಬೇತೆ}}
| religion_year = 2020
| religion_ref = <ref>{{Cite web|date=September 2021|title=Special Eurobarometer 516|url=https://data.europa.eu/data/datasets/s2237_95_2_516_eng?locale=en|url-status=live|archive-url=https://web.archive.org/web/20230629085321/http://data.europa.eu/data/datasets/s2237_95_2_516_eng?locale=en|archive-date=29 June 2023|access-date=24 September 2021|publisher=European Union: [[European Commission]]|via=[[European Data Portal]] (see Volume C: Country/socio-demographics: IT: Question D90.2.)}}</ref>
| demonym = ಇಟಲಿಯನ್ನೆರ್
| government_type = ಏಕೀಕೃತ ಸಂಸದೀಯ ಗಣರಾಜ್ಯ
| leader_title1 = ರಾಷ್ಟ್ರಪತಿ
| leader_name1 = ಸೆರ್ಗಿಯೊ ಮಟರೆಲ್ಲಾ
| leader_title2 = ಪ್ರಧಾನಿ
| leader_name2 = ಜಾರ್ಜಿಯಾ ಮೆಲೊನಿ
| leader_title3 =
| leader_name3 = ಇಗ್ನಾಸಿಯೋ ಲಾ ರುಸಾ
| leader_title4 = ಚೇಂಬರ್ ಆಫ್ ಡೆಪುಟೀಸ್(ಕೆಳಮನೆ) ದ ಅದ್ಯಕ್ಸೆರ್
| leader_name4 = ಲೊರೆಂಝೋ ಫೋಂಟಾನಾ
| legislature = ಸಂಸತ್
| upper_house = ಸೆನೆಟ್
| lower_house = ಚೇಂಬರ್ ಆಫ್ ಡೆಪುಟೀಸ್
| sovereignty_type = [[History of Italy|Historical polities]]
| established_event1 = [[Ancient peoples of Italy|Italic peoples]]
| established_date1 = Antiquity
| established_event2 = [[Ancient Rome]]<br>[[Roman Italy]]
| established_date2 = 753 BC–476 AD
| established_event3 = [[Barbarian kingdoms|Roman-Barbarian kingdoms]]<br>[[Byzantine Italy]]
| established_date3 = Early Middle Ages
| established_event4 = [[List of historical states of Italy|Italian city-states and regional polities]]
| established_date4 = [[Italy in the Middle Ages|Middle Ages]] and Modern period
| established_event5 = [[Kingdom of Italy]]
| established_date5 = 1861–1946<br>{{start date and age|1861|03|17|df=y}}
| established_event6 = [[Italian Empire]]
| established_date6 = 1882–1960
| established_event7 = [[1946 Italian institutional referendum|Italian Republic]]
| established_date7 = {{start date and age|1946|06|02|df=y}}
| area_km2 = 301,340
| area_footnote = <ref name="Central Intelligence Agency-2023">{{Cite web|date=23 August 2023|title=Italy|url=https://www.cia.gov/the-world-factbook/countries/italy|url-status=live|archive-url=https://web.archive.org/web/20210701235642/https://www.cia.gov/the-world-factbook/countries/italy|archive-date=1 July 2021|access-date=28 August 2023|publisher=Central Intelligence Agency}}</ref><ref>{{Cite web|date=12 November 2023|title=Italy country profile|url=https://www.bbc.com/news/world-europe-17433142|url-status=live|archive-url=https://web.archive.org/web/20231218111602/https://www.bbc.com/news/world-europe-17433142|archive-date=18 December 2023|access-date=12 November 2023|publisher=BBC News}}</ref>
| area_rank = 71st
| area_sq_mi = 116,347 <!--Do not remove per [[Wikipedia:Manual of Style/Dates and numbers]]-->
| percent_water = 1.24 (2015)<ref>{{Cite web|title=Surface water and surface water change|url=https://stats.oecd.org/Index.aspx?DataSetCode=SURFACE_WATER|url-status=live|archive-url=https://web.archive.org/web/20210324133453/https://stats.oecd.org/Index.aspx?DataSetCode=SURFACE_WATER|archive-date=24 March 2021|access-date=11 October 2020|publisher=[[Organisation for Economic Co-operation and Development]] (OECD)}}</ref>
| population_estimate = {{DecreaseNeutral}} 58,915,561<ref name="population">{{cite web|title=Monthly Demographic Balance|url=https://demo.istat.it/app/?l=en&a=&i=D7B|publisher=[[Italian National Institute of Statistics|ISTAT]]}}</ref>
| population_estimate_year = 2025
| population_estimate_rank = 25th
| population_density_km2 = 195.5
| population_density_sq_mi = auto<!--Do not remove per [[Wikipedia:Manual of Style/Dates and numbers]]-->
| population_density_rank = 72nd
| GDP_PPP = {{Increase}} $3.719 trillion<ref name="IMFWEO.IT">{{cite web |url=https://www.imf.org/en/Publications/WEO/weo-database/2025/april/weo-report?c=136,&s=NGDPD,PPPGDP,NGDPDPC,PPPPC,&sy=2023&ey=2030&ssm=0&scsm=1&scc=0&ssd=1&ssc=0&sic=0&sort=country&ds=.&br=1 |title=World Economic Outlook Database, April 2025 Edition. (Italy) |publisher=[[International Monetary Fund]] |website=www.imf.org |date=22 April 2025 |access-date=26 May 2025}}</ref>
| GDP_PPP_year = 2025
| GDP_PPP_rank = 11th
| GDP_PPP_per_capita = {{Increase}} $63,076<ref name="IMFWEO.IT"/>
| GDP_PPP_per_capita_rank = 29th
| GDP_nominal = {{Increase}} $2.423 trillion<ref name="IMFWEO.IT"/>
| GDP_nominal_year = 2025
| GDP_nominal_rank = 8th
| GDP_nominal_per_capita = {{Increase}} $41,091<ref name="IMFWEO.IT"/>
| GDP_nominal_per_capita_rank = 27th
| Gini = 32.5 <!--number only-->
| Gini_year = 2020
| Gini_change = decrease <!--increase/steady/decrease-->
| Gini_ref = <ref>{{Cite web|title=Gini coefficient of equivalised disposable income – EU-SILC survey|url=https://ec.europa.eu/eurostat/databrowser/view/tessi190/default/table?lang=en|url-status=live|archive-url=https://web.archive.org/web/20201009091832/https://ec.europa.eu/eurostat/databrowser/view/tessi190/default/table?lang=en|archive-date=9 October 2020|access-date=21 June 2022|publisher=European Commission}}</ref>
| HDI = 0.915 <!--number only-->
| HDI_year = 2023<!-- Please use the year to which the data refers, not the publication year-->
| HDI_change = increase <!--increase/decrease/steady-->
| HDI_ref = <ref name="UNHDR">{{Cite web |date=6 May 2025 |title=Human Development Report 2025 |url=https://hdr.undp.org/system/files/documents/global-report-document/hdr2025reporten.pdf|url-status=live |archive-url=https://web.archive.org/web/20250506051232/https://hdr.undp.org/system/files/documents/global-report-document/hdr2025reporten.pdf |archive-date=6 May 2025 |access-date=6 May 2025 |publisher=[[United Nations Development Programme]] |language=en}}</ref>
| HDI_rank = 29th
| currency = [[Euro]] (€)<sup>b</sup>
| currency_code = EUR
| time_zone = [[Central European Time|CET]]
| utc_offset = +1
| utc_offset_DST = +2
| time_zone_DST = [[Central European Summer Time|CEST]]
| calling_code = [[+39]] <sup>c</sup>
| cctld = [[.it]]
| footnote_a = <span style="font-size:100%;">German is co-official in [[South Tyrol]] and [[Friuli-Venezia Giulia]]; French is co-official in the [[Aosta Valley]]; [[Slovene language|Slovene]] is co-official in the [[province of Trieste]], the [[province of Gorizia]], and Friuli-Venezia Giulia; [[Ladin language|Ladin]] is co-official in South Tyrol, in [[Trentino]] and in other northern areas; [[Friulian language|Friulian]] is co-official in Friuli-Venezia Giulia; [[Sardinian language|Sardinian]] is co-official in [[Sardinia]].<ref>{{Cite web|title=Legge Regionale 15 ottobre 1997, n. 26 |url=http://www.regione.sardegna.it/j/v/86?v=9&c=72&file=1997026|url-status=dead|archive-url=https://web.archive.org/web/20210226213750/http://www.regione.sardegna.it/j/v/86?v=9&c=72&file=1997026|archive-date=26 February 2021|access-date=31 May 2018|publisher=Regione autonoma della Sardegna – Regione Autònoma de Sardigna}}; {{Cite web|title=Regione Autonoma Friuli-Venezia Giulia – Comunità linguistiche regionali|url=https://www.regione.fvg.it/rafvg/cms/RAFVG/cultura-sport/patrimonio-culturale/comunita-linguistiche|url-status=live|archive-url=https://web.archive.org/web/20150904201140/https://www.regione.fvg.it/rafvg/cms/RAFVG/cultura-sport/patrimonio-culturale/comunita-linguistiche|archive-date=4 September 2015|access-date=2 November 2020|website=regione.fvg.it}}</ref></span>
| footnote_b = <span style="font-size:100%;">Before 2002, the [[Italian lira]]. The euro is accepted in [[Campione d'Italia]], but its official currency is the [[Swiss franc]].<ref>{{Cite web|date=14 July 2010|title=Comune di Campione d'Italia|url=http://www.comune.campione-d-italia.co.it/|url-status=live|archive-url=https://web.archive.org/web/20110430223743/http://www.comune.campione-d-italia.co.it/|archive-date=30 April 2011|access-date=30 October 2010|publisher=Comune.campione-d-italia.co.it}}</ref></span>
| footnote_c = <span style="font-size:100%;">To call Campione d'Italia, it is necessary to use the Swiss code [[+41]].</span>
}}
ರೋಮನ್ ಸಾಮ್ರಾಜ್ಯೊದ ಅಪ್ಪೆ ಸಾನೊ '''ಇಟಲಿ''' ಮೆಡಿಟರೇನಿಯನ್ ಕಡಲ್ಡ್ ನೀರ್ದ್ ಉಂತ್ನ ದಿಂಜ ಕಿನ್ಯ ದ್ವೀಪೊ. ಗಾತ್ರೊಡು ಕಿನ್ಯ ಆಂಡಲಾ ಪಿರಾಕ್ದ್ ಕಾಲೊಡು ಉಂದು ಹೊಂದ್ದಿತ್ತಿನ ವ್ಯಾಪ್ತಿ ಅಚ್ಚರಿಯಾಪುನಂಚಿನವು. ರೋಮನ್ ಸಾಮ್ರಾಜ್ಯೊಗು ಇತ್ತಿನ ವಿಸ್ತಾರೊ ಬುಕ್ಕೊ ಅಚ್ಚ್ಕಟ್ಟ್ ಬೇತೆ ಒವ್ವೇ ಸಾಮ್ರಾಜ್ಯೊಗು ಬರಂದ್ಬ. ರೋಂ ಅಯಿತ ಬುಲೆಚಿಲ್ದ್ ಸ್ತಿತಿಡ್ ಆನಿದ ನಾಗರಿಕ ಪ್ರಪಂಚನೊ ಒಂಜಿ ಕೊಡೆದಡಿಟ್ ಸೇರಾವೊಂದು ಆಳ್ಂಡ್. ಅಯಿತ ವೈಬವೊ ತೋಜುನಂಚಿನವು, ಶಕ್ತಿ ಅದಮ್ಯೊ. ವಿಸ್ತಾರವಾಯಿನ ಸಾಮ್ರಾಜ್ಯೊಡು ಅವು ಏರ್ಪಾಟ್ ಆಡಳಿತೊ ವ್ಯವಸ್ಥೆ, ನ್ಯಾಯೊ, ಬದುಕುನ ಕ್ರಮೊ ಉಂದು ಇಡೀ ಸಾಮ್ರಾಜ್ಯೊದ ಐಕ್ಯೊಗು ಸಕಾಯೊ ಆಪುಂಡು.
== ಹಿನ್ನೆಲೆ ==
[[ರೋಮ್]]ಡ್ ನಡತಿನ ಈ ಬೃಹತ್ ವ್ಯವಹಾರೊಗು ಇಟಲಿದ ಭೂಮಿ ಆಶ್ರಯ ಕೊರ್ಂಡ್. ರೋಮನೆರ [[ಚರಿತ್ರೆ]], [[ನಾಗರಿಕತೆ]], [[ಸಂಸ್ಕೃತಿ]], ಕಲೆ ಇಂಚಿತ್ತಿ ವಿಸಯೊಡು ಅಲ್ಪಲ್ಪ ಪ್ರತ್ಯೇಕವಾದ್ ಬತ್ತ್ದ್ಂಡ್. ಮುಲ್ಪ ಇಟಲಿದ ಬಗೆಟ್ ಬತ್ತಿನ ಲೇಕನೊಲೆಡ್ ಆ ವಿಸಯೊಲೆ ಸಂಗ್ರಹ ನಿರೂಪಣೆ ಉಂಡು. ಮುಲ್ಪದ ಲೇಕನೊಲೆ ವ್ಯವಸ್ಥೆ ಇಂಚ ಉಂಡು. ಇಟಲಿ ಪನ್ಪುನ ಲೇಕನೊಡು ಅಯಿತ ಭೌಗೋಳಿಕ, ವಾಣಿಜ್ಯ ವಿಸಯೊಲೆ ವಿವರೊ ಉಂಡು. ಇಟಲಿದ [[ಇತಿಹಾಸ]], ಕಲೆ, [[ಛಂದಸ್ಸು]], [[ಬಾಸೆ]], [[ಸಂಗೀತ]], ಸಾಹಿತ್ಯ, ಸಾಹಿತ್ಯ ವಿಮರ್ಶೆಲೆ ಬಗೆಟ್ ಬೇತೆನೆ ತರೆಬರವು ಉಂಡು. ಇಟಲಿದ ಪ್ರಸಿದ್ಧ ವ್ಯಕ್ತಿಲೆ ಬಗೆಟ್ ಪ್ರಾಸ್ತಾವಿಕವಾದ್ ಕೆಲವು ವಿಸಯೊಲು ಈ ಪರಪುಡು ಬತ್ತ್ಂಡಲಾ ಅಕ್ಲೆನ ಬದ್ಕ್ ಬುಕ್ಕೊ ಸಾಧನೆಲೆ ಬಗೆಟ್ ವಿವರೊಲೆನ್ ಆಯಾ ವ್ಯಕ್ತಿಲೆನ ಕುರಿತಾದ್ ಲೇಕನೊಲೆಡ್ ಕೊರ್ತ್ಂಡ್.
== ಭೌಗೋಳಿಕ ವಿವರೊ ==
ಇಟಲಿ ದಕ್ಷಿಣ ಯೂರೋಪ್ದ ಒಂಜಿ ಗಣರಾಜ್ಯ (ರಿಪಬ್ಲಿಕಾ ಇಟಾಲಿಯಾನೊದ ಅತ್ತಂಡ ಇಟಾಲಿದ). ಯೂರೋಪುಡ್ದು ತೆನ್ಕಾಯಿ ಮೋನೆ ಆದ್ ಮೆಡಿಟರೇನಿಯನ್ ಕಡಲ್ದುಲಾಯಿ ಪರಡ್ನ ಮೂಜಿ ಪರ್ಯಾಯ ದ್ವೀಪೊಲೆಡ್ ನಡೂತವು; ಸಾನ್ ಮರೀನೊ ಬುಕ್ಕೊ ವ್ಯಾಟಿಕನ್ ನಗರ ಸೀಮೆಲೆನ್ ಬುಡ್ಂಡ ಒರಿನ ಬಾಗೊಲಾ ಈ ಬೂಸಿರೊದ ದುಂಬುದ ಬಾಗೊದಂಚ ಇಪ್ಪುನ ಸಿಸಿಲಿ ದ್ವೀಪೊ ಸಾರ್ಡಿನಿಯ, ಎಲ್ಬ ಬುಕ್ಕೊ ಸುಮಾರ್ ಎಲ್ಪೊ ಕಿನ್ಯ ದ್ವೀಪೊಲು ಸೇರ್ನ ಪ್ರದೇಸೊ. ಎತ್ತರ ಹಿಮ್ಮಡಿದ ಬೋಟ್ದ ಆಕಾರೊದ ಈ ಪರ್ಯಾಯ ದ್ವೀಪೊ ವಾಯವ್ಯೊ ದಿಕ್ಕ್ಡ್ದ್ ಆಗ್ನೇಯೊಗು ರೈಲು ಸಾದಿದ ಕೈಮರದಂಚ ಚಾಚೊಂದುಂಡು. ಬಡೆಕಾಯಿ ಅಕ್ಷಾಂಸೊ 470 5 ಡ್ದ್ 350 39 ಬುಟ್ಟ 1168 ಕಿ.ಮೀ. ಉದ್ದೊ ಇಪ್ಪುನ ಈ ದೇಸೊ ಇಡೀ 240 ಕಿ.ಮೀ.ಡ್ದ್ ಅಗೆಲೊ ಆತ್ಜಿ. ಉಂದು ಪೂರ್ವಾರ್ಧಗೋಳಡ್ ಪಡ್ಡೋಯಿಡ್ದ್ ಮೂಡಾಯಿಗ್ ರೇಖಾಂಶ 60 55 ಡ್ದ್ 180 30 ಮುಟ್ಟ ಪರಡ್ದ್ಂಡ್. ಇಟಲಿಗ್ ಬಡೆಕಾಯಿಡ್ ಬಿಲ್ಲ್ದಂಚ ಬಗ್ಗ್ದ್ ಪರಡ್ನ ಆಲ್ಪ್ಸ್ ಪರ್ವತಶ್ರೇಣಿಡ್ದ್ ಫ್ರಾನ್ಸ್ ಸ್ವಿಟ್ಜರ್ಲೆಂಡ್ ಆಸ್ಟ್ರಿಯ ಯುಗೋಸ್ಲಾವಿಯಲು ಇಟಲಿಲಾ ಪ್ರತ್ಯೇಕ ಆದುಂಡು. ಆಲ್ಪ್ಸ್ ಪರ್ವತಶ್ರೇಣಿದ ನೆತ್ತಿದ ಗೆರೆನೆ ಬಾರಿ ಮಟ್ಟ್ಗ್ ಇಟಲಿಗ್ಲಾ ಈ ದೇಸೊಗ್ಲಾ ನಡುತ ಗಡಿರೇಕೆ. ಇಟಲಿ ಪರ್ಯಾಯ ದ್ವೀಪೊದ ವಾಯುವ್ಯೊಡು ಲುಗುರಿಯನ್ ಸಮುದ್ರೊಲಾ ಪಡ್ಡೋಯಿಡ್ ಟೆರ್ಪೆನಿಯನ್ ಕಡಲ್ಲಾ ಆಗ್ನೇಯೊಡು ಐಯೊನಿಯನ್ ಕಡಲ್ಲಾ ಮೂಡಾಯಿಡ್ ಒಡ್ರಿಯಾಟಿಕ್ ಕಡಲ್ಲಾ ಉಂಡು. ಸಿಸಿಲಿ ದ್ವೀಪೊ ಆಫ್ರಿಕೊಗು ನಡುಟು ಇಪ್ಪುನ ಸಿಸಿಲಿಯನ್ ಜಲಸಂದಿದ ಅಗೆಲೊ ೧೪೪ ಕಿ.ಮೀ. ಇಂಚಾದ್ಹೀ ಇಟಲಿಲಾ ಸಿಸಿಲಿಲಾ ಮೇಡಿಟರೇನಿಯನ್ ಕಡಲ್ನೇ ಸ್ಥೂಲವಾದ್ ರಡ್ಡ್ ಬಾಗೊ ಆದುಂಡು. ಸಿಸಿಲಿ ಸಾರ್ಡಿನಿಯಲು ಕೂಡ್ನ ಇಟಲಿದ ಒಟ್ಟು ವಿಸ್ತೀರ್ಣೊ ೩,೦೧,೨೫೦ ಚ.ಕಿ.ಮೀ. ಆಡಳಿತ ಸೌಕರ್ಯೊಗಾದ್ ಇಂದೆನ್ ೧೯ ಬಾಗೊಲಾದ್ ವಿಂಗಡಿಸಯರ ಆತ್ಂಡ್. ಇಟಲಿದ ರಾಜಧಾನಿ ರೋಂ. ಡಿಸೆಂಬರ್ ೧೯೬೭ಡ್ ಇತ್ತಿನಂಚ ಈ ದೇಸೊದ ಜನಸಂಕ್ಯೆ ೫,೩೬,೫೬,೦೦೦. ರಡ್ಡನೆ ಯುದ್ದೊಡ್ದ್ ಬುಕ್ಕೊ ೧೯೪೭ಡ್ ಶಾಂತಿ ಕೌಲಿಗ್ನು ಅನುಗುಣವಾದ್ ಈ ದೇಸೊದ ಗಡಿ ಚರ್ಚೆ ಆತ್ಂಡ್. ಯುದ್ಧೊಗು ದುಂಬು ಉಂದು ಹೊಂದ್ದ್ ಇತ್ತಿನ ವಸಾಹತುಲೆ ಮಿತ್ತ್ದ ಹಕ್ಕ್ಲೆನ್ ಬುಡುದು ಕೊರ್ತ್ಂಡ್. ಇಂದೆತ ಆಕ್ರಮಣೊಗು ಉಲಾಯಿ ಆಯಿನ ಇಥಿಯೋಪಿಯ (ತೂಲೆ- ಅಬಿಸೀನಿಯ) ೧೯೪೨ಡ್ ತನ್ನೊ ಸೊಸಂತ್ರೊನು ಕೂಡ ಗಳಸೊನ್ಂಡ್. ಡೊಡೆಕನೀಸನ್ನ್ ೧೯೪೭ಡ್ ಗ್ರೀಸ್ಗ್ ಸೇರಾಯರ ಆಂಡ್. (ತೀಲೆ- ಗ್ರೀಸ್ದ-ಚರಿತ್ರೆ) ಲಿಬಿಯ ೧೯೫೧ಡ್ ಸೊಸಂತ್ರೊ ಆಂಡ್. ಎರಿಟ್ಟ್ರಿದ ಪ್ರದೇಸೊ ೧೯೫೨ಡ್ ಇಥಿಯೋಪಿಯ ಒಕ್ಕೊಟಡ್ ಸೇರ್ದ್ಂಡ್. ಸೋಮಾಲಿಯ ೧೯೫೦ಡ್ ಇಟಲಿದ ನ್ಯಾಸಾಧಿಕಾರೊಗು ಸೇರ್ದ್ಂಡು. ೧೯೬೦ದ ಜುಲೈ ತಿಂಗಲುಡು ಸೊಸಂತ್ರ ಗಣರಾಜ್ಯೊ ಆಂಡ್.
== ಇಟೆಲಿದ ವಾಸ್ತುಶಿಲ್ಪೊದ ಚಿತ್ರೊಲು ==
<gallery>
Image:Torino-mole10.jpg|
Image:Sant'Andrea-Vercelli-FacciataDestra.jpg|
Image:Villa Rotonda side(2).jpg|
Image:Trieste miramare.jpg|
Image:Basilique Saint Marc.jpg|
Image:Venedig rialtobruecke.jpg|
Image:Italy-Genova-lighthouse.jpg|
Image:Modena duomo.jpg|
Image:PalazzoDucaleUrbino.JPG|
Image:Pisa - Campo Santo - Campanile 4 - 2005-08-08 17-30 4832.JPG|
Image:Cattedrale di Santa Maria del Fiore Florenz März 2014.jpg|
Image:Ponte Vecchio.jpg|
Image:035 Siena (Piazza Del Campo-Palazzo Pubblico).jpg|
Image:La fontana di trevi.jpg|
Image:L'Aquila 2007 - basilica di Santa Maria di Collemaggio - facciata - by-RaBoe 008.jpg|
Image:Naples from the Castello Sant Elmo with Abbazia San Martino the port and the Vesuv.jpg|
Image:Scala Reggia Casertana.jpg|
Image:Castel del Monte BW 2016-10-14 13-16-07.jpg|
Image:Alberobello Trulli.jpg|
Image:Modica San Giorgio1.jpg|
Image:Palermo-San-Cataldo-bjs-1.jpg|
Image:Monreale-bjs2007-02.jpg|
</gallery>
== ಉಲ್ಲೇಕೊಲು ==
{{Reflist}}
[[ವರ್ಗೊ:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨]]
[[ವರ್ಗೊ:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಪಂತೊಗು ಬರೆಯಿನ ಲೇಕನೊ]]
[[ವರ್ಗೊ:ದೇಶೊಲು]]
3pqr3pvihbp6bu7ml0b6hfpfiruynsp
ಮೋಡ್ಯೂಲ್:Transclusion count/data/I
828
9814
370292
369989
2026-09-27T05:09:22Z
en>Ahechtbot
0
[[Wikipedia:BOT|Bot]]: Updated page.
370292
Scribunto
text/plain
return {
["IAST"] = 6300,
["IA_SCOTUS_URL"] = 3300,
["IBDB_name"] = 9800,
["ICD10"] = 5000,
["ICD9"] = 4400,
["ICS"] = 3500,
["ICS_flag"] = 3500,
["IDN"] = 3800,
["IMDb_episode"] = 11000,
["IMDb_episodes"] = 4300,
["IMDb_name"] = 173000,
["IMDb_title"] = 211000,
["IMO_Number"] = 4500,
["IMSLP"] = 9200,
["INA"] = 2400,
["IND"] = 8700,
["INR"] = 6600,
["INRConvert"] = 6800,
["INRConvert/CurrentRate"] = 6700,
["INRConvert/USD"] = 6700,
["INRConvert/out"] = 6700,
["IOBDB_name"] = 2100,
["IP"] = 2800,
["IPA"] = 182000,
["IPA_audio_link"] = 5200,
["IPA_link"] = 5100,
["IPAblink"] = 2600,
["IPAc-cmn"] = 2800,
["IPAc-en"] = 56000,
["IPAc-pl"] = 51000,
["IPSummary"] = 82000,
["IP_summary"] = 83000,
["IPtalk"] = 18000,
["IPuser"] = 7600,
["IPvandal"] = 3000,
["IRC"] = 7100,
["IRI"] = 2600,
["IRL"] = 6100,
["IRN"] = 4000,
["ISBN"] = 475000,
["ISBN?"] = 2500,
["ISBNT"] = 46000,
["ISBN_missing"] = 3200,
["ISFDB_name"] = 4300,
["ISFDB_title"] = 5100,
["ISL"] = 2300,
["ISO_15924/script-example-character"] = 3100,
["ISO_15924/wp-article"] = 3100,
["ISO_15924/wp-article/format"] = 3100,
["ISO_15924/wp-article/label"] = 3000,
["ISO_3166_code"] = 277000,
["ISO_3166_name"] = 16000,
["ISO_639_name"] = 28000,
["ISP"] = 3700,
["ISR"] = 6000,
["ISSN"] = 12000,
["ISSN_link"] = 33000,
["ISTAT"] = 8100,
["ISU_figure_skater"] = 2300,
["ITA"] = 20000,
["ITF"] = 6800,
["ITF_profile"] = 2600,
["ITIS"] = 5900,
["ITN_talk"] = 13000,
["ITN_talk/date"] = 13000,
["IUCN_banner"] = 15000,
["I_sup"] = 4900,
["Ice_hockey_box"] = 2000,
["Ice_hockey_stats"] = 20000,
["Icehockeystats"] = 11000,
["Icelandic_name"] = 2100,
["Icon"] = 670000,
["If"] = 436000,
["If_all"] = 7900,
["If_autoconfirmed"] = 2200,
["If_between"] = 4800,
["If_both"] = 209000,
["If_dark"] = 4100,
["If_dark/styles.css"] = 4100,
["If_either"] = 22000,
["If_empty"] = 6810000,
["If_first_display_both"] = 122000,
["If_in_category"] = 164000,
["If_in_page"] = 23000,
["If_last_display_both"] = 38000,
["If_mobile"] = 2100,
["If_mobile/styles.css"] = 3800,
["If_preview"] = 66000,
["If_then_show"] = 98000,
["Ifempty"] = 947000,
["Ifeq"] = 83000,
["Iferror_then_show"] = 4000,
["Ifexist_not_redirect"] = 1970000,
["Ifnotempty"] = 18000,
["Ifnoteq_then_show"] = 2300,
["Ifnumber"] = 77000,
["Ifsubst"] = 1020000,
["Ih"] = 8100,
["Ill"] = 259000,
["Illm"] = 5900,
["Image_frame"] = 6200,
["Image_label"] = 4700,
["Image_label_begin"] = 4100,
["Image_label_end"] = 4100,
["Image_label_small"] = 2600,
["Image_needed"] = 4400,
["Image_other"] = 191000,
["Image_requested"] = 136000,
["Image_requested/Category_helper"] = 126000,
["Imbox"] = 1000000,
["Imdb_name"] = 5400,
["Imdb_title"] = 2900,
["Importance"] = 15000,
["Importance/colour"] = 30000,
["Importance_mask"] = 630000,
["Improve_categories"] = 7000,
["Improve_documentation"] = 4200,
["Improve_plot"] = 4100,
["In_class"] = 5600,
["In_lang"] = 389000,
["In_progress"] = 3800,
["In_string"] = 309000,
["In_title"] = 31000,
["Inactive_userpage_blanked"] = 3700,
["Inaturalist_taxon"] = 3800,
["Include-USGov"] = 24000,
["Incomplete_list"] = 24000,
["Inconclusive"] = 2400,
["Increase"] = 61000,
["Incumbent_pope"] = 4400,
["Indent"] = 2400,
["Indented_plain_list"] = 2800,
["Indented_plainlist"] = 2600,
["Independent_sources"] = 10000,
["IndexFungorum"] = 2100,
["Indian_English"] = 5000,
["Indian_railway_code"] = 3600,
["Indian_rupee"] = 12000,
["Inflation"] = 27000,
["Inflation-fn"] = 5900,
["Inflation-year"] = 4300,
["Inflation/IN/startyear"] = 6700,
["Inflation/UK"] = 5600,
["Inflation/UK/dataset"] = 5600,
["Inflation/UK/startyear"] = 5600,
["Inflation/US"] = 16000,
["Inflation/US-GDP"] = 3100,
["Inflation/US-GDP/dataset"] = 3100,
["Inflation/US-GDP/startyear"] = 3100,
["Inflation/US/dataset"] = 16000,
["Inflation/US/startyear"] = 16000,
["Inflation/fn"] = 7600,
["Inflation/year"] = 34000,
["Info"] = 5600,
["Infobox"] = 3430000,
["Infobox/Columns"] = 3300,
["Infobox/mobileviewfix.css"] = 176000,
["Infobox/styles-images.css"] = 20000,
["Infobox3cols"] = 28000,
["Infobox_AFL_biography"] = 15000,
["Infobox_Athletics_Championships"] = 3400,
["Infobox_Australian_place"] = 15000,
["Infobox_Australian_place/styles.css"] = 15000,
["Infobox_Australian_place/table"] = 11000,
["Infobox_COA_wide"] = 3700,
["Infobox_Canada_electoral_district"] = 2700,
["Infobox_Chinese"] = 24000,
["Infobox_Chinese/Chinese"] = 3200,
["Infobox_Chinese/Footer"] = 7200,
["Infobox_Chinese/Header"] = 7200,
["Infobox_Christian_leader"] = 23000,
["Infobox_French_commune"] = 38000,
["Infobox_French_subdivision"] = 2200,
["Infobox_Gaelic_games_biography"] = 5500,
["Infobox_Gaelic_games_player"] = 3000,
["Infobox_German_location"] = 11000,
["Infobox_German_place"] = 14000,
["Infobox_Grand_Prix_race_report"] = 2200,
["Infobox_Greece_place"] = 3600,
["Infobox_Greek_Dimos"] = 2900,
["Infobox_Hindu_temple"] = 2900,
["Infobox_Indian_constituency"] = 5800,
["Infobox_Indian_constituency/defaultdata"] = 5800,
["Infobox_Italian_comune"] = 8100,
["Infobox_Korean"] = 2100,
["Infobox_Korean/auto"] = 15000,
["Infobox_Korean/auto/categories"] = 15000,
["Infobox_Korean/base"] = 2100,
["Infobox_Korean/base/auto"] = 18000,
["Infobox_Korean/categories"] = 2100,
["Infobox_Korean_name"] = 2100,
["Infobox_Korean_name/auto"] = 14000,
["Infobox_Korean_television_name"] = 3400,
["Infobox_NASCAR_driver"] = 2400,
["Infobox_NASCAR_race_report"] = 2800,
["Infobox_NCAA_basketball_conference_tournament"] = 2100,
["Infobox_NCAA_team_season"] = 10000,
["Infobox_NFL_biography"] = 27000,
["Infobox_NFL_team_season"] = 2300,
["Infobox_NRHP"] = 74000,
["Infobox_NRHP/conv"] = 19000,
["Infobox_NRHP/pushpinmap2region"] = 68000,
["Infobox_Olympic_event"] = 8100,
["Infobox_Olympic_event/event_link"] = 8100,
["Infobox_Olympic_event/games_text"] = 8100,
["Infobox_Pan_American_Games_event"] = 2900,
["Infobox_Paralympic_event"] = 2900,
["Infobox_Paralympic_event/games_text"] = 2900,
["Infobox_Romanian_subdivision"] = 3200,
["Infobox_Russian_district"] = 2100,
["Infobox_Russian_inhabited_locality"] = 4700,
["Infobox_Russian_inhabited_locality/PosMapFS"] = 4200,
["Infobox_Russian_inhabited_locality/federal_subject"] = 4700,
["Infobox_SCOTUS_case"] = 4600,
["Infobox_SSSI"] = 2000,
["Infobox_Site_of_Special_Scientific_Interest"] = 2100,
["Infobox_Slovak_place"] = 3000,
["Infobox_Swiss_town"] = 2900,
["Infobox_Switzerland_municipality"] = 2900,
["Infobox_Turkey_place"] = 20000,
["Infobox_U.S._county"] = 3000,
["Infobox_U.S._county/district"] = 3000,
["Infobox_U.S._legislation"] = 2300,
["Infobox_UK_constituency"] = 2200,
["Infobox_UK_constituency/year"] = 2200,
["Infobox_UK_legislation"] = 6500,
["Infobox_UK_place"] = 27000,
["Infobox_UK_place/NoDialCode"] = 8200,
["Infobox_UK_place/NoPostCode"] = 3700,
["Infobox_UK_place/area"] = 2800,
["Infobox_UK_place/dens"] = 2300,
["Infobox_UK_place/dist"] = 2800,
["Infobox_UK_place/local"] = 27000,
["Infobox_UK_place/styles.css"] = 27000,
["Infobox_UNESCO_World_Heritage_Site"] = 2100,
["Infobox_UN_resolution"] = 2300,
["Infobox_US_Supreme_Court_case"] = 4800,
["Infobox_US_Supreme_Court_case/courts"] = 4800,
["Infobox_United_States_legislative_district"] = 2800,
["Infobox_United_States_legislative_district/representative"] = 2800,
["Infobox_Wikipedia_user"] = 12000,
["Infobox_academic"] = 27000,
["Infobox_aircraft"] = 13000,
["Infobox_aircraft/styles.css"] = 14000,
["Infobox_aircraft_occurrence"] = 2900,
["Infobox_airline"] = 4800,
["Infobox_airline/styles.css"] = 4800,
["Infobox_airport"] = 14000,
["Infobox_airport/datatable"] = 13000,
["Infobox_airport/styles.css"] = 14000,
["Infobox_album"] = 169000,
["Infobox_album/color"] = 209000,
["Infobox_album/link"] = 169000,
["Infobox_anatomy"] = 4500,
["Infobox_animanga/Footer"] = 7800,
["Infobox_animanga/Header"] = 7800,
["Infobox_animanga/Print"] = 6700,
["Infobox_animanga/Video"] = 5100,
["Infobox_architect"] = 4500,
["Infobox_artist"] = 35000,
["Infobox_artist_discography"] = 6500,
["Infobox_artwork"] = 16000,
["Infobox_automobile"] = 9300,
["Infobox_award"] = 16000,
["Infobox_badminton_player"] = 3300,
["Infobox_baseball_biography"] = 30000,
["Infobox_baseball_biography/style"] = 30000,
["Infobox_baseball_biography/styles.css"] = 30000,
["Infobox_baseball_team_season"] = 3300,
["Infobox_baseball_team_season/leagueseason"] = 3300,
["Infobox_baseball_team_season/season"] = 3300,
["Infobox_baseball_team_season/styles.css"] = 3300,
["Infobox_basketball_biography"] = 23000,
["Infobox_basketball_biography/style"] = 23000,
["Infobox_basketball_club"] = 3300,
["Infobox_basketball_club/styles.css"] = 3300,
["Infobox_beauty_pageant"] = 2200,
["Infobox_bilateral_relations"] = 5000,
["Infobox_bishop_styles"] = 2500,
["Infobox_body_of_water"] = 19000,
["Infobox_book"] = 63000,
["Infobox_book/styles.css"] = 63000,
["Infobox_boxer"] = 6600,
["Infobox_brand"] = 2200,
["Infobox_brand/styles.css"] = 2200,
["Infobox_bridge"] = 6800,
["Infobox_building"] = 35000,
["Infobox_bus_company"] = 2100,
["Infobox_cemetery"] = 2200,
["Infobox_character"] = 8500,
["Infobox_character/styles.css"] = 8500,
["Infobox_chess_biography"] = 4800,
["Infobox_chess_player"] = 3800,
["Infobox_church"] = 17000,
["Infobox_church/denomination"] = 17000,
["Infobox_church/font_color"] = 17000,
["Infobox_civil_conflict"] = 3300,
["Infobox_civilian_attack"] = 7800,
["Infobox_college_coach"] = 13000,
["Infobox_college_football_game"] = 2300,
["Infobox_college_football_player"] = 2700,
["Infobox_college_sports_team_season"] = 46000,
["Infobox_college_sports_team_season/link"] = 46000,
["Infobox_college_sports_team_season/name"] = 46000,
["Infobox_college_sports_team_season/succession"] = 46000,
["Infobox_college_sports_team_season/team"] = 46000,
["Infobox_comedian"] = 2200,
["Infobox_comic_book_title"] = 3200,
["Infobox_comics_character"] = 3400,
["Infobox_comics_creator"] = 3600,
["Infobox_comics_creator/styles.css"] = 3600,
["Infobox_company"] = 93000,
["Infobox_company/styles.css"] = 93000,
["Infobox_computing_device"] = 2600,
["Infobox_concert"] = 4000,
["Infobox_constituency"] = 8100,
["Infobox_country"] = 7200,
["Infobox_country/formernext"] = 6700,
["Infobox_country/imagetable"] = 5600,
["Infobox_country/multirow"] = 9300,
["Infobox_country/status_text"] = 3100,
["Infobox_country/styles.css"] = 7200,
["Infobox_country_at_games"] = 17000,
["Infobox_country_at_games/core"] = 17000,
["Infobox_country_at_games/see_also"] = 14000,
["Infobox_court_case"] = 5400,
["Infobox_court_case/images"] = 2900,
["Infobox_court_case/styles.css"] = 5400,
["Infobox_cricket_tournament"] = 2800,
["Infobox_cricketer"] = 32000,
["Infobox_cricketer/career"] = 32000,
["Infobox_cricketer/national_side"] = 7700,
["Infobox_criminal"] = 7800,
["Infobox_curler"] = 2800,
["Infobox_cycling_race_report"] = 5000,
["Infobox_cyclist"] = 17000,
["Infobox_dam"] = 5900,
["Infobox_deity"] = 2300,
["Infobox_deity/color"] = 2300,
["Infobox_designation_list"] = 33000,
["Infobox_designation_list/entry"] = 23000,
["Infobox_dim"] = 6400,
["Infobox_diocese"] = 4100,
["Infobox_drug"] = 12000,
["Infobox_drug/chemical_formula"] = 12000,
["Infobox_drug/data_page_link"] = 12000,
["Infobox_drug/formatATC"] = 12000,
["Infobox_drug/formatCASnumber"] = 12000,
["Infobox_drug/formatChEBI"] = 12000,
["Infobox_drug/formatChEMBL"] = 12000,
["Infobox_drug/formatChemDBNIAID"] = 12000,
["Infobox_drug/formatChemSpider"] = 12000,
["Infobox_drug/formatCompTox"] = 12000,
["Infobox_drug/formatDrugBank"] = 12000,
["Infobox_drug/formatIUPHARBPS"] = 12000,
["Infobox_drug/formatJmol"] = 12000,
["Infobox_drug/formatKEGG"] = 12000,
["Infobox_drug/formatPDBligand"] = 11000,
["Infobox_drug/formatPubChemCID"] = 12000,
["Infobox_drug/formatPubChemSID"] = 12000,
["Infobox_drug/formatUNII"] = 12000,
["Infobox_drug/legal_status"] = 12000,
["Infobox_drug/licence"] = 12000,
["Infobox_drug/maintenance_categories"] = 12000,
["Infobox_drug/non-ref-space"] = 4000,
["Infobox_drug/pregnancy_category"] = 12000,
["Infobox_drug/styles.css"] = 12000,
["Infobox_drug/title"] = 12000,
["Infobox_economist"] = 2000,
["Infobox_election"] = 41000,
["Infobox_election/shortname"] = 2600,
["Infobox_election/styles.css"] = 41000,
["Infobox_enzyme"] = 5100,
["Infobox_ethnic_group"] = 8100,
["Infobox_event"] = 8000,
["Infobox_family"] = 2800,
["Infobox_field_hockey_player"] = 2600,
["Infobox_figure_skater"] = 4000,
["Infobox_film"] = 171000,
["Infobox_film/short_description"] = 166000,
["Infobox_film_awards"] = 3200,
["Infobox_film_awards/link"] = 3200,
["Infobox_film_awards/style"] = 3200,
["Infobox_film_or_theatre_festival"] = 2100,
["Infobox_food"] = 7800,
["Infobox_football_biography"] = 219000,
["Infobox_football_club"] = 30000,
["Infobox_football_club_season"] = 24000,
["Infobox_football_league"] = 2800,
["Infobox_football_league_season"] = 22000,
["Infobox_football_match"] = 6800,
["Infobox_football_tournament"] = 2200,
["Infobox_football_tournament_season"] = 9400,
["Infobox_former_subdivision"] = 3800,
["Infobox_former_subdivision/styles.css"] = 3800,
["Infobox_galaxy"] = 3400,
["Infobox_game"] = 3200,
["Infobox_game_score"] = 3800,
["Infobox_games"] = 2100,
["Infobox_gene"] = 13000,
["Infobox_given_name"] = 4100,
["Infobox_golfer"] = 4900,
["Infobox_golfer/highest_ranking"] = 4900,
["Infobox_government_agency"] = 13000,
["Infobox_government_cabinet"] = 3600,
["Infobox_gridiron_football_biography"] = 40000,
["Infobox_gridiron_football_biography/position"] = 40000,
["Infobox_gridiron_football_team_season"] = 4100,
["Infobox_gymnast"] = 6000,
["Infobox_handball_biography"] = 5600,
["Infobox_historic_site"] = 22000,
["Infobox_holiday"] = 2200,
["Infobox_holiday/date"] = 2200,
["Infobox_horseraces"] = 2700,
["Infobox_hospital"] = 7000,
["Infobox_hospital/care_system"] = 7000,
["Infobox_hospital/lists"] = 7000,
["Infobox_hurling_championship"] = 2700,
["Infobox_ice_hockey_biography"] = 21000,
["Infobox_ice_hockey_player"] = 18000,
["Infobox_ice_hockey_team"] = 3300,
["Infobox_ice_hockey_team_season"] = 2200,
["Infobox_international_football_competition"] = 6800,
["Infobox_islands"] = 9700,
["Infobox_islands/area"] = 10000,
["Infobox_islands/density"] = 10000,
["Infobox_islands/length"] = 9700,
["Infobox_islands/styles.css"] = 9700,
["Infobox_journal"] = 10000,
["Infobox_journal/Abbreviation_search"] = 10000,
["Infobox_journal/Bluebook_check"] = 10000,
["Infobox_journal/Former_check"] = 10000,
["Infobox_journal/ISO_4_check"] = 10000,
["Infobox_journal/ISSN-eISSN"] = 10000,
["Infobox_journal/Indexing_search"] = 10000,
["Infobox_journal/MathSciNet_check"] = 10000,
["Infobox_journal/NLM_check"] = 10000,
["Infobox_journal/frequency"] = 9100,
["Infobox_journal/openaccess"] = 2700,
["Infobox_judoka"] = 2800,
["Infobox_lake"] = 3800,
["Infobox_language"] = 10000,
["Infobox_language/family-color"] = 12000,
["Infobox_language/genetic"] = 7000,
["Infobox_language/lingualist"] = 12000,
["Infobox_language/linguistlist"] = 10000,
["Infobox_language/ref"] = 7400,
["Infobox_law_enforcement_agency"] = 2200,
["Infobox_legislation"] = 2800,
["Infobox_legislative_district"] = 2400,
["Infobox_legislative_election"] = 2700,
["Infobox_legislative_election/row"] = 2600,
["Infobox_legislative_election/styles.css"] = 2700,
["Infobox_legislative_term"] = 2200,
["Infobox_legislature"] = 4400,
["Infobox_library"] = 2500,
["Infobox_lighthouse"] = 2700,
["Infobox_lighthouse/light"] = 2700,
["Infobox_locomotive"] = 5000,
["Infobox_magazine"] = 8400,
["Infobox_manner_of_address"] = 4200,
["Infobox_martial_artist"] = 6300,
["Infobox_martial_artist/record"] = 6300,
["Infobox_medal_templates"] = 479000,
["Infobox_medical_condition"] = 9900,
["Infobox_medical_condition_(new)"] = 6300,
["Infobox_medical_details"] = 2600,
["Infobox_medical_person"] = 2500,
["Infobox_militant_organization"] = 2200,
["Infobox_military_conflict"] = 28000,
["Infobox_military_installation"] = 11000,
["Infobox_military_person"] = 54000,
["Infobox_military_unit"] = 29000,
["Infobox_mine"] = 2300,
["Infobox_mineral"] = 2000,
["Infobox_mobile_phone"] = 2500,
["Infobox_mobile_phone/size"] = 2200,
["Infobox_mobile_phone/weight"] = 2200,
["Infobox_model"] = 2300,
["Infobox_monument"] = 2900,
["Infobox_motorsport_season"] = 2900,
["Infobox_mountain"] = 30000,
["Infobox_multi-sport_competition_event"] = 2900,
["Infobox_museum"] = 12000,
["Infobox_musical_artist"] = 132000,
["Infobox_musical_artist/hCard_class"] = 122000,
["Infobox_musical_composition"] = 3700,
["Infobox_name"] = 8800,
["Infobox_name_module"] = 9600,
["Infobox_newspaper"] = 11000,
["Infobox_newspaper/styles.css"] = 11000,
["Infobox_noble"] = 7900,
["Infobox_officeholder"] = 283000,
["Infobox_officeholder/office"] = 290000,
["Infobox_official_post"] = 9900,
["Infobox_organization"] = 43000,
["Infobox_pageant_titleholder"] = 3100,
["Infobox_park"] = 10000,
["Infobox_person"] = 675000,
["Infobox_person/Wikidata"] = 5000,
["Infobox_person/height"] = 116000,
["Infobox_person/length"] = 7700,
["Infobox_person/weight"] = 74000,
["Infobox_philosopher"] = 3800,
["Infobox_planet"] = 4800,
["Infobox_play"] = 4600,
["Infobox_political_party"] = 16000,
["Infobox_power_station"] = 3400,
["Infobox_prepared_food"] = 2500,
["Infobox_professional_wrestler"] = 4800,
["Infobox_professional_wrestling_event"] = 3400,
["Infobox_protected_area"] = 15000,
["Infobox_protein_family"] = 2200,
["Infobox_publisher"] = 2600,
["Infobox_racehorse"] = 6000,
["Infobox_racing_driver"] = 6000,
["Infobox_racing_driver_series_section"] = 2900,
["Infobox_radio_station"] = 22000,
["Infobox_radio_station/styles.css"] = 22000,
["Infobox_rail"] = 3200,
["Infobox_rail_line"] = 8100,
["Infobox_rail_service"] = 3300,
["Infobox_reality_competition_season"] = 4400,
["Infobox_record_label"] = 4200,
["Infobox_recurring_event"] = 8100,
["Infobox_religious_biography"] = 7200,
["Infobox_religious_building"] = 15000,
["Infobox_religious_building/color"] = 22000,
["Infobox_restaurant"] = 4700,
["Infobox_river"] = 32000,
["Infobox_river/calcunit"] = 32000,
["Infobox_river/discharge"] = 32000,
["Infobox_river/row-style"] = 32000,
["Infobox_river/source"] = 32000,
["Infobox_road"] = 25000,
["Infobox_road/meta/mask/category"] = 24000,
["Infobox_road/meta/mask/country"] = 25000,
["Infobox_road/styles.css"] = 26000,
["Infobox_road_small"] = 2500,
["Infobox_rockunit"] = 6500,
["Infobox_royalty"] = 26000,
["Infobox_royalty/short_description"] = 8800,
["Infobox_rugby_biography"] = 19000,
["Infobox_rugby_biography/correct_date"] = 19000,
["Infobox_rugby_biography/depcheck"] = 19000,
["Infobox_rugby_league_biography"] = 11000,
["Infobox_rugby_league_biography/PLAYER"] = 11000,
["Infobox_rugby_team"] = 2700,
["Infobox_sailboat_specifications"] = 2300,
["Infobox_saint"] = 5500,
["Infobox_school"] = 39000,
["Infobox_school/short_description"] = 39000,
["Infobox_school/styles.css"] = 39000,
["Infobox_school_district"] = 6500,
["Infobox_school_district/styles.css"] = 6500,
["Infobox_scientist"] = 57000,
["Infobox_settlement"] = 598000,
["Infobox_settlement/areadisp"] = 259000,
["Infobox_settlement/columns"] = 108000,
["Infobox_settlement/columns/styles.css"] = 108000,
["Infobox_settlement/densdisp"] = 458000,
["Infobox_settlement/lengthdisp"] = 182000,
["Infobox_settlement/link"] = 108000,
["Infobox_settlement/styles.css"] = 598000,
["Infobox_ship"] = 43000,
["Infobox_ship/career"] = 39000,
["Infobox_ship/characteristics"] = 43000,
["Infobox_ship/class_overview"] = 4400,
["Infobox_ship/image"] = 42000,
["Infobox_ship/service_record"] = 2500,
["Infobox_shopping_mall"] = 3800,
["Infobox_short_story"] = 2700,
["Infobox_skier"] = 2700,
["Infobox_soap_character"] = 3100,
["Infobox_social_media_personality"] = 4400,
["Infobox_software"] = 14000,
["Infobox_software/simple"] = 15000,
["Infobox_song"] = 84000,
["Infobox_song/color"] = 84000,
["Infobox_song/link"] = 84000,
["Infobox_song_contest_national_year"] = 2000,
["Infobox_song_contest_national_year/Year"] = 2100,
["Infobox_spaceflight"] = 4100,
["Infobox_spaceflight/styles.css"] = 4100,
["Infobox_speed_skater"] = 2000,
["Infobox_sport_event"] = 2800,
["Infobox_sports_competition_event"] = 24000,
["Infobox_sports_competition_event/medalrow"] = 16000,
["Infobox_sports_league"] = 5700,
["Infobox_sports_season"] = 7000,
["Infobox_sports_team"] = 2300,
["Infobox_sportsperson"] = 161000,
["Infobox_stadium"] = 2600,
["Infobox_station"] = 58000,
["Infobox_station/services"] = 58000,
["Infobox_station/styles.css"] = 58000,
["Infobox_street"] = 4500,
["Infobox_swimmer"] = 11000,
["Infobox_television"] = 64000,
["Infobox_television/Short_description"] = 62000,
["Infobox_television/styles.css"] = 64000,
["Infobox_television_channel"] = 6700,
["Infobox_television_channel/styles.css"] = 6700,
["Infobox_television_episode"] = 13000,
["Infobox_television_episode/styles.css"] = 14000,
["Infobox_television_season"] = 11000,
["Infobox_television_station"] = 3200,
["Infobox_television_station/styles.css"] = 3300,
["Infobox_tennis_biography"] = 11000,
["Infobox_tennis_event"] = 3400,
["Infobox_tennis_tournament"] = 2000,
["Infobox_tennis_tournament/heading"] = 2000,
["Infobox_tennis_tournament/style"] = 2000,
["Infobox_tennis_tournament_event"] = 22000,
["Infobox_tennis_tournament_year"] = 11000,
["Infobox_tennis_tournament_year/color"] = 33000,
["Infobox_tennis_tournament_year/footer"] = 33000,
["Infobox_tournament_season"] = 13000,
["Infobox_train"] = 2600,
["Infobox_university"] = 25000,
["Infobox_user"] = 3000,
["Infobox_venue"] = 20000,
["Infobox_video_game"] = 30000,
["Infobox_video_game/styles.css"] = 30000,
["Infobox_volleyball_biography"] = 5900,
["Infobox_weapon"] = 8100,
["Infobox_weather_event"] = 3600,
["Infobox_weather_event/Effects"] = 3400,
["Infobox_weather_event/Footer"] = 3400,
["Infobox_weather_event/History"] = 3300,
["Infobox_weather_event/SSHWS"] = 2000,
["Infobox_weather_event/meteorology"] = 3200,
["Infobox_weather_event/scale"] = 2100,
["Infobox_weather_event/styles.css"] = 3600,
["Infobox_website"] = 8300,
["Infobox_writer"] = 46000,
["Information"] = 98000,
["Information/styles.css"] = 98000,
["Inlang"] = 2400,
["Inline"] = 3800,
["Inline_block"] = 5400,
["Inprogress"] = 2700,
["Input_link"] = 32000,
["Instagram"] = 21000,
["InterSportStats"] = 6400,
["Interlanguage_link"] = 307000,
["Interlanguage_link_multi"] = 9300,
["International_Paralympic_Committee"] = 4300,
["International_football_primary_link"] = 3600,
["International_football_primary_style"] = 3600,
["International_football_secondary_style"] = 3500,
["Internet_Archive"] = 2200,
["Internet_Archive_SCOTUS_URL"] = 3300,
["Internet_Archive_author"] = 19000,
["Internet_Archive_film"] = 2600,
["Intitle"] = 22000,
["Ip"] = 2100,
["Iptalk"] = 18000,
["IranCensus2006"] = 29000,
["IranNCSGN"] = 3100,
["Iran_Census_2006"] = 29000,
["Irish_place_name"] = 3000,
["IsIPAddress"] = 47000,
["IsValidPageName"] = 3400,
["Is_MLB_league"] = 3300,
["Is_NPB_league"] = 3300,
["Is_continent"] = 13000,
["Is_country_in_Central_America"] = 17000,
["Is_country_in_the_Caribbean"] = 17000,
["Is_interwiki_link"] = 6300,
["Is_italic_taxon"] = 656000,
["Is_redirect"] = 386000,
["Is_time"] = 6700,
["Is_valid_page_name"] = 3400,
["Isbn"] = 10000,
["Isnum"] = 3000,
["Isnumeric"] = 121000,
["Iso2continent"] = 110000,
["Iso2country"] = 26000,
["Iso2country/article"] = 25000,
["Iso2country/data"] = 26000,
["Issubst"] = 64000,
["Italic_dab2"] = 5900,
["Italic_disambiguation"] = 2400,
["Italic_title"] = 259000,
["Italic_title_prefixed"] = 8800,
["Italictitle"] = 3000,
["Ivmbox"] = 143000,
["Ivory_messagebox"] = 191000,
["Ivory_messagebox/styles.css"] = 191000,
["Module:I18n/complex_date"] = 48000,
["Module:IP"] = 218000,
["Module:IPA"] = 185000,
["Module:IPA/data"] = 167000,
["Module:IPA/styles.css"] = 152000,
["Module:IPA_symbol"] = 6900,
["Module:IPA_symbol/data"] = 6900,
["Module:IPAc-en"] = 56000,
["Module:IPAc-en/data"] = 56000,
["Module:IPAc-en/phonemes"] = 56000,
["Module:IPAc-en/pronunciation"] = 56000,
["Module:IPAddress"] = 287000,
["Module:ISO_3166"] = 948000,
["Module:ISO_3166/data/AT"] = 2500,
["Module:ISO_3166/data/BA"] = 3400,
["Module:ISO_3166/data/CA"] = 2600,
["Module:ISO_3166/data/CH"] = 4200,
["Module:ISO_3166/data/CN"] = 2800,
["Module:ISO_3166/data/CZ"] = 6600,
["Module:ISO_3166/data/DE"] = 15000,
["Module:ISO_3166/data/ES"] = 3700,
["Module:ISO_3166/data/FR"] = 38000,
["Module:ISO_3166/data/GB"] = 7200,
["Module:ISO_3166/data/GR"] = 3500,
["Module:ISO_3166/data/IN"] = 29000,
["Module:ISO_3166/data/IR"] = 24000,
["Module:ISO_3166/data/IT"] = 2500,
["Module:ISO_3166/data/National"] = 948000,
["Module:ISO_3166/data/PL"] = 7600,
["Module:ISO_3166/data/RS"] = 3200,
["Module:ISO_3166/data/RU"] = 27000,
["Module:ISO_3166/data/UA"] = 2200,
["Module:ISO_3166/data/US"] = 90000,
["Module:ISO_639_name"] = 34000,
["Module:ISO_639_name/ISO_639-1"] = 29000,
["Module:ISO_639_name/ISO_639-2"] = 21000,
["Module:ISO_639_name/ISO_639-2B"] = 20000,
["Module:ISO_639_name/ISO_639-3"] = 20000,
["Module:ISO_639_name/ISO_639-3_(dep)"] = 34000,
["Module:ISO_639_name/ISO_639-5"] = 19000,
["Module:ISO_639_name/ISO_639_deprecated"] = 34000,
["Module:ISO_639_name/ISO_639_name_to_code"] = 4600,
["Module:ISO_639_name/ISO_639_override"] = 34000,
["Module:ISOdate"] = 48000,
["Module:Ice_hockey_box"] = 2000,
["Module:Icon"] = 683000,
["Module:Icon/data"] = 683000,
["Module:Icon_box"] = 264000,
["Module:Icon_box/data"] = 264000,
["Module:If_any_equal"] = 255000,
["Module:If_empty"] = 6840000,
["Module:If_in_category"] = 164000,
["Module:If_in_page"] = 23000,
["Module:If_not_given_or_empty"] = 126000,
["Module:If_preview"] = 1530000,
["Module:If_preview/configuration"] = 1530000,
["Module:If_preview/styles.css"] = 1530000,
["Module:In_lang"] = 390000,
["Module:Indent"] = 2400,
["Module:Infobox"] = 4710000,
["Module:Infobox/dates"] = 78000,
["Module:Infobox/styles.css"] = 4980000,
["Module:Infobox/utilities"] = 2600,
["Module:Infobox3cols"] = 322000,
["Module:InfoboxBuilder"] = 3100,
["Module:InfoboxImage"] = 5650000,
["Module:InfoboxImage/data"] = 3380000,
["Module:Infobox_body_of_water_tracking"] = 19000,
["Module:Infobox_cyclist_tracking"] = 17000,
["Module:Infobox_dim"] = 381000,
["Module:Infobox_dim/data"] = 234000,
["Module:Infobox_election"] = 43000,
["Module:Infobox_gene"] = 13000,
["Module:Infobox_gene/orthologs"] = 13000,
["Module:Infobox_mapframe"] = 1680000,
["Module:Infobox_military_conflict"] = 28000,
["Module:Infobox_military_conflict/styles.css"] = 28000,
["Module:Infobox_multi-lingual_name"] = 24000,
["Module:Infobox_multi-lingual_name/data"] = 24000,
["Module:Infobox_power_station"] = 3400,
["Module:Infobox_road"] = 26000,
["Module:Infobox_road/browselinks"] = 26000,
["Module:Infobox_road/errors"] = 25000,
["Module:Infobox_road/length"] = 26000,
["Module:Infobox_road/locations"] = 25000,
["Module:Infobox_road/map"] = 25000,
["Module:Infobox_road/route"] = 26000,
["Module:Infobox_road/sections"] = 25000,
["Module:Infobox_ship"] = 43000,
["Module:Infobox_ship/data"] = 43000,
["Module:Infobox_ship/styles.css"] = 43000,
["Module:Infobox_television"] = 64000,
["Module:Infobox_television_disambiguation_check"] = 72000,
["Module:Infobox_television_episode"] = 13000,
["Module:Infobox_television_season_disambiguation_check"] = 10000,
["Module:Infobox_television_season_name"] = 11000,
["Module:Internet_Archive"] = 22000,
["Module:Is_article"] = 2400,
["Module:Is_infobox_in_lead"] = 462000,
["Module:Is_instance"] = 360000,
["Module:Iso2nationality"] = 96000,
["Module:Italic_title"] = 1260000,
["Module:Italic_title2"] = 5900,
}
bj6sz9p46e6nf2e5qkqyx9i5e0kv2rx
370293
370292
2026-09-28T01:40:47Z
ChiK
1136
1 revision imported from [[:en:Module:Transclusion_count/data/I]]
370292
Scribunto
text/plain
return {
["IAST"] = 6300,
["IA_SCOTUS_URL"] = 3300,
["IBDB_name"] = 9800,
["ICD10"] = 5000,
["ICD9"] = 4400,
["ICS"] = 3500,
["ICS_flag"] = 3500,
["IDN"] = 3800,
["IMDb_episode"] = 11000,
["IMDb_episodes"] = 4300,
["IMDb_name"] = 173000,
["IMDb_title"] = 211000,
["IMO_Number"] = 4500,
["IMSLP"] = 9200,
["INA"] = 2400,
["IND"] = 8700,
["INR"] = 6600,
["INRConvert"] = 6800,
["INRConvert/CurrentRate"] = 6700,
["INRConvert/USD"] = 6700,
["INRConvert/out"] = 6700,
["IOBDB_name"] = 2100,
["IP"] = 2800,
["IPA"] = 182000,
["IPA_audio_link"] = 5200,
["IPA_link"] = 5100,
["IPAblink"] = 2600,
["IPAc-cmn"] = 2800,
["IPAc-en"] = 56000,
["IPAc-pl"] = 51000,
["IPSummary"] = 82000,
["IP_summary"] = 83000,
["IPtalk"] = 18000,
["IPuser"] = 7600,
["IPvandal"] = 3000,
["IRC"] = 7100,
["IRI"] = 2600,
["IRL"] = 6100,
["IRN"] = 4000,
["ISBN"] = 475000,
["ISBN?"] = 2500,
["ISBNT"] = 46000,
["ISBN_missing"] = 3200,
["ISFDB_name"] = 4300,
["ISFDB_title"] = 5100,
["ISL"] = 2300,
["ISO_15924/script-example-character"] = 3100,
["ISO_15924/wp-article"] = 3100,
["ISO_15924/wp-article/format"] = 3100,
["ISO_15924/wp-article/label"] = 3000,
["ISO_3166_code"] = 277000,
["ISO_3166_name"] = 16000,
["ISO_639_name"] = 28000,
["ISP"] = 3700,
["ISR"] = 6000,
["ISSN"] = 12000,
["ISSN_link"] = 33000,
["ISTAT"] = 8100,
["ISU_figure_skater"] = 2300,
["ITA"] = 20000,
["ITF"] = 6800,
["ITF_profile"] = 2600,
["ITIS"] = 5900,
["ITN_talk"] = 13000,
["ITN_talk/date"] = 13000,
["IUCN_banner"] = 15000,
["I_sup"] = 4900,
["Ice_hockey_box"] = 2000,
["Ice_hockey_stats"] = 20000,
["Icehockeystats"] = 11000,
["Icelandic_name"] = 2100,
["Icon"] = 670000,
["If"] = 436000,
["If_all"] = 7900,
["If_autoconfirmed"] = 2200,
["If_between"] = 4800,
["If_both"] = 209000,
["If_dark"] = 4100,
["If_dark/styles.css"] = 4100,
["If_either"] = 22000,
["If_empty"] = 6810000,
["If_first_display_both"] = 122000,
["If_in_category"] = 164000,
["If_in_page"] = 23000,
["If_last_display_both"] = 38000,
["If_mobile"] = 2100,
["If_mobile/styles.css"] = 3800,
["If_preview"] = 66000,
["If_then_show"] = 98000,
["Ifempty"] = 947000,
["Ifeq"] = 83000,
["Iferror_then_show"] = 4000,
["Ifexist_not_redirect"] = 1970000,
["Ifnotempty"] = 18000,
["Ifnoteq_then_show"] = 2300,
["Ifnumber"] = 77000,
["Ifsubst"] = 1020000,
["Ih"] = 8100,
["Ill"] = 259000,
["Illm"] = 5900,
["Image_frame"] = 6200,
["Image_label"] = 4700,
["Image_label_begin"] = 4100,
["Image_label_end"] = 4100,
["Image_label_small"] = 2600,
["Image_needed"] = 4400,
["Image_other"] = 191000,
["Image_requested"] = 136000,
["Image_requested/Category_helper"] = 126000,
["Imbox"] = 1000000,
["Imdb_name"] = 5400,
["Imdb_title"] = 2900,
["Importance"] = 15000,
["Importance/colour"] = 30000,
["Importance_mask"] = 630000,
["Improve_categories"] = 7000,
["Improve_documentation"] = 4200,
["Improve_plot"] = 4100,
["In_class"] = 5600,
["In_lang"] = 389000,
["In_progress"] = 3800,
["In_string"] = 309000,
["In_title"] = 31000,
["Inactive_userpage_blanked"] = 3700,
["Inaturalist_taxon"] = 3800,
["Include-USGov"] = 24000,
["Incomplete_list"] = 24000,
["Inconclusive"] = 2400,
["Increase"] = 61000,
["Incumbent_pope"] = 4400,
["Indent"] = 2400,
["Indented_plain_list"] = 2800,
["Indented_plainlist"] = 2600,
["Independent_sources"] = 10000,
["IndexFungorum"] = 2100,
["Indian_English"] = 5000,
["Indian_railway_code"] = 3600,
["Indian_rupee"] = 12000,
["Inflation"] = 27000,
["Inflation-fn"] = 5900,
["Inflation-year"] = 4300,
["Inflation/IN/startyear"] = 6700,
["Inflation/UK"] = 5600,
["Inflation/UK/dataset"] = 5600,
["Inflation/UK/startyear"] = 5600,
["Inflation/US"] = 16000,
["Inflation/US-GDP"] = 3100,
["Inflation/US-GDP/dataset"] = 3100,
["Inflation/US-GDP/startyear"] = 3100,
["Inflation/US/dataset"] = 16000,
["Inflation/US/startyear"] = 16000,
["Inflation/fn"] = 7600,
["Inflation/year"] = 34000,
["Info"] = 5600,
["Infobox"] = 3430000,
["Infobox/Columns"] = 3300,
["Infobox/mobileviewfix.css"] = 176000,
["Infobox/styles-images.css"] = 20000,
["Infobox3cols"] = 28000,
["Infobox_AFL_biography"] = 15000,
["Infobox_Athletics_Championships"] = 3400,
["Infobox_Australian_place"] = 15000,
["Infobox_Australian_place/styles.css"] = 15000,
["Infobox_Australian_place/table"] = 11000,
["Infobox_COA_wide"] = 3700,
["Infobox_Canada_electoral_district"] = 2700,
["Infobox_Chinese"] = 24000,
["Infobox_Chinese/Chinese"] = 3200,
["Infobox_Chinese/Footer"] = 7200,
["Infobox_Chinese/Header"] = 7200,
["Infobox_Christian_leader"] = 23000,
["Infobox_French_commune"] = 38000,
["Infobox_French_subdivision"] = 2200,
["Infobox_Gaelic_games_biography"] = 5500,
["Infobox_Gaelic_games_player"] = 3000,
["Infobox_German_location"] = 11000,
["Infobox_German_place"] = 14000,
["Infobox_Grand_Prix_race_report"] = 2200,
["Infobox_Greece_place"] = 3600,
["Infobox_Greek_Dimos"] = 2900,
["Infobox_Hindu_temple"] = 2900,
["Infobox_Indian_constituency"] = 5800,
["Infobox_Indian_constituency/defaultdata"] = 5800,
["Infobox_Italian_comune"] = 8100,
["Infobox_Korean"] = 2100,
["Infobox_Korean/auto"] = 15000,
["Infobox_Korean/auto/categories"] = 15000,
["Infobox_Korean/base"] = 2100,
["Infobox_Korean/base/auto"] = 18000,
["Infobox_Korean/categories"] = 2100,
["Infobox_Korean_name"] = 2100,
["Infobox_Korean_name/auto"] = 14000,
["Infobox_Korean_television_name"] = 3400,
["Infobox_NASCAR_driver"] = 2400,
["Infobox_NASCAR_race_report"] = 2800,
["Infobox_NCAA_basketball_conference_tournament"] = 2100,
["Infobox_NCAA_team_season"] = 10000,
["Infobox_NFL_biography"] = 27000,
["Infobox_NFL_team_season"] = 2300,
["Infobox_NRHP"] = 74000,
["Infobox_NRHP/conv"] = 19000,
["Infobox_NRHP/pushpinmap2region"] = 68000,
["Infobox_Olympic_event"] = 8100,
["Infobox_Olympic_event/event_link"] = 8100,
["Infobox_Olympic_event/games_text"] = 8100,
["Infobox_Pan_American_Games_event"] = 2900,
["Infobox_Paralympic_event"] = 2900,
["Infobox_Paralympic_event/games_text"] = 2900,
["Infobox_Romanian_subdivision"] = 3200,
["Infobox_Russian_district"] = 2100,
["Infobox_Russian_inhabited_locality"] = 4700,
["Infobox_Russian_inhabited_locality/PosMapFS"] = 4200,
["Infobox_Russian_inhabited_locality/federal_subject"] = 4700,
["Infobox_SCOTUS_case"] = 4600,
["Infobox_SSSI"] = 2000,
["Infobox_Site_of_Special_Scientific_Interest"] = 2100,
["Infobox_Slovak_place"] = 3000,
["Infobox_Swiss_town"] = 2900,
["Infobox_Switzerland_municipality"] = 2900,
["Infobox_Turkey_place"] = 20000,
["Infobox_U.S._county"] = 3000,
["Infobox_U.S._county/district"] = 3000,
["Infobox_U.S._legislation"] = 2300,
["Infobox_UK_constituency"] = 2200,
["Infobox_UK_constituency/year"] = 2200,
["Infobox_UK_legislation"] = 6500,
["Infobox_UK_place"] = 27000,
["Infobox_UK_place/NoDialCode"] = 8200,
["Infobox_UK_place/NoPostCode"] = 3700,
["Infobox_UK_place/area"] = 2800,
["Infobox_UK_place/dens"] = 2300,
["Infobox_UK_place/dist"] = 2800,
["Infobox_UK_place/local"] = 27000,
["Infobox_UK_place/styles.css"] = 27000,
["Infobox_UNESCO_World_Heritage_Site"] = 2100,
["Infobox_UN_resolution"] = 2300,
["Infobox_US_Supreme_Court_case"] = 4800,
["Infobox_US_Supreme_Court_case/courts"] = 4800,
["Infobox_United_States_legislative_district"] = 2800,
["Infobox_United_States_legislative_district/representative"] = 2800,
["Infobox_Wikipedia_user"] = 12000,
["Infobox_academic"] = 27000,
["Infobox_aircraft"] = 13000,
["Infobox_aircraft/styles.css"] = 14000,
["Infobox_aircraft_occurrence"] = 2900,
["Infobox_airline"] = 4800,
["Infobox_airline/styles.css"] = 4800,
["Infobox_airport"] = 14000,
["Infobox_airport/datatable"] = 13000,
["Infobox_airport/styles.css"] = 14000,
["Infobox_album"] = 169000,
["Infobox_album/color"] = 209000,
["Infobox_album/link"] = 169000,
["Infobox_anatomy"] = 4500,
["Infobox_animanga/Footer"] = 7800,
["Infobox_animanga/Header"] = 7800,
["Infobox_animanga/Print"] = 6700,
["Infobox_animanga/Video"] = 5100,
["Infobox_architect"] = 4500,
["Infobox_artist"] = 35000,
["Infobox_artist_discography"] = 6500,
["Infobox_artwork"] = 16000,
["Infobox_automobile"] = 9300,
["Infobox_award"] = 16000,
["Infobox_badminton_player"] = 3300,
["Infobox_baseball_biography"] = 30000,
["Infobox_baseball_biography/style"] = 30000,
["Infobox_baseball_biography/styles.css"] = 30000,
["Infobox_baseball_team_season"] = 3300,
["Infobox_baseball_team_season/leagueseason"] = 3300,
["Infobox_baseball_team_season/season"] = 3300,
["Infobox_baseball_team_season/styles.css"] = 3300,
["Infobox_basketball_biography"] = 23000,
["Infobox_basketball_biography/style"] = 23000,
["Infobox_basketball_club"] = 3300,
["Infobox_basketball_club/styles.css"] = 3300,
["Infobox_beauty_pageant"] = 2200,
["Infobox_bilateral_relations"] = 5000,
["Infobox_bishop_styles"] = 2500,
["Infobox_body_of_water"] = 19000,
["Infobox_book"] = 63000,
["Infobox_book/styles.css"] = 63000,
["Infobox_boxer"] = 6600,
["Infobox_brand"] = 2200,
["Infobox_brand/styles.css"] = 2200,
["Infobox_bridge"] = 6800,
["Infobox_building"] = 35000,
["Infobox_bus_company"] = 2100,
["Infobox_cemetery"] = 2200,
["Infobox_character"] = 8500,
["Infobox_character/styles.css"] = 8500,
["Infobox_chess_biography"] = 4800,
["Infobox_chess_player"] = 3800,
["Infobox_church"] = 17000,
["Infobox_church/denomination"] = 17000,
["Infobox_church/font_color"] = 17000,
["Infobox_civil_conflict"] = 3300,
["Infobox_civilian_attack"] = 7800,
["Infobox_college_coach"] = 13000,
["Infobox_college_football_game"] = 2300,
["Infobox_college_football_player"] = 2700,
["Infobox_college_sports_team_season"] = 46000,
["Infobox_college_sports_team_season/link"] = 46000,
["Infobox_college_sports_team_season/name"] = 46000,
["Infobox_college_sports_team_season/succession"] = 46000,
["Infobox_college_sports_team_season/team"] = 46000,
["Infobox_comedian"] = 2200,
["Infobox_comic_book_title"] = 3200,
["Infobox_comics_character"] = 3400,
["Infobox_comics_creator"] = 3600,
["Infobox_comics_creator/styles.css"] = 3600,
["Infobox_company"] = 93000,
["Infobox_company/styles.css"] = 93000,
["Infobox_computing_device"] = 2600,
["Infobox_concert"] = 4000,
["Infobox_constituency"] = 8100,
["Infobox_country"] = 7200,
["Infobox_country/formernext"] = 6700,
["Infobox_country/imagetable"] = 5600,
["Infobox_country/multirow"] = 9300,
["Infobox_country/status_text"] = 3100,
["Infobox_country/styles.css"] = 7200,
["Infobox_country_at_games"] = 17000,
["Infobox_country_at_games/core"] = 17000,
["Infobox_country_at_games/see_also"] = 14000,
["Infobox_court_case"] = 5400,
["Infobox_court_case/images"] = 2900,
["Infobox_court_case/styles.css"] = 5400,
["Infobox_cricket_tournament"] = 2800,
["Infobox_cricketer"] = 32000,
["Infobox_cricketer/career"] = 32000,
["Infobox_cricketer/national_side"] = 7700,
["Infobox_criminal"] = 7800,
["Infobox_curler"] = 2800,
["Infobox_cycling_race_report"] = 5000,
["Infobox_cyclist"] = 17000,
["Infobox_dam"] = 5900,
["Infobox_deity"] = 2300,
["Infobox_deity/color"] = 2300,
["Infobox_designation_list"] = 33000,
["Infobox_designation_list/entry"] = 23000,
["Infobox_dim"] = 6400,
["Infobox_diocese"] = 4100,
["Infobox_drug"] = 12000,
["Infobox_drug/chemical_formula"] = 12000,
["Infobox_drug/data_page_link"] = 12000,
["Infobox_drug/formatATC"] = 12000,
["Infobox_drug/formatCASnumber"] = 12000,
["Infobox_drug/formatChEBI"] = 12000,
["Infobox_drug/formatChEMBL"] = 12000,
["Infobox_drug/formatChemDBNIAID"] = 12000,
["Infobox_drug/formatChemSpider"] = 12000,
["Infobox_drug/formatCompTox"] = 12000,
["Infobox_drug/formatDrugBank"] = 12000,
["Infobox_drug/formatIUPHARBPS"] = 12000,
["Infobox_drug/formatJmol"] = 12000,
["Infobox_drug/formatKEGG"] = 12000,
["Infobox_drug/formatPDBligand"] = 11000,
["Infobox_drug/formatPubChemCID"] = 12000,
["Infobox_drug/formatPubChemSID"] = 12000,
["Infobox_drug/formatUNII"] = 12000,
["Infobox_drug/legal_status"] = 12000,
["Infobox_drug/licence"] = 12000,
["Infobox_drug/maintenance_categories"] = 12000,
["Infobox_drug/non-ref-space"] = 4000,
["Infobox_drug/pregnancy_category"] = 12000,
["Infobox_drug/styles.css"] = 12000,
["Infobox_drug/title"] = 12000,
["Infobox_economist"] = 2000,
["Infobox_election"] = 41000,
["Infobox_election/shortname"] = 2600,
["Infobox_election/styles.css"] = 41000,
["Infobox_enzyme"] = 5100,
["Infobox_ethnic_group"] = 8100,
["Infobox_event"] = 8000,
["Infobox_family"] = 2800,
["Infobox_field_hockey_player"] = 2600,
["Infobox_figure_skater"] = 4000,
["Infobox_film"] = 171000,
["Infobox_film/short_description"] = 166000,
["Infobox_film_awards"] = 3200,
["Infobox_film_awards/link"] = 3200,
["Infobox_film_awards/style"] = 3200,
["Infobox_film_or_theatre_festival"] = 2100,
["Infobox_food"] = 7800,
["Infobox_football_biography"] = 219000,
["Infobox_football_club"] = 30000,
["Infobox_football_club_season"] = 24000,
["Infobox_football_league"] = 2800,
["Infobox_football_league_season"] = 22000,
["Infobox_football_match"] = 6800,
["Infobox_football_tournament"] = 2200,
["Infobox_football_tournament_season"] = 9400,
["Infobox_former_subdivision"] = 3800,
["Infobox_former_subdivision/styles.css"] = 3800,
["Infobox_galaxy"] = 3400,
["Infobox_game"] = 3200,
["Infobox_game_score"] = 3800,
["Infobox_games"] = 2100,
["Infobox_gene"] = 13000,
["Infobox_given_name"] = 4100,
["Infobox_golfer"] = 4900,
["Infobox_golfer/highest_ranking"] = 4900,
["Infobox_government_agency"] = 13000,
["Infobox_government_cabinet"] = 3600,
["Infobox_gridiron_football_biography"] = 40000,
["Infobox_gridiron_football_biography/position"] = 40000,
["Infobox_gridiron_football_team_season"] = 4100,
["Infobox_gymnast"] = 6000,
["Infobox_handball_biography"] = 5600,
["Infobox_historic_site"] = 22000,
["Infobox_holiday"] = 2200,
["Infobox_holiday/date"] = 2200,
["Infobox_horseraces"] = 2700,
["Infobox_hospital"] = 7000,
["Infobox_hospital/care_system"] = 7000,
["Infobox_hospital/lists"] = 7000,
["Infobox_hurling_championship"] = 2700,
["Infobox_ice_hockey_biography"] = 21000,
["Infobox_ice_hockey_player"] = 18000,
["Infobox_ice_hockey_team"] = 3300,
["Infobox_ice_hockey_team_season"] = 2200,
["Infobox_international_football_competition"] = 6800,
["Infobox_islands"] = 9700,
["Infobox_islands/area"] = 10000,
["Infobox_islands/density"] = 10000,
["Infobox_islands/length"] = 9700,
["Infobox_islands/styles.css"] = 9700,
["Infobox_journal"] = 10000,
["Infobox_journal/Abbreviation_search"] = 10000,
["Infobox_journal/Bluebook_check"] = 10000,
["Infobox_journal/Former_check"] = 10000,
["Infobox_journal/ISO_4_check"] = 10000,
["Infobox_journal/ISSN-eISSN"] = 10000,
["Infobox_journal/Indexing_search"] = 10000,
["Infobox_journal/MathSciNet_check"] = 10000,
["Infobox_journal/NLM_check"] = 10000,
["Infobox_journal/frequency"] = 9100,
["Infobox_journal/openaccess"] = 2700,
["Infobox_judoka"] = 2800,
["Infobox_lake"] = 3800,
["Infobox_language"] = 10000,
["Infobox_language/family-color"] = 12000,
["Infobox_language/genetic"] = 7000,
["Infobox_language/lingualist"] = 12000,
["Infobox_language/linguistlist"] = 10000,
["Infobox_language/ref"] = 7400,
["Infobox_law_enforcement_agency"] = 2200,
["Infobox_legislation"] = 2800,
["Infobox_legislative_district"] = 2400,
["Infobox_legislative_election"] = 2700,
["Infobox_legislative_election/row"] = 2600,
["Infobox_legislative_election/styles.css"] = 2700,
["Infobox_legislative_term"] = 2200,
["Infobox_legislature"] = 4400,
["Infobox_library"] = 2500,
["Infobox_lighthouse"] = 2700,
["Infobox_lighthouse/light"] = 2700,
["Infobox_locomotive"] = 5000,
["Infobox_magazine"] = 8400,
["Infobox_manner_of_address"] = 4200,
["Infobox_martial_artist"] = 6300,
["Infobox_martial_artist/record"] = 6300,
["Infobox_medal_templates"] = 479000,
["Infobox_medical_condition"] = 9900,
["Infobox_medical_condition_(new)"] = 6300,
["Infobox_medical_details"] = 2600,
["Infobox_medical_person"] = 2500,
["Infobox_militant_organization"] = 2200,
["Infobox_military_conflict"] = 28000,
["Infobox_military_installation"] = 11000,
["Infobox_military_person"] = 54000,
["Infobox_military_unit"] = 29000,
["Infobox_mine"] = 2300,
["Infobox_mineral"] = 2000,
["Infobox_mobile_phone"] = 2500,
["Infobox_mobile_phone/size"] = 2200,
["Infobox_mobile_phone/weight"] = 2200,
["Infobox_model"] = 2300,
["Infobox_monument"] = 2900,
["Infobox_motorsport_season"] = 2900,
["Infobox_mountain"] = 30000,
["Infobox_multi-sport_competition_event"] = 2900,
["Infobox_museum"] = 12000,
["Infobox_musical_artist"] = 132000,
["Infobox_musical_artist/hCard_class"] = 122000,
["Infobox_musical_composition"] = 3700,
["Infobox_name"] = 8800,
["Infobox_name_module"] = 9600,
["Infobox_newspaper"] = 11000,
["Infobox_newspaper/styles.css"] = 11000,
["Infobox_noble"] = 7900,
["Infobox_officeholder"] = 283000,
["Infobox_officeholder/office"] = 290000,
["Infobox_official_post"] = 9900,
["Infobox_organization"] = 43000,
["Infobox_pageant_titleholder"] = 3100,
["Infobox_park"] = 10000,
["Infobox_person"] = 675000,
["Infobox_person/Wikidata"] = 5000,
["Infobox_person/height"] = 116000,
["Infobox_person/length"] = 7700,
["Infobox_person/weight"] = 74000,
["Infobox_philosopher"] = 3800,
["Infobox_planet"] = 4800,
["Infobox_play"] = 4600,
["Infobox_political_party"] = 16000,
["Infobox_power_station"] = 3400,
["Infobox_prepared_food"] = 2500,
["Infobox_professional_wrestler"] = 4800,
["Infobox_professional_wrestling_event"] = 3400,
["Infobox_protected_area"] = 15000,
["Infobox_protein_family"] = 2200,
["Infobox_publisher"] = 2600,
["Infobox_racehorse"] = 6000,
["Infobox_racing_driver"] = 6000,
["Infobox_racing_driver_series_section"] = 2900,
["Infobox_radio_station"] = 22000,
["Infobox_radio_station/styles.css"] = 22000,
["Infobox_rail"] = 3200,
["Infobox_rail_line"] = 8100,
["Infobox_rail_service"] = 3300,
["Infobox_reality_competition_season"] = 4400,
["Infobox_record_label"] = 4200,
["Infobox_recurring_event"] = 8100,
["Infobox_religious_biography"] = 7200,
["Infobox_religious_building"] = 15000,
["Infobox_religious_building/color"] = 22000,
["Infobox_restaurant"] = 4700,
["Infobox_river"] = 32000,
["Infobox_river/calcunit"] = 32000,
["Infobox_river/discharge"] = 32000,
["Infobox_river/row-style"] = 32000,
["Infobox_river/source"] = 32000,
["Infobox_road"] = 25000,
["Infobox_road/meta/mask/category"] = 24000,
["Infobox_road/meta/mask/country"] = 25000,
["Infobox_road/styles.css"] = 26000,
["Infobox_road_small"] = 2500,
["Infobox_rockunit"] = 6500,
["Infobox_royalty"] = 26000,
["Infobox_royalty/short_description"] = 8800,
["Infobox_rugby_biography"] = 19000,
["Infobox_rugby_biography/correct_date"] = 19000,
["Infobox_rugby_biography/depcheck"] = 19000,
["Infobox_rugby_league_biography"] = 11000,
["Infobox_rugby_league_biography/PLAYER"] = 11000,
["Infobox_rugby_team"] = 2700,
["Infobox_sailboat_specifications"] = 2300,
["Infobox_saint"] = 5500,
["Infobox_school"] = 39000,
["Infobox_school/short_description"] = 39000,
["Infobox_school/styles.css"] = 39000,
["Infobox_school_district"] = 6500,
["Infobox_school_district/styles.css"] = 6500,
["Infobox_scientist"] = 57000,
["Infobox_settlement"] = 598000,
["Infobox_settlement/areadisp"] = 259000,
["Infobox_settlement/columns"] = 108000,
["Infobox_settlement/columns/styles.css"] = 108000,
["Infobox_settlement/densdisp"] = 458000,
["Infobox_settlement/lengthdisp"] = 182000,
["Infobox_settlement/link"] = 108000,
["Infobox_settlement/styles.css"] = 598000,
["Infobox_ship"] = 43000,
["Infobox_ship/career"] = 39000,
["Infobox_ship/characteristics"] = 43000,
["Infobox_ship/class_overview"] = 4400,
["Infobox_ship/image"] = 42000,
["Infobox_ship/service_record"] = 2500,
["Infobox_shopping_mall"] = 3800,
["Infobox_short_story"] = 2700,
["Infobox_skier"] = 2700,
["Infobox_soap_character"] = 3100,
["Infobox_social_media_personality"] = 4400,
["Infobox_software"] = 14000,
["Infobox_software/simple"] = 15000,
["Infobox_song"] = 84000,
["Infobox_song/color"] = 84000,
["Infobox_song/link"] = 84000,
["Infobox_song_contest_national_year"] = 2000,
["Infobox_song_contest_national_year/Year"] = 2100,
["Infobox_spaceflight"] = 4100,
["Infobox_spaceflight/styles.css"] = 4100,
["Infobox_speed_skater"] = 2000,
["Infobox_sport_event"] = 2800,
["Infobox_sports_competition_event"] = 24000,
["Infobox_sports_competition_event/medalrow"] = 16000,
["Infobox_sports_league"] = 5700,
["Infobox_sports_season"] = 7000,
["Infobox_sports_team"] = 2300,
["Infobox_sportsperson"] = 161000,
["Infobox_stadium"] = 2600,
["Infobox_station"] = 58000,
["Infobox_station/services"] = 58000,
["Infobox_station/styles.css"] = 58000,
["Infobox_street"] = 4500,
["Infobox_swimmer"] = 11000,
["Infobox_television"] = 64000,
["Infobox_television/Short_description"] = 62000,
["Infobox_television/styles.css"] = 64000,
["Infobox_television_channel"] = 6700,
["Infobox_television_channel/styles.css"] = 6700,
["Infobox_television_episode"] = 13000,
["Infobox_television_episode/styles.css"] = 14000,
["Infobox_television_season"] = 11000,
["Infobox_television_station"] = 3200,
["Infobox_television_station/styles.css"] = 3300,
["Infobox_tennis_biography"] = 11000,
["Infobox_tennis_event"] = 3400,
["Infobox_tennis_tournament"] = 2000,
["Infobox_tennis_tournament/heading"] = 2000,
["Infobox_tennis_tournament/style"] = 2000,
["Infobox_tennis_tournament_event"] = 22000,
["Infobox_tennis_tournament_year"] = 11000,
["Infobox_tennis_tournament_year/color"] = 33000,
["Infobox_tennis_tournament_year/footer"] = 33000,
["Infobox_tournament_season"] = 13000,
["Infobox_train"] = 2600,
["Infobox_university"] = 25000,
["Infobox_user"] = 3000,
["Infobox_venue"] = 20000,
["Infobox_video_game"] = 30000,
["Infobox_video_game/styles.css"] = 30000,
["Infobox_volleyball_biography"] = 5900,
["Infobox_weapon"] = 8100,
["Infobox_weather_event"] = 3600,
["Infobox_weather_event/Effects"] = 3400,
["Infobox_weather_event/Footer"] = 3400,
["Infobox_weather_event/History"] = 3300,
["Infobox_weather_event/SSHWS"] = 2000,
["Infobox_weather_event/meteorology"] = 3200,
["Infobox_weather_event/scale"] = 2100,
["Infobox_weather_event/styles.css"] = 3600,
["Infobox_website"] = 8300,
["Infobox_writer"] = 46000,
["Information"] = 98000,
["Information/styles.css"] = 98000,
["Inlang"] = 2400,
["Inline"] = 3800,
["Inline_block"] = 5400,
["Inprogress"] = 2700,
["Input_link"] = 32000,
["Instagram"] = 21000,
["InterSportStats"] = 6400,
["Interlanguage_link"] = 307000,
["Interlanguage_link_multi"] = 9300,
["International_Paralympic_Committee"] = 4300,
["International_football_primary_link"] = 3600,
["International_football_primary_style"] = 3600,
["International_football_secondary_style"] = 3500,
["Internet_Archive"] = 2200,
["Internet_Archive_SCOTUS_URL"] = 3300,
["Internet_Archive_author"] = 19000,
["Internet_Archive_film"] = 2600,
["Intitle"] = 22000,
["Ip"] = 2100,
["Iptalk"] = 18000,
["IranCensus2006"] = 29000,
["IranNCSGN"] = 3100,
["Iran_Census_2006"] = 29000,
["Irish_place_name"] = 3000,
["IsIPAddress"] = 47000,
["IsValidPageName"] = 3400,
["Is_MLB_league"] = 3300,
["Is_NPB_league"] = 3300,
["Is_continent"] = 13000,
["Is_country_in_Central_America"] = 17000,
["Is_country_in_the_Caribbean"] = 17000,
["Is_interwiki_link"] = 6300,
["Is_italic_taxon"] = 656000,
["Is_redirect"] = 386000,
["Is_time"] = 6700,
["Is_valid_page_name"] = 3400,
["Isbn"] = 10000,
["Isnum"] = 3000,
["Isnumeric"] = 121000,
["Iso2continent"] = 110000,
["Iso2country"] = 26000,
["Iso2country/article"] = 25000,
["Iso2country/data"] = 26000,
["Issubst"] = 64000,
["Italic_dab2"] = 5900,
["Italic_disambiguation"] = 2400,
["Italic_title"] = 259000,
["Italic_title_prefixed"] = 8800,
["Italictitle"] = 3000,
["Ivmbox"] = 143000,
["Ivory_messagebox"] = 191000,
["Ivory_messagebox/styles.css"] = 191000,
["Module:I18n/complex_date"] = 48000,
["Module:IP"] = 218000,
["Module:IPA"] = 185000,
["Module:IPA/data"] = 167000,
["Module:IPA/styles.css"] = 152000,
["Module:IPA_symbol"] = 6900,
["Module:IPA_symbol/data"] = 6900,
["Module:IPAc-en"] = 56000,
["Module:IPAc-en/data"] = 56000,
["Module:IPAc-en/phonemes"] = 56000,
["Module:IPAc-en/pronunciation"] = 56000,
["Module:IPAddress"] = 287000,
["Module:ISO_3166"] = 948000,
["Module:ISO_3166/data/AT"] = 2500,
["Module:ISO_3166/data/BA"] = 3400,
["Module:ISO_3166/data/CA"] = 2600,
["Module:ISO_3166/data/CH"] = 4200,
["Module:ISO_3166/data/CN"] = 2800,
["Module:ISO_3166/data/CZ"] = 6600,
["Module:ISO_3166/data/DE"] = 15000,
["Module:ISO_3166/data/ES"] = 3700,
["Module:ISO_3166/data/FR"] = 38000,
["Module:ISO_3166/data/GB"] = 7200,
["Module:ISO_3166/data/GR"] = 3500,
["Module:ISO_3166/data/IN"] = 29000,
["Module:ISO_3166/data/IR"] = 24000,
["Module:ISO_3166/data/IT"] = 2500,
["Module:ISO_3166/data/National"] = 948000,
["Module:ISO_3166/data/PL"] = 7600,
["Module:ISO_3166/data/RS"] = 3200,
["Module:ISO_3166/data/RU"] = 27000,
["Module:ISO_3166/data/UA"] = 2200,
["Module:ISO_3166/data/US"] = 90000,
["Module:ISO_639_name"] = 34000,
["Module:ISO_639_name/ISO_639-1"] = 29000,
["Module:ISO_639_name/ISO_639-2"] = 21000,
["Module:ISO_639_name/ISO_639-2B"] = 20000,
["Module:ISO_639_name/ISO_639-3"] = 20000,
["Module:ISO_639_name/ISO_639-3_(dep)"] = 34000,
["Module:ISO_639_name/ISO_639-5"] = 19000,
["Module:ISO_639_name/ISO_639_deprecated"] = 34000,
["Module:ISO_639_name/ISO_639_name_to_code"] = 4600,
["Module:ISO_639_name/ISO_639_override"] = 34000,
["Module:ISOdate"] = 48000,
["Module:Ice_hockey_box"] = 2000,
["Module:Icon"] = 683000,
["Module:Icon/data"] = 683000,
["Module:Icon_box"] = 264000,
["Module:Icon_box/data"] = 264000,
["Module:If_any_equal"] = 255000,
["Module:If_empty"] = 6840000,
["Module:If_in_category"] = 164000,
["Module:If_in_page"] = 23000,
["Module:If_not_given_or_empty"] = 126000,
["Module:If_preview"] = 1530000,
["Module:If_preview/configuration"] = 1530000,
["Module:If_preview/styles.css"] = 1530000,
["Module:In_lang"] = 390000,
["Module:Indent"] = 2400,
["Module:Infobox"] = 4710000,
["Module:Infobox/dates"] = 78000,
["Module:Infobox/styles.css"] = 4980000,
["Module:Infobox/utilities"] = 2600,
["Module:Infobox3cols"] = 322000,
["Module:InfoboxBuilder"] = 3100,
["Module:InfoboxImage"] = 5650000,
["Module:InfoboxImage/data"] = 3380000,
["Module:Infobox_body_of_water_tracking"] = 19000,
["Module:Infobox_cyclist_tracking"] = 17000,
["Module:Infobox_dim"] = 381000,
["Module:Infobox_dim/data"] = 234000,
["Module:Infobox_election"] = 43000,
["Module:Infobox_gene"] = 13000,
["Module:Infobox_gene/orthologs"] = 13000,
["Module:Infobox_mapframe"] = 1680000,
["Module:Infobox_military_conflict"] = 28000,
["Module:Infobox_military_conflict/styles.css"] = 28000,
["Module:Infobox_multi-lingual_name"] = 24000,
["Module:Infobox_multi-lingual_name/data"] = 24000,
["Module:Infobox_power_station"] = 3400,
["Module:Infobox_road"] = 26000,
["Module:Infobox_road/browselinks"] = 26000,
["Module:Infobox_road/errors"] = 25000,
["Module:Infobox_road/length"] = 26000,
["Module:Infobox_road/locations"] = 25000,
["Module:Infobox_road/map"] = 25000,
["Module:Infobox_road/route"] = 26000,
["Module:Infobox_road/sections"] = 25000,
["Module:Infobox_ship"] = 43000,
["Module:Infobox_ship/data"] = 43000,
["Module:Infobox_ship/styles.css"] = 43000,
["Module:Infobox_television"] = 64000,
["Module:Infobox_television_disambiguation_check"] = 72000,
["Module:Infobox_television_episode"] = 13000,
["Module:Infobox_television_season_disambiguation_check"] = 10000,
["Module:Infobox_television_season_name"] = 11000,
["Module:Internet_Archive"] = 22000,
["Module:Is_article"] = 2400,
["Module:Is_infobox_in_lead"] = 462000,
["Module:Is_instance"] = 360000,
["Module:Iso2nationality"] = 96000,
["Module:Italic_title"] = 1260000,
["Module:Italic_title2"] = 5900,
}
bj6sz9p46e6nf2e5qkqyx9i5e0kv2rx
ಮೋಡ್ಯೂಲ್:Transclusion count/data/P
828
10068
370447
370119
2026-09-27T05:10:32Z
en>Ahechtbot
0
[[Wikipedia:BOT|Bot]]: Updated page.
370447
Scribunto
text/plain
return {
["P"] = 6400,
["P-1"] = 4800,
["P-phrases"] = 4300,
["P."] = 4000,
["P1"] = 234000,
["P2"] = 517000,
["PAGENAMEBASE"] = 1910000,
["PAGENAMEU"] = 55000,
["PAK"] = 3500,
["PD-US"] = 8600,
["PD-US-1923-abroad"] = 5400,
["PD-US-expired"] = 5000,
["PD-US-expired-abroad"] = 8700,
["PD-US-no_notice"] = 2300,
["PD-art"] = 3300,
["PD-ineligible-USonly"] = 7700,
["PD-notice"] = 26000,
["PD-old-100"] = 3200,
["PD-self"] = 31000,
["PD-textlogo"] = 6200,
["PDB_Gallery"] = 2900,
["PER"] = 3600,
["PHI"] = 2700,
["PHL"] = 3700,
["PH_census"] = 2000,
["PLANTS"] = 4300,
["PM20"] = 3300,
["PMID"] = 6500,
["PNsign"] = 2100,
["POL"] = 68000,
["POR"] = 5600,
["POTD/Day"] = 2900,
["POTD_archive"] = 2600,
["POTD_archive/footer"] = 2600,
["POTD_default"] = 12000,
["POTD_image"] = 3900,
["POTD_image1"] = 2600,
["POTD_image2"] = 2600,
["POTD_navigation"] = 7900,
["POTD_texttitle"] = 2600,
["POTDlink"] = 8300,
["POV"] = 3200,
["POW"] = 2600,
["PR/header"] = 3100,
["PR/heading"] = 7200,
["PRI"] = 2200,
["PRT"] = 6400,
["PR_link"] = 119000,
["PS"] = 3100,
["Pad"] = 51000,
["Paddle_Steamer"] = 3100,
["Page"] = 4400,
["Page_list"] = 15000,
["Page_name_sub"] = 52000,
["Page_needed"] = 24000,
["Page_tabs"] = 4100,
["Page_tabs/styles.css"] = 4100,
["Pagelinks"] = 75000,
["Pagelist"] = 15000,
["Pagetype"] = 11400000,
["Paid"] = 18000,
["Pakistani_English"] = 4000,
["Para"] = 2980000,
["Parabr"] = 3800,
["Paragraph_break"] = 2170000,
["Param_value"] = 153000,
["Param_value/styles.css"] = 153000,
["Parameter"] = 3130000,
["Parameter_names_example"] = 2800,
["ParmPart"] = 15000,
["Partial"] = 5600,
["Partial_minor_planet_designation"] = 5700,
["Partly_done"] = 4300,
["Party_color"] = 83000,
["Party_color_cell"] = 6900,
["Party_index_link"] = 3300,
["Party_name_with_color"] = 7500,
["Party_name_with_colour"] = 4200,
["Party_shading/Democratic"] = 19000,
["Party_shading/Independent"] = 3400,
["Party_shading/Republican"] = 18000,
["Party_stripe"] = 18000,
["Pass"] = 3300,
["Pb"] = 2130000,
["Pd-notice"] = 2200,
["Pedigree"] = 4400,
["Peer_review/heading"] = 10000,
["Peer_review_links"] = 3300,
["Peer_review_tools"] = 9700,
["Penalty_shoot-out"] = 6000,
["Pending"] = 6600,
["Pending_DYK_American_hooks"] = 5300,
["Pending_DYK_biographies"] = 11000,
["Pending_changes–protected"] = 4400,
["Pending_film"] = 2900,
["Pending_films_key"] = 2700,
["Pengoal"] = 13000,
["Penmiss"] = 15000,
["Percentage"] = 19000,
["Performance_key"] = 2800,
["Performance_key/styles.css"] = 2800,
["Period_color"] = 28000,
["Period_end"] = 26000,
["Period_id"] = 29000,
["Period_start"] = 29000,
["Personal_attack_removed"] = 2200,
["PeruTasks"] = 19000,
["Phab"] = 8100,
["Phabricator"] = 8400,
["Phanerozoic_250px"] = 25000,
["PharmNavFootnote"] = 5600,
["Philippine_census_reference"] = 2000,
["Philippine_name"] = 4300,
["Photo"] = 2200,
["Photo_montage"] = 5000,
["Photo_requested"] = 108000,
["Photograph_requested"] = 4700,
["Photomontage"] = 4400,
["Photoreq"] = 2900,
["Picture_of_the_day"] = 8300,
["Pie_chart"] = 8500,
["Pie_chart/styles.css"] = 8500,
["Ping"] = 286000,
["Pipe"] = 97000,
["Place_name_disambiguation"] = 40000,
["Plain_link"] = 121000,
["Plain_list"] = 208000,
["Plain_text"] = 109000,
["Plainlink"] = 30000,
["Plainlist"] = 378000,
["Plainlist/styles.css"] = 3140000,
["Player"] = 3900,
["Player2"] = 2900,
["Please_check_ISSN"] = 16000,
["Plural"] = 108000,
["Pluralize_from_text"] = 2890000,
["Pn"] = 2900,
["Poem_quote"] = 4000,
["Poemquote"] = 2700,
["Politician_icon"] = 35000,
["Politician_icon2"] = 35000,
["Politics_sidebar_below"] = 19000,
["Politics_sidebar_title"] = 19000,
["Polluted_category"] = 2500,
["Polparty"] = 31000,
["Pop_density"] = 10000,
["Population_Germany"] = 14000,
["Portal"] = 10900000,
["Portal-Class"] = 8100,
["Portal-inline"] = 246000,
["Portal_and_project"] = 263000,
["Portal_bar"] = 186000,
["Portal_box"] = 2100,
["Portalbar"] = 9900,
["Portuguese_name"] = 10000,
["Possible"] = 4000,
["Possibly_empty_category"] = 70000,
["Post-nominals"] = 63000,
["Post-nominals/AUS"] = 8500,
["Post-nominals/CAN"] = 10000,
["Post-nominals/GBR"] = 33000,
["Post-nominals/NZL"] = 4500,
["Postnominals"] = 11000,
["Pp"] = 8700,
["Pp-book-cover"] = 52000,
["Pp-extended"] = 11000,
["Pp-move"] = 10000,
["Pp-pc"] = 3700,
["Pp-protected"] = 13000,
["Pp-semi"] = 6900,
["Pp-semi-indef"] = 4700,
["Pp-template"] = 4400,
["Pp-vandalism"] = 2800,
["Precision"] = 6000,
["Preferences"] = 18000,
["Preferences/section"] = 3500,
["PresFoot"] = 3300,
["PresHead"] = 3900,
["PresRow"] = 3900,
["Press"] = 5800,
["Preview_warning"] = 488000,
["Primary_source_inline"] = 8300,
["Primary_sources"] = 33000,
["Principal_rank"] = 656000,
["Prisoner_of_war"] = 2600,
["Prl"] = 119000,
["ProCyclingStats"] = 2400,
["ProQuest"] = 36000,
["Professional_wrestling_profiles"] = 3200,
["Professional_wrestling_results_table"] = 3200,
["Profit"] = 3600,
["Progress_box"] = 19000,
["Project-Class"] = 13000,
["Project_other"] = 18000,
["Promotional"] = 18000,
["Proper_name"] = 2800,
["Prose"] = 3300,
["Protected_due_to_vandalism"] = 2900,
["Protected_page"] = 25000,
["Protected_page_maintenance_message"] = 42000,
["Protection_padlock"] = 3700,
["Proxy_block"] = 2200,
["Pso"] = 5100,
["Purge"] = 571000,
["Purge_button"] = 19000,
["Purge_button/styles.css"] = 19000,
["Module:POTD_titletext"] = 2500,
["Module:Page"] = 123000,
["Module:PageLinks"] = 75000,
["Module:Page_tabs"] = 4100,
["Module:Pagelist"] = 15000,
["Module:Pagetype"] = 19100000,
["Module:Pagetype/config"] = 19100000,
["Module:Pagetype/disambiguation"] = 13300000,
["Module:Pagetype/rfd"] = 17200000,
["Module:Pagetype/setindex"] = 13600000,
["Module:Pagetype/softredirect"] = 17900000,
["Module:ParameterCount"] = 1760000,
["Module:Parameter_names_example"] = 2800,
["Module:Parameter_validation"] = 166000,
["Module:Parameter_validation/default_config"] = 166000,
["Module:Party_name_with_color"] = 14000,
["Module:Percentage"] = 19000,
["Module:Person_date"] = 1790000,
["Module:Person_height"] = 284000,
["Module:Person_length"] = 7700,
["Module:Person_weight"] = 85000,
["Module:Phone_size"] = 2200,
["Module:Photo_montage"] = 5000,
["Module:Piechart"] = 8500,
["Module:Piechart/cuts.json"] = 8500,
["Module:Plain_text"] = 1890000,
["Module:Pn"] = 4800,
["Module:Political_party"] = 151000,
["Module:Political_party/A"] = 27000,
["Module:Political_party/B"] = 20000,
["Module:Political_party/C"] = 49000,
["Module:Political_party/D"] = 59000,
["Module:Political_party/E"] = 7000,
["Module:Political_party/F"] = 15000,
["Module:Political_party/G"] = 22000,
["Module:Political_party/H"] = 7600,
["Module:Political_party/I"] = 63000,
["Module:Political_party/J"] = 10000,
["Module:Political_party/K"] = 6400,
["Module:Political_party/L"] = 48000,
["Module:Political_party/M"] = 15000,
["Module:Political_party/N"] = 39000,
["Module:Political_party/O"] = 7100,
["Module:Political_party/P"] = 34000,
["Module:Political_party/R"] = 58000,
["Module:Political_party/S"] = 38000,
["Module:Political_party/T"] = 15000,
["Module:Political_party/U"] = 22000,
["Module:Political_party/V"] = 8100,
["Module:Political_party/W"] = 15000,
["Module:Political_party/Y"] = 2400,
["Module:Pop_density"] = 10000,
["Module:PopulationFromWikidata"] = 15000,
["Module:Portal"] = 11400000,
["Module:Portal-inline"] = 251000,
["Module:Portal/images/a"] = 2060000,
["Module:Portal/images/aliases"] = 362000,
["Module:Portal/images/b"] = 3600000,
["Module:Portal/images/c"] = 2330000,
["Module:Portal/images/d"] = 121000,
["Module:Portal/images/e"] = 602000,
["Module:Portal/images/f"] = 1020000,
["Module:Portal/images/g"] = 711000,
["Module:Portal/images/h"] = 551000,
["Module:Portal/images/i"] = 1310000,
["Module:Portal/images/j"] = 350000,
["Module:Portal/images/k"] = 90000,
["Module:Portal/images/l"] = 538000,
["Module:Portal/images/m"] = 776000,
["Module:Portal/images/n"] = 845000,
["Module:Portal/images/o"] = 466000,
["Module:Portal/images/other"] = 272000,
["Module:Portal/images/p"] = 990000,
["Module:Portal/images/q"] = 3300,
["Module:Portal/images/r"] = 444000,
["Module:Portal/images/s"] = 2030000,
["Module:Portal/images/t"] = 867000,
["Module:Portal/images/u"] = 1440000,
["Module:Portal/images/v"] = 351000,
["Module:Portal/images/w"] = 215000,
["Module:Portal/images/y"] = 39000,
["Module:Portal/images/z"] = 6500,
["Module:Portal/styles.css"] = 10900000,
["Module:Portal_bar"] = 207000,
["Module:Portal_bar/styles.css"] = 207000,
["Module:PrevalenceData"] = 8300,
["Module:Professional_wrestling_profiles"] = 3200,
["Module:Professional_wrestling_results_table"] = 3200,
["Module:Progress_box"] = 19000,
["Module:Progress_box/config"] = 19000,
["Module:Progress_box/styles.css"] = 19000,
["Module:Protect"] = 126000,
["Module:Protected_edit_request"] = 60000,
["Module:Protected_page"] = 75000,
["Module:Protected_page/config"] = 75000,
["Module:Protection_banner"] = 22000,
["Module:Purge"] = 594000,
}
kf3ef5byxxonwlq0n1uqa2wv971yexw
370448
370447
2026-09-28T09:13:08Z
ChiK
1136
1 revision imported from [[:en:Module:Transclusion_count/data/P]]
370447
Scribunto
text/plain
return {
["P"] = 6400,
["P-1"] = 4800,
["P-phrases"] = 4300,
["P."] = 4000,
["P1"] = 234000,
["P2"] = 517000,
["PAGENAMEBASE"] = 1910000,
["PAGENAMEU"] = 55000,
["PAK"] = 3500,
["PD-US"] = 8600,
["PD-US-1923-abroad"] = 5400,
["PD-US-expired"] = 5000,
["PD-US-expired-abroad"] = 8700,
["PD-US-no_notice"] = 2300,
["PD-art"] = 3300,
["PD-ineligible-USonly"] = 7700,
["PD-notice"] = 26000,
["PD-old-100"] = 3200,
["PD-self"] = 31000,
["PD-textlogo"] = 6200,
["PDB_Gallery"] = 2900,
["PER"] = 3600,
["PHI"] = 2700,
["PHL"] = 3700,
["PH_census"] = 2000,
["PLANTS"] = 4300,
["PM20"] = 3300,
["PMID"] = 6500,
["PNsign"] = 2100,
["POL"] = 68000,
["POR"] = 5600,
["POTD/Day"] = 2900,
["POTD_archive"] = 2600,
["POTD_archive/footer"] = 2600,
["POTD_default"] = 12000,
["POTD_image"] = 3900,
["POTD_image1"] = 2600,
["POTD_image2"] = 2600,
["POTD_navigation"] = 7900,
["POTD_texttitle"] = 2600,
["POTDlink"] = 8300,
["POV"] = 3200,
["POW"] = 2600,
["PR/header"] = 3100,
["PR/heading"] = 7200,
["PRI"] = 2200,
["PRT"] = 6400,
["PR_link"] = 119000,
["PS"] = 3100,
["Pad"] = 51000,
["Paddle_Steamer"] = 3100,
["Page"] = 4400,
["Page_list"] = 15000,
["Page_name_sub"] = 52000,
["Page_needed"] = 24000,
["Page_tabs"] = 4100,
["Page_tabs/styles.css"] = 4100,
["Pagelinks"] = 75000,
["Pagelist"] = 15000,
["Pagetype"] = 11400000,
["Paid"] = 18000,
["Pakistani_English"] = 4000,
["Para"] = 2980000,
["Parabr"] = 3800,
["Paragraph_break"] = 2170000,
["Param_value"] = 153000,
["Param_value/styles.css"] = 153000,
["Parameter"] = 3130000,
["Parameter_names_example"] = 2800,
["ParmPart"] = 15000,
["Partial"] = 5600,
["Partial_minor_planet_designation"] = 5700,
["Partly_done"] = 4300,
["Party_color"] = 83000,
["Party_color_cell"] = 6900,
["Party_index_link"] = 3300,
["Party_name_with_color"] = 7500,
["Party_name_with_colour"] = 4200,
["Party_shading/Democratic"] = 19000,
["Party_shading/Independent"] = 3400,
["Party_shading/Republican"] = 18000,
["Party_stripe"] = 18000,
["Pass"] = 3300,
["Pb"] = 2130000,
["Pd-notice"] = 2200,
["Pedigree"] = 4400,
["Peer_review/heading"] = 10000,
["Peer_review_links"] = 3300,
["Peer_review_tools"] = 9700,
["Penalty_shoot-out"] = 6000,
["Pending"] = 6600,
["Pending_DYK_American_hooks"] = 5300,
["Pending_DYK_biographies"] = 11000,
["Pending_changes–protected"] = 4400,
["Pending_film"] = 2900,
["Pending_films_key"] = 2700,
["Pengoal"] = 13000,
["Penmiss"] = 15000,
["Percentage"] = 19000,
["Performance_key"] = 2800,
["Performance_key/styles.css"] = 2800,
["Period_color"] = 28000,
["Period_end"] = 26000,
["Period_id"] = 29000,
["Period_start"] = 29000,
["Personal_attack_removed"] = 2200,
["PeruTasks"] = 19000,
["Phab"] = 8100,
["Phabricator"] = 8400,
["Phanerozoic_250px"] = 25000,
["PharmNavFootnote"] = 5600,
["Philippine_census_reference"] = 2000,
["Philippine_name"] = 4300,
["Photo"] = 2200,
["Photo_montage"] = 5000,
["Photo_requested"] = 108000,
["Photograph_requested"] = 4700,
["Photomontage"] = 4400,
["Photoreq"] = 2900,
["Picture_of_the_day"] = 8300,
["Pie_chart"] = 8500,
["Pie_chart/styles.css"] = 8500,
["Ping"] = 286000,
["Pipe"] = 97000,
["Place_name_disambiguation"] = 40000,
["Plain_link"] = 121000,
["Plain_list"] = 208000,
["Plain_text"] = 109000,
["Plainlink"] = 30000,
["Plainlist"] = 378000,
["Plainlist/styles.css"] = 3140000,
["Player"] = 3900,
["Player2"] = 2900,
["Please_check_ISSN"] = 16000,
["Plural"] = 108000,
["Pluralize_from_text"] = 2890000,
["Pn"] = 2900,
["Poem_quote"] = 4000,
["Poemquote"] = 2700,
["Politician_icon"] = 35000,
["Politician_icon2"] = 35000,
["Politics_sidebar_below"] = 19000,
["Politics_sidebar_title"] = 19000,
["Polluted_category"] = 2500,
["Polparty"] = 31000,
["Pop_density"] = 10000,
["Population_Germany"] = 14000,
["Portal"] = 10900000,
["Portal-Class"] = 8100,
["Portal-inline"] = 246000,
["Portal_and_project"] = 263000,
["Portal_bar"] = 186000,
["Portal_box"] = 2100,
["Portalbar"] = 9900,
["Portuguese_name"] = 10000,
["Possible"] = 4000,
["Possibly_empty_category"] = 70000,
["Post-nominals"] = 63000,
["Post-nominals/AUS"] = 8500,
["Post-nominals/CAN"] = 10000,
["Post-nominals/GBR"] = 33000,
["Post-nominals/NZL"] = 4500,
["Postnominals"] = 11000,
["Pp"] = 8700,
["Pp-book-cover"] = 52000,
["Pp-extended"] = 11000,
["Pp-move"] = 10000,
["Pp-pc"] = 3700,
["Pp-protected"] = 13000,
["Pp-semi"] = 6900,
["Pp-semi-indef"] = 4700,
["Pp-template"] = 4400,
["Pp-vandalism"] = 2800,
["Precision"] = 6000,
["Preferences"] = 18000,
["Preferences/section"] = 3500,
["PresFoot"] = 3300,
["PresHead"] = 3900,
["PresRow"] = 3900,
["Press"] = 5800,
["Preview_warning"] = 488000,
["Primary_source_inline"] = 8300,
["Primary_sources"] = 33000,
["Principal_rank"] = 656000,
["Prisoner_of_war"] = 2600,
["Prl"] = 119000,
["ProCyclingStats"] = 2400,
["ProQuest"] = 36000,
["Professional_wrestling_profiles"] = 3200,
["Professional_wrestling_results_table"] = 3200,
["Profit"] = 3600,
["Progress_box"] = 19000,
["Project-Class"] = 13000,
["Project_other"] = 18000,
["Promotional"] = 18000,
["Proper_name"] = 2800,
["Prose"] = 3300,
["Protected_due_to_vandalism"] = 2900,
["Protected_page"] = 25000,
["Protected_page_maintenance_message"] = 42000,
["Protection_padlock"] = 3700,
["Proxy_block"] = 2200,
["Pso"] = 5100,
["Purge"] = 571000,
["Purge_button"] = 19000,
["Purge_button/styles.css"] = 19000,
["Module:POTD_titletext"] = 2500,
["Module:Page"] = 123000,
["Module:PageLinks"] = 75000,
["Module:Page_tabs"] = 4100,
["Module:Pagelist"] = 15000,
["Module:Pagetype"] = 19100000,
["Module:Pagetype/config"] = 19100000,
["Module:Pagetype/disambiguation"] = 13300000,
["Module:Pagetype/rfd"] = 17200000,
["Module:Pagetype/setindex"] = 13600000,
["Module:Pagetype/softredirect"] = 17900000,
["Module:ParameterCount"] = 1760000,
["Module:Parameter_names_example"] = 2800,
["Module:Parameter_validation"] = 166000,
["Module:Parameter_validation/default_config"] = 166000,
["Module:Party_name_with_color"] = 14000,
["Module:Percentage"] = 19000,
["Module:Person_date"] = 1790000,
["Module:Person_height"] = 284000,
["Module:Person_length"] = 7700,
["Module:Person_weight"] = 85000,
["Module:Phone_size"] = 2200,
["Module:Photo_montage"] = 5000,
["Module:Piechart"] = 8500,
["Module:Piechart/cuts.json"] = 8500,
["Module:Plain_text"] = 1890000,
["Module:Pn"] = 4800,
["Module:Political_party"] = 151000,
["Module:Political_party/A"] = 27000,
["Module:Political_party/B"] = 20000,
["Module:Political_party/C"] = 49000,
["Module:Political_party/D"] = 59000,
["Module:Political_party/E"] = 7000,
["Module:Political_party/F"] = 15000,
["Module:Political_party/G"] = 22000,
["Module:Political_party/H"] = 7600,
["Module:Political_party/I"] = 63000,
["Module:Political_party/J"] = 10000,
["Module:Political_party/K"] = 6400,
["Module:Political_party/L"] = 48000,
["Module:Political_party/M"] = 15000,
["Module:Political_party/N"] = 39000,
["Module:Political_party/O"] = 7100,
["Module:Political_party/P"] = 34000,
["Module:Political_party/R"] = 58000,
["Module:Political_party/S"] = 38000,
["Module:Political_party/T"] = 15000,
["Module:Political_party/U"] = 22000,
["Module:Political_party/V"] = 8100,
["Module:Political_party/W"] = 15000,
["Module:Political_party/Y"] = 2400,
["Module:Pop_density"] = 10000,
["Module:PopulationFromWikidata"] = 15000,
["Module:Portal"] = 11400000,
["Module:Portal-inline"] = 251000,
["Module:Portal/images/a"] = 2060000,
["Module:Portal/images/aliases"] = 362000,
["Module:Portal/images/b"] = 3600000,
["Module:Portal/images/c"] = 2330000,
["Module:Portal/images/d"] = 121000,
["Module:Portal/images/e"] = 602000,
["Module:Portal/images/f"] = 1020000,
["Module:Portal/images/g"] = 711000,
["Module:Portal/images/h"] = 551000,
["Module:Portal/images/i"] = 1310000,
["Module:Portal/images/j"] = 350000,
["Module:Portal/images/k"] = 90000,
["Module:Portal/images/l"] = 538000,
["Module:Portal/images/m"] = 776000,
["Module:Portal/images/n"] = 845000,
["Module:Portal/images/o"] = 466000,
["Module:Portal/images/other"] = 272000,
["Module:Portal/images/p"] = 990000,
["Module:Portal/images/q"] = 3300,
["Module:Portal/images/r"] = 444000,
["Module:Portal/images/s"] = 2030000,
["Module:Portal/images/t"] = 867000,
["Module:Portal/images/u"] = 1440000,
["Module:Portal/images/v"] = 351000,
["Module:Portal/images/w"] = 215000,
["Module:Portal/images/y"] = 39000,
["Module:Portal/images/z"] = 6500,
["Module:Portal/styles.css"] = 10900000,
["Module:Portal_bar"] = 207000,
["Module:Portal_bar/styles.css"] = 207000,
["Module:PrevalenceData"] = 8300,
["Module:Professional_wrestling_profiles"] = 3200,
["Module:Professional_wrestling_results_table"] = 3200,
["Module:Progress_box"] = 19000,
["Module:Progress_box/config"] = 19000,
["Module:Progress_box/styles.css"] = 19000,
["Module:Protect"] = 126000,
["Module:Protected_edit_request"] = 60000,
["Module:Protected_page"] = 75000,
["Module:Protected_page/config"] = 75000,
["Module:Protection_banner"] = 22000,
["Module:Purge"] = 594000,
}
kf3ef5byxxonwlq0n1uqa2wv971yexw
ಮೋಡ್ಯೂಲ್:Transclusion count/data/C
828
10244
370325
369977
2026-09-27T05:08:22Z
en>Ahechtbot
0
[[Wikipedia:BOT|Bot]]: Updated page.
370325
Scribunto
text/plain
return {
["C"] = 804000,
["C-Class"] = 17000,
["C-SPAN"] = 13000,
["C-cmn"] = 2800,
["C-pl"] = 51000,
["C."] = 355000,
["CAN"] = 20000,
["CANelec"] = 18000,
["CANelec/gain"] = 3500,
["CANelec/hold"] = 6800,
["CANelec/source"] = 11000,
["CANelec/top"] = 9100,
["CANelec/total"] = 9700,
["CAS"] = 3800,
["CAS_Registry_Number"] = 3800,
["CBB_Yearly_Record_End"] = 3500,
["CBB_Yearly_Record_Entry"] = 3600,
["CBB_Yearly_Record_Start"] = 3400,
["CBB_Yearly_Record_Subhead"] = 4200,
["CBB_Yearly_Record_Subtotal"] = 3300,
["CBB_roster/Footer"] = 11000,
["CBB_roster/Header"] = 11000,
["CBB_roster/Player"] = 11000,
["CBB_schedule_end"] = 14000,
["CBB_schedule_entry"] = 14000,
["CBB_schedule_start"] = 14000,
["CBB_standings_end"] = 20000,
["CBB_standings_entry"] = 19000,
["CBB_standings_start"] = 19000,
["CBB_yearly_record_end"] = 4700,
["CBB_yearly_record_end/legend"] = 4100,
["CBB_yearly_record_entry"] = 4600,
["CBB_yearly_record_start"] = 4500,
["CBB_yearly_record_subhead"] = 4300,
["CBB_yearly_record_subtotal"] = 4400,
["CBSB_Standings_End"] = 2700,
["CBSB_Standings_Entry"] = 2700,
["CBSB_Standings_Start"] = 2600,
["CBSB_link"] = 4100,
["CBSB_standings_end"] = 5600,
["CBSB_standings_entry"] = 5600,
["CBSB_standings_start"] = 5600,
["CC0"] = 4000,
["CC_BY-SA_2.5"] = 2100,
["CC_BY-SA_2.5,_2.0,_1.0"] = 2100,
["CC_BY-SA_3.0"] = 20000,
["CC_BY-SA_3.0_migrated"] = 19000,
["CC_BY-SA_4.0"] = 14000,
["CC_BY_2.5"] = 2600,
["CC_BY_3.0"] = 7000,
["CFB_Standings_End"] = 16000,
["CFB_Standings_Entry"] = 16000,
["CFB_Standings_Start"] = 16000,
["CFB_Yearly_Record_End"] = 7900,
["CFB_Yearly_Record_End/legend"] = 2900,
["CFB_Yearly_Record_Entry"] = 7900,
["CFB_Yearly_Record_Start"] = 7900,
["CFB_Yearly_Record_Subhead"] = 8000,
["CFB_Yearly_Record_Subtotal"] = 7800,
["CFB_schedule"] = 29000,
["CFB_schedule_entry"] = 22000,
["CFB_standings_end"] = 39000,
["CFB_standings_entry"] = 39000,
["CFB_standings_start"] = 39000,
["CFL_Year"] = 7400,
["CGF_year"] = 3900,
["CGNDB_URL"] = 5400,
["CHE"] = 12000,
["CHI"] = 3400,
["CHL"] = 4300,
["CHN"] = 15000,
["CN"] = 4000,
["CO2"] = 3500,
["COI"] = 14000,
["COIUL"] = 131000,
["COI_editnotice"] = 7900,
["COL"] = 5700,
["COLON"] = 14000,
["CRI"] = 2300,
["CRO"] = 6600,
["CS1_config"] = 16000,
["CSK"] = 2800,
["CSS_crop"] = 2100,
["CSS_image_crop"] = 9800,
["CUB"] = 4200,
["CURRENTDATE"] = 3600,
["CYP"] = 2200,
["CZE"] = 17000,
["Calendar"] = 2500,
["Calendar/styles.css"] = 2800,
["California/color"] = 12000,
["Call_sign_disambiguation"] = 3100,
["Campaignbox"] = 26000,
["CanProvName"] = 19000,
["CanadaByProvinceCatNav"] = 9500,
["CanadaProvinceThe"] = 4500,
["Canada_NTS_Map_Sheet"] = 2200,
["Canada_by_province_category_navigation"] = 9900,
["Canadian_English"] = 13000,
["Canadian_Parliament_links"] = 5100,
["Canadian_election_result"] = 18000,
["Canadian_election_result/gain"] = 3700,
["Canadian_election_result/hold"] = 7100,
["Canadian_election_result/source"] = 13000,
["Canadian_election_result/top"] = 19000,
["Canadian_election_result/total"] = 14000,
["Canadian_party_colour"] = 11000,
["Canadian_party_colour/colour"] = 23000,
["Canadian_party_colour/colour/default"] = 23000,
["Canadian_party_colour/name"] = 19000,
["Canadian_party_colour/name/default"] = 8300,
["Canadian_province_name"] = 19000,
["Canned_search"] = 8500,
["Cascite"] = 17000,
["Caselaw_source"] = 4800,
["Cassini-Ehess"] = 3300,
["Cast_listing"] = 30000,
["Castlist"] = 6000,
["Cat"] = 507000,
["CatAutoTOC"] = 373000,
["CatRel"] = 4100,
["CatTrack"] = 20000,
["Cat_class"] = 6100,
["Cat_handler"] = 2300,
["Cat_main"] = 149000,
["Cat_more"] = 103000,
["Cat_more_if_exists"] = 29000,
["Cat_see_also"] = 3800,
["Catalog_lookup_link"] = 61000,
["Catalog_of_Fishes"] = 9800,
["Catalogue_of_Life"] = 24000,
["Category"] = 2400,
["Category-Class"] = 14000,
["Category-inline"] = 11000,
["Category_TOC"] = 81000,
["Category_U.S._State_elections_by_year"] = 7500,
["Category_U.S._State_elections_by_year/core"] = 7500,
["Category_class"] = 25000,
["Category_described_in_year"] = 6400,
["Category_diffuse"] = 11000,
["Category_disambiguation"] = 2700,
["Category_explanation"] = 417000,
["Category_handler"] = 2730000,
["Category_if_exists"] = 130000,
["Category_ifexist"] = 4900,
["Category_importance"] = 8800,
["Category_link"] = 730000,
["Category_link/core"] = 730000,
["Category_link_if_exists"] = 81000,
["Category_link_with_count"] = 9300,
["Category_link_without_namespace"] = 805000,
["Category_links"] = 10000,
["Category_main_article"] = 221000,
["Category_more"] = 143000,
["Category_more_if_exists"] = 49000,
["Category_ordered_by_date"] = 13000,
["Category_other"] = 1130000,
["Category_pair"] = 2200,
["Category_redirect"] = 159000,
["Category_redirect/core"] = 159000,
["Category_see_also"] = 55000,
["Category_see_also/Category_pair_check"] = 55000,
["Category_see_also_if_exists"] = 96000,
["Category_see_also_if_exists_2"] = 101000,
["Category_series_navigation"] = 600000,
["Category_title"] = 2400,
["Catexp"] = 5900,
["CathEncy"] = 2300,
["Catholic"] = 3700,
["Catholic_Encyclopedia"] = 5100,
["Catmain"] = 29000,
["Catmore"] = 9800,
["Catseealso"] = 2300,
["Cbb_link"] = 10000,
["Cbignore"] = 133000,
["Cbsb_link"] = 2500,
["Cc-by-2.5"] = 2600,
["Cc-by-3.0"] = 6900,
["Cc-by-sa-2.5"] = 2100,
["Cc-by-sa-2.5,2.0,1.0"] = 2100,
["Cc-by-sa-3.0"] = 20000,
["Cc-by-sa-3.0-migrated"] = 19000,
["Cc-by-sa-4.0"] = 14000,
["Cc-zero"] = 3800,
["CensusAU"] = 9100,
["Census_2016_AUS"] = 5700,
["Census_2021_AUS"] = 6200,
["Cent"] = 6900,
["Center"] = 302000,
["Centered_quote"] = 37000,
["Centralized_discussion"] = 7300,
["Centralized_discussion/core"] = 7200,
["Centralized_discussion/styles.css"] = 7200,
["Centre"] = 4200,
["Century"] = 16000,
["Century_name_from_decade"] = 2400,
["Century_name_from_decade_or_year"] = 127000,
["Century_name_from_title_decade"] = 7600,
["Century_name_from_title_year"] = 9300,
["Certification_Cite_Ref"] = 38000,
["Certification_Table_Bottom"] = 37000,
["Certification_Table_Entry"] = 39000,
["Certification_Table_Entry/Foot"] = 37000,
["Certification_Table_Entry/Foot/helper"] = 37000,
["Certification_Table_Entry/MexicanAward"] = 2400,
["Certification_Table_Entry/Region"] = 38000,
["Certification_Table_Entry/Sales"] = 37000,
["Certification_Table_Entry/Sales/AustrianPeriod"] = 2500,
["Certification_Table_Entry/Sales/BelgianPeriod"] = 2400,
["Certification_Table_Entry/Sales/DanishPeriod"] = 4500,
["Certification_Table_Entry/Sales/DanishPeriodHelper1"] = 4500,
["Certification_Table_Entry/Sales/DanishPeriodHelper2"] = 4500,
["Certification_Table_Entry/Sales/FrenchPeriod"] = 2300,
["Certification_Table_Entry/Sales/FrenchPeriodAlbum"] = 2100,
["Certification_Table_Entry/Sales/GermanPeriod"] = 4100,
["Certification_Table_Entry/Sales/ItalianHelper"] = 4500,
["Certification_Table_Entry/Sales/MexicanSales"] = 2300,
["Certification_Table_Entry/Sales/NewZealandPeriod"] = 7900,
["Certification_Table_Entry/Sales/SpanishSinglesPeriod"] = 2800,
["Certification_Table_Entry/Sales/SwedishPeriod"] = 2300,
["Certification_Table_Separator"] = 3300,
["Certification_Table_Top"] = 39000,
["Cfb_link"] = 26000,
["Cfd_all"] = 6700,
["Cfm_full"] = 2800,
["Cfr_full"] = 3600,
["Chart/styles.css"] = 2000,
["Chart_bottom"] = 4500,
["Chart_top"] = 4500,
["Check_completeness_of_transclusions"] = 65000,
["Check_talk"] = 64000,
["Check_talk_wp"] = 1460000,
["Check_winner_by_scores"] = 16000,
["CheckedSockpuppet"] = 7200,
["Checked_sockpuppet"] = 18000,
["Checkedsockpuppet"] = 5300,
["Checkip"] = 12000,
["Checkuser"] = 90000,
["Checkuserblock-account"] = 47000,
["Chem"] = 6000,
["Chem/atom"] = 6000,
["Chem/link"] = 6000,
["Chem2"] = 11000,
["Chem_molar_mass"] = 22000,
["Chem_molar_mass/format"] = 22000,
["Chembox"] = 16000,
["Chembox/styles.css"] = 16000,
["Chembox_3DMet"] = 15000,
["Chembox_AllOtherNames"] = 14000,
["Chembox_AllOtherNames/format"] = 14000,
["Chembox_Appearance"] = 7400,
["Chembox_BoilingPt"] = 4200,
["Chembox_CASNo"] = 15000,
["Chembox_CASNo/format"] = 15000,
["Chembox_CalcTemperatures"] = 7600,
["Chembox_ChEBI"] = 15000,
["Chembox_ChEBI/format"] = 15000,
["Chembox_ChEMBL"] = 15000,
["Chembox_ChEMBL/format"] = 15000,
["Chembox_ChemSpiderID"] = 15000,
["Chembox_ChemSpiderID/format"] = 15000,
["Chembox_CompTox"] = 15000,
["Chembox_CompTox/format"] = 15000,
["Chembox_Datapage_check"] = 16000,
["Chembox_Density"] = 5700,
["Chembox_DrugBank"] = 15000,
["Chembox_DrugBank/format"] = 15000,
["Chembox_ECHA"] = 8300,
["Chembox_ECNumber"] = 15000,
["Chembox_ECNumber/format"] = 15000,
["Chembox_Elements"] = 15000,
["Chembox_Elements/molecular_formula"] = 21000,
["Chembox_FlashPt"] = 2100,
["Chembox_Footer"] = 16000,
["Chembox_Footer/tracking"] = 16000,
["Chembox_GHS_(set)"] = 4500,
["Chembox_Hazards"] = 13000,
["Chembox_IUPHAR_ligand"] = 15000,
["Chembox_IUPHAR_ligand/format"] = 15000,
["Chembox_Identifiers"] = 15000,
["Chembox_InChI"] = 15000,
["Chembox_InChI/format"] = 15000,
["Chembox_Indexlist"] = 15000,
["Chembox_Jmol"] = 15000,
["Chembox_Jmol/format"] = 15000,
["Chembox_KEGG"] = 15000,
["Chembox_KEGG/format"] = 15000,
["Chembox_MeltingPt"] = 6700,
["Chembox_OtherCpds"] = 2200,
["Chembox_Properties"] = 15000,
["Chembox_PubChem"] = 15000,
["Chembox_PubChem/format"] = 15000,
["Chembox_RTECS"] = 15000,
["Chembox_RTECS/format"] = 15000,
["Chembox_Related"] = 4200,
["Chembox_SMILES"] = 15000,
["Chembox_SMILES/format"] = 15000,
["Chembox_SolubilityInWater"] = 4600,
["Chembox_Structure"] = 2500,
["Chembox_UNII"] = 15000,
["Chembox_UNII/format"] = 15000,
["Chembox_headerbar"] = 16000,
["Chembox_image"] = 14000,
["Chembox_image_cell"] = 14000,
["Chembox_image_sbs"] = 14000,
["Chembox_parametercheck"] = 15000,
["Chembox_setDatarow"] = 5500,
["Chembox_setHeader"] = 5500,
["Chembox_templatePar/formatPreviewMessage"] = 16000,
["Chembox_verification"] = 6900,
["Chemspidercite"] = 11000,
["Chessgames_player"] = 3800,
["Chinese"] = 3500,
["Circa"] = 473000,
["Circular_reference"] = 4000,
["Citation"] = 414000,
["Citation/make_link"] = 7900,
["Citation/styles.css"] = 53000,
["Citation_needed"] = 637000,
["Citation_needed_span"] = 3600,
["Citation_style"] = 4500,
["Cite"] = 2100,
["Cite_AV_media"] = 82000,
["Cite_AV_media_notes"] = 34000,
["Cite_Appletons'"] = 2400,
["Cite_Australian_Dictionary_of_Biography"] = 5000,
["Cite_Box_Office_Mojo"] = 2600,
["Cite_Catholic_Encyclopedia"] = 8600,
["Cite_DCB"] = 3400,
["Cite_DGRBM"] = 2200,
["Cite_DNB"] = 20000,
["Cite_EB1911"] = 26000,
["Cite_FTP"] = 2500,
["Cite_GBIF"] = 4300,
["Cite_GNIS"] = 2400,
["Cite_Gaia_DR3"] = 3100,
["Cite_Google_Maps"] = 20000,
["Cite_Hansard"] = 2700,
["Cite_IUCN"] = 72000,
["Cite_Instagram"] = 7600,
["Cite_Jewish_Encyclopedia"] = 3200,
["Cite_LCDB"] = 2000,
["Cite_Metacritic"] = 2400,
["Cite_NIE"] = 3500,
["Cite_NSW_Parliament"] = 3300,
["Cite_NSW_SHR"] = 2700,
["Cite_NatureServe"] = 3200,
["Cite_ODNB"] = 22000,
["Cite_OED"] = 2500,
["Cite_POWO"] = 7000,
["Cite_Q"] = 18000,
["Cite_QHR"] = 3100,
["Cite_QPN"] = 4100,
["Cite_Rotten_Tomatoes"] = 2900,
["Cite_Rowlett"] = 2500,
["Cite_Russian_law"] = 7800,
["Cite_Ryan"] = 3300,
["Cite_SNL"] = 2100,
["Cite_Sports-Reference"] = 55000,
["Cite_USGov"] = 13000,
["Cite_WoRMS"] = 14000,
["Cite_act"] = 4000,
["Cite_arXiv"] = 7200,
["Cite_bcgnis"] = 3700,
["Cite_book"] = 1920000,
["Cite_certification"] = 43000,
["Cite_certification/Title"] = 40000,
["Cite_certification/URL"] = 43000,
["Cite_certification/archivedate"] = 7700,
["Cite_certification/archiveurl"] = 7700,
["Cite_cgndb"] = 5400,
["Cite_comic"] = 2100,
["Cite_conference"] = 23000,
["Cite_court"] = 7000,
["Cite_dictionary"] = 3600,
["Cite_document"] = 2100,
["Cite_encyclopedia"] = 245000,
["Cite_episode"] = 20000,
["Cite_gnis"] = 35000,
["Cite_instagram"] = 3100,
["Cite_interview"] = 11000,
["Cite_iucn"] = 71000,
["Cite_journal"] = 1190000,
["Cite_legislation_UK"] = 4200,
["Cite_magazine"] = 385000,
["Cite_map"] = 60000,
["Cite_news"] = 1940000,
["Cite_newspaper"] = 2100,
["Cite_newspaper_The_Times"] = 7200,
["Cite_patent"] = 7300,
["Cite_patent/authors"] = 6100,
["Cite_patent/core"] = 7700,
["Cite_peakbagger"] = 5300,
["Cite_podcast"] = 6300,
["Cite_press_release"] = 87000,
["Cite_report"] = 78000,
["Cite_rowlett"] = 2500,
["Cite_ship_register"] = 2000,
["Cite_simbad"] = 5700,
["Cite_sports-reference"] = 60000,
["Cite_taxon"] = 5600,
["Cite_tech_report"] = 3100,
["Cite_thesis"] = 51000,
["Cite_tweet"] = 49000,
["Cite_video"] = 13000,
["Cite_video_game"] = 3500,
["Cite_web"] = 5450000,
["Cite_wikisource"] = 7200,
["Cite_wikisource/make_link"] = 65000,
["Citeweb"] = 4400,
["Civil_navigation"] = 2100,
["Cjersey"] = 3000,
["Cl"] = 221000,
["Clade"] = 10000,
["Clade/styles.css"] = 10000,
["Clarification_needed"] = 2600,
["Clarify"] = 45000,
["Class"] = 38000,
["Class/colour"] = 19000,
["Class/icon"] = 21000,
["Class_mask"] = 465000,
["Classicon"] = 5200,
["Clc"] = 7300,
["Cleanup"] = 8400,
["Cleanup_reorganize"] = 2300,
["Cleanup_rewrite"] = 6900,
["Clear"] = 3780000,
["Clear_left"] = 23000,
["Clear_right"] = 2800,
["Clerk_Request"] = 2500,
["Clerk_note"] = 11000,
["Clerknote"] = 8600,
["Clickable_button"] = 1860000,
["Clickable_button_2"] = 226000,
["Closed_access"] = 5700,
["Closed_peer_review_page"] = 3200,
["Closed_rfc_bottom"] = 2300,
["Closed_rfc_top"] = 2300,
["Clr"] = 3100,
["Club_players_category"] = 9500,
["Clubplayerscat"] = 9500,
["Cmbox"] = 541000,
["Cn"] = 114000,
["Cnote2"] = 2900,
["Cnote2_Begin"] = 2900,
["Cnote2_End"] = 2900,
["Coat_of_arms"] = 2500,
["Cob"] = 15000,
["Code"] = 189000,
["Cof_family"] = 4600,
["Cof_genus"] = 5400,
["Col-1-of-2"] = 2400,
["Col-2"] = 183000,
["Col-2-of-2"] = 2300,
["Col-3"] = 11000,
["Col-4"] = 3600,
["Col-begin"] = 228000,
["Col-begin/styles.css"] = 228000,
["Col-break"] = 225000,
["Col-end"] = 227000,
["Col-float"] = 5000,
["Col-float-break"] = 4900,
["Col-float-end"] = 4900,
["Col-float/styles.css"] = 5000,
["Col-start"] = 9800,
["Col_div"] = 2200,
["Colbegin"] = 25000,
["Colend"] = 27000,
["Collapse"] = 8900,
["Collapse_bottom"] = 57000,
["Collapse_top"] = 57000,
["Collapse_top/styles.css"] = 57000,
["Collapsebottom"] = 4100,
["Collapsed_infobox_section_begin"] = 9500,
["Collapsed_infobox_section_begin/cont"] = 9500,
["Collapsed_infobox_section_begin/styles.css"] = 9500,
["Collapsed_infobox_section_end"] = 9500,
["Collapsetop"] = 4100,
["Collapsible_list"] = 69000,
["Collapsible_option"] = 152000,
["Colledge:_Ships_RN"] = 3000,
["College"] = 12000,
["CollegePrimaryHeader"] = 8300,
["CollegePrimaryStyle"] = 111000,
["CollegeSecondaryStyle"] = 11000,
["College_Athlete_Recruit_End"] = 2800,
["College_Athlete_Recruit_Entry"] = 2900,
["College_Athlete_Recruit_Start"] = 2900,
["College_athlete_recruit_end"] = 5000,
["College_athlete_recruit_entry"] = 5200,
["College_athlete_recruit_start"] = 5200,
["College_color_list"] = 4400,
["College_sports_team_link"] = 31000,
["Colon"] = 20000,
["Color"] = 503000,
["Color/styles.css"] = 503000,
["Color_box"] = 87000,
["Colorbox"] = 2600,
["Colorbull"] = 4600,
["Colored_link"] = 107000,
["Coloredlink"] = 4000,
["Colors"] = 3700,
["Colour"] = 5600,
["Colour_box"] = 2500,
["Coloured_link"] = 12000,
["Column"] = 8400,
["Column/styles.css"] = 8500,
["Columns-end"] = 8100,
["Columns-list"] = 125000,
["Columns-start"] = 8100,
["Columns_list"] = 86000,
["Comic_Book_DB"] = 3500,
["Comicbookdb"] = 3400,
["Comics-replaceability"] = 2700,
["Comics_infobox_sec/formcat"] = 3400,
["Comics_infobox_sec/genre"] = 4200,
["Comics_infobox_sec/genrecat"] = 3800,
["Comics_infobox_sec/styles.css"] = 8100,
["Comma-separated_entries"] = 351000,
["Comma-separated_list"] = 3800,
["Comma-separated_list/styles.css"] = 3800,
["Comma_separated_entries"] = 478000,
["Comment"] = 7800,
["Committed_identity"] = 3200,
["Committed_identity/styles.css"] = 3200,
["Commons"] = 73000,
["Commons-inline"] = 25000,
["Commons_cat"] = 45000,
["Commons_category"] = 907000,
["Commons_category-inline"] = 178000,
["Commons_category_inline"] = 5800,
["Commonscat"] = 59000,
["Commonscat-inline"] = 14000,
["Commonscat_inline"] = 2200,
["Commonscatinline"] = 7200,
["Compact_TOC"] = 7300,
["Compact_ToC"] = 3200,
["Compose_molecular_formula"] = 2400,
["Composition_bar"] = 13000,
["Confirmed"] = 20000,
["Confused"] = 3200,
["Confusing"] = 2400,
["CongBio"] = 9400,
["CongLinks"] = 4800,
["Connected_contributor"] = 22000,
["Connected_contributor_(paid)"] = 10000,
["Constellation_navbox"] = 10000,
["Container"] = 14000,
["Container_cat"] = 9100,
["Container_category"] = 93000,
["Containercat"] = 2800,
["Contains_special_characters"] = 5200,
["Contains_special_characters/core"] = 5200,
["Contains_special_characters/styles.css"] = 5200,
["Content_category"] = 7900,
["Contentious_topics/Additional_restrictions.json"] = 21000,
["Contentious_topics/Arab-Israeli_editnotice"] = 7000,
["Contentious_topics/Arab-Israeli_talk_notice"] = 6100,
["Contentious_topics/Category_database.json"] = 21000,
["Contentious_topics/Restrictions_definition.json"] = 21000,
["Contentious_topics/Standard_set.json"] = 21000,
["Contentious_topics/list"] = 30000,
["Contentious_topics/page_restriction_editnotice_base"] = 7400,
["Contentious_topics/page_restriction_talk_notice"] = 2700,
["Contentious_topics/talk_notice"] = 21000,
["Context"] = 2600,
["Continent2continental"] = 46000,
["Continent_adjective_to_noun"] = 10000,
["Continental2continent"] = 23000,
["Controversial"] = 3000,
["Convert"] = 1420000,
["Convert_abbreviated"] = 175000,
["Convinfobox"] = 309000,
["Coord"] = 1400000,
["Coord_missing"] = 71000,
["Coord_missing/CheckCat"] = 70000,
["Coords"] = 6700,
["Copied"] = 22000,
["Copy_to_Commons"] = 2500,
["Copy_to_Wikimedia_Commons"] = 85000,
["Copy_to_Wikimedia_Commons_in"] = 4300,
["Copyvios"] = 2500,
["Cospar"] = 2800,
["Cot"] = 14000,
["Count"] = 1080000,
["Country2continent"] = 126000,
["Country2continental"] = 32000,
["Country2nationality"] = 35000,
["Country2parent"] = 36000,
["Country2parent/core"] = 36000,
["CountryPrefixThe"] = 66000,
["Country_abbreviation"] = 94000,
["Country_alias"] = 17000,
["Country_at_games_navbox"] = 5800,
["Country_at_games_navbox/below"] = 5800,
["Country_data"] = 12000,
["Country_data_AFG"] = 2700,
["Country_data_ALB"] = 7300,
["Country_data_ALG"] = 11000,
["Country_data_AND"] = 3700,
["Country_data_ANG"] = 4500,
["Country_data_ARG"] = 53000,
["Country_data_ARM"] = 8500,
["Country_data_AUS"] = 89000,
["Country_data_AUT"] = 53000,
["Country_data_AZE"] = 11000,
["Country_data_Afghanistan"] = 21000,
["Country_data_Alabama"] = 2700,
["Country_data_Alaska"] = 2200,
["Country_data_Albania"] = 35000,
["Country_data_Alberta"] = 3100,
["Country_data_Algeria"] = 47000,
["Country_data_American_Samoa"] = 2900,
["Country_data_Andorra"] = 9400,
["Country_data_Angola"] = 21000,
["Country_data_Anguilla"] = 2400,
["Country_data_Antigua_and_Barbuda"] = 6500,
["Country_data_Apulia"] = 7900,
["Country_data_Argentina"] = 151000,
["Country_data_Arizona"] = 2500,
["Country_data_Arkansas"] = 2800,
["Country_data_Armenia"] = 46000,
["Country_data_Aruba"] = 4000,
["Country_data_Australia"] = 275000,
["Country_data_Austria"] = 145000,
["Country_data_Austria-Hungary"] = 2300,
["Country_data_Azerbaijan"] = 51000,
["Country_data_BAH"] = 4700,
["Country_data_BAN"] = 4600,
["Country_data_BAR"] = 2700,
["Country_data_BDI"] = 2100,
["Country_data_BEL"] = 60000,
["Country_data_BEN"] = 2100,
["Country_data_BER"] = 2500,
["Country_data_BFA"] = 2100,
["Country_data_BHR"] = 5900,
["Country_data_BIH"] = 14000,
["Country_data_BLR"] = 26000,
["Country_data_BOL"] = 6700,
["Country_data_BOT"] = 3200,
["Country_data_BRA"] = 65000,
["Country_data_BUL"] = 31000,
["Country_data_Bahamas"] = 11000,
["Country_data_Bahrain"] = 22000,
["Country_data_Bangladesh"] = 34000,
["Country_data_Barbados"] = 8800,
["Country_data_Belarus"] = 90000,
["Country_data_Belgium"] = 156000,
["Country_data_Belize"] = 5300,
["Country_data_Benin"] = 8100,
["Country_data_Bermuda"] = 6400,
["Country_data_Bhutan"] = 4900,
["Country_data_Bolivia"] = 24000,
["Country_data_Bosnia_and_Herzegovina"] = 53000,
["Country_data_Botswana"] = 10000,
["Country_data_Brazil"] = 170000,
["Country_data_British_Columbia"] = 3700,
["Country_data_British_Empire"] = 2100,
["Country_data_British_Raj"] = 2500,
["Country_data_British_Virgin_Islands"] = 3400,
["Country_data_Brunei"] = 6900,
["Country_data_Bulgaria"] = 101000,
["Country_data_Burkina_Faso"] = 11000,
["Country_data_Burma"] = 2300,
["Country_data_Burundi"] = 6900,
["Country_data_CAM"] = 2600,
["Country_data_CAN"] = 69000,
["Country_data_CGO"] = 2500,
["Country_data_CHE"] = 5900,
["Country_data_CHI"] = 20000,
["Country_data_CHL"] = 2400,
["Country_data_CHN"] = 49000,
["Country_data_CIV"] = 8700,
["Country_data_CMR"] = 8900,
["Country_data_COD"] = 3500,
["Country_data_COL"] = 28000,
["Country_data_CPV"] = 2400,
["Country_data_CRC"] = 7000,
["Country_data_CRO"] = 38000,
["Country_data_CUB"] = 13000,
["Country_data_CYP"] = 11000,
["Country_data_CZE"] = 55000,
["Country_data_California"] = 6300,
["Country_data_Cambodia"] = 9900,
["Country_data_Cameroon"] = 32000,
["Country_data_Canada"] = 262000,
["Country_data_Cape_Verde"] = 7200,
["Country_data_Castile_and_León"] = 2000,
["Country_data_Catalonia"] = 3400,
["Country_data_Cayman_Islands"] = 4600,
["Country_data_Central_African_Republic"] = 5200,
["Country_data_Chad"] = 5500,
["Country_data_Chile"] = 91000,
["Country_data_China"] = 150000,
["Country_data_Chinese_Taipei"] = 39000,
["Country_data_Colombia"] = 96000,
["Country_data_Colorado"] = 5100,
["Country_data_Commonwealth_of_Independent_States"] = 2100,
["Country_data_Comoros"] = 4800,
["Country_data_Confederate_States_of_America"] = 3100,
["Country_data_Connecticut"] = 3500,
["Country_data_Cook_Islands"] = 3900,
["Country_data_Costa_Rica"] = 33000,
["Country_data_Croatia"] = 105000,
["Country_data_Cuba"] = 46000,
["Country_data_Curaçao"] = 4400,
["Country_data_Cyprus"] = 46000,
["Country_data_Czech_Republic"] = 152000,
["Country_data_Czechoslovakia"] = 34000,
["Country_data_DEN"] = 40000,
["Country_data_DEU"] = 11000,
["Country_data_DNK"] = 4500,
["Country_data_DOM"] = 8400,
["Country_data_DRC"] = 2100,
["Country_data_Delaware"] = 2700,
["Country_data_Democratic_Republic_of_the_Congo"] = 22000,
["Country_data_Denmark"] = 120000,
["Country_data_Djibouti"] = 5000,
["Country_data_Dominica"] = 4300,
["Country_data_Dominican_Republic"] = 35000,
["Country_data_ECU"] = 13000,
["Country_data_EGY"] = 16000,
["Country_data_ENG"] = 52000,
["Country_data_ESA"] = 2500,
["Country_data_ESP"] = 85000,
["Country_data_EST"] = 17000,
["Country_data_ETH"] = 4600,
["Country_data_EU"] = 2700,
["Country_data_East_Germany"] = 28000,
["Country_data_Ecuador"] = 48000,
["Country_data_Egypt"] = 66000,
["Country_data_El_Salvador"] = 23000,
["Country_data_Empire_of_Japan"] = 4400,
["Country_data_England"] = 163000,
["Country_data_Equatorial_Guinea"] = 5600,
["Country_data_Eritrea"] = 5600,
["Country_data_Estonia"] = 68000,
["Country_data_Eswatini"] = 5100,
["Country_data_Ethiopia"] = 21000,
["Country_data_Europe"] = 2800,
["Country_data_European_Union"] = 8100,
["Country_data_FIJ"] = 4500,
["Country_data_FIN"] = 41000,
["Country_data_FRA"] = 116000,
["Country_data_FRG"] = 18000,
["Country_data_FRO"] = 2200,
["Country_data_FR_Yugoslavia"] = 4400,
["Country_data_Faroe_Islands"] = 5800,
["Country_data_Federated_States_of_Micronesia"] = 2700,
["Country_data_Fiji"] = 21000,
["Country_data_Finland"] = 113000,
["Country_data_Florida"] = 5900,
["Country_data_France"] = 334000,
["Country_data_French_Polynesia"] = 3900,
["Country_data_GAB"] = 2500,
["Country_data_GAM"] = 2300,
["Country_data_GBR"] = 67000,
["Country_data_GDR"] = 11000,
["Country_data_GEO"] = 16000,
["Country_data_GER"] = 96000,
["Country_data_GHA"] = 10000,
["Country_data_GIB"] = 2200,
["Country_data_GRE"] = 30000,
["Country_data_GUA"] = 5400,
["Country_data_GUI"] = 3400,
["Country_data_GUY"] = 2600,
["Country_data_Gabon"] = 8200,
["Country_data_Gambia"] = 7700,
["Country_data_Georgia"] = 8700,
["Country_data_Georgia_(U.S._state)"] = 3200,
["Country_data_Georgia_(country)"] = 54000,
["Country_data_German_Empire"] = 5700,
["Country_data_Germany"] = 292000,
["Country_data_Ghana"] = 46000,
["Country_data_Gibraltar"] = 5200,
["Country_data_Great_Britain"] = 128000,
["Country_data_Greece"] = 106000,
["Country_data_Greenland"] = 2800,
["Country_data_Grenada"] = 5700,
["Country_data_Guadeloupe"] = 2800,
["Country_data_Guam"] = 4600,
["Country_data_Guatemala"] = 22000,
["Country_data_Guinea"] = 9500,
["Country_data_Guinea-Bissau"] = 5500,
["Country_data_Guyana"] = 7800,
["Country_data_HAI"] = 3400,
["Country_data_HKG"] = 15000,
["Country_data_HON"] = 4400,
["Country_data_HUN"] = 45000,
["Country_data_Haiti"] = 9800,
["Country_data_Hawaii"] = 2200,
["Country_data_Honduras"] = 21000,
["Country_data_Hong_Kong"] = 51000,
["Country_data_Hungary"] = 115000,
["Country_data_IDN"] = 5800,
["Country_data_INA"] = 12000,
["Country_data_IND"] = 34000,
["Country_data_IRE"] = 13000,
["Country_data_IRI"] = 6800,
["Country_data_IRL"] = 24000,
["Country_data_IRN"] = 7400,
["Country_data_IRQ"] = 4800,
["Country_data_ISL"] = 9300,
["Country_data_ISR"] = 23000,
["Country_data_ITA"] = 103000,
["Country_data_Iceland"] = 46000,
["Country_data_Idaho"] = 2200,
["Country_data_Illinois"] = 4600,
["Country_data_India"] = 258000,
["Country_data_Indiana"] = 3400,
["Country_data_Indonesia"] = 71000,
["Country_data_Iowa"] = 2400,
["Country_data_Iran"] = 160000,
["Country_data_Iraq"] = 23000,
["Country_data_Ireland"] = 67000,
["Country_data_Isle_of_Man"] = 2900,
["Country_data_Israel"] = 93000,
["Country_data_Italy"] = 287000,
["Country_data_Ivory_Coast"] = 33000,
["Country_data_JAM"] = 12000,
["Country_data_JAP"] = 2300,
["Country_data_JOR"] = 4800,
["Country_data_JP"] = 8800,
["Country_data_JPN"] = 69000,
["Country_data_Jamaica"] = 45000,
["Country_data_Japan"] = 264000,
["Country_data_Jersey"] = 2600,
["Country_data_Jordan"] = 22000,
["Country_data_KAZ"] = 24000,
["Country_data_KEN"] = 10000,
["Country_data_KGZ"] = 4600,
["Country_data_KOR"] = 36000,
["Country_data_KOS"] = 3200,
["Country_data_KSA"] = 7600,
["Country_data_KUW"] = 4700,
["Country_data_Kazakhstan"] = 68000,
["Country_data_Kentucky"] = 2100,
["Country_data_Kenya"] = 35000,
["Country_data_Kingdom_of_France"] = 2200,
["Country_data_Kingdom_of_Great_Britain"] = 4600,
["Country_data_Kingdom_of_Italy"] = 4900,
["Country_data_Kiribati"] = 2600,
["Country_data_Kosovo"] = 11000,
["Country_data_Kuwait"] = 20000,
["Country_data_Kyrgyzstan"] = 11000,
["Country_data_LAO"] = 2200,
["Country_data_LAT"] = 17000,
["Country_data_LBN"] = 3000,
["Country_data_LBR"] = 2000,
["Country_data_LIB"] = 2600,
["Country_data_LIE"] = 3800,
["Country_data_LIT"] = 3700,
["Country_data_LTU"] = 15000,
["Country_data_LUX"] = 12000,
["Country_data_LVA"] = 3100,
["Country_data_Laos"] = 8000,
["Country_data_Latvia"] = 55000,
["Country_data_Lebanon"] = 24000,
["Country_data_Lesotho"] = 5500,
["Country_data_Liberia"] = 8000,
["Country_data_Libya"] = 9200,
["Country_data_Liechtenstein"] = 8900,
["Country_data_Lithuania"] = 54000,
["Country_data_Louisiana"] = 2300,
["Country_data_Luxembourg"] = 48000,
["Country_data_MAC"] = 3000,
["Country_data_MAD"] = 2400,
["Country_data_MAR"] = 15000,
["Country_data_MAS"] = 13000,
["Country_data_MDA"] = 8900,
["Country_data_MEX"] = 35000,
["Country_data_MGL"] = 3600,
["Country_data_MKD"] = 8600,
["Country_data_MLI"] = 4700,
["Country_data_MLT"] = 6500,
["Country_data_MNE"] = 8700,
["Country_data_MON"] = 4700,
["Country_data_MOZ"] = 2700,
["Country_data_MRI"] = 2300,
["Country_data_MYA"] = 3400,
["Country_data_MYS"] = 4200,
["Country_data_Macau"] = 6900,
["Country_data_Macedonia"] = 4600,
["Country_data_Madagascar"] = 9700,
["Country_data_Malawi"] = 6200,
["Country_data_Malaysia"] = 71000,
["Country_data_Maldives"] = 6700,
["Country_data_Mali"] = 21000,
["Country_data_Malta"] = 32000,
["Country_data_Manitoba"] = 3000,
["Country_data_Marshall_Islands"] = 3400,
["Country_data_Martinique"] = 2800,
["Country_data_Maryland"] = 3300,
["Country_data_Massachusetts"] = 2600,
["Country_data_Mauritania"] = 6000,
["Country_data_Mauritius"] = 8500,
["Country_data_Mexico"] = 114000,
["Country_data_Michigan"] = 3900,
["Country_data_Minas_Gerais"] = 2100,
["Country_data_Minnesota"] = 3700,
["Country_data_Missouri"] = 2500,
["Country_data_Moldova"] = 34000,
["Country_data_Monaco"] = 12000,
["Country_data_Mongolia"] = 11000,
["Country_data_Montana"] = 2400,
["Country_data_Montenegro"] = 33000,
["Country_data_Montserrat"] = 2400,
["Country_data_Morocco"] = 51000,
["Country_data_Mozambique"] = 8000,
["Country_data_Myanmar"] = 23000,
["Country_data_NAM"] = 4000,
["Country_data_NED"] = 73000,
["Country_data_NEP"] = 3400,
["Country_data_NGA"] = 8800,
["Country_data_NGR"] = 9500,
["Country_data_NIR"] = 11000,
["Country_data_NLD"] = 7500,
["Country_data_NOR"] = 35000,
["Country_data_NZ"] = 3700,
["Country_data_NZL"] = 39000,
["Country_data_Namibia"] = 11000,
["Country_data_Nauru"] = 2600,
["Country_data_Nazi_Germany"] = 10000,
["Country_data_Nepal"] = 32000,
["Country_data_Netherlands"] = 261000,
["Country_data_Netherlands_Antilles"] = 2400,
["Country_data_Nevada"] = 2100,
["Country_data_New_Brunswick"] = 2600,
["Country_data_New_Caledonia"] = 3300,
["Country_data_New_Hampshire"] = 2100,
["Country_data_New_Jersey"] = 4300,
["Country_data_New_South_Wales"] = 6400,
["Country_data_New_York"] = 4300,
["Country_data_New_York_(state)"] = 6800,
["Country_data_New_Zealand"] = 119000,
["Country_data_Newfoundland_and_Labrador"] = 2900,
["Country_data_Nicaragua"] = 9000,
["Country_data_Niger"] = 6300,
["Country_data_Nigeria"] = 67000,
["Country_data_North_Carolina"] = 3500,
["Country_data_North_Korea"] = 23000,
["Country_data_North_Macedonia"] = 33000,
["Country_data_Northern_Ireland"] = 27000,
["Country_data_Northern_Mariana_Islands"] = 2800,
["Country_data_Norway"] = 117000,
["Country_data_Nova_Scotia"] = 2900,
["Country_data_OMA"] = 3300,
["Country_data_Ohio"] = 6000,
["Country_data_Oklahoma"] = 2500,
["Country_data_Oman"] = 10000,
["Country_data_Ontario"] = 3900,
["Country_data_Ottoman_Empire"] = 3200,
["Country_data_PAK"] = 9100,
["Country_data_PAN"] = 6000,
["Country_data_PAR"] = 11000,
["Country_data_PER"] = 14000,
["Country_data_PHI"] = 13000,
["Country_data_PLE"] = 2100,
["Country_data_PNG"] = 3200,
["Country_data_POL"] = 61000,
["Country_data_POR"] = 37000,
["Country_data_PRK"] = 5000,
["Country_data_PRT"] = 3600,
["Country_data_PUR"] = 8100,
["Country_data_Pakistan"] = 51000,
["Country_data_Palau"] = 2600,
["Country_data_Palestine"] = 7800,
["Country_data_Panama"] = 30000,
["Country_data_Papua_New_Guinea"] = 8400,
["Country_data_Paraguay"] = 45000,
["Country_data_Pennsylvania"] = 3600,
["Country_data_Peru"] = 64000,
["Country_data_Philippines"] = 68000,
["Country_data_Poland"] = 241000,
["Country_data_Portugal"] = 117000,
["Country_data_Prussia"] = 2900,
["Country_data_Puerto_Rico"] = 34000,
["Country_data_QAT"] = 9600,
["Country_data_Qatar"] = 32000,
["Country_data_Quebec"] = 4500,
["Country_data_Queensland"] = 2400,
["Country_data_ROM"] = 15000,
["Country_data_ROU"] = 32000,
["Country_data_RSA"] = 37000,
["Country_data_RUS"] = 69000,
["Country_data_RWA"] = 2500,
["Country_data_Republic_of_China"] = 4600,
["Country_data_Republic_of_Ireland"] = 55000,
["Country_data_Republic_of_the_Congo"] = 8300,
["Country_data_Romania"] = 114000,
["Country_data_Russia"] = 254000,
["Country_data_Russian_Empire"] = 5700,
["Country_data_Rwanda"] = 8500,
["Country_data_SAM"] = 3700,
["Country_data_SCG"] = 2900,
["Country_data_SCO"] = 29000,
["Country_data_SEN"] = 8600,
["Country_data_SER"] = 3700,
["Country_data_SGP"] = 4600,
["Country_data_SIN"] = 7500,
["Country_data_SLE"] = 2100,
["Country_data_SLO"] = 22000,
["Country_data_SLV"] = 3200,
["Country_data_SMR"] = 3600,
["Country_data_SPA"] = 5500,
["Country_data_SRB"] = 31000,
["Country_data_SRI"] = 5300,
["Country_data_SUI"] = 51000,
["Country_data_SUR"] = 2300,
["Country_data_SVK"] = 32000,
["Country_data_SVN"] = 7400,
["Country_data_SWE"] = 66000,
["Country_data_SWI"] = 5100,
["Country_data_SYR"] = 4000,
["Country_data_Saint_Kitts_and_Nevis"] = 4900,
["Country_data_Saint_Lucia"] = 5300,
["Country_data_Saint_Vincent_and_the_Grenadines"] = 5000,
["Country_data_Samoa"] = 8100,
["Country_data_San_Marino"] = 9700,
["Country_data_Saskatchewan"] = 4000,
["Country_data_Saudi_Arabia"] = 37000,
["Country_data_Scotland"] = 102000,
["Country_data_Senegal"] = 31000,
["Country_data_Serbia"] = 105000,
["Country_data_Serbia_and_Montenegro"] = 5400,
["Country_data_Seychelles"] = 5800,
["Country_data_Sierra_Leone"] = 7700,
["Country_data_Singapore"] = 50000,
["Country_data_Slovakia"] = 96000,
["Country_data_Slovenia"] = 91000,
["Country_data_Solomon_Islands"] = 4700,
["Country_data_Somalia"] = 6600,
["Country_data_South_Africa"] = 121000,
["Country_data_South_Australia"] = 2300,
["Country_data_South_Carolina"] = 3100,
["Country_data_South_Korea"] = 116000,
["Country_data_South_Sudan"] = 4800,
["Country_data_Soviet_Union"] = 77000,
["Country_data_Spain"] = 277000,
["Country_data_Sri_Lanka"] = 36000,
["Country_data_Sudan"] = 8700,
["Country_data_Suriname"] = 6900,
["Country_data_Sweden"] = 166000,
["Country_data_Switzerland"] = 150000,
["Country_data_Syria"] = 21000,
["Country_data_São_Tomé_and_Príncipe"] = 3400,
["Country_data_TAN"] = 3500,
["Country_data_TCH"] = 12000,
["Country_data_THA"] = 25000,
["Country_data_TJK"] = 2900,
["Country_data_TKM"] = 3100,
["Country_data_TOG"] = 2100,
["Country_data_TON"] = 2000,
["Country_data_TPE"] = 19000,
["Country_data_TRI"] = 5100,
["Country_data_TTO"] = 2200,
["Country_data_TUN"] = 12000,
["Country_data_TUR"] = 34000,
["Country_data_TWN"] = 2200,
["Country_data_Taiwan"] = 27000,
["Country_data_Tajikistan"] = 9700,
["Country_data_Tanzania"] = 22000,
["Country_data_Tennessee"] = 2300,
["Country_data_Texas"] = 5800,
["Country_data_Thailand"] = 96000,
["Country_data_Timor-Leste"] = 5100,
["Country_data_Togo"] = 7600,
["Country_data_Tonga"] = 6700,
["Country_data_Trinidad_and_Tobago"] = 24000,
["Country_data_Tunisia"] = 46000,
["Country_data_Turkey"] = 140000,
["Country_data_Turkmenistan"] = 8400,
["Country_data_Turks_and_Caicos_Islands"] = 2800,
["Country_data_Tuvalu"] = 2600,
["Country_data_U.S."] = 2000,
["Country_data_U.S._Virgin_Islands"] = 4900,
["Country_data_UAE"] = 11000,
["Country_data_UGA"] = 5300,
["Country_data_UK"] = 19000,
["Country_data_UKGBI"] = 3500,
["Country_data_UKR"] = 45000,
["Country_data_URS"] = 19000,
["Country_data_URU"] = 16000,
["Country_data_US"] = 5300,
["Country_data_USA"] = 151000,
["Country_data_USSR"] = 5300,
["Country_data_UZB"] = 14000,
["Country_data_Uganda"] = 22000,
["Country_data_Ukraine"] = 118000,
["Country_data_United_Arab_Emirates"] = 38000,
["Country_data_United_Kingdom"] = 158000,
["Country_data_United_Kingdom_of_Great_Britain_and_Ireland"] = 4900,
["Country_data_United_Nations"] = 4400,
["Country_data_United_States"] = 439000,
["Country_data_United_States_of_America"] = 4500,
["Country_data_Uruguay"] = 52000,
["Country_data_Uzbekistan"] = 36000,
["Country_data_VEN"] = 18000,
["Country_data_VIE"] = 7400,
["Country_data_Vanuatu"] = 5100,
["Country_data_Vatican_City"] = 3000,
["Country_data_Venezuela"] = 66000,
["Country_data_Victoria"] = 2400,
["Country_data_Vietnam"] = 46000,
["Country_data_Virginia"] = 3100,
["Country_data_WAL"] = 19000,
["Country_data_Wales"] = 68000,
["Country_data_Washington"] = 2700,
["Country_data_Washington,_D.C."] = 2300,
["Country_data_Washington_(state)"] = 3400,
["Country_data_West_Germany"] = 52000,
["Country_data_West_Indies"] = 2900,
["Country_data_Wisconsin"] = 5600,
["Country_data_Wyoming"] = 2100,
["Country_data_YUG"] = 11000,
["Country_data_Yemen"] = 8100,
["Country_data_Yugoslavia"] = 34000,
["Country_data_ZAF"] = 5400,
["Country_data_ZAM"] = 3800,
["Country_data_ZIM"] = 9200,
["Country_data_Zambia"] = 11000,
["Country_data_Zimbabwe"] = 32000,
["Country_data_none"] = 2100,
["Country_flagbio"] = 40000,
["Country_in_the_Eurovision_Song_Contest"] = 2900,
["Country_name"] = 59000,
["Country_prefix_the"] = 176000,
["Country_showdata"] = 7000,
["Country_topics"] = 25000,
["County"] = 7000,
["County_(judet)_of_Romania"] = 3300,
["Course_assignment"] = 4200,
["Course_details"] = 8600,
["Course_instructor"] = 3200,
["Cquote"] = 35000,
["Cr"] = 5100,
["Cr-rt"] = 2500,
["Create_taxonomy/link"] = 151000,
["Creative_Commons_text_attribution_notice"] = 7100,
["Cref2"] = 2900,
["Cricinfo"] = 24000,
["Cricket_squad2_player"] = 2800,
["Cricketarchive"] = 3000,
["Croatian_Census_2021"] = 4200,
["Cross"] = 4200,
["Crossreference"] = 2600,
["Crossreference/styles.css"] = 2600,
["Cs1_config"] = 14000,
["Cslist"] = 3700,
["Csv"] = 76000,
["Currency"] = 5500,
["Current_events"] = 9500,
["Current_events/styles.css"] = 9500,
["Current_leader"] = 5300,
["Currentdate"] = 24000,
["Cvt"] = 174000,
["Cycling_Archives"] = 4300,
["Cycling_data_DAT"] = 2100,
["Cycling_data_LTD"] = 2400,
["Cycling_data_MOV_men"] = 2300,
["Cycling_data_SOQ"] = 2200,
["Cycling_data_TVL"] = 2400,
["Cycling_data_UEX"] = 2300,
["Cycling_team_link"] = 14000,
["Module:CFB_schedule"] = 29000,
["Module:CS1_identifiers"] = 507000,
["Module:Calendar"] = 2000,
["Module:Calendrical_Calculations"] = 2600,
["Module:CallAssert"] = 123000,
["Module:Canada_NTS"] = 2200,
["Module:Canada_NTS/data"] = 2200,
["Module:Canada_by_province_category_navigation"] = 9900,
["Module:Catalog_lookup_link"] = 63000,
["Module:Category_described_in_year"] = 6400,
["Module:Category_described_in_year/config"] = 6400,
["Module:Category_disambiguation"] = 2700,
["Module:Category_handler"] = 5000000,
["Module:Category_handler/blacklist"] = 5000000,
["Module:Category_handler/config"] = 5000000,
["Module:Category_handler/data"] = 5000000,
["Module:Category_handler/shared"] = 5000000,
["Module:Category_main_article"] = 221000,
["Module:Category_more_if_exists"] = 49000,
["Module:Category_pair"] = 7100,
["Module:Category_see_also"] = 55000,
["Module:Category_series_navigation"] = 600000,
["Module:Category_series_navigation/styles.css"] = 600000,
["Module:Celestial_object_quadrangle"] = 2100,
["Module:Chart"] = 2900,
["Module:Chart/Default_colors"] = 2900,
["Module:Check_DYK_hook"] = 127000,
["Module:Check_blp_parameter"] = 2950000,
["Module:Check_for_conflicting_parameters"] = 4630000,
["Module:Check_for_deprecated_parameters"] = 808000,
["Module:Check_for_unknown_parameters"] = 23500000,
["Module:Check_height"] = 153000,
["Module:Check_isxn"] = 16000,
["Module:Check_winner_by_scores"] = 16000,
["Module:Checkuser"] = 91000,
["Module:Chem2"] = 11000,
["Module:Chem2/styles.css"] = 11000,
["Module:Citation/CS1"] = 6580000,
["Module:Citation/CS1/COinS"] = 6580000,
["Module:Citation/CS1/Configuration"] = 6700000,
["Module:Citation/CS1/Date_validation"] = 6580000,
["Module:Citation/CS1/Identifiers"] = 6700000,
["Module:Citation/CS1/Suggestions"] = 26000,
["Module:Citation/CS1/Utilities"] = 6700000,
["Module:Citation/CS1/Whitelist"] = 6580000,
["Module:Citation/CS1/styles.css"] = 6700000,
["Module:Citation_mode"] = 49000,
["Module:Cite"] = 53000,
["Module:Cite/config"] = 70000,
["Module:Cite_IUCN"] = 72000,
["Module:Cite_Q"] = 18000,
["Module:Cite_Q/config"] = 18000,
["Module:Cite_taxon"] = 56000,
["Module:Cite_tweet"] = 49000,
["Module:Clade"] = 10000,
["Module:Class"] = 61000,
["Module:Class/definition.json"] = 61000,
["Module:Class/styles.css"] = 39000,
["Module:Class_mask"] = 465000,
["Module:Clickable_button"] = 1860000,
["Module:Collapsible_list"] = 71000,
["Module:College_color"] = 138000,
["Module:College_color/data"] = 138000,
["Module:Color_contrast"] = 578000,
["Module:Color_contrast/colors"] = 581000,
["Module:Comma-separated_list"] = 3800,
["Module:Commons_link"] = 1130000,
["Module:Compact_list"] = 2000,
["Module:Complex_date"] = 48000,
["Module:Conservation_status"] = 90000,
["Module:Contentious_topics/talk_notice"] = 21000,
["Module:Convert"] = 1520000,
["Module:Convert/data"] = 1520000,
["Module:Convert/helper"] = 13000,
["Module:Convert/text"] = 1520000,
["Module:Convert/wikidata"] = 2700,
["Module:Convert/wikidata/data"] = 2700,
["Module:ConvertIB"] = 801000,
["Module:ConvertIB/data"] = 274000,
["Module:ConvertNumeric"] = 21000,
["Module:Convert_character_width"] = 3100,
["Module:Convert_character_width/data"] = 3100,
["Module:Coordinates"] = 1410000,
["Module:Coordinates/styles.css"] = 1410000,
["Module:Copied"] = 43000,
["Module:Country2nationality"] = 97000,
["Module:CountryAdjectiveDemonym"] = 117000,
["Module:CountryAdjectiveDemonym/Adjectives"] = 117000,
["Module:CountryAdjectiveDemonym/Demonyms"] = 117000,
["Module:CountryAdjectiveDemonym/The"] = 117000,
["Module:CountryData"] = 477000,
["Module:CountryData/cacheA"] = 166000,
["Module:CountryData/cacheB"] = 82000,
["Module:CountryData/cacheC"] = 59000,
["Module:CountryData/cacheD"] = 57000,
["Module:CountryData/cacheE"] = 38000,
["Module:CountryData/cacheF"] = 27000,
["Module:CountryData/cacheG"] = 27000,
["Module:CountryData/cacheH"] = 18000,
["Module:CountryData/cacheI"] = 17000,
["Module:CountryData/cacheJ"] = 11000,
["Module:CountryData/cacheK"] = 11000,
["Module:CountryData/summary"] = 477000,
["Module:Country_adjective"] = 4700,
["Module:Country_alias"] = 63000,
["Module:Country_alias/data"] = 63000,
["Module:Cslist"] = 3800,
["Module:Currency"] = 5600,
["Module:Currency/Presentation"] = 5600,
["Module:Current_leader"] = 5500,
["Module:Current_leader/data"] = 5500,
}
ayc5z4vo81baefq3a4qd7yzu9axqzm9
370326
370325
2026-09-28T05:28:33Z
ChiK
1136
1 revision imported from [[:en:Module:Transclusion_count/data/C]]
370325
Scribunto
text/plain
return {
["C"] = 804000,
["C-Class"] = 17000,
["C-SPAN"] = 13000,
["C-cmn"] = 2800,
["C-pl"] = 51000,
["C."] = 355000,
["CAN"] = 20000,
["CANelec"] = 18000,
["CANelec/gain"] = 3500,
["CANelec/hold"] = 6800,
["CANelec/source"] = 11000,
["CANelec/top"] = 9100,
["CANelec/total"] = 9700,
["CAS"] = 3800,
["CAS_Registry_Number"] = 3800,
["CBB_Yearly_Record_End"] = 3500,
["CBB_Yearly_Record_Entry"] = 3600,
["CBB_Yearly_Record_Start"] = 3400,
["CBB_Yearly_Record_Subhead"] = 4200,
["CBB_Yearly_Record_Subtotal"] = 3300,
["CBB_roster/Footer"] = 11000,
["CBB_roster/Header"] = 11000,
["CBB_roster/Player"] = 11000,
["CBB_schedule_end"] = 14000,
["CBB_schedule_entry"] = 14000,
["CBB_schedule_start"] = 14000,
["CBB_standings_end"] = 20000,
["CBB_standings_entry"] = 19000,
["CBB_standings_start"] = 19000,
["CBB_yearly_record_end"] = 4700,
["CBB_yearly_record_end/legend"] = 4100,
["CBB_yearly_record_entry"] = 4600,
["CBB_yearly_record_start"] = 4500,
["CBB_yearly_record_subhead"] = 4300,
["CBB_yearly_record_subtotal"] = 4400,
["CBSB_Standings_End"] = 2700,
["CBSB_Standings_Entry"] = 2700,
["CBSB_Standings_Start"] = 2600,
["CBSB_link"] = 4100,
["CBSB_standings_end"] = 5600,
["CBSB_standings_entry"] = 5600,
["CBSB_standings_start"] = 5600,
["CC0"] = 4000,
["CC_BY-SA_2.5"] = 2100,
["CC_BY-SA_2.5,_2.0,_1.0"] = 2100,
["CC_BY-SA_3.0"] = 20000,
["CC_BY-SA_3.0_migrated"] = 19000,
["CC_BY-SA_4.0"] = 14000,
["CC_BY_2.5"] = 2600,
["CC_BY_3.0"] = 7000,
["CFB_Standings_End"] = 16000,
["CFB_Standings_Entry"] = 16000,
["CFB_Standings_Start"] = 16000,
["CFB_Yearly_Record_End"] = 7900,
["CFB_Yearly_Record_End/legend"] = 2900,
["CFB_Yearly_Record_Entry"] = 7900,
["CFB_Yearly_Record_Start"] = 7900,
["CFB_Yearly_Record_Subhead"] = 8000,
["CFB_Yearly_Record_Subtotal"] = 7800,
["CFB_schedule"] = 29000,
["CFB_schedule_entry"] = 22000,
["CFB_standings_end"] = 39000,
["CFB_standings_entry"] = 39000,
["CFB_standings_start"] = 39000,
["CFL_Year"] = 7400,
["CGF_year"] = 3900,
["CGNDB_URL"] = 5400,
["CHE"] = 12000,
["CHI"] = 3400,
["CHL"] = 4300,
["CHN"] = 15000,
["CN"] = 4000,
["CO2"] = 3500,
["COI"] = 14000,
["COIUL"] = 131000,
["COI_editnotice"] = 7900,
["COL"] = 5700,
["COLON"] = 14000,
["CRI"] = 2300,
["CRO"] = 6600,
["CS1_config"] = 16000,
["CSK"] = 2800,
["CSS_crop"] = 2100,
["CSS_image_crop"] = 9800,
["CUB"] = 4200,
["CURRENTDATE"] = 3600,
["CYP"] = 2200,
["CZE"] = 17000,
["Calendar"] = 2500,
["Calendar/styles.css"] = 2800,
["California/color"] = 12000,
["Call_sign_disambiguation"] = 3100,
["Campaignbox"] = 26000,
["CanProvName"] = 19000,
["CanadaByProvinceCatNav"] = 9500,
["CanadaProvinceThe"] = 4500,
["Canada_NTS_Map_Sheet"] = 2200,
["Canada_by_province_category_navigation"] = 9900,
["Canadian_English"] = 13000,
["Canadian_Parliament_links"] = 5100,
["Canadian_election_result"] = 18000,
["Canadian_election_result/gain"] = 3700,
["Canadian_election_result/hold"] = 7100,
["Canadian_election_result/source"] = 13000,
["Canadian_election_result/top"] = 19000,
["Canadian_election_result/total"] = 14000,
["Canadian_party_colour"] = 11000,
["Canadian_party_colour/colour"] = 23000,
["Canadian_party_colour/colour/default"] = 23000,
["Canadian_party_colour/name"] = 19000,
["Canadian_party_colour/name/default"] = 8300,
["Canadian_province_name"] = 19000,
["Canned_search"] = 8500,
["Cascite"] = 17000,
["Caselaw_source"] = 4800,
["Cassini-Ehess"] = 3300,
["Cast_listing"] = 30000,
["Castlist"] = 6000,
["Cat"] = 507000,
["CatAutoTOC"] = 373000,
["CatRel"] = 4100,
["CatTrack"] = 20000,
["Cat_class"] = 6100,
["Cat_handler"] = 2300,
["Cat_main"] = 149000,
["Cat_more"] = 103000,
["Cat_more_if_exists"] = 29000,
["Cat_see_also"] = 3800,
["Catalog_lookup_link"] = 61000,
["Catalog_of_Fishes"] = 9800,
["Catalogue_of_Life"] = 24000,
["Category"] = 2400,
["Category-Class"] = 14000,
["Category-inline"] = 11000,
["Category_TOC"] = 81000,
["Category_U.S._State_elections_by_year"] = 7500,
["Category_U.S._State_elections_by_year/core"] = 7500,
["Category_class"] = 25000,
["Category_described_in_year"] = 6400,
["Category_diffuse"] = 11000,
["Category_disambiguation"] = 2700,
["Category_explanation"] = 417000,
["Category_handler"] = 2730000,
["Category_if_exists"] = 130000,
["Category_ifexist"] = 4900,
["Category_importance"] = 8800,
["Category_link"] = 730000,
["Category_link/core"] = 730000,
["Category_link_if_exists"] = 81000,
["Category_link_with_count"] = 9300,
["Category_link_without_namespace"] = 805000,
["Category_links"] = 10000,
["Category_main_article"] = 221000,
["Category_more"] = 143000,
["Category_more_if_exists"] = 49000,
["Category_ordered_by_date"] = 13000,
["Category_other"] = 1130000,
["Category_pair"] = 2200,
["Category_redirect"] = 159000,
["Category_redirect/core"] = 159000,
["Category_see_also"] = 55000,
["Category_see_also/Category_pair_check"] = 55000,
["Category_see_also_if_exists"] = 96000,
["Category_see_also_if_exists_2"] = 101000,
["Category_series_navigation"] = 600000,
["Category_title"] = 2400,
["Catexp"] = 5900,
["CathEncy"] = 2300,
["Catholic"] = 3700,
["Catholic_Encyclopedia"] = 5100,
["Catmain"] = 29000,
["Catmore"] = 9800,
["Catseealso"] = 2300,
["Cbb_link"] = 10000,
["Cbignore"] = 133000,
["Cbsb_link"] = 2500,
["Cc-by-2.5"] = 2600,
["Cc-by-3.0"] = 6900,
["Cc-by-sa-2.5"] = 2100,
["Cc-by-sa-2.5,2.0,1.0"] = 2100,
["Cc-by-sa-3.0"] = 20000,
["Cc-by-sa-3.0-migrated"] = 19000,
["Cc-by-sa-4.0"] = 14000,
["Cc-zero"] = 3800,
["CensusAU"] = 9100,
["Census_2016_AUS"] = 5700,
["Census_2021_AUS"] = 6200,
["Cent"] = 6900,
["Center"] = 302000,
["Centered_quote"] = 37000,
["Centralized_discussion"] = 7300,
["Centralized_discussion/core"] = 7200,
["Centralized_discussion/styles.css"] = 7200,
["Centre"] = 4200,
["Century"] = 16000,
["Century_name_from_decade"] = 2400,
["Century_name_from_decade_or_year"] = 127000,
["Century_name_from_title_decade"] = 7600,
["Century_name_from_title_year"] = 9300,
["Certification_Cite_Ref"] = 38000,
["Certification_Table_Bottom"] = 37000,
["Certification_Table_Entry"] = 39000,
["Certification_Table_Entry/Foot"] = 37000,
["Certification_Table_Entry/Foot/helper"] = 37000,
["Certification_Table_Entry/MexicanAward"] = 2400,
["Certification_Table_Entry/Region"] = 38000,
["Certification_Table_Entry/Sales"] = 37000,
["Certification_Table_Entry/Sales/AustrianPeriod"] = 2500,
["Certification_Table_Entry/Sales/BelgianPeriod"] = 2400,
["Certification_Table_Entry/Sales/DanishPeriod"] = 4500,
["Certification_Table_Entry/Sales/DanishPeriodHelper1"] = 4500,
["Certification_Table_Entry/Sales/DanishPeriodHelper2"] = 4500,
["Certification_Table_Entry/Sales/FrenchPeriod"] = 2300,
["Certification_Table_Entry/Sales/FrenchPeriodAlbum"] = 2100,
["Certification_Table_Entry/Sales/GermanPeriod"] = 4100,
["Certification_Table_Entry/Sales/ItalianHelper"] = 4500,
["Certification_Table_Entry/Sales/MexicanSales"] = 2300,
["Certification_Table_Entry/Sales/NewZealandPeriod"] = 7900,
["Certification_Table_Entry/Sales/SpanishSinglesPeriod"] = 2800,
["Certification_Table_Entry/Sales/SwedishPeriod"] = 2300,
["Certification_Table_Separator"] = 3300,
["Certification_Table_Top"] = 39000,
["Cfb_link"] = 26000,
["Cfd_all"] = 6700,
["Cfm_full"] = 2800,
["Cfr_full"] = 3600,
["Chart/styles.css"] = 2000,
["Chart_bottom"] = 4500,
["Chart_top"] = 4500,
["Check_completeness_of_transclusions"] = 65000,
["Check_talk"] = 64000,
["Check_talk_wp"] = 1460000,
["Check_winner_by_scores"] = 16000,
["CheckedSockpuppet"] = 7200,
["Checked_sockpuppet"] = 18000,
["Checkedsockpuppet"] = 5300,
["Checkip"] = 12000,
["Checkuser"] = 90000,
["Checkuserblock-account"] = 47000,
["Chem"] = 6000,
["Chem/atom"] = 6000,
["Chem/link"] = 6000,
["Chem2"] = 11000,
["Chem_molar_mass"] = 22000,
["Chem_molar_mass/format"] = 22000,
["Chembox"] = 16000,
["Chembox/styles.css"] = 16000,
["Chembox_3DMet"] = 15000,
["Chembox_AllOtherNames"] = 14000,
["Chembox_AllOtherNames/format"] = 14000,
["Chembox_Appearance"] = 7400,
["Chembox_BoilingPt"] = 4200,
["Chembox_CASNo"] = 15000,
["Chembox_CASNo/format"] = 15000,
["Chembox_CalcTemperatures"] = 7600,
["Chembox_ChEBI"] = 15000,
["Chembox_ChEBI/format"] = 15000,
["Chembox_ChEMBL"] = 15000,
["Chembox_ChEMBL/format"] = 15000,
["Chembox_ChemSpiderID"] = 15000,
["Chembox_ChemSpiderID/format"] = 15000,
["Chembox_CompTox"] = 15000,
["Chembox_CompTox/format"] = 15000,
["Chembox_Datapage_check"] = 16000,
["Chembox_Density"] = 5700,
["Chembox_DrugBank"] = 15000,
["Chembox_DrugBank/format"] = 15000,
["Chembox_ECHA"] = 8300,
["Chembox_ECNumber"] = 15000,
["Chembox_ECNumber/format"] = 15000,
["Chembox_Elements"] = 15000,
["Chembox_Elements/molecular_formula"] = 21000,
["Chembox_FlashPt"] = 2100,
["Chembox_Footer"] = 16000,
["Chembox_Footer/tracking"] = 16000,
["Chembox_GHS_(set)"] = 4500,
["Chembox_Hazards"] = 13000,
["Chembox_IUPHAR_ligand"] = 15000,
["Chembox_IUPHAR_ligand/format"] = 15000,
["Chembox_Identifiers"] = 15000,
["Chembox_InChI"] = 15000,
["Chembox_InChI/format"] = 15000,
["Chembox_Indexlist"] = 15000,
["Chembox_Jmol"] = 15000,
["Chembox_Jmol/format"] = 15000,
["Chembox_KEGG"] = 15000,
["Chembox_KEGG/format"] = 15000,
["Chembox_MeltingPt"] = 6700,
["Chembox_OtherCpds"] = 2200,
["Chembox_Properties"] = 15000,
["Chembox_PubChem"] = 15000,
["Chembox_PubChem/format"] = 15000,
["Chembox_RTECS"] = 15000,
["Chembox_RTECS/format"] = 15000,
["Chembox_Related"] = 4200,
["Chembox_SMILES"] = 15000,
["Chembox_SMILES/format"] = 15000,
["Chembox_SolubilityInWater"] = 4600,
["Chembox_Structure"] = 2500,
["Chembox_UNII"] = 15000,
["Chembox_UNII/format"] = 15000,
["Chembox_headerbar"] = 16000,
["Chembox_image"] = 14000,
["Chembox_image_cell"] = 14000,
["Chembox_image_sbs"] = 14000,
["Chembox_parametercheck"] = 15000,
["Chembox_setDatarow"] = 5500,
["Chembox_setHeader"] = 5500,
["Chembox_templatePar/formatPreviewMessage"] = 16000,
["Chembox_verification"] = 6900,
["Chemspidercite"] = 11000,
["Chessgames_player"] = 3800,
["Chinese"] = 3500,
["Circa"] = 473000,
["Circular_reference"] = 4000,
["Citation"] = 414000,
["Citation/make_link"] = 7900,
["Citation/styles.css"] = 53000,
["Citation_needed"] = 637000,
["Citation_needed_span"] = 3600,
["Citation_style"] = 4500,
["Cite"] = 2100,
["Cite_AV_media"] = 82000,
["Cite_AV_media_notes"] = 34000,
["Cite_Appletons'"] = 2400,
["Cite_Australian_Dictionary_of_Biography"] = 5000,
["Cite_Box_Office_Mojo"] = 2600,
["Cite_Catholic_Encyclopedia"] = 8600,
["Cite_DCB"] = 3400,
["Cite_DGRBM"] = 2200,
["Cite_DNB"] = 20000,
["Cite_EB1911"] = 26000,
["Cite_FTP"] = 2500,
["Cite_GBIF"] = 4300,
["Cite_GNIS"] = 2400,
["Cite_Gaia_DR3"] = 3100,
["Cite_Google_Maps"] = 20000,
["Cite_Hansard"] = 2700,
["Cite_IUCN"] = 72000,
["Cite_Instagram"] = 7600,
["Cite_Jewish_Encyclopedia"] = 3200,
["Cite_LCDB"] = 2000,
["Cite_Metacritic"] = 2400,
["Cite_NIE"] = 3500,
["Cite_NSW_Parliament"] = 3300,
["Cite_NSW_SHR"] = 2700,
["Cite_NatureServe"] = 3200,
["Cite_ODNB"] = 22000,
["Cite_OED"] = 2500,
["Cite_POWO"] = 7000,
["Cite_Q"] = 18000,
["Cite_QHR"] = 3100,
["Cite_QPN"] = 4100,
["Cite_Rotten_Tomatoes"] = 2900,
["Cite_Rowlett"] = 2500,
["Cite_Russian_law"] = 7800,
["Cite_Ryan"] = 3300,
["Cite_SNL"] = 2100,
["Cite_Sports-Reference"] = 55000,
["Cite_USGov"] = 13000,
["Cite_WoRMS"] = 14000,
["Cite_act"] = 4000,
["Cite_arXiv"] = 7200,
["Cite_bcgnis"] = 3700,
["Cite_book"] = 1920000,
["Cite_certification"] = 43000,
["Cite_certification/Title"] = 40000,
["Cite_certification/URL"] = 43000,
["Cite_certification/archivedate"] = 7700,
["Cite_certification/archiveurl"] = 7700,
["Cite_cgndb"] = 5400,
["Cite_comic"] = 2100,
["Cite_conference"] = 23000,
["Cite_court"] = 7000,
["Cite_dictionary"] = 3600,
["Cite_document"] = 2100,
["Cite_encyclopedia"] = 245000,
["Cite_episode"] = 20000,
["Cite_gnis"] = 35000,
["Cite_instagram"] = 3100,
["Cite_interview"] = 11000,
["Cite_iucn"] = 71000,
["Cite_journal"] = 1190000,
["Cite_legislation_UK"] = 4200,
["Cite_magazine"] = 385000,
["Cite_map"] = 60000,
["Cite_news"] = 1940000,
["Cite_newspaper"] = 2100,
["Cite_newspaper_The_Times"] = 7200,
["Cite_patent"] = 7300,
["Cite_patent/authors"] = 6100,
["Cite_patent/core"] = 7700,
["Cite_peakbagger"] = 5300,
["Cite_podcast"] = 6300,
["Cite_press_release"] = 87000,
["Cite_report"] = 78000,
["Cite_rowlett"] = 2500,
["Cite_ship_register"] = 2000,
["Cite_simbad"] = 5700,
["Cite_sports-reference"] = 60000,
["Cite_taxon"] = 5600,
["Cite_tech_report"] = 3100,
["Cite_thesis"] = 51000,
["Cite_tweet"] = 49000,
["Cite_video"] = 13000,
["Cite_video_game"] = 3500,
["Cite_web"] = 5450000,
["Cite_wikisource"] = 7200,
["Cite_wikisource/make_link"] = 65000,
["Citeweb"] = 4400,
["Civil_navigation"] = 2100,
["Cjersey"] = 3000,
["Cl"] = 221000,
["Clade"] = 10000,
["Clade/styles.css"] = 10000,
["Clarification_needed"] = 2600,
["Clarify"] = 45000,
["Class"] = 38000,
["Class/colour"] = 19000,
["Class/icon"] = 21000,
["Class_mask"] = 465000,
["Classicon"] = 5200,
["Clc"] = 7300,
["Cleanup"] = 8400,
["Cleanup_reorganize"] = 2300,
["Cleanup_rewrite"] = 6900,
["Clear"] = 3780000,
["Clear_left"] = 23000,
["Clear_right"] = 2800,
["Clerk_Request"] = 2500,
["Clerk_note"] = 11000,
["Clerknote"] = 8600,
["Clickable_button"] = 1860000,
["Clickable_button_2"] = 226000,
["Closed_access"] = 5700,
["Closed_peer_review_page"] = 3200,
["Closed_rfc_bottom"] = 2300,
["Closed_rfc_top"] = 2300,
["Clr"] = 3100,
["Club_players_category"] = 9500,
["Clubplayerscat"] = 9500,
["Cmbox"] = 541000,
["Cn"] = 114000,
["Cnote2"] = 2900,
["Cnote2_Begin"] = 2900,
["Cnote2_End"] = 2900,
["Coat_of_arms"] = 2500,
["Cob"] = 15000,
["Code"] = 189000,
["Cof_family"] = 4600,
["Cof_genus"] = 5400,
["Col-1-of-2"] = 2400,
["Col-2"] = 183000,
["Col-2-of-2"] = 2300,
["Col-3"] = 11000,
["Col-4"] = 3600,
["Col-begin"] = 228000,
["Col-begin/styles.css"] = 228000,
["Col-break"] = 225000,
["Col-end"] = 227000,
["Col-float"] = 5000,
["Col-float-break"] = 4900,
["Col-float-end"] = 4900,
["Col-float/styles.css"] = 5000,
["Col-start"] = 9800,
["Col_div"] = 2200,
["Colbegin"] = 25000,
["Colend"] = 27000,
["Collapse"] = 8900,
["Collapse_bottom"] = 57000,
["Collapse_top"] = 57000,
["Collapse_top/styles.css"] = 57000,
["Collapsebottom"] = 4100,
["Collapsed_infobox_section_begin"] = 9500,
["Collapsed_infobox_section_begin/cont"] = 9500,
["Collapsed_infobox_section_begin/styles.css"] = 9500,
["Collapsed_infobox_section_end"] = 9500,
["Collapsetop"] = 4100,
["Collapsible_list"] = 69000,
["Collapsible_option"] = 152000,
["Colledge:_Ships_RN"] = 3000,
["College"] = 12000,
["CollegePrimaryHeader"] = 8300,
["CollegePrimaryStyle"] = 111000,
["CollegeSecondaryStyle"] = 11000,
["College_Athlete_Recruit_End"] = 2800,
["College_Athlete_Recruit_Entry"] = 2900,
["College_Athlete_Recruit_Start"] = 2900,
["College_athlete_recruit_end"] = 5000,
["College_athlete_recruit_entry"] = 5200,
["College_athlete_recruit_start"] = 5200,
["College_color_list"] = 4400,
["College_sports_team_link"] = 31000,
["Colon"] = 20000,
["Color"] = 503000,
["Color/styles.css"] = 503000,
["Color_box"] = 87000,
["Colorbox"] = 2600,
["Colorbull"] = 4600,
["Colored_link"] = 107000,
["Coloredlink"] = 4000,
["Colors"] = 3700,
["Colour"] = 5600,
["Colour_box"] = 2500,
["Coloured_link"] = 12000,
["Column"] = 8400,
["Column/styles.css"] = 8500,
["Columns-end"] = 8100,
["Columns-list"] = 125000,
["Columns-start"] = 8100,
["Columns_list"] = 86000,
["Comic_Book_DB"] = 3500,
["Comicbookdb"] = 3400,
["Comics-replaceability"] = 2700,
["Comics_infobox_sec/formcat"] = 3400,
["Comics_infobox_sec/genre"] = 4200,
["Comics_infobox_sec/genrecat"] = 3800,
["Comics_infobox_sec/styles.css"] = 8100,
["Comma-separated_entries"] = 351000,
["Comma-separated_list"] = 3800,
["Comma-separated_list/styles.css"] = 3800,
["Comma_separated_entries"] = 478000,
["Comment"] = 7800,
["Committed_identity"] = 3200,
["Committed_identity/styles.css"] = 3200,
["Commons"] = 73000,
["Commons-inline"] = 25000,
["Commons_cat"] = 45000,
["Commons_category"] = 907000,
["Commons_category-inline"] = 178000,
["Commons_category_inline"] = 5800,
["Commonscat"] = 59000,
["Commonscat-inline"] = 14000,
["Commonscat_inline"] = 2200,
["Commonscatinline"] = 7200,
["Compact_TOC"] = 7300,
["Compact_ToC"] = 3200,
["Compose_molecular_formula"] = 2400,
["Composition_bar"] = 13000,
["Confirmed"] = 20000,
["Confused"] = 3200,
["Confusing"] = 2400,
["CongBio"] = 9400,
["CongLinks"] = 4800,
["Connected_contributor"] = 22000,
["Connected_contributor_(paid)"] = 10000,
["Constellation_navbox"] = 10000,
["Container"] = 14000,
["Container_cat"] = 9100,
["Container_category"] = 93000,
["Containercat"] = 2800,
["Contains_special_characters"] = 5200,
["Contains_special_characters/core"] = 5200,
["Contains_special_characters/styles.css"] = 5200,
["Content_category"] = 7900,
["Contentious_topics/Additional_restrictions.json"] = 21000,
["Contentious_topics/Arab-Israeli_editnotice"] = 7000,
["Contentious_topics/Arab-Israeli_talk_notice"] = 6100,
["Contentious_topics/Category_database.json"] = 21000,
["Contentious_topics/Restrictions_definition.json"] = 21000,
["Contentious_topics/Standard_set.json"] = 21000,
["Contentious_topics/list"] = 30000,
["Contentious_topics/page_restriction_editnotice_base"] = 7400,
["Contentious_topics/page_restriction_talk_notice"] = 2700,
["Contentious_topics/talk_notice"] = 21000,
["Context"] = 2600,
["Continent2continental"] = 46000,
["Continent_adjective_to_noun"] = 10000,
["Continental2continent"] = 23000,
["Controversial"] = 3000,
["Convert"] = 1420000,
["Convert_abbreviated"] = 175000,
["Convinfobox"] = 309000,
["Coord"] = 1400000,
["Coord_missing"] = 71000,
["Coord_missing/CheckCat"] = 70000,
["Coords"] = 6700,
["Copied"] = 22000,
["Copy_to_Commons"] = 2500,
["Copy_to_Wikimedia_Commons"] = 85000,
["Copy_to_Wikimedia_Commons_in"] = 4300,
["Copyvios"] = 2500,
["Cospar"] = 2800,
["Cot"] = 14000,
["Count"] = 1080000,
["Country2continent"] = 126000,
["Country2continental"] = 32000,
["Country2nationality"] = 35000,
["Country2parent"] = 36000,
["Country2parent/core"] = 36000,
["CountryPrefixThe"] = 66000,
["Country_abbreviation"] = 94000,
["Country_alias"] = 17000,
["Country_at_games_navbox"] = 5800,
["Country_at_games_navbox/below"] = 5800,
["Country_data"] = 12000,
["Country_data_AFG"] = 2700,
["Country_data_ALB"] = 7300,
["Country_data_ALG"] = 11000,
["Country_data_AND"] = 3700,
["Country_data_ANG"] = 4500,
["Country_data_ARG"] = 53000,
["Country_data_ARM"] = 8500,
["Country_data_AUS"] = 89000,
["Country_data_AUT"] = 53000,
["Country_data_AZE"] = 11000,
["Country_data_Afghanistan"] = 21000,
["Country_data_Alabama"] = 2700,
["Country_data_Alaska"] = 2200,
["Country_data_Albania"] = 35000,
["Country_data_Alberta"] = 3100,
["Country_data_Algeria"] = 47000,
["Country_data_American_Samoa"] = 2900,
["Country_data_Andorra"] = 9400,
["Country_data_Angola"] = 21000,
["Country_data_Anguilla"] = 2400,
["Country_data_Antigua_and_Barbuda"] = 6500,
["Country_data_Apulia"] = 7900,
["Country_data_Argentina"] = 151000,
["Country_data_Arizona"] = 2500,
["Country_data_Arkansas"] = 2800,
["Country_data_Armenia"] = 46000,
["Country_data_Aruba"] = 4000,
["Country_data_Australia"] = 275000,
["Country_data_Austria"] = 145000,
["Country_data_Austria-Hungary"] = 2300,
["Country_data_Azerbaijan"] = 51000,
["Country_data_BAH"] = 4700,
["Country_data_BAN"] = 4600,
["Country_data_BAR"] = 2700,
["Country_data_BDI"] = 2100,
["Country_data_BEL"] = 60000,
["Country_data_BEN"] = 2100,
["Country_data_BER"] = 2500,
["Country_data_BFA"] = 2100,
["Country_data_BHR"] = 5900,
["Country_data_BIH"] = 14000,
["Country_data_BLR"] = 26000,
["Country_data_BOL"] = 6700,
["Country_data_BOT"] = 3200,
["Country_data_BRA"] = 65000,
["Country_data_BUL"] = 31000,
["Country_data_Bahamas"] = 11000,
["Country_data_Bahrain"] = 22000,
["Country_data_Bangladesh"] = 34000,
["Country_data_Barbados"] = 8800,
["Country_data_Belarus"] = 90000,
["Country_data_Belgium"] = 156000,
["Country_data_Belize"] = 5300,
["Country_data_Benin"] = 8100,
["Country_data_Bermuda"] = 6400,
["Country_data_Bhutan"] = 4900,
["Country_data_Bolivia"] = 24000,
["Country_data_Bosnia_and_Herzegovina"] = 53000,
["Country_data_Botswana"] = 10000,
["Country_data_Brazil"] = 170000,
["Country_data_British_Columbia"] = 3700,
["Country_data_British_Empire"] = 2100,
["Country_data_British_Raj"] = 2500,
["Country_data_British_Virgin_Islands"] = 3400,
["Country_data_Brunei"] = 6900,
["Country_data_Bulgaria"] = 101000,
["Country_data_Burkina_Faso"] = 11000,
["Country_data_Burma"] = 2300,
["Country_data_Burundi"] = 6900,
["Country_data_CAM"] = 2600,
["Country_data_CAN"] = 69000,
["Country_data_CGO"] = 2500,
["Country_data_CHE"] = 5900,
["Country_data_CHI"] = 20000,
["Country_data_CHL"] = 2400,
["Country_data_CHN"] = 49000,
["Country_data_CIV"] = 8700,
["Country_data_CMR"] = 8900,
["Country_data_COD"] = 3500,
["Country_data_COL"] = 28000,
["Country_data_CPV"] = 2400,
["Country_data_CRC"] = 7000,
["Country_data_CRO"] = 38000,
["Country_data_CUB"] = 13000,
["Country_data_CYP"] = 11000,
["Country_data_CZE"] = 55000,
["Country_data_California"] = 6300,
["Country_data_Cambodia"] = 9900,
["Country_data_Cameroon"] = 32000,
["Country_data_Canada"] = 262000,
["Country_data_Cape_Verde"] = 7200,
["Country_data_Castile_and_León"] = 2000,
["Country_data_Catalonia"] = 3400,
["Country_data_Cayman_Islands"] = 4600,
["Country_data_Central_African_Republic"] = 5200,
["Country_data_Chad"] = 5500,
["Country_data_Chile"] = 91000,
["Country_data_China"] = 150000,
["Country_data_Chinese_Taipei"] = 39000,
["Country_data_Colombia"] = 96000,
["Country_data_Colorado"] = 5100,
["Country_data_Commonwealth_of_Independent_States"] = 2100,
["Country_data_Comoros"] = 4800,
["Country_data_Confederate_States_of_America"] = 3100,
["Country_data_Connecticut"] = 3500,
["Country_data_Cook_Islands"] = 3900,
["Country_data_Costa_Rica"] = 33000,
["Country_data_Croatia"] = 105000,
["Country_data_Cuba"] = 46000,
["Country_data_Curaçao"] = 4400,
["Country_data_Cyprus"] = 46000,
["Country_data_Czech_Republic"] = 152000,
["Country_data_Czechoslovakia"] = 34000,
["Country_data_DEN"] = 40000,
["Country_data_DEU"] = 11000,
["Country_data_DNK"] = 4500,
["Country_data_DOM"] = 8400,
["Country_data_DRC"] = 2100,
["Country_data_Delaware"] = 2700,
["Country_data_Democratic_Republic_of_the_Congo"] = 22000,
["Country_data_Denmark"] = 120000,
["Country_data_Djibouti"] = 5000,
["Country_data_Dominica"] = 4300,
["Country_data_Dominican_Republic"] = 35000,
["Country_data_ECU"] = 13000,
["Country_data_EGY"] = 16000,
["Country_data_ENG"] = 52000,
["Country_data_ESA"] = 2500,
["Country_data_ESP"] = 85000,
["Country_data_EST"] = 17000,
["Country_data_ETH"] = 4600,
["Country_data_EU"] = 2700,
["Country_data_East_Germany"] = 28000,
["Country_data_Ecuador"] = 48000,
["Country_data_Egypt"] = 66000,
["Country_data_El_Salvador"] = 23000,
["Country_data_Empire_of_Japan"] = 4400,
["Country_data_England"] = 163000,
["Country_data_Equatorial_Guinea"] = 5600,
["Country_data_Eritrea"] = 5600,
["Country_data_Estonia"] = 68000,
["Country_data_Eswatini"] = 5100,
["Country_data_Ethiopia"] = 21000,
["Country_data_Europe"] = 2800,
["Country_data_European_Union"] = 8100,
["Country_data_FIJ"] = 4500,
["Country_data_FIN"] = 41000,
["Country_data_FRA"] = 116000,
["Country_data_FRG"] = 18000,
["Country_data_FRO"] = 2200,
["Country_data_FR_Yugoslavia"] = 4400,
["Country_data_Faroe_Islands"] = 5800,
["Country_data_Federated_States_of_Micronesia"] = 2700,
["Country_data_Fiji"] = 21000,
["Country_data_Finland"] = 113000,
["Country_data_Florida"] = 5900,
["Country_data_France"] = 334000,
["Country_data_French_Polynesia"] = 3900,
["Country_data_GAB"] = 2500,
["Country_data_GAM"] = 2300,
["Country_data_GBR"] = 67000,
["Country_data_GDR"] = 11000,
["Country_data_GEO"] = 16000,
["Country_data_GER"] = 96000,
["Country_data_GHA"] = 10000,
["Country_data_GIB"] = 2200,
["Country_data_GRE"] = 30000,
["Country_data_GUA"] = 5400,
["Country_data_GUI"] = 3400,
["Country_data_GUY"] = 2600,
["Country_data_Gabon"] = 8200,
["Country_data_Gambia"] = 7700,
["Country_data_Georgia"] = 8700,
["Country_data_Georgia_(U.S._state)"] = 3200,
["Country_data_Georgia_(country)"] = 54000,
["Country_data_German_Empire"] = 5700,
["Country_data_Germany"] = 292000,
["Country_data_Ghana"] = 46000,
["Country_data_Gibraltar"] = 5200,
["Country_data_Great_Britain"] = 128000,
["Country_data_Greece"] = 106000,
["Country_data_Greenland"] = 2800,
["Country_data_Grenada"] = 5700,
["Country_data_Guadeloupe"] = 2800,
["Country_data_Guam"] = 4600,
["Country_data_Guatemala"] = 22000,
["Country_data_Guinea"] = 9500,
["Country_data_Guinea-Bissau"] = 5500,
["Country_data_Guyana"] = 7800,
["Country_data_HAI"] = 3400,
["Country_data_HKG"] = 15000,
["Country_data_HON"] = 4400,
["Country_data_HUN"] = 45000,
["Country_data_Haiti"] = 9800,
["Country_data_Hawaii"] = 2200,
["Country_data_Honduras"] = 21000,
["Country_data_Hong_Kong"] = 51000,
["Country_data_Hungary"] = 115000,
["Country_data_IDN"] = 5800,
["Country_data_INA"] = 12000,
["Country_data_IND"] = 34000,
["Country_data_IRE"] = 13000,
["Country_data_IRI"] = 6800,
["Country_data_IRL"] = 24000,
["Country_data_IRN"] = 7400,
["Country_data_IRQ"] = 4800,
["Country_data_ISL"] = 9300,
["Country_data_ISR"] = 23000,
["Country_data_ITA"] = 103000,
["Country_data_Iceland"] = 46000,
["Country_data_Idaho"] = 2200,
["Country_data_Illinois"] = 4600,
["Country_data_India"] = 258000,
["Country_data_Indiana"] = 3400,
["Country_data_Indonesia"] = 71000,
["Country_data_Iowa"] = 2400,
["Country_data_Iran"] = 160000,
["Country_data_Iraq"] = 23000,
["Country_data_Ireland"] = 67000,
["Country_data_Isle_of_Man"] = 2900,
["Country_data_Israel"] = 93000,
["Country_data_Italy"] = 287000,
["Country_data_Ivory_Coast"] = 33000,
["Country_data_JAM"] = 12000,
["Country_data_JAP"] = 2300,
["Country_data_JOR"] = 4800,
["Country_data_JP"] = 8800,
["Country_data_JPN"] = 69000,
["Country_data_Jamaica"] = 45000,
["Country_data_Japan"] = 264000,
["Country_data_Jersey"] = 2600,
["Country_data_Jordan"] = 22000,
["Country_data_KAZ"] = 24000,
["Country_data_KEN"] = 10000,
["Country_data_KGZ"] = 4600,
["Country_data_KOR"] = 36000,
["Country_data_KOS"] = 3200,
["Country_data_KSA"] = 7600,
["Country_data_KUW"] = 4700,
["Country_data_Kazakhstan"] = 68000,
["Country_data_Kentucky"] = 2100,
["Country_data_Kenya"] = 35000,
["Country_data_Kingdom_of_France"] = 2200,
["Country_data_Kingdom_of_Great_Britain"] = 4600,
["Country_data_Kingdom_of_Italy"] = 4900,
["Country_data_Kiribati"] = 2600,
["Country_data_Kosovo"] = 11000,
["Country_data_Kuwait"] = 20000,
["Country_data_Kyrgyzstan"] = 11000,
["Country_data_LAO"] = 2200,
["Country_data_LAT"] = 17000,
["Country_data_LBN"] = 3000,
["Country_data_LBR"] = 2000,
["Country_data_LIB"] = 2600,
["Country_data_LIE"] = 3800,
["Country_data_LIT"] = 3700,
["Country_data_LTU"] = 15000,
["Country_data_LUX"] = 12000,
["Country_data_LVA"] = 3100,
["Country_data_Laos"] = 8000,
["Country_data_Latvia"] = 55000,
["Country_data_Lebanon"] = 24000,
["Country_data_Lesotho"] = 5500,
["Country_data_Liberia"] = 8000,
["Country_data_Libya"] = 9200,
["Country_data_Liechtenstein"] = 8900,
["Country_data_Lithuania"] = 54000,
["Country_data_Louisiana"] = 2300,
["Country_data_Luxembourg"] = 48000,
["Country_data_MAC"] = 3000,
["Country_data_MAD"] = 2400,
["Country_data_MAR"] = 15000,
["Country_data_MAS"] = 13000,
["Country_data_MDA"] = 8900,
["Country_data_MEX"] = 35000,
["Country_data_MGL"] = 3600,
["Country_data_MKD"] = 8600,
["Country_data_MLI"] = 4700,
["Country_data_MLT"] = 6500,
["Country_data_MNE"] = 8700,
["Country_data_MON"] = 4700,
["Country_data_MOZ"] = 2700,
["Country_data_MRI"] = 2300,
["Country_data_MYA"] = 3400,
["Country_data_MYS"] = 4200,
["Country_data_Macau"] = 6900,
["Country_data_Macedonia"] = 4600,
["Country_data_Madagascar"] = 9700,
["Country_data_Malawi"] = 6200,
["Country_data_Malaysia"] = 71000,
["Country_data_Maldives"] = 6700,
["Country_data_Mali"] = 21000,
["Country_data_Malta"] = 32000,
["Country_data_Manitoba"] = 3000,
["Country_data_Marshall_Islands"] = 3400,
["Country_data_Martinique"] = 2800,
["Country_data_Maryland"] = 3300,
["Country_data_Massachusetts"] = 2600,
["Country_data_Mauritania"] = 6000,
["Country_data_Mauritius"] = 8500,
["Country_data_Mexico"] = 114000,
["Country_data_Michigan"] = 3900,
["Country_data_Minas_Gerais"] = 2100,
["Country_data_Minnesota"] = 3700,
["Country_data_Missouri"] = 2500,
["Country_data_Moldova"] = 34000,
["Country_data_Monaco"] = 12000,
["Country_data_Mongolia"] = 11000,
["Country_data_Montana"] = 2400,
["Country_data_Montenegro"] = 33000,
["Country_data_Montserrat"] = 2400,
["Country_data_Morocco"] = 51000,
["Country_data_Mozambique"] = 8000,
["Country_data_Myanmar"] = 23000,
["Country_data_NAM"] = 4000,
["Country_data_NED"] = 73000,
["Country_data_NEP"] = 3400,
["Country_data_NGA"] = 8800,
["Country_data_NGR"] = 9500,
["Country_data_NIR"] = 11000,
["Country_data_NLD"] = 7500,
["Country_data_NOR"] = 35000,
["Country_data_NZ"] = 3700,
["Country_data_NZL"] = 39000,
["Country_data_Namibia"] = 11000,
["Country_data_Nauru"] = 2600,
["Country_data_Nazi_Germany"] = 10000,
["Country_data_Nepal"] = 32000,
["Country_data_Netherlands"] = 261000,
["Country_data_Netherlands_Antilles"] = 2400,
["Country_data_Nevada"] = 2100,
["Country_data_New_Brunswick"] = 2600,
["Country_data_New_Caledonia"] = 3300,
["Country_data_New_Hampshire"] = 2100,
["Country_data_New_Jersey"] = 4300,
["Country_data_New_South_Wales"] = 6400,
["Country_data_New_York"] = 4300,
["Country_data_New_York_(state)"] = 6800,
["Country_data_New_Zealand"] = 119000,
["Country_data_Newfoundland_and_Labrador"] = 2900,
["Country_data_Nicaragua"] = 9000,
["Country_data_Niger"] = 6300,
["Country_data_Nigeria"] = 67000,
["Country_data_North_Carolina"] = 3500,
["Country_data_North_Korea"] = 23000,
["Country_data_North_Macedonia"] = 33000,
["Country_data_Northern_Ireland"] = 27000,
["Country_data_Northern_Mariana_Islands"] = 2800,
["Country_data_Norway"] = 117000,
["Country_data_Nova_Scotia"] = 2900,
["Country_data_OMA"] = 3300,
["Country_data_Ohio"] = 6000,
["Country_data_Oklahoma"] = 2500,
["Country_data_Oman"] = 10000,
["Country_data_Ontario"] = 3900,
["Country_data_Ottoman_Empire"] = 3200,
["Country_data_PAK"] = 9100,
["Country_data_PAN"] = 6000,
["Country_data_PAR"] = 11000,
["Country_data_PER"] = 14000,
["Country_data_PHI"] = 13000,
["Country_data_PLE"] = 2100,
["Country_data_PNG"] = 3200,
["Country_data_POL"] = 61000,
["Country_data_POR"] = 37000,
["Country_data_PRK"] = 5000,
["Country_data_PRT"] = 3600,
["Country_data_PUR"] = 8100,
["Country_data_Pakistan"] = 51000,
["Country_data_Palau"] = 2600,
["Country_data_Palestine"] = 7800,
["Country_data_Panama"] = 30000,
["Country_data_Papua_New_Guinea"] = 8400,
["Country_data_Paraguay"] = 45000,
["Country_data_Pennsylvania"] = 3600,
["Country_data_Peru"] = 64000,
["Country_data_Philippines"] = 68000,
["Country_data_Poland"] = 241000,
["Country_data_Portugal"] = 117000,
["Country_data_Prussia"] = 2900,
["Country_data_Puerto_Rico"] = 34000,
["Country_data_QAT"] = 9600,
["Country_data_Qatar"] = 32000,
["Country_data_Quebec"] = 4500,
["Country_data_Queensland"] = 2400,
["Country_data_ROM"] = 15000,
["Country_data_ROU"] = 32000,
["Country_data_RSA"] = 37000,
["Country_data_RUS"] = 69000,
["Country_data_RWA"] = 2500,
["Country_data_Republic_of_China"] = 4600,
["Country_data_Republic_of_Ireland"] = 55000,
["Country_data_Republic_of_the_Congo"] = 8300,
["Country_data_Romania"] = 114000,
["Country_data_Russia"] = 254000,
["Country_data_Russian_Empire"] = 5700,
["Country_data_Rwanda"] = 8500,
["Country_data_SAM"] = 3700,
["Country_data_SCG"] = 2900,
["Country_data_SCO"] = 29000,
["Country_data_SEN"] = 8600,
["Country_data_SER"] = 3700,
["Country_data_SGP"] = 4600,
["Country_data_SIN"] = 7500,
["Country_data_SLE"] = 2100,
["Country_data_SLO"] = 22000,
["Country_data_SLV"] = 3200,
["Country_data_SMR"] = 3600,
["Country_data_SPA"] = 5500,
["Country_data_SRB"] = 31000,
["Country_data_SRI"] = 5300,
["Country_data_SUI"] = 51000,
["Country_data_SUR"] = 2300,
["Country_data_SVK"] = 32000,
["Country_data_SVN"] = 7400,
["Country_data_SWE"] = 66000,
["Country_data_SWI"] = 5100,
["Country_data_SYR"] = 4000,
["Country_data_Saint_Kitts_and_Nevis"] = 4900,
["Country_data_Saint_Lucia"] = 5300,
["Country_data_Saint_Vincent_and_the_Grenadines"] = 5000,
["Country_data_Samoa"] = 8100,
["Country_data_San_Marino"] = 9700,
["Country_data_Saskatchewan"] = 4000,
["Country_data_Saudi_Arabia"] = 37000,
["Country_data_Scotland"] = 102000,
["Country_data_Senegal"] = 31000,
["Country_data_Serbia"] = 105000,
["Country_data_Serbia_and_Montenegro"] = 5400,
["Country_data_Seychelles"] = 5800,
["Country_data_Sierra_Leone"] = 7700,
["Country_data_Singapore"] = 50000,
["Country_data_Slovakia"] = 96000,
["Country_data_Slovenia"] = 91000,
["Country_data_Solomon_Islands"] = 4700,
["Country_data_Somalia"] = 6600,
["Country_data_South_Africa"] = 121000,
["Country_data_South_Australia"] = 2300,
["Country_data_South_Carolina"] = 3100,
["Country_data_South_Korea"] = 116000,
["Country_data_South_Sudan"] = 4800,
["Country_data_Soviet_Union"] = 77000,
["Country_data_Spain"] = 277000,
["Country_data_Sri_Lanka"] = 36000,
["Country_data_Sudan"] = 8700,
["Country_data_Suriname"] = 6900,
["Country_data_Sweden"] = 166000,
["Country_data_Switzerland"] = 150000,
["Country_data_Syria"] = 21000,
["Country_data_São_Tomé_and_Príncipe"] = 3400,
["Country_data_TAN"] = 3500,
["Country_data_TCH"] = 12000,
["Country_data_THA"] = 25000,
["Country_data_TJK"] = 2900,
["Country_data_TKM"] = 3100,
["Country_data_TOG"] = 2100,
["Country_data_TON"] = 2000,
["Country_data_TPE"] = 19000,
["Country_data_TRI"] = 5100,
["Country_data_TTO"] = 2200,
["Country_data_TUN"] = 12000,
["Country_data_TUR"] = 34000,
["Country_data_TWN"] = 2200,
["Country_data_Taiwan"] = 27000,
["Country_data_Tajikistan"] = 9700,
["Country_data_Tanzania"] = 22000,
["Country_data_Tennessee"] = 2300,
["Country_data_Texas"] = 5800,
["Country_data_Thailand"] = 96000,
["Country_data_Timor-Leste"] = 5100,
["Country_data_Togo"] = 7600,
["Country_data_Tonga"] = 6700,
["Country_data_Trinidad_and_Tobago"] = 24000,
["Country_data_Tunisia"] = 46000,
["Country_data_Turkey"] = 140000,
["Country_data_Turkmenistan"] = 8400,
["Country_data_Turks_and_Caicos_Islands"] = 2800,
["Country_data_Tuvalu"] = 2600,
["Country_data_U.S."] = 2000,
["Country_data_U.S._Virgin_Islands"] = 4900,
["Country_data_UAE"] = 11000,
["Country_data_UGA"] = 5300,
["Country_data_UK"] = 19000,
["Country_data_UKGBI"] = 3500,
["Country_data_UKR"] = 45000,
["Country_data_URS"] = 19000,
["Country_data_URU"] = 16000,
["Country_data_US"] = 5300,
["Country_data_USA"] = 151000,
["Country_data_USSR"] = 5300,
["Country_data_UZB"] = 14000,
["Country_data_Uganda"] = 22000,
["Country_data_Ukraine"] = 118000,
["Country_data_United_Arab_Emirates"] = 38000,
["Country_data_United_Kingdom"] = 158000,
["Country_data_United_Kingdom_of_Great_Britain_and_Ireland"] = 4900,
["Country_data_United_Nations"] = 4400,
["Country_data_United_States"] = 439000,
["Country_data_United_States_of_America"] = 4500,
["Country_data_Uruguay"] = 52000,
["Country_data_Uzbekistan"] = 36000,
["Country_data_VEN"] = 18000,
["Country_data_VIE"] = 7400,
["Country_data_Vanuatu"] = 5100,
["Country_data_Vatican_City"] = 3000,
["Country_data_Venezuela"] = 66000,
["Country_data_Victoria"] = 2400,
["Country_data_Vietnam"] = 46000,
["Country_data_Virginia"] = 3100,
["Country_data_WAL"] = 19000,
["Country_data_Wales"] = 68000,
["Country_data_Washington"] = 2700,
["Country_data_Washington,_D.C."] = 2300,
["Country_data_Washington_(state)"] = 3400,
["Country_data_West_Germany"] = 52000,
["Country_data_West_Indies"] = 2900,
["Country_data_Wisconsin"] = 5600,
["Country_data_Wyoming"] = 2100,
["Country_data_YUG"] = 11000,
["Country_data_Yemen"] = 8100,
["Country_data_Yugoslavia"] = 34000,
["Country_data_ZAF"] = 5400,
["Country_data_ZAM"] = 3800,
["Country_data_ZIM"] = 9200,
["Country_data_Zambia"] = 11000,
["Country_data_Zimbabwe"] = 32000,
["Country_data_none"] = 2100,
["Country_flagbio"] = 40000,
["Country_in_the_Eurovision_Song_Contest"] = 2900,
["Country_name"] = 59000,
["Country_prefix_the"] = 176000,
["Country_showdata"] = 7000,
["Country_topics"] = 25000,
["County"] = 7000,
["County_(judet)_of_Romania"] = 3300,
["Course_assignment"] = 4200,
["Course_details"] = 8600,
["Course_instructor"] = 3200,
["Cquote"] = 35000,
["Cr"] = 5100,
["Cr-rt"] = 2500,
["Create_taxonomy/link"] = 151000,
["Creative_Commons_text_attribution_notice"] = 7100,
["Cref2"] = 2900,
["Cricinfo"] = 24000,
["Cricket_squad2_player"] = 2800,
["Cricketarchive"] = 3000,
["Croatian_Census_2021"] = 4200,
["Cross"] = 4200,
["Crossreference"] = 2600,
["Crossreference/styles.css"] = 2600,
["Cs1_config"] = 14000,
["Cslist"] = 3700,
["Csv"] = 76000,
["Currency"] = 5500,
["Current_events"] = 9500,
["Current_events/styles.css"] = 9500,
["Current_leader"] = 5300,
["Currentdate"] = 24000,
["Cvt"] = 174000,
["Cycling_Archives"] = 4300,
["Cycling_data_DAT"] = 2100,
["Cycling_data_LTD"] = 2400,
["Cycling_data_MOV_men"] = 2300,
["Cycling_data_SOQ"] = 2200,
["Cycling_data_TVL"] = 2400,
["Cycling_data_UEX"] = 2300,
["Cycling_team_link"] = 14000,
["Module:CFB_schedule"] = 29000,
["Module:CS1_identifiers"] = 507000,
["Module:Calendar"] = 2000,
["Module:Calendrical_Calculations"] = 2600,
["Module:CallAssert"] = 123000,
["Module:Canada_NTS"] = 2200,
["Module:Canada_NTS/data"] = 2200,
["Module:Canada_by_province_category_navigation"] = 9900,
["Module:Catalog_lookup_link"] = 63000,
["Module:Category_described_in_year"] = 6400,
["Module:Category_described_in_year/config"] = 6400,
["Module:Category_disambiguation"] = 2700,
["Module:Category_handler"] = 5000000,
["Module:Category_handler/blacklist"] = 5000000,
["Module:Category_handler/config"] = 5000000,
["Module:Category_handler/data"] = 5000000,
["Module:Category_handler/shared"] = 5000000,
["Module:Category_main_article"] = 221000,
["Module:Category_more_if_exists"] = 49000,
["Module:Category_pair"] = 7100,
["Module:Category_see_also"] = 55000,
["Module:Category_series_navigation"] = 600000,
["Module:Category_series_navigation/styles.css"] = 600000,
["Module:Celestial_object_quadrangle"] = 2100,
["Module:Chart"] = 2900,
["Module:Chart/Default_colors"] = 2900,
["Module:Check_DYK_hook"] = 127000,
["Module:Check_blp_parameter"] = 2950000,
["Module:Check_for_conflicting_parameters"] = 4630000,
["Module:Check_for_deprecated_parameters"] = 808000,
["Module:Check_for_unknown_parameters"] = 23500000,
["Module:Check_height"] = 153000,
["Module:Check_isxn"] = 16000,
["Module:Check_winner_by_scores"] = 16000,
["Module:Checkuser"] = 91000,
["Module:Chem2"] = 11000,
["Module:Chem2/styles.css"] = 11000,
["Module:Citation/CS1"] = 6580000,
["Module:Citation/CS1/COinS"] = 6580000,
["Module:Citation/CS1/Configuration"] = 6700000,
["Module:Citation/CS1/Date_validation"] = 6580000,
["Module:Citation/CS1/Identifiers"] = 6700000,
["Module:Citation/CS1/Suggestions"] = 26000,
["Module:Citation/CS1/Utilities"] = 6700000,
["Module:Citation/CS1/Whitelist"] = 6580000,
["Module:Citation/CS1/styles.css"] = 6700000,
["Module:Citation_mode"] = 49000,
["Module:Cite"] = 53000,
["Module:Cite/config"] = 70000,
["Module:Cite_IUCN"] = 72000,
["Module:Cite_Q"] = 18000,
["Module:Cite_Q/config"] = 18000,
["Module:Cite_taxon"] = 56000,
["Module:Cite_tweet"] = 49000,
["Module:Clade"] = 10000,
["Module:Class"] = 61000,
["Module:Class/definition.json"] = 61000,
["Module:Class/styles.css"] = 39000,
["Module:Class_mask"] = 465000,
["Module:Clickable_button"] = 1860000,
["Module:Collapsible_list"] = 71000,
["Module:College_color"] = 138000,
["Module:College_color/data"] = 138000,
["Module:Color_contrast"] = 578000,
["Module:Color_contrast/colors"] = 581000,
["Module:Comma-separated_list"] = 3800,
["Module:Commons_link"] = 1130000,
["Module:Compact_list"] = 2000,
["Module:Complex_date"] = 48000,
["Module:Conservation_status"] = 90000,
["Module:Contentious_topics/talk_notice"] = 21000,
["Module:Convert"] = 1520000,
["Module:Convert/data"] = 1520000,
["Module:Convert/helper"] = 13000,
["Module:Convert/text"] = 1520000,
["Module:Convert/wikidata"] = 2700,
["Module:Convert/wikidata/data"] = 2700,
["Module:ConvertIB"] = 801000,
["Module:ConvertIB/data"] = 274000,
["Module:ConvertNumeric"] = 21000,
["Module:Convert_character_width"] = 3100,
["Module:Convert_character_width/data"] = 3100,
["Module:Coordinates"] = 1410000,
["Module:Coordinates/styles.css"] = 1410000,
["Module:Copied"] = 43000,
["Module:Country2nationality"] = 97000,
["Module:CountryAdjectiveDemonym"] = 117000,
["Module:CountryAdjectiveDemonym/Adjectives"] = 117000,
["Module:CountryAdjectiveDemonym/Demonyms"] = 117000,
["Module:CountryAdjectiveDemonym/The"] = 117000,
["Module:CountryData"] = 477000,
["Module:CountryData/cacheA"] = 166000,
["Module:CountryData/cacheB"] = 82000,
["Module:CountryData/cacheC"] = 59000,
["Module:CountryData/cacheD"] = 57000,
["Module:CountryData/cacheE"] = 38000,
["Module:CountryData/cacheF"] = 27000,
["Module:CountryData/cacheG"] = 27000,
["Module:CountryData/cacheH"] = 18000,
["Module:CountryData/cacheI"] = 17000,
["Module:CountryData/cacheJ"] = 11000,
["Module:CountryData/cacheK"] = 11000,
["Module:CountryData/summary"] = 477000,
["Module:Country_adjective"] = 4700,
["Module:Country_alias"] = 63000,
["Module:Country_alias/data"] = 63000,
["Module:Cslist"] = 3800,
["Module:Currency"] = 5600,
["Module:Currency/Presentation"] = 5600,
["Module:Current_leader"] = 5500,
["Module:Current_leader/data"] = 5500,
}
ayc5z4vo81baefq3a4qd7yzu9axqzm9
ಮೋಡ್ಯೂಲ್:Transclusion count/data/N
828
11315
370468
369786
2026-09-27T05:10:12Z
en>Ahechtbot
0
[[Wikipedia:BOT|Bot]]: Updated page.
370468
Scribunto
text/plain
return {
["N"] = 3100,
["N.b."] = 3000,
["N/A"] = 23000,
["N/a"] = 67000,
["NA"] = 2400,
["NA-Class"] = 15000,
["NASCAR_next_race"] = 2400,
["NASTRO_comment"] = 33000,
["NBA_Draft_template_list"] = 3600,
["NBA_Year"] = 6100,
["NBA_color"] = 3800,
["NBA_color_cell"] = 4600,
["NBA_color_cell2"] = 3600,
["NBA_player_statistics_legend"] = 6000,
["NBA_player_statistics_start"] = 5100,
["NBA_roster_footer"] = 2400,
["NBA_roster_header"] = 2200,
["NCAA_color_cell"] = 13000,
["NCAA_secondary_color_cell"] = 5100,
["NCES_District_ID"] = 3600,
["NED"] = 11000,
["NEXTYEAR"] = 10000,
["NFLAltPrimaryStyle"] = 2600,
["NFLPrimaryStyle"] = 28000,
["NFLSecondaryColor"] = 17000,
["NFL_Year"] = 30000,
["NFL_predraft"] = 10000,
["NFL_predraft/check"] = 10000,
["NFL_predraft/ftin"] = 10000,
["NFL_roster_navbox"] = 2500,
["NFLplayer"] = 2300,
["NFPA_704_diamond"] = 2000,
["NFPA_704_diamond/styles.css"] = 2000,
["NFPA_704_diamond/text"] = 2000,
["NFT"] = 7900,
["NFT_player"] = 33000,
["NGA"] = 3600,
["NGR"] = 2700,
["NHLE"] = 24000,
["NHLS_url"] = 2100,
["NLD"] = 13000,
["NLM_content"] = 2800,
["NOINDEX"] = 506000,
["NOMIS2011"] = 2200,
["NOR"] = 10000,
["NPG_name"] = 2300,
["NRDB_species"] = 7200,
["NRHPGoogleMapFootnote"] = 2500,
["NRHP_Focus"] = 74000,
["NRHP_color"] = 3700,
["NRHP_date_for_lists"] = 3100,
["NRHP_date_for_lists/dates"] = 3100,
["NRHP_header"] = 3400,
["NRHP_navigation_box"] = 18000,
["NRHP_row"] = 3400,
["NRHP_style"] = 72000,
["NRHP_url"] = 30000,
["NRHP_url/core"] = 32000,
["NRISref"] = 74000,
["NRT"] = 2300,
["NSWcity"] = 2000,
["NSWcity/core"] = 2000,
["NUMBEROFSECTIONS"] = 2200,
["NYCS_br"] = 2800,
["NYCS_time_2"] = 3200,
["NZL"] = 7500,
["NZ_census_2018"] = 2000,
["NZ_electorate_link"] = 2500,
["Na"] = 4600,
["Nac"] = 4000,
["Namespace_detect"] = 477000,
["Namespace_detect_showall"] = 13000,
["Nastaliq"] = 11000,
["Nat_fs_end"] = 2900,
["NationalArchivesNote"] = 8100,
["National_Film_Awards/style"] = 2100,
["National_Heritage_List_for_England"] = 28000,
["National_Register_of_Historic_Places"] = 22000,
["National_Register_of_Historic_Places_in_New_York"] = 4800,
["National_Register_of_Historic_Places_in_Pennsylvania"] = 3100,
["National_Register_of_Historic_Places_in_Virginia"] = 3000,
["National_basketball_squad"] = 3200,
["National_field_hockey_squad"] = 4100,
["National_football_squad_start/styles.css"] = 2600,
["National_men's_basketball_team"] = 4200,
["National_men's_cricket_team"] = 5100,
["National_men's_cricket_team_right"] = 2500,
["National_men's_ice_hockey_team"] = 8100,
["National_men's_volleyball_team"] = 2500,
["National_rugby_union_team"] = 6600,
["National_squad"] = 45000,
["National_squad_no_numbers"] = 17000,
["National_women's_volleyball_team"] = 2100,
["Native_name"] = 38000,
["Native_name_checker"] = 87000,
["Native_name_list"] = 5600,
["Nav_year_links"] = 2500,
["Naval"] = 5500,
["Naval/core"] = 5500,
["Navbar"] = 42000,
["Navbar-collapsible"] = 3700,
["Navbar-header"] = 17000,
["Navbar-header/styles.css"] = 17000,
["Navbox"] = 3080000,
["Navbox_GR_munic"] = 3700,
["Navbox_Musical_artist"] = 9700,
["Navbox_Ukraine_district"] = 2500,
["Navbox_bottom"] = 17000,
["Navbox_decade_list"] = 12000,
["Navbox_documentation"] = 57000,
["Navbox_ice_hockey"] = 3400,
["Navbox_musical_artist"] = 247000,
["Navbox_musical_artist/styles.css"] = 247000,
["Navbox_rugby_league_squad"] = 5100,
["Navbox_season_by_team"] = 3200,
["Navbox_top"] = 17000,
["Navbox_visibility"] = 57000,
["Navbox_with_collapsible_groups"] = 152000,
["Navbox_with_collapsible_sections"] = 3000,
["Navbox_with_columns"] = 26000,
["Navboxes"] = 69000,
["Navseasoncats"] = 125000,
["Navseasoncats_with_centuries_below_decade"] = 6600,
["Navseasoncats_with_decades_below_year"] = 16000,
["Navsource"] = 5400,
["Navy"] = 20000,
["Navy/core"] = 20000,
["Nay"] = 7000,
["Nbay"] = 6100,
["Nbh"] = 2100,
["Nbnd"] = 2800,
["Nbs"] = 19000,
["Nbsp"] = 549000,
["Nbsp_to_space"] = 25000,
["Ndash"] = 31000,
["Nee"] = 18000,
["NeilBrownPlayers"] = 3100,
["Net_register_tonnage"] = 2300,
["Netflix_title"] = 2400,
["New_user_bar"] = 57000,
["Newbot"] = 4500,
["Next_period"] = 26000,
["Nfly"] = 2600,
["Nigerian_English"] = 2400,
["Nihongo"] = 109000,
["Nihongo2"] = 13000,
["Nihongo_foot"] = 4200,
["No"] = 12000,
["No."] = 15000,
["No2"] = 13000,
["NoSpam"] = 4000,
["NoSpamEmail"] = 17000,
["No_bold"] = 3100,
["No_col_break"] = 2700,
["No_col_break/styles.css"] = 2700,
["No_documentation"] = 3800,
["No_footnotes"] = 55000,
["No_ping"] = 422000,
["No_ping2"] = 2300,
["No_plot"] = 12000,
["No_redirect"] = 736000,
["No_significant_coverage_(sports)"] = 5200,
["No_spam"] = 333000,
["No_wrap"] = 3400,
["Nobold"] = 483000,
["Nobold/styles.css"] = 483000,
["Nobr"] = 7700,
["Nobreak"] = 1040000,
["Nochange"] = 3000,
["Noindex"] = 4900,
["Noitalic"] = 5700,
["Noitalic/styles.css"] = 5700,
["Nom"] = 48000,
["Nominated"] = 55000,
["Non-English-language_text_category"] = 3800,
["Non-admin_closure"] = 4300,
["Non-admin_closure_(requested_moves)"] = 4600,
["Non-admin_comment"] = 3700,
["Non-album_single"] = 4300,
["Non-album_singles"] = 3200,
["Non-diffusing"] = 4800,
["Non-diffusing_parent_category"] = 4600,
["Non-diffusing_subcategory"] = 37000,
["Non-free_2D_art"] = 7900,
["Non-free_3D_art"] = 2800,
["Non-free_album_cover"] = 223000,
["Non-free_audio_sample"] = 9000,
["Non-free_biog-pic"] = 38000,
["Non-free_book_cover"] = 64000,
["Non-free_character"] = 3300,
["Non-free_comic"] = 11000,
["Non-free_fair_use"] = 15000,
["Non-free_fair_use_in"] = 12000,
["Non-free_file_with_no_commercial_use_license"] = 2500,
["Non-free_film_poster"] = 105000,
["Non-free_film_screenshot"] = 4800,
["Non-free_game_cover"] = 8600,
["Non-free_game_screenshot"] = 5500,
["Non-free_historic_image"] = 18000,
["Non-free_image_data"] = 8100,
["Non-free_image_rationale"] = 9000,
["Non-free_logo"] = 157000,
["Non-free_magazine_cover"] = 9900,
["Non-free_media"] = 824000,
["Non-free_media_data"] = 9400,
["Non-free_media_rationale"] = 11000,
["Non-free_music_video_screenshot"] = 2100,
["Non-free_newspaper_image"] = 2100,
["Non-free_poster"] = 23000,
["Non-free_promotional"] = 6100,
["Non-free_school_logo"] = 15000,
["Non-free_seal"] = 9600,
["Non-free_symbol"] = 5600,
["Non-free_television_screenshot"] = 12000,
["Non-free_title-card"] = 13000,
["Non-free_use_rationale"] = 771000,
["Non-free_use_rationale/styles.css"] = 780000,
["Non-free_use_rationale_2"] = 247000,
["Non-free_use_rationale_album_cover"] = 152000,
["Non-free_use_rationale_biog"] = 2700,
["Non-free_use_rationale_book_cover"] = 20000,
["Non-free_use_rationale_logo"] = 126000,
["Non-free_use_rationale_poster"] = 63000,
["Non-free_use_rationale_title-card"] = 4500,
["Non-free_use_rationale_video_cover"] = 6500,
["Non-free_use_rationale_video_game_cover"] = 11000,
["Non-free_video_cover"] = 17000,
["Non-free_video_game_cover"] = 24000,
["Non-free_video_game_cover/platform"] = 24000,
["Non-free_video_game_screenshot"] = 12000,
["Non-free_video_game_screenshot/platform"] = 11000,
["Non-free_with_NC"] = 2300,
["Non_breaking_en_dash"] = 2800,
["Non_breaking_hyphen"] = 3200,
["Nonumtoc"] = 3300,
["Nonumtoc/styles.css"] = 3300,
["Noping"] = 392000,
["Noprint"] = 2400,
["Noredirect"] = 8900,
["Normal"] = 9700,
["Normalwraplink"] = 7400,
["North_America_topic"] = 3800,
["Nospam"] = 5500,
["Not-PD-US-expired-min-year"] = 65000,
["Not_a_ballot"] = 8600,
["Not_a_typo"] = 14000,
["Not_around"] = 12000,
["Not_done"] = 30000,
["Notability"] = 58000,
["Notavote"] = 2400,
["Notdone"] = 6200,
["Note"] = 27000,
["NoteFoot"] = 5600,
["NoteTag"] = 6100,
["Note_label"] = 9500,
["Notelist"] = 340000,
["Notelist-lr"] = 5100,
["Notelist-talk"] = 2100,
["Notelist-ua"] = 9500,
["Notes"] = 4200,
["Noteslist"] = 4800,
["Notice"] = 121000,
["Nowiki_="] = 2300,
["Nowrap"] = 1990000,
["Np"] = 5900,
["Npby"] = 2900,
["Nq"] = 4700,
["Nrut"] = 6600,
["Ns"] = 3200,
["Ns0"] = 87000,
["Ns_has_subpages"] = 3880000,
["Nts"] = 22000,
["Ntsh"] = 3700,
["Number_table_sorting"] = 41000,
["Number_table_sorting_hidden"] = 3700,
["Numero"] = 4600,
["Nutshell"] = 5000,
["Nw="] = 2300,
["Née"] = 4200,
["Module:NUMBEROFSECTIONS"] = 2200,
["Module:Namespace_detect"] = 542000,
["Module:Namespace_detect/config"] = 5220000,
["Module:Namespace_detect/data"] = 5220000,
["Module:National_squad"] = 60000,
["Module:Native_name"] = 122000,
["Module:Navbar"] = 5200000,
["Module:Navbar/configuration"] = 5200000,
["Module:Navbar/styles.css"] = 5200000,
["Module:Navbox"] = 4880000,
["Module:Navbox/configuration"] = 4880000,
["Module:Navbox/styles.css"] = 4880000,
["Module:Navbox_ice_hockey"] = 3400,
["Module:Navbox_or_wikitable"] = 2000,
["Module:Navbox_top_and_bottom"] = 17000,
["Module:Navbox_with_collapsible_groups"] = 15000,
["Module:Navboxes"] = 71000,
["Module:Nihongo"] = 113000,
["Module:No_ping"] = 507000,
["Module:Noinclude"] = 289000,
["Module:Normalize_volume_and_edition"] = 3600,
["Module:Ns_has_subpages"] = 3880000,
["Module:Number_table_sorting"] = 44000,
}
odqev9arc0rbjzkhotjyndgl3rw5167
370469
370468
2026-09-28T09:26:47Z
ChiK
1136
1 revision imported from [[:en:Module:Transclusion_count/data/N]]
370468
Scribunto
text/plain
return {
["N"] = 3100,
["N.b."] = 3000,
["N/A"] = 23000,
["N/a"] = 67000,
["NA"] = 2400,
["NA-Class"] = 15000,
["NASCAR_next_race"] = 2400,
["NASTRO_comment"] = 33000,
["NBA_Draft_template_list"] = 3600,
["NBA_Year"] = 6100,
["NBA_color"] = 3800,
["NBA_color_cell"] = 4600,
["NBA_color_cell2"] = 3600,
["NBA_player_statistics_legend"] = 6000,
["NBA_player_statistics_start"] = 5100,
["NBA_roster_footer"] = 2400,
["NBA_roster_header"] = 2200,
["NCAA_color_cell"] = 13000,
["NCAA_secondary_color_cell"] = 5100,
["NCES_District_ID"] = 3600,
["NED"] = 11000,
["NEXTYEAR"] = 10000,
["NFLAltPrimaryStyle"] = 2600,
["NFLPrimaryStyle"] = 28000,
["NFLSecondaryColor"] = 17000,
["NFL_Year"] = 30000,
["NFL_predraft"] = 10000,
["NFL_predraft/check"] = 10000,
["NFL_predraft/ftin"] = 10000,
["NFL_roster_navbox"] = 2500,
["NFLplayer"] = 2300,
["NFPA_704_diamond"] = 2000,
["NFPA_704_diamond/styles.css"] = 2000,
["NFPA_704_diamond/text"] = 2000,
["NFT"] = 7900,
["NFT_player"] = 33000,
["NGA"] = 3600,
["NGR"] = 2700,
["NHLE"] = 24000,
["NHLS_url"] = 2100,
["NLD"] = 13000,
["NLM_content"] = 2800,
["NOINDEX"] = 506000,
["NOMIS2011"] = 2200,
["NOR"] = 10000,
["NPG_name"] = 2300,
["NRDB_species"] = 7200,
["NRHPGoogleMapFootnote"] = 2500,
["NRHP_Focus"] = 74000,
["NRHP_color"] = 3700,
["NRHP_date_for_lists"] = 3100,
["NRHP_date_for_lists/dates"] = 3100,
["NRHP_header"] = 3400,
["NRHP_navigation_box"] = 18000,
["NRHP_row"] = 3400,
["NRHP_style"] = 72000,
["NRHP_url"] = 30000,
["NRHP_url/core"] = 32000,
["NRISref"] = 74000,
["NRT"] = 2300,
["NSWcity"] = 2000,
["NSWcity/core"] = 2000,
["NUMBEROFSECTIONS"] = 2200,
["NYCS_br"] = 2800,
["NYCS_time_2"] = 3200,
["NZL"] = 7500,
["NZ_census_2018"] = 2000,
["NZ_electorate_link"] = 2500,
["Na"] = 4600,
["Nac"] = 4000,
["Namespace_detect"] = 477000,
["Namespace_detect_showall"] = 13000,
["Nastaliq"] = 11000,
["Nat_fs_end"] = 2900,
["NationalArchivesNote"] = 8100,
["National_Film_Awards/style"] = 2100,
["National_Heritage_List_for_England"] = 28000,
["National_Register_of_Historic_Places"] = 22000,
["National_Register_of_Historic_Places_in_New_York"] = 4800,
["National_Register_of_Historic_Places_in_Pennsylvania"] = 3100,
["National_Register_of_Historic_Places_in_Virginia"] = 3000,
["National_basketball_squad"] = 3200,
["National_field_hockey_squad"] = 4100,
["National_football_squad_start/styles.css"] = 2600,
["National_men's_basketball_team"] = 4200,
["National_men's_cricket_team"] = 5100,
["National_men's_cricket_team_right"] = 2500,
["National_men's_ice_hockey_team"] = 8100,
["National_men's_volleyball_team"] = 2500,
["National_rugby_union_team"] = 6600,
["National_squad"] = 45000,
["National_squad_no_numbers"] = 17000,
["National_women's_volleyball_team"] = 2100,
["Native_name"] = 38000,
["Native_name_checker"] = 87000,
["Native_name_list"] = 5600,
["Nav_year_links"] = 2500,
["Naval"] = 5500,
["Naval/core"] = 5500,
["Navbar"] = 42000,
["Navbar-collapsible"] = 3700,
["Navbar-header"] = 17000,
["Navbar-header/styles.css"] = 17000,
["Navbox"] = 3080000,
["Navbox_GR_munic"] = 3700,
["Navbox_Musical_artist"] = 9700,
["Navbox_Ukraine_district"] = 2500,
["Navbox_bottom"] = 17000,
["Navbox_decade_list"] = 12000,
["Navbox_documentation"] = 57000,
["Navbox_ice_hockey"] = 3400,
["Navbox_musical_artist"] = 247000,
["Navbox_musical_artist/styles.css"] = 247000,
["Navbox_rugby_league_squad"] = 5100,
["Navbox_season_by_team"] = 3200,
["Navbox_top"] = 17000,
["Navbox_visibility"] = 57000,
["Navbox_with_collapsible_groups"] = 152000,
["Navbox_with_collapsible_sections"] = 3000,
["Navbox_with_columns"] = 26000,
["Navboxes"] = 69000,
["Navseasoncats"] = 125000,
["Navseasoncats_with_centuries_below_decade"] = 6600,
["Navseasoncats_with_decades_below_year"] = 16000,
["Navsource"] = 5400,
["Navy"] = 20000,
["Navy/core"] = 20000,
["Nay"] = 7000,
["Nbay"] = 6100,
["Nbh"] = 2100,
["Nbnd"] = 2800,
["Nbs"] = 19000,
["Nbsp"] = 549000,
["Nbsp_to_space"] = 25000,
["Ndash"] = 31000,
["Nee"] = 18000,
["NeilBrownPlayers"] = 3100,
["Net_register_tonnage"] = 2300,
["Netflix_title"] = 2400,
["New_user_bar"] = 57000,
["Newbot"] = 4500,
["Next_period"] = 26000,
["Nfly"] = 2600,
["Nigerian_English"] = 2400,
["Nihongo"] = 109000,
["Nihongo2"] = 13000,
["Nihongo_foot"] = 4200,
["No"] = 12000,
["No."] = 15000,
["No2"] = 13000,
["NoSpam"] = 4000,
["NoSpamEmail"] = 17000,
["No_bold"] = 3100,
["No_col_break"] = 2700,
["No_col_break/styles.css"] = 2700,
["No_documentation"] = 3800,
["No_footnotes"] = 55000,
["No_ping"] = 422000,
["No_ping2"] = 2300,
["No_plot"] = 12000,
["No_redirect"] = 736000,
["No_significant_coverage_(sports)"] = 5200,
["No_spam"] = 333000,
["No_wrap"] = 3400,
["Nobold"] = 483000,
["Nobold/styles.css"] = 483000,
["Nobr"] = 7700,
["Nobreak"] = 1040000,
["Nochange"] = 3000,
["Noindex"] = 4900,
["Noitalic"] = 5700,
["Noitalic/styles.css"] = 5700,
["Nom"] = 48000,
["Nominated"] = 55000,
["Non-English-language_text_category"] = 3800,
["Non-admin_closure"] = 4300,
["Non-admin_closure_(requested_moves)"] = 4600,
["Non-admin_comment"] = 3700,
["Non-album_single"] = 4300,
["Non-album_singles"] = 3200,
["Non-diffusing"] = 4800,
["Non-diffusing_parent_category"] = 4600,
["Non-diffusing_subcategory"] = 37000,
["Non-free_2D_art"] = 7900,
["Non-free_3D_art"] = 2800,
["Non-free_album_cover"] = 223000,
["Non-free_audio_sample"] = 9000,
["Non-free_biog-pic"] = 38000,
["Non-free_book_cover"] = 64000,
["Non-free_character"] = 3300,
["Non-free_comic"] = 11000,
["Non-free_fair_use"] = 15000,
["Non-free_fair_use_in"] = 12000,
["Non-free_file_with_no_commercial_use_license"] = 2500,
["Non-free_film_poster"] = 105000,
["Non-free_film_screenshot"] = 4800,
["Non-free_game_cover"] = 8600,
["Non-free_game_screenshot"] = 5500,
["Non-free_historic_image"] = 18000,
["Non-free_image_data"] = 8100,
["Non-free_image_rationale"] = 9000,
["Non-free_logo"] = 157000,
["Non-free_magazine_cover"] = 9900,
["Non-free_media"] = 824000,
["Non-free_media_data"] = 9400,
["Non-free_media_rationale"] = 11000,
["Non-free_music_video_screenshot"] = 2100,
["Non-free_newspaper_image"] = 2100,
["Non-free_poster"] = 23000,
["Non-free_promotional"] = 6100,
["Non-free_school_logo"] = 15000,
["Non-free_seal"] = 9600,
["Non-free_symbol"] = 5600,
["Non-free_television_screenshot"] = 12000,
["Non-free_title-card"] = 13000,
["Non-free_use_rationale"] = 771000,
["Non-free_use_rationale/styles.css"] = 780000,
["Non-free_use_rationale_2"] = 247000,
["Non-free_use_rationale_album_cover"] = 152000,
["Non-free_use_rationale_biog"] = 2700,
["Non-free_use_rationale_book_cover"] = 20000,
["Non-free_use_rationale_logo"] = 126000,
["Non-free_use_rationale_poster"] = 63000,
["Non-free_use_rationale_title-card"] = 4500,
["Non-free_use_rationale_video_cover"] = 6500,
["Non-free_use_rationale_video_game_cover"] = 11000,
["Non-free_video_cover"] = 17000,
["Non-free_video_game_cover"] = 24000,
["Non-free_video_game_cover/platform"] = 24000,
["Non-free_video_game_screenshot"] = 12000,
["Non-free_video_game_screenshot/platform"] = 11000,
["Non-free_with_NC"] = 2300,
["Non_breaking_en_dash"] = 2800,
["Non_breaking_hyphen"] = 3200,
["Nonumtoc"] = 3300,
["Nonumtoc/styles.css"] = 3300,
["Noping"] = 392000,
["Noprint"] = 2400,
["Noredirect"] = 8900,
["Normal"] = 9700,
["Normalwraplink"] = 7400,
["North_America_topic"] = 3800,
["Nospam"] = 5500,
["Not-PD-US-expired-min-year"] = 65000,
["Not_a_ballot"] = 8600,
["Not_a_typo"] = 14000,
["Not_around"] = 12000,
["Not_done"] = 30000,
["Notability"] = 58000,
["Notavote"] = 2400,
["Notdone"] = 6200,
["Note"] = 27000,
["NoteFoot"] = 5600,
["NoteTag"] = 6100,
["Note_label"] = 9500,
["Notelist"] = 340000,
["Notelist-lr"] = 5100,
["Notelist-talk"] = 2100,
["Notelist-ua"] = 9500,
["Notes"] = 4200,
["Noteslist"] = 4800,
["Notice"] = 121000,
["Nowiki_="] = 2300,
["Nowrap"] = 1990000,
["Np"] = 5900,
["Npby"] = 2900,
["Nq"] = 4700,
["Nrut"] = 6600,
["Ns"] = 3200,
["Ns0"] = 87000,
["Ns_has_subpages"] = 3880000,
["Nts"] = 22000,
["Ntsh"] = 3700,
["Number_table_sorting"] = 41000,
["Number_table_sorting_hidden"] = 3700,
["Numero"] = 4600,
["Nutshell"] = 5000,
["Nw="] = 2300,
["Née"] = 4200,
["Module:NUMBEROFSECTIONS"] = 2200,
["Module:Namespace_detect"] = 542000,
["Module:Namespace_detect/config"] = 5220000,
["Module:Namespace_detect/data"] = 5220000,
["Module:National_squad"] = 60000,
["Module:Native_name"] = 122000,
["Module:Navbar"] = 5200000,
["Module:Navbar/configuration"] = 5200000,
["Module:Navbar/styles.css"] = 5200000,
["Module:Navbox"] = 4880000,
["Module:Navbox/configuration"] = 4880000,
["Module:Navbox/styles.css"] = 4880000,
["Module:Navbox_ice_hockey"] = 3400,
["Module:Navbox_or_wikitable"] = 2000,
["Module:Navbox_top_and_bottom"] = 17000,
["Module:Navbox_with_collapsible_groups"] = 15000,
["Module:Navboxes"] = 71000,
["Module:Nihongo"] = 113000,
["Module:No_ping"] = 507000,
["Module:Noinclude"] = 289000,
["Module:Normalize_volume_and_edition"] = 3600,
["Module:Ns_has_subpages"] = 3880000,
["Module:Number_table_sorting"] = 44000,
}
odqev9arc0rbjzkhotjyndgl3rw5167
ಮೋಡ್ಯೂಲ್:Documentation/styles.css
828
11577
370394
361824
2026-09-21T10:01:57Z
meta>NguoiDungKhongDinhDanh
0
Per [[Special:Permalink/31065785#Dark theme fix|request]]
370394
sanitized-css
text/css
/* {{PP-template}} */
.ts-doc-sandbox .mbox-image {
padding:.75em 0 .75em .75em;
}
.ts-doc-doc {
clear: both;
background-color: #ecfcf4;
border: 1px solid #a2a9b1;
margin-top: 1em;
padding: 5px;
}
.ts-doc-header {
padding-bottom: 3px;
border-bottom: 1px solid #a2a9b1;
margin-bottom: 1ex;
}
.ts-doc-header .ts-tlinks-tlinks {
display: inline-block;
line-height: 24px;
margin-left: 1em;
}
/* add padding for themes that don't add brackets (see
[[en:Special:Diff/1360085358]]) */
body.skin-minerva .ts-doc-header .ts-tlinks-tlinks a,
body.skin-timeless .ts-doc-header .ts-tlinks-tlinks a {
display: inline-block;
margin-left: 0.3em;
margin-right: 0.3em;
}
body:not(.skin-vector-2022):not(.skin-minerva) .ts-doc-header .ts-tlinks-tlinks a.external {
color: #0645ad;
}
body:not(.skin-vector-2022):not(.skin-minerva) .ts-doc-header .ts-tlinks-tlinks a.external:visited {
color: #0b0080;
}
body:not(.skin-vector-2022):not(.skin-minerva) .ts-doc-header .ts-tlinks-tlinks a.external:active {
color: #faa700;
}
.ts-doc-content:after {
content: '';
clear: both;
display: block;
}
.ts-doc-heading {
display: inline-block;
padding-left: 55px;
background: center left/50px no-repeat;
/* [[File:Test Template Info-Icon - Version (2).svg]] */
/* The first background-image is for browser webs not supporting SVG files, but must be [[mw:Common thumbnail sizes]]. */
background-image: url(https://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Test_Template_Info-Icon_-_Version_%282%29.svg/60px-Test_Template_Info-Icon_-_Version_%282%29.svg.png);
background-image: url(https://upload.wikimedia.org/wikipedia/commons/4/43/Test_Template_Info-Icon_-_Version_%282%29.svg);
font-size: 1.5em;
}
.ts-doc-content > *:first-child,
.ts-doc-footer > *:first-child {
margin-top: .5em;
}
.ts-doc-content > *:last-child,
.ts-doc-footer > *:last-child {
margin-bottom: .5em;
}
.ts-doc-footer {
background-color: #ecfcf4;
border: 1px solid #a2a9b1;
padding: .25em 1em;
margin-top: .2em;
font-style: italic;
}
.ts-doc-footer small {
font-style: normal;
}
.ts-doc-sandbox {
clear: both;
}
@media screen {
html.skin-theme-clientpref-night .ts-doc-footer,
html.skin-theme-clientpref-night .ts-doc-doc {
background-color: #0b1e1c;
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .ts-doc-footer,
html.skin-theme-clientpref-os .ts-doc-doc {
background-color: #0b1e1c;
}
}
/* fix headers in dark mode */
.ts-doc-content .mw-headline {
color:inherit;
}
.mw-templatedata-caption,
.mw-templatedata-format {
color:inherit;
}
/* fix icon for templatedata params (inline/block) in dark mode */
.mw-templatedata-doc-params .oo-ui-widget {
filter: unset !important;
}
mos1hmwi7lokbn27nxai3qmolqxnyp5
370395
370394
2026-09-28T08:07:29Z
ChiK
1136
1 revision imported from [[:meta:Module:Documentation/styles.css]]
370394
sanitized-css
text/css
/* {{PP-template}} */
.ts-doc-sandbox .mbox-image {
padding:.75em 0 .75em .75em;
}
.ts-doc-doc {
clear: both;
background-color: #ecfcf4;
border: 1px solid #a2a9b1;
margin-top: 1em;
padding: 5px;
}
.ts-doc-header {
padding-bottom: 3px;
border-bottom: 1px solid #a2a9b1;
margin-bottom: 1ex;
}
.ts-doc-header .ts-tlinks-tlinks {
display: inline-block;
line-height: 24px;
margin-left: 1em;
}
/* add padding for themes that don't add brackets (see
[[en:Special:Diff/1360085358]]) */
body.skin-minerva .ts-doc-header .ts-tlinks-tlinks a,
body.skin-timeless .ts-doc-header .ts-tlinks-tlinks a {
display: inline-block;
margin-left: 0.3em;
margin-right: 0.3em;
}
body:not(.skin-vector-2022):not(.skin-minerva) .ts-doc-header .ts-tlinks-tlinks a.external {
color: #0645ad;
}
body:not(.skin-vector-2022):not(.skin-minerva) .ts-doc-header .ts-tlinks-tlinks a.external:visited {
color: #0b0080;
}
body:not(.skin-vector-2022):not(.skin-minerva) .ts-doc-header .ts-tlinks-tlinks a.external:active {
color: #faa700;
}
.ts-doc-content:after {
content: '';
clear: both;
display: block;
}
.ts-doc-heading {
display: inline-block;
padding-left: 55px;
background: center left/50px no-repeat;
/* [[File:Test Template Info-Icon - Version (2).svg]] */
/* The first background-image is for browser webs not supporting SVG files, but must be [[mw:Common thumbnail sizes]]. */
background-image: url(https://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Test_Template_Info-Icon_-_Version_%282%29.svg/60px-Test_Template_Info-Icon_-_Version_%282%29.svg.png);
background-image: url(https://upload.wikimedia.org/wikipedia/commons/4/43/Test_Template_Info-Icon_-_Version_%282%29.svg);
font-size: 1.5em;
}
.ts-doc-content > *:first-child,
.ts-doc-footer > *:first-child {
margin-top: .5em;
}
.ts-doc-content > *:last-child,
.ts-doc-footer > *:last-child {
margin-bottom: .5em;
}
.ts-doc-footer {
background-color: #ecfcf4;
border: 1px solid #a2a9b1;
padding: .25em 1em;
margin-top: .2em;
font-style: italic;
}
.ts-doc-footer small {
font-style: normal;
}
.ts-doc-sandbox {
clear: both;
}
@media screen {
html.skin-theme-clientpref-night .ts-doc-footer,
html.skin-theme-clientpref-night .ts-doc-doc {
background-color: #0b1e1c;
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .ts-doc-footer,
html.skin-theme-clientpref-os .ts-doc-doc {
background-color: #0b1e1c;
}
}
/* fix headers in dark mode */
.ts-doc-content .mw-headline {
color:inherit;
}
.mw-templatedata-caption,
.mw-templatedata-format {
color:inherit;
}
/* fix icon for templatedata params (inline/block) in dark mode */
.mw-templatedata-doc-params .oo-ui-widget {
filter: unset !important;
}
mos1hmwi7lokbn27nxai3qmolqxnyp5
370438
370395
2026-09-28T09:06:46Z
ChiK
1136
synk [[en:Module:Documentation/styles.css]]
370438
sanitized-css
text/css
.documentation,
.documentation-metadata {
border: 1px solid var( --border-color-base, #a2a9b1 );
background-color: #ecfcf4;
color:inherit;
clear: both;
}
.documentation {
margin: 1em 0 0 0;
padding: 1em;
}
.documentation-metadata {
margin: 0.2em 0; /* same margin left-right as .documentation */
font-style: italic;
padding: 0.4em 1em; /* same padding left-right as .documentation */
}
.documentation-startbox {
padding-bottom: 3px;
border-bottom: 1px solid var( --border-color-base, #a2a9b1 );
margin-bottom: 1ex;
}
.documentation-heading {
font-weight: bold;
font-size: 125%;
}
body.skin-minerva .documentation-startbox .mw-editsection-like a,
body.skin-timeless .documentation-startbox .mw-editsection-like a {
display: inline-block;
margin-left: 0.3em;
margin-right: 0.3em;
}
.documentation-clear { /* Don't want things to stick out where they shouldn't. */
clear: both;
}
.documentation-toolbar {
font-style: normal;
font-size: 85%;
}
@media screen {
html.skin-theme-clientpref-night .documentation,
html.skin-theme-clientpref-night .documentation-metadata {
background-color: #0b1e1c;
}
}
@media screen and ( prefers-color-scheme: dark ) {
html.skin-theme-clientpref-os .documentation,
html.skin-theme-clientpref-os .documentation-metadata {
background-color: #0b1e1c;
}
}
q54nrpzmvcyf5wqmstb7ftvb00bryvi
ಟೆಂಪ್ಲೇಟ್:ವಿಕಿಪೀಡಿಯದ ಬೇತೆ ಅದೆಕುಲು
10
11769
370272
369356
2026-09-27T14:16:13Z
ChiK
1136
370272
wikitext
text/x-wiki
*'''[[ವಿಕಿಪೀಡಿಯ:ಸಮುದಾಯ ತಡ್ಯ|ಸಮುದಾಯ ತಡ್ಯ]]''' – ಬುಲೆಟಿನ್ ಬೋರ್ಡ್, ಯೋಜನೆಲು, ಸಂಪನ್ಮೂಲೊಲು ಬುಕ್ಕೊ ಚಟುವಟಿಕೆలు ಇಪ್ಪಿ ವಿಕಿಪೀಡಿಯಾದ ಜಾಗ್.
*'''[[ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ|ಚಾವಡಿ]]''' – ಚಾವಡಿ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಕಾರ್ಯೊನೀತಿಲೆನ ಬಗೆಟ್, ತಾಂತ್ರಿಕ ದೋಸೊಲೆನ ಬಗೆಟ್, ಅಂಚನೆ ಕೆಲಸೊ ಕಾರ್ಯೊಲೆನ ಬಗೆಟ್ ಪಟ್ಟಾಂಗ ಪಾಡುನ ಪುಟೊ.
*'''[[ಸಕಾಯೊ:ವಿಸಯೊಲು|ಸಕಾಯೊ]]''' – ವಿಕಿಪೀಡಿಯ ಲೇಕನೊ ಸಂಪೊಲಿಪುನ ಬಗೆನ್ ಮುಲ್ಪ ವಿವರವಾದು ತೆರಿಪದ್ಂಡ್.
<noinclude>
{{documentation}}
</noinclude>
0rd98007s4yvulxfbm2ca6ogy4lxmad
370273
370272
2026-09-27T14:16:54Z
ChiK
1136
ChiK ಪುಟೊ [[ಟೆಂಪ್ಲೇಟ್:ವಿಕಿಪೀಡಿಯದ ಬುಕ್ಕೊಂಜಿ ಅದೆಕುಲು]] ನ್ ಪುಟೊ [[ಟೆಂಪ್ಲೇಟ್:ವಿಕಿಪೀಡಿಯದ ಬೇತೆ ಅದೆಕುಲು]] ಕ್ ರೀಡೈರೆಕ್ಟ್ ಕೊರಂದೆ ವರ್ಗಾವಣೆ ಮಲ್ತೆರ್
370272
wikitext
text/x-wiki
*'''[[ವಿಕಿಪೀಡಿಯ:ಸಮುದಾಯ ತಡ್ಯ|ಸಮುದಾಯ ತಡ್ಯ]]''' – ಬುಲೆಟಿನ್ ಬೋರ್ಡ್, ಯೋಜನೆಲು, ಸಂಪನ್ಮೂಲೊಲು ಬುಕ್ಕೊ ಚಟುವಟಿಕೆలు ಇಪ್ಪಿ ವಿಕಿಪೀಡಿಯಾದ ಜಾಗ್.
*'''[[ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ|ಚಾವಡಿ]]''' – ಚಾವಡಿ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಕಾರ್ಯೊನೀತಿಲೆನ ಬಗೆಟ್, ತಾಂತ್ರಿಕ ದೋಸೊಲೆನ ಬಗೆಟ್, ಅಂಚನೆ ಕೆಲಸೊ ಕಾರ್ಯೊಲೆನ ಬಗೆಟ್ ಪಟ್ಟಾಂಗ ಪಾಡುನ ಪುಟೊ.
*'''[[ಸಕಾಯೊ:ವಿಸಯೊಲು|ಸಕಾಯೊ]]''' – ವಿಕಿಪೀಡಿಯ ಲೇಕನೊ ಸಂಪೊಲಿಪುನ ಬಗೆನ್ ಮುಲ್ಪ ವಿವರವಾದು ತೆರಿಪದ್ಂಡ್.
<noinclude>
{{documentation}}
</noinclude>
0rd98007s4yvulxfbm2ca6ogy4lxmad
ಮೋಡ್ಯೂಲ್:Transclusion count/data/D
828
11828
370418
369148
2026-09-27T05:08:32Z
en>Ahechtbot
0
[[Wikipedia:BOT|Bot]]: Updated page.
370418
Scribunto
text/plain
return {
["D&D_to-do"] = 6600,
["DANFS"] = 8100,
["DBCatsURL"] = 2000,
["DCS_Sri_Lanka"] = 2000,
["DDR"] = 2900,
["DEC"] = 11000,
["DECADE"] = 322000,
["DEN"] = 7500,
["DEU"] = 20000,
["DGRBM"] = 2000,
["DMC"] = 52000,
["DMCA"] = 3310000,
["DNB"] = 9600,
["DNB-Portal"] = 2300,
["DNB_portal"] = 3600,
["DNK"] = 8700,
["DNZB"] = 3700,
["DOM"] = 2400,
["DOWs"] = 2800,
["DRV_links"] = 4300,
["DWT"] = 2600,
["DYKC"] = 6700,
["DYKF"] = 2100,
["DYK_blue"] = 3400,
["DYK_checklist"] = 25000,
["DYK_conditions"] = 64000,
["DYK_files"] = 2100,
["DYK_header"] = 59000,
["DYK_nompage_links"] = 104000,
["DYK_talk"] = 111000,
["DYK_talk/date"] = 111000,
["DYK_tools"] = 81000,
["DYK_tools/styles.css"] = 81000,
["DYKfile"] = 13000,
["DZA"] = 3100,
["Dab"] = 21000,
["Dagger"] = 25000,
["Dark_red"] = 3500,
["Darkred"] = 3200,
["Dash"] = 2700,
["Dashboard.wikiedu.org_assignment"] = 36000,
["Dashboard.wikiedu.org_bibliography/bibliography"] = 12000,
["Dashboard.wikiedu.org_bibliography/guide"] = 20000,
["Dashboard.wikiedu.org_bibliography/outline"] = 12000,
["Dashboard.wikiedu.org_course_header"] = 8400,
["Dashboard.wikiedu.org_course_header/edit-note"] = 8400,
["Dashboard.wikiedu.org_draft_template/about_this_sandbox"] = 21000,
["Dashboard.wikiedu.org_evaluate_article/guide"] = 25000,
["Dashboard.wikiedu.org_peer_review/guide"] = 27000,
["Dashboard.wikiedu.org_sandbox"] = 123000,
["Dashboard.wikiedu.org_student_editor"] = 123000,
["Dashboard.wikiedu.org_student_program_sandbox"] = 122000,
["Dashboard.wikiedu.org_talk_course_link"] = 124000,
["Dashboard.wikiedu.org_user_talk"] = 2200,
["Date"] = 54000,
["Date-mf"] = 64000,
["DateStyle"] = 2000,
["Date_table_sorting"] = 46000,
["Dated_maintenance_category"] = 3400000,
["Dated_maintenance_category_(articles)"] = 3350000,
["Dated_maintenance_category_by_type_(articles)"] = 23000,
["Davis_Cup_player"] = 2500,
["Day+1"] = 6900,
["Day-1"] = 8300,
["Dbox"] = 3000,
["Dda"] = 2900,
["Dead_YouTube_link"] = 2300,
["Dead_link"] = 376000,
["Deadweight_tonnage"] = 2700,
["Death-date_and_age"] = 5500,
["Death_date"] = 15000,
["Death_date_and_age"] = 537000,
["Death_date_and_given_age"] = 4700,
["Death_date_text"] = 6200,
["Death_year"] = 4600,
["Death_year_and_age"] = 29000,
["Death_year_category_header"] = 2000,
["Decade_link"] = 38000,
["Decimals"] = 3600,
["Declination"] = 11000,
["Decline"] = 2700,
["Declined"] = 3600,
["Decrease"] = 52000,
["Define"] = 4300,
["Deg2DMS"] = 3300,
["Deleted_on_Commons"] = 5700,
["Deletion_review_log_header"] = 6800,
["Deletion_review_log_header/Core"] = 6800,
["Delink"] = 1960000,
["Delink_question_hyphen-minus"] = 444000,
["Delrevxfd"] = 4000,
["Democratic_Party_(US)/meta/shading"] = 19000,
["Deprecated_archive"] = 86000,
["Description_missing"] = 5500,
["Designation/text"] = 18000,
["Designation_list"] = 7900,
["Details"] = 3400,
["DetailsLink"] = 5500,
["Details_link"] = 6600,
["Detect_singular"] = 258000,
["Deutsche_Bahn_station_codes"] = 2200,
["DfE_performance_tables"] = 4500,
["Dictionary_of_National_Biography"] = 9600,
["Diff"] = 34000,
["Diff2"] = 16000,
["Diffusing_occupation_by_nationality_and_century_category_header"] = 4300,
["Diffusing_occupation_by_nationality_and_century_category_header/core"] = 7800,
["Digits"] = 6500,
["Directories_box"] = 3200,
["Disamb"] = 2200,
["Disambig"] = 63000,
["Disambig-Class"] = 12000,
["Disambiguation"] = 236000,
["Disambiguation/cat"] = 235000,
["Disambiguation_page_short_description"] = 381000,
["Discogs_artist"] = 25000,
["Discogs_master"] = 16000,
["Discogs_release"] = 3700,
["Discussion_bottom"] = 14000,
["Discussion_top"] = 15000,
["Disestablishment_category_in_country"] = 10000,
["Disestablishment_category_in_country/core"] = 10000,
["Disestablishment_category_in_country_by_decade"] = 2600,
["Disestablishment_category_in_country_by_decade/core"] = 2600,
["DisestcatCountry"] = 10000,
["DisestcatCountry/core"] = 10000,
["DisestcatUSstate"] = 5200,
["DisestcatUSstate/core"] = 5200,
["Disputed"] = 2100,
["Distinguish"] = 129000,
["Disused_Rail_Start"] = 4000,
["Disused_rail_start"] = 4300,
["Div_col"] = 503000,
["Div_col/styles.css"] = 506000,
["Div_col_end"] = 366000,
["Divbox"] = 497000,
["Divbox/styles.css"] = 497000,
["Dividing_line"] = 4500,
["Dmbox"] = 512000,
["Dmbox/styles.css"] = 512000,
["Do_not_move_to_Commons"] = 24000,
["Doc"] = 3800,
["Documentation"] = 155000,
["Documentation_subpage"] = 101000,
["Dog_opentask"] = 4200,
["Doi"] = 29000,
["Doing"] = 4200,
["Don't_edit_this_line"] = 151000,
["Don't_edit_this_line_always_display"] = 656000,
["Don't_edit_this_line_extinct"] = 656000,
["Don't_edit_this_line_link_target"] = 656000,
["Don't_edit_this_line_link_text"] = 656000,
["Don't_edit_this_line_parent"] = 656000,
["Don't_edit_this_line_rank"] = 656000,
["Don't_edit_this_line_refs"] = 151000,
["Don't_edit_this_line_same_as"] = 656000,
["Done"] = 125000,
["Doppelganger"] = 2900,
["Double+single"] = 4500,
["Double-dagger"] = 29000,
["Dow_tooltip"] = 2500,
["Dr"] = 3300,
["Dr-logno"] = 3300,
["Dr-make"] = 3300,
["Dr-yr"] = 3300,
["Draft_article"] = 11000,
["Draft_article_check"] = 11000,
["Draft_categories"] = 11000,
["Draft_other"] = 117000,
["Draft_topics"] = 31000,
["Drafts_moved_from_mainspace"] = 10000,
["Drainage"] = 8300,
["Draw"] = 4800,
["Draw_key"] = 21000,
["Draw_links"] = 16000,
["Drep"] = 3300,
["DriverDB_driver"] = 2900,
["Drugbankcite"] = 4200,
["Drugbox"] = 6300,
["Drugs.com"] = 3300,
["Dts"] = 45000,
["Dubious"] = 8600,
["Duck"] = 3300,
["Dummytab"] = 6700,
["Duration"] = 45000,
["Dutch_municipality"] = 2700,
["Dyktalk"] = 39000,
["Dynamic_list"] = 14000,
["Module:DYK_checklist"] = 25000,
["Module:DYK_checklist/data"] = 25000,
["Module:DYK_nompage_links"] = 104000,
["Module:Data"] = 58000,
["Module:Date"] = 2120000,
["Module:DateI18n"] = 48000,
["Module:Date_table_sorting"] = 49000,
["Module:Date_time"] = 566000,
["Module:DecodeEncode"] = 150000,
["Module:Delink"] = 4340000,
["Module:Deprecated_archive"] = 86000,
["Module:Designation"] = 106000,
["Module:Designation/list"] = 106000,
["Module:Designation/lookup"] = 26000,
["Module:Detect_singular"] = 3180000,
["Module:Diff"] = 3500,
["Module:Disambiguation"] = 24000,
["Module:Disambiguation/templates"] = 13300000,
["Module:Distinguish"] = 129000,
["Module:Documentation"] = 209000,
["Module:Documentation/config"] = 209000,
["Module:Documentation/styles.css"] = 209000,
["Module:Domain_handler"] = 17000,
["Module:Draft_topics"] = 31000,
["Module:Dts"] = 3400,
["Module:Duration"] = 253000,
}
dwak2kvd6y3gpdf7a80z2tliss06byd
370419
370418
2026-09-28T08:22:27Z
ChiK
1136
1 revision imported from [[:en:Module:Transclusion_count/data/D]]
370418
Scribunto
text/plain
return {
["D&D_to-do"] = 6600,
["DANFS"] = 8100,
["DBCatsURL"] = 2000,
["DCS_Sri_Lanka"] = 2000,
["DDR"] = 2900,
["DEC"] = 11000,
["DECADE"] = 322000,
["DEN"] = 7500,
["DEU"] = 20000,
["DGRBM"] = 2000,
["DMC"] = 52000,
["DMCA"] = 3310000,
["DNB"] = 9600,
["DNB-Portal"] = 2300,
["DNB_portal"] = 3600,
["DNK"] = 8700,
["DNZB"] = 3700,
["DOM"] = 2400,
["DOWs"] = 2800,
["DRV_links"] = 4300,
["DWT"] = 2600,
["DYKC"] = 6700,
["DYKF"] = 2100,
["DYK_blue"] = 3400,
["DYK_checklist"] = 25000,
["DYK_conditions"] = 64000,
["DYK_files"] = 2100,
["DYK_header"] = 59000,
["DYK_nompage_links"] = 104000,
["DYK_talk"] = 111000,
["DYK_talk/date"] = 111000,
["DYK_tools"] = 81000,
["DYK_tools/styles.css"] = 81000,
["DYKfile"] = 13000,
["DZA"] = 3100,
["Dab"] = 21000,
["Dagger"] = 25000,
["Dark_red"] = 3500,
["Darkred"] = 3200,
["Dash"] = 2700,
["Dashboard.wikiedu.org_assignment"] = 36000,
["Dashboard.wikiedu.org_bibliography/bibliography"] = 12000,
["Dashboard.wikiedu.org_bibliography/guide"] = 20000,
["Dashboard.wikiedu.org_bibliography/outline"] = 12000,
["Dashboard.wikiedu.org_course_header"] = 8400,
["Dashboard.wikiedu.org_course_header/edit-note"] = 8400,
["Dashboard.wikiedu.org_draft_template/about_this_sandbox"] = 21000,
["Dashboard.wikiedu.org_evaluate_article/guide"] = 25000,
["Dashboard.wikiedu.org_peer_review/guide"] = 27000,
["Dashboard.wikiedu.org_sandbox"] = 123000,
["Dashboard.wikiedu.org_student_editor"] = 123000,
["Dashboard.wikiedu.org_student_program_sandbox"] = 122000,
["Dashboard.wikiedu.org_talk_course_link"] = 124000,
["Dashboard.wikiedu.org_user_talk"] = 2200,
["Date"] = 54000,
["Date-mf"] = 64000,
["DateStyle"] = 2000,
["Date_table_sorting"] = 46000,
["Dated_maintenance_category"] = 3400000,
["Dated_maintenance_category_(articles)"] = 3350000,
["Dated_maintenance_category_by_type_(articles)"] = 23000,
["Davis_Cup_player"] = 2500,
["Day+1"] = 6900,
["Day-1"] = 8300,
["Dbox"] = 3000,
["Dda"] = 2900,
["Dead_YouTube_link"] = 2300,
["Dead_link"] = 376000,
["Deadweight_tonnage"] = 2700,
["Death-date_and_age"] = 5500,
["Death_date"] = 15000,
["Death_date_and_age"] = 537000,
["Death_date_and_given_age"] = 4700,
["Death_date_text"] = 6200,
["Death_year"] = 4600,
["Death_year_and_age"] = 29000,
["Death_year_category_header"] = 2000,
["Decade_link"] = 38000,
["Decimals"] = 3600,
["Declination"] = 11000,
["Decline"] = 2700,
["Declined"] = 3600,
["Decrease"] = 52000,
["Define"] = 4300,
["Deg2DMS"] = 3300,
["Deleted_on_Commons"] = 5700,
["Deletion_review_log_header"] = 6800,
["Deletion_review_log_header/Core"] = 6800,
["Delink"] = 1960000,
["Delink_question_hyphen-minus"] = 444000,
["Delrevxfd"] = 4000,
["Democratic_Party_(US)/meta/shading"] = 19000,
["Deprecated_archive"] = 86000,
["Description_missing"] = 5500,
["Designation/text"] = 18000,
["Designation_list"] = 7900,
["Details"] = 3400,
["DetailsLink"] = 5500,
["Details_link"] = 6600,
["Detect_singular"] = 258000,
["Deutsche_Bahn_station_codes"] = 2200,
["DfE_performance_tables"] = 4500,
["Dictionary_of_National_Biography"] = 9600,
["Diff"] = 34000,
["Diff2"] = 16000,
["Diffusing_occupation_by_nationality_and_century_category_header"] = 4300,
["Diffusing_occupation_by_nationality_and_century_category_header/core"] = 7800,
["Digits"] = 6500,
["Directories_box"] = 3200,
["Disamb"] = 2200,
["Disambig"] = 63000,
["Disambig-Class"] = 12000,
["Disambiguation"] = 236000,
["Disambiguation/cat"] = 235000,
["Disambiguation_page_short_description"] = 381000,
["Discogs_artist"] = 25000,
["Discogs_master"] = 16000,
["Discogs_release"] = 3700,
["Discussion_bottom"] = 14000,
["Discussion_top"] = 15000,
["Disestablishment_category_in_country"] = 10000,
["Disestablishment_category_in_country/core"] = 10000,
["Disestablishment_category_in_country_by_decade"] = 2600,
["Disestablishment_category_in_country_by_decade/core"] = 2600,
["DisestcatCountry"] = 10000,
["DisestcatCountry/core"] = 10000,
["DisestcatUSstate"] = 5200,
["DisestcatUSstate/core"] = 5200,
["Disputed"] = 2100,
["Distinguish"] = 129000,
["Disused_Rail_Start"] = 4000,
["Disused_rail_start"] = 4300,
["Div_col"] = 503000,
["Div_col/styles.css"] = 506000,
["Div_col_end"] = 366000,
["Divbox"] = 497000,
["Divbox/styles.css"] = 497000,
["Dividing_line"] = 4500,
["Dmbox"] = 512000,
["Dmbox/styles.css"] = 512000,
["Do_not_move_to_Commons"] = 24000,
["Doc"] = 3800,
["Documentation"] = 155000,
["Documentation_subpage"] = 101000,
["Dog_opentask"] = 4200,
["Doi"] = 29000,
["Doing"] = 4200,
["Don't_edit_this_line"] = 151000,
["Don't_edit_this_line_always_display"] = 656000,
["Don't_edit_this_line_extinct"] = 656000,
["Don't_edit_this_line_link_target"] = 656000,
["Don't_edit_this_line_link_text"] = 656000,
["Don't_edit_this_line_parent"] = 656000,
["Don't_edit_this_line_rank"] = 656000,
["Don't_edit_this_line_refs"] = 151000,
["Don't_edit_this_line_same_as"] = 656000,
["Done"] = 125000,
["Doppelganger"] = 2900,
["Double+single"] = 4500,
["Double-dagger"] = 29000,
["Dow_tooltip"] = 2500,
["Dr"] = 3300,
["Dr-logno"] = 3300,
["Dr-make"] = 3300,
["Dr-yr"] = 3300,
["Draft_article"] = 11000,
["Draft_article_check"] = 11000,
["Draft_categories"] = 11000,
["Draft_other"] = 117000,
["Draft_topics"] = 31000,
["Drafts_moved_from_mainspace"] = 10000,
["Drainage"] = 8300,
["Draw"] = 4800,
["Draw_key"] = 21000,
["Draw_links"] = 16000,
["Drep"] = 3300,
["DriverDB_driver"] = 2900,
["Drugbankcite"] = 4200,
["Drugbox"] = 6300,
["Drugs.com"] = 3300,
["Dts"] = 45000,
["Dubious"] = 8600,
["Duck"] = 3300,
["Dummytab"] = 6700,
["Duration"] = 45000,
["Dutch_municipality"] = 2700,
["Dyktalk"] = 39000,
["Dynamic_list"] = 14000,
["Module:DYK_checklist"] = 25000,
["Module:DYK_checklist/data"] = 25000,
["Module:DYK_nompage_links"] = 104000,
["Module:Data"] = 58000,
["Module:Date"] = 2120000,
["Module:DateI18n"] = 48000,
["Module:Date_table_sorting"] = 49000,
["Module:Date_time"] = 566000,
["Module:DecodeEncode"] = 150000,
["Module:Delink"] = 4340000,
["Module:Deprecated_archive"] = 86000,
["Module:Designation"] = 106000,
["Module:Designation/list"] = 106000,
["Module:Designation/lookup"] = 26000,
["Module:Detect_singular"] = 3180000,
["Module:Diff"] = 3500,
["Module:Disambiguation"] = 24000,
["Module:Disambiguation/templates"] = 13300000,
["Module:Distinguish"] = 129000,
["Module:Documentation"] = 209000,
["Module:Documentation/config"] = 209000,
["Module:Documentation/styles.css"] = 209000,
["Module:Domain_handler"] = 17000,
["Module:Draft_topics"] = 31000,
["Module:Dts"] = 3400,
["Module:Duration"] = 253000,
}
dwak2kvd6y3gpdf7a80z2tliss06byd
ಟೆಂಪ್ಲೇಟ್:Infobox award
10
12533
370284
145211
2026-09-15T04:57:12Z
en>Zackmann08
0
Improving word wrapping. Note that any label that accepts a custom value has the potential to wrap and should therefore use [[Template:Long item]].
370284
wikitext
text/x-wiki
<includeonly>{{#if:{{#invoke:is infobox in lead|main|[Ii]nfobox ?%a* [Aa]ward}}|{{#ifeq:{{#invoke:String|match|{{lc:{{PAGENAME}}}}|award}}|award||{{short description|Award|noreplace}}}}}}</includeonly>{{Infobox
| bodyclass = vevent
| above = {{if empty|{{{name|}}}|{{{awardname|}}}|{{PAGENAMEBASE}}}}
| aboveclass = summary
| labelstyle = width: 33%;
| subheader = {{
#if:{{{subheader|}}}|{{{subheader}}}|{{#if:{{{previous_awards|}}}|''Previous: [[{{{previous_awards|}}}]]''|{{#if:{{{current_awards|}}}|''Current: [[{{{current_awards|}}}]]''}}}}
}} {{
#if:{{{previous_date|}}}|<br />{{{previous_date|}}}|{{#if:{{{current_date|}}}|<br />{{{current_date|}}}}}
}} {{
#if:{{{pending_awards|}}}|<br />''Pending: [[{{{pending_awards|}}}]]''|{{#if:{{{next_awards|}}}|<br />''Next: [[{{{next_awards|}}}]]''}}
}} {{
#if:{{{pending_date|}}}|<br />{{{pending_date|}}}|{{#if:{{{next_date|}}}|<br />{{{next_date|}}}}}
}}
| image = {{#invoke:InfoboxImage|InfoboxImage|image={{{image|}}}|size={{if empty|{{{image size|}}}|{{{image_size|}}}|{{{imagesize|}}}}}|upright={{if empty|{{{image_upright|}}}|1}}|alt={{{alt|}}}|class={{{image_class|}}}|suppressplaceholder=yes}}
| caption = {{if empty|{{{image caption|}}}|{{{caption|}}}|{{{image_caption|}}}|{{#invoke:Wikidata|getImageLegend|FETCH_WIKIDATA}}}}
| label1 = Native name
| data1 = {{{native_name|}}}
| label2 = Type
| data2 = {{{type|}}}
| label3 = Awarded for
| data3 = {{{awarded_for|}}}
| label4 = Description
| data4 = {{{description|}}}
| label5 = Sponsored by
| data5 = {{{sponsor|}}}
| label6 = Date
| data6 = {{{date|}}}
| label7 = {{#if:{{{venue|}}}|Venue|{{#if:{{{location|}}}|Location|Site}}}}
| data7 = {{if empty|{{{venue|}}}|{{{location|}}}|{{{site|}}}}}
| class7 = location
| label8 = Country
| data8 = {{#invoke:WikidataIB |getValue |P17 |name=country |qid={{{qid|}}} |suppressfields={{{suppressfields|}}} |fetchwikidata={{if empty|{{{fetchwikidata|}}}|ALL}} |onlysourced={{{onlysourced|}}} |noicon={{{noicon|}}} | {{{country|}}} }}
| class8 = location
| label9 = Presented by
| data9 = {{#invoke:WikidataIB |getValue |P1027 |name=presenter |qid={{{qid|}}} |suppressfields={{{suppressfields|}}} |fetchwikidata={{if empty|{{{fetchwikidata|}}}|ALL}} |onlysourced={{{onlysourced|}}} |noicon={{{noicon|}}} | {{{presenter|}}} }}
| class9 = attendee
| label10 = Eligibility
| data10 = {{{eligibility|}}}
| label11 = Post-nominals
| data11 = {{{post-nominals|}}}
| label12 = Ribbon
| data12 = {{{ribbon|}}}
| label13 = Obverse
| data13 = {{{obverse|}}}
| label14 = Reverse
| data14 = {{{reverse|}}}
<!-- Film / television -->
| label15 = Hosted by
| data15 = {{if empty|{{{host|}}}|{{{hosts|}}}}}
| class15 = attendee
| label16 = Formerly called
| data16 = {{if empty|{{{former name|}}}|{{{former_name|}}}}}
| label17 = Preshow host{{pluralize from text|{{{preshow_host|}}}|plural=s}}
| data17 = {{{preshow_host|}}}
| class17 = attendee
| label18 = Act{{pluralize from text|{{{acts|}}}|plural=s}}
| data18 = {{{acts|}}}
| class18 = attendee
<!-- End Film / television -->
<!-- Military -->
| label19 = Campaign{{pluralize from text|{{{campaign|}}}|plural=s}}
| data19 = {{{campaign|}}}
| label20 = Motto
| data20 = {{{motto|}}}
| label21 = [[Campaign clasp|Clasps]]
| data21 = {{{clasps|}}}
<!-- End Military -->
| label22 = Reward{{pluralize from text|{{{reward|}}}|plural=s}}
| data22 = {{{reward|}}}
| label23 = Status
| data23 = {{{status|}}}
| label24 = Established
| data24 = {{{established|}}}
| label25 = First award
| data25 = {{if empty|{{{firstawarded|}}}|{{{year|}}}}}
| label26 = Final award
| data26 = {{#if:{{{final_award|}}}|{{{final_award}}}|{{if empty|{{{lastawarded|}}}|{{{year2|}}}}}}}
| label27 = {{#if:{{{holder|}}}
|{{if empty|{{{holder_label|}}}|Currently held by}}
|{{#if:{{{winner|}}}
| Winner
| Winners
}}
}}
| data27 = {{if empty|{{{holder|}}}|{{{winner|}}}|{{{winners|}}}}}
| header28 = {{#if:{{Both|{{{award1_type|}}}|{{{award1_winner|}}}}}{{Both|{{{award2_type|}}}|{{{award2_winner|}}}}}{{Both|{{{award3_type|}}}|{{{award3_winner|}}}}}|Highlights}}
| label29 = {{#if:{{{most_wins|}}}|Most wins|Most awards}}
| data29 = {{if empty|{{{most_wins|}}}|{{{most_awards|}}}}}
| label30 = Most nominations
| data30 = {{{most_nominations|}}}
| label31 = Total
| data31 = {{{total_awarded|}}}
| label32 = {{longitem|Total awarded posthumously}}
| data32 = {{{total_awarded_posthumously|}}}
| label33 = Total recipients
| data33 = {{{total_recipients|}}}
| label34 = {{longitem|{{{award1_type}}}}}
| data34 = {{#if:{{{award1_type|}}}|{{{award1_winner|}}}}}
| label35 = {{longitem|{{{award2_type}}}}}
| data35 = {{#if:{{{award2_type|}}}|{{{award2_winner|}}}}}
| label36 = {{longitem|{{{award3_type}}}}}
| data36 = {{#if:{{{award3_type|}}}|{{{award3_winner|}}}}}
| label37 = {{longitem|{{{award4_type}}}}}
| data37 = {{#if:{{{award4_type|}}}|{{{award4_winner|}}}}}
| label38 = {{longitem|{{{award5_type}}}}}
| data38 = {{#if:{{{award5_type|}}}|{{{award5_winner|}}}}}
| label39 = Website
| data39 = {{#invoke:WikidataIB |getValue |P856 |name=website |qid={{{qid|}}} |suppressfields={{{suppressfields|}}} |fetchwikidata={{if empty|{{{fetchwikidata|}}}|ALL}} |onlysourced={{if empty|{{{onlysourced|}}}|no}} |noicon={{{noicon|}}} | {{if empty|{{{website|}}}|{{{url|}}}}} }}
<!-- Film / television block -->
| header40 = {{#if:{{{network|}}}{{{network_list|}}}{{{runtime|}}}{{{ratings|}}}{{{producer|}}}{{{director|}}}|{{if empty|{{{coverage|}}}|Television/radio}} coverage}}
| label41 = {{#if:{{{network_list|}}}|Networks|Network}}
| data41 = {{#if:{{{network_list|}}}|<nowiki />|{{{network|}}}}}
| data42 = {{#if:{{{network_list|}}}|<div style="text-align: left; padding-left: 0.5em">
{{{network_list}}}</div>}}
| label43 = Runtime
| data43 = {{{runtime|}}}
| label44 = Viewership
| data44 = {{if empty|{{{viewership|}}}|{{{ratings|}}}}}
| label45 = Produced by
| data45 = {{{producer|}}}
| label46 = Directed by
| data46 = {{{director|}}}
<!-- End Film / television block -->
| header47 = {{#if:{{{image2|}}}|{{Infobox
| child = yes | decat = yes
| image = {{#invoke:InfoboxImage|InfoboxImage|image={{{image2|}}}|size={{{image2_size|}}}|sizedefault=frameless|upright={{if empty|{{{image_upright2|}}}|1}}|alt={{{alt2|}}}|class={{{image2_class|}}}}}
| caption = {{{caption2|}}}
}}}}
| header48 = {{#if:{{{higher|}}}{{{same|}}}{{{lower|}}}{{{individual|}}}|{{if empty|{{{precedence_label|}}}|Precedence}}}}
| label49 = Next (higher)
| data49 = {{{higher|}}}
| label50 = Equivalent
| data50 = {{{same|}}}
| label51 = {{longitem|Individual equivalent}}
| data51 = {{{individual|}}}
| label52 = Next (lower)
| data52 = {{{lower|}}}
| label53 = Related
| data53 = {{{related|}}}
| data55 = {{{module|}}}
| below = {{#if:{{{previous|}}}{{{main|}}}{{{next|}}}|
{{succession links|bullets=yes
| left = {{{previous|}}}
| center = {{{main|}}}
| right = {{{next|}}}
}}
}}
| belowclass = noprint nowrap
| belowstyle = border-top: 1px solid #000; padding-top: 5px; font-weight: bold;
| decat = {{#if:{{{previous|}}}{{{main|}}}{{{next|}}}|yes|no}}
}}{{#invoke:Check for unknown parameters|check|unknown={{main other|[[Category:Pages using infobox award with unknown parameters|_VALUE_{{PAGENAME}}]]}}|preview=Page using [[Template:Infobox award]] with unknown parameter "_VALUE_"|ignoreblank=y| acts | alt | alt2 | award1_type | award1_winner | award2_type | award2_winner | award3_type | award3_winner | award4_type | award4_winner | award5_type | award5_winner | awarded_for | awardname | campaign | caption | caption2 | clasps | country | coverage | current_awards | current_date | date | description | description | director | eligibility | established | fetchwikidata | final_award | firstawarded | former name | former_name | higher | holder | holder_label | host | hosts | image | image caption | image size | image_caption | image_size | image_upright | image_class | image_upright2 | image2 | image2_size | image2_class | imagesize | individual | lastawarded | location | lower | main | module | most_awards | most_nominations | most_wins | motto | name | native_name | network | network_list | next | next_awards | next_date | noicon | obverse | onlysourced | pending_awards | pending_date | post-nominals | precedence_label | presenter | preshow_host | previous | previous_awards | previous_date | producer | qid | ratings | related | reverse | reward | ribbon | runtime | same | site | sponsor | status | subheader | suppressfields | total_awarded | total_awarded_posthumously | total_recipients | type | url | venue | viewership | website | winner | winners | year | year2 }}{{#invoke:Check for conflicting parameters|check
| template = [[Template:Infobox award]]
| cat = {{main other|Category:Pages using infobox award with conflicting parameters}}
| image size; image_size; imagesize
| location; site
| host; hosts
| former name; former_name
| firstawarded; year
| lastawarded; year2
| holder; winner; winners
| most_wins; most_awards
| website; url
| viewership; ratings
}}<noinclude>
{{documentation}}</noinclude>
scxy1t87p66cymbpp71o7dno86g3izk
370285
370284
2026-09-28T01:40:46Z
ChiK
1136
1 revision imported from [[:en:Template:Infobox_award]]
370284
wikitext
text/x-wiki
<includeonly>{{#if:{{#invoke:is infobox in lead|main|[Ii]nfobox ?%a* [Aa]ward}}|{{#ifeq:{{#invoke:String|match|{{lc:{{PAGENAME}}}}|award}}|award||{{short description|Award|noreplace}}}}}}</includeonly>{{Infobox
| bodyclass = vevent
| above = {{if empty|{{{name|}}}|{{{awardname|}}}|{{PAGENAMEBASE}}}}
| aboveclass = summary
| labelstyle = width: 33%;
| subheader = {{
#if:{{{subheader|}}}|{{{subheader}}}|{{#if:{{{previous_awards|}}}|''Previous: [[{{{previous_awards|}}}]]''|{{#if:{{{current_awards|}}}|''Current: [[{{{current_awards|}}}]]''}}}}
}} {{
#if:{{{previous_date|}}}|<br />{{{previous_date|}}}|{{#if:{{{current_date|}}}|<br />{{{current_date|}}}}}
}} {{
#if:{{{pending_awards|}}}|<br />''Pending: [[{{{pending_awards|}}}]]''|{{#if:{{{next_awards|}}}|<br />''Next: [[{{{next_awards|}}}]]''}}
}} {{
#if:{{{pending_date|}}}|<br />{{{pending_date|}}}|{{#if:{{{next_date|}}}|<br />{{{next_date|}}}}}
}}
| image = {{#invoke:InfoboxImage|InfoboxImage|image={{{image|}}}|size={{if empty|{{{image size|}}}|{{{image_size|}}}|{{{imagesize|}}}}}|upright={{if empty|{{{image_upright|}}}|1}}|alt={{{alt|}}}|class={{{image_class|}}}|suppressplaceholder=yes}}
| caption = {{if empty|{{{image caption|}}}|{{{caption|}}}|{{{image_caption|}}}|{{#invoke:Wikidata|getImageLegend|FETCH_WIKIDATA}}}}
| label1 = Native name
| data1 = {{{native_name|}}}
| label2 = Type
| data2 = {{{type|}}}
| label3 = Awarded for
| data3 = {{{awarded_for|}}}
| label4 = Description
| data4 = {{{description|}}}
| label5 = Sponsored by
| data5 = {{{sponsor|}}}
| label6 = Date
| data6 = {{{date|}}}
| label7 = {{#if:{{{venue|}}}|Venue|{{#if:{{{location|}}}|Location|Site}}}}
| data7 = {{if empty|{{{venue|}}}|{{{location|}}}|{{{site|}}}}}
| class7 = location
| label8 = Country
| data8 = {{#invoke:WikidataIB |getValue |P17 |name=country |qid={{{qid|}}} |suppressfields={{{suppressfields|}}} |fetchwikidata={{if empty|{{{fetchwikidata|}}}|ALL}} |onlysourced={{{onlysourced|}}} |noicon={{{noicon|}}} | {{{country|}}} }}
| class8 = location
| label9 = Presented by
| data9 = {{#invoke:WikidataIB |getValue |P1027 |name=presenter |qid={{{qid|}}} |suppressfields={{{suppressfields|}}} |fetchwikidata={{if empty|{{{fetchwikidata|}}}|ALL}} |onlysourced={{{onlysourced|}}} |noicon={{{noicon|}}} | {{{presenter|}}} }}
| class9 = attendee
| label10 = Eligibility
| data10 = {{{eligibility|}}}
| label11 = Post-nominals
| data11 = {{{post-nominals|}}}
| label12 = Ribbon
| data12 = {{{ribbon|}}}
| label13 = Obverse
| data13 = {{{obverse|}}}
| label14 = Reverse
| data14 = {{{reverse|}}}
<!-- Film / television -->
| label15 = Hosted by
| data15 = {{if empty|{{{host|}}}|{{{hosts|}}}}}
| class15 = attendee
| label16 = Formerly called
| data16 = {{if empty|{{{former name|}}}|{{{former_name|}}}}}
| label17 = Preshow host{{pluralize from text|{{{preshow_host|}}}|plural=s}}
| data17 = {{{preshow_host|}}}
| class17 = attendee
| label18 = Act{{pluralize from text|{{{acts|}}}|plural=s}}
| data18 = {{{acts|}}}
| class18 = attendee
<!-- End Film / television -->
<!-- Military -->
| label19 = Campaign{{pluralize from text|{{{campaign|}}}|plural=s}}
| data19 = {{{campaign|}}}
| label20 = Motto
| data20 = {{{motto|}}}
| label21 = [[Campaign clasp|Clasps]]
| data21 = {{{clasps|}}}
<!-- End Military -->
| label22 = Reward{{pluralize from text|{{{reward|}}}|plural=s}}
| data22 = {{{reward|}}}
| label23 = Status
| data23 = {{{status|}}}
| label24 = Established
| data24 = {{{established|}}}
| label25 = First award
| data25 = {{if empty|{{{firstawarded|}}}|{{{year|}}}}}
| label26 = Final award
| data26 = {{#if:{{{final_award|}}}|{{{final_award}}}|{{if empty|{{{lastawarded|}}}|{{{year2|}}}}}}}
| label27 = {{#if:{{{holder|}}}
|{{if empty|{{{holder_label|}}}|Currently held by}}
|{{#if:{{{winner|}}}
| Winner
| Winners
}}
}}
| data27 = {{if empty|{{{holder|}}}|{{{winner|}}}|{{{winners|}}}}}
| header28 = {{#if:{{Both|{{{award1_type|}}}|{{{award1_winner|}}}}}{{Both|{{{award2_type|}}}|{{{award2_winner|}}}}}{{Both|{{{award3_type|}}}|{{{award3_winner|}}}}}|Highlights}}
| label29 = {{#if:{{{most_wins|}}}|Most wins|Most awards}}
| data29 = {{if empty|{{{most_wins|}}}|{{{most_awards|}}}}}
| label30 = Most nominations
| data30 = {{{most_nominations|}}}
| label31 = Total
| data31 = {{{total_awarded|}}}
| label32 = {{longitem|Total awarded posthumously}}
| data32 = {{{total_awarded_posthumously|}}}
| label33 = Total recipients
| data33 = {{{total_recipients|}}}
| label34 = {{longitem|{{{award1_type}}}}}
| data34 = {{#if:{{{award1_type|}}}|{{{award1_winner|}}}}}
| label35 = {{longitem|{{{award2_type}}}}}
| data35 = {{#if:{{{award2_type|}}}|{{{award2_winner|}}}}}
| label36 = {{longitem|{{{award3_type}}}}}
| data36 = {{#if:{{{award3_type|}}}|{{{award3_winner|}}}}}
| label37 = {{longitem|{{{award4_type}}}}}
| data37 = {{#if:{{{award4_type|}}}|{{{award4_winner|}}}}}
| label38 = {{longitem|{{{award5_type}}}}}
| data38 = {{#if:{{{award5_type|}}}|{{{award5_winner|}}}}}
| label39 = Website
| data39 = {{#invoke:WikidataIB |getValue |P856 |name=website |qid={{{qid|}}} |suppressfields={{{suppressfields|}}} |fetchwikidata={{if empty|{{{fetchwikidata|}}}|ALL}} |onlysourced={{if empty|{{{onlysourced|}}}|no}} |noicon={{{noicon|}}} | {{if empty|{{{website|}}}|{{{url|}}}}} }}
<!-- Film / television block -->
| header40 = {{#if:{{{network|}}}{{{network_list|}}}{{{runtime|}}}{{{ratings|}}}{{{producer|}}}{{{director|}}}|{{if empty|{{{coverage|}}}|Television/radio}} coverage}}
| label41 = {{#if:{{{network_list|}}}|Networks|Network}}
| data41 = {{#if:{{{network_list|}}}|<nowiki />|{{{network|}}}}}
| data42 = {{#if:{{{network_list|}}}|<div style="text-align: left; padding-left: 0.5em">
{{{network_list}}}</div>}}
| label43 = Runtime
| data43 = {{{runtime|}}}
| label44 = Viewership
| data44 = {{if empty|{{{viewership|}}}|{{{ratings|}}}}}
| label45 = Produced by
| data45 = {{{producer|}}}
| label46 = Directed by
| data46 = {{{director|}}}
<!-- End Film / television block -->
| header47 = {{#if:{{{image2|}}}|{{Infobox
| child = yes | decat = yes
| image = {{#invoke:InfoboxImage|InfoboxImage|image={{{image2|}}}|size={{{image2_size|}}}|sizedefault=frameless|upright={{if empty|{{{image_upright2|}}}|1}}|alt={{{alt2|}}}|class={{{image2_class|}}}}}
| caption = {{{caption2|}}}
}}}}
| header48 = {{#if:{{{higher|}}}{{{same|}}}{{{lower|}}}{{{individual|}}}|{{if empty|{{{precedence_label|}}}|Precedence}}}}
| label49 = Next (higher)
| data49 = {{{higher|}}}
| label50 = Equivalent
| data50 = {{{same|}}}
| label51 = {{longitem|Individual equivalent}}
| data51 = {{{individual|}}}
| label52 = Next (lower)
| data52 = {{{lower|}}}
| label53 = Related
| data53 = {{{related|}}}
| data55 = {{{module|}}}
| below = {{#if:{{{previous|}}}{{{main|}}}{{{next|}}}|
{{succession links|bullets=yes
| left = {{{previous|}}}
| center = {{{main|}}}
| right = {{{next|}}}
}}
}}
| belowclass = noprint nowrap
| belowstyle = border-top: 1px solid #000; padding-top: 5px; font-weight: bold;
| decat = {{#if:{{{previous|}}}{{{main|}}}{{{next|}}}|yes|no}}
}}{{#invoke:Check for unknown parameters|check|unknown={{main other|[[Category:Pages using infobox award with unknown parameters|_VALUE_{{PAGENAME}}]]}}|preview=Page using [[Template:Infobox award]] with unknown parameter "_VALUE_"|ignoreblank=y| acts | alt | alt2 | award1_type | award1_winner | award2_type | award2_winner | award3_type | award3_winner | award4_type | award4_winner | award5_type | award5_winner | awarded_for | awardname | campaign | caption | caption2 | clasps | country | coverage | current_awards | current_date | date | description | description | director | eligibility | established | fetchwikidata | final_award | firstawarded | former name | former_name | higher | holder | holder_label | host | hosts | image | image caption | image size | image_caption | image_size | image_upright | image_class | image_upright2 | image2 | image2_size | image2_class | imagesize | individual | lastawarded | location | lower | main | module | most_awards | most_nominations | most_wins | motto | name | native_name | network | network_list | next | next_awards | next_date | noicon | obverse | onlysourced | pending_awards | pending_date | post-nominals | precedence_label | presenter | preshow_host | previous | previous_awards | previous_date | producer | qid | ratings | related | reverse | reward | ribbon | runtime | same | site | sponsor | status | subheader | suppressfields | total_awarded | total_awarded_posthumously | total_recipients | type | url | venue | viewership | website | winner | winners | year | year2 }}{{#invoke:Check for conflicting parameters|check
| template = [[Template:Infobox award]]
| cat = {{main other|Category:Pages using infobox award with conflicting parameters}}
| image size; image_size; imagesize
| location; site
| host; hosts
| former name; former_name
| firstawarded; year
| lastawarded; year2
| holder; winner; winners
| most_wins; most_awards
| website; url
| viewership; ratings
}}<noinclude>
{{documentation}}</noinclude>
scxy1t87p66cymbpp71o7dno86g3izk
ಟೆಂಪ್ಲೇಟ್:Infobox award/doc
10
12534
370296
145216
2026-03-20T20:35:20Z
en>Andrybak
0
document new parameters `image_class` and `image2_class` introduced in [[Special:Diff/1344496193]]
370296
wikitext
text/x-wiki
{{Documentation subpage}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
{{High-use}}
{{auto short description|conditions=when the infobox is in the lead}}
{{Lua|Module:Infobox|Module:InfoboxImage|Module:Wikidata|Module:Check for unknown parameters}}
{{Uses Wikidata|P17|P18|P856|P1027}}
'''Infobox award''' may be used to summarize information about an award.
{{Parameter names example
| acts | alt | alt2 | award1_type | award1_winner | award2_type | award2_winner | award3_type | award3_winner | award4_type | award4_winner | award5_type | award5_winner | caption2 | country | coverage | date | description | director | fetchwikidata | higher | holder_label | image | image_upright | image_upright2 | image2 | image2_size | individual | lower | main | most_nominations | next | noicon | obverse | onlysourced | precedence_label | presenter | preshow_host | previous | producer | qid | related | reverse | reward | ribbon | runtime | same | sponsor | suppressfields | type | eligibility | campaign | status | description | motto | clasps | post-nominals | established | total_awarded | total_awarded_posthumously | total_recipients | awarded_for | native_name | module
| name = {{{name}}} or {{{awardname}}}
| previous_awards = {{{previous_awards}}} or {{{current_awards}}} or {{{subheader}}}
| previous_date = {{{previous_date}}} or {{{current_date}}}
| pending_awards = {{{pending_awards}}} or {{{next_awards}}}
| pending_date = {{{pending_date}}} or {{{next_date}}}
| imagesize = {{{image_size}}} or {{{image size}}} or {{{imagesize}}}
| caption = {{{image_caption}}} or {{{caption}}} or {{{image caption}}}
| venue = {{{venue}}} or {{{location}}} or {{{site}}}
| host = {{{host}}} or {{{hosts}}}
| former name = {{{former_name}}} or {{{former name}}}
| firstawarded = {{{firstawarded}}} or {{{year}}}
| final_award = {{{final_award}}} or {{{year2}}} or {{{lastawarded}}}
| holder = {{{holder}}} or {{{winner}}} or {{{winners}}}
| most_awards = {{{most_wins}}} or {{{most_awards}}}
| website = {{{website}}} or {{{url}}}
| network = {{{network}}} or {{{network_list}}}
| viewership = {{{viewership}}} or {{{ratings}}}
}}
==Usage==
The infobox may be added by pasting the template as shown below into an article. All fields are optional and unused parameter names can be left blank or omitted.
<syntaxhighlight lang="wikitext" style="overflow:auto; white-space:pre;">
{{Infobox award
| name = <!-- or | awardname = -->
| previous_awards = <!-- or | current_awards = or | subheader = -->
| previous_date = <!-- or | current_date = -->
| pending_awards = <!-- or | next_awards = -->
| pending_date = <!-- or | next_date = -->
| qid =
| suppressfields =
| fetchwikidata =
| image =
| image_size = <!-- or | image size = or | imagesize = or | image_upright = -->
| alt =
| image_caption = <!-- or | caption = or | image caption = -->
| native_name =
| type =
| awarded_for =
| description =
| sponsor =
| date =
| venue = <!-- or | location = or | site = -->
| onlysourced =
| noicon =
| country =
| presenter =
| eligibility =
| post-nominals =
| ribbon =
| obverse =
| reverse =
| host = <!-- or | hosts = -->
| former_name = <!-- or | former name = -->
| preshow_host =
| acts =
| campaign =
| motto =
| clasps =
| reward =
| status =
| established =
| firstawarded = <!-- or | year = -->
| final_award = <!-- or | year2 = or | lastawarded = -->
| holder_label =
| holder = <!-- or | winner = or | winners = -->
| most_wins = <!-- or | most_awards = -->
| most_nominations =
| total_awarded =
| total_awarded_posthumously =
| total_recipients =
| award1_type =
| award1_winner =
| award2_type =
| award2_winner =
| award3_type =
| award3_winner =
| award4_type =
| award4_winner =
| award5_type =
| award5_winner =
| website = <!-- or | url = -->
| coverage =
| network = <!-- or | network_list = -->
| runtime =
| viewership = <!-- or | ratings = -->
| producer =
| director =
| image2 =
| image2_size = <!-- or | image_upright2 = -->
| alt2 =
| caption2 =
| precedence_label =
| higher =
| same =
| individual =
| lower =
| related =
| module =
| previous =
| main =
| next =
}}
</syntaxhighlight>
==Parameters==
<templatedata>
{
"params": {
"name": {
"aliases": [
"awardname"
],
"description": "name of the award. Use the common name (typically the name of the article) if multiple names are used. If omitted or blank it defaults to the name of the article.",
"suggested": true
},
"previous_awards": {
"aliases": [
"current_awards",
"subheader"
],
"description": "the name of the article about the previous award ceremony, or anything else you'd like to use as a subheader. The previous_awards, previous_date, pending_awards (or next_awards), and pending_date (or next_date) fields are intended for use on articles for awards in general (like the Grammy Awards article) rather than articles for individual ceremonies (like the 51st Annual Grammy Awards article). Although articles for individual ceremonies might still have a subheader field. The subheader field doesn't have a heading and isn't automatically formatted as a link. If you use the previous_awards or current_awards fields, then they'll include a heading (either Previous: or Current:) and will automatically be formatted as a link (so you can omit the wikilinks \"[[]]\"). Normal piped links don't work with the automatic link formatting, but instead in this case you can substitute these five characters for a pipe: {{!}} . So for example, if you enter 51st Annual Grammy Awards{{!}}51st then it will link to 51st Annual Grammy Awards, but it will just display 51st",
"type": "wiki-page-name",
"suggested": true
},
"previous_date": {
"aliases": [
"current_date"
],
"description": "date of the previous/current award",
"type": "date",
"suggested": true
},
"pending_awards": {
"aliases": [
"next_awards"
],
"description": "the name of the article about the pending/next award ceremony. It'll include a heading (either Pending: or Next:) and will automatically be formatted as a link (so you can omit the wikilinks \"[[]]\").",
"type": "wiki-page-name",
"suggested": true
},
"pending_date": {
"aliases": [
"next_date"
],
"description": "date of the pending/next award",
"type": "date",
"suggested": true
},
"qid": {},
"suppressfields": {},
"fetchwikidata": {},
"image": {
"description": "file name (abc.jpg, xyz.png, 123.gif, etc.)",
"type": "wiki-file-name",
"suggested": true
},
"image_size": {
"aliases": [
"image size",
"imagesize"
],
"description": "these fields can be used to change the image size of image, as seen at WP:IMAGESIZE. Although it's recommended you use the image_upright field instead, since these fields disregard the user's image size preference setting"
},
"image_upright": {
"description": "if image_size is used, this field is bypassed, if it is not used, upright scaling factor for image",
"suggested": true
},
"alt": {
"description": "alt text for image, for visually impaired readers who cannot see it. See WP:ALT."
},
"image_caption": {
"aliases": [
"caption",
"image caption"
],
"description": "text for caption; rendered below image."
},
"native_name": {},
"type": {},
"awarded_for": {
"description": "a very brief, one sentence description of what the prize is awarded for (e.g. \"Excellence in film\")",
"suggested": true
},
"description": {},
"sponsor": {
"description": "the person, group or organisation that monetarily sponsors the award",
"suggested": true
},
"date": {
"description": "the date of the award ceremony. Use the {{tl|Start date}} template. This field is intended for use on articles for individual ceremonies (like the 51st Annual Grammy Awards article), rather than articles for awards in general (like the Grammy Awards article)."
},
"venue": {
"aliases": [
"location",
"site"
],
"description": "the venue where the award ceremony was held."
},
"onlysourced": {},
"noicon": {},
"country": {
"description": "the country of the presenter, or where the award is presented"
},
"presenter": {
"description": "the person, group, or organisation that presents the award"
},
"eligibility": {
"description": "those eligible for the award, if a restricted group"
},
"post-nominals": {
"description": "post-nominal letters associated with the award"
},
"ribbon": {
"description": "description of decorative ribbon associated with the award"
},
"obverse": {
"description": "description of the obverse of the associated medal, if any"
},
"reverse": {
"description": "description of the reverse of the associated medal, if any"
},
"host": {
"aliases": [
"hosts"
],
"description": "the person(s) who hosted the award ceremony."
},
"former_name": {
"aliases": [
"former name"
],
"description": "previous name of the award, if any"
},
"preshow_host": {
"description": "name of the pre-show host"
},
"acts": {
"description": "wikified names of acts scheduled to perform."
},
"campaign": {},
"motto": {},
"clasps": {},
"reward": {
"description": "prize money or medal accompanying the award"
},
"status": {},
"established": {},
"firstawarded": {
"aliases": [
"year"
],
"description": "the year that it was awarded for the first time. The firstawarded and final_award fields are intended for use on articles for awards in general (like the Grammy Awards article) rather than articles for individual ceremonies (like the 51st Annual Grammy Awards article).",
"type": "date"
},
"final_award": {
"aliases": [
"year2",
"lastawarded"
],
"description": "the year that it was awarded for the final time",
"type": "date"
},
"holder_label": {
"description": "optional, changes label for next field"
},
"holder": {
"aliases": [
"winner",
"winners"
],
"description": "current holder of the award (if applicable)"
},
"most_wins": {
"aliases": [
"most_awards"
],
"description": "nominee or series who/which has won the most awards"
},
"most_nominations": {
"description": "nominee or series who/which has had the most nominations"
},
"total_awarded": {},
"total_awarded_posthumously": {},
"total_recipients": {},
"award1_type": {
"description": "label for the 1st sub-award; see also the following field"
},
"award1_winner": {
"description": "winner of the 1st sub-award"
},
"award2_type": {
"description": "label for the 2nd sub-award; see also the following field"
},
"award2_winner": {
"description": "winner of the 2nd sub-award"
},
"award3_type": {
"description": "label for the 3rd sub-award; see also the following field"
},
"award3_winner": {
"description": "winner of the 3rd sub-award"
},
"award4_type": {
"description": "label for the 4th sub-award; see also the following field"
},
"award4_winner": {
"description": "winner of the 4th sub-award"
},
"award5_type": {
"description": "label for the 5th sub-award; see also the following field"
},
"award5_winner": {
"description": "winner of the 5th sub-award"
},
"website": {
"aliases": [
"url"
],
"description": "the award's official website. Use {{URL}}.",
"type": "url"
},
"coverage": {
"description": "to specify the type of coverage; defaults to \"Radio/television\""
},
"network": {
"aliases": [
"network_list"
],
"description": "the name of the television network which originally aired the award ceremony"
},
"runtime": {
"description": "the approximate runtime of the television airing (should not include commercials) in minutes, e.g. \"44 minutes\""
},
"viewership": {
"aliases": [
"ratings"
],
"description": "ratings figures for the television airing"
},
"producer": {
"description": "show's producer"
},
"director": {
"description": "show's director"
},
"image2": {
"description": "file name for bottom image if used, i.e. (abc.jpg, xyz.png, 123.gif, etc.)",
"type": "wiki-file-name",
"suggested": true
},
"image2_size": {
"description": "this field can be used to change the size of image2, as seen at WP:IMAGESIZE. Although it's recommended you use the image_upright2 field instead, since this field disregards the user's image size preference setting"
},
"image_upright2": {
"description": "if image2_size is used, this field is bypassed, if it is not used, upright scaling factor for image2",
"suggested": true
},
"alt2": {
"description": "alt text for image2, for visually impaired readers who cannot see it. See WP:ALT."
},
"caption2": {
"description": "text for caption; rendered below image2."
},
"precedence_label": {},
"higher": {},
"same": {},
"individual": {},
"lower": {},
"related": {},
"module": {
"description": "other templates can be embedded here"
},
"previous": {
"description": "for creating a chronology. Insert a link to the article of the previous edition of the award. Pipe the link to only show the year or edition number, e.g. [[50th Annual Grammy Awards|50th]]. The previous, main, and next fields are intended for use on articles for individual ceremonies (like the 51st Annual Grammy Awards article), rather than articles for awards in general (like the Grammy Awards article)."
},
"main": {
"description": "for creating a chronology. Insert the link to the award's main article, e.g. if this infobox was placed on 51st Annual Grammy Awards, the main article would be Grammy Awards."
},
"next": {
"description": "for creating a chronology. Insert a link to the article of the next edition of the award. Pipe the link to only show the year or edition number, e.g. [[52nd Annual Grammy Awards|52nd]]"
},
"image_class": {
"label": "Image CSS class",
"description": "CSS class for the image",
"type": "line",
"suggestedvalues": [
"skin-invert",
"skin-invert-image"
]
},
"image2_class": {
"label": "Second image class",
"description": "CSS class for the second image",
"type": "line",
"suggestedvalues": [
"skin-invert",
"skin-invert-image"
]
}
},
"description": "Used to summarize information about an award.",
"format": "block",
"paramOrder": [
"name",
"previous_awards",
"previous_date",
"pending_awards",
"pending_date",
"qid",
"suppressfields",
"fetchwikidata",
"image",
"image_size",
"image_upright",
"alt",
"image_caption",
"image_class",
"native_name",
"type",
"awarded_for",
"description",
"sponsor",
"date",
"venue",
"onlysourced",
"noicon",
"country",
"presenter",
"eligibility",
"post-nominals",
"ribbon",
"obverse",
"reverse",
"host",
"former_name",
"preshow_host",
"acts",
"campaign",
"motto",
"clasps",
"reward",
"status",
"established",
"firstawarded",
"final_award",
"holder_label",
"holder",
"most_wins",
"most_nominations",
"total_awarded",
"total_awarded_posthumously",
"total_recipients",
"award1_type",
"award1_winner",
"award2_type",
"award2_winner",
"award3_type",
"award3_winner",
"award4_type",
"award4_winner",
"award5_type",
"award5_winner",
"website",
"coverage",
"network",
"runtime",
"viewership",
"producer",
"director",
"image2",
"image2_size",
"image_upright2",
"alt2",
"caption2",
"image2_class",
"precedence_label",
"higher",
"same",
"individual",
"lower",
"related",
"module",
"previous",
"main",
"next"
]
}
</templatedata>
== Microformat ==
{{UF-hcal}}
== Tracking categories ==
{{Infobox tracking categories}}
== See also ==
* {{tl|Infobox order}}
* {{tl|Awards}}
{{Film- and television-related infobox templates}}
<includeonly>{{Sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Award infobox templates| ]]
[[Category:Infobox templates using Wikidata]]
[[Category:Templates that add a tracking category]]
}}</includeonly>
j45s7o8c6636xu0qyxsm4ck93078keo
370297
370296
2026-09-28T01:40:48Z
ChiK
1136
1 revision imported from [[:en:Template:Infobox_award/doc]]
370296
wikitext
text/x-wiki
{{Documentation subpage}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
{{High-use}}
{{auto short description|conditions=when the infobox is in the lead}}
{{Lua|Module:Infobox|Module:InfoboxImage|Module:Wikidata|Module:Check for unknown parameters}}
{{Uses Wikidata|P17|P18|P856|P1027}}
'''Infobox award''' may be used to summarize information about an award.
{{Parameter names example
| acts | alt | alt2 | award1_type | award1_winner | award2_type | award2_winner | award3_type | award3_winner | award4_type | award4_winner | award5_type | award5_winner | caption2 | country | coverage | date | description | director | fetchwikidata | higher | holder_label | image | image_upright | image_upright2 | image2 | image2_size | individual | lower | main | most_nominations | next | noicon | obverse | onlysourced | precedence_label | presenter | preshow_host | previous | producer | qid | related | reverse | reward | ribbon | runtime | same | sponsor | suppressfields | type | eligibility | campaign | status | description | motto | clasps | post-nominals | established | total_awarded | total_awarded_posthumously | total_recipients | awarded_for | native_name | module
| name = {{{name}}} or {{{awardname}}}
| previous_awards = {{{previous_awards}}} or {{{current_awards}}} or {{{subheader}}}
| previous_date = {{{previous_date}}} or {{{current_date}}}
| pending_awards = {{{pending_awards}}} or {{{next_awards}}}
| pending_date = {{{pending_date}}} or {{{next_date}}}
| imagesize = {{{image_size}}} or {{{image size}}} or {{{imagesize}}}
| caption = {{{image_caption}}} or {{{caption}}} or {{{image caption}}}
| venue = {{{venue}}} or {{{location}}} or {{{site}}}
| host = {{{host}}} or {{{hosts}}}
| former name = {{{former_name}}} or {{{former name}}}
| firstawarded = {{{firstawarded}}} or {{{year}}}
| final_award = {{{final_award}}} or {{{year2}}} or {{{lastawarded}}}
| holder = {{{holder}}} or {{{winner}}} or {{{winners}}}
| most_awards = {{{most_wins}}} or {{{most_awards}}}
| website = {{{website}}} or {{{url}}}
| network = {{{network}}} or {{{network_list}}}
| viewership = {{{viewership}}} or {{{ratings}}}
}}
==Usage==
The infobox may be added by pasting the template as shown below into an article. All fields are optional and unused parameter names can be left blank or omitted.
<syntaxhighlight lang="wikitext" style="overflow:auto; white-space:pre;">
{{Infobox award
| name = <!-- or | awardname = -->
| previous_awards = <!-- or | current_awards = or | subheader = -->
| previous_date = <!-- or | current_date = -->
| pending_awards = <!-- or | next_awards = -->
| pending_date = <!-- or | next_date = -->
| qid =
| suppressfields =
| fetchwikidata =
| image =
| image_size = <!-- or | image size = or | imagesize = or | image_upright = -->
| alt =
| image_caption = <!-- or | caption = or | image caption = -->
| native_name =
| type =
| awarded_for =
| description =
| sponsor =
| date =
| venue = <!-- or | location = or | site = -->
| onlysourced =
| noicon =
| country =
| presenter =
| eligibility =
| post-nominals =
| ribbon =
| obverse =
| reverse =
| host = <!-- or | hosts = -->
| former_name = <!-- or | former name = -->
| preshow_host =
| acts =
| campaign =
| motto =
| clasps =
| reward =
| status =
| established =
| firstawarded = <!-- or | year = -->
| final_award = <!-- or | year2 = or | lastawarded = -->
| holder_label =
| holder = <!-- or | winner = or | winners = -->
| most_wins = <!-- or | most_awards = -->
| most_nominations =
| total_awarded =
| total_awarded_posthumously =
| total_recipients =
| award1_type =
| award1_winner =
| award2_type =
| award2_winner =
| award3_type =
| award3_winner =
| award4_type =
| award4_winner =
| award5_type =
| award5_winner =
| website = <!-- or | url = -->
| coverage =
| network = <!-- or | network_list = -->
| runtime =
| viewership = <!-- or | ratings = -->
| producer =
| director =
| image2 =
| image2_size = <!-- or | image_upright2 = -->
| alt2 =
| caption2 =
| precedence_label =
| higher =
| same =
| individual =
| lower =
| related =
| module =
| previous =
| main =
| next =
}}
</syntaxhighlight>
==Parameters==
<templatedata>
{
"params": {
"name": {
"aliases": [
"awardname"
],
"description": "name of the award. Use the common name (typically the name of the article) if multiple names are used. If omitted or blank it defaults to the name of the article.",
"suggested": true
},
"previous_awards": {
"aliases": [
"current_awards",
"subheader"
],
"description": "the name of the article about the previous award ceremony, or anything else you'd like to use as a subheader. The previous_awards, previous_date, pending_awards (or next_awards), and pending_date (or next_date) fields are intended for use on articles for awards in general (like the Grammy Awards article) rather than articles for individual ceremonies (like the 51st Annual Grammy Awards article). Although articles for individual ceremonies might still have a subheader field. The subheader field doesn't have a heading and isn't automatically formatted as a link. If you use the previous_awards or current_awards fields, then they'll include a heading (either Previous: or Current:) and will automatically be formatted as a link (so you can omit the wikilinks \"[[]]\"). Normal piped links don't work with the automatic link formatting, but instead in this case you can substitute these five characters for a pipe: {{!}} . So for example, if you enter 51st Annual Grammy Awards{{!}}51st then it will link to 51st Annual Grammy Awards, but it will just display 51st",
"type": "wiki-page-name",
"suggested": true
},
"previous_date": {
"aliases": [
"current_date"
],
"description": "date of the previous/current award",
"type": "date",
"suggested": true
},
"pending_awards": {
"aliases": [
"next_awards"
],
"description": "the name of the article about the pending/next award ceremony. It'll include a heading (either Pending: or Next:) and will automatically be formatted as a link (so you can omit the wikilinks \"[[]]\").",
"type": "wiki-page-name",
"suggested": true
},
"pending_date": {
"aliases": [
"next_date"
],
"description": "date of the pending/next award",
"type": "date",
"suggested": true
},
"qid": {},
"suppressfields": {},
"fetchwikidata": {},
"image": {
"description": "file name (abc.jpg, xyz.png, 123.gif, etc.)",
"type": "wiki-file-name",
"suggested": true
},
"image_size": {
"aliases": [
"image size",
"imagesize"
],
"description": "these fields can be used to change the image size of image, as seen at WP:IMAGESIZE. Although it's recommended you use the image_upright field instead, since these fields disregard the user's image size preference setting"
},
"image_upright": {
"description": "if image_size is used, this field is bypassed, if it is not used, upright scaling factor for image",
"suggested": true
},
"alt": {
"description": "alt text for image, for visually impaired readers who cannot see it. See WP:ALT."
},
"image_caption": {
"aliases": [
"caption",
"image caption"
],
"description": "text for caption; rendered below image."
},
"native_name": {},
"type": {},
"awarded_for": {
"description": "a very brief, one sentence description of what the prize is awarded for (e.g. \"Excellence in film\")",
"suggested": true
},
"description": {},
"sponsor": {
"description": "the person, group or organisation that monetarily sponsors the award",
"suggested": true
},
"date": {
"description": "the date of the award ceremony. Use the {{tl|Start date}} template. This field is intended for use on articles for individual ceremonies (like the 51st Annual Grammy Awards article), rather than articles for awards in general (like the Grammy Awards article)."
},
"venue": {
"aliases": [
"location",
"site"
],
"description": "the venue where the award ceremony was held."
},
"onlysourced": {},
"noicon": {},
"country": {
"description": "the country of the presenter, or where the award is presented"
},
"presenter": {
"description": "the person, group, or organisation that presents the award"
},
"eligibility": {
"description": "those eligible for the award, if a restricted group"
},
"post-nominals": {
"description": "post-nominal letters associated with the award"
},
"ribbon": {
"description": "description of decorative ribbon associated with the award"
},
"obverse": {
"description": "description of the obverse of the associated medal, if any"
},
"reverse": {
"description": "description of the reverse of the associated medal, if any"
},
"host": {
"aliases": [
"hosts"
],
"description": "the person(s) who hosted the award ceremony."
},
"former_name": {
"aliases": [
"former name"
],
"description": "previous name of the award, if any"
},
"preshow_host": {
"description": "name of the pre-show host"
},
"acts": {
"description": "wikified names of acts scheduled to perform."
},
"campaign": {},
"motto": {},
"clasps": {},
"reward": {
"description": "prize money or medal accompanying the award"
},
"status": {},
"established": {},
"firstawarded": {
"aliases": [
"year"
],
"description": "the year that it was awarded for the first time. The firstawarded and final_award fields are intended for use on articles for awards in general (like the Grammy Awards article) rather than articles for individual ceremonies (like the 51st Annual Grammy Awards article).",
"type": "date"
},
"final_award": {
"aliases": [
"year2",
"lastawarded"
],
"description": "the year that it was awarded for the final time",
"type": "date"
},
"holder_label": {
"description": "optional, changes label for next field"
},
"holder": {
"aliases": [
"winner",
"winners"
],
"description": "current holder of the award (if applicable)"
},
"most_wins": {
"aliases": [
"most_awards"
],
"description": "nominee or series who/which has won the most awards"
},
"most_nominations": {
"description": "nominee or series who/which has had the most nominations"
},
"total_awarded": {},
"total_awarded_posthumously": {},
"total_recipients": {},
"award1_type": {
"description": "label for the 1st sub-award; see also the following field"
},
"award1_winner": {
"description": "winner of the 1st sub-award"
},
"award2_type": {
"description": "label for the 2nd sub-award; see also the following field"
},
"award2_winner": {
"description": "winner of the 2nd sub-award"
},
"award3_type": {
"description": "label for the 3rd sub-award; see also the following field"
},
"award3_winner": {
"description": "winner of the 3rd sub-award"
},
"award4_type": {
"description": "label for the 4th sub-award; see also the following field"
},
"award4_winner": {
"description": "winner of the 4th sub-award"
},
"award5_type": {
"description": "label for the 5th sub-award; see also the following field"
},
"award5_winner": {
"description": "winner of the 5th sub-award"
},
"website": {
"aliases": [
"url"
],
"description": "the award's official website. Use {{URL}}.",
"type": "url"
},
"coverage": {
"description": "to specify the type of coverage; defaults to \"Radio/television\""
},
"network": {
"aliases": [
"network_list"
],
"description": "the name of the television network which originally aired the award ceremony"
},
"runtime": {
"description": "the approximate runtime of the television airing (should not include commercials) in minutes, e.g. \"44 minutes\""
},
"viewership": {
"aliases": [
"ratings"
],
"description": "ratings figures for the television airing"
},
"producer": {
"description": "show's producer"
},
"director": {
"description": "show's director"
},
"image2": {
"description": "file name for bottom image if used, i.e. (abc.jpg, xyz.png, 123.gif, etc.)",
"type": "wiki-file-name",
"suggested": true
},
"image2_size": {
"description": "this field can be used to change the size of image2, as seen at WP:IMAGESIZE. Although it's recommended you use the image_upright2 field instead, since this field disregards the user's image size preference setting"
},
"image_upright2": {
"description": "if image2_size is used, this field is bypassed, if it is not used, upright scaling factor for image2",
"suggested": true
},
"alt2": {
"description": "alt text for image2, for visually impaired readers who cannot see it. See WP:ALT."
},
"caption2": {
"description": "text for caption; rendered below image2."
},
"precedence_label": {},
"higher": {},
"same": {},
"individual": {},
"lower": {},
"related": {},
"module": {
"description": "other templates can be embedded here"
},
"previous": {
"description": "for creating a chronology. Insert a link to the article of the previous edition of the award. Pipe the link to only show the year or edition number, e.g. [[50th Annual Grammy Awards|50th]]. The previous, main, and next fields are intended for use on articles for individual ceremonies (like the 51st Annual Grammy Awards article), rather than articles for awards in general (like the Grammy Awards article)."
},
"main": {
"description": "for creating a chronology. Insert the link to the award's main article, e.g. if this infobox was placed on 51st Annual Grammy Awards, the main article would be Grammy Awards."
},
"next": {
"description": "for creating a chronology. Insert a link to the article of the next edition of the award. Pipe the link to only show the year or edition number, e.g. [[52nd Annual Grammy Awards|52nd]]"
},
"image_class": {
"label": "Image CSS class",
"description": "CSS class for the image",
"type": "line",
"suggestedvalues": [
"skin-invert",
"skin-invert-image"
]
},
"image2_class": {
"label": "Second image class",
"description": "CSS class for the second image",
"type": "line",
"suggestedvalues": [
"skin-invert",
"skin-invert-image"
]
}
},
"description": "Used to summarize information about an award.",
"format": "block",
"paramOrder": [
"name",
"previous_awards",
"previous_date",
"pending_awards",
"pending_date",
"qid",
"suppressfields",
"fetchwikidata",
"image",
"image_size",
"image_upright",
"alt",
"image_caption",
"image_class",
"native_name",
"type",
"awarded_for",
"description",
"sponsor",
"date",
"venue",
"onlysourced",
"noicon",
"country",
"presenter",
"eligibility",
"post-nominals",
"ribbon",
"obverse",
"reverse",
"host",
"former_name",
"preshow_host",
"acts",
"campaign",
"motto",
"clasps",
"reward",
"status",
"established",
"firstawarded",
"final_award",
"holder_label",
"holder",
"most_wins",
"most_nominations",
"total_awarded",
"total_awarded_posthumously",
"total_recipients",
"award1_type",
"award1_winner",
"award2_type",
"award2_winner",
"award3_type",
"award3_winner",
"award4_type",
"award4_winner",
"award5_type",
"award5_winner",
"website",
"coverage",
"network",
"runtime",
"viewership",
"producer",
"director",
"image2",
"image2_size",
"image_upright2",
"alt2",
"caption2",
"image2_class",
"precedence_label",
"higher",
"same",
"individual",
"lower",
"related",
"module",
"previous",
"main",
"next"
]
}
</templatedata>
== Microformat ==
{{UF-hcal}}
== Tracking categories ==
{{Infobox tracking categories}}
== See also ==
* {{tl|Infobox order}}
* {{tl|Awards}}
{{Film- and television-related infobox templates}}
<includeonly>{{Sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Award infobox templates| ]]
[[Category:Infobox templates using Wikidata]]
[[Category:Templates that add a tracking category]]
}}</includeonly>
j45s7o8c6636xu0qyxsm4ck93078keo
ಮೋಡ್ಯೂಲ್:Navbox/styles.css
828
13025
370288
364710
2026-09-27T20:46:50Z
en>Izno
0
please test and verify your changes before adding to a page deployed this far. notably, your large copy-paste error here
360648
sanitized-css
text/css
/* {{pp|small=y}} */
.navbox {
box-sizing: border-box;
border: 1px solid #a2a9b1;
width: 100%;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
margin: 1em auto 0; /* Prevent preceding content from clinging to navboxes */
}
.navbox .navbox {
margin-top: 0; /* No top margin for nested navboxes */
}
.navbox + .navbox-styles + .navbox,
/* category positions are wrapped in an "empty" span in Parsoid [[phab:T378906]] */
.navbox + span.mw-empty-elt + .navbox-styles + .navbox {
margin-top: -1px; /* Single pixel border between adjacent navboxes */
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox-group,
.navbox-title,
.navbox-abovebelow {
padding: 0.25em 1em;
line-height: 1.5em;
text-align: center;
}
.navbox-group {
white-space: nowrap;
/* @noflip */
text-align: right;
}
.navbox,
.navbox-subgroup {
background-color: #fdfdfd;
color:inherit;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
}
.navbox-list-with-group {
text-align: left;
border-left-width: 2px;
border-left-style: solid;
}
/* cell spacing for navbox cells */
/* Borders above 2nd, 3rd, etc. rows */
/* TODO: figure out how to replace tr as structure;
* with div structure it should be just a matter of first-child */
tr + tr > .navbox-abovebelow,
tr + tr > .navbox-group,
tr + tr > .navbox-image,
tr + tr > .navbox-list {
border-top: 2px solid #fdfdfd; /* Must match background color */
}
.navbox-title {
background-color: #ccf; /* Level 1 color */
color:inherit;
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
background-color: #ddf; /* Level 2 color */
color:inherit;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
background-color: #e6e6ff; /* Level 3 color */
color:inherit;
}
.navbox-even {
background-color: #f7f7f7;
color:inherit;
}
.navbox-odd {
background-color: transparent;
color:inherit;
}
/* TODO: figure out how to remove reliance on td as structure */
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
padding: 0.125em 0;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
/** T367463 */
body.skin--responsive .navbox-image img {
max-width: none !important;
}
@media print {
body.ns-0 .navbox {
display: none !important;
}
}
ku94g873nj9xaasowc6yies69ls74c5
370289
370288
2026-09-28T01:40:47Z
ChiK
1136
1 revision imported from [[:en:Module:Navbox/styles.css]]
360648
sanitized-css
text/css
/* {{pp|small=y}} */
.navbox {
box-sizing: border-box;
border: 1px solid #a2a9b1;
width: 100%;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
margin: 1em auto 0; /* Prevent preceding content from clinging to navboxes */
}
.navbox .navbox {
margin-top: 0; /* No top margin for nested navboxes */
}
.navbox + .navbox-styles + .navbox,
/* category positions are wrapped in an "empty" span in Parsoid [[phab:T378906]] */
.navbox + span.mw-empty-elt + .navbox-styles + .navbox {
margin-top: -1px; /* Single pixel border between adjacent navboxes */
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox-group,
.navbox-title,
.navbox-abovebelow {
padding: 0.25em 1em;
line-height: 1.5em;
text-align: center;
}
.navbox-group {
white-space: nowrap;
/* @noflip */
text-align: right;
}
.navbox,
.navbox-subgroup {
background-color: #fdfdfd;
color:inherit;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
}
.navbox-list-with-group {
text-align: left;
border-left-width: 2px;
border-left-style: solid;
}
/* cell spacing for navbox cells */
/* Borders above 2nd, 3rd, etc. rows */
/* TODO: figure out how to replace tr as structure;
* with div structure it should be just a matter of first-child */
tr + tr > .navbox-abovebelow,
tr + tr > .navbox-group,
tr + tr > .navbox-image,
tr + tr > .navbox-list {
border-top: 2px solid #fdfdfd; /* Must match background color */
}
.navbox-title {
background-color: #ccf; /* Level 1 color */
color:inherit;
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
background-color: #ddf; /* Level 2 color */
color:inherit;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
background-color: #e6e6ff; /* Level 3 color */
color:inherit;
}
.navbox-even {
background-color: #f7f7f7;
color:inherit;
}
.navbox-odd {
background-color: transparent;
color:inherit;
}
/* TODO: figure out how to remove reliance on td as structure */
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
padding: 0.125em 0;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
/** T367463 */
body.skin--responsive .navbox-image img {
max-width: none !important;
}
@media print {
body.ns-0 .navbox {
display: none !important;
}
}
ku94g873nj9xaasowc6yies69ls74c5
ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ ಪತ್ರಾಗಾರೊ/2019
4
13563
370345
280358
2026-09-28T07:39:43Z
ChiK
1136
370345
wikitext
text/x-wiki
== ಕಜ್ಜಕೊಟ್ಯ ==
* ಉಂದುವೆ ಜನವರಿ ತಿಂಗೊಲು ೧೯-೨೦, ೨೦೧೯ ದಾನಿ ಕುಕ್ಕೇಶ್ರೀ ಸುಬ್ರಹ್ಮಣ್ಯೇಶ್ವರ ಪದವಿ ಕಾಲೇಜು, ಸುಬ್ರಹ್ಮಣ್ಯೊಡ್ ಒಂಜಿ ಲೇಸ್ ನಡಪ್ಪಾಯರ ಉಂಡು. [[ವಿಕಿಪೀಡಿಯ:ಕಜ್ಜಕೊಟ್ಯ-೨೩|ವಿವರೊ ಮುಲುಂಡು]].
* ಬರ್ಪಿ ಪೆಬ್ರವರಿ ತಿಂಗೊಲು ೦೨-೦೩, ೨೦೧೯ ದಾನಿ ನೆಹರು ಮೆಮೋರಿಯಲ್ ಕಾಲೇಜು ಸುಳ್ಯೊಡ್ ಒಂಜಿ ಲೇಸ್ ನಡಪ್ಪಾಯರ ಉಂಡು. [[ವಿಕಿಪೀಡಿಯ:ಕಜ್ಜಕೊಟ್ಯ-೨೨|ಅಯಿನ ವಿವರೊ ಮುಲುಂಡು]]--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೭:೩೮, ೩ ಜನವರಿ ೨೦೧೯ (IST)
== Call for bids to host Train-the-Trainer 2019 ==
''Apologies for writing in English, please consider translating the message''
Hello everyone,
This year CIS-A2K is seeking expressions of interest from interested communities in India for hosting the Train-the-Trainer 2019.
Train-the-Trainer or TTT is a residential training program which attempts to groom leadership skills among the Indian Wikimedia community (including English) members. Earlier TTT has been conducted in 2013, 2015, 2016, 2017 and 2018.
If you're interested in hosting the program, Following are the per-requests to propose a bid:
* Active local community which is willing to support conducting the event
** At least 4 Community members should come together and propose the city. Women Wikimedians in organizing team is highly recommended.
* The city should have at least an International airport.
* Venue and accommodations should be available for the event dates.
** Participants size of TTT is generally between 20-25.
** Venue should have good Internet connectivity and conference space for the above-mentioned size of participants.
* Discussion in the local community.
Please learn more about the [[:m:CIS-A2K/Events/Train the Trainer Program|Train-the-Trainer program]] and to submit your proposal please visit [[:m:CIS-A2K/Events/Train the Trainer Program/2019/Bids|this page]]. Feel free to [[m:Special:EmailUser/Pavan Santhosh (CIS-A2K)|reach]] to me for more information or email tito{{@}}cis-india.org
Best!
[[User:Pavan Santhosh (CIS-A2K)|Pavan Santhosh]] ( [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೧:೨೨, ೬ ಜನವರಿ ೨೦೧೯ (IST) )
<!-- Message sent by User:Saileshpat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=17298203 -->
== Temporary admin rights for adding gadgets ==
<s>
Hello I am AnoopZ you may probably know me by previous user name - [[User:Anoop Rao]] ,as per above request to add some gadgets, I would like to request temporary admin rights for 3days.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೨:೦೬, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}-[[ಬಳಕೆದಾರೆ:Vikashegde|Vikashegde]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vikashegde|ಪಾತೆರ್ಲೆ]]) ೧೨:೧೩, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
* {{support}} --[[ಬಳಕೆದಾರೆ:Gopala Krishna A|Gopala Krishna A]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Gopala Krishna A|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೩, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}} --[[ಬಳಕೆದಾರೆ:Ananth subray|Ananth subray]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ananth subray|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೪, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೩:೧೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:BENET G AMANNA|BENET G AMANNA]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BENET G AMANNA|ಪಾತೆರ್ಲೆ]]) ೧೩:೫೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Durga bhat bollurodi|Durga bhat bollurodi]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Durga bhat bollurodi|ಪಾತೆರ್ಲೆ]]) ೧೬:೧೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Pranavshivakumar|Pranavshivakumar]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pranavshivakumar|ಪಾತೆರ್ಲೆ]]) ೧೭:೦೧, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೮, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
*{{support}}--[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೧೭:೦೨, ೨೫ ಜನವರಿ ೨೦೧೯ (IST). Welcome Anoop. Please look into and resolve the bugs in tcy templates like Infobox:settlement,mbox etc. Maybe template file autotranslate need to be imported for this.
</s>
above request will be completed by stewards.@[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] i will look into templates, there is no auto translate scripts in my knowledge it should be done manually.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೮:೧೨, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
@ [[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]. Please check up the missing map link in an example like the following:
https://tcy.wikipedia.org/wiki/ಮುಂಡ್ಕೂರು. [[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೭:೩೮, ೨೯ ಜನವರಿ ೨೦೧೯ (IST).
Further:
Resource for "autotranslate" is here:
https://commons.wikimedia.org/wiki/Template:Autotranslate. [[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೭:೫೯, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
:I have imported Template:Autotranslate from Commons. It need not be translated as per its documentation. It uses Module:Autotranslate. There is a dangerous possibility of recursive calling and hence should be used with care.-[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೧೭, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
== ಟೆಂಪ್ಲೇಟ್ ==
ಇತ್ತೆ ನಮ ಏತ್ ಟೆಂಪ್ಲೇಟ್ ಬಲಕೆ ಮಾಲ್ಪೊಲಿ. ಅಯಿನ ಪಟ್ಟಿ ಕೊರ್ಂಟಾ ಎಡ್ಡೆ ಇತ್ತ್ಂಡ್.ಅನುವಾದ ಅಯಿನ ಟೆಂಪ್ಲೇಟ್ ಪಟ್ಟಿ ಕೊರ್ಲೆ.ತುಳು ವಿಕಿಪೀಡಿಯ ಗ್ ಬಾರಿ ಕಮ್ಮಿ ಉಂಡು ಅನುವಾದ ಅಯಿನ ಟೆಂಪ್ಲೇಟ್ ನಾಣ ದುಂಬುಗು ಬಲಕೆ ಮಾಲ್ಪಿಯರ ಪಟ್ಟಿ ಇತ್ತ್ಂಟಾ ಎಡ್ಡೆ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೨೩, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
== Gadgets ಅಮದ್ ಮಾಲ್ತ್ ಕೊರ್ಲೆ ==
#ProveIt
#:{{done}} needs admin to put translated label in [[Mediawiki:Gadget-ProveIt]] and check that it is functioning [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೭, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
#UTCLiveClock
#:{{done}} needs admin to put translated label in [[Mediawiki:Gadget-UTCLiveClock]] [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#exlinks
#:{{done}} plese check, also needs translated labels [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#PrintOptions
#:{{done}} plese check, also needs translated labels [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#refToolbar
#:{{not done}} customised for enWP; won't import nicely, and would need code changes. Better for locals to add to personal common.js the required subpart [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#ImageAnnotator
#:{{not done}} as you don't have local uploads, annotations are better made at Commons with that tool [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#Twinkle
#:{{not done}} this is a complex beast and for the work here it is overkill [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೭, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
#Navigation_popups
#:already in place, needs admin to put tcy label in [[ಮಾದ್ಯಮೊ ವಿಕಿ:Gadget-Navigation popups/tcy]], or provide some text and ping me [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
::I am an admin. Please let me know what exactly needs to be done.-[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೭:೫೪, ೨೮ ಜನವರಿ ೨೦೧೯ (IST)
#GoogleTrans
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#citations
#: {{not done}} enWP tool only
#XTools-ArticleInfo
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#CommentsInLocalTime
#:{{done}} needs translation [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]])
#Reference Tooltips
#: {{not done}} tips in English, users would be better loading script through their personal common.js
#markAdmins
#:{{not done}} manually contained list required, and insufficient rightsholders to add value to this wiki
ಇತ್ Gadgets ತುಳು ವಿಕಿಗ್ ಬೊಡಾಪುಂಡು--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೧:೨೭, ೨೪ ಜನವರಿ ೨೦೧೯ (IST)
::above request will be completed by stewards.<span style="background: linear-gradient(to right, #D1DBCB, ivory, #F3F3EA); letter-spacing: 1.5px;">[[User:AnoopZ|★ Ano]][[User talk:AnoopZ|op✉]]</span> ೧೮:೧೨, ೨೬ ಜನವರಿ ೨೦೧೯ (IST)
{{comment}} see above. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೧೯:೦೫, ೨೬ ಜನವರಿ ೨೦೧೯ (IST) <small>(global systop, not steward)</small>
[[user:Pavanaja|Pavanaja]] I have installed the gadgets identified above, and put in place EN language descriptions, what needs to now be done is to put in TCY language descriptions. You can get a listing at [[Special:Gadgets]] and [[ವಿಸೇಸೊ:PrefixIndex/Mediawiki:]] though for you.
[[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೫:೦೪, ೨೯ ಜನವರಿ ೨೦೧೯ (IST)
{| border=1
!Gadget!!EN!!TCY
|-
|CommentsInLocalTime||[[Mediawiki:Gadget-CommentsInLocalTime/en]]||[[Mediawiki:Gadget-CommentsInLocalTime/tcy]]
|-
|GoogleTrans||[[Mediawiki:Gadget-GoogleTrans/en]]||[[Mediawiki:Gadget-GoogleTrans/tcy]]
|-
|HotCat||[[Mediawiki:Gadget-HotCat/en]]||[[Mediawiki:Gadget-HotCat/tcy]]
|-
|popups||[[Mediawiki:Gadget-Navigation popups/en]]||[[Mediawiki:Gadget-Navigation popups/tcy]]
|-
|PrintOptions||[[Mediawiki:Gadget-PrintOptions/en]]||[[Mediawiki:Gadget-PrintOptions/tcy]]
|-
|ProveIt||[[Mediawiki:Gadget-ProveIt/en]]||[[Mediawiki:Gadget-ProveIt/tcy]]
|-
|UTCLiveClock||[[Mediawiki:Gadget-UTCLiveClock/en]]||[[Mediawiki:Gadget-UTCLiveClock/tcy]]
|-
|XTools-ArticleInfo||[[Mediawiki:Gadget-XTools-ArticleInfo/en]]||[[Mediawiki:Gadget-XTools-ArticleInfo/tcy]]
|-
|exlinks||[[Mediawiki:Gadget-exlinks/en]]||[[Mediawiki:Gadget-exlinks/tcy]]
|-
|refToolbar||[[Mediawiki:Gadget-refToolbar/en]]||[[Mediawiki:Gadget-refToolbar/tcy]]
|}
I have watched the page for a few days in case of questions, and nwo will stop that active watch. If there are questions, then please [[mw:Manual:Echo|ping me]] directly and I will address them then. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೬:೫೮, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
:[[user:Lokesha kunchadka|Lokesha kunchadka]] you may wish to check whether the added gadgets work for you. [[ಬಳಕೆದಾರೆ:Billinghurst|Billinghurst]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Billinghurst|ಪಾತೆರ್ಲೆ]]) ೦೬:೫೯, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
::Thanks--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೨೫, ೩೧ ಜನವರಿ ೨೦೧೯ (IST)
== ಬೇತೆ ಬೇತೆ ವಿಸಯೊಳೆನ ಕಜ್ಜಕೊಟ್ಯ ==
ಬೇತೆ ಬೇತೆ ವಿಸಯೊಲು, ಪೊಂಜೊಳೆನ ವಿಸಯೊಲು ಬೊಕ್ಕ ಪೊಂಜೊಳೆನ್ ಸೇರಾಪುನೆ -ಇಂದೆಕ್ ಬೋಡಾದ್ ಕಜ್ಜಕೊಟ್ಯ ನಡಪ್ಪಾಯೆರೆ ಕಾಸ್ಗ್ ಬೋಡಾದ್ [https://meta.wikimedia.org/wiki/Grants:Project/Rapid/Dhanalakshmi_.K._T/Diversity_editathons_2019 ಅರ್ಜಿ ಪಾಡ್ದೆ]. ಅಯಿನ್ ಓದ್ದ್ ಇರೆನ್ ಸಲಹೆ ಇತ್ತ್ಂಡ ದೀವೊಡ್ ಬೊಕ್ಕ ಅಯಿಕ್ ಸಪೋರ್ಟ್ ಮಲ್ಪೊಡ್ಂದ್ ಕೇಂಡೊಣ್ವೆ--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೨:೫೬, ೧೪ ಮಾರ್ಚಿ ೨೦೧೯ (IST)
== Train-the-Trainer 2019 Application open ==
''Apologies for writing in English, please consider translating''<br>
Hello,<br>
It gives us great pleasure to inform that the Train-the-Trainer (TTT) 2019 programme organised by CIS-A2K is going to be held from 31 May, 1 & 2 June 2019.
'''What is TTT?'''<br>
Train the Trainer or TTT is a residential training program. The program attempts to groom leadership skills among the Indian Wikimedia community members. Earlier TTT has been conducted in 2013, 2015, 2016, 2017 and 2018.
'''Who should apply?'''<br>
* Any active Wikimedian contributing to any Indic language Wikimedia project (including English) is eligible to apply.
* An editor must have 600+ edits on Zero-namespace till 31 March 2019.
* Anyone who has the interest to conduct offline/real-life Wiki events.
* Note: anyone who has already participated in an earlier iteration of TTT, cannot apply.
Please '''[[:m:CIS-A2K/Events/Train the Trainer Program/2019|learn more]]''' about this program and apply to participate or encourage the deserving candidates from your community to do so. Regards. -- [[User:Tito (CIS-A2K)|Tito (CIS-A2K)]], sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೦:೩೭, ೨೬ ಎಪ್ರಿಲ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=17298203 -->
== Wikimedia Education SAARC conference application is now open ==
''Apologies for writing in English, please consider translating''<br/>
Greetings from CIS-A2K,<br/>
The Wikimedia Education SAARC conference will take place on 20-22 June 2019. Wikimedians from Indian, Sri Lanka, Bhutan, Nepal, Bangladesh and Afghanistan can apply for the scholarship. This event will take place at [https://goo.gl/maps/EkNfU7FTqAz5Hf977 Christ University], Bangalore.
'''Who should apply?'''<br>
*Any active contributor to a Wikimedia project, or Wikimedia volunteer in any other capacity, from the South Asian subcontinent is eligible to apply
* An editor must have 1000+ edits before 1 May 2019.
* Anyone who has the interest to conduct offline/real-life Wikimedia Education events.
*Activity within the Wikimedia movement will be the main criteria for evaluation. Participation in non-Wikimedia free knowledge, free software, collaborative or educational initiatives, working with institutions is a plus.
Please '''[[:m:Wikimedia_Education_SAARC_conference/Registration|know more]]''' about this program and apply to participate or encourage the deserving candidates from your community to do so. Regards.[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೨೪, ೧೧ ಮೇ ೨೦೧೯ (IST)
<!-- Message sent by User:Saileshpat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19091276 -->
== CIS-A2K: 3 Work positions open ==
Hello,<br>Greetings for CIS-A2K. We want to inform you that 3 new positions are open at this moment.
* Communication officer: (staff position) The person will work on CIS-A2K's blogs, reports, newsletters, social media activities, and over-all CIS-A2K general communication. The last date of application is 4 June 2019.
* Wikidata consultant: (consultant position), The person will work on CIS-A2K's Wikidata plan, and will support and strengthen Wikidata community in India. The last date of application is 31 May 2019
* Project Tiger co-ordinatorː (consultant position) The person will support Project tiger related communication, documentation and coordination, Chromebook disbursal, internet support etc. The last date of application is 7 June 2019.
'''For details about these opportunities please see [[:m:CIS-A2K/Team/Join|here]]'''. <small>-- [[User:Tito (CIS-A2K)|Tito (CIS-A2K)]], sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೫:೩೨, ೨೨ ಮೇ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯ ಕಾರ್ಯಕ್ರಮಕ್ಕೆ ಅರ್ಜಿ ಸಲ್ಲಿಸಲಾಗಿದೆ ==
ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯ ಸಂಪಾದನೋತ್ಸವ ಮತ್ತು ವಿಕಿಪೀಡಿಯ ಬಳಕೆಯ ಕುರಿತು ಇತರ ಕಾಲೇಜುಗಳಲ್ಲಿ ನಡೆಸಲು ಹಣಕಾಸಿನ ನೆರವಿಗಾಗಿ ಅರ್ಜಿಯನ್ನು ವಿಕಿಮೀಡಿಯ ಫೌಂಡೇಶನ್ ಗೆ ಸಲ್ಲಿಸಲಾಗಿದೆ. ಈ ಕಾರ್ಯಕ್ರಮವನ್ನು ಅಳ್ವಾಸ್ ವಿಕಿಪೀಡಿಯ ಅಸೋಸಿಯೇಷನ್ ಮೂಲಕ ನಡೆಸಲಾಗುವುದು.ನಾನು ಸಲ್ಲಿಸಿದ ಅರ್ಜಿಯನ್ನು ಬೆಂಬಲಿಸಬೇಕಾಗಿ ತಮ್ಮಲ್ಲಿ ಕೋರಿಕೆ ಲಿಂಕ್[https://meta.wikimedia.org/wiki/Grants:Project/Rapid/Lokesha_Kunchadka/Semister_Program_in_Alvas,_Kannada_and_Tulu_Wikipedia ಇಲ್ಲಿದೆ] .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೦:೩೩, ೨ ಜೂನ್ ೨೦೧೯ (IST)
== Wikidata Bridge: edit Wikidata’s data from Wikipedia infoboxes ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''Sorry for writing this message in English - feel free to help us translating it :)''
Hello all,
Many language versions of Wikipedia use the content of [[Wikidata]], the centralized knowledge base, to fill out the content of infoboxes. The data is stored in Wikidata and displayed, partially or completely, in the Wikipedia’s language, on the articles.
This feature is used by many template editors, but brought several issues that were raised by communities in various places: not being able to edit the data directly from Wikipedia was one of them.
This is the reason why the '''[[mw:Wikidata Bridge|Wikidata Bridge]]''' project started, with the goal of offering a way to Wikipedia editors to edit Wikidata’s data more easily. This will be achieved by an interface, connected to the infobox, that users can access directly from their local wiki.
The project is now at an early stage of development. A lot of [[mw:Wikidata_Bridge/Research|user research]] has been done, and will continue to be done through the different phases of the project. The next steps of [[mw:Wikidata_Bridge/Development|development]] will be achieved by the development team working at Wikimedia Deutschland, starting now until the end of 2019.
In order to make sure that we’re building a tool that is answering editors’ needs, we’re using agile methods in our development process. We don’t start with a fixed idea of the tool we want to deliver: we will build it together with the editors, based on feedback loops that we will regularly organize. The first version will not necessarily have all of the features you want, but it will keep evolving.
Here’s the planned timeline:
* From June to August, we will build the setup and technical groundwork.
* From September to November 2019, we will develop the first version of the feature and publish a test system so you can try it and give feedback.
* Later on, we will test the feature on a few projects, in collaboration with the communities.
** We will first focus on early adopters communities who already implemented a shortcut from their infoboxes to edit Wikidata (for example Russian, Catalan, Basque Wikipedias)
** but we also welcome also communities who [[mw:Wikidata_Bridge/Get_involved|volunteer to be part of the first test round]].
** Then we will reach some of the big Wikipedias (French, German, English) in order to see if the project scales and to address their potentially different needs.
** Even later, we can consider enabling the feature on all the other projects.
In any case, no deployment or big change will be enforced on the projects without talking to the communities first, and helping the template builders to prepare for the changes they will have to do on the infoboxes’ code.
If you want to get involved, there are several ways to help:
* Read and help translating [[mw:Wikidata_Bridge|the documentation pages]]
* Follow the [[mw:Wikidata_Bridge/Updates|updates]] and participate in [[mw:Topic:V1x2lxtu8rgi954a|the first feedback loop]]
* Talk about it with your local community
More ideas will be added [[mw:Wikidata_Bridge/Get_involved|on this page]] along the way
If you have any questions for the development team, feel free to ask them [[mw:Talk:Wikidata_Bridge|on the main talk page]]. You can also ask under this message, but if you expect an answer from me, please make sure to ping me.
Thanks for your attention, [[:d:User:Lea Lacroix (WMDE)|Lea Lacroix (WMDE)]] ೧೮:೩೩, ೨೪ ಜೂನ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Lea Lacroix (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Lea_Lacroix_(WMDE)/List_Wikipedias&oldid=19168539 -->
== Indic Wikimedia Campaigns/Contests Survey ==
Hello fellow Wikimedians,
Apologies for writing in English. Please help me in translating this message to your language.
I am delighted to share a survey that will help us in the building a comprehensive list of campaigns and contests organized by the Indic communities on various Wikimedia projects like Wikimedia Commons, Wikisource, Wikipedia, Wikidata etc. We also want to learn what's working in them and what are the areas that needs more support.
If you have organized or participated in any campaign or contest (such as Wiki Loves Monuments type Commons contest, Wikisource Proofreading Contest, Wikidata labelathons, 1lib1ref campaigns etc.), we would like to hear from you.
You can read the Privacy Policy for the Survey [https://foundation.wikimedia.org/wiki/Indic_Wikimedia_Campaigns_and_Contests_Survey_Privacy_Statement here]
Please find the link to the Survey at:
'''https://docs.google.com/forms/d/e/1FAIpQLSdzz8P6flgP7rcpkZYWIg70COCVvBaVA1VnWOqRcH4F6pTsjg/closedform'''
P.S. If you have been involved in multiple campaigns/contests, feel free to submit the form multiple times.
Looking forward to hearing and learning from you.
<small>-- [[User:SGill (WMF)|SGill (WMF)]] sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೧:೩೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:SGill (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:SGill_(WMF)/MassMessage_List&oldid=19169935 -->
== ಸಾಲೆಳೆಗ್ ಆಫ್ ಲೈನ್ ತುಳು ವಿಕಿಪೀಡಿಯ ಯೋಜನೆಗ್ ಗ್ರಾಂಟ್ ಬೇಡಿಕೆ ==
ತುಳು ವಿಕಿಪೀಡಿಯನು ಬುಳೆಪ್ಪಾಯೆರೆ ೨೦೧೬ ಜುಲೈಡ್ದ್ ೨೦೧೭ ಜೂನ್ ದಿಂಜಿದ ಸಮಯೊಡ್ ಒಂಜಿ ಯೋಜನೆ ಮಲ್ತ್ದ್ ಕೊರ್ದಿತ್ತೊ. ಅಯಿನ್ ನಿಕುಲು ತೂದಿಪ್ಪರ್. ಅವ್ವೇ ಆಲೋಚನೆನ್ ಇತ್ತೆ ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಬುಳೆಪ್ಪಾಯೆರೆಗಾದ ೨೦೧೯ಡ್ದ್ ೨೦೨೦ ಅಕೇರಿ ಮುಟ್ಟ, ಈ ಒಂಜಿ ವರ್ಸೊಡು CIS-A2K ಗ್ ಒಂಜಿ ಯೋಜನೆಯಾದ್ ತಯಾರ್ ಮಲ್ತ್ ಕೊರೊಂದುಲ್ಲೊ. [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]] ಈ ಪುಟೊಡು ಸುಮಾರ್ ೭೦೦ ಲೇಖನೊ ತಯಾರಿಗ್ ಪಟ್ಟಿನ್ ತಯಾರ್ ಮಲ್ತ್ ದೀಡ್ತೊ. ಇತ್ತೆ ಈ ಯೋಜನೆನ್ CIS-A2K ಬೆಂಗಳೂರುಗು ಗ್ರಾಂಟ್ ಯೋಜನೆಯಾದ್ ಕೊರೊಂದುಲ್ಲೊ. ಈ ಬಗೆಟ್ ನಿಕ್ಲೆನ ಒಪ್ಪಿಗೆ ಬೋಡು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೩:೦೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
=== ನಿಕ್ಲೆನ್ ಒಪ್ಪಿಗೆನ್ ಸೂಚಿಸಲೆ ===
ಬೋಡುಂದು ಇಂಚ <nowiki>{{tick}}</nowiki> ಗುರುತು ಮಲ್ತ್ದ್ ಒಪ್ಪಿಗೆ ಸೂಚಿಸಲೆ
*'''ಎನ್ನ ಒಪ್ಪಿಗೆ {{tick}} ಉಂಡು'''. ೨೦೧೦ಗ್ [[ಕರ್ನಾಟಕ ತುಳು ಸಾಹಿತ್ಯ ಅಕಾಡೆಮಿ]] ೬ನೆ ಕ್ಲಾಸ್ಗ್ ತುಳು ಮೂಜನೆ ಬಾಸೆಯಾದ್ ಓದುನ ತಯಾರ್ ಮಲ್ತ್ಂಡ್. ಅಯಿಡ್ದ್ ಬುಕ್ಕೊ ೧೦ನೇ ಕ್ಲಾಸ್ದ ಬೂಕು ಆಂಡ್. ೨೦೧೮-೨೦೧೯ಗ್ ತುಳು ಎಂ.ಎ. ಸುರುವಾಂಡ್. ಇತ್ತೆ ೨೦೧೯-೨೦೨೦ಡ್ದ್ ಪದವಿ ತರಗತಿಗ್ ತುಳು ರಡ್ಡನೇ ಬಾಸೆಯಾದ್ ಕಲ್ಪಾಯೆರೆ ತಯಾರಾವೊಂದುಂಡು. ಇಂಚ ಮಾಂತ ಬೂಕುಲು ತಯಾರಾನಗ ಓದುನ ಜೋಕ್ಲೆಗ್ ಬೂಕುಲು ಒಲ್ಪ ತಿಕುವೊ ಪನ್ಪುನ ಯೋಚನೆ ಬರ್ಪುಂಡು. ಅಯಿಕಾತ್ರೊ ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಲೇಕನೊ ತಯಾರ್ ಮಲ್ಪುನೆ,ತುಳುತ ಬೂಕುಲೆನ್ ವಿಕಿಸೋರ್ಸ್ಗ್ ಸೇರಾವುನೆ, ತುಳು ವಿಕ್ಷನರಿನ್ ಬುಲೆಪಾವುನೆ ಇಂಚ ಪೂರ ಮಲ್ಲ ಯೋಜನೆಡ್ ಈ '''ಆಫ್ ಲೈನ್ ವಿಕಿಪೀಡಿಯ ಯೋಜನೆ'''ನ್ ಬೇಗೊ ತಯಾರ್ ಮಲ್ತ್ದ್ ಜೊಕ್ಲೆಗ್ ಓದೆರೆ ತಿಕುನ ಲೆಕೊ ಮಲ್ಪುನ ಈ ಎಡ್ಡೆ ಉದ್ದೇಸೊಗ್ ಎನ್ನ ಸಕಾಯೊ ಬುಕ್ಕೊ ಒಪ್ಪಿಗೆ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೩:೨೬, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ. ಉಂದ್ ಒಂಜಿ ದಿಂಜ ಎಡ್ಡೆ ಯೋಜನೆ. ಆಯಿನಾತ್ ಬೇಕ ಆವೊಡ್.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೫:೨೦, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ. ಅಂದ್ ಉಂದೊಂಜಿ ಲಾಯಿಕ್ ತ ಯೋಜನೆ, ತುಲುತ್ತ ಬೊಲಿಚಿಲಿಗಾತ್ ಇಂಚಿತ್ತಿ ಯೋಜನೆ ಅವೊಡಾಯಿನವು ಅಗತ್ಯ ಅತುಂಡು. - [[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೧೬:೦೪, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಒಪ್ಪಿಗೆ.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೧, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಪೂರ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಉಂದು ಬಾರಿ ಎಡ್ಡೆ ಯೋಜನೆ, ದುಂಬೆ ಆವೊಡಾಯಿನವು. ಆಯಿನಾತ್ ಬೇಗ ಆವಾಡ್.--[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೧:೪೫, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಪೂರ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಉಂದು ಎಡ್ಡೆ ಯೋಜನೆ. ಆಯಿನಾತ್ ಬೇಗ ಆವಡ್--[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೮:೦೯, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} [[ಬಳಕೆದಾರೆ:BENET G AMANNA|BENET G AMANNA]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BENET G AMANNA|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೧, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}} ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು. ಆಯಿನಾತ್ ಬೇಗ ಆವೊಡು.--[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೨೦:೧೭, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
*{{tick}}.ಒಪ್ಪಿತ.[[ಬಳಕೆದಾರೆ:Ravi Mundkur|Ravi Mundkur]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ravi Mundkur|ಪಾತೆರ್ಲೆ]]) ೦೯:೧೧, ೨೯ ಜೂನ್ ೨೦೧೯ (IST).
*{{tick}} [[ಬಳಕೆದಾರೆ:Ashay vb|Ashay vb]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Ashay vb|ಪಾತೆರ್ಲೆ]]) ೨೦:೦೮, ೨೬ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
===Oppose===
[[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]] ಯೋಜನೆ ಸರು ಅತ್ ರಡ್ಡು ವರ್ಷಲಾ [https://meta.wikimedia.org/wiki/Grants:Project/Pavanaja/Tulu_offline_Wikipedia_to_schools reject] ಅಂಡ್, ಆ ಪೇಜ್ ಮಾಲ್ತ್ ಏತ್ ಲೇಖನೊ ಅಂಡ್?. ಎರ್ಲಾ ಬರೆಯರ ಉಮೆದ್ಡ್ ಬತ್ತುಜ್ಜಿ. ರಡ್ಡ್ ಸರ್ತಿ ಗ್ರ್ಯಾಂಟ್ ಗ್ ಅರ್ಜಿ ಪಾಡ್ತ್ rejected ಅತ್ಂಡ್ .ದಿನೊ ಸಂಪಾದನೆ ಮಾಲ್ಪುನಕುಲು ಎರ್ಲಾ ಇಜ್ಜಿ?. ಎಂ.ಎ ತುಳು ಪಠ್ಯಗ್ ಬೊಡಯಿನ ಪಟ್ಟಿ ನಾನಲ, ಪಟ್ಟಿ ರೆಡಿ ಅತ್ ಜ್ಜಿ ?. ಪದವಿ ಕಾಲೇಜ್ ಗ್ ಬೊಡಯಿನ ಲೇಕನೊತ ಪಟ್ಟಿ ಅವೊಡಾತೆ. Update ಮಾಲ್ಪುನಕುಲು ಎರ್ಲಾ ಇಜ್ಜಿ, ದಾನೆ?. ಅಯಿಕ್ಕ್ ದುಂಬು ಒಟ್ಟಾರೆ ಪೊಂಡಾ ಎಂಚ.?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೯:೦೩, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
:[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|ಲೋಕೇಶ್]] ಸುರು ಮಲ್ತ್ನ [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ಯೋಜನೆ]] ರಿಜೆಕ್ಟ್ ಆಯಿನೆಗ್ ಈರೆ ಉತ್ತರೊ ಕೊರೊಡು. [[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ಈ]] ಯೋಜನೆಗಾದ್ ಸುಮಾರ್ ೭೨೦ ದಾತ್ ಲೇಕನೊ ಪಟ್ಟಿ ಮಲ್ತ್ನಾರ್ ಲೋಕೇಶ್. ಸಂಪೊಲೊಪುನಕುಲು ಏರ್ಲಾ ಇಜ್ಜಿ ಪನ್ಪುನೆಡ್ದ್ ಈರೆ ಲೇಕನೊ ಮಲ್ಪುಲೆ. ಈರೆ ಇರೋದಗ್ ಕಾರನೊ ಸರಿ ಇದ್ದಿ. ದೂರುನೆಡ್ ದಾನೆ ಪ್ರೇಜನೊ? ಲೇಕನೊ ಪಟ್ಟಿ ತಯಾರ್ ಮಲ್ತ್ನಕುಲುಲಾ ಲೇಕನ ಬರೆಪುನ ಉಮೇದ್ಡ್ ಇಪ್ಪೊಡು. ದಾಯೆ ರಿಜೆಕ್ಟ್ ಆಂಡ್ ಪನ್ಪುನವು ಮುಲ್ಪ ಅಗತ್ಯೊ ಇದ್ದಿ. ತುಳುತ ಅಬಿಮಾನಿಲು ಮೆಚ್ಚ್'ದ್ ತುಳುತ ಬೇಲೆ ಮಲ್ಪುವೆರ್. ತುಳು ಎಂ.ಎ. ಬುಕ್ಕೊ ಪದವಿದ ಬೇಲೆಗ್ ಬೋಡಾಪುನಾತ್ ಲೇಕನೊಲೆ ಪಟ್ಟಿ ನಾನ ಆವೊಡಾತೆ. ಅವು ಬೇತೆನೇ ಆವೊಡಾಯಿನವು. ತುಳು ಸಮುದಾಯೊಡು ಈತನೇಟ್ ದಾಲಾ ಮನಸ್ತಾಪೊ ಇದ್ದಿ. ಬೊಡಿತ್ತಿನಾತ್ ಬೇಲೆ ಮಲ್ಪೆರೆ ಉಂಡು. ಅಯಿನ್ ಮಲ್ಪೆರೆ ಬೆರಿಸಾಯೊ ಕೊರ್ಲೆ. ಅಂಚನೆ ತುಳು ಸಮುದಾಯೊಡು ತುಳುನಾಡ್ದ ಅಪ್ಪೆ ಬಾಸೆದೊಟ್ಟುಗು ಕನ್ನಡೊದಕುಲುಲಾ ಸೇರೊಂದು ಬೆನ್ಪುನವು ಎಂಕ್ಲೆಗ್ ಪೆರ್ಮೆನೇ ಆಪುಂಡು. ಪೊಕ್ಕಡೆ ಕಿರಿಕಿರಿ ದಾಯೆ--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೬, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
: The project Tulu offline Wikipedia to schools ([[ವಿಕಿಪೀಡಿಯ:ತುಳು ಯೋಜನೆ/ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು|ತುಳು ಪಟ್ಯೊಪುಸ್ತಕ ಲೇಕನೊಲು]]) was started by [[User:Lokesha kunchadka|Lokesha Kunchadka]] himself. He has supported and endorsed the [[:m:Grants:Project/Pavanaja/Tulu offline Wikipedia to schools|grant request to WMF]] twice. It is surprising to see the same person is now opposing the idea started by himself. He has not given any scientific or logical reason to oppose. I think he is suffering from short term memory loss. His opinion need not be given any weightage as he is contradicting himself. (''This comment is written in English so that non-Tulu speaking people can understand'').--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೫೯, ೨೫ ಜೂನ್ ೨೦೧೯ (IST)
[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|ಲೋಕೇಶ್]] ಮಂಗಳೂರು ವಿಶ್ವವಿದ್ಯಾನಿಯೊಡು ತುಳು ಸಂಶೋಧನೆ ಮಲ್ಪುನಕ್ಲ್ ಮಸ್ತ್ ಜನ ಉಲ್ಲೆರ್. ಅಕುಲು ಪೂರ ವಿಕಿಪೀಡಿಯೊಡು ಬೇಲೆ ಮಲ್ಪೊಡು. ಅವು ಬುಡ್ದ್ ನಮನ್ ನಮನೇ ದೂರೊಂದು ಕಾಲ ಹರನ ಮಲ್ಪುನೆರ್ದ್ ದಾದಾ ಲಾಭ? ತುಳುಟು ಮಲ್ಪುನ ಬೇಲೆ ಮಸ್ರ್ ಉಂಡು. ಆ ಬೇಲೆನ್ ನಮ ಕುಲ್ಲುದ್ ಚರ್ಚೆ ಮಲ್ತ್ ದ್ ಬೇಲೆ ಬೆಂದ್ಂಡ ಅಯಿತ್ತ ಪೊರ್ಲೆ ಬೇತೆ. ಲೋಕೇಶ್ ತುಳು ಪಾಠಬೂಕುದ ಕೆಲಸೊದ ಸುರುತ ಕಾರ್ಯಕರ್ತೆ, ಆರ್ ತುಳುತ್ತ ಜವ್ವನೆರೆನ್ ಒಟ್ಟು ಸೇರಾದ್ ಬೇಲೆ ಮಲ್ಪಾವುನಾರ್ --[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೫:೪೩, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
::# [[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|ಬದಿಕಾನ]] ಸರ್, ಬೆತೆ ಉದ್ದೇಶ ದಿತ್ ಪಾತೆರುನ ಅತ್ತ್ ಸರ್. Straight ಪಂಡಿನ ಪಾತೆರ ತಡೆಯರ ಅಪುಜ್ಜಿ ಅತಾ ಸರ್. ಕಲೆಂಕ್ ಮಾಲ್ಪುಜ್ಜಿ ಇತ್ತಿನ ವಿಚಾರ ಪಂಡಿನ. ಸರ್. ಕೆಲವೆರ್ ಪಿರಾವುಡ್ತ್ ಪಾತೆರುವೆರ್ ನಮಕ್ ಅಂಚಿನ ಅಭ್ಯಾಸ ಇಜ್ಜಿ. ನೇರ ಪನ್ಪುನನೆ, ಏರಾಂಟಲಾ ಅವಾಡ್ ತೂಯಾರ ಇಜ್ಜಿ. ಮೊನೆಗ್ ಬೊಡಾಯಿನಲೆಕೊ ಪಾತೆರುಜ್ಜಿ,ಸರ್.
# [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ಪಾಪ ಇಂಬೆರ್ ಗ್ರ್ಯಾಂಟ್ ಪೇಜ್ ಸರಿಯಾತ್ ತೂವಾಡ್. ಒಂಜಿ ಸರ್ತಿ support and endorse, ಬುಕ್ಕೊಂಜಿ ಸರ್ತಿ support ಮಾತ್ರೊ ಮಾಲ್ತಿನ , endorse ಮಾತ್ತಿಜ್ಜಿ. ಸರಿಯಾತ್ ತೂಲೆ ಒರ.
# [[ಬಳಕೆದಾರೆ:Kishorekumarrai|ಕಿಶೋರ್ ]] ಸರ್, ನೇರ ಪಣಿಯರ ಬಲ್ಲಿ ಅತೆ.ತಾಂತ್ರಿಕ ಬೆಲೆಗ್ ಸಂಬಂಧ ಮೂಜಿ ಕಾರ್ಯಕ್ರಮೊಡ್ ಸುಮಾರ್ ಟೆಂಪ್ಲೇಟ್ ಅನುವಾದ ಅತ್ ಇಪ್ಪು ಅತ ಸರ್. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೭:೨೩, ೨೬ ಜೂನ್ ೨೦೧೯ (IST)
== Editing News #1—July 2019 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''[[m:VisualEditor/Newsletter/2019/July|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]''
<div style="float:right;width:270px;margin-left:1em;border-style:solid;border-width:1px;padding:1em;">
[[File:VisualEditor-logo.svg|200px|center]]
<big>'''Did you know?'''</big>
<div class="thumbcaption" style="font-size: 90%;">
Did you know that you can use the visual editor on a mobile device?
Every article has a pencil icon at the top. Tap on the pencil icon [[File:OOjs UI icon edit-ltr.svg|frameless|16x16px]] to start editing.
'''<big>Edit Cards</big>'''
[[File:EditCards-v.20.png|alt=Toolbar with menu opened|center|frameless|250px]]
This is what the new '''Edit Cards for editing links''' in the mobile visual editor look like. You can try the prototype here: '''[[mw:Topic:V394zwrigth8ii7c|📲 Try Edit Cards]].'''
</div></div>
Welcome back to the [[mw:Editing|Editing]] newsletter.
Since [[m:VisualEditor/Newsletter/2018/October|the last newsletter]], the team has released two new features for the [[mw:VisualEditor on mobile|mobile visual editor]] and has started developing three more. All of this work is part of the team's goal to [[m:Wikimedia Foundation Annual Plan/2018-2019/Audiences#Outcome 3: Mobile Contribution|make editing on mobile web simpler]].
Before talking about the team's recent releases, we have a question for you:
<strong>Are you willing to try a new way to add and change links?</strong>
If you are interested, we would value your input! You can try this new link tool in the mobile visual editor on a separate wiki.
<em>Follow these instructions and share your experience:</em>
<strong>[[mw:Topic:V394zwrigth8ii7c|📲 Try Edit Cards]].</strong>
=== Recent releases ===
The mobile visual editor is a simpler editing tool, for smartphones and tablets using the [[mw:Reading/Web/Mobile#About|mobile site]]. The Editing team recently launched two new features to improve the mobile visual editor:
# [[mw:VisualEditor on mobile/Section editing|Section editing]]
#* The purpose is to help contributors focus on their edits.
#* The team studied this with an A/B test. [[mw:VisualEditor on mobile/Section editing#16 June 2019|This test showed]] that contributors who could use section editing were '''1% more likely to publish''' the edits they started than people with only full-page editing.
# [[mw:VisualEditor on mobile#March 1, 2019|Loading overlay]]
#* The purpose is to smooth the transition between reading and editing.
Section editing and the new loading overlay are '''now available to everyone''' using the mobile visual editor.
=== New and active projects ===
This is a list of our most active projects. [[mw:Help:Watching pages|Watch]] these pages to learn about project updates and to share your input on new designs, prototypes and research findings.
*[[mw:VisualEditor on mobile/Edit cards|Edit cards]]: This is a clearer way to add and edit links, citations, images, templates, etc. in articles. You can try this feature now. <em>Go here to see how:</em> [[mw:Topic:V394zwrigth8ii7c|📲 <em>Try Edit Cards</em>]].
*[[mw:VisualEditor on mobile/Toolbar refresh|Mobile toolbar refresh]]: This project will learn if contributors are more successful when the editing tools are easier to recognize.
*[[mw:VisualEditor on mobile/VE mobile default|Mobile visual editor availability]]: This A/B test asks: ''Are newer contributors more successful if they use the mobile visual editor?'' We are collaborating with [[mw:VisualEditor on mobile/VE mobile default#26 June 2019 %E2%80%93 Participating wikis and test start date|20 Wikipedias]] to answer this question.
*[[mw:VisualEditor on mobile/Usability improvements|Usability improvements]]: This project will make the mobile visual editor easier to use. The goal is to let contributors stay focused on editing and to feel more confident in the editing tools.
=== Looking ahead ===
* '''Wikimania:''' Several members of the Editing Team will be attending [[wmania:|Wikimania]] in August 2019. They will lead a session about mobile editing in the [[wmania:2019:Community Growth/Visual editing on mobile: An accessible editor for all|Community Growth space]]. Talk to the team about how editing can be improved.
* '''Talk Pages:''' In the coming months, the Editing Team will begin [[mw:Talk pages consultation 2019|improving talk pages]] and communication on the wikis.
=== Learning more ===
The [[mw:VisualEditor on mobile|VisualEditor on mobile]] is a good place to learn more about the projects we are working on. The team wants to talk with you about anything related to editing. If you have something to say or ask, please leave a message at [[mw:Talk:VisualEditor on mobile|Talk:VisualEditor on mobile]].
[[user:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:user_talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:user_talk:Whatamidoing (WMF)|talk]])
</div> ೦೦:೦೨, ೨೪ ಜುಲಾಯಿ ೨೦೧೯ (IST)
<!-- Message sent by User:Trizek (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=19175117 -->
== ಉಲ್ಲೆಕೊ ==
ರಡ್ಡು ತಿಂಗೊಲ್ದ್ ಇಂಚಿಗ್ ಲೇಖನೊ ಮಾಲ್ಪುಗಲು ಒಂಜಿ ಅತ್ತಂದೆ ರಡ್ಡ್ ಉಲ್ಲೆಕೊ ಕೊರ್ಪೆರ್ ಅತೆ ಉಲ್ಲೇಖ ಯಾವೊ?. ಇತ್ತೆ ಎಡ್ಮಿನ್ ದಾದ ಮಾಲ್ತೊಂದು ಉಲ್ಲೆರ್ ?. ದಾಯೆ ತೂಪುಜ್ಜಿ? ಅಯಿಕ್ಕ್ ಬೊಡಾಯಿನ ಟೆಂಪ್ಲೇಟ್ ಇಜ್ಜಿ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೧೧, ೧ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
:ಏರ್ ಉಲ್ಲೇಕೊ ಕೊರ್ಪುಜ್ಜೆರುಂದ್ ತೂಪುನೆ ಅಡ್ಮಿನ್ ಬೇಲೆ ಅತ್ತ್. ವಾ ಟೆಂಪ್ಲೇಟ್ ಇಜ್ಜಿ? ಅಯನ್ ಒಲ್ತ್ ಇಂಪೋರ್ಟ್ ಮಲ್ಪೊಡು? ಅಯಿನ ಕೊಂಡಿ ಬೋಡು.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೦೭:೦೫, ೨ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
== '''Folk-a-thon''' ತುಳುನಾಡ್ದ ಮಾಜಿತ್ ಪೋಪುನ ನಲಿಕೆದ ಪಠ್ಯ ಪ್ರದರ್ಸನೊ ಬೊಕ್ಕ ಡಾಕ್ಯುಮೆಂಟೆಷನ್ ==
ತುಲುವೆರ್ ಒಂಜಿ ವರ್ಸೊದ ಬೇತೆ ಬೇತೆ ತಿಂಗೊಲುಡು ಬೇತೆ ಬೇತೆ ನಲಿಕೆಲು ನಡತೊಂತಿತ್ತ್ಂಡ್. ಇನಿ ಅವು ಪ್ರದರ್ಸನ ಆವಾಂದೆ ಮಾಜೊಂದು ಬರೊಂದುಂಡು. ಮಸ್ತ್ ನಲಿಕೆಲೆನ ಬಗೆಟ್ ಪಟ, ವಿಡಿಯೋ, ಅಡಿಯೋ ಮಾತ ತಿಕೊಂದು ಇಜ್ಜಿ. ಅಂಚಾಯಿನೆಡ್ಧ್ ಅಯಿನ್ Wikicommons ಒಂಜೆ ಕಡೆಟ್ಟ್ ತಿಕುನಂಚ ಮಾಲ್ಪೆರೆ ಬೋಡಾದ್ ನಲಿಕೆಲೆನ ಪಟ, ವೀಡಿಯೋ, ಅಡಿಯೋಲೆನ್ ಅಚ್ಚಿ ಪತ್ತಪುನ ಬೇಲೆಗ್ ನಿಕುಲೆನ ಮಾತ ಬಲ/ಸಕಾಯೊ ಬೋಡು. ನನಾದ ದಿನೊಕುಲೆಡ್ ತುಲುವ ಜೋಕುಲೆಗ್, ಸಂಶೋಧನೆಗ್ ಮಸ್ತ್ ವಿಸಯೊಲು ಬೋಡಾಪುನೆರ್ದ್ ನಲಿಕೆಲೆನ್ ಡಾಕ್ಯುಮೆಂಟೆಷನ್ ಮಲ್ತ್ ದ್ ದೀಡ್ಂಡ ಮಸ್ತ್ ಸಕಾಯೊ ಅವು. ಜಾನಪದ ನಲಿಕೆದ ಕರಜನೊಲ ಅಪುಂಡು. ಉಂದು ವಿಕಿಪೀಡಿಯ ವ್ಯವಸ್ಥೆಡ್ ತುಲು ಜಾನಪದ ನಲಿಕೆಲೆನ್ ಸೇರವುನ ಸುರುತ್ತ ಬೇಲೆ. [https://meta.wikimedia.org/wiki/CIS-A2K/Requests#Folk-a-thon:_A_Text-Performance-Documentation_and_Reconstruction_of_rare_Folk_Performing_Arts_of_Tulunadu ಮುಲ್ಪ] ನಿಕುಲೆನ ಒಪ್ಪು ಪಾಡ್ಲೆ ಸೊಲ್ಮೆಲು. ಮ - --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೧೧:೪೮, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಡ್ಡೆ ಬೇಲೆಗ್ ಎಂಕ್ಲೆನ ಬೆರಿ ಸಾಯೊ ಉಂಡು. ತುಲು ವಿಕಿತ ಮಾತೆಕ್ಲಾ ಇಂದೆತ ಪ್ರೇಜನೊ ಆವು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೪:೦೫, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--Document ಮಾಲ್ಪುಲೆ. ಈ ತಿಂಗೊಲು ಸೋಣದ ಜೋಗಿ ಕುಣಿತ ನಡಪ್ಪಂಡು.ಎಚ್ಚರ ದಿತ್ document ಮಾಲ್ಪುಲೆ ಒಟ್ಟಾರೆ ಮಾಲ್ಪುನ ಅತ್ತ್ ಕಲಾವಿದೆರೆಗ್ ಲಾ ಬೆಲೆ ಕೊರ್ತ್ ಬೆಲೆ ಮಾಲ್ಪುಲೆ, ಕಲಾವಿದೆರೆನ ಪಾತೆರ ಕೇಣ್ಲೆ.ಮಸ್ತ್ ವಿದ್ವಾಂಸೆರ್ ಮಾಲ್ತಿನ ತಪ್ಪು ಅಯರ ಬಲ್ಲಿ. .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೬, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಡ್ಡೆ ಬೇಲೆ. ಉಂಡು ಆವೊಡೆ. ಎನ್ನ ಸಾಯ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೦೬, ೧೮ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಎಂಕ್ಲೆನ ಬೆರಿ ಸಹಾಯೊ ಉಂಡು---[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೫:೨೪, ೧೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
*--ಬಾರಿ ಎಡ್ಡೆ ಆಲೋಚನೆ, ಉಂದು ತುಲುತ್ತ ಮಾತೆರ್ ಲಾ ಸೇರ್ ದ್ ಮಲ್ಪೊಡಾಯಿನ ಬೇಲೆ. ಉಂದು ಆವೊಡೇ. ಎನ್ನ ಎಡ್ಡೆಪ್ಪು ಬೊಕ್ಕ ಸಕಾಯೊ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೩೫, ೧೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
* -- ತುಳು ಸಂಸ್ಕ್ರುತಿದ ತಿಂಗೊಲುಡು ಬರ್ಪಿನ ನಲಿಕೆದ ಸಾಕ್ಷ್ಯ ಸಂಕಲನಲು ಬೋಡು. ಬಾರಿ ಎಡ್ಡೆ ಯೊಚನೆ ಆದುಂಡು, ಎನ್ನ ಒಪ್ಪಿಗೆ ಬೊಕ್ಕ ಸಕಾಯ ಉಂಡು. --[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೮, ೨೦ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
{{clear}}
== Project Tiger 2.0 ==
''Sorry for writing this message in English - feel free to help us translating it''
<div style="align:center; width:90%%;float:left;font-size:1.2em;margin:0 .2em 0 0;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[File:PT2.0 PromoMotion.webm|right|320px]]
Hello,
We are glad to inform you that [[m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|'''Project Tiger 2.0/GLOW''']] is going to start very soon. You know about Project Tiger first iteration where we saw exciting and encouraging participation from different Indian Wikimedia communities. To know about Project Tiger 1.0 please [[m:Supporting Indian Language Wikipedias Program|'''see this page''']]
Like project Tiger 1.0, This iteration will have 2 components
* Infrastructure support - Supporting Wikimedians from India with internet support for 6 months and providing Chrome books.
* Article writing contest - A 3-month article writing contest will be conducted for Indian Wikimedians communities. Following community feedback, we noted some community members wanted the process of article list generation to be improved. In this iteration, there will be at least two lists of articles
:# Google-generated list,
:#Community suggested a list. Google generated list will be given to the community members before finalising the final list. On the other hand, the community may create a list by discussing among the community over Village pump, Mailing list and similar discussion channels.
Thanks for your attention,<br/>
[[User:Ananth (CIS-A2K)]]<br/>
Message sent by [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೧೨, ೨೦ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
</div>
</div>
<!-- Message sent by User:Tulsi Bhagat@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19312574 -->
{{clear}}
== Project Tiger important 2.0 updates ==
<div style="align:center; width:44%;float:left;font-size:1.2em;height:22em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<div style="color:Red;font-size:1.5em;text-align:center;"> '''Infrastructure support'''</div>
[[File:Project Tiger Community Based Applications.png|280px|upright|right]]
Did you know that applications for Chromebooks and Internet stipends under [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|Project Tiger 2.0]] are open since 25th August 2019?<br/>
We have already received 35 applications as of now from 12 communities. If you are interested to apply, please visit the [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support| '''support page''']] and apply on or before 14 September 2019.
</div>
</div>
<div style="align:center; width:44%;float:left;font-size:1.2em;height:22em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#EFEFEF;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<div style="color:Red;font-size:1.5em;text-align:center;"> '''Article writing contest'''</div>
[[File:Project Tiger Media post Black.png|280px|upright|right]]
As part of the article writing contest of Project Tiger 2.0, we request each community to create their own list by discussing on the village pump and put it on respective [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest#Topics|'''topic list''']].
We also request you to create a pan India article list which needs to be part of writing contest by voting under each topic [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Topics/Proposal for additional items with pan-national interests|'''here''']]
</div>
</div>
{{clear}}
For any query, feel free to contact us on the [[:m:Talk:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|'''talk page''']] 😊<br/>
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೮:೫೦, ೨೯ ಆಗೋಸ್ಟು ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs&oldid=19312574 -->
== Wikimedia movement strategy recommendations India salon ==
''Please translate this message to your language if possible.''
[[File:Talk-icon-Tamil-yesNO.svg|right|120px]]
Greetings,<br/>
You know Strategy Working Groups have published draft recommendations at the beginning of August. On 14-15 September we are organising a strategy salon/conference at Bangalore/Delhi (exact venue to be decided) It'll be a 2 days' residential conference and the event aims to provide a discussion platform for experienced Wikimedians in India to learn, discuss and comment about the draft recommendations. Feedback and discussions will be documented.
If you are a Wikipedian from India, and want to discuss the draft recommendations, or learn more about them, you may apply to participate in the event.
Please have a look at the '''[[:m:CIS-A2K/Events/Wikimedia movement strategy recommendations India salon|event page for more details]]''' The last date of application is 7 September 2019.
It would be great if you share this information who needs this. For questions, please write on the event talk page, or email me at tito+indiasalon@cis-india.org
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]] sent through [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೪:೪೫, ೨ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/Indic_VPs/1&oldid=19346824 -->
== Project Tiger Article writing contest Update ==
{{clear}}
''Sorry for writing this message in English - feel free to help us translating it''
<div style="align:center; width:90%;float:left;font-size:1.2em;height:20em;{{#ifeq:{{#titleparts:{{FULLPAGENAME}}|2}}||background:#F9ED94;|}}border:0.5em solid #000000; padding:1em;">
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hello all,
We would like to give some of the important updates about Project Tiger 2.0.
[[File:Emoji u1f42f.svg|frameless|right|100px]]
* It was informed about the community-generated list for the Article writing contest. The deadline for this has been extended till '''30 September 2019''' since few communities are working on it.
* We are expecting the Project Tiger 2.0 article writing contest to begin from 10 October 2019 and also there is a need for creating the [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest|writing contest page]] in the local Wiki's if you are interested to help please contact [[User talk:Nitesh (CIS-A2K)]] & [[User talk:SuswethaK(CIS-A2K)]].
Looking forward to exciting participation this year! Please let us know if you have any doubts.
Thanks for your attention<br/>
[[User:Ananth (CIS-A2K)|Ananth (CIS-A2K)]]<br/>sent by [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೫:೧೦, ೨೭ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
</div>
</div>
{{clear}}
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19346827 -->
== GLOW edit-a-thon starts on 10 October 2019 ==
<div style="border:8px black ridge; background:#f2df94;">
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
Hope this message finds you well. Here are some important updates about [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)|Project Tiger 2.0/GLOW edit-a-thon]].
* The participating communities are requested to create an '''[[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest|event page on their Wikipedia]]''' (which has been already updated with template link in the last post). Please prepare this local event page before 10 October (i.e. Edit-a-thon starting date)
* All articles will be submitted here under Project Tiger 2.0. Please copy-paste the fountain tool link in the section of submitted articles. Please see the links '''[[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest#Statistics|here on this page]]'''.
Regards. -- [[User:Nitesh (CIS-A2K)]] and [[User:SuswethaK(CIS-A2K)]] (on benhalf of Project Tiger team) <small>using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೦೧:೧೧, ೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)</small>
</div>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Project Tiger 2.0: Article contest jury information ==
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]We want to inform you that Project Tiger 2.0 is going to begin on 10 October. It's crucial to select jury for the writing contest as soon as possible. Jury members will assess the articles.
Please start discussing on your respective village pump and '''[[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|add your name here]]''' as a jury for writing contest if you are interested. Thank you. --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೬, ೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Proposal of WikiConference India 2020 in Hyderabad ==
Dear all, I am posting this message on behalf of Wikimedians from Andhra Pradesh and Telangana, who, as some of us might already know, have come forward to host WikiConference India 2020 in Hyderabad. A national conference will help us to connect from people from other communities, share knowledge, learn new stuff, and come closer to the Wiki-family. The last conference happened in 2016, and there was nothing for the past three years. Lack of such activities will make individual communities be disconnected from other communities, and this hampers the progress of Indian community as a whole. It is high time that we have the next conference as soon as possible. Since no one came forward in the last three years, and Hyderabad well-connected is all ways, I think this is a good opportunity to be supportive of.
But they would like to gather support from all the communities as a whole before proceeding, rather than just based on individual support, to be inclusive and add more credibility. So it would be good to have consensus among us to support the conference, and endorse it.
There is a Meta-Wiki page which clearly outlines the proposal and their plan, please have a look it at [[m:WikiConference India 2020: Initial conversations|here]]. Endorsements from other communities can be seen at [[WikiConference_India_2020:_Initial_conversations#Community_endorsements|this section]]. Please go through the page, and give your support in the section below, so that we can also be a part of this initiative. It would be great if our community endorses this at the earliest possible, so that the organisers can proceed to further steps without much delay, at the latest by 18 October 2019. This is to be in-line grant funding guidelines by December, which also require a community engagement survey to be done before developing the grant proposal in November. [[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೪:೩೦, ೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
===Support===
===Discussion===
== ಅಗತ್ಯವಾತ್ ಬೊಡಾಯಿನ ಟೆಂಟ್ಲೆಟ್(template import) ==
#[https://en.wikipedia.org/wiki/Template:Cite_AV_media Cite AV media]
#[https://en.wikipedia.org/wiki/Template:Cite_AV_media_notes Cite AV media notes]
#[https://en.wikipedia.org/wiki/Template:Cite_book Cite book]
#[https://en.wikipedia.org/wiki/Template:Cite_conference Cite conference]
#[https://en.wikipedia.org/wiki/Template:Cite_encyclopedia Cite encyclopedia]
#[https://en.wikipedia.org/wiki/Template:Cite_episode Cite episode]
#[https://en.wikipedia.org/wiki/Template:Cite_interview Cite interview]
#[https://en.wikipedia.org/wiki/Template:Cite_journal Cite journal]
#[https://en.wikipedia.org/wiki/Template:Cite_magazine Cite magazine]
#[https://en.wikipedia.org/wiki/Template:Cite_map Cite map]
#[https://en.wikipedia.org/wiki/Template:Cite_news Cite news]
#[https://en.wikipedia.org/wiki/Template:Cite_newsgroup Cite newsgroup]
#[https://en.wikipedia.org/wiki/Template:Cite_press_release Cite press release]
#[https://en.wikipedia.org/wiki/Template:Cite_report Cite report]
#[https://en.wikipedia.org/wiki/Template:Cite_serial Cite serial]
#[https://en.wikipedia.org/wiki/Template:Cite_speech Cite speech]
#[https://en.wikipedia.org/wiki/Template:Cite_techreport Cite techreport]
#[https://en.wikipedia.org/wiki/Template:Cite_thesis Cite thesis]
ಈತ್ ಟೆಂಟ್ಲೆಟ್ ತುಳು ವಿಕಿಪೀಡಿಯತ ಗುಣಮಟ್ಟ ಸುಧಾರಣೆಗ್ ಬೊಡಾಪುಂಡು, ಬೇಗ ಮಾಲ್ತ್ ಕೊರ್ಲೆ(plz template import) .--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೫೦, ೨೯ ಜೂನ್ ೨೦೧೯ (IST)
:From where to import? Link to original template please.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೫:೧೫, ೧೦ ಜುಲಾಯಿ ೨೦೧೯ (IST)
:: [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ಇತ್ತೆ ಲಿಂಕ್ ಪಾಡ್ತೆ ಪೂರೆಗ್ಲಾ ಅತ್ ಟೆಂಪ್ಲೇಟ್ ಬೊಡು--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೪೩, ೨೫ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::ಈ ಟೆಂಪ್ಲೇಟುಲು ಕನ್ನಡೊಟು ಉಂಡಾ? ಇತ್ತ್ಂಡ ಅಲ್ತ್ ಇಂಪೋರ್ಟ್ ಮಲ್ಪುನೆ ಎಡ್ಡೆ. ಅಪಗ ಅನುವಾದ ಬೇಕ ಆಪುಂಡ್--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೦೭:೦೫, ೨೬ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::: ಮನಸ್ಸಿಜ್ಜಿ ಇನ್ ಪೊರ್ಟ್ ಮಾಲ್ಪಿಯರ ಪನ್ಲೆ?. ಪೊಕ್ಕಡೆ ಅಲ್ಪ ಉಂಡಾ, ಮುಲ್ಪಾ ಉಂಡಾಂದ್ ನರ್ಜಗುಂನ ಬೊಡ್ಚಿ. ಟೆಂಪ್ಲೇಟ್ ಟ್ರೈನಿಂಗ್ ಬತ್ತಿನನಕಲ್ಲು ಉಲ್ಲೆರ್ ಅನುವಾದ ಮಾಲ್ಪಿಯರ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೮:೪೧, ೨೬ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::: [[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]]Template import ಮಾಲ್ಪುಜ್ಜಾಯರಾ?..
:::::ವಿಸಯೊ ಗೊತ್ತಿಜ್ಜಾಂತೆ ಪಾತೆರಿಯರೆ ಬಲ್ಲಿ. ಇಂಗ್ಲಿಷ್ ವಿಕಿಪೀಡಿಯಡ್ದ್ ಟೆಂಪ್ಲೇಟು ಆತಿಜ್ಜಿ. ದಿಂಜ ಸರ್ತಿ ಟ್ರೈ ಮಲ್ತೆ. ಇನಿ ಕನ್ನಡಡ್ದ್ ಮಲ್ತೆ. ಬತ್ತುಂಡು. ಮಾತ ಟೆಂಪ್ಲೇಟುಲೆನ್ ತುಳುಕ್ ಅನುವಾದ ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೩, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:::::ವಿಕಿಪೀಡಿಯದ ಬೇಲೆ ಸ್ವತಂತ್ರವಾದ್ ಮಲ್ಪುನವು. ಉಂದೆಕ್ ಏರ್ ಲಾ ಒತ್ತಾಯ ಅಂತ್ಂಡ ಅಧಿಕಾರ ಚಲಾವಣೆ ಮಲ್ಪೆರೆ ಆವಂದ್. ತೀರ್ಂಡ ಬರವುನು ಮಲ್ಲೆ ಮಲ್ಪನ ಬೇಲೆ ಮಲ್ಪುಲೆ. ಅಂಚನೆ ಆಡ್ಮಿನ್ ನ ಬೇಲೆ ಪುರುಸೋತ್ತು ಉಪ್ಪುನಗ ಬೇಲೆ ಮಲ್ಪುನೆ ಅತ್ತಂದೆ ಅಯಿನೇ ತೂವೊಂದು ಉಪ್ಪುನವು ಅತ್ತ್. ಒಂತೆ ಗೌರವೊಡು ಪಾತೆರುನವು ಎಡ್ಡೆ.[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೦೯, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::::::[[ಬಳಕೆದಾರೆ:Kishorekumarrai|ಕಿಶೋರ್ ಸರ್]] ಇದನ್ನು ಗಮನಿಸಿ[[:en:Wikipedia:Administrators' reading list]]. ಎಡ್ಮಿನ್ ವಿಷಯ ಸಂಪೂರ್ಣ ಮಾಹಿತಿ ಇದರಲ್ಲಿ ಇದೆ ಪೂರ್ತಿ ಓದಿ. ಎಡ್ಮಿನ್ ಜೂನ್ ಬಳಿಕ ಯಾವುದೆ ಎಡಿಡ್ ನಿನ್ನೆಯವರೆಗೆ ಬೇರೆ ಯಾವುದೆ wiki project ನಲ್ಲಿ ಮಾಡಿಲ್ಲವೆ?. ಎಡ್ಮಿನ್ ಕೆಲಸ ಏನಿದೆ ಅದನ್ನು ಅತ ಮಾಡಬೇಕು ಹೊರತು, ಎರಡು ಬಗೆಯುವುದಲ್ಲ. ಬರಿ ಉದ್ದದ ಲೇಖನಕ್ಕೆ ಉಲ್ಲೇಖ ಎಲ್ಲಿಂದ ಹಾಕುವಿರಿ?. ಕಳೆದ ಆರು ತಿಂಗಳಿಂದ ಎಷ್ಟು ಲೇಖನ ನಕ್ಕೆ ಎಷ್ಟು reference ಹಾಕುತ್ತಿದ್ದಿರಿ ಸರ್ ಹೇಳಿ ನೊಡೊಣಷ. Reference ಹಾಕೊದಕ್ಕೆ ಅನುಕೂಲ ಅಗುವ ದೃಷ್ಟಿಯಿಂದ ಕೇಳಿದರೆ ತಪ್ಪೆ?. ಇಷ್ಟು ಸಮಯ ಎಡ್ಮಿನ್ ನಿದ್ರೆಯಲ್ಲಿ ಇದ್ದರಾ??.ಎಷ್ಟು ಟೆಂಪ್ಲೇಟ್ ಅಮದು ಮಾಡಿದರು ಪಟ್ಟಿ ನೀಡಲಿ?. ಇನ್ಯಾರದೊ ಮಾತು ಕೇಳಿ ಮಾತಾಡುವ ಬದಲು ಸ್ವಂತಿಕೆ ಇದ್ದರೆ ಒಳ್ಳೆಯದು ಸರ್ (ನಿಮ್ಮಂತ ದೊಡ್ಡವರಿಗೆ ಹೇಳಬಾರದು ಅದರೂ ,ಚಿಕ್ಕವನಾದರೂ ಈ ಮಾತು ಹೇಳಬೇಕೆನಿಸಿತ್ತು ಅದಿಕ್ಕೆ ಹೇಳಿದೆ) ಮೇಲೆನಮ ಹಾಕಿದ ವಿಷಯವನ್ನು ದಾರಿ ತಪ್ಪಿಸ ಬೇಡಿ--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೮, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::ತುಳುಟೊಂಜಿ ಗಾದೆ ಉಂಡು, `ಬೆಂಜನೊಡು ಕಲ್ಲ್' ಪಂಡ್ದ್. ಅಂಚ ಉಂಡು ಕೆಲವೆರೆ ಪರಿಸ್ಥಿತಿ. ಯಾನಾದ್ ಬೇಲೆ ಮಲ್ಪುಜಿ, ಬೇತೆಕುಲು ಬೇಲೆ ಮಲ್ತ್ಂಡ ಅಯಿಟ್ಟ್ ತಪ್ಪು ನಾಡುನೆ. ತೀರ್ಂಡ ಬೇಲೆ ಮಲ್ಪೊಡು ಇಜ್ಜಾ ಬಾಯಿ ಮುಚ್ಚಿದ್ ತನ್ನ ಬೇಲೆ ಮಲ್ತೊಂದು ಪೋವೊಡು. ಅವು ಬುಡ್ದ್ ಅಯೆ ಅಂಚ ಮಲ್ತೆ, ಇಂಬಿಯೆ ಇಂಚ ಮಲ್ತೆ ಪಂಡೊಂದು ತಿರುಗುನೆ ದಾಯೆ. ಅಕ್ಲೆಗ್ ಬೋಡಾಪಿ ಲೆಕೊ ಅಕುಲು ಮಲ್ತೊಂದು ಉಪ್ಪುವೆರ್. ಏರೆಗ್ಲಾ ಬತ್ತಿ ಸೂತಕ ದಾನೆ. ಮಾತೆರ್ ಲಾ ಒಟ್ಟು ಸೇರ್ ದ್ ಬೇಲೆ ಬೆನ್ಕ. ಉಂದೆಟ್ಟ್ ಏರ್ ಲಾ ಪನವುಗಾದ್ ಬೆನ್ಪುನಕ್ ಲತ್ತ್. ತನ್ಕುಲೆ ಮನಸ್ದ ಕುಸಿಕಾದ್ ಬೆನ್ಪುನೆ ಪನ್ಪುನವು ನೆನೆಪುಡು ಇತ್ತ್ಂಡ ಎಡ್ಡೆ. [[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೬:೨೪, ೩೦ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
::ಎಡ್ಮಿನ್ ಸೈತೆರಾ.... ?. ದಾಯೆ import ಮಾಲ್ಪುಜ್ಜಿ ಪಣಾಡ್, reason ದಾದಂದ್ ಗೊತ್ತಾವಾಡ್. ಬೇತಾಯೆನ್ ಚು ಬುಡ್ಪುನಿ ಅತ್ತ್. ಇಜ್ಜಿಯಾಂಟ adimnship ನ್ deactivate ಮಾಲ್ಪಾಡ್?. ಕುಂಬಳ ಕಾಯಿ ಕಳ್ಳ ಎಂದಾಗ ಏಕೆ ಹೆಗಲು ಮುಟ್ಟಿ ನೋಡುತ್ತಿದ್ದೀರಿ ಸರ್?.. ನಮಕ್ ಬೆಲೆ ಅವೊಡ್. ಇಜ್ಜಿಯಾಂಟ reference ಇಪ್ಪಾಂತೆ ಲೇಖನ ಬರು.. ಅಪಗ ದಾದ ಮಾಲ್ಪರ್ ಪನ್ಲೆ. ಒಂಜಿ ಪಾಲಿಸಿ ಇತ್ನೆ ಮುಟ್ಟ ತುಳುಕ್ಕು ಮಾಲ್ತಿಜ್ಜಿ ದಾಯೆ. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೮:೦೦, ೩೦ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:::@[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] This is a case of violation of Wikipedia's friendly space policy. I am warning you not to use this kind of foul language. One more such instance, you will be banned from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೩, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
: ಪೊಕ್ಕಡೆ ಪಾತೆರುನೆಡ್ದ್ ಈರೆ ಸುರು ಮಲ್ಪುಲೆ. ಏರೆಗ್ಲ ಗುತ್ತಿಗೆ ಕೊರ್ತ್'ರ್.[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೬:೧೫, ೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:::ಬದಿಕಾನ ಸರ್, ಕಿಶೋರ್ ಸರ್ ನಡುವಲ್ಲಿ ಬಂದು ಬಾಯಿಹಾಕಿದ್ದು. ನಾನು ಕೇಳುತ್ತಿರುವುದು ಟೆಂಪ್ಲೇಟ್ ಅಮದು ಮಾಡಿ ಕೊಡಿ ಎಂದು, ಅಮದು ಮಾಡುವ ಹಕ್ಕು ಇರುವುದು ಎಡ್ಮಿನ್ ಒಬ್ಬರಿಗೆ, ಬೇರೆ ಯಾರಿಗೂ ಇಲ್ಲ. ನಮಿಗೆ ಆದರೆ ಕೇಳುತ್ತಿದೇನಾ?. ನಮ್ಮ ತುಳು ವಿಕಿಪೀಡಿಯದ ಗುಣಮಟ್ಟ ಸುಧಾರಣೆ ಮಾಡಲು ಅನುಕೂಲ ಆಗುತ್ತದೆ. ಸಹಕಾರ ನೀಡದಿದ್ದರೆ ಮುಂದೇನು ಮಾಡಬೇಕು ಅದನ್ನೆ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಸರ್. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೦:೫೪, ೨ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== template ಬೊಡು ==
*[https://en.wikipedia.org/wiki/Template:Copy_edit Copy edit]
* [https://en.wikipedia.org/wiki/Template:Refexample Ref improve]
* [https://en.wikipedia.org/wiki/Template:Wikify Wikify]
* [https://en.wikipedia.org/wiki/Wikipedia:Template_messages/Merging Merge]
* [https://en.wikipedia.org/wiki/Template:Advert Advert]
* [https://en.wikipedia.org/wiki/Template:Unreferenced Reference]
* [https://en.wikipedia.org/wiki/Template:Copy_to_Wikisource Copy to Wikisource]
* [https://en.wikipedia.org/wiki/Template:Underlinked Underlinked]
* [https://en.wikipedia.org/wiki/Template:Copy_to_Wiktionary Copy to Wiktionary]
* [https://en.wikipedia.org/wiki/Template:Merging_from Merging from]
ಇತ್ template ಅಗತ್ಯ ಉಂಡು. ಇತ್ತೆ.import ಮಾಲ್ಪುಲೆ link ಪಾಡ್ತೆ.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೫:೪೦, ೨೮ ಸಪ್ಟಂಬರ್ ೨೦೧೯ (IST)
:ಎಡ್ಮಿನ್ ಯಾಕೆ ಟೆಂಪ್ಲೇಟ್ import ಮಾಡುತ್ತಿಲ್ಲ.?. ಅದಕ್ಕೆ ಸೂಕ್ತ ಕಾರಣ ಕೊಡಿ? ಚಿಕ್ಕ ಲೇಖನವನ್ನು ಕೆಲವರು ಮತ್ತೆ ಮುಂದುವರಿಸಿದ್ದಾರೆ ಅದಕ್ಕೆ ಎಡ್ಮಿನ್ ಸಾತ್ ಕೊಟ್ಟಿದ್ದಾರೆ ಎಂದು ಬಾವಿಸಬಹುದು ಅಲ್ವೆ? ವಿಕಿಪೀಡಿಯ ನಿಯಮವನ್ನು ಪಾಲಿಸದೆ ಲೇಖನ ಬರೆಯುವವರಿಗೆ ಎಡ್ಮಿನ್ ಬೆಂಬಲ ಕೊಟ್ಟಿದ್ದಾರೆ ಎನ್ನುವುದು ಸ್ಪಷ್ಟ.ಅದಕ್ಕಾಗಿ ಎಡ್ಮಿನ್ ಯಾವುದೆ ಟೆಂಪ್ಲೇಟ್ ತರದೆ ಇರುವುದು ಎನ್ನಬಹುದು. ವಿಕಿಪೀಡಿಯ ಮಾರ್ಗದರ್ಶಿ ಸೂತ್ರವನ್ನು ಮುರಿದು ಲೇಖನ ಬರೆಯುವಂತೆ ಎಡ್ಮಿನ್ ಹೇಳಿರಬಹುದು ಹಾಗೆಂದು ಗ್ರಹಿಸಬಹುದು?.!. ಎಡ್ಮಿನ್ ನಿಯಮವನ್ನು ಮುರಿದುದು ಸ್ಪಷ್ಟವಾಗಿ ಗೊಚರಿಸುತ್ತದೆ. --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೪, ೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::ಇಂಗ್ಲಿಷ್ ವಿಕಿಪೀಡಿಯಡ್ದ್ ಟೆಂಪ್ಲೇಟು ಆತಿಜ್ಜಿ. ದಿಂಜ ಸರ್ತಿ ಟ್ರೈ ಮಲ್ತೆ. ಇನಿ ಕನ್ನಡಡ್ದ್ ಮಲ್ತೆ. ಬತ್ತುಂಡು. ಮಾತ ಟೆಂಪ್ಲೇಟುಲೆನ್ ತುಳುಕ್ ಅನುವಾದ ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೪, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== ಸರಿಪಡಿಸಿ ==
*[[ವಿಕಿಪೀಡಿಯ:ಸಮುದಾಯೊ ಪುಟೊ]] , [[ವಿಕಿಪೀಡಿಯ: ಚಾವಡಿ]]ಗೆ ಸಂಪರ್ಕ ಆಗುವುದಿಲ್ಲ.
*Under contraction ಟೆಂಪ್ಲೇಟ್ ನಲ್ಲಿ ತಪ್ಪಿದೆ ಸರಿ ಮಾಡಿ
* ವರ್ಗೊ:Pages with script errors ಇದನ್ನು ಯಾರು ಪಡಿಸೊದು???. ಎಡ್ಮಿನ್ ಏನು ಮಾಡುತ್ತಿದ್ದಾರೆ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೨೨:೨೯, ೪ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::@[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] - You are once again violating Wikipedia's friendly space policy. This is final warning. If you once again personally attack any editor, you will be banned from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೫, ೧೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::@[[ಬಳಕೆದಾರೆ:Pavanaja|Pavanaja]]ರೆ, ಕಿಶೋರ್ ಕುಮಾರ್ ರೈ ಯವರು [[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ನನ್ನ ಸದಸ್ಯ]] ಪುಟದಲ್ಲಿ ಮಾಡಿದ್ದು ಏನು?. ಅದನ್ನು ಯಾಕೆ ಪ್ರಸ್ತಾಪಿಸಿಲ್ಲ?. '''ಒಂದು ಕಣ್ಣಿಗೆ ಬೆಣ್ಣೆ ಒಂದು ಕಣ್ಣಿಗೆ ಸುಣ್ಣ''' ಯಾಕೆ?.ತಪ್ಪು ಮಾಡಿದ್ದನ್ನು ಹೇಳಿದರೆ ತಪ್ಪೆ?. ನ್ಯಾಯವೆಂದಾದರೆ ಎಲ್ಲಾರಿಗೂ ಸಮಾನವಾಗಿರಲಿ?.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೦೬:೪೪, ೧೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== Project Tiger Article writing contest Jury Update ==
Hello all,
[[File:Emoji u1f42f.svg|frameless|right|100px]]
There are some issues that need to be addressed regarding the Juries of the Project Tiger 2.0 article writing contest. Some of the User has [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|shown interest]] to be a jury and evaluate the articles created as the part of the writing contest. But they don't meet the [[:m:Growing Local Language Content on Wikipedia (Project Tiger 2.0)/Writing Contest/Jury|eligibility criteria]]. Please discuss this aspect with the community, if the community feel that they have the potential to be a jury then we can go ahead. If not please make a decision on who can be the jury members from your community within two days. The community members can change the juries members in the later stage of the writing contest if the work done is not satisfactory or the jury member is inactive with the proper discussion over the village pump.
Regards, <br>
Project Tiger team at [[:m:CIS-A2K|CIS-A2K]] <br>
Sent through--[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೬:೨೧, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== Newbie Biting ==
We are all aware of Newbie biting. One editor by User:Lokesha kunchadka who is indulging in Newbie biting in Kannada and Tulu Wikipedias from almost last 2-3 months. He was issued a warning by the admin in Kannada Wikipedia, link is [https://kn.wikipedia.org/wiki/%E0%B2%B8%E0%B2%A6%E0%B2%B8%E0%B3%8D%E0%B2%AF%E0%B2%B0_%E0%B2%9A%E0%B2%B0%E0%B3%8D%E0%B2%9A%E0%B3%86%E0%B2%AA%E0%B3%81%E0%B2%9F:Lokesha_kunchadka#Newbie_biting here].
I have been conducting Diversity Editathons from last 3 months. One of the major aims of these editathons is to bring more women editors. Before the new editor completes the article this person jumps in and adds templates to imply the article is not of good quality. The new editors, especially the women editors, are scared to continue editing because of this newbie biting. Apart from this I had written an article on 13th October 2019 with the template Under constriction for which he commented saying there is no such topic. I was planning to complete the article with reference to the title today.
I would like to bring to the notice of the community and to hear suggestions from experienced people on how do deal with this kind of situation.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೨:೩೭, ೧೪ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:Message copied from Kannada Wikipedia:
{{Quote|''ಅಕ್ಟೋಬರ್ ೧೨ ಮತ್ತು ೧೩ ರಂದು ಉಡುಪಿಯ ಮಹಿಳಾ ಕಾಲೇಜಿನಲ್ಲಿ ನೆಡೆದ ವೈವಿಧ್ಯತೆಯ ಸಂಪಾದನೋತ್ಸವಗಳು ೨೦೧೯ ರಲ್ಲಿ ನಮ್ಮ ಕಾಲೇಜಿನ ೧೯ ವಿದ್ಯಾರ್ಥಿನಿಯರು ಭಾಗವಹಿಸಿದ್ದರು. ಮಹಿಳಾ ವಿಜ್ಞಾನಿಗಳ ಬಗ್ಗೆ ಲೇಖನಗಳನ್ನು ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿಪೀಡಿಯಕ್ಕೆ ಸೇರಿಸಲಾಗಿತ್ತು. ಲೇಖನಕ್ಕೆ ಎರಡು ಉಲ್ಲೇಖಗಳು ಇರಲೇ ಬೇಕು, ಎಲ್ಲಾ ಲೇಖನಗಳಿಗೂ ಎರಡು ಉಲ್ಲೇಖಗಳನ್ನು ಸೇರಿಸಲಾಗಿತ್ತು. ಆದರೆ ಹೆಚ್ಚಿನ ಉಲ್ಲೇಖಗಳ ಅಗತ್ಯವಿದೆ ಎಂದು Lokesha kunchadka ರವರು ಟೆಂಪ್ಲೇಟ್ ಸೇರಿಸಿದ್ದಾರೆ. ಲೇಖನದ ಗುಣಮಟ್ಟದ ಮೇಲೆ ನಮಗೂ ಅರಿವಿದೆ. ಹೊಸಬರಿಗೆ ಹೆಚ್ಚಿನ ನಿಯಮವನ್ನು ತಿಳಿಸಿದರೆ ಅವರು ವಿಕಿಪೀಡಿಯಕ್ಕೆ ಬರೆಯಲು ಬರುವುದಿಲ್ಲ. ಈ ರೀತಿ ಮಾಡಿದರೆ ಹೊಸಬರು ನಿರುತ್ಸಾಹಗೊಳ್ಳುತ್ತಾರೆ. ನನ್ನ ಸ್ನೇಹಿತೆಯರು ಈಗ ಬರೆಯಲು ಹಿಂಜರಿಯುತ್ತಿದ್ದಾರೆ. ಕಾರಣ ಕೇಳಿದರೆ ನಾವು ಹಾಕಿದ ಲೇಖನದ ಉಲ್ಲೇಖಗಳು ಸರಿ ಇಲ್ಲ ಎಂದು ಬರುತ್ತಿದೆ ಮತ್ತು ಲೇಖನ ಸೇರಿಸಿದ ನಂತರ ಅದರಲ್ಲಿ ಉಲ್ಲೇಖದ ಅಗತ್ಯವಿದೆ ಎಂದು ಬರುತ್ತಿದೆ ಹಾಗಾಗಿ ನಾವು ಬರೆಯುವುದಿಲ್ಲ ಎಂದು ಹೇಳುತ್ತಿದ್ದಾರೆ. ನಾನು ಆ ಲೇಖನಗಳಿಗೆ ಅಗತ್ಯವಿರುವ ಉಲ್ಲೇಖಗಳನ್ನು, ಇನ್ಫೋಬಾಕ್ಸ್, ಆಂತರಿಕ ಮತ್ತು ಬಾಹ್ಯ ಕೊಂಡಿಗಳನ್ನು ಸೇರಿಸುತ್ತಿದ್ದೇನೆ. ಅಕ್ಷರಗಳು ಮತ್ತು ವಾಕ್ಯಗಳಲ್ಲಿ ತಪ್ಪಿದ್ದಲ್ಲಿ ಅದನ್ನೂ ಸರಿಪಡಿಸಿ ಲೇಖನ ಸೇರಿಸಿದ ವಿದ್ಯಾರ್ಥಿನಿಯರಿಗೆ ಅದರ ಬಗ್ಗೆ ತಿಳಿಸಿದ್ದೇನೆ ಕೂಡ. ಇದಲ್ಲದೆ ಕೆಲವು ಲೇಖನಗಳ ವಯಕ್ತಿಕ ಜೀವನ ಎಂಬ ವಿಭಾಗವನ್ನು ತೆಗೆದಿದ್ದಾರೆ. ಲೇಖನಗಳ ಗುಣಮಟ್ಟ ಕಡಿಮೆ ಇದ್ದರೆ ಯಾರು ಬೇಕಾದರು ಸರಿಪಡಿಸಬಹುದಲ್ಲ. ಅದಕ್ಕೆ ಟೆಂಪ್ಲೇಟ್ ಸೇರಿಸ ಬೇಕೆಂದಿಲ್ಲವಲ್ಲ. ಇದು ಹೊಸ ಲೇಖಕರ ಉತ್ಸಾಹವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತಿದೆ. ಈ ಸಮಸ್ಯೆಗೆ ಪರಿಹಾರವನ್ನು ಸಮುದಾಯದವರು ತಿಳಿಸಬೇಕಾಗಿ ಕೇಳಿಕೊಳ್ಳುತ್ತೇನೆ.--Arpitha05 (ಚರ್ಚೆ) ೧೪:೩೬, ೧೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (UTC) ''}}
::@[[User:Lokesha kunchadka]] - In spite of warnings, you are continuing your disruptive behaviour in Kannada and Tulu Wikipedias. This time you have also harassed newly joined woman editors. Explain me the reasons for your behaviour and give me reasons why you should not be barred from Kannada and Tulu Wikipedias? I am expecting a convincing logical answer by tomorrow--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೨೩:೧೫, ೧೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST) (Admin, Kannada and Tulu Wikipedias)
::೨೦೧೯ ಅಗಸ್ಟ್ ರಡ್ಡನೆ ತಾರೀಖ್ ತಾನಿ [[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]]ರೆ ಕೊರ್ತಿನ ಉತ್ತರೊ '''ಏರ್ ಉಲ್ಲೇಕೊ ಕೊರ್ಪುಜ್ಜೆರುಂದ್ ತೂಪುನೆ ಅಡ್ಮಿನ್ ಬೇಲೆ ಅತ್ತ್.''' --[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೩, ೧೬ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::::@[[User:Lokesha kunchadka]] - Instead of answering to the warning, you are indulging in whataboutery. You are also continuing adding templates to articles indicating more references are needed. But you yourself have created articles with no reference or just one reference. The link to such article is [[ಪತೆಂಗ ಬೀಚ್|here]] and [[ರಾಜಶ್ರೀ|here]]. It is noticed that you are harassing newly joined woman editors. You have continued this in spite of warnings. Hence [[User:Lokesha kunchadka]] is barred from Tulu Wikipedia for a month. If the practice is continued after the expiry of the ban, [[User:Lokesha kunchadka]] will be barred permanently from Tulu Wikipedia.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೭, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST) (Admin, Tulu Wikipedia)
:: ಎಡ್ಮಿನ್ ಬಾರಿ ಎಡ್ಡೆ ಬೇಲೆ ಮಲ್ತೆರ್. ಉಂದೆಕ್ಕ್ ಯಾನ್ ಪೂರ್ಣ ಪ್ರಮಾಣದ ಬೆಂಬಲ ಕೊರೊಂದುಲ್ಲೆ. ಉಂದು ಸುಮಾರ್ ದುಂಬೆ ಅವೊಡಂಡ್. ನನ ಅಂಚ ಮಲ್ಪುನಕ್ಲೆಗ್ ಬುದ್ಧಿಗಾಂಡ್[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೦:೨೧, ೧೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
: ಸಮುದಾಯೊಡು ಎಚ್ಚಿಕಮ್ಮಿ ಪಾತೆರೊಕತೆ ಬನ್ನಗ ಮಾತೆರೆಕ್ಲ ಬೇನೆ ಆಪುಂಡು. '''ಅಡ್ಮಿನ್ ಸೈತೆರೋ''' ಪನ್ಪುನವು ಏರೆಗ್ಲಾ ಬೇನೆ ಆಪುನವು. ಆ ನಿಲೆಟ್ ಆನಿಯೇ ಅಡ್ಮಿನ್ ತೀರ್ಮಾನೊ ದೆತೊಂತೊಲಿ. ಒಂತೆ ಪೊರ್ತಾಂಡಲಾ ತೀರ್ಮಾನೊ ಮಲ್ತಿನವು ಎಡ್ಡೆ ಆಂಡ್. ಪೊಸಬೆರ್ ಬರೆನಗ ಎಡ್ಡೆ ಆಂಡ್ಂದ್ ಬೆರಿ ಬೊಟ್ಟೊಡು. ಅಲ್ಪಲಾ ಮಾತೆರೆಕ್ಲಾ ಕಿರಿಕಿರಿ ಆಂಡ್. ಅಂಚಾದ್ ಅಡ್ಮಿನ್ ಮಲ್ತಿನವು ಸದ್ಯೊಗು ಸರಿಂದ್ ಎನ್ನ ಒಪ್ಪಿಗೆ.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೯, ೧೮ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::ಎನ್ಬ ಒಪ್ಪ ಉಂಡು, ಕೊಂಪೆನ್ ಒಗ್ಗಟ್ ಡ್ ಕಟ್ಟೊಡಾಯಿನ ನೆಲೆಟ್ ಬೇಲೆ ಅವೊಡು ಬುಡುತ್ ಬೇತೆ ನೆಲೆತ್ತ ಅಲೋಚನೆತಕುಲೆಗ್ ಉಂದು ಅಗತ್ಯ ಮಾನ್ಪೊಡು.--[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೦೭:೫೯, ೧೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ==
ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಲೇಕನೊ ಬರೆಪುನ ಸ್ಪರ್ಧೆ ನಡತ್ತೊಂಡ್ತೊಂಡ್ತ್ ಉಂಡು. ಅಯಿನ ವಿವರೊ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0) ಮೂಲುಂಡು]. ತುಳು ಬಾಸೆಡ್ ಎಂಚಿನ ವಿಸಯೊಳೆನ್ ಬರೆವುಡು ಪಣ್ಪಿನ ಪಟ್ಟಿ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest/Topics/Tulu ಮೂಲುಂಡು]. ಆ ಪಟ್ಟಿಡ್ತ್ ವಿಸಯೊ ಆಯ್ಕೆ ಮಲ್ತುದ್ ಬರೆಲೆ. ಬೊಕ್ಕ [https://meta.wikimedia.org/wiki/Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Writing_Contest ಈ ಪುಟೊಟ್] ಅಯಿನ್ submit ಮಲ್ಪುಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೧:೧೧, ೧೭ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ಕ್ ಬೋಡಾದ್ ಪಟ್ಟಿಡ್ ಇತ್ತ್ ನ ಬರವುಲೆನ್ ಬರೆವೊಂದು ಉಪ್ಪುನಗನೇ ಏರೋ ಪುದರ್ ಇಜ್ಜಂದಿನಕುಲು ಬತ್ತ್ ದ್ ಬರವುಲೆಗ್ ಟೆಂಪ್ಲೆಟ್ ಸೇರಾವುನೆ, ಅತ್ತ್ಂಡ ಬರವುನು ಮಾಜಾವುನ ಬೇಲೆ ಮಲ್ತೊಂದು ಉಲ್ಲೆರ್. ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್ ಮುಗಿಪುನಡೆ ಮುಟ್ಟ ಅನಾಮದೇಯೆರ್ ಏರ್ ಲಾ ಉಂದೆಕ್ಕ್ ಬರಂದಿಲೆಕೊ ಎಡ್ಮಿನ್ ತೂವೊನೊಡು ಪಂಡ್ದ್ ಕೇನೊಂದುಲ್ಲೆ.[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೩, ೨೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
::IPತ್ ಪುದರ್ ದಾಂತಿನಕುಲು ಕೆಲಸ ಮಾಂತೊಂತುಲ್ಲೆರ್. ಅಕುಲೆನ್ ತಡೆಂಡ ಲಾಯಿಕ್. --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೦೮:೨೩, ೨೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
:ಪೊಸ ಲೇಕನೊಗು <nowiki>[[ವರ್ಗೊ:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಪಂತೊಗು ಬರೆಯಿನ ಲೇಕನೊ]]</nowiki> ಪಂಡ್ದ್ ಸೇರ್ಪಾಲೆ. ದುಂಬೇ ಇತ್ತಿನ ಲೇಕನೊನು ಮಲ್ಲೆ ಮಲ್ತಿನೆ ಆಂಡ ಅಯಿಕ್ <nowiki>[[ವರ್ಗೊ:ಪ್ರೋಜೆಕ್ಟ್ ಟೈಗರ್-೨ ಪಂತೊಗು ಮಲ್ಲೆ ಮಲ್ತಿನ ಲೇಕನೊ]]</nowiki> ಪಂಡ್ದ್ ಸೇರ್ಪಾಲೆ.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೦೩, ೨೫ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
== Editing News #2 – Mobile editing and talk pages ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<em>[[m:VisualEditor/Newsletter/2019/October|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</em>
Inside this newsletter, the [[mw:Editing|Editing team]] talks about their work on the [[mw:Mobile visual editor|mobile visual editor]], on [[mw:Talk pages project|the new talk pages project]], and at [[wikimania:|Wikimania 2019]].
=== Help ===
<strong>What talk page interactions do you remember?</strong> Is it a story about how someone helped you to learn something new? Is it a story about how someone helped you get involved in a group? Something else? Whatever your story is, we want to hear it!
Please tell us a story about how you used a talk page. <mark>Please share a link to a memorable discussion, or describe it on the <strong>[[mw:Topic:V8d91yh8gcg404dj|talk page for this project]]</strong>.</mark> The team wants your examples. These examples will help everyone develop a shared understanding of what this project should support and encourage.
=== Talk pages project ===
The [[mw:Talk pages consultation 2019|Talk Pages Consultation]] was a global consultation to define better tools for wiki communication. From February through June 2019, more than 500 volunteers on 20 wikis, across 15 languages and multiple projects, came together with members of the Foundation to create a product direction for a set of discussion tools. The [[mw:Talk pages consultation 2019/Phase 2 report|Phase 2 Report]] of the Talk Page Consultation was published in August. It summarizes the product direction the team has started to work on, which you can read more about here: [[mw:Talk pages project|Talk Page Project project page]].
The team needs and wants your help at this early stage. They are starting to develop the first idea. Please add your name to the [[mw:Talk pages project#Getting involved|<strong>"Getting involved"</strong>]] section of the project page, if you would like to hear about opportunities to participate.
=== Mobile visual editor ===
The Editing team is trying to make it simpler to edit on mobile devices. The team is changing the [[mw:VisualEditor on mobile|visual editor on mobile]]. If you have something to say about editing on a mobile device, please leave a message at [[mw:Talk:VisualEditor on mobile|Talk:VisualEditor on mobile]].
==== [[mw:VisualEditor on mobile/Edit cards|Edit Cards]] ====
[[File:Edit Cards-before-v3-comparison.png|thumb|486x486px|What happens when you click on a link. The new Edit Card is bigger and has more options for editing links.]]
* On 3 September, the Editing team released [[:File:Edit Cards comparison v2 and v3.png|version 3 of Edit Cards]]. Anyone could use the new version in the mobile visual editor.
* There is an [[:File:Edit Cards comparison v2 and v3.png|updated design]] on the Edit Card for adding and modifying links. There is also a new, [[mw:VisualEditor on mobile/Edit cards#2 September 2019 - v3 deployment timing|combined workflow for editing a link's display text and target]].
* Feedback: You can try the new Edit Cards by opening the mobile visual editor on a smartphone. Please post your feedback on the [[:mw:Topic:V5rg0cqmikpubmjj|Edit cards talk page]].
==== [[mw:VisualEditor on mobile/Toolbar refresh|Toolbar]] ====
[[File:Toolbar-comparison-v1.png|thumb|486px|The editing toolbar is changing in the mobile visual editor. The old system had two different toolbars. Now, all the buttons are together. [[mw:Topic:V79x6zm8n6i4nb56|Tell the team what you think about the new toolbar]].]]
* In September, the Editing team updated the mobile visual editor's editing toolbar. Anyone could see these changes in the mobile visual editor.
** <em>One toolbar:</em> All of the editing tools are located in one toolbar. Previously, the toolbar changed when you clicked on different things.
**<em>New navigation:</em> The buttons for moving forward and backward in the edit flow have changed.
**<em>Seamless switching:</em> an [[phab:T228159|improved workflow]] for switching between the visual and wikitext modes.
* Feedback: You can try the refreshed toolbar by opening the mobile VisualEditor on a smartphone. Please post your feedback on the [[mw:Topic:V79x6zm8n6i4nb56|Toolbar feedback talk page]].
=== Wikimania ===
The Editing Team attended [[wmania:2019:Program|Wikimania 2019]] in Sweden. They led a session on [[wmania:2019:Community Growth/Visual editing on mobile: An accessible editor for all|the mobile visual editor]] and a session on [[wmania:2019:Community Growth/After Flow: A new direction for improving talk pages|the new talk pages project]]. They tested [[mw:VisualEditor on mobile/Toolbar refresh#v1 prototype|two]] new [[mw:VisualEditor on mobile/Edit cards#v3 prototype|features]] in the mobile visual editor with contributors. You can read more about what the team did and learned in [[mw:VisualEditor on mobile#Wikimania Stockholm: Overview|the team's report on Wikimania 2019]].
=== Looking ahead ===
* <strong>Talk Pages Project:</strong> The team is thinking about the first set of proposed changes. The team will be working with a few communities to pilot those changes. The best way to stay informed is by adding your username to the list on the project page: [[mw:Talk pages project#Getting involved|<strong>Getting involved</strong>]].
* <strong>Testing the mobile visual editor as the default:</strong> The Editing team plans to post results before the end of the calendar year. The best way to stay informed is by adding the project page to your watchlist: [[mw:VisualEditor on mobile/VE mobile default|<strong>VisualEditor as mobile default project page</strong>]].
* <strong>Measuring the impact of Edit Cards:</strong> This study asks whether the project helped editors add links and citations. The Editing team hopes to share results in November. The best way to stay informed is by adding the project page to your watchlist: [[mw:VisualEditor on mobile/Edit cards|<strong>Edit Cards project page</strong>]].
– [[User:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:User talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:User talk:Whatamidoing (WMF)|talk]])
</div> ೧೬:೪೨, ೨೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Johan (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/Target_lists/VE_201910/5&oldid=19500851 -->
== Project Tiger update: Let's walk together with Wikipedia Asian Month and WWWW ==
<div style="border:8px red ridge;padding:6px;>
[[File:Emoji_u1f42f.svg|thumb|140px|The Tiger says "Happy Dipavali" to you]]
::''Apologies for writing in English, Kindly translate this message if possible.''
Greetings!
First of all "Happy Dipavali/Festive season". On behalf of the Project Tiger 2.0 team we have exciting news for all. Thanks for your enthusiastic participation in Project Tiger 2.0. You also know that there is a couple of interesting edit-a-thons around. We are happy to inform that the '''Project Tiger article list just got bigger.'''
We'll collaborate on Project Tiger article writing contest with [[:m:Wikipedia_Asian_Month_2019|Wikipedia Asian Month 2019]] (WAM2019) and [[:m:Wiki_Women_for_Women_Wellbeing_2019|Wiki Women for Women Wellbeing 2019 (WWWW-2019)]]. Most communities took part in these events in the previous iterations. Fortunately this year, all three contests are happening at the same time.
Wikipedia Asian Month agenda is to increase Asian content on Wikipedias. There is no requirement for selecting an article from the list provided. Any topic related to Asia can be chosen to write an article in WAM. This contest runs 1 November till 30 November.
For more rules and guidelines, you can follow the event page on Meta or local Wikis.
WWWW focus is on increase content related to women's health issues on Indic language Wikipedias. WWWW 2019 will start from 1 November 2019 and will continue till 10 January 2020. A common list of articles will be provided to write on.
'''<span style="background:yellow;">In brief: The articles you are submitting for Wikipedia Asian Month or WWWW, you may submit the same articles for Project Tiger also.</span>''' Articles created under any of these events can be submitted to fountain tool of Project Tiger 2.0. Article creation rule will remain the same for every community. -- sent using [[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೮:೧೪, ೨೯ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Titodutta@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Wikipedia Asian Month 2019 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:WAM logo without text.svg|right|frameless]]
'''Wikipedia Asian Month''' is back! We wish you all the best of luck for the contest. The basic guidelines of the contest can be found on your local page of Wikipedia Asian Month. For more information, refer [[:m:Wikipedia Asian Month 2019|to our Meta page]] for organizers.
Looking forward to meet the next ambassadors for Wikipedia Asian Month 2019!
For additional support for organizing offline event, contact our international team [[:m:Talk:Wikipedia Asian Month 2019|on wiki]] or on email. We would appreciate the translation of this message in the local language by volunteer translators. Thank you!
[[:m:Wikipedia Asian Month 2019/International Team|Wikipedia Asian Month International Team.]]
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೨:೨೭, ೩೧ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
</div>
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/WAM&oldid=19499019 -->
== Project Tiger 2.0 - Hardware support recipients list ==
<div style="border:6px black ridge; background:#f2df94;">
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
Thank you all for actively participating and contributing to the writing contest of Project Tiger 2.0. We are very happy to announce the much-awaited results of the hardware support applications. You can see the names of recipients for laptop [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support/Laptops|here]] and for laptop see [[:m:Growing_Local_Language_Content_on_Wikipedia_(Project_Tiger_2.0)/Support/Internet|here]].
78 Wikimedians will be provided with internet stipends and 50 Wikimedians will be provided with laptop support. Laptops will be delivered to all selected recipients and we will email you in person to collect details. Thank you once again.
Regards. <small>-- [[User:Nitesh (CIS-A2K)]] and [[User:SuswethaK(CIS-A2K)]] (on benhalf of Project Tiger team) <br>
using --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೨:೪೫, ೮ ನವಂಬರ್ ೨೦೧೯ (IST)</small>
</div>
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ (Interface admin) ಆಯೆರ ನಿಕುಲೆನ ಬೆಂಬಲೊ ಬೋಡು ==
ತುಳು ವಿಕಿಪೀಡಿಯೊಡು ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ ಇಜ್ಜಿ. ಎಡಿಟ್ ಟೂಲ್ಬಾರ್ ಬದಲಾವಣೆ ಮಲ್ಪೆರೆ, ಸುಮಾರು ಅಡ್ಮಿನ್ ಬೇಲೆಲೆನ್ ಮಲ್ಪೆರೊ ಅವು ಬೋಡು. ಅಂಚಾತ್ ಯಾನ್ ಇಂಟರ್ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯೆರ ಅರ್ಜಿ ಪಾಡ್ಪೆ. ನಿಕುಲೆನ ಬೆಂಬಲೊ ಬೋಡು. Tulu Wikipedia does not have an Interface Admin. I would like to apply to become.--[[ಬಳಕೆದಾರೆ:Pavanaja|ಪವನಜ ಯು. ಬಿ.]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Pavanaja|ಪಾತೆರ್ಲೆ]]) ೧೦:೫೧, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
===ಒಪ್ಪಿಗೆ/Support===
# {{support}}-- ಈರ್ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಅಡ್ಮಿನ್ ಆದುಲ್ಲರ್. ಅಯಿತೊಟ್ಟುಗೆ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯೆರೆ ಎನ್ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೨:೫೪, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}}-- ಈರ್ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಅಡ್ಮಿನ್ ಆದ್ ಉಲ್ಲರ್. ಇತ್ತೆ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯರ್ ದಾಂಡ ತುಳು ವಿಕಿಪೀಡಿಯೊದ ಬುಳೆಚ್ಚಿಲ್ಗ್ ಪ್ರಯೋಜನ ಅವು ಪನ್ಪಿ ನಂಬುಗೆ ಎನ್ನವು. ಅಂಚಾದ್ ಈರ್ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಪುನೆಕ್ ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Kishorekumarrai|Kishorekumarrai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kishorekumarrai|ಪಾತೆರ್ಲೆ]]) ೧೮:೩೮, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಈರ್ ಇಂಟರ್ ಫೇಸ್ ಅಡ್ಮಿನ್ ಆಯರೆ ಎನ್ನ ಒಪ್ಪಿಗೆ ಸೂಚಿಸದೆ-[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) ೧೯:೪೪, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Dhanalakshmi .K. T|Dhanalakshmi .K. T]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Dhanalakshmi .K. T|ಪಾತೆರ್ಲೆ]]) ೨೦:೩೯, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು --[[ಬಳಕೆದಾರೆ:BHARATHESHA ALASANDEMAJALU|BHARATHESHA ALASANDEMAJALU]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:BHARATHESHA ALASANDEMAJALU|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೫, ೩೦ ಅಕ್ಟೋಬರ್ ೨೦೧೯ (IST)
# {{support}} --[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೭:೩೫, ೧ ನವಂಬರ್ ೨೦೧೯ (IST)
# {{support}} - ಎನ್ನ ಒಪ್ಪಿಗೆ ಉಂಡು.--[[ಬಳಕೆದಾರೆ:Arpitha05|Arpitha05]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Arpitha05|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೦, ೭ ನವಂಬರ್ ೨೦೧೯ (IST)
====ಕೆಲ ಪ್ರಶ್ನೆಲು\Question ====
* ಟೆಂಪ್ಲೇಟ್ ಅನುವಾದ ಮಾಲ್ತಿನ ಪಟ್ಟಿನ್(Trancelated Template list) ಜನವರಿಡ್ ಕೆಂಡೊ ಅಯಿನ ಪಟ್ಟಿ ಇತ್ನೆ [[ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ/2019|ಮುಟ್ಟ ಕೊರ್ತಿಜ್ಜಿ]] ದಾಯೆ?.
* ವರ್ಗೊ:Pages with script errors ಇಂದೆನ್ ನಮೊ [[ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ/2019|ಆನಿಯೆ ವರದಿ ಮಾಲ್ತೊ]] ಅತ್ನೆ ಮುಟ್ಟ ಎಚ್ಚರ ಇಜ್ಜಿಯಾಂಡ್ ದಾಯೆ?.
* ಇಂಪೊರ್ಟ್ ಮಾಲ್ಪುನಗ ಅಂಡ ಸುಲಭ ಇತ್ತ್ಂಡ್, ಮಸ್ತ್ ಟೆಂಪ್ಲೇಟ್ ಇಂಪೊರ್ಟ್ ಮಾಲ್ತಿವು error's ಉಂಡು ಅಯಿನ್ ಟೆಸ್ಟ್ (test, fix) ಮಾಲ್ಪಾರ? ಇಜ್ಜಿಯಾ?.
* ೬ ತಿಂಗೋಲು ಮುಟ್ಟ ಇಂಟರ್ ಪೇಸ್ ಎಡ್ಮಿನ್(Six Months valid interface adminship) ಯಾವಾಂದ?.
* ೬ ತಿಂಗೋಲು ಕರಿನೆಟ್ಟ್ ಬುಕ್ಕೊ(After ೬ month report and diceded community), ಮಾಲ್ತಿನ ಬೆಲೆತ ವರದಿ ಸಮುದಾಯೋಗು ಕೊರೊಡು.
* ೬ ತಿಂಗೊಲು ಕರಿನೆಟ್ಟ್ ಬುಕ್ಕೊ ಸಮುದಾಯೊ ಅಯಿತ್ತಾ ಮಿತ್ತ್ ಸಬೆ ನಡಪ್ಪೊಡು, ಅಲ್ಪ ದೆತ್ತೊಂದ್ನ ನಿರ್ಣೊಯೊನು ಸಮುದಾಯೊಗು ತೆರಿಪಾವೋಡು.--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೧:೫೯, ೧೭ ನವಂಬರ್ ೨೦೧೯ (IST)
===approved===
*ಪವನಜೆರೆಗ್ interface adminship ತಿಕ್ಕ್ತ್ಂಡ್--[[ಬಳಕೆದಾರೆ:Lokesha kunchadka|Lokesha kunchadka]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Lokesha kunchadka|ಪಾತೆರ್ಲೆ]]) ೧೩:೧೯, ೨೨ ನವಂಬರ್ ೨೦೧೯ (IST)
== Extension of Wikipedia Asian Month contest ==
In consideration of a week-long internet block in Iran, [[:m:Wikipedia Asian Month 2019|Wikipedia Asian Month 2019]] contest has been extended for a week past November. The articles submitted till 7th December 2019, 23:59 UTC will be accepted by the fountain tools of the participating wikis.
Please help us translate and spread this message in your local language.
[[:m:Wikipedia Asian Month 2019/International Team|Wikipedia Asian Month International Team]]
--[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೪೬, ೨೭ ನವಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/WAM&oldid=19592127 -->
== [WikiConference India 2020] Invitation to participate in the Community Engagement Survey ==
This is an invitation to participate in the Community Engagement Survey, which is one of the key requirements for drafting the Conference & Event Grant application for WikiConference India 2020 to the Wikimedia Foundation. The survey will have questions regarding a few demographic details, your experience with Wikimedia, challenges and needs, and your expectations for WCI 2020. The responses will help us to form an initial idea of what is expected out of WCI 2020, and draft the grant application accordingly. Please note that this will not directly influence the specificities of the program, there will be a detailed survey to assess the program needs post-funding decision.
*Please fill the survey at; https://docs.google.com/forms/d/e/1FAIpQLSd7_hpoIKHxGW31RepX_y4QxVqoodsCFOKatMTzxsJ2Vbkd-Q/viewform
*The survey will be open until 23:59 hrs of 22 December 2019.
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೪:೩೫, ೧೮ ದಸಂಬರ್ ೨೦೧೯ (IST)
<!-- Message sent by User:KCVelaga@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Titodutta/lists/Indic_VPs&oldid=19112563 -->
== Project Tiger updates - quality of articles ==
:''Excuse us for writing in English, kindly translate the message if possible''
Hello everyone,<br>
[[File:Emoji_u1f42f.svg|right|100px|tiger face]]
It has been around 70 days since Project Tiger 2.0 started and we are amazed by the enthusiasm and active participation being shown by all the communities. As much as we celebrate the numbers and statistics, we would like to reinstate that the quality of articles is what matters the most. Project Tiger does not encourage articles that do not have encyclopedic value. Hence we request participants to take care of the quality of the articles submitted. Because [[:en:Wikipedia:Wikipedia_is_not_about_winning|Wikipedia is not about winning]], it is about users collectively building a reliable encyclopedia.
Many thanks and we hope to see the energy going! <small>(on behalf of Project Tiger team) <br>
sent using --[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೧:೫೧, ೧೯ ದಸಂಬರ್ ೨೦೧೯ (IST)</small>
<!-- Message sent by User:Ananth (CIS-A2K)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Ananth_(CIS-A2K)/lists/Indic_VPs&oldid=19426666 -->
== SVG ಚಿತ್ರೊನ್ ತುಳುಟ್ ಅನುವಾದ ಮಾಲ್ಪುನ ಆಭಿಯಾನ ==
[[File:Commons-logo-en.svg|thumb|left|100px]]
[https://commons.wikimedia.org ವಿಕಿಕಾಮನ್ಸ್] ಮೂಲಕೊ ವಿಕಿಪೀಡಿಯಟ್ ವಿಜ್ಞಾನ, ತಂತ್ರಜ್ಞಾನ, ಶೈಕ್ಷಣಿಕ ಮಾಹಿತಿ ಸೇರಾವುನ ಅತ್ತಂದೆ ಮಸ್ತ್ ವಿಷಯಗ್ ಸಂಬಂಧಪಟ್ಟಿನ ಚಿತ್ರೊನ್ ಭಾರತೀಯ ಭಾಸೆಗ್ ಮಸ್ತ್ ಕಡಿಮೆ ಬಲಕೆ ಉಂಡು. ಅಂಚಾತ್ ಅಂಚಿನ ಚಿತ್ರೊನ್ ತುಳು ಸೇರಾತ್ ಬೇತೆ ಭಾರತೀಯ ಭಾಸೆಟ್ ಇಪ್ಪುನ ಅಭಿಯಾನ ೨೧ ಫೆಬ್ರವರಿ ೨೦೧೯ಡ್ತ್ ಸುರು ಮಾಲ್ಪುನೆ. ಅಂಚಾತ್ ಮಸ್ತ್ ಚಿತ್ರೊ ಇಂಗ್ಲೀಶ್ ಅವೃತ್ತಿಟ್ ಮೂಲವಾತ್ ಅಯಿನ ಭಾರತೀಯ ಭಾಷಾ ಆವೃತ್ತಿನ್ ತಯಾರುಮಾಲ್ಪುನ ಯೋಜನೆ ಉಂದು. ಈ ಚಿತ್ರೊ [[:en:Scalable Vector Graphics|Scalable Vector Graphics (svg)]] ಮಾದರಿತವ್. ಅಯಿನ್ ಇಂಕ್ ಸ್ಕೇಪ್ (Inkscape) ಅಂಚಿನ ತಂತ್ರಾಶೊಟ್ ದೆತ್ತ್ ಬದಲಾವಣೆ ಮಾಲ್ಪೊಲಿ. ಈ ಅಭಿಯಾನಟ್ ಕಲ್ಪಿಯರ ಮುಖ್ಯ ಸಂಗತಿ ಪಂಡ ಇಂಕ್ ಸ್ಕೇಪ್ ತಂತ್ರಾಂಶತ ಬಲಕೆ, ಅಯಿನ್ ಕನ್ನಡೊ ಚಿತ್ರೊತ ಆವೃತ್ತಿನ್ ತಯಾರ್ ಮಾಲ್ಪುನ, ವಿಕಿ ಕಾಮನ್ಸಿಗ್ ಅಪ್ಲೋಡ್ ಮಾಲ್ಪುನ. ಈ ಅಭಿಯಾನಡ್ ಮಸ್ತ್ ಸಂಖ್ಯೆಟ್ ಚಿತ್ರೊ ತಯಾರುಮಾಲ್ಪೊಡು, ಮಾಲ್ತಿನಂಗ್ಲೆಗ್ ಇನಾಮ್ ಉಂಡು. ಅಯಿಟ್ ತುಳು ಬುಕ್ಕ ತುಳು ವಿಕಿ ಸಮುದಾಯ ಸಕ್ರಿಯವಾತ್ ಪಾಲ್ ಪಡೆತ್ ನಮ್ಮ ಭಾಷೆತ contentನ್ ಅಭಿವೃದ್ಧಿ ಮಾಲ್ಪುಗೊ. ಇಂದೆಕ್ ಮಸ್ತ್ ವಿಶೇಷ ತಾಂತ್ರಿಕ ಜ್ಞಾನತ ಅವಶ್ಯಕತೆ ಬೊಡ್ಚಿ. ಅಂಚನೆ ಪೂರ ಆಸಕ್ತೆರ್ ಪಾಲ್ ಪಡೆಲೆಂದ್ ಕೋರಿಕೆ. ಈ ಸಂಬಂಧ ಫೆಬ್ರವರಿ ೨೧ ಬುಕ್ಕೊ ಒಂಜಿ ತರಬೇತಿ ಅತ್ತಂದೆ ಸಂಪಾದನೋತ್ಸವ ಪಾಡೊಕ್ಣಕೊ ಅಯಿನ ಆಲೋಚನೆ ಮಾಲ್ತೊ ತಾರೀಖು ಬುಕ್ಕೊ ಜಾಗೆನ್ ಕೆಲ ದಿನಟ್ ಘೋಷಣೆ ಮಾಲ್ಪೊ. ಬಲೆ.. ಕೈಜೋಡಾಲೆ.
<big>'''ಅಭಿಯಾನತ ಪುಟ ಮುಲುಂಡು: [https://commons.wikimedia.org/wiki/Commons:SVG_Translation_Campaign_2019_in_India SVG Translation Campaign 2019 in India]'''
'''ಪಾಲ್ ಪಡೆಪ್ಪುನಗ್ಲ್ ಮುಲ್ಪ ಪುದಾರ್ ಸೇರಾಲೆ:[https://commons.wikimedia.org/wiki/Commons:SVG_Translation_Campaign_2019_in_India/Participants Participants]'''</big>
== ಕಜ್ಜ ಕೂಟ ==
ತುಳು ಬಾಸೆದ ಪೊಸ ದೇಕಿಗಾದ್ ಪೊಸ ವರ್ಸೊದ ಅಲೋಚನೆನ್ ಒಟ್ಟು ಪಾಡಿಯೆರ ಬೋಡಾದ್ ತಾರೀಕ್ ೦೧ ಫೆಬ್ರುವರಿ ೨೦೨೦ಗ್ ಒಟ್ಟು ಸೇರುನೆಂದ್ ಪಾಡ್ತೊ. ಪಾಲು ಪಾಡೆಪುನಕುಲು [https://meta.wikimedia.org/wiki/Karavali_Wikimedians/Meetups/Meetup_at_Sri_Ramakrishna_Pre-University_College-10 ಮೂಲು] ಸೈನ್ ಪಾಡ್ಲೆ.
ಚರ್ಚೆತ ವಿಸಯೊಲು.
*ತುಲು ವಿಕ್ಷನರಿನ್ ಜುವೊ ಮಾನ್ಪುನ.
*ವಿಕಿ ಲವ್ಸ್ ಜಾನಪದ(Folklore).
*ವಿಕಿ ಲವ್ಸ್ ವಿಮೆನ್ ಸೌತ್ ಏಶಿಯಾ - ೨೦೨೦ ಅಯಿನ ತುಲುತ ಸಂಘಟಕೆರಾತ್ ಪಾಲ್ ಗೆತುನೊನಕುಲು.
*Wiki Summit 2020 ಪೊಪುನ ಬಗೆಟ್ಟ್
*Folkothanಗ್ ದುಡ್ಡುತ ವಿಚಾರೊ.
*ಇಲ್ಲ್ ಇಲ್ಲ್ ವಿಕಿ ಪಿಡಿಯಾ.
*ಒಂಜಿ ಕಾರ್ಯಗಾರೊ '''ಸಿಮಂತಿ ಬಾಯಿ ಸರಕಾರೊತ ಮ್ಯೂಸಿಯಂ'''ಡ್ ಮಾನ್ಪಿ ಬಗೆಟ್.
jc6sgfh76ne8j88bgfvflwh0m64dr51
ಟೆಂಪ್ಲೇಟ್:Birth, death and age templates
10
14957
370300
354283
2026-09-22T23:43:05Z
en>Scyrme
0
more accurate description
370300
wikitext
text/x-wiki
{{Navbox with collapsible groups
|name =Birth, death and age templates
|state={{if empty|{{{state|}}}|<includeonly>collapsed</includeonly>|<noinclude>uncollapsed</noinclude>}}
|title=Birth, death and age templates
|selected={{if empty|{{{selected|}}}|{{{expanded|}}}|{{{1|}}}}}
|listclass=hlist <!-- can't see why tracking=no doesn't work, but this does -->
|abbr1=BDA
|section1=birth, death, age
|state1 = <noinclude>uncollapsed</noinclude>
|content1=
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Birth templates |{{Resize|110%|Description{{\}}use }}
|{{Template link|Birth date}}|To display a birth date and related hidden metadata.
|{{Template link|Birth date text}}|
|{{Template link|Birth date and age}}|{{Template link with link off|Birth date}} with suffix '(age ''N'')'.
|{{Template link|Birth date and age2}}|{{Template link with link off|Birth date and age}} plus age as of a specified date.
|{{Template link|Birth date and age text}}|As {{Template link with link off|Birth date and age}}, but accepts dates in text form ('15 June 1950', 'June 15, 1950', 'June 1950', etc.).
|{{Template link|Birth date and age in years and days}}|{{Template link with link off|Birth date and age}}, but with the age displayed in years and days rather than just years.
|{{Template link|Birth year and age}}|Year of birth and approximate age.
|{{Template link|Birth based on age as of date}}|To display approximate birth year and current age given a particular date (e.g. when a dated reference mentions the age of a person), only works for living people.
|{{Template link|Birth based on age as of dates}}|To display approximate birth year and current age given several particular dates (e.g. when a dated reference mentions the age of a person), only works for living people.
|{{Template link|Birth based on age at death}}|To display approximate birth year based on age at death, or on age at a specific date if death date isn't known.
}}
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Death templates |{{Resize|110%|Description{{\}}use }}
|{{Template link|Death date}}|To display a death date and related hidden metadata.
|{{Template link|Death date text}}|
|{{Template link|Death date and age}}|{{Template link with link off|Death date}} with suffix '(aged ''N'')'; also called with {{Template link with link off|event date and age}}.
|{{Template link|Death date and given age}}|To display a death date and specified age.
|{{Template link|Death year and age}}|To display a year of, and approximate age at death.
}}
|abbr2=Age
|section2=age only
|state2 = <noinclude>uncollapsed</noinclude>
|content2=
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Conventional age templates |{{Resize|110%|Description{{\}}use }}
|{{Template link|Age in years, months, weeks and days}}|Number of complete years, months, weeks and days between two dates.
|{{Template link|Age in years, months and days}}|Number of complete years, months and days between two dates.
|{{Template link|Age in years and months}}|Number of complete years and remaining months between two dates.
|{{Template link|Age in years and days}}|Number of complete years and remaining days between two dates.
|{{Template link|Age in years and days nts}}|{{Template link with link off|Age in years and days}} with output formatted for use in [[Help:Sortable tables|number sortable tables]].
|{{Template link|Age in decimal years}}|Number of years between two dates, rounded to the specified number of decimal places.
|{{Template link|Age in years}}|Number of years between two dates.
|{{Template link|Age in years nts}}|{{Template link with link off|Age in years}} with output formatted for use in number sortable tables.
|{{Template link|Age in months}}|Number of months between two dates.
|{{Template link|Age in weeks and days}}|Number of weeks and days between two dates.
|{{Template link|Age in weeks}}|Number of weeks between two dates.
|{{Template link|Age in days}}|Age in days between two dates.
|{{Template link|Age in days nts}}|{{Template link with link off|Age in days}} with output formatted for use in number sortable tables.
}}
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Reverse-determined age template |{{Resize|110%|Description{{\}}use }}
|{{Template link|Age}}|Age based on number of complete years between two dates.
|{{Template link|Age nts}}|{{Template link with link off|Age}} with output formatted for use in [[Help:Sortable tables|number sortable tables]].
|{{Template link|Age as of date}}|Current age (in years) from a known age at a specified date.
|{{Template link|Age for infant}}|Current age for infant: months and days up to one year, years and months up to three years, and years beyond age 3.
}}
|abbr3=Dates
|section3=start{{\}}end dates
|state3 = <noinclude>uncollapsed</noinclude>
|content3=
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Date-focused templates |{{Resize|110%|Description{{\}}use }}
|{{Template link|Start date}} / {{Template link|End date}}|
|{{Template link|Start date text}} / {{Template link|End date text}}|
|{{Template link|Start date and age}} / {{Template link|End date and age}}|
}}
|abbr4=Misc
|section4=miscellaneous
|state4 = <noinclude>uncollapsed</noinclude>
|content4=
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Template |{{Resize|110%|Description{{\}}use }}
|{{Template link|OldStyleDate<!--|9 June|1672|30 May-->}}|Manual [[dual dating]] in [[Julian calendar|Julian]] and [[Gregorian calendar]]s.
|{{Template link|OldStyleDateDY}}|As {{Template link with link off|OldStyleDate}} for when Julian / Gregorian dates fall in different years.
|{{Template link|OldStyleDateNY}}|As {{Template link with link off|OldStyleDate}} but no year displayed.
|{{Template link|Julian to Gregorian}}|Automatically convert [[Old Style and New Style dates|Old Style to New Style]].
|{{Template link|Gregorian to Julian}}|Automatically convert New Style to Old Style.
|{{Template link|Annunciation Style to New Style}}|Automatically convert Annunciation Style to New Style.
|{{Template link|New Style to Annunciation Style}}|Automatically convert New Style to Annunciation Style.
|{{Template link|Unidentified for}}|Prepends "Unidentified for" before {{Template link with link off|Age in years, months and days}}.
|{{Template link|Missing for}}|Prepends "Missing for" before {{Template link with link off|Age in years, months and days}}.
}}
|belowclass=hlist
|belowstyle=font-weight:bold
|below=
*[[Wikipedia:Age calculation templates|About age calculation templates]]
*[[:Category:Date mathematics templates|Date mathematics templates]]
}}<noinclude>{{Documentation}}</noinclude>
sk96jg3ly540klikhrtut99snikeq69
370301
370300
2026-09-28T05:11:55Z
ChiK
1136
1 revision imported from [[:en:Template:Birth,_death_and_age_templates]]
370300
wikitext
text/x-wiki
{{Navbox with collapsible groups
|name =Birth, death and age templates
|state={{if empty|{{{state|}}}|<includeonly>collapsed</includeonly>|<noinclude>uncollapsed</noinclude>}}
|title=Birth, death and age templates
|selected={{if empty|{{{selected|}}}|{{{expanded|}}}|{{{1|}}}}}
|listclass=hlist <!-- can't see why tracking=no doesn't work, but this does -->
|abbr1=BDA
|section1=birth, death, age
|state1 = <noinclude>uncollapsed</noinclude>
|content1=
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Birth templates |{{Resize|110%|Description{{\}}use }}
|{{Template link|Birth date}}|To display a birth date and related hidden metadata.
|{{Template link|Birth date text}}|
|{{Template link|Birth date and age}}|{{Template link with link off|Birth date}} with suffix '(age ''N'')'.
|{{Template link|Birth date and age2}}|{{Template link with link off|Birth date and age}} plus age as of a specified date.
|{{Template link|Birth date and age text}}|As {{Template link with link off|Birth date and age}}, but accepts dates in text form ('15 June 1950', 'June 15, 1950', 'June 1950', etc.).
|{{Template link|Birth date and age in years and days}}|{{Template link with link off|Birth date and age}}, but with the age displayed in years and days rather than just years.
|{{Template link|Birth year and age}}|Year of birth and approximate age.
|{{Template link|Birth based on age as of date}}|To display approximate birth year and current age given a particular date (e.g. when a dated reference mentions the age of a person), only works for living people.
|{{Template link|Birth based on age as of dates}}|To display approximate birth year and current age given several particular dates (e.g. when a dated reference mentions the age of a person), only works for living people.
|{{Template link|Birth based on age at death}}|To display approximate birth year based on age at death, or on age at a specific date if death date isn't known.
}}
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Death templates |{{Resize|110%|Description{{\}}use }}
|{{Template link|Death date}}|To display a death date and related hidden metadata.
|{{Template link|Death date text}}|
|{{Template link|Death date and age}}|{{Template link with link off|Death date}} with suffix '(aged ''N'')'; also called with {{Template link with link off|event date and age}}.
|{{Template link|Death date and given age}}|To display a death date and specified age.
|{{Template link|Death year and age}}|To display a year of, and approximate age at death.
}}
|abbr2=Age
|section2=age only
|state2 = <noinclude>uncollapsed</noinclude>
|content2=
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Conventional age templates |{{Resize|110%|Description{{\}}use }}
|{{Template link|Age in years, months, weeks and days}}|Number of complete years, months, weeks and days between two dates.
|{{Template link|Age in years, months and days}}|Number of complete years, months and days between two dates.
|{{Template link|Age in years and months}}|Number of complete years and remaining months between two dates.
|{{Template link|Age in years and days}}|Number of complete years and remaining days between two dates.
|{{Template link|Age in years and days nts}}|{{Template link with link off|Age in years and days}} with output formatted for use in [[Help:Sortable tables|number sortable tables]].
|{{Template link|Age in decimal years}}|Number of years between two dates, rounded to the specified number of decimal places.
|{{Template link|Age in years}}|Number of years between two dates.
|{{Template link|Age in years nts}}|{{Template link with link off|Age in years}} with output formatted for use in number sortable tables.
|{{Template link|Age in months}}|Number of months between two dates.
|{{Template link|Age in weeks and days}}|Number of weeks and days between two dates.
|{{Template link|Age in weeks}}|Number of weeks between two dates.
|{{Template link|Age in days}}|Age in days between two dates.
|{{Template link|Age in days nts}}|{{Template link with link off|Age in days}} with output formatted for use in number sortable tables.
}}
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Reverse-determined age template |{{Resize|110%|Description{{\}}use }}
|{{Template link|Age}}|Age based on number of complete years between two dates.
|{{Template link|Age nts}}|{{Template link with link off|Age}} with output formatted for use in [[Help:Sortable tables|number sortable tables]].
|{{Template link|Age as of date}}|Current age (in years) from a known age at a specified date.
|{{Template link|Age for infant}}|Current age for infant: months and days up to one year, years and months up to three years, and years beyond age 3.
}}
|abbr3=Dates
|section3=start{{\}}end dates
|state3 = <noinclude>uncollapsed</noinclude>
|content3=
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Date-focused templates |{{Resize|110%|Description{{\}}use }}
|{{Template link|Start date}} / {{Template link|End date}}|
|{{Template link|Start date text}} / {{Template link|End date text}}|
|{{Template link|Start date and age}} / {{Template link|End date and age}}|
}}
|abbr4=Misc
|section4=miscellaneous
|state4 = <noinclude>uncollapsed</noinclude>
|content4=
{{Aligned table|fullwidth=y
|style=line-height:1.45em; text-align:left
|col1style=font-size:110%; white-space:nowrap; padding-right:1.0em; width:18em
|row1style=line-height:1.6em; font-weight:bold; border-bottom:1px solid #aaa
|Template |{{Resize|110%|Description{{\}}use }}
|{{Template link|OldStyleDate<!--|9 June|1672|30 May-->}}|Manual [[dual dating]] in [[Julian calendar|Julian]] and [[Gregorian calendar]]s.
|{{Template link|OldStyleDateDY}}|As {{Template link with link off|OldStyleDate}} for when Julian / Gregorian dates fall in different years.
|{{Template link|OldStyleDateNY}}|As {{Template link with link off|OldStyleDate}} but no year displayed.
|{{Template link|Julian to Gregorian}}|Automatically convert [[Old Style and New Style dates|Old Style to New Style]].
|{{Template link|Gregorian to Julian}}|Automatically convert New Style to Old Style.
|{{Template link|Annunciation Style to New Style}}|Automatically convert Annunciation Style to New Style.
|{{Template link|New Style to Annunciation Style}}|Automatically convert New Style to Annunciation Style.
|{{Template link|Unidentified for}}|Prepends "Unidentified for" before {{Template link with link off|Age in years, months and days}}.
|{{Template link|Missing for}}|Prepends "Missing for" before {{Template link with link off|Age in years, months and days}}.
}}
|belowclass=hlist
|belowstyle=font-weight:bold
|below=
*[[Wikipedia:Age calculation templates|About age calculation templates]]
*[[:Category:Date mathematics templates|Date mathematics templates]]
}}<noinclude>{{Documentation}}</noinclude>
sk96jg3ly540klikhrtut99snikeq69
ಬಳಕೆದಾರೆ ಪಾತೆರ:Shreelatha.Halemane
3
15786
370511
370252
2026-09-28T10:35:53Z
Vinoda mamatharai
55
/* ತಪ್ಪು ಸರಿಪಡಿಸುವಿಕೆ */
370511
wikitext
text/x-wiki
{{Template:Welcome|realName=|name=Shreelatha.Halemane}}
-- [[ಬಳಕೆದಾರೆ:ತುಳು ವಿಕಿಪೀಡಿಯ ಸಮುದಾಯೊ|ತುಳು ವಿಕಿಪೀಡಿಯ ಸಮುದಾಯೊ]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ತುಳು ವಿಕಿಪೀಡಿಯ ಸಮುದಾಯೊ|ಪಾತೆರ್ಲೆ]]) ೧೬:೫೫, ೫ ಮೇ ೨೦೨೪ (IST)
== WP:MOS 2025 ==
ನಮಸ್ಕಾರ, ಇಂಚಿಪೊದ ಬರವುದ ಲೇಕನೊ [[ಗೋಬಿ ಮರುಭೂಮಿ]], [[ಬಹ್ರೇನ್ ರಾಷ್ಟ್ರೀಯ ಮ್ಯೂಸಿಯಂ]], [[ಕಂಬೋಡಿಯಾ]] [[ಹವರ್ ದ್ವೀಪೊಲು]], [[ತಲಾತ್ ರೋಟ್ಫೈ]] ಬೊಕ್ಕ ಮಸ್ತ್ ಲೇಕನೊಲು ಈ ರೀತಿ ರಚನೆ ಇಜ್ಜಿ. ವಿಕಿ ಕೈಪಿಡಿ ಶೈಲಿ ದಯಮಲ್ತ್ ತಿರ್ತುದ ಉಲ್ಲೇಕೊನು ಅನುಸರಿಸಲೆ [[:en:Wikipedia:Manual_of_Style/Layout|ಯೋಜನೆದ ಶೈಲಿದ ಕೆಪಿಡಿ]] [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೨೦:೫೭, ೬ ದಸಂಬರ್ ೨೦೨೫ (IST)
== Invitation: Karavali Wikimedians Stall & Community Meetup at Mangaluru Lit Fest 2026 ==
<div style="margin: 1em auto; padding: 15px; border: 2px solid #4b0082; border-radius: 15px; background-color: #fdfaf5; box-shadow: 5px 5px 15px rgba(0,0,0,0.1); max-width: 100%;">
<div style="text-align: center; margin-bottom: 20px;">
<span style="font-size: 160%; font-weight: bold; color: #cc5500; text-shadow: 1px 1px 2px #ddd;">✨ Karavali Wikimedians @ Mangaluru Lit Fest 2026 ✨</span><br>
<span style="font-size: 120%; color: #4b0082; font-weight: bold;">Celebrating 10th Years of Tulu Wikipedia & 25th Years of Wikipedia</span></div>
Dear Wikimedians,
Warm greetings from '''Karavali Wikimedians User Group'''! 🌟
We are thrilled to invite you to the '''[[:m:Karavali Wikimedians Stall & Community Meetup at Mangaluru Lit Fest 2026|8th Edition of the Mangaluru Literature Festival (#MlrLitFest)]]'''. This year is a historic milestone as we kick-start the '''[[:m:Tulu Wikipedia 10th Anniversary|10th Anniversary of Tulu Wikipedia]]'''!
<div style="display: flex; flex-wrap: wrap; gap: 10px; width: 100%; background: transparent;">
<div style="flex: 1; min-width: 250px; padding: 10px; border: 1px dashed #cc5500; border-radius: 10px; background: #ffffff; box-sizing: border-box;">
<span style="font-size: 110%; color: #cc5500;">📅 '''When:'''</span><br>
'''10th & 11th January 2026'''
<br><br>
<span style="font-size: 110%; color: #cc5500;">📍 '''Where:'''</span><br>
'''Dr. TMA Pai International Convention Centre, Mangaluru'''
</div>
<div style="flex: 1; min-width: 250px; padding: 10px; border: 1px dashed #2e8b57; border-radius: 10px; background: #ffffff; box-sizing: border-box;">
<span style="font-size: 110%; color: #2e8b57;">🚀 '''The Wiki Stall:'''</span><br>
Visit our stall to see our work in language documentation and cultural preservation. We need your energy to help manage and showcase our projects!
</div></div>
<div style="margin-top: 20px; padding: 15px; background-color: #f3eafb; border-left: 10px solid #4b0082; border-radius: 5px;">
<span style="font-size: 130%; font-weight: bold; color: #202122;">📌 Special Community Meetup</span><br>
'''Date:''' 11th January 2026 (Day 2)<br>
'''Time:''' 11:00 AM (Followed by Lunch 🍛)<br>
'''Agenda:''' '''''Future roadmaps, upcoming projects, Community health and capacity building.'''''
</div>
<br>
* We warmly invite all community members to attend both days of the festival, and we strongly encourage you not to miss the second day’s meetup, which will be an important space for collective reflection and future planning. We look forward to your presence, participation, and support in making this celebration and gathering meaningful and successful.
'''Warm regards,'''<br/>
<span style="color: #4b0082; font-weight: bold;">President and Secretary</span><br/>Karavali Wikimedians User Group, Mangaluru</div>
<!-- Message sent by User:ChiK@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Karavali_Wikimedians/Events/delivery_list/MlrLitFest&oldid=29873017 -->
== Wikimedian's Group of Mainland China wishes you a Happy New Year! ==
<div class="nomobile"><div style="position:relative; width:600px; height:800px;">
{| style="background-color:#F9EBDA; background-image:linear-gradient(131deg, transparent 64%, #E8D3BA 64%, #E8D3BA 66%, #F0DDC5 66%, #F0DDC5 100%); border:8px solid #7D1506; border-radius:8px; padding:0px; width:100%; height:100%; position:absolute; top:0; left:0; box-shadow:2px 2px 15px rgba(125, 21, 6, 0.2); box-sizing:border-box;"
| style="vertical-align:middle; padding:10px; position:relative; height:100%;" |<span style="position:absolute; top:50%;left:50%;transform:translate(-50%,-50%); opacity:0.1; pointer-events:none; z-index:0;">[[File:丙午新年标志.svg|400px|link=]]</span><span style="position:absolute; top:15px; left:25px; color:#7D1506; font-weight:bold; font-size:2.6em; text-shadow:1px 1px 2px rgba(0,0,0,0.1);">Happy Chinese New Year!</span><br><div style="position:absolute; top:100px; left:25px; right:25px; color:#333333; font-weight:400; font-size:1.3em; line-height:1.5; z-index:1;">'''Dear Shreelatha.Halemane''':<br><br>As the Year of Snake glides into the shadow, <br>the noble Steed of Horse year gallops toward the dawn. <br><br>With a fluid quill, your masterful edits have woven the rich tapestry of the winter past; <br>Now, the heraldic horse steps forth, its joyful call echoing the vibrant promise of spring. <br><br>Thank you for {{fontcolor|#333333|link=ವಿಕಿಪೀಡಿಯ:ಸ್ಪ್ರಿಂಗ್_ಮಂತ್_ಎಡಿಟ್-ಅಥಾನ್|text=illuminating Wikipedia with such festive warmth}} at the turn of the year. <br><br>May this Chinese New Year bestow upon you enduring health and untroubled peace. <br>May you take the reins of your grandest ambitions, and may your endeavors enjoy unbridled success!<br><br><div style="text-align:right; margin-top:8px;">''Your sincerely, <br>{{fontcolor|#333333|link=m:WMGMC|text=Wikimedian's Group of Mainland China}}''</div></div>
|}
</div></div>{{If mobile
|tag=div
|1=<div style="box-sizing:border-box; width:100%; max-width:560px; margin:0 auto; background-color:#F9EBDA; background-image:linear-gradient(131deg, transparent 64%, #E8D3BA 64%, #E8D3BA 66%, #F0DDC5 66%, #F0DDC5 100%); border:8px solid #7D1506; border-radius:8px; padding:14px; box-shadow:2px 2px 15px rgba(125, 21, 6, 0.2);">
<div style="text-align:center; margin-bottom:12px;">
<span style="color:#7D1506; font-family:'LiSu', 'STXingkai', 'KaiTi', serif; font-weight:bold; font-size:2.2em; text-shadow:1px 1px 2px rgba(0,0,0,0.1);">Happy Chinese New Year!</span>
</div>
<div style="display:flex; align-items:center; gap:12px;">
<div style="flex:1 1 auto; font-size:14px; line-height:1.8; color:#333333; ">
<div><big>'''Dear Shreelatha.Halemane:'''</big></div><br>
<div>As the Year of Snake glides into the shadow, <br>the noble Steed of Horse year gallops toward the dawn. <br><br>With a fluid quill, your masterful edits have woven the rich tapestry of the winter past; <br>Now, the heraldic horse steps forth, its joyful call echoing the vibrant promise of spring. <br><br>Thank you for {{fontcolor|#333333|link=ವಿಕಿಪೀಡಿಯ:ಸ್ಪ್ರಿಂಗ್_ಮಂತ್_ಎಡಿಟ್-ಅಥಾನ್|text=illuminating Wikipedia with such festive warmth}} at the turn of the year. <br><br>May this Chinese New Year bestow upon you enduring health and untroubled peace. <br>May you take the reins of your grandest ambitions, and may your endeavors enjoy unbridled success!</div>
</div>
<div style="flex:0 0 auto;"><span style="display:block; opacity:0.9;">[[File:丙午新年标志.svg|150px|link=]]</span></div>
</div>
<div style="text-align:right; margin-top:8px; font-size:14px">''Your sincerely, <br>{{fontcolor|#333333|link=m:WMGMC|text=Wikimedian's Group of Mainland China}}''</div>
</div>
</div>
}}
—[[ಬಳಕೆದಾರೆ:FradonStar|FradonStar]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:FradonStar|ಪಾತೆರ್ಲೆ]]) ೦೯:೦೫, ೧೭ ಪೆಬ್ರವರಿ ೨೦೨೬ (IST)
== ಸ್ತ್ರೀವಾದೊ ಬುಕ್ಕೊ ಜಾನಪದೊ 2026ದ ಪುಗರ್ತೆ ==
<div lang="tcy" dir="ltr">
<div style="border: 2px solid maroon; background-color: #FAFAD2; color: #202122; padding: 1em; text-align: left;">
[[File:Feminism and Folklore 2026 logo-tcy.svg | 350px | right]]
'''ನಮಸ್ಕಾರ {{ROOTPAGENAME}}''',<br/>
[[ವಿಕಿಪೀಡಿಯ:ಸ್ತ್ರೀವಾದೊ ಬುಕ್ಕೊ ಜಾನಪದೊ 2026|ಸ್ತ್ರೀವಾದೊ ಬುಕ್ಕೊ ಜಾನಪದೊ 2026]] ಗ್ ಕೊಡುಗೆ ಕೊರ್ತಿನಕ್ಲೆಗ್ ಧನ್ಯವಾದೊಲು!<br/>
ವಿಕಿಪೀಡಿಯೊಡು ಜಾನಪದೊಡು ಪೊಣ್ಣುಲೆನ ಬಗ್ಗೆ ಲೇಕನೊಲೆನ್ ಬರೆಯೆರೆ ನಿಕ್ಲೆನ ಅವಿಶ್ರಾಂತ ಪ್ರಯತ್ನೊಗು ಎಂಕುಲು ಮೆಚ್ಚುಗೆ ಕೊರೊಂದುಲ್ಲ. ವಿಕಿಪೀಡಿಯೊಡು ಲಿಂಗ ಬುಕ್ಕೊ ಸಾಂಸ್ಕೃತಿಕ ಅಂತರೊನು ಕಮ್ಮಿ ಮಲ್ಪೆರೆ ನಿಕ್ಲೆನ ನಿರಂತರ ಪ್ರಯತ್ನೊಲು, ಸಮರ್ಪಣೆಡ್ದ್ ಎಂಕುಲು ಮಸ್ತ್ ಸ್ಫೂರ್ತಿ ಪಡೆಯೊಂದುಲ್ಲ.
ಈರ್ ಪ್ರತಿ ವರ್ಷಲಾ ಪಾಲ್ ಪಡೆಯೊಡು ಪಂದ್ ಎಂಕುಲು ಆಸೆ ಮಲ್ಪುವ!
ಪ್ರಾಮಾಣಿಕವಾದ್,<br/>
'''ಸ್ತ್ರೀವಾದೊ ಬುಕ್ಕೊ ಜಾನಪದೊ 2026 - ಸ್ಥಳೀಯ ಸಂಘಟನೆ ತಂಡ'''
</div></div>
<!-- Message sent by User:ChiK@tcywiki using the list at https://tcy.wikipedia.org/w/index.php?title=%E0%B2%B5%E0%B2%BF%E0%B2%95%E0%B2%BF%E0%B2%AA%E0%B3%80%E0%B2%A1%E0%B2%BF%E0%B2%AF:%E0%B2%B8%E0%B3%8D%E0%B2%A4%E0%B3%8D%E0%B2%B0%E0%B3%80%E0%B2%B5%E0%B2%BE%E0%B2%A6%E0%B3%8A_%E0%B2%AC%E0%B3%81%E0%B2%95%E0%B3%8D%E0%B2%95%E0%B3%8A_%E0%B2%9C%E0%B2%BE%E0%B2%A8%E0%B2%AA%E0%B2%A6%E0%B3%8A_2026/%E0%B2%AA%E0%B2%BE%E0%B2%B2%E0%B3%8D_%E0%B2%A6%E0%B3%86%E0%B2%A4%E0%B3%8A%E0%B2%A8%E0%B3%81%E0%B2%A8%E0%B2%95%E0%B3%81%E0%B2%B2%E0%B3%81/list&oldid=357914 -->
== Meeting Invitation: Karavali Wikimedians User Group (KWUG) ==
'''Namaskara!'''
You are cordially invited to the upcoming online meeting of the Karavali Wikimedians User Group. We will be discussing key projects, including the 10th-anniversary celebrations for Tulu Wikipedia and our cultural heritage campaigns.
'''Meeting Details:''' <br/>
📅 Date: Thursday, 23 April 2026 <br/>
⏰ Time: 07:30 PM (IST) <br/>
📍 Venue: Google Meet (Online) <br/>
🔗 Meeting Link: https://meet.google.com/xgs-fodf-ouy
'''Agenda:''' <br/>
Wiki Loves Tuluvas: Living and Cultural Heritage campaign. <br/>
Tulu Wikipedia 10th Anniversary: Planning the milestone celebration. <br/>
In-person Meeting: Scheduling our next physical gathering. <br/>
GLAM Activity: Updates on gallery and library collaborations. <br/>
Open Discussion: Other community matters.
Your participation and ideas are vital to the growth of our community. See you there...
'''More:''' <br/>
https://meta.wikimedia.org/wiki/Karavali_Wikimedians/Meetups/Online_Meetup_23_April_2026
'''On behalf''', <br/>
Karavali Wikimedians
<!-- Message sent by User:ChiK@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Karavali_Wikimedians/Events/delivery_list&oldid=30440036 -->
== ತುಳು ವಿಕಿಪೀಡಿಯ ೧೦ನೇ ವರ್ಸಂತಿಗೆದ ಬರೆವು ಪಂತೊಗು ಲೆಪ್ಪೋಲೆ! ==
{| style="border: 2px solid #FFCC00; background-color: #FFF9E6; padding: 10px; border-radius: 8px; font-family: sans-serif; width: 100%;"
|-
|
'''ನಮಸ್ಕಾರ!''' 🙏
ನಮ್ಮ ತುಳು ವಿಕಿಪೀಡಿಯ ಸುರು ಆದ್ ಇತ್ತೆ ಪತ್ತ್ ವರ್ಷದ ಸಂಭ್ರಮೋಡುಂಡು. ಈ ಎಡ್ಡೆ ಲೇಸ್ದ ನೆನಪುಗಾದ್, ನಮ್ಮ ತುಳು ಬಾಸೆ ಬುಕ್ಕೊ ಸಂಸ್ಕೃತಿನ್ ಇಂಟರ್ನೆಟ್ಡ್ ಜಗತ್ತ್ಗೇ ತೆರಿಪಾಯೆರೆ ಒಂಜಿ ಪೊರ್ಲುದ '''ಲೇಖನ ಬರೆಪುನ ಪಂತೊನು''' ದೀಡುಂಡು.
ನಮ್ಮ ತುಳುನಾಡ್ದ ಇತಿಹಾಸ, ಸಂಸ್ಕೃತಿ, ಆಚಾರ-ವಿಚಾರದ ಬಗ್ಗೆ ಜ್ಞಾನ ಉಪ್ಪುನ ಮಾತೆರೆಗ್ಲಾ ಮುಲ್ಪ ಮುಕ್ತ ಆಯಿನ ಅವಕಾಶ ಉಂಡು!
=== 📅 ಪಂತೊದ ದಿನೊಕ್ಕುಲು ===
* '''ಸುರು ಆಪುನ ದಿನ:''' ಜೂನ್ ೫, ೨೦೨೬ (00:00 UTC)
* '''ಮುಗಿಯುನಾ ದಿನ:''' ಆಗಸ್ಟ್ ೪, ೨೦೨೬ (11:59 UTC)
=== 📝 ಪಂತೊದ ನಿಯಮೊಲು ===
# '''ವಿಷಯ:''' ನಮ್ಮ ಸ್ಥಳೀಯ ಸಂಸ್ಕೃತಿ ಬೊಕ್ಕ ತುಳುನಾಡ್ದ ಬಗ್ಗೆ ಇಪ್ಪೊಡು.
# '''ಗಾತ್ರ:''' ಪೊಸ ಲೇಖನ ಅತ್ತಂಡ ಎಕ್ಸ್ಪ್ಯಾಂಡ್ ಮಲ್ತಿನ ಲೇಖನ ಕಮ್ಮಿ ಪಂಡಲಾ '''೩೦೦ ಪದೊಕುಲು''' (ಅತ್ತಂಡ ೩,೦೦೦ ಬೈಟ್ಸ್) ಇಪ್ಪೊಡು.
# '''ಗುಣಮಟ್ಟ:''' ಸ್ವಂತ ಬರೆತಿನ ಇಪ್ಪೊಡು (Copy-paste ಬುಕ್ಕೊ ಮೆಷಿನ್ ಟ್ರಾನ್ಸ್ಲೇಟ್ ಮಲ್ದಿನ ಲೇಖನೊಲು ಬಲ್ಲಿ). ಸರಿಯಾಯಿನ ಆಧಾರ/ಲಿಂಕ್ ದೀಡೊಡು.
=== 🏆 ಬೊಮ್ಮನೊಲು ===
* ವಿಶೇಷ ಬಹುಮಾನೊಲು ಬುಕ್ಕೊ ಸರ್ಟಿಫಿಕೇಟ್ಲು ಉಂಡು! (ವಿವರೊಲು ಬೇಗನೇ ಪ್ರಕಟ ಆಪುಂಡು).
----
📢 '''ಹೆಚ್ಚಿನ ಮಾಹಿತಿ ಬುಕ್ಕೊ ಪಾಲ್ ಪಡೆಯರೆ ಈ ಪುಟೊಗು ಬಲೆ:''' [[tcy:ವಿಕಿಪೀಡಿಯ:10ನೇ ವರ್ಸಂತಿಗೆದ ಬರವು ಪಂತೊ|ವಿಕಿಪೀಡಿಯ:10ನೇ ವರ್ಸಂತಿಗೆದ ಬರವು ಪಂತೊ]]
ನಿಕ್ಲೆನ ಅಕ್ಷರೊಲು ನಮ್ಮ ತುಳು ಬಾಸೆಗ್ ಬಲ ಕೊರಡ್. ಬಲೆ, ಮಾತೆರ್ಲಾ ಒಟ್ಟಿಗೆ ಸೇರ್ದ್ ತುಳು ವಿಕಿಪೀಡಿಯನ್ ಬಂಗಾರ ಮಲ್ಪುಗ!
|}
[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೧೯:೪೮, ೪ ಜೂನ್ ೨೦೨೬ (IST)
<!-- Message sent by User:ChiK@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Tulu_Wikipedia_10th_Anniversary/delivery_list&oldid=30611683 -->
== Wikipedia Asian Month 2025 Golden Barnstar ==
<div lang="en" dir="ltr">
<div style="text-align: center;">
[[File:2025 Wikipedia Asian Month Special Barnstar.png|500px]]</div>
[[User:Betty2407|Betty2407]] ([[User talk:Betty2407|talk]]) 08:38, 6 June 2026 (UTC) on behalf of Wikipedia Asian Month User Group
</div>
<!-- Message sent by User:Betty2407@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Betty2407/WAMMassMessagelist2&oldid=30642952 -->
== Congratulations to the Local Winners of Feminism and Folklore 2026 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:Feminism and Folklore 2026 logo.svg|right|350px]]
Dear {{PAGENAME}},
The Feminism and Folklore International Organizing Team is pleased to congratulate the Local Winners of '''[[:m:Feminism and Folklore 2026|Feminism and Folklore 2026]]'''.
Local Winners are participants who achieved top rankings within their respective language communities through their valuable contributions to documenting folklore, women's history, culture, traditions, and related knowledge on Wikimedia projects in their local languages.
Your efforts have helped enrich Wikimedia content, preserve cultural heritage, and improve the representation of diverse communities and knowledge systems across the movement. We sincerely appreciate your dedication and contribution to the success of the campaign.
=== Appreciation Form ===
As a token of appreciation to receive prizes, all Local Winners are requested to complete the following form by '''22 June 2026'''.
'''Form link''' -
[https://docs.google.com/forms/d/e/1FAIpQLSdGU7vkzANkB8P1k2X-NPwOwqBoTZafzgUZ-23wnVCeW2cj3g/viewform here]
; Deadline
: 22 June 2026
Please ensure that all information provided in the form is accurate and complete. This information will be used for the appreciation process.
=== Thank you ===
We extend our heartfelt thanks to all Local Winners for their outstanding contributions and continued support of free knowledge. Your work has strengthened local-language content and helped make knowledge about folklore and women more accessible to communities around the world.
Congratulations once again on your achievement.
—''Feminism and Folklore International Organizing Team''
</div>
--[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೨:೫೫, ೭ ಜೂನ್ ೨೦೨೬ (IST)
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/wlf2026&oldid=30649454 -->
== Thank you for being a part of Feminism and Folklore 2026 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:Feminism and Folklore 2026 logo.svg|right|350px]]
Dear {{PAGENAME}},
Your contributions helped make this year's [[:Feminism and Folklore 2026|Feminism and Folklore]] campaign a great success, and we are truly grateful for your time, knowledge, and dedication to documenting women's stories and folklore on Wikimedia projects.
As we reflect on this year's campaign and prepare for the next edition, we'd love to hear about your experience. Please take a few minutes to fill out our feedback form and share your thoughts and suggestions.
As a token of our appreciation, everyone who completes the form will receive a '''special digital postcard'''! in their email. This year marks '''''25 years of Wikipedia''''', and the postcard has been created to celebrate this milestone and to recognize the incredible efforts of participants like you who continue to enrich free knowledge for the world.
'''Form Link - [https://docs.google.com/forms/d/e/1FAIpQLSdqFZN9IdWbAnZ_7DyG5bIsuq7KAkdsIxweC_TdPH9In-tthQ/viewform?usp=dialog here]'''
Please complete the feedback form by '''25 June 2026'''.
Thank you once again for making Feminism and Folklore 2026 a success. We hope to see you again in future campaigns!
Best regards,
Feminism and Folklore international Team.
--[[ಬಳಕೆದಾರೆ:MediaWiki message delivery|MediaWiki message delivery]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:MediaWiki message delivery|ಪಾತೆರ್ಲೆ]]) ೨೦:೦೧, ೧೮ ಜೂನ್ ೨೦೨೬ (IST)
</div>
<!-- Message sent by User:Tiven2240@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/wlf2026&oldid=30704478 -->
== ತುಳು ವಿಕಿಪೀಡಿಯಾದ ೧೦ನೇ ವರ್ಸೊದ ಸಂಭ್ರಮದ ಉಚ್ಚಯ ==
<div style="background: #fffdf5; border: 2px solid #800000; border-radius: 8px; padding: 18px; max-width: 650px; margin: 15px auto; font-family: sans-serif; color: #222; line-height: 1.6;">
<!-- Banner Header -->
<div style="text-align: center; border-bottom: 2px solid #ffe082; padding-bottom: 10px; margin-bottom: 15px;">
<h2 style="color: #d84315; margin: 0 0 5px 0; border: none; font-size: 22px;">🎉 ತುಳು ವಿಕಿಪೀಡಿಯದ ೧೦ನೇ ವರ್ಷದ ಆಚರಣೆ</h2>
<p style="margin: 0; font-weight: bold; color: #555;">ಮಾತೆರೆಗ್ಲಾ ಎಡ್ಡೆಪ್ಪುಲು!</p></div>
<p>ಸೆಪ್ಟೆಂಬರ್ 12 ಬುಕ್ಕೊ 13ನೇ ತಾರೀಕ್ದಾನಿ ಕುಡ್ಲಡ್ ನಡಪರೆ ಇಪ್ಪುನ ತುಳು ವಿಕಿಪೀಡಿಯದ ಪತ್ತನೇ ವರ್ಷದ ಆಚರಣೆನ್ ತೆರಿಪಾವರೆ ಎಂಕ್ಲೆಗ್ ಮಸ್ತ್ ಕುಸಿ ಆವೊಂದುಂಡು.</p>
<!-- Key Event Details -->
<div style="background: #fff8e1; border-left: 4px solid #ff8f00; padding: 10px 14px; margin: 12px 0;"><b>📅 ತಾರೀಕ್:</b> ಸೆಪ್ಟೆಂಬರ್ 12 ಬುಕ್ಕೊ 13<br><b>📍 ಜಾಗೆ:</b> ಕುಡ್ಲ (ಜಾಗೆ ನಿಗಾಂಟಾತ್ಜಿ)</div>
<p>ಆಚರಣೆ ಮಲ್ಪಿಯರ ಸುರು ಆತ್ಂಡ್. ಜವಾಬ್ದಾರಿಲೆನ್ ತಂಡೊ ಆದ್ ಪಟ್ಟೊಂದು, ಒಟ್ಟು ಸೇರ್ದ್ ಈ ಮೈಲಿಗಲ್ಲ್ನ್ ಮಾತೆರೆಗ್ಲಾ ಒಂಜಿ ನೆಂಪು ಇಪ್ಪುನಂನೆ ಆಚರಣೆ ಮಲ್ಪಿಯರ ಎಂಕುಲು ಎದುರು ತೂವೊಂದುಲ್ಲ.</p>
<p>ಜವಾಬ್ದಾರಿ ದೆತೊಂದು ಸ್ವಯಂಸೇವಕೆರಾದ್ ಈ ಲೇಸ್ಗ್ ಸಕಾಯೊ ಕೊರಿಯರ ಇಚ್ಚೆ ಇತ್ತ್ಂಡ, ದಯಮಲ್ತ್ ಎಂಕ್ಲೆಗ್ ತೆರಿಪಾಲೆ. ಪಾಲ್ ದೆತೊನಿಯರ ಮಾತೆರೆಗ್ಲಾ ಅವಕಾಸೊ ಉಂಡು ಅಂಚನೆ ನಿಕ್ಲೆನ ಬೆರಸಾಯೊ ಇತ್ತ್ಂಡ ಎಂಕ್ಲೆಗ್ ಕುಸಿಯಾಪುಂಡು.</p>
<p>ವ್ಯವಸ್ತೆ ಮಲ್ಲಪುನೆ - ವಿಸೇಸವಾದ್ ಒನಸ್ ತೆನಸ್ ಬುಕ್ಕೊ ಲಾಜಿಸ್ಟಿಕ್ಸ್ ಆಯೋಜಿಸಯರ ದಯಮಲ್ತ್ ಲಗತ್ತಿಸಾಯಿನ ಗೂಗಲ್ ಫಾರ್ಮ್ನ್ ಬರ್ತಿ ಮಲ್ತ್ದ್ ನಿಗ್ಲ್ ಬರ್ಪುನೆನ್ ಎಂಕ್ಲೆಗ್ ತೆರಿಪಾಲೆ.</p>
<!-- CTA Registration Button -->
<div style="text-align: center; margin: 20px 0; background: #fff8e1; color: #ffffff !important; padding: 10px 20px; text-decoration: none; font-weight: bold; border-radius: 4px; display: inline-block;">[https://docs.google.com/forms/d/e/1FAIpQLSenIOP2YtOn3bbxSU2ijO5YeYveIECUu_UovVREKz7Iy-jkjg/viewform?usp=dialog📝 ಗೂಗಲ್ ಫಾರ್ಮ್ ಬರ್ತಿ ಮಲ್ಪಿ (ಆಗಸ್ಟ್ 13 ಮುಟ್ಟ)]</div>
<!-- Note Box -->
<div style="background: #e8f5e9; border: 1px solid #c8e6c9; border-radius: 4px; padding: 10px 14px; font-size: 14px; color: #1b5e20; margin: 12px 0;"><b>📌 ಗಮನಿಸಲೆ:</b> ನಮೊ ಒಂಜಿ ಕಿನ್ಯ ಬಜೆಟ್ಡ್ ಬೇಲೆ ಮಲ್ತೊಂದಿಪ್ಪುನೆ. ಅಯಿಡ್ದಾದ್ ನೆರೆಕರೆ ತಾಲೂಕು, ಜಿಲ್ಲೆದಗ್ಲ್ ಪಾಲ್ ಪಡೆವೊನ್ಬೆರ್. ಅಂಚನೇ ದೂರೊದ ಜಿಲ್ಲೆದಕ್ಲ್ ಬರೊಂದುಲ್ಲೆರ್. ಕುಡ್ಲದ ಪಿದಯಿಡ್ದ್ ಬರ್ಪುನಕ್ಲೆಗ್ ಉಂತುನೆಗ್ ಬೆಂಬಲೊ ಕೊರೊಂದುಲ್ಲೊ. ದೂರೊದಕ್ಲೆಗ್ ಉಂತುನ ವ್ಯವಸ್ತೆನ್ ಮಲ್ಪೊಡು, ಅಂಚನೆ ವನಸ್ಗ್ ಪನೊಡು ಪನ್ಪುನ ನೆಲೆಟ್ ನಿಕ್ಲ್ ಬರ್ಪುನೆನ್ ದುಂಬೆ ಪನ್ಲೆಂದ್ ವಿನಂತಿ ಮಲ್ತೊಂದುಲ್ಲೊ.</div>
<p>ಕುಡ್ಲದ ಮಾತೆರೆನ್ಲಾ ತುಳು ವಿಕಿಪೀಡಿಯದ 10 ವರ್ಸೊದ ಗೌಜಿನ್ ಒಟ್ಟಾದ್ ಆಚರಣೆ ಮಲ್ಪಿಯರ ಎದುರು ತೂವೊಂದುಲ್ಲೊ! 🙌</p>
<!-- Signature -->
<div style="text-align: right; margin-top: 15px; font-size: 14px; color: #666; border-top: 1px solid #eee; padding-top: 8px;"> ಪತ್ತನೇ ವರ್ಸೊದ ತಯಾರಿಡ್ ಪಾಲ್ ಪಡೆಯಿನ ಮಾತೆರೆಗ್ಲಾ ಎಡ್ಡೆಪುದ ಸೊಲ್ಮೆಲು.<br> <b>ಈವೆಂಟ್ ಕೋ-ಆರ್ಡಿನೇಟರ್</b>, ತುಳು ವಿಕಿಪೀಡಿಯ ಪತ್ತನೆ ವರ್ಸಾಚರಣೆ</div>
</div>
<!-- Message sent by User:ChiK@tcywiki using the list at https://tcy.wikipedia.org/w/index.php?title=%E0%B2%B5%E0%B2%BF%E0%B2%95%E0%B2%BF%E0%B2%AA%E0%B3%80%E0%B2%A1%E0%B2%BF%E0%B2%AF:10%E0%B2%A8%E0%B3%87_%E0%B2%B5%E0%B2%B0%E0%B3%8D%E0%B2%B8%E0%B2%82%E0%B2%A4%E0%B2%BF%E0%B2%97%E0%B3%86/%E0%B2%B2%E0%B3%86%E0%B2%AA%E0%B3%8D%E0%B2%AA%E0%B3%8B%E0%B2%B2%E0%B3%86&oldid=365205 -->
== Your article [[ಮನಂಚಿರ]] ==
[[File:Information.svg|25px|alt=Information icon]] Welcome, and thank you for [[Special:Contributions/Shreelatha.Halemane|contributing]] the page [[:ಮನಂಚಿರ]] to Wikipedia. While you have added the page to the ''Tulu'' version of Wikipedia, the article is not in Tulu; if you would like to contribute to a Wikipedia in another language, please visit the [[list of Wikipedias]] and see if a version of Wikipedia exists in your desired language. Otherwise, we invite you to translate it into Tulu. It has been listed at [[WP:PNT|Pages needing translation into Tulu]], but if it is not translated within two weeks, the article may be listed for deletion. Thank you. <!-- Template:uw-nottulu --> [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೨೩:೪೭, ೧೭ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
== [[Draft:ಮನಂಚಿರ|ಮನಂಚಿರ]] moved to draftspace ==
Thanks for your contributions to [[Draft:ಮನಂಚಿರ|ಮನಂಚಿರ]]. Unfortunately, I do not think it is ready for publishing as a live article at this time because '''it is a poor translation''' and '''it consists of machine-generated text'''.
I have converted it to a draft which you can improve, undisturbed for a while.
Please see more information at [[:en:Help:Unreviewed new page|Help:Unreviewed new page]].
When the article is ready for publication, please click on the "Submit the draft for review!" button at the top of the page OR move the page back. [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೧೭:೧೭, ೧೮ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
== August 2026 ==
[[File:Stop hand nuvola.svg|30px|alt=Stop icon]] You may be '''[[:en:Wikipedia:Blocking policy|blocked from editing]] without further warning''' the next time you edit Wikipedia using a [[:en:large language model]], which is [[:en:Wikipedia:Writing articles with large language models|prohibited]], as you did at [[:ಧೋಲಾವಿರ]]. [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೧೫:೫೫, ೨೦ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
=== ತಪ್ಪು ಸರಿಪಡಿಸುವಿಕೆ ===
ಸರ್ ನಮಸ್ತೆ, ನಾನು ಬರೆದಿರುವ ಅರ್ಟಿಕಲ್ನಲ್ಲಿ ಎನಾದರೂ ತಪ್ಪುಗಳಿದ್ದಲ್ಲಿ ದಯವಿಟ್ಟು ತಿಳಿಸಿ. ಸರಿಯಾಗಿ ಯಾವ ಆರ್ಟಿಕಲ್ ಮತ್ತು ಎಲ್ಲಿ ಯಾವ ವಾಕ್ಯ ಸರಿಪಡಿಸಬೇಕೆಂಬುದನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ತಿಳಿಸಿ.ಖಂಡಿತವಾಗಿಯೂ ಸರಿಪಡಿಸುತ್ತೇನೆ...ನನ್ನ ಮಾತೃ ಭಾಷೆ ಕನ್ನಡ ಆದ್ದರಿಂದ ತುಳುವಿನಲ್ಲಿ ಗೊತ್ತಿರುವ ರೀತಿಯಲ್ಲಿ ಅರ್ಟಿಕಲ್ ಮಾಡುತ್ತಿದ್ದೇನೆ. [[ಬಳಕೆದಾರೆ:Shreelatha.Halemane|Shreelatha.Halemane]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Shreelatha.Halemane|ಪಾತೆರ್ಲೆ]]) ೧೪:೧೦, ೨೧ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
:ನಮಸ್ಕಾರ.
:ಲೇಖನವನ್ನು ಯಾವುದೇ ಭಾಷೆಯಿಂದ ತುಳುವಿಗೆ ಅಥವಾ ಕನ್ನಡಕ್ಕೆ ಅನುವಾದಿಸುವಾಗ ಓದುಗರಿಗೆ ಅರ್ಥವಾಗಬೇಕಾದ್ದು ಬಹಳ ಮುಖ್ಯ. ನಿಮ್ಮ ಧೋಲಾವಿರ ಬರಹದಲ್ಲಿ ಇರುವುದು ಇದೇ ಸಮಸ್ಯೆ- ನನ್ನ ಪ್ರತಿಕ್ರಿಯೆ ಈ ಲೇಖನಕ್ಕೆ ಮಾತ್ರ, ಬೇರೆ ಲೇಖನಗಳನ್ನು ನನು ಗಮನಿಸಿಲ್ಲ- ಬರೆದ ಲೇಖನವು ಅರ್ಥಬದ್ಧವಾಗಿ ಇರಬೇಕಾದ್ದು ಬಹಳ ಮುಖ್ಯ. ಸರಳವಾಗಿ ಎಲ್ಲರಿಗೂ ಅರ್ಥವಾಗುವ ಹಾಗೆ ಬರೆಯಿರಿ ಎಂಬ ವಿನಂತಿ. [[ಬಳಕೆದಾರೆ:Mahaveer Indra|Mahaveer Indra]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Mahaveer Indra|ಪಾತೆರ್ಲೆ]]) ೧೪:೫೫, ೨೧ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
::ಸರಿಪಡಿಸಿ ಬರೆಯುತ್ತಿದ್ದೇನೆ. [[ಬಳಕೆದಾರೆ:Shreelatha.Halemane|Shreelatha.Halemane]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Shreelatha.Halemane|ಪಾತೆರ್ಲೆ]]) ೧೫:೦೧, ೨೧ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
:::ಸರಿ. ಬೇರೆ ವಿಕಿಗೆ ಹೋಲಿಸಿದಾಗ ತುಳು ಮತ್ತು ಕನ್ನಡ ವಿಕಿಯಲ್ಲಿ ಬರಹಗಳ ಸಂಖ್ಯೆ ಕಡಿಮೆ ಇದೆ. ಆದರೆ ಅದೇ ಗುಣಮಟ್ಟದ ವಿಷಯಕ್ಕೆ ಬಂದಾಗ ಕನ್ನಡ ಮತ್ತು ತುಳು ವಿಕಿ ಮುಂಚೂಣಿಯಲ್ಲಿ ನಿಲ್ಲುತ್ತವೆ. ವಿಕಿ ಅಡ್ಮಿನ್ ನಿಮಗೆ ಸೂಚನೆ ಕೊಟ್ಟದ್ದರ ಉದ್ದೇಶ ಇದೇ ಆಗಿದೆ. ಧನ್ಯವಾದಗಳು [[ಬಳಕೆದಾರೆ:Mahaveer Indra|Mahaveer Indra]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Mahaveer Indra|ಪಾತೆರ್ಲೆ]]) ೧೫:೦೫, ೨೧ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
::::ಮಹಾವೀರ ಇಂದ್ರರೇ ನಿಮ್ಮ ಸೂಚನೆ ಸರಿ, ಆದರೆ ಹೊಸ ಲೇಕನ ಬರಿಯುವ ಪಟ್ಟಿ ಹೆಚ್ಚಿಸಲು ಹೋಗಿ ಹಳೆ ಲೇಕನ ಕೈ ಬಿಟ್ಟರೆ ಹೇಗೇ? ಅದನ್ನು ಯಾರು ಬರಿಯುತ್ತಾರೆ. ವಿಷಯ ಇಲ್ಲದಿದ್ದರೆ ಸರಿ, ಇದ್ದಾಗ ಯಾಕೆ ಪೂರ್ತಿ ಮಾಡುವುದಿಲ್ಲ ಅಂತ ಆಶ್ಚರ್ಯ ಆಯಿತು. ನಾವು ತುಳುವರಿಗೆ ಬೇಕಾಗುವ ವಿಷಯ ತಿಳಿಸಬೇಕು. ಆರು ಏಳು ಸಾಲುಗಳು ಯಾಕೆ?
::::ನಿಮ್ಮ ಬರಹಗಳು ಉತ್ತಮವಾಗಿದೆ. ದನ್ಯವಾದಗಳು [[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೫:೧೮, ೨೧ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
:::::ಅರ್ಥ ಆಗಲಿಲ್ಲ. ಯಾವುದರ ಬಗ್ಗೆ ಹೇಳ್ತಾ ಇದ್ದೀರಿ? [[ಬಳಕೆದಾರೆ:Mahaveer Indra|Mahaveer Indra]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Mahaveer Indra|ಪಾತೆರ್ಲೆ]]) ೧೭:೨೧, ೨೨ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
ಅನುವಾದ ಮಾಡಿ ತುಳು ಲೇಖನ ರಚಿಸುವಾಗ
ಸಾಧ್ಯವಾದಷ್ಟು ತುಳು ಭಾಷೆಯ ಪದಗಳನ್ನು ಬಳಸಿ--[[ಬಳಕೆದಾರೆ:Vinoda mamatharai|Vinoda mamatharai]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vinoda mamatharai|ಪಾತೆರ್ಲೆ]]) 16:05, 28 ಸಪ್ಟಂಬರ್ 2026 (IST)
== ತುಳು ವಿಕಿಪೀಡಿಯ 10ನೇ ವರ್ಸಂತಿಗೆದ ಬರವು ಪಂತೊದ ಎಡ್ಡೆಪ್ಪುಲು ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{| style="background-color: #ffe3ec; border: 1px solid #800000;"
|rowspan="2" style="vertical-align: middle; padding: 5px;" | [[File:TCYWIKI-10.svg|130px]]
|style="font-size: x-large; padding: 3px 3px 0 3px; height: 1.5em;" |'''ಪಂತೊದ ಎಡ್ಡೆಪ್ಪುಲು'''
|-
| ತುಳು ವಿಕಿಪೀಡಿಯದ ಪತ್ತನೇ ವರ್ಷದ ಬರವುದ ಪಂತೊದ ಪಾಲ್ ದೆತೊಂದು ಯಶಸ್ವಿ ಕೊಡುಗೆ ಕೊರ್ನೆಗ್ ವಿಕಿಪೀಡಿಯ ಸಮುದಾಯದ ಪರವಾದ್ ಸೊಲ್ಮೆಲು!
''ತುಳು ಬಾಸೆ ಬುಲೆವಡ್, ಗೇನೊದ ಸಿರಿ ಒರಿಯಡ್.''
|}
</div>
<!-- Message sent by User:ChiK@tcywiki using the list at https://tcy.wikipedia.org/w/index.php?title=%E0%B2%B5%E0%B2%BF%E0%B2%95%E0%B2%BF%E0%B2%AA%E0%B3%80%E0%B2%A1%E0%B2%BF%E0%B2%AF:10%E0%B2%A8%E0%B3%87_%E0%B2%B5%E0%B2%B0%E0%B3%8D%E0%B2%B8%E0%B2%82%E0%B2%A4%E0%B2%BF%E0%B2%97%E0%B3%86%E0%B2%A6_%E0%B2%AC%E0%B2%B0%E0%B2%B5%E0%B3%81_%E0%B2%AA%E0%B2%82%E0%B2%A4%E0%B3%8A/%E0%B2%AA%E0%B2%B2%E0%B2%BF%E0%B2%A4%E0%B2%BE%E0%B2%82%E0%B2%B8%E0%B3%8A%E0%B2%B2%E0%B3%8D/dl&oldid=368681 -->
== 10ನೇ ವರ್ಸಂತಿಗೆದ ಬರವು ಪಂತೊ!! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{| style="background-color: #ffe3ec; border: 1px solid #800000; border-radius:8px; box-shadow:2px 2px 10px rgba(0,0,0,0.2); box-sizing:border-box; overflow:hidden;"
|rowspan="2" style="vertical-align: middle; padding: 5px;" | [[File:Wikipedia-logo-v2-tcy-10-alt.svg|120px]]
|style=" padding: 3px 3px 0 3px; height: 1.0em;" |Shreelatha.Halemane, ಈರೆಗ್ '''ತುಳು ವಿಕಿಪೀಡಿಯ 10ನೇ ವರ್ಸಂತಿಗೆದ ಎಡ್ಡೆಪ್ಪುಲು!'''
|-
| ತುಳು ವಿಕಿಪೀಡಿಯದ ಪತ್ತನೇ ವರ್ಷದ ಬರವುದ ಪಂತೊಡು ಪಾಲ್ ದೆತೊಂದು ಯಶಸ್ವಿ ಕೊಡುಗೆ ಕೊರ್ನೆಗ್ ತುಳು ವಿಕಿಪೀಡಿಯ ಸಮುದಾಯದ ಪರವಾದ್ ಸೊಲ್ಮೆಲು!.
ಬರವು ಪಂತೊಡು ಪಾಲು ಪಡೆಯಿನ ಬೆರಿ ಸಕಾಯೊದ ಇನಾಮ್ಗು 05 ಅಕ್ಟೋಬರ್ 2026 ಗ್ ದುಂಬು '''[https://forms.gle/ocwMFdrSQDsyB9Jn9 ಪಾರ್ಮ್ ದಿಂಜಾಲೆ]'''
''ತುಳು ಬಾಸೆ ಬುಲೆವಡ್, ಗೇನೊದ ಸಿರಿ ಒರಿಯಡ್.''
|}</div>
[[User:ChiK|ChiK]] ([[User talk:ChiK|ಪಾತೆರ]]) 13:25, 27 ಸಪ್ಟಂಬರ್ 2026 (IST)
<!-- Message sent by User:ChiK@tcywiki using the list at https://tcy.wikipedia.org/w/index.php?title=%E0%B2%AC%E0%B2%B3%E0%B2%95%E0%B3%86%E0%B2%A6%E0%B2%BE%E0%B2%B0%E0%B3%86:ChiK/%E0%B2%95%E0%B2%B2%E0%B3%8D%E0%B2%AA%E0%B3%81%E0%B2%A8%E0%B2%95%E0%B2%B3/2&oldid=370249 -->
rvzz2eqimwnqs1domnkl5h331ave41t
ಕಟೀಲ್ದ ಮೇಲೊ
0
16617
370278
196416
2026-09-27T16:55:35Z
ChiK
1136
added [[Category:ಯಕ್ಷಗಾನ]] using [[Help:Gadget-HotCat|HotCat]]
370278
wikitext
text/x-wiki
'''ಕಟೀಲ್ದ ಮೇಲೊ''' ಪಂಡ ತುಳುನಾಡ್ದ ಇತಿಹಾಸ ಪ್ರಸಿದ್ದ ಕ್ಷೇತೊ ಕಟೀಲ್ಡ ದೇವಿನ ಪುದರ್ಡ್ ನಡಪಿನಂಚಿನ ಯಕ್ಷಗಾನದ(ಆಟದ) ಕಲಾವಿದೆರೆನ ಕೋಪೆ.
==ಆಟದ ವಿಶೇಷತೆ==
==ಉಂದೆಟ್ ಉಪ್ಪುನ ಹಿಮ್ಮೇಳ ಮುಮ್ಮೇಳ ಕಲಾವಿದೆರ್==
==ಬಾಗವತೆರ್==
==ಚೆಂಡೆದಾರ್==
==ಮದ್ದಲೆದಾರ್==
==ಚಕ್ರತಾಳದಾರ್==
==ವೇಷದಕುಲು==
== ಉಲ್ಲೇಕೊಲು ==
[[ವರ್ಗೊ:ಯಕ್ಷಗಾನ]]
o1wotrav41mvgcj3f70lphanadnggan
ಮೋಡ್ಯೂಲ್:Transclusion count/data/E
828
18155
370491
369859
2026-09-27T05:08:42Z
en>Ahechtbot
0
[[Wikipedia:BOT|Bot]]: Updated page.
370491
Scribunto
text/plain
return {
["EB1911"] = 13000,
["EB1911_poster"] = 3500,
["ECU"] = 2700,
["EC_number"] = 4000,
["EGY"] = 3700,
["EHAK"] = 3300,
["ENFA"] = 3700,
["ENG"] = 8400,
["ENGLs"] = 5600,
["ER_to_list_entry"] = 5400,
["ESP"] = 17000,
["ESPNcricinfo"] = 3400,
["ESPNscrum"] = 3900,
["EST"] = 4700,
["ETH"] = 2200,
["Earthquake_magnitude"] = 2400,
["Eastern_name_order"] = 3300,
["Ebicite"] = 7100,
["Ec"] = 30000,
["Ed_right"] = 3100,
["Edit"] = 770000,
["EditAtWikidata"] = 231000,
["Edit_COI"] = 15000,
["Edit_COI/answered"] = 8900,
["Edit_COI/declined"] = 5600,
["Edit_a_taxon"] = 151000,
["Edit_at_Wikidata"] = 877000,
["Edit_conflict"] = 34000,
["Edit_count_link"] = 8400,
["Edit_extended-protected"] = 8200,
["Edit_fully-protected"] = 4700,
["Edit_on_Wikidata"] = 44000,
["Edit_protected"] = 4600,
["Edit_semi-protected"] = 42000,
["Edit_summary_field"] = 8900,
["Edit_summary_field/OOUI"] = 17000,
["Edit_summary_field/OOUI/styles.css"] = 17000,
["Edit_summary_field/VisualEditor"] = 3800,
["Edit_summary_field/VisualEditor/styles.css"] = 3800,
["Edit_taxonomy"] = 505000,
["Edit_template-protected"] = 5000,
["Editcount"] = 3100,
["Editnotice"] = 22000,
["Editnotice/notice"] = 19000,
["Editnotice/styles.css"] = 22000,
["Editnotice_EXPECTUNUSEDTEMPLATE"] = 472000,
["Editnotice_for_lists_of_people"] = 2600,
["EduBase"] = 4500,
["Educational_assignment"] = 4500,
["Efn"] = 325000,
["Efn-lr"] = 4300,
["Efn-ua"] = 6300,
["Efs_player"] = 6800,
["Efs_start"] = 6600,
["Election_box_2-party-preferred"] = 2400,
["Election_box_2pp"] = 2400,
["Election_box_begin"] = 38000,
["Election_box_begin_no_change"] = 21000,
["Election_box_candidate"] = 8200,
["Election_box_candidate_AU_party"] = 4000,
["Election_box_candidate_no_change"] = 3300,
["Election_box_candidate_with_party_link"] = 32000,
["Election_box_candidate_with_party_link_no_change"] = 21000,
["Election_box_end"] = 56000,
["Election_box_formal"] = 3900,
["Election_box_gain_with_party_link"] = 14000,
["Election_box_gain_with_party_link_no_change"] = 2900,
["Election_box_gain_with_party_link_no_swing"] = 3400,
["Election_box_hold_AU_party"] = 3000,
["Election_box_hold_with_party_link"] = 19000,
["Election_box_hold_with_party_link_no_change"] = 7600,
["Election_box_hold_with_party_link_no_swing"] = 7000,
["Election_box_hold_with_party_link_without_swing"] = 3000,
["Election_box_informal"] = 4400,
["Election_box_majority"] = 22000,
["Election_box_margin_of_victory"] = 3400,
["Election_box_new_seat_win"] = 8400,
["Election_box_registered_electors"] = 11000,
["Election_box_rejected"] = 3400,
["Election_box_total"] = 4600,
["Election_box_total_no_change"] = 19000,
["Election_box_total_valid"] = 2200,
["Election_box_turnout"] = 30000,
["Election_box_turnout_no_change"] = 3000,
["Election_box_winning_candidate_with_party_link"] = 27000,
["Election_box_winning_candidate_with_party_link_no_change"] = 21000,
["Election_box_write-in_with_party_link_no_change"] = 3200,
["Election_results"] = 12000,
["Election_summary_begin"] = 4100,
["Election_summary_party"] = 4100,
["Election_table"] = 2700,
["Election_table/category"] = 2700,
["Elo_ranking"] = 4700,
["Elo_rating"] = 4700,
["Em"] = 1560000,
["Em_dash"] = 19000,
["Emblem_table"] = 4800,
["Emdash"] = 4600,
["Emmy_Awards/color"] = 4900,
["Emoji"] = 2500,
["Emoji/auto"] = 2500,
["Emphasis_underline"] = 6500,
["Empty_category"] = 3700,
["Empty_section"] = 15000,
["Emu"] = 6500,
["En"] = 3600,
["En_dash"] = 47000,
["En_dash_range"] = 232000,
["Encodefirst"] = 1580000,
["Encyclopedia_of_Life_link"] = 2400,
["End"] = 135000,
["End_box"] = 11000,
["End_date"] = 99000,
["End_date_and_age"] = 11000,
["End_of_course_week"] = 6000,
["End_of_students_table"] = 7200,
["Endangered_Languages_Project"] = 12000,
["Endash"] = 13000,
["Endflatlist"] = 294000,
["Endorse"] = 5500,
["Endorsements_box"] = 2600,
["Endorsements_box/styles.css"] = 2600,
["Endplainlist"] = 47000,
["English_anime_licensee"] = 5000,
["English_football_updater"] = 5600,
["English_manga_publisher"] = 3100,
["Engvar"] = 16000,
["EngvarB"] = 52000,
["Ensure_AAA_contrast_ratio"] = 16000,
["Ensure_AA_contrast_ratio"] = 5600,
["Enum"] = 17000,
["Enzymes"] = 6200,
["Episode_list"] = 23000,
["Episode_list/sublist"] = 5800,
["Episode_table"] = 29000,
["Eponymous_categories"] = 2300,
["Eponymous_category"] = 2300,
["Error"] = 43000,
["ErrorBar2"] = 5000,
["Esc"] = 2900,
["Esccnty"] = 4000,
["Esoteric_file"] = 4300,
["Essay"] = 5800,
["Essay-like"] = 4600,
["Establishment_category_in_continent"] = 3200,
["Establishment_category_in_continent/core"] = 3200,
["Establishment_category_in_country"] = 28000,
["Establishment_category_in_country/core"] = 28000,
["Establishment_category_in_country_by_decade"] = 5100,
["Establishment_category_in_country_by_decade/core"] = 5100,
["EstcatContinent"] = 3200,
["EstcatCountry"] = 27000,
["EstcatCountryDecade"] = 5100,
["EstcatUSstate"] = 10000,
["Estonia_To-do"] = 24000,
["Ethnologue18"] = 3500,
["Europe_topic"] = 11000,
["Eurovision_Song_Contest_year"] = 2000,
["Example_text"] = 40000,
["Example_text_bad"] = 11000,
["Excerpt"] = 15000,
["Excessive_citations_inline"] = 2100,
["ExistNotRedirect"] = 45000,
["Exist_not_redirect"] = 82000,
["Expand_Chinese"] = 2200,
["Expand_French"] = 19000,
["Expand_German"] = 18000,
["Expand_Italian"] = 5200,
["Expand_Japanese"] = 5700,
["Expand_Polish"] = 2600,
["Expand_Portuguese"] = 2600,
["Expand_Russian"] = 5500,
["Expand_Spanish"] = 9300,
["Expand_Turkish"] = 2000,
["Expand_language"] = 96000,
["Expand_list"] = 6800,
["Expand_section"] = 38000,
["Expand_wikitext"] = 119000,
["Explain"] = 3000,
["Extended_confirmed_topicon"] = 2200,
["Extended_confirmed–protected"] = 11000,
["Extended_football_squad_player"] = 8000,
["Extended_football_squad_start"] = 8000,
["External_links"] = 3000,
["External_media"] = 13000,
["External_music_video"] = 34000,
["Extinct"] = 16000,
["Extra_album_cover"] = 8500,
["Extra_chronology"] = 18000,
["Extract"] = 10000,
["Module:EFloras"] = 2000,
["Module:EditAtWikidata"] = 2200000,
["Module:Effective_protection_expiry"] = 75000,
["Module:Effective_protection_level"] = 80000,
["Module:Election_results"] = 12000,
["Module:Endangered_Languages_Project"] = 12000,
["Module:English_variant_notice"] = 81000,
["Module:Engvar"] = 18000,
["Module:Engvar/detect"] = 3600,
["Module:Episode_list"] = 30000,
["Module:Episode_table"] = 29000,
["Module:Episode_table/styles.css"] = 29000,
["Module:Error"] = 52000,
["Module:Escape"] = 14000,
["Module:Excerpt"] = 15000,
["Module:Excerpt/config"] = 15000,
["Module:Excerpt/portals"] = 5000,
["Module:Excerpt/styles.css"] = 14000,
["Module:Exist_not_redirect"] = 82000,
["Module:Expand_wikitext"] = 119000,
["Module:Exponential_search"] = 747000,
["Module:External_links"] = 82000,
["Module:External_links/conf"] = 82000,
["Module:External_links/conf/Sports"] = 82000,
}
23nxjcm7rq9vv3o1crbhhg39kxolpy7
370492
370491
2026-09-28T09:38:45Z
ChiK
1136
1 revision imported from [[:en:Module:Transclusion_count/data/E]]
370491
Scribunto
text/plain
return {
["EB1911"] = 13000,
["EB1911_poster"] = 3500,
["ECU"] = 2700,
["EC_number"] = 4000,
["EGY"] = 3700,
["EHAK"] = 3300,
["ENFA"] = 3700,
["ENG"] = 8400,
["ENGLs"] = 5600,
["ER_to_list_entry"] = 5400,
["ESP"] = 17000,
["ESPNcricinfo"] = 3400,
["ESPNscrum"] = 3900,
["EST"] = 4700,
["ETH"] = 2200,
["Earthquake_magnitude"] = 2400,
["Eastern_name_order"] = 3300,
["Ebicite"] = 7100,
["Ec"] = 30000,
["Ed_right"] = 3100,
["Edit"] = 770000,
["EditAtWikidata"] = 231000,
["Edit_COI"] = 15000,
["Edit_COI/answered"] = 8900,
["Edit_COI/declined"] = 5600,
["Edit_a_taxon"] = 151000,
["Edit_at_Wikidata"] = 877000,
["Edit_conflict"] = 34000,
["Edit_count_link"] = 8400,
["Edit_extended-protected"] = 8200,
["Edit_fully-protected"] = 4700,
["Edit_on_Wikidata"] = 44000,
["Edit_protected"] = 4600,
["Edit_semi-protected"] = 42000,
["Edit_summary_field"] = 8900,
["Edit_summary_field/OOUI"] = 17000,
["Edit_summary_field/OOUI/styles.css"] = 17000,
["Edit_summary_field/VisualEditor"] = 3800,
["Edit_summary_field/VisualEditor/styles.css"] = 3800,
["Edit_taxonomy"] = 505000,
["Edit_template-protected"] = 5000,
["Editcount"] = 3100,
["Editnotice"] = 22000,
["Editnotice/notice"] = 19000,
["Editnotice/styles.css"] = 22000,
["Editnotice_EXPECTUNUSEDTEMPLATE"] = 472000,
["Editnotice_for_lists_of_people"] = 2600,
["EduBase"] = 4500,
["Educational_assignment"] = 4500,
["Efn"] = 325000,
["Efn-lr"] = 4300,
["Efn-ua"] = 6300,
["Efs_player"] = 6800,
["Efs_start"] = 6600,
["Election_box_2-party-preferred"] = 2400,
["Election_box_2pp"] = 2400,
["Election_box_begin"] = 38000,
["Election_box_begin_no_change"] = 21000,
["Election_box_candidate"] = 8200,
["Election_box_candidate_AU_party"] = 4000,
["Election_box_candidate_no_change"] = 3300,
["Election_box_candidate_with_party_link"] = 32000,
["Election_box_candidate_with_party_link_no_change"] = 21000,
["Election_box_end"] = 56000,
["Election_box_formal"] = 3900,
["Election_box_gain_with_party_link"] = 14000,
["Election_box_gain_with_party_link_no_change"] = 2900,
["Election_box_gain_with_party_link_no_swing"] = 3400,
["Election_box_hold_AU_party"] = 3000,
["Election_box_hold_with_party_link"] = 19000,
["Election_box_hold_with_party_link_no_change"] = 7600,
["Election_box_hold_with_party_link_no_swing"] = 7000,
["Election_box_hold_with_party_link_without_swing"] = 3000,
["Election_box_informal"] = 4400,
["Election_box_majority"] = 22000,
["Election_box_margin_of_victory"] = 3400,
["Election_box_new_seat_win"] = 8400,
["Election_box_registered_electors"] = 11000,
["Election_box_rejected"] = 3400,
["Election_box_total"] = 4600,
["Election_box_total_no_change"] = 19000,
["Election_box_total_valid"] = 2200,
["Election_box_turnout"] = 30000,
["Election_box_turnout_no_change"] = 3000,
["Election_box_winning_candidate_with_party_link"] = 27000,
["Election_box_winning_candidate_with_party_link_no_change"] = 21000,
["Election_box_write-in_with_party_link_no_change"] = 3200,
["Election_results"] = 12000,
["Election_summary_begin"] = 4100,
["Election_summary_party"] = 4100,
["Election_table"] = 2700,
["Election_table/category"] = 2700,
["Elo_ranking"] = 4700,
["Elo_rating"] = 4700,
["Em"] = 1560000,
["Em_dash"] = 19000,
["Emblem_table"] = 4800,
["Emdash"] = 4600,
["Emmy_Awards/color"] = 4900,
["Emoji"] = 2500,
["Emoji/auto"] = 2500,
["Emphasis_underline"] = 6500,
["Empty_category"] = 3700,
["Empty_section"] = 15000,
["Emu"] = 6500,
["En"] = 3600,
["En_dash"] = 47000,
["En_dash_range"] = 232000,
["Encodefirst"] = 1580000,
["Encyclopedia_of_Life_link"] = 2400,
["End"] = 135000,
["End_box"] = 11000,
["End_date"] = 99000,
["End_date_and_age"] = 11000,
["End_of_course_week"] = 6000,
["End_of_students_table"] = 7200,
["Endangered_Languages_Project"] = 12000,
["Endash"] = 13000,
["Endflatlist"] = 294000,
["Endorse"] = 5500,
["Endorsements_box"] = 2600,
["Endorsements_box/styles.css"] = 2600,
["Endplainlist"] = 47000,
["English_anime_licensee"] = 5000,
["English_football_updater"] = 5600,
["English_manga_publisher"] = 3100,
["Engvar"] = 16000,
["EngvarB"] = 52000,
["Ensure_AAA_contrast_ratio"] = 16000,
["Ensure_AA_contrast_ratio"] = 5600,
["Enum"] = 17000,
["Enzymes"] = 6200,
["Episode_list"] = 23000,
["Episode_list/sublist"] = 5800,
["Episode_table"] = 29000,
["Eponymous_categories"] = 2300,
["Eponymous_category"] = 2300,
["Error"] = 43000,
["ErrorBar2"] = 5000,
["Esc"] = 2900,
["Esccnty"] = 4000,
["Esoteric_file"] = 4300,
["Essay"] = 5800,
["Essay-like"] = 4600,
["Establishment_category_in_continent"] = 3200,
["Establishment_category_in_continent/core"] = 3200,
["Establishment_category_in_country"] = 28000,
["Establishment_category_in_country/core"] = 28000,
["Establishment_category_in_country_by_decade"] = 5100,
["Establishment_category_in_country_by_decade/core"] = 5100,
["EstcatContinent"] = 3200,
["EstcatCountry"] = 27000,
["EstcatCountryDecade"] = 5100,
["EstcatUSstate"] = 10000,
["Estonia_To-do"] = 24000,
["Ethnologue18"] = 3500,
["Europe_topic"] = 11000,
["Eurovision_Song_Contest_year"] = 2000,
["Example_text"] = 40000,
["Example_text_bad"] = 11000,
["Excerpt"] = 15000,
["Excessive_citations_inline"] = 2100,
["ExistNotRedirect"] = 45000,
["Exist_not_redirect"] = 82000,
["Expand_Chinese"] = 2200,
["Expand_French"] = 19000,
["Expand_German"] = 18000,
["Expand_Italian"] = 5200,
["Expand_Japanese"] = 5700,
["Expand_Polish"] = 2600,
["Expand_Portuguese"] = 2600,
["Expand_Russian"] = 5500,
["Expand_Spanish"] = 9300,
["Expand_Turkish"] = 2000,
["Expand_language"] = 96000,
["Expand_list"] = 6800,
["Expand_section"] = 38000,
["Expand_wikitext"] = 119000,
["Explain"] = 3000,
["Extended_confirmed_topicon"] = 2200,
["Extended_confirmed–protected"] = 11000,
["Extended_football_squad_player"] = 8000,
["Extended_football_squad_start"] = 8000,
["External_links"] = 3000,
["External_media"] = 13000,
["External_music_video"] = 34000,
["Extinct"] = 16000,
["Extra_album_cover"] = 8500,
["Extra_chronology"] = 18000,
["Extract"] = 10000,
["Module:EFloras"] = 2000,
["Module:EditAtWikidata"] = 2200000,
["Module:Effective_protection_expiry"] = 75000,
["Module:Effective_protection_level"] = 80000,
["Module:Election_results"] = 12000,
["Module:Endangered_Languages_Project"] = 12000,
["Module:English_variant_notice"] = 81000,
["Module:Engvar"] = 18000,
["Module:Engvar/detect"] = 3600,
["Module:Episode_list"] = 30000,
["Module:Episode_table"] = 29000,
["Module:Episode_table/styles.css"] = 29000,
["Module:Error"] = 52000,
["Module:Escape"] = 14000,
["Module:Excerpt"] = 15000,
["Module:Excerpt/config"] = 15000,
["Module:Excerpt/portals"] = 5000,
["Module:Excerpt/styles.css"] = 14000,
["Module:Exist_not_redirect"] = 82000,
["Module:Expand_wikitext"] = 119000,
["Module:Exponential_search"] = 747000,
["Module:External_links"] = 82000,
["Module:External_links/conf"] = 82000,
["Module:External_links/conf/Sports"] = 82000,
}
23nxjcm7rq9vv3o1crbhhg39kxolpy7
ಶೇಣಿ
0
18505
370353
193991
2026-09-28T07:53:19Z
ChiK
1136
Added {{[[Template:Unreferenced|Unreferenced]]}} tag
370353
wikitext
text/x-wiki
{{Unreferenced|date=ಸಪ್ಟಂಬರ್ 2026}}
'''ಶೇಣಿ''' [[ತುಳುನಾಡ್]] ದ ಒಂಜಿ ಗ್ರಾಮ. ಇತ್ತೆ [[ಕೇರಳ]] ರಾಜ್ಯೊದ [[ಕಾಸರಗೋಡ್|ಕಾಸರಗೋಡು]] ಜಿಲ್ಲೆದ ಮಂಜೇಶ್ವರ ತಾಲೂಕುದ ಎಣ್ಮಕಜೆ ಪಂಚಾಯತ್ದ ಒಂಜಿ ಗ್ರಾಮ. '''ಶೇಣಿ''' ದುಂಬು ಮೈರೆ ಗ್ರಾಮ ಆದ್ ಇತ್ತ್ಂಡ್. ಇಂಚಿಪ್ಪ ಅವು ಶೇಣಿ ಗ್ರಾಮ ಆದ್ ಬದಲಾತ್ಂಡ್.
== ದೇವಸ್ಥಾನೊಲು ==
* ಮುಗು ಶ್ರೀ ಸುಬ್ರಾಯ ದೇವಸ್ಥಾನ
== ಭಜಾನಾ ಮಂದಿರೊಲು ==
* ಶ್ರೀ ಅಯ್ಯಪ್ಪ ಭಜನಾ ಮಂದಿರ, ಬಣ್ಪುತ್ತಡ್ಕ
* ಶ್ರೀ ಗಣೇಶ ಭಜನಾ ಮಂದಿರ, ಬೆದ್ರಂಪಲ್ಲ
* ಶ್ರೀ ದುರ್ಗಾಪರಮೇಶ್ವರಿ ಭಜನಾ ಮಂದಿರ ಮಣಿಂಪಾರೆ
== ಇಗರ್ಜಿಲು ==
ಮಣಿಂಪಾರೆ
== ಮಸೀದಿಲು ==
ಜುಮ್ಮ ಮಸೀದಿ, ಬಣ್ಪುತ್ತಡ್ಕ
== ಉಲ್ಲೇಕೊಲು ==
{{Reflist}}
kh1gxvzykx6gihwyh7rx4wl9xo2mtr2
ಟೆಂಪ್ಲೇಟ್:Protection templates
10
18634
370445
355606
2026-05-04T00:13:17Z
en>JHD0919
0
The "permanent" template has been renamed & moved, and the "temporary" template has been deleted.
370445
wikitext
text/x-wiki
{{Navbox
| state = {{{state|{{{1|<includeonly>{{#ifeq:{{NAMESPACE}}|Module||collapsed}}</includeonly>}}}}}}
| title = {{c|Protection templates}}
| image<!--left--> = <!--[[File:Padlock.svg|40px|link=|alt=]]-->
| tracking = no <!-- keep all the documented templates out of the hlist tracking category -->
| inner-style = table-format:fixed;
| list1 = <div style="overflow:auto">{{Aligned table
|cols=5 |style=table-format:fixed;border:1px solid #aaa;margin:0 auto<!-- 0.2em-->;
|colstyle=vertical-align:middle;padding-left:1.0em;<!--font-family:monospace;-->padding-right:1.0em;
<!--row#-->
|row1header=on |row1style=padding-bottom:0.25em;border-bottom:1px solid #bbf;
<!-- 1 --> | | Edit | Move | [[Wikipedia:Pending changes|Pending changes]] | Upload
<!-- 2 --> | Generic | {{tl|pp}} | {{tl|pp-move}} | {{tl|pp-pc}} | {{tl|pp-upload}}
<!-- 3 --> | [[Wikipedia:Biographies of living persons|BLP]] | {{tl|pp-blp}} | – | – | –
<!-- 4 --> | Blocked user's talk page | {{tl|pp-usertalk}} | – | – | –
<!-- 5 --> | Dispute | {{tl|pp-dispute}} | {{tl|pp-move-dispute}} | – | –
<!-- 6 --> | [[Wikipedia:Protection_policy#Extended_confirmed_protection|Extended confirmed protection]] | {{tl|pp-extended}} | – | – | –
<!-- 7 --> | Indefinite | {{tl|pp-semi-indef}} | {{tl|pp-move-indef}} | – | –
<!-- 8 --> | [[Main Page]] image | {{tl|pp-main-page}} | – | – | –
<!-- 9 --> | [[Wikipedia:Office actions|Office]] | {{tl|pp-office}} | – | – | –
<!-- 10--> | [[Wikipedia:Sockpuppetry|Sockpuppetry]] | {{tl|pp-sock}} | – | – | –
<!-- 11 --> | Templates and images | {{tl|pp-template}} | – | – | {{tl|pp-upload}}
<!-- 12 --> | Vandalism | {{tl|pp-vandalism}} | {{tl|pp-move-vandalism}} | – | –
<!-- 13 --> | Talk page | {{tl|Indefinitely protected}} | – | – | –
}}</div>
| below = [[Module:Protection banner]]
}}<noinclude>
{{Documentation|content=
{{Collapsible option |statename=optional |default=collapsed}}
{{Sandbox other||
[[Category:Documentation see also templates]]
[[Category:Wikipedia administration templates]]
}}}}<!--(end Documentation)-->
</noinclude>
n1kcstoc2yv7pztv9swgzwfgr0pu0zp
370446
370445
2026-09-28T09:13:08Z
ChiK
1136
1 revision imported from [[:en:Template:Protection_templates]]
370445
wikitext
text/x-wiki
{{Navbox
| state = {{{state|{{{1|<includeonly>{{#ifeq:{{NAMESPACE}}|Module||collapsed}}</includeonly>}}}}}}
| title = {{c|Protection templates}}
| image<!--left--> = <!--[[File:Padlock.svg|40px|link=|alt=]]-->
| tracking = no <!-- keep all the documented templates out of the hlist tracking category -->
| inner-style = table-format:fixed;
| list1 = <div style="overflow:auto">{{Aligned table
|cols=5 |style=table-format:fixed;border:1px solid #aaa;margin:0 auto<!-- 0.2em-->;
|colstyle=vertical-align:middle;padding-left:1.0em;<!--font-family:monospace;-->padding-right:1.0em;
<!--row#-->
|row1header=on |row1style=padding-bottom:0.25em;border-bottom:1px solid #bbf;
<!-- 1 --> | | Edit | Move | [[Wikipedia:Pending changes|Pending changes]] | Upload
<!-- 2 --> | Generic | {{tl|pp}} | {{tl|pp-move}} | {{tl|pp-pc}} | {{tl|pp-upload}}
<!-- 3 --> | [[Wikipedia:Biographies of living persons|BLP]] | {{tl|pp-blp}} | – | – | –
<!-- 4 --> | Blocked user's talk page | {{tl|pp-usertalk}} | – | – | –
<!-- 5 --> | Dispute | {{tl|pp-dispute}} | {{tl|pp-move-dispute}} | – | –
<!-- 6 --> | [[Wikipedia:Protection_policy#Extended_confirmed_protection|Extended confirmed protection]] | {{tl|pp-extended}} | – | – | –
<!-- 7 --> | Indefinite | {{tl|pp-semi-indef}} | {{tl|pp-move-indef}} | – | –
<!-- 8 --> | [[Main Page]] image | {{tl|pp-main-page}} | – | – | –
<!-- 9 --> | [[Wikipedia:Office actions|Office]] | {{tl|pp-office}} | – | – | –
<!-- 10--> | [[Wikipedia:Sockpuppetry|Sockpuppetry]] | {{tl|pp-sock}} | – | – | –
<!-- 11 --> | Templates and images | {{tl|pp-template}} | – | – | {{tl|pp-upload}}
<!-- 12 --> | Vandalism | {{tl|pp-vandalism}} | {{tl|pp-move-vandalism}} | – | –
<!-- 13 --> | Talk page | {{tl|Indefinitely protected}} | – | – | –
}}</div>
| below = [[Module:Protection banner]]
}}<noinclude>
{{Documentation|content=
{{Collapsible option |statename=optional |default=collapsed}}
{{Sandbox other||
[[Category:Documentation see also templates]]
[[Category:Wikipedia administration templates]]
}}}}<!--(end Documentation)-->
</noinclude>
n1kcstoc2yv7pztv9swgzwfgr0pu0zp
ವಿಕಿಪೀಡಿಯ:ಚಾವಡಿ (ತಾಂತ್ರಿಕ)
4
18650
370346
369511
2026-09-28T07:39:54Z
Mahaveer Indra
1023
/* ಒ */ಪೊಸ ವಿಭಾಗ
370346
wikitext
text/x-wiki
{{ಚಾವಡಿ ಪುಟೊ header|ತಾಂತ್ರಿಕ|alpha=yes| ಚಾವಡಿದ '''ತಾಂತ್ರಿಕ''' ವಿಭಾಗೊನು '''ವಿಕಿಪೀಡಿಯ'''ದ ''ಬಗ್ಗೆ'' ತಾಂತ್ರಿಕ ವಿಸಯೊಲೆನ್ ಚರ್ಚೆ ಮಲ್ಪರೆ ಉಪಯೋಗ ಮಲ್ಪುವೆರ್. ಬಗ್ ರಿಪೋರ್ಟ್ಸ್ ಬುಕ್ಕೊ ಫೀಚರ್ ರಿಕ್ವೆಸ್ಟ್ಸ್ನ್ ಫ್ಯಾಬ್ರಿಕೇಟರ್ಡ್ ಮಲ್ಪೊಡು.
ಈರ್ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ದೋಷೊನು ವರದಿ ಮಲ್ಪೊಡಾಂಡ, ದಯಮಲ್ತ್ ಈ ಹೌ-ಟು ಪುಟೊನು ಅನುಸರಿಸಲೆ. ಸಾಮಾನ್ಯವಾದ್ ಮೀಡಿಯಾವಿಕಿದ ಬಗ್ಗೆ ಉಪ್ಪುನ ಪ್ರಶ್ನೆಲೆನ್ ಮೀಡಿಯಾವಿಕಿ ಸಪೋರ್ಟ್ ಡೆಸ್ಕ್ಡ್ ಪಾಡೊಡು. 5 ದಿನೊಟು ನಿಷ್ಕ್ರಿಯವಾದ್ ಉಪ್ಪುನಗ ಚರ್ಚೆಲು ಸ್ವಯಂಚಾಲಿತವಾದ್ ಆರ್ಕೈವ್ ಆಪುಂಡು.<!--
-->|ವಿಪಿ:ಚಾ|ವಿಪಿ:ಚಾತಾ}}
__NEWSECTIONLINK__
__TOC__<div id="below_toc"></div>
[[Category:ವಿಕಿಪೀಡಿಯ ಚಾವಡಿ]]
[[Category:ವಿಕಿಪೀಡಿಯ ಲೇಸ್ಲು]]
</noinclude>
{{clear}}
== Update [[Special:SpecialPages]] in Latest Extensions ==
We would like to propose an update to [[Special:SpecialPages]] to reflect the links for the latest extensions we have installed. Currently, some of the new extensions not showing up in Special:SpecialPages.
* Refer [[:en:Special:SpecialPages]]
This issue has resulted in important functionality being harder to access for both users and administrators. The new special pages introduced by these extensions are essential for better managing and navigating the wiki. [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೧೫:೨೦, ೧೬ ಜನವರಿ ೨೦೨೫ (IST)
=== discussion ===
#{{support}} --[[ಬಳಕೆದಾರೆ:Bharathesha Alasandemajalu|Bharathesha Alasandemajalu]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Bharathesha Alasandemajalu|ಪಾತೆರ್ಲೆ]]) ೨೩:೧೨, ೬ ಪೆಬ್ರವರಿ ೨೦೨೫ (IST)
#{{support}} as a proposer, [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೨೩:೧೭, ೬ ಪೆಬ್ರವರಿ ೨೦೨೫ (IST)
== ಒಂಜಿ ಇನ್ಫೋಬಾಕ್ಸ್ ಬೋಡು ==
ತುಳು ವಿಕಿಡ್ ಇಪ್ಪುನ ಓಟುಗು ಸಮ್ಮಂದಪಟ್ಟಿನ ಬರವುಲೆಗ್ ಸೇರಾವರ ಒಂಜಿ ಇನ್ಫೋಬಾಕ್ಸ್ ಬೋಡು. ಇಂಗ್ಲಿಷ್ಡ್ ಇಪ್ಪುನ <nowiki>{{Infobox election}}</nowiki> ಇಂದೆನ್ ತುಳುಕ್ಕು ಇಂಪೋರ್ಟ್ ಮಲ್ಪೊಡು. ಉದಾರ್ಮೆಗಾದ್ ಇಂಗ್ಲಿಷ್ ವಿಕಿಡ್ ಇಪ್ಪುನ ಒಂಜಿ ಬರವುನು ಮುಲ್ಪ ಪಾಡ್ದೆ.
[[en|2023 Karnataka Legislative Assembly election]] [[ಬಳಕೆದಾರೆ:Mahaveer Indra|Mahaveer Indra]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Mahaveer Indra|ಪಾತೆರ್ಲೆ]]) ೦೭:೩೦, ೨೫ ಪೆಬ್ರವರಿ ೨೦೨೫ (IST)
:*[[ಟೆಂಪ್ಲೇಟ್:Indian elections]] Done - [[ಬಳಕೆದಾರೆ:Bharathesha Alasandemajalu|Bharathesha Alasandemajalu]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Bharathesha Alasandemajalu|ಪಾತೆರ್ಲೆ]]) ೨೦:೧೩, ೨೮ ಪೆಬ್ರವರಿ ೨೦೨೫ (IST)
::* ಉಂದು ಟೆಂಪ್ಲೇಟ್ ಅತ್ ತೋಜುಂಡು.. <nowiki>{{Infobox election}}</nowiki> ಉಂದು ಟೆಂಪ್ಲೇಟ್ ಬೋಡಾಯಿನ [[ಬಳಕೆದಾರೆ:Mahaveer Indra|Mahaveer Indra]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Mahaveer Indra|ಪಾತೆರ್ಲೆ]]) ೧೭:೨೦, ೧೭ ಸಪ್ಟಂಬರ್ ೨೦೨೫ (IST)
::*[[ಟೆಂಪ್ಲೇಟ್:Infobox election]] Is already available. [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೧೮:೪೯, ೧೭ ಸಪ್ಟಂಬರ್ ೨೦೨೫ (IST)
== Proposal: New or Improved Special Page for New Pages Feed ==
{{tracked|T406051|open}}
'''Hello everyone,'''
I'd like to propose the development of a '''new or improved Special page''' related to the '''New Pages Feed'''. This would be intended to help '''page patrollers, new page reviewers, and administrators''' better manage recently created content.
=== Background ===
Currently, Wikipedia uses the [[Special:NewPagesFeed]] as part of the '''PageTriage''' extension, which provides a feed of newly created articles and drafts for review.
While helpful, there are limitations reported by users, including:
* Lack of advanced filtering or sorting
* Limited namespace support (e.g., Talk, User, or Draft space)
* Inflexible UI and display options
* Occasional performance issues with high activity levels
=== Proposal ===
I’m proposing one of the following:
# An '''improved version''' of [[Special:NewPagesFeed]], possibly as an upgrade to the current PageTriage extension,
# Or a '''new Special page''' that offers better filtering, tagging, and review tools for tracking new pages across different namespaces and user types.
'''Features under consideration:'''
* Filter by namespace, creation date, user groups, tags
* Real-time or daily updated feeds
* Enhanced moderation and tagging tools
* Support for reviewing pages outside of mainspace (e.g., Draft, User)
* Improved mobile compatibility
This could benefit not only experienced reviewers but also help onboard new users involved in curation or monitoring.
=== Why I’m Bringing This Here ===
Before filing a formal feature request in Wikimedia’s [https://phabricator.wikimedia.org/ Phabricator], I’d like to gather '''community input and consensus''' on:
* Whether this idea is useful or needed
* What specific features or improvements would be most valuable
* Whether this should be an upgrade to PageTriage, a new extension, or a Gadget
=== Questions for the Community ===
* Do you support the idea of a new or enhanced New Pages Feed system?
* What features or filters would you find most helpful in such a tool?
* Should this be developed as a new Special page, or would improvements to the current PageTriage extension be better?
* Are there existing tools or workflows that already cover this need?
Looking forward to your thoughts and suggestions. If there's support, I’ll summarize the discussion and proceed to open a request in Phabricator with a link to this thread.
Thanks!
[[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೧೨:೨೦, ೧೬ ಸಪ್ಟಂಬರ್ ೨೦೨೫ (IST)
=== discussion ===
#{{support}} --[[ಬಳಕೆದಾರೆ:Bharathesha Alasandemajalu|Bharathesha Alasandemajalu]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Bharathesha Alasandemajalu|ಪಾತೆರ್ಲೆ]]) ೨೧:೪೪, ೨೯ ಸಪ್ಟಂಬರ್ ೨೦೨೫ (IST)
# {{support}}--[[ಬಳಕೆದಾರೆ:Yakshitha|Yakshitha]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Yakshitha|ಪಾತೆರ್ಲೆ]]) ೨೧:೪೬, ೨೯ ಸಪ್ಟಂಬರ್ ೨೦೨೫ (IST)
== Adding "Portal" namespace to tcywiki ==
{{tracked|T409329|resolved}}
I propose we add a new "Portal" and "Portal Talk" namespace to help organize topic-specific content (e.g., Portal:Tulu Culture). This will allow better navigation and curation of topics. If the community supports this, we can request it from the Wikimedia developers via Phabricator. [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೨೨:೦೧, ೨೯ ಸಪ್ಟಂಬರ್ ೨೦೨೫ (IST)
===discussion===
#<code>100 => Portal, 101 => Portal talk</code>
::Kindly suggest tulu translation also. [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೦೭:೪೫, ೪ ಅಕ್ಟೋಬರ್ ೨೦೨೫ (IST)
# <code>118 => Draft, 119 => Draft talk </code> I have proposal this also kindly discuss the local name. [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೦೭:೪೫, ೪ ಅಕ್ಟೋಬರ್ ೨೦೨೫ (IST)
{| class="wikitable"
! Namespace ID !! Canonical Name !! Local Name
|-
| 100 || Portal || ----
|-
| 101 || Portal talk || ----
|-
| 118 || Draft || ----
|-
| 119 || Draft talk || ----
|}
: '''Portal''' ಇಂಗ್ಲಿಸ್ ಸಬ್ದೊಗು ಕನ್ನಡೊಡು ಹೆಬ್ಬಾಗಿಲು, ಕದ, ಪ್ರವೇಶದ್ವಾರ, ಮಹಾದ್ವಾರ, ಜಾಲ ಮುಖ ಪುಟ[https://www.shabdkosh.com/dictionary/english-kannada/portal/portal-meaning-in-kannada] ತುಳುಟು ಪೋರ್ಟಲ್ ಸಬ್ದೊಗು '''ಜಾಲಬಾಕಿಲ್''' ಪದೊನು ಗಳಸೊಲಿಂದ್ ಎನ್ನ ಅಬಿಪ್ರಾಯೊ. ಬಾಕಿಮಾರ್, ಪೆರ್ಬಾಕಿಲ್ ಈ ಸಬ್ದೊಲೆನ್ಲಾ ಗಳಸೊಲಿ. '''Portal talk''' ಸಬ್ದೊಗು '''ಜಾಲಬಾಕಿಲ ಪಾತೆರೊ''' ಗಳಸೊಲಿ. '''ಜಾಲ್''' ಪಂಡ ಕನ್ನಡೊಡು '''ಅಂಗಳ''' ಪನ್ಪುನ ಅರ್ತೊಲಾ ಉಂಡು. ಜಾಲತಾಣ ಪನ್ಪುನ ಅರ್ತೊಲಾ ಆಪುಂಡು. ಜಾಲ+ಬಾಕಿಲ್ ಪಂಡ ಇಲ್ಲ ಪಿದಯಿದ ಜಾಗೆ ಜಾಲ್. ಜಾಲಡ್ ಮಲ್ಪುನ ಬೇಲೆಗ್ ಒಂಜಿ ಬಾಕಿಲ್ ಪೋರ್ಟಲ್ ಆವು. '''Draft''' ಪದೊಕು ಕರಡು ಪನ್ಪುನ ಅರ್ತೊ ಕನ್ನಡೊಡು ಉಂಡು. ತುಳುಕು '''ಕರಡು''' ಪದೊನು ಗಳಸೊಲಿ. '''Draft talk''' ಕರಡು ಪಾತೆರೊ ಗಳಸೊಲಿ. --[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೨೧:೧೫, ೬ ಅಕ್ಟೋಬರ್ ೨೦೨೫ (IST)
{| class="wikitable"
! Namespace ID !! Canonical Name !! Local Name
|-
| 100 || Portal || ಜಾಲಬಾಕಿಲ್
|-
| 101 || Portal talk || ಜಾಲಬಾಕಿಲ ಪಾತೆರೊ
|-
| 118 || Draft || ಕರಡು
|-
| 119 || Draft talk || ಕರಡು ಪಾತೆರೊ
|}
: ಮೂಲು ಪಾತೆರೊರದ ಬಗೆಟ್ * ಆಯೆ ಬಾರಿ ಪೊರ್ಲು ಪಾತೆರ್ವೆ * ಪಾತೆರ ಪಾತೆರೊಡ್.* ಪಾತೆರ್ರ ಬರ್ಪುಂಡು. * ವಿಷಯದ ಪಾತೆರ್ನ. *ರೆಡ್ ಪಾತೆರೊ ಪಾತೆರ್ಲೆ. ಮೂಲು *ನಮ್ಮೂರುಡ್ ಪಾತೆರಕತೆ ನಡಪುಂಡು. * ಈ ಪಾತೆರ್ => ಪಾತೆರ. * ಪಂಡಿನ ಪಾತೆರ ಇಂಚ ಉಂಡು. speak => ಪಾತೆರ್ನ, talk => ಪಾತೆರ, ಇಂಚ ಆದು ಇಪ್ಪ್ವ?.
: there are two many confusions in this world. I think it's right to keep '''ಪಾತೆರ''' And also '''ಜಾಲಬಾಕಿಲ್ ಪಾತೆರ''' because of uniformity the technically word. [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೦೧:೦೯, ೭ ಅಕ್ಟೋಬರ್ ೨೦೨೫ (IST)
:ತಡ್ಯ = ಪ್ರವೇಶ ದ್ವಾರ, ಜಾಲತಡ್ಯ ಮೂಲು portal ಒಂಜಿ ಎಲ್ಯ ಪದೋ. ಒಂಜಿ ಪೊಗ್ಗುನಾ ಸೂಚಕ.
:Portal=>ತಡ್ಯ ; Portal talk=> ತಡ್ಯ ಪಾತೆರ
:Portal=>ಜಾಲತಡ್ಯ ; Portal talk=>ಜಾಲತಡ್ಯ ಪಾತೆರ
:eg. ತಡ್ಯ:ಇತ್ತೆದ ಸುದ್ದಿಲು, ತಡ್ಯ:ಬೂಕುಲು, ತಡ್ಯ:ಇತ್ತೆದ ಸಂಗತಿಲು etc.. [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೨೩:೫೫, ೨೪ ಅಕ್ಟೋಬರ್ ೨೦೨೫ (IST)
:{| class="wikitable"
! Namespace ID !! Canonical Name !! Local Name
|-
| 100 || Portal || ತಡ್ಯ
|-
| 101 || Portal talk || ತಡ್ಯ ಪಾತೆರ
|-
| 118 || Draft || ಕರಡು
|-
| 119 || Draft talk || ಕರಡು ಪಾತೆರ
|} [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೨೩:೧೪, ೫ ನವಂಬರ್ ೨೦೨೫ (IST)
====Support====
#{{support}} --[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೧೧:೦೧, ೩೦ ಸಪ್ಟಂಬರ್ ೨೦೨೫ (IST)
#{{support}} --[[ಬಳಕೆದಾರೆ:Bharathesha Alasandemajalu|Bharathesha Alasandemajalu]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Bharathesha Alasandemajalu|ಪಾತೆರ್ಲೆ]]) ೨೨:೦೨, ೩೦ ಸಪ್ಟಂಬರ್ ೨೦೨೫ (IST)
== Standardize namespace "ಮಾದ್ಯಮೊ ವಿಕಿ" to "ಮಾದ್ಯಮೊವಿಕಿ" for Consistency and URL Cleanliness ==
{{tracked|T406600|resolved}}
As we observed ಮಾದ್ಯಮೊ ವಿಕಿ and ಮಾದ್ಯಮೊ ವಿಕಿ ಪಾತೆರ is little bit disturbed in the browser url we have to remove the space in between ಮಾದ್ಯಮೊ and ವಿಕಿ even in English and Kannada is MediaWiki without space.
This change:
* Aligns with the standard usage of MediaWiki.
* Avoids issues with URL encoding (spaces often become %20).
* Looks more professional and consistent across languages.
So my suggest is:
* <code>ಮಾದ್ಯಮೊ ವಿಕಿ => ಮಾದ್ಯಮೊವಿಕಿ</code>
* <code>ಮಾದ್ಯಮೊ ವಿಕಿ ಪಾತೆರ => ಮಾದ್ಯಮೊವಿಕಿ ಪಾತೆರ</code>
[[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೧೭:೫೬, ೪ ಅಕ್ಟೋಬರ್ ೨೦೨೫ (IST)
===Support===
#{{support}} ಮಾದ್ಯಮೊವಿಕಿ ಒಂಜೇ ಸಬ್ದೊ ಆದಿತ್ತ್ಂಡ ಲಾಯ್ಕ್. ಅಂಚನೇ '''ಮಾದ್ಯಮೊವಿಕಿ ಪಾತೆರೊ''' ಆಂಡ ಲಾಯ್ಕ್. ಪಾತೆರೊ ಬುಕ್ಕೊ ಪಾತೆರ ಇಂದೆಕ್ ಎಲ್ಯ ವ್ಯತ್ಯಾಸೊ ಉಂಡು. ವಾಕ್ಯೊಡು ಪಾತೆರಕತೆ ಗಳಸುನೆ. ಒಂಜೇ ಸಬ್ದೊನು ಗಳಸ್ನಗ ಪಾತೆರೊ ಎಡ್ಡೆಂದ್ ಎನ್ನ ಅಬಿಪ್ರಾಯೊ. --[[ಬಳಕೆದಾರೆ:Vishwanatha Badikana|Vishwanatha Badikana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Vishwanatha Badikana|ಪಾತೆರ್ಲೆ]]) ೨೧:೨೩, ೬ ಅಕ್ಟೋಬರ್ ೨೦೨೫ (IST).
== Proposal: Use Kannada numerals (U+0CE6–U+0CEF) for Tulu Wikipedia numbers ==
{{tracked|T410292|resolved}}
I propose that Tulu Wikipedia display numbers using '''Kannada numerals''' to align with the Kannada script commonly used for Tulu. This will improve readability and maintain consistency for Tulu readers.
==== Digits to be used: ====
<code>0 → ೦, 1 → ೧, 2 → ೨, 3 → ೩, 4 → ೪, 5 → ೫, 6 → ೬, 7 → ೭, 8 → ೮, 9 → ೯</code>
==== Number grouping pattern: ====
Indian style: <code>#,##,##0.###</code> <br />
Example: <code>1234567.89 → ೧೨,೩೪,೫೬೭.೮೯</code>
==== Rationale: ====
* Matches Tulu Wikipedia with its script (Kannada)
* Improves readability for numbers
* Helps with localization and consistency in templates and articles
Feedback from the community is requested. If consensus is reached, this system can be implemented across templates, scripts, and numeric displays on Tulu Wikipedia. - [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೧೫:೧೦, ೧೦ ನವಂಬರ್ ೨೦೨೫ (IST)
=== support ===
*--[[ಬಳಕೆದಾರೆ:Bharathesha Alasandemajalu|Bharathesha Alasandemajalu]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Bharathesha Alasandemajalu|ಪಾತೆರ್ಲೆ]]) ೧೯:೫೨, ೧೭ ನವಂಬರ್ ೨೦೨೫ (IST)
=== oppose ===
== ಒಂಜಿ ಟೆಂಪ್ಲೇಟ್ ಬೋಡು ==
{{Userbox/100wikidays}}
ಈ ಟೆಂಪ್ಲೇಟ್ನ್ ತುಳು ವಿಕಿಗ್ ಇಂಪೋರ್ಟ್ ಮಲ್ತ್ ಕೊರ್ಲೆ ಪಂದ್ ಬಿನ್ನೈತ.. [[ಬಳಕೆದಾರೆ:Mahaveer Indra|Mahaveer Indra]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Mahaveer Indra|ಪಾತೆರ್ಲೆ]]) 13:09, 28 ಸಪ್ಟಂಬರ್ 2026 (IST)
gkxblkfqtfklfr930pioofrqyrvrt91
ಮೋಡ್ಯೂಲ್:Protection banner/documentation
828
18800
370449
199589
2026-08-30T17:20:51Z
en>Primefac
0
Primefac moved page [[Module:Protection banner/documentation]] to [[Module:Protected page/documentation]]: update following [[Special:Permalink/1372151970#Requested_move_16_August_2026|RM]]
370449
Scribunto
text/plain
return require [[Module:Protected page/documentation]]
dyf4tfo453uofw6muk3f0i6kqlewt9v
370450
370449
2026-09-28T09:13:08Z
ChiK
1136
1 revision imported from [[:en:Module:Protection_banner/documentation]]
370449
Scribunto
text/plain
return require [[Module:Protected page/documentation]]
dyf4tfo453uofw6muk3f0i6kqlewt9v
ಮೋಡ್ಯೂಲ್:Protection banner/documentation/config
828
18801
370451
199593
2026-08-30T17:20:51Z
en>Primefac
0
Primefac moved page [[Module:Protection banner/documentation/config]] to [[Module:Protected page/documentation/config]]: update following [[Special:Permalink/1372151970#Requested_move_16_August_2026|RM]]
370451
Scribunto
text/plain
return require [[Module:Protected page/documentation/config]]
4bny22wl50li3by3bq416dza06apyms
370452
370451
2026-09-28T09:13:08Z
ChiK
1136
1 revision imported from [[:en:Module:Protection_banner/documentation/config]]
370451
Scribunto
text/plain
return require [[Module:Protected page/documentation/config]]
4bny22wl50li3by3bq416dza06apyms
ಟೆಂಪ್ಲೇಟ್:Birth year and age
10
18869
370302
361887
2026-09-28T05:18:28Z
ChiK
1136
370302
wikitext
text/x-wiki
<includeonly>{{#if:{{{2|}}}
|{{MONTHNAME|{{{2}}}}}
}}{{{1}}} (ಪ್ರಾಯೊ {{#if:{{{2|}}}
|{{#ifexpr:{{CURRENTMONTH}}<{{{2}}}
|{{#expr:{{CURRENTYEAR}}-{{{1}}}-1}}
|{{#ifexpr:{{CURRENTMONTH}}>{{{2}}}
|{{#expr:{{CURRENTYEAR}}-{{{1}}}}}
|{{#expr:{{CURRENTYEAR}}-{{{1}}}-1}}–{{#expr:{{CURRENTYEAR}}-{{{1}}}}}
}}
}}
|{{#expr:{{CURRENTYEAR}}-{{{1}}}-1}}–{{#expr:{{CURRENTYEAR}}-{{{1}}}}}
}})<!-- Tracking categories
-->{{#ifexpr: ( {{{1}}} > {{CURRENTYEAR}} ) OR ( {{CURRENTYEAR}} - {{{1}}} > 130 ) |   {{Error|invalid year, age > 130}}{{Main other|[[Category:Pages using age template with invalid date]]}}}}<!--
-->{{#if:{{{2|}}}|{{#ifexpr: ( {{{2}}} > 12 ) OR ( {{{2}}} < 1 ) |  {{Error|invalid month}}{{Main other|[[Category:Pages using age template with invalid date]]}}|}}
}}<!--
-->{{#invoke:Check for unknown parameters|check|unknown={{Main other|[[Category:Pages using birth year and age template with unknown parameters|_VALUE_{{PAGENAME}}]]}}|preview=Page using [[Template:Birth year and age]] with unknown parameter "_VALUE_"|showblankpositional=1| 1 | 2 }}<!--
-->{{#ifeq: {{NAMESPACENUMBER}} | 0
| {{#if: {{#invoke:wd|label|raw}}
| {{#if: {{#invoke:String|match|{{#invoke:wd|properties|raw|P31}},|Q5,|1|1|true|}}
| {{#if: {{#invoke:wd|properties|raw|P569}}
|
| [[Category:Date of birth not in Wikidata]]
}}
}}
| [[Category:Articles without Wikidata item]]
}}
}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
ntkjplo396bpga12y0fv5rsyunjoma5
ಮೋಡ್ಯೂಲ್:Transclusion count/data/B
828
18873
370298
370014
2026-09-27T05:08:12Z
en>Ahechtbot
0
[[Wikipedia:BOT|Bot]]: Updated page.
370298
Scribunto
text/plain
return {
["B-Class"] = 18000,
["BBC_Online"] = 3600,
["BBC_programme"] = 2700,
["BCGNIS"] = 2100,
["BDFA"] = 4000,
["BDFutbol"] = 8500,
["BEL"] = 9200,
["BGR"] = 6000,
["BIH"] = 4400,
["BLP"] = 1240000,
["BLP_no_footnotes"] = 3200,
["BLP_one_source"] = 11000,
["BLP_others"] = 15000,
["BLP_primary_sources"] = 6000,
["BLP_sources"] = 100000,
["BLP_sources_section"] = 3400,
["BLP_unreferenced"] = 7700,
["BLP_unreferenced_section"] = 7500,
["BLP_unsourced"] = 7600,
["BLR"] = 5300,
["BRA"] = 11000,
["BS_template"] = 3300,
["BSsplit"] = 15000,
["BSto"] = 7700,
["BUL"] = 5500,
["BWF.TournamentSoftware.com_profile"] = 2200,
["Babel"] = 45000,
["Background_color"] = 7000,
["Bad_JPEG"] = 2500,
["Ballotpedia"] = 2100,
["Bar_box"] = 9500,
["Bar_percent"] = 9300,
["Barrington_Atlas"] = 2100,
["Base_Mérimée"] = 2600,
["Baseball_navbox"] = 13000,
["Baseball_primary_link"] = 9000,
["Baseball_primary_style"] = 18000,
["Baseball_secondary_link"] = 7500,
["Baseball_secondary_style"] = 15000,
["Baseball_year"] = 13000,
["Baseballstats"] = 27000,
["Based_on"] = 32000,
["Basketball_color"] = 7200,
["Basketball_color_cell"] = 12000,
["Basketball_color_cell2"] = 5900,
["Basketball_current_roster"] = 2400,
["Basketball_kit"] = 3900,
["Basketball_primary_style"] = 2200,
["Basketball_roster_footer"] = 2100,
["Basketballbox"] = 5000,
["Basketballstats"] = 3700,
["Bcc"] = 2000,
["Bda"] = 2500,
["Before_and_after_year_navbox_links"] = 2500,
["Better_source"] = 2600,
["Better_source_needed"] = 27000,
["Better_source_requested"] = 4000,
["Bibleverse"] = 8000,
["Big"] = 330000,
["Bigger"] = 44000,
["BillboardURLbyName"] = 8900,
["Billie_Jean_King_Cup_player"] = 2100,
["BioRef"] = 4000,
["Bio_icon"] = 90000,
["Bio_icon2"] = 90000,
["Biographical_Directory_of_Congress"] = 10000,
["Bioguide"] = 3200,
["Biology_high_taxon_classification_navs"] = 2200,
["Birds_tasks"] = 33000,
["Birdsong"] = 2700,
["Birth-date"] = 4900,
["Birth-date_and_age"] = 7800,
["Birth_based_on_age_as_of_date"] = 7900,
["Birth_date"] = 479000,
["Birth_date_and_age"] = 809000,
["Birth_date_and_age2"] = 6700,
["Birth_date_and_age_text"] = 13000,
["Birth_date_text"] = 55000,
["Birth_year"] = 28000,
["Birth_year_and_age"] = 75000,
["Bk"] = 4200,
["Bkicon"] = 2600,
["Blanked_IP_talk"] = 8270000,
["Blist"] = 33000,
["Block_indent"] = 1110000,
["Block_indent/styles.css"] = 1110000,
["Blocked_and_tagged"] = 6100,
["Blocked_proxy"] = 19000,
["Blockedtaggedclosing"] = 3100,
["Blockquote"] = 216000,
["Blockquote/styles.css"] = 216000,
["Blue"] = 18000,
["Bnt"] = 5400,
["Bold_div"] = 3100,
["Border"] = 3400,
["Bot"] = 2100,
["Bot/messages"] = 2100,
["Bot/styles.css"] = 2100,
["BotApproved"] = 2400,
["BotTrial"] = 2500,
["Bot_trial"] = 2700,
["Botanist"] = 4900,
["Botanist/styles.css"] = 4900,
["Both"] = 1450000,
["Botop"] = 2200,
["Bots"] = 18000,
["Box"] = 267000,
["Box-footer"] = 6300,
["Box-header"] = 5600,
["Box-shadow_border"] = 123000,
["BoxRec"] = 5800,
["Boxbottom"] = 2600,
["Boxboxbottom"] = 17000,
["Boxboxtop"] = 19000,
["BoxingRecordSummary"] = 4300,
["Boxing_record_summary"] = 4300,
["Boxrec"] = 4900,
["Bq"] = 21000,
["Br"] = 14000,
["Br-separated_entries"] = 1050000,
["Br_list"] = 8300,
["Br_separated_entries"] = 1710000,
["Bracket"] = 2900,
["Break"] = 30000,
["British_English"] = 19000,
["Brldb_prim"] = 2200,
["Broken_anchor"] = 3300,
["Broken_anchors"] = 49000,
["Broken_ref"] = 64000,
["Broken_ref/cat"] = 8300,
["Broken_ref/lang"] = 64000,
["Broken_ref/styles.css"] = 56000,
["Bronze03"] = 18000,
["Bronze3"] = 43000,
["Bronze_medal"] = 7100,
["Bronze_medal_icon"] = 57000,
["Bs_position"] = 2200,
["Btc"] = 2500,
["Buddhism_topics"] = 2200,
["Bulleted_list"] = 277000,
["Bus_icon"] = 3800,
["Busy"] = 3000,
["Butt-Stations"] = 2600,
["Button"] = 48000,
["By"] = 4100,
["By_whom"] = 6500,
["Module:Babel"] = 45000,
["Module:Banner_shell"] = 12100000,
["Module:Banner_shell/config"] = 12100000,
["Module:Banner_shell/styles.css"] = 12100000,
["Module:BaseConvert"] = 38000,
["Module:Based_on"] = 32000,
["Module:Bibleverse"] = 8000,
["Module:Birth_based_on_age_as_of_dates"] = 7900,
["Module:Box-header"] = 5800,
["Module:Box-header/colours"] = 5800,
["Module:Box-header/styles.css"] = 5800,
["Module:British_regnal_year"] = 2600,
["Module:British_regnal_year/data"] = 2600,
["Module:Buffer"] = 2370000,
["Module:Build_bracket"] = 9400,
["Module:Build_bracket/Config"] = 9400,
["Module:Build_bracket/Helpers"] = 9400,
["Module:Build_bracket/Logic"] = 9400,
["Module:Build_bracket/Params"] = 9400,
["Module:Build_bracket/Paths"] = 9400,
["Module:Build_bracket/Render"] = 9400,
["Module:Build_bracket/StateChecks"] = 9400,
["Module:Build_bracket/styles.css"] = 9400,
}
i2zaktec38i0h4q00oyig571n3hvj5c
370299
370298
2026-09-28T05:11:54Z
ChiK
1136
1 revision imported from [[:en:Module:Transclusion_count/data/B]]
370298
Scribunto
text/plain
return {
["B-Class"] = 18000,
["BBC_Online"] = 3600,
["BBC_programme"] = 2700,
["BCGNIS"] = 2100,
["BDFA"] = 4000,
["BDFutbol"] = 8500,
["BEL"] = 9200,
["BGR"] = 6000,
["BIH"] = 4400,
["BLP"] = 1240000,
["BLP_no_footnotes"] = 3200,
["BLP_one_source"] = 11000,
["BLP_others"] = 15000,
["BLP_primary_sources"] = 6000,
["BLP_sources"] = 100000,
["BLP_sources_section"] = 3400,
["BLP_unreferenced"] = 7700,
["BLP_unreferenced_section"] = 7500,
["BLP_unsourced"] = 7600,
["BLR"] = 5300,
["BRA"] = 11000,
["BS_template"] = 3300,
["BSsplit"] = 15000,
["BSto"] = 7700,
["BUL"] = 5500,
["BWF.TournamentSoftware.com_profile"] = 2200,
["Babel"] = 45000,
["Background_color"] = 7000,
["Bad_JPEG"] = 2500,
["Ballotpedia"] = 2100,
["Bar_box"] = 9500,
["Bar_percent"] = 9300,
["Barrington_Atlas"] = 2100,
["Base_Mérimée"] = 2600,
["Baseball_navbox"] = 13000,
["Baseball_primary_link"] = 9000,
["Baseball_primary_style"] = 18000,
["Baseball_secondary_link"] = 7500,
["Baseball_secondary_style"] = 15000,
["Baseball_year"] = 13000,
["Baseballstats"] = 27000,
["Based_on"] = 32000,
["Basketball_color"] = 7200,
["Basketball_color_cell"] = 12000,
["Basketball_color_cell2"] = 5900,
["Basketball_current_roster"] = 2400,
["Basketball_kit"] = 3900,
["Basketball_primary_style"] = 2200,
["Basketball_roster_footer"] = 2100,
["Basketballbox"] = 5000,
["Basketballstats"] = 3700,
["Bcc"] = 2000,
["Bda"] = 2500,
["Before_and_after_year_navbox_links"] = 2500,
["Better_source"] = 2600,
["Better_source_needed"] = 27000,
["Better_source_requested"] = 4000,
["Bibleverse"] = 8000,
["Big"] = 330000,
["Bigger"] = 44000,
["BillboardURLbyName"] = 8900,
["Billie_Jean_King_Cup_player"] = 2100,
["BioRef"] = 4000,
["Bio_icon"] = 90000,
["Bio_icon2"] = 90000,
["Biographical_Directory_of_Congress"] = 10000,
["Bioguide"] = 3200,
["Biology_high_taxon_classification_navs"] = 2200,
["Birds_tasks"] = 33000,
["Birdsong"] = 2700,
["Birth-date"] = 4900,
["Birth-date_and_age"] = 7800,
["Birth_based_on_age_as_of_date"] = 7900,
["Birth_date"] = 479000,
["Birth_date_and_age"] = 809000,
["Birth_date_and_age2"] = 6700,
["Birth_date_and_age_text"] = 13000,
["Birth_date_text"] = 55000,
["Birth_year"] = 28000,
["Birth_year_and_age"] = 75000,
["Bk"] = 4200,
["Bkicon"] = 2600,
["Blanked_IP_talk"] = 8270000,
["Blist"] = 33000,
["Block_indent"] = 1110000,
["Block_indent/styles.css"] = 1110000,
["Blocked_and_tagged"] = 6100,
["Blocked_proxy"] = 19000,
["Blockedtaggedclosing"] = 3100,
["Blockquote"] = 216000,
["Blockquote/styles.css"] = 216000,
["Blue"] = 18000,
["Bnt"] = 5400,
["Bold_div"] = 3100,
["Border"] = 3400,
["Bot"] = 2100,
["Bot/messages"] = 2100,
["Bot/styles.css"] = 2100,
["BotApproved"] = 2400,
["BotTrial"] = 2500,
["Bot_trial"] = 2700,
["Botanist"] = 4900,
["Botanist/styles.css"] = 4900,
["Both"] = 1450000,
["Botop"] = 2200,
["Bots"] = 18000,
["Box"] = 267000,
["Box-footer"] = 6300,
["Box-header"] = 5600,
["Box-shadow_border"] = 123000,
["BoxRec"] = 5800,
["Boxbottom"] = 2600,
["Boxboxbottom"] = 17000,
["Boxboxtop"] = 19000,
["BoxingRecordSummary"] = 4300,
["Boxing_record_summary"] = 4300,
["Boxrec"] = 4900,
["Bq"] = 21000,
["Br"] = 14000,
["Br-separated_entries"] = 1050000,
["Br_list"] = 8300,
["Br_separated_entries"] = 1710000,
["Bracket"] = 2900,
["Break"] = 30000,
["British_English"] = 19000,
["Brldb_prim"] = 2200,
["Broken_anchor"] = 3300,
["Broken_anchors"] = 49000,
["Broken_ref"] = 64000,
["Broken_ref/cat"] = 8300,
["Broken_ref/lang"] = 64000,
["Broken_ref/styles.css"] = 56000,
["Bronze03"] = 18000,
["Bronze3"] = 43000,
["Bronze_medal"] = 7100,
["Bronze_medal_icon"] = 57000,
["Bs_position"] = 2200,
["Btc"] = 2500,
["Buddhism_topics"] = 2200,
["Bulleted_list"] = 277000,
["Bus_icon"] = 3800,
["Busy"] = 3000,
["Butt-Stations"] = 2600,
["Button"] = 48000,
["By"] = 4100,
["By_whom"] = 6500,
["Module:Babel"] = 45000,
["Module:Banner_shell"] = 12100000,
["Module:Banner_shell/config"] = 12100000,
["Module:Banner_shell/styles.css"] = 12100000,
["Module:BaseConvert"] = 38000,
["Module:Based_on"] = 32000,
["Module:Bibleverse"] = 8000,
["Module:Birth_based_on_age_as_of_dates"] = 7900,
["Module:Box-header"] = 5800,
["Module:Box-header/colours"] = 5800,
["Module:Box-header/styles.css"] = 5800,
["Module:British_regnal_year"] = 2600,
["Module:British_regnal_year/data"] = 2600,
["Module:Buffer"] = 2370000,
["Module:Build_bracket"] = 9400,
["Module:Build_bracket/Config"] = 9400,
["Module:Build_bracket/Helpers"] = 9400,
["Module:Build_bracket/Logic"] = 9400,
["Module:Build_bracket/Params"] = 9400,
["Module:Build_bracket/Paths"] = 9400,
["Module:Build_bracket/Render"] = 9400,
["Module:Build_bracket/StateChecks"] = 9400,
["Module:Build_bracket/styles.css"] = 9400,
}
i2zaktec38i0h4q00oyig571n3hvj5c
ಟೆಂಪ್ಲೇಟ್:Succession links
10
20524
370290
230902
2025-12-15T04:58:20Z
en>Pppery
0
Copy from sandbox per request
370290
wikitext
text/x-wiki
{{#if:{{{above|}}}
|<div class="{{{aboveclass|}}}" style="width:100%; text-align:center; {{{abovestyle|}}}">{{{above}}}</div>
}}{{#if:{{{center|}}}
|<!-- then
--><div style="width:100%; margin:1px; display:inline-table;">
<div style="display:table-cell; text-align:left; vertical-align:{{{vertical-align|middle}}}; padding:0 0.5em 0 0;{{#if:{{{wide|}}}|width:45%;}}{{{leftstyle|}}}" class="noprint">{{#if:{{{left|}}}|{{#if:{{{noarrows|}}}||← }}{{Delink question hyphen-minus|{{{left|}}}}}{{#if:{{{bullets|}}}| '''·'''}}}}</div>
<div style="display:table-cell; text-align:center; vertical-align:{{{vertical-align|middle}}}; padding:0 1px;{{{centerstyle|}}}" class="{{{centerclass|}}}">{{{center}}}</div>
<div style="display:table-cell; text-align:right; vertical-align:{{{vertical-align|middle}}}; padding:0 0 0 0.5em;{{#if:{{{wide|}}}|width:45%;}}{{{rightstyle|}}}" class="noprint">{{#if:{{{right|}}}|{{#if:{{{bullets|}}}|'''·''' }}{{Delink question hyphen-minus|{{{right|}}}}}{{#if:{{{noarrows|}}}|| →}}}}</div>
</div>
|<!-- else
-->{{#if:{{{left|}}}{{{right|}}}|<div style="width:100%">{{#if:{{{left|}}}|
<div style="float: left; text-align:left;padding-right:0.5em;{{{leftstyle|}}}" class="noprint">{{#if:{{{noarrows|}}}||← }}{{Delink question hyphen-minus|{{{left|}}}}}</div>
}}{{#if:{{{right|}}}|
<div style="float: right; text-align:right;padding-left:0.5em;{{{rightstyle|}}}" class="noprint">{{Delink question hyphen-minus|{{{right|}}}}}{{#if:{{{noarrows|}}}|| →}}</div>
}}</div>}}
}}<noinclude>{{documentation}}</noinclude>
mqzj1ijp3znlzcigairge69xq7lpztd
370291
370290
2026-09-28T01:40:47Z
ChiK
1136
1 revision imported from [[:en:Template:Succession_links]]
370290
wikitext
text/x-wiki
{{#if:{{{above|}}}
|<div class="{{{aboveclass|}}}" style="width:100%; text-align:center; {{{abovestyle|}}}">{{{above}}}</div>
}}{{#if:{{{center|}}}
|<!-- then
--><div style="width:100%; margin:1px; display:inline-table;">
<div style="display:table-cell; text-align:left; vertical-align:{{{vertical-align|middle}}}; padding:0 0.5em 0 0;{{#if:{{{wide|}}}|width:45%;}}{{{leftstyle|}}}" class="noprint">{{#if:{{{left|}}}|{{#if:{{{noarrows|}}}||← }}{{Delink question hyphen-minus|{{{left|}}}}}{{#if:{{{bullets|}}}| '''·'''}}}}</div>
<div style="display:table-cell; text-align:center; vertical-align:{{{vertical-align|middle}}}; padding:0 1px;{{{centerstyle|}}}" class="{{{centerclass|}}}">{{{center}}}</div>
<div style="display:table-cell; text-align:right; vertical-align:{{{vertical-align|middle}}}; padding:0 0 0 0.5em;{{#if:{{{wide|}}}|width:45%;}}{{{rightstyle|}}}" class="noprint">{{#if:{{{right|}}}|{{#if:{{{bullets|}}}|'''·''' }}{{Delink question hyphen-minus|{{{right|}}}}}{{#if:{{{noarrows|}}}|| →}}}}</div>
</div>
|<!-- else
-->{{#if:{{{left|}}}{{{right|}}}|<div style="width:100%">{{#if:{{{left|}}}|
<div style="float: left; text-align:left;padding-right:0.5em;{{{leftstyle|}}}" class="noprint">{{#if:{{{noarrows|}}}||← }}{{Delink question hyphen-minus|{{{left|}}}}}</div>
}}{{#if:{{{right|}}}|
<div style="float: right; text-align:right;padding-left:0.5em;{{{rightstyle|}}}" class="noprint">{{Delink question hyphen-minus|{{{right|}}}}}{{#if:{{{noarrows|}}}|| →}}</div>
}}</div>}}
}}<noinclude>{{documentation}}</noinclude>
mqzj1ijp3znlzcigairge69xq7lpztd
ಟೆಂಪ್ಲೇಟ್:Transcluded section
10
20766
370323
359807
2026-08-30T20:05:01Z
en>Axolitl
0
boldly add {{{extraclasses}}} parameter; don't think it should be controversial
370323
wikitext
text/x-wiki
{{#invoke:Hatnote||extraclasses=relarticle mainarticle selfreference noprint {{{extraclasses|}}}|1={{#if:{{{table|}}}|This table|{{#ifeq:{{Yesno-no|{{{part|}}}}}|yes|Part of this section|This section}}}} is [[Help:Transclusion|transcluded]] from {{format link|link={{{1|{{{source|The Example#Synopsis}}}}}}|display={{{title|}}}}}. <span class="plainlinks" style="font-style: normal; font-size:85%;">([{{fullurl:{{Absolute page title|{{{1|{{{source|}}}}}}}}|action=edit}} edit] | [{{fullurl:{{Absolute page title|{{{1|{{{source|}}}}}}}}|action=history}} history])</span>}}<noinclude>
{{documentation}}
</noinclude>
o48520y8098ls5o8nst41zh4vyhzlyn
370324
370268
2026-09-28T05:28:33Z
ChiK
1136
1 revision imported from [[:en:Template:Transcluded_section]]
370268
wikitext
text/x-wiki
{{#invoke:Hatnote||extraclasses=relarticle mainarticle selfreference noprint|1={{#if:{{{table|}}}|This table|{{#ifeq:{{Yesno-no|{{{part|}}}}}|yes|Part of this section|This section}}}} is [[Help:Transclusion|transcluded]] from {{format link|link={{{1|{{{source|The Example#Synopsis}}}}}}|display={{{title|}}}}}. <span class="plainlinks" style="font-style: normal; font-size:85%;">([{{fullurl:{{Absolute page title|{{{1|{{{source|}}}}}}}}|action=edit}} ತಿದ್ದ್ಲೆ] | [{{fullurl:{{Absolute page title|{{{1|{{{source|}}}}}}}}|action=history}} ಇತಿಹಾಸೊ])</span>}}<noinclude>
{{documentation}}
</noinclude>
2sir1y0di7c5l3bduf0xxx8ia2luzh3
ಟೆಂಪ್ಲೇಟ್:Templates for archiving
10
20767
370327
368329
2026-09-20T15:26:33Z
en>GTrang
0
Undid revision [[Special:Diff/1368192080|1368192080]] by [[Special:Contributions/GTrang|GTrang]] ([[User talk:GTrang|talk]]) And now the template is once again at [[Template:Rfc top]].
370327
wikitext
text/x-wiki
{{Navbox
| name = Templates for archiving
| title = Templates for archiving
| bodyclass = hlist
| state = {{{state<includeonly>|autocollapse</includeonly>}}}
| above =
* [[Help:Archiving (plain and simple)|Archiving (simple)]]
* [[Help:Archiving a talk page|Archiving (technical)]]
* [[WP:CHOOSEBOT|Choosing the right bot]]
| group1 = Recommended
| list1 =
* {{tl|Archives}} <span style="color:var(--color-subtle, #54595d);">(configurable side box or banner for main talk page)</span>
* {{tl|Archive}} <span style="color:var(--color-subtle, #54595d);">(banner placed on archive pages with navigation)</span>
* {{tl|Talk header}} <span style="color:var(--color-subtle, #54595d);">(banner with talk page guidelines and archives)</span>
* {{tl|Archive top}} / <small>{{tl|Atop}}</small> <span style="color:var(--color-subtle, #54595d);">(archives/closes discussion)</span>
* [[Wikipedia:One click archiving]] <span style="color:var(--color-subtle, #54595d);">(archiver scripts)</span>
| group4 = Headers
| list4 = {{Navbox|subgroup
| group1 = With<br />navigation
| list1 =
* {{tl|Archived annually}}
* {{tl|Archive}} <span style="color:var(--color-subtle, #54595d);">(does not need parameter)</span>
* {{tl|Archives by months}}
* {{tl|Month-year archive nav}}
* {{tl|Monthly archived talk}}
| group2 = Without<br />navigation
| list2 =
* {{tl|Being archived}}
| group3 = With<br />search
| list3 =
* {{tl|Talk header}} <span style="color:var(--color-subtle, #54595d);">(contains an automatically appearing archive search box and nav)</span>
}}
| group5 = Content<br />formatting
| list5 =
* {{tl|Archive top}} / <small>{{tl|atop}}</small>
* {{tl|Archive top green}} / <small>{{tl|atopg}}</small>
* {{tl|Archive top red}} / <small>{{tl|atopr}}</small>
* {{tl|Archive top yellow}} / <small>{{tl|atopy}}</small>
* {{tl|Archive bottom}} / <small>{{tl|abot}}</small>
* {{tl|Collapse}}
* {{tl|Collapse top}} / <small>{{tl|cot}}</small>
* {{tl|Collapse bottom}} / <small>{{tl|cob}}</small>
* {{tl|Collapse AI top}} / <small>{{tl|cait}}</small>
* {{tl|Hidden archive top}} / <small>{{tl|hat}}</small>
* {{tl|Hidden archive bottom}} / <small>{{tl|hab}}</small>
* {{tl|Rfc top}}
| group6 = Lists
| list6 =
* {{tl|Archive list}} <span style="color:var(--color-subtle, #54595d);">(numbered archives usually the default)</span>
* {{tl|Archive list alpha}}
* {{tl|Monthly archive list}}
* {{tl|Yearly archive list}}
| group7 = Discussion
| list7 =
* {{tl|Archive request}}
* {{tl|Please archive}}
* {{tl|uw-archive}}
| group8 = Automatic<br />archiving<br />systems
| list8 = {{navbox|subgroup
| group1 =
[[User:Lowercase sigmabot III/Archive HowTo|lowercase<br/>sigmabot III]]<br/>(MiszaBot)<!-- There are three MiszaBot accounts at this time, they are inactive, lowercase sigmabot runs off of the same config -->
| list1 =
* {{tls|Setup auto archiving}}
* {{tlu|User:MiszaBot/config}}
| group2 =
[[User:ClueBot III|ClueBot III]]
| list2 =
* {{tls|Setup cluebot archiving}}
* {{tls|Archive now}}
* {{tlu|User:ClueBot III/ArchiveThis}}
| group3 = other
| list3 =
* [[User:HBC Archive Indexerbot/OptIn|HBC Archive Indexerbot (Legobot)]]
<!--* [[User:Legobot|Legobot]] Instructions are on HBCAI's userpage for now, that link should be used until Legoktm writes new ones. -->
| group4 = general
| list4 =
* {{tl|Archive basics}}
* {{tls|Bump}}
* {{tls|Do not archive until}}
* {{tls|Pin section}}
}}
| below =
*{{Icon|Category}} [[:Category:Archival templates]]
}}<noinclude>
{{Navbox documentation}}
[[Category:Archival templates]]
[[Category:Navigational metatemplates]]
[[Category:Documentation see also templates]]
</noinclude>
niq1t4bys2od61tijqtp22cx9m7wuxi
370328
370327
2026-09-28T05:28:33Z
ChiK
1136
1 revision imported from [[:en:Template:Templates_for_archiving]]
370327
wikitext
text/x-wiki
{{Navbox
| name = Templates for archiving
| title = Templates for archiving
| bodyclass = hlist
| state = {{{state<includeonly>|autocollapse</includeonly>}}}
| above =
* [[Help:Archiving (plain and simple)|Archiving (simple)]]
* [[Help:Archiving a talk page|Archiving (technical)]]
* [[WP:CHOOSEBOT|Choosing the right bot]]
| group1 = Recommended
| list1 =
* {{tl|Archives}} <span style="color:var(--color-subtle, #54595d);">(configurable side box or banner for main talk page)</span>
* {{tl|Archive}} <span style="color:var(--color-subtle, #54595d);">(banner placed on archive pages with navigation)</span>
* {{tl|Talk header}} <span style="color:var(--color-subtle, #54595d);">(banner with talk page guidelines and archives)</span>
* {{tl|Archive top}} / <small>{{tl|Atop}}</small> <span style="color:var(--color-subtle, #54595d);">(archives/closes discussion)</span>
* [[Wikipedia:One click archiving]] <span style="color:var(--color-subtle, #54595d);">(archiver scripts)</span>
| group4 = Headers
| list4 = {{Navbox|subgroup
| group1 = With<br />navigation
| list1 =
* {{tl|Archived annually}}
* {{tl|Archive}} <span style="color:var(--color-subtle, #54595d);">(does not need parameter)</span>
* {{tl|Archives by months}}
* {{tl|Month-year archive nav}}
* {{tl|Monthly archived talk}}
| group2 = Without<br />navigation
| list2 =
* {{tl|Being archived}}
| group3 = With<br />search
| list3 =
* {{tl|Talk header}} <span style="color:var(--color-subtle, #54595d);">(contains an automatically appearing archive search box and nav)</span>
}}
| group5 = Content<br />formatting
| list5 =
* {{tl|Archive top}} / <small>{{tl|atop}}</small>
* {{tl|Archive top green}} / <small>{{tl|atopg}}</small>
* {{tl|Archive top red}} / <small>{{tl|atopr}}</small>
* {{tl|Archive top yellow}} / <small>{{tl|atopy}}</small>
* {{tl|Archive bottom}} / <small>{{tl|abot}}</small>
* {{tl|Collapse}}
* {{tl|Collapse top}} / <small>{{tl|cot}}</small>
* {{tl|Collapse bottom}} / <small>{{tl|cob}}</small>
* {{tl|Collapse AI top}} / <small>{{tl|cait}}</small>
* {{tl|Hidden archive top}} / <small>{{tl|hat}}</small>
* {{tl|Hidden archive bottom}} / <small>{{tl|hab}}</small>
* {{tl|Rfc top}}
| group6 = Lists
| list6 =
* {{tl|Archive list}} <span style="color:var(--color-subtle, #54595d);">(numbered archives usually the default)</span>
* {{tl|Archive list alpha}}
* {{tl|Monthly archive list}}
* {{tl|Yearly archive list}}
| group7 = Discussion
| list7 =
* {{tl|Archive request}}
* {{tl|Please archive}}
* {{tl|uw-archive}}
| group8 = Automatic<br />archiving<br />systems
| list8 = {{navbox|subgroup
| group1 =
[[User:Lowercase sigmabot III/Archive HowTo|lowercase<br/>sigmabot III]]<br/>(MiszaBot)<!-- There are three MiszaBot accounts at this time, they are inactive, lowercase sigmabot runs off of the same config -->
| list1 =
* {{tls|Setup auto archiving}}
* {{tlu|User:MiszaBot/config}}
| group2 =
[[User:ClueBot III|ClueBot III]]
| list2 =
* {{tls|Setup cluebot archiving}}
* {{tls|Archive now}}
* {{tlu|User:ClueBot III/ArchiveThis}}
| group3 = other
| list3 =
* [[User:HBC Archive Indexerbot/OptIn|HBC Archive Indexerbot (Legobot)]]
<!--* [[User:Legobot|Legobot]] Instructions are on HBCAI's userpage for now, that link should be used until Legoktm writes new ones. -->
| group4 = general
| list4 =
* {{tl|Archive basics}}
* {{tls|Bump}}
* {{tls|Do not archive until}}
* {{tls|Pin section}}
}}
| below =
*{{Icon|Category}} [[:Category:Archival templates]]
}}<noinclude>
{{Navbox documentation}}
[[Category:Archival templates]]
[[Category:Navigational metatemplates]]
[[Category:Documentation see also templates]]
</noinclude>
niq1t4bys2od61tijqtp22cx9m7wuxi
ಸಕಾಯೊ:Collapsing tables and more
12
20773
370331
239362
2026-08-22T12:38:02Z
en>PrimeHunter
0
/* Other notes */ add Color section about coloring the show/hide button
370331
wikitext
text/x-wiki
{{Short description|Wikipedia project page}}
{{table help}}
{{About|how to collapse content when editing Wikipedia pages|the Manual of Style on collapsing content|MOS:COLLAPSE}}
{{Wikipedia how-to|H:COLS}}
A '''collapsible''' element contains a toggle a reader can use to show or hide the element's content. Elements are made collapsible by adding the <code>mw-collapsible</code> class, or alternatively by using the {{tlx|Collapse}} template, or its variants {{tlx|Collapse top}} and {{tlx|Collapse bottom}}.
Use of these features in article content is governed by the guidelines {{section link|Wikipedia:Manual of Style#Scrolling lists and collapsible content}} generally, and more specifically by [[Wikipedia:Spoiler]].
==Collapsible tables==
The <code>[[mw:Manual:Collapsible elements|mw-collapsible]]</code> class can make any element collapsible, but tables are particularly simple to make collapsible. Adding the <code>mw-collapsible</code> class to a table automatically positions the toggle, and selects which parts to collapse.
A common use is to make a collapsible layout table, which always displays an introduction or summary, but hides the rest of the content from immediate view. The introduction or summary is in the first row, and the content is in subsequent rows. The content is then easily accessible by using the 'show' button.
In the examples below, the use of the class <code>wikitable</code> is merely for appearance; it is not needed for <code>mw-collapsible</code> to function.
{| class=wikitable style="width:80%;"
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">{| role="presentation" class="wikitable mw-collapsible"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}</syntaxhighlight>
|style="width:50%;"|
{| role="presentation" class="wikitable mw-collapsible"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|}
More complex data tables can also be collapsible.
{| class="wikitable" style="width:80%;"
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">
{| class="wikitable mw-collapsible"
|+ class="nowrap" | Winter Olympic Games
|-
|
! scope="col" | City
! scope="col" | Country
|-
! scope="row" | 1994
| Lillehammer || Norway
|-
! scope="row" | 1998
| Nagano || Japan
|}
</syntaxhighlight>
|style="width:50%;"|
{| class="wikitable mw-collapsible"
|+ class="nowrap" | Winter Olympic Games
|-
|
! scope="col" | City
! scope="col" | Country
|-
! scope="row" | 1994
| Lillehammer || Norway
|-
! scope="row" | 1998
| Nagano || Japan
|}
|}
==Collapsing by default==
Just using the <code>mw-collapsible</code> class leaves the element expanded by default, but it can be collapsed by the reader. It is also possible to make the element collapsed by default, and optionally expanded by adding other classes along with <code>mw-collapsible</code>. There are several methods for doing this, depending on the situations in which you want the element to collapse. However, content should not be collapsed by default per [[MOS:DONTHIDE]].
==="mw-collapsed"===
Adding the <code>mw-collapsed</code> class will cause the element to {{em|always}} be initially collapsed, no matter what happens around it. It is the simplest method for doing so. Using the examples above:
{| class=wikitable style="width:80%;" align=center
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}</syntaxhighlight>
|style="width:50%;"|
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">
{| class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Winter Olympic Games
|-
|
! scope="col" | City
! scope="col" | Country
|-
! scope="row" | 1994
| Lillehammer || Norway
|-
! scope="row" | 1998
| Nagano || Japan
|}
</syntaxhighlight>
|style="width:50%;"|
{| class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Winter Olympic Games
|-
|
! scope="col" | City
! scope="col" | Country
|-
! scope="row" | 1994
| Lillehammer || Norway
|-
! scope="row" | 1998
| Nagano || Japan
|}
|}
==="autocollapse"===
{{hatnote|Using this technique causes the page to reflow/jump around and should generally be avoided.}}
Adding the <code>autocollapse</code> class causes an element to collapse if there are 2 or more collapsible elements on the page. The example below, therefore, collapses because there are numerous collapsible elements on this page.
{| class=wikitable style="width:80%;" align=center
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">{| role="presentation" class="wikitable mw-collapsible autocollapse"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}</syntaxhighlight>
|style="width:50%;"|
{| role="presentation" class="wikitable mw-collapsible autocollapse"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|}
==="innercollapse" and "outercollapse"===
{{hatnote|Using this technique causes the page to reflow/jump around and should generally be avoided.}}
Using this pair of classes, it is possible to make an element collapsed by default only when it is {{em|contained within}} a particular outer element. An element with the <code>mw-collapsible</code> and <code>innercollapse</code> classes is collapsed by default if it is contained within an element with the <code>outercollapse</code> class; otherwise, it is uncollapsed by default. This is mainly useful for templates, which are often nested.
{| class=wikitable style="width:80%;" align=center
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">
{| role="presentation" class="wikitable mw-collapsible innercollapse"
| This <code>innercollapse</code> element is
|-
| <em>uncollapsed</em> by default
|}
<div class="wikitable outercollapse" style="padding:1em; background:#ccc;">
This is an element with the <code>outercollapse</code> class.
{| role="presentation" class="wikitable mw-collapsible innercollapse"
| This <code>innercollapse</code> element is
|-
| <em>collapsed</em> by default
|}
</div>
</syntaxhighlight>
|style="width:50%;"|
{| role="presentation" class="wikitable mw-collapsible innercollapse"
| This <code>innercollapse</code> element is
|-
| <em>uncollapsed</em> by default
|}
<div class="wikitable outercollapse" style="padding:1em; background:#ccc;">
This is an element with the <code>outercollapse</code> class.
{| role="presentation" class="wikitable mw-collapsible innercollapse"
| This <code>innercollapse</code> element is
|-
| <em>collapsed</em> by default
|}
</div>
|}
==Other notes==
===Tables with captions===
A table without a caption will collapse to its first row. A table <em>with</em> a caption will collapse to its caption, with no rows, therefore no width. Use <code>class="nowrap"</code> or {{tlx|nowrap}} to keep the caption from being squeezed into a vertical column when the table is collapsed.
{|class="wikitable" style="margin:0.5em auto;width:80%"
|-
!scope="col" width="60%"|Code entered
!scope="col" width="40%"|Output produced
|-
|width="60%"|
<syntaxhighlight lang="wikitext">{|class="wikitable sortable mw-collapsible"
|+ class="nowrap" | Somewhat long table caption
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}</syntaxhighlight>
|width="40%"|
{|class="wikitable sortable mw-collapsible"
|+ class="nowrap" | Somewhat long table caption
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|}
Next example uses '''{{tlx|nowrap}}''' where the end brackets become the wrap point. '''<code><style=max-width:Xem;</code>''' will not work.
{|class="wikitable" style="margin:0.5em auto;width:80%"
|-
!scope="col" width="60%"|Code entered
!scope="col" width="40%"|Output produced
|-
|width="60%"|
<syntaxhighlight lang="wikitext">{|class="wikitable sortable mw-collapsible"
|+ {{nowrap|A longer table caption needs to wrap}} for cell phones, etc.
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}</syntaxhighlight>
|width="40%"|
{|class="wikitable sortable mw-collapsible"
|+ {{nowrap|A longer table caption needs to wrap}} for cell phones, etc.
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|}
===Sortable tables===
Collapsible tables can be combined with the [[Help:Sortable tables|sortable tables]] functionality without difficulty. However, because the hide/show button is placed with <code>mw-collapsible</code> in the right header cell, its positioning can look a bit peculiar if the cell is not wide enough:
{|class="wikitable" style="margin:0.5em auto;width:80%"
|-
!scope="col" width="60%"|Code entered
!scope="col" width="40%"|Output produced
|-
|width="60%"|
<syntaxhighlight lang="wikitext">{|class="wikitable mw-collapsible sortable" style="width:5em"
<!--table width too narrow, on purpose here-->
|-
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}</syntaxhighlight>
|width="40%"|
{|class="wikitable sortable mw-collapsible" style="width:5em"
<!--table width too narrow, on purpose here-->
|-
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|}
A possible alternative is to add a caption over the table. See the following example.
{|class="wikitable" style="margin:0.5em auto;width:80%"
|-
!scope="col" width="60%"|Code entered
!scope="col" width="40%"|Output produced
|-
|width="60%"|
<syntaxhighlight lang="wikitext">{|class="wikitable sortable mw-collapsible"
|+ class="nowrap" | Caption
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}</syntaxhighlight>
|width="40%"|
{|class="wikitable sortable mw-collapsible"
|+ class="nowrap" | Caption
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|}
===Color===
The show/hide button can be colored in the style of the cell it is in, for example to make white text on a dark background.
{| class=wikitable style="width:80%;" align=center
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">{| class="wikitable mw-collapsible mw-collapsed"
| style="background:blue; color:white;" | <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}</syntaxhighlight>
|style="width:50%;"|
{| class="wikitable mw-collapsible mw-collapsed"
| style="background:blue; color:white;" | <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|}
===Limitations===
<!--The content of this section is transcluded at [[Template:Collapse top/doc#Limitations]] and [[Template:Collapse/doc#Limitations]].-->
* This functionality requires the end-user's browser to have [[JavaScript]] enabled. If JavaScript is disabled, the default behavior is to show the content.
==See also==
Documentation:
* {{Section link|Wikipedia:Manual of Style|Scrolling lists and collapsible content}} – style guidelines for collapsing content
* [[Help:Table]]
* [[Help:Table of contents]]
Templates:
* {{clc|Collapse templates}}
== External links ==
*[[mw:Manual:Collapsible elements]]
*[[mw:ResourceLoader/Default modules#jquery.makeCollapsible]]
{{Wikipedia technical help|collapsed}}
[[Category:Wikipedia how-to]]
[[Category:Wikipedia tables]]
1izyvvooat7kw38zf6eludz7y9i72wi
370332
370331
2026-09-28T05:28:34Z
ChiK
1136
1 revision imported from [[:en:Help:Collapsing_tables_and_more]]
370331
wikitext
text/x-wiki
{{Short description|Wikipedia project page}}
{{table help}}
{{About|how to collapse content when editing Wikipedia pages|the Manual of Style on collapsing content|MOS:COLLAPSE}}
{{Wikipedia how-to|H:COLS}}
A '''collapsible''' element contains a toggle a reader can use to show or hide the element's content. Elements are made collapsible by adding the <code>mw-collapsible</code> class, or alternatively by using the {{tlx|Collapse}} template, or its variants {{tlx|Collapse top}} and {{tlx|Collapse bottom}}.
Use of these features in article content is governed by the guidelines {{section link|Wikipedia:Manual of Style#Scrolling lists and collapsible content}} generally, and more specifically by [[Wikipedia:Spoiler]].
==Collapsible tables==
The <code>[[mw:Manual:Collapsible elements|mw-collapsible]]</code> class can make any element collapsible, but tables are particularly simple to make collapsible. Adding the <code>mw-collapsible</code> class to a table automatically positions the toggle, and selects which parts to collapse.
A common use is to make a collapsible layout table, which always displays an introduction or summary, but hides the rest of the content from immediate view. The introduction or summary is in the first row, and the content is in subsequent rows. The content is then easily accessible by using the 'show' button.
In the examples below, the use of the class <code>wikitable</code> is merely for appearance; it is not needed for <code>mw-collapsible</code> to function.
{| class=wikitable style="width:80%;"
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">{| role="presentation" class="wikitable mw-collapsible"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}</syntaxhighlight>
|style="width:50%;"|
{| role="presentation" class="wikitable mw-collapsible"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|}
More complex data tables can also be collapsible.
{| class="wikitable" style="width:80%;"
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">
{| class="wikitable mw-collapsible"
|+ class="nowrap" | Winter Olympic Games
|-
|
! scope="col" | City
! scope="col" | Country
|-
! scope="row" | 1994
| Lillehammer || Norway
|-
! scope="row" | 1998
| Nagano || Japan
|}
</syntaxhighlight>
|style="width:50%;"|
{| class="wikitable mw-collapsible"
|+ class="nowrap" | Winter Olympic Games
|-
|
! scope="col" | City
! scope="col" | Country
|-
! scope="row" | 1994
| Lillehammer || Norway
|-
! scope="row" | 1998
| Nagano || Japan
|}
|}
==Collapsing by default==
Just using the <code>mw-collapsible</code> class leaves the element expanded by default, but it can be collapsed by the reader. It is also possible to make the element collapsed by default, and optionally expanded by adding other classes along with <code>mw-collapsible</code>. There are several methods for doing this, depending on the situations in which you want the element to collapse. However, content should not be collapsed by default per [[MOS:DONTHIDE]].
==="mw-collapsed"===
Adding the <code>mw-collapsed</code> class will cause the element to {{em|always}} be initially collapsed, no matter what happens around it. It is the simplest method for doing so. Using the examples above:
{| class=wikitable style="width:80%;" align=center
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}</syntaxhighlight>
|style="width:50%;"|
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">
{| class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Winter Olympic Games
|-
|
! scope="col" | City
! scope="col" | Country
|-
! scope="row" | 1994
| Lillehammer || Norway
|-
! scope="row" | 1998
| Nagano || Japan
|}
</syntaxhighlight>
|style="width:50%;"|
{| class="wikitable mw-collapsible mw-collapsed"
|+ class="nowrap" | Winter Olympic Games
|-
|
! scope="col" | City
! scope="col" | Country
|-
! scope="row" | 1994
| Lillehammer || Norway
|-
! scope="row" | 1998
| Nagano || Japan
|}
|}
==="autocollapse"===
{{hatnote|Using this technique causes the page to reflow/jump around and should generally be avoided.}}
Adding the <code>autocollapse</code> class causes an element to collapse if there are 2 or more collapsible elements on the page. The example below, therefore, collapses because there are numerous collapsible elements on this page.
{| class=wikitable style="width:80%;" align=center
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">{| role="presentation" class="wikitable mw-collapsible autocollapse"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}</syntaxhighlight>
|style="width:50%;"|
{| role="presentation" class="wikitable mw-collapsible autocollapse"
| <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|}
==="innercollapse" and "outercollapse"===
{{hatnote|Using this technique causes the page to reflow/jump around and should generally be avoided.}}
Using this pair of classes, it is possible to make an element collapsed by default only when it is {{em|contained within}} a particular outer element. An element with the <code>mw-collapsible</code> and <code>innercollapse</code> classes is collapsed by default if it is contained within an element with the <code>outercollapse</code> class; otherwise, it is uncollapsed by default. This is mainly useful for templates, which are often nested.
{| class=wikitable style="width:80%;" align=center
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">
{| role="presentation" class="wikitable mw-collapsible innercollapse"
| This <code>innercollapse</code> element is
|-
| <em>uncollapsed</em> by default
|}
<div class="wikitable outercollapse" style="padding:1em; background:#ccc;">
This is an element with the <code>outercollapse</code> class.
{| role="presentation" class="wikitable mw-collapsible innercollapse"
| This <code>innercollapse</code> element is
|-
| <em>collapsed</em> by default
|}
</div>
</syntaxhighlight>
|style="width:50%;"|
{| role="presentation" class="wikitable mw-collapsible innercollapse"
| This <code>innercollapse</code> element is
|-
| <em>uncollapsed</em> by default
|}
<div class="wikitable outercollapse" style="padding:1em; background:#ccc;">
This is an element with the <code>outercollapse</code> class.
{| role="presentation" class="wikitable mw-collapsible innercollapse"
| This <code>innercollapse</code> element is
|-
| <em>collapsed</em> by default
|}
</div>
|}
==Other notes==
===Tables with captions===
A table without a caption will collapse to its first row. A table <em>with</em> a caption will collapse to its caption, with no rows, therefore no width. Use <code>class="nowrap"</code> or {{tlx|nowrap}} to keep the caption from being squeezed into a vertical column when the table is collapsed.
{|class="wikitable" style="margin:0.5em auto;width:80%"
|-
!scope="col" width="60%"|Code entered
!scope="col" width="40%"|Output produced
|-
|width="60%"|
<syntaxhighlight lang="wikitext">{|class="wikitable sortable mw-collapsible"
|+ class="nowrap" | Somewhat long table caption
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}</syntaxhighlight>
|width="40%"|
{|class="wikitable sortable mw-collapsible"
|+ class="nowrap" | Somewhat long table caption
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|}
Next example uses '''{{tlx|nowrap}}''' where the end brackets become the wrap point. '''<code><style=max-width:Xem;</code>''' will not work.
{|class="wikitable" style="margin:0.5em auto;width:80%"
|-
!scope="col" width="60%"|Code entered
!scope="col" width="40%"|Output produced
|-
|width="60%"|
<syntaxhighlight lang="wikitext">{|class="wikitable sortable mw-collapsible"
|+ {{nowrap|A longer table caption needs to wrap}} for cell phones, etc.
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}</syntaxhighlight>
|width="40%"|
{|class="wikitable sortable mw-collapsible"
|+ {{nowrap|A longer table caption needs to wrap}} for cell phones, etc.
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|}
===Sortable tables===
Collapsible tables can be combined with the [[Help:Sortable tables|sortable tables]] functionality without difficulty. However, because the hide/show button is placed with <code>mw-collapsible</code> in the right header cell, its positioning can look a bit peculiar if the cell is not wide enough:
{|class="wikitable" style="margin:0.5em auto;width:80%"
|-
!scope="col" width="60%"|Code entered
!scope="col" width="40%"|Output produced
|-
|width="60%"|
<syntaxhighlight lang="wikitext">{|class="wikitable mw-collapsible sortable" style="width:5em"
<!--table width too narrow, on purpose here-->
|-
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}</syntaxhighlight>
|width="40%"|
{|class="wikitable sortable mw-collapsible" style="width:5em"
<!--table width too narrow, on purpose here-->
|-
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|}
A possible alternative is to add a caption over the table. See the following example.
{|class="wikitable" style="margin:0.5em auto;width:80%"
|-
!scope="col" width="60%"|Code entered
!scope="col" width="40%"|Output produced
|-
|width="60%"|
<syntaxhighlight lang="wikitext">{|class="wikitable sortable mw-collapsible"
|+ class="nowrap" | Caption
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}</syntaxhighlight>
|width="40%"|
{|class="wikitable sortable mw-collapsible"
|+ class="nowrap" | Caption
! Name !! Score
|-
| John || 59
|-
| Bob || 72
|}
|}
===Color===
The show/hide button can be colored in the style of the cell it is in, for example to make white text on a dark background.
{| class=wikitable style="width:80%;" align=center
!Code entered!!Output produced
|-
|style="width:50%;"|
<syntaxhighlight lang="wikitext">{| class="wikitable mw-collapsible mw-collapsed"
| style="background:blue; color:white;" | <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}</syntaxhighlight>
|style="width:50%;"|
{| class="wikitable mw-collapsible mw-collapsed"
| style="background:blue; color:white;" | <strong>Lorem ipsum</strong>
|-
| Lorem ipsum dolor sit amet
|}
|}
===Limitations===
<!--The content of this section is transcluded at [[Template:Collapse top/doc#Limitations]] and [[Template:Collapse/doc#Limitations]].-->
* This functionality requires the end-user's browser to have [[JavaScript]] enabled. If JavaScript is disabled, the default behavior is to show the content.
==See also==
Documentation:
* {{Section link|Wikipedia:Manual of Style|Scrolling lists and collapsible content}} – style guidelines for collapsing content
* [[Help:Table]]
* [[Help:Table of contents]]
Templates:
* {{clc|Collapse templates}}
== External links ==
*[[mw:Manual:Collapsible elements]]
*[[mw:ResourceLoader/Default modules#jquery.makeCollapsible]]
{{Wikipedia technical help|collapsed}}
[[Category:Wikipedia how-to]]
[[Category:Wikipedia tables]]
1izyvvooat7kw38zf6eludz7y9i72wi
ಟೆಂಪ್ಲೇಟ್:Collapse/doc
10
20778
370329
239522
2025-12-03T04:01:08Z
en>UmbyUmbreon
0
Fixed typo
370329
wikitext
text/x-wiki
{{Documentation subpage}}
<!-- Add categories where indicated at the bottom of this page and interwikis at Wikidata -->
{{High-use}}
{{Collapsible templates}}
The {{tlx|collapse|<nowiki>folding text</nowiki>}} template is used for placing collapse boxes around ''short'' discussions and bits of discussions. To fold ''long'' discussion threads, use {{tlx|Collapse top}}<code>... lots of text ...</code>{{tlx|Collapse bottom}}. There are cases where these templates will not work. See [[Help:Collapsing]] for other options.
This template should only be used in accordance with the [[Wikipedia:refactoring talk pages]] guideline; it should never be used to end a discussion over the objections of other editors, except in cases of unambiguous disruptive editing.
Do not hide content in articles. This violates the [[WP:Manual of Style#Scrolling lists and collapsible content]] and [[WP:Accessibility]] guidelines.
== Usage ==
{{Tlx|Collapse|1=<var>Discussion text to be put into box.</var>|2=<var>Optional custom heading</var>}}
It is definitely safest to use the named {{para|1}} and {{para|2}} parameters, because otherwise any "=" character will break the template.
For compatibility with various discussion-boxing and -closing, and discussion-wrapping templates, {{para|1}} can also be given as {{para|content}} or {{para|text}}, and {{para|2}} can also be given as {{para|title}}, {{para|reason}}, {{para|header}}, {{para|heading}}, or {{para|result}}.
This works with collapsed bulleted list (the first bullet will look correct):<br>
{{Tlx|Collapse|title=|Bulleted list}}
Start bulleted list on a new line.
=== HTML version ===
If you find that the template does not function properly in a particular circumstance, this is most likely because the wikitext table markup (<code><nowiki>{|</nowiki></code>, etc.) only works when it is at the beginning of a new line.
A workaround for this is to use the "pure HTML" variant of this template, '''{{tlx|Collapse/HTML}}''', which supports the same parameters but utilizes {{tag|table|o}} tags in lieu of wiki markup for the table layout.
=== The <code>bg</code> parameter ===
The <code>bg</code> parameter is optional. It changes the background color. Use [[Web color]] values (e.g. <code>#F0F2F5</code>).
;Example:
<code>{<nowiki />{Collapse|1=<var>Discussion text to be put into box.</var>|bg=#F0F2F5}<nowiki />}</code> creates:
{{Collapse|1=Discussion text to be put into box.|bg=#F0F2F5}}
=== The <code>padding</code> parameter ===
The <code>padding</code> parameter adjusts the amount of cell padding (defaults to <code>8px</code>):
<code>{<nowiki />{Collapse|1=<var>Discussion text to be put into box.</var>|padding=20px}<nowiki />}</code> creates the following (expand the box to see the border padding effect):
{{Collapse|1=Discussion text to be put into box.|padding=20px}}
=== The <code>float</code> parameter ===
The <code>float</code> parameter allows the collapsed content to float to the left, right, or center of the page (defaults to <code>none</code> with <code>width = 100%</code>):
<code><nowiki>{{</nowiki>Collapse|1=<var>Discussion text to be put into box.</var>|float=center<nowiki>}}</nowiki></code> creates the following:
{{Collapse|1=Discussion text to be put into box.|float=center}}
<code><nowiki>{{</nowiki>Collapse|1=<var>Discussion text to be put into box.</var>|float=center|width=30em<nowiki>}}</nowiki></code> creates the following:
{{Collapse|1=Discussion text to be put into box.|float=center|width=30em}}
<code><nowiki>{{</nowiki>Collapse|1=<var>Discussion text to be put into box.</var>|float=left|width=30em<nowiki>}}</nowiki></code> creates the following:
{{Collapse|1=Discussion text to be put into box.|float=left|width=30em}}
{{clear}}
<code><nowiki>{{</nowiki>Collapse|1=<var>Discussion text to be put into box.</var>|float=right|width=30em<nowiki>}}</nowiki></code> creates the following:
{{Collapse|1=Discussion text to be put into box.|float=right|width=30em}}
{{clear}}
<code><nowiki>{{</nowiki>Collapse|1=<var>Discussion text to be put into box.</var>|float=none|width=30em<nowiki>}}</nowiki></code> creates the following:
{{Collapse|1=Discussion text to be put into box.|float=none|width=30em}}
=== Around header text ===
When used with a section of text, include the section header in the collapsed portion of text. For example, given:
{| style="background-color: lavender;color:inherit;"
| Example text|== [[Help:Section|Heading]] ==<br />{{Lorem ipsum}}
|}
Replace with:
{{mono|{{Tlsp|Collapse|1={{Lorem ipsum}}|2=[[Help:Section|Heading]]}}}}
===The <code>expand</code> parameter===
Simply add {{para|expand|yes}} to have the box show up in expanded form with a "hide" link, instead of collapsed form with a "show" link. Other options: {{para|expand|}} <code>yes, y, expand, expanded, uncollapse, uncollapsed</code>. Note: {{para|expand|no}} will fold the box (default).
===The <code>clear</code> parameter===
In some situations you may not want the default <code>clear: both;</code> CSS to apply, which puts the collapse box below any left- or right-floated content within the same HTML block. In this case, you can use {{para|clear|none}}, {{para|clear|right}}, or {{para|clear|left}}, as needed.
===When content includes tables===
This template frequently breaks when used around content that consists of or includes [[Help:Table|wikitables]]. Such content can be made collapsible by using the {{tlx|collapse top}} and {{tlx|collapse bottom}} templates instead of {{tlx|collapse}}.
If you want to collapse only the table and not other content, you can do this using wikitable parameters. See the [[Help:Collapsing#Collapsing tables by default|Collapsing tables]] guide for help.
==Limitations==
{{transcluded section|source=Help:Collapsing#Limitations}}
{{#section-h:Help:Collapsing|Limitations}}
==TemplateData==
{{TemplateData header}}
<templatedata>
{
"description": "Creates a collapsible box that allows its content to be hidden or revealed on user's command. It is used to reduce clutter.",
"params": {
"1": {
"label": "Contents",
"description": "Contents of the box",
"type": "content",
"required": true,
"aliases": [
"content",
"text"
]
},
"2": {
"label": "Title",
"description": "Text of title bar. Defaults to \"Extended contents\".",
"type": "string",
"suggested": true,
"aliases": [
"title",
"heading",
"header",
"reason",
"result"
],
"default": "Extended content"
},
"expand": {
"label": "Expanded by default?",
"description": "Setting to \"yes\" (or \"y\", \"expand\", \"expanded\", \"uncollapse\", or \"uncollapsed\") will cause the box to show its contents by default. Any other value (and omitting this parameter) causes the box to be expanded by default. If not set or set to another value (e.g. \"no\") the box will be collapsed by default (its contents hidden).",
"type": "string",
"default": "no"
},
"border": {
"label": "Border width",
"description": "Width of the outermost border. Accepts a number (e.g. 2) followed immediately with a CSS-compatible unit of measurement. (e.g. \"px\") Example: 2px.",
"type": "string",
"default": "1px"
},
"bg": {
"label": "Title bar's color",
"description": "Color of the title bar. Can be set any valid CSS color value but please take care that text would remain black.",
"type": "string",
"aliases": [
"background"
],
"default": "#F0F2F5"
},
"padding": {
"label": "Padding",
"description": "Width of the padding, the empty space between border and the contents. Accepts a number (e.g. 2) followed immediately with a CSS-compatible unit of measurement. (e.g. \"px\") Example: 2px.",
"default": "8px"
},
"bg1": {
"label": "Outer background",
"description": "Color of the space between the inner and outer border. Can be set to any valid CSS color.",
"type": "string",
"default": "transparent"
},
"b-color": {
"label": "Outer border color",
"description": "Color of the outer border. Can be any valid CSS color.",
"type": "string",
"default": "silver"
},
"width": {
"label": "Collapse box width",
"description": "The width of the entire collapsed box.",
"type": "string",
"default": "100%"
},
"center": {
"label": "Center-align title",
"description": "If set to any value, the title will be centered.",
"type": "boolean"
},
"fc": {
"label": "Font color",
"description": "Font color for the title. Also sets the color of the [show]/[hide] link. Can be any valid CSS color",
"type": "string"
},
"class": {
"label": "CSS class",
"description": "Additional CSS class to add",
"type": "string"
},
"float": {
"label": "CSS float",
"description": "CSS float, one of \"left\", \"right\", \"none\", \"center\"/\"centre\", or blank.",
"type": "string"
},
"clear": {
"label": "CSS clear",
"description": "CSS clear value. The default depends on the selected float. Usually one of \"none\", \"left\", \"right\", or \"both\"",
"type": "string"
},
"left": {
"label": "Left-align title",
"description": "Left-aligns the title. Takes precedence over center.",
"type": "boolean"
},
"border2": {
"label": "Content border",
"description": "CSS border styling to add to the content.",
"type": "string",
"default": "1px silver"
},
"bg2": {
"label": "Content background color",
"description": "Background color to use for expanded content.",
"type": "string",
"default": "white"
},
"fc2": {
"label": "Font color for inside box",
"description": "The color of the font inside the collapsed box. Can be any valid CSS color.",
"example": "inherit",
"type": "string"
}
}
}
</templatedata>
== Re-using at other wikis ==
This template depends upon using the three classes <code>mw-collapsible</code>, <code>mw-uncollapsed</code> and <code>mw-collapsed</code>, which are part of MediaWiki versions ≥ 1.18. For wikis using these version of MediaWiki, this template can simply be exported and then imported into another MediaWiki installation. This template transcludes {{tl|main other}} and {{tl|lorem ipsum}}, which should also be imported at the same time. Some changes to the source code will need to be made in order for this template to become usable on the Main/Article (ns:0) [[mw:Help:Namespaces|namespace]].
The toggle text can be edited at external Wiki's [[MediaWiki:Collapsible-expand]] and [[MediaWiki:Collapsible-collapse]] pages. Further information at [[mw:ResourceLoader/Modules#jquery.makeCollapsible|jquery.makeCollapsible module]].
== See also ==
* {{tl|Collapse top}} and {{tl|Collapse bottom}}
* {{tl|discussion top}}
* {{tl|hidden}}
{{templates for archiving|state=expanded}}
<includeonly>{{sandbox other||
<!-- Categories below this line; interwikis at Wikidata -->
[[Category:Wikipedia archived wrapper templates]]
[[Category:Collapse templates]]
}}</includeonly>
7e4k221cbptwo8xagngjx3uoz926l35
370330
370329
2026-09-28T05:28:34Z
ChiK
1136
1 revision imported from [[:en:Template:Collapse/doc]]
370329
wikitext
text/x-wiki
{{Documentation subpage}}
<!-- Add categories where indicated at the bottom of this page and interwikis at Wikidata -->
{{High-use}}
{{Collapsible templates}}
The {{tlx|collapse|<nowiki>folding text</nowiki>}} template is used for placing collapse boxes around ''short'' discussions and bits of discussions. To fold ''long'' discussion threads, use {{tlx|Collapse top}}<code>... lots of text ...</code>{{tlx|Collapse bottom}}. There are cases where these templates will not work. See [[Help:Collapsing]] for other options.
This template should only be used in accordance with the [[Wikipedia:refactoring talk pages]] guideline; it should never be used to end a discussion over the objections of other editors, except in cases of unambiguous disruptive editing.
Do not hide content in articles. This violates the [[WP:Manual of Style#Scrolling lists and collapsible content]] and [[WP:Accessibility]] guidelines.
== Usage ==
{{Tlx|Collapse|1=<var>Discussion text to be put into box.</var>|2=<var>Optional custom heading</var>}}
It is definitely safest to use the named {{para|1}} and {{para|2}} parameters, because otherwise any "=" character will break the template.
For compatibility with various discussion-boxing and -closing, and discussion-wrapping templates, {{para|1}} can also be given as {{para|content}} or {{para|text}}, and {{para|2}} can also be given as {{para|title}}, {{para|reason}}, {{para|header}}, {{para|heading}}, or {{para|result}}.
This works with collapsed bulleted list (the first bullet will look correct):<br>
{{Tlx|Collapse|title=|Bulleted list}}
Start bulleted list on a new line.
=== HTML version ===
If you find that the template does not function properly in a particular circumstance, this is most likely because the wikitext table markup (<code><nowiki>{|</nowiki></code>, etc.) only works when it is at the beginning of a new line.
A workaround for this is to use the "pure HTML" variant of this template, '''{{tlx|Collapse/HTML}}''', which supports the same parameters but utilizes {{tag|table|o}} tags in lieu of wiki markup for the table layout.
=== The <code>bg</code> parameter ===
The <code>bg</code> parameter is optional. It changes the background color. Use [[Web color]] values (e.g. <code>#F0F2F5</code>).
;Example:
<code>{<nowiki />{Collapse|1=<var>Discussion text to be put into box.</var>|bg=#F0F2F5}<nowiki />}</code> creates:
{{Collapse|1=Discussion text to be put into box.|bg=#F0F2F5}}
=== The <code>padding</code> parameter ===
The <code>padding</code> parameter adjusts the amount of cell padding (defaults to <code>8px</code>):
<code>{<nowiki />{Collapse|1=<var>Discussion text to be put into box.</var>|padding=20px}<nowiki />}</code> creates the following (expand the box to see the border padding effect):
{{Collapse|1=Discussion text to be put into box.|padding=20px}}
=== The <code>float</code> parameter ===
The <code>float</code> parameter allows the collapsed content to float to the left, right, or center of the page (defaults to <code>none</code> with <code>width = 100%</code>):
<code><nowiki>{{</nowiki>Collapse|1=<var>Discussion text to be put into box.</var>|float=center<nowiki>}}</nowiki></code> creates the following:
{{Collapse|1=Discussion text to be put into box.|float=center}}
<code><nowiki>{{</nowiki>Collapse|1=<var>Discussion text to be put into box.</var>|float=center|width=30em<nowiki>}}</nowiki></code> creates the following:
{{Collapse|1=Discussion text to be put into box.|float=center|width=30em}}
<code><nowiki>{{</nowiki>Collapse|1=<var>Discussion text to be put into box.</var>|float=left|width=30em<nowiki>}}</nowiki></code> creates the following:
{{Collapse|1=Discussion text to be put into box.|float=left|width=30em}}
{{clear}}
<code><nowiki>{{</nowiki>Collapse|1=<var>Discussion text to be put into box.</var>|float=right|width=30em<nowiki>}}</nowiki></code> creates the following:
{{Collapse|1=Discussion text to be put into box.|float=right|width=30em}}
{{clear}}
<code><nowiki>{{</nowiki>Collapse|1=<var>Discussion text to be put into box.</var>|float=none|width=30em<nowiki>}}</nowiki></code> creates the following:
{{Collapse|1=Discussion text to be put into box.|float=none|width=30em}}
=== Around header text ===
When used with a section of text, include the section header in the collapsed portion of text. For example, given:
{| style="background-color: lavender;color:inherit;"
| Example text|== [[Help:Section|Heading]] ==<br />{{Lorem ipsum}}
|}
Replace with:
{{mono|{{Tlsp|Collapse|1={{Lorem ipsum}}|2=[[Help:Section|Heading]]}}}}
===The <code>expand</code> parameter===
Simply add {{para|expand|yes}} to have the box show up in expanded form with a "hide" link, instead of collapsed form with a "show" link. Other options: {{para|expand|}} <code>yes, y, expand, expanded, uncollapse, uncollapsed</code>. Note: {{para|expand|no}} will fold the box (default).
===The <code>clear</code> parameter===
In some situations you may not want the default <code>clear: both;</code> CSS to apply, which puts the collapse box below any left- or right-floated content within the same HTML block. In this case, you can use {{para|clear|none}}, {{para|clear|right}}, or {{para|clear|left}}, as needed.
===When content includes tables===
This template frequently breaks when used around content that consists of or includes [[Help:Table|wikitables]]. Such content can be made collapsible by using the {{tlx|collapse top}} and {{tlx|collapse bottom}} templates instead of {{tlx|collapse}}.
If you want to collapse only the table and not other content, you can do this using wikitable parameters. See the [[Help:Collapsing#Collapsing tables by default|Collapsing tables]] guide for help.
==Limitations==
{{transcluded section|source=Help:Collapsing#Limitations}}
{{#section-h:Help:Collapsing|Limitations}}
==TemplateData==
{{TemplateData header}}
<templatedata>
{
"description": "Creates a collapsible box that allows its content to be hidden or revealed on user's command. It is used to reduce clutter.",
"params": {
"1": {
"label": "Contents",
"description": "Contents of the box",
"type": "content",
"required": true,
"aliases": [
"content",
"text"
]
},
"2": {
"label": "Title",
"description": "Text of title bar. Defaults to \"Extended contents\".",
"type": "string",
"suggested": true,
"aliases": [
"title",
"heading",
"header",
"reason",
"result"
],
"default": "Extended content"
},
"expand": {
"label": "Expanded by default?",
"description": "Setting to \"yes\" (or \"y\", \"expand\", \"expanded\", \"uncollapse\", or \"uncollapsed\") will cause the box to show its contents by default. Any other value (and omitting this parameter) causes the box to be expanded by default. If not set or set to another value (e.g. \"no\") the box will be collapsed by default (its contents hidden).",
"type": "string",
"default": "no"
},
"border": {
"label": "Border width",
"description": "Width of the outermost border. Accepts a number (e.g. 2) followed immediately with a CSS-compatible unit of measurement. (e.g. \"px\") Example: 2px.",
"type": "string",
"default": "1px"
},
"bg": {
"label": "Title bar's color",
"description": "Color of the title bar. Can be set any valid CSS color value but please take care that text would remain black.",
"type": "string",
"aliases": [
"background"
],
"default": "#F0F2F5"
},
"padding": {
"label": "Padding",
"description": "Width of the padding, the empty space between border and the contents. Accepts a number (e.g. 2) followed immediately with a CSS-compatible unit of measurement. (e.g. \"px\") Example: 2px.",
"default": "8px"
},
"bg1": {
"label": "Outer background",
"description": "Color of the space between the inner and outer border. Can be set to any valid CSS color.",
"type": "string",
"default": "transparent"
},
"b-color": {
"label": "Outer border color",
"description": "Color of the outer border. Can be any valid CSS color.",
"type": "string",
"default": "silver"
},
"width": {
"label": "Collapse box width",
"description": "The width of the entire collapsed box.",
"type": "string",
"default": "100%"
},
"center": {
"label": "Center-align title",
"description": "If set to any value, the title will be centered.",
"type": "boolean"
},
"fc": {
"label": "Font color",
"description": "Font color for the title. Also sets the color of the [show]/[hide] link. Can be any valid CSS color",
"type": "string"
},
"class": {
"label": "CSS class",
"description": "Additional CSS class to add",
"type": "string"
},
"float": {
"label": "CSS float",
"description": "CSS float, one of \"left\", \"right\", \"none\", \"center\"/\"centre\", or blank.",
"type": "string"
},
"clear": {
"label": "CSS clear",
"description": "CSS clear value. The default depends on the selected float. Usually one of \"none\", \"left\", \"right\", or \"both\"",
"type": "string"
},
"left": {
"label": "Left-align title",
"description": "Left-aligns the title. Takes precedence over center.",
"type": "boolean"
},
"border2": {
"label": "Content border",
"description": "CSS border styling to add to the content.",
"type": "string",
"default": "1px silver"
},
"bg2": {
"label": "Content background color",
"description": "Background color to use for expanded content.",
"type": "string",
"default": "white"
},
"fc2": {
"label": "Font color for inside box",
"description": "The color of the font inside the collapsed box. Can be any valid CSS color.",
"example": "inherit",
"type": "string"
}
}
}
</templatedata>
== Re-using at other wikis ==
This template depends upon using the three classes <code>mw-collapsible</code>, <code>mw-uncollapsed</code> and <code>mw-collapsed</code>, which are part of MediaWiki versions ≥ 1.18. For wikis using these version of MediaWiki, this template can simply be exported and then imported into another MediaWiki installation. This template transcludes {{tl|main other}} and {{tl|lorem ipsum}}, which should also be imported at the same time. Some changes to the source code will need to be made in order for this template to become usable on the Main/Article (ns:0) [[mw:Help:Namespaces|namespace]].
The toggle text can be edited at external Wiki's [[MediaWiki:Collapsible-expand]] and [[MediaWiki:Collapsible-collapse]] pages. Further information at [[mw:ResourceLoader/Modules#jquery.makeCollapsible|jquery.makeCollapsible module]].
== See also ==
* {{tl|Collapse top}} and {{tl|Collapse bottom}}
* {{tl|discussion top}}
* {{tl|hidden}}
{{templates for archiving|state=expanded}}
<includeonly>{{sandbox other||
<!-- Categories below this line; interwikis at Wikidata -->
[[Category:Wikipedia archived wrapper templates]]
[[Category:Collapse templates]]
}}</includeonly>
7e4k221cbptwo8xagngjx3uoz926l35
ಟೆಂಪ್ಲೇಟ್:Infobox Lua
10
21287
370432
251218
2026-06-03T15:31:02Z
en>Awesome Aasim
0
370432
wikitext
text/x-wiki
{{Infobox
| bodyclass = infobox-lua
| bodystyle = {{#ifeq: {{{styled|}}} | yes | border: 2px ridge #CAE1FF; width: 30em; padding-bottom: 0px; | <!-- nothing --> }} {{{bodystyle|}}}
| title = {{{title|{{PAGENAME}}}}}
| above = {{#ifeq: {{{styled|}}} | yes | {{{name|{{SUBPAGENAME}}}}} | <!-- nothing --> }}
| titlestyle = {{#ifeq: {{{styled|}}} | yes | font-size: 0.95em; padding: 0px; margin: 0px | <!-- nothing --> }}
| abovestyle = {{#ifeq: {{{styled|}}} | yes | background:#83C5DA; padding: 3px 0px | <!-- nothing --> }}
| labelstyle = {{#ifeq: {{{styled|}}} | yes | background:#DFEFFF; padding: 0px 7px; vertical-align: middle | <!-- nothing --> }}
| datastyle = {{#ifeq: {{{styled|}}} | yes | padding: 5px 5px; | <!-- nothing --> }}
| image = {{{image|}}}
| caption = {{{caption|}}}
| label1 = Description
| data1 = {{{description|}}}
| label2 = Author(s)
| data2 = {{{author|}}}
| label3 = Code source
| data3 = {{#if:{{{code|}}}|{{#ifeq:{{{code|}}}|{{{title|{{PAGENAME}}}}}||[[Module:{{{code|}}}]]}}}}
| label4 = Status
| data4 = {{#switch: {{lc:{{{status|}}}}}
| pre-alpha | prealpha | pa | experimental = <div style="background-color:orangered;color:white;text-align:center;padding:3px;">Experimental</div>
| alpha | a = <div style="background-color:orange;color:white;text-align:center;padding:3px;">Alpha</div>
| beta | b = <div style="background-color:yellow;color:black;text-align:center;padding:3px;">Beta</div>
| release | r | general | g | stable = <div style="background-color:green;color:white;text-align:center;padding:3px;">Release</div>
| broken | br | unstable = <div style="background-color:red;color:white;text-align:center;padding:3px;">Broken</div>
| deprecated | d | defunct = <div style="background-color:darkred;color:white;text-align:center;padding:3px;">Deprecated</div>
| #default = <div style="background-color:gray;color:white;text-align:center;padding:3px;">Unknown</div>
}}
| label5 = Testcase Status
| data5 = {{#ifexist:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}/testcases|{{#switch:{{#invoke:{{{source|{{{title|{{PAGENAME}}}}}}}}/testcases|run|displayMode=enum}}
| fail = <div style="background-color:red;color:white;text-align:center;padding:3px;">[[{{TALKPAGENAME:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}/testcases}}|<span style="background-color:red;color:white;text-align:center;">Errors</span>]]</div>
| skipped = <div style="background-color:gray;color:black;text-align:center;padding:3px;">[[{{TALKPAGENAME:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}/testcases}}|<span style="background-color:gray;color:black;text-align:center;">Skipped</span>]]</div>
| success = <div style="background-color:green;color:white;text-align:center;padding:3px;">[[{{TALKPAGENAME:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}/testcases}}|<span style="background-color:green;color:white;text-align:center;">Passed</span>]]</div>
| #default = <div style="background-color:gray;color:white;text-align:center;padding:3px;">Unknown</div>
}}}}
| label6 = Version
| data6 = {{{version|}}}
| label7 = Updated
| data7 = {{#time:F j, Y|{{{updated|{{REVISIONTIMESTAMP:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}}}}}}}} ({{time ago|1={{{updated|{{REVISIONTIMESTAMP:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}}}}}}}})
| label8 = Dependencies
| data8 = {{{dependencies|}}}
| label9 = Skins
| data9 = {{{skins|}}}
| label10 = Using code by
| data10 = {{{using code by|}}}
| label11 = License
| data11 = {{{license|}}}
| label12 = Other attribution
| data12 = {{{other attribution|}}}
}}<noinclude>
{{documentation}}
</noinclude>
17w9hv9iwsg0anyttkk7tytxrvovlzt
370433
370432
2026-09-28T08:22:29Z
ChiK
1136
1 revision imported from [[:en:Template:Infobox_Lua]]
370432
wikitext
text/x-wiki
{{Infobox
| bodyclass = infobox-lua
| bodystyle = {{#ifeq: {{{styled|}}} | yes | border: 2px ridge #CAE1FF; width: 30em; padding-bottom: 0px; | <!-- nothing --> }} {{{bodystyle|}}}
| title = {{{title|{{PAGENAME}}}}}
| above = {{#ifeq: {{{styled|}}} | yes | {{{name|{{SUBPAGENAME}}}}} | <!-- nothing --> }}
| titlestyle = {{#ifeq: {{{styled|}}} | yes | font-size: 0.95em; padding: 0px; margin: 0px | <!-- nothing --> }}
| abovestyle = {{#ifeq: {{{styled|}}} | yes | background:#83C5DA; padding: 3px 0px | <!-- nothing --> }}
| labelstyle = {{#ifeq: {{{styled|}}} | yes | background:#DFEFFF; padding: 0px 7px; vertical-align: middle | <!-- nothing --> }}
| datastyle = {{#ifeq: {{{styled|}}} | yes | padding: 5px 5px; | <!-- nothing --> }}
| image = {{{image|}}}
| caption = {{{caption|}}}
| label1 = Description
| data1 = {{{description|}}}
| label2 = Author(s)
| data2 = {{{author|}}}
| label3 = Code source
| data3 = {{#if:{{{code|}}}|{{#ifeq:{{{code|}}}|{{{title|{{PAGENAME}}}}}||[[Module:{{{code|}}}]]}}}}
| label4 = Status
| data4 = {{#switch: {{lc:{{{status|}}}}}
| pre-alpha | prealpha | pa | experimental = <div style="background-color:orangered;color:white;text-align:center;padding:3px;">Experimental</div>
| alpha | a = <div style="background-color:orange;color:white;text-align:center;padding:3px;">Alpha</div>
| beta | b = <div style="background-color:yellow;color:black;text-align:center;padding:3px;">Beta</div>
| release | r | general | g | stable = <div style="background-color:green;color:white;text-align:center;padding:3px;">Release</div>
| broken | br | unstable = <div style="background-color:red;color:white;text-align:center;padding:3px;">Broken</div>
| deprecated | d | defunct = <div style="background-color:darkred;color:white;text-align:center;padding:3px;">Deprecated</div>
| #default = <div style="background-color:gray;color:white;text-align:center;padding:3px;">Unknown</div>
}}
| label5 = Testcase Status
| data5 = {{#ifexist:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}/testcases|{{#switch:{{#invoke:{{{source|{{{title|{{PAGENAME}}}}}}}}/testcases|run|displayMode=enum}}
| fail = <div style="background-color:red;color:white;text-align:center;padding:3px;">[[{{TALKPAGENAME:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}/testcases}}|<span style="background-color:red;color:white;text-align:center;">Errors</span>]]</div>
| skipped = <div style="background-color:gray;color:black;text-align:center;padding:3px;">[[{{TALKPAGENAME:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}/testcases}}|<span style="background-color:gray;color:black;text-align:center;">Skipped</span>]]</div>
| success = <div style="background-color:green;color:white;text-align:center;padding:3px;">[[{{TALKPAGENAME:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}/testcases}}|<span style="background-color:green;color:white;text-align:center;">Passed</span>]]</div>
| #default = <div style="background-color:gray;color:white;text-align:center;padding:3px;">Unknown</div>
}}}}
| label6 = Version
| data6 = {{{version|}}}
| label7 = Updated
| data7 = {{#time:F j, Y|{{{updated|{{REVISIONTIMESTAMP:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}}}}}}}} ({{time ago|1={{{updated|{{REVISIONTIMESTAMP:Module:{{{source|{{{title|{{PAGENAME}}}}}}}}}}}}}}})
| label8 = Dependencies
| data8 = {{{dependencies|}}}
| label9 = Skins
| data9 = {{{skins|}}}
| label10 = Using code by
| data10 = {{{using code by|}}}
| label11 = License
| data11 = {{{license|}}}
| label12 = Other attribution
| data12 = {{{other attribution|}}}
}}<noinclude>
{{documentation}}
</noinclude>
17w9hv9iwsg0anyttkk7tytxrvovlzt
ಟೆಂಪ್ಲೇಟ್:Userbox
10
21516
370366
274557
2022-01-16T06:16:22Z
meta>TheresNoTime
0
120 revisions imported from [[:w:Template:Userbox]]
370366
wikitext
text/x-wiki
<onlyinclude>{{#invoke:userbox|userbox}}</onlyinclude>
{{Documentation}}
<!-- Add categories to the /doc subpage and interwikis in Wikidata, not here! -->
lr8clh9k6t47irbafe7zotmb3wn7t3j
370367
274559
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Template:Userbox]]
274558
wikitext
text/x-wiki
{{#invoke:userbox|userbox}}{{template other|__EXPECTUNUSEDTEMPLATE__}}<noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
</noinclude>
su9u8yu84j5yrqy8e09vwiykthyckb6
ಮೋಡ್ಯೂಲ್:Userbox
828
21517
370368
348188
2025-11-17T02:49:47Z
meta>Codename Noreste
0
Updating with a version from English Wikipedia.
348188
Scribunto
text/plain
-- This module implements {{userbox}}.
local categoryHandler = require('Module:Category handler').main
local p = {}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function checkNum(val, default)
-- Checks whether a value is a number greater than or equal to zero. If so,
-- returns it as a number. If not, returns a default value.
val = tonumber(val)
if val and val >= 0 then
return val
else
return default
end
end
local function addSuffix(num, suffix)
-- Turns a number into a string and adds a suffix.
if num then
return tostring(num) .. suffix
else
return nil
end
end
local function checkNumAndAddSuffix(num, default, suffix)
-- Checks a value with checkNum and adds a suffix.
num = checkNum(num, default)
return addSuffix(num, suffix)
end
local function makeCat(cat, sort)
-- Makes a category link.
if sort then
return mw.ustring.format('[[Category:%s|%s]]', cat, sort)
else
return mw.ustring.format('[[Category:%s]]', cat)
end
end
--------------------------------------------------------------------------------
-- Argument processing
--------------------------------------------------------------------------------
local function makeInvokeFunc(funcName)
return function (frame)
local origArgs = require('Module:Arguments').getArgs(frame)
local args = {}
for k, v in pairs(origArgs) do
args[k] = v
end
return p.main(funcName, args)
end
end
p.userbox = makeInvokeFunc('_userbox')
p['userbox-2'] = makeInvokeFunc('_userbox-2')
p['userbox-r'] = makeInvokeFunc('_userbox-r')
--------------------------------------------------------------------------------
-- Main functions
--------------------------------------------------------------------------------
function p.main(funcName, args)
local userboxData = p[funcName](args)
local userbox = p.render(userboxData)
local cats = p.categories(args)
return userbox .. (cats or '')
end
function p._userbox(args)
-- Does argument processing for {{userbox}}.
local data = {}
-- Get div tag values.
data.float = args.float
local borderWidthNum = checkNum(args['border-width'] or args['border-s'], nil)
data.borderWidth = addSuffix(borderWidthNum, 'px')
data.borderColor = args['border-color'] or args['border-c'] or args[1] or args['id-c']
data.width = borderWidthNum and addSuffix(240 - 2 * borderWidthNum, 'px')
data.bodyClass = args.bodyclass
-- Get table tag values.
data.backgroundColor = args['info-background'] or args[2] or args['info-c']
-- Get info values.
data.info = args.info or args[4] or "<code>{{{info}}}</code>"
data.infoTextAlign = args['info-a']
data.infoFontSize = checkNumAndAddSuffix(args['info-size'] or args['info-s'], nil, 'pt')
data.infoHeight = checkNumAndAddSuffix(args['logo-height'] or args['id-h'], nil, 'px')
data.infoPadding = args['info-padding'] or args['info-p']
data.infoLineHeight = args['info-line-height'] or args['info-lh']
data.infoColor = args['info-color'] or args['info-fc']
data.infoOtherParams = args['info-other-param'] or args['info-op']
data.infoClass = args['info-class']
-- Get id values.
local id = args.logo or args[3] or args.id
data.id = id
data.showId = id and true or false
data.idWidth = checkNumAndAddSuffix(args['logo-width'] or args['id-w'], nil, 'px')
data.idHeight = checkNumAndAddSuffix(args['logo-height'] or args['id-h'], nil, 'px')
data.idBackgroundColor = args['logo-background'] or args[1] or args['id-c']
data.idTextAlign = args['id-a']
data.idFontSize = checkNum(args['logo-size'] or args[5] or args['id-s'], nil)
data.idColor = args['logo-color'] or args['id-fc'] or data.infoColor
data.idPadding = args['logo-padding'] or args['id-p']
data.idLineHeight = args['logo-line-height'] or args['id-lh']
data.idOtherParams = args['logo-other-param'] or args['id-op']
data.idClass = args['id-class']
return data
end
p['_userbox-2'] = function (args)
-- Does argument processing for {{userbox-2}}.
local data = {}
-- Get div tag values.
data.float = args.float
local borderWidthNum = checkNum(args['border-s'] or args[9], nil)
data.borderWidth = addSuffix(borderWidthNum, 'px')
data.borderColor = args['border-c'] or args[6] or args['id1-c'] or args[1]
data.width = borderWidthNum and addSuffix(240 - 2 * borderWidthNum, 'px')
data.bodyClass = args.bodyclass
-- Get table tag values.
data.backgroundColor = args['info-c'] or args[2]
-- Get info values.
data.info = args.info or args[4] or "<code>{{{info}}}</code>"
data.infoTextAlign = args['info-a']
data.infoFontSize = checkNumAndAddSuffix(args['info-s'], nil, 'pt')
data.infoColor = args['info-fc'] or args[8]
data.infoPadding = args['info-p']
data.infoLineHeight = args['info-lh']
data.infoOtherParams = args['info-op']
-- Get id values.
data.showId = true
data.id = args.logo or args[3] or args.id1 or 'id1'
data.idWidth = checkNumAndAddSuffix(args['id1-w'], nil, 'px')
data.idHeight = checkNumAndAddSuffix(args['id-h'], nil, 'px')
data.idBackgroundColor = args['id1-c'] or args[1]
data.idTextAlign = args['id-a']
data.idFontSize = checkNum(args['id1-s'], nil)
data.idLineHeight = args['id1-lh']
data.idColor = args['id1-fc'] or data.infoColor
data.idPadding = args['id1-p']
data.idOtherParams = args['id1-op']
-- Get id2 values.
data.showId2 = true
data.id2 = args.logo or args[5] or args.id2 or 'id2'
data.id2Width = checkNumAndAddSuffix(args['id2-w'], nil, 'px')
data.id2Height = data.idHeight
data.id2BackgroundColor = args['id2-c'] or args[7] or args[1]
data.id2TextAlign = nil -- Always center, but don't set if no content
data.id2FontSize = checkNum(args['id2-s'], nil)
data.id2LineHeight = args['id2-lh']
data.id2Color = args['id2-fc'] or data.infoColor
data.id2Padding = args['id2-p']
data.id2OtherParams = args['id2-op']
return data
end
p['_userbox-r'] = function (args)
-- Does argument processing for {{userbox-r}}.
local data = {}
-- Get div tag values.
data.float = args.float
local borderWidthNum = checkNum(args['border-width'] or args['border-s'], nil)
data.borderWidth = addSuffix(borderWidthNum, 'px')
data.borderColor = args['border-color'] or args['border-c'] or args[1] or args['id-c']
data.width = borderWidthNum and addSuffix(240 - 2 * borderWidthNum, 'px')
data.bodyClass = args.bodyclass
-- Get table tag values.
data.backgroundColor = args['info-background'] or args[2] or args['info-c']
-- Get id values.
data.showId = false -- We only show id2 in userbox-r.
-- Get info values.
data.info = args.info or args[4] or "<code>{{{info}}}</code>"
data.infoTextAlign = args['info-align'] or args['info-a']
data.infoFontSize = checkNumAndAddSuffix(args['info-size'] or args['info-s'], nil, 'pt')
data.infoPadding = args['info-padding'] or args['info-p']
data.infoLineHeight = args['info-line-height'] or args['info-lh']
data.infoColor = args['info-color'] or args['info-fc']
data.infoOtherParams = args['info-other-param'] or args['info-op']
-- Get id2 values.
data.showId2 = true -- userbox-r always shows the ID cell (as id2)
data.id2 = args.logo or args[3] or args.id or 'id'
data.id2Width = checkNumAndAddSuffix(args['logo-width'] or args['id-w'], nil, 'px')
data.id2Height = checkNumAndAddSuffix(args['logo-height'] or args['id-h'], nil, 'px')
data.id2BackgroundColor = args['logo-background'] or args[1] or args['id-c']
data.id2TextAlign = args['id-a']
data.id2FontSize = checkNum(args['logo-size'] or args[5] or args['id-s'], nil)
data.id2Color = args['logo-color'] or args['id-fc'] or data.infoColor
data.id2Padding = args['logo-padding'] or args['id-p']
data.id2LineHeight = args['logo-line-height'] or args['id-lh']
data.id2OtherParams = args['logo-other-param'] or args['id-op']
return data
end
function p.render(data)
-- Renders the userbox html using the content of the data table.
-- Add TemplateStyles
local templateStyles = mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Template:Userbox/styles.css' }
}
-- Render the div tag html.
local root = mw.html.create('div')
root:addClass('wikipediauserbox')
-- Only add CSS properties if they have values
if data.float then root:css('float', data.float) end
if data.borderWidth then
root:css('border-width', data.borderWidth)
end
if data.borderColor then
root:css('border-color', data.borderColor)
-- Set border style if we have a color but potentially no width set
if not data.borderWidth then
root:css('border-width', '1px') -- default border width
end
root:css('border-style', 'solid')
end
if data.width then root:css('width', data.width) end
if data.bodyClass then root:addClass(data.bodyClass) end
-- Render the table tag html.
local tableroot = root:tag('table')
tableroot:attr('role', 'presentation')
-- Only add CSS if values exist
if data.width then tableroot:css('width', data.width) end
if data.backgroundColor then tableroot:css('background', data.backgroundColor):css('color', 'inherit') end
local tablerow = tableroot:tag('tr')
-- Create cells based on what should actually be shown
if data.showId == false then
-- userbox-r: info cell first, then id2 cell (if showId2 is true)
local infoCell = tablerow:tag('td')
infoCell:addClass('userbox-info')
if data.infoTextAlign then infoCell:css('text-align', data.infoTextAlign) end
if data.infoFontSize then infoCell:css('font-size', data.infoFontSize) end
if data.infoPadding then infoCell:css('padding', data.infoPadding) end
if data.infoHeight then infoCell:css('height', data.infoHeight) end
if data.infoLineHeight then infoCell:css('line-height', data.infoLineHeight) end
if data.infoColor then infoCell:css('color', data.infoColor) end
if data.infoOtherParams then infoCell:cssText(data.infoOtherParams) end
if data.infoClass then infoCell:addClass(data.infoClass) end
if data.info then infoCell:wikitext(data.info) end
-- Create id2 cell only if showId2 is true
if data.showId2 then
local id2Cell = tablerow:tag('td')
id2Cell:addClass('userbox-id2')
if data.id2Width then id2Cell:css('width', data.id2Width) end
if data.id2Height then id2Cell:css('height', data.id2Height) end
if data.id2BackgroundColor then id2Cell:css('background', data.id2BackgroundColor) end
if data.id2TextAlign then id2Cell:css('text-align', data.id2TextAlign) end
if data.id2FontSize then id2Cell:css('font-size', data.id2FontSize .. 'pt') end
if data.id2Color then id2Cell:css('color', data.id2Color) else id2Cell:css('color', 'inherit') end
if data.id2Padding then id2Cell:css('padding', data.id2Padding) end
if data.id2LineHeight then id2Cell:css('line-height', data.id2LineHeight) end
if data.id2OtherParams then id2Cell:cssText(data.id2OtherParams) end
if data.id2 then id2Cell:wikitext(data.id2) end
end
else
-- userbox and userbox-2: create id cell only if showId is true
if data.showId then
local idCell = tablerow:tag('td')
idCell:addClass('userbox-id')
if data.idWidth then idCell:css('width', data.idWidth) end
if data.idHeight then idCell:css('height', data.idHeight) end
if data.idBackgroundColor then idCell:css('background', data.idBackgroundColor) end
if data.idTextAlign then idCell:css('text-align', data.idTextAlign) end
if data.idFontSize then idCell:css('font-size', data.idFontSize .. 'pt') end
if data.idColor then idCell:css('color', data.idColor) else idCell:css('color', 'inherit') end
if data.idPadding then idCell:css('padding', data.idPadding) end
if data.idLineHeight then idCell:css('line-height', data.idLineHeight) end
if data.idOtherParams then idCell:cssText(data.idOtherParams) end
if data.idClass then idCell:addClass(data.idClass) end
if data.id then idCell:wikitext(data.id) end
end
-- Always create info cell for userbox and userbox-2
local infoCell = tablerow:tag('td')
infoCell:addClass('userbox-info')
if data.infoTextAlign then infoCell:css('text-align', data.infoTextAlign) end
if data.infoFontSize then infoCell:css('font-size', data.infoFontSize) end
if data.infoPadding then infoCell:css('padding', data.infoPadding) end
if data.infoHeight then infoCell:css('height', data.infoHeight) end
if data.infoLineHeight then infoCell:css('line-height', data.infoLineHeight) end
if data.infoColor then infoCell:css('color', data.infoColor) end
if data.infoOtherParams then infoCell:cssText(data.infoOtherParams) end
if data.infoClass then infoCell:addClass(data.infoClass) end
if data.info then infoCell:wikitext(data.info) end
-- Create id2 cell only for userbox-2 and only if showId2 is true
if data.showId2 then
local id2Cell = tablerow:tag('td')
id2Cell:addClass('userbox-id2')
if data.id2Width then id2Cell:css('width', data.id2Width) end
if data.id2Height then id2Cell:css('height', data.id2Height) end
if data.id2BackgroundColor then id2Cell:css('background', data.id2BackgroundColor) end
if data.id2TextAlign then id2Cell:css('text-align', data.id2TextAlign) end
if data.id2FontSize then id2Cell:css('font-size', data.id2FontSize .. 'pt') end
if data.id2Color then id2Cell:css('color', data.id2Color) else id2Cell:css('color', 'inherit') end
if data.id2Padding then id2Cell:css('padding', data.id2Padding) end
if data.id2LineHeight then id2Cell:css('line-height', data.id2LineHeight) end
if data.id2OtherParams then id2Cell:cssText(data.id2OtherParams) end
if data.id2 then id2Cell:wikitext(data.id2) end
end
end
local title = mw.title.getCurrentTitle()
if (title.namespace == 2) and not title.text:match("/") then
return templateStyles .. tostring(root) -- regular user page
elseif title.namespace == 14 then
return templateStyles .. tostring(root) -- category
elseif title.isTalkPage then
return templateStyles .. tostring(root) -- talk page
end
-- Color contrast checking (simplified for TemplateStyles)
local legible = true
local contrast = require('Module:Color contrast')._ratio
local function has_text(wikitext)
if not wikitext then return false end
wikitext = wikitext:gsub("]]", "|]]")
wikitext = wikitext:gsub("%[%[%s*[Mm][Ee][Dd][Ii][Aa]%s*:[^|]-(|.-)]]", "")
wikitext = wikitext:gsub("%[%[%s*[Ii][Mm][Aa][Gg][Ee]%s*:[^|]-(|.-)]]", "")
wikitext = wikitext:gsub("%[%[%s*[Ff][Ii][Ll][Ee]%s*:[^|]-(|.-)]]", "")
return mw.text.trim(wikitext) ~= ""
end
if data.infoColor and data.backgroundColor and contrast { data.infoColor, data.backgroundColor, error = 0 } < 4.5 then
legible = false
end
-- For bold text >= 14pt, requirement is only 3.
local idContrastThreshold = 4.5
local id2ContrastThreshold = 4.5
if (data.idFontSize or 0) >= 14 then idContrastThreshold = 3 end
if (data.id2FontSize or 0) >= 14 then id2ContrastThreshold = 3 end
if data.showId and data.idColor and data.idBackgroundColor and contrast { data.idColor, data.idBackgroundColor, error = 0 } < idContrastThreshold then
if has_text(data.id or "") then legible = false end
end
if data.showId2 and data.id2Color and data.id2BackgroundColor and contrast { data.id2Color, data.id2BackgroundColor, error = 0 } < id2ContrastThreshold then
if has_text(data.id2 or "") then legible = false end
end
if not legible then
root:wikitext('[[Category:Userboxes with insufficient color contrast]]')
end
return templateStyles .. tostring(root)
end
function p.categories(args, page)
-- Gets categories from [[Module:Category handler]].
-- The page parameter makes the function act as though the module was being called from that page.
-- It is included for testing purposes.
local cats = {}
cats[#cats + 1] = args.usercategory
cats[#cats + 1] = args.usercategory2
cats[#cats + 1] = args.usercategory3
cats[#cats + 1] = args.usercategory4
cats[#cats + 1] = args.usercategory5
-- Get the title object
local title
if page then
title = mw.title.new(page)
else
title = mw.title.getCurrentTitle()
end
-- Build category handler arguments.
local chargs = {}
chargs.page = page
chargs.nocat = args.nocat
chargs.main = '[[Category:Pages with templates in the wrong namespace]]'
if args.notcatsubpages then
chargs.subpage = 'no'
end
-- User namespace.
local user = ''
for i, cat in ipairs(cats) do
user = user .. makeCat(cat)
end
chargs.user = user
return categoryHandler(chargs)
end
return p
310mo9tctsu9310xhk46tk6d7jx8wl9
370369
348189
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Userbox]]
348188
Scribunto
text/plain
-- This module implements {{userbox}}.
local categoryHandler = require('Module:Category handler').main
local p = {}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function checkNum(val, default)
-- Checks whether a value is a number greater than or equal to zero. If so,
-- returns it as a number. If not, returns a default value.
val = tonumber(val)
if val and val >= 0 then
return val
else
return default
end
end
local function addSuffix(num, suffix)
-- Turns a number into a string and adds a suffix.
if num then
return tostring(num) .. suffix
else
return nil
end
end
local function checkNumAndAddSuffix(num, default, suffix)
-- Checks a value with checkNum and adds a suffix.
num = checkNum(num, default)
return addSuffix(num, suffix)
end
local function makeCat(cat, sort)
-- Makes a category link.
if sort then
return mw.ustring.format('[[Category:%s|%s]]', cat, sort)
else
return mw.ustring.format('[[Category:%s]]', cat)
end
end
--------------------------------------------------------------------------------
-- Argument processing
--------------------------------------------------------------------------------
local function makeInvokeFunc(funcName)
return function (frame)
local origArgs = require('Module:Arguments').getArgs(frame)
local args = {}
for k, v in pairs(origArgs) do
args[k] = v
end
return p.main(funcName, args)
end
end
p.userbox = makeInvokeFunc('_userbox')
p['userbox-2'] = makeInvokeFunc('_userbox-2')
p['userbox-r'] = makeInvokeFunc('_userbox-r')
--------------------------------------------------------------------------------
-- Main functions
--------------------------------------------------------------------------------
function p.main(funcName, args)
local userboxData = p[funcName](args)
local userbox = p.render(userboxData)
local cats = p.categories(args)
return userbox .. (cats or '')
end
function p._userbox(args)
-- Does argument processing for {{userbox}}.
local data = {}
-- Get div tag values.
data.float = args.float
local borderWidthNum = checkNum(args['border-width'] or args['border-s'], nil)
data.borderWidth = addSuffix(borderWidthNum, 'px')
data.borderColor = args['border-color'] or args['border-c'] or args[1] or args['id-c']
data.width = borderWidthNum and addSuffix(240 - 2 * borderWidthNum, 'px')
data.bodyClass = args.bodyclass
-- Get table tag values.
data.backgroundColor = args['info-background'] or args[2] or args['info-c']
-- Get info values.
data.info = args.info or args[4] or "<code>{{{info}}}</code>"
data.infoTextAlign = args['info-a']
data.infoFontSize = checkNumAndAddSuffix(args['info-size'] or args['info-s'], nil, 'pt')
data.infoHeight = checkNumAndAddSuffix(args['logo-height'] or args['id-h'], nil, 'px')
data.infoPadding = args['info-padding'] or args['info-p']
data.infoLineHeight = args['info-line-height'] or args['info-lh']
data.infoColor = args['info-color'] or args['info-fc']
data.infoOtherParams = args['info-other-param'] or args['info-op']
data.infoClass = args['info-class']
-- Get id values.
local id = args.logo or args[3] or args.id
data.id = id
data.showId = id and true or false
data.idWidth = checkNumAndAddSuffix(args['logo-width'] or args['id-w'], nil, 'px')
data.idHeight = checkNumAndAddSuffix(args['logo-height'] or args['id-h'], nil, 'px')
data.idBackgroundColor = args['logo-background'] or args[1] or args['id-c']
data.idTextAlign = args['id-a']
data.idFontSize = checkNum(args['logo-size'] or args[5] or args['id-s'], nil)
data.idColor = args['logo-color'] or args['id-fc'] or data.infoColor
data.idPadding = args['logo-padding'] or args['id-p']
data.idLineHeight = args['logo-line-height'] or args['id-lh']
data.idOtherParams = args['logo-other-param'] or args['id-op']
data.idClass = args['id-class']
return data
end
p['_userbox-2'] = function (args)
-- Does argument processing for {{userbox-2}}.
local data = {}
-- Get div tag values.
data.float = args.float
local borderWidthNum = checkNum(args['border-s'] or args[9], nil)
data.borderWidth = addSuffix(borderWidthNum, 'px')
data.borderColor = args['border-c'] or args[6] or args['id1-c'] or args[1]
data.width = borderWidthNum and addSuffix(240 - 2 * borderWidthNum, 'px')
data.bodyClass = args.bodyclass
-- Get table tag values.
data.backgroundColor = args['info-c'] or args[2]
-- Get info values.
data.info = args.info or args[4] or "<code>{{{info}}}</code>"
data.infoTextAlign = args['info-a']
data.infoFontSize = checkNumAndAddSuffix(args['info-s'], nil, 'pt')
data.infoColor = args['info-fc'] or args[8]
data.infoPadding = args['info-p']
data.infoLineHeight = args['info-lh']
data.infoOtherParams = args['info-op']
-- Get id values.
data.showId = true
data.id = args.logo or args[3] or args.id1 or 'id1'
data.idWidth = checkNumAndAddSuffix(args['id1-w'], nil, 'px')
data.idHeight = checkNumAndAddSuffix(args['id-h'], nil, 'px')
data.idBackgroundColor = args['id1-c'] or args[1]
data.idTextAlign = args['id-a']
data.idFontSize = checkNum(args['id1-s'], nil)
data.idLineHeight = args['id1-lh']
data.idColor = args['id1-fc'] or data.infoColor
data.idPadding = args['id1-p']
data.idOtherParams = args['id1-op']
-- Get id2 values.
data.showId2 = true
data.id2 = args.logo or args[5] or args.id2 or 'id2'
data.id2Width = checkNumAndAddSuffix(args['id2-w'], nil, 'px')
data.id2Height = data.idHeight
data.id2BackgroundColor = args['id2-c'] or args[7] or args[1]
data.id2TextAlign = nil -- Always center, but don't set if no content
data.id2FontSize = checkNum(args['id2-s'], nil)
data.id2LineHeight = args['id2-lh']
data.id2Color = args['id2-fc'] or data.infoColor
data.id2Padding = args['id2-p']
data.id2OtherParams = args['id2-op']
return data
end
p['_userbox-r'] = function (args)
-- Does argument processing for {{userbox-r}}.
local data = {}
-- Get div tag values.
data.float = args.float
local borderWidthNum = checkNum(args['border-width'] or args['border-s'], nil)
data.borderWidth = addSuffix(borderWidthNum, 'px')
data.borderColor = args['border-color'] or args['border-c'] or args[1] or args['id-c']
data.width = borderWidthNum and addSuffix(240 - 2 * borderWidthNum, 'px')
data.bodyClass = args.bodyclass
-- Get table tag values.
data.backgroundColor = args['info-background'] or args[2] or args['info-c']
-- Get id values.
data.showId = false -- We only show id2 in userbox-r.
-- Get info values.
data.info = args.info or args[4] or "<code>{{{info}}}</code>"
data.infoTextAlign = args['info-align'] or args['info-a']
data.infoFontSize = checkNumAndAddSuffix(args['info-size'] or args['info-s'], nil, 'pt')
data.infoPadding = args['info-padding'] or args['info-p']
data.infoLineHeight = args['info-line-height'] or args['info-lh']
data.infoColor = args['info-color'] or args['info-fc']
data.infoOtherParams = args['info-other-param'] or args['info-op']
-- Get id2 values.
data.showId2 = true -- userbox-r always shows the ID cell (as id2)
data.id2 = args.logo or args[3] or args.id or 'id'
data.id2Width = checkNumAndAddSuffix(args['logo-width'] or args['id-w'], nil, 'px')
data.id2Height = checkNumAndAddSuffix(args['logo-height'] or args['id-h'], nil, 'px')
data.id2BackgroundColor = args['logo-background'] or args[1] or args['id-c']
data.id2TextAlign = args['id-a']
data.id2FontSize = checkNum(args['logo-size'] or args[5] or args['id-s'], nil)
data.id2Color = args['logo-color'] or args['id-fc'] or data.infoColor
data.id2Padding = args['logo-padding'] or args['id-p']
data.id2LineHeight = args['logo-line-height'] or args['id-lh']
data.id2OtherParams = args['logo-other-param'] or args['id-op']
return data
end
function p.render(data)
-- Renders the userbox html using the content of the data table.
-- Add TemplateStyles
local templateStyles = mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Template:Userbox/styles.css' }
}
-- Render the div tag html.
local root = mw.html.create('div')
root:addClass('wikipediauserbox')
-- Only add CSS properties if they have values
if data.float then root:css('float', data.float) end
if data.borderWidth then
root:css('border-width', data.borderWidth)
end
if data.borderColor then
root:css('border-color', data.borderColor)
-- Set border style if we have a color but potentially no width set
if not data.borderWidth then
root:css('border-width', '1px') -- default border width
end
root:css('border-style', 'solid')
end
if data.width then root:css('width', data.width) end
if data.bodyClass then root:addClass(data.bodyClass) end
-- Render the table tag html.
local tableroot = root:tag('table')
tableroot:attr('role', 'presentation')
-- Only add CSS if values exist
if data.width then tableroot:css('width', data.width) end
if data.backgroundColor then tableroot:css('background', data.backgroundColor):css('color', 'inherit') end
local tablerow = tableroot:tag('tr')
-- Create cells based on what should actually be shown
if data.showId == false then
-- userbox-r: info cell first, then id2 cell (if showId2 is true)
local infoCell = tablerow:tag('td')
infoCell:addClass('userbox-info')
if data.infoTextAlign then infoCell:css('text-align', data.infoTextAlign) end
if data.infoFontSize then infoCell:css('font-size', data.infoFontSize) end
if data.infoPadding then infoCell:css('padding', data.infoPadding) end
if data.infoHeight then infoCell:css('height', data.infoHeight) end
if data.infoLineHeight then infoCell:css('line-height', data.infoLineHeight) end
if data.infoColor then infoCell:css('color', data.infoColor) end
if data.infoOtherParams then infoCell:cssText(data.infoOtherParams) end
if data.infoClass then infoCell:addClass(data.infoClass) end
if data.info then infoCell:wikitext(data.info) end
-- Create id2 cell only if showId2 is true
if data.showId2 then
local id2Cell = tablerow:tag('td')
id2Cell:addClass('userbox-id2')
if data.id2Width then id2Cell:css('width', data.id2Width) end
if data.id2Height then id2Cell:css('height', data.id2Height) end
if data.id2BackgroundColor then id2Cell:css('background', data.id2BackgroundColor) end
if data.id2TextAlign then id2Cell:css('text-align', data.id2TextAlign) end
if data.id2FontSize then id2Cell:css('font-size', data.id2FontSize .. 'pt') end
if data.id2Color then id2Cell:css('color', data.id2Color) else id2Cell:css('color', 'inherit') end
if data.id2Padding then id2Cell:css('padding', data.id2Padding) end
if data.id2LineHeight then id2Cell:css('line-height', data.id2LineHeight) end
if data.id2OtherParams then id2Cell:cssText(data.id2OtherParams) end
if data.id2 then id2Cell:wikitext(data.id2) end
end
else
-- userbox and userbox-2: create id cell only if showId is true
if data.showId then
local idCell = tablerow:tag('td')
idCell:addClass('userbox-id')
if data.idWidth then idCell:css('width', data.idWidth) end
if data.idHeight then idCell:css('height', data.idHeight) end
if data.idBackgroundColor then idCell:css('background', data.idBackgroundColor) end
if data.idTextAlign then idCell:css('text-align', data.idTextAlign) end
if data.idFontSize then idCell:css('font-size', data.idFontSize .. 'pt') end
if data.idColor then idCell:css('color', data.idColor) else idCell:css('color', 'inherit') end
if data.idPadding then idCell:css('padding', data.idPadding) end
if data.idLineHeight then idCell:css('line-height', data.idLineHeight) end
if data.idOtherParams then idCell:cssText(data.idOtherParams) end
if data.idClass then idCell:addClass(data.idClass) end
if data.id then idCell:wikitext(data.id) end
end
-- Always create info cell for userbox and userbox-2
local infoCell = tablerow:tag('td')
infoCell:addClass('userbox-info')
if data.infoTextAlign then infoCell:css('text-align', data.infoTextAlign) end
if data.infoFontSize then infoCell:css('font-size', data.infoFontSize) end
if data.infoPadding then infoCell:css('padding', data.infoPadding) end
if data.infoHeight then infoCell:css('height', data.infoHeight) end
if data.infoLineHeight then infoCell:css('line-height', data.infoLineHeight) end
if data.infoColor then infoCell:css('color', data.infoColor) end
if data.infoOtherParams then infoCell:cssText(data.infoOtherParams) end
if data.infoClass then infoCell:addClass(data.infoClass) end
if data.info then infoCell:wikitext(data.info) end
-- Create id2 cell only for userbox-2 and only if showId2 is true
if data.showId2 then
local id2Cell = tablerow:tag('td')
id2Cell:addClass('userbox-id2')
if data.id2Width then id2Cell:css('width', data.id2Width) end
if data.id2Height then id2Cell:css('height', data.id2Height) end
if data.id2BackgroundColor then id2Cell:css('background', data.id2BackgroundColor) end
if data.id2TextAlign then id2Cell:css('text-align', data.id2TextAlign) end
if data.id2FontSize then id2Cell:css('font-size', data.id2FontSize .. 'pt') end
if data.id2Color then id2Cell:css('color', data.id2Color) else id2Cell:css('color', 'inherit') end
if data.id2Padding then id2Cell:css('padding', data.id2Padding) end
if data.id2LineHeight then id2Cell:css('line-height', data.id2LineHeight) end
if data.id2OtherParams then id2Cell:cssText(data.id2OtherParams) end
if data.id2 then id2Cell:wikitext(data.id2) end
end
end
local title = mw.title.getCurrentTitle()
if (title.namespace == 2) and not title.text:match("/") then
return templateStyles .. tostring(root) -- regular user page
elseif title.namespace == 14 then
return templateStyles .. tostring(root) -- category
elseif title.isTalkPage then
return templateStyles .. tostring(root) -- talk page
end
-- Color contrast checking (simplified for TemplateStyles)
local legible = true
local contrast = require('Module:Color contrast')._ratio
local function has_text(wikitext)
if not wikitext then return false end
wikitext = wikitext:gsub("]]", "|]]")
wikitext = wikitext:gsub("%[%[%s*[Mm][Ee][Dd][Ii][Aa]%s*:[^|]-(|.-)]]", "")
wikitext = wikitext:gsub("%[%[%s*[Ii][Mm][Aa][Gg][Ee]%s*:[^|]-(|.-)]]", "")
wikitext = wikitext:gsub("%[%[%s*[Ff][Ii][Ll][Ee]%s*:[^|]-(|.-)]]", "")
return mw.text.trim(wikitext) ~= ""
end
if data.infoColor and data.backgroundColor and contrast { data.infoColor, data.backgroundColor, error = 0 } < 4.5 then
legible = false
end
-- For bold text >= 14pt, requirement is only 3.
local idContrastThreshold = 4.5
local id2ContrastThreshold = 4.5
if (data.idFontSize or 0) >= 14 then idContrastThreshold = 3 end
if (data.id2FontSize or 0) >= 14 then id2ContrastThreshold = 3 end
if data.showId and data.idColor and data.idBackgroundColor and contrast { data.idColor, data.idBackgroundColor, error = 0 } < idContrastThreshold then
if has_text(data.id or "") then legible = false end
end
if data.showId2 and data.id2Color and data.id2BackgroundColor and contrast { data.id2Color, data.id2BackgroundColor, error = 0 } < id2ContrastThreshold then
if has_text(data.id2 or "") then legible = false end
end
if not legible then
root:wikitext('[[Category:Userboxes with insufficient color contrast]]')
end
return templateStyles .. tostring(root)
end
function p.categories(args, page)
-- Gets categories from [[Module:Category handler]].
-- The page parameter makes the function act as though the module was being called from that page.
-- It is included for testing purposes.
local cats = {}
cats[#cats + 1] = args.usercategory
cats[#cats + 1] = args.usercategory2
cats[#cats + 1] = args.usercategory3
cats[#cats + 1] = args.usercategory4
cats[#cats + 1] = args.usercategory5
-- Get the title object
local title
if page then
title = mw.title.new(page)
else
title = mw.title.getCurrentTitle()
end
-- Build category handler arguments.
local chargs = {}
chargs.page = page
chargs.nocat = args.nocat
chargs.main = '[[Category:Pages with templates in the wrong namespace]]'
if args.notcatsubpages then
chargs.subpage = 'no'
end
-- User namespace.
local user = ''
for i, cat in ipairs(cats) do
user = user .. makeCat(cat)
end
chargs.user = user
return categoryHandler(chargs)
end
return p
310mo9tctsu9310xhk46tk6d7jx8wl9
ಟೆಂಪ್ಲೇಟ್:Userbox/styles.css
10
21528
370410
348216
2025-11-17T02:46:37Z
meta>Codename Noreste
0
Protected "[[Template:Userbox/styles.css]]": High-risk template ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
348216
sanitized-css
text/css
/* {{pp-template}} */
.wikipediauserbox {
margin: 1px;
border: 1px solid var(--border-color-base, #a2a9b1);
width: 238px;
float: left;
}
.wikipediauserbox table {
border-collapse: collapse;
width: 238px;
margin-bottom: 0;
margin-top: 0;
background: #eee;
color: inherit;
}
.wikipediauserbox td {
border: 0;
vertical-align: middle;
}
.wikipediauserbox .userbox-info {
border: 0;
text-align: left;
font-size: 8pt;
padding: 0 4px 0 4px;
height: 45px;
line-height: 1.25em;
color: inherit;
vertical-align: middle;
}
.wikipediauserbox .userbox-id,
.wikipediauserbox .userbox-id2 {
border: 0;
width: 45px;
height: 45px;
background: #ddd;
text-align: center;
font-size: 14pt;
font-weight: bold;
color: inherit;
padding: 0 1px 0 0;
line-height: 1.25em;
vertical-align: middle;
}
/* Dark mode fixes */
@media screen {
html.skin-theme-clientpref-night .wikipediauserbox table {
background: #202122;
color: inherit;
}
html.skin-theme-clientpref-night .wikipediauserbox .userbox-id,
html.skin-theme-clientpref-night .wikipediauserbox .userbox-id2 {
background: #27292d;
color: inherit;
}
/* Defined background, no foreground color (temporary fix) */
html.skin-theme-clientpref-night .wikipediauserbox table[style*="background"] .userbox-info {
color: #202122;
}
}
@media screen and ( prefers-color-scheme: dark ) {
html.skin-theme-clientpref-os .wikipediauserbox table {
background: #202122;
color: inherit;
}
html.skin-theme-clientpref-os .wikipediauserbox .userbox-id,
html.skin-theme-clientpref-os .wikipediauserbox .userbox-id2 {
background: #27292d;
color: inherit;
}
/* Defined background, no foreground color (temporary fix) */
html.skin-theme-clientpref-os .wikipediauserbox table[style*="background"] .userbox-info {
color: #202122;
color: inherit;
}
}
3sx0tsg194sph82mxluzbxc9jy1uqcl
370411
348217
2026-09-28T08:07:30Z
ChiK
1136
1 revision imported from [[:meta:Template:Userbox/styles.css]]
348216
sanitized-css
text/css
/* {{pp-template}} */
.wikipediauserbox {
margin: 1px;
border: 1px solid var(--border-color-base, #a2a9b1);
width: 238px;
float: left;
}
.wikipediauserbox table {
border-collapse: collapse;
width: 238px;
margin-bottom: 0;
margin-top: 0;
background: #eee;
color: inherit;
}
.wikipediauserbox td {
border: 0;
vertical-align: middle;
}
.wikipediauserbox .userbox-info {
border: 0;
text-align: left;
font-size: 8pt;
padding: 0 4px 0 4px;
height: 45px;
line-height: 1.25em;
color: inherit;
vertical-align: middle;
}
.wikipediauserbox .userbox-id,
.wikipediauserbox .userbox-id2 {
border: 0;
width: 45px;
height: 45px;
background: #ddd;
text-align: center;
font-size: 14pt;
font-weight: bold;
color: inherit;
padding: 0 1px 0 0;
line-height: 1.25em;
vertical-align: middle;
}
/* Dark mode fixes */
@media screen {
html.skin-theme-clientpref-night .wikipediauserbox table {
background: #202122;
color: inherit;
}
html.skin-theme-clientpref-night .wikipediauserbox .userbox-id,
html.skin-theme-clientpref-night .wikipediauserbox .userbox-id2 {
background: #27292d;
color: inherit;
}
/* Defined background, no foreground color (temporary fix) */
html.skin-theme-clientpref-night .wikipediauserbox table[style*="background"] .userbox-info {
color: #202122;
}
}
@media screen and ( prefers-color-scheme: dark ) {
html.skin-theme-clientpref-os .wikipediauserbox table {
background: #202122;
color: inherit;
}
html.skin-theme-clientpref-os .wikipediauserbox .userbox-id,
html.skin-theme-clientpref-os .wikipediauserbox .userbox-id2 {
background: #27292d;
color: inherit;
}
/* Defined background, no foreground color (temporary fix) */
html.skin-theme-clientpref-os .wikipediauserbox table[style*="background"] .userbox-info {
color: #202122;
color: inherit;
}
}
3sx0tsg194sph82mxluzbxc9jy1uqcl
ವರ್ಗೊ:ವಿಕಿಪೀಡಿಯ ವಿಸೇಸೊ ಚಿತ್ರೊಲು
14
21952
370333
279891
2026-09-28T05:39:23Z
ChiK
1136
370333
wikitext
text/x-wiki
ಈ ಇಬಾಗೊಡು ವಿಕಿಪೀಡಿಯ ಸಮುದಾಯೊ ಆಯ್ಕೆ ಮಲ್ತಿನಂಚಿನ ವಿಸೇಸೊ ಚಿತ್ರೊಲೆಗ್ ಸಮ್ಮಂದೊದ ಮಾತಾ ಯೋಜನೆದ ಪುಟೊಕುಲು ಉಂಡು.
bxue2zcflqhooj3kr3m567dehpthvi9
ಟೆಂಪ್ಲೇಟ್:Example/doc
10
21993
370420
280109
2026-01-19T17:00:19Z
en>W.andrea
0
+ {{distinguish|Template:Example text}}
370420
wikitext
text/x-wiki
<!-- The next two lines set one short description for the template and another for the /doc page. Replacing them with a single {{short description}} would use that for both pages. -->
<noinclude>{{Short description|Example of a documentation subpage}}</noinclude>
<includeonly>{{Short description|Example of a template}}</includeonly>
{{distinguish|Template:Example needed|Template:Example text}}
{{hatnote|To give an example of how to use a template, use {{tl|demo}}.}}
{{Documentation subpage}}
<!-- Categories go at the bottom of this page and interwikis go in Wikidata. -->
{{Not a sandbox}}
{{Uses TemplateStyles}}
If this were a real template, the documentation would go here, along with a few examples on how to use it. Some templates keep this documentation on a separate page; see [[Wikipedia:Template documentation]] for details.
{{Example needed}}
==TemplateData==
{{TemplateData header}}
<templatedata>
{
"description": "Example template that creates a small box saying it is an example.",
"params": {}
}
</templatedata>
<includeonly>{{Sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Namespace example pages|Template]]
[[Category:Template documentation]]
}}</includeonly>
r14jpzn32iqz710u2rcglr1odnw0oc3
370421
370420
2026-09-28T08:22:28Z
ChiK
1136
1 revision imported from [[:en:Template:Example/doc]]
370420
wikitext
text/x-wiki
<!-- The next two lines set one short description for the template and another for the /doc page. Replacing them with a single {{short description}} would use that for both pages. -->
<noinclude>{{Short description|Example of a documentation subpage}}</noinclude>
<includeonly>{{Short description|Example of a template}}</includeonly>
{{distinguish|Template:Example needed|Template:Example text}}
{{hatnote|To give an example of how to use a template, use {{tl|demo}}.}}
{{Documentation subpage}}
<!-- Categories go at the bottom of this page and interwikis go in Wikidata. -->
{{Not a sandbox}}
{{Uses TemplateStyles}}
If this were a real template, the documentation would go here, along with a few examples on how to use it. Some templates keep this documentation on a separate page; see [[Wikipedia:Template documentation]] for details.
{{Example needed}}
==TemplateData==
{{TemplateData header}}
<templatedata>
{
"description": "Example template that creates a small box saying it is an example.",
"params": {}
}
</templatedata>
<includeonly>{{Sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Namespace example pages|Template]]
[[Category:Template documentation]]
}}</includeonly>
r14jpzn32iqz710u2rcglr1odnw0oc3
ಟೆಂಪ್ಲೇಟ್ ಪಾತೆರ:Documentation
11
23607
370430
348223
2026-08-15T18:17:24Z
en>Lowercase sigmabot III
0
Archiving 1 discussion(s) to [[Template talk:Documentation/Archive 11]]) (bot
370430
wikitext
text/x-wiki
{{talk header}}
{{permprot}}
{{Centralized talk page|text=all talk pages of subtemplates, and Module talk:Documentation, redirect here}}
{{WikiProject banner shell|
{{WikiProject Templates|template_for_template_maintenance=y}}
}}
{{copied|from1=Template:Documentation|from_oldid1=948472454|to1=:incubator:Template:Wp/nod/Documentation|to_diff1=4237152
|from2=Template:Documentation|from_oldid2=948472454|to2=:incubator:Template:Wp/nod/documentation|to_diff2=4237211
|from3=Module:Documentation/config|from_oldid3=729280654|to3=:incubator:Module:Wp/nod/Documentation/config|to_diff3=4237079}}
{{User:MiszaBot/config
| algo = old(90d)
| archive = Template talk:Documentation/Archive %(counter)d
| counter = 11
| maxarchivesize = 150K
| archiveheader = {{Automatic archive navigator}}
| minthreadstoarchive = 1
| minthreadsleft = 4
}}
== Adding [[Template:No documentation]] and attempting Lua auto documentation with [[Template:Lua autodoc]] if the module has no documentation ==
I updated the module sandbox and testcases with two changes, one that adds {{tl|no documentation}} to templates and modules when no documentation is specified in the content field of the template or module, and the other attempts to add Lua auto documentation if the module does not have documentation present.
I did garner feedback at [[Wikipedia:Village_pump_(technical)/Archive_215#Thoughts_on_Docbunto?]] about a year and a half ago but it mostly has been abandoned. The autodoc module is still in beta and is wrapped in <code><nowiki>pcall</nowiki></code> so even if it gets used here it may only need semi or XCON protection for now.
If there are no objections over the coming days I'll open an edit request. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 15:20, 3 June 2026 (UTC)
: Since there have been no objections I will be opening an edit request. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 04:28, 8 June 2026 (UTC)
=== Edit request ===
{{edit protected|ans=y
|Module:Documentation
|Module:Documentation/config
}}
Please implement my changes in the sandboxes, which:
# Adds {{tl|no documentation}} if the content field is empty, which saves work of template editors to add "no documentation" to doc pages
# For modules, uses an autodoc module [[Module:Docbunto]] to attempt to generate documentation. This autodoc module does not need to be protected at the same level as [[Module:Documentation]] since it is called in <code>pcall( ... )</code>, which means that if the auto doc generation fails it will not generate any red text and instead will display nothing. If there is something present on the doc page it will instead override the Lua autodoc with the content on the doc page. [[Module:Docbunto]] could be semi- or extended-confirmed protected if there is concern that leaving the page unprotected in this pcall arrangement would make the module high risk.
# Adds appropriate doc tags for generating auto documentation, which has the added advantage of documenting the various functions in a format that can be used by other Lua programmers.
[[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 04:28, 8 June 2026 (UTC)
:'''Support''' – I missed the original post but this sounds like a great change. [[User:FaviFake|FaviFake]] ([[User talk:FaviFake|talk]]) 10:56, 8 June 2026 (UTC)
:Do you want to add something showcasing the auto documentation at [[Template:Documentation/testcases]]? It seems to not break anything but I would like to actually see the auto documentation in action somewhere before implementing. [[User:Trialpears|Trialpears]] ([[User talk:Trialpears|talk]]) 12:30, 8 June 2026 (UTC)
::It's difficult for me to add testcases here, but I can potentially show you demos on Test Wikipedia: [[testwiki:Module:Docbunto/demo1]], [[testwiki:Module:Docbunto/demo2]], [[testwiki:Module:Docbunto/demo3]]. Things may look more broken than they actually are because testwiki does not seem to want to load messages from Wikimedia Commons. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 14:25, 8 June 2026 (UTC)
::: Personally, I still think it'd be better to encourage people to write documentation on the doc page than to read doc comments from the module to display in the documentation section, [[Special:GoToComment/c-Anomie-20240917235000-Awesome_Aasim-20240917182100|for the same reasons Scribunto doesn't do that already]]. [[User:Anomie|Anomie]][[User talk:Anomie|⚔]] 22:18, 8 June 2026 (UTC)
: I see one major problem with [[Module:Docbunto]] at the moment: it focuses on functions with multiple arguments, which are usually module functions called by other modules. By contrast, the documentation of functions that must be called via <syntaxhighlight lang="wikitext" inline>{{#invoke:...}}</syntaxhighlight> (which often have a single <code>frame</code> Lua argument) is only confusing. For example, among the modules documented only via Docbunto (e.g. [[Module:Multiformat]], [[Module:Format]], [[Module:Escape input]]), I cannot understand the wikitext syntax of even a single function, except for a superficial overview of its parameters. In short, Docbunto could work with Lua libraries (e.g. [[Module:Arguments]]), but it is currently terrible at documenting modules that must be invoked via wikitext. For the latter, any automated solution should take the documentation of [[Module:String]], [[Module:String2]], [[Module:Params]], and others as examples (i.e. one section for each function, titled accordingly, with a brief description, a syntax overview, an explanation, and examples). Consider also that {{Tl|Mfl}} expects functions to have sections named after them. It could also be argued that modules intended to be invoked only via wikitext should hide the documentation of their Lua code from the documentation page; otherwise, they risk confusing people who simply want to use a module and know nothing about Lua (nor do they need to). Comments in the code should be sufficient for that. --[[User:Grufo|Grufo]] ([[User talk:Grufo|talk]]) 22:27, 8 June 2026 (UTC)
::I personally don't know if that is a limitation of Docbunto or just my poor documentation. But from what I see one can type in the function documentation <code><nowiki>@usage {{#invoke:Module|foo}}</nowiki></code> or <code><nowiki>@usage {{Foo}}</nowiki></code> for wikitext usage of a module function. It also is possible to specify keys in a table such as <code><nowiki>@param {string} args.echo Text to echo</nowiki></code> for functions which can be invoked either in a module or a template (that is why [[Module:MakeInvokeFunc]] was spun out into its own module and why its code is all over the place). But it still would help beginners who do not know Lua understand how specific functions operate and how to reference them in other Lua modules, since invoking them in wikitext is very similar to calling a template. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 01:50, 12 June 2026 (UTC)
::: I like to be pragmatic. Imagine a module function that expects this wikitext invocation: <syntaxhighlight lang="wikitext" inline>{{#invoke:foobar|my_func|first param|second param|third param|hello=hello param}}</syntaxhighlight>; how do you document that {{para|1}} should be, let's say, a number? How do you document that {{para|2}} should be a string? How do you document that {{para|3}} should be a boolean (<code>yes</code>/<code>no</code>)? How do you document that {{para|hello}} should be a comma-separated list? And why do you think it is useful for people who are interested in using such a module to know that in its Lua code <code>my_func()</code> requires a single argument named <code>frame</code> (which, by the way, is a constant across modules—except for the argument's name)? --[[User:Grufo|Grufo]] ([[User talk:Grufo|talk]]) 02:55, 12 June 2026 (UTC)
::::I think you can do this:
::::<syntaxhighlight lang="lua">
--- Echos something
--
-- @function p.echo
-- @param {Frame} frame calling frame
-- @param {string} frame.args[1] what to echo
-- @param {number} frame.args["num"] number of times to echo
-- @return {string} output wikitext
</syntaxhighlight> [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 19:37, 14 June 2026 (UTC)
::::: @[[User:Awesome Aasim|Aasim]]: Thank you. Could you please create a dummy module with its Docbunto documentation similar to what I wrote above? You don't actually need to write any Lua code, <syntaxhighlight lang="lua" inline>p.my_func = function (frame) end</syntaxhighlight> will do. --[[User:Grufo|Grufo]] ([[User talk:Grufo|talk]]) 20:29, 14 June 2026 (UTC)
::::::I think you can see [[Module:Example]] as an example of this. Yes there is a weird bug where the [1] is not showing up in brackets but that is why the entire module is enclosed in pcall as a beta module. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 15:50, 15 June 2026 (UTC)
:::::::Okay I fixed that error, it was a bad Lua pattern that was causing that issue. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 16:27, 15 June 2026 (UTC)
:::::::: Thank you. I see. Do you think that it could be changed to become more similar to how, let's say, {{mfl|string|replace}} documents its parameters? Someone who wants to use a module function designed for wikitext does not need to know how Lua works, and seeing <code>frame.args.bananas</code> might look quite obscure, whereas <code>bananas</code> or, even better, {{para|bananas}} would be much clearer. --[[User:Grufo|Grufo]] ([[User talk:Grufo|talk]]) 18:53, 15 June 2026 (UTC)
== Error in preload ==
When I click [create] for the testcases pages on [[Module:Women in Red event/sandbox]], I see the following boilerplate:
<pre>-- Unit tests for [[Module:{{ROOTPAGENAME}}]]. Click talk page to run tests.
local p = require('Module:UnitTests')
-- Example unit test.
function p:test_hello()
self:preprocess_equals('{{#invoke:Example | hello}}', 'Hello, world!')
end
return p<noinclude>
{{Documentation|content={{Preloaded template|[[Module:Documentation/config#L-257]]}}}}
</noinclude></pre>
The noinclude bit at the end is misplaced, and I can't work out where it is coming from — Martin <small>([[User:MSGJ|MSGJ]] · [[User talk:MSGJ|talk]])</small> 08:24, 9 June 2026 (UTC)
:A quick test tells me that, for whatever reason, the preload just doesn't handle noinclude tags like it normally would on any other page (compare it on [https://en.wikipedia.org/w/index.php?title=Template:X_Y_Z&action=edit&preload=Template%3ADocumentation%2Fpreload-module-testcases Template:X_Y_Z] and [https://en.wikipedia.org/w/index.php?title=Module:X_Y_Z&action=edit&preload=Template%3ADocumentation%2Fpreload-module-testcases Module:X_Y_Z]). I assume it's a content model difference issue, though I couldn't tell you how this'd be fixed. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 10:17, 9 June 2026 (UTC)
::I've reverted the change to [[Template:Documentation/preload-module-testcases]] — Martin <small>([[User:MSGJ|MSGJ]] · [[User talk:MSGJ|talk]])</small> 11:53, 9 June 2026 (UTC)
::Is this worth reporting as a bug? — Martin <small>([[User:MSGJ|MSGJ]] · [[User talk:MSGJ|talk]])</small> 11:54, 9 June 2026 (UTC)
== Add links to documentation header ==
[[File:DocumentationHeaderSample.png|thumb|400px]]
I have written a script that adds sandbox and testcases links to the top, as shown in the image to the right. I was going to add them directly to the module... Any objections? '''[[User:Zackmann08|<span style="color:#00d5ff">Zack</span><span style="color:#007F94">mann</span>]]''' (<sup>[[User_talk:Zackmann08|Talk to me]]</sup>/<sub>[[Special:Contributions/Zackmann08|<span style="color:orange">What I been doing</span>]]</sub>) 22:22, 6 July 2026 (UTC)
:For modules, I would be OK with moving the whole <code>linkBox</code> at the top (under or even above the header), because module documentation is above the code, which puts the <code>linkBox</code> in an awkward position that is hard to get to quickly.
:For the templates, the documentation is by convention put at the bottom. Pressing {{key press|End}} or {{key press|Page Down}} on the keyboard to get to the contents of the <code>linkBox</code> is quick enough. We don't need to have these links near the top. As mentioned two years ago in a [[Template talk:Documentation/Archive 10#Linking to Help:Template from documentation of templates|similar discussion about linking to "Help:Template"]], the header itself is too crowded. —[[User:Andrybak|andrybak]] ([[User talk:Andrybak|talk]]) 00:58, 7 July 2026 (UTC)
== Missing prot icon on protected template ==
[[Template:Documentation#Automatic functions]] says {{tq|This template also automatically adds {{tl|pp-template}} to a protected template page.}} But this does not appear to be working at [[Template:REVISIONUSER]], and the template is not in {{cl|Wikipedia semi-protected templates}} either. What has changed? --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 08:28, 15 August 2026 (UTC)
:Some kind of transient/caching issue? Both the indicator padlock icon and the categorization seem to be working fine now. I checked Vector 2022 (Parsoid/legacy parser), Monobook – all seem fine. —[[User:Andrybak|andrybak]] ([[User talk:Andrybak|talk]]) 11:33, 15 August 2026 (UTC)
4a5fyox9wgv2cy3vvn2nm4qrwlp4l1k
370431
370430
2026-09-28T08:22:29Z
ChiK
1136
1 revision imported from [[:en:Template_talk:Documentation]]
370430
wikitext
text/x-wiki
{{talk header}}
{{permprot}}
{{Centralized talk page|text=all talk pages of subtemplates, and Module talk:Documentation, redirect here}}
{{WikiProject banner shell|
{{WikiProject Templates|template_for_template_maintenance=y}}
}}
{{copied|from1=Template:Documentation|from_oldid1=948472454|to1=:incubator:Template:Wp/nod/Documentation|to_diff1=4237152
|from2=Template:Documentation|from_oldid2=948472454|to2=:incubator:Template:Wp/nod/documentation|to_diff2=4237211
|from3=Module:Documentation/config|from_oldid3=729280654|to3=:incubator:Module:Wp/nod/Documentation/config|to_diff3=4237079}}
{{User:MiszaBot/config
| algo = old(90d)
| archive = Template talk:Documentation/Archive %(counter)d
| counter = 11
| maxarchivesize = 150K
| archiveheader = {{Automatic archive navigator}}
| minthreadstoarchive = 1
| minthreadsleft = 4
}}
== Adding [[Template:No documentation]] and attempting Lua auto documentation with [[Template:Lua autodoc]] if the module has no documentation ==
I updated the module sandbox and testcases with two changes, one that adds {{tl|no documentation}} to templates and modules when no documentation is specified in the content field of the template or module, and the other attempts to add Lua auto documentation if the module does not have documentation present.
I did garner feedback at [[Wikipedia:Village_pump_(technical)/Archive_215#Thoughts_on_Docbunto?]] about a year and a half ago but it mostly has been abandoned. The autodoc module is still in beta and is wrapped in <code><nowiki>pcall</nowiki></code> so even if it gets used here it may only need semi or XCON protection for now.
If there are no objections over the coming days I'll open an edit request. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 15:20, 3 June 2026 (UTC)
: Since there have been no objections I will be opening an edit request. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 04:28, 8 June 2026 (UTC)
=== Edit request ===
{{edit protected|ans=y
|Module:Documentation
|Module:Documentation/config
}}
Please implement my changes in the sandboxes, which:
# Adds {{tl|no documentation}} if the content field is empty, which saves work of template editors to add "no documentation" to doc pages
# For modules, uses an autodoc module [[Module:Docbunto]] to attempt to generate documentation. This autodoc module does not need to be protected at the same level as [[Module:Documentation]] since it is called in <code>pcall( ... )</code>, which means that if the auto doc generation fails it will not generate any red text and instead will display nothing. If there is something present on the doc page it will instead override the Lua autodoc with the content on the doc page. [[Module:Docbunto]] could be semi- or extended-confirmed protected if there is concern that leaving the page unprotected in this pcall arrangement would make the module high risk.
# Adds appropriate doc tags for generating auto documentation, which has the added advantage of documenting the various functions in a format that can be used by other Lua programmers.
[[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 04:28, 8 June 2026 (UTC)
:'''Support''' – I missed the original post but this sounds like a great change. [[User:FaviFake|FaviFake]] ([[User talk:FaviFake|talk]]) 10:56, 8 June 2026 (UTC)
:Do you want to add something showcasing the auto documentation at [[Template:Documentation/testcases]]? It seems to not break anything but I would like to actually see the auto documentation in action somewhere before implementing. [[User:Trialpears|Trialpears]] ([[User talk:Trialpears|talk]]) 12:30, 8 June 2026 (UTC)
::It's difficult for me to add testcases here, but I can potentially show you demos on Test Wikipedia: [[testwiki:Module:Docbunto/demo1]], [[testwiki:Module:Docbunto/demo2]], [[testwiki:Module:Docbunto/demo3]]. Things may look more broken than they actually are because testwiki does not seem to want to load messages from Wikimedia Commons. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 14:25, 8 June 2026 (UTC)
::: Personally, I still think it'd be better to encourage people to write documentation on the doc page than to read doc comments from the module to display in the documentation section, [[Special:GoToComment/c-Anomie-20240917235000-Awesome_Aasim-20240917182100|for the same reasons Scribunto doesn't do that already]]. [[User:Anomie|Anomie]][[User talk:Anomie|⚔]] 22:18, 8 June 2026 (UTC)
: I see one major problem with [[Module:Docbunto]] at the moment: it focuses on functions with multiple arguments, which are usually module functions called by other modules. By contrast, the documentation of functions that must be called via <syntaxhighlight lang="wikitext" inline>{{#invoke:...}}</syntaxhighlight> (which often have a single <code>frame</code> Lua argument) is only confusing. For example, among the modules documented only via Docbunto (e.g. [[Module:Multiformat]], [[Module:Format]], [[Module:Escape input]]), I cannot understand the wikitext syntax of even a single function, except for a superficial overview of its parameters. In short, Docbunto could work with Lua libraries (e.g. [[Module:Arguments]]), but it is currently terrible at documenting modules that must be invoked via wikitext. For the latter, any automated solution should take the documentation of [[Module:String]], [[Module:String2]], [[Module:Params]], and others as examples (i.e. one section for each function, titled accordingly, with a brief description, a syntax overview, an explanation, and examples). Consider also that {{Tl|Mfl}} expects functions to have sections named after them. It could also be argued that modules intended to be invoked only via wikitext should hide the documentation of their Lua code from the documentation page; otherwise, they risk confusing people who simply want to use a module and know nothing about Lua (nor do they need to). Comments in the code should be sufficient for that. --[[User:Grufo|Grufo]] ([[User talk:Grufo|talk]]) 22:27, 8 June 2026 (UTC)
::I personally don't know if that is a limitation of Docbunto or just my poor documentation. But from what I see one can type in the function documentation <code><nowiki>@usage {{#invoke:Module|foo}}</nowiki></code> or <code><nowiki>@usage {{Foo}}</nowiki></code> for wikitext usage of a module function. It also is possible to specify keys in a table such as <code><nowiki>@param {string} args.echo Text to echo</nowiki></code> for functions which can be invoked either in a module or a template (that is why [[Module:MakeInvokeFunc]] was spun out into its own module and why its code is all over the place). But it still would help beginners who do not know Lua understand how specific functions operate and how to reference them in other Lua modules, since invoking them in wikitext is very similar to calling a template. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 01:50, 12 June 2026 (UTC)
::: I like to be pragmatic. Imagine a module function that expects this wikitext invocation: <syntaxhighlight lang="wikitext" inline>{{#invoke:foobar|my_func|first param|second param|third param|hello=hello param}}</syntaxhighlight>; how do you document that {{para|1}} should be, let's say, a number? How do you document that {{para|2}} should be a string? How do you document that {{para|3}} should be a boolean (<code>yes</code>/<code>no</code>)? How do you document that {{para|hello}} should be a comma-separated list? And why do you think it is useful for people who are interested in using such a module to know that in its Lua code <code>my_func()</code> requires a single argument named <code>frame</code> (which, by the way, is a constant across modules—except for the argument's name)? --[[User:Grufo|Grufo]] ([[User talk:Grufo|talk]]) 02:55, 12 June 2026 (UTC)
::::I think you can do this:
::::<syntaxhighlight lang="lua">
--- Echos something
--
-- @function p.echo
-- @param {Frame} frame calling frame
-- @param {string} frame.args[1] what to echo
-- @param {number} frame.args["num"] number of times to echo
-- @return {string} output wikitext
</syntaxhighlight> [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 19:37, 14 June 2026 (UTC)
::::: @[[User:Awesome Aasim|Aasim]]: Thank you. Could you please create a dummy module with its Docbunto documentation similar to what I wrote above? You don't actually need to write any Lua code, <syntaxhighlight lang="lua" inline>p.my_func = function (frame) end</syntaxhighlight> will do. --[[User:Grufo|Grufo]] ([[User talk:Grufo|talk]]) 20:29, 14 June 2026 (UTC)
::::::I think you can see [[Module:Example]] as an example of this. Yes there is a weird bug where the [1] is not showing up in brackets but that is why the entire module is enclosed in pcall as a beta module. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 15:50, 15 June 2026 (UTC)
:::::::Okay I fixed that error, it was a bad Lua pattern that was causing that issue. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 16:27, 15 June 2026 (UTC)
:::::::: Thank you. I see. Do you think that it could be changed to become more similar to how, let's say, {{mfl|string|replace}} documents its parameters? Someone who wants to use a module function designed for wikitext does not need to know how Lua works, and seeing <code>frame.args.bananas</code> might look quite obscure, whereas <code>bananas</code> or, even better, {{para|bananas}} would be much clearer. --[[User:Grufo|Grufo]] ([[User talk:Grufo|talk]]) 18:53, 15 June 2026 (UTC)
== Error in preload ==
When I click [create] for the testcases pages on [[Module:Women in Red event/sandbox]], I see the following boilerplate:
<pre>-- Unit tests for [[Module:{{ROOTPAGENAME}}]]. Click talk page to run tests.
local p = require('Module:UnitTests')
-- Example unit test.
function p:test_hello()
self:preprocess_equals('{{#invoke:Example | hello}}', 'Hello, world!')
end
return p<noinclude>
{{Documentation|content={{Preloaded template|[[Module:Documentation/config#L-257]]}}}}
</noinclude></pre>
The noinclude bit at the end is misplaced, and I can't work out where it is coming from — Martin <small>([[User:MSGJ|MSGJ]] · [[User talk:MSGJ|talk]])</small> 08:24, 9 June 2026 (UTC)
:A quick test tells me that, for whatever reason, the preload just doesn't handle noinclude tags like it normally would on any other page (compare it on [https://en.wikipedia.org/w/index.php?title=Template:X_Y_Z&action=edit&preload=Template%3ADocumentation%2Fpreload-module-testcases Template:X_Y_Z] and [https://en.wikipedia.org/w/index.php?title=Module:X_Y_Z&action=edit&preload=Template%3ADocumentation%2Fpreload-module-testcases Module:X_Y_Z]). I assume it's a content model difference issue, though I couldn't tell you how this'd be fixed. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 10:17, 9 June 2026 (UTC)
::I've reverted the change to [[Template:Documentation/preload-module-testcases]] — Martin <small>([[User:MSGJ|MSGJ]] · [[User talk:MSGJ|talk]])</small> 11:53, 9 June 2026 (UTC)
::Is this worth reporting as a bug? — Martin <small>([[User:MSGJ|MSGJ]] · [[User talk:MSGJ|talk]])</small> 11:54, 9 June 2026 (UTC)
== Add links to documentation header ==
[[File:DocumentationHeaderSample.png|thumb|400px]]
I have written a script that adds sandbox and testcases links to the top, as shown in the image to the right. I was going to add them directly to the module... Any objections? '''[[User:Zackmann08|<span style="color:#00d5ff">Zack</span><span style="color:#007F94">mann</span>]]''' (<sup>[[User_talk:Zackmann08|Talk to me]]</sup>/<sub>[[Special:Contributions/Zackmann08|<span style="color:orange">What I been doing</span>]]</sub>) 22:22, 6 July 2026 (UTC)
:For modules, I would be OK with moving the whole <code>linkBox</code> at the top (under or even above the header), because module documentation is above the code, which puts the <code>linkBox</code> in an awkward position that is hard to get to quickly.
:For the templates, the documentation is by convention put at the bottom. Pressing {{key press|End}} or {{key press|Page Down}} on the keyboard to get to the contents of the <code>linkBox</code> is quick enough. We don't need to have these links near the top. As mentioned two years ago in a [[Template talk:Documentation/Archive 10#Linking to Help:Template from documentation of templates|similar discussion about linking to "Help:Template"]], the header itself is too crowded. —[[User:Andrybak|andrybak]] ([[User talk:Andrybak|talk]]) 00:58, 7 July 2026 (UTC)
== Missing prot icon on protected template ==
[[Template:Documentation#Automatic functions]] says {{tq|This template also automatically adds {{tl|pp-template}} to a protected template page.}} But this does not appear to be working at [[Template:REVISIONUSER]], and the template is not in {{cl|Wikipedia semi-protected templates}} either. What has changed? --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 08:28, 15 August 2026 (UTC)
:Some kind of transient/caching issue? Both the indicator padlock icon and the categorization seem to be working fine now. I checked Vector 2022 (Parsoid/legacy parser), Monobook – all seem fine. —[[User:Andrybak|andrybak]] ([[User talk:Andrybak|talk]]) 11:33, 15 August 2026 (UTC)
4a5fyox9wgv2cy3vvn2nm4qrwlp4l1k
ಮೋಡ್ಯೂಲ್:ScribuntoUnit
828
23825
370422
349415
2026-05-26T18:46:51Z
en>Awesome Aasim
0
for infobox lua
370422
Scribunto
text/plain
-------------------------------------------------------------------------------
-- Unit tests for Scribunto.
-------------------------------------------------------------------------------
require('strict')
local DebugHelper = {}
local ScribuntoUnit = {}
ScribuntoUnit.__meta = {}
-- The cfg table contains all localisable strings and configuration, to make it
-- easier to port this module to another wiki.
local cfg = mw.loadData('Module:ScribuntoUnit/config')
-------------------------------------------------------------------------------
-- Concatenates keys and values, ideal for displaying a template or parser function argument table.
-- @param keySeparator glue between key and value (defaults to " = ")
-- @param separator glue between different key-value pairs (defaults to ", ")
-- @example concatWithKeys({a = 1, b = 2, c = 3}, ' => ', ', ') => "a => 1, b => 2, c => 3"
--
function DebugHelper.concatWithKeys(table, keySeparator, separator)
keySeparator = keySeparator or ' = '
separator = separator or ', '
local concatted = ''
local i = 1
local first = true
local unnamedArguments = true
for k, v in pairs(table) do
if first then
first = false
else
concatted = concatted .. separator
end
if k == i and unnamedArguments then
i = i + 1
concatted = concatted .. tostring(v)
else
unnamedArguments = false
concatted = concatted .. tostring(k) .. keySeparator .. tostring(v)
end
end
return concatted
end
-------------------------------------------------------------------------------
-- Compares two tables recursively (non-table values are handled correctly as well).
-- @param ignoreMetatable if false, t1.__eq is used for the comparison
--
function DebugHelper.deepCompare(t1, t2, ignoreMetatable)
local type1 = type(t1)
local type2 = type(t2)
if type1 ~= type2 then
return false
end
if type1 ~= 'table' then
return t1 == t2
end
local metatable = getmetatable(t1)
if not ignoreMetatable and metatable and metatable.__eq then
return t1 == t2
end
for k1, v1 in pairs(t1) do
local v2 = t2[k1]
if v2 == nil or not DebugHelper.deepCompare(v1, v2) then
return false
end
end
for k2, v2 in pairs(t2) do
if t1[k2] == nil then
return false
end
end
return true
end
-------------------------------------------------------------------------------
-- Raises an error with stack information
-- @param details a table with error details
-- - should have a 'text' key which is the error message to display
-- - a 'trace' key will be added with the stack data
-- - and a 'source' key with file/line number
-- - a metatable will be added for error handling
--
function DebugHelper.raise(details, level)
level = (level or 1) + 1
details.trace = debug.traceback('', level)
details.source = string.match(details.trace, '^%s*stack traceback:%s*(%S*: )')
-- setmetatable(details, {
-- __tostring: function() return details.text end
-- })
error(details, level)
end
-------------------------------------------------------------------------------
-- when used in a test, that test gets ignored, and the skipped count increases by one.
--
function ScribuntoUnit:markTestSkipped()
DebugHelper.raise({ScribuntoUnit = true, skipped = true}, 3)
end
-------------------------------------------------------------------------------
-- Unconditionally fail a test
-- @param message optional description of the test
--
function ScribuntoUnit:fail(message)
DebugHelper.raise({ScribuntoUnit = true, text = "Test failed", message = message}, 2)
end
-------------------------------------------------------------------------------
-- Checks that the input is true
-- @param message optional description of the test
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertTrue(actual, message, level)
if not actual then
DebugHelper.raise({ScribuntoUnit = true, text = string.format("Failed to assert that %s is true", tostring(actual)), message = message}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that the input is false
-- @param message optional description of the test
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertFalse(actual, message, level)
if actual then
DebugHelper.raise({ScribuntoUnit = true, text = string.format("Failed to assert that %s is false", tostring(actual)), message = message}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks an input string contains the expected string
-- @param message optional description of the test
-- @param plain search is made with a plain string instead of a ustring pattern
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertStringContains(pattern, s, plain, message, level)
if type(pattern) ~= 'string' then
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format("Pattern type error (expected string, got %s)", type(pattern)),
message = message
}, 2 + (level or 0))
end
if type(s) ~= 'string' then
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format("String type error (expected string, got %s)", type(s)),
message = message
}, 2 + (level or 0))
end
if not mw.ustring.find(s, pattern, nil, plain) then
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format('Failed to find %s "%s" in string "%s"', plain and "plain string" or "pattern", pattern, s),
message = message
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks an input string doesn't contain the expected string
-- @param message optional description of the test
-- @param plain search is made with a plain string instead of a ustring pattern
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertNotStringContains(pattern, s, plain, message, level)
if type(pattern) ~= 'string' then
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format("Pattern type error (expected string, got %s)", type(pattern)),
message = message
}, 2 + (level or 0))
end
if type(s) ~= 'string' then
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format("String type error (expected string, got %s)", type(s)),
message = message
}, 2 + (level or 0))
end
local i, j = mw.ustring.find(s, pattern, nil, plain)
if i then
local match = mw.ustring.sub(s, i, j)
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format('Found match "%s" for %s "%s"', match, plain and "plain string" or "pattern", pattern),
message = message
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that an input has the expected value.
-- @param message optional description of the test
-- @example assertEquals(4, add(2,2), "2+2 should be 4")
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertEquals(expected, actual, message, level)
if type(expected) == 'number' and type(actual) == 'number' then
self:assertWithinDelta(expected, actual, 1e-8, message, (level or 0) + 1)
elseif expected ~= actual then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s equals expected %s", tostring(actual), tostring(expected)),
actual = actual,
expected = expected,
message = message,
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that an input does not have the expected value.
-- @param message optional description of the test
-- @example assertNotEquals(5, add(2,2), "2+2 should not be 5")
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertNotEquals(expected, actual, message, level)
if type(expected) == 'number' and type(actual) == 'number' then
self:assertNotWithinDelta(expected, actual, 1e-8, message, (level or 0) + 1)
elseif expected == actual then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s does not equal expected %s", tostring(actual), tostring(expected)),
actual = actual,
expected = expected,
message = message,
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Validates that both the expected and actual values are numbers
-- @param message optional description of the test
-- @param level number to raise error stack level by
--
local function validateNumbers(expected, actual, message, level)
if type(expected) ~= "number" then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Expected value %s is not a number", tostring(expected)),
actual = actual,
expected = expected,
message = message,
}, 3 + level)
end
if type(actual) ~= "number" then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Actual value %s is not a number", tostring(actual)),
actual = actual,
expected = expected,
message = message,
}, 3 + level)
end
end
-------------------------------------------------------------------------------
-- Checks that 'actual' is within 'delta' of 'expected'.
-- @param message optional description of the test
-- @param level optional number to raise error stack level by
-- @example assertWithinDelta(1/3, 3/9, 0.000001, "3/9 should be 1/3")
function ScribuntoUnit:assertWithinDelta(expected, actual, delta, message, level)
validateNumbers(expected, actual, message, level or 0)
local diff = expected - actual
if diff < 0 then diff = - diff end -- instead of importing math.abs
if diff > delta then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %f is within %f of expected %f", actual, delta, expected),
actual = actual,
expected = expected,
message = message,
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that 'actual' is not within 'delta' of 'expected'.
-- @param message optional description of the test
-- @param level optional number to raise error stack level by
-- @example assertNotWithinDelta(1/3, 2/3, 0.000001, "1/3 should not be 2/3")
function ScribuntoUnit:assertNotWithinDelta(expected, actual, delta, message, level)
validateNumbers(expected, actual, message, level or 0)
local diff = expected - actual
if diff < 0 then diff = - diff end -- instead of importing math.abs
if diff <= delta then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %f is not within %f of expected %f", actual, delta, expected),
actual = actual,
expected = expected,
message = message,
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that a table has the expected value (including sub-tables).
-- @param message optional description of the test
-- @param level optional number to raise error stack level by
-- @example assertDeepEquals({{1,3}, {2,4}}, partition(odd, {1,2,3,4}))
function ScribuntoUnit:assertDeepEquals(expected, actual, message, level)
if not DebugHelper.deepCompare(expected, actual) then
if type(expected) == 'table' then
expected = mw.dumpObject(expected)
end
if type(actual) == 'table' then
actual = mw.dumpObject(actual)
end
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s equals expected %s", tostring(actual), tostring(expected)),
actual = actual,
expected = expected,
message = message,
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that a wikitext gives the expected result after processing.
-- @param message optional description of the test
-- @example assertResultEquals("Hello world", "{{concat|Hello|world}}")
function ScribuntoUnit:assertResultEquals(expected, text, message)
local frame = self.frame
local actual = frame:preprocess(text)
if expected ~= actual then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s equals expected %s after preprocessing", text, tostring(expected)),
actual = actual,
actualRaw = text,
expected = expected,
message = message,
}, 2)
end
end
-------------------------------------------------------------------------------
-- Checks that two wikitexts give the same result after processing.
-- @param message optional description of the test
-- @example assertSameResult("{{concat|Hello|world}}", "{{deleteLastChar|Hello world!}}")
function ScribuntoUnit:assertSameResult(text1, text2, message)
local frame = self.frame
local processed1 = frame:preprocess(text1)
local processed2 = frame:preprocess(text2)
if processed1 ~= processed2 then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s equals expected %s after preprocessing", processed1, processed2),
actual = processed1,
actualRaw = text1,
expected = processed2,
expectedRaw = text2,
message = message,
}, 2)
end
end
-------------------------------------------------------------------------------
-- Checks that a parser function gives the expected output.
-- @param message optional description of the test
-- @example assertParserFunctionEquals("Hello world", "msg:concat", {"Hello", " world"})
function ScribuntoUnit:assertParserFunctionEquals(expected, pfname, args, message)
local frame = self.frame
local actual = frame:callParserFunction{ name = pfname, args = args}
if expected ~= actual then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s with args %s equals expected %s after preprocessing",
DebugHelper.concatWithKeys(args), pfname, expected),
actual = actual,
actualRaw = pfname,
expected = expected,
message = message,
}, 2)
end
end
-------------------------------------------------------------------------------
-- Checks that a template gives the expected output.
-- @param message optional description of the test
-- @example assertTemplateEquals("Hello world", "concat", {"Hello", " world"})
function ScribuntoUnit:assertTemplateEquals(expected, template, args, message)
local frame = self.frame
local actual = frame:expandTemplate{ title = template, args = args}
if expected ~= actual then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s with args %s equals expected %s after preprocessing",
DebugHelper.concatWithKeys(args), template, expected),
actual = actual,
actualRaw = template,
expected = expected,
message = message,
}, 2)
end
end
-------------------------------------------------------------------------------
-- Checks whether a function throws an error
-- @param fn the function to test
-- @param expectedMessage optional the expected error message
-- @param message optional description of the test
-- @param varargs optional arguments to be passed to fn
function ScribuntoUnit:assertThrows(fn, expectedMessage, message, ...)
local succeeded, actualMessage = pcall(fn, ...)
if succeeded then
DebugHelper.raise({
ScribuntoUnit = true,
text = 'Expected exception but none was thrown',
message = message,
}, 2)
end
-- For strings, strip the line number added to the error message
actualMessage = type(actualMessage) == 'string'
and string.match(actualMessage, 'Module:[^:]*:[0-9]*: (.*)')
or actualMessage
local messagesMatch = DebugHelper.deepCompare(expectedMessage, actualMessage)
if expectedMessage and not messagesMatch then
DebugHelper.raise({
ScribuntoUnit = true,
expected = expectedMessage,
actual = actualMessage,
text = string.format('Expected exception with message %s, but got message %s',
tostring(expectedMessage), tostring(actualMessage)
),
message = message
}, 2)
end
end
-------------------------------------------------------------------------------
-- Checks whether a function doesn't throw an error
-- @param fn the function to test
-- @param message optional description of the test
-- @param varargs optional arguments to be passed to fn
function ScribuntoUnit:assertDoesNotThrow(fn, message, ...)
local succeeded, actualMessage = pcall(fn, ...)
if succeeded then
return
end
-- For strings, strip the line number added to the error message
actualMessage = type(actualMessage) == 'string'
and string.match(actualMessage, 'Module:[^:]*:[0-9]*: (.*)')
or actualMessage
DebugHelper.raise({
ScribuntoUnit = true,
actual = actualMessage,
text = string.format('Expected no exception, but got exception with message %s',
tostring(actualMessage)
),
message = message
}, 2)
end
-------------------------------------------------------------------------------
-- Set up metatable
ScribuntoUnit.__meta.__index = ScribuntoUnit
function ScribuntoUnit.__meta:__newindex(key, value)
if type(key) == "string" and key:find('^test') and type(value) == "function" then
-- Store test functions in the order they were defined
table.insert(self._tests, {name = key, test = value})
else
rawset(self, key, value)
end
end
-------------------------------------------------------------------------------
-- Creates a new test suite.
--
function ScribuntoUnit.new()
local self = {}
self._tests = {}
setmetatable(self, ScribuntoUnit.__meta)
self.run = function(frame) return ScribuntoUnit.run(self, frame) end
return self
end
-------------------------------------------------------------------------------
-- Resets global counters
--
function ScribuntoUnit:init(frame)
self.frame = frame or mw.getCurrentFrame()
self.successCount = 0
self.failureCount = 0
self.skipCount = 0
self.results = {}
end
-------------------------------------------------------------------------------
-- Runs a single testcase
-- @param name test nume
-- @param test function containing assertions
--
function ScribuntoUnit:runTest(name, test)
local success, details = pcall(test, self)
if success then
self.successCount = self.successCount + 1
table.insert(self.results, {name = name, success = true})
elseif type(details) ~= 'table' or not details.ScribuntoUnit then -- a real error, not a failed assertion
self.failureCount = self.failureCount + 1
table.insert(self.results, {name = name, error = true, message = 'Lua error -- ' .. tostring(details)})
elseif details.skipped then
self.skipCount = self.skipCount + 1
table.insert(self.results, {name = name, skipped = true})
else
self.failureCount = self.failureCount + 1
local message = details.source or ""
if details.message then
message = message .. details.message .. "\n"
end
message = message .. details.text
table.insert(self.results, {name = name, error = true, message = message, expected = details.expected, actual = details.actual, testname = details.message})
end
end
-------------------------------------------------------------------------------
-- Runs all tests and displays the results.
--
function ScribuntoUnit:runSuite(frame)
self:init(frame)
for i, testDetails in ipairs(self._tests) do
self:runTest(testDetails.name, testDetails.test)
end
return {
successCount = self.successCount,
failureCount = self.failureCount,
skipCount = self.skipCount,
results = self.results,
}
end
-------------------------------------------------------------------------------
-- #invoke entry point for running the tests.
-- Can be called without a frame, in which case it will use mw.log for output
-- @param displayMode see displayResults()
--
function ScribuntoUnit:run(frame)
local testData = self:runSuite(frame)
if frame and frame.args then
return self:displayResults(testData, frame.args.displayMode or 'table')
else
return self:displayResults(testData, 'log')
end
end
-------------------------------------------------------------------------------
-- Displays test results
-- @param displayMode: 'table', 'log' or 'short'
--
function ScribuntoUnit:displayResults(testData, displayMode)
if displayMode == 'table' then
return self:displayResultsAsTable(testData)
elseif displayMode == 'log' then
return self:displayResultsAsLog(testData)
elseif displayMode == 'short' then
return self:displayResultsAsShort(testData)
elseif displayMode == 'enum' then
return self:displayResultsAsEnum(testData)
else
error('unknown display mode')
end
end
function ScribuntoUnit:displayResultsAsLog(testData)
if testData.failureCount > 0 then
mw.log('FAILURES!!!')
elseif testData.skipCount > 0 then
mw.log('Some tests could not be executed without a frame and have been skipped. Invoke this test suite as a template to run all tests.')
end
mw.log(string.format('Assertions: success: %d, error: %d, skipped: %d', testData.successCount, testData.failureCount, testData.skipCount))
mw.log('-------------------------------------------------------------------------------')
for _, result in ipairs(testData.results) do
if result.error then
mw.log(string.format('%s: %s', result.name, result.message))
end
end
end
function ScribuntoUnit:displayResultsAsShort(testData)
local text = string.format(cfg.shortResultsFormat, testData.successCount, testData.failureCount, testData.skipCount)
if testData.failureCount > 0 then
text = '<span class="error">' .. text .. '</span>'
end
return text
end
function ScribuntoUnit:displayResultsAsEnum(testData)
if (testData.failureCount > 0) then
return 'fail'
elseif (testData.skipCount > 0 and testData.successCount == 0) then
return 'skipped'
else
return 'success'
end
end
function ScribuntoUnit:displayResultsAsTable(testData)
local successIcon, failIcon = self.frame:preprocess(cfg.successIndicator), self.frame:preprocess(cfg.failureIndicator)
local text = ''
if testData.failureCount > 0 then
local msg = mw.message.newRawMessage(cfg.failureSummary, testData.failureCount):plain()
msg = self.frame:preprocess(msg)
if cfg.failureCategory then
msg = cfg.failureCategory .. msg
end
text = text .. failIcon .. ' ' .. msg .. '\n'
else
text = text .. successIcon .. ' ' .. cfg.successSummary .. '\n'
end
text = text .. '{| class="wikitable scribunto-test-table"\n'
text = text .. '!\n! ' .. cfg.nameString .. '\n! ' .. cfg.expectedString .. '\n! ' .. cfg.actualString .. '\n'
for _, result in ipairs(testData.results) do
text = text .. '|-\n'
if result.error then
text = text .. '| ' .. failIcon .. '\n| '
if (result.expected and result.actual) then
local name = result.name
if result.testname then
name = name .. ' / ' .. result.testname
end
text = text .. mw.text.nowiki(name) .. '\n| ' .. mw.text.nowiki(tostring(result.expected)) .. '\n| ' .. mw.text.nowiki(tostring(result.actual)) .. '\n'
else
text = text .. mw.text.nowiki(result.name) .. '\n| ' .. ' colspan="2" | ' .. mw.text.nowiki(result.message) .. '\n'
end
else
text = text .. '| ' .. successIcon .. '\n| ' .. mw.text.nowiki(result.name) .. '\n|\n|\n'
end
end
text = text .. '|}\n'
return text
end
return ScribuntoUnit
6ndvyy4oz3v3i8fjoxts3ofs01uwk3h
370423
370422
2026-09-28T08:22:28Z
ChiK
1136
1 revision imported from [[:en:Module:ScribuntoUnit]]
370422
Scribunto
text/plain
-------------------------------------------------------------------------------
-- Unit tests for Scribunto.
-------------------------------------------------------------------------------
require('strict')
local DebugHelper = {}
local ScribuntoUnit = {}
ScribuntoUnit.__meta = {}
-- The cfg table contains all localisable strings and configuration, to make it
-- easier to port this module to another wiki.
local cfg = mw.loadData('Module:ScribuntoUnit/config')
-------------------------------------------------------------------------------
-- Concatenates keys and values, ideal for displaying a template or parser function argument table.
-- @param keySeparator glue between key and value (defaults to " = ")
-- @param separator glue between different key-value pairs (defaults to ", ")
-- @example concatWithKeys({a = 1, b = 2, c = 3}, ' => ', ', ') => "a => 1, b => 2, c => 3"
--
function DebugHelper.concatWithKeys(table, keySeparator, separator)
keySeparator = keySeparator or ' = '
separator = separator or ', '
local concatted = ''
local i = 1
local first = true
local unnamedArguments = true
for k, v in pairs(table) do
if first then
first = false
else
concatted = concatted .. separator
end
if k == i and unnamedArguments then
i = i + 1
concatted = concatted .. tostring(v)
else
unnamedArguments = false
concatted = concatted .. tostring(k) .. keySeparator .. tostring(v)
end
end
return concatted
end
-------------------------------------------------------------------------------
-- Compares two tables recursively (non-table values are handled correctly as well).
-- @param ignoreMetatable if false, t1.__eq is used for the comparison
--
function DebugHelper.deepCompare(t1, t2, ignoreMetatable)
local type1 = type(t1)
local type2 = type(t2)
if type1 ~= type2 then
return false
end
if type1 ~= 'table' then
return t1 == t2
end
local metatable = getmetatable(t1)
if not ignoreMetatable and metatable and metatable.__eq then
return t1 == t2
end
for k1, v1 in pairs(t1) do
local v2 = t2[k1]
if v2 == nil or not DebugHelper.deepCompare(v1, v2) then
return false
end
end
for k2, v2 in pairs(t2) do
if t1[k2] == nil then
return false
end
end
return true
end
-------------------------------------------------------------------------------
-- Raises an error with stack information
-- @param details a table with error details
-- - should have a 'text' key which is the error message to display
-- - a 'trace' key will be added with the stack data
-- - and a 'source' key with file/line number
-- - a metatable will be added for error handling
--
function DebugHelper.raise(details, level)
level = (level or 1) + 1
details.trace = debug.traceback('', level)
details.source = string.match(details.trace, '^%s*stack traceback:%s*(%S*: )')
-- setmetatable(details, {
-- __tostring: function() return details.text end
-- })
error(details, level)
end
-------------------------------------------------------------------------------
-- when used in a test, that test gets ignored, and the skipped count increases by one.
--
function ScribuntoUnit:markTestSkipped()
DebugHelper.raise({ScribuntoUnit = true, skipped = true}, 3)
end
-------------------------------------------------------------------------------
-- Unconditionally fail a test
-- @param message optional description of the test
--
function ScribuntoUnit:fail(message)
DebugHelper.raise({ScribuntoUnit = true, text = "Test failed", message = message}, 2)
end
-------------------------------------------------------------------------------
-- Checks that the input is true
-- @param message optional description of the test
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertTrue(actual, message, level)
if not actual then
DebugHelper.raise({ScribuntoUnit = true, text = string.format("Failed to assert that %s is true", tostring(actual)), message = message}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that the input is false
-- @param message optional description of the test
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertFalse(actual, message, level)
if actual then
DebugHelper.raise({ScribuntoUnit = true, text = string.format("Failed to assert that %s is false", tostring(actual)), message = message}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks an input string contains the expected string
-- @param message optional description of the test
-- @param plain search is made with a plain string instead of a ustring pattern
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertStringContains(pattern, s, plain, message, level)
if type(pattern) ~= 'string' then
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format("Pattern type error (expected string, got %s)", type(pattern)),
message = message
}, 2 + (level or 0))
end
if type(s) ~= 'string' then
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format("String type error (expected string, got %s)", type(s)),
message = message
}, 2 + (level or 0))
end
if not mw.ustring.find(s, pattern, nil, plain) then
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format('Failed to find %s "%s" in string "%s"', plain and "plain string" or "pattern", pattern, s),
message = message
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks an input string doesn't contain the expected string
-- @param message optional description of the test
-- @param plain search is made with a plain string instead of a ustring pattern
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertNotStringContains(pattern, s, plain, message, level)
if type(pattern) ~= 'string' then
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format("Pattern type error (expected string, got %s)", type(pattern)),
message = message
}, 2 + (level or 0))
end
if type(s) ~= 'string' then
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format("String type error (expected string, got %s)", type(s)),
message = message
}, 2 + (level or 0))
end
local i, j = mw.ustring.find(s, pattern, nil, plain)
if i then
local match = mw.ustring.sub(s, i, j)
DebugHelper.raise({
ScribuntoUnit = true,
text = mw.ustring.format('Found match "%s" for %s "%s"', match, plain and "plain string" or "pattern", pattern),
message = message
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that an input has the expected value.
-- @param message optional description of the test
-- @example assertEquals(4, add(2,2), "2+2 should be 4")
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertEquals(expected, actual, message, level)
if type(expected) == 'number' and type(actual) == 'number' then
self:assertWithinDelta(expected, actual, 1e-8, message, (level or 0) + 1)
elseif expected ~= actual then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s equals expected %s", tostring(actual), tostring(expected)),
actual = actual,
expected = expected,
message = message,
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that an input does not have the expected value.
-- @param message optional description of the test
-- @example assertNotEquals(5, add(2,2), "2+2 should not be 5")
-- @param level optional number to raise error stack level by
--
function ScribuntoUnit:assertNotEquals(expected, actual, message, level)
if type(expected) == 'number' and type(actual) == 'number' then
self:assertNotWithinDelta(expected, actual, 1e-8, message, (level or 0) + 1)
elseif expected == actual then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s does not equal expected %s", tostring(actual), tostring(expected)),
actual = actual,
expected = expected,
message = message,
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Validates that both the expected and actual values are numbers
-- @param message optional description of the test
-- @param level number to raise error stack level by
--
local function validateNumbers(expected, actual, message, level)
if type(expected) ~= "number" then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Expected value %s is not a number", tostring(expected)),
actual = actual,
expected = expected,
message = message,
}, 3 + level)
end
if type(actual) ~= "number" then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Actual value %s is not a number", tostring(actual)),
actual = actual,
expected = expected,
message = message,
}, 3 + level)
end
end
-------------------------------------------------------------------------------
-- Checks that 'actual' is within 'delta' of 'expected'.
-- @param message optional description of the test
-- @param level optional number to raise error stack level by
-- @example assertWithinDelta(1/3, 3/9, 0.000001, "3/9 should be 1/3")
function ScribuntoUnit:assertWithinDelta(expected, actual, delta, message, level)
validateNumbers(expected, actual, message, level or 0)
local diff = expected - actual
if diff < 0 then diff = - diff end -- instead of importing math.abs
if diff > delta then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %f is within %f of expected %f", actual, delta, expected),
actual = actual,
expected = expected,
message = message,
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that 'actual' is not within 'delta' of 'expected'.
-- @param message optional description of the test
-- @param level optional number to raise error stack level by
-- @example assertNotWithinDelta(1/3, 2/3, 0.000001, "1/3 should not be 2/3")
function ScribuntoUnit:assertNotWithinDelta(expected, actual, delta, message, level)
validateNumbers(expected, actual, message, level or 0)
local diff = expected - actual
if diff < 0 then diff = - diff end -- instead of importing math.abs
if diff <= delta then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %f is not within %f of expected %f", actual, delta, expected),
actual = actual,
expected = expected,
message = message,
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that a table has the expected value (including sub-tables).
-- @param message optional description of the test
-- @param level optional number to raise error stack level by
-- @example assertDeepEquals({{1,3}, {2,4}}, partition(odd, {1,2,3,4}))
function ScribuntoUnit:assertDeepEquals(expected, actual, message, level)
if not DebugHelper.deepCompare(expected, actual) then
if type(expected) == 'table' then
expected = mw.dumpObject(expected)
end
if type(actual) == 'table' then
actual = mw.dumpObject(actual)
end
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s equals expected %s", tostring(actual), tostring(expected)),
actual = actual,
expected = expected,
message = message,
}, 2 + (level or 0))
end
end
-------------------------------------------------------------------------------
-- Checks that a wikitext gives the expected result after processing.
-- @param message optional description of the test
-- @example assertResultEquals("Hello world", "{{concat|Hello|world}}")
function ScribuntoUnit:assertResultEquals(expected, text, message)
local frame = self.frame
local actual = frame:preprocess(text)
if expected ~= actual then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s equals expected %s after preprocessing", text, tostring(expected)),
actual = actual,
actualRaw = text,
expected = expected,
message = message,
}, 2)
end
end
-------------------------------------------------------------------------------
-- Checks that two wikitexts give the same result after processing.
-- @param message optional description of the test
-- @example assertSameResult("{{concat|Hello|world}}", "{{deleteLastChar|Hello world!}}")
function ScribuntoUnit:assertSameResult(text1, text2, message)
local frame = self.frame
local processed1 = frame:preprocess(text1)
local processed2 = frame:preprocess(text2)
if processed1 ~= processed2 then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s equals expected %s after preprocessing", processed1, processed2),
actual = processed1,
actualRaw = text1,
expected = processed2,
expectedRaw = text2,
message = message,
}, 2)
end
end
-------------------------------------------------------------------------------
-- Checks that a parser function gives the expected output.
-- @param message optional description of the test
-- @example assertParserFunctionEquals("Hello world", "msg:concat", {"Hello", " world"})
function ScribuntoUnit:assertParserFunctionEquals(expected, pfname, args, message)
local frame = self.frame
local actual = frame:callParserFunction{ name = pfname, args = args}
if expected ~= actual then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s with args %s equals expected %s after preprocessing",
DebugHelper.concatWithKeys(args), pfname, expected),
actual = actual,
actualRaw = pfname,
expected = expected,
message = message,
}, 2)
end
end
-------------------------------------------------------------------------------
-- Checks that a template gives the expected output.
-- @param message optional description of the test
-- @example assertTemplateEquals("Hello world", "concat", {"Hello", " world"})
function ScribuntoUnit:assertTemplateEquals(expected, template, args, message)
local frame = self.frame
local actual = frame:expandTemplate{ title = template, args = args}
if expected ~= actual then
DebugHelper.raise({
ScribuntoUnit = true,
text = string.format("Failed to assert that %s with args %s equals expected %s after preprocessing",
DebugHelper.concatWithKeys(args), template, expected),
actual = actual,
actualRaw = template,
expected = expected,
message = message,
}, 2)
end
end
-------------------------------------------------------------------------------
-- Checks whether a function throws an error
-- @param fn the function to test
-- @param expectedMessage optional the expected error message
-- @param message optional description of the test
-- @param varargs optional arguments to be passed to fn
function ScribuntoUnit:assertThrows(fn, expectedMessage, message, ...)
local succeeded, actualMessage = pcall(fn, ...)
if succeeded then
DebugHelper.raise({
ScribuntoUnit = true,
text = 'Expected exception but none was thrown',
message = message,
}, 2)
end
-- For strings, strip the line number added to the error message
actualMessage = type(actualMessage) == 'string'
and string.match(actualMessage, 'Module:[^:]*:[0-9]*: (.*)')
or actualMessage
local messagesMatch = DebugHelper.deepCompare(expectedMessage, actualMessage)
if expectedMessage and not messagesMatch then
DebugHelper.raise({
ScribuntoUnit = true,
expected = expectedMessage,
actual = actualMessage,
text = string.format('Expected exception with message %s, but got message %s',
tostring(expectedMessage), tostring(actualMessage)
),
message = message
}, 2)
end
end
-------------------------------------------------------------------------------
-- Checks whether a function doesn't throw an error
-- @param fn the function to test
-- @param message optional description of the test
-- @param varargs optional arguments to be passed to fn
function ScribuntoUnit:assertDoesNotThrow(fn, message, ...)
local succeeded, actualMessage = pcall(fn, ...)
if succeeded then
return
end
-- For strings, strip the line number added to the error message
actualMessage = type(actualMessage) == 'string'
and string.match(actualMessage, 'Module:[^:]*:[0-9]*: (.*)')
or actualMessage
DebugHelper.raise({
ScribuntoUnit = true,
actual = actualMessage,
text = string.format('Expected no exception, but got exception with message %s',
tostring(actualMessage)
),
message = message
}, 2)
end
-------------------------------------------------------------------------------
-- Set up metatable
ScribuntoUnit.__meta.__index = ScribuntoUnit
function ScribuntoUnit.__meta:__newindex(key, value)
if type(key) == "string" and key:find('^test') and type(value) == "function" then
-- Store test functions in the order they were defined
table.insert(self._tests, {name = key, test = value})
else
rawset(self, key, value)
end
end
-------------------------------------------------------------------------------
-- Creates a new test suite.
--
function ScribuntoUnit.new()
local self = {}
self._tests = {}
setmetatable(self, ScribuntoUnit.__meta)
self.run = function(frame) return ScribuntoUnit.run(self, frame) end
return self
end
-------------------------------------------------------------------------------
-- Resets global counters
--
function ScribuntoUnit:init(frame)
self.frame = frame or mw.getCurrentFrame()
self.successCount = 0
self.failureCount = 0
self.skipCount = 0
self.results = {}
end
-------------------------------------------------------------------------------
-- Runs a single testcase
-- @param name test nume
-- @param test function containing assertions
--
function ScribuntoUnit:runTest(name, test)
local success, details = pcall(test, self)
if success then
self.successCount = self.successCount + 1
table.insert(self.results, {name = name, success = true})
elseif type(details) ~= 'table' or not details.ScribuntoUnit then -- a real error, not a failed assertion
self.failureCount = self.failureCount + 1
table.insert(self.results, {name = name, error = true, message = 'Lua error -- ' .. tostring(details)})
elseif details.skipped then
self.skipCount = self.skipCount + 1
table.insert(self.results, {name = name, skipped = true})
else
self.failureCount = self.failureCount + 1
local message = details.source or ""
if details.message then
message = message .. details.message .. "\n"
end
message = message .. details.text
table.insert(self.results, {name = name, error = true, message = message, expected = details.expected, actual = details.actual, testname = details.message})
end
end
-------------------------------------------------------------------------------
-- Runs all tests and displays the results.
--
function ScribuntoUnit:runSuite(frame)
self:init(frame)
for i, testDetails in ipairs(self._tests) do
self:runTest(testDetails.name, testDetails.test)
end
return {
successCount = self.successCount,
failureCount = self.failureCount,
skipCount = self.skipCount,
results = self.results,
}
end
-------------------------------------------------------------------------------
-- #invoke entry point for running the tests.
-- Can be called without a frame, in which case it will use mw.log for output
-- @param displayMode see displayResults()
--
function ScribuntoUnit:run(frame)
local testData = self:runSuite(frame)
if frame and frame.args then
return self:displayResults(testData, frame.args.displayMode or 'table')
else
return self:displayResults(testData, 'log')
end
end
-------------------------------------------------------------------------------
-- Displays test results
-- @param displayMode: 'table', 'log' or 'short'
--
function ScribuntoUnit:displayResults(testData, displayMode)
if displayMode == 'table' then
return self:displayResultsAsTable(testData)
elseif displayMode == 'log' then
return self:displayResultsAsLog(testData)
elseif displayMode == 'short' then
return self:displayResultsAsShort(testData)
elseif displayMode == 'enum' then
return self:displayResultsAsEnum(testData)
else
error('unknown display mode')
end
end
function ScribuntoUnit:displayResultsAsLog(testData)
if testData.failureCount > 0 then
mw.log('FAILURES!!!')
elseif testData.skipCount > 0 then
mw.log('Some tests could not be executed without a frame and have been skipped. Invoke this test suite as a template to run all tests.')
end
mw.log(string.format('Assertions: success: %d, error: %d, skipped: %d', testData.successCount, testData.failureCount, testData.skipCount))
mw.log('-------------------------------------------------------------------------------')
for _, result in ipairs(testData.results) do
if result.error then
mw.log(string.format('%s: %s', result.name, result.message))
end
end
end
function ScribuntoUnit:displayResultsAsShort(testData)
local text = string.format(cfg.shortResultsFormat, testData.successCount, testData.failureCount, testData.skipCount)
if testData.failureCount > 0 then
text = '<span class="error">' .. text .. '</span>'
end
return text
end
function ScribuntoUnit:displayResultsAsEnum(testData)
if (testData.failureCount > 0) then
return 'fail'
elseif (testData.skipCount > 0 and testData.successCount == 0) then
return 'skipped'
else
return 'success'
end
end
function ScribuntoUnit:displayResultsAsTable(testData)
local successIcon, failIcon = self.frame:preprocess(cfg.successIndicator), self.frame:preprocess(cfg.failureIndicator)
local text = ''
if testData.failureCount > 0 then
local msg = mw.message.newRawMessage(cfg.failureSummary, testData.failureCount):plain()
msg = self.frame:preprocess(msg)
if cfg.failureCategory then
msg = cfg.failureCategory .. msg
end
text = text .. failIcon .. ' ' .. msg .. '\n'
else
text = text .. successIcon .. ' ' .. cfg.successSummary .. '\n'
end
text = text .. '{| class="wikitable scribunto-test-table"\n'
text = text .. '!\n! ' .. cfg.nameString .. '\n! ' .. cfg.expectedString .. '\n! ' .. cfg.actualString .. '\n'
for _, result in ipairs(testData.results) do
text = text .. '|-\n'
if result.error then
text = text .. '| ' .. failIcon .. '\n| '
if (result.expected and result.actual) then
local name = result.name
if result.testname then
name = name .. ' / ' .. result.testname
end
text = text .. mw.text.nowiki(name) .. '\n| ' .. mw.text.nowiki(tostring(result.expected)) .. '\n| ' .. mw.text.nowiki(tostring(result.actual)) .. '\n'
else
text = text .. mw.text.nowiki(result.name) .. '\n| ' .. ' colspan="2" | ' .. mw.text.nowiki(result.message) .. '\n'
end
else
text = text .. '| ' .. successIcon .. '\n| ' .. mw.text.nowiki(result.name) .. '\n|\n|\n'
end
end
text = text .. '|}\n'
return text
end
return ScribuntoUnit
6ndvyy4oz3v3i8fjoxts3ofs01uwk3h
ವೀಲಿ (ಲಿಲಿ) ವು
0
24931
370350
354199
2026-09-28T07:43:49Z
ChiK
1136
370350
wikitext
text/x-wiki
{{Short description|Chinese–American computer scientist}}
{{Use mdy dates|cs1-dates=ly|date=December 2024}}
''ವೀಲಿ (ಲಿಲಿ) ವು''' ಒರ್ತಿ ಚೀನೀ ಬೊಕ್ಕ ಅಮೆರಿಕನ್ ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನಿ, ಡಲ್ಲಾಸ್ ಡ್ ಟೆಕ್ಸಾಸ್ ವಿಶ್ವವಿದ್ಯಾಲಯೊಡು ಡೇಟಾ ಕಮ್ಯುನಿಕೇಶನ್ಸ್ ಬೊಕ್ಕ ಡೇಟಾ ಮ್ಯಾನೇಜ್ ಮೆಂಟ್ ಲ್ಯಾಬೊರೇಟರಿದ ನಿರ್ದೇಶಕೆರ್, ಅಲ್ಪ ಆರ್ ಕಂಪ್ಯೂಟರ್ ಸೈನ್ಸ್ ದ ಪ್ರಾಧ್ಯಾಪಕೆರ್. ಅರೆನ ಸಂಶೋಧನಾ ಆಸಕ್ತಿಲು ವೈರ್ಲೆಸ್ ಸಂವೇದಕ ಜಾಲೊಲು, ಪ್ರಭಾವ ಗರಿಷ್ಠೀಕರಣ ಬೊಕ್ಕ ಸಾಮಾಜಿಕ ಜಾಲತಾಣೊಲೆಡ್ ವದಂತಿಲೆನ್ ಹರಡುನವು, ಬೊಕ್ಕ ಜಾಗತೀಯ ವಿಶ್ಲೇಷಣೆ (ಭೌಗೋಳಿಕ ಮಾಹಿತಿದ ವಿಶ್ಲೇಷಣೆ) ಸೇರ್ದ್ ಉಪ್ಪುಂಡು.
==ಶಿಕ್ಷಣ ಬೊಕ್ಕ ವೃತ್ತಿ==
ವು ಲಿಯೊನಿಂಗ್ ವಿಶ್ವವಿದ್ಯಾಲಯದ ತಂತ್ರಜ್ಞಾನೊಡು ವಿದ್ಯಾರ್ಥಿಯಾದಿತ್ತೆರ್, ಅಲ್ಪ ೧೯೮೯ಡ್ ಯಾಂತ್ರಿಕ ಎಂಜಿನಿಯರಿಂಗ್ ಡ್ ಸ್ನಾತಕೋತ್ತರ ಪದವಿ ಪಡೆಯೆರ್, ಬೊಕ್ಕ ೧೯೮೯ಡ್ದ್ ೧೯೯೩ ಮುಟ್ಟ ಚೈನೀಸ್ ಅಕಾಡೆಮಿ ಆಫ್ ಮೈನ್ ಸೈನ್ಸ್ ಅಂಡ್ ಟೆಕ್ನಾಲಜಿಡ್ ಚೀನಾ ಕಲ್ಲಿದ್ದಲು ಸಂಶೋಧನಾ ಅಕಾಡೆಮಿಶಿಯನ್ ಆಯೆರ್.{{r|grace|profile}}
ಅಯಿಡ್ದ್ ಬೊಕ್ಕ, ಆರ್ ಅಮೇರಿಕ ಸಂಯುಕ್ತ ಸಂಸ್ಥಾನೊಗು ಪೋಯೆರ್, ಅಲ್ಪ ಆರ್ ವಿಸ್ಕಾನ್ಸಿನ್ ವಿಶ್ವವಿದ್ಯಾಲಯೊಡು ಪದವಿ ಅಧ್ಯಯನೊನು ಸುರು ಮಲ್ತೆರ್, ಅಲ್ಪ ಆರ್ ಅರ್ಥಶಾಸ್ತ್ರೊಡು ಸ್ನಾತಕೋತ್ತರ ಪದವಿನ್ ಗಳಸುವೆರ್. {{r|grace}} ಕಂಪ್ಯೂಟರ್ ಸೈನ್ಸ್ ಅಧ್ಯಯನ ಮಲ್ಪೆರೆ ಮಿನ್ನೆಸೊಟಾ ವಿಶ್ವವಿದ್ಯಾಲಯೊಗು ಪೋಯಿ ಬೊಕ್ಕ, ಆರ್ ೧೯೯೭ಡ್ ಸ್ನಾತಕೋತ್ತರ ಪದವಿನ್ ಗಳಸುವೆರ್ ಬೊಕ್ಕ ೨೦೦೨ಡ್ ಪಿಎಚ್ ಡಿ ಮಲ್ತೆರ್.{{r|profile}} ''ಮಾಡೆಲಿಂಗ್ ಸ್ಪೇಷಿಯಲ್ ಡಿಪೆಂಡೆನ್ಸಿಸ್ ಫಾರ್ ಡಾಟಾ ಮೈನಿಂಗ್'' ಪನ್ಪಿನ ಅರೆನ ಪ್ರಬಂಧೊನು ಶಶಿ ಶೇಖರ್ (ವಿಜ್ಞಾನಿ) ಮೇಲ್ವಿಚಾರಣೆ ಮಲ್ತೆರ್. {{r|diss}}
ವು 2002ಡ್ ಡಲ್ಲಾಸ್ ಡ್ ಟೆಕ್ಸಾಸ್ ವಿಶ್ವವಿದ್ಯಾಲಯೊಗು ಕಂಪ್ಯೂಟರ್ ಸೈನ್ಸ್ ದ ಸಹಾಯಕ ಪ್ರಾಧ್ಯಾಪಕೆರಾದ್ ಸೇರ್ದೆರ್. 2008ಡ್ ಸಹಾಯಕ ಪ್ರಾಧ್ಯಾಪಕೆರಾದ್ ಬೊಕ್ಕ 2013ಡ್ ಪೂರ್ಣ ಪ್ರಾಧ್ಯಾಪಕೆರಾದ್ ಬಡ್ತಿ ಪಡೆಯೆರ್.{{r|grace}}
==ಮಾನ್ಯತೆ==
ವೈರ್ ಲೆಸ್ ಸೆನ್ಸರ್ ನೆಟ್ ವರ್ಕ್ ಲೆಡ್ ಡೇಟಾ ಕಮ್ಯುನಿಕೇಶನ್ ಬೊಕ್ಕ ಪ್ರೊಸೆಸಿಂಗ್ ದ ಅಧ್ಯಯನೊಗು ಕೊರ್ತಿನ ಕೊಡುಗೆಲೆಗ್ ವುನ್ ಐಇಇಇ ಫೆಲೋ ಕ್ಲಾಸ್ ಆಫ್ ೨೦೨೫ ಗ್ ನೇಮಕ ಮಲ್ತೆರ್.{{r|if}}
==ವೈಯಕ್ತಿಕ ಜೀವನ==
ವು '''ಡಿಂಗ್-ಝು ಡು''' ನ್ ಮದಿಮೆ ಆಯೆರ್, ಆರ್ ಡಲ್ಲಾಸ್ ಡ್ ಟೆಕ್ಸಾಸ್ ವಿಶ್ವವಿದ್ಯಾಲಯೊಡು ಕಂಪ್ಯೂಟರ್ ಸೈನ್ಸ್ ದ ಪ್ರಾಧ್ಯಾಪಕೆರ್. ಅಕುಲು ಮಿನ್ನೆಸೊಟಾ ವಿಶ್ವವಿದ್ಯಾಲಯೊಡು ತೂಯೆರ್, ಅಲ್ಪ ವು ಒರಿ ವಿದ್ಯಾರ್ಥಿ ಆದಿತ್ತೆರ್ ಬೊಕ್ಕ ಡು ಒರಿ ಪ್ರಾಧ್ಯಾಪಕೆರ್ ಆದಿತ್ತೆರ್.{{r|love}}
==ಉಲ್ಲೇಕೊಲು==
<references>
<ref name=diss>{{citation|title=Modeling spatial dependencies for data mining|publisher=University of Minnesota|type=PhD thesis|year=2002|url=https://www.proquest.com/openview/a8d960f84d941bfbff12a0c59c30b050/1 |id={{ProQuest|<!-- Insert ProQuest data here -->}} |access-date=2024-12-28}}</ref>
<ref name=grace>{{citation|url=https://cs.utdallas.edu/3437/lilywugraceseriespt2/|title=Dr. Lily Wu Inspires Students at the Second Grace Series Lecture|date=May 4, 2015|publisher=University of Texas at Dallas|access-date=2024-12-28}}</ref>
<ref name=if>{{citation|url=https://www.ieee.org/content/dam/ieee-org/ieee/web/org/about/fellows/fellow-committee/2025-fellows-class-announcement.pdf|title=IEEE Fellow Class of 2025|publisher=IEEE|access-date=2024-12-28}}</ref>
<ref name=love>{{citation|url=https://engineering-magazine.utdallas.edu/2023/12/15/love-jack/|title=Love & STEM|magazine=Engineering Magazine|date=December 15, 2023|publisher=University of Texas at Dallas|access-date=2024-12-28}}</ref>
<ref name=profile>{{citation|url=https://profiles.utdallas.edu/weiliwu|title=Wei Wu|work=Faculty profiles|publisher=University of Texas at Dallas|access-date=2024-12-28}}</ref>
</references>
==ಬಾಹ್ಯ ಕೊಂಡಿಲು==
* [https://personal.utdallas.edu/~weiliwu/ Home page]
* {{Google Scholar id|Flmif3gAAAAJ}}
{{Authority control|state=collapsed}}
{{DEFAULTSORT:Wu, Weili}}
[[ವರ್ಗೊ:ಕಳೆಂಜಿ ಪುಟ್ಟಿನ ವರ್ಷ (ಜೀವಂತ ಜನ)]]
[[ವರ್ಗೊ:ಜೀವಂತ ಜನೊಕುಲು]]
[[ವರ್ಗೊ:ಚೀನೀ ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನಿಲು]]
[[ವರ್ಗೊ:ಚೀನೀ ಮಹಿಳಾ ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನಿಲು]]
[[ವರ್ಗೊ:ಅಮೆರಿಕದ ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನಿಲು]]
[[ವರ್ಗೊ:ಅಮೆರಿಕದ ಮಹಿಳಾ ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನಿಲು]]
[[ವರ್ಗೊ:ವಿಸ್ಕಾನ್ಸಿನ್ ವಿಶ್ವವಿದ್ಯಾಲಯದ ಹಿರಿಯ ವಿದ್ಯಾರ್ಥಿಲು]]
[[ವರ್ಗೊ:ಮಿನ್ನೆಸೊಟಾ ವಿಶ್ವವಿದ್ಯಾಲಯದ ಹಿರಿಯ ವಿದ್ಯಾರ್ಥಿಲು]]
[[ವರ್ಗೊ:ಡಲ್ಲಾಸ್ ಫ್ಯಾಕಲ್ಟಿಡ್ ಟೆಕ್ಸಾಸ್ ವಿಶ್ವವಿದ್ಯಾಲಯ]]
[[ವರ್ಗೊ:ಐಇಇಇ ಫೆಲೋಲು]]
flwlwdx87bs94x67wl7bx8kxqgesdeq
ಸೂತಾಪ ಬಸು
0
25814
370510
356483
2026-09-28T10:29:17Z
Vinoda mamatharai
55
370510
wikitext
text/x-wiki
{{unreferenced}}
== ಸೂತಾಪ ಬಸು ==
ಸೂತಾಪ ಬಸು ಒರಿ ಭಾರತೀಯ ಲೇಖಕೆರ್, ಶಿಕ್ಷಣತಜ್ಞೆರ್, ಕವಿ, ಅನುವಾದಕೆರ್ ಬೊಕ್ಕ ಬರವುದ ತರಬೇತುದಾರೆರ್. ಡ್ಯಾಂಗಲ್, ಪದ್ಮಾವತಿ ಬೊಕ್ಕ ಗೆಂಗಿಸ್ ಖಾನ್, ದಿ ಕರ್ಸ್ ಆಫ್ ನಾದರ್ ಶಾ ಬೊಕ್ಕ ದಿ ಬರ್ತ್ ಆಫ್ ಮೈ ನೇಷನ್ ಪನ್ಪಿನ ಕೃತಿಲೆಗ್ ಪುದರ್ ಪೋಯಿನ ಒರಿ ಬೆಸ್ಟ್-ಸೆಲ್ಲಿಂಗ್, ಪ್ರಶಸ್ತಿ ವಿಜೇತ ಲೇಖಕಿ.
ಸುತಾಪ ದಕ್ಷಿಣ ಏಷ್ಯಾದ ಎನ್ಸೈಕ್ಲೋಪೀಡಿಯಾ ಬ್ರಿಟಾನಿಕಾ ಲಿಮಿಟೆಡ್ ಬೊಕ್ಕ ಯುಫಿಯಸ್ ಲರ್ನಿಂಗ್ ಸೊಲ್ಯೂಶನ್ಸ್ ಡ್ ಪ್ರಕಟಣೆದ ನಿರ್ದೇಶಕೆರ್ ಆದ್ ಉಲ್ಲೆರ್.<ref>https://www.readomania.com/blog/reflections-of-the-road-not-taken</ref>
== ಸುರುತ ಜೀವನ ==
ಬೊಕ್ಕ ಶಿಕ್ಷಣ ಬಸು [[ಪಶ್ಚಿಮ ಬಂಗಾಳ]]ದ ಬಂಕುರಾಡ್ ಪುಟ್ಟುವೆರ್. ಅರೆನ ಅಪ್ಪೆ ಲೆಫ್ಟಿನೆಂಟ್ ಕರ್ನಲ್ ಸುಬ್ರತ ಬೋಸ್ ಸೈನ್ಯೊಡು ಅಧಿಕಾರಿ ಆದಿತ್ತೆರ್ ಬೊಕ್ಕ ಅರೆನ ಅಮ್ಮೆ ಸುಸ್ಮಿತಾ ಬೋಸ್ ಒರಿ ಇಲ್ಲದ ಕೆಲಸ ಮಲ್ಪುನಾರ್. ಅಂಬಲಾದ ಕಾನ್ವೆಂಟ್ ಆಫ್ ಜೀಸಸ್ ಅಂಡ್ ಮೇರಿಡ್ದ್ ಪದವಿ ಪಡೆಯೆರ್. ವಿಶ್ವಭಾರತಿ ವಿಶ್ವವಿದ್ಯಾಲಯ, ಶಾಂತಿನಿಕೇತನೊಡ್ದ್ ಇಂಗ್ಲಿಷ್ ಸಾಹಿತ್ಯೊಡು ಗೌರವೊಲೆನ್ ಬೊಕ್ಕ ಉತ್ತರಾಖಂಡದ ಎಚ್ ಎನ್ ಬಹುಗುಣ ವಿಶ್ವವಿದ್ಯಾಲಯೊಡ್ದ್ ಇಂಗ್ಲಿಷ್ ಸಾಹಿತ್ಯೊಡು ಸ್ನಾತಕೋತ್ತರ ಪದವಿನ್ ಪಡೆಯೆರ್. ವಡೋದರದ ಮಹಾರಾಜ ಸಾಯಜಿ ರಾವ್ ವಿಶ್ವವಿದ್ಯಾಲಯೊಡ್ದ್ ಶಿಕ್ಷಕ ಪದವಿಲಾ ಪಡೆಯೆರ್. ಆರ್ ತನ್ನ ಕಂಡನಿ ಕರ್ನಲ್ ಸಚ್ಚಿತ್ ಕುಮಾರ್ ಬಸು, ಒರಿ ಮಾಜಿ ಸೈನ್ಯದ ಅಧಿಕಾರಿ ಬೊಕ್ಕ ಕುಟುಂಬದಕುಲೆನೊಟ್ಟುಗು ದೆಹಲಿಡ್ ಜೀವನ ಮಲ್ಪುವೆರ್.<ref>https://incrediblewomenofindia.wordpress.com/2015/08/17/sutapa-basu/</ref>
== ಒರಿ ಪ್ರಕಟಣಾ ವೃತ್ತಿಪರೆ ಆದ್ ==
ಅರೆನ 47 ವರ್ಷೊದ ವೃತ್ತಿಪರ ಜೀವನೊಡು ಶೈಕ್ಷಣಿಕ ಅಧ್ಯಾಪಕೆರ್ ಬೊಕ್ಕ ಸೃಜನಶೀಲ ಬರವುದ ತರಬೇತುದಾರೆ ಆದ್ ಬೇಲೆ ಸೇರ್ದ್ ಉಂಡು. ಆಕ್ಸ್ ಫರ್ಡ್ ಯೂನಿವರ್ಸಿಟಿ ಪ್ರೆಸ್ (ಭಾರತ), ಎನ್ಸೈಕ್ಲೋಪೀಡಿಯಾ ಬ್ರಿಟಾನಿಕಾ (ದಕ್ಷಿಣ ಏಷ್ಯಾ), ಯುಫಿಯಸ್ ಲರ್ನಿಂಗ್ ಸೊಲ್ಯೂಶನ್ಸ್ ಬೊಕ್ಕ ರೀಡೋಮೇನಿಯಾಡ್ 25 ವರ್ಷದ ವೃತ್ತಿಜೀವನೊನು ವ್ಯಾಪಿಸಾಯಿನ ಒರಿ ಪ್ರಕಾಶನ ವೃತ್ತಿಪರೆ ಆದ್,ಆರ್ 400 ಡ್ದ್ ಜಾಸ್ತಿ ಶೀರ್ಷಿಕೆಲೆನ ಪ್ರಕಟಣೆನ್ ವಿನ್ಯಾಸ ಮಲ್ತೆರ್ ಬೊಕ್ಕ ಮೇಲ್ವಿಚಾರಣೆ ಮಲ್ತೆರ್.
== ಒರಿ ಲೇಖಕೆ ಆದ್ ==
ಬಸು 10 ಪುಸ್ತಕೊಲೆನ ಲೇಖಕೆರ್, ಅವುಲು ಡ್ಯಾಂಗಲ್ ಬೊಕ್ಕ ಪದ್ಮಾವತಿ,ದಿ ಲೆಜೆಂಡ್ ಆಫ್ ಗೆಂಗಿಸ್ ಖಾನ್, ದಿ ಕರ್ಸ್ ಆಫ್ ನಾದರ್ ಶಾ, ಔಟ್ ಆಫ್ ದಿ ಬ್ಲೂ, ದಿ ಅನಾಟಮಿ ಆಫ್ ಅಫೆಕ್ಷನ್, ಪ್ರಿನ್ಸೆಸ್ಸ್, ಮಾನ್ಸ್ಟರ್ಸ್ ಅಂಡ್ ಮ್ಯಾಜಿಕಲ್ ಕ್ರಿಯೇಚರ್ಸ್, ದಿ ಕರ್ಸ್ಡ್ ಇನ್ಹೆರಿಟೆನ್ಸ್, ದಿ ಬರ್ತ್ ಆಫ್ ಮೈ ರಾಷ್ಟ್ರ, ಬೊಕ್ಕ ಉಂಡು. ಡ್ಯಾಂಗಲ್ ಪಂಡ ಅರೆನ ಸುರುತ ಕಾದಂಬರಿ, ಒಂಜಿ ಮಾನಸಿಕ ಥ್ರಿಲ್ಲರ್. ಕ್ರಾಸ್ಡ್ ಅಂಡ್ ನಾಟೆಡ್, ಡೆಫಿಯೆಂಟ್ ಡ್ರೀಮ್ಸ್ ಅಂಡ್ ವೆನ್ ದೇ ಸ್ಪೋಕ್ ಸಂಕಲನೊಲೆಗ್ ಕಿರುಕಥೆಲೆನ್ ಬೊಕ್ಕ ಮ್ಯೂಸ್ ಇಂಡಿಯಾ, ಕಾಫಿಯಾನಾ, ದಿ ಡಾನ್ ಬಿಯಾಂಡ್ ವೇಸ್ಟ್ ಬೊಕ್ಕ ರೆಮೆಂಟ್ಸ್ ಆಫ್ ಲಾಸ್ ಕಬಿತೆ ಸಂಗ್ರಹೊಲೆಗ್ ಕಬಿತೆಲೆನ್ ಕೊಡುಗೆ ಕೊರ್ತೆರ್.ಆರ್ ಕ್ರಾನಿಕಲ್ಸ್ ಆಫ್ ಅರ್ಬನ್ ನೊಮಾಡ್ಸ್, ಕ್ರಾಸ್ಡ್ ಅಂಡ್ ನಾಟೆಡ್, ರುದ್ರಾಕ್ಷ - ವೆನ್ ಗಾಡ್ಸ್ ಕೇಮ್ ಕಾಲಿಂಗ್ ದ ಸಂಪಾದಕೆರ್. ಸುತಾಪ ಬಸು 2017 TOI ರೈಟ್ ಇಂಡಿಯಾ ಸೀಸನ್ 1 ಡ್ ಲೇಖಕೆರ್ ಅಮಿಶ್ ತ್ರಿಪಾಠಿ ಕೊರ್ತಿನ ಸೂಚನೆಗ್ ಪ್ರತಿಕ್ರಿಯೆ ಆದ್ ಪೌರಾಣಿಕ-ಕಾಲ್ಪನಿಕ ಪ್ರಕಾರೊಡು ಒಂಜಿ ಸಣ್ಣ ಕತೆನ್ ಬರೆಯೆರೆ ಸುರುತ ಸ್ಥಾನೊನು ಗೆಂದಿಯೆರ್.ಅರೆನ ಸುರುತ ಪುಸ್ತಕ, ಡ್ಯಾಂಗಲ್ ೨೦೧೭ಡ್ ಅತ್ಯುತ್ತಮ ಸುರುತ ಇಂಗ್ಲಿಷ್ ಕಾದಂಬರಿಗ್ ಅನುಪಮ್ ಖೇರ್ ಪ್ರಶಸ್ತಿಗ್ ನಾಮನಿರ್ದೇಶನ ಆಂಡ್. ಬಸುನ ಕತೆ, "ಕ್ಲಾಸ್ ರೂಮ್ ವೈಲ್ಸ್" ಒಂಜಿ ಇಂಗ್ಲಿಷ್ ಶಿಕ್ಷಕೆರೆನ ಶಾಲೆಡ್ ಸುರುತ ದಿನದ ಬಗ್ಗೆ ಪಾತೆರುಂಡು, ಉಂದು ಸುಜಾತಾ ಸೋನಿ ಬಲಿ ನಿರ್ದೇಶನ ಮಲ್ತಿನ "ಒನ್ಸ್ ಅಪಾನ್ ಎ ಟೈಮ್" ಪನ್ಪಿನ ನಾಟಕೊಡು ಒಂಜಿ ಕತೆ ಆದುಂಡು. ಅರೆನ ಜೋಕುಲೆಗ್ ಬರೆತಿನ ಕಾಲ್ಪನಿಕವಾಯಿನ ಪುಸ್ತಕ, ದಿ ಬರ್ತ್ ಆಫ್ ಮೈ ನೇಷನ್, ೨೦೨೦ಡ್ ಕೆಲವು ಶಾಲೆಲೆನ ವಿದ್ಯಾರ್ಥಿಲೆಗ್ ರೀಡರ್ ಆದ್ ಸೂಚಿಸವೊಂಡುಂಡು ಆರ್ 2017ಡ್ ಪ್ರಕಟವಾದ್ ಅರೆನ ಬೆಸ್ಟ್ ಸೆಲ್ಲಿಂಗ್ ಐತಿಹಾಸಿಕ ಕಾಲ್ಪನಿಕ ಪದ್ಮಾವತಿ, ದಿ ಕ್ವೀನ್ ಟೆಲ್ಸ್ ಹರ್ ಓನ್ ಸ್ಟೋರಿ ಗ್ ಪುದರ್ ಪೋಯಿನಾರ್. ಉಂದು ಹೀರೋಯಿಕ್ ವುಮೆನ್ ಆಫ್ ಇಂಡಿಯಾ ಸರಣಿಡ್ ಸುರುತ ಪುಸ್ತಕ. ದಿ ಲೆಜೆಂಡ್ ಆಫ್ ಗೆಂಘಿಸ್ ಖಾನ್ನೊಟ್ಟುಗು ಇನ್ವೇಡರ್ ಸೀರಿಸ್ ನ್ ಸುರು ಮಲ್ತಿನ ಅರೆನ ರಡ್ಡನೆ ಐತಿಹಾಸಿಕ ಕಾಲ್ಪನಿಕ ಕೃತಿ ೨೦೧೮ಡ್ ಪ್ರಕಟವಾದ್ ದಿ ಕರ್ಸ್ ಆಫ್ ನಾದರ್ ಶಾ ೮೦೧೯ಡ್ ಪ್ರಕಟವಾದ್ ಮುಂದುವರಿಂಡ್. ಅರೆನ ರಡ್ಡ್ ಸಣ್ಣ ಕತೆತ ಸಂಕಲನೊಲು ೨೦೨೦ಡ್ ಪ್ರಕಟವಾದ್ಂಡ್ ಬೊಕ್ಕ ರಡ್ಡ್ ಪುಸ್ತಕೊಲು, ದಿ ಕರ್ಸ್ಡ್ ಇನ್ಹೆರಿಟೆನ್ಸ್ (ಮೈನ್ಸ್ಟರಿ, ಪ್ರಿನ್ಸೆಸ್) ಮಾನ್ಸ್ಟರ್ಸ್ ಅಂಡ್ ಮ್ಯಾಜಿಕಲ್ ಕ್ರಿಯೇಚರ್ಸ್ ( ಐಕಾನಿಕ್ ಠಾಕೂರ್ಮಾರ್ ಝುಲಿ ನ ಬಂಗಾಳಿಡ್ದ್ ಇಂಗ್ಲಿಷ್ ಅನುವಾದ)೨೦೨೧ಡ್ ಬಿಡುಗಡೆ ಆಂಡ್. ದಿ ಬರ್ತ್ ಆಫ್ ಮೈ ನೇಷನ್ ೨೦೨೨ಡ್ ಬಿಡುಗಡೆ ಆಂಡ್ ಬೊಕ್ಕ ಪಾರ್ವತಿಬೈ (ಉಂದು ಭಾರತದ ವೀರ ಮಹಿಳೆಯರ ಸರಣಿಡ್ ರಡ್ಡನೆ ಪುಸ್ತಕ) ೨೦೨೩ಡ್ ಬಿಡುಗಡೆ ಆಂಡ್. ಇತ್ತೆ.
== ಪ್ರಶಸ್ತಿಲು ಬೊಕ್ಕ ಮಾನ್ಯತೆ ==
ದಿ ಕರ್ಸ್ ಆಫ್ ನಾದರ್ ಶಾ ಗ್ ಜೆಕೆ ಪೇಪರ್ಸ್ ಬೊಕ್ಕ ದಿ ಟೈಮ್ಸ್ ಆಫ್ ಇಂಡಿಯಾ ಸ್ಥಾಪನೆ ಮಲ್ತಿನ ಆಟ್ಹರ್ ಅವಾರ್ಡ್ಸ್ ಡ್ದ್ ಅತ್ಯುತ್ತಮ ಕಾಲ್ಪನಿಕ ಪ್ರಶಸ್ತಿ, ೨೦೨೦
ಅಮಿಶ್ ತ್ರಿಪಾಠಿಗ್ ಟೈಮ್ಸ್ ಆಫ್ ಇಂಡಿಯಾ ರೈಟ್ ಇಂಡಿಯಾ ಅಭಿಯಾನೊದ ಸುರುತ ಬಹುಮಾನ.2016
2017ಡ್ ಅತ್ಯುತ್ತಮ ಸುರುತ ಇಂಗ್ಲಿಷ್ ಕಾದಂಬರಿಗ್ ಅನುಪಮ್ ಖೇರ್ ಪ್ರಶಸ್ತಿಗ್ ನಾಮನಿರ್ದೇಶನ ಆಯೆರ್.
2021ಡ್ ಸಾರ್ವಜನಿಕ ರಾಜತಾಂತ್ರಿಕ ವೇದಿಕೆಡ್ದ್ ಪ್ರಕಟಣೆಡ್ ಶ್ರೇಷ್ಠತೆಗ್ ಪ್ರಶಸ್ತಿ.
ವುಮೆನ್ ಆಥರ್ ಅವಾರ್ಡ್ಸ್ ಬೊಕ್ಕ ವ್ಯಾಲಿ ಆಫ್ ವರ್ಡ್ಸ್ ಬುಕ್ ಅವಾರ್ಡ್ಸ್ - ದಿ ಬರ್ತ್ ಆಫ್ ಮೈ ನೇಷನ್ (೨೦೨೩) ಡ್ದ್ ಅತ್ಯುತ್ತಮ ಜವನೆರೆನ ಪುಸ್ತಕೊಗು ನಾಮನಿರ್ದೇಶನ ಆತ್ಂಡ್
<nowiki>{{Reflist}}</nowiki>
ವರ್ಗೊ:ಸ್ತ್ರೀವಾದೊ ಬುಕ್ಕೊ ಜಾನಪದೊ 2026
af8bl8p4g1crjqd9vqoen0gyo89o21y
ಪೋಪೊವ್ ಮ್ಯಾನರ್ ಹೌಸ್
0
27986
370348
365844
2026-09-28T07:41:26Z
ChiK
1136
370348
wikitext
text/x-wiki
{{Infobox historic site
| name = ಪೋಪೊವ್ ಮ್ಯಾನರ್ ಹೌಸ್
| native_name =
| native_name_lang =
| image = Споруди палацового комплексу ВДІАМЗ «Садиба Попова» 2.jpg
| caption =
| type = ಮ್ಯಾನರ್ ಹೌಸ್
| pushpin_map = Ukraine
| coordinates = {{coord|47|26|45|N|35|16|30|E|source:kolossus-ruwiki|display=inline,title}}
| location = ವಾಸಿಲಿವ್ಕಾ, ಜಾಪೊರಿಜ್ಜ್ಯಾ ಒಬ್ಲಾಸ್ಟ್
| area = {{convert|2.87|ha|acre|abbr=on}}
| founder = ವಾಸಿಲಿ ಪೊಪೊವ್
| built = 1864–1884
| original_use = ಫ್ಯಾಮಿಲಿ ಮ್ಯಾನರ್ ಹೌಸ್
| architect = ಸ್ಥಾಪನೆ ಆತುಜಿ
| architecture = ಮೂರಿಶ್ ವಾಸ್ತುಶಿಲ್ಪ, ಗೋಥಿಕ್ ಪುನರುತ್ಥಾನ ವಾಸ್ತುಶಿಲ್ಪ, ಬೇತೆ
| governing_body = ವಾಸಿಲಿವ್ಕಾ ಹಿಸ್ಟಾರಿಕಲ್ ಅಂಡ್ ಅರ್ಚಿಟೆಕ್ಟುರಲ್ ಮೂಸೆಯಂ-ರೆಸೆರ್ವೆ
| owner = ಉಕ್ರೇನ್ ಸರಕಾರ
| current_use = ಹಿಸ್ಟಾರಿಕಲ್ ಮೂಸೆಯಂ
| designation1 =
| designation1_offname = ವಾಸಿಲಿವ್ಕಾ ಹಿಸ್ಟಾರಿಕಲ್ ಅಂಡ್ ಅರ್ಚಿಟೆಕ್ಟುರಲ್ ಮೂಸೆಯಂ-ರೆಸೆರ್ವೆ ಪೋಪೊವ್ ಮ್ಯಾನರ್ ಹೌಸ್
| designation1_date = 29 ಜನವರಿ 1993
| designation1_number =
| designation2 =
| designation2_offname =
| designation2_date =
| designation2_number =
| designation3 =
| designation3_offname =
| designation3_date =
| designation3_number =
| designation4 =
| designation4_offname =
| designation4_date =
| designation4_number =
| designation5 =
| designation5_offname =
| designation5_date =
| designation5_number =
}}
ವಾಸಿಲಿವ್ಕಾ ಐತಿಹಾಸಿಕ ಬೊಕ್ಕ ವಾಸ್ತುಶಿಲ್ಪದ ಮ್ಯೂಸಿಯಂ '''ಪೊಪೊವ್ ಮ್ಯಾನರ್ ಹೌಸ್''' ಅತ್ತುಡ ವಾಸಿಲಿವ್ಸ್ಕಿ ಇಸ್ಟೋರಿಕೊ-ವಾಸ್ತುಶಿಲ್ಪ ಮ್ಯೂಸಿಯಂ ಅತ್ತುಡ ಮ್ಯೂಸಿಯಂ-ಸಾಪೋವಿಡ್ ಅತ್ತುಡ "ಸಡಿಬಾಡಿ ಮ್ಯೂಸಿಯಂ" ಅತ್ತುಡ '''ವಾಸಿಲಿವ್ಕಾ ಕೋಟೆ''' ಪಂಡ್ದ್ ಪುದರ್ ಪಡೆಯಿನವು. ಉಂದು ಒಂಜಿ ಸ್ಥಾಪಿತ ಮ್ಯೂಸಿಯಂ ಸಂಕೀರ್ಣ ಆದುಂಡು, ಉಂದು 1864 ಬೊಕ್ಕ 1884 ನಡುಟು ವಾಸಿಲಿವ್ಕಾ, ಉಕ್ರೇನ್ ಊರುದ ಸಮೀಪೊಡು ವಾಸಿಲಿ ಪೊಪೊವ್ ಜೂನಿಯರ್ (ಜನರಲ್ ವಾಸಿಲಿವ್ಕಾ ಪೊಪೊವ್ ನ ಪುಲ್ಲಿ) ನಿರ್ಮಾಣ ಮಲ್ತೆರ್.
ಉಕ್ರೇನ್ ಡ್ ಐತಿಹಾಸಿಕ ಮೀಸಲು ಪ್ರದೇಶೊಲೆನ ಪಟ್ಟಿದ ಪ್ರಕಾರ ಜನವರಿ ೨೯, ೧೯೯೩ಡ್ ಸ್ಥಳೀಯ ಇತಿಹಾಸೊಡು ಇತ್ತೆದ ವಾಸಿಲಿವ್ಕಾ ಮ್ಯೂಸಿಯಂ ದ ಜಾಗೆಡ್ ರಚನೆ ಆಂಡ್.<ref>[https://web.archive.org/web/20170217003257/http://viam.ucoz.net/index/programa_z_okhoroni_zberezhennja_ta_rozvitku_ob_ektiv_kulturnoji_spadshhini_zatverdzhena_zaporizkoju_oda/0-13 Program of the historical site]. Popov Manor House official website. 31 May 2012.</ref>
==ಮ್ಯಾನರ್ ಹೌಸ್==
ಈ ಗೋಥಿಕ್ ರಿವೈವಲ್ ವಿನ್ಯಾಸೊನು ನಿಕೋಲಸ್ ಬೆನೊಯಿಸ್ ಗ್ ಕಾರಣ ಮಲ್ತೆರ್. ಮುಖ್ಯ ಇಲ್ಲಡ್ ಒಂಜಿ ಟೆಲಿಸ್ಕೋಪ್, ಒಂಜಿ ಪಿಕ್ಚರ್ ಗ್ಯಾಲರಿ, ಬೊಕ್ಕ ಒಂಜಿ ಎಥ್ನೋಗ್ರಾಫಿಕ್ ಮ್ಯೂಸಿಯಂ ಇತ್ಯಾದಿ ಕೊಟೆನ್ ಬೊಲ್ಶೆವಿಕ್ ಲು ಲೂಟಿ ಮಲ್ತೆರ್ ಬೊಕ್ಕ ಕ್ರೈಯಿಂಗ್ ವರ್ಲ್ಡ್ ವಾರ್ ಡ್ ಜರ್ಮನ್ ಲು ಹಾಲ್ ಮಲ್ತೆರ್. 1990 ದಶಕೊಡು ಪುನಃಸ್ಥಾಪನೆಗ್ ಅಡಿಪಾಯ ಪಾಡ್ಯೆರ್.{{Citation needed|date=July 2022}}
== ಎಸ್ಟೇಟ್ ಡ್ ಶೆಲ್ಲಿಂಗ್ ಬೊಕ್ಕ ದರೋಡೆ ==
೭ ಮಾರ್ಚ್ ೨೦೨೨ಡ್, ಉಕ್ರೇನ್ ದ ಮಿಲಿಟರಿ ಆಕ್ರಮಣದ ಪೊರ್ತುಡು, ಪೊಪೊವ್ ಮ್ಯಾನರ್ ನ್ ರಷ್ಯಾದ ಸೈನಿಕೆರ್ ಗುಂಡು ಪಾರಾಯೆರ್. ಪೊಪೊವ್ ಮ್ಯಾನರ್ ದ ಅರೆನಾ-ಸ್ಥಿರ ಕಟ್ಟಡೊಗು ಹಾನಿ ಆಂಡ್.<ref>{{Cite web |title=У Запорізькій області російські окупанти обстріляли історико-архітектурний музей «Садиба Попова» у Василівці, – ФОТО {{!}} Перший Запорiзький |url=http://1news.zp.ua/v-zaporozhskoj-oblasti-rossijskie-okkupanty-obstrelyali-istoriko-arhitekturnyj-muzej-usadba-popova-v-vasilevke-foto/ |access-date=2022-07-28 |website=1news.zp.ua}}</ref>
ಮಾರ್ಚ್ ೧೩, ೨೦೨೨ಡ್, ಮ್ಯೂಸಿಯಂನ್ ರಷ್ಯಾದ ಮಿಲಿಟರಿ ಲೂಟಿ ಮಲ್ತ್ಂಡ್. ದರೋಡೆದ ಜೊತೆಗೆ, ಅಕುಲು ಆವರಣೊಗು ಹಾನಿ ಮಲ್ತೆರ್, ಕಂಡಿಲೆನ್ ಪೊಲ್ತೆರ್ ಬೊಕ್ಕ ಮಾತಾ ಬಾಕಿಲುಲೆನ್ ತುಂಡು ಮಂತೆರ್.<ref>{{Cite web |title=У Василівці російські мародери обікрали "Садибу Попова" {{!}} Перший Запорiзький |url=http://1news.zp.ua/u-vasilivczi-rosijski-maroderi-obikrali-sadibu-popova/ |access-date=2022-07-28 |website=1news.zp.ua}}</ref><ref>{{Cite web |title=В Запорожской области российские оккупанты разграбили музей: один из трофеев - мраморный унитаз |url=https://zabor.zp.ua/new/v-zaporozhskoy-oblasti-rossiyskie-okkupanty-razgrabili-muzey-odin-iz-trofeev-mramornyy-unitaz |access-date=2022-07-28 |website=zabor.zp.ua |language=ru}}</ref>
ಏಪ್ರಿಲ್ ೧೯, ೨೦೨೩ಡ್, ರಷ್ಯನ್ ಲು ಮ್ಯಾನರ್ ಡ್ದ್ ಆಸ್ತಿನ್ ತೆಪ್ಪರೆ ಸುರು ಮಲ್ತೆರ್ ಪನ್ಪಿನ ವರದಿ ಬತ್ತ್ಂಡ್.<ref>{{Cite web|url=https://zprz.city/news/view/okupanti-grabuyut-znamenitu-starovinnu-sadibu-u-zaporizkij-oblastishho-vidomo|title=Окупанти грабують знамениту старовинну садибу у Запорізькій області — що відомо|website=zprz.city|date=2023-04-19}}</ref>
== ಪೊಪೊವಿ ಎಸ್ಟೇಟ್ ದ ಮಾಲೀಕೆರ್ ==
ಭವಿಷ್ಯದ ನಗರ ಒಲೆಕ್ಸಾಂಡ್ರಿವ್ಸ್ಕ್ ದ ಸಮೀಪದ ಜಮೀನುಲೆನ್ ಸಾಮ್ರಾಜ್ಞಿ ಕ್ಯಾಥರೀನ್ II ಜನರಲ್ ವಾಸಿಲ್ ಪೊಪೊವ್ ಗ್ ದಾನ ಮಲ್ತೆರ್. ನನೊಂಜಿ ಸರ್ತಿ ವಾಸಿಲಿವ್ಕಾ ಊರು ಆಯಿನ ವಸಾಹತುದ ಸ್ಥಾಪಕೆರ್ ಆಯೆರ್. ದುಂಬು, ಈ ಪ್ರದೇಶೊನು ಕೊಸಾಕ್ ಚಳಿಗಾಲದ ಕ್ವಾರ್ಟರ್ಸ್ ಗ್ ಬಳಕೆ ಮಲ್ತೊಂದಿತ್ತೆರ್ ಬೊಕ್ಕ ಉಂದೆಟ್ ಕೆಲವು ಫಾರ್ಮ್ ಲು ಇತ್ತ್ಂಡ್. ಜನರಲ್ ನ ಪುಲ್ಲಿ, ವಾಸಿಲ್ ಪೊಪೊವ್, ೧೯ನೆ ಶತಮಾನೊದ ದ್ವಿತೀಯಾರ್ಧೊಡು ಒಂಜಿ ಮಲ್ಲ ಪ್ರಮಾಣೊದ ನಿರ್ಮಾಣ ಯೋಜನೆನ್ ಸುರು ಮಲ್ತೆರ್. ೧೯೧೭ ರ ಅಕ್ಟೋಬರ್ ಕ್ರಾಂತಿ ಮುಟ್ಟ ಪೊಪೊವ್ ಕುಟುಂಬ ಈ ಎಸ್ಟೇಟ್ ನ್ ಒಟ್ಟು ಮಲ್ತೆರ್.
== ಎಸ್ಟೇಟ್ ದ ನಿರ್ಮಾಣ ==
ಯೋಜನೆದ ಸ್ಥಾಪಕೆರೆನ್ ಗುರುತಿಸರೆ ಸಾಧ್ಯ ಇಜ್ಜಿ. ಬಹುಶಃ ಉಂದು ಸಂಶೋಧಕೆರೆಗ್ ಸಮಸ್ಯೆಲೆನ್ ಉಂಟು ಮಲ್ಪುಂಡು. ಸಂಭಾವ್ಯ ವಾಸ್ತುಶಿಲ್ಪಿಲೆಡ್ ಒರಿಯೆ ಒರಿ ಸ್ಥಳೀಯ ವಾಸ್ತುಶಿಲ್ಪಿ, ಒಲೆಕ್ಸಾಂಡರ್ ಅಗೇಯೆಂಕೊ ಆದು ಉಲ್ಲೆರ್. ಆ ಶೈಲಿ ಲಕ್ಷಣೊಲೆನ್ ತೂನಗ, ವಾಸ್ತುಶಿಲ್ಪಿಲೆಡ್ ಒರಿ ಸೈಂಟ್ ಪೀಟರ್ಸ್ ಬರ್ಗ್ ಡ್ದ್ ಬೆನೊಯಿಟ್ ನಿಕೊಲಾಯ್ ಲಿಯೊಂಟಿವಿಚ್ (೧೮೧೩-೧೮೯೮) ಆದಿತ್ತೆರ್. ಮ್ಯಾನರ್ ದ ನಿರ್ಮಾಣ 20 ವರ್ಸೊಗು ನಡತ್ಂಡ್ (1864-1884), ಬೊಕ್ಕ ಉಂದು ಪೂರ್ವ ಉಕ್ರೇನ್ ದ ಮ್ಯಾನರ್ ಲೆಡ್ ಮಲ್ಲೆ ಆಂಡ್. ೧೯ನೆ ಶತಮಾನೊದ ಐತಿಹಾಸಿಕ ಶೈಲಿಡ್ ನಿರ್ಮಾಣ ಆಯಿನ ಈ ಕೋಟೆಡ್ ಉತ್ತರ ಇಟಾಲಿಯನ್ ನವೋದಯ, ಗೋಥಿಕ್ ಬೊಕ್ಕ ಮೂರಿಶ್ ಲಕ್ಷಣೊಲು ಉಂಡು. ವಾಸಿಲಿವ್ಕಾಡ್ ಪೊಪೊವ್ ನ ಸ್ವಂತ ಕಾರ್ಖಾನೆಲೆಡ್ದ್ ಕೆಂಪು ಇಟ್ಟಿಗೆಡ್ದ್ ಕಟ್ಟಡೊಲೆನ್ ನಿರ್ಮಾಣ ಮಲ್ತೆರ್.
ವಿ. ಎಸ್. ಪೊಪೊವ್ ರಾಜಮನೆತನೊಲೆನ ಬೊಕ್ಕ ಉದ್ಯಾನೊಲೆನ ನಿರ್ಮಾಣೊದ ಕಚೇರಿದ ವ್ಯವಸ್ಥಾಪಕೆರ್ ಆದಿತ್ತೆರ್. ಒಂಜಿ ನಿಶ್ಚಿತ ಅವಧಿಡ್, ವೃತ್ತಿಜೀವನದ ಏರಿಳಿತೊಲೆನ ನಡುಟು, ಆರೋಗ್ಯ ಸಮಸ್ಯೆಲೆಡ್ದ್ ಕೌಂಟ್ ಸೇವೆನ್ ಬುಡ್ದು ತನ್ನ ಎಸ್ಟೇಟ್ ಲೆನ್ ಏರ್ಪಾಡ್ ಮಲ್ಪೆರೆ ಸುರು ಮಲ್ತೆರ್. ಪೊಪೊವ್ ಗ್ ಅವುಲು ಮಸ್ತ್ ಇತ್ತ್ಂಡ್: ಯೆಕಟೆರಿನೋಸ್ಲಾವ್, ಖೆರ್ಸನ್, ತಾವ್ರಿಯಾ, ಮಿನ್ಸ್ಕ್ ಪ್ರಾಂತ್ಯೊಲೆಡ್, ಬೊಕ್ಕ ಉರಲ್ಸ್ ಡ್.
== ಎಸ್ಟೇಟ್, ಹಾಳ್ ಆಯಿನ ಕಟ್ಟಡೊದ ವಿವರಣೆ ==
ಅರಮನೆ ಬೊಕ್ಕ ಉದ್ಯಾನವನ ಸಂಕೀರ್ಣೊದ ಮುಖ್ಯ ಕಟ್ಟಡ ಪಂಡ ಕೋಟೆ. ತಾಂತ್ರಿಕ ವಿನ್ಯಾಸೊನು ವಾಸ್ತುಶಿಲ್ಪಿ ಸ್ಟಂಕ್ಲ್ ಮಲ್ತೆರ್. ಈ ಕೋಟೆನ್ ಇಟ್ಟಿಗೆಡ್ ನಿರ್ಮಾಣ ಮಲ್ತೆರ್, ರಡ್ಡ್ ಮಹಡಿದ, ಅಯಿತ ಮೂಲ ರೂಪೊಡು, ಬೊಕ್ಕ ಐನ್ ಗೋಪುರೊಲೆನ್ ದೀದ್, ಅವುಲು ಮೂಜಿ ಗೋಪುರೊಲೆನ್ ಟೆಂಟ್ ದ ಛಾವಣಿಲೆನ್ ದೀದ್ ಇತ್ತೆರ್. ಈ ಕಟ್ಟಡೊದ ಅಳತೆ {{Convert|42 by 45|m|ft|abbr=on}}, ವೈನ್ ಸೆಲ್ಲರ್ ಲೆನ್ ದೀತಿನ ಅಡಿಪಾಯೊಲು ಉಂಡು. ಕೋಟೆಡ್ ಸ್ನಾನಗೃಹೊಲು (ಫಿನ್ನಿಷ್, ರೋಮನ್, ಇತ್ಯಾದಿ), ಒಂಜಿ ಬಾಲ್ ರೂಮ್, ಲಿವಿಂಗ್ ರೂಮ್ ಲು, ಒಂಜಿ ಆರ್ಟ್ ಗ್ಯಾಲರಿ, ಒಂಜಿ ಲೈಬ್ರರಿ, ಬೊಕ್ಕ ಒಂಜಿ ಪಿರಾಕ್ದ ಶಸ್ತ್ರಾಸ್ತ್ರೊಲೆನ ಸಂಗ್ರಹ ಉಂಡು. ೧೯೦೭ಡ್, ಒಂಜಿ ಜನಾಂಗೀಯ ವಸ್ತುಸಂಗ್ರಹಾಲಯೊನು ಏರ್ಪಾಡ್ ಮಲ್ತೆರ್, ಅಲ್ಪ ೧೫ ಬೇತೆ ಬೇತೆ ರಾಷ್ಟ್ರೀಯ ಸಂಸ್ಕೃತಿಲೆನ ಪ್ರದರ್ಶನೊಲೆನ್ ಪ್ರಸ್ತುತ ಮಲ್ತೆರ್. 20ನೆ ಶತಮಾನೊದ ಸುರುಟು, ಈ ಎಸ್ಟೇಟ್ ಡ್ ಒಂಜಿ ಹವಾಮಾನ ಬೊಕ್ಕ ವಿದ್ಯುತ್ ಕೇಂದ್ರೊನು ಸ್ಥಾಪನೆ ಮಲ್ತೆರ್. ಪೊಪೊವ್ ಎಸ್ಟೇಟ್ ದ ಹವಾಮಾನ ಕೇಂದ್ರೊನು ರಷ್ಯಾದ ಸಾಮ್ರಾಜ್ಯೊದ ಹವಾಮಾನ ಸೇವೆಲೆನ ಜಾಲೊಡು ಸೇರ್ಪಾದ್ಂಡ್. ಎಸ್ಟೇಟ್ ದ ಛಾವಣಿಡ್ ದೂರದರ್ಶಕೊಡು ಒಂಜಿ ಖಗೋಳಶಾಸ್ತ್ರೀಯ ವೀಕ್ಷಣಾಲಯೊನುಲಾ ಏರ್ಪಾಡ್ ಮಲ್ತೆರ್. ದೂರದರ್ಶಕೊಡು ಉಪ್ಪುನ ಟೆರೇಸ್ ನ್ ಇಟಾಲಿಯನ್ ಮಾಸ್ಟರ್ ಲಾಂಗೊಬಾರ್ಡಿ ಶಿಲ್ಪೊಲೆಡ್ ಅಲಂಕರಿಸಯೆರ್. ಮುಖ್ಯ ಇಲ್ಲ್ ದ ಜೊತೆಗೆ, ಎಸ್ಟೇಟ್ ಡ್ ಕುದುರೆದ ಕುದುರೆಲು, ಕಚೇರಿದ ಆವರಣ, ಒಂಜಿ ಲ್ಯಾಂಡ್ ಸ್ಕೇಪ್ ಪಾರ್ಕ್, ಬೊಕ್ಕ ಫೌಂಟೇನ್ ಲು ಇತ್ತ್ಂಡ್.
== ಸೋವಿಯೆತ್ ಕಾಲೊಡು ಇತ್ತಿನ ಕೋಟೆ ==
ಅಕ್ಟೋಬರ್ ಕ್ರಾಂತಿ ಬೊಕ್ಕ ಸುರುತ ವಿಶ್ವ ಯುದ್ಧ ಎಸ್ಟೇಟ್ ದ ಮಾಲೀಕೆರ್ ಯೂರಿ ಪೊಪೊವ್ ನ್ ಆಸ್ತಿನ್ ಉಳಾಯೆರೆ ಪ್ರೇರೇಪಿಸಯೆರ್. ದಂತಕಥೆದ ಪ್ರಕಾರ, ಆರ್ ಕೆಲವು ಮೌಲ್ಯದ ವಸ್ತುಲೆನ್ ದೆತ್ತ್ ಪಾಡೆರೆ ಸಾಧ್ಯ ಆಂಡ್. ಗ್ರಂಥಾಲಯೊದ ಪುಸ್ತಕೊಲು, ಪೀಠೋಪಕರಣೊಲು, ಜನಾಂಗೀಯ ಸಂಗ್ರಹೊಲು, ಚಿತ್ರಕಲೆಲು, ಬೊಕ್ಕ ಶಿಲ್ಪೊಲೆನ್ ಲೂಟಿ ಮಲ್ತೆರ್ ಅತ್ತ್ಂಡ ನಾಶ ಮಲ್ತೆರ್. ಕೋಟೆ, ಉದ್ಯಾನವನ, ಬೊಕ್ಕ ಸುತ್ತಮುತ್ತದ ಓಕ್ ಮರ, ಉಂದೆನ್ ಮರಕ್ ಕಡ್ತ್ ದ್ ದೀಯೆರ್, ಮಸ್ತ್ ನಷ್ಟ ಆಂಡ್. ರಡ್ಡನೆ ವಿಶ್ವ ಯುದ್ಧದ ಸುರುತ ಮುಟ್ಟ, ಎಸ್ಟೇಟ್ ದ ಕಟ್ಟಡೊಲೆಡ್ ಒಂಜಿ ಪಂಜಿಲೆನ ಕೋಣೆ ಇತ್ತ್ಂಡ್.
೧೯೩೪ಡ್, ಒಂಜಿ ಸ್ಥಳೀಯ ಸಾಂಸ್ಕೃತಿಕ ಕೇಂದ್ರೊದ ನಿರ್ಮಾಣೊಗು ಎಸ್ಟೇಟ್ ದ ಕಟ್ಟಡೊಲೆನ ಒಂಜಿ ಭಾಗೊನು ಕೆತ್ತುದು ಪಾಡ್ದೆರ್. ಮರತ್ತ ಕಮಾನುಲು ಬೊಕ್ಕ ಚಾವಣಿಲು ಬೊಕ್ಕ ಭಾಗಶಃ ಛಾವಣಿಲು ಮುರಿದ್ ಪೋಯಿನವು. ೧೯೫೪ಡ್, ಸೋವಿಯೆತ್ ಅಧಿಕಾರಿಲೆನ ನಿರ್ಧಾರೊಡು, ವಾಸಿಲಿವ್ಕಾಡ್ ಪೊಪೊವ್ ಕುಟುಂಬೊಲಾ ನಿರ್ಮಾಣ ಮಲ್ತಿನ ಸೈಂಟ್ ಪೀಟರ್ ಬೊಕ್ಕ ಪಾಲ್ ಕ್ಯಾಥೆಡ್ರಲ್ ನ್ ನಾಶ ಮಲ್ತೆರ್. ನನೊಂಜಿ ಸರ್ತಿ, ಮಾನಸಿಕ ಅಸ್ವಸ್ಥ ಜೋಕುಲೆಗ್ ಒಂಜಿ ಶಾಲೆನ್ ಎಸ್ಟೇಟ್ ದ ಕುದುರೆ ಕೋಣೆಡ್ ಸ್ಥಾಪನೆ ಮಲ್ತೆರ್. ಗಾಡಿದ ಕೊಟ್ಟಿಗೆನ್ ರಡ್ಡನೆ ಮಹಡಿಗ್ ಸೇರಾವೊಂಡೆರ್, ಬೊಕ್ಕ ಖಾಲಿ ಆಯಿನ ಪ್ರದೇಶೊಡು ಒಂಜಿ ಸ್ಥಳೀಯ ತಾಂತ್ರಿಕ ಶಾಲೆಗ್ ಒಂಜಿ ವಸತಿ ನಿಲಯೊನು ನಿರ್ಮಾಣ ಮಲ್ತೆರ್. ಆ ಸಂಕೀರ್ಣೊನು ಭಾಗಶಃ ನಾಶ ಮಲ್ತೆರ್ ಬೊಕ್ಕ ಕಟ್ಟಡೊದ ಸಾಮಗ್ರಿಲೆನ್ ಸ್ಥಳೀಯ ನಿವಾಸಿಲು ಕಲ್ವೆತನೊ ಮಲ್ತೆರ್.
==ಚಿತ್ರೊಲು==
<gallery>
File:Model of Castle of Popov.jpg|ಪುನರ್ನಿರ್ಮಾಣ ಆಯಿನ ಮಾದರಿ
File:Дворцовый комплекс "Усадьба Попова". Васильевка, Запорожская область, Украина 09.jpg|ಒಂಜಿ ಭಾಗೊ
File:Дворцовый комплекс "Усадьба Попова". Васильевка, Запорожская область, Украина 01.jpg|ಕುಡೊಂಜಿ ಭಾಗ
File:Vasylivka Palatsoviy Kompleks Sadyba Popova Oglyadova Bashta 02 Gagarina 16 (YDS 8872).jpg|ಸ್ಪಾಟಿಂಗ್ ಟವರ್
File:Castle of Popov in Vasylivka.JPG|ಉಕ್ರೇನ್ ದ ವಾಸಿಲಿವ್ಕಾಡ್ ಪೊಪೊವ್ ನ ಕೋಟೆ ಅತ್ತ್ಂಡ ಮ್ಯಾನರ್ ಇಲ್ಲ್ ದ ಪಿರವುದ ಗೋಡೆ
File:Popov's Castle Vasilivka Yuriy Monosov Northern Fleet.jpg|ಉಕ್ರೇನ್ ದ ವಾಸಿಲಿವ್ಕಾಡ್ ಪೊಪೊವ್ ನ ಕೋಟೆ ಅತ್ತ್ಂಡ ಮ್ಯಾನರ್ ಇಲ್ಲ್ ದ ಪಿರವುದ ಗೋಡೆ
</gallery>
==ಇಂಚಲಾ ತೂಲೆ==
* ಉಕ್ರೇನ್ ಡ್ ಐತಿಹಾಸಿಕ ಮೀಸಲು ಪ್ರದೇಶೊಲೆನ ಪಟ್ಟಿ
==ಉಲ್ಲೇಕೊಲು==
{{Reflist}}
== ಬಾಹ್ಯ ಕೊಂಡಿಗಳು ==
{{commons category|Popov manor}}
* [http://viam.ucoz.net/ Official website]
tfycc9on9pzmlifjvbs4ueohd0tm6qf
ಬಳಕೆದಾರೆ:ChiK/ಕಲ್ಪುನಕಳ/ಸಮುದಾಯ ಕೊತ್ತ್ ಪಲಕೆ/divbox
2
28265
370277
370266
2026-09-27T14:32:11Z
ChiK
1136
370277
wikitext
text/x-wiki
<templatestyles src="Wikipedia:Community bulletin board/divbox/styles.css" />
<div class="wp-comm-bulletin">
<div class="wp-comm-bulletin-box wp-comm-bulletin-events">
<div class="wp-comm-bulletin-header">ಲೇಸುಲು ಬುಕ್ಕೊ ಯೋಜನೆಲು <small>[[Special:EditPage/Wikipedia:ಸಮುದಾಯ ಕೊತ್ತ್ ಪಲಕೆ|[ಸೇರಲೆ]]]</small></div>
{{{1}}}
{|style="width:100%;"
|+ class="plainlinks" | '''{{#time:F Y}}ದ [[WP:ಕೂಡುಕೂಟೊ|ಕೂಡುಕೂಟೊಲು]]''' [{{fullurl:Template:ಕೂಡುಕೂಟೊ/{{#time:F Y}}|action=edit&preview=yes}} +/-]
|-
|{{ಕೂಡುಕೂಟೊ/{{#time:F Y}}}}
|-
|}
<br />
{|style="width:100%;"
|+ class="plainlinks" | '''{{#time:F Y|first day of this month +1 month}}ದ [[WP:ಕೂಡುಕೂಟೊ|ಕೂಡುಕೂಟೊಲು]]''' [{{fullurl:Template:ಕೂಡುಕೂಟೊ/{{#time:F Y|first day of this month +1 month}}|action=edit&preview=yes}} +/-]
|-
|{{ಕೂಡುಕೂಟೊ/{{#time:F Y|first day of this month +1 month}}}}
|-
|}
</div>
<div class="wp-comm-bulletin-box wp-comm-bulletin-wp-notices">
<div class="wp-comm-bulletin-header">[[Wikipedia:ವಿಕಿಯೋಜನೆ|ವಿಕಿಯೋಜನೆ]] ಸೂಚನೆಲು <small>[[Special:EditPage/Wikipedia:ಸಮುದಾಯ ಕೊತ್ತ್ ಪಲಕೆ|[ಸೇರಲೆ]]]</small></div>
{{{2}}}
</div>
<div class="wp-comm-bulletin-box wp-comm-bulletin-news">
<div class="wp-comm-bulletin-header">[[Wikipedia:ತಾಂತ್ರಿಕ ಸುದ್ದಿ|ತಾಂತ್ರಿಕ ಸುದ್ದಿ]]</div>
{{{3}}}
</div>
<div class="wp-comm-bulletin-box wp-comm-bulletin-rfcs">
<div class="wp-comm-bulletin-header">[[Wikipedia:Requests for comment|ಪ್ರತಿಕ್ರಿಯೆಗ್ ವಿನಂತಿಲು]]</div>
{{{4}}}
</div>
<div class="wp-comm-bulletin-box wp-comm-bulletin-notices">
<div class="wp-comm-bulletin-header">ಸಾಮಾನ್ಯ ಸೂಚನೆಲು</div>
{{{5}}}
</div>
<div class="wp-comm-bulletin-box wp-comm-bulletin-other">
{{{6}}}
</div>
</div>
tlq8wj25ewnlkykl6z1bo8i64hb6cd1
ವಿಕಿಪೀಡಿಯ:ತಾಂತ್ರಿಕ ಸುದ್ದಿ
4
28314
370512
370269
2026-09-28T10:48:39Z
MediaWiki message delivery
407
/* Tech News: 2026-40 */ಪೊಸ ವಿಭಾಗ
370512
wikitext
text/x-wiki
{{Archives}}{{User:MiszaBot/config
| algo = old(30d)
| archive = ವಿಕಿಪೀಡಿಯ:ತಾಂತ್ರಿಕ ಸುದ್ದಿ/ಆರ್ಕೈವ್ %(counter)d
| counter = 9
| maxarchivesize = 150K
| archiveheader = {{Archive}}
| minthreadstoarchive = 1
| minthreadsleft = 3
}}ಇವರೊಲೆಗ್ [[m:Tech/News|ತಾಂತ್ರಿಕ ಸುದ್ದಿಲೆನ್]] ತೂಲೆ, ಬುಕ್ಕೊ ಚಂದಾದಾರಿಕೆಗ್ ಸೈನ್-ಅಪ್ ಮಲ್ಪುಲೆ. {{tl|Latest tech news}} ಟೆಂಪ್ಲೇಟ್ನ್ಲಾ ತೂಲೆ.
[[Category:ವಿಕಿಪೀಡಿಯ ಸುದ್ದಿ|ತಾಂತ್ರಿಕ]]
== <span lang="en" dir="ltr">Tech News: 2026-38</span> ==
<div lang="en" dir="ltr">
<section begin="technews-2026-W38"/><div class="plainlinks">
Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/38|Translations]] are available.
'''Weekly highlight'''
* The Future Audiences team has started a [[en:Special:MyLanguage/Wikipedia:Village pump (proposals)#New proposed experiment to let readers know about “Google preferred sources”|discussion on English Wikipedia]] about a proposed new experiment to show a temporary notice about the new [https://blog.google/products-and-platforms/products/search/original-high-quality-content-search/ Google Preferred Sources] feature to Wikipedia readers coming from Google. The experiment is to test whether this notice makes visitors come back to Wikipedia more often. Preferred Sources feature lets users choose websites they trust so Google can highlight content from those sources more prominently in Search and AI experiences. We are interested in testing this on other languages that Google supports and would welcome assistance with starting conversations on other wikis. If interested, please reach out to Future Audiences on the [[m:Special:MyLanguage/Future Audiences/Preferred sources|talk page]].
'''Updates for editors'''
* The chat platform Discord is releasing a new self-service framework that websites can use to specify how their links should look when shared on Discord. The Future Audiences team is planning to start using this new framework to improve how Wikipedia links look when shared on Discord, giving better attribution and credit to contributors. The link appearance and behavior won't change in the first phase of this project as we want to first collect some baseline data to assess the impact of future changes. However, if community members who are active on Discord spot any issues, they can reach out on [[phab:tag/future-audiences/|Phabricator]] or [[m:Special:MyLanguage/Future Audiences|Metawiki]].
* The Reader Growth team will be running an experiment to test whether [[mw:Special:MyLanguage/Readers/Reader_Growth/Compact Lead|compacting article lead sections on mobiles]] with the addition of a "read more" button improves reader retention. The test will begin on September 17 on Arabic, Spanish, French, Indonesian, Italian, Japanese, Portuguese, Vietnamese, and Chinese Wikipedias and will run for four weeks.
* All wikis will be [[m:Special:MyLanguage/Tech/Server switch|read-only for a few minutes]] on September 23. This is planned at 14:00 UTC. More information will be published in Tech News and will also be posted on individual wikis in the coming week. [https://phabricator.wikimedia.org/T433363]
* [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:28}} community-submitted {{PLURAL:28|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, an issue where [https://wikistats.wmcloud.org/ Wikistats] for Wikipedias was returning an HTTP 500 error and could not be reached, has now been fixed. [https://phabricator.wikimedia.org/T435959]
'''Updates for technical contributors'''
* Developers who maintain a tool that queries the Wikimedia Commons links tables need to update their code to connect to the new x4 database cluster. The links tables have been moved from the s4 cluster to x4, and will no longer receive updates on s4. The page and redirect tables remain available on both clusters. A wiki replica for the x4 cluster will be set up afterwards. The change is being made because the s4 cluster has grown too large to operate efficiently. You can [[wikitech:Special:MyLanguage/News/2026 Commons links tables database split|read more]].
* [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.47/wmf.20|MediaWiki]]
'''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]] • [[m:Special:MyLanguage/Tech/News#contribute|Contribute]] • [[m:Special:MyLanguage/Tech/News/2026/38|Translate]] • [[m:Tech|Get help]] • [[m:Talk:Tech/News|Give feedback]] • [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].''
</div><section end="technews-2026-W38"/>
</div>
<bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> ೨೧:೦೦, ೧೪ ಸಪ್ಟಂಬರ್ ೨೦೨೬ (IST)
<!-- Message sent by User:STei (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=31039826 -->
== <span lang="en" dir="ltr">Tech News: 2026-39</span> ==
<div lang="en" dir="ltr">
<section begin="technews-2026-W39"/><div class="plainlinks">
Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/39|Translations]] are available.
'''Weekly highlight'''
* [[m:Special:MyLanguage/Tech/Server switch|All wikis will be read-only]] for a few minutes on Wednesday, 23 September 2026 at [https://zonestamp.toolforge.org/1790172000 14:00 UTC]. This is for the datacenter server switchover backup tests, [[wikitech:Special:MyLanguage/Deployments/Yearly calendar|which happen twice a year]]. During the switchover, all Wikimedia website traffic is shifted from one primary data center to the backup data center to test availability and prevent service disruption even in emergencies. [https://phabricator.wikimedia.org/T433363]
'''Updates for editors'''
* The Growth team tested a new post-edit notice designed to [[mw:Special:MyLanguage/Contributors/Account Creation Experiments#4. Encourage Temporary Accounts to Register|encourage Temporary Account holders to register for a permanent account]]. The new notice replaced multiple dialogs and a simultaneous welcome notification with a single message highlighting the benefits of creating an account. The experiment increased permanent account creation from 1.94% to 3.66%, an 87% relative increase. The change will now be released to all wikis. [https://phabricator.wikimedia.org/T433551]
* For Wikipedia editors using the [[Special:Preferences#mw-prefsection-betafeatures|"Suggestion mode" Beta Feature]], there is a [[Special:Preferences#mw-input-wpvisualeditor-editcheck-experimental|new opt-in user preference]] for showing "experimental" edit checks and suggestions. These types are listed at [[Special:EditChecks#experimental-checks|Special:EditChecks]], and are intended for early developer-testing and for gathering feedback from experienced users. Administrators can change the [[mw:Special:MyLanguage/Edit check/Configuration|configuration details]] for each suggestion as usual. Administrators can also [[mw:Special:MyLanguage/Help:Suggestion mode#Experimental Suggestions|use this feature]] to help test their community's ideas for locally created checks and suggestions. Experimental types will have a more distinct visual style later this week. [[mw:Talk:VisualEditor/Suggestion Mode|Feedback is welcome]].
* The [[m:CEE Technical Village Pump|CEE Technical Village Pump]] has been launched as a space for technical discussions and collaboration among Wikimedia communities in Central and Eastern Europe.
* A new tool, [[mw:Special:MyLanguage/Language Onboarding and Development/Starter kit|Starter Kit]], is now available for new and small language Wikipedia communities. It brings together guided tasks, tools, and resources to help communities get started, monitor their progress, and collaborate with the broader Wikimedia community. Starter Kit is hosted on Wikimedia Toolforge and is designed for Wikipedias with fewer than 50,000 articles. Learn more about how Starter Kit works and how communities have been using it in [[diffblog:2026/09/18/introducing-starter-kit-for-new-and-small-language-wikipedias/|this Diff blog post]].
* The Reader Growth team is launching a retest of the [[mw:Special:MyLanguage/Readers/Reader Growth/Image Browsing|image carousel experiment]]. The retest will use three new versions of the design, updated based on community feedback. The team will assess results and determine with communities whether or not to proceed with the feature. The experiment will begin the week of September 28 and will run on Arabic, Bengali, Chinese, Czech, English, Farsi, French, German, Indonesian, Japanese, Polish, Portuguese, Spanish, Swedish, and Vietnamese Wikipedias.
* After successful rollouts to Arabic, Bengali, Chinese, Czech, English, French, Indonesian, and Vietnamese Wikipedias, the [[mw:Special:MyLanguage/Readers/Reader Experience/Reading lists|Reading Lists feature]] from the Reader Experience team will be available to all logged-in users on all Wikipedia wikis starting September 28.
* [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:28}} community-submitted {{PLURAL:28|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, an issue where the mentor status script repeatedly updated mentors’ status even when nothing had changed, creating unnecessary Recent Changes entries, has now been fixed. [https://phabricator.wikimedia.org/T436659]
'''Updates for technical contributors'''
* The <bdi lang="zxx" dir="ltr"><code><nowiki>abusefilters</nowiki></code></bdi> list query API, used to retrieve specific details about active or historical abuse filters configured on a wiki, has been updated to support the <bdi lang="zxx" dir="ltr"><code><nowiki>formatversion=2</nowiki></code></bdi> configuration parameter, thereby leading to breaking changes to the API response. All users who maintain user-scripts or other code need to check if they use the <bdi lang="zxx" dir="ltr"><code><nowiki>abusefilters</nowiki></code></bdi> list query API, and respond to any breaking changes. [https://phabricator.wikimedia.org/T435828]
* [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.47/wmf.21|MediaWiki]]
'''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]] • [[m:Special:MyLanguage/Tech/News#contribute|Contribute]] • [[m:Special:MyLanguage/Tech/News/2026/39|Translate]] • [[m:Tech|Get help]] • [[m:Talk:Tech/News|Give feedback]] • [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].''
</div><section end="technews-2026-W39"/>
</div>
<bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 17:26, 27 ಸಪ್ಟಂಬರ್ 2026 (IST)
<!-- Message sent by User:STei (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=31085309 -->
== <span lang="en" dir="ltr">Tech News: 2026-40</span> ==
<div lang="en" dir="ltr">
<section begin="technews-2026-W40"/><div class="plainlinks">
Latest '''[[m:Special:MyLanguage/Tech/News|tech news]]''' from the Wikimedia technical community. Please tell other users about these changes. Not all changes will affect you. [[m:Special:MyLanguage/Tech/News/2026/40|Translations]] are available.
'''Updates for editors'''
* Users of default skins on desktop and mobile web (Vector 2022 and Minerva respectively) will now be informed if the search suggestions displayed as they type into Search come from page redirects. Previously, users could get confused when the top search suggestions did not match exactly what they had typed. The new redirect notice clarifies that these suggestions are not random, but related to the search. The suggested pages may be redirects to the most relevant destination articles being searched for. [https://phabricator.wikimedia.org/T303013]
* Logged-out Wikipedia users on mobile web will begin to see a bookmark button for saving articles to their [[mw:Special:MyLanguage/Readers/Reader Experience/Reading lists|reading lists]] instead of the current Watchstar button. When clicked, the bookmark button prompts users to log in or create an account to save an article for later. An earlier experiment found that the bookmark icon was four times more likely than the Watchstar button to encourage logged-out users to create an account. This change is part of efforts to encourage more readers to become account holders and use features that help them save and return to content. [https://phabricator.wikimedia.org/T438769]
* An experiment will begin on September 29 on Spanish, Arabic, English, and French Wikipedias to simplify the experience users encounter immediately after account creation. The test will explore whether removing friction from the current Welcome Survey helps new users understand what to do next more easily. The experiment will run through the end of October. [https://phabricator.wikimedia.org/T430058]
* The [[m:Special:MyLanguage/Product and Technology Advisory Council|Product and Technology Advisory Council]] has put out a call for the community to suggest topics that it should consider and discuss with the Wikimedia Foundation. Editors and technical contributors are invited to add topics to [[m:Talk:Product and Technology Advisory Council|the council's talk page]].
* Later this week, it will be possible for communities to configure [[mw:Special:MyLanguage/Help:Edit check|Edit Checks and Suggestions]] so that they are [[mw:Special:MyLanguage/Edit check/Configuration#extraNamespaces|shown within additional namespaces]], such as a <bdi lang="zxx" dir="ltr"><code><nowiki>Draft:</nowiki></code></bdi> namespace. [[mw:Talk:VisualEditor/Suggestion Mode|Feedback is welcome]].
* A bug in the [[m:Special:GlobalWatchlist|Global Watchlist]] is causing the page to fail to load for users that have unseen changes on Wikimedia Commons. Developers are working on a fix. Until then, affected users can follow the workarounds described in the [[mw:Special:MyLanguage/Extension:GlobalWatchlist#GlobalWatchlist temporarily broken for users with Wikimedia Commons|relevant]] help section.
* New magic words <bdi lang="zxx" dir="ltr"><code><nowiki>{{CATEGORYSORT:TIMESTAMP}}</nowiki></code></bdi> and <bdi lang="zxx" dir="ltr"><code><nowiki>{{CATEGORYSORT:RTIMESTAMP}}</nowiki></code></bdi> are now available for use. They are able to change the default sorting of categories to be based on timestamp of categorization. [https://phabricator.wikimedia.org/T433768]
* [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] View all {{formatnum:20}} community-submitted {{PLURAL:20|task|tasks}} that were [[m:Special:MyLanguage/Tech/News/Recently resolved community tasks|resolved last week]]. For example, the issue where [https://wikistats.wmcloud.org/ Wikistats] for Wikipedias was not reachable has now been fixed. [https://phabricator.wikimedia.org/T435959]
'''Updates for technical contributors'''
* The datacenter switchover, scheduled on September 23, has been postponed. [[diffblog:2025/03/12/hear-that-the-wikis-go-silent-twice-a-year/|The equinox exercise]] revealed capacity issues, preventing the switch of all services to the other datacenter. The process has been paused, prioritizing investigating that issue, to ensure that we continue to be able to serve our users reliably. A new exercise will be scheduled. Meanwhile, all traffic and edits continue to work as usual.
* On September 23, a power loss briefly affected all wikis, creating intermittent issues on both reading and editing modes. This also affected Gerrit. This is unrelated to the datacenter switchover postponement. [https://www.wikimediastatus.net/incidents/9fm19t8qykk8]
* [[mw:Special:MyLanguage/Help:Extension:Produnto|Produnto]] has been deployed to mediawiki.org and [[phab:T421436|some Indic language wikis]]. We want to hear your feedback on this experimental product. Produnto allows users to use Lua modules hosted in [[gitlab:repos/lua|Wikimedia's GitLab]]. It simplifies the sharing of Lua code between wikis. Instead of copying each individual Lua module from one wiki to another, users will be able to easily share packages across all wikis.
* [[File:Reload icon with two arrows.svg|12px|link=|class=skin-invert|Recurrent item]] Detailed code updates later this week: [[mw:MediaWiki 1.47/wmf.22|MediaWiki]]
'''Meetings and events'''
* A [[m:Event:Cross-wiki Code Collaboration Workshop|Cross-wiki code collaboration workshop]] will be held online on October 2 at 12:30 UTC, bringing together South Asian technical contributors to learn about Produnto and begin piloting it on Hindi, Punjabi, Odia, Telugu, and Malayalam Wikipedias. Produnto is a package manager for deploying Lua modules hosted on GitLab to Wikimedia wikis, and was recently deployed on some pilot wikis.
'''''[[m:Special:MyLanguage/Tech/News|Tech news]]''' prepared by [[m:Special:MyLanguage/Tech/News/Writers|Tech News writers]] and posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|bot]] • [[m:Special:MyLanguage/Tech/News#contribute|Contribute]] • [[m:Special:MyLanguage/Tech/News/2026/40|Translate]] • [[m:Tech|Get help]] • [[m:Talk:Tech/News|Give feedback]] • [[m:Global message delivery/Targets/Tech ambassadors|Subscribe or unsubscribe]].''
</div><section end="technews-2026-W40"/>
</div>
<bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 16:18, 28 ಸಪ್ಟಂಬರ್ 2026 (IST)
<!-- Message sent by User:STei (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Tech_ambassadors&oldid=31092225 -->
edpdaknecuowhcwzsah4cel6anagzvo
ಟೆಂಪ್ಲೇಟ್:ವಿಕಿಪೀಡಿಯದ ಬೇತೆ ಅದೆಕುಲು/doc
10
28409
370274
368743
2026-09-27T14:16:54Z
ChiK
1136
ChiK ಪುಟೊ [[ಟೆಂಪ್ಲೇಟ್:ವಿಕಿಪೀಡಿಯದ ಬುಕ್ಕೊಂಜಿ ಅದೆಕುಲು/doc]] ನ್ ಪುಟೊ [[ಟೆಂಪ್ಲೇಟ್:ವಿಕಿಪೀಡಿಯದ ಬೇತೆ ಅದೆಕುಲು/doc]] ಕ್ ರೀಡೈರೆಕ್ಟ್ ಕೊರಂದೆ ವರ್ಗಾವಣೆ ಮಲ್ತೆರ್
368743
wikitext
text/x-wiki
{{Documentation subpage}}
{{cascade-protected template}}
ಈ ಟೆಂಪ್ಲೇಟ್, [[ಮುಖ್ಯ ಪುಟ]]ಗು ಸೇರ್ಪಾದ್, ಓದುನಕುಲೆಗ್ ಉಪಯುಕ್ತ ಆವೊಂದಿಪ್ಪುನ ವಿಕಿಪೀಡಿಯ ಯೋಜನೆದ ಕೆಲವು ಬಾಗೊಲೆನ ಲಿಂಕ್ ಬುಕ್ಕೊ ವಿವರಣೆಲೆನ್ ಒದಗಾವುಂಡು.
jxv347asq75ade8h1gr0tlffmp7560s
370276
370274
2026-09-27T14:22:16Z
ChiK
1136
370276
wikitext
text/x-wiki
{{Documentation subpage}}
{{cascade-protected template}}
ಈ ಟೆಂಪ್ಲೇಟ್, [[ಮುಖ್ಯ ಪುಟ]]ಗು ಸೇರ್ಪಾದ್, ಓದುನಕುಲೆಗ್ ಉಪಯುಕ್ತ ಆವೊಂದಿಪ್ಪುನ ವಿಕಿಪೀಡಿಯ ಯೋಜನೆದ ಕೆಲವು ಬಾಗೊಲೆನ ಕೊಂಡಿಲು ಬುಕ್ಕೊ ವಿವರಣೆಲೆನ್ ಒದಗಾವುಂಡು.
g7zvzg2lfeg8ofcol6nw6wnra29trlc
ಪಾತೆರ:ಫತೇಪುರ್ ಸಿಕ್ರಿ
1
28702
370343
370085
2026-09-28T07:27:27Z
ChiK
1136
370343
wikitext
text/x-wiki
== ಟೆಂಪ್ಲೇಟ್ದ ಬಗೆಟ್ ==
ಫತೇಪುರ್ ಸಿಕ್ರಿ ಲೇಕನೊಡು ಅರ್ತ ಆವಂದಿ ವಾಕ್ಯೊಲು ಸರಿ ಮಲ್ತ್ದ್ ಸರಿ ಮಲ್ಪೆರೆ ಬರೆತಾರ್, ದಯಮಲ್ತ್ದ್ ಅರ್ತ ಆವಂದಿನ ವಾಕ್ಯ ಒವ್ವು ಪಂಡ್ದ್ ತೋಜಪಾಲೆ ಸರಿ ಮಲ್ಪುಗ. ದನ್ಯವಾದೊಲು. [[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೧:೧೩, ೨೧ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
:@[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]]: [[ಫತೇಪುರ್ ಸಿಕ್ರಿ]] [[Special:Diff/366101]] ಕೆಲವೊಂಜೆನ್ ಸರಿ ಮಲ್ತ್ದ; ಲೇಕನೊ ಇತ್ತೆ ಸರಿಯಾದ್ ಇತ್ತ್ಂಡ, ಏರೆಗ್ಲಾ ಈ <code><nowiki>{{Copy edit}}</nowiki></code> ನಿರ್ವಹಣೆದ ಟೆಂಪ್ಲೇಟ್ನ್ ದೆತ್ತ್ ಪಾಡ್ದ್ ಕೊಡುಗೆ ಕೊರೊಲಿ. ಇರೆಗ್ ಸೊಲ್ಮೆಲು, [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೧೩:೨೧, ೨೧ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
::ಅಭಿಯಾನೊಗು ಕಾರಣವಾದ್ ಅಕ್ಬರ್ ಉಂದೆನ್ ಬುಡ್ದು ಪೋಯೆರ್, ಬೊಕ್ಕ 1610 ಡ್ದ್ ಉಂದು ಪೂರ್ತಿಯಾದ್ ಕೈಬುಡಿಯೆರ್.[೨] - ನೆಟ್ಟ್ ಅಭಿಯಾನೊ ಲಾ ಕನ್ನಡ ಪ್ರಚಾರ ಲಾ ಕನ್ನಡ. ಪೂರ್ತಿಯಾದ್ ಲಾ ಕನ್ನಡ, ಗಮನೊನು ಲಾ ಕನ್ನಡ ಅವೆರ್ದ್ ಗುಮನೊನು ಅತು. ಬೇತೆ ವೊವ್ ವಾಕ್ಯ ಪೂರ್ತಿಯಾದ್ ಇಜ್ಜಿ ಪಂಡ್ದ್ ತೆರಿಪಾಂಡ ಬಾರೀ ಎಡ್ಡೆ ಇತ್ತುಂಡು. '''ಅಂಡಮಾನ್ ಬೊಕ್ಕ ನಿಕೋಬಾರ್ ದ್ವೀಪೊಲು''' ನೆಟ್ಟ್ ನನಾತ್ ಬರೆಯೆರೆ ಉಂಡು. ಅವು ಬುಡ್ದು ಪೊಸ ಲೇಕನೊಗ್ ದಾಯೆ ಪೋವೊಡು. ಆಯಿಕ್ ಬೋಡಾಪಿನ ವಿಸಯೊಲು ಉಲ್ಲ, ಅವೆನ್ ಮುಗಿಪಂದೆ ಪೊಸ ಲೇಕನ ದಾಯೆ ಬರೆಪುನಿ. ದುಂಬುದೆನ್ ಎರ್ ಮುಗಿಪೆರೆ. ಆಯಿಕ್ ಟೆಂಪ್ಲೇಟ್ ದಾಯೆ ಪಾಡಿಜಾರ್. ಬೊಕ್ಕ ಬರೆಪೆ ಪಂಡ್ದ್ ಬರೆತಿಜೆರ್. ನಮ ಪೂರಾ <nowiki>{{under construction}}</nowiki> ಪಂಡ್ದ್ ಪಾಡೊಂದಿತ್ತ. ವಂತೆ ಅಲ್ಪಲ ಗಮನ ಕೊರ್ಲೆ. ಇರೆನ ಉತ್ತರೊಗು ಸೊಲ್ಮೆಲು. [[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೩:೪೩, ೨೧ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
:::@[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]]; ಲೇಕನ ಬರವು ಮುಗಿನೆತ್ ಬುಕ್ಕೊ ಲೇಕನ ಉಂಡು ಮಲ್ತ್ನಗ್ಲು ಅತ್ತಂಡ ಬೇತೆಕುಲು ''<nowiki>{{ಟೆಂಪ್ಲೇಟ್:Under construction}}</nowiki>'' ಟೆಂಪ್ಲೇಟ್ನ್ ಗಳಸರೆ ಸಾದ್ಯೊ ಆಪುಜಿ. ಲೇಕನೊಡು ದೋಸೊಲು ತೋಜಿದ್ ಬತ್ತ್ಂಡ ಅವೆನ್ ಮಾಜಾವರ ಗುರ್ತೊ ಮಲ್ಪೊಲಿ ಅತ್ತ್ಂಡ [[ವಿಕಿಪೀಡಿಯ:ಕರಡುಲು|ಕರಡು]] ಪುದರ್ಇಡೆಕ್ ಜಾರಪೊಲಿ. <code>Under construction</code> ಟೆಂಪ್ಲೇಟ್ದ ಬಗ್ಗೆ ಜಾಸ್ತಿ ಮಾಹಿತಿಗ್, ದಯಮಲ್ತ್ [[ಟೆಂಪ್ಲೇಟ್:Under construction#Usage]] ಪುಟೊನು ತೂಲೆ. ಇರೆಗ್ ಸೊಲ್ಮೆಲು, [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೨೦:೫೬, ೨೧ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
::::ಆಯಿಕ್ ಎಡಿಟರ್ ನಕುಲು ಮಾತ್ರ ಎಡಿಟ್ ಮಲ್ಪೆರೆ Under construction ಪಾಡೊಲಿ ಅತೆ. ಅಪಂಡ ಲೇಕನ ಬರೆತಿನಾರ್ ಬೊಕ್ಕ ಬರೆಪೆರ್ ಪಂಡ್ದ್ ಗೊತ್ತಾಪುಂಡು. ಲೇಕನ ಬರೆತಿನಾರ್ ಪಾಡಿಜೆರ್ಂಡ ನಿಕುಲು ಗುರ್ತ ಮಲ್ಪೊಲಿ. ಪೊಸ ಲೇಕನ ಬರೆದ್ ಅಯಿತ ಪಟ್ಟಿ ಮಾತ್ರ ಮಲ್ತೊಂದು ಪೊಪುನತ್ತ್, ಮಾಹಿತಿ ಇತ್ತ್ಂಡ ಒಂಜಿ ಪ್ಯಾರಾಗ್ರಾಪ್ಡ್ ಉಂತಾವುನು ದಾಯೆ? ಆಯಿಕ್ ಇರ್ ಎಲ್ಯ ಪಂಡ್ದ್ ಟೆಂಪ್ಲೇಟ್ ಪಾಡ್ಲೆ. ಕೆಲವು ಲೇಕನ ತೋಜುಂಡು ಕೆಲವು ಬೊಡಿತ್ತಿನಕ್ಲೆನ ಪಂಡ್ದ್ ಬೇದ ಉಂಡೆ? ಇತ್ತೆ ಯಾನ್ ಬರೆಯಿನ ಡುಬ್ನೊ ಕೋಟೆ ಲೇಕನೊಗ್ ಟೆಂಪ್ಲೇಟ್ ಪಾಡ್ಲೆ. ಎಂಕ್ ಗೊತ್ತುಪ್ಪುನ ವಿಸಯ ಪಾಡ್ದೆ, ನನ ಏರೆಗ್ ಆಯಿಕ್ ವಿಸಯ ಜಿಂಜಾವೊಲಿ ಜಿಂಜಾವಡ್. Under construction ದ ಮಾಹಿತಿ ಕೊರ್ನೆಕ್ ಸೊಲ್ಮೆಲು. [[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೨೩:೦೬, ೨೧ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
:::::@[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]]; ಗಮನೊಗ್ ಬತ್ತಿ ಲೇಕನೊಲೆದ ಗುರ್ತೊ ಮಲ್ಪಿ ಕಜ್ಜೊ ಆವೊಂದ್ಂಡ್. ಮಾತಾ ಬಳಕೆದಾರೆರ್ಲಾ ಗುರ್ತೊ ಮಲ್ತ್ದ್ ಸಕಾಯೋ ಮಲ್ಪೊಲಿ. ಉಂದು ಮಾತೆರ್ಲ ಸೇರ್ದು ಮಲ್ಪಿ ಕಜ್ಜೊಲು. ಇರೆಗ್ ಸೊಲ್ಮೆಲು, [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೧೮:೨೯, ೨೨ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
::::::ಇರೆನ ಪಾತೆರ ಸರಿ. ಆಂಡ ಮುರಾನಿ ಇರೇ ಅಂಕ ಕೊರ್ನ ವಿಸ್ವ ಬ್ರಾಣೆರ ದಿನೊ ನೆಟ್ಟ್ ಉಲ್ಲೇಕ ಒಂಜಿ ಲಾ ಸರಿಯಾದ್ ಪೋಪುಜಿ. ಟೆಂಪ್ಲೇಟ್ ಪಾಡ್ನಪಗ ನಮ ಎರೆನ ಲೇಕನ ಪಂಡ್ದ್ ತೂಪುಜ ತೋಜೊಡು. ಅಂಚೆನೆ ಇರೆನ ಕಜ್ಜೊನು ದುಂಬು ಕೊನೊಲೆ. ಅವು ಮಾತಾ ತುಳು ಪುಟಕ್ಕು ಸರಿಯಾದ್ ತೀರ್ಮಾನ ಕೊರೊಂದು ಪೋಲೆ. ಇರೆನ ಈ ಎಡ್ಡೆ ಕಜ್ಜೊಗು ನಮ ಏಪಲಾ ಬೆರಿ ಸಕಾಯ ಕೊರ್ಪ. ಸೊಲ್ಮೆಲು ಸರ್ [[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೨೦:೫೯, ೨೨ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
:::::::@[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]]; ಕೆಲವು <code>Dead Link</code> ಮೂಲು ಗೊಂದಲ ಮಲ್ತುಂಡು. ಅವೆನು ಗುರ್ತ ಮಲ್ತುನೆಗು ಸೊಲ್ಮೆಲು, [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೨೦:೩೧, ೨೩ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
::::::::ಉಲ್ಲೇಕ ಸರಿ ಮಲ್ತಾರ್, ಅಂಡ ಟೆಂಪ್ಲೇಟ್ ಪಾಡಿಜಾರ್, ಲೇಕನ ಕನ್ನಡ್, ತುಳು ಅತ್ತ್ ಕಂತ್ಲು ಬಾಸೆಡ್ ಇತ್ತಿಲೆಕ್ಕ ತೋಜುಂಡು. ಸೊಲ್ಮೆಲು [[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೧೦:೪೨, ೨೪ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
:::::::::@[[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]]; [[ವಿಸ್ವ ಬ್ರಾಣೆರ ದಿನೊ]] ಲೇಕನೊ ಕಂತ್ಲು ಬಾಸೆಡ್ ಇತ್ತುಂಡ <code>Tag</code> ಪಾಡ್ಲೆ. ಅಂದು ಮೇಡಂ ಈರ್ ಪಂಡಿಲೆಕೊನೆ ಎಂಚಿಪೊದ ಸುಮಾರು ಲೇಕನೊಲು ಕಂತ್ಲು ಬಾಸೆಡ್ ಇತ್ತುಲೆಕ್ ಉಂಡು ಅವೆನ್ ಮಾತಾ ಗುರ್ತ ಮಲ್ಪರ ಸಕಾಯೊ ಮಲ್ಪಿ. ವಿಕಿಪೀಡಿಯದ ಕೋರ್ ವೆಲ್ಯೂ ಕಾತ್ದ್, ತುಳು ಬಾಸೆಗ್ ಸ್ವಯಂಸೇವಕೆರಾದ್ ಕೊಡುಗೆ ಕೊರ್ಕ. ಇರೆಗ್ ಸೊಲ್ಮೆಲು, [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೨೦:೦೧, ೨೪ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
::::::::::ಅಂಕ ಕೊರ್ನಾರ್ ಇರ್ ಟ್ಯಾಗ್ ಲಾ ಈರೇ ಪಾಡ್ಲೆ ಸರ್. ಇತ್ತೆ ಆ ಕಜ್ಜೊ ಮಲ್ತೊಂದು ಉಲ್ಲಾರ್. ಅಪಗನೇ ಈರ್ ಪಾಡೊಡಿತ್ತ್ಂಡತ್ತೇ? ಸೊಲ್ಮೆಲು ಸರ್. [[ಬಳಕೆದಾರೆ:Kavitha G. Kana|Kavitha G. Kana]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:Kavitha G. Kana|ಪಾತೆರ್ಲೆ]]) ೨೦:೦೬, ೨೪ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
:::::::::::ಇರಿನ ಅಬಿಪ್ರಾಯೊಗ್ ಸೊಲ್ಮೆಲು, [[ಬಳಕೆದಾರೆ:ChiK|ChiK]] ([[ಬಳಕೆದಾರೆ ಪಾತೆರ:ChiK|ಪಾತೆರ್ಲೆ]]) ೦೭:೩೨, ೨೫ ಆಗೋಸ್ಟು ೨೦೨೬ (IST)
a2b0wiqe7r5m1ph53eywi5ax21ixnzj
ವಿಕಿಪೀಡಿಯ:ಸಮುದಾಯ ತಡ್ಯ
4
28726
370271
370267
2026-09-27T13:36:51Z
ChiK
1136
370271
wikitext
text/x-wiki
{{Under construction}}
<templatestyles src="Wikipedia:Community portal/styles.css"/>
<div class="comportal-section">
<h2>
ಸಮುದಾಯ ತಡ್ಯೊಗ್ ಸ್ವಾಗತೊ!
</h2><!-- 3 line spacing of h2 is important for subsection edit links to work correctly, PLEASE DO NOT FIX -->
{{Shortcut|P:WP|WP:ಸತ}}
ಈ ಪುಟೊಟು ತುಳು ವಿಕಿಪೀಡಿಯೊಗು ಸಂಬಂದಿಸಯಿನ ಇತ್ತೆದ ಸಹಯೋಗೊಲೆನ, ಕಜ್ಜೊಲೆನ, ಬುಕ್ಕೊ ಸುದ್ದಿಲೆನ ಪಟ್ಟಿನ್ ಒದಗಾವೊಂದುಂಡು. ಈರ್ [[ವಿಕಿಪೀಡಿಯ|ವಿಕಿಪೀಡಿಯೊಗು]] ಪೊಸತಾ? ಸುರು ಮಲ್ಪರೆ ಬೋಡಾಯಿನ ಮಾತ ಮಾಹಿತಿಗ್ [[ವಿಕಿಪೀಡಿಯ:ವಿಕಿಪೀಡಿಯಗ್ ಕಾನಿಕೆ|ವಿಕಿಪೀಡಿಯಗ್ ಕಾನಿಕೆ]] ಅತ್ತಂಡ [[ಸಹಾಯ:ಪರಿಚಯ|ನಮ್ಮ ಪರಿಚಯೊದ ಮಾರ್ಗದರ್ಶಿ]] ಪುಟೊನ್ ತೂಲೆ. ಕುತೂಹಲಕಾರಿ [[WP:ADMINP|ಉಲಉಲಯಿದ ಯೋಜನೆದ ಪುಟೊಕುಲೆನ]] ಪಟ್ಟಿಗ್, ದಯಮಲ್ತ್ [[ವಿಕಿಪೀಡಿಯ:Department directory|ಇಲಾಖೆದ ಕೋಸೊ]]ನ್ ತೂಲೆ.
</div><!--
---------------------------------- INTERACT MORE! -------------------------------------
--><div class="comportal-section">
<h2>
ನನಲಾತ್ ಪಾತೆರ್ಲೆ
</h2><!-- 3 line spacing of h2 is important for subsection edit links to work correctly, PLEASE DO NOT FIX -->
<big>ನಡತೊಂದಿಪ್ಪುನ ಚರ್ಚೆಲೆನ ಬುಕ್ಕೊ ಇತ್ತೆದ ವಿನಂತಿಲೆನ ಪಟ್ಟಿಗ್, '''[[ವಿಕಿಪೀಡಿಯ:ಮಾಹಿತಿಪಲಕೆ|ಮಾಹಿತಿಪಲಕೆನ್]]''' ತೂಲೆ.</big>
<div class="comportal-blocks">
<div class="comportal-block"><!-- 1 -->
<div>[[File:Blue-question-mark.svg|link=Wikipedia:Help desk|x45px|center|alt=icon]]</div>
<div class="comportal-header">[[Wikipedia:ಸಕಾಯೊ ಮೇಜಿ|ಸಕಾಯೊ ಮೇಜಿ]]</div>
<div>ವಿಕಿಪೀಡಿಯೊನು ಗಲಸುನ ಬಗೆ ಅತ್ತಂಡ ಎಂಚ ಸಂಪೊಲಿಪೊಲಿ ಪನ್ಪುನೆತ ಬಗ್ಗೆ ಪ್ರಶ್ನೆಲೆನ್ ಕೇನ್ಲೆ</div>
</div>
<div class="comportal-block"><!-- 2 -->
<div>[[File:WP teahouse logo.png|link=Wikipedia:Teahouse|center|x45px|alt=icon]]</div>
<div class="comportal-header">[[Wikipedia:Teahouse|Teahouse]]</div>
<div>ಪೊಸ ಜನೊಕ್ಲೆಗ್ ಸ್ನೇಹಿ ಸಹಾಯ</div>
</div>
<div class="comportal-block"><!-- 3 -->
<div>[[File:Nuvola apps edu phi.svg|link=Wikipedia:Reference desk|x45px|center|alt=icon]]</div>
<div class="comportal-header">[[Wikipedia:Reference desk|Reference desk]]</div>
<div>Ask research questions about topics other than Wikipedia</div>
</div>
<div class="comportal-block"><!-- 4 -->
<div>[[File:WikiProject Council with transparent background.svg|link=Wikipedia:WikiProject Council/Directory|x45px|center|alt=icon]]</div>
<div class="comportal-header">[[Wikipedia:WikiProject Council/Directory|ವಿಕಿಯೋಜನೆಲು]]</div>
<div>Work with other editors on a shared area of interest</div>
</div>
<div class="comportal-block"><!-- 5 -->
<div>[[File:Medcab.svg|link=Wikipedia:Dispute resolution|center|x45px|alt=icon]]</div>
<div class="comportal-header">[[Wikipedia:Dispute resolution|ವಿವಾದ ಪರಿಹಾರ]]</div>
<div>Get help resolving disputes</div>
</div>
</div>
{{ಬಳಕೆದಾರೆ:ChiK/ಕಲ್ಪುನಕಳ/ಚಾವಡಿ|plain=yes|grey=yes|other=no|icon-size=x45px}}
</div><!--
---------------------------- COMMUNITY BULLETIN BOARD ---------------------------------
--><div class="comportal-section">
<h2>
ಸಮುದಾಯ ಕೊತ್ತ್ ಪಲಕೆ
</h2><!-- 3 line spacing of h2 is important for subsection edit links to work correctly, PLEASE DO NOT FIX
-->{{transcluded section|source= ವಿಕಿಪೀಡಿಯ:ಸಮುದಾಯ ಕೊತ್ತ್ ಪಲಕೆ}}{{ಬಳಕೆದಾರೆ:ChiK/ಕಲ್ಪುನಕಳ/ಸಮುದಾಯ_ಕೊತ್ತ್_ಪಲಕೆ}}</div>__NOTOC__<noinclude><br/>
{{subject bar|commons =y |commons-search =Commons:Community portal |d =y |d-search =Wikidata:Community portal |s =y |s-search = Wikisource:Community portal |wikt =y |wikt-search =Wiktionary:ಸಮುದಾಯ ತಡ್ಯ}}
[[Category:Wikipedia basic information|ಸಮುದಾಯ ತಡ್ಯ]]
[[Category:ವಿಕಿಪೀಡಿಯ ಚರ್ಚೆಲು|ಸಮುದಾಯ ತಡ್ಯ]]
[[Category:Wikipedia directories|ಸಮುದಾಯ ತಡ್ಯ]]
[[Category:ವಿಕಿಪೀಡಿಯ ಸುದ್ದಿಲು|ಸಮುದಾಯ ತಡ್ಯ]]
[[Category:Wikipedia noticeboards|ಸಮುದಾಯ ತಡ್ಯ]]
</noinclude>
p9p2q9sawspd7p68v6ybheoymyqsnyc
ಬೋಟ್ಸ್ವಾನ
0
28727
370279
2026-09-27T17:09:05Z
Mahaveer Indra
1023
ಪೊಸ ಬರವು
370279
wikitext
text/x-wiki
'''ಬೋಟ್ಸ್ವಾನ'''-ಅಧಿಕೃತವಾದ್ ಬೋಟ್ಸ್ವಾನ ಗಣರಾಜ್ಯ, ತೆಂಕಾಯಿ ಆಫ್ರಿಕಾಡ್ ಇಪ್ಪುನ ಸಮುದ್ರತೀರ ಇಜ್ಜಾಂದಿನ ಒಂಜಿ ದೇಶ. ಬೋಟ್ಸ್ವಾನ ಭೌಗೋಳಿಕವಾದ್ ಸಮತಟ್ಟಾದ್ ಉಂಡು, ಬೊಕ್ಕ ಉಂದೆತ ಸುಮಾರು ೭೦% ಜಾಗೆ ಕಲಹರಿ ಮರುಭೂಮಿಡ್ ಉಂಡು. ಪಂಡ ಈ ದೇಸೊದ ೭೦%ದಾತ್ ಮರುಬೂಮಿಯೇ ಉಂಡು. ಗಬೊರೊನ್ ಈ ದೇಶದ ರಾಜಧಾನಿ ಬೊಕ್ಕ ಅತಿ ಮಲ್ಲ ನಗರ. ಉಂದೆತ ತೆಂಕಾಯಿ ಬೊಕ್ಕ ಆಗ್ನೇಯಗ್ ದಕ್ಷಿಣ ಆಫ್ರಿಕಾ, ಪಶ್ಚಿಮ ಬೊಕ್ಕ ಬಡಕಾಯಿಗ್ ನಮೀಬಿಯಾ, ಬಡಕಾಯಿಗ್ ಜಾಂಬಿಯಾ, ಬೊಕ್ಕ ಈಶಾನ್ಯಗ್ ಜಿಂಬಾಬ್ವೆ ದೇಸೊಲು ಉಲ್ಲ. ಬೋಟ್ಸ್ವಾನ ದೇಸೊದ ಒಟ್ಟು ವಿಸ್ತೀರ್ಣ ೫,೮೧,೭೩೦ ಚದರ ಕಿಲೋಮೀಟರ್ ಉಂಡು. ಬೋಟ್ಸ್ವಾನ ಪ್ರಪಂಚಡೇ ಅತಿ ಕಮ್ಮಿ ಜನಸಾಂದ್ರತೆ ಇತ್ತಿನ ದೇಶೊಲೆಡ್ ಆದುಂಡು.
tm4w64plg0913jhr9a3b12h54a097lw
370280
370279
2026-09-27T17:16:17Z
Mahaveer Indra
1023
370280
wikitext
text/x-wiki
'''ಬೋಟ್ಸ್ವಾನ'''-ಅಧಿಕೃತವಾದ್ ಬೋಟ್ಸ್ವಾನ ಗಣರಾಜ್ಯ, ತೆಂಕಾಯಿ ಆಫ್ರಿಕಾಡ್ ಇಪ್ಪುನ ಸಮುದ್ರತೀರ ಇಜ್ಜಾಂದಿನ ಒಂಜಿ ದೇಶ. ಬೋಟ್ಸ್ವಾನ ಭೌಗೋಳಿಕವಾದ್ ಸಮತಟ್ಟಾದ್ ಉಂಡು, ಬೊಕ್ಕ ಉಂದೆತ ಸುಮಾರು ೭೦% ಜಾಗೆ ಕಲಹರಿ ಮರುಭೂಮಿಡ್ ಉಂಡು. ಪಂಡ ಈ ದೇಸೊದ ೭೦%ದಾತ್ ಮರುಬೂಮಿಯೇ ಉಂಡು. ಗಬೊರೊನ್ ಈ ದೇಶದ ರಾಜಧಾನಿ ಬೊಕ್ಕ ಅತಿ ಮಲ್ಲ ನಗರ. ಉಂದೆತ ತೆಂಕಾಯಿ ಬೊಕ್ಕ ಆಗ್ನೇಯಗ್ ದಕ್ಷಿಣ ಆಫ್ರಿಕಾ, ಪಶ್ಚಿಮ ಬೊಕ್ಕ ಬಡಕಾಯಿಗ್ ನಮೀಬಿಯಾ, ಬಡಕಾಯಿಗ್ ಜಾಂಬಿಯಾ, ಬೊಕ್ಕ ಈಶಾನ್ಯಗ್ ಜಿಂಬಾಬ್ವೆ ದೇಸೊಲು ಉಲ್ಲ. ಬೋಟ್ಸ್ವಾನ ದೇಸೊದ ಒಟ್ಟು ವಿಸ್ತೀರ್ಣ ೫,೮೧,೭೩೦ ಚದರ ಕಿಲೋಮೀಟರ್ ಉಂಡು. ಬೋಟ್ಸ್ವಾನ ಪ್ರಪಂಚಡೇ ಅತಿ ಕಮ್ಮಿ ಜನಸಾಂದ್ರತೆ ಇತ್ತಿನ ದೇಶೊಲೆಡ್ ಆದುಂಡು.
ಕ್ರಿ.ಶ ೬೦೦ರ್ದ್ ದುಂಬು, ಇತ್ತೆದ ಬೋಟ್ಸ್ವಾನಲಾ ಸೇರ್ದಿನ ತೆಂಕಾಯಿ ಆಫ್ರಿಕಾಗ್, ಬಾಂಟು ಭಾಷೆ ಪಾತೆರುನ ಜನಕುಲೆನ ಸಂತತಿ ಇಡೆಗ್ ವಲಸೆ ಬತ್ತ್ ಉಂತಿಯೆರ್. ಇತ್ತೆದ ಬೋಟ್ಸ್ವಾನಡ್ ಇಪ್ಪುನ ಜನೊಕ್ಲೆನ ಮೂಲ ಉಂದುವೆ ಆತ್ಂಡ್. ೧೮೮೫ಡ್, ಬ್ರಿಟಿಷೆರ್ ಈ ಜಾಗೆನ್ ವಸಾಹತು ಮಲ್ತ್ದ್ 'ಬೆಚುವಾನಾಲ್ಯಾಂಡ್' ಪಂಡ್ದ್ ಘೋಷಣೆ ಮಲ್ತೆರ್. ಸೆಪ್ಟೆಂಬರ್ ೩೦, ೧೯೬೬ನೇ ಇಸವಿಡ್ ಬೆಚುವಾನಾಲ್ಯಾಂಡ್ ತನ್ನ ಇತ್ತೆದ ಪುದರ್ಡ್ ಒಂಜಿ ಸ್ವತಂತ್ರ ಗಣರಾಜ್ಯ ಆಂಡ್. ಅವೆರ್ದ್ ಬೊಕ್ಕ, ಉಂದು ಒಂಜಿ ಸಂಸದೀಯ ಗಣರಾಜ್ಯ ಆದುಂಡು.
gj5a5fqtp0qqvcp2ve0zp1olmfku17w
370281
370280
2026-09-27T17:20:39Z
Mahaveer Indra
1023
370281
wikitext
text/x-wiki
'''ಬೋಟ್ಸ್ವಾನ'''-ಅಧಿಕೃತವಾದ್ ಬೋಟ್ಸ್ವಾನ ಗಣರಾಜ್ಯ, ತೆಂಕಾಯಿ ಆಫ್ರಿಕಾಡ್ ಇಪ್ಪುನ ಸಮುದ್ರತೀರ ಇಜ್ಜಾಂದಿನ ಒಂಜಿ ದೇಶ. ಬೋಟ್ಸ್ವಾನ ಭೌಗೋಳಿಕವಾದ್ ಸಮತಟ್ಟಾದ್ ಉಂಡು, ಬೊಕ್ಕ ಉಂದೆತ ಸುಮಾರು ೭೦% ಜಾಗೆ ಕಲಹರಿ ಮರುಭೂಮಿಡ್ ಉಂಡು. ಪಂಡ ಈ ದೇಸೊದ ೭೦%ದಾತ್ ಮರುಬೂಮಿಯೇ ಉಂಡು. ಗಬೊರೊನ್ ಈ ದೇಶದ ರಾಜಧಾನಿ ಬೊಕ್ಕ ಅತಿ ಮಲ್ಲ ನಗರ. ಉಂದೆತ ತೆಂಕಾಯಿ ಬೊಕ್ಕ ಆಗ್ನೇಯಗ್ ದಕ್ಷಿಣ ಆಫ್ರಿಕಾ, ಪಶ್ಚಿಮ ಬೊಕ್ಕ ಬಡಕಾಯಿಗ್ ನಮೀಬಿಯಾ, ಬಡಕಾಯಿಗ್ ಜಾಂಬಿಯಾ, ಬೊಕ್ಕ ಈಶಾನ್ಯಗ್ ಜಿಂಬಾಬ್ವೆ ದೇಸೊಲು ಉಲ್ಲ. ಬೋಟ್ಸ್ವಾನ ದೇಸೊದ ಒಟ್ಟು ವಿಸ್ತೀರ್ಣ ೫,೮೧,೭೩೦ ಚದರ ಕಿಲೋಮೀಟರ್ ಉಂಡು. ಬೋಟ್ಸ್ವಾನ ಪ್ರಪಂಚಡೇ ಅತಿ ಕಮ್ಮಿ ಜನಸಾಂದ್ರತೆ ಇತ್ತಿನ ದೇಶೊಲೆಡ್ ಆದುಂಡು.<ref>{{cite web |title=About Our Country |url=https://www.gov.bw/about-our-country-0 |website=gov.bw |publisher=Botswana Government Communications and Information Systems Private Bag 001, Gaborone, Botswana |access-date=27 September 2026}}</ref>
ಕ್ರಿ.ಶ ೬೦೦ರ್ದ್ ದುಂಬು, ಇತ್ತೆದ ಬೋಟ್ಸ್ವಾನಲಾ ಸೇರ್ದಿನ ತೆಂಕಾಯಿ ಆಫ್ರಿಕಾಗ್, ಬಾಂಟು ಭಾಷೆ ಪಾತೆರುನ ಜನಕುಲೆನ ಸಂತತಿ ಇಡೆಗ್ ವಲಸೆ ಬತ್ತ್ ಉಂತಿಯೆರ್. ಇತ್ತೆದ ಬೋಟ್ಸ್ವಾನಡ್ ಇಪ್ಪುನ ಜನೊಕ್ಲೆನ ಮೂಲ ಉಂದುವೆ ಆತ್ಂಡ್. ೧೮೮೫ಡ್, ಬ್ರಿಟಿಷೆರ್ ಈ ಜಾಗೆನ್ ವಸಾಹತು ಮಲ್ತ್ದ್ 'ಬೆಚುವಾನಾಲ್ಯಾಂಡ್' ಪಂಡ್ದ್ ಘೋಷಣೆ ಮಲ್ತೆರ್. ಸೆಪ್ಟೆಂಬರ್ ೩೦, ೧೯೬೬ನೇ ಇಸವಿಡ್ ಬೆಚುವಾನಾಲ್ಯಾಂಡ್ ತನ್ನ ಇತ್ತೆದ ಪುದರ್ಡ್ ಒಂಜಿ ಸ್ವತಂತ್ರ ಗಣರಾಜ್ಯ ಆಂಡ್. ಅವೆರ್ದ್ ಬೊಕ್ಕ, ಉಂದು ಒಂಜಿ ಸಂಸದೀಯ ಗಣರಾಜ್ಯ ಆದುಂಡು.
==ಉಲ್ಲೆಕಲು==
{{reflist}}
lvtjkyyvayg9tmh9x4rvs27f6b3vcq1
370339
370281
2026-09-28T06:25:23Z
Mahaveer Indra
1023
added [[Category:ದೇಸೊಲು]] using [[Help:Gadget-HotCat|HotCat]]
370339
wikitext
text/x-wiki
'''ಬೋಟ್ಸ್ವಾನ'''-ಅಧಿಕೃತವಾದ್ ಬೋಟ್ಸ್ವಾನ ಗಣರಾಜ್ಯ, ತೆಂಕಾಯಿ ಆಫ್ರಿಕಾಡ್ ಇಪ್ಪುನ ಸಮುದ್ರತೀರ ಇಜ್ಜಾಂದಿನ ಒಂಜಿ ದೇಶ. ಬೋಟ್ಸ್ವಾನ ಭೌಗೋಳಿಕವಾದ್ ಸಮತಟ್ಟಾದ್ ಉಂಡು, ಬೊಕ್ಕ ಉಂದೆತ ಸುಮಾರು ೭೦% ಜಾಗೆ ಕಲಹರಿ ಮರುಭೂಮಿಡ್ ಉಂಡು. ಪಂಡ ಈ ದೇಸೊದ ೭೦%ದಾತ್ ಮರುಬೂಮಿಯೇ ಉಂಡು. ಗಬೊರೊನ್ ಈ ದೇಶದ ರಾಜಧಾನಿ ಬೊಕ್ಕ ಅತಿ ಮಲ್ಲ ನಗರ. ಉಂದೆತ ತೆಂಕಾಯಿ ಬೊಕ್ಕ ಆಗ್ನೇಯಗ್ ದಕ್ಷಿಣ ಆಫ್ರಿಕಾ, ಪಶ್ಚಿಮ ಬೊಕ್ಕ ಬಡಕಾಯಿಗ್ ನಮೀಬಿಯಾ, ಬಡಕಾಯಿಗ್ ಜಾಂಬಿಯಾ, ಬೊಕ್ಕ ಈಶಾನ್ಯಗ್ ಜಿಂಬಾಬ್ವೆ ದೇಸೊಲು ಉಲ್ಲ. ಬೋಟ್ಸ್ವಾನ ದೇಸೊದ ಒಟ್ಟು ವಿಸ್ತೀರ್ಣ ೫,೮೧,೭೩೦ ಚದರ ಕಿಲೋಮೀಟರ್ ಉಂಡು. ಬೋಟ್ಸ್ವಾನ ಪ್ರಪಂಚಡೇ ಅತಿ ಕಮ್ಮಿ ಜನಸಾಂದ್ರತೆ ಇತ್ತಿನ ದೇಶೊಲೆಡ್ ಆದುಂಡು.<ref>{{cite web |title=About Our Country |url=https://www.gov.bw/about-our-country-0 |website=gov.bw |publisher=Botswana Government Communications and Information Systems Private Bag 001, Gaborone, Botswana |access-date=27 September 2026}}</ref>
ಕ್ರಿ.ಶ ೬೦೦ರ್ದ್ ದುಂಬು, ಇತ್ತೆದ ಬೋಟ್ಸ್ವಾನಲಾ ಸೇರ್ದಿನ ತೆಂಕಾಯಿ ಆಫ್ರಿಕಾಗ್, ಬಾಂಟು ಭಾಷೆ ಪಾತೆರುನ ಜನಕುಲೆನ ಸಂತತಿ ಇಡೆಗ್ ವಲಸೆ ಬತ್ತ್ ಉಂತಿಯೆರ್. ಇತ್ತೆದ ಬೋಟ್ಸ್ವಾನಡ್ ಇಪ್ಪುನ ಜನೊಕ್ಲೆನ ಮೂಲ ಉಂದುವೆ ಆತ್ಂಡ್. ೧೮೮೫ಡ್, ಬ್ರಿಟಿಷೆರ್ ಈ ಜಾಗೆನ್ ವಸಾಹತು ಮಲ್ತ್ದ್ 'ಬೆಚುವಾನಾಲ್ಯಾಂಡ್' ಪಂಡ್ದ್ ಘೋಷಣೆ ಮಲ್ತೆರ್. ಸೆಪ್ಟೆಂಬರ್ ೩೦, ೧೯೬೬ನೇ ಇಸವಿಡ್ ಬೆಚುವಾನಾಲ್ಯಾಂಡ್ ತನ್ನ ಇತ್ತೆದ ಪುದರ್ಡ್ ಒಂಜಿ ಸ್ವತಂತ್ರ ಗಣರಾಜ್ಯ ಆಂಡ್. ಅವೆರ್ದ್ ಬೊಕ್ಕ, ಉಂದು ಒಂಜಿ ಸಂಸದೀಯ ಗಣರಾಜ್ಯ ಆದುಂಡು.
==ಉಲ್ಲೆಕಲು==
{{reflist}}
[[ವರ್ಗೊ:ದೇಸೊಲು]]
1rw3rcnkpst7cy4lj32434752bw5o8i
370340
370339
2026-09-28T06:25:38Z
Mahaveer Indra
1023
added [[Category:ಆಫ್ರಿಕಾ ಖಂಡೊದ ದೇಸೊಲು]] using [[Help:Gadget-HotCat|HotCat]]
370340
wikitext
text/x-wiki
'''ಬೋಟ್ಸ್ವಾನ'''-ಅಧಿಕೃತವಾದ್ ಬೋಟ್ಸ್ವಾನ ಗಣರಾಜ್ಯ, ತೆಂಕಾಯಿ ಆಫ್ರಿಕಾಡ್ ಇಪ್ಪುನ ಸಮುದ್ರತೀರ ಇಜ್ಜಾಂದಿನ ಒಂಜಿ ದೇಶ. ಬೋಟ್ಸ್ವಾನ ಭೌಗೋಳಿಕವಾದ್ ಸಮತಟ್ಟಾದ್ ಉಂಡು, ಬೊಕ್ಕ ಉಂದೆತ ಸುಮಾರು ೭೦% ಜಾಗೆ ಕಲಹರಿ ಮರುಭೂಮಿಡ್ ಉಂಡು. ಪಂಡ ಈ ದೇಸೊದ ೭೦%ದಾತ್ ಮರುಬೂಮಿಯೇ ಉಂಡು. ಗಬೊರೊನ್ ಈ ದೇಶದ ರಾಜಧಾನಿ ಬೊಕ್ಕ ಅತಿ ಮಲ್ಲ ನಗರ. ಉಂದೆತ ತೆಂಕಾಯಿ ಬೊಕ್ಕ ಆಗ್ನೇಯಗ್ ದಕ್ಷಿಣ ಆಫ್ರಿಕಾ, ಪಶ್ಚಿಮ ಬೊಕ್ಕ ಬಡಕಾಯಿಗ್ ನಮೀಬಿಯಾ, ಬಡಕಾಯಿಗ್ ಜಾಂಬಿಯಾ, ಬೊಕ್ಕ ಈಶಾನ್ಯಗ್ ಜಿಂಬಾಬ್ವೆ ದೇಸೊಲು ಉಲ್ಲ. ಬೋಟ್ಸ್ವಾನ ದೇಸೊದ ಒಟ್ಟು ವಿಸ್ತೀರ್ಣ ೫,೮೧,೭೩೦ ಚದರ ಕಿಲೋಮೀಟರ್ ಉಂಡು. ಬೋಟ್ಸ್ವಾನ ಪ್ರಪಂಚಡೇ ಅತಿ ಕಮ್ಮಿ ಜನಸಾಂದ್ರತೆ ಇತ್ತಿನ ದೇಶೊಲೆಡ್ ಆದುಂಡು.<ref>{{cite web |title=About Our Country |url=https://www.gov.bw/about-our-country-0 |website=gov.bw |publisher=Botswana Government Communications and Information Systems Private Bag 001, Gaborone, Botswana |access-date=27 September 2026}}</ref>
ಕ್ರಿ.ಶ ೬೦೦ರ್ದ್ ದುಂಬು, ಇತ್ತೆದ ಬೋಟ್ಸ್ವಾನಲಾ ಸೇರ್ದಿನ ತೆಂಕಾಯಿ ಆಫ್ರಿಕಾಗ್, ಬಾಂಟು ಭಾಷೆ ಪಾತೆರುನ ಜನಕುಲೆನ ಸಂತತಿ ಇಡೆಗ್ ವಲಸೆ ಬತ್ತ್ ಉಂತಿಯೆರ್. ಇತ್ತೆದ ಬೋಟ್ಸ್ವಾನಡ್ ಇಪ್ಪುನ ಜನೊಕ್ಲೆನ ಮೂಲ ಉಂದುವೆ ಆತ್ಂಡ್. ೧೮೮೫ಡ್, ಬ್ರಿಟಿಷೆರ್ ಈ ಜಾಗೆನ್ ವಸಾಹತು ಮಲ್ತ್ದ್ 'ಬೆಚುವಾನಾಲ್ಯಾಂಡ್' ಪಂಡ್ದ್ ಘೋಷಣೆ ಮಲ್ತೆರ್. ಸೆಪ್ಟೆಂಬರ್ ೩೦, ೧೯೬೬ನೇ ಇಸವಿಡ್ ಬೆಚುವಾನಾಲ್ಯಾಂಡ್ ತನ್ನ ಇತ್ತೆದ ಪುದರ್ಡ್ ಒಂಜಿ ಸ್ವತಂತ್ರ ಗಣರಾಜ್ಯ ಆಂಡ್. ಅವೆರ್ದ್ ಬೊಕ್ಕ, ಉಂದು ಒಂಜಿ ಸಂಸದೀಯ ಗಣರಾಜ್ಯ ಆದುಂಡು.
==ಉಲ್ಲೆಕಲು==
{{reflist}}
[[ವರ್ಗೊ:ದೇಸೊಲು]]
[[ವರ್ಗೊ:ಆಫ್ರಿಕಾ ಖಂಡೊದ ದೇಸೊಲು]]
n6e013xot3ana1o9wl2pp9adsn5y4wn
ಟೆಂಪ್ಲೇಟ್:Horizontal list
10
28728
370294
2026-09-12T00:36:18Z
en>BD2412
0
RM closed as moved.
370294
wikitext
text/x-wiki
{{<includeonly>safesubst:</includeonly>#invoke:list|horizontal}}<noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
</noinclude>
ihcdy525o8nnmq114czc48dpk6pnojd
370295
370294
2026-09-28T01:40:48Z
ChiK
1136
1 revision imported from [[:en:Template:Horizontal_list]]
370294
wikitext
text/x-wiki
{{<includeonly>safesubst:</includeonly>#invoke:list|horizontal}}<noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
</noinclude>
ihcdy525o8nnmq114czc48dpk6pnojd
ಟೆಂಪ್ಲೇಟ್:3x
10
28729
370303
2024-02-23T02:45:57Z
en>Discospinster
0
Reverted edit by [[Special:Contribs/2402:7500:A5E:6023:BCF5:709E:F93C:CEE6|2402:7500:A5E:6023:BCF5:709E:F93C:CEE6]] ([[User talk:2402:7500:A5E:6023:BCF5:709E:F93C:CEE6|talk]]) to last version by Grufo
370303
wikitext
text/x-wiki
<includeonly>{{{1}}}{{{1}}}{{{1}}}</includeonly><noinclude>{{Documentation}}<!-- Please add categories to the /doc subpage; interwikis go to Wikidata, thank you. --></noinclude>
aj247njq7fsat7bjhm0h46g0u68qk2s
370304
370303
2026-09-28T05:19:28Z
ChiK
1136
1 revision imported from [[:en:Template:3x]]
370303
wikitext
text/x-wiki
<includeonly>{{{1}}}{{{1}}}{{{1}}}</includeonly><noinclude>{{Documentation}}<!-- Please add categories to the /doc subpage; interwikis go to Wikidata, thank you. --></noinclude>
aj247njq7fsat7bjhm0h46g0u68qk2s
ಟೆಂಪ್ಲೇಟ್:Nowiki template demo/doc
10
28730
370305
2025-05-15T03:24:07Z
en>Tarl N.
0
Restored revision 1271479379 by [[Special:Contributions/Cedar101|Cedar101]] ([[User talk:Cedar101|talk]]): Truncated quotations for no obvious reason.
370305
wikitext
text/x-wiki
{{Documentation subpage}}
{{lua|Module:Template test case}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
This template shows a template invocation together with a demonstration of that template's output. The template arguments are passed in once, inside {{tag|nowiki}} tags, and are used to generate both the template invocation and the template output. The demonstration can be displayed in various different formats.
This template is identical to {{tl|test case nowiki}} with the {{para|showtemplate2}} and {{para|showheader}} parameters both set to "no". To see the full range of options available, please see the [[Template:Test case nowiki/doc|test case nowiki documentation]].
== Usage ==
===Basic syntax===
<syntaxhighlight lang="wikitext" style="overflow:auto;">
{{nowiki template demo|<nowiki>{{[template name]
| [param1] = [value1]
| [param2] = [value2]
| [param3] = [value3]
...
}}</nowiki>}}
<!-- Or -->
{{nowiki template demo|<nowiki>{{<!-- template name with parameters -->}}</nowiki>}}
</syntaxhighlight>
===Common syntax===
The following options will work with all different test case formats.
<syntaxhighlight lang="wikitext" style="overflow:auto;">
{{nowiki template demo
| format =
| collapsible =
| resetRefs =
| showcode =
| showheader =
| code = <nowiki>{{[template name]
| [param1] = [value1]
| [param2] = [value2]
| [param3] = [value3]
...
}}</nowiki>
}}
</syntaxhighlight>
Some test case formats accept additional parameters as well. See their sections for documentation.
== Parameters ==
{| class="wikitable"
|+ Common parameters
|-
! Parameter !! Description
|-
| <code>code</code> or <code>1</code> || The template code, inside {{tag|nowiki}} tags. You must use the magic word "__TEMPLATENAME__" instead of the template name. For example: <code><nowiki>| code = <nowiki>{{__TEMPLATENAME__|first|second|foo=bar}}</nowiki></nowiki></code>. <p>Note: due to the way nowiki tags work, the template treats the [[HTML entities]] &lt;, &gt; and &quot; as if they were the literal characters <, > and " when used with this parameter.</p>
|-
| <code>format</code> || The format to display the test cases in. This can be "default", "inline", "columns" or "rows". The inline format is for templates that can be displayed entirely on one line. If used with templates that display on multiple lines it may produce unexpected results. The "columns" and "rows" formats are intended for displaying multiple templates in a table, so they are not of much use here. See the [[Template:Test case nowiki/doc|test case nowiki documentation]] for more information about them.
|-
| <code>heading1</code> || A custom heading for the template.
|-
| <code>showheader</code> || If this is set to "no", then no headers are shown.
|-
| <code>collapsible</code> || If set to "yes", the demonstration is made collapsible. It is collapsed by default.
|-
| <code>resetRefs</code> || If set to "yes", any references generated by the templates tested are reset after each template is expanded.
|-
| <code>showcode</code> || Set this to "no" to disable display of the template invocation.
|}
You can use {{para|collapsible|yes}} with any format to collapse it. You can set a custom title for collapsible test cases with the {{para|title}} parameter.
== Examples ==
=== Default ===
====Usage====
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{nowiki template demo|code=<nowiki>{{ombox|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
====Output====
{{nowiki template demo|code=<nowiki>{{ombox|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Default, collapsible ===
====Usage====
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{nowiki template demo|collapsible=yes|<nowiki>{{ombox|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
====Output====
{{nowiki template demo|collapsible=yes|<nowiki>{{ombox|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Inline ===
using [[Template:3x]]
====Usage====
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{nowiki template demo|format=inline|code=<nowiki>{{3x|Lorem ipsum}}</nowiki>}}
</syntaxhighlight>
====Output====
{{nowiki template demo|format=inline|code=<nowiki>{{3x|Lorem ipsum}}</nowiki>}}
Note: As this format starts with a bullet, a newline will always be inserted at the start of the template output due to [[phab:T14974|bug 14974]].
=== Inline with nowiki output ===
using [[Template:URL]]
====Usage====
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{nowiki template demo|format=inline|output=nowiki+|code=<nowiki>{{URL | 1= http://www.example.com/path?section=17 }}</nowiki>}}
</syntaxhighlight>
====Output====
{{nowiki template demo|format=inline|output=nowiki+|code=<nowiki>{{URL | 1= http://www.example.com/path?section=17 }}</nowiki>}}
== Technical limitations ==
The template has the following known technical limitations:
* An error will be generated if processing the entire page takes more than 10 seconds. This is an intentional limit in the [[mw:Extension:Scribunto|Scribunto]] extension that runs [[Module:Template test case]], on which this template is based. If a test cases page takes more than 10 seconds to load, you may need to split it up into different pages.
* The template converts the [[HTML entities]] &lt;, &gt; and &quot; inside template invocations to the literal characters <, > and ". This is due to the way nowiki tags work.
== See also ==
Similar templates:
* [[Template:Demo]] and [[Template:Demo-inline]] which use [[Module:Demo]]
* [[Template:Automarkup]] which uses [[Module:Automarkup]]
Templates invoking [[Module:Template test case]]:
* [[Template:Test case]] – a generalised test case template
* [[Template:Testcase rows]] – for a table of test cases arranged in rows
* [[Template:Testcase table]] – for a table of test cases arranged in columns
* [[Template:Inline test case]] – for test cases with small invocations and small output
* [[Template:Collapsible test case]] – for test cases collapsed by default if the results are the same
<includeonly>{{Sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Documentation assistance templates]]
[[Category:Programming typing-aid templates]]
[[Category:Template test cases| ]]
[[Category:Nowiki templates]]
[[Category:Wikitext processing templates]]
}}</includeonly>
36yfo3jlmkuvsywwba7jcoq3c54c1gc
370306
370305
2026-09-28T05:19:29Z
ChiK
1136
1 revision imported from [[:en:Template:Nowiki_template_demo/doc]]
370305
wikitext
text/x-wiki
{{Documentation subpage}}
{{lua|Module:Template test case}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
This template shows a template invocation together with a demonstration of that template's output. The template arguments are passed in once, inside {{tag|nowiki}} tags, and are used to generate both the template invocation and the template output. The demonstration can be displayed in various different formats.
This template is identical to {{tl|test case nowiki}} with the {{para|showtemplate2}} and {{para|showheader}} parameters both set to "no". To see the full range of options available, please see the [[Template:Test case nowiki/doc|test case nowiki documentation]].
== Usage ==
===Basic syntax===
<syntaxhighlight lang="wikitext" style="overflow:auto;">
{{nowiki template demo|<nowiki>{{[template name]
| [param1] = [value1]
| [param2] = [value2]
| [param3] = [value3]
...
}}</nowiki>}}
<!-- Or -->
{{nowiki template demo|<nowiki>{{<!-- template name with parameters -->}}</nowiki>}}
</syntaxhighlight>
===Common syntax===
The following options will work with all different test case formats.
<syntaxhighlight lang="wikitext" style="overflow:auto;">
{{nowiki template demo
| format =
| collapsible =
| resetRefs =
| showcode =
| showheader =
| code = <nowiki>{{[template name]
| [param1] = [value1]
| [param2] = [value2]
| [param3] = [value3]
...
}}</nowiki>
}}
</syntaxhighlight>
Some test case formats accept additional parameters as well. See their sections for documentation.
== Parameters ==
{| class="wikitable"
|+ Common parameters
|-
! Parameter !! Description
|-
| <code>code</code> or <code>1</code> || The template code, inside {{tag|nowiki}} tags. You must use the magic word "__TEMPLATENAME__" instead of the template name. For example: <code><nowiki>| code = <nowiki>{{__TEMPLATENAME__|first|second|foo=bar}}</nowiki></nowiki></code>. <p>Note: due to the way nowiki tags work, the template treats the [[HTML entities]] &lt;, &gt; and &quot; as if they were the literal characters <, > and " when used with this parameter.</p>
|-
| <code>format</code> || The format to display the test cases in. This can be "default", "inline", "columns" or "rows". The inline format is for templates that can be displayed entirely on one line. If used with templates that display on multiple lines it may produce unexpected results. The "columns" and "rows" formats are intended for displaying multiple templates in a table, so they are not of much use here. See the [[Template:Test case nowiki/doc|test case nowiki documentation]] for more information about them.
|-
| <code>heading1</code> || A custom heading for the template.
|-
| <code>showheader</code> || If this is set to "no", then no headers are shown.
|-
| <code>collapsible</code> || If set to "yes", the demonstration is made collapsible. It is collapsed by default.
|-
| <code>resetRefs</code> || If set to "yes", any references generated by the templates tested are reset after each template is expanded.
|-
| <code>showcode</code> || Set this to "no" to disable display of the template invocation.
|}
You can use {{para|collapsible|yes}} with any format to collapse it. You can set a custom title for collapsible test cases with the {{para|title}} parameter.
== Examples ==
=== Default ===
====Usage====
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{nowiki template demo|code=<nowiki>{{ombox|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
====Output====
{{nowiki template demo|code=<nowiki>{{ombox|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Default, collapsible ===
====Usage====
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{nowiki template demo|collapsible=yes|<nowiki>{{ombox|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
====Output====
{{nowiki template demo|collapsible=yes|<nowiki>{{ombox|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Inline ===
using [[Template:3x]]
====Usage====
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{nowiki template demo|format=inline|code=<nowiki>{{3x|Lorem ipsum}}</nowiki>}}
</syntaxhighlight>
====Output====
{{nowiki template demo|format=inline|code=<nowiki>{{3x|Lorem ipsum}}</nowiki>}}
Note: As this format starts with a bullet, a newline will always be inserted at the start of the template output due to [[phab:T14974|bug 14974]].
=== Inline with nowiki output ===
using [[Template:URL]]
====Usage====
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{nowiki template demo|format=inline|output=nowiki+|code=<nowiki>{{URL | 1= http://www.example.com/path?section=17 }}</nowiki>}}
</syntaxhighlight>
====Output====
{{nowiki template demo|format=inline|output=nowiki+|code=<nowiki>{{URL | 1= http://www.example.com/path?section=17 }}</nowiki>}}
== Technical limitations ==
The template has the following known technical limitations:
* An error will be generated if processing the entire page takes more than 10 seconds. This is an intentional limit in the [[mw:Extension:Scribunto|Scribunto]] extension that runs [[Module:Template test case]], on which this template is based. If a test cases page takes more than 10 seconds to load, you may need to split it up into different pages.
* The template converts the [[HTML entities]] &lt;, &gt; and &quot; inside template invocations to the literal characters <, > and ". This is due to the way nowiki tags work.
== See also ==
Similar templates:
* [[Template:Demo]] and [[Template:Demo-inline]] which use [[Module:Demo]]
* [[Template:Automarkup]] which uses [[Module:Automarkup]]
Templates invoking [[Module:Template test case]]:
* [[Template:Test case]] – a generalised test case template
* [[Template:Testcase rows]] – for a table of test cases arranged in rows
* [[Template:Testcase table]] – for a table of test cases arranged in columns
* [[Template:Inline test case]] – for test cases with small invocations and small output
* [[Template:Collapsible test case]] – for test cases collapsed by default if the results are the same
<includeonly>{{Sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Documentation assistance templates]]
[[Category:Programming typing-aid templates]]
[[Category:Template test cases| ]]
[[Category:Nowiki templates]]
[[Category:Wikitext processing templates]]
}}</includeonly>
36yfo3jlmkuvsywwba7jcoq3c54c1gc
ಮೋಡ್ಯೂಲ್:Template test case/styles.css
828
28731
370307
2026-05-15T22:26:05Z
en>Warudo
0
Formatting
370307
sanitized-css
text/css
/* {{pp-template}} */
.test-case-collapsible {
width: 100%;
border: 1px solid silver;
padding: 0.2em;
margin: 1em 0;
margin-top: -1px;
clear: both;
color: inherit;
box-sizing: border-box;
}
.test-case-collapsible .mw-collapsible-content > ul {
margin-left: 0;
}
.mw-collapsible.test-case-collapsible.mw-made-collapsible .mw-collapsible-content {
padding: 0.5em 1em;
}
.mw-collapsible.test-case-collapsible.mw-made-collapsible.mw-collapsed {
margin-bottom: 0;
margin-top: -1px;
}
div.mw-collapsible-content > ul > li {
display: block;
}
.test-case-collapsible-b1 {
background-color: var(--background-color-warning-subtle, #fdf2d5);
margin: 1px;
}
.test-case-collapsible-b2 {
background-color: var(--background-color-content-added, #a3d3ff);
margin: 1px;
}
.test-case-collapsible-b3 {
background-color: var(--background-color-success-subtle, #dff2eb);
margin: 1px;
}
@media screen {
html.skin-theme-clientpref-night .test-case-collapsible-b1 {
background-color: #453217;
}
html.skin-theme-clientpref-night .test-case-collapsible-b2 {
background-color: #233566;
}
html.skin-theme-clientpref-night .test-case-collapsible-b3 {
background-color: #003500;
}
}
@media screen and ( prefers-color-scheme: dark ) {
html.skin-theme-clientpref-os .test-case-collapsible-b1 {
background-color: #453217;
}
html.skin-theme-clientpref-os .test-case-collapsible-b2 {
background-color: #233566;
}
html.skin-theme-clientpref-os .test-case-collapsible-b3 {
background-color: #003500;
}
}
r42sby19eiy8mqrh9eyydx3ttjg2v72
370308
370307
2026-09-28T05:19:29Z
ChiK
1136
1 revision imported from [[:en:Module:Template_test_case/styles.css]]
370307
sanitized-css
text/css
/* {{pp-template}} */
.test-case-collapsible {
width: 100%;
border: 1px solid silver;
padding: 0.2em;
margin: 1em 0;
margin-top: -1px;
clear: both;
color: inherit;
box-sizing: border-box;
}
.test-case-collapsible .mw-collapsible-content > ul {
margin-left: 0;
}
.mw-collapsible.test-case-collapsible.mw-made-collapsible .mw-collapsible-content {
padding: 0.5em 1em;
}
.mw-collapsible.test-case-collapsible.mw-made-collapsible.mw-collapsed {
margin-bottom: 0;
margin-top: -1px;
}
div.mw-collapsible-content > ul > li {
display: block;
}
.test-case-collapsible-b1 {
background-color: var(--background-color-warning-subtle, #fdf2d5);
margin: 1px;
}
.test-case-collapsible-b2 {
background-color: var(--background-color-content-added, #a3d3ff);
margin: 1px;
}
.test-case-collapsible-b3 {
background-color: var(--background-color-success-subtle, #dff2eb);
margin: 1px;
}
@media screen {
html.skin-theme-clientpref-night .test-case-collapsible-b1 {
background-color: #453217;
}
html.skin-theme-clientpref-night .test-case-collapsible-b2 {
background-color: #233566;
}
html.skin-theme-clientpref-night .test-case-collapsible-b3 {
background-color: #003500;
}
}
@media screen and ( prefers-color-scheme: dark ) {
html.skin-theme-clientpref-os .test-case-collapsible-b1 {
background-color: #453217;
}
html.skin-theme-clientpref-os .test-case-collapsible-b2 {
background-color: #233566;
}
html.skin-theme-clientpref-os .test-case-collapsible-b3 {
background-color: #003500;
}
}
r42sby19eiy8mqrh9eyydx3ttjg2v72
ಟೆಂಪ್ಲೇಟ್:Test case nowiki
10
28732
370309
2026-02-24T18:00:20Z
en>MusikBot II
0
Protected "[[Template:Test case nowiki]]": [[Wikipedia:High-risk templates|High-risk template or module]]: 250 transclusions ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Require autoconfirmed or confirmed access] (indefinite))
370309
wikitext
text/x-wiki
<includeonly>{{#invoke:Template test case|main}}</includeonly><noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage and interwikis go on Wikidata. -->
</noinclude>
tqcbtoi20hh04qz7tcyj9c81ibksvas
370310
370309
2026-09-28T05:20:27Z
ChiK
1136
1 revision imported from [[:en:Template:Test_case_nowiki]]
370309
wikitext
text/x-wiki
<includeonly>{{#invoke:Template test case|main}}</includeonly><noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage and interwikis go on Wikidata. -->
</noinclude>
tqcbtoi20hh04qz7tcyj9c81ibksvas
ಮೋಡ್ಯೂಲ್:Message box/configuration/sandbox
828
28733
370311
2026-09-23T02:15:39Z
en>Axolitl
0
370311
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Message box configuration --
-- --
-- This module contains configuration data for [[Module:Message box]]. --
--------------------------------------------------------------------------------
return {
ambox = {
types = {
speedy = {
class = 'ambox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'ambox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'ambox-content',
image = 'Ambox important.svg'
},
style = {
class = 'ambox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'ambox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'ambox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'ambox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
allowBlankParams = {'talk', 'sect', 'date', 'issue', 'fix', 'subst', 'hidden'},
allowSmall = true,
smallParam = 'left',
smallClass = 'mbox-small-left',
substCheck = true,
classes = {'metadata', 'ambox'},
imageEmptyCell = true,
imageCheckBlank = true,
imageSmallSize = '20x20px',
imageCellDiv = true,
useCollapsibleTextFields = true,
imageRightNone = true,
sectionDefault = 'article',
allowMainspaceCategories = true,
templateCategory = 'Article message templates',
templateCategoryRequireName = true,
templateErrorCategory = 'Article message templates with missing parameters',
templateErrorParamsToCheck = {'issue', 'fix', 'subst'},
removalNotice = '<small>[[Help:Maintenance template removal|Learn how and when to remove this message]]</small>',
templatestyles = 'Module:Message box/sandbox/ambox.css'
},
cmbox = {
types = {
speedy = {
class = 'cmbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'cmbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'cmbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'cmbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'cmbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'cmbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'cmbox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'cmbox'},
imageEmptyCell = true,
templatestyles = 'Module:Message box/cmbox.css',
div_structure = true,
},
ctmbox = {
types = {
speedy = {
class = 'ctmbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'ctmbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'ctmbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'ctmbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'ctmbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'ctmbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'ctmbox',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'ctmbox'},
imageEmptyCell = true,
templatestyles = 'Module:Message box/tmbox.css/sandbox',
div_structure = true,
},
fmbox = {
types = {
warning = {
class = 'fmbox-warning',
image = 'Ambox warning pn.svg'
},
editnotice = {
class = 'fmbox-editnotice',
image = 'Information icon4.svg'
},
system = {
class = 'fmbox-system',
image = 'Information icon4.svg'
}
},
default = 'system',
showInvalidTypeError = true,
classes = {'fmbox'},
imageEmptyCell = false,
imageRightNone = false,
templatestyles = 'Module:Message box/fmbox.css',
div_structure = true,
},
imbox = {
types = {
speedy = {
class = 'imbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'imbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'imbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'imbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'imbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'imbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
license = {
class = 'imbox-license licensetpl',
image = 'Imbox-license.svg'
},
["license-related"] = {
class = 'imbox-license',
image = 'Imbox-license.svg'
},
featured = {
class = 'imbox-featured',
image = 'Cscr-featured.svg',
imageNeedsLink = true
},
notice = {
class = 'imbox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'imbox'},
imageEmptyCell = true,
below = true,
templateCategory = 'File message boxes',
templatestyles = 'Module:Message box/imbox.css',
div_structure = true,
},
ombox = {
types = {
speedy = {
class = 'ombox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'ombox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'ombox-content',
image = 'Ambox important.svg'
},
style = {
class = 'ombox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'ombox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'ombox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'ombox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'ombox'},
allowSmall = true,
imageEmptyCell = true,
imageRightNone = true,
templatestyles = 'Module:Message box/ombox.css'
},
tmbox = {
types = {
speedy = {
class = 'tmbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'tmbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'tmbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'tmbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'tmbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'tmbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'tmbox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'tmbox'},
allowSmall = true,
imageRightNone = true,
imageEmptyCell = true,
templateCategory = 'Talk message boxes',
templatestyles = 'Module:Message box/tmbox.css'
}
}
9144qbiw38ebnumysg3v0uinhqmssfn
370312
370311
2026-09-28T05:20:27Z
ChiK
1136
1 revision imported from [[:en:Module:Message_box/configuration/sandbox]]
370311
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Message box configuration --
-- --
-- This module contains configuration data for [[Module:Message box]]. --
--------------------------------------------------------------------------------
return {
ambox = {
types = {
speedy = {
class = 'ambox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'ambox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'ambox-content',
image = 'Ambox important.svg'
},
style = {
class = 'ambox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'ambox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'ambox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'ambox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
allowBlankParams = {'talk', 'sect', 'date', 'issue', 'fix', 'subst', 'hidden'},
allowSmall = true,
smallParam = 'left',
smallClass = 'mbox-small-left',
substCheck = true,
classes = {'metadata', 'ambox'},
imageEmptyCell = true,
imageCheckBlank = true,
imageSmallSize = '20x20px',
imageCellDiv = true,
useCollapsibleTextFields = true,
imageRightNone = true,
sectionDefault = 'article',
allowMainspaceCategories = true,
templateCategory = 'Article message templates',
templateCategoryRequireName = true,
templateErrorCategory = 'Article message templates with missing parameters',
templateErrorParamsToCheck = {'issue', 'fix', 'subst'},
removalNotice = '<small>[[Help:Maintenance template removal|Learn how and when to remove this message]]</small>',
templatestyles = 'Module:Message box/sandbox/ambox.css'
},
cmbox = {
types = {
speedy = {
class = 'cmbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'cmbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'cmbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'cmbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'cmbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'cmbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'cmbox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'cmbox'},
imageEmptyCell = true,
templatestyles = 'Module:Message box/cmbox.css',
div_structure = true,
},
ctmbox = {
types = {
speedy = {
class = 'ctmbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'ctmbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'ctmbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'ctmbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'ctmbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'ctmbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'ctmbox',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'ctmbox'},
imageEmptyCell = true,
templatestyles = 'Module:Message box/tmbox.css/sandbox',
div_structure = true,
},
fmbox = {
types = {
warning = {
class = 'fmbox-warning',
image = 'Ambox warning pn.svg'
},
editnotice = {
class = 'fmbox-editnotice',
image = 'Information icon4.svg'
},
system = {
class = 'fmbox-system',
image = 'Information icon4.svg'
}
},
default = 'system',
showInvalidTypeError = true,
classes = {'fmbox'},
imageEmptyCell = false,
imageRightNone = false,
templatestyles = 'Module:Message box/fmbox.css',
div_structure = true,
},
imbox = {
types = {
speedy = {
class = 'imbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'imbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'imbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'imbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'imbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'imbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
license = {
class = 'imbox-license licensetpl',
image = 'Imbox-license.svg'
},
["license-related"] = {
class = 'imbox-license',
image = 'Imbox-license.svg'
},
featured = {
class = 'imbox-featured',
image = 'Cscr-featured.svg',
imageNeedsLink = true
},
notice = {
class = 'imbox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'imbox'},
imageEmptyCell = true,
below = true,
templateCategory = 'File message boxes',
templatestyles = 'Module:Message box/imbox.css',
div_structure = true,
},
ombox = {
types = {
speedy = {
class = 'ombox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'ombox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'ombox-content',
image = 'Ambox important.svg'
},
style = {
class = 'ombox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'ombox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'ombox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'ombox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'ombox'},
allowSmall = true,
imageEmptyCell = true,
imageRightNone = true,
templatestyles = 'Module:Message box/ombox.css'
},
tmbox = {
types = {
speedy = {
class = 'tmbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'tmbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'tmbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'tmbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'tmbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'tmbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'tmbox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'tmbox'},
allowSmall = true,
imageRightNone = true,
imageEmptyCell = true,
templateCategory = 'Talk message boxes',
templatestyles = 'Module:Message box/tmbox.css'
}
}
9144qbiw38ebnumysg3v0uinhqmssfn
ಮೋಡ್ಯೂಲ್:Message box/sandbox
828
28734
370313
2026-07-09T11:25:07Z
en>Frost
0
Reverted edits by [[Special:Contributions/~2026-38799-30|~2026-38799-30]] ([[User talk:~2026-38799-30|talk]]): unexplained content removal ([[WP:HG|HG]]) (3.4.14)
370313
Scribunto
text/plain
require('strict')
local getArgs
local yesno = require('Module:Yesno')
local lang = mw.language.getContentLanguage()
local CONFIG_MODULE = 'Module:Message box/configuration/sandbox'
local DEMOSPACES = {talk = 'tmbox', image = 'imbox', file = 'imbox', category = 'cmbox', categorytalk = 'ctmbox', article = 'ambox', main = 'ambox'}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function getTitleObject(...)
-- Get the title object, passing the function through pcall
-- in case we are over the expensive function count limit.
local success, title = pcall(mw.title.new, ...)
if success then
return title
end
end
local function union(t1, t2)
-- Returns the union of two arrays.
local vals = {}
for i, v in ipairs(t1) do
vals[v] = true
end
for i, v in ipairs(t2) do
vals[v] = true
end
local ret = {}
for k in pairs(vals) do
table.insert(ret, k)
end
table.sort(ret)
return ret
end
local function getArgNums(args, prefix)
local nums = {}
for k, v in pairs(args) do
local num = mw.ustring.match(tostring(k), '^' .. prefix .. '([1-9]%d*)$')
if num then
table.insert(nums, tonumber(num))
end
end
table.sort(nums)
return nums
end
--------------------------------------------------------------------------------
-- Box class definition
--------------------------------------------------------------------------------
local MessageBox = {}
MessageBox.__index = MessageBox
function MessageBox.new(boxType, args, cfg)
args = args or {}
local obj = {}
-- Set the title object and the namespace.
obj.title = getTitleObject(args.page) or mw.title.getCurrentTitle()
-- Set the config for our box type.
obj.cfg = cfg[boxType]
if not obj.cfg then
local ns = obj.title.namespace
-- boxType is "mbox" or invalid input
if args.demospace and args.demospace ~= '' then
-- implement demospace parameter of mbox
local demospace = string.lower(args.demospace)
if DEMOSPACES[demospace] then
-- use template from DEMOSPACES
obj.cfg = cfg[DEMOSPACES[demospace]]
elseif string.find( demospace, 'talk' ) then
-- demo as a talk page
obj.cfg = cfg.tmbox
else
-- default to ombox
obj.cfg = cfg.ombox
end
elseif ns == 0 then
obj.cfg = cfg.ambox -- main namespace
elseif ns == 6 then
obj.cfg = cfg.imbox -- file namespace
elseif ns == 14 then
obj.cfg = cfg.cmbox -- category namespace
else
local nsTable = mw.site.namespaces[ns]
if nsTable and nsTable.isTalk then
obj.cfg = cfg.tmbox -- any talk namespace
else
obj.cfg = cfg.ombox -- other namespaces or invalid input
end
end
end
-- Set the arguments, and remove all blank arguments except for the ones
-- listed in cfg.allowBlankParams.
do
local newArgs = {}
for k, v in pairs(args) do
if v ~= '' then
newArgs[k] = v
end
end
for i, param in ipairs(obj.cfg.allowBlankParams or {}) do
newArgs[param] = args[param]
end
obj.args = newArgs
end
-- Define internal data structure.
obj.categories = {}
obj.classes = {}
-- For lazy loading of [[Module:Category handler]].
obj.hasCategories = false
return setmetatable(obj, MessageBox)
end
function MessageBox:addCat(ns, cat, sort)
if not cat then
return nil
end
if sort then
cat = string.format('[[Category:%s|%s]]', cat, sort)
else
cat = string.format('[[Category:%s]]', cat)
end
self.hasCategories = true
self.categories[ns] = self.categories[ns] or {}
table.insert(self.categories[ns], cat)
end
function MessageBox:addClass(class)
if not class then
return nil
end
table.insert(self.classes, class)
end
function MessageBox:setParameters()
local args = self.args
local cfg = self.cfg
-- Get type data.
self.type = args.type
local typeData = cfg.types[self.type]
self.invalidTypeError = cfg.showInvalidTypeError
and self.type
and not typeData
typeData = typeData or cfg.types[cfg.default]
self.typeClass = typeData.class
self.typeImage = typeData.image
self.typeImageNeedsLink = typeData.imageNeedsLink
-- Find if the box has been wrongly substituted.
self.isSubstituted = cfg.substCheck and args.subst == 'SUBST'
-- Find whether we are using a small message box.
self.isSmall = cfg.allowSmall and (
cfg.smallParam and args.small == cfg.smallParam
or not cfg.smallParam and yesno(args.small)
)
-- Set the below row.
self.below = cfg.below and args.below
-- Add attributes, classes and styles.
self.id = args.id
self.name = args.name
if self.name then
self:addClass('box-' .. string.gsub(self.name,' ','_'))
end
if yesno(args.plainlinks) ~= false then
self:addClass('plainlinks')
end
if self.below then
self:addClass('mbox-with-below')
end
for _, class in ipairs(cfg.classes or {}) do
self:addClass(class)
end
if self.isSmall then
self:addClass(cfg.smallClass or 'mbox-small')
end
self:addClass(self.typeClass)
self:addClass(args.class)
self.style = args.style
self.attrs = args.attrs
-- Set text style.
self.textstyle = args.textstyle
-- Set image classes.
self.imageRightClass = args.imagerightclass or args.imageclass
self.imageLeftClass = args.imageleftclass or args.imageclass
-- Find if we are on the template page or not. This functionality is only
-- used if useCollapsibleTextFields is set, or if both cfg.templateCategory
-- and cfg.templateCategoryRequireName are set.
self.useCollapsibleTextFields = cfg.useCollapsibleTextFields
if self.useCollapsibleTextFields
or cfg.templateCategory
and cfg.templateCategoryRequireName
then
if self.name then
local templateName = mw.ustring.match(
self.name,
'^[tT][eE][mM][pP][lL][aA][tT][eE][%s_]*:[%s_]*(.*)$'
) or self.name
templateName = 'Template:' .. templateName
self.templateTitle = getTitleObject(templateName)
end
self.isTemplatePage = self.templateTitle
and mw.title.equals(self.title, self.templateTitle)
end
-- Process data for collapsible text fields. At the moment these are only
-- used in {{ambox}}.
if self.useCollapsibleTextFields then
-- Get the self.issue value.
if self.isSmall and args.smalltext then
self.issue = args.smalltext
else
local sect
if args.sect == '' then
sect = 'This ' .. (cfg.sectionDefault or 'page')
elseif type(args.sect) == 'string' then
if args.sect_plural == '' then
sect = 'This ' .. args.sect
else
sect = 'These ' .. args.sect
end
end
local issue = args.issue
issue = type(issue) == 'string' and issue ~= '' and issue or nil
local text = args.text
text = type(text) == 'string' and text or nil
local issues = {}
table.insert(issues, sect)
table.insert(issues, issue)
table.insert(issues, text)
self.issue = table.concat(issues, ' ')
end
-- Get the self.talk value.
local talk = args.talk
-- Show talk links on the template page or template subpages if the talk
-- parameter is blank.
if talk == ''
and self.templateTitle
and (
mw.title.equals(self.templateTitle, self.title)
or self.title:isSubpageOf(self.templateTitle)
)
then
talk = '#'
elseif talk == '' then
talk = nil
end
if talk then
-- If the talk value is a talk page, make a link to that page. Else
-- assume that it's a section heading, and make a link to the talk
-- page of the current page with that section heading.
local talkTitle = getTitleObject(talk)
local talkArgIsTalkPage = true
if not talkTitle or not talkTitle.isTalkPage then
talkArgIsTalkPage = false
talkTitle = getTitleObject(
self.title.text,
mw.site.namespaces[self.title.namespace].talk.id
)
end
if talkTitle and talkTitle.exists then
local talkText
if self.isSmall then
local talkLink = talkArgIsTalkPage and talk or (talkTitle.prefixedText .. (talk == '#' and '' or '#') .. talk)
talkText = string.format('([[%s|talk]])', talkLink)
else
talkText = 'Relevant discussion may be found on'
if talkArgIsTalkPage then
talkText = string.format(
'%s [[%s|%s]].',
talkText,
talk,
talkTitle.prefixedText
)
else
talkText = string.format(
'%s the [[%s' .. (talk == '#' and '' or '#') .. '%s|talk page]].',
talkText,
talkTitle.prefixedText,
talk
)
end
end
self.talk = talkText
end
end
-- Get other values.
self.fix = args.fix ~= '' and args.fix or nil
local date
if args.date and args.date ~= '' then
date = args.date
elseif args.date == '' and self.isTemplatePage then
date = lang:formatDate('F Y')
end
if date then
self.date = string.format(" <span class='date-container'><i>(<span class='date'>%s</span>)</i></span>", date)
end
self.info = args.info
if yesno(args.removalnotice) then
self.removalNotice = cfg.removalNotice
end
end
-- Set the non-collapsible text field. At the moment this is used by all box
-- types other than ambox, and also by ambox when small=yes.
if self.isSmall then
self.text = args.smalltext or args.text
else
self.text = args.text
end
-- General image settings.
self.imageCellDiv = not self.isSmall and cfg.imageCellDiv
self.imageEmptyCell = cfg.imageEmptyCell
-- Left image settings.
local imageLeft = self.isSmall and args.smallimage or args.image
if cfg.imageCheckBlank and imageLeft ~= 'blank' and imageLeft ~= 'none'
or not cfg.imageCheckBlank and imageLeft ~= 'none'
then
self.imageLeft = imageLeft
if not imageLeft then
local imageSize = self.isSmall
and (cfg.imageSmallSize or '30x30px')
or '40x40px'
self.imageLeft = string.format('[[File:%s|%s%s|alt=]]', self.typeImage
or 'Information icon4.svg', imageSize, self.typeImageNeedsLink and "" or "|link=" )
end
end
-- Right image settings.
local imageRight = self.isSmall and args.smallimageright or args.imageright
if not (cfg.imageRightNone and imageRight == 'none') then
self.imageRight = imageRight
end
-- set templatestyles
self.base_templatestyles = cfg.templatestyles
self.templatestyles = args.templatestyles
end
function MessageBox:setMainspaceCategories()
local args = self.args
local cfg = self.cfg
if not cfg.allowMainspaceCategories then
return nil
end
local nums = {}
for _, prefix in ipairs{'cat', 'category', 'all'} do
args[prefix .. '1'] = args[prefix]
nums = union(nums, getArgNums(args, prefix))
end
-- The following is roughly equivalent to the old {{Ambox/category}}.
local date = args.date
date = type(date) == 'string' and date
local preposition = 'from'
for _, num in ipairs(nums) do
local mainCat = args['cat' .. tostring(num)]
or args['category' .. tostring(num)]
local allCat = args['all' .. tostring(num)]
mainCat = type(mainCat) == 'string' and mainCat
allCat = type(allCat) == 'string' and allCat
if mainCat and date and date ~= '' then
local catTitle = string.format('%s %s %s', mainCat, preposition, date)
self:addCat(0, catTitle)
catTitle = getTitleObject('Category:' .. catTitle)
if not catTitle or not catTitle.exists then
self:addCat(0, 'Articles with invalid date parameter in template')
end
elseif mainCat and (not date or date == '') then
self:addCat(0, mainCat)
end
if allCat then
self:addCat(0, allCat)
end
end
end
function MessageBox:setTemplateCategories()
local args = self.args
local cfg = self.cfg
-- Add template categories.
if cfg.templateCategory then
if cfg.templateCategoryRequireName then
if self.isTemplatePage then
self:addCat(10, cfg.templateCategory)
end
elseif not self.title.isSubpage then
self:addCat(10, cfg.templateCategory)
end
end
-- Add template error categories.
if cfg.templateErrorCategory then
local templateErrorCategory = cfg.templateErrorCategory
local templateCat, templateSort
if not self.name and not self.title.isSubpage then
templateCat = templateErrorCategory
elseif self.isTemplatePage then
local paramsToCheck = cfg.templateErrorParamsToCheck or {}
local count = 0
for i, param in ipairs(paramsToCheck) do
if not args[param] then
count = count + 1
end
end
if count > 0 then
templateCat = templateErrorCategory
templateSort = tostring(count)
end
if self.categoryNums and #self.categoryNums > 0 then
templateCat = templateErrorCategory
templateSort = 'C'
end
end
self:addCat(10, templateCat, templateSort)
end
end
function MessageBox:setAllNamespaceCategories()
-- Set categories for all namespaces.
if self.invalidTypeError then
local allSort = (self.title.namespace == 0 and 'Main:' or '') .. self.title.prefixedText
self:addCat('all', 'Wikipedia message box parameter needs fixing', allSort)
end
if self.isSubstituted then
self:addCat('all', 'Pages with incorrectly substituted templates')
end
end
function MessageBox:setCategories()
if self.title.namespace == 0 then
self:setMainspaceCategories()
elseif self.title.namespace == 10 then
self:setTemplateCategories()
end
self:setAllNamespaceCategories()
end
function MessageBox:renderCategories()
if not self.hasCategories then
-- No categories added, no need to pass them to Category handler so,
-- if it was invoked, it would return the empty string.
-- So we shortcut and return the empty string.
return ""
end
-- Convert category tables to strings and pass them through
-- [[Module:Category handler]].
return require('Module:Category handler')._main{
main = table.concat(self.categories[0] or {}),
template = table.concat(self.categories[10] or {}),
all = table.concat(self.categories.all or {}),
nocat = self.args.nocat,
page = self.args.page
}
end
function MessageBox:exportDiv()
local root = mw.html.create()
-- Add the subst check error.
if self.isSubstituted and self.name then
root:tag('b')
:addClass('error')
:wikitext(string.format(
'Template <code>%s[[Template:%s|%s]]%s</code> has been incorrectly substituted.',
mw.text.nowiki('{{'), self.name, self.name, mw.text.nowiki('}}')
))
end
local frame = mw.getCurrentFrame()
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.base_templatestyles },
})
-- Add support for a single custom templatestyles sheet. Undocumented as
-- need should be limited and many templates using mbox are substed; we
-- don't want to spread templatestyles sheets around to arbitrary places
if self.templatestyles then
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.templatestyles },
})
end
-- Create the box.
local mbox = root:tag('div')
mbox:attr('id', self.id or nil)
for i, class in ipairs(self.classes or {}) do
mbox:addClass(class or nil)
end
mbox
:cssText(self.style or nil)
if self.attrs then
mbox:attr(self.attrs)
end
local flex_container
if self.below then
-- we need to wrap the flex components (`image(right)` and `text`) in their
-- own container div to support the `below` parameter
flex_container = mw.html.create('div')
flex_container:addClass('mbox-flex')
else
-- the mbox itself is the parent, so we need no HTML flex_container
flex_container = mw.html.create()
end
-- Add the left-hand image.
if self.imageLeft then
local imageLeftCell = flex_container:tag('div'):addClass('mbox-image')
imageLeftCell
:addClass(self.imageLeftClass)
:wikitext(self.imageLeft or nil)
end
-- Add the text.
local textCell = flex_container:tag('div'):addClass('mbox-text')
if self.useCollapsibleTextFields then
-- The message box uses advanced text parameters that allow things to be
-- collapsible. At the moment, only ambox uses this.
textCell:cssText(self.textstyle or nil)
local textCellDiv = textCell:tag('div')
textCellDiv
:addClass('mbox-text-span')
:wikitext(self.issue or nil)
if (self.talk or self.fix) then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:wikitext(self.talk and (' ' .. self.talk) or nil)
:wikitext(self.fix and (' ' .. self.fix) or nil)
end
textCellDiv:wikitext(self.date and (' ' .. self.date) or nil)
if self.info and not self.isSmall then
textCellDiv
:tag('span')
:addClass('hide-when-compact')
:wikitext(self.info and (' ' .. self.info) or nil)
end
if self.removalNotice then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:tag('i')
:wikitext(string.format(" (%s)", self.removalNotice))
end
else
-- Default text formatting - anything goes.
textCell
:cssText(self.textstyle or nil)
:wikitext(self.text or nil)
end
-- Add the right-hand image.
if self.imageRight then
local imageRightCell = flex_container:tag('div'):addClass('mbox-imageright')
imageRightCell
:addClass(self.imageRightClass)
:wikitext(self.imageRight or nil)
end
mbox:node(flex_container)
-- Add the below row.
if self.below then
mbox:tag('div')
:addClass('mbox-text mbox-below')
:cssText(self.textstyle or nil)
:wikitext(self.below or nil)
end
-- Add error message for invalid type parameters.
if self.invalidTypeError then
root:tag('div')
:addClass('mbox-invalid-type')
:wikitext(string.format(
'This message box is using an invalid "type=%s" parameter and needs fixing.',
self.type or ''
))
end
-- Add categories.
root:wikitext(self:renderCategories() or nil)
return tostring(root)
end
function MessageBox:export()
local root = mw.html.create()
-- Add the subst check error.
if self.isSubstituted and self.name then
root:tag('b')
:addClass('error')
:wikitext(string.format(
'Template <code>%s[[Template:%s|%s]]%s</code> has been incorrectly substituted.',
mw.text.nowiki('{{'), self.name, self.name, mw.text.nowiki('}}')
))
end
local frame = mw.getCurrentFrame()
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.base_templatestyles },
})
-- Add support for a single custom templatestyles sheet. Undocumented as
-- need should be limited and many templates using mbox are substed; we
-- don't want to spread templatestyles sheets around to arbitrary places
if self.templatestyles then
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.templatestyles },
})
end
-- Create the box table.
local boxTable = root:tag('table')
boxTable:attr('id', self.id or nil)
for i, class in ipairs(self.classes or {}) do
boxTable:addClass(class or nil)
end
boxTable
:cssText(self.style or nil)
:attr('role', 'presentation')
if self.attrs then
boxTable:attr(self.attrs)
end
-- Add the left-hand image.
local row = boxTable:tag('tr')
if self.imageLeft then
local imageLeftCell = row:tag('td'):addClass('mbox-image')
if self.imageCellDiv then
-- If we are using a div, redefine imageLeftCell so that the image
-- is inside it. Divs use style="width: 52px;", which limits the
-- image width to 52px. If any images in a div are wider than that,
-- they may overlap with the text or cause other display problems.
imageLeftCell = imageLeftCell:tag('div'):addClass('mbox-image-div')
end
imageLeftCell
:addClass(self.imageLeftClass)
:wikitext(self.imageLeft or nil)
elseif self.imageEmptyCell then
-- Some message boxes define an empty cell if no image is specified, and
-- some don't. The old template code in templates where empty cells are
-- specified gives the following hint: "No image. Cell with some width
-- or padding necessary for text cell to have 100% width."
row:tag('td')
:addClass('mbox-empty-cell')
end
-- Add the text.
local textCell = row:tag('td'):addClass('mbox-text')
if self.useCollapsibleTextFields then
-- The message box uses advanced text parameters that allow things to be
-- collapsible. At the moment, only ambox uses this.
textCell:cssText(self.textstyle or nil)
local textCellDiv = textCell:tag('div')
textCellDiv
:addClass('mbox-text-span')
:wikitext(self.issue or nil)
if (self.talk or self.fix) then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:wikitext(self.talk and (' ' .. self.talk) or nil)
:wikitext(self.fix and (' ' .. self.fix) or nil)
end
textCellDiv:wikitext(self.date and (' ' .. self.date) or nil)
if self.info and not self.isSmall then
textCellDiv
:tag('span')
:addClass('hide-when-compact')
:wikitext(self.info and (' ' .. self.info) or nil)
end
if self.removalNotice then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:tag('i')
:wikitext(string.format(" (%s)", self.removalNotice))
end
else
-- Default text formatting - anything goes.
textCell
:cssText(self.textstyle or nil)
:wikitext(self.text or nil)
end
-- Add the right-hand image.
if self.imageRight then
local imageRightCell = row:tag('td'):addClass('mbox-imageright')
if self.imageCellDiv then
-- If we are using a div, redefine imageRightCell so that the image
-- is inside it.
imageRightCell = imageRightCell:tag('div'):addClass('mbox-image-div')
end
imageRightCell
:addClass(self.imageRightClass)
:wikitext(self.imageRight or nil)
end
-- Add the below row.
if self.below then
boxTable:tag('tr')
:tag('td')
:attr('colspan', self.imageRight and '3' or '2')
:addClass('mbox-text')
:cssText(self.textstyle or nil)
:wikitext(self.below or nil)
end
-- Add error message for invalid type parameters.
if self.invalidTypeError then
root:tag('div')
:addClass('mbox-invalid-type')
:wikitext(string.format(
'This message box is using an invalid "type=%s" parameter and needs fixing.',
self.type or ''
))
end
-- Add categories.
root:wikitext(self:renderCategories() or nil)
return tostring(root)
end
--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------
local p, mt = {}, {}
function p._exportClasses()
-- For testing.
return {
MessageBox = MessageBox
}
end
function p.main(boxType, args, cfgTables)
local box = MessageBox.new(boxType, args, cfgTables or mw.loadData(CONFIG_MODULE))
box:setParameters()
box:setCategories()
-- DIV MIGRATION CONDITIONAL
if box.cfg.div_structure then
return box:exportDiv()
end
-- END DIV MIGRATION CONDITIONAL
return box:export()
end
function mt.__index(t, k)
return function (frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return t.main(k, getArgs(frame, {trim = false, removeBlanks = false}))
end
end
return setmetatable(p, mt)
6p9ciodgy803jyhw023qnncgjh94jlx
370314
370313
2026-09-28T05:20:27Z
ChiK
1136
1 revision imported from [[:en:Module:Message_box/sandbox]]
370313
Scribunto
text/plain
require('strict')
local getArgs
local yesno = require('Module:Yesno')
local lang = mw.language.getContentLanguage()
local CONFIG_MODULE = 'Module:Message box/configuration/sandbox'
local DEMOSPACES = {talk = 'tmbox', image = 'imbox', file = 'imbox', category = 'cmbox', categorytalk = 'ctmbox', article = 'ambox', main = 'ambox'}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function getTitleObject(...)
-- Get the title object, passing the function through pcall
-- in case we are over the expensive function count limit.
local success, title = pcall(mw.title.new, ...)
if success then
return title
end
end
local function union(t1, t2)
-- Returns the union of two arrays.
local vals = {}
for i, v in ipairs(t1) do
vals[v] = true
end
for i, v in ipairs(t2) do
vals[v] = true
end
local ret = {}
for k in pairs(vals) do
table.insert(ret, k)
end
table.sort(ret)
return ret
end
local function getArgNums(args, prefix)
local nums = {}
for k, v in pairs(args) do
local num = mw.ustring.match(tostring(k), '^' .. prefix .. '([1-9]%d*)$')
if num then
table.insert(nums, tonumber(num))
end
end
table.sort(nums)
return nums
end
--------------------------------------------------------------------------------
-- Box class definition
--------------------------------------------------------------------------------
local MessageBox = {}
MessageBox.__index = MessageBox
function MessageBox.new(boxType, args, cfg)
args = args or {}
local obj = {}
-- Set the title object and the namespace.
obj.title = getTitleObject(args.page) or mw.title.getCurrentTitle()
-- Set the config for our box type.
obj.cfg = cfg[boxType]
if not obj.cfg then
local ns = obj.title.namespace
-- boxType is "mbox" or invalid input
if args.demospace and args.demospace ~= '' then
-- implement demospace parameter of mbox
local demospace = string.lower(args.demospace)
if DEMOSPACES[demospace] then
-- use template from DEMOSPACES
obj.cfg = cfg[DEMOSPACES[demospace]]
elseif string.find( demospace, 'talk' ) then
-- demo as a talk page
obj.cfg = cfg.tmbox
else
-- default to ombox
obj.cfg = cfg.ombox
end
elseif ns == 0 then
obj.cfg = cfg.ambox -- main namespace
elseif ns == 6 then
obj.cfg = cfg.imbox -- file namespace
elseif ns == 14 then
obj.cfg = cfg.cmbox -- category namespace
else
local nsTable = mw.site.namespaces[ns]
if nsTable and nsTable.isTalk then
obj.cfg = cfg.tmbox -- any talk namespace
else
obj.cfg = cfg.ombox -- other namespaces or invalid input
end
end
end
-- Set the arguments, and remove all blank arguments except for the ones
-- listed in cfg.allowBlankParams.
do
local newArgs = {}
for k, v in pairs(args) do
if v ~= '' then
newArgs[k] = v
end
end
for i, param in ipairs(obj.cfg.allowBlankParams or {}) do
newArgs[param] = args[param]
end
obj.args = newArgs
end
-- Define internal data structure.
obj.categories = {}
obj.classes = {}
-- For lazy loading of [[Module:Category handler]].
obj.hasCategories = false
return setmetatable(obj, MessageBox)
end
function MessageBox:addCat(ns, cat, sort)
if not cat then
return nil
end
if sort then
cat = string.format('[[Category:%s|%s]]', cat, sort)
else
cat = string.format('[[Category:%s]]', cat)
end
self.hasCategories = true
self.categories[ns] = self.categories[ns] or {}
table.insert(self.categories[ns], cat)
end
function MessageBox:addClass(class)
if not class then
return nil
end
table.insert(self.classes, class)
end
function MessageBox:setParameters()
local args = self.args
local cfg = self.cfg
-- Get type data.
self.type = args.type
local typeData = cfg.types[self.type]
self.invalidTypeError = cfg.showInvalidTypeError
and self.type
and not typeData
typeData = typeData or cfg.types[cfg.default]
self.typeClass = typeData.class
self.typeImage = typeData.image
self.typeImageNeedsLink = typeData.imageNeedsLink
-- Find if the box has been wrongly substituted.
self.isSubstituted = cfg.substCheck and args.subst == 'SUBST'
-- Find whether we are using a small message box.
self.isSmall = cfg.allowSmall and (
cfg.smallParam and args.small == cfg.smallParam
or not cfg.smallParam and yesno(args.small)
)
-- Set the below row.
self.below = cfg.below and args.below
-- Add attributes, classes and styles.
self.id = args.id
self.name = args.name
if self.name then
self:addClass('box-' .. string.gsub(self.name,' ','_'))
end
if yesno(args.plainlinks) ~= false then
self:addClass('plainlinks')
end
if self.below then
self:addClass('mbox-with-below')
end
for _, class in ipairs(cfg.classes or {}) do
self:addClass(class)
end
if self.isSmall then
self:addClass(cfg.smallClass or 'mbox-small')
end
self:addClass(self.typeClass)
self:addClass(args.class)
self.style = args.style
self.attrs = args.attrs
-- Set text style.
self.textstyle = args.textstyle
-- Set image classes.
self.imageRightClass = args.imagerightclass or args.imageclass
self.imageLeftClass = args.imageleftclass or args.imageclass
-- Find if we are on the template page or not. This functionality is only
-- used if useCollapsibleTextFields is set, or if both cfg.templateCategory
-- and cfg.templateCategoryRequireName are set.
self.useCollapsibleTextFields = cfg.useCollapsibleTextFields
if self.useCollapsibleTextFields
or cfg.templateCategory
and cfg.templateCategoryRequireName
then
if self.name then
local templateName = mw.ustring.match(
self.name,
'^[tT][eE][mM][pP][lL][aA][tT][eE][%s_]*:[%s_]*(.*)$'
) or self.name
templateName = 'Template:' .. templateName
self.templateTitle = getTitleObject(templateName)
end
self.isTemplatePage = self.templateTitle
and mw.title.equals(self.title, self.templateTitle)
end
-- Process data for collapsible text fields. At the moment these are only
-- used in {{ambox}}.
if self.useCollapsibleTextFields then
-- Get the self.issue value.
if self.isSmall and args.smalltext then
self.issue = args.smalltext
else
local sect
if args.sect == '' then
sect = 'This ' .. (cfg.sectionDefault or 'page')
elseif type(args.sect) == 'string' then
if args.sect_plural == '' then
sect = 'This ' .. args.sect
else
sect = 'These ' .. args.sect
end
end
local issue = args.issue
issue = type(issue) == 'string' and issue ~= '' and issue or nil
local text = args.text
text = type(text) == 'string' and text or nil
local issues = {}
table.insert(issues, sect)
table.insert(issues, issue)
table.insert(issues, text)
self.issue = table.concat(issues, ' ')
end
-- Get the self.talk value.
local talk = args.talk
-- Show talk links on the template page or template subpages if the talk
-- parameter is blank.
if talk == ''
and self.templateTitle
and (
mw.title.equals(self.templateTitle, self.title)
or self.title:isSubpageOf(self.templateTitle)
)
then
talk = '#'
elseif talk == '' then
talk = nil
end
if talk then
-- If the talk value is a talk page, make a link to that page. Else
-- assume that it's a section heading, and make a link to the talk
-- page of the current page with that section heading.
local talkTitle = getTitleObject(talk)
local talkArgIsTalkPage = true
if not talkTitle or not talkTitle.isTalkPage then
talkArgIsTalkPage = false
talkTitle = getTitleObject(
self.title.text,
mw.site.namespaces[self.title.namespace].talk.id
)
end
if talkTitle and talkTitle.exists then
local talkText
if self.isSmall then
local talkLink = talkArgIsTalkPage and talk or (talkTitle.prefixedText .. (talk == '#' and '' or '#') .. talk)
talkText = string.format('([[%s|talk]])', talkLink)
else
talkText = 'Relevant discussion may be found on'
if talkArgIsTalkPage then
talkText = string.format(
'%s [[%s|%s]].',
talkText,
talk,
talkTitle.prefixedText
)
else
talkText = string.format(
'%s the [[%s' .. (talk == '#' and '' or '#') .. '%s|talk page]].',
talkText,
talkTitle.prefixedText,
talk
)
end
end
self.talk = talkText
end
end
-- Get other values.
self.fix = args.fix ~= '' and args.fix or nil
local date
if args.date and args.date ~= '' then
date = args.date
elseif args.date == '' and self.isTemplatePage then
date = lang:formatDate('F Y')
end
if date then
self.date = string.format(" <span class='date-container'><i>(<span class='date'>%s</span>)</i></span>", date)
end
self.info = args.info
if yesno(args.removalnotice) then
self.removalNotice = cfg.removalNotice
end
end
-- Set the non-collapsible text field. At the moment this is used by all box
-- types other than ambox, and also by ambox when small=yes.
if self.isSmall then
self.text = args.smalltext or args.text
else
self.text = args.text
end
-- General image settings.
self.imageCellDiv = not self.isSmall and cfg.imageCellDiv
self.imageEmptyCell = cfg.imageEmptyCell
-- Left image settings.
local imageLeft = self.isSmall and args.smallimage or args.image
if cfg.imageCheckBlank and imageLeft ~= 'blank' and imageLeft ~= 'none'
or not cfg.imageCheckBlank and imageLeft ~= 'none'
then
self.imageLeft = imageLeft
if not imageLeft then
local imageSize = self.isSmall
and (cfg.imageSmallSize or '30x30px')
or '40x40px'
self.imageLeft = string.format('[[File:%s|%s%s|alt=]]', self.typeImage
or 'Information icon4.svg', imageSize, self.typeImageNeedsLink and "" or "|link=" )
end
end
-- Right image settings.
local imageRight = self.isSmall and args.smallimageright or args.imageright
if not (cfg.imageRightNone and imageRight == 'none') then
self.imageRight = imageRight
end
-- set templatestyles
self.base_templatestyles = cfg.templatestyles
self.templatestyles = args.templatestyles
end
function MessageBox:setMainspaceCategories()
local args = self.args
local cfg = self.cfg
if not cfg.allowMainspaceCategories then
return nil
end
local nums = {}
for _, prefix in ipairs{'cat', 'category', 'all'} do
args[prefix .. '1'] = args[prefix]
nums = union(nums, getArgNums(args, prefix))
end
-- The following is roughly equivalent to the old {{Ambox/category}}.
local date = args.date
date = type(date) == 'string' and date
local preposition = 'from'
for _, num in ipairs(nums) do
local mainCat = args['cat' .. tostring(num)]
or args['category' .. tostring(num)]
local allCat = args['all' .. tostring(num)]
mainCat = type(mainCat) == 'string' and mainCat
allCat = type(allCat) == 'string' and allCat
if mainCat and date and date ~= '' then
local catTitle = string.format('%s %s %s', mainCat, preposition, date)
self:addCat(0, catTitle)
catTitle = getTitleObject('Category:' .. catTitle)
if not catTitle or not catTitle.exists then
self:addCat(0, 'Articles with invalid date parameter in template')
end
elseif mainCat and (not date or date == '') then
self:addCat(0, mainCat)
end
if allCat then
self:addCat(0, allCat)
end
end
end
function MessageBox:setTemplateCategories()
local args = self.args
local cfg = self.cfg
-- Add template categories.
if cfg.templateCategory then
if cfg.templateCategoryRequireName then
if self.isTemplatePage then
self:addCat(10, cfg.templateCategory)
end
elseif not self.title.isSubpage then
self:addCat(10, cfg.templateCategory)
end
end
-- Add template error categories.
if cfg.templateErrorCategory then
local templateErrorCategory = cfg.templateErrorCategory
local templateCat, templateSort
if not self.name and not self.title.isSubpage then
templateCat = templateErrorCategory
elseif self.isTemplatePage then
local paramsToCheck = cfg.templateErrorParamsToCheck or {}
local count = 0
for i, param in ipairs(paramsToCheck) do
if not args[param] then
count = count + 1
end
end
if count > 0 then
templateCat = templateErrorCategory
templateSort = tostring(count)
end
if self.categoryNums and #self.categoryNums > 0 then
templateCat = templateErrorCategory
templateSort = 'C'
end
end
self:addCat(10, templateCat, templateSort)
end
end
function MessageBox:setAllNamespaceCategories()
-- Set categories for all namespaces.
if self.invalidTypeError then
local allSort = (self.title.namespace == 0 and 'Main:' or '') .. self.title.prefixedText
self:addCat('all', 'Wikipedia message box parameter needs fixing', allSort)
end
if self.isSubstituted then
self:addCat('all', 'Pages with incorrectly substituted templates')
end
end
function MessageBox:setCategories()
if self.title.namespace == 0 then
self:setMainspaceCategories()
elseif self.title.namespace == 10 then
self:setTemplateCategories()
end
self:setAllNamespaceCategories()
end
function MessageBox:renderCategories()
if not self.hasCategories then
-- No categories added, no need to pass them to Category handler so,
-- if it was invoked, it would return the empty string.
-- So we shortcut and return the empty string.
return ""
end
-- Convert category tables to strings and pass them through
-- [[Module:Category handler]].
return require('Module:Category handler')._main{
main = table.concat(self.categories[0] or {}),
template = table.concat(self.categories[10] or {}),
all = table.concat(self.categories.all or {}),
nocat = self.args.nocat,
page = self.args.page
}
end
function MessageBox:exportDiv()
local root = mw.html.create()
-- Add the subst check error.
if self.isSubstituted and self.name then
root:tag('b')
:addClass('error')
:wikitext(string.format(
'Template <code>%s[[Template:%s|%s]]%s</code> has been incorrectly substituted.',
mw.text.nowiki('{{'), self.name, self.name, mw.text.nowiki('}}')
))
end
local frame = mw.getCurrentFrame()
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.base_templatestyles },
})
-- Add support for a single custom templatestyles sheet. Undocumented as
-- need should be limited and many templates using mbox are substed; we
-- don't want to spread templatestyles sheets around to arbitrary places
if self.templatestyles then
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.templatestyles },
})
end
-- Create the box.
local mbox = root:tag('div')
mbox:attr('id', self.id or nil)
for i, class in ipairs(self.classes or {}) do
mbox:addClass(class or nil)
end
mbox
:cssText(self.style or nil)
if self.attrs then
mbox:attr(self.attrs)
end
local flex_container
if self.below then
-- we need to wrap the flex components (`image(right)` and `text`) in their
-- own container div to support the `below` parameter
flex_container = mw.html.create('div')
flex_container:addClass('mbox-flex')
else
-- the mbox itself is the parent, so we need no HTML flex_container
flex_container = mw.html.create()
end
-- Add the left-hand image.
if self.imageLeft then
local imageLeftCell = flex_container:tag('div'):addClass('mbox-image')
imageLeftCell
:addClass(self.imageLeftClass)
:wikitext(self.imageLeft or nil)
end
-- Add the text.
local textCell = flex_container:tag('div'):addClass('mbox-text')
if self.useCollapsibleTextFields then
-- The message box uses advanced text parameters that allow things to be
-- collapsible. At the moment, only ambox uses this.
textCell:cssText(self.textstyle or nil)
local textCellDiv = textCell:tag('div')
textCellDiv
:addClass('mbox-text-span')
:wikitext(self.issue or nil)
if (self.talk or self.fix) then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:wikitext(self.talk and (' ' .. self.talk) or nil)
:wikitext(self.fix and (' ' .. self.fix) or nil)
end
textCellDiv:wikitext(self.date and (' ' .. self.date) or nil)
if self.info and not self.isSmall then
textCellDiv
:tag('span')
:addClass('hide-when-compact')
:wikitext(self.info and (' ' .. self.info) or nil)
end
if self.removalNotice then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:tag('i')
:wikitext(string.format(" (%s)", self.removalNotice))
end
else
-- Default text formatting - anything goes.
textCell
:cssText(self.textstyle or nil)
:wikitext(self.text or nil)
end
-- Add the right-hand image.
if self.imageRight then
local imageRightCell = flex_container:tag('div'):addClass('mbox-imageright')
imageRightCell
:addClass(self.imageRightClass)
:wikitext(self.imageRight or nil)
end
mbox:node(flex_container)
-- Add the below row.
if self.below then
mbox:tag('div')
:addClass('mbox-text mbox-below')
:cssText(self.textstyle or nil)
:wikitext(self.below or nil)
end
-- Add error message for invalid type parameters.
if self.invalidTypeError then
root:tag('div')
:addClass('mbox-invalid-type')
:wikitext(string.format(
'This message box is using an invalid "type=%s" parameter and needs fixing.',
self.type or ''
))
end
-- Add categories.
root:wikitext(self:renderCategories() or nil)
return tostring(root)
end
function MessageBox:export()
local root = mw.html.create()
-- Add the subst check error.
if self.isSubstituted and self.name then
root:tag('b')
:addClass('error')
:wikitext(string.format(
'Template <code>%s[[Template:%s|%s]]%s</code> has been incorrectly substituted.',
mw.text.nowiki('{{'), self.name, self.name, mw.text.nowiki('}}')
))
end
local frame = mw.getCurrentFrame()
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.base_templatestyles },
})
-- Add support for a single custom templatestyles sheet. Undocumented as
-- need should be limited and many templates using mbox are substed; we
-- don't want to spread templatestyles sheets around to arbitrary places
if self.templatestyles then
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.templatestyles },
})
end
-- Create the box table.
local boxTable = root:tag('table')
boxTable:attr('id', self.id or nil)
for i, class in ipairs(self.classes or {}) do
boxTable:addClass(class or nil)
end
boxTable
:cssText(self.style or nil)
:attr('role', 'presentation')
if self.attrs then
boxTable:attr(self.attrs)
end
-- Add the left-hand image.
local row = boxTable:tag('tr')
if self.imageLeft then
local imageLeftCell = row:tag('td'):addClass('mbox-image')
if self.imageCellDiv then
-- If we are using a div, redefine imageLeftCell so that the image
-- is inside it. Divs use style="width: 52px;", which limits the
-- image width to 52px. If any images in a div are wider than that,
-- they may overlap with the text or cause other display problems.
imageLeftCell = imageLeftCell:tag('div'):addClass('mbox-image-div')
end
imageLeftCell
:addClass(self.imageLeftClass)
:wikitext(self.imageLeft or nil)
elseif self.imageEmptyCell then
-- Some message boxes define an empty cell if no image is specified, and
-- some don't. The old template code in templates where empty cells are
-- specified gives the following hint: "No image. Cell with some width
-- or padding necessary for text cell to have 100% width."
row:tag('td')
:addClass('mbox-empty-cell')
end
-- Add the text.
local textCell = row:tag('td'):addClass('mbox-text')
if self.useCollapsibleTextFields then
-- The message box uses advanced text parameters that allow things to be
-- collapsible. At the moment, only ambox uses this.
textCell:cssText(self.textstyle or nil)
local textCellDiv = textCell:tag('div')
textCellDiv
:addClass('mbox-text-span')
:wikitext(self.issue or nil)
if (self.talk or self.fix) then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:wikitext(self.talk and (' ' .. self.talk) or nil)
:wikitext(self.fix and (' ' .. self.fix) or nil)
end
textCellDiv:wikitext(self.date and (' ' .. self.date) or nil)
if self.info and not self.isSmall then
textCellDiv
:tag('span')
:addClass('hide-when-compact')
:wikitext(self.info and (' ' .. self.info) or nil)
end
if self.removalNotice then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:tag('i')
:wikitext(string.format(" (%s)", self.removalNotice))
end
else
-- Default text formatting - anything goes.
textCell
:cssText(self.textstyle or nil)
:wikitext(self.text or nil)
end
-- Add the right-hand image.
if self.imageRight then
local imageRightCell = row:tag('td'):addClass('mbox-imageright')
if self.imageCellDiv then
-- If we are using a div, redefine imageRightCell so that the image
-- is inside it.
imageRightCell = imageRightCell:tag('div'):addClass('mbox-image-div')
end
imageRightCell
:addClass(self.imageRightClass)
:wikitext(self.imageRight or nil)
end
-- Add the below row.
if self.below then
boxTable:tag('tr')
:tag('td')
:attr('colspan', self.imageRight and '3' or '2')
:addClass('mbox-text')
:cssText(self.textstyle or nil)
:wikitext(self.below or nil)
end
-- Add error message for invalid type parameters.
if self.invalidTypeError then
root:tag('div')
:addClass('mbox-invalid-type')
:wikitext(string.format(
'This message box is using an invalid "type=%s" parameter and needs fixing.',
self.type or ''
))
end
-- Add categories.
root:wikitext(self:renderCategories() or nil)
return tostring(root)
end
--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------
local p, mt = {}, {}
function p._exportClasses()
-- For testing.
return {
MessageBox = MessageBox
}
end
function p.main(boxType, args, cfgTables)
local box = MessageBox.new(boxType, args, cfgTables or mw.loadData(CONFIG_MODULE))
box:setParameters()
box:setCategories()
-- DIV MIGRATION CONDITIONAL
if box.cfg.div_structure then
return box:exportDiv()
end
-- END DIV MIGRATION CONDITIONAL
return box:export()
end
function mt.__index(t, k)
return function (frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return t.main(k, getArgs(frame, {trim = false, removeBlanks = false}))
end
end
return setmetatable(p, mt)
6p9ciodgy803jyhw023qnncgjh94jlx
ಟೆಂಪ್ಲೇಟ್:Ombox/sandbox
10
28735
370315
2013-10-23T02:28:37Z
en>Mr. Stradivarius
0
test [[Module:Message box/sandbox]]
370315
wikitext
text/x-wiki
{{#invoke:Message box/sandbox|ombox}}<noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
</noinclude>
nwd9y4hqzul8ef1zjsalo1nxm04kjeq
370316
370315
2026-09-28T05:20:28Z
ChiK
1136
1 revision imported from [[:en:Template:Ombox/sandbox]]
370315
wikitext
text/x-wiki
{{#invoke:Message box/sandbox|ombox}}<noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
</noinclude>
nwd9y4hqzul8ef1zjsalo1nxm04kjeq
ಟೆಂಪ್ಲೇಟ್:3x/sandbox
10
28736
370317
2014-12-03T01:15:19Z
en>Mr. Stradivarius
0
create sandbox for [[Template:3x]], for documentation purposes in [[Template:Test case]]
370317
wikitext
text/x-wiki
{{{1}}}{{{1}}}{{{1}}}<noinclude>{{documentation}}</noinclude>
5x2r6z655vqdwojw158ufdp8x2k96lk
370318
370317
2026-09-28T05:20:28Z
ChiK
1136
1 revision imported from [[:en:Template:3x/sandbox]]
370317
wikitext
text/x-wiki
{{{1}}}{{{1}}}{{{1}}}<noinclude>{{documentation}}</noinclude>
5x2r6z655vqdwojw158ufdp8x2k96lk
ಟೆಂಪ್ಲೇಟ್:Test case nowiki/doc
10
28737
370319
2025-02-03T06:52:25Z
en>VolatileAnomaly
0
Reverting edit(s) by [[Special:Contributions/103.81.113.160|103.81.113.160]] ([[User_talk:103.81.113.160|talk]]) to rev. 1271479232 by Cedar101: Non-constructive edit ([[w:en:WP:UV|UV 0.1.6]])
370319
wikitext
text/x-wiki
{{Documentation subpage}}
{{lua|Module:Template test case}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
This template generates a test case for two or more templates. Each template is called with the same parameters, and the test case can be displayed in various different formats.
The template output and the template invocations are generated from template code passed inside {{xtag|nowiki}} tags passed to the {{para|code}} or {{para|1}} parameters. In this template code, you must use the magic word <code>__TEMPLATENAME__</code> instead of the normal template name.
Template names are specified parameters like {{para|template1}} and {{para|template2}}, etc. If no templates are specified explicitly, the module uses the base page of the current page as the first template, and its /sandbox subpage as the second template. If only one template is specified explicitly, its /sandbox subpage is used as the second template.
== Usage ==
'''Basic syntax'''
<syntaxhighlight lang="wikitext">
{{test case nowiki|<nowiki>{{__TEMPLATENAME__
| [param1] = [value1]
| [param2] = [value2]
| [param3] = [value3]
...
}}</nowiki>}}
</syntaxhighlight>
'''Common syntax'''
The following options will work with all different test case formats.
<syntaxhighlight lang="wikitext">
{{test case nowiki
| format =
| collapsible =
| resetRefs =
| showcode =
| showheader =
| template =
| template1 =
| showtemplate1 =
| heading1 =
| template2 =
| showtemplate2 =
| heading2 =
| template3 =
| showtemplate3 =
| heading3 =
...
| code = <nowiki>{{__TEMPLATENAME__
| [param1] = [value1]
| [param2] = [value2]
| [param3] = [value3]
...
}}</nowiki>
}}
</syntaxhighlight>
Some test case formats accept additional parameters as well. See their sections for documentation.
== Parameters ==
{| class="wikitable"
|+ Common parameters
|-
! Parameter !! Description
|-
| <code>code</code> or <code>1</code> || The template code, inside {{tag|nowiki}} tags. You must use the magic word "__TEMPLATENAME__" instead of the template name. For example: <code><nowiki>| code = <nowiki>{{__TEMPLATENAME__|first|second|foo=bar}}</nowiki></nowiki></code>. <p>Note: due to the way nowiki tags work, the template treats the [[HTML entities]] &lt;, &gt; and &quot; as if they were the literal characters <, > and " when used with this parameter.</p>
|-
| <code>format</code> || The format to display the test cases in. This can be "columns", "rows", "inline" or "default".
|-
| <code>template1</code>, <code>template2</code>, <code>template3</code>... || The names of the templates to be processed. The default of template1 is the base page of the current page. If template1 is specified, the default for template2 is its /sandbox subpage; if not, the default for template2 is the /sandbox subpage of the base page of the current page. Template names should be entered as you would use them in a normal template invocation, i.e. "3x", not "Template:3x". If you need to test a page in the main namespace you can use a colon prefix, i.e. ":''article name''".
|-
| <code>template</code> || An alias for template1. If both template and template1 are specified, template will take precedence.
|-
| <code>showtemplate1</code>, <code>showtemplate2</code>, <code>showtemplate3</code>... || If this is set to "no", then no output is shown for that template. This is useful if you only want to show the main template, or if you only want to show the sandbox template.
|-
| <code>heading1</code>, <code>heading2</code>, <code>heading3</code>... || Custom headings for each of the templates.
|-
| <code>showheader</code> || If this is set to "no", then no headers are shown.
|-
| <code>collapsible</code> || If set to "yes", the test case is made collapsible. The test case is collapsed and given a green heading if all the template outputs are the same. If any of the template outputs differ, the test case is expanded and given a yellow heading.
|-
| <code>resetRefs</code> || If set to "yes", any references generated by the templates tested are reset after each template is expanded.
|-
| <code>showcode</code> || Set this to "no" to disable showing the template code used to make the test case.
|}
The default test case format doesn't have any extra parameters.
The inline format is for test cases that can be displayed entirely on one line. If used with templates that display on multiple lines it may produce unexpected results. It doesn't have any extra parameters.
The columns format arranges the test cases side by side in a table. This is useful for comparing long and thin templates such as infoboxes. It has the following extra parameters:
{| class="wikitable"
|-
! Parameter !! Description
|-
| <code>class</code> || HTML classes for the table. Use {{para|class|wikitable}} to format the table as a wikitable.
|-
| <code>style</code> || Custom inline CSS for the table.
|-
| <code>caption</code> || Custom caption for the table. The default is "Side by side comparison".
|-
| <code>rowheader</code> || An extra heading for the row containing the templates.
|-
| <code>heading0</code> || If rowheader is supplied, this is an optional heading above it in the template row.
|-
| <code>after</code> || This text is displayed after the output of each template.
|}
The rows format arranges the test cases in rows in a table. It has the following extra parameters:
{| class="wikitable"
|-
! Parameter !! Description
|-
| <code>class</code> || HTML classes for the table. Use {{para|class|wikitable}} to format the table as a wikitable.
|-
| <code>style</code> || Custom inline CSS for the table.
|-
| <code>caption</code> || Custom caption for the table.
|}
You can use {{para|collapsible|yes}} with any format to turn it into a collapsible test case. If all the template outputs are the same the test case is collapsed and given a green heading. If any of the template outputs differ, the test case is expanded and given a yellow heading. You can set a custom title for collapsible test cases with the {{para|title}} parameter.
== Examples ==
=== Default ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Default, collapsible ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|collapsible=yes|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|collapsible=yes|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Default, collapsible, different output ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|template2=tmbox|collapsible=yes|title=Example of differing output|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|template2=tmbox|collapsible=yes|title=Example of differing output|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Inline ===
using [[Template:3x]]
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=3x|collapsible=yes|format=inline|code=<nowiki>{{__TEMPLATENAME__|Lorem ipsum}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=3x|format=inline|code=<nowiki>{{__TEMPLATENAME__|Lorem ipsum}}</nowiki>}}
Note: As this format starts with a bullet, a newline will always be inserted at the start of the template output due to [[phab:T14974|bug 14974]].
=== Inline, collapsible ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=3x|format=inline|code=<nowiki>{{__TEMPLATENAME__|Lorem ipsum}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=3x|collapsible=yes|format=inline|code=<nowiki>{{__TEMPLATENAME__|Lorem ipsum}}</nowiki>}}
=== Columns ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|format=columns|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|format=columns|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Columns, collapsible ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|collapsible=yes|format=columns|title=Using the columns format|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|collapsible=yes|format=columns|title=Using the columns format|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Rows ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|format=rows|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|format=rows|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Rows, collapsible ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|collapsible=yes|format=rows|title=Using the rows format|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|collapsible=yes|format=rows|title=Using the rows format|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
== Technical limitations ==
The template has the following known technical limitations:
* An error will be generated if processing the entire page takes more than 10 seconds. This is an intentional limit in the [[mw:Extension:Scribunto|Scribunto]] extension that runs [[Module:Template test case]], on which this template is based. If a test cases page takes more than 10 seconds to load, you may need to split it up into different pages.
* The template converts the [[HTML entities]] &lt;, &gt; and &quot; inside template invocations to the literal characters <, > and ". This is due to the way nowiki tags work.
* For collapsible test cases, all text inside extension tags (e.g. {{xtag|ref|o}}, {{xtag|references|o}}, {{xtag|gallery|o}} and {{xtag|nowiki|o}}) is treated as equal. These tags are converted to [[Help:Strip markers|strip markers]] before they are passed to the template, and all strip markers include a random string as they have to be unique. Even if strip markers were unstripped before being compared, the same wikitext would not be guaranteed to result in exactly the same unstripped code. So this module ignores the content of strip markers for the purposes of testing equality. This has the unwanted side effect that, e.g. <syntaxhighlight lang="wikitext" inline>Some text<ref>foo</ref></syntaxhighlight> is treated as equal to <syntaxhighlight lang="wikitext" inline>Some text<gallery>bar</gallery></syntaxhighlight>, but should be adequate for most uses.
== See also ==
Templates invoking [[Module:Template test case]]:
* [[Template:Test case]] – a generalised test case template
* [[Template:Testcase rows]] – for a table of test cases arranged in rows
* [[Template:Testcase table]] – for a table of test cases arranged in columns
* [[Template:Inline test case]] – for test cases with small invocations and small output
* [[Template:Collapsible test case]] – for test cases collapsed by default if the results are the same
* [[Template:Nowiki template demo]] – for use in template documentation
<includeonly>{{Sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Template test cases| ]]
[[Category:Template namespace templates]]
[[Category:Wikitext processing templates]]
[[Category:Nowiki templates]]
}}</includeonly>
lwyvsw5go6zdozu9ilqgvpv2znlcxmy
370320
370319
2026-09-28T05:20:28Z
ChiK
1136
1 revision imported from [[:en:Template:Test_case_nowiki/doc]]
370319
wikitext
text/x-wiki
{{Documentation subpage}}
{{lua|Module:Template test case}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
This template generates a test case for two or more templates. Each template is called with the same parameters, and the test case can be displayed in various different formats.
The template output and the template invocations are generated from template code passed inside {{xtag|nowiki}} tags passed to the {{para|code}} or {{para|1}} parameters. In this template code, you must use the magic word <code>__TEMPLATENAME__</code> instead of the normal template name.
Template names are specified parameters like {{para|template1}} and {{para|template2}}, etc. If no templates are specified explicitly, the module uses the base page of the current page as the first template, and its /sandbox subpage as the second template. If only one template is specified explicitly, its /sandbox subpage is used as the second template.
== Usage ==
'''Basic syntax'''
<syntaxhighlight lang="wikitext">
{{test case nowiki|<nowiki>{{__TEMPLATENAME__
| [param1] = [value1]
| [param2] = [value2]
| [param3] = [value3]
...
}}</nowiki>}}
</syntaxhighlight>
'''Common syntax'''
The following options will work with all different test case formats.
<syntaxhighlight lang="wikitext">
{{test case nowiki
| format =
| collapsible =
| resetRefs =
| showcode =
| showheader =
| template =
| template1 =
| showtemplate1 =
| heading1 =
| template2 =
| showtemplate2 =
| heading2 =
| template3 =
| showtemplate3 =
| heading3 =
...
| code = <nowiki>{{__TEMPLATENAME__
| [param1] = [value1]
| [param2] = [value2]
| [param3] = [value3]
...
}}</nowiki>
}}
</syntaxhighlight>
Some test case formats accept additional parameters as well. See their sections for documentation.
== Parameters ==
{| class="wikitable"
|+ Common parameters
|-
! Parameter !! Description
|-
| <code>code</code> or <code>1</code> || The template code, inside {{tag|nowiki}} tags. You must use the magic word "__TEMPLATENAME__" instead of the template name. For example: <code><nowiki>| code = <nowiki>{{__TEMPLATENAME__|first|second|foo=bar}}</nowiki></nowiki></code>. <p>Note: due to the way nowiki tags work, the template treats the [[HTML entities]] &lt;, &gt; and &quot; as if they were the literal characters <, > and " when used with this parameter.</p>
|-
| <code>format</code> || The format to display the test cases in. This can be "columns", "rows", "inline" or "default".
|-
| <code>template1</code>, <code>template2</code>, <code>template3</code>... || The names of the templates to be processed. The default of template1 is the base page of the current page. If template1 is specified, the default for template2 is its /sandbox subpage; if not, the default for template2 is the /sandbox subpage of the base page of the current page. Template names should be entered as you would use them in a normal template invocation, i.e. "3x", not "Template:3x". If you need to test a page in the main namespace you can use a colon prefix, i.e. ":''article name''".
|-
| <code>template</code> || An alias for template1. If both template and template1 are specified, template will take precedence.
|-
| <code>showtemplate1</code>, <code>showtemplate2</code>, <code>showtemplate3</code>... || If this is set to "no", then no output is shown for that template. This is useful if you only want to show the main template, or if you only want to show the sandbox template.
|-
| <code>heading1</code>, <code>heading2</code>, <code>heading3</code>... || Custom headings for each of the templates.
|-
| <code>showheader</code> || If this is set to "no", then no headers are shown.
|-
| <code>collapsible</code> || If set to "yes", the test case is made collapsible. The test case is collapsed and given a green heading if all the template outputs are the same. If any of the template outputs differ, the test case is expanded and given a yellow heading.
|-
| <code>resetRefs</code> || If set to "yes", any references generated by the templates tested are reset after each template is expanded.
|-
| <code>showcode</code> || Set this to "no" to disable showing the template code used to make the test case.
|}
The default test case format doesn't have any extra parameters.
The inline format is for test cases that can be displayed entirely on one line. If used with templates that display on multiple lines it may produce unexpected results. It doesn't have any extra parameters.
The columns format arranges the test cases side by side in a table. This is useful for comparing long and thin templates such as infoboxes. It has the following extra parameters:
{| class="wikitable"
|-
! Parameter !! Description
|-
| <code>class</code> || HTML classes for the table. Use {{para|class|wikitable}} to format the table as a wikitable.
|-
| <code>style</code> || Custom inline CSS for the table.
|-
| <code>caption</code> || Custom caption for the table. The default is "Side by side comparison".
|-
| <code>rowheader</code> || An extra heading for the row containing the templates.
|-
| <code>heading0</code> || If rowheader is supplied, this is an optional heading above it in the template row.
|-
| <code>after</code> || This text is displayed after the output of each template.
|}
The rows format arranges the test cases in rows in a table. It has the following extra parameters:
{| class="wikitable"
|-
! Parameter !! Description
|-
| <code>class</code> || HTML classes for the table. Use {{para|class|wikitable}} to format the table as a wikitable.
|-
| <code>style</code> || Custom inline CSS for the table.
|-
| <code>caption</code> || Custom caption for the table.
|}
You can use {{para|collapsible|yes}} with any format to turn it into a collapsible test case. If all the template outputs are the same the test case is collapsed and given a green heading. If any of the template outputs differ, the test case is expanded and given a yellow heading. You can set a custom title for collapsible test cases with the {{para|title}} parameter.
== Examples ==
=== Default ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Default, collapsible ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|collapsible=yes|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|collapsible=yes|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Default, collapsible, different output ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|template2=tmbox|collapsible=yes|title=Example of differing output|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|template2=tmbox|collapsible=yes|title=Example of differing output|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Inline ===
using [[Template:3x]]
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=3x|collapsible=yes|format=inline|code=<nowiki>{{__TEMPLATENAME__|Lorem ipsum}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=3x|format=inline|code=<nowiki>{{__TEMPLATENAME__|Lorem ipsum}}</nowiki>}}
Note: As this format starts with a bullet, a newline will always be inserted at the start of the template output due to [[phab:T14974|bug 14974]].
=== Inline, collapsible ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=3x|format=inline|code=<nowiki>{{__TEMPLATENAME__|Lorem ipsum}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=3x|collapsible=yes|format=inline|code=<nowiki>{{__TEMPLATENAME__|Lorem ipsum}}</nowiki>}}
=== Columns ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|format=columns|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|format=columns|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Columns, collapsible ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|collapsible=yes|format=columns|title=Using the columns format|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|collapsible=yes|format=columns|title=Using the columns format|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Rows ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|format=rows|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|format=rows|code=<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
=== Rows, collapsible ===
;Usage
<syntaxhighlight lang="wikitext" style="white-space:pre-wrap; overflow:auto; background-color:#eee;">
{{test case nowiki|template1=ombox|collapsible=yes|format=rows|title=Using the rows format|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
</syntaxhighlight>
;Output
{{test case nowiki|template1=ombox|collapsible=yes|format=rows|title=Using the rows format|<nowiki>{{__TEMPLATENAME__|text=Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.}}</nowiki>}}
== Technical limitations ==
The template has the following known technical limitations:
* An error will be generated if processing the entire page takes more than 10 seconds. This is an intentional limit in the [[mw:Extension:Scribunto|Scribunto]] extension that runs [[Module:Template test case]], on which this template is based. If a test cases page takes more than 10 seconds to load, you may need to split it up into different pages.
* The template converts the [[HTML entities]] &lt;, &gt; and &quot; inside template invocations to the literal characters <, > and ". This is due to the way nowiki tags work.
* For collapsible test cases, all text inside extension tags (e.g. {{xtag|ref|o}}, {{xtag|references|o}}, {{xtag|gallery|o}} and {{xtag|nowiki|o}}) is treated as equal. These tags are converted to [[Help:Strip markers|strip markers]] before they are passed to the template, and all strip markers include a random string as they have to be unique. Even if strip markers were unstripped before being compared, the same wikitext would not be guaranteed to result in exactly the same unstripped code. So this module ignores the content of strip markers for the purposes of testing equality. This has the unwanted side effect that, e.g. <syntaxhighlight lang="wikitext" inline>Some text<ref>foo</ref></syntaxhighlight> is treated as equal to <syntaxhighlight lang="wikitext" inline>Some text<gallery>bar</gallery></syntaxhighlight>, but should be adequate for most uses.
== See also ==
Templates invoking [[Module:Template test case]]:
* [[Template:Test case]] – a generalised test case template
* [[Template:Testcase rows]] – for a table of test cases arranged in rows
* [[Template:Testcase table]] – for a table of test cases arranged in columns
* [[Template:Inline test case]] – for test cases with small invocations and small output
* [[Template:Collapsible test case]] – for test cases collapsed by default if the results are the same
* [[Template:Nowiki template demo]] – for use in template documentation
<includeonly>{{Sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Template test cases| ]]
[[Category:Template namespace templates]]
[[Category:Wikitext processing templates]]
[[Category:Nowiki templates]]
}}</includeonly>
lwyvsw5go6zdozu9ilqgvpv2znlcxmy
ಟೆಂಪ್ಲೇಟ್:Alink
10
28738
370321
2026-03-13T09:20:38Z
en>Whyiseverythingalreadyused
0
Trying again
370321
wikitext
text/x-wiki
#REDIRECT [[Template:Article link]]
{{R from template shortcut}}
<templatedata>
{
"description": "This template is used to generate a link from a talk page to a certain section of the corresponding article, rendered with an appropriate section mark (§). This template may generate consecutive links to several sections of the same page.",
"params": {
"1": {
"label": "Section name 1",
"description": "Name of the (first) section to which the link must be created. This parameter is mandatory.",
"type": "string",
"required": true
},
"2": {
"label": "Section name 2",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"3": {
"label": "Section name 3",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"4": {
"label": "Section name 4",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"5": {
"label": "Section name 5",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"6": {
"label": "Section name 6",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"7": {
"label": "Section name 7",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"8": {
"label": "Section name 8",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
}
}
}
</templatedata>
04hcvdl733wj70c1hanti4asy5yehrj
370322
370321
2026-09-28T05:23:31Z
ChiK
1136
1 revision imported from [[:en:Template:Alink]]
370321
wikitext
text/x-wiki
#REDIRECT [[Template:Article link]]
{{R from template shortcut}}
<templatedata>
{
"description": "This template is used to generate a link from a talk page to a certain section of the corresponding article, rendered with an appropriate section mark (§). This template may generate consecutive links to several sections of the same page.",
"params": {
"1": {
"label": "Section name 1",
"description": "Name of the (first) section to which the link must be created. This parameter is mandatory.",
"type": "string",
"required": true
},
"2": {
"label": "Section name 2",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"3": {
"label": "Section name 3",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"4": {
"label": "Section name 4",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"5": {
"label": "Section name 5",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"6": {
"label": "Section name 6",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"7": {
"label": "Section name 7",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
},
"8": {
"label": "Section name 8",
"description": "This template can link to additional sections within one page. You may supply another section name in this field.",
"type": "string"
}
}
}
</templatedata>
04hcvdl733wj70c1hanti4asy5yehrj
ಬುರ್ಕಿನಾ ಫಾಸೊ
0
28739
370335
2026-09-28T05:52:45Z
Mahaveer Indra
1023
ಪೊಸ ಬರವು
370335
wikitext
text/x-wiki
'''ಬುರ್ಕಿನಾ ಫಾಸೊ''' ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾಡ್ ಇಪ್ಪುನ ಕಡಲಬರಿದಾಂತಿನ-ಪಂಡ ಸುತ್ತಲ ಬೇತೆ ದೇಸೊಲೆ ಗಡಿಕ್ ತಾಗ್ದಿಪ್ಪುನ ಒಂಜಿ ದೇಶ. ಉಂದೆತ ವಾಯುವ್ಯಡ್ ಮಾಲಿ, ಈಶಾನ್ಯಡ್ ನೈಜರ್, ಆಗ್ನೇಯಡ್ ಬೆನಿನ್, ತೆಂಕಾಯಿಡ್ ಟೊಗೊ ಬೊಕ್ಕ ಘಾನಾ, ಬೊಕ್ಕ ನೈಋತ್ಯಡ್ ಐವರಿ ಕೋಸ್ಟ್ ದೇಸೊಲು ಉಲ್ಲ. ಬುರ್ಕಿನಾ ದೇಸೊದ ಇಸ್ತೀರ್ನೊ ೨,೭೪,೨೨೩ ಚದರ ಕಿಲೋಮೀಟರ್ ಉಂಡು. ಈ ದೇಶದ ಇತ್ತೆದ ಜನಸಂಕೆ ಅಂದಾಜಿ ೨,೩೨,೮೬,೦೦೦ ಉಂಡು. ಬುರ್ಕಿನಾ ಫಾಸೊದ ರಾಜದಾನಿ ವಾಗಡೂಗು. ದೇಸೊಡು ಮಾಮಲ್ಲ ಪೇಂಟೆಲಾ ಆದುಂಡು.<ref>{{cite web |title=Burkina Faso: Introduction |url=https://globaledge.msu.edu/countries/burkina-faso |website=globaledge.msu.edu |publisher=Michigan State University |access-date=28 September 2026}}</ref>
ಬುರ್ಕಿನಾ ಫಾಸೊಡು ಎಚ್ಚ ವಾಸಿಸೊಂದು ಇಪ್ಪುನ ಮೂಲ ಜನಾಂಗ ಪನ್ನಗ ಮೊಸ್ಸಿ ಬುಡಕಟ್ಟುದ ಜನಕುಲು. ಮೊಕುಲು ೧೧ನೇ ಬೊಕ್ಕ ೧೩ನೇ ಶತಮಾನದ ಪೊರ್ತುಗು ಈ ಜಾಗೆಡ್ ನೆಲೆ ಆಯೆರ್. ಅಕುಲು ವಾಗಡೂಗು, ಟೆಂಕೊಡೊಗೊ, ಬೊಕ್ಕ ಯಟೆಂಗಾದಂಚಿನ ಸಾಮ್ರಾಜ್ಯೊಲೆನ್ ಸ್ಥಾಪನೆ ಮಲ್ತೆರ್. ೧೮೯೬ದ ಪೊರ್ತುಡು, ಫ್ರೆಂಚೆರ್, ಮುಲ್ಪ ಆಕ್ರಮಣ ಮಲ್ತ್ದ್ ಫ್ರೆಂಚ್ ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾದ ಒಂಜಿ ಭಾಗವಾದ್ ತನ್ಕುಲೆ ವಸಾಹತು ಮಲ್ತೆರ್. ೧೯೬೦ಡ್, ಮಾರಿಸ್ ಯಮಿಯೊಗೊ ಪನ್ಪಿನಾರ್ ಮುಲ್ಪದ ಅಧ್ಯಕ್ಷೆರಾಯೆರ್. ಐತ ಒಟ್ಟುಗು ಈ ವಸಾಹತುಗು ಪೂರ್ತಿ ಸ್ವಾತಂತ್ರ್ಯ ಬತ್ತ್ಂಡ್. ಸ್ವಾತಂತ್ರ್ಯ ತಿಕ್ಕಿನೆರ್ದ್ ಬೊಕ್ಕ, ಈ ದೇಶ ರಾಜಕೀಯ ಅಸ್ಥಿರತೆ, ಬರಗಾಲ, ಬೊಕ್ಕ ಭ್ರಷ್ಟಾಚಾರದಂಚಿನ ಸಮಸ್ಯೆಲೆನ್ ಎದುರಿಸೊಂದು ಬೈದ್ಂಡ್. ೧೯೬೬, ೧೯೮೦, ೧೯೮೨, ೧೯೮೩, ೧೯೮೭ಡ್, ಬೊಕ್ಕ ೨೦೨೨ನೇ ಇಸವಿಡ್ (ಜನವರಿ ಬೊಕ್ಕ ಸೆಪ್ಟೆಂಬರ್ಡ್- ರಡ್ಡ್ ಸರ್ತಿ) ಮುಲ್ಪ ಬೇತೆ ಬೇತೆ ಮಿಲಿಟರಿ ಬಂಡಾಯೊಲು ನಡತ್ಂಡ್. ಅಂಚನೆ ೧೯೮೯, ೨೦೧೫, ಬೊಕ್ಕ ೨೦೨೩ಡ್ ವಿಫಲ ಮಿಲಿಟರಿ ಬಂಡಾಯದ ಪ್ರಯತ್ನೊಲುಲಾ ನಡತ್ಂಡ್.
j55eoxtdrjdboayei5ljij52czmhv8l
370336
370335
2026-09-28T05:54:52Z
Mahaveer Indra
1023
370336
wikitext
text/x-wiki
'''ಬುರ್ಕಿನಾ ಫಾಸೊ''' ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾಡ್ ಇಪ್ಪುನ ಕಡಲಬರಿದಾಂತಿನ-ಪಂಡ ಸುತ್ತಲ ಬೇತೆ ದೇಸೊಲೆ ಗಡಿಕ್ ತಾಗ್ದಿಪ್ಪುನ ಒಂಜಿ ದೇಶ. ಉಂದೆತ ವಾಯುವ್ಯಡ್ ಮಾಲಿ, ಈಶಾನ್ಯಡ್ ನೈಜರ್, ಆಗ್ನೇಯಡ್ ಬೆನಿನ್, ತೆಂಕಾಯಿಡ್ ಟೊಗೊ ಬೊಕ್ಕ ಘಾನಾ, ಬೊಕ್ಕ ನೈಋತ್ಯಡ್ ಐವರಿ ಕೋಸ್ಟ್ ದೇಸೊಲು ಉಲ್ಲ. ಬುರ್ಕಿನಾ ದೇಸೊದ ಇಸ್ತೀರ್ನೊ ೨,೭೪,೨೨೩ ಚದರ ಕಿಲೋಮೀಟರ್ ಉಂಡು. ಈ ದೇಶದ ಇತ್ತೆದ ಜನಸಂಕೆ ಅಂದಾಜಿ ೨,೩೨,೮೬,೦೦೦ ಉಂಡು. ಬುರ್ಕಿನಾ ಫಾಸೊದ ರಾಜದಾನಿ ವಾಗಡೂಗು. ದೇಸೊಡು ಮಾಮಲ್ಲ ಪೇಂಟೆಲಾ ಆದುಂಡು.<ref>{{cite web |title=Burkina Faso: Introduction |url=https://globaledge.msu.edu/countries/burkina-faso |website=globaledge.msu.edu |publisher=Michigan State University |access-date=28 September 2026}}</ref>
==ಕಿನ್ಯ ಇತಿಹಾಸೊ==
ಬುರ್ಕಿನಾ ಫಾಸೊಡು ಎಚ್ಚ ವಾಸಿಸೊಂದು ಇಪ್ಪುನ ಮೂಲ ಜನಾಂಗ ಪನ್ನಗ ಮೊಸ್ಸಿ ಬುಡಕಟ್ಟುದ ಜನಕುಲು. ಮೊಕುಲು ೧೧ನೇ ಬೊಕ್ಕ ೧೩ನೇ ಶತಮಾನದ ಪೊರ್ತುಗು ಈ ಜಾಗೆಡ್ ನೆಲೆ ಆಯೆರ್. ಅಕುಲು ವಾಗಡೂಗು, ಟೆಂಕೊಡೊಗೊ, ಬೊಕ್ಕ ಯಟೆಂಗಾದಂಚಿನ ಸಾಮ್ರಾಜ್ಯೊಲೆನ್ ಸ್ಥಾಪನೆ ಮಲ್ತೆರ್. ೧೮೯೬ದ ಪೊರ್ತುಡು, ಫ್ರೆಂಚೆರ್, ಮುಲ್ಪ ಆಕ್ರಮಣ ಮಲ್ತ್ದ್ ಫ್ರೆಂಚ್ ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾದ ಒಂಜಿ ಭಾಗವಾದ್ ತನ್ಕುಲೆ ವಸಾಹತು ಮಲ್ತೆರ್. ೧೯೬೦ಡ್, ಮಾರಿಸ್ ಯಮಿಯೊಗೊ ಪನ್ಪಿನಾರ್ ಮುಲ್ಪದ ಅಧ್ಯಕ್ಷೆರಾಯೆರ್. ಐತ ಒಟ್ಟುಗು ಈ ವಸಾಹತುಗು ಪೂರ್ತಿ ಸ್ವಾತಂತ್ರ್ಯ ಬತ್ತ್ಂಡ್. ಸ್ವಾತಂತ್ರ್ಯ ತಿಕ್ಕಿನೆರ್ದ್ ಬೊಕ್ಕ, ಈ ದೇಶ ರಾಜಕೀಯ ಅಸ್ಥಿರತೆ, ಬರಗಾಲ, ಬೊಕ್ಕ ಭ್ರಷ್ಟಾಚಾರದಂಚಿನ ಸಮಸ್ಯೆಲೆನ್ ಎದುರಿಸೊಂದು ಬೈದ್ಂಡ್. ೧೯೬೬, ೧೯೮೦, ೧೯೮೨, ೧೯೮೩, ೧೯೮೭ಡ್, ಬೊಕ್ಕ ೨೦೨೨ನೇ ಇಸವಿಡ್ (ಜನವರಿ ಬೊಕ್ಕ ಸೆಪ್ಟೆಂಬರ್ಡ್- ರಡ್ಡ್ ಸರ್ತಿ) ಮುಲ್ಪ ಬೇತೆ ಬೇತೆ ಮಿಲಿಟರಿ ಬಂಡಾಯೊಲು ನಡತ್ಂಡ್. ಅಂಚನೆ ೧೯೮೯, ೨೦೧೫, ಬೊಕ್ಕ ೨೦೨೩ಡ್ ವಿಫಲ ಮಿಲಿಟರಿ ಬಂಡಾಯದ ಪ್ರಯತ್ನೊಲುಲಾ ನಡತ್ಂಡ್.
==ಉಲ್ಲೇಕಲು==
{{reflist}}
dinzp9ecsberyne7gic1mgrngdvivd0
370337
370336
2026-09-28T06:10:40Z
Mahaveer Indra
1023
370337
wikitext
text/x-wiki
'''ಬುರ್ಕಿನಾ ಫಾಸೊ''' ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾಡ್ ಇಪ್ಪುನ ಕಡಲಬರಿದಾಂತಿನ-ಪಂಡ ಸುತ್ತಲ ಬೇತೆ ದೇಸೊಲೆ ಗಡಿಕ್ ತಾಗ್ದಿಪ್ಪುನ ಒಂಜಿ ದೇಶ. ಉಂದೆತ ವಾಯುವ್ಯಡ್ ಮಾಲಿ, ಈಶಾನ್ಯಡ್ ನೈಜರ್, ಆಗ್ನೇಯಡ್ ಬೆನಿನ್, ತೆಂಕಾಯಿಡ್ ಟೊಗೊ ಬೊಕ್ಕ ಘಾನಾ, ಬೊಕ್ಕ ನೈಋತ್ಯಡ್ ಐವರಿ ಕೋಸ್ಟ್ ದೇಸೊಲು ಉಲ್ಲ. ಬುರ್ಕಿನಾ ದೇಸೊದ ಇಸ್ತೀರ್ನೊ ೨,೭೪,೨೨೩ ಚದರ ಕಿಲೋಮೀಟರ್ ಉಂಡು. ಈ ದೇಶದ ಇತ್ತೆದ ಜನಸಂಕೆ ಅಂದಾಜಿ ೨,೩೨,೮೬,೦೦೦ ಉಂಡು. ಬುರ್ಕಿನಾ ಫಾಸೊದ ರಾಜದಾನಿ ವಾಗಡೂಗು. ದೇಸೊಡು ಮಾಮಲ್ಲ ಪೇಂಟೆಲಾ ಆದುಂಡು.<ref>{{cite web |title=Burkina Faso: Introduction |url=https://globaledge.msu.edu/countries/burkina-faso |website=globaledge.msu.edu |publisher=Michigan State University |access-date=28 September 2026}}</ref>
ಬುರ್ಕಿನಾ ಫಾಸೊ ಪ್ರಪಂಚಡೇ ಅತಿ ಕಡಿಮೆ ಅಭಿವೃದ್ಧಿ ಆಯಿನ ದೇಸೊ. ೨೦೨೨ಡ್ ಉಂದೆತ ಜಿಡಿಪಿ $೧೬.೨೨೬ ಬಿಲಿಯನ್ ಇತ್ತ್ಂಡ್. ಮುಲ್ಪದ ಜನಸಂಖ್ಯೆಡ್ ಸುಮಾರು ೬೩.೮% ಜನಕುಲು ಇಸ್ಲಾಂ ಧರ್ಮೊನು ಪಾಲಿಸಾವೆರ್. ೨೬.೩% ಜನಕುಲು ಕ್ರಿಶ್ಚಿಯನ್ ಧರ್ಮನ್, ಬೊಕ್ಕ ೯% ಜನಕುಲು (ವಿಶೇಷವಾದ್ ದೇಶದ ನೈಋತ್ಯ ಭಾಗಡ್) ಪ್ರಕೃತಿ ಆರಾಧನೆ ಮಲ್ಪುನ ಧರ್ಮಲೆನ್ ಪಾಲನೆ ಮಲ್ಪುವೆರ್.
ಈ ದೇಸೊಡು ಕಛೇರಿದ ಬೇಲೆಗ್ ಇಂಗ್ಲಿಷ್ ಬೊಕ್ಕ ಫ್ರೆಂಚ್ ಬಾಸೆನ್ ಗಲಸುವೆರ್. ಆಂಡ ಮುಲ್ಪ ಗಲಸುನ ಮಾತಾ ಬಾಸೆಲೆನ್ ರಾಷ್ಟ್ರೀಯ ಬಾಸೆ ಪಂಡ್ದ್ ಗುರ್ತಿಸಾದೆರ್. ಅಂಚ ಗುರ್ತಿಸಾದಿನ ಬಾಸೆಲೆಗ್ ಅದೀಕೃತ ಮಾನ್ಯತೆ ಉಂಡು. ಇಸೇಸ ಪಂಡ, ಕಛೇರಿದ ಬೇಲೆಗ್ ಗಲಸುನ ಫ್ರೆಂಚ್ ಬಾಸೆಗ್ ಅದೀಕೃತ ಬಾಸೆದ ಮಾನ್ಯತೆ ಇಜ್ಜಿ. ೨೦೨೪ನೇ ಇಸವಿಡ್ ಈ ದೇಸೊದ ಸಂವಿಧಾನೊಡು ಒಂಜಿ ತಿದ್ದುಪಡಿ ಕನತ್ತ್ದ್ ಫ್ರೆಂಚ್ ಬಾಸೆ ಕಛೇರಿದ ಬೇಲೆಗ್ ಮಾತ್ರ ಗಲಸರ ಇಪ್ಪುನ ಪಂದ್ ಗುರ್ತಿಸಾಯೆರ್.<ref>{{cite web |title=Burkina Faso revises its Constitution and relegates French to the status of "working language" |url=https://www.lemonde.fr/afrique/article/2023/12/07/le-burkina-faso-revise-sa-constitution-et-relegue-le-francais-au-rang-de-langue-de-travail_6204385_3212.html |website=lemonde.fr |publisher=Le Monde |access-date=28 September 2026}}</ref>
ಬುರ್ಕಿನಾದ ಅರೆವಾಸಿ ಜನಕುಲು ಮೂರೆ ಭಾಷೆನ್ ಪಾತೆರುವೆರ್. ಮುಲ್ಪ ೬೦ರ್ದ್ಲಾ ಜಾಸ್ತಿ ದೇಸೀ ಭಾಷೆಲು ಉಲ್ಲ. ಬೇತೆ ಭಾಷೆಲೆನ್ ಕಾನೂನುದ ಮುಖಾಂತರ ಅಧಿಕೃತ ಮಲ್ಪೆರೆ ಸಂವಿಧಾನಡ್ ಅವಕಾಶ ಉಂಡು. ಜನವರಿ ೨೦೨೪ ಮುಟ್ಟ ಫ್ರೆಂಚ್ ಮುಲ್ಪದ ಸರಕಾರ ಬೊಕ್ಕ ವ್ಯಾಪಾರದ ಭಾಷೆಯಾದಿತ್ತ್ಂಡ್.
ಈ ದೇಶದ ಭೂಪ್ರದೇಶ ಭೌಗೋಳಿಕವಾದ್ ಜೀವವೈವಿಧ್ಯತೆನ್ (biodiverse) ಹೊಂದ್ಂಡ್, ಬೊಕ್ಕ ಮುಲ್ಪ ಬಂಗಾರ್, ಮ್ಯಾಂಗನೀಸ್, ತಾಮ್ರ (copper) ಬೊಕ್ಕ ಸುಣ್ಣದಕಲ್ಲು (limestone) ದ ಮಸ್ತ್ ನಿಕ್ಷೇಪೊಲು ಉಂಡು. ಮುಲ್ಪದ ಬಹುಸಾಂಸ್ಕೃತಿಕ (multicultural) ಸ್ವರೂಪೊರ್ದಾವರ, ಬುರ್ಕಿನಾಬೆ ಕಲೆಕ್ ಮಸ್ತ್ ಶ್ರೀಮಂತ ಬೊಕ್ಕ ಉದ್ದದ ಇತಿಹಾಸ ಉಂಡು, ಬೊಕ್ಕ ಉಂದು ತನ್ನ ಸಾಂಪ್ರದಾಯಿಕ (orthodox) ಶೈಲಿಗ್ ಮಸ್ತ್ ಪುದರ್ ಪಡೆದ್ಂಡ್.
ಈ ದೇಶನ್ ಒಂಜಿ ಅರೆ-ಅಧ್ಯಕ್ಷೀಯ ಗಣರಾಜ್ಯವಾದ್ (semi-presidential republic) ಆಡಳಿತ ಮಲ್ಪುವೆರ್, ಬೊಕ್ಕ ಉಂದು ಕಾರ್ಯಾಂಗ (executive), ಶಾಸಕಾಂಗ (legislative) ಬೊಕ್ಕ ನ್ಯಾಯಾಂಗ (judicial) ಅಧಿಕಾರೊಲೆನ್ ಹೊಂದ್ಂಡ್.
==ಕಿನ್ಯ ಇತಿಹಾಸೊ==
ಬುರ್ಕಿನಾ ಫಾಸೊಡು ಎಚ್ಚ ವಾಸಿಸೊಂದು ಇಪ್ಪುನ ಮೂಲ ಜನಾಂಗ ಪನ್ನಗ ಮೊಸ್ಸಿ ಬುಡಕಟ್ಟುದ ಜನಕುಲು. ಮೊಕುಲು ೧೧ನೇ ಬೊಕ್ಕ ೧೩ನೇ ಶತಮಾನದ ಪೊರ್ತುಗು ಈ ಜಾಗೆಡ್ ನೆಲೆ ಆಯೆರ್. ಅಕುಲು ವಾಗಡೂಗು, ಟೆಂಕೊಡೊಗೊ, ಬೊಕ್ಕ ಯಟೆಂಗಾದಂಚಿನ ಸಾಮ್ರಾಜ್ಯೊಲೆನ್ ಸ್ಥಾಪನೆ ಮಲ್ತೆರ್. ೧೮೯೬ದ ಪೊರ್ತುಡು, ಫ್ರೆಂಚೆರ್, ಮುಲ್ಪ ಆಕ್ರಮಣ ಮಲ್ತ್ದ್ ಫ್ರೆಂಚ್ ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾದ ಒಂಜಿ ಭಾಗವಾದ್ ತನ್ಕುಲೆ ವಸಾಹತು ಮಲ್ತೆರ್. ೧೯೬೦ಡ್, ಮಾರಿಸ್ ಯಮಿಯೊಗೊ ಪನ್ಪಿನಾರ್ ಮುಲ್ಪದ ಅಧ್ಯಕ್ಷೆರಾಯೆರ್. ಐತ ಒಟ್ಟುಗು ಈ ವಸಾಹತುಗು ಪೂರ್ತಿ ಸ್ವಾತಂತ್ರ್ಯ ಬತ್ತ್ಂಡ್. ಸ್ವಾತಂತ್ರ್ಯ ತಿಕ್ಕಿನೆರ್ದ್ ಬೊಕ್ಕ, ಈ ದೇಶ ರಾಜಕೀಯ ಅಸ್ಥಿರತೆ, ಬರಗಾಲ, ಬೊಕ್ಕ ಭ್ರಷ್ಟಾಚಾರದಂಚಿನ ಸಮಸ್ಯೆಲೆನ್ ಎದುರಿಸೊಂದು ಬೈದ್ಂಡ್. ೧೯೬೬, ೧೯೮೦, ೧೯೮೨, ೧೯೮೩, ೧೯೮೭ಡ್, ಬೊಕ್ಕ ೨೦೨೨ನೇ ಇಸವಿಡ್ (ಜನವರಿ ಬೊಕ್ಕ ಸೆಪ್ಟೆಂಬರ್ಡ್- ರಡ್ಡ್ ಸರ್ತಿ) ಮುಲ್ಪ ಬೇತೆ ಬೇತೆ ಮಿಲಿಟರಿ ಬಂಡಾಯೊಲು ನಡತ್ಂಡ್. ಅಂಚನೆ ೧೯೮೯, ೨೦೧೫, ಬೊಕ್ಕ ೨೦೨೩ಡ್ ವಿಫಲ ಮಿಲಿಟರಿ ಬಂಡಾಯದ ಪ್ರಯತ್ನೊಲುಲಾ ನಡತ್ಂಡ್.
==ಉಲ್ಲೇಕಲು==
{{reflist}}
9udkxgsjqdyzhlptu1z89fzpvcems8k
370338
370337
2026-09-28T06:23:40Z
Mahaveer Indra
1023
370338
wikitext
text/x-wiki
'''ಬುರ್ಕಿನಾ ಫಾಸೊ''' ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾಡ್ ಇಪ್ಪುನ ಕಡಲಬರಿದಾಂತಿನ-ಪಂಡ ಸುತ್ತಲ ಬೇತೆ ದೇಸೊಲೆ ಗಡಿಕ್ ತಾಗ್ದಿಪ್ಪುನ ಒಂಜಿ ದೇಶ. ಉಂದೆತ ವಾಯುವ್ಯಡ್ ಮಾಲಿ, ಈಶಾನ್ಯಡ್ ನೈಜರ್, ಆಗ್ನೇಯಡ್ ಬೆನಿನ್, ತೆಂಕಾಯಿಡ್ ಟೊಗೊ ಬೊಕ್ಕ ಘಾನಾ, ಬೊಕ್ಕ ನೈಋತ್ಯಡ್ ಐವರಿ ಕೋಸ್ಟ್ ದೇಸೊಲು ಉಲ್ಲ. ಬುರ್ಕಿನಾ ದೇಸೊದ ಇಸ್ತೀರ್ನೊ ೨,೭೪,೨೨೩ ಚದರ ಕಿಲೋಮೀಟರ್ ಉಂಡು. ಈ ದೇಶದ ಇತ್ತೆದ ಜನಸಂಕೆ ಅಂದಾಜಿ ೨,೩೨,೮೬,೦೦೦ ಉಂಡು.<ref>{{Cite web |date=2024 |title=World Population Prospects 2024 |url=https://population.un.org/wpp/assets/Files/WPP2024_Summary-of-Results.pdf |website=Department of Economic and Social Affairs, United Nations}}</ref> ಬುರ್ಕಿನಾ ಫಾಸೊದ ರಾಜದಾನಿ ವಾಗಡೂಗು. ದೇಸೊಡು ಮಾಮಲ್ಲ ಪೇಂಟೆಲಾ ಆದುಂಡು.<ref>{{cite web |title=Burkina Faso: Introduction |url=https://globaledge.msu.edu/countries/burkina-faso |website=globaledge.msu.edu |publisher=Michigan State University |access-date=28 September 2026}}</ref>
ಬುರ್ಕಿನಾ ಫಾಸೊ ಪ್ರಪಂಚಡೇ ಅತಿ ಕಡಿಮೆ ಅಭಿವೃದ್ಧಿ ಆಯಿನ ದೇಸೊ. ೨೦೨೨ಡ್ ಉಂದೆತ ಜಿಡಿಪಿ $೧೬.೨೨೬ ಬಿಲಿಯನ್ ಇತ್ತ್ಂಡ್.<ref name=":1">{{cite web |last=Aib |first=Az |date=1 July 2022 |title=Burkina: 48,1% de la population du Sud-ouest pratique l'Animisme (officiel) |url=https://www.aib.media/2022/07/01/burkina-481-de-la-population-du-sud-ouest-pratique-lanimisme-officiel/ |access-date=15 October 2022 |website=AIB – Agence d'Information du Burkina |language=fr-FR |archive-url=https://web.archive.org/web/20230326030716/https://www.aib.media/2022/07/01/burkina-481-de-la-population-du-sud-ouest-pratique-lanimisme-officiel/ |archive-date=26 March 2023}}</ref> ಮುಲ್ಪದ ಜನಸಂಖ್ಯೆಡ್ ಸುಮಾರು ೬೩.೮% ಜನಕುಲು ಇಸ್ಲಾಂ ಧರ್ಮೊನು ಪಾಲಿಸಾವೆರ್. ೨೬.೩% ಜನಕುಲು ಕ್ರಿಶ್ಚಿಯನ್ ಧರ್ಮನ್, ಬೊಕ್ಕ ೯% ಜನಕುಲು (ವಿಶೇಷವಾದ್ ದೇಶದ ನೈಋತ್ಯ ಭಾಗಡ್) ಪ್ರಕೃತಿ ಆರಾಧನೆ ಮಲ್ಪುನ ಧರ್ಮಲೆನ್ ಪಾಲನೆ ಮಲ್ಪುವೆರ್.
ಬುರ್ಕಿನಾದ ಅರೆವಾಸಿ ಜನಕುಲು ಮೂರೆ ಭಾಷೆನ್ ಪಾತೆರುವೆರ್. ಮುಲ್ಪ ೬೦ರ್ದ್ಲಾ ಜಾಸ್ತಿ ದೇಸೀ ಭಾಷೆಲು ಉಲ್ಲ. ಬೇತೆ ಭಾಷೆಲೆನ್ ಕಾನೂನುದ ಮುಖಾಂತರ ಅಧಿಕೃತ ಮಲ್ಪೆರೆ ಸಂವಿಧಾನಡ್ ಅವಕಾಶ ಉಂಡು. ಕಛೇರಿದ ಬೇಲೆಗ್ ಇಂಗ್ಲಿಷ್ ಬೊಕ್ಕ ಫ್ರೆಂಚ್ ಬಾಸೆನ್ ಗಲಸುವೆರ್. ಮುಲ್ಪ ಗಲಸುನ ಮಾತಾ ದೇಸೀ ಬಾಸೆಲೆಗ್ ರಾಷ್ಟ್ರೀಯ ಬಾಸೆದ ಮಾನಾದಿಗೆ ಕೊರ್ದು ಗುರ್ತಿಸಾದೆರ್. ಅಂಚ ಗುರ್ತಿಸಾದಿನ ಬಾಸೆಲೆಗ್ ಅದೀಕೃತ ಮಾನ್ಯತೆ ಉಂಡು. ಇಸೇಸ ಪಂಡ, ಕಛೇರಿದ ಬೇಲೆಗ್ ಗಲಸುನ ಫ್ರೆಂಚ್ ಬಾಸೆಗ್ ಅದೀಕೃತ ಬಾಸೆದ ಮಾನ್ಯತೆ ಇಜ್ಜಿ. ಜನವರಿ ೨೦೨೪ ಮುಟ್ಟ ಫ್ರೆಂಚ್ ಮುಲ್ಪದ ಸರಕಾರದ ವ್ಯವಹಾರದ ಭಾಷೆಯಾದಿತ್ತ್ಂಡ್. ೨೦೨೪ನೇ ಇಸವಿಡ್ ಈ ದೇಸೊದ ಸಂವಿಧಾನೊಡು ಒಂಜಿ ತಿದ್ದುಪಡಿ ಕನತ್ತ್ದ್ ಫ್ರೆಂಚ್ ಬಾಸೆ ಕಛೇರಿದ ಬೇಲೆಗ್ ಮಾತ್ರ ಗಲಸುನ ಬಾಸೆ ಪಂದ್ ಗುರ್ತಿಸಾಯೆರ್.<ref>{{cite web |title=Burkina Faso revises its Constitution and relegates French to the status of "working language" |url=https://www.lemonde.fr/afrique/article/2023/12/07/le-burkina-faso-revise-sa-constitution-et-relegue-le-francais-au-rang-de-langue-de-travail_6204385_3212.html |website=lemonde.fr |publisher=Le Monde |access-date=28 September 2026}}</ref>
ಈ ದೇಸೊಡು ಬಗೆಬಗೆತ ದೇಸಿ ಸಂಸ್ಕೃತಿ, ಬೂಪ್ರದೇಸೊಲೆನ್ ತೂವೊಲಿ ಬಂಗಾರ್, ಮ್ಯಾಂಗನೀಸ್, ತಾಮ್ರ ಬೊಕ್ಕ ಸುಣ್ಣದಕಲ್ಲುದ ನಿಕ್ಷೇಪೊಲು ಮುಲ್ಪ ಉಲ್ಲ. ಮುಲ್ಪದ ಕಲೆಕ್ ಮಸ್ತ್ ಶ್ರೀಮಂತವಾಯಿನ ಬೊಕ್ಕ ಮಸ್ತ್ ಪಿರಾಕ್ದ ಇತಿಹಾಸ ಉಂಡು.<ref>Roy, Christopher D. "Countries of Africa: Burkina Faso," Art and Life in Africa, {{cite web |title=Countries Resources |url=http://www.uiowa.edu/~africart/toc/countries.html |archive-url=https://web.archive.org/web/20140115211048/http://www.uiowa.edu/~africart/toc/countries.html |archive-date=15 January 2014 |access-date=14 April 2014}}</ref>
ಬುರ್ಕಿನಾ ಫಾಸೊಡು ಅರೆ-ಅಧ್ಯಕ್ಷೀಯ ಪ್ರಕಾರೊದ ಸರ್ಕಾರ ಉಂಡು. ನಮ ದೇಸೊದ ಅಧ್ಯಕ್ಷ ಪದವಿಲೆಕ ಉಂದು ನಾಮಮಾತ್ರ ಪದವಿ ಅತ್. ಬದಲಾದ್, ಉಂದು ಕಾರ್ಯಾಂಗ, ಶಾಸಕಾಂಗ, ಬೊಕ್ಕ ನ್ಯಾಯಾಂಗದ ನೈಜ ಅದಿಕಾರ ಈ ಸರ್ಕಾರೊಗು ಉಂಡು. ಸದ್ಯೊಗು ಈ ದೇಸೊಡು ಮಿಲಿಟರಿ ಆಡಳಿತ ಚಾಲ್ತಿಡ್ ಉಂಡು.
==ಕಿನ್ಯ ಇತಿಹಾಸೊ==
ಬುರ್ಕಿನಾ ಫಾಸೊಡು ಎಚ್ಚ ವಾಸಿಸೊಂದು ಇಪ್ಪುನ ಮೂಲ ಜನಾಂಗ ಪನ್ನಗ ಮೊಸ್ಸಿ ಬುಡಕಟ್ಟುದ ಜನಕುಲು. ಮೊಕುಲು ೧೧ನೇ ಬೊಕ್ಕ ೧೩ನೇ ಶತಮಾನದ ಪೊರ್ತುಗು ಈ ಜಾಗೆಡ್ ನೆಲೆ ಆಯೆರ್. ಅಕುಲು ವಾಗಡೂಗು, ಟೆಂಕೊಡೊಗೊ, ಬೊಕ್ಕ ಯಟೆಂಗಾದಂಚಿನ ಸಾಮ್ರಾಜ್ಯೊಲೆನ್ ಸ್ಥಾಪನೆ ಮಲ್ತೆರ್. ೧೮೯೬ದ ಪೊರ್ತುಡು, ಫ್ರೆಂಚೆರ್, ಮುಲ್ಪ ಆಕ್ರಮಣ ಮಲ್ತ್ದ್ ಫ್ರೆಂಚ್ ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾದ ಒಂಜಿ ಭಾಗವಾದ್ ತನ್ಕುಲೆ ವಸಾಹತು ಮಲ್ತೆರ್. ೧೯೬೦ಡ್, ಮಾರಿಸ್ ಯಮಿಯೊಗೊ ಪನ್ಪಿನಾರ್ ಮುಲ್ಪದ ಅಧ್ಯಕ್ಷೆರಾಯೆರ್. ಐತ ಒಟ್ಟುಗು ಈ ವಸಾಹತುಗು ಪೂರ್ತಿ ಸ್ವಾತಂತ್ರ್ಯ ಬತ್ತ್ಂಡ್. ಸ್ವಾತಂತ್ರ್ಯ ತಿಕ್ಕಿನೆರ್ದ್ ಬೊಕ್ಕ, ಈ ದೇಶ ರಾಜಕೀಯ ಅಸ್ಥಿರತೆ, ಬರಗಾಲ, ಬೊಕ್ಕ ಭ್ರಷ್ಟಾಚಾರದಂಚಿನ ಸಮಸ್ಯೆಲೆನ್ ಎದುರಿಸೊಂದು ಬೈದ್ಂಡ್. ೧೯೬೬, ೧೯೮೦, ೧೯೮೨, ೧೯೮೩, ೧೯೮೭ಡ್, ಬೊಕ್ಕ ೨೦೨೨ನೇ ಇಸವಿಡ್ (ಜನವರಿ ಬೊಕ್ಕ ಸೆಪ್ಟೆಂಬರ್ಡ್- ರಡ್ಡ್ ಸರ್ತಿ) ಮುಲ್ಪ ಬೇತೆ ಬೇತೆ ಮಿಲಿಟರಿ ಬಂಡಾಯೊಲು ನಡತ್ಂಡ್. ಅಂಚನೆ ೧೯೮೯, ೨೦೧೫, ಬೊಕ್ಕ ೨೦೨೩ಡ್ ವಿಫಲ ಮಿಲಿಟರಿ ಬಂಡಾಯದ ಪ್ರಯತ್ನೊಲುಲಾ ನಡತ್ಂಡ್.
==ಉಲ್ಲೇಕಲು==
{{reflist}}
kh9xlc4x0pea84gmar168tclgw1wgl6
370341
370338
2026-09-28T06:26:56Z
Mahaveer Indra
1023
/* ಉಲ್ಲೇಕಲು */
370341
wikitext
text/x-wiki
'''ಬುರ್ಕಿನಾ ಫಾಸೊ''' ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾಡ್ ಇಪ್ಪುನ ಕಡಲಬರಿದಾಂತಿನ-ಪಂಡ ಸುತ್ತಲ ಬೇತೆ ದೇಸೊಲೆ ಗಡಿಕ್ ತಾಗ್ದಿಪ್ಪುನ ಒಂಜಿ ದೇಶ. ಉಂದೆತ ವಾಯುವ್ಯಡ್ ಮಾಲಿ, ಈಶಾನ್ಯಡ್ ನೈಜರ್, ಆಗ್ನೇಯಡ್ ಬೆನಿನ್, ತೆಂಕಾಯಿಡ್ ಟೊಗೊ ಬೊಕ್ಕ ಘಾನಾ, ಬೊಕ್ಕ ನೈಋತ್ಯಡ್ ಐವರಿ ಕೋಸ್ಟ್ ದೇಸೊಲು ಉಲ್ಲ. ಬುರ್ಕಿನಾ ದೇಸೊದ ಇಸ್ತೀರ್ನೊ ೨,೭೪,೨೨೩ ಚದರ ಕಿಲೋಮೀಟರ್ ಉಂಡು. ಈ ದೇಶದ ಇತ್ತೆದ ಜನಸಂಕೆ ಅಂದಾಜಿ ೨,೩೨,೮೬,೦೦೦ ಉಂಡು.<ref>{{Cite web |date=2024 |title=World Population Prospects 2024 |url=https://population.un.org/wpp/assets/Files/WPP2024_Summary-of-Results.pdf |website=Department of Economic and Social Affairs, United Nations}}</ref> ಬುರ್ಕಿನಾ ಫಾಸೊದ ರಾಜದಾನಿ ವಾಗಡೂಗು. ದೇಸೊಡು ಮಾಮಲ್ಲ ಪೇಂಟೆಲಾ ಆದುಂಡು.<ref>{{cite web |title=Burkina Faso: Introduction |url=https://globaledge.msu.edu/countries/burkina-faso |website=globaledge.msu.edu |publisher=Michigan State University |access-date=28 September 2026}}</ref>
ಬುರ್ಕಿನಾ ಫಾಸೊ ಪ್ರಪಂಚಡೇ ಅತಿ ಕಡಿಮೆ ಅಭಿವೃದ್ಧಿ ಆಯಿನ ದೇಸೊ. ೨೦೨೨ಡ್ ಉಂದೆತ ಜಿಡಿಪಿ $೧೬.೨೨೬ ಬಿಲಿಯನ್ ಇತ್ತ್ಂಡ್.<ref name=":1">{{cite web |last=Aib |first=Az |date=1 July 2022 |title=Burkina: 48,1% de la population du Sud-ouest pratique l'Animisme (officiel) |url=https://www.aib.media/2022/07/01/burkina-481-de-la-population-du-sud-ouest-pratique-lanimisme-officiel/ |access-date=15 October 2022 |website=AIB – Agence d'Information du Burkina |language=fr-FR |archive-url=https://web.archive.org/web/20230326030716/https://www.aib.media/2022/07/01/burkina-481-de-la-population-du-sud-ouest-pratique-lanimisme-officiel/ |archive-date=26 March 2023}}</ref> ಮುಲ್ಪದ ಜನಸಂಖ್ಯೆಡ್ ಸುಮಾರು ೬೩.೮% ಜನಕುಲು ಇಸ್ಲಾಂ ಧರ್ಮೊನು ಪಾಲಿಸಾವೆರ್. ೨೬.೩% ಜನಕುಲು ಕ್ರಿಶ್ಚಿಯನ್ ಧರ್ಮನ್, ಬೊಕ್ಕ ೯% ಜನಕುಲು (ವಿಶೇಷವಾದ್ ದೇಶದ ನೈಋತ್ಯ ಭಾಗಡ್) ಪ್ರಕೃತಿ ಆರಾಧನೆ ಮಲ್ಪುನ ಧರ್ಮಲೆನ್ ಪಾಲನೆ ಮಲ್ಪುವೆರ್.
ಬುರ್ಕಿನಾದ ಅರೆವಾಸಿ ಜನಕುಲು ಮೂರೆ ಭಾಷೆನ್ ಪಾತೆರುವೆರ್. ಮುಲ್ಪ ೬೦ರ್ದ್ಲಾ ಜಾಸ್ತಿ ದೇಸೀ ಭಾಷೆಲು ಉಲ್ಲ. ಬೇತೆ ಭಾಷೆಲೆನ್ ಕಾನೂನುದ ಮುಖಾಂತರ ಅಧಿಕೃತ ಮಲ್ಪೆರೆ ಸಂವಿಧಾನಡ್ ಅವಕಾಶ ಉಂಡು. ಕಛೇರಿದ ಬೇಲೆಗ್ ಇಂಗ್ಲಿಷ್ ಬೊಕ್ಕ ಫ್ರೆಂಚ್ ಬಾಸೆನ್ ಗಲಸುವೆರ್. ಮುಲ್ಪ ಗಲಸುನ ಮಾತಾ ದೇಸೀ ಬಾಸೆಲೆಗ್ ರಾಷ್ಟ್ರೀಯ ಬಾಸೆದ ಮಾನಾದಿಗೆ ಕೊರ್ದು ಗುರ್ತಿಸಾದೆರ್. ಅಂಚ ಗುರ್ತಿಸಾದಿನ ಬಾಸೆಲೆಗ್ ಅದೀಕೃತ ಮಾನ್ಯತೆ ಉಂಡು. ಇಸೇಸ ಪಂಡ, ಕಛೇರಿದ ಬೇಲೆಗ್ ಗಲಸುನ ಫ್ರೆಂಚ್ ಬಾಸೆಗ್ ಅದೀಕೃತ ಬಾಸೆದ ಮಾನ್ಯತೆ ಇಜ್ಜಿ. ಜನವರಿ ೨೦೨೪ ಮುಟ್ಟ ಫ್ರೆಂಚ್ ಮುಲ್ಪದ ಸರಕಾರದ ವ್ಯವಹಾರದ ಭಾಷೆಯಾದಿತ್ತ್ಂಡ್. ೨೦೨೪ನೇ ಇಸವಿಡ್ ಈ ದೇಸೊದ ಸಂವಿಧಾನೊಡು ಒಂಜಿ ತಿದ್ದುಪಡಿ ಕನತ್ತ್ದ್ ಫ್ರೆಂಚ್ ಬಾಸೆ ಕಛೇರಿದ ಬೇಲೆಗ್ ಮಾತ್ರ ಗಲಸುನ ಬಾಸೆ ಪಂದ್ ಗುರ್ತಿಸಾಯೆರ್.<ref>{{cite web |title=Burkina Faso revises its Constitution and relegates French to the status of "working language" |url=https://www.lemonde.fr/afrique/article/2023/12/07/le-burkina-faso-revise-sa-constitution-et-relegue-le-francais-au-rang-de-langue-de-travail_6204385_3212.html |website=lemonde.fr |publisher=Le Monde |access-date=28 September 2026}}</ref>
ಈ ದೇಸೊಡು ಬಗೆಬಗೆತ ದೇಸಿ ಸಂಸ್ಕೃತಿ, ಬೂಪ್ರದೇಸೊಲೆನ್ ತೂವೊಲಿ ಬಂಗಾರ್, ಮ್ಯಾಂಗನೀಸ್, ತಾಮ್ರ ಬೊಕ್ಕ ಸುಣ್ಣದಕಲ್ಲುದ ನಿಕ್ಷೇಪೊಲು ಮುಲ್ಪ ಉಲ್ಲ. ಮುಲ್ಪದ ಕಲೆಕ್ ಮಸ್ತ್ ಶ್ರೀಮಂತವಾಯಿನ ಬೊಕ್ಕ ಮಸ್ತ್ ಪಿರಾಕ್ದ ಇತಿಹಾಸ ಉಂಡು.<ref>Roy, Christopher D. "Countries of Africa: Burkina Faso," Art and Life in Africa, {{cite web |title=Countries Resources |url=http://www.uiowa.edu/~africart/toc/countries.html |archive-url=https://web.archive.org/web/20140115211048/http://www.uiowa.edu/~africart/toc/countries.html |archive-date=15 January 2014 |access-date=14 April 2014}}</ref>
ಬುರ್ಕಿನಾ ಫಾಸೊಡು ಅರೆ-ಅಧ್ಯಕ್ಷೀಯ ಪ್ರಕಾರೊದ ಸರ್ಕಾರ ಉಂಡು. ನಮ ದೇಸೊದ ಅಧ್ಯಕ್ಷ ಪದವಿಲೆಕ ಉಂದು ನಾಮಮಾತ್ರ ಪದವಿ ಅತ್. ಬದಲಾದ್, ಉಂದು ಕಾರ್ಯಾಂಗ, ಶಾಸಕಾಂಗ, ಬೊಕ್ಕ ನ್ಯಾಯಾಂಗದ ನೈಜ ಅದಿಕಾರ ಈ ಸರ್ಕಾರೊಗು ಉಂಡು. ಸದ್ಯೊಗು ಈ ದೇಸೊಡು ಮಿಲಿಟರಿ ಆಡಳಿತ ಚಾಲ್ತಿಡ್ ಉಂಡು.
==ಕಿನ್ಯ ಇತಿಹಾಸೊ==
ಬುರ್ಕಿನಾ ಫಾಸೊಡು ಎಚ್ಚ ವಾಸಿಸೊಂದು ಇಪ್ಪುನ ಮೂಲ ಜನಾಂಗ ಪನ್ನಗ ಮೊಸ್ಸಿ ಬುಡಕಟ್ಟುದ ಜನಕುಲು. ಮೊಕುಲು ೧೧ನೇ ಬೊಕ್ಕ ೧೩ನೇ ಶತಮಾನದ ಪೊರ್ತುಗು ಈ ಜಾಗೆಡ್ ನೆಲೆ ಆಯೆರ್. ಅಕುಲು ವಾಗಡೂಗು, ಟೆಂಕೊಡೊಗೊ, ಬೊಕ್ಕ ಯಟೆಂಗಾದಂಚಿನ ಸಾಮ್ರಾಜ್ಯೊಲೆನ್ ಸ್ಥಾಪನೆ ಮಲ್ತೆರ್. ೧೮೯೬ದ ಪೊರ್ತುಡು, ಫ್ರೆಂಚೆರ್, ಮುಲ್ಪ ಆಕ್ರಮಣ ಮಲ್ತ್ದ್ ಫ್ರೆಂಚ್ ಪಶ್ಚಿಮ ಆಫ್ರಿಕಾದ ಒಂಜಿ ಭಾಗವಾದ್ ತನ್ಕುಲೆ ವಸಾಹತು ಮಲ್ತೆರ್. ೧೯೬೦ಡ್, ಮಾರಿಸ್ ಯಮಿಯೊಗೊ ಪನ್ಪಿನಾರ್ ಮುಲ್ಪದ ಅಧ್ಯಕ್ಷೆರಾಯೆರ್. ಐತ ಒಟ್ಟುಗು ಈ ವಸಾಹತುಗು ಪೂರ್ತಿ ಸ್ವಾತಂತ್ರ್ಯ ಬತ್ತ್ಂಡ್. ಸ್ವಾತಂತ್ರ್ಯ ತಿಕ್ಕಿನೆರ್ದ್ ಬೊಕ್ಕ, ಈ ದೇಶ ರಾಜಕೀಯ ಅಸ್ಥಿರತೆ, ಬರಗಾಲ, ಬೊಕ್ಕ ಭ್ರಷ್ಟಾಚಾರದಂಚಿನ ಸಮಸ್ಯೆಲೆನ್ ಎದುರಿಸೊಂದು ಬೈದ್ಂಡ್. ೧೯೬೬, ೧೯೮೦, ೧೯೮೨, ೧೯೮೩, ೧೯೮೭ಡ್, ಬೊಕ್ಕ ೨೦೨೨ನೇ ಇಸವಿಡ್ (ಜನವರಿ ಬೊಕ್ಕ ಸೆಪ್ಟೆಂಬರ್ಡ್- ರಡ್ಡ್ ಸರ್ತಿ) ಮುಲ್ಪ ಬೇತೆ ಬೇತೆ ಮಿಲಿಟರಿ ಬಂಡಾಯೊಲು ನಡತ್ಂಡ್. ಅಂಚನೆ ೧೯೮೯, ೨೦೧೫, ಬೊಕ್ಕ ೨೦೨೩ಡ್ ವಿಫಲ ಮಿಲಿಟರಿ ಬಂಡಾಯದ ಪ್ರಯತ್ನೊಲುಲಾ ನಡತ್ಂಡ್.
==ಉಲ್ಲೇಕಲು==
{{reflist}}
[[ವರ್ಗೊ:ದೇಸೊಲು]]
[[ವರ್ಗೊ:ಆಫ್ರಿಕಾ ಖಂಡೊದ ದೇಸೊಲು]]
t21uecd9barmo7z46ctmxc47h1jkgho
ಟೆಂಪ್ಲೇಟ್:Userbox/100wikidays
10
28740
370356
2023-07-12T19:00:24Z
meta>Sadko
0
370356
wikitext
text/x-wiki
{{userbox
| border-c = #222
| border-s = 1
| info = This user {{#if:{{{active|}}}|{{#if:{{{log|}}}|[[{{{log}}}|is participating]]|is participating}}|{{#if:{{{log|}}}|[[{{{log}}}|participated]]|participated}}}} in the [[:m:100wikidays|#100wikidays challenge]].
| info-c = #fff
| info-fc = #444
| info-s = 9
| id =[[File:Spain traffic signal r301-100-green.svg|x41px]]
| id-c = white
}}<noinclude>{{doc}}</noinclude>
5xj3z27mhiz0adtdvqzxm6fupczdwoi
370357
370356
2026-09-28T08:07:27Z
ChiK
1136
1 revision imported from [[:meta:Template:Userbox/100wikidays]]
370356
wikitext
text/x-wiki
{{userbox
| border-c = #222
| border-s = 1
| info = This user {{#if:{{{active|}}}|{{#if:{{{log|}}}|[[{{{log}}}|is participating]]|is participating}}|{{#if:{{{log|}}}|[[{{{log}}}|participated]]|participated}}}} in the [[:m:100wikidays|#100wikidays challenge]].
| info-c = #fff
| info-fc = #444
| info-s = 9
| id =[[File:Spain traffic signal r301-100-green.svg|x41px]]
| id-c = white
}}<noinclude>{{doc}}</noinclude>
5xj3z27mhiz0adtdvqzxm6fupczdwoi
370412
370356
2026-09-03T13:15:24Z
en>Rusabot
0
Tagging [[WP:XNR|cross-namespace redirect]] with {{R to user namespace}} ([[Wikipedia:Bots/Requests for approval/Rusabot|BRFA]])
370412
wikitext
text/x-wiki
#REDIRECT [[User:UBX/100wikidays]]
{{Redirect category shell|
{{R from move}}
{{R to user namespace}}
}}
itkbll8k0877xlm087cxk6sw7ax5ro2
370413
370357
2026-09-28T08:10:18Z
ChiK
1136
1 revision imported from [[:en:Template:Userbox/100wikidays]]
370356
wikitext
text/x-wiki
{{userbox
| border-c = #222
| border-s = 1
| info = This user {{#if:{{{active|}}}|{{#if:{{{log|}}}|[[{{{log}}}|is participating]]|is participating}}|{{#if:{{{log|}}}|[[{{{log}}}|participated]]|participated}}}} in the [[:m:100wikidays|#100wikidays challenge]].
| info-c = #fff
| info-fc = #444
| info-s = 9
| id =[[File:Spain traffic signal r301-100-green.svg|x41px]]
| id-c = white
}}<noinclude>{{doc}}</noinclude>
5xj3z27mhiz0adtdvqzxm6fupczdwoi
370513
370413
2026-09-28T11:58:47Z
ChiK
1136
/* */
370513
wikitext
text/x-wiki
{{userbox
| border-c = #222
| border-s = 1
| info = This user {{#if:{{{active|}}}|{{#if:{{{log|}}}|[[{{{log}}}|is participating]]|is participating}}|{{#if:{{{log|}}}|[[{{{log}}}|participated]]|participated}}}} in the [[:m:100wikidays|#100wikidays challenge]].
| info-c = #fff
| info-fc = #444
| info-s = 9
| id =[[File:Spain traffic signal r301-100-green.svg|x41px]]
| id-c = white
| cat = 100ವಿಕಿನೂದುದಿನೊಕುಲು
}}<noinclude>{{doc}}</noinclude>
q5d5s4wag683tafal3b1blsk7owa6r6
ಮೋಡ್ಯೂಲ್:Template translation
828
28741
370364
2021-08-23T18:01:11Z
meta>MusikBot II
0
Changed protection settings for "[[Module:Template translation]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
370364
Scribunto
text/plain
local this = {}
function this.checkLanguage(subpage, default)
--[[Check first if there's an any invalid character that would cause the
mw.language.isKnownLanguageTag function() to throw an exception:
- all ASCII controls in [\000-\031\127],
- double quote ("), sharp sign (#), ampersand (&), apostrophe ('),
- slash (/), colon (:), semicolon (;), lower than (<), greater than (>),
- brackets and braces ([, ], {, }), pipe (|), backslash (\\)
All other characters are accepted, including space and all non-ASCII
characters (including \192, which is invalid in UTF-8).
--]]
if mw.language.isValidCode(subpage) and mw.language.isKnownLanguageTag(subpage)
--[[However "SupportedLanguages" are too restrictive, as they discard many
valid BCP47 script variants (only because MediaWiki still does not
define automatic transliterators for them, e.g. "en-dsrt" or
"fr-brai" for French transliteration in Braille), and country variants,
(useful in localized data, even if they are no longer used for
translations, such as zh-cn, also useful for legacy codes).
We want to avoid matching subpagenames containing any uppercase letter,
(even if they are considered valid in BCP 47, in which they are
case-insensitive; they are not "SupportedLanguages" for MediaWiki, so
they are not "KnownLanguageTags" for MediaWiki).
To be more restrictive, we exclude tags
* for specific uses in template subpages and unusable as language tags;
* that is not ASCII and not a lowercase letter, minus-hyphen, or digit,
or does not start by a letter or does not finish by a letter or digit;
* or that has subtags with more than 8 characters between hyphens;
* or that has two hyphens.
--]]
or subpage ~= "doc"
and subpage ~= "layout"
and subpage ~= "button"
and subpage ~= "buttons"
and subpage ~= "sandbox"
and subpage ~= "testcase"
and subpage ~= "testcases"
and string.find(subpage, "^[%l][%-%d%l]*[%d%l]$") ~= nil
and string.find(subpage, "[%d%l][%d%l][%d%l][%d%l][%d%l][%d%l][%d%l][%d%l][%d%l]") == nil
and string.find(subpage, "%-%-") == nil then
return subpage
end
-- Otherwise there's currently no known language subpage
return default
end
--[[Get the last subpage of an arbitrary page if it is a translation.
To be used from templates.
]]
function this.getLanguageSubpage(frame)
local title = frame and frame.args[1]
if not title or title == '' then
title = mw.title.getCurrentTitle()
end
return this._getLanguageSubpage(title)
end
--[[Get the last subpage of an arbitrary page if it is a translation.
To be used from Lua.
]]
function this._getLanguageSubpage(title)
if type(title) == 'string' then
title = mw.title.new(title)
end
if not title then
-- invalid title
return nil
end
--[[This code does not work in all namespaces where the Translate tool works.
-- It works in the main namespace on Meta because it allows subpages there
-- It would not work in the main namespace of English Wikipedia (but the
-- articles are monolignual on that wiki).
-- On Meta-Wiki the main space uses subpages and its pages are translated.
-- The Translate tool allows translatng pages in all namespaces, even if
-- the namespace officially does not have subpages.
-- On Meta-Wiki the Category namespace still does not have subpages enabled,
-- even if they would be very useful for categorizing templates, that DO have
-- subpages (for documentatio and tstboxes pages). This is a misconfiguration
-- bug of Meta-Wiki. The work-around is to split the full title and then
-- get the last titlepart.
local subpage = title.subpageText
--]]
local titleparts = mw.text.split(title.fullText, '/')
local subpage = titleparts[#titleparts]
return this.checkLanguage(subpage, '')
end
--[[Get the last subpage of the current page if it is a translation.
]]
function this.getCurrentLanguageSubpage()
return this._getLanguageSubpage(mw.title.getCurrentTitle())
end
--[[Get the first part of the language code of the subpage, before the '-'.
--]]
function this.getMainLanguageSubpage()
parts = mw.text.split(this.getCurrentLanguageSubpage(), '-')
return parts[1]
end
--[[Get the last subpage of the current frame if it is a translation.
Not used locally.
--]]
function this.getFrameLanguageSubpage(frame)
return this._getLanguageSubpage(frame:getParent():getTitle())
end
--[[Get the language of the current page. Not used locally.
--]]
function this.getLanguage()
local subpage = mw.title.getCurrentTitle().subpageText
return this.checkLanguage(subpage, mw.language.getContentLanguage():getCode())
end
--[[Get the language of the current frame. Not used locally.
--]]
function this.getFrameLanguage(frame)
local titleparts = mw.text.split(frame:getParent():getTitle(), '/')
local subpage = titleparts[#titleparts]
return this.checkLanguage(subpage, mw.language.getContentLanguage():getCode())
end
function this.title(namespace, basepagename, subpage)
local message, title
local pagename = basepagename
if (subpage or '') ~= '' then
pagename = pagename .. '/' .. subpage
end
local valid, title = xpcall(function()
return mw.title.new(pagename, namespace) -- costly
end, function(msg) -- catch undocumented exception (!?)
-- thrown when namespace does not exist. The doc still
-- says it should return a title, even in that case...
message = msg
end)
if valid and title ~= nil and (title.id or 0) ~= 0 then
return title
end
return { -- "pseudo" mw.title object with id = nil in case of error
prefixedText = pagename, -- the only property we need below
message = message -- only for debugging
}
end
--[[If on a translation subpage (like Foobar/de), this function returns
a given template in the same language, if the translation is available.
Otherwise, the template is returned in its default language, without
modification.
This is aimed at replacing the current implementation of Template:TNTN.
This version does not expand the returned template name: this solves the
problem of self-recursion in TNT when translatable templates need themselves
to transclude other translable templates (such as Tnavbar).
--]]
function this.getTranslatedTemplate(frame, withStatus)
local args = frame.args
local pagename = args['template']
--[[Check whether the pagename is actually in the Template namespace, or
if we're transcluding a main-namespace page.
(added for backward compatibility of Template:TNT)
]]
local namespace, title = args['tntns'] or ''
if namespace ~= '' then -- Checks for tntns parameter for custom ns.
title = this.title(namespace, pagename) -- Costly
else -- Supposes that set page is in ns10.
namespace = 'Template'
title = this.title(namespace, pagename) -- Costly
if title.id == nil then -- not found in the Template namespace, assume the main namespace (for backward compatibility)
namespace = ''
title = this.title(namespace, pagename) -- Costly
end
end
-- Get the last subpage and check if it matches a known language code.
local subpage = args['uselang'] or ''
if subpage == '' then
subpage = this.getCurrentLanguageSubpage()
end
if subpage == '' then
-- Check if a translation of the pagename exists in English
local newtitle = this.title(namespace, pagename, 'en') -- Costly
-- Use the translation when it exists
if newtitle.id ~= nil then
title = newtitle
end
else
-- Check if a translation of the pagename exists in that language
local newtitle = this.title(namespace, pagename, subpage) -- Costly
if newtitle.id == nil then
-- Check if a translation of the pagename exists in English
newtitle = this.title(namespace, pagename, 'en') -- Costly
end
-- Use the translation when it exists
if newtitle.id ~= nil then
title = newtitle
end
end
-- At this point the title should exist
if withStatus then
-- status returned to Lua function below
return title.prefixedText, title.id ~= nil
else
-- returned directly to MediaWiki
return title.prefixedText
end
end
--[[If on a translation subpage (like Foobar/de), this function renders
a given template in the same language, if the translation is available.
Otherwise, the template is rendered in its default language, without
modification.
This is aimed at replacing the current implementation of Template:TNT.
Note that translatable templates cannot transclude themselves other
translatable templates, as it will recurse on TNT. Use TNTN instead
to return only the effective template name to expand externally, with
template parameters also provided externally.
--]]
function this.renderTranslatedTemplate(frame)
local title, found = this.getTranslatedTemplate(frame, true)
-- At this point the title should exist prior to performing the expansion
-- of the template, otherwise render a red link to the missing page
-- (resolved in its assumed namespace). If we don't tet this here, a
-- script error would be thrown. Returning a red link is consistant with
-- MediaWiki behavior when attempting to transclude inexistant templates.
if not found then
return '[[' .. title .. ']]'
end
-- Copy args pseudo-table to a proper table so we can feed it to expandTemplate.
-- Then render the pagename.
local args = frame.args
local pargs = (frame:getParent() or {}).args
local arguments = {}
if (args['noshift'] or '') == '' then
for k, v in pairs(pargs) do
local n = tonumber(k) or 0
if n <= 0 then -- unnumbered args
arguments[k] = v
elseif n >= 2 then -- numbered args >= 2 need to be shifted
arguments[n - 1] = v
end
end
else -- special case where TNT is used as autotranslate
-- (don't shift again what is shifted in the invokation)
for k, v in pairs(pargs) do
arguments[k] = v
end
end
arguments['template'] = title -- override the existing parameter of the base template name supplied with the full name of the actual template expanded
arguments['tntns'] = nil -- discard the specified namespace override
arguments['uselang'] = args['uselang'] -- argument forwarded into parent frame
arguments['noshift'] = args['noshift'] -- argument forwarded into parent frame
return frame:expandTemplate{title = ':' .. title, args = arguments}
end
--[[A helper for mocking TNT in Special:TemplateSandbox. TNT breaks
TemplateSandbox; mocking it with this method means templates won't be
localized but at least TemplateSandbox substitutions will work properly.
Won't work with complex uses.
--]]
function this.mockTNT(frame)
local pargs = (frame:getParent() or {}).args
local arguments = {}
for k, v in pairs(pargs) do
local n = tonumber(k) or 0
if n <= 0 then -- unnumbered args
arguments[k] = v
elseif n >= 2 then -- numbered args >= 2 need to be shifted
arguments[n - 1] = v
end
end
if not pargs[1] then
return ''
end
return frame:expandTemplate{title = 'Template:' .. pargs[1], args = arguments}
end
return this
awvcrmp8lemwq049tlq1p4ae9mbphim
370365
370364
2026-09-28T08:07:28Z
ChiK
1136
1 revision imported from [[:meta:Module:Template_translation]]
370364
Scribunto
text/plain
local this = {}
function this.checkLanguage(subpage, default)
--[[Check first if there's an any invalid character that would cause the
mw.language.isKnownLanguageTag function() to throw an exception:
- all ASCII controls in [\000-\031\127],
- double quote ("), sharp sign (#), ampersand (&), apostrophe ('),
- slash (/), colon (:), semicolon (;), lower than (<), greater than (>),
- brackets and braces ([, ], {, }), pipe (|), backslash (\\)
All other characters are accepted, including space and all non-ASCII
characters (including \192, which is invalid in UTF-8).
--]]
if mw.language.isValidCode(subpage) and mw.language.isKnownLanguageTag(subpage)
--[[However "SupportedLanguages" are too restrictive, as they discard many
valid BCP47 script variants (only because MediaWiki still does not
define automatic transliterators for them, e.g. "en-dsrt" or
"fr-brai" for French transliteration in Braille), and country variants,
(useful in localized data, even if they are no longer used for
translations, such as zh-cn, also useful for legacy codes).
We want to avoid matching subpagenames containing any uppercase letter,
(even if they are considered valid in BCP 47, in which they are
case-insensitive; they are not "SupportedLanguages" for MediaWiki, so
they are not "KnownLanguageTags" for MediaWiki).
To be more restrictive, we exclude tags
* for specific uses in template subpages and unusable as language tags;
* that is not ASCII and not a lowercase letter, minus-hyphen, or digit,
or does not start by a letter or does not finish by a letter or digit;
* or that has subtags with more than 8 characters between hyphens;
* or that has two hyphens.
--]]
or subpage ~= "doc"
and subpage ~= "layout"
and subpage ~= "button"
and subpage ~= "buttons"
and subpage ~= "sandbox"
and subpage ~= "testcase"
and subpage ~= "testcases"
and string.find(subpage, "^[%l][%-%d%l]*[%d%l]$") ~= nil
and string.find(subpage, "[%d%l][%d%l][%d%l][%d%l][%d%l][%d%l][%d%l][%d%l][%d%l]") == nil
and string.find(subpage, "%-%-") == nil then
return subpage
end
-- Otherwise there's currently no known language subpage
return default
end
--[[Get the last subpage of an arbitrary page if it is a translation.
To be used from templates.
]]
function this.getLanguageSubpage(frame)
local title = frame and frame.args[1]
if not title or title == '' then
title = mw.title.getCurrentTitle()
end
return this._getLanguageSubpage(title)
end
--[[Get the last subpage of an arbitrary page if it is a translation.
To be used from Lua.
]]
function this._getLanguageSubpage(title)
if type(title) == 'string' then
title = mw.title.new(title)
end
if not title then
-- invalid title
return nil
end
--[[This code does not work in all namespaces where the Translate tool works.
-- It works in the main namespace on Meta because it allows subpages there
-- It would not work in the main namespace of English Wikipedia (but the
-- articles are monolignual on that wiki).
-- On Meta-Wiki the main space uses subpages and its pages are translated.
-- The Translate tool allows translatng pages in all namespaces, even if
-- the namespace officially does not have subpages.
-- On Meta-Wiki the Category namespace still does not have subpages enabled,
-- even if they would be very useful for categorizing templates, that DO have
-- subpages (for documentatio and tstboxes pages). This is a misconfiguration
-- bug of Meta-Wiki. The work-around is to split the full title and then
-- get the last titlepart.
local subpage = title.subpageText
--]]
local titleparts = mw.text.split(title.fullText, '/')
local subpage = titleparts[#titleparts]
return this.checkLanguage(subpage, '')
end
--[[Get the last subpage of the current page if it is a translation.
]]
function this.getCurrentLanguageSubpage()
return this._getLanguageSubpage(mw.title.getCurrentTitle())
end
--[[Get the first part of the language code of the subpage, before the '-'.
--]]
function this.getMainLanguageSubpage()
parts = mw.text.split(this.getCurrentLanguageSubpage(), '-')
return parts[1]
end
--[[Get the last subpage of the current frame if it is a translation.
Not used locally.
--]]
function this.getFrameLanguageSubpage(frame)
return this._getLanguageSubpage(frame:getParent():getTitle())
end
--[[Get the language of the current page. Not used locally.
--]]
function this.getLanguage()
local subpage = mw.title.getCurrentTitle().subpageText
return this.checkLanguage(subpage, mw.language.getContentLanguage():getCode())
end
--[[Get the language of the current frame. Not used locally.
--]]
function this.getFrameLanguage(frame)
local titleparts = mw.text.split(frame:getParent():getTitle(), '/')
local subpage = titleparts[#titleparts]
return this.checkLanguage(subpage, mw.language.getContentLanguage():getCode())
end
function this.title(namespace, basepagename, subpage)
local message, title
local pagename = basepagename
if (subpage or '') ~= '' then
pagename = pagename .. '/' .. subpage
end
local valid, title = xpcall(function()
return mw.title.new(pagename, namespace) -- costly
end, function(msg) -- catch undocumented exception (!?)
-- thrown when namespace does not exist. The doc still
-- says it should return a title, even in that case...
message = msg
end)
if valid and title ~= nil and (title.id or 0) ~= 0 then
return title
end
return { -- "pseudo" mw.title object with id = nil in case of error
prefixedText = pagename, -- the only property we need below
message = message -- only for debugging
}
end
--[[If on a translation subpage (like Foobar/de), this function returns
a given template in the same language, if the translation is available.
Otherwise, the template is returned in its default language, without
modification.
This is aimed at replacing the current implementation of Template:TNTN.
This version does not expand the returned template name: this solves the
problem of self-recursion in TNT when translatable templates need themselves
to transclude other translable templates (such as Tnavbar).
--]]
function this.getTranslatedTemplate(frame, withStatus)
local args = frame.args
local pagename = args['template']
--[[Check whether the pagename is actually in the Template namespace, or
if we're transcluding a main-namespace page.
(added for backward compatibility of Template:TNT)
]]
local namespace, title = args['tntns'] or ''
if namespace ~= '' then -- Checks for tntns parameter for custom ns.
title = this.title(namespace, pagename) -- Costly
else -- Supposes that set page is in ns10.
namespace = 'Template'
title = this.title(namespace, pagename) -- Costly
if title.id == nil then -- not found in the Template namespace, assume the main namespace (for backward compatibility)
namespace = ''
title = this.title(namespace, pagename) -- Costly
end
end
-- Get the last subpage and check if it matches a known language code.
local subpage = args['uselang'] or ''
if subpage == '' then
subpage = this.getCurrentLanguageSubpage()
end
if subpage == '' then
-- Check if a translation of the pagename exists in English
local newtitle = this.title(namespace, pagename, 'en') -- Costly
-- Use the translation when it exists
if newtitle.id ~= nil then
title = newtitle
end
else
-- Check if a translation of the pagename exists in that language
local newtitle = this.title(namespace, pagename, subpage) -- Costly
if newtitle.id == nil then
-- Check if a translation of the pagename exists in English
newtitle = this.title(namespace, pagename, 'en') -- Costly
end
-- Use the translation when it exists
if newtitle.id ~= nil then
title = newtitle
end
end
-- At this point the title should exist
if withStatus then
-- status returned to Lua function below
return title.prefixedText, title.id ~= nil
else
-- returned directly to MediaWiki
return title.prefixedText
end
end
--[[If on a translation subpage (like Foobar/de), this function renders
a given template in the same language, if the translation is available.
Otherwise, the template is rendered in its default language, without
modification.
This is aimed at replacing the current implementation of Template:TNT.
Note that translatable templates cannot transclude themselves other
translatable templates, as it will recurse on TNT. Use TNTN instead
to return only the effective template name to expand externally, with
template parameters also provided externally.
--]]
function this.renderTranslatedTemplate(frame)
local title, found = this.getTranslatedTemplate(frame, true)
-- At this point the title should exist prior to performing the expansion
-- of the template, otherwise render a red link to the missing page
-- (resolved in its assumed namespace). If we don't tet this here, a
-- script error would be thrown. Returning a red link is consistant with
-- MediaWiki behavior when attempting to transclude inexistant templates.
if not found then
return '[[' .. title .. ']]'
end
-- Copy args pseudo-table to a proper table so we can feed it to expandTemplate.
-- Then render the pagename.
local args = frame.args
local pargs = (frame:getParent() or {}).args
local arguments = {}
if (args['noshift'] or '') == '' then
for k, v in pairs(pargs) do
local n = tonumber(k) or 0
if n <= 0 then -- unnumbered args
arguments[k] = v
elseif n >= 2 then -- numbered args >= 2 need to be shifted
arguments[n - 1] = v
end
end
else -- special case where TNT is used as autotranslate
-- (don't shift again what is shifted in the invokation)
for k, v in pairs(pargs) do
arguments[k] = v
end
end
arguments['template'] = title -- override the existing parameter of the base template name supplied with the full name of the actual template expanded
arguments['tntns'] = nil -- discard the specified namespace override
arguments['uselang'] = args['uselang'] -- argument forwarded into parent frame
arguments['noshift'] = args['noshift'] -- argument forwarded into parent frame
return frame:expandTemplate{title = ':' .. title, args = arguments}
end
--[[A helper for mocking TNT in Special:TemplateSandbox. TNT breaks
TemplateSandbox; mocking it with this method means templates won't be
localized but at least TemplateSandbox substitutions will work properly.
Won't work with complex uses.
--]]
function this.mockTNT(frame)
local pargs = (frame:getParent() or {}).args
local arguments = {}
for k, v in pairs(pargs) do
local n = tonumber(k) or 0
if n <= 0 then -- unnumbered args
arguments[k] = v
elseif n >= 2 then -- numbered args >= 2 need to be shifted
arguments[n - 1] = v
end
end
if not pargs[1] then
return ''
end
return frame:expandTemplate{title = 'Template:' .. pargs[1], args = arguments}
end
return this
awvcrmp8lemwq049tlq1p4ae9mbphim
ಟೆಂಪ್ಲೇಟ್:Userbox/100wikidays/doc
10
28744
370408
2025-01-04T02:33:41Z
meta>Leaderboard
0
Reverted change by [[Special:Contributions/197.223.0.194|197.223.0.194]] ([[User talk:197.223.0.194|talk]]) to last version by Renamed user 3b0ac64b1d74ce1fbe5382d087ed3d0b
370408
wikitext
text/x-wiki
{{Documentation subpage}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
== Usage ==
<code><nowiki>{{Userbox/100wikidays}}</nowiki></code>
{{Userbox/100wikidays}}
{{clear}}
;active=true
:Set if actively participating (default is false)
<code><nowiki>{{Userbox/100wikidays|active=true}}</nowiki></code>
{{Userbox/100wikidays|active=true}}
{{clear}}
;log=<nowiki>User:Example/100wikidays</nowiki>
:Set if maintaining a log - use log page name (without link wikicode)
<code><nowiki>{{Userbox/100wikidays|log=User:Example/100wikidays}}</nowiki></code>
{{Userbox/100wikidays|log=:User:Example/100wikidays}}
{{clear}}
<code><nowiki>{{Userbox/100wikidays|log=User:Example/100wikidays|active=true}}</nowiki></code>
{{Userbox/100wikidays|log=:User:Example/100wikidays|active=true}}
<includeonly>
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Userboxes]]
</includeonly>
nmqgctu0hp68qefc7uph9akgtixwpxo
370409
370408
2026-09-28T08:07:30Z
ChiK
1136
1 revision imported from [[:meta:Template:Userbox/100wikidays/doc]]
370408
wikitext
text/x-wiki
{{Documentation subpage}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
== Usage ==
<code><nowiki>{{Userbox/100wikidays}}</nowiki></code>
{{Userbox/100wikidays}}
{{clear}}
;active=true
:Set if actively participating (default is false)
<code><nowiki>{{Userbox/100wikidays|active=true}}</nowiki></code>
{{Userbox/100wikidays|active=true}}
{{clear}}
;log=<nowiki>User:Example/100wikidays</nowiki>
:Set if maintaining a log - use log page name (without link wikicode)
<code><nowiki>{{Userbox/100wikidays|log=User:Example/100wikidays}}</nowiki></code>
{{Userbox/100wikidays|log=:User:Example/100wikidays}}
{{clear}}
<code><nowiki>{{Userbox/100wikidays|log=User:Example/100wikidays|active=true}}</nowiki></code>
{{Userbox/100wikidays|log=:User:Example/100wikidays|active=true}}
<includeonly>
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Userboxes]]
</includeonly>
nmqgctu0hp68qefc7uph9akgtixwpxo
ಟೆಂಪ್ಲೇಟ್:R to user namespace
10
28745
370414
2026-09-03T17:59:50Z
en>MusikBot II
0
Changed protection settings for "[[Template:R to user namespace]]": [[Wikipedia:High-risk templates|High-risk template or module]]: 3364 transclusions ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Require extended confirmed access] (indefinite) [Move=Require extended confirmed access] (indefinite))
370414
wikitext
text/x-wiki
<noinclude>{{This is a redirect/rcat}}
</noinclude>{{Redirect template
|id=R to user namespace
|name=[[:Category:Redirects to user namespace|From outside userspace]]
|from=a page outside the [[WP:User pages|user namespace]]
|to=a user page (not to a user ''talk page'')
|info=If this redirect targets a user talk page, then use {{tlx|R to talk page}} instead. This redirect page ''must be '''outside'''<nowiki />'' the user namespace. If this redirect is in the user namespace, then instead of the expected category, it will populate '''{{cat|Pages with templates in the wrong namespace}}'''.
|printworthy=no
}}<includeonly>{{User other|{{Incorrect redirect template|[[WP:User pages|user]]||outside}}|[[Category:Redirects to user namespace]]}}{{#ifeq: {{BASEPAGENAME}}|R to user namespace||{{#ifeq: {{NAMESPACE:{{#invoke:redirect|main|{{FULLPAGENAME}}}}}}|{{ns:2}}||{{info|image=Stop hand nuvola.svg|{{error|The above template is being used incorrectly. Please remove it from this redirect.}}}}[[category:Pages with incorrectly transcluded templates]]}}}}</includeonly><noinclude>
<!-- Place categories on /doc subpage; interwikis go to Wikidata. -->
{{documentation}}
</noinclude>
2no7as0bgs3jstytzdx77c5o8teikaf
370415
370414
2026-09-28T08:10:18Z
ChiK
1136
1 revision imported from [[:en:Template:R_to_user_namespace]]
370414
wikitext
text/x-wiki
<noinclude>{{This is a redirect/rcat}}
</noinclude>{{Redirect template
|id=R to user namespace
|name=[[:Category:Redirects to user namespace|From outside userspace]]
|from=a page outside the [[WP:User pages|user namespace]]
|to=a user page (not to a user ''talk page'')
|info=If this redirect targets a user talk page, then use {{tlx|R to talk page}} instead. This redirect page ''must be '''outside'''<nowiki />'' the user namespace. If this redirect is in the user namespace, then instead of the expected category, it will populate '''{{cat|Pages with templates in the wrong namespace}}'''.
|printworthy=no
}}<includeonly>{{User other|{{Incorrect redirect template|[[WP:User pages|user]]||outside}}|[[Category:Redirects to user namespace]]}}{{#ifeq: {{BASEPAGENAME}}|R to user namespace||{{#ifeq: {{NAMESPACE:{{#invoke:redirect|main|{{FULLPAGENAME}}}}}}|{{ns:2}}||{{info|image=Stop hand nuvola.svg|{{error|The above template is being used incorrectly. Please remove it from this redirect.}}}}[[category:Pages with incorrectly transcluded templates]]}}}}</includeonly><noinclude>
<!-- Place categories on /doc subpage; interwikis go to Wikidata. -->
{{documentation}}
</noinclude>
2no7as0bgs3jstytzdx77c5o8teikaf
ಟೆಂಪ್ಲೇಟ್:Documentation/testcases/test3
10
28746
370426
2024-09-05T16:11:49Z
en>WOSlinker
0
add testcases notice
370426
wikitext
text/x-wiki
<noinclude>{{testcases notice}}</noinclude>
test3
k516jyv9g7evj5112on5yfxzhaed9nm
370427
370426
2026-09-28T08:22:29Z
ChiK
1136
1 revision imported from [[:en:Template:Documentation/testcases/test3]]
370426
wikitext
text/x-wiki
<noinclude>{{testcases notice}}</noinclude>
test3
k516jyv9g7evj5112on5yfxzhaed9nm
ಮೋಡ್ಯೂಲ್:Documentation/testcases
828
28747
370428
2026-05-28T18:07:17Z
en>Awesome Aasim
0
fix text
370428
Scribunto
text/plain
-- Test cases page for [[Module:Documentation]]. See talk page to run tests.
local doc = require('Module:Documentation')
local docConfig = require("Module:Documentation/config")
local ScribuntoUnit = require('Module:ScribuntoUnit')
local suite = ScribuntoUnit.new()
--------------------------------------------------------------------------------
-- Sandbox run
--------------------------------------------------------------------------------
function suite.runSandbox(...)
doc = require('Module:Documentation/sandbox')
docConfig = require("Module:Documentation/config/sandbox")
return suite.run(...)
end
--------------------------------------------------------------------------------------------
-- Test case helper functions
--------------------------------------------------------------------------------------------
local function getEnv(page)
-- Gets an env table using the specified page.
return doc.getEnvironment{page = page}
end
--------------------------------------------------------------------------------------------
-- Test helper functions
--------------------------------------------------------------------------------------------
function suite:testMessage()
self:assertEquals('sandbox', doc.message('sandbox-subpage'))
self:assertEquals('Subpages of this foobar', doc.message('subpages-link-display', {'foobar'}))
self:assertEquals(true, doc.message('display-strange-usage-category', nil, 'boolean'))
end
function suite:testMakeToolbar()
self:assertEquals(nil, doc.makeToolbar())
self:assertEquals('<span class="documentation-toolbar">(Foo)</span>', doc.makeToolbar('Foo'))
self:assertEquals('<span class="documentation-toolbar">(Foo | Bar)</span>', doc.makeToolbar('Foo', 'Bar'))
end
function suite:testMakeWikilink()
self:assertEquals('[[Foo]]', doc.makeWikilink('Foo'))
self:assertEquals('[[Foo|Bar]]', doc.makeWikilink('Foo', 'Bar'))
end
function suite:testMakeCategoryLink()
self:assertEquals('[[Category:Foo]]', doc.makeCategoryLink('Foo'))
self:assertEquals('[[Category:Foo|Bar]]', doc.makeCategoryLink('Foo', 'Bar'))
end
function suite:testMakeUrlLink()
self:assertEquals('[Foo Bar]', doc.makeUrlLink('Foo', 'Bar'))
end
--------------------------------------------------------------------------------------------
-- Test env table
--------------------------------------------------------------------------------------------
function suite:assertEnvFieldEquals(expected, page, field)
local env = getEnv(page)
self:assertEquals(expected, env[field], nil, 1)
end
function suite:assertEnvTitleEquals(expected, page, titleField)
local env = getEnv(page)
local title = env[titleField]
self:assertEquals(expected, title.prefixedText, nil, 1)
end
function suite:testEnvTitle()
self:assertEnvTitleEquals('Wikipedia:Sandbox', 'Wikipedia:Sandbox', 'title')
self:assertEnvTitleEquals('Template:Example/sandbox', 'Template:Example/sandbox', 'title')
end
function suite:testEnvBadTitle()
local env = doc.getEnvironment{page = 'Bad[]Title'}
local title = env.title
self:assertEquals(nil, title)
end
function suite:testEnvTemplateTitle()
self:assertEnvTitleEquals('Template:Example', 'Template:Example', 'templateTitle')
self:assertEnvTitleEquals('Template:Example', 'Template talk:Example', 'templateTitle')
self:assertEnvTitleEquals('Template:Example', 'Template:Example/sandbox', 'templateTitle')
self:assertEnvTitleEquals('Template:Example', 'Template talk:Example/sandbox', 'templateTitle')
self:assertEnvTitleEquals('Template:Example', 'Template:Example/testcases', 'templateTitle')
self:assertEnvTitleEquals('Template:Example/foo', 'Template:Example/foo', 'templateTitle')
self:assertEnvTitleEquals('File:Example', 'File talk:Example', 'templateTitle')
self:assertEnvTitleEquals('File:Example', 'File talk:Example/sandbox', 'templateTitle')
end
function suite:testEnvDocTitle()
self:assertEnvTitleEquals('Template:Example/doc', 'Template:Example', 'docTitle')
self:assertEnvTitleEquals('Template:Example/doc', 'Template talk:Example', 'docTitle')
self:assertEnvTitleEquals('Template:Example/doc', 'Template:Example/sandbox', 'docTitle')
self:assertEnvTitleEquals('Talk:Example/doc', 'Example', 'docTitle')
self:assertEnvTitleEquals('File talk:Example.png/doc', 'File:Example.png', 'docTitle')
self:assertEnvTitleEquals('File talk:Example.png/doc', 'File talk:Example.png/sandbox', 'docTitle')
end
function suite:testEnvSandboxTitle()
self:assertEnvTitleEquals('Template:Example/sandbox', 'Template:Example', 'sandboxTitle')
self:assertEnvTitleEquals('Template:Example/sandbox', 'Template talk:Example', 'sandboxTitle')
self:assertEnvTitleEquals('Template:Example/sandbox', 'Template:Example/sandbox', 'sandboxTitle')
self:assertEnvTitleEquals('Talk:Example/sandbox', 'Example', 'sandboxTitle')
self:assertEnvTitleEquals('File talk:Example.png/sandbox', 'File:Example.png', 'sandboxTitle')
end
function suite:testEnvTestcasesTitle()
self:assertEnvTitleEquals('Template:Example/testcases', 'Template:Example', 'testcasesTitle')
self:assertEnvTitleEquals('Template:Example/testcases', 'Template talk:Example', 'testcasesTitle')
self:assertEnvTitleEquals('Template:Example/testcases', 'Template:Example/testcases', 'testcasesTitle')
self:assertEnvTitleEquals('Talk:Example/testcases', 'Example', 'testcasesTitle')
self:assertEnvTitleEquals('File talk:Example.png/testcases', 'File:Example.png', 'testcasesTitle')
end
function suite:testEnvProtectionLevels()
local pipeEnv = getEnv('Template:?')
self:assertEquals('autoconfirmed', pipeEnv.protectionLevels.edit[1])
local sandboxEnv = getEnv('Wikipedia:Sandbox')
local sandboxEditLevels = sandboxEnv.protectionLevels.edit
if sandboxEditLevels then -- sandboxEditLevels may also be nil if the page is unprotected
self:assertEquals(nil, sandboxEditLevels[1])
else
self:assertEquals(nil, sandboxEditLevels)
end
end
function suite:testEnvSubjectSpace()
self:assertEnvFieldEquals(10, 'Template:Sandbox', 'subjectSpace')
self:assertEnvFieldEquals(10, 'Template talk:Sandbox', 'subjectSpace')
self:assertEnvFieldEquals(0, 'Foo', 'subjectSpace')
self:assertEnvFieldEquals(0, 'Talk:Foo', 'subjectSpace')
end
function suite:testEnvDocSpace()
self:assertEnvFieldEquals(10, 'Template:Sandbox', 'docSpace')
self:assertEnvFieldEquals(828, 'Module:Sandbox', 'docSpace')
self:assertEnvFieldEquals(1, 'Foo', 'docSpace')
self:assertEnvFieldEquals(7, 'File:Example.png', 'docSpace')
self:assertEnvFieldEquals(9, 'MediaWiki:Watchlist-details', 'docSpace')
self:assertEnvFieldEquals(15, 'Category:Wikipedians', 'docSpace')
end
function suite:testEnvDocpageBase()
self:assertEnvFieldEquals('Template:Example', 'Template:Example', 'docpageBase')
self:assertEnvFieldEquals('Template:Example', 'Template:Example/sandbox', 'docpageBase')
self:assertEnvFieldEquals('Template:Example', 'Template talk:Example', 'docpageBase')
self:assertEnvFieldEquals('File talk:Example.png', 'File:Example.png', 'docpageBase')
self:assertEnvFieldEquals('File talk:Example.png', 'File talk:Example.png', 'docpageBase')
self:assertEnvFieldEquals('File talk:Example.png', 'File talk:Example.png/sandbox', 'docpageBase')
end
function suite:testEnvCompareUrl()
-- We use "Template:Edit protected" rather than "Template:Example" here as it has a space in the title.
local expected = 'https://en.wikipedia.org/w/index.php?title=Special%3AComparePages&page1=Template%3AEdit+protected&page2=Template%3AEdit+protected%2Fsandbox'
self:assertEnvFieldEquals(expected, 'Template:Edit protected', 'compareUrl')
self:assertEnvFieldEquals(expected, 'Template:Edit protected/sandbox', 'compareUrl')
self:assertEnvFieldEquals(nil, 'Template:Non-existent template adsfasdg', 'compareUrl')
self:assertEnvFieldEquals(nil, 'Template:Fact', 'compareUrl') -- Exists but doesn't have a sandbox.
end
--------------------------------------------------------------------------------------------
-- Test sandbox notice
--------------------------------------------------------------------------------------------
function suite.getSandboxNoticeTestData(page)
local env = getEnv(page)
local templatePage = page:match('^(.*)/sandbox$')
local image = '[[File:Edit In Sandbox Icon - Color.svg|50px|alt=|link=]]'
local templateBlurb = 'This is the [[Wikipedia:Template test cases|template sandbox]] page for [[' .. templatePage .. ']]'
local moduleBlurb = 'This is the [[Wikipedia:Template test cases|module sandbox]] page for [[' .. templatePage .. ']]'
local otherBlurb = 'This is the sandbox page for [[' .. templatePage .. ']]'
local diff = '[https://en.wikipedia.org/w/index.php?title=Special%3AComparePages&page1=' .. mw.uri.encode(templatePage) .. '&page2=' .. mw.uri.encode(page) .. ' diff]'
local testcasesBlurb = 'See also the companion subpage for [[' .. templatePage .. '/testcases|test cases]].'
local category = '[[Category:Template sandboxes]]'
local clear = '<div class="documentation-clear"></div>'
return env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category, clear
end
function suite:testSandboxNoticeNotSandbox()
local env = getEnv('Template:Example')
local notice = doc.sandboxNotice({}, env)
self:assertEquals(nil, notice)
end
function suite:testSandboxNoticeStaticVals()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category, clear = suite.getSandboxNoticeTestData('Template:Example/sandbox')
local notice = doc.sandboxNotice({}, env)
-- Escape metacharacters (mainly '-')
clear = clear:gsub( '%p', '%%%0' )
self:assertStringContains('^' .. clear, notice, false)
self:assertStringContains(image, notice, true)
self:assertStringContains(category, notice, true)
end
function suite:testSandboxNoticeTemplateBlurb()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Template:Example/sandbox')
local notice = doc.sandboxNotice({}, env)
self:assertStringContains(templateBlurb, notice, true)
end
function suite:testSandboxNoticeModuleBlurb()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Module:Math/sandbox')
local notice = doc.sandboxNotice({}, env)
self:assertStringContains(moduleBlurb, notice, true)
end
function suite:testSandboxNoticeOtherBlurb()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('User:Mr. Stradivarius/sandbox')
local notice = doc.sandboxNotice({}, env)
self:assertStringContains(otherBlurb, notice, true)
end
function suite:testSandboxNoticeBlurbDiff()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Template:Example/sandbox')
local notice = doc.sandboxNotice({}, env)
if mw.title.getCurrentTitle().isTalk then
-- This test doesn't work in the debug console due to the use of frame:preprocess({{REVISIONID}}).
-- The frame test doesn't seem to be working for now, so adding a namespace hack.
self:assertStringContains(diff, notice, true)
end
end
function suite:testSandboxNoticeBlurbDiffNoBasePage()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Module:User:Mr. Stradivarius/sandbox')
local notice = doc.sandboxNotice({}, env)
if mw.title.getCurrentTitle().isTalk then
-- This test doesn't work in the debug console due to the use of frame:preprocess({{REVISIONID}}).
-- The frame test doesn't seem to be working for now, so adding a namespace hack.
self:assertNotStringContains(diff, notice, true)
end
end
function suite:testSandboxNoticeTestcases()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Template:Edit protected/sandbox')
local notice = doc.sandboxNotice({}, env)
self:assertStringContains(testcasesBlurb, notice, true)
end
function suite:testSandboxNoticeNoTestcases()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Template:Example/sandbox')
local notice = doc.sandboxNotice({}, env)
self:assertNotStringContains(testcasesBlurb, notice, true)
end
--------------------------------------------------------------------------------------------
-- Test protection template
--
-- There's not much we can do with this until {{pp-meta}} gets rewritten in Lua. At the
-- moment the protection detection only works for the current page, and the testcases pages
-- will be unprotected.
--------------------------------------------------------------------------------------------
function suite:testProtectionTemplateUnprotectedTemplate()
local env = getEnv('Template:Example')
self:assertEquals(nil, doc.protectionTemplate(env))
end
function suite:testProtectionTemplateProtectedTemplate()
local env = getEnv('Template:Navbox')
-- Test whether there is some content. We don't care what the content is, as the protection level
-- detected will be for the current page, not the template.
self:assertTrue(doc.protectionTemplate(env))
end
function suite:testProtectionTemplateUnprotectedModule()
local env = getEnv('Module:Example')
self:assertEquals(nil, doc.protectionTemplate(env))
end
function suite:testProtectionTemplateProtectedModule()
local env = getEnv('Module:Yesno')
-- Test whether there is some content. We don't care what the content is, as the protection level
-- detected will be for the current page, not the template.
self:assertTrue(doc.protectionTemplate(env))
end
--------------------------------------------------------------------------------------------
-- Test _startBox
--------------------------------------------------------------------------------------------
function suite:testStartBoxContentArg()
local pattern = '<div class="documentation%-startbox">\n<span class="documentation%-heading" id="documentation%-heading">.-</span></div>'
local startBox = doc._startBox({content = 'some documentation'}, getEnv('Template:Example'))
self:assertStringContains(pattern, startBox)
end
function suite:testStartBoxHtml()
self:assertStringContains(
'<div class="documentation%-startbox">\n<span class="documentation%-heading" id="documentation%-heading">.-</span><span class="mw%-editsection%-like plainlinks">.-</span></div>',
doc._startBox({}, getEnv('Template:Example'))
)
end
--------------------------------------------------------------------------------------------
-- Test makeStartBoxLinksData
--------------------------------------------------------------------------------------------
function suite:testMakeStartBoxLinksData()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxLinksData({}, env)
self:assertEquals('Template:Example', data.title.prefixedText)
self:assertEquals('Template:Example/doc', data.docTitle.prefixedText)
self:assertEquals('view', data.viewLinkDisplay)
self:assertEquals('edit', data.editLinkDisplay)
self:assertEquals('history', data.historyLinkDisplay)
self:assertEquals('purge', data.purgeLinkDisplay)
self:assertEquals('create', data.createLinkDisplay)
self:assertEquals('override', data.overrideLinkDisplay)
end
function suite:testMakeStartBoxLinksDataTemplatePreload()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxLinksData({}, env)
self:assertEquals('Template:Documentation/preload', data.preload)
end
function suite:testMakeStartBoxLinksDataArgsPreload()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxLinksData({preload = 'My custom preload'}, env)
self:assertEquals('My custom preload', data.preload)
end
--------------------------------------------------------------------------------------------
-- Test renderStartBoxLinks
--------------------------------------------------------------------------------------------
function suite.makeExampleStartBoxLinksData(exists)
-- Makes a data table to be used with testRenderStartBoxLinksExists and testRenderStartBoxLinksDoesntExist.
local data = {}
if exists then
data.title = mw.title.new('Template:Example')
data.docTitle = mw.title.new('Template:Example/doc')
else
data.title = mw.title.new('Template:NonExistentTemplate')
data.docTitle = mw.title.new('Template:NonExistentTemplate/doc')
end
data.viewLinkDisplay = 'view'
data.editLinkDisplay = 'edit'
data.historyLinkDisplay = 'history'
data.purgeLinkDisplay = 'purge'
data.createLinkDisplay = 'create'
data.overrideLinkDisplay = 'override'
data.preload = 'Template:MyPreload'
return data
end
function suite:testRenderStartBoxLinksExists()
local data = suite.makeExampleStartBoxLinksData(true)
local expected = '[[[Template:Example/doc|view]]] [[[Special:EditPage/Template:Example/doc|edit]]] [[[Special:PageHistory/Template:Example/doc|history]]] [[[Special:Purge/Template:Example|purge]]]'
self:assertEquals(expected, doc.renderStartBoxLinks(data))
end
function suite:testRenderStartBoxLinksDoesntExist()
local data = suite.makeExampleStartBoxLinksData(false)
local expected = '[[https://en.wikipedia.org/w/index.php?title=Template:NonExistentTemplate/doc&action=edit&preload=Template%3AMyPreload create]] [[[Special:Purge/Template:NonExistentTemplate|purge]]]'
self:assertEquals(expected, doc.renderStartBoxLinks(data))
end
--------------------------------------------------------------------------------------------
-- Test makeStartBoxData
--------------------------------------------------------------------------------------------
function suite:testStartBoxDataBlankHeading()
local data = doc.makeStartBoxData({heading = ''}, {})
self:assertEquals(nil, data)
end
function suite:testStartBoxDataHeadingTemplate()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxData({}, env)
local expected = '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]] Template documentation'
self:assertEquals(expected, data.heading)
end
function suite:testStartBoxDataHeadingModule()
local env = getEnv('Module:Example')
local data = doc.makeStartBoxData({}, env)
local expected = '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]] Module documentation'
self:assertEquals(expected, data.heading)
end
function suite:testStartBoxDataHeadingFile()
local env = getEnv('File:Example.png')
local data = doc.makeStartBoxData({}, env)
local expected = 'Summary'
self:assertEquals(expected, data.heading)
end
function suite:testStartBoxDataHeadingOther()
local env = getEnv('User:Example')
local data = doc.makeStartBoxData({}, env)
local expected = 'Documentation'
self:assertEquals(expected, data.heading)
end
function suite:testStartBoxDataHeadingStyle()
local data = doc.makeStartBoxData({['heading-style'] = 'foo:bar'}, {})
self:assertEquals('foo:bar', data.headingStyleText)
end
function suite:testStartBoxDataHeadingStyleTemplate()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxData({}, env)
self:assertEquals(nil, data.headingStyleText)
end
function suite:testStartBoxDataHeadingStyleOther()
local env = getEnv('User:Example')
local data = doc.makeStartBoxData({}, env)
self:assertEquals(nil, data.headingStyleText)
end
function suite:testStartBoxDataLinks()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxData({}, env, 'some links')
self:assertEquals('some links', data.links)
self:assertEquals('mw-editsection-like plainlinks', data.linksClass)
end
function suite:testStartBoxDataNoLinks()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxData({}, env)
self:assertEquals(nil, data.links)
self:assertEquals(nil, data.linksClass)
self:assertEquals(nil, data.linksId)
end
--------------------------------------------------------------------------------------------
-- Test renderStartBox
--------------------------------------------------------------------------------------------
function suite:testRenderStartBox()
local expected = '<div class="documentation-startbox">\n<span id="documentation-heading"></span></div>'
self:assertEquals(expected, doc.renderStartBox{})
end
function suite:testRenderStartBoxHeadingStyleText()
self:assertStringContains('\n<span id="documentation-heading" style="foo:bar">', doc.renderStartBox{headingStyleText = 'foo:bar'}, true)
end
function suite:testRenderStartBoxHeading()
self:assertStringContains('\n<span id="documentation-heading">Foobar</span>', doc.renderStartBox{heading = 'Foobar'}, true)
end
function suite:testRenderStartBoxLinks()
self:assertStringContains('<span>list of links</span>', doc.renderStartBox{links = 'list of links'}, true)
end
function suite:testRenderStartBoxLinksClass()
self:assertStringContains('<span class="linksclass">list of links</span>', doc.renderStartBox{linksClass = 'linksclass', links = 'list of links'}, true)
self:assertNotStringContains('linksclass', doc.renderStartBox{linksClass = 'linksclass'}, true)
end
function suite:testRenderStartBoxLinksId()
self:assertStringContains('<span id="linksid">list of links</span>', doc.renderStartBox{linksId = 'linksid', links = 'list of links'}, true)
self:assertNotStringContains('linksid', doc.renderStartBox{linksId = 'linksid'}, true)
end
--------------------------------------------------------------------------------------------
-- Test _content
--------------------------------------------------------------------------------------------
function suite:testContentArg()
self:assertEquals('\nsome documentation\n', doc._content({content = 'some documentation'}, {}))
end
function suite:testContentNoContent()
local env = getEnv('Template:This is a non-existent template agauchvaiu')
self:assertEquals(mw.text.killMarkers(mw.getCurrentFrame():preprocess('\n' .. (docConfig['no-documentation'] or '')) .. '\n'), mw.text.killMarkers(doc._content({}, env)))
end
function suite:testContentExists()
local env = doc.getEnvironment{'Template:Documentation/testcases/test3'}
local docs = mw.getCurrentFrame():preprocess('{{Template:Documentation/testcases/test3}}')
local expected = '\n' .. docs .. '\n'
self:assertEquals(expected, doc._content({}, env))
end
--------------------------------------------------------------------------------------------
-- Test _endBox
--------------------------------------------------------------------------------------------
function suite:testEndBoxLinkBoxOff()
local env = getEnv()
self:assertEquals(nil, doc._endBox({['link box'] = 'off'}, env))
end
function suite:testEndBoxNoDocsOtherNs()
local env = {
subjectSpace = 4,
docTitle = {
exists = false
}
}
self:assertEquals(nil, doc._endBox({}, env))
end
function suite:testEndBoxAlwaysShowNs()
self:assertTrue(doc._endBox({}, getEnv('Template:Non-existent template asdfalsdhaw')))
self:assertTrue(doc._endBox({}, getEnv('Module:Non-existent module asdhewbydcyg')))
self:assertTrue(doc._endBox({}, getEnv('User:Non-existent user ahfliwebalisyday')))
end
function suite:testEndBoxStyles()
local env = getEnv('Template:Example')
local endBox = doc._endBox({}, env)
self:assertStringContains('class="documentation-metadata plainlinks"', endBox, true)
end
function suite:testEndBoxLinkBoxArg()
local env = getEnv()
self:assertStringContains('Custom link box', doc._endBox({['link box'] = 'Custom link box'}, env))
end
function suite:testEndBoxExperimentBlurbValidNs()
local expected = 'Editors can experiment in this.-<br />'
self:assertStringContains(expected, doc._endBox({}, getEnv('Template:Example')))
self:assertStringContains(expected, doc._endBox({}, getEnv('Module:Example')))
self:assertStringContains(expected, doc._endBox({}, getEnv('User:Example')))
end
function suite:testEndBoxExperimentBlurbInvalidNs()
local expected = 'Editors can experiment in this.-<br />'
self:assertNotStringContains(expected, doc._endBox({}, getEnv('Wikipedia:Twinkle'))) -- Wikipedia:Twinkle has an existing /doc subpage
end
function suite:testEndBoxCategoriesBlurb()
local expected = 'Add categories to the %[%[.-|/doc%]%] subpage%.'
self:assertStringContains(expected, doc._endBox({}, getEnv('Template:Example')))
self:assertStringContains(expected, doc._endBox({}, getEnv('Module:Example')))
self:assertStringContains(expected, doc._endBox({}, getEnv('User:Example')))
self:assertNotStringContains(expected, doc._endBox({[1] = 'Foo'}, getEnv('Template:Example')))
self:assertNotStringContains(expected, doc._endBox({content = 'Bar'}, getEnv('Template:Example')))
self:assertNotStringContains(expected, doc._endBox({}, getEnv('Wikipedia:Twinkle')))
end
--------------------------------------------------------------------------------------------
-- Test makeDocPageBlurb
--------------------------------------------------------------------------------------------
function suite:testDocPageBlurbError()
self:assertEquals(nil, doc.makeDocPageBlurb({}, {}))
end
function suite:testDocPageBlurbTemplateDocExists()
local env = getEnv('Template:Documentation')
local expected = 'The above [[Wikipedia:Template documentation|documentation]] is [[Help:Transclusion|transcluded]] from [[Template:Documentation/doc]]. <span class="documentation-toolbar">([[Special:EditPage/Template:Documentation/doc|edit]] | [[Special:PageHistory/Template:Documentation/doc|history]])</span><br />'
self:assertEquals(expected, doc.makeDocPageBlurb({}, env))
end
function suite:testDocPageBlurbTemplateDocDoesntExist()
local env = getEnv('Template:Non-existent template ajlkfdsa')
self:assertEquals(nil, doc.makeDocPageBlurb({}, env))
end
function suite:testDocPageBlurbModuleDocExists()
local env = getEnv('Module:Example')
local expected = 'The above [[Wikipedia:Template documentation|documentation]] is [[Help:Transclusion|transcluded]] from [[Module:Example/doc]]. <span class="documentation-toolbar">([[Special:EditPage/Module:Example/doc|edit]] | [[Special:PageHistory/Module:Example/doc|history]])</span><br />'
self:assertEquals(expected, doc.makeDocPageBlurb({}, env))
end
function suite:testDocPageBlurbModuleDocDoesntExist()
local env = getEnv('Module:Non-existent module ajlkfdsa')
local expected = 'You might want to [https://en.wikipedia.org/w/index.php?title=Module:Non-existent_module_ajlkfdsa/doc&action=edit&preload=Template%3ADocumentation%2Fpreload-module-doc create] a documentation page for this [[Wikipedia:Lua|Scribunto module]].<br />'
self:assertEquals(expected, doc.makeDocPageBlurb({}, env))
end
--------------------------------------------------------------------------------------------
-- Test makeExperimentBlurb
--------------------------------------------------------------------------------------------
function suite:testExperimentBlurbTemplate()
local env = getEnv('Template:Example')
self:assertStringContains("Editors can experiment in this template's .- and .- pages.", doc.makeExperimentBlurb({}, env), false)
end
function suite:testExperimentBlurbModule()
local env = getEnv('Module:Example')
self:assertStringContains("Editors can experiment in this module's .- and .- pages.", doc.makeExperimentBlurb({}, env), false)
end
function suite:testExperimentBlurbSandboxExists()
local env = getEnv('Template:Edit protected')
local pattern = '[[Template:Edit protected/sandbox|sandbox]] <span class="documentation-toolbar">([[Special:EditPage/Template:Edit protected/sandbox|edit]] | [https://en.wikipedia.org/w/index.php?title=Special%3AComparePages&page1=Template%3AEdit+protected&page2=Template%3AEdit+protected%2Fsandbox diff])</span>'
self:assertStringContains(pattern, doc.makeExperimentBlurb({}, env), true)
end
function suite:testExperimentBlurbSandboxDoesntExist()
local env = getEnv('Template:Non-existent template sajdfasd')
local pattern = 'sandbox <span class="documentation-toolbar">([https://en.wikipedia.org/w/index.php?title=Template:Non-existent_template_sajdfasd/sandbox&action=edit&preload=Template%3ADocumentation%2Fpreload-sandbox create] | [https://en.wikipedia.org/w/index.php?title=Template:Non-existent_template_sajdfasd/sandbox&preload=Template%3ADocumentation%2Fmirror&action=edit&summary=Create+sandbox+version+of+%5B%5BTemplate%3ANon-existent+template+sajdfasd%5D%5D mirror])</span>'
self:assertStringContains(pattern, doc.makeExperimentBlurb({}, env), true)
end
function suite:testExperimentBlurbTestcasesExist()
local env = getEnv('Template:Edit protected')
local pattern = '[[Template:Edit protected/testcases|testcases]] <span class="documentation-toolbar">([[Special:EditPage/Template:Edit protected/testcases|edit]])</span>'
self:assertStringContains(pattern, doc.makeExperimentBlurb({}, env), true)
end
function suite:testExperimentBlurbTestcasesDontExist()
local env = getEnv('Template:Non-existent template sajdfasd')
local pattern = 'testcases <span class="documentation-toolbar">([https://en.wikipedia.org/w/index.php?title=Template:Non-existent_template_sajdfasd/testcases&action=edit&preload=Template%3ADocumentation%2Fpreload-testcases create])</span>'
self:assertStringContains(pattern, doc.makeExperimentBlurb({}, env), true)
end
--------------------------------------------------------------------------------------------
-- Test makeCategoriesBlurb
--------------------------------------------------------------------------------------------
function suite:testMakeCategoriesBlurb()
local env = getEnv('Template:Example')
self:assertEquals('Add categories to the [[Template:Example/doc|/doc]] subpage.', doc.makeCategoriesBlurb({}, env))
end
--------------------------------------------------------------------------------------------
-- Test makeSubpagesBlurb
--------------------------------------------------------------------------------------------
function suite:testMakeSubpagesBlurbTemplate()
local env = getEnv('Template:Example')
self:assertEquals('[[Special:PrefixIndex/Template:Example/|Subpages of this template]].', doc.makeSubpagesBlurb({}, env))
end
function suite:testMakeSubpagesBlurbModule()
local env = getEnv('Module:Example')
self:assertEquals('[[Special:PrefixIndex/Module:Example/|Subpages of this module]].', doc.makeSubpagesBlurb({}, env))
end
function suite:testMakeSubpagesBlurbOther()
local env = getEnv('File:Example.png')
self:assertEquals('[[Special:PrefixIndex/File:Example.png/|Subpages of this page]].', doc.makeSubpagesBlurb({}, env))
end
--------------------------------------------------------------------------------------------
-- Test addTrackingCategories
--------------------------------------------------------------------------------------------
function suite.getStrangeUsageCat()
return '[[Category:Wikipedia pages with strange ((documentation)) usage]]'
end
function suite:testAddTrackingCategoriesTemplatePage()
local env = getEnv('Template:Example')
self:assertEquals('', doc.addTrackingCategories(env))
end
function suite:testAddTrackingCategoriesDocPage()
local env = getEnv('Template:Example/doc')
self:assertEquals(self.getStrangeUsageCat(), doc.addTrackingCategories(env))
end
function suite:testAddTrackingCategoriesTestcasesPage()
local env = getEnv('Template:Example/testcases')
self:assertEquals(self.getStrangeUsageCat(), doc.addTrackingCategories(env))
end
function suite:testAddTrackingCategoriesModuleDoc()
local env = getEnv('Module:Math/doc')
self:assertEquals(self.getStrangeUsageCat(), doc.addTrackingCategories(env))
end
function suite:testAddTrackingCategoriesModuleTestcases()
local env = getEnv('Module:Math/testcases')
self:assertEquals('', doc.addTrackingCategories(env))
end
function suite:testAddTrackingCategoriesInvalidTitle()
local env = getEnv('Template:Foo[]Bar')
self:assertEquals(nil, doc.addTrackingCategories(env))
end
--------------------------------------------------------------------------------------------
-- Whitespace tests
--------------------------------------------------------------------------------------------
function suite:testNoTrailingWhitespace()
self:assertStringContains('of this template%]%].</div></div>$', doc._main{page = 'Template:Example'})
end
return suite
9v8jur740ta5kz5j3ey3q5bzf4wrog0
370429
370428
2026-09-28T08:22:29Z
ChiK
1136
1 revision imported from [[:en:Module:Documentation/testcases]]
370428
Scribunto
text/plain
-- Test cases page for [[Module:Documentation]]. See talk page to run tests.
local doc = require('Module:Documentation')
local docConfig = require("Module:Documentation/config")
local ScribuntoUnit = require('Module:ScribuntoUnit')
local suite = ScribuntoUnit.new()
--------------------------------------------------------------------------------
-- Sandbox run
--------------------------------------------------------------------------------
function suite.runSandbox(...)
doc = require('Module:Documentation/sandbox')
docConfig = require("Module:Documentation/config/sandbox")
return suite.run(...)
end
--------------------------------------------------------------------------------------------
-- Test case helper functions
--------------------------------------------------------------------------------------------
local function getEnv(page)
-- Gets an env table using the specified page.
return doc.getEnvironment{page = page}
end
--------------------------------------------------------------------------------------------
-- Test helper functions
--------------------------------------------------------------------------------------------
function suite:testMessage()
self:assertEquals('sandbox', doc.message('sandbox-subpage'))
self:assertEquals('Subpages of this foobar', doc.message('subpages-link-display', {'foobar'}))
self:assertEquals(true, doc.message('display-strange-usage-category', nil, 'boolean'))
end
function suite:testMakeToolbar()
self:assertEquals(nil, doc.makeToolbar())
self:assertEquals('<span class="documentation-toolbar">(Foo)</span>', doc.makeToolbar('Foo'))
self:assertEquals('<span class="documentation-toolbar">(Foo | Bar)</span>', doc.makeToolbar('Foo', 'Bar'))
end
function suite:testMakeWikilink()
self:assertEquals('[[Foo]]', doc.makeWikilink('Foo'))
self:assertEquals('[[Foo|Bar]]', doc.makeWikilink('Foo', 'Bar'))
end
function suite:testMakeCategoryLink()
self:assertEquals('[[Category:Foo]]', doc.makeCategoryLink('Foo'))
self:assertEquals('[[Category:Foo|Bar]]', doc.makeCategoryLink('Foo', 'Bar'))
end
function suite:testMakeUrlLink()
self:assertEquals('[Foo Bar]', doc.makeUrlLink('Foo', 'Bar'))
end
--------------------------------------------------------------------------------------------
-- Test env table
--------------------------------------------------------------------------------------------
function suite:assertEnvFieldEquals(expected, page, field)
local env = getEnv(page)
self:assertEquals(expected, env[field], nil, 1)
end
function suite:assertEnvTitleEquals(expected, page, titleField)
local env = getEnv(page)
local title = env[titleField]
self:assertEquals(expected, title.prefixedText, nil, 1)
end
function suite:testEnvTitle()
self:assertEnvTitleEquals('Wikipedia:Sandbox', 'Wikipedia:Sandbox', 'title')
self:assertEnvTitleEquals('Template:Example/sandbox', 'Template:Example/sandbox', 'title')
end
function suite:testEnvBadTitle()
local env = doc.getEnvironment{page = 'Bad[]Title'}
local title = env.title
self:assertEquals(nil, title)
end
function suite:testEnvTemplateTitle()
self:assertEnvTitleEquals('Template:Example', 'Template:Example', 'templateTitle')
self:assertEnvTitleEquals('Template:Example', 'Template talk:Example', 'templateTitle')
self:assertEnvTitleEquals('Template:Example', 'Template:Example/sandbox', 'templateTitle')
self:assertEnvTitleEquals('Template:Example', 'Template talk:Example/sandbox', 'templateTitle')
self:assertEnvTitleEquals('Template:Example', 'Template:Example/testcases', 'templateTitle')
self:assertEnvTitleEquals('Template:Example/foo', 'Template:Example/foo', 'templateTitle')
self:assertEnvTitleEquals('File:Example', 'File talk:Example', 'templateTitle')
self:assertEnvTitleEquals('File:Example', 'File talk:Example/sandbox', 'templateTitle')
end
function suite:testEnvDocTitle()
self:assertEnvTitleEquals('Template:Example/doc', 'Template:Example', 'docTitle')
self:assertEnvTitleEquals('Template:Example/doc', 'Template talk:Example', 'docTitle')
self:assertEnvTitleEquals('Template:Example/doc', 'Template:Example/sandbox', 'docTitle')
self:assertEnvTitleEquals('Talk:Example/doc', 'Example', 'docTitle')
self:assertEnvTitleEquals('File talk:Example.png/doc', 'File:Example.png', 'docTitle')
self:assertEnvTitleEquals('File talk:Example.png/doc', 'File talk:Example.png/sandbox', 'docTitle')
end
function suite:testEnvSandboxTitle()
self:assertEnvTitleEquals('Template:Example/sandbox', 'Template:Example', 'sandboxTitle')
self:assertEnvTitleEquals('Template:Example/sandbox', 'Template talk:Example', 'sandboxTitle')
self:assertEnvTitleEquals('Template:Example/sandbox', 'Template:Example/sandbox', 'sandboxTitle')
self:assertEnvTitleEquals('Talk:Example/sandbox', 'Example', 'sandboxTitle')
self:assertEnvTitleEquals('File talk:Example.png/sandbox', 'File:Example.png', 'sandboxTitle')
end
function suite:testEnvTestcasesTitle()
self:assertEnvTitleEquals('Template:Example/testcases', 'Template:Example', 'testcasesTitle')
self:assertEnvTitleEquals('Template:Example/testcases', 'Template talk:Example', 'testcasesTitle')
self:assertEnvTitleEquals('Template:Example/testcases', 'Template:Example/testcases', 'testcasesTitle')
self:assertEnvTitleEquals('Talk:Example/testcases', 'Example', 'testcasesTitle')
self:assertEnvTitleEquals('File talk:Example.png/testcases', 'File:Example.png', 'testcasesTitle')
end
function suite:testEnvProtectionLevels()
local pipeEnv = getEnv('Template:?')
self:assertEquals('autoconfirmed', pipeEnv.protectionLevels.edit[1])
local sandboxEnv = getEnv('Wikipedia:Sandbox')
local sandboxEditLevels = sandboxEnv.protectionLevels.edit
if sandboxEditLevels then -- sandboxEditLevels may also be nil if the page is unprotected
self:assertEquals(nil, sandboxEditLevels[1])
else
self:assertEquals(nil, sandboxEditLevels)
end
end
function suite:testEnvSubjectSpace()
self:assertEnvFieldEquals(10, 'Template:Sandbox', 'subjectSpace')
self:assertEnvFieldEquals(10, 'Template talk:Sandbox', 'subjectSpace')
self:assertEnvFieldEquals(0, 'Foo', 'subjectSpace')
self:assertEnvFieldEquals(0, 'Talk:Foo', 'subjectSpace')
end
function suite:testEnvDocSpace()
self:assertEnvFieldEquals(10, 'Template:Sandbox', 'docSpace')
self:assertEnvFieldEquals(828, 'Module:Sandbox', 'docSpace')
self:assertEnvFieldEquals(1, 'Foo', 'docSpace')
self:assertEnvFieldEquals(7, 'File:Example.png', 'docSpace')
self:assertEnvFieldEquals(9, 'MediaWiki:Watchlist-details', 'docSpace')
self:assertEnvFieldEquals(15, 'Category:Wikipedians', 'docSpace')
end
function suite:testEnvDocpageBase()
self:assertEnvFieldEquals('Template:Example', 'Template:Example', 'docpageBase')
self:assertEnvFieldEquals('Template:Example', 'Template:Example/sandbox', 'docpageBase')
self:assertEnvFieldEquals('Template:Example', 'Template talk:Example', 'docpageBase')
self:assertEnvFieldEquals('File talk:Example.png', 'File:Example.png', 'docpageBase')
self:assertEnvFieldEquals('File talk:Example.png', 'File talk:Example.png', 'docpageBase')
self:assertEnvFieldEquals('File talk:Example.png', 'File talk:Example.png/sandbox', 'docpageBase')
end
function suite:testEnvCompareUrl()
-- We use "Template:Edit protected" rather than "Template:Example" here as it has a space in the title.
local expected = 'https://en.wikipedia.org/w/index.php?title=Special%3AComparePages&page1=Template%3AEdit+protected&page2=Template%3AEdit+protected%2Fsandbox'
self:assertEnvFieldEquals(expected, 'Template:Edit protected', 'compareUrl')
self:assertEnvFieldEquals(expected, 'Template:Edit protected/sandbox', 'compareUrl')
self:assertEnvFieldEquals(nil, 'Template:Non-existent template adsfasdg', 'compareUrl')
self:assertEnvFieldEquals(nil, 'Template:Fact', 'compareUrl') -- Exists but doesn't have a sandbox.
end
--------------------------------------------------------------------------------------------
-- Test sandbox notice
--------------------------------------------------------------------------------------------
function suite.getSandboxNoticeTestData(page)
local env = getEnv(page)
local templatePage = page:match('^(.*)/sandbox$')
local image = '[[File:Edit In Sandbox Icon - Color.svg|50px|alt=|link=]]'
local templateBlurb = 'This is the [[Wikipedia:Template test cases|template sandbox]] page for [[' .. templatePage .. ']]'
local moduleBlurb = 'This is the [[Wikipedia:Template test cases|module sandbox]] page for [[' .. templatePage .. ']]'
local otherBlurb = 'This is the sandbox page for [[' .. templatePage .. ']]'
local diff = '[https://en.wikipedia.org/w/index.php?title=Special%3AComparePages&page1=' .. mw.uri.encode(templatePage) .. '&page2=' .. mw.uri.encode(page) .. ' diff]'
local testcasesBlurb = 'See also the companion subpage for [[' .. templatePage .. '/testcases|test cases]].'
local category = '[[Category:Template sandboxes]]'
local clear = '<div class="documentation-clear"></div>'
return env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category, clear
end
function suite:testSandboxNoticeNotSandbox()
local env = getEnv('Template:Example')
local notice = doc.sandboxNotice({}, env)
self:assertEquals(nil, notice)
end
function suite:testSandboxNoticeStaticVals()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category, clear = suite.getSandboxNoticeTestData('Template:Example/sandbox')
local notice = doc.sandboxNotice({}, env)
-- Escape metacharacters (mainly '-')
clear = clear:gsub( '%p', '%%%0' )
self:assertStringContains('^' .. clear, notice, false)
self:assertStringContains(image, notice, true)
self:assertStringContains(category, notice, true)
end
function suite:testSandboxNoticeTemplateBlurb()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Template:Example/sandbox')
local notice = doc.sandboxNotice({}, env)
self:assertStringContains(templateBlurb, notice, true)
end
function suite:testSandboxNoticeModuleBlurb()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Module:Math/sandbox')
local notice = doc.sandboxNotice({}, env)
self:assertStringContains(moduleBlurb, notice, true)
end
function suite:testSandboxNoticeOtherBlurb()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('User:Mr. Stradivarius/sandbox')
local notice = doc.sandboxNotice({}, env)
self:assertStringContains(otherBlurb, notice, true)
end
function suite:testSandboxNoticeBlurbDiff()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Template:Example/sandbox')
local notice = doc.sandboxNotice({}, env)
if mw.title.getCurrentTitle().isTalk then
-- This test doesn't work in the debug console due to the use of frame:preprocess({{REVISIONID}}).
-- The frame test doesn't seem to be working for now, so adding a namespace hack.
self:assertStringContains(diff, notice, true)
end
end
function suite:testSandboxNoticeBlurbDiffNoBasePage()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Module:User:Mr. Stradivarius/sandbox')
local notice = doc.sandboxNotice({}, env)
if mw.title.getCurrentTitle().isTalk then
-- This test doesn't work in the debug console due to the use of frame:preprocess({{REVISIONID}}).
-- The frame test doesn't seem to be working for now, so adding a namespace hack.
self:assertNotStringContains(diff, notice, true)
end
end
function suite:testSandboxNoticeTestcases()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Template:Edit protected/sandbox')
local notice = doc.sandboxNotice({}, env)
self:assertStringContains(testcasesBlurb, notice, true)
end
function suite:testSandboxNoticeNoTestcases()
local env, image, templateBlurb, moduleBlurb, otherBlurb, diff, testcasesBlurb, category = suite.getSandboxNoticeTestData('Template:Example/sandbox')
local notice = doc.sandboxNotice({}, env)
self:assertNotStringContains(testcasesBlurb, notice, true)
end
--------------------------------------------------------------------------------------------
-- Test protection template
--
-- There's not much we can do with this until {{pp-meta}} gets rewritten in Lua. At the
-- moment the protection detection only works for the current page, and the testcases pages
-- will be unprotected.
--------------------------------------------------------------------------------------------
function suite:testProtectionTemplateUnprotectedTemplate()
local env = getEnv('Template:Example')
self:assertEquals(nil, doc.protectionTemplate(env))
end
function suite:testProtectionTemplateProtectedTemplate()
local env = getEnv('Template:Navbox')
-- Test whether there is some content. We don't care what the content is, as the protection level
-- detected will be for the current page, not the template.
self:assertTrue(doc.protectionTemplate(env))
end
function suite:testProtectionTemplateUnprotectedModule()
local env = getEnv('Module:Example')
self:assertEquals(nil, doc.protectionTemplate(env))
end
function suite:testProtectionTemplateProtectedModule()
local env = getEnv('Module:Yesno')
-- Test whether there is some content. We don't care what the content is, as the protection level
-- detected will be for the current page, not the template.
self:assertTrue(doc.protectionTemplate(env))
end
--------------------------------------------------------------------------------------------
-- Test _startBox
--------------------------------------------------------------------------------------------
function suite:testStartBoxContentArg()
local pattern = '<div class="documentation%-startbox">\n<span class="documentation%-heading" id="documentation%-heading">.-</span></div>'
local startBox = doc._startBox({content = 'some documentation'}, getEnv('Template:Example'))
self:assertStringContains(pattern, startBox)
end
function suite:testStartBoxHtml()
self:assertStringContains(
'<div class="documentation%-startbox">\n<span class="documentation%-heading" id="documentation%-heading">.-</span><span class="mw%-editsection%-like plainlinks">.-</span></div>',
doc._startBox({}, getEnv('Template:Example'))
)
end
--------------------------------------------------------------------------------------------
-- Test makeStartBoxLinksData
--------------------------------------------------------------------------------------------
function suite:testMakeStartBoxLinksData()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxLinksData({}, env)
self:assertEquals('Template:Example', data.title.prefixedText)
self:assertEquals('Template:Example/doc', data.docTitle.prefixedText)
self:assertEquals('view', data.viewLinkDisplay)
self:assertEquals('edit', data.editLinkDisplay)
self:assertEquals('history', data.historyLinkDisplay)
self:assertEquals('purge', data.purgeLinkDisplay)
self:assertEquals('create', data.createLinkDisplay)
self:assertEquals('override', data.overrideLinkDisplay)
end
function suite:testMakeStartBoxLinksDataTemplatePreload()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxLinksData({}, env)
self:assertEquals('Template:Documentation/preload', data.preload)
end
function suite:testMakeStartBoxLinksDataArgsPreload()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxLinksData({preload = 'My custom preload'}, env)
self:assertEquals('My custom preload', data.preload)
end
--------------------------------------------------------------------------------------------
-- Test renderStartBoxLinks
--------------------------------------------------------------------------------------------
function suite.makeExampleStartBoxLinksData(exists)
-- Makes a data table to be used with testRenderStartBoxLinksExists and testRenderStartBoxLinksDoesntExist.
local data = {}
if exists then
data.title = mw.title.new('Template:Example')
data.docTitle = mw.title.new('Template:Example/doc')
else
data.title = mw.title.new('Template:NonExistentTemplate')
data.docTitle = mw.title.new('Template:NonExistentTemplate/doc')
end
data.viewLinkDisplay = 'view'
data.editLinkDisplay = 'edit'
data.historyLinkDisplay = 'history'
data.purgeLinkDisplay = 'purge'
data.createLinkDisplay = 'create'
data.overrideLinkDisplay = 'override'
data.preload = 'Template:MyPreload'
return data
end
function suite:testRenderStartBoxLinksExists()
local data = suite.makeExampleStartBoxLinksData(true)
local expected = '[[[Template:Example/doc|view]]] [[[Special:EditPage/Template:Example/doc|edit]]] [[[Special:PageHistory/Template:Example/doc|history]]] [[[Special:Purge/Template:Example|purge]]]'
self:assertEquals(expected, doc.renderStartBoxLinks(data))
end
function suite:testRenderStartBoxLinksDoesntExist()
local data = suite.makeExampleStartBoxLinksData(false)
local expected = '[[https://en.wikipedia.org/w/index.php?title=Template:NonExistentTemplate/doc&action=edit&preload=Template%3AMyPreload create]] [[[Special:Purge/Template:NonExistentTemplate|purge]]]'
self:assertEquals(expected, doc.renderStartBoxLinks(data))
end
--------------------------------------------------------------------------------------------
-- Test makeStartBoxData
--------------------------------------------------------------------------------------------
function suite:testStartBoxDataBlankHeading()
local data = doc.makeStartBoxData({heading = ''}, {})
self:assertEquals(nil, data)
end
function suite:testStartBoxDataHeadingTemplate()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxData({}, env)
local expected = '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]] Template documentation'
self:assertEquals(expected, data.heading)
end
function suite:testStartBoxDataHeadingModule()
local env = getEnv('Module:Example')
local data = doc.makeStartBoxData({}, env)
local expected = '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]] Module documentation'
self:assertEquals(expected, data.heading)
end
function suite:testStartBoxDataHeadingFile()
local env = getEnv('File:Example.png')
local data = doc.makeStartBoxData({}, env)
local expected = 'Summary'
self:assertEquals(expected, data.heading)
end
function suite:testStartBoxDataHeadingOther()
local env = getEnv('User:Example')
local data = doc.makeStartBoxData({}, env)
local expected = 'Documentation'
self:assertEquals(expected, data.heading)
end
function suite:testStartBoxDataHeadingStyle()
local data = doc.makeStartBoxData({['heading-style'] = 'foo:bar'}, {})
self:assertEquals('foo:bar', data.headingStyleText)
end
function suite:testStartBoxDataHeadingStyleTemplate()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxData({}, env)
self:assertEquals(nil, data.headingStyleText)
end
function suite:testStartBoxDataHeadingStyleOther()
local env = getEnv('User:Example')
local data = doc.makeStartBoxData({}, env)
self:assertEquals(nil, data.headingStyleText)
end
function suite:testStartBoxDataLinks()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxData({}, env, 'some links')
self:assertEquals('some links', data.links)
self:assertEquals('mw-editsection-like plainlinks', data.linksClass)
end
function suite:testStartBoxDataNoLinks()
local env = getEnv('Template:Example')
local data = doc.makeStartBoxData({}, env)
self:assertEquals(nil, data.links)
self:assertEquals(nil, data.linksClass)
self:assertEquals(nil, data.linksId)
end
--------------------------------------------------------------------------------------------
-- Test renderStartBox
--------------------------------------------------------------------------------------------
function suite:testRenderStartBox()
local expected = '<div class="documentation-startbox">\n<span id="documentation-heading"></span></div>'
self:assertEquals(expected, doc.renderStartBox{})
end
function suite:testRenderStartBoxHeadingStyleText()
self:assertStringContains('\n<span id="documentation-heading" style="foo:bar">', doc.renderStartBox{headingStyleText = 'foo:bar'}, true)
end
function suite:testRenderStartBoxHeading()
self:assertStringContains('\n<span id="documentation-heading">Foobar</span>', doc.renderStartBox{heading = 'Foobar'}, true)
end
function suite:testRenderStartBoxLinks()
self:assertStringContains('<span>list of links</span>', doc.renderStartBox{links = 'list of links'}, true)
end
function suite:testRenderStartBoxLinksClass()
self:assertStringContains('<span class="linksclass">list of links</span>', doc.renderStartBox{linksClass = 'linksclass', links = 'list of links'}, true)
self:assertNotStringContains('linksclass', doc.renderStartBox{linksClass = 'linksclass'}, true)
end
function suite:testRenderStartBoxLinksId()
self:assertStringContains('<span id="linksid">list of links</span>', doc.renderStartBox{linksId = 'linksid', links = 'list of links'}, true)
self:assertNotStringContains('linksid', doc.renderStartBox{linksId = 'linksid'}, true)
end
--------------------------------------------------------------------------------------------
-- Test _content
--------------------------------------------------------------------------------------------
function suite:testContentArg()
self:assertEquals('\nsome documentation\n', doc._content({content = 'some documentation'}, {}))
end
function suite:testContentNoContent()
local env = getEnv('Template:This is a non-existent template agauchvaiu')
self:assertEquals(mw.text.killMarkers(mw.getCurrentFrame():preprocess('\n' .. (docConfig['no-documentation'] or '')) .. '\n'), mw.text.killMarkers(doc._content({}, env)))
end
function suite:testContentExists()
local env = doc.getEnvironment{'Template:Documentation/testcases/test3'}
local docs = mw.getCurrentFrame():preprocess('{{Template:Documentation/testcases/test3}}')
local expected = '\n' .. docs .. '\n'
self:assertEquals(expected, doc._content({}, env))
end
--------------------------------------------------------------------------------------------
-- Test _endBox
--------------------------------------------------------------------------------------------
function suite:testEndBoxLinkBoxOff()
local env = getEnv()
self:assertEquals(nil, doc._endBox({['link box'] = 'off'}, env))
end
function suite:testEndBoxNoDocsOtherNs()
local env = {
subjectSpace = 4,
docTitle = {
exists = false
}
}
self:assertEquals(nil, doc._endBox({}, env))
end
function suite:testEndBoxAlwaysShowNs()
self:assertTrue(doc._endBox({}, getEnv('Template:Non-existent template asdfalsdhaw')))
self:assertTrue(doc._endBox({}, getEnv('Module:Non-existent module asdhewbydcyg')))
self:assertTrue(doc._endBox({}, getEnv('User:Non-existent user ahfliwebalisyday')))
end
function suite:testEndBoxStyles()
local env = getEnv('Template:Example')
local endBox = doc._endBox({}, env)
self:assertStringContains('class="documentation-metadata plainlinks"', endBox, true)
end
function suite:testEndBoxLinkBoxArg()
local env = getEnv()
self:assertStringContains('Custom link box', doc._endBox({['link box'] = 'Custom link box'}, env))
end
function suite:testEndBoxExperimentBlurbValidNs()
local expected = 'Editors can experiment in this.-<br />'
self:assertStringContains(expected, doc._endBox({}, getEnv('Template:Example')))
self:assertStringContains(expected, doc._endBox({}, getEnv('Module:Example')))
self:assertStringContains(expected, doc._endBox({}, getEnv('User:Example')))
end
function suite:testEndBoxExperimentBlurbInvalidNs()
local expected = 'Editors can experiment in this.-<br />'
self:assertNotStringContains(expected, doc._endBox({}, getEnv('Wikipedia:Twinkle'))) -- Wikipedia:Twinkle has an existing /doc subpage
end
function suite:testEndBoxCategoriesBlurb()
local expected = 'Add categories to the %[%[.-|/doc%]%] subpage%.'
self:assertStringContains(expected, doc._endBox({}, getEnv('Template:Example')))
self:assertStringContains(expected, doc._endBox({}, getEnv('Module:Example')))
self:assertStringContains(expected, doc._endBox({}, getEnv('User:Example')))
self:assertNotStringContains(expected, doc._endBox({[1] = 'Foo'}, getEnv('Template:Example')))
self:assertNotStringContains(expected, doc._endBox({content = 'Bar'}, getEnv('Template:Example')))
self:assertNotStringContains(expected, doc._endBox({}, getEnv('Wikipedia:Twinkle')))
end
--------------------------------------------------------------------------------------------
-- Test makeDocPageBlurb
--------------------------------------------------------------------------------------------
function suite:testDocPageBlurbError()
self:assertEquals(nil, doc.makeDocPageBlurb({}, {}))
end
function suite:testDocPageBlurbTemplateDocExists()
local env = getEnv('Template:Documentation')
local expected = 'The above [[Wikipedia:Template documentation|documentation]] is [[Help:Transclusion|transcluded]] from [[Template:Documentation/doc]]. <span class="documentation-toolbar">([[Special:EditPage/Template:Documentation/doc|edit]] | [[Special:PageHistory/Template:Documentation/doc|history]])</span><br />'
self:assertEquals(expected, doc.makeDocPageBlurb({}, env))
end
function suite:testDocPageBlurbTemplateDocDoesntExist()
local env = getEnv('Template:Non-existent template ajlkfdsa')
self:assertEquals(nil, doc.makeDocPageBlurb({}, env))
end
function suite:testDocPageBlurbModuleDocExists()
local env = getEnv('Module:Example')
local expected = 'The above [[Wikipedia:Template documentation|documentation]] is [[Help:Transclusion|transcluded]] from [[Module:Example/doc]]. <span class="documentation-toolbar">([[Special:EditPage/Module:Example/doc|edit]] | [[Special:PageHistory/Module:Example/doc|history]])</span><br />'
self:assertEquals(expected, doc.makeDocPageBlurb({}, env))
end
function suite:testDocPageBlurbModuleDocDoesntExist()
local env = getEnv('Module:Non-existent module ajlkfdsa')
local expected = 'You might want to [https://en.wikipedia.org/w/index.php?title=Module:Non-existent_module_ajlkfdsa/doc&action=edit&preload=Template%3ADocumentation%2Fpreload-module-doc create] a documentation page for this [[Wikipedia:Lua|Scribunto module]].<br />'
self:assertEquals(expected, doc.makeDocPageBlurb({}, env))
end
--------------------------------------------------------------------------------------------
-- Test makeExperimentBlurb
--------------------------------------------------------------------------------------------
function suite:testExperimentBlurbTemplate()
local env = getEnv('Template:Example')
self:assertStringContains("Editors can experiment in this template's .- and .- pages.", doc.makeExperimentBlurb({}, env), false)
end
function suite:testExperimentBlurbModule()
local env = getEnv('Module:Example')
self:assertStringContains("Editors can experiment in this module's .- and .- pages.", doc.makeExperimentBlurb({}, env), false)
end
function suite:testExperimentBlurbSandboxExists()
local env = getEnv('Template:Edit protected')
local pattern = '[[Template:Edit protected/sandbox|sandbox]] <span class="documentation-toolbar">([[Special:EditPage/Template:Edit protected/sandbox|edit]] | [https://en.wikipedia.org/w/index.php?title=Special%3AComparePages&page1=Template%3AEdit+protected&page2=Template%3AEdit+protected%2Fsandbox diff])</span>'
self:assertStringContains(pattern, doc.makeExperimentBlurb({}, env), true)
end
function suite:testExperimentBlurbSandboxDoesntExist()
local env = getEnv('Template:Non-existent template sajdfasd')
local pattern = 'sandbox <span class="documentation-toolbar">([https://en.wikipedia.org/w/index.php?title=Template:Non-existent_template_sajdfasd/sandbox&action=edit&preload=Template%3ADocumentation%2Fpreload-sandbox create] | [https://en.wikipedia.org/w/index.php?title=Template:Non-existent_template_sajdfasd/sandbox&preload=Template%3ADocumentation%2Fmirror&action=edit&summary=Create+sandbox+version+of+%5B%5BTemplate%3ANon-existent+template+sajdfasd%5D%5D mirror])</span>'
self:assertStringContains(pattern, doc.makeExperimentBlurb({}, env), true)
end
function suite:testExperimentBlurbTestcasesExist()
local env = getEnv('Template:Edit protected')
local pattern = '[[Template:Edit protected/testcases|testcases]] <span class="documentation-toolbar">([[Special:EditPage/Template:Edit protected/testcases|edit]])</span>'
self:assertStringContains(pattern, doc.makeExperimentBlurb({}, env), true)
end
function suite:testExperimentBlurbTestcasesDontExist()
local env = getEnv('Template:Non-existent template sajdfasd')
local pattern = 'testcases <span class="documentation-toolbar">([https://en.wikipedia.org/w/index.php?title=Template:Non-existent_template_sajdfasd/testcases&action=edit&preload=Template%3ADocumentation%2Fpreload-testcases create])</span>'
self:assertStringContains(pattern, doc.makeExperimentBlurb({}, env), true)
end
--------------------------------------------------------------------------------------------
-- Test makeCategoriesBlurb
--------------------------------------------------------------------------------------------
function suite:testMakeCategoriesBlurb()
local env = getEnv('Template:Example')
self:assertEquals('Add categories to the [[Template:Example/doc|/doc]] subpage.', doc.makeCategoriesBlurb({}, env))
end
--------------------------------------------------------------------------------------------
-- Test makeSubpagesBlurb
--------------------------------------------------------------------------------------------
function suite:testMakeSubpagesBlurbTemplate()
local env = getEnv('Template:Example')
self:assertEquals('[[Special:PrefixIndex/Template:Example/|Subpages of this template]].', doc.makeSubpagesBlurb({}, env))
end
function suite:testMakeSubpagesBlurbModule()
local env = getEnv('Module:Example')
self:assertEquals('[[Special:PrefixIndex/Module:Example/|Subpages of this module]].', doc.makeSubpagesBlurb({}, env))
end
function suite:testMakeSubpagesBlurbOther()
local env = getEnv('File:Example.png')
self:assertEquals('[[Special:PrefixIndex/File:Example.png/|Subpages of this page]].', doc.makeSubpagesBlurb({}, env))
end
--------------------------------------------------------------------------------------------
-- Test addTrackingCategories
--------------------------------------------------------------------------------------------
function suite.getStrangeUsageCat()
return '[[Category:Wikipedia pages with strange ((documentation)) usage]]'
end
function suite:testAddTrackingCategoriesTemplatePage()
local env = getEnv('Template:Example')
self:assertEquals('', doc.addTrackingCategories(env))
end
function suite:testAddTrackingCategoriesDocPage()
local env = getEnv('Template:Example/doc')
self:assertEquals(self.getStrangeUsageCat(), doc.addTrackingCategories(env))
end
function suite:testAddTrackingCategoriesTestcasesPage()
local env = getEnv('Template:Example/testcases')
self:assertEquals(self.getStrangeUsageCat(), doc.addTrackingCategories(env))
end
function suite:testAddTrackingCategoriesModuleDoc()
local env = getEnv('Module:Math/doc')
self:assertEquals(self.getStrangeUsageCat(), doc.addTrackingCategories(env))
end
function suite:testAddTrackingCategoriesModuleTestcases()
local env = getEnv('Module:Math/testcases')
self:assertEquals('', doc.addTrackingCategories(env))
end
function suite:testAddTrackingCategoriesInvalidTitle()
local env = getEnv('Template:Foo[]Bar')
self:assertEquals(nil, doc.addTrackingCategories(env))
end
--------------------------------------------------------------------------------------------
-- Whitespace tests
--------------------------------------------------------------------------------------------
function suite:testNoTrailingWhitespace()
self:assertStringContains('of this template%]%].</div></div>$', doc._main{page = 'Template:Example'})
end
return suite
9v8jur740ta5kz5j3ey3q5bzf4wrog0
ಮೋಡ್ಯೂಲ್:Module wikitext
828
28748
370439
2020-09-07T17:45:50Z
en>Ymblanter
0
Protected "[[Module:Module wikitext]]": [[WP:High-risk templates|Highly visible template]]: request at [[WP:RFPP]] ([Edit=Require template editor access] (indefinite) [Move=Require template editor access] (indefinite))
370439
Scribunto
text/plain
local p = {}
p.text = ''
function p.main()
return p.text
end
function p._addText(text, preprocessFrame)
if preprocessFrame ~= false then
text = (preprocessFrame or mw.getCurrentFrame()):preprocess(text)
end
p.text = p.text .. text
end
return p
oq7txjegdzzkgf9xq2y6duxxsvvtj7q
370440
370439
2026-09-28T09:10:58Z
ChiK
1136
1 revision imported from [[:en:Module:Module_wikitext]]
370439
Scribunto
text/plain
local p = {}
p.text = ''
function p.main()
return p.text
end
function p._addText(text, preprocessFrame)
if preprocessFrame ~= false then
text = (preprocessFrame or mw.getCurrentFrame()):preprocess(text)
end
p.text = p.text .. text
end
return p
oq7txjegdzzkgf9xq2y6duxxsvvtj7q
ಮೋಡ್ಯೂಲ್:Module wikitext/doc
828
28749
370441
2025-03-03T16:38:00Z
en>Serols
0
Undid revision [[Special:Diff/1278629023|1278629023]] by [[Special:Contributions/2001:44C8:44B2:31BB:1829:2CE:3982:EAB0|2001:44C8:44B2:31BB:1829:2CE:3982:EAB0]] ([[User talk:2001:44C8:44B2:31BB:1829:2CE:3982:EAB0|talk]])
370441
wikitext
text/x-wiki
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
{{Twinkle standard installation}}
== Usage ==
This is an auxiliary module used to allow module pages to display wikitext. Use it by setting this module's <code>text</code> value to whatever content you want to display. The <code>_addText</code> helper method may be useful. For example, to tag a module with {{tl|db-g7}}, put <syntaxhighlight lang="lua" inline>require('Module:Module wikitext')._addText('{{db-g7}}')</syntaxhighlight> at the top of it.
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | |
<!-- Categories below this line, please; interwikis at Wikidata -->
}}</includeonly>
hnjdmy05rfqlrom011w84fizyk9b62z
370442
370441
2026-09-28T09:10:59Z
ChiK
1136
1 revision imported from [[:en:Module:Module_wikitext/doc]]
370441
wikitext
text/x-wiki
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
{{Twinkle standard installation}}
== Usage ==
This is an auxiliary module used to allow module pages to display wikitext. Use it by setting this module's <code>text</code> value to whatever content you want to display. The <code>_addText</code> helper method may be useful. For example, to tag a module with {{tl|db-g7}}, put <syntaxhighlight lang="lua" inline>require('Module:Module wikitext')._addText('{{db-g7}}')</syntaxhighlight> at the top of it.
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | |
<!-- Categories below this line, please; interwikis at Wikidata -->
}}</includeonly>
hnjdmy05rfqlrom011w84fizyk9b62z
ಮೋಡ್ಯೂಲ್:Protected page/doc
828
28750
370453
2026-08-30T19:58:17Z
en>Andrybak
0
[[Module:Protection banner]] was renamed to [[Module:Protected page]] ([[Special:Diff/1372159443]] per [[Template talk:Protected page#Requested move 16 August 2026]]) [[:w:en:User:Ponor/wAwB| #wAwB]]
370453
wikitext
text/x-wiki
{{High-use}}
{{Module rating|protected}}
{{Lua|Module:Protected page/config|Module:File link|Module:Effective protection level|Module:Effective protection expiry|Module:Yesno|Module:Arguments|Module:Message box|Module:Submit an edit request}}
This module creates protection banners and padlock icons that are placed at the top of [[Wikipedia:Protection policy|protected pages]]. Most users will not need to use this module directly.
== Usage ==
For adding protection templates to pages you can use the {{tl|pp}} template, or you may find it more convenient to use one of the more specific protection templates in the table below.
{{protection templates}}
=== From wikitext ===
{{#invoke:Protection banner|main
| 1 = ''reason''
| small = ''yes/no''
| action = ''action''
| date = ''protection date''
| user = ''username''
| section = ''talk page section name''
| category = ''yes''
}}
The #invoke syntax can be used for creating protection templates more specific than {{tl|pp}}. For example, it is possible to create a protection template which always shows a padlock icon by using the code <code><nowiki>{{#invoke:Protection banner|main|small=yes}}</nowiki></code>. Pages which call this template will still be able to use other arguments, like ''action''. However, this only works one level deep; a page calling a template which calls another template containing the above code will not automatically be able to use parameters like ''action''.
'''''Note:''' You should no longer specify the expiry, as it is automatically retrieved in all cases.''
=== From Lua ===
First, load the module.
<syntaxhighlight lang="lua">
local mProtectionBanner = require('Module:Protected page')
</syntaxhighlight>
Then you can make protection banners by using the _main function.
<syntaxhighlight lang="lua">
mProtectionBanner._main(args, cfg, titleObj)
</syntaxhighlight>
<var>args</var> is a table of arguments to pass to the module. For possible keys and values for this table, see the [[#Parameters|parameters section]]. The <var>cfg</var> and <var>titleObj</var> variables are intended only for testing; <var>cfg</var> specifies a customised config table to use instead of [[Module:Protected page/config]], and <var>titleObj</var> specifies a mw.title object to use instead of the current title. <var>args</var>, <var>cfg</var> and <var>titleObj</var> are all optional.
== Parameters ==
All parameters are optional.
* '''1''' – the reason that the page was protected. If set, this must be one of the values listed in the [[#Reasons|reasons table]].
* '''small''' – if set to "yes", "y", "1", or "true", a padlock icon is generated instead of a full protection banner.
* '''action''' – the protection action. Must be one of "edit" (for normal protection), "move" (for move-protection) or "autoreview" (for pending changes). The default value is "edit".
* '''date''' – the protection date. This must be valid input to the second parameter of the [[mw:Help:Extension:ParserFunctions##time|#time parser function]]. This argument has an effect for reasons that use the PROTECTIONDATE parameter in their configuration. As of July 2014, those were the "office" and "reset" reasons.
* '''user''' – the username of the user to generate links for. As of July 2014, this only has an effect when the "usertalk" reason is specified.
* '''section''' – the section name of the protected page's talk page where discussion is taking place. This works for most, but not all, values of ''reason''.
* '''category''' – categories are suppressed if this is set to "no", "n", "0", or "false".
* '''catonly''' – if set to "yes", "y", "1", or "true", will only return the protection categories, and not return the banner or padlock. This has no visible output.
== Reasons ==
The following table contains the available reasons, plus the actions for which they are available.
{{#invoke:Protection banner/documentation|reasonTable}}
== Errors ==
Below is a list of some of the common errors that this module can produce, and how to fix them.
=== Invalid protection date ===
{{error|Error: invalid protection date ("abc")}}
This error is produced if you supply a {{para|date}} parameter value that is not recognised as a valid date by the #time parser function. If in doubt, you can just use a date in the format "dd Month YYYY", e.g. "{{#time:j F Y|+ 1 week}}". To see a full range of valid inputs, see the [[mw:Help:Extension:ParserFunctions##time|#time documentation]] (only the first parameter, the ''format string'', may be specified).
=== Invalid action ===
{{error|Error: invalid action ("abc")}}
This error is produced if you specify an invalid protection action. There are only three valid actions: <code>edit</code> (the default, for normal protection), <code>move</code> (for move-protection), and <code>autoreview</code> (for [[WP:PC|pending changes]]). This should only be possible if you are using a template that supports manually specifying the protection action, such as {{tl|pp}}, or if you are using #invoke directly. If this is not the case, please leave a message on [[Module talk:Protection banner]].
=== Reasons cannot contain the pipe character ===
{{error|Error: reasons cannot contain the pipe character ("|")}}
This error is produced if you specify a reason using the {{para|1}} parameter that includes a pipe character ("|"). Please check that you are not entering the {{tl|!}} magic word into this parameter by mistake. The pipe character is disallowed as the module uses it internally. A list of valid reasons can be seen in the [[#Reasons|reasons section]].
=== Other errors ===
If you see an error other than the ones above, it is likely to either be a bug in the module or mistake in the configuration. Please post a message about it at [[Module talk:Protection banner]].
== Technical details ==
This module uses configuration data from [[Module:Protected page/config]]. Most of the module's behaviour can be configured there, making it easily portable across different wikis and different languages.
General test cases for the module can be found at [[w:en:Module:Protected page/testcases|Module:Protected page/testcases]], and test cases specific to enwiki's config can be found at [[w:en:Module:Protected page/config/testcases|Module:Protected page/config/testcases]].
Bug reports and feature requests should be made on [[w:en:Module talk:Protection banner|the module's talk page]].
<includeonly>{{Sandbox other||
<!-- Categories go here and interwikis go in Wikidata. -->
}}</includeonly>
fozp6f908g6yizr7xns4r9jst26sgdw
370454
370453
2026-09-28T09:13:09Z
ChiK
1136
1 revision imported from [[:en:Module:Protected_page/doc]]
370453
wikitext
text/x-wiki
{{High-use}}
{{Module rating|protected}}
{{Lua|Module:Protected page/config|Module:File link|Module:Effective protection level|Module:Effective protection expiry|Module:Yesno|Module:Arguments|Module:Message box|Module:Submit an edit request}}
This module creates protection banners and padlock icons that are placed at the top of [[Wikipedia:Protection policy|protected pages]]. Most users will not need to use this module directly.
== Usage ==
For adding protection templates to pages you can use the {{tl|pp}} template, or you may find it more convenient to use one of the more specific protection templates in the table below.
{{protection templates}}
=== From wikitext ===
{{#invoke:Protection banner|main
| 1 = ''reason''
| small = ''yes/no''
| action = ''action''
| date = ''protection date''
| user = ''username''
| section = ''talk page section name''
| category = ''yes''
}}
The #invoke syntax can be used for creating protection templates more specific than {{tl|pp}}. For example, it is possible to create a protection template which always shows a padlock icon by using the code <code><nowiki>{{#invoke:Protection banner|main|small=yes}}</nowiki></code>. Pages which call this template will still be able to use other arguments, like ''action''. However, this only works one level deep; a page calling a template which calls another template containing the above code will not automatically be able to use parameters like ''action''.
'''''Note:''' You should no longer specify the expiry, as it is automatically retrieved in all cases.''
=== From Lua ===
First, load the module.
<syntaxhighlight lang="lua">
local mProtectionBanner = require('Module:Protected page')
</syntaxhighlight>
Then you can make protection banners by using the _main function.
<syntaxhighlight lang="lua">
mProtectionBanner._main(args, cfg, titleObj)
</syntaxhighlight>
<var>args</var> is a table of arguments to pass to the module. For possible keys and values for this table, see the [[#Parameters|parameters section]]. The <var>cfg</var> and <var>titleObj</var> variables are intended only for testing; <var>cfg</var> specifies a customised config table to use instead of [[Module:Protected page/config]], and <var>titleObj</var> specifies a mw.title object to use instead of the current title. <var>args</var>, <var>cfg</var> and <var>titleObj</var> are all optional.
== Parameters ==
All parameters are optional.
* '''1''' – the reason that the page was protected. If set, this must be one of the values listed in the [[#Reasons|reasons table]].
* '''small''' – if set to "yes", "y", "1", or "true", a padlock icon is generated instead of a full protection banner.
* '''action''' – the protection action. Must be one of "edit" (for normal protection), "move" (for move-protection) or "autoreview" (for pending changes). The default value is "edit".
* '''date''' – the protection date. This must be valid input to the second parameter of the [[mw:Help:Extension:ParserFunctions##time|#time parser function]]. This argument has an effect for reasons that use the PROTECTIONDATE parameter in their configuration. As of July 2014, those were the "office" and "reset" reasons.
* '''user''' – the username of the user to generate links for. As of July 2014, this only has an effect when the "usertalk" reason is specified.
* '''section''' – the section name of the protected page's talk page where discussion is taking place. This works for most, but not all, values of ''reason''.
* '''category''' – categories are suppressed if this is set to "no", "n", "0", or "false".
* '''catonly''' – if set to "yes", "y", "1", or "true", will only return the protection categories, and not return the banner or padlock. This has no visible output.
== Reasons ==
The following table contains the available reasons, plus the actions for which they are available.
{{#invoke:Protection banner/documentation|reasonTable}}
== Errors ==
Below is a list of some of the common errors that this module can produce, and how to fix them.
=== Invalid protection date ===
{{error|Error: invalid protection date ("abc")}}
This error is produced if you supply a {{para|date}} parameter value that is not recognised as a valid date by the #time parser function. If in doubt, you can just use a date in the format "dd Month YYYY", e.g. "{{#time:j F Y|+ 1 week}}". To see a full range of valid inputs, see the [[mw:Help:Extension:ParserFunctions##time|#time documentation]] (only the first parameter, the ''format string'', may be specified).
=== Invalid action ===
{{error|Error: invalid action ("abc")}}
This error is produced if you specify an invalid protection action. There are only three valid actions: <code>edit</code> (the default, for normal protection), <code>move</code> (for move-protection), and <code>autoreview</code> (for [[WP:PC|pending changes]]). This should only be possible if you are using a template that supports manually specifying the protection action, such as {{tl|pp}}, or if you are using #invoke directly. If this is not the case, please leave a message on [[Module talk:Protection banner]].
=== Reasons cannot contain the pipe character ===
{{error|Error: reasons cannot contain the pipe character ("|")}}
This error is produced if you specify a reason using the {{para|1}} parameter that includes a pipe character ("|"). Please check that you are not entering the {{tl|!}} magic word into this parameter by mistake. The pipe character is disallowed as the module uses it internally. A list of valid reasons can be seen in the [[#Reasons|reasons section]].
=== Other errors ===
If you see an error other than the ones above, it is likely to either be a bug in the module or mistake in the configuration. Please post a message about it at [[Module talk:Protection banner]].
== Technical details ==
This module uses configuration data from [[Module:Protected page/config]]. Most of the module's behaviour can be configured there, making it easily portable across different wikis and different languages.
General test cases for the module can be found at [[w:en:Module:Protected page/testcases|Module:Protected page/testcases]], and test cases specific to enwiki's config can be found at [[w:en:Module:Protected page/config/testcases|Module:Protected page/config/testcases]].
Bug reports and feature requests should be made on [[w:en:Module talk:Protection banner|the module's talk page]].
<includeonly>{{Sandbox other||
<!-- Categories go here and interwikis go in Wikidata. -->
}}</includeonly>
fozp6f908g6yizr7xns4r9jst26sgdw
ಮೋಡ್ಯೂಲ್ ಪಾತೆರ:Protected page
829
28751
370455
2026-08-30T17:20:50Z
en>Primefac
0
Primefac moved page [[Module talk:Protection banner]] to [[Module talk:Protected page]]: update following [[Special:Permalink/1372151970#Requested_move_16_August_2026|RM]]
370455
wikitext
text/x-wiki
{{Permanently protected}}
{{talk header}}
{{old moves | date = 16 August 2026 | from = Module:Protection banner | destination = Module:Protected page | result = moved | link = Special:Permalink/1372151786#Requested move 16 August 2026 }}
== Miscategorisation at Wikipedia fully protected templates ==
Extended-confirmed templates are currently erroneously being categorised into [[:Category:Wikipedia fully protected templates]]. That category has a note "For technical reasons, this category also erroneously contains extended confirmed protected templates.", but neither that comment or its edit summary indicates what this "technical explanation" is. I presume this module is responsible for populating that category? Can this reason be explained? (ping {{ping|Mr. Stradivarius|p=}}, in case you know) [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 16:52, 28 August 2020 (UTC)
:{{ping|ProcrastinatingReader}} It sounds like the module needs to be fixed, but I'm not sure of the exact fix needed yet. Do you have an example of a page that is wrongly categorised? — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 00:56, 29 August 2020 (UTC)
:And yes, the module is responsible for populating the category. In particular, the category list is in [[Module:Protection banner/config]], about two-thirds of the way down. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 00:57, 29 August 2020 (UTC)
::{{u|Mr. Stradivarius}}, examples: [[Template:Justice League characters]], [[Template:Palestinian militancy attacks in the 1960s]], [[Template:Gs/topics]] [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 01:29, 29 August 2020 (UTC)
::Very quick glance at 30 secs of reading the comments in the config, but perhaps the issue is just that we don't have a [[:Category:Wikipedia extended-confirmed protected templates]] and thus it's resolving up the ladder to the fully protected ones? A complete and utter guess, though, probably wrong... [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 01:32, 29 August 2020 (UTC)
:::Hmm, looks like Mdaniels was working on something similar a few months ago. I've made a slight adjustment to the config sandbox, perhaps this will work? Not quite sure how to test, though. I tried changing the version at [[Template:Palestinian militancy attacks in the 1960s]] to the sandbox v, but it isn't overriding (I'm guessing the template namespace does some kind of autodetect to insert the lock, hence overrides my manual one). And on that note, just wondering, why does {{t|Pp-extended}} exist rather than just using {{t|Pp}} (which is used for all other protections & at least in source appears to do the same thing as the former?) [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 01:47, 29 August 2020 (UTC)
::::{{ping|ProcrastinatingReader}} It looks like your edit did the trick, and you are right, it is just a matter of editing that table so that extended-confirmed-protected templates don't fall through to the default case. The best way to test would be to add some new tests to [[Module:Protection banner/config/testcases]]. Unfortunately, previous editors have edited the config without updating the test cases, so we will need to fix the existing test cases as well. For live testing, I recommend [[User:Jackmcbarn/advancedtemplatesandbox.js]], which you can use to test the sandbox out on live pages without updating the main module. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 01:57, 29 August 2020 (UTC)
:::::That script is handy, I think C&C recommended it to me a little while ago actually but I forgot about it. Synced the update and it seems to be populating the category (awfully slowly, not too sure how the software decides when to update the categorisation). Also fixed most of the testcases. Very, very well documented modules by the way. Most paid code I come across has far worse documentation. I'm actually somewhat surprised you're not professionally a developer. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 17:16, 29 August 2020 (UTC)
::::::{{ping|ProcrastinatingReader}} Thank you for updating the module, and for fixing the test cases! It is much appreciated. I think you do need the second hyphen in the category name, though: "Wikipedia extended-confirmed protected templates" with one hyphen translates to "protected templates that are extended-confirmed" (whatever that may mean); "Wikipedia extended-confirmed-protected templates" with two hyphens translates to "templates which have extended-confirmed protection", which I think is the one we want here. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 14:08, 30 August 2020 (UTC)
:::::::{{u|Mr. Stradivarius}}, that change is fine with me. By the way, I was looking to find a fully protected page and came across [[:Category:Wikipedia fully protected pages]]. Every article directly in this category isn't fully protected, which confused me a bit. Then I realised [https://en.wikipedia.org/w/index.php?title=Alissa&redirect=no they're redirects]. We tend to put the redirects into [[:Category:Fully protected redirects]], which has 1,375 members. Any idea why some are also/instead being categorised into the former category, which only has 553 members? I think it may be because they're also move protected (the few examples I checked are also in [[:Category:Wikipedia indefinitely move-protected pages]]), but if that's the case I guess we need an extra config case to catch these so they're not falling into the generic category. If my guess is correct, do we want to just change the config case to |all (rather than |edit), or do we want to create a separate category for fully-protected moves?{{pb}}My side question is, why is the module adding them to multiple categories? I know that's good behaviour, but what's the code logic behind it? Is it looking for a category for each type of protection separately (as in: edit/move are put through the hierarchy for a category separately)? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 14:18, 30 August 2020 (UTC)
:::::::After some further digging, this looks like a mess (but not on the part of this module). Looks like this module isn't responsible for the fully protected redirects category, that's done manually and the category added by redirect templates like {{t|R fully protected}}. So we have [https://en.wikipedia.org/w/index.php?title=Armando_(Blogger)&action=edit some redirects] which aren't tagged with a lock and only in the latter cat, and other articles which are only tagged with the lock, and thus only in the fully-protected category. The ones tagged with both the template and the lock being placed in both. This kinda makes the tracking categories an inconsistent mess and a bit useless as a result, really. Not sure what the best way to clean this up is? I know we can check for redirect using Lua, so we can always add that in, but not sure what the performance impact would be? We'd probably need a bot to fix pages like the one I linked, too? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 14:30, 30 August 2020 (UTC)
::::::::{{ping|ProcrastinatingReader}} I've made the change to add the extra hyphen, so the pages should start to slowly filter over to the new category. To answer your earlier question, the updating is done by the [[WP:JQ|job queue]], which can be very slow for category changes caused by a template edit. I've seen it take months before. As for the multiple protection categories, this module only adds one protection category per #invoke, but there can be multiple protection templates on a page, and as you found, there are other templates which add protection categories as well. To fix this in an elegant way, we would probably need to make a separate module for generating protection categories which can be called from all of the different templates involved. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 15:04, 30 August 2020 (UTC)
:::::::::{{u|Mr. Stradivarius}}, hmm, in the case of [https://en.wikipedia.org/w/index.php?title=Alissa&redirect=no this] what's adding the lock (in read mode)? And why is that thing not adding the lock [https://en.wikipedia.org/w/index.php?title=Armando_(Blogger)&action=edit here]? These look quite similar to me? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 15:07, 30 August 2020 (UTC)
::::::::::{{ping|ProcrastinatingReader}} That's [[Template:Rcat shell]], which is calling [[Template:pp-protected]] based on the edit protection level. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 15:14, 30 August 2020 (UTC)
:::::::::::{{u|Mr. Stradivarius}}, I see. Isn't the easiest way to clean this up just to remove {{tlx|pp-protected|small{{=}}yes}} from {{t|Rcat shell}}? Then it would only call {{t|R fully protected}}, which adds the proper category. The only issue would be the lack of lock, then, but we can fix that by adding, to {{t|R fully protected}}, something like: {{tlx|pp|small{{=}}yes|category{{=}}no}}. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 15:35, 30 August 2020 (UTC)
::::::::::::No, don't remove it. That would undo the work carried out by myself and others (such as {{u|Paine Ellsworth}}) over the last few years to try and eliminate the use of dedicated templates that only apply to a specific prot level. So when a page has {{tlx|rcat shell}} it should not also have any other protection template, not even {{tlx|r protected}} or similar. The thing about {{tlx|pp-protected}} is that it autodetects the prot level and doesn't need adjusting when a page is raised from semi-prot to full-prot, etc. If you find a page (redirect or otherwise) in the "wrong" protection category, first apply a [[WP:NULLEDIT]] and see if that resolves it. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 09:28, 31 August 2020 (UTC)
:::::::::::::{{u|Redrose64}}, these are in the wrong categories due to an inherent bug in the templating. Null edits won't resolve the issue (also, I can't null edit a fully protected page). Please see discussion above. The change I suggested shouldn't defy your efforts. {{t|r protected}} accounts for other protection levels as well, and so moving {{t|pp}} into there for this case wouldn't cause any negative effects as far as I can see. If you're seeing something I'm not, please elaborate. To be clear, I'm only proposing moving it for the fully protected case (which necessarily calls {{t|r protected}}, so this doesn't cause any omissions). There's absolutely no scenarios I can see where this goes wrong? See sandboxes for example. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 20:17, 31 August 2020 (UTC)
::::::::::::::Well {{u|ProcrastinatingReader|PR}}, seems you're coming in on an old problem we've been noticing and trying to fix for several years now. On this talk page alone it goes back at least to 2016 and when {{tl|Redirect category shell}} was the {{tl|This is a redirect}} template. This challenge applies not just to Extended-confirmed-protected but also to others like the {{tl|-r}} redirect, which is template-protected. There appear to be so many layers of this issue that some seriously good admins and template editors, as well as Lua experts have tried to fix it and then apparently put it off to tackle more serious challenges that come up. It's a really tough nut to crack, so I wouldn't get my hopes up for a solution any time soon. However, I myself do hope that it will eventually be well-resolved. '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>12:01, 1 September 2020 (UTC)</small>
{{od|::::::::::::::}}
{{u|Paine Ellsworth}}, do you see any flaws with my proposed solution? Obviously it would only affect the niche case of fully-protected redirects using one of the two templates (not the other ones, which would remain as broken as they are now), but since I cannot see it causing any issues for that case I think my solution it's better than nothing, and at least it would make the fully-protected category less useless for other purposes. Noting that the shell necessarily calls {{t|r protected}} makes this an easy case to solve, I think. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 12:08, 1 September 2020 (UTC)
:You appear to be looking to remove the {{tl|pp-protected}} template from the shell, thus changing:
<pre>
{{#switch: {{PROTECTIONLEVEL:edit}}
|sysop={{pp-protected|small=yes}}{{R protected|embed=yes}}
|templateeditor={{pp-protected|small=yes}}{{R template protected|embed=yes}}
|extendedconfirmed={{pp-protected|small=yes}}{{R extended-protected|embed=yes}}
|autoconfirmed={{pp-protected|small=yes}}{{R semi-protected|embed=yes}}
</pre>
:to:
<pre>
{{#switch: {{PROTECTIONLEVEL:edit}}
|sysop={{R protected|embed=yes}}
|templateeditor={{pp-protected|small=yes}}{{R template protected|embed=yes}}
|extendedconfirmed={{pp-protected|small=yes}}{{R extended-protected|embed=yes}}
|autoconfirmed={{pp-protected|small=yes}}{{R semi-protected|embed=yes}}
</pre>
:is that correct? And then further, to get back the lock icon that would be lost, you propose to insert the {{tl|pp-protected}} template into the {{tl|R fully protected}} rcat template? Where exactly would you insert it? '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>12:38, 1 September 2020 (UTC)</small>
::{{u|Paine Ellsworth}} that's correct. For your question, see [[Template:R fully protected/sandbox]]. Both sandboxes are updated with the change I'm proposing.{{pb}}(the second option is to keep both templates as-is, but just add a |category=no to the shell. This works the same to fix our categorisation issue, but since currently half the fully-protected redirects don't use the shell, they don't have the lock. I think the above approach is better so we have the lock in all cases, as well as fixing categorisation). [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 19:43, 1 September 2020 (UTC)
:::Like you, {{u|ProcrastinatingReader|PR}}, I'm unable to test your changes on fully-protected redirects; however, I can test the changes on template-protected redirects and found that they are removed from {{cat|Wikipedia template-protected templates}} when the {{tl|Redirect category/sandbox}} is used. This leads me to think that your changes will accomplish what you want them to do. One problem is that your changes did not remove the template-protected redirect from {{cat|Wikipedia fully protected pages}}, and that is one of our main issues. So your solution might very well be a good partial fix (that would need testing by an admin to confirm); however, it does not address other important issues I have with incorrect and improper categorization as I've raised elsewhere on this talk page. '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>10:18, 2 September 2020 (UTC)</small>
::::Thanks for testing, {{u|Paine Ellsworth}}. That problem you note unfortunately won't be fixed by these changes, as this modification in the same way applied to TE redirects won't work in the same way. That would require a new rule in the module and some modifications to the templates, I believe, but I haven't looked into the case of TE redirects closely, thus only propose a change for the full-protected redirect case. May look into the other cases later on. The issues in others should also become more apparent once the fully-protected cat isn't polluted with nonsense.{{pb}}I've tested my changes on [[Alissa]] (a fully-protected redirect) using the templatesandbox script suggested above, and it does correctly categorise this redirect. If any admins wish to test further, on the live redirect by changing it to the sandbox, that'd be great. Otherwise, I think there's sufficient evidence to make this relatively straight-forward change in the coming days, if no objections to the technical details are made. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 11:38, 2 September 2020 (UTC)
:::::You're welcome, {{u|ProcrastinatingReader}}''!'' Yes, it would be very helpful if the admins who've been working on this would test the FP redirects with the sandboxed code. Another question I have would be what do you think would happen if, instead of placing <code><nowiki>{{pp|small=yes|category=no}}</nowiki></code> in the {{tl|R fully protected}} rcat, what would be the difference if we just added the {{para|category|no}} parameter to the existing {{tl|pp-protected}} template (which of course redirects to template {{tl|pp}}) in the {{tl|Rcat shell}}? Would that accomplish the same thing? or do you think there would be different results? '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>12:14, 2 September 2020 (UTC)</small>
::::::{{u|Paine Ellsworth}}, in terms of categorisation, it would be exactly the same result. However, a lot of fully-protected redirects do not use the shell, and instead only use {{t|R fully protected}}. As a result, they don't have the lock icon in the top right. I think the approach suggested would also correct this 'error' (if you like) by adding the lock in those cases too, and I think the lock should be there, so my initial thoughts were that this instead is a better approach. As you (and others) have dealt with this issue over a longer period of time than I, I'd be interested to hear your thoughts on this matter. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 12:33, 2 September 2020 (UTC)
:::::::I would support adding the pp template to the fully-protected rcat as an interim solution, and I would also support adding the {{para|category|no}} parameter to the shell for all the protection templates in the shell. May as well add the pp template to {{tl|R template-protected}}, {{tl|R extended-protected}} and {{tl|R semi-protected}} as well, because when those are used without the shell, they too do not add a lock to the top of the redirect page.
:::::::A better solution in the long run might be for a bot to find all of the protected redirects and replace the protection rcats with the rcat shell; however, some editors might complain if other appropriate rcats are not also added to justify the use of the shell. And that could not be facilitated by a bot. That would have to be done manually, which would take an army of Wikignomes to accomplish. < sigh > '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>13:29, 2 September 2020 (UTC)</small>
::::::::I will look into those templates too, when I have a chance, to confirm there would also be no adverse affects of doing so. I agree we need a better solution to really address all components of this issue. I raised the idea of a bot above. Issue is that neither of us could operate the bot (it would have to be adminbot to edit fully-protected redirects). Not sure of many active admins who have experience & interest in this area, so unless you would like to put in an RfA and operate it I think the bot point is moot. WikiGnomes (even if logistically possible) wouldn't help for same reason, fully-protected edit requests take forever to process (and I've only seen 1 or 2 admins who actively attend to them). Unlikely 1000 of them would be done. Even if they could be, it's double the amount of time taken per redirect (time of proposer + time of admin reviewer). [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 15:01, 2 September 2020 (UTC)
====Move-protected====
{{u|Mr. Stradivarius}}, thoughts on what to do about move-protected pages to a non-sysop level? Currently, they just default up the chain to [[:Category:Wikipedia fully protected pages]]. I saw a testcase for this that was failing, so I made [[Special:Diff/976938143]], but really this seems wrong. Doesn't exactly make sense to categorise TE move-protected into TE. We do have categories for sysop move protection, eg <code>['all|template|all|sysop|move'] = 'Wikipedia move-protected templates'</code>, but none really for lesser move protection, and it kinda seems somewhat silly to have "Wikipedia template-editor move-protected templates"? Hence, not sure what solution would be best here. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 19:11, 6 September 2020 (UTC)
:Why not introduce a separate category tree for move-protection? From [[Wikipedia:Move protection]] it is unclear, how many different levels of move protection there is except {{tq|fully move-protected pages}}. Other relevant bits:
:* {{tq|Fully edit-protected pages are also implicitly move-protected.}}
:* {{tq|All files are implicitly move-protected; only file movers and administrators can move files.}}
: —[[User:Andrybak|andrybak]] ([[User talk:Andrybak|talk]]) 21:38, 6 September 2020 (UTC)
:*I think in theory you can move protect to all levels, but for the most part non-sysop move-protection not matching edit protection is quite a rare scenario. It happens on some mainspace pages (usually to ECP move), there's a couple templates that have this (edit=semi, move=TE). I think many of them are IAR actions, rather than codified in guidelines, but reasonable protections nevertheless. A move category tree is one idea, yeah, and not awfully difficult to implement, at least in the module. There's a bunch of scattered templates that would need to be double-checked, as well. It would be worth noting that if we did that, stuff like [[:Category:Wikipedia move-protected templates]] should probably be a cat containing child cats only, so we'd have to make sure no bots are going to be troubled by that. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 22:02, 6 September 2020 (UTC)
:{{ec}} {{to|ProcrastinatingReader}} I'd also like to hear thoughts from [[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]], [[User:MSGJ|Martin]], [[User:Anomie|Anomie⚔]], [[User:Wbm1058|wbm1058]], [[User:Xaosflux|<span style="color:#FF9933; font-weight:bold; font-family:monotype;">xaosflux</span>]] and [[User:Jackmcbarn|Jackmcbarn]] that would be helpful on this issue. As a "tough nut to crack", we need all the help we can get. '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>21:48, 6 September 2020 (UTC)</small>
::{{replyto|Andrybak}} Move protection has exactly the same five levels as edit-, upload- and create-protection, i.e. none, semi, EC, template and full. However, since IPs and unconfirmed editors cannot move pages, a page with no move protection is effectively semi-protected for moves. It is rare to have a page that is explicitly semi-prot for moves but has no edit protection; these are usually mistakes and, when discovered, are often reduced to having no move protection for the sake of tidiness. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 11:10, 7 September 2020 (UTC)
====Userspace scripts====
We've got a lot of cat pollution where someone adds a userspace script and chucks a <code><nowiki>// {{pp-template}}</nowiki></code> or something into their css/js files, causing a gold lock and sysop-protected categorisation (eg [[User:GoldenRing/common.js]], [[User:BeywheelzLetItRip/common.css]], [[User:AHollender (WMF)/sandbox/2019–20 coronavirus pandemic data/2019–20 coronavirus pandemic data/styles.css]], etc). Rather than have IAdmins constantly removing this stuff, perhaps it's a good idea for this module should just not show lock or categorise (basically just skip) any .js/.css files in userspace (which are all IAdmin protected, globally)? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 22:15, 6 September 2020 (UTC)
:Done [[Module:Protection banner/sandbox|in sandbox]] if anyone wants to take a look. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 22:38, 6 September 2020 (UTC)
::I took a look at the code. It looks basically good - thanks for contributing it. :) There are a couple of things I would change:
::* Instead of having the code in <code>Protected:isProtected()</code>, I would put it directly in <code>Protection:makeCategoryLinks()</code>, or maybe better, put it in a dedicated <code>Protection:shouldBeCategorized()</code> method and call that from makeCategoryLinks. Saying user .js or .css pages aren't protected when they effectively are protected is a bit confusing, and I think that moving the code would make the intention more explicit, and maybe avoid future bugs.
::* It could do with some test cases at [[Module:Protection banner/testcases]].
::Best — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 15:32, 7 September 2020 (UTC)
:::{{u|Mr. Stradivarius}}, thanks for reviewing! Re bullet 1: I popped it into <code>:isProtected()</code> to also stop it showing the lock, as well as stopping the categorisation, since my thought was that showing a gold sysop lock on these types of files seems slightly misleading & undesirable. Also seemed like a good idea to pop them into the "wrong categories" cat to have their // {{tlf|pp-template}} removed seemed like a good idea. Easiest way to achieve all points was to edit :isProtected(). Of course, open to thoughts on if any of these fixes are themselves undesirable. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 16:11, 7 September 2020 (UTC)
::::{{ping|ProcrastinatingReader}} I see - if we need to suppress the padlock icons as well, then I agree that <code>:isProtected()</code> is a very convenient place to add the code. I think the problem is just one of naming, then, which I [[Special:Diff/977374710|had a go at tackling]] in the sandbox. I couldn't think of a good name for a method that means "the template should output a protection category, and a banner/padlock icon", though, so I cheated by making an alias. There's probably a better way of doing it. Also, I fixed the test cases, which appeared to have been broken for quite some time. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 14:24, 8 September 2020 (UTC)
:::::{{u|Mr. Stradivarius}}, looks good to me! [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 19:27, 9 September 2020 (UTC)
:::::{{u|Mr. Stradivarius}}, is this good to merge into live? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 19:08, 15 September 2020 (UTC)
::::::{{ping|ProcrastinatingReader}} Not yet - there are some test cases missing, and I noticed an edge case that the user JS/CSS code needs to cover (i.e. user pages only have the JS/CSS content type if they are a subpage; <code>User:Foo.css</code> would be a wikitext page). — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 00:20, 16 September 2020 (UTC)
:::::::Interesting. Technically those pages could be CSS too, if manually changed. The best way to check all would be to use contentModel I guess, but it’s a “maybe expensive function”; a check on the page title will probably handle 99.9% of cases. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 09:54, 16 September 2020 (UTC)
::::::::Using the content model shouldn't be a problem, as we would only be making one expensive function call. And I'm guessing the result would be cached per page, so there would probably still be only one expensive function call even if we have multiple #invokes on a page. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 04:19, 19 September 2020 (UTC)
::::::::Also, checking the [[mw:Extension:Scribunto/Lua reference manual#Expensive properties|docs]], it looks like fetching the content model for the current page doesn't count towards the expensive function count, so it shouldn't actually have any effect. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 07:18, 19 September 2020 (UTC)
:::::::::I've just put the code up live - let me know if you notice any issues. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 13:07, 19 September 2020 (UTC)
::::::::::{{u|Mr. Stradivarius}}, looks good right now. Am curious about one thing. I know categories don't update with contents immediately, but I thought a [[Wikipedia:Purge#forcerecursivelinkupdate|purge with forcerecursivelinkupdate]] on the page immediately updated that? Tried on a couple but they don't disappear from [[:Category:Wikipedia fully protected pages]] for some reason - any idea? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 18:33, 19 September 2020 (UTC)
:::::::::::It's not worked for months, if not longer: see [[Wikipedia:Village pump (technical)/Archive 181#Sending a POST to the API to purge]]. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 21:45, 19 September 2020 (UTC)
====Redirect sub-categorisation====
[[:Category:Fully protected redirects]] is a little useless for maintenance purposes, because it has 1,500 members with no subcategories. Ideally this should be split up, e.g. redirects of alternate name of a BLP, redirects protected due to vandalism, project redirects pre-emptively protected, etc. Discussed briefly above in [[Module_talk:Protection_banner#Categorization_of_protected_redirects]], {{u|Mr. Stradivarius}} gave 3 options which I also think are the best few. I think it can easily be done with this module. We could create a bunch of wrappers and get around the named caveat by adding a title check for isRedirect if the wrapper is for a redirect (probably easiest option). These would use the reason key. It would also keep per-namespace options open, but we wouldn't be able to use normal banner data (could get around this by having a -redirect suffix in reason for cat, but fetching data from parent for lock). There's also option 3 of making a redirect key in the algorithm, but that's maybe a bit of work (Mr. S or Jack might know best). [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 14:53, 7 September 2020 (UTC)
'''Update'''
Making a bit of a laundry list of protection category 'issues', feel free to add/change. I guess we can figure out solutions from there. {{u|Paine Ellsworth}} may be interested? Re. redirects, I know {{u|Mr. Stradivarius}} suggested [[Module_talk:Protection_banner#Categorization_of_protected_redirects|above]] the ideas of {{tq|Add redirect detection as a full-blown key to the protection category algorithm}}, or a new module to deal with redirects. I also had [[Special:Diff/977097115/977183814|an idea]] of suffixing -redirect to the reason. I think the adding to algorithm approach is best, the issue overlaps into non-redirects and I think it's easier than having a near-duplicate module. However, I think it may also just be better to cut our losses, focus on fixing & having categorisations based mainly on protection level and duration (indef/temp), and suggesting Petscan if one wishes to get useful stuff out of them. For example, to figure out extended confirmed protections NOT DS one can use the "has none templates", on talk page, of "ArbCom Arab-Israeli enforcement" + [...]. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 17:20, 26 September 2020 (UTC)
In both cases, here's some issues:
* [[:Category:Wikipedia move-protected pages]] needs to be able to handle non-admin move protections (currently they just go into the fully-prot cat). But since each run of the module only categorises once, it would require completely changing the category tree structure I think (like the standard protections) to make this work smoothly? Or, we can just mash everything up into one move-protected category per protection level (ditch the namespace stuff) and suggest Petscan for namespace categorisation (likely the easiest option?)
* [[:Category:Wikipedia protected biographies of living people]] is ineffective, and hence it (and its subcategories) nearly empty. Admins rarely use {{t|pp-blp}}, Twinkle just adds {{t|pp-30-500}}, e.g. [[Sushant Singh Rajput]], with a protection reason usually including "Violations of the biographies of living persons policy" (but not always). A few things a bot can do here, but I note that Petscan can also be used for the same purpose, so do we just want to scrap {{t|pp-blp}} and only categorise by protection level instead? It seems to at least be used for semi-protections, but I wonder how many semis are just mashed up in other cats, like [[:Category:Wikipedia semi-protected pages]] (a lot, at a glance). Similar issue with [[:Category:Wikipedia extended-confirmed-protected pages]].
::{{to|ProcrastinatingReader}} yes, I'm very interested and watching all this closely. Much of it seems above my pay grade and ken, but I read and watch anyway hoping this will be resolved by those who know more than I do about these things. '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>15:57, 27 September 2020 (UTC)</small>
== Catonly ==
{{re|Mr. Stradivarius}} I made a change to sandbox that adds a parameter called "catonly". If it's "yes", then the banner/padlock will be hidden and only the category will be provided. Added 2 testcases which pass. This would implement [https://en.wikipedia.org/wiki/Wikipedia:Templates_for_discussion/Log/2020_October_25#Template:Pp-move this TfD]. Is that good to go? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 19:47, 15 July 2021 (UTC)
:{{ping|ProcrastinatingReader}} Thank you for implementing this! I really appreciate it when someone takes the time to write test cases. :) Looks like you forgot to sync the latest changes from the main module (see the [https://en.wikipedia.org/wiki/Special:ComparePages?page1=Module%3AProtection+banner&rev1=1013845490&page2=Module%3AProtection+banner%2Fsandbox&rev2=1033774702&action=&diffonly=&unhide= diff]), so you should resync and check that your changes still pass the unit tests. We could probably do with another test case to show that a padlock icon is shown when {{para|catonly|no}}. And maybe a similar one for categories if you want to be thorough. Also, I see that you're duplicating the UNIQ...QINU pattern to detect strip markers - that should probably be made its own variable, in case it needs to be changed in the future. The sandbox code looks fine, although as that if/then condition gets more complex, I would be tempted to split it out into its own function for readability. Let me know if you want me to clarify anything, and once you've fixed the above issues feel free to deploy the code if all the unit tests pass. Best — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 11:45, 16 July 2021 (UTC)
::Thanks for reviewing! Added those tests and added a test for banners as well. Also split that pattern into a variable. All tests pass, so I've deployed the code. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 12:01, 16 July 2021 (UTC)
== Template-protected edit request on 3 February 2022 ==
{{edit template-protected|Module:Protection banner/config|answered=yes}}
Please add the following to [[Module:Protection banner/config]] near line 772:
<pre>
['all|module|all|extendedconfirmed|edit'] = 'Wikipedia extended-confirmed-protected modules',
</pre>
[https://en.wikipedia.org/wiki/Special:ProtectedPages?namespace=828&type=edit&level=extendedconfirmed&size-mode=min&size= ECP modules] currently categorize into [[:Category:Wikipedia fully-protected modules]], this would move them to [[:Category:Wikipedia extended-confirmed-protected modules]]. [[User:AntiCompositeNumber|AntiCompositeNumber]] ([[User talk:AntiCompositeNumber|talk]]) 23:27, 3 February 2022 (UTC)
: {{Done}}: [[Special:Diff/1069763876]]. —[[User:Andrybak|andrybak]] ([[User talk:Andrybak|talk]]) 23:50, 3 February 2022 (UTC)
::@[[User:Andrybak|Andrybak]] Thanks! [[User:AntiCompositeNumber|AntiCompositeNumber]] ([[User talk:AntiCompositeNumber|talk]]) 00:02, 4 February 2022 (UTC)
== Issues with pending changes alongside generic protection ==
At [[Chimpanzee]], the page is both pending changes and semi-protected. {{tl|pp-pc}} does not render, only {{tl|pp-vandalism}} does. Is this expected? <span class="nowrap">—'''[[User:CX Zoom|CX Zoom]]'''[he/him]</span> <sup class="nowrap">([[User talk:CX Zoom|let's talk]] • {[[Special:Contributions/CX Zoom|C]]•[[User:CX Zoom/X|X]]})</sup> 09:51, 5 August 2022 (UTC)
:{{replyto|CX Zoom}} Yes, only one kind of protection is reported - the "stronger" one. In this case, the {{tlx|pp-vandalism}} picks up the [[WP:SEMI|semi-protection]] for editing which prevents all edits by unconfirmed users; whilst the {{tlx|pp-pc}} picks up the [[WP:PC1|pending changes]] prot, also for editing, which ''allows'' edits by unconfirmed users but doesn't make them visible unless accepted. So in this case the semi-prot is the stronger one. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 20:46, 5 August 2022 (UTC)
== Using plain English for protection levels ==
The recent high-profile case of readers not understanding protection icons at [[Recession]] led me to review the tooltip text, and it seems that it leaves something to be desired. The messages are currently in forms like {{tq|This article is semi-protected until April 7, 2022 at 1:47 UTC.}} Readers don't know what "semi-protected" or "extended-protected" means, and very few will click through to the [[WP:protection|protection policy page]] to find out. I suggest that we change the wording to plain English to help make it easier to understand. For semi-protection, I'd suggest {{tq|New users cannot edit this article until April 7, 2022, at 1:47 UTC}} (note also two grammar fixes: the added comma and removed period). For EC, {{tq|Only experienced users can edit this article until...}} Thoughts? <span style="color:#AAA"><small>{{u|</small><span style="border-radius:9em;padding:0 5px;background:#088">[[User:Sdkb|<span style="color:#FFF">'''Sdkb'''</span>]]</span><small>}}</small></span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 18:21, 28 August 2022 (UTC)
: The idea seems reasonable in theory, but the wordings you proposed don't work as the language used for semi-protection and for extended-confirmed-protection read like synonyms of each other. [[User:Pppery|* Pppery *]] [[User talk:Pppery|<sub style="color:#800000">it has begun...</sub>]] 15:10, 29 August 2022 (UTC)
::What high-profile case? There doesn't seem to be anything on its talk page. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 09:15, 30 August 2022 (UTC)
:::@[[User:Pppery|Pppery]], do you have a suggested alternative? Users won't be seeing both notices at the same time, and I can't think of an intuitive word for those in the 10-500 edit range, so I'm not sure we can do any better. Perhaps for EC, {{tq|New and intermediately experienced editors cannot edit...}}, but that's a little wordier.
:::@[[User:Redrose64|Redrose64]], https://slate.com/technology/2022/08/wikipedia-recession-article.html. <span style="color:#AAA"><small>{{u|</small><span style="border-radius:9em;padding:0 5px;background:#088">[[User:Sdkb|<span style="color:#FFF">'''Sdkb'''</span>]]</span><small>}}</small></span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 14:29, 30 August 2022 (UTC)
::::Having mulled this over for a while, I can't come up with any wording clearer than my original proposal. I don't think the synonym concern is a blocker, since the tooltips won't be appearing alongside each other and it's fairly intuitive that there's an intermediate level in between "new user" and "experienced user".
::::The config page [[Module:Protection_banner/config#L-922|currently relies on PROTECTIONLEVEL]], so improving it will require some coding; would anyone with Lua skills be interested in taking that on? <span style="color:#AAA"><small>{{u|</small><span style="border-radius:9em;padding:0 5px;background:#088">[[User:Sdkb|<span style="color:#FFF">'''Sdkb'''</span>]]</span><small>}}</small></span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 18:06, 5 October 2022 (UTC)
:::::{{ping|Sdkb}} I've decided to give this a quick go. Note that I've entirely focused on the padlocks here - the regular big banner text is unaffected, since it's seen less often and I'm not sure you wanted anything there to be changed. I've tried to make the changes as light as possible (since the multiple class structures in the main module with objects being created all over the place is, at best, hard to learn on the spot), and I've come up with a basic config approach (See [[Module:Protection banner/config/sandbox#L-559|here]]) (Note that the move and upload sub-tables could be excessive, since I've never seen their padlocks appear normally, but I've implemented some wording anyways). I've also removed the tooltip from the template and ecp options in the banners table, since this would break messaging (see the thread just below), and also applied the comma you suggested above into the time formatting, though I'm not sure about removing the period (it's possible, but not elegant, likely being a "does the final message end with 'UTC' " check).
:::::Since showing tests for this module can be quite hard, here are the 4 main protection levels with the messages as of the current sandbox version: [[File:Full-protection-shackle.svg|20px|link=Wikipedia:Protection policy#full|alt=Page protected|Only admins can edit this page until January 1, 2022, at 00:00 UTC.]] [[File:Template-protection-shackle.svg|20px|link=Wikipedia:Protection policy#template|alt=Page template-protected|Only experienced template editors and admins can edit this page until January 1, 2022, at 00:00 UTC.]] [[File:Extended-protection-shackle.svg|20px|link=Wikipedia:Protection policy#extended|alt=Page extended-protected|Only experienced users can edit this page until January 1, 2022, at 00:00 UTC.]] [[File:Semi-protection-shackle.svg|20px|link=Wikipedia:Protection policy#semi|alt=Page semi-protected|New users cannot edit this page until January 1, 2022, at 00:00 UTC.]]
:::::Hope this fits roughly what you were thinking. Any comments or requests, just ask. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 12:31, 9 December 2022 (UTC)
::::::@[[User:Aidan9382|Aidan9382]], sorry for the delayed reply. That looks excellent! I'd support implementing. <span style="color:#AAA"><small>{{u|</small><span style="border-radius:9em;padding:0 5px;background:#088">[[User:Sdkb|<span style="color:#FFF">'''Sdkb'''</span>]]</span><small>}}</small></span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 06:02, 1 March 2023 (UTC)
:::::::@[[User:Aidan9382|Aidan9382]], just wanted to circle back, where are we at with this? Cheers, <span style="border:3px outset;border-radius:8pt 0;padding:1px 5px;background:linear-gradient(6rad,#86c,#2b9)">[[User:Sdkb|<span style="color:#FFF;text-decoration:inherit;font:1em Lucida Sans">Sdkb</span>]]</span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 01:34, 6 March 2024 (UTC)
::::::::{{ping|Sdkb}} (This was over a year ago? God, swear this wasn't that long ago) I haven't made any changes since the last sandbox edit related to this, but that version should be working since its what I used to generate the padlocks in my 9 december message. I've re-synced the config changes back into the current config sandbox version, and the module changes are already still in the sandbox. Changes for the protection messages are welcome since I'm not the best at writing that kind of stuff. You can see an example padlock message in action at [[User:Aidan9382/SafeEnvironmentTesting]] (you can adjust the demolevel as needed to test each padlock - you can't test multiple at once due to the indicators all being named the same). [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 07:44, 6 March 2024 (UTC)
== Tooltip/title does not match the actual protection level ==
While the symbol displayed by templates like {{tl|pp-extended}}, and the link placed behind the symbol, automatically match the actual protection level, the tooltip/title doesn't.
Specifically, the article [[Russia]] is currently full-protected and displays a golden "F" lock, with a link pointing towards the "#full" section of the protection policy. Its title attribute, however, is "This article is extended-confirmed protected".
This has been noticed by [[User:Jishiboka1|Jishiboka1]] at [[Talk:Russia]] and should probably be fixed in the module. [[User:ToBeFree|~ ToBeFree]] ([[User talk:ToBeFree|talk]]) 11:44, 1 October 2022 (UTC)
:Note: After some tampering with the module and some test runs, I've found out what the issue is. The module seems to be relying entirely on the template itself for the banner text it uses which is fetched from [[Module:Protection banner/config]]. You can see an example of this if you try to use {{tl|pp-template}} on a semi-protected page - it'll display the template banner's text from the config, but with the protection level at semi. This works ''most'' of the time, as the tooltip messages use <code>${PROTECTIONLEVEL}</code>, which means the message adapts to the protection level of the page. However, the tooltip for ecp is hard-coded to read <code>This ${PAGETYPE} is extended-confirmed protected</code>, which is where the issue is coming from. A solution to this could be just changing the tooltip message to <code>This ${PAGETYPE} is ${PROTECTIONLEVEL}</code>, so it matches the other options' format. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 13:09, 1 October 2022 (UTC)
{{edit template-protected|Module:Protection banner/config|answered=yes}}
Apparently forgot to do this. Based off of the discussion above, could the <code>This ${PAGETYPE} is extended-confirmed protected</code> message on line 224 be changed to <code>This ${PAGETYPE} is ${PROTECTIONLEVEL}</code> to avoid the module displaying the wrong message when {{tl|pp-extended}} (or similar) is used? Thanks. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 18:38, 5 October 2022 (UTC)
:{{edited2}}. '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' , [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>04:19, 6 October 2022 (UTC)</small>
== Template configuration feedback ==
Some of the strings in [[Module:Protection_banner/config]] could be more consistent with how page protection works on Wikipedia.
1. The non-iconified page protection template does not link [[Wikipedia:Request for edit]] when a page and its talk page are both protected as specified in the [[Protection_policy#Semi-protection|semi-protection policy]]. It would be better if that could happen automatically, maybe just add that always on talk pages when they are protected? If that's not possible, it would be good if there was an option to the template to add that link.
2. Several strings in the configuration state "or [[Special:UserLogin/signup|create an account]]" in reference to making edits to semi-protected pages. That seems misleading when a new account cannot edit semi-protected pages until it is old enough to be autoconfirmed.
3. Would it be possible to change the default settings so that '''small=yes''' would be set by default on articles that are edit protected (not move protection or any kind of protection on talk pages, though). It seems like that's the preferred practice so why not make it the default?
[[User:Daniel Quinlan|Daniel Quinlan]] ([[User talk:Daniel Quinlan|talk]]) 21:53, 10 July 2023 (UTC)
== Template-editor move-protected? ==
(Regarding [[Module:Protection banner/config#L-758]].)
It doesn't seem helpful to categorize a template into [[:Category:Wikipedia template-protected templates]] when it's only protected for ''moves'' and not for ''edits''. For example, [[Template:Bill Clinton]] is in that category but can be edited (but not moved) freely.
I suggest either (A) <s>removing that line</s> <ins>[edit: not adding any category]</ins>, similar to how currently there is no category for a page that is extended-confirmed move-protected but not edit-protected or (B) creating new categories [[:Category:Wikipedia template-editor move-protected templates]] and [[:Category:Wikipedia extended-confirmed move-protected pages]] (or similar). [[User:SilverLocust|<small style="color:#667;background:#fff;border:2px solid;border-radius:.4em;padding:0 .3em">SilverLocust</small>]] <small class="plainlinks sysop-show extendedmover-show">[//w.wiki/8xwX 🃏]</small> [[User talk:SilverLocust|💬]] 02:26, 27 January 2024 (UTC)
:{{reply to|SilverLocust}} That line was added by [[special:diff/976938143|this 00:07, 6 September 2020 edit]] per the discussion at [[#Move-protected]] above. – [[User:Wbm1058|wbm1058]] ([[User talk:Wbm1058|talk]]) 03:30, 8 February 2024 (UTC)
::To be more precise, that change wasn't added ''per'' the discussion at [[#Move-protected]], it was added ''followed by'' the discussion at [[#Move-protected]] that the change wasn't quite correct and should have some better solution. Nobody there claimed that the category now provided is correct, just that it's there so that it doesn't default to "fully protected pages".
::But that just suggests that rather than removing the line entirely, option (A) would be to move that line up to the [[Module:Protection banner/config#L-735|2nd line]] within protectionCategories (so that it has lower priority than all of the categories below it) and to replace it with <syntaxhighlight lang="Lua">['all|template|all|templateeditor|move'] = '' -- there is currently no category for template-editor move-protected pages</syntaxhighlight>
::And I suppose there could be an option (C) — combining TE move-protected pages into [[:Category:Wikipedia move-protected templates]]. [[User:SilverLocust|<small style="color:#667;background:#fff;border:2px solid;border-radius:.4em;padding:0 .3em">SilverLocust</small>]] [[User talk:SilverLocust|💬]] 13:46, 27 February 2024 (UTC)
:::[[Module:Protection banner/config#L-734|The first line]] of protectionCategories (which is the default) should also be changed to <syntaxhighlight lang="Lua">['all|all|all|all|all'] = 'Wikipedia miscellaneous protected pages',</syntaxhighlight> as a new tracking category, rather than defaulting to 'Wikipedia fully protected pages' when none of the below options match. And that would allow incorrect categories to just be removed rather than shoehorned into some not-quite-correct category. [[User:SilverLocust|<small style="color:#667;background:#fff;border:2px solid;border-radius:.4em;padding:0 .3em">SilverLocust</small>]] [[User talk:SilverLocust|💬]] 20:11, 27 February 2024 (UTC)
== Edit request 28 February 2024 ==
{{Edit template-protected|Module:Protection banner/config|answered=yes}}
<syntaxhighlight lang="Lua> ['all|all|all|templateeditor|move'] = 'Wikipedia template-protected pages other than templates and modules',
['all|template|all|extendedconfirmed|move'] = 'Wikipedia extended-confirmed-protected templates',</syntaxhighlight>
Please [[Special:Diff/1210714229|add these two new lines (sandbox diff)]] to the protectionCategories object in the /config so that
# pages like the redirect {{no redirect|Template talk:Db-a1}} will not be miscategorized into [[:Category:Wikipedia fully protected pages]] (via {{tl|pp-move}}, which is called by {{tl|Redirect category shell}}) and
# extended-confirmed templates like [[Template:Israel–Hamas war]] will not be categorized into both [[:Category:Wikipedia extended-confirmed-protected pages]] (via {{tl|pp-move}}) and the subcategory [[:Category:Wikipedia extended-confirmed-protected templates]] (via {{tl|pp}}) rather than just the subcategory.
[[User:SilverLocust|<small style="color:#667;background:#fff;border:2px solid;border-radius:.4em;padding:0 .3em">SilverLocust</small>]] [[User talk:SilverLocust|💬]] 02:02, 28 February 2024 (UTC)
:I can make this edit now, so I shall do my own request. (This is separate from the suggestions in the previous section.) [[User:SilverLocust|<small style="color:#667;background:#fff;border:2px solid;border-radius:.4em;padding:0 .3em">SilverLocust</small>]] [[User talk:SilverLocust|💬]] 12:39, 1 March 2024 (UTC)
== Small bug ==
I noticed that a semi-protected article that has the extended-protection template applied to it displays the semi-protection icon, but with a tooltip that says "This article is semi-protected#semi". Not the biggest deal, but if anyone wants to get rid of the "#semi" at the end, that would be nice. <span style="border:3px outset;border-radius:8pt 0;padding:1px 5px;background:linear-gradient(6rad,#86c,#2b9)">[[User:Sdkb|<span style="color:#FFF;text-decoration:inherit;font:1em Lucida Sans">Sdkb</span>]]</span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 21:09, 27 August 2024 (UTC)
:Which article? The anchor shouldn't be appearing since it should be part of the lock's link, and some quick testing myself doesn't seem to cause this case. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 21:39, 27 August 2024 (UTC)
::I found it on [[Tim Walz]], which had EC protection that expired (and I then replaced with semi-protection). <span style="border:3px outset;border-radius:8pt 0;padding:1px 5px;background:linear-gradient(6rad,#86c,#2b9)">[[User:Sdkb|<span style="color:#FFF;text-decoration:inherit;font:1em Lucida Sans">Sdkb</span>]]</span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 21:57, 27 August 2024 (UTC)
:::Seems fine to me, the tooltip is just "This article is semi-protected". [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 08:35, 28 August 2024 (UTC)
== Icon redirect ==
Anyone watching? The BLACKLOCK icon at [[Asian News International vs. Wikimedia Foundation]] redirects to [[Wikipedia:Protection_policy#full]], but [[Wikipedia:Protection_policy#Office_actions]] would be more on point. [[User:Gråbergs Gråa Sång|Gråbergs Gråa Sång]] ([[User talk:Gråbergs Gråa Sång|talk]]) 18:41, 21 October 2024 (UTC)
:This'll require a change to the module code, since the config responsible for determining the link that the padlock uses is determined [[Module:Protection banner/config#L-596|here]], and an office action is, in technical terms, just a normal full (admin) protection. The only way the difference is determined for the image is by explicitly using {{tl|pp-office}} instead of {{tl|pp}}, so something similar would need to be done for the image link handling too. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 18:50, 21 October 2024 (UTC)
::While office action protections are implemented as full protections, the purpose of the redirect is to provide additional context and information to readers. I agree that it makes sense for the icon to redirect to the most relevant section of the policy, {{slink|Wikipedia:Protection policy#Office actions}}. Just to be clear, I'm only commenting on the desired outcome, not on the technical implementation. [[User:Daniel Quinlan|Daniel Quinlan]] ([[User talk:Daniel Quinlan|talk]]) 18:58, 21 October 2024 (UTC)
:::{{replyto|Gråbergs Gråa Sång}} It's easy to find out what the protection level is, and when it will expire. There are two [[WP:PF|parser functions]] that do this:
:::*<code><nowiki>{{PROTECTIONLEVEL:edit|Asian News International vs. Wikimedia Foundation}}</nowiki></code> → {{PROTECTIONLEVEL:edit|Asian News International vs. Wikimedia Foundation}}
:::*<code><nowiki>{{PROTECTIONEXPIRY:edit|Asian News International vs. Wikimedia Foundation}}</nowiki></code> → {{PROTECTIONEXPIRY:edit|Asian News International vs. Wikimedia Foundation}}
:::*<code><nowiki>{{PROTECTIONLEVEL:move|Asian News International vs. Wikimedia Foundation}}</nowiki></code> → {{PROTECTIONLEVEL:move|Asian News International vs. Wikimedia Foundation}}
:::*<code><nowiki>{{PROTECTIONEXPIRY:move|Asian News International vs. Wikimedia Foundation}}</nowiki></code> → {{PROTECTIONEXPIRY:move|Asian News International vs. Wikimedia Foundation}}
:::The value "sysop" denotes full protection, for any reason. These values are read directly from a table, and whereas this module obtains the values using another module (specifically [[Module:Effective protection level]]) and not the parser functions, the underlying routines in the MediaWiki software are the same, and so the values are read from the same table. But the ''reason'' for protection is not held in a table, it's only recorded as a log entry. The module would need to scan back through that log, since the imposition of protection might not be the most recent entry in the protection log (although in this case, [//en.wikipedia.org/wiki/Special:Log?type=protect&page=Asian_News_International_vs._Wikimedia_Foundation it is]). The module would also need to do that every time the page is retrieved, and that would take time. I don't think that this is a good idea. Stick with using {{tlx|pp-office}} or {{tlx|pp-vand}} etc., whichever is most appropriate, as these describe the situation explicitly. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 07:37, 22 October 2024 (UTC)
::::If it can't be done, it can't be done. It would be a minor but obvious improvement for the reader, and my guess was that changing the "redirect" to [[WP:BLACKLOCK]] would be fairly trivial, though of course restricted by [[WP:PINKLOCK]] etc. To make a [[WP:OTHERCONTENT]] comparison, the [[WP:PINKLOCK]] icon (top right) at [[Module:Protection banner]] redirects to [[WP:PINKLOCK]], not [[WP:GOLDLOCK]]. [[User:Gråbergs Gråa Sång|Gråbergs Gråa Sång]] ([[User talk:Gråbergs Gråa Sång|talk]]) 07:48, 22 October 2024 (UTC)
:::::After a quick skim of the module code, it turns out it is already possible to override the link of the padlock in the config based on the template used, it's just none of the existing cases used said feature. I've tried my best to workshop the change in the sandbox config on phone [[Special:Diff/1252648173|here]]. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 09:52, 22 October 2024 (UTC)
::::::Nice find. That seems like a promising solution, and it uses a descriptive link. [[User:Daniel Quinlan|Daniel Quinlan]] ([[User talk:Daniel Quinlan|talk]]) 11:45, 22 October 2024 (UTC)
:::::It would be better to avoid using the color shortcuts which are often unclear to people in meaning and less frequently used, and instead use the more descriptive shortcuts like [[WP:ECP]] or, even better, direct and descriptive links. [[User:Daniel Quinlan|Daniel Quinlan]] ([[User talk:Daniel Quinlan|talk]]) 11:33, 22 October 2024 (UTC)
If no one has any extra comments or suggestions regarding this, I'll move [[Special:Diff/1252648173|this change]] from the sandbox to main, since this seems pretty uncontroversial. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 16:41, 22 October 2024 (UTC)
:I've implemented the config change, office padlocks will now start linking to the office section in the protection policy. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 18:54, 23 October 2024 (UTC)
::Thanks! [[User:Gråbergs Gråa Sång|Gråbergs Gråa Sång]] ([[User talk:Gråbergs Gråa Sång|talk]]) 19:09, 23 October 2024 (UTC)
::Looks good. Office padlocks have the correct destination and full protection padlocks are unchanged. Thanks. [[User:Daniel Quinlan|Daniel Quinlan]] ([[User talk:Daniel Quinlan|talk]]) 19:19, 23 October 2024 (UTC)
== Mobile places infobox incorrectly for [[WP:PIA]] notice ==
Mobile moves infoboxes down after the opening paragraph per [[:mw:Reading/Web/Projects/Lead Paragraph Move]]. On [[Detention of Mahmoud Khalil]] {{tlx|1=pp-extended|2=small=yes}} includes <code><nowiki><p class='PIA-flag' style='display:none; visibility:hidden;'>This page is subject to the extended confirmed restriction related to the Arab-Israeli conflict.</p></nowiki></code>. The text is hidden but mobile still interprets it as an opening paragraph and displays the infobox right after it instead of moving it further down after the first displayed paragraph. Is there a better fix than moving {{tlx|1=pp-extended|2=small=yes}} down in the wikitext? [[MOS:ORDER]] says it should be at the top. [[User:PrimeHunter|PrimeHunter]] ([[User talk:PrimeHunter|talk]]) 09:36, 17 March 2025 (UTC)
:According to the [https://gerrit.wikimedia.org/g/mediawiki/extensions/MobileFrontend/+/a7183b11e63dc28e6baabfc1eb9e62e02baab130/includes/Transforms/MoveLeadParagraphTransform.php#250 code] moving the notice inside a span might be enough. [[User:Sjoerddebruin|<span style="color:var(--color-progressive,#36c); font-weight:var(--font-weight-semi-bold,600); letter-spacing:0.05em;">Sjoerd de Bruin</span>]] [[Overleg gebruiker:Sjoerddebruin|<small style="color:var(--color-progressive,#36c); letter-spacing:0.05em;">({{int:Talkpagelinktext}})</small>]] 09:52, 17 March 2025 (UTC)
::That only targets <code><nowiki><span id="coordinates">...</span></nowiki></code>. We could use it but adding a coordinates id would be hacky. There may be tools looking for that id and getting confused. [[User:PrimeHunter|PrimeHunter]] ([[User talk:PrimeHunter|talk]]) 10:45, 17 March 2025 (UTC)
:::It works in a mobile preview to use a div. [[User:PrimeHunter|PrimeHunter]] ([[User talk:PrimeHunter|talk]]) 18:35, 17 March 2025 (UTC)
:This also means that this text, which exists only for the purpose of the abuse filter, is now present in multiple search engines where those articles are showing up: [https://duckduckgo.com/?t=ffab&q=detention+of+mahmoud+khalil&ia=web Duckduckgo example]. While I get why @[[User:SilverLocust|SilverLocust]] made that edit, they should’ve done it in a way that does not create this slew of issues. One way this could be mitigated is by testing whether adding that as a hidden {{tag|indicator|o}} instead would still work for those purposes, since those do not affect the page output in this way. [[user:stjn|stjn]] 17:31, 19 March 2025 (UTC)
::I've made a [[Special:Diff/1281325360|fix]] (at least temporarily, someone else may have a better suggestion) for the mobile issue and I believe the search issue. Got to go, but I'll subscribe to this section. Email me if there's anything needing a quick response. - Jenson[[User:SilverLocust|SL]] ([[User talk:SilverLocust|SilverLocust]]) 18:06, 19 March 2025 (UTC)
== Template-protected edit request on 19 December 2025 ==
{{edit template-protected|Module:Protection banner/config|answered=yes}}
Let’s adapt “you may submit an edit request ask an administrator (or template editor)” based on whether the page is template-protected or fully protected. It’s not just administrators who can edit template-protected pages. [[User:2600 etc|2600 etc]] ([[User talk:2600 etc|talk]]) 01:29, 19 December 2025 (UTC)
:{{not done for now}}''':'''<!-- Template:ETp --> from what I've seen, this has already been done. Are you able to show a specific example where a protected template's notice does not mention template editors? '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' , [[Editor|<span style="color:black">ed.</span>]] – [[User talk:Paine Ellsworth|''welcome!'']] – <small>06:19, 19 December 2025 (UTC)</small>
== Change all instances of [[Help:Protection]] to [[Wikipedia:Protection policy]] ==
[[Module:Protection banner/config]] contains links to [[Help:Protection]], which has barely been updated since 2008 and is much less useful to new editors than [[Wikipedia:Protection policy]], which contains information on specific protection types. I have demonstrated the changes in [[Module:Protection banner/config/sandbox]] ([https://en.wikipedia.org/w/index.php?title=Module%3AProtection_banner%2Fconfig%2Fsandbox&diff=1329273725&oldid=1254635270 diff]). We already link to [[Wikipedia:Protection policy]] for the vast majority of protected pages, [[Help:Protection]] is only displayed in banners.
[[User:Helpful Raccoon|Helpful Raccoon]] ([[User talk:Helpful Raccoon|talk]]) 23:07, 24 December 2025 (UTC)
== Expiration date not displaying in hover tooltip text on temporarily EC-protected pages ==
{{fyi|pointer=y}} Please see [[Template talk:Pp-extended#Expiration date not displaying in hover tooltip text on temporarily EC-protected pages]] for a bug with this module. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🦌 ([[User talk:Redrose64|talk]]) 12:30, 25 December 2025 (UTC)
:@[[User:Redrose64|Redrose64]] This can be fixed by either removing {{code|ecp}} as a protection reason from [[Module:Protection banner/config]], as I have demonstrated in [https://en.wikipedia.org/w/index.php?title=Module:Protection_banner/config/sandbox&diff=prev&oldid=1329429750 this diff], or just removing the tooltip from {{code|ecp}}. [[User:Helpful Raccoon|Helpful Raccoon]] ([[User talk:Helpful Raccoon|talk]]) 03:33, 26 December 2025 (UTC)
== "Please discuss any changes on the talk page" for protected talk pages? ==
On edit-protected talk pages such as [[Talk:Ali Khamenei]], the protection banner (for the talk page itself) still says: {{tq|Please discuss any changes on the [[Talk:Ali Khamenei#top|talk page]]}}. While the link for the edit request correctly points to [[WP:RFPP/E]], should the content of the message also be adjusted to avoid confusing newcomers with a catch-22? [[User:Chaotic Enby|<span style="color:#8a7500">Chaotic <span style="color:#9e5cb1">Enby</span></span>]] ([[User talk:Chaotic Enby|talk]] · [[Special:Contributions/Chaotic Enby|contribs]]) 00:46, 1 March 2026 (UTC)
== Template-protected edit request on 15 April 2026 ==
{{edit template-protected|Module:Protection banner/config|answered=yes}}
Please implement my changes in [[Module:Protection banner/config/sandbox|the sandbox]], which provides a protection reason for user pages of deceased Wikipedians. (Some cleanup may be required.)
This reason is planned to be used in {{tl|Deceased Wikipedian}}. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 20:33, 15 April 2026 (UTC)
:{{Done}}! [[User:Santiago Claudio|Santiago Claudio]] ([[User talk:Santiago Claudio|talk]]) 08:14, 18 April 2026 (UTC)
== Move discussion in progress ==
There is a move discussion in progress on [[Special:Redirect/page/10413124#Requested move 16 August 2026|Template talk:Protection padlock]] which affects this page. Please participate on that page and not in this talk page section. Thank you. <!-- Template talk:Protection padlock#Requested move 16 August 2026 crosspost --> —[[User:RMCD bot|RMCD bot]] 15:33, 16 August 2026 (UTC)
2jgkrkbkjxi7raw7tu8ev42xltggd3v
370456
370455
2026-09-28T09:13:09Z
ChiK
1136
1 revision imported from [[:en:Module_talk:Protected_page]]
370455
wikitext
text/x-wiki
{{Permanently protected}}
{{talk header}}
{{old moves | date = 16 August 2026 | from = Module:Protection banner | destination = Module:Protected page | result = moved | link = Special:Permalink/1372151786#Requested move 16 August 2026 }}
== Miscategorisation at Wikipedia fully protected templates ==
Extended-confirmed templates are currently erroneously being categorised into [[:Category:Wikipedia fully protected templates]]. That category has a note "For technical reasons, this category also erroneously contains extended confirmed protected templates.", but neither that comment or its edit summary indicates what this "technical explanation" is. I presume this module is responsible for populating that category? Can this reason be explained? (ping {{ping|Mr. Stradivarius|p=}}, in case you know) [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 16:52, 28 August 2020 (UTC)
:{{ping|ProcrastinatingReader}} It sounds like the module needs to be fixed, but I'm not sure of the exact fix needed yet. Do you have an example of a page that is wrongly categorised? — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 00:56, 29 August 2020 (UTC)
:And yes, the module is responsible for populating the category. In particular, the category list is in [[Module:Protection banner/config]], about two-thirds of the way down. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 00:57, 29 August 2020 (UTC)
::{{u|Mr. Stradivarius}}, examples: [[Template:Justice League characters]], [[Template:Palestinian militancy attacks in the 1960s]], [[Template:Gs/topics]] [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 01:29, 29 August 2020 (UTC)
::Very quick glance at 30 secs of reading the comments in the config, but perhaps the issue is just that we don't have a [[:Category:Wikipedia extended-confirmed protected templates]] and thus it's resolving up the ladder to the fully protected ones? A complete and utter guess, though, probably wrong... [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 01:32, 29 August 2020 (UTC)
:::Hmm, looks like Mdaniels was working on something similar a few months ago. I've made a slight adjustment to the config sandbox, perhaps this will work? Not quite sure how to test, though. I tried changing the version at [[Template:Palestinian militancy attacks in the 1960s]] to the sandbox v, but it isn't overriding (I'm guessing the template namespace does some kind of autodetect to insert the lock, hence overrides my manual one). And on that note, just wondering, why does {{t|Pp-extended}} exist rather than just using {{t|Pp}} (which is used for all other protections & at least in source appears to do the same thing as the former?) [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 01:47, 29 August 2020 (UTC)
::::{{ping|ProcrastinatingReader}} It looks like your edit did the trick, and you are right, it is just a matter of editing that table so that extended-confirmed-protected templates don't fall through to the default case. The best way to test would be to add some new tests to [[Module:Protection banner/config/testcases]]. Unfortunately, previous editors have edited the config without updating the test cases, so we will need to fix the existing test cases as well. For live testing, I recommend [[User:Jackmcbarn/advancedtemplatesandbox.js]], which you can use to test the sandbox out on live pages without updating the main module. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 01:57, 29 August 2020 (UTC)
:::::That script is handy, I think C&C recommended it to me a little while ago actually but I forgot about it. Synced the update and it seems to be populating the category (awfully slowly, not too sure how the software decides when to update the categorisation). Also fixed most of the testcases. Very, very well documented modules by the way. Most paid code I come across has far worse documentation. I'm actually somewhat surprised you're not professionally a developer. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 17:16, 29 August 2020 (UTC)
::::::{{ping|ProcrastinatingReader}} Thank you for updating the module, and for fixing the test cases! It is much appreciated. I think you do need the second hyphen in the category name, though: "Wikipedia extended-confirmed protected templates" with one hyphen translates to "protected templates that are extended-confirmed" (whatever that may mean); "Wikipedia extended-confirmed-protected templates" with two hyphens translates to "templates which have extended-confirmed protection", which I think is the one we want here. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 14:08, 30 August 2020 (UTC)
:::::::{{u|Mr. Stradivarius}}, that change is fine with me. By the way, I was looking to find a fully protected page and came across [[:Category:Wikipedia fully protected pages]]. Every article directly in this category isn't fully protected, which confused me a bit. Then I realised [https://en.wikipedia.org/w/index.php?title=Alissa&redirect=no they're redirects]. We tend to put the redirects into [[:Category:Fully protected redirects]], which has 1,375 members. Any idea why some are also/instead being categorised into the former category, which only has 553 members? I think it may be because they're also move protected (the few examples I checked are also in [[:Category:Wikipedia indefinitely move-protected pages]]), but if that's the case I guess we need an extra config case to catch these so they're not falling into the generic category. If my guess is correct, do we want to just change the config case to |all (rather than |edit), or do we want to create a separate category for fully-protected moves?{{pb}}My side question is, why is the module adding them to multiple categories? I know that's good behaviour, but what's the code logic behind it? Is it looking for a category for each type of protection separately (as in: edit/move are put through the hierarchy for a category separately)? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 14:18, 30 August 2020 (UTC)
:::::::After some further digging, this looks like a mess (but not on the part of this module). Looks like this module isn't responsible for the fully protected redirects category, that's done manually and the category added by redirect templates like {{t|R fully protected}}. So we have [https://en.wikipedia.org/w/index.php?title=Armando_(Blogger)&action=edit some redirects] which aren't tagged with a lock and only in the latter cat, and other articles which are only tagged with the lock, and thus only in the fully-protected category. The ones tagged with both the template and the lock being placed in both. This kinda makes the tracking categories an inconsistent mess and a bit useless as a result, really. Not sure what the best way to clean this up is? I know we can check for redirect using Lua, so we can always add that in, but not sure what the performance impact would be? We'd probably need a bot to fix pages like the one I linked, too? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 14:30, 30 August 2020 (UTC)
::::::::{{ping|ProcrastinatingReader}} I've made the change to add the extra hyphen, so the pages should start to slowly filter over to the new category. To answer your earlier question, the updating is done by the [[WP:JQ|job queue]], which can be very slow for category changes caused by a template edit. I've seen it take months before. As for the multiple protection categories, this module only adds one protection category per #invoke, but there can be multiple protection templates on a page, and as you found, there are other templates which add protection categories as well. To fix this in an elegant way, we would probably need to make a separate module for generating protection categories which can be called from all of the different templates involved. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 15:04, 30 August 2020 (UTC)
:::::::::{{u|Mr. Stradivarius}}, hmm, in the case of [https://en.wikipedia.org/w/index.php?title=Alissa&redirect=no this] what's adding the lock (in read mode)? And why is that thing not adding the lock [https://en.wikipedia.org/w/index.php?title=Armando_(Blogger)&action=edit here]? These look quite similar to me? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 15:07, 30 August 2020 (UTC)
::::::::::{{ping|ProcrastinatingReader}} That's [[Template:Rcat shell]], which is calling [[Template:pp-protected]] based on the edit protection level. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 15:14, 30 August 2020 (UTC)
:::::::::::{{u|Mr. Stradivarius}}, I see. Isn't the easiest way to clean this up just to remove {{tlx|pp-protected|small{{=}}yes}} from {{t|Rcat shell}}? Then it would only call {{t|R fully protected}}, which adds the proper category. The only issue would be the lack of lock, then, but we can fix that by adding, to {{t|R fully protected}}, something like: {{tlx|pp|small{{=}}yes|category{{=}}no}}. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 15:35, 30 August 2020 (UTC)
::::::::::::No, don't remove it. That would undo the work carried out by myself and others (such as {{u|Paine Ellsworth}}) over the last few years to try and eliminate the use of dedicated templates that only apply to a specific prot level. So when a page has {{tlx|rcat shell}} it should not also have any other protection template, not even {{tlx|r protected}} or similar. The thing about {{tlx|pp-protected}} is that it autodetects the prot level and doesn't need adjusting when a page is raised from semi-prot to full-prot, etc. If you find a page (redirect or otherwise) in the "wrong" protection category, first apply a [[WP:NULLEDIT]] and see if that resolves it. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 09:28, 31 August 2020 (UTC)
:::::::::::::{{u|Redrose64}}, these are in the wrong categories due to an inherent bug in the templating. Null edits won't resolve the issue (also, I can't null edit a fully protected page). Please see discussion above. The change I suggested shouldn't defy your efforts. {{t|r protected}} accounts for other protection levels as well, and so moving {{t|pp}} into there for this case wouldn't cause any negative effects as far as I can see. If you're seeing something I'm not, please elaborate. To be clear, I'm only proposing moving it for the fully protected case (which necessarily calls {{t|r protected}}, so this doesn't cause any omissions). There's absolutely no scenarios I can see where this goes wrong? See sandboxes for example. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 20:17, 31 August 2020 (UTC)
::::::::::::::Well {{u|ProcrastinatingReader|PR}}, seems you're coming in on an old problem we've been noticing and trying to fix for several years now. On this talk page alone it goes back at least to 2016 and when {{tl|Redirect category shell}} was the {{tl|This is a redirect}} template. This challenge applies not just to Extended-confirmed-protected but also to others like the {{tl|-r}} redirect, which is template-protected. There appear to be so many layers of this issue that some seriously good admins and template editors, as well as Lua experts have tried to fix it and then apparently put it off to tackle more serious challenges that come up. It's a really tough nut to crack, so I wouldn't get my hopes up for a solution any time soon. However, I myself do hope that it will eventually be well-resolved. '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>12:01, 1 September 2020 (UTC)</small>
{{od|::::::::::::::}}
{{u|Paine Ellsworth}}, do you see any flaws with my proposed solution? Obviously it would only affect the niche case of fully-protected redirects using one of the two templates (not the other ones, which would remain as broken as they are now), but since I cannot see it causing any issues for that case I think my solution it's better than nothing, and at least it would make the fully-protected category less useless for other purposes. Noting that the shell necessarily calls {{t|r protected}} makes this an easy case to solve, I think. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 12:08, 1 September 2020 (UTC)
:You appear to be looking to remove the {{tl|pp-protected}} template from the shell, thus changing:
<pre>
{{#switch: {{PROTECTIONLEVEL:edit}}
|sysop={{pp-protected|small=yes}}{{R protected|embed=yes}}
|templateeditor={{pp-protected|small=yes}}{{R template protected|embed=yes}}
|extendedconfirmed={{pp-protected|small=yes}}{{R extended-protected|embed=yes}}
|autoconfirmed={{pp-protected|small=yes}}{{R semi-protected|embed=yes}}
</pre>
:to:
<pre>
{{#switch: {{PROTECTIONLEVEL:edit}}
|sysop={{R protected|embed=yes}}
|templateeditor={{pp-protected|small=yes}}{{R template protected|embed=yes}}
|extendedconfirmed={{pp-protected|small=yes}}{{R extended-protected|embed=yes}}
|autoconfirmed={{pp-protected|small=yes}}{{R semi-protected|embed=yes}}
</pre>
:is that correct? And then further, to get back the lock icon that would be lost, you propose to insert the {{tl|pp-protected}} template into the {{tl|R fully protected}} rcat template? Where exactly would you insert it? '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>12:38, 1 September 2020 (UTC)</small>
::{{u|Paine Ellsworth}} that's correct. For your question, see [[Template:R fully protected/sandbox]]. Both sandboxes are updated with the change I'm proposing.{{pb}}(the second option is to keep both templates as-is, but just add a |category=no to the shell. This works the same to fix our categorisation issue, but since currently half the fully-protected redirects don't use the shell, they don't have the lock. I think the above approach is better so we have the lock in all cases, as well as fixing categorisation). [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 19:43, 1 September 2020 (UTC)
:::Like you, {{u|ProcrastinatingReader|PR}}, I'm unable to test your changes on fully-protected redirects; however, I can test the changes on template-protected redirects and found that they are removed from {{cat|Wikipedia template-protected templates}} when the {{tl|Redirect category/sandbox}} is used. This leads me to think that your changes will accomplish what you want them to do. One problem is that your changes did not remove the template-protected redirect from {{cat|Wikipedia fully protected pages}}, and that is one of our main issues. So your solution might very well be a good partial fix (that would need testing by an admin to confirm); however, it does not address other important issues I have with incorrect and improper categorization as I've raised elsewhere on this talk page. '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>10:18, 2 September 2020 (UTC)</small>
::::Thanks for testing, {{u|Paine Ellsworth}}. That problem you note unfortunately won't be fixed by these changes, as this modification in the same way applied to TE redirects won't work in the same way. That would require a new rule in the module and some modifications to the templates, I believe, but I haven't looked into the case of TE redirects closely, thus only propose a change for the full-protected redirect case. May look into the other cases later on. The issues in others should also become more apparent once the fully-protected cat isn't polluted with nonsense.{{pb}}I've tested my changes on [[Alissa]] (a fully-protected redirect) using the templatesandbox script suggested above, and it does correctly categorise this redirect. If any admins wish to test further, on the live redirect by changing it to the sandbox, that'd be great. Otherwise, I think there's sufficient evidence to make this relatively straight-forward change in the coming days, if no objections to the technical details are made. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 11:38, 2 September 2020 (UTC)
:::::You're welcome, {{u|ProcrastinatingReader}}''!'' Yes, it would be very helpful if the admins who've been working on this would test the FP redirects with the sandboxed code. Another question I have would be what do you think would happen if, instead of placing <code><nowiki>{{pp|small=yes|category=no}}</nowiki></code> in the {{tl|R fully protected}} rcat, what would be the difference if we just added the {{para|category|no}} parameter to the existing {{tl|pp-protected}} template (which of course redirects to template {{tl|pp}}) in the {{tl|Rcat shell}}? Would that accomplish the same thing? or do you think there would be different results? '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>12:14, 2 September 2020 (UTC)</small>
::::::{{u|Paine Ellsworth}}, in terms of categorisation, it would be exactly the same result. However, a lot of fully-protected redirects do not use the shell, and instead only use {{t|R fully protected}}. As a result, they don't have the lock icon in the top right. I think the approach suggested would also correct this 'error' (if you like) by adding the lock in those cases too, and I think the lock should be there, so my initial thoughts were that this instead is a better approach. As you (and others) have dealt with this issue over a longer period of time than I, I'd be interested to hear your thoughts on this matter. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 12:33, 2 September 2020 (UTC)
:::::::I would support adding the pp template to the fully-protected rcat as an interim solution, and I would also support adding the {{para|category|no}} parameter to the shell for all the protection templates in the shell. May as well add the pp template to {{tl|R template-protected}}, {{tl|R extended-protected}} and {{tl|R semi-protected}} as well, because when those are used without the shell, they too do not add a lock to the top of the redirect page.
:::::::A better solution in the long run might be for a bot to find all of the protected redirects and replace the protection rcats with the rcat shell; however, some editors might complain if other appropriate rcats are not also added to justify the use of the shell. And that could not be facilitated by a bot. That would have to be done manually, which would take an army of Wikignomes to accomplish. < sigh > '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>13:29, 2 September 2020 (UTC)</small>
::::::::I will look into those templates too, when I have a chance, to confirm there would also be no adverse affects of doing so. I agree we need a better solution to really address all components of this issue. I raised the idea of a bot above. Issue is that neither of us could operate the bot (it would have to be adminbot to edit fully-protected redirects). Not sure of many active admins who have experience & interest in this area, so unless you would like to put in an RfA and operate it I think the bot point is moot. WikiGnomes (even if logistically possible) wouldn't help for same reason, fully-protected edit requests take forever to process (and I've only seen 1 or 2 admins who actively attend to them). Unlikely 1000 of them would be done. Even if they could be, it's double the amount of time taken per redirect (time of proposer + time of admin reviewer). [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 15:01, 2 September 2020 (UTC)
====Move-protected====
{{u|Mr. Stradivarius}}, thoughts on what to do about move-protected pages to a non-sysop level? Currently, they just default up the chain to [[:Category:Wikipedia fully protected pages]]. I saw a testcase for this that was failing, so I made [[Special:Diff/976938143]], but really this seems wrong. Doesn't exactly make sense to categorise TE move-protected into TE. We do have categories for sysop move protection, eg <code>['all|template|all|sysop|move'] = 'Wikipedia move-protected templates'</code>, but none really for lesser move protection, and it kinda seems somewhat silly to have "Wikipedia template-editor move-protected templates"? Hence, not sure what solution would be best here. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 19:11, 6 September 2020 (UTC)
:Why not introduce a separate category tree for move-protection? From [[Wikipedia:Move protection]] it is unclear, how many different levels of move protection there is except {{tq|fully move-protected pages}}. Other relevant bits:
:* {{tq|Fully edit-protected pages are also implicitly move-protected.}}
:* {{tq|All files are implicitly move-protected; only file movers and administrators can move files.}}
: —[[User:Andrybak|andrybak]] ([[User talk:Andrybak|talk]]) 21:38, 6 September 2020 (UTC)
:*I think in theory you can move protect to all levels, but for the most part non-sysop move-protection not matching edit protection is quite a rare scenario. It happens on some mainspace pages (usually to ECP move), there's a couple templates that have this (edit=semi, move=TE). I think many of them are IAR actions, rather than codified in guidelines, but reasonable protections nevertheless. A move category tree is one idea, yeah, and not awfully difficult to implement, at least in the module. There's a bunch of scattered templates that would need to be double-checked, as well. It would be worth noting that if we did that, stuff like [[:Category:Wikipedia move-protected templates]] should probably be a cat containing child cats only, so we'd have to make sure no bots are going to be troubled by that. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 22:02, 6 September 2020 (UTC)
:{{ec}} {{to|ProcrastinatingReader}} I'd also like to hear thoughts from [[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]], [[User:MSGJ|Martin]], [[User:Anomie|Anomie⚔]], [[User:Wbm1058|wbm1058]], [[User:Xaosflux|<span style="color:#FF9933; font-weight:bold; font-family:monotype;">xaosflux</span>]] and [[User:Jackmcbarn|Jackmcbarn]] that would be helpful on this issue. As a "tough nut to crack", we need all the help we can get. '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>21:48, 6 September 2020 (UTC)</small>
::{{replyto|Andrybak}} Move protection has exactly the same five levels as edit-, upload- and create-protection, i.e. none, semi, EC, template and full. However, since IPs and unconfirmed editors cannot move pages, a page with no move protection is effectively semi-protected for moves. It is rare to have a page that is explicitly semi-prot for moves but has no edit protection; these are usually mistakes and, when discovered, are often reduced to having no move protection for the sake of tidiness. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 11:10, 7 September 2020 (UTC)
====Userspace scripts====
We've got a lot of cat pollution where someone adds a userspace script and chucks a <code><nowiki>// {{pp-template}}</nowiki></code> or something into their css/js files, causing a gold lock and sysop-protected categorisation (eg [[User:GoldenRing/common.js]], [[User:BeywheelzLetItRip/common.css]], [[User:AHollender (WMF)/sandbox/2019–20 coronavirus pandemic data/2019–20 coronavirus pandemic data/styles.css]], etc). Rather than have IAdmins constantly removing this stuff, perhaps it's a good idea for this module should just not show lock or categorise (basically just skip) any .js/.css files in userspace (which are all IAdmin protected, globally)? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 22:15, 6 September 2020 (UTC)
:Done [[Module:Protection banner/sandbox|in sandbox]] if anyone wants to take a look. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 22:38, 6 September 2020 (UTC)
::I took a look at the code. It looks basically good - thanks for contributing it. :) There are a couple of things I would change:
::* Instead of having the code in <code>Protected:isProtected()</code>, I would put it directly in <code>Protection:makeCategoryLinks()</code>, or maybe better, put it in a dedicated <code>Protection:shouldBeCategorized()</code> method and call that from makeCategoryLinks. Saying user .js or .css pages aren't protected when they effectively are protected is a bit confusing, and I think that moving the code would make the intention more explicit, and maybe avoid future bugs.
::* It could do with some test cases at [[Module:Protection banner/testcases]].
::Best — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 15:32, 7 September 2020 (UTC)
:::{{u|Mr. Stradivarius}}, thanks for reviewing! Re bullet 1: I popped it into <code>:isProtected()</code> to also stop it showing the lock, as well as stopping the categorisation, since my thought was that showing a gold sysop lock on these types of files seems slightly misleading & undesirable. Also seemed like a good idea to pop them into the "wrong categories" cat to have their // {{tlf|pp-template}} removed seemed like a good idea. Easiest way to achieve all points was to edit :isProtected(). Of course, open to thoughts on if any of these fixes are themselves undesirable. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 16:11, 7 September 2020 (UTC)
::::{{ping|ProcrastinatingReader}} I see - if we need to suppress the padlock icons as well, then I agree that <code>:isProtected()</code> is a very convenient place to add the code. I think the problem is just one of naming, then, which I [[Special:Diff/977374710|had a go at tackling]] in the sandbox. I couldn't think of a good name for a method that means "the template should output a protection category, and a banner/padlock icon", though, so I cheated by making an alias. There's probably a better way of doing it. Also, I fixed the test cases, which appeared to have been broken for quite some time. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 14:24, 8 September 2020 (UTC)
:::::{{u|Mr. Stradivarius}}, looks good to me! [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 19:27, 9 September 2020 (UTC)
:::::{{u|Mr. Stradivarius}}, is this good to merge into live? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 19:08, 15 September 2020 (UTC)
::::::{{ping|ProcrastinatingReader}} Not yet - there are some test cases missing, and I noticed an edge case that the user JS/CSS code needs to cover (i.e. user pages only have the JS/CSS content type if they are a subpage; <code>User:Foo.css</code> would be a wikitext page). — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 00:20, 16 September 2020 (UTC)
:::::::Interesting. Technically those pages could be CSS too, if manually changed. The best way to check all would be to use contentModel I guess, but it’s a “maybe expensive function”; a check on the page title will probably handle 99.9% of cases. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 09:54, 16 September 2020 (UTC)
::::::::Using the content model shouldn't be a problem, as we would only be making one expensive function call. And I'm guessing the result would be cached per page, so there would probably still be only one expensive function call even if we have multiple #invokes on a page. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 04:19, 19 September 2020 (UTC)
::::::::Also, checking the [[mw:Extension:Scribunto/Lua reference manual#Expensive properties|docs]], it looks like fetching the content model for the current page doesn't count towards the expensive function count, so it shouldn't actually have any effect. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 07:18, 19 September 2020 (UTC)
:::::::::I've just put the code up live - let me know if you notice any issues. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 13:07, 19 September 2020 (UTC)
::::::::::{{u|Mr. Stradivarius}}, looks good right now. Am curious about one thing. I know categories don't update with contents immediately, but I thought a [[Wikipedia:Purge#forcerecursivelinkupdate|purge with forcerecursivelinkupdate]] on the page immediately updated that? Tried on a couple but they don't disappear from [[:Category:Wikipedia fully protected pages]] for some reason - any idea? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 18:33, 19 September 2020 (UTC)
:::::::::::It's not worked for months, if not longer: see [[Wikipedia:Village pump (technical)/Archive 181#Sending a POST to the API to purge]]. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 21:45, 19 September 2020 (UTC)
====Redirect sub-categorisation====
[[:Category:Fully protected redirects]] is a little useless for maintenance purposes, because it has 1,500 members with no subcategories. Ideally this should be split up, e.g. redirects of alternate name of a BLP, redirects protected due to vandalism, project redirects pre-emptively protected, etc. Discussed briefly above in [[Module_talk:Protection_banner#Categorization_of_protected_redirects]], {{u|Mr. Stradivarius}} gave 3 options which I also think are the best few. I think it can easily be done with this module. We could create a bunch of wrappers and get around the named caveat by adding a title check for isRedirect if the wrapper is for a redirect (probably easiest option). These would use the reason key. It would also keep per-namespace options open, but we wouldn't be able to use normal banner data (could get around this by having a -redirect suffix in reason for cat, but fetching data from parent for lock). There's also option 3 of making a redirect key in the algorithm, but that's maybe a bit of work (Mr. S or Jack might know best). [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 14:53, 7 September 2020 (UTC)
'''Update'''
Making a bit of a laundry list of protection category 'issues', feel free to add/change. I guess we can figure out solutions from there. {{u|Paine Ellsworth}} may be interested? Re. redirects, I know {{u|Mr. Stradivarius}} suggested [[Module_talk:Protection_banner#Categorization_of_protected_redirects|above]] the ideas of {{tq|Add redirect detection as a full-blown key to the protection category algorithm}}, or a new module to deal with redirects. I also had [[Special:Diff/977097115/977183814|an idea]] of suffixing -redirect to the reason. I think the adding to algorithm approach is best, the issue overlaps into non-redirects and I think it's easier than having a near-duplicate module. However, I think it may also just be better to cut our losses, focus on fixing & having categorisations based mainly on protection level and duration (indef/temp), and suggesting Petscan if one wishes to get useful stuff out of them. For example, to figure out extended confirmed protections NOT DS one can use the "has none templates", on talk page, of "ArbCom Arab-Israeli enforcement" + [...]. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 17:20, 26 September 2020 (UTC)
In both cases, here's some issues:
* [[:Category:Wikipedia move-protected pages]] needs to be able to handle non-admin move protections (currently they just go into the fully-prot cat). But since each run of the module only categorises once, it would require completely changing the category tree structure I think (like the standard protections) to make this work smoothly? Or, we can just mash everything up into one move-protected category per protection level (ditch the namespace stuff) and suggest Petscan for namespace categorisation (likely the easiest option?)
* [[:Category:Wikipedia protected biographies of living people]] is ineffective, and hence it (and its subcategories) nearly empty. Admins rarely use {{t|pp-blp}}, Twinkle just adds {{t|pp-30-500}}, e.g. [[Sushant Singh Rajput]], with a protection reason usually including "Violations of the biographies of living persons policy" (but not always). A few things a bot can do here, but I note that Petscan can also be used for the same purpose, so do we just want to scrap {{t|pp-blp}} and only categorise by protection level instead? It seems to at least be used for semi-protections, but I wonder how many semis are just mashed up in other cats, like [[:Category:Wikipedia semi-protected pages]] (a lot, at a glance). Similar issue with [[:Category:Wikipedia extended-confirmed-protected pages]].
::{{to|ProcrastinatingReader}} yes, I'm very interested and watching all this closely. Much of it seems above my pay grade and ken, but I read and watch anyway hoping this will be resolved by those who know more than I do about these things. '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>15:57, 27 September 2020 (UTC)</small>
== Catonly ==
{{re|Mr. Stradivarius}} I made a change to sandbox that adds a parameter called "catonly". If it's "yes", then the banner/padlock will be hidden and only the category will be provided. Added 2 testcases which pass. This would implement [https://en.wikipedia.org/wiki/Wikipedia:Templates_for_discussion/Log/2020_October_25#Template:Pp-move this TfD]. Is that good to go? [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 19:47, 15 July 2021 (UTC)
:{{ping|ProcrastinatingReader}} Thank you for implementing this! I really appreciate it when someone takes the time to write test cases. :) Looks like you forgot to sync the latest changes from the main module (see the [https://en.wikipedia.org/wiki/Special:ComparePages?page1=Module%3AProtection+banner&rev1=1013845490&page2=Module%3AProtection+banner%2Fsandbox&rev2=1033774702&action=&diffonly=&unhide= diff]), so you should resync and check that your changes still pass the unit tests. We could probably do with another test case to show that a padlock icon is shown when {{para|catonly|no}}. And maybe a similar one for categories if you want to be thorough. Also, I see that you're duplicating the UNIQ...QINU pattern to detect strip markers - that should probably be made its own variable, in case it needs to be changed in the future. The sandbox code looks fine, although as that if/then condition gets more complex, I would be tempted to split it out into its own function for readability. Let me know if you want me to clarify anything, and once you've fixed the above issues feel free to deploy the code if all the unit tests pass. Best — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 11:45, 16 July 2021 (UTC)
::Thanks for reviewing! Added those tests and added a test for banners as well. Also split that pattern into a variable. All tests pass, so I've deployed the code. [[User:ProcrastinatingReader|ProcrastinatingReader]] ([[User talk:ProcrastinatingReader|talk]]) 12:01, 16 July 2021 (UTC)
== Template-protected edit request on 3 February 2022 ==
{{edit template-protected|Module:Protection banner/config|answered=yes}}
Please add the following to [[Module:Protection banner/config]] near line 772:
<pre>
['all|module|all|extendedconfirmed|edit'] = 'Wikipedia extended-confirmed-protected modules',
</pre>
[https://en.wikipedia.org/wiki/Special:ProtectedPages?namespace=828&type=edit&level=extendedconfirmed&size-mode=min&size= ECP modules] currently categorize into [[:Category:Wikipedia fully-protected modules]], this would move them to [[:Category:Wikipedia extended-confirmed-protected modules]]. [[User:AntiCompositeNumber|AntiCompositeNumber]] ([[User talk:AntiCompositeNumber|talk]]) 23:27, 3 February 2022 (UTC)
: {{Done}}: [[Special:Diff/1069763876]]. —[[User:Andrybak|andrybak]] ([[User talk:Andrybak|talk]]) 23:50, 3 February 2022 (UTC)
::@[[User:Andrybak|Andrybak]] Thanks! [[User:AntiCompositeNumber|AntiCompositeNumber]] ([[User talk:AntiCompositeNumber|talk]]) 00:02, 4 February 2022 (UTC)
== Issues with pending changes alongside generic protection ==
At [[Chimpanzee]], the page is both pending changes and semi-protected. {{tl|pp-pc}} does not render, only {{tl|pp-vandalism}} does. Is this expected? <span class="nowrap">—'''[[User:CX Zoom|CX Zoom]]'''[he/him]</span> <sup class="nowrap">([[User talk:CX Zoom|let's talk]] • {[[Special:Contributions/CX Zoom|C]]•[[User:CX Zoom/X|X]]})</sup> 09:51, 5 August 2022 (UTC)
:{{replyto|CX Zoom}} Yes, only one kind of protection is reported - the "stronger" one. In this case, the {{tlx|pp-vandalism}} picks up the [[WP:SEMI|semi-protection]] for editing which prevents all edits by unconfirmed users; whilst the {{tlx|pp-pc}} picks up the [[WP:PC1|pending changes]] prot, also for editing, which ''allows'' edits by unconfirmed users but doesn't make them visible unless accepted. So in this case the semi-prot is the stronger one. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 20:46, 5 August 2022 (UTC)
== Using plain English for protection levels ==
The recent high-profile case of readers not understanding protection icons at [[Recession]] led me to review the tooltip text, and it seems that it leaves something to be desired. The messages are currently in forms like {{tq|This article is semi-protected until April 7, 2022 at 1:47 UTC.}} Readers don't know what "semi-protected" or "extended-protected" means, and very few will click through to the [[WP:protection|protection policy page]] to find out. I suggest that we change the wording to plain English to help make it easier to understand. For semi-protection, I'd suggest {{tq|New users cannot edit this article until April 7, 2022, at 1:47 UTC}} (note also two grammar fixes: the added comma and removed period). For EC, {{tq|Only experienced users can edit this article until...}} Thoughts? <span style="color:#AAA"><small>{{u|</small><span style="border-radius:9em;padding:0 5px;background:#088">[[User:Sdkb|<span style="color:#FFF">'''Sdkb'''</span>]]</span><small>}}</small></span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 18:21, 28 August 2022 (UTC)
: The idea seems reasonable in theory, but the wordings you proposed don't work as the language used for semi-protection and for extended-confirmed-protection read like synonyms of each other. [[User:Pppery|* Pppery *]] [[User talk:Pppery|<sub style="color:#800000">it has begun...</sub>]] 15:10, 29 August 2022 (UTC)
::What high-profile case? There doesn't seem to be anything on its talk page. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 09:15, 30 August 2022 (UTC)
:::@[[User:Pppery|Pppery]], do you have a suggested alternative? Users won't be seeing both notices at the same time, and I can't think of an intuitive word for those in the 10-500 edit range, so I'm not sure we can do any better. Perhaps for EC, {{tq|New and intermediately experienced editors cannot edit...}}, but that's a little wordier.
:::@[[User:Redrose64|Redrose64]], https://slate.com/technology/2022/08/wikipedia-recession-article.html. <span style="color:#AAA"><small>{{u|</small><span style="border-radius:9em;padding:0 5px;background:#088">[[User:Sdkb|<span style="color:#FFF">'''Sdkb'''</span>]]</span><small>}}</small></span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 14:29, 30 August 2022 (UTC)
::::Having mulled this over for a while, I can't come up with any wording clearer than my original proposal. I don't think the synonym concern is a blocker, since the tooltips won't be appearing alongside each other and it's fairly intuitive that there's an intermediate level in between "new user" and "experienced user".
::::The config page [[Module:Protection_banner/config#L-922|currently relies on PROTECTIONLEVEL]], so improving it will require some coding; would anyone with Lua skills be interested in taking that on? <span style="color:#AAA"><small>{{u|</small><span style="border-radius:9em;padding:0 5px;background:#088">[[User:Sdkb|<span style="color:#FFF">'''Sdkb'''</span>]]</span><small>}}</small></span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 18:06, 5 October 2022 (UTC)
:::::{{ping|Sdkb}} I've decided to give this a quick go. Note that I've entirely focused on the padlocks here - the regular big banner text is unaffected, since it's seen less often and I'm not sure you wanted anything there to be changed. I've tried to make the changes as light as possible (since the multiple class structures in the main module with objects being created all over the place is, at best, hard to learn on the spot), and I've come up with a basic config approach (See [[Module:Protection banner/config/sandbox#L-559|here]]) (Note that the move and upload sub-tables could be excessive, since I've never seen their padlocks appear normally, but I've implemented some wording anyways). I've also removed the tooltip from the template and ecp options in the banners table, since this would break messaging (see the thread just below), and also applied the comma you suggested above into the time formatting, though I'm not sure about removing the period (it's possible, but not elegant, likely being a "does the final message end with 'UTC' " check).
:::::Since showing tests for this module can be quite hard, here are the 4 main protection levels with the messages as of the current sandbox version: [[File:Full-protection-shackle.svg|20px|link=Wikipedia:Protection policy#full|alt=Page protected|Only admins can edit this page until January 1, 2022, at 00:00 UTC.]] [[File:Template-protection-shackle.svg|20px|link=Wikipedia:Protection policy#template|alt=Page template-protected|Only experienced template editors and admins can edit this page until January 1, 2022, at 00:00 UTC.]] [[File:Extended-protection-shackle.svg|20px|link=Wikipedia:Protection policy#extended|alt=Page extended-protected|Only experienced users can edit this page until January 1, 2022, at 00:00 UTC.]] [[File:Semi-protection-shackle.svg|20px|link=Wikipedia:Protection policy#semi|alt=Page semi-protected|New users cannot edit this page until January 1, 2022, at 00:00 UTC.]]
:::::Hope this fits roughly what you were thinking. Any comments or requests, just ask. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 12:31, 9 December 2022 (UTC)
::::::@[[User:Aidan9382|Aidan9382]], sorry for the delayed reply. That looks excellent! I'd support implementing. <span style="color:#AAA"><small>{{u|</small><span style="border-radius:9em;padding:0 5px;background:#088">[[User:Sdkb|<span style="color:#FFF">'''Sdkb'''</span>]]</span><small>}}</small></span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 06:02, 1 March 2023 (UTC)
:::::::@[[User:Aidan9382|Aidan9382]], just wanted to circle back, where are we at with this? Cheers, <span style="border:3px outset;border-radius:8pt 0;padding:1px 5px;background:linear-gradient(6rad,#86c,#2b9)">[[User:Sdkb|<span style="color:#FFF;text-decoration:inherit;font:1em Lucida Sans">Sdkb</span>]]</span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 01:34, 6 March 2024 (UTC)
::::::::{{ping|Sdkb}} (This was over a year ago? God, swear this wasn't that long ago) I haven't made any changes since the last sandbox edit related to this, but that version should be working since its what I used to generate the padlocks in my 9 december message. I've re-synced the config changes back into the current config sandbox version, and the module changes are already still in the sandbox. Changes for the protection messages are welcome since I'm not the best at writing that kind of stuff. You can see an example padlock message in action at [[User:Aidan9382/SafeEnvironmentTesting]] (you can adjust the demolevel as needed to test each padlock - you can't test multiple at once due to the indicators all being named the same). [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 07:44, 6 March 2024 (UTC)
== Tooltip/title does not match the actual protection level ==
While the symbol displayed by templates like {{tl|pp-extended}}, and the link placed behind the symbol, automatically match the actual protection level, the tooltip/title doesn't.
Specifically, the article [[Russia]] is currently full-protected and displays a golden "F" lock, with a link pointing towards the "#full" section of the protection policy. Its title attribute, however, is "This article is extended-confirmed protected".
This has been noticed by [[User:Jishiboka1|Jishiboka1]] at [[Talk:Russia]] and should probably be fixed in the module. [[User:ToBeFree|~ ToBeFree]] ([[User talk:ToBeFree|talk]]) 11:44, 1 October 2022 (UTC)
:Note: After some tampering with the module and some test runs, I've found out what the issue is. The module seems to be relying entirely on the template itself for the banner text it uses which is fetched from [[Module:Protection banner/config]]. You can see an example of this if you try to use {{tl|pp-template}} on a semi-protected page - it'll display the template banner's text from the config, but with the protection level at semi. This works ''most'' of the time, as the tooltip messages use <code>${PROTECTIONLEVEL}</code>, which means the message adapts to the protection level of the page. However, the tooltip for ecp is hard-coded to read <code>This ${PAGETYPE} is extended-confirmed protected</code>, which is where the issue is coming from. A solution to this could be just changing the tooltip message to <code>This ${PAGETYPE} is ${PROTECTIONLEVEL}</code>, so it matches the other options' format. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 13:09, 1 October 2022 (UTC)
{{edit template-protected|Module:Protection banner/config|answered=yes}}
Apparently forgot to do this. Based off of the discussion above, could the <code>This ${PAGETYPE} is extended-confirmed protected</code> message on line 224 be changed to <code>This ${PAGETYPE} is ${PROTECTIONLEVEL}</code> to avoid the module displaying the wrong message when {{tl|pp-extended}} (or similar) is used? Thanks. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 18:38, 5 October 2022 (UTC)
:{{edited2}}. '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' , [[Editor|<span style="color:black">ed.</span>]] [[User talk:Paine Ellsworth|<sup>put'r there</sup>]] <small>04:19, 6 October 2022 (UTC)</small>
== Template configuration feedback ==
Some of the strings in [[Module:Protection_banner/config]] could be more consistent with how page protection works on Wikipedia.
1. The non-iconified page protection template does not link [[Wikipedia:Request for edit]] when a page and its talk page are both protected as specified in the [[Protection_policy#Semi-protection|semi-protection policy]]. It would be better if that could happen automatically, maybe just add that always on talk pages when they are protected? If that's not possible, it would be good if there was an option to the template to add that link.
2. Several strings in the configuration state "or [[Special:UserLogin/signup|create an account]]" in reference to making edits to semi-protected pages. That seems misleading when a new account cannot edit semi-protected pages until it is old enough to be autoconfirmed.
3. Would it be possible to change the default settings so that '''small=yes''' would be set by default on articles that are edit protected (not move protection or any kind of protection on talk pages, though). It seems like that's the preferred practice so why not make it the default?
[[User:Daniel Quinlan|Daniel Quinlan]] ([[User talk:Daniel Quinlan|talk]]) 21:53, 10 July 2023 (UTC)
== Template-editor move-protected? ==
(Regarding [[Module:Protection banner/config#L-758]].)
It doesn't seem helpful to categorize a template into [[:Category:Wikipedia template-protected templates]] when it's only protected for ''moves'' and not for ''edits''. For example, [[Template:Bill Clinton]] is in that category but can be edited (but not moved) freely.
I suggest either (A) <s>removing that line</s> <ins>[edit: not adding any category]</ins>, similar to how currently there is no category for a page that is extended-confirmed move-protected but not edit-protected or (B) creating new categories [[:Category:Wikipedia template-editor move-protected templates]] and [[:Category:Wikipedia extended-confirmed move-protected pages]] (or similar). [[User:SilverLocust|<small style="color:#667;background:#fff;border:2px solid;border-radius:.4em;padding:0 .3em">SilverLocust</small>]] <small class="plainlinks sysop-show extendedmover-show">[//w.wiki/8xwX 🃏]</small> [[User talk:SilverLocust|💬]] 02:26, 27 January 2024 (UTC)
:{{reply to|SilverLocust}} That line was added by [[special:diff/976938143|this 00:07, 6 September 2020 edit]] per the discussion at [[#Move-protected]] above. – [[User:Wbm1058|wbm1058]] ([[User talk:Wbm1058|talk]]) 03:30, 8 February 2024 (UTC)
::To be more precise, that change wasn't added ''per'' the discussion at [[#Move-protected]], it was added ''followed by'' the discussion at [[#Move-protected]] that the change wasn't quite correct and should have some better solution. Nobody there claimed that the category now provided is correct, just that it's there so that it doesn't default to "fully protected pages".
::But that just suggests that rather than removing the line entirely, option (A) would be to move that line up to the [[Module:Protection banner/config#L-735|2nd line]] within protectionCategories (so that it has lower priority than all of the categories below it) and to replace it with <syntaxhighlight lang="Lua">['all|template|all|templateeditor|move'] = '' -- there is currently no category for template-editor move-protected pages</syntaxhighlight>
::And I suppose there could be an option (C) — combining TE move-protected pages into [[:Category:Wikipedia move-protected templates]]. [[User:SilverLocust|<small style="color:#667;background:#fff;border:2px solid;border-radius:.4em;padding:0 .3em">SilverLocust</small>]] [[User talk:SilverLocust|💬]] 13:46, 27 February 2024 (UTC)
:::[[Module:Protection banner/config#L-734|The first line]] of protectionCategories (which is the default) should also be changed to <syntaxhighlight lang="Lua">['all|all|all|all|all'] = 'Wikipedia miscellaneous protected pages',</syntaxhighlight> as a new tracking category, rather than defaulting to 'Wikipedia fully protected pages' when none of the below options match. And that would allow incorrect categories to just be removed rather than shoehorned into some not-quite-correct category. [[User:SilverLocust|<small style="color:#667;background:#fff;border:2px solid;border-radius:.4em;padding:0 .3em">SilverLocust</small>]] [[User talk:SilverLocust|💬]] 20:11, 27 February 2024 (UTC)
== Edit request 28 February 2024 ==
{{Edit template-protected|Module:Protection banner/config|answered=yes}}
<syntaxhighlight lang="Lua> ['all|all|all|templateeditor|move'] = 'Wikipedia template-protected pages other than templates and modules',
['all|template|all|extendedconfirmed|move'] = 'Wikipedia extended-confirmed-protected templates',</syntaxhighlight>
Please [[Special:Diff/1210714229|add these two new lines (sandbox diff)]] to the protectionCategories object in the /config so that
# pages like the redirect {{no redirect|Template talk:Db-a1}} will not be miscategorized into [[:Category:Wikipedia fully protected pages]] (via {{tl|pp-move}}, which is called by {{tl|Redirect category shell}}) and
# extended-confirmed templates like [[Template:Israel–Hamas war]] will not be categorized into both [[:Category:Wikipedia extended-confirmed-protected pages]] (via {{tl|pp-move}}) and the subcategory [[:Category:Wikipedia extended-confirmed-protected templates]] (via {{tl|pp}}) rather than just the subcategory.
[[User:SilverLocust|<small style="color:#667;background:#fff;border:2px solid;border-radius:.4em;padding:0 .3em">SilverLocust</small>]] [[User talk:SilverLocust|💬]] 02:02, 28 February 2024 (UTC)
:I can make this edit now, so I shall do my own request. (This is separate from the suggestions in the previous section.) [[User:SilverLocust|<small style="color:#667;background:#fff;border:2px solid;border-radius:.4em;padding:0 .3em">SilverLocust</small>]] [[User talk:SilverLocust|💬]] 12:39, 1 March 2024 (UTC)
== Small bug ==
I noticed that a semi-protected article that has the extended-protection template applied to it displays the semi-protection icon, but with a tooltip that says "This article is semi-protected#semi". Not the biggest deal, but if anyone wants to get rid of the "#semi" at the end, that would be nice. <span style="border:3px outset;border-radius:8pt 0;padding:1px 5px;background:linear-gradient(6rad,#86c,#2b9)">[[User:Sdkb|<span style="color:#FFF;text-decoration:inherit;font:1em Lucida Sans">Sdkb</span>]]</span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 21:09, 27 August 2024 (UTC)
:Which article? The anchor shouldn't be appearing since it should be part of the lock's link, and some quick testing myself doesn't seem to cause this case. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 21:39, 27 August 2024 (UTC)
::I found it on [[Tim Walz]], which had EC protection that expired (and I then replaced with semi-protection). <span style="border:3px outset;border-radius:8pt 0;padding:1px 5px;background:linear-gradient(6rad,#86c,#2b9)">[[User:Sdkb|<span style="color:#FFF;text-decoration:inherit;font:1em Lucida Sans">Sdkb</span>]]</span> <sup>[[User talk:Sdkb|'''talk''']]</sup> 21:57, 27 August 2024 (UTC)
:::Seems fine to me, the tooltip is just "This article is semi-protected". [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 08:35, 28 August 2024 (UTC)
== Icon redirect ==
Anyone watching? The BLACKLOCK icon at [[Asian News International vs. Wikimedia Foundation]] redirects to [[Wikipedia:Protection_policy#full]], but [[Wikipedia:Protection_policy#Office_actions]] would be more on point. [[User:Gråbergs Gråa Sång|Gråbergs Gråa Sång]] ([[User talk:Gråbergs Gråa Sång|talk]]) 18:41, 21 October 2024 (UTC)
:This'll require a change to the module code, since the config responsible for determining the link that the padlock uses is determined [[Module:Protection banner/config#L-596|here]], and an office action is, in technical terms, just a normal full (admin) protection. The only way the difference is determined for the image is by explicitly using {{tl|pp-office}} instead of {{tl|pp}}, so something similar would need to be done for the image link handling too. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 18:50, 21 October 2024 (UTC)
::While office action protections are implemented as full protections, the purpose of the redirect is to provide additional context and information to readers. I agree that it makes sense for the icon to redirect to the most relevant section of the policy, {{slink|Wikipedia:Protection policy#Office actions}}. Just to be clear, I'm only commenting on the desired outcome, not on the technical implementation. [[User:Daniel Quinlan|Daniel Quinlan]] ([[User talk:Daniel Quinlan|talk]]) 18:58, 21 October 2024 (UTC)
:::{{replyto|Gråbergs Gråa Sång}} It's easy to find out what the protection level is, and when it will expire. There are two [[WP:PF|parser functions]] that do this:
:::*<code><nowiki>{{PROTECTIONLEVEL:edit|Asian News International vs. Wikimedia Foundation}}</nowiki></code> → {{PROTECTIONLEVEL:edit|Asian News International vs. Wikimedia Foundation}}
:::*<code><nowiki>{{PROTECTIONEXPIRY:edit|Asian News International vs. Wikimedia Foundation}}</nowiki></code> → {{PROTECTIONEXPIRY:edit|Asian News International vs. Wikimedia Foundation}}
:::*<code><nowiki>{{PROTECTIONLEVEL:move|Asian News International vs. Wikimedia Foundation}}</nowiki></code> → {{PROTECTIONLEVEL:move|Asian News International vs. Wikimedia Foundation}}
:::*<code><nowiki>{{PROTECTIONEXPIRY:move|Asian News International vs. Wikimedia Foundation}}</nowiki></code> → {{PROTECTIONEXPIRY:move|Asian News International vs. Wikimedia Foundation}}
:::The value "sysop" denotes full protection, for any reason. These values are read directly from a table, and whereas this module obtains the values using another module (specifically [[Module:Effective protection level]]) and not the parser functions, the underlying routines in the MediaWiki software are the same, and so the values are read from the same table. But the ''reason'' for protection is not held in a table, it's only recorded as a log entry. The module would need to scan back through that log, since the imposition of protection might not be the most recent entry in the protection log (although in this case, [//en.wikipedia.org/wiki/Special:Log?type=protect&page=Asian_News_International_vs._Wikimedia_Foundation it is]). The module would also need to do that every time the page is retrieved, and that would take time. I don't think that this is a good idea. Stick with using {{tlx|pp-office}} or {{tlx|pp-vand}} etc., whichever is most appropriate, as these describe the situation explicitly. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🌹 ([[User talk:Redrose64|talk]]) 07:37, 22 October 2024 (UTC)
::::If it can't be done, it can't be done. It would be a minor but obvious improvement for the reader, and my guess was that changing the "redirect" to [[WP:BLACKLOCK]] would be fairly trivial, though of course restricted by [[WP:PINKLOCK]] etc. To make a [[WP:OTHERCONTENT]] comparison, the [[WP:PINKLOCK]] icon (top right) at [[Module:Protection banner]] redirects to [[WP:PINKLOCK]], not [[WP:GOLDLOCK]]. [[User:Gråbergs Gråa Sång|Gråbergs Gråa Sång]] ([[User talk:Gråbergs Gråa Sång|talk]]) 07:48, 22 October 2024 (UTC)
:::::After a quick skim of the module code, it turns out it is already possible to override the link of the padlock in the config based on the template used, it's just none of the existing cases used said feature. I've tried my best to workshop the change in the sandbox config on phone [[Special:Diff/1252648173|here]]. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 09:52, 22 October 2024 (UTC)
::::::Nice find. That seems like a promising solution, and it uses a descriptive link. [[User:Daniel Quinlan|Daniel Quinlan]] ([[User talk:Daniel Quinlan|talk]]) 11:45, 22 October 2024 (UTC)
:::::It would be better to avoid using the color shortcuts which are often unclear to people in meaning and less frequently used, and instead use the more descriptive shortcuts like [[WP:ECP]] or, even better, direct and descriptive links. [[User:Daniel Quinlan|Daniel Quinlan]] ([[User talk:Daniel Quinlan|talk]]) 11:33, 22 October 2024 (UTC)
If no one has any extra comments or suggestions regarding this, I'll move [[Special:Diff/1252648173|this change]] from the sandbox to main, since this seems pretty uncontroversial. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 16:41, 22 October 2024 (UTC)
:I've implemented the config change, office padlocks will now start linking to the office section in the protection policy. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 18:54, 23 October 2024 (UTC)
::Thanks! [[User:Gråbergs Gråa Sång|Gråbergs Gråa Sång]] ([[User talk:Gråbergs Gråa Sång|talk]]) 19:09, 23 October 2024 (UTC)
::Looks good. Office padlocks have the correct destination and full protection padlocks are unchanged. Thanks. [[User:Daniel Quinlan|Daniel Quinlan]] ([[User talk:Daniel Quinlan|talk]]) 19:19, 23 October 2024 (UTC)
== Mobile places infobox incorrectly for [[WP:PIA]] notice ==
Mobile moves infoboxes down after the opening paragraph per [[:mw:Reading/Web/Projects/Lead Paragraph Move]]. On [[Detention of Mahmoud Khalil]] {{tlx|1=pp-extended|2=small=yes}} includes <code><nowiki><p class='PIA-flag' style='display:none; visibility:hidden;'>This page is subject to the extended confirmed restriction related to the Arab-Israeli conflict.</p></nowiki></code>. The text is hidden but mobile still interprets it as an opening paragraph and displays the infobox right after it instead of moving it further down after the first displayed paragraph. Is there a better fix than moving {{tlx|1=pp-extended|2=small=yes}} down in the wikitext? [[MOS:ORDER]] says it should be at the top. [[User:PrimeHunter|PrimeHunter]] ([[User talk:PrimeHunter|talk]]) 09:36, 17 March 2025 (UTC)
:According to the [https://gerrit.wikimedia.org/g/mediawiki/extensions/MobileFrontend/+/a7183b11e63dc28e6baabfc1eb9e62e02baab130/includes/Transforms/MoveLeadParagraphTransform.php#250 code] moving the notice inside a span might be enough. [[User:Sjoerddebruin|<span style="color:var(--color-progressive,#36c); font-weight:var(--font-weight-semi-bold,600); letter-spacing:0.05em;">Sjoerd de Bruin</span>]] [[Overleg gebruiker:Sjoerddebruin|<small style="color:var(--color-progressive,#36c); letter-spacing:0.05em;">({{int:Talkpagelinktext}})</small>]] 09:52, 17 March 2025 (UTC)
::That only targets <code><nowiki><span id="coordinates">...</span></nowiki></code>. We could use it but adding a coordinates id would be hacky. There may be tools looking for that id and getting confused. [[User:PrimeHunter|PrimeHunter]] ([[User talk:PrimeHunter|talk]]) 10:45, 17 March 2025 (UTC)
:::It works in a mobile preview to use a div. [[User:PrimeHunter|PrimeHunter]] ([[User talk:PrimeHunter|talk]]) 18:35, 17 March 2025 (UTC)
:This also means that this text, which exists only for the purpose of the abuse filter, is now present in multiple search engines where those articles are showing up: [https://duckduckgo.com/?t=ffab&q=detention+of+mahmoud+khalil&ia=web Duckduckgo example]. While I get why @[[User:SilverLocust|SilverLocust]] made that edit, they should’ve done it in a way that does not create this slew of issues. One way this could be mitigated is by testing whether adding that as a hidden {{tag|indicator|o}} instead would still work for those purposes, since those do not affect the page output in this way. [[user:stjn|stjn]] 17:31, 19 March 2025 (UTC)
::I've made a [[Special:Diff/1281325360|fix]] (at least temporarily, someone else may have a better suggestion) for the mobile issue and I believe the search issue. Got to go, but I'll subscribe to this section. Email me if there's anything needing a quick response. - Jenson[[User:SilverLocust|SL]] ([[User talk:SilverLocust|SilverLocust]]) 18:06, 19 March 2025 (UTC)
== Template-protected edit request on 19 December 2025 ==
{{edit template-protected|Module:Protection banner/config|answered=yes}}
Let’s adapt “you may submit an edit request ask an administrator (or template editor)” based on whether the page is template-protected or fully protected. It’s not just administrators who can edit template-protected pages. [[User:2600 etc|2600 etc]] ([[User talk:2600 etc|talk]]) 01:29, 19 December 2025 (UTC)
:{{not done for now}}''':'''<!-- Template:ETp --> from what I've seen, this has already been done. Are you able to show a specific example where a protected template's notice does not mention template editors? '''''[[User:Paine Ellsworth|<span style="font-size:92%;color:darkblue;font-family:Segoe Script">P.I. Ellsworth</span>]]''''' , [[Editor|<span style="color:black">ed.</span>]] – [[User talk:Paine Ellsworth|''welcome!'']] – <small>06:19, 19 December 2025 (UTC)</small>
== Change all instances of [[Help:Protection]] to [[Wikipedia:Protection policy]] ==
[[Module:Protection banner/config]] contains links to [[Help:Protection]], which has barely been updated since 2008 and is much less useful to new editors than [[Wikipedia:Protection policy]], which contains information on specific protection types. I have demonstrated the changes in [[Module:Protection banner/config/sandbox]] ([https://en.wikipedia.org/w/index.php?title=Module%3AProtection_banner%2Fconfig%2Fsandbox&diff=1329273725&oldid=1254635270 diff]). We already link to [[Wikipedia:Protection policy]] for the vast majority of protected pages, [[Help:Protection]] is only displayed in banners.
[[User:Helpful Raccoon|Helpful Raccoon]] ([[User talk:Helpful Raccoon|talk]]) 23:07, 24 December 2025 (UTC)
== Expiration date not displaying in hover tooltip text on temporarily EC-protected pages ==
{{fyi|pointer=y}} Please see [[Template talk:Pp-extended#Expiration date not displaying in hover tooltip text on temporarily EC-protected pages]] for a bug with this module. --[[User:Redrose64|<span style="color:#a80000; background:#ffeeee; text-decoration:inherit">Red</span>rose64]] 🦌 ([[User talk:Redrose64|talk]]) 12:30, 25 December 2025 (UTC)
:@[[User:Redrose64|Redrose64]] This can be fixed by either removing {{code|ecp}} as a protection reason from [[Module:Protection banner/config]], as I have demonstrated in [https://en.wikipedia.org/w/index.php?title=Module:Protection_banner/config/sandbox&diff=prev&oldid=1329429750 this diff], or just removing the tooltip from {{code|ecp}}. [[User:Helpful Raccoon|Helpful Raccoon]] ([[User talk:Helpful Raccoon|talk]]) 03:33, 26 December 2025 (UTC)
== "Please discuss any changes on the talk page" for protected talk pages? ==
On edit-protected talk pages such as [[Talk:Ali Khamenei]], the protection banner (for the talk page itself) still says: {{tq|Please discuss any changes on the [[Talk:Ali Khamenei#top|talk page]]}}. While the link for the edit request correctly points to [[WP:RFPP/E]], should the content of the message also be adjusted to avoid confusing newcomers with a catch-22? [[User:Chaotic Enby|<span style="color:#8a7500">Chaotic <span style="color:#9e5cb1">Enby</span></span>]] ([[User talk:Chaotic Enby|talk]] · [[Special:Contributions/Chaotic Enby|contribs]]) 00:46, 1 March 2026 (UTC)
== Template-protected edit request on 15 April 2026 ==
{{edit template-protected|Module:Protection banner/config|answered=yes}}
Please implement my changes in [[Module:Protection banner/config/sandbox|the sandbox]], which provides a protection reason for user pages of deceased Wikipedians. (Some cleanup may be required.)
This reason is planned to be used in {{tl|Deceased Wikipedian}}. [[User:Awesome Aasim|Aasim]] ([[User_talk:Awesome Aasim|<ruby>話す<rp>(</rp><rt>はなす</rt><rp>)</rp></ruby>]]) 20:33, 15 April 2026 (UTC)
:{{Done}}! [[User:Santiago Claudio|Santiago Claudio]] ([[User talk:Santiago Claudio|talk]]) 08:14, 18 April 2026 (UTC)
== Move discussion in progress ==
There is a move discussion in progress on [[Special:Redirect/page/10413124#Requested move 16 August 2026|Template talk:Protection padlock]] which affects this page. Please participate on that page and not in this talk page section. Thank you. <!-- Template talk:Protection padlock#Requested move 16 August 2026 crosspost --> —[[User:RMCD bot|RMCD bot]] 15:33, 16 August 2026 (UTC)
2jgkrkbkjxi7raw7tu8ev42xltggd3v
ಮೋಡ್ಯೂಲ್:Protected page/documentation
828
28752
370457
2026-08-30T17:20:51Z
en>Primefac
0
Primefac moved page [[Module:Protection banner/documentation]] to [[Module:Protected page/documentation]]: update following [[Special:Permalink/1372151970#Requested_move_16_August_2026|RM]]
370457
Scribunto
text/plain
-- This module generates documentation for [[Module:Protection banner]].
--------------------------------------------------------------------------------
-- Documentation class
--------------------------------------------------------------------------------
local Documentation = {}
Documentation.__index = Documentation
function Documentation:new(mainCfg, docCfg)
return setmetatable({
_mainCfg = mainCfg,
_docCfg = docCfg
}, self)
end
function Documentation:makeReasonTable()
-- Get the data from the cfg.banners table.
local rowData = {}
for action, reasonTables in pairs(self._mainCfg.banners) do
for reason, t in pairs(reasonTables) do
rowData[#rowData + 1] = {
reason = reason,
action = action,
description = t.description
}
end
end
-- Sort the table into alphabetical order, first by action and then by
-- reason.
table.sort(rowData, function (t1, t2)
if t1.action == t2.action then
return t1.reason < t2.reason
else
return t1.action < t2.action
end
end)
-- Assemble a wikitable of the data.
local ret = {}
ret[#ret + 1] = '{| class="wikitable"'
if #rowData < 1 then
ret[#ret + 1] = '|-'
ret[#ret + 1] = string.format(
'| colspan="3" | %s',
self._docCfg['documentation-blurb-noreasons']
)
else
-- Header
ret[#ret + 1] = '|-'
ret[#ret + 1] = string.format(
'! %s\n! %s\n! %s',
self._docCfg['documentation-heading-reason'],
self._docCfg['documentation-heading-action'],
self._docCfg['documentation-heading-description']
)
-- Rows
for _, t in ipairs(rowData) do
ret[#ret + 1] = '|-'
ret[#ret + 1] = string.format(
'| %s\n| %s\n| %s',
t.reason,
t.action,
t.description or ''
)
end
end
ret[#ret + 1] = '|}'
return table.concat(ret, '\n')
end
--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------
local p = {}
function p.reasonTable()
local mainCfg = require('Module:Protection banner/config')
local docCfg = require('Module:Protection banner/documentation/config')
local documentationObj = Documentation:new(mainCfg, docCfg)
return documentationObj:makeReasonTable()
end
return p
imbe3ltwmegb6fcpqrsgth07bd9uybu
370458
370457
2026-09-28T09:13:09Z
ChiK
1136
1 revision imported from [[:en:Module:Protected_page/documentation]]
370457
Scribunto
text/plain
-- This module generates documentation for [[Module:Protection banner]].
--------------------------------------------------------------------------------
-- Documentation class
--------------------------------------------------------------------------------
local Documentation = {}
Documentation.__index = Documentation
function Documentation:new(mainCfg, docCfg)
return setmetatable({
_mainCfg = mainCfg,
_docCfg = docCfg
}, self)
end
function Documentation:makeReasonTable()
-- Get the data from the cfg.banners table.
local rowData = {}
for action, reasonTables in pairs(self._mainCfg.banners) do
for reason, t in pairs(reasonTables) do
rowData[#rowData + 1] = {
reason = reason,
action = action,
description = t.description
}
end
end
-- Sort the table into alphabetical order, first by action and then by
-- reason.
table.sort(rowData, function (t1, t2)
if t1.action == t2.action then
return t1.reason < t2.reason
else
return t1.action < t2.action
end
end)
-- Assemble a wikitable of the data.
local ret = {}
ret[#ret + 1] = '{| class="wikitable"'
if #rowData < 1 then
ret[#ret + 1] = '|-'
ret[#ret + 1] = string.format(
'| colspan="3" | %s',
self._docCfg['documentation-blurb-noreasons']
)
else
-- Header
ret[#ret + 1] = '|-'
ret[#ret + 1] = string.format(
'! %s\n! %s\n! %s',
self._docCfg['documentation-heading-reason'],
self._docCfg['documentation-heading-action'],
self._docCfg['documentation-heading-description']
)
-- Rows
for _, t in ipairs(rowData) do
ret[#ret + 1] = '|-'
ret[#ret + 1] = string.format(
'| %s\n| %s\n| %s',
t.reason,
t.action,
t.description or ''
)
end
end
ret[#ret + 1] = '|}'
return table.concat(ret, '\n')
end
--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------
local p = {}
function p.reasonTable()
local mainCfg = require('Module:Protection banner/config')
local docCfg = require('Module:Protection banner/documentation/config')
local documentationObj = Documentation:new(mainCfg, docCfg)
return documentationObj:makeReasonTable()
end
return p
imbe3ltwmegb6fcpqrsgth07bd9uybu
ಮೋಡ್ಯೂಲ್:Protected page/documentation/config
828
28753
370459
2026-08-30T17:20:51Z
en>Primefac
0
Primefac moved page [[Module:Protection banner/documentation/config]] to [[Module:Protected page/documentation/config]]: update following [[Special:Permalink/1372151970#Requested_move_16_August_2026|RM]]
370459
Scribunto
text/plain
-- This module contains messages used to generate the documentation for
-- [[Module:Protection banner]].
return {
-- Reason table headings.
['documentation-heading-reason'] = 'Reason',
['documentation-heading-action'] = 'Action',
['documentation-heading-description'] = 'Description',
-- Blurb to display if no reasons were found in the module config.
['documentation-blurb-noreasons'] = 'No reason values were found in the module'
.. ' configuration.',
}
1hgoczciij55c2768j2k1ubzxkco9p9
370460
370459
2026-09-28T09:13:09Z
ChiK
1136
1 revision imported from [[:en:Module:Protected_page/documentation/config]]
370459
Scribunto
text/plain
-- This module contains messages used to generate the documentation for
-- [[Module:Protection banner]].
return {
-- Reason table headings.
['documentation-heading-reason'] = 'Reason',
['documentation-heading-action'] = 'Action',
['documentation-heading-description'] = 'Description',
-- Blurb to display if no reasons were found in the module config.
['documentation-blurb-noreasons'] = 'No reason values were found in the module'
.. ' configuration.',
}
1hgoczciij55c2768j2k1ubzxkco9p9
ಮೋಡ್ಯೂಲ್ ಪಾತೆರ:Color contrast
829
28754
370466
2026-08-21T17:22:59Z
en>Aidan9382
0
/* Template-protected edit request on 20 July 2026 */ Changing back to "unanswered" since the change was reverted and I don't want to immediately reinstate the fixed version myself
370466
wikitext
text/x-wiki
{{WikiProject banner shell|
{{WikiProject Color}}
}}
{{copied|from1=Module:Color_contrast|from_oldid1=823705246|to1=:incubator:Module:Wp/nod/Color_contrast|to_diff1=4243085
|from2=Module:Color_contrast/colors|from_oldid2=673825843|to2=:incubator:Module:Wp/nod/Color_contrast/colors|to_diff2=4243093}}
== Making the lum function accessible from modules ==
I've made the lum function accessible from modules by changing the code from:
<pre>
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end</pre>
to:
<pre>
function p.lum(frame)
local args = frame.args[1] or frame:getParent().args[1]
return p._lum(args)
end
function p._lum(args)
return color2lum(args)
end</pre>
The changes are on the [[Module:Color contrast/sandbox|sandbox]] and will implement them if there are no comments. --[[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 11:03, 6 January 2019 (UTC)
:
: {{re|Gonnym}} That looks like a very sensible and useful improvement. My only reservation is that passing the parameters as a table gives the person wanting to import the routine no idea of what values/types to supply to the routine without having to read through all of the code to determine them. In general I'd usually recommend either documenting a brief list of required values for the args table or passing the parameters as a list of obviously-named variables rather than a table. But that's just a minor point and shouldn't stop you from updating the main module. --[[User:RexxS|RexxS]] ([[User talk:RexxS|talk]]) 13:03, 6 January 2019 (UTC)
::{{ping|RexxS}} I don't mind doing either if that helps. I just followed the current style used for the other three public functions. Do you want me to change _lum(args) to _lum(color)? --[[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 13:27, 6 January 2019 (UTC)
::: {{re|Gonnym}} Sorry, my confusion: now I've looked harder at it, you're actually passing a string representing the colour, not a table (which is what args would most commonly indicate). I would suggest:<syntaxhighlight lang=Lua>
-- use {{#invoke:Color_contrast|somecolor}} directly or {{#invoke:Color_contrast}} from a wrapper template:
function p.lum(frame)
local color = frame.args[1] or frame:getParent().args[1]
return p._lum(color)
end
-- This exports the function for use in other modules.
-- The colour is passed as a string:
function p._lum(color)
return color2lum(color)
end</syntaxhighlight> I know we can put fuller information in the documentation, but I always suggest leaving small annotations in the code to help any re-users.
::: You could also write <code>p._lum = color2lum</code> instead of the second function definition, but setting it out explicitly, as you have done, helps whoever is importing the module to see what parameters to supply. Cheers --[[User:RexxS|RexxS]] ([[User talk:RexxS|talk]]) 15:41, 6 January 2019 (UTC)
::::Sure, looks good. I'll update the sandbox version. --[[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 15:43, 6 January 2019 (UTC)
== Possible typos in code? ==
Observing the code, I might have spotted a couple of typos:
=== In <code>p._greatercontrast</code> function, lines 160 and 161 ===
I think <syntaxhighlight lang='lua'>if mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then</syntaxhighlight> should read <syntaxhighlight lang='lua'>if mw.ustring.match(c3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then</syntaxhighlight> instead. Here, <code>v3</code> is expected to be a number, thus there is no point in applying it a regular expression. Besides, given the four lines above, it seems logical to use <code>c3</code> variable here instead of <code>v3</code>.
=== In <code>p._styleratio</code> function, line 209 ===
I think <syntaxhighlight lang="lua">if( lum ~= '' ) then bg, lum_fg = v, lum end</syntaxhighlight> should read <syntaxhighlight lang="lua">if( lum ~= '' ) then fg, lum_fg = v, lum end</syntaxhighlight> instead, since at this point we have isolated a forecolor specification from input CSS.
My apologies if I would have misinterpreted your code.
Kindly, [[User:Olivier Ph.|Olivier Ph.]] ([[User talk:Olivier Ph.|talk]]) 12:11, 13 October 2020 (UTC)
== Categorisation broken? ==
Through Documentation subpage, [[:Category:Modules handling colors]] is added as expected. However, the page does not appear in {{clc|Modules handling colors}}. -[[User:DePiep|DePiep]] ([[User talk:DePiep|talk]]) 15:12, 7 January 2021 (UTC)
:
: {{re|DePiep}} categorisation behaves as something of a black art. The page appears in [[:Category:Modules handling colors]] now, but obviously didn't earlier today. [[Wikipedia:FAQ/Categorization #Why might a category list not be up to date?]] discusses some of the issues that may cause the lag. I usually try a null edit to "touch" the pages concerned and often find the page then appears in the category, but it's not always 100% successful. --[[User:RexxS|RexxS]] ([[User talk:RexxS|talk]]) 16:07, 7 January 2021 (UTC)
::I had just edited out the {{tl|Sandbox other}} [https://en.wikipedia.org/w/index.php?title=Module:Color_contrast/doc&diff=998898289&oldid=998796533&diffmode=source]. So we have a cause (bug). Did not investigate problem further.-[[User:DePiep|DePiep]] ([[User talk:DePiep|talk]]) 16:11, 7 January 2021 (UTC)
::: Yes I saw that. But because the category was being added via {{tl|Sandbox other}} and now is added directly via [[Module:Color contrast/doc]], that becomes effectively a different transclusion and the usual caveats about delays because of cached transclusions apply. --[[User:RexxS|RexxS]] ([[User talk:RexxS|talk]]) 16:56, 7 January 2021 (UTC)
::::{{tlf|Sandbox other}} should be checked for Module ns then? But [https://en.wikipedia.org/w/index.php?title=Special%3AWhatLinksHere&target=Template%3ASandbox+other&namespace=828 here] it seems to work. (To be clear: before my edit the category was empty, and no delay was working, no recent edits). I'll leave it for now. -[[User:DePiep|DePiep]] ([[User talk:DePiep|talk]]) 17:18, 7 January 2021 (UTC)
== Template-protected edit request on 18 March 2025 ==
{{edit template-protected|Module:Color contrast|answered=yes}}
Line 135:
{{td| local c2 {{=}} args[2] or '#FFFFFF'| local c2 {{=}} args[2] or 'white'}}
Line 137:
{{td| local c3 {{=}} args[3] or '#000000'| local c3 {{=}} args[3] or 'black'}}
Change the specification of the default colors from hex triplets <syntaxhighlight lang="lua" inline>'#FFFFFF'</syntaxhighlight> and <syntaxhighlight lang="lua" inline>'#000000'</syntaxhighlight> to named HTML colors <syntaxhighlight lang="lua" inline>'white'</syntaxhighlight> and <syntaxhighlight lang="lua" inline>'black'</syntaxhighlight> respectively. This allows the default case to take advantage of the pre-computed table of relative luminances of named HTML colors at [[Module:Color contrast/colors]] checked by the <code>color2lum()</code> function instead of calculating the relative luminances of white and black every time (as the module as currently written does), as well as, at least for the default colors, avoiding a parser bug that causes output that begins with <code>#</code> to result in a numbered list. '''[[User:Kinsio|<span style="color:#df0000">Kinsio</span>]]''' <span style="color:#096450">('''''[[User talk:Kinsio|talk]]''''' ★ '''''[[Special:Contributions/Kinsio|contribs]]''''' ★ '''''[[Special:UserRights/Kinsio|rights]]''''')</span> 18:55, 19 March 2025 (UTC)
: {{done}} [[User:Pppery|* Pppery *]] [[User talk:Pppery|<sub style="color:#800000">it has begun...</sub>]] 20:30, 30 March 2025 (UTC)
== Template-protected edit request on 20 July 2026 ==
{{edit template-protected|Module:Color contrast|answered=no}}
Please update the module to support additional CSS3/CSS4 color formats ("rgba", "hsla", 4-digit and 8-digit hex values) and incorporate several code fixes, bringing it up to speed with the improvements from "ptwiki".
===Key changes===
# Updated regex patterns in "color2lum" to support "rgba()", "hsla()", space-separated values, and "#RGBA" (4-digit) / "#RRGGBBAA" (8-digit) hex formats.
# Fixed a variable check bug in "_greatercontrast" where "v3" was tested instead of "c3".
# Stripped newlines and normalized whitespace in the CSS output for "_greatercontrast" when the "css" flag is active.
# Cleaned up variable scoping in "_styleratio" to prevent shadowing loop index "k" and removed unused variables ("bg", "fg").
Replace the current code of the module with:
{{Collapse-top|Code}}
<syntaxhighlight lang="lua">
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB (v)
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum(R, G, B)
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum(h, s, l)
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum(c)
if (c == nil) then
return ''
end
-- html '#' entity
c = c:gsub("#", "#")
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl / hsla (accepts comma or space delimiters)
if mw.ustring.match(c,'^hsla?%([%s]*[0-9][0-9%.]*[%s]*[,%s][%s]*[0-9][0-9%.]*%%[%s]*[,%s][%s]*[0-9][0-9%.]*%%.*%)$') then
local h, s, l = mw.ustring.match(c,'^hsla?%([%s]*([0-9][0-9%.]*)[%s]*[,%s][%s]*([0-9][0-9%.]*)%%[%s]*[,%s][%s]*([0-9][0-9%.]*)%%.*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb / rgba (numeric values 0 to 255)
if mw.ustring.match(c,'^rgba?%([%s]*[0-9][0-9]*[%s]*[,%s][%s]*[0-9][0-9]*[%s]*[,%s][%s]*[0-9][0-9]*.*%)$') then
local R, G, B = mw.ustring.match(c,'^rgba?%([%s]*([0-9][0-9]*)[%s]*[,%s][%s]*([0-9][0-9]*)[%s]*[,%s][%s]*([0-9][0-9]*).*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb / rgba percent
if mw.ustring.match(c,'^rgba?%([%s]*[0-9][0-9%.]*%%[%s]*[,%s][%s]*[0-9][0-9%.]*%%[%s]*[,%s][%s]*[0-9][0-9%.]*%%.*%)$') then
local R, G, B = mw.ustring.match(c,'^rgba?%([%s]*([0-9][0-9%.]*)%%[%s]*[,%s][%s]*([0-9][0-9%.]*)%%[%s]*[,%s][%s]*([0-9][0-9%.]*)%%.*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 or #cs == 8 ) then -- Accepts 6 digits (#RRGGBB) or 8 digits (#RRGGBBAA)
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 or #cs == 4 ) then -- Accepts 3 digits (#RGB) or 4 digits (#RGBA)
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
-- This exports the function for use in other modules.
-- The colour is passed as a string.
function p._lum(color)
return color2lum(color)
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local css = (args['css'] and args['css'] ~= '') and true or false
local v1 = color2lum(args[1] or '')
local c2 = args[2] or 'white'
local v2 = color2lum(c2)
local c3 = args[3] or 'black'
local v3 = color2lum(c3)
local ratio1 = -1;
local ratio2 = -1;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
if css then
local c1 = args[1] or ''
if mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c1 = '#' .. c1
end
if mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c2 = '#' .. c2
end
if mw.ustring.match(c3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c3 = '#' .. c3
end
local css_output = 'background-color:' .. c1 .. '; color:' .. ((ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or '') .. ';'
-- Remove newlines (\n, \r) and extra spaces before returning CSS
return css_output:gsub('[\r\n]', ''):gsub('%s+', ' ')
end
return (ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then lum_bg = lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then lum_fg = lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local prop, val = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
prop = prop or ''
val = val or ''
if (prop:match('^[%s]*(background)[%s]*$') or prop:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(val)
if( lum ~= '' ) then lum_bg = lum end
elseif (prop:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(val)
if( lum ~= '' ) then lum_fg = lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
--[[
Use {{#invoke:Color contrast|somecolor}} directly or
{{#invoke:Color contrast}} from a wrapper template.
Parameters:
-- |1= — required; A color to check.
--]]
function p.lum(frame)
local color = frame.args[1] or frame:getParent().args[1]
return p._lum(color)
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
</syntaxhighlight>
{{collapse-bottom}}
--[[User:GKNishimoto|GKNishimoto]] ([[User talk:GKNishimoto|talk]]) 05:16, 20 July 2026 (UTC)
:I've gone ahead and done some cleanup on the code and everything generally looks good, but I do have a question. Since this adds support for specifying colours with an alpha, is it correct behaviour to just ignore that alpha property entirely? It feels like that should matter for the purpose of calculating the ratio, though I'm not familiar with the exact scope of this module. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 21:33, 26 July 2026 (UTC)
::Hi @Aidan9382,
::Thanks for reviewing and refining the code in the sandbox! The regex fix in '_greatercontrast' to support 4-digit and 8-digit hex values when using the 'css' flag is a great spot.
::To answer your question directly: Yes, ignoring the alpha component is the intended and correct behavior for this module.
::Under the WCAG 2.1 accessibility guidelines, computing the exact contrast ratio of a semi-transparent color requires blending it against whatever background is rendered behind it. Since this Lua module evaluates color values statically without access to the surrounding page layout or DOM context, it cannot reliably determine the underlying background layer.
::Stripping or ignoring the alpha channel allows the module to gracefully fall back to evaluating the base RGB/HSL contrast without throwing errors or returning blank values when editors pass modern CSS formats (such as '#RRGGBBAA' or 'rgba()').
::The code currently in the sandbox looks great and is ready to be applied. Thanks again for the help! -- [[User:GKNishimoto|GKNishimoto]] ([[User talk:GKNishimoto|talk]]) 21:42, 26 July 2026 (UTC)
::P.S. Thanks again! Once this goes live here, I'll be porting this updated version directly to ptwiki as well to keep both modules completely aligned.-- [[User:GKNishimoto|GKNishimoto]] ([[User talk:GKNishimoto|talk]]) 21:51, 26 July 2026 (UTC)
:::In that case this seems fine, {{Done}}. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 12:42, 27 July 2026 (UTC)
::::This change broke the layout at [[Template:Basketballbox/testcases]] for transclusions using {{para|bg}}. Please test the sandbox module with that template. – [[User:Jonesey95|Jonesey95]] ([[User talk:Jonesey95|talk]]) 16:11, 27 July 2026 (UTC)
:::::More specifically, it caused output in the form of {{code|background-color:#eeeeee; color:#202122;1}}, breaking following css rules. [[User:LittlePuppers|LittlePuppers]] ([[User talk:LittlePuppers|talk]]) 16:16, 27 July 2026 (UTC)
::::::Well, it seems I didn't aniticipate that scribunto would just implicitly concatenate multiple returns instead of taking just the first return, which gsub will cause. Thanks for that. I've gone ahead and [[Special:Diff/1366366777|fixed that in the sandbox]]. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 16:23, 27 July 2026 (UTC)
:::::::Updated module sandbox to fix the CSS output formatting issue. Removed the <code>:gsub()</code> whitespace/newline compression that was causing multiple return values and appending an unintended '1' to the style string, fully resolving the layout breaks on templates using <code>|bg=</code> (such as Basketballbox) while retaining all new CSS3/CSS4 color format features.
:::::::While Aidan9382's quick fix in the sandbox solved the immediate multiple-return bug by keeping a single <code><nowiki>:gsub('[\r\n]', '')</nowiki></code>, completely removing the extra string manipulation—as we did in our version—is cleaner and fully avoids any potential edge cases with complex template markup or string concatenation in Scribunto. It keeps the CSS output pure, exact, and 100% robust. --[[User:GKNishimoto|GKNishimoto]] ([[User talk:GKNishimoto|talk]]) 17:46, 27 July 2026 (UTC)
g07o8grofkvipdarbzkiuz829kh5ndz
370467
370466
2026-09-28T09:23:17Z
ChiK
1136
1 revision imported from [[:en:Module_talk:Color_contrast]]
370466
wikitext
text/x-wiki
{{WikiProject banner shell|
{{WikiProject Color}}
}}
{{copied|from1=Module:Color_contrast|from_oldid1=823705246|to1=:incubator:Module:Wp/nod/Color_contrast|to_diff1=4243085
|from2=Module:Color_contrast/colors|from_oldid2=673825843|to2=:incubator:Module:Wp/nod/Color_contrast/colors|to_diff2=4243093}}
== Making the lum function accessible from modules ==
I've made the lum function accessible from modules by changing the code from:
<pre>
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end</pre>
to:
<pre>
function p.lum(frame)
local args = frame.args[1] or frame:getParent().args[1]
return p._lum(args)
end
function p._lum(args)
return color2lum(args)
end</pre>
The changes are on the [[Module:Color contrast/sandbox|sandbox]] and will implement them if there are no comments. --[[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 11:03, 6 January 2019 (UTC)
:
: {{re|Gonnym}} That looks like a very sensible and useful improvement. My only reservation is that passing the parameters as a table gives the person wanting to import the routine no idea of what values/types to supply to the routine without having to read through all of the code to determine them. In general I'd usually recommend either documenting a brief list of required values for the args table or passing the parameters as a list of obviously-named variables rather than a table. But that's just a minor point and shouldn't stop you from updating the main module. --[[User:RexxS|RexxS]] ([[User talk:RexxS|talk]]) 13:03, 6 January 2019 (UTC)
::{{ping|RexxS}} I don't mind doing either if that helps. I just followed the current style used for the other three public functions. Do you want me to change _lum(args) to _lum(color)? --[[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 13:27, 6 January 2019 (UTC)
::: {{re|Gonnym}} Sorry, my confusion: now I've looked harder at it, you're actually passing a string representing the colour, not a table (which is what args would most commonly indicate). I would suggest:<syntaxhighlight lang=Lua>
-- use {{#invoke:Color_contrast|somecolor}} directly or {{#invoke:Color_contrast}} from a wrapper template:
function p.lum(frame)
local color = frame.args[1] or frame:getParent().args[1]
return p._lum(color)
end
-- This exports the function for use in other modules.
-- The colour is passed as a string:
function p._lum(color)
return color2lum(color)
end</syntaxhighlight> I know we can put fuller information in the documentation, but I always suggest leaving small annotations in the code to help any re-users.
::: You could also write <code>p._lum = color2lum</code> instead of the second function definition, but setting it out explicitly, as you have done, helps whoever is importing the module to see what parameters to supply. Cheers --[[User:RexxS|RexxS]] ([[User talk:RexxS|talk]]) 15:41, 6 January 2019 (UTC)
::::Sure, looks good. I'll update the sandbox version. --[[User:Gonnym|Gonnym]] ([[User talk:Gonnym|talk]]) 15:43, 6 January 2019 (UTC)
== Possible typos in code? ==
Observing the code, I might have spotted a couple of typos:
=== In <code>p._greatercontrast</code> function, lines 160 and 161 ===
I think <syntaxhighlight lang='lua'>if mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then</syntaxhighlight> should read <syntaxhighlight lang='lua'>if mw.ustring.match(c3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then</syntaxhighlight> instead. Here, <code>v3</code> is expected to be a number, thus there is no point in applying it a regular expression. Besides, given the four lines above, it seems logical to use <code>c3</code> variable here instead of <code>v3</code>.
=== In <code>p._styleratio</code> function, line 209 ===
I think <syntaxhighlight lang="lua">if( lum ~= '' ) then bg, lum_fg = v, lum end</syntaxhighlight> should read <syntaxhighlight lang="lua">if( lum ~= '' ) then fg, lum_fg = v, lum end</syntaxhighlight> instead, since at this point we have isolated a forecolor specification from input CSS.
My apologies if I would have misinterpreted your code.
Kindly, [[User:Olivier Ph.|Olivier Ph.]] ([[User talk:Olivier Ph.|talk]]) 12:11, 13 October 2020 (UTC)
== Categorisation broken? ==
Through Documentation subpage, [[:Category:Modules handling colors]] is added as expected. However, the page does not appear in {{clc|Modules handling colors}}. -[[User:DePiep|DePiep]] ([[User talk:DePiep|talk]]) 15:12, 7 January 2021 (UTC)
:
: {{re|DePiep}} categorisation behaves as something of a black art. The page appears in [[:Category:Modules handling colors]] now, but obviously didn't earlier today. [[Wikipedia:FAQ/Categorization #Why might a category list not be up to date?]] discusses some of the issues that may cause the lag. I usually try a null edit to "touch" the pages concerned and often find the page then appears in the category, but it's not always 100% successful. --[[User:RexxS|RexxS]] ([[User talk:RexxS|talk]]) 16:07, 7 January 2021 (UTC)
::I had just edited out the {{tl|Sandbox other}} [https://en.wikipedia.org/w/index.php?title=Module:Color_contrast/doc&diff=998898289&oldid=998796533&diffmode=source]. So we have a cause (bug). Did not investigate problem further.-[[User:DePiep|DePiep]] ([[User talk:DePiep|talk]]) 16:11, 7 January 2021 (UTC)
::: Yes I saw that. But because the category was being added via {{tl|Sandbox other}} and now is added directly via [[Module:Color contrast/doc]], that becomes effectively a different transclusion and the usual caveats about delays because of cached transclusions apply. --[[User:RexxS|RexxS]] ([[User talk:RexxS|talk]]) 16:56, 7 January 2021 (UTC)
::::{{tlf|Sandbox other}} should be checked for Module ns then? But [https://en.wikipedia.org/w/index.php?title=Special%3AWhatLinksHere&target=Template%3ASandbox+other&namespace=828 here] it seems to work. (To be clear: before my edit the category was empty, and no delay was working, no recent edits). I'll leave it for now. -[[User:DePiep|DePiep]] ([[User talk:DePiep|talk]]) 17:18, 7 January 2021 (UTC)
== Template-protected edit request on 18 March 2025 ==
{{edit template-protected|Module:Color contrast|answered=yes}}
Line 135:
{{td| local c2 {{=}} args[2] or '#FFFFFF'| local c2 {{=}} args[2] or 'white'}}
Line 137:
{{td| local c3 {{=}} args[3] or '#000000'| local c3 {{=}} args[3] or 'black'}}
Change the specification of the default colors from hex triplets <syntaxhighlight lang="lua" inline>'#FFFFFF'</syntaxhighlight> and <syntaxhighlight lang="lua" inline>'#000000'</syntaxhighlight> to named HTML colors <syntaxhighlight lang="lua" inline>'white'</syntaxhighlight> and <syntaxhighlight lang="lua" inline>'black'</syntaxhighlight> respectively. This allows the default case to take advantage of the pre-computed table of relative luminances of named HTML colors at [[Module:Color contrast/colors]] checked by the <code>color2lum()</code> function instead of calculating the relative luminances of white and black every time (as the module as currently written does), as well as, at least for the default colors, avoiding a parser bug that causes output that begins with <code>#</code> to result in a numbered list. '''[[User:Kinsio|<span style="color:#df0000">Kinsio</span>]]''' <span style="color:#096450">('''''[[User talk:Kinsio|talk]]''''' ★ '''''[[Special:Contributions/Kinsio|contribs]]''''' ★ '''''[[Special:UserRights/Kinsio|rights]]''''')</span> 18:55, 19 March 2025 (UTC)
: {{done}} [[User:Pppery|* Pppery *]] [[User talk:Pppery|<sub style="color:#800000">it has begun...</sub>]] 20:30, 30 March 2025 (UTC)
== Template-protected edit request on 20 July 2026 ==
{{edit template-protected|Module:Color contrast|answered=no}}
Please update the module to support additional CSS3/CSS4 color formats ("rgba", "hsla", 4-digit and 8-digit hex values) and incorporate several code fixes, bringing it up to speed with the improvements from "ptwiki".
===Key changes===
# Updated regex patterns in "color2lum" to support "rgba()", "hsla()", space-separated values, and "#RGBA" (4-digit) / "#RRGGBBAA" (8-digit) hex formats.
# Fixed a variable check bug in "_greatercontrast" where "v3" was tested instead of "c3".
# Stripped newlines and normalized whitespace in the CSS output for "_greatercontrast" when the "css" flag is active.
# Cleaned up variable scoping in "_styleratio" to prevent shadowing loop index "k" and removed unused variables ("bg", "fg").
Replace the current code of the module with:
{{Collapse-top|Code}}
<syntaxhighlight lang="lua">
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB (v)
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum(R, G, B)
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum(h, s, l)
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum(c)
if (c == nil) then
return ''
end
-- html '#' entity
c = c:gsub("#", "#")
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl / hsla (accepts comma or space delimiters)
if mw.ustring.match(c,'^hsla?%([%s]*[0-9][0-9%.]*[%s]*[,%s][%s]*[0-9][0-9%.]*%%[%s]*[,%s][%s]*[0-9][0-9%.]*%%.*%)$') then
local h, s, l = mw.ustring.match(c,'^hsla?%([%s]*([0-9][0-9%.]*)[%s]*[,%s][%s]*([0-9][0-9%.]*)%%[%s]*[,%s][%s]*([0-9][0-9%.]*)%%.*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb / rgba (numeric values 0 to 255)
if mw.ustring.match(c,'^rgba?%([%s]*[0-9][0-9]*[%s]*[,%s][%s]*[0-9][0-9]*[%s]*[,%s][%s]*[0-9][0-9]*.*%)$') then
local R, G, B = mw.ustring.match(c,'^rgba?%([%s]*([0-9][0-9]*)[%s]*[,%s][%s]*([0-9][0-9]*)[%s]*[,%s][%s]*([0-9][0-9]*).*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb / rgba percent
if mw.ustring.match(c,'^rgba?%([%s]*[0-9][0-9%.]*%%[%s]*[,%s][%s]*[0-9][0-9%.]*%%[%s]*[,%s][%s]*[0-9][0-9%.]*%%.*%)$') then
local R, G, B = mw.ustring.match(c,'^rgba?%([%s]*([0-9][0-9%.]*)%%[%s]*[,%s][%s]*([0-9][0-9%.]*)%%[%s]*[,%s][%s]*([0-9][0-9%.]*)%%.*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 or #cs == 8 ) then -- Accepts 6 digits (#RRGGBB) or 8 digits (#RRGGBBAA)
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 or #cs == 4 ) then -- Accepts 3 digits (#RGB) or 4 digits (#RGBA)
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
-- This exports the function for use in other modules.
-- The colour is passed as a string.
function p._lum(color)
return color2lum(color)
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local css = (args['css'] and args['css'] ~= '') and true or false
local v1 = color2lum(args[1] or '')
local c2 = args[2] or 'white'
local v2 = color2lum(c2)
local c3 = args[3] or 'black'
local v3 = color2lum(c3)
local ratio1 = -1;
local ratio2 = -1;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
if css then
local c1 = args[1] or ''
if mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c1 = '#' .. c1
end
if mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c2 = '#' .. c2
end
if mw.ustring.match(c3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c3 = '#' .. c3
end
local css_output = 'background-color:' .. c1 .. '; color:' .. ((ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or '') .. ';'
-- Remove newlines (\n, \r) and extra spaces before returning CSS
return css_output:gsub('[\r\n]', ''):gsub('%s+', ' ')
end
return (ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then lum_bg = lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then lum_fg = lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local prop, val = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
prop = prop or ''
val = val or ''
if (prop:match('^[%s]*(background)[%s]*$') or prop:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(val)
if( lum ~= '' ) then lum_bg = lum end
elseif (prop:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(val)
if( lum ~= '' ) then lum_fg = lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
--[[
Use {{#invoke:Color contrast|somecolor}} directly or
{{#invoke:Color contrast}} from a wrapper template.
Parameters:
-- |1= — required; A color to check.
--]]
function p.lum(frame)
local color = frame.args[1] or frame:getParent().args[1]
return p._lum(color)
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
</syntaxhighlight>
{{collapse-bottom}}
--[[User:GKNishimoto|GKNishimoto]] ([[User talk:GKNishimoto|talk]]) 05:16, 20 July 2026 (UTC)
:I've gone ahead and done some cleanup on the code and everything generally looks good, but I do have a question. Since this adds support for specifying colours with an alpha, is it correct behaviour to just ignore that alpha property entirely? It feels like that should matter for the purpose of calculating the ratio, though I'm not familiar with the exact scope of this module. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 21:33, 26 July 2026 (UTC)
::Hi @Aidan9382,
::Thanks for reviewing and refining the code in the sandbox! The regex fix in '_greatercontrast' to support 4-digit and 8-digit hex values when using the 'css' flag is a great spot.
::To answer your question directly: Yes, ignoring the alpha component is the intended and correct behavior for this module.
::Under the WCAG 2.1 accessibility guidelines, computing the exact contrast ratio of a semi-transparent color requires blending it against whatever background is rendered behind it. Since this Lua module evaluates color values statically without access to the surrounding page layout or DOM context, it cannot reliably determine the underlying background layer.
::Stripping or ignoring the alpha channel allows the module to gracefully fall back to evaluating the base RGB/HSL contrast without throwing errors or returning blank values when editors pass modern CSS formats (such as '#RRGGBBAA' or 'rgba()').
::The code currently in the sandbox looks great and is ready to be applied. Thanks again for the help! -- [[User:GKNishimoto|GKNishimoto]] ([[User talk:GKNishimoto|talk]]) 21:42, 26 July 2026 (UTC)
::P.S. Thanks again! Once this goes live here, I'll be porting this updated version directly to ptwiki as well to keep both modules completely aligned.-- [[User:GKNishimoto|GKNishimoto]] ([[User talk:GKNishimoto|talk]]) 21:51, 26 July 2026 (UTC)
:::In that case this seems fine, {{Done}}. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 12:42, 27 July 2026 (UTC)
::::This change broke the layout at [[Template:Basketballbox/testcases]] for transclusions using {{para|bg}}. Please test the sandbox module with that template. – [[User:Jonesey95|Jonesey95]] ([[User talk:Jonesey95|talk]]) 16:11, 27 July 2026 (UTC)
:::::More specifically, it caused output in the form of {{code|background-color:#eeeeee; color:#202122;1}}, breaking following css rules. [[User:LittlePuppers|LittlePuppers]] ([[User talk:LittlePuppers|talk]]) 16:16, 27 July 2026 (UTC)
::::::Well, it seems I didn't aniticipate that scribunto would just implicitly concatenate multiple returns instead of taking just the first return, which gsub will cause. Thanks for that. I've gone ahead and [[Special:Diff/1366366777|fixed that in the sandbox]]. [[User:Aidan9382|Aidan9382]] <sub>([[User talk:Aidan9382|talk]])</sub> 16:23, 27 July 2026 (UTC)
:::::::Updated module sandbox to fix the CSS output formatting issue. Removed the <code>:gsub()</code> whitespace/newline compression that was causing multiple return values and appending an unintended '1' to the style string, fully resolving the layout breaks on templates using <code>|bg=</code> (such as Basketballbox) while retaining all new CSS3/CSS4 color format features.
:::::::While Aidan9382's quick fix in the sandbox solved the immediate multiple-return bug by keeping a single <code><nowiki>:gsub('[\r\n]', '')</nowiki></code>, completely removing the extra string manipulation—as we did in our version—is cleaner and fully avoids any potential edge cases with complex template markup or string concatenation in Scribunto. It keeps the CSS output pure, exact, and 100% robust. --[[User:GKNishimoto|GKNishimoto]] ([[User talk:GKNishimoto|talk]]) 17:46, 27 July 2026 (UTC)
g07o8grofkvipdarbzkiuz829kh5ndz
ಮೋಡ್ಯೂಲ್:Namespace detect/config/doc
828
28755
370470
2025-07-04T02:26:18Z
en>GKNishimoto
0
Undid revision [[Special:Diff/1298683987|1298683987]] by [[Special:Contributions/Blackford1212|Blackford1212]] ([[User talk:Blackford1212|talk]])
370470
wikitext
text/x-wiki
{{module rating|protected}}
{{used in system}}
This module provides configuration data for [[Module:Namespace detect]]. To change the data, please follow the instructions in the module comments.
3e9thlzj9fwzs7qtbs30seju6wxgjku
370471
370470
2026-09-28T09:26:47Z
ChiK
1136
1 revision imported from [[:en:Module:Namespace_detect/config/doc]]
370470
wikitext
text/x-wiki
{{module rating|protected}}
{{used in system}}
This module provides configuration data for [[Module:Namespace detect]]. To change the data, please follow the instructions in the module comments.
3e9thlzj9fwzs7qtbs30seju6wxgjku
ಮೋಡ್ಯೂಲ್ ಪಾತೆರ:Namespace detect
829
28756
370472
2026-09-03T06:56:09Z
en>Trialpears
0
Reverted edits by [[Special:Contributions/~2026-47711-04|~2026-47711-04]] ([[User talk:~2026-47711-04|talk]]) to last version by Bbb23.
370472
wikitext
text/x-wiki
{{copied|from=Module:Namespace_detect/data|from_oldid=602886511|to=:incubator:Module:Wp/nod/Namespace_detect/data|to_diff=4237144}}
== Allow parameter aliases ==
Hi {{U|Mr. Stradivarius}}!
Could you change this to allow the configs <code>cfg.main</code>, <code>cfg.talk</code>, <code>cfg.other</code>, <code>cfg.subjectns</code>, <code>cfg.demospace</code> and <code>cfg.page</code> to get either an array of strings (and also just a string, for backwards compatibility) which would be aliases for the parameter name? This would help porting this module to other wikis, since it is common to have both the English parameter name and the translated parameter name being accepted (as in <code><nowiki>{{{Localized parameter|{{{English parameter|}}}}}}</nowiki></code>), or even two different translations for the same parameter. [[User:Helder.wiki|Helder.wiki]] 19:23, 6 March 2014 (UTC)
== Possible performance issues with Module:Namespace_detect ==
:<small>Moved here from my user talk page. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 09:37, 20 March 2014 (UTC)</small>
Hi. Sorry for the bother. I just wanted to bring this matter to your attention.
[[Module:Namespace_detect]] appears to be at the root of some performance issues. For example, I believe it is because of [[Module:Namespace_detect]] that it takes about 30 seconds to preview an edit on [[List_of_Unicode_characters]]
[[List_of_Unicode_characters]] is a large page. However, I believe most of the time is spent by several of the Unicode charts calling [[Module:Namespace_detect]] indirectly through [[Template:Lang]].
For example:
* [[Template:Unicode_chart_Kannada]] has 86 [[Template:Lang]] calls. EX: <nowiki>{{lang|kn|ಂ}}</nowiki>
* Each [[Template:Lang]] calls [[Template:Category handler]]
* [[Template:Category_handler]] is just a wrapper around [[Module:Category_handler]]
* [[Module:Category_handler]] has a _main function that calls nsDetect.getParamMappings()
* getParamMappings in [[Module:Namespace_detect]] has this block of code
<syntaxhighlight lang=lua>
for nsid, ns in pairs(mw.site.subjectNamespaces) do
if nsid ~= 0 then -- Exclude main namespace.
local nsname = mw.ustring.lower(ns.name)
local canonicalName = mw.ustring.lower(ns.canonicalName)
mappings[nsname] = {nsname}
if canonicalName ~= nsname then
table.insert(mappings[nsname], canonicalName)
end
for _, alias in ipairs(ns.aliases) do
table.insert(mappings[nsname], mw.ustring.lower(alias))
end
end
end
</syntaxhighlight>
* Note that this code loops 15 times (as there are 15 subject namespaces)
* Each loop will call mw.ustring.lower 2 times (for simplicity's sake, we can ignore the mw.ustring.lower(alias))
* So, for [[Template:Unicode_chart_Kannada]], there will be 2,580 calls to mw.ustring.lower (86 * 15 * 2)
* There are several more Unicode charts on the page that call lang: for example [[Template:Unicode chart Myanmar]]
* All told, there are approximately 100,000 calls to mw.ustring.lower from one edit to this page
* Although mw.ustring.lower and Language:lc are relatively simple procs, there are overhead costs with going back and forth between Lua / PHP. Even at 3,300 calls per second, it will take the aforementioned 30 seconds to preview an edit
I also have reason to believe that variations of this situation are repeated elsewhere on other pages. For context, I am the developer of [http://xowa.sourceforge.net XOWA] (an offline wiki app), and I do monthly parses of English Wikipedia's 4.4 million mainspace articles. Module:Namespace_detect is flagged as one of the most time-consuming #invokes. I never understood why, until tonight.
As a recommendation, you could move getParamMappings to a new [[Module:Namespace_detect/Data]] page and use "return mw.loadData('Module:Namespace_detect/Data')". This change would be straightforward and improve performance, though you would have to change the Module to preserve the portable cfg table.
Let me know if you need more info.
Thanks.
[[User_talk:Gnosygnu|gnosygnu]] 08:28, 20 March 2014 (UTC)
:This should be at some template/module talk page, with just a link here. Perhaps Mr.S would like to move all this? I have not looked at the issue, but the requirement to detect the namespace multiple times should be removed (obviously!). After ten seconds research, I'm guessing that {{tl|Lang}} detects the namespace each time it is invoked in order to decide whether to add a category. That's way over-the-top on a page like [[List of Unicode characters]] that is apparently using {{tl|Lang}} many times. A clever template coder should add a parameter which can be used to omit all that overhead. [[User:Johnuniq|Johnuniq]] ([[User talk:Johnuniq|talk]]) 09:27, 20 March 2014 (UTC)
:{{ec}} Hi Gnosygnu, and thank you for the detailed analysis! I wrote [[Module:Namespace detect]] back when I wasn't that experienced with Lua, and I was actually thinking that I should go back and have a look at it now that I have a few more modules under my belt. While it (maybe, hopefully) should be faster than the old wikitext version, we can obviously make things a lot better. I'll have a look at it, implement your suggestions, and see if there are any other changes that might need making. Best — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 09:34, 20 March 2014 (UTC)
:: Sorry about the wrong placement, and thanks for moving it.[[User_talk:Gnosygnu|gnosygnu]] 03:08, 21 March 2014 (UTC)
{{edit protected|ans=y}}
Please replace the contents of the page with [https://en.wikipedia.org/w/index.php?title=Module:Namespace_detect/sandbox&oldid=600467500 this]. This will cause getParamMappings to only run once per page, rather than once per #invoke, per the above discussion. [[User:Jackmcbarn|Jackmcbarn]] ([[User talk:Jackmcbarn|talk]]) 16:20, 20 March 2014 (UTC)
:Hold on a second - I have some other changes I'd like to make to the code before we put this up live. At the moment we are expanding all the arguments we are passed, for example. It would be better to only expand the ones necessary for the namespace the page is called from. And I'd like to implement Helder's suggestion above as well. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 02:32, 21 March 2014 (UTC)
: Thanks for making the proposed changes. I made two changes now:
:* I re-added p.getParamMappings since it is public and other Modules call it. For example, [[Module:Category_handler]] has this: <code>local mappings = nsDetect.getParamMappings()</code>
:* <s>I wasn't sure if the <code>function p.table(frame)</code> was supposed to change. I reverted it back to the current version. Feel free to revert back your version if the change was deliberate.</s> It looks like this was deliberate. My apologies.
:Otherwise, it tested fine in a limited test on my machine.
:FWIW: my initial estimate of 100,000 calls looks like it is closer to 85,000 calls. This means there were roughly 2,833 calls to Module:Namespace_detect. (85,000 / (15 * 2))
:The page still does roughly 27,000 calls b/c of the matchesBlacklist function. This correlates with the above figure: 27,000 calls / 9 blacklisted terms => 3,000 calls to Module:Category_handler. I don't know if this can be fixed easily, as matchesBlacklist can't be made a static variable and no_cat = false is the default
:At any rate, I'm hoping this should drop [[List_of_Unicode_characters]] to somewhere between 6 and 8 seconds to render (vs approximately 30 now)[[User_talk:Gnosygnu|gnosygnu]] 03:08, 21 March 2014 (UTC)
:: You could probably use [[mw:Extension:TemplateSandbox]] to test it. (Also, I'm sure [[mw:Help:Extension:TemplateSandbox|TemplateSandbox's documentation]] could use some love if you're willing to help.) [[User:Anomie|Anomie]][[User talk:Anomie|⚔]] 12:26, 22 March 2014 (UTC)
::: Thanks {{ping|Anomie}} for the link. I didn't know about this Extension before.
::: I tried it now<s>, and got mixed results</s>. I'm still getting the same profile render time (25 seconds), but the Lua Profile table is clearly different.
::: [https://en.wikipedia.org/w/index.php?title=List_of_Unicode_characters&action=edit List_of_Unicode_characters]
<pre>
Lua Profile:
Scribunto_LuaSandboxCallback::getAllExpandedArguments 4540 ms 49.3%
Scribunto_LuaSandboxCallback::lc 1660 ms 18.0%
Scribunto_LuaSandboxCallback::match 1140 ms 12.4%
recursiveClone <mw.lua:109> 620 ms 6.7%
Scribunto_LuaSandboxCallback::gsub 360 ms 3.9%
type 100 ms 1.1%
(for generator) 100 ms 1.1%
<mw.language.lua:87> 80 ms 0.9%
getParamMappings <Module:Namespace_detect:69> 80 ms 0.9%
Scribunto_LuaSandboxCallback::loadPackage 60 ms 0.7%
[others] 460 ms 5.0%
</pre>
::: [https://en.wikipedia.org/wiki/Special:TemplateSandbox?prefix=User%3AGnosygnu%2Fsandbox&page=List_of_Unicode_characters Sandbox]
<pre>
Lua Profile:
Scribunto_LuaSandboxCallback::getAllExpandedArguments 3420 ms 57.0%
Scribunto_LuaSandboxCallback::match 760 ms 12.7%
recursiveClone <mw.lua:109> 540 ms 9.0%
Scribunto_LuaSandboxCallback::gsub 320 ms 5.3%
dataWrapper <mw.lua:698> 140 ms 2.3%
(for generator) 140 ms 2.3%
Scribunto_LuaSandboxCallback::getExpandedArgument 140 ms 2.3%
type 120 ms 2.0%
Scribunto_LuaSandboxCallback::lc 60 ms 1.0%
<mw.title.lua:50> 60 ms 1.0%
[others] 300 ms 5.0%
</pre>
::: Clearly the sandbox is picking up the new changes (lc falls from 18% to 1%). I'm pretty sure I'm using the correct prefix: User:Gnosygnu/sandbox. If I use an incorrect prefix, such as User:Gnosygnu/sandbox_invalid, I get the same Lua Profile as the current page.
::: <s>I'll play with this some more later, but I just wanted to let you know.</s> After further investigation, I'm beginning to think that the multiple lc Scribunto calls have a more dramatic effect in LuaStandalone than LuaSandbox -- presumably because LuaStandalone serializes all messages back and forth. As such, Special:TemplateSandbox may very well be correct. The new change will reduce the number of lc calls, but won't have any real meaningful effect (maybe 1 second faster). Any performance issues with the current page might be due to regular Template expansion. [[User_talk:Gnosygnu|gnosygnu]] 16:47, 22 March 2014 (UTC)
{{ping|Gnosygnu|Jackmcbarn}} I've finished making my changes to [[Module:Namespace detect/sandbox]]:
* I've moved the configuration to a separate page, [[Module:Namespace detect/config]]. This is to try make the distinction between code and configuration clearer.
* I have also implemented Helder's suggestion - now the parameter config values can be specified either as an array of strings or just a string.
* All config values have now been made optional.
* The p.main function now uses [[Module:Arguments]], which means that arguments are now only fetched when they are needed. (Before they were all expanded before being passed to p._main.)
* I've also simplified the p._main code to avoid an unnecessary for loop. As part of this, I have replaced the tail call from p.main to p._main with a retval. This is to make more explicit the fact that on finding no matches at all, the module should return nil for other Lua modules and the blank string for #invoke. If there are any objections to this, we can always revert it back to an implicit return value.
* Finally, I have revamped the p.table code so that the namespaces are now displayed in order, and so that {{para|talk|yes}} actually works.
Let me know what you think of the changes, and if everything looks good we can update the main module. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 13:31, 22 March 2014 (UTC)
:{{ping|Mr. Stradivarius}} Thanks for the changes. I think they're fine. I've done a modified test on my machine, as well as the TemplateSandbox (See my comment above). "lc" is no longer a significant portion of execution time. I'm still seeing the same number of calls to "match", but I think the calling templates need to be changed. FWIW, my own tests (using XOWA) show no measurable performance difference with the latest changes. This may be because I'm using LuaStandalone vs LuaSandbox. (LuaSandbox is not possible in a Windows / Java environment). There may be other apples to oranges issues as well, though I still believe that "lc" is a significant performance cost [[User_talk:Gnosygnu|gnosygnu]] 15:44, 22 March 2014 (UTC)
::Yes, I expected that my latest changes wouldn't increase performance for most pages. For pages using {{tl|namespace detect}} directly, the switch to [[Module:Arguments]] may provide a significant boost, depending on what wikitext would have otherwise been expanded. But most transclusions of [[Module:Namespace detect]] come through [[Module:Category handler]], and those uses aren't affected by that change. Your original suggestion is definitely the big performance-saver. For further performance savings we might want to consider removing the page and demospace parameters, as that would enable caching of the namespace data with mw.loadData. If we did the same thing with [[Module:Category handler]], we would also be able to cache the blacklist checks. The downside to that would be that the module test cases would no longer work, but I think that the performance benefits might outweigh that disadvantage. Another performance saving could be made by changing [[Module:Category handler]] to only expand arguments when necessary. That could be done by using [[Module:Arguments]], and by using metatables to pass arguments to [[Module:Namespace detect]] by proxy. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 16:33, 22 March 2014 (UTC)
:::Okay. Thanks for the explanation. I'm beginning to think that even the "lc" calls won't make a noticeable difference because of LuaSandbox / LuaStandalone differences. (see my comment above). If so, then the real performance problems may be non-Module related, though I'm at a loss to suggest what. (Templates?) [[User_talk:Gnosygnu|gnosygnu]] 16:47, 22 March 2014 (UTC)
::::{{ping|Mr. Stradivarius}} I don't like local variables to avoid table lookups. I think that makes the code more confusing, and I don't think it really helps much (if at all) with performance. Other than that, looks good. [[User:Jackmcbarn|Jackmcbarn]] ([[User talk:Jackmcbarn|talk]]) 00:51, 23 March 2014 (UTC)
:::::If this was a less performance-critical module I would probably agree with you, and I admit that I'm guilty of overusing this technique. However, if we're talking about tens of thousands of calls to a loop every time a page is parsed, I think it would make enough of a difference to be worth doing. I'm basing this on [http://www.lua.org/gems/sample.pdf Lua Performance Tips by Roberto Ierusalimschy], which says that using local variables is 30% faster than using table lookups. Of course, 30% faster than hardly anything is still hardly anything, so it might make sense to change some of those local variables back to table lookups to make the code easier to read. In particular I would guess that using them in the /data page is not important, since that is cached with mw.loadData now. But it would make sense to use local variables for the functions that are getting called multiple times per #invoke. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 11:06, 23 March 2014 (UTC)
::::{{ping|Gnosygnu}} The real performance problems are definitely not module-related. When I previewed [[List of Unicode characters]] just now with the old version of [[Module:Namespace detect]], it took 40 seconds to parse, but the Lua time usage was only reported at about 4.3 seconds. So the other 36 seconds must be from something other than Lua. Templates are a very likely candidate - the current post-expand include size is 1944444/2048000 bytes, and I count 207 different templates and modules used - but I have also seen performance issues like this on pages containing lots of images. This would be a good question to ask at [[WP:VPT]], I think. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 11:06, 23 March 2014 (UTC)
:::::{{ping|Mr. Stradivarius}} Yeah, sorry about that. I should've checked the Profile at the start. On my machine, the lc calls to Scribunto has a much larger impact, but I'm beginning to think that this is because
:::::* I only partially reconstructed [[List of Unicode characters]] and most of the templates were not brought over
:::::* I'm using LuaStandalone because I'm on Windows. LuaStandalone serializes all messages back and forth from Lua to PHP. (In contrast, Wikipedia is using LuaSandbox which hooks PHP directly to Lua)
:::::* There really are 85,000+ calls to lc, and I saw a significant difference by skipping this section.
:::::In the future, I'll check the Parser Output more closely. I'll also try to set up a full enwiki environment on a machine here so I can get a better comparison.
:::::Thanks for making the changes . I'm hoping they should still help in some way. [[User_talk:Gnosygnu|gnosygnu]] 21:07, 23 March 2014 (UTC)
::::::Nothing to apologise about - your concerns were perfectly valid, and I want this module to run well on all wikis, not just the English Wikipedia. I've updated the main module now with the sandbox version, so we will now see if our efforts have paid off. :) Let me know if you spot anything strange happening. Best — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 11:58, 24 March 2014 (UTC)
:::::::Yeah, it looks like barely a second of difference, if even. Oh well. (*sigh*)
:::::::Thanks again for the changes. [[User_talk:Gnosygnu|gnosygnu]] 02:43, 25 March 2014 (UTC)
== Module:Namespace detect/data ==
<small>Moved from my talk page. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 14:30, 25 March 2014 (UTC)</small>
Hello. Is there any good reason to include <code>local cfg = require('Module:Namespace detect/config')</code> on enwiki. The config file is "empty". [[User:Christian75|Christian75]] ([[User talk:Christian75|talk]]) 09:13, 25 March 2014 (UTC)
:The module needs to check the /config page to see if there are any configuration differences that it needs to process. This allows us to use the same basic code on enwiki as on other wikis using different languages. If those differences weren't in the /config file, they would have to be put in the main module code, which would mean we would have to produce different modules for all the different languages we wanted to localise to. It's a labour-saving device - if we didn't do the localisation work here, it would fall to editors on the different wikis to directly alter the module code. I would guess that this way of doing things is much easier for editors working in localisation to understand. If you're worried about performance, the /data page is loaded with mw.loadData, which means the config table is cached per page, so the overhead in loading it is minimal. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 14:38, 25 March 2014 (UTC)
:: or we could just change:
<syntaxhighlight lang=lua>local cfg = require('Module:Namespace detect/config')</syntaxhighlight>
with
<syntaxhighlight lang=lua>-- local cfg = require('Module:Namespace detect/config') -- enable this line and disable the next line if you want to localize the output
local cfg = {}</syntaxhighlight>
Its 9,900,000 transclusions of nothing at enwiki. [[User:Christian75|Christian75]] ([[User talk:Christian75|talk]]) 10:35, 26 March 2014 (UTC)
:::We could, but then that would mean that users would have to edit the module code to configure the module, rather than just the configuration file. I'd rather only do this if there is a real problem with loading the config file on enwiki, and I don't think the module having a high transclusion count is really enough of a reason. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 11:01, 26 March 2014 (UTC)
::::If it were a problem, it would be possible to have a "no config" argument passed to the module, and if that were set, it would skip loading the config. However, I agree with Mr. Stradivarius—the overhead is probably very small, and there is no evidence that omitting the config would achieve anything. Even if requiring a module took a significant time (it doesn't), the caching of the 9.9 million pages means that the require overhead would still be small. What I find interesting is that the main module uses "loadData" on the data module, and the latter uses "require" on the config module. I wonder what would happen if something prohibited by loadData were in config. I'll have to run a test one day. [[User:Johnuniq|Johnuniq]] ([[User talk:Johnuniq|talk]]) 11:27, 26 March 2014 (UTC)
:::::mw.loadData scans the table it is passed to make sure it hasn't received any invalid data. ([https://git.wikimedia.org/blob/mediawiki%2Fextensions%2FScribunto/b66ae0671335ae31798769d5e3382b136d0614b7/engines%2FLuaCommon%2Flualib%2Fmw.lua#L746 Here's] the validation code.) So the invalid data would get through to the /data page fine, but when the table is loaded from /data to the main module it would cause an error. But yes, try it and see for yourself. :) — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 12:39, 26 March 2014 (UTC)
:::::Also, checking a "no config" argument may have a bigger overhead than loading the /config module, especially seeing as an argument would be checked once per #invoke and not once per page. I'd be interested to see the numbers for that if anyone feels like setting up a test. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 12:49, 26 March 2014 (UTC)
::::::I don't see harm in loading a "blank" config. I think it would just overcomplicate it to add any such checks. [[User:Jackmcbarn|Jackmcbarn]] ([[User talk:Jackmcbarn|talk]]) 21:25, 27 March 2014 (UTC)
== Script error in WikiProject banner on [[Talk:Air Miles]] ==
The WikiProject banner at the top of [[Talk:Air Miles]] contains the following:
*This Script error does not require a rating on the project's quality scale.
*This Script error is supported by the airline project.
The error message in both cases is: Lua error in Module:Namespace_detect at line 32: bad argument #1 to 'ipairs' (table expected, got nil).
{{ping|Mr. Stradivarius}} ping. [[User:Jackmcbarn|Jackmcbarn]] ([[User talk:Jackmcbarn|talk]]) 21:06, 13 April 2014 (UTC)
::It's gone from that page now, but it's since appeared on [[Talk:Illicit major]] and [[Talk:Río Negro (newspaper)]]. [[User:Jackmcbarn|Jackmcbarn]] ([[User talk:Jackmcbarn|talk]]) 03:06, 14 April 2014 (UTC)
:::Possibly the error is cached after the last update to the module? Some pages may have produced script errors in the few seconds between me updating the /config module and me updating the /data module. Given the number of transclusions this module has, it's quite likely that some might have stuck around since then. If there are any errors that still appear after purging the page, let me know. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 04:23, 14 April 2014 (UTC)
== Protected edit request on 14 May 2014 ==
{{edit protected|Module:Namespace detect/config|answered=yes}}
<!-- Begin request -->
<!-- End request -->
[[Special:Contributions/77.30.122.165|77.30.122.165]] ([[User talk:77.30.122.165|talk]]) 08:20, 14 May 2014 (UTC)
:[[File:Red question icon with gradient background.svg|20px|link=]] '''Not done:''' it's not clear what changes you want made. Please mention the specific changes in a "change X to Y" format.<!-- Template:EP --> — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 08:36, 14 May 2014 (UTC)
== Issue when moving to a local Wiki ==
Not asking for a change, as it could potentially break stuff here on Wikipedia (no idea). Just for information.
Took a while to figure out why it didn't work on my local Wiki. But think I solved it after changing the following lines in [[Module:Namespace_detect/data]]. Starting at line 64
<syntaxhighlight lang="lua">
for nsid, ns in pairs(mw.site.subjectNamespaces) do
if nsid ~= 0 then -- Exclude main namespace.
local nsname = ns.name
local lcNsname = mw.ustring.lower(ns.name)
local canonicalName = mw.ustring.lower(ns.canonicalName)
-- For custom namespaces (custom Wiki) the casing is important
-- and needs to be preserved
if canonicalName == lcNsname then
nsname = lcNsname
end
mappings[nsname] = {nsname}
if canonicalName ~= nsname then
table.insert(mappings[nsname], canonicalName)
end
for _, alias in ipairs(ns.aliases) do
table.insert(mappings[nsname], mw.ustring.lower(alias))
end
end
end
</syntaxhighlight>
–[[User:Rinellie|Rinellie]] ([[User talk:Rinellie|talk]]) 18:59, 30 March 2016 (UTC)
kzqc974tb7xyuqa3xrhqmfdbar5rue6
370473
370472
2026-09-28T09:26:48Z
ChiK
1136
1 revision imported from [[:en:Module_talk:Namespace_detect]]
370472
wikitext
text/x-wiki
{{copied|from=Module:Namespace_detect/data|from_oldid=602886511|to=:incubator:Module:Wp/nod/Namespace_detect/data|to_diff=4237144}}
== Allow parameter aliases ==
Hi {{U|Mr. Stradivarius}}!
Could you change this to allow the configs <code>cfg.main</code>, <code>cfg.talk</code>, <code>cfg.other</code>, <code>cfg.subjectns</code>, <code>cfg.demospace</code> and <code>cfg.page</code> to get either an array of strings (and also just a string, for backwards compatibility) which would be aliases for the parameter name? This would help porting this module to other wikis, since it is common to have both the English parameter name and the translated parameter name being accepted (as in <code><nowiki>{{{Localized parameter|{{{English parameter|}}}}}}</nowiki></code>), or even two different translations for the same parameter. [[User:Helder.wiki|Helder.wiki]] 19:23, 6 March 2014 (UTC)
== Possible performance issues with Module:Namespace_detect ==
:<small>Moved here from my user talk page. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 09:37, 20 March 2014 (UTC)</small>
Hi. Sorry for the bother. I just wanted to bring this matter to your attention.
[[Module:Namespace_detect]] appears to be at the root of some performance issues. For example, I believe it is because of [[Module:Namespace_detect]] that it takes about 30 seconds to preview an edit on [[List_of_Unicode_characters]]
[[List_of_Unicode_characters]] is a large page. However, I believe most of the time is spent by several of the Unicode charts calling [[Module:Namespace_detect]] indirectly through [[Template:Lang]].
For example:
* [[Template:Unicode_chart_Kannada]] has 86 [[Template:Lang]] calls. EX: <nowiki>{{lang|kn|ಂ}}</nowiki>
* Each [[Template:Lang]] calls [[Template:Category handler]]
* [[Template:Category_handler]] is just a wrapper around [[Module:Category_handler]]
* [[Module:Category_handler]] has a _main function that calls nsDetect.getParamMappings()
* getParamMappings in [[Module:Namespace_detect]] has this block of code
<syntaxhighlight lang=lua>
for nsid, ns in pairs(mw.site.subjectNamespaces) do
if nsid ~= 0 then -- Exclude main namespace.
local nsname = mw.ustring.lower(ns.name)
local canonicalName = mw.ustring.lower(ns.canonicalName)
mappings[nsname] = {nsname}
if canonicalName ~= nsname then
table.insert(mappings[nsname], canonicalName)
end
for _, alias in ipairs(ns.aliases) do
table.insert(mappings[nsname], mw.ustring.lower(alias))
end
end
end
</syntaxhighlight>
* Note that this code loops 15 times (as there are 15 subject namespaces)
* Each loop will call mw.ustring.lower 2 times (for simplicity's sake, we can ignore the mw.ustring.lower(alias))
* So, for [[Template:Unicode_chart_Kannada]], there will be 2,580 calls to mw.ustring.lower (86 * 15 * 2)
* There are several more Unicode charts on the page that call lang: for example [[Template:Unicode chart Myanmar]]
* All told, there are approximately 100,000 calls to mw.ustring.lower from one edit to this page
* Although mw.ustring.lower and Language:lc are relatively simple procs, there are overhead costs with going back and forth between Lua / PHP. Even at 3,300 calls per second, it will take the aforementioned 30 seconds to preview an edit
I also have reason to believe that variations of this situation are repeated elsewhere on other pages. For context, I am the developer of [http://xowa.sourceforge.net XOWA] (an offline wiki app), and I do monthly parses of English Wikipedia's 4.4 million mainspace articles. Module:Namespace_detect is flagged as one of the most time-consuming #invokes. I never understood why, until tonight.
As a recommendation, you could move getParamMappings to a new [[Module:Namespace_detect/Data]] page and use "return mw.loadData('Module:Namespace_detect/Data')". This change would be straightforward and improve performance, though you would have to change the Module to preserve the portable cfg table.
Let me know if you need more info.
Thanks.
[[User_talk:Gnosygnu|gnosygnu]] 08:28, 20 March 2014 (UTC)
:This should be at some template/module talk page, with just a link here. Perhaps Mr.S would like to move all this? I have not looked at the issue, but the requirement to detect the namespace multiple times should be removed (obviously!). After ten seconds research, I'm guessing that {{tl|Lang}} detects the namespace each time it is invoked in order to decide whether to add a category. That's way over-the-top on a page like [[List of Unicode characters]] that is apparently using {{tl|Lang}} many times. A clever template coder should add a parameter which can be used to omit all that overhead. [[User:Johnuniq|Johnuniq]] ([[User talk:Johnuniq|talk]]) 09:27, 20 March 2014 (UTC)
:{{ec}} Hi Gnosygnu, and thank you for the detailed analysis! I wrote [[Module:Namespace detect]] back when I wasn't that experienced with Lua, and I was actually thinking that I should go back and have a look at it now that I have a few more modules under my belt. While it (maybe, hopefully) should be faster than the old wikitext version, we can obviously make things a lot better. I'll have a look at it, implement your suggestions, and see if there are any other changes that might need making. Best — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 09:34, 20 March 2014 (UTC)
:: Sorry about the wrong placement, and thanks for moving it.[[User_talk:Gnosygnu|gnosygnu]] 03:08, 21 March 2014 (UTC)
{{edit protected|ans=y}}
Please replace the contents of the page with [https://en.wikipedia.org/w/index.php?title=Module:Namespace_detect/sandbox&oldid=600467500 this]. This will cause getParamMappings to only run once per page, rather than once per #invoke, per the above discussion. [[User:Jackmcbarn|Jackmcbarn]] ([[User talk:Jackmcbarn|talk]]) 16:20, 20 March 2014 (UTC)
:Hold on a second - I have some other changes I'd like to make to the code before we put this up live. At the moment we are expanding all the arguments we are passed, for example. It would be better to only expand the ones necessary for the namespace the page is called from. And I'd like to implement Helder's suggestion above as well. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 02:32, 21 March 2014 (UTC)
: Thanks for making the proposed changes. I made two changes now:
:* I re-added p.getParamMappings since it is public and other Modules call it. For example, [[Module:Category_handler]] has this: <code>local mappings = nsDetect.getParamMappings()</code>
:* <s>I wasn't sure if the <code>function p.table(frame)</code> was supposed to change. I reverted it back to the current version. Feel free to revert back your version if the change was deliberate.</s> It looks like this was deliberate. My apologies.
:Otherwise, it tested fine in a limited test on my machine.
:FWIW: my initial estimate of 100,000 calls looks like it is closer to 85,000 calls. This means there were roughly 2,833 calls to Module:Namespace_detect. (85,000 / (15 * 2))
:The page still does roughly 27,000 calls b/c of the matchesBlacklist function. This correlates with the above figure: 27,000 calls / 9 blacklisted terms => 3,000 calls to Module:Category_handler. I don't know if this can be fixed easily, as matchesBlacklist can't be made a static variable and no_cat = false is the default
:At any rate, I'm hoping this should drop [[List_of_Unicode_characters]] to somewhere between 6 and 8 seconds to render (vs approximately 30 now)[[User_talk:Gnosygnu|gnosygnu]] 03:08, 21 March 2014 (UTC)
:: You could probably use [[mw:Extension:TemplateSandbox]] to test it. (Also, I'm sure [[mw:Help:Extension:TemplateSandbox|TemplateSandbox's documentation]] could use some love if you're willing to help.) [[User:Anomie|Anomie]][[User talk:Anomie|⚔]] 12:26, 22 March 2014 (UTC)
::: Thanks {{ping|Anomie}} for the link. I didn't know about this Extension before.
::: I tried it now<s>, and got mixed results</s>. I'm still getting the same profile render time (25 seconds), but the Lua Profile table is clearly different.
::: [https://en.wikipedia.org/w/index.php?title=List_of_Unicode_characters&action=edit List_of_Unicode_characters]
<pre>
Lua Profile:
Scribunto_LuaSandboxCallback::getAllExpandedArguments 4540 ms 49.3%
Scribunto_LuaSandboxCallback::lc 1660 ms 18.0%
Scribunto_LuaSandboxCallback::match 1140 ms 12.4%
recursiveClone <mw.lua:109> 620 ms 6.7%
Scribunto_LuaSandboxCallback::gsub 360 ms 3.9%
type 100 ms 1.1%
(for generator) 100 ms 1.1%
<mw.language.lua:87> 80 ms 0.9%
getParamMappings <Module:Namespace_detect:69> 80 ms 0.9%
Scribunto_LuaSandboxCallback::loadPackage 60 ms 0.7%
[others] 460 ms 5.0%
</pre>
::: [https://en.wikipedia.org/wiki/Special:TemplateSandbox?prefix=User%3AGnosygnu%2Fsandbox&page=List_of_Unicode_characters Sandbox]
<pre>
Lua Profile:
Scribunto_LuaSandboxCallback::getAllExpandedArguments 3420 ms 57.0%
Scribunto_LuaSandboxCallback::match 760 ms 12.7%
recursiveClone <mw.lua:109> 540 ms 9.0%
Scribunto_LuaSandboxCallback::gsub 320 ms 5.3%
dataWrapper <mw.lua:698> 140 ms 2.3%
(for generator) 140 ms 2.3%
Scribunto_LuaSandboxCallback::getExpandedArgument 140 ms 2.3%
type 120 ms 2.0%
Scribunto_LuaSandboxCallback::lc 60 ms 1.0%
<mw.title.lua:50> 60 ms 1.0%
[others] 300 ms 5.0%
</pre>
::: Clearly the sandbox is picking up the new changes (lc falls from 18% to 1%). I'm pretty sure I'm using the correct prefix: User:Gnosygnu/sandbox. If I use an incorrect prefix, such as User:Gnosygnu/sandbox_invalid, I get the same Lua Profile as the current page.
::: <s>I'll play with this some more later, but I just wanted to let you know.</s> After further investigation, I'm beginning to think that the multiple lc Scribunto calls have a more dramatic effect in LuaStandalone than LuaSandbox -- presumably because LuaStandalone serializes all messages back and forth. As such, Special:TemplateSandbox may very well be correct. The new change will reduce the number of lc calls, but won't have any real meaningful effect (maybe 1 second faster). Any performance issues with the current page might be due to regular Template expansion. [[User_talk:Gnosygnu|gnosygnu]] 16:47, 22 March 2014 (UTC)
{{ping|Gnosygnu|Jackmcbarn}} I've finished making my changes to [[Module:Namespace detect/sandbox]]:
* I've moved the configuration to a separate page, [[Module:Namespace detect/config]]. This is to try make the distinction between code and configuration clearer.
* I have also implemented Helder's suggestion - now the parameter config values can be specified either as an array of strings or just a string.
* All config values have now been made optional.
* The p.main function now uses [[Module:Arguments]], which means that arguments are now only fetched when they are needed. (Before they were all expanded before being passed to p._main.)
* I've also simplified the p._main code to avoid an unnecessary for loop. As part of this, I have replaced the tail call from p.main to p._main with a retval. This is to make more explicit the fact that on finding no matches at all, the module should return nil for other Lua modules and the blank string for #invoke. If there are any objections to this, we can always revert it back to an implicit return value.
* Finally, I have revamped the p.table code so that the namespaces are now displayed in order, and so that {{para|talk|yes}} actually works.
Let me know what you think of the changes, and if everything looks good we can update the main module. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 13:31, 22 March 2014 (UTC)
:{{ping|Mr. Stradivarius}} Thanks for the changes. I think they're fine. I've done a modified test on my machine, as well as the TemplateSandbox (See my comment above). "lc" is no longer a significant portion of execution time. I'm still seeing the same number of calls to "match", but I think the calling templates need to be changed. FWIW, my own tests (using XOWA) show no measurable performance difference with the latest changes. This may be because I'm using LuaStandalone vs LuaSandbox. (LuaSandbox is not possible in a Windows / Java environment). There may be other apples to oranges issues as well, though I still believe that "lc" is a significant performance cost [[User_talk:Gnosygnu|gnosygnu]] 15:44, 22 March 2014 (UTC)
::Yes, I expected that my latest changes wouldn't increase performance for most pages. For pages using {{tl|namespace detect}} directly, the switch to [[Module:Arguments]] may provide a significant boost, depending on what wikitext would have otherwise been expanded. But most transclusions of [[Module:Namespace detect]] come through [[Module:Category handler]], and those uses aren't affected by that change. Your original suggestion is definitely the big performance-saver. For further performance savings we might want to consider removing the page and demospace parameters, as that would enable caching of the namespace data with mw.loadData. If we did the same thing with [[Module:Category handler]], we would also be able to cache the blacklist checks. The downside to that would be that the module test cases would no longer work, but I think that the performance benefits might outweigh that disadvantage. Another performance saving could be made by changing [[Module:Category handler]] to only expand arguments when necessary. That could be done by using [[Module:Arguments]], and by using metatables to pass arguments to [[Module:Namespace detect]] by proxy. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 16:33, 22 March 2014 (UTC)
:::Okay. Thanks for the explanation. I'm beginning to think that even the "lc" calls won't make a noticeable difference because of LuaSandbox / LuaStandalone differences. (see my comment above). If so, then the real performance problems may be non-Module related, though I'm at a loss to suggest what. (Templates?) [[User_talk:Gnosygnu|gnosygnu]] 16:47, 22 March 2014 (UTC)
::::{{ping|Mr. Stradivarius}} I don't like local variables to avoid table lookups. I think that makes the code more confusing, and I don't think it really helps much (if at all) with performance. Other than that, looks good. [[User:Jackmcbarn|Jackmcbarn]] ([[User talk:Jackmcbarn|talk]]) 00:51, 23 March 2014 (UTC)
:::::If this was a less performance-critical module I would probably agree with you, and I admit that I'm guilty of overusing this technique. However, if we're talking about tens of thousands of calls to a loop every time a page is parsed, I think it would make enough of a difference to be worth doing. I'm basing this on [http://www.lua.org/gems/sample.pdf Lua Performance Tips by Roberto Ierusalimschy], which says that using local variables is 30% faster than using table lookups. Of course, 30% faster than hardly anything is still hardly anything, so it might make sense to change some of those local variables back to table lookups to make the code easier to read. In particular I would guess that using them in the /data page is not important, since that is cached with mw.loadData now. But it would make sense to use local variables for the functions that are getting called multiple times per #invoke. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 11:06, 23 March 2014 (UTC)
::::{{ping|Gnosygnu}} The real performance problems are definitely not module-related. When I previewed [[List of Unicode characters]] just now with the old version of [[Module:Namespace detect]], it took 40 seconds to parse, but the Lua time usage was only reported at about 4.3 seconds. So the other 36 seconds must be from something other than Lua. Templates are a very likely candidate - the current post-expand include size is 1944444/2048000 bytes, and I count 207 different templates and modules used - but I have also seen performance issues like this on pages containing lots of images. This would be a good question to ask at [[WP:VPT]], I think. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 11:06, 23 March 2014 (UTC)
:::::{{ping|Mr. Stradivarius}} Yeah, sorry about that. I should've checked the Profile at the start. On my machine, the lc calls to Scribunto has a much larger impact, but I'm beginning to think that this is because
:::::* I only partially reconstructed [[List of Unicode characters]] and most of the templates were not brought over
:::::* I'm using LuaStandalone because I'm on Windows. LuaStandalone serializes all messages back and forth from Lua to PHP. (In contrast, Wikipedia is using LuaSandbox which hooks PHP directly to Lua)
:::::* There really are 85,000+ calls to lc, and I saw a significant difference by skipping this section.
:::::In the future, I'll check the Parser Output more closely. I'll also try to set up a full enwiki environment on a machine here so I can get a better comparison.
:::::Thanks for making the changes . I'm hoping they should still help in some way. [[User_talk:Gnosygnu|gnosygnu]] 21:07, 23 March 2014 (UTC)
::::::Nothing to apologise about - your concerns were perfectly valid, and I want this module to run well on all wikis, not just the English Wikipedia. I've updated the main module now with the sandbox version, so we will now see if our efforts have paid off. :) Let me know if you spot anything strange happening. Best — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 11:58, 24 March 2014 (UTC)
:::::::Yeah, it looks like barely a second of difference, if even. Oh well. (*sigh*)
:::::::Thanks again for the changes. [[User_talk:Gnosygnu|gnosygnu]] 02:43, 25 March 2014 (UTC)
== Module:Namespace detect/data ==
<small>Moved from my talk page. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 14:30, 25 March 2014 (UTC)</small>
Hello. Is there any good reason to include <code>local cfg = require('Module:Namespace detect/config')</code> on enwiki. The config file is "empty". [[User:Christian75|Christian75]] ([[User talk:Christian75|talk]]) 09:13, 25 March 2014 (UTC)
:The module needs to check the /config page to see if there are any configuration differences that it needs to process. This allows us to use the same basic code on enwiki as on other wikis using different languages. If those differences weren't in the /config file, they would have to be put in the main module code, which would mean we would have to produce different modules for all the different languages we wanted to localise to. It's a labour-saving device - if we didn't do the localisation work here, it would fall to editors on the different wikis to directly alter the module code. I would guess that this way of doing things is much easier for editors working in localisation to understand. If you're worried about performance, the /data page is loaded with mw.loadData, which means the config table is cached per page, so the overhead in loading it is minimal. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 14:38, 25 March 2014 (UTC)
:: or we could just change:
<syntaxhighlight lang=lua>local cfg = require('Module:Namespace detect/config')</syntaxhighlight>
with
<syntaxhighlight lang=lua>-- local cfg = require('Module:Namespace detect/config') -- enable this line and disable the next line if you want to localize the output
local cfg = {}</syntaxhighlight>
Its 9,900,000 transclusions of nothing at enwiki. [[User:Christian75|Christian75]] ([[User talk:Christian75|talk]]) 10:35, 26 March 2014 (UTC)
:::We could, but then that would mean that users would have to edit the module code to configure the module, rather than just the configuration file. I'd rather only do this if there is a real problem with loading the config file on enwiki, and I don't think the module having a high transclusion count is really enough of a reason. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 11:01, 26 March 2014 (UTC)
::::If it were a problem, it would be possible to have a "no config" argument passed to the module, and if that were set, it would skip loading the config. However, I agree with Mr. Stradivarius—the overhead is probably very small, and there is no evidence that omitting the config would achieve anything. Even if requiring a module took a significant time (it doesn't), the caching of the 9.9 million pages means that the require overhead would still be small. What I find interesting is that the main module uses "loadData" on the data module, and the latter uses "require" on the config module. I wonder what would happen if something prohibited by loadData were in config. I'll have to run a test one day. [[User:Johnuniq|Johnuniq]] ([[User talk:Johnuniq|talk]]) 11:27, 26 March 2014 (UTC)
:::::mw.loadData scans the table it is passed to make sure it hasn't received any invalid data. ([https://git.wikimedia.org/blob/mediawiki%2Fextensions%2FScribunto/b66ae0671335ae31798769d5e3382b136d0614b7/engines%2FLuaCommon%2Flualib%2Fmw.lua#L746 Here's] the validation code.) So the invalid data would get through to the /data page fine, but when the table is loaded from /data to the main module it would cause an error. But yes, try it and see for yourself. :) — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 12:39, 26 March 2014 (UTC)
:::::Also, checking a "no config" argument may have a bigger overhead than loading the /config module, especially seeing as an argument would be checked once per #invoke and not once per page. I'd be interested to see the numbers for that if anyone feels like setting up a test. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 12:49, 26 March 2014 (UTC)
::::::I don't see harm in loading a "blank" config. I think it would just overcomplicate it to add any such checks. [[User:Jackmcbarn|Jackmcbarn]] ([[User talk:Jackmcbarn|talk]]) 21:25, 27 March 2014 (UTC)
== Script error in WikiProject banner on [[Talk:Air Miles]] ==
The WikiProject banner at the top of [[Talk:Air Miles]] contains the following:
*This Script error does not require a rating on the project's quality scale.
*This Script error is supported by the airline project.
The error message in both cases is: Lua error in Module:Namespace_detect at line 32: bad argument #1 to 'ipairs' (table expected, got nil).
{{ping|Mr. Stradivarius}} ping. [[User:Jackmcbarn|Jackmcbarn]] ([[User talk:Jackmcbarn|talk]]) 21:06, 13 April 2014 (UTC)
::It's gone from that page now, but it's since appeared on [[Talk:Illicit major]] and [[Talk:Río Negro (newspaper)]]. [[User:Jackmcbarn|Jackmcbarn]] ([[User talk:Jackmcbarn|talk]]) 03:06, 14 April 2014 (UTC)
:::Possibly the error is cached after the last update to the module? Some pages may have produced script errors in the few seconds between me updating the /config module and me updating the /data module. Given the number of transclusions this module has, it's quite likely that some might have stuck around since then. If there are any errors that still appear after purging the page, let me know. — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 04:23, 14 April 2014 (UTC)
== Protected edit request on 14 May 2014 ==
{{edit protected|Module:Namespace detect/config|answered=yes}}
<!-- Begin request -->
<!-- End request -->
[[Special:Contributions/77.30.122.165|77.30.122.165]] ([[User talk:77.30.122.165|talk]]) 08:20, 14 May 2014 (UTC)
:[[File:Red question icon with gradient background.svg|20px|link=]] '''Not done:''' it's not clear what changes you want made. Please mention the specific changes in a "change X to Y" format.<!-- Template:EP --> — '''''[[User:Mr. Stradivarius|<span style="color: #194D00; font-family: Palatino, Times, serif">Mr. Stradivarius</span>]]''''' <sup>[[User talk:Mr. Stradivarius|♪ talk ♪]]</sup> 08:36, 14 May 2014 (UTC)
== Issue when moving to a local Wiki ==
Not asking for a change, as it could potentially break stuff here on Wikipedia (no idea). Just for information.
Took a while to figure out why it didn't work on my local Wiki. But think I solved it after changing the following lines in [[Module:Namespace_detect/data]]. Starting at line 64
<syntaxhighlight lang="lua">
for nsid, ns in pairs(mw.site.subjectNamespaces) do
if nsid ~= 0 then -- Exclude main namespace.
local nsname = ns.name
local lcNsname = mw.ustring.lower(ns.name)
local canonicalName = mw.ustring.lower(ns.canonicalName)
-- For custom namespaces (custom Wiki) the casing is important
-- and needs to be preserved
if canonicalName == lcNsname then
nsname = lcNsname
end
mappings[nsname] = {nsname}
if canonicalName ~= nsname then
table.insert(mappings[nsname], canonicalName)
end
for _, alias in ipairs(ns.aliases) do
table.insert(mappings[nsname], mw.ustring.lower(alias))
end
end
end
</syntaxhighlight>
–[[User:Rinellie|Rinellie]] ([[User talk:Rinellie|talk]]) 18:59, 30 March 2016 (UTC)
kzqc974tb7xyuqa3xrhqmfdbar5rue6
ಮೋಡ್ಯೂಲ್ ಪಾತೆರ:Namespace detect/config
829
28757
370474
2014-03-24T12:09:13Z
en>Mr. Stradivarius
0
redirect to [[Module talk:Namespace detect]]
370474
wikitext
text/x-wiki
#REDIRECT [[Module talk:Namespace detect]]
gnchlnqfb74l80sej2c3bdxjs6yy421
370475
370474
2026-09-28T09:26:48Z
ChiK
1136
1 revision imported from [[:en:Module_talk:Namespace_detect/config]]
370474
wikitext
text/x-wiki
#REDIRECT [[Module talk:Namespace detect]]
gnchlnqfb74l80sej2c3bdxjs6yy421
ಮೋಡ್ಯೂಲ್:Category handler/doc
828
28758
370477
2025-06-19T18:06:33Z
en>Tactica
0
Uses [[Module:Namespace detect]].
370477
wikitext
text/x-wiki
{{Used in system}}
{{Module rating|p}}
{{cascade-protected template|page=module}}
{{Lua|Module:Category handler/data|Module:Category handler/shared|Module:Category handler/blacklist|Module:Yesno|Module:Namespace detect|Module:Arguments}}
This module implements the {{tl|category handler}} template. The category handler template helps other templates to automate both categorization and [[Wikipedia:Category suppression|category suppression]]. For information about using the category handler template in other templates, please see the '''[[Template:Category handler|template documentation]]'''. Keep reading for information about using the category handler module in other Lua modules, or for information on exporting this module to other wikis.
== Use from other Lua modules ==
=== When not to use this module ===
For cases where a module only needs to categorise in one of the namespaces main (articles), file (images) or category, then using this module is overkill. Instead, you can simply get a title object using [[mw:Extension:Scribunto/Lua reference manual#mw.title.getCurrentTitle|mw.title.getCurrentTitle]] and check the <code>nsText</code> field. For example:
<syntaxhighlight lang="lua">
local title = mw.title.getCurrentTitle()
if title.nsText == 'File' then
-- do something
end
</syntaxhighlight>
However, if your module needs to categorize in any other namespace, then we recommend you use this module, since it provides proper category suppression and makes it easy to select how to categorize in the different namespaces.
=== Namespaces ===
This module detects and groups all the different [[Wikipedia:Namespace|namespaces]] used on Wikipedia into several types. These types are used as parameter names in this module.
:'''main''' = Main/article space, as in normal Wikipedia articles.
:'''talk''' = Any talk space, such as page names that start with "Talk:", "User talk:", "File talk:" and so on.
:'''user, wikipedia, file ... = The other namespaces except the talk pages. Namespace aliases are also accepted. See the table below for the full list.'''
:'''other''' = Any namespaces that were not specified as a parameter to the template. See examples below.
;List of possible namespace parameters
(excluding <code>''talk''</code> and <code>''other''</code>)
{{#invoke:Namespace detect|table}}
=== Basic usage ===
This module takes two or more parameters. Here's an example using a hello world program:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'Hello world!'
local category = categoryHandler{
'[[Category:Somecat]]',
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
The above example uses the default settings for the category handler module. That means the example module will categorize on pages in the following namespaces:
:'''main''', '''file''', '''help''', '''category''', '''portal''' and '''book'''
But it will ''not'' categorize in any other namespaces, e.g.:
:'''talk''', '''user''', '''wikipedia''', '''mediawiki''', '''template''' ...
And it will ''not'' categorize on blacklisted pages. (See section [[#Blacklist|blacklist]] below.)
The reason the category handler module does not categorize in some of the namespaces is that in those namespaces most modules and templates are just demonstrated or listed, not used. Thus most modules and templates should not categorize in those namespaces.
Any module or template that is meant for one or more of the namespaces where this module categorizes can use the basic syntax as shown above.
=== Advanced usage ===
This module takes one or more parameters named after the different page types as listed in section [[#Namespaces|namespaces]] above. By using those parameters you can specify exactly in which namespaces your template should categorize. Like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module meant for articles and talk pages.'
local category = categoryHandler{
main = '[[Category:Somecat1]]', -- Categorize in main (article) space
talk = '[[Category:Somecat2]]', -- Categorize in talk space
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
The above module will only categorize in main and talk space. But it will not categorize on /archive pages since they are blacklisted. (See section [[#Blacklist|blacklist]] below.) And if you need to demonstrate (discuss) the module on a talkpage, then you can feed "<code>nocat='true'</code>" to prevent that template from categorizing. (See section [[#Nocat|nocat]] below.) Like this:
<pre>
== My new module ==
Hey guys, have you seen my new module?
{{#invoke:mymodule|main|nocat=true}}
Nice, isn't it?
--~~~~
</pre>
Sometimes we want to use the same category in several namespaces, then do like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module used in several namespaces.'
local category = categoryHandler{
main = '[[Category:Somecat1]]',
[ 1 ] = '[[Category:Somecat2]]', -- For help and user space
help = 1,
user = 1,
talk = '', -- No categories on talk pages
other = '[[Category:Somecat3]]', -- For all other namespaces
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
In the above example we use a numbered parameter to feed one of the categories, and then we tell this module to use that numbered parameter for both the help and user space.
The category handler module understands an unlimited number of numbered parameters.
The '''other''' parameter defines what should be used in the remaining namespaces that have not explicitly been fed data.
Note the empty but defined '''talk''' parameter. That stops this module from showing what has been fed to the '''other''' parameter, when in talk space.
The category handler module also has a parameter called '''all'''. It works like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module used in all namespaces.'
local category = categoryHandler{
all = '[[Category:Somecat1]]', -- Categorize in all namespaces
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
The above example will categorize in all namespaces, but not on blacklisted pages. If you want to demonstrate that module on a page, then use "<code>nocat=true</code>" to prevent the template from categorizing.
We suggest avoiding the '''all''' parameter, since modules and templates should preferably only categorize in the namespaces they need to.
The all parameter can also be combined with the rest of the parameters. Like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module used in all namespaces.'
local category = categoryHandler{
all = '[[Category:Somecat1]]', -- Categorize in all namespaces
main = '[[Category:Somecat2]]', -- And add this in main space
other = '[[Category:Somecat3]]', -- And add this in all other namespaces
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
If the above module is placed on an article, then it will add the categories "Somecat1" and "Somecat2". But on all other types of pages it will instead add "Somecat1" and "Somecat3". As the example shows, the all parameter works independently of the rest of the parameters.
=== Subpages ===
The category handler module understands the '''subpage''' parameter. Like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module used in all namespaces.'
local category = categoryHandler{
subpage = 'no' -- Don't categorize on subpages
wikipedia = '[[Category:Somecat]]',
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
If "<code>subpage='no'</code>" then this template will ''not'' categorize on subpages. For the rare occasion you ''only'' want to categorize on subpages, then use "<code>subpage='only'</code>". If '''subpage''' is empty or undefined then this template categorizes both on basepages and on subpages.
=== Blacklist ===
This module has a blacklist of the pages and page types where templates should not auto-categorize. Thus modules that use this meta-template will for instance not categorize on /archive pages and on the subpages of [[Wikipedia:Template messages]].
If you want a template to categorize on a blacklisted page, then feed "<code><nowiki>nocat = false</nowiki></code>" to the module when you place it on the page, thus skipping the blacklist check. Note that this module only categorizes if it has data for the namespace. For instance, if the basic syntax is used (see [[#Basic usage|basic usage]] above), then even if you set "<code>nocat = false</code>" the template will not categorize on a talk page, since it has no data for talk pages. But it has data for help space, so on a blacklisted help page it will categorize.
The blacklist is located in the configuration table <code>cfg.blacklist</code> near the top of the module code.
=== The "nocat" parameter ===
This module understands the '''nocat''' parameter:
* If "<code>nocat = true</code>" then this template does ''not'' categorize.
* If '''nocat''' is <code>nil</code> then this template categorizes as usual.
* If "<code>nocat = false</code>" this template categorizes even when on blacklisted pages. (See section [[#Blacklist|blacklist]] above.)
* The nocat parameter also accepts aliases for <code>true</code> and <code>false</code> as defined by [[Module:Yesno]], e.g. "yes", "y", "true", and 1 for <code>true</code>, and "no", "n", "false", and 0 for <code>false</code>.
Modules and templates that use {{tlf|category handler}} should forward '''nocat''', so they too understand '''nocat'''. The code "<code>nocat = frame.args.nocat</code>" shown in the examples on this page does that.
=== The "categories" parameter ===
For backwards compatibility this module also understands the '''categories''' parameter. It works the same as '''nocat'''. Like this:
* If "<code>categories = false</code>" then this template does ''not'' categorize.
* If '''categories''' is empty or undefined then this template categorizes as usual.
* If "<code>categories = true</code>" this template categorizes even when on blacklisted pages.
* The categories parameter also accepts aliases for <code>true</code> and <code>false</code> as defined by [[Module:Yesno]], e.g. "yes", "y", "true", and 1 for <code>true</code>, and "no", "n", "false", and 0 for <code>false</code>.
=== The "category2" parameter ===
For backwards compatibility this template kind of supports the old "category =" parameter. But the parameter name "category" is already used in this module to feed category data for when in category space. So instead this template uses '''category2''' for the usage similar to '''nocat'''. Like this:
* If "<code>category2 = "</code>" (empty but defined), or "<code>category2 = 'no'</code>", or if '''category2''' is fed any other data (except as described in the next two points), then this template does ''not'' categorize.
* If '''category2''' is undefined or if "<code>category2 = '¬'</code>", then this template categorizes as usual.
* If "<code>category2 = 'yes'</code>" this template categorizes even when on blacklisted pages.
=== Categories and text ===
Besides from categories, you can feed anything else to this module, for instance some text. Like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module used on talk pages.'
local category = categoryHandler{
talk = '[[Category:Somecat]]',
other = '<p class="error">This module should only be used on talk pages.</p>',
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
When the module code above is used on anything other than a talk page, it will look like this:
:This is a module used on talk pages.{{#invoke:category handler|main
| talk = [[Category:Somecat]]
| other = <p class="error">This module should only be used on talk pages.</p>
| nocat = {{{nocat|}}} <!--So "nocat=true/false" works-->
}}
That text will not show on blacklisted pages, so don't use this method to show any important information. Feeding "<code>nocat = 'true'</code>" to the template hides the text, just as it suppresses any categories.
=== The "page" parameter ===
For testing and demonstration purposes this module can take a parameter named '''page'''. Like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local category = categoryHandler{
main = 'Category:Some cat',
talk = 'Category:Talk cat',
nocat = frame.args.nocat, -- So "nocat=true/false" works
page = 'User talk:Example'
}
return category
end
return p
</syntaxhighlight>
In the above code we on purpose left out the brackets around the category names so we see the output on the page. No matter on what kind of page the code above is used it will return this:
:{{#invoke:category handler|main
| main = Category:Some cat
| talk = Category:Talk cat
| nocat = {{{nocat|}}} <!--So "nocat=true/false" works-->
| page = User talk:Example
}}
The '''page''' parameter makes this module behave exactly as if on that page. Even the blacklist works. The pagename doesn't have to be an existing page.
If the '''page''' parameter is empty or undefined, the name of the current page determines the result.
You can make it so your module also understands the '''page''' parameter. That means you can test how your template will categorize on different pages, without having to actually edit those pages. Then do like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local category = categoryHandler{
main = 'Category:Some cat',
talk = 'Category:Talk cat',
nocat = frame.args.nocat, -- So "nocat=true/false" works
page = frame.args.page -- For testing
}
return category
end
return p
</syntaxhighlight>
=== Parameters ===
List of all parameters:
* First positional parameter - for default settings
* subpage = 'no' / 'only'
* 1, 2, 3 ...
* all = '<nowiki>[[Category:Somecat]]</nowiki>' / 'Text'
* main = 1, 2, 3 ... / '<nowiki>[[Category:Somecat]]</nowiki>' / 'Text'
* ...
* other = 1, 2, 3 ... / '<nowiki>[[Category:Somecat]]</nowiki>' / 'Text'
* nocat = frame.args.nocat / true / false / 'yes' / 'no' / 'y' / 'n' / 'true' / 'false' / 1 / 0
* categories = frame.args.categories / false / true / 'no' / 'yes' / 'n' / 'y' / 'false' / 'true' / 0 / 1
* category2 = frame.args.category or '¬' / 'no' / 'not defined' / '¬' / 'yes'
* page = frame.args.page / 'User:Example'
Note that empty values to the "main" ... "other" parameters have special meaning (see examples above). The "all" parameter doesn't understand numbered parameters, since there should never be a need for that.
== Exporting to other wikis ==
This module can be exported to other wikis by changing the configuration values in the <code>cfg</code> table. All the variable values are configurable, so after the configuration values have been set there should be no need to alter the main module code. Details of each configuration value are included in the module code comments. In addition, this module requires [[Module:Namespace detect]] to be available on the local wiki.
== See also ==
* {{tl|Category handler}} – for using this module with templates, rather than Lua modules.
* [[Wikipedia:Category suppression]] – The how-to guide.
* [[Wikipedia:WikiProject Category Suppression]] – The WikiProject.
* [[Wikipedia:Namespace]] – Lists all the namespaces.
<noinclude>
[[Category:Module documentation pages]]
</noinclude>
1yn65h4bk1odb3mrj3hktvpxp89k1pw
370478
370477
2026-09-28T09:35:02Z
ChiK
1136
1 revision imported from [[:en:Module:Category_handler/doc]]
370477
wikitext
text/x-wiki
{{Used in system}}
{{Module rating|p}}
{{cascade-protected template|page=module}}
{{Lua|Module:Category handler/data|Module:Category handler/shared|Module:Category handler/blacklist|Module:Yesno|Module:Namespace detect|Module:Arguments}}
This module implements the {{tl|category handler}} template. The category handler template helps other templates to automate both categorization and [[Wikipedia:Category suppression|category suppression]]. For information about using the category handler template in other templates, please see the '''[[Template:Category handler|template documentation]]'''. Keep reading for information about using the category handler module in other Lua modules, or for information on exporting this module to other wikis.
== Use from other Lua modules ==
=== When not to use this module ===
For cases where a module only needs to categorise in one of the namespaces main (articles), file (images) or category, then using this module is overkill. Instead, you can simply get a title object using [[mw:Extension:Scribunto/Lua reference manual#mw.title.getCurrentTitle|mw.title.getCurrentTitle]] and check the <code>nsText</code> field. For example:
<syntaxhighlight lang="lua">
local title = mw.title.getCurrentTitle()
if title.nsText == 'File' then
-- do something
end
</syntaxhighlight>
However, if your module needs to categorize in any other namespace, then we recommend you use this module, since it provides proper category suppression and makes it easy to select how to categorize in the different namespaces.
=== Namespaces ===
This module detects and groups all the different [[Wikipedia:Namespace|namespaces]] used on Wikipedia into several types. These types are used as parameter names in this module.
:'''main''' = Main/article space, as in normal Wikipedia articles.
:'''talk''' = Any talk space, such as page names that start with "Talk:", "User talk:", "File talk:" and so on.
:'''user, wikipedia, file ... = The other namespaces except the talk pages. Namespace aliases are also accepted. See the table below for the full list.'''
:'''other''' = Any namespaces that were not specified as a parameter to the template. See examples below.
;List of possible namespace parameters
(excluding <code>''talk''</code> and <code>''other''</code>)
{{#invoke:Namespace detect|table}}
=== Basic usage ===
This module takes two or more parameters. Here's an example using a hello world program:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'Hello world!'
local category = categoryHandler{
'[[Category:Somecat]]',
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
The above example uses the default settings for the category handler module. That means the example module will categorize on pages in the following namespaces:
:'''main''', '''file''', '''help''', '''category''', '''portal''' and '''book'''
But it will ''not'' categorize in any other namespaces, e.g.:
:'''talk''', '''user''', '''wikipedia''', '''mediawiki''', '''template''' ...
And it will ''not'' categorize on blacklisted pages. (See section [[#Blacklist|blacklist]] below.)
The reason the category handler module does not categorize in some of the namespaces is that in those namespaces most modules and templates are just demonstrated or listed, not used. Thus most modules and templates should not categorize in those namespaces.
Any module or template that is meant for one or more of the namespaces where this module categorizes can use the basic syntax as shown above.
=== Advanced usage ===
This module takes one or more parameters named after the different page types as listed in section [[#Namespaces|namespaces]] above. By using those parameters you can specify exactly in which namespaces your template should categorize. Like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module meant for articles and talk pages.'
local category = categoryHandler{
main = '[[Category:Somecat1]]', -- Categorize in main (article) space
talk = '[[Category:Somecat2]]', -- Categorize in talk space
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
The above module will only categorize in main and talk space. But it will not categorize on /archive pages since they are blacklisted. (See section [[#Blacklist|blacklist]] below.) And if you need to demonstrate (discuss) the module on a talkpage, then you can feed "<code>nocat='true'</code>" to prevent that template from categorizing. (See section [[#Nocat|nocat]] below.) Like this:
<pre>
== My new module ==
Hey guys, have you seen my new module?
{{#invoke:mymodule|main|nocat=true}}
Nice, isn't it?
--~~~~
</pre>
Sometimes we want to use the same category in several namespaces, then do like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module used in several namespaces.'
local category = categoryHandler{
main = '[[Category:Somecat1]]',
[ 1 ] = '[[Category:Somecat2]]', -- For help and user space
help = 1,
user = 1,
talk = '', -- No categories on talk pages
other = '[[Category:Somecat3]]', -- For all other namespaces
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
In the above example we use a numbered parameter to feed one of the categories, and then we tell this module to use that numbered parameter for both the help and user space.
The category handler module understands an unlimited number of numbered parameters.
The '''other''' parameter defines what should be used in the remaining namespaces that have not explicitly been fed data.
Note the empty but defined '''talk''' parameter. That stops this module from showing what has been fed to the '''other''' parameter, when in talk space.
The category handler module also has a parameter called '''all'''. It works like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module used in all namespaces.'
local category = categoryHandler{
all = '[[Category:Somecat1]]', -- Categorize in all namespaces
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
The above example will categorize in all namespaces, but not on blacklisted pages. If you want to demonstrate that module on a page, then use "<code>nocat=true</code>" to prevent the template from categorizing.
We suggest avoiding the '''all''' parameter, since modules and templates should preferably only categorize in the namespaces they need to.
The all parameter can also be combined with the rest of the parameters. Like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module used in all namespaces.'
local category = categoryHandler{
all = '[[Category:Somecat1]]', -- Categorize in all namespaces
main = '[[Category:Somecat2]]', -- And add this in main space
other = '[[Category:Somecat3]]', -- And add this in all other namespaces
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
If the above module is placed on an article, then it will add the categories "Somecat1" and "Somecat2". But on all other types of pages it will instead add "Somecat1" and "Somecat3". As the example shows, the all parameter works independently of the rest of the parameters.
=== Subpages ===
The category handler module understands the '''subpage''' parameter. Like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module used in all namespaces.'
local category = categoryHandler{
subpage = 'no' -- Don't categorize on subpages
wikipedia = '[[Category:Somecat]]',
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
If "<code>subpage='no'</code>" then this template will ''not'' categorize on subpages. For the rare occasion you ''only'' want to categorize on subpages, then use "<code>subpage='only'</code>". If '''subpage''' is empty or undefined then this template categorizes both on basepages and on subpages.
=== Blacklist ===
This module has a blacklist of the pages and page types where templates should not auto-categorize. Thus modules that use this meta-template will for instance not categorize on /archive pages and on the subpages of [[Wikipedia:Template messages]].
If you want a template to categorize on a blacklisted page, then feed "<code><nowiki>nocat = false</nowiki></code>" to the module when you place it on the page, thus skipping the blacklist check. Note that this module only categorizes if it has data for the namespace. For instance, if the basic syntax is used (see [[#Basic usage|basic usage]] above), then even if you set "<code>nocat = false</code>" the template will not categorize on a talk page, since it has no data for talk pages. But it has data for help space, so on a blacklisted help page it will categorize.
The blacklist is located in the configuration table <code>cfg.blacklist</code> near the top of the module code.
=== The "nocat" parameter ===
This module understands the '''nocat''' parameter:
* If "<code>nocat = true</code>" then this template does ''not'' categorize.
* If '''nocat''' is <code>nil</code> then this template categorizes as usual.
* If "<code>nocat = false</code>" this template categorizes even when on blacklisted pages. (See section [[#Blacklist|blacklist]] above.)
* The nocat parameter also accepts aliases for <code>true</code> and <code>false</code> as defined by [[Module:Yesno]], e.g. "yes", "y", "true", and 1 for <code>true</code>, and "no", "n", "false", and 0 for <code>false</code>.
Modules and templates that use {{tlf|category handler}} should forward '''nocat''', so they too understand '''nocat'''. The code "<code>nocat = frame.args.nocat</code>" shown in the examples on this page does that.
=== The "categories" parameter ===
For backwards compatibility this module also understands the '''categories''' parameter. It works the same as '''nocat'''. Like this:
* If "<code>categories = false</code>" then this template does ''not'' categorize.
* If '''categories''' is empty or undefined then this template categorizes as usual.
* If "<code>categories = true</code>" this template categorizes even when on blacklisted pages.
* The categories parameter also accepts aliases for <code>true</code> and <code>false</code> as defined by [[Module:Yesno]], e.g. "yes", "y", "true", and 1 for <code>true</code>, and "no", "n", "false", and 0 for <code>false</code>.
=== The "category2" parameter ===
For backwards compatibility this template kind of supports the old "category =" parameter. But the parameter name "category" is already used in this module to feed category data for when in category space. So instead this template uses '''category2''' for the usage similar to '''nocat'''. Like this:
* If "<code>category2 = "</code>" (empty but defined), or "<code>category2 = 'no'</code>", or if '''category2''' is fed any other data (except as described in the next two points), then this template does ''not'' categorize.
* If '''category2''' is undefined or if "<code>category2 = '¬'</code>", then this template categorizes as usual.
* If "<code>category2 = 'yes'</code>" this template categorizes even when on blacklisted pages.
=== Categories and text ===
Besides from categories, you can feed anything else to this module, for instance some text. Like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local result = 'This is a module used on talk pages.'
local category = categoryHandler{
talk = '[[Category:Somecat]]',
other = '<p class="error">This module should only be used on talk pages.</p>',
nocat = frame.args.nocat -- So "nocat=true/false" works
}
category = category or '' -- Check that we don't have a nil value for the category variable.
return result .. category
end
return p
</syntaxhighlight>
When the module code above is used on anything other than a talk page, it will look like this:
:This is a module used on talk pages.{{#invoke:category handler|main
| talk = [[Category:Somecat]]
| other = <p class="error">This module should only be used on talk pages.</p>
| nocat = {{{nocat|}}} <!--So "nocat=true/false" works-->
}}
That text will not show on blacklisted pages, so don't use this method to show any important information. Feeding "<code>nocat = 'true'</code>" to the template hides the text, just as it suppresses any categories.
=== The "page" parameter ===
For testing and demonstration purposes this module can take a parameter named '''page'''. Like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local category = categoryHandler{
main = 'Category:Some cat',
talk = 'Category:Talk cat',
nocat = frame.args.nocat, -- So "nocat=true/false" works
page = 'User talk:Example'
}
return category
end
return p
</syntaxhighlight>
In the above code we on purpose left out the brackets around the category names so we see the output on the page. No matter on what kind of page the code above is used it will return this:
:{{#invoke:category handler|main
| main = Category:Some cat
| talk = Category:Talk cat
| nocat = {{{nocat|}}} <!--So "nocat=true/false" works-->
| page = User talk:Example
}}
The '''page''' parameter makes this module behave exactly as if on that page. Even the blacklist works. The pagename doesn't have to be an existing page.
If the '''page''' parameter is empty or undefined, the name of the current page determines the result.
You can make it so your module also understands the '''page''' parameter. That means you can test how your template will categorize on different pages, without having to actually edit those pages. Then do like this:
<syntaxhighlight lang="lua">
p = {}
local categoryHandler = require( 'Module:Category handler' ).main
function p.main( frame )
local category = categoryHandler{
main = 'Category:Some cat',
talk = 'Category:Talk cat',
nocat = frame.args.nocat, -- So "nocat=true/false" works
page = frame.args.page -- For testing
}
return category
end
return p
</syntaxhighlight>
=== Parameters ===
List of all parameters:
* First positional parameter - for default settings
* subpage = 'no' / 'only'
* 1, 2, 3 ...
* all = '<nowiki>[[Category:Somecat]]</nowiki>' / 'Text'
* main = 1, 2, 3 ... / '<nowiki>[[Category:Somecat]]</nowiki>' / 'Text'
* ...
* other = 1, 2, 3 ... / '<nowiki>[[Category:Somecat]]</nowiki>' / 'Text'
* nocat = frame.args.nocat / true / false / 'yes' / 'no' / 'y' / 'n' / 'true' / 'false' / 1 / 0
* categories = frame.args.categories / false / true / 'no' / 'yes' / 'n' / 'y' / 'false' / 'true' / 0 / 1
* category2 = frame.args.category or '¬' / 'no' / 'not defined' / '¬' / 'yes'
* page = frame.args.page / 'User:Example'
Note that empty values to the "main" ... "other" parameters have special meaning (see examples above). The "all" parameter doesn't understand numbered parameters, since there should never be a need for that.
== Exporting to other wikis ==
This module can be exported to other wikis by changing the configuration values in the <code>cfg</code> table. All the variable values are configurable, so after the configuration values have been set there should be no need to alter the main module code. Details of each configuration value are included in the module code comments. In addition, this module requires [[Module:Namespace detect]] to be available on the local wiki.
== See also ==
* {{tl|Category handler}} – for using this module with templates, rather than Lua modules.
* [[Wikipedia:Category suppression]] – The how-to guide.
* [[Wikipedia:WikiProject Category Suppression]] – The WikiProject.
* [[Wikipedia:Namespace]] – Lists all the namespaces.
<noinclude>
[[Category:Module documentation pages]]
</noinclude>
1yn65h4bk1odb3mrj3hktvpxp89k1pw
ಮೋಡ್ಯೂಲ್ ಪಾತೆರ:Category handler
829
28759
370479
2014-04-10T07:06:08Z
en>Mr. Stradivarius
0
move thread to [[Template talk:Category handler]] and redirect this page there to keep discussions together
370479
wikitext
text/x-wiki
#REDIRECT [[Template talk:Category handler]]
6kwsxwvp4ooalxb8sm327agfc5ft2i5
370480
370479
2026-09-28T09:35:02Z
ChiK
1136
1 revision imported from [[:en:Module_talk:Category_handler]]
370479
wikitext
text/x-wiki
#REDIRECT [[Template talk:Category handler]]
6kwsxwvp4ooalxb8sm327agfc5ft2i5
ಟೆಂಪ್ಲೇಟ್ ಪಾತೆರ:Category handler
11
28760
370481
2026-02-02T12:55:17Z
en>Anomie
0
Undid revision [[Special:Diff/1336166910|1336166910]] by [[Special:Contributions/Lanquill|Lanquill]] ([[User talk:Lanquill|talk]]) - Whatever you're trying to do, this wasn't right.
370481
wikitext
text/x-wiki
{{User:MiszaBot/config
| algo = old(180d)
| archive = Template talk:Category handler/Archive %(counter)d
| counter = 1
| maxarchivesize = 150K
| archiveheader = {{Aan}}
| minthreadstoarchive = 1
| minthreadsleft = 3
}}{{central|Module talk:Category handler|Template talk:Category handler/numbered|Template talk:Category handler/blacklist}}
{{permprot}}
{{copied|from1=Template:Category_handler|from_oldid1=577959188|to1=:incubator:Template:Wp/nod/Category_handler|to_diff1=4237213
|from2=Template:Category_handler|from_oldid2=577959188|to2=:incubator:Template:Wp/nod/category_handler|to_diff2=4237215
|from3=Module:Category_handler|from_oldid3=617942873|to3=:incubator:Module:Wp/nod/Category_handler|to_diff3=4237020}}
{{archives}}
<!-- {{WPCATSUP|class=Template|priority=High}} -->
__FORCETOC__
== Protected edit request on 19 March 2020 ==
{{edit fully-protected|Template:Category handler|answered=y}}
She is Trinidad and Tobago-born rapper, African American categories need to be remove as there is a difference. [[User:ADOS MMXX|ADOS MMXX]] ([[User talk:ADOS MMXX|talk]]) 21:13, 19 March 2020 (UTC)
:[[File:Red information icon with gradient background.svg|20px|link=|alt=]] '''Not done:''' this is the [[Help:Talk pages|talk page]] for discussing improvements to the [[Help:Template|template]] {{tlx|Category handler}}. Please make your request at the talk page for the article concerned.<!-- Template:EP --> [[User:Izno|Izno]] ([[User talk:Izno|talk]]) 00:10, 20 March 2020 (UTC)
== Protected edit request on 17 April 2020 ==
{{edit fully-protected|Module:Category handler/blacklist|answered=yes}}
[[Wikipedia:Template messages]] was renamed to [[Wikipedia:Template index]]. Update the entry in the blacklist accordingly. [[User:Pppery|* Pppery *]] [[User talk:Pppery|<sub style="color:#800000">it has begun...</sub>]] 19:34, 17 April 2020 (UTC)
:Done. [[User:Jo-Jo Eumerus|Jo-Jo Eumerus]] ([[User talk:Jo-Jo Eumerus|talk]]) 08:48, 18 April 2020 (UTC)
== Genderified namespaces ==
About this (in [[Module:Category handler/shared]]):
<syntaxhighlight lang="lua">
-- We don't use title.nsText for the namespace name because it adds
-- underscores.
</syntaxhighlight>
While tweaking this code (by the way, see [[phab:T369784|T369784]]), I just discovered another difference:
In frwiki, for the "User:" namespace, we have two different words: "Utilisateur:" for male (or unknown) users and "Utilisatrice:" for female users. Same goes for the "User talk:" namespace.
Now, assuming <code>titleObj</code> represents a user page of a female user:
<syntaxhighlight lang="lua">
mw.site.namespaces[titleObj.namespace].name
-- always gives: "Utilisateur" (gender is not applied)
titleObj.nsText
-- gives: "Utilisatrice" (gender is applied)
</syntaxhighlight>
By the way, from a technical point of view, this namespace genderification is a pain in the ass. On a regular basis.
[[User:Od1n|Od1n]] ([[User talk:Od1n|talk]]) 12:12, 8 September 2024 (UTC)
imrsfct81ixj5nzq5jsv24oxsmefccw
370482
370481
2026-09-28T09:35:02Z
ChiK
1136
1 revision imported from [[:en:Template_talk:Category_handler]]
370481
wikitext
text/x-wiki
{{User:MiszaBot/config
| algo = old(180d)
| archive = Template talk:Category handler/Archive %(counter)d
| counter = 1
| maxarchivesize = 150K
| archiveheader = {{Aan}}
| minthreadstoarchive = 1
| minthreadsleft = 3
}}{{central|Module talk:Category handler|Template talk:Category handler/numbered|Template talk:Category handler/blacklist}}
{{permprot}}
{{copied|from1=Template:Category_handler|from_oldid1=577959188|to1=:incubator:Template:Wp/nod/Category_handler|to_diff1=4237213
|from2=Template:Category_handler|from_oldid2=577959188|to2=:incubator:Template:Wp/nod/category_handler|to_diff2=4237215
|from3=Module:Category_handler|from_oldid3=617942873|to3=:incubator:Module:Wp/nod/Category_handler|to_diff3=4237020}}
{{archives}}
<!-- {{WPCATSUP|class=Template|priority=High}} -->
__FORCETOC__
== Protected edit request on 19 March 2020 ==
{{edit fully-protected|Template:Category handler|answered=y}}
She is Trinidad and Tobago-born rapper, African American categories need to be remove as there is a difference. [[User:ADOS MMXX|ADOS MMXX]] ([[User talk:ADOS MMXX|talk]]) 21:13, 19 March 2020 (UTC)
:[[File:Red information icon with gradient background.svg|20px|link=|alt=]] '''Not done:''' this is the [[Help:Talk pages|talk page]] for discussing improvements to the [[Help:Template|template]] {{tlx|Category handler}}. Please make your request at the talk page for the article concerned.<!-- Template:EP --> [[User:Izno|Izno]] ([[User talk:Izno|talk]]) 00:10, 20 March 2020 (UTC)
== Protected edit request on 17 April 2020 ==
{{edit fully-protected|Module:Category handler/blacklist|answered=yes}}
[[Wikipedia:Template messages]] was renamed to [[Wikipedia:Template index]]. Update the entry in the blacklist accordingly. [[User:Pppery|* Pppery *]] [[User talk:Pppery|<sub style="color:#800000">it has begun...</sub>]] 19:34, 17 April 2020 (UTC)
:Done. [[User:Jo-Jo Eumerus|Jo-Jo Eumerus]] ([[User talk:Jo-Jo Eumerus|talk]]) 08:48, 18 April 2020 (UTC)
== Genderified namespaces ==
About this (in [[Module:Category handler/shared]]):
<syntaxhighlight lang="lua">
-- We don't use title.nsText for the namespace name because it adds
-- underscores.
</syntaxhighlight>
While tweaking this code (by the way, see [[phab:T369784|T369784]]), I just discovered another difference:
In frwiki, for the "User:" namespace, we have two different words: "Utilisateur:" for male (or unknown) users and "Utilisatrice:" for female users. Same goes for the "User talk:" namespace.
Now, assuming <code>titleObj</code> represents a user page of a female user:
<syntaxhighlight lang="lua">
mw.site.namespaces[titleObj.namespace].name
-- always gives: "Utilisateur" (gender is not applied)
titleObj.nsText
-- gives: "Utilisatrice" (gender is applied)
</syntaxhighlight>
By the way, from a technical point of view, this namespace genderification is a pain in the ass. On a regular basis.
[[User:Od1n|Od1n]] ([[User talk:Od1n|talk]]) 12:12, 8 September 2024 (UTC)
imrsfct81ixj5nzq5jsv24oxsmefccw
ಮೋಡ್ಯೂಲ್:Category handler/shared/doc
828
28761
370483
2024-10-19T02:10:02Z
en>2600 etc
0
370483
wikitext
text/x-wiki
{{Module rating |protected}}
{{cascade-protected template|page=module}}
{{used in system}}
{{Lua|Module:Namespace detect/data}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
== Usage ==
<code><nowiki>{{</nowiki>#invoke:{{BASEPAGENAME}}|''function_name''}}</code>
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | |
<!-- Categories below this line, please; interwikis at Wikidata -->
}}</includeonly>
<noinclude>
[[Category:Module documentation pages]]
</noinclude>
eqdh3uroz0313s3gwk3i1otnqk88h1v
370484
370483
2026-09-28T09:36:18Z
ChiK
1136
1 revision imported from [[:en:Module:Category_handler/shared/doc]]
370483
wikitext
text/x-wiki
{{Module rating |protected}}
{{cascade-protected template|page=module}}
{{used in system}}
{{Lua|Module:Namespace detect/data}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
== Usage ==
<code><nowiki>{{</nowiki>#invoke:{{BASEPAGENAME}}|''function_name''}}</code>
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | |
<!-- Categories below this line, please; interwikis at Wikidata -->
}}</includeonly>
<noinclude>
[[Category:Module documentation pages]]
</noinclude>
eqdh3uroz0313s3gwk3i1otnqk88h1v
ಮೋಡ್ಯೂಲ್ ಪಾತೆರ:Category handler/shared
829
28762
370485
2014-07-08T02:34:47Z
en>Mr. Stradivarius
0
redirect to [[Template talk:Category handler]]
370485
wikitext
text/x-wiki
#REDIRECT [[Template talk:Category handler]]
6kwsxwvp4ooalxb8sm327agfc5ft2i5
370486
370485
2026-09-28T09:36:18Z
ChiK
1136
1 revision imported from [[:en:Module_talk:Category_handler/shared]]
370485
wikitext
text/x-wiki
#REDIRECT [[Template talk:Category handler]]
6kwsxwvp4ooalxb8sm327agfc5ft2i5
ಮೋಡ್ಯೂಲ್:Protected page/config/doc
828
28763
370487
2026-08-30T19:57:01Z
en>Andrybak
0
[[Module:Protection banner]] was renamed to [[Module:Protected page]] (per [[Special:Diff/1372159443]], [[Template talk:Protected page#Requested move 16 August 2026]]) [[:w:en:User:Ponor/wAwB| #wAwB]]
370487
wikitext
text/x-wiki
{{Module rating|protected}}
{{High-use}}
This module contains configuration data for [[Module:Protected page]]. For documentation please see the module comments, and if you're not sure how something works you can ask on the [[Module talk:Protection banner|module talk page]].
<includeonly>{{Sandbox other||
<!-- Categories go here and interwikis go in Wikidata. -->
}}</includeonly>
nu9h01qxjgddigds6870r04djnh9bwa
370488
370487
2026-09-28T09:37:48Z
ChiK
1136
1 revision imported from [[:en:Module:Protected_page/config/doc]]
370487
wikitext
text/x-wiki
{{Module rating|protected}}
{{High-use}}
This module contains configuration data for [[Module:Protected page]]. For documentation please see the module comments, and if you're not sure how something works you can ask on the [[Module talk:Protection banner|module talk page]].
<includeonly>{{Sandbox other||
<!-- Categories go here and interwikis go in Wikidata. -->
}}</includeonly>
nu9h01qxjgddigds6870r04djnh9bwa
ಮೋಡ್ಯೂಲ್ ಪಾತೆರ:Protected page/config
829
28764
370489
2026-09-04T12:52:25Z
en>EmausBot
0
Bot: Fixing double redirect from [[Module talk:Protection banner]] to [[Module talk:Protected page]]
370489
wikitext
text/x-wiki
#REDIRECT [[Module talk:Protected page]]
{{Rcat shell|
{{R from remote talk page}}
{{R from subpage}}
}}
9s1xzbj9youiunnyh7g1be7arn618o5
370490
370489
2026-09-28T09:37:48Z
ChiK
1136
1 revision imported from [[:en:Module_talk:Protected_page/config]]
370489
wikitext
text/x-wiki
#REDIRECT [[Module talk:Protected page]]
{{Rcat shell|
{{R from remote talk page}}
{{R from subpage}}
}}
9s1xzbj9youiunnyh7g1be7arn618o5
ಮೋಡ್ಯೂಲ್:Effective protection expiry/doc
828
28765
370493
2026-05-04T16:22:08Z
en>Warudo
0
Reverting edit(s) by [[Special:Contributions/~2026-26959-40|~2026-26959-40]] ([[User_talk:~2026-26959-40|talk]]) to rev. 1338128592 by Shellwood: [[WP:CRV|Unexplained content removal]] [[w:en:WP:RW|(RW 16.1)]]
370493
wikitext
text/x-wiki
{{Module rating |protected <!-- Values: pre-alpha • alpha • beta • release • protected -- If a rating not needed/relevant, delete this template call -->}}
{{High-use}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
This module provides a way to retrieve the expiry of a restriction over a given action on a page.
== Usage ==
This module will use up to 1 expensive parser function call each time it is ran. It will not use any if [[Module:Effective protection level]] was already called.
=== From other modules ===
To load this module:
<syntaxhighlight lang="lua">
local effectiveProtectionExpiry = require('Module:Effective protection expiry')._main
</syntaxhighlight>
The function accepts two parameters. The first is a string containing the action to check, which must be one of "edit", "create", "move", "upload", or "autoreview". The second is optional, and can either be the name of the page to check, or a title returned from the mw.title functions. If the second parameter is omitted, the page being displayed is the one checked against.
The return value is either a date string in <code>YY-MM-DDThh:mm:ss</code> format, or one of the following strings:
* <code>infinity</code> - for pages protected indefinitely, or pages which exist and are not protected
* <code>unknown</code> - for pages where the expiry is unknown, or pages which do not exist and are not protected
Note that if an existing page is not protected for the requested action, this will return 'infinity'. You need to check separately with [[Module:Effective protection level]].
=== From wikitext ===
The parameters are the same as when it is called directly.
{{tlinv|Effective protection expiry|''action''|''title''}}
== See also ==
* [[Module:Effective protection level]]
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | |
<!-- Categories below this line, please; interwikis at Wikidata -->
}}</includeonly><noinclude>
[[Category:Module documentation pages]]
</noinclude>
08phv48nxhbb3oa2n76odezcclxpc3d
370494
370493
2026-09-28T09:38:45Z
ChiK
1136
1 revision imported from [[:en:Module:Effective_protection_expiry/doc]]
370493
wikitext
text/x-wiki
{{Module rating |protected <!-- Values: pre-alpha • alpha • beta • release • protected -- If a rating not needed/relevant, delete this template call -->}}
{{High-use}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
This module provides a way to retrieve the expiry of a restriction over a given action on a page.
== Usage ==
This module will use up to 1 expensive parser function call each time it is ran. It will not use any if [[Module:Effective protection level]] was already called.
=== From other modules ===
To load this module:
<syntaxhighlight lang="lua">
local effectiveProtectionExpiry = require('Module:Effective protection expiry')._main
</syntaxhighlight>
The function accepts two parameters. The first is a string containing the action to check, which must be one of "edit", "create", "move", "upload", or "autoreview". The second is optional, and can either be the name of the page to check, or a title returned from the mw.title functions. If the second parameter is omitted, the page being displayed is the one checked against.
The return value is either a date string in <code>YY-MM-DDThh:mm:ss</code> format, or one of the following strings:
* <code>infinity</code> - for pages protected indefinitely, or pages which exist and are not protected
* <code>unknown</code> - for pages where the expiry is unknown, or pages which do not exist and are not protected
Note that if an existing page is not protected for the requested action, this will return 'infinity'. You need to check separately with [[Module:Effective protection level]].
=== From wikitext ===
The parameters are the same as when it is called directly.
{{tlinv|Effective protection expiry|''action''|''title''}}
== See also ==
* [[Module:Effective protection level]]
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | |
<!-- Categories below this line, please; interwikis at Wikidata -->
}}</includeonly><noinclude>
[[Category:Module documentation pages]]
</noinclude>
08phv48nxhbb3oa2n76odezcclxpc3d
ಮೋಡ್ಯೂಲ್ ಪಾತೆರ:Effective protection expiry
829
28766
370495
2022-12-14T13:16:16Z
103.158.140.228
/* Indian Parliament */ new section
370495
wikitext
text/x-wiki
== Indian Parliament ==
I am surfing on wiki Indian Parliament in hindi language but I have not seen any relevent detail of Indian Parliament.can you add this topic [[Special:Contributions/103.158.140.228|103.158.140.228]] ([[User talk:103.158.140.228|talk]]) 13:16, 14 December 2022 (UTC)
1fnss3i56zh22w1h20izul3jhonir0b
370496
370495
2026-09-28T09:38:45Z
ChiK
1136
1 revision imported from [[:en:Module_talk:Effective_protection_expiry]]
370495
wikitext
text/x-wiki
== Indian Parliament ==
I am surfing on wiki Indian Parliament in hindi language but I have not seen any relevent detail of Indian Parliament.can you add this topic [[Special:Contributions/103.158.140.228|103.158.140.228]] ([[User talk:103.158.140.228|talk]]) 13:16, 14 December 2022 (UTC)
1fnss3i56zh22w1h20izul3jhonir0b
ಟೆಂಪ್ಲೇಟ್:Birth date and age text/sandbox
10
28767
370498
2025-07-30T18:04:07Z
en>Pppery
0
Pppery moved page [[Template:Birth-date and age/sandbox]] to [[Template:Birth date and age text/sandbox]]: [[Special:Permalink/1303388041#6WC|Requested]] by TechnoSquirrel69 at [[WP:RM/TR]]: Synchronize with the templates moved per [[Special:PermanentLink/1263603725#Requested move 15 September 2023|this requested move]].
370498
wikitext
text/x-wiki
<includeonly>{{birth-date|dt={{{dt|}}}|{{{gregorian|{{{1|}}}}}}|{{{2|{{{1|}}}}}}}} (age {{age|{{#ifeq:"{{lc:{{{1|0009-11}}}}}"|"{{padleft:{{#expr:{{{1|0009-11}}}}}|4|0}}"|<!--Here if it is a 4 digit year only-Test1 satisfied: see talk -->{{{1|0009-11}}}|{{#expr: {{#iferror:{{#ifexpr:((abs({{{1|0009-11}}}))< 1900) and ({{#time:Y|{{{1|0009-11}}}}} >1900) | {{#ifexpr:({{#time:Y|{{{1|0009-11}}}}}) <2000|{{#expr:{{#time:Y|{{{1|0009-11}}}}}-1900}}|{{#expr:{{#time:Y|{{{1|0009-11}}}}}-2000}} }} |{{#time:Y|{{{1|0009-11}}}}} }}|{{#time:Y|{{{1|0009-11}}}}} }}{{#switch:{{{bce|}}}|b|bd|d|db=*(-1) +1}}}} }}|{{#time:m|{{{1|}}}}}|{{#time:d|{{{1|}}}}} }}){{#invoke:check for unknown parameters|check|unknown={{#ifeq:{{NAMESPACENUMBER}}|0|[[Category:Birth-date and age transclusions with invalid parameters|_VALUE_]]}}|preview=unknown parameter "_VALUE_"|1|2|dt|gregorian|bce}}</includeonly><noinclude>
{{documentation}}
</noinclude>
a1yrh3ppg5f3ko24cbo9jfihmbbyn20
370499
370498
2026-09-28T09:43:36Z
ChiK
1136
1 revision imported from [[:en:Template:Birth_date_and_age_text/sandbox]]
370498
wikitext
text/x-wiki
<includeonly>{{birth-date|dt={{{dt|}}}|{{{gregorian|{{{1|}}}}}}|{{{2|{{{1|}}}}}}}} (age {{age|{{#ifeq:"{{lc:{{{1|0009-11}}}}}"|"{{padleft:{{#expr:{{{1|0009-11}}}}}|4|0}}"|<!--Here if it is a 4 digit year only-Test1 satisfied: see talk -->{{{1|0009-11}}}|{{#expr: {{#iferror:{{#ifexpr:((abs({{{1|0009-11}}}))< 1900) and ({{#time:Y|{{{1|0009-11}}}}} >1900) | {{#ifexpr:({{#time:Y|{{{1|0009-11}}}}}) <2000|{{#expr:{{#time:Y|{{{1|0009-11}}}}}-1900}}|{{#expr:{{#time:Y|{{{1|0009-11}}}}}-2000}} }} |{{#time:Y|{{{1|0009-11}}}}} }}|{{#time:Y|{{{1|0009-11}}}}} }}{{#switch:{{{bce|}}}|b|bd|d|db=*(-1) +1}}}} }}|{{#time:m|{{{1|}}}}}|{{#time:d|{{{1|}}}}} }}){{#invoke:check for unknown parameters|check|unknown={{#ifeq:{{NAMESPACENUMBER}}|0|[[Category:Birth-date and age transclusions with invalid parameters|_VALUE_]]}}|preview=unknown parameter "_VALUE_"|1|2|dt|gregorian|bce}}</includeonly><noinclude>
{{documentation}}
</noinclude>
a1yrh3ppg5f3ko24cbo9jfihmbbyn20
ಟೆಂಪ್ಲೇಟ್:Weekday in month/doc
10
28768
370500
2026-01-09T07:02:21Z
en>Peterwhy
0
/* Usage */ Replace the broken description lists ([[MOS:BADINDENT]]) and layout table of fixed width ([[MOS:LTAB]])
370500
wikitext
text/x-wiki
{{Documentation subpage}}
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->
== Usage ==
=== Code ===
Note that the order of the input can be reversed. The following give the same output.
* <code><nowiki>{{Weekday in month|</nowiki></code>''y''<code>|</code>''m''<code>|</code>''w''<code>|</code>''n''<code>}}</code>
* <code><nowiki>{{Weekday in month|</nowiki></code>''n''<code>|</code>''w''<code>|</code>''m''<code>|</code>''y''<code>}}</code>
Note that the year is optional. The following give the ''n''th ''w''-day of month ''m'' this year.
* <code><nowiki>{{Weekday in month||</nowiki></code>''m''<code>|</code>''w''<code>|</code>''n''<code>}}</code>
* <code><nowiki>{{Weekday in month|</nowiki></code>''n''<code>|</code>''w''<code>|</code>''m''<code>}}</code>
=== Parameters ===
{|class=wikitable
|-
!style="vertical-align:top;"| ''y''
| style="vertical-align:top;" | year
|numeric format, certain words, blank
*Integers from 1000 to 9999 are accepted.
*<code>last year</code> and <code>next year</code> are accepted.
*The year is optional (defaults to the current year).
|-
!style="vertical-align:top;"| ''m''
| style="vertical-align:top;" | month
|numeric format, spelt out in full or abbreviated
*For numeric input a leading zero is optional.
*Three-letter abbreviations are accepted (e.g. <code>Jan</code>, <code>Feb</code>, etc.)
|-
!style="vertical-align:top;"| ''w''
| style="vertical-align:top;" | weekday
|spelt out in full or abbreviated (''preferred'')
*Three-letter abbreviations are accepted (e.g. <code>Sun</code>, <code>Mon</code>, etc.)
or numeric format (''discouraged'')
*The weekday numbering follows non-ISO practice (Sunday → 0, Monday → 1, ... Saturday → 6).
|-
!style="vertical-align:top;"| ''n''
| style="vertical-align:top;" | count
|numeric format, spelt out in full or abbreviated
*Positive integers give the ''n''th Sunday/Monday ... Saturday of the month.
*Negative integers give the ''n''th last Sunday/Monday ... Saturday of the month.
*Words are accepted (e.g. <code>first</code>, <code>last</code>, etc.)
*Abbreviations are accepted (e.g. <code>1st</code>, <code>2nd</code>, etc.)
|}
=== Examples ===
{{columns-list
|colwidth=20em
|1=
*for the first Sunday of January 2000
**''n'' = <code>first</code>, <code>1st</code> or <code>1</code>
**''w'' = <code>Sunday</code> or <code>Sun</code> (or <code>0</code>)
**''m'' = <code>January</code>, <code>Jan</code> or <code>1</code>
**''y'' = <code>2000</code>
*for the first Monday of February 2006
**''n'' = <code>first</code>, <code>1st</code> or <code>1</code>
**''w'' = <code>Monday</code> or <code>Mon</code> (or <code>1</code>)
**''m'' = <code>February</code>, <code>Feb</code> or <code>2</code>
**''y'' = <code>2006</code>
*for the first Tuesday of March 2010
**''n'' = <code>first</code>, <code>1st</code> or <code>1</code>
**''w'' = <code>Tuesday</code> or <code>Tue</code> (or <code>2</code>)
**''m'' = <code>March</code>, <code>Mar</code> or <code>3</code>
**''y'' = <code>2010</code>
*for the second Tuesday of April 2012
**''n'' = <code>second</code>, <code>2nd</code> or <code>2</code>
**''w'' = <code>Tuesday</code>or <code>Tue</code> (or <code>2</code>)
**''m'' = <code>April</code>, <code>Apr</code> or <code>4</code>
**''y'' = <code>2012</code>
*for the second Tuesday of May 2020
**''n'' = <code>second</code>, <code>2nd</code> or <code>2</code>
**''w'' = <code>Tuesday</code> or <code>Tue</code> (or <code>2</code>)
**''m'' = <code>May</code> or <code>5</code>
**''y'' = <code>2020</code>
*for the second Wednesday of June 2100
**''n'' = <code>second</code>, <code>2nd</code> or <code>2</code>
**''w'' = <code>Wednesday</code> or <code>Wed</code> (or <code>3</code>)
**''m'' = <code>June</code>, <code>Jun</code> or <code>6</code>
**''y'' = <code>2100</code>
*for the third Wednesday of July this year
**''n'' = <code>third</code>, <code>3rd</code> or <code>3</code>
**''w'' = <code>Wednesday</code> or <code>Wed</code> (or <code>3</code>)
**''m'' = <code>July</code>, <code>Jul</code> or <code>7</code>
**''y'' = <code><nowiki>{{#time:Y}}</nowiki></code>, <code><nowiki>{{CURRENTYEAR}}</nowiki></code> or leave it blank
*for the third Thursday of August this year
**''n'' = <code>third</code>, <code>3rd</code> or <code>3</code>
**''w'' = <code>Thursday</code> or <code>Thu</code> (or <code>4</code>)
**''m'' = <code>August</code>, <code>Aug</code> or <code>8</code>
**''y'' = <code><nowiki>{{#time:Y}}</nowiki></code>, <code><nowiki>{{CURRENTYEAR}}</nowiki></code> or leave it blank
*for the last Thursday of September last year
**''n'' = <code>last</code> or <code>-1</code>
**''w'' = <code>Thursday</code> or <code>Thu</code> (or <code>4</code>)
**''m'' = <code>September</code>, <code>Sep</code> or <code>9</code>
**''y'' = <code><nowiki>{{#time:Y|last year}}</nowiki></code>, <code><nowiki>{{LASTYEAR}}</nowiki></code> or <code>last year</code>
*for the last Friday of October last year
**''n'' = <code>last</code> or <code>-1</code>
**''w'' = <code>Friday</code> or <code>Fri</code> (or <code>5</code>)
**''m'' = <code>October</code>, <code>Oct</code> or <code>10</code>
**''y'' = <code><nowiki>{{#time:Y|last year}}</nowiki></code>, <code><nowiki>{{LASTYEAR}}</nowiki></code> or <code>last year</code>
*for the second last Friday of November next year
**''n'' = <code>second last</code>, <code>2nd last</code> or <code>-2</code>
**''w'' = <code>Friday</code> or <code>Fri</code> (or <code>5</code>)
**''m'' = <code>November</code>, <code>Nov</code> or <code>11</code>
**''y'' = <code><nowiki>{{#time:Y|next year}}</nowiki></code>, <code><nowiki>{{NEXTYEAR}}</nowiki></code> or <code>next year</code>
*for the second last Saturday of December next year
**''n'' = <code>second last</code>, <code>2nd last</code> or <code>-2</code>
**''w'' = <code>Saturday</code> or <code>Sat</code> (or <code>6</code>)
**''m'' = <code>December</code>, <code>Dec</code> or <code>12</code>
**''y'' = <code><nowiki>{{#time:Y|next year}}</nowiki></code>, <code><nowiki>{{NEXTYEAR}}</nowiki></code> or <code>next year</code>
}}
==Calculation==
The template then gives ''j'', the day of the month, as calculated by the following formulae.
:''j'' = 7×''n'' − 6 + (''w'' − ''w<sub>1</sub>'') mod 7 (for positive ''n'')
:''j'' = ''t'' + 7×(''n'' + 1) − (''w<sub>t</sub>'' − ''w'') mod 7 (for negative ''n'')
Where ''t'' is the last day of the month, ''w<sub>t</sub>'' is the non-ISO weekday number of the last day of the month, ''w<sub>1</sub>'' is the non-ISO weekday number of the first day of the month and ''n'' and ''w'' are as defined above.
== Examples ==
<div style="overflow:auto;">
{{weekday in month/doc/examples}}
</div>
== See also ==
* {{tl|WEEKDAY}}
* {{tl|Weekday in month elapsed}}
<includeonly>{{Sandbox other|
| <!-- CATEGORIES BELOW THIS LINE, PLEASE: -->
[[Category:Date mathematics templates]]
}}</includeonly>
ohi1iio9z8b5zazkvlv9ehdkwpkyket
370501
370500
2026-09-28T09:45:50Z
ChiK
1136
1 revision imported from [[:en:Template:Weekday_in_month/doc]]
370500
wikitext
text/x-wiki
{{Documentation subpage}}
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS AT THE BOTTOM OF THIS PAGE -->
== Usage ==
=== Code ===
Note that the order of the input can be reversed. The following give the same output.
* <code><nowiki>{{Weekday in month|</nowiki></code>''y''<code>|</code>''m''<code>|</code>''w''<code>|</code>''n''<code>}}</code>
* <code><nowiki>{{Weekday in month|</nowiki></code>''n''<code>|</code>''w''<code>|</code>''m''<code>|</code>''y''<code>}}</code>
Note that the year is optional. The following give the ''n''th ''w''-day of month ''m'' this year.
* <code><nowiki>{{Weekday in month||</nowiki></code>''m''<code>|</code>''w''<code>|</code>''n''<code>}}</code>
* <code><nowiki>{{Weekday in month|</nowiki></code>''n''<code>|</code>''w''<code>|</code>''m''<code>}}</code>
=== Parameters ===
{|class=wikitable
|-
!style="vertical-align:top;"| ''y''
| style="vertical-align:top;" | year
|numeric format, certain words, blank
*Integers from 1000 to 9999 are accepted.
*<code>last year</code> and <code>next year</code> are accepted.
*The year is optional (defaults to the current year).
|-
!style="vertical-align:top;"| ''m''
| style="vertical-align:top;" | month
|numeric format, spelt out in full or abbreviated
*For numeric input a leading zero is optional.
*Three-letter abbreviations are accepted (e.g. <code>Jan</code>, <code>Feb</code>, etc.)
|-
!style="vertical-align:top;"| ''w''
| style="vertical-align:top;" | weekday
|spelt out in full or abbreviated (''preferred'')
*Three-letter abbreviations are accepted (e.g. <code>Sun</code>, <code>Mon</code>, etc.)
or numeric format (''discouraged'')
*The weekday numbering follows non-ISO practice (Sunday → 0, Monday → 1, ... Saturday → 6).
|-
!style="vertical-align:top;"| ''n''
| style="vertical-align:top;" | count
|numeric format, spelt out in full or abbreviated
*Positive integers give the ''n''th Sunday/Monday ... Saturday of the month.
*Negative integers give the ''n''th last Sunday/Monday ... Saturday of the month.
*Words are accepted (e.g. <code>first</code>, <code>last</code>, etc.)
*Abbreviations are accepted (e.g. <code>1st</code>, <code>2nd</code>, etc.)
|}
=== Examples ===
{{columns-list
|colwidth=20em
|1=
*for the first Sunday of January 2000
**''n'' = <code>first</code>, <code>1st</code> or <code>1</code>
**''w'' = <code>Sunday</code> or <code>Sun</code> (or <code>0</code>)
**''m'' = <code>January</code>, <code>Jan</code> or <code>1</code>
**''y'' = <code>2000</code>
*for the first Monday of February 2006
**''n'' = <code>first</code>, <code>1st</code> or <code>1</code>
**''w'' = <code>Monday</code> or <code>Mon</code> (or <code>1</code>)
**''m'' = <code>February</code>, <code>Feb</code> or <code>2</code>
**''y'' = <code>2006</code>
*for the first Tuesday of March 2010
**''n'' = <code>first</code>, <code>1st</code> or <code>1</code>
**''w'' = <code>Tuesday</code> or <code>Tue</code> (or <code>2</code>)
**''m'' = <code>March</code>, <code>Mar</code> or <code>3</code>
**''y'' = <code>2010</code>
*for the second Tuesday of April 2012
**''n'' = <code>second</code>, <code>2nd</code> or <code>2</code>
**''w'' = <code>Tuesday</code>or <code>Tue</code> (or <code>2</code>)
**''m'' = <code>April</code>, <code>Apr</code> or <code>4</code>
**''y'' = <code>2012</code>
*for the second Tuesday of May 2020
**''n'' = <code>second</code>, <code>2nd</code> or <code>2</code>
**''w'' = <code>Tuesday</code> or <code>Tue</code> (or <code>2</code>)
**''m'' = <code>May</code> or <code>5</code>
**''y'' = <code>2020</code>
*for the second Wednesday of June 2100
**''n'' = <code>second</code>, <code>2nd</code> or <code>2</code>
**''w'' = <code>Wednesday</code> or <code>Wed</code> (or <code>3</code>)
**''m'' = <code>June</code>, <code>Jun</code> or <code>6</code>
**''y'' = <code>2100</code>
*for the third Wednesday of July this year
**''n'' = <code>third</code>, <code>3rd</code> or <code>3</code>
**''w'' = <code>Wednesday</code> or <code>Wed</code> (or <code>3</code>)
**''m'' = <code>July</code>, <code>Jul</code> or <code>7</code>
**''y'' = <code><nowiki>{{#time:Y}}</nowiki></code>, <code><nowiki>{{CURRENTYEAR}}</nowiki></code> or leave it blank
*for the third Thursday of August this year
**''n'' = <code>third</code>, <code>3rd</code> or <code>3</code>
**''w'' = <code>Thursday</code> or <code>Thu</code> (or <code>4</code>)
**''m'' = <code>August</code>, <code>Aug</code> or <code>8</code>
**''y'' = <code><nowiki>{{#time:Y}}</nowiki></code>, <code><nowiki>{{CURRENTYEAR}}</nowiki></code> or leave it blank
*for the last Thursday of September last year
**''n'' = <code>last</code> or <code>-1</code>
**''w'' = <code>Thursday</code> or <code>Thu</code> (or <code>4</code>)
**''m'' = <code>September</code>, <code>Sep</code> or <code>9</code>
**''y'' = <code><nowiki>{{#time:Y|last year}}</nowiki></code>, <code><nowiki>{{LASTYEAR}}</nowiki></code> or <code>last year</code>
*for the last Friday of October last year
**''n'' = <code>last</code> or <code>-1</code>
**''w'' = <code>Friday</code> or <code>Fri</code> (or <code>5</code>)
**''m'' = <code>October</code>, <code>Oct</code> or <code>10</code>
**''y'' = <code><nowiki>{{#time:Y|last year}}</nowiki></code>, <code><nowiki>{{LASTYEAR}}</nowiki></code> or <code>last year</code>
*for the second last Friday of November next year
**''n'' = <code>second last</code>, <code>2nd last</code> or <code>-2</code>
**''w'' = <code>Friday</code> or <code>Fri</code> (or <code>5</code>)
**''m'' = <code>November</code>, <code>Nov</code> or <code>11</code>
**''y'' = <code><nowiki>{{#time:Y|next year}}</nowiki></code>, <code><nowiki>{{NEXTYEAR}}</nowiki></code> or <code>next year</code>
*for the second last Saturday of December next year
**''n'' = <code>second last</code>, <code>2nd last</code> or <code>-2</code>
**''w'' = <code>Saturday</code> or <code>Sat</code> (or <code>6</code>)
**''m'' = <code>December</code>, <code>Dec</code> or <code>12</code>
**''y'' = <code><nowiki>{{#time:Y|next year}}</nowiki></code>, <code><nowiki>{{NEXTYEAR}}</nowiki></code> or <code>next year</code>
}}
==Calculation==
The template then gives ''j'', the day of the month, as calculated by the following formulae.
:''j'' = 7×''n'' − 6 + (''w'' − ''w<sub>1</sub>'') mod 7 (for positive ''n'')
:''j'' = ''t'' + 7×(''n'' + 1) − (''w<sub>t</sub>'' − ''w'') mod 7 (for negative ''n'')
Where ''t'' is the last day of the month, ''w<sub>t</sub>'' is the non-ISO weekday number of the last day of the month, ''w<sub>1</sub>'' is the non-ISO weekday number of the first day of the month and ''n'' and ''w'' are as defined above.
== Examples ==
<div style="overflow:auto;">
{{weekday in month/doc/examples}}
</div>
== See also ==
* {{tl|WEEKDAY}}
* {{tl|Weekday in month elapsed}}
<includeonly>{{Sandbox other|
| <!-- CATEGORIES BELOW THIS LINE, PLEASE: -->
[[Category:Date mathematics templates]]
}}</includeonly>
ohi1iio9z8b5zazkvlv9ehdkwpkyket
ಟೆಂಪ್ಲೇಟ್:Weekday in month/doc/examples
10
28769
370502
2026-01-09T08:17:23Z
en>Peterwhy
0
/* Notes */ Add notes foot section
370502
wikitext
text/x-wiki
{|class=wikitable
!rowspan=2|year
!MLK Jr Day (US)
!Presidents Day (US)
!Memorial Day (US)
!Labor Day (US)
!Columbus Day (US)
!Father's Day<br/>(Australia)
!Mother's Day<br/>(many countries)
!Thanksgiving<br/>(Norfolk Island)
!Melbourne Cup Day<br/>(Australia)
|-
!3rd Monday in January
!3rd Monday in February
!Last Monday in May
!1st Monday in September
!2nd Monday in October
!1st Sunday in September
!2nd Sunday in May
!last Wednesday of November
!first Tuesday in November
|-
{{Weekday in month/doc/examples/row|{{#time:Y|-5 years}}}}
{{Weekday in month/doc/examples/row|{{#time:Y|-4 years}}}}
{{Weekday in month/doc/examples/row|{{#time:Y|-3 years}}}}
{{Weekday in month/doc/examples/row|{{#time:Y|-2 years}}}}
{{Weekday in month/doc/examples/row|{{#time:Y|-1 year}}|last year}}
{{Weekday in month/doc/examples/row|{{#time:Y}}|this year}}
{{Weekday in month/doc/examples/row|{{#time:Y|+1 year}}|next year}}
|}
=== Notes ===
{{NoteFoot}}
85f9vyf3lfgmap8tocspa0reajtn84r
370503
370502
2026-09-28T09:45:50Z
ChiK
1136
1 revision imported from [[:en:Template:Weekday_in_month/doc/examples]]
370502
wikitext
text/x-wiki
{|class=wikitable
!rowspan=2|year
!MLK Jr Day (US)
!Presidents Day (US)
!Memorial Day (US)
!Labor Day (US)
!Columbus Day (US)
!Father's Day<br/>(Australia)
!Mother's Day<br/>(many countries)
!Thanksgiving<br/>(Norfolk Island)
!Melbourne Cup Day<br/>(Australia)
|-
!3rd Monday in January
!3rd Monday in February
!Last Monday in May
!1st Monday in September
!2nd Monday in October
!1st Sunday in September
!2nd Sunday in May
!last Wednesday of November
!first Tuesday in November
|-
{{Weekday in month/doc/examples/row|{{#time:Y|-5 years}}}}
{{Weekday in month/doc/examples/row|{{#time:Y|-4 years}}}}
{{Weekday in month/doc/examples/row|{{#time:Y|-3 years}}}}
{{Weekday in month/doc/examples/row|{{#time:Y|-2 years}}}}
{{Weekday in month/doc/examples/row|{{#time:Y|-1 year}}|last year}}
{{Weekday in month/doc/examples/row|{{#time:Y}}|this year}}
{{Weekday in month/doc/examples/row|{{#time:Y|+1 year}}|next year}}
|}
=== Notes ===
{{NoteFoot}}
85f9vyf3lfgmap8tocspa0reajtn84r
ಟೆಂಪ್ಲೇಟ್:Weekday in month/doc/examples/row
10
28770
370504
2026-01-09T14:59:58Z
en>Peterwhy
0
[[Template:Template reference list]]
370504
wikitext
text/x-wiki
<noinclude>{| class="wikitable"
</noinclude>|-
!rowspan=2|{{{1|{{CURRENTYEAR}}}}}{{#if:{{{2|}}}|<br>({{{2}}})}}
|<!-- MLK Jr Day (US) - 3rd Monday in January
-->{{weekday in month|{{{1|{{CURRENTYEAR}}}}}|1|1|3}} January
|<!-- Presidents Day (US) - 3rd Monday in February
-->{{weekday in month|3|1|2|{{{1|{{CURRENTYEAR}}}}}}} February
|<!-- Memorial Day (US) - Last Monday in May
-->{{weekday in month|{{{1|{{CURRENTYEAR}}}}}|5|1| -1}} May
|<!-- Labor Day (US) - 1st Monday in September
-->{{weekday in month|first|Monday|September|{{{1|{{CURRENTYEAR}}}}}}} September
|<!-- Columbus Day (US) - 2nd Monday in October
-->{{weekday in month|2nd|Mon|Oct|{{{1|{{CURRENTYEAR}}}}}}} October
|<!-- Father's Day (Australia) - 1st Sunday in September
-->{{weekday in month|1st|sun|oct|{{{1|{{CURRENTYEAR}}}}}}} September
|<!-- Mother's Day (many countries) - 2nd Sunday in May
-->{{weekday in month|2|sun|may|{{{1|{{CURRENTYEAR}}}}}}} May
|<!-- Thanksgiving (Norfolk Island) - last Wednesday of November
-->{{weekday in month|last|Wed|Nov|{{{1|{{CURRENTYEAR}}}}}}} November
|<!-- Melbourne Cup Day - first Tuesday in November
-->{{#ifeq:{{{2}}}|this year
|{{weekday in month|1st|Tue|Nov}}
|{{weekday in month|1st|Tue|Nov|{{{2|{{{1|{{CURRENTYEAR}}}}}}}}}}
}} November
|-
|<!-- MLK Jr Day (US) - 3rd Monday in January
-->{{tnull|weekday in month<wbr/>|{{{1|{{CURRENTYEAR}}}}}|1<wbr/>|''1''|3}}{{NoteTag|name=prefer Monday name|But prefer <code>Monday</code> or <code>Mon</code> for ''w''.}}
|<!-- Presidents Day (US) - 3rd Monday in February
-->{{tnull|weekday in month<wbr/>|3|''1''<wbr/>|2|{{{1|{{CURRENTYEAR}}}}}}}{{NoteTag|name=prefer Monday name}}
|<!-- Memorial Day (US) - Last Monday in May
-->{{tnull|weekday in month<wbr/>|{{{1|{{CURRENTYEAR}}}}}|5<wbr/>|''1''|-1}}{{NoteTag|name=prefer Monday name}}
|<!-- Labor Day (US) - 1st Monday in September
-->{{tnull|weekday in month<wbr/>|first<wbr/>|Monday<wbr/>|September<wbr/>|{{{1|{{CURRENTYEAR}}}}}}}
|<!-- Columbus Day (US) - 2nd Monday in October
-->{{tnull|weekday in month<wbr/>|2nd|Mon<wbr/>|Oct|{{{1|{{CURRENTYEAR}}}}}}}
|<!-- Father's Day (Australia) - 1st Sunday in September
-->{{tnull|weekday in month<wbr/>|1st|sun<wbr/>|oct|{{{1|{{CURRENTYEAR}}}}}}}
|<!-- Mother's Day (many countries) - 2nd Sunday in May
-->{{tnull|weekday in month<wbr/>|2|sun<wbr/>|may|{{{1|{{CURRENTYEAR}}}}}}}
|<!-- Thanksgiving (Norfolk Island) - last Wednesday of November
-->{{tnull|weekday in month<wbr/>|last|Wed<wbr/>|Nov|{{{1|{{CURRENTYEAR}}}}}}}
|<!-- Melbourne Cup Day - first Tuesday in November
-->{{#ifeq:{{{2}}}|this year
|{{tnull|weekday in month<wbr/>|1st|Tue<wbr/>|Nov}}
|{{tnull|weekday in month<wbr/>|1st|Tue<wbr/>|Nov|{{{2|{{{1|{{CURRENTYEAR}}}}}}}}}}
}}<noinclude>
|}
{{Template reference list|note}}
</noinclude>
f2v2b6bh0c9xanl7f2x7jpale41d5fu
370505
370504
2026-09-28T09:45:50Z
ChiK
1136
1 revision imported from [[:en:Template:Weekday_in_month/doc/examples/row]]
370504
wikitext
text/x-wiki
<noinclude>{| class="wikitable"
</noinclude>|-
!rowspan=2|{{{1|{{CURRENTYEAR}}}}}{{#if:{{{2|}}}|<br>({{{2}}})}}
|<!-- MLK Jr Day (US) - 3rd Monday in January
-->{{weekday in month|{{{1|{{CURRENTYEAR}}}}}|1|1|3}} January
|<!-- Presidents Day (US) - 3rd Monday in February
-->{{weekday in month|3|1|2|{{{1|{{CURRENTYEAR}}}}}}} February
|<!-- Memorial Day (US) - Last Monday in May
-->{{weekday in month|{{{1|{{CURRENTYEAR}}}}}|5|1| -1}} May
|<!-- Labor Day (US) - 1st Monday in September
-->{{weekday in month|first|Monday|September|{{{1|{{CURRENTYEAR}}}}}}} September
|<!-- Columbus Day (US) - 2nd Monday in October
-->{{weekday in month|2nd|Mon|Oct|{{{1|{{CURRENTYEAR}}}}}}} October
|<!-- Father's Day (Australia) - 1st Sunday in September
-->{{weekday in month|1st|sun|oct|{{{1|{{CURRENTYEAR}}}}}}} September
|<!-- Mother's Day (many countries) - 2nd Sunday in May
-->{{weekday in month|2|sun|may|{{{1|{{CURRENTYEAR}}}}}}} May
|<!-- Thanksgiving (Norfolk Island) - last Wednesday of November
-->{{weekday in month|last|Wed|Nov|{{{1|{{CURRENTYEAR}}}}}}} November
|<!-- Melbourne Cup Day - first Tuesday in November
-->{{#ifeq:{{{2}}}|this year
|{{weekday in month|1st|Tue|Nov}}
|{{weekday in month|1st|Tue|Nov|{{{2|{{{1|{{CURRENTYEAR}}}}}}}}}}
}} November
|-
|<!-- MLK Jr Day (US) - 3rd Monday in January
-->{{tnull|weekday in month<wbr/>|{{{1|{{CURRENTYEAR}}}}}|1<wbr/>|''1''|3}}{{NoteTag|name=prefer Monday name|But prefer <code>Monday</code> or <code>Mon</code> for ''w''.}}
|<!-- Presidents Day (US) - 3rd Monday in February
-->{{tnull|weekday in month<wbr/>|3|''1''<wbr/>|2|{{{1|{{CURRENTYEAR}}}}}}}{{NoteTag|name=prefer Monday name}}
|<!-- Memorial Day (US) - Last Monday in May
-->{{tnull|weekday in month<wbr/>|{{{1|{{CURRENTYEAR}}}}}|5<wbr/>|''1''|-1}}{{NoteTag|name=prefer Monday name}}
|<!-- Labor Day (US) - 1st Monday in September
-->{{tnull|weekday in month<wbr/>|first<wbr/>|Monday<wbr/>|September<wbr/>|{{{1|{{CURRENTYEAR}}}}}}}
|<!-- Columbus Day (US) - 2nd Monday in October
-->{{tnull|weekday in month<wbr/>|2nd|Mon<wbr/>|Oct|{{{1|{{CURRENTYEAR}}}}}}}
|<!-- Father's Day (Australia) - 1st Sunday in September
-->{{tnull|weekday in month<wbr/>|1st|sun<wbr/>|oct|{{{1|{{CURRENTYEAR}}}}}}}
|<!-- Mother's Day (many countries) - 2nd Sunday in May
-->{{tnull|weekday in month<wbr/>|2|sun<wbr/>|may|{{{1|{{CURRENTYEAR}}}}}}}
|<!-- Thanksgiving (Norfolk Island) - last Wednesday of November
-->{{tnull|weekday in month<wbr/>|last|Wed<wbr/>|Nov|{{{1|{{CURRENTYEAR}}}}}}}
|<!-- Melbourne Cup Day - first Tuesday in November
-->{{#ifeq:{{{2}}}|this year
|{{tnull|weekday in month<wbr/>|1st|Tue<wbr/>|Nov}}
|{{tnull|weekday in month<wbr/>|1st|Tue<wbr/>|Nov|{{{2|{{{1|{{CURRENTYEAR}}}}}}}}}}
}}<noinclude>
|}
{{Template reference list|note}}
</noinclude>
f2v2b6bh0c9xanl7f2x7jpale41d5fu
ಟೆಂಪ್ಲೇಟ್:Weekday in month elapsed
10
28771
370506
2026-01-09T11:59:24Z
en>Peterwhy
0
Remove extra new lines before and after included text
370506
wikitext
text/x-wiki
<includeonly>{{#ifexpr: {{{1|0}}}
|{{#ifexpr:{{CURRENTISOYEAR}}>{{{1|{{CURRENTISOYEAR}}}}}|1|0}}
|{{#ifexpr:{{CURRENTMONTH}}>{{{2|}}}|1|{{#ifexpr:{{CURRENTMONTH}}={{{2|}}}|{{#ifexpr:({{CURRENTDAY}}>{{Weekday in month|{{{1|{{CURRENTISOYEAR}}}}}|{{{2|}}}|{{{3|}}}|{{{4|}}}}})|1|0}}|0}}}}
}}</includeonly><noinclude>
{{documentation}}
<!-- Add categories to the /doc subpage and add interwikis to Wikidata -->
</noinclude>
fdqfwhte2w3afywhmyta5i0zwgrijyz
370507
370506
2026-09-28T09:48:33Z
ChiK
1136
1 revision imported from [[:en:Template:Weekday_in_month_elapsed]]
370506
wikitext
text/x-wiki
<includeonly>{{#ifexpr: {{{1|0}}}
|{{#ifexpr:{{CURRENTISOYEAR}}>{{{1|{{CURRENTISOYEAR}}}}}|1|0}}
|{{#ifexpr:{{CURRENTMONTH}}>{{{2|}}}|1|{{#ifexpr:{{CURRENTMONTH}}={{{2|}}}|{{#ifexpr:({{CURRENTDAY}}>{{Weekday in month|{{{1|{{CURRENTISOYEAR}}}}}|{{{2|}}}|{{{3|}}}|{{{4|}}}}})|1|0}}|0}}}}
}}</includeonly><noinclude>
{{documentation}}
<!-- Add categories to the /doc subpage and add interwikis to Wikidata -->
</noinclude>
fdqfwhte2w3afywhmyta5i0zwgrijyz
ಟೆಂಪ್ಲೇಟ್:Weekday in month elapsed/doc
10
28772
370508
2026-01-09T11:45:42Z
en>Peterwhy
0
Use week day names as preferred by [[Template:Weekday in month]]
370508
wikitext
text/x-wiki
{{Documentation subpage}}
<!-- Categories and interwikis go at the bottom of this page. -->
== Usage ==
Returns 1 or 0 (true or false) depending on whether the date has elapsed, defaults to current year. This template is useful for recurring events such as [[Milford Oyster Festival]]
<code><nowiki>{{Weekday in month elapsed|</nowiki></code>''y''<code>|</code>''m''<code>|</code>''w''<code>|</code>''n''<code>}}</code>
''y'' = year (if left blank, defaults to current year)
''m'' = month (1 = January)
''w'' = day of week (Sunday; Monday; Tuesday; Wednesday; Thursday; Friday; Saturday)
''n'' = week of month (1 = 1st week of month; accepts negative numbers, -1 = last week of month; -2 = second to last week of month)
==Examples==
1st Sunday in January = {{Weekday in month elapsed||1|Sunday|1}}
3rd Saturday in August = {{Weekday in month elapsed||8|Saturday|3}}
4th Thursday in November (Thanksgiving in USA) = {{Weekday in month elapsed||11|Thursday|4}}
Last Monday in December 1945 = {{Weekday in month elapsed|1945|12|Monday|-1}}
== See also ==
*[[Template:Weekday in month|Weekday in month]]
<includeonly>{{Sandbox other||
<!-- Categories and interwikis go here: -->
[[Category:Date mathematics templates|{{PAGENAME}}]]
}}</includeonly>
crxwrpg0a4an80xk8c29zu1vuoc1dch
370509
370508
2026-09-28T09:48:33Z
ChiK
1136
1 revision imported from [[:en:Template:Weekday_in_month_elapsed/doc]]
370508
wikitext
text/x-wiki
{{Documentation subpage}}
<!-- Categories and interwikis go at the bottom of this page. -->
== Usage ==
Returns 1 or 0 (true or false) depending on whether the date has elapsed, defaults to current year. This template is useful for recurring events such as [[Milford Oyster Festival]]
<code><nowiki>{{Weekday in month elapsed|</nowiki></code>''y''<code>|</code>''m''<code>|</code>''w''<code>|</code>''n''<code>}}</code>
''y'' = year (if left blank, defaults to current year)
''m'' = month (1 = January)
''w'' = day of week (Sunday; Monday; Tuesday; Wednesday; Thursday; Friday; Saturday)
''n'' = week of month (1 = 1st week of month; accepts negative numbers, -1 = last week of month; -2 = second to last week of month)
==Examples==
1st Sunday in January = {{Weekday in month elapsed||1|Sunday|1}}
3rd Saturday in August = {{Weekday in month elapsed||8|Saturday|3}}
4th Thursday in November (Thanksgiving in USA) = {{Weekday in month elapsed||11|Thursday|4}}
Last Monday in December 1945 = {{Weekday in month elapsed|1945|12|Monday|-1}}
== See also ==
*[[Template:Weekday in month|Weekday in month]]
<includeonly>{{Sandbox other||
<!-- Categories and interwikis go here: -->
[[Category:Date mathematics templates|{{PAGENAME}}]]
}}</includeonly>
crxwrpg0a4an80xk8c29zu1vuoc1dch