ويكي مصدر
arwikisource
https://ar.wikisource.org/wiki/%D8%A7%D9%84%D8%B5%D9%81%D8%AD%D8%A9_%D8%A7%D9%84%D8%B1%D8%A6%D9%8A%D8%B3%D9%8A%D8%A9
MediaWiki 1.47.0-wmf.15
first-letter
ميديا
خاص
نقاش
مستخدم
نقاش المستخدم
ويكي مصدر
نقاش ويكي مصدر
ملف
نقاش الملف
ميدياويكي
نقاش ميدياويكي
قالب
نقاش القالب
مساعدة
نقاش المساعدة
تصنيف
نقاش التصنيف
بوابة
نقاش البوابة
مؤلف
نقاش المؤلف
صفحة
نقاش الصفحة
فهرس
نقاش الفهرس
نص زمني
نقاش النص الزمني
وحدة
نقاش الوحدة
فعالية
نقاش فعالية
العقود اللؤلؤية في تاريخ الدولة الرسولية
0
39793
617408
106018
2026-08-13T21:21:10Z
Shohdi Alsofi
49228
تصنيف
617408
wikitext
text/x-wiki
{{تصفحية
|العقود اللؤلؤية في تاريخ الدولة الرسولية
|[[مؤلف:علي بن الحسن الخزرجي|علي بن الحسن الخزرجي]]
|
| [[ويكي مصدر:كتب مصورة]]
|
|
}}
{{مطبوعة|:تصنيف:العقود اللؤلؤية في تاريخ الدولة الرسولية:مطبوع}}
{{مصورفقط}}
[[تصنيف:العقود اللؤلؤية في تاريخ الدولة الرسولية|*]]
[[تصنيف:الدولة الرسولية]]
i2fpcaspu5xqqcn7nrssqyk9rgrk8m2
مؤلف:عبيد بن الأبرص
102
46111
617373
404555
2026-08-13T17:44:17Z
حبيشان
52457
617373
wikitext
text/x-wiki
{{مؤلف
|الاسم الأول = عبيد
|الاسم الأخير = بن الأبرص
|فهرس = ع
|سنة الميلاد =
|سنة الوفاة =
|وصف = أحد فرسان العرب و شعرائها المشهورين بالفخر والحماس، شاعر من دهاة الجاهلية وحكمائها، وهو أحد أصحاب المجمهرات المعدودة طبقة ثانية عن المعلقات. عاصر امرؤ القيس وله معه مناظرات ومناقضات، وعمّر طويلاً حتى قتله النعمان بن المنذر وقد وفد عليه في يوم بؤسه
|وصلة ويكيبيديا = عبيد بن الأبرص
| defaultsort = ع
}}
==نسبه==
هو عبيد بن الأبرص بن حنتم بن عامر بن مالك بن زهير بن مالك بن الحارث بن سعد بن ثعلبة بن دودان بن أسد بن خزيمة بن مدركة بن إلياس بن مضر.
== قصائده ==
[[معلقة عبيد بن الأبرص|معلقته]]
== وصلات خارجية ==
* [http://www.poetsgate.com/Poet.aspx?id=37 '''بوابة الشعراء :''' ديوان عبيد بن الأبرص]
{{ملكية عامة مؤلف قديم}}
[[تصنيف:شعر]]
[[تصنيف:شعراء]]
[[تصنيف:مؤلفون-ع]]
[[تصنيف:شعراء جاهليون]]
{{ضبط استنادي}}
hwhln666yob24w3c4fce933nklgfora
617374
617373
2026-08-13T17:45:31Z
حبيشان
52457
نقل حبيشان صفحة [[عبيد بن الأبرص]] إلى [[مؤلف:عبيد بن الأبرص]] دون ترك تحويلة: النطاق الصحيح
617373
wikitext
text/x-wiki
{{مؤلف
|الاسم الأول = عبيد
|الاسم الأخير = بن الأبرص
|فهرس = ع
|سنة الميلاد =
|سنة الوفاة =
|وصف = أحد فرسان العرب و شعرائها المشهورين بالفخر والحماس، شاعر من دهاة الجاهلية وحكمائها، وهو أحد أصحاب المجمهرات المعدودة طبقة ثانية عن المعلقات. عاصر امرؤ القيس وله معه مناظرات ومناقضات، وعمّر طويلاً حتى قتله النعمان بن المنذر وقد وفد عليه في يوم بؤسه
|وصلة ويكيبيديا = عبيد بن الأبرص
| defaultsort = ع
}}
==نسبه==
هو عبيد بن الأبرص بن حنتم بن عامر بن مالك بن زهير بن مالك بن الحارث بن سعد بن ثعلبة بن دودان بن أسد بن خزيمة بن مدركة بن إلياس بن مضر.
== قصائده ==
[[معلقة عبيد بن الأبرص|معلقته]]
== وصلات خارجية ==
* [http://www.poetsgate.com/Poet.aspx?id=37 '''بوابة الشعراء :''' ديوان عبيد بن الأبرص]
{{ملكية عامة مؤلف قديم}}
[[تصنيف:شعر]]
[[تصنيف:شعراء]]
[[تصنيف:مؤلفون-ع]]
[[تصنيف:شعراء جاهليون]]
{{ضبط استنادي}}
hwhln666yob24w3c4fce933nklgfora
نقاش المستخدم:Nehaoua
3
50961
617363
616916
2026-08-13T15:55:40Z
MediaWiki message delivery
15468
/* Wikifunctions & Abstract Wikipedia Newsletter #260: Shoutout to User:99of9 */ قسم جديد
617363
wikitext
text/x-wiki
{{أرشفة آلية|قسم|15|نقاش المستخدم:Nehaoua/أرشيف 1}}
{{صندوق أرشيف
|* [[نقاش المستخدم:Nehaoua/أرشيف 1|2021]]
* [[نقاش المستخدم:Nehaoua/أرشيف 2|2022]]
* [[نقاش المستخدم:Nehaoua/أرشيف 3|2023]]
* [[نقاش المستخدم:Nehaoua/أرشيف 4|2024]]
* [[نقاش المستخدم:Nehaoua/أرشيف 5|2025]]
* [[نقاش المستخدم:Nehaoua/أرشيف 6|2026]] (تفاؤلًا)
}}
== Wikifunctions & Abstract Wikipedia Newsletter #218 is out: Wikifunctions available on 123 Wiktionary languages ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-09-19|a new update]] for Wikifunctions and Abstract Wikipedia. Please, come and read it!
In this issue, we update you on the recent Wikifunctions deployment on Wiktionaries, we introduce our new page for requesting cleanups, we update you on what's new on Types, we remind you of the upcoming meetings, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also we remind you that the next '''Natural Language Generation Special Interest Group meeting''' will be held on '''[https://zonestamp.toolforge.org/1758643200 September 23, at 16:00 UTC]''' ([https://meet.google.com/xzn-kqer-mah link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:26، 20 سبتمبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29289969 -->
== Sub-referencing: News and request for feedback ==
<div lang="en" dir="ltr">
[[File:Sub-referencing reuse visual.png|400px|right]]
Greetings from [[:m:Special:MyLanguage/Wikimedia Deutschland|WMDE]]'s [[:m:Special:MyLanguage/WMDE Technical Wishes|Technical Wishes team]]. Today we've deployed [[:m:Special:MyLanguage/WMDE Technical Wishes/Sub-referencing|sub-referencing]] to German Wikipedia, our first pilot wiki. A great milestone after so many years of work!
We'll continue to improve the feature based on community feedback and want to deploy to other pilot wikis in the upcoming months, once we've solved a couple of issues affecting many non-dewiki projects. You are invited to try sub-referencing [https://en.wikipedia.beta.wmcloud.org/wiki/Sub-referencing on betawiki] in the meantime.
We are currently thinking about how we could improve VisualEditor support for templates in sub-references if that's desired by the community. Read more about it [[:m:Talk:WMDE Technical Wishes/Sub-referencing#Templates used in sub-references|on our talk page]] and share your feedback!
As always thank you very much for your support!
<small>PS: You are receiving this message, because you signed-up to [[:m:WMDE Technical Wishes/Sub-referencing/Sign-up|our sub-referencing newsletter]]. If you don't want to receive further updates, just remove your name from the list.</small></div> <bdi lang="en" dir="ltr">[[User:Johannes Richter (WMDE)|Johannes Richter (WMDE)]] ([[User talk:Johannes Richter (WMDE)|talk]])</bdi> 16:46، 22 سبتمبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Johannes Richter (WMDE)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Sub-referencing/Sign-up&oldid=29317590 -->
== Wikifunctions & Abstract Wikipedia Newsletter #219 is out: Accessing qualifiers in Wikidata statements ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-09-26|a new update]] for Wikifunctions and Abstract Wikipedia. Please, come and read it!
In this issue, we introduce the possibility of calling also qualifiers from Wikidata, we update you on the recent deployments of Wikifunctions and on the Wikifunctions presentations at Wikimedia events, we give you the recent updates on Types, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 17:46، 26 سبتمبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29319712 -->
== Wikifunctions & Abstract Wikipedia Newsletter #220 is out: Rich text now available in embedded function calls on 148 Wiktionaries and Incubator ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-10-03|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we update you on the latest functions and types you can create, we announce that functions are now available to call on 152 projects, we talk about our presentations at Wikimedia meetings, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1759771800 October 6, at 17:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 08:55، 4 أكتوبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29367070 -->
== Wikifunctions & Abstract Wikipedia Newsletter #221 is out: Decision on location for abstract content and Quarterly Planning for October–December ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-10-08|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we introduce our [[:m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|naming contest for Abstract Wikipedia]], we discuss our plans and work for the upcoming quarter (October-December 2025), we report on the next events we'll be part of, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 17:47، 9 أكتوبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29367070 -->
== Wikifunctions & Abstract Wikipedia Newsletter #222 is out: Kicking Off the Naming Contest for Abstract Wikipedia; Visualizing functions ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-10-15|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we kickstart our [[:m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|naming contest for Abstract Wikipedia]], we present a beautiful representation of functions by a community member, we report on the next events we'll be part of, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 17:04، 15 أكتوبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29444338 -->
== Wikifunctions & Abstract Wikipedia Newsletter #223 is out: Welcome Zaree and Laura! Naming contest round 1 kicked off ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-10-23|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we welcome two new additions to the team, we update you on our [[:m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|naming contest for Abstract Wikipedia]], we report on the next events we'll be part of, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 21:10، 23 أكتوبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29491948 -->
== طلب رفع كتاب ==
السلام عليكم ورحمة الله وبركاته،
أرجو من حضراتكم التكرم بالمساعدة في رفع مخطوطات كتاب ([[w:عجائب المخلوقات وغرائب الموجودات|عجائب المخلوقات وغرائب الموجودات]]) للمؤلف أبو يحيى زكريا القزويني على موقع ويكي، وذلك بهدف المساهمة في عمليات النسخ والتحقيق وإتاحة محتواه للجمهور بما يتوافق مع سياسات حقوق النشر للمشروع.
المخطوطات التي نرغب في رفعها بصيغة PDF تجدونها في الأسفل، لذا ونأمل أن يتم ربطها بصفحة الكتاب على ويكي مصدر ليتسنّى للمتطوعين استخراج النصوص منها وتنسيقها.
شاكرين لكم جهودكم المتواصلة في تعزيز المحتوى المعرفي المفتوح وإتاحة التراث الإنساني للجميع.
وتفضلوا بقبول فائق الاحترام والتقدير.
* https://www.loc.gov/resource/gdcwdl.wdl_08961/?st=gallery&c=160
* https://www.loc.gov/resource/gdcwdl.wdl_08962/?st=gallery&c=160
[[خاص:مساهمات/~2025-68940-4|~2025-68940-4]] ([[نقاش المستخدم:~2025-68940-4|نقاش]]) 08:24، 26 أكتوبر 2025 (ت ع م)
:مرحبًا {{ينفذ}} [[مستخدم:Nehaoua|Nehaoua]] ([[نقاش المستخدم:Nehaoua|نقاش]]) 10:42، 26 أكتوبر 2025 (ت ع م)
::مرحبًا {{تم}}
::* [[:File:Kitāb'Ajā'ib al-makhlūqāt wa-gharā'ib al-mawjūdāt (1750).pdf|نسخة 1750]]
::* [[:File:Kitāb'Ajā'ib al-makhlūqāt wa-gharā'ib al-mawjūdāt (1280).pdf|نسخة 1280]]
::[[مستخدم:Nehaoua|Nehaoua]] ([[نقاش المستخدم:Nehaoua|نقاش]]) 10:14، 29 أكتوبر 2025 (ت ع م)
== [[الروض العاطر في نزهة الخاطر]] ==
تم الانتهاء من رفع الكتاب، وخلال عملية الرفع تبيّن أن مصدر الكتاب غير معروف، لذا يُفضّل الرجوع إلى المخطوطة الأصلية لاحتمالية وجود حقوق ملكية للمؤلِّف؛ وذلك حرصًا واحتياطًا.
وعليه، نأمل التكرم برفع المخطوطة أدناه ليُتاح لنا إعادة تحرير النص مرة أخرى بالشكل المناسب.
https://archive.org/details/MS.ARA.1953/page/n1/mode/2up
https://archive.org/details/MS.ARA.600/page/n1/mode/2up
[[خاص:مساهمات/~2025-68940-4|~2025-68940-4]] ([[نقاش المستخدم:~2025-68940-4|نقاش]]) 03:36، 29 أكتوبر 2025 (ت ع م)
:مرحبًا {{تم}}
:* [[فهرس:Al-Rawḍ al-ʿāṭir fī nuzhaẗ al-ẖāṭir (1883).djvu]]
:* [[فهرس:Al-Rawḍ al-ʿāṭir fī nuzhaẗ al-ẖāṭir (1878).djvu]]
:[[مستخدم:Nehaoua|Nehaoua]] ([[نقاش المستخدم:Nehaoua|نقاش]]) 14:02، 29 أكتوبر 2025 (ت ع م)
== Wikifunctions & Abstract Wikipedia Newsletter #224 is out: Round 1 of “abstract content wiki” naming vote ending Monday; An example of short descriptions ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-10-29|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we update you on our [[:m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|naming contest for Abstract Wikipedia]], we announce our first experimentation with short descriptions on Wikidata, we talk about our presentations at the upcoming WikidataCon 2025, and we take a look at the latest Type and software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1762194600 November 3, at 18:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 13:48، 30 أكتوبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29511879 -->
== Wikifunctions & Abstract Wikipedia Newsletter #225 is out: First round of voting for naming the wiki for abstract content closed; Calling for Wiktionary functions; Embedded Wikifunctions on Bengali Wikipedia and seven more Wiktionaries ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-11-05|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we update you on the closing of the first phase of the [[:m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|naming contest for Abstract Wikipedia]], we introduce a possible implementation of Wikifunctions for Wiktionaries, we talk about our latest outreach events, and we take a look at the latest Type and software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 14:06، 6 نوفمبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29511879 -->
== Wikifunctions & Abstract Wikipedia Newsletter #226 is out: Getting ready for second round of voting for naming the wiki with abstract content; Rewriting the backend: Why Rust? ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-11-13|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we summarise current discussion regarding the [[:m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|naming contest for Abstract Wikipedia]], we discuss how we are rewriting the backend, we ask for help in substituting a function, we suggest you the recordings of Wikifunctions-related sessions at the WikidataCon 2025, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also we remind you that the next '''Natural Language Generation Special Interest Group meeting''' will be held on '''[https://zonestamp.toolforge.org/1763481600 November 18, at 16:00 UTC]''' ([https://meet.google.com/xzn-kqer-mah link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 14:42، 13 نوفمبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29511879 -->
== Wikifunctions & Abstract Wikipedia Newsletter #227 is out: Second round of voting for naming the wiki with language-independent content; Sharing function calls ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-11-20|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we announce the start of the second phase of the [[:m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|naming contest for Abstract Wikipedia]], we share the results of the MacArthur Foundation's 100&Change contest, we share the recording of the last NLG SIG meeting, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 10:11، 21 نوفمبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29511879 -->
== Wikifunctions & Abstract Wikipedia Newsletter #228 is out: Vote on the new wiki name! Finishing each other’s sentences ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-11-27|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we update you on our [[:m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|naming contest for Abstract Wikipedia]], we discuss our progress on sentence creation with functions, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1762194600 December 1, at 18:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 11:38، 27 نوفمبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29511879 -->
== Wikifunctions & Abstract Wikipedia Newsletter #229 is out: And the name is Abstract Wikipedia ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-12-04|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we share the final results of the [[:m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|naming contest for Abstract Wikipedia]], we share two demos about new Wikifunctions features, we talk about Wikidata components in Wikifunctions, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 11:02، 4 ديسمبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29735279 -->
== Wikifunctions & Abstract Wikipedia Newsletter #230 is out: How to write better error messages ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-12-11|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we share an essay on how to write better error messages, on improving which we focused in the last months.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 12:01، 12 ديسمبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29735279 -->
== Wikifunctions & Abstract Wikipedia Newsletter #231 is out: We wish you a happy new Gregorian year! ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2025-12-18|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we showcase some templates using Wikifunctions functions on several projects, and we wrap up work for this Gregorian year, wishing you happy holidays.
The updates will resume in the week of January 14, so if you feel like you want more, you can always read the previous updates in [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 16:01، 18 ديسمبر 2025 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29814552 -->
== Wikifunctions & Abstract Wikipedia Newsletter #232 is out: 25 years of Wikipedia ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-01-15|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In the first issue of 2026, we celebrate our incredible milestone of 25 years of Wikipedia and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 10:04، 16 يناير 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29902635 -->
== Wikifunctions & Abstract Wikipedia Newsletter #233 is out: Quarterly plan for January–March 2026 ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-01-22|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we share our work plans for the quarter that goes from January to March 2026, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 12:00، 22 يناير 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29963119 -->
== Wikifunctions & Abstract Wikipedia Newsletter #234 is out: Integrating Abstract Wikipedia ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-01-29|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we share our ideas about the integration of Abstract Wikipedia with the existing Wikimedia projects, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 09:51، 30 يناير 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29963119 -->
== Next Wikifunctions & Abstract Wikipedia Volunteers' Corner will be on February 9 ==
Hi, we remind you that, if you have questions or ideas to discuss about Wikifunctions & Abstract Wikipedia, you can participate to the next '''Volunteers' Corner''', that will be held on '''[https://zonestamp.toolforge.org/1770661800 February 9, at 18:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
We hope to see you there! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 06:23، 6 فبراير 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29963119 -->
== Sub-referencing: Update ==
[[File:Sub-referencing re-use + RefPreview.png|350px|thumb|right|Sub-referencing example]]
<div lang="en" dir="ltr">
Greetings from [[:m:Special:MyLanguage/WMDE Technical Wishes|WMDE Technical Wishes]]! In September 2025 we deployed [[:m:Special:MyLanguage/WMDE Technical Wishes/Sub-referencing|sub-referencing]] to German Wikipedia to make re-using references with different details easier. Thanks for piloting and helping to improve the feature!
We recently published our insights and next steps in [[:m:WMDE Technical Wishes/Sub-referencing/Learnings|our report]]. '''Some highlights''':
* Over 6,000 Wikipedia articles use the new feature, with a total of over 15,000 sub-references created to date.
* There are both experienced editors in featured articles (e.g. [[:de:Explosion des Oppauer Stickstoffwerkes]]) and relatively inexperienced VisualEditor users (e.g. in [[:de:Schmerzhafte Muttergottes (Guido Cagnacci)]]) using the feature. The majority of all sub-references (approx. 90%) are created in wikitext, yet over 300 editors have used the function in VisualEditor alone.
* Workarounds like <syntaxhighlight lang=wikitext inline><ref name="Miller" /><sup>p. 44</sup></syntaxhighlight> (in the reader view <sup>[1] p. 44</sup>) have been replaced entirely by sub-referencing, which means that the complete reference information – including the page number – is now visible in both the reference list and in [[:mw:Special:MyLanguage/Help:Reference Previews|Reference Previews]].
* Sub-referencing is used with [[:m:WMDE Technical Wishes/Sub-referencing/Learnings#What types of details are contributors adding via sub-references?|lots of different citation details]] – predominantly page numbers, but also details such as chapters, paragraphs, quotes or video / audio timestamps.
'''What has happened since September?'''
* We ensured that re-used sub-references actually appear as re-used in the reader view and in VisualEditor.
* We've made some cosmetic changes to the reference list: Initially, multi-line sub-references (e.g. quotations) were not displayed ideally, and two-digit sub-reference numbers were not indented correctly.
* In VisualEditor, we have provided a feature to choose whether changes to re-used sub-references should affect all uses of the same sub-reference or only the one currently edited.
'''What's next?'''
* We will deploy sub-referencing to additional pilot wikis next week: Polish Wikipedia, Swedish Wikipdia and seven smaller wikis ([[:phab:T414094]]). All of these projects have been notified in advance.
* We are working on technical adjustments to make sub-referencing usable in all wikis that use variants of the [[:en:Template:Reflist|<nowiki>{{Reflist}}</nowiki>]] template.
* We are continuing to address community feedback: Among other things, we are currently exploring various ideas for visually improving reference lists with lots sub-references (e.g. [[:de:Liste der Straßen in Bad Honnef#Einzelnachweise und Anmerkungen]]).
* In addition to sub-referencing, we are looking at other reference-related improvements: We are considering general improvements to [[:mw:Special:MyLanguage/Help:Reference Previews|Reference Previews]] or solving issues with [[:en:WP:VisualEditor/Named references|automatically created reference names in VisualEditor]] – there will be announcements and community consultations on this in the near future.
More information about sub-referencing [[:m:Special:MyLanguage/WMDE Technical Wishes/Sub-referencing|on our project page]], more about our learnings and next steps [[:m:WMDE Technical Wishes/Sub-referencing/Learnings|in our report]]. All the best from WMDE Technical Wishes!
<small>PS: You've recieved this message because you [[:m:WMDE Technical Wishes/Sub-referencing/Sign-up|subscribed to our newsletter]]. Remove your name from the [[:m:WMDE Technical Wishes/Sub-referencing/Sign-up|sign-up list]] if you don't want to receive further updates.</small></div> --[[User:Johannes Richter (WMDE)|Johannes Richter (WMDE)]] ([[User talk:Johannes Richter (WMDE)|talk]]) 15:35، 9 فبراير 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Johannes Richter (WMDE)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Sub-referencing/Sign-up&oldid=29343935 -->
== Wikifunctions & Abstract Wikipedia Newsletter #235 is out: Finishing each other sentences: Starting things; Offsite in Istanbul ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-02-13|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we share the results of our recent team offsite (meeting in person) in Istanbul, Türkiye, especially on creating sentence fragments in several languages.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 16:31، 13 فبراير 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29963119 -->
== Wikifunctions & Abstract Wikipedia Newsletter #236 is out: A sneak preview of Abstract Wikipedia ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-02-20|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we share a sneak preview of how Abstract Wikipedia will look like and work, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 13:14، 20 فبراير 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=29963119 -->
== Wikifunctions & Abstract Wikipedia Newsletter #237 is out: Graceful overrides and fallbacks ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-02-26|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we discuss different patterns in articles about years on different Wikipedias, we present the video of the Wikifunctions presentation by Nicolas Vigneron at the last Celtic Knot, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1772476200 March 2, at 18:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 11:18، 27 فبراير 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30119120 -->
== Wikifunctions & Abstract Wikipedia Newsletter #238 is out: Citations and Copy and Paste ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-03-06|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we introduce the possibility of creating a function that deals with references and a Wikifunctions internal clipboard, where you can temporarily store any piece of code in order to paste it somewhere else, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 17:28، 6 مارس 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30119120 -->
== طلب رفع كتاب في الشطرنج ومنصوباته وملحه ==
مرحبًا عادل،
لو تكرمت برفع المخطوطة، حتى أتمكن من نسخ النص منها بدقة ليسهل قراءته. وكما أود الإشارة إلى أنه لا يوجد كتاب عن الشطرنج ضمن المواد المتاحة.
علمًا بأنني سبق أن عملت على تحقيق [[الكتاب المختصر في حساب الجبر والمقابلة]] باللغتين العربية والإنجليزية، وقد كان في البداية تحديًا صعبًا، لكنه اكتمل بحمد الله كما ترى.
شاكرًا لك تعاونك مقدمًا.
https://www.qdl.qa/%D8%A7%D9%84%D8%B9%D8%B1%D8%A8%D9%8A%D8%A9/archive/81055/vdc_100030345542.0x000001 [[خاص:مساهمات/~2026-12522-85|~2026-12522-85]] ([[نقاش المستخدم:~2026-12522-85|نقاش]]) 16:15، 9 مارس 2026 (ت ع م)
:{{ping|~2026-12522-85}} [[:ملف:كتاب في الشطرنج ومنصوباته وملحه (Add MS 7515).pdf]] [[مستخدم:FruitJ|FruitJ]] ([[نقاش المستخدم:FruitJ|نقاش]]) 09:05، 10 مارس 2026 (ت ع م)
== Wikifunctions & Abstract Wikipedia Newsletter #239 is out: A new composition language ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-03-11|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we talk about the revamp of the composition language on Wikifunctions, with its potential for further improvements.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 16:18، 12 مارس 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30229736 -->
== Wikifunctions & Abstract Wikipedia Newsletter #240 is out: Abstract Wikipedia is now in Beta ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-03-19|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we celebrate the launch of the [https://abstract.wikipedia.org/ preliminary Beta version of Abstract Wikipedia], and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 18:23، 19 مارس 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30229736 -->
== Wikifunctions & Abstract Wikipedia Newsletter #241 is out: First few days of Abstract Wikipedia Beta; Status of Composition Language v2 ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-03-26|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we discuss the first early edits on [https://abstract.wikipedia.org/ Abstract Wikipedia], we share the status of Composition Language v2, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 16:48، 26 مارس 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30289284 -->
== Wikifunctions & Abstract Wikipedia Newsletter #242 is out: Request for Discussion: Syntactic tables ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-02|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we introduce a proposal for Natural Language Generation, we introduce a page for function suggestions from Abstract Wikipedia, we inform you that there will be a presentation about Abstract Wikipedia at WikiCon Australia, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1776101400 April 13, at 17:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 13:37، 3 أبريل 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 -->
== Wikifunctions & Abstract Wikipedia Newsletter #243 is out: Community proposals for capturing meaning ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-10|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we report on three community proposals on syntactic approaches, we introduce a new Type (Complex numbers), we report on current hiccups on Abstract Wikipedia, we share more information about a presentation about Abstract Wikipedia at WikiCon Australia, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1776101400 April 13, at 17:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:35، 10 أبريل 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 -->
== Wikifunctions & Abstract Wikipedia Newsletter #244 is out: Milestones; Some major issues hopefully resolved ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-16|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we celebrate 4000 functions on Wikifunctions and 1000 abstract articles on Abstract Wikipedia, we announce that we should have fixed some major issues with the websites, we inform you on our latest outreach activities, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 10:22، 17 أبريل 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 -->
== Wikifunctions & Abstract Wikipedia Newsletter #245 is out: The Foundation's search for the perfect language ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-25|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we present an academic paper about Abstract Wikipedia, we discuss our latest Type created, and we take a look at the newest created functions.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 09:54، 25 أبريل 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 -->
== Wikifunctions & Abstract Wikipedia Newsletter #246 is out: Request for input: what should we count for Abstract Wikipedia ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-02|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we ask you what would be the relevant metrics for Abstract Wikipedia, we discuss our latest news on Composition Language v2, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 12:21، 2 مايو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 -->
== Wikifunctions & Abstract Wikipedia Newsletter #247 is out: References from Wikidata now available ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-08|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we announce that is now possible to pass references in Wikidata statements, we introduce the [https://abstract-data.toolforge.org/ Abstract Data dashboard], we report you on the presentation about Abstract Wikipedia at WikiCon Australia, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1778520600 May 11, at 17:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 11:16، 8 مايو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30325620 -->
== Wikifunctions & Abstract Wikipedia Newsletter #248 is out: A higher meaning ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-15|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we discuss functions creating language fragments, we present our latest news in Types, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 14:36، 15 مايو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30536976 -->
== Wikifunctions & Abstract Wikipedia Newsletter #249 is out: Annual plan 2026-2027 ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-23|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we present you the current draft of objectives for Wikifunctions and Abstract Wikipedia in the WMF Annual Plan 2026-2027, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 09:48، 25 مايو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30536976 -->
== Wikifunctions & Abstract Wikipedia Newsletter #250 is out: Looking back and forward ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-30|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we present you a recollection of our work so far, now that we celebrate our 250th newsletter, we share with you a summary of our latest outreach activities, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 10:04، 1 يونيو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30606821 -->
== Wikifunctions & Abstract Wikipedia Newsletter #251 is out: The illustrated encyclopaedia ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-06-05|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we introduce our first function to import images on Abstract Wikipedia, we present our Functions of the Week, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1780939800 June 8, at 17:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 14:14، 5 يونيو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30606821 -->
== Wikifunctions & Abstract Wikipedia Newsletter #252 is out: Improved loading and display of Test results ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-06-12|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we present you an improvement in loading and display of Test results, we talk about our next events, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that Denny will lead a discussion on the [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-15#News in Types: way forward for natural language generation types|new NLG types]] in the next '''Natural Language Generation Special Interest Group meeting''', that will be held on '''[https://zonestamp.toolforge.org/1781625600 June 16, at 16:00 UTC]''' ([https://meet.google.com/xzn-kqer-mah link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:29، 12 يونيو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30606821 -->
== Wikifunctions & Abstract Wikipedia Newsletter #253 is out: The or not the, this is (the?) question ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-06-19|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we present you a delicate question regarding grammatical framework, we talk about our next events and about the results of our latest online meetings, we discuss news about Types, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 12:34، 19 يونيو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30701693 -->
== Wikifunctions & Abstract Wikipedia Newsletter #254: Working on Functions, together ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-06-26|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we report on new collaborative patterns emerging in our community, we discuss news in Types, we share some events that relate to Wikifunctions and Abstract Wikipedia at Wikimania 2026, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1783359000 July 6, at 17:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 09:58، 27 يونيو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30724999 -->
== Wikifunctions & Abstract Wikipedia Newsletter #255: Integration on test wiki and annual plan ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-07-01|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we discuss integration of Abstract Wikipedia in Test Wiki and our objectives for the new Wikimedia Foundation Fiscal Year, we remind you of the Wikifunctions and Abstract Wikipedia events at Wikimania 2026, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Also, we remind you that if you have questions or ideas to discuss, the next '''Volunteers' Corner''' will be held on '''[https://zonestamp.toolforge.org/1783359000 July 6, at 17:30 UTC]''' ([https://meet.google.com/xuy-njxh-rkw link to the meeting]).
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 08:22، 2 يوليو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30755600 -->
== Wikifunctions & Abstract Wikipedia Newsletter #256: Moving toward our first Abstract Wikipedia integration milestone ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-07-08|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we discuss further our objectives for the new Wikimedia Foundation Fiscal Year, we show the latest community tool, we remind you of the Wikifunctions and Abstract Wikipedia events at Wikimania 2026, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 09:43، 9 يوليو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30755600 -->
== Wikifunctions & Abstract Wikipedia Newsletter #257: Beyond syntactic tables ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-07-16|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we discuss syntactic tables and news in Types, we show some community blogposts and tools, we remind you of the Wikifunctions and Abstract Wikipedia events at Wikimania 2026, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
We also remind you that in the next weeks these newsletter reminders will be paused, and that they will resume in mid-August.
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 10:55، 17 يوليو 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30755600 -->
== Wikifunctions & Abstract Wikipedia Newsletter #258: Abstract Wikipedia at Wikimania ==
<div lang="en" dir="ltr" class="mw-content-ltr">There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-07-29|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we discuss the presentations and workshops at Wikimania, including a features feedback request based on what we heard there, and highlight new features shipped this week including diffs for Wikifunctions.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! [[m:user:Quiddity (WMF)|Quiddity (WMF)]] 19:05، 30 يوليو 2026 (ت ع م) </div>
<!-- الرسالة التي أرسلها User:Quiddity (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30870212 -->
== Wikifunctions & Abstract Wikipedia Newsletter #259: Congratulations Jules*. An apple is a fruit ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-08-05|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we congratulate Wikimedian of the Year and we discuss his favourite article in relation to Abstract Wikipedia, we introduce a new Type of function on Wikifunctions, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
We also remind you that in the next weeks these newsletter reminders will be paused, and that they will resume in mid-August.
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 13:19، 10 أغسطس 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30870212 -->
== طلب رفع مخطوطة التصريف لمن عجز عن التأليف ==
مرحبًا عادل، لو تكرمت برفع المخطوطة، حتى أتمكن من نسخ النص منها بدقة ليسهل قراءته،
شاكرًا لك تعاونك مقدمًا.
https://archive.org/details/altasrif-liman-eajiz-ean-altaalif/page/n11/mode/thumb [[خاص:مساهمات/~2026-43953-13|~2026-43953-13]] ([[نقاش المستخدم:~2026-43953-13|نقاش]]) 15:30، 10 أغسطس 2026 (ت ع م)
:مرحبًا نفس ا[[:File:The Method of Medicine WDL7478.pdf|لنسخة موجودة سابقًا ]] تحياتي [[مستخدم:Nehaoua|Nehaoua]] ([[نقاش المستخدم:Nehaoua|نقاش]]) 18:48، 10 أغسطس 2026 (ت ع م)
== Wikifunctions & Abstract Wikipedia Newsletter #260: Shoutout to User:99of9 ==
There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-08-13|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we congratulate our own User:99of9 for his extensive work with the Wikifunctions & Abstract Wikipedia communities, we discuss what happened at Wikimania, we introduce a document for interested communities to join Abstract Wikipedia, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]!
Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:55، 13 أغسطس 2026 (ت ع م)
<!-- الرسالة التي أرسلها User:Sannita (WMF)@metawiki باستخدام القائمة في https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30870212 -->
iwqwpk339bwuhxb08sano5f6hkfjpzg
نقاش المستخدم:AlaaMroue
3
170672
617416
293103
2026-08-14T05:12:55Z
Robertsky
63825
نقل Robertsky صفحة [[نقاش المستخدم:Alaamroweh]] إلى [[نقاش المستخدم:AlaaMroue]]: نُقِلت الصفحة آليا عند إعادة تسمية المستخدم «[[Special:CentralAuth/Alaamroweh|Alaamroweh]]» إلى «[[Special:CentralAuth/AlaaMroue|AlaaMroue]]».
293103
wikitext
text/x-wiki
{| style="margin: 0 2em 0 2em; background-color:#f7f8ff; padding:5px; border:1px solid #8888aa; clear: both;"
|
<center><big>'''مرحبا بك في [[ويكي مصدر:ويكي مصدر|ويكي مصدر]]، {{BASEPAGENAME}} !'''</big></center>
|-align="center"
| <div style="padding:5px;font-size:small"><center style="word-spacing:1ex"><small>[[ويكي مصدر:سفارة|Welcome!]] [[ويكي مصدر:سفارة|Bienvenue!]] [[ويكي مصدر:سفارة|Willkommen!]] [[ويكي مصدر:سفارة|Benvenuti]] [[ويكي مصدر:سفارة|¡Bienvenido!]] [[ويكي مصدر:سفارة|ようこそ]] [[ويكي مصدر:سفارة|Dobrodosli]] [[ويكي مصدر:سفارة|환영합니다]] [[ويكي مصدر:سفارة|Добро пожаловать]] [[ويكي مصدر:سفارة|Bem-vindo!]] [[ويكي مصدر:سفارة|欢迎]] [[ويكي مصدر:سفارة|Bonvenon]] [[ويكي مصدر:سفارة|Welkom]]</small></center></div>
[[صورة:Wikisource-logo.svg|يمين|50بك]]أهلا بك في [[ويكي مصدر:حول|ويكي مصدر]]، المكتبة الحرة! من السهل جدًا [[مساعدة:إضافة نص|إضافة النصوص]] الحرة هنا.
بإمكانك تصفح الموقع عن طريق [[ويكي مصدر:فهرس|الفهرس]] أو الاطلاع على [[ويكي مصدر:سياسات وتعليمات|التعليمات]] وتعلم [[ويكي مصدر:دليل التنسيق|التنسيق]].
نتمنى لك وقتا سعيدًا هنا. إن احتجت مساعدة يرجى الاطلاع على [[مساعدة:مقدمة|صفحات المساعدة]] أو [[ويكي مصدر:طلب مساعدة|السؤال هنا]] أو في صفحة نقاشي. شكرا لك.
|} --[[مستخدم:Meno25|Meno25]] ([[نقاش المستخدم:Meno25|نقاش]] • [[خاص:مساهمات/Meno25|مساهمات]]) 12:57، 17 أبريل 2020 (ت ع م)
j98w3jsv519nhn6qhcb3zxo2i0lm4hi
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/152
104
216145
617391
617294
2026-08-13T19:48:33Z
Nehaoua
7481
تنسيق ويكي
617391
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Nehaoua" />{{وسط|–١٤٨–}}
{| style="margin:0 auto; width:85%; border-collapse:collapse;" dir="rtl"
! style="width:15%; text-align:center;" | صفحة
! style="text-align:right;" |</noinclude>{{nop}}
|-
| style="text-align:center;" | {{ربط بصفحة|76|4|٧٦}}
| [[التهذيب في أصول التعريب/باب فى اللغة العامية أو الدارجة|١٥ - باب فى اللغة العامية أو الدارجة]]
|-
| style="text-align:center;" | {{ربط بصفحة|77|4|٧٧}}
| [[التهذيب في أصول التعريب/ باب فى القول فى العربي الجنوبي|١٦ - باب فى القول فى العربي الجنوبي]]
|-
| style="text-align:center;" | {{ربط بصفحة|82|4|٨٢}}
| [[التهذيب في أصول التعريب/باب فى القول فى تدوين اللغة واستنباط النحو والصرف|١٧ - باب فى القول فى تدوين اللغة واستنباط النحو والصرف]]
|-
| style="text-align:center;" | {{ربط بصفحة|83|4|٨٣}}
| style="padding-right:2em;" | فن النحو
|-
| style="text-align:center;" | {{ربط بصفحة|87|4|٨٧}}
| style="padding-right:2em;" | فن التصريف أو الصرف
|-
| style="text-align:center;" | {{ربط بصفحة|88|4|٨٨}}
| style="padding-right:2em;" | فن اللغة
|-
| style="text-align:center;" | {{ربط بصفحة|91|4|٩١}}
| [[التهذيب في أصول التعريب/باب فى القول فى فضل اللغة العربية|١٨ - باب فى القول فى فضل اللغة العربية]]
|-
| style="text-align:center;" | {{ربط بصفحة|93|4|٩٣}}
| style="padding-right:2em;" |الكتابة
|-
| style="text-align:center;" | {{ربط بصفحة|94|4|٩٤}}
| style="padding-right:2em;" | الشعر
|-
| style="text-align:center;" | {{ربط بصفحة|94|4|٩٤}}
| style="padding-right:2em;" | [[التهذيب في أصول التعريب/العروض|العروض]]
|-
| style="text-align:center;" | {{ربط بصفحة|95|4|٩٥}}
| style="padding-right:2em;" | الأمثال
|-
| style="text-align:center;" | {{ربط بصفحة|95|4|٩٥}}
| [[التهذيب في أصول التعريب/باب فى القول فى اتساع اللغة العربية|١٩ - باب فى القول فى اتساع اللغة العربية]]
|-
| style="text-align:center;" | {{ربط بصفحة|99|4|٩٩}}
| [[التهذيب في أصول التعريب/باب فى الكتابة العربية|٢٠ - باب فى الكتابة العربية]]
|-
| style="text-align:center;" | {{ربط بصفحة|100|4|١٠٠}}
| [[التهذيب في أصول التعريب/باب فى حاجة العرب إلى التعريب|٢١ - باب فى حاجة العرب إلى التعريب]]
|-
| style="text-align:center;" | {{ربط بصفحة|103|4|١٠٣}}
| style="padding-right:2em;" | [[التهذيب في أصول التعريب/نقل الدواوين إلى العربية|نقل الدواوين إلى العربية]]
|-
| style="text-align:center;" | {{ربط بصفحة|104|4|١٠٤}}
| style="padding-right:2em;" | [[التهذيب في أصول التعريب/اتساع دائرة النقل والترجمة|اتساع دائرة النقل والترجمة]]
|-
| style="text-align:center;" | {{ربط بصفحة|109|4|١٠٩}}
| [[التهذيب في أصول التعريب/باب فى الدلالة الكتابية على الحروف الأعجمية|٢٢ - باب فى الدلالة الكتابية على الحروف الأعجمية]]
|-
| style="text-align:center;" | {{ربط بصفحة|112|4|١١٢}}
| [[التهذيب في أصول التعريب/باب فى النقل من اللغات الأعجمية إلى العربية|٢٣ - باب فى النقل من اللغات الأعجمية إلى العربية]]
|-
| style="text-align:center;" | {{ربط بصفحة|113|4|١١٣}}
| [[التهذيب في أصول التعريب/باب فى القول فى الترجمة|٢٤ - باب فى القول فى الترجمة]]
|-
| style="text-align:center;" | {{ربط بصفحة|114|4|١١٤}}
| [[التهذيب في أصول التعريب/باب فى القول فى الاشتقاق|٢٥ - باب فى القول فى الاشتقاق]]
|-
| style="text-align:center;" | {{ربط بصفحة|117|4|١١٧}}
| [[التهذيب في أصول التعريب/باب القول فى المجاز|٢٦ - باب القول فى المجاز]]
|-
| style="text-align:center;" | {{ربط بصفحة|119|4|١١٩}}
| [[التهذيب في أصول التعريب/باب فى القول فى النحت|٢٧ - باب فى القول فى النحت]]
|-
| style="text-align:center;" | {{ربط بصفحة|120|4|١٢٠}}
| [[التهذيب في أصول التعريب/باب القول فى التعريب|٢٨ - باب القول فى التعريب]]
|-
| style="text-align:center;" | {{ربط بصفحة|121|4|١٢١}}
| style="padding-right:2em;" | [[التهذيب في أصول التعريب/فى دلائل الاسم المعرب|فى دلائل الاسم المعرب]]
|-
| style="text-align:center;" | {{ربط بصفحة|125|4|١٢٥}}
| style="padding-right:2em;" | [[التهذيب في أصول التعريب/فصل فى حكم التعريب|فصل فى حكم التعريب]]
|-
| style="text-align:center;" | {{ربط بصفحة|129|4|١٢٩}}
| [[التهذيب في أصول التعريب/باب فى حروف الهجاء ومقارنتها|٢٩ - باب فى حروف الهجاء ومقارنتها]]
|-
| style="text-align:center;" | {{ربط بصفحة|130|4|١٣٠}}
| [[التهذيب في أصول التعريب/باب فى قواعد التعريب|٣٠ - باب فى قواعد التعريب]]
|}<noinclude></noinclude>
t21qv9dujd0r9xags64hohhqd7tq9g3
617396
617391
2026-08-13T19:58:55Z
Nehaoua
7481
تنسيق ويكي
617396
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Nehaoua" />{{وسط|–١٤٨–}}
{| style="margin:0 auto; width:85%; border-collapse:collapse;" dir="rtl"
! style="width:15%; text-align:center;" | صفحة
! style="text-align:right;" |</noinclude>{{nop}}
|-
| style="text-align:center;" | {{ربط بصفحة|76|4|٧٦}}
| [[التهذيب في أصول التعريب/باب فى اللغة العامية أو الدارجة|١٥ - باب فى اللغة العامية أو الدارجة]]
|-
| style="text-align:center;" | {{ربط بصفحة|77|4|٧٧}}
| [[التهذيب في أصول التعريب/ باب فى القول فى العربي الجنوبي|١٦ - باب فى القول فى العربي الجنوبي]]
|-
| style="text-align:center;" | {{ربط بصفحة|82|4|٨٢}}
| [[التهذيب في أصول التعريب/باب فى القول فى تدوين اللغة واستنباط النحو والصرف|١٧ - باب فى القول فى تدوين اللغة واستنباط النحو والصرف]]
|-
| style="text-align:center;" | {{ربط بصفحة|83|4|٨٣}}
| style="padding-right:2em;" | فن النحو
|-
| style="text-align:center;" | {{ربط بصفحة|87|4|٨٧}}
| style="padding-right:2em;" | فن التصريف أو الصرف
|-
| style="text-align:center;" | {{ربط بصفحة|88|4|٨٨}}
| style="padding-right:2em;" | فن اللغة
|-
| style="text-align:center;" | {{ربط بصفحة|91|4|٩١}}
| [[التهذيب في أصول التعريب/باب فى القول فى فضل اللغة العربية|١٨ - باب فى القول فى فضل اللغة العربية]]
|-
| style="text-align:center;" | {{ربط بصفحة|93|4|٩٣}}
| style="padding-right:2em;" |الكتابة
|-
| style="text-align:center;" | {{ربط بصفحة|94|4|٩٤}}
| style="padding-right:2em;" | الشعر
|-
| style="text-align:center;" | {{ربط بصفحة|94|4|٩٤}}
| style="padding-right:2em;" | العروض|العروض
|-
| style="text-align:center;" | {{ربط بصفحة|95|4|٩٥}}
| style="padding-right:2em;" | الأمثال
|-
| style="text-align:center;" | {{ربط بصفحة|95|4|٩٥}}
| [[التهذيب في أصول التعريب/باب فى القول فى اتساع اللغة العربية|١٩ - باب فى القول فى اتساع اللغة العربية]]
|-
| style="text-align:center;" | {{ربط بصفحة|99|4|٩٩}}
| [[التهذيب في أصول التعريب/باب فى الكتابة العربية|٢٠ - باب فى الكتابة العربية]]
|-
| style="text-align:center;" | {{ربط بصفحة|100|4|١٠٠}}
| [[التهذيب في أصول التعريب/باب فى حاجة العرب إلى التعريب|٢١ - باب فى حاجة العرب إلى التعريب]]
|-
| style="text-align:center;" | {{ربط بصفحة|103|4|١٠٣}}
| style="padding-right:2em;" | [[التهذيب في أصول التعريب/نقل الدواوين إلى العربية|نقل الدواوين إلى العربية]]
|-
| style="text-align:center;" | {{ربط بصفحة|104|4|١٠٤}}
| style="padding-right:2em;" | [[التهذيب في أصول التعريب/اتساع دائرة النقل والترجمة|اتساع دائرة النقل والترجمة]]
|-
| style="text-align:center;" | {{ربط بصفحة|109|4|١٠٩}}
| [[التهذيب في أصول التعريب/باب فى الدلالة الكتابية على الحروف الأعجمية|٢٢ - باب فى الدلالة الكتابية على الحروف الأعجمية]]
|-
| style="text-align:center;" | {{ربط بصفحة|112|4|١١٢}}
| [[التهذيب في أصول التعريب/باب فى النقل من اللغات الأعجمية إلى العربية|٢٣ - باب فى النقل من اللغات الأعجمية إلى العربية]]
|-
| style="text-align:center;" | {{ربط بصفحة|113|4|١١٣}}
| [[التهذيب في أصول التعريب/باب فى القول فى الترجمة|٢٤ - باب فى القول فى الترجمة]]
|-
| style="text-align:center;" | {{ربط بصفحة|114|4|١١٤}}
| [[التهذيب في أصول التعريب/باب فى القول فى الاشتقاق|٢٥ - باب فى القول فى الاشتقاق]]
|-
| style="text-align:center;" | {{ربط بصفحة|117|4|١١٧}}
| [[التهذيب في أصول التعريب/باب القول فى المجاز|٢٦ - باب القول فى المجاز]]
|-
| style="text-align:center;" | {{ربط بصفحة|119|4|١١٩}}
| [[التهذيب في أصول التعريب/باب فى القول فى النحت|٢٧ - باب فى القول فى النحت]]
|-
| style="text-align:center;" | {{ربط بصفحة|120|4|١٢٠}}
| [[التهذيب في أصول التعريب/باب القول فى التعريب|٢٨ - باب القول فى التعريب]]
|-
| style="text-align:center;" | {{ربط بصفحة|121|4|١٢١}}
| style="padding-right:2em;" | [[التهذيب في أصول التعريب/فى دلائل الاسم المعرب|فى دلائل الاسم المعرب]]
|-
| style="text-align:center;" | {{ربط بصفحة|125|4|١٢٥}}
| style="padding-right:2em;" | [[التهذيب في أصول التعريب/فصل فى حكم التعريب|فصل فى حكم التعريب]]
|-
| style="text-align:center;" | {{ربط بصفحة|129|4|١٢٩}}
| [[التهذيب في أصول التعريب/باب فى حروف الهجاء ومقارنتها|٢٩ - باب فى حروف الهجاء ومقارنتها]]
|-
| style="text-align:center;" | {{ربط بصفحة|130|4|١٣٠}}
| [[التهذيب في أصول التعريب/باب فى قواعد التعريب|٣٠ - باب فى قواعد التعريب]]
|}<noinclude></noinclude>
1e8ggo17nh56n1i0w0cpudo1smyds51
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/81
104
217280
617385
617101
2026-08-13T19:29:27Z
Nehaoua
7481
/* تم التّحقّق منها */
617385
proofread-page
text/x-wiki
<noinclude><pagequality level="4" user="Nehaoua" />{{وسط|- ٧٧ -}}</noinclude><section begin="1" />وبالجملة فانهم يقسمون اللهجات العربية العصرية الى -١ لهجة جزيرة العرب -٢ لهجة العراق والجزيرة -٣ لهجة بلاد الشام -٤ لهجة مصر -٥ لهجة بلاد المغرب -٦ لهجة جزيرة مالطة وقد دخلها كثير من لغات أوروفة لا سيما الطليانية
واللغة العربية والخط العربي معروفان عند جميع الأمم التي تدين بالاسلام وليست اللغة العربية هي لغتها الأصلية، وفيها العلماء والفقهاء العارفين بها تمام
المعرفة، وكذلك تكتب بالخط العربي لغات تلك الأمم التي دانت للاسلام وهي أمم الفرس والترك والأفغان وبعض الهند والملايو والصين (التركستان الصيني) وروسيا الشرقية، واللغة العربية عامة الآن في آسيا الغربية، وفى شمال افريقيا ووسطها من الشرق الى الغرب
<section end="1" /><section begin="2" />{{ع2|١٦ - باب في القول في العربي الجنوبي}}
اما العربي الجنوبي وهو لغة اليمن فمن لهجاته -١ المعينية -٢ السبأيّة ٣ الَقتْبَانِيَّة -٤ الحَضْرَمِيَّة -، ثم اللهجات الجديدة وهي لغة مَهْرَة والشّحْر وهذه اللهجات هي لغة حِمْيَر وسبأ لسان القحطانيين وقبائلهم عادٍ وثمودَ وطَسْم وجديس والعمالقة؛ واليمن سميت كذلك لوقوعها الى جنوب الكعبة، كما سميت الشأم شأما لوقوعها شماليها، اما اشتقاق اسم اليَمَن من اليُمْن وهو السعادة فمشكوك فيه وهو ما ظنه أهل أوروفة الأقدمين فسموها بلاد العرب السعيدة (Arabia felixia) وهي كثيرة الزرع والأَشجار والثمار والعُطُور والأفاويه، وكانت غاية في العمران، عامرة بالمدن والحواضر، ومن ممالكها المعروفة مملكة مَعِين وقصبتها معِين، وسبأ وقصبتها مأرب، وممالك قَتْبان وحضرموت، وأقدمها مملكة معين وبدؤها في القرن الحادي عشر قبل الميلاد، ويليها مملكة سبأ، ثم انتقل الملك منهما الى حمير وقصبتها ظَفَار، وكتابات أهل اليمن يطلق عليها لفظ حِمْيَرِيَّة وان اختلفت المعينية والسبأية عنها قليلا، وفي قرائتها صعوبات كبرى، والحميري يسمى المُسَنَّد وهو أحدث الخطوط اليمنية،<section end="2" /><noinclude><references/></noinclude>
tjzt6zolvoe9eugadn96iw57ftcy26h
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/88
104
217285
617360
616367
2026-08-13T15:29:47Z
JazarF
71952
617360
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Мушир" /></noinclude>وقال محمد بن سلَّام الجُمَحِي أول من أسس العربية وفتح بابها وأنهج سبيلها ووضع قياسها أبو الأسود وانما فعل ذلك حين اضطرب كلام العرب. وقال ابن الأنباري كتب معاوية الى زياد يطلب عبد الله ابنه. فلما قدم عليه كلمه فوجده يلحن فَرَدَّه الى زياد وكتب اليه كتابا يلومه فيه ويقول أمِثْل عبيد اللّٰه يضيع. فبعث زيادٌ الى أبي الأسود، فقال له يا أبا الأسود إِن هذه الحمراء يعني الأعاجم قد كثرت وأفسدت من ألْسن العرب فلو وضَعْتَ شيئاً يُصْلح به الناسُ كلامهم ويعرفون به كتاب اللّٰه، فأبى ذلك أبو الاسود. فوجه زيادٌ رجلاً وقال له أقعد في طريق أبي الاسود فاذا مرَّ بك فاقرأ شيئاً من القرآن وتعمد اللحن فيه ففعل ذلك فلما مرَّ به أبو الأسود رفع الرجل صوتَه يقرأُ «اِنَّ الله بريءٌ من المشركين ورسولِه» بكسر اللام، فاستعظم ذلك أبو الأسود وقال عزَّ وجهُ اللّٰه تعالى أن يبرأ من رسوله. ثم رجع من فوره الى زياد فقال قد أجبتك الى ما سألت ورأيت أن أبدأ باعراب القرآن فابعث الي ثلاثين رجلا، فأحضرهم زيادٌ فاختار منهم أبو الأَسود عشرة ثم لم يزل يختارهم حتى اختار منهم رجلا من عبد القيس. فقال خذ المصحف وصِبغاً يخالف لون المداد. فاذا فتحت شَفَتي فانقط واحدة فوق الحرف، واذا ضممتها فاجعل النقطة الى جانب الحرف، فاذا كسرتها فاجعل النقطة من أسفل الحرف. فان أَتْبَعْتُ شيئاً من هذه الحركات غُنَّةً فانقط نقطتين، فابتدأ بالمصحف حتى أتى على آخره، ثم وضع المختصر المنسوب اليه بعد ذلك.
واما الذين ينسبون وضع العربية الى علي بن أبي طالب فيقولون ان الروايات كلها تسند الى أبي الأسود، وأبو الأسود يسند الى علي. فقد روي عن أبي الأسود أنه سئل من أين لك هذا العلم يُعْنُون النحو، فقال أخذت حدوده عن علي بن أبي طالب، وقال أبو عبيدة مَعْمَر بن المثنى أخذ أبو الأسود الدؤلي النحو عن علي بن أبي طالب. وروى أبو الأسود قال دخلت على أمير المؤمنين علي بن أبي طالب عليه السلام فوجدت في يده رقعةً. فقلت ما هذه يا أمير المؤمنين، فقال اني تأملت كلام العرب فوجدته قد فسد بمخالطة هذه الحمراء يعنى الأعاجم فأردت أن أضع شيئا يرجعون اليه ويعتمدون عليه. ثم ألقى اليَّ الرقعة وفيها<noinclude></noinclude>
ct9wf7vcyvvmlwy2vxqfpech2omyce6
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/89
104
217286
617361
616369
2026-08-13T15:41:55Z
JazarF
71952
617361
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Origamos" />{{وسط|- ٨٥ -}}</noinclude>مكتوب «الكلام كله اسم وفعل وحرف، فالاسم ما أنبأ عن المسمَّى. والفعل ما أنبئ به، والحرف ما أفادَ معنى، وقال أُنْحُ هذا النحو وأضف اليه ما وقع اليك، واعلم يا أبا الاسود أن الاسماء ثلاثة ظاهر ومضمر واسم لا ظاهر ولا مضمر وانما يتفاضل الناس يا أبا الأسود فيها ليس بظاهر ولا مضمر، وأراد بذلك الاسم المبهم. قال ثم وضعت بابَيِ العطف والنعت ثم بابي التعجب والاستفهام الى أن وصلت الى باب إِنَّ وأخواتها ما خلا لكن فلما عرضتها علَى عَلِىِّ عليه السلام أمرني بضم لكن اليها. وكنت كلما وضعت باباً من أبواب النحو عرضته عليه الى أن حصلت ما فيه الكفاية، قال ما أحسن هذا النحو الذي نحوت فلذلك سمي النحو وكان أبو الأسود ممن صحب أمير المؤمنين علي بن أبي طالب وكان من المشهورين بصحبته ومحبته ومحبة أهل بيته
وأخذ عن أبي الاسود جماعةٌ<ref>طبقات الشعراء للجمحي</ref> منهم يحيى بن يَعْمَر (المتوفى عام ١٢٩هـ)، وهو رجل من عَدْوان كان في عداد بني ليث وكان مأموناً عالما بما يأتي يُرْوَى عنه الفقه عن أبي عَمْرو وابن عباس، ورَوى عنه قَتَادة واسحاق بن سُوَيْد وغيرهما من العلماء، وأخذ ذلك عنه أيضاً ميمون الأقْرَن، وعَنْبَسَة الفيل، ونصر بن عاصم الليثي (المتوفى عام ٨٩ هـ)، وغيرهم، ثم كان من بعدهم عبد اللّٰه بن أبي اسحاق الحضرمي (المتوفى سنة ۱۱۳هـ) فكان أول من بعج النحو ومدَّ القياس والعِلل. وكان معه أبو عمرو بن العلاء وبقي معه بقاء طويلا، وكان ابن أبي اسحاق أشدَّ تجريداً للقياس. وكان أبو عمرو أوسع علما بكلام العرب ولغاتها. وكان بلال بن أبي بُرْدَة جمع بينهما بالبصرة وهو يومئذ والٍ عليها وَلَّاه خالد بن عبد اللّٰه القسري زمن هشام بن عبد الملك، قال يونس بن حبيب قال أبو عمرو فغلبني ابن أبي اسحاق بالهَمْزِ، فنظرت فيه بعد ذلك وبالغت فيه. وكان عيسى بن عمر الثقفي (المتوفى عام ١٤٩هـ) أخذ عن ابن أبي اسحاق، وأخذ يونس بن حبيب (المتوفى عام ۱۸۳هـ) عن أبى عمر بن العلاء. وكان معهما مَسْلَمة بن عبد اللّٰه بن محارب الفِهْري. وكان ابن أبي اسحاق بن خاله . وكان حمَّاد بن<noinclude><references/></noinclude>
f7biw5orljwqyaoy8thgv3blln8fu9n
617362
617361
2026-08-13T15:42:19Z
JazarF
71952
617362
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Origamos" />{{وسط|- ٨٥ -}}</noinclude>مكتوب «الكلام كله اسم وفعل وحرف، فالاسم ما أنبأ عن المسمَّى. والفعل ما أنبئ به، والحرف ما أفادَ معنى، وقال أُنْحُ هذا النحو وأضف اليه ما وقع اليك، واعلم يا أبا الاسود أن الاسماء ثلاثة ظاهر ومضمر واسم لا ظاهر ولا مضمر وانما يتفاضل الناس يا أبا الأسود فيها ليس بظاهر ولا مضمر، وأراد بذلك الاسم المبهم. قال ثم وضعت بابَيِ العطف والنعت ثم بابي التعجب والاستفهام الى أن وصلت الى باب إِنَّ وأخواتها ما خلا لكن فلما عرضتها علَى عَلِىِّ عليه السلام أمرني بضم لكن اليها. وكنت كلما وضعت باباً من أبواب النحو عرضته عليه الى أن حصلت ما فيه الكفاية، قال ما أحسن هذا النحو الذي نحوت فلذلك سمي النحو وكان أبو الأسود ممن صحب أمير المؤمنين علي بن أبي طالب وكان من المشهورين بصحبته ومحبته ومحبة أهل بيته
وأخذ عن أبي الاسود جماعةٌ<ref>طبقات الشعراء للجمحي</ref> منهم يحيى بن يَعْمَر (المتوفى عام ١٢٩هـ)، وهو رجل من عَدْوان كان في عداد بني ليث وكان مأموناً عالما بما يأتي يُرْوَى عنه الفقه عن أبي عَمْرو وابن عباس، ورَوى عنه قَتَادة واسحاق بن سُوَيْد وغيرهما من العلماء، وأخذ ذلك عنه أيضاً ميمون الأقْرَن، وعَنْبَسَة الفيل، ونصر بن عاصم الليثي (المتوفى عام ٨٩ هـ)، وغيرهم، ثم كان من بعدهم عبد اللّٰه بن أبي اسحاق الحضرمي (المتوفى سنة ۱۱۳هـ) فكان أول من بعج النحو ومدَّ القياس والعِلل. وكان معه أبو عمرو بن العلاء وبقي معه بقاء طويلا، وكان ابن أبي اسحاق أشدَّ تجريداً للقياس. وكان أبو عمرو أوسع علما بكلام العرب ولغاتها. وكان بلال بن أبي بُرْدَة جمع بينهما بالبصرة وهو يومئذ والٍ عليها وَلَّاه خالد بن عبد اللّٰه القسري زمن هشام بن عبد الملك، قال يونس بن حبيب قال أبو عمرو فغلبني ابن أبي اسحاق بالهَمْزِ، فنظرت فيه بعد ذلك وبالغت فيه. وكان عيسى بن عمر الثقفي (المتوفى عام ١٤٩هـ) أخذ عن ابن أبي اسحاق، وأخذ يونس بن حبيب (المتوفى عام ۱۸۳هـ) عن أبى عمر بن العلاء. وكان معهما مَسْلَمة بن عبد اللّٰه بن محارب الفِهْري. وكان ابن أبي اسحاق بن خاله . وكان حمَّاد بن<noinclude>{{smallrefs|rule=yes}}</noinclude>
sv1d9iwwmzrmun5cmz24mz9p4d87312
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/90
104
217287
617364
616371
2026-08-13T15:56:15Z
JazarF
71952
617364
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Origamos" />{{وسط|- ٨٦ -}}</noinclude>الزّبْرِقان ويونس يفضلانه. قال محمد بن سلّام الجُمَحي سمعت رجلا يسأل يونس عن بن أبي اسحاق وعلمه، قال هو والبحر سواء أي هو الغاية. وأخذ عن أبي عمرو الأخفشُ الكبير عبد الحميد بن عبد المجيد أبو الخطاب، وأبو جعفر محمد بن أبي سارة الرؤاسي، وهو أول من وضع من الكوفيين كتابا في النحو وهو أستاذ الكسائي والفَرَّاء، الى أن انتهت<ref>ابن خلدون بتصرف</ref> الى الخليل بن أحمد الفراهيدي (المتوفى عام ۱۷۰هـ) في أيام الرشيد، أخذ عن عيسى بن عمر الثقفي. وعن أبي عمرو بن العلاء. فهذب الصناعة وكمَّل أبوابها. وأخذها عنه سيبويه وهو عمرو بن عثمان بن قَنْبَر أبو بشر (المتوفى سنة ١٦١هـ)، فكمل تفاريعها واستكثر من أداتها وشواهدها ووضع فيها كتابه المشهور الذي صار اماماً لكل ما كتب فيها من بعده، وأخذ عن سيبويه الأخفش المجاشعي (الاوسط) (المتوفى سنه ٢١٥)، وقُطْرُب (وهو أبو علي محمد بن المستنير المتوفى سنة ۲۰۲)، وهما من علماء البصرة، وأتى بعدهم أبو عُبَيْدة مَعْمَر بن المُثَنَّى (المتوفى سنة ٢٠٩) وأبو زيد سعيد بن أوس الأنصاري (المتوفى سنة ۲۱٥)، والأَصْمَعِيّ (المتوفى سنة ۱۸۰) وأبو الحسن علي بن المُغِيرة الأَثْرم (المتوفى سنة ٢٣٢) ، وبكر بن محمد المازني (المتوفى سنة ٢٤٨)، وأبو عبد اللّٰه محمد بن هرون التَوَّّزي (المتوفى سنة ٢٣٣) وابو اسحاق ابراهيم بن سُفْيان الزيادي (المتوفى سنة ٢٤٩) ، وأبو الفضل العباس بن الفرج الرياشي (المتوفى سنة ٢٥٧)، وغيرهم من مشهوري علماء النحو، ثم وضع أبو علي الفارسي (المتوفى ۳۷۷) وأبو القاسم عبد الرحمن بن اسحاق الزجَّاج (المتوفى سنة ٣٣٩) كتباً مختصرة للمتعلمين حَذَوا فيها حذو الامام في كتابه، ثم طال الكلام في هذه الصناعة وحدث الخلاف بين أهلها في الكوفة والبصرة المِصْرَين القديمين للعرب، وأهلهما من بين أمصار العرب هم الذين نقلوا اللغة واللسان العربي وأثبتوها فى كتب فصيروها علما وصناعة، فكثرت الأدلة والحجاج بينهم. وتباينت الطرق في التعليم وكثر الاختلاف في إِعراب كثير من آي القرآن باختلافهم في تلك القواعد وطال ذلك على المتعلمين، وجاء<noinclude>{{smallrefs|rule=yes}}</noinclude>
j9fctb56mhof9snwbtdf5kordng45mt
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/91
104
217288
617365
616373
2026-08-13T16:05:28Z
JazarF
71952
617365
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Origamos" />{{وسط|- ٨٧ -}}</noinclude>المتأخرون بمذاهبهم في الاختصار، فاختصروا كثيراً من ذلك مع استيعابهم لجميع ما نقل، كما فعله مالك (محمد بن عبد اللّٰه عاش من ٦٠١ الى ٦٧٢) في كتاب التسهيل وأمثاله، واقتصارهم على المبادئ للمتعلمين كما فعله الزمخشري (المتوفى سنة ٥٣٨) في المفَصَّل. وابن الحاجب (جمال الدين أبو عمر المتوفى سنة ٦٤٦) في المقدمة له، وربما نظموا ذلك نظماً مثل ابن مالك في الأرجوزتين الكبرى والصغرى. وابن مُعْطي في الارجوزة الألفية. وبالجملة فالتآليف في هذا الفن أكثر من أن تحصى أو يحاط بها
ولم يكونوا<ref>الفهرست لابن النديم</ref> فيا ألَّفوا ورتَّبوا يكتفون بما يسمعونه من أهل العلم، بل كانت عنايتهم متجهة الى التحقيق والتمحيص والاستماع من فصحاء الأعراب ووفود البادية لسلامة سليقتهم وعدم اختلاطهم بغيرهم من الأعاجم. ومن مشاهير فصحائهم
أبو البيداء الرياحي وأبو مالك عمر بن كَرْكرة ، وأبو عِرار العِجْلي، وأبو زياد الكلابي وأبو سوار الغَنَوي، وشُبيْل بن عَرْعَرَة الضَبُعي، وأبو عدنان ورد بن حكيم، ونَهْشَل بن زيد، وأبو شبل العقيلي، وأبو محلِّم الشيباني، وأبو مِسْحَل، وأبو ضمضم الكلابي، والبهْدَلي، وجَهْم بن خلف المازني، ومُؤَرِّج
السَدُوسي، واللحياني، وخلف الأحمر وغيرهم من فصحاء العرب
{{ع3|فن التصريف أو علم الصرف}}
واما علم الصرف فالمظنون أن أول من وضمه هو معاذ الهرَّاء ويستدلون<ref>بغية الوعاة للسيوطى، وغيره</ref> على ذلك بما يأتي: وذلك أن مسلم مؤدب ولد عبد الملك بن مروان كان نظر في النحو ثم لما حدث التصريف جلس الى معاذ الهراء فسمعه يقول لرجل كيف
تُثْنى من تَؤُزُّهم أَزًّاً مثل يا فاعِل افْعَل، فانكر ذلك أبو مسلم وقال:
{{أبيات|قد كان أخْذُهُم في النحو يُعْجِبني\\حتى تعاطوا كلام الزنج والروم
لما سمعتُ كلاما لستُ أفهمه\\كأنه رجل الغربان والبوم
ترکتُ نحوَهم واللّٰهُ يَعْصِمُني\\من التعَجُّم في تلك الجراثيم}}<noinclude>{{smallrefs|rule=yes}}</noinclude>
nqawrxqsyrq3zz5sunwp7cvikhsh7e7
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/104
104
217296
617400
616399
2026-08-13T20:08:36Z
Nehaoua
7481
تنسيق ويكي
617400
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Origamos" />{{وسط|– ١٠٠ –}}</noinclude><section begin="1" />لكتابة الافرنج كأنها مختزلة يكتبها العربى فى أقل من نصف الزمن الذي يشغله الافرنجي في كتابة ترجمتها على فرض الكاتبين فى درجة واحدة من السرعة، وقد جربنا ذلك مراراً فلم تخطئ التجربة، فالافرنج سهلوا القراءة ولكنهم صعبوا الكتابة والعرب سيلوا الكتابة والقراءة معا أما اذا تركوا الكتابة غُفْلاً فقد سهلوا الكتابة وصعبوا القراءة، وقد أجمع الأدباء على أنهم لا يتركون الكتابة غُفْلاً الا اذا كانوا ايكتبون لأنفسهم أو لنظراتهم أو كان المكتوب قصة ونحوها مما لا يعظم الخطر في اللحن فيه، والمتفق عليه عندهم أن يشكلوا ما يشكل كما قال ابن مجاهد، ينبغي ألا يُشكَّل الا ما يُشكِل فالقاعدة العامة عندهم تنحصر في قولك «أشْكل ما يُشْكل»، وقد بين حفنى بك القواعد لما ينبغى أن يشكل من الحروف في بنية الكلمة تفاديا من اللبس وما ينبغي أن يترك غفلا اما لأنه الأصل في الكلمة أو لأنه معلوم، ومتى يكون الشكل تاماً في جميع الكلمة، وتحوى القاعدة الأخيرة المصاحف والكتب المقدسة فانها تشكل شكلا تاماً زيادة في الاحتياط، وكذلك كتب تعليم الاطفال ثم قال رحمه الله انه ليس في تطبيق هذه القواعد صعوبة على من عنده مسكة من الذوق، وذكر مناظرة جرت بينه وبين متشيع هجر العربية المُصّرية والاقتصار على المخاطبة والمكاتبة بالعامية، واستبدال الحروف اللاطينية بالحروف العربية، وهي محاورة لطيفة أعجز بها مناظره عن الجواب وختمها بقوله: «فقد علمت من هذه المناظرة أن الكتابة العربية اذا شكل من حروفها ما يشكل كانت غاية الغايات في الاختصار والبيان وليس في الامكان أبدع مما كان»
<section end="1" /><section begin="2" />{{ع2|٢١ – باب في حاجة العرب الى التعريب}}
بلاد العرب وتعرف بجزيرة العرب تجاور أمما كثيرة من جميع جهاتها، وهذه الأمم المجاورة لأمة العرب كالهند وفارس والعراق والشام والروم ومصر والحبشة كانت على جانب عظيم من المدنية والحضارة، وعلاقاتها التجارية
<section end="2" /><noinclude><references/></noinclude>
4bwzbwhu3eu2udw2qotl3lq8s6oznfw
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/103
104
217297
617398
616397
2026-08-13T20:03:50Z
Nehaoua
7481
617398
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Origamos" />{{وسط|– ٩٩ –}}</noinclude><section begin="1" />وقد جمع بعضهم من أوزان جموع التكبير نحو اثنين ومئة وزن، وبهذه الخصائص والميزات كانت اللغة العربية ميزانا يقاس عليه الاسماء في اللغات السامية الأخرى، وهى واسعة المعانى جزلة الأوزان لا تحصى مفرداتها ويعجز العالم عن استيعابها بالحفظ ولا بد له من الاستعانة بمعاجم اللغة على الدوام.
<section end="1" /><section begin="2" />{{ع2|٢٠– باب في الكتابة العربية}}
ومن مميزات لغة العرب حروفها التى تكتب بيا وتلفظ بناء عليها، وقد عقدها المرحوم حفنى ناصف بك باباً خاصاً في كتابه «تاريخ الأدب» أتى فيه على قسمة الحروف إلى أصلية وإلى متفرعة وبين حركاتها ومخارجها وصفاتها وترتيبها وخواصها إلى أن قال فى آخر كلامه «وليس غرضنا من تحديد هذه المزايا لحروف اللغة العربيةالحط من شأن غيرها من اللغات أو تثبيط همم المشتغلين بها معاذ الله، وانما غرضنا الرد على المفتونين ببعض اللغات الأجنبية –الجاهلين بالعربية في زعمهم أن العربية أصعب مراساً وأبعد مثلا، وهم لو أعطوها العناية ربع ما أعطوه لغيرها لمرفوا أنها في غاية الاحكام وعلى طرف التمام» فمن شاء استيعاب جميع ما جاء في هذا الباب فليرجع اليه
وقد ذكر حفني ناصف بك قواعد الشكل فى الكتابة العربية فقال «كانت الكتابة قديماً في الشرق والغرب عارية عن الشكل، ثم أدخل اليونان ومن حذا حذوهم من أهل أوروفا علامات في صلب كتابهم، يعنى أنهم جعلوا بعد كل حرف متحرك حرفاً آخر أو حرفين للدلالة على حركة ذلك الحرف، فصارت الكتابة عندهم ضعف ما كانت عليه قديماً بل أكثر من الضعف. أما العرب وسائر الساميين فلم يدخلوا الشكل في صلب الكتابة بل جعلوا له علامات توضع فوق الحرف أو تحته أو بجانبه، ولم يشكلو اكل حرف وأنما شكلوا من الحروف ما تلتيس حركته وتركوا أكثر الحروف غفلا ضنا بالوقت أن يضيع فيالا فائدة له تذكر واقتصاداً في الأوراق، فصارت الكتابة العربية بالنسبة
<section end="2" /><noinclude><references/></noinclude>
d1coct0w5lchqnmzwqj9jsb7qmf4hyo
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/99
104
217301
617395
616389
2026-08-13T19:57:51Z
Nehaoua
7481
617395
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Origamos" />{{وسط|– ٩٥ –}}</noinclude><section begin="1" />{{ع3|الأمثال}}
ومن مفاخر العربية الأمثال وهى حكمة العرب في الجاهلية والإسلام وبها كانت تعارض كلامها فتبلغ به ما حاولت من حاجاتها في المنطلق بكناية غير تصريح، قال ابراهيم النظام يجتمع في المثل أربعة لا تجتمع في غيره من الكلام ايجاز اللفظ واصابة المعنى وحسن التشبيه وجودة الكناية، فهو نهاية البلاغة، وقال ابن المقفع اذا جعل الكلام مثلاً كان أوضح للمنطق وائق للسمع وأوسع لشعوب الحديث.
<section end="1" /><section begin="2" />{{ع2|١٩– باب في القول في اتساع اللغة العربية}}
أما القول في اتساع اللغة العربية فهو شائع مشهور محقق بالميان، فلسان العرب أوسع الأنسنة مذهباً، وأكثرها ألفاظا، قال أحمد بن فارس: قال بعض الفقهاء كلام العرب لا يحيط به الا نبيٌ، وهذا كلام حرى أن يكون صحيحاً وما بلغنا أن أحداً ممن مضى أوعى حفظ اللغة كلها، والمراد من هذا القول بيان عظمها وأن وَعْيَها معجزة لاثانى الا من نبي، وقال ذهب علماؤنا أو أكثرهم إلى أن الذي انتهى الينا من كلام العرب هو الأقل، وأن كثيرا من الكلام ذهب بذهاب أهله، ولو جاءنا جميع ما قالوه لجاءنا شعر كثير وكلام كثير
<br/>وللعرب أقاويل كثيرة وتعابير جمة بعضها ليس بغريب اللفظ ولكن الوقوف على كنهه معتاص وقد بينا ذلك فى مراتب لغة العرب، وليس أدل على اتساع اللغة العربية
استقصاء أبنية الكلام وحصر تراكيب اللغة وهو ما توصل اليه الخليل بن أحمد، فقد ذكر فى {{خطأ | كتات المين | كتاب العين}}{{حا|المزهر للسيوطي}} أن عدة أبنية كلام العرب المستعمل منه والمهمل على مراتبها الأربع من الثنائى والثلاثى والرباعي والحماسى من غير تكرار اثنا عشر ألف ألف وثلاثمئة ألف وألفان وتسعمئة واثنا عشر (١٢٣٠٢٩١٢) وقال بهاء الدين العاملى صاحب الكشكول:
<br/>اذا قيل كم يتحصل من تركيب حروف المعجم كلمة ثنائية سواء كانت مبدلة أو مستعملة فاضرب
–––––––––––––––––––––
{{حا|المزهر للسيوطي}}
<section end="2" /><noinclude>{{سطر|}}{{حواشي}}</noinclude>
ardp3phq14w64gxgnxm6evzkonkpy1h
617409
617395
2026-08-13T22:18:01Z
JazarF
71952
617409
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Origamos" />{{وسط|– ٩٥ –}}</noinclude><section begin="1" />{{ع3|الأمثال}}
ومن مفاخر العربية الأمثال وهى حكمة العرب في الجاهلية والإسلام وبها كانت تعارض كلامها فتبلغ به ما حاولت من حاجاتها في المنطلق بكناية غير تصريح، قال ابراهيم النظام يجتمع في المثل أربعة لا تجتمع في غيره من الكلام ايجاز اللفظ واصابة المعنى وحسن التشبيه وجودة الكناية، فهو نهاية البلاغة، وقال ابن المقفع اذا جعل الكلام مثلاً كان أوضح للمنطق وائق للسمع وأوسع لشعوب الحديث.
<section end="1" /><section begin="2" />{{ع2|١٩– باب في القول في اتساع اللغة العربية}}
أما القول في اتساع اللغة العربية فهو شائع مشهور محقق بالميان، فلسان العرب أوسع الأنسنة مذهباً، وأكثرها ألفاظا، قال أحمد بن فارس: قال بعض الفقهاء كلام العرب لا يحيط به الا نبيٌ، وهذا كلام حرى أن يكون صحيحاً وما بلغنا أن أحداً ممن مضى أوعى حفظ اللغة كلها، والمراد من هذا القول بيان عظمها وأن وَعْيَها معجزة لاثانى الا من نبي، وقال ذهب علماؤنا أو أكثرهم إلى أن الذي انتهى الينا من كلام العرب هو الأقل، وأن كثيرا من الكلام ذهب بذهاب أهله، ولو جاءنا جميع ما قالوه لجاءنا شعر كثير وكلام كثير
<br/>وللعرب أقاويل كثيرة وتعابير جمة بعضها ليس بغريب اللفظ ولكن الوقوف على كنهه معتاص وقد بينا ذلك فى مراتب لغة العرب، وليس أدل على اتساع اللغة العربية
استقصاء أبنية الكلام وحصر تراكيب اللغة وهو ما توصل اليه الخليل بن أحمد، فقد ذكر فى {{خطأ | كتات | كتاب}} العين{{حا|المزهر للسيوطي}} أن عدة أبنية كلام العرب المستعمل منه والمهمل على مراتبها الأربع من الثنائى والثلاثى والرباعي والحماسى من غير تكرار اثنا عشر ألف ألف وثلاثمئة ألف وألفان وتسعمئة واثنا عشر (١٢٣٠٢٩١٢) وقال بهاء الدين العاملى صاحب الكشكول:
<br/>اذا قيل كم يتحصل من تركيب حروف المعجم كلمة ثنائية سواء كانت مبدلة أو مستعملة فاضرب
–––––––––––––––––––––
{{حا|المزهر للسيوطي}}
<section end="2" /><noinclude>{{سطر|}}{{حواشي}}</noinclude>
t9onjlindmnrja91cc1w554zmfkqm0b
617410
617409
2026-08-13T22:18:19Z
JazarF
71952
617410
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Origamos" />{{وسط|– ٩٥ –}}</noinclude><section begin="1" />{{ع3|الأمثال}}
ومن مفاخر العربية الأمثال وهى حكمة العرب في الجاهلية والإسلام وبها كانت تعارض كلامها فتبلغ به ما حاولت من حاجاتها في المنطلق بكناية غير تصريح، قال ابراهيم النظام يجتمع في المثل أربعة لا تجتمع في غيره من الكلام ايجاز اللفظ واصابة المعنى وحسن التشبيه وجودة الكناية، فهو نهاية البلاغة، وقال ابن المقفع اذا جعل الكلام مثلاً كان أوضح للمنطق وائق للسمع وأوسع لشعوب الحديث.
<section end="1" /><section begin="2" />{{ع2|١٩– باب في القول في اتساع اللغة العربية}}
أما القول في اتساع اللغة العربية فهو شائع مشهور محقق بالميان، فلسان العرب أوسع الأنسنة مذهباً، وأكثرها ألفاظا، قال أحمد بن فارس: قال بعض الفقهاء كلام العرب لا يحيط به الا نبيٌ، وهذا كلام حرى أن يكون صحيحاً وما بلغنا أن أحداً ممن مضى أوعى حفظ اللغة كلها، والمراد من هذا القول بيان عظمها وأن وَعْيَها معجزة لاثانى الا من نبي، وقال ذهب علماؤنا أو أكثرهم إلى أن الذي انتهى الينا من كلام العرب هو الأقل، وأن كثيرا من الكلام ذهب بذهاب أهله، ولو جاءنا جميع ما قالوه لجاءنا شعر كثير وكلام كثير
<br/>وللعرب أقاويل كثيرة وتعابير جمة بعضها ليس بغريب اللفظ ولكن الوقوف على كنهه معتاص وقد بينا ذلك فى مراتب لغة العرب، وليس أدل على اتساع اللغة العربية
استقصاء أبنية الكلام وحصر تراكيب اللغة وهو ما توصل اليه الخليل بن أحمد، فقد ذكر فى {{خطأ | كتات| كتاب}} العين{{حا|المزهر للسيوطي}} أن عدة أبنية كلام العرب المستعمل منه والمهمل على مراتبها الأربع من الثنائى والثلاثى والرباعي والحماسى من غير تكرار اثنا عشر ألف ألف وثلاثمئة ألف وألفان وتسعمئة واثنا عشر (١٢٣٠٢٩١٢) وقال بهاء الدين العاملى صاحب الكشكول:
<br/>اذا قيل كم يتحصل من تركيب حروف المعجم كلمة ثنائية سواء كانت مبدلة أو مستعملة فاضرب
–––––––––––––––––––––
{{حا|المزهر للسيوطي}}
<section end="2" /><noinclude>{{سطر|}}{{حواشي}}</noinclude>
czi0iwfgnhq35hcrjw4bmrncpv3zwjc
617411
617410
2026-08-13T22:18:45Z
JazarF
71952
617411
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Origamos" />{{وسط|– ٩٥ –}}</noinclude><section begin="1" />{{ع3|الأمثال}}
ومن مفاخر العربية الأمثال وهى حكمة العرب في الجاهلية والإسلام وبها كانت تعارض كلامها فتبلغ به ما حاولت من حاجاتها في المنطلق بكناية غير تصريح، قال ابراهيم النظام يجتمع في المثل أربعة لا تجتمع في غيره من الكلام ايجاز اللفظ واصابة المعنى وحسن التشبيه وجودة الكناية، فهو نهاية البلاغة، وقال ابن المقفع اذا جعل الكلام مثلاً كان أوضح للمنطق وائق للسمع وأوسع لشعوب الحديث.
<section end="1" /><section begin="2" />{{ع2|١٩– باب في القول في اتساع اللغة العربية}}
أما القول في اتساع اللغة العربية فهو شائع مشهور محقق بالميان، فلسان العرب أوسع الأنسنة مذهباً، وأكثرها ألفاظا، قال أحمد بن فارس: قال بعض الفقهاء كلام العرب لا يحيط به الا نبيٌ، وهذا كلام حرى أن يكون صحيحاً وما بلغنا أن أحداً ممن مضى أوعى حفظ اللغة كلها، والمراد من هذا القول بيان عظمها وأن وَعْيَها معجزة لاثانى الا من نبي، وقال ذهب علماؤنا أو أكثرهم إلى أن الذي انتهى الينا من كلام العرب هو الأقل، وأن كثيرا من الكلام ذهب بذهاب أهله، ولو جاءنا جميع ما قالوه لجاءنا شعر كثير وكلام كثير
<br/>وللعرب أقاويل كثيرة وتعابير جمة بعضها ليس بغريب اللفظ ولكن الوقوف على كنهه معتاص وقد بينا ذلك فى مراتب لغة العرب، وليس أدل على اتساع اللغة العربية
استقصاء أبنية الكلام وحصر تراكيب اللغة وهو ما توصل اليه الخليل بن أحمد، فقد ذكر فى {{خطأ | كتات| كتاب}} العين{{حا|المزهر للسيوطي}} أن عدة أبنية كلام العرب المستعمل منه والمهمل على مراتبها الأربع من الثنائى والثلاثى والرباعي والحماسى من غير تكرار اثنا عشر ألف ألف وثلاثمئة ألف وألفان وتسعمئة واثنا عشر (١٢٣٠٢٩١٢) وقال بهاء الدين العاملى صاحب الكشكول:
<br/>اذا قيل كم يتحصل من تركيب حروف المعجم كلمة ثنائية سواء كانت مبدلة أو مستعملة فاضرب<section end="2" /><noinclude>{{سطر|}}{{حواشي}}</noinclude>
inxw0s4bjtf3da4jxvhbl3pwldsr0f6
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/95
104
217305
617389
616381
2026-08-13T19:46:46Z
Nehaoua
7481
/* تم التّحقّق منها */
617389
proofread-page
text/x-wiki
<noinclude><pagequality level="4" user="Nehaoua" />{{وسط|– ٩١ –}}</noinclude><section begin="1" />و١٨٧٠م وهو آخر ما وضع من كتب اللغة التى يعول عليها ويركن الى تحقيقها.
{{ع2|١٨– باب في القول في فضل اللغة العربية واتساعها}}
لغة العرب من أفضل اللغات وأعظمها اتساعاً، أما فضلها فلما اختصت به من الاستمارة والتمثيل والقلب والابدال والتقديم والتأخير، والبسط بالزيادة في عدد حروف الاسم والفعل والقبض محاذاة للبسط وهو النقصان في عدد الحروف واتساعها في المجاز والادغام والتأليف (تأليف الحروف) واختلاس الحركات في الكلام وتخفيف الكلمة بالحذف، والاعراب{{حا|الاعراب مصدر أعربت عن الشيء اذا أوضحت عنه وفلان عرب عما في نفسه أي مبين له وموضح عنه ومنه عربت الفرس تعريباً اذا برغته، واصل هذا كله قولهم العرب وذلك ما يعزى إليه من الفصاحة والاعراب والبيان، ومنه قولهم في الحديث «الثيب تعرب عن نفسها» والمعرب صاحب الخيل العراب، ومنه عندى عروبة، والعروبة الجمعة، وذلك ان يوم الجمعة أظهر أمراً من بقية أيام الاسبوع وقولهم عريت معدته أى فسدت كانها استحالت من حال إلى حال كاستحالة الاعراب من صورة الى صورة وبالاعراب يعرف الخبر الذي هو أصل الكلام واولاء ما ميز فاعل من مفعول ولا مضاف من منموت ولا تعجب من استفهاء ولا نعت من تأكيد}} الذي هو الفارق بين المعاني المتكافئة في اللفظ والمميز لها، واختصاصها بحروف يصعب النطق بها على غير العرب من الامم، وتصريف الكلام، وستها في مخالفة ظاهر اللفظ معناه، والحذف والاختصار والزيادة فى الأسماء أو الأفعال أو الحروف لأغراض شتى، والتكرير والاعادة لارادة الابلاغ فى التنبيه والتحذير والتوهم والايام، والمخاطبة بلفظ الجمع أو بالمفرد والمراد غير ذلك والفرق بين الضدين بحرف أو حركة، والاضمار للأسماء أو الأفعال، والتعويض في الكلمات وقلبهم الحروف عن جهاتها نيكون الثانى أخف من الأول، نحو ميعاد فلم يقولوا مو عاد، والاعتراض والاشارة والابناء دون التصريح، والكف عن ذكر الخبر اكتفاء بما يدل عليه الكلام، والمحاذاة والاقتصار في الكلام على ذكر بعض الشيء، والمراد كله، والأمثلة والموازين أختير منها ما فيه طيب اللفظ وأهمل منها ما يجفوا اللسان عن النطق به فجاء الكلام بهذه المحسنات في هذه اللغة غاية في الرونق والعذوبة، فصيحاً
<section end="1" /><noinclude>{{سطر|}}{{حواشي}}</noinclude>
il2m8mec0lny1tpjhtql1tm6noa87d7
617393
617389
2026-08-13T19:52:01Z
Nehaoua
7481
تنسيق ويكي
617393
proofread-page
text/x-wiki
<noinclude><pagequality level="4" user="Nehaoua" />{{وسط|– ٩١ –}}</noinclude><section begin="1" />و١٨٧٠م وهو آخر ما وضع من كتب اللغة التى يعول عليها ويركن الى تحقيقها.
<section end="1" /><section begin="2" />{{ع2|١٨– باب في القول في فضل اللغة العربية واتساعها}}
لغة العرب من أفضل اللغات وأعظمها اتساعاً، أما فضلها فلما اختصت به من الاستمارة والتمثيل والقلب والابدال والتقديم والتأخير، والبسط بالزيادة في عدد حروف الاسم والفعل والقبض محاذاة للبسط وهو النقصان في عدد الحروف واتساعها في المجاز والادغام والتأليف (تأليف الحروف) واختلاس الحركات في الكلام وتخفيف الكلمة بالحذف، والاعراب{{حا|الاعراب مصدر أعربت عن الشيء اذا أوضحت عنه وفلان عرب عما في نفسه أي مبين له وموضح عنه ومنه عربت الفرس تعريباً اذا برغته، واصل هذا كله قولهم العرب وذلك ما يعزى إليه من الفصاحة والاعراب والبيان، ومنه قولهم في الحديث «الثيب تعرب عن نفسها» والمعرب صاحب الخيل العراب، ومنه عندى عروبة، والعروبة الجمعة، وذلك ان يوم الجمعة أظهر أمراً من بقية أيام الاسبوع وقولهم عريت معدته أى فسدت كانها استحالت من حال إلى حال كاستحالة الاعراب من صورة الى صورة وبالاعراب يعرف الخبر الذي هو أصل الكلام واولاء ما ميز فاعل من مفعول ولا مضاف من منموت ولا تعجب من استفهاء ولا نعت من تأكيد}} الذي هو الفارق بين المعاني المتكافئة في اللفظ والمميز لها، واختصاصها بحروف يصعب النطق بها على غير العرب من الامم، وتصريف الكلام، وستها في مخالفة ظاهر اللفظ معناه، والحذف والاختصار والزيادة فى الأسماء أو الأفعال أو الحروف لأغراض شتى، والتكرير والاعادة لارادة الابلاغ فى التنبيه والتحذير والتوهم والايام، والمخاطبة بلفظ الجمع أو بالمفرد والمراد غير ذلك والفرق بين الضدين بحرف أو حركة، والاضمار للأسماء أو الأفعال، والتعويض في الكلمات وقلبهم الحروف عن جهاتها نيكون الثانى أخف من الأول، نحو ميعاد فلم يقولوا مو عاد، والاعتراض والاشارة والابناء دون التصريح، والكف عن ذكر الخبر اكتفاء بما يدل عليه الكلام، والمحاذاة والاقتصار في الكلام على ذكر بعض الشيء، والمراد كله، والأمثلة والموازين أختير منها ما فيه طيب اللفظ وأهمل منها ما يجفوا اللسان عن النطق به فجاء الكلام بهذه المحسنات في هذه اللغة غاية في الرونق والعذوبة، فصيحاً
<section end="2" /><noinclude>{{سطر|}}{{حواشي}}</noinclude>
3vc7bxx3o79xqyk12ssufgsdjv9wl59
617412
617393
2026-08-13T22:26:02Z
JazarF
71952
617412
proofread-page
text/x-wiki
<noinclude><pagequality level="4" user="Nehaoua" />{{وسط|– ٩١ –}}</noinclude><section begin="1" />و١٨٧٠م وهو آخر ما وضع من كتب اللغة التى يعول عليها ويركن الى تحقيقها.
<section end="1" /><section begin="2" />{{ع2|١٨– باب في القول في فضل اللغة العربية واتساعها}}
لغة العرب من أفضل اللغات وأعظمها اتساعاً، أما فضلها فلما اختصت به من الاستعارة والتمثيل والقلب والابدال والتقديم والتأخير، والبسط بالزيادة في عدد حروف الاسم والفعل والقبض محاذاة للبسط وهو النقصان في عدد الحروف واتساعها في المجاز والادغام والتأليف (تأليف الحروف) واختلاس الحركات في الكلام وتخفيف الكلمة بالحذف، والاعراب{{حا|الاعراب مصدر أعربت عن الشيء اذا أوضحت عنه وفلان معرب عما في نفسه أي مبين له وموضح عنه ومنه عربت الفرس تعريباً اذا بزغته، واصل هذا كله قولهم العرب وذلك لما يعزى اليه من الفصاحة والاعراب والبيان؛ ومنه قولهم في الحديث «الثيب تعرب عن نفسها» والمعرب صاحب الخيل العراب، ومنه عندى عروبة، والعروبة الجمعة، وذلك ان يوم الجمعة أظهر أمراً من بقية أيام الاسبوع وقولهم عربت معدته أي فسدت كأنها استحالت من حال الى حال كاستحالة الاعراب من صورة الى صورة وبالاعراب يعرف الخبر الذي هو أصل الكلام ولولاه ما ميز فاعل من مفعول ولا مضاف من منعوت ولا تعجب من استفهام ولا نعت من تأكيد}} الذي هو الفارق بين المعاني المتكافئة في اللفظ والمميز لها، واختصاصها بحروف يصعب النطق بها على غير العرب من الامم، وتصريف الكلام، وسننها في مخالفة ظاهر اللفظ معناه، والحذف والاختصار والزيادة في الأسماء أو الأفعال أو الحروف لأغراض شتى، والتكرير والاعادة لارادة الابلاغ في التنبيه والتحذير والتوهم والايهام، والمخاطبة بلفظ الجمع أو بالمفرد والمراد غير ذلك والفرق بين الضدين بحرف أو حركة، والاضمار للأسماء أو الأفعال، والتعويض في الكلمات وقلبهم الحروف عن جهاتها ليكون الثاني أخف من الأول، نحو ميعاد فلم يقولوا موعاد، والاعتراض والاشارة والايماء دون التصريح، والكف عن ذكر الخبر اكتفاء بما يدل عليه الكلام، والمحاذاة والاقتصار في الكلام على ذكر بعض الشيء، والمراد كله، والأمثلة والموازين أختير منها ما فيه طيب اللفظ وأهمل منها ما يجفوا اللسان عن النطق به
فجاء الكلام بهذه المحسنات في هذه اللغة غاية في الرونق والعذوبة، فصيحاً<section end="2" /><noinclude>{{سطر|}}{{حواشي}}</noinclude>
ri0jg53psgy2wamgt0ou9b8q3iqnv8t
صفحة:التهذيب في أصول التعريب (auc aco001146).pdf/85
104
217351
617388
617108
2026-08-13T19:41:24Z
Nehaoua
7481
/* صُححّت */
617388
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="Nehaoua" />{{وسط|-٨١ -}}</noinclude>القسم الغربي من اللغات السامية
# جنوبي
## عربي
### شمالي
###* لحياني
###* ثمودي
###* صفوي
###* عربي نبطي
###* عربي فصيح
### جنوبي
#### قديم
####* مهري
####* شحري
####* سقطري
#### جديد
####* معيني
####* سبئي
####* قتباني
####* حضرمي
## حبشي
### قديم
### جديد
#### جنوبي
####* أمحري
#### شمالي
####* تكري
####* تكرينيا
# شمالي
## كنعاني
### فينيقي
### عبري
### مؤابي
## آرامي
### غربي
###* مختص بالتوراة
###* تدمري
###* نبطي
###* فلسطيني يهودي
###* نصراني سامري
### شرقي
#### يهودي بابلي
#### ماني
#### سرياني
####* يعقوبي
####* نسطوري<noinclude></noinclude>
mblyvynelvlnkragw67sgbla64aq53i
نقاش المستخدم:Renamed user 884fe7926b62f9d3ae6cf3bcc87670a6
3
260484
617404
524970
2026-08-13T20:37:49Z
Deepfriedokra
51287
نقل Deepfriedokra صفحة [[نقاش المستخدم:Trong Dang]] إلى [[نقاش المستخدم:Renamed user 884fe7926b62f9d3ae6cf3bcc87670a6]] دون ترك تحويلة: نُقِلت الصفحة آليا عند إعادة تسمية المستخدم «[[Special:CentralAuth/Trong Dang|Trong Dang]]» إلى «[[Special:CentralAuth/Renamed user 884fe7926b62f9d3ae6cf3bcc87670a6|Renamed user 884fe7926b62f9d3ae6cf3bcc87670a6]]».
524970
wikitext
text/x-wiki
{| style="margin: 0 2em 0 2em; background-color:#f7f8ff; padding:5px; border:1px solid #8888aa; clear: both;"
|
<center><big>'''مرحبا بك في [[ويكي مصدر:رئيسي|ويكي مصدر]]، {{BASEPAGENAME}} !'''</big></center>
|-align="center"
| <div style="padding:5px;font-size:small"><center style="word-spacing:1ex"><small>[[ويكي مصدر:سفارة|Welcome!]] [[ويكي مصدر:سفارة|Bienvenue!]] [[ويكي مصدر:سفارة|Willkommen!]] [[ويكي مصدر:سفارة|Benvenuti]] [[ويكي مصدر:سفارة|¡Bienvenido!]] [[ويكي مصدر:سفارة|ようこそ]] [[ويكي مصدر:سفارة|Dobrodosli]] [[ويكي مصدر:سفارة|환영합니다]] [[ويكي مصدر:سفارة|Добро пожаловать]] [[ويكي مصدر:سفارة|Bem-vindo!]] [[ويكي مصدر:سفارة|欢迎]] [[ويكي مصدر:سفارة|Bonvenon]] [[ويكي مصدر:سفارة|Welkom]]</small></center></div>
[[ملف:Wikisource-logo.svg|يمين|50بك]]أهلا بك في [[ويكي مصدر:عن|ويكي مصدر]]، المكتبة الحرة! من السهل جدًا [[مساعدة:إضافة نص|إضافة النصوص]] الحرة هنا.
بإمكانك تصفح الموقع عن طريق [[ويكي مصدر:فهرس|الفهرس]] أو الاطلاع على [[ويكي مصدر:سياسات وإرشادات|التعليمات]] وتعلم [[ويكي مصدر:دليل التنسيق|التنسيق]].
نتمنى لك وقتا سعيدًا هنا. إن احتجت مساعدة يرجى الاطلاع على [[مساعدة:مقدمة|صفحات المساعدة]] أو [[ويكي مصدر:طلب مساعدة|السؤال هنا]] أو في صفحة نقاشي. شكرا لك.
|} --[[مستخدم:Meno25|Meno25]] ([[نقاش المستخدم:Meno25|نقاش]] • [[خاص:مساهمات/Meno25|مساهمات]]) 07:33، 22 مارس 2025 (ت ع م)
bwfeiepqnq51mn2udofup7lb3x6fijr
ويكي مصدر:صفحات رئيسية غير مصنفة
4
261799
617394
617071
2026-08-13T19:55:31Z
ParBot
69590
بوت: تحديث قائمة الصفحات الرئيسية غير المصنفة
617394
wikitext
text/x-wiki
<noinclude>
{{صندوق|رمادي|
قام {{مس|ParBot}} بتحديث هذه القائمة في 2026-08-13، 19:55 (UTC)}}
{{Div col|colwidth=20em}}
</noinclude>
# [[أجزاء روح المعاني]]
# [[أجزاء مجلة المنار]]
# [[ألف ليلة وليلة - السندباد البحري]]
# [[أنوار البدرين ومطلع النيرين في تراجم علماء القطيف والأحساء والبحرين]]
# [[إتفاقية قطاع غزة ومنطقة أريحا - ملحق 1 (بروتوكول بشأن إنسحاب القوات العسكرية الإسرائيلية والترتيبات الأمنية)]]
# [[اتفاق المباني وافتراق المعاني للدقيقي]]
# [[الأرملة المرضعة - معروف الرصافي]]
# [[البيان الختامي للمؤتمر الدولي السادس لدعم الانتفاضة الفلسطينية بطهران]]
# [[البيان الشيوعي]]
# [[الحاوي في الطب - الجزء الأول]]
# [[الرسالة الثانية إلى تيموثاوس]]
# [[الصوارم المهرقة في جواب الصواعق المحرقة]]
# [[العقد الاجتماعي للفيدرالية الديمقراطية لروج آفا – شمال سوريا]]
# [[القاموس المحيط - المطبعة الحسينية (أجزاء)]]
# [[القرار الملكي لمنح طلعت حرب رتبة الباشوية]]
# [[الكافية الشافية (ابن مالك)]]
# [[المدخل إلى علم العدد]]
# [[المقتبس من أنباء الأندلس]]
# [[المنتخب في جمع المراثي والخطب]]
# [[الميثاق القومي الفلسطيني]]
# [[النور الأسنى فى شرح أسماء الله الحسنى]]
# [[بحر بلا ساحل : ابن عربي والكتاب والشرع]]
# [[بروتفانجليون يعقوب]]
# [[بشارة المصطفى لشيعة المرتضى]]
# [[تاج العروس - المطبعة الخيرية]]
# [[تحفة الحكام في نكت العقود والأحكام]]
# [[تنبئة الغبي بتبرئة ابن عربي للإمام الحافظ جلال الدين السيوط]]
# [[تيسير الكريم الرحمن في تفسير كلام المنان تفسير السعدي]]
# [[حاشية ابن القيم]]
# [[دستور ليبيا بعد تعديلات 1963]]
# [[رد أهل الشام على رسالة هولاكو]]
# [[رسالة إلى أهل روما]]
# [[سلك الدرر في أعيان القرن الثاني عشر]]
# [[شرائع الإسلام]]
# [[شعراء عين افقه]]
# [[طفولة ديناصور]]
# [[عدة الصابرين]]
# [[عمرو بن العاص]]
# [[قالت ظلوم سمية الظلم:]]
# [[قانون الأسلحة والذخائر (eg)]]
# [[قانون التصالح]]
# [[قانون الدفاع الاردني رقم 13 لعام 1992]]
# [[قانون الشركات S4]]
# [[قانون الغش والتدليس (eg)]]
# [[قانون رقم 121 لسنة 1983 بإصدار قانون في شأن المرشدين السياحيين ونقابتهم]]
# [[قرار بقانون رقم (10) لسنة 2018م بشأن الجرائم الإلكترونية (السلطة الفلسطينية)]]
# [[قصائد المرداسي بالملك عبدالعزيز وبالملك سعود وبالأمير عبدالعزيز بن مساعد]]
# [[قصيده في مدح الرسول صلى الله عليه وسلم للشاعر النابغه الجعدي رضي الله عنه]]
# [[كتاب إيضاح الدليل]]
# [[كتاب اعتقاد أهل السنة]]
# [[كتاب اعتقاد الإمام ابن حنبل]]
# [[كتاب افتراق الأمة]]
# [[كتاب الأربعين في دلائل التوحيد]]
# [[كتاب الإيمان لابن منده]]
# [[كتاب التحفة المدنية]]
# [[كتاب الجديد الدين الصف السادس]]
# [[كتاب الحوض والكوثر]]
# [[كتاب الذيل على الحوض والكوثر]]
# [[كتاب الوابل الصيب]]
# [[كتاب تبيين كذب المفتري]]
# [[كتاب تحفة الصديق]]
# [[كتاب تحفة المودود]]
# [[كتاب جلاء الأفهام]]
# [[كتاب روضة المحبين]]
# [[كتاب شرح قصيدة ابن القيم]]
# [[كتاب شرح قصيدة ابن القيم 2]]
# [[كتاب صيغ الحمد]]
# [[كتاب فتاوى إمام المفتين]]
# [[كتاب منتقي الفوائد في العلم الشرعي]]
# [[كتاب نقد المنقول]]
# [[لائحة الحج (عام 1944)]]
# [[لسان العرب - المطبعة الميرية]]
# [[محاضرة معمر القذافي في طلبة جامعة أوكسفورد البريطانية حول إفريقيا في القرن الحادي والعشرين]]
# [[محاضرة معمر القذافي في طلبة وأساتذة جامعة كامبريدج]]
# [[محمد]]
# [[مداس أبي القاسم الطنبوري]]
# [[مشروع معاهدة الوفد المصري 17 يوليو]]
# [[مصرع كليوباترا]]
# [[مع حمار الحكيم - لأحمد رضا حوحو]]
# [[معاني وغريب القرآن]]
# [[معجم العين]]
# [[مقدمة وصايا الملوك]]
# [[نزهة الأسماع في مسألة السماع]]
# [[نصوص قانون العقوبات (eg)]]
# [[وب:تام]]
# [[يا ابن الشريد وخير قيس كلها]]
# [[يا عين جودي بالدموع-ب-]]
# [[يا عين جودي بدمع منك مسكوب]]
# [[يا عين ما لك لا تبكين تسكابا؟]]
# [[يا عَينِ جودي بدَمْعٍ منكِ مِدرارِ]]
[[تصنيف:صيانة ويكي مصدر]]
ff7a7eedt901na2ufytch6rk9244fls
صفحة:الأدب الصغير لابن المقفع.pdf/32
104
303488
617413
607817
2026-08-13T22:34:37Z
JazarF
71952
617413
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="JazarF" />{{وسط|—١٠—}}
{{rule}}</noinclude>وأَمَّا ٱعْتِقَادُ الشَّيْءِ بَعْدَ ٱسْتِبَانَتِهِ، فَهُوَ مَا يُطْلَبُ مِنْ
إِحرَازِ الْفَضْلِ بَعْدَ مَعْرِفَتِهِ.
وأَمَّا الْحِفْظُ والتَّعَهُّدُ، فَهُوَ تَمَامُ الدَّرْكِ. لِأَنَّ الإِنْسانَ مُوَكَّلٌ بِهِ النِّسْيانُ وَالْغَفْلةُ. فَلَا بُدَّ لَهُ، إِذَا ٱجْتَبَى صَوَابَ قَوْلٍ أَوْ فِعْلٍ، مِنْ أَنْ يَحْفَظَهُ عَلَيْهِ ذِهْنُهُ لأَوَانِ حَاجَتِهِ.
وأَمَّا الْبَصَرُ بِالْمَوْضِعِ، فإِنما تَصِيرُ الْمنَافِعُ كلُّها
إِلى وَضْعِ الْأَشْيَاءِ مَوَاضِعَهَا. وَبِنَا إِلَى هَذا كُلِّهِ حَاجَة شَدِيدَةٌ.
فإِنَّا لَمْ نوضَعْ في الدُّنْيَا مَوْضِعَ غِنًى وَخَفْضٍ، وَلَكِنْ
بِمَوْضِعِ فَاقَةٍ وَكَدٍّ. وَلَسْنَا إِلى مَا يُمْسِكُ أَرْمَاقَنَا مِنَ
الْمَأْكَلِ وَالْمَشْرَبِ بِاحْوَجَ مِنَّا إِلى مَا يُثبِّتُ عُقُولَنَا مِنَ
الأَدَبِ الَّذِي بِهِ تَفَاوُتُ الْعُقُولِ. وَلَيْسَ غِذَاءُ الطعَامِ بِأَسْرَعَ<noinclude></noinclude>
1uh69aaetp1ldwht6aogwv15reupte4
617414
617413
2026-08-13T22:35:07Z
JazarF
71952
617414
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="JazarF" />{{وسط|—١٠—}}
{{rule}}</noinclude>وأَمَّا ٱعْتِقَادُ الشَّيْءِ بَعْدَ ٱسْتِبَانَتِهِ، فَهُوَ مَا يُطْلَبُ مِنْ إِحرَازِ الْفَضْلِ بَعْدَ مَعْرِفَتِهِ.
وأَمَّا الْحِفْظُ والتَّعَهُّدُ، فَهُوَ تَمَامُ الدَّرْكِ. لِأَنَّ الإِنْسانَ مُوَكَّلٌ بِهِ النِّسْيانُ وَالْغَفْلةُ. فَلَا بُدَّ لَهُ، إِذَا ٱجْتَبَى صَوَابَ قَوْلٍ أَوْ فِعْلٍ، مِنْ أَنْ يَحْفَظَهُ عَلَيْهِ ذِهْنُهُ لأَوَانِ حَاجَتِهِ.
وأَمَّا الْبَصَرُ بِالْمَوْضِعِ، فإِنما تَصِيرُ الْمنَافِعُ كلُّها إِلى وَضْعِ الْأَشْيَاءِ مَوَاضِعَهَا. وَبِنَا إِلَى هَذا كُلِّهِ حَاجَة شَدِيدَةٌ. فإِنَّا لَمْ نوضَعْ في الدُّنْيَا مَوْضِعَ غِنًى وَخَفْضٍ، وَلَكِنْ بِمَوْضِعِ فَاقَةٍ وَكَدٍّ. وَلَسْنَا إِلى مَا يُمْسِكُ أَرْمَاقَنَا مِنَ الْمَأْكَلِ وَالْمَشْرَبِ بِاحْوَجَ مِنَّا إِلى مَا يُثبِّتُ عُقُولَنَا مِنَ الأَدَبِ الَّذِي بِهِ تَفَاوُتُ الْعُقُولِ. وَلَيْسَ غِذَاءُ الطعَامِ بِأَسْرَعَ<noinclude></noinclude>
6f86mkppbiizwxpb7f41zsepbr2scoa
صفحة:الأدب الصغير لابن المقفع.pdf/100
104
303601
617415
608056
2026-08-13T22:38:07Z
JazarF
71952
617415
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="JazarF" />{{وسط|—٧٨—}}
{{rule}}</noinclude>وإِنْ مَشَى فى جَدَدٍ. لأَنَّ هذا الإِنْسَان موَكَّلٌ بهِ الْبَلاءُ، فَلَا يزَالُ في تَصَرُّفٍ وفي تَقَلبٍ لَا يَدُومُ لَهُ شَيْءٌ ولا يَثْبُتُ مَعَهُ، كَمَا لاَ يَدُومُ لِطَالِعِ النُّجومِ طُلُوعُهُ ولَا لآفِلِها افُولُهُ. ولَكِنَّهَا في تَقَلُّب وتَعَاقُب: فَلا يَزَالُ الطالِعُ يَكُونُ آفِلًا، والآفِلُ طَالِعًا.
{{rule|5em}}
{{وسط|تمَّ والحمد للّٰه وحده وصلى الله على سيدنا}}
{{وسط|محمد النبي وآله وصحبه وسلم}}
{{وسط|تسليما. حسبنا اللّٰه}}
{{وسط|ونعم الوكيل}}
{{وسط|م م}}
{{وسط|م}}<noinclude></noinclude>
2e7h3t4xg2j3kcwww6acizblkez6tfn
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/303
104
306393
617376
615314
2026-08-13T18:18:39Z
RASHEEDYE
15342
ضبط وتنسيق
617376
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude><nowiki/>
ولعل هذا المعيار هو ما يصنعه العروضيون من مقابلة أجزاء البيت وتفعيلاته بالحركات والسواكن مثل: (||o|o مقابل فعولن ).
<br/>١١ — الإفادة من المعيار السابق في معرفة ما أُشْكِلَ من الحروف{{حا|علم التعمية ٣١٦/٢.}} وذلك بعرضه على حروف التهجي: ا، ب، ت، ث ... حتى يمر الوزن الموافق للمراد فترسم تلك الكلمة به. وينبه ابن طباطبا هنا على أمر مهم وهو عدم صرف العناية والتدبير لبعض الحروف دون بعض؛ لأن ذلك يطيل العناء وينقض التدبير، فمعرفة حرف ما تؤدي إلى فتح غيره مما انغلق، وهو يستخدم مصطلحات طريفة مثل: ( فتح الحرف: استخراجه. وانغلق: استعصت معرفته أو استخراجه ).
<br/>١٢ — الإفادة من النظام النحوي للعربية{{حا|علم التعمية ٣١٦/٢.}}، إذ هو يقتضي تتابعات معينة لا يحيد عنها مثل:
<p>— ورود اسم موصول كـ (الذي) يقتضي صلة.
<p>— الحروف المختصة بالأفعال لا تليها الأسماء.
<p>— الحروف المختصة بالأسماء لا تليها الأفعال.
<p>— ظروف الأزمنة والأمكنة تقتضي الأسماء المضافة إليها.
<p>— معرفة مواضع كلٍّ من الاسم والفعل والحرف.
<p>وهنا ينبه ابن طباطبا على أن اضطراب المعنى واللفظ، ومخالفة الكلام السهل المعتاد يؤدي إلى عسر الاستخراج{{حا|علم التعمية ٣١٧/٢.}}.
<br/>١٣ — الإفادة مما « يُضْطَرُّ إليه الوزن من ترتيب الحروف مراتبها التي رسم بها »{{حا|علم التعمية ٣١٧/٢.}} وهو ما يسميه أئمة العربية للضرورات الشعرية. ويعرفون الضرورة بأنها اللجوء إلى الأخذ بوجه يمكن قبوله، ويعدُّون منها صرف ما لا ينصرف كقول الشاعر:
{{أبيات|أَعددتُ للحرب التي أَعْنَى بها \\ قوافياً لم أَعي باجتلابها}}
{{سطر|45%|align=right}}<noinclude>{{حواشي}}
{{يسار|٣٠١}}</noinclude>
ihhjm3c07dymu4t21sh6bkhiczctnxo
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/305
104
306397
617377
615319
2026-08-13T18:19:53Z
RASHEEDYE
15342
ضبط وتنسيق
617377
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude>{{ع3|٣ — من طرق التعمية بالتبديل البسيط}}
<nowiki/>
يشير ابن طباطبا إلى بعض طرق التعمية بعد أن أثبت أسماء طيور بعدد حروف اللغة، والحق أن كل ما أشار إليه من طرق لا يخرج عن نوع واحد، هو التبديل البسيط ، حيث تستبدل أسماء أو رموز معينة بالحروف ، بيد أننا يمكن أن نصنّف ما ذكره في زمر ثلاث{{حا|علم التعمية ٣١٨/٢ ــ ٣١٩.}}:
<p>آ — استبدال أسماء أجناس معينة بالحروف: وقد ذكر من هذه الأجناس الطيور، والسباع، والوحوش، والناس، والطيب، والفاكهة، والرياحين، والآلات، والجواهر ...
<p>ب — نظم الخرز: وهي التي ذكرها ابن دنينير فيما بعد ، وقد أشرنا إلى ذلك لدى تحليلنا كتابه{{حا|علم التعمية ١٨٦/٢ ــ ١٨٧.}}، لكن ذكر ابن طباطبا لها هنا يدلُّ على أنها كانت شائعة في المئة الرابعة للهجرة، أي قبل ابن دنينير بقرنين من الزمن .
<p>ج — تصوير علامات مختلفة: أي اختراع أشكال ورموز تستبدل بالحروف، كتلك التي رأيناها في مثالي ابن الدريهم المعمَّيَيْن{{حا|علم التعمية ٣٥٣/١، ٣٦٠.}}.
ويلاحظ أن ابن طباطبا لم يتطرق إلى أيٍّ من الطرق الكثيرة التي ذكرها الكندي — على تأخره عنه — وإنما اقتصر على هذا التبديل البسيط بأسهل أشكاله، مع وجود الفاصل.
{{ع3|٤ — مثال على تعمية الشعر}}
المثال الذي يذكره ابن طباطبا يتناول تعمية بيت امرئ القيس المشهور:
{{أبيات|قفا نبكِ من ذكـرى حبيبٍ ومنزلِ \\ بسِقْطِ اللِّوى بين الدَّخُولِ فحَوْمَلِ}}
{{سطر|45%|align=right}}<noinclude>{{حواشي}}
{{يسار|٣٠٣}}</noinclude>
gcygh5qd6zst5x2v8k4kwl3u3h97ajb
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/306
104
306399
617378
615323
2026-08-13T18:25:34Z
RASHEEDYE
15342
617378
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude>باستخدام طريقة التبديل البسيط، المشار إليها في الصفحة السابقة (الزمرة آ) وقد تمّ تبديل حروف البيت وفق الجدول التالي:
<center>
{| class="wikitable" style="text-align:center;"
|-
! الحرف !! رمزه !! الحرف !! رمزه
|-
| ق || طاووس || ي || رخمة
|-
| ف || تدرج || ح || غراب
|-
| ا || باز || و || غداف
|-
| ن || شاهين || ز || دراج
|-
| ب || يؤيؤ || ل || طيهوج
|-
| ك || باشق || س || قُبَّجة
|-
| م || عقاب || ط || ورشان
|-
| ذ || صقر || د || حمامة
|-
| ر || نسر || خ || بطة
|}
</center>
وتجدر الإشارة إلى أن ترتيب الطيور قد اضطرب في الأصل المخطوط للنص المعمى، وحقه أن يكون على النحو التالي:
<center>
{| style="text-align:center; line-height:2.5;"
| طاووس || تدرج || باز || شاهين || باشق || يؤيؤ || عقاب || شاهين
|-
| صقر || يؤيؤ || نسر || رخمة || غراب || باشق || رخمة || باشق
|-
| غداف || عقاب || شاهين || دراج || طيهوج || باشق || قُبَّجة || طاووس
|-
| ورشان || باز || طيهوج || طيهوج || غداف || رخمة || باشق || رخمة
|-
| شاهين || باز || طيهوج || حمامة || بطة || غُداف || طيهوج || تدرج
|-
| غراب || غداف || عقاب || طيهوج . || || || ||
|}
</center>
ويلاحظ أن عدد هذه الأسماء يطابق عدد حروف البيت وهو أربعة وأربعون (٤٤).<noinclude>{{يمين|٣٠٤}}</noinclude>
onxum2u7xmdy75y9iz318dbbjlgmgkn
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/330
104
306414
617379
615419
2026-08-13T18:29:49Z
RASHEEDYE
15342
ضبط وتنسيق
617379
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude> ٤ — التنبيه على الحروف التي تقرأ ولا تكتب ( الألف في نحو إبراهيم وإسحق ).
<br/>٥ — معرفة الأسماء الستة وما يطرأ على أواخرها من تغير تبعاً لإعرابها.
<br/> ٦ — مراقبة الواو والياء في كل أحوالهما ( ساكنين، ومتحركين، ومشددين، وأطراف كلمات، وحروف روي ).
<br/> ٧ — مراقبة الهمزات.
<br/> ٨ — مراقبة سوابق الكلمات ( من حروف عطف وجر ).
<br/> ٩ — مراقبة التاء والهاء ( في أواخر الكلمات نحو : قامت ورحمة وفعلته ).
<br/> ١٠ — إنعام النظر في الحروف المكررة والمشددة ( من نحو: قلل وسَيِّد .
<br/> ١١ — حدس الكلمات المحتملة واعتتمادها في كشف غيرها.
<br/> ١٢ — العناية بأبنية الأسماء المعرفة بأل وأوزانها المختلفة.
<br/> ١٣ — حالات خاصة ( في الكلمات ).
<nowiki/>
ولا حاجة بنا إلى الوقوف عند كُلّ من هذه الأمور فقد تقدم ذكر معظمها في كتاب ابن دنينير، وهي بينة واضحة في الرسالة المحققة بما أدخل عليها من تعليقات وتوضيحات. بيد أننا سنقف عند الأمر الثاني عشر لأهميته من ناحية، ولما فيه من زيادات على ما جاء به ابن دنينير من ناحية أخرى.
<br />
* '''العناية بأبنية الأسماء المعرفة بأل وأوزانها المختلفة:'''
ذكر المؤلف هنا طائفة من الكلمات المعرفة بـ«أل» تكرر فيها الألف أو اللام لمعمى منها {{خطأ| السطر الثاني ممسوح وغير واضح | الصواب | تعليق (اختياري)}}
أجل ذلك أدرجنا فيما يلي مفهومها برؤوسها على نحو ما فعلنا في تحليلنا لكتاب ابن دنينير ، حيث رمزنا للحروف غير المستخرجة بالرموز W Z Y X{{حا|انظر ما تقدم في تحليل كتاب ابن دنينير ص ٢١٦ — ٢١٧.}}:
<center>
{| style="line-height:1.8;"
| ال ل X || مثل الله، اللب، اللج، اللف، اللذ ..
|-
| ال ل X ل' || مثل الليل، ..
|-
| ال X ا || مثل الما(ء)، الدا(ء)، الها(ء)، ..
|-
| ال Y I X || مثل الدار، النار، الساق، العار، الباه، ..
|-
| ال X I X || مثل الباب، الواو، الشاش، إلمام، إلحاح، إلهاء، ألباب، ..
|}
</center>
{{سطر|45%|align=right}}<noinclude>{{حواشي}}
{{يمين|٣٢٨}}</noinclude>
nql4emu6bncm18z9rezv914ri5nb4at
قالب:رسالة استدعاء من لوا فقط
10
306426
617370
615228
2026-08-13T16:27:08Z
حبيشان
52457
تصنيف
617370
wikitext
text/x-wiki
{{صندوق رسالة أخرى|النص=هذه الوحدة تستدعى من لوا فقط وغير قابلة للاستدعاء في القوالب والصفحات|النوع=محتوى|الصورة= [[ملف:Lua-Logo-small.svg]]}}<includeonly>{{ملعب آخر||
[[تصنيف:وحدات لا تقبل الاستدعاء من القوالب]]
}}</includeonly><noinclude>
{{توثيق}}
[[تصنيف:قوالب نطاق وحدة]]
</noinclude>
tkj33dzqd0t82jylqdxeboa39cu91wr
صفحة:United Nations - Convention on the Elimination of All Forms of Discrimination against Women (1979).pdf/125
104
306519
617381
615865
2026-08-13T19:08:52Z
~2026-43953-13
72772
617381
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="~2026-31726-57" /></noinclude>أو تغيير جنسية الزوج أثناء الزواج، أن تتغير تلقائيا جنسية الزوجة، أو أن تصبح بلا جنسية أو أن تعرض عليها جنسية الزوج.
٢- تمنح الدول الأطراف المرأة حقا مساويا لحق الرجل فيما يتعلق بجنسية أطفالها.
{{ع2|<u>الجزء الثالث</u>}}
{{ع3|<u>المادة ١٠</u>}}
تتخذ الدول الأطراف جميع التدابير المناسبة للقضاء على التمييز ضد المرأة لكي تكفل للمرأة حقوقا مساوية لحقوق الرجل في ميدان التعليم، وبوجه خاص لكي تكفل، على أساس تساوى الرجل والمرأة:
(أ) نفس الظروف للتوجيه الوظيفي والمهني، والاستفادة من فرص الدراسة والحصول على الدرجات العلمية في المؤسسات التعليمية بجميع فئاتها في المناطق الريفية والحضرية على السواء؛ وتكون هذه المساواة مكفولة في المرحلة السابقة للالتحاق بالمدرسة وفي التعليم العام والتقني والمهني والتعليم التقني العالي، وكذلك في جميع أنواع التدريب المهني؛
(ب) توفّر نفس المناهج الدراسية، ونفس الامتحانات وهيئات تدريسية تتمتع بمؤهلات من نفس المستوى ومبان ومعدات مدرسية من نفس النوعية؛
(ج) القضاء على أى مفهوم نمطي عن دور الرجل ودور المرأة على جميع مستويات التعليم وفي جميع أشكاله عن طريق تشجيع التعليم المختلط وغيره من أنواع التعليم التي تساعد في تحقيق هذا الهدف، ولا سيما عن طريق تنقيح كتب الدراسة والبرامج المدرسية وتكييف أساليب التعليم؛
(د) نفس الفرص للاستفادة من المنح التعليمية وغيرها من المنح الدراسية؛
(هـ) نفس الفرص للالتحاق ببرامج التعليم المتواصل، بما في ذلك برامج تعليم الكبار ومحو الأمية الوظيفية، ولا سيما التي تهدف الى أن تضيق، في أقرب وقت ممكن، أى فجوة في التعليم قائمة بين الرجل والمرأة؛
{{أسفل}}<noinclude>{{وسط|-٦-}}</noinclude>
fwq79hlu8hqxgb3snb07s59grgmlaqd
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/344
104
306553
617380
615900
2026-08-13T18:36:11Z
RASHEEDYE
15342
ضبط وتنسيق
617380
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude><nowiki/>
/ وإذا رأيتَ ألفاً بعدها لامانِ وحرفٌ ولامٌ أخرى فهي : الليلُ، فاحْدِسْ عليها، ثم {{حاشية من اليسار|'''[ ١٢٤/ب ]'''}} اقطعْ متحقِّقاً ، فَقَلَّما كانت غيرَ ذلك بل لا أَعْلَمُهُ، فتخرُجُ لكَ ، إذا خرجَ الليلُ، الياءُ مع الألفِ واللامِ ، فإن رأيتَ بعد هذا حرفينِ{{حا|المقصود بهذا الكلمات الثنائية ، لأنها أول ما يستخرج عادة، وقد ورد النص على هذا في غير ما موضع، انظر المقالة الأولى ١١١/أ.}} — وقد عرفتَ الياءَ— فاعْرِضْ على نفسِك حروفَ المعجمِ، وأَلْصِقْ بها منها حرفاً حرفاً إلى آخِرِها ، فإنها تخرُجُ، وإذا خرجَ بعضُ البيتِ سَهُلَ باقيِهِ.
ومما يجبُ مراقبتُهُ والعنايةُ به في استخراجِ المُعَمَّى ، إذا عرفتَ اللامَ والألفَ وصحَّتا في نفسِكَ ، أن ترقبَ الأشياءَ التي أنا ذاكِرُها ، وهي :
أنَّك ربَّما وجدتَّ ألفاً فاحْدُسْ أنَّها : المساءُ ، أو الداكُ ، أو الشاءُ ، أو الماءُ{{حا|كذا وردت هذه الكلمات في الأصل على طريقة المتقدمين الذين لا يرسمون الهمزة ، لأنها تسهل فتحذف تخفيفاً ، وهذا يوافق منهج أهل التعمية الذين يعنون بالرسم ، وقد تقدمت الإشارة إلى هذا غير مرة ، وانظر أحكام تسهيل الهمزة في المطالع النصرية ص ١١٢ — ١١٣ .}}. وما أشبه ذلك . وربما وقعَ بعدَ اللامِ حرفٌ ثم ألفٌ ثم حرفٌ واحدٌ ، وهذا في زِنَةِ الدَّارِ ، والنَّارِ ، والسَّاقِ ، والعَارِ ، والبَابِ . وما أشبه ذلك ، هذا مع اختلافٍ.
/ فأمَّا إذا اتَّفقَ الحرفان اللذان في منتصفِ الكلمةِ وفي آخِرِها ، فهي<sup>'''(⭑)'''</sup> مثلُ : البابِ ، {{حاشية من اليسار|'''[ ١٢٥/أ]'''}} والواوِ ، والشاشِ ، وإلمامٍ ، وإلحاحٍ ، والحاحٍ ، وألَبابٍ — جمع لُبّ — وما جرى هذا المجرى .
فإن وجدتَّ بعد الألفِ واللامِ حرفينِ وألفاً وحرفاً بعد الألفِ فهو مثلُ : المَقَامِ ، والغَمَامِ ، والضِّرَابِ ، والصَّوَابِ ، والثَّوَابِ ، والعِقَابِ وما أشبه ذلك.
وإنْ وَجَدْتَ بعْدَ الألفِ واللامِ حرفينِ وألفاً{{حا|في الأصل « ألفاً و بلا واو ».}} وبعدَها حرفينِ فهي مثلُ : المَقَانِبِ ، والمَنَاقِبِ ، والضَّرَاغِمِ ، والصَّوَارِمِ، والوَسَاوِسِ، والوَسَائِلِ وما أشبه ذلك.
فإن كان بعد الألفِ واللامِ حرفٌ واحدٌ ثم ألفٌ وبعد الألفِ حرفانِ فهي مثلُ: الغَائِبِ، والغَارِبِ، والقَادِمِ، والرَّامِي ، والزَّاهِي ، والكَافِي ، والحَادِثِ ، والتَّائِبِ وما جرى / هذا المجرى. {{حاشية من اليسار|'''[ ١٢٥/ب]'''}}
{{حا|يتبع=فَاصْطَيـدا|« تُرَبَّى زُبْيَةٌ » . والزُّبْيَةُ : حفرة يتربى فيها الرجل للصيد ، وتُحفر للذئب فيصطاد فيها » . انظر اللسان ( زبي ).}}
{{سطر|45%|align=right}}
{{سطر|45%|align=right}}<noinclude>{{حواشي}}
'''(⭑)''' في الأصل: «وهي».
{{يمين|٣٤٢}}</noinclude>
cmmvx27mspqodahz6lax12n8wzl3t01
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/372
104
306722
617359
616850
2026-08-13T13:54:14Z
RASHEEDYE
15342
/* صُححّت */
617359
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude><nowiki/>
١ — الطريقة: وتكون بـ:
<br/>آ — حسابِ عددِ المزدوجاتِ أو الثلاثياتِ.
<br/>ب — إلغاءِ المهملِ ممَّا خرجَ من تلكَ المزدوجاتِ أو الثلاثياتِ، وذلكَ لعدمِ استعماله في كلامِ العرب.
<br/>ج — النظرِ في الأَلْيَقِ بما بقِيَ ممَّا يفيدُ الموضوعَ الذي هو فيه، والمُرَادِ بِهِ ما يناسب موضوع نصِّ التعميةِ المُسْتَخْرَجِ.
٢ — الأمثلة: وقد ذكر الجرهمي في شرح ذلكَ أربعة أمثلة، هي:
— المثال الأول:
« مثل أن يبقى من حروفِ المعجمِ بعدَ ما ظهرَ منها: الخاءُ، والذالُ، والزايُ، والصادُ »{{حا|رسالة الجرهمي، علم التعمية ٣٨٧/٢ .}}. ومعناه أنك استخرجتَ جميعَ الحروفِ ما خلا هذهِ الأربعةَ ، وعندَك كلمةٌ ثنائيةٌ تريدُ أن تعرفَ ما يمكنُ أن تكونَ ، فتحسبُ عددَ هذه المزدوجاتِ الممكنة، وهي:
P<small>4</small>²=4 × 3=12
وبتفصيلِها كما تقدم تخرج المزدوجات التالية:
خذ، خز، خص، ذخ، ذز، ذص، زخ، زذ، زص، ص خ، ص ذ، ص ز.
ثم تدغِي المهملَ منها ، فتبقى لديكَ الكلماتُ المفيدة نحو: خذ، خز، خص ... ثم تنظرُ ما الأَلْيَقُ ممَّا بَقِيَ من هذه المزدوجاتِ ممَّا يناسب الموضوعَ أو المقام.
— المثال الثاني:
« واعلمْ أنه قد نقِفُ على أكثرِ حروفِ الكلمةِ عدا حرفٍ واحدٍ ، فإذا كانَ كذلكَ ، فاعْزِلْ من حروفِ المعجمِ ما عرفتَه في الكلمةِ وغيرها ، واعْرِضْ بقيتَها واحداً واحداً ، فتخرُج لكَ كلمةٌ أو كلماتٌ مستعملاتٌ ، فالأَلْيَقُ بالموضوعِ منها المطلوبُ »{{حا|{{خطأ| الحاشية ممسوحة| الصواب | تعليق (اختياري)}}}} وذكرَ الجرهمي مثالاً على هذهِ الحالةِ ، وهو كلمة ( مَرْهَف ) التي عرفتَ حروفَها الثلاثةَ الأولى ، وبقيَ رابعُها ( مـ ر هـ x ) ، وكان ما لم تعرفه من حروفِ المعجمِ : ف ، ج ، ب ، ذ ، ظ ، ع ، ض . « فأنتَ متى عرضتَ على موضعِ الفاءِ هذهِ الحروفَ الباقيةَ لم تَخْرُجِ الكلمةُ عن أن تكون إما ( مرهف ) وإما ( مرهج ) فاعتبرْ أَلْيَقَ الاثنينِ بالموضعِ من طريقِ المعنى ، واقطعْ عليهِ »{{حا|{{خطأ| الحاشية ممسوحة| الصواب | تعليق (اختياري)}}}}<noinclude>{{سطر|45%|align=right}}
{{حواشي}}
{{يمين|٣٧٠}}</noinclude>
1ja8pvxiw5gcic3nknepshcu8czub3n
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/367
104
306906
617357
616598
2026-08-13T13:50:02Z
RASHEEDYE
15342
/* صُححّت */
617357
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude><center>
{| class="wikitable" style="text-align: right; background-color: transparent; border: none;"
|- style="font-weight: bold; text-align: center;"
| الثنائية || الحال/الصيغة || المثال
|-
| هم || — ضمير الجمع الغائب المتصل بالأفعال<br />— ضمير الجمع الغائب المتصل بالأسماء<br />— ضمير الجمع الغائب المتصل بالحروف || حَفِظَهُم ، يَحْفَظُهُم ، احْفَظْهُم<br />دارهم ، سيوفهم .<br />بهم ، عليهم ، إليهم ، إنَّ—هم
|-
| وا || — الماضي المسند إلى ضمير الجمع المذكر<br />— المضارع المسند إلى ضمير الجمع المذكر : منصوباً ومجزوماً<br />— الأمر المسند إلى ضمير الجمع المذكر || كتبوا ، وعَدوا ، غزوا ، مشوا<br />لن يستخرجوا ، لم يتـرجموا<br />استخرجوا ، عُدّوا ، عُمّوا
|-
| ين || — جمع المذكر السالم منصوباً ومجروراً<br />— المثنى منصوباً ومجروراً<br />— المضارع المسند إلى المفردة المخاطبة<br />— الملحق بجمع المذكر السالم منصوباً ومجروراً || شكرت الفائزين / الناجحين<br />احتوى الفصلين ، على الفصلين<br />تدرسين.<br />بنين، عشرين — تسعين
|-
| ون || — جمع المذكر السالم مرفوعاً<br />— المضارع المرفوع مسنداً إلى الجمع الغائب والمخاطب<br />— الملحق بجمع المذكر السالم مرفوعاً || كاتبون .<br />يترجمون، تستخرجون<br />بـنون ، عشرون — تسـعون
|-
| ان || — المثنى مرفوعاً || قلمان.
|-
| ات || — جمع المؤنث السالم || هندات، مسلمات، أدوات، رحمات ..
|-
| هما || — ضمير التثنية الغائب مع الأفعال<br />— ضمير التثنية الغائب مع الأسماء<br />— ضمير التثنية الغائب مع الحروف || ضربهما ، يعطيهما ، انصحهما ..<br />بيتهما ، أقلامهما ، فوقهما ..<br />بهما ، لهما ، عليهما ، إنهما ، ليتهما .
|-
| هنَّ || — ضمير الغيبة لجمع النسوة مع الأفعال<br />— ضمير الغيبة لجمع النسوة مع الأسماء<br />— ضمير الغيبة لجمع النسوة مع الحروف || عرَفَهُنَّ ، يعلمهنَّ ، احفظهنَّ .<br />كتابهنَّ ، دروسهنَّ ، فتياتهنَّ ..<br />عليهنَّ ، كأنهنَّ ، منهنَّ ..
|}
</center>
ومثلما قال الجرهمي: « فإن تكرار هذه الحروف متتاليةً في آخر الكلم يدل عليها، كما يدل تكرار الألف واللام متتاليين عليها ، فهذا النوع في أواخر الكلم يجري مجرى الألف واللام في أولها »{{حا|رسالة الجرهمي، علم التعمية ٣٨٥/٢.}}.<noinclude>{{سطر|45%|align=right}}
{{حواشي}}
{{يسار|٣٦٥}}</noinclude>
9bweuutyhhf9omlbe2afow4bxneoxz4
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/371
104
306910
617358
616851
2026-08-13T13:52:01Z
RASHEEDYE
15342
/* صُححّت */
617358
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude>«ثم نثبت كل واحدة من هذه الكلمات الست عشرة أربع دفعات ، ونثبت بإزاء كل واحدة من الأربعة واحداً من حروف الكلمة، فتصير على هذه الصورة ..»{{حا|المصدر السابق ٣٨٦/٢.}}
وستعرض فيما يأتي الثلاثيات الناتجة موَزَّعَةً على الدفعات الأربعة والحرف الذي يكون بإزاء كل منها:
<center>
{| class="wikitable" style="text-align: center; background-color: transparent; border: none;"
|-
| style="font-weight: ;" | الدفعة الأولى<br />بإزاء حرف الجيم || ج ج ج<br />ج ع ج<br />ج ف ج<br />ج ر ج || ج ج ع<br />ج ع ع<br />ج ف ع<br />ج ر ع || ج ج ف<br />ج ع ف<br />ج ف ف<br />ج ر ف || ج ج ر<br />ج ع ر<br />ج ف ر<br />ج ر ر
|-
| style="font-weight: ;" | الدفعة الثانية<br />بإزاء حرف العين || ع ج ج<br />ع ع ج<br />ع ف ج<br />ع ر ج || ع ج ع<br />ع ع ع<br />ع ف ع<br />ع ر ع || ع ج ف<br />ع ع ف<br />ع ف ف<br />ع ر ف || ع ج ر<br />ع ع ر<br />ع ف ر<br />ع ر ر
|-
| style="font-weight: ;" | الدفعة الثالثة<br />بإزاء حرف الفاء || ف ج ج<br />ف ع ج<br />ف ف ج<br />ف ر ج || ف ج ع<br />ف ع ع<br />ف ف ع<br />ف ر ع || ف ج ف<br />ف ع ف<br />ف ف ف<br />ف ر ف || ف ج ر<br />ف ع ر<br />ف ف ر<br />ف ر ر
|-
| style="font-weight: ;" | الدفعة الرابعة<br />بإزاء حرف الراء || ر ج ج<br />ر ع ج<br />ر ف ج<br />ر ر ج || ر ج ع<br />ر ع ع<br />ر ف ع<br />ر ر ع || ر ج ف<br />ر ع ف<br />ر ف ف<br />ر ر ف || ر ج ر<br />ر ع ر<br />ر ف ر<br />ر ر ر
|}
</center>
<br />
'''خامساً: حالات استعمال المزدوجات والثلاثيات:'''
بعد أن انتهى الجرهمي من الكلام على حساب المزدوجات والثلاثيات وتفصيلهما ، وبعد أن صَدَّر حديثه عنهما ببيان وجه الفائدة من المعرفة باستخراجهما وهو الإعانة على استنباط الحروف ، شرع بعد كل ذلك بإعطاء الأمثلة والحالات التي توضح كيفية الاستفادة منها في استخراج المعمى . قال : « وإذ قد بان لك كيف تستخرج المزدوجات والثلاثيات فإنا نقول: ... » وسنذكر فيما يأتي الحالات المشار إليها كما أوردها الجرهمي :
<br /><br /><noinclude>
{{سطر|45%|align=right}}
{{حواشي}}
{{يسار|٣٦٩}}</noinclude>
kprsxid8dt8qbqomjdi6vp8rdx68ueg
مؤلف:محمود بورقيبة
102
307086
617418
617180
2026-08-14T06:43:10Z
TOUMOU
16960
/* أعمال */
617418
wikitext
text/x-wiki
{{مؤلف}}
==أعمال==
* [[بعد الموت]]
* [[لا هذا... ولا ذاك]]
* [[من الجاني]]
* [[الضاحك الباكي]]
* [[ذكراك]]
* [[الوقت]]
* [[الأصدقاء]]
* [[على الحالين]]
* [[شكوك وأوهام]]
* [[رداء الحسن]]
* [[نار تحت الرماد]]
* [[شر الأعـداء]]
* [[اضحك إلى الدنيا]]
* [[العطف المغـذي]]
* [[مراثي الأعوام]]
* [[الدنيا الخادعة]]
* [[من غربل الناس نخلوه]]
* [[الدموع الحائرة]]
* [[الذكريات]]
* [[الأماني الخادعة]]
* [[الذكرى (محمود بورقيبة)|الذكرى]]
* [[القلب المضرج]]
* [[البشرية المخدوعة]]
* [[في سباق الحب]]
* [[عندما يتجهم وجه الدهر]]
* [[الدنيا الخادعة (محمود بورقيبة)|الدنيا الخادعة]]
* [[الأخلاق]]
*[[المرأة]]
{{ملكية عامة - تونس}}
{{ضبط استنادي}}
[[تصنيف:شعر حديث]]
[[تصنيف:شعراء تونسيون]]
i7xzfugh8n6fvro5f5n5sijj5w7w6i9
617421
617418
2026-08-14T07:02:08Z
TOUMOU
16960
617421
wikitext
text/x-wiki
{{مؤلف}}
==أعمال==
* [[بعد الموت]]
* [[لا هذا... ولا ذاك]]
* [[من الجاني]]
* [[الضاحك الباكي]]
* [[ذكراك]]
* [[الوقت]]
* [[الأصدقاء]]
* [[على الحالين]]
* [[شكوك وأوهام]]
* [[رداء الحسن]]
* [[نار تحت الرماد]]
* [[شر الأعـداء]]
* [[اضحك إلى الدنيا]]
* [[العطف المغـذي]]
* [[مراثي الأعوام]]
* [[الدنيا الخادعة]]
* [[من غربل الناس نخلوه]]
* [[الدموع الحائرة]]
* [[الذكريات]]
* [[الأماني الخادعة]]
* [[الذكرى (محمود بورقيبة)|الذكرى]]
* [[القلب المضرج]]
* [[البشرية المخدوعة]]
* [[في سباق الحب]]
* [[عندما يتجهم وجه الدهر]]
* [[الدنيا الخادعة (محمود بورقيبة)|الدنيا الخادعة]]
* [[الأخلاق]]
* [[المرأة]]
* [[فلسطين (محمود بورقيبة)|فلسطين]]
* [[دموع الشاعر]]
{{ملكية عامة - تونس}}
{{ضبط استنادي}}
[[تصنيف:شعر حديث]]
[[تصنيف:شعراء تونسيون]]
m84ymc25ba5nzphcom5pcdbz8vjtx0e
وحدة:مؤلف/ملعب
828
307131
617387
617336
2026-08-13T19:39:42Z
حبيشان
52457
تحسين
617387
Scribunto
text/plain
-- من [[:fr:]]
local hijricore = require("Module:Hijri/core")
local match = mw.ustring.match
local function errorMessage(text)
-- Return a html formated version of text stylized as an error.
local html = mw.html.create('div')
html:addClass('error')
:wikitext(text)
:wikitext('[[تصنيف:صفحات تستدعي قالب مؤلف بطريقة غير صحيحة]]')
return tostring(html)
end
local function createLinkRow(link, site)
-- Return some html stylised formated text of link
local html = mw.html.create('li')
html:tag('span')
:addClass('author-linkrow')
:wikitext('[[ملف:' .. site .. '-logo.svg|20px|link=]] ')
html:wikitext(link)
return html
end
local function categorization(baseName, parameter)
-- Return the categorisation wikitext for each element of parameter prefixed with baseName
if parameter == nil or mw.title.getCurrentTitle().namespace ~= 102 then
return ''
end
local wikitext = ''
for _, param in pairs(mw.text.split(parameter, '/', true)) do
wikitext = wikitext .. '[[تصنيف:' .. baseName .. ' ' .. param .. ']]'
end
return wikitext
end
local function computeCenturyFromYear(year)
-- Return the correpsonding century for the given year
if year >= 0 then
return math.ceil(year / 100)
else
return -math.ceil(-year / 100)
end
end
local function getTextForCentury(century, withHtml, hijri)
-- Return a roman ordinal of century appended with a trailing text precising
-- if the date is before of after the calendar reference point.
local romanNumbers1 = { '', 'الأول', 'الثاني', 'الثالث', 'الرابع', 'الخامس', 'السادس', 'السابع', 'الثامن', 'التاسع',
'العاشر', 'الحادي عشر', 'الثاني عشر', 'الثالث عشر', 'الرابع عشر', 'الخامس عشر', 'السادس عشر', 'السابع عشر',
'الثامن عشر', 'التاسع عشر', 'العشرين', 'الحادي والعشرين' }
-- local romanNumbers2 = {'', 'X', 'XX', 'XXX', 'XL', 'L', 'LX', 'LXX', 'LXXX', 'XC'}
local text = romanNumbers1[math.abs(century) + 1]
if century > 0 then
return text .. (hijri and ' الهجري' or ' الميلادي')
else
return text .. (hijri and ' قبل الهجرة' or ' قبل الميلاد')
end
end
local function getTextForYear(year, hijri)
local text = math.abs(year)
if year < 0 then
text = text .. (hijri and ' ق هـ' or ' ق م')
else
text = text .. (hijri and ' هـ' or ' م')
end
return text
end
local function getDateFromArgs(args, field, fieldUpper, hijri)
local struct = {
year = nil,
century = nil,
text = nil,
precision = 0,
}
local thijri = hijri and ' الهجرية' or ''
local thijri2 = hijri and ' الهجري' or ''
--extract year or century
local date = args['سنة ' .. fieldUpper .. thijri]
if date == nil or (not hijri and match(date, "^(%d+)%s?(ق? ?هـ?)$")) then
if args[field] then
if (hijri and match(args[field], "^(%d+)%s?(ق? ?هـ?)$")) or not hijri then
date = args[field]
end
end
if date == nil and hijri then
date = args[field .. thijri]
end
end
local numdate = tonumber(date)
if hijri and date and numdate == nil then
local thy, thyt = match(date, "^(%d+)%s?(ق? ?هـ?)$")
if thy then
numdate = tonumber(thy)
if thyt.sub(1, 2) == 'ق' then
numdate = numdate * -1
end
end
end
if numdate ~= nil then
struct.year = numdate
if struct.year == 0 then
struct.text = errorMessage("التقويم لا يحتوي على سنة 0!")
return struct
end
struct.century = computeCenturyFromYear(struct.year)
struct.precision = 9
elseif args['قرن ' .. fieldUpper .. thijri2] ~= nil then
struct.century = tonumber(args['قرن ' .. fieldUpper .. thijri2])
struct.precision = 7
end
--build text
if struct.year ~= nil then
struct.text = getTextForYear(struct.year, hijri)
elseif struct.century ~= nil then
struct.text = getTextForCentury(struct.century, true, hijri)
elseif date ~= nil and (hijri or not match(date, "^(%d+)%s?(ق? ?هـ?)$")) then
struct.text = date
end
mw.logObject(struct)
return struct
end
local function parseWbTime(value, refinedate)
local gyear, gmonth, gday, hy
for y, m, d in string.gmatch(value.time, '(%-?%d%d%d+)%-(%d+)%-(%d+)T') do
gyear = tonumber(y)
gmonth = tonumber(m)
gday = tonumber(d)
end
if refinedate then
for _, ry in pairs(refinedate) do
if ry.snaktype == "value" then
local rylabel = mw.wikibase.getLabelByLang(ry.datavalue.value.id, 'ar')
if rylabel and match(rylabel, "^(%d+)%s?(ق? ?هـ?)$") then
for thy, thyt in mw.ustring.gmatch(rylabel, "^(%d+)%s?(ق? ?هـ?)$") do
hy = tonumber(thy)
if thyt.sub(1, 2) == 'ق' then
hy = hy * -1
end
end
end
end
end
end
if not hy then
if gmonth == 0 then
gmonth = 7
gday = 1
end
local julianday
if value.calendarmodel == "http://www.wikidata.org/entity/Q1985727" then
julianday = hijricore.gregorian2jd(gyear, gmonth, gday)
else
julianday = hijricore.julian2jd(gyear, gmonth, gday)
end
hy, _, _, _ = hijricore.jd2hijri(julianday)
end
return {
year = gyear,
century = computeCenturyFromYear(gyear),
text = nil,
precision = value.precision
}, {
precision = value.precision,
year = hy,
century = computeCenturyFromYear(hy),
text = nil
}
end
local function getDateFromTimeStatement(statement, field)
local struct = {
year = nil,
century = nil,
text = nil,
precision = 0
}
local hstruct = {
year = nil,
century = nil,
text = nil,
precision = 0
}
local snak = statement.mainsnak
if snak.snaktype == 'novalue' then
return struct, hstruct
end
if snak.snaktype == 'somevalue' then
struct.text = '??'
return struct, hstruct
end
struct, hstruct = parseWbTime(snak.datavalue.value, statement.qualifiers and statement.qualifiers.P4241)
local prefix = ''
if struct.precision == 8 then
prefix = 'تقريبًا '
end
--Extract circa
if statement.qualifiers ~= nil and statement.qualifiers.P1480 ~= nil then
for _, qualifier in pairs(statement.qualifiers.P1480) do
if qualifier.datavalue.value.id == 'Q5727902' then
prefix = 'تقريبًا '
struct.precision = 8 --TODO: hacky
end
if qualifier.datavalue.value.id == 'Q79030196' then
prefix = 'قبل '
struct.precision = 8 --TODO: hacky
end
end
end
--Use before and after if precision <= century
if statement.qualifiers ~= nil and struct.precision <= 7 then
if statement.qualifiers.P1319 ~= nil then
for _, qualifier in pairs(statement.qualifiers.P1319) do
struct = parseWbTime(qualifier.datavalue.value)
prefix = 'بعد '
struct.precision = 8 --TODO: hacky
end
elseif statement.qualifiers.P1326 ~= nil then
for _, qualifier in pairs(statement.qualifiers.P1326) do
struct = parseWbTime(qualifier.datavalue.value)
prefix = 'قبل '
struct.precision = 8 --TODO: hacky
end
elseif statement.qualifiers.P1317 ~= nil then
for _, qualifier in pairs(statement.qualifiers.P1317) do
struct = parseWbTime(qualifier.datavalue.value)
prefix = 'عُرف في '
struct.precision = 8 --TODO: hacky
end
end
end
--Create text
if struct.precision >= 8 then
struct.text = prefix .. getTextForYear(struct.year)
hstruct.text = prefix .. getTextForYear(hstruct.year, true)
elseif struct.precision == 7 then
struct.text = prefix .. getTextForCentury(struct.century, true)
hstruct.text = prefix .. getTextForCentury(hstruct.century, true, true)
else
struct.text = errorMessage('تاريخ ' .. field .. ' لديه دقة منخفضة جدا على ويكي بيانات')
end
return struct, hstruct
end
local function getDateFromTimeStatements(statements, field)
if #statements == 0 then
return { precision = 0 }, { precision = 0 }
end
local time, htime = nil, nil
for _, statement in pairs(statements) do
local newTime, hnewTime = getDateFromTimeStatement(statement, field)
if time == nil then
time = newTime
elseif time.year ~= newTime.year then --années contradictoires
mw.addWarning('عدة سنوات من ' ..
field ..
' ممكن على ويكي بيانات. طريقة بسيطة لحل هذه المشكلة هي تعيين التاريخ المراد عرضه في الترتيب "المفضل".')
end
if htime == nil then
htime = hnewTime
elseif htime.year ~= hnewTime.year then --années contradictoires
mw.addWarning('عدة سنوات من ' ..
field ..
' ممكن على ويكي بيانات. طريقة بسيطة لحل هذه المشكلة هي تعيين التاريخ المراد عرضه في الترتيب "المفضل".')
end
end
if time == nil then
return { precision = 0 }, { precision = 0 }
end
return time, htime
end
local function formatDates(birth, death, hbirth, hdeath, class)
if birth.text == nil and death.text == nil then
return ''
end
local htext = '('
local text = ''
if hbirth.text ~= nil then
htext = htext .. hbirth.text .. ' '
else
htext = htext .. "000" .. ' '
end
if birth.precision >= 9 then
local annotation = 'class="bday" itemprop="birthDate"'
if class ~= "Q5" and class ~= nil then
annotation = 'itemprop="foundingDate'
end
text = text .. '<time datetime="' .. birth.year .. '" ' .. annotation .. '>' .. birth.text .. '</time> '
elseif birth.text ~= nil then
text = text .. birth.text .. ' '
else
text = text .. "000" .. ' '
end
text = text .. '—'
htext = htext .. '—'
if hdeath.text ~= nil then
htext = htext .. hdeath.text .. ' '
else
htext = htext .. "000" .. ' '
end
if death.precision >= 9 then
local annotation = 'class="dday" itemprop="deathDate"'
if class ~= "Q5" and class ~= nil then
annotation = 'itemprop="dissolutionDate'
end
text = text .. ' <time datetime="' .. death.year .. '" ' .. annotation .. '>' .. death.text .. '</time>'
elseif death.text ~= nil then
text = text .. ' ' .. death.text
end
return htext .. ' = ' .. text .. ')'
end
local function qidForProperty(item, property)
local statements = item:getBestStatements(property)
if statements[1] ~= nil and statements[1].mainsnak.datavalue ~= nil then
return statements[1].mainsnak.datavalue.value.id
end
return nil
end
local function searchKey(key)
-- normally the key does not contain any diacritic but it's a common misuse
-- of the clef = so handle at least the most usual diacritics, note than
-- prenom can be empty
local nom, prenom = match(key, '^([ء-ي]*)[,]?[ ]*(.*)$')
return prenom .. ' ' .. 'intitle:' .. nom
end
local function add_category(html, category)
if mw.title.getCurrentTitle().namespace == 102 then
html:wikitext('[[تصنيف:' .. category .. ']]')
end
end
local function author(frame)
--create a clean table of parameters with blank parameters removed
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
local birth = getDateFromArgs(args, 'سنة الميلاد', 'الميلاد')
local hbirth = getDateFromArgs(args, 'سنة الميلاد', 'الميلاد', true)
local death = getDateFromArgs(args, 'سنة الوفاة', 'الوفاة')
local hdeath = getDateFromArgs(args, 'سنة الوفاة', 'الوفاة', true)
local sex = nil
local class = nil
local html = mw.html.create()
html:wikitext('\n__لافهرس__')
:wikitext('\n');
if args['الاسم'] == nil and (args['الاسم الأخير'] or args['الاسم الأول']) then
args['الاسم'] = (args['الاسم الأول'] or '') .. " " .. (args['الاسم الأخير'] or '')
end
--Utilise Wikidata si paramètres non renseignés
local item;
if mw.wikibase.getEntityIdForCurrentPage() == nil then
add_category(html, 'صفحات مؤلفين دون عنصر ويكي بيانات')
else
item = require('Module:WdItem').newItem(mw.wikibase.getEntityIdForCurrentPage(), {langs = {'ar'}})
if args['الاسم'] == nil then
args['الاسم'] = item:getLabel()
else
add_category(html, 'صفحات تستخدم قالب مؤلف مع اسم محلي')
end
if args['وصف'] ~= nil then
add_category(html, 'صفحات تستخدم قالب مؤلف مع وصف محلي')
else
args['وصف'] = item:getDescription()
end
if args['صورة'] == nil then
args['صورة'] = item:getRawValue({'P154','P18', 'P6802'})[1] -- logo
else
add_category(html, 'صفحات تستخدم قالب مؤلف مع وسيط صورة')
end
local birthWikidata, hbirthWikidata = getDateFromTimeStatements(item:getBestStatements('P569'), 'birth')
if birthWikidata.precision == 0 then
birthWikidata, hbirthWikidata = getDateFromTimeStatements(item:getBestStatements('P571'), 'creation')
end
if birth.text == nil then
birth = birthWikidata
else
add_category(html, 'صفحات تستخدم قالب مؤلف بتاريخ محلي')
if birthWikidata.text == nil then -- on utilise la date de création
add_category(html, 'صفحات تستخدم قالب مؤلف مع بيانات للترحيل')
end
end
if hbirth.text == nil then
hbirth = hbirthWikidata
else
add_category(html, 'صفحات تستخدم قالب مؤلف بتاريخ محلي')
if hbirthWikidata.text == nil then -- on utilise la date de création
add_category(html, 'صفحات تستخدم قالب مؤلف مع بيانات للترحيل')
end
end
local deathWikidata, hdeathWikidata = getDateFromTimeStatements(item:getBestStatements('P570'), 'death')
if deathWikidata.precision == 0 then -- on utilise la date de dissolution
deathWikidata, hdeathWikidata = getDateFromTimeStatements(item:getBestStatements('P576'), 'dissolution')
end
if death.text == nil then
death = deathWikidata
else
add_category(html, 'صفحات تستخدم قالب مؤلف بتاريخ محلي')
if deathWikidata.text == nil then
add_category(html, 'صفحات تستخدم قالب مؤلف مع بيانات للترحيل')
end
end
if hdeath.text == nil then
hdeath = hdeathWikidata
else
add_category(html, 'صفحات تستخدم قالب مؤلف بتاريخ محلي')
if hdeathWikidata.text == nil then
add_category(html, 'صفحات تستخدم قالب مؤلف مع بيانات للترحيل')
end
end
if args.pseudo == nil then
args.pseudo = item:formatPropertyValues('P742').value
if args.pseudo == '' then
args.pseudo = nil
end
elseif args.pseudo ~= '-' then
add_category(html, 'Pages utilisant le modèle Auteur avec un pseudo local')
end
--sex
sex = qidForProperty(item, 'P21')
--class
class = qidForProperty(item, 'P31')
end
if args['الاسم'] == nil then
args['الاسم'] = mw.title.getCurrentTitle().text
-- return errorMessage('وسيط "الاسم" إلزامي ويجب أن تحتوي على اسم المؤلف')
end
--sort key and initiale
local firstName = args['الاسم الأول'] or ''
local familyName = args['الاسم الأخير'] or ''
if item ~= nil then
--first name
local firstNameStatements = item:getBestStatements('P735')
if firstNameStatements[1] ~= nil then
if firstNameStatements[1].mainsnak.type == 'value' then
local firstNameId = firstNameStatements[1].mainsnak.datavalue.value.id
firstName = mw.wikibase.label(firstNameId) or ''
--TODO check if the first name is not an initial
elseif firstNameStatements[1].mainsnak.type == 'somevalue' then
add_category(html, 'Auteurs de prénom inconnu')
end
end
--family name
local familyNameId = qidForProperty(item, 'P734')
if familyName == '' and familyNameId ~= nil then
familyName = mw.wikibase.label(familyNameId) or ''
end
end
if familyName == '' then
--We are in a simple case with first name and last name. TODO: bad hack, should be improved
local nameParts = mw.text.split(args['الاسم'], ' ', true)
if #nameParts == 1 then
familyName = nameParts[1]
elseif #nameParts > 1 then
firstName = nameParts[1]
familyName = nameParts[#nameParts]
end
end
if args['مفتاح'] == nil then
if familyName ~= '' then
local moduleClassement = require 'Module:Classement'
args['مفتاح'] = moduleClassement.getSortKeyForName({ args = { firstName, familyName } })
else
return errorMessage('المعلمة "مفتاح" إلزامية ويجب أن تحتوي على مفتاح فرز للمؤلف')
end
else
add_category(html, 'صفحات تستخدم قالب مؤلف مع مفتاح محلي')
end
if args['فهرس'] == nil then
if args['مفتاح'] ~= nil then
args['فهرس'] = mw.ustring.sub(args['مفتاح'], 1, 1)
else
return errorMessage('وسيط "الفهرس" مطلوب ويجب أن يحتوي على الحرف الأول من اسم المؤلف')
end
else
add_category(html, 'صفحات تستخدم قالب مؤلف مع بيانات للترحيل')
end
local main = html:tag('div')
:attr('itemscope', '')
:addClass('author-box')
if class == "Q5" or class == nil then
main = main:attr('itemtype', 'http://schema.org/Person'):addClass('vcard')
else
main = main:attr('itemtype', 'http://schema.org/Organization')
end
if item ~= nil and item.id ~= nil then
main:attr('itemid', 'http://www.wikidata.org/entity/' .. item.id)
end
--Categorie Auteur-X
main:tag('div')
:addClass('author-index')
:tag('span')
:wikitext('►')
:done()
:wikitext(' [[ويكي مصدر:مؤلفون-' .. args['فهرس'] .. '|مؤلفون ' .. args['فهرس'] .. ']]')
--Image
local image = args['صورة']
if image ~= nil then
main:tag('div')
:addClass('author-photo')
:wikitext('[[ملف:' .. image .. '|140px|alt=' .. args['الاسم'] .. '|class=photo]]')
end
--First row
local firstRow = main:tag('div')
--Title
firstRow:tag('h1')
:addClass('fn')
:attr('itemprop', 'name')
:wikitext(args['الاسم'])
:tag('br'):done()
:tag('span')
:addClass('author-dates')
:wikitext(formatDates(birth, death, hbirth, hdeath, class))
:newline()
--Dates
-- firstRow:tag('div')
-- :addClass('author-dates')
-- :wikitext(formatDates(birth, death, hbirth, hdeath, class))
-- :newline()
--Second row
local secondRow = main:tag('div')
--Interwikis
local interwikis = secondRow:tag('div')
:addClass('author-interwikis')
:tag('ul')
:node(createLinkRow(
'<span class="plainlinks">[//ar.wikisource.org/wiki/Special:IndexPages?key=' ..
mw.uri.encode(searchKey(args['مفتاح'])) .. ' الفهارس]</span>', 'Wikisource'))
if item ~= nil and item:getSitelink('arwiki') ~= nil then
interwikis:node(createLinkRow('[[w:' .. item:getSitelink('arwiki') .. '|السيرة]]', 'Wikipedia'))
else
interwikis:node(createLinkRow('[[w:' .. args['الاسم'] .. '|<span style="color:#BA0000;">السيرة </span>]]',
'Wikipedia'))
end
if item ~= nil and item:getSitelink('arwikiquote') ~= nil then
interwikis:node(createLinkRow('[[q:' .. item:getSitelink('arwikiquote') .. '|اقتباسات]]', 'Wikiquote'))
else
interwikis:node(createLinkRow('[[q:' .. args['الاسم'] .. '|<span style="color:#BA0000;">اقتباسات</span>]]',
'Wikiquote'))
end
if item ~= nil then
local commonsCat = item:formatPropertyValues('P373').value
if commonsCat ~= '' then
interwikis:node(createLinkRow('[[commons:Category:' .. commonsCat .. '|الوسائط]]', 'Commons'))
elseif item:getSitelink('commonswiki') ~= nil then
interwikis:node(createLinkRow('[[commons:' .. item:getSitelink('commonswiki') .. '|الوسائط]]', 'Commons'))
else
interwikis:node(createLinkRow(
'[[commons:' .. args['الاسم'] .. '|<span style="color:#BA0000;">الوسائط</span>]]', 'Commons'))
end
else
interwikis:node(createLinkRow('[[commons:' .. args['الاسم'] .. '|<span style="color:#BA0000;">الوسائط</span>]]',
'Commons'))
end
if item ~= nil and item.id ~= nil then
interwikis:node(createLinkRow('[[d:' .. item.id .. '|ويكي بيانات]]', 'Wikidata'))
else
interwikis:node(createLinkRow(
'<span class="plainlinks">[//www.wikidata.org/w/index.php?title=Special:NewItem&site=arwikisource&page=' ..
mw.uri.encode(mw.title.getCurrentTitle().fullText) ..
'&label=' .. mw.uri.encode(args['الاسم']) .. ' ويكي بيانات</span>]</span>', 'Wikidata'))
end
-- secondRow
--Description
local fullDescription = secondRow:tag('div')
:addClass('author-description')
local description = fullDescription:tag('span')
:addClass('label')
:attr('itemprop', 'description')
:wikitext(args['وصف'] or '')
if args.descriptionLanguageCode ~= nil then
description:attr('lang', item.descriptions.ar.language)
:css('font-style', 'italic')
add_category(html, 'صفحات تستخدم قالب مؤلف بلا وصف عربي')
elseif args['وصف'] == nil then
add_category(html, 'صفحات تستخدم قالب مؤلف بلا وصف عربي')
end
-- fullDescription
-- :newline()
-- :wikitext(formatDates(birth, death,hbirth, hdeath, class))
if args.pseudo ~= nil and args.pseudo ~= '-' then
fullDescription:tag('br')
fullDescription:wikitext('Pseudonyme : ')
:tag('span')
:attr('itemprop', 'alternateName')
:css('font-style', 'italic')
:wikitext(args.pseudo)
end
--categories
add_category(html, 'مؤلفون')
add_category(html, 'مؤلفون-' .. args['فهرس'])
--genre
-- if args.genre ~= nil then
-- add_category(html, 'Pages utilisant le modèle Auteur avec un genre local')
-- html:wikitext(categorization('', args.genre))
-- end
-- html:wikitext(categorization('', args.genre))
--langue
if item ~= nil then
for _, statement in pairs(item:getBestStatements('P6886')) do
if statement.mainsnak.datavalue ~= nil then
local languageLabel = mw.wikibase.label(statement.mainsnak.datavalue.value.id)
if languageLabel ~= nil then
categoryName = 'تصنيف:مؤلفون يكتبون ب' .. mw.wikibase.label(statement.mainsnak.datavalue.value.id)
html:wikitext('[[' .. categoryName .. ']]')
if not mw.title.new(categoryName).exists then
html:wikitext('[[تصنيف:صفحات تستخدم قالب مؤلف مع فئة لغة غير موجودة]]')
end
end
end
end
end
if args.langue ~= nil then
add_category(html, 'صفحات تستخدم قالب مؤلف بوسيط لغة محلي')
end
--الجنسيات
-- local categoryForCountry = mw.loadData('Module:Auteur2/nationalités')
-- local withNationality = false
-- if item ~= nil then
-- for _, statement in pairs(item:getBestStatements('P27')) do
-- if statement.mainsnak.datavalue ~= nil then
-- countryId = statement.mainsnak.datavalue.value.id
-- if categoryForCountry[countryId] == nil then
-- add_category(html, 'Pages utilisant le modèle Auteur avec une nationalité sans catégorie')
-- withNationality = true
-- elseif categoryForCountry[countryId] then
-- add_category(html, categoryForCountry[countryId])
-- withNationality = true
-- end
-- end
-- end
-- end
-- if args.pays ~= nil then
-- add_category(html, 'Pages utilisant le modèle Auteur avec une nationalité locale')
-- withNationality = true
-- end
-- if not withNationality then
-- add_category(html, 'Pages « Auteur » sans nationalité')
-- end
--الوظائف
-- categoryForOccupation = mw.loadData('Module:Auteur2/occupations')
-- if item ~= nil then
-- for _, statement in pairs(item:getBestStatements('P106')) do
-- if statement.mainsnak.datavalue ~= nil then
-- occupationId = statement.mainsnak.datavalue.value.id
-- if categoryForOccupation[occupationId] == nil then
-- add_category(html, 'Pages utilisant le modèle Auteur avec une occupation sans catégorie')
-- elseif categoryForOccupation[occupationId] then
-- add_category(html, categoryForOccupation[occupationId])
-- end
-- end
-- end
-- end
-- if args.metier ~= nil or args["métier"] ~= nil then
-- html:wikitext(categorization('', args.metier or args["métier"]))
-- add_category(html, 'Pages utilisant le modèle Auteur avec une occupation locale')
-- end
--prix
if args['جائزة'] ~= nil then
html:wikitext(categorization('حائزون على', args['جائزة']))
add_category(html, 'صفحات تستخدم قالب مؤلف بوسيط جائزة محلي')
end
if item ~= nil then
for _, awardStatement in pairs(item:getBestStatements('P166')) do
if awardStatement.mainsnak.datavalue ~= nil then
distinctionItem = mw.wikibase.getEntity(awardStatement.mainsnak.datavalue.value.id)
for _, awardeeCatStatement in pairs(distinctionItem:getBestStatements('P2517')) do
if awardeeCatStatement.mainsnak.datavalue ~= nil then
wikisourceCategory = mw.wikibase.sitelink(awardeeCatStatement.mainsnak.datavalue.value.id)
if wikisourceCategory then
html:wikitext('[[' .. wikisourceCategory .. ']]')
end
end
end
end
end
end
--categorie dates
if birth.precision >= 9 and birth.year > 1500 then
add_category(html, 'مواليد ' .. birth.year)
end
if death.precision >= 9 and death.year > 1500 then
add_category(html, 'وفيات ' .. death.year)
end
if hbirth.precision >= 9 and hbirth.year > -13 then
add_category(html, 'مواليد ' .. hbirth.year .. ' هـ')
end
if hdeath.precision >= 9 and hdeath.year > -13 then
add_category(html, 'وفيات ' .. hdeath.year .. ' هـ')
end
local withoutEpoque = true
if birth.century ~= nil and (birth.precision < 9 or birth.year <= birth.century * 100 - 20) then
if 15 <= birth.century then
add_category(html, 'مؤلفو القرن ' .. getTextForCentury(birth.century, false))
elseif 6 <= birth.century and birth.century <= 14 then
add_category(html, 'مؤلفو القرون الوسطى الميلادية')
else
add_category(html, 'كتاب قدماء')
end
withoutEpoque = false
end
if death.century ~= nil and (death.precision < 9 or (death.century - 1) * 100 + 5 <= death.year) then
if 15 <= death.century then
add_category(html, 'مؤلفو القرن ' .. getTextForCentury(death.century, false))
elseif 6 <= death.century and death.century <= 14 then
add_category(html, 'مؤلفو القرون الوسطى الميلادية')
else
add_category(html, 'كتاب قدماء')
end
withoutEpoque = false
end
if hbirth.century ~= nil and (hbirth.precision < 9 or hbirth.year <= hbirth.century * 100 - 20) then
if 0 <= hbirth.century then
add_category(html, 'مؤلفو القرن ' .. getTextForCentury(hbirth.century, false, true))
end
withoutEpoque = false
end
if hdeath.century ~= nil and (hdeath.precision < 9 or (hdeath.century - 1) * 100 + 5 <= hdeath.year) then
if 0 <= hdeath.century then
add_category(html, 'مؤلفو القرن ' .. getTextForCentury(hdeath.century, false, true))
elseif 0 >= hdeath.century then
add_category(html, 'مؤلفو عصر ما قبل الإسلام')
end
withoutEpoque = false
end
if withoutEpoque then
add_category(html, 'عصر مجهول')
end
if sex == 'Q6581072' then
add_category(html, 'مؤلفات')
end
--droits
-- if args.droits == nil then
-- args.droits = '70'
-- end
-- droitsNumber = tonumber(args.droits)
-- if args.droits == 'mpf' then
-- if death.precision >= 9 and tonumber(os.date("%Y")) <= death.year + 95 then --TODO: guess 'mpf' from P166:Q3324507 in Wikidata?
-- html:wikitext(frame:expandTemplate({title = 'Auteur Mort pour la France'}))
-- end
-- add_category(html, 'Auteurs morts pour la France')
-- elseif args.droits == 'non' then
-- --rien à faire
-- elseif droitsNumber ~= nil then
-- if death.year ~= nil and tonumber(os.date("%Y")) <= death.year + droitsNumber then --XX ans on vérifie le DP-EU
-- if birth.year == nil or 1923 - birth.year > 20 then
-- html:wikitext(frame:expandTemplate({title = 'DP-EU-Auteur'}))
-- end
-- end
-- if args.droits ~= '70' then
-- add_category(html, 'Droits d’auteur ' .. args.droits .. ' ans')
-- end
-- else
-- return errorMessage('Le paramètre droit contient une valeur non supportés. Valeurs possibles : 70/60/50 (durée du droit d\'auteur), "mpf" (mort pour la france). Par défaut: 70')
-- end
--maintenance
if args['مفتاح'] ~= nil then
html:wikitext(frame:preprocess('{{DEFAULTSORT:' .. args['مفتاح'] .. '}}'))
end
-- contenu
-- html:wikitext('\n__لافهرس__')
-- :wikitext('\n');
if args['محتوى'] then
html:wikitext(args['محتوى'])
:wikitext('\n')
:wikitext((require 'Module:ضبط استنادي').authorityControl(frame))
end
return mw.getCurrentFrame():extensionTag('templatestyles', '', { src = 'وحدة:مؤلف/ملعب/styles.css' }) .. tostring(html)
end
return {
author = author
}
8al7iq40slb64js3rx4nu81jw4o8che
التهذيب في أصول التعريب/باب في اللغات السامية الجنوبية
0
307148
617382
617302
2026-08-13T19:27:05Z
Nehaoua
7481
استرجع تعديلات [[Special:Contributions/JazarF|JazarF]] ([[User talk:JazarF|نقاش]]) حتى آخر مراجعة ل[[User:Nehaoua|Nehaoua]]
617286
wikitext
text/x-wiki
<pages index="التهذيب في أصول التعريب (auc aco001146).pdf"
from=78
fromsection=2
to=80
tosection=1
header=1
/>
----
{{حواشي}}
qslp2x4z74pu1ni7qjjcnczb8cg9c6j
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/403
104
307150
617344
617311
2026-08-13T12:55:01Z
RASHEEDYE
15342
/* صُححّت */
617344
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude><br/>— '''شرح قطر الندى وبل الصدى'''، لابن هشام الأنصاري (٧٦١هـ)، تحـ محمد محيي الدين عبد الحميد، مطبعة السعادة، مصر، ط٩، ١٣٧٧هـ — ١٩٥٧م.
<br/>— '''شرح المعلقات السبع'''، الحسين بن أحمد بن الحسين الزوزني (٤٨٦هـ)، إدارة الطباعة المنيرية، القاهرة، ط١، ١٣٥٢هـ.
<br/>— '''شرح المفصل'''، ابن يعيش النحوي (٦٤٣هـ)، عالم الكتب، بيروت، مكتبة المتنبي، القاهرة.
<br/>— '''صبح الأعشى في صناعة الإنشا'''، أحمد بن علي القلقشندي (٨٢١هـ)، المؤسسة المصرية العامة للتأليف والترجمة والطباعة والنشر، ١٣٨٣هـ — ١٩٦٣م.
<br/>— '''الصوتيات'''، تأليف برتيل مالمبرج، ترجمة د. محمد حلمي هليل، معهد الخرطوم الدولي للغة العربية، الخرطوم، ١٩٨٥ م.
<br/>— '''ضرائر الشعر'''، ابن عصفور الإشبيلي (٦٦٩هـ)، تحـ السيد إبراهيم محمد، دار الأندلس، ط١، ١٩٨٠م.
<br/>— '''ضرورة الشعر'''، أبو سعيد السيرافي (٣٦٨هـ)، تحـ د. رمضان عبد التواب، دار النهضة العربية للطباعة والنشر، بيروت، ط١، ١٤٠٥ هـ — ١٩٨٥ م.
<br/>— '''العقد الفريد'''، لابن عبد ربه، تحـ خليل شرف الدين، منشورات دار الهلال، بيروت ١٩٨٦م.
<br/>— '''علم الأصوات اللغوية — الفونيتيكا'''، د. عصام نور الدين، دار الفكر اللبناني، بيروت، ط١، ١٩٩٢م.
<br/>— '''علم التعمية واستخراج المعمى عند العرب'''، الجزء الأول، د. محمد مراياتي، محمد حسان الطيان، يحيى مير علم، مطبوعات مجمع اللغة العربية بدمشق، ١٤٠٧هـ — ١٩٨٧م.
<br/>— '''العمدة في محاسن الشعر وآدابه ونقده'''، لابن رشيق، تحـ محيي الدين عبد الحميد، المطبعة التجارية الكبرى بمصر، ط١، ١٣٥٣هـ — ١٩٣٤م.
<br/>— '''الفهرست'''، ابن النديم (٣٨٥هـ)، تحـ رضا — تجدد، طهران، ١٣٩١هـ — ١٩٧١.
<br/>— '''القاموس المحيط'''، مجد الدين محمد بن يعقوب الفيروزآبادي (٨١٦هـ)، مؤسسة الرسالة، بيروت، ط١، ١٣٠٦هـ — ١٩٨٦م.<noinclude>{{يسار|٤٠١}}</noinclude>
m4p7ossvj5dwgjiolb7x6uuwzuu6hvc
617345
617344
2026-08-13T12:55:25Z
RASHEEDYE
15342
617345
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude><br/>— '''شرح قطر الندى وبل الصدى'''، لابن هشام الأنصاري (٧٦١هـ)، تحـ محمد محيي الدين عبد الحميد، مطبعة السعادة، مصر، ط٩، ١٣٧٧هـ — ١٩٥٧م.
<br/>— '''شرح المعلقات السبع'''، الحسين بن أحمد بن الحسين الزوزني (٤٨٦هـ)، إدارة الطباعة المنيرية، القاهرة، ط١، ١٣٥٢هـ.
<br/>— '''شرح المفصل'''، ابن يعيش النحوي (٦٤٣هـ)، عالم الكتب، بيروت، مكتبة المتنبي، القاهرة.
<br/>— '''صبح الأعشى في صناعة الإنشا'''، أحمد بن علي القلقشندي (٨٢١هـ)، المؤسسة المصرية العامة للتأليف والترجمة والطباعة والنشر، ١٣٨٣هـ — ١٩٦٣م.
<br/>— '''الصوتيات'''، تأليف برتيل مالمبرج، ترجمة د. محمد حلمي هليل، معهد الخرطوم الدولي للغة العربية، الخرطوم، ١٩٨٥ م.
<br/>— '''ضرائر الشعر'''، ابن عصفور الإشبيلي (٦٦٩هـ)، تحـ السيد إبراهيم محمد، دار الأندلس، ط١، ١٩٨٠م.
<br/>— '''ضرورة الشعر'''، أبو سعيد السيرافي (٣٦٨هـ)، تحـ د. رمضان عبد التواب، دار النهضة العربية للطباعة والنشر، بيروت، ط١، ١٤٠٥ هـ — ١٩٨٥ م.
<br/>— '''العقد الفريد'''، لابن عبد ربه، تحـ خليل شرف الدين، منشورات دار الهلال، بيروت ١٩٨٦م.
<br/>— '''علم الأصوات اللغوية — الفونيتيكا'''، د. عصام نور الدين، دار الفكر اللبناني، بيروت، ط١، ١٩٩٢م.
<br/>— '''علم التعمية واستخراج المعمى عند العرب'''، الجزء الأول، د. محمد مراياتي، محمد حسان الطيان، يحيى مير علم، مطبوعات مجمع اللغة العربية بدمشق، ١٤٠٧هـ — ١٩٨٧م.
<br/>— '''العمدة في محاسن الشعر وآدابه ونقده'''، لابن رشيق، تحـ محيي الدين عبد الحميد، المطبعة التجارية الكبرى بمصر، ط١، ١٣٥٣هـ — ١٩٣٤م.
<br/>— '''الفهرست'''، ابن النديم (٣٨٥هـ)، تحـ رضا — تجدد، طهران، ١٣٩١هـ — ١٩٧١.
<br/>— '''القاموس المحيط'''، مجد الدين محمد بن يعقوب الفيروزآبادي (٨١٦هـ)، مؤسسة الرسالة، بيروت، ط١، ١٣٠٦هـ — ١٩٨٦م.
{{يسار|٤٠١}}<noinclude></noinclude>
gix7ljqzosxcvcvymbhkf9bxyqezk6i
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/404
104
307151
617346
617312
2026-08-13T13:06:42Z
RASHEEDYE
15342
/* صُححّت */
617346
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude><br/>— '''القراءات العشر المتواترة من طريقي الشاطبية والدرة'''، الشيخ محمد كريم راجح، مكتبة دار المهاجر، المدينة المنورة، ١٤١٢هـ — ١٩٩٢م.
<br/>— '''القسطاس في علم العروض'''، جار الله الزمخشري، تحـ د. فخر الدين قباوة، المكتبة العربية بحلب، ط١، ١٣٩٧هـ — ١٩٧٧م.
<br/>— '''القوافي'''، للأخفش، تح أحمد راتب النفاخ، دار الأمانة، بيروت، ط١، ١٣٩٤ هـ — ١٩٧٤م.
<br/>— '''كتاب سيبويه'''، أبو بشر عمرو بن عثمان بن قنبر (١٨٠هـ)، تحـ عبد السلام هارون، عالم الكتب، بيروت، ١٣٨٥هـ — ١٩٦٦م.
<br/>— '''الكتابة الخطية العربية'''، فوزي سالم عفيفي، وكالة المطبوعات، الكويت، ط١، ١٤٠٠ هـ — ١٩٨٠ م.
<br/>— '''كتاب العين'''، الخليل بن أحمد الفراهيدي (١٧٥هـ)، تحـ د. مهدي المخزومي — د. إبراهيم السامرائي، دار الهجرة، إيران — قم، ط١، ١٤٠٥هـ.
<br/>— '''لسان العرب'''، ابن منظور (٧١١هـ)، دار صادر، بيروت.
<br/>— '''ما يجوز للشاعر في الضرورة'''، للقزاز القيرواني، تحـ د. رمضان عبد التواب و د. صلاح الدين الهادي، دار العروبة بالكويت، بإشراف دار الفصحى بالقاهرة.
<br/>— '''متن اللغة'''، أحمد رضا، دار مكتبة الحياة، بيروت.
<br/>— '''مجمل اللغة'''، أحمد بن فارس، مطبعة السعادة، ١٩١٣م.
<br/>— '''المحمدون من الشعراء'''، القفطي، حيدر آباد الدكن، مجلس دائرة المعارف العثمانية، ١٩٦٦م.
<br/>— '''مختارات من الشعر الجاهلي'''، اختارها وعلق عليها أحمد راتب النفاخ، مكتبة دار الفتح بدمشق، ١٣٨٦هـ — ١٩٦٦م.
<br/>— '''المخصص'''، ابن سيده (٤٥٨هـ)، المكتب التجاري للطباعة والتوزيع والنشر، بيروت.
<br/>— '''مدخل إلى الألسنية'''، د. يوسف غازي، منشورات العالم العربي الجامعية، دمشق، ط١، ١٩٨٥م.
<br/>— '''المدخل إلى علم اللغة ومناهج البحث اللغوي'''، د. رمضان عبد التواب، مكتبة الخانجي، القاهرة، ط٢، ١٤٠٥هـ — ١٩٨٥م.
<br/>— '''المصباح في علم المفتاح'''، عز الدين إيدمر الجلدكي، الجابري بومبي، ١٣٠٢هـ.
<br/>— '''المطالع النصرية'''، لأبي الوفاء نصر الهوريني.
{{يمين|٤٠٢}}<noinclude></noinclude>
1jmkpw4mn0t6epesstjs02e1aq50qp1
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/412
104
307152
617352
617313
2026-08-13T13:32:12Z
RASHEEDYE
15342
617352
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{أعمدة متعددة}}
<br/>استنباط المركب {{ربط بصفحة|239|16|٢٣٩}}{{سج}}
الاستيثاق من التاريخ {{ربط بصفحة|52|16|٥٢}}{{سج}}
أسماء الأجناس {{ربط بصفحة|138|16|١٣٨}}، {{ربط بصفحة|172|16|١٧٢}}، {{ربط بصفحة|173|16|١٧٣}}{{سج}}
الإشارة {{ربط بصفحة|89|16|٨٩}}، {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|108|16|١٠٨}}{{سج}}
أشكال أغفال {{ربط بصفحة|56|16|٥٦}}، {{ربط بصفحة|165|16|١٦٥}}، {{ربط بصفحة|249|16|٢٤٩}}، {{ربط بصفحة|268|16|٢٦٨}}{{سج}}
الأشكال الأكثر دوراناً {{ربط بصفحة|223|16|٢٢٣}}{{سج}}
الأشكال المخترعة {{ربط بصفحة|93|16|٩٣}}{{سج}}
الأشكال المعلومة {{ربط بصفحة|76|16|٧٦}}{{سج}}
الأشكال المعماة من كل جهة {{ربط بصفحة|82|16|٨٢}}{{سج}}
أشكال النص المعمى {{ربط بصفحة|298|16|٢٩٨}}{{سج}}
أطوال الكلمات {{ربط بصفحة|94|16|٩٤}}، {{ربط بصفحة|100|16|١٠٠}}، {{ربط بصفحة|157|16|١٥٧}}{{سج}}
أطول الأبيات {{ربط بصفحة|280|16|٢٨٠}}{{سج}}
الإعاضة {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
الإعاضة البسيطة {{ربط بصفحة|157|16|١٥٧}}، {{ربط بصفحة|162|16|١٦٢}}، {{ربط بصفحة|164|16|١٦٤}}، {{ربط بصفحة|166|16|١٦٦}}، {{ربط بصفحة|178|16|١٧٨}}، {{ربط بصفحة|181|16|١٨١}}، {{ربط بصفحة|185|16|١٨٥}}، {{ربط بصفحة|210|16|٢١٠}}{{سج}}
الإعاضة البسيطة الأحادية الألفبائية {{ربط بصفحة|141|16|١٤١}}{{سج}}
أعداد الجمل {{ربط بصفحة|176|16|١٧٦}}، {{ربط بصفحة|260|16|٢٦٠}}{{سج}}
الأعمدة {{ربط بصفحة|79|16|٧٩}}{{سج}}
الإعنات {{ربط بصفحة|78|16|٧٨}}، {{ربط بصفحة|288|16|٢٨٨}}{{سج}}
الأغفال {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|112|16|١١٢}}، {{ربط بصفحة|164|16|١٦٤}}{{سج}}
الاقتران {{ربط بصفحة|96|16|٩٦}}{{سج}}
أقسام التعمية وضروبها {{ربط بصفحة|130|16|١٣٠}}، {{ربط بصفحة|137|16|١٣٧}}{{سج}}
أقسام المركب {{ربط بصفحة|169|16|١٦٩}}{{سج}}
الأقلام القديمة {{ربط بصفحة|391|16|٣٩١}}{{سج}}
أقوى الأسباب في استخراج المعمى {{ربط بصفحة|317|16|٣١٧}}{{سج}}
أكثر الحروف العربية دوراناً واقتراناً وائتلافاً {{ربط بصفحة|208|16|٢٠٨}}{{سج}}
أكثر الحروف تردداً {{ربط بصفحة|211|16|٢١١}}{{سج}}
أكثر الحروف في كل لسان {{ربط بصفحة|235|16|٢٣٥}}{{سج}}
أكثر الحروف وقوعاً {{ربط بصفحة|240|16|٢٤٠}}، {{ربط بصفحة|384|16|٣٨٤}}
{{فاصل أعمدة متعددة|خط1=1px solid black}}
<br/>أكثر حرف في الكلام العربي {{ربط بصفحة|239|16|٢٣٩}}{{سج}}
أكثر ما يتكرر في الكلام {{ربط بصفحة|313|16|٣١٣}}{{سج}}
أكثر ما يكون من الحروف {{ربط بصفحة|314|16|٣١٤}}{{سج}}
إلغاء الأشكال {{ربط بصفحة|249|16|٢٤٩}}{{سج}}
إلغاء النقط أو الإعجام {{ربط بصفحة|96|16|٩٦}}{{سج}}
الألف الفارقة {{ربط بصفحة|212|16|٢١٢}}{{سج}}
الألفات التي تسقط في الخط {{ربط بصفحة|275|16|٢٧٥}}، {{ربط بصفحة|339|16|٣٣٩}}{{سج}}
انغلاق الحرف {{ربط بصفحة|301|16|٣٠١}}{{سج}}
انغلاق {{ربط بصفحة|302|16|٣٠٢}}{{سج}}
انفصال الكلمة {{ربط بصفحة|48|16|٤٨}}{{سج}}
انفصال الكلمة من الكلمة {{ربط بصفحة|336|16|٣٣٦}}{{سج}}
أنواع التعمية العظام {{ربط بصفحة|137|16|١٣٧}}{{سج}}
إعمال الحروف المعجمة {{ربط بصفحة|219|16|٢١٩}}{{سج}}
إهمال النقط {{ربط بصفحة|93|16|٩٣}}{{سج}}
الأرتاد {{ربط بصفحة|199|16|١٩٩}}{{سج}}
الأوتاد من الحروف {{ربط بصفحة|267|16|٢٦٧}}{{سج}}
الأوزان الطويلة {{ربط بصفحة|300|16|٣٠٠}}{{سج}}
إيهام المستخرج {{ربط بصفحة|79|16|٧٩}}
<br />
{{وسط|( ب )}}
<br />البحث عن الحروف الكثيرة الدوران {{ربط بصفحة|53|16|٥٣}}{{سج}}
بدائل الرموز {{ربط بصفحة|101|16|١٠١}}{{سج}}
البصر بالكتابة {{ربط بصفحة|208|16|٢٠٨}}، {{ربط بصفحة|267|16|٢٦٧}}{{سج}}
البصير بالكتابة {{ربط بصفحة|271|16|٢٧١}}، {{ربط بصفحة|337|16|٣٣٧}}، {{ربط بصفحة|338|16|٣٣٨}}{{سج}}
بنية الكلمة {{ربط بصفحة|217|16|٢١٧}}{{سج}}
البيت الطويل {{ربط بصفحة|331|16|٣٣١}}{{سج}}
البيت القصير {{ربط بصفحة|331|16|٣٣١}}{{سج}}
البيت المعمى {{ربط بصفحة|279|16|٢٧٩}}
{{نهاية أعمدة متعددة}}<noinclude>{{يمين|٤١٠}}</noinclude>
fk761z0yimqm6rer54zxwupviaxeaj9
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/405
104
307153
617349
617314
2026-08-13T13:11:10Z
RASHEEDYE
15342
/* صُححّت */
617349
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude><br/>— '''معاهد التنصيص على شواهد التلخيص'''، عبد الرحيم بن أحمد العباسي، السعادة، مصر، ١٣٦٧هـ — ١٩٤٧م.
<br/>— '''معجم الأدباء'''، ياقوت الحموي (٦٢٦هـ)، دار إحياء التراث العربي، بيروت.
<br/>— '''معجم الشعراء'''، محمد بن عمران المرزباني (٣٧٨هـ)، تحـ عبد الستار فراج، منشورات مكتبة النوري، دمشق.
<br/>— '''معجم القواعد العربية'''، عبد الغني الدقر، دار القلم، دمشق، ط١، ١٤٠٦هـ — ١٩٨٦م.
<br/>— '''معجم المؤلفين'''، عمر رضا كحالة، مكتبة المثنى ودار إحياء التراث العربي، بيروت، ١٣٧٦هـ — ١٩٥٧ م.
<br/>— '''مغني اللبيب عن كتب الأعاريب'''، ابن هشام الأنصاري (٧٦١هـ)، تحـ د. مازن المبارك ومحمد علي حمد الله، دار الفكر، بيروت، ط٥، ١٩٧٩ م.
<br/>— '''مفاتيح العلوم'''، محمد بن أحمد الخوارزمي (٣٨٧هـ)، تح إبراهيم الأبياري، دار الكتاب العربي، بيروت، ط١، ١٤٠٤ هـ — ١٩٨٤ م.
<br/>— '''مفتاح السعادة ومصباح السيادة'''، طاش كبري زاده (٩٦٨هـ)، دار الكتب العلمية، بيروت، ط١، ١٤٠٥ هـ — ١٩٨٥ م.
<br/>— '''مفتاح العلوم'''، يوسف بن محمد السكاكي (٦٢٦هـ )، ضبطه وشرحه الأستاذ نعيم زرزور، دار الكتب العلمية، بيروت، ط١، ١٤٠٣ هـ — ١٩٨٣ م.
<br/>— '''المفصل في علم العربية'''، الزمخشري (٥٣٨هـ)، دار الجيل، بيروت، ط٢.
<br/>— '''المقتبس في أخبار الأندلس'''، ابن حيان القرطبي، تح محمود علي مكي، لجنة إحياء التراث الإسلامي، القاهرة، ١٩٧١ م.
<br/>— '''ميزان الذهب'''، السيد أحمد الهاشمي، دار الكتاب العربي، سوريا.
<br/>{{خطأ| السطر ممسوح وغير واضح | الصواب | تعليق (اختياري)}}
<br/>{{خطأ| السطر ممسوح وغير واضح | الصواب | تعليق (اختياري)}}
<br/>— '''هدية العارفين في أسماء المؤلفين وآثار المصنفين'''، إسماعيل باشا البغدادي (١٣٣٩هـ)، دار الفكر، بيروت، ١٤٠٢هـ — ١٩٨٢م.
<br/>— '''همع الهوامع شرح جمع الجوامع'''، عبد الرحمن السيوطي (٩١١هـ)، بعناية السيد محمد بدر الدين النعساني، دار المعرفة، بيروت.
{{يسار|٤٠٣}}<noinclude></noinclude>
n5c9ggcodcm2r0f3rye87skqi01vumb
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/406
104
307154
617348
617315
2026-08-13T13:09:21Z
RASHEEDYE
15342
/* صُححّت */
617348
proofread-page
text/x-wiki
<noinclude><pagequality level="3" user="RASHEEDYE" /></noinclude><br/>— '''الوافي بالوفيات'''، صلاح الدين خليل بن أيبك الصفدي ( ٧٦٤ هـ )، باعتناء طائفة من أهل العلم، دار فرانز شتاينر بفيسبادن، ألمانية، ١٩٤٩ م — ١٩٨٠ م.
<br/>— '''الوافي في العروض والقوافي'''، الخطيب التبريزي ( ٥٠٢ هـ )، تحـ عمر يحيى — د. فخر الدين قباوة، المكتبة العربية بحلب، ط١، ١٣٩٠ هـ — ١٩٧٠ م، ط٤، ١٤٠٧ هـ — ١٩٨٦ م.
<br/>— '''الوجيز في أصول استنباط الأحكام في الشريعة الإسلامية'''، د. عبد اللطيف فرفور، دار الإمام الأوزاعي، دمشق، ١٤٠٥ هـ — ١٩٨٥ م.
<br/>— '''وفيات الأعيان'''، ابن خلكان ( ٦٨١ هـ )، تحـ د. إحسان عباس، دار صادر، بيروت، ١٣٩٨ هـ — ١٩٧٨ م.
<br/>— '''يتيمة الدهر في محاسن أهل العصر'''، للثعالبي ( ٤٣٠ هـ )، محمد محيي الدين عبد الحميد، مطبعة السعادة مصر، ١٣٧٢ هـ.
<br />
{{ع3|ب — الكتب المخطوطة}}
<br />
<br/>— '''جهود المالقي الصوتية في كتابه الدر النثير''' — دراسة وتحقيق محمد حسان الطيان، إشراف د. شاكر الفحام، « رسالة جامعية أعدت لنيل درجة الدكتوراه في الآداب » جامعة دمشق ١٤١٤ هـ — ١٩٩٤ م.
<br/>— '''دراسة إحصائية لدوران الحروف العربية المشكولة'''، مروان البواب، مركز الدراسات والبحوث العلمية، دمشق ١٩٨٥ م.
<br/>— '''شوق المستهام في معرفة رموز الأقلام'''، لابن وحشية، مصورة عن نسخة مكتبة باريس الوطنية، رقم ٦٨٠٥.
<br/>— '''المعجم العربي دراسة إحصائية صوتية مخبرية'''، محمد حسان الطيان، رسالة ماجستير، جامعة دمشق — ١٩٨٤ م.
<br/>— '''المعجم العربي دراسة إحصائية لدوران الحروف في الجذور العربية'''، يحيى مير علم، رسالة ماجستير، جامعة دمشق، ١٩٨٣ م.
<br /><br /><br /><br />
{{يمين|٤٠٤}}<noinclude></noinclude>
jme8wpl4pell8vsd7c8t5tcm0o4vq51
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/407
104
307155
617347
617316
2026-08-13T13:09:12Z
RASHEEDYE
15342
617347
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{ع3|ج ــ المقالات والبحوث}}
<br />
<br/>— '''رسالة في استخراج المعمى'''، لأبي الحسن محمد بن طباطبا ، تح د . محمد بن عبد الرحمن المذلق ، مجلة معهد المخطوطات ، مج٣٢ ، ١٤٠٨ هـ ــ ١٩٨٨ م .
<br/>— '''رسالة يعقوب الكندي في اللغة'''، تح محمد حسان الطيان ، مجلة مجمع اللغة العربية بدمشق ، مج٦٠/ ج٣ ــ د ، ١٤٠٥ هـ ــ ١٩٨٥ م .
<br/>— '''قاعدة معطيات للجذور العربية'''، محمد حسان الطيان ويحيى مير علم ، بحث قدم في المؤتمر الثاني حول اللغويات الحسابية ــ الكويت ، ١٩٨٩ م .
<br/>— '''المالقي الأندلسي وجهوده في علم الأصوات'''، محمد حسان الطيان ود . محمد مراياتي ، بحث قدم في الندوة العالمية الخامسة لتاريخ العلوم عند العرب ــ غرناطة ١٩٩٢ م .
<br/>— '''معالجة الكلام ــ تطبيق على اللغة العربية'''، د . محمد مراياتي ، بحث قدم في ندوة استخدام اللغة العربية في الحاسب الآلي ، الكويت ، ١٩٨٥ م .
<br/>— '''المعجم الحاسوبي في نظام خبير للغة العربية'''، د . محمد مراياتي ، مروان البواب ، يحيى مير علم ، محمد حسان الطيان ، بحث قدم في المؤتمر الأول حول الكتابة العلمية باللغة العربية ، بنغازي ــ ليبية ، ١٩٩٠ م .
<br/>— '''النظام الصرفي النحوي للعربية بالحاسب'''، مروان البواب ويحيى مير علم ومحمد حسان الطيان بإشراف د . محمد مراياتي ، بحث قدم في المؤتمر الثاني حول اللغويات الحسابية ، الكويت ، ٢٦ ــ ٢٩ تشرين الثاني ١٩٨٩ م .
{{يسار|٤٠٥}}<noinclude></noinclude>
roqkhbltfe5ghtshiown9p739ctf066
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/409
104
307156
617353
617317
2026-08-13T13:33:16Z
HubaishanBot
64056
استبدال الأرقام العربية المشرقية بالأرقام الفارسية
617353
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>الفهارس الفنية "
- فهرس مصطلحات علم التعمية واستخراج العمى عند العرب
٢ فهرس مصطلحات التعمية الأجنبية
- فهرس النصوص المعماة
٤- فهرس اللغات والأقلام واللهجات
ه- فهرس الجداول والأشكال والمصورات
٦- فهرس مصطلحات علم اللغة والنحو والصوتيات
فهرس العروض والقافية
- فهرس المفردات اللغوية
- فهرس العبارات والأقوال
١٠ - فهرس الآيات
١١ - فهرس الأشعار
١٢ - فهرس الأعلام
١٣ - فهرس الكتب والرسائل والمجلات
١٤ - فهرس المواضع والبلدان
١٥ - فهرس أسماء المكتبات
١٦ - فهرس الأقوام
١٧ - فهرس الموضوعات
٤٠٨-٤٢٢
٤٢٣-٤٢٤
٤٢٥
٤٢٦
٤٢٧-٤٢٩
٤٣٤٤٣٠
٤٣٥-٤٣٩
٤٤٠-٤٤٣
٤٤٣
ttt
٤٤٥-٤٤٩
٤٥٣٠٠٤٥٠
٤٥٤-٤٥٥
٤٥٥
٤٥٦
*
٤٥٧-٤٦٢
شارك في إعداد هذه الفهارس على الحاسوب الأستاذ مروان البواب والسيد أسامة رجب.
٤٠٧<noinclude></noinclude>
g1teayaq1sna2iqj4gjf83p6ngdxxt1
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/410
104
307157
617350
617318
2026-08-13T13:24:08Z
RASHEEDYE
15342
617350
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{ع3|فهرس مصطلحات علم التعمية واستخراج المُعَمَّى عند العرب}}
<br/><br/>
{{أعمدة متعددة}}
{{وسط|( أ )}}
<br/>ائتلاف {{ربط بصفحة|96|16|٩٦}}{{سج}}
ائتلاف الحروف {{ربط بصفحة|142|16|١٤٢}}{{سج}}
ائتلاف الحروف واختلافها {{ربط بصفحة|130|16|١٣٠}}، {{ربط بصفحة|133|16|١٣٣}}{{سج}}
ائتلاف الحروف وتنافرها {{ربط بصفحة|140|16|١٤٠}}، {{ربط بصفحة|144|16|١٤٤}}، {{ربط بصفحة|145|16|١٤٥}}{{سج}}
<br />
الإبدال {{ربط بصفحة|157|16|١٥٧}}، {{ربط بصفحة|194|16|١٩٤}}، {{ربط بصفحة|199|16|١٩٩}}{{سج}}
إبدال الحروف {{ربط بصفحة|101|16|١٠١}}، {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|117|16|١١٧}}{{سج}}
إبدال بعض الحروف وفق مفتاح معين {{ربط بصفحة|111|16|١١١}}، {{ربط بصفحة|117|16|١١٧}}، {{ربط بصفحة|236|16|٢٣٦}}{{سج}}
الإبدال ذو رباط وشرح {{ربط بصفحة|46|16|٤٦}}{{سج}}
أبيات حروف المعجم {{ربط بصفحة|236|16|٢٣٦}}{{سج}}
أبيات سهلة الإخراج {{ربط بصفحة|332|16|٣٣٢}}، {{ربط بصفحة|352|16|٣٥٢}}{{سج}}
أبيات عويصة {{ربط بصفحة|349|16|٣٤٩}}{{سج}}
أبيات المعاياة {{ربط بصفحة|287|16|٢٨٧}}، {{ربط بصفحة|332|16|٣٣٢}}، {{ربط بصفحة|347|16|٣٤٧}}، {{ربط بصفحة|352|16|٣٥٢}}، {{ربط بصفحة|354|16|٣٥٤}}{{سج}}
اتساق الكلام وترتيبه {{ربط بصفحة|49|16|٤٩}}، {{ربط بصفحة|73|16|٧٣}}{{سج}}
إجازة الأشكال {{ربط بصفحة|48|16|٤٨}}، {{ربط بصفحة|72|16|٧٢}}{{سج}}
الأحاديات {{ربط بصفحة|364|16|٣٦٤}}{{سج}}
الأُحْجِيَّة {{ربط بصفحة|325|16|٣٢٥}}{{سج}}
الإحصاء {{ربط بصفحة|192|16|١٩٢}}{{سج}}
إحصاء الأشكال {{ربط بصفحة|75|16|٧٥}}{{سج}}
إحصاء الترجمة {{ربط بصفحة|314|16|٣١٤}}{{سج}}
إحصاء الجذور {{ربط بصفحة|144|16|١٤٤}}
{{فاصل أعمدة متعددة|خط1=1px solid black}}
<br/>إحصاء الحروف {{ربط بصفحة|144|16|١٤٤}}، {{ربط بصفحة|184|16|١٨٤}}{{سج}}
إحصاء الكلام المستعمل {{ربط بصفحة|144|16|١٤٤}}{{سج}}
إحصاء حروف الشعر {{ربط بصفحة|314|16|٣١٤}}{{سج}}
إحصاء دوران الحروف {{ربط بصفحة|126|16|١٢٦}}{{سج}}
إحصاء ورود الأشكال {{ربط بصفحة|141|16|١٤١}}{{سج}}
إحصائيات الكندي لتردد الحروف {{ربط بصفحة|58|16|٥٨}}{{سج}}
اختراع أشكال ورُموز تستبدل بالحروف {{ربط بصفحة|303|16|٣٠٣}}{{سج}}
اختراع الصور {{ربط بصفحة|111|16|١١١}}{{سج}}
الاشتقاق في مراتب الحروف والثنائيات {{ربط بصفحة|60|16|٦٠}}{{سج}}
إخراج المعمى من الشعر {{ربط بصفحة|299|16|٢٩٩}}، {{ربط بصفحة|313|16|٣١٣}}{{سج}}
الإخفاء {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|188|16|١٨٨}}{{سج}}
الإخفاء باستعمال الحروف {{ربط بصفحة|43|16|٤٣}}{{سج}}
الإخفاء بتغيير بعض الحروف {{ربط بصفحة|44|16|٤٤}}{{سج}}
الإخفاء ضمن كلمات {{ربط بصفحة|43|16|٤٣}}، {{ربط بصفحة|44|16|٤٤}}{{سج}}
إدارة الترجمة {{ربط بصفحة|320|16|٣٢٠}}{{سج}}
إدارة الترجمة في الشعر {{ربط بصفحة|297|16|٢٩٧}}، {{ربط بصفحة|305|16|٣٠٥}}{{سج}}
أدوات الاستخراج {{ربط بصفحة|326|16|٣٢٦}}{{سج}}
أرباب الترجمة {{ربط بصفحة|57|16|٥٧}}، {{ربط بصفحة|81|16|٨١}}{{سج}}
أرْجَحَ {{ربط بصفحة|302|16|٣٠٢}}{{سج}}
ازدواج الكلام {{ربط بصفحة|318|16|٣١٨}}{{سج}}
استبدال أسماء أجناس معينة بالحروف {{ربط بصفحة|303|16|٣٠٣}}{{سج}}
استبدال الأرقام بالحروف {{ربط بصفحة|170|16|١٧٠}}{{سج}}
استحالة استخراج النص {{ربط بصفحة|372|16|٣٧٢}}
{{نهاية أعمدة متعددة}}
{{يسار|٤٠٨}}<noinclude></noinclude>
8jqxinhmlyuk644o91oyikwl5mqgqw5
617351
617350
2026-08-13T13:26:06Z
RASHEEDYE
15342
617351
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{ع3|فهرس مصطلحات علم التعمية واستخراج المُعَمَّى عند العرب}}
<br/><br/>
{{أعمدة متعددة}}
{{وسط|( أ )}}
<br/>ائتلاف {{ربط بصفحة|96|16|٩٦}}{{سج}}
ائتلاف الحروف {{ربط بصفحة|142|16|١٤٢}}{{سج}}
ائتلاف الحروف واختلافها {{ربط بصفحة|130|16|١٣٠}}، {{ربط بصفحة|133|16|١٣٣}}{{سج}}
ائتلاف الحروف وتنافرها {{ربط بصفحة|140|16|١٤٠}}، {{ربط بصفحة|144|16|١٤٤}}، {{ربط بصفحة|145|16|١٤٥}}{{سج}}
<br />
الإبدال {{ربط بصفحة|157|16|١٥٧}}، {{ربط بصفحة|194|16|١٩٤}}، {{ربط بصفحة|199|16|١٩٩}}{{سج}}
إبدال الحروف {{ربط بصفحة|101|16|١٠١}}، {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|117|16|١١٧}}{{سج}}
إبدال بعض الحروف وفق مفتاح معين {{ربط بصفحة|111|16|١١١}}، {{ربط بصفحة|117|16|١١٧}}، {{ربط بصفحة|236|16|٢٣٦}}{{سج}}
الإبدال ذو رباط وشرح {{ربط بصفحة|46|16|٤٦}}{{سج}}
أبيات حروف المعجم {{ربط بصفحة|236|16|٢٣٦}}{{سج}}
أبيات سهلة الإخراج {{ربط بصفحة|332|16|٣٣٢}}، {{ربط بصفحة|352|16|٣٥٢}}{{سج}}
أبيات عويصة {{ربط بصفحة|349|16|٣٤٩}}{{سج}}
أبيات المعاياة {{ربط بصفحة|287|16|٢٨٧}}، {{ربط بصفحة|332|16|٣٣٢}}، {{ربط بصفحة|347|16|٣٤٧}}، {{ربط بصفحة|352|16|٣٥٢}}، {{ربط بصفحة|354|16|٣٥٤}}{{سج}}
اتساق الكلام وترتيبه {{ربط بصفحة|49|16|٤٩}}، {{ربط بصفحة|73|16|٧٣}}{{سج}}
إجازة الأشكال {{ربط بصفحة|48|16|٤٨}}، {{ربط بصفحة|72|16|٧٢}}{{سج}}
الأحاديات {{ربط بصفحة|364|16|٣٦٤}}{{سج}}
الأُحْجِيَّة {{ربط بصفحة|325|16|٣٢٥}}{{سج}}
الإحصاء {{ربط بصفحة|192|16|١٩٢}}{{سج}}
إحصاء الأشكال {{ربط بصفحة|75|16|٧٥}}{{سج}}
إحصاء الترجمة {{ربط بصفحة|314|16|٣١٤}}{{سج}}
إحصاء الجذور {{ربط بصفحة|144|16|١٤٤}}
{{فاصل أعمدة متعددة|خط1=1px solid black}}
<br/>إحصاء الحروف {{ربط بصفحة|144|16|١٤٤}}، {{ربط بصفحة|184|16|١٨٤}}{{سج}}
إحصاء الكلام المستعمل {{ربط بصفحة|144|16|١٤٤}}{{سج}}
إحصاء حروف الشعر {{ربط بصفحة|314|16|٣١٤}}{{سج}}
إحصاء دوران الحروف {{ربط بصفحة|126|16|١٢٦}}{{سج}}
إحصاء ورود الأشكال {{ربط بصفحة|141|16|١٤١}}{{سج}}
إحصائيات الكندي لتردد الحروف {{ربط بصفحة|58|16|٥٨}}{{سج}}
اختراع أشكال ورُموز تستبدل بالحروف {{ربط بصفحة|303|16|٣٠٣}}{{سج}}
اختراع الصور {{ربط بصفحة|111|16|١١١}}{{سج}}
الاشتقاق في مراتب الحروف والثنائيات {{ربط بصفحة|60|16|٦٠}}{{سج}}
إخراج المعمى من الشعر {{ربط بصفحة|299|16|٢٩٩}}، {{ربط بصفحة|313|16|٣١٣}}{{سج}}
الإخفاء {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|188|16|١٨٨}}{{سج}}
الإخفاء باستعمال الحروف {{ربط بصفحة|43|16|٤٣}}{{سج}}
الإخفاء بتغيير بعض الحروف {{ربط بصفحة|44|16|٤٤}}{{سج}}
الإخفاء ضمن كلمات {{ربط بصفحة|43|16|٤٣}}، {{ربط بصفحة|44|16|٤٤}}{{سج}}
إدارة الترجمة {{ربط بصفحة|320|16|٣٢٠}}{{سج}}
إدارة الترجمة في الشعر {{ربط بصفحة|297|16|٢٩٧}}، {{ربط بصفحة|305|16|٣٠٥}}{{سج}}
أدوات الاستخراج {{ربط بصفحة|326|16|٣٢٦}}{{سج}}
أرباب الترجمة {{ربط بصفحة|57|16|٥٧}}، {{ربط بصفحة|81|16|٨١}}{{سج}}
أرْجَحَ {{ربط بصفحة|302|16|٣٠٢}}{{سج}}
ازدواج الكلام {{ربط بصفحة|318|16|٣١٨}}{{سج}}
استبدال أسماء أجناس معينة بالحروف {{ربط بصفحة|303|16|٣٠٣}}{{سج}}
استبدال الأرقام بالحروف {{ربط بصفحة|170|16|١٧٠}}{{سج}}
استحالة استخراج النص {{ربط بصفحة|372|16|٣٧٢}}
{{نهاية أعمدة متعددة}}
{{يمين|٤٠٨}}<noinclude></noinclude>
qnh498txwwycy610amnfzfiyt0g7vqr
617375
617351
2026-08-13T18:13:53Z
RASHEEDYE
15342
617375
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{ع3|فهرس مصطلحات علم التعمية واستخراج المُعَمَّى عند العرب}}
<br/><br/>
{{أعمدة متعددة}}
{{وسط|( أ )}}
<br/>ائتلاف {{ربط بصفحة|96|16|٩٦}}{{سج}}
ائتلاف الحروف {{ربط بصفحة|142|16|١٤٢}}{{سج}}
ائتلاف الحروف واختلافها {{ربط بصفحة|130|16|١٣٠}}، {{ربط بصفحة|133|16|١٣٣}}{{سج}}
ائتلاف الحروف وتنافرها {{ربط بصفحة|140|16|١٤٠}}، {{ربط بصفحة|144|16|١٤٤}}، {{ربط بصفحة|145|16|١٤٥}}{{سج}}
الإبدال {{ربط بصفحة|157|16|١٥٧}}، {{ربط بصفحة|194|16|١٩٤}}، {{ربط بصفحة|199|16|١٩٩}}{{سج}}
إبدال الحروف {{ربط بصفحة|101|16|١٠١}}، {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|117|16|١١٧}}{{سج}}
إبدال بعض الحروف وفق مفتاح معين {{ربط بصفحة|111|16|١١١}}، {{ربط بصفحة|117|16|١١٧}}، {{ربط بصفحة|236|16|٢٣٦}}{{سج}}
الإبدال ذو رباط وشرح {{ربط بصفحة|46|16|٤٦}}{{سج}}
أبيات حروف المعجم {{ربط بصفحة|236|16|٢٣٦}}{{سج}}
أبيات سهلة الإخراج {{ربط بصفحة|332|16|٣٣٢}}، {{ربط بصفحة|352|16|٣٥٢}}{{سج}}
أبيات عويصة {{ربط بصفحة|349|16|٣٤٩}}{{سج}}
أبيات المعاياة {{ربط بصفحة|287|16|٢٨٧}}، {{ربط بصفحة|332|16|٣٣٢}}، {{ربط بصفحة|347|16|٣٤٧}}، {{ربط بصفحة|352|16|٣٥٢}}، {{ربط بصفحة|354|16|٣٥٤}}{{سج}}
اتساق الكلام وترتيبه {{ربط بصفحة|49|16|٤٩}}، {{ربط بصفحة|73|16|٧٣}}{{سج}}
إجازة الأشكال {{ربط بصفحة|48|16|٤٨}}، {{ربط بصفحة|72|16|٧٢}}{{سج}}
الأحاديات {{ربط بصفحة|364|16|٣٦٤}}{{سج}}
الأُحْجِيَّة {{ربط بصفحة|325|16|٣٢٥}}{{سج}}
الإحصاء {{ربط بصفحة|192|16|١٩٢}}{{سج}}
إحصاء الأشكال {{ربط بصفحة|75|16|٧٥}}{{سج}}
إحصاء الترجمة {{ربط بصفحة|314|16|٣١٤}}{{سج}}
إحصاء الجذور {{ربط بصفحة|144|16|١٤٤}}
{{فاصل أعمدة متعددة|خط1=1px solid black}}
<br/>إحصاء الحروف {{ربط بصفحة|144|16|١٤٤}}، {{ربط بصفحة|184|16|١٨٤}}{{سج}}
إحصاء الكلام المستعمل {{ربط بصفحة|144|16|١٤٤}}{{سج}}
إحصاء حروف الشعر {{ربط بصفحة|314|16|٣١٤}}{{سج}}
إحصاء دوران الحروف {{ربط بصفحة|126|16|١٢٦}}{{سج}}
إحصاء ورود الأشكال {{ربط بصفحة|141|16|١٤١}}{{سج}}
إحصائيات الكندي لتردد الحروف {{ربط بصفحة|58|16|٥٨}}{{سج}}
اختراع أشكال ورُموز تستبدل بالحروف {{ربط بصفحة|303|16|٣٠٣}}{{سج}}
اختراع الصور {{ربط بصفحة|111|16|١١١}}{{سج}}
الاشتقاق في مراتب الحروف والثنائيات {{ربط بصفحة|60|16|٦٠}}{{سج}}
إخراج المعمى من الشعر {{ربط بصفحة|299|16|٢٩٩}}، {{ربط بصفحة|313|16|٣١٣}}{{سج}}
الإخفاء {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|188|16|١٨٨}}{{سج}}
الإخفاء باستعمال الحروف {{ربط بصفحة|43|16|٤٣}}{{سج}}
الإخفاء بتغيير بعض الحروف {{ربط بصفحة|44|16|٤٤}}{{سج}}
الإخفاء ضمن كلمات {{ربط بصفحة|43|16|٤٣}}، {{ربط بصفحة|44|16|٤٤}}{{سج}}
إدارة الترجمة {{ربط بصفحة|320|16|٣٢٠}}{{سج}}
إدارة الترجمة في الشعر {{ربط بصفحة|297|16|٢٩٧}}، {{ربط بصفحة|305|16|٣٠٥}}{{سج}}
أدوات الاستخراج {{ربط بصفحة|326|16|٣٢٦}}{{سج}}
أرباب الترجمة {{ربط بصفحة|57|16|٥٧}}، {{ربط بصفحة|81|16|٨١}}{{سج}}
أرتج{{ربط بصفحة|302|16|٣٠٢}}{{سج}}
ازدواج الكلام {{ربط بصفحة|318|16|٣١٨}}{{سج}}
استبدال أسماء أجناس معينة بالحروف {{ربط بصفحة|303|16|٣٠٣}}{{سج}}
استبدال الأرقام بالحروف {{ربط بصفحة|170|16|١٧٠}}{{سج}}
استحالة استخراج النص {{ربط بصفحة|372|16|٣٧٢}}
{{نهاية أعمدة متعددة}}
{{يمين|٤٠٨}}<noinclude></noinclude>
mfviopcfl0cjnzewqlbiwbyacoo2c3c
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/411
104
307159
617354
617320
2026-08-13T13:33:26Z
HubaishanBot
64056
استبدال الأرقام العربية المشرقية بالأرقام الفارسية
617354
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>الاستخراج
استيراد الأدوية
استماع القادم قادمة
استخراج الواحم المعتمد على التحليل
٦٢، ١٢٥ | استخراج للصنوعات
Y1
العام الى الفم
14147140142
الإجمالي
استخراج الوجة التي لاكتحل
٦٠ استخراج العمى من الشعر للمنظوم
٢ استخراج العمى من الشر والشعر
استخراج الترجمة بالإعاشة البسيطة ١٤١ | استخراج الوزن
استخراج الترجمة بالتبديل البسيط
or الاستخراج بطريقة التحليل الإحصائي
استخراج الترجمة بالتبديلي البسيط
استخراج تعدية الكلام للشور
وللألف شكلات
استخراج تعمية مركية
المتخراج الترجمة ذات الأشكال
قريبة التواتر
استخراج حروف القافية
١٥٤ ٨٠ استخراج ماترحم بالإعاضة البسيطة
استخراج التعمية التي تجعل بينها أشكال أقفال ١٣١ استتملك الموضوعات
المتخراج التعمية التي تكون تغير
أشكال الحروف بأشكال مبتدعة
استعصاء الاستخراج
١٢١ - استعمال الأحاديات
استخراج التعمية التي تكون بتغيير حلية الشكل ١٣٠ | استعمال الأرقام في التعمية بالإحاضة
٢٩٧
٢٩٧
٣٠٧
٦٢
١٩١
١٦٤
٣٧٦
١٤٠
٣٦٢
استخراج الحمية التي تكون تغير
نصب الحروف
أو الإبدال
١٣١ استعمال الترجمة في حليل الأمور
استخراج التعمية التي ينقص منها حروف ١٣١ استعمال الثلاثيات
استخراج التعمية المتقدمة
٥٢ استعمال لازدويجات
٢٢٨
٦٢
٣٦٩
٣٦٩
استخراج التسمية الركبة ١٣١، ١٦٨، ١٧٢ استعمال عدة أرقام تتعمية حرف بالإعاضة ٢٢٨
استخراج التعمية ذات الرباط
استخراج الثلاثيات
استخراج الحروف
استخراج القلب
١٣١ استعمال عدة رموز لكل حرف
٣٦٢ ٣٧٢ ٣٨٥ | استعمال كسور الربع والنصف
٣٨٨،٣٨٧ استنباط البسيط
٢٠٧ استنباط المزاحم
١٦٢ استنباط التراجم العويصة
استخراج المزدوجات ٣٦٧ ، ١٣٨٠ ١٣٨٧ ٣٨٨ استنباط التراجم العويصة المسددة
DY
١٧٤
٢٣٩
١٣
٥٢
٧٩
الاستخراج المستحيل
٢٦٢ استنباط الحروف
٤٢
٤٠٩<noinclude></noinclude>
2806dile891pw9x4w0tox82nuclzh6p
617355
617354
2026-08-13T13:34:19Z
RASHEEDYE
15342
617355
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{أعمدة متعددة}}
<br/>الاستخراج {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|125|16|١٢٥}}{{سج}}
<br/>{{خطأ|ممسوح وغير واضح | الصواب | تعليق (اختياري)}}
<br/>{{خطأ|ممسوح وغير واضح | الصواب | تعليق (اختياري)}}
<br/>{{خطأ|ممسوح وغير واضح | الصواب | تعليق (اختياري)}}
استخراج التراجم المعتمد على التحليل الإحصائي {{ربط بصفحة|60|16|٦٠}}{{سج}}
استخراج الترجمة التي لا تنحل {{ربط بصفحة|42|16|٤٢}}{{سج}}
استخراج الترجمة بالإعاضة البسيطة {{ربط بصفحة|141|16|١٤١}}{{سج}}
استخراج الترجمة بالتبديل البسيط {{ربط بصفحة|53|16|٥٣}}{{سج}}
استخراج الترجمة بالتبديل البسيط وللألف شكلان {{ربط بصفحة|80|16|٨٠}}{{سج}}
استخراج الترجمة ذات الأشكال قريبة التواتر {{ربط بصفحة|54|16|٥٤}}، {{ربط بصفحة|80|16|٨٠}}{{سج}}
استخراج التعمية التي تجعل بينها أشكال أطفال {{ربط بصفحة|131|16|١٣١}}{{سج}}
استخراج التعمية التي تكون بتغيير أشكال الحروف بأشكال مبتدعة {{ربط بصفحة|131|16|١٣١}}{{سج}}
استخراج التعمية التي تكون بتغيير حلية الشكل {{ربط بصفحة|130|16|١٣٠}}{{سج}}
استخراج التعمية التي تكون بتغيير نسب الحروف {{ربط بصفحة|131|16|١٣١}}{{سج}}
استخراج التعمية التي ينقص منها حروف {{ربط بصفحة|131|16|١٣١}}{{سج}}
استخراج التعمية المتقدمة {{ربط بصفحة|52|16|٥٢}}{{سج}}
استخراج التعمية المركبة {{ربط بصفحة|131|16|١٣١}}، {{ربط بصفحة|168|16|١٦٨}}، {{ربط بصفحة|172|16|١٧٢}}{{سج}}
استخراج التعمية ذات الرباط {{ربط بصفحة|131|16|١٣١}}{{سج}}
استخراج الثلاثيات {{ربط بصفحة|362|16|٣٦٢}}، {{ربط بصفحة|372|16|٣٧٢}}، {{ربط بصفحة|385|16|٣٨٥}}، {{ربط بصفحة|387|16|٣٨٧}}، {{ربط بصفحة|388|16|٣٨٨}}{{سج}}
استخراج الحروف {{ربط بصفحة|307|16|٣٠٧}}{{سج}}
استخراج القلب {{ربط بصفحة|162|16|١٦٢}}{{سج}}
استخراج المزدوجات {{ربط بصفحة|362|16|٣٦٢}}، {{ربط بصفحة|385|16|٣٨٥}}، {{ربط بصفحة|387|16|٣٨٧}}، {{ربط بصفحة|388|16|٣٨٨}}{{سج}}
الاستخراج المستحيل {{ربط بصفحة|372|16|٣٧٢}}
{{فاصل أعمدة متعددة|خط1=1px solid black}}
<br/>استخراج المصنوعات {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|78|16|٧٨}}{{سج}}
استخراج المعمى من الشعر {{ربط بصفحة|101|16|١٠١}}، {{ربط بصفحة|106|16|١٠٦}}، {{ربط بصفحة|112|16|١١٢}}، {{ربط بصفحة|194|16|١٩٤}}، {{ربط بصفحة|195|16|١٩٥}}، {{ربط بصفحة|197|16|١٩٧}}، {{ربط بصفحة|267|16|٢٦٧}}، {{ربط بصفحة|298|16|٢٩٨}}، {{ربط بصفحة|336|16|٣٣٦}}، {{ربط بصفحة|357|16|٣٥٧}}{{سج}}
استخراج المعمى من الشعر المنظوم{{ربط بصفحة|297|16|٢٩٧}}{{سج}}
استخراج المعمى من النثر والشعر {{ربط بصفحة|297|16|٢٩٧}}{{سج}}
استخراج الوزن {{ربط بصفحة|307|16|٣٠٧}}{{سج}}
الاستخراج بطريقة التحليل الإحصائي {{ربط بصفحة|62|16|٦٢}}{{سج}}
استخراج تعمية الكلام للنثر {{ربط بصفحة|191|16|١٩١}}{{سج}}
استخراج تعمية مركبة {{ربط بصفحة|164|16|١٦٤}}{{سج}}
استخراج حروف القافية {{ربط بصفحة|326|16|٣٢٦}}{{سج}}
استخراج ما ترجم بالإعاضة البسيطة {{ربط بصفحة|140|16|١٤٠}}{{سج}}
استدراك الموضوعات {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|78|16|٧٨}}{{سج}}
استقصاء الاستخراج {{ربط بصفحة|302|16|٣٠٢}}{{سج}}
استعمال الأحاديات {{ربط بصفحة|262|16|٢٦٢}}{{سج}}
استعمال الأرقام في التعمية بالإعاضة أو الإبدال {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
استعمال الترجمة في جليل الأمور {{ربط بصفحة|62|16|٦٢}}{{سج}}
استعمال الثلاثيات {{ربط بصفحة|269|16|٢٦٩}}{{سج}}
استعمال للمزدوجات {{ربط بصفحة|269|16|٢٦٩}}{{سج}}
استعمال عدة أرقام لتعمية حرف بالإعاضة {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
استعمال عدة رموز لكل حرف {{ربط بصفحة|57|16|٥٧}}{{سج}}
استعمال كسور الربع والنصف {{ربط بصفحة|174|16|١٧٤}}{{سج}}
استنباط البسيط {{ربط بصفحة|239|16|٢٣٩}}{{سج}}
استنباط الواجم {{ربط بصفحة|63|16|٦٣}}{{سج}}
استنباط التراجم العويصة {{ربط بصفحة|52|16|٥٢}}{{سج}}
استنباط التراجم العويصة المسددة {{ربط بصفحة|79|16|٧٩}}{{سج}}
استنباط الحروف {{ربط بصفحة|42|16|٤٢}}
{{نهاية أعمدة متعددة}}<noinclude>{{يسار|٤٠٩}}</noinclude>
h13vd4z1y0hd6pqoshnvg2iu8rrvj76
617356
617355
2026-08-13T13:35:54Z
RASHEEDYE
15342
ضبط وتنسيق
617356
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{أعمدة متعددة}}
<br/>الاستخراج {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|125|16|١٢٥}}{{سج}}
<br/>{{خطأ|ممسوح وغير واضح | الصواب | تعليق (اختياري)}}
<br/>{{خطأ|ممسوح وغير واضح | الصواب | تعليق (اختياري)}}
<br/>{{خطأ|ممسوح وغير واضح | الصواب | تعليق (اختياري)}}
<br/>استخراج التراجم المعتمد على التحليل الإحصائي {{ربط بصفحة|60|16|٦٠}}{{سج}}
استخراج الترجمة التي لا تنحل {{ربط بصفحة|42|16|٤٢}}{{سج}}
استخراج الترجمة بالإعاضة البسيطة {{ربط بصفحة|141|16|١٤١}}{{سج}}
استخراج الترجمة بالتبديل البسيط {{ربط بصفحة|53|16|٥٣}}{{سج}}
استخراج الترجمة بالتبديل البسيط وللألف شكلان {{ربط بصفحة|80|16|٨٠}}{{سج}}
استخراج الترجمة ذات الأشكال قريبة التواتر {{ربط بصفحة|54|16|٥٤}}، {{ربط بصفحة|80|16|٨٠}}{{سج}}
استخراج التعمية التي تجعل بينها أشكال أطفال {{ربط بصفحة|131|16|١٣١}}{{سج}}
استخراج التعمية التي تكون بتغيير أشكال الحروف بأشكال مبتدعة {{ربط بصفحة|131|16|١٣١}}{{سج}}
استخراج التعمية التي تكون بتغيير حلية الشكل {{ربط بصفحة|130|16|١٣٠}}{{سج}}
استخراج التعمية التي تكون بتغيير نصب الحروف {{ربط بصفحة|131|16|١٣١}}{{سج}}
استخراج التعمية التي ينقص منها حروف {{ربط بصفحة|131|16|١٣١}}{{سج}}
استخراج التعمية المتقدمة {{ربط بصفحة|52|16|٥٢}}{{سج}}
استخراج التعمية المركبة {{ربط بصفحة|131|16|١٣١}}، {{ربط بصفحة|168|16|١٦٨}}، {{ربط بصفحة|172|16|١٧٢}}{{سج}}
استخراج التعمية ذات الرباط {{ربط بصفحة|131|16|١٣١}}{{سج}}
استخراج الثلاثيات {{ربط بصفحة|362|16|٣٦٢}}، {{ربط بصفحة|372|16|٣٧٢}}، {{ربط بصفحة|385|16|٣٨٥}}، {{ربط بصفحة|387|16|٣٨٧}}، {{ربط بصفحة|388|16|٣٨٨}}{{سج}}
استخراج الحروف {{ربط بصفحة|307|16|٣٠٧}}{{سج}}
استخراج القلب {{ربط بصفحة|162|16|١٦٢}}{{سج}}
استخراج المزدوجات {{ربط بصفحة|362|16|٣٦٢}}، {{ربط بصفحة|385|16|٣٨٥}}، {{ربط بصفحة|387|16|٣٨٧}}، {{ربط بصفحة|388|16|٣٨٨}}{{سج}}
الاستخراج المستحيل {{ربط بصفحة|372|16|٣٧٢}}
{{فاصل أعمدة متعددة|خط1=1px solid black}}
<br/>استخراج المصنوعات {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|78|16|٧٨}}{{سج}}
استخراج المعمى من الشعر {{ربط بصفحة|101|16|١٠١}}، {{ربط بصفحة|106|16|١٠٦}}، {{ربط بصفحة|112|16|١١٢}}، {{ربط بصفحة|194|16|١٩٤}}، {{ربط بصفحة|195|16|١٩٥}}، {{ربط بصفحة|197|16|١٩٧}}، {{ربط بصفحة|267|16|٢٦٧}}، {{ربط بصفحة|298|16|٢٩٨}}، {{ربط بصفحة|336|16|٣٣٦}}، {{ربط بصفحة|357|16|٣٥٧}}{{سج}}
استخراج المعمى من الشعر المنظوم{{ربط بصفحة|297|16|٢٩٧}}{{سج}}
استخراج المعمى من النثر والشعر {{ربط بصفحة|297|16|٢٩٧}}{{سج}}
استخراج الوزن {{ربط بصفحة|307|16|٣٠٧}}{{سج}}
الاستخراج بطريقة التحليل الإحصائي {{ربط بصفحة|62|16|٦٢}}{{سج}}
استخراج تعمية الكلام للنثر {{ربط بصفحة|191|16|١٩١}}{{سج}}
استخراج تعمية مركبة {{ربط بصفحة|164|16|١٦٤}}{{سج}}
استخراج حروف القافية {{ربط بصفحة|326|16|٣٢٦}}{{سج}}
استخراج ما ترجم بالإعاضة البسيطة {{ربط بصفحة|140|16|١٤٠}}{{سج}}
استدراك الموضوعات {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|78|16|٧٨}}{{سج}}
استقصاء الاستخراج {{ربط بصفحة|302|16|٣٠٢}}{{سج}}
استعمال الأحاديات {{ربط بصفحة|262|16|٢٦٢}}{{سج}}
استعمال الأرقام في التعمية بالإعاضة أو الإبدال {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
استعمال الترجمة في جليل الأمور {{ربط بصفحة|62|16|٦٢}}{{سج}}
استعمال الثلاثيات {{ربط بصفحة|269|16|٢٦٩}}{{سج}}
استعمال للمزدوجات {{ربط بصفحة|269|16|٢٦٩}}{{سج}}
استعمال عدة أرقام لتعمية حرف بالإعاضة {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
استعمال عدة رموز لكل حرف {{ربط بصفحة|57|16|٥٧}}{{سج}}
استعمال كسور الربع والنصف {{ربط بصفحة|174|16|١٧٤}}{{سج}}
استنباط البسيط {{ربط بصفحة|239|16|٢٣٩}}{{سج}}
استنباط الواجم {{ربط بصفحة|63|16|٦٣}}{{سج}}
استنباط التراجم العويصة {{ربط بصفحة|52|16|٥٢}}{{سج}}
استنباط التراجم العويصة المسددة {{ربط بصفحة|79|16|٧٩}}{{سج}}
استنباط الحروف {{ربط بصفحة|42|16|٤٢}}
{{نهاية أعمدة متعددة}}<noinclude>{{يسار|٤٠٩}}</noinclude>
56ccuer0wnj2r74j97vt2siliit7xva
وحدة:مؤلف/شرح
828
307161
617366
2026-08-13T16:13:34Z
حبيشان
52457
أنشأ الصفحة ب'هذه الوحدة المستخدمة في {{قا|مؤلف}} المستعمل في نطاق مؤلف.'
617366
wikitext
text/x-wiki
هذه الوحدة المستخدمة في {{قا|مؤلف}} المستعمل في نطاق مؤلف.
8ty27w8ear5ycipvoh83p5rppwd5d76
وحدة:WdItem
828
307162
617367
2026-08-13T16:24:11Z
حبيشان
52457
استيراد من ar.wiktionary.org
617367
Scribunto
text/plain
-- Module: WdItem
-- Object-oriented Wikidata access module for Lua
-- Refactored from WikidataIB for direct Lua usage
require("strict")
local p = {}
local cdate -- initialise as nil and only load _complex_date function if needed
-- Module:Complex date is loaded lazily and has the following dependencies:
-- Module:Calendar
-- Module:ISOdate
-- Module:DateI18n
-- Module:I18n/complex date
-- Module:Ordinal
-- Module:I18n/ordinal
-- Module:Yesno
-- Module:Formatnum
-- Module:Linguistic
-- i18n configuration
local i18n = {
["errors"] = {
["property-not-found"] = "الخاصية غير موجودة.",
["entity-not-found"] = "الكيان على ويكي بيانات غير موجود.",
["unknown-claim-type"] = "نوع الادعاء غير معروف.",
["local-article-not-found"] = "المعرف متاح على ويكي بيانات، ولكن المقال غير متاح على ويكيبيديا",
},
["months"] = {
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"
},
["Unknown"] = "Unknown",
["NaN"] = "Not a number",
["missinginfocat"] = "[[تصنيف:Articles with missing Wikidata information]]",
["list separator"] = ", ",
["list separator-ar"] = "، ",
}
-- Date precision constants
local dp = {
[6] = "millennium",
[7] = "century",
[8] = "decade",
[9] = "year",
[10] = "month",
[11] = "day",
}
-- local options_aliases = {
-- ["osd"] = "onlysourced",
-- ["wdl"] = "wdlinks",
-- ["uabbr"] = "unitabbr",
-- ["qo"] = "qualsonly",
-- ["lp"] = "linkprefix",
-- ["lprefix"] = "linkprefix",
-- ["qlp"] = "qlinkprefix",
-- ["sn"] = "shortname",
-- ["uselbl"] = "uselabel",
-- ["pd"] = "plaindate",
-- ["qdf"] = "qualifierdateformat",
-- ["df"] = "qualifierdateformat",
-- ["qsn"] = "qshortname"
-- }
-- setmetatable(options_aliases, { __index = function(t, k) return k end })
-------------------------------------------------------------------------------
-- Internal helper functions
-------------------------------------------------------------------------------
local function in_array( needle, haystack )
if needle == nil then
return false
end
for n, v in ipairs( haystack ) do
if v == needle then
return n
end
end
return false
end
local function findLang(langcode)
local langobj
langcode = mw.text.trim(langcode or "")
if langcode ~= "" then
if mw.language.isKnownLanguageTag(langcode) then
langobj = mw.language.new(langcode)
end
else
langobj = mw.language.getContentLanguage()
end
return langobj and langobj.code
end
local function parseParam(param, default)
if param == nil then
return default
end
return param
end
local function setRanks(rank)
rank = (rank or ""):lower()
local ranks = {}
for w in string.gmatch(rank, "%a+") do
if w == "best" or w == "preferred" or w == "normal" or w == "deprecated" then
ranks[w] = true
end
end
if ranks.best or not next(ranks) then
ranks.preferred = true
ranks.normal = true
ranks.deprecated = false
end
return ranks
end
local function labelOrId(id, lang_t)
local langs = lang_t or {}
local label
for _,lang in ipairs(langs) do
label = mw.wikibase.getLabelByLang(id, lang)
if label ~= "" then
break;
end
end
label = label or mw.wikibase.getLabel(id)
if label then
return mw.text.nowiki(label), true
else
return id, false
end
end
local function roundto(x, sf)
if x == 0 then return 0 end
local s = 1
if x < 0 then
x = -x
s = -1
end
if sf < 1 then sf = 1 end
local p = 10 ^ (math.floor(math.log10(x)) - sf + 1)
x = math.floor(x / p + 0.5) * p * s
if x == math.floor(x) then x = math.floor(x) end
return x
end
local function decimalPrecision(x, p)
local s = 1
if x < 0 then
x = -x
s = -1
end
if not tonumber(p) then p = 1e-4
elseif p > 1 then p = 1
elseif p < 1e-6 then p = 1e-6
else p = 10 ^ math.floor(math.log10(p))
end
x = math.floor(x / p + 0.5) * p * s
if x == math.floor(x) then x = math.floor(x) end
if math.abs(x) < 1e-4 then x = string.format("%f", x) end
return x
end
local function decimalToDMS(x, p)
if not tonumber(p) then p = 1e-4 end
local d = math.floor(x)
local ms = (x - d) * 60
if p > 0.5 then
if ms > 30 then d = d + 1 end
ms = 0
end
local m = math.floor(ms)
local s = (ms - m) * 60
if p > 0.008 then
if s > 30 then m = m +1 end
s = 0
elseif p > 0.00014 then
s = math.floor(s + 0.5)
elseif p > 0.000014 then
s = math.floor(10 * s + 0.5) / 10
elseif p > 0.0000014 then
s = math.floor(100 * s + 0.5) / 100
else
s = math.floor(1000 * s + 0.5) / 1000
end
return d, m, s
end
local function rawValue(dataValue)
if dataValue.type == "string" then
return dataValue.value
elseif dataValue.type == "wikibase-entityid" then
return dataValue.value and dataValue.value.id
elseif dataValue.type == "monolingualtext" then
return dataValue.value.text
elseif dataValue.type == "quantity" then
return tonumber(dataValue.value.amount)
elseif dataValue.type == 'time' then
return dataValue.value.time
elseif dataValue.type == "globecoordinate" then
return dataValue.value.latitude .. '/' .. dataValue.value.longitude
end
end
local function compareValue(dataValue, strValue)
return rawValue(dataValue) == strValue
end
local function dateFormat(timestamp, dprec, df, bcf, plaindate, qualifiers, lang, adj, model)
df = (df or ""):lower()
if df == "ymd" then
if timestamp:sub(1,1) == "+" then
return timestamp:sub(2,11)
else
local yr = tonumber(timestamp:sub(2,5)) - 1
yr = ("000" .. yr):sub(-4)
if yr ~= "0000" then yr = "-" .. yr end
return yr .. timestamp:sub(6,11)
end
end
timestamp = timestamp:gsub("%-00%-00T", "-01-01T")
dprec = dprec or 11
if df == "y" and dprec > 9 then dprec = 9 end
dprec = dprec>11 and 11 or dprec
dprec = dprec<6 and 6 or dprec
bcf = (bcf or ""):upper()
plaindate = (plaindate or ""):sub(1,1):lower()
if plaindate == "" or plaindate == "n" or plaindate == "f" or plaindate == "0" then plaindate = false end
do
local llang = findLang()
lang = in_array(lang, {llang, 'en'}) and lang or llang
end
adj = adj or ""
local bc = timestamp:sub(1, 1)=="-" and "BC" or ""
local year, month, day = timestamp:match("[+-](%d*)-(%d*)-(%d*)T")
local iso = tonumber(year)
if df == 'tt' then
return {
year = tonumber(timestamp:match("^([+-]%d*)-")) or 0,
month = tonumber(month) or 0,
day = tonumber(day) or 0
}
end
if dprec == 6 then iso = math.floor( (iso - 1) / 1000 ) + 1 end
if dprec == 7 then iso = math.floor( (iso - 1) / 100 ) + 1 end
if dprec == 8 then iso = math.floor( iso / 10 ) .. "0" end
if dprec == 10 then iso = year .. "-" .. month end
if dprec == 11 then iso = year .. "-" .. month .. "-" .. day end
local sc = not plaindate and qualifiers and qualifiers.P1480
if sc then
for k1, v1 in pairs(sc) do
if v1.datavalue and v1.datavalue.value.id == "Q5727902" then
adj = "circa"
break
end
end
end
local calendarmodel = ""
if tonumber(year) > 1582
and dprec > 8
and not plaindate
and model == "http://www.wikidata.org/entity/Q1985786" then
calendarmodel = "julian"
end
if not cdate then
cdate = require("Module:Complex date")._complex_date
end
local fdate = cdate(calendarmodel, adj, tostring(iso), dp[dprec], bc, "", "", "", "", lang, 1)
-- this may have QuickStatements info appended to it in a div, so remove that
fdate = fdate:gsub(' <div style="display: none;">[^<]*</div>', '')
-- it may also be returned wrapped in a microformat, so remove that
fdate = fdate:gsub("<[^>]*>", "")
-- there may be leading zeros that we should remove
fdate = fdate:gsub("^0*", "")
-- if a plain date is required, then remove any links (like BC linked)
if plaindate then
fdate = fdate:gsub("%[%[.*|", ""):gsub("]]", "")
end
-- if 'circa', use the abbreviated form *** internationalise later ***
fdate = fdate:gsub('circa ', '<abbr title="circa">c.</abbr> ')
-- deal with BC/BCE
if bcf == "BCE" then
fdate = fdate:gsub('BC', 'BCE')
end
-- deal with mdy format
if df == "mdy" then
fdate = fdate:gsub("(%d+) (%w+) (%d+)", "%2 %1, %3")
end
-- deal with adjectival form *** internationalise later ***
if plaindate == "a" then
fdate = fdate:gsub(' century', '-century')
end
return fdate
end
local function hijriFormat(qualifiers, dateformat, lang)
if not (qualifiers and qualifiers.P4241) then return; end
local year, month, monthno, day
local val
local qhmonths = {["Q1952053"]=1,["Q489557"]=2, ["Q474167"] = 3, ["Q273815"] = 4, ["Q852002"] = 5, ["Q822218"] = 6,
["Q194210"] = 7, ["Q220914"] = 8, ["Q8867089"]=9, ["Q685440"]=10,["Q150853"]=11,["Q186022"]=12 }
local hmonths = {"محرم","صفر","ربيع الأول","ربيع الآخر","جمادى الأولى","جمادى الآخرة","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة"}
local hmonths_inv = {["محرم"] = 1, ["صفر"]=2, ["ربيع الأول"]=3, ["ربيع الآخر"]=4, ["جمادى الأولى"]=5, ["جمادى الآخرة"]=6, ["رجب"]=7, ["شعبان"]=8, ["رمضان"]=9, ["شوال"]=10, ["ذو القعدة"]=11, ["ذو الحجة"]=12}
for _, item in ipairs(qualifiers.P4241) do
local timeQ = item.datavalue and item.datavalue.value and item.datavalue.value.id
local hastime = false
if timeQ then
local timeQt = mw.wikibase.getBestStatements(timeQ, "P361")
for _,timeQsnak in pairs(timeQt) do
local timeType = timeQsnak.mainsnak and timeQsnak.mainsnak.datavalue and timeQsnak.mainsnak.datavalue.value and timeQsnak.mainsnak.datavalue.value.id
if timeType == "Q28892" then
local timeLableAr = mw.wikibase.getLabelByLang(timeQ, "ar")
if timeLableAr then
year = mw.ustring.match(timeLableAr, "^(%d+) *هـ$")
end
if not year then
local timeLableEn = mw.wikibase.getLabelByLang(timeQ, "en")
if timeLableEn then
year = mw.ustring.match(timeLableAr, "^(%d+) *AH$")
end
end
hastime=true
elseif qhmonths[timeType] then
monthno = qhmonths[timeType]
if monthno>0 and monthno<13 then
month = hmonths[monthno]
end
local timeLableAr = mw.wikibase.getLabelByLang(timeQ, "ar")
if timeLableAr then
day = mw.ustring.match(timeLableAr, "^(%d+) *%a+$")
end
if not day then
local timeLableEn = mw.wikibase.getLabelByLang(timeQ, "en")
if timeLableEn then
day = mw.ustring.match(timeLableAr, "^(%d+) *%a+$")
end
end
hastime=true
end
end
if not hastime then
timeQt = mw.wikibase.getBestStatements(timeQ, "P31")
if "Q125390868" == (timeQt[1].mainsnak and timeQt[1].mainsnak.datavalue and timeQt[1].mainsnak.datavalue.value and timeQt[1].mainsnak.datavalue.value.id ) then
val = mw.wikibase.getLabelByLang(timeQ, "ar")
month, year = mw.ustring.match(val, "^(%a[%a ]+%a) *(%d+) *هـ?$")
monthno = hmonths_inv[month]
end
end
end
end
if year then
if dateformat == "tt" then
return {year = tonumber(year) or 0,
month = monthno or 0,
day = tonumber(day) or 0,
monthname = month or ''}
elseif dateformat == "y" or not month then
return year;
elseif day and month then
if dateformat == 'ymd' then
return string.format("%04d-%02d-%02d", tonumber(year), monthno, tonumber(day));
else
return day .. ' ' .. month .. ' ' .. year;
end
elseif month then
return month .. ' ' .. year;
end
end
return nil;
end
local function rawValueOrDF (statement, opt)
local datasnak = statement.mainsnak or statement
if (datasnak.datavalue and datasnak.datavalue.type == 'time') and (opt.hijri or opt.df) then
if opt.hijri then
return statement.qualifiers and hijriFormat(statement.qualifiers, opt.df) or nil
elseif opt.df then
local dv = datasnak.datavalue.value
return dateFormat(dv.time, dv.precision, opt.df, opt.bc, opt.plaindate, statement.qualifiers, opt.lang, "", dv.calendarmodel)
end
else
return rawValue(datasnak.datavalue)
end
end
local function sourced(claim)
if claim.references then
for kr, vr in pairs(claim.references) do
local ref = mw.wikibase.renderSnaks(vr.snaks)
if not ref:find("Wiki") then
return true
end
end
end
end
local function linkedItem(id, args)
local linkprefix = (args.linkprefix or ""):gsub('"', '')
local lpostfix = (args.lpostfix or ""):gsub('"', '')
local prefix = (args.prefix or ""):gsub('"', '')
local postfix = (args.postfix or ""):gsub('"', '')
local wikilinkprefix = (args.wikilinkprefix or ""):gsub('"', '')
local dtxt = args.dtxt
local uselabel = parseParam( args.uselabel, true)
local langs = (args.langs and #args.langs>0) and args.langs or { args.lang }
local disp
local sitelink = mw.wikibase.getSitelink(id, args.linksproject)
local label, islabel
if dtxt then
label, islabel = dtxt, true
else
label, islabel = labelOrId(id, langs)
end
if sitelink then
if not uselabel then
local pos = sitelink:find(":") or 0
local slink = sitelink
if pos > 0 then
local pfx = sitelink:sub(1,pos-1)
if mw.site.namespaces[pfx] then
slink = sitelink:sub(pos+1)
end
end
slink = slink:gsub("%s%(.+%)$", ""):gsub(",.+$", "")
if label:find("^%u") then
label = slink:gsub("^(%l)", string.upper)
else
label = slink:gsub("^(%u)", string.lower)
end
end
disp = "[[" .. wikilinkprefix .. sitelink .. lpostfix .. "|" .. prefix .. label .. postfix .. "]]"
elseif islabel then
disp = prefix .. label .. postfix
else
disp = prefix .. label .. postfix .. i18n.missinginfocat
end
return disp
end
local function rendersnak(propval, args, linked, lpre, lpost, pre, post, unitabbr, filter)
lpre = lpre or ""
lpost = lpost or ""
pre = pre or ""
post = post or ""
args.lang = args.lang or (args.langs and args.langs[1]) or findLang();
local langs = (args.langs and #args.langs>0) and args.langs or {args.lang }
local snak = propval.mainsnak or propval
local dtype = snak.datatype
local dv = snak.datavalue
dv = dv and dv.value
local val, mlt
local namedas;
namedas = propval.qualifiers and propval.qualifiers.P1932 and propval.qualifiers.P1932[1].datavalue and propval.qualifiers.P1932[1].datavalue.value or nil
args.dtxt = namedas
if propval.rank and not args.reqranks[propval.rank] then
return nil
elseif snak.snaktype == "somevalue" then
val = namedas or i18n["Unknown"]
elseif snak.snaktype == "novalue" then
-- return nothing
elseif dtype == "wikibase-item" then
local qnumber = dv.id
if linked then
val = linkedItem(qnumber, args)
else
if namedas then
val = pre .. namedas .. post
else
local label, islabel = labelOrId(qnumber, langs)
val = pre .. label .. post
end
end
elseif dtype == "time" then
if args.hijri then
val = hijriFormat(propval.qualifiers, args.df, args.lang)
else
val = dateFormat(dv.time, dv.precision, args.df, args.bc, args.plaindate, propval.qualifiers, args.lang, "", dv.calendarmodel)
end
elseif dtype == "commonsMedia" or dtype == "external-id" or dtype == "string" or dtype == "url" then
if dtype == "external-id" and args.fullidurl then
val = mw.ustring.match(mw.wikibase.formatValue(snak), "%[(https?://[^%s%]]+)")
elseif (lpre == "" or lpre == ":") and lpost == "" then
val = pre .. dv .. post
elseif dtype == "external-id" then
val = "[" .. lpre .. dv .. lpost .. " " .. pre .. dv .. post .. "]"
else
val = "[[" .. lpre .. dv .. lpost .. "|" .. pre .. dv .. post .. "]]"
end
elseif dtype == "quantity" then
local amount = tonumber(dv.amount) or i18n["NaN"]
local unit = ""
local unitqid = string.match(dv.unit, "(Q%d+)")
if filter and unitqid ~= filter then return nil end
if unitqid then
local uname = labelOrId(unitqid, langs) or ""
if uname ~= "" then unit = " " .. uname end
end
val = tostring(amount) .. unit
elseif dtype == "globe-coordinate" then
local lat, long, prec = dv.latitude, dv.longitude, dv.precision
local show = (args.show or ""):lower()
if show == "lat" then
val = decimalPrecision(lat, prec)
elseif show == "lon" then
val = decimalPrecision(long, prec)
elseif show == "longlat" then
val = decimalPrecision(long, prec) .. ", " .. decimalPrecision(lat, prec)
else
local ns = lat < 0 and "S" or "N"
local ew = long < 0 and "W" or "E"
if lat < 0 then lat = -lat end
if long < 0 then long = -long end
val = decimalPrecision(lat, prec) .. "°" .. ns .. " " .. decimalPrecision(long, prec) .. "°" .. ew
end
elseif dtype == "monolingualtext" then
val = pre .. dv.text .. post
mlt = dv.language
else
val = "unknown data type: " .. dtype
end
return val, mlt
end
local function assembleoutput(out, args, entityID, propertyID)
local sorted = parseParam(args.sorted, false)
local noicon = parseParam(args.noicon, false)
local list = args.list or ""
local separator = args.sep or ""
separator = string.gsub(separator, '"', '')
if separator == "" then
local rtl_lang = {ar = true, fa = true, ur = true, ku = true, he = true}
separator = rtl_lang[args.lang] and i18n["list separator-ar"] or i18n["list separator"]
end
local strout
if #out > 0 then
if sorted then table.sort(out) end
if list == "" then
strout = table.concat(out, separator)
elseif list:lower() == "prose" then
strout = mw.text.listToText(out)
else
strout = mw.getCurrentFrame():expandTemplate{title = list, args = out}
end
else
strout = nil
end
return strout
end
-- WdItem
local function propertyvalueandquals(objproperty, args, qualID)
-- needs this style of declaration because it's re-entrant
-- onlysourced is a boolean passed to return only values sourced to other than Wikipedia
-- if nothing or an empty string is passed set it true
local onlysrc = parseParam(args.onlysourced, false)
-- linked is a a boolean that enables the link to a local page via sitelink
-- if nothing or an empty string is passed set it true
local linked = parseParam(args.linked, true)
-- prefix is a string that may be nil, empty (""), or a string of characters
-- this is prefixed to each value
-- useful when when multiple values are returned
-- any double-quotes " are stripped out, so that spaces may be passed
local prefix = (args.prefix or ""):gsub('"', '')
-- postfix is a string that may be nil, empty (""), or a string of characters
-- this is postfixed to each value
-- useful when when multiple values are returned
-- any double-quotes " are stripped out, so that spaces may be passed
local postfix = (args.postfix or ""):gsub('"', '')
-- linkprefix is a string that may be nil, empty (""), or a string of characters
-- this creates a link and is then prefixed to each value
-- useful when when multiple values are returned and indirect links are needed
-- any double-quotes " are stripped out, so that spaces may be passed
local linkprefix = (args.linkprefix or ""):gsub('"', '')
-- linkpostfix is a string that may be nil, empty (""), or a string of characters
-- this is postfixed to each value when linking is enabled with linkprefix
-- useful when when multiple values are returned
-- any double-quotes " are stripped out, so that spaces may be passed
local lpostfix = (args.linkpostfix or ""):gsub('"', '')
-- wdlinks is a boolean passed to enable links to Wikidata when no article exists
-- if nothing or an empty string is passed set it false
local wdlinks = parseParam(args.wdlinks, false)
-- unitabbr is a boolean passed to enable unit abbreviations for common units
-- if nothing or an empty string is passed set it false
local unitabbr = parseParam(args.unitabbr, false)
-- qualsonly is a boolean passed to return just the qualifiers
-- if nothing or an empty string is passed set it false
local qualsonly = parseParam(args.qualsonly, false)
-- maxvals is a string that may be nil, empty (""), or a number
-- this determines how many items may be returned when multiple values are available
-- setting it = 1 is useful where the returned string is used within another call, e.g. image
local maxvals = tonumber(args.maxvals) or 0
-- plaindate boolean
-- to disable/enable "sourcing cirumstances" or use adjectival form for the plain date
local plaindate = args.plaindate or false
args.plaindate = plaindate
-- allow qualifiers to have a different date format; default to year unless qualsonly is set
args.qualifierdateformat = args.qualifierdateformat or (not qualsonly and "y")
local lang = args.lang or (args.langs and args.langs[1]) or findLang()
-- qualID is a string list of wanted qualifiers or "ALL"
qualID = qualID or ""
-- capitalise list of wanted qualifiers and substitute "DATES"
qualID = qualID:upper():gsub("DATES", "P580, P582")
local allflag = (qualID == "ALL")
-- create table of wanted qualifiers as key
local qwanted = {}
-- create sequence of wanted qualifiers
local qorder = {}
for q in mw.text.gsplit(qualID, "%p") do -- split at punctuation and iterate
local qtrim = mw.text.trim(q)
if qtrim ~= "" then
qwanted[mw.text.trim(q)] = true
qorder[#qorder+1] = qtrim
end
end
-- qsep is the output separator for rendering qualifier list
local qsep = (args.qsep or ""):gsub('"', '')
-- qargs are the arguments to supply to assembleoutput()
local qargs = {
["onlysourced"] = false,
["linked"] = tostring(linked),
["prefix"] = args.qprefix,
["postfix"] = args.qpostfix,
["linkprefix"] = args.qlinkprefix,
["linkpostfix"] = args.qlinkpostfix,
["wdlinks"] = false,
["unitabbr"] = tostring(unitabbr),
["maxvals"] = 0,
["sorted"] = tostring(args.qsorted),
["noicon"] = true,
["list"] = args.qlist,
["sep"] = qsep,
-- ["langobj"] = args.langobj,
["lang"] = lang,
langs = args.langs,
["df"] = args.qualifierdateformat,
["shortname"] = parseParam(args.qshortname, false),
}
-- all proper values of a Wikidata property will be the same type as the first
-- qualifiers don't have a mainsnak, properties do
--#Modified line
local datatype = objproperty[1].datatype or (objproperty[1].mainsnak and objproperty[1].mainsnak.datatype)
-- out[] holds the a list of returned values for this property
-- mlt[] holds the language code if the datatype is monolingual text
local out = {}
local mlt = {}
for k, v in ipairs(objproperty) do
local hasvalue = true
if (onlysrc and not sourced(v)) then
-- no value: it isn't sourced when onlysourced=true
hasvalue = false
else
local val, lcode = rendersnak(v, args, linked, linkprefix, lpostfix, prefix, postfix, unitabbr)
if not val then
hasvalue = false -- rank doesn't match
elseif qualsonly and qualID then
-- suppress value returned: only qualifiers are requested
else
out[#out+1], mlt[#out+1] = val, lcode
end
end
-- See if qualifiers are to be returned:
local snak = v.mainsnak or v
if hasvalue and v.qualifiers and qualID ~= "" and snak.snaktype~="novalue" then
-- collect all wanted qualifier values returned in qlist, indexed by propertyID
local qlist = {}
local timestart, timeend = "", ""
-- loop through qualifiers
for k1, v1 in pairs(v.qualifiers) do
if allflag or qwanted[k1] then
if k1 == "P1326" then
local ts = v1[1].datavalue.value.time
local dp = v1[1].datavalue.value.precision
qlist[k1] = dateFormat(ts, dp, args.qualifierdateformat, args.bc, plaindate, "", lang, "before")
elseif k1 == "P1319" then
local ts = v1[1].datavalue.value.time
local dp = v1[1].datavalue.value.precision
qlist[k1] = dateFormat(ts, dp, args.qualifierdateformat, args.bc, plaindate, "", lang, "after")
elseif k1 == "P580" then
timestart = propertyvalueandquals(v1, qargs)[1] or "" -- treat only one start time as valid
elseif k1 == "P582" then
timeend = propertyvalueandquals(v1, qargs)[1] or "" -- treat only one end time as valid
else
local q = assembleoutput(propertyvalueandquals(v1, qargs), qargs)
-- we already deal with circa via 'sourcing circumstances' if the datatype was time
-- circa may be either linked or unlinked *** internationalise later ***
if datatype ~= "time" or q ~= "circa" and not (type(q) == "string" and q:find("circa]]")) then
qlist[k1] = q
end
end
end -- of test for wanted
end -- of loop through qualifiers
-- set date separator
local t = timestart .. timeend
-- *** internationalise date separators later ***
local dsep = "–"
if t:find("%s") or t:find(" ") then dsep = " – " end
-- set the order for the list of qualifiers returned; start time and end time go last
if next(qlist) then
local qlistout = {}
if allflag then
for k2, v2 in pairs(qlist) do
qlistout[#qlistout+1] = v2
end
else
for i2, v2 in ipairs(qorder) do
qlistout[#qlistout+1] = qlist[v2]
end
end
if t ~= "" then
qlistout[#qlistout+1] = timestart .. dsep .. timeend
end
local qstr = assembleoutput(qlistout, qargs)
if qualsonly then
out[#out+1] = qstr
else
out[#out] = out[#out] .. " (" .. qstr .. ")"
end
elseif t ~= "" then
if qualsonly then
if timestart == "" then
out[#out+1] = timeend
elseif timeend == "" then
out[#out+1] = timestart
else
out[#out+1] = timestart .. dsep .. timeend
end
else
out[#out] = out[#out] .. " (" .. timestart .. dsep .. timeend .. ")"
end
end
end -- of test for qualifiers wanted
if maxvals > 0 and #out >= maxvals then break end
end -- of for each value loop
-- we need to pick one value to return if the datatype was "monolingualtext"
-- if there's only one value, use that
-- otherwise look through the fallback languages for a match
if datatype == "monolingualtext" and #out >1 then
lang = mw.text.split( lang, '-', true )[1]
local fbtbl = mw.language.getFallbacksFor( lang )
table.insert( fbtbl, 1, lang )
local bestval = ""
local found = false
for idx1, lang1 in ipairs(fbtbl) do
for idx2, lang2 in ipairs(mlt) do
if (lang1 == lang2) and not found then
bestval = out[idx2]
found = true
break
end
end -- loop through values of property
end -- loop through fallback languages
if found then
-- replace output table with a table containing the best value
out = { bestval }
else
-- more than one value and none of them on the list of fallback languages
-- sod it, just give them the first one
out = { out[1] }
end
end
return out
end
local function mergeOptions(defaults, overrides)
overrides = overrides or {}
defaults = defaults or {}
local result = {}
for k, v in pairs(defaults) do
result[k] = v
end
for k, v in pairs(overrides) do
result[k] = v
if k == 'rank' then
result.reqranks = setRanks(v)
end
end
return result
end
local function filterbyqualifier(statements,qual,value)
local filtered_statements = {}
for _, statement in ipairs(statements) do
if statement.qualifiers and statement.qualifiers[qual] then
if '*' == value then
filtered_statements[#filtered_statements + 1] = statement
else
for _, q in ipairs(statement.qualifiers[qual]) do
if q.datavalue and (rawValue(q.datavalue) == value) then
filtered_statements[#filtered_statements + 1] = statement
break
end
end
end
end
end
return filtered_statements
end
local function orderbyrank(statements)
local pref_count = 0
local sorted_statements = {}
for k,v in ipairs(statements) do
if v.rank == 'preferred' then
pref_count = pref_count + 1
table.insert(sorted_statements, pref_count, v)
else
sorted_statements[#sorted_statements + 1] = v
end
end
return sorted_statements
end
-------------------------------------------------------------------------------
-- helper class functions
-------------------------------------------------------------------------------
local function class()
local c = {}
c.__index = c
function c:new(...)
local o = setmetatable({}, c)
if o.init then o:init(...) end
return o
end
return c
end
-------------------------------------------------------------------------------
-- Statement Class Definition
-------------------------------------------------------------------------------
local WdStatement = class()
function WdStatement:getValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local statement = self._statement
if not statement then
return nil
end
local qualID = mw.text.trim(mergedOpts.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = propertyvalueandquals({statement}, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.parent.qid, self.pid)
end
function WdStatement:getRawValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
if not self._statement then
return nil
end
local datasnak = self._statement.mainsnak or self._statement
if datasnak.snaktype == "value" then
return rawValueOrDF(self._statement, mergedOpts)
else
return datasnak.snaktype
end
end
function WdStatement:getRawQual(qualID)
local ret = {}
local s = self._statement
if s.qualifiers and s.qualifiers[qualID] then
for _,q in pairs(s.qualifiers[qualID]) do
if q.snaktype == "value" then
ret[#ret + 1] = rawValueOrDF(q, self.parent.options)
else
ret[#ret + 1] = q.snaktype
end
end
end
return ret
end
-------------------------------------------------------------------------------
-- Statements Class Definition
-------------------------------------------------------------------------------
local WdStatements = class()
function WdStatements:getStatmentsTable()
return self._statements
end
function WdStatements:count()
return #self._statements
end
function WdStatements:getFilters()
return self.filtered_by
end
function WdStatements:filter(filter_t)
local statements = self._statements
if #statements == 0 then return self; end
local ret = WdStatements:new()
ret.parent = self.parent
ret.filtered_by = {}
for _,v in ipairs(self.filtered_by) do
ret.filtered_by[#ret.filtered_by + 1] = v
end
local filtered_statements = {}
for k,v in pairs(filter_t) do
filtered_statements = filterbyqualifier(statements, k, v)
ret.filtered_by[#ret.filtered_by + 1] = {[k] = v}
if #filtered_statements == 0 then
break;
else
statements = filtered_statements
end
end
ret._statements = filtered_statements
return ret
end
function WdStatements:getValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local statements = self._statements
if not statements or #statements == 0 then
return nil
end
local qualID = mw.text.trim(mergedOpts.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = propertyvalueandquals(statements, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.parent.qid, self.pid)
end
function WdStatements:getQual(qualID, opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local statements = self._statements
if not statements or #statements == 0 then
return nil
end
local out = propertyvalueandquals(statements, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.parent.qid, self.pid)
end
function WdStatements:getRawQual(qualID)
local ret = {}
for _,s in pairs(self._statements) do
local qual_t = {}
if s.qualifiers and s.qualifiers[qualID] then
for _,q in pairs(s.qualifiers[qualID]) do
if q.snaktype == "value" then
qual_t[#qual_t + 1] = rawValueOrDF(q, self.parent.options)
else
qual_t[#qual_t + 1] = q.snaktype
end
end
end
ret[#ret + 1] = qual_t
end
return ret
end
function WdStatements:getRawValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local ret = {}
for _,v in pairs(self._statements) do
local datasnak = v.mainsnak or v
if datasnak.snaktype=="value" then
ret[#ret + 1] = rawValueOrDF(v, mergedOpts)
else
ret[#ret + 1] = datasnak.snaktype
end
end
return ret
end
function WdStatements:get(index)
local ret = WdStatement:new()
ret.parent = self.parent
ret.filtered_by = ret.filtered_by
ret._statement = self._statements[index]
ret.pid = ret.pid
return ret
end
function WdStatements:iter()
local i = 0
local n = self._statements and #self._statements or 0
return function()
i = i + 1
if i <= n then
return i, self:get(i)
end
end
end
function WdStatements:ipairs()
return self:iter()
end
function WdStatements:getBestOne()
local orderd_statements = orderbyrank(self._statements)
local ret = WdStatement:new() --setmetatable({}, WdStatement)
ret.parent = self.parent
ret.filtered_by = ret.filtered_by
ret._statement = orderd_statements[1]
ret.pid = ret.pid
return ret
end
-------------------------------------------------------------------------------
-- WdItem Class Definition
-------------------------------------------------------------------------------
local WdItem = class()
function WdItem:__tostring()
return "WdItem: " .. (self.qid or "no QID")
end
function WdItem:UpdateOptions(in_newOpts)
local newOpts = in_newOpts or {}
for k, v in pairs(newOpts or {}) do
self.options[k] = v
end
-- Set default options
if newOpts.lang then
self.options.lang = findLang(newOpts.lang)
end
if (newOpts.lang and not self.options.lang) or
(not newOpts.lang and newOpts.langs and #newOpts.langs > 0) then
for _, l in ipairs(newOpts.langs) do
self.options.lang = findLang(l)
if self.options.lang then
break;
end
end
end
if not self.options.lang then
self.options.lang = findLang();
end
if newOpts.rank then
self.options.reqranks = setRanks(self.options.rank)
end
if not self.options.reqranks then
self.options.reqranks = setRanks('preferred normal')
end
end
function WdItem:init(qid, options,snak)
if qid == "" then qid = nil; end
self.qid = qid
self.snak = snak
self.options = options or {}
self:UpdateOptions(options)
return self
end
function WdItem:newFromSnaks(snakTable, options)
local self = WdItem:new(nil, options or {}, snakTable)
self:UpdateOptions(options)
return self
end
function WdItem:setOptions(newOpts)
self:UpdateOptions(newOpts)
end
function WdItem:getStatements(pid, opts)
local mergedOpts = mergeOptions(self.options, opts or {})
local statements
local ret = WdStatements:new()
ret.parent = self
ret.filtered_by = {}
ret._statements = {}
ret.pid = pid
if self.snak and self.snak[pid] then
statements = self.snak[pid]
elseif not self.qid or not mw.wikibase then
statements = {}
elseif mergedOpts.reqranks and mergedOpts.reqranks.best then
statements = mw.wikibase.getBestStatements(self.qid, pid) or {}
else
statements = mw.wikibase.getAllStatements(self.qid, pid) or {}
local filtered_statements = {}
if not (mergedOpts.reqranks.deprecated == true and mergedOpts.reqranks.preferred == true and mergedOpts.reqranks.normal == true) then
for _,s in pairs(statements) do
if mergedOpts.reqranks[s.rank] then
filtered_statements[#filtered_statements + 1] = s
end
end
end
statements = filtered_statements
end
if #statements > 0 and mergedOpts.qualifiedaspossible and mergedOpts.qualifiedaspossible ~= {} then
local filtered_statements = {}
for q,qv in pairs(mergedOpts.qualifiedaspossible) do
filtered_statements = filterbyqualifier(statements, q, qv)
if #filtered_statements > 0 then
ret.filtered_by[#ret.filtered_by + 1] = {[q] = qv}
statements = filtered_statements
end
end
end
if #statements > 0 and mergedOpts.qualified and mergedOpts.qualified ~= {} then
for q,qv in pairs(mergedOpts.qualified) do
statements = filterbyqualifier(statements, q, qv)
ret.filtered_by[#ret.filtered_by + 1] = {[q] = qv}
if #statements == 0 then break; end
end
end
ret._statements = statements
return ret
end
function WdItem:getValue(pid, opts)
local mergedOpts = mergeOptions(self.options, opts)
local statements = self:getStatements(pid, mergedOpts):getStatmentsTable()
if not statements or #statements == 0 then
return nil
end
local qualID = mw.text.trim(mergedOpts.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = propertyvalueandquals(statements, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.qid, pid)
end
function WdItem:getValueFromSnaks(pid, opts)
if not self.snak or not self.snak[pid] then
return nil
end
local mergedOpts = mergeOptions(self.options, opts)
local props = self.snak[pid]
local out = propertyvalueandquals(props, mergedOpts)
return assembleoutput(out, mergedOpts, nil, pid)
end
function WdItem:getPropertyIDsTable(pid, opts)
local mergedOpts = mergeOptions(self.options, opts)
mergedOpts.noicon = tostring(parseParam(mergedOpts.noicon or "", true))
local statements = self:getStatements(pid, opts)
if not statements or #statements == 0 then return {} end
local onlysrc = parseParam(mergedOpts.onlysourced or mergedOpts.onlysourced, true)
local maxvals = tonumber(mergedOpts.maxvals) or 0
local out = {}
for i, v in ipairs(statements) do
local snak = v.mainsnak or v
if (snak.datatype == "wikibase-item")
and (v.rank and mergedOpts.reqranks[v.rank:sub(1, 1)])
and (snak.snaktype == "value")
and (sourced(v) or not onlysrc) then
out[#out+1] = snak.datavalue.value.id
end
if maxvals > 0 and #out >= maxvals then break end
end
return out
end
function WdItem:getPropertyIDs(pid, opts)
local out = WdItem:getPropertyIDsTable(pid, opts)
if #out == 0 then
return nil
end
return assembleoutput(out, mergeOptions(self.options, opts), self.qid, pid)
end
function WdItem:getPropOfProp(prop1, prop2, opts)
local mergedOpts = mergeOptions(self.options, opts)
if not self.qid then return nil end
local maxvals = tonumber(mergedOpts.maxvals) or 0
local prop1Values = self:getStatements(prop1, opts):getRawValue()
if #prop1Values == 0 then return nil end
local out = {}
for k, qid2 in ipairs(prop1Values) do
local item2 = WdItem:new(qid2, mergedOpts)
local prop2Values = item2:getStatements(prop2):getStatmentsTable()
if prop2Values and prop2Values[1] then
local out2 = propertyvalueandquals(prop2Values, mergedOpts, mergedOpts.qual)
out[#out+1] = assembleoutput(out2, mergedOpts, qid2, prop2)
end
if maxvals > 0 and #out >= maxvals then break end
end
return assembleoutput(out, mergedOpts, self.qid, prop1)
end
function WdItem:getRawPropOfProp(prop1, prop2, opts)
local mergedOpts = mergeOptions(self.options, opts)
if not self.qid then return nil end
local prop1Values = self:getStatements(prop1, opts):getRawValue()
if #prop1Values == 0 then return nil end
local out = {}
for k, qid2 in ipairs(prop1Values) do
local item2 = WdItem:new(qid2, mergedOpts)
local prop2Values = item2:getStatements(prop2):getRawValue()
for _,val in ipairs(prop2Values) do
if not in_array(val,out) then
out[#out + 1] = val
end
end
end
return out
end
function WdItem:getLangOfProp(pid)
if not pid then return {}; end
local out = {}
local props = self.snak and self.snak[pid] or (self.qid and mw.wikibase.getAllStatements(self.qid, pid)) or {}
for _, v in ipairs(props) do
local datasnak = v.mainsnak or v
if datasnak.datatype == "monolingualtext" and datasnak.datavalue then
out[#out + 1] = datasnak.datavalue.value.language
end
end
return out
end
function WdItem:followQid(props, all)
all = parseParam(all, false)
props = (props or ""):upper()
if not self.qid then return nil end
if props == "" then return self.qid end
local out = {}
for p in mw.text.gsplit(props, "%p") do
p = mw.text.trim(p)
for i, v in ipairs(mw.wikibase.getBestStatements(self.qid, p)) do
local linkedid = v.mainsnak.datavalue and v.mainsnak.datavalue.value and v.mainsnak.datavalue.value.id
if linkedid then
if all then
out[#out+1] = linkedid
else
return WdItem:new(linkedid)
end
end
end
end
if #out > 0 then
return table.concat(out, " ")
else
return self
end
end
-------------------------------------------------------------------------------
-- Public API - WdItem Constructors
-------------------------------------------------------------------------------
p.WdItem = WdItem
function p.newItem(qid, opts, snak )
return WdItem:new(qid, opts, snak)
end
function p.newSnakItem(snakTable, opts)
return WdItem:newFromSnaks(snakTable, opts)
end
return p
394dchpdt65ai5w0v910eusjkrx62a1
617384
617367
2026-08-13T19:28:40Z
حبيشان
52457
تحسين
617384
Scribunto
text/plain
-- Module: WdItem
-- Object-oriented Wikidata access module for Lua
-- Refactored from WikidataIB for direct Lua usage
require("strict")
local p = {}
local cdate -- initialise as nil and only load _complex_date function if needed
-- Module:Complex date is loaded lazily and has the following dependencies:
-- Module:Calendar
-- Module:ISOdate
-- Module:DateI18n
-- Module:I18n/complex date
-- Module:Ordinal
-- Module:I18n/ordinal
-- Module:Yesno
-- Module:Formatnum
-- Module:Linguistic
-- i18n configuration
local i18n = {
["errors"] = {
["property-not-found"] = "الخاصية غير موجودة.",
["entity-not-found"] = "الكيان على ويكي بيانات غير موجود.",
["unknown-claim-type"] = "نوع الادعاء غير معروف.",
["local-article-not-found"] = "المعرف متاح على ويكي بيانات، ولكن المقال غير متاح على ويكيبيديا",
},
["months"] = {
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"
},
["Unknown"] = "Unknown",
["NaN"] = "Not a number",
["missinginfocat"] = "[[تصنيف:Articles with missing Wikidata information]]",
["list separator"] = ", ",
["list separator-ar"] = "، ",
}
-- Date precision constants
local dp = {
[6] = "millennium",
[7] = "century",
[8] = "decade",
[9] = "year",
[10] = "month",
[11] = "day",
}
-- local options_aliases = {
-- ["osd"] = "onlysourced",
-- ["wdl"] = "wdlinks",
-- ["uabbr"] = "unitabbr",
-- ["qo"] = "qualsonly",
-- ["lp"] = "linkprefix",
-- ["lprefix"] = "linkprefix",
-- ["qlp"] = "qlinkprefix",
-- ["sn"] = "shortname",
-- ["uselbl"] = "uselabel",
-- ["pd"] = "plaindate",
-- ["qdf"] = "qualifierdateformat",
-- ["df"] = "qualifierdateformat",
-- ["qsn"] = "qshortname"
-- }
-- setmetatable(options_aliases, { __index = function(t, k) return k end })
-------------------------------------------------------------------------------
-- Internal helper functions
-------------------------------------------------------------------------------
local function in_array( needle, haystack )
if needle == nil then
return false
end
for n, v in ipairs( haystack ) do
if v == needle then
return n
end
end
return false
end
local function findLang(langcode)
local langobj
langcode = mw.text.trim(langcode or "")
if langcode ~= "" then
if mw.language.isKnownLanguageTag(langcode) then
langobj = mw.language.new(langcode)
end
else
langobj = mw.language.getContentLanguage()
end
return langobj and langobj.code
end
local function parseParam(param, default)
if param == nil then
return default
end
return param
end
local function setRanks(rank)
rank = (rank or ""):lower()
local ranks = {}
for w in string.gmatch(rank, "%a+") do
if w == "best" or w == "preferred" or w == "normal" or w == "deprecated" then
ranks[w] = true
end
end
if ranks.best or not next(ranks) then
ranks.preferred = true
ranks.normal = true
ranks.deprecated = false
end
return ranks
end
local function labelOrId(id, lang_t)
local langs = lang_t or {}
local label
for _,lang in ipairs(langs) do
label = mw.wikibase.getLabelByLang(id, lang)
if label ~= "" then
break;
end
end
label = label or mw.wikibase.getLabel(id)
if label then
return mw.text.nowiki(label), true
else
return id, false
end
end
local function roundto(x, sf)
if x == 0 then return 0 end
local s = 1
if x < 0 then
x = -x
s = -1
end
if sf < 1 then sf = 1 end
local p = 10 ^ (math.floor(math.log10(x)) - sf + 1)
x = math.floor(x / p + 0.5) * p * s
if x == math.floor(x) then x = math.floor(x) end
return x
end
local function decimalPrecision(x, p)
local s = 1
if x < 0 then
x = -x
s = -1
end
if not tonumber(p) then p = 1e-4
elseif p > 1 then p = 1
elseif p < 1e-6 then p = 1e-6
else p = 10 ^ math.floor(math.log10(p))
end
x = math.floor(x / p + 0.5) * p * s
if x == math.floor(x) then x = math.floor(x) end
if math.abs(x) < 1e-4 then x = string.format("%f", x) end
return x
end
local function decimalToDMS(x, p)
if not tonumber(p) then p = 1e-4 end
local d = math.floor(x)
local ms = (x - d) * 60
if p > 0.5 then
if ms > 30 then d = d + 1 end
ms = 0
end
local m = math.floor(ms)
local s = (ms - m) * 60
if p > 0.008 then
if s > 30 then m = m +1 end
s = 0
elseif p > 0.00014 then
s = math.floor(s + 0.5)
elseif p > 0.000014 then
s = math.floor(10 * s + 0.5) / 10
elseif p > 0.0000014 then
s = math.floor(100 * s + 0.5) / 100
else
s = math.floor(1000 * s + 0.5) / 1000
end
return d, m, s
end
local function rawValue(dataValue)
if dataValue.type == "string" then
return dataValue.value
elseif dataValue.type == "wikibase-entityid" then
return dataValue.value and dataValue.value.id
elseif dataValue.type == "monolingualtext" then
return dataValue.value.text
elseif dataValue.type == "quantity" then
return tonumber(dataValue.value.amount)
elseif dataValue.type == 'time' then
return dataValue.value.time
elseif dataValue.type == "globecoordinate" then
return dataValue.value.latitude .. '/' .. dataValue.value.longitude
end
end
local function compareValue(dataValue, strValue)
return rawValue(dataValue) == strValue
end
local function dateFormat(timestamp, dprec, df, bcf, plaindate, qualifiers, lang, adj, model)
df = (df or ""):lower()
if df == "ymd" then
if timestamp:sub(1,1) == "+" then
return timestamp:sub(2,11)
else
local yr = tonumber(timestamp:sub(2,5)) - 1
yr = ("000" .. yr):sub(-4)
if yr ~= "0000" then yr = "-" .. yr end
return yr .. timestamp:sub(6,11)
end
end
timestamp = timestamp:gsub("%-00%-00T", "-01-01T")
dprec = dprec or 11
if df == "y" and dprec > 9 then dprec = 9 end
dprec = dprec>11 and 11 or dprec
dprec = dprec<6 and 6 or dprec
bcf = (bcf or ""):upper()
plaindate = (plaindate or ""):sub(1,1):lower()
if plaindate == "" or plaindate == "n" or plaindate == "f" or plaindate == "0" then plaindate = false end
do
local llang = findLang()
lang = in_array(lang, {llang, 'en'}) and lang or llang
end
adj = adj or ""
local bc = timestamp:sub(1, 1)=="-" and "BC" or ""
local year, month, day = timestamp:match("[+-](%d*)-(%d*)-(%d*)T")
local iso = tonumber(year)
if df == 'tt' then
return {
year = tonumber(timestamp:match("^([+-]%d*)-")) or 0,
month = tonumber(month) or 0,
day = tonumber(day) or 0
}
end
if dprec == 6 then iso = math.floor( (iso - 1) / 1000 ) + 1 end
if dprec == 7 then iso = math.floor( (iso - 1) / 100 ) + 1 end
if dprec == 8 then iso = math.floor( iso / 10 ) .. "0" end
if dprec == 10 then iso = year .. "-" .. month end
if dprec == 11 then iso = year .. "-" .. month .. "-" .. day end
local sc = not plaindate and qualifiers and qualifiers.P1480
if sc then
for k1, v1 in pairs(sc) do
if v1.datavalue and v1.datavalue.value.id == "Q5727902" then
adj = "circa"
break
end
end
end
local calendarmodel = ""
if tonumber(year) > 1582
and dprec > 8
and not plaindate
and model == "http://www.wikidata.org/entity/Q1985786" then
calendarmodel = "julian"
end
if not cdate then
cdate = require("Module:Complex date")._complex_date
end
local fdate = cdate(calendarmodel, adj, tostring(iso), dp[dprec], bc, "", "", "", "", lang, 1)
-- this may have QuickStatements info appended to it in a div, so remove that
fdate = fdate:gsub(' <div style="display: none;">[^<]*</div>', '')
-- it may also be returned wrapped in a microformat, so remove that
fdate = fdate:gsub("<[^>]*>", "")
-- there may be leading zeros that we should remove
fdate = fdate:gsub("^0*", "")
-- if a plain date is required, then remove any links (like BC linked)
if plaindate then
fdate = fdate:gsub("%[%[.*|", ""):gsub("]]", "")
end
-- if 'circa', use the abbreviated form *** internationalise later ***
fdate = fdate:gsub('circa ', '<abbr title="circa">c.</abbr> ')
-- deal with BC/BCE
if bcf == "BCE" then
fdate = fdate:gsub('BC', 'BCE')
end
-- deal with mdy format
if df == "mdy" then
fdate = fdate:gsub("(%d+) (%w+) (%d+)", "%2 %1, %3")
end
-- deal with adjectival form *** internationalise later ***
if plaindate == "a" then
fdate = fdate:gsub(' century', '-century')
end
return fdate
end
local function hijriFormat(qualifiers, dateformat, lang)
if not (qualifiers and qualifiers.P4241) then return; end
local year, month, monthno, day
local val
local qhmonths = {["Q1952053"]=1,["Q489557"]=2, ["Q474167"] = 3, ["Q273815"] = 4, ["Q852002"] = 5, ["Q822218"] = 6,
["Q194210"] = 7, ["Q220914"] = 8, ["Q8867089"]=9, ["Q685440"]=10,["Q150853"]=11,["Q186022"]=12 }
local hmonths = {"محرم","صفر","ربيع الأول","ربيع الآخر","جمادى الأولى","جمادى الآخرة","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة"}
local hmonths_inv = {["محرم"] = 1, ["صفر"]=2, ["ربيع الأول"]=3, ["ربيع الآخر"]=4, ["جمادى الأولى"]=5, ["جمادى الآخرة"]=6, ["رجب"]=7, ["شعبان"]=8, ["رمضان"]=9, ["شوال"]=10, ["ذو القعدة"]=11, ["ذو الحجة"]=12}
for _, item in ipairs(qualifiers.P4241) do
local timeQ = item.datavalue and item.datavalue.value and item.datavalue.value.id
local hastime = false
if timeQ then
local timeQt = mw.wikibase.getBestStatements(timeQ, "P361")
for _,timeQsnak in pairs(timeQt) do
local timeType = timeQsnak.mainsnak and timeQsnak.mainsnak.datavalue and timeQsnak.mainsnak.datavalue.value and timeQsnak.mainsnak.datavalue.value.id
if timeType == "Q28892" then
local timeLableAr = mw.wikibase.getLabelByLang(timeQ, "ar")
if timeLableAr then
year = mw.ustring.match(timeLableAr, "^(%d+) *هـ$")
end
if not year then
local timeLableEn = mw.wikibase.getLabelByLang(timeQ, "en")
if timeLableEn then
year = mw.ustring.match(timeLableAr, "^(%d+) *AH$")
end
end
hastime=true
elseif qhmonths[timeType] then
monthno = qhmonths[timeType]
if monthno>0 and monthno<13 then
month = hmonths[monthno]
end
local timeLableAr = mw.wikibase.getLabelByLang(timeQ, "ar")
if timeLableAr then
day = mw.ustring.match(timeLableAr, "^(%d+) *%a+$")
end
if not day then
local timeLableEn = mw.wikibase.getLabelByLang(timeQ, "en")
if timeLableEn then
day = mw.ustring.match(timeLableAr, "^(%d+) *%a+$")
end
end
hastime=true
end
end
if not hastime then
timeQt = mw.wikibase.getBestStatements(timeQ, "P31")
if "Q125390868" == (timeQt[1].mainsnak and timeQt[1].mainsnak.datavalue and timeQt[1].mainsnak.datavalue.value and timeQt[1].mainsnak.datavalue.value.id ) then
val = mw.wikibase.getLabelByLang(timeQ, "ar")
month, year = mw.ustring.match(val, "^(%a[%a ]+%a) *(%d+) *هـ?$")
monthno = hmonths_inv[month]
end
end
end
end
if year then
if dateformat == "tt" then
return {year = tonumber(year) or 0,
month = monthno or 0,
day = tonumber(day) or 0,
monthname = month or ''}
elseif dateformat == "y" or not month then
return year;
elseif day and month then
if dateformat == 'ymd' then
return string.format("%04d-%02d-%02d", tonumber(year), monthno, tonumber(day));
else
return day .. ' ' .. month .. ' ' .. year;
end
elseif month then
return month .. ' ' .. year;
end
end
return nil;
end
local function rawValueOrDF (statement, opt)
local datasnak = statement.mainsnak or statement
if (datasnak.datavalue and datasnak.datavalue.type == 'time') and (opt.hijri or opt.df) then
if opt.hijri then
return statement.qualifiers and hijriFormat(statement.qualifiers, opt.df) or nil
elseif opt.df then
local dv = datasnak.datavalue.value
return dateFormat(dv.time, dv.precision, opt.df, opt.bc, opt.plaindate, statement.qualifiers, opt.lang, "", dv.calendarmodel)
end
else
return rawValue(datasnak.datavalue)
end
end
local function sourced(claim)
if claim.references then
for kr, vr in pairs(claim.references) do
local ref = mw.wikibase.renderSnaks(vr.snaks)
if not ref:find("Wiki") then
return true
end
end
end
end
local function linkedItem(id, args)
local linkprefix = (args.linkprefix or ""):gsub('"', '')
local lpostfix = (args.lpostfix or ""):gsub('"', '')
local prefix = (args.prefix or ""):gsub('"', '')
local postfix = (args.postfix or ""):gsub('"', '')
local wikilinkprefix = (args.wikilinkprefix or ""):gsub('"', '')
local dtxt = args.dtxt
local uselabel = parseParam( args.uselabel, true)
local langs = (args.langs and #args.langs>0) and args.langs or { args.lang }
local disp
local sitelink = mw.wikibase.getSitelink(id, args.linksproject)
local label, islabel
if dtxt then
label, islabel = dtxt, true
else
label, islabel = labelOrId(id, langs)
end
if sitelink then
if not uselabel then
local pos = sitelink:find(":") or 0
local slink = sitelink
if pos > 0 then
local pfx = sitelink:sub(1,pos-1)
if mw.site.namespaces[pfx] then
slink = sitelink:sub(pos+1)
end
end
slink = slink:gsub("%s%(.+%)$", ""):gsub(",.+$", "")
if label:find("^%u") then
label = slink:gsub("^(%l)", string.upper)
else
label = slink:gsub("^(%u)", string.lower)
end
end
disp = "[[" .. wikilinkprefix .. sitelink .. lpostfix .. "|" .. prefix .. label .. postfix .. "]]"
elseif islabel then
disp = prefix .. label .. postfix
else
disp = prefix .. label .. postfix .. i18n.missinginfocat
end
return disp
end
local function rendersnak(propval, args, linked, lpre, lpost, pre, post, unitabbr, filter)
lpre = lpre or ""
lpost = lpost or ""
pre = pre or ""
post = post or ""
args.lang = args.lang or (args.langs and args.langs[1]) or findLang();
local langs = (args.langs and #args.langs>0) and args.langs or {args.lang }
local snak = propval.mainsnak or propval
local dtype = snak.datatype
local dv = snak.datavalue
dv = dv and dv.value
local val, mlt
local namedas;
namedas = propval.qualifiers and propval.qualifiers.P1932 and propval.qualifiers.P1932[1].datavalue and propval.qualifiers.P1932[1].datavalue.value or nil
args.dtxt = namedas
if propval.rank and not args.reqranks[propval.rank] then
return nil
elseif snak.snaktype == "somevalue" then
val = namedas or i18n["Unknown"]
elseif snak.snaktype == "novalue" then
-- return nothing
elseif dtype == "wikibase-item" then
local qnumber = dv.id
if linked then
val = linkedItem(qnumber, args)
else
if namedas then
val = pre .. namedas .. post
else
local label, islabel = labelOrId(qnumber, langs)
val = pre .. label .. post
end
end
elseif dtype == "time" then
if args.hijri then
val = hijriFormat(propval.qualifiers, args.df, args.lang)
else
val = dateFormat(dv.time, dv.precision, args.df, args.bc, args.plaindate, propval.qualifiers, args.lang, "", dv.calendarmodel)
end
elseif dtype == "commonsMedia" or dtype == "external-id" or dtype == "string" or dtype == "url" then
if dtype == "external-id" and args.fullidurl then
val = mw.ustring.match(mw.wikibase.formatValue(snak), "%[(https?://[^%s%]]+)")
elseif (lpre == "" or lpre == ":") and lpost == "" then
val = pre .. dv .. post
elseif dtype == "external-id" then
val = "[" .. lpre .. dv .. lpost .. " " .. pre .. dv .. post .. "]"
else
val = "[[" .. lpre .. dv .. lpost .. "|" .. pre .. dv .. post .. "]]"
end
elseif dtype == "quantity" then
local amount = tonumber(dv.amount) or i18n["NaN"]
local unit = ""
local unitqid = string.match(dv.unit, "(Q%d+)")
if filter and unitqid ~= filter then return nil end
if unitqid then
local uname = labelOrId(unitqid, langs) or ""
if uname ~= "" then unit = " " .. uname end
end
val = tostring(amount) .. unit
elseif dtype == "globe-coordinate" then
local lat, long, prec = dv.latitude, dv.longitude, dv.precision
local show = (args.show or ""):lower()
if show == "lat" then
val = decimalPrecision(lat, prec)
elseif show == "lon" then
val = decimalPrecision(long, prec)
elseif show == "longlat" then
val = decimalPrecision(long, prec) .. ", " .. decimalPrecision(lat, prec)
else
local ns = lat < 0 and "S" or "N"
local ew = long < 0 and "W" or "E"
if lat < 0 then lat = -lat end
if long < 0 then long = -long end
val = decimalPrecision(lat, prec) .. "°" .. ns .. " " .. decimalPrecision(long, prec) .. "°" .. ew
end
elseif dtype == "monolingualtext" then
val = pre .. dv.text .. post
mlt = dv.language
else
val = "unknown data type: " .. dtype
end
return val, mlt
end
local function assembleoutput(out, args, entityID, propertyID)
local sorted = parseParam(args.sorted, false)
local noicon = parseParam(args.noicon, false)
local list = args.list or ""
local separator = args.sep or ""
separator = string.gsub(separator, '"', '')
if separator == "" then
local rtl_lang = {ar = true, fa = true, ur = true, ku = true, he = true}
separator = rtl_lang[args.lang] and i18n["list separator-ar"] or i18n["list separator"]
end
local strout
if #out > 0 then
if sorted then table.sort(out) end
if list == "" then
strout = table.concat(out, separator)
elseif list:lower() == "prose" then
strout = mw.text.listToText(out)
else
strout = mw.getCurrentFrame():expandTemplate{title = list, args = out}
end
else
strout = nil
end
return strout
end
-- WdItem
local function propertyvalueandquals(objproperty, args, qualID)
-- needs this style of declaration because it's re-entrant
-- onlysourced is a boolean passed to return only values sourced to other than Wikipedia
-- if nothing or an empty string is passed set it true
local onlysrc = parseParam(args.onlysourced, false)
-- linked is a a boolean that enables the link to a local page via sitelink
-- if nothing or an empty string is passed set it true
local linked = parseParam(args.linked, true)
-- prefix is a string that may be nil, empty (""), or a string of characters
-- this is prefixed to each value
-- useful when when multiple values are returned
-- any double-quotes " are stripped out, so that spaces may be passed
local prefix = (args.prefix or ""):gsub('"', '')
-- postfix is a string that may be nil, empty (""), or a string of characters
-- this is postfixed to each value
-- useful when when multiple values are returned
-- any double-quotes " are stripped out, so that spaces may be passed
local postfix = (args.postfix or ""):gsub('"', '')
-- linkprefix is a string that may be nil, empty (""), or a string of characters
-- this creates a link and is then prefixed to each value
-- useful when when multiple values are returned and indirect links are needed
-- any double-quotes " are stripped out, so that spaces may be passed
local linkprefix = (args.linkprefix or ""):gsub('"', '')
-- linkpostfix is a string that may be nil, empty (""), or a string of characters
-- this is postfixed to each value when linking is enabled with linkprefix
-- useful when when multiple values are returned
-- any double-quotes " are stripped out, so that spaces may be passed
local lpostfix = (args.linkpostfix or ""):gsub('"', '')
-- wdlinks is a boolean passed to enable links to Wikidata when no article exists
-- if nothing or an empty string is passed set it false
local wdlinks = parseParam(args.wdlinks, false)
-- unitabbr is a boolean passed to enable unit abbreviations for common units
-- if nothing or an empty string is passed set it false
local unitabbr = parseParam(args.unitabbr, false)
-- qualsonly is a boolean passed to return just the qualifiers
-- if nothing or an empty string is passed set it false
local qualsonly = parseParam(args.qualsonly, false)
-- maxvals is a string that may be nil, empty (""), or a number
-- this determines how many items may be returned when multiple values are available
-- setting it = 1 is useful where the returned string is used within another call, e.g. image
local maxvals = tonumber(args.maxvals) or 0
-- plaindate boolean
-- to disable/enable "sourcing cirumstances" or use adjectival form for the plain date
local plaindate = args.plaindate or false
args.plaindate = plaindate
-- allow qualifiers to have a different date format; default to year unless qualsonly is set
args.qualifierdateformat = args.qualifierdateformat or (not qualsonly and "y")
local lang = args.lang or (args.langs and args.langs[1]) or findLang()
-- qualID is a string list of wanted qualifiers or "ALL"
qualID = qualID or ""
-- capitalise list of wanted qualifiers and substitute "DATES"
qualID = qualID:upper():gsub("DATES", "P580, P582")
local allflag = (qualID == "ALL")
-- create table of wanted qualifiers as key
local qwanted = {}
-- create sequence of wanted qualifiers
local qorder = {}
for q in mw.text.gsplit(qualID, "%p") do -- split at punctuation and iterate
local qtrim = mw.text.trim(q)
if qtrim ~= "" then
qwanted[mw.text.trim(q)] = true
qorder[#qorder+1] = qtrim
end
end
-- qsep is the output separator for rendering qualifier list
local qsep = (args.qsep or ""):gsub('"', '')
-- qargs are the arguments to supply to assembleoutput()
local qargs = {
["onlysourced"] = false,
["linked"] = tostring(linked),
["prefix"] = args.qprefix,
["postfix"] = args.qpostfix,
["linkprefix"] = args.qlinkprefix,
["linkpostfix"] = args.qlinkpostfix,
["wdlinks"] = false,
["unitabbr"] = tostring(unitabbr),
["maxvals"] = 0,
["sorted"] = tostring(args.qsorted),
["noicon"] = true,
["list"] = args.qlist,
["sep"] = qsep,
-- ["langobj"] = args.langobj,
["lang"] = lang,
langs = args.langs,
["df"] = args.qualifierdateformat,
["shortname"] = parseParam(args.qshortname, false),
}
-- all proper values of a Wikidata property will be the same type as the first
-- qualifiers don't have a mainsnak, properties do
--#Modified line
local datatype = objproperty[1].datatype or (objproperty[1].mainsnak and objproperty[1].mainsnak.datatype)
-- out[] holds the a list of returned values for this property
-- mlt[] holds the language code if the datatype is monolingual text
local out = {}
local mlt = {}
for k, v in ipairs(objproperty) do
local hasvalue = true
if (onlysrc and not sourced(v)) then
-- no value: it isn't sourced when onlysourced=true
hasvalue = false
else
local val, lcode = rendersnak(v, args, linked, linkprefix, lpostfix, prefix, postfix, unitabbr)
if not val then
hasvalue = false -- rank doesn't match
elseif qualsonly and qualID then
-- suppress value returned: only qualifiers are requested
else
out[#out+1], mlt[#out+1] = val, lcode
end
end
-- See if qualifiers are to be returned:
local snak = v.mainsnak or v
if hasvalue and v.qualifiers and qualID ~= "" and snak.snaktype~="novalue" then
-- collect all wanted qualifier values returned in qlist, indexed by propertyID
local qlist = {}
local timestart, timeend = "", ""
-- loop through qualifiers
for k1, v1 in pairs(v.qualifiers) do
if allflag or qwanted[k1] then
if k1 == "P1326" then
local ts = v1[1].datavalue.value.time
local dp = v1[1].datavalue.value.precision
qlist[k1] = dateFormat(ts, dp, args.qualifierdateformat, args.bc, plaindate, "", lang, "before")
elseif k1 == "P1319" then
local ts = v1[1].datavalue.value.time
local dp = v1[1].datavalue.value.precision
qlist[k1] = dateFormat(ts, dp, args.qualifierdateformat, args.bc, plaindate, "", lang, "after")
elseif k1 == "P580" then
timestart = propertyvalueandquals(v1, qargs)[1] or "" -- treat only one start time as valid
elseif k1 == "P582" then
timeend = propertyvalueandquals(v1, qargs)[1] or "" -- treat only one end time as valid
else
local q = assembleoutput(propertyvalueandquals(v1, qargs), qargs)
-- we already deal with circa via 'sourcing circumstances' if the datatype was time
-- circa may be either linked or unlinked *** internationalise later ***
if datatype ~= "time" or q ~= "circa" and not (type(q) == "string" and q:find("circa]]")) then
qlist[k1] = q
end
end
end -- of test for wanted
end -- of loop through qualifiers
-- set date separator
local t = timestart .. timeend
-- *** internationalise date separators later ***
local dsep = "–"
if t:find("%s") or t:find(" ") then dsep = " – " end
-- set the order for the list of qualifiers returned; start time and end time go last
if next(qlist) then
local qlistout = {}
if allflag then
for k2, v2 in pairs(qlist) do
qlistout[#qlistout+1] = v2
end
else
for i2, v2 in ipairs(qorder) do
qlistout[#qlistout+1] = qlist[v2]
end
end
if t ~= "" then
qlistout[#qlistout+1] = timestart .. dsep .. timeend
end
local qstr = assembleoutput(qlistout, qargs)
if qualsonly then
out[#out+1] = qstr
else
out[#out] = out[#out] .. " (" .. qstr .. ")"
end
elseif t ~= "" then
if qualsonly then
if timestart == "" then
out[#out+1] = timeend
elseif timeend == "" then
out[#out+1] = timestart
else
out[#out+1] = timestart .. dsep .. timeend
end
else
out[#out] = out[#out] .. " (" .. timestart .. dsep .. timeend .. ")"
end
end
end -- of test for qualifiers wanted
if maxvals > 0 and #out >= maxvals then break end
end -- of for each value loop
-- we need to pick one value to return if the datatype was "monolingualtext"
-- if there's only one value, use that
-- otherwise look through the fallback languages for a match
if datatype == "monolingualtext" and #out >1 then
lang = mw.text.split( lang, '-', true )[1]
local fbtbl = mw.language.getFallbacksFor( lang )
table.insert( fbtbl, 1, lang )
local bestval = ""
local found = false
for idx1, lang1 in ipairs(fbtbl) do
for idx2, lang2 in ipairs(mlt) do
if (lang1 == lang2) and not found then
bestval = out[idx2]
found = true
break
end
end -- loop through values of property
end -- loop through fallback languages
if found then
-- replace output table with a table containing the best value
out = { bestval }
else
-- more than one value and none of them on the list of fallback languages
-- sod it, just give them the first one
out = { out[1] }
end
end
return out
end
local function mergeOptions(defaults, overrides)
overrides = overrides or {}
defaults = defaults or {}
local result = {}
for k, v in pairs(defaults) do
result[k] = v
end
for k, v in pairs(overrides) do
result[k] = v
if k == 'rank' then
result.reqranks = setRanks(v)
end
end
return result
end
local function filterbyqualifier(statements,qual,value)
local filtered_statements = {}
for _, statement in ipairs(statements) do
if statement.qualifiers and statement.qualifiers[qual] then
if '*' == value then
filtered_statements[#filtered_statements + 1] = statement
else
for _, q in ipairs(statement.qualifiers[qual]) do
if q.datavalue and (rawValue(q.datavalue) == value) then
filtered_statements[#filtered_statements + 1] = statement
break
end
end
end
end
end
return filtered_statements
end
local function orderbyrank(statements)
local pref_count = 0
local sorted_statements = {}
for k,v in ipairs(statements) do
if v.rank == 'preferred' then
pref_count = pref_count + 1
table.insert(sorted_statements, pref_count, v)
else
sorted_statements[#sorted_statements + 1] = v
end
end
return sorted_statements
end
-------------------------------------------------------------------------------
-- helper class functions
-------------------------------------------------------------------------------
local function class()
local c = {}
c.__index = c
function c:new(...)
local o = setmetatable({}, c)
if o.init then o:init(...) end
return o
end
return c
end
-------------------------------------------------------------------------------
-- Statement Class Definition
-------------------------------------------------------------------------------
local WdStatement = class()
function WdStatement:getValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local statement = self._statement
if not statement then
return nil
end
local qualID = mw.text.trim(mergedOpts.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = propertyvalueandquals({statement}, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.parent.qid, self.pid)
end
function WdStatement:getRawValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
if not self._statement then
return nil
end
local datasnak = self._statement.mainsnak or self._statement
if datasnak.snaktype == "value" then
return rawValueOrDF(self._statement, mergedOpts)
else
return datasnak.snaktype
end
end
function WdStatement:getRawQual(qualID)
local ret = {}
local s = self._statement
if s.qualifiers and s.qualifiers[qualID] then
for _,q in pairs(s.qualifiers[qualID]) do
if q.snaktype == "value" then
ret[#ret + 1] = rawValueOrDF(q, self.parent.options)
else
ret[#ret + 1] = q.snaktype
end
end
end
return ret
end
-------------------------------------------------------------------------------
-- Statements Class Definition
-------------------------------------------------------------------------------
local WdStatements = class()
function WdStatements:getStatmentsTable()
return self._statements
end
function WdStatements:count()
return #self._statements
end
function WdStatements:getFilters()
return self.filtered_by
end
function WdStatements:filter(filter_t)
local statements = self._statements
if #statements == 0 then return self; end
local ret = WdStatements:new()
ret.parent = self.parent
ret.filtered_by = {}
for _,v in ipairs(self.filtered_by) do
ret.filtered_by[#ret.filtered_by + 1] = v
end
local filtered_statements = {}
for k,v in pairs(filter_t) do
filtered_statements = filterbyqualifier(statements, k, v)
ret.filtered_by[#ret.filtered_by + 1] = {[k] = v}
if #filtered_statements == 0 then
break;
else
statements = filtered_statements
end
end
ret._statements = filtered_statements
return ret
end
function WdStatements:getValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local statements = self._statements
if not statements or #statements == 0 then
return nil
end
local qualID = mw.text.trim(mergedOpts.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = propertyvalueandquals(statements, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.parent.qid, self.pid)
end
function WdStatements:getQual(qualID, opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local statements = self._statements
if not statements or #statements == 0 then
return nil
end
local out = propertyvalueandquals(statements, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.parent.qid, self.pid)
end
function WdStatements:getRawQual(qualID)
local ret = {}
for _,s in pairs(self._statements) do
local qual_t = {}
if s.qualifiers and s.qualifiers[qualID] then
for _,q in pairs(s.qualifiers[qualID]) do
if q.snaktype == "value" then
qual_t[#qual_t + 1] = rawValueOrDF(q, self.parent.options)
else
qual_t[#qual_t + 1] = q.snaktype
end
end
end
ret[#ret + 1] = qual_t
end
return ret
end
function WdStatements:getRawValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local ret = {}
for _,v in pairs(self._statements) do
local datasnak = v.mainsnak or v
if datasnak.snaktype=="value" then
ret[#ret + 1] = rawValueOrDF(v, mergedOpts)
else
ret[#ret + 1] = datasnak.snaktype
end
end
return ret
end
function WdStatements:get(index)
local ret = WdStatement:new()
ret.parent = self.parent
ret.filtered_by = ret.filtered_by
ret._statement = self._statements[index]
ret.pid = ret.pid
return ret
end
function WdStatements:iter()
local i = 0
local n = self._statements and #self._statements or 0
return function()
i = i + 1
if i <= n then
return i, self:get(i)
end
end
end
function WdStatements:ipairs()
return self:iter()
end
function WdStatements:getBestOne()
local orderd_statements = orderbyrank(self._statements)
local ret = WdStatement:new() --setmetatable({}, WdStatement)
ret.parent = self.parent
ret.filtered_by = ret.filtered_by
ret._statement = orderd_statements[1]
ret.pid = ret.pid
return ret
end
-------------------------------------------------------------------------------
-- WdItem Class Definition
-------------------------------------------------------------------------------
local WdItem = class()
function WdItem:__tostring()
return "WdItem: " .. (self.qid or "no QID")
end
function WdItem:UpdateOptions(in_newOpts)
local newOpts = in_newOpts or {}
for k, v in pairs(newOpts or {}) do
self.options[k] = v
end
-- Set default options
if newOpts.lang then
self.options.lang = findLang(newOpts.lang)
end
if (newOpts.lang and not self.options.lang) or
(not newOpts.lang and newOpts.langs and #newOpts.langs > 0) then
for _, l in ipairs(newOpts.langs) do
self.options.lang = findLang(l)
if self.options.lang then
break;
end
end
end
if not self.options.lang then
self.options.lang = findLang();
end
if newOpts.rank then
self.options.reqranks = setRanks(self.options.rank)
end
if not self.options.reqranks then
self.options.reqranks = setRanks('preferred normal')
end
end
function WdItem:init(qid, options,snak)
if qid == "" then qid = nil; end
self.qid = qid
self.snak = snak
self.options = options or {}
self:UpdateOptions(options)
return self
end
function WdItem:newFromSnaks(snakTable, options)
local self = WdItem:new(nil, options or {}, snakTable)
self:UpdateOptions(options)
return self
end
function WdItem:setOptions(newOpts)
self:UpdateOptions(newOpts)
end
function WdItem:getStatements(pid, opts)
local mergedOpts = mergeOptions(self.options, opts or {})
local statements
local ret = WdStatements:new()
ret.parent = self
ret.filtered_by = {}
ret._statements = {}
ret.pid = pid
if self.snak and self.snak[pid] then
statements = self.snak[pid]
elseif not self.qid or not mw.wikibase then
statements = {}
elseif mergedOpts.reqranks and mergedOpts.reqranks.best then
statements = mw.wikibase.getBestStatements(self.qid, pid) or {}
else
statements = mw.wikibase.getAllStatements(self.qid, pid) or {}
local filtered_statements = {}
if not (mergedOpts.reqranks.deprecated == true and mergedOpts.reqranks.preferred == true and mergedOpts.reqranks.normal == true) then
for _,s in pairs(statements) do
if mergedOpts.reqranks[s.rank] then
filtered_statements[#filtered_statements + 1] = s
end
end
end
statements = filtered_statements
end
if #statements > 0 and mergedOpts.qualifiedaspossible and mergedOpts.qualifiedaspossible ~= {} then
local filtered_statements = {}
for q,qv in pairs(mergedOpts.qualifiedaspossible) do
filtered_statements = filterbyqualifier(statements, q, qv)
if #filtered_statements > 0 then
ret.filtered_by[#ret.filtered_by + 1] = {[q] = qv}
statements = filtered_statements
end
end
end
if #statements > 0 and mergedOpts.qualified and mergedOpts.qualified ~= {} then
for q,qv in pairs(mergedOpts.qualified) do
statements = filterbyqualifier(statements, q, qv)
ret.filtered_by[#ret.filtered_by + 1] = {[q] = qv}
if #statements == 0 then break; end
end
end
ret._statements = statements
return ret
end
function WdItem:getValue(pid, opts)
local mergedOpts = mergeOptions(self.options, opts)
local statements
for _, p in pairs(type(pid) == "string" and {pid} or pid) do
statements = self:getStatements(p, mergedOpts):getStatmentsTable()
if #statements > 0 then
break;
end
end
if not statements or #statements == 0 then
return nil
end
local qualID = mw.text.trim(mergedOpts.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = propertyvalueandquals(statements, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.qid, pid)
end
function WdItem:getRawValue(pid, opts)
local mergedOpts = mergeOptions(self.options, opts)
local statements
for _, p in pairs(type(pid) == "string" and {pid} or pid) do
statements = self:getStatements(p, mergedOpts):getStatmentsTable()
if #statements > 0 then
break;
end
end
if not statements or #statements == 0 then
return nil
end
local ret = {}
for _,v in pairs(statements) do
local datasnak = v.mainsnak or v
if datasnak.snaktype=="value" then
ret[#ret + 1] = rawValueOrDF(v, mergedOpts)
else
ret[#ret + 1] = datasnak.snaktype
end
end
return ret
end
function WdItem:getValueFromSnaks(pid, opts)
if not self.snak or not self.snak[pid] then
return nil
end
local mergedOpts = mergeOptions(self.options, opts)
local props = self.snak[pid]
local out = propertyvalueandquals(props, mergedOpts)
return assembleoutput(out, mergedOpts, nil, pid)
end
function WdItem:getPropertyIDsTable(pid, opts)
local mergedOpts = mergeOptions(self.options, opts)
mergedOpts.noicon = tostring(parseParam(mergedOpts.noicon or "", true))
local statements = self:getStatements(pid, opts)
if not statements or #statements == 0 then return {} end
local onlysrc = parseParam(mergedOpts.onlysourced or mergedOpts.onlysourced, true)
local maxvals = tonumber(mergedOpts.maxvals) or 0
local out = {}
for i, v in ipairs(statements) do
local snak = v.mainsnak or v
if (snak.datatype == "wikibase-item")
and (v.rank and mergedOpts.reqranks[v.rank:sub(1, 1)])
and (snak.snaktype == "value")
and (sourced(v) or not onlysrc) then
out[#out+1] = snak.datavalue.value.id
end
if maxvals > 0 and #out >= maxvals then break end
end
return out
end
function WdItem:getPropertyIDs(pid, opts)
local out = WdItem:getPropertyIDsTable(pid, opts)
if #out == 0 then
return nil
end
return assembleoutput(out, mergeOptions(self.options, opts), self.qid, pid)
end
function WdItem:getPropOfProp(prop1, prop2, opts)
local mergedOpts = mergeOptions(self.options, opts)
if not self.qid then return nil end
local maxvals = tonumber(mergedOpts.maxvals) or 0
local prop1Values = self:getStatements(prop1, opts):getRawValue()
if #prop1Values == 0 then return nil end
local out = {}
for k, qid2 in ipairs(prop1Values) do
local item2 = WdItem:new(qid2, mergedOpts)
local prop2Values = item2:getStatements(prop2):getStatmentsTable()
if prop2Values and prop2Values[1] then
local out2 = propertyvalueandquals(prop2Values, mergedOpts, mergedOpts.qual)
out[#out+1] = assembleoutput(out2, mergedOpts, qid2, prop2)
end
if maxvals > 0 and #out >= maxvals then break end
end
return assembleoutput(out, mergedOpts, self.qid, prop1)
end
function WdItem:getRawPropOfProp(prop1, prop2, opts)
local mergedOpts = mergeOptions(self.options, opts)
if not self.qid then return nil end
local prop1Values = self:getStatements(prop1, opts):getRawValue()
if #prop1Values == 0 then return nil end
local out = {}
for k, qid2 in ipairs(prop1Values) do
local item2 = WdItem:new(qid2, mergedOpts)
local prop2Values = item2:getStatements(prop2):getRawValue()
for _,val in ipairs(prop2Values) do
if not in_array(val,out) then
out[#out + 1] = val
end
end
end
return out
end
function WdItem:getLangOfProp(pid)
if not pid then return {}; end
local out = {}
local props = self.snak and self.snak[pid] or (self.qid and mw.wikibase.getAllStatements(self.qid, pid)) or {}
for _, v in ipairs(props) do
local datasnak = v.mainsnak or v
if datasnak.datatype == "monolingualtext" and datasnak.datavalue then
out[#out + 1] = datasnak.datavalue.value.language
end
end
return out
end
function WdItem:followQid(props, all)
all = parseParam(all, false)
props = (props or ""):upper()
if not self.qid then return nil end
if props == "" then return self.qid end
local out = {}
for p in mw.text.gsplit(props, "%p") do
p = mw.text.trim(p)
for i, v in ipairs(mw.wikibase.getBestStatements(self.qid, p)) do
local linkedid = v.mainsnak.datavalue and v.mainsnak.datavalue.value and v.mainsnak.datavalue.value.id
if linkedid then
if all then
out[#out+1] = linkedid
else
return WdItem:new(linkedid)
end
end
end
end
if #out > 0 then
return table.concat(out, " ")
else
return self
end
end
function WdItem:getLabel(langs)
if self.qid then
local label, found = labelOrId(self.qid, langs or self.options.langs)
return found and label or nil
else
return nil
end
end
function WdItem:getDescription(langs)
if self.qid then
local langs_t = langs or self.options.langs
local desc
for _,lang in ipairs(langs_t) do
desc = mw.wikibase.getDescriptionByLang(self.qid, lang)
if desc and desc ~= "" then
return desc
end
end
end
return nil
end
-------------------------------------------------------------------------------
-- Public API - WdItem Constructors
-------------------------------------------------------------------------------
p.WdItem = WdItem
function p.newItem(qid, opts, snak )
return WdItem:new(qid, opts, snak)
end
function p.newSnakItem(snakTable, opts)
return WdItem:newFromSnaks(snakTable, opts)
end
return p
ow1vvb8v79bsv64r89cg4wquh1lp3dn
وحدة:WdItem/شرح
828
307163
617368
2026-08-13T16:24:13Z
حبيشان
52457
استيراد من ar.wiktionary.org
617368
wikitext
text/x-wiki
{{رسالة استدعاء من لوا فقط}}
io69yw7jlz2cnlf2lnwzv3oi8pu9a6x
وحدة:WdItem/ملعب
828
307164
617369
2026-08-13T16:24:15Z
حبيشان
52457
استيراد من ar.wiktionary.org
617369
Scribunto
text/plain
-- Module: WdItem
-- Object-oriented Wikidata access module for Lua
-- Refactored from WikidataIB for direct Lua usage
require("strict")
local p = {}
-- i18n configuration
local i18n = {
["errors"] = {
["property-not-found"] = "الخاصية غير موجودة.",
["entity-not-found"] = "الكيان على ويكي بيانات غير موجود.",
["unknown-claim-type"] = "نوع الادعاء غير معروف.",
["local-article-not-found"] = "المعرف متاح على ويكي بيانات، ولكن المقال غير متاح على ويكيبيديا",
},
["months"] = {
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"
},
["Unknown"] = "Unknown",
["NaN"] = "Not a number",
["missinginfocat"] = "[[تصنيف:Articles with missing Wikidata information]]",
["list separator"] = ", ",
["list separator-ar"] = "، ",
}
-- Date precision constants
local dp = {
[6] = "millennium",
[7] = "century",
[8] = "decade",
[9] = "year",
[10] = "month",
[11] = "day",
}
-- local options_aliases = {
-- ["osd"] = "onlysourced",
-- ["wdl"] = "wdlinks",
-- ["uabbr"] = "unitabbr",
-- ["qo"] = "qualsonly",
-- ["lp"] = "linkprefix",
-- ["lprefix"] = "linkprefix",
-- ["qlp"] = "qlinkprefix",
-- ["sn"] = "shortname",
-- ["uselbl"] = "uselabel",
-- ["pd"] = "plaindate",
-- ["qdf"] = "qualifierdateformat",
-- ["df"] = "qualifierdateformat",
-- ["qsn"] = "qshortname"
-- }
-- setmetatable(options_aliases, { __index = function(t, k) return k end })
-------------------------------------------------------------------------------
-- Internal helper functions
-------------------------------------------------------------------------------
local function in_array( needle, haystack )
if needle == nil then
return false
end
for n, v in ipairs( haystack ) do
if v == needle then
return n
end
end
return false
end
local function findLang(langcode)
local langobj
langcode = mw.text.trim(langcode or "")
if langcode ~= "" then
if mw.language.isKnownLanguageTag(langcode) then
langobj = mw.language.new(langcode)
end
else
langobj = mw.language.getContentLanguage()
end
return langobj and langobj.code
end
local function parseParam(param, default)
if param == nil then
return default
end
return param
end
local function setRanks(rank)
rank = (rank or ""):lower()
local ranks = {}
for w in string.gmatch(rank, "%a+") do
if w == "best" or w == "preferred" or w == "normal" or w == "deprecated" then
ranks[w] = true
end
end
if ranks.best or not next(ranks) then
ranks.preferred = true
ranks.normal = true
ranks.deprecated = false
end
return ranks
end
local function labelOrId(id, lang_t)
local langs = lang_t or {}
local label
for _,lang in ipairs(langs) do
label = mw.wikibase.getLabelByLang(id, lang)
if label ~= "" then
break;
end
end
label = label or mw.wikibase.getLabel(id)
if label then
return mw.text.nowiki(label), true
else
return id, false
end
end
local function roundto(x, sf)
if x == 0 then return 0 end
local s = 1
if x < 0 then
x = -x
s = -1
end
if sf < 1 then sf = 1 end
local p = 10 ^ (math.floor(math.log10(x)) - sf + 1)
x = math.floor(x / p + 0.5) * p * s
if x == math.floor(x) then x = math.floor(x) end
return x
end
local function decimalPrecision(x, p)
local s = 1
if x < 0 then
x = -x
s = -1
end
if not tonumber(p) then p = 1e-4
elseif p > 1 then p = 1
elseif p < 1e-6 then p = 1e-6
else p = 10 ^ math.floor(math.log10(p))
end
x = math.floor(x / p + 0.5) * p * s
if x == math.floor(x) then x = math.floor(x) end
if math.abs(x) < 1e-4 then x = string.format("%f", x) end
return x
end
local function decimalToDMS(x, p)
if not tonumber(p) then p = 1e-4 end
local d = math.floor(x)
local ms = (x - d) * 60
if p > 0.5 then
if ms > 30 then d = d + 1 end
ms = 0
end
local m = math.floor(ms)
local s = (ms - m) * 60
if p > 0.008 then
if s > 30 then m = m +1 end
s = 0
elseif p > 0.00014 then
s = math.floor(s + 0.5)
elseif p > 0.000014 then
s = math.floor(10 * s + 0.5) / 10
elseif p > 0.0000014 then
s = math.floor(100 * s + 0.5) / 100
else
s = math.floor(1000 * s + 0.5) / 1000
end
return d, m, s
end
local function rawValue(dataValue)
if dataValue.type == "string" then
return dataValue.value
elseif dataValue.type == "wikibase-entityid" then
return dataValue.value and dataValue.value.id
elseif dataValue.type == "monolingualtext" then
return dataValue.value.text
elseif dataValue.type == "quantity" then
return tonumber(dataValue.value.amount)
elseif dataValue.type == 'time' then
return dataValue.value.time
elseif dataValue.type == "globecoordinate" then
return dataValue.value.latitude .. '/' .. dataValue.value.longitude
end
end
local function compareValue(dataValue, strValue)
return rawValue(dataValue) == strValue
end
local function dateFormat(timestamp, dprec, df, bcf, plaindate, qualifiers, lang, adj, model)
df = (df or ""):lower()
if df == "ymd" then
if timestamp:sub(1,1) == "+" then
return timestamp:sub(2,11)
else
local yr = tonumber(timestamp:sub(2,5)) - 1
yr = ("000" .. yr):sub(-4)
if yr ~= "0000" then yr = "-" .. yr end
return yr .. timestamp:sub(6,11)
end
end
timestamp = timestamp:gsub("%-00%-00T", "-01-01T")
dprec = dprec or 11
if df == "y" and dprec > 9 then dprec = 9 end
dprec = dprec>11 and 11 or dprec
dprec = dprec<6 and 6 or dprec
bcf = (bcf or ""):upper()
plaindate = (plaindate or ""):sub(1,1):lower()
if plaindate == "" or plaindate == "n" or plaindate == "f" or plaindate == "0" then plaindate = false end
lang = lang or findLang()
adj = adj or ""
local bc = timestamp:sub(1, 1)=="-" and "BC" or ""
local year, month, day = timestamp:match("[+-](%d*)-(%d*)-(%d*)T")
local iso = tonumber(year)
if df == 'tt' then
return {
year = tonumber(timestamp:match("^([+-]%d*)-")) or 0,
month = tonumber(month) or 0,
day = tonumber(day) or 0
}
end
if dprec == 6 then iso = math.floor( (iso - 1) / 1000 ) + 1 end
if dprec == 7 then iso = math.floor( (iso - 1) / 100 ) + 1 end
if dprec == 8 then iso = math.floor( iso / 10 ) .. "0" end
if dprec == 10 then iso = year .. "-" .. month end
if dprec == 11 then iso = year .. "-" .. month .. "-" .. day end
local sc = not plaindate and qualifiers and qualifiers.P1480
if sc then
for k1, v1 in pairs(sc) do
if v1.datavalue and v1.datavalue.value.id == "Q5727902" then
adj = "circa"
break
end
end
end
local calendarmodel = ""
if tonumber(year) > 1582 and dprec > 8 and not plaindate and model == "http://www.wikidata.org/entity/Q1985786" then
calendarmodel = "julian"
end
-- Simplified date formatting (complex date module not available)
local fdate = tostring(iso)
if bc ~= "" then
fdate = fdate .. " " .. (bcf == "BC" and "BC" or "BCE")
end
if adj == "circa" then
fdate = "c. " .. fdate
end
return fdate
end
local function hijriFormat(qualifiers, dateformat, lang)
if not (qualifiers and qualifiers.P4241) then return; end
local year, month, monthno, day
local val
local qhmonths = {["Q1952053"]=1,["Q489557"]=2, ["Q474167"] = 3, ["Q273815"] = 4, ["Q852002"] = 5, ["Q822218"] = 6,
["Q194210"] = 7, ["Q220914"] = 8, ["Q8867089"]=9, ["Q685440"]=10,["Q150853"]=11,["Q186022"]=12 }
local hmonths = {"محرم","صفر","ربيع الأول","ربيع الآخر","جمادى الأولى","جمادى الآخرة","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة"}
local hmonths_inv = {["محرم"] = 1, ["صفر"]=2, ["ربيع الأول"]=3, ["ربيع الآخر"]=4, ["جمادى الأولى"]=5, ["جمادى الآخرة"]=6, ["رجب"]=7, ["شعبان"]=8, ["رمضان"]=9, ["شوال"]=10, ["ذو القعدة"]=11, ["ذو الحجة"]=12}
for _, item in ipairs(qualifiers.P4241) do
local timeQ = item.datavalue and item.datavalue.value and item.datavalue.value.id
local hastime = false
if timeQ then
local timeQt = mw.wikibase.getBestStatements(timeQ, "P361")
for _,timeQsnak in pairs(timeQt) do
local timeType = timeQsnak.mainsnak and timeQsnak.mainsnak.datavalue and timeQsnak.mainsnak.datavalue.value and timeQsnak.mainsnak.datavalue.value.id
if timeType == "Q28892" then
local timeLableAr = mw.wikibase.getLabelByLang(timeQ, "ar")
if timeLableAr then
year = mw.ustring.match(timeLableAr, "^(%d+) *هـ$")
end
if not year then
local timeLableEn = mw.wikibase.getLabelByLang(timeQ, "en")
if timeLableEn then
year = mw.ustring.match(timeLableAr, "^(%d+) *AH$")
end
end
hastime=true
elseif qhmonths[timeType] then
monthno = qhmonths[timeType]
if monthno>0 and monthno<13 then
month = hmonths[monthno]
end
local timeLableAr = mw.wikibase.getLabelByLang(timeQ, "ar")
if timeLableAr then
day = mw.ustring.match(timeLableAr, "^(%d+) *%a+$")
end
if not day then
local timeLableEn = mw.wikibase.getLabelByLang(timeQ, "en")
if timeLableEn then
day = mw.ustring.match(timeLableAr, "^(%d+) *%a+$")
end
end
hastime=true
end
end
if not hastime then
timeQt = mw.wikibase.getBestStatements(timeQ, "P31")
if "Q125390868" == (timeQt[1].mainsnak and timeQt[1].mainsnak.datavalue and timeQt[1].mainsnak.datavalue.value and timeQt[1].mainsnak.datavalue.value.id ) then
val = mw.wikibase.getLabelByLang(timeQ, "ar")
month, year = mw.ustring.match(val, "^(%a[%a ]+%a) *(%d+) *هـ?$")
monthno = hmonths_inv[month]
end
end
end
end
if year then
if dateformat == "tt" then
return {year = tonumber(year) or 0,
month = monthno or 0,
day = tonumber(day) or 0,
monthname = month or ''}
elseif dateformat == "y" or not month then
return year;
elseif day and month then
if dateformat == 'ymd' then
return string.format("%04d-%02d-%02d", tonumber(year), monthno, tonumber(day));
else
return day .. ' ' .. month .. ' ' .. year;
end
elseif month then
return month .. ' ' .. year;
end
end
return nil;
end
local function rawValueOrDF (statement, opt)
local datasnak = statement.mainsnak or statement
if (datasnak.datavalue and datasnak.datavalue.type == 'time') and (opt.hijri or opt.df) then
if opt.hijri then
return statement.qualifiers and hijriFormat(statement.qualifiers, opt.df) or nil
elseif opt.df then
local dv = datasnak.datavalue.value
return dateFormat(dv.time, dv.precision, opt.df, opt.bc, opt.plaindate, statement.qualifiers, opt.lang, "", dv.calendarmodel)
end
else
return rawValue(datasnak.datavalue)
end
end
local function sourced(claim)
if claim.references then
for kr, vr in pairs(claim.references) do
local ref = mw.wikibase.renderSnaks(vr.snaks)
if not ref:find("Wiki") then
return true
end
end
end
end
local function linkedItem(id, args)
local linkprefix = (args.linkprefix or ""):gsub('"', '')
local lpostfix = (args.lpostfix or ""):gsub('"', '')
local prefix = (args.prefix or ""):gsub('"', '')
local postfix = (args.postfix or ""):gsub('"', '')
local wikilinkprefix = (args.wikilinkprefix or ""):gsub('"', '')
local dtxt = args.dtxt
local uselabel = parseParam( args.uselabel, true)
local langs = (args.langs and #args.langs>0) and args.langs or { args.lang }
local disp
local sitelink = mw.wikibase.getSitelink(id, args.linksproject)
local label, islabel
if dtxt then
label, islabel = dtxt, true
else
label, islabel = labelOrId(id, langs)
end
if sitelink then
if not uselabel then
local pos = sitelink:find(":") or 0
local slink = sitelink
if pos > 0 then
local pfx = sitelink:sub(1,pos-1)
if mw.site.namespaces[pfx] then
slink = sitelink:sub(pos+1)
end
end
slink = slink:gsub("%s%(.+%)$", ""):gsub(",.+$", "")
if label:find("^%u") then
label = slink:gsub("^(%l)", string.upper)
else
label = slink:gsub("^(%u)", string.lower)
end
end
disp = "[[" .. wikilinkprefix .. sitelink .. lpostfix .. "|" .. prefix .. label .. postfix .. "]]"
elseif islabel then
disp = prefix .. label .. postfix
else
disp = prefix .. label .. postfix .. i18n.missinginfocat
end
return disp
end
local function rendersnak(propval, args, linked, lpre, lpost, pre, post, unitabbr, filter)
lpre = lpre or ""
lpost = lpost or ""
pre = pre or ""
post = post or ""
args.lang = args.lang or (args.langs and args.langs[1]) or findLang();
local langs = (args.langs and #args.langs>0) and args.langs or {args.lang }
local snak = propval.mainsnak or propval
local dtype = snak.datatype
local dv = snak.datavalue
dv = dv and dv.value
local val, mlt
local namedas;
namedas = propval.qualifiers and propval.qualifiers.P1932 and propval.qualifiers.P1932[1].datavalue and propval.qualifiers.P1932[1].datavalue.value or nil
args.dtxt = namedas
if propval.rank and not args.reqranks[propval.rank] then
return nil
elseif snak.snaktype == "somevalue" then
val = namedas or i18n["Unknown"]
elseif snak.snaktype == "novalue" then
-- return nothing
elseif dtype == "wikibase-item" then
local qnumber = dv.id
if linked then
val = linkedItem(qnumber, args)
else
if namedas then
val = pre .. namedas .. post
else
local label, islabel = labelOrId(qnumber, langs)
val = pre .. label .. post
end
end
elseif dtype == "time" then
if args.hijri then
val = hijriFormat(propval.qualifiers, args.df, args.lang)
else
val = dateFormat(dv.time, dv.precision, args.df, args.bc, args.plaindate, propval.qualifiers, args.lang, "", dv.calendarmodel)
end
elseif dtype == "commonsMedia" or dtype == "external-id" or dtype == "string" or dtype == "url" then
if (lpre == "" or lpre == ":") and lpost == "" then
val = pre .. dv .. post
elseif dtype == "external-id" then
val = "[" .. lpre .. dv .. lpost .. " " .. pre .. dv .. post .. "]"
else
val = "[[" .. lpre .. dv .. lpost .. "|" .. pre .. dv .. post .. "]]"
end
elseif dtype == "quantity" then
local amount = tonumber(dv.amount) or i18n["NaN"]
local unit = ""
local unitqid = string.match(dv.unit, "(Q%d+)")
if filter and unitqid ~= filter then return nil end
if unitqid then
local uname = labelOrId(unitqid, langs) or ""
if uname ~= "" then unit = " " .. uname end
end
val = tostring(amount) .. unit
elseif dtype == "globe-coordinate" then
local lat, long, prec = dv.latitude, dv.longitude, dv.precision
local show = (args.show or ""):lower()
if show == "lat" then
val = decimalPrecision(lat, prec)
elseif show == "lon" then
val = decimalPrecision(long, prec)
elseif show == "longlat" then
val = decimalPrecision(long, prec) .. ", " .. decimalPrecision(lat, prec)
else
local ns = lat < 0 and "S" or "N"
local ew = long < 0 and "W" or "E"
if lat < 0 then lat = -lat end
if long < 0 then long = -long end
val = decimalPrecision(lat, prec) .. "°" .. ns .. " " .. decimalPrecision(long, prec) .. "°" .. ew
end
elseif dtype == "monolingualtext" then
val = pre .. dv.text .. post
mlt = dv.language
else
val = "unknown data type: " .. dtype
end
return val, mlt
end
local function assembleoutput(out, args, entityID, propertyID)
local sorted = parseParam(args.sorted, false)
local noicon = parseParam(args.noicon, false)
local list = args.list or ""
local separator = args.sep or ""
separator = string.gsub(separator, '"', '')
if separator == "" then
local rtl_lang = {ar = true, fa = true, ur = true, ku = true, he = true}
separator = rtl_lang[args.lang] and i18n["list separator-ar"] or i18n["list separator"]
end
local strout
if #out > 0 then
if sorted then table.sort(out) end
if list == "" then
strout = table.concat(out, separator)
elseif list:lower() == "prose" then
strout = mw.text.listToText(out)
else
strout = mw.getCurrentFrame():expandTemplate{title = list, args = out}
end
else
strout = nil
end
return strout
end
local function propertyvalueandquals(objproperty, args, qualID)
-- needs this style of declaration because it's re-entrant
-- onlysourced is a boolean passed to return only values sourced to other than Wikipedia
-- if nothing or an empty string is passed set it true
local onlysrc = parseParam(args.onlysourced, false)
-- linked is a a boolean that enables the link to a local page via sitelink
-- if nothing or an empty string is passed set it true
local linked = parseParam(args.linked, true)
-- prefix is a string that may be nil, empty (""), or a string of characters
-- this is prefixed to each value
-- useful when when multiple values are returned
-- any double-quotes " are stripped out, so that spaces may be passed
local prefix = (args.prefix or ""):gsub('"', '')
-- postfix is a string that may be nil, empty (""), or a string of characters
-- this is postfixed to each value
-- useful when when multiple values are returned
-- any double-quotes " are stripped out, so that spaces may be passed
local postfix = (args.postfix or ""):gsub('"', '')
-- linkprefix is a string that may be nil, empty (""), or a string of characters
-- this creates a link and is then prefixed to each value
-- useful when when multiple values are returned and indirect links are needed
-- any double-quotes " are stripped out, so that spaces may be passed
local linkprefix = (args.linkprefix or ""):gsub('"', '')
-- linkpostfix is a string that may be nil, empty (""), or a string of characters
-- this is postfixed to each value when linking is enabled with linkprefix
-- useful when when multiple values are returned
-- any double-quotes " are stripped out, so that spaces may be passed
local lpostfix = (args.linkpostfix or ""):gsub('"', '')
-- wdlinks is a boolean passed to enable links to Wikidata when no article exists
-- if nothing or an empty string is passed set it false
local wdlinks = parseParam(args.wdlinks, false)
-- unitabbr is a boolean passed to enable unit abbreviations for common units
-- if nothing or an empty string is passed set it false
local unitabbr = parseParam(args.unitabbr, false)
-- qualsonly is a boolean passed to return just the qualifiers
-- if nothing or an empty string is passed set it false
local qualsonly = parseParam(args.qualsonly, false)
-- maxvals is a string that may be nil, empty (""), or a number
-- this determines how many items may be returned when multiple values are available
-- setting it = 1 is useful where the returned string is used within another call, e.g. image
local maxvals = tonumber(args.maxvals) or 0
-- plaindate boolean
-- to disable/enable "sourcing cirumstances" or use adjectival form for the plain date
local plaindate = args.plaindate or false
args.plaindate = plaindate
-- allow qualifiers to have a different date format; default to year unless qualsonly is set
args.qualifierdateformat = args.qualifierdateformat or (not qualsonly and "y")
local lang = args.lang or (args.langs and args.langs[1]) or findLang()
-- qualID is a string list of wanted qualifiers or "ALL"
qualID = qualID or ""
-- capitalise list of wanted qualifiers and substitute "DATES"
qualID = qualID:upper():gsub("DATES", "P580, P582")
local allflag = (qualID == "ALL")
-- create table of wanted qualifiers as key
local qwanted = {}
-- create sequence of wanted qualifiers
local qorder = {}
for q in mw.text.gsplit(qualID, "%p") do -- split at punctuation and iterate
local qtrim = mw.text.trim(q)
if qtrim ~= "" then
qwanted[mw.text.trim(q)] = true
qorder[#qorder+1] = qtrim
end
end
-- qsep is the output separator for rendering qualifier list
local qsep = (args.qsep or ""):gsub('"', '')
-- qargs are the arguments to supply to assembleoutput()
local qargs = {
["onlysourced"] = "false",
["linked"] = tostring(linked),
["prefix"] = args.qprefix,
["postfix"] = args.qpostfix,
["linkprefix"] = args.qlinkprefix,
["linkpostfix"] = args.qlinkpostfix,
["wdlinks"] = "false",
["unitabbr"] = tostring(unitabbr),
["maxvals"] = 0,
["sorted"] = tostring(args.qsorted),
["noicon"] = "true",
["list"] = args.qlist,
["sep"] = qsep,
-- ["langobj"] = args.langobj,
["lang"] = lang,
langs = args.langs,
["df"] = args.qualifierdateformat,
["shortname"] = parseParam(args.qshortname, false),
}
-- all proper values of a Wikidata property will be the same type as the first
-- qualifiers don't have a mainsnak, properties do
--#Modified line
local datatype = objproperty[1].datatype or (objproperty[1].mainsnak and objproperty[1].mainsnak.datatype)
-- out[] holds the a list of returned values for this property
-- mlt[] holds the language code if the datatype is monolingual text
local out = {}
local mlt = {}
for k, v in ipairs(objproperty) do
local hasvalue = true
if (onlysrc and not sourced(v)) then
-- no value: it isn't sourced when onlysourced=true
hasvalue = false
else
local val, lcode = rendersnak(v, args, linked, linkprefix, lpostfix, prefix, postfix, unitabbr)
if not val then
hasvalue = false -- rank doesn't match
elseif qualsonly and qualID then
-- suppress value returned: only qualifiers are requested
else
out[#out+1], mlt[#out+1] = val, lcode
end
end
-- See if qualifiers are to be returned:
local snak = v.mainsnak or v
if hasvalue and v.qualifiers and qualID ~= "" and snak.snaktype~="novalue" then
-- collect all wanted qualifier values returned in qlist, indexed by propertyID
local qlist = {}
local timestart, timeend = "", ""
-- loop through qualifiers
for k1, v1 in pairs(v.qualifiers) do
if allflag or qwanted[k1] then
if k1 == "P1326" then
local ts = v1[1].datavalue.value.time
local dp = v1[1].datavalue.value.precision
qlist[k1] = dateFormat(ts, dp, args.qualifierdateformat, args.bc, plaindate, "", lang, "before")
elseif k1 == "P1319" then
local ts = v1[1].datavalue.value.time
local dp = v1[1].datavalue.value.precision
qlist[k1] = dateFormat(ts, dp, args.qualifierdateformat, args.bc, plaindate, "", lang, "after")
elseif k1 == "P580" then
timestart = propertyvalueandquals(v1, qargs)[1] or "" -- treat only one start time as valid
elseif k1 == "P582" then
timeend = propertyvalueandquals(v1, qargs)[1] or "" -- treat only one end time as valid
else
local q = assembleoutput(propertyvalueandquals(v1, qargs), qargs)
-- we already deal with circa via 'sourcing circumstances' if the datatype was time
-- circa may be either linked or unlinked *** internationalise later ***
if datatype ~= "time" or q ~= "circa" and not (type(q) == "string" and q:find("circa]]")) then
qlist[k1] = q
end
end
end -- of test for wanted
end -- of loop through qualifiers
-- set date separator
local t = timestart .. timeend
-- *** internationalise date separators later ***
local dsep = "–"
if t:find("%s") or t:find(" ") then dsep = " – " end
-- set the order for the list of qualifiers returned; start time and end time go last
if next(qlist) then
local qlistout = {}
if allflag then
for k2, v2 in pairs(qlist) do
qlistout[#qlistout+1] = v2
end
else
for i2, v2 in ipairs(qorder) do
qlistout[#qlistout+1] = qlist[v2]
end
end
if t ~= "" then
qlistout[#qlistout+1] = timestart .. dsep .. timeend
end
local qstr = assembleoutput(qlistout, qargs)
if qualsonly then
out[#out+1] = qstr
else
out[#out] = out[#out] .. " (" .. qstr .. ")"
end
elseif t ~= "" then
if qualsonly then
if timestart == "" then
out[#out+1] = timeend
elseif timeend == "" then
out[#out+1] = timestart
else
out[#out+1] = timestart .. dsep .. timeend
end
else
out[#out] = out[#out] .. " (" .. timestart .. dsep .. timeend .. ")"
end
end
end -- of test for qualifiers wanted
if maxvals > 0 and #out >= maxvals then break end
end -- of for each value loop
-- we need to pick one value to return if the datatype was "monolingualtext"
-- if there's only one value, use that
-- otherwise look through the fallback languages for a match
if datatype == "monolingualtext" and #out >1 then
lang = mw.text.split( lang, '-', true )[1]
local fbtbl = mw.language.getFallbacksFor( lang )
table.insert( fbtbl, 1, lang )
local bestval = ""
local found = false
for idx1, lang1 in ipairs(fbtbl) do
for idx2, lang2 in ipairs(mlt) do
if (lang1 == lang2) and not found then
bestval = out[idx2]
found = true
break
end
end -- loop through values of property
end -- loop through fallback languages
if found then
-- replace output table with a table containing the best value
out = { bestval }
else
-- more than one value and none of them on the list of fallback languages
-- sod it, just give them the first one
out = { out[1] }
end
end
return out
end
local function mergeOptions(defaults, overrides)
overrides = overrides or {}
defaults = defaults or {}
local result = {}
for k, v in pairs(defaults) do
result[k] = v
end
for k, v in pairs(overrides) do
result[k] = v
if k == 'rank' then
result.reqranks = setRanks(v)
end
end
return result
end
local function filterbyqualifier(statements,qual,value)
local filtered_statements = {}
for _, statement in ipairs(statements) do
if statement.qualifiers and statement.qualifiers[qual] then
if '*' == value then
table.insert(filtered_statements, statement)
else
for _, q in ipairs(statement.qualifiers[qual]) do
if q.datavalue and (rawValue(q.datavalue) == value) then
table.insert(filtered_statements, statement)
break
end
end
end
end
end
return filtered_statements
end
local function orderbyrank(statements)
local pref_count = 0
local sorted_statements = {}
for k,v in ipairs(statements) do
if v.rank == 'preferred' then
pref_count = pref_count + 1
table.insert(sorted_statements, pref_count, v)
else
table.insert(sorted_statements, v)
end
end
return sorted_statements
end
-------------------------------------------------------------------------------
-- helper class functions
-------------------------------------------------------------------------------
local function class()
local c = {}
c.__index = c
function c:new(...)
local o = setmetatable({}, c)
if o.init then o:init(...) end
return o
end
return c
end
-------------------------------------------------------------------------------
-- Statement Class Definition
-------------------------------------------------------------------------------
local WdStatement = class()
function WdStatement:getValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local statement = self._statement
if not statement then
return nil
end
local qualID = mw.text.trim(mergedOpts.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = propertyvalueandquals({statement}, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.parent.qid, self.pid)
end
function WdStatement:getRawValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
if not self._statement then
return nil
end
local datasnak = self._statement.mainsnak or self._statement
if datasnak.snaktype == "value" then
return rawValueOrDF(self._statement, mergedOpts)
else
return datasnak.snaktype
end
end
function WdStatement:getRawQual(qualID)
local ret = {}
local s = self._statement
if s.qualifiers and s.qualifiers[qualID] then
for _,q in pairs(s.qualifiers[qualID]) do
if q.snaktype == "value" then
table.insert(ret, rawValueOrDF(q, self.parent.options))
else
table.insert(ret, q.snaktype)
end
end
end
return ret
end
-------------------------------------------------------------------------------
-- Statements Class Definition
-------------------------------------------------------------------------------
local WdStatements = class()
function WdStatements:getStatmentsTable()
return self._statements
end
function WdStatements:count()
return #self._statements
end
function WdStatements:getFilters()
return self.filtered_by
end
function WdStatements:filter(filter_t)
local statements = self._statements
if #statements == 0 then return self; end
local ret = WdStatements:new()
ret.parent = self.parent
ret.filtered_by = {}
for _,v in ipairs(self.filtered_by) do
table.insert(ret.filtered_by, v)
end
local filtered_statements = {}
for k,v in pairs(filter_t) do
filtered_statements = filterbyqualifier(statements, k, v)
table.insert(ret.filtered_by, {[k] = v})
if #filtered_statements == 0 then
break;
else
statements = filtered_statements
end
end
ret._statements = filtered_statements
return ret
end
function WdStatements:getValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local statements = self._statements
if not statements or #statements == 0 then
return nil
end
local qualID = mw.text.trim(mergedOpts.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = propertyvalueandquals(statements, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.parent.qid, self.pid)
end
function WdStatements:getQual(qualID, opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local statements = self._statements
if not statements or #statements == 0 then
return nil
end
local out = propertyvalueandquals(statements, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.parent.qid, self.pid)
end
function WdStatements:getRawQual(qualID)
local ret = {}
for _,s in pairs(self._statements) do
local qual_t = {}
if s.qualifiers and s.qualifiers[qualID] then
for _,q in pairs(s.qualifiers[qualID]) do
if q.snaktype == "value" then
table.insert(qual_t, rawValueOrDF(q, self.parent.options))
else
table.insert(qual_t, q.snaktype)
end
end
end
table.insert(ret,qual_t)
end
return ret
end
function WdStatements:getRawValue(opts)
local mergedOpts = mergeOptions(self.parent.options, opts)
local ret = {}
for _,v in pairs(self._statements) do
local datasnak = v.mainsnak or v
if datasnak.snaktype=="value" then
table.insert(ret, rawValueOrDF(v, mergedOpts))
else
table.insert(ret, datasnak.snaktype)
end
end
return ret
end
function WdStatements:get(index)
local ret = WdStatement:new()
ret.parent = self.parent
ret.filtered_by = ret.filtered_by
ret._statement = self._statements[index]
ret.pid = ret.pid
return ret
end
function WdStatements:iter()
local i = 0
local n = self._statements and #self._statements or 0
return function()
i = i + 1
if i <= n then
return i, self:get(i)
end
end
end
function WdStatements:ipairs()
return self:iter()
end
function WdStatements:getBestOne()
local orderd_statements = orderbyrank(self._statements)
local ret = WdStatement:new() --setmetatable({}, WdStatement)
ret.parent = self.parent
ret.filtered_by = ret.filtered_by
ret._statement = orderd_statements[1]
ret.pid = ret.pid
return ret
end
-------------------------------------------------------------------------------
-- WdItem Class Definition
-------------------------------------------------------------------------------
local WdItem = class()
function WdItem:__tostring()
return "WdItem: " .. (self.qid or "no QID")
end
function WdItem:UpdateOptions(in_newOpts)
local newOpts = in_newOpts or {}
for k, v in pairs(newOpts or {}) do
self.options[k] = v
end
-- Set default options
if newOpts.lang then
self.options.lang = findLang(newOpts.lang)
end
if (newOpts.lang and not self.options.lang) or
(not newOpts.lang and newOpts.langs and #newOpts.langs > 0) then
for _, l in ipairs(newOpts.langs) do
self.options.lang = findLang(l)
if self.options.lang then
break;
end
end
end
if not self.options.lang then
self.options.lang = findLang();
end
if newOpts.rank then
self.options.reqranks = setRanks(self.options.rank)
end
if not self.options.reqranks then
self.options.reqranks = setRanks('preferred normal')
end
end
function WdItem:init(qid, options,snak)
if qid == "" then qid = nil; end
self.qid = qid
self.snak = snak
self.options = options or {}
self:UpdateOptions(options)
return self
end
function WdItem:newFromSnaks(snakTable, options)
local self = WdItem:new(nil, options or {}, snakTable)
self:UpdateOptions(options)
return self
end
function WdItem:setOptions(newOpts)
self:UpdateOptions(newOpts)
end
function WdItem:getStatements(pid, opts)
local mergedOpts = mergeOptions(self.options, opts or {})
local statements
local ret = WdStatements:new()
ret.parent = self
ret.filtered_by = {}
ret._statements = {}
ret.pid = pid
if self.snak and self.snak[pid] then
statements = self.snak[pid]
elseif not self.qid or not mw.wikibase then
statements = {}
elseif mergedOpts.reqranks and mergedOpts.reqranks.best then
statements = mw.wikibase.getBestStatements(self.qid, pid) or {}
else
statements = mw.wikibase.getAllStatements(self.qid, pid) or {}
local filtered_statements = {}
if not (mergedOpts.reqranks.deprecated == true and mergedOpts.reqranks.preferred == true and mergedOpts.reqranks.normal == true) then
for _,s in pairs(statements) do
if mergedOpts.reqranks[s.rank] then
table.insert(filtered_statements,s)
end
end
end
statements = filtered_statements
end
if #statements > 0 and mergedOpts.qualifiedaspossible and mergedOpts.qualifiedaspossible ~= {} then
local filtered_statements = {}
for q,qv in pairs(mergedOpts.qualifiedaspossible) do
filtered_statements = filterbyqualifier(statements, q, qv)
if #filtered_statements > 0 then
table.insert(ret.filtered_by, {[q] = qv})
statements = filtered_statements
end
end
end
if #statements > 0 and mergedOpts.qualified and mergedOpts.qualified ~= {} then
for q,qv in pairs(mergedOpts.qualified) do
statements = filterbyqualifier(statements, q, qv)
table.insert(ret.filtered_by, {[q] = qv})
if #statements == 0 then break; end
end
end
ret._statements = statements
return ret
end
function WdItem:getValue(pid, opts)
local mergedOpts = mergeOptions(self.options, opts)
local statements = self:getStatements(pid, mergedOpts):getStatmentsTable()
if not statements or #statements == 0 then
return nil
end
local qualID = mw.text.trim(mergedOpts.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = propertyvalueandquals(statements, mergedOpts, qualID)
return assembleoutput(out, mergedOpts, self.qid, pid)
end
function WdItem:getValueFromSnaks(pid, opts)
if not self.snak or not self.snak[pid] then
return nil
end
local mergedOpts = mergeOptions(self.options, opts)
local props = self.snak[pid]
local out = propertyvalueandquals(props, mergedOpts)
return assembleoutput(out, mergedOpts, nil, pid)
end
function WdItem:getPropertyIDsTable(pid, opts)
local mergedOpts = mergeOptions(self.options, opts)
mergedOpts.noicon = tostring(parseParam(mergedOpts.noicon or "", true))
local statements = self:getStatements(pid, opts)
if not statements or #statements == 0 then return {} end
local onlysrc = parseParam(mergedOpts.onlysourced or mergedOpts.onlysourced, true)
local maxvals = tonumber(mergedOpts.maxvals) or 0
local out = {}
for i, v in ipairs(statements) do
local snak = v.mainsnak or v
if (snak.datatype == "wikibase-item")
and (v.rank and mergedOpts.reqranks[v.rank:sub(1, 1)])
and (snak.snaktype == "value")
and (sourced(v) or not onlysrc) then
out[#out+1] = snak.datavalue.value.id
end
if maxvals > 0 and #out >= maxvals then break end
end
return out
end
function WdItem:getPropertyIDs(pid, opts)
local out = WdItem:getPropertyIDsTable(pid, opts)
if #out == 0 then
return nil
end
return assembleoutput(out, mergeOptions(self.options, opts), self.qid, pid)
end
function WdItem:getPropOfProp(prop1, prop2, opts)
local mergedOpts = mergeOptions(self.options, opts)
if not self.qid then return nil end
local maxvals = tonumber(mergedOpts.maxvals) or 0
local prop1Values = self:getStatements(prop1, opts):getRawValue()
if #prop1Values == 0 then return nil end
local out = {}
for k, qid2 in ipairs(prop1Values) do
local item2 = WdItem:new(qid2, mergedOpts)
local prop2Values = item2:getStatements(prop2):getStatmentsTable()
if prop2Values and prop2Values[1] then
local out2 = propertyvalueandquals(prop2Values, mergedOpts, mergedOpts.qual)
out[#out+1] = assembleoutput(out2, mergedOpts, qid2, prop2)
end
if maxvals > 0 and #out >= maxvals then break end
end
return assembleoutput(out, mergedOpts, self.qid, prop1)
end
function WdItem:getRawPropOfProp(prop1, prop2, opts)
local mergedOpts = mergeOptions(self.options, opts)
if not self.qid then return nil end
local prop1Values = self:getStatements(prop1, opts):getRawValue()
if #prop1Values == 0 then return nil end
local out = {}
for k, qid2 in ipairs(prop1Values) do
local item2 = WdItem:new(qid2, mergedOpts)
local prop2Values = item2:getStatements(prop2):getRawValue()
for _,val in ipairs(prop2Values) do
if not in_array(val,out) then
table.insert(out,val)
end
end
end
return out
end
function WdItem:getLangOfProp(pid)
if not pid then return {}; end
local out = {}
local props = self.snak and self.snak[pid] or (self.qid and mw.wikibase.getAllStatements(self.qid, pid)) or {}
for _, v in ipairs(props) do
local datasnak = v.mainsnak or v
if datasnak.datatype == "monolingualtext" and datasnak.datavalue then
out[#out + 1] = datasnak.datavalue.value.language
end
end
return out
end
function WdItem:followQid(props, all)
all = parseParam(all, false)
props = (props or ""):upper()
if not self.qid then return nil end
if props == "" then return self.qid end
local out = {}
for p in mw.text.gsplit(props, "%p") do
p = mw.text.trim(p)
for i, v in ipairs(mw.wikibase.getBestStatements(self.qid, p)) do
local linkedid = v.mainsnak.datavalue and v.mainsnak.datavalue.value and v.mainsnak.datavalue.value.id
if linkedid then
if all then
out[#out+1] = linkedid
else
return WdItem.WdItem:new(linkedid)
end
end
end
end
if #out > 0 then
return table.concat(out, " ")
else
return self
end
end
-------------------------------------------------------------------------------
-- Public API - WdItem Constructors
-------------------------------------------------------------------------------
p.WdItem = WdItem
function p.newItem(qid, opts, snak )
return WdItem:new(qid, opts, snak)
end
function p.newSnakItem(snakTable, opts)
return WdItem:newFromSnaks(snakTable, opts)
end
return p
ebo6q1388a5tyszork79ryyo2iavr9e
تصنيف:قوالب نطاق وحدة
14
307165
617371
2026-08-13T16:29:03Z
حبيشان
52457
أنشأ الصفحة ب'[[تصنيف:تصنيفات قوالب ويكي مصدر]]'
617371
wikitext
text/x-wiki
[[تصنيف:تصنيفات قوالب ويكي مصدر]]
io20f9wizu91nfv5i2da2bbz983bljb
قالب:رسالة استدعاء من لوا فقط/شرح
10
307166
617372
2026-08-13T16:29:52Z
حبيشان
52457
أنشأ الصفحة ب'{{صفحة توثيق فرعية}} === استعمال === يوضع قالب في شرح وحدة غير قابلة للاستدعاء في القوالب والصفحات. == بيانات القالب== {{رأس بيانات القالب}} <templatedata> { "params": {}, "description": "يضع رسالة للتنبيه أن الوحدة غير قابلة للاستدعاء في القوالب والصفحات" } </templatedata> <includeonly>{{ملعب أخر|| <...'
617372
wikitext
text/x-wiki
{{صفحة توثيق فرعية}}
=== استعمال ===
يوضع قالب في شرح وحدة غير قابلة للاستدعاء في القوالب والصفحات.
== بيانات القالب==
{{رأس بيانات القالب}}
<templatedata>
{
"params": {},
"description": "يضع رسالة للتنبيه أن الوحدة غير قابلة للاستدعاء في القوالب والصفحات"
}
</templatedata>
<includeonly>{{ملعب أخر||
<!-- [[تصنيف:قوالب ويكيبيديا]] -->
}}</includeonly>
sliqy4rpsv9ss8am8uu7ivvyfkcf5y0
التهذيب في أصول التعريب/باب فى اللغة العامية أو الدارجة
0
307167
617383
2026-08-13T19:28:19Z
Nehaoua
7481
أنشأ الصفحة ب'<pages index="التهذيب في أصول التعريب (auc aco001146).pdf" from=80 fromsection=2 to=81 tosection=1 header=1 /> ---- {{حواشي}}'
617383
wikitext
text/x-wiki
<pages index="التهذيب في أصول التعريب (auc aco001146).pdf"
from=80
fromsection=2
to=81
tosection=1
header=1
/>
----
{{حواشي}}
cwhifr4gl4d7cp3seox5y4jj2ivij4c
التهذيب في أصول التعريب/ باب فى القول فى العربي الجنوبي
0
307168
617386
2026-08-13T19:30:37Z
Nehaoua
7481
أنشأ الصفحة ب'<pages index="التهذيب في أصول التعريب (auc aco001146).pdf" from=81 fromsection=2 to=86 tosection=1 header=1 /> ---- {{حواشي}}'
617386
wikitext
text/x-wiki
<pages index="التهذيب في أصول التعريب (auc aco001146).pdf"
from=81
fromsection=2
to=86
tosection=1
header=1
/>
----
{{حواشي}}
7ya6jzv0a97k775khgezi4bu3re0pxg
التهذيب في أصول التعريب/باب فى القول فى تدوين اللغة واستنباط النحو والصرف
0
307169
617390
2026-08-13T19:47:02Z
Nehaoua
7481
أنشأ الصفحة ب'<pages index="التهذيب في أصول التعريب (auc aco001146).pdf" from=86 to=95 tosection=1 header=1 /> ---- {{حواشي}}'
617390
wikitext
text/x-wiki
<pages index="التهذيب في أصول التعريب (auc aco001146).pdf"
from=86
to=95
tosection=1
header=1
/>
----
{{حواشي}}
8lwji504oeu51ey1sr5h0iunfsbzzq0
التهذيب في أصول التعريب/باب فى القول فى فضل اللغة العربية
0
307170
617392
2026-08-13T19:51:16Z
Nehaoua
7481
أنشأ الصفحة ب'<pages index="التهذيب في أصول التعريب (auc aco001146).pdf" from=95 fromsection=2 to=99 tosection=1 header=1 /> ---- {{حواشي}}'
617392
wikitext
text/x-wiki
<pages index="التهذيب في أصول التعريب (auc aco001146).pdf"
from=95
fromsection=2
to=99
tosection=1
header=1
/>
----
{{حواشي}}
azyvmw62eipyod38vm0enokhwwrnqjq
التهذيب في أصول التعريب/العروض
0
307171
617397
2026-08-13T20:02:20Z
Nehaoua
7481
أنشأ الصفحة ب'<pages index="التهذيب في أصول التعريب (auc aco001146).pdf" from=99 fromsection=2 to=103 tosection=1 header=1 /> ---- {{حواشي}}'
617397
wikitext
text/x-wiki
<pages index="التهذيب في أصول التعريب (auc aco001146).pdf"
from=99
fromsection=2
to=103
tosection=1
header=1
/>
----
{{حواشي}}
4eygdxsp5fxp4i8ryhxwcpkabldh4oq
التهذيب في أصول التعريب/باب فى القول فى اتساع اللغة العربية
0
307172
617399
2026-08-13T20:06:52Z
Nehaoua
7481
أنشأ الصفحة ب'<pages index="التهذيب في أصول التعريب (auc aco001146).pdf" from=103 fromsection=2 to=104 tosection=1 header=1 /> ---- {{حواشي}}'
617399
wikitext
text/x-wiki
<pages index="التهذيب في أصول التعريب (auc aco001146).pdf"
from=103
fromsection=2
to=104
tosection=1
header=1
/>
----
{{حواشي}}
segrkg0kle5pmsuywrjwx1pu2gldee6
التهذيب في أصول التعريب/باب فى الكتابة العربية
0
307173
617401
2026-08-13T20:12:16Z
Nehaoua
7481
أنشأ الصفحة ب'<pages index="التهذيب في أصول التعريب (auc aco001146).pdf" from=103 fromsection=2 to=104 tosection=1 header=1 /> ---- {{حواشي}}'
617401
wikitext
text/x-wiki
<pages index="التهذيب في أصول التعريب (auc aco001146).pdf"
from=103
fromsection=2
to=104
tosection=1
header=1
/>
----
{{حواشي}}
segrkg0kle5pmsuywrjwx1pu2gldee6
صفحة:The Method of Medicine WDL7478.pdf/13
104
307174
617402
2026-08-13T20:24:34Z
~2026-43953-13
72772
/* لم تصحح */ أنشأ الصفحة ب'{{missing image}} قال الحكيم الفاضل خلف ابن عباس الزهراوي واضع هذا الكتاب الله لما حملت لكم يابني هذا الكتاب الذى هو جزء العلم في الطب بكماله وبلغت الغاية فيه من وضوحه وبیانه رأیت ان احمله بهذه المقالة التي هي جزء العمل باليد لان العمل باليد محسنة في بلدنا وفي زماننا...'
617402
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="~2026-43953-13" />{{رص|تبصرة|٢|زهراوي}}</noinclude>{{missing image}}
قال الحكيم الفاضل خلف ابن عباس الزهراوي واضع هذا الكتاب الله
لما حملت لكم يابني هذا الكتاب الذى هو جزء العلم في الطب بكماله وبلغت الغاية فيه من وضوحه
وبیانه رأیت ان احمله بهذه المقالة التي هي جزء العمل باليد لان العمل باليد محسنة في
بلدنا وفي زماننا معدوم البتة حتى كاد ان يدرس علمه وينقطع اثره وانما بقى منه رسوم
يسيرة في كتب الاوائل قد صفحته الأيدى وواقعه الخطأ والتدارس حتى استغلقت معانيه
وبعدت فائدته فرأيت ان احيأه وأؤلف فيه هذه المقالة على طريق الشرح والبيان والاختصار
وان اتى مصور جديد للكى سائر الألات للعمل بليد اذ هو من زيادات البيان ومن وكيد
ما يحتاج اليه والسبب الذى لا يوجد صانعا محسنا بيده في زماننا هذا لان صناعة الطب
طويلة وينبغى لصاحبها أن يرتاض قبل ذلك في علم التشرير الذي وضعه جالينوس حتى يقف على
منافع الاعضاء وهيأتها ومنتجاتها واتصالها وانفصالها ومعرفة العظام والاعصاب
والعضلات عددها ومخارجها قال الفاضل البقراط ان الاطباء بالاسم كثير وبالفعل قليل<noinclude></noinclude>
fvnq8aia1a2s2n7r7jr0uz6ipoqilut
617403
617402
2026-08-13T20:25:44Z
~2026-43953-13
72772
617403
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="~2026-43953-13" /></noinclude>{{missing image}}
قال الحكيم الفاضل خلف ابن عباس الزهراوي واضع هذا الكتاب الله
لما حملت لكم يابني هذا الكتاب الذى هو جزء العلم في الطب بكماله وبلغت الغاية فيه من وضوحه
وبیانه رأیت ان احمله بهذه المقالة التي هي جزء العمل باليد لان العمل باليد محسنة في
بلدنا وفي زماننا معدوم البتة حتى كاد ان يدرس علمه وينقطع اثره وانما بقى منه رسوم
يسيرة في كتب الاوائل قد صفحته الأيدى وواقعه الخطأ والتدارس حتى استغلقت معانيه
وبعدت فائدته فرأيت ان احيأه وأؤلف فيه هذه المقالة على طريق الشرح والبيان والاختصار
وان اتى مصور جديد للكى سائر الألات للعمل باليد اذ هو من زيادات البيان ومن وكيد
ما يحتاج اليه والسبب الذى لا يوجد صانعا محسنا بيده في زماننا هذا لان صناعة الطب
طويلة وينبغى لصاحبها أن يرتاض قبل ذلك في علم التشرير الذي وضعه جالينوس حتى يقف على
منافع الاعضاء وهيأتها ومنتجاتها واتصالها وانفصالها ومعرفة العظام والاعصاب
والعضلات عددها ومخارجها قال الفاضل البقراط ان الاطباء بالاسم كثير وبالفعل قليل<noinclude></noinclude>
s6k5d0dhx005hghiosugy1yxzpu2yng
مؤلف:الأشرف إسماعيل
102
307175
617405
2026-08-13T21:18:19Z
Shohdi Alsofi
49228
انشاء صفحة مؤلف:الأشرف إسماعيل
617405
wikitext
text/x-wiki
{{مؤلف|صورة=السلطان الملك الأشرف إسماعيل.png|الاسم الأول=الأشرف|الاسم الأخير=إسماعيل|الاسم الأصلي=الأشرف إسماعيل بن الأفضل العباس|وصف=سابع ملوك الدولة الرسولية|سنة الميلاد=761 هـ \ 1360م|سنة الوفاة=803 هـ \ 1400م|تواريخ=1376 - 1400م|وصلة ويكيبيديا=الأشرف إسماعيل بن الأفضل|وصلة كومنز=Category:Al-Ashraf_Ismail|وصلة ويكي الاقتباس=الأشرف إسماعيل بن الأفضل}}
الأشرف إسماعيل (لقبه الكامل: '''السلطان الملك الأشرف، ممهد الدنيا والدين إسماعيل بن الملك الأفضل العباس)''' سابع ملوك الدولة الرسولية في اليمن، ولد سنة 761 هـ (الموافق 1360م)، وتولى الحكم سنة 778 هـ وتوفي في سنة 803.
== أعمال ==
* العسجد المسبوك والجوهر المحبوك في أخبار الخلفاء والملوك
* العقود اللؤلؤية في تاريخ الدولة الرسولية
* فاكهة الزمن ومفاكهة الأدب والفنن في أخبار من ملك اليمن
* طرفة الأصحاب في معرفة الأنساب
== الترخيص ==
{{ملكية عامة مؤلف قديم}}{{ضبط استنادي}}
[[تصنيف:مؤلفون عرب]]
[[تصنيف:اليمن]]
[[تصنيف:الدولة الرسولية]]
[[تصنيف:ملوك اليمن]]
qt345js4a7nwnazovvjw502bkk6zl49
تصنيف:ملوك اليمن
14
307176
617406
2026-08-13T21:19:42Z
Shohdi Alsofi
49228
تصنيف اليمن
617406
wikitext
text/x-wiki
[[تصنيف:اليمن]]
phxhzdri5nmvjqx297a5e49k6lunnm6
تصنيف:الدولة الرسولية
14
307177
617407
2026-08-13T21:20:30Z
Shohdi Alsofi
49228
تصنيف
617407
wikitext
text/x-wiki
[[تصنيف:اليمن]]
phxhzdri5nmvjqx297a5e49k6lunnm6
نقاش المستخدم:Alaamroweh
3
307178
617417
2026-08-14T05:12:55Z
Robertsky
63825
نقل Robertsky صفحة [[نقاش المستخدم:Alaamroweh]] إلى [[نقاش المستخدم:AlaaMroue]]: نُقِلت الصفحة آليا عند إعادة تسمية المستخدم «[[Special:CentralAuth/Alaamroweh|Alaamroweh]]» إلى «[[Special:CentralAuth/AlaaMroue|AlaaMroue]]».
617417
wikitext
text/x-wiki
#تحويل [[نقاش المستخدم:AlaaMroue]]
mj1a9qnt9rnctyknb8ajsvebr6b0q1u
الأخلاق
0
307179
617419
2026-08-14T06:45:11Z
TOUMOU
16960
أنشأ الصفحة ب'{{ترويسة | عنوان = الأخلاق | مؤلف = محمود بورقيبة | مترجم = | باب = | سابق = | تالي = | ملاحظات = }} {{أبيات| وَعَوِّدُوا النَّشْءَ بالأخْلاقِ فاضِلَةً\\فذلك الكنْزُ لا اليَاقُــــــوتُ والذَّهَبُ فإن وهبتم لهم هذا فقد وهبُــــــــوا\\ما ليس...'
617419
wikitext
text/x-wiki
{{ترويسة
| عنوان = الأخلاق
| مؤلف = محمود بورقيبة
| مترجم =
| باب =
| سابق =
| تالي =
| ملاحظات =
}}
{{أبيات|
وَعَوِّدُوا النَّشْءَ بالأخْلاقِ فاضِلَةً\\فذلك الكنْزُ لا اليَاقُــــــوتُ والذَّهَبُ
فإن وهبتم لهم هذا فقد وهبُــــــــوا\\ما ليسَ تعدُّ له الأقْمَـــــــارُ والشُّهُبُ
وبعدكم سيقولُ النَّسْلُ مفْتَـــــــخِراً\\نِعْمَ الجُدودُ ويا نِعْمَ الـــــذِي وهَبُوا
أَبْنَاؤكم هم مع الأخلاقِ ما لبِثَت\\"فَإِنْ هُمُـو ذهبَتْ أخلاقُهُم ذَهَبُوا" <ref>تضمين لبيت أحمد شوقي الشهير «إنما الأمم الأخلاق ما بقيت / فإن همو ذهبت أخلاقهم ذهبوا»</ref>
}}
* جريدة الزهرة : 31 /03 /1950
[[تصنيف:شعر]]
[[تصنيف:محمود بورقيبة]]
85nsuy1pq59kb60x0ylzor0pqjud9mg
المرأة
0
307180
617420
2026-08-14T06:47:02Z
TOUMOU
16960
أنشأ الصفحة ب'{{ترويسة | عنوان = المرأة | مؤلف = محمود بورقيبة | مترجم = | باب = | سابق = | تالي = | ملاحظات = }} {{أبيات| تلوحُ بوجهِ الحُزْنِ والقلبُ ضاحِكٌ\\وتَرْزَحُ بالأشْجانِ والثَّــــــغْرُ يَبْتَسِمْ وتُظْهِرُ صَدًّا وامتِناعاً ونفرَةً...\\وفي نفس...'
617420
wikitext
text/x-wiki
{{ترويسة
| عنوان = المرأة
| مؤلف = محمود بورقيبة
| مترجم =
| باب =
| سابق =
| تالي =
| ملاحظات =
}}
{{أبيات|
تلوحُ بوجهِ الحُزْنِ والقلبُ ضاحِكٌ\\وتَرْزَحُ بالأشْجانِ والثَّــــــغْرُ يَبْتَسِمْ
وتُظْهِرُ صَدًّا وامتِناعاً ونفرَةً...\\وفي نفسِها تُخْفِي النَّقِيضَ وتَكْتَتِمْ
وتدنيك بالإِيعَــــــــاد وهي مشُوقَةٌ!\\وتدْعُوك بالإِعْراضِ إن كُنـــــتَ تفهمُ
هي السهل للمَـــــــرْءِ الخبيرِ بكُنْهِها\\وإِلاَّ... هي اللغزُ المَعمَّى المُمَطْلَسَمْ
}}
*جريدة الزهرة : 09 /01 /1952
[[تصنيف:شعر]]
[[تصنيف:محمود بورقيبة]]
qkr9w5u5aqz63ojwnemus9azghiazbx
فلسطين (محمود بورقيبة)
0
307181
617422
2026-08-14T07:04:06Z
TOUMOU
16960
أنشأ الصفحة ب'{{ترويسة | عنوان = فلسطين (محمود بورقيبة) | مؤلف = محمود بورقيبة | مترجم = | باب = | سابق = | تالي = | ملاحظات = }} {{أبيات| فلسطينُ خَطْبُكِ أَيُّ فُؤادٍ ... لهُ لا يَذُوبُ ولا ينْفَطِرْ؟ وأَيُّ الجَوائحِ لا تلْتَظِي؟ ... وأَيُّ المَحاجِرِ لا تَن...'
617422
wikitext
text/x-wiki
{{ترويسة
| عنوان = فلسطين (محمود بورقيبة)
| مؤلف = محمود بورقيبة
| مترجم =
| باب =
| سابق =
| تالي =
| ملاحظات =
}}
{{أبيات|
فلسطينُ خَطْبُكِ أَيُّ فُؤادٍ ... لهُ لا يَذُوبُ ولا ينْفَطِرْ؟
وأَيُّ الجَوائحِ لا تلْتَظِي؟ ... وأَيُّ المَحاجِرِ لا تَنْهَمِرْ؟
لقد داهمَتْكِ عوادي الزَّمانِ ... مهدِّمةً صرْحَكِ المُشْمَخِرْ
ولكــــن ربُّكِ لـــيس يَنَامُ ... فصَبْراً. وما خابَ من يصْطَبِرْ
فلا بُــدَّ للضَّيْمِ أن ينْقَضِي ... ولا بُــدَّ للحَــقِّ أن يَنْتَصِرْ <ref>تضمين لبيت أبي القاسم الشابي الوارد في قصيدته إرادة الحياة والذي يقول فيه :
فلا بدَّ للظالم أن ينجلي ... ولا بدَّ للقيد أن ينكسر</ref>
}}
* جريدة الوزير : 16 /12 /1937
[[تصنيف:شعر]]
[[تصنيف:محمود بورقيبة]]
dozw1veo3f88ihw1bjcyw5coabmatpw
617424
617422
2026-08-14T07:06:55Z
TOUMOU
16960
617424
wikitext
text/x-wiki
{{ترويسة
| عنوان = فلسطين (محمود بورقيبة)
| مؤلف = محمود بورقيبة
| مترجم =
| باب =
| سابق =
| تالي =
| ملاحظات =
}}
{{أبيات|
فلسطينُ خَطْبُكِ أَيُّ فُؤادٍ \\ لهُ لا يَذُوبُ ولا ينْفَطِرْ؟
وأَيُّ الجَوائحِ لا تلْتَظِي؟ \\ وأَيُّ المَحاجِرِ لا تَنْهَمِرْ؟
لقد داهمَتْكِ عوادي الزَّمانِ \\ مهدِّمةً صرْحَكِ المُشْمَخِرْ
ولكــــن ربُّكِ لـــيس يَنَامُ \\ فصَبْراً. وما خابَ من يصْطَبِرْ
فلا بُــدَّ للضَّيْمِ أن ينْقَضِي \\ ولا بُــدَّ للحَــقِّ أن يَنْتَصِرْ <ref>تضمين لبيت أبي القاسم الشابي الوارد في قصيدته إرادة الحياة والذي يقول فيه :
فلا بدَّ للظالم أن ينجلي \\ ولا بدَّ للقيد أن ينكسر</ref>
}}
* جريدة الوزير : 16 /12 /1937
[[تصنيف:شعر]]
[[تصنيف:محمود بورقيبة]]
7gxe18sn2r022jmtbk5vstgyu01uggk
617425
617424
2026-08-14T07:07:09Z
TOUMOU
16960
617425
wikitext
text/x-wiki
{{ترويسة
| عنوان = فلسطين
| مؤلف = محمود بورقيبة
| مترجم =
| باب =
| سابق =
| تالي =
| ملاحظات =
}}
{{أبيات|
فلسطينُ خَطْبُكِ أَيُّ فُؤادٍ \\ لهُ لا يَذُوبُ ولا ينْفَطِرْ؟
وأَيُّ الجَوائحِ لا تلْتَظِي؟ \\ وأَيُّ المَحاجِرِ لا تَنْهَمِرْ؟
لقد داهمَتْكِ عوادي الزَّمانِ \\ مهدِّمةً صرْحَكِ المُشْمَخِرْ
ولكــــن ربُّكِ لـــيس يَنَامُ \\ فصَبْراً. وما خابَ من يصْطَبِرْ
فلا بُــدَّ للضَّيْمِ أن ينْقَضِي \\ ولا بُــدَّ للحَــقِّ أن يَنْتَصِرْ <ref>تضمين لبيت أبي القاسم الشابي الوارد في قصيدته إرادة الحياة والذي يقول فيه :
فلا بدَّ للظالم أن ينجلي \\ ولا بدَّ للقيد أن ينكسر</ref>
}}
* جريدة الوزير : 16 /12 /1937
[[تصنيف:شعر]]
[[تصنيف:محمود بورقيبة]]
e5dw3kvls4z0zx1950fjjzyrc7rma1a
دموع الشاعر
0
307182
617423
2026-08-14T07:06:13Z
TOUMOU
16960
أنشأ الصفحة ب'{{ترويسة | عنوان = دموع الشاعر | مؤلف = محمود بورقيبة | مترجم = | باب = | سابق = | تالي = | ملاحظات = }} {{أبيات| تَهْفُو خيالاتُكِ في خاطِرِي \\ كسُحُبِ المَاضِي على الحَاضِرِ فتعْصِفُ الآلامُ في مهْجَتِي \\ وتَرْقُصُ الأشْبَاحُ في ناظِرِي وأب...'
617423
wikitext
text/x-wiki
{{ترويسة
| عنوان = دموع الشاعر
| مؤلف = محمود بورقيبة
| مترجم =
| باب =
| سابق =
| تالي =
| ملاحظات =
}}
{{أبيات|
تَهْفُو خيالاتُكِ في خاطِرِي \\ كسُحُبِ المَاضِي على الحَاضِرِ
فتعْصِفُ الآلامُ في مهْجَتِي \\ وتَرْقُصُ الأشْبَاحُ في ناظِرِي
وأبْصِرُ العِقْدَ النَّفِيسَ الذِي \\ قد صُغْتَه من مَدْمَعِي الطَّاهِرِ
وكيفَ أهْديتَكِ حَياتَـــه \\ منظومةً في سِلْكِها النَّادِرِ
وكيفَ لاَقَى منك نَثْراً لهُ \\ وكيف ضاعَتْ "أدمُعُ الشَّاعر"
}}
*جريدة الزهرة : 07 /3 /1951
[[تصنيف:شعر]]
[[تصنيف:محمود بورقيبة]]
itpd9rgl7aauq9qtd5s8s4ftt2xtl9b
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/413
104
307183
617426
2026-08-14T11:47:58Z
RASHEEDYE
15342
/* لم تصحح */ أنشأ الصفحة ب'{{أعمدة متعددة}} بيت قصير جداً {{ربط بصفحة|286|16|٢٨٦}}{{سج}} بيت يجمع حروف المعجم {{ربط بصفحة|351|16|٣٥١}}، {{ربط بصفحة|353|16|٣٥٣}}، {{ربط بصفحة|355|16|٣٥٥}} <br /> {{وسط|( ت )}} <br /> التأخير {{ربط بصفحة|101|16|١٠١}}، {{ربط بصفحة|117|16|١١٧}}{{سج}} التأريج {{ربط بصفحة|53|16|٥٣}}، {{ربط بصفحة|76|16|٧٦}}، {{رب...'
617426
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{أعمدة متعددة}}
بيت قصير جداً {{ربط بصفحة|286|16|٢٨٦}}{{سج}}
بيت يجمع حروف المعجم {{ربط بصفحة|351|16|٣٥١}}، {{ربط بصفحة|353|16|٣٥٣}}، {{ربط بصفحة|355|16|٣٥٥}}
<br />
{{وسط|( ت )}}
<br />
التأخير {{ربط بصفحة|101|16|١٠١}}، {{ربط بصفحة|117|16|١١٧}}{{سج}}
التأريج {{ربط بصفحة|53|16|٥٣}}، {{ربط بصفحة|76|16|٧٦}}، {{ربط بصفحة|79|16|٧٩}}، {{ربط بصفحة|81|16|٨١}}، {{ربط بصفحة|158|16|١٥٨}}{{سج}}
تأريج الألغاز {{ربط بصفحة|110|16|١١٠}}{{سج}}
تأريج الأشكال {{ربط بصفحة|48|16|٤٨}}، {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|71|16|٧١}}، {{ربط بصفحة|75|16|٧٥}}{{سج}}
تأليف الشعر {{ربط بصفحة|318|16|٣١٨}}{{سج}}
تأليف حروف الكلام {{ربط بصفحة|318|16|٣١٨}}{{سج}}
تأليف حروف الكلام وازدواجها {{ربط بصفحة|298|16|٢٩٨}}، {{ربط بصفحة|313|16|٣١٣}}{{سج}}
تباديل الحروف في الثلاثي {{ربط بصفحة|362|16|٣٦٢}}{{سج}}
تباديل الحروف في الثنائي {{ربط بصفحة|362|16|٣٦٢}}{{سج}}
تباديل الحروف في الرباعي {{ربط بصفحة|362|16|٣٦٢}}{{سج}}
تبديل أشكال الحروف {{ربط بصفحة|250|16|٢٥٠}}{{سج}}
التبديل البسيط {{ربط بصفحة|48|16|٤٨}}، {{ربط بصفحة|53|16|٥٣}}، {{ربط بصفحة|54|16|٥٤}}، {{ربط بصفحة|57|16|٥٧}}، {{ربط بصفحة|58|16|٥٨}}، {{ربط بصفحة|92|16|٩٢}}، {{ربط بصفحة|94|16|٩٤}}، {{ربط بصفحة|103|16|١٠٣}}، {{ربط بصفحة|296|16|٢٩٦}}، {{ربط بصفحة|304|16|٣٠٤}}، {{ربط بصفحة|331|16|٣٣١}}، {{ربط بصفحة|372|16|٣٧٢}}، {{ربط بصفحة|376|16|٣٧٦}}{{سج}}
التبصر بالكتابة {{ربط بصفحة|324|16|٣٢٤}}، {{ربط بصفحة|326|16|٣٢٦}}، {{ربط بصفحة|327|16|٣٢٧}}{{سج}}
تتابع الحروف {{ربط بصفحة|216|16|٢١٦}}{{سج}}
التحليل الإحصائي {{ربط بصفحة|54|16|٥٤}}، {{ربط بصفحة|58|16|٥٨}}، {{ربط بصفحة|60|16|٦٠}}{{سج}}
التحليل الإحصائي للأشكال {{ربط بصفحة|96|16|٩٦}}{{سج}}
التحليل الإحصائي للصور {{ربط بصفحة|94|16|٩٤}}{{سج}}
تحليل العدد إلى مجموعة أعداد {{ربط بصفحة|182|16|١٨٢}}{{سج}}
تدبير الوزن {{ربط بصفحة|320|16|٣٢٠}}{{سج}}
التراجم {{ربط بصفحة|38|16|٣٨}}، {{ربط بصفحة|62|16|٦٢}}{{سج}}
التراجم البسيطة {{ربط بصفحة|127|16|١٢٧}}، {{ربط بصفحة|224|16|٢٢٤}}، {{ربط بصفحة|239|16|٢٣٩}}، {{ربط بصفحة|251|16|٢٥١}}، {{ربط بصفحة|252|16|٢٥٢}}، {{ربط بصفحة|266|16|٢٦٦}}
{{فاصل أعمدة متعددة|خط1=1px solid black}}
التراجم البسيطة في النثر {{ربط بصفحة|286|16|٢٨٦}}{{سج}}
التراجم البسيطة في المنظوم {{ربط بصفحة|286|16|٢٨٦}}{{سج}}
التراجم التي لا تجيب {{ربط بصفحة|56|16|٥٦}}، {{ربط بصفحة|81|16|٨١}}{{سج}}
التراجم السهلة {{ربط بصفحة|52|16|٥٢}}، {{ربط بصفحة|62|16|٦٢}}{{سج}}
التراجم الصعبة {{ربط بصفحة|62|16|٦٢}}{{سج}}
التراجم العويصة {{ربط بصفحة|52|16|٥٢}}، {{ربط بصفحة|56|16|٥٦}}، {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|79|16|٧٩}}{{سج}}
<br />
التراجم المسهلة {{ربط بصفحة|41|16|٤١}}{{سج}}
التراجم المعراة {{ربط بصفحة|81|16|٨١}}{{سج}}
الترجمة {{ربط بصفحة|38|16|٣٨}}، {{ربط بصفحة|48|16|٤٨}}، {{ربط بصفحة|49|16|٤٩}}، {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|89|16|٨٩}}، {{ربط بصفحة|92|16|٩٢}}، {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|108|16|١٠٨}}، {{ربط بصفحة|109|16|١٠٩}}، {{ربط بصفحة|110|16|١١٠}}، {{ربط بصفحة|126|16|١٢٦}}{{سج}}
الترجمة البسطامية {{ربط بصفحة|92|16|٩٢}}، {{ربط بصفحة|110|16|١١٠}}{{سج}}
الترجمة التي أعميت عيوبها {{ربط بصفحة|80|16|٨٠}}{{سج}}
الترجمة التي تحل بقوة الفطنة {{ربط بصفحة|52|16|٥٢}}{{سج}}
الترجمة التي لا فصل فيها {{ربط بصفحة|49|16|٤٩}}{{سج}}
الترجمة التي لا تجيب {{ربط بصفحة|62|16|٦٢}}{{سج}}
الترجمة التي لا تحل إلا إيهاماً للمستخرج {{ربط بصفحة|52|16|٥٢}}{{سج}}
الترجمة التي لا فصل فيها {{ربط بصفحة|73|16|٧٣}}{{سج}}
الترجمة التي لا يمكن حلها {{ربط بصفحة|82|16|٨٢}}{{سج}}
الترجمة الحقيقة {{ربط بصفحة|75|16|٧٥}}{{سج}}
الترجمة الصعبة الحل {{ربط بصفحة|57|16|٥٧}}{{سج}}
الترجمة العويصة {{ربط بصفحة|41|16|٤١}}{{سج}}
الترجمة القمية {{ربط بصفحة|92|16|٩٢}}، {{ربط بصفحة|110|16|١١٠}}{{سج}}
الترجمة المركبة {{ربط بصفحة|128|16|١٢٨}}، {{ربط بصفحة|189|16|١٨٩}}{{سج}}
الترجمة المركبة على حساب الجمل {{ربط بصفحة|259|16|٢٥٩}}{{سج}}
الترجمة المسددة {{ربط بصفحة|62|16|٦٢}}{{سج}}
الترجمة المعراة من جميع الجهات {{ربط بصفحة|62|16|٦٢}}{{سج}}
الترجمة المعماة بالتركيب ضمن ألفاظ رسالة {{ربط بصفحة|188|16|١٨٨}}
{{نهاية أعمدة متعددة}}
{{يسار|٤١١}}<noinclude></noinclude>
6kswc8n2ynbwja5dtqa7gshl704rcot
617431
617426
2026-08-14T11:55:34Z
RASHEEDYE
15342
617431
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{أعمدة متعددة}}
<br/>بيت قصير جداً {{ربط بصفحة|286|16|٢٨٦}}{{سج}}
بيت يجمع حروف المعجم {{ربط بصفحة|351|16|٣٥١}}، {{ربط بصفحة|353|16|٣٥٣}}، {{ربط بصفحة|355|16|٣٥٥}}
<br />
{{وسط|( ت )}}
<br />
التأخير {{ربط بصفحة|101|16|١٠١}}، {{ربط بصفحة|117|16|١١٧}}{{سج}}
التأريج {{ربط بصفحة|53|16|٥٣}}، {{ربط بصفحة|76|16|٧٦}}، {{ربط بصفحة|79|16|٧٩}}، {{ربط بصفحة|81|16|٨١}}، {{ربط بصفحة|158|16|١٥٨}}{{سج}}
تأريج الألغاز {{ربط بصفحة|110|16|١١٠}}{{سج}}
تأريج الأشكال {{ربط بصفحة|48|16|٤٨}}، {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|71|16|٧١}}، {{ربط بصفحة|75|16|٧٥}}{{سج}}
تأليف الشعر {{ربط بصفحة|318|16|٣١٨}}{{سج}}
تأليف حروف الكلام {{ربط بصفحة|318|16|٣١٨}}{{سج}}
تأليف حروف الكلام وازدواجها {{ربط بصفحة|298|16|٢٩٨}}، {{ربط بصفحة|313|16|٣١٣}}{{سج}}
تباديل الحروف في الثلاثي {{ربط بصفحة|362|16|٣٦٢}}{{سج}}
تباديل الحروف في الثنائي {{ربط بصفحة|362|16|٣٦٢}}{{سج}}
تباديل الحروف في الرباعي {{ربط بصفحة|362|16|٣٦٢}}{{سج}}
تبديل أشكال الحروف {{ربط بصفحة|250|16|٢٥٠}}{{سج}}
التبديل البسيط {{ربط بصفحة|48|16|٤٨}}، {{ربط بصفحة|53|16|٥٣}}، {{ربط بصفحة|54|16|٥٤}}، {{ربط بصفحة|57|16|٥٧}}، {{ربط بصفحة|58|16|٥٨}}، {{ربط بصفحة|92|16|٩٢}}، {{ربط بصفحة|94|16|٩٤}}، {{ربط بصفحة|103|16|١٠٣}}، {{ربط بصفحة|296|16|٢٩٦}}، {{ربط بصفحة|304|16|٣٠٤}}، {{ربط بصفحة|331|16|٣٣١}}، {{ربط بصفحة|372|16|٣٧٢}}، {{ربط بصفحة|376|16|٣٧٦}}{{سج}}
التبصر بالكتابة {{ربط بصفحة|324|16|٣٢٤}}، {{ربط بصفحة|326|16|٣٢٦}}، {{ربط بصفحة|327|16|٣٢٧}}{{سج}}
تتابع الحروف {{ربط بصفحة|216|16|٢١٦}}{{سج}}
التحليل الإحصائي {{ربط بصفحة|54|16|٥٤}}، {{ربط بصفحة|58|16|٥٨}}، {{ربط بصفحة|60|16|٦٠}}{{سج}}
التحليل الإحصائي للأشكال {{ربط بصفحة|96|16|٩٦}}{{سج}}
التحليل الإحصائي للصور {{ربط بصفحة|94|16|٩٤}}{{سج}}
تحليل العدد إلى مجموعة أعداد {{ربط بصفحة|182|16|١٨٢}}{{سج}}
تدبير الوزن {{ربط بصفحة|320|16|٣٢٠}}{{سج}}
التراجم {{ربط بصفحة|38|16|٣٨}}، {{ربط بصفحة|62|16|٦٢}}{{سج}}
التراجم البسيطة {{ربط بصفحة|127|16|١٢٧}}، {{ربط بصفحة|224|16|٢٢٤}}، {{ربط بصفحة|239|16|٢٣٩}}، {{ربط بصفحة|251|16|٢٥١}}، {{ربط بصفحة|252|16|٢٥٢}}، {{ربط بصفحة|266|16|٢٦٦}}
{{فاصل أعمدة متعددة|خط1=2px solid black}}
<br/>التراجم البسيطة في النثر {{ربط بصفحة|286|16|٢٨٦}}{{سج}}
التراجم البسيطة في المنظوم {{ربط بصفحة|286|16|٢٨٦}}{{سج}}
التراجم التي لا تجيب {{ربط بصفحة|56|16|٥٦}}، {{ربط بصفحة|81|16|٨١}}{{سج}}
التراجم السهلة {{ربط بصفحة|52|16|٥٢}}، {{ربط بصفحة|62|16|٦٢}}{{سج}}
التراجم الصعبة {{ربط بصفحة|62|16|٦٢}}{{سج}}
التراجم العويصة {{ربط بصفحة|52|16|٥٢}}، {{ربط بصفحة|56|16|٥٦}}، {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|79|16|٧٩}}{{سج}}
<br />
التراجم المسهلة {{ربط بصفحة|41|16|٤١}}{{سج}}
التراجم المعراة {{ربط بصفحة|81|16|٨١}}{{سج}}
الترجمة {{ربط بصفحة|38|16|٣٨}}، {{ربط بصفحة|48|16|٤٨}}، {{ربط بصفحة|49|16|٤٩}}، {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|89|16|٨٩}}، {{ربط بصفحة|92|16|٩٢}}، {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|108|16|١٠٨}}، {{ربط بصفحة|109|16|١٠٩}}، {{ربط بصفحة|110|16|١١٠}}، {{ربط بصفحة|126|16|١٢٦}}{{سج}}
الترجمة البسطامية {{ربط بصفحة|92|16|٩٢}}، {{ربط بصفحة|110|16|١١٠}}{{سج}}
الترجمة التي أعميت عيوبها {{ربط بصفحة|80|16|٨٠}}{{سج}}
الترجمة التي تحل بقوة الفطنة {{ربط بصفحة|52|16|٥٢}}{{سج}}
الترجمة التي لا فصل فيها {{ربط بصفحة|49|16|٤٩}}{{سج}}
الترجمة التي لا تجيب {{ربط بصفحة|62|16|٦٢}}{{سج}}
الترجمة التي لا تحل إلا إيهاماً للمستخرج {{ربط بصفحة|52|16|٥٢}}{{سج}}
الترجمة التي لا فصل فيها {{ربط بصفحة|73|16|٧٣}}{{سج}}
الترجمة التي لا يمكن حلها {{ربط بصفحة|82|16|٨٢}}{{سج}}
الترجمة الحقيقة {{ربط بصفحة|75|16|٧٥}}{{سج}}
الترجمة الصعبة الحل {{ربط بصفحة|57|16|٥٧}}{{سج}}
الترجمة العويصة {{ربط بصفحة|41|16|٤١}}{{سج}}
الترجمة القمية {{ربط بصفحة|92|16|٩٢}}، {{ربط بصفحة|110|16|١١٠}}{{سج}}
الترجمة المركبة {{ربط بصفحة|128|16|١٢٨}}، {{ربط بصفحة|189|16|١٨٩}}{{سج}}
الترجمة المركبة على حساب الجمل {{ربط بصفحة|259|16|٢٥٩}}{{سج}}
الترجمة المسددة {{ربط بصفحة|62|16|٦٢}}{{سج}}
الترجمة المعراة من جميع الجهات {{ربط بصفحة|62|16|٦٢}}{{سج}}
الترجمة المعماة بالتركيب ضمن ألفاظ رسالة {{ربط بصفحة|188|16|١٨٨}}
{{نهاية أعمدة متعددة}}
{{يسار|٤١١}}<noinclude></noinclude>
qw5wriq9opt1vxp8lnx7tbrr87556hi
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/414
104
307184
617427
2026-08-14T11:48:38Z
RASHEEDYE
15342
/* لم تصحح */ أنشأ الصفحة ب'{{أعمدة متعددة}} الترجمة المعماة بالتركيب على الحساب والعدد {{ربط بصفحة|189|16|١٨٩}}{{سج}} الترجمة المعماة بالتركيب على الخرز الملون {{ربط بصفحة|186|16|١٨٦}}{{سج}} الترجمة المعماة بالتركيب على الدرج المطوي {{ربط بصفحة|184|16|١٨٤}}{{سج}} الترجمة المعماة بالتركيب على دقة الخشب...'
617427
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{أعمدة متعددة}}
الترجمة المعماة بالتركيب على الحساب والعدد {{ربط بصفحة|189|16|١٨٩}}{{سج}}
الترجمة المعماة بالتركيب على الخرز الملون {{ربط بصفحة|186|16|١٨٦}}{{سج}}
الترجمة المعماة بالتركيب على الدرج المطوي {{ربط بصفحة|184|16|١٨٤}}{{سج}}
الترجمة المعماة بالتركيب على دقة الخشب {{ربط بصفحة|185|16|١٨٥}}{{سج}}
الترجمة المعماة بالتركيب على رقعة الشطرنج {{ربط بصفحة|258|16|٢٥٨}}{{سج}}
الترجمة المعماة بالتركيب على عكس الألفاظ {{ربط بصفحة|189|16|١٨٩}}{{سج}}
الترجمة المعماة بالتركيب في حواشي الكلام {{ربط بصفحة|188|16|١٨٨}}{{سج}}
الترجمة المعماة بتبديل أشكال الحروف مع الرباط والشرح {{ربط بصفحة|167|16|١٦٧}}{{سج}}
الترجمة المعماة بحساب الجمل {{ربط بصفحة|181|16|١٨١}}{{سج}}
الترجمة المعماة بوضع الحروف على أيام الأسبوع والساعات {{ربط بصفحة|183|16|١٨٣}}{{سج}}
الترجمة المعماة على أحوال الكواكب {{ربط بصفحة|191|16|١٩١}}{{سج}}
الترجمة المعماة من كل جهة {{ربط بصفحة|63|16|٦٣}}{{سج}}
الترجمة بألفاظ يصح من كل منها حرف واحد {{ربط بصفحة|264|16|٢٦٤}}{{سج}}
الترجمة بالتخاطب بحساب الجمل معقوداً على الأصابع {{ربط بصفحة|176|16|١٧٦}}{{سج}}
الترجمة بالتركيب في حواشي الكلام {{ربط بصفحة|264|16|٢٦٤}}{{سج}}
الترجمة بالخرز {{ربط بصفحة|263|16|٢٦٣}}{{سج}}
الترجمة بالوضع على أحوال الكواكب {{ربط بصفحة|265|16|٢٦٥}}{{سج}}
الترجمة بتبديل أشكال الحروف {{ربط بصفحة|250|16|٢٥٠}}{{سج}}
الترجمة بتقطيب دقة الخشب {{ربط بصفحة|262|16|٢٦٢}}{{سج}}
الترجمة بتغيير أشكال الحروف {{ربط بصفحة|247|16|٢٤٧}}{{سج}}
الترجمة بتغيير حلية الشكل {{ربط بصفحة|247|16|٢٤٧}}{{سج}}
الترجمة بتغيير نسب الحروف {{ربط بصفحة|248|16|٢٤٨}}{{سج}}
الترجمة بحذف حرف {{ربط بصفحة|166|16|١٦٦}}{{سج}}
الترجمة بحروف الجمل {{ربط بصفحة|46|16|٤٦}}{{سج}}
الترجمة برقعة الشطرنج {{ربط بصفحة|141|16|١٤١}}{{سج}}
الترجمة بقلب حروف المعجم {{ربط بصفحة|44|16|٤٤}}
{{فاصل أعمدة متعددة|خط1=1px solid black}}
الترجمة بمضاعفة العدد {{ربط بصفحة|260|16|٢٦٠}}{{سج}}
الترجمة بوضع حروف المعجم في سبع لفظات {{ربط بصفحة|261|16|٢٦١}}{{سج}}
الترجمة ذات الفصل {{ربط بصفحة|49|16|٤٩}}، {{ربط بصفحة|72|16|٧٢}}{{سج}}
الترجمة في الشعر {{ربط بصفحة|324|16|٣٢٤}}{{سج}}
ترداد الحروف {{ربط بصفحة|280|16|٢٨٠}}{{سج}}
تردد الحروف {{ربط بصفحة|63|16|٦٣}}، {{ربط بصفحة|362|16|٣٦٢}}{{سج}}
تردد الحروف المفردة {{ربط بصفحة|364|16|٣٦٤}}{{سج}}
تردد حروف المعجم {{ربط بصفحة|60|16|٦٠}}{{سج}}
التركيب {{ربط بصفحة|173|16|١٧٣}}، {{ربط بصفحة|175|16|١٧٥}}، {{ربط بصفحة|176|16|١٧٦}}، {{ربط بصفحة|189|16|١٨٩}}{{سج}}
تركيب التعمية {{ربط بصفحة|162|16|١٦٢}}، {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
تركيب التعمية على خلفية {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
تركيب التعمية على محاسبة الفلاحين {{ربط بصفحة|175|16|١٧٥}}{{سج}}
تركيب الكلام العربي {{ربط بصفحة|302|16|٣٠٢}}{{سج}}
تركيب النص المعمى {{ربط بصفحة|185|16|١٨٥}}{{سج}}
تركيب النص المعمى على رسالة {{ربط بصفحة|188|16|١٨٨}}{{سج}}
تركيب النص المعمى على سبحة {{ربط بصفحة|186|16|١٨٦}}{{سج}}
تركيب النص المعمى على نص آخر {{ربط بصفحة|188|16|١٨٨}}{{سج}}
تركيب النص المعمى على نص فلكي {{ربط بصفحة|191|16|١٩١}}{{سج}}
تركيب تبديل الحروف على حساب الجمل {{ربط بصفحة|176|16|١٧٦}}{{سج}}
تركيب حساب الجمل على المساحة {{ربط بصفحة|256|16|٢٥٦}}{{سج}}
التركيب في حواشي الكلام {{ربط بصفحة|169|16|١٦٩}}{{سج}}
تسطيح نسبي {{ربط بصفحة|60|16|٦٠}}{{سج}}
التسطيح النسبي في طيف تردد أشكال النص المترجم {{ربط بصفحة|62|16|٦٢}}{{سج}}
التشفير {{ربط بصفحة|391|16|٣٩١}}{{سج}}
تضعيف بعض الحروف {{ربط بصفحة|238|16|٢٣٨}}{{سج}}
تضعيف جميع الحروف {{ربط بصفحة|238|16|٢٣٨}}{{سج}}
التعمية {{ربط بصفحة|38|16|٣٨}}، {{ربط بصفحة|48|16|٤٨}}، {{ربط بصفحة|49|16|٤٩}}، {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|89|16|٨٩}}، {{ربط بصفحة|92|16|٩٢}}، {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|108|16|١٠٨}}، {{ربط بصفحة|109|16|١٠٩}}، {{ربط بصفحة|110|16|١١٠}}، {{ربط بصفحة|125|16|١٢٥}}، {{ربط بصفحة|391|16|٣٩١}}
{{نهاية أعمدة متعددة}}
{{يمين|٤١٢}}<noinclude></noinclude>
od9ccczrdgfts41oeaden4y8a345fjl
صفحة:The Method of Medicine WDL7478.pdf/6
104
307185
617428
2026-08-14T11:48:44Z
~2026-43953-13
72772
/* لم تصحح */ أنشأ الصفحة ب' {{عنوان|'''فهرس الكتاب بالتصريف لمن عجز عن التأليف المشهور بالزهراوي'''}} {| style="width:100%; border:2px solid; border-collapse:collapse; text-align:right;" |- ! style="border:1px solid; width:5%; text-align:center;" | صفحه ! style="border:1px solid; width:45%; text-align:center;" | مضمون ! style="border:1px solid; width:5%; text-align:center;" | صفحه ! style="border:1px solid; width:45%; text-...'
617428
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="~2026-43953-13" />{{رص|تبصرة|٣|زهراوي}}</noinclude>
{{عنوان|'''فهرس الكتاب بالتصريف لمن عجز عن التأليف المشهور بالزهراوي'''}}
{| style="width:100%; border:2px solid; border-collapse:collapse; text-align:right;"
|-
! style="border:1px solid; width:5%; text-align:center;" | صفحه
! style="border:1px solid; width:45%; text-align:center;" | مضمون
! style="border:1px solid; width:5%; text-align:center;" | صفحه
! style="border:1px solid; width:45%; text-align:center;" | مضمون
|-
| style="border:1px solid; text-align:center;" | ٢
| colspan="3" style="border:1px solid; text-align:center;" |
''' الكتاب ديباجه'''
|-
| style="border:1px solid; text-align:center;" | ٣
| colspan="3" style="border:1px solid; text-align:center;" |
'''الباب الاولى في الكى'''}}
|-
| style="border:1px solid; text-align:center;" | ٦
| style="border:1px solid;" | الفصل الاول فى {{illegible}} كى اور مركبه واحده۔
| style="border:1px solid; text-align:center;" | ٦
| style="border:1px solid;" | الفصل الثانى فى كى الامراض {{illegible}}۔
|-
| style="border:1px solid; text-align:center;" | ٧
| style="border:1px solid;" | الفصل الثانى فى {{illegible}}۔
| style="border:1px solid; text-align:center;" | ٨
| style="border:1px solid;" | الفصل الرابع فى كى {{illegible}} اور منہ۔
|-
| style="border:1px solid; text-align:center;" | ٩
| style="border:1px solid;" | الفصل الخامس فى كى اوجاع الابوين۔
| style="border:1px solid; text-align:center;" | ٩
| style="border:1px solid;" | الفصل السادس فى كى القوة۔
|-
| style="border:1px solid; text-align:center;" | ١٠
| style="border:1px solid;" | الفصل السابع فى {{illegible}}۔
| style="border:1px solid; text-align:center;" | ١٠
| style="border:1px solid;" | الفصل التاسع كى انسان {{illegible}}۔
|-
| style="border:1px solid; text-align:center;" | ١١
| style="border:1px solid;" | الفصل الحادى عشر فى كى {{illegible}}۔
| style="border:1px solid; text-align:center;" | ١١
| style="border:1px solid;" | الفصل الحادى عشر كى الصرع۔
|-
| style="border:1px solid; text-align:center;" | ١٢
| style="border:1px solid;" | الفصل الثانى عشر فى كى وجع العينين۔
| style="border:1px solid; text-align:center;" | ١٢
| style="border:1px solid;" | الفصل الثانى عشر فى كى {{illegible}} العين۔
|-
| style="border:1px solid; text-align:center;" | ١٣
| style="border:1px solid;" | الفصل الثالث عشر فى كى {{illegible}} العينين۔
| style="border:1px solid; text-align:center;" | ١٣
| style="border:1px solid;" | الفصل الرابع عشر فى كى الالف۔
|-
| style="border:1px solid; text-align:center;" | ١٣
| style="border:1px solid;" | الفصل {{illegible}} فى كى {{illegible}}۔
| style="border:1px solid; text-align:center;" | ١٣
| style="border:1px solid;" | الفصل السادس عشر فى كى جفن العين۔
|-
| style="border:1px solid; text-align:center;" | ١٦
| style="border:1px solid;" | الفصل التاسع عشر فى كى {{illegible}}۔
| style="border:1px solid; text-align:center;" | ١٦
| style="border:1px solid;" | الفصل الثامن عشر فى كى شقاق الشفة۔
|-
| style="border:1px solid; text-align:center;" | ١٦
| style="border:1px solid;" | الفصل الحادى والعشرون فى كى {{illegible}}۔
| style="border:1px solid; text-align:center;" | ١٦
| style="border:1px solid;" | الفصل العشرون فى كى {{illegible}}۔
|-
| style="border:1px solid; text-align:center;" | ١٨
| style="border:1px solid;" | الفصل {{illegible}} فى كى {{illegible}}۔
| style="border:1px solid; text-align:center;" | ١٨
| style="border:1px solid;" | الفصل الرابع والعشرون كى مرض {{illegible}}۔
|-
| style="border:1px solid; text-align:center;" | ١٩
| style="border:1px solid;" | الفصل {{illegible}} فى كى {{illegible}}۔
| style="border:1px solid; text-align:center;" | ١٩
| style="border:1px solid;" | الفصل السادس والعشرون فى كى المعدة۔
|-
| style="border:1px solid; text-align:center;" | ٢١
| style="border:1px solid;" | الفصل التاسع والعشرون فى كى {{illegible}}۔
| style="border:1px solid; text-align:center;" | ٢١
| style="border:1px solid;" | الفصل الثلاثون فى {{illegible}}۔
|-
| style="border:1px solid; text-align:center;" | ٢٢
| style="border:1px solid;" | الفصل الواحد والثلاثون فى كى الاستسقاء۔
| style="border:1px solid; text-align:center;" | ٢٢
| style="border:1px solid;" | الفصل الثلاثون فى كى الطحال۔
|}<noinclude></noinclude>
3e9ahkfwm9kvb9jfidq9rktyhjy8ak1
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/415
104
307186
617429
2026-08-14T11:52:04Z
RASHEEDYE
15342
/* لم تصحح */ أنشأ الصفحة ب'{{أعمدة متعددة}} <br/>تعمية أغلاق {{ربط بصفحة|104|16|١٠٤}}{{سج}} التعمية البسيطة {{ربط بصفحة|130|16|١٣٠}}، {{ربط بصفحة|157|16|١٥٧}}، {{ربط بصفحة|168|16|١٦٨}}، {{ربط بصفحة|172|16|١٧٢}}، {{ربط بصفحة|189|16|١٨٩}}، {{ربط بصفحة|224|16|٢٢٤}}، {{ربط بصفحة|236|16|٢٣٦}}، {{ربط بصفحة|237|16|٢٣٧}}{{سج}} تعمية الثنائية ب...'
617429
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{أعمدة متعددة}}
<br/>تعمية أغلاق {{ربط بصفحة|104|16|١٠٤}}{{سج}}
التعمية البسيطة {{ربط بصفحة|130|16|١٣٠}}، {{ربط بصفحة|157|16|١٥٧}}، {{ربط بصفحة|168|16|١٦٨}}، {{ربط بصفحة|172|16|١٧٢}}، {{ربط بصفحة|189|16|١٨٩}}، {{ربط بصفحة|224|16|٢٢٤}}، {{ربط بصفحة|236|16|٢٣٦}}، {{ربط بصفحة|237|16|٢٣٧}}{{سج}}
تعمية الثنائية برمز واحد {{ربط بصفحة|97|16|٩٧}}{{سج}}
التعمية الحديثة {{ربط بصفحة|101|16|١٠١}}{{سج}}
تعمية الشعر {{ربط بصفحة|194|16|١٩٤}}، {{ربط بصفحة|297|16|٢٩٧}}، {{ربط بصفحة|403|16|٤٠٣}}{{سج}}
التعمية الشعرية {{ربط بصفحة|325|16|٣٢٥}}، {{ربط بصفحة|331|16|٣٣١}}{{سج}}
التعمية الصعبة {{ربط بصفحة|58|16|٥٨}}{{سج}}
تعمية الكلام المنشور {{ربط بصفحة|224|16|٢٢٤}}، {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
تعمية الكلام المنظوم {{ربط بصفحة|224|16|٢٢٤}}، {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
التعمية المتعددة الألفبائيات {{ربط بصفحة|172|16|١٧٢}}{{سج}}
التعمية المركبة {{ربط بصفحة|93|16|٩٣}}، {{ربط بصفحة|101|16|١٠١}}، {{ربط بصفحة|127|16|١٢٧}}، {{ربط بصفحة|130|16|١٣٠}}، {{ربط بصفحة|137|16|١٣٧}}، {{ربط بصفحة|140|16|١٤٠}}، {{ربط بصفحة|163|16|١٦٣}}، {{ربط بصفحة|165|16|١٦٥}}، {{ربط بصفحة|168|16|١٦٨}}، {{ربط بصفحة|170|16|١٧٠}}، {{ربط بصفحة|171|16|١٧١}}، {{ربط بصفحة|172|16|١٧٢}}، {{ربط بصفحة|224|16|٢٢٤}}، {{ربط بصفحة|236|16|٢٣٦}}، {{ربط بصفحة|238|16|٢٣٨}}{{سج}}
التعمية المركبة على المساحة {{ربط بصفحة|189|16|١٨٩}}{{سج}}
تعمية المنظوم {{ربط بصفحة|291|16|٢٩١}}{{سج}}
تعمية النثر {{ربط بصفحة|361|16|٣٦١}}{{سج}}
التعمية باستعمال رقعة الشطرنج {{ربط بصفحة|127|16|١٢٧}}{{سج}}
التعمية بالأجناس {{ربط بصفحة|110|16|١١٠}}{{سج}}
التعمية بالإخفاء {{ربط بصفحة|137|16|١٣٧}}، {{ربط بصفحة|138|16|١٣٨}}، {{ربط بصفحة|170|16|١٧٠}}، {{ربط بصفحة|172|16|١٧٢}}، {{ربط بصفحة|184|16|١٨٤}}{{سج}}
التعمية بالإعادة والرسالة {{ربط بصفحة|171|16|١٧١}}{{سج}}
التعمية بالتبديل {{ربط بصفحة|324|16|٣٢٤}}{{سج}}
التعمية بالتبديل البسيط {{ربط بصفحة|297|16|٢٩٧}}، {{ربط بصفحة|298|16|٢٩٨}}، {{ربط بصفحة|303|16|٣٠٣}}{{سج}}
التعمية بالتخاطب {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
التعمية بالحساب والعدد باستعمال كسور الربع والنصف {{ربط بصفحة|265|16|٢٦٥}}{{سج}}
التعمية بالخرز الملون {{ربط بصفحة|187|16|١٨٧}}
{{فاصل أعمدة متعددة|خط1=2px solid black}}
<br/>التعمية بالزيادة {{ربط بصفحة|111|16|١١١}}{{سج}}
التعمية بالزيادة والنقصان {{ربط بصفحة|93|16|٩٣}}{{سج}}
التعمية بالقلب {{ربط بصفحة|93|16|٩٣}}، {{ربط بصفحة|138|16|١٣٨}}، {{ربط بصفحة|164|16|١٦٤}}{{سج}}
التعمية بالقلم المشجر {{ربط بصفحة|103|16|١٠٣}}{{سج}}
التعمية بالكتابة المعكوسة {{ربط بصفحة|264|16|٢٦٤}}{{سج}}
التعمية بالمعاني المشتقة {{ربط بصفحة|94|16|٩٤}}{{سج}}
التعمية بالمعاني المشتقة من لفظ الحرف {{ربط بصفحة|110|16|١١٠}}{{سج}}
التعمية بالنقصان {{ربط بصفحة|111|16|١١١}}، {{ربط بصفحة|112|16|١١٢}}{{سج}}
التعمية بتبديل أشكال الحروف وتغيير حليتها {{ربط بصفحة|239|16|٢٣٩}}{{سج}}
التعمية بتبديل الحروف ذي الرباط والشرح {{ربط بصفحة|137|16|١٣٧}}{{سج}}
التعمية بتركيب الحروف على رقعة الشطرنج {{ربط بصفحة|178|16|١٧٨}}{{سج}}
التعمية بتغيير مراتب الحروف {{ربط بصفحة|111|16|١١١}}{{سج}}
التعمية بحساب الجمل {{ربط بصفحة|174|16|١٧٤}}، {{ربط بصفحة|181|16|١٨١}}{{سج}}
التعمية بحساب الجمل المركب على المساحة {{ربط بصفحة|175|16|١٧٥}}{{سج}}
التعمية بحساب الجمل الموضوع على المساحة {{ربط بصفحة|176|16|١٧٦}}{{سج}}
التعمية بذي رباط وشرح {{ربط بصفحة|93|16|٩٣}}{{سج}}
التعمية بزيادة أشكال أغفال {{ربط بصفحة|128|16|١٢٨}}، {{ربط بصفحة|163|16|١٦٣}}{{سج}}
التعمية بغير تغيير الوضع {{ربط بصفحة|248|16|٢٤٨}}{{سج}}
التعمية بوضع الحروف إزاء الأجناس {{ربط بصفحة|172|16|١٧٢}}{{سج}}
تعمية دون فاصل {{ربط بصفحة|298|16|٢٩٨}}{{سج}}
تعمية ذات رباط وشرح {{ربط بصفحة|172|16|١٧٢}}{{سج}}
التعمية في الشعر {{ربط بصفحة|296|16|٢٩٦}}{{سج}}
التعمية في النثر {{ربط بصفحة|296|16|٢٩٦}}{{سج}}
تغير أشكال الحروف {{ربط بصفحة|236|16|٢٣٦}}{{سج}}
تغير الوضع {{ربط بصفحة|250|16|٢٥٠}}{{سج}}
تغير الوضع الأصلي {{ربط بصفحة|237|16|٢٣٧}}{{سج}}
تغير صورة الشكل {{ربط بصفحة|236|16|٢٣٦}}{{سج}}
تغير وضع الحروف {{ربط بصفحة|248|16|٢٤٨}}
{{نهاية أعمدة متعددة}}
{{يسار|٤١٣}}<noinclude></noinclude>
o5p4w7swgave2ntmjvoxrshbs4ef8bx
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/422
104
307187
617430
2026-08-14T11:53:50Z
RASHEEDYE
15342
/* لم تصحح */ أنشأ الصفحة ب'{{أعمدة متعددة}} {{وسط|( م )}} <br />ما أشكل من الحروف {{ربط بصفحة|301|16|٣٠١}}{{سج}} ما تقل حروفه عن حد معين {{ربط بصفحة|376|16|٣٧٦}}{{سج}} ما طال من المعمى {{ربط بصفحة|113|16|١١٣}}{{سج}} ما عمي في الكلام المنشور {{ربط بصفحة|233|16|٢٣٣}}{{سج}} ما لا يأتلف من الحروف {{ربط بصفحة|243|16|٢٤٣}}{{سج}} ما ل...'
617430
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{أعمدة متعددة}}
{{وسط|( م )}}
<br />ما أشكل من الحروف {{ربط بصفحة|301|16|٣٠١}}{{سج}}
ما تقل حروفه عن حد معين {{ربط بصفحة|376|16|٣٧٦}}{{سج}}
ما طال من المعمى {{ربط بصفحة|113|16|١١٣}}{{سج}}
ما عمي في الكلام المنشور {{ربط بصفحة|233|16|٢٣٣}}{{سج}}
ما لا يأتلف من الحروف {{ربط بصفحة|243|16|٢٤٣}}{{سج}}
ما لا يألف بالتقديم ولا بالتأخير {{ربط بصفحة|242|16|٢٤٢}}، {{ربط بصفحة|267|16|٢٦٧}}{{سج}}
ما لا يألف غيره بالتأخير دون التقديم {{ربط بصفحة|146|16|١٤٦}}{{سج}}
ما لا يألف غيره بالتقديم دون التأخير {{ربط بصفحة|146|16|١٤٦}}{{سج}}
ما لا يألف غيره من الحروف {{ربط بصفحة|146|16|١٤٦}}{{سج}}
ما لا يخرج أصلاً {{ربط بصفحة|52|16|٥٢}}{{سج}}
ما لا يخرج أصلاً ويمتنع عن الواضعين {{ربط بصفحة|79|16|٧٩}}{{سج}}
ما لا يستخرج من التراجم {{ربط بصفحة|56|16|٥٦}}{{سج}}
ما لا يقترن في الجذور {{ربط بصفحة|154|16|١٥٤}}{{سج}}
ما لا يقترن من الحروف {{ربط بصفحة|243|16|٢٤٣}}{{سج}}
ما وضع للإعنات {{ربط بصفحة|227|16|٢٢٧}}{{سج}}
ما يأتلف بالتأخير دون تقديم {{ربط بصفحة|243|16|٢٤٣}}{{سج}}
ما يأتلف بتقديم دون تأخير {{ربط بصفحة|154|16|١٥٤}}، {{ربط بصفحة|243|16|٢٤٣}}{{سج}}
ما يأتلف من الحروف وما لا يأتلف (ما يتنافر) {{ربط بصفحة|94|16|٩٤}}، {{ربط بصفحة|96|16|٩٦}}، {{ربط بصفحة|113|16|١١٣}}، {{ربط بصفحة|116|16|١١٦}}، {{ربط بصفحة|234|16|٢٣٤}}، {{ربط بصفحة|268|16|٢٦٨}}، {{ربط بصفحة|302|16|٣٠٢}}{{سج}}
ما يألف بالتأخير {{ربط بصفحة|267|16|٢٦٧}}{{سج}}
ما يألف بالتأخير دون التقديم {{ربط بصفحة|242|16|٢٤٢}}{{سج}}
ما يألف بالتقديم {{ربط بصفحة|267|16|٢٦٧}}{{سج}}
ما يألف بالتقديم دون التأخير {{ربط بصفحة|242|16|٢٤٢}}{{سج}}
ما يألف غيره بالتقديم والتأخير {{ربط بصفحة|145|16|١٤٥}}، {{ربط بصفحة|242|16|٢٤٢}}، {{ربط بصفحة|267|16|٢٦٧}}{{سج}}
ما يألف من الحروف بعضها بعضاً {{ربط بصفحة|241|16|٢٤١}}{{سج}}
ما يترجم من الكلام المنشور والمنظوم {{ربط بصفحة|313|16|٣١٣}}{{سج}}
ما يتكرر كثيراً وما يقل تكراره {{ربط بصفحة|298|16|٢٩٨}}، {{ربط بصفحة|313|16|٣١٣}}
{{فاصل أعمدة متعددة|خط1=3px solid black}}
<br />ما يحتاج إليه المستخرج {{ربط بصفحة|41|16|٤١}}، {{ربط بصفحة|68|16|٦٨}}{{سج}}
ما يرد أوايل الكلمات {{ربط بصفحة|362|16|٣٦٢}}{{سج}}
ما يرد أواخر الكلمات {{ربط بصفحة|362|16|٣٦٢}}{{سج}}
ما يزدوج من الحروف مع غيره {{ربط بصفحة|300|16|٣٠٠}}{{سج}}
ما يستعمل من الحروف {{ربط بصفحة|243|16|٢٤٣}}{{سج}}
ما يستعمل وما يهمل {{ربط بصفحة|313|16|٣١٣}}{{سج}}
ما يصعب استخراجه {{ربط بصفحة|52|16|٥٢}}{{سج}}
ما يصعب استخراجه حتى لايجيب {{ربط بصفحة|79|16|٧٩}}{{سج}}
ما يضطر إليه الوزن {{ربط بصفحة|301|16|٣٠١}}{{سج}}
ما يطول من الكلمات {{ربط بصفحة|315|16|٣١٥}}{{سج}}
ما يعمى من الكلام المنشور {{ربط بصفحة|312|16|٣١٢}}{{سج}}
ما يعمى من الكلام المنظوم {{ربط بصفحة|312|16|٣١٢}}{{سج}}
ما يقترن من الحروف {{ربط بصفحة|243|16|٢٤٣}}{{سج}}
ما يقترن من الحروف وما لايقترن {{ربط بصفحة|96|16|٩٦}}، {{ربط بصفحة|113|16|١١٣}}، {{ربط بصفحة|140|16|١٤٠}}{{سج}}
ما ينبو عن التأليف من حروف الكلام {{ربط بصفحة|298|16|٢٩٨}}{{سج}}
ما ينبو عند التأليف من الحروف {{ربط بصفحة|313|16|٣١٣}}{{سج}}
ما ينقط بعضه ويغفل بعضه {{ربط بصفحة|352|16|٣٥٢}}{{سج}}
ما يهمل من الحروف {{ربط بصفحة|243|16|٢٤٣}}{{سج}}
مبادئ استخراج الترجمة والتعمية {{ربط بصفحة|94|16|٩٤}}، {{ربط بصفحة|112|16|١١٢}}{{سج}}
مبلغ ما يتكرر من الحروف {{ربط بصفحة|368|16|٣٦٨}}{{سج}}
المبهم {{ربط بصفحة|78|16|٧٨}}{{سج}}
المبهم الممتنع {{ربط بصفحة|63|16|٦٣}}{{سج}}
المترجم {{ربط بصفحة|56|16|٥٦}}، {{ربط بصفحة|62|16|٦٢}}، {{ربط بصفحة|126|16|١٢٦}}{{سج}}
المتعلق {{ربط بصفحة|63|16|٦٣}}، {{ربط بصفحة|78|16|٧٨}}{{سج}}
المتغير من الحروف {{ربط بصفحة|199|16|١٩٩}}، {{ربط بصفحة|267|16|٢٦٧}}{{سج}}
المتغير والأصلي {{ربط بصفحة|140|16|١٤٠}}{{سج}}
المجرد {{ربط بصفحة|153|16|١٥٣}}، {{ربط بصفحة|154|16|١٥٤}}{{سج}}
المجهول {{ربط بصفحة|76|16|٧٦}}، {{ربط بصفحة|80|16|٨٠}}{{سج}}
محاورات الناس {{ربط بصفحة|313|16|٣١٣}}
{{نهاية أعمدة متعددة}}
{{يمين|٤٢٠}}<noinclude></noinclude>
tq93c5srrs3kdmpzjodizne1l9o3j1s
صفحة:علم التعمية واستخراج المعمى عند العرب الجزء الثاني.pdf/421
104
307188
617432
2026-08-14T11:57:37Z
RASHEEDYE
15342
/* لم تصحح */ أنشأ الصفحة ب'{{أعمدة متعددة}} <br/>فواتح الكتب {{ربط بصفحة|97|16|٩٧}}، {{ربط بصفحة|114|16|١١٤}}{{سج}} الفواصل {{ربط بصفحة|157|16|١٥٧}}{{سج}} فواصل أغفال {{ربط بصفحة|249|16|٢٤٩}} <br /> {{وسط|( ق )}} <br /> قانون الأعداد الكبيرة {{ربط بصفحة|144|16|١٤٤}}{{سج}} القانون الإحصائي لدوران الحروف {{ربط بصفحة|42|16|٤٢}}{{سج}}...'
617432
proofread-page
text/x-wiki
<noinclude><pagequality level="1" user="RASHEEDYE" /></noinclude>{{أعمدة متعددة}}
<br/>فواتح الكتب {{ربط بصفحة|97|16|٩٧}}، {{ربط بصفحة|114|16|١١٤}}{{سج}}
الفواصل {{ربط بصفحة|157|16|١٥٧}}{{سج}}
فواصل أغفال {{ربط بصفحة|249|16|٢٤٩}}
<br />
{{وسط|( ق )}}
<br />
قانون الأعداد الكبيرة {{ربط بصفحة|144|16|١٤٤}}{{سج}}
القانون الإحصائي لدوران الحروف {{ربط بصفحة|42|16|٤٢}}{{سج}}
قانون التباديل {{ربط بصفحة|366|16|٣٦٦}}{{سج}}
القانون الناظم لعدد المزدوجات {{ربط بصفحة|366|16|٣٦٦}}{{سج}}
قانون عدة الثلاثيات {{ربط بصفحة|367|16|٣٦٧}}{{سج}}
قصر النص {{ربط بصفحة|362|16|٣٦٢}}، {{ربط بصفحة|373|16|٣٧٣}}{{سج}}
القلب {{ربط بصفحة|101|16|١٠١}}، {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|117|16|١١٧}}، {{ربط بصفحة|165|16|١٦٥}}، {{ربط بصفحة|189|16|١٨٩}}، {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
القلب البسيط {{ربط بصفحة|162|16|١٦٢}}{{سج}}
القلب البسيط مع الإعاضة المبسطة {{ربط بصفحة|162|16|١٦٢}}{{سج}}
قلب النص مع تفريق الحروف {{ربط بصفحة|43|16|٤٣}}{{سج}}
قلب تواتر الحروف {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
القلب ضمن الكلمات {{ربط بصفحة|43|16|٤٣}}{{سج}}
القلب مع تفريق حروف كل كلمة على سطرين {{ربط بصفحة|43|16|٤٣}}{{سج}}
قلة الكلام مع عدم تكرر الحروف {{ربط بصفحة|388|16|٣٨٨}}{{سج}}
قلة عدد رموز البيت {{ربط بصفحة|375|16|٣٧٥}}{{سج}}
قواعد الاستخراج {{ربط بصفحة|42|16|٤٢}}{{سج}}
قواعد الترجمة العويصة {{ربط بصفحة|42|16|٤٢}}{{سج}}
قوة تردد الحروف {{ربط بصفحة|49|16|٤٩}}
<br />
{{وسط|( ك )}}
<br />
الكتابة الباطنة {{ربط بصفحة|85|16|٨٥}}، {{ربط بصفحة|88|16|٨٨}}، {{ربط بصفحة|89|16|٨٩}}، {{ربط بصفحة|108|16|١٠٨}}{{سج}}
الكثرة {{ربط بصفحة|112|16|١١٢}}{{سج}}
كثرة الحروف وقلتها {{ربط بصفحة|199|16|١٩٩}}، {{ربط بصفحة|267|16|٢٦٧}}{{سج}}
كسر الشفرة {{ربط بصفحة|391|16|٣٩١}}
{{فاصل أعمدة متعددة|خط1=3px solid black}}
<br/>كسور الربع {{ربط بصفحة|70|16|٧٠}}{{سج}}
كسور النصف {{ربط بصفحة|70|16|٧٠}}{{سج}}
كسور النصف والربع {{ربط بصفحة|71|16|٧١}}
<br />
الكلمات المألوفة {{ربط بصفحة|171|16|١٧١}}{{سج}}
الكلمات التي على حرفين {{ربط بصفحة|127|16|١٢٧}}، {{ربط بصفحة|272|16|٢٧٢}}{{سج}}
الكلمات الثنائية {{ربط بصفحة|194|16|١٩٤}}، {{ربط بصفحة|327|16|٣٢٧}}{{سج}}
الكلمات الثنائية حسب تواترها {{ربط بصفحة|104|16|١٠٤}}{{سج}}
الكلمات الثنائية وتواتر ورودها {{ربط بصفحة|94|16|٩٤}}، {{ربط بصفحة|97|16|٩٧}}{{سج}}
الكلمات الخفيفة الوزن {{ربط بصفحة|72|16|٧٢}}{{سج}}
الكلمات الشائعة {{ربط بصفحة|53|16|٥٣}}{{سج}}
الكلمات الطويلة {{ربط بصفحة|100|16|١٠٠}}، {{ربط بصفحة|218|16|٢١٨}}، {{ربط بصفحة|279|16|٢٧٩}}، {{ربط بصفحة|300|16|٣٠٠}}، {{ربط بصفحة|330|16|٣٣٠}}، {{ربط بصفحة|345|16|٣٤٥}}{{سج}}
الكلمات القصيرة {{ربط بصفحة|131|16|١٣١}}{{سج}}
الكلمات المحتملة {{ربط بصفحة|194|16|١٩٤}}{{سج}}
الكلمات المشددة {{ربط بصفحة|338|16|٣٣٨}}{{سج}}
الكلمة المحتملة {{ربط بصفحة|49|16|٤٩}}، {{ربط بصفحة|94|16|٩٤}}، {{ربط بصفحة|97|16|٩٧}}{{سج}}
كلمة خفيفة الوزن (قليلة الحروف) {{ربط بصفحة|49|16|٤٩}}{{سج}}
الكمية {{ربط بصفحة|168|16|١٦٨}}، {{ربط بصفحة|210|16|٢١٠}}، {{ربط بصفحة|234|16|٢٣٤}}، {{ربط بصفحة|235|16|٢٣٥}}، {{ربط بصفحة|237|16|٢٣٧}}، {{ربط بصفحة|228|16|٢٢٨}}{{سج}}
الكيفية {{ربط بصفحة|42|16|٤٢}}، {{ربط بصفحة|168|16|١٦٨}}، {{ربط بصفحة|234|16|٢٣٤}}، {{ربط بصفحة|237|16|٢٣٧}}، {{ربط بصفحة|238|16|٢٣٨}}، {{ربط بصفحة|251|16|٢٥١}}{{سج}}
كيفية استنباط التراجم {{ربط بصفحة|233|16|٢٣٣}}
<br />
{{وسط|( ل )}}
<br />
اللحن {{ربط بصفحة|89|16|٨٩}}، {{ربط بصفحة|104|16|١٠٤}}، {{ربط بصفحة|108|16|١٠٨}}{{سج}}
اللغات البائدة {{ربط بصفحة|391|16|٣٩١}}{{سج}}
اللغات القديمة {{ربط بصفحة|391|16|٣٩١}}{{سج}}
اللغز {{ربط بصفحة|325|16|٣٢٥}}{{سج}}
اللواحق {{ربط بصفحة|154|16|١٥٤}}
{{نهاية أعمدة متعددة}}
{{يسار|٤١٩}}<noinclude></noinclude>
f3hnsdra4ezg9dsp5km4eke1jz0evti