ویکینبشته
fawikisource
https://fa.wikisource.org/wiki/%D8%B5%D9%81%D8%AD%D9%87%D9%94_%D8%A7%D8%B5%D9%84%DB%8C
MediaWiki 1.47.0-wmf.10
first-letter
مدیا
ویژه
بحث
کاربر
بحث کاربر
ویکینبشته
بحث ویکینبشته
پرونده
بحث پرونده
مدیاویکی
بحث مدیاویکی
الگو
بحث الگو
راهنما
بحث راهنما
رده
بحث رده
درگاه
بحث درگاه
پدیدآورنده
بحث پدیدآورنده
برگه
گفتگوی برگه
فهرست
گفتگوی فهرست
TimedText
TimedText talk
پودمان
بحث پودمان
Event
Event talk
درگاه:قانون اساسی کشورها
100
1498
291041
190091
2026-07-11T19:04:23Z
Hanooz
17889
291041
wikitext
text/x-wiki
{{portal header
| title = قوانین اساسی
| class = K
| subclass1 = A
| shortcut =
| notes = این صفحه دربرگیرنده قانون اساسی کشورها و اسناد اعلام استقلال است.
}}
== ایران ==
* [[قانون اساسی مشروطه]] - مصوب ۱۲۸۵ خورشیدی مجلس شورای ملی دوره قانونگذاری نخست
* [[پیش نویس قانون اساسی جمهوری اسلامی]] - تهیه شده ۱۳۵۸
* [[قانون اساسی سابق جمهوری اسلامی ایران (پیش از بازنگری ۱۳۶۸)]]
* [[قانون اساسی جمهوری اسلامی ایران]]
== افغانستان ==
* [[قانون اساسی افغانستان]] (۱۳۸۲)
[[رده:درگاهها]]
[[رده:قوانین اساسی کشورها]]
rcih0di27pyyw93ffmgmkc8frxc2dzb
الگو:میانبر
10
19080
291027
193183
2026-07-11T16:55:00Z
Hanooz
17889
291027
wikitext
text/x-wiki
<templatestyles src="Shortcut/styles.css" /><includeonly><div <!--id="shortcut"--> class="wst-shortcut noprint"><div><div><div>
<span>[[ویکینبشته:میانبر]]: </span><br>{{{1}}}
</div></div></div></div></includeonly><noinclude>{{documentation}}</noinclude>
o0rvhl5zj0xziya1cbk62f6s976ohrc
291029
291027
2026-07-11T16:59:11Z
Hanooz
17889
291029
wikitext
text/x-wiki
<templatestyles src="Shortcut/styles.css" /><includeonly><div <!--id="shortcut"--> class="wst-shortcut noprint"><div><div><div>
<span>[[ویکینبشته:میانبر|میانبر]]: </span><br>{{{1}}}
</div></div></div></div></includeonly><noinclude>{{documentation}}</noinclude>
5747qscvhym4vokxjmdnysdy0cu0uum
الگو:Navbox
10
22595
291057
117088
2026-07-11T20:30:59Z
Hanooz
17889
جایگزینی صفحه با '<includeonly>{{#invoke:Navbox|navbox}}</includeonly><noinclude> {{Documentation}} </noinclude>'
291057
wikitext
text/x-wiki
<includeonly>{{#invoke:Navbox|navbox}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
tqodcaa2vvhehqaod229udlla0wimek
ویکینبشته:مدیران
4
24005
291030
282668
2026-07-11T17:03:35Z
Hanooz
17889
291030
wikitext
text/x-wiki
{{سرصفحه پردازش
| عنوان = مدیران
| قسمت =
| قبلی = →[[ویکینبشته:فهرست/جامعه|صفحات جامعه]]
| بعدی =
| میانبر = [[ون:مدیر]]
| یادداشت = این صفحه به فهرست مدیران کنونی پروژهٔ ویکینبشتهٔ فارسی میپردازد (همچنین نگاه کنید به [[ویژه:فهرست_مدیران|فهرست مدیران]] برگرفته از نرمافزار). برای دستیابی به فهرست جامعی از تمامی مدیران ویکینبشته از ابتدا تا کنون و پیوندهای مربوط به حصول اجماع در نظرخواهیهای مربوطه گاهشمار مدیران را ببینید.
همچنین ببینید:
* [[ویکینبشته:مدیریت|دربارهٔ مدیریت]]
* [[ویکینبشته:سیاست دسترسی محدود|سیاست دسترسی محدود]]
* [[ون:تام|تابلوی اعلانات مدیران]]
<div class="hlist plainlinks">
*[//toolserver.org/~vvv/adminstats.php?wiki=fawikisource_p&tlimit=none آمار فعالیت مدیران]
*[//toolserver.org/~vvv/adminstats.php?wiki=fawikisource_p&tlimit=31536000 یک سال اخیر]
*[//toolserver.org/~vvv/adminstats.php?wiki=fawikisource_p&tlimit=15768000 شش ماه اخیر]
*[//toolserver.org/~vvv/adminstats.php?wiki=fawikisource_p&tlimit=7884000 سه ماه اخیر]
*[http://fa.wikisource.org/w/index.php?title=Special:ListUsers&group=sysop فهرست مدیران برگرفته از سیستم]</div>
}}
== مدیران ==
* [[کاربر:Pedram.salehpoor]]
* [[کاربر:Darafsh]]
[[رده:ویکینبشته]]
ghrol3qivdy3318fm08l6dxldt2zi1c
درگاه:Index
100
27161
291033
57089
2026-07-11T17:40:03Z
Hanooz
17889
تغییر هدف تغییرمسیر از [[ویکینبشته:آثار]] به [[ویکینبشته:فهرست]]
291033
wikitext
text/x-wiki
#تغییرمسیر [[ویکینبشته:فهرست]]
1hi0tcdergl2aedwvejblcmntqi0wj5
لارن مارغون (جلد اول)/فصل ۲۱
0
28798
291007
142856
2026-07-11T15:35:38Z
Pirhayati
6551
291007
wikitext
text/x-wiki
{{سرصفحه
| عنوان = لارن مارغون (جلد اول)
| مؤلف = الکساندر دوما
| قسمت = فصل ۲۱
| قبلی = [[لارن مارغون (جلد اول)/فصل ۲۰|فصل ۲۰]]
| بعدی = [[لارن مارغون (جلد اول)/فصل ۲۲|فصل ۲۲]]
| سال =
| یادداشت = ترجمه از [[محمدطاهر میرزا]]
}}
کاترین در حدس خودش خطا نکرده بود. هنری باز عادت قدیم را از سر گرفته و هر شب میرفت پیش مادام دسو. در اوایل پنهانی شدید و کمکم احتیاط را بکنار گذاشته چنان میآمد که ملکه کاترین را در فهمیدن اشکالی نبود. و میدانست که مارکریت باسم زن هنریست اما رسم با مادام دسو است. در اول اینقصه مختصری از آپارتمان مادام دسو ذکر کردیم. اما دریکه داریول بروی هنری باز کرده و بعد از دخول هنری میبست بمکانی بود که بالمره بما مجهول است. این منزل مثل منزل انهاییکه پرنسها مکان میدهند به همسفرهای خود. که میخواهند در دم دست داشته باشند. بسیار کوچک و ناراحت بود. در طبقه دوم تقریبا بالای عمارت هنری واقع. در این آپارتمان بدهلیزی باز میشد که در منتهای اندهلیز روزنه بود که روشنایی کمی میداد. در زمستان سه ساعت بعد از ظهر مجبور بودند که چراغ روشن نمایند. در همه وقت این لامپ روغن بیک اندازه و مقدار داشت که کم و زیاد نمیشد پس از اینقرار همیشه در حوالی ساعت ده عصر خاموش میگشت و در فصل زمستان مامنی از برای عشاق بود که بآسودگی با محبوبه در انجا خلوت کرده و بخاطر جمعی تردد مینمودند بیک اطاقی بیرونی مفروش با پرنیان گلدار و یک اطاق پذیرایی مفروش با مخمل آبی و یک اطاق خوابگاه با پرده از اطلس سرخ و مزین با روئیل که آینه با چارچوبه نقره و دو تابلو از کار اوستاد صورت ربهالنوع عشق نهاده بودند. همین عبارت بود از مسکن بعبارت اخری آشیانه مادام دسو دام دانور یعنی مشاطه ملکه کاترین. و در گوشه میزی با اسباب بزک و تمام لواحقش بود. و در گنجی دری بود که گشوده میشد بنمازخانه که بعضی اسباب معمول عبادت در انجا بود. و دو سه قطعه اسلحه از دیوار آویخته بودند که رسمالزمان بر این بود که زنها نیز اسلحه بر میداشتند و بعضی از اوقات بکار میبردند و احیانا بهتر از مردها استعمال مینمودند. فردای انشبی که ان تفصیل در خانه رنه گذشت عصری بود که مادام دسو در اطاق خوابگاه خود در فراز خوابگاهی نشسته بود و به هنری صحبت میکرد از عشق خود. و از خدماتیکه باو کرده بود. هنری نیز باو شکرگذاری میکرد و اظهار امتنان مینمود دسو امشب خیلی محبوب و دلیر بود در لباس شب که عبارت از قطیفه ساده بود. بهنری گفت که راست بگو آیا انشب که در خانه ملکه ناوار خفتید و لامول در پایین پای شما خوابید بر شما چه گذشت آیا میخواستید که لامول در انجا نباشد و بآسودگی عیشی نمایید؟ - هنری گفت واقعا چنین بود. و بر من خوش نگذشت. – مادام دسو تبسمی کرده و گفت بعد از انشب چند بار دیگر بانجا رفتهاید؟ - گفت هر چند بار که رفتهام بتو گفتهام. – گفت حال بمن نگفته هیج بانجا نرفتهاید؟ - گفت نه – گفت قسم میخوری؟ - گفت البته اگر هوگنو بودم. اما . . . – گفت اما چه؟ - گفت اما اینکه حال کاتولیکم و مذهب کاتولیک قسم را منع میکند. – دسو سری تکان داد و چیزی نگفت – هنری گفت حال ببینیم هر چه من میپرسم تو هم جواب خواهیی داد؟ - گفت البته جواب میدهم زیرا که چیزی ندارم که از تو پنهان سازم – هنری گفت بگو ببینم چرا اینقدر با من سخت گیری میکردی و تن بوصال در نمیدادی قبل از عروسی من. اما بعد از عروسی رام شدی و دست در آغوشم کردی. سر این چه باشد – گفت هنری. از من سوال میکنمی مسئله را که فیلسوفان از سه هزار سال باینطرف جان کندند که بفهمند هنوز نفمیدهاند و مسئله لاینحل مانده هنری هرگز هیج زنی مپرس که چرا مرا خواستی که این سوال جواب ندارد. بهمین قدر راضی شو و قناعت کن که بپرسی آیا مرا دوست داری؟. هنری تبسمی کرد و گفت خوب حال شارلوت مرا دوست داری؟ - مادام دسو خندید و دست ظریف خود را گذاشت بدست هنری و گفت که آری دوستت دارم. هنری این دست را گرفت و نگهداری کرد و گفت ایکاش انکلمه را که فیلسوفان از سه هزار سال تاکنون تفحص کردهاند و نیافتهاند من میافتم. اقلا مال دیگران نباشد مال شما را میدانستم که چه بوده است؟. مادام دسو سرخ شد و هنری باز گفت پس شما مرا دوست دارید در اینصورت هیج چیز دیگر نمیخواهم. و خود را سعادتمندترین مردم میدانم.
اما اینقدر هست که انسان بالطبع همیشه میخواهد که چیزیرا که از او منع کردند درک نماید و مجهول نداشته باشد. پدر ما حضرت آدم علیه السلام از چیزی که ممنوع شده بود تحمل نکرد و انهمه نعیم بهشتی را از برای تفحص چیزی از دست داد. پس من نیز میخواهم مجهولی نداشته باشم پس بمن بگوی عزیزم. که آیا اینطور نبوده است که ملکه کاترین تو را حکم کرده بود که مرا دوست داری؟ - مادام دسو گفت هنری هر وقت که از کاترین صحبت میداری بسیار آهسته سخن گوی. – هنری با بیاعتنایی تمام بطوریکه مادام دسو نیز مشتبه شد گفت اوه این سابق خوب بود که از این مادر مهربان احتراز میکردم. که میانمان خوب نبود. حال که شوهر دخترش هستم دیگر چه احتیاط دارم که بکنم. – شارلوت از رشک و حسد سرخ شده و گفت شوهر مادام مارکریت! – گفت آری. اما تو هم آهستهتر حرف بزن. آری شوهر دخترش و مذهب کاتولیک دیگر چه بیشتر از این میخواهند. توفیق رفیق شده سنت بارتلومی مرا نجات داد. حال همه با هم سازگار شدهایم و برادروار همکیش و هممذاق هستی. – گفت با ملکه مارکریت چطور؟ - گفت کمال صفا را داریم. و اوست که باعث اتحاد ما شده و ما را بهم ربط داده – گفت هنری تو بمن گفتی که مادام مارکریت بپاداش خدمتی که بوی کردم کمال التفات را بمن دارند. و تو را بمن واگذار نمودهاند. پس اگر این سخن راست است و این عنایت درباره من صحت دارد و تو باین سخن امیدوار شده این اطمینان تو خطا است نباید باین درجه مطمئن شد. – گفت مع هذا من کمال اطمینان را دارم – مادام دسو بانگ زد و گفت هنری پس از اینقرار تو مرا فریب داده. و زن حسابی تو مادام مارکریت است. – هنری تبسم کرد. – مادام دسو متغیرانه گفت بس است هنری این از ان تبسمهاست که مرا بخشم میآورد به قسمیکه با وجود اینکه تو پادشاهی بعضی از اوقات میخواهم چشمت را بکنم – هنری گفت نزدیک است که از این ادعای دوستی مفروض تو شبهه نمایم. زیرا که میخواهی که چشمهای مرا بکنی بجهته اینکه مدعی اخلاص من هستی و میگویی که مرا دوست داری. – مادام دسو گفت هنری! هنری! نمیدانم چه در دل داری گماندارم که کسی نباشد که بتواند از ما فیالضمیر تو آگاه باشد – هنری گفت من خیال میکنم که امر چنین بوده است که نخست کاترین بتو فرمان داد که بمن اظهار محبت نمایی. اما در آخر تو هم خودت مرا دوست داشتی اول بحکم ملکه بود و آخر بفرمان دل. و اکنون پیروی میل قلبی را میکنی و با فرمان کاترین کاری نداری. فلهذا من نیز دوستت دارم ولی جرات انرا ندارم که اگر سری داشته باشم بتو بگویم. زیرا که بدوستی ملکه فریفته شده و باو میگویی. و همان سر بالاخره موجب هلاکت تو میشود زیرا که بدوستی ملکه اعتماد نیست و همیشه در تغیر است – مادام دسو اینجواب را در شمار نداشت و اینطور میل نداشت که بشنود. دید که میل دارد که قدری گریه کند. اینوقت ساعت ده را زد مادام دسو گفت اعلیحضرتا وقت آنست که مرا مرخص نمایید که استراحت کنم زیرا که فردا صبح زود باید بجهته خدمات ملکه بیدار شوم. – هنری گفت عزیزم مرا امشب بیرون میکنید؟ - گفت هنری امشب من محزونم و چون محزون باشم مرا بیمزه خواهید یافت. و چون بیمزهام یافتید دیگر مرا دوست نخواهید داشت. پس بهتر اینست که شما تشریف ببرید. – گفت میروم اگر میل شما بر این باشد شارلوت. اما وانتر سنت غری اینقدر متوقعم که مجال بدهید تا تماشا کنم بزک کردن و لباس کندن و بخوابگاه رفتن شما. – گفت اعلیحضرتا ملکه مارکریت را از برای اینکار اینقدر معطل میکردید؟ - هنری خود را موقر ساخته و با وقر تمام گفت شارلوت قرار ما بر این بود که از ملکه ناوار بهیجوجه صحبت نداریم و با کمال تاسف میبینم که شما امشب همه را از او صحبت میدارید. – شارلوت آهی کشید و نشست در برابر اسباب بزک از برای شب هنری نیز آمده در پهلوی او نشست و میگفت اه چه عطریات و چه اسباب آرایش تمام اینها از برای دلربایی هنری فقیر است.
گفت اینها بنظرت زیاد میآید هنری؟ با وجود اینهمه اسباب آرایش کی میتوانم تحصیل نمایم وسیله را که خود تنها بدل شما حاکم باشم و غیری در انجا راه نداشته باشد – هنری گفت خانم ولمان کن باز میرویم که بیفتیم بپولتیک. این قلم مویین باین لطافه چهچیز است؟ گماندارم که از برای رنگآمیزی ابورهای شماست. – مادام دسو تبسم کرده و گفت مرحبا و آفرین بر ذهن اعلیحضرت شما که باولین نظر یافتید که از برای چه کار است. – گفت این آلتی از عاج که مثل شانه دندانه دارد بهر چه کار است؟ - گفت از برای تسویه خطوط گیسوان. – گفت این قوطی نقره باین ظرافت چه چیز است؟ - گفت این قوطی را متر رنه از برای من فرستاده مدتیست که بمن وعده داده بود که موم روغنی ترکیب نماید از چیزها از برای نرم ساختن لبهای من که شما بعضی از اوقات بسیار لطیف میافتید. هنوز تجربه نکردهام. هنری گفت عجاله قدری از ان لبها بچشم تا ببینم چطور است؟ پس لبها را بلبهای شارلوت نهاد که او در میان آینه بدقت میدید. و شارلوت بجهته امتحان دست برد بقوطی که از ان موم روغن بلبها بمالد. که در را کوبیدند. دسو بداریول گفت ببین کیست در را میکوبد. داریول رفت هنری بتعجب بدسو نگاه میکرد و در خیال پنهان شدن در نمازخانه بود که داریول برگشت و گفت متر رنه هستند – هنری از شنیدن این اسم ابرو در هم کشید و بیاختیار لبها را خایید – دسو گفت میخواهید جوابش بگویم و برگردانم؟ - گفت نه بیاید زیرا که متر رنه از همه چیز مطلع است. و میداند که من اینجا هستم – گفت شما دلخوری از او دارید؟ - هنری با وجود خودداری نتوانست باز خود را کاملا ضبط نماید. گفت نه کمی میانه ما برودت بود انهم از شب سنت بارتلومی رفع گردید. – دسو بداریول گفت داخل کن. بعد از لحظه رنه وارد اطاق گردید و در اول ورود بدقت بتمام اطاق نگریست دسو در برابر میز بزک نشسته بود. هنری هم در جای نخستین خود رفته بود. هنری در سایه بود و شارلوت در روشنایی. رنه با کمال خصوصیه گفت مادام من از برای معذرت بخدمت آمدم – شارلوت با کمال عشوه و ناز گفت از برای چه رنه؟ - گفت از برای اینکه مدتهاست که بشما وعده موم روغنی دادهام و تاکنون مجال نشده که بخدمت بفرستم. – شارلوت گفت امروز که فرستادهاید. رنه بدقت نظر کرد و دید که همان قوطی مال خودش که مفقود شده بود در سر میز است رنه بزیر لب گفت که من حدس زده بودم که مسئله چطور است. حال از این موم روغن استعمال نکردهاید؟ - گفت نه هنوز. اما میرفتم استعمال نمایم که شما در زدید و تشریف آوردید. – صورت و سیمای رنه حالت فکر گرفت که از هنری پوشیده نماند. و کمتر چیز از او پوشیده میماند پس پرسید از وی که چه فکر میکنید متر رنه – گفت اعلیحضرتا منتظرم که شما مرحمت فرموده بکلمه مرا شرف دهید تا از خدمت مادام لا بارون مرخص شوم – هنری تبسم کرده و گفت دست از ما بکش متر رنه. میخواهی که بگویم که بسیار محظوظ شدم از ملاقات شما. – رنه باطراف خود نظری افکنده و در اطاق دوری زده بدقت همه جا را دید و برگشت بطوری مقام گرفت که بیک نظر هر دو را میدید. هم هنری و هم شارلوت را. هنری با احساسی که مخصوص او بود که میشد گفت حس ششم است که علاوه دارد. درک کرد که خطری در پیش دارد. برگشت بطوریکه خود تمام در سایه و رنه بالمره در روشنایی ماند و متوجه شده و پرسید که در اینوقت شب شما بچه علتی اینجا تشریف آوردهاید بیموجبی نباید باشد؟ - رنه قدمی بطرف در برداشته و گفت اگر بدبختانه سبب زحمتی باعلیحضرت شما شدم عفو بفرمایید میروم – گفت نه از این سوال مقصود استعلام تنها است زحمتی بمن ندارید. میخواستم چیزی بپرسم. – گفت اعلیحضرتا چه چیز میخواستید بفهمید؟ - گفت شما گمان میکردید که من اینجا باشم؟ - گفت یقین داشتم.
گفت پس از اینقرار مرا میجستید؟ - گفت اقلا شرافت داشتم از درک حضور اعلی – گفت در اینصورت لامحاله سخنی با من داشتید؟ - رنه گفت شاید اعلیحضرتا. – شارلوت از استماع اینکلام رنه مضطرب شد و ترسید که صحبت از رفتار سابق او نسبت بهنری بمیان آید پس تغافل کرد مثل اینکه هیج چیزی نشنید و ملتفت نبود. دست کرد و ان قوطی نقره را برداشت و صحبت هنری و رنه را قطع کرده و گفت اه واقعا چه مقبول قوطی است. شما رنه چه شخص دلنوازی هستید. و این موم روغن چه رنگ خوشی دارد. و چون خود شما حضور دارید میروم که در پیش شما امتحان نخست را بکنم تا ببینم این ترکیب تازه شما چطور است. پس با دستی قوطی را گرفت و با دستی دیگر سرانگشت را مالید بموم روغن تا بلبها بمالد – رنه بلرزه درآمد و رنگش تغیر کرد. هنری ملتفت حالت رنه و حرکت شارلوت بود. که انگشت را بالا برده که بلبها بمالد که رنه بشتاب دست شارلوت را گرفت و هنری نیز از طرفی بلند شد که او نیز همینکار را نماید. زیرا که استنباط کرده بود که در اینموم روغن چیزی باید باشد اما چون رنه را دید که دست شارلوت را گرفت دیگر او برنخواست. رنه گفت مادام قدری صبر نمایید. که این ترکیب را بدون بعضی دستورالعملها نباید استعمال نمایند – گفت که دستور عمل بمن خواهد داد ؟ - گفت من. – گفت چه وقت؟ - گفت بعد از انکه تمام کردم انچه را که باید با اعلیحضرت شاه ناوار بگویم – شارلوت متحیرانه گوش میداد باینکلام مرموز و مبهوت مانده بیک دست قوطی را گشوده گرفته بود و دست دیگر انگشت را همچنان آلوده بموم روغن نگهداری کرده متحیر بود. هنری از جای بلند شد و متحرک گشت با خیالی که مثل سایر خیالات او ذووجهین بود. وجهی که سطحی و ظاهری و وجه دیگر عمیق و باطنی بود. دست شارلوت را گرفته انگشت آلوده او را برد که بلبهای او بمالد. رنه بتعجیل پیش آمده و گفت قدریهم دست نگهدارید و صابونی از چسب بیرون آورده و گفت اول این دستهای نازنین خود را با این صابون ناپل بشویید که اینضابون خیلی نقل دارد میخواستم که از برای شما بفرستم فراموش شد حال خودم آوردم. و زانو بر زمین زده و لکن پیش آورد و آفتابه بدست گرفت و گفت من آب میریزم شما بشویید. هنری بتعجب نگاه کرده و گفت متر رنه شما امروز طور دیگر شدهاید و رفتاری مینمایید که ظرفای دربخانه هرگز چنین رفتار نمیتوانند. شارلوت با صابون دست میشست و از عطر صابون تحسین مینمود تا انکه از شستن فارغ گردید رنه هوله آورده داد دستها را خشکانید بعد بهنری گفت حال بآسودگی مشغول عیش خود باشید. هنری دست شارلوت را گرفته و بوسید و برگشت بجای خود و یقین کرد که چیزی فوقالعاده در ضمیر متر رنه میگذرد. اینوقت شارلوت پرسید که بعد از اینها مقصود چه شد؟ - رنه گویا تمام عزم و اراده خود را جمع کرده و متوجه هنری شد.
o2yh8hidkqbl9khf6hbel0lp952zatm
راهنما:راهنمای تازهواردان درباره ناوبری
12
30172
291061
80030
2026-07-11T20:43:47Z
Hanooz
17889
{{راهنمای تازهکاران}}
291061
wikitext
text/x-wiki
{{سرصفحه پردازش
| عنوان = راهنمای ناوبری برای تازهواردان
| قسمت =
| قبلی = →[[راهنما:راهنمای کتابداران تازهوارد|راهنمای کتابداران تازهوارد]]
| بعدی =
| میانبر =
| یادداشت = در این بخش یاد میگیرید که چگونه راه خود را در کتابخانهی ویکینبشته بیابید.
}}
در این کتابخانه {{NUMBEROFARTICLES}} صفحه وجود دارد. ممکن است یافتن یک اثر خاص در میان این همه صفحه مشکل به نظر برسد. در این صفحه اطلاعات لازم برای جستجو و یافتن آثار در ویکینبشته را به شما نشان میدهیم.
به عنوان یک خواننده میتوانید به جستجوی یک اثر بپردازید یا به دنبال نام آن در فهرستهای مربوطه بر پایهی موضوع یا نام پدیدآورنده بگردید. همچنین میتوانید صفحهای را به صورت تصادفی باز کنید.
== جستجو ==
جستجو را میتوان از طریق [[ویژه:صفحههای ویژه|صفحههای ویژه]] و به خصوص صفحهی [[ویژه:جستجو]] انجام داد یا از موتورهای جستجوگر خارج از ویکینبشته نظیر گوگل استفاده کرد. جعبهی جستجویی که در سمت بالا و چپ هر صفحه مشاهده میکنید از ویژه:جستجو استفاده میکند.
در [[ویژه:جستجو]] میتوانید شروطی را برای جستجوی خود وارد کنید. همچنین میتوانید فضای نامی را که میخواهید نتیجهی جستجویتان به آن محدود شود را نیز انتخاب کنید (توجه داشته باشید که تمام آثار مربوط به پدیدآورندگان مختلف در فضای نام «اصلی» قرار دارد). برای این که جستجوی خود را محدود به عنوان آثار کنید باید از کلیدواژهی {{چر}}intitle: استفاده کنید. برای هر کلمهای که میخواهید حتماً در عنوان آثار بهدست آمده باشد باید از این کلیدواژه استفاده کنید در غیر این صورت عملیات جستجو به صورت عادی انجام میگیرد.
{| class="wikitable" {{table style|mc}}
! عبارت جستجو
! توضیحات
|-
| علی
| جستجوی این عبارت باعث میشود که تمام آثاری که واژهی «علی» را در هر کجای متنشان داشته باشند در نتیجه نمایش یابند.
|-
| intitle:علی
| این عبارت باعث میشود که تنها آثاری در نتیجه نمایش یابند که واژهی «علی» را در عنوان صفحه دارند.
|-
| آرش intitle:علی
| نتیجهای که با ورود این عبارت حاصل میشود آن است که تمام آثاری که واژهی «آرش» را در متنشان دارند و تمام آثاری که واژهی «علی» را در عنوان صفحه دارند فهرست شوند.
|}
اگر تنها بخش آغازین نام یک اثر را به یاد دارید میتوانید از صفحهی [[ویژه:نمایه پیشوندی]] استفاده کنید تا بتوانید تمام آثاری که با متن مورد نظرتان شروع میشود را مشاهده کنید. این جستجو محدود میشود به صفحههایی که در فضای نام «اصلی» قرار دارند یعنی فقط آثار موجود در ویکینبشته نمایش مییابند.
اگر میخواهید از یک موتور جستجوگر خارجی برای یافتن آثار ویکینبشته استفاده کنید به خاطر داشته باشید تا نشانی اینترنتی ویکینبشته را در عنوان ذکر کنید. برای مثال در صورتی که بخواهید از گوگل برای این کار استفاده کنید کافی است عبارت «site:fa.wikisource.org» را (بدون دو گیومهی ابتدایی و انتهایی) به متن جستجویتان اضافه کنید. ممکن است موتورهای جستجوگر خارجی به دلیل شیوههای متفاوت جستجو نتایج دیگری را نسبت به ویکینبشته نشان دهند.
* برای کسب اطلاعات بیشتر مراجعه کنید به: [[راهنما:جستجو]]
{{راهنمای تازهکاران}}
[[رده:راهنمای تازهواردان]]
nwublk2tiob22hwc5tryj0emg49v4jp
راهنما:راهنمای تازهواردان درباره اعتبارسنجی
12
30298
291062
104163
2026-07-11T20:43:56Z
Hanooz
17889
291062
wikitext
text/x-wiki
{{سرصفحه پردازش
| عنوان = راهنمای اعتبارسنجی برای تازهواردان
| قسمت =
| قبلی = →[[راهنما:درونمایه|درونمایه]]
| بعدی =
| میانبر = [[ون:اعتبار]]
| یادداشت = از کجا بفهمیم آنچه میخوانیم برابر با متن اصلی است.
}}
به طور کلی در ویکینبشته دو نوع اثر وجود دارد. آثاری که توسط تصاویر اسکنشده پشتیبانی میشوند و آثاری که فاقد این تصاویر هستند. هر دسته رویهی خاص خود را برای اعتبارسنجی دارد.
== نمونهخوانی ==
آثاری که میتوان آنها را نمونهخوانی کرد آثاری هستند که توسط تصاویر اسکنشده پشتیبانی میشوند. سنجش اعتبار آنها توسط «شاخص وضعیت نمونهخوانی» (یا نوار وضعیت) زیر عنوان صفحه مشخص میشود. این سامانه از رنگهای کدبندیشدهای که در فضای نام فهرست و برگ نیز وجود دارد استفاده میکند.
{| class=wikitable {{ts|mc}} width="80%"
|+شاخص وضعیت تصحیح
! مثال
! توضیح
|-
| {{وضعیتصفحه|20|15|25|10|10|20}}
| وضعیت آمیخته. متن این صفحه ۲۰٪ همسنجی شده (سبز)، ۱۵٪ نمونهخوانی شده (زرد)، ۲۵٪ مشکل دارد (آبی)، ۱۰٪ نمونهخوانی نشده (قرمز) و ۱۰٪ بینوشته است (خاکستری). ۲۰٪ نیز هنوز وجود ندارد.
|-
| {{وضعیتصفحه|25|25|0|50|0|0}}
| این متن در حال نمونهخوانی است. تمام صفحات تکمیل شدهاند و هیچ کدام مشکلی ندارند. نیمی از آن نمونهخوانی نشده است. اما نیمی از بخش دیگر نمونهخوانی شده و نیم دیگر آن علاوه بر نمونهخوانی، همسنجی هم شده است.
|-
|-
| {{وضعیتصفحه|70|25|0|5|0|0}}
| نمونهخوانی این متن تقریباً رو به پایان است. بسیاری از صفحههای نمونهخوانیشده، همسنجی هم شدهاند.
|-
| {{وضعیتصفحه|100|0|0|0|0|0}}
| اعتبار این متن کاملاً تأیید شده و قابل اتکا است.
|}
تصاویر اسکنشده به منظور تطبیق متن هر برگ با عکس نمونهی اصلی چاپشده میباشد. دو راه برای دسترسی به این تصاویر وجود دارد:
#زبانهای با عنوان «منبع» در کنار زبانههای «نوشتار» و «گفتگو» برای هر صفحه اضافه میشود تا بتوان به سادگی از سازگاری و تطابق متن با نسخهی چاپی اطمینان حاصل کرد. با کلیک روی این زبانه به صفحهی فهرست مربوط به اثر میروید. در آنجا میتوانید به هر صفحهای که لازم میدانید بروید.
#شمارههای صفحه در سمت چپ، کنار متن آن صفحه قابل مشاهده هستند. نگاه داشتن نشانگر ماوس روی این اعداد باعث میشود که متن متناظر با آن مشخص گردد. اگر روی یکی از این شمارهها کلیک کنید به صفحهای میروید که در فضای نام «نوشتار» قرار دارد؛ یعنی جایی که متن در آن وجود دارد.
در این جا اگر اشتباهی در متن دیدید میتوانید آن را در همین فضای نام نوشتار ویرایش کنید. لطفاً توجه داشته باشید که تمام اشتباهاتی که در متن اصلی وجود دارند باید عیناً به ویکینبشته منتقل شوند و شما نباید آنها را اصلاح کنید. با این حال میتوانید از الگوی {{الگو|غلط}} برای نشانهگذاری واژههای اشتباه در متن اصلی و نوشتن شیوهی درست آنها استفاده کنید.
== آثار دیگر ==
برای آن دسته از آثاری که از روی تصاویر اسکنشده نمونهخوانی نمیشوند باید از الگوی {{الگو|اطلاعات متن}} در ابتدای صفحهی بحث استفاده شود. این جعبهی اطلاعاتی باید تمام اطلاعات لازم در مورد منبع متن را در خود داشته باشد. در سرصفحهی اثر هم باید پارامتر ویرایش را به صورت <code>نسخه = بله</code> تنظیم کرد تا پیوندی به این جعبهی اطلاعاتی به وجود آید.
مثالی از الگوی {{الگو|اطلاعات متن}}:
{{اطلاعات متن
|نسخه = کلیله و دمنه، ۱۳۵۶ - مصحح = قریب، عبدالعظیم، ۱۲۵۸-۱۳۴۴
|منبع = [http://ganjoor.net/monshi/kelile-demni/ وبگاه گنجور]
|مشارکتکنندگان = کاربر یک
|پیشرفت = متن کامل است [[پرونده:50%.svg]]
|تذکرات = توضیحات لازم و کوتاه در این جا نوشته میشوند
|ویراستاران = کاربر دو
}}
این جعبهی اطلاعاتی نشان میدهد که اثر یادشده از کجا آمده، چه کسانی در انتقال و ویرایش آن در ویکینبشته دست داشتهاند، چه کسانی آن را تصحیح کردهاند و متن تا چه اندازه کامل است. با دیدن این اطلاعات میتوانید اعتبار اثر را تا حدودی دریابید.
خطوط مربوط به نسخه و منبع نشان میدهند که متن از کجا آمده. اگر وبگاهی هم ذکر شده باشد شما میتوانید به آنجا رفته و اطلاعات بیشتری در مورد اعتبار آنها بیابید. ممکن است برخی از آثاری که در ویکینبشته قرار دارند مستقیماً از روی کتابها رونویسی شده باشند، لذا قرار دادن پیوند اینترنتی همیشه مقدور نیست. این حالت بهویژه زمانی پیش میآید که کتاب خاصی از کتابخانه امانت گرفته شده باشد.
متونی که فاقد تصاویر اسکنشده باشند هم باید تصحیح شوند. روند انجام این کار سختتر از استفاده از سامانهی تصحیح متن ویکینبشته است. در حالتی که کتابی را از کتابخانه امانت گرفتهاید، اطلاعات این الگو باید نشان دهد که کدام کتاب و کدام ویرایش برای تصحیح متن استفاده شده است. در این حالت کاربران دیگر میتوانند همان کتاب را از کتابخانهای دیگر امانت بگیرند و ویرایشهای شما را کنترل کنند. اگر اثری مورد تصحیح قرار گرفته باشد نام مصححان یا ویراستاران به الگو اضافه میشود.
=== میزان پیشرفت ===
یک راهکار برای نشان دادن میزان پیشرفت تکامل متون وجود دارد. با استفاده از آن میتوان توسط یکی از نقشکهای زیر اندازه پیشرفت یک نوشتار را نشان داد. حتی میتوان این نقشک را در خود اثر زیر عنوان مشاهده کرد.
{{متننقشکها}}
این سامانه تقریباً شبیه به سامانهی رنگهای کدبندیشدهی جدیدی است که برای سامانهی تصحیح ایجاد شده است. البته باید گفت که سامانه جدید جزئیات بیشتری را نشان میدهد. تنها به عنوان راهنما یک معادل برای راهنمایی شما در این جا قرار داده شده است. وضعیتهای فوق تقریباً برابر با خطوط زیر در سامانه جدید هستند:
{| class=wikitable {{ts|mc}}
|+ برابر تقریبی
! سامانه قدیم
! سامانه جدید
|-
| [[پرونده:25%.svg|50px]]
| {{وضعیتصفحه|0|0|34|33|33|0}}
|-
| [[پرونده:50%.svg|50px]]
| rowspan="2" | {{وضعیتصفحه|2=100}}
|-
| [[پرونده:75%.svg|50px]]
|-
| [[پرونده:100 percent.svg|50px]]
| {{وضعیتصفحه|1=100}}
|}
== مجوز ==
زیر همه صفحهها باید مجوزی قرار داده شود که حاکی از قانونی بودن نگهداری و توزیع آن متن باشد. این الگو اطلاعاتی پیرامون اعتبار یک اثر را هم ارائه خواهد داد. الگوهای مجوز معمولاً وضعیت حقوقی یک اثر را با اتکا به تاریخ نشر و تاریخ مرگ پدیدآورنده توضیح میدهند.
برخی از مجوزهای موجود در ویکینبشته از قرار زیر هستند:
{{راهنمای تازهکاران}}
[[رده:راهنمای تازهواردان]]
85wlxbcuchguv87hulrwqghner53m44
درگاه:سازمان ملل متحد
100
31607
291047
283200
2026-07-11T19:20:13Z
Hanooz
17889
291047
wikitext
text/x-wiki
{{portal header
| title = سازمان ملل متحد
| class = J
| subclass1 = Z
| shortcut =
| notes =
}}
[[پرونده:Flag of the United Nations.svg|بندانگشتی|پرچم سازمان ملل متحد]]
== آثار ==
* [[منشور ملل متحد]] (۱۹۴۵)
* [[اعلامیه جهانی حقوق بشر]] (۱۹۴۸)
* [[اعلامیه ملل متحد در سال ۱۹۴۲]]
* [[پیمان منع گسترش سلاحهای هستهای]] (۱۹۶۸)
* [[میثاق بینالمللی حقوق اقتصادی، اجتماعی و فرهنگی]] (۱۹۷۶)
* [[میثاق بینالمللی حقوق مدنی و سیاسی]] (۱۹۷۶)
b5yuxz79o1n8lbfvw0z7wf5zt237mew
پودمان:Navbox
828
31971
291051
74888
2026-07-11T20:26:55Z
Hanooz
17889
291051
Scribunto
text/plain
require('strict')
local p = {}
local cfg = mw.loadData('Module:Navbox/configuration')
local inArray = require("Module:TableTools").inArray
local getArgs -- lazily initialized
local format = string.format
function p._navbox(args)
local function striped(wikitext, border)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = cfg.category.orphan
if border == cfg.keyword.border_subgroup and args[cfg.arg.orphan] ~= cfg.keyword.orphan_yes then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = cfg.class.navbox_odd_part, cfg.class.navbox_even_part
if args[cfg.arg.evenodd] then
if args[cfg.arg.evenodd] == cfg.keyword.evenodd_swap then
first, second = second, first
else
first = args[cfg.arg.evenodd]
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(cfg.marker.regex, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == cfg.keyword.nowrapitems_yes then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match(cfg.pattern.nowrap) then
line = format(cfg.nowrap_item, prefix, content)
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function has_navbar()
return args[cfg.arg.navbar] ~= cfg.keyword.navbar_off
and args[cfg.arg.navbar] ~= cfg.keyword.navbar_plain
and (
args[cfg.arg.name]
or mw.getCurrentFrame():getParent():getTitle():gsub(cfg.pattern.sandbox, '')
~= cfg.pattern.navbox
)
end
-- extract text color from css, which is the only permitted inline CSS for the navbar
local function extract_color(css_str)
-- return nil because navbar takes its argument into mw.html which handles
-- nil gracefully, removing the associated style attribute
return mw.ustring.match(';' .. css_str .. ';', '.*;%s*([Cc][Oo][Ll][Oo][Rr]%s*:%s*.-)%s*;') or nil
end
local function renderNavBar(titleCell)
if has_navbar() then
local navbar = require('Module:Navbar')._navbar
titleCell:wikitext(navbar{
[cfg.navbar.name] = args[cfg.arg.name],
[cfg.navbar.mini] = 1,
[cfg.navbar.fontstyle] = extract_color(
(args[cfg.arg.basestyle] or '') .. ';' .. (args[cfg.arg.titlestyle] or '')
)
})
end
end
local function renderTitleRow(tbl)
if not args[cfg.arg.title] then return end
local titleRow = tbl:tag('tr')
local titleCell = titleRow:tag('th'):attr('scope', 'col')
local titleColspan = 2
if args[cfg.arg.imageleft] then titleColspan = titleColspan + 1 end
if args[cfg.arg.image] then titleColspan = titleColspan + 1 end
titleCell
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.titlestyle])
:addClass(cfg.class.navbox_title)
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args[cfg.arg.title]))
:addClass(args[cfg.arg.titleclass])
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args[cfg.arg.title]))
end
local function getAboveBelowColspan()
local ret = 2
if args[cfg.arg.imageleft] then ret = ret + 1 end
if args[cfg.arg.image] then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args[cfg.arg.above] then return end
tbl:tag('tr')
:tag('td')
:addClass(cfg.class.navbox_abovebelow)
:addClass(args[cfg.arg.aboveclass])
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.abovestyle])
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', (not args[cfg.arg.title]) and mw.uri.anchorEncode(args[cfg.arg.above]) or nil)
:wikitext(processItem(args[cfg.arg.above], args[cfg.arg.nowrapitems]))
end
local function renderBelowRow(tbl)
if not args[cfg.arg.below] then return end
tbl:tag('tr')
:tag('td')
:addClass(cfg.class.navbox_abovebelow)
:addClass(args[cfg.arg.belowclass])
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.belowstyle])
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args[cfg.arg.below], args[cfg.arg.nowrapitems]))
end
local function renderListRow(tbl, index, listnum, listnums_size)
local row = tbl:tag('tr')
if index == 1 and args[cfg.arg.imageleft] then
row
:tag('td')
:addClass(cfg.class.noviewer)
:addClass(cfg.class.navbox_image)
:addClass(args[cfg.arg.imageclass])
:css('width', '1px') -- Minimize width
:css('padding', '0 2px 0 0')
:cssText(args[cfg.arg.imageleftstyle])
:attr('rowspan', listnums_size)
:tag('div')
:wikitext(processItem(args[cfg.arg.imageleft]))
end
local group_and_num = format(cfg.arg.group_and_num, listnum)
local groupstyle_and_num = format(cfg.arg.groupstyle_and_num, listnum)
if args[group_and_num] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group2]) then
groupCell
:attr('id', mw.uri.anchorEncode(args[cfg.arg.group1]))
end
groupCell
:attr('scope', 'row')
:addClass(cfg.class.navbox_group)
:addClass(args[cfg.arg.groupclass])
:cssText(args[cfg.arg.basestyle])
-- If groupwidth not specified, minimize width
:css('width', args[cfg.arg.groupwidth] or '1%')
groupCell
:cssText(args[cfg.arg.groupstyle])
:cssText(args[groupstyle_and_num])
:wikitext(args[group_and_num])
end
local listCell = row:tag('td')
if args[group_and_num] then
listCell
:addClass(cfg.class.navbox_list_with_group)
else
listCell:attr('colspan', 2)
end
if not args[cfg.arg.groupwidth] then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args[cfg.arg.oddstyle]
else
rowstyle = args[cfg.arg.evenstyle]
end
local list_and_num = format(cfg.arg.list_and_num, listnum)
local listText = args[list_and_num]
if inArray(cfg.keyword.subgroups, listText) then
local childArgs = {
[cfg.arg.border] = cfg.keyword.border_subgroup,
[cfg.arg.navbar] = cfg.keyword.navbar_plain
}
local hasChildArgs = false
for k, v in pairs(args) do
k = tostring(k)
for _, w in ipairs(cfg.keyword.subgroups) do
w = w .. listnum .. "_"
if (#k > #w) and (k:sub(1, #w) == w) then
childArgs[k:sub(#w + 1)] = v
hasChildArgs = true
end
end
end
listText = hasChildArgs and p._navbox(childArgs) or listText
end
local oddEven = cfg.marker.oddeven
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find(cfg.pattern.navbox_title) and cfg.marker.restart or cfg.class.navbox_odd_part
end
local liststyle_and_num = format(cfg.arg.liststyle_and_num, listnum)
local listclass_and_num = format(cfg.arg.listclass_and_num, listnum)
listCell
:css('padding', '0')
:cssText(args[cfg.arg.liststyle])
:cssText(rowstyle)
:cssText(args[liststyle_and_num])
:addClass(cfg.class.navbox_list)
:addClass(cfg.class.navbox_part .. oddEven)
:addClass(args[cfg.arg.listclass])
:addClass(args[listclass_and_num])
:tag('div')
:css('padding',
(index == 1 and args[cfg.arg.list1padding]) or args[cfg.arg.listpadding] or '0 0.25em'
)
:wikitext(processItem(listText, args[cfg.arg.nowrapitems]))
if index == 1 and args[cfg.arg.image] then
row
:tag('td')
:addClass(cfg.class.noviewer)
:addClass(cfg.class.navbox_image)
:addClass(args[cfg.arg.imageclass])
:css('width', '1px') -- Minimize width
:css('padding', '0 0 0 2px')
:cssText(args[cfg.arg.imagestyle])
:attr('rowspan', listnums_size)
:tag('div')
:wikitext(processItem(args[cfg.arg.image]))
end
end
local function has_list_class(htmlclass)
local patterns = {
'^' .. htmlclass .. '$',
'%s' .. htmlclass .. '$',
'^' .. htmlclass .. '%s',
'%s' .. htmlclass .. '%s'
}
for arg, _ in pairs(args) do
if type(arg) == 'string' and mw.ustring.find(arg, cfg.pattern.class) then
for _, pattern in ipairs(patterns) do
if mw.ustring.find(args[arg] or '', pattern) then
return true
end
end
end
end
return false
end
-- there are a lot of list classes in the wild, so we add their TemplateStyles
local function add_list_styles()
local frame = mw.getCurrentFrame()
local function add_list_templatestyles(htmlclass, templatestyles)
if has_list_class(htmlclass) then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
else
return ''
end
end
local hlist_styles = add_list_templatestyles('hlist', cfg.hlist_templatestyles)
local plainlist_styles = add_list_templatestyles('plainlist', cfg.plainlist_templatestyles)
-- a second workaround for [[phab:T303378]]
-- when that issue is fixed, we can actually use has_navbar not to emit the
-- tag here if we want
if has_navbar() and hlist_styles == '' then
hlist_styles = frame:extensionTag{
name = 'templatestyles', args = { src = cfg.hlist_templatestyles }
}
end
-- hlist -> plainlist is best-effort to preserve old Common.css ordering.
-- this ordering is not a guarantee because most navboxes will emit only
-- one of these classes [hlist_note]
return hlist_styles .. plainlist_styles
end
local function needsHorizontalLists(border)
if border == cfg.keyword.border_subgroup or args[cfg.arg.tracking] == cfg.keyword.tracking_no then
return false
end
return not has_list_class(cfg.pattern.hlist) and not has_list_class(cfg.pattern.plainlist)
end
local function hasBackgroundColors()
for _, key in ipairs({cfg.arg.titlestyle, cfg.arg.groupstyle,
cfg.arg.basestyle, cfg.arg.abovestyle, cfg.arg.belowstyle}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
return false
end
local function hasBorders()
for _, key in ipairs({cfg.arg.groupstyle, cfg.arg.basestyle,
cfg.arg.abovestyle, cfg.arg.belowstyle}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
return false
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match(cfg.pattern.style) then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories(border)
local cats = {}
if needsHorizontalLists(border) then table.insert(cats, cfg.category.horizontal_lists) end
if hasBackgroundColors() then table.insert(cats, cfg.category.background_colors) end
if isIllegible() then table.insert(cats, cfg.category.illegible) end
if hasBorders() then table.insert(cats, cfg.category.borders) end
return cats
end
local function renderTrackingCategories(builder, border)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == cfg.keyword.subpage_doc or subpage == cfg.keyword.subpage_sandbox
or subpage == cfg.keyword.subpage_testcases then return end
for _, cat in ipairs(getTrackingCategories(border)) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
local function renderMainTable(border, listnums)
local tbl = mw.html.create('table')
:addClass(cfg.class.nowraplinks)
:addClass(args[cfg.arg.bodyclass])
local state = args[cfg.arg.state]
if args[cfg.arg.title] and state ~= cfg.keyword.state_plain and state ~= cfg.keyword.state_off then
if state == cfg.keyword.state_collapsed then
state = cfg.class.collapsed
end
tbl
:addClass(cfg.class.collapsible)
:addClass(state or cfg.class.autocollapse)
end
tbl:css('border-spacing', 0)
if border == cfg.keyword.border_subgroup or border == cfg.keyword.border_none then
tbl
:addClass(cfg.class.navbox_subgroup)
:cssText(args[cfg.arg.bodystyle])
:cssText(args[cfg.arg.style])
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass(cfg.class.navbox_inner)
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args[cfg.arg.innerstyle])
renderTitleRow(tbl)
renderAboveRow(tbl)
local listnums_size = #listnums
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum, listnums_size)
end
renderBelowRow(tbl)
return tbl
end
local function add_navbox_styles(hiding_templatestyles)
local frame = mw.getCurrentFrame()
-- This is a lambda so that it doesn't need the frame as a parameter
local function add_user_styles(templatestyles)
if templatestyles and templatestyles ~= '' then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
end
return ''
end
-- get templatestyles. load base from config so that Lua only needs to do
-- the work once of parser tag expansion
local base_templatestyles = cfg.templatestyles
local templatestyles = add_user_styles(args[cfg.arg.templatestyles])
local child_templatestyles = add_user_styles(args[cfg.arg.child_templatestyles])
-- The 'navbox-styles' div exists to wrap the styles to work around T200206
-- more elegantly. Instead of combinatorial rules, this ends up being linear
-- number of CSS rules.
return mw.html.create('div')
:addClass(cfg.class.navbox_styles)
:wikitext(
add_list_styles() .. -- see [hlist_note] applied to 'before base_templatestyles'
base_templatestyles ..
templatestyles ..
child_templatestyles ..
table.concat(hiding_templatestyles)
)
:done()
end
-- work around [[phab:T303378]]
-- for each arg: find all the templatestyles strip markers, insert them into a
-- table. then remove all templatestyles markers from the arg
local function move_hiding_templatestyles(args)
local gfind = string.gfind
local gsub = string.gsub
local templatestyles_markers = {}
local strip_marker_pattern = '(\127[^\127]*UNIQ%-%-templatestyles%-%x+%-QINU[^\127]*\127)'
for k, arg in pairs(args) do
for marker in gfind(arg, strip_marker_pattern) do
table.insert(templatestyles_markers, marker)
end
args[k] = gsub(arg, strip_marker_pattern, '')
end
return templatestyles_markers
end
local hiding_templatestyles = move_hiding_templatestyles(args)
local listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match(cfg.pattern.listnum)
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
local border = mw.text.trim(args[cfg.arg.border] or args[1] or '')
if border == cfg.keyword.border_child then
border = cfg.keyword.border_subgroup
end
-- render the main body of the navbox
local tbl = renderMainTable(border, listnums)
local res = mw.html.create()
-- render the appropriate wrapper for the navbox, based on the border param
if border == cfg.keyword.border_none then
res:node(add_navbox_styles(hiding_templatestyles))
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args[cfg.arg.title] or args[cfg.arg.above] or (args[cfg.arg.group1]
and not args[cfg.arg.group2]) then
nav:attr(
'aria-labelledby',
mw.uri.anchorEncode(
args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group1]
)
)
else
nav:attr('aria-label', cfg.aria_label)
end
elseif border == cfg.keyword.border_subgroup then
-- We assume that this navbox is being rendered in a list cell of a
-- parent navbox, and is therefore inside a div with padding:0em 0.25em.
-- We start with a </div> to avoid the padding being applied, and at the
-- end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
res:node(add_navbox_styles(hiding_templatestyles))
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass(cfg.class.navbox)
:addClass(args[cfg.arg.navboxclass])
:cssText(args[cfg.arg.bodystyle])
:cssText(args[cfg.arg.style])
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args[cfg.arg.title] or args[cfg.arg.above]
or (args[cfg.arg.group1] and not args[cfg.arg.group2]) then
nav:attr(
'aria-labelledby',
mw.uri.anchorEncode(args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group1])
)
else
nav:attr('aria-label', cfg.aria_label)
end
end
if (args[cfg.arg.nocat] or cfg.keyword.nocat_false):lower() == cfg.keyword.nocat_false then
renderTrackingCategories(res, border)
end
return striped(tostring(res), border)
end
function p.navbox(frame)
local function readArgs(args, prefix)
-- Read the arguments in the order they'll be output in, to make references
-- number in the right order.
local _
_ = args[prefix .. cfg.arg.title]
_ = args[prefix .. cfg.arg.above]
-- Limit this to 20 as covering 'most' cases (that's a SWAG) and because
-- iterator approach won't work here
for i = 1, 20 do
_ = args[prefix .. format(cfg.arg.group_and_num, i)]
if inArray(cfg.keyword.subgroups, args[prefix .. format(cfg.arg.list_and_num, i)]) then
for _, v in ipairs(cfg.keyword.subgroups) do
readArgs(args, prefix .. v .. i .. "_")
end
end
end
_ = args[prefix .. cfg.arg.below]
end
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
local args = getArgs(frame, {wrappers = {cfg.pattern.navbox}})
readArgs(args, "")
return p._navbox(args)
end
return p
1pon9rs0zcs8smnoe6omcal0pz52jmt
راهنما:راهنمای ناوبری برای تازهواردان
12
33785
291049
282652
2026-07-11T20:17:26Z
Hanooz
17889
نسخهٔ [[Special:Diff/282652|282652]] از [[Special:Contributions/Hanooz|Hanooz]] ([[User talk:Hanooz|بحث]]) خنثی شد
291049
wikitext
text/x-wiki
#تغییر_مسیر [[راهنما:راهنمای تازهواردان درباره ناوبری]]
9pcz11yfdvnn1tud6vdkajololdpc5s
راهنما:راهنمای تازهواردان درباره افزودن متن
12
33789
291063
92981
2026-07-11T20:44:00Z
Hanooz
17889
291063
wikitext
text/x-wiki
{{سرصفحه پردازش
| عنوان = راهنمای تازهواردان درباره افزودن متن
| قسمت =
| قبلی = →[[راهنما:درونمایه|درونمایه]]
| بعدی = [[راهنما:راهنمای تازهواردان درباره منابع|منابع]]←
| میانبر =
| یادداشت = مروری بر گامهایی که برای افزودن متن به ویکینبشته باید برداشت.
}}
#روگرفتی (اسکن) از اثر فارسی را [[:commons:Special:UploadWizard|به ویکیکامنز بفرستید]]. این اثر نباید در ایران و آمریکا یا کشوری که در آن پدید آمده، مشمول [[راهنما:راهنمای تازهواردان درباره حق تکثیر|حق تکثیر]] باشد. دقت کنید که ممنوعه بودن کتابی در زمان دولت (یا حکومتی) مجوز حق تکثیر آزاد به آن اثر را نمیدهد.
#یک صفحهی '''[[راهنما:راهنمای تازهواردان درباره فهرستها|فهرست]]''' برای روگرفت بسازید.
#هر برگ را '''[[راهنما:راهنمای تازهواردان درباره نمونهخوانی|نمونهخوانی]]''' کنید.
#*کاربر دیگری باید هر برگ را '''[[راهنما:راهنمای تازهواردان درباره همسنجی|همسنجی]]''' کند.
#اثر را در فضای نام اصلی '''[[راهنما:راهنمای تازهواردان درباره تراگنجانی|تراگنجانی]]''' کنید.
#در فضای نام اصلی '''[[راهنما:راهنمای تازهواردان درباره ویرایش پایانی|ویرایش پایانی]]''' را روی اثر انجام دهید.
{{راهنمای تازهکاران}}
[[رده:راهنمای تازهواردان]]
99ufsm7695lfkfpv0xlef5bh1hodezg
راهنما:راهنمای تازهواردان درباره منابع
12
33790
291064
88750
2026-07-11T20:44:05Z
Hanooz
17889
291064
wikitext
text/x-wiki
{{سرصفحه پردازش
| عنوان = راهنمای تازهواردان درباره منابع
| قسمت =
| قبلی = →[[راهنما:راهنمای تازهواردان درباره افزودن متن|افزودن متن]]
| بعدی = [[راهنما:راهنمای تازهواردان درباره حق تکثیر|حق تکثیر]]←
| میانبر =
| یادداشت =
}}
منبع یک اثر در ویکینبشته باید یک روگرفتِ پویششده (کپی اسکنشده) از متن اصلی باشد که به صورت فایل دژوو یا پیدیاف ذخیره شدهاست.
این فایل باید در ویکیکامنز بارگذاری شده و یک برگهی فهرست با همان نام در ویکینبشته برایش آفریده شود. پس از آن میتوان روند نمونهخوانی را آغاز کرد.
== کدام قالب فایل را بارگذاری کنیم ==
دژوو قالب مورد پسندیدهی ویکینبشته است. با این حال میتوانید روگرفتهایی در قالب فایلهای PDF را نیز بارگذاری کنید. برای کسب آگاهی بیشتر [[ویکینبشته:مقایسه DjVu و PDF]] را بخوانید. اگر شمار برگهها کم باشند میتوان از فایلهای عکس (مثل JPEG) استفاده کرد. این روش کمی سخت است. اطلاعات بیشتر در این زمینه را در [[راهنما:برگههای فهرست]] بخوانید.
== از کجا منابع را بیابیم ==
فایلهای منبع باید توسط شما از روی متن اصلی پویش (اسکن) شوند مگر این که شخص دیگری پیش از آن این کار را برای شما انجام داده باشد.
برای پویش یک اثر راههای زیادی همچون استفاده از دستگاه پویشگر (اسکنر) یا دوربین عکاسی وجود دارد. در صورتی که خودتان دارای یک کتاب پویششده هستید با استفاده از نرمافزار خود، آن را به قالب DjVu یا PDF تبدیل کنید.
در فضای اینترنت سایتهای زیادی هستند که میتوان در آنها آثاری به زبان فارسی یافت.
اگر قصد همکاری دارید ولی هیچ اثری به صورت پویششده کنار دستتان نیست میتوانید به [[ویکینبشته:گردآوری آثار مالکیت عمومی]] رفته و یکی از آثار را انتخاب کنید.
== چگونه به ویکینبشته متن بیفزاییم ==
=== نکاتی که پیش از بارگذاری باید در نظر داشت ===
خواهشمندیم پیش از فرستادن هر اثری، رهنمودهای زیر را بخوانید:
*فقط متون فارسی را میتوان به ویکینبشتهی فارسی افزود. اگر اثری که در دست دارید فارسی نیست، از ویکینبشتهی چندزبانه، زبان متناظرِ آن را بیابید و آن را آنجا بارگذاری کنید. اگر هیچ زبان متناظری برایش نیافتید، اثر را به همان ویکینبشتهی چندزبانه بفرستید.
*حق تکثیر اثر را بررسی کنید. اثر باید تحت مجوزی نظیر Creative Commons Attribution-Share Alike 3.0 license یا در مالکیت عمومی باشد و باید توزیع مجدد به صورت تجاری یا غیرتجاری را مجاز بشمارد. ما متونی را که بر اساس استفاده منصفانه منتشر شده باشند نمیپذیریم. برای آگاهی بیشتر سیاست حقتکثیر را بخوانید.
*مطمئن شوید که اثر شما با درونمایهی ویکینبشته تطابق دارد. اگر مطمئن نیستید در دفترخانه از دیگر کاربران بپرسید.
*راهنمای سبک را بخوانید تا با قراردادهای قالببندی آشنا شوید.
=== روند مبنایی ===
مطابقسازی آثار با شیوهنامهی ویکینبشته میتواند کار بسیار پیچیدهای باشد. از این رو ما انتظار نداریم تا کتابداران تازهوارد پیش از فرستادن متون از همهی چند و چون کار آگاهی داشته باشند. با این حال لازم است افراد از یک روند مبنایی برای ورود هر اثر به ویکینبشته پیروی کند.
نخست، بررسی کنید که اثر شما پیش از آن به ویکینبشته فرستاده نشده باشد. این کار را با جستجو انجام دهید:
*نام اثر را در فیلد جستجو تایپ کنید. با ورود نخستین حروف، نامهای مشابه ظاهر میشوند.
*صفحهی نویسندهی اثر را بیابید و آثار واردشده از او را نگاه کنید.
*در بخش جستجوی پیشرفته، بخشی از متن اثر، عنوان اثر یا نام نویسنده را وارد کرده و جستجو کنید.
*با یک موتور جستجوگر بیرون از ویکینبشته، جستجویی ویژه در ویکینبشته انجام دهید. مثلاً در [[google:site:fa.wikisource.org|گوگل]]
=== بارگذاری اسکن ===
معمولاً پروندههای فارسی به صورت PDF و گاه به صورت DjVu هستند. این فایلها را باید به انبار ویکینبشته که وبگاهی مجزا به نام ویکیمدیا کامنز است بفرستید. یادتان باشد که آنها خیلی نسبت به حق تکثیر حساس هستند.
برای ارسال این آثار کافی است روی گزینهی بارگذاری پرونده در مجموعه جعبهابزار در سمت راست صفحه کلیک کنید.
=== برای متن خود یک صفحه فهرست بسازید ===
هنگامی که پرونده را به صورت درست به کامنز فرستادید باید صفحهی فهرستی برای آن در ویکینبشته ایجاد کنید. صفحههای فهرست باید دقیقاً همنام با نام پروندهای باشند که بارگذاری کردهاید. برای مثال پرونده «''کتاب.pdf''» در کامنز به صورت «''File:کتاب.pdf''» نمایش مییابد. در نتیجه صفحهی فهرست آن در ویکینبشته باید به شکل «''فهرست:کتاب.pdf''» ساخته شود.
#برای فایل بارگذاریشدهی خود یک فهرست بسازید. واژهی «''فهرست:''» و نام فایل خود را در ادامهی آن در جعبهی متن جستجو تایپ کرده و کلید Enter را بزنید.
#در عبارت «صفحهٔ «'''فهرست:(نام فایل شما)» را در این ویکی بسازید!'''» روی پیوند قرمزرنگ کلیک کنید تا برای ساخت صفحهی فهرست هدایت شوید.
#هر کدام از اطلاعات خواستهشده را که میدانید وارد کنید و هر کدام را که نمیدانید خالی بگذارید.
#پیش از ذخیرهسازی، پیشنمایش کار را ملاحظه کنید. اگر کار با موفقیت پیش رفت باید صفحهای حاوی شمارهی برگههای فایل خود تحت تصویر جلد اثر و اطلاعاتی که در فیلدهای مرحلهی پیش وارد کردهاید ببینید.
== با آثاری که متن اسکنشده ندارند چه کنیم؟ ==
آرمان ما این است که در نهایت برای تمام آثاری که داریم متون اسکنشده بیابیم و آنها را با متون بدون فایلی که امروزه داریم جایگزین کنیم. با این حال همچنان میتوان آثاری را که در سایر منابع نمونهخوانی شدهاند در ویکینبشته افزود.
در صورتی که پروندهی یک متن به صورت اسکنشده وجود داشته باشد، نباید متن آن را به صورت جداگانه وارد کنید مگر آنکه توجیه مناسبی برای این کار وجود داشته باشد.
برای وارد کردن متون بدون فایل اسکنشده باید از الگوهای مناسب نظیر {{الگو|سرصفحه}} استفاده کنید.
{{راهنمای تازهکاران}}
[[رده:راهنمای تازهواردان]]
9antaxhcxf14dlxdgjdv2j4dcsxbmxc
راهنما:راهنمای تازهواردان درباره نمونهخوانی
12
34669
291067
93173
2026-07-11T20:49:10Z
Hanooz
17889
291067
wikitext
text/x-wiki
{{سرصفحه پردازش
| عنوان = راهنمای تازهواردان درباره نمونهخوانی
| قسمت =
| قبلی = →[[راهنما:راهنمای تازهواردان درباره فهرست پروندهها|فهرستها]]
| بعدی = [[راهنما:راهنمای تازهواردان درباره حروفچینی|حروفچینی]]←
| میانبر =
| یادداشت = روش نمونهخوانی کتاب در ویکینبشته
}}
بنیان ویکینبشته بر نمونهخوانی بنا شده است تا متون با بهترین کیفیت در اختیار خوانندگان و پژوهشگران قرار گیرد. فرآیند نمونهخوانی شامل دو فضای نام (فهرست و برگ) است. در این فضاهای نام یا کارگاههاست که کارهای ویرایشی و دیگر کارهای «پشت صحنه» انجام میشوند.
این فرآیند بر پایهٔ تصاویر اسکنشده از کتاب (یا قطعه متن) واقعی انجام میشود. کتاب پس از افزوده شدن به فضای نام «فهرست» نامی مشابه نام فایل خود میگیرد. هر صفحه از متن معادل یک صفحهٔ جداگانه در فضای نام «برگه» است. صفحهٔ فهرست به برگهها پیوند میخورَد و لازم است که هر برگه مورد نمونهخوانی قرار گیرد.
راهنمای زیر به شما در مورد چگونگی نمونهخوانی هر برگ توضیح میدهد.
== روش نمونهخوانی یک برگه ==
[[پرونده:Nebeshteh 2.png|300px|بندانگشتی|چپ|پائین ویرایش صفحه ای که نمونه خوانی شده است]]
نمونهخوانی بر اساس صفحات فهرست و برگههای متصل به آنها در فضای نام «برگه» استوار است.
#اگر روی هر کدام از اعدادی که در صفحه فهرست هستند کلیک کنید، تصویری از صفحهٔ واقعی کتاب در کنار یک فیلد متنی مشاهده خواهید کرد. ممکن است فیلد متنی بدون متن باشد یا به شکل خودکار متنی از روی صفحهٔ اسکنشده داخل آن ریخته شده باشد.
#* اگر خالی بود: متن عکسی را که میبینید درون آن بنویسید.
#* اگر خالی نبود: متن را اصلاح کنید تا با آنچه در عکس میبینید کاملاً برابر باشد.
#کار خود را نمونهخوانی کنید و وضعیت صفحه را روی «نمونهخوانیشده» (یعنی گزینه زرد) قرار داده و برگ را ذخیره کنید. برای اطلاعات بیشتر [[راهنما:نمونهخوانی]] و [[راهنما:وضعیت صفحه]] را ببینید.
#*اگر هنوز نمونهخوانی برگه را تمام نکردهاید اما میخواهید هر چه تغییر دادهاید را فعلاً ذخیره کنید، وضعیت را روی «نمونهخوانینشده» (یعنی گزینه قرمز) قرار دهید.
#دو گزینهٔ اخیر را برای همهٔ برگههای اسکنشده تکرار کنید.
=== رابط پهلو به پهلو ===
هنگامی که یک برگه را در فضای نام برگ میبینید، صفحه به دو بخش تقسیم میشود. این رابط پیشفرض پهلو به پهلو نام دارد و به کاربران امکان نمونهخوانی متون ویکینبشته (بخش راست) از روی تصاویر اسکنشدهٔ متون (بخش چپ) را میدهد. هنگامی که روی کلید پیشنمایش کلیک میکنید صفحه دارای سه بخش خواهد شد. متنی تغییریافتهٔ شما در بالای صفحه به نمایش در خواهد آمد درحالی که دو بخش یادشده بدون تغییر در پایین قرار میگیرند.
=== نمونهخوانی ===
برای نمونهخوانی یک برگه باید متنی را که در بخش راست قرار دارد ویرایش کنید تا متن آن کاملاً برابر با متن تصویر اسکنشده پهلوی آن در آید.
لازم نیست یک روگرفت شبیه به عکس از روی تصویر اسکنشده ایجاد کنید. ویکینبشته یک وبگاه است و یک کتاب نیست پس به دست آوردن متن خیلی مهمتر از بازتاب ریزهکاریهایی چاپی است. کافی است تا جایی که میتوانید به متن اصلی نزدیک شوید. برخی چیزها در کتابها کاربرد دارند اما در ویکینبشته بهدرد نمیخورند. برای نمونه، ستونها در ویکینبشته لازم نیستند و به خوبی هم کار نمیکنند؛ پس هنگام نمونهخوانی آنها را نادیده بگیرید. یادتان باشد که صفحههای زیادی هنگام پایان نمونهخوانی در فضای نام اصلی به هم اضافه میشوند. چیزهایی مثل ستونها خوانا نیستند.
* برای اطلاعات بیشتر: [[راهنما:نمونهخوانی]]
=== وضعیت صفحه ===
هنگامی که برگهای را ذخیره میکنید باید وضعیت آن را هم مشخص کنید. گزینههای مربوطه را میتوانید زیر فیلد خلاصه در هنگام ویرایش مشاهده کنید. اگر بتازگی ویرایش یک برگه را آغاز کردهاید و هنوز هیچ تغییری ندادهاید (یا تغییرات کمی دادهاید) گزینه قرمز را انتخاب کنید تا وضعیت روی نمونهخوانینشده قرار گیرد. اگر به طور کامل متن را تطابق دادهاید و همهٔ ایرادها را رفع کردهاید گزینهٔ زرد را انتخاب کنید تا وضعیت به نمونهخوانیشده تغییر یابد.
برخی برگهها توسط دیگر کاربران نمونهخوانی شدهاند. شما میتوانید این برگهها را دیده و وضعیت آنها را روزآمد کنید. برگه را ویرایش کرده و هر گونه ایراد یا تغییری که باقی مانده را انجام دهید. اگر هیچ ایرادی باقی نمانده و هر چه لازم بوده انجام شده وضعیت برگه را یک پله ارتقا بدهید. برگههای «نمونهخوانینشده» (قرمز) به «نمونهخوانیشده» (زرد) ارتقا مییابند و سپس به «همسنجیشده» (سبز) میرسند. کار برگههای نمونهخوانیشده تمام است و دیگر نیازی به ویرایش ندارند. برگههای بینوشته (خاکستری) یا مشکلدار (آبی) وضعیت خاصی دارند. برای اطلاعات بیشتر به خواندن ادامه دهید.
* اطلاعات بیشتر: [[راهنما:وضعیت صفحه]]
=== برگههای بینوشته ===
برگهای بینوشته را میتوان بدون متن باقی گذاشت و گزینه «بینوشته» (خاکستری) را برای وضعیت آنها برگزید. این برگها هنگامی که قرار است به فضای نام اصلی اضافه شوند نادیده گرفته میشوند.
این برگها میتوانند شامل جلد کتابها، البته در صورتی که بدون عکس باشند بشوند. یادتان باشد برگهایی که حاوی نگاره هستند باید مانند صفحات دیگر روند نمونهخوانی را طی کنند و نباید برای آنها وضعیت «بینوشته» انتخاب کرد. اگر عکس در حال حاضر در دسترس نیست، بخش برگههای مشکلدار را بخوانید.
=== برگههای مشکلدار ===
اگر هنگام نمونهخوانی برگی دچار مشکلی شدید و نتوانستید آن را به پایان برسانید میتوانید وضعیت برگ را روی «مشکلدار» (آبی) قرار دهید. این وضعیت دیگر کاربران را در جریان مشکل قرار خواهد داد تا شاید آنها بتوانند مشکل را حل کنند.
مشکلات معمول عبارتند از برگهایی که حاوی عکس هستند (برای زمانی که فایل عکس در دسترس نیست)، برگهایی که حاوی معادلات ریاضی هستند، برگهایی که حاوی جملات بیگانه هستند و برگهایی که قالببندی خاصی دارند.
== نکات ==
=== بایدها ===
*قالببندیهای متن نظیر متن درشت یا ایرانیک را اعمال کنید.
*اندازههای مختلف متن را با بکارگیری {{پیوند الگو|کوچکتر}} یا {{پیوند الگو|بزرگتر}} نشان دهید.
*در برگهایی که در پایان آنها یک بند (پاراگراف) به پایان میرسد (یعنی ادامهٔ جمله به صفحهی بعد نمیرود) از الگوی {{پیوند الگو|ته}} استفاده کنید تا نرمافزار ویکینبشته در هنگام تراگنجانی یک فاصله میان متن این برگ و برگ بعدی ایجاد کند.
*نشانههای خاص را هم وارد کنید. مثل:
**خطوط افقی - {{پیوند الگو|خطکش}}
**شکست بخشها (خطی از نویسه ستاره: با استفاده از الگوی {{پیوند الگو|***}})
*برای اطلاعات بیشتر: [[راهنما:الگوها]]
=== نبایدها ===
*هر گونه نشانه یا چیزهایی که به متن اضافه شده نظیر دستخط، مهر کتابخانه، لکه، خراشیدگی، سایه، آلودگی یا غیره را که بخشی از متن چاپشده کتاب اصلی نیستند در متن نیاورید.
*ستونها را لازم نیست در متن ویکی بیاورید.
*اشتباهات املایی، تاریخی یا محاسباتی را اصلاح نکنید. به جای آنها از الگوی {{پیوند الگو|غلط}} استفاده کنید.
*شیوهی نگارش قدیم را به امروزی تبدیل نکنید. مثلاً «بمواردیکه» را تبدیل به «به مواردی که» نکنید.
*بندها را تنها با یک خط خالی از هم جدا کنید. از {{الگو|سخ}} برای این منظور استفاده نکنید.
*فاصلههای مجازی در متون قدیمی که به منظور جاشدن واژههای بیشتر در یک خط به کار برده میشدند را در متن تایپی وارد نکنید مگر این که طبق استانداردهای جدید نگارشی درست باشند.
=== دلخواه ===
*هر چند شکست خطوط ایرادی در متن نهایی ایجاد نمیکند اما بهتر است برای جلوگیری از بروز اشتباه در کار الگوها آنها را اصلاح کنید.
*حروفچینی دقیق. هر چند ایجاد نمونههای دقیق و شبیه به متن اسکنشده زیبا است اما لازم نیست. چیزی که ما نیاز داریم متن اثر است. تقلید برخی از حروفچینیها با استفاده از ابزارهای ویکینبشته مشکل هستند. برخی از آنها حتی میتوانند برای سامانه ایجاد مشکل کنند.
=== برخی نکات دیگر ===
*بین بندها (پاراگرافها) باید یک خط خالی باشد. این مسأله در دنیای متون الکترونیک و اینترنتی به یک استاندارد تبدیل شده و در ویکینبشته لازم است.
*فاصلههای پیش از نقطهگذاریها باید گرفته شوند حتی اگر در متن اصلی این طور نباشند.
{{سصم|بند دوم–دورهٔ اول تقنینیه|نظامنامهٔ داخلی مجلس|–۵۷–}}
{{ته}}
== الگوها ==
در ویکینبشته الگوهای زیادی برای زمانی که نمونهخوانی میکنید وجود دارند.
=== الگوهای نمونهخوانی ===
برای الگوهای قالببندی متن، به راهنما:الگوها#الگوهای قالببندی مراجعه کنید.
=== الگوهای مشکلات ===
از این الگوها زمانی استفاده کنید که خودتان نتوانستهاید مشکل را حل کنید. یادتان باشد هر گاه از این الگوها استفاده کردید وضعیت برگ را روی «مشکلدار» (آبی) بگذارید.
{| class="wikitable" style="margin: 0 auto 0 auto;"
! الگو || کاربرد
|-
| {{الگو|نیازمند تصویر}} || هنگامی که برگ نیازمند نگاره است.
|-
| {{الگو|نیازمند جدول}} || هنگامی که برگ نیازمند جدول است.
|-
| {{الگو|نیازمند نت موسیقی}} || هنگامی که برگ نیازمند نت موسیقی است.
|-
| {{الگو|نیازمند فرمول ریاضی}} || هنگامی که برگ نیازمند فرمول ریاضی است.
|-
| {{الگو|ناخوانا}} || متن ناخواناست.
|-
| {{الگو|نیازمند انگلیسی}} || در این متن حروف انگلیسی به کار رفته. {{سخ}}لطفاً یک نفر که انگلیسی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند عربی}} || در این متن حروف عربی به کار رفته. {{سخ}}لطفاً یک نفر که عربی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند چینی}} || در این متن حروف چینی به کار رفته. {{سخ}}لطفاً یک نفر که چینی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند یونانی}} || در این متن حروف یونانی به کار رفته. {{سخ}}لطفاً یک نفر که یونانی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند فرانسوی}} || در این متن حروف فرانسوی به کار رفته. {{سخ}}لطفاً یک نفر که فرانسوی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند روسی}} || در این متن حروف روسی به کار رفته. {{سخ}}لطفاً یک نفر که روسی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند نماد}} || در این متن نمادهای پیچیده به کار رفته. {{سخ}}لطفاً یک نفر که آشنایی با این نمادها دارد آن را ویرایش کند.
|-
|}
{{راهنمای تازهکاران}}
t1e93ld3dxuebofgc7nj2z67omwjstm
291073
291067
2026-07-11T20:49:58Z
Hanooz
17889
added [[Category:راهنمای تازهواردان]] using [[Help:Gadget-HotCat|HotCat]]
291073
wikitext
text/x-wiki
{{سرصفحه پردازش
| عنوان = راهنمای تازهواردان درباره نمونهخوانی
| قسمت =
| قبلی = →[[راهنما:راهنمای تازهواردان درباره فهرست پروندهها|فهرستها]]
| بعدی = [[راهنما:راهنمای تازهواردان درباره حروفچینی|حروفچینی]]←
| میانبر =
| یادداشت = روش نمونهخوانی کتاب در ویکینبشته
}}
بنیان ویکینبشته بر نمونهخوانی بنا شده است تا متون با بهترین کیفیت در اختیار خوانندگان و پژوهشگران قرار گیرد. فرآیند نمونهخوانی شامل دو فضای نام (فهرست و برگ) است. در این فضاهای نام یا کارگاههاست که کارهای ویرایشی و دیگر کارهای «پشت صحنه» انجام میشوند.
این فرآیند بر پایهٔ تصاویر اسکنشده از کتاب (یا قطعه متن) واقعی انجام میشود. کتاب پس از افزوده شدن به فضای نام «فهرست» نامی مشابه نام فایل خود میگیرد. هر صفحه از متن معادل یک صفحهٔ جداگانه در فضای نام «برگه» است. صفحهٔ فهرست به برگهها پیوند میخورَد و لازم است که هر برگه مورد نمونهخوانی قرار گیرد.
راهنمای زیر به شما در مورد چگونگی نمونهخوانی هر برگ توضیح میدهد.
== روش نمونهخوانی یک برگه ==
[[پرونده:Nebeshteh 2.png|300px|بندانگشتی|چپ|پائین ویرایش صفحه ای که نمونه خوانی شده است]]
نمونهخوانی بر اساس صفحات فهرست و برگههای متصل به آنها در فضای نام «برگه» استوار است.
#اگر روی هر کدام از اعدادی که در صفحه فهرست هستند کلیک کنید، تصویری از صفحهٔ واقعی کتاب در کنار یک فیلد متنی مشاهده خواهید کرد. ممکن است فیلد متنی بدون متن باشد یا به شکل خودکار متنی از روی صفحهٔ اسکنشده داخل آن ریخته شده باشد.
#* اگر خالی بود: متن عکسی را که میبینید درون آن بنویسید.
#* اگر خالی نبود: متن را اصلاح کنید تا با آنچه در عکس میبینید کاملاً برابر باشد.
#کار خود را نمونهخوانی کنید و وضعیت صفحه را روی «نمونهخوانیشده» (یعنی گزینه زرد) قرار داده و برگ را ذخیره کنید. برای اطلاعات بیشتر [[راهنما:نمونهخوانی]] و [[راهنما:وضعیت صفحه]] را ببینید.
#*اگر هنوز نمونهخوانی برگه را تمام نکردهاید اما میخواهید هر چه تغییر دادهاید را فعلاً ذخیره کنید، وضعیت را روی «نمونهخوانینشده» (یعنی گزینه قرمز) قرار دهید.
#دو گزینهٔ اخیر را برای همهٔ برگههای اسکنشده تکرار کنید.
=== رابط پهلو به پهلو ===
هنگامی که یک برگه را در فضای نام برگ میبینید، صفحه به دو بخش تقسیم میشود. این رابط پیشفرض پهلو به پهلو نام دارد و به کاربران امکان نمونهخوانی متون ویکینبشته (بخش راست) از روی تصاویر اسکنشدهٔ متون (بخش چپ) را میدهد. هنگامی که روی کلید پیشنمایش کلیک میکنید صفحه دارای سه بخش خواهد شد. متنی تغییریافتهٔ شما در بالای صفحه به نمایش در خواهد آمد درحالی که دو بخش یادشده بدون تغییر در پایین قرار میگیرند.
=== نمونهخوانی ===
برای نمونهخوانی یک برگه باید متنی را که در بخش راست قرار دارد ویرایش کنید تا متن آن کاملاً برابر با متن تصویر اسکنشده پهلوی آن در آید.
لازم نیست یک روگرفت شبیه به عکس از روی تصویر اسکنشده ایجاد کنید. ویکینبشته یک وبگاه است و یک کتاب نیست پس به دست آوردن متن خیلی مهمتر از بازتاب ریزهکاریهایی چاپی است. کافی است تا جایی که میتوانید به متن اصلی نزدیک شوید. برخی چیزها در کتابها کاربرد دارند اما در ویکینبشته بهدرد نمیخورند. برای نمونه، ستونها در ویکینبشته لازم نیستند و به خوبی هم کار نمیکنند؛ پس هنگام نمونهخوانی آنها را نادیده بگیرید. یادتان باشد که صفحههای زیادی هنگام پایان نمونهخوانی در فضای نام اصلی به هم اضافه میشوند. چیزهایی مثل ستونها خوانا نیستند.
* برای اطلاعات بیشتر: [[راهنما:نمونهخوانی]]
=== وضعیت صفحه ===
هنگامی که برگهای را ذخیره میکنید باید وضعیت آن را هم مشخص کنید. گزینههای مربوطه را میتوانید زیر فیلد خلاصه در هنگام ویرایش مشاهده کنید. اگر بتازگی ویرایش یک برگه را آغاز کردهاید و هنوز هیچ تغییری ندادهاید (یا تغییرات کمی دادهاید) گزینه قرمز را انتخاب کنید تا وضعیت روی نمونهخوانینشده قرار گیرد. اگر به طور کامل متن را تطابق دادهاید و همهٔ ایرادها را رفع کردهاید گزینهٔ زرد را انتخاب کنید تا وضعیت به نمونهخوانیشده تغییر یابد.
برخی برگهها توسط دیگر کاربران نمونهخوانی شدهاند. شما میتوانید این برگهها را دیده و وضعیت آنها را روزآمد کنید. برگه را ویرایش کرده و هر گونه ایراد یا تغییری که باقی مانده را انجام دهید. اگر هیچ ایرادی باقی نمانده و هر چه لازم بوده انجام شده وضعیت برگه را یک پله ارتقا بدهید. برگههای «نمونهخوانینشده» (قرمز) به «نمونهخوانیشده» (زرد) ارتقا مییابند و سپس به «همسنجیشده» (سبز) میرسند. کار برگههای نمونهخوانیشده تمام است و دیگر نیازی به ویرایش ندارند. برگههای بینوشته (خاکستری) یا مشکلدار (آبی) وضعیت خاصی دارند. برای اطلاعات بیشتر به خواندن ادامه دهید.
* اطلاعات بیشتر: [[راهنما:وضعیت صفحه]]
=== برگههای بینوشته ===
برگهای بینوشته را میتوان بدون متن باقی گذاشت و گزینه «بینوشته» (خاکستری) را برای وضعیت آنها برگزید. این برگها هنگامی که قرار است به فضای نام اصلی اضافه شوند نادیده گرفته میشوند.
این برگها میتوانند شامل جلد کتابها، البته در صورتی که بدون عکس باشند بشوند. یادتان باشد برگهایی که حاوی نگاره هستند باید مانند صفحات دیگر روند نمونهخوانی را طی کنند و نباید برای آنها وضعیت «بینوشته» انتخاب کرد. اگر عکس در حال حاضر در دسترس نیست، بخش برگههای مشکلدار را بخوانید.
=== برگههای مشکلدار ===
اگر هنگام نمونهخوانی برگی دچار مشکلی شدید و نتوانستید آن را به پایان برسانید میتوانید وضعیت برگ را روی «مشکلدار» (آبی) قرار دهید. این وضعیت دیگر کاربران را در جریان مشکل قرار خواهد داد تا شاید آنها بتوانند مشکل را حل کنند.
مشکلات معمول عبارتند از برگهایی که حاوی عکس هستند (برای زمانی که فایل عکس در دسترس نیست)، برگهایی که حاوی معادلات ریاضی هستند، برگهایی که حاوی جملات بیگانه هستند و برگهایی که قالببندی خاصی دارند.
== نکات ==
=== بایدها ===
*قالببندیهای متن نظیر متن درشت یا ایرانیک را اعمال کنید.
*اندازههای مختلف متن را با بکارگیری {{پیوند الگو|کوچکتر}} یا {{پیوند الگو|بزرگتر}} نشان دهید.
*در برگهایی که در پایان آنها یک بند (پاراگراف) به پایان میرسد (یعنی ادامهٔ جمله به صفحهی بعد نمیرود) از الگوی {{پیوند الگو|ته}} استفاده کنید تا نرمافزار ویکینبشته در هنگام تراگنجانی یک فاصله میان متن این برگ و برگ بعدی ایجاد کند.
*نشانههای خاص را هم وارد کنید. مثل:
**خطوط افقی - {{پیوند الگو|خطکش}}
**شکست بخشها (خطی از نویسه ستاره: با استفاده از الگوی {{پیوند الگو|***}})
*برای اطلاعات بیشتر: [[راهنما:الگوها]]
=== نبایدها ===
*هر گونه نشانه یا چیزهایی که به متن اضافه شده نظیر دستخط، مهر کتابخانه، لکه، خراشیدگی، سایه، آلودگی یا غیره را که بخشی از متن چاپشده کتاب اصلی نیستند در متن نیاورید.
*ستونها را لازم نیست در متن ویکی بیاورید.
*اشتباهات املایی، تاریخی یا محاسباتی را اصلاح نکنید. به جای آنها از الگوی {{پیوند الگو|غلط}} استفاده کنید.
*شیوهی نگارش قدیم را به امروزی تبدیل نکنید. مثلاً «بمواردیکه» را تبدیل به «به مواردی که» نکنید.
*بندها را تنها با یک خط خالی از هم جدا کنید. از {{الگو|سخ}} برای این منظور استفاده نکنید.
*فاصلههای مجازی در متون قدیمی که به منظور جاشدن واژههای بیشتر در یک خط به کار برده میشدند را در متن تایپی وارد نکنید مگر این که طبق استانداردهای جدید نگارشی درست باشند.
=== دلخواه ===
*هر چند شکست خطوط ایرادی در متن نهایی ایجاد نمیکند اما بهتر است برای جلوگیری از بروز اشتباه در کار الگوها آنها را اصلاح کنید.
*حروفچینی دقیق. هر چند ایجاد نمونههای دقیق و شبیه به متن اسکنشده زیبا است اما لازم نیست. چیزی که ما نیاز داریم متن اثر است. تقلید برخی از حروفچینیها با استفاده از ابزارهای ویکینبشته مشکل هستند. برخی از آنها حتی میتوانند برای سامانه ایجاد مشکل کنند.
=== برخی نکات دیگر ===
*بین بندها (پاراگرافها) باید یک خط خالی باشد. این مسأله در دنیای متون الکترونیک و اینترنتی به یک استاندارد تبدیل شده و در ویکینبشته لازم است.
*فاصلههای پیش از نقطهگذاریها باید گرفته شوند حتی اگر در متن اصلی این طور نباشند.
{{سصم|بند دوم–دورهٔ اول تقنینیه|نظامنامهٔ داخلی مجلس|–۵۷–}}
{{ته}}
== الگوها ==
در ویکینبشته الگوهای زیادی برای زمانی که نمونهخوانی میکنید وجود دارند.
=== الگوهای نمونهخوانی ===
برای الگوهای قالببندی متن، به راهنما:الگوها#الگوهای قالببندی مراجعه کنید.
=== الگوهای مشکلات ===
از این الگوها زمانی استفاده کنید که خودتان نتوانستهاید مشکل را حل کنید. یادتان باشد هر گاه از این الگوها استفاده کردید وضعیت برگ را روی «مشکلدار» (آبی) بگذارید.
{| class="wikitable" style="margin: 0 auto 0 auto;"
! الگو || کاربرد
|-
| {{الگو|نیازمند تصویر}} || هنگامی که برگ نیازمند نگاره است.
|-
| {{الگو|نیازمند جدول}} || هنگامی که برگ نیازمند جدول است.
|-
| {{الگو|نیازمند نت موسیقی}} || هنگامی که برگ نیازمند نت موسیقی است.
|-
| {{الگو|نیازمند فرمول ریاضی}} || هنگامی که برگ نیازمند فرمول ریاضی است.
|-
| {{الگو|ناخوانا}} || متن ناخواناست.
|-
| {{الگو|نیازمند انگلیسی}} || در این متن حروف انگلیسی به کار رفته. {{سخ}}لطفاً یک نفر که انگلیسی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند عربی}} || در این متن حروف عربی به کار رفته. {{سخ}}لطفاً یک نفر که عربی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند چینی}} || در این متن حروف چینی به کار رفته. {{سخ}}لطفاً یک نفر که چینی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند یونانی}} || در این متن حروف یونانی به کار رفته. {{سخ}}لطفاً یک نفر که یونانی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند فرانسوی}} || در این متن حروف فرانسوی به کار رفته. {{سخ}}لطفاً یک نفر که فرانسوی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند روسی}} || در این متن حروف روسی به کار رفته. {{سخ}}لطفاً یک نفر که روسی میداند آن را ویرایش کند.
|-
| {{الگو|نیازمند نماد}} || در این متن نمادهای پیچیده به کار رفته. {{سخ}}لطفاً یک نفر که آشنایی با این نمادها دارد آن را ویرایش کند.
|-
|}
{{راهنمای تازهکاران}}
[[رده:راهنمای تازهواردان]]
1wh3d0chxqrw0sfpfni6uzhxdzbtoq6
راهنما:راهنمای تازهواردان درباره فهرست پروندهها
12
34686
291065
88747
2026-07-11T20:44:12Z
Hanooz
17889
291065
wikitext
text/x-wiki
{{سرصفحه پردازش
| عنوان = راهنمای تازهواردان درباره فهرست پروندهها
| قسمت =
| قبلی = →[[راهنما:راهنمای تازهواردان درباره حق تکثیر|حق تکثیر]]
| بعدی = [[راهنما:راهنمای تازهواردان درباره نمونهخوانی|نمونهخوانی]]←
| میانبر =
| یادداشت = روش آفریدن «صفحههای فهرست» در ویکینبشته. این اطلاعات برای کار با سامانه نمونهخوانی است. برای اطلاعات بیشتر صفحهٔ [[راهنما:صفحههای فهرست|راهنمای پیشرفته]] را ببینید.
}}
{{اصلی|راهنما:صفحههای فهرست}}
صفحههای فهرست که توسط برنامه الحاقی نمونهخوانی «Proofread Page extension» ویکینبشته اداره میشوند، ابزارهایی نیرومند برای نمونهخوانی پهلو به پهلوی متون و اسناد در ویکینبشته هستند. در این صفحه سریعترین راه برای کار با آنها را خواهید آموخت.
صفحههای فهرست صفحههای اصلی برای کارویژهها (پروژههای) نمونهخوانی ویکینبشته هستند. هر کدام از این فهرستها پیوندهای زیادی به همهٔ صفحات یک کتاب یا سند دارند. همچنین در این فهرستها شاخصهای وضعیت نمونهخوانی متون و شناسنامهٔ مختصری از کتاب را نیز خواهید دید. این جزئیات هم میتوانند شامل پیوندهایی به نسخههای پایانی کتاب در [[راهنما:فضای نام|فضای نام]] اصلی و فضای نام پدیدآورنده داشته باشند.
== در یک نگاه ==
پیشنیاز: یک کپی از فایل در انبار ویکی (کامنز). برای مثال پرونده:Filename.pdf
همیشه تلاش کنید نسخههایی را که بارگذاری میکنید از کیفیت بالایی برخودار باشند و کامل باشند. فایلهای ناقصی که چند صفحه از آنها موجود نیست، عکسهای تار دارند، صفحههای تکراری دارند و هر گونه ایراد دیگری که بتواند عملیات نمونهخوانی را مانع شوند، باید پیش از کار با دیگران در میان گذاشته شوند.
کارهای لازم در ویکینبشته:
#«پرونده» را در عنوان صفحه با «فهرست» عوض کنید. برای مثال اگر نام فایل پرونده:Filename.pdf باشد باید نام آرا با عنوان فهرست:Filename.pdf بنویسید.
#این صفحه را بسازید.
#آن را ذخیره کنید.
نکته: فیلدهای موجود در صفحههای فهرست هم باید پر شوند اما این کار را میتوان بعداً هم انجام داد. صفحهٔ فهرست به طور خودکار صحفهای تولید میکند که حاوی فهرستی از صفحات فایل واردشده و نمایی از صفحهٔ اول متن یا کتاب میباشد. این موارد نیز بعداً قابل تغییر هستند.
هر گونه ایرادی در فایل اصلی باید در طول مراحل کار در صفحههای بحث فهرستها ذکر شوند.
{{راهنمای تازهکاران}}
[[رده:راهنمای تازهواردان]]
fsltfbhol4hnxdmu48k08nguu6vppmd
تاریخچه شیر و خورشید
0
37363
291024
188841
2026-07-11T15:59:41Z
Hanooz
17889
added [[Category:نشانشناسی]] using [[Help:Gadget-HotCat|HotCat]]
291024
wikitext
text/x-wiki
{{سرصفحه
| عنوان = [[تاریخچه شیر و خورشید]]
| مؤلف = احمد کسروی
| سال خورشیدی = ۱۳۰۹
| بعدی = [[تاریخچه شیر و خورشید/آغاز سخن|آغاز سخن]]
| یادداشت =
}}
{| style="margin: 0 auto 0 auto; max-width:36em"
|<pages
index="Shir khorshid.pdf"
from=1
to=3
/>
{{فهرست کمکی
|عنوان = فهرست
|پهنا = 600px |
* [[/آغاز سخن /|'''آغاز سخن''']]
* [[/گفتار نخستین /|'''گفتار نخستین:''' شیر تنها و خورشید تنها]]
* [[/گفتار دومین /|'''گفتار دومین:''' خورشید و شیر چگونه بهم پیوستهاند؟..]]
* [[/گفتار سومین /|'''گفتار سومین:''' شیر و خورشید چگونه شهرت یافته و از کی نشان رسمی ایران شده؟..]]
* [[/واژهنامه /|'''واژهنامه''']]
}}
|}
== پیوند به بیرون ==
{{ویکیپدیا}}
{{مالکیت عمومی در ایران}}
[[رده:نشانشناسی]]
2yt0g7zf77tv4vjzb92jwmgvwnlr3dz
الگو:ردهبندی کتابخانه کنگره
10
37958
291004
91497
2026-07-11T14:07:18Z
Hanooz
17889
جایگزینی صفحه با '{{#invoke:Library of Congress Classification|classification}}<noinclude>{{documentation}}</noinclude>'
291004
wikitext
text/x-wiki
{{#invoke:Library of Congress Classification|classification}}<noinclude>{{documentation}}</noinclude>
41cghg2zqwno02jqgse1jiyi9qxpztj
راهنما:راهنمای تازهواردان درباره تراگنجانی
12
38317
291069
142377
2026-07-11T20:49:18Z
Hanooz
17889
291069
wikitext
text/x-wiki
== تراگنجانی چیست؟ ==
تراگنجانی راهی است که ما متون را از صفحهٔ namespace به namespace اصلی بیاوریم.
== چه زمان بایستی تراگنجانی کرد؟ ==
== نمونه های تراگنجانی ==
برای آغاز تراگنجانی:
#صفحه جدید را که میخواهید آخرین نسخه (ورژن) متنی باشد که پدیدار گردد را شروع کنید.
#صفحه را ویرایش کنید.
#فقط کدهای تراگنجانی (همانگونه که در پایین آمده است) اضافه کنید.
#صفحه را ذخیره کنید.
کدی که شما نیاز دارید، به تعداد صفحههایی که قرار است تراگنجانی کنید، وابستهاند.
{| class="wikitable" {{table style|mc}}
|+ کد تراگنجانی
! تعداد صفحهها || کد استفاده شده
|-
| یک|| <nowiki><pages</nowiki> فهرست="{{red|شماره فایل}}" include="{{red|X}}" header="1" <nowiki>/></nowiki>
|-
| دو یا بیشتر || <nowiki><pages</nowiki> index="{{red|شماره فایل}}" from="{{red|X}}" to="{{red|X}}" header="1" <nowiki>/></nowiki>
|}
متن قرمز رنگ نیاز دارد که به جزئیاتی که برای کارتان و صفحههایی که میخواهخید تراگنجانی کنید، تغییر کند:
*نام فایل باید نامی باشد که برای صفحه فهرست و نام فایل اسکن استفاده شده است.
*X ها شماره صفحهها در اسکن هست که شما میخواهید تراگنجانی کنید. اینها شماره صفحههایی هستند از اسکن گرفته شدهاند (شمارههایی در فایل اسکن شما شمارش شده است) نه شماره صفحههایی که در برگههای چاپ شده، شما رویت میکنید.
برای مثال: اگر شما یک فصل از <code>Index:My example book.djvu</code>، که شامل صفحههای 20 تا 35 (یعنی <code>Page:My example book.djvu/20</code>، <code>Page:My example book.djvu/21</code>، ...، <code>Page:My example book.djvu/35</code>) شده است، را تراگنجانی کردهاید، کد شما این خواهد بود:
== راهنمای سرانداز ==
== خصوصیات پیشرفته ==
{{راهنمای تازهکاران}}
atmqzuud7z667vfc8qt8vnj23wyruvl
291075
291069
2026-07-11T20:50:04Z
Hanooz
17889
added [[Category:راهنمای تازهواردان]] using [[Help:Gadget-HotCat|HotCat]]
291075
wikitext
text/x-wiki
== تراگنجانی چیست؟ ==
تراگنجانی راهی است که ما متون را از صفحهٔ namespace به namespace اصلی بیاوریم.
== چه زمان بایستی تراگنجانی کرد؟ ==
== نمونه های تراگنجانی ==
برای آغاز تراگنجانی:
#صفحه جدید را که میخواهید آخرین نسخه (ورژن) متنی باشد که پدیدار گردد را شروع کنید.
#صفحه را ویرایش کنید.
#فقط کدهای تراگنجانی (همانگونه که در پایین آمده است) اضافه کنید.
#صفحه را ذخیره کنید.
کدی که شما نیاز دارید، به تعداد صفحههایی که قرار است تراگنجانی کنید، وابستهاند.
{| class="wikitable" {{table style|mc}}
|+ کد تراگنجانی
! تعداد صفحهها || کد استفاده شده
|-
| یک|| <nowiki><pages</nowiki> فهرست="{{red|شماره فایل}}" include="{{red|X}}" header="1" <nowiki>/></nowiki>
|-
| دو یا بیشتر || <nowiki><pages</nowiki> index="{{red|شماره فایل}}" from="{{red|X}}" to="{{red|X}}" header="1" <nowiki>/></nowiki>
|}
متن قرمز رنگ نیاز دارد که به جزئیاتی که برای کارتان و صفحههایی که میخواهخید تراگنجانی کنید، تغییر کند:
*نام فایل باید نامی باشد که برای صفحه فهرست و نام فایل اسکن استفاده شده است.
*X ها شماره صفحهها در اسکن هست که شما میخواهید تراگنجانی کنید. اینها شماره صفحههایی هستند از اسکن گرفته شدهاند (شمارههایی در فایل اسکن شما شمارش شده است) نه شماره صفحههایی که در برگههای چاپ شده، شما رویت میکنید.
برای مثال: اگر شما یک فصل از <code>Index:My example book.djvu</code>، که شامل صفحههای 20 تا 35 (یعنی <code>Page:My example book.djvu/20</code>، <code>Page:My example book.djvu/21</code>، ...، <code>Page:My example book.djvu/35</code>) شده است، را تراگنجانی کردهاید، کد شما این خواهد بود:
== راهنمای سرانداز ==
== خصوصیات پیشرفته ==
{{راهنمای تازهکاران}}
[[رده:راهنمای تازهواردان]]
1aa3yy68mc5rtcowx8om043oveln0np
راهنما:راهنمای تازهواردان درباره حذف
12
38377
291071
92991
2026-07-11T20:49:26Z
Hanooz
17889
291071
wikitext
text/x-wiki
2 نوشتار اصلی برای حذف آثار و دیگر صفحههای ویکینبشته وجود دارد. این صفحه مروری از هر دو را ارائه میکند.
اگر اثری از طریق مظنون شدن به حق تکثیر باید حذف شود، آنگاه نقض احتمالی حق تکثیر (possible copyright violations) باید استفاده گردد. برای موارد دیگر، نظرخواهی برای حذف را استفاده کنید.
== تخلف حق تکثیر ==
اگر اثری را در ویکینبشته پیدا کردید که باور دارید در ایالات متحده آمریکا قانون حق تکثیر را نقض کرده است:
#الگو '''<code><nowiki>{{نقض حق تکثیر}}</nowiki></code>''' را به صفحه (فقط زیر عنوان) بیافزایید. در این صورت نوشتار در زیر آن به نمایش در نخواهد آمد.
#به [[ویکینبشته:نقض حق تکثیرهای احتمالی]] بروید.
#روی «عنوان جدید» کلیک کنید.
#اگر ممکن است، از پیوند درونویکی به عنوان خط موضوع (the subject line) استفاده کنید.
#در متن، توضیح دهید که چرا فکر میکنید این اثر، ناقض حق کثیر است. با چهار مَد <code><nowiki>~~~~</nowiki></code> صفحه را امضا و ذخیره کنید.
به دنبال آن، کاربران دیگر ممکن است نظراتی را ثبت کنند که ممکن است از حذف حمایت بیشتری کند یا اینکه با آن مخالفت شود. اینجا ملاک تعداد رای نیست. هر کاربر باید همچنین دلیل خودش را ارائه کند. سرانجام یک مدیر مبحث را جمعبندی میکند و میبندد؛ یا اثر آن را حذف میکند یا اینکه بنا بر دلیلها، اثر را ابقا میکند.
[[:en:Help:Beginner's guide to copyright|راهنمای حقتکثیر برای تازهکارها]]، و صفحههای مرتبط، میتواند در مشخص کردن رخ دادن یا ندادن نقض حق تکثیر سودمند باشد.
== حذف عمومی ==
*[[ویکینبشته:پیشنهادهای حذف]]
== همچنین ببینید ==
*[[ویکینبشته:سیاست حذف]]
{{راهنمای تازهکاران}}
nwuw3mjrqrgk9d5qmwl0f0zjmie0bah
291072
291071
2026-07-11T20:49:39Z
Hanooz
17889
added [[Category:راهنمای تازهواردان]] using [[Help:Gadget-HotCat|HotCat]]
291072
wikitext
text/x-wiki
2 نوشتار اصلی برای حذف آثار و دیگر صفحههای ویکینبشته وجود دارد. این صفحه مروری از هر دو را ارائه میکند.
اگر اثری از طریق مظنون شدن به حق تکثیر باید حذف شود، آنگاه نقض احتمالی حق تکثیر (possible copyright violations) باید استفاده گردد. برای موارد دیگر، نظرخواهی برای حذف را استفاده کنید.
== تخلف حق تکثیر ==
اگر اثری را در ویکینبشته پیدا کردید که باور دارید در ایالات متحده آمریکا قانون حق تکثیر را نقض کرده است:
#الگو '''<code><nowiki>{{نقض حق تکثیر}}</nowiki></code>''' را به صفحه (فقط زیر عنوان) بیافزایید. در این صورت نوشتار در زیر آن به نمایش در نخواهد آمد.
#به [[ویکینبشته:نقض حق تکثیرهای احتمالی]] بروید.
#روی «عنوان جدید» کلیک کنید.
#اگر ممکن است، از پیوند درونویکی به عنوان خط موضوع (the subject line) استفاده کنید.
#در متن، توضیح دهید که چرا فکر میکنید این اثر، ناقض حق کثیر است. با چهار مَد <code><nowiki>~~~~</nowiki></code> صفحه را امضا و ذخیره کنید.
به دنبال آن، کاربران دیگر ممکن است نظراتی را ثبت کنند که ممکن است از حذف حمایت بیشتری کند یا اینکه با آن مخالفت شود. اینجا ملاک تعداد رای نیست. هر کاربر باید همچنین دلیل خودش را ارائه کند. سرانجام یک مدیر مبحث را جمعبندی میکند و میبندد؛ یا اثر آن را حذف میکند یا اینکه بنا بر دلیلها، اثر را ابقا میکند.
[[:en:Help:Beginner's guide to copyright|راهنمای حقتکثیر برای تازهکارها]]، و صفحههای مرتبط، میتواند در مشخص کردن رخ دادن یا ندادن نقض حق تکثیر سودمند باشد.
== حذف عمومی ==
*[[ویکینبشته:پیشنهادهای حذف]]
== همچنین ببینید ==
*[[ویکینبشته:سیاست حذف]]
{{راهنمای تازهکاران}}
[[رده:راهنمای تازهواردان]]
eom6dq4z3k4lvfaa385uc8cu1dn2rr2
راهنما:راهنمای تازهواردان درباره ویرایش پایانی
12
38380
291070
92997
2026-07-11T20:49:22Z
Hanooz
17889
291070
wikitext
text/x-wiki
هنگامی که کتابی نمونهخوانی، همسنجی و تراگنجی شد، بیشتر این کار به پایان رسیده است. فقط چند ویرایش پایانی مانده که بایستی انجام شود.
== چه چیزهایی باقی مانده است؟ ==
کتاب که تراگنجانی شد، اکثر کارها انجام شده است. فقط چند چیز کوچک باقی مانده است:
#یک مجوز (لایسنس) به کتاب بدهید.
#یک یا چند دسته بندی به کتاب اختصاص بدهید.
#نام کتاب را به فهرست آثار نویسندهاش اضافه کنید.
#اسم کتاب را به یک یا چند درگاه اضافه کنید.
#کتاب جدیدتان را اعلام کنید.
== مجوز ==
== دستهبندی ==
== صفحه نویسنده ==
== درگاهها ==
== اعلام کردن ==
شما میتوانید کتاب جدیدتان را در صفحه اصلی ویکینبشته آگهی کنید. این کار باعث میشود تا مردم بدانند که کتاب شما به ویکینبشته اضافه گشته است.
برای اضافه کردن کتاب به فهرست باید:
#به [[الگو:متون جدید|متون جدید]] بروید.
#روی دکمه ویرایش کلیک کنید.
#...
{{راهنمای تازهکاران}}
jtm9t0udc4hmiads5in0925lrsjnc58
291076
291070
2026-07-11T20:50:07Z
Hanooz
17889
added [[Category:راهنمای تازهواردان]] using [[Help:Gadget-HotCat|HotCat]]
291076
wikitext
text/x-wiki
هنگامی که کتابی نمونهخوانی، همسنجی و تراگنجی شد، بیشتر این کار به پایان رسیده است. فقط چند ویرایش پایانی مانده که بایستی انجام شود.
== چه چیزهایی باقی مانده است؟ ==
کتاب که تراگنجانی شد، اکثر کارها انجام شده است. فقط چند چیز کوچک باقی مانده است:
#یک مجوز (لایسنس) به کتاب بدهید.
#یک یا چند دسته بندی به کتاب اختصاص بدهید.
#نام کتاب را به فهرست آثار نویسندهاش اضافه کنید.
#اسم کتاب را به یک یا چند درگاه اضافه کنید.
#کتاب جدیدتان را اعلام کنید.
== مجوز ==
== دستهبندی ==
== صفحه نویسنده ==
== درگاهها ==
== اعلام کردن ==
شما میتوانید کتاب جدیدتان را در صفحه اصلی ویکینبشته آگهی کنید. این کار باعث میشود تا مردم بدانند که کتاب شما به ویکینبشته اضافه گشته است.
برای اضافه کردن کتاب به فهرست باید:
#به [[الگو:متون جدید|متون جدید]] بروید.
#روی دکمه ویرایش کلیک کنید.
#...
{{راهنمای تازهکاران}}
[[رده:راهنمای تازهواردان]]
cncdvy5sf97civ6gajizt6w7tyvij8h
راهنما:راهنمای تازهواردان درباره ارزیابی
12
38422
291068
148130
2026-07-11T20:49:15Z
Hanooz
17889
291068
wikitext
text/x-wiki
{{process header
| title = راهنمای تازهواردان درباره
| previous = [[راهنما:راهنمای تازهواردان درباره حروفچینی|حروفچینی]]
| next = [[راهنما:راهنمای تازهواردان درباره تراگنجانی|تراگنجانی]]
| section = '''ارزیابی'''
| notes = چگونه آثار را ارزیابی کنیم. سنجیدن و پایان دادن به نمونه خوانی.
}}
پس از اینکه یک صفحه یا کل کتاب نمونهخوانی شد، نیاز دارد که یک بار دیگر سنجیده شود که نمونهخوانی صحیح رخ دادهاست. این فرایند کمک میکند تا ما را مطمئن سازد که اثر ما کاملاً با اثر ما منطبق است. به این فرایند ارزیابی گفته میشود.
== ارزیابی چیست؟ ==
ارزیابی به زبان ساده سنجیدن آثار فردی دیگر است و اینکه تائید شود که اثر درست ثبت شدهاست. ارزیابی آخرین گام نمونهخوانی است. پس از اینکه صفحهای نمونهخوانی شد، نیاز دارد که توسط کاربر دیگری ارزیابی گردد.
== دکمهٔ ارزیابی ==
در حالت عادی، وقتی شما صفحهای از ویکینبشته را ویرایش میکنید، انتهای صفحه به شکل زیر دیده میشود:
[[پرونده:Nebeshteh 1.png|900px|بیقاب|وسط]]
وقتی فردی صفحه را نمونهخوانی کند، به صورت زیر دیده میشود:
[[پرونده:Nebeshteh 2.png|900px|بیقاب|وسط]]
اما هنگامی که فرد دیگری بخواهد ارزیابی کند، باید به صورت زیر وضعیت سبز را کلیک کند و «ذخیرهسازی» کند. مثل تصویر زیر:
[[پرونده:Nebeshteh 3.png|900px|بیقاب|وسط]]
هنگامی که شما به عنوان فرد تائیدکنندهٔ ارزیابی، بخواهید اثری را ارزیابی و سپس تائید کنید، باید دکمهٔ رادیوییِ سبز را (مطابق شکل بالا) کلیک کنید و سپس «انتشار صفحه» را کلیک کنید تا ارزیابی شما ذخیره گردد.
== چگونه ارزیابی کنیم؟ ==
#به صفحهای بروید که نمونهخوانی شده باشد.
#*شمارهٔ صفحهٔ آن در صفحهٔ فهرست با پشتزمینه زرد رنگ دیده میشود.
#*این پیام در بالای صفحه دیده میشود: «این برگ نمونهخوانی شده ولی هنوز همسنجی نشدهاست.» که این پیام هم با زمینهٔ زرد رنگ دیده میشود.
#روی دکمهٔ ویرایش کلیک کنید.
#متن نمونهخوانیشده را با متن اصلی (که قرار است ارزیابی کنید) مقایسه کنید (همانند کاری که در نمونهخوانی میکنیم)
#*اگر صحیح نیست یکی از دو راه را انتخاب کنید:
##تغییراتی در متن بدهید که متنِ نوشتهشده منطبق با متن اصلی اثر باشد.
##وضعیت صفحه را یا به صورت نمونهخوانینشده (قرمز رنگ) یا مشکلدار (آبی رنگ) تغییر دهید. در خلاصهٔ تغییرات علت این کارتان را ذکر کنید. سعی کنید صفحه دیگری را ارزیابی کنید.
#*اگر این صفحه درست است (یا متن را منطبق با اثر کردهاید)، ادامه دهید.
#اکنون دکمهٔ ارزیابی (سبز رنگ) را کلیک کنید تا وضعیت صفحه تغییر کند. در خلاصهٔ صفحه عبارتِ «همسنجیشده» دیده خواهد شد.
#صفحه را اکنون با کلیک بر روی «انتشار تغییرات» ذخیره کنید.
#اکنون صفحه ارزیابی گردید.
#*اکنون پیغامی به صورت «این برگ همسنجی شدهاست.» با زمینهٔ سبز رنگ دیده میشود.
#*هنگامی که به صفحهٔ فهرستِ اثر بروید، شمارهٔ صفحه با زمینهٔ سبز رنگ دیده میشود.
== قوانین ارزیابی ==
*باید کاربر ثبت گردیده (registered user) باشید تا بتوانید صفحه را ارزیابی کنید.
*باید وارد حساب کاربری شده باشید تا بتوانید صفحهای را ارزیابی کنید.
*نمیتوانید صفحهای را که نمونهخوانی کردهاید ارزیابی کنید.
*تنها صفحههای نمونهخوانیشده (زردرنگ) میتوانند ارزیابی گردند. اگر وضعیت صفحه به رنگ دیگری باشد، نمیتوانید صفحه را ارزیابی کنید.
== پیوندهای مفید ==
* تمام آثاری که به ارزیابی نیازمند هستند، در [[:رده:آثار نمونهخوانیشده]] یافت میشوند.
{{راهنمای تازهکاران}}
lm73zs4lrz0qaprlhvftjmkbzbynbhc
291074
291068
2026-07-11T20:50:01Z
Hanooz
17889
added [[Category:راهنمای تازهواردان]] using [[Help:Gadget-HotCat|HotCat]]
291074
wikitext
text/x-wiki
{{process header
| title = راهنمای تازهواردان درباره
| previous = [[راهنما:راهنمای تازهواردان درباره حروفچینی|حروفچینی]]
| next = [[راهنما:راهنمای تازهواردان درباره تراگنجانی|تراگنجانی]]
| section = '''ارزیابی'''
| notes = چگونه آثار را ارزیابی کنیم. سنجیدن و پایان دادن به نمونه خوانی.
}}
پس از اینکه یک صفحه یا کل کتاب نمونهخوانی شد، نیاز دارد که یک بار دیگر سنجیده شود که نمونهخوانی صحیح رخ دادهاست. این فرایند کمک میکند تا ما را مطمئن سازد که اثر ما کاملاً با اثر ما منطبق است. به این فرایند ارزیابی گفته میشود.
== ارزیابی چیست؟ ==
ارزیابی به زبان ساده سنجیدن آثار فردی دیگر است و اینکه تائید شود که اثر درست ثبت شدهاست. ارزیابی آخرین گام نمونهخوانی است. پس از اینکه صفحهای نمونهخوانی شد، نیاز دارد که توسط کاربر دیگری ارزیابی گردد.
== دکمهٔ ارزیابی ==
در حالت عادی، وقتی شما صفحهای از ویکینبشته را ویرایش میکنید، انتهای صفحه به شکل زیر دیده میشود:
[[پرونده:Nebeshteh 1.png|900px|بیقاب|وسط]]
وقتی فردی صفحه را نمونهخوانی کند، به صورت زیر دیده میشود:
[[پرونده:Nebeshteh 2.png|900px|بیقاب|وسط]]
اما هنگامی که فرد دیگری بخواهد ارزیابی کند، باید به صورت زیر وضعیت سبز را کلیک کند و «ذخیرهسازی» کند. مثل تصویر زیر:
[[پرونده:Nebeshteh 3.png|900px|بیقاب|وسط]]
هنگامی که شما به عنوان فرد تائیدکنندهٔ ارزیابی، بخواهید اثری را ارزیابی و سپس تائید کنید، باید دکمهٔ رادیوییِ سبز را (مطابق شکل بالا) کلیک کنید و سپس «انتشار صفحه» را کلیک کنید تا ارزیابی شما ذخیره گردد.
== چگونه ارزیابی کنیم؟ ==
#به صفحهای بروید که نمونهخوانی شده باشد.
#*شمارهٔ صفحهٔ آن در صفحهٔ فهرست با پشتزمینه زرد رنگ دیده میشود.
#*این پیام در بالای صفحه دیده میشود: «این برگ نمونهخوانی شده ولی هنوز همسنجی نشدهاست.» که این پیام هم با زمینهٔ زرد رنگ دیده میشود.
#روی دکمهٔ ویرایش کلیک کنید.
#متن نمونهخوانیشده را با متن اصلی (که قرار است ارزیابی کنید) مقایسه کنید (همانند کاری که در نمونهخوانی میکنیم)
#*اگر صحیح نیست یکی از دو راه را انتخاب کنید:
##تغییراتی در متن بدهید که متنِ نوشتهشده منطبق با متن اصلی اثر باشد.
##وضعیت صفحه را یا به صورت نمونهخوانینشده (قرمز رنگ) یا مشکلدار (آبی رنگ) تغییر دهید. در خلاصهٔ تغییرات علت این کارتان را ذکر کنید. سعی کنید صفحه دیگری را ارزیابی کنید.
#*اگر این صفحه درست است (یا متن را منطبق با اثر کردهاید)، ادامه دهید.
#اکنون دکمهٔ ارزیابی (سبز رنگ) را کلیک کنید تا وضعیت صفحه تغییر کند. در خلاصهٔ صفحه عبارتِ «همسنجیشده» دیده خواهد شد.
#صفحه را اکنون با کلیک بر روی «انتشار تغییرات» ذخیره کنید.
#اکنون صفحه ارزیابی گردید.
#*اکنون پیغامی به صورت «این برگ همسنجی شدهاست.» با زمینهٔ سبز رنگ دیده میشود.
#*هنگامی که به صفحهٔ فهرستِ اثر بروید، شمارهٔ صفحه با زمینهٔ سبز رنگ دیده میشود.
== قوانین ارزیابی ==
*باید کاربر ثبت گردیده (registered user) باشید تا بتوانید صفحه را ارزیابی کنید.
*باید وارد حساب کاربری شده باشید تا بتوانید صفحهای را ارزیابی کنید.
*نمیتوانید صفحهای را که نمونهخوانی کردهاید ارزیابی کنید.
*تنها صفحههای نمونهخوانیشده (زردرنگ) میتوانند ارزیابی گردند. اگر وضعیت صفحه به رنگ دیگری باشد، نمیتوانید صفحه را ارزیابی کنید.
== پیوندهای مفید ==
* تمام آثاری که به ارزیابی نیازمند هستند، در [[:رده:آثار نمونهخوانیشده]] یافت میشوند.
{{راهنمای تازهکاران}}
[[رده:راهنمای تازهواردان]]
f7031f967d4f5pa5e1v0viepmz15whm
روزنامه قانون
0
48784
291014
276569
2026-07-11T15:45:42Z
Hanooz
17889
291014
wikitext
text/x-wiki
{{سرصفحه
| عنوان = روزنامهٔ قانون
| مؤلف = میرزا ملکمخان
| قسمت = فهرست
| قبلی =
| بعدی = [[/۱|۱]]
| سال = ۱۲۶۸
| یادداشت =
}}
{| class="wikitable"
! شماره !! تاریخ قمری !! تاریخ خورشیدی
|-
| [[/۱|۱]] || غره رجب ۱۳۰۷ || ۱ اسفند ۱۲۶۸
|-
| [[/۲|۲]] || غره شعبان ۱۳۰۷ || ۲ فروردین ۱۲۶۹
|-
| [[/۱۵|۱۵]] ||
|}
{{مالکیت عمومی قدیمی}}
[[رده:نشریههای دورهای]]
24tgbicg2kz6cejwighdhl0prebgob9
291015
291014
2026-07-11T15:47:01Z
Hanooz
17889
removed [[Category:نشریههای دورهای]]; added [[Category:روزنامهها]] using [[Help:Gadget-HotCat|HotCat]]
291015
wikitext
text/x-wiki
{{سرصفحه
| عنوان = روزنامهٔ قانون
| مؤلف = میرزا ملکمخان
| قسمت = فهرست
| قبلی =
| بعدی = [[/۱|۱]]
| سال = ۱۲۶۸
| یادداشت =
}}
{| class="wikitable"
! شماره !! تاریخ قمری !! تاریخ خورشیدی
|-
| [[/۱|۱]] || غره رجب ۱۳۰۷ || ۱ اسفند ۱۲۶۸
|-
| [[/۲|۲]] || غره شعبان ۱۳۰۷ || ۲ فروردین ۱۲۶۹
|-
| [[/۱۵|۱۵]] ||
|}
{{مالکیت عمومی قدیمی}}
[[رده:روزنامهها]]
as5ys2pbqxnt6ugvtfegjy0kea11zx9
روزنامه قانون/شماره ۱
0
48785
291009
123014
2026-07-11T15:44:11Z
Hanooz
17889
Hanooz صفحهٔ [[روزنامه قانون/۱]] را به [[روزنامه قانون/شماره ۱]] منتقل کرد
123014
wikitext
text/x-wiki
{{سرصفحه
| عنوان = [[روزنامه قانون]]
| مؤلف = میرزا ملکمخان
| قسمت = نمرهٔ اول
| قبلی = [[../|فهرست]]
| بعدی = [[../۲|۲]]
| سال = ۱۲۶۸
| یادداشت = این نسخه در غره رجب ۱۳۰۷ یعنی اول اسفند ۱۲۶۸ منتشر شده است.
}}
{{default layout|Layout 2}}
<pages index="RouznamehQanoun.pdf" from=16 to=19 />
dsde0csmb3wlzpkbwpkwm2kwbyzsl3e
ویکینبشته:GUS2Wiki
4
61039
291090
290255
2026-07-11T22:49:25Z
Alexis Jazz
27824
Updating gadget usage statistics from [[Special:GadgetUsage]] ([[phab:T121049]])
291090
wikitext
text/x-wiki
{{#ifexist:Project:GUS2Wiki/top|{{/top}}|This page provides a historical record of [[Special:GadgetUsage]] through its page history. To get the data in CSV format, see wikitext. To customize this message or add categories, create [[/top]].}}
دادههای زیر در حافظهٔ نهانی وجود دارند و آخرین بار در 2026-07-10T11:25:21Z روزآمدسازی شدهاند. حداکثر {{PLURAL:5000|یک نتیجه|5000 نتیجه}} در حافظۀ نهان موجود است.
{| class="sortable wikitable"
! ابزار !! data-sort-type="number" | شمار کاربران !! data-sort-type="number" | کاربران فعال
|-
|AHK || 16 || 2
|-
|BotTools || 15 || 2
|-
|CleanDeleteReasons || 21 || 1
|-
|CustomizedEditTool || 17 || 2
|-
|GoogleTranslator || 30 || 2
|-
|GreenRedirect || 15 || 1
|-
|HotCat || 54 || 3
|-
|ImageAnnotator || 35 || 1
|-
|InterwikiTranslate || 31 || 0
|-
|UserMessages || 15 || 2
|-
|VeExtendedBar || 17 || 2
|-
|VeSuperTool || 18 || 2
|-
|addon-buttonsformove || 36 || 1
|-
|defaultsummaries || 20 || 0
|-
|dropdown-menus || 19 || 2
|-
|editzero || 13 || 1
|-
|intropreload || 15 || 1
|-
|lastdiff || 14 || 1
|-
|matchsplit || 32 || 1
|-
|ocr || 16 || 3
|-
|popups || 37 || 0
|-
|purgetab || 12 || 1
|-
|yekewarning || 49 || 1
|}
* [[ویژه:استفاده ابزار]]
* [[m:Meta:GUS2Wiki/Script|GUS2Wiki]]
<!-- data in CSV format:
AHK,16,2
BotTools,15,2
CleanDeleteReasons,21,1
CustomizedEditTool,17,2
GoogleTranslator,30,2
GreenRedirect,15,1
HotCat,54,3
ImageAnnotator,35,1
InterwikiTranslate,31,0
UserMessages,15,2
VeExtendedBar,17,2
VeSuperTool,18,2
addon-buttonsformove,36,1
defaultsummaries,20,0
dropdown-menus,19,2
editzero,13,1
intropreload,15,1
lastdiff,14,1
matchsplit,32,1
ocr,16,3
popups,37,0
purgetab,12,1
yekewarning,49,1
-->
cil8ku4xkt9vfhlnysacq8cxg7gfg3d
روزنامه قانون/شماره ۱۵
0
68571
291011
206279
2026-07-11T15:44:31Z
Hanooz
17889
Hanooz صفحهٔ [[روزنامه قانون/15]] را به [[روزنامه قانون/شماره ۱۵]] منتقل کرد
206279
wikitext
text/x-wiki
قانون
نمره پانزدهم
{{این متن پانزدهمین شماره از [https://fa.wikipedia.org/wiki/%D9%82%D8%A7%D9%86%D9%88%D9%86_(%D8%B1%D9%88%D8%B2%D9%86%D8%A7%D9%85%D9%87_%DA%86%D8%A7%D9%BE_%D9%84%D9%86%D8%AF%D9%86) روزنامهی "قانون"] است که توسط [https://fa.wikipedia.org/wiki/%D9%85%DB%8C%D8%B1%D8%B2%D8%A7_%D9%85%D9%84%DA%A9%D9%85%E2%80%8C%D8%AE%D8%A7%D9%86 میرزا ملکم خان] و طرفدارانش در لندن و به صورت مخفیانه در ایران منتشر میشده است. تاریخ چاپ این شماره در بالای آن درج نشده. در سراسر متن مراد از واژه "آدمیت" و واژههای همخانواده آن "[https://fa.wikipedia.org/wiki/%D8%AC%D8%A7%D9%85%D8%B9_%D8%A2%D8%AF%D9%85%DB%8C%D8%AA مجمع آدمیت]" است که انجمنی مخفی در عهد ناصری بوده که میرزا ملکم خان به تاثیر از لژهای فراماسونری فرنگی در ایران تاسیس کرده بوده است.}}
شرط دولت حسابی اینست که هر سال حساب دخل و خرج خود را بیک ترتیبِ صحیح اعلام نماید . این قرار عادلانه که در این عصر رکن ناگزیر نظام دنیا شده باقتضای سایر بدبختیهای ایران در این ملك بالمره مجهول مانده است . در کل ایران احدی نیست که بتواند بگوید این مالیات نقد جنس و اینهمه سرباز و خزاین طبیعی که از ما میگیرید همه مال و حق و در حقیقت خون ملت است. اینها را بِچه قانون از ما میگیرید و بِچه قانون و در کجاها خرج میکنید . دیوانیان ما بدون رعایت هیچ قانون و بدون ترس هیچ مؤاخذه هر قدر و هر طور که میل دارند مال مردم را میچاپند و بهر نحو که دلشان میخواهد صرف ان کارها میکنند که می بینید . در یک دولتی که دخل و خرج خزانه باینطور از اختیار قانون خارج باشد بدیهی است که معاملاتِ دیوان و اوضاع سلطنت و ادارات دولت و حالت کلیهی ملت گرفتار همین نکبتها و غرق همین رسوائیها خواهد بود که الان عموم اهالی این ملک را از زندگی بیزار
ساخته است.
×
چون این مسئله مالیات از اصول نظام عالم است . اولياى ادميت بجهة تحقیق و قطع این مسئله در مشهد مقدس بدون اطلاع دیوانیان یک مجلس مخصوص ترتیب دادند. اصل مسئله این بود
ایا بدولت بی قانون باید مالیات داد یا نه.
پس از مذاکرات طولانی قرار مجلس این شد که مطلب را از علمای بزرگ استفتا نمایند.
جوابهائیکه از اطراف رسید خیلی مفصل و اغلب بعبارات مغلق و بزبان عربی بود . خلاصه احکام حضرات را بزبان ساده که مقرون بفهم عامه باشد در اینجا ثبت مینمائیم.
×
مالیات اسبابیست که از برای تقویت و اجرای
قوانین شریعت خدا وضع شده. دولتی که قانون نداشته باشد حق ندارد که مالیات بخواهد.
×
اگر یک دولتِ بی قانون بخواهد اموال مسلمانان را بزور بگیرد و بدون هیچ نوع حد و سد صرف حظ نفس خود بکند. البته دادن مالیت به چنان دولت عملِ حرام و خلاف شریعت خدا و بر ضد منافع عامه خواهد بود.
×
مالیات قورخانهٔ حقوق ملت است یعنی باید صرف حفظ حقوق ملت بشود. لهذا وظيفهٔ شرعى ما اینست که این قورخانهٔ ملت را بسپاریم بدست مستحفظين حقوق ما نه اینکه تسلیم ان اشخاص نمائیم که غصب و اضمحلال حقوق ما را حق و پیشهٔ مخصوص خود قرار داده اند
×
دولت بی قانون ان مالیاتی که بزور از یک ولایت میگیرد، میبرد اسباب غارت ولایت دیگر میسازد. لهذا به چنان دولت مالیات دادن اتلاف حقوق و
تقویت ظلم واشد گناه های ملی است.
×
دولت بی قانون یعنی مخرب دنیا.
دولت بی قانون یعنی دشمن حقوق ملت.
لعنت بر دولت بی قانون.
ننگ بران خلق بی شعور و بی غیرت که بدولت
بی قانون مالیات میدهند.
—————
از همهٔ این احکام که عشر آنها را نمیتوانیم در اینجا درج نمائیم در نهایت وضوح مبرهن میشد که بحكم شرع مقدس اسلام و بحكم عقل و حکمت دنیا بدولت بی قانون نباید مالیات داد.
بعد از آنکه این حکم قطعی مشخص شد فضلای مجلس قرار دادند که از برای اهل ایران در باب این مسئله مالیات یک دستورالعملی اعلام نمایند که احاد ادمیان بدانند بدولت چه باید بگویند و چه باید بدهند. اعلام نامه مفصل در نهایت بلاغت مرقوم و بوسایل مخصوص به عموم امناي ادمیت فرستاده و سفارشِ مؤکد شد که معانی و دقایق انرا بهمت و عجله تمام بخلق ایران تبلیغ
و چنانکه باید حالی فرمایند.
خلاصهٔ بعضی مضامین که در آن اعلام نامه از جانب ادمیان مخصوصاً از برای اولیای دولت بیان شده از
این قرار است.
ای اولیای دولت
ما اهل ایران در ظلمت اسیری معنی آدمیت خود را فراموش کرده بودیم. این اوقات از پرتو
افتاب معرفت بیدار شده ایم و در طلب حقوق خود فریاد میزنیم که ما هم ادم هستیم. و ما هم میخواهیم در دنیا قسمت حیات داشته باشیم . حیاتِ ملل بدون قانون محال است . و الان در صفحه روزگار هیچ قانون شرعی و هیچ قرار عرفی نیست که شما در این اقلیم ایران لگدکوب استبداد خود نکرده باشید.
چون مصمم هستیم که بعد از این ما هم در دنیا زنده باشیم به عزم قوی و باحترام تمام از شما که خود را ولی نعمت و مالک الرقاب ما قرار داده اید استدعای قانون مینمائیم . حرف ما أبدا بر قانون تازه نیست. مطلوب ما همان قانون است که و پیغمبر و اولیای اسلام برای اسایش دنیا مقرر فرموده اند. علمای اسلام در شورای کبرای ملی هر حکمی که باستقلال فصل خود صادر فرمایند ما همان را قانون خدا و مأمن زندگی خود خواهیم شناخت .
از برای اجرای چنان احکام الهی هر قدر مال و جان بخواهید به طیب خاطر خواهیم داد. اما اگر شما اموال و املاک و جوانان و جميع حقوق زندگی ما را بگیرید و مثل امروز اسباب مزید ذلت ما بسازید انوقت ما هم بحكم عدالت الهی و بفتوای کل دنیا محق خواهیم بود که از تمکین چنان ظلم بهر طوری که ممکن باشد ابا نمائیم . حاشا که ما یاغی بشویم. اهل این ملک در هر عهد مکرر یاغی شده و مکرر سلاطین خود را تغیر دادهاند. و پس از جميع تغییرات باز وضع امور همان شده که بود. ما ادمیان ایران میخواهیم این رسم یاغیگری و خونریزی را از تاریخ ایران منسوخ نمائیم. ما میخواهیم بعد از این قلعهٔ محافظت ما در اتفاقِ ادمیت و اسلحهٔ مدافعهٔ ما در صحت کلام باشد. ما رعیت و مطیع و دولتخواهِ صدیق هستیم. ولیکن بدولتی که قانونی قبول نمیکند نمیتوانیم برضای خود مالیات بدهیم. اگر شما میخواهید بزور از ما مالیات بگیرید ما بهیچ وجه مقاومت يدى نخواهیم کرد. (ناخوانا) دفع محصل و سرباز و توپخانهٔ شما پناه می بریم باتفاق ادمیت و از حالا بشما خبر میدهیم که بعد از این لشكر میرغضبان شما هر قدر بر شناعت خود بیفزاید قدرت اتفاقِ ادمیت در زیر افتاب معرفت به یک نفس همت همه را محو و معدوم خواهد ساخت.
———
با اینکه چند ماه بیشتر نیست که این اعلام اولیای ادمیت در یک دایره محدود منتشر شده معانی ان بمراتب زیادتر از تصور اثر بخشیده. در این باب از داخل و خارج ایران تحریرات مفصل على الاتصال میرسند که خلاصهٔ بعضی از آنها را محض نمونه در اینجا درج می نمائیم.
×
یک سید محترم از آذربایجان اینطور می نویسد.
هزار آفرین بر حکمت این قرار که بدولت بی قانون نباید مالیات داد. واقعا این چه حماقت بود که ما جان و مال خود را بدون هیچ حساب و بدون هیچ عوض به این دیوان بی قانون تسلیم بکنیم که همه را باین فضاحی صرف مزید ابتذالما بکند.
×
قانون بده تا مالیات بدهیم. امنیت بده تا
جان بدهیم.
چه حرف و چه تدبیری مبارک تر از این حرف. تعجب است که تا امروز این تدبیر موثر بذهن ما نرسیده بود. یقین دارم که من خودم به تنهائی میتوانم جميع اعیان این ملک را در کمال اسانی بر
این مطلب جمع بکنم. در کل ایران هیچ حیوان سراغ ندارم که از صمیم قلب شریک این تدبیر نشود. و خواهید دید اتش این حرف در این خاک چه اثرها خواهد داشت.
———
یکی از اغایان کردستان مینویسد
کلید این کار در دست اعیان آذربایجان است. اگر انها فی الجمله همت بکنند همه ایران با ایشان متفق خواهد شد.
×
شخص دیگر از بروجرد مینویسد.
این مطلب را هر طور هست باید به خَوانین ایلات
زود حالی کرد. رگ ادمیت هنوز در وجود آنها بكلي مفقود نشده است. اگر انها مطلب را درست بفهمند ریشه ظلم دیوانی خیلی به اسانی بلکه خود بخود کنده خواهد شد.
———
یک سیاح فاضل از مصر اینطور تحقیق میکند.
در جميع دول اولین اسباب تحصیل قانون همین ندادن مالیات است. حتی در آن ممالکی که طوایف مختلف شب و روز باهم منازعه دارند آن دقیقه که دولت بخواهد بدون قانون حرکتی بکند عموم ان طوایف مخالفت میانهٔ خود را کنار بگذارند و زن و مرد می ایستند که ما بدولت بی قانون مالیات نمیدهیم. اگر اهل ایران واقعا قانون و زندگی میخواهند باید بلا تأمل با تمام همت خود بچسپند به این تدبیر مبارک که شرع اسلام و علم
دنیا بر عقل و دین ایشان واجب ساخته اند.
———
چند نفر از امرای نظام متفقا اینطور مینویسند
بعضی اشخاص که مطلب را همیشه از طرف تاریک می بینند میگویند اگر شما مالیات ندهید اهل نظام مأموراً میایند و تمام زندگی شما را در یک دقیقه اتش میزنند. این چه حرفیست. ما اهل نظام کی گفته ایم که ما ميرغضب ملت هستیم. وانگهی ما خودمان مالیات بده هستیم. اول کسی که شریک تدبیر خواهد بود ما هستیم. و اگر یک نفر صاحب منصب اینقدر احمق باشد که خود را الت ظلم دیوان نمايد يقينا صد نفر صاحب منصب دیگر باقتضای شعور طبیعی حامی حقوق ملت خواهند بود. گذشت آن وقتی که ما از وظایف نوکری و از حقوق رعیتی غافل بودیم. حالا انوار ادمیت در طبقات نظام بیش از همه جا شیوع دارد. هیچ شکی نداشته باشید که بعد از این ما اهل نظام ادمیت بهترین مروج آدمیت و اقوا حامی حقوق این ملک خواهیم بود.
————
یکی از امنای ادمیت از شهر .... مینویسد.
این چه حرفیست که اهل ایران قابل اتفاق نیستند. من هنوز کسی را ندیده ام که بمحض فهمیدن مطلب بی اختیار خود را غرق اتحاد ما نکرده باشد. از روزی که مأمور این شهر شده ام من به تنهائی چهار جامع ترتیب دادهام که اعضای آنها همه از برای همدیگر واقعا جان میدهند. در همین چند روز بر سر این مسئله ندادن مالیات قریب پنجاه نفر را بدون هیچ اشکال همدست و همقسم کرده ام.اثر این حرفها در استعداد این خلق مثل اتش و پنبه شده است. یک نفر ادم صاحب نفس يقينا میتواند تمام این ولایت را مشتعل بکند. و از حالا بدوستان قانون مژده میدهم که روح ادمیت عنقریب اصحابِ نفس این ملک را علمدار این اردوی نجات خواهد ساخت.
————
از کرمان.
کرنای انتشار این معانی در دست علمای ماست. اگر چند نفر ملای صاحب ذوق روح مسئله را درست بفهمند میتوانند جمیع این مطالب را در كمال سهولت چنان در مغز مردم جایگیر بسازند که هیچ لشکر ظلم دیگر نتواند در مقابل این حقایق نفس بکشد.
یک ملای جوان در همین محله ما نمیدانید چه
اتشی افروخته است:
خدایا برسان امثال او را.
————
از فارس.
در ملکی که افتاب ادمیت طلوع کرده باشد، در ملکی که دو نفر آدم معنی ترویج ادمیت را فهمیده باشند کدام دیوان اعلی جرئت خواهد کرد که بگوید پول بده تا من زور درست بکنم و بیایم مال و جان و عیال و کل هستی تو را نثار رذایل بوالهوسی خود بسازم.
————
یک مجتهد که فصل و غیرتش را می پرستیم و اسم مبارکش را نمیتوانیم در اینجا ذکر بکنیم در باب قانون بهمحارم خود این چند کلمه را مرقوم
فرموده است.
حرف تمام و تکلیف مثل افتاب روشن است. چه لازم که وقت خود و عمر ملت را بیش از اینها معطل الفاظ بیفایده بسازیم. چه ضرور که دیگر بعد از این از شداید ظلم و از سیاهی روزگار خود شکایات زنانه نمائیم. اگر بقدر ذره حس معرفت داریم، اگر از نکبت اسارت واقعا خسته شده ایم، اگر خود را مستحق زندگی میدانیم و اگر مرد میدان حقیقت هستیم باید از امروز بلاتامل زن و مرد، بزرگ و کوچک، ملا و سرباز، دست بهم بدهیم و به هر تدبیر التماس و به هر زبان بهمدیگر حرف حالی بکنیم و به عزم مردانه در پناه این علم ادمیت راه بیفتیم رو به آن مأمن سعادت که انگشت تفضل الهي روبروي ما بما نشان میدهد.
————
یکی از اخوان ادمیت از طهران مینویسد.
بیداری بخت ایران از این نکته نیز خوب معلوم میشود که زنهای ما معانی ادمیت را زودتر و بهتر از اغلب مردها درک میکنند. در همین عید گذشته یک خانم محترم در یک مجلس مهمانی به اواز بلند گفته بود شما را بخدا اینقدر هم خریت میشود که روبروی ما از عرق جبین و از خون جگر مردم به آن ظلم مالیات بگیرند به آن رذالت خرج بکنند و به این تفرعن همه ما را غلام و کنیز زرخرید خود قرار بدهند.
————
یک زن دیگر که از خانواده نجیب و شاعر بیعدیل ایست مینویسد.
از زنهای ایران مأیوس نباشید. ما هنوز اینقدر نامرد نشده ایم که مثل شوهران و جوانان این زمان سرمایه زندگی را منحصر به مشق بیعاری قرار داده باشیم. در این اتفاق ادمیت، در این اردوی نجات ایران خوب میبینیم تکلیف ما چیست. بلی شکست این بازار بی ناموسی بر عهده ماست. تا بحال نمیدانستیم چه باید کرد. قانون چشم و دل ما را یک مرتبه روشن ساخت. مشعل ادمیت
الان در دست ماست. و حالا که به این جاده فلاح افتاده ایم خواهید دید که نفس ما با این مشعل مبارک در این خاک پژمرده چه اتشِ حیات
مشتعل خواهد ساخت.
————
از یک جامع طهران که اشک و بغض و هوش و امید و همت ایران در انجا جمع است اوضاع حالیه را اینطور بیان میکنند.
ما وجود پادشاه خود را مقدس و جامع جميع فضایل میدانیم. و بر محاسن صفات شخص وزرا هم هیچ حرف نداریم. ولیکن در هر گوشه این ملک در هر مجلس از قلب هر صاحب شعور حرفی که شنیده میشود اینست که این حکمرانی بی قانون روزگار همه ما را تباه کرد. انچه املاک معتبر داشتیم همه را غصب و خراب کرد. انچه اموال اندوخته داشتیم همه را به اسم مالیات یا برسم پیشکشی بضرب چماق از ما گرفت. انچه جوانان رشید داشتیم به رسم سربازی الت ویرانی ایران قرار داد. از افغان شکست خورد. از انگلیس شکست خورد. از ترکمن شکست خورد. از کرد شکست خورد. و بیک اشاره انگشت مترجم روس مَرو و در حقیقت تمام خراسان و ارض اقدسِ ما را تسلیم کرد. جميع وسایل زندگی این ملت را از قبیل معادن و راهها و زراعت و تجارت و صرافی و تلغراف و کارخانجات همه را به ادنی قیمت بخارجی فروخت. اختیار شخصی و حقوق شرعی و معافات دولتی ما را کلا ضبط، لقب، نشان، منصب، حکومت، قضاوت، انچه بود و نبود تماما هراج کرد. غیرت و نجابت، فضل و هنر، خدمت و دیانت همه را توی لجن اداره خود ملوث و معدوم ساخت. و این روزها بجهة تكمیل نیکنامی خود غلامها و جاسوسها و لاشخورهای مواجب و میرغضبهای خود را مأمور کرده که خانه بخانه بگردند و در هر جا که آدم پیدا بکنند اگرچه بر منابر اسلام و اگرچه در زوایای مقدسه، همه را بگیرند و بدون سوال و جواب بانواع اذیت و افتضاح مفقود الاثر بکنند تا مردم این ملک قرمساقی به من چه را محکمتر از سابق زیب سینه افتخار خود بسازند.
[[File:Law newspaper (London) - number 15 - page 1.png|thumb|Law newspaper (London) - number 15 - page 1]]
[[File:Law newspaper (London) - number 15 - page 2.png|thumb|Law newspaper (London) - number 15 - page 2]]
[[File:Law newspaper (London) - number 15 - page 3.png|thumb|Law newspaper (London) - number 15 - page 3]]
[[File:Law newspaper (London) - number 15 - page 4.png|thumb|Law newspaper (London) - number 15 - page 4]]
rwenl3i9uy1ow9fyncsyimbg4w9ww91
291013
291011
2026-07-11T15:45:24Z
Hanooz
17889
اصلاح نشانی وب
291013
wikitext
text/x-wiki
{{header
| title = [[../]]
| author =
| translator =
| section = ۲
| previous =
| next =
| notes =
}}
{{این متن پانزدهمین شماره از [[قانون (روزنامه چاپ لندن)|روزنامهی "قانون"]] است که توسط [[میرزا ملکمخان|میرزا ملکم خان]] و طرفدارانش در لندن و به صورت مخفیانه در ایران منتشر میشده است. تاریخ چاپ این شماره در بالای آن درج نشده. در سراسر متن مراد از واژه "آدمیت" و واژههای همخانواده آن "[[جامع آدمیت|مجمع آدمیت]]" است که انجمنی مخفی در عهد ناصری بوده که میرزا ملکم خان به تاثیر از لژهای فراماسونری فرنگی در ایران تاسیس کرده بوده است.}}
شرط دولت حسابی اینست که هر سال حساب دخل و خرج خود را بیک ترتیبِ صحیح اعلام نماید . این قرار عادلانه که در این عصر رکن ناگزیر نظام دنیا شده باقتضای سایر بدبختیهای ایران در این ملك بالمره مجهول مانده است . در کل ایران احدی نیست که بتواند بگوید این مالیات نقد جنس و اینهمه سرباز و خزاین طبیعی که از ما میگیرید همه مال و حق و در حقیقت خون ملت است. اینها را بِچه قانون از ما میگیرید و بِچه قانون و در کجاها خرج میکنید . دیوانیان ما بدون رعایت هیچ قانون و بدون ترس هیچ مؤاخذه هر قدر و هر طور که میل دارند مال مردم را میچاپند و بهر نحو که دلشان میخواهد صرف ان کارها میکنند که می بینید . در یک دولتی که دخل و خرج خزانه باینطور از اختیار قانون خارج باشد بدیهی است که معاملاتِ دیوان و اوضاع سلطنت و ادارات دولت و حالت کلیهی ملت گرفتار همین نکبتها و غرق همین رسوائیها خواهد بود که الان عموم اهالی این ملک را از زندگی بیزار
ساخته است.
×
چون این مسئله مالیات از اصول نظام عالم است . اولياى ادميت بجهة تحقیق و قطع این مسئله در مشهد مقدس بدون اطلاع دیوانیان یک مجلس مخصوص ترتیب دادند. اصل مسئله این بود
ایا بدولت بی قانون باید مالیات داد یا نه.
پس از مذاکرات طولانی قرار مجلس این شد که مطلب را از علمای بزرگ استفتا نمایند.
جوابهائیکه از اطراف رسید خیلی مفصل و اغلب بعبارات مغلق و بزبان عربی بود . خلاصه احکام حضرات را بزبان ساده که مقرون بفهم عامه باشد در اینجا ثبت مینمائیم.
×
مالیات اسبابیست که از برای تقویت و اجرای
قوانین شریعت خدا وضع شده. دولتی که قانون نداشته باشد حق ندارد که مالیات بخواهد.
×
اگر یک دولتِ بی قانون بخواهد اموال مسلمانان را بزور بگیرد و بدون هیچ نوع حد و سد صرف حظ نفس خود بکند. البته دادن مالیت به چنان دولت عملِ حرام و خلاف شریعت خدا و بر ضد منافع عامه خواهد بود.
×
مالیات قورخانهٔ حقوق ملت است یعنی باید صرف حفظ حقوق ملت بشود. لهذا وظيفهٔ شرعى ما اینست که این قورخانهٔ ملت را بسپاریم بدست مستحفظين حقوق ما نه اینکه تسلیم ان اشخاص نمائیم که غصب و اضمحلال حقوق ما را حق و پیشهٔ مخصوص خود قرار داده اند
×
دولت بی قانون ان مالیاتی که بزور از یک ولایت میگیرد، میبرد اسباب غارت ولایت دیگر میسازد. لهذا به چنان دولت مالیات دادن اتلاف حقوق و
تقویت ظلم واشد گناه های ملی است.
×
دولت بی قانون یعنی مخرب دنیا.
دولت بی قانون یعنی دشمن حقوق ملت.
لعنت بر دولت بی قانون.
ننگ بران خلق بی شعور و بی غیرت که بدولت
بی قانون مالیات میدهند.
—————
از همهٔ این احکام که عشر آنها را نمیتوانیم در اینجا درج نمائیم در نهایت وضوح مبرهن میشد که بحكم شرع مقدس اسلام و بحكم عقل و حکمت دنیا بدولت بی قانون نباید مالیات داد.
بعد از آنکه این حکم قطعی مشخص شد فضلای مجلس قرار دادند که از برای اهل ایران در باب این مسئله مالیات یک دستورالعملی اعلام نمایند که احاد ادمیان بدانند بدولت چه باید بگویند و چه باید بدهند. اعلام نامه مفصل در نهایت بلاغت مرقوم و بوسایل مخصوص به عموم امناي ادمیت فرستاده و سفارشِ مؤکد شد که معانی و دقایق انرا بهمت و عجله تمام بخلق ایران تبلیغ
و چنانکه باید حالی فرمایند.
خلاصهٔ بعضی مضامین که در آن اعلام نامه از جانب ادمیان مخصوصاً از برای اولیای دولت بیان شده از
این قرار است.
ای اولیای دولت
ما اهل ایران در ظلمت اسیری معنی آدمیت خود را فراموش کرده بودیم. این اوقات از پرتو
افتاب معرفت بیدار شده ایم و در طلب حقوق خود فریاد میزنیم که ما هم ادم هستیم. و ما هم میخواهیم در دنیا قسمت حیات داشته باشیم . حیاتِ ملل بدون قانون محال است . و الان در صفحه روزگار هیچ قانون شرعی و هیچ قرار عرفی نیست که شما در این اقلیم ایران لگدکوب استبداد خود نکرده باشید.
چون مصمم هستیم که بعد از این ما هم در دنیا زنده باشیم به عزم قوی و باحترام تمام از شما که خود را ولی نعمت و مالک الرقاب ما قرار داده اید استدعای قانون مینمائیم . حرف ما أبدا بر قانون تازه نیست. مطلوب ما همان قانون است که و پیغمبر و اولیای اسلام برای اسایش دنیا مقرر فرموده اند. علمای اسلام در شورای کبرای ملی هر حکمی که باستقلال فصل خود صادر فرمایند ما همان را قانون خدا و مأمن زندگی خود خواهیم شناخت .
از برای اجرای چنان احکام الهی هر قدر مال و جان بخواهید به طیب خاطر خواهیم داد. اما اگر شما اموال و املاک و جوانان و جميع حقوق زندگی ما را بگیرید و مثل امروز اسباب مزید ذلت ما بسازید انوقت ما هم بحكم عدالت الهی و بفتوای کل دنیا محق خواهیم بود که از تمکین چنان ظلم بهر طوری که ممکن باشد ابا نمائیم . حاشا که ما یاغی بشویم. اهل این ملک در هر عهد مکرر یاغی شده و مکرر سلاطین خود را تغیر دادهاند. و پس از جميع تغییرات باز وضع امور همان شده که بود. ما ادمیان ایران میخواهیم این رسم یاغیگری و خونریزی را از تاریخ ایران منسوخ نمائیم. ما میخواهیم بعد از این قلعهٔ محافظت ما در اتفاقِ ادمیت و اسلحهٔ مدافعهٔ ما در صحت کلام باشد. ما رعیت و مطیع و دولتخواهِ صدیق هستیم. ولیکن بدولتی که قانونی قبول نمیکند نمیتوانیم برضای خود مالیات بدهیم. اگر شما میخواهید بزور از ما مالیات بگیرید ما بهیچ وجه مقاومت يدى نخواهیم کرد. (ناخوانا) دفع محصل و سرباز و توپخانهٔ شما پناه می بریم باتفاق ادمیت و از حالا بشما خبر میدهیم که بعد از این لشكر میرغضبان شما هر قدر بر شناعت خود بیفزاید قدرت اتفاقِ ادمیت در زیر افتاب معرفت به یک نفس همت همه را محو و معدوم خواهد ساخت.
———
با اینکه چند ماه بیشتر نیست که این اعلام اولیای ادمیت در یک دایره محدود منتشر شده معانی ان بمراتب زیادتر از تصور اثر بخشیده. در این باب از داخل و خارج ایران تحریرات مفصل على الاتصال میرسند که خلاصهٔ بعضی از آنها را محض نمونه در اینجا درج می نمائیم.
×
یک سید محترم از آذربایجان اینطور می نویسد.
هزار آفرین بر حکمت این قرار که بدولت بی قانون نباید مالیات داد. واقعا این چه حماقت بود که ما جان و مال خود را بدون هیچ حساب و بدون هیچ عوض به این دیوان بی قانون تسلیم بکنیم که همه را باین فضاحی صرف مزید ابتذالما بکند.
×
قانون بده تا مالیات بدهیم. امنیت بده تا
جان بدهیم.
چه حرف و چه تدبیری مبارک تر از این حرف. تعجب است که تا امروز این تدبیر موثر بذهن ما نرسیده بود. یقین دارم که من خودم به تنهائی میتوانم جميع اعیان این ملک را در کمال اسانی بر
این مطلب جمع بکنم. در کل ایران هیچ حیوان سراغ ندارم که از صمیم قلب شریک این تدبیر نشود. و خواهید دید اتش این حرف در این خاک چه اثرها خواهد داشت.
———
یکی از اغایان کردستان مینویسد
کلید این کار در دست اعیان آذربایجان است. اگر انها فی الجمله همت بکنند همه ایران با ایشان متفق خواهد شد.
×
شخص دیگر از بروجرد مینویسد.
این مطلب را هر طور هست باید به خَوانین ایلات
زود حالی کرد. رگ ادمیت هنوز در وجود آنها بكلي مفقود نشده است. اگر انها مطلب را درست بفهمند ریشه ظلم دیوانی خیلی به اسانی بلکه خود بخود کنده خواهد شد.
———
یک سیاح فاضل از مصر اینطور تحقیق میکند.
در جميع دول اولین اسباب تحصیل قانون همین ندادن مالیات است. حتی در آن ممالکی که طوایف مختلف شب و روز باهم منازعه دارند آن دقیقه که دولت بخواهد بدون قانون حرکتی بکند عموم ان طوایف مخالفت میانهٔ خود را کنار بگذارند و زن و مرد می ایستند که ما بدولت بی قانون مالیات نمیدهیم. اگر اهل ایران واقعا قانون و زندگی میخواهند باید بلا تأمل با تمام همت خود بچسپند به این تدبیر مبارک که شرع اسلام و علم
دنیا بر عقل و دین ایشان واجب ساخته اند.
———
چند نفر از امرای نظام متفقا اینطور مینویسند
بعضی اشخاص که مطلب را همیشه از طرف تاریک می بینند میگویند اگر شما مالیات ندهید اهل نظام مأموراً میایند و تمام زندگی شما را در یک دقیقه اتش میزنند. این چه حرفیست. ما اهل نظام کی گفته ایم که ما ميرغضب ملت هستیم. وانگهی ما خودمان مالیات بده هستیم. اول کسی که شریک تدبیر خواهد بود ما هستیم. و اگر یک نفر صاحب منصب اینقدر احمق باشد که خود را الت ظلم دیوان نمايد يقينا صد نفر صاحب منصب دیگر باقتضای شعور طبیعی حامی حقوق ملت خواهند بود. گذشت آن وقتی که ما از وظایف نوکری و از حقوق رعیتی غافل بودیم. حالا انوار ادمیت در طبقات نظام بیش از همه جا شیوع دارد. هیچ شکی نداشته باشید که بعد از این ما اهل نظام ادمیت بهترین مروج آدمیت و اقوا حامی حقوق این ملک خواهیم بود.
————
یکی از امنای ادمیت از شهر .... مینویسد.
این چه حرفیست که اهل ایران قابل اتفاق نیستند. من هنوز کسی را ندیده ام که بمحض فهمیدن مطلب بی اختیار خود را غرق اتحاد ما نکرده باشد. از روزی که مأمور این شهر شده ام من به تنهائی چهار جامع ترتیب دادهام که اعضای آنها همه از برای همدیگر واقعا جان میدهند. در همین چند روز بر سر این مسئله ندادن مالیات قریب پنجاه نفر را بدون هیچ اشکال همدست و همقسم کرده ام.اثر این حرفها در استعداد این خلق مثل اتش و پنبه شده است. یک نفر ادم صاحب نفس يقينا میتواند تمام این ولایت را مشتعل بکند. و از حالا بدوستان قانون مژده میدهم که روح ادمیت عنقریب اصحابِ نفس این ملک را علمدار این اردوی نجات خواهد ساخت.
————
از کرمان.
کرنای انتشار این معانی در دست علمای ماست. اگر چند نفر ملای صاحب ذوق روح مسئله را درست بفهمند میتوانند جمیع این مطالب را در كمال سهولت چنان در مغز مردم جایگیر بسازند که هیچ لشکر ظلم دیگر نتواند در مقابل این حقایق نفس بکشد.
یک ملای جوان در همین محله ما نمیدانید چه
اتشی افروخته است:
خدایا برسان امثال او را.
————
از فارس.
در ملکی که افتاب ادمیت طلوع کرده باشد، در ملکی که دو نفر آدم معنی ترویج ادمیت را فهمیده باشند کدام دیوان اعلی جرئت خواهد کرد که بگوید پول بده تا من زور درست بکنم و بیایم مال و جان و عیال و کل هستی تو را نثار رذایل بوالهوسی خود بسازم.
————
یک مجتهد که فصل و غیرتش را می پرستیم و اسم مبارکش را نمیتوانیم در اینجا ذکر بکنیم در باب قانون بهمحارم خود این چند کلمه را مرقوم
فرموده است.
حرف تمام و تکلیف مثل افتاب روشن است. چه لازم که وقت خود و عمر ملت را بیش از اینها معطل الفاظ بیفایده بسازیم. چه ضرور که دیگر بعد از این از شداید ظلم و از سیاهی روزگار خود شکایات زنانه نمائیم. اگر بقدر ذره حس معرفت داریم، اگر از نکبت اسارت واقعا خسته شده ایم، اگر خود را مستحق زندگی میدانیم و اگر مرد میدان حقیقت هستیم باید از امروز بلاتامل زن و مرد، بزرگ و کوچک، ملا و سرباز، دست بهم بدهیم و به هر تدبیر التماس و به هر زبان بهمدیگر حرف حالی بکنیم و به عزم مردانه در پناه این علم ادمیت راه بیفتیم رو به آن مأمن سعادت که انگشت تفضل الهي روبروي ما بما نشان میدهد.
————
یکی از اخوان ادمیت از طهران مینویسد.
بیداری بخت ایران از این نکته نیز خوب معلوم میشود که زنهای ما معانی ادمیت را زودتر و بهتر از اغلب مردها درک میکنند. در همین عید گذشته یک خانم محترم در یک مجلس مهمانی به اواز بلند گفته بود شما را بخدا اینقدر هم خریت میشود که روبروی ما از عرق جبین و از خون جگر مردم به آن ظلم مالیات بگیرند به آن رذالت خرج بکنند و به این تفرعن همه ما را غلام و کنیز زرخرید خود قرار بدهند.
————
یک زن دیگر که از خانواده نجیب و شاعر بیعدیل ایست مینویسد.
از زنهای ایران مأیوس نباشید. ما هنوز اینقدر نامرد نشده ایم که مثل شوهران و جوانان این زمان سرمایه زندگی را منحصر به مشق بیعاری قرار داده باشیم. در این اتفاق ادمیت، در این اردوی نجات ایران خوب میبینیم تکلیف ما چیست. بلی شکست این بازار بی ناموسی بر عهده ماست. تا بحال نمیدانستیم چه باید کرد. قانون چشم و دل ما را یک مرتبه روشن ساخت. مشعل ادمیت
الان در دست ماست. و حالا که به این جاده فلاح افتاده ایم خواهید دید که نفس ما با این مشعل مبارک در این خاک پژمرده چه اتشِ حیات
مشتعل خواهد ساخت.
————
از یک جامع طهران که اشک و بغض و هوش و امید و همت ایران در انجا جمع است اوضاع حالیه را اینطور بیان میکنند.
ما وجود پادشاه خود را مقدس و جامع جميع فضایل میدانیم. و بر محاسن صفات شخص وزرا هم هیچ حرف نداریم. ولیکن در هر گوشه این ملک در هر مجلس از قلب هر صاحب شعور حرفی که شنیده میشود اینست که این حکمرانی بی قانون روزگار همه ما را تباه کرد. انچه املاک معتبر داشتیم همه را غصب و خراب کرد. انچه اموال اندوخته داشتیم همه را به اسم مالیات یا برسم پیشکشی بضرب چماق از ما گرفت. انچه جوانان رشید داشتیم به رسم سربازی الت ویرانی ایران قرار داد. از افغان شکست خورد. از انگلیس شکست خورد. از ترکمن شکست خورد. از کرد شکست خورد. و بیک اشاره انگشت مترجم روس مَرو و در حقیقت تمام خراسان و ارض اقدسِ ما را تسلیم کرد. جميع وسایل زندگی این ملت را از قبیل معادن و راهها و زراعت و تجارت و صرافی و تلغراف و کارخانجات همه را به ادنی قیمت بخارجی فروخت. اختیار شخصی و حقوق شرعی و معافات دولتی ما را کلا ضبط، لقب، نشان، منصب، حکومت، قضاوت، انچه بود و نبود تماما هراج کرد. غیرت و نجابت، فضل و هنر، خدمت و دیانت همه را توی لجن اداره خود ملوث و معدوم ساخت. و این روزها بجهة تكمیل نیکنامی خود غلامها و جاسوسها و لاشخورهای مواجب و میرغضبهای خود را مأمور کرده که خانه بخانه بگردند و در هر جا که آدم پیدا بکنند اگرچه بر منابر اسلام و اگرچه در زوایای مقدسه، همه را بگیرند و بدون سوال و جواب بانواع اذیت و افتضاح مفقود الاثر بکنند تا مردم این ملک قرمساقی به من چه را محکمتر از سابق زیب سینه افتخار خود بسازند.
[[File:Law newspaper (London) - number 15 - page 1.png|thumb|Law newspaper (London) - number 15 - page 1]]
[[File:Law newspaper (London) - number 15 - page 2.png|thumb|Law newspaper (London) - number 15 - page 2]]
[[File:Law newspaper (London) - number 15 - page 3.png|thumb|Law newspaper (London) - number 15 - page 3]]
[[File:Law newspaper (London) - number 15 - page 4.png|thumb|Law newspaper (London) - number 15 - page 4]]
tpnnfieh0ars5axw1cz0al4bwey83ym
پودمان:Author
828
83529
291046
277677
2026-07-11T19:18:33Z
Hanooz
17889
291046
Scribunto
text/plain
require('strict')
local p = {}
-- Local variables
local getArgs = require('Module:Arguments').getArgs
local yesno = require('Module:Yesno')
local construct_header = require('Module:Header structure').construct_header
local dateModule = require('Module:Era')
local TableTools = require('Module:TableTools')
local ordinal = require('Module:Ordinal')._ordinal
local categories = {} -- List of categories to add page to.
local function preprocess(args)
return mw.getCurrentFrame():preprocess(args)
end
local wd_properties = {
birth = 'P569',
death = 'P570',
workperiodstart = 'P2031',
workperiodend = 'P2032',
floruit = 'P1317',
familyname = 'P734',
gender = 'P21',
image = 'P18',
instanceof = 'P31',
medialegend = 'P2096',
nationalities = 'P27',
occupations = 'P106',
religions = 'P140',
movements = 'P135',
ideologies = 'P1142',
employer = 'P108',
positionheld = 'P39',
awardreceived = 'P166',
memberof = 'P463',
canonizationstatus = 'P411',
contributedto = 'P3919',
socialclassification = 'P3716',
instrument = 'P1303',
describedby = 'P1343'
}
local function convertToPersianDigits(number)
local persianDigits = {
['0'] = '۰', ['1'] = '۱', ['2'] = '۲', ['3'] = '۳', ['4'] = '۴',
['5'] = '۵', ['6'] = '۶', ['7'] = '۷', ['8'] = '۸', ['9'] = '۹'
}
return tostring(number):gsub('%d', persianDigits)
end
--------------------------------------------------------------------------------
-- Add a category to the current list of categories. Do not include the Category prefix.
local function addCategory(category)
table.insert(categories, category)
end
--------------------------------------------------------------------------------
-- Remove a category. Do not include the Category prefix.
local function removeCategory(category)
for catPos, cat in pairs(categories) do
if cat == category then
table.remove(categories, catPos)
end
end
end
--------------------------------------------------------------------------------
-- Get wikitext for all categories added using addCategory.
local function getCategories()
categories = TableTools.removeDuplicates(categories)
table.sort(categories)
local out = ''
for _, cat in pairs(categories) do
out = out .. '[[Category:' .. cat .. ']]'
end
return out
end
local function normalize_args(args)
-- aliases
local dup_cat = ''
local oldKeys = {}
local newArgs = {}
for k, v in pairs(args) do
local newkey = string.lower(string.gsub(string.gsub(tostring(k), '-', '_'), ' ', '_'))
if newkey ~= tostring(k) then
if args[newkey] then
addCategory('Pages using duplicate arguments in template calls')
end
newArgs[newkey] = newArgs[newkey] or v
table.insert(oldKeys, tostring(k))
end
end
for k, v in pairs(newArgs) do
args[k] = v
end
for k, v in pairs(oldKeys) do
args[v] = nil
end
args.wikidata = args.wikidata or args.wikidata_id
args.wikidata_id = nil
-- Fetch entity object for Wikidata item connected to the current page
-- Let manually-specified Wikidata ID override if given and valid
if args.wikidata and mw.wikibase.isValidEntityId(args.wikidata) then
args.wd_entity = mw.wikibase.getEntity(args.wikidata)
else
args.wd_entity = mw.wikibase.getEntity()
end
args.use_initials = yesno(args.use_initials) ~= false and args.last_initial ~= '!NO_INITIALS'
args.nocat = yesno(args.nocat) or false
return args
end
--------------------------------------------------------------------------------
-- Get the actual parentheses-enclosed HTML string that shows the dates.
local function getFormattedDates(birthyear, deathyear, workPeriodYears)
if not birthyear and not deathyear and not workPeriodYears then
return nil
end
local dates = '<br />('
local birthNotFloruit = birthyear and not birthyear:match("^fl%.")
local deathNotFloruit = deathyear and not deathyear:match("^fl%.")
if birthNotFloruit or deathNotFloruit or not workPeriodYears then
if birthyear then
if birthNotFloruit and deathyear and not deathNotFloruit then
dates = dates .. "b. "
end
dates = dates .. birthyear
end
if (birthyear or deathyear) and birthyear ~= deathyear then
-- Add spaces if there are spaces in either of the dates.
local spaces = ''
if string.match((birthyear or '') .. (deathyear or ''), ' ') then
spaces = ' '
end
dates = dates .. spaces .. '–' .. spaces
end
if deathyear and birthyear ~= deathyear then
if deathNotFloruit and birthyear and not birthNotFloruit then
dates = dates .. "d. "
end
dates = dates .. deathyear
end
else
dates = dates .. workPeriodYears
addCategory('Authors with floruit dates')
end
if birthyear or deathyear or workPeriodYears then
dates = dates .. ')'
end
return convertToPersianDigits(dates)
end
--------------------------------------------------------------------------------
-- Take a statement of a given property and make a human-readable year string
-- out of it, adding the relevant categories as we go.
-- @param table statement The statement.
-- @param string type One of 'birth' or 'death'.
local function getYearStringFromSingleStatement(statement, year_type)
local snak = statement.mainsnak
-- We're not using mw.wikibase.formatValue because we only want years.
-- No value. This is invalid for birth dates (should be 'somevalue'
-- instead), and indicates 'still alive' for death dates.
if snak.snaktype == 'novalue' and year_type == 'birth' then
addCategory('Authors with missing birth dates')
return nil
end
if snak.snaktype == 'novalue' and year_type == 'death' then
addCategory('Living authors')
return nil
end
-- Unknown value.
if snak.snaktype == 'somevalue' then
addCategory('Authors with unknown ' .. year_type .. ' dates')
return '?'
end
-- Extract year from the time value.
local _, _, extractedYear = string.find(snak.datavalue.value.time, '([%+%-]%d%d%d+)%-')
local year = math.abs(tonumber(extractedYear))
addCategory('پدیدآورندگان ' .. dateModule.era(extractedYear))
-- Century & millennium precision.
if snak.datavalue.value.precision == 6 or snak.datavalue.value.precision == 7 then
local ceilfactor = 100
local precisionName = 'century'
if snak.datavalue.value.precision == 6 then
ceilfactor = 1000
precisionName = 'millennium'
end
local cent = math.max(math.ceil(year/ceilfactor), 1)
local suffixed_cent = ordinal(cent, false, false)
year = suffixed_cent .. ' ' .. precisionName
addCategory('Authors with approximate ' .. year_type .. ' dates')
elseif snak.datavalue.value.precision == 8 then -- decade precision
year = math.floor(tonumber(year)/10) * 10 .. 's'
addCategory('Authors with approximate ' .. year_type .. ' dates')
end
if tonumber(extractedYear) < 0 then
year = year .. ' BCE'
end
-- Remove from 'Living authors' if that's not possible.
if tonumber(extractedYear) < tonumber(os.date('%Y') - 110) then
removeCategory('Living authors')
end
-- Add to e.g. 'YYYY births' category (before we add 'c.' or 'fl.' prefixes).
-- mw.logObject('Wikidata cat')
-- mw.logObject(year .. ' ' .. year_type .. 's')
if year_type == 'birth' then
addCategory('زادگان ' .. convertToPersianDigits(year) .. ' (میلادی)')
elseif year_type == 'death' then
addCategory('درگذشتگان ' .. convertToPersianDigits(year) .. ' (میلادی)')
end
-- Extract circa (P1480 = sourcing circumstances, Q5727902 = circa)
if statement.qualifiers and statement.qualifiers.P1480 then
for _,qualifier in pairs(statement.qualifiers.P1480) do
if qualifier.datavalue and qualifier.datavalue.value.id == 'Q5727902' then
addCategory('Authors with approximate ' .. year_type .. ' dates')
year = 'c. ' .. year
end
end
end
-- Add floruit abbreviation.
if year_type == 'floruit' then
year = 'fl. ' .. year
end
return year
end
--------------------------------------------------------------------------------
-- Get a given or family name property.
-- This concatenates (with spaces) all statements of the given property in order of the series ordinal (P1545) qualifier.
-- @TODO fix this.
local function getNameFromWikidata(item, property)
local statements = item:getBestStatements(property)
local out = {}
if statements[1] and statements[1].mainsnak.datavalue then
local itemId = statements[1].mainsnak.datavalue.value.id
table.insert(out, mw.wikibase.label(itemId) or '')
end
return table.concat(out, ' ')
end
--------------------------------------------------------------------------------
local function getPropertyValue(item, property)
local statements = item:getBestStatements(property)
if statements[1] and statements[1].mainsnak.datavalue then
return statements[1].mainsnak.datavalue.value
end
end
--------------------------------------------------------------------------------
-- The 'Wikisource' format for a birth or death year is as follows:
-- "?" or empty for unknown (or still alive)
-- Use BCE for years before year 1
-- Approximate dates:
-- Decades or centuries: "1930s" or "20th century"
-- Circa: "c/1930" or "c. 1930" or "ca 1930" or "circa 1930"
-- Tenuous year: "1932/?"
-- Choice of two or more years: "1932/1933"
-- This is a slightly overly-complicated function, but one day will be able to be deleted.
-- @param string type Either 'birth' or 'death'
-- @return string The year to display
local function formatWikisourceYear(year, year_type)
if not year then
return nil
end
-- mw.logObject('formatWikisourceYear')
local yearParts = mw.text.split(year, '/', true)
-- mw.logObject('yearParts')
-- mw.logObject(yearParts)
-- Ends in a question mark.
if yearParts[2] == '?' then
addCategory('Authors with unknown ' .. year_type .. ' dates')
if tonumber(yearParts[1]) then
-- mw.logObject('unknown')
-- mw.logObject(yearParts[1] .. ' ' .. year_type .. 's')
addCategory(dateModule.era(yearParts[1]) .. ' authors')
addCategory(yearParts[1] .. ' ' .. year_type .. 's')
else
addCategory('Authors with non-numeric ' .. year_type .. ' dates')
end
return yearParts[1] .. '?'
end
-- Starts with one of the 'circa' abbreviations
local circaNames = {'ca.', 'c.', 'ca', 'c', 'circa'}
for _, circaName in pairs(circaNames) do
local yearNumber
local isCirca = false
if yearParts[1] == circaName then
yearNumber = mw.text.trim(yearParts[2])
isCirca = true
elseif string.match(yearParts[1], '^' .. circaName) then
yearNumber = string.gsub(yearParts[1], '^' .. circaName, '')
isCirca = (tonumber(yearNumber) ~= nil)
end
if isCirca then
addCategory('Authors with approximate ' .. year_type .. ' dates')
if tonumber(yearNumber) then
yearNumber = tonumber(yearNumber)
-- mw.logObject(yearNumber)
addCategory(dateModule.era(tostring(yearNumber)) .. ' authors')
addCategory(yearNumber .. ' ' .. year_type .. 's')
else
addCategory('Authors with non-numeric ' .. year_type .. ' dates')
end
return 'c. ' .. yearNumber
end
end
-- If there is more than one year part, and they're all numbers, add categories.
local allPartsAreNumeric = true
if #yearParts > 1 then
for _, yearPart in pairs(yearParts) do
if tonumber(yearPart) then
-- mw.logObject('numeric')
-- mw.logObject(yearPart .. ' ' .. year_type .. 's')
addCategory(yearPart .. ' ' .. year_type .. 's')
addCategory(dateModule.era(yearPart) .. ' authors')
else
allPartsAreNumeric = false
end
end
if allPartsAreNumeric then
addCategory('Authors with approximate birth dates')
end
elseif #yearParts == 1 and not tonumber(year) then
allPartsAreNumeric = false
end
-- Otherwise, just use whatever's been given
if not allPartsAreNumeric then
addCategory('Authors with non-numeric ' .. year_type .. ' dates')
end
if #yearParts == 1 or allPartsAreNumeric == false then
-- mw.logObject('not numeric')
-- mw.logObject(year .. ' ' .. year_type .. 's')
addCategory(year .. ' ' .. year_type .. 's')
end
return year
end
--[=[
Get a formatted year of the given property and add to the relevant categories
]=]
local function formatWikidataYear(item, year_type)
-- Check sanity of inputs
if not item or not year_type or not wd_properties[year_type] then
return nil
end
local property = wd_properties[year_type]
-- Get this property's statements.
local statements = item:getBestStatements(property)
if #statements == 0 then
-- If there are no statements of this type, add to 'missing' category.
if year_type == 'birth' or year_type == 'death' then
addCategory('Authors with missing ' .. year_type .. ' dates')
end
local isHuman = item:formatPropertyValues(wd_properties['instanceof']).value == 'human'
if year_type == 'death' and isHuman then
-- If no statements about death, assume to be alive.
addCategory('Living authors')
end
end
-- Compile a list of years, one from each statement.
local years = {}
for _, statement in pairs(statements) do
local year = getYearStringFromSingleStatement(statement, year_type)
if year then
table.insert(years, year)
end
end
years = TableTools.removeDuplicates(years)
-- If no year found yet, try for a floruit date. Make an exception for workperiod
if (#years == 0 or table.concat(years, '/') == '?') and year_type ~= "workperiodstart" and year_type ~= "workperiodend" then
local floruitStatements = item:getBestStatements(wd_properties["floruit"])
for _, statement in pairs(floruitStatements) do
-- If all we've got so far is 'unknown', replace it.
if table.concat(years, '/') == '?' then
years = {}
end
addCategory('Authors with floruit dates')
local year = getYearStringFromSingleStatement(statement, 'floruit')
if year then
table.insert(years, year)
end
end
end
years = TableTools.removeDuplicates(years)
if #years == 0 then
return nil
end
return table.concat(years, '/')
end
--------------------------------------------------------------------------------
-- Get a single formatted date, with no categories.
-- args.year, args.year_type, args.wd_entity
local function date(args)
if args.year then
return formatWikisourceYear(args.year, args.year_type)
else
return formatWikidataYear(args.wd_entity, args.year_type)
end
end
--------------------------------------------------------------------------------
-- Get a formatted string of the years that this author lived,
-- and categorise in the appropriate categories.
-- The returned string starts with a line break (<br />).
local function dates(args)
local outHtml = mw.html.create()
--------------------------------------------------------------------------------
-- Check a given title as having the appropriate dates as a disambiguating suffix.
local function checkTitleDatesAgainstWikidata(title, wikidata)
-- All disambiguated author pages have parentheses in their titles.
local titleHasParentheses = string.find(tostring(title), '%d%)')
if not titleHasParentheses then
return
end
-- The title should end with years in the same format as is used in the page header
-- but with a normal hyphen instead of an en-dash.
local dates = '(' .. (date({year_type = 'birth', wd_entity = args.wd_entity}) or '') .. '-' .. (date({year_type = 'death', wd_entity = args.wd_entity}) or '') .. ')'
if string.sub(tostring(title), -string.len(dates)) ~= dates then
addCategory('Authors with title-date mismatches')
end
end
-- Check disambiguated page titles for accuracy.
checkTitleDatesAgainstWikidata(args.pagetitle or mw.title.getCurrentTitle(), args.wikidata)
-- Get the dates (do death first, so birth can override categories if required):
-- Death
local deathyear
local wikidataDeathyear = formatWikidataYear(args.wd_entity, 'death')
local wikisourceDeathyear = formatWikisourceYear(args.deathyear, 'death')
if args.deathyear then
-- For Wikisource-supplied death dates.
deathyear = wikisourceDeathyear
addCategory('Authors with override death dates')
if args.wd_entity and wikisourceDeathyear ~= wikidataDeathyear then
addCategory('Authors with death dates differing from Wikidata')
end
if tonumber(deathyear) then
addCategory(dateModule.era(deathyear) .. ' authors')
end
else
deathyear = wikidataDeathyear
end
if not deathyear then
addCategory('Authors with missing death dates')
end
-- Birth
local birthyear
local wikidataBirthyear = formatWikidataYear(args.wd_entity, 'birth')
local wikisourceBirthyear = formatWikisourceYear(args.birthyear, 'birth')
if args.birthyear then
-- For Wikisource-supplied birth dates.
birthyear = wikisourceBirthyear
addCategory('Authors with override birth dates')
if args.wd_entity and wikisourceBirthyear ~= wikidataBirthyear then
addCategory('Authors with birth dates differing from Wikidata')
end
if tonumber(birthyear) then
addCategory(dateModule.era(birthyear) .. ' authors')
end
else
birthyear = wikidataBirthyear
end
if not birthyear then
addCategory('Authors with missing birth dates')
end
-- Work period
local startYear = formatWikidataYear(args.wd_entity, "workperiodstart")
local endYear = formatWikidataYear(args.wd_entity, "workperiodend")
local workPeriodYears
if startYear or endYear then
if not startYear then
startYear = '?'
end
if not endYear then
endYear = '?'
end
workPeriodYears = "fl. " .. startYear .. "–" .. endYear
else
workPeriodYears = nil
end
-- Put all the output together, including manual override of the dates.
local dates = ''
if args.dates then
-- The parentheses are repeated here and in getFormattedDates()
addCategory('Authors with override dates')
dates = '<br />(' .. args.dates .. ')'
else
dates = getFormattedDates(birthyear, deathyear, workPeriodYears)
end
if dates then
outHtml:wikitext(dates)
return tostring(outHtml)
end
return nil
end
--[=[
Match claims to configured categories.
Utility function for constructCategories.
Modifies the provided table to add categories configured in /data.
]=]
local function addCategoriesFromClaims(entity, pId, knownCategories)
-- Abort if the provided category mappings are missing or undefined
if not knownCategories then
error('Category mappings are not defined. Check [[Module:Author/data]].')
end
-- Get statements for the property provided (ignore deprecated statements)
local statements = entity:getBestStatements(pId)
-- Get the category for each statement's value if a mapping exists
for _, v in pairs(statements) do
-- Sometimes the property exists on the item but has no value,
-- or it has an unknown value,
-- so in the output from mw.wikibase.getEntity()
-- .mainsnak's .datavalue will be nil.
if v.mainsnak.snaktype == 'value' then
local valueId = v.mainsnak.datavalue.value.id
-- Add the category if we have a mapping for this statement
local knownCat = knownCategories[valueId]
if knownCat then
addCategory(knownCat)
end
end
end
end
--[=[
Get categories for nationality, occupations, etc.
Returns categories as a string of wikicode
]=]
local function constructCategories(entity)
if not entity then
return nil
end
-- Load the property to category mappings
local DATA = mw.loadData('Module:Author/data')
-- Add categories from properties for which we have a configured mapping
addCategoriesFromClaims(entity, wd_properties['nationalities'], DATA.categories.nationalities)
addCategoriesFromClaims(entity, wd_properties['occupations'], DATA.categories.occupations)
addCategoriesFromClaims(entity, wd_properties['religions'], DATA.categories.religions)
addCategoriesFromClaims(entity, wd_properties['movements'], DATA.categories.movements)
addCategoriesFromClaims(entity, wd_properties['ideologies'], DATA.categories.ideologies)
addCategoriesFromClaims(entity, wd_properties['employer'], DATA.categories.employer)
addCategoriesFromClaims(entity, wd_properties['positionheld'], DATA.categories.positionheld)
addCategoriesFromClaims(entity, wd_properties['awardreceived'], DATA.categories.awardreceived)
addCategoriesFromClaims(entity, wd_properties['memberof'], DATA.categories.memberof)
addCategoriesFromClaims(entity, wd_properties['canonizationstatus'], DATA.categories.canonizationstatus)
addCategoriesFromClaims(entity, wd_properties['contributedto'], DATA.categories.contributedto)
addCategoriesFromClaims(entity, wd_properties['socialclassification'], DATA.categories.socialclassification)
addCategoriesFromClaims(entity, wd_properties['instrument'], DATA.categories.instrument)
addCategoriesFromClaims(entity, wd_properties['describedby'], DATA.categories.describedby)
end
--------------------------------------------------------------------------------
-- Output link and category for initial letters of family name.
--
local function lastInitial(args)
-- Handle special override
if not args.use_initials then
return nil
end
-- Allow manual override of initials.
local initials = args.last_initial
-- If a lastname is provided, get the initials from that.
if not initials and args.lastname then
initials = mw.ustring.sub(args.lastname, 1, 2)
end
-- Fetch from Wikidata.
if not initials then
local item = args.wd_entity
if item then
-- Get the first family name statement.
local familyNames = item:getBestStatements(wd_properties['familyname'])
if #familyNames > 0 then
local familyNameId = familyNames[1].mainsnak.datavalue.value.id
local familyName = mw.wikibase.getEntity(familyNameId)
if familyName.labels and familyName.labels.en then
-- Take the first two characters of the English label
-- (this avoids issues with 'native label P1705' and is fine for English Wikisource).
initials = mw.ustring.sub(familyName.labels.en.value, 1, 2)
end
end
end
end
-- Put it all together and output
local out
if initials then
out = '[[:رده:پدیدآورندگان-' .. initials .. '|نمایه پدیدآورندگان: ' .. initials .. ']]'
local authorCategory = mw.title.new('پدیدآورندگان-' .. initials, 'رده')
addCategory(authorCategory.text)
if authorCategory.exists ~= true then
addCategory('Author pages with missing initials category')
end
else
addCategory('Authors without initials')
out = '[[:Category:Authors without initials|Authors without initials]]'
end
return out
end
--------------------------------------------------------------------------------
-- Header assembly
local function ucfirst(s)
return string.sub(s, 1, 1) .. string.sub(s, 2)
end
local function gender_from_wd(wd_entity)
if not wd_entity then
return nil
end
local statements = wd_entity:getBestStatements(wd_properties['gender'])
if #statements == 0 then
return nil
end
local genders = {}
for _, statement in pairs(statements) do
local snak = statement.mainsnak
if snak.snaktype ~= 'value'
or not snak
or snak.datatype ~= 'wikibase-item'
or not snak.datavalue
or not snak.datavalue.value
or not snak.datavalue.value.id then
break
end
local gender_item = mw.wikibase.getEntity(snak.datavalue.value.id)
if not gender_item or not gender_item.labels or not gender_item.labels.en or not gender_item.labels.en.value then
break
end
table.insert(genders, gender_item.labels.en.value)
end
return genders[1]
end
local function image_from_wd(wd_entity)
if not wd_entity then
return {}
end
local statements = wd_entity:getBestStatements(wd_properties['image'])
if #statements == 0 then
return {}
end
local images = {}
--[=[
local langcode = mw.getCurrentFrame():callParserFunction('int', {'lang'})
langcode = (mw.language.isKnownLanguageTag(langcode) and langcode) or mw.language.getContentLanguage().code
local base_langcode = mw.text.split(langcode, '-', true)[1]
local langcode_fallbacks_ordered = {base_langcode}
for i, lang in ipairs(mw.language.getFallbacksFor(base_langcode)) do
table.insert(langcode_fallbacks_ordered, lang)
end
if base_langcode ~= langcode then
table.insert(langcode_fallbacks_ordered, 2, langcode)
for i, lang in ipairs(mw.language.getFallbacksFor(langcode)) do
table.insert(langcode_fallbacks_ordered, lang)
end
end
local langcode_fallbacks = {}
for i, v in ipairs(langcode_fallbacks_ordered) do
langcode_fallbacks[v] = i
end
]=]
local langcode_fallbacks = {[mw.language.getContentLanguage().code] = 1}
for _, statement in pairs(statements) do
local image = statement.mainsnak.datatype == 'commonsMedia' and statement.mainsnak.datavalue and statement.mainsnak.datavalue.value
local captions = {}
local legends = statement['qualifiers'] and statement['qualifiers'][wd_properties['medialegend']]
if legends then
for i, legend in ipairs(legends) do
if legend.datatype == 'monolingualtext' and legend.datavalue and legend.datavalue.value and legend.datavalue.value.text and legend.datavalue.value.language then
local legend_langcode = legend.datavalue.value.language
local legend_base_langcode = mw.text.split(legend_langcode, '-', true)[1]
local legend_text = legend.datavalue.value.text
if langcode_fallbacks[legend_langcode] then
captions[langcode_fallbacks[legend_langcode]] = legend_text
elseif langcode_fallbacks[legend_base_langcode] then
captions[langcode_fallbacks[legend_base_langcode]] = captions[langcode_fallbacks[legend_base_langcode]] or legend_text
end
end
end
captions = TableTools.compressSparseArray(captions)
end
if image then
table.insert(images, {image = image, image_caption = captions[1]})
end
end
return images[1] or {}
end
function p.image_from_wd(wd_entity)
return image_from_wd(wd_entity)
end
local function get_image(args)
local image = args.image
local wd_image_info = image_from_wd(args.wd_entity)
local template_ns = args.template_ns or 'Author'
if image then
addCategory(template_ns .. ' با تصویر')
else
image = wd_image_info.image
if image then
addCategory(template_ns .. ' pages with Wikidata image')
else
addCategory(template_ns .. ' بدون تصویر')
end
end
local image_display = ''
if image then
local upright = (yesno(args.upright) and '|upright=0.6') or ''
args.image_caption = args.image_caption or wd_image_info.image_caption or args.name_text
local caption_div = (args.image_caption and tostring(mw.html.create('div'):css({['text-align'] = 'center'}):wikitext(args.image_caption))) or ''
image_display = '[[File:' .. image .. '|thumb' .. upright .. '|' .. caption_div .. ']]'
end
return image_display
end
local function construct_defaultsort(args)
local defaultsort = args.defaultsort
if not defaultsort then
if args.firstname and args.lastname then
defaultsort = ucfirst(args.lastname .. ', ' .. args.firstname)
elseif args.firstname or args.lastname then
defaultsort = ucfirst((args.lastname or '') .. (args.firstname or ''))
end
end
if defaultsort then
return mw.getCurrentFrame():callParserFunction('DEFAULTSORT', {defaultsort})
end
return ''
end
local function author(args)
args = normalize_args(args)
-- Always tell Header structure that we're {{author}}
-- TODO: Is there a use case for letting our clients set this?
args.template = 'author'
local current_title = mw.title.getCurrentTitle()
local firstname = args.firstname
local lastname = args.lastname
local last_initial = args.last_initial
if firstname then
firstname = preprocess(firstname)
end
if lastname then
lastname = preprocess(lastname)
end
if last_initial then
last_initial = preprocess(last_initial)
end
args.header_class = 'wst-author ws-header'
-- main block
args.main_class = 'authortemplate'
args.previous = lastInitial(args)
if firstname and lastname then
if yesno(args.invert_names) then
args.name_text = lastname .. ' ' .. firstname
else
args.name_text = firstname .. ' ' .. lastname
end
else
args.name_text = firstname or lastname
end
local name_text_span = ''
if args.name_text then
name_text_span = tostring(mw.html.create('span'):css({['font-weight'] = 'bold'}):wikitext(args.name_text))
end
local dates_text = ''
if not yesno(args.disambiguation) then
dates_text = dates(args) or ''
end
args.main_title = name_text_span .. dates_text
-- notes block
args.notes_class = 'author_notes'
args.commonscat = args.commonscat or (
args.wd_entity
and args.wd_entity.claims
and args.wd_entity.claims.P373
and args.wd_entity.claims.P373[1]
and args.wd_entity.claims.P373[1].mainsnak
and args.wd_entity.claims.P373[1].mainsnak.datatype == 'string'
and args.wd_entity.claims.P373[1].mainsnak.datavalue
and args.wd_entity.claims.P373[1].mainsnak.datavalue.value
)
args.notes = args.description
-- image
local image_display = get_image(args)
-- defaultsort
args.defaultsort = args.defaultsort or args.sortkey
local defaultsort_magicword = construct_defaultsort(args)
-- categories
if not args.categories then
-- Author index category
if last_initial then
addCategory('پدیدآورندگان-' .. last_initial)
elseif not last_initial then
addCategory('Authors without initials')
end
-- Categorisation of author pages by gender, based on Wikidata sex or gender Property (P21)
-- The main are: male (Q6581097), female (Q6581072), transgender female (Q1052281), transgender male (Q2449503)
if args.wd_entity then
local gender = gender_from_wd(args.wd_entity)
if gender == 'transgender female' or gender == 'female' then
addCategory('پدیدآورندگان زن')
addCategory('Author pages with gender in Wikidata')
elseif gender == 'transgender male' or gender == 'male' then
addCategory('پدیدآورندگان مرد')
addCategory('Author pages with gender in Wikidata')
elseif gender then
addCategory('Author pages with unknown gender in Wikidata')
else
addCategory('Author pages with no gender in Wikidata')
end
if gender == 'transgender female' or gender == 'transgender male' then
addCategory('Transgender and transsexual authors')
end
else
addCategory('Author pages with gender manually categorised')
end
constructCategories(args.wd_entity)
-- Categorisation of author pages with interwiki links (used for maintenance view only, links come from WD)
if args.wikipedia then
addCategory('Author pages linking to Wikipedia')
end
if args.wikiquote then
addCategory('Author pages linking to Wikiquote')
end
if args.commons then
addCategory('Author pages linking to Wikimedia Commons')
end
if args.commonscat then
addCategory('Author pages linking to Wikimedia Commons categories')
end
-- Whether page is connected to Wikidata
if (args.namespace or current_title.nsText) == 'Author' then
if args.wd_entity then
addCategory('Author pages connected to Wikidata')
else
addCategory('Author pages not connected to Wikidata')
end
end
end
-- microformat
local microformat = mw.html.create('div')
:attr('id', 'ws-data')
:addClass('vcard ws-noexport')
:css({['display'] = 'none', ['speak'] = 'none'})
local microformat_wikitext = {
tostring(mw.html.create('span'):attr('id', 'ws-article-id'):wikitext(current_title.id))
}
if args.wd_entity then
table.insert(
microformat_wikitext,
tostring(mw.html.create('span')
:attr('id', 'wd-article-id')
:wikitext(args.wd_entity.id)
)
)
end
if args.name_text then
table.insert(
microformat_wikitext,
tostring(mw.html.create('span')
:attr('id', 'ws-name')
:addClass('fn')
:wikitext(args.name_text)
)
)
table.insert(
microformat_wikitext,
tostring(mw.html.create('span')
:addClass('n')
:wikitext(table.concat({
tostring(mw.html.create('span'):addClass('given-name'):wikitext(firstname or '')),
tostring(mw.html.create('span'):addClass('family-name'):wikitext(lastname or ''))
}))
)
)
end
if args.defaultsort then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-key'):wikitext(args.defaultsort)))
end
if args.image then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-image'):wikitext(args.image)))
end
if args.birthyear then
table.insert(
microformat_wikitext,
tostring(mw.html.create('span')
:attr('id', 'ws-birthdate')
:addClass('bday')
:wikitext(date({['year_type'] = 'birth', ['year'] = args.birthyear}))
)
)
end
if args.deathyear then
table.insert(
microformat_wikitext,
tostring(mw.html.create('span')
:attr('id', 'ws-deathdate')
:addClass('dday')
:wikitext(date({['year_type'] = 'death', ['year'] = args.deathyear}))
)
)
end
if args.wikipedia then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-wikipedia'):wikitext(args.wikipedia)))
end
if args.wikiquote then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-wikiquote'):wikitext(args.wikiquote)))
end
if args.commonscat then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-commons'):wikitext(args.commonscat)))
elseif args.commons then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-commons'):wikitext('Category' .. args.commons)))
end
if args.description then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-description'):addClass('note'):wikitext(args.description)))
end
microformat:wikitext(table.concat(microformat_wikitext))
-- assemble
local cats = ''
if not args.nocat then
cats = (args.categories or '') .. getCategories()
end
args.post_notes = image_display .. defaultsort_magicword .. cats .. tostring(microformat)
args.wikidataswitch = true
return mw.getCurrentFrame():extensionTag('templatestyles', '', {src = 'Template:Author/styles.css'}) .. construct_header(args)
end
-- for testing
function p._getCategories(args)
args = normalize_args(args)
p._author(args)
return getCategories()
end
function p.getCategories(frame)
return p._getCategories(getArgs(frame))
end
function p._date(args)
args = normalize_args(args)
args.year_type = args.year_type or args['type'] or 'birth'
return date(args)
end
function p.date(frame)
return p._date(getArgs(frame))
end
function p._lastInitial(args)
args = normalize_args(args)
return lastInitial(args)
end
function p.lastInitial(frame)
return p._lastInitial(getArgs(frame))
end
-- Debugging 1: mw.log(p._lastInitial({last_initial = 'Qx'}))
-- Debugging 2: mw.log(p._lastInitial({wikidata = 'Q1107985'}))
-- Debugging 1: mw.log(p._lastInitial({lastname = 'Qqxxx'}))
-- Debugging 3: mw.log(p._lastInitial({last_initial = 'Qx', wikidata_id='Q1107985'}))
-- used by [[Module:Person]]
function p._dates(args)
args = normalize_args(args)
return dates(args)
end
function p.dates(frame)
return p._dates(getArgs(frame))
end
function p._get_image(args)
args = normalize_args(args)
if args.nocat then
return get_image(args)
else
return get_image(args) .. getCategories()
end
end
function p.get_image(frame)
return p._get_image(getArgs(frame))
end
function p._construct_defaultsort(args)
args = normalize_args(args)
return construct_defaultsort(args)
end
function p.construct_defaultsort(frame)
return p._construct_defaultsort(getArgs(frame))
end
-- Used by [[Module:Disambiguation]] and [[Template:Author]]
function p._author(args)
return author(args)
end
function p.author(frame)
return p._author(getArgs(frame))
end
return p
rhydnkxct0n9pto9rf4nyxthlzqjvi0
291048
291046
2026-07-11T19:23:32Z
Hanooz
17889
291048
Scribunto
text/plain
require('strict')
local p = {}
-- Local variables
local getArgs = require('Module:Arguments').getArgs
local yesno = require('Module:Yesno')
local construct_header = require('Module:Header structure').construct_header
local dateModule = require('Module:Era')
local TableTools = require('Module:TableTools')
local ordinal = require('Module:Ordinal')._ordinal
local categories = {} -- List of categories to add page to.
local function preprocess(args)
return mw.getCurrentFrame():preprocess(args)
end
local wd_properties = {
birth = 'P569',
death = 'P570',
workperiodstart = 'P2031',
workperiodend = 'P2032',
floruit = 'P1317',
familyname = 'P734',
gender = 'P21',
image = 'P18',
instanceof = 'P31',
medialegend = 'P2096',
nationalities = 'P27',
occupations = 'P106',
religions = 'P140',
movements = 'P135',
ideologies = 'P1142',
employer = 'P108',
positionheld = 'P39',
awardreceived = 'P166',
memberof = 'P463',
canonizationstatus = 'P411',
contributedto = 'P3919',
socialclassification = 'P3716',
instrument = 'P1303',
describedby = 'P1343'
}
local function convertToPersianDigits(number)
local persianDigits = {
['0'] = '۰', ['1'] = '۱', ['2'] = '۲', ['3'] = '۳', ['4'] = '۴',
['5'] = '۵', ['6'] = '۶', ['7'] = '۷', ['8'] = '۸', ['9'] = '۹'
}
return tostring(number):gsub('%d', persianDigits)
end
--------------------------------------------------------------------------------
-- Add a category to the current list of categories. Do not include the Category prefix.
local function addCategory(category)
table.insert(categories, category)
end
--------------------------------------------------------------------------------
-- Remove a category. Do not include the Category prefix.
local function removeCategory(category)
for catPos, cat in pairs(categories) do
if cat == category then
table.remove(categories, catPos)
end
end
end
--------------------------------------------------------------------------------
-- Get wikitext for all categories added using addCategory.
local function getCategories()
categories = TableTools.removeDuplicates(categories)
table.sort(categories)
local out = ''
for _, cat in pairs(categories) do
out = out .. '[[Category:' .. cat .. ']]'
end
return out
end
local function normalize_args(args)
-- aliases
local dup_cat = ''
local oldKeys = {}
local newArgs = {}
for k, v in pairs(args) do
local newkey = string.lower(string.gsub(string.gsub(tostring(k), '-', '_'), ' ', '_'))
if newkey ~= tostring(k) then
if args[newkey] then
addCategory('Pages using duplicate arguments in template calls')
end
newArgs[newkey] = newArgs[newkey] or v
table.insert(oldKeys, tostring(k))
end
end
for k, v in pairs(newArgs) do
args[k] = v
end
for k, v in pairs(oldKeys) do
args[v] = nil
end
args.wikidata = args.wikidata or args.wikidata_id
args.wikidata_id = nil
-- Fetch entity object for Wikidata item connected to the current page
-- Let manually-specified Wikidata ID override if given and valid
if args.wikidata and mw.wikibase.isValidEntityId(args.wikidata) then
args.wd_entity = mw.wikibase.getEntity(args.wikidata)
else
args.wd_entity = mw.wikibase.getEntity()
end
args.use_initials = yesno(args.use_initials) ~= false and args.last_initial ~= '!NO_INITIALS'
args.nocat = yesno(args.nocat) or false
return args
end
--------------------------------------------------------------------------------
-- Get the actual parentheses-enclosed HTML string that shows the dates.
local function getFormattedDates(birthyear, deathyear, workPeriodYears)
if not birthyear and not deathyear and not workPeriodYears then
return nil
end
local dates = '<br />('
local birthNotFloruit = birthyear and not birthyear:match("^fl%.")
local deathNotFloruit = deathyear and not deathyear:match("^fl%.")
if birthNotFloruit or deathNotFloruit or not workPeriodYears then
if birthyear then
if birthNotFloruit and deathyear and not deathNotFloruit then
dates = dates .. "b. "
end
dates = dates .. birthyear
end
if (birthyear or deathyear) and birthyear ~= deathyear then
-- Add spaces if there are spaces in either of the dates.
local spaces = ''
if string.match((birthyear or '') .. (deathyear or ''), ' ') then
spaces = ' '
end
dates = dates .. spaces .. '–' .. spaces
end
if deathyear and birthyear ~= deathyear then
if deathNotFloruit and birthyear and not birthNotFloruit then
dates = dates .. "d. "
end
dates = dates .. deathyear
end
else
dates = dates .. workPeriodYears
addCategory('Authors with floruit dates')
end
if birthyear or deathyear or workPeriodYears then
dates = dates .. ')'
end
return convertToPersianDigits(dates)
end
--------------------------------------------------------------------------------
-- Take a statement of a given property and make a human-readable year string
-- out of it, adding the relevant categories as we go.
-- @param table statement The statement.
-- @param string type One of 'birth' or 'death'.
local function getYearStringFromSingleStatement(statement, year_type)
local snak = statement.mainsnak
-- We're not using mw.wikibase.formatValue because we only want years.
-- No value. This is invalid for birth dates (should be 'somevalue'
-- instead), and indicates 'still alive' for death dates.
if snak.snaktype == 'novalue' and year_type == 'birth' then
addCategory('Authors with missing birth dates')
return nil
end
if snak.snaktype == 'novalue' and year_type == 'death' then
addCategory('Living authors')
return nil
end
-- Unknown value.
if snak.snaktype == 'somevalue' then
addCategory('Authors with unknown ' .. year_type .. ' dates')
return '?'
end
-- Extract year from the time value.
local _, _, extractedYear = string.find(snak.datavalue.value.time, '([%+%-]%d%d%d+)%-')
local year = math.abs(tonumber(extractedYear))
addCategory('پدیدآورندگان ' .. dateModule.era(extractedYear))
-- Century & millennium precision.
if snak.datavalue.value.precision == 6 or snak.datavalue.value.precision == 7 then
local ceilfactor = 100
local precisionName = 'century'
if snak.datavalue.value.precision == 6 then
ceilfactor = 1000
precisionName = 'millennium'
end
local cent = math.max(math.ceil(year/ceilfactor), 1)
local suffixed_cent = ordinal(cent, false, false)
year = suffixed_cent .. ' ' .. precisionName
addCategory('Authors with approximate ' .. year_type .. ' dates')
elseif snak.datavalue.value.precision == 8 then -- decade precision
year = math.floor(tonumber(year)/10) * 10 .. 's'
addCategory('Authors with approximate ' .. year_type .. ' dates')
end
if tonumber(extractedYear) < 0 then
year = year .. ' BCE'
end
-- Remove from 'Living authors' if that's not possible.
if tonumber(extractedYear) < tonumber(os.date('%Y') - 110) then
removeCategory('Living authors')
end
-- Add to e.g. 'YYYY births' category (before we add 'c.' or 'fl.' prefixes).
-- mw.logObject('Wikidata cat')
-- mw.logObject(year .. ' ' .. year_type .. 's')
if year_type == 'birth' then
addCategory('زادگان ' .. convertToPersianDigits(year) .. ' (میلادی)')
elseif year_type == 'death' then
addCategory('درگذشتگان ' .. convertToPersianDigits(year) .. ' (میلادی)')
end
-- Extract circa (P1480 = sourcing circumstances, Q5727902 = circa)
if statement.qualifiers and statement.qualifiers.P1480 then
for _,qualifier in pairs(statement.qualifiers.P1480) do
if qualifier.datavalue and qualifier.datavalue.value.id == 'Q5727902' then
addCategory('Authors with approximate ' .. year_type .. ' dates')
year = 'c. ' .. year
end
end
end
-- Add floruit abbreviation.
if year_type == 'floruit' then
year = 'fl. ' .. year
end
return year
end
--------------------------------------------------------------------------------
-- Get a given or family name property.
-- This concatenates (with spaces) all statements of the given property in order of the series ordinal (P1545) qualifier.
-- @TODO fix this.
local function getNameFromWikidata(item, property)
local statements = item:getBestStatements(property)
local out = {}
if statements[1] and statements[1].mainsnak.datavalue then
local itemId = statements[1].mainsnak.datavalue.value.id
table.insert(out, mw.wikibase.label(itemId) or '')
end
return table.concat(out, ' ')
end
--------------------------------------------------------------------------------
local function getPropertyValue(item, property)
local statements = item:getBestStatements(property)
if statements[1] and statements[1].mainsnak.datavalue then
return statements[1].mainsnak.datavalue.value
end
end
--------------------------------------------------------------------------------
-- The 'Wikisource' format for a birth or death year is as follows:
-- "?" or empty for unknown (or still alive)
-- Use BCE for years before year 1
-- Approximate dates:
-- Decades or centuries: "1930s" or "20th century"
-- Circa: "c/1930" or "c. 1930" or "ca 1930" or "circa 1930"
-- Tenuous year: "1932/?"
-- Choice of two or more years: "1932/1933"
-- This is a slightly overly-complicated function, but one day will be able to be deleted.
-- @param string type Either 'birth' or 'death'
-- @return string The year to display
local function formatWikisourceYear(year, year_type)
if not year then
return nil
end
-- mw.logObject('formatWikisourceYear')
local yearParts = mw.text.split(year, '/', true)
-- mw.logObject('yearParts')
-- mw.logObject(yearParts)
-- Ends in a question mark.
if yearParts[2] == '?' then
addCategory('Authors with unknown ' .. year_type .. ' dates')
if tonumber(yearParts[1]) then
-- mw.logObject('unknown')
-- mw.logObject(yearParts[1] .. ' ' .. year_type .. 's')
addCategory(dateModule.era(yearParts[1]) .. ' authors')
addCategory(yearParts[1] .. ' ' .. year_type .. 's')
else
addCategory('Authors with non-numeric ' .. year_type .. ' dates')
end
return yearParts[1] .. '?'
end
-- Starts with one of the 'circa' abbreviations
local circaNames = {'ca.', 'c.', 'ca', 'c', 'circa'}
for _, circaName in pairs(circaNames) do
local yearNumber
local isCirca = false
if yearParts[1] == circaName then
yearNumber = mw.text.trim(yearParts[2])
isCirca = true
elseif string.match(yearParts[1], '^' .. circaName) then
yearNumber = string.gsub(yearParts[1], '^' .. circaName, '')
isCirca = (tonumber(yearNumber) ~= nil)
end
if isCirca then
addCategory('Authors with approximate ' .. year_type .. ' dates')
if tonumber(yearNumber) then
yearNumber = tonumber(yearNumber)
-- mw.logObject(yearNumber)
addCategory(dateModule.era(tostring(yearNumber)) .. ' authors')
addCategory(yearNumber .. ' ' .. year_type .. 's')
else
addCategory('Authors with non-numeric ' .. year_type .. ' dates')
end
return 'c. ' .. yearNumber
end
end
-- If there is more than one year part, and they're all numbers, add categories.
local allPartsAreNumeric = true
if #yearParts > 1 then
for _, yearPart in pairs(yearParts) do
if tonumber(yearPart) then
-- mw.logObject('numeric')
-- mw.logObject(yearPart .. ' ' .. year_type .. 's')
addCategory(yearPart .. ' ' .. year_type .. 's')
addCategory(dateModule.era(yearPart) .. ' authors')
else
allPartsAreNumeric = false
end
end
if allPartsAreNumeric then
addCategory('Authors with approximate birth dates')
end
elseif #yearParts == 1 and not tonumber(year) then
allPartsAreNumeric = false
end
-- Otherwise, just use whatever's been given
if not allPartsAreNumeric then
addCategory('Authors with non-numeric ' .. year_type .. ' dates')
end
if #yearParts == 1 or allPartsAreNumeric == false then
-- mw.logObject('not numeric')
-- mw.logObject(year .. ' ' .. year_type .. 's')
addCategory(year .. ' ' .. year_type .. 's')
end
return year
end
--[=[
Get a formatted year of the given property and add to the relevant categories
]=]
local function formatWikidataYear(item, year_type)
-- Check sanity of inputs
if not item or not year_type or not wd_properties[year_type] then
return nil
end
local property = wd_properties[year_type]
-- Get this property's statements.
local statements = item:getBestStatements(property)
if #statements == 0 then
-- If there are no statements of this type, add to 'missing' category.
if year_type == 'birth' or year_type == 'death' then
addCategory('Authors with missing ' .. year_type .. ' dates')
end
local isHuman = item:formatPropertyValues(wd_properties['instanceof']).value == 'human'
if year_type == 'death' and isHuman then
-- If no statements about death, assume to be alive.
addCategory('Living authors')
end
end
-- Compile a list of years, one from each statement.
local years = {}
for _, statement in pairs(statements) do
local year = getYearStringFromSingleStatement(statement, year_type)
if year then
table.insert(years, year)
end
end
years = TableTools.removeDuplicates(years)
-- If no year found yet, try for a floruit date. Make an exception for workperiod
if (#years == 0 or table.concat(years, '/') == '?') and year_type ~= "workperiodstart" and year_type ~= "workperiodend" then
local floruitStatements = item:getBestStatements(wd_properties["floruit"])
for _, statement in pairs(floruitStatements) do
-- If all we've got so far is 'unknown', replace it.
if table.concat(years, '/') == '?' then
years = {}
end
addCategory('Authors with floruit dates')
local year = getYearStringFromSingleStatement(statement, 'floruit')
if year then
table.insert(years, year)
end
end
end
years = TableTools.removeDuplicates(years)
if #years == 0 then
return nil
end
return table.concat(years, '/')
end
--------------------------------------------------------------------------------
-- Get a single formatted date, with no categories.
-- args.year, args.year_type, args.wd_entity
local function date(args)
if args.year then
return formatWikisourceYear(args.year, args.year_type)
else
return formatWikidataYear(args.wd_entity, args.year_type)
end
end
--------------------------------------------------------------------------------
-- Get a formatted string of the years that this author lived,
-- and categorise in the appropriate categories.
-- The returned string starts with a line break (<br />).
local function dates(args)
local outHtml = mw.html.create()
--------------------------------------------------------------------------------
-- Check a given title as having the appropriate dates as a disambiguating suffix.
local function checkTitleDatesAgainstWikidata(title, wikidata)
-- All disambiguated author pages have parentheses in their titles.
local titleHasParentheses = string.find(tostring(title), '%d%)')
if not titleHasParentheses then
return
end
-- The title should end with years in the same format as is used in the page header
-- but with a normal hyphen instead of an en-dash.
local dates = '(' .. (date({year_type = 'birth', wd_entity = args.wd_entity}) or '') .. '-' .. (date({year_type = 'death', wd_entity = args.wd_entity}) or '') .. ')'
if string.sub(tostring(title), -string.len(dates)) ~= dates then
addCategory('Authors with title-date mismatches')
end
end
-- Check disambiguated page titles for accuracy.
checkTitleDatesAgainstWikidata(args.pagetitle or mw.title.getCurrentTitle(), args.wikidata)
-- Get the dates (do death first, so birth can override categories if required):
-- Death
local deathyear
local wikidataDeathyear = formatWikidataYear(args.wd_entity, 'death')
local wikisourceDeathyear = formatWikisourceYear(args.deathyear, 'death')
if args.deathyear then
-- For Wikisource-supplied death dates.
deathyear = wikisourceDeathyear
addCategory('Authors with override death dates')
if args.wd_entity and wikisourceDeathyear ~= wikidataDeathyear then
addCategory('Authors with death dates differing from Wikidata')
end
if tonumber(deathyear) then
addCategory(dateModule.era(deathyear) .. ' authors')
end
else
deathyear = wikidataDeathyear
end
if not deathyear then
addCategory('Authors with missing death dates')
end
-- Birth
local birthyear
local wikidataBirthyear = formatWikidataYear(args.wd_entity, 'birth')
local wikisourceBirthyear = formatWikisourceYear(args.birthyear, 'birth')
if args.birthyear then
-- For Wikisource-supplied birth dates.
birthyear = wikisourceBirthyear
addCategory('Authors with override birth dates')
if args.wd_entity and wikisourceBirthyear ~= wikidataBirthyear then
addCategory('Authors with birth dates differing from Wikidata')
end
if tonumber(birthyear) then
addCategory(dateModule.era(birthyear) .. ' authors')
end
else
birthyear = wikidataBirthyear
end
if not birthyear then
addCategory('Authors with missing birth dates')
end
-- Work period
local startYear = formatWikidataYear(args.wd_entity, "workperiodstart")
local endYear = formatWikidataYear(args.wd_entity, "workperiodend")
local workPeriodYears
if startYear or endYear then
if not startYear then
startYear = '?'
end
if not endYear then
endYear = '?'
end
workPeriodYears = "fl. " .. startYear .. "–" .. endYear
else
workPeriodYears = nil
end
-- Put all the output together, including manual override of the dates.
local dates = ''
if args.dates then
-- The parentheses are repeated here and in getFormattedDates()
addCategory('Authors with override dates')
dates = '<br />(' .. args.dates .. ')'
else
dates = getFormattedDates(birthyear, deathyear, workPeriodYears)
end
if dates then
outHtml:wikitext(dates)
return tostring(outHtml)
end
return nil
end
--[=[
Match claims to configured categories.
Utility function for constructCategories.
Modifies the provided table to add categories configured in /data.
]=]
local function addCategoriesFromClaims(entity, pId, knownCategories)
-- Abort if the provided category mappings are missing or undefined
if not knownCategories then
error('Category mappings are not defined. Check [[Module:Author/data]].')
end
-- Get statements for the property provided (ignore deprecated statements)
local statements = entity:getBestStatements(pId)
-- Get the category for each statement's value if a mapping exists
for _, v in pairs(statements) do
-- Sometimes the property exists on the item but has no value,
-- or it has an unknown value,
-- so in the output from mw.wikibase.getEntity()
-- .mainsnak's .datavalue will be nil.
if v.mainsnak.snaktype == 'value' then
local valueId = v.mainsnak.datavalue.value.id
-- Add the category if we have a mapping for this statement
local knownCat = knownCategories[valueId]
if knownCat then
addCategory(knownCat)
end
end
end
end
--[=[
Get categories for nationality, occupations, etc.
Returns categories as a string of wikicode
]=]
local function constructCategories(entity)
if not entity then
return nil
end
-- Load the property to category mappings
local DATA = mw.loadData('Module:Author/data')
-- Add categories from properties for which we have a configured mapping
addCategoriesFromClaims(entity, wd_properties['nationalities'], DATA.categories.nationalities)
addCategoriesFromClaims(entity, wd_properties['occupations'], DATA.categories.occupations)
addCategoriesFromClaims(entity, wd_properties['religions'], DATA.categories.religions)
addCategoriesFromClaims(entity, wd_properties['movements'], DATA.categories.movements)
addCategoriesFromClaims(entity, wd_properties['ideologies'], DATA.categories.ideologies)
addCategoriesFromClaims(entity, wd_properties['employer'], DATA.categories.employer)
addCategoriesFromClaims(entity, wd_properties['positionheld'], DATA.categories.positionheld)
addCategoriesFromClaims(entity, wd_properties['awardreceived'], DATA.categories.awardreceived)
addCategoriesFromClaims(entity, wd_properties['memberof'], DATA.categories.memberof)
addCategoriesFromClaims(entity, wd_properties['canonizationstatus'], DATA.categories.canonizationstatus)
addCategoriesFromClaims(entity, wd_properties['contributedto'], DATA.categories.contributedto)
addCategoriesFromClaims(entity, wd_properties['socialclassification'], DATA.categories.socialclassification)
addCategoriesFromClaims(entity, wd_properties['instrument'], DATA.categories.instrument)
addCategoriesFromClaims(entity, wd_properties['describedby'], DATA.categories.describedby)
end
--------------------------------------------------------------------------------
-- Output link and category for initial letters of family name.
--
local function lastInitial(args)
-- Handle special override
if not args.use_initials then
return nil
end
-- Allow manual override of initials.
local initials = args.last_initial
-- If a lastname is provided, get the initials from that.
if not initials and args.lastname then
initials = mw.ustring.sub(args.lastname, 1, 2)
end
-- Fetch from Wikidata.
if not initials then
local item = args.wd_entity
if item then
-- Get the first family name statement.
local familyNames = item:getBestStatements(wd_properties['familyname'])
if #familyNames > 0 then
local familyNameId = familyNames[1].mainsnak.datavalue.value.id
local familyName = mw.wikibase.getEntity(familyNameId)
if familyName.labels and familyName.labels.en then
-- Take the first two characters of the English label
-- (this avoids issues with 'native label P1705' and is fine for English Wikisource).
initials = mw.ustring.sub(familyName.labels.en.value, 1, 2)
end
end
end
end
-- Put it all together and output
local out
if initials then
out = '[[:رده:پدیدآورندگان-' .. initials .. '|نمایه پدیدآورندگان: ' .. initials .. ']]'
local authorCategory = mw.title.new('پدیدآورندگان-' .. initials, 'رده')
addCategory(authorCategory.text)
if authorCategory.exists ~= true then
addCategory('Author pages with missing initials category')
end
else
addCategory('Authors without initials')
out = '[[:Category:Authors without initials|Authors without initials]]'
end
return out
end
--------------------------------------------------------------------------------
-- Header assembly
local function ucfirst(s)
return string.sub(s, 1, 1) .. string.sub(s, 2)
end
local function gender_from_wd(wd_entity)
if not wd_entity then
return nil
end
local statements = wd_entity:getBestStatements(wd_properties['gender'])
if #statements == 0 then
return nil
end
local genders = {}
for _, statement in pairs(statements) do
local snak = statement.mainsnak
if snak.snaktype ~= 'value'
or not snak
or snak.datatype ~= 'wikibase-item'
or not snak.datavalue
or not snak.datavalue.value
or not snak.datavalue.value.id then
break
end
local gender_item = mw.wikibase.getEntity(snak.datavalue.value.id)
if not gender_item or not gender_item.labels or not gender_item.labels.en or not gender_item.labels.en.value then
break
end
table.insert(genders, gender_item.labels.en.value)
end
return genders[1]
end
local function image_from_wd(wd_entity)
if not wd_entity then
return {}
end
local statements = wd_entity:getBestStatements(wd_properties['image'])
if #statements == 0 then
return {}
end
local images = {}
--[=[
local langcode = mw.getCurrentFrame():callParserFunction('int', {'lang'})
langcode = (mw.language.isKnownLanguageTag(langcode) and langcode) or mw.language.getContentLanguage().code
local base_langcode = mw.text.split(langcode, '-', true)[1]
local langcode_fallbacks_ordered = {base_langcode}
for i, lang in ipairs(mw.language.getFallbacksFor(base_langcode)) do
table.insert(langcode_fallbacks_ordered, lang)
end
if base_langcode ~= langcode then
table.insert(langcode_fallbacks_ordered, 2, langcode)
for i, lang in ipairs(mw.language.getFallbacksFor(langcode)) do
table.insert(langcode_fallbacks_ordered, lang)
end
end
local langcode_fallbacks = {}
for i, v in ipairs(langcode_fallbacks_ordered) do
langcode_fallbacks[v] = i
end
]=]
local langcode_fallbacks = {[mw.language.getContentLanguage().code] = 1}
for _, statement in pairs(statements) do
local image = statement.mainsnak.datatype == 'commonsMedia' and statement.mainsnak.datavalue and statement.mainsnak.datavalue.value
local captions = {}
local legends = statement['qualifiers'] and statement['qualifiers'][wd_properties['medialegend']]
if legends then
for i, legend in ipairs(legends) do
if legend.datatype == 'monolingualtext' and legend.datavalue and legend.datavalue.value and legend.datavalue.value.text and legend.datavalue.value.language then
local legend_langcode = legend.datavalue.value.language
local legend_base_langcode = mw.text.split(legend_langcode, '-', true)[1]
local legend_text = legend.datavalue.value.text
if langcode_fallbacks[legend_langcode] then
captions[langcode_fallbacks[legend_langcode]] = legend_text
elseif langcode_fallbacks[legend_base_langcode] then
captions[langcode_fallbacks[legend_base_langcode]] = captions[langcode_fallbacks[legend_base_langcode]] or legend_text
end
end
end
captions = TableTools.compressSparseArray(captions)
end
if image then
table.insert(images, {image = image, image_caption = captions[1]})
end
end
return images[1] or {}
end
function p.image_from_wd(wd_entity)
return image_from_wd(wd_entity)
end
local function get_image(args)
local image = args.image
local wd_image_info = image_from_wd(args.wd_entity)
local template_ns = args.template_ns or 'Author'
if image then
addCategory(template_ns .. 'های دارای تصویر')
else
image = wd_image_info.image
if image then
addCategory(template_ns .. ' pages with Wikidata image')
else
addCategory(template_ns .. 'های بدون تصویر')
end
end
local image_display = ''
if image then
local upright = (yesno(args.upright) and '|upright=0.6') or ''
args.image_caption = args.image_caption or wd_image_info.image_caption or args.name_text
local caption_div = (args.image_caption and tostring(mw.html.create('div'):css({['text-align'] = 'center'}):wikitext(args.image_caption))) or ''
image_display = '[[File:' .. image .. '|thumb' .. upright .. '|' .. caption_div .. ']]'
end
return image_display
end
local function construct_defaultsort(args)
local defaultsort = args.defaultsort
if not defaultsort then
if args.firstname and args.lastname then
defaultsort = ucfirst(args.lastname .. ', ' .. args.firstname)
elseif args.firstname or args.lastname then
defaultsort = ucfirst((args.lastname or '') .. (args.firstname or ''))
end
end
if defaultsort then
return mw.getCurrentFrame():callParserFunction('DEFAULTSORT', {defaultsort})
end
return ''
end
local function author(args)
args = normalize_args(args)
-- Always tell Header structure that we're {{author}}
-- TODO: Is there a use case for letting our clients set this?
args.template = 'author'
local current_title = mw.title.getCurrentTitle()
local firstname = args.firstname
local lastname = args.lastname
local last_initial = args.last_initial
if firstname then
firstname = preprocess(firstname)
end
if lastname then
lastname = preprocess(lastname)
end
if last_initial then
last_initial = preprocess(last_initial)
end
args.header_class = 'wst-author ws-header'
-- main block
args.main_class = 'authortemplate'
args.previous = lastInitial(args)
if firstname and lastname then
if yesno(args.invert_names) then
args.name_text = lastname .. ' ' .. firstname
else
args.name_text = firstname .. ' ' .. lastname
end
else
args.name_text = firstname or lastname
end
local name_text_span = ''
if args.name_text then
name_text_span = tostring(mw.html.create('span'):css({['font-weight'] = 'bold'}):wikitext(args.name_text))
end
local dates_text = ''
if not yesno(args.disambiguation) then
dates_text = dates(args) or ''
end
args.main_title = name_text_span .. dates_text
-- notes block
args.notes_class = 'author_notes'
args.commonscat = args.commonscat or (
args.wd_entity
and args.wd_entity.claims
and args.wd_entity.claims.P373
and args.wd_entity.claims.P373[1]
and args.wd_entity.claims.P373[1].mainsnak
and args.wd_entity.claims.P373[1].mainsnak.datatype == 'string'
and args.wd_entity.claims.P373[1].mainsnak.datavalue
and args.wd_entity.claims.P373[1].mainsnak.datavalue.value
)
args.notes = args.description
-- image
local image_display = get_image(args)
-- defaultsort
args.defaultsort = args.defaultsort or args.sortkey
local defaultsort_magicword = construct_defaultsort(args)
-- categories
if not args.categories then
-- Author index category
if last_initial then
addCategory('پدیدآورندگان-' .. last_initial)
elseif not last_initial then
addCategory('Authors without initials')
end
-- Categorisation of author pages by gender, based on Wikidata sex or gender Property (P21)
-- The main are: male (Q6581097), female (Q6581072), transgender female (Q1052281), transgender male (Q2449503)
if args.wd_entity then
local gender = gender_from_wd(args.wd_entity)
if gender == 'transgender female' or gender == 'female' then
addCategory('پدیدآورندگان زن')
addCategory('Author pages with gender in Wikidata')
elseif gender == 'transgender male' or gender == 'male' then
addCategory('پدیدآورندگان مرد')
addCategory('Author pages with gender in Wikidata')
elseif gender then
addCategory('Author pages with unknown gender in Wikidata')
else
addCategory('Author pages with no gender in Wikidata')
end
if gender == 'transgender female' or gender == 'transgender male' then
addCategory('Transgender and transsexual authors')
end
else
addCategory('Author pages with gender manually categorised')
end
constructCategories(args.wd_entity)
-- Categorisation of author pages with interwiki links (used for maintenance view only, links come from WD)
if args.wikipedia then
addCategory('Author pages linking to Wikipedia')
end
if args.wikiquote then
addCategory('Author pages linking to Wikiquote')
end
if args.commons then
addCategory('Author pages linking to Wikimedia Commons')
end
if args.commonscat then
addCategory('Author pages linking to Wikimedia Commons categories')
end
-- Whether page is connected to Wikidata
if (args.namespace or current_title.nsText) == 'Author' then
if args.wd_entity then
addCategory('Author pages connected to Wikidata')
else
addCategory('Author pages not connected to Wikidata')
end
end
end
-- microformat
local microformat = mw.html.create('div')
:attr('id', 'ws-data')
:addClass('vcard ws-noexport')
:css({['display'] = 'none', ['speak'] = 'none'})
local microformat_wikitext = {
tostring(mw.html.create('span'):attr('id', 'ws-article-id'):wikitext(current_title.id))
}
if args.wd_entity then
table.insert(
microformat_wikitext,
tostring(mw.html.create('span')
:attr('id', 'wd-article-id')
:wikitext(args.wd_entity.id)
)
)
end
if args.name_text then
table.insert(
microformat_wikitext,
tostring(mw.html.create('span')
:attr('id', 'ws-name')
:addClass('fn')
:wikitext(args.name_text)
)
)
table.insert(
microformat_wikitext,
tostring(mw.html.create('span')
:addClass('n')
:wikitext(table.concat({
tostring(mw.html.create('span'):addClass('given-name'):wikitext(firstname or '')),
tostring(mw.html.create('span'):addClass('family-name'):wikitext(lastname or ''))
}))
)
)
end
if args.defaultsort then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-key'):wikitext(args.defaultsort)))
end
if args.image then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-image'):wikitext(args.image)))
end
if args.birthyear then
table.insert(
microformat_wikitext,
tostring(mw.html.create('span')
:attr('id', 'ws-birthdate')
:addClass('bday')
:wikitext(date({['year_type'] = 'birth', ['year'] = args.birthyear}))
)
)
end
if args.deathyear then
table.insert(
microformat_wikitext,
tostring(mw.html.create('span')
:attr('id', 'ws-deathdate')
:addClass('dday')
:wikitext(date({['year_type'] = 'death', ['year'] = args.deathyear}))
)
)
end
if args.wikipedia then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-wikipedia'):wikitext(args.wikipedia)))
end
if args.wikiquote then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-wikiquote'):wikitext(args.wikiquote)))
end
if args.commonscat then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-commons'):wikitext(args.commonscat)))
elseif args.commons then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-commons'):wikitext('Category' .. args.commons)))
end
if args.description then
table.insert(microformat_wikitext, tostring(mw.html.create('span'):attr('id', 'ws-description'):addClass('note'):wikitext(args.description)))
end
microformat:wikitext(table.concat(microformat_wikitext))
-- assemble
local cats = ''
if not args.nocat then
cats = (args.categories or '') .. getCategories()
end
args.post_notes = image_display .. defaultsort_magicword .. cats .. tostring(microformat)
args.wikidataswitch = true
return mw.getCurrentFrame():extensionTag('templatestyles', '', {src = 'Template:Author/styles.css'}) .. construct_header(args)
end
-- for testing
function p._getCategories(args)
args = normalize_args(args)
p._author(args)
return getCategories()
end
function p.getCategories(frame)
return p._getCategories(getArgs(frame))
end
function p._date(args)
args = normalize_args(args)
args.year_type = args.year_type or args['type'] or 'birth'
return date(args)
end
function p.date(frame)
return p._date(getArgs(frame))
end
function p._lastInitial(args)
args = normalize_args(args)
return lastInitial(args)
end
function p.lastInitial(frame)
return p._lastInitial(getArgs(frame))
end
-- Debugging 1: mw.log(p._lastInitial({last_initial = 'Qx'}))
-- Debugging 2: mw.log(p._lastInitial({wikidata = 'Q1107985'}))
-- Debugging 1: mw.log(p._lastInitial({lastname = 'Qqxxx'}))
-- Debugging 3: mw.log(p._lastInitial({last_initial = 'Qx', wikidata_id='Q1107985'}))
-- used by [[Module:Person]]
function p._dates(args)
args = normalize_args(args)
return dates(args)
end
function p.dates(frame)
return p._dates(getArgs(frame))
end
function p._get_image(args)
args = normalize_args(args)
if args.nocat then
return get_image(args)
else
return get_image(args) .. getCategories()
end
end
function p.get_image(frame)
return p._get_image(getArgs(frame))
end
function p._construct_defaultsort(args)
args = normalize_args(args)
return construct_defaultsort(args)
end
function p.construct_defaultsort(frame)
return p._construct_defaultsort(getArgs(frame))
end
-- Used by [[Module:Disambiguation]] and [[Template:Author]]
function p._author(args)
return author(args)
end
function p.author(frame)
return p._author(getArgs(frame))
end
return p
bxzaopyayb4skpbwzrhqg4aiv02upk3
پودمان:Portal header
828
89771
291044
290976
2026-07-11T19:11:24Z
Hanooz
17889
291044
Scribunto
text/plain
require('strict')
local p = {}
local getArgs = require('Module:Arguments').getArgs
local yesno = require('Module:Yesno')
local construct_header = require('Module:Header structure').construct_header
local get_image = require('Module:Author')._get_image
local portal_class = require('Module:Portal class')._portal_class
local portal_parent = require('Module:Portal parent').portal_parent
local tracking_cats = {
['parent'] = '[[Category:' .. 'Portals linking to a parent' .. ']]',
['shortcuts'] = '[[Category:' .. 'Portals with shortcuts' .. ']]',
['subpages'] = '[[Category:' .. 'Portal subpages' .. ']]',
['review'] = '[[Category:' .. 'درگاههای نیازمند بازبینی' .. ']]',
['portals'] = function(sortkey)
if sortkey then
return '[[Category:' .. 'درگاهها|' .. sortkey .. ']]'
else
return '[[Category:' .. 'درگاهها' .. ']]'
end
end
}
local function parent_text(parent)
return 'درگاه مادر: [[Portal:' .. parent .. '|' .. parent .. ']]'
end
function p._portal_header(args)
local current_title = mw.title.getCurrentTitle()
local namespace = args.namespace or current_title.nsText
local cats = {}
local categorize = not yesno(args.nocat) or args.forcecat == 'forced' or (yesno(args.forcecat) ~= false and namespace == 'Portal')
args.template_ns = args.template_ns or 'Portal'
args.header_class = 'wst-portal-header'
args.main_class = 'wst-portal-header-mainblock ws-header ws-noexport noprint'
args.main_title = args.title or current_title.subpageText
args.prefer_logo = yesno(args.prefer_logo) ~= false and yesno(args['prefer-logo']) ~= false and yesno(args['prefer logo']) ~= false
args['prefer-logo'] = nil
args['prefer logo'] = nil
if not yesno(args.noparent) then
if args.parent then
-- use the explicit parent
args.previous = parent_text(args.parent)
-- tracking cat
if categorize then
table.insert(cats, tracking_cats['parent'])
end
else
args.previous = tostring(mw.html.create('div'):addClass('wst-portal-parentlink'):wikitext(portal_parent(args)))
end
end
args.notes_class = 'wst-portal-header-notes'
if not yesno(args.noclass) then
args.notes_left_content = portal_class(args)
end
if categorize then
if args.shortcut then
table.insert(cats, tracking_cats['shortcuts'])
end
if args.forcecat ~= 'forced' and current_title.isSubpage then
table.insert(cats, tracking_cats['subpages'])
else
table.insert(cats, tracking_cats['portals'](args.sortkey))
if not yesno(args.reviewed) then
table.insert(cats, tracking_cats['review'])
end
end
end
if yesno(args.noimage) then
args.post_notes = table.concat(cats)
else
args.post_notes = get_image(args) .. table.concat(cats)
end
local stylesheet = tostring(mw.html.create('div'):addClass('ws-noexport'):wikitext(mw.getCurrentFrame():extensionTag('templatestyles', '', {src = 'Portal header/styles.css'})))
return stylesheet .. construct_header(args)
end
function p.portal_header(frame)
return p._portal_header(getArgs(frame))
end
return p
op8dy7m9ytm9lszwkbayzjkmgjze27d
291045
291044
2026-07-11T19:18:28Z
Hanooz
17889
291045
Scribunto
text/plain
require('strict')
local p = {}
local getArgs = require('Module:Arguments').getArgs
local yesno = require('Module:Yesno')
local construct_header = require('Module:Header structure').construct_header
local get_image = require('Module:Author')._get_image
local portal_class = require('Module:Portal class')._portal_class
local portal_parent = require('Module:Portal parent').portal_parent
local tracking_cats = {
['parent'] = '[[Category:' .. 'Portals linking to a parent' .. ']]',
['shortcuts'] = '[[Category:' .. 'Portals with shortcuts' .. ']]',
['subpages'] = '[[Category:' .. 'Portal subpages' .. ']]',
['review'] = '[[Category:' .. 'درگاههای نیازمند بازبینی' .. ']]',
['portals'] = function(sortkey)
if sortkey then
return '[[Category:' .. 'درگاهها|' .. sortkey .. ']]'
else
return '[[Category:' .. 'درگاهها' .. ']]'
end
end
}
local function parent_text(parent)
return 'درگاه مادر: [[Portal:' .. parent .. '|' .. parent .. ']]'
end
function p._portal_header(args)
local current_title = mw.title.getCurrentTitle()
local namespace = args.namespace or current_title.nsText
local cats = {}
local categorize = not yesno(args.nocat) or args.forcecat == 'forced' or (yesno(args.forcecat) ~= false and namespace == 'Portal')
args.template_ns = args.template_ns or 'درگاه'
args.header_class = 'wst-portal-header'
args.main_class = 'wst-portal-header-mainblock ws-header ws-noexport noprint'
args.main_title = args.title or current_title.subpageText
args.prefer_logo = yesno(args.prefer_logo) ~= false and yesno(args['prefer-logo']) ~= false and yesno(args['prefer logo']) ~= false
args['prefer-logo'] = nil
args['prefer logo'] = nil
if not yesno(args.noparent) then
if args.parent then
-- use the explicit parent
args.previous = parent_text(args.parent)
-- tracking cat
if categorize then
table.insert(cats, tracking_cats['parent'])
end
else
args.previous = tostring(mw.html.create('div'):addClass('wst-portal-parentlink'):wikitext(portal_parent(args)))
end
end
args.notes_class = 'wst-portal-header-notes'
if not yesno(args.noclass) then
args.notes_left_content = portal_class(args)
end
if categorize then
if args.shortcut then
table.insert(cats, tracking_cats['shortcuts'])
end
if args.forcecat ~= 'forced' and current_title.isSubpage then
table.insert(cats, tracking_cats['subpages'])
else
table.insert(cats, tracking_cats['portals'](args.sortkey))
if not yesno(args.reviewed) then
table.insert(cats, tracking_cats['review'])
end
end
end
if yesno(args.noimage) then
args.post_notes = table.concat(cats)
else
args.post_notes = get_image(args) .. table.concat(cats)
end
local stylesheet = tostring(mw.html.create('div'):addClass('ws-noexport'):wikitext(mw.getCurrentFrame():extensionTag('templatestyles', '', {src = 'Portal header/styles.css'})))
return stylesheet .. construct_header(args)
end
function p.portal_header(frame)
return p._portal_header(getArgs(frame))
end
return p
m9tk905192gl6m195ahwaxupluwlmww
پودمان:Portal class
828
89772
291036
290946
2026-07-11T17:46:26Z
Hanooz
17889
291036
Scribunto
text/plain
require('strict')
local p = {}
local getArgs = require('Module:Arguments').getArgs
local classification = require('Module:Library of Congress Classification')._classification
local function portal_categories(class)
local cats = {
a = 'عمومی',
b = 'ایدئولوژی',
c = 'تاریخنگاری',
d = 'تاریخ جهان',
e = 'ایالات متحده',
f = 'تاریخ آمریکا',
g = 'زمین-انسانشناسی',
h = 'علوم اجتماعی',
i = 'ملی',
j = 'علوم سیاسی',
k = 'حقوق',
l = 'آموزش',
m = 'موسیقی',
n = 'هنر',
p = 'زبان',
q = 'علم',
r = 'پزشکی',
s = 'کشاورزی',
t = 'فناوری',
u = 'نظامی',
v = 'دریایی',
x = 'متفرقه',
z = 'کتابخانه',
default = 'ردهبندینشده'
}
return '[[Category:' .. (cats[class] or cats['default']) .. ' portals]]'
end
local main_class_defaults = {
['n/a'] = 'ن-م',
['?'] = '؟'
}
local portal_base_links = '[[درگاه:درگاهها|اصلی]]/[[درگاه:نمایه|نمایه]]'
function p._portal_class(args)
local in_portal_ns = (mw.title.getCurrentTitle():inNamespace('Portal'))
local main_class
if args.class == 'none' then
main_class = main_class_defaults['n/a']
elseif args.class then
main_class = '[[Portal:' .. classification({class = args.class}) .. '|' .. string.upper(args.class) .. ']]'
elseif in_portal_ns then
main_class = main_class_defaults['?']
else
main_class = main_class_defaults['n/a']
end
local subclass1 = ''
if args.subclass1 then
subclass1 = '[[Portal:' .. classification({class = args.class, subclass1 = args.subclass1}) .. '|' .. string.upper(args.subclass1) .. ']]'
end
local subclass2 = ''
if args.subclass2 then
subclass2 = '[[Portal:' .. classification({class = args.class, subclass1 = args.subclass1, subclass2 = args.subclass2}) .. '|' .. string.upper(args.subclass2) .. ']]'
end
local box_div = mw.html.create('div')
:addClass('wst-portal-class')
:tag('div')
:addClass('wst-portal-class-title')
:wikitext('Class')
:done()
:tag('div')
:addClass('wst-portal-class-text')
:wikitext(main_class .. subclass1 .. subclass2)
:tag('div')
:addClass('wst-portal-class-base')
:wikitext(portal_base_links)
:done()
:allDone()
-- categorization
if args.class ~= 'none' and in_portal_ns then
box_div:wikitext(portal_categories(args.class))
end
return mw.getCurrentFrame():extensionTag('templatestyles', '', {src = 'Template:Portal Class/styles.css'}) .. tostring(box_div)
end
function p.portal_class(frame)
return p._portal_class(getArgs(frame))
end
return p
l1tsv3m9ajuto5jpx5chhaa4g0gnoji
291037
291036
2026-07-11T17:47:35Z
Hanooz
17889
291037
Scribunto
text/plain
require('strict')
local p = {}
local getArgs = require('Module:Arguments').getArgs
local classification = require('Module:Library of Congress Classification')._classification
local function portal_categories(class)
local cats = {
a = 'عمومی',
b = 'ایدئولوژی',
c = 'تاریخنگاری',
d = 'تاریخ جهان',
e = 'ایالات متحده',
f = 'تاریخ آمریکا',
g = 'زمین-انسانشناسی',
h = 'علوم اجتماعی',
i = 'ملی',
j = 'علوم سیاسی',
k = 'حقوق',
l = 'آموزش',
m = 'موسیقی',
n = 'هنر',
p = 'زبان',
q = 'علم',
r = 'پزشکی',
s = 'کشاورزی',
t = 'فناوری',
u = 'نظامی',
v = 'دریایی',
x = 'متفرقه',
z = 'کتابخانه',
default = 'ردهبندینشده'
}
return '[[Category:' .. (cats[class] or cats['default']) .. ' portals]]'
end
local main_class_defaults = {
['n/a'] = 'ن-م',
['?'] = '؟'
}
local portal_base_links = '[[درگاه:درگاهها|اصلی]]/[[درگاه:نمایه|نمایه]]'
function p._portal_class(args)
local in_portal_ns = (mw.title.getCurrentTitle():inNamespace('Portal'))
local main_class
if args.class == 'none' then
main_class = main_class_defaults['n/a']
elseif args.class then
main_class = '[[Portal:' .. classification({class = args.class}) .. '|' .. string.upper(args.class) .. ']]'
elseif in_portal_ns then
main_class = main_class_defaults['?']
else
main_class = main_class_defaults['n/a']
end
local subclass1 = ''
if args.subclass1 then
subclass1 = '[[Portal:' .. classification({class = args.class, subclass1 = args.subclass1}) .. '|' .. string.upper(args.subclass1) .. ']]'
end
local subclass2 = ''
if args.subclass2 then
subclass2 = '[[Portal:' .. classification({class = args.class, subclass1 = args.subclass1, subclass2 = args.subclass2}) .. '|' .. string.upper(args.subclass2) .. ']]'
end
local box_div = mw.html.create('div')
:addClass('wst-portal-class')
:tag('div')
:addClass('wst-portal-class-title')
:wikitext('رده')
:done()
:tag('div')
:addClass('wst-portal-class-text')
:wikitext(main_class .. subclass1 .. subclass2)
:tag('div')
:addClass('wst-portal-class-base')
:wikitext(portal_base_links)
:done()
:allDone()
-- categorization
if args.class ~= 'none' and in_portal_ns then
box_div:wikitext(portal_categories(args.class))
end
return mw.getCurrentFrame():extensionTag('templatestyles', '', {src = 'Template:Portal Class/styles.css'}) .. tostring(box_div)
end
function p.portal_class(frame)
return p._portal_class(getArgs(frame))
end
return p
ns8klhh95jjv4o87teytjgij57kl8lt
291043
291037
2026-07-11T19:09:22Z
Hanooz
17889
291043
Scribunto
text/plain
require('strict')
local p = {}
local getArgs = require('Module:Arguments').getArgs
local classification = require('Module:Library of Congress Classification')._classification
local function portal_categories(class)
local cats = {
a = 'عمومی',
b = 'ایدئولوژی',
c = 'تاریخنگاری',
d = 'تاریخ جهان',
e = 'ایالات متحده',
f = 'تاریخ آمریکا',
g = 'زمین-انسانشناسی',
h = 'علوم اجتماعی',
i = 'ملی',
j = 'علوم سیاسی',
k = 'حقوق',
l = 'آموزش',
m = 'موسیقی',
n = 'هنر',
p = 'زبان',
q = 'علم',
r = 'پزشکی',
s = 'کشاورزی',
t = 'فناوری',
u = 'نظامی',
v = 'دریایی',
x = 'متفرقه',
z = 'کتابخانه',
default = 'ردهبندینشده'
}
return '[[رده:درگاههای ' .. (cats[class] or cats['default']) .. ']]'
end
local main_class_defaults = {
['n/a'] = 'ن-م',
['?'] = '؟'
}
local portal_base_links = '[[درگاه:درگاهها|اصلی]]/[[درگاه:نمایه|نمایه]]'
function p._portal_class(args)
local in_portal_ns = (mw.title.getCurrentTitle():inNamespace('Portal'))
local main_class
if args.class == 'none' then
main_class = main_class_defaults['n/a']
elseif args.class then
main_class = '[[Portal:' .. classification({class = args.class}) .. '|' .. string.upper(args.class) .. ']]'
elseif in_portal_ns then
main_class = main_class_defaults['?']
else
main_class = main_class_defaults['n/a']
end
local subclass1 = ''
if args.subclass1 then
subclass1 = '[[Portal:' .. classification({class = args.class, subclass1 = args.subclass1}) .. '|' .. string.upper(args.subclass1) .. ']]'
end
local subclass2 = ''
if args.subclass2 then
subclass2 = '[[Portal:' .. classification({class = args.class, subclass1 = args.subclass1, subclass2 = args.subclass2}) .. '|' .. string.upper(args.subclass2) .. ']]'
end
local box_div = mw.html.create('div')
:addClass('wst-portal-class')
:tag('div')
:addClass('wst-portal-class-title')
:wikitext('رده')
:done()
:tag('div')
:addClass('wst-portal-class-text')
:wikitext(main_class .. subclass1 .. subclass2)
:tag('div')
:addClass('wst-portal-class-base')
:wikitext(portal_base_links)
:done()
:allDone()
-- categorization
if args.class ~= 'none' and in_portal_ns then
box_div:wikitext(portal_categories(args.class))
end
return mw.getCurrentFrame():extensionTag('templatestyles', '', {src = 'Template:Portal Class/styles.css'}) .. tostring(box_div)
end
function p.portal_class(frame)
return p._portal_class(getArgs(frame))
end
return p
lz4aaq8ts75qaex9xvuy35jmqtthq7a
پودمان:Portal parent
828
89773
291034
290947
2026-07-11T17:42:19Z
Hanooz
17889
291034
Scribunto
text/plain
require('strict')
local p = {}
local getArgs = require('Module:Arguments').getArgs
local yesno = require('Module:Yesno')
local classification = require('Module:Library of Congress Classification')._classification
local default_portals = {
['portals'] = '[[درگاه:درگاهها]]',
['index'] = '[[درگاه:نمایه]]'
}
local unclassified_cat = '[[Category:Unclassified portals]]'
local function class_link_text(class, class_text)
return 'رده ' .. string.upper(class) .. ' - [[Portal:' .. class_text .. '|' .. class_text .. ']]'
end
local function subclass_link_text(subclass_text, class_text)
return 'زیررده ' .. string.upper(subclass_text) .. ' - [[Portal:' .. class_text .. '|' .. class_text .. ']]'
end
function p._portal_parent(args)
local current_title = mw.title.getCurrentTitle()
local pagename = current_title.text
local class_text
local class = args.class
local class_link = ''
local cat = ''
if class then
if class ~= 'none' then
class_text = classification({class = class})
if class_text == pagename then
class_link = default_portals['portals']
else
class_link = class_link_text(class, class_text)
end
end
else
class_link = default_portals['index']
if current_title:inNamespace('Portal') then
cat = unclassified_cat
end
end
local subclasses = {}
table.insert(subclasses, args.subclass1)
table.insert(subclasses, args.subclass2)
local subclass_links = {}
local midclass = yesno(args.midclass) or false
local classification_args = {class = class}
for i, subclass in ipairs(subclasses) do
classification_args['subclass' .. i] = subclass
class_text = classification(classification_args)
local subclass_text
if midclass then
subclass_text = subclass
elseif i == #subclasses then
subclass_text = table.concat(subclasses, '', 1, i)
end
if subclass_text then
table.insert(subclass_links, '<br>' .. subclass_link_text(subclass_text, class_text))
end
end
return class_link .. table.concat(subclass_links) .. cat
end
function p.portal_parent(frame)
return p._portal_parent(getArgs(frame))
end
return p
nwa6a03p596vf99w4c4hbs9fc6z83aq
291042
291034
2026-07-11T19:07:24Z
Hanooz
17889
291042
Scribunto
text/plain
require('strict')
local p = {}
local getArgs = require('Module:Arguments').getArgs
local yesno = require('Module:Yesno')
local classification = require('Module:Library of Congress Classification')._classification
local default_portals = {
['portals'] = '[[درگاه:درگاهها]]',
['index'] = '[[درگاه:نمایه]]'
}
local unclassified_cat = '[[رده:درگاههای ردهبندینشده]]'
local function class_link_text(class, class_text)
return 'رده ' .. string.upper(class) .. ' - [[Portal:' .. class_text .. '|' .. class_text .. ']]'
end
local function subclass_link_text(subclass_text, class_text)
return 'زیررده ' .. string.upper(subclass_text) .. ' - [[Portal:' .. class_text .. '|' .. class_text .. ']]'
end
function p._portal_parent(args)
local current_title = mw.title.getCurrentTitle()
local pagename = current_title.text
local class_text
local class = args.class
local class_link = ''
local cat = ''
if class then
if class ~= 'none' then
class_text = classification({class = class})
if class_text == pagename then
class_link = default_portals['portals']
else
class_link = class_link_text(class, class_text)
end
end
else
class_link = default_portals['index']
if current_title:inNamespace('Portal') then
cat = unclassified_cat
end
end
local subclasses = {}
table.insert(subclasses, args.subclass1)
table.insert(subclasses, args.subclass2)
local subclass_links = {}
local midclass = yesno(args.midclass) or false
local classification_args = {class = class}
for i, subclass in ipairs(subclasses) do
classification_args['subclass' .. i] = subclass
class_text = classification(classification_args)
local subclass_text
if midclass then
subclass_text = subclass
elseif i == #subclasses then
subclass_text = table.concat(subclasses, '', 1, i)
end
if subclass_text then
table.insert(subclass_links, '<br>' .. subclass_link_text(subclass_text, class_text))
end
end
return class_link .. table.concat(subclass_links) .. cat
end
function p.portal_parent(frame)
return p._portal_parent(getArgs(frame))
end
return p
7t3jotos4egdzncfrmj191w7j8boxki
پودمان:Library of Congress Classification/data
828
89775
291025
290933
2026-07-11T16:29:03Z
Hanooz
17889
ترجمه هوش مصنوعی
291025
Scribunto
text/plain
return {
a = {
nosubclass = 'آثار عمومی',
-- c
default = {
a = 'مجموعهها',
b = 'مجموعه (سری)',
default = 'آثار جمعی'
},
e = 'دائرةالمعارفها',
g = {
a = 'آثار مرجع',
default = 'فرهنگهای لغت و مراجع عمومی'
},
i = 'نمایهها',
m = {
a = 'مجموعهداران و مجموعهداری',
default = 'موزهها'
},
n = 'روزنامهها',
p = 'نشریات ادواری',
s = 'آکادمیها و انجمنهای علمی',
y = {
a = 'سالنامهها',
b = 'راهنماها (دایرکتوریها)',
default = 'کتابهای سال'
},
z = {
a = 'علوم انسانی',
default = 'تاریخ دانش و آموزش'
}
},
b = {
nosubclass = 'فلسفه، روانشناسی و دین',
default = 'فلسفه عمومی',
c = 'منطق',
d = 'فلسفه نظری',
f = 'روانشناسی',
h = 'زیباییشناسی',
j = 'اخلاق',
l = {
a = 'اسطورهشناسی',
b = 'خردگرایی',
default = 'دین'
},
m = 'یهودیت',
p = {
a = 'آیین بهائی',
b = 'حکمت الهی (تئوسوفی)',
default = 'اسلام'
},
q = 'بودیسم',
r = 'مسیحیت',
s = 'کتاب مقدس',
t = 'الهیات جزمی',
v = 'الهیات عملی',
x = 'فرقههای مسیحی'
},
c = {
nosubclass = 'علوم کمکی تاریخ',
default = 'تاریخ تمدن', -- b
c = 'باستانشناسی',
d = {
a = 'بایگانیها',
b = 'مهرها',
d = 'دیپلماتیک (اسناد رسمی)'
},
e = 'گاهشماری فنی و تقویم',
j = 'سکهشناسی',
n = 'کتیبهها و کتیبهشناسی',
r = 'نشانشناسی (هرالدری)',
s = 'شجرهشناسی',
t = 'زندگینامه'
},
d = {
nosubclass = 'تاریخ جهان',
default = 'تاریخ عمومی',
a = 'تاریخ بریتانیای کبیر',
b = {
a = 'تاریخ لیختناشتاین',
b = 'تاریخ مجارستان',
c = 'تاریخ چکسلواکی',
default = 'تاریخ اتریش'
},
c = {
a = 'تاریخ آندورا',
b = 'تاریخ موناکو',
default = 'تاریخ فرانسه'
},
d = 'تاریخ آلمان',
e = 'تاریخ جهان یونان و روم',
f = 'تاریخ یونان',
g = {
a = 'تاریخ مالت',
default = 'تاریخ ایتالیا'
},
h = 'تاریخ کشورهای پست (بنلوکس)',
j = {
k = 'تاریخ اروپای شرقی',
default = 'تاریخ هلند'
},
k = {
b = 'تاریخ جمهوریهای سابق شوروی',
c = 'تاریخ لهستان',
default = 'تاریخ روسیه'
},
l = 'تاریخ اسکاندیناوی',
p = {
a = 'تاریخ پرتغال',
default = 'تاریخ اسپانیا'
},
q = 'تاریخ سوئیس',
r = 'تاریخ شبهجزیره بالکان',
s = 'تاریخ آسیا',
t = 'تاریخ آفریقا',
u = 'تاریخ اقیانوسیه',
x = 'تاریخ کولیها (رومانیها)'
},
e = 'تاریخ آمریکا',
f = 'تاریخ محلی ایالات متحده',
g = {
nosubclass = 'جغرافیا، مردمشناسی و تفریح',
default = {
a = 'اطلسها و نقشهها',
default = 'جغرافیا'
},
a = {
a = 'نقشهکشی',
default = 'جغرافیای ریاضی'
},
b = 'جغرافیای طبیعی',
c = 'اقیانوسشناسی',
e = 'محیط زیست',
f = 'جغرافیای انسانی',
n = 'مردمشناسی',
r = 'فرهنگ عامه (فولکلور)',
t = 'آداب و رسوم',
v = 'تفریح و اوقات فراغت'
},
h = {
nosubclass = 'علوم اجتماعی',
default = 'علوم اجتماعی عمومی',
a = 'آمار',
b = {
a = 'جمعیتشناسی',
default = 'نظریه اقتصادی'
},
c = 'تاریخ و اوضاع اقتصادی',
d = {
a = 'کاربری زمین',
b = 'کار (نیروی کار)',
default = 'صنایع'
},
e = 'حملونقل و ارتباطات',
f = 'بازرگانی',
g = 'مالیه',
j = 'مالیه عمومی',
m = 'جامعهشناسی',
n = {
a = 'مسائل اجتماعی',
b = 'اصلاحات اجتماعی',
default = 'تاریخ اجتماعی'
},
q = {
a = 'ازدواج',
b = 'زنان',
default = 'خانواده'
},
s = 'انجمنها',
t = {
a = 'طبقات',
b = 'مطالعات نژادی',
default = 'جوامع'
},
v = {
a = 'رفاه اجتماعی و عمومی',
b = 'جرمشناسی',
default = 'آسیبشناسی اجتماعی'
},
x = {
a = 'کمونیسم',
b = 'آنارشیسم',
default = 'سوسیالیسم'
}
},
i = {
nosubclass = 'متون بر اساس کشور',
default = 'متون بر اساس کشور',
c = 'شهرستانها',
n = 'ملتها',
r = 'مناطق',
s = 'ایالتها',
t = 'شهرها و شهرکها',
v = 'روستاها',
z = 'قارهها'
},
j = {
nosubclass = 'علوم سیاسی',
default = 'اسناد عمومی قوه مقننه و مجریه',
a = 'علوم سیاسی عمومی',
c = 'نظریه سیاسی',
f = 'نهادهای سیاسی و اداره عمومی',
j = 'نهادهای سیاسی و اداره عمومی آمریکای شمالی',
k = 'نهادهای سیاسی و اداره عمومی ایالات متحده',
l = 'نهادهای سیاسی و اداره عمومی قاره آمریکا',
n = 'نهادهای سیاسی و اداره عمومی اروپا',
q = 'نهادهای سیاسی و اداره عمومی جهان',
s = 'حکومت محلی',
v = {
a = 'مهاجرت (به داخل و خارج)',
default = 'مستعمرات و استعمار'
},
z = 'روابط بینالملل'
},
k = {
nosubclass = 'حقوق',
default = 'حقوق عمومی', -- a
b = {
m = 'حقوق یهود',
p = 'حقوق اسلامی',
r = 'تاریخ حقوق کلیسایی',
u = 'حقوق کلیسای کاتولیک رومی',
default = 'حقوق مذهبی'
},
c = {
a = 'حقوق آنگویلا',
b = 'حقوق آروبا',
c = 'حقوق باربادوس',
d = 'حقوق بونیر',
e = 'حقوق جزایر لیوارد بریتانیا',
f = 'حقوق جزایر ویرجین بریتانیا',
g = 'حقوق هند غربی بریتانیا',
h = 'حقوق جزایر ویندوارد بریتانیا',
j = 'حقوق دومینیکا',
k = 'حقوق آنتیل هلند',
l = 'حقوق جزایر ویندوارد هلند',
m = 'حقوق هند غربی فرانسه',
n = 'حقوق گرنادا',
p = 'حقوق گوادلوپ',
q = 'حقوق مارتینیک',
r = 'حقوق مونتسرات',
s = 'حقوق سنت کیتس و نویس',
t = 'حقوق سنت لوسیا',
u = 'حقوق سنت وینسنت و گرنادینها',
v = 'حقوق سینت استاتیوس',
w = 'حقوق سینت مارتن',
default = 'حقوق کارائیب' -- default duplicates another subclass to prevent errors
},
d = {
a = 'حقوق بریتانیا',
b = 'حقوق انگلستان',
c = 'حقوق اسکاتلند',
d = 'حقوق ولز',
e = 'حقوق ایرلند شمالی',
g = 'حقوق جزیره من و جزایر مانش',
k = 'حقوق ایرلند',
u = 'تاریخ حقوق در آمریکا',
v = 'سازمان کشورهای آمریکایی',
w = 'حقوق برمودا',
x = 'حقوق گرینلند',
y = 'حقوق سن پیر و میکلن',
z = 'حقوق آمریکای شمالی',
default = 'حقوق بریتانیا و ایرلند'
},
e = {
a = 'حقوق آلبرتا',
b = 'حقوق بریتیش کلمبیا',
j = 'حقوق نیوفاندلند',
k = 'حقوق قلمروهای شمال غربی',
l = 'حقوق نوا اسکوشیا',
m = 'حقوق مانیتوبا',
n = 'حقوق نیوبرانزویک',
o = 'حقوق انتاریو',
p = 'حقوق جزیره پرنس ادوارد',
q = 'حقوق کبک',
s = 'حقوق ساسکاچوان',
y = 'حقوق قلمرو یوکان',
z = 'حقوق شهرداری کانادا',
default = 'حقوق کانادا'
},
f = {
a = 'حقوق فدرال ایالات متحده',
b = 'حقوق ایالتی ایالات متحده',
x = 'حقوق شهرداری ایالات متحده',
y = 'حقوق قلمرو شمال غربی ایالات متحده',
z = 'حقوق ایالات کنفدره آمریکا',
default = 'حقوق ایالات متحده'
},
g = {
a = 'حقوق بلیز',
b = 'حقوق کاستاریکا',
c = 'حقوق السالوادور',
d = 'حقوق گواتمالا',
e = 'حقوق هندوراس',
f = 'حقوق مکزیک',
g = 'حقوق نیکاراگوئه',
h = 'حقوق پاناما',
i = 'حقوق منطقه کانال پاناما',
j = 'حقوق کارائیب',
k = 'حقوق آنتیگوا و باربودا',
l = 'حقوق باهاما',
m = 'حقوق جزایر کیمن',
n = 'حقوق کوبا',
p = 'حقوق کوراسائو',
q = 'حقوق جمهوری دومینیکن',
r = 'حقوق جزایر لیوارد هلند',
s = 'حقوق هائیتی',
t = 'حقوق جامائیکا',
u = 'حقوق جزیره ناواسا',
v = 'حقوق پورتوریکو',
w = 'حقوق سابا',
x = 'حقوق ترینیداد و توباگو',
y = 'حقوق جزایر تورکس و کایکوس',
z = 'حقوق جزایر ویرجین ایالات متحده',
default = 'حقوق آمریکای لاتین'
},
h = {
a = 'حقوق آرژانتین',
c = 'حقوق بولیوی',
d = 'حقوق برزیل',
f = 'حقوق شیلی',
h = 'حقوق کلمبیا',
k = 'حقوق اکوادور',
l = 'حقوق جزایر فالکلند',
m = 'حقوق گویان فرانسه',
n = 'حقوق گویان',
p = 'حقوق پاراگوئه',
q = 'حقوق پرو',
s = 'حقوق سورینام',
u = 'حقوق اروگوئه',
w = 'حقوق ونزوئلا',
default = 'حقوق آمریکای جنوبی'
},
j = {
a = 'حقوق روم',
b = 'تاریخ حقوق در اروپا',
c = 'حقوق تطبیقی و یکسان منطقهای اروپا',
d = 'حقوق ژرمنی',
e = 'سازمان و همگرایی منطقهای اروپا',
g = 'حقوق آلبانی',
h = 'حقوق آندورا',
j = 'حقوق اتریش',
k = 'حقوق بلژیک',
m = 'حقوق بلغارستان',
n = 'حقوق قبرس',
p = 'حقوق جمهوری چک',
q = 'حقوق اسلواکی',
r = 'حقوق دانمارک',
s = 'حقوق استونی',
t = 'حقوق فنلاند',
u = 'حقوق فرانسه',
v = 'حقوق ملی فرانسه',
w = 'حقوق منطقهای فرانسه',
default = 'حقوق اروپا'
},
k = {
a = 'حقوق آلمان شرقی',
b = 'حقوق منطقهای آلمان',
e = 'حقوق یونان',
f = 'حقوق مجارستان',
g = 'حقوق ایسلند',
h = 'حقوق ایتالیا',
i = 'حقوق لتونی',
j = 'حقوق لیختناشتاین',
k = 'حقوق لوکزامبورگ',
l = 'حقوق موناکو',
m = 'حقوق هلند',
n = 'حقوق نروژ',
o = 'حقوق مالت',
p = 'حقوق لهستان',
q = 'حقوق پرتغال',
r = 'حقوق رومانی',
s = 'حقوق سان مارینو',
t = 'حقوق اسپانیا',
v = 'حقوق سوئد',
w = 'حقوق سوئیس',
x = 'حقوق ترکیه',
y = 'حقوق اوکراین',
z = 'حقوق یوگسلاوی',
default = 'حقوق آلمان'
},
l = {
a = 'حقوق روسیه تزاری و شوروی',
b = 'حقوق روسیه',
d = 'حقوق جمهوری شوروی سوسیالیستی ارمنستان',
e = 'حقوق آذربایجان',
f = 'حقوق بلاروس',
h = 'حقوق گرجستان (کشور)',
j = 'حقوق لیتوانی',
m = 'حقوق مولداوی',
n = 'حقوق جمهوری فدراتیو سوسیالیستی شوروی روسیه',
o = 'حقوق جمهوری فدرال سوسیالیستی شوروی ماوراء قفقاز',
p = 'حقوق اوکراین',
q = 'حقوق جمهوری شوروی خلق بخارا',
r = 'حقوق قزاقستان',
s = 'حقوق قرقیزستان',
t = 'حقوق تاجیکستان',
u = 'حقوق جمهوری شوروی سوسیالیستی خوارزم',
v = 'حقوق ترکمنستان',
w = 'حقوق ازبکستان',
default = 'تاریخ حقوق در آسیا'
},
m = {
a = 'حقوق خاورمیانه',
b = 'حقوق بحرین',
c = 'حقوق تطبیقی و یکسان منطقهای خاورمیانه',
e = 'سازمان و همگرایی منطقهای خاورمیانه',
f = 'حقوق ارمنستان',
g = 'حقوق فلسطین',
h = 'حقوق ایران',
j = 'حقوق عراق',
k = 'حقوق اسرائیل',
l = 'حقوق اورشلیم',
m = 'حقوق اردن',
n = 'حقوق کویت',
p = 'حقوق لبنان',
q = 'حقوق عمان',
s = 'حقوق قطر',
t = 'حقوق عربستان سعودی',
u = 'حقوق سوریه',
v = 'حقوق امارات متحده عربی',
x = 'حقوق یمن',
y = 'حقوق جمهوری دموکراتیک خلق یمن',
default = 'حقوق آسیا'
},
n = {
c = 'حقوق تطبیقی و یکسان منطقهای جنوب شرق آسیا',
e = 'سازمان و همگرایی منطقهای جنوب شرق آسیا',
f = 'حقوق افغانستان',
g = 'حقوق بنگلادش',
h = 'حقوق بوتان',
k = 'حقوق برونئی',
l = 'حقوق برمه',
m = 'حقوق کامبوج',
n = 'حقوق چین امپراتوری',
p = 'حقوق جمهوری چین',
q = 'حقوق چین',
r = 'حقوق هنگکنگ',
s = 'حقوق هند',
t = 'حقوق ایالتی هند',
u = 'حقوق شهرداری هند',
v = 'حقوق هندوچین فرانسه',
w = 'حقوق اندونزی',
x = 'حقوق ژاپن',
y = 'حقوق شهرداری ژاپن',
default = 'حقوق جنوب شرق آسیا'
},
p = {
a = 'حقوق کره جنوبی',
c = 'حقوق کره شمالی',
e = 'حقوق لائوس',
f = 'حقوق ماکائو',
g = 'حقوق مالزی',
h = 'حقوق ایالتهای مالزی شرقی و غربی',
i = 'حقوق مالدیو',
j = 'حقوق مغولستان',
k = 'حقوق نپال',
l = 'حقوق پاکستان',
m = 'حقوق فیلیپین',
p = 'حقوق سنگاپور',
s = 'حقوق سریلانکا',
t = 'حقوق تایلند',
v = 'حقوق ویتنام',
w = 'حقوق ویتنام جنوبی',
default = 'حقوق جنوب شرق آسیا' -- default duplicates another subclass to prevent errors
},
q = {
a = 'تاریخ حقوق در آفریقا',
c = 'حقوق تطبیقی و یکسان منطقهای آفریقا',
e = 'سازمان و همگرایی منطقهای آفریقا',
g = 'حقوق الجزایر',
h = 'حقوق آنگولا',
j = 'حقوق بنین',
k = 'حقوق بوتسوانا',
m = 'حقوق تحتالحمایه آفریقای مرکزی بریتانیا',
p = 'حقوق قلمرو بریتانیایی اقیانوس هند',
q = 'حقوق سومالیلند بریتانیا',
t = 'حقوق بورکینافاسو',
v = 'حقوق بوروندی',
w = 'حقوق کامرون',
x = 'حقوق کیپ ورد',
default = 'حقوق آفریقا'
},
r = {
b = 'حقوق جمهوری آفریقای مرکزی',
c = 'حقوق چاد',
e = 'حقوق کومور',
g = 'حقوق کنگو',
k = 'حقوق جیبوتی',
l = 'حقوق تحتالحمایه آفریقای شرقی',
m = 'حقوق مصر',
n = 'حقوق اریتره',
p = 'حقوق اتیوپی',
r = 'حقوق آفریقای استوایی فرانسه',
s = 'حقوق آفریقای غربی فرانسه',
u = 'حقوق گابن',
v = 'حقوق گامبیا',
w = 'حقوق آفریقای شرقی آلمان',
x = 'حقوق غنا',
y = 'حقوق جبلالطارق',
default = 'حقوق آفریقا' -- default duplicates another subclass to prevent errors
},
s = {
a = 'حقوق گینه',
c = 'حقوق گینه بیسائو',
e = 'حقوق گینه استوایی',
f = 'حقوق ایفنی',
g = 'حقوق آفریقای شرقی ایتالیا',
h = 'حقوق ساحل عاج',
i = 'حقوق سومالیلند ایتالیا',
k = 'حقوق کنیا',
l = 'حقوق لسوتو',
m = 'حقوق مایوت',
n = 'حقوق لیبریا',
p = 'حقوق لیبی',
r = 'حقوق ماداگاسکار',
s = 'حقوق مالاوی',
t = 'حقوق مالی',
t = 'حقوق میکرونزی',
u = 'حقوق موریتانی',
v = 'حقوق موریس',
v = 'حقوق جزایر میدوی',
w = 'حقوق مراکش',
x = 'حقوق موزامبیک',
y = 'حقوق نامیبیا',
z = 'حقوق نیجر',
default = 'حقوق آفریقا' -- default duplicates another subclass to prevent errors
},
t = {
a = 'حقوق نیجریه',
c = 'حقوق رئونیون',
d = 'حقوق رواندا',
e = 'حقوق سنت هلنا',
f = 'حقوق سائوتومه و پرینسیپ',
g = 'حقوق سنگال',
h = 'حقوق سیشل',
j = 'حقوق سیرالئون',
k = 'حقوق سومالی',
l = 'حقوق آفریقای جنوبی',
n = 'حقوق آفریقای غربی اسپانیا',
o = 'حقوق صحرای اسپانیا',
q = 'حقوق سودان',
r = 'حقوق سوازیلند',
s = 'حقوق زنگبار',
t = 'حقوق تانزانیا',
u = 'حقوق توگو',
v = 'حقوق تونس',
w = 'حقوق اوگاندا',
x = 'حقوق زئیر',
y = 'حقوق زامبیا',
z = 'حقوق زیمبابوه',
default = 'حقوق آفریقا' -- default duplicates another subclass to prevent errors
},
u = {
a = 'حقوق استرالیا',
b = 'حقوق نیوساوتولز',
c = 'حقوق قلمرو شمالی',
d = 'حقوق کوئینزلند',
e = 'حقوق استرالیای جنوبی',
f = 'حقوق تاسمانی',
g = 'حقوق ویکتوریا',
h = 'حقوق استرالیای غربی',
i = 'حقوق جزایر اشمور و کارتیه',
j = 'حقوق جزیره کریسمس',
k = 'حقوق جزایر کوکوس (کیلینگ)',
l = 'حقوق قلمرو جزایر دریای مرجانی',
n = 'حقوق جزیره نورفولک',
q = 'حقوق نیوزیلند',
default = 'حقوق اقیانوسیه'
},
v = {
a = 'تاریخ حقوق در اقیانوسیه',
b = 'حقوق تطبیقی و یکسان منطقهای استرالیا و نیوزیلند',
c = 'حقوق تطبیقی و یکسان منطقهای اقیانوسیه',
e = 'سازمان و همگرایی منطقهای اقیانوسیه',
h = 'حقوق ساموآی آمریکا',
j = 'حقوق گینه نو بریتانیا',
l = 'حقوق جزایر کوک',
m = 'حقوق جزیره ایستر',
n = 'حقوق فیجی',
o = 'حقوق گینه نو آلمان',
p = 'حقوق پلینزی فرانسه',
q = 'حقوق گوام',
r = 'حقوق کیریباتی',
s = 'حقوق جزایر مارشال',
u = 'حقوق نائورو',
w = 'حقوق کالدونیای جدید',
x = 'حقوق گینه نو هلند',
default = 'حقوق اقیانوسیه' -- default duplicates another subclass to prevent errors
},
w = {
a = 'حقوق نیوئه',
c = 'حقوق جزایر ماریانای شمالی',
e = 'حقوق قلمرو تحت قیمومیت جزایر اقیانوس آرام',
g = 'حقوق پالائو',
h = 'حقوق پاپوآ گینه نو',
l = 'حقوق جزیره پیتکرن',
m = 'حقوق جزایر سلیمان',
p = 'حقوق تونگا',
q = 'حقوق تووالو',
r = 'حقوق وانواتو',
t = 'حقوق جزیره ویک',
u = 'حقوق والیس و فوتونا',
w = 'حقوق ساموآی غربی',
x = 'حقوق قطب جنوب',
default = 'حقوق اقیانوسیه' -- default duplicates another subclass to prevent errors
},
z = {
a = 'حقوق دریاها',
d = 'حقوق فضای ماورای جو',
default = 'حقوق بینالملل (حقوق ملل)'
}
},
l = {
nosubclass = 'آموزش',
default = 'آموزش عمومی',
a = 'تاریخ آموزش',
b = 'نظریه و عمل آموزش',
c = 'جنبههای ویژه آموزش',
d = 'نهادهای آموزشی ایالات متحده',
e = 'نهادهای آموزشی آمریکا',
f = 'نهادهای آموزشی اروپا',
g = 'نهادهای آموزشی جهان',
h = 'مجلات و نشریات دانشگاهی و مدرسهای',
j = 'انجمنها و برادریهای دانشجویی',
t = 'کتابهای درسی'
},
m = {
nosubclass = 'موسیقی',
default = 'موسیقی عمومی',
l = 'ادبیات موسیقی',
t = 'آموزش و مطالعه موسیقی'
},
n = {
nosubclass = 'هنرهای زیبا',
default = 'هنرهای تجسمی',
a = 'معماری',
b = 'مجسمهسازی',
c = 'طراحی، دیزاین و تصویرسازی',
d = 'نقاشی',
e = 'رسانههای چاپی',
k = 'هنرهای تزئینی',
x = 'هنر بهطور کلی'
},
p = {
nosubclass = 'زبان و ادبیات',
default = 'زبانشناسی و فقهاللغه',
a = {
a = 'زبان و ادبیات لاتین',
default = 'زبان و ادبیات یونانی'
},
b = {
a = 'زبانهای سلتی',
default = 'زبانهای نوین'
},
c = 'زبانهای رومی (رومانس)',
d = {
a = 'زبانهای اسکاندیناوی',
default = 'زبانهای ژرمنی'
},
e = 'زبان انگلیسی',
f = 'زبانهای ژرمنی غربی',
g = {
a = 'زبانهای بالتیک',
b = 'زبان آلبانیایی',
default = 'زبانها و ادبیات اسلاوی'
},
h = {
a = 'زبان و ادبیات باسکی',
default = 'زبانهای اورالی'
},
j = 'زبانها و ادبیات شرقی',
k = 'زبانها و ادبیات هند و ایرانی',
l = {
a = 'زبانها و ادبیات آفریقا',
b = 'زبانها و ادبیات اقیانوسیه',
default = 'زبانها و ادبیات آسیای شرقی'
},
m = {
a = 'زبانهای بومی آمریکا',
b = 'زبانهای مصنوعی',
default = 'زبانهای هایپربورئن'
},
n = 'ادبیات عمومی',
q = 'ادبیات رومی (رومانس)',
r = 'ادبیات انگلیسی',
s = 'ادبیات آمریکایی',
t = 'ادبیات ژرمنی',
z = 'داستان و ادبیات نوجوانان'
},
q = {
nosubclass = 'علوم',
default = 'علوم عمومی',
a = 'ریاضیات',
b = 'نجوم',
c = 'فیزیک',
d = 'شیمی',
e = 'زمینشناسی',
h = 'تاریخ طبیعی و زیستشناسی',
k = 'گیاهشناسی',
l = 'جانورشناسی',
m = 'کالبدشناسی انسان',
p = 'فیزیولوژی',
r = 'میکروبشناسی'
},
r = {
nosubclass = 'پزشکی',
default = 'پزشکی عمومی',
a = 'جنبههای عمومی پزشکی',
b = 'آسیبشناسی',
c = 'طب داخلی',
d = 'جراحی',
e = 'چشمپزشکی',
f = 'گوش و حلق و بینی',
g = 'زنان و زایمان',
j = 'کودکان (اطفال)',
k = 'دندانپزشکی',
l = 'پوست',
m = {
a = 'داروشناسی',
default = 'درمانشناسی'
},
s = 'داروسازی و مواد دارویی',
t = 'پرستاری',
v = 'طب گیاهی، تامسونی و التقاطی',
x = 'هومیوپاتی',
z = 'سایر نظامهای پزشکی'
},
s = {
nosubclass = 'کشاورزی',
default = 'کشاورزی عمومی', -- a
b = 'زراعت گیاهان',
d = 'جنگلداری',
f = 'دامپروری',
h = {
a = 'ماهیگیری با قلاب',
default = 'آبزیپروری و شیلات'
},
k = 'شکار (ورزشی)'
},
t = {
nosubclass = 'فناوری',
default = 'فناوری عمومی',
a = 'مهندسی عمران',
c = {
a = 'مهندسی دریا',
default = 'مهندسی هیدرولیک'
},
d = {
a = 'مهندسی بهداشت',
default = 'فناوری محیطزیست'
},
e = 'مهندسی راه',
f = 'مهندسی و بهرهبرداری راهآهن',
g = 'مهندسی پل',
h = 'ساختوساز بنا',
j = 'مهندسی مکانیک و ماشینآلات',
k = {
a = 'الکترونیک',
b = 'مهندسی هستهای',
default = 'مهندسی برق'
},
l = {
a = 'هوانوردی',
b = 'فضانوردی',
default = 'خودروها'
},
n = {
a = 'متالورژی',
default = 'مهندسی معدن'
},
p = 'فناوری شیمیایی',
r = 'عکاسی',
s = 'صنایع تولیدی',
t = 'صنایع دستی و هنرهای دستی',
x = 'اقتصاد خانه (خانهداری)'
},
u = {
nosubclass = 'علوم نظامی',
default = 'علوم نظامی عمومی',
a = 'ارتشها',
b = 'مدیریت نظامی',
c = 'نگهداری و حملونقل',
d = 'پیادهنظام',
e = 'سوارهنظام',
f = 'توپخانه',
g = {
a = 'نیروی هوایی',
default = 'مهندسی نظامی'
},
h = 'سایر خدمات نظامی'
},
v = {
nosubclass = 'علوم دریایی',
default = 'علوم دریایی عمومی',
a = 'نیروهای دریایی',
b = 'مدیریت نیروی دریایی',
c = 'نگهداری نیروی دریایی',
d = 'ملوانان نیروی دریایی',
e = 'تفنگداران دریایی',
f = 'تسلیحات دریایی',
g = 'خدمات فرعی نیروی دریایی',
k = {
a = 'ناوگان تجاری',
default = 'ناوبری (کشتیرانی)'
},
m = 'کشتیسازی و معماری دریایی'
},
x = {
nosubclass = 'ویکیسورس',
default = 'ویکیپروژهها', -- a
e = 'دوره (عصر)',
p = 'فرایندها',
y = 'سالها'
},
z = {
nosubclass = 'کتابشناسی و علم کتابداری',
default = 'منابع اطلاعاتی', -- a
b = 'کتابها',
c = 'نگارش (نوشتار)',
d = 'باستاننوشتشناسی (پالئوگرافی)',
e = 'صنایع و تجارت کتاب',
f = 'کتابخانهها',
g = 'کتابشناسی'
},
default = 'نمایه'
}
b3gkulg6qwrhqfx63q32bexgof717cm
291038
291025
2026-07-11T18:04:13Z
Hanooz
17889
291038
Scribunto
text/plain
return {
a = {
nosubclass = 'کلیات',
-- c
default = {
a = 'مجموعهها',
b = 'مجموعه (سری)',
default = 'آثار جمعی'
},
e = 'دائرةالمعارفها',
g = {
a = 'آثار مرجع',
default = 'واژهنامهها و مراجع عمومی'
},
i = 'نمایهها',
m = {
a = 'مجموعهداران و مجموعهداری',
default = 'موزهها'
},
n = 'روزنامهها',
p = 'نشریات ادواری',
s = 'آکادمیها و انجمنهای علمی',
y = {
a = 'سالنامهها',
b = 'راهنماها (دایرکتوریها)',
default = 'کتابهای سال'
},
z = {
a = 'علوم انسانی',
default = 'تاریخ دانش و آموزش'
}
},
b = {
nosubclass = 'فلسفه، روانشناسی و دین',
default = 'فلسفه عمومی',
c = 'منطق',
d = 'فلسفه نظری',
f = 'روانشناسی',
h = 'زیباییشناسی',
j = 'اخلاق',
l = {
a = 'اسطورهشناسی',
b = 'خردگرایی',
default = 'دین'
},
m = 'یهودیت',
p = {
a = 'آیین بهائی',
b = 'حکمت الهی (تئوسوفی)',
default = 'اسلام'
},
q = 'بودیسم',
r = 'مسیحیت',
s = 'کتاب مقدس',
t = 'الهیات جزمی',
v = 'الهیات عملی',
x = 'فرقههای مسیحی'
},
c = {
nosubclass = 'علوم کمکی تاریخ',
default = 'تاریخ تمدن', -- b
c = 'باستانشناسی',
d = {
a = 'بایگانیها',
b = 'مهرها',
d = 'دیپلماتیک (اسناد رسمی)'
},
e = 'گاهشماری فنی و تقویم',
j = 'سکهشناسی',
n = 'کتیبهها و کتیبهشناسی',
r = 'نشانشناسی (هرالدری)',
s = 'شجرهشناسی',
t = 'زندگینامه'
},
d = {
nosubclass = 'تاریخ جهان',
default = 'تاریخ عمومی',
a = 'تاریخ بریتانیای کبیر',
b = {
a = 'تاریخ لیختناشتاین',
b = 'تاریخ مجارستان',
c = 'تاریخ چکسلواکی',
default = 'تاریخ اتریش'
},
c = {
a = 'تاریخ آندورا',
b = 'تاریخ موناکو',
default = 'تاریخ فرانسه'
},
d = 'تاریخ آلمان',
e = 'تاریخ جهان یونان و روم',
f = 'تاریخ یونان',
g = {
a = 'تاریخ مالت',
default = 'تاریخ ایتالیا'
},
h = 'تاریخ کشورهای پست (بنلوکس)',
j = {
k = 'تاریخ اروپای شرقی',
default = 'تاریخ هلند'
},
k = {
b = 'تاریخ جمهوریهای سابق شوروی',
c = 'تاریخ لهستان',
default = 'تاریخ روسیه'
},
l = 'تاریخ اسکاندیناوی',
p = {
a = 'تاریخ پرتغال',
default = 'تاریخ اسپانیا'
},
q = 'تاریخ سوئیس',
r = 'تاریخ شبهجزیره بالکان',
s = 'تاریخ آسیا',
t = 'تاریخ آفریقا',
u = 'تاریخ اقیانوسیه',
x = 'تاریخ کولیها (رومانیها)'
},
e = 'تاریخ آمریکا',
f = 'تاریخ محلی ایالات متحده',
g = {
nosubclass = 'جغرافیا، مردمشناسی و تفریح',
default = {
a = 'اطلسها و نقشهها',
default = 'جغرافیا'
},
a = {
a = 'نقشهکشی',
default = 'جغرافیای ریاضی'
},
b = 'جغرافیای طبیعی',
c = 'اقیانوسشناسی',
e = 'محیط زیست',
f = 'جغرافیای انسانی',
n = 'مردمشناسی',
r = 'فرهنگ عامه (فولکلور)',
t = 'آداب و رسوم',
v = 'تفریح و اوقات فراغت'
},
h = {
nosubclass = 'علوم اجتماعی',
default = 'علوم اجتماعی عمومی',
a = 'آمار',
b = {
a = 'جمعیتشناسی',
default = 'نظریه اقتصادی'
},
c = 'تاریخ و اوضاع اقتصادی',
d = {
a = 'کاربری زمین',
b = 'کار (نیروی کار)',
default = 'صنایع'
},
e = 'حملونقل و ارتباطات',
f = 'بازرگانی',
g = 'مالیه',
j = 'مالیه عمومی',
m = 'جامعهشناسی',
n = {
a = 'مسائل اجتماعی',
b = 'اصلاحات اجتماعی',
default = 'تاریخ اجتماعی'
},
q = {
a = 'ازدواج',
b = 'زنان',
default = 'خانواده'
},
s = 'انجمنها',
t = {
a = 'طبقات',
b = 'مطالعات نژادی',
default = 'جوامع'
},
v = {
a = 'رفاه اجتماعی و عمومی',
b = 'جرمشناسی',
default = 'آسیبشناسی اجتماعی'
},
x = {
a = 'کمونیسم',
b = 'آنارشیسم',
default = 'سوسیالیسم'
}
},
i = {
nosubclass = 'متون بر اساس کشور',
default = 'متون بر اساس کشور',
c = 'شهرستانها',
n = 'ملتها',
r = 'مناطق',
s = 'ایالتها',
t = 'شهرها و شهرکها',
v = 'روستاها',
z = 'قارهها'
},
j = {
nosubclass = 'علوم سیاسی',
default = 'اسناد عمومی قوه مقننه و مجریه',
a = 'علوم سیاسی عمومی',
c = 'نظریه سیاسی',
f = 'نهادهای سیاسی و اداره عمومی',
j = 'نهادهای سیاسی و اداره عمومی آمریکای شمالی',
k = 'نهادهای سیاسی و اداره عمومی ایالات متحده',
l = 'نهادهای سیاسی و اداره عمومی قاره آمریکا',
n = 'نهادهای سیاسی و اداره عمومی اروپا',
q = 'نهادهای سیاسی و اداره عمومی جهان',
s = 'حکومت محلی',
v = {
a = 'مهاجرت (به داخل و خارج)',
default = 'مستعمرات و استعمار'
},
z = 'روابط بینالملل'
},
k = {
nosubclass = 'حقوق',
default = 'حقوق عمومی', -- a
b = {
m = 'حقوق یهود',
p = 'حقوق اسلامی',
r = 'تاریخ حقوق کلیسایی',
u = 'حقوق کلیسای کاتولیک رومی',
default = 'حقوق مذهبی'
},
c = {
a = 'حقوق آنگویلا',
b = 'حقوق آروبا',
c = 'حقوق باربادوس',
d = 'حقوق بونیر',
e = 'حقوق جزایر لیوارد بریتانیا',
f = 'حقوق جزایر ویرجین بریتانیا',
g = 'حقوق هند غربی بریتانیا',
h = 'حقوق جزایر ویندوارد بریتانیا',
j = 'حقوق دومینیکا',
k = 'حقوق آنتیل هلند',
l = 'حقوق جزایر ویندوارد هلند',
m = 'حقوق هند غربی فرانسه',
n = 'حقوق گرنادا',
p = 'حقوق گوادلوپ',
q = 'حقوق مارتینیک',
r = 'حقوق مونتسرات',
s = 'حقوق سنت کیتس و نویس',
t = 'حقوق سنت لوسیا',
u = 'حقوق سنت وینسنت و گرنادینها',
v = 'حقوق سینت استاتیوس',
w = 'حقوق سینت مارتن',
default = 'حقوق کارائیب' -- default duplicates another subclass to prevent errors
},
d = {
a = 'حقوق بریتانیا',
b = 'حقوق انگلستان',
c = 'حقوق اسکاتلند',
d = 'حقوق ولز',
e = 'حقوق ایرلند شمالی',
g = 'حقوق جزیره من و جزایر مانش',
k = 'حقوق ایرلند',
u = 'تاریخ حقوق در آمریکا',
v = 'سازمان کشورهای آمریکایی',
w = 'حقوق برمودا',
x = 'حقوق گرینلند',
y = 'حقوق سن پیر و میکلن',
z = 'حقوق آمریکای شمالی',
default = 'حقوق بریتانیا و ایرلند'
},
e = {
a = 'حقوق آلبرتا',
b = 'حقوق بریتیش کلمبیا',
j = 'حقوق نیوفاندلند',
k = 'حقوق قلمروهای شمال غربی',
l = 'حقوق نوا اسکوشیا',
m = 'حقوق مانیتوبا',
n = 'حقوق نیوبرانزویک',
o = 'حقوق انتاریو',
p = 'حقوق جزیره پرنس ادوارد',
q = 'حقوق کبک',
s = 'حقوق ساسکاچوان',
y = 'حقوق قلمرو یوکان',
z = 'حقوق شهرداری کانادا',
default = 'حقوق کانادا'
},
f = {
a = 'حقوق فدرال ایالات متحده',
b = 'حقوق ایالتی ایالات متحده',
x = 'حقوق شهرداری ایالات متحده',
y = 'حقوق قلمرو شمال غربی ایالات متحده',
z = 'حقوق ایالات کنفدره آمریکا',
default = 'حقوق ایالات متحده'
},
g = {
a = 'حقوق بلیز',
b = 'حقوق کاستاریکا',
c = 'حقوق السالوادور',
d = 'حقوق گواتمالا',
e = 'حقوق هندوراس',
f = 'حقوق مکزیک',
g = 'حقوق نیکاراگوئه',
h = 'حقوق پاناما',
i = 'حقوق منطقه کانال پاناما',
j = 'حقوق کارائیب',
k = 'حقوق آنتیگوا و باربودا',
l = 'حقوق باهاما',
m = 'حقوق جزایر کیمن',
n = 'حقوق کوبا',
p = 'حقوق کوراسائو',
q = 'حقوق جمهوری دومینیکن',
r = 'حقوق جزایر لیوارد هلند',
s = 'حقوق هائیتی',
t = 'حقوق جامائیکا',
u = 'حقوق جزیره ناواسا',
v = 'حقوق پورتوریکو',
w = 'حقوق سابا',
x = 'حقوق ترینیداد و توباگو',
y = 'حقوق جزایر تورکس و کایکوس',
z = 'حقوق جزایر ویرجین ایالات متحده',
default = 'حقوق آمریکای لاتین'
},
h = {
a = 'حقوق آرژانتین',
c = 'حقوق بولیوی',
d = 'حقوق برزیل',
f = 'حقوق شیلی',
h = 'حقوق کلمبیا',
k = 'حقوق اکوادور',
l = 'حقوق جزایر فالکلند',
m = 'حقوق گویان فرانسه',
n = 'حقوق گویان',
p = 'حقوق پاراگوئه',
q = 'حقوق پرو',
s = 'حقوق سورینام',
u = 'حقوق اروگوئه',
w = 'حقوق ونزوئلا',
default = 'حقوق آمریکای جنوبی'
},
j = {
a = 'حقوق روم',
b = 'تاریخ حقوق در اروپا',
c = 'حقوق تطبیقی و یکسان منطقهای اروپا',
d = 'حقوق ژرمنی',
e = 'سازمان و همگرایی منطقهای اروپا',
g = 'حقوق آلبانی',
h = 'حقوق آندورا',
j = 'حقوق اتریش',
k = 'حقوق بلژیک',
m = 'حقوق بلغارستان',
n = 'حقوق قبرس',
p = 'حقوق جمهوری چک',
q = 'حقوق اسلواکی',
r = 'حقوق دانمارک',
s = 'حقوق استونی',
t = 'حقوق فنلاند',
u = 'حقوق فرانسه',
v = 'حقوق ملی فرانسه',
w = 'حقوق منطقهای فرانسه',
default = 'حقوق اروپا'
},
k = {
a = 'حقوق آلمان شرقی',
b = 'حقوق منطقهای آلمان',
e = 'حقوق یونان',
f = 'حقوق مجارستان',
g = 'حقوق ایسلند',
h = 'حقوق ایتالیا',
i = 'حقوق لتونی',
j = 'حقوق لیختناشتاین',
k = 'حقوق لوکزامبورگ',
l = 'حقوق موناکو',
m = 'حقوق هلند',
n = 'حقوق نروژ',
o = 'حقوق مالت',
p = 'حقوق لهستان',
q = 'حقوق پرتغال',
r = 'حقوق رومانی',
s = 'حقوق سان مارینو',
t = 'حقوق اسپانیا',
v = 'حقوق سوئد',
w = 'حقوق سوئیس',
x = 'حقوق ترکیه',
y = 'حقوق اوکراین',
z = 'حقوق یوگسلاوی',
default = 'حقوق آلمان'
},
l = {
a = 'حقوق روسیه تزاری و شوروی',
b = 'حقوق روسیه',
d = 'حقوق جمهوری شوروی سوسیالیستی ارمنستان',
e = 'حقوق آذربایجان',
f = 'حقوق بلاروس',
h = 'حقوق گرجستان (کشور)',
j = 'حقوق لیتوانی',
m = 'حقوق مولداوی',
n = 'حقوق جمهوری فدراتیو سوسیالیستی شوروی روسیه',
o = 'حقوق جمهوری فدرال سوسیالیستی شوروی ماوراء قفقاز',
p = 'حقوق اوکراین',
q = 'حقوق جمهوری شوروی خلق بخارا',
r = 'حقوق قزاقستان',
s = 'حقوق قرقیزستان',
t = 'حقوق تاجیکستان',
u = 'حقوق جمهوری شوروی سوسیالیستی خوارزم',
v = 'حقوق ترکمنستان',
w = 'حقوق ازبکستان',
default = 'تاریخ حقوق در آسیا'
},
m = {
a = 'حقوق خاورمیانه',
b = 'حقوق بحرین',
c = 'حقوق تطبیقی و یکسان منطقهای خاورمیانه',
e = 'سازمان و همگرایی منطقهای خاورمیانه',
f = 'حقوق ارمنستان',
g = 'حقوق فلسطین',
h = 'حقوق ایران',
j = 'حقوق عراق',
k = 'حقوق اسرائیل',
l = 'حقوق اورشلیم',
m = 'حقوق اردن',
n = 'حقوق کویت',
p = 'حقوق لبنان',
q = 'حقوق عمان',
s = 'حقوق قطر',
t = 'حقوق عربستان سعودی',
u = 'حقوق سوریه',
v = 'حقوق امارات متحده عربی',
x = 'حقوق یمن',
y = 'حقوق جمهوری دموکراتیک خلق یمن',
default = 'حقوق آسیا'
},
n = {
c = 'حقوق تطبیقی و یکسان منطقهای جنوب شرق آسیا',
e = 'سازمان و همگرایی منطقهای جنوب شرق آسیا',
f = 'حقوق افغانستان',
g = 'حقوق بنگلادش',
h = 'حقوق بوتان',
k = 'حقوق برونئی',
l = 'حقوق برمه',
m = 'حقوق کامبوج',
n = 'حقوق چین امپراتوری',
p = 'حقوق جمهوری چین',
q = 'حقوق چین',
r = 'حقوق هنگکنگ',
s = 'حقوق هند',
t = 'حقوق ایالتی هند',
u = 'حقوق شهرداری هند',
v = 'حقوق هندوچین فرانسه',
w = 'حقوق اندونزی',
x = 'حقوق ژاپن',
y = 'حقوق شهرداری ژاپن',
default = 'حقوق جنوب شرق آسیا'
},
p = {
a = 'حقوق کره جنوبی',
c = 'حقوق کره شمالی',
e = 'حقوق لائوس',
f = 'حقوق ماکائو',
g = 'حقوق مالزی',
h = 'حقوق ایالتهای مالزی شرقی و غربی',
i = 'حقوق مالدیو',
j = 'حقوق مغولستان',
k = 'حقوق نپال',
l = 'حقوق پاکستان',
m = 'حقوق فیلیپین',
p = 'حقوق سنگاپور',
s = 'حقوق سریلانکا',
t = 'حقوق تایلند',
v = 'حقوق ویتنام',
w = 'حقوق ویتنام جنوبی',
default = 'حقوق جنوب شرق آسیا' -- default duplicates another subclass to prevent errors
},
q = {
a = 'تاریخ حقوق در آفریقا',
c = 'حقوق تطبیقی و یکسان منطقهای آفریقا',
e = 'سازمان و همگرایی منطقهای آفریقا',
g = 'حقوق الجزایر',
h = 'حقوق آنگولا',
j = 'حقوق بنین',
k = 'حقوق بوتسوانا',
m = 'حقوق تحتالحمایه آفریقای مرکزی بریتانیا',
p = 'حقوق قلمرو بریتانیایی اقیانوس هند',
q = 'حقوق سومالیلند بریتانیا',
t = 'حقوق بورکینافاسو',
v = 'حقوق بوروندی',
w = 'حقوق کامرون',
x = 'حقوق کیپ ورد',
default = 'حقوق آفریقا'
},
r = {
b = 'حقوق جمهوری آفریقای مرکزی',
c = 'حقوق چاد',
e = 'حقوق کومور',
g = 'حقوق کنگو',
k = 'حقوق جیبوتی',
l = 'حقوق تحتالحمایه آفریقای شرقی',
m = 'حقوق مصر',
n = 'حقوق اریتره',
p = 'حقوق اتیوپی',
r = 'حقوق آفریقای استوایی فرانسه',
s = 'حقوق آفریقای غربی فرانسه',
u = 'حقوق گابن',
v = 'حقوق گامبیا',
w = 'حقوق آفریقای شرقی آلمان',
x = 'حقوق غنا',
y = 'حقوق جبلالطارق',
default = 'حقوق آفریقا' -- default duplicates another subclass to prevent errors
},
s = {
a = 'حقوق گینه',
c = 'حقوق گینه بیسائو',
e = 'حقوق گینه استوایی',
f = 'حقوق ایفنی',
g = 'حقوق آفریقای شرقی ایتالیا',
h = 'حقوق ساحل عاج',
i = 'حقوق سومالیلند ایتالیا',
k = 'حقوق کنیا',
l = 'حقوق لسوتو',
m = 'حقوق مایوت',
n = 'حقوق لیبریا',
p = 'حقوق لیبی',
r = 'حقوق ماداگاسکار',
s = 'حقوق مالاوی',
t = 'حقوق مالی',
t = 'حقوق میکرونزی',
u = 'حقوق موریتانی',
v = 'حقوق موریس',
v = 'حقوق جزایر میدوی',
w = 'حقوق مراکش',
x = 'حقوق موزامبیک',
y = 'حقوق نامیبیا',
z = 'حقوق نیجر',
default = 'حقوق آفریقا' -- default duplicates another subclass to prevent errors
},
t = {
a = 'حقوق نیجریه',
c = 'حقوق رئونیون',
d = 'حقوق رواندا',
e = 'حقوق سنت هلنا',
f = 'حقوق سائوتومه و پرینسیپ',
g = 'حقوق سنگال',
h = 'حقوق سیشل',
j = 'حقوق سیرالئون',
k = 'حقوق سومالی',
l = 'حقوق آفریقای جنوبی',
n = 'حقوق آفریقای غربی اسپانیا',
o = 'حقوق صحرای اسپانیا',
q = 'حقوق سودان',
r = 'حقوق سوازیلند',
s = 'حقوق زنگبار',
t = 'حقوق تانزانیا',
u = 'حقوق توگو',
v = 'حقوق تونس',
w = 'حقوق اوگاندا',
x = 'حقوق زئیر',
y = 'حقوق زامبیا',
z = 'حقوق زیمبابوه',
default = 'حقوق آفریقا' -- default duplicates another subclass to prevent errors
},
u = {
a = 'حقوق استرالیا',
b = 'حقوق نیوساوتولز',
c = 'حقوق قلمرو شمالی',
d = 'حقوق کوئینزلند',
e = 'حقوق استرالیای جنوبی',
f = 'حقوق تاسمانی',
g = 'حقوق ویکتوریا',
h = 'حقوق استرالیای غربی',
i = 'حقوق جزایر اشمور و کارتیه',
j = 'حقوق جزیره کریسمس',
k = 'حقوق جزایر کوکوس (کیلینگ)',
l = 'حقوق قلمرو جزایر دریای مرجانی',
n = 'حقوق جزیره نورفولک',
q = 'حقوق نیوزیلند',
default = 'حقوق اقیانوسیه'
},
v = {
a = 'تاریخ حقوق در اقیانوسیه',
b = 'حقوق تطبیقی و یکسان منطقهای استرالیا و نیوزیلند',
c = 'حقوق تطبیقی و یکسان منطقهای اقیانوسیه',
e = 'سازمان و همگرایی منطقهای اقیانوسیه',
h = 'حقوق ساموآی آمریکا',
j = 'حقوق گینه نو بریتانیا',
l = 'حقوق جزایر کوک',
m = 'حقوق جزیره ایستر',
n = 'حقوق فیجی',
o = 'حقوق گینه نو آلمان',
p = 'حقوق پلینزی فرانسه',
q = 'حقوق گوام',
r = 'حقوق کیریباتی',
s = 'حقوق جزایر مارشال',
u = 'حقوق نائورو',
w = 'حقوق کالدونیای جدید',
x = 'حقوق گینه نو هلند',
default = 'حقوق اقیانوسیه' -- default duplicates another subclass to prevent errors
},
w = {
a = 'حقوق نیوئه',
c = 'حقوق جزایر ماریانای شمالی',
e = 'حقوق قلمرو تحت قیمومیت جزایر اقیانوس آرام',
g = 'حقوق پالائو',
h = 'حقوق پاپوآ گینه نو',
l = 'حقوق جزیره پیتکرن',
m = 'حقوق جزایر سلیمان',
p = 'حقوق تونگا',
q = 'حقوق تووالو',
r = 'حقوق وانواتو',
t = 'حقوق جزیره ویک',
u = 'حقوق والیس و فوتونا',
w = 'حقوق ساموآی غربی',
x = 'حقوق قطب جنوب',
default = 'حقوق اقیانوسیه' -- default duplicates another subclass to prevent errors
},
z = {
a = 'حقوق دریاها',
d = 'حقوق فضای ماورای جو',
default = 'حقوق بینالملل (حقوق ملل)'
}
},
l = {
nosubclass = 'آموزش',
default = 'آموزش عمومی',
a = 'تاریخ آموزش',
b = 'نظریه و عمل آموزش',
c = 'جنبههای ویژه آموزش',
d = 'نهادهای آموزشی ایالات متحده',
e = 'نهادهای آموزشی آمریکا',
f = 'نهادهای آموزشی اروپا',
g = 'نهادهای آموزشی جهان',
h = 'مجلات و نشریات دانشگاهی و مدرسهای',
j = 'انجمنها و برادریهای دانشجویی',
t = 'کتابهای درسی'
},
m = {
nosubclass = 'موسیقی',
default = 'موسیقی عمومی',
l = 'ادبیات موسیقی',
t = 'آموزش و مطالعه موسیقی'
},
n = {
nosubclass = 'هنرهای زیبا',
default = 'هنرهای تجسمی',
a = 'معماری',
b = 'مجسمهسازی',
c = 'طراحی، دیزاین و تصویرسازی',
d = 'نقاشی',
e = 'رسانههای چاپی',
k = 'هنرهای تزئینی',
x = 'هنر بهطور کلی'
},
p = {
nosubclass = 'زبان و ادبیات',
default = 'زبانشناسی و فقهاللغه',
a = {
a = 'زبان و ادبیات لاتین',
default = 'زبان و ادبیات یونانی'
},
b = {
a = 'زبانهای سلتی',
default = 'زبانهای نوین'
},
c = 'زبانهای رومی (رومانس)',
d = {
a = 'زبانهای اسکاندیناوی',
default = 'زبانهای ژرمنی'
},
e = 'زبان انگلیسی',
f = 'زبانهای ژرمنی غربی',
g = {
a = 'زبانهای بالتیک',
b = 'زبان آلبانیایی',
default = 'زبانها و ادبیات اسلاوی'
},
h = {
a = 'زبان و ادبیات باسکی',
default = 'زبانهای اورالی'
},
j = 'زبانها و ادبیات شرقی',
k = 'زبانها و ادبیات هند و ایرانی',
l = {
a = 'زبانها و ادبیات آفریقا',
b = 'زبانها و ادبیات اقیانوسیه',
default = 'زبانها و ادبیات آسیای شرقی'
},
m = {
a = 'زبانهای بومی آمریکا',
b = 'زبانهای مصنوعی',
default = 'زبانهای هایپربورئن'
},
n = 'ادبیات عمومی',
q = 'ادبیات رومی (رومانس)',
r = 'ادبیات انگلیسی',
s = 'ادبیات آمریکایی',
t = 'ادبیات ژرمنی',
z = 'داستان و ادبیات نوجوانان'
},
q = {
nosubclass = 'علوم',
default = 'علوم عمومی',
a = 'ریاضیات',
b = 'نجوم',
c = 'فیزیک',
d = 'شیمی',
e = 'زمینشناسی',
h = 'تاریخ طبیعی و زیستشناسی',
k = 'گیاهشناسی',
l = 'جانورشناسی',
m = 'کالبدشناسی انسان',
p = 'فیزیولوژی',
r = 'میکروبشناسی'
},
r = {
nosubclass = 'پزشکی',
default = 'پزشکی عمومی',
a = 'جنبههای عمومی پزشکی',
b = 'آسیبشناسی',
c = 'طب داخلی',
d = 'جراحی',
e = 'چشمپزشکی',
f = 'گوش و حلق و بینی',
g = 'زنان و زایمان',
j = 'کودکان (اطفال)',
k = 'دندانپزشکی',
l = 'پوست',
m = {
a = 'داروشناسی',
default = 'درمانشناسی'
},
s = 'داروسازی و مواد دارویی',
t = 'پرستاری',
v = 'طب گیاهی، تامسونی و التقاطی',
x = 'هومیوپاتی',
z = 'سایر نظامهای پزشکی'
},
s = {
nosubclass = 'کشاورزی',
default = 'کشاورزی عمومی', -- a
b = 'زراعت گیاهان',
d = 'جنگلداری',
f = 'دامپروری',
h = {
a = 'ماهیگیری با قلاب',
default = 'آبزیپروری و شیلات'
},
k = 'شکار (ورزشی)'
},
t = {
nosubclass = 'فناوری',
default = 'فناوری عمومی',
a = 'مهندسی عمران',
c = {
a = 'مهندسی دریا',
default = 'مهندسی هیدرولیک'
},
d = {
a = 'مهندسی بهداشت',
default = 'فناوری محیطزیست'
},
e = 'مهندسی راه',
f = 'مهندسی و بهرهبرداری راهآهن',
g = 'مهندسی پل',
h = 'ساختوساز بنا',
j = 'مهندسی مکانیک و ماشینآلات',
k = {
a = 'الکترونیک',
b = 'مهندسی هستهای',
default = 'مهندسی برق'
},
l = {
a = 'هوانوردی',
b = 'فضانوردی',
default = 'خودروها'
},
n = {
a = 'متالورژی',
default = 'مهندسی معدن'
},
p = 'فناوری شیمیایی',
r = 'عکاسی',
s = 'صنایع تولیدی',
t = 'صنایع دستی و هنرهای دستی',
x = 'اقتصاد خانه (خانهداری)'
},
u = {
nosubclass = 'علوم نظامی',
default = 'علوم نظامی عمومی',
a = 'ارتشها',
b = 'مدیریت نظامی',
c = 'نگهداری و حملونقل',
d = 'پیادهنظام',
e = 'سوارهنظام',
f = 'توپخانه',
g = {
a = 'نیروی هوایی',
default = 'مهندسی نظامی'
},
h = 'سایر خدمات نظامی'
},
v = {
nosubclass = 'علوم دریایی',
default = 'علوم دریایی عمومی',
a = 'نیروهای دریایی',
b = 'مدیریت نیروی دریایی',
c = 'نگهداری نیروی دریایی',
d = 'ملوانان نیروی دریایی',
e = 'تفنگداران دریایی',
f = 'تسلیحات دریایی',
g = 'خدمات فرعی نیروی دریایی',
k = {
a = 'ناوگان تجاری',
default = 'ناوبری (کشتیرانی)'
},
m = 'کشتیسازی و معماری دریایی'
},
x = {
nosubclass = 'ویکینبشته',
default = 'ویکیپروژهها', -- a
e = 'دوره (عصر)',
p = 'فرایندها',
y = 'سالها'
},
z = {
nosubclass = 'کتابشناسی و علم کتابداری',
default = 'منابع اطلاعاتی', -- a
b = 'کتابها',
c = 'نگارش (نوشتار)',
d = 'باستاننوشتشناسی (پالئوگرافی)',
e = 'صنایع و تجارت کتاب',
f = 'کتابخانهها',
g = 'کتابشناسی'
},
default = 'نمایه'
}
amb9x5nz0cvr0wo4atmwvp394qtv038
291039
291038
2026-07-11T18:18:07Z
Hanooz
17889
291039
Scribunto
text/plain
return {
a = {
nosubclass = 'کلیات',
-- c
default = {
a = 'مجموعهها',
b = 'مجموعه (سری)',
default = 'آثار جمعی'
},
e = 'دائرةالمعارفها',
g = {
a = 'آثار مرجع',
default = 'واژهنامهها و مراجع عمومی'
},
i = 'نمایهها',
m = {
a = 'مجموعهداران و مجموعهداری',
default = 'موزهها'
},
n = 'روزنامهها',
p = 'نشریات ادواری',
s = 'آکادمیها و انجمنهای علمی',
y = {
a = 'سالنامهها',
b = 'راهنماها (دایرکتوریها)',
default = 'کتابهای سال'
},
z = {
a = 'علوم انسانی',
default = 'تاریخ دانش و آموزش'
}
},
b = {
nosubclass = 'فلسفه، روانشناسی و دین',
default = 'فلسفه عمومی',
c = 'منطق',
d = 'فلسفه نظری',
f = 'روانشناسی',
h = 'زیباییشناسی',
j = 'اخلاق',
l = {
a = 'اسطورهشناسی',
b = 'خردگرایی',
default = 'دین'
},
m = 'یهودیت',
p = {
a = 'آیین بهائی',
b = 'حکمت الهی (تئوسوفی)',
default = 'اسلام'
},
q = 'بودیسم',
r = 'مسیحیت',
s = 'کتاب مقدس',
t = 'الهیات جزمی',
v = 'الهیات عملی',
x = 'فرقههای مسیحی'
},
c = {
nosubclass = 'علوم کمکی تاریخ',
default = 'تاریخ تمدن', -- b
c = 'باستانشناسی',
d = {
a = 'بایگانیها',
b = 'مهرها',
d = 'دیپلماتیک (اسناد رسمی)'
},
e = 'گاهشماری فنی و تقویم',
j = 'سکهشناسی',
n = 'کتیبهها و کتیبهشناسی',
r = 'نشانشناسی (هرالدری)',
s = 'شجرهشناسی',
t = 'زندگینامه'
},
d = {
nosubclass = 'تاریخ جهان',
default = 'تاریخ عمومی',
a = 'تاریخ بریتانیای کبیر',
b = {
a = 'تاریخ لیختناشتاین',
b = 'تاریخ مجارستان',
c = 'تاریخ چکسلواکی',
default = 'تاریخ اتریش'
},
c = {
a = 'تاریخ آندورا',
b = 'تاریخ موناکو',
default = 'تاریخ فرانسه'
},
d = 'تاریخ آلمان',
e = 'تاریخ جهان یونان و روم',
f = 'تاریخ یونان',
g = {
a = 'تاریخ مالت',
default = 'تاریخ ایتالیا'
},
h = 'تاریخ کشورهای پست (بنلوکس)',
j = {
k = 'تاریخ اروپای شرقی',
default = 'تاریخ هلند'
},
k = {
b = 'تاریخ جمهوریهای سابق شوروی',
c = 'تاریخ لهستان',
default = 'تاریخ روسیه'
},
l = 'تاریخ اسکاندیناوی',
p = {
a = 'تاریخ پرتغال',
default = 'تاریخ اسپانیا'
},
q = 'تاریخ سوئیس',
r = 'تاریخ شبهجزیره بالکان',
s = 'تاریخ آسیا',
t = 'تاریخ آفریقا',
u = 'تاریخ اقیانوسیه',
x = 'تاریخ کولیها (رومانیها)'
},
e = 'تاریخ آمریکا',
f = 'تاریخ محلی ایالات متحده',
g = {
nosubclass = 'جغرافیا، مردمشناسی و تفریح',
default = {
a = 'اطلسها و نقشهها',
default = 'جغرافیا'
},
a = {
a = 'نقشهکشی',
default = 'جغرافیای ریاضی'
},
b = 'جغرافیای طبیعی',
c = 'اقیانوسشناسی',
e = 'محیط زیست',
f = 'جغرافیای انسانی',
n = 'مردمشناسی',
r = 'فرهنگ عامه (فولکلور)',
t = 'آداب و رسوم',
v = 'تفریح و اوقات فراغت'
},
h = {
nosubclass = 'علوم اجتماعی',
default = 'علوم اجتماعی عمومی',
a = 'آمار',
b = {
a = 'جمعیتشناسی',
default = 'نظریه اقتصادی'
},
c = 'تاریخ و اوضاع اقتصادی',
d = {
a = 'کاربری زمین',
b = 'کار (نیروی کار)',
default = 'صنایع'
},
e = 'حملونقل و ارتباطات',
f = 'بازرگانی',
g = 'مالیه',
j = 'مالیه عمومی',
m = 'جامعهشناسی',
n = {
a = 'مسائل اجتماعی',
b = 'اصلاحات اجتماعی',
default = 'تاریخ اجتماعی'
},
q = {
a = 'ازدواج',
b = 'زنان',
default = 'خانواده'
},
s = 'انجمنها',
t = {
a = 'طبقات',
b = 'مطالعات نژادی',
default = 'جوامع'
},
v = {
a = 'رفاه اجتماعی و عمومی',
b = 'جرمشناسی',
default = 'آسیبشناسی اجتماعی'
},
x = {
a = 'کمونیسم',
b = 'آنارشیسم',
default = 'سوسیالیسم'
}
},
i = {
nosubclass = 'متون بر اساس کشور',
default = 'متون بر اساس کشور',
c = 'شهرستانها',
n = 'ملتها',
r = 'مناطق',
s = 'ایالتها',
t = 'شهرها و شهرکها',
v = 'روستاها',
z = 'قارهها'
},
j = {
nosubclass = 'علوم سیاسی',
default = 'اسناد عمومی قوه مقننه و مجریه',
a = 'علوم سیاسی عمومی',
c = 'نظریه سیاسی',
f = 'نهادهای سیاسی و اداره عمومی',
j = 'نهادهای سیاسی و اداره عمومی آمریکای شمالی',
k = 'نهادهای سیاسی و اداره عمومی ایالات متحده',
l = 'نهادهای سیاسی و اداره عمومی قاره آمریکا',
n = 'نهادهای سیاسی و اداره عمومی اروپا',
q = 'نهادهای سیاسی و اداره عمومی جهان',
s = 'حکومت محلی',
v = {
a = 'مهاجرت (به داخل و خارج)',
default = 'مستعمرات و استعمار'
},
z = 'روابط بینالملل'
},
k = {
nosubclass = 'حقوق',
default = 'حقوق عمومی', -- a
b = {
m = 'حقوق یهود',
p = 'حقوق اسلامی',
r = 'تاریخ حقوق کلیسایی',
u = 'حقوق کلیسای کاتولیک رومی',
default = 'حقوق مذهبی'
},
c = {
a = 'قوانین آنگویلا',
b = 'قوانین آروبا',
c = 'قوانین باربادوس',
d = 'قوانین بونیر',
e = 'قوانین جزایر لیوارد بریتانیا',
f = 'قوانین جزایر ویرجین بریتانیا',
g = 'قوانین هند غربی بریتانیا',
h = 'قوانین جزایر ویندوارد بریتانیا',
j = 'قوانین دومینیکا',
k = 'قوانین آنتیل هلند',
l = 'قوانین جزایر ویندوارد هلند',
m = 'قوانین هند غربی فرانسه',
n = 'قوانین گرنادا',
p = 'قوانین گوادلوپ',
q = 'قوانین مارتینیک',
r = 'قوانین مونتسرات',
s = 'قوانین سنت کیتس و نویس',
t = 'قوانین سنت لوسیا',
u = 'قوانین سنت وینسنت و گرنادینها',
v = 'قوانین سینت یوستیشس',
w = 'قوانین سینت مارتن',
default = 'قوانین کارائیب' -- default duplicates another subclass to prevent errors
},
d = {
a = 'قوانین بریتانیا',
b = 'قوانین انگلستان',
c = 'قوانین اسکاتلند',
d = 'قوانین ولز',
e = 'قوانین ایرلند شمالی',
g = 'قوانین جزیره من و جزایر مانش',
k = 'قوانین ایرلند',
u = 'تاریخ حقوق در آمریکا',
v = 'سازمان کشورهای آمریکایی',
w = 'قوانین برمودا',
x = 'قوانین گرینلند',
y = 'قوانین سن پیر و میکلن',
z = 'قوانین آمریکای شمالی',
default = 'قوانین بریتانیا و ایرلند'
},
e = {
a = 'قوانین آلبرتا',
b = 'قوانین بریتیش کلمبیا',
j = 'قوانین نیوفاندلند',
k = 'قوانین قلمروهای شمال غربی',
l = 'قوانین نوا اسکوشیا',
m = 'قوانین مانیتوبا',
n = 'قوانین نیوبرانزویک',
o = 'قوانین انتاریو',
p = 'قوانین جزیره پرنس ادوارد',
q = 'قوانین کبک',
s = 'قوانین ساسکاچوان',
y = 'قوانین قلمرو یوکان',
z = 'قوانین شهرداری کانادا',
default = 'قوانین کانادا'
},
f = {
a = 'قوانین فدرال ایالات متحده',
b = 'قوانین ایالتی ایالات متحده',
x = 'قوانین شهرداری ایالات متحده',
y = 'قوانین قلمرو شمال غربی ایالات متحده',
z = 'قوانین ایالات کنفدره آمریکا',
default = 'قوانین ایالات متحده'
},
g = {
a = 'قوانین بلیز',
b = 'قوانین کاستاریکا',
c = 'قوانین السالوادور',
d = 'قوانین گواتمالا',
e = 'قوانین هندوراس',
f = 'قوانین مکزیک',
g = 'قوانین نیکاراگوئه',
h = 'قوانین پاناما',
i = 'قوانین منطقه کانال پاناما',
j = 'قوانین کارائیب',
k = 'قوانین آنتیگوا و باربودا',
l = 'قوانین باهاما',
m = 'قوانین جزایر کیمن',
n = 'قوانین کوبا',
p = 'قوانین کوراسائو',
q = 'قوانین جمهوری دومینیکن',
r = 'قوانین جزایر لیوارد هلند',
s = 'قوانین هائیتی',
t = 'قوانین جامائیکا',
u = 'قوانین جزیره ناواسا',
v = 'قوانین پورتوریکو',
w = 'قوانین سابا',
x = 'قوانین ترینیداد و توباگو',
y = 'قوانین جزایر تورکس و کایکوس',
z = 'قوانین جزایر ویرجین ایالات متحده',
default = 'قوانین آمریکای لاتین'
},
h = {
a = 'قوانین آرژانتین',
c = 'قوانین بولیوی',
d = 'قوانین برزیل',
f = 'قوانین شیلی',
h = 'قوانین کلمبیا',
k = 'قوانین اکوادور',
l = 'قوانین جزایر فالکلند',
m = 'قوانین گویان فرانسه',
n = 'قوانین گویان',
p = 'قوانین پاراگوئه',
q = 'قوانین پرو',
s = 'قوانین سورینام',
u = 'قوانین اروگوئه',
w = 'قوانین ونزوئلا',
default = 'قوانین آمریکای جنوبی'
},
j = {
a = 'حقوق روم',
b = 'تاریخ حقوق در اروپا',
c = 'حقوق تطبیقی و یکسان منطقهای اروپا',
d = 'حقوق ژرمنی',
e = 'سازمان و همگرایی منطقهای اروپا',
g = 'قوانین آلبانی',
h = 'قوانین آندورا',
j = 'قوانین اتریش',
k = 'قوانین بلژیک',
m = 'قوانین بلغارستان',
n = 'قوانین قبرس',
p = 'قوانین جمهوری چک',
q = 'قوانین اسلواکی',
r = 'قوانین دانمارک',
s = 'قوانین استونی',
t = 'قوانین فنلاند',
u = 'قوانین فرانسه',
v = 'قوانین ملی فرانسه',
w = 'قوانین منطقهای فرانسه',
default = 'قوانین اروپا'
},
k = {
a = 'قوانین آلمان شرقی',
b = 'قوانین منطقهای آلمان',
e = 'قوانین یونان',
f = 'قوانین مجارستان',
g = 'قوانین ایسلند',
h = 'قوانین ایتالیا',
i = 'قوانین لتونی',
j = 'قوانین لیختناشتاین',
k = 'قوانین لوکزامبورگ',
l = 'قوانین موناکو',
m = 'قوانین هلند',
n = 'قوانین نروژ',
o = 'قوانین مالت',
p = 'قوانین لهستان',
q = 'قوانین پرتغال',
r = 'قوانین رومانی',
s = 'قوانین سان مارینو',
t = 'قوانین اسپانیا',
v = 'قوانین سوئد',
w = 'قوانین سوئیس',
x = 'قوانین ترکیه',
y = 'قوانین اوکراین',
z = 'قوانین یوگسلاوی',
default = 'قوانین آلمان'
},
l = {
a = 'قوانین روسیه تزاری و شوروی',
b = 'قوانین روسیه',
d = 'قوانین جمهوری شوروی سوسیالیستی ارمنستان',
e = 'قوانین آذربایجان',
f = 'قوانین بلاروس',
h = 'قوانین گرجستان (کشور)',
j = 'قوانین لیتوانی',
m = 'قوانین مولداوی',
n = 'قوانین جمهوری فدراتیو سوسیالیستی شوروی روسیه',
o = 'قوانین جمهوری فدراتیو سوسیالیستی قفقاز جنوبی شوروی',
p = 'قوانین اوکراین',
q = 'قوانین جمهوری خلق شوروی بخارا',
r = 'قوانین قزاقستان',
s = 'قوانین قرقیزستان',
t = 'قوانین تاجیکستان',
u = 'قوانین جمهوری خلق شوروی خوارزم',
v = 'قوانین ترکمنستان',
w = 'قوانین ازبکستان',
default = 'تاریخ حقوق در آسیا'
},
m = {
a = 'قوانین خاورمیانه',
b = 'قوانین بحرین',
c = 'حقوق تطبیقی و یکسان منطقهای خاورمیانه',
e = 'سازمان و همگرایی منطقهای خاورمیانه',
f = 'قوانین ارمنستان',
g = 'قوانین فلسطین',
h = 'قوانین ایران',
j = 'قوانین عراق',
k = 'قوانین اسرائیل',
l = 'قوانین اورشلیم',
m = 'قوانین اردن',
n = 'قوانین کویت',
p = 'قوانین لبنان',
q = 'قوانین عمان',
s = 'قوانین قطر',
t = 'قوانین عربستان سعودی',
u = 'قوانین سوریه',
v = 'قوانین امارات متحده عربی',
x = 'قوانین یمن',
y = 'قوانین جمهوری دموکراتیک خلق یمن',
default = 'قوانین آسیا'
},
n = {
c = 'حقوق تطبیقی و یکسان منطقهای جنوب شرق آسیا',
e = 'سازمان و همگرایی منطقهای جنوب شرق آسیا',
f = 'قوانین افغانستان',
g = 'قوانین بنگلادش',
h = 'قوانین بوتان',
k = 'قوانین برونئی',
l = 'قوانین برمه',
m = 'قوانین کامبوج',
n = 'قوانین چین امپراتوری',
p = 'قوانین جمهوری چین',
q = 'قوانین چین',
r = 'قوانین هنگکنگ',
s = 'قوانین هند',
t = 'قوانین ایالتی هند',
u = 'قوانین شهرداری هند',
v = 'قوانین هندوچین فرانسه',
w = 'قوانین اندونزی',
x = 'قوانین ژاپن',
y = 'قوانین شهرداری ژاپن',
default = 'قوانین جنوب شرق آسیا'
},
p = {
a = 'قوانین کره جنوبی',
c = 'قوانین کره شمالی',
e = 'قوانین لائوس',
f = 'قوانین ماکائو',
g = 'قوانین مالزی',
h = 'قوانین ایالتهای مالزی شرقی و غربی',
i = 'قوانین مالدیو',
j = 'قوانین مغولستان',
k = 'قوانین نپال',
l = 'قوانین پاکستان',
m = 'قوانین فیلیپین',
p = 'قوانین سنگاپور',
s = 'قوانین سریلانکا',
t = 'قوانین تایلند',
v = 'قوانین ویتنام',
w = 'قوانین ویتنام جنوبی',
default = 'قوانین جنوب شرق آسیا' -- default duplicates another subclass to prevent errors
},
q = {
a = 'تاریخ حقوق در آفریقا',
c = 'حقوق تطبیقی و یکسان منطقهای آفریقا',
e = 'سازمان و همگرایی منطقهای آفریقا',
g = 'قوانین الجزایر',
h = 'قوانین آنگولا',
j = 'قوانین بنین',
k = 'قوانین بوتسوانا',
m = 'قوانین تحتالحمایه آفریقای مرکزی بریتانیا',
p = 'قوانین قلمرو بریتانیایی اقیانوس هند',
q = 'قوانین سومالیلند بریتانیا',
t = 'قوانین بورکینافاسو',
v = 'قوانین بوروندی',
w = 'قوانین کامرون',
x = 'قوانین کیپ ورد',
default = 'قوانین آفریقا'
},
r = {
b = 'قوانین جمهوری آفریقای مرکزی',
c = 'قوانین چاد',
e = 'قوانین کومور',
g = 'قوانین کنگو',
k = 'قوانین جیبوتی',
l = 'قوانین تحتالحمایه آفریقای شرقی',
m = 'قوانین مصر',
n = 'قوانین اریتره',
p = 'قوانین اتیوپی',
r = 'قوانین آفریقای استوایی فرانسه',
s = 'قوانین آفریقای غربی فرانسه',
u = 'قوانین گابن',
v = 'قوانین گامبیا',
w = 'قوانین آفریقای شرقی آلمان',
x = 'قوانین غنا',
y = 'قوانین جبلالطارق',
default = 'قوانین آفریقا' -- default duplicates another subclass to prevent errors
},
s = {
a = 'قوانین گینه',
c = 'قوانین گینه بیسائو',
e = 'قوانین گینه استوایی',
f = 'قوانین ایفنی',
g = 'قوانین آفریقای شرقی ایتالیا',
h = 'قوانین ساحل عاج',
i = 'قوانین سومالیلند ایتالیا',
k = 'قوانین کنیا',
l = 'قوانین لسوتو',
m = 'قوانین مایوت',
n = 'قوانین لیبریا',
p = 'قوانین لیبی',
r = 'قوانین ماداگاسکار',
s = 'قوانین مالاوی',
t = 'قوانین مالی',
t = 'قوانین میکرونزی',
u = 'قوانین موریتانی',
v = 'قوانین موریس',
v = 'قوانین جزایر میدوی',
w = 'قوانین مراکش',
x = 'قوانین موزامبیک',
y = 'قوانین نامیبیا',
z = 'قوانین نیجر',
default = 'قوانین آفریقا' -- default duplicates another subclass to prevent errors
},
t = {
a = 'قوانین نیجریه',
c = 'قوانین رئونیون',
d = 'قوانین رواندا',
e = 'قوانین سنت هلنا',
f = 'قوانین سائوتومه و پرینسیپ',
g = 'قوانین سنگال',
h = 'قوانین سیشل',
j = 'قوانین سیرالئون',
k = 'قوانین سومالی',
l = 'قوانین آفریقای جنوبی',
n = 'قوانین آفریقای غربی اسپانیا',
o = 'قوانین صحرای اسپانیا',
q = 'قوانین سودان',
r = 'قوانین اسواتینی',
s = 'قوانین زنگبار',
t = 'قوانین تانزانیا',
u = 'قوانین توگو',
v = 'قوانین تونس',
w = 'قوانین اوگاندا',
x = 'قوانین زئیر',
y = 'قوانین زامبیا',
z = 'قوانین زیمبابوه',
default = 'قوانین آفریقا' -- default duplicates another subclass to prevent errors
},
u = {
a = 'قوانین استرالیا',
b = 'قوانین نیوساوتولز',
c = 'قوانین قلمرو شمالی',
d = 'قوانین کوئینزلند',
e = 'قوانین استرالیای جنوبی',
f = 'قوانین تاسمانی',
g = 'قوانین ویکتوریا',
h = 'قوانین استرالیای غربی',
i = 'قوانین جزایر اشمور و کارتیه',
j = 'قوانین جزیره کریسمس',
k = 'قوانین جزایر کوکوس (کیلینگ)',
l = 'قوانین قلمرو جزایر دریای مرجانی',
n = 'قوانین جزیره نورفولک',
q = 'قوانین نیوزیلند',
default = 'قوانین اقیانوسیه'
},
v = {
a = 'تاریخ حقوق در اقیانوسیه',
b = 'حقوق تطبیقی و یکسان منطقهای استرالیا و نیوزیلند',
c = 'حقوق تطبیقی و یکسان منطقهای اقیانوسیه',
e = 'سازمان و همگرایی منطقهای اقیانوسیه',
h = 'قوانین ساموآی آمریکا',
j = 'قوانین گینه نو بریتانیا',
l = 'قوانین جزایر کوک',
m = 'قوانین جزیره ایستر',
n = 'قوانین فیجی',
o = 'قوانین گینه نو آلمان',
p = 'قوانین پلینزی فرانسه',
q = 'قوانین گوام',
r = 'قوانین کیریباتی',
s = 'قوانین جزایر مارشال',
u = 'قوانین نائورو',
w = 'قوانین کالدونیای جدید',
x = 'قوانین گینه نو هلند',
default = 'قوانین اقیانوسیه' -- default duplicates another subclass to prevent errors
},
w = {
a = 'قوانین نیوئه',
c = 'قوانین جزایر ماریانای شمالی',
e = 'قوانین قلمرو تحت قیمومت جزایر اقیانوس آرام',
g = 'قوانین پالائو',
h = 'قوانین پاپوآ گینه نو',
l = 'قوانین جزیره پیتکرن',
m = 'قوانین جزایر سلیمان',
p = 'قوانین تونگا',
q = 'قوانین تووالو',
r = 'قوانین وانواتو',
t = 'قوانین جزیره ویک',
u = 'قوانین والیس و فوتونا',
w = 'قوانین ساموآی غربی',
x = 'قوانین جنوبگان',
default = 'قوانین اقیانوسیه' -- default duplicates another subclass to prevent errors
},
z = {
a = 'حقوق دریاها',
d = 'حقوق فضای ماورای جو',
default = 'حقوق بینالملل (حقوق ملل)'
}
},
l = {
nosubclass = 'آموزش',
default = 'آموزش عمومی',
a = 'تاریخ آموزش',
b = 'نظریه و عمل آموزش',
c = 'جنبههای ویژه آموزش',
d = 'نهادهای آموزشی ایالات متحده',
e = 'نهادهای آموزشی آمریکا',
f = 'نهادهای آموزشی اروپا',
g = 'نهادهای آموزشی جهان',
h = 'مجلات و نشریات دانشگاهی و مدرسهای',
j = 'انجمنها و برادریهای دانشجویی',
t = 'کتابهای درسی'
},
m = {
nosubclass = 'موسیقی',
default = 'موسیقی عمومی',
l = 'ادبیات موسیقی',
t = 'آموزش و مطالعه موسیقی'
},
n = {
nosubclass = 'هنرهای زیبا',
default = 'هنرهای تجسمی',
a = 'معماری',
b = 'مجسمهسازی',
c = 'طراحی، دیزاین و تصویرسازی',
d = 'نقاشی',
e = 'رسانههای چاپی',
k = 'هنرهای تزئینی',
x = 'هنر بهطور کلی'
},
p = {
nosubclass = 'زبان و ادبیات',
default = 'زبانشناسی و فقهاللغه',
a = {
a = 'زبان و ادبیات لاتین',
default = 'زبان و ادبیات یونانی'
},
b = {
a = 'زبانهای سلتی',
default = 'زبانهای نوین'
},
c = 'زبانهای رومی (رومانس)',
d = {
a = 'زبانهای اسکاندیناوی',
default = 'زبانهای ژرمنی'
},
e = 'زبان انگلیسی',
f = 'زبانهای ژرمنی غربی',
g = {
a = 'زبانهای بالتیک',
b = 'زبان آلبانیایی',
default = 'زبانها و ادبیات اسلاوی'
},
h = {
a = 'زبان و ادبیات باسکی',
default = 'زبانهای اورالی'
},
j = 'زبانها و ادبیات شرقی',
k = 'زبانها و ادبیات هند و ایرانی',
l = {
a = 'زبانها و ادبیات آفریقا',
b = 'زبانها و ادبیات اقیانوسیه',
default = 'زبانها و ادبیات آسیای شرقی'
},
m = {
a = 'زبانهای بومی آمریکا',
b = 'زبانهای مصنوعی',
default = 'زبانهای هایپربورئن'
},
n = 'ادبیات عمومی',
q = 'ادبیات رومی (رومانس)',
r = 'ادبیات انگلیسی',
s = 'ادبیات آمریکایی',
t = 'ادبیات ژرمنی',
z = 'داستان و ادبیات نوجوانان'
},
q = {
nosubclass = 'علوم',
default = 'علوم عمومی',
a = 'ریاضیات',
b = 'نجوم',
c = 'فیزیک',
d = 'شیمی',
e = 'زمینشناسی',
h = 'تاریخ طبیعی و زیستشناسی',
k = 'گیاهشناسی',
l = 'جانورشناسی',
m = 'کالبدشناسی انسان',
p = 'فیزیولوژی',
r = 'میکروبشناسی'
},
r = {
nosubclass = 'پزشکی',
default = 'پزشکی عمومی',
a = 'جنبههای عمومی پزشکی',
b = 'آسیبشناسی',
c = 'طب داخلی',
d = 'جراحی',
e = 'چشمپزشکی',
f = 'گوش و حلق و بینی',
g = 'زنان و زایمان',
j = 'کودکان (اطفال)',
k = 'دندانپزشکی',
l = 'پوست',
m = {
a = 'داروشناسی',
default = 'درمانشناسی'
},
s = 'داروسازی و مواد دارویی',
t = 'پرستاری',
v = 'طب گیاهی، تامسونی و التقاطی',
x = 'هومیوپاتی',
z = 'سایر نظامهای پزشکی'
},
s = {
nosubclass = 'کشاورزی',
default = 'کشاورزی عمومی', -- a
b = 'زراعت گیاهان',
d = 'جنگلداری',
f = 'دامپروری',
h = {
a = 'ماهیگیری با قلاب',
default = 'آبزیپروری و شیلات'
},
k = 'شکار (ورزشی)'
},
t = {
nosubclass = 'فناوری',
default = 'فناوری عمومی',
a = 'مهندسی عمران',
c = {
a = 'مهندسی دریا',
default = 'مهندسی هیدرولیک'
},
d = {
a = 'مهندسی بهداشت',
default = 'فناوری محیطزیست'
},
e = 'مهندسی راه',
f = 'مهندسی و بهرهبرداری راهآهن',
g = 'مهندسی پل',
h = 'ساختوساز بنا',
j = 'مهندسی مکانیک و ماشینآلات',
k = {
a = 'الکترونیک',
b = 'مهندسی هستهای',
default = 'مهندسی برق'
},
l = {
a = 'هوانوردی',
b = 'فضانوردی',
default = 'خودروها'
},
n = {
a = 'متالورژی',
default = 'مهندسی معدن'
},
p = 'فناوری شیمیایی',
r = 'عکاسی',
s = 'صنایع تولیدی',
t = 'صنایع دستی و هنرهای دستی',
x = 'اقتصاد خانه (خانهداری)'
},
u = {
nosubclass = 'علوم نظامی',
default = 'علوم نظامی عمومی',
a = 'ارتشها',
b = 'مدیریت نظامی',
c = 'نگهداری و حملونقل',
d = 'پیادهنظام',
e = 'سوارهنظام',
f = 'توپخانه',
g = {
a = 'نیروی هوایی',
default = 'مهندسی نظامی'
},
h = 'سایر خدمات نظامی'
},
v = {
nosubclass = 'علوم دریایی',
default = 'علوم دریایی عمومی',
a = 'نیروهای دریایی',
b = 'مدیریت نیروی دریایی',
c = 'نگهداری نیروی دریایی',
d = 'ملوانان نیروی دریایی',
e = 'تفنگداران دریایی',
f = 'تسلیحات دریایی',
g = 'خدمات فرعی نیروی دریایی',
k = {
a = 'ناوگان تجاری',
default = 'ناوبری (کشتیرانی)'
},
m = 'کشتیسازی و معماری دریایی'
},
x = {
nosubclass = 'ویکینبشته',
default = 'ویکیپروژهها', -- a
e = 'دوره (عصر)',
p = 'فرایندها',
y = 'سالها'
},
z = {
nosubclass = 'کتابشناسی و علم کتابداری',
default = 'منابع اطلاعاتی', -- a
b = 'کتابها',
c = 'نگارش (نوشتار)',
d = 'باستاننوشتشناسی (پالئوگرافی)',
e = 'صنایع و تجارت کتاب',
f = 'کتابخانهها',
g = 'کتابشناسی'
},
default = 'نمایه'
}
g15dyr5xujfwzqpzx6zv0b263gvuzaw
291040
291039
2026-07-11T18:22:17Z
Hanooz
17889
291040
Scribunto
text/plain
return {
a = {
nosubclass = 'کلیات',
-- c
default = {
a = 'مجموعهها',
b = 'مجموعه (سری)',
default = 'آثار جمعی'
},
e = 'دائرةالمعارفها',
g = {
a = 'آثار مرجع',
default = 'واژهنامهها و مراجع عمومی'
},
i = 'نمایهها',
m = {
a = 'مجموعهداران و مجموعهداری',
default = 'موزهها'
},
n = 'روزنامهها',
p = 'نشریات ادواری',
s = 'آکادمیها و انجمنهای علمی',
y = {
a = 'سالنامهها',
b = 'راهنماها (دایرکتوریها)',
default = 'کتابهای سال'
},
z = {
a = 'علوم انسانی',
default = 'تاریخ دانش و آموزش'
}
},
b = {
nosubclass = 'فلسفه، روانشناسی و دین',
default = 'فلسفه عمومی',
c = 'منطق',
d = 'فلسفه نظری',
f = 'روانشناسی',
h = 'زیباییشناسی',
j = 'اخلاق',
l = {
a = 'اسطورهشناسی',
b = 'خردگرایی',
default = 'دین'
},
m = 'یهودیت',
p = {
a = 'آیین بهائی',
b = 'حکمت الهی (تئوسوفی)',
default = 'اسلام'
},
q = 'بودیسم',
r = 'مسیحیت',
s = 'کتاب مقدس',
t = 'الهیات جزمی',
v = 'الهیات عملی',
x = 'فرقههای مسیحی'
},
c = {
nosubclass = 'علوم وابسته به تاریخ',
default = 'تاریخ تمدن', -- b
c = 'باستانشناسی',
d = {
a = 'بایگانیها',
b = 'مهرها',
d = 'دیپلماتیک (اسناد رسمی)'
},
e = 'گاهشماری فنی و تقویم',
j = 'سکهشناسی',
n = 'کتیبهها و کتیبهشناسی',
r = 'نشانشناسی (هرالدری)',
s = 'شجرهشناسی',
t = 'زندگینامه'
},
d = {
nosubclass = 'تاریخ جهان',
default = 'تاریخ عمومی',
a = 'تاریخ بریتانیای کبیر',
b = {
a = 'تاریخ لیختناشتاین',
b = 'تاریخ مجارستان',
c = 'تاریخ چکسلواکی',
default = 'تاریخ اتریش'
},
c = {
a = 'تاریخ آندورا',
b = 'تاریخ موناکو',
default = 'تاریخ فرانسه'
},
d = 'تاریخ آلمان',
e = 'تاریخ جهان یونان و روم',
f = 'تاریخ یونان',
g = {
a = 'تاریخ مالت',
default = 'تاریخ ایتالیا'
},
h = 'تاریخ کشورهای پست (بنلوکس)',
j = {
k = 'تاریخ اروپای شرقی',
default = 'تاریخ هلند'
},
k = {
b = 'تاریخ جمهوریهای سابق شوروی',
c = 'تاریخ لهستان',
default = 'تاریخ روسیه'
},
l = 'تاریخ اسکاندیناوی',
p = {
a = 'تاریخ پرتغال',
default = 'تاریخ اسپانیا'
},
q = 'تاریخ سوئیس',
r = 'تاریخ شبهجزیره بالکان',
s = 'تاریخ آسیا',
t = 'تاریخ آفریقا',
u = 'تاریخ اقیانوسیه',
x = 'تاریخ کولیها (رومانیها)'
},
e = 'تاریخ آمریکا',
f = 'تاریخ محلی ایالات متحده',
g = {
nosubclass = 'جغرافیا، مردمشناسی و تفریح',
default = {
a = 'اطلسها و نقشهها',
default = 'جغرافیا'
},
a = {
a = 'نقشهکشی',
default = 'جغرافیای ریاضی'
},
b = 'جغرافیای طبیعی',
c = 'اقیانوسشناسی',
e = 'محیط زیست',
f = 'جغرافیای انسانی',
n = 'مردمشناسی',
r = 'فرهنگ عامه (فولکلور)',
t = 'آداب و رسوم',
v = 'تفریح و اوقات فراغت'
},
h = {
nosubclass = 'علوم اجتماعی',
default = 'علوم اجتماعی عمومی',
a = 'آمار',
b = {
a = 'جمعیتشناسی',
default = 'نظریه اقتصادی'
},
c = 'تاریخ و اوضاع اقتصادی',
d = {
a = 'کاربری زمین',
b = 'کار (نیروی کار)',
default = 'صنایع'
},
e = 'حملونقل و ارتباطات',
f = 'بازرگانی',
g = 'مالیه',
j = 'مالیه عمومی',
m = 'جامعهشناسی',
n = {
a = 'مسائل اجتماعی',
b = 'اصلاحات اجتماعی',
default = 'تاریخ اجتماعی'
},
q = {
a = 'ازدواج',
b = 'زنان',
default = 'خانواده'
},
s = 'انجمنها',
t = {
a = 'طبقات',
b = 'مطالعات نژادی',
default = 'جوامع'
},
v = {
a = 'رفاه اجتماعی و عمومی',
b = 'جرمشناسی',
default = 'آسیبشناسی اجتماعی'
},
x = {
a = 'کمونیسم',
b = 'آنارشیسم',
default = 'سوسیالیسم'
}
},
i = {
nosubclass = 'متون بر اساس کشور',
default = 'متون بر اساس کشور',
c = 'شهرستانها',
n = 'ملتها',
r = 'مناطق',
s = 'ایالتها',
t = 'شهرها و شهرکها',
v = 'روستاها',
z = 'قارهها'
},
j = {
nosubclass = 'علوم سیاسی',
default = 'اسناد عمومی قوه مقننه و مجریه',
a = 'علوم سیاسی عمومی',
c = 'نظریه سیاسی',
f = 'نهادهای سیاسی و اداره عمومی',
j = 'نهادهای سیاسی و اداره عمومی آمریکای شمالی',
k = 'نهادهای سیاسی و اداره عمومی ایالات متحده',
l = 'نهادهای سیاسی و اداره عمومی قاره آمریکا',
n = 'نهادهای سیاسی و اداره عمومی اروپا',
q = 'نهادهای سیاسی و اداره عمومی جهان',
s = 'حکومت محلی',
v = {
a = 'مهاجرت (به داخل و خارج)',
default = 'مستعمرات و استعمار'
},
z = 'روابط بینالملل'
},
k = {
nosubclass = 'حقوق',
default = 'حقوق عمومی', -- a
b = {
m = 'حقوق یهود',
p = 'حقوق اسلامی',
r = 'تاریخ حقوق کلیسایی',
u = 'حقوق کلیسای کاتولیک رومی',
default = 'حقوق مذهبی'
},
c = {
a = 'قوانین آنگویلا',
b = 'قوانین آروبا',
c = 'قوانین باربادوس',
d = 'قوانین بونیر',
e = 'قوانین جزایر لیوارد بریتانیا',
f = 'قوانین جزایر ویرجین بریتانیا',
g = 'قوانین هند غربی بریتانیا',
h = 'قوانین جزایر ویندوارد بریتانیا',
j = 'قوانین دومینیکا',
k = 'قوانین آنتیل هلند',
l = 'قوانین جزایر ویندوارد هلند',
m = 'قوانین هند غربی فرانسه',
n = 'قوانین گرنادا',
p = 'قوانین گوادلوپ',
q = 'قوانین مارتینیک',
r = 'قوانین مونتسرات',
s = 'قوانین سنت کیتس و نویس',
t = 'قوانین سنت لوسیا',
u = 'قوانین سنت وینسنت و گرنادینها',
v = 'قوانین سینت یوستیشس',
w = 'قوانین سینت مارتن',
default = 'قوانین کارائیب' -- default duplicates another subclass to prevent errors
},
d = {
a = 'قوانین بریتانیا',
b = 'قوانین انگلستان',
c = 'قوانین اسکاتلند',
d = 'قوانین ولز',
e = 'قوانین ایرلند شمالی',
g = 'قوانین جزیره من و جزایر مانش',
k = 'قوانین ایرلند',
u = 'تاریخ حقوق در آمریکا',
v = 'سازمان کشورهای آمریکایی',
w = 'قوانین برمودا',
x = 'قوانین گرینلند',
y = 'قوانین سن پیر و میکلن',
z = 'قوانین آمریکای شمالی',
default = 'قوانین بریتانیا و ایرلند'
},
e = {
a = 'قوانین آلبرتا',
b = 'قوانین بریتیش کلمبیا',
j = 'قوانین نیوفاندلند',
k = 'قوانین قلمروهای شمال غربی',
l = 'قوانین نوا اسکوشیا',
m = 'قوانین مانیتوبا',
n = 'قوانین نیوبرانزویک',
o = 'قوانین انتاریو',
p = 'قوانین جزیره پرنس ادوارد',
q = 'قوانین کبک',
s = 'قوانین ساسکاچوان',
y = 'قوانین قلمرو یوکان',
z = 'قوانین شهرداری کانادا',
default = 'قوانین کانادا'
},
f = {
a = 'قوانین فدرال ایالات متحده',
b = 'قوانین ایالتی ایالات متحده',
x = 'قوانین شهرداری ایالات متحده',
y = 'قوانین قلمرو شمال غربی ایالات متحده',
z = 'قوانین ایالات کنفدره آمریکا',
default = 'قوانین ایالات متحده'
},
g = {
a = 'قوانین بلیز',
b = 'قوانین کاستاریکا',
c = 'قوانین السالوادور',
d = 'قوانین گواتمالا',
e = 'قوانین هندوراس',
f = 'قوانین مکزیک',
g = 'قوانین نیکاراگوئه',
h = 'قوانین پاناما',
i = 'قوانین منطقه کانال پاناما',
j = 'قوانین کارائیب',
k = 'قوانین آنتیگوا و باربودا',
l = 'قوانین باهاما',
m = 'قوانین جزایر کیمن',
n = 'قوانین کوبا',
p = 'قوانین کوراسائو',
q = 'قوانین جمهوری دومینیکن',
r = 'قوانین جزایر لیوارد هلند',
s = 'قوانین هائیتی',
t = 'قوانین جامائیکا',
u = 'قوانین جزیره ناواسا',
v = 'قوانین پورتوریکو',
w = 'قوانین سابا',
x = 'قوانین ترینیداد و توباگو',
y = 'قوانین جزایر تورکس و کایکوس',
z = 'قوانین جزایر ویرجین ایالات متحده',
default = 'قوانین آمریکای لاتین'
},
h = {
a = 'قوانین آرژانتین',
c = 'قوانین بولیوی',
d = 'قوانین برزیل',
f = 'قوانین شیلی',
h = 'قوانین کلمبیا',
k = 'قوانین اکوادور',
l = 'قوانین جزایر فالکلند',
m = 'قوانین گویان فرانسه',
n = 'قوانین گویان',
p = 'قوانین پاراگوئه',
q = 'قوانین پرو',
s = 'قوانین سورینام',
u = 'قوانین اروگوئه',
w = 'قوانین ونزوئلا',
default = 'قوانین آمریکای جنوبی'
},
j = {
a = 'حقوق روم',
b = 'تاریخ حقوق در اروپا',
c = 'حقوق تطبیقی و یکسان منطقهای اروپا',
d = 'حقوق ژرمنی',
e = 'سازمان و همگرایی منطقهای اروپا',
g = 'قوانین آلبانی',
h = 'قوانین آندورا',
j = 'قوانین اتریش',
k = 'قوانین بلژیک',
m = 'قوانین بلغارستان',
n = 'قوانین قبرس',
p = 'قوانین جمهوری چک',
q = 'قوانین اسلواکی',
r = 'قوانین دانمارک',
s = 'قوانین استونی',
t = 'قوانین فنلاند',
u = 'قوانین فرانسه',
v = 'قوانین ملی فرانسه',
w = 'قوانین منطقهای فرانسه',
default = 'قوانین اروپا'
},
k = {
a = 'قوانین آلمان شرقی',
b = 'قوانین منطقهای آلمان',
e = 'قوانین یونان',
f = 'قوانین مجارستان',
g = 'قوانین ایسلند',
h = 'قوانین ایتالیا',
i = 'قوانین لتونی',
j = 'قوانین لیختناشتاین',
k = 'قوانین لوکزامبورگ',
l = 'قوانین موناکو',
m = 'قوانین هلند',
n = 'قوانین نروژ',
o = 'قوانین مالت',
p = 'قوانین لهستان',
q = 'قوانین پرتغال',
r = 'قوانین رومانی',
s = 'قوانین سان مارینو',
t = 'قوانین اسپانیا',
v = 'قوانین سوئد',
w = 'قوانین سوئیس',
x = 'قوانین ترکیه',
y = 'قوانین اوکراین',
z = 'قوانین یوگسلاوی',
default = 'قوانین آلمان'
},
l = {
a = 'قوانین روسیه تزاری و شوروی',
b = 'قوانین روسیه',
d = 'قوانین جمهوری شوروی سوسیالیستی ارمنستان',
e = 'قوانین آذربایجان',
f = 'قوانین بلاروس',
h = 'قوانین گرجستان (کشور)',
j = 'قوانین لیتوانی',
m = 'قوانین مولداوی',
n = 'قوانین جمهوری فدراتیو سوسیالیستی شوروی روسیه',
o = 'قوانین جمهوری فدراتیو سوسیالیستی قفقاز جنوبی شوروی',
p = 'قوانین اوکراین',
q = 'قوانین جمهوری خلق شوروی بخارا',
r = 'قوانین قزاقستان',
s = 'قوانین قرقیزستان',
t = 'قوانین تاجیکستان',
u = 'قوانین جمهوری خلق شوروی خوارزم',
v = 'قوانین ترکمنستان',
w = 'قوانین ازبکستان',
default = 'تاریخ حقوق در آسیا'
},
m = {
a = 'قوانین خاورمیانه',
b = 'قوانین بحرین',
c = 'حقوق تطبیقی و یکسان منطقهای خاورمیانه',
e = 'سازمان و همگرایی منطقهای خاورمیانه',
f = 'قوانین ارمنستان',
g = 'قوانین فلسطین',
h = 'قوانین ایران',
j = 'قوانین عراق',
k = 'قوانین اسرائیل',
l = 'قوانین اورشلیم',
m = 'قوانین اردن',
n = 'قوانین کویت',
p = 'قوانین لبنان',
q = 'قوانین عمان',
s = 'قوانین قطر',
t = 'قوانین عربستان سعودی',
u = 'قوانین سوریه',
v = 'قوانین امارات متحده عربی',
x = 'قوانین یمن',
y = 'قوانین جمهوری دموکراتیک خلق یمن',
default = 'قوانین آسیا'
},
n = {
c = 'حقوق تطبیقی و یکسان منطقهای جنوب شرق آسیا',
e = 'سازمان و همگرایی منطقهای جنوب شرق آسیا',
f = 'قوانین افغانستان',
g = 'قوانین بنگلادش',
h = 'قوانین بوتان',
k = 'قوانین برونئی',
l = 'قوانین برمه',
m = 'قوانین کامبوج',
n = 'قوانین چین امپراتوری',
p = 'قوانین جمهوری چین',
q = 'قوانین چین',
r = 'قوانین هنگکنگ',
s = 'قوانین هند',
t = 'قوانین ایالتی هند',
u = 'قوانین شهرداری هند',
v = 'قوانین هندوچین فرانسه',
w = 'قوانین اندونزی',
x = 'قوانین ژاپن',
y = 'قوانین شهرداری ژاپن',
default = 'قوانین جنوب شرق آسیا'
},
p = {
a = 'قوانین کره جنوبی',
c = 'قوانین کره شمالی',
e = 'قوانین لائوس',
f = 'قوانین ماکائو',
g = 'قوانین مالزی',
h = 'قوانین ایالتهای مالزی شرقی و غربی',
i = 'قوانین مالدیو',
j = 'قوانین مغولستان',
k = 'قوانین نپال',
l = 'قوانین پاکستان',
m = 'قوانین فیلیپین',
p = 'قوانین سنگاپور',
s = 'قوانین سریلانکا',
t = 'قوانین تایلند',
v = 'قوانین ویتنام',
w = 'قوانین ویتنام جنوبی',
default = 'قوانین جنوب شرق آسیا' -- default duplicates another subclass to prevent errors
},
q = {
a = 'تاریخ حقوق در آفریقا',
c = 'حقوق تطبیقی و یکسان منطقهای آفریقا',
e = 'سازمان و همگرایی منطقهای آفریقا',
g = 'قوانین الجزایر',
h = 'قوانین آنگولا',
j = 'قوانین بنین',
k = 'قوانین بوتسوانا',
m = 'قوانین تحتالحمایه آفریقای مرکزی بریتانیا',
p = 'قوانین قلمرو بریتانیایی اقیانوس هند',
q = 'قوانین سومالیلند بریتانیا',
t = 'قوانین بورکینافاسو',
v = 'قوانین بوروندی',
w = 'قوانین کامرون',
x = 'قوانین کیپ ورد',
default = 'قوانین آفریقا'
},
r = {
b = 'قوانین جمهوری آفریقای مرکزی',
c = 'قوانین چاد',
e = 'قوانین کومور',
g = 'قوانین کنگو',
k = 'قوانین جیبوتی',
l = 'قوانین تحتالحمایه آفریقای شرقی',
m = 'قوانین مصر',
n = 'قوانین اریتره',
p = 'قوانین اتیوپی',
r = 'قوانین آفریقای استوایی فرانسه',
s = 'قوانین آفریقای غربی فرانسه',
u = 'قوانین گابن',
v = 'قوانین گامبیا',
w = 'قوانین آفریقای شرقی آلمان',
x = 'قوانین غنا',
y = 'قوانین جبلالطارق',
default = 'قوانین آفریقا' -- default duplicates another subclass to prevent errors
},
s = {
a = 'قوانین گینه',
c = 'قوانین گینه بیسائو',
e = 'قوانین گینه استوایی',
f = 'قوانین ایفنی',
g = 'قوانین آفریقای شرقی ایتالیا',
h = 'قوانین ساحل عاج',
i = 'قوانین سومالیلند ایتالیا',
k = 'قوانین کنیا',
l = 'قوانین لسوتو',
m = 'قوانین مایوت',
n = 'قوانین لیبریا',
p = 'قوانین لیبی',
r = 'قوانین ماداگاسکار',
s = 'قوانین مالاوی',
t = 'قوانین مالی',
t = 'قوانین میکرونزی',
u = 'قوانین موریتانی',
v = 'قوانین موریس',
v = 'قوانین جزایر میدوی',
w = 'قوانین مراکش',
x = 'قوانین موزامبیک',
y = 'قوانین نامیبیا',
z = 'قوانین نیجر',
default = 'قوانین آفریقا' -- default duplicates another subclass to prevent errors
},
t = {
a = 'قوانین نیجریه',
c = 'قوانین رئونیون',
d = 'قوانین رواندا',
e = 'قوانین سنت هلنا',
f = 'قوانین سائوتومه و پرینسیپ',
g = 'قوانین سنگال',
h = 'قوانین سیشل',
j = 'قوانین سیرالئون',
k = 'قوانین سومالی',
l = 'قوانین آفریقای جنوبی',
n = 'قوانین آفریقای غربی اسپانیا',
o = 'قوانین صحرای اسپانیا',
q = 'قوانین سودان',
r = 'قوانین اسواتینی',
s = 'قوانین زنگبار',
t = 'قوانین تانزانیا',
u = 'قوانین توگو',
v = 'قوانین تونس',
w = 'قوانین اوگاندا',
x = 'قوانین زئیر',
y = 'قوانین زامبیا',
z = 'قوانین زیمبابوه',
default = 'قوانین آفریقا' -- default duplicates another subclass to prevent errors
},
u = {
a = 'قوانین استرالیا',
b = 'قوانین نیوساوتولز',
c = 'قوانین قلمرو شمالی',
d = 'قوانین کوئینزلند',
e = 'قوانین استرالیای جنوبی',
f = 'قوانین تاسمانی',
g = 'قوانین ویکتوریا',
h = 'قوانین استرالیای غربی',
i = 'قوانین جزایر اشمور و کارتیه',
j = 'قوانین جزیره کریسمس',
k = 'قوانین جزایر کوکوس (کیلینگ)',
l = 'قوانین قلمرو جزایر دریای مرجانی',
n = 'قوانین جزیره نورفولک',
q = 'قوانین نیوزیلند',
default = 'قوانین اقیانوسیه'
},
v = {
a = 'تاریخ حقوق در اقیانوسیه',
b = 'حقوق تطبیقی و یکسان منطقهای استرالیا و نیوزیلند',
c = 'حقوق تطبیقی و یکسان منطقهای اقیانوسیه',
e = 'سازمان و همگرایی منطقهای اقیانوسیه',
h = 'قوانین ساموآی آمریکا',
j = 'قوانین گینه نو بریتانیا',
l = 'قوانین جزایر کوک',
m = 'قوانین جزیره ایستر',
n = 'قوانین فیجی',
o = 'قوانین گینه نو آلمان',
p = 'قوانین پلینزی فرانسه',
q = 'قوانین گوام',
r = 'قوانین کیریباتی',
s = 'قوانین جزایر مارشال',
u = 'قوانین نائورو',
w = 'قوانین کالدونیای جدید',
x = 'قوانین گینه نو هلند',
default = 'قوانین اقیانوسیه' -- default duplicates another subclass to prevent errors
},
w = {
a = 'قوانین نیوئه',
c = 'قوانین جزایر ماریانای شمالی',
e = 'قوانین قلمرو تحت قیمومت جزایر اقیانوس آرام',
g = 'قوانین پالائو',
h = 'قوانین پاپوآ گینه نو',
l = 'قوانین جزیره پیتکرن',
m = 'قوانین جزایر سلیمان',
p = 'قوانین تونگا',
q = 'قوانین تووالو',
r = 'قوانین وانواتو',
t = 'قوانین جزیره ویک',
u = 'قوانین والیس و فوتونا',
w = 'قوانین ساموآی غربی',
x = 'قوانین جنوبگان',
default = 'قوانین اقیانوسیه' -- default duplicates another subclass to prevent errors
},
z = {
a = 'حقوق دریاها',
d = 'حقوق فضای ماورای جو',
default = 'حقوق بینالملل (حقوق ملل)'
}
},
l = {
nosubclass = 'آموزش',
default = 'آموزش عمومی',
a = 'تاریخ آموزش',
b = 'نظریه و عمل آموزش',
c = 'جنبههای ویژه آموزش',
d = 'نهادهای آموزشی ایالات متحده',
e = 'نهادهای آموزشی آمریکا',
f = 'نهادهای آموزشی اروپا',
g = 'نهادهای آموزشی جهان',
h = 'مجلات و نشریات دانشگاهی و مدرسهای',
j = 'انجمنها و برادریهای دانشجویی',
t = 'کتابهای درسی'
},
m = {
nosubclass = 'موسیقی',
default = 'موسیقی عمومی',
l = 'ادبیات موسیقی',
t = 'آموزش و مطالعه موسیقی'
},
n = {
nosubclass = 'هنرهای زیبا',
default = 'هنرهای تجسمی',
a = 'معماری',
b = 'مجسمهسازی',
c = 'طراحی، دیزاین و تصویرسازی',
d = 'نقاشی',
e = 'رسانههای چاپی',
k = 'هنرهای تزئینی',
x = 'هنر بهطور کلی'
},
p = {
nosubclass = 'زبان و ادبیات',
default = 'زبانشناسی و فقهاللغه',
a = {
a = 'زبان و ادبیات لاتین',
default = 'زبان و ادبیات یونانی'
},
b = {
a = 'زبانهای سلتی',
default = 'زبانهای نوین'
},
c = 'زبانهای رومی (رومانس)',
d = {
a = 'زبانهای اسکاندیناوی',
default = 'زبانهای ژرمنی'
},
e = 'زبان انگلیسی',
f = 'زبانهای ژرمنی غربی',
g = {
a = 'زبانهای بالتیک',
b = 'زبان آلبانیایی',
default = 'زبانها و ادبیات اسلاوی'
},
h = {
a = 'زبان و ادبیات باسکی',
default = 'زبانهای اورالی'
},
j = 'زبانها و ادبیات شرقی',
k = 'زبانها و ادبیات هند و ایرانی',
l = {
a = 'زبانها و ادبیات آفریقا',
b = 'زبانها و ادبیات اقیانوسیه',
default = 'زبانها و ادبیات آسیای شرقی'
},
m = {
a = 'زبانهای بومی آمریکا',
b = 'زبانهای مصنوعی',
default = 'زبانهای هایپربورئن'
},
n = 'ادبیات عمومی',
q = 'ادبیات رومی (رومانس)',
r = 'ادبیات انگلیسی',
s = 'ادبیات آمریکایی',
t = 'ادبیات ژرمنی',
z = 'داستان و ادبیات نوجوانان'
},
q = {
nosubclass = 'علوم',
default = 'علوم عمومی',
a = 'ریاضیات',
b = 'نجوم',
c = 'فیزیک',
d = 'شیمی',
e = 'زمینشناسی',
h = 'تاریخ طبیعی و زیستشناسی',
k = 'گیاهشناسی',
l = 'جانورشناسی',
m = 'کالبدشناسی انسان',
p = 'فیزیولوژی',
r = 'میکروبشناسی'
},
r = {
nosubclass = 'پزشکی',
default = 'پزشکی عمومی',
a = 'جنبههای عمومی پزشکی',
b = 'آسیبشناسی',
c = 'طب داخلی',
d = 'جراحی',
e = 'چشمپزشکی',
f = 'گوش و حلق و بینی',
g = 'زنان و زایمان',
j = 'کودکان (اطفال)',
k = 'دندانپزشکی',
l = 'پوست',
m = {
a = 'داروشناسی',
default = 'درمانشناسی'
},
s = 'داروسازی و مواد دارویی',
t = 'پرستاری',
v = 'طب گیاهی، تامسونی و التقاطی',
x = 'هومیوپاتی',
z = 'سایر نظامهای پزشکی'
},
s = {
nosubclass = 'کشاورزی',
default = 'کشاورزی عمومی', -- a
b = 'زراعت گیاهان',
d = 'جنگلداری',
f = 'دامپروری',
h = {
a = 'ماهیگیری با قلاب',
default = 'آبزیپروری و شیلات'
},
k = 'شکار (ورزشی)'
},
t = {
nosubclass = 'فناوری',
default = 'فناوری عمومی',
a = 'مهندسی عمران',
c = {
a = 'مهندسی دریا',
default = 'مهندسی هیدرولیک'
},
d = {
a = 'مهندسی بهداشت',
default = 'فناوری محیطزیست'
},
e = 'مهندسی راه',
f = 'مهندسی و بهرهبرداری راهآهن',
g = 'مهندسی پل',
h = 'ساختوساز بنا',
j = 'مهندسی مکانیک و ماشینآلات',
k = {
a = 'الکترونیک',
b = 'مهندسی هستهای',
default = 'مهندسی برق'
},
l = {
a = 'هوانوردی',
b = 'فضانوردی',
default = 'خودروها'
},
n = {
a = 'متالورژی',
default = 'مهندسی معدن'
},
p = 'فناوری شیمیایی',
r = 'عکاسی',
s = 'صنایع تولیدی',
t = 'صنایع دستی و هنرهای دستی',
x = 'اقتصاد خانه (خانهداری)'
},
u = {
nosubclass = 'علوم نظامی',
default = 'علوم نظامی عمومی',
a = 'ارتشها',
b = 'مدیریت نظامی',
c = 'نگهداری و حملونقل',
d = 'پیادهنظام',
e = 'سوارهنظام',
f = 'توپخانه',
g = {
a = 'نیروی هوایی',
default = 'مهندسی نظامی'
},
h = 'سایر خدمات نظامی'
},
v = {
nosubclass = 'علوم دریایی',
default = 'علوم دریایی عمومی',
a = 'نیروهای دریایی',
b = 'مدیریت نیروی دریایی',
c = 'نگهداری نیروی دریایی',
d = 'ملوانان نیروی دریایی',
e = 'تفنگداران دریایی',
f = 'تسلیحات دریایی',
g = 'خدمات فرعی نیروی دریایی',
k = {
a = 'ناوگان تجاری',
default = 'ناوبری (کشتیرانی)'
},
m = 'کشتیسازی و معماری دریایی'
},
x = {
nosubclass = 'ویکینبشته',
default = 'ویکیپروژهها', -- a
e = 'دوره (عصر)',
p = 'فرایندها',
y = 'سالها'
},
z = {
nosubclass = 'کتابشناسی و علم کتابداری',
default = 'منابع اطلاعاتی', -- a
b = 'کتابها',
c = 'نگارش (نوشتار)',
d = 'باستاننوشتشناسی (پالئوگرافی)',
e = 'صنایع و تجارت کتاب',
f = 'کتابخانهها',
g = 'کتابشناسی'
},
default = 'نمایه'
}
06aka00jx39c66ryog5jm8383dlslpu
فهرست:تصویبنامه راجع به پرچم ایران - مصوب ۱۴ دی ۱۳۳۶ هیئت وزیران.pdf
106
89798
291005
2026-07-11T14:45:43Z
Hanooz
17889
صفحهای تازه حاوی «» ایجاد کرد
291005
proofread-index
text/x-wiki
{{:MediaWiki:Proofreadpage_index_template
|wikidata_item=
|Title=تصویبنامه راجع به پرچم ایران
|Subtitle=
|Volume=
|Issue=
|Edition=
|Author=
|Foreword_Author=
|Translator=
|Editor=
|Illustrator=
|Lyricist=
|Composer=
|Singer=
|Publisher=
|Address=
|Printer=
|Year=1336
|Source=pdf
|Image=1
|Progress=X
|Pages=<pagelist />
|Volumes=
|Remarks=
|Notes=
|Header=
|Footer=
}}
9bdesxz1zdnfreibmdaquniupm0tcek
برگه:تصویبنامه راجع به پرچم ایران - مصوب ۱۴ دی ۱۳۳۶ هیئت وزیران.pdf/۱
104
89799
291006
2026-07-11T15:33:13Z
Hanooz
17889
/* نمونهخوانیشده */
291006
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Hanooz" /></noinclude>[[پرونده:Lion and Sun with Pahlavi Crown.svg|80px|وسط]]
{{وسط بزرگتر۳|{{نستعلیق||{{توخالی|'''وزارت جنگ'''}} }} }}
{{custom rule|Span|50}}
درباره:
هیئت وزیران درجلسه مورخه ۳۶/۱۰/۱۴ بنا بر اصل ۵ [[متمم قانون اساسی]] مراتب مصرح زیر را در مورد پرچم ایران تصویب نمودند.
۱) الوان رسمی پرچم ایران از سه رنگ مساوی سبز و سفید و سرخ و علامت شیر خورشید تشکیل میگردد. بطوریکه سبز بالا و سفید وسط و قرمز در پائین قرار خواهد گرفت.
۲) نقش شیر خورشید برنگ زرد طلائی در وسط پرچم روی قسمت سفید و بقسمی رسم شود که سر شیر بطرف چوب پرچم و شمشیر بطور عمودی در دست راست شیر قرار گرفته و پای شیر بطرف رنگ قرمز دم شیر بشکل قلاب کمر (اس ایتالیک) و یک خم بطرف بالا داشته و نگاه شیر متمایل خواهد بود. خورشید بطور نیم قرص در انتهای گردن و کمر واقع شده و اشعههای آن بایستی بسمت سر تجاوز نماید (طبق شکل شماره ۱) زیر پای شیر مطابق شکل شماره ۱ قسمت الف رعایت نکات فوق در هر دوروی پرچم لازم میباشد.
۳) پرچم نظامی بهمان ترتیب و اندازه پرچم ایران بوده و فقط یک تاج پهلوی در بالای سر شیر و خورشید و دور شیر و خورشید یک دایره برگ خرما (بالم) قرار گرفته و در قسمت فوقانی باز میباشد و در پائین بشکل پروانه (پاپیون) زده شده (طبق شکل شماره ۲)
۴) نسبت ابعاد پرچم ایران با توجه بمکانی که نصب میشود باندازههای زیر خواهد بود و اصولا نسبت عرض بطول پرچم به نسبت یک به یک و هفتاد و پنج میباشد.
{{unbulleted list|
|الف {{=}} ۰/۵۹ × ۰/۴۵
|ب {{=}} ۱/۶۰ × ۰/۹۰
|ج {{=}} ۱/۷۵ × ۱/۰۰
|د {{=}} ۲/۱۵ × ۱/۲۵
|هـ {{=}} ۲/۴۰ × ۱/۵۰
|و {{=}} ۰/۲۷ × ۰/۱۵ (مخصوص پرچم روی میز)
}}<noinclude></noinclude>
0vqlpgjhfkgr4h934epzueah9you5ru
291017
291006
2026-07-11T15:49:48Z
Hanooz
17889
291017
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Hanooz" /></noinclude><section begin="s1" />
[[پرونده:Lion and Sun with Pahlavi Crown.svg|80px|وسط]]
{{وسط بزرگتر۳|{{نستعلیق||{{توخالی|'''وزارت جنگ'''}} }} }}
{{custom rule|Span|50}}
درباره:
هیئت وزیران درجلسه مورخه ۳۶/۱۰/۱۴ بنا بر اصل ۵ [[متمم قانون اساسی]] مراتب مصرح زیر را در مورد پرچم ایران تصویب نمودند.
۱) الوان رسمی پرچم ایران از سه رنگ مساوی سبز و سفید و سرخ و علامت شیر خورشید تشکیل میگردد. بطوریکه سبز بالا و سفید وسط و قرمز در پائین قرار خواهد گرفت.
۲) نقش شیر خورشید برنگ زرد طلائی در وسط پرچم روی قسمت سفید و بقسمی رسم شود که سر شیر بطرف چوب پرچم و شمشیر بطور عمودی در دست راست شیر قرار گرفته و پای شیر بطرف رنگ قرمز دم شیر بشکل قلاب کمر (اس ایتالیک) و یک خم بطرف بالا داشته و نگاه شیر متمایل خواهد بود. خورشید بطور نیم قرص در انتهای گردن و کمر واقع شده و اشعههای آن بایستی بسمت سر تجاوز نماید (طبق شکل شماره ۱) زیر پای شیر مطابق شکل شماره ۱ قسمت الف رعایت نکات فوق در هر دوروی پرچم لازم میباشد.
۳) پرچم نظامی بهمان ترتیب و اندازه پرچم ایران بوده و فقط یک تاج پهلوی در بالای سر شیر و خورشید و دور شیر و خورشید یک دایره برگ خرما (بالم) قرار گرفته و در قسمت فوقانی باز میباشد و در پائین بشکل پروانه (پاپیون) زده شده (طبق شکل شماره ۲)
۴) نسبت ابعاد پرچم ایران با توجه بمکانی که نصب میشود باندازههای زیر خواهد بود و اصولا نسبت عرض بطول پرچم به نسبت یک به یک و هفتاد و پنج میباشد.
{{unbulleted list|
|الف {{=}} ۰/۵۹ × ۰/۴۵
|ب {{=}} ۱/۶۰ × ۰/۹۰
|ج {{=}} ۱/۷۵ × ۱/۰۰
|د {{=}} ۲/۱۵ × ۱/۲۵
|هـ {{=}} ۲/۴۰ × ۱/۵۰
|و {{=}} ۰/۲۷ × ۰/۱۵ (مخصوص پرچم روی میز)
}}<noinclude></noinclude>
aox8kq1cbivdo5idmby4k0ka5a7aznz
291019
291017
2026-07-11T15:51:30Z
Hanooz
17889
نسخهٔ [[Special:Diff/291017|291017]] از [[Special:Contributions/Hanooz|Hanooz]] ([[User talk:Hanooz|بحث]]) خنثی شد
291019
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Hanooz" /></noinclude>[[پرونده:Lion and Sun with Pahlavi Crown.svg|80px|وسط]]
{{وسط بزرگتر۳|{{نستعلیق||{{توخالی|'''وزارت جنگ'''}} }} }}
{{custom rule|Span|50}}
درباره:
هیئت وزیران درجلسه مورخه ۳۶/۱۰/۱۴ بنا بر اصل ۵ [[متمم قانون اساسی]] مراتب مصرح زیر را در مورد پرچم ایران تصویب نمودند.
۱) الوان رسمی پرچم ایران از سه رنگ مساوی سبز و سفید و سرخ و علامت شیر خورشید تشکیل میگردد. بطوریکه سبز بالا و سفید وسط و قرمز در پائین قرار خواهد گرفت.
۲) نقش شیر خورشید برنگ زرد طلائی در وسط پرچم روی قسمت سفید و بقسمی رسم شود که سر شیر بطرف چوب پرچم و شمشیر بطور عمودی در دست راست شیر قرار گرفته و پای شیر بطرف رنگ قرمز دم شیر بشکل قلاب کمر (اس ایتالیک) و یک خم بطرف بالا داشته و نگاه شیر متمایل خواهد بود. خورشید بطور نیم قرص در انتهای گردن و کمر واقع شده و اشعههای آن بایستی بسمت سر تجاوز نماید (طبق شکل شماره ۱) زیر پای شیر مطابق شکل شماره ۱ قسمت الف رعایت نکات فوق در هر دوروی پرچم لازم میباشد.
۳) پرچم نظامی بهمان ترتیب و اندازه پرچم ایران بوده و فقط یک تاج پهلوی در بالای سر شیر و خورشید و دور شیر و خورشید یک دایره برگ خرما (بالم) قرار گرفته و در قسمت فوقانی باز میباشد و در پائین بشکل پروانه (پاپیون) زده شده (طبق شکل شماره ۲)
۴) نسبت ابعاد پرچم ایران با توجه بمکانی که نصب میشود باندازههای زیر خواهد بود و اصولا نسبت عرض بطول پرچم به نسبت یک به یک و هفتاد و پنج میباشد.
{{unbulleted list|
|الف {{=}} ۰/۵۹ × ۰/۴۵
|ب {{=}} ۱/۶۰ × ۰/۹۰
|ج {{=}} ۱/۷۵ × ۱/۰۰
|د {{=}} ۲/۱۵ × ۱/۲۵
|هـ {{=}} ۲/۴۰ × ۱/۵۰
|و {{=}} ۰/۲۷ × ۰/۱۵ (مخصوص پرچم روی میز)
}}<noinclude></noinclude>
0vqlpgjhfkgr4h934epzueah9you5ru
برگه:تصویبنامه راجع به پرچم ایران - مصوب ۱۴ دی ۱۳۳۶ هیئت وزیران.pdf/۲
104
89800
291008
2026-07-11T15:39:53Z
Hanooz
17889
/* نمونهخوانیشده */
291008
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Hanooz" /></noinclude>[[پرونده:Lion and Sun with Pahlavi Crown.svg|80px|وسط]]
{{وسط بزرگتر۳|{{نستعلیق||{{توخالی|'''وزارت جنگ'''}} }} }}
{{custom rule|Span|50}}
درباره:
۵) چون تاکنون در موسسات و بنگاه ها و اماکن ملی از پرچمهای بدون علامت شیر و خورشید استفاده میشود لذا موافقت میشود که موسسات غیردولتی همواره برای تزئین در اعیاد و جشنها و همچنین افراشتن پرچم در بالای عمارت از پرچمهای بدون علامت شیر و خورشید (بابعاد بالا) استفاده نمایند (طبق شکل شماره ۳)
۶) شیر و خورشید و تاج پهلوی فقط روی مراسلات رسمی بکار برده خواهد شد (طبق شکل شماره ۴)
۷) چوب پرچم برنگ سفید و طول آن همواره سه برابر عرض پرچم بوده و طنابی که پرچم را بچوب آن اتصال میدهد نیز باید برنگ سفید باشد. سر چوب پرچمهای رسمی قبهای کروی شکل برنگ سفید نصب خواهد شد.
{{ته}}<noinclude></noinclude>
7kl8plpct50zt64aubiys3h04bmaaog
291018
291008
2026-07-11T15:51:20Z
Hanooz
17889
291018
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Hanooz" /></noinclude><noinclude>[[پرونده:Lion and Sun with Pahlavi Crown.svg|80px|وسط]]
{{وسط بزرگتر۳|{{نستعلیق||{{توخالی|'''وزارت جنگ'''}} }} }}
{{custom rule|Span|50}}
</noinclude>
درباره:
۵) چون تاکنون در موسسات و بنگاه ها و اماکن ملی از پرچمهای بدون علامت شیر و خورشید استفاده میشود لذا موافقت میشود که موسسات غیردولتی همواره برای تزئین در اعیاد و جشنها و همچنین افراشتن پرچم در بالای عمارت از پرچمهای بدون علامت شیر و خورشید (بابعاد بالا) استفاده نمایند (طبق شکل شماره ۳)
۶) شیر و خورشید و تاج پهلوی فقط روی مراسلات رسمی بکار برده خواهد شد (طبق شکل شماره ۴)
۷) چوب پرچم برنگ سفید و طول آن همواره سه برابر عرض پرچم بوده و طنابی که پرچم را بچوب آن اتصال میدهد نیز باید برنگ سفید باشد. سر چوب پرچمهای رسمی قبهای کروی شکل برنگ سفید نصب خواهد شد.
{{ته}}<noinclude></noinclude>
ftcd3vglpfha2x2vynyxy04ks7kbdz3
291021
291018
2026-07-11T15:54:57Z
Hanooz
17889
291021
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Hanooz" /></noinclude><noinclude>[[پرونده:Lion and Sun with Pahlavi Crown.svg|80px|وسط]]
{{وسط بزرگتر۳|{{نستعلیق||{{توخالی|'''وزارت جنگ'''}} }} }}
{{custom rule|Span|50}}
درباره:
</noinclude>
۵) چون تاکنون در موسسات و بنگاه ها و اماکن ملی از پرچمهای بدون علامت شیر و خورشید استفاده میشود لذا موافقت میشود که موسسات غیردولتی همواره برای تزئین در اعیاد و جشنها و همچنین افراشتن پرچم در بالای عمارت از پرچمهای بدون علامت شیر و خورشید (بابعاد بالا) استفاده نمایند (طبق شکل شماره ۳)
۶) شیر و خورشید و تاج پهلوی فقط روی مراسلات رسمی بکار برده خواهد شد (طبق شکل شماره ۴)
۷) چوب پرچم برنگ سفید و طول آن همواره سه برابر عرض پرچم بوده و طنابی که پرچم را بچوب آن اتصال میدهد نیز باید برنگ سفید باشد. سر چوب پرچمهای رسمی قبهای کروی شکل برنگ سفید نصب خواهد شد.
{{ته}}<noinclude></noinclude>
pp0l12l1skevjdrzpwdj3virqnbr0px
روزنامه قانون/۱
0
89801
291010
2026-07-11T15:44:11Z
Hanooz
17889
Hanooz صفحهٔ [[روزنامه قانون/۱]] را به [[روزنامه قانون/شماره ۱]] منتقل کرد
291010
wikitext
text/x-wiki
#تغییر_مسیر [[روزنامه قانون/شماره ۱]]
ddt77wpmifoi5cd6fb4rnnhgm2bk6is
روزنامه قانون/15
0
89802
291012
2026-07-11T15:44:31Z
Hanooz
17889
Hanooz صفحهٔ [[روزنامه قانون/15]] را به [[روزنامه قانون/شماره ۱۵]] منتقل کرد
291012
wikitext
text/x-wiki
#تغییر_مسیر [[روزنامه قانون/شماره ۱۵]]
i1jxq2mr2t592aeul0cg4nc3t7drc6u
تصویبنامه راجع به پرچم ایران
0
89803
291016
2026-07-11T15:49:00Z
Hanooz
17889
صفحهای تازه حاوی «{{header | title = تصویبنامه راجع به پرچم ایران | author = وزارت جنگ | translator = | section = | previous = | next = | year = 1336 | notes = مصوب ۱۳۳۶ هیئت وزیران }} <pages index=":تصویبنامه راجع به پرچم ایران - مصوب ۱۴ دی ۱۳۳۶ هیئت وزیران.pdf" from=1 to=2 label="s1" /> رده:آثار نوشت...» ایجاد کرد
291016
wikitext
text/x-wiki
{{header
| title = تصویبنامه راجع به پرچم ایران
| author = وزارت جنگ
| translator =
| section =
| previous =
| next =
| year = 1336
| notes = مصوب ۱۳۳۶ هیئت وزیران
}}
<pages index=":تصویبنامه راجع به پرچم ایران - مصوب ۱۴ دی ۱۳۳۶ هیئت وزیران.pdf" from=1 to=2 label="s1" />
[[رده:آثار نوشتهشده به زبان فارسی]]
g0to2n84a55dzgngijo8t0x3gltobpx
291020
291016
2026-07-11T15:54:05Z
Hanooz
17889
291020
wikitext
text/x-wiki
{{header
| title = تصویبنامه راجع به پرچم ایران
| author = وزارت جنگ
| translator =
| section =
| previous =
| next =
| year = 1336
| notes = مصوب ۱۳۳۶ هیئت وزیران
}}
<pages index="تصویبنامه راجع به پرچم ایران - مصوب ۱۴ دی ۱۳۳۶ هیئت وزیران.pdf" from=1 to=2 />
[[رده:آثار نوشتهشده به زبان فارسی]]
gq7qumxhihyermgudqq1pj37nmyy6z4
291022
291020
2026-07-11T15:57:49Z
Hanooz
17889
added [[Category:نشانشناسی]] using [[Help:Gadget-HotCat|HotCat]]
291022
wikitext
text/x-wiki
{{header
| title = تصویبنامه راجع به پرچم ایران
| author = وزارت جنگ
| translator =
| section =
| previous =
| next =
| year = 1336
| notes = مصوب ۱۳۳۶ هیئت وزیران
}}
<pages index="تصویبنامه راجع به پرچم ایران - مصوب ۱۴ دی ۱۳۳۶ هیئت وزیران.pdf" from=1 to=2 />
[[رده:آثار نوشتهشده به زبان فارسی]]
[[رده:نشانشناسی]]
lt1dy18zvyjppikriynkozihc3p8jdq
رده:نشانشناسی
14
89804
291023
2026-07-11T15:58:11Z
Hanooz
17889
صفحهای تازه حاوی «[[رده:فرهنگ]]» ایجاد کرد
291023
wikitext
text/x-wiki
[[رده:فرهنگ]]
ao9rzq79h2b7ecl1mlrscqzr9b703d1
الگو:Shortcut/styles.css
10
89805
291026
2026-07-11T16:43:24Z
Hanooz
17889
صفحهای تازه حاوی «.wst-shortcut { display:table; border-collapse:collapse; border:1px solid var(--border-color-base, #999); margin:2px 0px 2px 8px; float:right; clear:right; } .wst-shortcut > div { display:table-row-group; background-color:var(--background-color-base, #fff); } .wst-shortcut > div > div { display:table-row; } .wst-shortcut > div > div > div { display:table-cell; font-size:86%; font-weight:bold; padding:4px; text-align:cente...» ایجاد کرد
291026
sanitized-css
text/css
.wst-shortcut {
display:table;
border-collapse:collapse;
border:1px solid var(--border-color-base, #999);
margin:2px 0px 2px 8px;
float:right;
clear:right;
}
.wst-shortcut > div {
display:table-row-group;
background-color:var(--background-color-base, #fff);
}
.wst-shortcut > div > div {
display:table-row;
}
.wst-shortcut > div > div > div {
display:table-cell;
font-size:86%;
font-weight:bold;
padding:4px;
text-align:center;
}
.wst-shortcut > div > div > div > span {
letter-spacing:1px;
}
tezv4175s07uy2gtd6lyu19c4vt9ah1
291028
291026
2026-07-11T16:57:26Z
Hanooz
17889
291028
sanitized-css
text/css
.wst-shortcut {
display:table;
border-collapse:collapse;
border:1px solid var(--border-color-base, #999);
margin:2px 0px 2px 8px;
float:left;
clear:left;
}
.wst-shortcut > div {
display:table-row-group;
background-color:var(--background-color-base, #fff);
}
.wst-shortcut > div > div {
display:table-row;
}
.wst-shortcut > div > div > div {
display:table-cell;
font-size:86%;
font-weight:bold;
padding:4px;
text-align:center;
}
.wst-shortcut > div > div > div > span {
letter-spacing:1px;
}
78hqi3em4b9a48jqdjn1uss34dl9mo9
درگاه:درگاهها
100
89806
291031
2026-07-11T17:32:57Z
Hanooz
17889
صفحهای تازه حاوی «{{portal header |name = درگاهها |parent = |class = none |reviewed = n/a |sort = * |shortcut = [[د:د]] |notes = این درگاه بالاترین سطح درگاههای ویکینبشته است که بر پایهٔ نسخهٔ بومیسازیشدهای از [[Library of Congress Classification|سیستم ردهبندی کتابخانه کنگره]] تنظیم شده است. میتوانید ط...» ایجاد کرد
291031
wikitext
text/x-wiki
{{portal header
|name = درگاهها
|parent =
|class = none
|reviewed = n/a
|sort = *
|shortcut = [[د:د]]
|notes = این درگاه بالاترین سطح درگاههای ویکینبشته است که بر پایهٔ نسخهٔ بومیسازیشدهای از [[Library of Congress Classification|سیستم ردهبندی کتابخانه کنگره]] تنظیم شده است. میتوانید طریق ردههای زیر نگاهی به درگاهها بیاندازید یا به یک [[Special:Random/Portal|درگاه تصادفی]] بروید.
<P>برای فهرستی تصویری از درگاههای اصلی [[ویکینبشته:آثار]] را ببینید.</P>
}}
{| class="wikitable" style="margin: 1em auto 1em auto; border: 2px solid;"
|-
!رده||حوزهٔ موضوعی
|-
|style="text-align: center;"|A||[[Portal:{{Library of Congress Classification|class=A}}|{{Library of Congress Classification|class=A}}]]
|-
|style="text-align: center;"|B||[[Portal:{{Library of Congress Classification|class=B}}|{{Library of Congress Classification|class=B}}]]
|-
|style="text-align: center;"|C||[[Portal:{{Library of Congress Classification|class=C}}|{{Library of Congress Classification|class=C}}]]
|-
|style="text-align: center;"|D||[[Portal:{{Library of Congress Classification|class=D}}|{{Library of Congress Classification|class=D}}]]
|-
|style="text-align: center;"|E||[[Portal:{{Library of Congress Classification|class=E}}|{{Library of Congress Classification|class=E}}]]
|-
|style="text-align: center;"|F||[[Portal:{{Library of Congress Classification|class=F}}|{{Library of Congress Classification|class=F}}]]
|-
|style="text-align: center;"|G||[[Portal:{{Library of Congress Classification|class=G}}|{{Library of Congress Classification|class=G}}]]
|-
|style="text-align: center;"|H||[[Portal:{{Library of Congress Classification|class=H}}|{{Library of Congress Classification|class=H}}]]
|-
|style="text-align: center;"|I||[[Portal:{{Library of Congress Classification|class=I}}|{{Library of Congress Classification|class=I}}]]
|-
|style="text-align: center;"|J||[[Portal:{{Library of Congress Classification|class=J}}|{{Library of Congress Classification|class=J}}]]
|-
|style="text-align: center;"|K||[[Portal:{{Library of Congress Classification|class=K}}|{{Library of Congress Classification|class=K}}]]
|-
|style="text-align: center;"|L||[[Portal:{{Library of Congress Classification|class=L}}|{{Library of Congress Classification|class=L}}]]
|-
|style="text-align: center;"|M||[[Portal:{{Library of Congress Classification|class=M}}|{{Library of Congress Classification|class=M}}]]
|-
|style="text-align: center;"|N||[[Portal:{{Library of Congress Classification|class=N}}|{{Library of Congress Classification|class=N}}]]
|-
|style="text-align: center;"|P||[[Portal:{{Library of Congress Classification|class=P}}|{{Library of Congress Classification|class=P}}]]
|-
|style="text-align: center;"|Q||[[Portal:{{Library of Congress Classification|class=Q}}|{{Library of Congress Classification|class=Q}}]]
|-
|style="text-align: center;"|R||[[Portal:{{Library of Congress Classification|class=R}}|{{Library of Congress Classification|class=R}}]]
|-
|style="text-align: center;"|S||[[Portal:{{Library of Congress Classification|class=S}}|{{Library of Congress Classification|class=S}}]]
|-
|style="text-align: center;"|T||[[Portal:{{Library of Congress Classification|class=T}}|{{Library of Congress Classification|class=T}}]]
|-
|style="text-align: center;"|U||[[Portal:{{Library of Congress Classification|class=U}}|{{Library of Congress Classification|class=U}}]]
|-
|style="text-align: center;"|V||[[Portal:{{Library of Congress Classification|class=V}}|{{Library of Congress Classification|class=V}}]]
|-
|style="text-align: center;"|X||[[Portal:{{Library of Congress Classification|class=X}}|{{Library of Congress Classification|class=X}}]]
|-
|style="text-align: center;"|Z||[[Portal:{{Library of Congress Classification|class=Z}}|{{Library of Congress Classification|class=Z}}]]
|-
! colspan="2" | [[درگاه:نمایه|نمایه]]
|}
12y3amv9jg2m7qg76sr6j2mzhx3xw4m
291032
291031
2026-07-11T17:36:03Z
Hanooz
17889
291032
wikitext
text/x-wiki
{{portal header
|name = درگاهها
|parent =
|class = none
|reviewed = n/a
|sort = *
|shortcut = [[د:د]]
|notes = این درگاه بالاترین سطح درگاههای ویکینبشته است که بر پایهٔ نسخهٔ بومیسازیشدهای از [[Library of Congress Classification|سیستم ردهبندی کتابخانه کنگره]] تنظیم شده است. میتوانید از طریق ردههای زیر گشتی در درگاهها بزنید یا به یک [[Special:Random/Portal|درگاه تصادفی]] بروید.
<P>برای فهرستی تصویری از درگاههای اصلی [[ویکینبشته:آثار]] را ببینید.</P>
}}
{| class="wikitable" style="margin: 1em auto 1em auto; border: 2px solid;"
|-
!رده||حوزهٔ موضوعی
|-
|style="text-align: center;"|A||[[Portal:{{Library of Congress Classification|class=A}}|{{Library of Congress Classification|class=A}}]]
|-
|style="text-align: center;"|B||[[Portal:{{Library of Congress Classification|class=B}}|{{Library of Congress Classification|class=B}}]]
|-
|style="text-align: center;"|C||[[Portal:{{Library of Congress Classification|class=C}}|{{Library of Congress Classification|class=C}}]]
|-
|style="text-align: center;"|D||[[Portal:{{Library of Congress Classification|class=D}}|{{Library of Congress Classification|class=D}}]]
|-
|style="text-align: center;"|E||[[Portal:{{Library of Congress Classification|class=E}}|{{Library of Congress Classification|class=E}}]]
|-
|style="text-align: center;"|F||[[Portal:{{Library of Congress Classification|class=F}}|{{Library of Congress Classification|class=F}}]]
|-
|style="text-align: center;"|G||[[Portal:{{Library of Congress Classification|class=G}}|{{Library of Congress Classification|class=G}}]]
|-
|style="text-align: center;"|H||[[Portal:{{Library of Congress Classification|class=H}}|{{Library of Congress Classification|class=H}}]]
|-
|style="text-align: center;"|I||[[Portal:{{Library of Congress Classification|class=I}}|{{Library of Congress Classification|class=I}}]]
|-
|style="text-align: center;"|J||[[Portal:{{Library of Congress Classification|class=J}}|{{Library of Congress Classification|class=J}}]]
|-
|style="text-align: center;"|K||[[Portal:{{Library of Congress Classification|class=K}}|{{Library of Congress Classification|class=K}}]]
|-
|style="text-align: center;"|L||[[Portal:{{Library of Congress Classification|class=L}}|{{Library of Congress Classification|class=L}}]]
|-
|style="text-align: center;"|M||[[Portal:{{Library of Congress Classification|class=M}}|{{Library of Congress Classification|class=M}}]]
|-
|style="text-align: center;"|N||[[Portal:{{Library of Congress Classification|class=N}}|{{Library of Congress Classification|class=N}}]]
|-
|style="text-align: center;"|P||[[Portal:{{Library of Congress Classification|class=P}}|{{Library of Congress Classification|class=P}}]]
|-
|style="text-align: center;"|Q||[[Portal:{{Library of Congress Classification|class=Q}}|{{Library of Congress Classification|class=Q}}]]
|-
|style="text-align: center;"|R||[[Portal:{{Library of Congress Classification|class=R}}|{{Library of Congress Classification|class=R}}]]
|-
|style="text-align: center;"|S||[[Portal:{{Library of Congress Classification|class=S}}|{{Library of Congress Classification|class=S}}]]
|-
|style="text-align: center;"|T||[[Portal:{{Library of Congress Classification|class=T}}|{{Library of Congress Classification|class=T}}]]
|-
|style="text-align: center;"|U||[[Portal:{{Library of Congress Classification|class=U}}|{{Library of Congress Classification|class=U}}]]
|-
|style="text-align: center;"|V||[[Portal:{{Library of Congress Classification|class=V}}|{{Library of Congress Classification|class=V}}]]
|-
|style="text-align: center;"|X||[[Portal:{{Library of Congress Classification|class=X}}|{{Library of Congress Classification|class=X}}]]
|-
|style="text-align: center;"|Z||[[Portal:{{Library of Congress Classification|class=Z}}|{{Library of Congress Classification|class=Z}}]]
|-
! colspan="2" | [[درگاه:نمایه|نمایه]]
|}
95d0s4sftlun6q6k0k93v4tvycjr49t
د:د
0
89807
291035
2026-07-11T17:43:24Z
Hanooz
17889
تغییرمسیر به [[درگاه:درگاهها]]
291035
wikitext
text/x-wiki
#تغییر_مسیر [[درگاه:درگاهها]]
s59a7hcfaosm4c126e75ua7vuspvpv0
الگو:راهنمای تازهکاران
10
89808
291050
2026-07-11T20:22:27Z
Hanooz
17889
صفحهای تازه حاوی «{{Navbox | name = Beginner navbox | title = راهنمای تازهکاران | image = [[File:Crystal128-personal.svg|50px]] | listclass = hlist | group1 = Reading | list1 = *[[Help:Beginner's guide to navigation|Navigation]] *[[Help:Beginner's guide to reliability|Reliability]] | group2 = Editing | list2 = *[[Help:Beginner's guide to adding texts|Adding texts]] *Help:Beginner's guide...» ایجاد کرد
291050
wikitext
text/x-wiki
{{Navbox
| name = Beginner navbox
| title = راهنمای تازهکاران
| image = [[File:Crystal128-personal.svg|50px]]
| listclass = hlist
| group1 = Reading
| list1 =
*[[Help:Beginner's guide to navigation|Navigation]]
*[[Help:Beginner's guide to reliability|Reliability]]
| group2 = Editing
| list2 =
*[[Help:Beginner's guide to adding texts|Adding texts]]
*[[Help:Beginner's guide to sources|Sources]]
*[[Help:Beginner's guide to copyright|Copyright]]
*[[Help:Beginner's guide to Index: files|Index pages]]
*[[Help:Beginner's guide to proofreading|Proofreading]]
*[[Help:Beginner's guide to typography|Typography]]
*[[Help:Beginner's guide to validation|Validation]]
*[[Help:Beginner's guide to transclusion|Transclusion]]
*[[Help:Beginner's guide to finishing touches|Finishing touches]]
| group3 = Maintaining
| list3 =
* [[Help:Beginner's guide to maintenance|Maintenance]]
* [[Help:Beginner's guide to deletion|Deletion]]
}}<noinclude>{{documentation}}</noinclude>
c1vt5fmx77elir97whsb3sbhpl6bzc6
291060
291050
2026-07-11T20:43:09Z
Hanooz
17889
291060
wikitext
text/x-wiki
{{Navbox
| name = Beginner navbox
| title = راهنمای تازهکاران
| image = [[File:Crystal128-personal.svg|50px]]
| listclass = hlist
| group1 = خواندن
| list1 =
*[[راهنما:راهنمای تازهواردان درباره ناوبری|ناوبری]]
*[[راهنما:راهنمای تازهواردان درباره اعتبارسنجی|اعتبارسنجی]]
| group2 = ویرایش
| list2 =
*[[راهنما:راهنمای تازهواردان درباره افزودن متن|افزودن متون]]
*[[راهنما:راهنمای تازهواردان درباره منابع|منابع]]
*[[Help:Beginner's guide to copyright|حق نشر]]
*[[راهنما:راهنمای تازهواردان درباره فهرست پروندهها|صفحات فهرست]]
*[[Help:Beginner's guide to proofreading|نمونهخوانی]]
*[[Help:Beginner's guide to typography|تایپوگرافی]]
*[[Help:Beginner's guide to validation|همسنجی]]
*[[Help:Beginner's guide to transclusion|تراگنجانش]]
*[[Help:Beginner's guide to finishing touches|صیقل نهایی]]
| group3 = نگهداری
| list3 =
* [[Help:Beginner's guide to maintenance|نگهداری]]
* [[Help:Beginner's guide to deletion|حذف]]
}}<noinclude>{{documentation}}</noinclude>
skp5oyf0knxst1ehik5ih1ddd7g60n3
291066
291060
2026-07-11T20:48:21Z
Hanooz
17889
291066
wikitext
text/x-wiki
{{Navbox
| name = Beginner navbox
| title = راهنمای تازهکاران
| image = [[File:Crystal128-personal.svg|50px]]
| listclass = hlist
| group1 = خواندن
| list1 =
*[[راهنما:راهنمای تازهواردان درباره ناوبری|ناوبری]]
*[[راهنما:راهنمای تازهواردان درباره اعتبارسنجی|اعتبارسنجی]]
| group2 = ویرایش
| list2 =
*[[راهنما:راهنمای تازهواردان درباره افزودن متن|افزودن متون]]
*[[راهنما:راهنمای تازهواردان درباره منابع|منابع]]
*[[Help:Beginner's guide to copyright|حق نشر]]
*[[راهنما:راهنمای تازهواردان درباره فهرست پروندهها|صفحات فهرست]]
*[[راهنما:راهنمای تازهواردان درباره نمونهخوانی|نمونهخوانی]]
*[[Help:Beginner's guide to typography|تایپوگرافی]]
*[[راهنما:راهنمای تازهواردان درباره ارزیابی|همسنجی]]
*[[راهنما:راهنمای تازهواردان درباره تراگنجانی|تراگنجانش]]
*[[راهنما:راهنمای تازهواردان درباره ویرایش پایانی|صیقل نهایی]]
| group3 = نگهداری
| list3 =
* [[Help:Beginner's guide to maintenance|نگهداری]]
* [[راهنما:راهنمای تازهواردان درباره حذف|حذف]]
}}<noinclude>{{documentation}}</noinclude>
d0h3csireo2b8kieiz3w5h4he8yz4tr
الگو:Hlist/styles.css
10
89809
291052
2026-07-11T20:27:26Z
Hanooz
17889
صفحهای تازه حاوی «/* * hlist styles are defined in core and Minerva and differ in Minerva. The * current definitions here (2023-01-01) are sufficient to override Minerva * without use of the hlist-separated class. The most problematic styles were * related to margin, padding, and the bullet. Check files listed at * [[MediaWiki talk:Common.css/to do#hlist-separated]] */ /* * TODO: When the majority of readership supports it (or some beautiful wor...» ایجاد کرد
291052
sanitized-css
text/css
/*
* hlist styles are defined in core and Minerva and differ in Minerva. The
* current definitions here (2023-01-01) are sufficient to override Minerva
* without use of the hlist-separated class. The most problematic styles were
* related to margin, padding, and the bullet. Check files listed at
* [[MediaWiki talk:Common.css/to do#hlist-separated]]
*/
/*
* TODO: When the majority of readership supports it (or some beautiful world
* in which grade C support is above the minimum threshold), use :is()
*/
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
padding: 0;
}
/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
/*
* don't trust the note that says margin doesn't work with inline
* removing margin: 0 makes dds have margins again
* We also want to reset margin-right in Minerva
*/
margin: 0;
display: inline;
}
/* Display requested top-level lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
/* Display nested lists inline */
.hlist dl dl,
.hlist dl ol,
.hlist dl ul,
.hlist ol dl,
.hlist ol ol,
.hlist ol ul,
.hlist ul dl,
.hlist ul ol,
.hlist ul ul {
display: inline;
}
/* Hide empty list items */
.hlist .mw-empty-li {
display: none;
}
/* TODO: :not() can maybe be used here to remove the later rule. naive test
* seems to work. more testing needed. like so:
*.hlist dt:not(:last-child)::after {
* content: ": ";
*}
*.hlist dd:not(:last-child)::after,
*.hlist li:not(:last-child)::after {
* content: " · ";
* font-weight: bold;
*}
*/
/* Generate interpuncts */
.hlist dt::after {
content: ": ";
}
.hlist dd::after,
.hlist li::after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child::after,
.hlist dt:last-child::after,
.hlist li:last-child::after {
content: none;
}
/* Add parentheses around nested lists */
.hlist dd dd:first-child::before,
.hlist dd dt:first-child::before,
.hlist dd li:first-child::before,
.hlist dt dd:first-child::before,
.hlist dt dt:first-child::before,
.hlist dt li:first-child::before,
.hlist li dd:first-child::before,
.hlist li dt:first-child::before,
.hlist li li:first-child::before {
content: " (";
font-weight: normal;
}
.hlist dd dd:last-child::after,
.hlist dd dt:last-child::after,
.hlist dd li:last-child::after,
.hlist dt dd:last-child::after,
.hlist dt dt:last-child::after,
.hlist dt li:last-child::after,
.hlist li dd:last-child::after,
.hlist li dt:last-child::after,
.hlist li li:last-child::after {
content: ")";
font-weight: normal;
}
/* Put ordinals in front of ordered list items */
.hlist ol {
counter-reset: listitem;
}
.hlist ol > li {
counter-increment: listitem;
}
.hlist ol > li::before {
content: " " counter(listitem) "\a0";
}
.hlist dd ol > li:first-child::before,
.hlist dt ol > li:first-child::before,
.hlist li ol > li:first-child::before {
content: " (" counter(listitem) "\a0";
}
k88feadhqtt87k5tlkeeh17apsyjbpa
الگو:Hlist
10
89810
291053
2026-07-11T20:27:46Z
Hanooz
17889
صفحهای تازه حاوی «{{<includeonly>safesubst:</includeonly>#invoke:list|horizontal}}<noinclude> {{documentation}} <!-- Categories go on the /doc subpage, and interwikis go on Wikidata. --> </noinclude>» ایجاد کرد
291053
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
پودمان:Navbox/styles.css
828
89811
291054
2026-07-11T20:28:55Z
Hanooz
17889
صفحهای تازه حاوی «.navbox { box-sizing: border-box; border-width: 1px; border-style: solid; border-color: #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, /* TODO: remove first line after transclusions have updated */ .nav...» ایجاد کرد
291054
sanitized-css
text/css
.navbox {
box-sizing: border-box;
border-width: 1px;
border-style: solid;
border-color: #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, /* TODO: remove first line after transclusions have updated */
.navbox + .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: #202122;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
color: #202122;
}
.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: #202122;
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
background-color: #ddf; /* Level 2 color */
color: #202122;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
background-color: #e6e6ff; /* Level 3 color */
color: #202122;
}
.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;
}
}
o6z4gjxr0dgpjh3xs6kh2ee03smm39v
291059
291054
2026-07-11T20:34:07Z
Hanooz
17889
291059
sanitized-css
text/css
.navbox {
box-sizing: border-box;
border-width: 1px;
border-style: solid;
border-color: #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, /* TODO: remove first line after transclusions have updated */
.navbox + .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: #202122;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
color: #202122;
}
.navbox-list-with-group {
text-align: right;
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: #202122;
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
background-color: #ddf; /* Level 2 color */
color: #202122;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
background-color: #e6e6ff; /* Level 3 color */
color: #202122;
}
.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;
}
}
tt2fm6sgu7psoscxwy7pz3zv6hc6yj6
پودمان:Color contrast
828
89812
291055
2026-07-11T20:29:23Z
Hanooz
17889
صفحهای تازه حاوی «-- -- 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 a...» ایجاد کرد
291055
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 '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
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
3j3oaih63ygo9p806h5yxpscaqh3xu9
پودمان:Color contrast/colors
828
89813
291056
2026-07-11T20:30:03Z
Hanooz
17889
صفحهای تازه حاوی «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, brow...» ایجاد کرد
291056
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
پودمان:Navbox/configuration
828
89814
291058
2026-07-11T20:31:37Z
Hanooz
17889
صفحهای تازه حاوی «return { aria_label = 'Navbox', nowrap_item = '%s<span class="nowrap">%s</span>', templatestyles = mw.getCurrentFrame():extensionTag{ name = 'templatestyles', args = { src = 'Module:Navbox/styles.css' } }, hlist_templatestyles = 'Hlist/styles.css', plainlist_templatestyles = 'Plainlist/styles.css', -- do not localize marker table marker = { oddeven = '\127_ODDEVEN_\127', restart = '\127_ODDEVEN0_\127', regex = '\127_ODD...» ایجاد کرد
291058
Scribunto
text/plain
return {
aria_label = 'Navbox',
nowrap_item = '%s<span class="nowrap">%s</span>',
templatestyles = mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Module:Navbox/styles.css' }
},
hlist_templatestyles = 'Hlist/styles.css',
plainlist_templatestyles = 'Plainlist/styles.css',
-- do not localize marker table
marker = {
oddeven = '\127_ODDEVEN_\127',
restart = '\127_ODDEVEN0_\127',
regex = '\127_ODDEVEN(%d?)_\127'
},
category = {
orphan = '[[Category:Navbox orphans]]',
horizontal_lists = 'Navigational boxes without horizontal lists',
background_colors = 'Navboxes using background colours',
illegible = 'Potentially illegible navboxes',
borders = 'Navboxes using borders',
},
keyword = {
border_subgroup = 'subgroup',
border_child = 'child',
border_none = 'none',
evenodd_swap = 'swap',
navbar_off = 'off',
navbar_plain = 'plain',
nocat_false = 'false',
nowrapitems_yes = 'yes',
orphan_yes = 'yes',
state_collapsed = 'collapsed',
state_off = 'off',
state_plain = 'plain',
subgroups = {'subgroup', 'child', ''},
subpage_doc = 'doc',
subpage_sandbox = 'sandbox',
subpage_testcases = 'testcases',
tracking_no = 'no'
},
class = {
autocollapse = 'autocollapse',
collapsible = 'mw-collapsible',
collapsed = 'mw-collapsed',
-- Warning
navbox = 'navbox', -- WMF currently hides 'navbox' from mobile,
-- so you probably shouldn't change the navbox class.
navbox_abovebelow = 'navbox-abovebelow',
navbox_group = 'navbox-group',
navbox_image = 'navbox-image',
navbox_inner = 'navbox-inner',
navbox_list = 'navbox-list',
navbox_list_with_group = 'navbox-list-with-group',
navbox_part = 'navbox-', -- do not l10n
navbox_styles = 'navbox-styles',
navbox_subgroup = 'navbox-subgroup',
navbox_title = 'navbox-title', -- l10n only if you change pattern.navbox_title below
navbox_odd_part = 'odd', -- do not l10n
navbox_even_part = 'even', -- do not l10n
nomobile = 'nomobile',
nowraplinks = 'nowraplinks',
noviewer = 'noviewer' -- used to remove images from MediaViewer
},
pattern = {
listnum = '^list(%d+)$',
class = 'class',
sandbox = '/sandbox$',
navbox = 'Template:Navbox',
nowrap = '^<span class="nowrap">',
style = 'style$',
navbox_title = '<th[^>]*"navbox%-title"',
hlist = 'hlist',
plainlist = 'plainlist',
},
arg = {
above = 'above',
aboveclass = 'aboveclass',
abovestyle = 'abovestyle',
basestyle = 'basestyle',
bodyclass = 'bodyclass',
bodystyle = 'bodystyle',
border = 'border',
below = 'below',
belowclass = 'belowclass',
belowstyle = 'belowstyle',
evenodd = 'evenodd',
evenstyle = 'evenstyle',
group1 = 'group1',
group2 = 'group2',
group_and_num = 'group%d',
groupstyle_and_num = 'group%dstyle',
groupclass = 'groupclass',
groupstyle = 'groupstyle',
groupwidth = 'groupwidth',
innerstyle = 'innerstyle',
image = 'image',
imageclass = 'imageclass',
imageleft = 'imageleft',
imageleftstyle = 'imageleftstyle',
imagestyle = 'imagestyle',
list_and_num = 'list%d',
listclass_and_num = 'list%dclass',
liststyle_and_num = 'list%dstyle',
list1padding = 'list1padding',
listclass = 'listclass',
listpadding = 'listpadding',
liststyle = 'liststyle',
name = 'name',
navbar = 'navbar',
navboxclass = 'navboxclass',
nocat = 'nocat',
nowrapitems = 'nowrapitems',
oddstyle = 'oddstyle',
orphan = 'orphan',
state = 'state',
style = 'style',
templatestyles = 'templatestyles',
child_templatestyles = 'child templatestyles',
title = 'title',
titleclass = 'titleclass',
titlestyle = 'titlestyle',
tracking = 'tracking'
},
-- names of navbar arguments
navbar = {
name = 1,
fontstyle = 'fontstyle',
mini = 'mini'
}
}
6q6d0bhb0etao102qsgcjuaeigpugtk
الگو:Xx-smaller
10
89815
291077
2026-07-11T20:51:48Z
Hanooz
17889
تغییرمسیر به [[الگو:کوچکتر۲]]
291077
wikitext
text/x-wiki
#تغییرمسیر [[الگو:کوچکتر۲]]
04xh3lo58k7to8i2vsiubwuhamger8p
الگو:X-smaller
10
89816
291078
2026-07-11T20:52:19Z
Hanooz
17889
تغییرمسیر به [[الگو:کوچکتر۱]]
291078
wikitext
text/x-wiki
#تغییرمسیر [[الگو:کوچکتر۱]]
jejxdllc8fcycairgm1gezhyny8eb6l
الگو:Xx-larger block
10
89817
291079
2026-07-11T20:52:46Z
Hanooz
17889
صفحهای تازه حاوی «{{xx-larger block/s|class={{{class|}}}|style={{{style|}}}}} {{{1}}} {{xx-larger block/e}}<noinclude> {{documentation|Template:Font size block/doc}} </noinclude>» ایجاد کرد
291079
wikitext
text/x-wiki
{{xx-larger block/s|class={{{class|}}}|style={{{style|}}}}}
{{{1}}}
{{xx-larger block/e}}<noinclude>
{{documentation|Template:Font size block/doc}}
</noinclude>
7jxoemasz4za5lit3sh93dk5choeqb2
الگو:Xx-larger block/s
10
89818
291080
2026-07-11T20:53:24Z
Hanooz
17889
صفحهای تازه حاوی «<includeonly>{{Font size block/s|font-size-name=xx-larger|style={{{style|}}}|class={{{class|}}}}}</includeonly><noinclude>{{documentation|Template:Font size block/doc}}» ایجاد کرد
291080
wikitext
text/x-wiki
<includeonly>{{Font size block/s|font-size-name=xx-larger|style={{{style|}}}|class={{{class|}}}}}</includeonly><noinclude>{{documentation|Template:Font size block/doc}}
33asde0qc6jlaclj80g69m3oditl7zy
الگو:Xx-larger block/e
10
89819
291081
2026-07-11T20:53:57Z
Hanooz
17889
تغییرمسیر به [[الگو:Div end]]
291081
wikitext
text/x-wiki
#تغییر_مسیر [[الگو:Div end]]
d9xfxnspj13vtxg7k7mu9e3gtk6tuwk
الگو:Xxx-larger
10
89820
291082
2026-07-11T20:54:35Z
Hanooz
17889
صفحهای تازه حاوی «<includeonly>{{font-size-base|font-size=207%|style={{{style|}}}|1={{{1}}}}}</includeonly><noinclude> {{documentation|Template:X-smaller/doc}} </noinclude>» ایجاد کرد
291082
wikitext
text/x-wiki
<includeonly>{{font-size-base|font-size=207%|style={{{style|}}}|1={{{1}}}}}</includeonly><noinclude>
{{documentation|Template:X-smaller/doc}}
</noinclude>
87n1wo5a9ltv88secr1ugojda2wrcfa
الگو:Xxx-larger block
10
89821
291083
2026-07-11T20:55:25Z
Hanooz
17889
صفحهای تازه حاوی «<includeonly>{{font-size-base|font-size=207%|style={{{style|}}}|1={{{1}}}}}</includeonly><noinclude> {{documentation|Template:X-smaller/doc}} </noinclude>» ایجاد کرد
291083
wikitext
text/x-wiki
<includeonly>{{font-size-base|font-size=207%|style={{{style|}}}|1={{{1}}}}}</includeonly><noinclude>
{{documentation|Template:X-smaller/doc}}
</noinclude>
87n1wo5a9ltv88secr1ugojda2wrcfa
الگو:Xxxx-larger block
10
89822
291084
2026-07-11T20:55:51Z
Hanooz
17889
صفحهای تازه حاوی «{{xxxx-larger block/s|class={{{class|}}}|style={{{style|}}}}} {{{1}}} {{xxxx-larger block/e}}<noinclude> {{documentation|Template:Font size block/doc}} </noinclude>» ایجاد کرد
291084
wikitext
text/x-wiki
{{xxxx-larger block/s|class={{{class|}}}|style={{{style|}}}}}
{{{1}}}
{{xxxx-larger block/e}}<noinclude>
{{documentation|Template:Font size block/doc}}
</noinclude>
c3anf4bvg92hn1np8tapco5zwfrfslj
الگو:Xx-smaller block
10
89823
291085
2026-07-11T20:56:23Z
Hanooz
17889
صفحهای تازه حاوی «{{xx-smaller block/s|class={{{class|}}}|style={{{style|}}}}} {{{1}}} {{xx-smaller block/e}}<noinclude> {{documentation|Template:Font size block/doc}} </noinclude>» ایجاد کرد
291085
wikitext
text/x-wiki
{{xx-smaller block/s|class={{{class|}}}|style={{{style|}}}}}
{{{1}}}
{{xx-smaller block/e}}<noinclude>
{{documentation|Template:Font size block/doc}}
</noinclude>
bqbx9cdy1t6ps55ungte23f634m07vf
الگو:Xx-smaller block/s
10
89824
291086
2026-07-11T20:56:39Z
Hanooz
17889
صفحهای تازه حاوی «<includeonly>{{Font size block/s|font-size-name=xx-smaller|style={{{style|}}}|class={{{class|}}}}}</includeonly><noinclude>{{documentation|Template:Font size block/doc}}» ایجاد کرد
291086
wikitext
text/x-wiki
<includeonly>{{Font size block/s|font-size-name=xx-smaller|style={{{style|}}}|class={{{class|}}}}}</includeonly><noinclude>{{documentation|Template:Font size block/doc}}
8msmukhfyw1ase8ibstq8n978g8gfeq
الگو:Xx-smaller block/e
10
89825
291087
2026-07-11T20:57:25Z
Hanooz
17889
تغییرمسیر به [[الگو:Div end]]
291087
wikitext
text/x-wiki
#تغییرمسیر [[الگو:Div end]]
lbieo79t1hktempodow021is8svutpd
الگو:Font-size-base
10
89826
291088
2026-07-11T20:57:52Z
Hanooz
17889
صفحهای تازه حاوی «<includeonly><span {{optional style|font-size={{{font-size|}}}|style={{{style|}}}}}>{{{1}}}</span></includeonly><noinclude> {{documentation}} </noinclude>» ایجاد کرد
291088
wikitext
text/x-wiki
<includeonly><span {{optional style|font-size={{{font-size|}}}|style={{{style|}}}}}>{{{1}}}</span></includeonly><noinclude>
{{documentation}}
</noinclude>
biahc5r13z11i108dpqu3vztiin7nrr
الگو:Fs
10
89827
291089
2026-07-11T20:58:53Z
Hanooz
17889
صفحهای تازه حاوی «[[الگو:اندازه قلم]]» ایجاد کرد
291089
wikitext
text/x-wiki
[[الگو:اندازه قلم]]
mdoemcslxjnkyty7l9b8cd6h82jy0gd