Βικιπαίδεια
pntwiki
https://pnt.wikipedia.org/wiki/%CE%91%CF%81%CF%87%CE%B9%CE%BA%CF%8C%CE%BD_%CF%83%CE%B5%CE%BB%CE%AF%CE%B4%CE%B1
MediaWiki 1.46.0-wmf.7
first-letter
Μέσον
Ειδικόν
Καλάτσεμαν
Χρήστες
Καλάτσεμαν χρήστε
Βικιπαίδεια
Βικιπαίδεια καλάτσεμαν
Αρχείον
Καλάτσεμαν αρχείονος
MediaWiki
MediaWiki talk
Πρότυπον
Καλάτσεμαν πρότυπι
Βοήθειαν
Καλάτσεμαν βοήθειας
Κατηγορίαν
Καλάτσεμαν κατηγορίας
TimedText
TimedText talk
Module
Module talk
Event
Event talk
Αρχικόν σελίδα
0
28
35744
31879
2024-09-27T03:17:38Z
Amire80
164
NOTOC
35744
wikitext
text/x-wiki
__NOTOC__
<div align="center" style="font-size:25pt; line-height:1em;">Η Βικιπαίδεια σα Ποντιακά</div>
<div align="center" style="font-size:15pt; line-height:1em;">τα Ρωμαίικα τη Πόντονος</div>
<div align="center" style="font-size:12pt; line-height:1,3em;">'''''Ανοιχτόν εγκυκλοπαίδεια ντο γράφκεται και τρανείν ας ατείντς πη θέλνε.'''''</div>
<!-- ------------ -->
{| cellpadding="0" cellspacing="0"
| valign="top" width="48%" style="background:#f5fffa; border: 1px solid #cef2e0" |
{| cellspacing="10" style="background:transparent; font-family: Verdana, Arial, Helvetica, sans-serif;"
|-----------------------------------------
| style="text-align:center; padding:4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc;background-color:#cef2e0" | <span style="float: left; margin:0px; ">[[Image:Comedyicon.svg|25px|]]</span> ΚΑΛΩΣ ΕΡΘΕΤΕΝ...
|-----------------------------------------
| style="text-align:left" | ...σην [[Βικιπαίδεια|Βικιπαίδειαν]]. '''Μαθέστεν''' πολλά για τ'ατέν δεβάζοντας τα [[Βικιπαίδεια:Πολλά ερωτήσεις|πολλά ερωτήσεις]] και την [[Βικιπαίδεια/Βοήθεια|βοήθειαν]].
Ο αριθμόν ασά σελίδας τη ποντιακής τη Βικιπαίδειας ατώρα εν '''[[Ειδικόν:Statistics|{{NUMBEROFARTICLES}}]]'''. Βοηθέστεν για να εφτάτεν ατέναν κι άλλο τρανέσαν. Γράψτεν τα νουνίζματα και τ' ιδέας'εσούν σην [[Βικιπαίδεια:Αγορά|αγοράν]] και δεβάστεν [[Βικιπαίδεια:Ντο 'κ εν η Βικιπαίδεια|ντο κ' εν η Βικιπαίδεια]].
|-----------------------------------------
| style="text-align:center; padding:0px; padding-top: 4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc; background:#cef2e0" | <span style="float: left; margin:0px; ">[[Image:Open bible 01 01.svg|25px|]]</span> ΔΕΒΑΣΤΕΝ ΚΑΙ ΜΑΘΕΣΤΕΝ
|-----------------------------------------
| {{arthron}}
|-----------------------------------------
| style="text-align:center; padding:0px; padding-top: 4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc; background:#cef2e0" | <span style="float: left; margin:0px; ">[[Image:Feather writing.png|25px|]]</span> ΧΑΠΕΡΑΙ
|-----------------------------------------
| {{Πρότυπον:Χαπέραι}}
|-----------------------------------------
|}
| valign="top" width="48%|
{| cellspacing="10" style="background:#f5faff; border: 1px solid #cedff2"
|-----------------------------------------
| style="text-align:center; padding:4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc;background-color:#cedff2" |ΠΡΟΣΚΑΛΕΣΜΑΝ ΓΙΑ ΤΟ ΕΡΓΟΝ ΑΤΟ
|-----------------------------------------
| style="text-align:left" | Βοηθέστεν την Βικιπαίδειαν. Βάλτεν και σεις ατά ντο εξέρετεν, αέτς για να τρανείν η εγκυκλοπαίδεια.
*Εάν ευρήκετεν γραφόμενα ντο κ' είναι σωστά κι αν έςχετε σον νούν'εσουν τα σωστά, ποίστεν ατό κι άλλο καλλίον.
*Εάν εγνωρίζετε καλά καινούραι πράματα, αρχίστεν άλλο γράψιμον.
*Η αντιγραφή ασ' άλλα γλώσσας ίνεται.
|-----------------------------------------
| style="text-align:center; padding:4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc;background-color:#cedff2" |<span style="float: left;">[[Image:P literature.svg|25px|]]</span>ΕΓΚΥΚΛΟΠΑΙΔΕΙΑ
|-----------------------------------------
| style="text-align:center;font-weight: bold; font-size: 13px;background-color:#cedff2" | Ο Κατάλογον με τα θέματα
|-----------------------------------------
|
{| style="font-size: 12px; background:#f5faff" cellspacing="0" cellpadding="3"
| width="50%" |
[[Image:P parthenon.svg|40px|left]] <big>[[:Category:Πολιτισμόν|Πολιτισμός]]</big><br>
[[:Category:Αρχιτεκτονικήν|Αρχιτεκτονική]] · [[:Category:Ζωγραφικήν|Ζωγραφική]] · [[:Category:Γλυπτικήν|Γλυπτική]] · [[:Category:Θέατρον|Θέατρον]] · [[:Category:Λογοτεχνίαν|Λογοτεχνία]] · [[:Category:Ποιητικήν|Ποίηση]] · [[:Category:Μουσική|Μουσική]] · [[:Category:Χορός|Χορόν]] · [[:Category:Κινηματογράφον|Κινηματόγραφον]] · [[:Category:Φωτογραφίαν|Φωτογραφία]] · [[:Category:Κόμιξ|Κόμιξ]] · [[:Category:Αθλητισμός|Αθλητισμός]] ·
[[:Category:Μυθολογίαν|Μυθολογία]] · [[:Category:Θρησκείαν|Θρησκεία]]
[[Image:P countries.png|40px|left]] <big>[[:Category:Γεωγραφίαν|Γεωγραφία]]</big><br/>
[[Ασίαν|Ασία]] · [[Αφρικήν|Αφρική]] · [[Ευρώπην|Ευρώπη]] · [[Αμερικήν|Αμερική]] · [[Ωκεανίαν|Ωκεανία]] · [[Ανταρκτικήν|Ανταρκτική]] · [[Αρκτικήν|Αρκτική]] · [[:Category:Πολιτείας|Πολιτείας]] · [[:Category:Κράτη|Κράτη]] · [[:Category:Θάλασσας|Θάλασσας]] · [[:Category:Ποτάμαι|Ποτάμαι]] · [[:Category:Νησία|Νησία]] · [[:Category:Ραχία|Ραςχία]]
[[Image:P history.png|40px|left]] <big>[[:Category:Ιστορίαν|Ιστορία]]</big><br/>
[[:Category:Παλαιόν Ιστορίαν|Παλαιόν Ιστορία]] · [[:Category:Ρωμανίαν|Ρωμανία/Βυζάντιον]] · [[:Category:Ευρωπαϊκόν Ιστορίαν|Ευρωπαϊκόν Ιστορία]] · [[:Category:Πολέμ|Πολέμ]] · [[:Category:Ρωμαϊκόν Αυτοκρατορίαν|Ρωμαϊκόν Αυτοκρατορία]] · [[:Category:Καινούρ' Ιστορίαν|Καινούρ' Ιστορία]]
[[Image:P physics.png|40px|left]] <big>[[:Category:Επιστήμην|Επιστήμη]]</big><br/>
[[:Category:Μαθηματικά|Μαθηματικά]] · [[:Category:Φυσικήν|Φυσική]] · [[:Category:Χημείαν|Χημεία]] · [[:Category:Βιολογίαν|Βιολογία]]
[[Image:P writing.svg|40px|left]] <big>[[Γραμματικήν|Γραμματική]]</big><br/>[[Ουσιαστικόν|Ουσιαστικόν]] · [[Επίθετον|Επίθετον]] · [[Ρήμαν|Ρήμα]] · [[Επίρρημαν|Επίρρημα]] · [[Σύνδεσμον|Σύνδεσμος]] · [[Πρόθεσην|Πρόθεση]] · [[Αντωνυμίαν|Αντωνυμία]] · [[Άρθρον|Άρθρον]] · [[Αριθμητικόν|Αριθμητικόν]] · [[Επιφώνημαν|Επιφώνημαν]] · [[Λεχτικόν]]
[[Image:P wiki letter w.svg|40px|left]] <big>[[Βικιπαίδεια|Βικιπαίδεια]]</big><br/>
[[Βικιπαίδεια:Αγορά|Αγορά]] ·
[irc://irc.freenode.net/wikipedia-pnt Παρακάθ σο IRC] · [[Βικιπαίδεια:Βοήθεια|'''Βοήθεια''']] ·
[[Βικιπαίδεια:Αργαστέρ|'''Εργαστήριον''']] · <br />[[Βικιπαίδεια:Ντο εν η Βικιπαίδεια|Ντο εν η Βικιπαίδεια]] · [[Βικιπαίδεια:Ντο 'κ εν η Βικιπαίδεια|Ντο κ' εν η Βικιπαίδεια]] · [[Βικιπαίδεια:Δικαιώματα πνευματί|Aχουλί δικαιώματα]] · [[Βικιπαίδεια:Ποντιακόν γράψιμον|Ποντιακόν γράψιμον]] · [[Βικιπαίδεια:Λεχτικόν]] · [[Βικιπαίδεια:Νέον λεχτικόν|Νέον λεχτικόν]] · [[Βικιπαίδεια:Γραμματικήν|Γραμματική]]
|}
<!-- <div style="float: right;"><small>[{{SERVER}}{{localurl:Πρότυπο:Θεματικός κατάλογος|action=edit}} Επεξεργασία]</small></div>-->
|------------------------------------
|}
|}
{{:Άλλα έργα}}
[[als:]]
[[id:]]
[[bg:]]
[[bs:]]
[[ca:]]
[[cs:]]
[[da:]]
[[de:]]
[[el:]]
[[en:]]
[[es:]]
[[et:]]
[[eo:]]
[[fr:]]
[[fy:]]
[[gl:]]
[[he:]]
[[hr:]]
[[it:]]
[[ja:]]
[[ko:]]
[[ku:]]
[[la:]]
[[lb:]]
[[li:]]
[[hu:]]
[[nl:]]
[[no:]]
[[nn:]]
[[nds:]]
[[pl:]]
[[pt:]]
[[ro:]]
[[ru:]]
[[sk:]]
[[sl:]]
[[sr:]]
[[sh:]]
[[fi:]]
[[sv:]]
[[tr:]]
[[uk:]]
[[zh:]]
[[zh-classical:]]
m4qdlqff9g7uvhhzt4jhblqbhp1n33r
10 Σταυρί
0
30
37224
37156
2025-12-16T18:50:16Z
Εὐθυμένης
2777
37224
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[9 Σταυρί]] | [[10 Σταυρί]] | [[11 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''10 Σταυρί''' εν 253ον [[ημέρα]] τη [[χρονία|χρονίας]], ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 254ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 112 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[10 Αλωναρί]] - [[10 Τρυγομηνά]]
{{Μήνας}}
<!--Categories-->
[[Κατηγορίαν:Ημέρας τη χρονίας|0910]]
hvtep6x0xau72u67o1bzgmvtkyzek9o
11 Σταυρί
0
96
37225
37161
2025-12-16T18:50:30Z
Εὐθυμένης
2777
37225
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[10 Σταυρί]] | [[11 Σταυρί]] | [[12 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''11 Σταυρί''' εν 254ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 255ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 111 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[11 Αλωναρί]] - [[11 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0911]]
k79jwbia0xug09e33gnsqztgn8e8522
12 Σταυρί
0
97
37226
37155
2025-12-16T18:50:50Z
Εὐθυμένης
2777
37226
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[11 Σταυρί]] | [[12 Σταυρί]] | [[13 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''12 Σταυρί''' εν 255ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 256ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 110 ημέρας για να τελούτεν η χρονία.
[[1225]]: Πόντιον εξαφανίζετ
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[12 Αλωναρί]] - [[12 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0912]]
8qrq9zdcom8q376sn7aemqzum8hp7n8
13 Σταυρί
0
98
37227
37157
2025-12-16T18:51:05Z
Εὐθυμένης
2777
37227
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[12 Σταυρί]] | [[13 Σταυρί]] | [[14 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''13 Σταυρί''' εν 256ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 257ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 109 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[13 Αλωναρί]] - [[13 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0913]]
hj6cxkuo0w55y47roudrobggcwqibb3
14 Σταυρί
0
99
37228
37168
2025-12-16T18:51:19Z
Εὐθυμένης
2777
37228
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[13 Σταυρί]] | [[14 Σταυρί]] | [[15 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''14 Σταυρί''' εν 257ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 258ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 108 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
* 2000 - Ο [[Γεώργιος Καρατζαφέρης|Γιωρίκας ο Καρατζαφέρτς]] εποίκε το κόμμα τη [[ΛΑΟΣ|ΛΑΟΝΟΣ]].
== Εγεννέθαν ==
* 1956 - [[Κωνσταντίνος Καραμανλής]], ασα 2004 τη χρονίαν εν ο [[Πρωθυπουργόν]] τ' [[Ελλάδα|Ελλάδας]].
* 1969 - [[Κώστας Κουκοδήμος]], βουλευτής (ΝΔ) σην Πιερίαν τη [[Μακεδονία|Μακεδονίας]] και παλεός αγωνιστέας σο λάνγκεμα τη αγώνων τη σταδί.
== Αποθάναν ==
* 2001 - [[Στέλιος Καζαντζίδης]], Έλλενας τραγουδοποιός.
== Έξεργος ==
[[Εικόναν:Sazonov. Elena and Konstantin.jpg|thumb|«Κωνσταντίνος κι Ελένε», {{polytonic|Ὕψωσις τοῦ Τιμίου Σταυροῦ}}. Εζωγράφσεν ατό ο Wassily Sazonov σα 1870.]]
* [[Ορθόδοξον Εγκλεσία|Ορθόδοξον]] και Ρωμαιοκαθολικόν Εγκλεσίαν: {{polytonic|Ὕψωσις τοῦ Τιμίου Σταυροῦ}} (σα 326 τη χρονίαν).
* Σ' [[Αρχαίον Ελλάδαν|αρχαίον]] [[Ελλάδα|Ελλάδαν]]: Ερχίνεναν τα {{polytonic|Ἐλευσίνια Μυστήρια}}.
'''Τερέστεν πα:'''
* [[14 Αλωναρί]] - [[14 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0914]]
92pv36lmjaekfe9pgzs6s48zlff39wr
15 Σταυρί
0
100
37229
37159
2025-12-16T18:51:33Z
Εὐθυμένης
2777
37229
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[14 Σταυρί]] | [[15 Σταυρί]] | [[16 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''15 Σταυρί''' εν 258ον ημέρα τη χρονίας, άμον ντο λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 259ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 107 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[15 Αλωναρί]] - [[15 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0915]]
7menbzungxo25a2mxubwav5djsx306e
1 Σταυρί
0
101
37160
37150
2025-12-16T18:47:44Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37160
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[31 Αλωναρί]] | [[1 Σταυρί]] | [[2 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''1 Σταυρί''' εν 244ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 245ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 121 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[1 Αλωναρί]] - [[1 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0901]]
nfa5ncsxjf9t8nbi3vfsoglv4b984af
23 Σταυρί
0
102
37237
37162
2025-12-16T18:59:28Z
Εὐθυμένης
2777
37237
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[22 Σταυρί]] | [[23 Σταυρί]] | [[24 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''23 Σταυρί''' εν 266ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 267ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 99 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
* 2007 - Εχπάστεν και έντονεν το τέστ τη [[Ποντιακά Βικιπαίδεια|Ποντιακού Βικιπαίδειας]].
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[23 Αλωναρί]] - [[23 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0923]]
5c085g4p3fj6jnnab0wblezhxrmu5xe
2 Σταυρί
0
103
37165
37151
2025-12-16T18:47:44Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37165
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[1 Σταυρί]] | [[2 Σταυρί]] | [[3 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''2 Σταυρί''' εν 245ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 246ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 120 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[2 Αλωναρί]] - [[2 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0902]]
hpvabu20uxvvufdsx8ilsoaij14nxyg
3 Σταυρί
0
104
37158
37152
2025-12-16T18:47:44Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37158
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[2 Σταυρί]] | [[3 Σταυρί]] | [[4 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''3 Σταυρί''' εν 246ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 247ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 119 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[3 Αλωναρί]] - [[3 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0903]]
lkc5eyqu71xj6auu2ezw8g7u8kmkrwj
4 Σταυρί
0
105
37154
37153
2025-12-16T18:44:27Z
Εὐθυμένης
2777
37154
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[3 Σταυρί]] | [[4 Σταυρί]] | [[5 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''4 Σταυρί''' εν 247ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 248ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 118 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[4 Αλωναρί]] - [[4 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0904]]
qimbs2xq4dnh34zi3c74mf8bt57hg65
5 Σταυρί
0
106
37219
37163
2025-12-16T18:49:02Z
Εὐθυμένης
2777
37219
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[4 Σταυρί]] | [[5 Σταυρί]] | [[6 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''5 Σταυρί''' εν 248ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 249ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 117 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[5 Αλωναρί]] - [[5 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0905]]
7nqs8qizgp7rith1slvtnucxzwec94e
6 Σταυρί
0
107
37220
37164
2025-12-16T18:49:16Z
Εὐθυμένης
2777
37220
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[5 Σταυρί]] | [[6 Σταυρί]] | [[7 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''6 Σταυρί''' εν 249ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 250ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 116 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[6 Αλωναρί]] - [[6 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0906]]
k7v9lqtoi7x94qccmdnyoksj9cyvq6c
7 Καλανταρί
0
108
37291
37033
2025-12-16T19:19:18Z
Εὐθυμένης
2777
37291
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[6 Καλανταρί]] | [[7 Καλανταρί]] | [[8 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''7 τη Καλανταρί''' εν 7ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 358 ημέρας για να τελούτεν η χρονία (359 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
* [[2009]] - Σο [[meta:Main_Page|Meta-Wiki]] εδέκανε την [[meta:Requests for new languages/Wikipedia Pontic|έγκρισην]] για να ίνετεν το ποντιακόν η [[Βικιπαίδεια]].
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[7 Χριστουγενναρί]] - [[7 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0107]]
7bs7x7subnxhbds44j7z5l4rwj9drdi
7 Μαρτί
0
109
37318
37028
2025-12-16T19:27:51Z
Εὐθυμένης
2777
37318
wikitext
text/x-wiki
<div class="center">[[Καλαντάρτς]] | [[Κούντουρος]] | '''[[Μαρτς]]''' | [[Απρίλτς]] | [[Καλομηνάς]]</div>
<div class="center">[[6 Μαρτί]] | [[7 Μαρτί]] | [[8 Μαρτί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|3}}
'''7 Σταυρί''' εν 66ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 67ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 299 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
* 2008 - Ση Ποντιακή Βικιπαίδεια εχτέθεν καινούρεον [[Βικιπαίδεια:Αγορά|αγοράν]].
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[7 Κούντουρονος]] - [[7 Απρίλ]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0307]]
hm2bou3jr8hbe361laa2mmtd74c8ra7
7 Σταυρί
0
110
37221
37189
2025-12-16T18:49:33Z
Εὐθυμένης
2777
37221
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[6 Σταυρί]] | [[7 Σταυρί]] | [[8 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''7 Σταυρί''' εν 250ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 251ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 115 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[7 Αλωναρί]] - [[7 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0907]]
sfllaqmfyhkbwjd5s88fjoc09wd5aet
8 Σταυρί
0
111
37222
37178
2025-12-16T18:49:47Z
Εὐθυμένης
2777
37222
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[7 Σταυρί]] | [[8 Σταυρί]] | [[9 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''8 Σταυρί''' εν 251ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 252ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 114 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[8 Αλωναρί]] - [[8 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0908]]
fqw4zjkxoj7j0qicjqynj2au2wf07r7
9 Σταυρί
0
112
37223
37182
2025-12-16T18:50:01Z
Εὐθυμένης
2777
37223
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[8 Σταυρί]] | [[9 Σταυρί]] | [[10 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''9 Σταυρί''' εν 252ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 253ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 113 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[9 Αλωναρί]] - [[9 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0909]]
tldr0qji46kbybfpxpn8hh69dqovy9s
Πρότυπον:Arhikon selida
10
113
33570
33258
2018-01-26T14:27:59Z
Hugo.arg
153
Ο Hugo.arg μετακίνησε τη σελίδα [[Arhikon selida]] στην [[Πρότυπον:Arhikon selida]]
33570
wikitext
text/x-wiki
<center><big>'''Ελλενικά''': Τερέστε αδακά ντο χτίετεν : [[Αρχείον:Wikipedia-logo-pnt.png|25px]] '''[[Αρχικόν σελίδα|<big>Η Βικιπαίδεια σα Ποντιακά</big>, «τα Ρωμαίικα τη Πόντονος»]]'''</big></center>
<center><big>'''Latinika''': Tereste adaka nto htieten : [[Αρχείον:Wikipedia-logo-pnt.png|25px]] '''[[Ke me latinikus haraktires|<big>İ Vikipedia sa Pontiaka</big>, «ta Romeika ti Pontonos»]]'''</big></center>
[[Κατηγορίαν:Wp/pnt|Arxikon selida]]
5t9t6inaa25i5b89bloakg34ldcqpjh
Arxikon selida
0
114
33572
883
2018-01-28T01:17:46Z
Xqbot
449
Ρομπότ: Διόρθωση διπλής ανακατεύθυνσης σε [[Πρότυπον:Arhikon selida]]
33572
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Arhikon selida]]
deyv5xg7tp2g3yukdtaqzat7f0njlc3
BMW Isetta
0
115
35444
34324
2023-07-17T00:01:30Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
35444
wikitext
text/x-wiki
[[Αρχείον:Isetta dwergauto.gif|thumb|BMW Isetta]]
Το '''BMW Isetta''' έτον πολλά μικρόν [[αραπάν]] ντ' εποίκενατο η φίρμα [[BMW]].
== Ιστορία ==
Όντες ο δεύτερον ο τρανόν ο πόλεμος ετελέθεν η φίρμα είχεν τρανά προβλήματα με τα παράδας. Οι φάμπρικεσατς εχάθαν σον πόλεμον κι ότ' επέμνεν, επαίρανατο οι νικητές. Ατότες ένας τρανός τη BMW είδεν την Isetta σο ''Σαλόνι Αραπαδίων τη Τορίν''' (''Salone dell'automobile di Torino'') κι επαίρεν τα δικαιώματα για την κατασκευήνατς στην [[Γερμανία|Γερμανίαν]]. Σα 1955 και σα 1962 τα χρονίας απές, η BMW εποίκεν 161.728 ''Motocoupé'', άμον ντ' έλεγαν την Isetta.
== Τεχνολογία ==
Σην αρχήν εποίκανατο με 12 PS (250 cm³) κι επεκεί και με 13 PS (300 cm³).
== Συνδέζμαι ==
* [[Αρχείον:Commons-logo.svg|13px]] '''[[:el:commons:BMW Isetta|Η BMW Isetta σα Commons]]'''
* http://www.isetta.de
* [https://web.archive.org/web/20080412010642/http://www.kress.de/cont/spot.php?spot=119 Ιστορικόν ρεκλάμα για την Ιζέτα]
[[Κατηγορίαν:Αραπάδας|BMW Isetta]]
jclonyydg2xke1dao4wfx1odgwnqaev
MOS Technology 6502
0
116
31458
30933
2013-03-11T10:25:15Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q255528]] [[M:User:Addbot/WDS|(translate me)]]
31458
wikitext
text/x-wiki
[[Εικόναν:MOS 6502AD 4585 top.jpg|thumb|Προσέσορας MOS 6502]]
Ο '''MOS Technology 6502''' εν μικροπροσέσορας τη 8 bit τη [[MOS Technology|MOS Technology, Inc.]], ντ’ εξέβεν σην αγοράν σα 1975 τη χρονίαν και είχεν τρανόν επιτυχίαν. Αιτίαν για την επιτυχίαν ατ’ έτον η απλότηταν ατ’ με το καλόν τη δουλείαν ντ’ εποίνε και το χαμελόν την τιμήν ατ’ εντάμαν. Εκείνα τα χρόναι έτον ασ’ ουλτς φθηνόν προσέσορας, κι άλλο φθηνόν δηλαδή ασα τρανά τα προσεσόρεα τη [[Intel]] και τη [[Motorola]]. Τον 6502 εδούλεψανατον σε πολλα τ’ οσπιτί κομπιούτερ (home computer, λ.χ. τοι Commodore [[VIC-20]], [[PET 2001]], [[Atari 800 XL]], [[Apple II]] και [[BBC Micro]]).
== Γενικά ==
Τον 6502 εποίκανατον σο σχέδιον τη [[Motorola 6800]] απάν. Σα ''instruction set'' ατούν τα δυο τα προσεσόρεα μοιάζνε τ’έναν με τ’άλλο, άμα για 16-bit ''register'' ο 6502 εχ δυο τη 8 bit. Για τατό τα προγράμματα τη 6502 έχνε διαφορετικόν στιλ: για τα arrays ασα 256 bytes κι απάν θα πρέπ να ίνουνταν κι άλλο προγραμματισμός. Ας σ’ αλλ’ την μερέαν πα, τα προσεσόρεα τη 8 bit δουλεύνε τ’ αξίας τη 8 bit κι άλλο αληγορτά.
Οσήμερον (2008) ο 6502 ακόμαν υπάρχει. Λ.χ. εν κομμάτ’ τ’ αριθμομηχανής τη HP-35s.
== Τεχνικά στοιχεία ==
* τεχνολογίαν: NMOS, HMOS, CMOS
* αριθμός τρανζίστορ: σα 5000
* clock signal: 20 kHz ους 4 MHz. Μορφή CMOS: 0 ους 14 MHz
* clock cyclus ανά εντολή: 2 με 7
* address space: 64 [[Byte|KiByte]], δίχως ξεχωριστό χώρο διευθύνσεων I/O (αμόν το [[Intel 8080]]). Τα I/O ίντανε μέσω [[Memory Mapped I/O]].
* address bus: 16 bit
* data bus: 8 bit
* interrupts: ένα NMI, ένα IRQ, και software-interrupt μέσω εντολής BRK
* εντολάς: 56, μορφή CMOS: 70
* τρόποι διευθυνσιοδότησης: 13, μορφή CMOS: 16
* endianness: little endian
* registers:
** accumulator, 8 bit
** 2 index-register (X και Y), 8 bit.
** stack pointer, 16 bit.
** prozessorstate-register, 7 bit (''flags'': Carry, Zero, Decimal, Interrupt Disable, Break*, Overflow, Negative)
** instruction pointer, 16 bit
== Βιβλιογραφίαν ==
* Bagnall, Brian: ''On The Edge: The Spectacular Rise and Fall of Commodore'', ISBN 0973864907
* Rodnay Zaks: ''Programming the 6502'', ISBN 0895880288
* Lance A. Leventhal: ''6502 Assembly Language Programming'', ISBN 007881216X
* Ekkehard Flögel: ''Programmieren in Maschinensprache mit dem 6502'', ISBN 3921682614
== Συνδέσμ ==
*[http://www.6502.org/ 6502.org - the 6502 microprocessor resource] (αγγλικά)
[[Κατηγορίαν:Τεχνολογίαν|MOS Technology 6502]]
g6d7lpcdk2ve99r2fjy6hz5gjihxuu4
PontosWorld.com
0
117
34838
6566
2021-08-10T19:04:30Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.8
34838
wikitext
text/x-wiki
Το '''PontosWorld.com''' εν τ' όνεμαν [[διαδίκτυον|διαδικτυακού]] σελίδας ντο έχ' θέμαν το [[Πόντος|ποντιακόν]] τη κουλτούραν.
== Ντο εν το PontosWorld ==
Αβούτο η σελίδαν εγράφτεν και γράφκεται για τ' ανθρώπς ντ' εξέβαν ασόν Πόντον, άμα και γι' ατείντς π' ακόμε γιασαέβν' εκαικά. Απές σην σελίδαν ευρίσκουνταν πολλά στοιχεία για τον Πόντον και την ιστορίαν ατ', άμα και για τ' οσημερνόν το [[Μαύρον Θάλασσα|Μαύρον τη θάλασσαν]]. Έχ' και φορούμι για να συντισέν'νε οι χρήστες. Ο καθαείς επορεί ν' εφτάει λογαρίαν και να κουλανεύ' ατό. Εςς και λεξικόν ποντιακόν.
Οι χρήστες τη σελίδας γράφνε ασόν κόσμον όλον, π.χ. [[Αυστραλία|Αυστραλία]], [[Ελλάδα|Ελλάδα]], [[Τουρκία|Τουρκία]], [[Γερμανία|Γερμανία]], [[ΗΠΑ|ΗΠΑ]], κλπ.
== Συνδέζμε ==
*[http://www.pontosworld.com/ pontosworld.com] - Αρχικόν σελίδα
*[https://web.archive.org/web/20080820015827/http://pontosforum.4.forumer.com/ pontosforum] - Φορούμι τη pontosworld.com
*[http://pontosworld.com/index.php?option=com_content&task=category§ionid=5&id=20&Itemid=72 dictionary] - Λεξικόν τη pontosworld.com
[[Κατηγορίαν:Ελλενικόν ιστορίαν|PontosWorld.com]]
[[Κατηγορίαν:Πόντος|PontosWorld.com]]
1p0thvmclc2smjc0mvpsbxdkm809cpt
Rage Against the Machine
0
118
35533
30934
2024-01-23T17:42:16Z
Διογένες
10538
μικρογραφία
35533
wikitext
text/x-wiki
[[Εικόναν:Zach de la Rocha at 2007 Coachella Valley Music and Arts Festival.jpg|μικρογραφία|right|Ασό 2007 τη χρονίαν: ο τραγωδένος [[Zack de la Rocha]] με τοι Rage Against the Machine ση Coachella.]]
'''Rage Against The Machine''' (λέγν' ατείντς και '''RATM''' ή '''Rage''') εν τ’ όνεμα [[Μουσική|μουσικού]] μπάντας ασα Ενωμένα τα Πολιτείας τη [[Αμερικήν|Αμερικής]] ντο εχ’ τρανά επιτυχίας. Σα τραγωδίασατουν εφτάγνε κριτικήν σα καπιταλιστικά στοιχεία τη κοινωνίας και τα αιτίας ντο γεννούν τα ταξικάς διαφοράς, την εκμετάλλευσην και τοι [[πολέμ]]. Η μουσικήνατουν εν συγκόλληση ασα μουσικά τα είδη rock, funk και rap. Τ’ ονέματα τη μουσικίων είναι Zack de la Rocha (τραγωδένος), Tom Morello (κιθαρτζής), Tim Commerford (μπάσο), Brad Wilk (νταουλτζής).
== Δισκογραφίαν ==
=== Albums ===
* Rage Against the Machine (1992)
* Evil Empire (1996)
* The Battle of Los Angeles (1999)
* Renegades (2000)
=== Live Albums ===
* Live & Rare (1998)
* Live at the Grand Olympic Auditorium (2003)
=== Singles ===
* "Killing in the Name", 1993
* "Bullet in the Head", 1993
* "Bombtrack", 1993
* "Know Your Enemy", 1993
* "Freedom", 1994
* "Bulls on Parade", 1996
* "People of the Sun", 1996
* "Down Rodeo", 1996
* "Vietnow", 1997 ft. Chuck D
* "No Shelter", 1998
* "Guerrilla Radio", 1999
* "Sleep Now in the Fire", 2000
* "Testify", 2000
* "Calm Like A Bomb", 2000
* "The Ghost of Tom Joad", 2001
* "Renegades of Funk", 2002
* "How I Could Just Kill a Man", 2002
=== Videos ===
* "Killing in the Name"
* "Bombtrack"
* "Bullet in the Head"
* "Freedom"
* "Bulls on Parade"
* "People of the Sun"
* "No Shelter"
* "Guerrilla Radio"
* "Sleep Now in the Fire", 2000
* "Testify", 2000
* "Renegades of Funk"
* "The Ghost of Tom Joad"
* "How I Could Just Kill a Man"
* "Calm Like A Bomb"
[[Κατηγορίαν:Μουσική|Rage Against the Machine]]
rgwskgtpg2ctfxpxwa5cc42gfub12hw
Tonya
0
119
910
909
2009-03-06T14:58:43Z
MF-Warburg
53
1 revision: import from incubator
910
wikitext
text/x-wiki
#REDIRECT [[Τόνυα]]
675smyax5p5zpworrogl96bpg3nd5hd
Βικι
0
120
35695
35674
2024-05-25T23:53:02Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
35695
wikitext
text/x-wiki
[[Εικόναν:HNL Wiki Wiki Bus.jpg|thumb|Wiki Wiki (δηλ. αληγορτόν) πούλμαν ση Χονολούλου]]
'''Wiki''' (ή '''βικι''') λέγομε την κατηγορίαν τ' [[Ουσιαστικόν/ιστότοπος|ιστοτόπ']], όπου ούλ' ανθρώπ (οι χρήστες) εμπορούν να εφτάνε και ν' αλλάζνε τα σελίδας αθέ. Αβούτο τ' όνομαν εν συντόμευσην τη λέξης ''WikiWikiWeb''. ''Wikiwiki'' ένι [[Ουσιαστικόν/Χαβάη|χαβαϊκόν]] λέξη το σημαίνει «αλήγορον».
Σα ''wiki'' πολλοί χρήστες εμπορούν να γράφουν εντάμαν. Άμον ντ' εφτάει ο ένας άρθρον το 'κ είναι σωστόν, ο άλλος εμπορεί ν' αλλάζατο αέτς για να ίνεται καλλίον. Εξόν τα αλλαγάς, ίνεται και το πρόσθεμαν καινούρεων γνωσίων σο άρθρον κι αέτς το wiki θα τρανείν. Επίσης ίνεται και γουνούσεμαν. Σ' ορισμένα ''βικι'' (αμόν τη [[Βικιπαίδεια]], τ' ασ' ούλτς διάσημον wiki) έχ' τα σελίδας καλατσεματί, σ' αλλά οι χρήστες πα γονουσεύνε σ' ούλτς τα σελίδας.
Ο σκοπόν και τα νομς που κανονίζνε την λειτουργείαν ατούν 'κ είναι πάντα ίδιοι. Σκοπόν τη Βικιπαίδειας λ.χ. εν το γράψιμον αρθρίων αέτς για να χτίζεται [[Ουσιαστικόν/εγκυκλοπαίδεια|εγκυκλοπαίδειαν]].
Το πρώτο ''wiki'' εχπάστεν σα 25 τη Μαρτ 1995 ασον Ward Cunningham και είχε πολλούς χρήστες. Επεκεί αβούτοι εποίκαν τα ''βικι'' ατούν.
== Τρανά wiki ==
* [http://www.wikipedia.org/ Βικιπαίδεια]
* [https://web.archive.org/web/20190206132156/https://www.wikinsider.org/ Wikinsider]
* [http://www.wikiznanie.ru/ WikiZnanie]
* [https://web.archive.org/web/20170722042417/http://www.world66.com/ World66] Travel Wiki
* [https://web.archive.org/web/20060104053439/http://susning.nu/ Susning.nu]
* [https://web.archive.org/web/20060712102757/http://twiki.org/ TWikiWeb]
* [http://www.wikinfo.org/ Wikinfo]
* [http://c2.com/cgi/wikiPages WikiWikiWeb] Κατάλογος με τ’ ασ’ ουλτ’ς τρανά wiki με στατιστικάς
[[Κατηγορίαν:Βικιπαίδεια|Βικι]]
j37t06stloz9dtleaci3h3djegni01n
Άι Μαρίνος
0
122
32106
30936
2014-11-21T14:41:38Z
CommonsDelinker
121
The file [[:Image:Wiktionary-logo-el.png]] has been replaced by [[:Image:Greek_wiktionary_logo.png]] by administrator [[:commons:User:Billinghurst]]: ''exact or scaled-down duplicate''. ''[[m:User:CommonsDelinker|Translate me!]]''
32106
wikitext
text/x-wiki
{{Πληροφορίας χώρας|
|εθνικόν_όνεμαν= <big>Serenissima Repubblica di San Marino</big>
|εθνικόν όνεμαν σα ποντιακά = Γαληνότατον Δημοκρατίαν τη Άι Μαρίνου
|κοινόν_όνεμαν= Άι Μαρίνον
|σημαία = Flag of San Marino.svg
|άρθρον σημαίας = Σημαία τ΄ Άι Μαρίνου
|σύμβολον = Coat of arms of San Marino.svg
|άρθρον συμβολατί = Σύμβολον τ΄ Άι Μαρίνου
|χάρτες= Europe location SMO.png
|εθνικόν_σύνθημαν= Libertas (ελευθερίαν)
|εθνικόν_ύμνος= [[Εθνικόν Ύμνον τη Δημοκρατίας|{{polytonic|Εθνικόν Ύμνον τη Δημοκρατίας <br />(Inno Nazionale della Repubblica)}}]]
|επίσημα_γλώσσας= [[Ιταλικόν γλώσσα|Ιταλικόν]]
|πρωτεύουσα και ασ' όλον τρανόν πολιτεία = [[Άι Μαρίνος]]
|συντεταγμένας_πρωτεύουσας=
|πολίτευμαν= [[Κοινοβουλευτικόν Δημοκρατία]]
|τίτλοι_τ' ηγετίων = [[Τρανός Κουμαντάρτς|Τρανοί Κουμανταρέοι]] |
|ονόματα_τ' ηγετίων = [[Ερνέστο Μπενετίνι|Ερνέστο Μπενεντετίνι]] κι [[Ασούντα Μελόνι]]<br />
|θέση_έκτασης= 223
|έκταση= 60,57
|ποσοστόν_νερού= 0,01 %
|εκτίμηση_πληθυσμού= 31.006
|χρονία_εκτίμησης_πληθυσμού= 2008
|πληθυσμός= 28.561
|θέση_πληθυσμού= 212
|χρονία_απογραφής_πληθυσμού= 2005
|πυκνότητα_πληθυσμού= 481
|θέση_πυκνότητας_πληθυσμού= 20
|τύπος_κυριαρχίας= [[Ανεξαρτησία]]
|γεγονός_κυριαρχίας= [[3 Σταυρί|3 τη Σταυρίτε]], [[301]]<br /> |
|παράδας = [[Ευρώ]]
|κωδικός_παράδων = € EUR
|ώρα_ζώνες=
|διαφορά_UTC= +1
|θερινόν_UTC=
|θερινόν_διαφορά_UTC= +2
|top_level_domain= .sm
|κωδικός_τηλεφωνατί= 378
|σημειώσεις=
}}
Ο '''Άι Μαρίνος''' (''λένατον πα κι'' Άι Μαρίνον, σα ιταλικά: ''Serenissima Repubblica di San Marino'') εν τζιπ μικρόν [[κράτος]] σα νότια τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν το [[Σαν Μαρίνο]] και οι αρχηγοί τη κυβέρνησης ατ' εν οι [[Ερνέστο Μπενετίνι|Ερνέστο Μπενεντετίνι]] κι [[Ασούντα Μελόνι]]. Η χώρα εχ' πληθυσμόν σα 31.006 τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Ο Άι Μαρίνος ευρίεται απές σην [[Ιταλία|Ιταλίαν]].
== Συνδέζμαι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:San Marino|Ο Άι Μαρίνον σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Άγιος Μαρίνος|Ο Άι Μαρίνον σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Atlas of San Marino|Χάρτες ασον Άι Μαρίνον]]'''
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Άγιος Μαρίνος]]
[[Κατηγορίαν:Ευρώπη|Άγιος Μαρίνος]]
[[Κατηγορίαν:Άγιος Μαρίνος| ]]
iv11yxqi2lksyv9sortpcoyvcywffhf
Άκαμψης
0
123
30937
29546
2013-03-07T16:37:40Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 22 interwiki links, now provided by [[d:|Wikidata]] on [[d:q70970]] [[M:User:Addbot/WDS|(translate me)]]
30937
wikitext
text/x-wiki
[[Εικόναν:Çoruh River.jpg|thumb|Ο Άκαμψης]]
Ο '''Άκαμψης''' (γεωργ. ''ჭოროხი'', τουρκ. ''Çoruh'') εν τζιπ τρανόν ποτάμι κι ευρίεται σον [[Πόντος|Πόντον]]. Αχπάσκεται σο ραχίν Μεστζίτ σο βορειοατατολικόν την [[Τουρκία|Τουρκίαν]], σα 3.255 μέτρα ασην θάλασσαν απάν. Απεκεί πάει σην [[Γρουζία|Γρουζίαν]] κι εκεί σο [[Μαύρον Θάλασσα|Μαύρον τη Θάλασσαν]].
[[Κατηγορίαν:Ποτάμαι|Ακαμψης]]
srbs1txu4hac1zp4eh0rff9xx59zxur
Άλλα έργα
0
124
36241
36222
2025-05-05T21:29:15Z
Ternera
11155
Replacing image with .svg of superior quality. If there is an issue with this edit, please revert it and leave a message on my talk page.
36241
wikitext
text/x-wiki
<div style="font: 15pt times; font-weight:bold; padding:5px; border-bottom:1px solid #AAAAAA;"><div class="center">Τ' άλλα τα έργα</div>
</div>
Η λειτουργίαν τη Βικιπαίδειας αποκουμπισκάται σον οργανισμόν [[Wikimedia|Wikimedia Foundation]], ο οποίος αποκουμπίζ' κι αλλέτερα πολύγλωσσα και [[ελεύθερο περιεχόμενο|ελεύθερου περιεχομένου]] σάιτ:
{|width="100%" align="center" cellpadding="4" style="text-align:left; background-color: transparent;"
| align="center" | <imagemap>Εικόναν:Wikisource-logo.svg|35px
default [[s:|Wikisource]]
desc none</imagemap>
| width="33%" |'''<span class="plainlinks">[http://el.wikisource.org/ Βικιθήκη]</span>'''<br />Ελεύθερα γραψίματα και πηγές
| align="center" | <imagemap>Εικόναν:Wiktionary-logo-en.svg|35px
default [[wikt:|Wiktionary]]
desc none</imagemap>
|width="33%" | '''<span class="plainlinks">[http://el.wiktionary.org/ Βικιλεξικόν]</span>'''<br />Λεξικόν και Θησαυρός
| align="center" | <imagemap>Εικόναν:Wikiquote-logo.svg|35px
default [[q:|Wikiquote]]
desc none</imagemap>
|width="33%" | '''<span class="plainlinks">[http://el.wikiquote.org/ Βικικαλατσίας]</span>'''<br />Σουρίν καλατσεματίων
|-
| align="center" | <imagemap>Εικόναν:Commons-logo.svg|31px
default [[commons:Κύρια_Σελίδα|Commons]]
desc none</imagemap>
| '''<span class="plainlinks">[http://commons.wikimedia.org/wiki/Κύρια_Σελίδα Κοινά - Commons]</span>'''<br />Ανοιχτόν αποθήκην πολυμεσίων
| align="center" | <imagemap>Εικόναν:Wikibooks-logo.svg|35px
default [[b:|Wikibooks]]
desc none</imagemap>
| '''<span class="plainlinks">[http://el.wikibooks.org/ Βικιβιβλία]</span>'''<br />Βιβλία και γραψίματα για να παίρ' ο καθαείς
| align="center" | <imagemap>Εικόναν:Wikinews-logo.svg|51px
default [[wikinews:|Wikinews]]
desc none</imagemap>
| '''<span class="plainlinks">[http://el.wikinews.org/ Βικιχαπέραι]</span>'''<br />Χαπέραι για να δεβάζ' ο καθαείς
|-
| align="center" | <imagemap>Εικόναν:Wikiversity-logo.svg|35px
default [[v:|Wikiversity]]
desc none</imagemap>
| '''<span class="plainlinks">[http://el.wikiversity.org/ Βικιεπιστήμιον]</span>'''<br />Γραψίματα για μάθεμαν
| align="center" | <imagemap>Εικόναν:Wikispecies-logo.svg|35px
default [[wikispecies:Κύρια_Σελίδα|Wikispecies]]
desc none</imagemap>
| '''<span class="plainlinks">[http://species.wikimedia.org/wiki/Κύρια_Σελίδα Βικιείδη]</span>'''<br />Κατάλογος τ' ειδίων
| align="center" | <imagemap>Εικόναν:Wikimedia Community Logo.svg|35px
default [[m:Κύρια_Σελίδα|Meta-Wiki]]
desc none</imagemap>
| '''<span class="plainlinks">[http://meta.wikimedia.org/wiki/Κύρια_Σελίδα Μετα-Βίκι]</span>'''<br />Κανονίζ' τη λειτουργείαν όλιων τη προγραμματίων τη Wikimedia
|}
[[Κατηγορίαν:Wp/pnt|Άλλα έργα]]
6qki7f5g0p1emx04jv4hwdhycw3mg4a
Άλυς
0
125
35470
30938
2023-09-24T00:01:53Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
35470
wikitext
text/x-wiki
[[Αρχείον:Kızılırmak iskilip.jpg|thumb|Ο Άλυς]]
Ο '''Άλυς''' (γιά '''Μαρσύας''', τουρκ. ''Kızılırmak'' [{{IPA|kɯˈzɯlɯɾmak}}]) εν τζιπ τρανόν ποτάμι κι ευρίεται ολόκληρον απές σην [[Τουρκία|Τουρκίαν]], σον [[Πόντος|Πόντον]]. Το μάκρος ατ' εν 1.355 χμ.
== Τ' όνεμαν ==
«Άλυς» εν τ' αρχαίον τ' ελλενικόν τ' όνεμαν κι εξέβεν ασ' αρχαίον τη λέξην ντ' ελέγανε για τ' [[άλας]] ({{polytonic|ἅλς}}). Το τούρκικόν τ' όνεμαν «Kızılırmak» εχ' τη σημασίαν «κόκκινον ποτάμι».
== Απόθεν κατεβαίν' ==
Το ποτάμι εβγών' σ' ανατολικά τα ραχίας τ' Ανατολίας, 150 χμ ασον τόπον απόθεν εβγών' ο [[Ευφράτες]], ασην [[Σεβάστεια|Σεβάστειαν]] ανατολικά, σα ραχία Κιζίλ Νταγ και Κουμανλί Νταγ. Σ' αρνάσεμανατ' ο Άλυς δαβαίν' τη χώραν σα δυτικά και σα νοτιοδυτικά. Απεκεί κλώσκεται σο κεντρικόν την Ανατολίαν σα βόρεια. Εκαικά δαβαίν' απές σα [[Ποντιακά Παρχάραι|Ποντιακά τα Παρχάραι]]. Τελείται σο [[Μαύρον Θάλασσα|Μαύρον τη Θάλασσαν]], σα βορειοδυτικά τη [[Σαμψούντα|Σαμψούντας]] και ολίγον ασην [[Πάφρα|Πάφραν]] απάν μερέαν.
== Συνδέζμ' σα εξ μερέαν ==
* [https://web.archive.org/web/20100330092026/http://www.livius.org/ha-hd/halys/halys.html Livius.org: Halys] - Φωτογραφίας
[[Κατηγορίαν:Ποτάμαι|Αλυς]]
jma9svmqsxv54y8a7zsi00vr01ahrnk
Ήλος
0
126
35523
35224
2024-01-22T07:52:15Z
Kwamikagami
8969
35523
wikitext
text/x-wiki
[[Αρχείον:Howl Bangladesh.jpg|thumb|Ο Ήλος]]
[[file:Sun symbol (planetary color).svg|frameless|upright=0.35|☉]] Ο '''Ήλος''' (γιά '''Ήλες''') εν τ' [[αστέρ]] τ' [[ηλεϊκόν σύστεμαν|ηλεϊκού τη συστεματίεμουν]], και τ' ασούλτς φωτεινόν σώμαν τ' ουρανού. Όνταν εν ημέρα κι ο ήλος ευρίεται ασόν ορίζονταν απάν διγ ατόσον φως που καϊνείς 'κ επορεί ν' ελέπ τ' άλλα τα σώματα τ' ουρανού (εξόν το [[Φέγγος|Φέγγον]] και την [[Αφροδύτε|Αφροδίτεν]]). Τ' αρχαίον τ' ελλενικόν η [[μυθολογία]] λεει ντ' έτονε υιός τη [[Τιτάνες|τιτάνα]] [[Υπερίων (μυθολογία)|Υπερίωνος]] (αέτς γράφνε ο [[Όμηρος]] και ο [[Ησίοδος]]). Τ' αστρονομικόν το σύμβολονατ' εν: [[file:Sun symbol (fixed width).svg|16px|☉]].
{{Commons|Sun}}
[[Κατηγορίαν:Αστρονομία|Ηλος]]
1sysbegdwhv2ws4d4cp5thk43pfptb3
Αεργίτες
0
127
37030
37025
2025-12-16T18:14:34Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37030
wikitext
text/x-wiki
<center> '''Ημέρας Αεργί''' </center>
<center> [[1 Αεργί|1]] | [[2 Αεργί|2]] | [[3 Αεργί|3]] | [[4 Αεργί|4]] | [[5 Αεργί|5]] | [[6 Αεργί|6]] | [[7 Αεργί|7]] | [[8 Αεργί|8]] | [[9 Αεργί|9]] | [[10 Αεργί|10]] | [[11 Αεργί|11]] | [[12 Αεργί|12]] | [[13 Αεργί|13]] | [[14 Αεργί|14]] | [[15 Αεργί|15]] | [[16 Αεργί|16]] | [[17 Αεργί|17]] | [[18 Αεργί|18]] | [[19 Αεργί|19]] | [[20 Αεργί|20]] | [[21 Αεργί|21]] | [[22 Αεργί|22]] | [[23 Αεργί|23]] | [[24 Αεργί|24]] | [[25 Αεργί|25]] | [[26 Αεργί|26]] | [[27 Αεργί|27]] | [[28 Αεργί|28]] | [[29 Αεργί|29]] | [[30 Αεργί|30]] </center>
----
{{ΗμερολόγιοΣεΠίνακα|11}}
Ο '''Αεργίτες''' (σ' ελλενικά: ''Νοέμβριος'') εν ενδέκατον ο μήνας τη χρονίας, όπως λέγει μας το [[Γρηγοριανόν ημερολόγιον]] κι εχ' 30 ημέρας.
== Τ' όνεμα ==
Τ' όνεμαν τη μηνού εχ τη ρίζαν ατ’ σην λέξην «άεργος», επειδή σ’ αβούτον τον μήναν οι ανθρώπ’ ‘κ είχανε δουλείας ν' εφτάγνε σα χωράφεατουν.
== Ο λαόν για τον Αεργίτε ==
:''«Αεργίτες έν’ ζεγκίντν'
:''φέρ’ κρύα νερά και πίντς.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:November|Αεργίτες σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Αεργίτες|Ο Αεργίτες σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Αεργιτες]]
8ar37xoqly3dl6zvauc201wbld4wkuw
Αθήνα
0
128
36859
30941
2025-12-16T10:00:05Z
Εὐθυμένης
2777
36859
wikitext
text/x-wiki
[[Αρχείον:Hellenic Parliament at Athens.jpg|thumb|280px|Τ' Ελλενικόν η Βουλή σην Αθήναν εν έδρα τη κυβέρνησης τ' ελλενικού τη κράτονος]]
Η '''Αθήνα''' (αρχ. ''Ἀθῆναι'') εν [[Ελλάδα|ελλενικόν]] πολιτείαν και εχ' τρανόν [[ιστορίαν]]. Εν η ασ' ουλτς τρανόν πολιτείαν και η [[πρωτεύουσα]] τη χώρας. Οσήμερον (2001) εχ' πληθυσμόν 3.361.806 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Αθηνα}}
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας]]
h0wabmg3bzdmeeui1pzc3177yr0i890
Αλατςάμ
0
129
37376
36737
2025-12-20T12:03:36Z
Εὐθυμένης
2777
37376
wikitext
text/x-wiki
[[Αρχείον:Alaçam Meydanı.JPG|μικρογραφία|δεξιά|300px| Alaçam Square]]
Τ' '''Αλατσάμ''' (τουρκ. ''Alaçam'') εν μικρόν πολιτείαν τη [[Τουρκία|Τουρκίας]] κι ευρίεται σην επαρχίαν τη [[Σαμψούντα|Σαμψούντας]], σον [[Πόντος|Πόντον]]. Οι γραμματιζμέν' εθαρρούνε ντο εν τ' αρχαίον η πολιτείαν ο Ζαλίχης.<ref>Richard Talbert, Barrington Atlas of the Greek and Roman World, (ISBN 0-691-03169-X), Map 87 & notes.</ref> Οι ανθρώπ εκαικά (σα 12.000 απαναφκά) εργάσκουνταν πολλά σα χωράφαι, άμα και σα ζα και σ' οψάραι. Σα χωράφαιατουν έχνε πολλά καπνά, άμα και [[λαζούδ|λαζούδαι]], ρύζι, λάχανα και φρούτα.
== Αναφοράντας ==
<references />
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας|Αλατσαμ]]
[[Κατηγορίαν:Πόντος|Αλατσαμ]]
i2xhx4ebyepqwi7fkhebs2ncvnncoeg
Αλατσάμ
0
130
990
989
2009-03-06T14:58:53Z
MF-Warburg
53
1 revision: import from incubator
990
wikitext
text/x-wiki
#REDIRECT [[Αλατςάμ]]
qnp4mks0e7xyvx2ncj0r6hxng1pv9cl
Αλβανία
0
131
36269
36268
2025-06-09T18:47:02Z
Εὐθυμένης
2777
36269
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Αλβανία'''</big></big><br/>''Republika e Shqipërisë''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Albania.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Albania.svg|125px]]
|-
| align="center" width="140px" | Τ' αλβανικόν η σημαίαν
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 | <small></big>
|-
| align=center colspan=2 | [[Αρχείον:Europe-Albania.svg|300px]]
|}
Η '''Δημοκρατίαν τ' Αλβανίας''' (σ' αλβανικά: ''Republika e Shqipërisë'') εν [[κράτος]] σο νότον τ' [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς είν' τα [[Τίρανα]]. Ο πρόεδρον ατ'ς λέχκεται [[Ιλίρ Μέτα]] και πρωθυπουργούν εν ο [[Έντι Ράμα]]. Σον [[Χορτοθέρτς|Χορτοθέρτ]] τη 2008 η Αλβανίαν είχεν πληθυσμόν σα 3.619.778 <ref>''The World Factbook'' - [https://web.archive.org/web/20080709071433/https://www.cia.gov/library/publications/the-world-factbook/print/al.html Albania]</ref>
απαναφκά.
== Γεωγραφίαν ==
Η Αλβανίαν ευρίεται σ' ανατολικόν τη Μεσόγειον, σα δυτικά τη [[Βόρεια Μακεδονία]], σα βόρεια τ' [[Ελλάδα|Ελλάδας]] και σο νότον τη [[Μαυροβούνιον]].
== Αναφοράντας ==
<references/>
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Albania|Η Αλβανίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Αλβανία|Η Αλβανίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Albania|Χάρτες ασην Αλβανίαν]]'''
* [http://www.parlament.al Το επίσημον ο ιστοτόπον τ' αλβανικού τη κοινοβουλί]
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Αλβανία]]
[[Κατηγορίαν:Ευρώπη|Αλβανία]]
[[Κατηγορίαν:Βαλκάνια|Αλβανία]]
[[Κατηγορίαν:Αλβανία| ]]
9ry5k99dqgz4a1sivefno0ntlkxj2mm
Αμάσεια
0
132
36738
36557
2025-12-16T08:31:03Z
Εὐθυμένης
2777
36738
wikitext
text/x-wiki
[[Εικόναν:Amasya Turkey Provinces locator.gif|thumb|230px|Η Αμάσεια σον χάρτεν τη Τουρκίας]]
[[Εικόναν:Amasya genelgorunum.jpg|thumb|230px|Η Αμάσεια]]
Η '''Αμάσεια''' (σα λατινικά: ''Amasia'', σα τουρκικά: ''Amasya'') εν [[Τουρκία|τουρκικόν]] πολιτείαν κι ευρισκάται σον [[Πόντος|Πόντον]], 130 χιλιόμετρα ασήν [[Σαμψούντα|Σαμψούνταν]] νότεα. Εν η πρωτεύουσαν τ' επαρχίας τ' Αμάσειας κι οσήμερον εχ' πληθυσμόν 80.000 απαναφκά. Σην πολιτείαν απές δαβαίν' ο ποταμόν Ίρις.
== Ιστορία ==
Η πολιτείαν έντον τρανόν σ' ελλενιστικά τα χρόναι. Σα 300 π.Χ. ους 183 π.Χ. έτον πρωτεύουσαν τη Βασιλίου τη Πόντονος. Επεκεί εγέντον πρωτεύουσαν η [[Σινώπη]] ντ' έτον σην θάλασσαν σουμά. Σα 70 π.Χ. (3ον Μιθριδατικόν Πόλεμος) ο Πόντον έντον ρωμαϊκόν επαρχίαν ''Bithynia et Pontus'' με πρωτεύουσαν την Αμάσειαν. Σ' ατά τα χρόναι εγεννέθεν κι έζησεν εκέκα τρανόν γεωγράφον ο [[Στράβων]].<br />
Σα βυζαντινά τα χρόναι έτον έδρα τη Θέματι Αρμενιακόν. Σα 306 τη χρονίαν απόθανεν αδακά ο [[Άγιος Θεόδωρος ο Τήρων|Άγιον Θεόδωρον ο Τήρων]].<br />
Σα 1075 τη χρονίαν οι Σελτζούκ επαίραν την Αμάσειαν και σα 1386 ο σουλτάνος [[Βαγιαζήτ Α΄]] εποίκενατεν πολιτείαν τ' [[Οθωμανικόν αυτοκρατορίαν|Οθωμανικού τ' αυτοκρατορίας]].
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας|Αμασεια]]
[[Κατηγορίαν:Πόντος|Αμασεια]]
j9you13yxihtwsnr0wv4trzts6etlwm
Αμερικήν
0
133
35230
33994
2022-09-20T01:08:11Z
Kwamikagami
8969
35230
wikitext
text/x-wiki
[[Αρχείον:Americas in the world (red) (W3).svg|thumb|right|Η Αμερικήν σον χάρτεν τη κόσμονος]]
Η '''Αμερικήν''' εν τρανόν ήπειρον σο δυτικόν ημψόν τη γης. Οι λόγιοι τ' [[Ευρώπην|Ευρώπης]] 'κ εγνωρίζαν' ατέν ώσαμε σα 1492 τη χρονίαν. Ατότε εύραν ατέν και για τ' ατό έδωκαν τ' όνεμαν «''Νέον Κόσμον''». Η Αμερικήν χωρίεται σο Βόρειον και σο Νότιον την Αμερικήν. Εχ' πληθυσμόν σα 900.000.000 τ' ανθρώπ'ς κιαν.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:America|Η Αμερικήν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Αρκτική|Η Αμερικήν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of America|Χάρτες ασην Αμερικήν]]'''
[[Κατηγορίαν:Γεωγραφίαν|Αμερικήν]]
4d1l1qx3llkx21qbr5al8s6adbh3m2b
Ανδόρρα
0
134
36111
35909
2025-01-26T23:59:50Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
36111
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ανδόρρα'''</big></big><br/>''Principauté d'Andorre''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Andorra.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Andorra.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Location_Andorra_Europe.png|300px]]
|}
Το '''Πριγκηπάτο τη Ανδόρρας''' (σα καταλανικά: ''Principat d'Andorra'', σα γαλλικά: ''Principauté d'Andorre'', σα ισπανικά: ''Principado de Andorra'') είναι τζιπ μικρόν [[κράτος]] σα δυτικά τη [[Ευρώπην|Ευρώπης]], σ' [[Ιβηρικόν Χερσόνησος|Ιβηρικόν τη χερσόνησον]]. Ευρισκάται απεσκές σην [[Γαλλία|Γαλλίαν]] και σην [[Ισπανία|Ισπανίαν]]. Πρωτεύουσαν ατ' εν η [[Ανδόρρα λα Βέγια]]. Την ηγεμονίαν συγκατέχνε ο Επίσκοπον τη Ουρχέλ, Ζουάν Ενρίκ Βίβες Σισίλια, και ο πρόεδρον τη Γαλλίας, [[Νικολά Σαρκοζί]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Andorra|Η Ανδόρραν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ανδόρρα|Η Ανδόρραν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Andorra|Χάρτες ασην Ανδόρραν]]'''
* [https://web.archive.org/web/20161207030138/http://www.andorra.ad/ Το επίσημον ο ιστοτόπον τη Ανδόρρας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Ανδόρρα]]
[[Κατηγορίαν:Ευρώπη|Ανδόρρα]]
[[Κατηγορίαν:Ιβηρία|Ανδόρρα]]
[[Κατηγορίαν:Ανδόρρα| ]]
3wz84nba4qp58vynhqnesrzxmk53j8t
Ανεφορίτσα
0
135
36112
35536
2025-01-28T00:56:48Z
Wolverène
4171
36112
wikitext
text/x-wiki
'''Ανεφορίτσα''' εν τόνεμαν είνος χορού τη [[Πόντος|Πόντονος]], ασην [[Γαλίαινα|Γαλίαιναν]] τη [[Τραπεζούντα|Τραπεζούντας]].
== Πως χορεύκεται ==
Η ανεφορίτσαν εν αμόν τη [[σερανίτσα|σερανίτσαν]] άμα με μονό [[τικ|τικ]] (δύο τριαρόπα σον τόπον) και χορέυνατον σε κλειστόν κύκλον. Οι χορευτάδες πιάσκουνταν ασα παλάμες και λυγίζνε τ' αγκώνασατουν. Εφτάνε τέσσερα βήματα σα δεξιά και τέσσερα σ' αριστερά. Το δεξί το ποδάρ πάει εμπροστά και τ' αριστερό απ' οπίς. Τα χέρια επέμνε άπραγα. Το μουσικόν το όργανον ντε κουλανέυκεται σ' αούτον το χορόν εν η λύραν (κεμεντζές). Ο χορός πάει σ' αριστερά και ο ρυθμόνατ ένι πεντάσημον ([[Media:5-8_rhythm_metre_meter_time_measure.ogg|5/8]]).<br>
== Τραγοδία ==
Με τον χορόν εντάμαν τραγοδίζνε και τα λόγια:
''«Κόρη κατήβα σο μαντρίν ελίεν η κιζέλα,''<br>
''εφώταξεν ο πρόσωπος άμμον ντο εν ημέρα.»''
{{Πρότυπον:Μετάφραση el}}
[[Κατηγορίαν:Χορός]]
[[Κατηγορίαν:Μουσική]]
cd2zd5ua276pi3d2vj6hwyq9lv8kcd3
Ανταρκτικήν
0
136
35251
35156
2022-10-23T10:21:56Z
2A02:586:A3D:5E90:E50E:5AF0:47D8:6E26
35251
wikitext
text/x-wiki
[[Εικόναν:Antarctica (orthographic projection).svg|thumb|250px|right|Ανταρκτικήν]]
[[Εικόναν:LocationAntarctica.png|thumb|250px|right|Η Ανταρκτική σον χάρτεν τη κόσμονος]]
Η '''Ανταρκτικήν''' εν ήπειρος. Ευρίεται σο Νότιον Πόλον τη γης και πάντα εν σκεπασμέντζα ασοι πάγους και τα σόναι. Σην Ανταρκτικήν απάν εζούνε πιγκουίν και φώκιες.
== Συνδέζμαι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:Antarctica|Η Ανταρκτικήν σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ανταρκτική|Η Ανταρκτικήν σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Antarctica|Χάρτες ασην Ανταρκτικήν]]'''
* [https://web.archive.org/web/20190515210037/https://www.ats.aq/index_e.htm Γραμματεία Ανταρκτικής Συνθήκης]
<gallery>
File: 061212-nordkapp.jpg
File:GletscherMM.jpg
File:Fryxellsee Opt.jpg
File:Mount Erebus Aerial 2.jpg
File:Aurore australe - Aurora australis.jpg
</gallery>
[[Κατηγορίαν:Γεωγραφίαν|Ανταρκτικην]]
sleqol7qpnxh6py65algzl7mh1nkmvw
Απρίλτς
0
137
37042
37018
2025-12-16T18:14:35Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37042
wikitext
text/x-wiki
<center> '''Ημέρας τ' Απρίλτ''' </center>
<center> [[1 Απρίλτ|1]] | [[2 Απρίλτ|2]] | [[3 Απρίλτ|3]] | [[4 Απρίλτ|4]] | [[5 Απρίλτ|5]] | [[6 Απρίλτ|6]] | [[7 Απρίλτ|7]] | [[8 Απρίλτ|8]] | [[9 Απρίλτ|9]] | [[10 Απρίλτ|10]] | [[11 Απρίλτ|11]] | [[12 Απρίλτ|12]] | [[13 Απρίλτ|13]] | [[14 Απρίλτ|14]] | [[15 Απρίλτ|15]] | [[16 Απρίλτ|16]] | [[17 Απρίλτ|17]] | [[18 Απρίλτ|18]] | [[19 Απρίλτ|19]] | [[20 Απρίλτ|20]] | [[21 Απρίλτ|21]] | [[22 Απρίλτ|22]] | [[23 Απρίλτ|23]] | [[24 Απρίλτ|24]] | [[25 Απρίλτ|25]] | [[26 Απρίλτ|26]] | [[27 Απρίλτ|27]] | [[28 Απρίλτ|28]] | [[29 Απρίλτ|29]] | [[30 Απρίλτ|30]] </center>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
[[Εικόναν:Matthäus Merian Monate 04 April.jpg|thumb|Τα μήνας, «Απρίλτς». Εζωγράφσεν ατό ο Matthäus Merian (ο τρανόν) σα 1610.]]
'''Απρίλτς''' (σ' ελλενικά: ''Απρίλιος'') εν ο τέταρτον μήνας τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] κι εχ' 30 ημέρας. Τ' όνεμαν ατ' εβγών' ασόν λατινικόν τη λέξην ''aperire'' το σημαίν' «ανοιγείναι». Δηλαδή ανοίγ' ο καιρόν γάλε γάλε, σειμουγκόν τελείται κι άνοιξην έρται.
== Ο λαόν για τ' Απρίλτ ==
:''«Απρίλ' τα φερ' τα χελιδόνε, κελαηδούν και λύν' τα χιόνε''
:''Έρθεν Απρίλ' με το καλόν, έγκεν τα πρασινάδας''
:''Ξενιτεύνε οι παντρεμέν', κλαινίζνε τοι νυφάδας.»''
:''«Απρίλτς έρται και περά,''
:''τ’ άλλο κλαίει τ’ άλλο γελά.»''
== Συνδέσμ ==
* '''[[Εικόναν:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:April|Απρίλτς σα Commons]]'''
* '''[[Εικόναν:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el:wikt:Απρίλιος|Ο Απρίλτς (Απρίλιος) σ' ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Απριλτς]]
4rohr5zefzzfzpq0fvytkb448vc0rw1
Αργαίος
0
138
37390
30949
2025-12-20T12:07:37Z
Εὐθυμένης
2777
/* Απόθεν επαίραμε πληροφορίας */
37390
wikitext
text/x-wiki
[[Εικόναν:Erciyes Dagi.jpg|thumb|Ο Αργαίος σα 2007 τη χρονίαν]]
Ο '''Αργαίος''' (τουρκ. ''Erciyes Dağı'') εν ραχίν σην [[Καππαδοκία|Καππαδοκίαν]], σο νότον τη [[Τουρκία|Τουρκίας]]. Χωρίζ' την Καππαδοκίαν ασο δυτικόν το κομμάτ' τη [[Πόντος|Πόντονος]] κι έχ' ψήλος 3.917 μέτρα.<ref>[http://www.peakbagger.com/peak.aspx?pid=10442 peakbagger.com]</ref> Ο [[Στράβων]] έγραψεν γιαβούτο το ραχίν ντ' έτον πάντα σκεπαζμένον σα χιόναι και ντ' επόρνεν να δει κανείς ασο βουνόν και το [[Μαύρον Θάλασσα|Μαύρον τη Θάλασσαν]] και το [[Μεσόγειον Θάλασσα|Μεσόγειον τη Θάλασσαν]].<ref>Στράβων, ''Γεωγραφικά'' 12.2.7.</ref>
== Απόθεν επαίραμε πληροφορίας ==
<references />
[[Κατηγορίαν:Ραχία|Αργαιος]]
ew9ttqaebo35j4d36ksdnlu6d43uhch
Αρκτικήν
0
139
32111
30950
2014-11-21T14:41:48Z
CommonsDelinker
121
The file [[:Image:Wiktionary-logo-el.png]] has been replaced by [[:Image:Greek_wiktionary_logo.png]] by administrator [[:commons:User:Billinghurst]]: ''exact or scaled-down duplicate''. ''[[m:User:CommonsDelinker|Translate me!]]''
32111
wikitext
text/x-wiki
[[Εικόναν:Arctica surface.jpg|thumb|175px|right|Αρκτικήν]]
Η '''Αρκτικήν''' εν πόλος, κεν ήπειρος. Ευρίεται σο Βόρειον Πόλον τη γης και άμον την [[Ανταρκτικήν]] που ευρίεται σο Νότιον Πόλον, πάντα εν σκεπασμέντζα ασοι πάγους και τα ςςόναι. Σην Αρκτικήν απάν εζούνεν άρκτοι (λέγν' ατα και αρκούδας σα [[Ελλενικόν γλώσσα|νεοελλενικά]]) και ασατίντς επέρ τ' όνεμαν ατς.
== Συνδέζμαι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:Arctic|Η Αρκτικήν σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Αρκτική|Η Αρκτικήν σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Κατηγορίαν:Maps of the Arctic|Χάρτες ασην Αρκτικήν]]'''
[[Κατηγορίαν:Γεωγραφίαν|Αρκτικήν]]
ms0x3312zt91wns51aqjfrwi8skzytr
Αρχικόν σελίδ
0
140
1107
1106
2009-03-06T14:59:07Z
MF-Warburg
53
1 revision: import from incubator
1107
wikitext
text/x-wiki
#REDIRECT[[Αρχικόν σελίδα]]
9zh2u3mxf7hjcc88dvdeen2nzm3hjz1
Ασίαν
0
141
37389
35229
2025-12-20T12:07:27Z
Εὐθυμένης
2777
/* Αναφοράν */
37389
wikitext
text/x-wiki
[[Αρχείον:Asia in the world (red) (W3).svg|thumb|right|Η Ασίαν σον χάρτεν τη κόσμονος]]
[[Αρχείον:Asia satellite orthographic.jpg|thumb|Ασό δορυφόρον: φωτογραφία τ' Ασίας]]
Η '''Ασίαν''' εν όλων το τρανόν η ήπειρος τη κόσμονος. Ο πληθυσμόν ατ'ς εν σα 4.000.000.000 τ' ανθρώπ'ς και βρέχεται ασόν [[Ατλαντικόν ωκεανός|Ατλαντικόν τον ωκεανόν]], τον [[Ινδικόν ωκεανός|Ινδικόν τον ωκεανόν]], το [[Μαύρον Θάλασσα|Μαύρον τη θάλασσαν]] και το [[Μεσόγειον θάλασσα|Μεσόγειον τη θάλασσαν]]. Με την [[Ευρώπην]] και την [[Αφρικήν]] εντάμαν σχηματίζνε τον «Παλαιόν Κόσμον».
== Ετυμολογία ==
Τ' όνεμα «Ασία» εξέβεν ασ' ακκαδικόν τη λέξην ''«asu»''<ref name="etymonline.com">http://www.etymonline.com/index.php?search=asia&searchmode=none σο σάιτ: etymonline.com, εύρον τη λέξην <code>Asia</code> (αγγλικά)</ref> και η σημασέαν ατ'ς εν: «''ανατολή'' (τ' ήλιονος)», που έχνε γιά το λατινικόν η ονομασίαν ''oriens'', γιά τ' [[Ελλενικόν γλώσσα|ελλενικόν]] ''ανατολή''. Σ' αρχαία τα χρόναι «Ασία» έτον τ' όνεμα τη ρωμαϊκού τ' επαρχίας (''Asia''), τη Μικράς τη Ασίας.
== Γεωγραφίαν ==
Η Ασίαν εν η ήπειρος με τα περισσόν νησία και τα περισσόν χερσονησία.
== Κράτη ==
Τα [[Κράτος|κράτε]] σ' Ασίαν:
* [[Γρουζία]]
* [[Κίνα]]
* [[Ιαπωνία]]
* [[Τουρκία]]
* [[Ινδία]]
* [[Ρουσία]]
* [[Μογγολία]]
== Αναφοράν ==
<references />
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Asia|Η Ασίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ασία|Η Ασίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Asia|Χάρτες ασην Ασίαν]]'''
[[Κατηγορίαν:Γεωγραφίαν|Ασιαν]]
43tstfr15ax9iro2o3f5nkewq7jj21k
Αστερίκον
0
142
34840
34628
2021-08-10T19:05:26Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.8
34840
wikitext
text/x-wiki
'''Αστερίκον''' (σ' ελλενικά: ''Αστερίξ'', σα γαλλικά: ''Astérix le Gaulois'' ) εν ο τίτλος εινός [[κόμιξ]] τη [[Ρενέ Γκοσινί]] (γραφ') και [[Αλμπέρ Ουντερζό]] (ζωγραφίζ'). Τ' όνεμαν ατ' εβγών' ασον ήρωαν τη σειράς: τον Αστερίκον. Η σειρά εχπάστεν σα 1959 τη χρονίαν κ' γράφκεται σα Γαλλικά. Όντες επέθανε ο Γκοσινί (σα 1977), ο Ουντερζό απεκεί κιαδά μερέαν γραφ' μαναχός τ' ιστορίας με τ' ανθρώπς τη γαλατικού τη χωρίου τ' αντιφέρκεται σοι Ρωμαίοις. Τ' όνεμα «Αστερίκον» εξέβεν ασ' αρχαίον τ' ελλενικόν τη λέξην {{Polytonic|ἀστερίσκος}} («μικρόν αστέρ», «αστερίκον»).
== Ιστορίας ==
Ο Αστερίκον εν τζιπ έξυπνος πολεμιστής κι εξέρ' ν' εγαντουρεύ' τ' εχθρούσατ'. Εν ψιλωτός και χαμελός. Ασ' άλλ' τη μερέαν εν ο Οβελίκον, τ' εν ψηλόν σαγλάμψ, άμα κι αγαθόν κι αγνόν σο νούνιγμανατ'. Όντες έτον χάταλον ερούξεν σο καζάν με το μαγικόν το ζωμίν κι επεκεί εχ' τρανόν δύναμη. Για τοι Ρωμαίοις λέγει: «''Είναι παλαλοί ατοίν οι ανθρώπ'!''» Ασα 1965 τη χρονίαν (''Le Tour de Gaul'') κιαδά μερέαν έχνε κι έναν σκύλον.<br />
Τα ιστορίας θέκουν ατά σα πενήντα χρόναι πριχού γεννίεται ο Χριστόν: Οι Ρωμαίοι (όχι τ' εμέτερ ασον [[Μαύρον Θάλασσα|Πόντον]], αλλά εκείν ασην Ρώμην τ' [[Ιταλία|Ιταλίας]]) επάτεσαν τον κόσμον όλον. Αέτς πα, η Γαλατία όλον εν αφκά α σοι Ρωμαίοις - άμα 'κ εν όλον! Έναν χωρίον με Γαλάτες 'κ προσκυνά τοι Ρωμαίοις. Αβούτοι χωρέτ' έχνε το μαγικόν το ζωμίν ντο δι ατείντζ τρανόν τακάτ κι αντιφέρκουνταν κι ευτάνε αντίστασην! Αέτς πα οι Ρωμαίοι λεγεωνάριοι που ωρίαζνε τα κάστρα σο Πετίμπονον, σο Ακουάριον, σο Λάβδανον και σο Μπαμπάορον εύραν την πελάνατουν.
Σα πρώτα χρόναι τ' ιστορίας τ' έγραφεν ο Γκοσινί. Ασον θάνατονατ' (1977) κιαδά μερέαν ο Ουντερζό ζωγραφίζ' τα ιστορίας κ' εφτάει και το γράψιμον (<span style="background-color:#eeeeee;"> τα γκρι τ' ονέματ' αφκακαικά</span>).
<br clear="all" />
{| width=100% cellspacing="0"
|-
! style="background:#efefef;" | Νο. – Ελλενικόν τίτλος
! style="background:#efefef;" | Νο. – Γαλλικόν τίτλος
! style="background:#efefef;" | Νο. – Ποντιακόν/Ρωμαίικον τίτλος
|-
| 10 – Αστερίξ ο Γαλάτης (1990)
| 01 – Astérix le Gaulois (1961)
|-
| 16 – Το χρυσό δρεπάνι
| 02 – La Serpe d'or (1962)
|-
| 4 – Ο Αστερίξ και οι Γότθοι (1989)
| 03 – Astérix et les Goths (1963)
|-
| 13 – Ο Αστερίξ μονομάχος
| 04 – Astérix gladiateur (1964)
|-
| 09 – Ο γύρος της Γαλατίας
| 05 – Le Tour de Gaule (1965)
|-
| 05 – Αστερίξ και Κλεοπάτρα
| 06 – Astérix et Cléopâtre (1965)
|-
| 01 – Ο Αγώνας των αρχηγών (1989)
| 07 – Le Combat des Chefs (1966)
|-
| 17 – Ο Αστερίξ στους Βρετανούς
| 08 – Astérix chez les Bretons (1966)
|-
| 14 – Ο Αστερίξ και οι Νορμανδοί
| 09 – Astérix et les Normands (1966)
|-
| 24 – Ο Αστερίξ λεγεωνάριος (1992)
| 10 – Astérix légionnaire (1967)
|-
| 19 – Η ασπίδα της Αρβέρνης
| 11 – Le Bouclier Arverne (1968)
|-
| 25 – Ο Αστερίξ στους Ολυμπιακούς αγώνες
| 12 – Astérix aux Jeux Olympiques (1968)
| 03 – Ο Αστερίκον σα Ολυμπιακά τ' Αγώνας (2007)
|-
| 18 – Ο Αστερίξ και η χύτρα
| 13 – Le Chaudron (1969)
|-
| 03 – Ο Αστερίξ στην Ισπανία (1989)
| 14 – Astérix en Hispanie (1969)
|-
| 06 – Η διχόνοια
| 15 – La Zizanie (1970)
| 01 – Το Ζιζάνιον (2000)
|-
| 20 – Ο Αστερίξ στους Ελβετούς
| 16 – Astérix chez les Helvètes (1970)
|-
| 07 – Η κατοικία των θεών (1990)
| 17 – Le Domaine des Dieux (1971)
|-
| 15 – Οι δάφνες του Καίσαρα
| 18 – Les Lauriers de César (1972)
|-
| 08 – Ο μάντης
| 19 – Le Devin (1972)
|-
| 12 – Ο Αστερίξ στην Κορσική
| 20 – Astérix en Corse (1973)
|-
| 21 – Το δώρο του Καίσαρα (1991)
| 21 – Le Cadeau de César (1974)
|-
| 23 – Το μεγάλο ταξίδι
| 22 – La Grande Traversée (1975)
|-
| 02 – Οβελίξ και Σία (1989)
| 23 – Obélix et compagnie (1976)
|-
| 11 – Ο Αστερίξ στους Βέλγους (1990)
| 24 – Astérix chez les Belges (1979)
|-
|bgcolor=#eeeeee| 26 – Η μεγάλη τάφρος
|bgcolor=#eeeeee| 25 – Le Grand Fossé (1980)
|-
|bgcolor=#eeeeee| 27 – Η οδύσσεια του Αστερίξ
|bgcolor=#eeeeee| 26 – L'Odyssée d'Astérix (1981)
|-
|bgcolor=#eeeeee| 28 – Ο γιός του Αστερίξ
|bgcolor=#eeeeee| 27 – Le Fils d'Astérix (1983)
|-
|bgcolor=#eeeeee| 29 – Ο Αστερίξ και η Χαλαλίμα
|bgcolor=#eeeeee| 28 – Astérix chez Rahàzade (1987)
|-
|bgcolor=#eeeeee| 22 – Ρόδο και ξίφος
|bgcolor=#eeeeee| 29 – La rose et la glaive (1991)
|bgcolor=#eeeeee| 02 – Σπαθία και τραvτάφυλλα (2003)
|-
|bgcolor=#eeeeee| 30 – Η γαλέρα του Οβελίξ (1996)
|bgcolor=#eeeeee| 30 – La galère d'Obélix (1996)
|-
|bgcolor=#eeeeee| 31 – O Αστερίξ και η Λατραβιάτα (2001)
|bgcolor=#eeeeee| 31 – Astérix et Latraviata (2001)
|-
|bgcolor=#eeeeee| 32 – O Αστερίξ και η επιστροφή των Γαλατών (2006)
|bgcolor=#eeeeee| 32 – Astérix et la rentrée gauloise (2003)
|-
|bgcolor=#eeeeee| 33 – Και ο ουρανός έπεσε στο κεφάλι τους
|bgcolor=#eeeeee| 33 – Le ciel lui tombe sur la tête (2005)
|}
== Τονέματα σα ρωμαίικα, σα νεοελλενικά και σα γαλλικά ==
* Αστερίκον (Αστερίξ, Astérix)
* Οβελίκον (Οβελίξ, Obélix)
* Πανοραμίκον (Πανοραμίξ, Panoramix)
* Žαγκοφωνίκον (Κακοφωνίξ, Assurancetourix)
* Ακριτονίκον (Μαζεστίξ, Abraracourcix)
== Το χωρίον ==
Το χωρίον εν φανταστικόν κι ευρισκάται σην Αρμορίκην, (τ' οσημερνόν η Βρετάνη) σα νοτιοδυτικά τη [[Γαλλία|Γαλλίας]], σην Κονδάτη (Ρεν) σουμά. Τόνεμαν αθέ 'κ εξέρουματο. Ο Ουντερζό είπεν να θέκουνατο σην Βρετάνην γιατί έτον εκεί σα χρόναι τη πολέμονος κι εγνώρτσεν καλά τα τοπέα. Ασ' αλλ' τη μερέαν, ο Γκοσινί είπεν να θέκουνατο σην θάλασσαν σουμά αέτς για να κλώσκουνταν οι χωρέτ' σον κόσμον. Σο χωρίον απές έχ' έναν ορμίν.
== Συνδέσμ ==
* '''[[Εικόναν:Commons-logo.svg|13px]] [[:el:commons:category:Astérix|Ο Αστερίκον σα Commons]]'''
* [http://www.asterix-obelix.nl/manylanguages/ Τα ιστορίας σα πολλά τα γλώσσας]
* [https://web.archive.org/web/20091227011652/http://www.asterix-obelix.nl/manylanguages/greek-pontiaka.htm Τα ιστορίας σα ποντιακά]
[[Κατηγορίαν:Κόμιξ|Αστερικον]]
[[Κατηγορίαν:Βικιπαίδεια:Arthron]]
r6akljc5krhq00brtwz4okzbi3ees3a
Ατςαπάτ
0
143
30953
6580
2013-03-07T16:51:02Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 2 interwiki links, now provided by [[d:|Wikidata]] on [[d:q3567515]] [[M:User:Addbot/WDS|(translate me)]]
30953
wikitext
text/x-wiki
'''Ατςαπάτ''' εν τόνεμαν είνος ρωμαίικου χορού τη [[Πόντος|Πόντονος]], ασα [[Πλάτανα|Πλάτανα]].
== Τόνεμαν ==
Τόνεμαν «ατςαπάτ» εβγών' ασο [[Τουρκία|τούρκικον]] τόνεμαν τη Πλατανίων: (''Akçaabat''). Αβούτεν η πολιτείαν ευρίεται ασην [[Τραπεζούντα|Τραπεζούνταν]] δυτικά. Ασ' αβούτον τον τόπον εξέβαν πολλά τρανοί χορευτάδες.
== Πως χορεύκεται ==
Το ατςαπάτ ένι αργόν μορφήν τη [[σέρρα|ςέρρας]] και πάει με τραγοδίαν εντάμαν. Ο ρυθμόσατ' ένι επτάσημον (7/8). Σα παλαιά τα χρόναι χορεύκουτον ασ' αγούρ μαναχόν. Ο χορόν αποκουμπισκάται σο [[τικ|τικ]] το διπλόν με πολλά λοέν φιγούρας.
[[Κατηγορίαν:Μουσική|Ατσαπατ]]
[[Κατηγορίαν:Χορός|Ατσαπατ]]
tvu6xryx1u082615hjonwtzvnm8alka
Ατσαπάτ
0
144
1178
1177
2009-03-06T14:59:17Z
MF-Warburg
53
1 revision: import from incubator
1178
wikitext
text/x-wiki
#REDIRECT [[Ατςαπάτ]]
5yep81ih20drtecni2znycv5bz3viq9
Αυστρία
0
145
35913
34373
2024-10-26T05:24:57Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35913
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Αυστρία'''</big></big><br/>''Republik Österreich''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Austria.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Austria.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Austria.svg|300px]]
|}
[[File:Austria, administrative divisions - Nmbrs - colored.svg|thumb]]
Η '''Δημοκρατίαν τη Αυστρίας''' (σα γερμανικά: ''Republik Österreich'') εν [[κράτος]] σο κέντρον τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Βιέννη]] κι έχ' πληθυσμόν σα 8.858.775 τ' ανθρώπ'ς (2019). Ο καγκελάριον ατ'ς εν ο Άλφρεντ Γκουζενμπάουερ.
== Γεωγραφίαν ==
Η Αυστρίαν ευρίεται σα ανατολικά τη [[Λιχτενστάιν]], τη [[Ελβετία|Ελβετίας]], σα βόρεια τη [[Ιταλία|Ιταλίας]] και τη [[Σλοβενία|Σλοβενίας]], σα δυτικά τη [[Σλοβακία|Σλοβακίας]] και τη [[Ουγγαρία|Ουγγαρίας]] και σα νότια τη [[Τσεχία|Τσεχίας]] και τη [[Γερμανία|Γερμανίας]]. Απέσ' σα τρανά τα πολιτείας ατ'ς είναι το [[Γκρατς]] και το [[Λιντς]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Austria|Η Αυστρίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Αυστρία|Η Αυστρίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Austria|Χάρτες ασην Αυστρίαν]]'''
* [http://www.austria.gv.at Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Αυστρίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Αυστρία]]
[[Κατηγορίαν:Ευρώπη|Αυστρία]]
[[Κατηγορίαν:Αυστρία| ]]
k6u45i05ic68j9i020p153245hzp5b4
Αυστραλία
0
146
36218
36212
2025-04-09T08:20:09Z
CommonsDelinker
121
Replacing Coat_of_arms_of_the_Commonweatlh_of_Australia.svg with [[File:Coat_of_arms_of_the_Commonwealth_of_Australia.svg]] (by [[:c:User:CommonsDelinker|CommonsDelinker]] because: [[:c:COM:FR|File renamed]]: [[:c:COM:FR#FR3|Criterion 3]]).
36218
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Αυστραλία'''</big></big><br/>''Commonwealth of Australia''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Australia.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of the Commonwealth of Australia.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Australia_with_AAT_(orthographic_projection).svg|300px]]
|}
Η '''Αυστραλία''' (σα εγγλέζικα: ''Australia'') είναι [[Ωκεανίαν|ωκεανικόν]] [[κράτος]] σο νότιον τον Ειρηνικόν τον ωκεανόν. Πρωτεύουσαν ατ'ς εν η [[Καμπέρα]]. Ο πρόεδρον ατ'ς εν ο [[Μάικλ Τζέφρι Κέβιν Ραντ]] και ο πληθυσμόν ατ'ς ένι σα 20.406.800 τ' ανθρώπ'ς.
== Γεωγραφία ==
Η Αυστραλίαν συνορεύ' με 4 κράτη: τη [[Νέα Ζηλανδία]], την Ινδονησία, την Παπούα-Νέα Γουινέα και το Ανατολικό Τιμόρ. Σα τρανά πολιτείας εξόν τη πρωτεύουσαν ανήκ'νε το Σύδνεϋ και η Μελβούρνη.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Australia|Η Αυστραλία σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Αυστραλία|Η Αυστραλίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Australia|Χάρτες ασήν Αυστραλίαν]]'''
[[Κατηγορίαν:Κράτη|Αυστραλία]]
[[Κατηγορίαν:Αυστραλία| ]]
7tx0wfllxxsagv9rgk42wqpt8a5u0wa
Αφρικήν
0
147
37388
35233
2025-12-20T12:07:15Z
Εὐθυμένης
2777
/* Αναφοράν */
37388
wikitext
text/x-wiki
[[Αρχείον:Africa in the world (red) (W3).svg|thumb|right|Η Αφρικήν σον χάρτεν τη κόσμονος]]
Η '''Αφρικήν''' εν δεύτερον τρανόν ήπειρον τη κόσμονος. Ο πληθυσμόν ατ'ς εν σα 900.000.000 τ' ανθρώπ'ς (2005)<ref>[https://web.archive.org/web/20080509144121/http://library.stanford.edu/africa/religion.html "World Population Prospects: The 2004 Revision"] ΟΗΕ (Τμήμαν Οικονομικών και Κοινωνικών Υποθεσίων)</ref> και βρέχεται ασόν [[Μεσόγειον θάλασσα|Μεσόγειον τη θάλασσαν]] σα βόρεια, τ' [[Ερυθρόν Θάλασσα|Ερυθρόν τη θάλασσαν]] σα βορειοανατολικά, τ' [[Ινδικόν Ωκεανός|Ινδικόν τ' ωκεανόν]] σα νοτιοανατολικά και τ' [[Ατλαντικόν ωκεανός|Ατλαντικόν τον ωκεανόν]] ση δύσαν. Με την [[Ευρώπην]] και την [[Ασίαν]] εντάμαν σχηματίζνε τον «''Παλαιόν τον Κόσμον''».
== Αναφοράν ==
<references />
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Africa|Η Αφρικήν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Αφρική|Η Αφρικήν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Africa|Χάρτες ασην Αφρικήν]]'''
* [http://allafrica.com/ Ιστότοπον: AllAfrica.Com]
* [https://web.archive.org/web/20081122150448/http://www.dmoz.org./Regional/Africa/ Open Directory Project: Αφρικήν]
* [http://africadatabase.com/ Contemporary Africa Database]
<br />
[[Κατηγορίαν:Γεωγραφίαν|Αφρικην]]
8xuutvf1041t81div7cc5jx8wovvhz3
Βέλγιον
0
148
36294
35915
2025-08-14T10:53:45Z
Jacques Ballieu
7789
36294
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Βέλγιον'''</big></big><br/>''Royaume de Belgique''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Belgium.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Great coat of arms of Belgium.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Belgium.svg|300px]]
|}
Το '''Βασίλειον τη Βελγί''' (σα γαλλικά: ''Royaume de Belgique'', σα ολλανδικά: Koninkrijk België, σα γερμανικά: Königreich Belgien) εν [[κράτος]] ση δύσαν τ' [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν τα [[Βρυξέλλας]] κι βασιλέας ατ' εν ο [[Φίλιππος τη Βελγί|Φίλιππον τη Βελγί]]. Η χώρα έχ' πληθυσμόν σα 11.250.585 τ' ανθρώπ'ς (2016), 11.570.762 τ' ανθρώπ'ς (2018), 11.825.551 τ' ανθρώπ'ς (2025).
== Γεωγραφίαν ==
Το Βέλγιον ευρισκάται σο Βόρειον τη θάλασσαν αφκά, σην [[Γερμανία|Γερμανίαν]], το [[Λουξεμβούργο|Λουξεμβούργον]], την [[Ολλανδία|Ολλανδίαν]] και την [[Γαλλία|Γαλλίαν]] απές. Έχ' τρανά πολιτείας την [[Αμβέρσα|Αμβέρσαν]], τη [[Γάνδη|Γάνδην]] και το [[Σαρλερουά]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:België - Belgique|Το Βελγίν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Βέλγιο|Το Βελγίν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Belgium|Χάρτες ασον Βελγίν]]'''
* [http://www.Belgium.be/ Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Βελγί]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Βέλγιον]]
[[Κατηγορίαν:Ευρώπη|Βέλγιον]]
[[Κατηγορίαν:Βέλγιον| ]]
8shszgt79dhgxto28cg4ctg2fhxxx2i
Βικιπαίδεια
0
149
36087
36058
2024-12-12T23:33:11Z
Wolverène
4171
36087
wikitext
text/x-wiki
[[Αρχείον:Wikimedia.png|thumb|right|140px|Το σήμα τ' ιδρυματί Wikimedia ντο 'κ εν' κερδοσκοπικόν]]
Με τη '''Βικιπαίδειαν''' (αγγλ. ''Wikipedia'') εφτάμε την προσπάθειαν να χτίζομε [[Διαδίκτυον|διαδικτυακήν]] εγκυκλοπαίδειαν, να καλλιεργούμε και να πλουταίνουμ' ατέν σην γλώσσανεμουν και σ' όλια τ' άλλα γλώσσας. Η λέξη «Βικιπαίδεια» εν συγκόλλησην ασό χαβαϊκόν τη λέξην «[[wiki]]» (''αλήγορον'') και τ' [[Ελλενικόν γλώσσα|ελλενικόν]] τη λέξην «εγκυκλοπαίδεια». Ατό η εγκυκλοπαίδεια γράφκεται και τρανείν απ' ατείντς π' θέλνε να εργάσκουνταν.
[[Κατηγορίαν:Βικιπαίδεια|*]]
lmq1ikoivzfmgvxsjli0dapnakkdb2j
Βικιπαίδεια/Αγορά
0
150
32901
32898
2016-06-14T11:00:24Z
Frhdkazan
5174
32901
wikitext
text/x-wiki
#REDIRECT [[Βικιπαίδεια:Αγορά]]
Αγαπητοί φίλοι και συμπατριώτες,
η καλή σας προσπάθεια για να έχει θετικά αποτελέσματα, θα πρέπει να υποστηρίζεται από επαρκείς φιλολόγους ποντίους ή και άλλους συμπατριώτες μας που γνωρίζουν καλή σύνταξη και γραμματική της ποντιακής, οι οποίοι θα πρέπει να προσκληθούν για να υποστηρίξουν την αξιαίπενη προσπάθειά σας (πχ. υπάρχει ο '''Πανελλήνιος Σύλλογος Ποντίων Εκπαιδευτικών''', επίσης αξιόλογοι επιστήμονες στην '''Επιτροπή Ποντιακών Μελετών''' κλπ με πολούς επαίοντες που θα μπορούσαν να συμβάλλουν στην διόρθωση της Ηλεκτρονικής Ποντιακής Εγκυκλοπαίδειας).
Τα λάθη Ως ΠΡΟς ΤΗΝ ΟΡΘΟΓΡΑΦΊΑ ΚΑΙ ΤΗΝ ΣΎΝΤΑΞΗ πάντως, οφείλω να ομολογήσω οτι είναι σοβαρά και θα πρέπει να τα προσέξετε, για να συντείνετε και εσείς σε μια καλύτερη βάση δεδομένων μιας γλώσσας που χάνετα (ειδικά ως προς την προφορά κατά την ανάγνωση. πχ ζζ κλπ).
Η Γραμματική Τοπχαρά (πλην της ιστορικής αξίας της πάντως), δεν νομίζω οτι μπορεί να συμβάλει ως προς την νοηματική και ετυμολογική κατανόηση της διαλέκτου μας.
Καλή δύναμη και καλή προσπάθεια!
Η κριτική όταν είναι γόνιμη και καλόπιστη πρέπει να εισακούεται.
Με πολύ εκτίμηση
Θεόφιλος Καστανίδης
απο τον Σύλλογο Ποντίων "ΑΡΓΟΝΑΥΤΑΙ-ΚΟΜΝΗΝΟΙ"
ΠΑΡΕ ΤΗΛΕΦΩΝΟ ΜΗΝ ΜΕ ΞΕΧΝΑΣ ΘΕΛΩ ΝΑ ΣΕ ΡΩΤΗΣΩ ΚΑΤΙ
e1zqtmp6j2oi7uql9pp2lwbvvq2vf5o
Βικιπαίδεια/Βοήθεια
0
151
4281
1273
2009-03-14T21:56:26Z
Abigor
163
Redirected page to [[Βοήθειαν:Περιεχόμενα]]
4281
wikitext
text/x-wiki
#REDIRECT [[Βοήθειαν:Περιεχόμενα]]
ii8hki0k9cwg8nclb9n1k7ph2h3t9tr
Βικιπαίδεια/Βοήθεια en
0
152
1275
1274
2009-03-06T14:59:30Z
MF-Warburg
53
1 revision: import from incubator
1275
wikitext
text/x-wiki
#REDIRECT [[Βικιπαίδεια:Βοήθεια en]]
40rsiqa2q11fpy4rk31vrian3esd057
Βικιπαίδεια/Δικαιώματα πνευματί
0
153
1277
1276
2009-03-06T14:59:30Z
MF-Warburg
53
1 revision: import from incubator
1277
wikitext
text/x-wiki
#REDIRECT [[Βικιπαίδεια:Δικαιώματα πνευματί]]
ozoj7c8yfp7d0bsi9tj2raq6s5f70br
Βικιπαίδεια/Ντο 'κ εν η Βικιπαίδεια
0
154
1279
1278
2009-03-06T14:59:31Z
MF-Warburg
53
1 revision: import from incubator
1279
wikitext
text/x-wiki
#REDIRECT [[Βικιπαίδεια:Ντο 'κ εν η Βικιπαίδεια]]
nivzkz7bb5n22e8qbl0fd0ugu6qij28
Βικιπαίδεια/Ντο εν η Βικιπαίδεια
0
155
1281
1280
2009-03-06T14:59:31Z
MF-Warburg
53
1 revision: import from incubator
1281
wikitext
text/x-wiki
#REDIRECT [[Βικιπαίδεια:Ντο εν η Βικιπαίδεια]]
c8khaq4m1jhlh3jmspyf2gobeqjmfqr
Βικιπαίδεια:GNU Free Documentation License
4
156
32483
31750
2015-08-04T22:06:38Z
YiFeiBot
4458
Ρομπότ: Μεταφέρω 2 σύνδεσμους interwiki, που τώρα παρέχονται από τα [[d:|Wikidata]] στο [[d:q5829664]]
32483
wikitext
text/x-wiki
<center>
<div class="boilerplate metadata" style="text-align:justify; background: #efefff; border: #9F9FFF 1px solid; padding:10px; width:90%;">
{{shortcut|[[ΒΠ:GFDL]]}}
<p>
[[Image:Heckert GNU white.png|80px|left|]]
Αφκά καικά ευρισκάται το γράψιμον τη '''GNU Free Documentation License''' ([[Άδεια Ελεύθερης Τεκμηρίωσης GNU|Άδεια Ελεύθερης Τεκμηρίωσης GNU]]). Αβούτον εκανονίζ' με ποίον τρόπον θα μεταχειρίσκουμες τα γραψίματα τη [[Βικιπαίδεια|Βικιπαίδειας]]. Επορείτε να δεαβάσετε πλέα πληροφορίας ση σελίδαν [[Βικιπαίδεια/Δικαιώματα πνευματί|Βικιπαίδεια:Δικαιώματα πνευματί]].<br />
<small>Αβούτο το αγγλικόν το γράψιμον εν τ' ασ' ούλτς σημαντικόν! Αν σ'άλλα γλώσσας εν αλλέτερον, αβούτον θα τερείτε! </small>
</p></div></center>
__NOTOC__
Version 1.2, November 2002
<pre>
Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
</pre>
==0. PREAMBLE==
The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.
This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
==1. APPLICABILITY AND DEFINITIONS ==
This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law.
A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.
A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.
The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none.
The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.
A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not "Transparent" is called "Opaque".
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only.
The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.
A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To "Preserve the Title" of such a section when you modify the Document means that it remains a section "Entitled XYZ" according to this definition.
The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.
==2. VERBATIM COPYING ==
You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and you may publicly display copies.
==3. COPYING IN QUANTITY ==
If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.
It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.
==4. MODIFICATIONS ==
You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:
* '''A.''' Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission.
* '''B.''' List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement.
* '''C.''' State on the Title page the name of the publisher of the Modified Version, as the publisher.
* '''D.''' Preserve all the copyright notices of the Document.
* '''E.''' Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.
* '''F.''' Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below.
* '''G.''' Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice.
* '''H.''' Include an unaltered copy of this License.
* '''I.''' Preserve the section Entitled "History", Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence.
* '''J.''' Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission.
* '''K.''' For any section Entitled "Acknowledgements" or "Dedications", Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein.
* '''L.''' Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles.
* '''M.''' Delete any section Entitled "Endorsements". Such a section may not be included in the Modified Version.
* '''N.''' Do not retitle any existing section to be Entitled "Endorsements" or to conflict in title with any Invariant Section.
* '''O.''' Preserve any Warranty Disclaimers.
If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.
You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.
You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.
==5. COMBINING DOCUMENTS ==
You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers.
The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.
In the combination, you must combine any sections Entitled "History" in the various original documents, forming one section Entitled "History"; likewise combine any sections Entitled "Acknowledgements", and any sections Entitled "Dedications". You must delete all sections Entitled "Endorsements."
==6. COLLECTIONS OF DOCUMENTS ==
You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.
==7. AGGREGATION WITH INDEPENDENT WORKS ==
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate.
==8. TRANSLATION ==
Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail.
If a section in the Document is Entitled "Acknowledgements", "Dedications", or "History", the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.
==9. TERMINATION ==
You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
==10. FUTURE REVISIONS OF THIS LICENSE ==
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.
= How to use this License for your documents =
To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:
<pre>
Copyright (c) YEAR YOUR NAME.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included in the section entitled "GNU
Free Documentation License".
</pre>
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the "with...Texts." line with this:
with the Invariant Sections being LIST THEIR TITLES, with the
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation.
If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.
-----
Copyright notice above.<br>
51 Franklin Street, Fifth Floor, Boston, MA 02110, USA<br>
Verbatim copying and distribution of this entire article is permitted in any medium without royalty provided this notice is preserved.
<div class="messagebox" style="width:100%;">
Contrary to any other marking or statement in this page, the above text of the license is '''NOT''' distributed under the GNU FDL.
</div>
[[Category:Βικιπαίδεια|GNU Free Documentation License]]
[[ro:GNU FDL]]
akoej5zr67ipji4ek9yq150f6twcgi5
Βικιπαίδεια:Νομς και συμβουλάς
4
157
33991
33964
2018-10-27T16:43:24Z
Wim b
3723
Ανάκληση των αλλαγών [[Special:Contributions/91.140.89.219|91.140.89.219]] ([[User talk:91.140.89.219|συζήτηση]]) επιστροφή στην προηγούμενη αναθεώρηση [[User:Addbot|Addbot]]
30959
wikitext
text/x-wiki
{{:Βικιπαίδεια: Πολιτική}}
Η [[Βικιπαίδεια|Βικιπαίδειαν]] εν έργον ομαδικόν και ίνεται για να χτίζομε έναν καλόν [[εγκυκλοπαίδεια|εγκυκλοπαίδειαν]]. Για την δουλείαν ντ'εφτάμε σην Βικιπαίδειαν έχομε '''τα νομς και τα συμβουλάς''', τα οποία επρέπ να ισιαύομε! Αν εφτάμε αλέτερα και ο καθαείς εφτάει άμον ντο θελ, έργον πα 'κ χτίζομε. Αβούτα τα νομς και συμβουλάς ακόμαν γράφκουνταν και το γράψιμον 'κ ετελέθεν. Άμαν ορισμένα νομς εποίκεν ατα επίσημα ο [[Χρήστες:Τςίμπον Ουέιλς|Τςίμπον Ουέιλς]] (τέρεν και [http://mail.wikimedia.org/pipermail/wikien-l/2002-November/000083.html αβούτον το γράψιμον σο Wikien-l] και [[:w:en:User:Jimbo_Wales/Statement_of_principles|Jimbo Wales/Statement of principles]]).
== Κεντρικά νομς τη Βικιπαίδειας ==
Αβούτα τα νομς χρειάσκουνταν για χτίζομε την Βικιπαίδειαν και 'κ αλλάζνε.
* '''Η Βικιπαίδεια εν εγκυκλοπαίδεια:''' Μεταχειρίσκουμες τη Βικιπαίδειαν για να εφτάμε εγκυκλοπαίδειαν μαναχόν. Δεάβασον [[Βικιπαίδεια/Ντο 'κ εν η Βικιπαίδεια|ντο 'κ εν η Βικιπαίδεια]].
* '''Ουδετερότητα:''' Γράψον [[Βικιπαίδεια/Ουδετερότητα|ουδέτερα]]! Τα ιδέας και τα γεγονότα γράψον ατα με τρόπον που δέχκουνταν ατα ατοί π' ερέχκουνταν ατα και ατοί που 'κ ερέχκουνταν ατα. Αδακά εννοούμε να δέχκουνταν ατα με λογικήν και θίχως φανατισμόν.
* '''Ελεύθερον γόμομαν:''' Η Βικιπαίδειαν εν ανοιχτόν εγκυκλοπαίδεια και δημοσιεύκεται με τα νομς τη [[GNU Free Documentation License]]. Βαλέστε γράψιμον και φωτογραφίας σην Βικιπαίδειαν όνταν κατέχετε τα [[Βικιπαίδεια/Δικαιώματα πνευματί|δικαιώματα πνευματί]] μαναχόν! Αν εφτάτε αλέτερα, το έργον θα εςς προβλήματα πολλά τρανά.
* '''Καμίαν 'κ εφτάτε προσωπικόν επίθεση:''' Οι χρήστες τη Βικιπαίδειας είναι ασον κόσμον όλον κι έχνε αλέτερον ασο τεσόν το νούνιζμαν. Θα καλατζέβουμε, καμίαν 'κ θα υβρίσκουμες.
== Ποίος οράζ' ατα; ==
'''Εσύ''' γραφς τη Βικιπαίδειαν! Αρχισυντάκτην (ρεντακτόρης) αδαπές πα 'κ εςς. Ο χρήστες τερεί τα [[Ειδικόν:Recentchanges|υστερνά αλλαγάς]] κι αν εβρεί γραφόμενα ντο 'κ είναι σωστά ή έχνε μορφήν κακόν, κι αν εςς σον νούνατ' τα σωστά, εφτάει ατα κι άλλο καλλίον. Αδαπές ο καθαείς εν συνγραφέας και αρχισυντάκτες.
== Τέρεν και ==
* [http://wikimediafoundation.org/wiki/Policies Policies] (αγγλικά) – Βασικά νομς για όλεα τα Βικιπαίδειας
<div id="source">
{| class="toccolours" style="border: 1px solid #aaaaaa; background-color: #f9f9f9; padding: 5px; margin-top: 1em; margin-bottom: -0.5em; clear: both; width:100%;"
| width="30px"| [[Εικόναν:Wikipedia-logo.png|25px|]]
| Αβούτο το γράψιμον επαίραμε και μεταφράσαμ'ατο ασο [[:de:|γερμανικόν τη Βικιπαίδειαν]], ασ' άρθρον [[:de:Wikipedia:Grundprinzipien|Wikipedia:Grundprinzipien]] (άδεια [[Άδεια Ελεύθερης Τεκμηρίωσης GNU|GNU FDL]]). (<span class="plainlinks">[http://de.wikipedia.org/w/index.php?title=Wikipedia:Grundprinzipien&action=history ιστορικόν/συνγραφιάντ]</span>).
|}</div>
[[Κατηγορίαν:Βικιπαίδεια|Νομς και συμβουλας]]
[[dv:ވިކިޕީޑިޔާ: ފަސް ތަނބު]]
[[ml:വിക്കിപീഡിയ:പഞ്ചസ്തംഭങ്ങള്]]
a2skr1nmw1ka615pu6pj4orff0xyrrn
Βικιπαίδεια:Πολιτική
4
158
4109
3649
2009-03-10T01:51:03Z
Sinopeus
168
σνδ
4109
wikitext
text/x-wiki
{| width="25%" cellpadding="0" style="padding: 0.3em; float:right; margin-left:15px; border: 1px solid #FFE7BA; background:#FFFFE0; text-align:center; font-size:95%;"
| style="background: #FFE7BA; padding: 3px 5px; text-align:center;" |'''[[Βικιπαίδεια: Νομς και συμβουλάς|Πολιτική τη Βικιπαίδειας]]'''
|-
|style="padding: 0.3em; font-family: sans-serif; font-size: 0.9em; background-color: #FFE7BA"| Βασικά
|-
|style="padding: 0.3em; line-height: 1.5em"|
[[Βικιπαίδεια:Ντο εν η Βικιπαίδεια|Ντο εν η Βικιπαίδεια]] <br/>
[[Βικιπαίδεια:Ντο 'κ εν η Βικιπαίδεια|Ντο 'κ εν η Βικιπαίδεια]] <br/>
[[Βικιπαίδεια:Δικαιώματα πνευματί|Δικαιώματα πνευματί]] <br/>
[[Βικιπαίδεια:Βοήθεια|Βοήθεια]]
|}
l1qk81qflmw27qci8spqgjx6q0ew4nu
Βικιπαίδεια:Αγορά/Αρχείον 2009
4
159
35276
10283
2022-12-17T20:39:39Z
Εὐθυμένης
2777
([[c:GR|GR]]) [[File:Tr ponto2.gif]] → [[File:Flag of Pontus (2).svg]]
35276
wikitext
text/x-wiki
__NEWSECTIONLINK__
<ul><li>'''pnt:'''
{| class="plainlinks" width="50%" align="center" border="0" cellpadding="2" cellspacing="2" style="margin-bottom:0.5em; background:#FFF; font-size:1.2em; text-align:center;"
| [{{fullurl:Wp/pnt/Βικιπαίδεια/Αγορά|action=edit§ion=new}} Αρχινέστε γράψιμον σην αγοράν<br>Arhineste ğrapsimon sin ağoran]
|}
{| align="right" style="background:#FFF5EE; margin:0 0 0.5em 1em;" id="toc" width="220px"
|-
|colspan="2" align="center" | [[Image:Diogenes looking for a man - attributed to JHW Tischbein.jpg|center|200px]]
|-
|colspan="2" align="center" | <big>'''Αγορά'''</big><br />
----
|-
|style="background:#EEDFCC;" colspan="2" align="center"| '''Χρήσιμα'''
|-
|colspan="2" align="center"|
'''[[Βικιπαίδεια:Αδακά ψηφίζομεν για νοματάντς|Αδακά ψηφίζομεν για νοματάντς και γιαρίφς]]'''<br />
[[Αρχικόν σελίδα|Αρχικόν σελίδαν]]<br /> [[Βικιπαίδεια|Βικιπαίδεια]]<br /> [[Βικιπαίδεια/Ντο εν η Βικιπαίδεια|Ντο εν η Βικιπαίδεια]]<br />[[Βικιπαίδεια/Ντο 'κ εν η Βικιπαίδεια|Ντο 'κ εν η Βικιπαίδεια]] <br /> [[Βικιπαίδεια/Βοήθεια|Βοήθεια]] <br /> [[Βικιπαίδεια/Δικαιώματα πνευματί|Δικαιώματα πνευματί]]<br />[irc://irc.freenode.net/wikipedia-pnt Παρακάθ σο IRC]
|}
<div style="background:#EEDFCC; text-align:left; margin:0px; padding:3px;">
<span style="font-size:bigger;">'''Χαιρετίας και καλωσόρεμαν σ' όλεα τα Βικιπαιδία!'''</span>
</div>
<div style="background:#FFF5EE; padding:2px; margin-top:2px;">
Οι παλιοίεμουν σ' αρχαίον τ' ελλενικόν την γλώσσαν έλεγαν «αγοράν» τον τόπον που εποίνανε τα μουχαμπέτε και τα καλατσίασατουν. Αέτς πα, όλ εμείστουν θα καλατσέβουμε αδά σην αγοράνεμουν. Σον αρχαίον την αγοράν ο Διογένες ο Σινωπέας αραεύκουτον τ' ανθρώπ'ς (εικόνα). Εμείστουν αδά πα θα ευρίσκουμ' ατείντζ.
Αρχινέστε γράψιμον [{{fullurl:{{FULLPAGENAME}}|action=edit§ion=new}} αφκά καικά] και βαλέστε την '''υπογραφήνεσουν''': <nowiki>~~~~</nowiki>.
</div>
</li>
<li>'''en:''' Requests for the [[m:bot|bot]] flag should be made on this page. This wiki uses the [[m:bot policy|standard bot policy]], and allows [[m:bot policy#Global_bots|global bots]] and [[m:bot policy#Automatic_approval|automatic approval of certain types of bots]]. Other bots should apply below.</li>
</ul>
<hr size="5px" noshadow>
==Έγκριση==
'''Τερέστεν [http://incubator.wikimedia.org/w/index.php?title=Template:Wp/pnt/%CE%A0%CF%81%CF%8C%CF%84%CF%85%CF%80%CE%BF%CE%BD:%CE%A7%CE%B1%CF%80%CE%AD%CF%81%CE%B1%CE%B9&diff=263154&oldid=262981 αδακά] παίδια. Επήραμεν την έγκρισην.''' --[[User:Makedonier|Μακεδόνας]] 14:36, 8 January 2009 (UTC)
==Final localisation==
Παιδιά πρέπει να δηλώσουμε τα παρακάτω:
1) Το όνομα της ιστοσελίδας το οποίο πρέπει να είναι σαν το αγγλικό Wikipedia δηλαδή υποθέτω Βικιπαίδεια
2) Την περιοχή ονόματος για άρθρα που είναι συνήθως ίδια με το όνομα της ιστοσελίδας δηλαδή πάλι Βικιπαίδεια (για παράδειγμα δείτε την αγορά η οποία όταν μετακινηθούμε στην ιστοσελίδα μας θα γίνει Βικιπαίδεια:Αγορά
3) Την περιοχή συζήτησης της Βικιπαίδειας (Wikipedia_talk) δηλαδή: κάθε άρθρο έχει τη συζήτησή του έτσι λοιπόν τα άρθρα που θα είναι π.χ. Βικιπαίδεια:Αγορά θα έχουν και συζήτηση η οποία προτείνω να είναι ως Καλάτσεμαν_Βικιπαίδειας δηλαδή θα γίνεται σαν Καλάτσεμαν_Βικιπαίδειας:Αγορά
Αυτές οιπροτάσεις που κατέθεσα είναι οι πιο λογικές σύμφωνα με την μετάφραση που γίνεται συνήθως ωστόσο εγώ δεν μιλάω τα ποντιακά όπως εσείς οπότε καταθέτω εδώ την πρόταση. Αν μέχρι το πολύ αύριο (γιατί πρέπει να παραδωθεί άμεσα η μετάφραση) δεν υπάρξει αμιά ένσταση θα δώσω τις προτάσεις μου για τις τελευταίες μεταφράσεις.--[[User:ZaDiak|ZaDiak]] 17:03, 10 January 2009 (UTC)
:Δεν ξέρω αν επικοινώνησες ήδη μαζί τους ή αν κατέθεσες ήδη τις προτάσεις σου, αλλά σε κάθε περίπτωση πιστεύω ότι είναι σωστές (οι δύο πρώτες τουλάχιστον) και ότι σήμερα θα πρέπει να κατατεθούν οπωσδήποτε. Αυτή η δήλωση φαίνεται να είναι το τελευταίο βήμα πριν το άμεσο άνοιγμα του project. Η σημαντική ένσταση μου είναι η εξής: το τρίτο μήνυμα θα πρέπει να ονομαστεί <span style="color:blue">Βικιπαίδεια_καλάτσεμαν</span> κατά αντιστοιχία με την ελληνική Βικιπαίδεια: [[w:el:Βικιπαίδεια_συζήτηση:Βοήθεια]]. Δες και τον γαλλικό τίτλο [[w:fr:Discussion Wikipédia:Le Bistro]] και όχι Discussion_''de''_''la''_Wikipédia.<br />--[[User:Omnipaedista|Omnipaedista]] 07:17, 11 January 2009 (UTC)
::Δεν ξέρω τόσο καλά ποντιακά όσο εσύ αλλά να σου σημειώσω κάτι: Στο βικιεπιστήμιο το έχουμε Συζήτηση Βικιεπιστημίου και στο Βικιλεξικό Συζήτηση:Βικιλεξικό. Σαν συμβουλή στο λέω μην παίρνεις ότι έχει η Βικιπαίδεια σαν "νόμο" γιατί δημιουργήθηκε πριν πολύ καιρό. Ωστόσο η γνώση μου στα ποντιακά δεν είναι και τόσο καλή κι έτσι πιστεύω ότι η πρότασή σου είναι καλύτερη από τη δική μου. Οπότε μέχρι το απόγευμα αν δεν έχει κάποιος καμιά καλύτερη πρόταση θα καταθέσω τη δική σου για το τρίτο μέρος. Φιλικά.--[[User:ZaDiak|ZaDiak]] 10:54, 11 January 2009 (UTC)
:::Λοιπόν κατέθεσα τις 2 πρώτες προτάσεις μου και στην τρίτη κατέθεσα του omnipaedista.--[[User:ZaDiak|ZaDiak]] 17:59, 11 January 2009 (UTC)
::::Παρεμπιπτόντως, σ'ευχαριστώ για την άμεση ειδοποίηση περί της fnl. lοclsn. Να σημειώσω, για την ιστορία, ότι το καλάτσεμαν βικιπαίδειας ήταν μια χαρά από γραμματικής άποψεως, απλά δε συμβάδιζε με τη σύμβαση (γιατί περί σύμβασης πρόκειται) των πιο παλιών βικιπαιδειών όπως αυτών που ανέφερα. Αναμένω να ξανασυνεργαστούμε και σαν ''χρηστ'' της νέας κοινότητας! --[[User:Omnipaedista|Omnipaedista]] 11:54, 12 January 2009 (UTC)
ντο να λέω 'κ ξέρω... μπράβο παιδιά (για την έγκριση). :-) ZaDiak, καλά έκανες. :-) --[[User:Sinopeus|Sinopeus]] 22:40, 11 January 2009 (UTC)
==Cappadocian==
Hello friends.
I am a romance-speaker but, in the last years, I have begun to get interested in hellenic-languages, from Myceanean to contemporary (I am thinking about taking lessons in modern greek).
As you know, I have been one of the supporters of Grc-pedia, since I discovered this project. It is positive that hellenic-family languages are as well represented in wiki projects, as romance family is.
I am very curious, about cappadocian since I have learned about it. I know that is an extint (or nearly extint) hellenic language, with a special grammatical structure and with indoeuropean roots but morphologically not indoeuropean.
I think for it a request for wikisource is the best. [[User:Crazymadlover|Crazymadlover]]
:Well your idea is nice but I think you won't be able to form a community because only a few people can speak the language. I live in greece but I don't know anybody who speaks the language.--[[User:ZaDiak|ZaDiak]] 15:32, 11 January 2009 (UTC)
::This is the reason that I suggest Wikisource. Wikisource can be edited by a person. It just needs a lingüist (an expert), in this case. [[User:Crazymadlover|Crazymadlover]]
:::I have suggested above the creation of pontic lemmas on the english wiktionary. Something similar could be feasible for cappadocian lemmas as well; thanks for (indirectly) giving me this idea. Regarding texts in cappadocian, it will be very hard to convince anyone that they belong to any Wikimedia website other than el.wikisource.org. --[[User:Omnipaedista|Omnipaedista]] 12:00, 13 January 2009 (UTC)
== Congratulations==
My congratulations for the approval. [[User:Crazymadlover|Crazymadlover]]
:Thanks! (on behalf of the ''pnt'' community) --[[User:Omnipaedista|Omnipaedista]] 12:00, 13 January 2009 (UTC)
==Tsakonian, too==
Exploring Incubator Ι have found the test page of [[incubator:Wp/tsd/Main_Page|Tsakonian wikipedia]]
[[User:Crazymadlover|Crazymadlover]]
:You did well by raising the hellenic languages issues in a public Wikimedia website; colloquies on this kind of projects rarely occur publically or if they do, the discussion isn't sober (and of course it is usually in modern Greek and only grecophones can participate in the argumentation). However, since this is a long discussion let's continue it in my [[User_talk:Omnipaedista|talk-page]]. --[[User:Omnipaedista|Omnipaedista]] 11:25, 16 January 2009 (UTC)
==ΕΠΙΚΟΙΝΩΝΙΑ ΣΤΟ ΤΣΑΤ==
Γεια χαρά σε όλους σας.
*Σας ευχαριστώ για τις συνεισφορές σας και εγώ από τη πλευρά μου.
*Είμαι ιδιαίτερα χαρούμενος και περήφανος για το κατόρθωμα μας.
*Δημιουργήσαμε τη Ποντιακή Βικιπαίδεια.
Θα σας παρακαλούσα αν έχετε τη καλοσύνη να έρθουμε μιά μέρα κοινής αποδοχής μέσα στο Σαβατοκύριακο σε επικοινωνία.
Σκέφτομαι να δημιουργήσω ένα μπλόγκ για τη Ποντιακή Βικιπαίδεια, στο οποίο θα έχουμε όλοι μας τη δυνατότητα σύνταξης άρθρων/κειμένων και τη προσθήκη ειδήσεων και πληροφοριών.
Επειδή όλο αυτό το καιρό που εκπροσωπούσα για επικοινωνιακούς λόγους την κοινότητα μας στα διάφορα συνέδρεια και εκδηλώσεις, ήρθα σε επαφή με πολύ κόσμο, όπως σας έχω ήδη αναφέρει και μέσω των μέηλ που λάβατε, θα σας πρότεινα να συνενοηθούμε μεταξύ μας για να βγάλουμε ένα δελτίο τύπου, ουτοσώστε να ενημερώσουμε και τους ανθρώπους αυτούς καθώς τη κοινή γνώμη (για το πως θα σας εξηγήσω...).
Επίσης θα μπορούσαμε να συζητήσουμε και κάποια διαδικαστικά θέματα, όπως: διαχειριστές, πλάνο κτλ.
:ΠΟΙΑ ΗΜΕΡΑ ΚΑΙ ΩΡΑ ΣΑΣ ΒΟΛΕΥΕΙ ΝΑ ΤΑ ΠΟΥΜΕ ([irc://irc.freenode.net/wikipedia-pnt IRC]);
:ΜΗΠΩΣ ΝΑ ΤΟ ΚΑΝΟΝΙΣΟΥΜΕ ΠΡΩΙΝΕΣ ΩΡΕΣ ΣΑΒΒΑΤΟΥ Ή ΚΥΡΙΑΚΗΣ;
:ΜΗΠΩΣ ΜΕΣΗΜΕΡΑΚΙ;
:ΜΗΠΩΣ ΑΡΓΑ ΤΟ ΒΡΑΔΥ;
:ΘΑ ΣΑΣ ΠΑΡΑΚΑΛΕΣΩ ΝΑ ΤΟ ΚΑΝΟΝΙΣΟΥΜΕ ΤΟ ΣΥΝΤΟΜΟΤΕΡΟ.
:ΣΑΣ ΕΥΧΑΡΙΣΤΩ ΠΟΛΥ ΠΑΙΔΙΑ ΚΑΙ ΕΥΧΟΜΑΙ Ο ΘΕΟΣ ΝΑ ΣΑΣ ΕΧΕΙ ΟΛΟΥΣ ΚΑΛΑ!!! --[[User:Makedonier|Μακεδόνας]] 03:44, 16 January 2009 (UTC)
::Κυριακή βράδυ μου κάνει το νωρίτερο επειδή μέχρι Κυριακή απόγευμα φιλοξενώ συγγενείς από Ελλάδα. Μέχρι τότε είμαι εδώ όποτε τύχει. <br>
::Φυσικά είσαι ελεύθερος να δημιουργήσεις το blog που λες, αλλά στην φάση που βρισκόμαστε το θεωρώ περιττό. Καλά θα ήταν να φροντίσουμε ο κόσμος να έρχεται στην ίδια την pnt.wiki, η κοινότητα της οποίας προς το παρόν ήδη είναι πολύ πολύ μικρή. Θα προτιμούσα από το να γράφει ο κόσμος σε διάφορα blog '''για''' την pnt.wiki (όπως εδώ και λίγους μήνες γίνεται ήδη από άγνωστους φίλους, που δεν έχουν γράψει λέξη εδώ), καλύτερα να '''συμβάλλει ενεργά στην δημιουργία της'''. Φοβάμαι πως wiki από εδώ, blog από εκεί, θα κουράσουμε τον κόσμο πριν αρχίσει να ασχολείται καν. Είμαστε ελεύθεροι ο κάθε ένας να δημιουργήσει ιστολόγιο ως υποσελίδα της σελίδας χρήστη, όπως κάνουν σε όλες τις Βικιπαίδειες (π.χ. [[:el:Χρήστης:Badseed/Αχριστολόγιο]], με την ευκαιρία διαβάστε «τι δεν είναι οι διαχειριστές» ;-). Ακόμη θα μπορούσαμε να δημιουργήσουμε '''εντός της pnt.wiki''' δελτίο τύπου του είδους [[:de:Wikipedia:Kurier]]. Είμαι πρόθυμος να βοηθήσω σε αυτά. Θα ήθελα όμως ο κόσμος που ενδιαφέρεται για την pnt.wiki να πηγαίνει '''ακριβώς εκεί''', μαζί με ότι έχει να προσφέρει. --[[User:Sinopeus|Sinopeus]] 12:15, 16 January 2009 (UTC)
==Συνάντηση Σαββατοκύριακου==
Δείτε τι απάντησαν παρακάτω, οι αγαπητοί φίλοι-μέλη της κοινότητος:
*[[User:Consta|Χρήστης '''Consta''']] [http://incubator.wikimedia.org/w/index.php?title=User_talk:Makedonier&diff=264502&oldid=264469 '''είπε ότι:'''<br> Eίμαι σύμφωνος με την ιδέα. Λίγο δύσκολο για μένα, γιατί θα αρχίσει η εξεταστική μου και προετοιμάζομαι πυρετοδώς (λόγω εξαιρετικά ευρείας ύλης εξετάσεων). Ίσως καταφέρω να ξεκλέψω λίγο χρόνο το Σάββατο (θα προσπαθείσω να το σιγουρέψω) το πρωί κατα τις 11.30-12.00. Δυστυχώς δεν μπορώ να βρω άλλο κενό αν και θέλω πάρα πολύ να συμμετάσχω στη συζήτηση. Πάντως είμαι σύμφωνος για τα περί ιστολόγιου(μπλοκ) ποντιακής βίκι και περί δελτίου τύπου νομίζω ό,τι είναι πολύ καλες ιδεές για το νέο μας εγχείρημα. Αν δεν μπορέσω τελικά ελπίζω να μου πείτε τι έγινε - τι έχει αποφασιστεί!]
*O [[User:ZaDiak|Χρήστης '''ZaDiak''']] [http://incubator.wikimedia.org/w/index.php?title=User_talk:ZaDiak&diff=prev&oldid=264494 '''είπε ότι:'''<br> Το Σαββατοκύριακο όποτε και να κανονίσετε θα είμαι ελεύθερος αρκεί να μου το πείτε από πιο πριν για να ξέρω!]
*O [[User:Omnipaedista|Χρήστης '''Omnipaedista''']] [http://incubator.wikimedia.org/w/index.php?title=User_talk:Omnipaedista&diff=prev&oldid=264528 '''είπε ότι:'''<br> Mέχρι την Κυριακή, εκτός απροόπτου, θα είμαι διαθέσιμος!]
*O [[User:Sinopeus|Χρήστης '''Sinopeus''']] -που είναι και ο 1ος προσωρινός διαχειριστής- [http://incubator.wikimedia.org/w/index.php?title=Wp/pnt/%CE%92%CE%B9%CE%BA%CE%B9%CF%80%CE%B1%CE%AF%CE%B4%CE%B5%CE%B9%CE%B1:%CE%91%CE%B3%CE%BF%CF%81%CE%AC&diff=prev&oldid=264497 '''είπε ότι:'''<br> Κυριακή βράδυ μου κάνει το νωρίτερο επειδή μέχρι Κυριακή απόγευμα φιλοξενώ συγγενείς από Ελλάδα. Μέχρι τότε είμαι εδώ όποτε τύχει!]
*Ο [[User:Asteraki|Χρήστης '''Asteraki''']] , θα εκπροσωπηθεί -και θα ενημερωθεί- από εμένα.
*Τέλος, ο συντάξας αυτού του μυνήματος [[User:Makedonier|Χρήστης '''Makedonier''']] -που είναι και ο 2ος προσωρινός διαχειριστής- σας ενημερώνω ότι θα είμαι στο [irc://irc.freenode.net/wikipedia-pnt IRC-CHAT] και το Σάββατο και τη Κυριακή.
Έτσι, σύμφωνα με τα παραπάνω προτείνω να γίνουν 2 συναντήσεις στο [irc://irc.freenode.net/wikipedia-pnt IRC-CHAT] λόγω μη εναρμονισμένου ελεύθερου χρόνου. δείτε:
=== 1η Συνάντηση το Σάββατο στις 12:00 ώρα Ελλάδος ===
*[[User:Consta|Χρήστης '''Consta''']] (θέλει πολύ να είναι παρών, αν και δεν έχει ελευθερία χρόνου !!!).
*O [[User:ZaDiak|Χρήστης '''ZaDiak''']] (θα ενημερωθεί αμέσως από μένα μέσω κινητού !!!).
*O [[User:Omnipaedista|Χρήστης '''Omnipaedista''']] (θα μας τιμήσει με τη παρουσία του !!!).
*[[User:Makedonier|Χρήστης '''Makedonier''']] (θα εκπροσωπό και το [[User:Asteraki|Χρήστη '''Asteraki''']] !!!).
:Σημ.: [[User:Sinopeus|Χρήστης '''Sinopeus''']] θα είναι δικαιολογημένα απών. Ωστόσο προτίθεμε να τον ενημερώσω -για τη Σαββατιάτικη συζήτηση μας- κατά τα μεσάνυχτα της Κυριακής (δείτε παρακάτω. Ενώ θα είμαι μέσα από τις 23:30 ώρα Ελλάδος, δηλαδή 22:30 ώρα Γερμανίας) που θα έχει μάλλον χρόνο.
=== 2η Συνάντηση τη Κυριακή στις 23:30 ώρα Ελλάδος ===
*O [[User:Sinopeus|Χρήστης '''Sinopeus''']].
*[[User:Makedonier|Χρήστης '''Makedonier''']] (θα εκπροσωπώ και το [[User:Asteraki|Χρήστη '''Asteraki''']].)
*[[User:ZaDiak|Χρήστης '''ZaDiak''']]
:Σημ.: Αν θέλει να συμμετέχει και κάποιος αλλος και τότε στη συζήτηση-ενημέρωση με τον Sinopeus, μπορεί ευχαρίστως να το κάνει. '''Ευχαριστώ.''' --[[User:Makedonier|Μακεδόνας]] 07:25, 17 January 2009 (UTC)
OK --[[User:Sinopeus|Sinopeus]] 16:49, 17 January 2009 (UTC)
== Admin pnt.wiki ==
Φίλοι, πήραμε την έγκριση και η ποντιακή Βικιπαίδεια θα γίνει πραγματικότητα. Συνεπώς η «θητεία» μου ως προσωρινός διαχειριστής της δοκιμαστικής ΒΠ εδώ στο incubator σύντομα θα λήξει. Για το λόγο αυτό προτείνω να διεξαχθεί ψηφοφορία για την παραχώρηση δικαιωμάτων διαχειριστή (νοματέα) στην νέα ΒΠ.
Η ψηφοφορία θα πραγματοποιηθεί σε υποσελίδα της αγοράς, που σύντομα θα δημιουργήσω. Ο κάθε χρήστης της κοινότητας μπορεί να προτείνει όποιον θέλει. Σκεφτείτε και ετοιμάστε λοιπόν τις προτάσεις σας. Μόλις δημιουργήσω την υποσελίδα, θα σας ενημερώσω εδώ. --[[User:Sinopeus|Sinopeus]] 02:05, 19 January 2009 (UTC)
Ή μάλλον κάντε τις προτάσεις σας εδώ και αφού συγκεντρώσουμε υποψήφιους και δεχτούν αυτοί, θα διεξαχθούν εκλογές στον ανάλογο χώρο. Ακούω τις προτάσεις σας. --[[User:Sinopeus|Sinopeus]] 11:13, 19 January 2009 (UTC)
:Έμορφα!!! Ως ο δεύτερος χρονικά [http://incubator.wikimedia.org/wiki/Special:ListUsers/test-sysop προσωρινός διαχειριστής της δοκιμαστικής ποντιακής ΒΠ], θα συμφωνήσω με τη προτροπή του [[User:Sinopeus|Sinopeua]] για ψηφοφορία δικαιωμάτων διαχειριστή και θα κάνω μάλιστα και την αρχή, κάνωντας τη πρώτη πρόταση.
:'''Προτείνω λοιπόν:''' (αν και οι ίδιοι βέβαια συμφωνούν και κατά αλφαβητική σειρά)
*Για τα δικαιωμάτα γραφειοκράτη διαχειριστή (Buros):
:ZaDiak
:<s>Makedonier</s> --[[User:Makedonier|Μακεδόνας]] 16:09, 23 January 2009 (UTC)
:<s>Sinopeus</s> --[[User:Makedonier|Μακεδόνας]] 16:09, 23 January 2009 (UTC)
*Για τα δικαιωμάτα διαχειριστή (Admins):
:Makedonier
:Omnipaedista
:Sinopeus
:<s>ZaDiak (ή αν δε θέλει, τότε για τα δικαιωμάτα προσωρινού διαχειριστή <Temp admin>)</s> --[[User:Makedonier|Μακεδόνας]] 16:09, 23 January 2009 (UTC)
Δηλαδή προτείνω 2 για γραφειοκράτες και 4 για διαχειριστές.
Σας ευχαριστώ θερμά. --[[User:Makedonier|Μακεδόνας]] 12:50, 19 January 2009 (UTC)
Συμφωνώ με την παραπάνω πρόταση όμως δε νομίζω ότι επιτρέπεται το ίδιο πρόσωπο να είναι συγχρόνως νοματέας και γραφειοκράτης (γραφειοκράτης πως λέγεται στα ποντιακά;)--[[User:Consta|Consta]] 13:48, 19 January 2009 (UTC)
Συμφωνώ κι εγώ. Καλό το ερώτημα σχετικά με τον γραφειοκράτη. Τί λέτε οι άλλοι; --[[User:Sinopeus|Sinopeus]] 16:15, 19 January 2009 (UTC)
:Όταν λες δεν επιτρέπεται εννοείς ότι δεν συμφωνείς; Γιατί εγώ π.χ. στο ΒΕ είμαι και επιστάτης και γραφειοκράτης.--[[User:ZaDiak|ZaDiak]] 16:54, 19 January 2009 (UTC)
*{{Support}} με τη πρόταση του Makedonier και την επισήμανση του ZaDiak. Δε βρίσκω το λόγο να μην επιτρέπεται, αφού ήδη γίνεται το ίδιο και στο ΒΕ. --[[User:Asteraki|Asteraki]] 10:53, 20 January 2009 (UTC)
*{{Support}} και εγώ τελικά. Για το διπλό πόστο, έχω να πω ότι εἰναι και θέμα του ποιος έχει τον χρόνο και την διάθεση να φροντίζει τακτικά τα "διοικητικά" του project. --[[User:Omnipaedista|Omnipaedista]] 22:36, 21 January 2009 (UTC)
Οπότε μετά από το πέρας της χρονικής διάρκειας για τις προτάσεις, θα παρακαλέσω το [[User:ZaDiak|Χρήστη '''ZaDiak''']] να οργανώσει τις εκλογες στη παρακάτω σελίδα:
::<big>'''[[Βικιπαίδεια:Αδακά ψηφίζομεν για νοματάντς|Βικιπαίδεια:Αδακά ψηφίζομεν για νοματάντς]]'''</big> --[[User:Makedonier|Μακεδόνας]] 16:09, 23 January 2009 (UTC)
== Άλλη σημαία ==
Δείτε βρήκα μια αλλη έκδοση της ποντιακής σημαίας [[File:Flag of Pontus (2).svg|80px]]
Αν σας αρέσει μπορούμε να την αλλάξουμε!--[[User:Consta|Consta]] 14:14, 19 January 2009 (UTC)
:Είναι όντως πιο όμορφη. Εάν η σημαία προορίζεται για το άρθρο «Πόντος» ή «Δημοκρατία του Πόντου», πολύ καλά. Ελπίζω όμως να μην προορίζεται για «σημαία της ποντιακής ΒΠ». --[[User:Sinopeus|Sinopeus]] 14:37, 19 January 2009 (UTC)
::Μπράβο σου Consta για την εύρεση της σημαίας. Ωστόσο θα συμφωνήσω με το σχόλιο του Sinopeus. --[[User:Asteraki|Asteraki]] 10:53, 20 January 2009 (UTC)
:Εσέγκα'τεναν σο άρθρον [[Πόντος]]. 1917 μέχρι 1919, σωστά; Έτσι είχαμε πει κάποτε (βλ. παραπάνω). Όποιος έχει στη διάθεση του ανάλογη βιβλιογραφία, παρακαλώ να το τσεκάρει και να αναφέρει την βιβλιογραφική πηγή. --[[User:Sinopeus|Sinopeus]] 11:37, 20 January 2009 (UTC)
== Πρώτη Παμποντιακή Βικιπαιδική Συνάντηση ==
Πραγματοποιήσαμε το βράδυ της Κυριακής συνάντηση στο τσατ. Σε αυτή τη συνάντηση αποφασίστηκε:
#Να εφαρμόσουμε μια ενιαία ορθογραφία η οποία συμφωνήθηκε να είναι η πρόταση του Όμνι (έτσι θα σε φωνάζω από εδώ και πέρα για συντομία)
#Αποφασίστηκε να γίνουν εκλογές για την εκλογή των μελλοντικών πόστων που θα έχει η βικιπαίδεια όταν δημιουργηθεί
#Να κυκλοφορήσει ένα δελτίο τύπου στο οποίο να γίνεται πληροφόρηση ότι εγκριθήκαμε
#Να δημιουργηθεί ένα ποντιακό μπλογκ για τη βικιπαίδεια
--[[User:ZaDiak|ZaDiak]] 14:18, 19 January 2009 (UTC)
== Εκλογές ==
Παιδιά έγραψα στη λίστα ηλεκτρονικών μηνυμάτων του Ιδρύματος για τις εκλογές μας. Επίσης ειδοποίησα κι έναν φίλο μου τον GerardM μέλος της language subcommitee (αυτός μου πρότεινε να το δημοσιεύσω και στη λίστα) ο οποίος αφού ψήφισε δημοσίευσε και στο [http://ultimategerardm.blogspot.com/2009/01/pontic-wikipedia.html ιστολόγιό] του για τις εκλογές μας. Όποιος θέλει να δει το μήνυμα μπορεί εφόσον είναι εγγεγραμμένο μέλος στη λίστα.--[[User:ZaDiak|ZaDiak]] 14:26, 27 January 2009 (UTC)
== Τοπχαράς ==
Έχω ένα μέρος της γραμματικής του Τοπχαρά σε ηλεκτρονική μορφή. Όσοι τη θέλετε ας μου στείλετε μήνυμα τι ώρα να συναντηθούμε στο τσατ να του δώσω το αρχείο.--[[User:ZaDiak|ZaDiak]] 18:15, 28 January 2009 (UTC)
:Επίσης να σας πληροφορήσω ότι τώρα έχω διαθέσιμη όλη την γραμμματική σε ηλεκτρονιή μορφή μάλιστα. Έτσι απλά μπορείτε να μου στείλετε ένα ηλεκτρονικό μήνυμα και να σας τη στείλω. Επίσης να σας πω ότι δημιούργησα ένα άρθρο για τον συγγραφέα στο [[Κώστας Τοπχαράς]].--[[User:ZaDiak|ZaDiak]] 13:26, 18 February 2009 (UTC)
== Temporary administrator status ==
I will write in English since this issue is mainly done for the stewards (who don't speak hellenic languages -except grc-). I would like temporary sysop status. There is some work that needs to be done here since the wiki is new. I have been contributing to the test project for quite a long time and all the other pnt members agree I have also done some work in pnt localisation. Thank you.--[[Χρήστες:ZaDiak|ZaDiak]] 12:41, 6 Μαρτ 2009 (UTC)
:Please await at least one week for commenting to your request. I wonder, btw., why this wiki still has no [[Αρχικόν σελίδα|main page]] and no contents. O.O Did they forget to import the stuff from incubator? Best regards, --[[Χρήστες:Thogo|Thogo]] 13:21, 6 Μαρτ 2009 (UTC)
== Translatewiki localization, don't stop the translation ==
First congratulations for the recent opening.
And, for remembering don't forget to contribute, permanently, to the localization of mediawiki messages throught [http://translatewiki.net/wiki/Portal:Pnt translatewiki].
[[User:Crazymadlover|Crazymadlover]].
:100% behind this call for translations. Also many congratulations on the opening of the Pontic Wikipedia. I hope it will be a succes after the excellent trial period in the Incubator. I am currently running an interwikibot over the main namespace to give this new Wikipedia some attention in the other Wikipedias. Cheers! [[Χρήστες:Siebrand|Siebrand]] 20:35, 7 Μαρτ 2009 (UTC)
== Συγχαρητήρια ==
*Συγχαρητήρια και καλή αρχή. --[[Χρήστες:Μυρμηγκάκι|Μυρμηγκάκι]] 19:32, 8 Μαρτ 2009 (UTC)
:Να σαι καλά αδερφέ και καλώς τον. Αλήθεια, μήπως ξέρεις και ποντιακά; :-) --[[Χρήστες:Makedonier|Makedonier]] 05:29, 10 Μαρτ 2009 (UTC)
==Χερέτημαν==
Φίλες και φίλοι γράψαμε ιστορία και συνεχίζουμε ακάθεκτοι...
*Λοιπόν... χρειαζόμαστε ένα χερετισμό για το καλωσόρισμα των νέων χρηστών. Προτείνω το "Πρότυπο:Χερέτημαν" παρόμοιο με το [[w:el:Πρότυπο:Καλωσόρισμα|Πρότυπο:Καλωσόρισμα]] της ελληνικής. Δεδομένου ότι για τις επόμενες δύο εβδομάδες θα έχω ελάχιστο χρόνο και γενικά... πρόβλημα χρόνου λόγω επαγγελματικών και επειδή αυτό το θέμα είναι σημαντικό, θέλω να παρακαλέσω κάποιον που θα έχει το χρόνο και τη διάθεση να το αναλάβει και να το δημιουργήσει, έτσι ώστε να μπορούμε να καλωσορίζουμε τους νέους χρήστες.
*Υπενθυμίζω ότι έχω αναλάβει το "Δελτίο Τύπου" για τη δημιουργία μας και σας έχω στείλει και σχετικό μέιλ, παρακαλώ απαντήστε μου μέσω μέιλ, άμεσα και εντός ορίου.
*Ο ZaDiak ανέλαβε προσωρινός διαχειριστής το μεσημέρι της 6ης Μαρτίου 2009 και για μιά εβδομάδα μέχρι το μεσημέρι της 13ης Μάρτη και μετά θα αναλαμβάνει και για άλλο ένα τρίμηνο ακόμη -εκτός αν κάποιος έχει αντίρρηση (γεγονός που απεύχομαι) - και έχει επικεντρωθεί στο να γίνει η σωστή μεταβίβαση των δεδομένων από τη Ποντιακή του incubator, στη κανονική Ποντιακή. Ωστόσο θέλω να τον ενημερώσω πως θα πρέπει να μερμνίσει για την ολοκλήρωση της [[Βικιπαίδεια:Αδακά ψηφίζομεν για νοματάντς|ψηφοφορίας των νοματέων]] το αργότερο μέχρι την 23η Μαρτίου 2009 και ώρα 16:25΄ , δηλαδή με τη συμπλήρωση άκριβώς δύο μηνών.
*Ελάτε αν μπορείτε και στο [irc://irc.freenode.net/wikipedia-pnt IRC] για να τα πούμε, έχουμε πολλά να πούμε... Γράψτε μόνο πότε και την ώρα. Ως τότε... τα λέμε!!! --[[Χρήστες:Makedonier|Makedonier]] 07:55, 10 Μαρτ 2009 (UTC)
:Τέρεν: [[Πρότυπον:Χαιρέτημαν]] --[[Χρήστες:Sinopeus|Sinopeus]] 11:32, 10 Μαρτ 2009 (UTC)
::Ντο να λέγω πα για τεσέν... Εποίκες αοίκο τρανόν δουλείαν τόσο έμορφαν και αλίγορα. Την εφςχήμ να έιςχ πουλόπομ θα έλεγε σε ο Πάππομ και εγώ πα ο παλαλό θα ελέγω σε ςχίλε καλά να έιςχ! Εκόπεν η λαλίαμ, άλλο κι επορώ να καλατσέβω!!! Πολλά εχάρα να εξέρτς!!! --[[Χρήστες:Makedonier|Makedonier]] 20:21, 10 Μαρτ 2009 (UTC)
== Φεύγω! ==
... κι έρχομαι. Φίλοι, φεύγω για λίγες μέρες στην Ελβετία σε συγγενείς και επιστρέφω την Κυριακή. ;-) Τα λέμε σύντομα. Καλά να είστουν ούλ'. --[[Χρήστες:Sinopeus|Sinopeus]] 11:18, 11 Μαρτ 2009 (UTC)
*Καλό ταξίδι (πώς το λέμε αυτό ποντιακά?) --[[Χρήστες:Lemur12|Lemur12]] 14:36, 11 Μαρτ 2009 (UTC)
:Ευχαριστώ. :) Εκλώστα οπίς (επέστρεψα). Το «Καλό ταξίδι» είναι καλή ερώτηση. Εγώ (pnt-2) θα έλεγα «δέβα σο καλόν». --[[Χρήστες:Sinopeus|Sinopeus]] 12:21, 16 Μαρτ 2009 (UTC)
== Lord's Father in Pontic ==
A little of topic, anyone can write at [[w:en:Translations_of_The_Lord%27s_Prayer|Translations_of_The_Lord's_Prayer]], the translation to pontic, an the transliteration of Tsakonian and Grico. [[User:Crazymadlover|Crazymadlover]]
== Ατο πα τρανον και θαμαστον! ==
Εκιτι τεη ! Ναταν ο κυρισ μ να ετερνατο!
Αμα αραετς θα καλατσεβμε και ξαη κι θα νεσπαλουμε την λαλιαν μουνε .
Να εστε ουλκαλα !.
Τσιλι -- 79.103.105.80
:Αέτς εν αμον ντο λες, να είσαι καλά! Έλα με τ'εμάς και [http://pnt.wikipedia.org/wiki/%CE%95%CE%B9%CE%B4%CE%B9%CE%BA%CF%8C%CE%BD:UserLogin ποίσον έναν account] κι εντάμαν αγράφουμε σην λαλίανμουνε. :) --[[Χρήστες:Sinopeus|Sinopeus]] 13:19, 19 Μαρτ 2009 (UTC)
== Pontic grammar ==
Hello!
</br>
Firstly, I'd like to congratulate you with this initiative I think it is a great thing for poorly recognized languages to be used in an encyclopedic project like this. I would like to add some Pontic vocabulary to the Dutch Wiktionary, but in order to make those articles as complete as possible, I would need some kind of grammar. With that grammar I could add some templates for declensions and conjugations. Does anyone now where I can find this (or can anyone tell me what the rules are)? A dictionary could be useful, but off course the articles of this Wikipedia could be a start.
</br>
Another thing is the Latin script (Romeyka). Do you use it on an equal level as the Greek script (in which case I'd add those transcriptions to the dictionary) or not?
</br>
I'm very sorry for writing in English, but my Greek is not fluent enough...
Καλησπέρα. [[Χρήστες:Wikibelgiaan|Wikibelgiaan]] 00:22, 20 Μαρτ 2009 (UTC)
==Ανυπόγραφον==
ΝΑ ΛΕΛΕΒΟΣΑΣ!ΝΑ ΤΡΟΟ ΤΑ ΨΥΝΕΣ ΣΟΥΣ!!!ΝΤΕ ΦΤΑΤΕ ΤΣΙΚΑΡΕΑΜ?
ΑΝ ΕΦΤΑΟ ΜΕΡΙΚΑ ΛΑΘΗ ΣΧΟΡΝΑΤΕ ΜΕ !ΚΟΙΜΕ ΠΟΛΛΑ ΤΡΑΝΕΣΑ !
Κ ΚΣΕΡΟ ΝΑ ΤΑΑΛΑΤΣΕΒΟ ΚΑΛΑ.
== Update information about localisaton on translatewiki.net ==
* Currently 41.51% of the MediaWiki messages and 0.86% of the messages of the extensions used by the Wikimedia Foundation projects have been localised. Please help us help your language by localising and proof reading at [[betawiki:Special:LanguageStats/{{CONTENTLANGUAGE}}|translatewiki.net]]. This is the [http://translatewiki.net/w/i.php?title=Special:RecentChanges&translations=only&trailer=/{{CONTENTLANGUAGE}} recent localisation activity] for your language. Thanks, [[Χρήστες:GerardM|GerardM]] 08:56, 27 Μαρτ 2009 (UTC)
* Currently 41.37% of the MediaWiki messages and 0.80% of the messages of the extensions used by the Wikimedia Foundation projects have been localised. Please help us help your language by localising and proof reading at [[betawiki:Special:LanguageStats/{{CONTENTLANGUAGE}}|translatewiki.net]]. This is the [http://translatewiki.net/w/i.php?title=Special:RecentChanges&translations=only&trailer=/{{CONTENTLANGUAGE}} recent localisation activity] for your language. Thanks, [[Χρήστες:GerardM|GerardM]] 08:25, 13 Καλομηνά 2009 (UTC)
==Ανυπόγραφον 2==
ΧΑΙΡΕΤΙΑΣ ΣΤΕΛΛΩ ΣΑΣ ΟΥΛ'Σ.
ΤΡΑΝΟΝ ΧΑΡΑΝ ΕΔΕΚΕΤ'ΜΕ ΜΕ Α'ΤΑ ΤΑ ΣΕΛΙΔΑΣ Τ'Η΄"ΙΣΤΟΥ" ,ΠΩΣ ΛΕΓΟΥΝΤΑΝ,
ΑΤΩΡΑ ΘΑ ΚΑΛΑΤΣΕΥΟΥΜΕ ΜΕ ΟΥΛ' ΤΑ ΠΑΙΔΙΑ ΚΑΙ ΤΑ ΚΟΡΤΣΟΠΑ ΑΣ'ΟΛ' ΤΟ ΝΤΟΥΝΙΑ....
...ΚΑΙ ΚΑΤ'ΑΛΛΟΝ :ΧΩΡΙΣ ΝΑ ΓΡΑΦ' ΤΑ ΛΕΞΕΙΣ ΚΑΝΕΙΣ ΚΙ' ΜΑΘΑΝ ΤΑ ΠΟΝΤΙΑΚΑ. ZAXON
== Σχόλια και συμβουλές από ένα φίλο ==
Μου προκάλεσε δυσάρεστη έκπληξη το ότι αφενός με το ξεκίνημα του εγχειρήματος ευλογούνται τα γένια των πρώτων χρηστών σε [http://www.provoles.de/content/view/2788/31/lang,el/ αυτό το δελτίο τύπου], η μεγαλοποίηση ενός γεγονότος που έχει συμβεί [[meta:List_of_Wikipedias|265 φορές]] μέχρι τώρα, και για γλώσσες με πολύ λιγότερους ομιλητές από την ποντιακή (''τρανή δουλεία'', λοιπόν).
Aκόμη περισσότερο το γεγονός ότι εμφανίζονται πρόσωπα, που δεν έγραψαν λέξη στο wiki, σαν να έχουν συμβάλλει τα μέγιστα. Τι πάει να πει "''η παραπάνω προσπάθεια πιστοποιήθηκε, όπως προβλέπεται από το καθεστώς λειτουργίας της Wikipedia, μετά από σχετική αλληλογραφία και επαφές που είχε με τους υπεύθυνους του ιδρύματος της «Γουικιμίντια», ο κ. Θεοφάνης Μαλκίδης Δρ. Κοινωνικών Επιστημών''"; Η διαδικασία είναι [[meta:Meta:Language proposal policy|ξεκάθαρη και ανοικτή]], δεν γνωρίζω να ''προβλέπεται από το καθεστώς λειτουργίας'' κάποια "''αλληλογραφία''" με κάποιους "''καθηγητές''".
Όπως και παραπάνω βέβαια, τι θα πει "''μας στηρίζουν οι τάδε σύλλογοι;''" Τι ακριβώς σημαίνει αυτή η στήριξη; Τα ευχολόγια δεν είναι ουσιαστική στήριξη. Και για ότι αφορά την "ευχαριστήρια λίστα", τι ακριβώς πρόσφεραν όλοι αυτοί ώστε μια κοινότητα τεσσάρων ατόμων αισθάνεται την ανάγκη να ευχαριστήσει [http://www.provoles.de/content/view/2788/31/lang,el/ 19 άσχετους με το εγχείρημα + 4 άσχετα blogs]; Πολύ ενδιαφέρον θα είχε να μας έλεγαν και τι έκανε ο καθένας από αυτούς και τον ευχαριστούν. Όπως το βλέπω τέτοιες κινήσεις δεν έχουν σκοπό την ανάπτυξη μιας εγκυκλοπαίδειας αλλά απλά την δικτύωση μέσα στις ποντιακές κοινότητες και συλλόγους και πολύ φοβάμαι ''καπέλωμα'' του εγχειρήματος. Αντιλαμβάνομαι ότι την ευθύνη για αυτό το κείμενο δεν έχουν όλοι οι χρήστες τις ποντιακής βικιπαίδειας, αλλά θα πρέπει να τους προβληματίσει.
Δεν θα σας απασχολούσα εδώ, αλλά σε [http://www.e-tipos.com/newsitem?id=83955 νέο δημοσίευμα] που γυρνάει σε εφημερίδες και blogs, διαβάζουμε τα πολύ όμορφα: "''Η άδεια επίσημης λειτουργίας της δόθηκε παράλληλα με την αναφορά στον Άτλαντα γλωσσών της UNESCO για την Ποντιακή διάλεκτο.''" Υπονοώντας κάποια σχέση μεταξύ Wikimedia και UNESCO; Κάποια σχέση μεταξύ των βικιπαιδιστών και της UNESCO; Μιλάμε για δύο εντελώς διαφορετικά γεγονότα, άσχετα μεταξύ τους, για κάποιο λόγο η επαφή του δημοσιογράφου (''υπεύθυνος επικοινωνίας της ποντιακής βικιπαίδειας'') θέλησε να τα συνδέσει. Αυτό όμως είναι μικρότερης σημασίας για εμάς. Δυστυχώς παρακάτω βρίσκεται το τρομερό «''Αρχικά, απευθυνθήκαμε στους υπεύθυνους της ελληνικής έκδοσης της Βικιπαίδειας, οι οποίοι όμως ήταν κατηγορηματικά αντίθετοι, λέγοντάς μας ότι το όλο εγχείρημα δεν έχει μέλλον. Η στήριξη ήρθε ανέλπιστα από τον Ολλανδό Meijssen Gerard, υπεύθυνο του Language Commitee της Wikimedia, ο οποίος συνέβαλε καθοριστικά στο να πραγματοποιήσουμε το όνειρό μας''». Για να μην μένουν λανθασμένες εντυπώσεις, αυτό που ζητήθηκε από την ελληνική βικιπαίδεια ήταν [[:el:Βικιπαίδεια:Σελίδα συζήτησης για την Ποντιακή Wiki|να συνυπάρξουν τα άρθρα στην ποντιακή γλώσσα εντός της ελληνικής]], κάτι που κρίθηκε μη εφαρμόσιμο, και άλλωστε είχε ήδη γίνει [http://meta.wikimedia.org/wiki/Requests_for_new_languages#Pontic_Wikipedia αίτηση για την δημιουργία ξεχωριστής βικιπαίδειας] η ύπαρξη της οποίας ήταν ανεξάρτητη από την ελληνική και υπήρχε ήδη η [http://incubator.wikimedia.org/wiki/Wp/pnt δοκιμαστική έκδοση στο incubator] οπότε δεν υπήρχε λόγος μεταφοράς της εδώ. Κανείς στην ελληνική βικιπαίδεια (τι ακριβώς εννοεί με το "υπεύθυνοι";) δεν μπορεί να εγκρίνει ή να απορρίψει την δημιουργία μιας άλλης βικιπαίδειας, οπότε η παραπάνω αναφορά είναι πέρα για πέρα ανακριβής.
Φυσικά επαναλαμβάνεται το τραγελαφικό "''η παραπάνω προσπάθεια πιστοποιήθηκε, όπως προβλέπεται από το καθεστώς λειτουργίας της Wikipedia, μετά από σχετική αλληλογραφία και επαφές που είχε με τους υπεύθυνους του ιδρύματος της «Γουικιμίντια», ο κ. Θεοφάνης Μαλκίδης Δρ. Κοινωνικών Επιστημών.''"; Όπως ξαναέγραψα, η διαδικασία είναι [[meta:Meta:Language proposal policy|ξεκάθαρη και ανοικτή]], και δεν ''προβλέπεται από το καθεστώς λειτουργίας'' οποιαδήποτε "''αλληλογραφία''" με οποιουσδήποτε "''καθηγητές''".
Ελπίζω να καταλάβουν οι χρήστες και κυρίως ο "υπεύθυνος επικοινωνίας" (ποιά άλλη βικιπαίδεια έχει "υπεύθυνο επικοινωνίας";) ότι ρεζιλεύουν την ίδια την προσπάθεια και την βικιπαίδεια γενικά και όχι μόνο την ποντιακή με τέτοιες διθυραμβικές δημοσιεύσεις και τις προβλέψεις για 1000 άρθρα μέχρι το τέλος του χρόνου, όταν οι περίεργοι επισκέπτες περιμένουν να βρουν κάτι τρομερό και βρίσκουν 100 παλιά stubs και 10 νέα άρθρα στον πρώτο μήνα αυτόνομης λειτουργίας.
--[[User:Geraki|<font color="green">'''Geraki'''</font>]] <sup>[[User_talk:Geraki|Σ]]</sup><sub>[[Ειδικό:Μητρώο/Geraki|Μ]]</sub> 22:07, 7 Απρίλ 2009 (UTC)
:Σίγουρα καλοπροαίρετο το σχόλιο σου, φίλε Γεράκι, και σε ευχαριστώ πολύ. Το θέμα σίγουρα θέλει προσοχή. "Υπεύθυνος επικοινωνίας" της ΒΠ φυσικά και δεν υπάρχει, προσωπικού μπλογκ ίσως. Θα ήθελα όμως να επισημάνω ότι εντός pnt.wiki δε θα βρεις τίποτε από όλα αυτά και πιστεύω ότι αυτό είναι βασικό. Ούτε καν άρθρο με περιεχόμενο τους [[:w:el:Βικιπαίδεια:Ιστορία της Βικιπαίδειας|πρώτους χρήστες του εγχειρήματος]]. Όπως έχω πει και [http://pnt.wikipedia.org/w/index.php?title=%CE%92%CE%B9%CE%BA%CE%B9%CF%80%CE%B1%CE%AF%CE%B4%CE%B5%CE%B9%CE%B1%3A%CE%91%CE%B3%CE%BF%CF%81%CE%AC%2F%CE%91%CF%81%CF%87%CE%B5%CE%AF%CE%BF_1&diff=1418&oldid=1416 πριν], η εργασία για την Βικιπαίδεια στην ποντιακή γίνεται ακριβώς εδώ! Όποιος θέλει να συμμετάσχει, να το κάνει ακριβώς και μόνον εδώ. Εδώ, όπου ξεκινήσαμε εθελοντικά έργο, κυριολεκτικά από το μηδέν! Όσον αφορά εμένα, το τί λένε στα μπλογκ τους οι διάφοροι χρήστες, είναι θέμα δικό τους. Δεν έχω τον χρόνο και την όρεξη να ελέγχω ακόμη και αυτά. Σοβαροί δημοσιογράφοι κι εφημερίδες ''γενικώς'' όμως δεν θα έπρεπε να αντιγράφουν πληροφορίες από μπλογκ. Όποιοσδήποτε αναγνώστης ενδιαφερθεί πραγματικά για την λειτουργεία της ΒΠ θα πρέπει να διαβάσει τα ανάλογα στοιχεία στην ίδια (υπάρχουν στα ελληνικά, αγγλικά κλπ) και όχι σε μπλογκ. Πέραν αυτού φυσικά συμφωνώ ότι θα πρέπει να είμαστε προσεκτικοί με τις δημοσιεύσεις στα μπλογκ μας, για να μη βλάψουμε το έργο δίχως να θέλουμε. Να είσαι καλά. --[[Χρήστες:Sinopeus|Sinopeus]] 01:21, 8 Απρίλ 2009 (UTC)
::Αγαπητέ Σινωπέα, θα πρέπει να προσέξετε καλά αυτό το πρόβλημα και να ξεκαθαρίσετε με κάθε σαφήνεια το θέμα. Πρώτα από όλα ο Ευστάθιος Παπαδόπουλος (Makedonier) μου συστήθηκε με e-mail ως "υπεύθυνος επικοινωνίας", εδώ στην Αγορά έγραψε "''εκπροσωπούσα για επικοινωνιακούς λόγους την κοινότητα μας στα διάφορα συνέδρεια και εκδηλώσεις''", και μιλά με αυτή την ιδιότητα σε εφημερίδες και περιοδικά όπως φαίνεται από το "''σημειώνει ο Ευστάθιος Παπαδόπουλος, ο οποίος είναι <u>υπεύθυνος επικοινωνίας</u> της Ποντιακής Βικιπαίδειας''" [http://www.e-tipos.com/newsitem?id=83955]. Είναι ξεκάθαρο ότι τα παραπάνω δεν προέρχονται από κανένα blog, ξεκάθαρα γράφει το δημοσίευμα ότι τα "''<u>δηλώνει στο ΑΠΕ-ΜΠΕ</u> ο Ευστάθιος Παπαδόπουλος από την πόλη Ellwangen της Βάδης-Βυρτεμβέργης''". Συνέντευξη έδωσε ο άνθρωπος. Από την στιγμή που δεν βλέπουμε διάψευση από κανέναν ως προς αυτή την ιδιότητα, λογικό είναι θεωρήσουμε ότι μιλά τουλάχιστον εκ μέρους κάποιων χρηστών. Σας εκφράζει ή όχι τελικά; Τα Δελτία Τύπου που έστειλε, εκφράζουν την κοινότητα; Αν εκφράζουν μόνο τον ίδιο, πως θα αντιμετωπίσετε το γεγονός ότι φέρεται σαν να σας εκφράζει όλους; --[[User:Geraki|<font color="green">'''Geraki'''</font>]] <sup>[[User_talk:Geraki|Σ]]</sup><sub>[[Ειδικό:Μητρώο/Geraki|Μ]]</sub> 12:57, 8 Απρίλ 2009 (UTC)
:::Λυπάμαι όμως δε βρίσκω τα σχόλια του Γεράκι ιδιαίτερα φιλικά. Κατ' αρχήν οφείλω να παραδεχτώ 3 πράγματα. Πρώτον ήμουν ο αρχικός εισηγητής της ποντιακής βικιπαίδειας χωρίς φυσικά να θέλω να αναβαθμίσω τη θέση μου εδώ. Δεύτερον γνωρίζω ότι δεν αντιμετωπίστηκε ιδιαίτερα φιλικά από τους χρήστες της ελληνική βικιπαίδειας η πρόταση δημιουργίας της ποντιακής βίκι (πόσο μάλλον η ένωση της με την ελληνική). Τρίτον η μόνιμη κοινότητα χρηστών εξ αρχής και προς το παρόν είναι μικρή.
Σχετικά με το μήνυμα του Γεράκι δε μου άρεσαν οι διατυπώσεις του, τι πάει να πει ευλογούμε τα γένια μας; Προφανώς εννοεί τη μνημόνευση που έγινε στο "δελτίο τύπου". Προσωπικά πιστεύω γι αυτό το δελτίο ότι δε θα έπρεπε να γίνει τόσο εκτενή αναφορά στα ονόματα μας και με θαυμαστικά. Ούτε κάποιες διατυπώσεις. Σχετικά με τους υπόλοιπους που δεν είχαν ενεργεί συνεισφορά σε άρθρα, βοήθησαν σε τομείς όπως προβολή, γνωστοποίηση, ενημέρωση και συμβολή επιστημονικά τεκμηριωμένων απόψεων όπως ζητήθηκε και από το ίδιο το languge subcomitee κ.α.
Σχετικά με το γεγονός που συνέβη 265 φορές σε 265 γλώσσες και διαλέκτους. Προφανώς ο Γεράκι δεν ξέρει να μιλάει σε 265 γλώσσες και διαλέκτους γι' αυτό ίσως δεν του κάνει εντύπωση. Ο ενθουσιασμός του και αυτών που έχουν την ίδια γνώμη περιορίζετε στη δημιουργία της ελληνικής βικιπαίδειας (αξιομνημόνευτο γεγονός) καθώς γι' αυτούς είναι μητρική γλώσσα. Η δημιουργία μιας βικιπαίδειας σε μια συγκεκριμένη γλώσσα αποτελεί κατά τη γνώμη μου σημαντικό γεγονός για την ίδια την κοινότητα και για τους χρήστες που την απαρτίζουν, όποτε είναι δικαιολογημένη πιστεύω η γνωστοποίηση και η προβολή του γεγονότος και όχι η μεγαλοποίηση.
Ελπίζω στους 19 άσχετους μην εννοεί και εμάς μαζί. Όσο αφορά την προσωπική μας συνεισφορά, που με μεγάλο ενδιαφέρον θα ήθελε να ακούσει μάλλον θα απογοητευτεί, μιλούμε για 3-5 χρήστες οι οποίοι με καλοί διάθεση και όχι με ματαιοδοξία (όπως θέλουν να παρουσιάζουν προπαγανδιστικά). Αποφάσισαν να αγοράσουν βιβλία γραμματικής και συντακτικού (πχ. Ποντιακή γραμματική του κ. Τόπχαρα ή της κ. Κεσίδου) για μια γλώσσα ή διάλεκτο στην οποία δε δίνεται έμφαση και να προσπαθήσουν να μάθουν, να μιλούν και να γράφουν την ποντιακή όσο γίνεται καλύτερα για έναν ομιλητή πού έχει μια άλλη μητρική γλώσσα φυσικά υπήρχαν σ' αυτούς τους 3-5 και άτομα που τη μιλούσαν ως μητρική ώστε να αμφισβητείται στο ελάχιστο δυνατό η αξιοπιστία των άρθρων. Άσχετα με τον αριθμό των άρθρων που επετεύχθησαν. Άλλωστε υπάρχουν και χρήστες της ελληνικής βικιπαίδειας που δεν μιλούν την ελληνική αλλά τους επιτρέπεται να γράφουν άρθρα.
Επίσης πάνω στο ότι κρίθηκε καθ' αυτούς "μη εφαρμόσιμη" θα έλεγα μάλλον μη αποδεκτή. Επιτρέπεται σύμφωνα με κανονισμούς του ιδρύματος να υπάρχουν σε κοινό βίκι πχ. μια γλώσσα και μια διάλεκτος της
, κάτι που δε μένει μόνο στα χαρτιά αλλά είναι εφαρμόσιμο και έχει συμβεί. Επίσης διαψεύδω ότι είχε ήδη γίνει αίτηση για δημιουργία του εγχειρήματος και μετά έγινε η πρόταση για συνένωση.
Κλείνοντας δε θα ήθελα να σταθώ τόσο στους ''έμμεσους'' χαρακτηρισμούς του ''ήθους'' των χρηστών της ποντιακής κοινότητας από κάποιους ''καλοθελητές'', αλλά στην προσπάθεια τους να κατευθύνουν τη συνεισφορά νέων χρηστών και να υποβαθμίσουν τη συνεισφορά αυτών που έχουν ήδη θυσίασαν οικειοθελώς φυσικά αρκετό χρόνο για να δημιουργηθεί αυτό το εγχείρημα και να μπορούν κάποιοι να βλέπουν αυτό που βλέπουν και να "ξινίζονται", με το τη επετεύχθη. Εγώ θέλω να πω ότι δε δίνουμε σημασία στη λάσπη και να ζητήσω να μην ασχολούνται με τα εδώ θέματα, προσποιούμενοι σφαιρική γνώμη χωρίς να ενδιαφέρονται να μάθουν και τη γνώμη της άλλης πλευράς.--[[Χρήστες:Consta|Consta]] 13:47, 8 Απρίλ 2009 (UTC)
# Δεν σου άρεσε ότι η φράση "ευλογούν τα γένια τους", αλλά συμφωνείς ότι δεν θα έπρεπε να γίνεται αναφορά σε ονόματα. ΟΚ, το κρατάω.
# "''βοήθησαν σε τομείς όπως προβολή, γνωστοποίηση, ενημέρωση και συμβολή επιστημονικά τεκμηριωμένων απόψεων''": Σύμφωνα με αυτό λοιπόν, η ελληνική βικιπαίδεια θα πρέπει στο επόμενο δελτίο τύπου να έχει ένα κατάλογο με όλα τα ΜΜΕ που την έχουν αναφέρει. Ας μην γελιόμαστε όμως, όλοι αυτοί έκαναν αναφορές μετά την έκδοση ΔΤ. Μπορείς να μας εξηγήσεις τι ''επιστημονικά τεκμηριωμένες απόψεις'' παρέθεσαν οποιοιδήποτε; Οι απαιτήσεις βρίσκονται '''[[meta:Meta:Language proposal policy#Requisites for eligibility|εδώ]]''', 4+2 κριτήρια. Σε ποιό ακριβώς σημείο κολλήσατε και χρειαστήκατε ''επιστημονική βοήθεια'';
# "''Η δημιουργία μιας βικιπαίδειας σε μια συγκεκριμένη γλώσσα αποτελεί κατά τη γνώμη μου σημαντικό γεγονός [...] όποτε είναι δικαιολογημένη πιστεύω η γνωστοποίηση και η προβολή του γεγονότος''". Η βικιπαίδειες ανοίγουν αλλά και κλείνουν. Εγώ σημειώνω ότι για την ελληνική βικιπαίδεια Δελτίο Τύπου εκδόθηκε στα 20.000 άρθρα. Και ας σοβαρευτούμε, τελικά ποιός ήταν ο σκοπός ενός Δελτίου Τύπου, και μάλιστα '''ενός Δελτίου Τύπου για ένα εγχείρημα που μόλις ξεκίνησε και δεν έχει μια πρόσκληση προς το κοινό να συνεισφέρει εδώ;''' Η απουσία μιας τέτοιας πρόσκλησης, απουσία της αναφοράς ότι οποιοσδήποτε μπορεί να συνεισφέρει, τεκμηριώνει ότι σκοπός της ανακοίνωσης ήταν μόνο τα ευχαριστήρια.
# "''Επιτρέπεται σύμφωνα με κανονισμούς του ιδρύματος να υπάρχουν σε κοινό βίκι πχ. μια γλώσσα και μια διάλεκτος της''". Πρώτον, επιτρέπεται, δεν είναι υποχρεωτικό. Δεύτερον, μιλάει για διάλεκτο (π.χ. Κυπριακή) και όχι γλώσσα (π.χ. Ποντιακή). Εάν τεκμηριώνατε ότι τα Ποντιακά είναι απλώς διάλεκτος και όχι γλώσσα, δεν θα υπήρχε Ποντιακή Βικιπαίδεια (οι επιστημονικοί σύμβουλοι σας τα είπαν αυτά;). Τις απαιτήσεις δεν τις διαβάσατε;
#* Και επειδή με προκαλείς να διαψεύσω την δίαψευσή σου "''διαψεύδω ότι είχε ήδη γίνει αίτηση για δημιουργία του εγχειρήματος και μετά έγινε η πρόταση για συνένωση.''":
## Εσύ ο ίδιος έκανες αίτηση για δημιουργία του ξεχωριστού εγχειρήματος στις 16 Σεπτεμβρίου 2007 [http://meta.wikimedia.org/w/index.php?title=Requests_for_new_languages/Wikipedia_Pontic&oldid=679734]
## Η δοκιμαστική έκδοση στο incubator ξεκίνησε στις 23 Σεπτεμβρίου 2007
## Εσύ ο ίδιος πήρες την ιδέα του Teak για πρόταση για συνένωση στις 28 Σεπτεμβρίου 2007 [http://meta.wikimedia.org/w/index.php?title=Requests_for_new_languages/Wikipedia_Pontic&diff=prev&oldid=689951]
## Εσύ ο ίδιος με βάση αυτή την ιδέα έφερες την πρόταση για συνένωση στις 3 Οκτωβρίου 2008 [http://el.wikipedia.org/w/index.php?title=%CE%92%CE%B9%CE%BA%CE%B9%CF%80%CE%B1%CE%AF%CE%B4%CE%B5%CE%B9%CE%B1:%CE%A3%CE%B5%CE%BB%CE%AF%CE%B4%CE%B1_%CF%83%CF%85%CE%B6%CE%AE%CF%84%CE%B7%CF%83%CE%B7%CF%82_%CE%B3%CE%B9%CE%B1_%CF%84%CE%B7%CE%BD_%CE%A0%CE%BF%CE%BD%CF%84%CE%B9%CE%B1%CE%BA%CE%AE_Wiki&oldid=707546]
#* Μόλις τεκμηριώθηκε ότι η διάψευσή σου ήταν παραπλανητική και το ήξερες. Έχεις να προσθέσεις κάτι;
# Κατά τα άλλα, αλλά λόγια να αγαπιόμαστε, φυσικά και δεν εννοώ τους συμμετέχοντες στο wiki αλλά τον κατάλογο που βρίσκεται σε αυτό το ''[http://www.provoles.de/content/view/2788/31/lang,el/ Δελτίο Τύπου]'' (19 ονόματα και 4 blogs). Είμαι σίγουρος ότι κι εσύ ο ίδιος δεν ξέρεις για ποιό λόγο τους ευχαριστεί ο Makedonier, ίσως και πρώτη φορά βλέπεις αυτά τα ονόματα. Κατά τα άλλα, η άποψή μου είναι ακριβώς ότι εξέφρασε παραπάνω και πολύ σωστά ο Sinopeus "''η εργασία για την Βικιπαίδεια στην ποντιακή γίνεται ακριβώς εδώ''".
# Φυσικά δεν απαντήθηκαν όλα τα ερωτήματά μου όπως π.χ. γιατί αναφέρεται η UNESCO, ούτε για το αν τελικά ο Ευστάθιος μιλά ή όχι εκ μέρους όλων. Σύμφωνα με τον Σινωπέα, όχι. Σύμφωνα με τα δικά σου, αποδέχεσαι αυτά που γράφει. Υπάρχει "''υπεύθυνος επικοινωνίας της ποντιακής βικιπαίδειας;''" Δεν σου άρεσαν αυτά που έγραψα, απλά επειδή δεν με συμπαθείς. Σκασίλα μου. Μπορείς να με βρίσεις δημόσια και να χαρακτηρίζεις "ξινίλες" αυτά που γράφω, αλλά να διορθώσετε όλα αυτά που καταλαβαίνεις και ο ίδιος ότι είναι "ξερές" και δεν θέλεις να τα παραδεχτείς. Η επιτυχία ενός εγχειρήματος δεν είναι να ξεκινήσει φιλαράκο. Αυτό είναι το εύκολο κομμάτι. Η επιτυχία είναι να δημιουργήσει περιεχόμενο.
ΟΚ, παίδες δικό σας το παιχνίδι. Υείαν και ευλογίαν. --[[User:Geraki|<font color="green">'''Geraki'''</font>]] <sup>[[User_talk:Geraki|Σ]]</sup><sub>[[Ειδικό:Μητρώο/Geraki|Μ]]</sub> 19:18, 8 Απρίλ 2009 (UTC)
Οφείλω να πω φυσικά (κάτι που κακώς δεν έκανα στο προηγούμενο μήνυμά μου, νύσταζα ρε παιδιά) ότι παρόλο το σκεπτικισμό που έδειξα όταν προτάθηκε τον Ιανουάριο η δημιουργία μπλογκ, τελικά αποδείχτηκε πολύ αποτελεσματικό. Ο χρήστης Makedonier κατάφερε μέσα σε τρεις μήνες να κάνει με τον τρόπο του την pnt.wiki πολύ περισσότερο γνωστή από ότι κατάφερα πχ εγώ σε έναν ολόκληρο χρόνο. Το ότι δηλώνονται τώρα τελευταία συνεχώς νέοι χρηστες (πράγμα που το 2008 δε γινόταν) και αρχίζουν σιγά σιγά να προσθέτουν υλικό στην pnt.wiki είναι αποτέλεσμα της ακούραστης δραστηριότητάς του. Το εκτιμώ και το υποστηρίζω αυτό! Τώρα, εάν κάποιος θεωρεί ότι θα μπορούσε να βελτιωθεί η εργασία του, ας επικοινωνίσει μαζί του. Εάν έχει να προσφέρει εργασία εδώ, ακόμη καλύτερα. Όσον αφορά τα stubs κλπ: κάθε σειρά που γράφεται εδώ στα ποντιακά (μια διάλεκτο που κινδινεύει να χαθεί) είναι κέρδος! Βρισκόμαστε στην αρχή και το γνωρίζουμε καλά αυτό εμείς που εργαστήκαμε! Και συνεχίζουμε! Τέλος από εμένα. Να είστε καλά --[[Χρήστες:Sinopeus|Sinopeus]] 18:44, 8 Απρίλ 2009 (UTC)
:Έλα ρε Σινωπέα, [http://pnt.wikipedia.org/w/index.php?title=%CE%95%CE%B9%CE%B4%CE%B9%CE%BA%CF%8C%CE%BD:RecentChanges&days=30&limit=500&namespace=0 που είδες] ότι οι [http://pnt.wikipedia.org/w/index.php?title=%CE%95%CE%B9%CE%B4%CE%B9%CE%BA%CF%8C%CE%BD:Log&limit=500&type=newusers&month=&year= νέοι χρήστες] [http://pnt.wikipedia.org/w/index.php?title=%CE%95%CE%B9%CE%B4%CE%B9%CE%BA%CF%8C%CE%BD:RecentChanges&days=30&limit=500&namespace=0 προσθέτουν υλικό]; Τα bot που βάζουν interwiki; Οι λογαριασμοί που δημιουργούνται αυτόματα; Πόσα πραγματικά άρθρα (όχι κενές ημερομηνίες) [[Ειδικόν:NewPages|δημιουργήθηκαν από την έγκριση και μετά]]; Μεταξύ μας μιλάμε! Ποιά είναι η διεύθυνση αυτού του περίφημου blog για να το δούμε κι εμείς; Ελπίζω να μην θεωρήσει κι εσύ μαζί με τον Consta "ξινά" και "κακοπροαίρετα" τα σχόλιά μου. [http://el.wikipedia.org/wiki/%CE%92%CE%B9%CE%BA%CE%B9%CF%80%CE%B1%CE%AF%CE%B4%CE%B5%CE%B9%CE%B1:%CE%A3%CE%B5%CE%BB%CE%AF%CE%B4%CE%B1_%CF%83%CF%85%CE%B6%CE%AE%CF%84%CE%B7%CF%83%CE%B7%CF%82_%CE%B3%CE%B9%CE%B1_%CF%84%CE%B7%CE%BD_%CE%A0%CE%BF%CE%BD%CF%84%CE%B9%CE%B1%CE%BA%CE%AE_Wiki Εδώ] είχα γράψει "''Μια ξεχωριστή Βικιπαίδεια δεν σημαίνει ότι θα είναι απαραίτητα μόνη της. Δεν νομίζω να αρνιόταν κανείς σε συμβουλές και βοήθεια από χρήστες και διαχειριστές της ελληνικής βικιπαίδειας.''" "''Εγώ εύχομαι να εγκριθεί η Ποντιακή Βικιπαίδεια''". Θυμήσου και [http://el.wikipedia.org/w/index.php?title=%CE%92%CE%B9%CE%BA%CE%B9%CF%80%CE%B1%CE%AF%CE%B4%CE%B5%CE%B9%CE%B1:%CE%91%CE%B3%CE%BF%CF%81%CE%AC/%CE%91%CF%81%CF%87%CE%B5%CE%AF%CE%BF_2009/%CE%9C%CE%AC%CF%81%CF%84%CE%B9%CE%BF%CF%82&diff=1422820&oldid=1422744 ότι έγραψα για ευχές] στο ξεκίνημά σας. Μπορεί να σου φαίνονται δυσάρεστα όλα τα παραπάνω, αλλά είναι πολύ σοβαρά για να μην ληφθούν υπόψη. Το έμπρακτο ενδιαφέρον μου για την λειτουργία '''όλων''' των εγχειρημάτων δεν μπορεί να το αρνηθεί κανείς. Μια έκφραση του ενδιαφέροντος είναι όλα τα παραπάνω. Μπορείτε να τα απορρίψετε, και θα προσπαθήσουμε να μην επηρεάσει καθόλου την ελληνική βικιπαίδεια ή οποιοδήποτε άλλο εγχείρημα. --[[User:Geraki|<font color="green">'''Geraki'''</font>]] <sup>[[User_talk:Geraki|Σ]]</sup><sub>[[Ειδικό:Μητρώο/Geraki|Μ]]</sub> 19:30, 8 Απρίλ 2009 (UTC)
:Κοίτα μόνο και μόνο από τη γλώσσα που χρησιμοποιείς και τη γλώσσα που χρησιμοποιείς φαίνεται πόσο καλοπροαίρετα τα κάνεις τα σχόλια σου. Δε δινω σημασία στα φανταχτερά κόπι πέιστ σου ούτε στις ξευτοπαραπλανητικές σου πηγές.
*1 ναι δε συμφωνω που χρησιμοποιήθηκαν έτσι τα ονόματα μας.
*2 στο σημείο που τόσο πολύ έχεις την επιθυμία να μάθεις βρισκόταν [http://meta.wikimedia.org/w/index.php?title=Language_committee/Status/wp-pnt&action=edit&redlink=1 εδώ] το διέγραψε ο pathoschild άλλα σίγουρα θα έχει αρχείο ειδάλλως ζήτα από το language subcomitee για τις προυποθέσεις ''' Ρequirements for final apporoved''' (ζητήθηκε η γνώμη ενός επιστήμονα), και με μεγάλη σου λίπη θα διαπιστώσεις ότι έχεις άδικο(δεν έχει σημασία που διαγράφτηκε το πρακτικό σίγουρα υπάρχει αρχείο που κρατιέται ρώτα και τον Σινωπέα για να σου το επιβεβαιώσει και δε εκμεταλλεύομαι που σβήστηκε).
*3 Δεν έγραψες εσύ στο λεξικό τον ορισμό του '''δελτίου τύπου''' οπότε άσε τις υποθέσεις για τους στόχους.
*4 Σ' αυτό το σημείο παίζεις με τις λέξεις. Δες και τις απόψεις άλλων που γράφουν ότι καθ αυτούς η ποντιακή είναι διάλεκτος, το θέμα δεν ήταν οι διατύπωση, αν θέλατε θα το ονομάζαται διάλεκτο και δε θα διαφωνούσε κανείς. Άστοχη και αυτή σου η νουθεσία. Και φυσικά δεν είναι υποχρεωτικό
*5 Εδώ είναι ίσως το μόνο πράγμα που συμφωνώ. (Το ''άλλα λόγια να αγαπιόμαστε'' κράτα το για σένα.) Πράγματι δεν ξέρω συγκεκριμένα τη έκανε ο καθένας απ αυτούς. Δέχομαι ότι η εργασία είναι ομαδική
*6 Για Unesco πρώτη φορά το ακούω και δεν ξέρω ποιος το έγραψε ούτε έχω τη διάθεση να ψάχνω για σενα. Επίσης μη βάζεις παραπλανητικά και ύπουλα λόγια στο στόμα μου που δεν είπα πότε, για μένα δεν υπάρχει υπεύθυνος επικοινωνίας όπως νομίζεις ότι λέω χωρις να το χω πει ποτέ. Θα σου απαντήσω ότι απλούστατα ούτε εσύ με συμπαθείς και αυτό γιατί τόλμησα να μη συμφωνήσω μαζί σου. Σκασίλα μου τι λες και τι υποθέτεις. Αυτό για τις δημόσιες βρισιές που θες να ακούσεις, επειδή '''φαγουρίζεσαι''' δε θα σου κάνω τι χάρη να το κάνω, οι σκέψεις σου και το είδος γλώσσας που χρησιμοποιείς προδίδουν και τις
προθέσεις σου φαίνεται τη ήρθες να κάνεις εδώ. Το "φιλαράκο" κράτα το καλύτερα για δικούς σου φίλους δεν είσαι ούτε θα γίνεις φίλος μου, η ορισμοί σου για την επιτυχία όπως την αντιλαμβάνεσαι εσύ δε με ενδιαφέρουν. Έσυ άρχισες την κόντρα νομίζεις ότι επειδή είσαι διαχειριστής τα λόγια σου έχουν μεγαλύτερη αξία.
Κάνε ότι νομίζεις συμβουλές από τέτοια άτομα δε θέλω, είσαι άκυρος. --[[Χρήστες:Consta|Consta]] 12:27, 9 Απρίλ 2009 (UTC)
* Πράγματι χρειάστηκε ένας καθηγητής, αλλά δεν δικαιολογείται η πρεμούρα να αναφέρεται με αυτή την διατύπωση ως καθοριστικός παράγοντας. Ένα e-mail έστειλε.
* Η εμπάθειά σου δεν σε αφήνει να καταλάβεις καν το ζητούμενο: Το δελτίο τύπου γράφει ότι οι υπεύθυνοι της ελληνικής βικιπαίδειας απέρριψε την δημιουργία ποντιακής βικιπαίδειας. '''Η αίτηση που δεν έγινε δεκτή στην Ελληνική Βικιπαίδεια ήταν για να γίνει ενσωμάτωση ποντιακών άρθρων εκεί, και όχι για την δημιουργία ανεξάρτητης ποντιακής βικιπαίδειας όπως ισχυρίζεται το δελτίο τύπου.''' Κανείς δεν απέρριψε την δημιουργία ποντιακής βικιπαίδειας.
* Δεν είπες ότι υπάρχει "υπεύθυνος επικοινωνίας" αλλά στο πρώτο σου post παραπάνω, τον υπερασπίστηκες χωρίς να δηλώσεις έστω έκπληξη ή έστω απορία γι'αυτό τον χαρακτηρισμό (τον οποίο επαναλαμβάνω '''δήλωσε επίσημα στο ΑΠΕ-ΜΠΕ'''). Προφανώς είχες μεγαλύτερη αγωνία να με χαρακτηρίσεις "καλοθελητή" παρά να ανησυχήσεις γι'αυτόν που αυτοχαρακτηρίζεται "υπεύθυνος επικοινωνίας"
* Η λέξη "κόντρα" σημαίνει αντίδραση. Οι παρατηρήσεις μου παραπάνω ήταν δράση και η αντίδραση (''κόντρα'') ήταν δική σου (άρα εσύ την ξεκίνησες και όχι εγώ). Εγώ απευθύνθηκα στην κοινότητα της ποντιακής βικιπαίδειας και δεν περίμενα καν να απαντήσεις, οπότε το αν σε συμπαθώ(-ούσα) εσένα ή όχι, δεν έχει καμία απολύτως σημασία.
{| align="right" style="border:1px solid red;background:silver;text-align:center;"
|Shooting<br>the<br>messenger
|}
Είναι δικαίωμά σου να είσαι εμπαθής, αλλά το κάνεις με άκομψο τρόπο που σε κάνει αναξιόπιστο. Ουσιαστικά μας λες ότι ''όντως διαφωνώ με το ΔΤ, όντως υπάρχουν αυτά τα προβλήματα, όντως δεν έχω ιδέα για το τι έγινε, αλλά δεν πρόκειται να τα κοιτάξω επειδή τα ανέφερε το Geraki που δεν συμπαθώ''. Μπορείς να επαναπροσδιορίσεις λοιπόν την επιτυχία μιας βικιπαίδειας (αφού δεν σου άρεσε ο δικός μου ορισμός), να συνεχίσεις να επιτρέπεις σε κάποιον να τιτλοφορείται "υπεύθυνος επικοινωνίας", να γράφει του κεφαλιού του, να ευχαριστεί εκ μέρους σου και εκ μέρους την κοινότητας πρόσωπα που δεν ξέρετε τι έκαναν (αν έκαναν) κλπ. Δεν περίμενα να ψάξεις για χάρη μου, θα περίμενα όμως να ψάξεις για χάρη δική σου και της κοινότητας. Επί του παρόντος βλέπω ότι απλώς επιτίθεσαι σε αυτόν που φέρνει τα κακά μαντάτα. --[[User:Geraki|<font color="green">'''Geraki'''</font>]] <sup>[[User_talk:Geraki|Σ]]</sup><sub>[[Ειδικό:Μητρώο/Geraki|Μ]]</sub> 17:45, 9 Απρίλ 2009 (UTC)
Χαίρομαι που έριξες τους τόνους. Όσο για το "εμπαθής" που μου αποδίδεις γνώμη σου είναι,αν μπορείς να δώσεις μόνο αυτή την εξήγηση. Το ζητούμενο το καταλαβαίνω πάρα πολύ καλά, εγώ άλλωστε ζήτησα να ενσωματωθούν άρθρα της ποντιακής στην ελληνική κάτι το οποίο απορρίφθηκε από την ελληνική βικιπαίδεια.
*Ή Ελληνική βικι δεν απέριψε την ιδέα της δημιουργίας της ποντιακής βίκι, γιατί πολύ απλά δεν είναι στις αρμοδιότητες μιας βικιπαίδειας να απορρίψει τη δημιουργία μιας άλλης νέας. Αρμοδιότητα γι αυτό έχει το language comitee και Board of Trustees οπότε και να θέλατε να αποτρέψετε τη δημιουργία της ποντιακής βικιπαίδειας δε θα μπορούσατε σαν κοινότητα.
*Δεν κατηγόρησα άμεσα κανένα χρήστη πόσο μάλλον διαχειριστή γιατί δε θέλω να δημιουργήσω εσωτερικό πρόβλημα. Αν υφίσταται όντος ουσιαστικό πρόβλημα κι όχι αν θεωρείται ότι υπάρχει, αυτό θα επιλυθεί, δε θα πάρει στο λαιμό του κάποιος όλη την κοινότητα.
*Κόντρα δε σημαίνει απλά αντίδραση αλλά σύγκρουση και ανταγωνισμός, δε μου άρεσε που καταδίκασες ανθρώπους όπως το Θεοφάνη Μαλκίδη Δρ. κοινωνικών επιστημών επειδή του ζητήθηκε '''από το ίδιο το ίδρυμα''' να γράψει μια επιστημονικά τεκμηριωμένη έκθεση για την ποντιακή γλώσσα. ''Δεν πειράζει προφανώς δεν ήξερες'', ότι σε κάποιες περιπτώσεις απαιτήται από το ίδρυμα το συγκεκριμένο για να δοθεί η έγκριση.
Δε θέλω να σχολιάσω το χαρακτηρισμό ''εμπαθής'' που μου αποδίδεις. Θέλω όμως να σου δώσω καλοπροαίρετα μια συμβουλή, να μη λες στο συνομιλητή σου, είτε το συμπαθείς είτε όχι, ότι έχει το δικαίωμα να σε βρίζει δημόσια για κανένα λόγο γιατί έτσι εκτίθεσαι ο ίδιος και μειώνεις την αξιοπιστία των επιχειρημάτων σου ακόμα κι αν λες σωστά πράγματα. Εγώ δεν έχω τίποτα προσωπικό μαζί σου ούτε είμαι "εμπαθής" μαζί σου όπως λες κι ούτε θέλω να σε βρίσω, οι χαρακτηρισμοί μου στα πρώτο μήνυμα ήταν γενικοί (π.χ. καλοθελητές) δεν απευθυνόταν προσωπικά εναντίον σου. --[[Χρήστες:Consta|Consta]] 11:16, 11 Απρίλ 2009 (UTC)
Κακό ξεκίνημα κάνατε και το Geraki έχει δίκιο σε πολλά πράγματα. Οι φανφάρες στα δελτία τύπου μειώνουν τη δουλειά που προσπαθείτε να κάνετε τα τελευταία δυο χρόνια και ξέρετε καλά πως θα ήταν άσχημη η ενσωμάτωση ποντιακών κειμένων στην Ελληνική έκδοση, είναι πολύ καλύτερα που εγκρίθηκε ως ξεχωριστή και δε θα μπλέκονται τα κείμενα -- [[Χρήστες:Fefeli|Fefeli]]
[[Κατηγορίαν:Wp/pnt]]
o6pj45fufcv2522y4erx1z62j3rue8o
Βικιπαίδεια:Εκλογήν
4
160
34905
34904
2021-08-30T11:57:15Z
91.140.25.228
Αφαίρεση ψηφοφορίας από μαριονέτα
34905
wikitext
text/x-wiki
__NOTOC__
{| width=50% class="plainlinks" align=center border=0 cellpadding=2 cellspacing=2 style="margin-bottom:0.5em; background: white; font-size:120%; text-align:center;"
|}
{| align="right" style="background:#87CEFF; margin: 0 0 0.5em 1em;" id="toc" width=220
|-
|colspan="2" allign="center" | [[Image:Emblem-WikiVote.svg|center|200px]]
|-
|colspan="2" align="center"|<center><big>'''Αδαπές ψηφίζομεν'''</big></center>
|}
<div style="background:#00B2EE; text-align: left; margin: 0px; padding: 3px;">
<font size="+1"><b>Χαιρετίας και καλωσόρεμαν σ' όλεα τα Βικιπαιδία!</b></font>
</div>
<hr size=5px noshadow>
Αδακά γίνουντο εκλογήν σην Βικιπαίδειαν. Αδαπές ψηφίζομεν για νοματάντς και γιαρίφς. Το καλάτσεμαν για πολιτική εν αδαπές. Ψαλαφία για σημαίαν μποτ πρεπ' να ίνουνταν σην [[Βικιπαίδεια:Αγορά|Αγοράν]]. Εκέκα εχ' οδηγίας για ατά τα ψαλαφία. Για συμβουλάς γράφκετε σο [[Καλάτσεμαν χρήστε:ZaDiak|καλάτσεμαν]] τ' χρήστη [[Χρήστες:ZaDiak|ZaDiak]]. Ατός εν ο γιαρίφς σην Βικιπαίδειαν.
----
'''''<big>Καμμίαν 'κ ψηφίζετε τον εαυτόν εσούν</big>'''''
==Γιαρίφ==
===ZaDiak===
Εδώ μπορείτε να ψηφίσετε για την υποψηφιότητα του χρήστη ZaDiak για γραφειοκράτη (γιαρίφς).
*{{Support}}--[[User:Omnipaedista|Omnipaedista]] 16:42, 23 January 2009 (UTC)
*{{Support}} Καλός εν κι εξέρ τα δουλείας τη γιαρίφ. Μικρός σα χρόναι, τρανός σ'αχούλ. :) --[[User:Sinopeus|Sinopeus]] 16:45, 23 January 2009 (UTC)
*{{Support}} --[[User:Makedonier|Μακεδόνας]] 16:49, 23 January 2009 (UTC)
*{{Support}} -- [[User:GerardM|GerardM]] 13:42, 27 January 2009 (UTC)
*{{Support}}--[[User:Lady 6thofAu|Lady 6thofAu]] 15:59, 31 January 2009 (UTC)
*{{Support}} --[[User:Consta|Consta]] 13:15, 23 February 2009 (UTC)
==Νοματέοι==
===Sinopeus===
Εδώ μπορείτε να ψηφίσετε για την υποψηφιότητα του χρήστη Sinopeus για διαχειριστή (νοματέας).
*{{Support}}--[[User:ZaDiak|ZaDiak]] 16:36, 23 January 2009 (UTC)
*{{Support}}--[[User:Omnipaedista|Omnipaedista]] 16:42, 23 January 2009 (UTC)
*{{Support}} --[[User:Makedonier|Μακεδόνας]] 16:50, 23 January 2009 (UTC)
*{{Support}}--[[User:Lady 6thofAu|Lady 6thofAu]] 15:59, 31 January 2009 (UTC)
*{{Support}} --[[User:Consta|Consta]] 13:16, 23 February 2009 (UTC)
===Makedonier===
Εδώ μπορείτε να ψηφίσετε για την υποψηφιότητα του χρήστη Makedonier για διαχειριστή (νοματέας).
*{{support}}--[[User:ZaDiak|ZaDiak]] 16:37, 23 January 2009 (UTC)
*{{Support}}--[[User:Omnipaedista|Omnipaedista]] 16:42, 23 January 2009 (UTC)
*{{Support}} Ο Makedonier καλατςέβ ςκυρά ποντιακά και πολλά αγαπάει τη γλώσσα. Εποίκεν τρανόν γιαρτίμ σο έργον. --[[User:Sinopeus|Sinopeus]] 16:46, 23 January 2009 (UTC)
*{{Support}}--[[User:Lady 6thofAu|Lady 6thofAu]] 15:59, 31 January 2009 (UTC)
*{{Support}} --[[User:Consta|Consta]] 13:16, 23 February 2009 (UTC)
===Omnipaedista===
Εδώ μπορείτε να ψηφίσετε για την υποψηφιότητα του χρήστη Omnipaedista για διαχειριστή (νοματέας).
*{{support}}--[[User:ZaDiak|ZaDiak]] 16:38, 23 January 2009 (UTC)
*{{Support}} Ο Omnipaedista εν καλόν βικιπαιδίν κι αγαπά να τερεί ατά ντο γράφκουνταν. Αγαπά την διαφάνειαν και τα νομς ντο κανονίζνε την δουλείαν αδαπές. Για τ'ατό θα εν καλός νοματέας. --[[User:Sinopeus|Sinopeus]] 16:46, 23 January 2009 (UTC)
*{{Support}} --[[User:Makedonier|Μακεδόνας]] 16:50, 23 January 2009 (UTC)
*{{Support}} --[[User:Consta|Consta]] 13:16, 23 February 2009 (UTC)
[[Category:wp/pnt|Βικιπαίδεια/Ψηφοφορίαν]]
== Bots ==
=== [[User:Purbo T|Purbo T]] ===
Hi there all. Sorry for writing in English, but would you be alright with giving [[User:VolkovBot]], [[User:SieBot]], [[User:JAnDbot]], and [[User:Darkicebot]] bot flags here? Thanks, [[Χρήστες:Razorflame|Razorflame]] 20:42, 9 Μαρτ 2009 (UTC)
:It will take a week before stewards will touch the requests anyways and my proposal for Global Bots here will cover all these bots I believe and only has 6 days to go. Once it goes through all of them will have the bot flag. -[[Χρήστες:Djsasso|Djsasso]] 01:25, 10 Μαρτ 2009 (UTC)
:: It looks like nobody has objections to the global bot proposal so let it be active also here [[Χρήστες:Carsrac|Carsrac]] 12:02, 15 Μαρτ 2009 (UTC)
:::Same question for [[User:Purbo T|Purbo T]]. Sorry for coming a bit behind the others. --[[Χρήστες:Purodha|Purodha]] 10:30, 17 Μαρτ 2009 (UTC)
Granted<tt>:)</tt>--[[Χρήστες:ZaDiak|ZaDiak]]
=== [[user:Dinamik-bot|Dinamik-bot]] ===
I request that [[user:Dinamik-bot|Dinamik-bot]] gets a bot flag. The bot will be add and fix interwiki links.
* '''Operator:''' [[:ru:user:Dinamik|Dinamik]]
* '''Mode:''' automatic
* '''Function:''' fix/add interwikis
* '''Software:''' [[:en:Python|Python]], [[:meta:pywikipedia|pywikipedia]]
* '''Technical details:''' autonomous mode
* '''already has a bot flag on:''' az, be-x-old, ca, cs, el, es, fa, fi, he, hy, id, it, ka, mk, nl, no, pl, pt, ro, ru, simple, sr, sv, tr, uk, zh, zh-yue
Thank you! [[Χρήστες:Dinamik|Dinamik]] 17:59, 29 Τρυγομηνά 2009 (UTC)
:Granted <tt>;)</tt> --[[Χρήστες:ZaDiak|ZaDiak]] 21:17, 29 Τρυγομηνά 2009 (UTC)
=== [[user:Egmontbot|Egmontbot]] ===
Αιτούμαι την σημαία bot για το [[user:Egmontbot|Egmontbot]]. Το bot θα βάζει μόνο interwiki. Αν δεν υπάρχουν τοπικά bot και '''μόνο κατόπιν εντολής''' από την κοινότητα το bot ευχαρίστως μπορεί να κάνει και άλλες δουλειές.
* '''Operator:''' [[:el:user:Egmontaz|Egmontaz]]
* '''Mode:''' automatic
* '''Function:''' fix/add interwikis
* '''Software:''' [[:meta:pywikipedia|pywikipedia]]
* '''Technical details:''' με επίβλεψη, ποτέ αυτόματα
* '''already has a bot flag on:'''el en (μόνο για αποσαφηνίσεις)'''
Ευχαριστώ. --[[User:Egmontaz|<b><font color="#082567">Egmontaℨ</font></b><font color="#CD5B45">♤</font>]]<i><font color="#F0E130"> <sup>[[User talk:Egmontaz|συζήτηση]]</sup></font></i> 17:15, 12 Κούντουρονος 2010 (UTC)
:Σου έδωσα τη σημαία. Καλή δουλειά!--<b>[[Χρήστης:ZaDiak|<font color="black">Ζάχον</font>]]</b><sup>[[User talk:ZaDiak|<font color="Crimson">Talk</font>]]</sup> 17:39, 13 Κούντουρονος 2010 (UTC)
== Πολιτικήν ==
===Bot policy===
Hello. To facilitate [[m:steward|steward]] granting of bot access, I suggest implementing the [[m:Bot policy|standard bot policy]] on this wiki. In particular, this policy allows stewards to automatically flag known interlanguage linking bots (if this page says that is acceptable), which form the vast majority of such requests. The policy also enables [[m:Bot policy#Global_bots|global bots]] on this wiki (if this page says that is acceptable), which are trusted bots that will be given bot access on every wiki that allows global bots.
This policy makes bot access requesting much easier for local users, operators, and stewards. To implement it we only need to create a redirect to this page from [[Project:Bot policy]], and add a line at the top noting that it is used here. Please read the text at [[m:Bot policy]] before commenting. If you object, please say so; I hope to implement in one week if there is no objection, since it is particularly written to streamline bot requests on wikis with little or no community interested in bot access requests. [[Χρήστες:Djsasso|Djsasso]] 20:34, 8 Μαρτ 2009 (UTC)
: Implemented. —<small>[[m:User:Pathoschild|Pathoschild]] 20:37:42, 15 Μαρτς 2009 (UTC)</small>
9e5srjqvque4idw2kyq7m9zo7mpvazr
Βοήθειαν:Περιεχόμενα
12
161
36089
36062
2024-12-12T23:33:28Z
Wolverène
4171
36089
wikitext
text/x-wiki
{{:Βικιπαίδεια:Πολιτική}}
<div style="float:right;border:1px dotted red;margin:5px;padding:2px;background:#FFF8DC;">(en) [[Βικιπαίδεια:Βοήθεια en|Βοήθεια in english]]</div>
Αδακά ολίγον '''βοήθειαν''' για να εφτάτε γραψίματα σην [[Βικιπαίδεια|Βικιπαίδειαν]].
== Ο τίτλον ==
Ο τίτλον τ' αρθρί να αρχίζ' με τ' ατά τα γράμματα. Ατό πρέπ' να ίνεται για να πηγαίνουν τα [[Ποντιακά|ποντιακά]] τ' άρθρα τ' incubator ουλ' εντάμαν, λ.χ. [[Ουσιαστικόν]].
== Κατηγορίας ==
Κάθαν γράψιμον πρέπ' να έχ' κατηγορίαν. Για να εφτάτε την κατηγοριοποίησην θα γράφετε ασόν άρθρον αφκά το category statement, την κατηγορίαν, λ.χ.:
*Για να βάζομε τ' άρθον ''Ουσιαστικόν'' σην κατηγορία ''Γραμματικήν'' θα γράφομε:
::<nowiki>[[Κατηγορίαν:Γραμματικήν|Ουσιαστικον]]</nowiki>
== Η λέξην μετά τη γραμμήν (|) ==
Η λέξην μετά τη γραμμήν (σο παράδειγμανεμουν: ''Ουσιαστικον'') θέκ' σ' αλφαβητικόν σειράν τα λέξεις ση σελίδαν τη κατηγορίων. Σο τίτλον 'κ θα γράφετε νε άρθρον νε σημείον για τον τόνον.
== Σελίδας κατηγορίων ==
Οι τίτλοι ούλ' τη σελιδίων εσέβνε αυτόματα σον κατάλογον τη σελιδίων κατηγορίων. Για να εμπάτε σε σελίδαν κατηγορίας εφτάτε κλικ σο category statement τ' αρθρί. Λ.χ. σ' ατό τη σελίδαν θα εφτάτε κλικ σο ''Wp/pnt/Βικιπαίδεια'' και θα εμπάτε σην σελίδα κατηγορίας «Βικιπαιδεία». Άλλα κατηγορίας τη [[Ποντιακά|ποντιακού]] τη Βικιπαίδειας:
*Category:Wp/pnt/Γραμματικήν
*Category:Wp/pnt/Κράτη
Όλεα τα σελίδας κατηγορίας πρέπ' να ευρίσκουνταν σ' άλλη κατηγορίαν. Ασ' ούλτ'ς απάν είναι η κατηγορίαν με τ' όνεμα ''Pontic Wikipedia'':
::<nowiki>[[Category:Pontic Wikipedia]]</nowiki>
== Λεχτικόν ==
Όντες θα εγράφετε άρθα σην Βικιπαίδειαν, θα χρειάσκουνταν και λέξεις ντο 'κ έχομε σα [[Ποντιακά|ρωμαίικα τα ποντιακά]] τη παλαιώνεμουν. Απόθεν θα παίρομ' ατά;
=== Ασ' αρχαία τ' ελλενικά ===
Τα λεξεις ντο 'κ έχομε θα παίρομε ατα ασ' εκείνα ντο είχαμε κι εχάσαμε. Ενούμε αδακά, τ' αρχαία τα λέξεις ντ' ενεσπάλθαν οσήμερον, επειδή και ο πολιτισμόσεμουν εξέπεσεν, λ χ. οπτική, αίστηση, αφή, γεωμετρία, μετεωρολογία, κ.τ.λ.
Άλλον λόγον ένι ότι πολλά ασ' ατά τα λέξεις ένταν διεθνικά κι θα λέγομ ατά αμόν ντο λέει ατά
όλεν ο κόσμον. Ασ' άλλ' την μερέαν πα έχομε λέξεις ντο 'κ ενεπέμναν τα ίδια, άμαν η ρίζανατουν ενεπέμνε και για τ' ατό εύκολα επορούμε να πάιρομ' ατά: «φαίνομαι» (έχομ' ατεν) -> «φαινόμενον» (θα παίρομ' ατεν) γιά «ερωτώ» -> «ερωτηματικόν».
=== Ασα ξένα γλώσσας ===
Αμόν ντ' επάρθαν ξενικά λέξεις κι ένταν ρωμαίικα σα παλαιά τα χρόνε, αέτς θα παίρομ' ατά κι οσήμερον. Τα ποντιακά έχνε πολλά ξενικά λέξεις, λ.χ. «κουμούλ» ασα λατινικά (''cumulus''), «αραεύω» ασα τουρκικά (''arama''), «καρτόφαι» ασα γερμανικά (''Kartoffel''), «καφές» ασα αραβικά (قهوة ''qahwa''), κ.τ.λ. Αμόν ντ' όλεα τα γλώσσας, αέτς και τα ποντιακά επαίραν ξενικά λέξεις αση λαούς που με τον πολιτιζμόν ατούν επηρέασαν τοι Ρωμαίοις τη Πόντονος.
=== Τρόπος ===
Θα παίρομε παράδειγμα τα νομς ντο τερούσαν όντες επαίραν τα παλαιά τα ξένα τα λέξεις (λ.χ. «αραεύω»): αν η λέξη ταιριάζ με το καλούπ' τη γλώσσας, θα παίρομ' ατεν όπως είν. Αν όχι, θα κανονίζομ' ατεν και θα βάλομ' ατεν σο καλούπ' τη ρωμαίικης: αέτς πα το ''ben arama'' έντον «αραεύω» και τα ''Kartoffeln'' «καρτόφαι». <br>
Σα λέξεις ασ' αρχαία τ' ελλενικά: «αφή» ταιρίαζ έτσι όπως εν. Άμαν η «όρασις» 'κ ταιριάζ και ίνεται «όραση» χωρίς ''-ς''.
== Κι άλλα για την Βικιπαίδεια ==
*[[Βικιπαίδεια/Ντο εν η Βικιπαίδεια|Ντο εν η Βικιπαίδεια]]
*[[Βικιπαίδεια/Ντο 'κ εν η Βικιπαίδεια|Ντο 'κ εν η Βικιπαίδεια]]
*[[Βικιπαίδεια/Δικαιώματα πνευματί|Δικαιώματα πνευματί]]
== Επικοινωνία ==
* [[Βικιπαίδεια:Αγορά|Αγορά]], ο κεντρικόν τόπον επικοινωνίας
* [http://meta.wikipedia.com/ Meta Wikipedia], a site that works alongside the main Wikipedia project. Here you can post essays and discussions about topics related to Wikipedia.
[[Category:Βικιπαίδεια|Βοηθεια]]
[[af:Wikipedia:Help]]
[[als:Wikipedia:Hilfe]]
[[am:Help:Contents]]
[[an:Wikipedia:Aduya]]
[[ang:Help:Innung]]
[[ar:مساعدة:محتويات]]
[[ay:Help:Contents]]
[[bg:Помощ:Съдържание]]
[[br:Wikipedia:Skoazell]]
[[bs:Pomoć:Sadržaj]]
[[ca:Viquipèdia:Ajuda]]
[[cs:Nápověda:Obsah]]
[[cy:Wicipedia:Cymorth]]
[[da:Hjælp:Forside]]
[[de:Wikipedia:Hilfe]]
[[el:Βικιπαίδεια:Βοήθεια]]
[[en:Wikipedia:Help]]
[[eo:Helpo:Enhavo]]
[[es:Wikipedia:Ayuda]]
[[et:Juhend:Sisukord]]
[[eu:Wikipedia:Laguntza]]
[[fa:راهنما:فهرست]]
[[fi:Wikipedia:Ohje]]
[[fo:Hjálp:Innihald]]
[[fr:Aide:Sommaire]]
[[fy:Wikipedy:Help]]
[[gl:Wikipedia:Axuda]]
[[he:עזרה:תפריט ראשי]]
[[hi:विकिपीडिया:सहायता]]
[[hr:Wikipedija:Pomoć]]
[[hsb:Wikipedija:Pomoc]]
[[hu:Segítség:Tartalom]]
[[hy:Help:Contents]]
[[ia:Wikipedia:Adjuta]]
[[id:Bantuan:Isi]]
[[ilo:Help:Contents]]
[[io:Helpo:Helpo]]
[[is:Hjálp:Efnisyfirlit]]
[[it:Aiuto:Manuale]]
[[ja:Wikipedia:ヘルプ]]
[[ka:ვიკიპედია:დახმარება]]
[[kn:ಸಹಾಯ:ಪರಿವಿಡಿ]]
[[ko:도움말:목차]]
[[ksh:Hölp:Hölp]]
[[ku:Wîkîpediya:Alîkarî]]
[[kw:Wikipedia:Gweres]]
[[lb:Wikipedia:Hëllef]]
[[li:Wikipedia:Gebroekersportaol]]
[[lt:Pagalba:Turinys]]
[[lv:Lietošanas pamācība]]
[[map-bms:Wikipedia:Bantuan]]
[[mi:Whakamārama:Kuputohu]]
[[mk:Помош:Содржина]]
[[mr:Help:Contents]]
[[ms:Bantuan:Kandungan]]
[[mt:Għajnuna:Kontenut]]
[[nds:Wikipedia:Hülp]]
[[nds-nl:Hulpe:Wikipedie]]
[[new:ग्वाहालि:धल:पौ]]
[[nl:Portaal:Hulp en beheer]]
[[nn:Hjelp:Innhald]]
[[no:Hjelp:Portal]]
[[pl:Pomoc:Spis treści]]
[[pms:Wikipedia:Agiut]]
[[pt:Ajuda:Página principal]]
[[qu:Wikipidiya:Yanapana]]
[[ro:Wikipedia:Ajutor]]
[[ru:Википедия:Справка]]
[[scn:Help:Aiutu]]
[[se:Help:Contents]]
[[simple:Help:Contents]]
[[sk:Pomoc:Obsah]]
[[sl:Pomoč:Vsebina]]
[[sq:Wikipedia:Ndihmë]]
[[sr:Помоћ:Садржај]]
[[stq:Hälpe:Hälpe]]
[[su:Wikipedia:Pitulung]]
[[sv:Hjälp:Innehåll]]
[[sw:Msaada wa kuanzisha makala]]
[[tl:Wikipedia:Tulong]]
[[ta:Wikipedia:உதவி]]
[[te:Help:Contents]]
[[th:วิกิพีเดีย:ความช่วยเหลือ]]
[[tr:Yardım:İçindekiler]]
[[ug:Yardem:Contents]]
[[uk:Вікіпедія:Довідка]]
[[ur:معاونت:فہرست]]
[[vi:Trợ giúp:Mục lục]]
[[wa:Wikipedia:Aidance]]
[[yi:הילף:אינהאַלט]]
[[zh:Help:目录]]
[[zh-classical:Help:協助]]
[[zh-min-nan:Help:Bo̍k-lio̍k]]
dykt6y04akutjaa0ljjjlasn22q6iiw
Βικιπαίδεια:Βοήθεια en
4
162
33984
33971
2018-10-27T16:42:42Z
Wim b
3723
Ανάκληση των αλλαγών [[Special:Contributions/91.140.89.219|91.140.89.219]] ([[User talk:91.140.89.219|συζήτηση]]) επιστροφή στην προηγούμενη αναθεώρηση [[User:Wim b|Wim b]]
33932
wikitext
text/x-wiki
<div style="float:right;border:1px dotted red;margin:5px;padding:2px;background:#FFF8DC;">(pnt) [[Βοήθειαν:Περιεχόμενα|Βοήθεια σα ρωμαίικα ποντιακά]]</div>
Some '''Βοήθεια''' in English for creating articles in [[Βικιπαίδεια]].
== Categorization ==
Each article should belong to a category. To categorize an article, add a ''category statement'' at the bottom of the article, such as:
*For the ''Ουσιαστικόν'' article in the ''Γραμματικήν'' category:
::<nowiki>[[Category:Γραμματικήν|Ουσιαστικον]]</nowiki>
== The word after the pipe (|) ==
Τhe word after the pipe (in this example ''Ουσιαστικον'') enables proper alphabetization on the category pages. The title of the page should be given here without definite articles and without accents.
== Category pages ==
These pages automatically list all the articles in that category. To access a category page, click on the category statement at the bottom of the page. For example, on this page, click on ''Βικιπαίδεια'' below to access the Βικιπαιδεία category page. Some other categories in Pontic Greek Wikipedia include:
*Category:Γραμματικήν
*Category:Κράτη
All category pages must themselves belong to another category. The top-level categories all belong to the master category called ''Wp/pnt'':
::<nowiki>[[Category:Wp/pnt]]</nowiki>
[[Category:Βικιπαίδεια|Βοηθεια]]
6h05wxy89bvecnm80hgjzjyk9y03jec
Βικιπαίδεια:Δικαιώματα πνευματί
4
163
33979
33976
2018-10-27T16:41:27Z
Wim b
3723
Ανάκληση των αλλαγών [[Special:Contributions/91.140.89.219|91.140.89.219]] ([[User talk:91.140.89.219|συζήτηση]]) επιστροφή στην προηγούμενη αναθεώρηση [[User:Addbot|Addbot]]
31626
wikitext
text/x-wiki
{{:Βικιπαίδεια: Πολιτική}}
Βαλέστε άρθρα σην [[Βικιπαίδεια|Βικιπαίδειαν]] όνταν κατέχετε τα '''δικαιώματα πνευματί''' μαναχόν. Αδακά 'κ εν ο τόπον για να θέκουμε γράψιμον ντ' έγραψαν αλλ θίχως ν' ερωτούματοιντς! Βαλέστε άρθα ντ' επιτρέπ' η [[:w:el:Άδεια Ελεύθερης Τεκμηρίωσης GNU|Άδεια Ελεύθερης Τεκμηρίωσης GNU]].<br />
Επίσης ούλαι τα τεσέτερα τα γραψίματα θα μεταχειρίσκουνταν άμον ντο λεει αβούτεν η άδειαν.
Ατό αν 'κ θέλετε να ίνεται, ξάι μην εφτάτε το αποθήκεμαν τη γραψιματίνεσουν.
Άμαν καμμίαν κι ανασπάλλετε: Αδακά 'κ εν ο τόπον για να θέκουμε γράψιμον ντ' έγραψαν αλλ!
== Κι άλλα για την Βικιπαίδεια ==
*[[Βικιπαίδεια/Βοήθεια|Βοήθεια]]
*[[Βικιπαίδεια/Ντο εν η Βικιπαίδεια|Ντο εν η Βικιπαίδεια]]
*[[Βικιπαίδεια/Ντο 'κ εν η Βικιπαίδεια|Ντο 'κ εν η Βικιπαίδεια]]
== Επικοινωνία ==
* [[Βικιπαίδεια:Αγορά|Αγορά]], ο κεντρικόν τόπον επικοινωνίας
[[Category:Βικιπαίδεια|Δικαιωματα πνευματι]]
bhgsezy5adbu44zxqq3x47490a7m4fa
Βικιπαίδεια:Ντο 'κ εν η Βικιπαίδεια
4
165
36088
36060
2024-12-12T23:33:21Z
Wolverène
4171
36088
wikitext
text/x-wiki
{{:Βικιπαίδεια: Πολιτική}}
Η [[Βικιπαίδεια]] εν δικτυακόν, ουδέτερον εγκυκλοπαίδειαν. Δικτυακόν κοινότηταν γράφ' και ωριάζ' ατέναν. Για τ' ατό ας εξέρουμε κάποια πράματα που 'κ εν για την Βικιπαίδειαν. Δέβασον και θα μαθάν'ς.
== Ντο 'κ εν η Βικιπαίδεια ==
* '''Η Βικιπαίδεια 'κ εν λεξικόν'''. Για τ' ατό 'κ επορεί να έχ' άρθρα για όλεα τα λέξεις τη γλώσσας.
* '''Η Βικιπαίδεια 'κ εν τόπον για τα τ' εσέτερα τα προσωπικά τα νουνίζματα και ιδέας'''. Θα γράφουμε ατά που λέγνε μας η επιστήμη και τα γεγονότα. Όντες η επιστήμη λεει μας δυο πράματα αντίθετα απάν σο θέμαν, και το ένα θα γράφουμε και το άλλο. Αέτς πα θα τοπλαεύουμε τα γνώσιας.
* '''Η Βικιπαίδεια 'κ εν φορούμι'''. Επορείτε να γράφετε ούλ' ατά ντο θέλετε σα σελίδας καλατσεματί τη χρηστίων. Ακαικά να εφτάτε παρακάθ' και διάλογον. Σα σελίδας καλατσεματί τ' αρθρίων επορείτε ν' εφτάτε διάλογον για να λύνετε τα προβλήματα τ' αρθρί. Άμα ση σελίδαν τ' αρθρί θα γράφετε σο θέμαν απάν μαναχόν. Να μην εφτάτε καλάτσεμαν σο άρθρον απές.
* '''Η Βικιπαίδεια 'κ εν τόπον για να γράφουμε γνώσια ντο 'κ ξέρουμε καλά'''. Για τ' αναγνώριμα τα θέματα ξάι 'κ θα γράφετε.
* '''Η Βικιπαίδεια 'κ εν τόπον για να εφτάμε πρωτότυπον αράεμαν'''. Αδακά 'κ θ' αραεύουμε καινούρεα ιδέας, λέξεις, θεωρίας και λύσεις. Τ' εσέτερα τα αραέματα για το θέμαν θα δημοσιεύετε τα σ' άλλον τόπον.
* '''Η Βικιπαίδεια 'κ εν τόπον για να εφτάμε καταλόγους με συνδέσμους, εικόνας και αρχεία ήχου'''.
* '''Η Βικιπαίδεια 'κ εν τόπον για να εφτάμε ρεκλάμα και διαφήμιση'''.
* '''Η Βικιπαίδεια 'κ εν τόπον για να τοπλαεύουμε κείμενα ντο 'κ έγραψαμε'''. Βαλέστε κείμενα όνταν κατέχετε τα [[Βικιπαίδεια/Δικαιώματα πνευματί|δικαιώματα πνευματί]].
* '''Η Βικιπαίδεια 'κ θα τυπώνεται σε χαρτίν'''. Για τ' ατό επορεί να έχ' συνδέσμαι, να αλλάζ' την μορφήν ατ'ς και να τρανείν.
* '''Η Βικιπαίδεια 'κ εν τόπον για να εφτάμε προσωπικόν σάιτ''' (Αυτοπροβολή).
== Ντο θα ίνεται αν εφτάτε αλλέτερα ==
* Άλλος χρήστες θα εφτάει αλλαγάς απάν σο τ' εσόν το γράψιμον.
* Ανίσως το άρθρον εν κατάλληλον, θ' αποθηκεύοματο γιά σην [[s:el:Κύρια Σελίδα|Βικιθήκην]] γιά σα [[:q:el:Κύρια_Σελίδα|Βικιφθέγματα]]. Ώσποτα άμαν 'κ εν κατάλληλον, το άρθρον θα σβήεται.
* Αφότε τ' άρθρον εν άχρηστον, θα σβήεται αλήγορα.
* Αφότε ο χρήστες εν τεβεκενλής και συνεχίζ' ξάι 'κ να τερεί τα νομς ντο κανονίζ'νε τη Βικιπαίδειαν, θ' ασπαλίζ'νε την IP ή τη λογαρίαν ατ'.
== Κι άλλα για την Βικιπαίδεια ==
* [[Βικιπαίδεια/Βοήθεια|Βοήθεια]]
* [[Βικιπαίδεια/Ντο εν η Βικιπαίδεια|Ντο εν η Βικιπαίδεια]]
* [[Βικιπαίδεια/Δικαιώματα πνευματί|Δικαιώματα πνευματί]]
== Επικοινωνία ==
* [[Βικιπαίδεια:Αγορά|Αγορά]], ο κεντρικόν τόπον επικοινωνίας
* [http://meta.wikipedia.com/ Meta Wikipedia], a site that works alongside the main Wikipedia project. Here you can post essays and discussions about topics related to Wikipedia.
[[Κατηγορίαν:Βικιπαίδεια|Ντο 'κ εν η Βικιπαιδεια]]
f3jr0g7n5eirq02phusi5h8y38vm5tk
Βικιπαίδεια:Ντο εν η Βικιπαίδεια
4
166
26125
1589
2012-04-03T17:17:13Z
80.187.107.158
/* Βασικά στοιχεία */ Π'εχπαστεν :)
26125
wikitext
text/x-wiki
{{:Βικιπαίδεια: Πολιτική}}
H '''[[Βικιπαίδεια|Βικιπαίδεια]]''' εν [[εγκυκλοπαίδεια|εγκυκλοπαίδειαν]] το περιεχόμενον ατς εν ελεύθερον. Γράφκεται απ' ατείντζ π' θέλνε να εργάσκουνταν και να συνεργάσκουνταν ο εις με τ' άλλον, αέτς για να τρανείν η εγκυκλοπαίδειαν. Λέγομε «[[ελεύθερον περιεχόμενον|ελεύθερον περιεχόμενον]]» κι ενούμε αδακά ντ' επορεί να ίνεται χρήση, αντιγραφή και αλλαγή τη σελιδίων ασ' ούλτς π' θέλνε. Πλέα νομς ντο κανονίζνε τη λειτουργείαν τη Βικιπαίδειας θα ευρίσκετ' ατα σα [[Βικιπαίδεια/Δικαιώματα πνευματί|Δικαιώματα πνευματί]].
== Βασικά στοιχεία ==
Αβούτο η σελίδαν εν [[Wiki|wiki]]: Ούλ' οι χρήστες επορούν ν' εφτάνε κι ν' αλλάζνε τα σελίδας αθέ πατώντας το κουμπίν ''άλλαξον''. Οι χρήστες επορούν ν' εργάσκουνταν σ' όλεα τα σελίδας, εξόν τ' ολίγα τα ειδικά που είν' ασπαλιγμένα.
Το [[Ποντιακά|ποντιακόν]] το τεστ τη Βικιπαίδειας ερχίνεσεν σα 23 τη Σταυρίτε 2007 κι ατώρα έχ' {{NUMBEROFARTICLES}} άρθρα. Κι άλλο πολλά άρθρα έχ' [[w:el:Βικιπαίδεια:Γλώσσες|σ' άλλα γλώσσας]].
Η άδεια χρήσης με τόνεμαν [[w:el:GFDL|GNU Free Documentation License]] ωριάζ' τα περιεχόμενα τη Βικιπαίδειας. Τα συνεισφοράντας εναπομέν'νε ιδιοκτησίαν τ' ατεινών π' εφτάγν' ατείν, άμαν η άδεια χρήσης δίγει το δικαίωμαν για χρήσην, αναδιανομήν και αναπαραγωγήν.
{|
|[[Image:Down-r1.svg|47px]] ||'''Σημείωση 1:''' Το ρωμαίικον η Βικιπαίδειαν εχπάστεν με πρότυπο τ' [[:el:Κύρια_Σελίδα|ελλενικόν]] την έκδοσην και τα τρανά τα Βικιπαίδειας, τ' [[:en:Main_Page|αγγλικόν]] και το [[:de:Hauptseite|γερμανικόν]]. Πολλά άρθρα και οδηγίας 'κ είν' μεταφρασμέν' ακόμαν. Για τ' ατό επορείτε να δεαβάσετε τ' ανάλογα τ' άρθρα σ' αγγλικόν την έκδοσην όντες 'κ έχομ ατα αδακά.
|-
|
|-
|[[Image:Up-r1.png|47px]] || '''Σημείωση 2:''' Η Βικιπαίδεια θα έχ' ορισμένα άρθρα το 'κ θα ερέχκουνταν τα μερικοί χρήστες. Δεαβάστεν το [[w:en:Wikipedia:Content disclaimer|content disclaimer]] για να μαθάνετεν κι άλλα για το θέμαν.
|}
== Τερέστεν και ==
*[[Βικιπαίδεια/Βοήθεια|Βοήθεια]]
*[[Βικιπαίδεια/Ντο 'κ εν η Βικιπαίδεια|Ντο 'κ εν η Βικιπαίδεια]]
*[[Βικιπαίδεια/Δικαιώματα πνευματί|Δικαιώματα πνευματί]]
== Επικοινωνία ==
* [[Βικιπαίδεια:Αγορά|Αγορά]], ο κεντρικόν τόπον επικοινωνίας
* [http://meta.wikipedia.com/ Meta Wikipedia], a site that works alongside the main Wikipedia project. Here you can post essays and discussions about topics related to Wikipedia.
== Η Βικιπαίδεια σ' άλλα γλώσσας ==
</div>
<div style="font-size:115%; padding-left:5px; margin-bottom: 0.5em; text-align: left">
<!--Biggest Wikipedias-->
'''100 000 +'''<br/></div>
<div style="font-size:95%; padding-left:7px; margin-bottom: 1em; text-align: left">
[[:en:|English]] •
[[:de:|Deutsch (German)]] •
[[:ja:|日本語 (Japanese)]] •
[[:fr:|Français (French)]] •
[[:pl:|Polski (Polish)]] •
[[:fi:|Suomi (Finnish)]] •
[[:sv:|Svenska (Swedish)]] •
[[:nl:|Nederlands (Dutch)]] •
[[:es:|Español (Spanish)]] •
[[:it:|Italiano (Italian)]] •
[[:no:|Norsk (Norwegian Bokmål)]] •
[[:pt:|Português (Portuguese)]] •
[[:ru:|Русский (Russian)]] •
[[:zh:|中文 (Chinese)]]
</div>
<!--Biggest Wikipedias-->
<div style="font-size:100%; padding-left:7px; margin-bottom: 0.5em; text-align: left">
<!--Large Wikipedias-->
'''10 000 +'''</div>
<div style="font-size:95%; padding-left:7px; margin-bottom: 0.5em; text-align: left">
[[:ar:|العربية (Arabic)]] •
[[:bg:|Български (Bulgarian)]] •
[[:bs:|Bosanski (Bosnian)]] •
[[:ca:|Català (Catalan)]] •
[[:cs:|Česká (Czech)]] •
[[:cy:|Cymraeg (Welsh)]] •
[[:da:|Dansk (Danish)]] •
[[:el:|Ελληνικά (Greek)]] •
[[:eo:|Esperanto]] •
[[:et:|Eesti (Estonian)]] •
[[:eu:|Euskara (Basque)]] •
[[:gl:|Galego (Galician)]] •
[[:he:|עברית (Hebrew)]] •
[[:hi:|हिन्दी (Hindi)]] •
[[:hr:|Hrvatski (Croatian)]] •
[[:hu:|Magyar (Hungarian)]] •
[[:io:|Ido]] •
[[:id:|Bahasa Indonesia (Indonesian)]] •
[[:is:|Íslenska (Icelandic)]] •
[[:jv:|Basa Jawa (Javanese)]] •
[[:ko:|한국어 (Korean)]] •
[[:la:|Latina (Latin)]] •
[[:lb:|Lëtzebuergesch (Luxembourgish)]] •
[[:lt:|Lietuvių (Lithuanian)]] •
[[:lv:|Latviešu (Latvian)]] •
[[:ms:|Bahasa Melayu (Malay)]] •
[[:nds:|Plattdüütsch (Low Saxon)]] •
[[:nn:|Norsk (Norwegian Nynorsk)]] •
[[:fa:|فارسی (Persian)]] •
[[:ro:|Română (Romanian)]] •
[[:scn:|Sicilianu (Sicilian)]] •
<!--'''Simple''' • -->
[[:sk:|Slovenčina (Slovak)]] •
[[:sl:|Slovenščina (Slovenian)]] •
[[:sr:|Српски (Serbian)]] •
[[:su:|Basa Sunda (Sundanese)]] •
[[:ta:|தமிழ் (Tamil)]] •
[[:th:|ไทย (Thai)]] •
[[:tr:|Türkçe (Turkish)]] •
[[:uk:|Українська (Ukrainian)]] •
[[:vi:|Tiếng Việt (Vietnamese)]]
</div>
<div style="font-size:100%; padding-left:7px; margin-bottom: 0.5em; text-align: left">
<!--Wikipedias with many articles-->
'''1 000 +'''</div>
<div style="font-size:95%; padding-left:7px; margin-bottom: 1em; text-align: left">
[[:af:|Afrikaans]] •
[[:ast:|Asturianu (Asturian)]] •
[[:be:|Беларуская (Belarusian)]] •
[[:csb:|Kaszëbsczi (Kashubian)]] •
[[:fy:|Frysk (Western Frisian)]] •
[[:ga:|Gaeilge (Irish)]] •
[[:ia:|Interlingua]] •
[[:ku:|Kurdî (Kurdish)]] •
[[:kw:|Kernewek (Cornish)]] •
[[:zh-min-nan:|Bân-lâm-gú (Southern Min)]] •
[[:oc:|Occitan]] •
[[:sa:|संस्कृत (Sanskrit)]] •
[[:sco:|Scots]] •
[[:tt:|Tatarça (Tatar)]] •
[[:ur:|اردو (Urdu)]]
[[:wa:|Walon (Walloon)]] •
[[:yi:|יידיש (Yiddish)]] •
[[:zh-classical:|古文/文言文 (Classical Chinese)]]
<!--Wikipedias with many articles-->
</div>
<div style="font-size:95%; padding-left:7px; margin-bottom: 0.5em; text-align: left">
<!--Wikipedias with fewer articles-->
'''100 +'''</div>
<div style="font-size:95%; padding-left:7px; margin-bottom: 1.5em; text-align: left">
[[:cr:|Nehiyaw (Cree)]] •
[[:cu:|словѣньскъ (Old Church Slavonic)]] •
[[:got:|gutisk (Gothic)]] •
[[:mi:|Māori]]
</div>
== Παρόμοια έργα ==
*[http://wiktionary.org Wiktionary], a multilingual Wiki dictionary and thesaurus.
*[http://textbook.wikipedia.org Wikibooks], a Wikipedia-like project to create open content textbooks.
*[http://wikiquote.org Wikiquote], a compendium of quotations in every language. (Τερέστεν: [[s:el:Κύρια Σελίδα|Βικιθήκη]])
*[http://sources.wikipedia.org Wikisource], a collection of public domain source texts.
[[Category:Βικιπαίδεια|Ντο εν η Βικιπαιδεια]]
[[el:Βικιπαίδεια:Τι είναι η Βικιπαίδεια]]
erqwabg5fvohhb5di1csq99gopcuce7
Βικιπαίδεια:Ποντιακόν γράψιμον
4
167
27119
27064
2012-06-12T04:19:01Z
Omnipaedista
35
Undo revision 27064 by [[Special:Contributions/178.59.226.136|178.59.226.136]]
27119
wikitext
text/x-wiki
Αδακά καλατςςέβουμε για το '''ποντιακόν το γράψιμον'''. Σο κέντρον τη προσοχήσεμουν στέκ' το ζήτημαν πως να εφτάμε και ατά ντο γράφουμε να είναι σωστά, να προφέρκουνταν σωστά, και να εγροικούν ατα ατοί π' δεαβάζν'ατα. Το σωστόν το ποντιακόν το γράψιμον ποίον εν; Χρειάσκουμες νομς για το ποντιακόν το γράψιμον; 'Κ εν εύκολα ερωτήσεις. Άμα, έναν πράμαν εξέρουμε: Τα ποντιακά επίσημον ορθογραφίαν 'κ έχνε. Για τ'ατό ο καθαείς αγράφτ, άμον ντο θελ'. 'Κ επρέπ' να γράφετε άμον ντο λέμε αφκά καικά. Να εφτάν'ατο ατοί π'θέλνε.
== Ποντιακά φτόγγοι που 'κ εςς ατα το νεοελλενικόν η λαλίαν ==
Το [[Ποντιακόν λαλίαν|ποντιακόν η γλώσσα]] εςς φτόγγους που 'κ έχν' ατα τα νεοελλενικά. Τ'οσημερνόν τ'ελλενικόν τ'αλφάβητον 'κ εςς γράμματα για να γράφομ'ατα. Αέτς πα έχομε τον φτόγγον {{IPA|[ʃ]}}, λ.χ. σα λέξεις «πι'''ςς'''ία», «τ'''ςς'''αΐζω». Με το ιστορικόν την ορθογραφίαν γράφομ'ατα «πισία» και «τσαΐζω», άμα το γράμμαν '''σ''' (προφέρκεται {{IPA|[s]}}) 'κ διγ το σωστόν τη προφοράν. Το σωστόν η προφορά τη λέξης «πιςςία» εν {{IPA|[piʃ'ia]}}. Η προφορά {{IPA|[pis'ia]}}'κ εν σωστόν. Για τ'ατό γράφομ'ατα με ιδιαίτερον τρόπον.
== Νεοελληνικόν γράψιμον ==
Εδώ είναι το σύστημα του [[Κώστας Τοπχαράς|Κώστα Τοπχαρά]] συνδυασμένο με νεοελληνική ορθογραφία:
{| class="wikitable"
|-
! Φτόγγον<br>([[w:en:IPA|IPA]]) !! Φτόγγον<br>σ'άλλον γλώσσα !! Πως να γράφομ'ατον<br>σην λέξην απές !! Πως να γράφομ'ατον<br>σο τέλος τη λέξης !! Παράδειγμαν
|-
| {{IPA|[ʃ]}} || '''sh'''eep (english)<br>'''ch'''er (français)<br>|| ςς (ή ς) || ςς || '''ςς'''ερ (ή '''ς'''ερ), ε'''ςς'''
|-
| {{IPA|[ʒ]}} || plea'''s'''ure (english)<br>'''j'''our (français)<br>|| ζζ || ζζ || χαλά'''ζζ'''α
|-
| {{IPA|[tʃ]}} || '''ch'''eap (english)<br>|| τζ (ή τςς) || τζ (ή τςς) || '''τζ'''αΐζω (ή '''τςς'''αΐζω)
|-
| {{IPA|[dʒ]}} || '''j'''oke (english)<br>|| ντζζ || ντζζ || ''ο φτόγγον '''ντζζ''' 'κ εν συχνόν''
|-
|}
== Εναλλαχτικόν γράψιμον ==
===Σύμφωνα===
====Αλλέτερα ορθογραφικά σύστεματα====
*σ΄ σ̌ ʃ ш ςς ς
*Σ΄ Σˇ Ʃ Ш Ϛς Ϛ
*ζ΄ ζˇ ʒ ж ζζ
*Ζ΄ Ζˇ Ʒ ж Ζζ
====Τελικόν πρότασην====
''Πρώτα η επιστημονική γραφή, μετά η γραφή κατά το σύστημα Τοπχαρά, και τέλος η γραφή της Βικιπαίδειας''
*'''σ''' --> ''š σ΄'': šκεπάζω ςςκεπάζο ςκεπάζω, šκίζω ςςκίζω ςκίζω, šκύλον ςςκίλον σ΄κύλον {π.χ. Ϛςκύλον ή Σ΄κύλον}, έςˇ έςς (ΕϚϚ (κατά Τοπχαρά) ή ΕΣ΄)
*χ --> ''ĥ σ΄'': ĥέρι ςςέρι σ΄έρι, ĥαιρετώ ςςεραιτό σ΄εραιτώ, ĥίλä ςςίλεα σ΄ίλεα
**εδώ εναλλακτικά για ετυμολογικούς λόγους θα μπορούσε να χρησιμοποιηθεί και το χ΄ (πχ: χ΄ἐρι)
*'''ζ''' --> ''ž ζ΄'': χαλάžä χαλάζζεα χαλάζ΄εα, žαγκώνω ζζαγκόνο ζ΄αγκώνω
*ξ --> ''κš κσ΄'': κšύνω κςςίνο κσ΄ύνω|ξ΄ύνω
*ψ --> ''πš πσ΄'': πšη πςςι πσ΄η|ψ΄η
*τσ --> ''τš τσ΄'': καλατσ̌έβ καλατςςέβ|καλατζέβ καλατσ΄έβ
*[zm] δηλώνεται (κατά Τοπχαρά) με ζμ: σύνδεζμον ή και (κατά την φωνημική ορθογραφία) με σμ: σύνδεσμον
====Σημείωσην====
Ο Τοπχαράς ''δεν'' χρησιμοποιεί διαφορετικα συμβολά για το τελικό και για το μέσο [s] καθώς χρησιμοποιεί και για τα δύο το ς (και στα κεφαλαία το Σ, φυσικά).
<br>Αλλά αν κάποιος θέλει να γράφει (στη μικρογράμματη γραφή) και με τελικό και μέσο σίγμα, υπάρχει η εξής πρόταση:
* Μέσα: σ [s] σ΄ [ʃ] (στα κεφαλαία Σ, Ϛ)
* Τελικά: ς [s] ς΄ [ʃ] (στα κεφαλαία Σ, Ϛ)
Πρέπει να σημειωθεί ότι η δήλωση του δίγραφου σσ/ςς για την δήλωση του [ʃ] δεν δουλεύει καλά όταν συνδυάζεται με ιστορική γραφή. H λέξη "γλώσσα", παραδείγματος χάριν, γράφεται με δύο σ για ετυμολογικούς λόγους και όχι επειδή εμπεριέχει κάποιο ουρανικό φθόγγο.
''Πρόστετος πρότασην'': για λόγους συνέπειας ''δεν'' προτείνεται ορθογραφική γραφή για τους δίφθογγους <αυ> και <ευ>: πχ: καλατσ΄έβ ~ εκαλάτσ΄εβαν, και ὀχι καλατσ΄έβ ~ εκαλάτσ΄ευαν.
===Διακριτικά===
''Πρώτα η επιστημονική γραφή, μετά η γραφή της Βικιπαίδειας''
*''' ΄ ουράνωση'''
**μ΄ [mɲ]
***ομ΄εάζω [om'ɲæzo] (αλλά για λόγους συνέπειας ''όχι'' με γράμματα αντί για διακριτικό σύμβολο, πχ: ομ'''οι'''εάζω)
**δ΄ [ðj]
***δ΄εάβασον (Δ΄ΕΑΒΑΣΟΝ) (αλλά καλύτερα ''όχι'' με γράμμα αντί για διακριτικό σύμβολο, πχ: δ'''ι'''εάβασον)
**ζ΄ [ʒ]
***χαλάζ΄' αδακά (ΧΑΛΑΖ΄' ΑΔΑΚΑ και κεφαλαία με τόνους: ΧΑΛΆΖ΄' ΑΔΑΚΆ) ή χωρίς απόστροφο: χαλάζ΄α αδακά
*''' ' απόστροφος''' (προαιρετικά)
**ιδέασεσουν ή ιδέας'εσουν
**δογμενίων'εσουν ή χωρίς απόστροφο δογμενίωνεσουν
===Φωνήεντα===
''Πρώτα η επιστημονική γραφή και μετά η γραφή της Βικιπαίδειας''
*''ä εα'' [æ]: όλä όλεα, οσπίτä οσπίτεα, λ΄öντάρä λ΄εοντάρεα, τραγωδ΄ä́νον τραγωδ΄εάνον, κιφάλä κιφάλεα, θέλετ'äτο (<-- θέλετε ατό) θέλετ'εατό, ομ΄ä́ζω ομ΄εάζω (η εναλλακτικό δίγραφο δημιουργεί σύγχιση με το νεοελληνικό δίγραφο αι που προφέρεται αλλιώς από το ποντιακό)
*''ö εο'' [œ]: τελ΄ö́νω τελ΄εόνω, ĥ΄ö́νιν σ΄εόνιν (πχ: Ϛςεόνιν ή Σ΄έονιν)
===Σύνοψην===
*Δύο μη νεοελληνικοί δίψηφοι φωνηεντικοί μονόφθογγοι: εα, εο
*Δύο μη νεοελληνικοί δίψηφοι συμφωνικοί μονόφθογγοι ''για όσους ακολουθούν το σύστημα Τοπχαρά'': ςς, ζζ
*Μόνον δύο διακριτικά: απόστροφος (') για τη προαιρετική δήλωση της έκθλιψης, και απλός τόνος (΄) για τα ουρανωμένα σύμφωνα (πλην του [ʃ] που έχει δικό του γράμμα)
*Μόνον ένα εξωτικό σύμβολο ''για όσους ακολουθούν το σύστημα Τοπχαρά'': το στίγμα κεφαλαίo: Ϛ (εναλλακτικά, αντί αυτού: Σ΄)
''Πρόστετος πρότασην'': ''Ὀπου είναι εφικτό'' προτείνεται ετυμολογική ορθογραφία ''στα φωνήεντα'' κατά τα πρότυπα της νεοελληνικής.
==Ορθογραφίαν Τοπχαρά==
Παραδείγματα και στο πλήρως απλοποιημένο φωνητικό αλφάβητο (και ελληνικό και λατινικὀ) σε περίπτωση που επιλεχθεί σαν ''εναλλακτικό'': ςςκίλον shkilon, τραγοδιεάνον trağodieanon, διεάβαζον dyeavazon, ομιεάζο omyeazo, τελιεόνο telyeono, ντο nto, έμπαζμαν empazman, μπορίτε mporite, σίνδεζμον syndezmon, εγκικλοπέδια engiklopedia, άνκελον angelon, βοίθιαν voithian, εξέρετεν exereten, καλατςςέβ|καλατζέβ kalatshev, χτίετεν htieten, αποκ'''υ'''μπίςκατε apokumbiskate, Σταβρίτε Stavrite, ςςεόνιν sheonin, χαλάζζ halazh, 'κ εςς 'k esh, κςάι ksai (το αι αποδίδεται με ε / e - τα ει, οι, η, υ, ι με ι / i - τα ο, ω με o / o - το ου με υ / u).
''Σημείωσην 1'': ο Τοπχαράς χρησιμοποιεί το <υ> [u] στη θέση του νεοελληνικού <ου> [u], και το <ι> [i] στη θέση του νεοελληνικού <υ> [i]. Επίσης χρησιμοποιεί το δίγραφο <γκ> αποκλειστικά για την δήλωση του [ɡ], ενώ για το σύμπλεγμα [nɡ] χρησιμοποιεί το <νκ>. Επίσης για να δηλώσει το [ss] χρησιμοποιεί ενωτικό <ς-ς> ανάμεσα στα ς για να αποφύγει την σύγχιση με το <ςς> [ʃ].
''Σημείωσην 2'': ο Τοπχαράς χρησιμοποιεί την γραφή <τζ> [tʃ] στη θέση της νεοελληνικής διαλεκτικής γραφής <τσ΄> [tʃ] και τη γραφή <ντζ> [dz] στη θέση της νεοελληνικής <τζ> [dz].
== Τέρεν και ==
*[[Ποντιακόν λαλίαν|Ποντιακόν λαλίαν]]
== Βιβλιογραφία ==
*Τοπχαράς, Κ. 1928, 1932: ''Γραμματική της ποντιακής διαλέκτου''. Ρόστοβ-Ντον, Εκδότης: Κυριακίδη Αφοί ΑΕ, ISBN 960-343-448-5
[[Category:Βικιπαίδεια|Ποντιακον γραψιμον]]
l7h9d9srbs4tfr0ykofls3wl2v5mjb7
Βοσνία και Ερζεγοβίνη
0
168
32117
31543
2014-11-21T14:42:00Z
CommonsDelinker
121
The file [[:Image:Wiktionary-logo-el.png]] has been replaced by [[:Image:Greek_wiktionary_logo.png]] by administrator [[:commons:User:Billinghurst]]: ''exact or scaled-down duplicate''. ''[[m:User:CommonsDelinker|Translate me!]]''
32117
wikitext
text/x-wiki
[[Αρχείον:Flag of Bosnia and Herzegovina.svg|thumb|Η σημαία τη Βοσνίας Ερζεγοβίνης]]
[[Αρχείον:Map Bih entities.png|thumb|250px|right]]
Η '''Βοσνία και Ερζεγοβίνη''' (λατινικόν γράψιμον: ''Bosna i Hercegovina'', κυριλλικόν γράψιμον: ''Босна и Херцеговина'') εν [[κράτος]] σο νοτιανατολικόν τ' [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν το [[Σαράγιεβο]] και ο πρόεδρον ατ'ς εν ο [[Νίκολα Σπίριτς]]. Ο πληθυσμόν τη χώρας εν σα 4.552.000 τ' ανθρώπ'ς απαναφκά (Χορτοθέρτς 2007).
== Γεωγραφίαν ==
Η Βοσνίαν κι Ερζεγοβίνην ευρίεται σο [[Αδριατικόν θάλασσα|Αδριατικόν τη θάλασσα]], ανάμεσα σην [[Σερβία|Σερβίαν]], σην [[Κροατία|Κροατίαν]] και σο [[Μαυροβούνιο|Μαυροβούνιον]]. Έχ' τρανά πολιτείας τη [[Μπάνια Λούκα|Μπάνια Λούκαν]] και την [[Τούζλα|Τούζλαν]].
== Ιστορίαν ==
Σα 1918 τη χρονίαν τ' οσημερνόν το κράτος έντον φελίν πολυεθνικού του «Βασίλειονος τη Σερβαντίων, τη Κροαταντίων και τη Σλοβεναντίων». Ατό το κράτος επαίρεν σα 1929 τη χρονίαν τ' όνεμα «Γιουγκοσλαβία». Μετά τα 1945 έντον κομμουνιστικόν χώραν. Απές εκαικά έτον μιαν ασα Δημοκρατίας ατ'ς. Σα 1992 τη χρονίαν ερχίνεσε τρανόν πόλεμον ανεξαρτησίας (1 Απρίλτ 1992 - 14 Χριστουγενναρί 1995). Η Γιουγκοσλαβίαν εταγουτεύτεν κι επεκεί Βοσνάντ εποίκαν τ' ατεινών τ' οσημερνόν τ' ανεξάρτητον κράτος.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Bosnia and Herzegovina|Η Βοσνίαν κ' Ερζεγοβίνην σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Βοσνία και Ερζεγοβίνη|Η Βοσνίαν κ' Ερζεγοβίνην σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Bosnia and Herzegovina|Χάρτες ασην Βοσνίαν κ' Ερζεγοβίνην]]'''
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Βοσνία και Ερζεγοβίνη]]
[[Κατηγορίαν:Ευρώπη|Βοσνία και Ερζεγοβίνη]]
[[Κατηγορίαν:Βαλκάνια|Βοσνία και Ερζεγοβίνη]]
[[Κατηγορίαν:Βοσνία και Ερζεγοβίνη| ]]
85yik20sk7a9ufbqzrey5inyam9q7r2
Βουλγαρία
0
169
35918
35728
2024-10-26T05:25:19Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35918
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Βουλγαρία'''</big></big><br/>''Република България''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Bulgaria.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Bulgaria.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Bulgaria.svg|300px]]
|}
Η '''Δημοκρατίαν τη Βουλγαρίας''' (σα βουλγάρικα: ''Република България'') εν [[κράτος]] ντο ευρίεται σα νοτιοανατολικά τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Σόφια]]. Η χώρα εχ' πληθυσμόν σα 6.385.500 τ' ανθρώπ'ς απαναφκά. Ο πρωθυπουργόν ατ'ς εν ο Μπόικο Μπορίσωφ.
== Γεωγραφίαν ==
Η Βουλγαρίαν ευρίεται σο [[Μαύρον Θάλασσα|Μαύρον τη θάλασσαν]], κι απέσ' σην [[Ελλάδα|Ελλάδαν]], σα [[Βόρεια Μακεδονία|Σκόπια]], σην [[Ρουμανία|Ρουμανίαν]], σην [[Σερβία|Σερβίαν]] και σην [[Τουρκία|Τουρκίαν]]. Σα τρανά τα πολιτείας τη χώρας ανήκ'νε η [[Φιλιππούπολη|Φιλιππούπολην]], η [[Βάρνα|Βάρναν]] και ο [[Μπουργκάς|Πύργον]].
<gallery>
51-manasses-chronicle.jpg|
BASA-600K-1-1865-15-Vasil Levski-retouched.jpeg|
The Old Bulgarian capital Preslav Ruins.jpg|
OLD HOUSE IN THE NATIONAL REVIVAL STYLE, VELIKO TURNOVOI.jpg|
Sofia University (37536311404).jpg|
BASA-937K-1-410-7-Ivan Vazov (cropped).JPG|
Rila 7 lakes circus panorama edit1.jpg|
Pantokrator kerk Nesebar.jpg|
Bulgarian dancers.jpg|
</gallery>
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Bulgaria|Η Βουλγαρίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Βουλγαρία|Η Βουλγαρίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Bulgaria|Χάρτες ασην Βουλγαρίαν]]'''
* [https://web.archive.org/web/20090202083852/http://www.government.bg/english/ Το επίσημον ο ιστοτόπον τη βουλγαρικού τη κυβέρνησης]
* [https://web.archive.org/web/20080609002250/http://www.parliament.bg/?lng=en Το επίσημον ο ιστοτόπον τη βουλγαρικού τη κοινοβουλί]
* [[wikisource:en:Essential History of Bulgaria in Seven Pages]]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Βουλγαρία]]
[[Κατηγορίαν:Ευρώπη|Βουλγαρία]]
[[Κατηγορίαν:Βαλκάνια|Βουλγαρία]]
[[Κατηγορίαν:Βουλγαρία| ]]
r783ee74cihx4qrq1oo62wt338uti6q
Γαλλία
0
170
36603
36136
2025-12-15T19:39:18Z
Εὐθυμένης
2777
36603
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Γαλλίαν'''</big></big><br/>''République française''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of France.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Armoiries_r%C3%A9publique_fran%C3%A7aise.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-France.svg|300px]]
|}
Η '''Γαλλίαν''' (σα γαλλικά: ''France''), επίσημα '''Γαλλικόν Δημοκρατίαν''' (''République française''), εν [[κράτος]] σα δυτικά τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν το [[Παρίσι|Παρίσιν]] και ο πρόεδρον ατ'ς εν ο [[Εμανιουέλ Μακρόν]]. Ο πληθυσμός τη χώρας εν σα 67.595.000 τ' ανθρώπ'ς απαναφκά.
== Γεωγραφίαν ==
Η Γαλλίαν ευρίεται απέσ' σον Ατλαντικόν τον Ωκεανόν και την Μεσόγειον, σα δυτικά της [[Γερμανία|Γερμανίας]], το [[Βέλγιον|Βελγίον]] και της [[Ιταλία|Ιταλίας]] και σα βόρεια της [[Ισπανία|Ισπανίας]] και της [[Ανδόρρα|Ανδόρρας]]. Τζιπ τρανά γαλλικά πολιτείας εν η [[Μασσαλία|Μασσαλίαν]], η [[Λιόν]], η [[Τουλούζ]], η [[Νις (Γαλλία)|Νις]], το [[Μπορντό]], το [[Στρασβούργο]], η [[Λιλ]], η [[Ναντ]] και η [[Ρουέν]]. Σαν το 2016 τη χρονιάς ο Μακρόν εξέβεν πρόεδρον τη Γαλλίας.
== Συνδέζμαι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:France|Η Γαλλίαν σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Γαλλία|Η Γαλλίαν σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Atlas of France|Χάρτες ασην Γαλλίαν]]'''
* [https://web.archive.org/web/20080408184009/http://www.diplomatie.gouv.fr/index.de.html Το επίσημον ο ιστοτόπον τη γαλλικού Υπουργεί σα εξ μερέαν]
{{Κράτη τη Ευρώπης}}
{{Κράτη ΕΣ}}
{{authority control}}
[[Κατηγορίαν:Κράτη|Γαλλία]]
[[Κατηγορίαν:Ευρώπη|Γαλλία]]
[[Κατηγορίαν:Γαλλία]]
68y6g8mvnuyn8nizboulclq3cxhcpow
Γερμανία
0
171
36085
36076
2024-12-12T23:32:16Z
Wolverène
4171
36085
wikitext
text/x-wiki
{{Πληροφορίας χώρας|
|εθνικόν_όνεμαν= <big>Bundesrepublik Deutschland</big>
|εθνικόν όνεμαν σα ποντιακά = Ομοσπονδιακόν Δημοκρατίαν τη Γερμανίας
|κοινόν_όνεμαν= Γερμανίαν
|σημαία = Flag of Germany.svg
|άρθρον σημαίας = Σημαία τη Γερμανίας
|σύμβολον = Coat of arms of Germany.svg
|άρθρον συμβολατί = Σύμβολον τη Γερμανίας
|χάρτες= EU location GER.png
|εθνικόν_σύνθημαν= Ενότηταν, δικαιοσύνην και ελευθερίαν
|εθνικόν_ύμνος= [[Το τραγούδ' τη Γερμανών|{{polytonic|Το τραγούδ' τη Γερμανών (Das Lied der Deutschen)}}]]
|επίσημα_γλώσσας= [[Γερμανικόν γλώσσα|Γερμανικόν]]
|πρωτεύουσα και ασ' όλον τρανόν πολιτεία = [[Βερολίνο]]
|συντεταγμένας_πρωτεύουσας=
|πολίτευμαν= [[Προεδρευόμενον Κοινοβουλευτικόν Δημοκρατία|Προεδρευόμενον<br /> Κοινοβουλευτικόν Δημοκρατία]]
|τίτλοι_τ' ηγετίων = <br />[[Πρόεδρος της Δημοκρατίας]]<br />[[Καγκελάριος]]
|ονόματα_τ' ηγετίων = [[Frank-Walter Steinmeier]] <br />[[Όλαφ Σολτς]]
|θέση_έκτασης= 63
|έκταση= 357.114,22
|ποσοστόν_νερού= %2,416
|εκτίμηση_πληθυσμού= 82.191.000
|χρονία_εκτίμησης_πληθυσμού= 2008
|πληθυσμός= 82.515.988
|θέση_πληθυσμού= 14
|χρονία_απογραφής_πληθυσμού= 2005
|πυκνότητα_πληθυσμού= 231,1
|θέση_πυκνότητας_πληθυσμού= 34
|τύπος_κυριαρχίας= [[Ανεξαρτησία]]
|γεγονός_κυριαρχίας= - Εκύρηξαν το Γερμανικόν Ράιχ<br /><br />
-Εκύρηξαν τη Δημοκρατίας<br />τη Βαϊμάρης<br /><br />
-Εκύρηξαν τη Ομοσπονδιακήν<br />Δημοκρατίαν τη Γερμανίας<br /> -Εγένταν έναν με το<br />
Ανατολικόν τη Γερμανία<br /> |
ημερομηνίες_κυριαρχίας = <br /> [[18 Ιανουαρίου]], [[1871]] <br /> [[9 Νοεμβρίου]] [[1918]] <br /><br /> [[23 Μαΐου]] [[1949]]<br /><br /> [[3 Οκτωβρίου]] [[1990]]<br /> |
|παράδας = [[Ευρώ]]
|κωδικός_παράδων = € EUR
|ώρα_ζώνες=
|διαφορά_UTC= +1
|θερινόν_UTC=
|θερινόν_διαφορά_UTC= +2
|top_level_domain= .de
|κωδικός_τηλεφωνατί= 49
|σημειώσεις=
}}
Το '''Ομοσπονδιακόν η Δημοκρατίαν τη Γερμανίας''' (σα γερμανικά: ''Bundesrepublik Deutschland'') εν [[κράτος]] σο κέντρον τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν το [[Βερολίνο|Βερολίνον]] και o καγκελαρέσαν ατ'ς εν o [[Όλαφ Σολτς]]. Η χώραν εχ' πληθυσμόν σα 82.191.000 τ' ανθρώπ'ς απαναφκά.ĆĈÇČ
== Γεωγραφίαν ==
Η Γερμανίαν ευρίεται αφκά σο Βόρειον τη θάλασσαν, τη [[Δανία|Δανίαν]] και το Βαλτικόν τη θάλασσαν, σα ανατολικά τη [[Γαλλία|Γαλλίας]], τη [[Λουξεμβούργο|Λουξεμβούργ']], τη [[Βέλγιον|Βελγί]] και τη [[Ολλανδία|Ολλανδίας]]. Σα νότια τη Γερμανίας ευρίουνταν η [[Αυστρία|Αυστρίαν]] και η [[Ελβετία|Ελβετίαν]] και σην ανατολήν αθέ η [[Τσεχία|Τσεχίαν]] και η [[Πολωνία|Πολωνίαν]]. Σα τρανά τα πολιτείας τη χώρας ανήκ'νε το [[Αμβούργο|Αμβούργον]], το [[Μόναχο|Μόναχον]] και η [[Κολωνία|Κολωνίαν]].
== Πολιτικήν ==
Τ' ατωριζνόν η κηβέρνησην τη Γερμανίας εν η Κυβέρνησην του Όλαφ Σολτς ντ' εξέβεν σην εξουσίαν σα 2021 τη χρονίαν.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Germany|Η Γερμανίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Γερμανία|Η Γερμανίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Germany|Χάρτες ασην Γερμανίαν]]'''
* [http://www.athen.diplo.de/Vertretung/athen/el/Startseite.html Το επίσημον ο ιστοτόπον τη Γερμανικής πρεσβείας σην Αθήναν]
{{Κράτη τη Ευρώπης}}
{{Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Γερμανία]]
[[Κατηγορίαν:Ευρώπη|Γερμανία]]
[[Κατηγορίαν:Γερμανία| ]]
628781975iysm3oenhige9lo6n5lsj9
Γεωγραφίαν
0
172
34942
30966
2021-10-18T06:56:37Z
94.245.132.222
/* Τέρεν */
34942
wikitext
text/x-wiki
'''Γεωγραφίαν''' λέχκεται η τέχνην που συστηματοποιά την περιγραφήν τη [[γη|γης]]. Ο γεωγράφον τερεί τα φαινόμενα τ' ούλης τη γεώσφαιρας. Άμαν την ερμηνείαν (για το μαθηματικόν-φυσικόν γιά το βιολογικόν) εφτάγνε άλλα γεωτέχνας, λ.χ. η εδαφολογίαν, η γεωδαισίαν, η γεωλογίαν, η γεωφυσικήν, η υδρολογίαν, η ωκεανογραφίαν και η μετεωρολογίαν.
== Τέρεν ==
* [[Ασίαν]]
* [[Αφρικήν]]
* [[Ευρώπην]]
* [[Αμερικήν]]
* [[Ωκεανίαν]]
* [[Ανταρκτικήν]]
* [[Πολιτεία|Πολιτείας]]
* [[Κράτος|Κράτη]]
* [[Θάλασα|Θάλασας]]
* [[Νησίν|Νησία]]
* [[Ραχίν|Ραχία]]
[[Κατηγορίαν:Γεωγραφίαν| ]]
1841x4dg4pxw1p936923v94xxcjs9yf
Γεωργία
0
173
1699
1698
2009-03-06T15:21:28Z
MF-Warburg
53
1 revision
1699
wikitext
text/x-wiki
#REDIRECT [[Γρουζία]]
nutw4zrw5pe08dof4dixr9l1924fy02
Γλυπτικήν
0
174
35537
33100
2024-01-23T17:52:59Z
Διογένες
10538
μικρογραφία
35537
wikitext
text/x-wiki
[[Αρχείον:Begin Road, Tel Aviv-Yafo דרך מנחם בגין (15).JPG|μικρογραφία|Γλυπτικήν]]
==Αρχαίον Ελλάδα==
* [[Λύσιππος]]
* [[Πολύκλειτος]]
* [[Πραξιτέλης]]
* [[Σκόπας]]
* [[Φειδίας]]
[[Κατηγορίαν:Γλυπτικήν|*]]
[[Κατηγορίαν:Πολιτισμόν|*]]
esdc0tuaik7wv2ns5v9gj6s58bppyn1
Γραμματική
0
175
30968
30412
2013-03-07T17:59:36Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 123 interwiki links, now provided by [[d:|Wikidata]] on [[d:q8091]] [[M:User:Addbot/WDS|(translate me)]]
30968
wikitext
text/x-wiki
'''Γραμματικήν''' λέγουμε την τέχνην που συστηματοποιά και κανονίζ' μίαν [[γλώσσαν]] σ' ορισμένον περίοδον. Ο προορισμόν τη γραμματικής 'κι εν περιορισμένον και 'κι τελειών' με το να φωτογραφίζ' την κατάστασην τη γλώσσας, αλλά εν κι άλλο πλατύν. Στηρίχκεται απάν' σα αλήθειας ντο ελέπ' σην γλώσσαν και ευκολύνει ατό να επορεί να εξαπλούται κι αραέτς πα βοηθά την ανάπτυξην τη γλώσσας.
== Τέρεν ==
* [[Επίρρημαν]]
* [[Ουσιαστικόν]]
* [[Ρήμαν]]
* [[Σύνδεσμον]]
== Βιβλιογραφία ==
* Τοπχαράς, Κ. 1928, 1932: ''Ι Γραματικι Τι Ρομεικυ Τι Ποντεικυ Τι Γλοςας''. Ρόστοβ-Ντον. ISBN 960-343-448-5
[[Κατηγορίαν:Γραμματικήν|Γραμματικήν]]
tkf9iz5uqecuqsvey9i7djurhpjj5re
Γρουζία
0
176
35920
35213
2024-10-26T05:25:28Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35920
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Γρουζία'''</big></big><br/>''საქართველო''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Georgia.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Georgia.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Europe-Georgia.svg|300px]]
|}
[[File:Georgia cities01.png|thumb|250px|right]]
Η '''Γρουζίαν''' (γρούζ. ''საქართველო'') εν κράτος ντ' ευρίεται ση δύσαν τ' [[Ασίαν|Ασίας]] και σ' ανατολικά τη [[Μαύρον Θάλασσα|Μαύρου τη Θάλασσας]]. Πρωτεύουσαν ατ'ς εν η [[Τιφλίδα]]. Η χώρα εχ' πληθυσμόν σα 4.630.841 τ' ανθρώπ'ς (Χορτοθέρτς 2008).
== Γεωγραφίαν ==
Η χώρα ευρίεται σα νότια τη [[Ρουσία|Ρουσίας]], σα βόρεια τη [[Τουρκία|Τουρκίας]], τ' [[Αρμενία|Αρμενίας]] και τ' [[Αζερμπαϊτζάν]]. Βρέχκεται σ' ανατολικάν ασό Μαύρον τη Θάλασσα. Έχ' τρανά πολιτείας το [[Κουταίσι]] και το [[Βατούμι]].
== Πολιτικήν ==
Πρόεδρος εν ο Μιχαήλ Σαακασβίλι.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Κατηγορίαν:Georgia|Η Γρουζίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Γεωργία|Η Γρουζίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Georgia|Χάρτες αση Γρουζίαν]]'''
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Γρουζία]]
[[Κατηγορίαν:Ασία|Γρουζία]]
[[Κατηγορίαν:Ευρώπη|Γρουζία]]
[[Κατηγορίαν:Καυκασία|Γρουζία]]
[[Κατηγορίαν:Γρουζία| ]]
56nulfahkvnuk2sm9xn3035s9hw1906
Δανία
0
177
35921
32396
2024-10-26T05:25:32Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35921
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Δανία'''</big></big><br/>''Kongeriget Danmark''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Denmark.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Denmark.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Denmark.svg|300px]]
|}
Το '''Βασίλειον τη Δανίας''' (σα δανέζκα: ''Kongeriget Danmark'') εν [[κράτος]] ντο ευρίεται σα βόρεια τη [[Ευρώπην|Ευρώπης]] και σα νότια τη [[Σκανδιναβικόν Χερσόνησος|Σκανδιναβικού Χερσόνησου]]. Πρωτεύουσαν ατ εν η [[Κοπεγχάγη]] και η πρωθυπουργόν ατ ο [[Ένερς Φο Ράσμουσεν]]. Ο πληθυσμόν τη χώρας εν σα 5.411.405 τ' ανθρώπ'ς (2005).
== Γεωγραφίαν ==
Η Δανίαν ευρισκάται σην Γιουτλάνδη, απεσκέσ' σο Βόρειον και σο Βαλτικόν τη θάλασσαν. Κράτη γειτόν είν' η [[Γερμανία]] και η [[Σουηδία]]. Εχ' τρανά πολιτείας την [[Ώρχους]], και τ' [[Άλμπορκ]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Denmark|Η Δανίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Δανία|Η Δανίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Denmark|Χάρτες ασην Δανίαν]]'''
* [http://www.denmark.dk Το επίσημον ο ιστοτόπον τη Δανίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Δανία]]
[[Κατηγορίαν:Ευρώπη|Δανία]]
[[Κατηγορίαν:Σκανδιναβία|Δανία]]
[[Κατηγορίαν:Δανία| ]]
o8cjkawvsmcuimpmciyhhz6pki0q6gq
Δευτέραν
0
178
34015
30971
2018-10-31T15:52:36Z
Το πουλί της φωτιάς
6952
34015
wikitext
text/x-wiki
Η '''Δευτέραν''' (σ' [[Ελλενικόν γλώσσα|ελλενικά]]: ''Δευτέρα'') εν το δεύτερον ημέρα τ' [[Εβδομάδα|εβδομάδας]].
== Ο λαόν για την Δευτέραν ==
:''«Την Δευτέραν κετσινεύνε''
:''οι τεμπέλ, που΄κι΄δουλεύνε.»''
== Συνδέζμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Monday|Δευτέραν σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Δευτέρα|Η Δευτέραν (Δευτέρα) σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Πρότυπον:Ημέρας τη εβδομάδας}}
[[Κατηγορίαν:Ημέρας τη εβδομάδας|Δευτέραν]]
kfdtfnoqix6e67p0g90xf2rbx5o91n6
Διογένες ο Σινωπέας
0
179
34844
31437
2021-08-10T19:06:13Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.8
34844
wikitext
text/x-wiki
[[Αρχείον:Diogenes_von_Sinope.jpg|thumb|Διογένες ο Σινωπέας]]
[[Αρχείον:Alexander visits Diogenes living in a barrel at Corinth in an early 19th century engraving.jpg|thumb|''«Αποσκότ'σον με»'']]
Ο '''Διογένες ο Σινωπέας''' (Διογένης ὁ Σινωπεύς, 391 για 399 π.Χ. - 323 π.Χ.) έτον [[φιλοσοφία|φιλόσοφος]] σο παλαιόν την Ελλάδαν. Εγεννέθεν σην [[Σινώπη|Σινώπην]] τη [[Πόντος|Πόντονος]], έζησεν σ' [[Αθήνα|Αθήνας]] κι έτον μαθητής τ' [[Αντισθένες|Αντισθένε]] (κι αούτος πα έτον μαθητής τη [[Σωκράτες|Σωκράτε]]).
== Ο κύων ==
Ο Διογένες την κουλτούραν πα 'κ εθέλνεν. Εμάθηνεν φιλοσοφία τη χώρας τα παιδία με τ' ατά ντ' εποίκεν. Ολίγον εμάθηνενατα με λόγια και θεωρίας. Εθέλνεν την ελευθερίαν τ' ανθρωπίων και ξάι 'κ ελογαρίαζεν το έλεεν η κοινωνίαν.
Ο Διογένες έτον ο πρώτον ο άνθρωπον ντ' έλεεν για τον εαυτόν ατ' το έτον κοσμοπολίτες (''«κοσμοπολίτης»''). 'Κ έλεεν ντο έτον πολίτες εινός πολιτείας μαναχόν. Τ' οσπίτνατ έτον ο δρόμον. Εκαικά κάθουντον αβαράς να ηλεάεται ούλην ημέραν. Με το γιασάεμαν ατό ντ' εποίνεν, ο κόσμον έλεενατον ''«κύων»'' (σκύλον). Ο Διογένες πα επαίρεν αβούτο το παρωνύμ' κι εποίκενατο τίτλον ατ'. Ασ' ατουπές εξέβεν τ' όνεμαν τη σχολής ατ', τη σχολής τη κυνικών κι αέτς εσήβεν σε πολλά οσημερνά λαλίας, άμον τ' εγγλέζκον το ''cynicism''.
Άμον ντο είχανε ουλ κυνικοί, αέτς κι ο Διογένες είχεν έναν δαβρίν για το πορπάτεμαν, έναν μπόγον με το βιόν ατ' κι έναν σαχάν για να τρώει. Ούλ' ατά εσυμβολίζαν την βάσην τη κυνισμού: ελευθερία (''«αὐτάρκεια»''), ανοιχτόν συντίσεμαν (''«παρρησία»'') και το κοσμοπολίτεμαν.
== Πολλά λοέν ιστορίας ==
Για το Διογένεν λέχκουνταν πολλά ιστορίας. Ολίγα ασ' ατά τα ιστορίας λέγουνε και τον [[Μεξαλέξανδρος|Μεγαλέξανδρον]].
Μίαν αείκον μεσελέν λέγει πως ο Μεγαλέξανδρος εθέλνεν να τιρτέβ' το Διογένεν κι αέτς εχαρεντέρισενατον έναν σαχάν με στούδαι. Στούδαι για τον κύων (το σκύλον). Πέρασαν τα ημέρας κι επήγεν κι ερώτησεν το Διογένεν
αν το χαρεντερίδ έτον καλόν. Ο Διογένες είπεν: ''«Για κύων έτον πολλά καλόν, άμα για βασιλέα ξάι 'κ έτον καλόν»''.
Άλλον ιστορίαν πα λέγει πως επήγεν ο Μεγαλέξανδρος κι ερώτησεν το Διογένεν ντο χατίρ' θέλ' να φτάγ' ατον. Ο Διογένες είπεν: ''«Αποσκότ'σον με.»'' Ασην μίαν μεράν ατό εν αμόν το «Έπαρ με ασην σκοτίαν οξουκά και πέει με να μαθάνω την αλήθειαν». Ασ' άλλ' τη μερέαν πα ατό πορεί να έχ' τη σημασέαν: ''«Φύγον απατουκά ν' ελέπ με ο [[Ήλος|ήλον]].»'' Ο Αλέξανδος εγροίξεν ατό και είπεν: ''«Αλέξανδρος αν 'κ είμουν, Διογένες θ' εθέλνα να είμαι»''.
== Εικόνας ==
<gallery>
Εικόναν:Diogenes at sculoa di atene.jpg|Διογένες ο Σινωπέας, κομμάται τη «Diogenes at sculoa di Atene», Raphael Santi (σα 1510/11 τη χρονίαν)
Εικόναν:Diogenes looking for a man - attributed to JHW Tischbein.jpg|Ο Διογένες αραέβ' ανθρώπς - Johann Heinrich Wilhelm Tischbein (σα 1780 τη χρονίαν)
Εικόναν:Gerome_-_Diogenes.jpg|Ο Διογένες απές σο βαρέλ', Jean-Léon Gérôme (σα 1860 τη χρονίαν)
Εικόναν:Waterhouse-Diogenes.jpg|John William Waterhouse: Ο Διογένες, δίπλα εν το φανάρ και τα κρεμμύδαι τ' (σα 1882 τη χρονίαν)
[https://web.archive.org/web/20070312070933/http://home.eduhi.at/teaching/epiktet/diogenes_web.jpg]
</gallery>
== Συνδέζμε ==
* '''[[Αρχείον:Commons-logo.svg|14px]] [[:el:commons:Κατηγορίαν:Diogenes of Sinope|Ο Διογένες σα Commons]]'''
* [http://www.bartleby.com/66/54/16754.html Διογένες ο Σινωπέας, The Columbia World of Quotations] (αγγλ.)
* [http://www.benbest.com/philo/diogenes.html Διογένες ο Σινωπέας] (αγγλ.)
[[Κατηγορίαν:Έλλενας (αρχαιότητα)|Διογενες Σινωπεας]]
ce0jux4geif96ovgrsqtz375jq3v9ax
Ελβετία
0
180
35922
32397
2024-10-26T05:25:36Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35922
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ελβετία'''</big></big><br/>''Confédération suisse''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Switzerland (Pantone).svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_Arms_of_Switzerland_(Pantone).svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Europe-Switzerland.svg|300px]]
|}
Η '''Ελβετίαν''', (τ' επίσημον τ' όνεμα εν ''Ελβετικόν Συνομοσπονδίαν'' (σα γερμανικά: ''Schweizerische Eidgenossenschaft'', σα γαλλικά: ''Confédération suisse'', ''σα ιταλικά'' Confederazione Svizzera, σα ραιτορομανικά: ''Confederaziun svizra'') είναι [[κράτος]] σο κέντρον τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Βέρνη]] και ο πρόεδρον ατ'ς εν ο [[Πασκάλ Κουσπέν]]. Η χώρα εχ' πληθυσμόν σα 7.508.700 τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Η Ελβετίαν ευρίεται ανάμεσα ση [[Αυστρία|Αυστρίαν]], τη [[Ιταλία|Ιταλίαν]], τη [[Γαλλία|Γαλλίαν]] και τη [[Γερμανία|Γερμανίαν]]. Έχ' τρανά πολιτείας την [[Ζυρίχη|Ζυρίχην]] και η [[Γενεύη|Γενεύην]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Confoederatio Helvetica|Η Ελβετίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ελβετία|Η Ελβετίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Switzerland|Χάρτες ασην Ελβετίαν]]'''
* [http://www.ch.ch Το επίσημον ο ιστοτόπον τη καγκελαρίας τη Ελβετίας]
{{Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Ελβετία]]
[[Κατηγορίαν:Ευρώπη|Ελβετία]]
[[Κατηγορίαν:Ελβετία| ]]
7x6ermxbhc7s3jrb73ie5mvo5cl2j5h
Ελλάδα
0
181
36322
35638
2025-10-11T17:34:52Z
Antimuonium
10707
Tag correction
36322
wikitext
text/x-wiki
{{Πληροφορίας χώρας|
|εθνικόν_όνεμαν = <big>Ελληνική Δημοκρατία</big>
|εθνικόν όνεμαν σα ποντιακά = Ελλενικόν Δημοκρατίαν
|κοινόν_όνεμαν = Ελλάδα
|σημαία = Flag of Greece.svg
|άρθρον σημαίας = Σημαία τ' Ελλάδας
|σύμβολον = Coat of arms of Greece.svg
|άρθρον συμβολατί = Σύμβολον τ' Ελλάδας
|χάρτες = EU location GRE.png
|εθνικόν_σύνθημαν = Ελευθερία ή Θάνατος
|εθνικόν_ύμνος = [[Ύμνος εις την ελευθερίαν|{{polytonic|Ὕμνος εἰς τὴν Ἐλευθερίαν}}]]
|επίσημα_γλώσσας = [[Ελλενικόν γλώσσα|Ελλενικόν]]
|πρωτεύουσα και ασ' όλον τρανόν πολιτεία = [[Αθήνα]]
|συντεταγμένας_πρωτεύουσας =
|πολίτευμαν = [[Προεδρευόμενον Κοινοβουλευτικόν Δημοκρατία|Προεδρευόμενον<br /> Κοινοβουλευτικόν Δημοκρατία]]
|τίτλοι_τ' ηγετίων = <br />[[Πρόεδρος]]<br />[[Πρωθυπουργός]] |
|ονόματα_τ' ηγετίων = [[Κατερίνα Σακελλαροπούλου]] <br /> [[Κυριάκος Μητσοτάκης]]
|επίσημον_θρήσκευμα =[[Ορθόδοξοι Χριστιανοί]]
|θέση_έκτασης = 94
|έκταση = 131.957
|ποσοστόν_νερού = %0,86
|πληθυσμός = 10.815.197
|θέση_πληθυσμού = 72
|χρονία_απογραφής_πληθυσμού = 2011
|πυκνότητα_πληθυσμού = 83,1
|θέση_πυκνότητας_πληθυσμού = 87
|τύπος_κυριαρχίας = [[Ανεξαρτησία]]
|γεγονός_κυριαρχίας = - Κηρύχθηκε<br /> - Αναγνωρίστηκε<br />
|ημερομηνίες_κυριαρχίας = <br /> [[25 Μαρτίου]], [[1821]] <br /> [[1828]] <br />
|παράδας = [[Ευρώ]]
|κωδικός_παράδων = € EUR
|ώρα_ζώνες =
|διαφορά_UTC = +2
|θερινόν_UTC =
|θερινόν_διαφορά_UTC = +3
|top_level_domain = .gr
|κωδικός_τηλεφωνατί = 30
|σημειώσεις =
}}
Η '''Ελλάδαν''' κράτος εν σα νοτιοανατολικά τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Αθήνα|Αθήναν]] και πρωθυπουργόν ατ'ς εν ο [[Κυριάκος Μητσοτάκης]]. Ο πληθυσμόν τη χώρας εν σα 10.815.197 τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Η Ελλάδαν ευρίεται αφκά σην [[Αλβανία|Αλβανίαν]], σα [[Βόρεια Μακεδονία|Σκόπια]], σην [[Βουλγαρία|Βουλγαρίαν]] και σα δυτικά τη [[Τουρκία|Τουρκίας]]. Σα τρανά τα ελλενικά τα πολιτείας εξόν τη [[Αθήνα|πρωτεύουσαν]] ανήκ'νε η [[Θεσσαλονίκη|Θεσσαλονίκην]] και ο [[Πειραιάς]].
== Ιστορίαν ==
=== Ασ' αρχαία χρόναι ους την ανεξαρτησίαν ===
Η Ελλάδαν έχ' τσιπ τρανόν ιστορίαν. Ο πολιτισμόν τ' [[Ευρώπην|Ευρώπης]] έχ' τη ρίζαν ατ' σ' [[Αρχαίον Ελλάδαν|αρχαίον την Ελλάδαν]]. Αβούτεν έτον κι άλλο τρανήν ασ' οσημερνόν το κράτος: μέρος ατ'ς έτον και η [[Μικρά Ασία]] με τον [[Εύξεινος Πόντος|Πόντον]] εντάμαν. Ασ' ατά τα τοπέα εξέβαν σ' αρχαία τα χρόναι τρανοί γραμματισμέν τη
φιλοσοφίας, τη φυσικής, τ' [[Ιστορίαν|ιστοριογραφίας]] και τη [[Ποιητικήν|ποιητικής]]. Σα 336 π.Χ. τη χρονιαν ο [[Μεγας Αλέξανδρος]] έκανε την Ελλάδα ασ' όλον των εποχών τρανόν. Σα 30 π.Χ. τη χρονίαν η Ελλάδα εγέντον επαρχίαν τη [[Ρωμαϊκόν αυτοκρατορίαν|Ρωμαϊκού τ' Αυτοκρατορίας]]. Όντες σα 395 τη χρονίαν εχώρτσαν τ' αυτοκρατορίαν, εγέντον μέρος τη [[Ρωμανίαν|Ρωμανίας]] (Βυζάντιον). Έτον σα 1.000 χρόναι σην Ρωμανίαν ους το 15ον αιώναν, όντες η Ρωμανίαν πάρθεν ασοι Τουρκάντ' κι έντον [[Οθωμανικόν αυτοκρατορίαν]].<br />
Σα 1821 τη χρονίαν οι ανθρώπ' τη [[Φιλικόν Εταιρεία|Φιλικού τ' Εταιρείας]] ερχίνεσαν επανάστασην και πόλεμον ανεξαρτησίας και σα 1827 εμπόρεσαν με τ' Ευρωπαίοις εντάμαν να χατεύσνε σο Ναυαρίνον τοι Τουρκάντ'. Με το πρωτόκολλον τη Λονδίνου (3 τη Κούντουρονος 1830), η Ελλάδαν έντον ξαν κράτος οξουκά ασ' Οθωμανικόν τ' αυτοκρατορίαν. Ο πρώτον ο κυβερνήτες ατ'ς έτον ο [[Ιωάννες Καποδίστριας]].
=== Ασήν ανεξαρτησίαν (1830) ους τα 1914 ===
Σα 1832 τη χρονίαν ο πρίγκηπας τη Βαυαρίας Όθων επαίρεν τον τίτλον «Βασιλεύς της Ελλάδος» και την Ελλάδαν εκύρηξανατεν βασίλειον. Άμαν το βασίλειον έτον έναν κομμάτ' τ' οσημερνού τη χώρας μαναχόν. Σα 1862 τη χρονίαν εγέντον επανάσταση κι ο Όθων χατεύτεν. Σα 30 τη Μαρτ [[1863]] ο Γεώργιος Α΄ εγέντον καινούρεος βασιλέας. Απεκεί κιαδά μερέαν το κράτος ετράνηνε: τα νησία τ' Ιωνίου (1864), η Θεσσαλίαν (1881) και η Κρήτην (1908) ένταν τοπέανατ'. Με τοι βαλκανικούς τοι πολέμ' (1912-1913) εγένταν Ελλάδα κι άλλα τοπέα: η [[Ήπειρος]], η [[Μακεδονία]] (με τη [[Θεσσαλονίκη|Θεσσαλονίκην]] εντάμαν) και άλλα νησία. Σα 1913 τη χρονίαν έντον βασιλέας ο Κωνσταντίνος Α΄. Σ' ατά τα χρόναι το τακάτ τ' Οθωμανικού τ' αυτοκρατορίας γάλε γάλε χάνταν κι αέτς οι Έλλενες παίρνε οπίς τα παλαιά τα τοπέαν ατούν.
=== Τα τρανά τα πολέμ' και τα χρόναι απεσκέσ' ===
Όντες σα [[1914]] τη χρονίαν ερχίνεσεν ο πρώτον ο τρανόν πόλεμον η Ελλάδα επέμνεν ουδέτερον. Άμαν σον Χορτοθέρτ τη [[1917]] εκήρυξεν πόλεμον σην [[Γερμανία|Γερμανίαν]], σην [[Αυστρο-Ουγγαρία|Αυστρο-Ουγγαρίαν]], σην [[Τουρκία|Τουρκίαν]] και ση [[Βουλγαρία|Βουλγαρίαν]] κι επολέμησεν ατείντζ με την [[Αντάντ]] εντάμαν. Τ' Οθωμανικόν η αυτοκρατορίαν έχασεν τον πόλεμον κι ο πρωθυπουργός τ' Ελλάδας, ο [[Ελευθέριος Βενιζέλος]], επροσπάθησεν να χτίζ' την Ελλάδαν τη «[[Μεγάλη ιδέα|μεγάλου τ' ιδέας]]»: την Ελλάδαν τη «δυενών ηπειρίων και τη πέντε θαλασσίων», άμον ντ' έλεγεν ατέν. Άμαν η Ελλάδαν έχασεν τ' ελλενοτουρκικόν πόλεμον (1919-1922) κι επεκεί εγέντον ατό ντο λέγομε «[[Μικρασιατικόν καταστροφή]]»: με τη συνθήκην τη Λωζάνης (1923) οι Τουρκάντ' έχπασαν τ' Έλλενες χριστιανούς τ' ανατολής (σα 1.500.000) ασήν πατρίδαν ατούν κι εχατεύταν ατείντζ σην Ελλάδαν. Ασ' αλλ τη μερέαν οι μουσουλμάν τ' Ελλάδας (σα 500.000) εχατεύταν σην Τουρκίαν. Επέμναν σα τοπέανατουν οι Έλλενες τη νήσωνον Ίμβρος και Τένεδος και τη Παλαιάς Πρωτεύουσας Κωνσταντινούπολης ασόνα τη μερέα και οι μουσουλμάν τη δυτικού τη [[Θράκη|Θράκης]] ασάλο τη μερέα.
Σον δεύτερον παγκόσμιον πόλεμον ο δικτάτορας Μεταξάς είπεν τ' «Όχι» σην [[Ιταλία|Ιταλίαν]] (28 τη Τρηγομηνά 1940) κι αβούτεν ερχίνεσεν πόλεμον με την Ελλάδαν. Ο ελλενικός στρατός εμπόρεσεν και χάτευσον τ' ιταλικά τα δυνάμεις οπίς σην [[Αλβανία|Αλβανίαν]]. Σ' Απρίλτ τη 1941 έρθεν το [[Γερμανία|γερμανικόν]] η Βέρμαχτ κι εποίκεν γιαρτίμ τ' Ιταλίαν κι αέτς ενίκεσαν τ' Έλλενες. Επεκεί ερχίνεσεν το γερμανικόν η κατοχήν.
=== Ασο 1945 τη χρονίας κιαν ===
Ασον δεύτερον το τρανόν το πόλεμον κι επεκεί έψεν εμφύλιον πόλεμος κι εκράτησεν ούσα 1949 τη χρονίαν. Τρία χρόναι επεκεί η χώρα εσέβεν σο ΝΑΤΟ. Σα [[1967]], 21 τ' Απρίλτ', ο στρατόν επήγεν κι εποίκεν πραξικόπημαν κι επαίραν σα χέριανατουν την εξουσίαν οι δικτάτορες (η Χούντα). Εχάτεψαν τον βασιλέαν κι εκρέμσαν τ' ελλενικόν τη μοναρχίαν. Η Χούντα και η πολιτικήνατς έτον η αιτία για το Κυπριακόν το ζήτημαν, το οποίον έστειλενατεναν σον κρεμόν σα [[1974]]. Σα 1974, 8 τη Χριστουγεννάρτ', ο λαόν εψήφησεν, και το πολίτευμαν τη χώρας εγέντον αβασίλευτον Δημοκρατία. Σα 1975, 11 τη Κερασινού, το Ε' τ' Αναθεωρητικόν η Βουλή εποίκεν τ' οσημερνόν το σύνταγμαν. Σα 1981 Η Ελλάδα εγέντον μέλος τ' [[Ευρωπαϊκόν Σύδεσμος|Ευρωπαϊκού τη Σύδεσμου]].
== Πολιτικήν ==
Το νέον η κηβέρνησην τη κράτονος εν η [[Κυβέρνηση Κυριακου Μητσοτακη|Κυβέρνηση Κυριάκου Μητσοτάκη]] ντ' εξέβεν σην εξουσίαν σα 2019 τη χρονίαν. Η παλαιόν κυβέρνησην τη κράτονος έτον η [[Κυβερνηση Αλεξη Τσιπρα|Κυβέρνηση Αλέξη Τσίπρα]] σο 2015 - 2019.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Greece|Η Ελλάδαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ελλάδα|Η Ελλάδαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Greece|Χάρτες ασην Ελλάδαν]]'''
* [http://www.primeminister.gr Το επίσημον ο ιστοτόπον τη Πρωθυπουργού τη Ελλάδος]
* [https://web.archive.org/web/20101210205021/http://www.parliament.gr/ Το επίσημον ο ιστοτόπον τη Βουλής τ' Ελλένων]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Ελλάδα]]
[[Κατηγορίαν:Ευρώπη|Ελλάδα]]
[[Κατηγορίαν:Βαλκάνια|Ελλάδα]]
[[Κατηγορίαν:Ελλάδα| ]]
1v28l94gjp2k1kpk4jvxa88wv3x84mg
Ελλενικόν λαλίαν
0
182
36168
36090
2025-02-19T04:41:21Z
200.24.154.83
36168
wikitext
text/x-wiki
{| border="1" cellpadding="2" cellspacing="0" align="right" width="300"
! colspan="2" bgcolor="lawngreen" style="font-size:120%"|Ελλενικά
|-
| valign="top"|Συντισένατεν σην
|[[Ελλάδα|Ελλάδαν]], [[Κύπρος|Κύπρον]], [[Ηνωμένα Πολιτείας|Αμερικήν]],
[[Βόρεια Μακεδονία]], [[Σερβία|Σερβίαν]], [[Τουρκία|Τουρκίαν]],
[[Αίγυπτος|Αίγυπτον]], [[Ιταλία|Ιταλιαν]], [[Καναδάς|Καναδάν]],
[[Αυστραλία|Αυστραλίαν]], [[Γερμανία|Γερμανίαν]],
[[Ηνωμένο Βασίλειο|Ηνωμένον Βασίλειον]], [[Γαλλία|Γαλλίαν]],
[[Βέλγιον]] κ.α.
|-
| valign="top"|Συνολικοί ομιλητές
|20.000.000
|-
| valign="top"|Γενετική τη γλώσσας
|Ινδοευρωπαϊκά γλώσσας<br />
:Αρχαία Ελλενικά <br />
::Αττικά ελλενικά <br />
:::'''Νεοελλενικά'''
|-
! colspan="2" bgcolor="lawngreen"|Επίσημα
|-
| valign="top"|Επίσημον γλώσσαν
| [[Ελλάδα|Ελλάδαν]], [[Κύπρος|Κύπρον]], [[Ευρωπαϊκόν Σύνδεσμον|Ευρωπαϊκός σύνδεσμος]]
|-
| valign="top"|ISO 639-1
| valign="top"|el
|-
| valign="top"|ISO 639-2
| valign="top"|gre (B) / ell (T)
|-
| valign="top"|ISO 639-3
| valign="top"|[https://web.archive.org/web/20080601214845/http://www.sil.org/iso639-3/documentation.asp?id=ell ell]
|-
| valign="top"|SIL
| valign="top"|GRK
|}
Τ' '''ελλενικόν η λαλίαν''' (ελλ. ''ελληνική γλώσσα'') εν ινδοευρωπαϊκόν γλώσσα, κι ατουπές εν ξεχωριστόν παρακλάδ και καλατςέβν' ατό σην [[Ελλάδα|Ελλάδαν]] και σην [[Κύπρος|Κύπρον]]. Τ' [[Αρχαίον ελλενικόν γλώσσα|αρχαίον τ' ελλενικόν η γλώσσα]] ντ' εκαλάτςεβαν σα παλαιά τα χρόναι κι οσήμερον μαθίζνε σα σχολία εν έναν γλώσσαν με τ' ατωριζνά τα [[Νεοελλενικόν γλώσσα|νεοελλενικά]]. Το έναν εξέβεν ασ' άλλον κι όλεα είν' ελλενικά.
Τ' ελλενικά γράφκουνταν 3.400 χρόναι. Άλλον ζωντανόν γλώσσαν (εξόν το κινεζικόν) αΐκον τρανόν ιστορίαν σο γράψιμον πα 'κ εςς. Το δυτικόν το κουλτούρι επαίρεν πολλά ασ' ελλενικόν τη γλώσσαν τ' αρχαίου τη Ελλάδας. Πολλά σημαντικά λογοτεχνικά έργα τη κόσμονος, άμον ντο είν' τ' ομηρικά τα έπε και τα γραφόμενα τη [[Πλάτον|Πλάτονος]] και τ' [[Αριστοτέλες|Αριστοτέλε]], άμα και το [[Κοινόν Διαθήκη|Κοινόν η Διαθήκη]], εγράφταν σ' ελλενικά. Αέτς πολλά παλαιά ελλενικά λέξεις εσέβαν σα καινούρεα γλώσσας κι ατουπές οσήμερον είναι ξενικά λέξεις.
== Συγγενικά γλώσσας ==
Τ'ελλενικόν η γλώσσα ανήκ' σα [[ινδοευρωπαϊκά γλώσσας|ινδοευρωπαϊκά τα γλώσσας]]. Ατουπές τ'ελλενικά υπολογίζν' ατα ιδιαίτερον παρακλάδ. Εςς τα διαλέκται νατς άμαν οι γραμματιζμέν' τη κόσμονος λέγουνατα διαλέκται, κιαραέτς γλώσσας πα 'κ είναι. Πολλοί λέγουνε τ'αρχαίον το μακεδονικόν τη γλώσσαν έτον αδερφικόν γλώσσαν, άμαν 'κ εξέρουμε πολλά για τ'ατέν τη γλώσσαν. Ασ' άλλ τη μερέαν πα ελογαριάζνε πως κι αβούτεν έτον ελλενικόν διάλεκτος.
== Συνδέζμ' ==
* [[:el:Κύρια_Σελίδα|Ελλενικόν Βικιπαίδεια]]
* [[:el:wikt:Κύρια Σελίδα|Ελλενικόν Βικιλεξικόν]]
[[Κατηγορίαν:Ελλάδα|Ελλενικα]]
[[Κατηγορίαν:Λαλίαν|Ελλενικα]]
dkxv0u5voldwh9teys40sq9gnkt7e9d
Επίρρημαν
0
183
30981
30837
2013-03-07T18:01:17Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 68 interwiki links, now provided by [[d:|Wikidata]] on [[d:q380057]] [[M:User:Addbot/WDS|(translate me)]]
30981
wikitext
text/x-wiki
'''Επίρρημαν''' λέγουμε τ' άκλιτα τα λέξεις που προσδιορίζ'νε τα [[Ρήμαν|ρήματα]]. Ση [[γραμματικήν]] τη [[Ποντιακόν λαλίαν|ποντιακού τη ρωμαίικου]] τη γλώσσας είναι σχεδόν όλεα ασ' [[Αρχαία ελλενικά|αρχαίον τ' ελλενικόν]] την γλώσσαν.
== Τα επιρρήματα είναι ==
# Τοπικά: ''αδά, αδακά, ακεί, ατού, ατουκά, ατουκαικά, αλλού, αλλουκαικά, ανθέν, καθέν, απανκαικά, αποκαθενκιάν, που, πουδέν, εμπροστά, εμπρί, οπίς, δεξά, ζεβριά, ολόερα, αντίκρυ, πέρα, σουμά, κοντά, μακρά, αφκά, αλαφκά, απάν, απές, εκεί, καταγής, χώρια, δίπλα''.
# Χρονικά: ''οσήμερον, αύριον, οψές, πουρνόν, βραδόν, σηναυγά, όλημερα, ολονύχτα, συνύχτα, συνπίρνα, οφέτος, οπέρτς, αροπέρτς, ατώρα, υστερνά, απυστερνά, επεκεί, κάποτε(ς), ώσπου, ατότες, πάντα, αποβραδύς''.
# Ποσοτικά: ''πολλά, ολίγον, εναξά,επεΐ, ξάι, ατόσον, απαναφκά''.
# Τροπικά: ''Αέτς, αέτς κι αέτς, κάπως, καθώς, ίσως, ίσα-ίσα, δηλαδή, τεά, εξίχωρα, μασχαρευτά, καλά, άσκεμα''.
== Τέρεν ==
* [[Ουσιαστικόν]]
* [[Σύνδεσμον]]
[[Κατηγορίαν:Γραμματικήν|Επιρρημαν]]
jfujnyorgx41fp3bgnsumgbkvv33s27
Ευρώπην
0
184
37387
35445
2025-12-20T12:07:05Z
Εὐθυμένης
2777
/* Αναφοράντας */
37387
wikitext
text/x-wiki
[[Αρχείον:LocationEurope.png|thumb|Η Ευρώπη σον χάρτεν τη κόσμονος]]
[[Αρχείον:Europe satellite globe.jpg|thumb|Ασόν δορυφόρον : φωτογραφία τ' Ευρώπης]]
Η '''Ευρώπην''' εν ήπειρος. Λέγν' ατέν και ''γηρεόφορον ήπειρον''. [[Γεωγραφίαν|Γεωγραφικά]] εν κομμάτ' τ' ευρασιατικού τη μάζας, άμαν έχ' τ' ατεινές το ξεχωριστόν την ιστορίαν και την κουλτούραν και για τ' ατό λέγουν ατέν ήπειρον. Βρέχεται ασον [[Ατλαντικόν Ωκεανός|Ατλαντικόν τον Ωκεανόν]], το [[Μαύρον Θάλασσα|Μαύρον τη Θάλασσαν]] και το [[Μεσόγειον Θάλασσα|Μεσόγειον τη Θάλασσαν]]. Με την [[Ασίαν]] και την [[Αφρικήν]] εντάμαν σχηματίζνε τον «Παλαιόν Κόσμον».
== Ετυμολογία ==
Τ' όνεμαν «Ευρώπη» εξέβεν α' σ' αρχαία τ' [[Ελλενικόν καλατσή|ελλενικά]] τα λέξεις {{Polytonic|«εὐρύς»}} και {{Polytonic|«ὤψ (ἡ)»}}. Η σημασίαν τη λέξης εν: «γαρή π' ελέπ' μακρά». Σ' αρχαίον τ' ελλενικόν τη [[μυθολογία|μυθολογίαν]] «Ευρώπη» έτον τ' όνεμαν τη κόρης εινός βασιλέα α΄ση Φοινικίαν.
Ας σ' αλλ' την μερέαν πα, αλλ' ετυμολόγοι λέγουν η λέξην «Ευρώπη» εχ' σημιτικόν ρίζαν κι επεκεί έντον ελλενικόν,<ref name="etymonline.com">http://www.etymonline.com/index.php?search=europe σο σάιτ: etymonline.com, εύρον τη λέξην <code>European</code> (αγγλικά).</ref> λ.χ. ασό ακκαδικόν τη γλώσσαν ''«erebu»'' (''δύσα'' [[Ήλος|τ' ήλιονος]]).
== Ανθρώπ' ==
Ο πληθυσμόν ατ'ς εν σα 742.452.000 νοματούς (σα 2013 τη χρονίαν) απαναφκά. 'Σ σο μέσον όρον ζούν' ακαικά 'ς σα 65 ανθρώπ/χλμ². Α' σ' ούλτ'ς περισσόν ζούνε 'ς σο δυτικόν, 'ς σο κεντρικόν και 'ς σο νότιον την Ευρώπην. 'Σ σ' ανατολικά γάλαι-γάλαι κι άλλο λίγ' ινέσκουνταν.
=== Καλατσίας ===
[[Αρχείον:Languages-Europe.svg|thumb|upright=1.2|Τ' ευρωπαϊκά τα καλατσίας]]
'Σ σα 90 τοις εκατό τ' ανθρωπίων και ακόμαν περισσόν καλατσεύ'νε [[Ινδοευρωπαϊκά γλώσσας|ινδοευρωπαϊκά καλατσίας]].
Τζιπ τρανόν έκτασην έχ'νε τα σλαβικά, τα γερμανικά και τα ρωμανικά τα καλατσίας. Άλλ' ινδοευρωπαϊκά καλατσίας είναι τ' ελλενικά, τ' αρναούτικά, τα βαλτικά ,τα κελτικά και η ρομανί.
Το δεύτερον ασ' ολτ'ς τρανόν γλωσσικόν φαμέλιαν εν τ' [[ουραλικά γλώσσας|ουραλικά τα γλώσσας]]. Επίσημα καλατσίας απέσ' 'ς σ' ατά είν' τα φινλανδικά, τ' ούγγρικα και τ' εσθονικά. Εξόν ατεινών εν τα λαπωνικά.
Σ' ευρωπαϊκόν το κομμάτ' τη [[Τουρκία|Τουρκίας]] καλατσεύ'νε [[τουρκικά γλώσσας|τουρκικόν γλώσσα]], τα τουρκικά.
=== Ινάνεμα ===
75 τοις εκατό τ' ανθρωπίων έν χριστιανάντ (ά' σ' ούλτ'ς περισσόν ρωμαιοκαθολικοί, προτεστάντ' κι [[Ορθόδοξον Εγκλεσία|ορθόδοξοι]]).
8 τοις εκατό είν' μουσουλμανάντ κι ευρίουνταν 'ς σο ευρωπαϊκόν τη [[Ρουσία|Ρουσίαν]] (25.000.000), 'ς σο ευρωπαϊκόν τη [[Τουρκία|Τουρκίαν]] (5.900.000), 'ς ση [[Βοσνία και Ερζεγοβίνη|Βοσνίαν Ερζεγοβίνην]] (2.200.000) και 'ς σην [[Αλβανία|Αλβανίαν]] (1.400.000 – 2.500.000). Έξον ατούν είν' μουσουλμάν ξενιτάντ' και οι απογόνατουν τη [[Γαλλία|Γαλλίας]] (5.500.000), τη [[Γερμανία|Γερμανίας]] (3.200.000), τ' [[Ηνωμένον Βασίλειο|Ηνωμενατί Βασιλειατί]] (1.500.000) και τ' [[Ιταλία|Ιταλίας]] (1.000.000).
'Σ σο 1 τοις εκατό τ' ανθρωπίων αφ'κά είν' τ' έτερα τ' ινανέματα. 'ς σα 16 με 17 τοις εκατό ξάι 'κ ινανεύνε.
== Κράτη και πολιτικόν διαίρεση ==
=== Βόρειον Ευρώπη ===
# Χερσαία τοπέα: [[Δανία]], [[Φινλανδία]]
# [[Σκανδιναβικόν Χερσόνησος]]: [[Νορβηγία]], [[Σουηδία]].
# Νησιωτικά τοπέα: [[Ισλανδία]]
=== Δυτικόν Ευρώπη ===
# Χερσαία τοπέα: [[Γαλλία]], [[Μονακόν]]
# [[Κάτω Χώρας]]: [[Ολλανδία]], [[Βέλγιον]], [[Λουξεμβούργον]]
# Νησιωτικα τοπέα: [[Ηνωμένο Βασίλειο|Ηνωμένον Βασίλεον]] ([[Τρανόν Βρετανία]]), [[Ιρλανδία]]
=== Κεντρικόν Ευρώπη ===
# Παραθαλάσσεα τοπέα: [[Γερμανία]], [[Πολωνία]]
# Ηπειρωτικά τοπέα: [[Ελβετία]], [[Λιχτενστάιν]], [[Αυστρία]], [[Ουγγαρία]], [[Τσεχία]], [[Σλοβακία]],
=== Ανατολικόν Ευρώπη ===
# Παρα-βαλτικά τοπέα: [[Εσθονία]], [[Λεττονία]], [[Λιθουανία]],
# Ηπειρωτικά τοπέα: [[Ρουσία]] (ευρωπαϊκόν)<ref name="Part in Asia"> Ένα κομάτ ασήν έκτασην ατς ευρίεται σην Ασίαν.</ref>, [[Λευκορουσία]]
# Παρευξείνεια τοπέα: [[Αζερμπαϊτζάν]]<ref name="Part in Asia"> Ένα κομάτ ασήν έκτασην ατς ευρίεται σην Ασίαν.</ref>, [[Αρμενία]]<ref name="Geo-Asia">Γεωγραφικά εν σην Ασίαν, άμαν λέγουμ' ατέναν ευρωπαϊκόν για την ιστορίαν και τον πολιτισμόν ατς.</ref>, [[Γρουζία]]<ref name="Geo-Asia">Γεωγραφικά εν σην Ασίαν, άμαν λέγουμ' ατέναν ευρωπαϊκόν για την ιστορίαν και τον πολιτισμόν ατς.</ref>, [[Μολδαβία]], [[Ουκρανία]]
=== Νότιον Ευρώπη ===
# [[Ιβηρικόν Χερσόνησος]]: [[Ισπανία]], [[Πορτογαλία]], [[Ανδόρρα]].
# [[Ιταλικόν Χερσόνησος]]: [[Ιταλία]], [[Βατικανό|Βατικανόν]], [[Άγιος Μαρίνος]].
# [[Βαλκανικόν Χερσόνησος]]: [[Αλβανία]], [[Βουλγαρία]], [[Ρουμανία]], [[Ελλάδα]], [[Σερβία]], [[Μαυροβούνιον|Μαυροραχιν]], [[Κροατία]], [[Σλοβενία]], [[Βοσνία και Ερζεγοβίνη|Βοσνία και Ερζεγοβίνην]], [[Βόρεια Μακεδονία]], [[Τουρκία]] (ευρωπαϊκόν)<ref name="Part in Asia"> Ένα κομάτ ασήν έκτασην ατς ευρίεται σην Ασίαν.</ref>.
# Νησιωτικά τοπέα: [[Μάλτα]], [[Κύπρος]].
== Γεωγραφία ==
Με την [[Ασίαν]] εντάμαν εφτάει τρανόν γεωγραφικόν σύνολον. Αέτσ' η Ευρώπην εν χερσόνησον τ' ευρασιατικού τ' ήπειρατι. Τα τζιπ τρανά τα ευρωπαϊκά τα χερσονησία είν' η Κόλα, το Σκανδιναβικόν, το Γιουτλανδικόν, το Ιβηρικόν, το Ιταλικόν και το Βαλκανικόν. Απέσ' σ' ουλ' τρανά τ' ευρωπαϊκά τα νησία ευρίουμεν τη Νόβαγια Ζεμλιά, τη Γην τη Φραγκίσκονος Ιωσήφ, τα Βρετανικά τα νησία, τα νησία τη Δανίας, την [[Ισλανδία|Ισλανδίαν]], την Κορσικήν, τη [[Σαρδηνία|Σαρδηνίαν]], τη [[Σικελία|Σικελίαν]], την [[Κύπρος|Κύπρον]] και την [[Κρήτη|Κρήτην]].
== Αναφοράντας ==
<references />
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Europe - Europa|Η Ευρώπην σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ευρώπη|Η Ευρώπην σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Europe|Χάρτες ασην Ευρώπην]]'''
* [https://web.archive.org/web/20201129051213/http://www.europestartpage.com/ EUROPEstartpage.com (Οδηγός ταξιδίων)]
* [https://web.archive.org/web/20080921223939/http://earthobservatory.nasa.gov/Newsroom/NewImages/images.php3?img_id=13266 Η Ευρώπην σην νύχταν]
* [https://web.archive.org/web/20050403105702/http://www.geog.tamu.edu/~prout/GVmidtermTwo.html Περιοχίδια τη Ευρώπης]
* [http://www.freeworldmaps.net/europe/ Χάρτες τη Ευρώπης]
* [http://europa.eu Ιστοσελίδα τη Ευρωπαϊκής Ένωσης]
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Ευρώπη| ]]
[[Κατηγορίαν:Βικιπαίδεια:Arthron]]
0z1at59uqr89p1mzdla1p48qqz0njqn
Εύξεινος Πόντος
0
185
35334
35139
2023-02-08T22:59:37Z
46.177.98.254
/* Μυθολογίαν */
35334
wikitext
text/x-wiki
Αβούτο εν γράψιμον για τη θάλασσαν. Για τον τόπον δεαβάστεν: [[Πόντος|Πόντος]]''
[[Εικόναν:Ελληνικές_αποικίες_Ευξείνου_Πόντου.svg|thumb|300px|Αποικίες τη Πόντονος]]
'''Εύξεινος Πόντος''' εν τ' ιστορικόν τ' όνεμαν τη [[Μαύρον Θάλασσα|Μαύρου τη Θάλασσας]]. Τ' όνεμαν εξέβεν ασην αλλαγήν τη πρώτου τ' ονεματί «Άξεινος Πόντος» (''αφιλόξενον θάλασσα''). «Εύξεινος Πόντος» σημαίνει ''φιλόξενον θάλασσα''.
== Μυθολογίαν ==
Κατά τ' ελλενικόν τη μυθολογίαν σ' αούτον τον τόπον εζήνεν ο θεόν [[Πόντος (μυθολογία)|Πόντος]], ο γυιον τ' [[Αιθέρας|Αιθέρα]] και τη [[Γαία|Γαίας]]. Αβούτον τη θάλασσαν ετολανεύτεν ο [[Ιάσων|Ιάσων]] όντες εχπάστεν τ' [[Αργοναυτικόν εκστρατεία|Αργοναυτικόν την εκστρατείαν]]. Ο [[Αυτόλυκος|Αυτόλυκος]] (έτον απές σ' αυτοίν τ' Αργοναυτικού τ' εκστρατείας) ίδρυσεν τη [[Σινώπη|Σινωπή]], την πρώτην πολιτείαν τη [[Πόντος|Πόντονος]].
== Τέρεν ==
*[[Πόντος|Πόντος]]
[[Κατηγορίαν:Ελλενικόν ιστορίαν|Ευξεινος Ποντος]]
[[Κατηγορίαν:Μαύρον Θάλασσα|Ευξεινος Ποντος]]
4ejbky9oz58l7dqa5k3chfy4s8u3fbd
Θεσσαλονίκη
0
186
36864
35651
2025-12-16T10:04:21Z
Εὐθυμένης
2777
36864
wikitext
text/x-wiki
[[Εικόναν:Thessalonica_Montage_L.png|thumb|right|310px|<div style="font-size:85%; font-family:Palatino linotype;"><center>H Θεσσαλονίκην</center></div>]]
Η '''Θεσσαλονίκην''' γιόξαμ '''Σαλονίκ΄''' εν πολιτείαν ντο ευρίεται 'ς σην [[Ελλάδα|Ελλάδαν]] και εχ’ τρανόν [[ιστορίαν]]. Το σύμβολον ατ'ς εν ο Λευκόν ο Πύργον, ντο εποίκαν ατόν οι Ενετοί. Η Θεσσαλονίκην εν η πρωτεύουσα τη [[Μακεδονία|Μακεδονίας]] και εχ' πληθυσμόν 800.764 ανθρώπ'ς απαναφκά.
== Γεωγραφίαν ==
Η Θεσσαλονίκην εν χτιζμέντζα 'ς σο Θερμαϊκόν το Κόλπον, πέραν ά'σό ψηλόρραχον το [[Χορτιάτες|Χορτϊάτ']].
== Ιστορίαν ==
Το 315 π.Χ. τη χρονίαν ο [[Κάσσανδρος|Κάσσανδρον]] ίδρυσεν τη Θεσσαλονίκην. Έδωκεν ατέν τ' όνεμαν τη πατσής τη [[Μέγας Αλέξανδρος|Μεγαλέξανδρονος]]. Ατέ πα επαίρεν τ' όνεμαν ατ'ς όντες οι Μακεδόνες και οι Θεσσαλοί ενίκεσαν τοι Φέρες και τοι Φωκεάδες. Τ' όνεμαν «Θεσσαλονίκη» εν συγκόλλησην ά' σ' αρχαία τ' ελλενικά τα λέξεις ''Θεσσαλῶν'' και ''Νίκη''. <br />
Ά' σό 168 π.Χ. τη χρονίαν η Θεσσαλονίκη έντονε μέρος τη Ρωμαϊκού τη Αυτοκρατορίας κι επεκεί τη [[Ρωμανίαν|Βυζαντινού τη Αυτοκρατορίας]]. Έτον πρωτεύουσα τη ρωμαϊκού τη επαρχίας ''Macedonia''.<br />
Αντιφέρκουτον κι επολέμησεν το Οθωμανικόν τη Αυτοκρατορίαν, 'ς σο τέλος έχασεν τον πόλεμον και ά' σό 1430 τη χρονίαν έντονε μέρος ατ'ς για 480 χρόνä. Όντες το 1912 τη χρονίαν ετελέθεν ο Α’ Βαλκανικόν Πόλεμον έντον πολιτεία τη [[Ελλάδα|Ελλάδας]].
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Θεσσαλονικη}}
[[Κατηγορίαν:Μακεδονία|Θεσσαλονίκη]]
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας|Θεσσαλονίκη]]
jta0g6mq6ap6mb73ek0bjyaap8ad427
Ιβηρία
0
187
1948
1947
2009-03-06T15:22:15Z
MF-Warburg
53
3 revisions
1948
wikitext
text/x-wiki
#REDIRECT[[Ιβηρικόν Χερσόνησος|Ιβηρικόν Χερσόνησος]]
biwp7v8rymsc0bb37kibpjkvpl1mthl
Ιβηρικόν Χερσόνησος
0
188
30985
30901
2013-03-07T18:02:41Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 94 interwiki links, now provided by [[d:|Wikidata]] on [[d:q12837]] [[M:User:Addbot/WDS|(translate me)]]
30985
wikitext
text/x-wiki
[[Εικόναν:Iberian peninsula.jpg|right|thumb|270px|Ασό σατελίτ: τ' Ιβηρικόν η χερσόνησος]]
Τ' '''Ιβηρικόν η χερσόνησος''' εν ση δύσαν τ' [[Ευρώπην|Ευρώπης]] κι ανήκει σα ασ' όλεα τα τρανά τα χερσονησία νατς. Λέγνατεν και ''Ιβηρία''. Αούτο τ' όνεμαν εξέβεν ασον λαόν τ' Ιβηρίων π' έτον ακαικά σ' αρχαία τα χρόνε. Σα λατινικά επαίρεν τόνεμαν ''Hispania''. Επεκεί εξέβαν τοσημερνά τονέματα ''España'' και ''[[Ισπανία]]''. <br />
Τ' Ιβηρικόν τη χερσόνησο και τη [[Γαλλία|Γαλλίαν]] χωρίζνε τα ρασία τη [[Πυρηναία|Πυρηναίων]]. Σα νοτιοδυτικά, δυτικά και βόρεια βρέχκεται ασόν [[Ατλαντικόν Ωκεανός|Ατλαντικόν τον ωκεανόν]] και ανατολικά και νοτιοανατολικά ασήν [[Μεσόγειον θάλασσα|Μεσόγειον τη θάλασσαν]]. Το τζιπ νότιον σημείον ατ'ς εν το [[Γιβραλτάρ]], σην Αφρικήν καικά. Έχ' τρανόν ποταμόν τον [[Τάγος|Τάγον]].
Έχ' έκτασην άμον ντ' έχνε η Γαλλίαν και το [[Βέλγιο|Βέλγιον]] εντάμαν, σα 580.000 τ. χλμ. εξόν τ' ισπανικών νησίων [[Βαλεαρίδας]] και [[Κανάρια νησία|Κανάραι]] και τα πορτογαλικά τ' [[Αζόρες|Αζόρε]] και τη [[Μαδέρα|Μαδέραν]]. Σ' Ιβηρικόν τη χερσόνησον ευρίσκουνταν τ' ευρωπαϊκά τα [[Κράτος|κράτη]] τ' [[Ισπανία|Ισπανίας]], τη [[Πορτογαλία|Πορτογαλίας]], τ' [[Ανδόρρα|Ανδόρρας]] και ο βράχος τη [[Γιβραλτάρ]].
Την μορφήν ατ'ς δίνε διάφορα ρασιοσειράς, τα «σιέρας» (''Sierra''). Τ' ασ' όλεν ψηλά εν η «Σιέρα ντε λα Ντεμάντα» (2308 μ.), η «Σιέρα Ναβάντα», η «Σιέρα ντε Μουκάθιο» (2317 μ.) και η «Σιέρα ντε Σεμπολλιέρα» (2178 μ.).
== Κράτε κι εδάφε ==
* [[Εικόναν:Flag of Andorra.svg|20px]] [[Ανδόρρα]]
* [[Εικόναν:Flag of Spain.svg|20px]] [[Ισπανία]]
* [[Εικόναν:Flag of Portugal.svg|20px]] [[Πορτογαλία]]
* [[Εικόναν:Flag of Gibraltar.svg|20px]] [[Γιβραλτάρ]]
* [[Εικόναν:Flag of France.svg|20px]] [[Γαλλία]]
[[Κατηγορίαν:Χερσονησία|Ιβηρικον Χερσονησος]]
[[Κατηγορίαν:Ευρώπη|Ιβηρικον Χερσονησος]]
[[Κατηγορίαν:Ιβηρία| ]]
lycvss7wan3t7kobud4n7imw7lcppcw
Ιρλανδία
0
189
35925
34848
2024-10-26T05:25:44Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35925
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ιρλανδία'''</big></big><br/>''Éire''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Ireland.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of Ireland.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Ireland.svg|300px]]
|}
Η '''Δημοκρατίαν τ' Ιρλανδίας''' (σα ιρλανδικά: ''Poblacht na hÉireann'', σα αγγλικά: ''Republic of Ireland'') εν [[κράτος]] σα βορειοδυτικά τ' [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν το [[Δουβλίνο|Δουβλίνον]]. Ο πληθυσμόν τη χώρας είν' σα 4.130.000 τ' ανθρώπ'ς και πρόεδρον ατ'ς εν ο Μέρι ΜακΑλίζ.
== Γεωγραφίαν ==
Η Ιρλανδίαν ευρισκάται απεσκέσ' σον Αντλαντικόν τον Ωκεανόν και σο Ιρλανδικόν τη Θάλασσαν. Σα βορειοανατολικά συνορεύ' με το βρετανικόν το [[Βόρειον Ιρλανδίαν|Βόρειον τη Ιρλανδίαν]].
Σα τρανά τα πολιτείας ατ'ς ανήκ'νε το [[Κορκ]] και το [[Γκάλγουεϊ]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Ireland|Η Ιρλανδίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ιρλανδία|Η Ιρλανδίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Ireland|Χάρτες ασην Ιρλανδίαν]]'''
* [https://web.archive.org/web/20050403211720/http://www.gov.ie/aras/ Το επίσημον ο ιστοτόπον τη προέδρονος τ' Ιρλανδίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Ιρλανδία]]
[[Κατηγορίαν:Ευρώπη|Ιρλανδία]]
[[Κατηγορίαν:Ιρλανδία| ]]
sdxczn49o40ymgrirddzqv4e5jvwve6
Ισλανδία
0
190
35926
33495
2024-10-26T05:25:48Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35926
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ισλανδία'''</big></big><br/>''Ísland ''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Iceland.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of Iceland.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Iceland.svg|300px]]
|}
Η '''Ισλανδία''' (σα ισλανδικά: ''Lýðveldið Ísland'') είναι [[Ευρώπην|ευρωπαϊκόν]] [[κράτος]] σο βόρειον τον Ατλαντικόν τον ωκεανόν. Πρωτεύουσαν ατ'ς εν η [[Ρέυκιαβικ]]. Ο πρόεδρον ατ'ς εν ο [[Όλαφουρ Ράγκναρ Γκρίμσσον]] και ο πληθυσμόν ατ'ς ένι σα 312.861 τ' ανθρώπ'ς.
President : [[Guðni Th. Jóhannesson]]
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Iceland|Η Ισλανδίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ισλανδία|Η Ισλανδίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Iceland|Χάρτες ασην Ισλανδίαν]]'''
* [http://iceland.is/ Το επίσημον ο ιστοτόπον τ' ισλανδικού Υπουργεί σα εξ μερέαν]
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Ισλανδία]]
[[Κατηγορίαν:Ευρώπη|Ισλανδία]]
[[Κατηγορίαν:Ισλανδία| ]]
3mrt4lil2damx30tqst6oyfyjgg1mtl
Ισπανία
0
191
36302
35927
2025-08-26T14:42:06Z
46.12.104.200
απόδοση λέξης από τη νέα ελληνική στα ποντιακά
36302
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ισπανία'''</big></big><br/>''Reino de España''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Spain.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Escudo_de_Espa%C3%B1a_(mazonado).svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Spain.svg|300px]]
|}
Το '''Βασίλειον τη Ισπανίας''' (σα ισπανικά ''Reino de España'', σα καταλωνικά ''Regne d'Espanya'', σα γαλικιανικά ''Reino de España'', σα βασκικά ''Espainiako Erresuma'') εν κράτος σα δυτικά τη [[Ευρώπην|Ευρώπης]], σ' [[Ιβηρικόν Χερσόνησος|Ιβηρικόν τη χερσόνησον]]. Πρωτεύουσαν ατ'ς εν η [[Μαδρίτη]] και ο βασιλέαν ατ'ς εν ο [[Κάρολος Α' τη Ισπανίας|Φιλιππος Η' τη Ισπανίας]]. Η Ισπανίαν ευρίεται απές σην Μεσόγειον και σον Ατλαντικόν τον Οκεανόν, αφκά ασή [[Γαλλία|Γαλλίαν]] και την [[Ανδόρρα|Ανδόρραν]] και σα ανατολικά τη [[Πορτογαλία|Πορτογαλίας]].
== Συνδέζμαι ==
* {{commonscat|Spain}}
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ισπανία|Η Ισπανίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Spain|Χάρτες ασην Ισπανίαν]]'''
* [http://www.senado.es/ Το επίσημον ο ιστοτόπον τ' ισπανικού τη κοινοβουλί]
* [http://www.congreso.es/ Το επίσημον ο ιστοτόπον τ' ισπανικού τη κονγκρέσωνος]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Ισπανία]]
[[Κατηγορίαν:Ευρώπη|Ισπανία]]
[[Κατηγορίαν:Ιβηρία|Ισπανία]]
[[Κατηγορίαν:Ισπανία| ]]
ani8nbqtn6gwlcaylm7tyqwsamdrtiy
Ιστορία
0
192
32286
30992
2015-03-19T10:58:47Z
Cekli829
906
32286
wikitext
text/x-wiki
'''Ιστορίαν''' λέγουμε την τέχνην π' συστηματοποιά την μελέτην ντο τερεί τ' ανθρώπς, ντ' εποίν'ναν σα παλαιά τα βαχούτεα κι επεκεί. Τερεί τοι παλαιούς, ντο έσαν και ντ' εποίν'νεν καθαείς ατούν.<ref name="Whitney">Whitney, W. D. (1889). [http://books.google.com/books?id=wrACAAAAIAAJ The Century dictionary; an encyclopedic lexicon of the English language]. New York: The Century Co. Page [http://books.google.com/books?id=wrACAAAAIAAJ&printsec=frontcover#PPA2842,M1 2842].</ref>
== Εποχάς ==
* [[Παλαιόν Ιστορίαν]]
* [[Ρωμανίαν|Ρωμανίαν/Βυζάντιον]]
* [[Ευρωπαϊκόν Ιστορίαν]]
* [[Πολέμ]]
* [[Ρωμαϊκόν Αυτοκρατορίαν]]
* [[Καινούρ' Ιστορίαν]]
== Ιστοριογράφοι ==
* [[Στράβων]]
== Αναφοράντας ==
<references />
[[Κατηγορίαν:Ιστορίαν|*]]
rma19pjszi8m0qlef8hne8csa0b5k8r
Ιταλία
0
201
35929
35352
2024-10-26T05:26:00Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35929
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ιταλία'''</big></big><br/>''Repubblica italiana''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Italy.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Emblem_of_Italy.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Italy.svg|300px]]
|}
Η '''Ιταλία''', (σα ιταλικά: ''Italia'', τ' επίσημον τ' όνεμα εν ''Repubblica Italiana'') είναι [[κράτος]] σο νότον τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Ρώμη]] και η πρωθυπουργόν ατ'ς εν η [[Τζόρτζια Μελόνι]]. Η χώρα εχ' πληθυσμόν σα 59.131.287 τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Η Ιταλίαν ευρίεται σο [[Μεσόγειον θάλασσα|Μεσόγειον τη θάλασσα]], ανάμεσα ση [[Αυστρία|Αυστρίαν]], τη [[Σλοβενία|Σλοβενίαν]], τη [[Γαλλία|Γαλλίαν]], την [[Ελλάδα|Ελλάδαν]] και τη [[Ελβετία|Ελβετίαν]]. Έχ' τρανά πολιτείας το [[Μιλάνο|Μιλάνον]] και τη [[Νεάπολη (Ιταλία)|Νεάπολην]]. Η πολιτείαν Καμπιόνε ντ' Ιτάλια, που ευρίεται σο ελβετικόν το έδαφος, εν κι αυτή ιταλικόν.
== Συνδέζμαι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:Italy|Η Ιταλίαν σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:el:wikt:Ιταλία|Η Ιταλίαν σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Italy|Χάρτες ασην Ιταλίαν]]'''
* [http://www.quirinale.it/ Το επίσημον ο ιστοτόπον τη προέδρονος τ' Ιταλίας]
* [http://www.parlamento.it/ Το επίσημον ο ιστοτόπον τ' ιταλικού τη κοινοβουλί]
* [https://web.archive.org/web/20080517014204/http://www.esteri.gov.it/eng/ Το επίσημον ο ιστοτόπον τ' ιταλικού Υπουργεί σα εξ μερέαν]
* [http://www.iic.gr/ Το επίσημον ο ιστοτόπον τ' ιταλικού μορφωτικού ινστιτούτου σην Αθήναν]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Ιταλία]]
[[Κατηγορίαν:Ευρώπη|Ιταλία]]
[[Κατηγορίαν:Ιταλία| ]]
hlklwjzrwkis9p4t746g7zb1ktivc69
Ke me latinikus haraktires
0
202
33593
8709
2018-03-05T16:01:04Z
Escarbot
910
wikidata interwiki
33593
wikitext
text/x-wiki
<div align="center" style="font-size:25pt; line-height:1em;">İ Vikipedia sa
Pontiaka</div>
<div align="center" style="font-size:15pt; line-height:1em;">ta Romeyika ason Ponton</div>
<div align="center" style="font-size:12pt; line-height:1,3em;">'''Anihton engyklopedia do ğrafkete ke tranin ap' atins p' thelne.'''</div>
<!-- ------------ -->
{| cellpadding="0" cellspacing="0"
| valign="top" width="48%" style="background:#f5fffa; border: 1px solid #cef2e0" |
{| cellspacing="10" style="background:transparent; font-family: Verdana, Arial, Helvetica, sans-serif;"
|-----------------------------------------
| style="text-align:center; padding:4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc;background-color:#cef2e0" | <span style="float: left; margin:0px; ">[[Εικόναν:Comedyicon.svg|25px|]]</span> KALOS ERTHETEN...
|-----------------------------------------
| style="text-align:left" | ...sin [[Βικιπαίδεια|Vikipedian]]. '''Mathesten''' polla gia t'aten deavazontas ta [[Βικιπαίδεια/Πολλά ερωτήσεις|polla erotisis]] ke tin [[Βικιπαίδεια/Βοήθεια|voithian]].
To pontiakon i Vikipedia atora eş '''[[Ειδικόν:Statistics|{{NUMBEROFARTICLES}}]]''' sayfedes. Voithesten ki eftaten atenan ki allo tranesan. Ğrafesten ta nunismata ke ta ideasesun sin [[Βικιπαίδεια:Αγορά|ağoran]] ke deavasten [[Βικιπαίδεια:Ντο 'κ εν η Βικιπαίδεια|do 'k en i Vikipedia]].
|-----------------------------------------
| style="text-align:center; padding:0px; padding-top: 4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc; background:#cef2e0" | <span style="float: left; margin:0px; ">[[Εικόναν:Open bible 01 01.svg|25px|]]</span> DEAVASTEN KE MATHESTEN
|-----------------------------------------
| {{arthron}}
|-----------------------------------------
| style="text-align:center; padding:0px; padding-top: 4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc; background:#cef2e0" | <span style="float: left; margin:0px; ">[[Εικόναν:Feather writing.png|25px|]]</span> HAPERE
|-----------------------------------------
| {{Πρότυπον:Χαπέραι}}
|-----------------------------------------
|}
| valign="top" width="48%|
{| cellspacing="10" style="background:#f5faff; border: 1px solid #cedff2"
|-----------------------------------------
| style="text-align:center; padding:4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc;background-color:#cedff2" |PROSKALEMAN YA TO ERĞON ATO
|-----------------------------------------
| style="text-align:left" | Voithesten tin Vikipedian. Valesten ki esistun to eksereten aets ya na tranin i engyklopedia.
*Εan ekserete kala kenurea pramata, arnaşepsten allo ğrapsimon.
*Ean evrisketen ğrapsimata do k' ine sosta ki an eşete so nunesun ta sosta, piisten ta kiallo kallion.
*İ antiğrafin as' alla ğlossas inete.
|-----------------------------------------
| style="text-align:center; padding:4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc;background-color:#cedff2" |<span style="float: left;">[[Εικόναν:P literature.svg|25px|]]</span>ENGYKLOPEDIA
|-----------------------------------------
| style="text-align:center;font-weight: bold; font-size: 13px;background-color:#cedff2" | Kataloğos me ta themata
|-----------------------------------------
|
{| style="font-size: 12px; background:#f5faff" cellspacing="0" cellpadding="3"
| width="50%" |
[[Εικόναν:P parthenon.svg|40px|left]] <big>[[:Κατηγορίαν:Πολιτισμόν|Kültüri]]</big><br>
[[Ζωγραφικήν|Zoğrafiki]] · [[Θέατρον|Tiyatro]] · [[Λογοτεχνίαν|Loğotehnia]] · [[Μουσικήν|Musiki]] · [[Αρχιτεκτονικήν|Arhitektoniki]] · [[Γλυπτικήν|Ğliptiki]] · [[Αθλητισμός|Athlitismos]] · [[Μυθολογίαν|Mytholojia]] · [[Θρησκείαν|İnanema]] · [[Ποιητικήν|Piitiki]]
[[Εικόναν:P countries.png|40px|left]] <big>[[Γεωγραφίαν|Jeoğrafia]]</big><br/>
[[Ασίαν|Asia]] · [[Αφρικήν|Afriki]] · [[Ευρώπην|Evropi]] · [[Αμερικήν|Ameriki]] · [[Ωκεανίαν|Okeania]] · [[Ανταρκτικήν|Antarktiki]] · [[Αρκτικήν|Arktiki]] · [[:Κατηγορίαν:Πολιτείας|Politias (Şehire)]] · [[:Κατηγορίαν:Κράτη|Devlete]] · [[:Κατηγορίαν:Θάλασσας|Thalassas]] · [[:Κατηγορίαν:Ποτάμαι|Potame]] · [[:Κατηγορίαν:Νησία|Nisia]] · [[:Κατηγορίαν:Ραχία|Raşia]]
[[Εικόναν:P history.png|40px|left]] <big>[[:Κατηγορίαν:Ιστορίαν|İstoria]]</big><br/>
[[Παλαιόν Ιστορίαν|Παλαιόν Ιστορίαν]] · [[Ρωμανίαν|Romanian/Bizans]] · [[Ευρωπαϊκόν Ιστορίαν|Evropaikon İstoria]] · [[Πολέμ|Polem]] · [[Ρωμαϊκόν Αυτοκρατορίαν|Romaikon Aftokratoria]] · [[Καινούρ' Ιστορίαν|Kenur' İstoria]]
[[Εικόναν:P writing.svg|40px|left]] <big>[[Γραμματικήν|Ğrammatiki]]</big><br/>[[Ουσιαστικόν|Usiastikon]] · [[Επίθετον|Epitheton]] · [[Ρήμαν|Riman]] · [[Επίρρημαν|Epiriman]] · [[Σύνδεσμον|Syndesmon]] · [[Πρόθεσην|Prothesi]] · [[Αντωνυμίαν|Antonymia]] · [[Άρθρον|Arthron]] · [[Αριθμητικόν|Arithmitikon]] · [[Επιφώνημαν|Epifoniman]]
[[Εικόναν:P wiki letter w.svg|40px|left]] <big>[[Βικιπαίδεια|Vikipedia]]</big><br/>
[[Βικιπαίδεια:Αγορά|Ağora]] ·
[irc://irc.freenode.net/wikipedia-pnt Parakath so IRC] · [[Βικιπαίδεια:Βοήθεια|'''Voithia''']] · [[Βικιπαίδεια:Ντο εν η Βικιπαίδεια|Do en i Vikipedia]] · [[Βικιπαίδεια:Ντο 'κ εν η Βικιπαίδεια|Do 'k en i Vikipedia]] · [[Βικιπαίδεια:Δικαιώματα πνευματί|Dikeomata pnevmati]] · [[Βικιπαίδεια:Ποντιακόν γράψιμον|Pontiakon ğrapsimon]]
|}
<!-- <div style="float: right;"><small>[{{SERVER}}{{localurl:Πρότυπο:Θεματικός κατάλογος|action=edit}} Επεξεργασία]</small></div>-->
|------------------------------------
|}
|}
{{:Άλλα έργα}}
bfwyn3e8nv4t3inuqdtyzdafkt4sgnt
Κάλαντα Χριστουγέννων
0
203
32880
31633
2016-05-10T16:48:39Z
Escarbot
910
wikidata interwiki
32880
wikitext
text/x-wiki
Τα '''κάλαντα τη Χριστουγεννίων''' είν' ευχητικά τραγωδίας ντο ψάλκουνταν κάθαν χρόνον, σην παραμονήν τη [[Χριστούγεννα|Χριστουγεννίων]]. Τα κάλαντα έχνε πολλά λοέν μορφάς (λ.χ. [[Ποντιακά|ποντιακά]], μωραΐτικα, κρητικά, κ.ου.κ.).
== Κάλαντα ==
:Χριστός ’γεννέθεν χαράν ’ς σον κόσμον, χα καλή ώρα, καλή σ’ ημέρα.
:Χα καλόν παιδίν οψέ ’γεννέθεν, οψέ ’γεννέθεν, ουρανοστάθεν.
:Τον εγέννεσεν η Παναγία, τον ενέστεσεν (Αϊ Παρθένος-δις).
:Εκαβάλκεψεν χρυσόν πουλάριν κι εκατήβεν ’ς σο σταυροδρόμιν
:Έρπαξαν Ατον οι χίλ’ Εβραίοι, οι χίλ’ Εβραίοι και μύριοι Εβραίοι.
:Ας ακρεντικά κι ας σην καρδίαν αίμαν έσταξεν, χολή ’κ’ εφάνθεν.
:Ούμπαν έσταξεν, και μύρος έτον, μύρος έτον και μυρωδία.
:Εμυρίστεν ατο ο κόσμος όλεν, για μυρίστ’ ατο κι εσύ αφέντα.
:Συ αφέντα, καλέ μ’ αφέντα.
:Έρθαν τη Χριστού τα παλικάρα και θημίζ’νε τον νοικοκύρην,
:Νοικοκύρη μ’ και βασιλέα.
:Δέβα ’ς σο ταρέζ’ κι έλα ’ς σην πόρταν, δος μας ούβας και λεφτοκάρα
:Κι αν αν’εις μας, χαράν ’ς σην πόρτα σ’.
::(Καλά Χριστούγεννα και σ’ έτη πολλά)
== Συνδέσμ ==
*[http://www.youtube.com/watch?v=Tdqr9HOY9tM Τα ποντιακά τα κάλαντα σην ΕΤ1]
[[Κατηγορίαν:Θρησκείαν|Καλαντα Χριστουγεννων]]
86u7zje0fm5bwv1zy8h2armqhc1sx82
Κέστεραν
0
204
36865
36214
2025-12-16T10:05:13Z
Εὐθυμένης
2777
36865
wikitext
text/x-wiki
[[Εικόναν:Dimos Kastorias.png|thumb|Η Κέστεραν σον χάρτεν τη νομού]]
Η '''Κέστεραν''' (σα [[Ελλενικόν γλώσσα|ελλενικά]] ''Καστοριά'') εν [[Ελλάδα|ελλενικόν]] πολιτείαν ντ' ευρίεται σην [[Μακεδονία|Μακεδονίαν]] κι εςς πληθυσμόν 20.000 ανθρώπ απαναφκά. Ευρίεται σην δύσαν τη Δυτικού τη Μακεδονίας κι απές σον νομόν τη Κέστερας.
Η πολιτείαν εν χτισμέντζα σον ισθμόν εινός χερσόνησονος απάν, ση «γούλαν» ντ' ευρίεται ση δύσαν τη κιολί τη Κέστερας. Το κιόλιν εςς τόνεμαν Ορεστιάδα.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Κεστεραν}}
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας]]
[[Κατηγορίαν:Μακεδονία]]
mu3fy2b0ag6egvhs02rlbvy4pulzoz0
Κίνα
0
205
35433
35324
2023-06-27T13:49:04Z
2A03:D000:7108:AE46:1:0:1FE9:FC28
35433
wikitext
text/x-wiki
{| border="1" align="right" cellpadding="4" cellspacing="0" width="300" style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Κίνα'''</big></big><br />中华人民共和国
|-
| colspan="2" style="background:#efefef;" align="center" |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of the People's Republic of China.svg|125px]]
| align="center" width="140px" | [[Αρχείον:National_Emblem_of_the_People%27s_Republic_of_China.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| colspan="2" align="center" |
|-
| colspan="2" align="center" | [[Αρχείον:People's Republic of China (orthographic projection).svg|300px]]
|}
Η '''Κίναν''' συνορεύ' με 14 κράτη: το [[Βιετνάμ]], το [[Λάος]], τη [[Βιρμανία]]ν, την [[Ινδία]]ν, το [[Μπουτάν]], το [[Νεπάλ]], το [[Πακιστάν]], το [[Αφγανιστάν]], το [[Τατζικιστάν]], το [[Κιργιστάν]], το [[Καζαχστάν]], τη [[Ρωσία]]ν, τη [[Μογγολία]]ν και το Βόρειον τη Κορέαν. Έχ' τρανά πολιτείας τη [[Σαγκάη]] και το [[Χονγκ κόνγκ]].
== Συνδέζμαι ==
* [[Αρχείον:Commons-logo.svg|15px]] '''[[:el:commons:China|Η Κίναν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Κίνα|Η Κίναν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of the People's Republic of China|Χάρτες ασην Κίναν]]'''
* [http://www.npc.gov.cn/ Το επίσημον η σελίδαν τη NPC] (σα κινεζικά)
[[Κατηγορίαν:Κίνα| ]]
nw2j3efzekwyyiv5c86n86ojykybpyi
Καβάλα
0
206
36866
35209
2025-12-16T10:06:05Z
Εὐθυμένης
2777
36866
wikitext
text/x-wiki
[[Εικόναν:Kavala old town.jpg|220px|thumb|Η παλεά μερέα τη πολιτείας τη Καβάλας]]
H '''Καβάλαν''' (αρχ. ''Νεάπολη'') εν η πρωτεύουσα τη [[Ανατολικόν Μακεδονία|ανατολικού]] τη [[Μακεδονία|Μακεδονίας]] και το όγδοον ασα τρανά τα [[Ελλάδα|ελλενικά]] τα πολιτείας. Οσήμερον εςχ' πληθυσμόν 58.663 ανθρώπς απαναφκά (2001).
== Ιστορίαν ==
Η Καβάλαν έχς' τσιπ τρανόν ιστορίαν και έςχ' τη ρίζαν ατς' σ' [[Αρχαίον Ελλάδαν|αρχαίον την Ελλάδαν]].
Απ'αδά εξεκίνησεν ο [[Χριστιανιμός|Χριστιανιμόν]] για τ' [[Ευρώπην|Ευρώπας]], όταν'έρτε σ'ατέν και καλάτσεψε για τ'ατό τη πίστην ο [[Απόστολος Παύλος|Απόστολον ο Παύλον]], μεταπέκ΄ς ασοί [[Φιλίπποι|Φιλίππς]].
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Καβαλα}}
[[Κατηγορίαν:Μακεδονία]]
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας]]
4o573j844iphh7vtpvuqczjj3vrjb7g
Καλαντάρτς
0
207
37109
37014
2025-12-16T18:14:38Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37109
wikitext
text/x-wiki
<center> '''Ημέρας Καλανταρί''' </center>
<center> [[1 Καλανταρί|1]] | [[2 Καλανταρί|2]] | [[3 Καλανταρί|3]] | [[4 Καλανταρί|4]] | [[5 Καλανταρί|5]] | [[6 Καλανταρί|6]] | [[7 Καλανταρί|7]] | [[8 Καλανταρί|8]] | [[9 Καλανταρί|9]] | [[10 Καλανταρί|10]] | [[11 Καλανταρί|11]] | [[12 Καλανταρί|12]] | [[13 Καλανταρί|13]] | [[14 Καλανταρί|14]] | [[15 Καλανταρί|15]] | [[16 Καλανταρί|16]] | [[17 Καλανταρί|17]] | [[18 Καλανταρί|18]] | [[19 Καλανταρί|19]] | [[20 Καλανταρί|20]] | [[21 Καλανταρί|21]] | [[22 Καλανταρί|22]] | [[23 Καλανταρί|23]] | [[24 Καλανταρί|24]] | [[25 Καλανταρί|25]] | [[26 Καλανταρί|26]] | [[27 Καλανταρί|27]] | [[28 Καλανταρί|28]] | [[29 Καλανταρί|29]] | [[30 Καλανταρί|30]] | [[31 Καλανταρί|31]] </center>
-----
{{ΗμερολόγιοΣεΠίνακα|1}}
Ο '''Καλαντάρτς''' (σ' ελλενικά: ''Ιανουάριος'') εν ο πρώτον μήνας τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] κι εχ' 31 ημέρας. Τ' όνεμαν ατ' εβγών' ασον λατινικόν τη λέξη «καλένδαι» (''calendae'' = πρώτον ημέραν τη μηνού).
[[Αρχείον:Januar Leandro Bassano.jpg|thumb|Leandro Bassano, ''Καλανταρί''|300px]]
== Ο λαόν για τον Καλαντάρτ ==
:''«Καλαντάρτς και νέον έτος, άμον πάντα και οφέτος''
:''έρθαν, αρνί μ', τα Κάλαντα, έρθεν ο Καλαντάρης,''
:''μένω σε και αν 'κ έρχεσαι, να έρται το χαπάρι σ'.»''
:''«Καλαντάρτς καλή χρονία,''
:''κόρ’ εσύ εσέν ερία''
:''καλαντάρτς και νέον έτος, ''
:''κόρ’ θα παίρω σε οφέτος.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:January|Καλαντάρτς σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el:wikt:Ιανουάριος|Ο Καλαντάρτς (Ιανουάριος) σ' ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Καλανταρτς]]
tpenjonaipnapr6q3n3l278c9kpd9e9
Καλομηνάς
0
208
37032
37019
2025-12-16T18:14:34Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37032
wikitext
text/x-wiki
<center> '''Ημέρας Καλομηνά''' </center>
<center> [[1 Καλομηνά|1]] | [[2 Καλομηνά|2]] | [[3 Καλομηνά|3]] | [[4 Καλομηνά|4]] | [[5 Καλομηνά|5]] | [[6 Καλομηνά|6]] | [[7 Καλομηνά|7]] | [[8 Καλομηνά|8]] | [[9 Καλομηνά|9]] | [[10 Καλομηνά|10]] | [[11 Καλομηνά|11]] | [[12 Καλομηνά|12]] | [[13 Καλομηνά|13]] | [[14 Καλομηνά|14]] | [[15 Καλομηνά|15]] | [[16 Καλομηνά|16]] | [[17 Καλομηνά|17]] | [[18 Καλομηνά|18]] | [[19 Καλομηνά|19]] | [[20 Καλομηνά|20]] | [[21 Καλομηνά|21]] | [[22 Καλομηνά|22]] | [[23 Καλομηνά|23]] | [[24 Καλομηνά|24]] | [[25 Καλομηνά|25]] | [[26 Καλομηνά|26]] | [[27 Καλομηνά|27]] | [[28 Καλομηνά|28]] | [[29 Καλομηνά|29]] | [[30 Καλομηνά|30]] | [[31 Καλομηνά|31]] </center>
----
{{ΗμερολόγιοΣεΠίνακα|5}}
Ο '''Καλομηνάς''' (σ' ελλενικά: ''Μάιος'') εν ο πέμπτον μήνας τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] κι εχ' 31 ημέρας.
== Πολλά λοέν πληροφορίας ==
Ο λαόν λεει τ' αφκά καικά τα δίστιχα για τον Καλομηνά:
:''«Όνταν έρτ΄ ο Καλομηνάς, φυτρώνε τα χορτάρια,''
:''ντ΄ έμορφα επρασίντσανε τα τσόλια τα παρχάρια.»''
:''«Έρθεν ο Καλομηνάς,''
:''γάλαν φά όσον πεινάς.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:May|Καλομηνάς σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Μάιος|Ο Καλομηνάς (Μάιος) σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Καλομηνάς]]
thizrnbbw9tz3cbt12dfmcpmrjhjtrx
Καππαδοκία
0
209
37386
34852
2025-12-20T12:06:52Z
Εὐθυμένης
2777
/* Απόθεν επαίραμε τα πληροφορίας */
37386
wikitext
text/x-wiki
[[Αρχείον:Asia minor p20.jpg|thumb|Χάρτες τη Μ. Ασίας σα ρωμαϊκά τα χρόναι]]
[[Αρχείον:Map of Cappadocia.jpg|thumb|Places of touristic relevance]]
Η '''Καππαδοκία''' (τούρκ. ''Kapadokya'') λέγομε τον τόπον τη Μ. Ασίας ντ' ευρίεται σο κέντρον τη [[Τουρκία|Τουρκίας]]. Εν νοτιοδυτικά σον [[Πόντος|Πόντον]].
== Τ' όνεμαν ==
Τ' όνεμαν «Καππαδοκία» εξέβεν ασο παλαιόν το περσικόν τ' όνεμαν ''Katpatuka'' (''Κατπατούκα'') ντο έχ' τη σημασίαν «η χώρα με τ' έμορφα τ' άλογα».<ref>LexicOrient: [https://web.archive.org/web/20081011233238/http://lexicorient.com/e.o/cappadocia.htm Cappadocia]</ref>
== Γεωγραφία ==
Ο Αντίταυρος αχπάσκεται σο βόρειον τη Καππαδοκίαν, δαβαίν τη χώραν σ' ανατολικά και χωρίζ' τον [[Πόντος|Πόντον]] και την [[Αρμενία|Αρμενίαν]]. Ασ' άλλ τη μερέαν ση δύσαν εν το ψηλόρραχον τη τόπονος ο [[Αργαίος]] (3.917 μ), που χωρίζ' τον Πόντον και την Καππαδοκίαν.
== Απόθεν επαίραμε τα πληροφορίας ==
<references />
== Συνδέσμ' ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Cappadocia|Η Καππαδοκία σα Commons]]'''
[[Κατηγορίαν:Ελλενικόν ιστορίαν|Καππαδοκια]]
[[Κατηγορίαν:Τουρκία|Καππαδοκια]]
8jcf8q2mv8o7o04eubmgnydqdeefd03
Καρς
0
210
36739
36573
2025-12-16T08:31:43Z
Εὐθυμένης
2777
/* Συνδέσμ' */
36739
wikitext
text/x-wiki
[[Αρχείον:Kars Turkey Provinces locator.gif|thumb|230px|Το Καρς σον χάρτεν τη Τουρκίας]]
[[Αρχείον:Kars russian architecture.jpg|thumb|230px|Ρουσικόν αρχιτεκτονική σο Καρς]]
Το '''Καρς''' (σα τουρκικά: ''Kars'', σ' αζερικά: ''Qars'', σα κούρδικα: ''Qers'', σα γεωργ. ყარსი = ''Qarsi'', σ' αρμενικά: Ղարս = ''Ghars'' ή Կարս) εν πολιτείαν τη [[Τουρκία|Τουρκίας]], σα νοτιοδυτικά τη Καύκασονος. Εν η πρωτεύουσαν τη επαρχίας τη Καρς κι εχ' πληθυσμόν σα 90.000 τ' ανθρώπς.
== Ιστορία ==
Για τ' αβούτον τον τόπον εποίκαν πολέμ οι [[Ρουσία|Ρουσάντ]] με τοι Τουρκάντ. Όντες έντον ο κριμαϊκόν ο πόλεμος η πολιτείαν έτον τουρκικόν, άμαν επαίραν ατέν οι Ρουσάντ σα 24 τ' Αεργί 1855. Με τη συνθήκην τη Παρισί ξαν' έντον τουρκικόν (30 τη Μαρτ 1856).<br />
Σο ρουσοτουρκικόν πόλεμον τη 1877-78 έντον ρουσικόν κι επέμνεν σην Ρουσίαν ους σα 1918 τη χρονίαν. Σα 1878-1918 60.000 Έλλενες αφήγαν ασήν Τουρκίαν κι επήγαν σην πολιτείαν τη Καρς για να ζούν' εκαικά. Σα χωρία τ' επαρχίας επήγανε άλλα 5.000 Έλλενες. Ασα 177 δημοτικά σχολεία τα 55 έσαν ελλενικά. Επίσης η πολιτείαν είχεν δυο ελλενικά εγκλεσίας: το ναόν τη Μεταμόρφωσης του Χριστού και τον Άγιον Γεώργιον. <ref>''Εγκυκλοπαίδεια του ποντιακού ελληνισμού. Ιστορία - λαογραφία - πολιτισμός'', 1988, Τεύχος 2 (Ζ-ΚΡΥ), σελ. 175-176</ref>
Με το σοσιαλιστικόν την επανάστασην και τη συνθήκην τη Μπρεστ-Λιτόφσκ σα 3 Μαρτί 1918, τα τοπέα Καρς-Αρταχάν και το Βατούμι εγένταν τουρκικά. Με τη συνθήκην τη Σεβρών (10 Aλωναρί 1920) το Καρς έντον αρμενικόν, άμαν η Τουρκάντ αντιφέρκουσαν και αση συνθήκην τ' Αδριανούπολης (22 Χριστουγενναρί 1920) κι αδά μερέαν εν τουρκικόν.<br />
Σα 1922 τη χρονίαν η [[Ελλάδα]] έχασεν τ' ελλενοτουρκικόν πόλεμον (1919-1922) και με τη συνθήκην τη Λωζάνης (1923) οι Τουρκάντ' έχπασαν τ' Έλλενες χριστιανούς τη Καρς κι εχάτεψαν ατείντζ σην Ελλάδαν ([[Μικρασιατικόν καταστροφή]]).
== Αναφοράντας ==
<div style="font-size:90%;"><references/></div></div>
== Βιβλιογραφία ==
* Μαυρογένους, Στ. 1963 ''Το Κυβερνείον Καρς του Αντικαύκασου''. Θεσσαλονίκη.
* Cuinet, V. 1892 ''La Turquie d' Asie''. Paris.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας|Καρς]]
[[Κατηγορίαν:Πόντος|Καρς]]
[[Κατηγορίαν:Βικιπαίδεια:Arthron]]
ksbo9g76sfwoik1bvz416p3szbmrct1
Κασταμονή
0
211
36741
36575
2025-12-16T08:34:16Z
Εὐθυμένης
2777
/* Απόθεν επαίραμε ατά ντ' εγράψαμε */
36741
wikitext
text/x-wiki
[[Αρχείον:Kastamonu Turkey Provinces locator.gif|thumb|240px|right|Η Κασταμονή σον χάρτεν τη Τουρκίας]]
Η '''Κασταμονή''' (τουρκ. ''Kastamonu'', βυζαντινόν όνεμα: ''Κασταμών'') εν πολιτείαν τη [[Τουρκία|Τουρκίας]] κι ευρίεται σον [[Πόντος|Πόντον]]. Εχ' πληθυσμόν σα 103.340 τ' ανθρώπς(2000).
== Τ' όνεμαν ==
Οριζμένοι ελογαριάζνε πως τ' όνεμα τη πολιτείας έτον «Κάστρον Κομνηνοί» κι επεκεί εξέβεν το «Κασταμονή». Σο βιβλίον την Αλεξιάδαν, η Άννα Κομνηνή λεει την Κασταμονήν «''παππώαν πόλιν''».
== Ιστορία ==
Η πολιτεία εν χτιζμέντζα σα ρίζας είνος ραχί. Σ' αβούτον το ραχίν απάν είχεν έναν κάστρον σα βυζαντινά τα χρόναι. Πριν ασα 1923 τη χρονίας εζήναν εκαικά σα 1.800 [[Ελλάδα|Έλλενες]]. Σα 1379 τη χρονίαν η πολιτείαν επάρθεν ασ' Οθωμανόν το σουλτάνον Βαγιαζίτ Α' (Γιλντιρίμ).
== Απόθεν επαίραμε ατά ντ' εγράψαμε ==
* [http://pontosworld.com/index.php?option=com_content&task=view&id=473&Itemid=90 www.pontosworld.com] - Kastamoni - Κασταμονή - Kastamonu
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας|Κασταμονη]]
[[Κατηγορίαν:Πόντος|Κασταμονη]]
8ynnn670tjgg01z0ih8ak7lyu3jf8h1
Κατσκάρ Νταγ
0
212
37385
31011
2025-12-20T12:06:40Z
Εὐθυμένης
2777
/* Απόθεν τα πληροφορίας */
37385
wikitext
text/x-wiki
[[Εικόναν:KackarDagi fromNorth hory.jpg|thumb|Το Κατσκάρ Νταγ]]
Το '''Κατσκάρ Νταγ''' (τουρκ. ''Kaçkar Dağı'') εν τ' ασ' όλων τρανόν ραχίν σα [[Ποντιακά Παρχάραι|Ποντιακά τα Παρχάραι]] σην [[Τουρκία|Τουρκίαν]]. Ευρίεται σην επαρχίαν τη Ριζούντας κι έχ' ψήλος 3.937 μέτρα.<ref>[http://www.peakbagger.com/peak.aspx?pid=10441 peakbagger.com]</ref>
== Γεωγραφία ==
Σα νότεα δαβαίν' το ποτάμι ο [[Άκαμψης|Άκαμψης]] (Çoruh). Αβούτος εμπαίν' σο [[Μαύρον Θάλασσα|Μαύρον τη Θάλασσαν]] σην ανατολήν, σο γρούζικον την πολιτείαν το [[Βατούμι|Βατούμι]].
Το Κατσκάρ Νταγ εν 40 χμ ασό Μαύρον τη Θάλασσαν κι 70 χμ ασά σύνορα τη [[Γρουζία|Γρουζίας]] (Βατούμι). Τα τούρκικα τα [[Πόντος|ποντιακά]] τα πολιτείας [[Τραπεζούντα|Τραπεζούντα]] και [[Ριζούντα|Ριζούντα]] απέχ'νε ασό ραχίν 70 και 120 χμ.
Ασό Κατσκάρ Νταγ ολόερα εχ' σα 400 χμ ψηλορραχέας. Αούτα εν τ' ανατολικόν το κομμάτ' τη Ποντιακών τη Παρχαρίων και σα τούρκικα λέχκεται ''Doğu Karadeniz Dağları''. Τα Ποντιακά τα Παρχάραι δαβαίνε τον Πόντον σα 1000 χμ (τα ραχίατ' εφτάν'νε σα 200 χμ ση χώρας τ' απές μερέαν) κι επέμνε σο Μαύρον τη Θάλασσαν κοντά.
== Απόθεν τα πληροφορίας ==
<references />
== Τερέστεν και ==
*[[Ποντιακά Παρχάραι|Ποντιακά Παρχάραι]]
*[[Μαύρον Θάλασσα|Μαύρον Θάλασσα]]
*[[Πόντος|Πόντος]]
[[Κατηγορίαν:Ραχία|Κατσκαρ Νταγ]]
4vtoaddfplsf6h0b2i9nkcmbgguzoj0
Κερασινός
0
213
37035
37020
2025-12-16T18:14:34Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37035
wikitext
text/x-wiki
<center> '''Ημέρας Κερασινού''' </center>
<center> [[1 Κερασινού|1]] | [[2 Κερασινού|2]] | [[3 Κερασινού|3]] | [[4 Κερασινού|4]] | [[5 Κερασινού|5]] | [[6 Κερασινού|6]] | [[7 Κερασινού|7]] | [[8 Κερασινού|8]] | [[9 Κερασινού|9]] | [[10 Κερασινού|10]] | [[11 Κερασινού|11]] | [[12 Κερασινού|12]] | [[13 Κερασινού|13]] | [[14 Κερασινού|14]] | [[15 Κερασινού|15]] | [[16 Κερασινού|16]] | [[17 Κερασινού|17]] | [[18 Κερασινού|18]] | [[19 Κερασινού|19]] | [[20 Κερασινού|20]] | [[21 Κερασινού|21]] | [[22 Κερασινού|22]] | [[23 Κερασινού|23]] | [[24 Κερασινού|24]] | [[25 Κερασινού|25]] | [[26 Κερασινού|26]] | [[27 Κερασινού|27]] | [[28 Κερασινού|28]] | [[29 Κερασινού|29]] | [[30 Κερασινού|30]] </center>
----
{{ΗμερολόγιοΣεΠίνακα|6}}
[[Αρχείον:Cherry Stella444.jpg|thumb|Κεράσαι]]
Ο '''Κερασινός''' (σ' ελλενικά: ''Ιούνιος'') εν ο έκτον μήνας τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] κι εχ' 30 ημέρας.
== Τ' όνεμα ==
Σ' αβούτον τον μήναν γίνουνταν τα κεράσαι και για τ' ατό ο μήνας επαίρεν τ' όνεμαν «Κερασινός».
== Ο λαόν για τον Κερασινόν ==
Ο λαόν λεει τ' αφκά καικά τα δίστιχα για τον Κερασινόν:
:''«Τη Κερασινού ο ήλον''
:''κοκκινίει σε άμον μήλον.»''
:''«Έρθεν και ο Κερασινόν, θα γίνταν τα κεράσαι.''
:''Παιδάντ' πολλά μη τρώτε ατά, έρχουζνε απ'ν' σην ραχίαν».''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:June|Κερασινός σα Commons]]'''
* '''[[Αρχείον: Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Κερασινόν|Ο Κερασινός (Κερασινόν) σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Κερασινός]]
tl2om20h4u6bhqs7mrjqvmkdwup8ksu
Κερεκήν
0
214
31015
30588
2013-03-07T18:07:39Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 179 interwiki links, now provided by [[d:|Wikidata]] on [[d:q132]] [[M:User:Addbot/WDS|(translate me)]]
31015
wikitext
text/x-wiki
Η '''Κερεκήν''' (σ' [[Ελλενικόν γλώσσα|ελλενικά]]: ''Κυριακή'') εν το πρώτον ημέρα τ' [[Εβδομάδα|εβδομάδας]].
== Ο λαόν για την Κερεκή ==
:''«Σήμερον έν’ Κερεκή''
:''στα ολίγον κι επεκεί.»''
:''«Την Κερεκήν που δουλεύ΄,''
:''την Δευτέραν κ΄ αρτουρεύ.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Sunday|Κερεκήν σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Κυριακή|Η Κερεκήν (Κυριακή) σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Πρότυπον:Ημέρας τη εβδομάδας}}
[[Κατηγορίαν:Ημέρας τη εβδομάδας|Κερεκήν]]
ryh0vq1dna0kbmhble5sryu2bdm3h5a
Κουρόβ
0
215
34853
34021
2021-08-10T19:07:38Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.8
34853
wikitext
text/x-wiki
[[Αρχείον:KurówPoland.png|thumb|Το Κουρόβ σον χάρτεν τη Πολωνίας]]
Το '''Κουρόβ''' (σα πολωνικά: ''Kurów'', εν χωρίον σα ανατολικά τη [[Πολωνία|Πολωνίας]]. Ευρίεται απές σα πολιτείας Πουλάβι (Puławy) και το Λούμπλιν (Lublin), πέραν ασον ποταμόν Kurówka. Ο πληθυσμόν αθέ είν' ασα 2.782 τ' ανθρώπ'ς (30 τη Κερασινού 2006).
== Ιστορίαν ==
Απές σο έτος 1431 και 1442 τη χρονίαν το χωρίον επαίρ' τα δικαιώματα πολιτείας με τον νόμ τη Μαγδεβούργονος κι έντον κέντρον εμπορικόν. Ασο 1795 τη χρονίαν κι επεκεί έτον φελίν τη [[Αυστρία|Αυστρίας]]. Επεκεί ασο 1815 τη χρονίαν έντον ξαν' πολωνικόν. Ασο 1870 τη χρονίαν έντον εκεί η ''Εξέγερσην τη Καλαντάρτ''' κι επεκεί το Κουρόβ έχασεν τα δικαιώματα πολιτείας κι έντον ξαν χωρίον. Ενεπέμ'νεν χωρίον ους οσήμερον.
== Σύνδεσμοι ==
* [https://web.archive.org/web/20070218061412/http://www.kurow.lubelskie.pl/gmina.html Επίσημον σάιτ]
[[Κατηγορίαν:Χωρία|Κουρόβ]]
[[Κατηγορίαν:Πολωνία|Κουρόβ]]
qpfpdxf3wtcws6bo2glddikhporcs3z
Κούντουρος
0
216
37055
37016
2025-12-16T18:14:36Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37055
wikitext
text/x-wiki
<center> '''Ημέρας Κούντουρονος''' </center>
<center> [[1 Κούντουρονος|1]] | [[2 Κούντουρονος|2]] | [[3 Κούντουρονος|3]] | [[4 Κούντουρονος|4]] | [[5 Κούντουρονος|5]] | [[6 Κούντουρονος|6]] | [[7 Κούντουρονος|7]] | [[8 Κούντουρονος|8]] | [[9 Κούντουρονος|9]] | [[10 Κούντουρονος|10]] | [[11 Κούντουρονος|11]] | [[12 Κούντουρονος|12]] | [[13 Κούντουρονος|13]] | [[14 Κούντουρονος|14]] | [[15 Κούντουρονος|15]] | [[16 Κούντουρονος|16]] | [[17 Κούντουρονος|17]] | [[18 Κούντουρονος|18]] | [[19 Κούντουρονος|19]] | [[20 Κούντουρονος|20]] | [[21 Κούντουρονος|21]] | [[22 Κούντουρονος|22]] | [[23 Κούντουρονος|23]] | [[24 Κούντουρονος|24]] | [[25 Κούντουρονος|25]] | [[26 Κούντουρονος|26]] | [[27 Κούντουρονος|27]] | [[28 Κούντουρονος|28]] | ''[[29 Κούντουρονος|29]]'' </center>
----
{{ΗμερολόγιοΣεΠίνακα|2}}
Ο '''Κούντουρος''' άμαν και λέγν'ατόν και '''''Κούντουρον''''' (σ' ελλενικά: ''Φεβρουάριος'') εν ο δεύτερον μήνας τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]]. Τ' όνεμαν ατ' εβγών' ασον μικρόν τ' αριθμόν τ' ημερίων αθέ (κοντόν ουρά). Εν ασ' ολτς μικρόν μήνας κι εχ' 28 ημέρας άμα όντες η χρονίαν εν δίσεκτον έχ' 29.
Σ' αρχαίον το [[Ρωμαϊκόν Αυτοκρατορίαν|ρωμαϊκόν]] ημερολόγιον έτον ο τελευταίον ο μήνας. Για τ' ατό σα δίσεκτα χρονίας επαίρνεν τα καινούρ' ημέρας, άμον ντ' επαίρν' ατέν σ' οσημερνόν Γρηγοριανόν ημερολόγιον.
== Ο λαόν για τον Κούντουρον ==
:''«Ο Κούντουρον, ο κούτσουρον, ο ουραδοκομμένον''
:''Εξέβεν και ο Καλαντάρτς σον Κούντουρον θα πάμε,''
:''Αρνί μ' αν 'κ θα έρχεσαι, ασό μεράκ' θα χάμαι.»''
:''«Ο Κούντουρον έν’ λειψός,''
:[[Αρχείον:Patrologia Graeca Vol. 139.pdf|μικρογραφία]]''ποδεδίζω το Χριστός.»''
:''«Ο κούντουρον εν λειφτός εν ολίγον πα ζαντός,''
:''κούντουρον κι γυναικίζνε για να μην ατοίν σερεύνε,''
:''και οι τσεχέλ κι σουμαδεύκουν''
:''τα σουμάδε να μην κλώσκουν.»''
:''«Ο Κούντουρον ο κούτσουρο''
:''και ο πασαλοκάφτες.»''
:''«Ο Κούντουρον φέρ' το κρύον''
:''νασάν 'κείνον π' έχ' το βίο.»''
:''«Έρθεν και ο Κούντουρον''
:''Θα τρως πολλά βούτουρον.»''
:''«Εδέβεν πλάν' ο Κούντουρον, τη Μάρτ' τ' ωτία 'φάνθαν''
:''τα χιόνιε όλα 'λύγανε κι ας σα ραχία 'χάθαν.»''
:''«Η καλή μ' παρχαρεύκεται Κουντούρ' σα Λιβαδία''
:''με τα κρενία κατηβάζ' το γάλα σα χωρία.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:February|Κούντουρος σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el:wikt:Φεβρουάριος|Ο Κούντουρος (Φεβρουάριος) σ' ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Κουντουρος]]
dds3wncmkzi9u9l6jqwqt37h9hw6m0p
Κράτος
0
217
35636
34110
2024-03-16T07:47:16Z
Thanou 69-72
10610
/* Ευρώπην */
35636
wikitext
text/x-wiki
Το '''κράτος''' είν' οργανωμένον πολιτικόν οντότηταν, σε συγκεκριμένον [[Γεωγραφίαν|γεωγραφικόν]] περιοχήν απάν (χώρα). Έχ' κυβέρνησην και νόμ'ς, ντο κανονίζνε την λειτουργείαν ατ'. Η πολιτείαν ντο εν πολιτικόν και διοικητικόν κέντρον ατούν λέχκεται [[πρωτεύουσα]].<br />
Σ' αφκά καικά τον κατάλογον ευρίουνταν τ' ανεξάρτητα τα ντεβλέται ανά ήπειρον.
== Ασίαν ==
Τα κράται τ' [[Ασίαν|Ασίας]]:
* [[Εικόναν:Flag of the People's Republic of China.svg|20px]] [[Κίνα]]
* [[Εικόναν:Flag of Turkey.svg|20px]] [[Τουρκία]]
== Ευρώπην ==
Τα κράται τ' [[Ευρώπην|Ευρώπης]]:
* [[Εικόναν:Flag of Albania.svg|Αλβανία|20px]] [[Αλβανία]]
* [[Εικόναν:Flag of Andorra.svg|Ανδόρρα|20px]] [[Ανδόρρα]]
* [[Εικόναν:Flag of Austria.svg|20px]] [[Αυστρία]]
* [[Εικόναν:Flag of Belgium.svg|20px]] [[Βέλγιον]]
* [[Εικόναν:Flag of Bosnia and Herzegovina.svg|20px]] [[Βοσνία και Ερζεγοβίνη]]
* [[Εικόναν:Flag of Bulgaria.svg|20px]] [[Βουλγαρία]]
* [[Εικόναν:Flag of France.svg|20px]] [[Γαλλία]]
* [[Εικόναν:Flag of Germany.svg|20px]] [[Γερμανία]]
* [[Εικόναν:Flag of Georgia.svg|20px]] [[Γρουζία]]
* [[Εικόναν:Flag of Denmark.svg|20px]] [[Δανία]]
* [[Εικόναν:Flag of Switzerland.svg|20px]] [[Ελβετία]]
* [[Εικόναν:Flag of Greece.svg|20px]] [[Ελλάδα]]
* [[Εικόναν:Flag of Estonia.svg|20px]] [[Εσθονία]]
* [[Εικόναν:Flag of Ireland.svg|20px]] [[Ιρλανδία]]
* [[Εικόναν:Flag of Iceland.svg|20px]] [[Ισλανδία]]
* [[Εικόναν:Flag of Spain.svg|20px]] [[Ισπανία]]
* [[Εικόναν:Flag of Italy.svg|20px]] [[Ιταλία]]
* [[Εικόναν:Flag of Croatia.svg|20px]] [[Κροατία]]
* [[Εικόναν:Flag of Latvia.svg|20px]] [[Λεττονία]]
* [[Εικόναν:Flag of Liechtenstein.svg|20px]] [[Λιχτενστάιν]]
* [[Εικόναν:Flag of Lithuania.svg|20px]] [[Λιθουανία]]
* [[Εικόναν:Flag of Moldova.svg|20px]] [[Μολδαβία]]
* [[Εικόναν:Flag of Norway.svg|20px]] [[Νορβηγία]]
* [[Εικόναν:Flag of the Netherlands.svg|20px]] [[Ολλανδία]]
* [[Εικόναν:Flag of Hungary.svg|20px]] [[Ουγγαρία]]
* [[Εικόναν:Flag of Ukraine.svg|20px]] [[Ουκρανία]]
* [[Εικόναν:Flag of Portugal.svg|20px]] [[Πορτογαλία]]
* [[Εικόναν:Flag of Romania.svg|20px]] [[Ρουμανία]]
* [[Εικόναν:Flag of Serbia.svg|20px]] [[Σερβία]]
* [[Εικόναν:Flag of North Macedonia.svg|20px]] [[Βόρεια Μακεδονία|Σκόπια]]
* [[Εικόναν:Flag of Slovakia.svg|20px]] [[Σλοβακία]]
* [[Εικόναν:Flag of Slovenia.svg|20px]] [[Σλοβενία]]
* [[Εικόναν:Flag of Sweden.svg|20px]] [[Σουηδία]]
* [[Εικόναν:Flag of the Czech Republic.svg|20px]] [[Τσεχία]]
== Ωκεανίαν ==
Τα κράται τ' [[Ωκεανίαν|Ωκεανίας]]:
* [[Εικόναν:Flag of Australia.svg|20px]] [[Αυστραλία]]
* [[Εικόναν:Flag of New Zealand.svg|20px]] [[Νέα Ζηλανδία]]
[[Κατηγορίαν:Κράτη|*]]
8kpawzd93ffkwe1c0ay283m2f5dnm1q
Κροατία
0
218
36320
35236
2025-10-11T17:34:23Z
Antimuonium
10707
Tag correction
36320
wikitext
text/x-wiki
{{Πληροφορίας χώρας|
|εθνικόν_όνεμαν= <big>Republika Hrvatska</big>
|εθνικόν όνεμαν σα ποντιακά = Κροατικόν Δημοκρατία
|κοινό_όνομα= Ελλάδα
|σημαία = Flag of Croatia.svg
|άρθρον σημαίας = Σημαία τη Κροατίας
|σύμβολον =Coat_of_arms_of_Croatia.svg
|άρθρον συμβολατί = Σύμβολον τη Κροατίας
|χάρτες= LocationCroatia.png
|εθνικόν_σύνθημαν=
|εθνικόν_ύμνος= [[Ljepa naša Domovino]]
|επίσημα_γλώσσας= [[Κροατικόν γλώσσα|Κροατικόν]]
|πρωτεύουσα και ασ' όλον τρανόν πολιτεία = [[Ζάγκρεμπ]] [[Αρχείον:Coat of arms of Zagreb.svg|20px|]]
|συντεταγμένας_πρωτεύουσας=
|πολίτευμαν= [[Δημοκρατία]]
|τίτλοι_τ' ηγετίων = [[Πρόεδρος]]<br />[[Πρωθυπουργός]] |
|ονόματα_τ' ηγετίων = [[Στίπε Μέσιτς]] <br /> [[Ίβο Σάναντερ]]
|θέση_έκτασης= 124
|έκταση= 56.548
|ποσοστόν_νερού= %0,01
|εκτίμηση_πληθυσμού= 4.496.869
|χρονία_εκτίμησης_πληθυσμού= Χορτοθέρτς 2004
|πληθυσμός= 4.437.460
|θέση_πληθυσμού= 117
|χρονία_απογραφής_πληθυσμού= 2001
|πυκνότητα_πληθυσμού= 83
|θέση_πυκνότητας_πληθυσμού= 116
|τύπος_κυριαρχίας= [[Ανεξαρτησία]]
|γεγονός_κυριαρχίας= - Κηρύχθηκε<br /> - Αναγνωρίστηκε<br />
|ημερομηνίες_κυριαρχίας= <br /> [[25 Μαρτίου]], [[1821]] <br /> [[1828]] <br />
|παράδας = [[Κούνα]]
|κωδικός_παράδων = HRK
|ώρα_ζώνες= CET
|διαφορά_UTC= +1
|θερινόν_UTC= CEST
|θερινόν_διαφορά_UTC= +2
|top_level_domain= .hr
|κωδικός_τηλεφωνατί= 385
|σημειώσεις=
}}
Η '''Κροατική Δημοκρατία''', (στα κροατικά: ''Hrvatska'', το επίσημο όνομά της είναι ''Republika Hrvatska'') είναι [[κράτος]] της νοτιο-ανατολικής [[Ευρώπην|Ευρώπης]]. Πρωτεύουσά της είναι το [[Ζάγκρεμπ]] και πρόεδρός της είναι ο [[Στίπε Μέσιτς]]. Η χώρα έχει πληθυσμό 4.496.869.
== Γεωγραφία ==
Η Κροατία ευρίσκεται στην [[Αδριατικόν θάλασσα|Αδριατική θάλασσα]], ανάμεσα στη [[Σλοβενία]], στην [[Ουγγαρία]], στη [[Σερβία]], στη [[Βοσνία και Ερζεγοβίνη|Βοσνία- Ερζεγοβίνη]] και στο [[Μαυροβούνιο]]. Άλλες μεγάλες πόλεις της είναι η [[Πούλα]] και η [[Ριέκα]].
== Ιστορία ==
=== Παλαιά Ιστορία ===
Τα πρώτα οικισμούς τη Δαλματίας εποίκαν ατά Ίωνες [[Ελλάδα|Έλλενες]] σο 12ο/11ο αιώναν π.Χ. (λ.χ. τ' οσημερνόν [[Σπλιτ]] είχεν τόνεμα «Ασπάλαθος»). Σα 34 π.Χ. τη χρονίαν και με την αφεντίαν τ' [[Αύγουστος|Αύγουστονος]] έντον κομμάτ' τη [[Ρωμαϊκόν αυτοκρατορίαν|Ρωμαϊκού τη αυτοκρατορίας]] κι επεκεί τη [[Ρωμανίαν|Βυζαντινού τη Αυτοκρατορίας]].<br />
Σον 7ον αιώναν ο Βασιλέας τη Ρωμαίων [[Ηράκλειος]] έφερε τοι Κροατάντ σ' οσημερνόν τη πατρίδαν ατεινών για να εφτάνε γιαρτίμ τοι Ρωμαίοις σον πόλεμον κατά τ' Αβαράντ.
=== Σύγχρονη Ιστορία ===
Σα 1918 τη χρονιά οι Κροατάντ ένταν ένα με τοι Σερβάντ και τοι Σλοβενάντ κι εποίκαν εντάμαν κενούρεον πολυεθνικόν ντεβλέτι, το «Βασίλειον τη Σερβίων, τη Κροατίων και τη Σλοβενίων». Ατό το κράτος επαίρεν σα 1929 τη χρονίαν τ' όνεμα «Γιουγκοσλαβία». Μετά τα 1945 έντον κομμουνιστικόν χώραν και η Κροατίαν έντον μιαν ασα Δημοκρατίας ατ'ς. Σα 1991 τη χρονίαν ερχίνεσε τρανόν πόλεμος ανεξαρτησίας (Μαρτς 1991 – 7 Αύγουστονος 1995). Η Γιουγκοσλαβίαν εταγουτεύτεν κι επεκεί οι Κροατάντ εποίκαν τ' ατεινών τ' ανεξάρτητον κράτος, το «Κροατικόν τη Δημοκρατίαν».
== Σύνδεσμοι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Croatia|Η Κροατίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Κροατία|Η Κροατίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Croatia|Χάρτες ασην Κροατίαν]]'''
* [https://web.archive.org/web/20090420021935/http://de.mfa.hr/?mh=172&mv=991 Το επίσημον ο ιστοτόπον τη κροατικού Υπουργεί σα εξ μερέαν]
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Κροατία]]
[[Κατηγορίαν:Ευρώπη|Κροατία]]
[[Κατηγορίαν:Βαλκάνια|Κροατία]]
[[Κατηγορίαν:Κροατία| ]]
o0uqade9rynoema8fejfhvajbfaisee
Κυβέρνηση Κωνσταντίνονος Α. Καραμανλή 2007
0
219
36194
36096
2025-03-26T15:59:16Z
79.107.89.117
36194
wikitext
text/x-wiki
Τ' οσημερνόν την '''κυβέρνησην τ' [[Ελλάδα|Ελλάδας]]''' εσχημάτισεν ατέναν ο πρωθυπουργός [[Κωνσταντίνος Καραμανλής|Κωνσταντίνος Καραμανλής]], πρόεδρος τη [[Νέα Δημοκρατίαν|Νέας Δημοκρατίας]] τσίγκι ενίκεσεν τα βουλευτικά τα εκλογάς τη [[16 Σταυρί|16 Σταυρί]] [[2007|2007]]. Επαίρεν ατότες έναν ποσοστόν 41,84% και 152 έδρας τη βουλής. Ο Πρόεδρος τη Δημοκρατίας, ο [[Κάρολος Παπούλιας|Κάρολος Παπούλιας]] έδωκενατον την εντολήν νεφτάει κυβέρνησην σα 17 τη Σταυρί κι εποίκεν όρκον σα 19 τη Σταυρί, με το καινούρεον την κυβέρνησήνατ εντάμαν.
== Σύνθεση τη Κυβέρνησης ==
Τ' οσημερνόν η Κυβέρνηση τ' Ελλάδα εν:
*Πρωθυπουργός [[Κωνσταντίνος Καραμανλής|Κώστας Καραμανλής]]
* Υπουργείον απές μερέαν
** Υπουργός Προκόπης Παυλόπουλος
** Υφυπουργός για τη Δημόσιαν την Τάξην Παναγιώτης Χηνοφώτης
** Υφυπουργός Αθανάσιος Νάκος
** Υφυπουργός Χρήστος Ζώης
* Υπουργείον Οικονομίας και Οικονομικών
** Υπουργός Γιώργος Αλογοσκούφης
** Υφυπουργός Γιάννης Παπαθανασίου
** Υφυπουργός Αντώνιος Μπέζας
** Υφυπουργός Νίκος Λέγκας
* Υπουργείον σα εξ μερέαν
** Υπουργός σα εξ μερέαν [[Ντόρα Μπακογιάννη|Ντόρα Μπακογιάννη]]
** Υφυπουργός Γιάννης Βαληνάκης
** Υφυπουργός Θεόδωρος Κασσίμης
** Υφυπουργός Πέτρος Δούκας
* Υπουργείον τ' Εθνικού τ' Άμυνας]]
** Υπουργός Ευάγγελος Μεϊμαράκης
** Υφυπουργός Κωνσταντίνος Τασούλας
** Υφυπουργός Γιάννης Πλακιωτάκης
* Υπουργείον Ανάπτυξης
** Υπουργός Χρήστος Φώλιας
** Υφυπουργός Γιώργος Βλάχος
** Υφυπουργός Σταύρος Καλαφάτης
* Υπουργείον Περιβάλλοντος, Χωροταξίας και τη Δημοσίων τ' Εργίων]]
** Υπουργός Γεώργιος Σουφλιάς
** Υφυπουργός Σταύρος Καλογιάννης
** Υφυπουργός Θεμιστοκλής Ξανθόπουλος
* Υπουργείον τ' Εθνικού τη Παιδείας και τη Θρησκευματίων
** Υπουργός Ευριπίδης Στυλιανίδης
** Υφυπουργός Ανδρέας Λυκουρέτζος
** Υφυπουργός Σπύρος Ταλιαδούρος
* Υπουργείον Απασχόλησης και τη Κοινωνικού τη Προστασίας
** Υπουργός Φάνη Πάλλη-Πετραλιά (19 Σταυρί ους 15 Χριστουγενναρί Βασίλης Μαγγίνας)
** Υφυπουργός Σοφία Καλαντζάκου
* Υπουργείον Υγείας και τη Κοινωνικού τη Αλληλεγγύης
** Υπουργός Δημήτρης Αβραμόπουλος
** Υφυπουργός Γιώργος Παπαγεωργίου
** Υφυπουργός Γιώργος Κωνσταντόπουλος
* Υπουργείον Αγροτικού Ανάπτυξης και Φαϊων
** Υπουργός Αλέξανδρος Κοντός
** Υφυπουργός Κώστας Κιλτίδης
* Υπουργείον Δικαιοσύνης
** Υπουργός Σωτήρης Χατζηγάκης
* Υπουργείον Πολιτισμού
** Υπουργός Μιχάλης Λιάπης
** Υφυπουργός (θέματα Αθλητισμού)
* Υπουργείον Μεταφορών και Επικοινωνιών
** Υπουργός Κώστας Χατζηδάκης
* Υπουργείον Εμπορικής Ναυτιλίας και Νησιωτικής Πολιτικής
** Υπουργός Γιώργος Βουλγαράκης
* Υπουργείον τη Τουριστικού τ' Ανάπτυξης
** Υπουργός Άρης Σπηλιωτόπουλος
* Υπουργείον Μακεδονίας - Θράκης
** Υπουργός Μαργαρίτης Τζίμας
** Υπουργός Επικρατείας και Κυβερνητικόν Εκπρόσωπος Θόδωρος Ρουσόπουλος
== Συνδέσμ ==
* [https://web.archive.org/web/20090219201435/http://www.ggk.gr/goverments.php?ord=num Κατάλογος όλων των ελληνικών κυβερνήσεων από το 1909 από τη Γενική Γραμματεία της Κυβέρνησης]
* [https://web.archive.org/web/20061007125609/http://www.primeminister.gr/gr/government.asp Η Κυβέρνηση]
[[Κατηγορίαν:Πολιτικήν|Κυβερνηση 2007]]
1ktv27eitm8gcwsfwq7s8ows6fx6y3w
Κωνσταντίνος Καραμανλής
0
220
35350
34855
2023-02-23T20:05:38Z
91.140.27.48
35350
wikitext
text/x-wiki
{| border=1 cellpadding=4 cellspacing=0 class="toccolours" style="float: right; width: 250px; clear: both; margin: 0.5em 0 1em 1em; border-style: solid; border:1px solid #7f7f7f; border-right-width: 2px; border-bottom-width: 2px; border-collapse: collapse; font-size: 100%;"
|+<big>'''Κωνσταντίνος Α. Καραμανλής'''</big>
|-
| style="background:lightsteelblue" align="center" colspan="2" | [[Αρχείον:Kostas Karamanlis 2009 (cropped).jpg|359x359εσ]]
|-
|'''Δημόσιον λειτούργημαν:'''
|Πρωθυπουργόν τη Ελλάδας
|-
|'''Εγεννέθεν:'''
|[[14 Σταυρί|14 τη Σταυρίτε]], 1956
|-
|'''Εγεννέθεν σην:'''
|[[Αθήνα|Αθήναν]] [[Εικόναν:Flag of Greece.svg|20px]]
|-
|'''Πολιτικόν Κόμμαν:'''
|Νέα Δημοκρατίαν
|}
Ο '''Κωνσταντίνος τη Αλέξανδρονος Καραμανλής''' (''Κώστας Καραμανλής'', εγεννέθεν σα [[14 Σταυρί|14 τη Σταυρίτε]] 1956) εν παλαιόν [[Πρωθυπουργόν]] τ' [[Ελλάδα|Ελλάδας]] (2004-2009). Σα 1997 τη χρονίαν εψήφσαν ατόν πρόεδρον τη [[Νέα Δημοκρατία|Νέας Δημοκρατίας]], υστερνά ασή μιαν προεδρικήν εκλογήν τη Μιλτιάδη Έβερτ. Σα [[7 Μαρτί|7 τη Μαρτ]] 2004 εξέβεν Πρωθυπουργόν. Σα [[16 Σταυρί|16 τη Σταυρίτε]] 2007 εψήφσαν ατόν ξαν Πρωθυπουργόν.
Ο Κωνσταντίνος Καραμανλής εν ασ' ολτς μικρόν ασ' εγένονταν πρωθυπουργοί τ' Ελλάδας<!-- κ' ο μαναχόν (με τον [[]]) τ' εγεννέθεν υστερνά ασόν Β' Παγκόσμιον Πόλεμον-->. Σα 1998 τη χρονίαν υπάντρεψεν κι εγυναίκ'σεν τη Νατάσσαν τη Παζαΐτη. Εποίκαν χάταλα δίδυμα σα 2003 τη χρονίαν, τ' Αλέξανδρον και τ' Αλίκην.
== Συνδέσμ ==
* [http://www.primeminister.gr/index.php?option=content&task=view&id=1000 Βιογραφικό σημείωμα στον επίσημο δικτυακό τόπο του Πρωθυπουργού] (ελλ)
* [https://web.archive.org/web/20080515150042/http://www.parliament.gr/synthesh/mp.asp?MPID=605 Σελίδα στον δικτυακό τόπο της Βουλής] (ελλ)
* [http://www.nd.gr/index.php?option=com_content&task=view&id=31&Itemid=47 Νέα Δημοκρατία - ο Πρόεδρος] (ελλ)
[[Κατηγορίαν:Πολιτικός (Ελλάδα)|Καραμανλης, Κωνσταντινος]]
n65rxto9g1tpn3koydi104dm135ndlx
Κότσαρι
0
221
34930
34856
2021-09-27T16:37:34Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.8.1
34930
wikitext
text/x-wiki
Το '''κότσαρι''' εν πολλά γνωστόν χορόν τη [[Πόντος|Πόντονος]]. Είν' αληγορτόν κι εχ' κεφ'. Ο ρυθμόν τη [[Μουσικήν|μουσικής]] ατ' εχ' απλόν μορφήν ους δίσημον (2/4), άμον ντ' έχν' ατόν κι άλλα ποντιακά χορόντας. Σα παλαιά τα χρόναι το κότσαρι το χορεύανε τ' αγούρτς μαναχόν.
== Ιστορία ==
Αβούτον τον χορόν εχόρευαν ατόν σ' ανατολήν τη Πόντονος: σο [[Καρς|Καρς]], σην [[Αργυρούπολη|Αργυρούπολην]], σο [[Παϊπούρτ|Παϊπούρτ]] και σον [[Καύκασος|Καύκασον]]. Έτον γνωστός ακόμαν και σην περιοχήν τη [[Ματσούκα|Ματσούκας]].
== Σύνδεσμοι ==
*[https://web.archive.org/web/20070130102059/http://www.see.ed.ac.uk/~s0239622/Library/Kotsari_el.htm Πληροφορίας και ανάλυση]
*Κότσαρι (μουσική) - [https://web.archive.org/web/20070929150649/http://www.scimitarmusic.com/pontos/grigoris.mp3 Ποντιακόν], [https://web.archive.org/web/20070630092123/http://hem.bredband.net/b218823/kochari.mp3 αρμενικόν], [https://web.archive.org/web/20070809163753/http://www.qeenatha.com/music/Assyrian%20Folk%20Dance%20-%201961/Assyrian%20Folk%20Dances%20-%2013%20-%20Kochari.mp3 συριακόν], [https://web.archive.org/web/20070927000012/http://www.artvin.gov.tr/h-ezgi/Akordiyon/kocari.MP3 τουρκικόν]
*Κότσαρι (χορός) - [https://web.archive.org/web/20121016041345/http://www.pontian.info/dance/kotsari.htm Ποντιακόν εκδοχή], [http://www.youtube.com/watch?v=juUnB1ex4Jg αρμενικόν εκδοχή]
[[Κατηγορίαν:Χορός|Κοτσαρι]]
[[Κατηγορίαν:Μουσική|Κοτσαρι]]
ivtst1q37tp984xda5o1z35pqqcqy4n
Κώστας Τοπχαράς
0
222
8441
8440
2009-09-08T11:31:45Z
ZaDiak
10
8441
wikitext
text/x-wiki
Ο '''Κώστας Τοπχαράς''' (το πλήρες όνεμαν τοποίου εν Γιάγκος Λάμπου Κανονίδης - Τοπχαράς) έτον
γνωστός ποιητής-σατιρικός ([[1889]] - [[1938]]) υπό τα ψευδώνυμα Δάμων Εριστέας, Ανατολίτης, Μαχαράνον.
==Βιογραφικό==
Ο Τοπχαράς εγεννέθεν το 1889. Έτον ξάδεργος τ' γνωστού θεατρικού Βασίλη Κανονίδη. Έγνε γνωστός επειδή δούλευεν σην πιο τρανήν εφημερίδαν τς [[ΣΣΣΔ]] την "Κομυνιςτις" η οποία έτον ο πιο τρανός ελληνοσοβιετ' εκδοτικός οικός με έδρα τ' Ροστόβ. Σον "Κομυνιςτι" έτον από τ' βασικότερα στελέχη ση δεκαετίαν τ' 1930. Εχ' γράψ' πολλά έργαν τα οποία εν επηρεασμένα απ' τον σοσιαλιζμόν. Εχ' επίσης γραψ' κ' τη "Γραμματική τς Πονταίικης διαλέκτου". Επέθανεν το 1938.
==Έργα==
Γνωστά τ' έργαν εν:
*«Ματσουκάτκον Χαρά», κομοδία ςε διο μέρι, φωνητική, μονοτονικό, Τραπεζούς 1910.
*«Το Σιμβύλιο Σινεδριάζι», κομοδία μονόπρακτη.
*«Το Γράμα τυ Παπά», δράμα, φωνητική.
*«Οτςκο», κομοδία μονόπρακτι.
*«Τα Μαΐας», «Ο Μικταρτς τι Χοριεμυν», «Καςκαμα Μυρδυλιζματα» μονόπρακτα.
*«Ι Επαναστασι στι Γλοσα. Ι Κιδια τις Καθαρεβυςας», οπερέτα ςε τρις πρακςις Νοβοροςιςκ 1927.
==Συνδέζμαι==
*[[oldwikisource:Γραμματικι Τοπχαρα|Γραμματική της Ποντιακής διαλέκτου]]
[[Κατηγορίαν:Συγγραφέοι]]
tuk2urmdail1iy67jwby7ablokkqf9d
Λιχτενστάιν
0
223
35938
32408
2024-10-26T05:26:44Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35938
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Λιχτενστάιν'''</big></big><br/>''Fürstentum Liechtenstein''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Liechtenstein.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Liechtenstein.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Location Liechtenstein Europe.png|300px]]
|}
Το '''Λιχτενστάιν''' (σα γερμανικά: ''Fürstentum Liechtenstein'') είναι τζιπ μικρόν [[κράτος]] σο κέντρον τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Βαντούζ]] και ο πρωθυπουργόν ατ' εν ο [[Ότμαρ Χάσλερ]]. Ο πληθυσμόν τη χώρας είν' ασα 32.528 τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Το Λιχτενστάιν ευρίεται απές σην [[Αυστρία|Αυστρίαν]] και την [[Ελβετία|Ελβετίαν]]. Ευρίεται σα Άλπεις απάν.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Liechtenstein|Το Λιχτενστάιν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Λιχτενστάιν|Το Λιχτενστάιν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Liechtenstein|Χάρτες ασο Λιχτενστάιν]]'''
* [http://www.liechtenstein.li/ Το επίσημον ο ιστοτόπον τη Λιχτενστάιν]
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Λιχτενστάιν]]
[[Κατηγορίαν:Ευρώπη|Λιχτενστάιν]]
[[Κατηγορίαν:Λιχτενστάιν| ]]
8fquvkq5319a18u9fba4ri15ihvckbv
Λουξεμβούργο
0
224
35844
34207
2024-10-26T05:21:03Z
Minorax
7522
35844
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Λουξεμβούργο'''</big></big><br/>''Groussherzogtum Lëtzebuerg''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Luxembourg.svg|125px]]
| align="center" width="140px" |
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Luxembourg.svg|300px]]
|}
Το '''Λουξεμβούργον''' (σα λουξεμβουργιανά ''Groussherzogtum Lëtzebuerg'') εν [[κράτος]] σην δυτικήν [[Ευρώπην]]. Πρωτεύουσαν ατ'ς εν το [[Λουξεμβούργο (πόλη)|Λουξεμβούργον]] και ο πρωθυπουργόν ατ'ς εν ο [[Σαβιέ Μπετέλ]]. Ο πληθυσμόν τη χώρας είν' ασα 480.222 (2007) τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Το Λουξεμβουργόν ευρίεται απεσκέσ' ση [[Γαλλία|Γαλλίαν]], ση [[Γερμανία|Γερμανίαν]], και σο [[Βέλγιον]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Luxembourg|Το Λουξεμβούργον σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Λουξεμβούργο|Το Λουξεμβούργον σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Luxembourg|Χάρτες ασο Λουξεμβούργον]]'''
* [http://www.gouvernement.lu/ Το επίσημον ο ιστοτόπον τη κυβέρνησης τη λουξεμβούργονος]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Λουξεμβούργον]]
[[Κατηγορίαν:Ευρώπη|Λουξεμβούργον]]
[[Κατηγορίαν:Λουξεμβούργο| ]]
ns2j5l4dp3bc8ji672rfk2qiqvwxjee
Λουτροχώρ
0
225
37384
37218
2025-12-20T12:06:24Z
Εὐθυμένης
2777
/* Αναφοράντας */
37384
wikitext
text/x-wiki
{| style="float:right; clear: right; width: 20em; font-size: 85%; text-align: left; border: 1px solid #aaaaaa; border-right-width: 2px; border-bottom-width: 2px; background-color: #f9f9f9; margin-bottom: 0.5em; margin-left: 1em;" cellspacing="4" cellpadding="1"
|-
{| class="infobox" cellpadding="3" cellspacing="1" style="float: right; width: 280px; font-size: 90%; background-color: lightlightgrey; margin-left: 1em;"
|-
! colspan="2" class="hiddenStructureLoutrochori" style="font-size: 110%; background-color: lightsteelblue;" | <span style="float: left;">[[Εικόναν:Flag of Greece.svg|40px|Ελλάδα]]</span><span style="float:right;">[[Εικόναν:Flag of Greek Macedonia.svg|45px|Μακεδονία]]</span><center><big><big>'''Λουτροχώρ'''</big><br>(el: Λουτροχώρι)</big></center>
|-
| colspan="2" |
{| style="text-align: center; margin: 0 auto; background: none;"
|-
| style="border: 0; vertical-align: middle;" | <span style="border: 1px solid #bbbbbb; display: table-cell;">[[Εικόναν:Agii_Pantes_Loutrochori.jpg|250px|center]]</span>
|-
| colspan="2" style="border-top: solid 1px #ccd2d9; padding: 0.4em 1em 0.4em 0; vertical-align: top; text-align: center; font-size: 85%;" | Η τρανέσα εκκλησία τη χωρή, Άγιοι Πάντες.
|}
|-
| colspan="2" style="border-bottom: 5px solid lightsteelblue; font-size: 10%;" |
|-
| '''[[Χώραν|Κράτος]]''': || '''<big>[[Ελλάδα|Ελλάδαν]]</big>'''
|-
| [[Γεωγραφικά τοπία τη Ελλάδας|Γεωγρ. τοπία]]: || [[Μακεδονία]]
|-
| [[Περιφέρειας τη Ελλάδας|Περιφέρειαν]]: || [[Κεντρικόν Μακεδονία]]
|-
| [[Νομία τη Ελλάδας|Νομός]]: || [[Νομός Πέλλας|Πέλλας]]
|-
| [[Πληθυσμός|Πληθυσμόν (ανθρώπς)]]: || 466 {{#if:
2001
|<small>(2001<ref name="Greek-01"><small>Απογραφή 2001. Εθνική Στατιστική Υπηρεσία Ελλάδος (ΕΣΥΕ), ([http://web.archive.org/web/20090318065626/http://www.statistics.gr/gr_tables/S1101_SAP_1_TB_DC_01_03_Y.pdf PF GR-591109 02:Λουτροχώρι, 466 κάτοικοι] 875 KB)</small></ref>)</small>
}}
|-
| [[Έκτασην|Έκτασην (τρανόν)]]: ''|| 7,506 [[Τετραγωνικόν χιλιόμετρον|χμ²]]
|- class="hiddenStructure118" style="vertical-align: top;"
| [[Πυκνότητα τη πληθυσμού|Πυκνότητα πληθυσμού]]: || 62 κάτοικοι/χμ²
|-
| [[Υψόμετρο|Υψόμετρον]] <small>(Μέσο)</small>: || 90 [[M|μ.]]
|-
| [[Γεωγραφικές συντεταγμένες|Γεωγρ. συντ.]]: || <small> </small><br />40°43'23.02" Β. (Πλάτος)<br />
22°'06'33.01" A. (Μήκος)
|-
| [[Κατάλογον τη ταχυδρομικών κωδίκων τη Ελλάδας|Κωδικός ταχυδρομί]]: || 585 00
|-
| [[Τηλεφωνί κωδικοί τη Ελλάδας|Κωδικός τηλεφωνατί]]: || (0030) 23810 - 7****
|-
| [[Ελλενικά αμαξί ταπέλας|Αμαξί ταπέλας]] : || '''EE'''
|-
| [[Τοπικόν διοικητικόν νούμερον|Τ.Δ.Ν. (LAU)]]: || GR-591109 02<ref name="Greek-01"/>
|-
| Διεύθυνση Δήμονος : || <small>Εθνικής Αντίστασης 20 </small> <br /> <small>(58500 Δήμος [[Σκύδρα|Σκύδρας]])</small>
|-
| Δικτυακός τόπος: || <small>[http://dim-loutroch.pel.sch.gr/ Δημοτ. σχολ. Λουτροχωρί]</small><br /><small>[http://nip-loutroch.pel.sch.gr/ Νηπιαγωγείο Λουτροχωρί]</small>
|}
|-
|}
Το '''Λουτροχώρ''' (σα [[Ελλενικόν γλώσσα|ελλενικά]]: ''Λουτροχώρι'', ''Λουτροχώριov'' 'κι ''Μπάνια'', οξουκά: ''Loutrochori'') έν [[Ελλάδα|ελλενικόν]] [[χωρίον]] ντ' ευρίεται σον [[Δήμος Σκύδρας|Δήμoν Σκύδρας]], σην αφκά μερέα τη [[Νομός Πέλλας|νομού Πέλλας]] σο [[Κεντρικόν Μακεδονία|Κεντρικόν]] κομμάτ τη [[Μακεδονία|Μακεδονίας]].
== Γεωγραφίαν ==
Εν χτισμένον σουμά σο ρασήν Kάμπερ, σο συνόρ τη νομού [[Νομός Πέλλας|Πέλλας]] με ατόν τη [[Νομός Ημαθίας|Ημαθίας]] και ευρίεται σε μέσον υψόμετρον σα 90 μέτρα<ref name="Dimos Skidras-01"><small>Συγκριτικά στοιχεία απογραφών, ετών 1951-2001, του Δήμου Σκύδρας.</small></ref> απάν ασή θάλασσαν.
=== Κλίμαν ===
Το τοπικό [[κλίμα|κλίμαν]] εν μεσογειακόν [[εύκρατο κλίμα|εύκρατο κλίμαν]], με ελαφρά, βροςχερά χειμωγκόνας και τσιπ ξεράν 'κ χασεφτάν Θέρους.
{| class="wikitable" style="font-size:80%;width:64%;border:0px;text-align:center;line-height:120%;"
! style="background: #99CCCC; color: #000080" height="17" |Μήνας
! style="background: #99CCCC; color:#000080;" | Χρονία
! style="background: #99CCCC; color:#000080;" | [[Καλαντάρτς|Καλ]]
! style="background: #99CCCC; color:#000080;" | [[Κούντουρος|Κου]]
! style="background: #99CCCC; color:#000080;" | [[Μαρτς|Μαρ]]
! style="background: #99CCCC; color:#000080;" | [[Απρίλτς|Απρ]]
! style="background: #99CCCC; color:#000080;" | [[Καλομηνάς|Καλ]]
! style="background: #99CCCC; color:#000080;" | [[Κερασινός|Κερ]]
! style="background: #99CCCC; color:#000080;" | [[Χορτοθέρτς|Χορ]]
! style="background: #99CCCC; color:#000080;" | [[Αλωνάρτς|Αλω]]
! style="background: #99CCCC; color:#000080;" | [[Σταυρίτες|Στα]]
! style="background: #99CCCC; color:#000080;" | [[Τρυγομηνάς|Τρυ]]
! style="background: #99CCCC; color:#000080;" | [[Αεργίτες|Αερ]]
! style="background: #99CCCC; color:#000080;" | [[Χριστουγεννάρτς|Χρι]]
|-
! style="background: #99CCCC; color:#000080;" |Μέσο τρανόν θερμ. °C (°F)
! style="background: #FFCC66; color:#000080;" | '''19,5''' (67)
! style="background: #FFFF99; color:#000080;" | '''7''' (44)
! style="background: #FFFF99; color:#000080;" | '''9''' (48)
! style="background: #FFCC66; color:#000080;" | '''14''' (57)
! style="background: #FFCC66; color:#000080;" | '''18''' (64)
! style="background: #FFCC00; color:#000080;" | '''24''' (75)
! style="background: #FF9900; color:#000080;" | '''29''' (84)
| style="background: #FF9900; color:#000080;" | '''31''' (88)
! style="background: #FF9900; color:#000080;" | '''32''' (90)
! style="background: #FFCC00; color:#000080;" | '''27''' (81)
! style="background: #FFCC00; color:#000080;" | '''22''' (71)
! style="background: #FFFF66; color:#000080;" | '''14''' (55)
! style="background: #FFFF99; color:#000080;" | '''8''' (46)
|-
! style="background: #99CCCC; color:#000080;" height="16;" |Μέσο χάταλον θερμ. °C (°F)
! style="background: #FFFF66; color: black;" | '''10''' (50)
! style="background: #FFFFCC; color: black;" | '''1''' (34)
! style="background: #FFFFCC; color: black;" | '''3''' (37)
! style="background: #FFFF99; color: black;" | '''6''' (43)
! style="background: #FFFF99; color: black;" | '''8''' (47)
! style="background: #FFFF66; color: black;" | '''12''' (54)
! style="background: #FFCC00; color: black;" | '''17''' (62)
! style="background: #FFCC00; color: black;" | '''19''' (66)
! style="background: #FFCC00; color: black;" | '''18''' (64)
! style="background: #FFFF66; color: black;" | '''15''' (59)
! style="background: #FFFF66; color: black;" | '''12''' (54)
! style="background: #FFFF99; color: black;" | '''6''' (43)
! style="background: #FFFFCC; color: black;" | '''3''' (37)
|-
! style="background: #99CCCC; color: #000080;" height="17" |'''Βροςχία σε mm'''
! style="background: #66CCFF; color: black;" | 470 (<small>'''39,2''' / μήνα</small>)
! style="background: #66CCFF; color: black;" | '''43'''
! style="background: #0033FF; color: black;" | '''51'''
! style="background: #66CCFF; color: black;" | '''45'''
! style="background: #66FFFF; color: black;" | '''35'''
! style="background: #66CCFF; color: black;" | '''41'''
! style="background: #80FFFF; color: black;" | '''28'''
! style="background: #80FFFF; color: black;" | '''27'''
! style="background: #80FFFF; color: black;" | '''23'''
! style="background: #66FFFF; color: black;" | '''34'''
! style="background: #66CCFF; color: black;" | '''39'''
! style="background: #0033FF; color: black;" | '''51'''
! style="background: #0033FF; color: black;" | '''53'''
|-
| colspan="14" style="text-align:center;font-size:90%;"|''Ασά: [http://www.fallingrain.com/world/GR/7/Loutrochorion.html Fallingrain] , [http://www.freemeteo.com/default.asp?pid=15&la=2&gid=735366 Freemeteo] 'κι [http://www.multimap.com/map/browse.cgi?scale=100000&lon=22.1091666667&lat=40.7230555556 Multimap]''
|}
{| align="center" class="toccolours" cellspacing="3"
|-
! colspan="3" bgcolor="#ddeef8" align="center" | '''Τα χωρία ολόερα'''
|-
| align="center" style="font-size: 90%;" colspan="3"|
|-
{| width ="90%" border = 1 align="center"
|-
| width ="33%" align="center" | [[Καισαριανά Πέλλας|Καισαριανάν]], [[Φλαμουριά Πέλλας|Φλαμουριάν]]
| width ="34%" align="center" | [[Σεβαστιανά Πέλλας|Σεβαστιανάν]], [[Ριζάρ Πέλλας|Ριζάρ]]
| width ="33%" align="center" | [[Ριζόν Πέλλας|Ριζόν]], [[Σκύδρα|Σκύδραν]]
|-
| width ="33%" align="center" | [[Αία Φωτεινή Πέλλας|Αίαν Φωτεινήν]], [[Πολλά Νερά Ημαθίας|Πολλά Νεράν]]
| width ="34%" align="center" |
{| style="float:center; background-color:transparent;"
|[[Εικόναν:Brosen windrose el.svg|100px]]
|}
| width ="33%" align="center" | [[Πετριά Πέλλας|Πετριάν]], [[Αρσέν Πέλλας|Αρσένι]]
|-
| width ="33%" align="center" | [[Ροδοχώρ Ημαθίας|Ροδοχώρ]], [[Γιαννακοχώρ Ημαθίας|Γιαννακοχώρ]]
| width ="34%" align="center" | [[Μαρίνα Ημαθίας|Μαρίναν]], [[Λευκάδε Ημαθίας|Λευκάδεν]]
| width ="33%" align="center" | [[Πλεύρωμα Πέλλας|Πλεύρωμαν]], [[Επισκοπή Ημαθίας|Επισκοπήν]]
|}
|}
== Αναφοράντας ==
<references />
== Συνδέζμαι ==
* [http://www.indexmundi.com/z/?lat=40.7230556&lon=22.1091667&t=p&r=6340&p=loutrochorion&cc=gr&c=greece To Λουτροχώρ ασό διάστημαν]
[[Κατηγορίαν:Μακεδονία|Λουτροχώρ]]
[[Κατηγορίαν:Χωρία]]
3j20imcsy0fkgw0fmjd7aop0pfj4jyw
Μάλτα
0
226
37383
37186
2025-12-20T12:06:10Z
Εὐθυμένης
2777
/* Αναφοράντας */
37383
wikitext
text/x-wiki
{{Πληροφορίας χώρας|
|εθνικόν_όνεμαν= <big>Repubblika ta' Malta</big>
|εθνικόν όνεμαν σα ποντιακά = Δημοκρατία της Μάλτας
|κοινόν_όνεμαν= Μάλταν
|σημαία = Flag of Malta.svg
|άρθρον σημαίας = Σημαία τη Μάλτας
|σύμβολον = Coat of arms of Malta.svg
|άρθρον συμβολατί = Σύμβολον τη Μάλτας
|χάρτες= Location Malta EU Europe.png
|εθνικόν_σύνθημαν=
|εθνικόν_ύμνος= [[Ύμνος τη Μάλτας|{{polytonic|Ύμνος τη Μάλτας (L-Innu Malti)}}]]
|επίσημα_γλώσσας= [[Μαλτέζικόν γλώσσα|Μαλτέζικον]], [[Αγγλικόν γλώσσα|Αγγλικόν]]
|πρωτεύουσα και ασ' όλον τρανόν πολιτεία = [[Βαλλέτα]]
|συντεταγμένας_πρωτεύουσας=
|πολίτευμαν= [[Δημοκρατία]]
|τίτλοι_τ' ηγετίων = <br />[[Πρόεδρος της Δημοκρατίας|Πρόεδρον της Δημοκρατίας]]<br />[[Πρωθυπουργός|Πρωθυπουργόν]] |
|ονόματα_τ' ηγετίων = [[Έντουαρντ Φένετς Αντάμι]] <br /> [[Λόρενς Γκόνζι]]
|θέση_έκτασης= 185
|έκταση= 316
|ποσοστόν_νερού= %0,001
|εκτίμηση_πληθυσμού= 419.285
|χρονία_εκτίμησης_πληθυσμού= 2007
|πληθυσμός= 404.039
|θέση_πληθυσμού= 174
|χρονία_απογραφής_πληθυσμού= 2005
|πυκνότητα_πληθυσμού= 1.278,6
|θέση_πυκνότητας_πληθυσμού= 7
|τύπος_κυριαρχίας= [[Ανεξαρτησία]]
|γεγονός_κυριαρχίας= - Εκύρηξαν ασ΄Ενωμένον Βασίλειον<br /><br />
ημερομηνίες_κυριαρχίας = <br /> [[21 Σταυρί|21 τη Σταυρίτε]], [[1964]] <br /> |
|παράδας = [[Ευρώ]]
|κωδικός_παράδων = € EUR
|ώρα_ζώνες=
|διαφορά_UTC= +1
|θερινόν_UTC=
|θερινόν_διαφορά_UTC= +2
|top_level_domain= .mt
|κωδικός_τηλεφωνατί= 356
|σημειώσεις=
}}
Η '''Δημοκρατίαν τη Μάλτας''' (σα Μαλτέζικα: Repubblika ta' Malta) εν νησιωτικό χώραν σο νότιο κομμάτ τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Βαλλέτα|Βαλλέταν]] και ο πρόεδρον ατ'ς εν ο [[Έντουαρντ Φένετς Αντάμι]], ατός ντο υπέγραψεν για να μπεν η χώραν ατέ, απές σον [[Ευρωπαϊκόν Σύδεσμος|Ευρωπαϊκό Σύνδεσμον]].
Η χώρα έχ' πληθυσμόν σα 404.039 τ' ανθρώπ'ς (2005)<ref name="Census2005">National Statistics Office (2005). [https://web.archive.org/web/20110920210030/http://www.nso.gov.mt/statdoc/document_file.aspx?id=1653 Census of Population and Housing 2005: Preliminary Report]. Valletta: National Statistics Office. ISBN-13 978-99909-73-38-9.</ref>.
== Γεωγραφίαν ==
Η Μάλταν ευρίεται σο [[Μεσόγειον θάλασσα|Μεσόγειον τη θάλασσα]], σα 93 χλμ. αφκά τη Σικελίας και εφτάνατεν εφτά νησία εντάμα.
=== Κλίμαν ===
Το τοπικό [[κλίμα|κλίμαν]] εν μεσογειακόν [[εύκρατο κλίμα|εύκρατο κλίμαν]], με ελαφρά, βροςχερά χειμωγκόνας και τσιπ ξεράν Θέρους.
{| class="wikitable" style="font-size:85%;width:71%;border:0px;text-align:center;line-height:120%;"
! style="background: #99CCCC; color: #000080" height="17" |Μήνας
! style="background: #99CCCC; color:#000080;" | Χρονία
! style="background: #99CCCC; color:#000080;" | [[Καλαντάρτς|Καλ]]
! style="background: #99CCCC; color:#000080;" | [[Κούντουρος|Κου]]
! style="background: #99CCCC; color:#000080;" | [[Μαρτς|Μαρ]]
! style="background: #99CCCC; color:#000080;" | [[Απρίλτς|Απρ]]
! style="background: #99CCCC; color:#000080;" | [[Καλομηνάς|Καλ]]
! style="background: #99CCCC; color:#000080;" | [[Κερασινός|Κερ]]
! style="background: #99CCCC; color:#000080;" | [[Χορτοθέρτς|Χορ]]
! style="background: #99CCCC; color:#000080;" | [[Αλωνάρτς|Αλω]]
! style="background: #99CCCC; color:#000080;" | [[Σταυρίτες|Στα]]
! style="background: #99CCCC; color:#000080;" | [[Τρυγομηνάς|Τρυ]]
! style="background: #99CCCC; color:#000080;" | [[Αεργίτες|Αερ]]
! style="background: #99CCCC; color:#000080;" | [[Χριστουγεννάρτς|Χρι]]
|-
! style="background: #99CCCC; color:#000080;" |Μέσο τρανόν θερμ. °C (°F)
| style="background: #FFFF99; color:#000000;" | 21 (71)
| style="background: #DDDDDD; color:#000000;" | 15 (59)
| style="background: #DDDDDD; color:#000000;" | 15 (59)
| style="background: #FFFFCC; color:#000000;" | 16 (61)
| style="background: #FFFF99; color:#000000;" | 18 (65)
| style="background: #FFFF99; color:#000000;" | 22 (72)
| style="background: #FFCC66; color:#000000;" | 27 (80)
| style="background: #FF8000; color:#000000;" | 30 (86)
| style="background: #FF8000; color:#000000;" | 30 (86)
| style="background: #FF8000; color:#000000;" | 28 (82)
| style="background: #FFCC66; color:#000000;" | 24 (75)
| style="background: #FFFF99; color:#000000;" | 19 (67)
| style="background: #FFFFCC; color:#000000;" | 16 (61)
|-
! style="background: #99CCCC; color:#000080;" height="16;" |Μέσο χάταλον θερμ. °C (°F)
| style="background: #DDDDDD; color: black;" | 15 (60)
| style="background: #80FFFF; color: black;" | 9 (49)
| style="background: #80FFFF; color: black;" | 9 (49)
| style="background: #80FFFF; color: black;" | 10 (51)
| style="background: #DDDDDD; color: black;" | 12 (54)
| style="background: #DDDDDD; color: black;" | 15 (59)
| style="background: #FFFF99; color: black;" | 19 (66)
| style="background: #FFFF99; color: black;" | 22 (71)
| style="background: #FFFF99; color: black;" | 22 (72)
| style="background: #FFFF99; color: black;" | 20 (69)
| style="background: #FFFF99; color: black;" | 18 (64)
| style="background: #DDDDDD; color: black;" | 14 (57)
| style="background: #80FFFF; color: black;" | 11 (52)
|-
| colspan="14" style="text-align:center;font-size:90%;"|''Ασό: [https://web.archive.org/web/20110907165644/http://www.weatherbase.com/weather/weather.php3?s=79561&refer= Weatherbase]''
|}
== Αναφοράντας ==
<references />
== Συνδέζμαι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:Malta|Η Μάλταν σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Μάλτα|Η Μάλταν σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Malta|Χάρτες ασην Μάλταν]]'''
* [http://www.gov.mt/ Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Μάλτας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
{{Πρότυπον:Μετάφραση el}}
[[Κατηγορίαν:Κράτη|Μαλτα]]
[[Κατηγορίαν:Ευρώπη|Μαλτα]]
[[Κατηγορίαν:Μάλτα| ]]
n9s39ogknrmd0mvjqo1qilaqfq3cr5j
Μακεδονία
0
227
37412
36332
2025-12-30T22:16:27Z
Таёжный лес
10003
37412
wikitext
text/x-wiki
{| style="float:right; clear: right; width: 20em; font-size: 110%; text-align: left; border: 1px solid #aaaaaa; border-right-width: 2px; border-bottom-width: 2px; background-color: #f9f9f9; margin-bottom: 0.5em; margin-left: 1em;" cellspacing="4" cellpadding="1"
|-
! colspan="2" class="hiddenStructureMacedonia" style="font-size: 110%; background-color: lightsteelblue;" | <div class="center"><big>'''Μ α κ ε δ ο ν ί α'''</big><br /><big>''Μακεδονίαν''</big></div>
|-
| colspan="2" |
{| style="text-align: center; margin: 0 auto; background: none;"
|-
| style="border: 0; vertical-align: middle;" | <span style="border: 1px solid #bbbbbb; display: table-cell;">[[Εικόναν:Flag of Greece.svg|120px]]</span>
| style="border: 0; vertical-align: middle;" | <span style="border: 1px solid #bbbbbb; display: table-cell;">[[Εικόναν:Flag of Greek Macedonia.svg|125px]]</span>
|-
| colspan="2" style="border-top: solid 1px #ccd2d9; padding: 0.4em 1em 0.4em 0; vertical-align: top; text-align: center; font-size: 95%;" | Τοπικόν ύμνος: Μακεδονία ξακουστή
|}
|-
| colspan="2" |
{| style="text-align: center; margin: 0 auto; background: none;"
|-
| style="border: 0; vertical-align: middle;" | <span style="border: 1px solid #bbbbbb; display: table-cell;">[[Εικόναν:LocationMacedonia-HEL-1-z.png|130px]]</span>
| style="border: 0; vertical-align: middle;" | [[Εικόναν:Macedonia actualised overview.png|100px]]
|}
|-
| colspan="2" style="border-bottom: 5px solid lightsteelblue; font-size: 1%;" |
|-
| [[Πρωτεύουσα|Πρωτεύουσαν]] || [[Θεσσαλονίκη|Θεσσαλονίκην]]
|-
| '''Πληθυσμόν''' <small>(ανθρώπς)</small> || 2.625.681 {{#if:
2007
|<small>(2007)</small>
}}
|- class="hiddenStructure77" style="vertical-align: top;"
| <small>'''Πυκνότητα τη πληθυσμού'''</small> || 77/km²
|-
| '''Έκτασην''' <small>(τρανόν)</small> || 34.177 km²
|}
'''Μακεδονία''' λέγομε το τρανόν τον τόπον, ντ' ευρισκάται σο βόρειον κομμάτ τη [[Ελλάδα|Ελλάδας]]. Εν σο [[Αιγαίον πέλαγος|Αιγαίον το πέλαγον]] απάν κι ο πληθυσμόν τη τόπονος'ατς εν σα 2.625.681 τ' ανθρώπς απαναφκά (2007). Πρωτεύουσαν ατ'ς εν η [[Θεσσαλονίκη|Θεσσαλονίκην]].
== Όνομαν ==
Ατέ πα επαίρεν τ'όνεμαν'ατς ασ'[[Αρχαία Ελληνικά|αρχαίον το Ελληνικόν]] τ'όνεμαν, για τ'ανθρώπς ασ'ατόν τον τόπον : [[Μακεδόνες]]. Ατοί έτονε οι ασ'ούλτς τρανοί αγούρ ασό Βορράν. Αραέτς εγροικούμε ότ'η Μακεδονίαν εν ο τόπον που ευρίσκανται, τη ασ'ουλτς τρανοί [[Έλληνες|Έλλενες]].
== Γεωγραφίαν ==
Η Μακεδονίαν εν ο ασ' ουλτς τρανόν τόπον τη Ελλάδας.
Ατέ ευρίεται αφκά σην [[Αλβανία|Αλβανίαν]], σα [[Βόρεια Μακεδονία|Σκόπια]], ση [[Βουλγαρία|Βουλγαρίαν]], σα δυτικά τη [[Θράκη|Θράκης]], σ'ανατολικά τ'[[Ήπειρος|Ηπείρωνος]] και απάν'ση [[Θεσσαλία|Θεσσαλίαν]]. Σα τρανά τα ελλενικά τα πολιτείας τη Μακεδονίας εξόν τη [[Πρωτεύουσα|πρωτεύουσαν]] Θεσσαλονίκην ανήκ'νε τα [[Σέρρες|Σέρρας]], η [[Καβάλα|Καβάλαν]] και η [[Κοζάνη|Κοζάν]].
== Ιστορίαν ==
Η Μακεδονίαν έχ' τσιπ τρανόν ιστορίαν. Ο πολιτισμόν'ατς έχ' τη ρίζαν ατ' σ' [[Αρχαίον Ελλάδαν|αρχαίον την Ελλάδαν]].
Έν'η γενέτειρα περιοχήν τ'αρχαίων τ'Ελλένων [[Βασιλείς τη Μακεδονίας|Βασιλέων τη Μακεδονίας]], τη [[Φίλιππος Β'|Φιλίππονος τη δευτέρου]] και τη [[Μέγας Αλέξανδρος|Μεγαλέξανδρονος]], ατοί τ'εποίκαν κι' έχτισαν το πρώτον πανελλενικόν ομoσπονδίαν. Απ'αδά εξεκίνησεν κι ο [[Χριστιανισμός|Χριστιανισμόν]] για τ' [[Ευρώπην|Ευρώπας]], όταν'έρθε και καλάτσεψε για τ'ατόν ο [[Απόστολος Παύλος|Απόστολον ο Παύλον]] σα [[Φιλίπποι|Φιλίππους]], ση Θεσσαλονίκην και ση [[Βέροια|Βέροιαν]]. Αδακά εγεννέθαν πα τ'αδέλφε [[Άγιοι Κύριλλος και Μεθόδιος|Άγιοι Κύριλλον και Μεθόδιον]] π'εφώτσαν τη [[Σλάβοι|Σλάβς]] και ο τρανομάρτυρτς ο [[Άγιος Δημήτριος|Άγιος Δημήτριον]].
== Πολιτικόν διοίκηση ==
Το τοπί τη Μακεδονίας χωρίετεν διοικητικά σε 3 [[Περιφέρειας τη Ελλάδας|Περιφέρειας]]{{fn|1=1}} και σε 13 νομία{{fn|1=1}}:
{| class="wikitable" style="text-align:left; font-size:95%"
|- style="font-size:100%; text-align:center"
!width="200px" bgcolor="#6495ED"| <big>'''Ο χάρτες τη Μακεδονίας'''</big> !!width="10px" bgcolor="#6495ED" | <big>'''[[Αριθμόν|Αρ.]]'''</big> !!width="190px" bgcolor="#6495ED"| '''<big>[[Περιφέρειες της Ελλάδας|Περιφέρεια]]</big> ( με τα νομία τι: )'''!!width="70px" bgcolor="#6495ED"| <big>'''[[Πρωτεύουσα|Πρωτεύουσαν]]'''</big> !!width="80px" bgcolor="#6495ED" | <big>'''[[Έκτασην]]'''</big> !!width="70px" bgcolor="#6495ED" | <big>'''[[Πληθυσμόν]]'''</big> </tr>
| rowspan=19 | [[Εικόναν:Macedonia greece prefectures.png|300px]]
|-
| width="32px" bgcolor="#FFCBCB" | || width="32px" bgcolor="#FFCBCB" | <big>'''[[Δυτική Μακεδονία|Δυτικής Μακεδονίας]]'''</big>|| width="32px" bgcolor="#FFCBCB" | <big>'''[[Κοζάν]]'''</big> || style="text-align:right" width="32px" bgcolor="#FFCBCB" |'''9.451 χμ²'''|| style="text-align:right" width="32px" bgcolor="#FFCBCB" |'''301.522'''
|-
| width="32px" bgcolor="#FFCBCB" | '''1''' || [[Νομόν Κέστερας|Κέστερας]] || [[Κέστεραν]] || style="text-align:right" |1.720 χμ²|| style="text-align:right" |53.483
|-
| width="32px" bgcolor="#FFCBCB" | '''2''' || [[Νομόν Φλώρινας|Φλώρινας]] || [[Φλώριναν]] || style="text-align:right" |1.924 χμ²|| style="text-align:right" |54.768
|-
| width="32px" bgcolor="#FFCBCB" |'''3''' || [[Νομόν Κοζάντς|Κοζάντς]] || [[Κοζάν]] ||style="text-align:right" |3.516 χμ²|| style="text-align:right" |155.324
|-
| width="32px" bgcolor="#FFCBCB" | '''4''' || [[Νομόν Γρεβενίας|Γρεβενίας]] || [[Γρεβενάν]] || style="text-align:right" |2.291 χμ²|| style="text-align:right" |37.947
|-
| width="32px" bgcolor="#B9FFC5" | || width="32px" bgcolor="#B9FFC5" | <big>'''[[Κεντρική Μακεδονία|Κεντρικής Μακεδονίας]]'''</big>|| width="32px" bgcolor="#B9FFC5" | <big>'''[[Θεσσαλονίκη|Θεσσαλονίκην]]'''</big> ||style="text-align:right" width="32px" bgcolor="#B9FFC5" |'''18.811 χμ²'''|| style="text-align:right" width="32px" bgcolor="#B9FFC5" |'''1.871.952'''
|-
| width="32px" bgcolor="#B9FFC5" | '''5''' || [[Νομόν Πέλλας|Πέλλας]] || [[Έδεσσα|Έδεσσαν]] || style="text-align:right"|2.506 χμ²|| style="text-align:right"|145.797
|-
| width="32px" bgcolor="#B9FFC5" | '''6''' || [[Νομόν Ημαθίας|Ημαθίας]] || [[Βέροια|Βέροιαν]] ||style="text-align:right"|1.701 χμ²|| style="text-align:right"|143.618
|-
| width="32px" bgcolor="#B9FFC5" | '''7''' || [[Νομόν Πιερίας|Πιερίας]] || [[Κατερίνη|Κατερίνην]] || style="text-align:right"|1.516 χμ²|| style="text-align:right"|129.846
|-
| width="32px" bgcolor="#B9FFC5" | '''8''' || [[Νομόν Κιλκίς|Κιλκίς]] || [[Κιλκίς]] || style="text-align:right"|2.519 χμ²|| style="text-align:right"|89.056
|-
| width="32px" bgcolor="#B9FFC5" | '''9''' || [[Νομόν Θεσσαλονίκης|Θεσσαλονίκης]] || [[Θεσσαλονίκη|Θεσσαλονίκην]] || style="text-align:right"|3.683 χμ²|| style="text-align:right"| 1.057.825
|-
| width="32px" bgcolor="#B9FFC5" | '''10''' || [[Νομόν Χαλκιδικής|Χαλκιδικής]] || [[Πολύγυρος|Πολύγυρον]] || style="text-align:right"|2.918 χμ²|| style="text-align:right"|104.894
|-
| width="32px" bgcolor="#B9FFC5" | '''11''' || [[Νομόν Σερρών|Σερρών]] || [[Σέρρες|Σέρρας]] || style="text-align:right"|3.968 χμ²|| style="text-align:right"|200.916
|-
| width="32px" bgcolor="#CCCCFF" | || width="32px" bgcolor="#CCCCFF" | <big>'''[[Περιφέρεια Ανατολικής Μακεδονίας και Θράκης|Ανατολικής Μακεδονίας]]'''</big>{{fn|1=2}}|| width="32px" bgcolor="#CCCCFF" | <big>'''[[Καβάλα|Καβάλαν]]'''</big> || style="text-align:right" width="32px" bgcolor="#CCCCFF" |'''5.579 χμ²'''|| style="text-align:right" width="32px" bgcolor="#CCCCFF" |'''249.029'''
|-
| width="32px" bgcolor="#CCCCFF" | '''12''' || [[Νομόν Καβάλας|Καβάλας]] || [[Καβάλα|Καβάλαν]] || style="text-align:right"|2.111 χμ²|| style="text-align:right"|145.054
|-
| width="32px" bgcolor="#CCCCFF" | '''13''' || [[Νομόν Δράμας|Δράμας]] || [[Δράμα (πολιτείαν)|Δράμαν]] || style="text-align:right"|3.468 χμ²|| style="text-align:right"|103.975
|-
| - || <big>'''[[Άγιο Όρος|Άγιον Όρος]]'''</big>{{fn|1=1}} <small>(αυτόνομο κομμάτ)</small> || <big>'''[[Καρυές (Άι Ορί)|Καρυές]]'''</big> || style="text-align:right"|336 χμ²|| style="text-align:right"|2.262
|-
| width="32px" bgcolor="#FFDB58" | [[Εικόναν:PosGreekMacedonia.png|35px]] || width="32px" bgcolor="#FFDB58" | <big>Σύνολο</big> || width="32px" bgcolor="#FFDB58" | || style="text-align:right" width="32px" bgcolor="#FFDB58" |'''<big>34.177</big> <big>χμ²</big>'''|| style="text-align:right" width="32px" bgcolor="#FFDB58" |<big>'''2.424.765'''</big><ref name=census-gr>{{cite web| url= http://www.statistics.gr/gr_tables/S1101_SAP_01_TB_DC_01_02_Y.zip | title= Εθνική Στατιστική Υπηρεσία της Ελλάδος | work= Απογραφή 2001 | format = zip xls |accessmonthday= 26-08-2007|accessyear= |archiveurl=http://web.archive.org/web/20060916102811/http://www.statistics.gr/gr_tables/S1101_SAP_01_TB_DC_01_02_Y.zip|archivedate=2006-09-16}}</ref>
|}
'''Αναφοράντας'''
* {{fnb|1=1}} - Ση Μακεδονίαν εν και το αυτόνομο κομμάτ τη [[Άγιο Όρος|Άι Ορί]], ένα μοναστηρέικο χώραν απές σην Ελληνική δημοκρατίαν. Ευρισκάται σ' ανατολικότερον ασά τρίαν μεγάλα χερσονησία τη [[Χαλκιδική|Χαλκιδικής]].
* {{fnb|1=2}} - Απές σην [[Περιφέρεια Ανατολικής Μακεδονίας και Θράκης|περιφέρειαν Ανατολικής Μακεδονίας και Θράκης]] εν και τα νομία τη [[Θράκη|Θράκης]].
<references/>
== Συνδέζμαι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:Macedonia|Η Μακεδονίαν σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Μακεδονία|Η Μακεδονίαν σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Macedonia|Χάρτες ασην Μακεδονίαν]]'''
* [http://www.mathra.gr/ To υπουργίον τη Μακεδονίας και τη Θράκης]
* [https://web.archive.org/web/20080526015237/http://www.westernmacedonia.gr/index.php Περιφέρεια Δυτικής Μακεδονίας]
* [https://web.archive.org/web/20071011053333/http://www.rcm.gr/ Περιφέρεια Κεντρικής Μακεδονίας]
* [https://web.archive.org/web/20090223061659/http://www.remth.gr/index.php Περιφέρεια Ανατολικής Μακεδονίας και Θράκης]
<references/>
{{authority control}}
[[Κατηγορίαν:Ελλάδα|Μακεδονία]]
[[Κατηγορίαν:Μακεδονία| ]]
md4vi00bvm9vj30gh2ldalvrl83fsuk
Μαρτς
0
228
37037
37017
2025-12-16T18:14:34Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37037
wikitext
text/x-wiki
<center> '''Ημέρας τη Μάρτ''' </center>
<center> [[1 Μαρτί|1]] | [[2 Μαρτί|2]] | [[3 Μαρτί|3]] | [[4 Μαρτί|4]] | [[5 Μαρτί|5]] | [[6 Μαρτί|6]] | [[7 Μαρτί|7]] | [[8 Μαρτί|8]] | [[9 Μαρτί|9]] | [[10 Μαρτί|10]] | [[11 Μαρτί|11]] | [[12 Μαρτί|12]] | [[13 Μαρτί|13]] | [[14 Μαρτί|14]] | [[15 Μαρτί|15]] | [[16 Μαρτί|16]] | [[17 Μαρτί|17]] | [[18 Μαρτί|18]] | [[19 Μαρτί|19]] | [[20 Μαρτί|20]] | [[21 Μαρτί|21]] | [[22 Μαρτί|22]] | [[23 Μαρτί|23]] | [[24 Μαρτί|24]] | [[25 Μαρτί|25]] | [[26 Μαρτί|26]] | [[27 Μαρτί|27]] | [[28 Μαρτί|28]] | [[29 Μαρτί|29]] | [[30 Μαρτί|30]] | [[31 Μαρτί|31]] </center>
----
{{ΗμερολόγιοΣεΠίνακα|3}}
[[Αρχείον:Matthäus Merian Monate 03 März.jpg|thumb|Τα μήνας, «Ο Μάρτς». Εζωγράφσεν ατό ο Matthäus Merian (ο τρανόν) σα 1610.]]
Ο '''Μάρτς''' (σα ελλενικά: ''Μάρτιος'', σα ρουσικά: Март, σα τουρκικά: ''Mart'') εν ο τρίτον μήνας τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] κι εχ' 31 ημέρας .
Σ' αβούτον το μήναν ο [[ήλες]] εν σο ζενίθ απάν ασον ισημερνόν.
Τ' όνεμαν ατ' εβγών' ασον Άρην (λατ. ''Mars''), θεόν τ' Έλλενων και τη Ρωμαίων ασην [[Ρώμη|Ρώμην]] τη [[Ιταλία|Ιταλίας]]. Αέτς εδέκαν ατ τ' όνεμαν ''Martius''. Σ' αρχαίον το [[Ρωμαϊκόν Αυτοκρατορίαν|ρωμαϊκόν]] ημερολόγιον έτον πρώτον μήνας. Για τ' ατό τα καινούρεα μήνας σ' ελλενικά επαίραν τ' ονέματατουν λ.χ. ''Σεπτέμβριος'', (λατ. ''septem'' = εφτά), Οκτώβριος (λατ."octō" = οχτώ), Νοέμβριος (λατ. ''novem'' = εννέα) και Δεκέμβριος (λατ. "decem" = δέκα.
== Ο λαόν για το Μάρτ ==
:''«Ο Μάρτ' έρται και διαβαίν', αλλ' τς πάγων' και άλλ' τα χουλαίν''
:''Εδέβεν πλαν' ο Κούντουρον, τη Μάρτ' τ' ωτία εφάνθαν''
:''Τα χιόνε όλεα ελύγανε κι ασά ραχιά εχάθαν.»''
:''«Ο Μάρτς φέρ’ τα χελιδόνα''
:''κελαϊδούν και λύν’ν τα χόνα.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:March|Μαρτς σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el:wikt:Μάρτιος|Ο Μαρτς (Μάρτιος) σ' ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Μάρτς]]
aukqwepjnka2i7xck3z7gs4gwxd0orn
Μαύρον Θάλασσα
0
229
36580
35693
2025-12-15T19:08:38Z
Εὐθυμένης
2777
/* Συνδέζμαι */
36580
wikitext
text/x-wiki
[[Αρχείον:ΜαύρηΘάλασσα.PNG|thumb|250px|Το Μαύρον η Θάλασσα σον χάρτεν.]]
Το '''Μαύρον η Θάλασσα''' (κε Μαυροθαλασα) (σ' αρχαία τα χρόνε λέχκουτον '''[[Εύξεινος Πόντος]]''') εν θάλασσαν απές μερέαν. Ευρίεται σο νοτιοανατολικόν τ' [[Ευρώπην]] και σο [[Μικράν Ασία|Μικράν Ασίαν]] απές. Με τ' [[Μεσόγειον Θάλασσα|Μεσόγειο τη Θάλασσαν]] συνδέν' ατέν ο [[Βόσπορος|Βόσπορον]] και η [[Θάλασσα Μαρμαρά]]. Ο [[Ισθμός τη Κερτς|Ισθμόν τη Κερτς]] ενών' ατέν με τη [[Θάλασσα Αζόφ|Θάλασσαν τ' Αζόφ]].
== Κράτη ντο συνορεύνε με το Μαύρον τη Θάλασσαν ==
[[Τουρκία]], η [[Βουλγαρία]], η [[Ρουμανία]], η [[Ουκρανία]], η [[Ρουσία]] και η [[Γρουζία]]. Το Κριμαϊκόν η χερσόνησος εν Ουκρανικόν αυτόνομον δημοκρατία. Έχ' τρανά πολιτείας τοι: [[Κωνσταντινούπολη]], Πύργος, [[Βάρνα (Βουλγαρία)|Βάρνα]], [[Κοστάντα]], [[Γιάλτα]], [[Οδησσός]], [[Κέρτς]], [[Νοβοροσίσκ]], [[Σόχι]], [[Σουχούμι]], [[Πότι]], [[Βατούμι]], [[Τραπεζούντα]], [[Σαμψούντα]].
== Όνομα ==
Τ' όνομα «Μαύρον Θάλασσα» 'κ ευρίσκεται ασόν 13ον αιώναν πριχού. Ο [[Στράβων]] έλεεν ''Πόντος'' ατέν (δηλ. «Θάλασσαν») μαναχόν. Σ' ελλενο-ρωμαϊκά τα ζαμάναι επαίρεν τ' όνεμαν «Εύξεινος Πόντος», δηλ. «Φιλόξενον Θάλασσα». Άβούτον τ' όνεμαν εν ευφημισμόν κι επαίρεν τη θέσην τη παλαιού τ' ονεματί «Άξεινος Πόντος» (δηλ. «Αφιλόξενον Θάλασσα»), το οποίον εγράφκουτον ασόν [[Πίνδαρος|Πίνδαρον]] (ση 5ου τ' αιώνα π.Χ. τ' αρχάς). Ο Στράβων ινάνευεν ντο λέχκουτον αέτς πριχού τ' ελλενικόν τον αποικισμόν. Λόγοι έσαν τα δυσκολίας ντ' είχανε ν' εφτάνε τα πρώτα τα πολιτείας εκαιπά. Άμα όντες οι Μιλήσιοι εποίκεσαν τον τόπον κι εποίκαν ατόν μέρος τ' ελλενικού τη πολιτισμού, τ' όνεμα μεταβάλκουτον κι εγέντον «φιλόξενον».
Οι [[Τουρκία|Τουρκάντ]] έδωκαν τ' όνεμα «Μαύρον Θάλασσα» (''Karadeniz'', τ' Αγαίον λέγν' ατό «Άσπρον Θάλασσα», ''Akdeniz''). Οσήμερον αβούτο τ' όνεμα επαίραν ατό κι άλλα γλώσσας: Ρουσικά: ''Черное Море'', Βουλγαρικά: ''Черно море'' (''Cherno more''), Γεωργιανά: ''შავი ზღვა'' (''shavi zghva''), Ουκρανικά :'' Chorne More'', Ρουμανικά: ''Marea Neagră'', κλπ.
[[Αρχείον:sochi_edited.jpg|right|thumb|Φωτογραφία: Σα 1915 τη χρονίαν.]]
== Βιβλιογραφία ==
* Charles King, ''The Black Sea: A History'', 2004, ISBN 0-19-924161-9
* William Ryan and Walter Pitman, ''Noah's Flood'', 1999, ISBN 0-684-85920-3
* Neal Ascherson, ''Black Sea'' (Vintage 1996), ISBN 0-09-959371-8
* Özhan Öztürk, Karadeniz: Ansiklopedik Sözlük (Black Sea: Encyclopedic Dictionary). 2 Cilt (2 Volumes). Heyamola Publishing. Istanbul.2005 ISBN 975-6121-00-9.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Black Sea|Μαύρον Θάλασσα σα Commons]]'''
* [https://web.archive.org/web/20051123034629/http://www.blacksea-archaeology.org/ Κέντρον για τ' αρχαιολογίαν τη Μαύρου τη Θάλασσας] (Γερμανικά κι Αγγλικά)
* [http://goobix.com/black-sea-pictures/ Goobix.com - Εικόνας ασό Μαύρον τη Θάλασσαν] (Κούντουρονος 2005)
* [https://web.archive.org/web/20060212061504/http://ebs.hit.bg/ Οικολογίαν τη Μαύρου τη Θάλασσας]
* [https://web.archive.org/web/20081202124232/http://www.sonbaski.com/fotograf1.htm Φωτογραφίας ασήν Τουρκίαν]
* [http://earthfromspace.photoglobe.info/spc_blacksea.html Η Γη ασό Διάστημαν] - Μαύρον Θάλασσα
* [https://web.archive.org/web/20080611152026/http://www.karalahana.com/english.html Μαύρον Θάλασσα]
* [https://web.archive.org/web/20061106224353/http://lahana.org/resimler/index.php Εικόνα]
{{authority control}}
[[Κατηγορίαν:Θάλασσας|Μαυρον Θαλασσα]]
[[Κατηγορίαν:Μαύρον Θάλασσα|*]]
7zensc8ct10ia3aq7j5lyyb96jn8sjo
Μαύρον θάλασσα
0
230
2410
2409
2009-03-06T15:29:14Z
MF-Warburg
53
1 revision
2410
wikitext
text/x-wiki
#REDIRECT [[Μαύρον Θάλασσα]]
rzen1kydaywa5mgwp0x66qveokhohef
Μολδαβία
0
231
35942
34861
2024-10-26T05:26:56Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35942
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Moldova'''</big></big><br/>''Republica Moldova''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Moldova.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Moldova.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Europe-Moldova.svg|300px]]
|}
Η '''Δημοκρατία τη Μολδαβίας''' (σα μολδαβέικα ''Republica Moldova'') εν [[κράτος]] σην ανατολήν [[Ευρώπην]]. Πρωτεύουσαν ατ'ς εν το [[Κισινάου]] και ο πρόεδρον ατ'ς εν ο [[Νικολάε Τιμόφτι]]. Ο πληθυσμόν τη χώρας είν' σα 4,128,047 (2008) τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Η Μολδαβίαν ευρίεται απεσκέσ' ση [[Ρουμανία|Ρουμανίαν]], ση [[Ουκρανία|Ουκρανίαν]], και ση [[Υπερδνειστερία|Υπερδνειστερίαν]]. Έχ' τρανά πολιτείας το [[Μπάλτσι|Μπάλτσιν]] και τo [[Μπέντερ]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Moldova|Η Μολδαβίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Μολδαβία|Η Μολδαβίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Moldova|Χάρτες αση Μολδαβίαν]]'''
* [https://web.archive.org/web/20081218163523/http://www.parlament.md/en.html Το επίσημον ο ιστοτόπον τη μολδαβικού τη κοινοβουλί]
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Μολδαβία]]
[[Κατηγορίαν:Ευρώπη|Μολδαβία]]
[[Κατηγορίαν:Βαλκάνια|Μολδαβία]]
[[Κατηγορίαν:Μολδαβία| ]]
19e7u0e02qqfjw55unvka97e6g2ayra
Πρότυπον:Wp/pnt
10
232
9966
2419
2009-12-04T14:55:36Z
Qoan
1170
Κατηγοριοποιώ
9966
wikitext
text/x-wiki
<includeonly>
...
[[Category:Wp/pnt/ΑΔΑΚΑ Τ'ΟΝΕΜΑΝ ΚΑΤΗΓΟΡΙΑΣ|Wp/pnt]]
</includeonly>
<noinclude>
[[Κατηγορίαν:Πρότυπα]]
</noinclude>
2ssa6hyscxve3k27jawmqiqhjemo79c
Μορφολογία
0
233
31426
30982
2013-03-11T10:22:59Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 2 interwiki links, now provided by [[d:|Wikidata]] on [[d:q38311]] [[M:User:Addbot/WDS|(translate me)]]
31426
wikitext
text/x-wiki
Η '''μορφολογία''' εν το παρακλάδ' τη [[γλωσσολογία|γλωσσολογίας]] και τη [[Γραμματικήν|γραμματικής]] που τερεί τ' ασ' ούλτς μικρά στοιχεία τη γλώσσας που δίγνε σημασίαν: τα [[μόρφημαν|μορφήματα]]. Τα μορφήματα έχνε απές τα [[φώνημαν|φωνήματα]] και πολλά μορφήματα εντάμαν σχηματίζνε τη λέξην. Τα νομς ντο κανονίζνε τ' απές μερέαν μορφήν τη λέξης εξέβαν αση μορφολογίαν.
== Ντο τερεί η μορφολογία ==
Τα λέξεις κ'έπορουμε να λέγουματα πάντα με έναν μορφήν. Για να διγ νόημαν ο λόγον πρέπ' να γίνταν κάποια αλλαγάς σα λέξεις.
Λχ: ''ο Γιάννες, είμαι, αδερφός, η Ελένε''
Αβούτον ο λόγον αέτς άμον ντο εν νόημαν σωστόν 'κ διγ. Πρέπ' να ενώνουμε τα λέξεις και για να ενώνομ'ατα χρειάσκουνταν αλλαγάς: Για να ενώνομε ''Ο Γιάννες'' και ''είμαι'' πρέπ' να λέγουμε το [[ρήμαν]] σο τρίτον πρόσωπον: ''Ο Γιάννες εν''. Αέτς εφτάμε τα αλλαγάς και βάζομε και το ''Ελένε'' σο γενικόν τη πτώσην για να ενώνομ'ατο με το ''αδερφός'' κι εβγών ο λόγον:
''Ο Γιάννες εν αδερφός τ' Ελένες.''
== Βιβλιογραφία ==
* Τοπχαράς, Κ. 1928, 1932: ''Ι Γραματικι Τι Ρομεικυ Τι Ποντεικυ Τι Γλοςας''. Ρόστοβ-Ντον. ISBN 960-343-448-5
[[Κατηγορίαν:Γραμματικήν|Μορφολογια]]
[[Κατηγορίαν:Γλωσσολογίαν|Μορφολογια]]
04jqn0e8hvc92hmvb2q720a66pl10so
Μουσική
0
234
30986
30765
2013-03-07T18:02:53Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 173 interwiki links, now provided by [[d:|Wikidata]] on [[d:q638]] [[M:User:Addbot/WDS|(translate me)]]
30986
wikitext
text/x-wiki
Εθνομουσικολόγοι και κοινωνιολόγοι λέγνε ντο η '''μουσική''' εν ''«ήχον ντο κανονίζ' ο άνθρωπον»''.
== Το ποντιακόν η μουσική ==
Το ρωμαίικα τα ποντιακά τα μελωδίας έχνε περίπλοκα ρυθμικά σχήματα. Συνήθως εν πολλά αληγορτά και συνοδεύονται από τραγωδία και χορόντας.
Τα ποντιακά μουσικά όργανα είναι το [[τουλούμ]] και η [[λύρα]]. Τη ποντιακή τη μουσικήν πέζνε σην [[Ελλάδα|Ελλάδαν]], ση Ρουσίαν και σον οσημερινόν Πόντον τη [[Τουρκία|Τουρκίας]]. Ακόμαν και οι Τουρκάντ «χορόν» ''(horon)'' λέγνε ατέν.
[[Κατηγορίαν:Μουσική|*]]
1wmkefiegapkajwnrryz60w8f57xa2j
Νέα Ζηλανδία
0
235
35944
32434
2024-10-26T05:27:04Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35944
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Νέα Ζηλανδία'''</big></big><br/>''New Zealand''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of New Zealand.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of New Zealand.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:New Zealand_(orthographic_projection).svg|300px]]
|}
Η '''Νέα Ζηλανδία''' (σα εγγλέζικα: ''New Zealand'') εν [[Ωκεανίαν|ωκεανικόν]] [[κράτος]] σο νότιον τον Ειρηνικόν τον ωκεανόν. Πρωτεύουσαν ατ'ς εν το [[Ουέλλινγκτον]] κ' τρανότερη πόλη τ' [[Ώκλαντ]]. Η πρωθυπουργόν ατ'ς εν η [[Έλεν Κλαρκ]] και ο πληθυσμόν ατ'ς ένι σα 4.173.279 τ' ανθρώπ'ς.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:New Zealand|Η Νέα Ζηλανδία σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Νέα Ζηλανδία|Η Νέα Ζηλανδίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of New Zealand|Χάρτες ασήν Νέα Ζηλανδίαν]]'''
[[Κατηγορίαν:Κράτη|Ζηλανδία]]
[[Κατηγορίαν:Νέα Ζηλανδία| ]]
0d27hunpv5zkx5kizg778os5cjl3jxb
Νέος Μαρμαράς
0
236
30991
28363
2013-03-07T18:03:26Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 8 interwiki links, now provided by [[d:|Wikidata]] on [[d:q200417]] [[M:User:Addbot/WDS|(translate me)]]
30991
wikitext
text/x-wiki
Ο '''Νέος Μαρμαράς''' εν χωρίον σην [[Ελλάδα|Ελλάδαν]] ντ' εχτίεν σον Τορωναίον το Κόλπον, σα ρασώπα ση δύσαν τη Σιθωνίας τη Χαλκιδικής απές. Ασή [[Θεσσαλονίκη|Θεσσαλονίκην]] εν 135 χλμ απαναφκά. Σον Μαρμαρά σουμά εν μαναχό ένα χωρίον, κ' εκείνο εν ο Παρθενώνας. Τ' άλλα χωρία είν' ελίγο μακρά α σον Μαρμαράν. Α σην Τορώνην εν 20 χλμ, α σην Νικήτην 23 χλμ και ασα Νέα Μουδανιά εν 60 χλμ.
[[Κατηγορίαν:Χωρία|Μαρμαράς, Νέος]]
[[Κατηγορίαν:Ελλάδα|Μαρμαράς, Νέος]]
[[Κατηγορίαν:Μακεδονία|Μαρμαράς, Νέος]]
3kmoosqx6tap53b21q10c95nz94n4e9
Νορβηγία
0
237
36321
36173
2025-10-11T17:34:40Z
Antimuonium
10707
Tag correction
36321
wikitext
text/x-wiki
{{Πληροφορίας χώρας|
|εθνικόν_όνεμαν = <big>Νορβηγία</big>
|εθνικόν όνεμαν σα ποντιακά = Kongeriket Norge<br />Kongeriket Noreg
|κοινόν_όνεμαν = Νορβηγία
|σημαία = Flag of Norway.svg
|άρθρον σημαίας = Σημαία τ' Νορβηγία
|σύμβολον = Coat of arms of Norway.svg
|άρθρον συμβολατί = Σύμβολον τ' Νορβηγία
|χάρτες = Europe-Norway.svg
|εθνικόν_σύνθημαν = Enige og tro til Dovre faller
|εθνικόν_ύμνος= ''Ja, vi elsker dette landet'' <br /><br /><div class="center">[[File:Norway (National Anthem).ogg]]</div>
|επίσημα_γλώσσας = [[:no:Norsk|Norsk]] <small>([[:no:Bokmål|Bokmål]] / [[:nn:Nynorsk|Nynorsk]])</small><br />[[:se:Sámegielat|Davvisámegiella]]
|πρωτεύουσα και ασ' όλον τρανόν πολιτεία = [[Όσλο]]
|συντεταγμένας_πρωτεύουσας =
|πολίτευμαν = [[Unitary state|Unitary]] [[Parliamentary system|parliamentary]] [[constitutional monarchy]]
|τίτλοι_τ' ηγετίων = <br />[[Monarch]]<br />[[Πρωθυπουργός]] |
|ονόματα_τ' ηγετίων = <br />[[Harald V]] <br /> [[:en:Jonas Gahr Støre|Jonas Gahr Støre]] ([[:en:Arbeiderpartiet|Ap]]) <small>(2021–)</small>
|επίσημον_θρήσκευμα = όχι
|θέση_έκτασης = 67
|έκταση = 385.207<ref name="kart">{{Cite web|url=https://www.kartverket.no/Kunnskap/Fakta-om-Norge/Arealstatistikk/Arealstatistikk-Norge/|title=Arealstatistics for Norway 2020|publisher=Kartverket, mapping directory for Norway|year=2019|date=2019-12-20|accessdate=2020-03-10|language=no}}</ref>
|ποσοστόν_νερού = %6
|πληθυσμός =
|θέση_πληθυσμού = 120
|χρονία_εκτίμησης_πληθυσμού = 2025
|χρονία_απογραφής_πληθυσμού =
|εκτίμηση_πληθυσμού = 5.594.340<ref name="ssbf">{{Cite web|url=https://www.ssb.no/en/befolkning/folketall/statistikk/befolkning|title=Population, 2025-01-01|publisher=Statistics Norway|date=2025-02-25|accessdate=2025-02-26|language=en}}</ref>
|πυκνότητα_πληθυσμού = 14,5
|θέση_πυκνότητας_πληθυσμού = 213
|τύπος_κυριαρχίας = [[Ανεξαρτησία]]
|γεγονός_κυριαρχίας = - Κηρύχθηκε<br /> - Αναγνωρίστηκε<br />
|ημερομηνίες_κυριαρχίας = <br /> [[7 June]], [[1905]]
|παράδας = [[Norske kroner]]
|κωδικός_παράδων = NOK
|ώρα_ζώνες =
|διαφορά_UTC = +1
|θερινόν_UTC =
|θερινόν_διαφορά_UTC = +2
|top_level_domain = .no
|κωδικός_τηλεφωνατί = 47
|}}
Το '''Βασίλειο τη Νορβηγίας''' εν κράτος ντο ευρίεται σα βόρεια τη [[Ευρώπην|Ευρώπης]] και σα δυτικά τη [[Σκανδιναβικόν Χερσόνησος|Σκανδιναβικού Χερσόνησου]]. Πρωτεύουσαν ατ'ς εν το [[Όσλο]] και τ’ όνεμα τη βασιλέαν ατούν εν [[Χάραλντ Ε'|Χάραλντ ο πέμπτον]]. Η χώρα εχ' πληθυσμόν σα 5.391.369 τ' ανθρώπ'ς (1 Κούντουρονος 2021). Σε έρευνα που έγινε το 2024, το μεγαλύτερο ποσοστό (98%) βρέθηκαν να έχουν όπλο στο χώρο της οικίας τους.
== Γεωγραφίαν ==
Το σκανδιναβικόν η χώρα ευρισκάται σα δυτικά τη [[Σουηδία|Σουηδίας]] και σα νοτιοδυτικά τη [[Ρουσία|Ρουσίας]] και τη [[Φινλανδία|Φινλανδίας]]. Έχ' τρανά πολιτείας το [[Μπέργκεν]] και το [[Σταβάνγκερ]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Norway|Η Νορβηγίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Νορβηγία|Η Νορβηγίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Norway|Χάρτες αση Νορβηγίαν]]'''
* [https://web.archive.org/web/20100408094131/http://www.norway.gr/ Το επίσημον ο ιστοτόπον τη Νορβηγίας σην Ελλάδαν]
==References==
<references>
</references>
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Νορβηγία]]
[[Κατηγορίαν:Ευρώπη|Νορβηγία]]
[[Κατηγορίαν:Σκανδιναβία|Νορβηγία]]
[[Κατηγορίαν:Νορβηγία| ]]
4z4fu4fcel5wseuvfrqy29l90q94rly
Ντόρα Μπακογιάννη
0
238
35388
35283
2023-04-24T07:25:20Z
91.140.26.111
35388
wikitext
text/x-wiki
{| border=1 cellpadding=4 cellspacing=0 class="toccolours" style="float: right; width: 250px; clear: both; margin: 0.5em 0 1em 1em; border-style: solid; border:1px solid #7f7f7f; border-right-width: 2px; border-bottom-width: 2px; border-collapse: collapse; font-size: 100%;"
{| align="left" border="2" style="margin-left:1em"
!colspan="2" bgcolor="#C6E2FF"|<big><big>'''Θεοδώρα Μπακογιάννη'''</big></big>
|-
| style="background:white" align="center" colspan="2" | [[Αρχείον:Dora Bakoyannis-headshot.jpg|326x326εσ]]
|-
|'''Δημόσιον λειτούργημαν:'''
|Υπουργός σα εξ μερέαν
|-
|'''Εγεννέθεν:'''
|[[6 Καλομηνά]], [[1954]]
|-
|'''Εγεννέθεν σην:'''
|Αθήναν
|-
|'''Πολιτικόν Κόμμαν:'''
|Νέα Δημοκρατίαν
|-
!colspan="2" bgcolor="#C6E2FF"|<small><small>''' .'''</small><small>
|}
Ο '''Θεοδώρα Μπακογιάννη''' (''Ντόρα Μπακογιάννη'', εγεννέθεν σα [[6 Καλομηνά|6 τη Καλομηνά]] [[1954]]) εν [[Υπουργός σα εξ μερέαν]] τ' [[Ελλάδα|Ελλάδας]]. Σα [[20 Τρυγομυνά]] τη [[2002]] εξέβεν Δήμαρχος τ' Αθηναίων. Έτον η πρώτη γαρή ντ' εποίκαν δήμαρχον τη πολιτείας. Επέμνε δήμαρχος ους τον [[Κούντουρος|Κούντουρον]] σα [[2006]] τη χρονίαν. Επεκεί έντον Υπουργός σα εξ μερέαν.
Σα 1998 τη χρονίαν υπάντρεψεν κι έντρισεν τον Ισίδωρο Κούβελο. Έτον γαρή τ' Παύλου Μπακογιάννη ως τη θανή του.
== Συνδέσμ ==
* [https://web.archive.org/web/20140104014742/http://www.dimsim.gr/ Επίσημη ιστοσελίδα της Δημοκρατικής Συμμαχίας]
* [http://www.dorabak.gr/ Προσωπικόν σάιτ τη Ντόρας Μπακογιάννη]
[[Κατηγορίαν:Πολιτικός (Ελλάδα)|Μπακογιαννη, Ντορα]]
t516x842d793p4u6g7d5r501ifaxjrh
Ολλανδία
0
239
35946
32414
2024-10-26T05:27:12Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35946
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ολλανδία'''</big></big><br/>''Koninkrijk der Nederlanden''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Netherlands.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Royal_coat_of_arms_of_the_Netherlands.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Netherlands.svg|300px]]
|}
Η '''Ολλανδία''' εν τ' ιστορικόν τ' όνεμαν ασό '''Βασίλειον ασ' Αφκά τα Χώρας''' (σα ολλανδικά: Koninkrijk der Nederlanden) κι εν [[κράτος]] ση δύσαν τ' [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν τ' [[Άμστερνταμ]] κι βασίλισσαν ατ'ς εν η [[Βεατρίκη τη Ολλανδίας]]. Η χώρα έχ' πληθυσμόν σα 16.408.577 τ' ανθρώπ'ς (2008).
== Γεωγραφίαν ==
Η Ολλανδίαν ευρίεται αφκά σον Ατλαντικόν τον Ωκεανόν, σα δυτικά τη [[Γερμανία|Γερμανίας]] και σα βόρεια τη [[Βέλγιον|Βελγί]]. Έχ' τρανά πολιτείας το [[Ρότερνταμ]], τη [[Χάγη|Χάγην]] και την [[Ουτρέχτη|Ουτρέχτην]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Nederland|Η Ολλανδίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ολλανδία|Η Ολλανδίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of the Netherlands|Χάρτες ασην Ολλανδίαν]]'''
* [http://www.government.nl/ Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Ολλανδίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Ολλανδία]]
[[Κατηγορίαν:Ευρώπη|Ολλανδία]]
[[Κατηγορίαν:Ολλανδία| ]]
c2bxv1pfhexnt998yic1f4krvhpn0ek
Ορθόδοξον Εγκλεσία
0
240
34634
31436
2020-10-28T21:05:39Z
Veverve
8190
34634
wikitext
text/x-wiki
[[Αρχείον:Coat of Arms of the Ecumenical Patriarchate Constantinople (St. George's Cathedral, Istanbul).svg|μικρογραφία|223x223εσ|Ο ρωμαίικον ο δικέφαλον ο αϊτέντς σο θύριν τη Πατριαρχείων Κωνσταντινουπόλεως.]]
Τ' '''Ορθόδοξον η Eγκλεσία''' (Ορθοδοξία, Ανατολικόν Ορθόδοξον Eγκλεσία γιά Ορθόδοξον Καθολικόν κι Αποστολικόν Eγκλεσία) λέχκουνταν τ' αυτοκέφαλα και αυτόνομα τα [[Χριστιανισμός|Χριστιανικά]] τ' Eγκλεσίας, π' κανονίσκουνταν ούλ εντάμαν ασα Συνόδαι και θέλνε και δέχκουνταν τ' αποφάσαι π' επαίραν τ' επτά τα πρώτα τ' Οικουμενικά τα Συνόδαι. Αούτα τ' εγκλεσίας ελέπνε τ' αρνάσεμανατουν σον Ιησού Χριστόν, σ' Αποστόλτς ατ' και σ' αποστολικόν τη διαδοχήν.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Orthodox Church|Τ' Ορθόδοξον η Εγκλεσία σα Commons]]'''
* [http://www.ecclesia.gr Επίσημον σελίδαν τ' Ορθοδόξου τη Χριστιανικού τ' Eγκλεσίας σην Ελλάδαν]
[[Κατηγορίαν:Θρησκείαν|Ορθοδοξον Εγκλεσια]]
sunrgkatue71lxc7v3yzkzvh6a4o7m1
Ουγγαρία
0
241
35947
34578
2024-10-26T05:27:20Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35947
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ουγγαρία'''</big></big><br/>''Magyarország''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Hungary.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of Hungary.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Hungary.svg|300px]]
|}
Η '''Δημοκρατίαν τη Ουγγαρίας''' (σα ουγγρικά: ''Magyar Köztársaság'') είναι [[κράτος]] σ' ανατολικά τ' [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Βουδαπέστη]]. Η χώρα εχ' πληθυσμόν σα 10.590.000 τ' ανθρώπ'ς και πρωθυπουργόν ατ'ς εν ο Βίκτορ Όρμπαν.
== Γεωγραφίαν ==
Η Ουγγαρία ευρίεται σα βόρεια τη [[Σερβία|Σερβίας]], σα δυτικά τη [[Ουκρανία|Ουκρανίας]] και τη [[Ρουμανία|Ρουμανίας]], σα νότια τη [[Σλοβακία|Σλοβακίας]] και σα ανατολικά τη [[Αυστρία|Αυστρίας]] και τη [[Κροατία|Κροατίας]]. Απές σα τρανά τα πολιτείας ατ'ς είναι το [[Ντέμπρετσεν]], το [[Σέγκεντ]], το [[Πετς]] και το [[Μίσκολτς|Μισκόλτς]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Hungary|Η Ουγγαρίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ουγγαρία|Η Ουγγαρίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Hungary|Χάρτες ασην Ουγγαρίαν]]'''
* [http://www.magyarorszag.hu/english Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Ουγγαρίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Ουγγαρία]]
[[Κατηγορίαν:Ευρώπη|Ουγγαρία]]
[[Κατηγορίαν:Ουγγαρία| ]]
4rib2e8k0fpbr47rp9q9xkxox10w181
Ουκρανία
0
242
35948
35750
2024-10-26T05:27:24Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35948
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ουκρανία'''</big></big><br/>''Україна''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Ukraine.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Lesser_Coat_of_Arms_of_Ukraine.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 |
|}
Η '''Ουκρανίαν''' (σα ουκρανικά ''Україна'') εν προην [[κράτος]] [https://el.m.wikipedia.org/wiki/%CE%88%CE%BD%CF%89%CF%83%CE%B7_%CE%A3%CE%BF%CE%B2%CE%B9%CE%B5%CF%84%CE%B9%CE%BA%CF%8E%CE%BD_%CE%A3%CE%BF%CF%83%CE%B9%CE%B1%CE%BB%CE%B9%CF%83%CF%84%CE%B9%CE%BA%CF%8E%CE%BD_%CE%94%CE%B7%CE%BC%CE%BF%CE%BA%CF%81%CE%B1%CF%84%CE%B9%CF%8E%CE%BD Ε.Σ.Σ.Δ.] σην ανατολήν [[Ευρώπην]]. Πρωτεύουσαν ατ'ς εν το [[Κίεβο]] και ο πρόεδρον ατ'ς εν ο [[Βολοντίμιρ Ζελένσκι]]. Η χώρα εχ' πληθυσμόν 33,365,000 (2024) ανθρώπ'ς.<ref>https://www.imf.org/en/Publications/WEO/weo-database/2024/April/weo-report?c=926,&s=NGDPD,PPPGDP,NGDPDPC,PPPPC,LP,&sy=2022&ey=2029&ssm=0&scsm=1&scc=0&ssd=1&ssc=0&sic=0&sort=country&ds=.&br=1</ref>
== Γεωγραφίαν ==
Η Ουκρανίαν ευρίεται απεσκέσ' ση [[Μολδαβία|Μολδαβίαν]], τη [[Σλοβακία|Σλοβακίαν]], τη [[Ρουμανία|Ρουμανίαν]], την [[Ουγγαρία|Ουγγαρίαν]], την [[Λευκορουσία|Λευκορουσίαν]], τη [[Πολωνία|Πολωνίαν]] και τη [[Ρουσία|Ρουσίαν]]. Σο νότον συνορεύ' με το [[Μαύρον Θάλασσα|Μαύρον τη Θάλασσαν]]. Έχ' τρανά πολιτείας το [[Χάρκοβο|Χάρκοβον]] και την [[Οδησσός|Οδησσόν]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Ukraine|Η Ουκρανίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ουκρανία|Η Ουκρανίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Ukraine|Χάρτες ασην Ουκρανίαν]]'''
* [https://archive.is/20120523223612/portal.rada.gov.ua/control/en/index Το επίσημον ο ιστοτόπον τη ουκρανικού τη κοινοβουλί]
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Ουκρανία]]
[[Κατηγορίαν:Ευρώπη|Ουκρανία]]
[[Κατηγορίαν:Ουκρανία| ]]
4ngni9k3kub6z99if02roludoxezqj4
Ουσιαστικόν
0
243
35267
31007
2022-12-01T11:50:45Z
LightningLighting
8417
/* Ενικός αριθμός */
35267
wikitext
text/x-wiki
Τα ονομασίας που μεταχειρίζουμες για να φανερώνομε όντα (λ.χ. ''πρόατον''), αντικείμενα (λ.χ. ''τραχτόρ''), δουλίαν (λ.χ. ''σπείρσιμον'') και ιδιότητα (λ.χ. ''μαχητικότητα'') λέγοματα '''ονόματα ουσιαστικά'''.
== Κύρια και κοινά ==
Τα ονόματα τα ουσιαστικά είναι δυο λοέν: κύρια και κοινά.
Εκείνα τα ουσιαστικά που ανήκ'νε σ’έναν όντον για μόνον σ'έναν μέρος, ραχίν, λιμνίν, ποτάμ', λέχκουνταν κύρια ονόματα και γράφκουνταν με κεφαλαίον γράμμαν (λ.χ. ''το Κιλκίς'', ''ο Καύκασος'', ''η Μπαϊκάλη'', ''ο Αξιός''). <br />
Εκείνα τα ονόματα τα ουσιαστικά που επορούν να ανήκ'νε σ’όλια τα όντα και τα αντικείμενα ινός είδους λέχκουνταν κοινά ουσιαστικά ονόματα και γράφκουνταν με μικρό γράμμαν (λ.χ. ''τ’άλογον'', ''το ποτάμ''', ''η πολιτεία'', ''το λιμνίν'').
== Συγκεκριμένα και αφερεμένα ==
Τα ονόματα τα ουσιαστικά χωρίζομε ακόμαν σε συγκεκριμένα και αφερεμένα.
Συγκεκριμένα λέγομε όλια εκείνα τα ουσιαστικά ονόματα που φανερώνε όντα και αντικείμενα πραματικά και ειν ατά που ελέπομε και 'σθανούμεσατα (λ.χ. ''ο μουχτερόν'', ''το ξεραντέρ'', ''το σταφύλ'', ''το τσακέλ''). <br />
Αφερεμένα λέγομε τα ονόματα τα ουσιαστικά που νια ελέπομε, νια αισθανούμεσατα, παραμόνον φαντασκούμεσατα (λ.χ. ''η όραση'', ''ο νους'').
== Ντο καταληξία έχνε τα ουσιαστικά ==
=== Καταληξία για τα αρσενικά ===
{| class="prettytable"
|-
| σε ''-ας'' || ο ψωμάς || ο δουλευτάς
|-
| σε ''-έας'' || ο γραφέας || ο οκνέας
|-
| σε ''-ης'' || ο κεμεντζετζής || ο καϊκτσής
|-
| σε ''-ες '' || ο εργάτες || ο Γιάννες
|-
| σε ''-ον'' || ο άνθρωπον || ο τόνον
|-
| σε ''-ς'' || ο καβαλάρτς || ο αράπς
|}
=== Καταληξία για τα θελκά ===
{| class="prettytable"
|-
| σε ''-α'' || η γλώσσα || η σημασία
|-
| σε ''-η'' || η τιμή || η μηχανή
|-
| σε ''-ε'' || η Ελένε || η αράχνε
|-
| σε ''-ού '' || η αλεπού || η γλωσσού
|-
| σε ''-ω'' || η Δέσπω ||
|}
=== Καταληξία για τα ουδέτερα ===
{| class="prettytable"
|-
| σε ''-αν'' || το γράμμαν || το τσακέλιζμαν
|-
| σε ''-ιμον'' || το σκάψιμον || το βρέξιμον
|-
| σε ''-ον'' || το δέντρον || το φυτόν
|-
| σε ''-ος '' || το πάθος || το πάχος
|-
| σε ''-ιν'' || το παιδίν || το λιμνίν
|}
Έχομε και ουδέτερα ουσιαστικά χωρίς κατάληξην σο ονομαστικόν τη πτώσην. Έχασαν την κατάληξην –ιν γιατί επεκόπεν κεπέμναν χωρίς κατάληξην (λ.χ. ''το πεγάδ'', ''το κουτάλ'', ''το πιρόν'').
== Κλίση ==
=== Κλίση αρσενικών ουσιαστικών ===
==== Ενικός αριθμός ====
Το ονομαστικόν η πτώση σον ενικόν αριθμόν σ' όλα τελειών' για σο ''-ς'' για σο ''-ν''. Το γενικόν η πτώση τ' ενικού τ' αριθμού χαν' το ''-ς'' τ' ονομαστικού τη πτώσης. Εκεί όμως όπου τ' ονομαστικόν η πτώση εχ το ''-ν'' η γενική παιρ' το ''-ς''. Το αιτιατικόν η πτώση σον ενικόν αριθμόν το γνωρίζμαναθε εν το ''–ν'' παντού. Το κλιτικόν η πτώση αποκόφτ το ''-ς'' χε εκεί που εν σο ''-ον'' σο ονομαστικόν την πτώσην την κατάληξην το ''-ν'' και το καταληχτικόν το άτριφτον αλλάζ το ''-ο'' σε ''-ε'' λ.χ. ''ο άνθρωπον'', ''ε άνθρωπε''.
{| class="prettytable"
|-
|-
| ''Ονομαστική'' || ο δουλευτάς || ο αράπς || ο λυριτζής || ο φοιτητής || ο εργάτες || ο άνθρωπον || ο αριθμός || ο Λαζόπουλον
|-
| ''Γενική'' || τη δουλευτά || τ' αράπ || τη λυριτζή || τη φοιτητή || τ' εργάτε (-α) || τ' άνθρωπονος || τ' αριθμού || τη Λαζόπουλονος
|-
| ''Αιτιατική'' || τον δουλευτάν || τον αράπ || τον λυριτζήν || τον φοιτητήν || τον εργάτεν || τον άνθρωπον || τον αριθμόν || τον Λαζόπουλον
|-
| ''Κλητική'' || δουλευτά || αράπ || λυριτζή || φοιτητή || εργάτε (-α) || άνθρωπε || αριθμέ || Λαζόπουλε
|}
Κατά το ''δουλευτάς'' κλίσκουνταν και τα: ''ο καπνάς'', ''ο ψαράς'', ''ο προατάς'', ''ο κυδωνάς'', κτλ. Κατά το ''λυριτζής'': ''ο τενεκετζής'', ''ο καϊκτζής'', ''ο ζουρνατζής'', κτλ. Κατά το ''φοιτητής'': ''ο μαθητής'', ''ο φυτευτής'', κτλ. Κατά το ο άνθρωπον: ο σύντροφον, ο υπάλληλον, ο δάσκαλον κτλ. Κατά τον ''Λαζόπουλον'': ο ''Παρασκευόπουλον'', ο ''Ξανθόπουλον'' κτλ.
Κατά το ''αριθμός'': ''Κερασινός'', ''ζαντός'', ''παλαλός'' κτλ.
==== Πληθυντικός αριθμός ====
Σον πληθυντικόν αριθμόν τα κατάληξια σ’ονομαστικόν την πτώσην είναι ''-ήδες'', ''-άδες'' και ''-ντ''. Σο γενικόν παντού εν η κατάληξη ''-ιον''. Σο αιτιατικόν την πτώσην κάποτε τ’όνομαν εν αμόν ντο εν σο ονομαστικόν. Το άθρον μόνον αλλάζ σο αιτιατικόν την πτώσην και τα ονόματα που σο ονομαστικόν την πτώσην κ’έχνε το ''-ς'' το αιτιατικόν η πτώση παίρατο, λ.χ. ''οι δασκάλ'', ''τοι δασκάλτς'', ''οι παιδάντ'', ''τοι παιδάντς'' κτλ. Το κλητικόν η πτώση εν χωρίς άρθρον όπως και τ’ονομαστικόν και μόνον όνταν βάλομε το άρθρον, χωρίεται λ.χ. ''ε λυριτζήδες, αρχινέστε το παίξιμον''.
{| class="prettytable"
|-
|-
| ''Ονομαστική'' || οι δουλευτάδες || οι αράπ || οι λυριτζήδες || οι φοιτητάδες || οι εργάτ || οι ανθρώπ || οι αριθμοί|| οι Λαζοπουλάντ
|-
| ''Γενική'' || τη δουλευταδίων || τ' αραπίων || τη λυριτζήδων || τη φοιτηταδίων || τ' εργατίων || τη ανθρωπίων || τ' αριθμίων || τη Λαζοπουλαντίων
|-
| ''Αιτιατική'' || τοι δουλευτάδες || τοι αράπς || τοι λυριτζήδες || τοι φοιτητάδες || τ' εργάτς || τ' ανθρώπς || τ' αριθμούς || τοι Λαζοπουλάντ(α)ς
|-
| ''Κλητική'' || δουλευτάδες || αράπ || λυριτζήδες || φοιτητάδες || εργάτ || ανθρώπ || αρίθμ || Λαζοπουλάντ
|}
=== Κλίση θελκών ουσιαστικών ===
==== Ενικός αριθμός ====
Τα θελκά ουσιαστικά σο γενικόν τη πτώσην τ’ ενικού αριθμού όλεα παίρνε το ''-ς''.
{| class="prettytable"
|-
|-
| ''Ονομαστική'' || η μάνα || η χαρά || η γλώσσα || η αλεπού || η στρωμοθήκη || η κουτζή || η γνως || η λέξη || η Ελένε
|-
| ''Γενική'' || τη μάνας || τη χαράς || τη γλώσσας || τη αλεπούς || τη στρωμοθήκης || τη κουτζής || τη γνως || τη λέξης || τη Ελένες
|-
| ''Αιτιατική'' || την μάναν || την χαράν || την γλώσσαν || την αλεπούν || την στρωμοθήκην || την κουτζήν || την γνως || την λέξην || την Ελένεν
|-
| ''Κλητική'' || μάνα || χαρά || γλώσσα || αλεπού || στρωμοθήκη || κουτζή || γνως || λέξην || Ελένε
|}
==== Πληθυντικός αριθμός ====
Σον πληθυντικόν αριθμόν παρατηρούμε πως όλεα τα θελκά που 'κ παρέσταινε έμψυχα ουδετεροποιούνταν.
{| class="prettytable"
|-
|-
| ''Ονομαστική'' || οι μανάδες || τα χαράντας || τα γλώσσας || τ' αλεπούδια || τα στρωμοθήκας || τα κουτζίδια/<br />οι κουτζἰδες || τα γνώσια || τα λέξεις
|-
| ''Γενική'' || τη μαναδίων || τη χαραντίων || τη γλωσσίων || τ' αλεπουδίων || τη στρωμοθηκίων || τη κουτζιδίων || τη γνωσίων || τη λεξίων
|-
| ''Αιτιατική'' || τοι μανάδες || τα χαράντας || τα γλώσσας || τ' αλεποὐδια || τα στρωμοθήκας || τα κουτζίδες || τα γνώσια || τα λέξεις
|-
| ''Κλητική'' || μανάδες || χαράντας || γλώσσας || αλεποὐδια || στρωμοθήκας || κουτζίδες || τα γνώσια || τα λέξεις
|}
=== Κλίση ουδέτερων ουσιαστικών ===
==== Ενικός αριθμός ====
{| class="prettytable"
|-
|-
| ''Ονομαστική'' || το χωρίον || το παιδίν || το γάλαν || το γράψιμον || το μέλ(ιν)
|-
| ''Γενική'' || τη χωρί(ου) || τη παιδί(ου) || τη γαλατί(ου) || τη γραψιματί(ου) || τη μελί(ου)
|-
| ''Αιτιατική'' || το χωρίον || το παιδίν || το γάλαν || το γράψιμον || το μέλ(ιν)
|-
| ''Κλητική'' || χωρίον || παιδίν || γάλαν || γράψιμον || μέλ
|}
==== Πληθυντικός αριθμός ====
{| class="prettytable"
|-
|-
| ''Ονομαστική'' || τα χωρία || τα παιδία || τα γάλατα || τα γράψιματα || τα μέλια
|-
| ''Γενική'' || τη χωρίων || τη παιδίων || τη γαλατίων || τη γραψιματίων || τη μελίων
|-
| ''Αιτιατική'' || τα χωρία || τα παιδία || τα γάλατα || τα γράψιματα || το μέλια
|-
| ''Κλητική'' || χωρία || παιδία || γάλατα || γράψιματα || μέλια
|}
== Βιβλιογραφίαν ==
* Αντονιάδου-Κεσίδου, Β. 2002: ''Μαθήματα Ποντιακής Διαλέκτου''. Θεσσαλονίκη. ISBN 960-343-619-4
* Τοπχαράς, Κ. 1928, 1932: ''Ι Γραματικι Τι Ρομεικυ Τι Ποντεικυ Τι Γλοςας''. Ρόστοβ-Ντον. ISBN 960-343-448-5
[[Κατηγορίαν:Γραμματικήν|Ουσιαστικόν]]
6lxlsu6lc6blstrjr3rqp6nyb6w9s50
Βόρεια Μακεδονία
0
244
36291
36288
2025-07-21T16:42:52Z
Apokar
10158
χώρες που συνορεύει
36291
wikitext
text/x-wiki
{| border="1" align="right" cellpadding="4" cellspacing="0" width="300" style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+'''Βόρεια Μακεδονία'''
|-
| colspan="2" style="background:#efefef;" align="center" |[[Αρχείον:Flag of Macedonia.svg|125px]] [[Αρχείον:Coat of arms of Macedonia.svg|100px]]
|-
| colspan="2" align="center" |[[Αρχείον:Europe-Republic of North Macedonia.svg|300px]]
|}
Η '''Βόρεια Μακεδονία''', (σα μακεδονικά: ''Severna Македонија'') εν [[κράτος]] ντο ευρίεται σα νοτιοανατολικά τη [[Ευρώπην|Ευρώπης]] που αποσπάστεικαι από την Γιουγκοσλαβία το 1991. Πρωτεύουσα του κράτους εν τα Σκόπια.
== Γεωγραφία ==
Η χώρα συνορεύει βόρεια με τη [[Σερβία]] (και το [[Κόσοβο]]), δυτικά με την [[Αλβανία]], σα νότια με την [[Ελλάδα]] και σ' ανατολικά με τη [[Βουλγαρία]].
== Σύνδεσμοι ==
* '''[[Αρχείον:Commons-logo.svg|10px]] [[c:North Macedonia|Η Β. Μακεδονία σα Commons]]'''
{{Κράτη τη Ευρώπης}}{{ΠΡΟΚΑΘΟΡΙΣΜΕΝΗΤΑΞΙΝΟΜΗΣΗ:Σκόπια}}
[[Κατηγορίαν:Κράτη]]
24spy0fm5a2txji0csymkq9r3avdw3j
Πάτερ Ημών
0
245
36318
36209
2025-10-05T20:29:18Z
~2025-27744-02
12014
Πρόσθεσα κάποια πραγματα
36318
wikitext
text/x-wiki
'''Πάτερ Ημών''' λέχκεται η ευχήν τ' έδωκεν ο Αρχάγγελος Δημήτριος εις μαθητάδες ατ' (κατά [[:el:s:Κατά Ματθαίον#στ'|Ματθαίον Ευαγγέλιον, κεφάλαιον 6.9-13]]).
== Το κείμενον ==
=== Πρωτότυπο στα αρχαία ελληνικά ===
:{{Polytonic|Πάτερ Ἡμῶν ὁ ἐν τοῖς οὐρανοῖς
:ἁγιασθήτω τὸ ὄνομά Σου·
:ἐλθέτω ἡ Βασιλεία Σου·
:γενηθήτω τὸ θέλημά Σου,
:ὡς ἐν οὐρανῷ καὶ ἐπὶ τῆς γῆς·
:τὸν ἄρτον ἡμῶν τὸν ἐπιούσιον δὸς ἡμῖν σήμερον·
:καὶ ἄφες ἡμῖν τὰ ὀφειλήματα ἡμῶν,
:ὡς καὶ ἡμεῖς ἀφίεμεν τοῖς ὀφειλέταις ἡμῶν·
:καὶ μὴ εἰσενέγκῃς ἡμᾶς εἰς πειρασμόν,
:ἀλλὰ ῥῦσαι ἡμᾶς ἀπὸ τοῦ πονηροῦ.
:[Ὅτι σοῦ ἐστιν ἡ βασιλεία καὶ ἡ δύναμις καὶ ἡ δόξα εἰς τοὺς αἰῶνας·
:ἀμήν.]}}
=== Στα νέα Ελληνικά ===
:Πατέρα μας, που βρίσκεσαι στους ουρανούς,
:Ας αγιασθεί (ας δοξασθεί) το Όνομα Σου
:Ας έρθει η βασιλεία Σου
:Ας γίνει το θέλημά Σου
:όπως στον ουρανό (από τους αγγέλους)
:έτσι και στη γη (από τους ανθρώπους)
:Δώσε μας σήμερα τον απαραίτητο για τη ζωή μας άρτο.
:Και άφησε μας τα χρέη μας (συγχώρησε τις αμαρτίες μας)
:όπως κι εμείς αφήνομε τους χρεωστές μας (όπως και εμείς συγχωρούμε αυτούς που μας έφταιξαν).
:Και μη μας βάλεις σε δοκιμασία.
:αλλά απομάκρυνε μας από τις πονηριές (από το κακό).
:[Γιατί σ' εσένα ανήκει παντοτινά η βασιλεία, η δύναμη και η δόξα στους αιώνες. Αμήν.]
=== Σ' Αραμαϊκά ===
:ܐܰܒܽܘܢ ܕܒܰܫܡܰܝܳܐ
:ܢܶܬܩܰܕܰܫ ܫܡܳܟ
:ܬܺܐܬܶܐ ܡܰܠܟܽܘܬܳܟ
:ܢܶܗܘܶܐ ܨܶܒܝܳܢܳܟ
:ܐܰܝܟܰܢܳܐ ܕܒܰܫܡܰܝܳܐ ܐܳܦ ܒܐܰܪܥܳܐ
:ܗܰܒ ܠܰܢ ܠܰܚܡܳܐ ܕܣܽܘܢܩܳܢܰܢ ܝܰܘܡܳܢܳܐ
:ܘܰܫܒܽܘܩ ܠܰܢ ܚܰܘܒܰܝܢ ܘܰܚܬܳܗܰܝܢ
:ܐܰܝܟܰܢܳܐ ܕܐܳܦ ܚܢܰܢ
:ܫܒܰܩܢ ܠܚܰܝܳܒܰܝܢ
:ܠܳܐ ܬܰܥܠܰܢ ܠܢܶܣܝܽܘܢܳܐ
:ܐܶܠܳܐ ܦܰܨܳܐ ܠܰܢ ܡܶܢ ܒܺܝܫܳܐ
:ܡܶܬܽܠ ܕܕܺܝܠܳܟܺ ܗܝ ܡܰܠܟܽܘܬܳܐ
:ܚܰܝܠܳܐ ܘܬܶܫܒܽܘܚܬܳܐ
:ܠܥܳܠܰܡ ܥܳܠܡܺܝܢ ܐܰܡܺܝܢ܀
=== Σα Λατινικά ===
:''Pater Noster, qui es in caelis,
:''Sanctificetur nomen tuum.
:''Adveniat regnum tuum,
:''Fiat voluntas tua,
:''sicut in caelo, et in terra.
:''Panem nostrum quotidianum da nobis hodie,
:''Et dimitte nobis debita nostra,
:''sicut et nos dimittimus debitoribus nostris.
:''Et ne nos inducas in tentationem,
:''Sed libera nos a malo.
:''Amen.
=== Σ' Ιταλικά ===
:Padre Nostro, che sei nei cieli,
:Sia santificato il tuo nome.
:Venga il tuo regno,
:Sia fatta la tua volontà,
:Come in cielo, così in terra.
:Dacci oggi il nostro pane quotidiano,
:E rimetti a noi i nostri debiti,
:Come noi li rimettiamo ai nostri debitori.
:E non ci indurre in tentazione,
:Ma liberaci dal male.
:Amen..
[[Κατηγορίαν:Θρησκείαν|Πατερ ημων]]
ndd2iqbz84j753zjrxyjygx5l9de0dz
Πέφτ
0
246
31013
30894
2013-03-07T18:07:28Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 177 interwiki links, now provided by [[d:|Wikidata]] on [[d:q129]] [[M:User:Addbot/WDS|(translate me)]]
31013
wikitext
text/x-wiki
Η '''Πέφτ''' (σ' [[Ελλενικόν γλώσσα|ελλενικά]]: ''Πέμπτη'') εν το πέμπτον ημέρα τ' [[Εβδομάδα|εβδομάδας]].
== Ο λαόν για τη Πέφτ ==
:''«Θα κοιμούμ' όλεν την Πέφτ''
:''τ' αρνί'μ κάτς φοούμε κλέφτ.»''
:''«Δούλεψον όλεν την Πεφτ''
:''και όσον ντο θελτ΄ς, κουρφεύτ.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Thursday|Πέφτ σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Πέμπτη|Η Πέφτ (Πέμπτη) σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Πρότυπον:Ημέρας τη εβδομάδας}}
[[Κατηγορίαν:Ημέρας τη εβδομάδας|Πέφτ]]
qjd2pxnpf4fzt8rhtkmvxntojhey4ep
Πίνδαρος
0
247
35158
31014
2022-04-23T19:58:24Z
NikonZ7II
9257
35158
wikitext
text/x-wiki
[[Αρχείον:Bust of Pindar.jpg|μικρογραφία|222x222εσ|Πίνδαρος]]
Ο '''Πίνδαρος''' (522 - 443 π.Χ.) έτον τζιπ τρανός αρχαίος Έλλενας λυρικός ποιητής. Εγεννέθεν σα Κυνοσκηφάλαι, έναν χωρίον ση [[Θήβα|Θήβαν]] καικά. Έτον γιος τη Δαίφαντονος και τη Κλεοδίκης. Τα παραδόσαι τ' οικογένειασατ' εφέκαν τ' ιχνάραι ατούν σην ποίησηνατ'. Έζηνε με το γράψιμον τ' ωδίων.
== Έργον ==
Τ' ωδία τ' εποίκε ο Πίνδαρον εν πολλά λοέν. Σην [[Βιβλιοθήκη τη Αλεξάνδρειας|Βιβλιοθήκην τ' Αλεξάνδρειας]] τ' υστερνής αρχαιότητας εθέκαν τα σε κατηγορίας:
* ''Ύμνοι'', 1 βιβλίο
* ''Παιάνες'', 1 βιβλίο
* ''Διθύραμβοι'', 2 βιβλία
* ''Προσωδία'', 1 βιβλίο
* ''Παρθένια'', 3 βιβλία
* ''Υπορχήματα'' 1 βιβλίο
* ''Εγκώμια'', 1 βιβλίο
* ''Θρήνοι'', 1 βιβλίο
* ''Επινίκια'', 4 βιβλία
Οσήμερον απ' ατά επέμναν τα ''Επινίκια'' μαναχόν. Τ' άλλα είν' γνωστά ασα χόρα γραψίματα τ' ευρέθαν σην [[Αίγυπτος|Αίγυπτον]].
* ''Ολυμπιόνικοι''
* ''Νεμεόνικοι''
* ''Πυθιόνικοι''
* ''Ισθμιόνικοι''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Pindar|Πίνδαρος σα Commons]]'''
* '''[[Αρχείον:Wikisource-logo.svg|13px]] [[s:el:Πίνδαρος|Τ' έργον τη Πίνδαρονος σην Βικιθήκην]]'''
[[Κατηγορίαν:Έλλενας (αρχαιότητα)|Πινδαρος]]
fn77djgnek7wc4wgwwzd3gm6o5r5tlp
Παρασκευήν
0
248
31018
30586
2013-03-07T18:08:13Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 174 interwiki links, now provided by [[d:|Wikidata]] on [[d:q130]] [[M:User:Addbot/WDS|(translate me)]]
31018
wikitext
text/x-wiki
Η '''Παρασκευήν''' (σ' ελλενικά: ''[[Ελλενικόν γλώσσα|Παρασκευή]]'') εν τ' έκτον ημέρα τ' [[Εβδομάδα|εβδομάδας]].
== Ο λαόν για τη Παρασκευήν ==
:''«Η Παρασκευή κλαμένον''
:''λημονεύ'νε αποθαμένον.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Friday|Παρασκευήν σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Παρασκευή|Η Παρασκευήν (Παρασκευήν) σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Πρότυπον:Ημέρας τη εβδομάδας}}
[[Κατηγορίαν:Ημέρας τη εβδομάδας|Παρασκευήν]]
aryqxylwm52embd247vsbq2jxsp5oqo
Παϊπούρτ
0
249
36743
36577
2025-12-16T08:36:22Z
Εὐθυμένης
2777
36743
wikitext
text/x-wiki
[[Image: Bayburt, 69000 Bayburt Merkez-Bayburt, Turkey - panoramio (4).jpg|thumb|300px|right| Bayburt]]
[[image:Bayburt Turkey Provinces locator.gif|thumb|230px|Το Παϊπούρτ σον χάρτεν τη Τουρκίας]]
Το '''Παϊπούρτ''' (λέγνατο και '''Μπαϊμπούρτ''' ή '''Βαϊβούρτη''', σα τουρκικά: ''Bayburt'') εν πολιτείαν σ' ανατολήν τη [[Τουρκία|Τουρκίας]], σην [[Αργυρούπολη|Αργυρούπολην]] και σο [[Ερζερούμ|Ερζερούμ]] απεσκέσ' και σον ποταμόν [[Άκαμψης|Τσορούχ]] σουμά. Εν η πρωτεύουσαν τ' επαρχίας τη Παϊπούρτ κι εχ' πληθυσμόν σα 87.745 τ' ανθρώπς (2005).
== Ιστορία ==
Σα χρόναι τη [[Ρωμανίαν|Ρωμανίας]] έτον σα σύνορα τη χώρας και ο πολέμαρχον Θεόδωρον Γαβράς εποίκενατ' κάστρον. <ref>''Εγκυκλοπαίδεια του ποντιακού ελληνισμού. Ιστορία - λαογραφία - πολιτισμός'', 1988, Τεύχος 1 (Α-Ε), σελ. 172.</ref> Σα χρόναι τη τρανού τη πολέμονος κι επεκεί ([[Μικρασιατικόν καταστροφή|Μικρασιατικόν καταστροφή]]), ο τόπον έντον σημείον μαζέματι τ' Έλλενων για να χατεύκουνταν σην [[Ελλάδα|Ελλάδαν]]. <ref>''Εγκυκλοπαίδεια του ποντιακού ελληνισμού. Ιστορία - λαογραφία - πολιτισμός'', 1988, Τεύχος 1 (Α-Ε), σελ. 173.</ref>
== Αναφοράντας ==
<div style="font-size:90%;"><references/></div></div>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Παιπουρτ}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας]]
[[Κατηγορίαν:Πόντος]]
k60u27q0fl4j23d3ct317iq1euk5xxr
Πειραιάς
0
250
36869
34889
2025-12-16T10:08:28Z
Εὐθυμένης
2777
36869
wikitext
text/x-wiki
[[Εικόναν:Πόλη του Πειραιά β.jpg|thumb|Η πολιτεία τη Πειραιά]]
Ο '''Πειραιάς''' (αρχ. ''Πειραιεύς'') εν το τρίτο ασα τρανά τα [[Ελλάδα|ελλενικά]] τα πολιτείας. Οσήμερον (2001) εχ' πληθυσμόν 175.697 ανθρώπς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Πειραιας}}
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας]]
ebscmdx31epfgp6hv68ikkopov09jon
Ποιητικήν
0
251
31023
30440
2013-03-07T18:09:51Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 126 interwiki links, now provided by [[d:|Wikidata]] on [[d:q482]] [[M:User:Addbot/WDS|(translate me)]]
31023
wikitext
text/x-wiki
== Ποιητικήν ==
=== Αρχαίοι ===
* [[Πίνδαρος]]
=== Νέοι ===
* [[Γιόχαν Βόλφγκανγκ φον Γκαίτε]]
[[Κατηγορίαν:Πολιτισμόν|!]]
[[Κατηγορίαν:Λογοτεχνίαν|!]]
e3zowi6lzsc58pw8i7amt8ukna1bsw8
Πολωνία
0
252
35949
35096
2024-10-26T05:27:28Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35949
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Πολωνία'''</big></big><br/>''Rzeczpospolita Polska''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Poland.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Herb_Polski.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Poland.svg|300px]]
|}
[[Αρχείον:LocationPoland.svg|right|thumb|Πολωνία]]
Η '''Δημοκρατίαν τη Πολωνίας''' (σα πολωνικά ''Rzeczpospolita Polska'') είναι [[κράτος]] σην ανατολήν τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Βαρσοβία]] και ο πρόεδρον ατ'ς εν ο [[Λεχ Καζίνσκι]]. Η Πολωνία έχ' πληθυσμόν σα 38 483 957 (2014) τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Η Πολωνίαν ευρίεται ανάμεσα ση [[Γερμανία|Γερμανίαν]], τη [[Τσεχία|Τσεχίαν]], τη [[Σλοβακία|Σλοβακίαν]], την [[Ουκρανία|Ουκρανίαν]], την [[Λευκορωσία|Λευκορωσίαν]], τη [[Λιθουανία|Λιθουανίαν]] και τη [[Ρωσία|Ρωσίαν]]. Έχ' τρανά πολιτείας τη [[Κρακοβία|Κρακοβίαν]] και την [[Βροτσλάβ]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Poland|Η Πολωνίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Πολωνία|Η Πολωνίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Poland|Χάρτες αση Πολωνίαν]]'''
* [https://web.archive.org/web/20141101033604/http://www.polen.gov.pl/ Το επίσημον ο ιστοτόπον τη πολωνικού τη κυβέρνησης]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Πολωνία]]
[[Κατηγορίαν:Ευρώπη|Πολωνία]]
[[Κατηγορίαν:Πολωνία| ]]
drrhsm7pljof57ukwz9q5w3awdl4bx1
Ποντιακά
0
253
2626
2625
2009-03-06T15:29:31Z
MF-Warburg
53
1 revision
2626
wikitext
text/x-wiki
#REDIRECT [[Ποντιακόν λαλίαν]]
hh70627f411imxoabivk216h6jm4bp9
Ποντιακά Παρχάραι
0
254
37395
36579
2025-12-20T13:47:55Z
Εὐθυμένης
2777
37395
wikitext
text/x-wiki
{{WikidataCoord|display=title}}
[[Εικόναν:Pontic Panorama.jpg|thumb|400px|Τα Ποντιακά τα Παρχάραι σα 2007 τη χρονίαν]]
'''Ποντιακά Παρχάραι''' (γράφνατα και '''παρχάρε''', σα [[Ελλενικόν γλώσσα|ελλενικά]] ''Ποντιακά Όρη'', σα τούρκικα ''Doğu Karadeniz Dağları'') λέχκεται η ψηλορραχέα τη [[Πόντος|Πόντονος]] τ' ευρίεται σο βόρειον τη [[Τουρκία|Τουρκίαν]].
== Τ' όνεμαν ==
Σα [[Τουρκικόν λαλία|τούρκικα]] τα παρχάραι 'κ εκράτεσαν το παλαιόν τ' ελλενικόν τ' όνεμανατουν και λέχκουνταν ''Doğu Karadeniz Dağları'', άμα σ' άλλα γλώσσας το ''«ποντιακά»'' επέμνεν, λχ σ' αγγλικά (''Pontic Mountains''), σα γερμανικα (''Pontisches Gebirge''), σα γαλλικά (''Chaîne pontique''), σα ιταλικά (''Monti del Ponto'') κλπ.
== Γεωγραφία ==
Τα παρχάραι χωρίζνε τον Πόντον σε δυο κομμάται, το παραλιακόν και τ' απές μερέαν, ντο εχ ραχία.
Δαβαίν'νε τον Πόντον ασην ανατολήν ση δύσαν, ώσαμε το Αραράτ και τον Κάυκασον σην [[Γρουζία|Γρουζίαν]]. Το δέβασμανατουν εν παράλληλον με το [[Μαύρον Θάλασσα|Μαύρον τη Θάλασσαν]], που 'κ εν μακρά. Τ' ασούλτς ψηλόν σημείον εν σα 3.942 μέτρα, σο ραχίν [[Κατσκάρ Νταγ]] (γιά ''Kavron'').
[[Εικόναν:KackarDagi fromNorth hory.jpg|thumb|Τ' ασ' ούλτς τρανόν ραχίν τη παρχαρίων: [[Κατσκάρ Νταγ]]]]
Ο Αντίταυρος αχπάσκεται σο βόρειον τη [[Καππαδοκία|Καππαδοκίαν]], δαβαίν τη χώραν σ' ανατολικά και χωρίζ' τον Πόντον και την [[Αρμένια|Αρμένιαν]]. Ασ' άλλ τη μερέαν ση δύσαν εν ο [[Αργαίος]] που χωρίζ' τον Πόντον και την Καππαδοκίαν.
Σην [[Κασταμονή|Κασταμονήν]] και την [[Τόσια|Τόσιαν]] απεσκές εν το ραχίν Ιλκάς Νταγ (2.900 μέτρα). Ση θάλασσαν κοντά, αφκά ασό [[Αλατσάμ]] (Alaçam) εν το Δουλμέν Νταγ, ένα ραχίν το 'κ εν ατόσο τρανόν. Σα νοτιοανατολικά τη Λαντίκ (Λαοδίκεια) ευρίεται το Κεμέρ Νταγ (2.200 μ.). Αβούτο το ραχίν χωρίζ τοι ποταμούς [[Ίρες]] (Yeşilırmak) και [[Λύκος (ποτάμι)|Λύκος]] (Çürüksu cayi).
Δυτικά ασή [[Σεβάστεια|Σεβάστειαν]] (Sivas) ευρίεται ολίγον απάν ασόν [[Άλυς|Άλυ]] ποταμόν (Kızılırmak) το ραχίν Ακ Νταγ (2.730 μ.). Σην [[Τοκάτη|Τοκάτην]] και την Σεβάστειαν απεσκές εν το Γιλντίζ Νταγ (2.500 μ.), το Ντουμανλί Νταγ (2.700 μ.) και το Ασμασί Νταγ (2.400 μ.).
Σα νοτιοδυτικά τη Νικόπολης εν γραγμένον η ψηλορραχέα Αγικελεσί Τεπέ (2.370 μ.). Νότια απ' ατουκά και πέρα ασόν Άλυ ευρίεται το ραχίν Ντελί Νταγ (1.800 μ.). Κι άλλο βόρεια κι ασόν Λύκον κιαλαπάν είν τα ραχία Καρά Γκιολ (3.035 μ.) και Καρά Νταγ (3.095 μ.).
Σην [[Κρώμνη|Κρώμνην]] καικά ευρίεται ο Θέχες (Deveboynu Tepe, 3.060 μ.) και σην [[Σάντα|Σάνταν]] το Ματούρ Νταγ (2.850 μ.). Ασόν [[Άκαμψης|Άκαμψη]] (Çoruh) απάν ευρίουνταν τα ραχία Κεμέρ Νταγ, Σογανλί Νταγ, Κιρκλάρ Νταγ, Βαρτσεμπέκ και Κατσκάρ. Ασόν Άκαμψη αφκά, σα πολιτείας [[Παϊπούρτ]] και Ισπίρ απεσκές και ασό Ερζερούμ απάν ευρίουνταν τα ραχία Γιαβούρ Νταγλαρί (3.000 μ.) και Πτουμλού Νταγ (2.800 μ.).
== Γεωλογία και ποτάμαι ==
[[Εικόναν:Rural pontic house.jpg|thumb|Οσπίτ σα παρχάραι]]
Η [[Ανατολία]] εχ τρία τρανά ψηλορραχέας σα γιάντς ατς. Τα Ποντιακά τα Παρχάραι εν το βορειοανατολικόν η ψηλορραχέα. Το νότιον εν ο [[Ταύρος]], ντ' ευρίεται σο [[Μεσόγειον θάλασσα|Μεσόγειον τη θάλασσα]]. Τα δυο τα ψηλορραχέας ανήκνε γεωλογικά σ' αλπιδικόν το δίπλωμαν, το οποίον αχπάσκεται σα Πυρηναία κι απλώνεται ώσαμε τα Ιμαλάια. Τα τεκτονικά τα πλάκας εκαικά λαήσκουνταν πολλά και για τ' ατό έχ' τρανά σεισμούς.
Το δέβασμαν τη ποταμίων περνά ασην ανατολήν ση δύσαν. Όντες φτάν'νε σα γιαζία παίρνε βόρειον κατύθυνσην και τελείνταν σο [[Μαύρον θάλασσα|Μαύρον τη θάλασσαν]]. Τρανόν ποτάμι εν ο Άλυς. Άμον ντ' εφτάει ο Ίρες, αέτς κι ο Άλυς περνάει αση χερσόνησον σην θάλασσαν απές. Το τρίτον η χερσόνησον ευρίεται σην [[Σινώπη|Σινώπην]] κοντά, κι εν ασ' άλλα τα δυο κιάλλο μικρόν.
== Τέρεν και ==
* [[Μαύρον θάλασσα]]
* [[Πόντος]]
{{authority control}}
[[Κατηγορίαν:Πόντος|Ποντιακα Παρχαραι]]
[[Κατηγορίαν:Ραχία|Ποντιακα Παρχαραι]]
[[Κατηγορίαν:Βικιπαίδεια:Arthron]]
1e4wr39k3pyg4mo6rs7jquql70jfk61
Ποντιακόν λαλίαν
0
255
36578
36167
2025-12-15T19:08:13Z
Εὐθυμένης
2777
/* Συνδέζμ */
36578
wikitext
text/x-wiki
{| border="1" cellpadding="2" cellspacing="0" align="right" width="300"
! colspan="2" bgcolor="lawngreen" style="font-size:120%"|Ποντιακά / Ρωμαίικα
|-
| valign="top"|Συντισένατεν σην
|[[Αζερμπαϊτζάν|Αζερμπαϊτζάν]], [[Γερμανία|Γερμανία]], [[Γρουζία|Γρουζία]], [[Αρμενία]], [[Ελλάδα|Ελλάδα]], [[ΗΠΑ|ΗΠΑ]], [[Καζακστάν|Καζακστάν]], [[Καναδάς|Καναδάς]], [[Ουκρανία|Ουκρανία]], [[Ρουσία|Ρουσία]], [[Τουρκία|Τουρκία]].
|-
| valign="top"|Συνολικοί ομιλητές
|1.058.068<!--http://www.ethnologue.com/show_language.asp?code=pnt Ethnologue.com
''PONTIC: a language of Greece'' ασό Ethnologue: Languages of the World, 15th Edition.-->
|-
| valign="top"|Γενετική τη γλώσσας
|Ινδοευρωπαϊκά γλώσσας<br>
:Αρχαία Ελλενικά <br>
::Αττικά ελλενικά <br>
:::'''Ποντιακά'''
|-
! colspan="2" bgcolor="lawngreen"|Επίσημα
|-
| valign="top"|Επίσημον γλώσσαν
| [[Πόντος]] (1917-1919) (παλαιάν),<br>[[Σ.Σ.Σ.Δ.]] (παλαιάv)
|-
| valign="top"|ISO 639-3
| valign="top"|[https://web.archive.org/web/20080617020111/http://www.sil.org/iso639-3/documentation.asp?id=pnt pnt]
|-
| valign="top"|SIL
| valign="top"|PNT
|}
'''Το ποντιακόν τη λαλίαν''' εκαλάτσεβαν και καλατσέβνε οι [[Ρωμανίαν|Έλλενες Ρωμαίοι]] τη [[Πόντος|Πόντονος]]. Οι απογόν' ατουν σο σημερ'νόν τη [[Τουρκία|Τουρκίαν]] και τη [[Ρουσία|Ρουσίαν]] λέγ'ν' ατα «[[Ρωμανίαν|ρωμαίικα]]» (σην Τουρκίαν: ''romeyika'' για ''rumca'', σην Ρουσίαν: ромейка). Οι Ρωμαίοι τ' Ελλάδας λέγ'ν' ατα «ποντιακά». Έτον επίσημην γλώσσαν ση Δημοκρατίαν τη Πόντονος και σην [[Σύνδεζμος Σοβετικών Σοσιαλιστικών Δημοκρατίων|ΣΣΣΔ]]<ref>[https://web.archive.org/web/20090523024534/http://athens.indymedia.org/front.php3?lang=el&article_id=624246]</ref>.
== Θέκεμαν ==
Τ' οσημερνόν τ' επίσημον νούνισμαν λεει το ποντιακόν η λαλίαν εν παρακλάδ τ' αρχαίου τ' ελλενιστικού τη Κοινής κι αποκουμπισκάται σα ιωνικά τ' ελλενικά. Έχ' απές [[Βικιπαίδεια:Λεχτικόν|λεχτικόν]] και [[Βικιπαίδεια:Γραμματικήν|γραμματικήν]] ασ' άλλα γλώσσας, άμον τ' οθωμανικόν ('κ εν τα τούρκικα τ' οσημερνού τη Τουρκίας), το ρούσικον κι άλλα γλώσσας τη [[Καύκασος|Καύκασονος]].
Ο γλωσσολόγον ο Μανόλης ο Τριανταφυλλίδης, χωρίζ' ατη σε τρία ιδιωματικά ομάδας:
#τ' οινουντιακά ιδιώματα ασα τόπε τ' Οινόης (τουρκ. ''Ünye'', επηρεάσταν πολλά ασα νεοελλενικά)
#τραπεζουντιακά ιδιώματα (επηρεάσταν ολίγον ασα νεοελλενικά)
#χαλδιώτικα ιδιώματα (επηρεάσταν πολλά ασ' οθωμανικά τα τούρκικα)
Ασ' άλλ τη μερέαν πα σα παλαιά τα χρόναι πολλοί ελογαρίαζαν πως το ποντιακόν η λαλία εν ιδιαίτερον ελλενικόν γλώσσαν. Αέτς λ.χ. ο Κώστας Τοπχαράς έγραψεν σο βιβλίονατ ''Ι Γραματικι Τι Ρομεικυ Τι Ποντεικυ Τι Γλοςας'', το ποντιακόν η λαλίαν ανεπτύχτεν σε διαφορετικά κοινωνικο-οικονομικά συνθήκας κι εδιαμόρφωσεν τατεινεθή λεχτικόν, φτογκολογίαν κλπ που διαφέρνε αση δημοτικήν και το λεχτικόνατς κι επηρεάστεν ασά ξενικά τα γλώσσας άμον ντο ίνεται σ' ούλαι τα γλώσσας, ακόμαν και σην δημοτικήν.<ref>Τοπχαράς, Κ. 1928, 1932: ''Ι Γραματικι Τι Ρομεικυ Τι Ποντεικυ Τι Γλοςας''. Ρόστοβ-Ντον, σελ. 18-19 ISBN 960-343-448-5</ref> Ο ρωμαίικον ο ποιητής και μεταφραστής Λεόντιος Κυριάκοβ ασην [[Ουκρανία|Ουκρανίαν]] έγραψεν πως τα ρωμαίικα τ' Ουκρανίας χωρίζνε αση δημοτικήν το καλατσέβνε σην Ελλάδαν, άμα τα δύα γλώσσας ένι καρδιακά αδέρφια κι έχνε έναν αρχαίον μάναν.<ref>[http://users.sch.gr/ioakenanid/leontijkyrjakov.htm ''Λεόντιος Κυριάκοβ, Ρωμιός ποιητής της Ουκρανίας'' ασον έργονατ: «ΚΑΛΥΣΉΝ», Donbas 1995.]</ref>
== Αλφάβητον ==
Τα ρωμαίικα τη Πόντονος 'κ έχνε επίσημον αλφάβητον, άμα πολλοί [[Ρωμανίαν|Ρωμαίοι]] κουλανεύνε τ' ελλενικά τα γράμματα και θέκνε και διακριτικά για προφέρνε σωστά τα φτόγκους ατοί 'π δεαβάζνατα. Οι Ρωμαίοι τη [[Τουρκία|Τουρκίας]] και σα παλαιά δημοκρατίας τη Σ.Σ.Σ.Δ. κουλανεύνε τ' ατεινέτερα τα γράμματα.
Ο [[Κώστας Τοπχαράς|Κώστας Τοπχαράς]] εποίκεν κι εκουλενέυτεν σα βιβλίανατ ιδιαίτερον ποντιακόν αλφάβητον, το «φωνητικόν αλφάβητον» το οποίον αποκουμπισκάται σα ελλενικά τα γράμματα. Επλοποίησεν την ορθογραφίαν «τ' ιστορικού τ' αλφάβητου», εφήκεν τα «περισσά» τα γράμματα και σημείον για τον τόνον 'κ έβαζεν. Εκράτησεν το ''Υ'', το οποίο προφέρκεται ''ΟΥ'' [u]. Τα ''Ξ'' και ''Ψ'' μεταβάλκουνταν σε ''ΚΣ'' και ''ΠΣ'' για να «λείπ' η σύγχιση». Κιαραέτς επέμνεν το αλφάβητον με τα ακόλουθα γράμματα:<ref>Τοπχαράς, Κ.: ''Ι Γραματικι Τι Ρομεικυ Τι Ποντεικυ Τι Γλοςας'', σελ. 2-5.</ref>
{| class="wikitable"
|-
! Φωνητικόν<br>αλφάβητον !! Τούρκικον<br>αλφάβητον !! Ρούσικον<br>αλφάβητον !! IPA !! Παράδειγμαν
|-
| Α α || A a || А а || [a] || ρομεικ'''α''', romeyik'''a''', ромейк'''а'''
|-
| Β β || V v || В в || [v] || κατι'''β'''ενο, kati'''v'''eno, кати'''в'''ено
|-
| Γ γ || Ğ ğ || Г г || [ɣ] [ʝ] || '''γ'''ανεβο, '''ğ'''anevo, '''г'''анево
|-
| Δ δ || DH dh || Д д || [ð] || '''δ'''οντι, '''dh'''onti, '''д'''онти
|-
| Ε ε || E e || Е е || [e] || '''ε'''γαπεςα, '''e'''ğapesa, '''е'''гапеса
|-
| Ζ ζ || Z z || З з || [z] || '''ζ'''αντος, '''z'''antos, '''з'''антос
|-
| ΖΖ ζζ || J j || Ж ж || [ʒ] || πυρ'''ζζ'''υας, bur'''j'''uvas, бур'''ж'''уас
|-
| Θ θ || TH th || С с, Ф ф, Т т || [θ] || '''θ'''εκο, '''th'''eko, '''т'''еко
|-
| Ι ι || İ i || И и || [i] || τοςπ'''ι'''τοπον, tosp'''i'''topon, тосп'''и'''топон
|-
| Κ κ || K k || К к || [k] || '''κ'''αλατζεμαν, '''k'''alaceman, '''к'''алачеман
|-
| Λ λ || L l || Л л || [l] || '''λ'''αλια, '''l'''alia, '''л'''алиа
|-
| Μ μ || M m || М м || [m] || '''μ'''ανα, '''m'''ana, '''м'''ана
|-
| Ν ν || N n || Н н || [n] || ολιγο'''ν''', oliğо'''n''', олиго'''н'''
|-
| Ο ο || O o || О о || [o] || τεμετερ'''ο'''ν, temeter'''o'''n, теметер'''о'''н
|-
| Π π || P p || П п || [p] || εγα'''π'''εςα, eğa'''p'''esa, ега'''п'''еса
|-
| Ρ ρ || R r || Р р || [ɾ] || '''ρ'''ομεικα, '''r'''omeyika, '''р'''омейка
|-
| Σ ς || S s || С с || [s] || καλατζεπ'''ς'''ον, kalacep'''s'''on, калачеп'''с'''он
|-
| ΣΣ ςς || Ş ş || Ш ш || [ʃ] || '''ςς'''ερι, '''ş'''eri, '''ш'''ери
|-
| Τ τ || T t || Т т || [t] || νος'''τ'''ιμεςα, nos'''t'''imesa, нос'''т'''имеса
|-
| ΤΖ τζ || C c || Ч ч || [ʤ] || καλα'''τζ'''εμαν, kala'''c'''eman, кала'''ч'''еман
|-
| ΤΣ τς || Ç ç || Ц ц || [tʃ] || μανι'''τς'''α, mani'''ç'''a, мани'''ц'''а
|-
| Υ υ || U u || У у || [u] || ν'''υ'''ς, n'''u'''s, н'''у'''с
|-
| Φ φ || F f || Ф ф || [f] || εμορ'''φ'''α, emor'''f'''a, эмор'''ф'''а
|-
| Χ χ || H, KH (sert H) || Х х || [x] || '''χ'''αςον, '''h'''ason, '''х'''асон
|}
== Αναφοράντας ==
<div style="font-size:90%;"><references/></div></div>
== Συνδέζμ ==
* [http://www.ethnologue.com/show_language.asp?code=PNT Ethnologue.com]
* [https://web.archive.org/web/20110526032426/http://www.ptolemaida.net/anamnhseis-almpoum-21.html Pontos Kültürü] - Το βιβλίον τη Ομέρ Ασάν online σην ptolemaida.net
* [http://www.ocena.info/ Ocena.info] - Σελίδαν τη ρωμαίικου χωρί τ' Ότσενας, σην Τραπεζούνταν σουμά (σα ποντιακά, με τούρκικα γράμματα)
{{authority control}}
[[Κατηγορίαν:Πόντος|Ποντιακα]]
[[Κατηγορίαν:Λαλίαν|Ποντιακα]]
af9pzskdbqcxwiuaaf9o2lf9fe4qa0f
Πορτογαλία
0
256
35950
34866
2024-10-26T05:27:32Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35950
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Πορτογαλία'''</big></big><br/>''República Portuguesa''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Portugal.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Portugal.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Portugal.svg|300px]]
|}
Το '''Πορτογαλικόν η Δημοκρατίαν''' (σα πορτογαλικά: ''República Portuguesa'') εν [[κράτος]] σα νότια τη [[Ευρώπην|Ευρώπης]], σ' [[Ιβηρικόν Χερσόνησος|Ιβηρικόν τη χερσόνησον]]. Πρωτεύουσαν ατ'ς εν η [[Λισαβώνα]] και ο πρωθυπουργόν ατ'ς εν ο [[Αντόνιο Κόστα]]. Η Πορτογαλίαν ευρίεται σον Ατλαντικόν τον Οκεανόν, σα δυτικά τη [[Ισπανία|Ισπανίας]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Portugal|Η Πορτογαλίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Πορτογαλία|Η Πορτογαλίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Portugal|Χάρτες αση Πορτογαλίαν]]'''
* [https://web.archive.org/web/20170713105624/http://www.portugal.org/ Το επίσημον ο ιστοτόπον τη Πορτογαλίας]
* [http://www.portugal.gov.pt/Portal/EN/ Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Πορτογαλίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Πορτογαλία]]
[[Κατηγορίαν:Ευρώπη|Πορτογαλία]]
[[Κατηγορίαν:Ιβηρία|Πορτογαλία]]
[[Κατηγορίαν:Πορτογαλία| ]]
fqd90of3sl6wcu3fuz0xuppiyxmd7k6
Πρωτεύουσα
0
257
31399
31034
2013-03-07T23:31:12Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 2 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5119]] [[M:User:Addbot/WDS|(translate me)]]
31399
wikitext
text/x-wiki
[[Αρχείον:Ελληνική Βουλή Αθήνα.jpg|thumb|Τ' Ελλενικόν η Βουλή σην Αθήναν εν έδρα τη κυβέρνησης τ' Ελλάδας]]
'''Πρωτεύουσα''' λέγομε την πολιτείαν ντο εν πολιτικόν και διοικητικόν κέντρον [[Κράτος|κράτονος]] ή τόπονος και έδρα τη κυβέρνησης. Άμαν πολλά κράτη έχνε την έδραν τη κυβέρνησης ατούν σ' άλλον πολιτείαν, οξουκά ασήν πρωτεύουσαν. Αέτς λ.χ. η [[Ολλανδία]] έχ' πρωτεύουσαν το [[Άμστερνταμ]] κι έδραν τη κυβέρνησης τη [[Χάγη|Χάγην]].<br />
Τ' ασ' ουλτς τρανόν πολιτείαν 'κ πρεπ' να εν η πρωτεύουσαν. Αέτς λ.χ. η [[Τουρκία]] έχ' πρωτεύουσαν την [[Άγκυραν]], κι ασ' ουλτς τρανόν πολιτείαν την [[Κωνσταντινούπολην]].
[[Κατηγορίαν:Γεωγραφίαν|Πρωτευουσα]]
7o67fu0jko1n3devvm5ztcolemqaefc
Πόλη
0
258
36342
33119
2025-12-15T13:50:22Z
Εὐθυμένης
2777
36342
wikitext
text/x-wiki
{{delete|too short}}
[[Αρχείον:גשר מעריב Maariv bridge (181).JPG|thumb|Πόλη]]
{{polytonic|Η '''Πόλη''' εν τόπος.}}
* [[Πόλεις]]
[[Κατηγορίαν:Πολιτείας| ]]
7bo9778ubyms4g89pdkcnuagffukbif
Πόντος
0
259
35277
34365
2022-12-17T20:39:40Z
Εὐθυμένης
2777
([[c:GR|GR]]) [[File:Tr ponto2.gif]] → [[File:Flag of Pontus (2).svg]]
35277
wikitext
text/x-wiki
:''Αβούτο εν γράψιμον για τον τόπον τη Πόντονος. Για τη θάλασσαν δεαβάστεν: [[Εύξεινος Πόντος]]''
[[Εικόναν:Mithridates VI of Pontus.jpg|thumb|Μιθριδάτες ο Τρανόν (Ευπάτωρ)]]
[[Εικόναν:Pontosmap el.svg|thumb|Γεωγραφίαν του Πόντου]]
[[Εικόναν:Flag of Pontus (2).svg|thumb|Σημαίαν τ' αυτόνομου Ποντιακού Δημοκρατίας (1917-1919)]]
'''Πόντον''' λέγομε τον τόπον τη Μ. Ασίας ντ' ευρισκάται σο βορράν τ' οσημερνού τη [[Τουρκία|Τουρκίας]]. Εν σο [[Μαύρον θάλασσα|Μαύρον τη θάλασσαν]] αφκά κι επαίρεν τόνεμαν ατ' ασ' αρχαίον τόνεμαν τη θάλασσας: [[Εύξεινος Πόντος|Ευξείνος Πόντος]].
== Γεωγραφία ==
Ο Πόντος έx̌ σχήμαν αμόν το τοξάρ και ευρισκάται απαναφκά σο [[Βατούμι]] (πολιτεία τ' οσημερνού τη [[Γεωργία|Γεωργίας]]) και σην [[Σινώπη|Σινώπην]] απεσκές. Σα νότεα έx̌ σύνορα (σα 200-300 χιλιομέτρα) τα ψηλορραχέας τη Σκυδίση, τη Παρυάδρη και τη Αντιταύρονος ([[Ποντιακά Παρχάραι]]).
== Μυθολογίαν ==
Κατά τ' ελλενικόν τη μυθολογίαν σ' αβούτον τον τόπον εζήνεν ο θεόν [[Πόντος (μυθολογία)|Πόντος]], ο γιον τ' [[Αιθέρας|Αιθέρα]] και τη [[Γαία|Γαίας]]. Σην θάλασσαν αυτέν εταξίδεψεν και ο [[Ιάσονας]] όντες εχπάστεν τ' [[Αργοναυτικόν εκστρατεία|Αργοναυτικόν την εκστρατείαν]]. Ο [[Αυτόλυκος]] (έτον απές σ' αυτοίν τ' Αργοναυτικού τ' εκστρατείας) ίδρυσεν τη [[Σινώπη|Σινωπή]].
== Ιστορίαν ==
Σον 8ο π.Χ. αιώνα οι Έλλενες εποίκαν τα πρώτα ελλενικά πολιτείας σον Πόντον. Πολλά τ' ατεινέτερων εχπάσταν ασ' ανθρώπς τη [[Μίλητος|Μίλητονος]]. Το 363 π.Χ. εποίκαν «Το βασίλειον τη Πόντονος». Ο πρώτον βασιλέας έτον ο Μιθριδάτες ο Κτίστες (302-266 π.Χ.). Ο τελευταίον βασιλέας έτον ο Μιθριδάτες ΣΤ' ο Τρανόν, ο Ευπάτωρ (132–63 π.Χ.). Αντιφέρκουτον κι επολέμησεν 30 χρόνε το [[Ρωμαϊκόν αυτοκρατορίαν|Ρωμαϊκόν τη αυτοκρατορίαν]] και σο τέλος έχασεν τον πόλεμον. Σον 1ο π.Χ. αιώνα ο Πόντος εγέντον ρωμαϊκόν επαρχίαν ''Bithynia et Pontus'' με πρωτεύουσαν την [[Αμάσεια|Αμάσειαν]] και οι Έλλενοι τη Μαύρη τη Θάλασσας, όπως και όλ' οι Έλλενοι, γάλια γάλια ερχίνεσαν ν' ονομάζνε τον νιαυτόνατουν «Ρωμαίοι».
Σο Βυζαντινόν τη περίοδο (1204-1461) οι Κομνηνοί εποίκαν βασίλειον την [[Αυτοκρατορία τη Τραπεζούντας]] σε τόπον σην Σινώπην και σην [[Γεωργία|Γεωργίαν]] απές.
Ση δύσαν τη τρανού τη πολέμονος σα 1918 τη χρονίαν, οι Έλλενες ορθόδοξοι τη Πόντονος εγράσεψαν ν' εφτάγνε ανεξάρτητον κράτος (αυτόνομον, ή συνομοσπονδίαν με τ' Αρμενάντ' εντάμαν). Άμα η [[Ελλάδα|Ελλάδαν]] έχασεν τ' ελλενοτουρκικόν πόλεμον (1919-1922) και με τη συνθήκη τη Λωζάνης (1922) οι Έλλενες χριστιανοί τη Πόντονος εξεριζώθαν ασην πατρίδαν ατουν κι εχατεύταν σην Ελλάδαν, κι εκεί έδωκανατουν τ' όνεμα «Πόντιοι». Σον τ' ατεινέτερων τον δρόμον, πολλοί επέθαναν και πολλοί εσκοτώθαν. Για τ' ατό οσήμερον λέγομε για τη [http://el.wikipedia.org/wiki/Γενοκτονία_των_Ελλήνων «Γενοκτονία τη Ποντίων»].
== Τέρεν ==
*[[Εύξεινος Πόντος]]
[[Κατηγορίαν:Ελλενικόν ιστορίαν|Ποντος]]
[[Κατηγορίαν:Μαύρον Θάλασσα|Ποντος]]
119lwpn1w8uun4j7si954jmqq752w3n
Ρήμαν
0
260
32536
31037
2015-10-12T11:04:04Z
79.103.7.101
/* Αρχαιότροπες καταλήξεις */
32536
wikitext
text/x-wiki
'''Ρήμαν''' λέγουμε τα λέξεις που φανερών'νε ντο εφτάει (''«γράφω»''), για ντο παθάν (''«βρέχουμαι»'') το [[υποκείμενον]].
== Το ενεργητικόν και το παθητικόν η μορφήν ==
Τα ρήματα που τελειών'νε σο πρώτον τ' ενικόν πρόσωπον τ' ενεστώτα σε ''-ω'' είναι σο ενεργητικόν τη μορφήν και κοφτά λέγουματα «ενεργητικά». Άμαν σο νόημαν όλεα ενεργητικά 'κ είναι, λ.χ. ''υπάρχω''. Πολλά όμως ασ' ατά φανερών'νε πως το υποκείμενο ενεργεί, λ.χ. ''τρέχω, πλέκω''.
Τα ρήματα που τελειών'νε σο πρώτον τ' ενικόν πρόσωπον τ' ενεστώτα σε ''-ωμαι'' ή σε ''-ουμαι'' είναι σο παθητικόν τη μορφήν και κοφτά λέγουματα «παθητικά». Λέγουμε κι ατά πα παθητικά επειδή και πολλά ασ' ατά φανερών'νε πως το υποκείμενον κατ' παθάν, λ.χ. ''τυρανίουμαι, βρέχουμαι'' κ.τ.λ. Έχουμε άμαν ρήματα παθητικά που 'κ φανερών'νε πάθεμαν αλλά ενέργειαν, λ.χ. ''εργάζομαι''.
== Οι χρόνοι ==
Η πράξη και το πάθεμαν τη ρηματί 'κ γίνταν πάντα σον ίδιον καιρόν. Για τ' ατό και σο ρήμαν διακρίνουμε διάφορα χρόνους, που κυρίως είναι τρία:
# Το ατωριζνόν (''γράφω'')
# Το μελλούμενον (''θα γράφω'')
# Το περαζμένον (''έγραψα'')
== Αρχαιότροπες καταλήξεις ==
* Το ανακατώνομαι εγέντον <u>ανακατούμαι</u>.
* Το απλώνομαι εγέντον <u>απλούμαι</u>.
== Τέρεν ==
* [[Επίρρημαν]]
* [[Ουσιαστικόν]]
* [[Σύνδεσμον]]
== Βιβλιογραφία ==
* Τοπχαράς, Κ. 1928, 1932: ''Ι Γραματικι Τι Ρομεικυ Τι Ποντεικυ Τι Γλοςας''. Ρόστοβ-Ντον. ISBN 960-343-448-5
[[Κατηγορίαν:Γραμματικήν|Ρημαν]]
en592gw5l02wa1mk49kn7f5iu3jvask
Ρουμανία
0
261
35952
34868
2024-10-26T05:27:36Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35952
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ρουμανία'''</big></big><br/>''România''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Romania.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Romania.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Romania.svg|300px]]
|}
Η '''Ρουμανία''' (σα ρουμάνικα ''România'') εν [[κράτος]] σην ανατολήν [[Ευρώπην]]. Πρωτεύουσαν ατ'ς εν το [[Βουκουρέστι]] και ο πρόεδρον ατ'ς εν ο [[Κλάους Γιοχάνις]]. Η χώρα εχ' πληθυσμόν σα 19,042,936 (2011) τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Η Ρουμανίαν ευρίεται απεσκέσ' ση [[Μολδαβία|Μολδαβίαν]], ση [[Ουκρανία|Ουκρανίαν]], ση [[Βουλγαρία|Βουλγαρίαν]], [[Ουγγαρία|Ουγγαρίαν]], και ση [[Σερβία|Σερβίαν]]. Σ' ανατολήν συνορεύ' με το [[Μαύρον Θάλασσα|Μαύρον τη Θάλασσαν]]. Τζιπ τρανά ρουμανικά πολιτείας εν το [[Ιάσιο|Ιάσιον]], η [[Κλουζ-Ναπόκα]], η [[Κωστάντζα]], και το [[Γαλάτσι|Γαλάτσιν]] .
== Συνδέζμαι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:Romania|Η Ρουμανίαν σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ρουμανία|Η Ρουμανίαν σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Romania|Χάρτες αση Ρουμανίαν]]'''
* [https://web.archive.org/web/20061004115558/http://www.gov.ro/engleza/ Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Ρουμανίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Ρουμανία]]
[[Κατηγορίαν:Ευρώπη|Ρουμανία]]
[[Κατηγορίαν:Βαλκάνια|Ρουμανία]]
[[Κατηγορίαν:Ρουμανία| ]]
0rmb7jj59kpgkzbjr5s9oo81hduv5wj
Ρωμανίαν
0
262
35420
34234
2023-06-07T03:46:17Z
Zemant
2522
/* Ρωμαϊκόν Αυτοκρατορίαν */
35420
wikitext
text/x-wiki
[[Εικόναν:Byzantine Empire animated.gif|thumb|Η Ρωμανίαν απαρχής ους το τέλος.]]
'''Ρωμανίαν''' (τ'επίσημον τ'όνομαν έτον: ''Βασιλεία τῶν Ῥωμαίων'', οσήμερον λέγν'ατέν οι [[ιστορία|ιστοριογράφ']] '''Βυζαντινόν Αυτοκρατορία''' ή '''Βυζάντιον''' μαναχόν) έτον τ' όνομαν είνος αυτοκρατορίας ντο είςεν [[πρωτεύουσα|πρωτεύουσαν]] την [[Ρώμη|Ρώμην]] και την [[Κωνσταντινούπολη|Κωνσταντινούπολην]]. Ασού εξέβεν ασο [[Ρωμαϊκόν Αυτοκρατορία|Ρωμαϊκόν την Αυτοκρατορίαν]] λέγν' ατέν και '''Ανατολικόν Ρωμαϊκόν Αυτοκρατορία'''. Ασο Ρωμαϊκόν την αυτοκρατορία, εγεννέθεν το ''«Εκχριστιανισμένον Ρωμαϊκόν κράτος τη Ανατολής»''. Όνταν είςεν την αφεντίαν η δυναστείαν τη [[Ηράκλειος|Ηρακλείου]] η χώραν ελλάγεν κι έντον ''«Εξελληνισμένον αυτοκρατορία τη χριστιανικού τη Ανατολής»''. Ασό [[1204]] κι επεκεί, ασού επαίραν το βασιλοσκάμν' οι [[Λατίνοι]], εγεννέθεν τ' ''«Ελλενικόν το Βυζαντινόν η Αυτοκρατορία»''<ref>''Ιστορία του Ελληνικού έθνους'', τόμ. Ζ', σελ. 5</ref>.
== Ιστορίαν ==
Όντες οι Έλλενοι ενίκησαν σον [[Τρωικόν πόλεμον|Τρωικόν πόλεμος]], ένοιξεν ο δρόμος προς τον Άξενον Πόντον. Αέτς έλεγαν οι Έλλενοι σην αρχήν το [[Μαύρον Θάλασσα|Μαύρον την Θάλασσαν]]. Όντες εγνώρτσαν καλλίον ατέν, ονόμασαν ατέν «[[Εύξεινος Πόντος|Εύξεινον Πόντον]]» (το φιλόξενον η θάλασσα).
=== Βασίλειον τη Πόντονος ===
Το 363 π.Χ. εποίκαν «Το βασίλειον τη Πόντονος». Ο πρώτον βασιλέας έτον ο Μιθριδάτες ο Κτίστες (302-266 π.Χ.). Ο τελευταίον βασιλέας έτον ο Μιθριδάτες ΣΤ΄ ο Μεγάλον, ο Ευπάτωρ (132–63 π.Χ.). Αντιφέρκουτον κι επολέμησεν 30 χρόνε το [[Ρωμαϊκόν Αυτοκρατορίαν|Ρωμαϊκόν τη αυτοκρατορίαν]] και σο τέλος έχασεν τον πόλεμον.
=== Ρωμαϊκόν Αυτοκρατορίαν ===
Ασό 63 τη χρονίαν π.Χ. ο Πόντον έντονε μέρος τη Ρωμαϊκού τη αυτοκρατορίας και οι Έλλενοι τη Μαύρη τη Θάλασσας, όπως και όλ οι Έλλενοι, γάλια γάλια ερχίνεσαν να ονομάζνε τον νιαυτόνατουν «[[Ρωμαίοι]]».
== Παραπομπές ==
<references/>
[[Κατηγορίαν:Ρωμανίαν|*]]
[[Κατηγορίαν:Ιστορίαν]]
7bvkf3oxp1pm0af7wslh99c76bm8fug
Πρότυπον:Σ' άλλα γλώσσας
10
263
37407
33698
2025-12-30T21:58:38Z
Таёжный лес
10003
Ο Таёжный лес μετακίνησε τη σελίδα [[Σ' άλλα γλώσσας]] στην [[Πρότυπον:Σ' άλλα γλώσσας]]
33698
wikitext
text/x-wiki
<div style="font-size:150%;font-weight:bold; text-align: center">
Η Βικιπαίδεια σ' άλλα γλώσσας
----
</div>
<div style="font-size:115%; padding-left:5px; margin-bottom: 0.5em; text-align: left">
<!--Biggest Wikipedias-->
'''100 000 +'''<br/></div>
<div style="font-size:95%; padding-left:7px; margin-bottom: 1em; text-align: left">
[[:en:|English]] •
[[:de:|Deutsch (German)]] •
[[:ja:|日本語 (Japanese)]] •
[[:fr:|Français (French)]] •
[[:pl:|Polski (Polish)]] •
[[:fi:|Suomi (Finnish)]] •
[[:sv:|Svenska (Swedish)]] •
[[:nl:|Nederlands (Dutch)]] •
[[:es:|Español (Spanish)]] •
[[:it:|Italiano (Italian)]] •
[[:no:|Norsk (Norwegian Bokmål)]] •
[[:pt:|Português (Portuguese)]] •
[[:ru:|Русский (Russian)]] •
[[:zh:|中文 (Chinese)]]
</div>
<!--Πολλά τρανά Βικιπαίδειας Wikipedias-->
<div style="font-size:100%; padding-left:7px; margin-bottom: 0.5em; text-align: left">
<!--Τρανά Βικιπαίδειας-->
'''10 000 +'''</div>
<div style="font-size:95%; padding-left:7px; margin-bottom: 0.5em; text-align: left">
[[:ar:|العربية (Arabic)]] •
[[:bg:|Български (Bulgarian)]] •
[[:bs:|Bosanski (Bosnian)]] •
[[:ca:|Català (Catalan)]] •
[[:cs:|Česká (Czech)]] •
[[:cy:|Cymraeg (Welsh)]] •
[[:da:|Dansk (Danish)]] •
[[:el:|Ελληνικά (Greek)]] •
[[:eo:|Esperanto]] •
[[:et:|Eesti (Estonian)]] •
[[:eu:|Euskara (Basque)]] •
[[:gl:|Galego (Galician)]] •
[[:he:|עברית (Hebrew)]] •
[[:hi:|हिन्दी (Hindi)]] •
[[:hr:|Hrvatski (Croatian)]] •
[[:hu:|Magyar (Hungarian)]] •
[[:io:|Ido]] •
[[:id:|Bahasa Indonesia (Indonesian)]] •
[[:is:|Íslenska (Icelandic)]] •
[[:jv:|Basa Jawa (Javanese)]] •
[[:ko:|한국어 (Korean)]] •
[[:la:|Latina (Latin)]] •
[[:lb:|Lëtzebuergesch (Luxembourgish)]] •
[[:lt:|Lietuvių (Lithuanian)]] •
[[:lv:|Latviešu (Latvian)]] •
[[:ms:|Bahasa Melayu (Malay)]] •
[[:nds:|Plattdüütsch (Low Saxon)]] •
[[:nn:|Norsk (Norwegian Nynorsk)]] •
[[:fa:|فارسی (Persian)]] •
[[:ro:|Română (Romanian)]] •
[[:scn:|Sicilianu (Sicilian)]] •
<!--'''Simple''' • -->
[[:sk:|Slovenčina (Slovak)]] •
[[:sl:|Slovenščina (Slovenian)]] •
[[:sr:|Српски (Serbian)]] •
[[:su:|Basa Sunda (Sundanese)]] •
[[:ta:|தமிழ் (Tamil)]] •
[[:th:|ไทย (Thai)]] •
[[:tr:|Türkçe (Turkish)]] •
[[:uk:|Українська (Ukrainian)]] •
[[:vi:|Tiếng Việt (Vietnamese)]]
</div>
<div style="font-size:100%; padding-left:7px; margin-bottom: 0.5em; text-align: left">
<!--Βικιπαίδειας με πολλά γραψίματα-->
'''1 000 +'''</div>
<div style="font-size:95%; padding-left:7px; margin-bottom: 1em; text-align: left">
[[:af:|Afrikaans]] •
[[:ast:|Asturianu (Asturian)]] •
[[:be:|Беларуская (Belarusian)]] •
[[:csb:|Kaszëbsczi (Kashubian)]] •
[[:fy:|Frysk (Western Frisian)]] •
[[:ga:|Gaeilge (Irish)]] •
[[:ia:|Interlingua]] •
[[:jbo:|Lojban]] •
[[:ku:|Kurdî (Kurdish)]] •
[[:kw:|Kernewek (Cornish)]] •
[[:zh-min-nan:|Bân-lâm-gú (Southern Min)]] •
[[:oc:|Occitan]] •
[[:sa:|संस्कृत (Sanskrit)]] •
[[:sco:|Scots]] •
[[:tt:|Tatarça (Tatar)]] •
[[:ur:|اردو (Urdu)]] •
[[:wa:|Walon (Walloon)]] •
[[:yi:|יידיש (Yiddish)]] •
[[:zh-classical:|古文/文言文 (Classical Chinese)]]
<!--Βικιπαίδειας με πολλά γραψίματα-->
</div>
<div style="font-size:95%; padding-left:7px; margin-bottom: 0.5em; text-align: left">
<!--Βικιπαίδειας με ολίγα γραψίματα-->
'''100 +'''</div>
<div style="font-size:95%; padding-left:7px; margin-bottom: 1.5em; text-align: left">
[[:cr:|Nehiyaw (Cree)]] •
[[:cu:|словѣньскъ (Old Church Slavonic)]] •
[[:got:|gutisk (Gothic)]] •
[[:mi:|Māori]]
</div>
<div style="padding-right:10px; text-align: center; border-top:1px solid #e6d5ed;">
'''[[m:Complete list of language Wikipedias available|Κατάλογον μ' όλεα τα Βικιπαίδειας]]''' –
'''[[:en:Wikipedia:Multilingual coordination|Συνεργίαν τη γλωσσίων]]'''
</div><noinclude>
<!--this text is not included on the main page. It is only included here to remove the page from Special:Deadendpages. -->
----
Αβούτη η σελίδαν εν κομμάτ' τ'[[Αρχικόν σελίδα|αρχικού τη σελίδας]]
[[Κατηγορίαν:Wp/pnt|Σ' άλλα γλώσσας]]
</noinclude>
j48ax60vaqcwru0x9wavu9hl4a6lovp
Σάββαν
0
264
31041
30610
2013-03-07T18:12:21Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 175 interwiki links, now provided by [[d:|Wikidata]] on [[d:q131]] [[M:User:Addbot/WDS|(translate me)]]
31041
wikitext
text/x-wiki
Το '''Σάββαν''' (σ' [[Ελλενικόν γλώσσα|ελλενικά]]: ''Σάββατο'') εν τ' έβδομον ημέρα τ' [[Εβδομάδα|εβδομάδας]].
== Ο λαόν για το Σάββαν ==
:''«Σάββαν δέβ'ασην δουλείας''
:''κι'έλα εφτάμε εμείς φιλίας.»''
:''«Την Σάββαν αν έεις δουλείαν,''
:''τούλωσον, μ΄εβγάλ΄ς λαλίαν.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Saturday|Σάββαν σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Σάββατο|Το Σάββαν (Σάββατο) σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Πρότυπον:Ημέρας τη εβδομάδας}}
[[Κατηγορίαν:Ημέρας τη εβδομάδας|Σάββαν]]
oq4tz2uc2iiuzdwe5c2hhzdlkkp408x
Σερβία
0
265
35954
35657
2024-10-26T05:27:44Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35954
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Σερβία'''</big></big><br/>''Република Србија''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| width="140" align="center" | [[Αρχείον:Flag of Serbia.svg|125px]]
| width="140" align="center" | [[Αρχείον:Coat of arms of Serbia.svg|125px]]
|-
| width="140" align="center" |
| width="140" align="center" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Location of Serbia in Europe (2006–2008).png|300px]]
|}
Η '''Δημοκρατίαν τη Σερβίας''' (σα σέρβικα: ''Република Србија'') εν [[κράτος]] ντο ευρίεται σο Βαλκανικόν τη χερσόνησον, σα νοτιοανατολικά τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν το [[Βελιγράδι|Βελιγράδ']]. Η χώρα εχ' πληθυσμόν σα 9.396.411 τ' ανθρώπ'ς (με το [[Κόσοβο|Κόσοβον]]).
== Γεωγραφίαν ==
Η Σερβία ευρίεται σα βόρεια τη [[ΠΓΔΜ]], σα δυτικά τη [[Βουλγαρία|Βουλγαρίας]] και τη [[Ρουμανία|Ρουμανίας]], σα νότια τη [[Ουγγαρία|Ουγγαρίας]] και σα ανατολικά τη [[Κροατία|Κροατίας]], τη [[Βοσνία και Ερζεγοβίνη|Βοσνίας]] και τη [[Μαυροβούνιον|Μαυροβουνιατί]]. Σα τρανά τα πολιτείας τη χώρας ανήκ'νε η [[Νις]] και το [[Κραγκούγιεβατς]].
== Ιστορίαν ==
Σα 822 τη χρονίαν ο Αϊνάρδος (βιογράφον τη [[Καρλομάγνος|Καρλομάγν']]) εφτάει γράψιμον για το πρώτον το σερβικόν το ντεβλέτι. Ζουπάνον (''Župan'') εκείνη την εποχήν έτον ο Στρογιμίρ. Γύρω σα 1000 τη χρονίαν τ' οσημερινόν η Σερβίαν έντον φελίν τη [[Ρωμανίαν|Βυζαντινού τη Αυτοκρατορίας]]. Σα 1040 ο Στέφαν Βόγισλαβ έντον βυζαντινόν άρχοντας. Οι Σερβάντ επολέμησαν τ' [[Οθωμανικόν αυτοκρατορίαν|Οθωμανικόν Αυτοκρατορίαν]], άμαν σο τέλος έχασαν τον πόλεμον και σα 1459 έντανε μέρος ατ'ς για 345 χρόνε.
Σα 1918 τη χρονίαν οι Σερβάντ ένταν ένα με τοι Κροατάντ και τοι [[Σλοβενία|Σλοβενάντ]] κι εποίκαν εντάμαν κενούρεον πολυεθνικόν το «Βασίλειον τη Σερβαντίων, τη Κροαταντίων και τη Σλοβεναντίων». Ατό το κράτος επαίρεν σα 1929 τη χρονίαν τ' όνεμα «Γιουγκοσλαβία». Μετά τα 1945 έντον κομμουνιστικόν χώραν και η Κροατίαν έντον μιαν ασα Δημοκρατίας ατ'ς. Σα 1991 τη χρονίαν ερχίνεσαν τρανά πολέμ' και σο τέλος η Γιουγκοσλαβίαν εταγουτεύτεν.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Serbia|Η Σερβίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Σερβία|Η Σερβίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Serbia|Χάρτες αση Σερβίαν]]'''
* [https://web.archive.org/web/20100328050736/http://www.serbia.sr.gov.yu/ Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Σερβίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Σερβία]]
[[Κατηγορίαν:Ευρώπη|Σερβία]]
[[Κατηγορίαν:Βαλκάνια|Σερβία]]
[[Κατηγορίαν:Σερβία| ]]
kosdbbt492yzn6z4qkt63n9redpxlk4
Σινώπη
0
266
36744
36735
2025-12-16T08:37:05Z
Εὐθυμένης
2777
36744
wikitext
text/x-wiki
[[Εικόναν:Sinop Turkey Provinces locator.gif|thumb|230px|right|Η Σινώπη σον τούρκικον τον χάρτεν.]]
Η '''Σινώπη''' (τουρκ. ''Sinop'') εν οσήμερον [[Τουρκία|τούρκικον]] πολιτείαν τη κι ευρίεται σην επαρχίαν τη Σινώπης, σον [[Πόντος|Πόντον]]. Σ' αβούτεν την πολιτείαν εγεννέθεν ο τρανόν ο φιλόσοφον ο [[Διογένες ο Σινωπέας|Διογένες]].
==Ιστορία==
Η Σινώπη ήταν πόλιτείαν με άγνωστον η ίδρυσές τη. Πρώτοιν άποικοι έταν οι κάτοικοι τη [[Μίλητος|Μιλέτου]] περί τον 8ο αι. π.Χ. Το όνοματη έρκεται από τη μεθολογική κόυζουμ του ποταμ Ασωπού, ''Σινώπη''. Η Σινώπη έταν η πρώτη ελλενικήν αποικαίν σο Πόντον και η [[Τραπεζούς]], η [[Κερασούς]] και τα [[Κοτύωρα]] έταν αποικίε τη Σινώπης.
Κατς τη Βεζαντινήν περίοδον κι είκε σπουδαίαν σεμασίαν και το [[1462]] κατελέφθην από τον Μωάμεθ και οι νομάτοι μεταφέρθέκαν στη [[Κωνσταντινούπολη]] για αύξέσην του εκέ πλεθυσμού.
==Εκκλησιαστική ιστορία==
Η Σινώπη κατά το μεσαίωναν απετέλεσεν επισκοπήν παγόμενην ση Μετρόπολην Ελενοπόντουν, σους νιότερους χρόνους στη Μέτρόπολην [[Αμάσεια]]ς. Κατς τη χρεστιανικήν παράδοσην, πρώτος που εκέρυξε το χρετιανισμόν στη πόλειτιαν έταν ο [[Απόστολος Ανδρέας]].
Ο ελλενικός πλεθυσμός τη Σινώπης πριν το 1914 έταν 5.000 και ο τορκικός 9.000. Οι ¨Ελλένες διατέρούσαν αστικήν σχολήν, Παρθεναγωγείον και 3 εκκλησίες.Ομως υπέστεσαν πολλιές κακουχίες και οι επιζέσαντες μετσανάστευσαν σην Ελλάδαν κατά τη διετίαν 1923-1924, κατάν την υποχρεωτεκήν ανταλλαγην.
== Κλίμα ==
Το κλίμαν τη Σινώπης είναι [[Εύκρατη ζώνη|εύκρατο]] και αρκετάν δροσερόν. Η μέση ετέσια θερμοκρασίαν πτάνειν τους 14.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Σινωπη}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας]]
[[Κατηγορίαν:Πόντος]]
4cg6aush2ttto951801oaacgzpf079d
Σκανδιναβικόν Χερσόνησος
0
267
31044
30403
2013-03-07T18:12:54Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 60 interwiki links, now provided by [[d:|Wikidata]] on [[d:q73169]] [[M:User:Addbot/WDS|(translate me)]]
31044
wikitext
text/x-wiki
[[Αρχείον:Fennoscandia.png|thumb|Το σκανδιναβικόν η χερσόνησος]]
Το '''Σκανδιναβικόν η Χερσόνησος''' ένι [[Ευρώπην|ευρωπαϊκόν]] [[χερσόνησος]]. Τ' ασ' όλεα νότιον σημέιον ατεινές εν σo σουηδικόν τη πολιτείαν [[Σκάνια]] (''Skåne''). Σα βόρεια τελείται σο Βόρειον Ακρωτήριον τη [[Νορβηγία|Νορβηγίας]] (''Nordkapplatået'') και σα δυτικά βρέχεται ασην Βόρειον Θάλασσαν. Σα νότια έχ' τρανά κιόλια τη ''Vänern'' και τη ''Vättern''.
Τα κράτε τη σκανδιναβηκού τη χερσονήσου είν' η [[Δανία|Δανίαν]], η [[Φινλανδία|Φινλανδίαν]], η [[Νορβηγία|Νορβηγίαν]] και η [[Σουηδία|Σουηδίαν]].
[[Κατηγορίαν:Ευρώπη|Σκανδιναβικόν Χερσόνησος]]
[[Κατηγορίαν:Σκανδιναβία| ]]
[[Κατηγορίαν:Χερσονησία|Σκανδιναβικον Χερσονησος]]
poj1gwcguhncwp8a0944v899sm8ud6n
Σλοβακία
0
268
35955
34892
2024-10-26T05:27:48Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35955
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Σλοβακία'''</big></big><br/>''Slovenská republika''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Slovakia.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Slovakia.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Slovakia.svg|300px]]
|}
Η '''Σλοβακία''' (σα σλοβάκικα: ''Slovensko'', ή ''Slovenská republika'') είναι [[κράτος]] σην ανατολήν τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Μπρατισλάβα]] και ο πρόεδρον ατ'ς εν ο [[Αντρέι Κίσκα]]. Ο πληθυσμόν τη χώρας είν' ασα 5.431.363 τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Η Σλοβακία ευρίεται ανάμεσα ση [[Αυστρία|Αυστρίαν]], τη [[Τσεχία|Τσεχίαν]], τη [[Πολωνία|Πολωνίαν]], την [[Ουκρανία|Ουκρανίαν]] και τη [[Ουγγαρία|Ουγγαρίαν]]. Έχ' τρανά πολιτείας την [[Κόσιτσε]] και τo [[Πρέσοβ]].
== Συνδέζμαι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:Slovakia|Η Σλοβακίαν σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Σλοβακία|Η Σλοβακίαν σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Slovakia|Χάρτες αση Σλοβακίαν]]'''
* [https://web.archive.org/web/20120410060853/http://www.government.gov.sk/ Το επίσημον ο ιστοτόπον τη σλοβακικού τη κυβέρνησης]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Σλοβακία]]
[[Κατηγορίαν:Ευρώπη|Σλοβακία]]
[[Κατηγορίαν:Σλοβακία| ]]
pqcx1sgj8jmvle8nus4h7mfd9bfnhav
Σλοβενία
0
269
35956
32424
2024-10-26T05:27:52Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35956
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Σλοβενία'''</big></big><br/>''Repuplika Slovenija''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Slovenia.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Slovenia.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Slovenia.svg|300px]]
|}
Το '''Σλοβενικόν η Δημοκρατία''', (σα σλοβενικά: ''Repuplika Slovenija'') είναι [[κράτος]] σο νότον τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν η [[Λιουμπλιάνα]] και ο πρωθυπουργόν ατ'ς εν ο [[Γιάνεζ Γιάνσα]]. Η χώρα εχ' πληθυσμόν σα 2.003.584 τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Η Σλοβενία ευρίεται σο [[Μεσόγειον θάλασσα|Μεσόγειον τη θάλασσα]], ανάμεσα σην [[Ιταλία|Ιταλίαν]], σην [[Αυστρία|Αυστρίαν]], σην [[Ουγγαρία|Ουγγαρίαν]] και σην [[Κροατία|Κροατίαν]]. Έχ' τρανά πολιτείας το [[Μάριμπορ]] και τη [[Τσέλιε]].
== Ιστορίαν ==
Η Σλοβενία έτον φελίν τη Αγίου τη Ρωμαϊκού τη Αυτοκρατορίας κι επεκεί τη [[Αυστροουγγρικόν αυτοκρατορία|Αυστροουγγρικού τη Αυτοκρατορίας]]. Σα 1918 τη χρονίαν οι Σλοβενάντ ένταν ένα με τοι Σερβάντ και τοι Κροατάντ κι εποίκαν εντάμαν κενούρεον πολυεθνικόν ντεβλέτι, το «Βασίλειον τη Σερβίων, τη Κροατίων και τη Σλοβενίων». Ατό το κράτος επαίρεν σα 1929 τη χρονίαν τ' όνεμα «Γιουγκοσλαβία». Ασα 1945 κι επεκεί έντον κομμουνιστικόν χώραν και η Σλοβενίαν έντον μιαν ασα Δημοκρατίας ατ'ς. Σα 1991 τη χρονίαν ερχίνεσε πόλεμος ανεξαρτησίας για δέκα ημέρας (26 Κερασινού – 7 Χορτοθερί 1991). Ταγουτέβσαν τη Γιουγκοσλαβίαν κι επεκεί οι Σλοβενάντ εποίκαν τ' ατεινών τ' ανεξάρτητον κράτος, το «Σλοβενικόν τη Δημοκρατίαν».
== Συνδέζμαι ==
* [http://www.slovenia.si/ Slovenia.si]. Your gateway to information on Slovenia.
* [http://www.vlada.si/en/ Government of the Republic of Slovenia]
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Slovenia|Η Σλοβενίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Σλοβενία|Η Σλοβενίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Slovenia|Χάρτες αση Σλοβενίαν]]'''
* [http://www.gov.si Το επίσημον ο ιστοτόπον τη σλοβενικού τη κυβέρνησης]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Σλοβενία]]
[[Κατηγορίαν:Ευρώπη|Σλοβενία]]
[[Κατηγορίαν:Βαλκάνια|Σλοβενία]]
[[Κατηγορίαν:Σλοβενία| ]]
7tjaram2vi3yttuugejmq4wwmmmgqis
Σουηδία
0
270
35957
33128
2024-10-26T05:27:56Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35957
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Σουηδία'''</big></big><br/>''Konungariket Sverige''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Sweden.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Great coat of arms of Sweden.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Sweden.svg|300px]]
|}
Το '''Βασίλειο τη Σουηδίας''' εν κράτος ντο ευρίεται σα βόρεια τη [[Ευρώπην|Ευρώπης]] και σα κεντρικά τη [[Σκανδιναβικόν Χερσόνησος|Σκανδιναβικού Χερσόνησου]]. Πρωτεύουσαν ατ'ς εν η [[Στοκχόλμη]]. Η χώρα εχ' πληθυσμόν σα 9.223.766 τ' ανθρώπ'ς (1 Κούντουρονος 2008).
== Γεωγραφίαν ==
Το σκανδιναβικόν η χώρα ευρισκάται σην ανατολήν τη [[Νορβηγία|Νορβηγίας]] και σα βορειοδυτικά τη [[Φινλανδία|Φινλανδίας]]. Βρέχεται σ΄ ανατολικάν ασό [[Βοθνιακός κόλπος|Βοθνικό κόλπο]] και το [[Βαλτικόν θάλασσα|Βαλτικόν τη θάλασσα]]. Με τα πορθμούς τη [[Σκάγερακ]] και τη [[Κάτεγατ]] σα νοτιοδυτικά, χωρίεται το χερσόνησο το Σκανδιναβικόν ασή [[Δανία]] και με τη γέφυρα του Όρεσουντ, συγκολίετε ξανά με τατέν. Έχ' τρανά πολιτείας το [[Γκέτεμποργκ]] και το [[Μάλμοε]].
== Συνδέζμαι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:Schweden|Η Σουηδίαν σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Σουηδία|Η Σουηδίαν σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Sweden|Χάρτες αση Σουηδίαν]]'''
* [http://www.sweden.gov.se/ Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Σουηδίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Σουηδία]]
[[Κατηγορίαν:Ευρώπη|Σουηδία]]
[[Κατηγορίαν:Σκανδιναβία|Σουηδία]]
[[Κατηγορίαν:Σουηδία| ]]
5aw3ys34ia3mv2dgalaoig14izjt5l2
Σταυρίτες
0
271
37040
37023
2025-12-16T18:14:34Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37040
wikitext
text/x-wiki
<center> '''Ημέρας Σταυρί''' </center>
<center> [[1 Σταυρί|1]] | [[2 Σταυρί|2]] | [[3 Σταυρί|3]] | [[4 Σταυρί|4]] | [[5 Σταυρί|5]] | [[6 Σταυρί|6]] | [[7 Σταυρί|7]] | [[8 Σταυρί|8]] | [[9 Σταυρί|9]] | [[10 Σταυρί|10]] | [[11 Σταυρί|11]] | [[12 Σταυρί|12]] | [[13 Σταυρί|13]] | [[14 Σταυρί|14]] | [[15 Σταυρί|15]] | [[16 Σταυρί|16]] | [[17 Σταυρί|17]] | [[18 Σταυρί|18]] | [[19 Σταυρί|19]] | [[20 Σταυρί|20]] | [[21 Σταυρί|21]] | [[22 Σταυρί|22]] | [[23 Σταυρί|23]] | [[24 Σταυρί|24]] | [[25 Σταυρί|25]] | [[26 Σταυρί|26]] | [[27 Σταυρί|27]] | [[28 Σταυρί|28]] | [[29 Σταυρί|29]] | [[30 Σταυρί|30]] </center>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
[[Αρχείον:Sazonov. Elena and Konstantin.jpg|thumb|«Κωνσταντίνος κι Ελένε», {{polytonic|Ὕψωσις τοῦ Τιμίου Σταυροῦ}}. Εζωγράφσεν ατό ο Wassily Sazonov σα 1870.]]
Ο '''Σταυρίτες''' άμαν και λέγν'ατόν και '''''Σταυρωτές''''' (σ' ελλενικά: ''Σεπτέμβριος'', σα ρωμαίικα τη [[Τουρκία|Τουρκίας]]: ''İstavrit ayı'') εν ο ένατον μήνας τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] κι εχ' 30 ημέρας.
== Τ' όνεμα ==
Τ' όνεμαν ατ' εβγών' ασον έξεργον τη Σταυρού το εν σ' αβούτον μήναν, σα [[14 Σταυρί|14 τη Σταυρίτε]]. Για τ' ατό λέγν' ατον οι χριστιανοί τη Τουρκίας ''İstavroz ayı'' (''ayı'' = «μήνας»), ''Haç ayı'' και σο [[Μαύρον θάλασσα|Μαύρον τη θάλασσαν]] λέγνε τον ''İstavrit ayı''. Οι μουσουλμάν Τουρκάντ λένγατον ''Eylül''.
== Ο λαόν για το Σταυρίτεν ==
:''«Ο Σταυρίτες ρουζ' τα φύλλα και ξεραίντανε τα ξύλα''
:''Σταυρωτά ετοιμάουνταν οι ξενιτιάρ' να φεύνε''
:''Και πριν να ξενιτεύκουνταν, κορίτσια φυγαδεύνε.»''
:''«Ο Σταυρίτες ρεντσιπέρτς,''
:''έναν σπέρτς και δέκα παίρτς.»''
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Κατηγορίαν:September|Σταυρίτες σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px|Βικιλεξικόν]] [[:el: wikt:Σταυρίτες|Ο Σταυρίτες σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Σταυριτες]]
3vjwkg62712i3gpjlaz5o93q854dsrj
Στράβων
0
272
35721
35616
2024-07-24T09:39:05Z
2A02:587:B2F:B100:3536:30F0:B453:B7FC
35721
wikitext
text/x-wiki
[[Αρχείον:Strabo.jpg|thumb|Στράβων (''Strabon Geographe'', εζωγράφσεν ο André Thevet σο βιβλίον ''Les vrais pourtraits et vies des hommes'', Παρίσι 1584)]]
Ο '''Στράβων''' (63 π.Χ. - 23 μ.Χ.) ήταν αρχαίος Έλληνας [[Ιστορίαν|ιστορικός]], [[φιλοσοφία|φιλόσοφος]] και [[Γεωγραφίαν|γεωγράφος]].
== Ζωή ==
Εγεννέθεν ασ' έναν πλούσιον οικογένεαν το 63 / 64 π.Χ. σην [[Αμάσεια|Αμάσειαν]] του [[Εύξεινος Πόντος|Πόντου]], όπου και επέθανεν όντας έτονε κι έτον 90 χρόνων (ολίον μετά το 23 μ.Χ.) Σήμερον η Αμάσειαν εν τόπος τη [[Τουρκία|Τουρκίας]] άμα όντας ο Στράβων εγενέθεν έτον επαρχία τη [[Ρωμαϊκή Αυτοκρατορία|Ρωμαϊκή Αυτοκρατορίας]]. Έτον πολλά ειδικέσας μορφώσεως γιατί εδιδάχτεν ασα τρανούς δασκάλους τη εποχής ατ, τον Αριστόδεμον ά' σην Καρίαν και το Τυράννιον ά' ση [[Ρώμη|Ρώμην]] κ' εμελέτησεν τα γραφούμενα γεωγραφάντων και φιλοσοφάντων τη αρχαιότητος, σην αρχήν σην περιοχήν ατ κ' επεκεί ση [[Ρώμη|Ρώμην]]. Εκλώστεν τον κόσμον επεή, επήεν σην [[Αίγυπτος|Αίγυπτον]] και σην [[Αιθιπία|Αιθιπίαν]]. Ση [[φιλοσοφία|φιλοσοφίας]] νατ έτον οπαδόν τη [[Στωικισμός|Στωικισμή]] και σην [[πολιτικήν]] υπεστήριζεν το [[Ρωμαϊκή Αυτοκρατορία|Ρωμαϊκόν]] [[Ιμπεριαλισμός|επεκτατισμόν]]. Όντας ελάσκουντον σον κόσμον ετοπλάευε στοιχεία για να γράφτ αργότερα τα ιστορικά και τα γεωγραφικά έργαν ατ.<p>
Δύο τρανά έργαν ατ έτον τα «{{polytonic|Ἱστορικὰ Ὑπομνήματα}}» και τα ξακουστά [[Γεωγραφικά|«Γεωγραφικά»]] ατ (17 βιβλία). Τα «{{polytonic|Ἱστορικὰ Ὑπομνήματα}}» έτονε 47 βιβλία κ' έγραψεν ν'ατ σε [[Πάπυρος|πάπυρον]] αέτσ' για να συνεχίζ' το έργον τη [[Πολύβιος|Πολύβιονος]] άμα σχεδόν ούλea σχεδόν εχάθανε και ατά που επέμνανε κι βοηθούνε μας να εγρηκούμε ντ' άγνον έτον το έργον. Τα «Γεωγραφικά» έν 17 βιβλία και ευτυχώς εβρέθαν ούλea. Αέτς ο Στράβων εγέντονε δοξασμένος και ξακουστός σους αιώνας. Εν περιληπτικόν αλλά πολλά κατατοπιστικόν έργον και πληροφορά μας για την [[Ιστορία|ιστορίαν]] ανθρώπων αμα και πόλεων πα τη εποχής ατ, ασα διάφορα περιοχάς του τότε γνωστού κόσμου. <p>
Του Στράβωνος το έργον επορούμε να λέμε ότι έτον όλων το καλίον ας 'α γεωγραφικά χάρτας τη εποχής ατ. Πότε ακριβώς έγραψεν ο Στράβων κι ξέρωμε, σ' άλλα αναφοράς δeaβάζωμε ότι το γράψιμο τη γεωγραφίας ετελέθεν όντας αυτοκράτορας έτον' ο [[Τιβέριος|Τιβέριον]].
== Τα «Γεωγραφικά» ==
[[Αρχείον:Map of Europe according to Strabo.jpg|thumb|right|280px|Η [[Ευρώπη|Ευρώπ]] όπως εθάρνεν ατεν ο Στράβωνας]]
{{Βικιθήκη}}
{{Βικιφθέγματα}}
* Βιβλία I και II: Τρανόν πρόλογον
* Βιβλία III ους X: [[Ευρώπην|Ευρώπη]], ά' σ' ούλä πολλά τ' αρχαίον η Ελλάδα (Βιβλία VIII-X)
* Βιβλία XI ους XIV: [[Μικρά Ασία]]
* Βιβλία XV ους XVI: Ανατολή
* Βιβλίον XVII: [[Αφρικήν|Αφρική]] (Αίγυπτος και Λιβύη)
== Συνδέσμ ==
* '''[[Αρχείον:Wikisource-logo.svg|13px]] Σην [[s:el:Κύρια Σελίδα|Βικιθήκην]] εχ' [[s:el:Στράβων|γραψίματα τη Στράβωνος]]'''
[[Κατηγορίαν:Έλλενας (αρχαιότητα)|Στραβων]]
[[Κατηγορίαν:Βικιπαίδεια:Arthron]]
kyw07va7ml1kq6jaxjs0sihf5bbyr8b
Σύνδεσμον
0
273
31050
28409
2013-03-07T18:14:01Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 52 interwiki links, now provided by [[d:|Wikidata]] on [[d:q36484]] [[M:User:Addbot/WDS|(translate me)]]
31050
wikitext
text/x-wiki
'''Σύνδεσμον''' λέγουμε σην [[γραμματικήν]] τ' άκλιτα τα λέξεις που ενών'νε λέξην με την λέξην και φράσην με τη φράσην.
== Οι σύνδεσμοι είναι ==
#Συμπλεχτικά: ''και, νια, πα''.
#Χωριστικά: ''για, γιαχότ, ή, είτε''.
#Εναντιωματικά: ''άμαν, αν, και, αλλά, κιαν''.
#Συμπερασματικά: ''αρ, ώστε, λοιπόν''.
#Αιτιολογικά: ''γιατί, επειδή''.
#Χρονικά: ''όνταν, πριχού, πρωτού, ωσπού, αφού, αμόν ντο, ώζνα, και''.
== Τέρεν ==
* [[Ουσιαστικόν]]
[[Κατηγορίαν:Γραμματικήν|Συνδεσμον]]
2ev836mhcm0nff9odbyelbdd53eoqkp
Τάραντας
0
274
36853
34871
2025-12-16T09:55:18Z
Εὐθυμένης
2777
36853
wikitext
text/x-wiki
[[Εικόναν:Taranto-Stemma.png|thumb|Η σημαία τη Ταραντού]]
[[Εικόναν:Taranto satellite.jpg|thumb|Ασό σατελίτ: Ο Τάραντας]]
Ο '''Τάραντας''' (σα ιταλικά ''Taranto'', σα λατικινά ''Tarentum'', σ' αρχαία τ' ελλενικά ''Τάρας'') εν [[πολιτεία]] σην [[Ιταλία|Ιταλίαν]] και εχ' τρανόν [[ιστορίαν]]. Εν πρωτεύουσαν τ' επαρχίας τη Ταραντού και εν χτιζμέντζα σον Κόλπον τη Ταραντού, σ' [[Ιωνικόν Πέλαγος]]. Εχ' πληθυσμόν σα 196.369 τ' ανθρώπ'ς (2006). Ευρισκάται σην επαρχίαν Ταραντού, το έχ 29 δήμους. Οι ανθρώπ καικά εργάσκουνταν σην γεωργίαν, σο ψάρεμαν και σην βιομηχανίαν (χημεία, θροφή, πουτίν, ξύλον, γυαλίν, κεραμικά).
== Γεωγραφίαν ==
Τον Τάρανταν λέγνατον και «πολιτείαν τη δυενών θαλασσίων» (''città dei due mari''). Ευρισκάται σ' Ιώνιον το πέλαγος, ση θάλασσας τη γουήν. Εκεικά η θάλασσαν χωρίεται και ίνεται το μικρόν (''Mar Piccolo'') και το τρανόν η θάλασσαν (''Mar Grande''). Δυο ακρωτήραι χωρίζνε τα θάλασσας και σο τέλος σχηματίζνε κόλπον. Ατουπές έχ' έναν νησίν, το έτον το παλιόν κέντρον τη Ταραντού σ' αρχαία τα χρόνε. Αβούτο το νησίν ενών'νε το δυο γεφύραι (''Ponte di Porta Napoli'' και ''Ponte Girevole'') με την ήπειρον.
== Ιστορίαν ==
Ο μύθον λεει ο ημ'σόθεον [[Τάρας]] εποίκε την πολιτείαν σα 1200 χρόνε πριχού την ίδρυσην τη [[Ρώμη|Ρώμης]] καικά σ' οσημερνόν την πολιτείαν, σον ποταμόν Τάρα.
Σην [[αρχαιότητα|αρχαιότηταν]] ο Τάραντας έτον γνωστόν και πλούσιον κέντρον τη [[Τρανόν Ελλάς|Τρανού τ' Ελλάς]] (''Magna Graecia'').
Η ιστορίαν ατ' εν γομάτον πολέμ: Σα 272 π.Χ. τη χρονίαν επαίραν ατεν οι Ρωμαίοι. Σον [[μεσαίωνας|μεσαίωναν]] βαρβαρικά μιλέτε εκατέστρεψαν ατέν. Οι [[Σαρακινοί]] εσήβαν και εποίκαν τον Τάραντα ισλαμικόν εμιράτον σα 840-880 απεσκέσ'. Επεκεί έντον μέρος τη [[Ρωμανίαν|Βυζαντίου]] κι η πολιτεία εχτέστεν ξαν σ' ατωριζνόν το παλαιόν την πολιτείαν καικά. Επεκεί η αφεντίαν έντον νορμανδικόν, [[Ισπανία|ισπανικόν]] und [[Γαλλία|γαλλικόν]].
Σημαντικοί λόγιοι τη φιλοσοφίας και τη λογοτεχνίας εγγενέθαν σον Τάραντον: ο Αρχύτας, ο Λίβιος Ανδρόνικος και ο Αριστόξενος.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{it}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Ταραντας}}
[[Κατηγορίαν:Πολιτείας τη Ιταλίας]]
ilmrj40k71gmrcl44mcf1c62a1imnb8
Τετράδ
0
275
31052
30895
2013-03-07T18:14:23Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 179 interwiki links, now provided by [[d:|Wikidata]] on [[d:q128]] [[M:User:Addbot/WDS|(translate me)]]
31052
wikitext
text/x-wiki
Η '''Τετράδ''' (σ' [[Ελλενικόν γλώσσα|ελλενικά]]: ''Τετάρτη'') εν το τέταρτον ημέρα τ' [[Εβδομάδα|εβδομάδας]].
== Ο λαόν για την Τετράδ ==
:''«Που νηστεύνε την Τετράδ''
:''κόφνε τη δαβόλ τ' ουράδ.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Wednesday|Τετράδ σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Τετάρτη|Η Τετράδ (Τετάρτη) σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Πρότυπον:Ημέρας τη εβδομάδας}}
[[Κατηγορίαν:Ημέρας τη εβδομάδας|Τετράδ]]
9lfcw1b2ub4f0rfcw7c107kr5dq5aau
Τη Χριστού τ' Αληθινόν η Eγκλεσίαν
0
276
31053
30763
2013-03-07T18:14:34Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 256 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1859]] [[M:User:Addbot/WDS|(translate me)]]
31053
wikitext
text/x-wiki
'''Τη Χριστού τ' Αληθινόν η Eγκλεσίαν''' (σα αγγλικά: ''True Jesus Church'') εν ανεξάρτητον Πεντηκοστιανόν [[χριστιανισμός|χριστιανικόν]] εγκλεσίαν ντ' εποίκαν σο [[Πεκίνο|Πεκίνον]] τη [[Κίνα|Κίνας]] ασό 1917 τη χρονίαν. Οσήμερον η εγκλεσίαν έχ' σα 2.500.000 τ' ανθρώπ'ς π' ινανεύνε σε 45 [[Κράτος|κράτη]] κι έξ' ηπείρ'. Σα 1967 τη χρονίαν έντον το διεθνικόν η συνελεύση τ' Εγκλεσίας σο [[Λος Άντζελες]]. Οσημερνόν ο πρόεδρον τη διεθνικού τη συνελεύσης τ' Εγκλεσίας εν ο ιεροκήρυκας Γιουνγκ-Γι Λιν (林永基傳道).
Τα δέκα δόγματα τη Χριστού τ' Αληθινού τ' Eγκλεσίας:
# Το Πνεύμα το Άγιον
# Φωτίσα
# Πλύση τοι ποδαρίων
# Το Θείαν η Κοινωνίαν
# Ημέραν Σάββατον
# Χριστόν
# Βίβλος
# Σωτηρίαν
# Εγκλεσίαν
# Δευτέρα Παρουσία
== Συνδέσμ' ==
* [http://www.tjc.org Τ' ευαγγελικόν η σελίδαν τη Εγκλεσίας]
[[Κατηγορίαν:Θρησκείαν|Χρηστου τ Αληθινον η Eγκλεσιαν, τη]]
thv353tewxxtefq844ue9dm9pcv42r6
Τοπχαράς
0
277
2870
2869
2009-03-06T15:29:52Z
MF-Warburg
53
1 revision
2870
wikitext
text/x-wiki
#REDIRECT [[Κώστας Τοπχαράς]]
jr06sp0ne3r92hm8i5bedapl1qme6ip
Τουρκία
0
278
35959
35597
2024-10-26T05:28:04Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35959
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Τουρκία'''</big></big><br/>''Türkiye Cumhuriyeti''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| width="140" align="center" | [[Αρχείον:Flag of Turkey.svg|125px]]
| width="140" align="center" | [[Αρχείον:TurkishEmblem.svg|125px]]
|-
| width="140" align="center" |
| width="140" align="center" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Europe_location_Turkey.svg|300px]]
|}
Η '''Τουρκία''' (τουρκ. ''Türkiye Cumhuriyeti'') εν κράτος σα δυτικά τη [[Ασίαν|Ασίας]] και νοτιοανατολικά τη [[Ευρώπην|Ευρώπης]]. Η Τουρκία ευρίσκεται αφκά σο [[Μαύρον Θάλασσα|Μαύρον τη Θάλασσαν]], σα ανατολικά τη [[Ελλάδα]] και τη [[Βουλγαρία|Βουλγαρίας]]. Ο προεδρόν ατς εν ο [[Ρετζέπ Ταγίπ Ερντογάν]].
<gallery>
File:Aya sofya.jpg|
File:Kocatepe Mosque Ankara.jpg|
File:State Painting and Sculpture Museum of Ankara.jpg|
File:DolmabahceMainGate.JPG|
File:İzmir clock tower.jpg|
File:Pamukkale00.JPG|
File:Eskişehir-Aycan.jpg|
File:Antalya falezler.jpg|
File:Alanya.jpg|
File:Bluemosquefront.jpg|
File:Diyarbakir P1050751 20080427135832.JPG|
File:LocationTurkey2.png|
</gallery>
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Turkey|Η Τουρκίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Τουρκία|Η Τουρκίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Turkey|Χάρτες αση Τουρκίαν]]'''
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Τουρκία]]
[[Κατηγορίαν:Ασία|Τουρκία]]
[[Κατηγορίαν:Ευρώπη|Τουρκία]]
[[Κατηγορίαν:Βαλκάνια|Τουρκία]]
[[Κατηγορίαν:Τουρκία| ]]
8sep4gupnl1874ue49i4heo3xb1wfhi
Τρίτ
0
279
31055
30597
2013-03-07T18:14:56Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 182 interwiki links, now provided by [[d:|Wikidata]] on [[d:q127]] [[M:User:Addbot/WDS|(translate me)]]
31055
wikitext
text/x-wiki
Η '''Τρίτ''' (σ' [[Ελλενικόν γλώσσα|ελλενικά]]: ''Τρίτη'') εν το τρίτον ημέρα τ' [[Εβδομάδα|εβδομάδας]].
== Ο λαόν για την Τρίτ ==
:''«Άψον τ' άψιμο σ' την Τρίτ''
:''και μη καίει σε το κιρπίτ.»''
:''«Την Τρίτ΄ μ΄ αρχινάς δουλείαν,''
:''θα ευρί κ΄ σε αναποδίαν.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Tuesday|Τρίτ σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Τρίτη|Η Τρίτ (Τρίτη) σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Πρότυπον:Ημέρας τη εβδομάδας}}
[[Κατηγορίαν:Ημέρας τη εβδομάδας|Τρίτ]]
oz9n1xnobxnbwqfmqj4zq7h5okgfs0s
Τρυγομηνάς
0
280
37048
37024
2025-12-16T18:14:35Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37048
wikitext
text/x-wiki
<center> '''Ημέρας Τρυγομηνά''' </center>
<center> [[1 Τρυγομηνά|1]] | [[2 Τρυγομηνά|2]] | [[3 Τρυγομηνά|3]] | [[4 Τρυγομηνά|4]] | [[5 Τρυγομηνά|5]] | [[6 Τρυγομηνά|6]] | [[7 Τρυγομηνά|7]] | [[8 Τρυγομηνά|8]] | [[9 Τρυγομηνά|9]] | [[10 Τρυγομηνά|10]] | [[11 Τρυγομηνά|11]] | [[12 Τρυγομηνά|12]] | [[13 Τρυγομηνά|13]] | [[14 Τρυγομηνά|14]] | [[15 Τρυγομηνά|15]] | [[16 Τρυγομηνά|16]] | [[17 Τρυγομηνά|17]] | [[18 Τρυγομηνά|18]] | [[19 Τρυγομηνά|19]] | [[20 Τρυγομηνά|20]] | [[21 Τρυγομηνά|21]] | [[22 Τρυγομηνά|22]] | [[23 Τρυγομηνά|23]] | [[24 Τρυγομηνά|24]] | [[25 Τρυγομηνά|25]] | [[26 Τρυγομηνά|26]] | [[27 Τρυγομηνά|27]] | [[28 Τρυγομηνά|28]] | [[29 Τρυγομηνά|29]] | [[30 Τρυγομηνά|30]] | [[31 Τρυγομηνά|31]] </center>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
Ο '''Τρυγομηνάς''' (σ' ελλενικά: ''Οκτώβριος'') εν ο δέκατον μήνας τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] κι εχ' 31 ημέρας.
== Ο λαόν για το Τρυγομηνά ==
:''«Ο Τρυγομηνάς φέρ’ ξύλα''
:''και μαραίν’ και ρούζ’ τα φύλλα.»''
== Συνδέσμ ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:October|Τρυγομηνάς σα Commons]]'''
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Τρυγομηνάς|Ο Τρυγομηνάς σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Τρυγομηνάς]]
797e63jv2vyvja0uqjzqa09z2fegw3s
Τρυγόνα
0
281
35516
31624
2024-01-09T20:53:58Z
Διογένες
10538
/* Σύνδεσμοι */+s
35516
wikitext
text/x-wiki
Η '''τρυγόνα''' είν' χορόν τη [[Πόντος|Πόντονος]]. Είν' αληγορτόν κι εχ' απλόν μορφή. Τα κινήσεις τη χορού συμβολίζ'νε το κόψιμο ξύλων. Ο ρυθμόν τη [[Μουσικήν|μουσικήν]] ατ' εχ' δύο μορφάς: Ους δίσημον (2/4), αμόν το το μονόν το [[ομάλ|ομάλ]], αλλά και κιαλλο αληγορτόν ους τρίσημον (5/8), αμόν το [[τικ|τικ]]. Σα παλαιά τα χρόνε την τρυγόναν την χορεύανε οι γαρήδες, άμαν οσήμερον ουλ' χορεύν' ατέν, τ' αγούρτς και οι γαρήδες.
== Στίχοι ==
Σο τέλος τ' καθαείν τη στίχονος λέγ'νε το ρεφρέν: ''«η Τρυγόνα, η κορώνα»''.
''«Ακεί πέρα σ' ορμανόπον,<br>''
''έστεκεν κι εποίνεν ξύλα. <br>''
''Τα ξύλα τ'ς έταν οξέας, <br>''
''κι άντρας ατ'ς έτον μυξέας.<br>''
''Πορπατεί και πάει ομάλα,<br>''
''το ορταρόπ' ατ'ς αρνομάλλα.<br>''
''Πορπατεί και πάει τίκα<br>''
''τ' ορταρόπ' ατ'ς είν' τιφτίκα.»''
== Σύνδεσμοι ==
*[https://www.efxinospontos.org/videos.html www.efxinospontos.org] Τρυγόνα σο βίντεο
[[Κατηγορίαν:Χορός|Τρυγονα]]
[[Κατηγορίαν:Μουσική|Τρυγονα]]
6kg7on7952tgywny9gkzlukul5evjlb
Τσεχία
0
282
35960
32427
2024-10-26T05:28:08Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35960
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Τσεχία'''</big></big><br/>''Česká republika''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of the Czech Republic.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of_the_Czech_Republic.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Czech_Republic.svg|300px]]
|}
Η '''Δημοκρατίαν τη Τσεχίας''' (''Česko'' ή ''Česká republika'' {{Audio|Cs-Ceska republika Cesko.ogg|σο τσεχικόν τη λαλίαν}}) εν [[κράτος]] σο κεντρικόν τη [[Ευρώπην|Ευρώπη]]. Πρωτεύουσαν ατ'ς εν η [[Πράγα]] και ο πρόεδρον ατ'ς εν ο [[Βάτσλαβ Κλάους]]. Ο πληθυσμόν τη χώρας είν' ασα 10.306.700 τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Η Τσεχίαν ευρίεται ανάμεσα ση [[Γερμανία|Γερμανίαν]], τη [[Πολωνία|Πολωνίαν]], τη [[Σλοβακία|Σλοβακίαν]], και την [[Αυστρία|Αυστρίαν]]. Έχ' τρανά πολιτείας τη [[Μπρνο]] και την [[Οστράβα|Οστράβαν]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Czech Republic|Η Τσεχίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Τσεχία|Η Τσεχίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of the Czech Republic|Χάρτες αση Τσεχίαν]]'''
* [http://www.mzv.cz/wwwo/default.asp?idj=42&amb=12 Το επίσημον ο ιστοτόπον τη πρεσβείας τη Τσεχικού τη Δημοκρατίας σην Ελλάδαν]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Τσεχία]]
[[Κατηγορίαν:Ευρώπη|Τσεχία]]
[[Κατηγορίαν:Τσεχία| ]]
apd1m9ttkpeyudq38brn2mfu57p6izx
Τόνυα
0
283
36745
36574
2025-12-16T08:37:48Z
Εὐθυμένης
2777
36745
wikitext
text/x-wiki
[[Αρχείον:Trabzon in Turkey.svg|thumb|Η Τόνυα σο καζα τη Τραπεζούντας.]]
Η '''Τόνγια''' (σα τουρκικά ''Tonya'', το [[Ρωμανίαν|βυζαντινό]] το ονέμανατ'σ έτον ''Θωανία'') εν πολιτεία τη [[Τουρκία|Τουρκίας]] κι ευριέται σο καζα τη [[Τραπεζούντα|Τραπεζούντας]], αφκά ασα Πλατάνα, πέραν ασον ποταμόν Καλάνεμα.
== Ιστορίαν ==
Σην Τόνγια εζήνανε ους το 1923 τη χρονίαν 2000 οικογένειας [[Ισλάμ|μουσουλμανικά]] που εκαλάτσευαν (εσύντζαιναν) ρωμαίϊκα. Άλλα 1000 οικογένειας ασήν Τόνγια, εταουτέφτανε σο καζα τη Τραπεζούντας και τη [[Αργυρούπολη|Αργυρούπολης]] (''Gümüşhane'').
Η μουσουλμάν τη Τόνγιας είναι ασά 8.000 [[Χριστιανισμός|χριστιανικά]] οικογένειας, που τα χρόνια που εποίνανε τοι χριστιανούς μουσουλμάνους τ' 1700 και επέκει, εφήγαν ασήν Τραπεζούντα και ασά Πλατάνα και εβρέθανε σην Τόνγια να κουρταρεύκουνταν. Άμα εκεί πα` έβραν ατ'σ και εποίκαν ατ'σ μουσουλμάνους. Άμα αμόν τα χωρία σον Όφη, ατείν πα εκράτεσαν την γλώσσαν ατούν. Αμόν σον Όφη αδά πα` επόμειναν τα ονέματα τη χωρίων σα ρωμαίικα: Μεσοχώριν, Μεσοπλάγιν, Κατωχώριν, Άγιος Θωμάς, Άγιος Στέφανος, Μεσοπέδιν. Ακόμα εκράτεσαν ελλενικά και χριστιανικά ονέματα αμόν παρωνύμια: Γιάννης, Θεμιστοκλής, Αλέξανδρος και άλλα.<br />
Τα χωρία που καλατσεύνε ρωμαίικα είναι: Kesli, Tumusli, Pahartikli, Mpeskeli, Mamali, Tsuluk, Melikse και το Anchikoi.
== Ανθρώπ' ==
Οι Τονγιαλήδες παλαιά περισσόν, άμα και ατώρα είναι το όνεμα, ντο είναι πολλά ςκληροί και περήφανοι.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας|Τονυα]]
[[Κατηγορίαν:Πόντος|Καρς]]
e7wtobkl4pu5kw34t6lio9spy73g4pk
Τόσια
0
284
36746
36569
2025-12-16T08:38:37Z
Εὐθυμένης
2777
36746
wikitext
text/x-wiki
[[Αρχείον:Tosya district of Kastamonu Province of Turkey.JPG|thumb|230px|right|Η Τόσια σον χάρτεν τ' επαρχίας τη Κασταμονής]]
Η '''Τόσια''' (τουρκ. ''Tosya'', βυζαντινόν όνεμα: ''Δοκεία'') εν μικρόν πολιτείαν τη [[Τουρκία|Τουρκίας]] κι ευρίεται σην επαρχίαν τη Κασταμονής, σον [[Πόντος|Πόντον]]. Οι ανθρώπ εκαικά εργάσκουνταν σην γεωργίαν (ρύζι) και σην βιομηχανίαν (ξύλον).
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Τοσια}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας]]
[[Κατηγορίαν:Πόντος]]
d2xg4g3xehyokjoncpxo2tqzmm9zxwo
Φέγγος
0
285
35522
35222
2024-01-22T07:51:34Z
Kwamikagami
8969
35522
wikitext
text/x-wiki
[[Αρχείον:Full Moon Luc Viatour.jpg|thumb|Ο Φέγγος]]
[[file:Moon symbol (planetary color).svg|frameless|upright=0.35|☾]] Ο '''Φέγγος''' εν ο μόνον φυσικόν σατελίτες τη [[Γη|Γης]] κι ο πέμπτον τρανόν τ' [[ηλεϊκόν σύστεμαν|ηλεϊκού τη συστεματίεμουν]]. Εν τ' ασούλτς φωτεινόν σώμαν τ' ουρανού, ασόν [[Ήλος|Ήλον]] οπίς. Τ' αστρονομικόν το σύμβολονατ' εν: [[file:Moon decrescent symbol (fixed width).svg|16px|☾]]. Ο Φέγγος εν ση [[Γην]] κοντά και για τ' ατό οι ανθρώπ επόρεσαν κι ετολανεύτανατον.
{{Commons|Moon}}
[[Κατηγορίαν:Αστρονομία|Φεγγος]]
nc42kaf5pu3yvkmltfgvem3yfa2k1x0
Χαβίτς
0
286
35565
34880
2024-01-23T18:18:04Z
Διογένες
10538
μικρογραφία
35565
wikitext
text/x-wiki
[[Εικόναν:Havitz.JPG|300px|μικρογραφία|Ασου ψέεται το χαβίτς και ύστερα, εβγάλομ'ατ' ασο τηγάν, βάλλομ'ατο σ'έναν ςκεύος, κάθουμες κα και τρώγουμε.]]
Το '''χαβίτς''' εν πατροπαράδοτον [[Πόντος|ποντιακόν]] φαΐν. Μαερεύκεται αγλήγορα και ίνεται από γνήσια προϊόντα. Εν πολλά καλόν για την υΐαν.
== Ντο πράματα θέλομεν ==
*1 ποτήρ [[λαζούδ|λαζουδί]] αλεύρ
*2 χουλερέας φαΐ παρχαρί βούτορον (ασα χτήνεα)
*3 ποτήρεα νερόν
*2 μικρά κομματόπα τυρίν χτηνί ή κατσικί, άμον ντο είναι τα λουκούμεα
*Ολίγον [[άλας]]
== Πώς εφτάμε το χαβίτς ==
Το χαβίτς θέλ ολίγον [[λαζούδ|λαζουδί]] αλεύρ, παρχαρί τυρίν και βούτορον (ασα χτήνεα), [[άλας|άλας]] και νερόν. Σο τηγάν' βάλλομε τ'αλεύρ να καβουρεύκεται και συνέχεια με το χουλιάρ ταράζομ'ατο να μη κάεται. Όνταν εγροικούμε εκαβουρεύτεν τ'αλεύρ, ατότε γομώνομε το νερόν σο τηγάν και ως να βράζ' με το χουλιάρ γάλια γάλια ταράζομ'ατο. Όνταν εγροικούμ' έβρασεν, τρίφτομε το τυρίν και σύρομ'ατο απές σο τηγάν. Επεκεί βάλλομε το βούτορον απές σ'έναν τηγανόπον να λύεται κι ασο λύεται και ύστερα κςύνομ'ατο απές σο τρανόν το τηγάν και με το χουλιάρ ταράζομ'ατο. Περιμένομεν ολίγον κιάλλο να βραζ κι αραέτς ψέεται. Ασο ψέεται και ύστερα, εβγάλομ'ατ' ασο τηγάν, βάλλομ'ατο σ'έναν ςκεύος, κάθουμες κα και τρώγουμε.
== Συνδέσμεα ==
*[https://web.archive.org/web/20101223023133/http://www.sintagespareas.gr/sintages/xabits.html Πως εφτάμε το χαβίτς] - sintagespareas.gr (ελλ)
*[https://web.archive.org/web/20101223022928/http://www.sintagespareas.gr/sintages/xabitz5c-me-fournikon-aleirin.html Πως εφτάμε το χαβίτς με φούρνικον αλεύρ'] - sintagespareas.gr (ελλ)
[[Κατηγορίαν:φαΐα|χαβιτς]]
[[Κατηγορίαν:Βικιπαίδεια:Arthron]]
l2cegtqi75v4i8icjm7vsehudk5z0nw
Χορτοθέρτς
0
287
37043
37021
2025-12-16T18:14:35Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37043
wikitext
text/x-wiki
<center> '''Ημέρας Χορτοθέρτ''' </center>
<center> [[1 Χορτοθέρτ|1]] | [[2 Χορτοθέρτ|2]] | [[3 Χορτοθέρτ|3]] | [[4 Χορτοθέρτ|4]] | [[5 Χορτοθέρτ|5]] | [[6 Χορτοθέρτ|6]] | [[7 Χορτοθέρτ|7]] | [[8 Χορτοθέρτ|8]] | [[9 Χορτοθέρτ|9]] | [[10 Χορτοθέρτ|10]] | [[11 Χορτοθέρτ|11]] | [[12 Χορτοθέρτ|12]] | [[13 Χορτοθέρτ|13]] | [[14 Χορτοθέρτ|14]] | [[15 Χορτοθέρτ|15]] | [[16 Χορτοθέρτ|16]] | [[17 Χορτοθέρτ|17]] | [[18 Χορτοθέρτ|18]] | [[19 Χορτοθέρτ|19]] | [[20 Χορτοθέρτ|20]] | [[21 Χορτοθέρτ|21]] | [[22 Χορτοθέρτ|22]] | [[23 Χορτοθέρτ|23]] | [[24 Χορτοθέρτ|24]] | [[25 Χορτοθέρτ|25]] | [[26 Χορτοθέρτ|26]] | [[27 Χορτοθέρτ|27]] | [[28 Χορτοθέρτ|28]] | [[29 Χορτοθέρτ|29]] | [[30 Χορτοθέρτ|30]] | [[31 Χορτοθέρτ|31]] </center>
----
{{ΗμερολόγιοΣεΠίνακα|7}}
[[Εικόναν:Hugo Mühlig Die Ernte.jpg|thumb|«Το θέρος» (''Die Ernte''). Εζωγράφσεν ατό ο Hugo Mühlig.]]
Ο '''Χορτοθέρτς''' (σ' ελλενικά: ''Ιούλιος'') εν ο έβδομον μήνας τη χρονίας, ίστε λεει μάς το [[Γρηγοριανόν ημερολόγιον|Γρηγοριανόν το ημερολόγιον]] κι εχ' 31 ημέρας.
== Ο λαόν για τον Χορτοθέρτ ==
: ''«Έρθεν και ο Χορτοθέρτς, ''
: ''έπαρ' το καγιάν σο χέρ' τ'ς.»''
== Συνδέσμ ==
* '''[[Εικόναν:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:July|Χορτοθέρτς σα Commons]]'''
* '''[[Εικόναν:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el:wikt:Χορτοθέρτς|Χορτοθέρτς σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Χορτοθέρτς]]
lquxqeai5uglhqvv95ckdtuviu0dc26
Χριστουγεννάρτς
0
288
37045
37026
2025-12-16T18:14:35Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37045
wikitext
text/x-wiki
<center> '''Ημέρας Χριστουγενναρί''' </center>
<center> [[1 Χριστουγενναρί|1]] | [[2 Χριστουγενναρί|2]] | [[3 Χριστουγενναρί|3]] | [[4 Χριστουγενναρί|4]] | [[5 Χριστουγενναρί|5]] | [[6 Χριστουγενναρί|6]] | [[7 Χριστουγενναρί|7]] | [[8 Χριστουγενναρί|8]] | [[9 Χριστουγενναρί|9]] | [[10 Χριστουγενναρί|10]] | [[11 Χριστουγενναρί|11]] | [[12 Χριστουγενναρί|12]] | [[13 Χριστουγενναρί|13]] | [[14 Χριστουγενναρί|14]] | [[15 Χριστουγενναρί|15]] | [[16 Χριστουγενναρί|16]] | [[17 Χριστουγενναρί|17]] | [[18 Χριστουγενναρί|18]] | [[19 Χριστουγενναρί|19]] | [[20 Χριστουγενναρί|20]] | [[21 Χριστουγενναρί|21]] | [[22 Χριστουγενναρί|22]] | [[23 Χριστουγενναρί|23]] | [[24 Χριστουγενναρί|24]] | [[25 Χριστουγενναρί|25]] | [[26 Χριστουγενναρί|26]] | [[27 Χριστουγενναρί|27]] | [[28 Χριστουγενναρί|28]] | [[29 Χριστουγενναρί|29]] | [[30 Χριστουγενναρί|30]] | [[31 Χριστουγενναρί|31]] </center>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
[[Εικόναν:Duccio di Buoninsegna 002.jpg|thumb|right|250px|Η ''Κατά σάρκα Γέννησις'' τη Χριστού σ' έργον τη Duccio di Buoninsegna]]
Ο '''Χριστουγεννάρτς''', άμαν και λέγν'ατόν και '''Χριστανάρτς''' (σ' ελλενικά: ''Δεκέμβριος''), εν ο δωδέκατον ο μήνας τη χρονίας, λεει μάς το [[Γρηγοριανόν ημερολόγιον]] κι εχ' 31 ημέρας.
== Τ’ όνεμαν ==
Σ' αρχαίον το [[Ρωμαϊκόν Αυτοκρατορίαν|ρωμαϊκόν]] ημερολόγιον ο Χριστουγεννάρτς έτον ο δέκατον ο μήνας. Για τ' ατό τα μήνας σα νεοελλενικά και σ’ αλλα τα καλατσίας επαίρανε τ'ονέματα τουν λ.χ. ''Σεπτέμβριος'', (λατ. ''septem'' = εφτά), Οκτώβριος (λατ. ''octo'' = οκτώ), Νοέμβριος (λατ. ''novem'' = εννέα) και Δεκέμβριος (λατ. ''decem'' = δέκα).
Σα [[Ποντιακά|ποντιακά τα ρωμαίικα]] τ' όνεμαν ατ' εβγαίν ασο [[Χριστούγεννα|Χριστουγεννίων]] τον έξεργον.
== Ο λαόν για τον Χριστουγεννάρ (Χριστανάρ) ==
Ο λαόν λεει τ' αφκά κεκά τα δίστιχα για τον Χριστουγεννάρ (Χριστανάρτ):
:''«Χριστουγεννάρτς φερ΄ τον κρύον,''
:''σαν εκείνον π΄ εχ΄ το βίον.»'' (ενν. να σαν)
:''«Έρθαμε σον Χριστουγεννάρ, ο Χριστόν εγεννέθεν,''
:''Τα μήνας γίνταν δώδεκα, ο χρόνος πα ετέλεθεν.»''
== Συνδέσμ ==
* '''[[Εικόναν:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:December|Χριστουγεννάρτς σα Commons]]'''
* '''[[Εικόναν: Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el:wikt:Χριστουγεννάρτς|Ο Χριστουγεννάρτς σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Μήνας}}
[[Κατηγορίαν:Μήνας|Χριστουγενναρτς]]
9mexd3429nm7oafl8j1wswjwe45yztw
Ωκεανίαν
0
289
35228
32154
2022-09-20T01:07:26Z
Kwamikagami
8969
35228
wikitext
text/x-wiki
Η '''Ωκεανίαν''' εν ήπειρος σον Ειρηνικόν Ωκεανόν.
[[Αρχείον:Oceania in the world (red) (W3).svg|thumb|right|{{Polytonic|Ωκεανίαν}}]]
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Oceania|Η Ωκεανίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ωκεανία|Η Ωκεανίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Oceania|Χάρτες ασην Ωκεανίαν]]'''
* [http://dmoz.org/Regional/Oceania/ Open Directory Project:Ωκεανίαν]
[[Κατηγορίαν:Γεωγραφίαν|Ωκεανιαν]]
qoh37jtbibd2rn3cwwkk5ebspza6wkr
Άλας
0
290
36086
36072
2024-12-12T23:32:42Z
Wolverène
4171
36086
wikitext
text/x-wiki
[[Εικόναν:NaCl-zoutkristallen op Schott Duran 100 ml.JPG|μικρογραφία|Άλας]]
Με τ' '''άλας''' αλίζνε τα φαΐα κι εφτάνατα κιάλλο έμνοστα. Αβούτο τ'όνεμαν εχ' και το [[νάτριον]], που εχ' απές χλώριον. Ευρίσκουματο σα νερά τη θάλασσας. Ατουπές το ποσοστόν τ' άλατος εν 2,7 - 3,8%.
Άμα ευρίσκουμε και σκυρά μάζας ση γην απές, λ.χ. σην [[Πολωνία|Πολωνίαν]], σην [[Αυστρία|Αυστρίαν]], ση [[Γερμανία|Γερμανίαν]] κλπ.
[[Κατηγορίαν:Φαΐα|αλας]]
4tjjsaoiy092svyrujgujy6w5plc034
Ήλες
0
291
2945
2944
2009-03-06T15:29:57Z
MF-Warburg
53
1 revision
2945
wikitext
text/x-wiki
#REDIRECT[[Ήλος]]
p5z32ew57q6vut8r2ootf4v6qeysute
Εγκυκλοπαίδεια
0
292
31420
31066
2013-03-11T10:22:31Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5292]] [[M:User:Addbot/WDS|(translate me)]]
31420
wikitext
text/x-wiki
Η '''εγκυκλοπαίδειαν''' εν λεξικόν κι εκειαπές τοπλαέβνε γνώσην. Η λέξη εν συγκόλησην ασα παλαιά [[Ελλενικόν γλώσσα|ελλενικά]] τα λέξεις ''ἐγκύκλιος'' (άμον τον κύκλον) και ''παιδεία'' (μάθεμαν).
== Ιστορία τη λέξης ==
Η λέξην έρτεν ασο παλαιόν τ' ελλενικόν τη φράσην ''ἐγκύκλιος παιδεία'', σα ελλενιστικά τα χρόναι. Έλεγαν αέτς ούλ'ατα ντ'είςεν απές το γενικόν τ'επιστημονικόν το μάθεμαν. Ο [[Ρωμανίαν|Ρωμαίον]] ο συγγραφέας ο Ζωναράς έλεεν, η ''ἐγκύκλιος παιδεία'' έςς απές τη [[γραμματικήν]], τη [[ποιητικήν]], τη [[Ρητορική|ρητορικήν]], τη [[φιλολογικήν]], τη [[φιλοσοφίαν]], τη [[μαθεματικήν]] και κάθαν τέχνην τη σοφών.
Αβούτον το παλαιόν τ'ελλενιστικόν η φράση ελάγεν κι εγέντον νεολατινικόν λέξην, ''encyclopaedia''. Αέτς επέρασεν κι εσέβεν σο γαλλικόν τη γλώσσαν σα 1532 τη χρονίαν (''encyclopédie'') κι επεκεί σ'άλλα τ'ευρωπαϊκά τα γλώσσας. Με αβούτον τη μορφήν (''εγκυκλοπαίδεια'') η λέξεν έρτεν (οπίς) σα ελλενικά σα 1710 τη χρονίαν, όνταν εξέβεν το έργον τ' Ιωάννε Πατούσα, ''Φιλολογική Ἐγκυκλοπαίδεια''.
[[Κατηγορίαν:Wp/pnt|Εγκυκλοπαιδεια]]
3px3ofsfy3wvu812hwc4phdq0zewo2i
Λαζούδ
0
293
33130
31865
2016-10-01T18:30:27Z
Ercé
3412
33130
wikitext
text/x-wiki
[[Αρχείον:Corncobs.jpg|thumbnail|right|230px|Λαζούδαι]]
[[File:Zea mays fraise MHNT.BOT.2011.18.21.jpg|thumb|''Zea mays "fraise"'']]
[[File:Dent Corn 'Oaxacan Green' (Zea mays) MHNT 2.jpg|thumb|''Zea mays "Oaxacan Green"'']]
[[File:Zea mays 'Ottofile giallo Tortonese' MHNT.BOT.2015.34.1.jpg|thumb|''Zea mays 'Ottofile giallo Tortonese''']]
Το '''λαζούδ''' εν φυτόν, το οποίον έρθεν ασο [[Μεξικόν]]. Έρθεν σην [[Ευρώπην]] ασα 1500 τη χρονίαν κι αδά μερέαν κι επεκεί εξαπλώθεν σον κόσμον. Τ'οσημερνά τα λαζούδαι που φυτεύνατα σ' όλεν το κόσμον κι ούλ' εξέρουματα έχνε τ'όνεμαν ''Zea mays''. Σα άλλα Ελλενικά λαλίας λέγνατο καλαμπόκι και αραβόσιτος.
[[Κατηγορίαν:Φυτά|λαζουδ]]
4nk3xok2g9fi6pqckafn5wn8vp46o7z
Παλαιόν
0
294
33594
6732
2018-03-05T16:01:14Z
Escarbot
910
wikidata interwiki
33594
wikitext
text/x-wiki
<div align="center" style="font-size:18pt; line-height:1em;">Η Βικιπαίδεια σα</div>
<div align="center" style="font-size:25pt; line-height:1em;">Ρωμαίικα τα Ποντέικα</div>
<div align="center" style="font-size:12pt; line-height:1,3em;">Ανοιχτόν εγκυκλοπαίδεια ντο γράφκεται και τρανείν απ' ατείντς π' θέλνε.</div>
<div align="center" style="font-size:12pt; line-height:1,3em;">Ο αριθμόν τη σελίδιων τη ρωμαίικου τη ποντέικου τη Βικιπαίδειας ατώρα είναι {{NUMBEROFARTICLES}}. Βοηθέστεν κι εφτάτεν ατέναν κι άλλο τρανέσαν.</div>
<inputbox>
type=create
width=50
bgcolor=#ffffff
preload=Πρότυπον:Wp/pnt
default=
buttonlabel=αρχινέστεν άλλο γράψιμον
</inputbox>
<!-- Δέλτος μεγίστη -->
<!-- ------------ -->
{| cellpadding="0" cellspacing="0"
| valign="top" width="48%" style="background:#f5fffa; border: 1px solid #cef2e0" |
{| cellspacing="10" style="background:transparent; font-family: Palatino Linotype, Verdana, Arial, Helvetica, sans-serif;"
| style="text-align:center; padding:4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc; background:#cef2e0" | ΚΑΛΩΣ ΕΡΘΕΤΕΝ...
|-----------------------------------------
| style="text-align:left" | ...σην [[Βικιπαίδεια|Βικιπαίδειαν]]. '''Μαθέστεν''' πολλά για τ'ατέν δεαβάζοντας τα [[Βικιπαίδεια/πολλά ερωτήσεις|'''πολλά ερωτήσεις''']] και την [[Βικιπαίδεια/Βοήθεια|'''βοήθειαν''']].
|-----------------------------------------
| style="text-align:center; padding:4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc;background-color:#cedff2" |ΠΡΟΣΚΑΛΕΜΑΝ ΓΙΑ ΤΟ ΕΡΓΟΝ ΑΤΟ
|-----------------------------------------
| style="text-align:left" | '''Βοηθέστεν''' την Βικιπαίδειαν. Βαλέστεν και σεις το εξέρετεν αέτς για να τρανείν η εγκυκλοπαίδεια.
*Εάν ευρήκετεν γραφόμενα ντο 'κ είναι σωστά κι αν έχετε σον νούνεσουν τα σωστά, '''ποίστεν το κι άλλο καλλίον'''.
*Εάν εγνωρίζετε καλά καινούρεα πράματα, '''αρχινέστεν''' άλλο γράψιμον.
*Η '''αντιγραφήν ασ' άλλα γλώσσας''' ίνεται.
|-----------------------------------------
| style="text-align:center; padding:4px; font:bold 17px Georgia,serif; letter-spacing:3px; border-bottom: 1px solid #ccc;background-color:#cedff2" |<span style="float: left;">[[Εικόναν:Nuvola apps kpdf.png|25px|]]</span>ΕΓΚΥΚΛΟΠΑΙΔΕΙΑ
|-----------------------------------------
| style="text-align:center;font-weight: bold; font-size: 13px;background-color:#cedff2" | Κατάλογος με τα θέματα
|-----------------------------------------
|
{| style="font-size: 12px; background:#f5faff" cellspacing="0" cellpadding="3"
| width="50%" |
[[Εικόναν:Nuvola apps kcoloredit.svg|40px|left]] <big>[[Πολιτισμόν|Πολιτισμόν]]</big><br>
[[Ζωγραφικήν|Ζωγραφικήν]] · [[Θέατρον|Θέατρον]] · [[Λογοτεχνίαν|Λογοτεχνίαν]] · [[Μουσικήν|Μουσικήν]] · [[Αρχιτεκτονικήν|Αρχιτεκτονικήν]] · [[Γλυπτικήν|Γλυπτικήν]] · [[Αθλητισμός|Αθλητισμός]] · [[Μυθολογίαν|Μυθολογίαν]] · [[Θρησκείαν|Θρησκείαν]] · [[Ποιητικήν|Ποιητικήν]]
[[Εικόναν:Nuvola_filesystems_www.png|40px|left]] <big>[[Γεωγραφίαν|Γεωγραφίαν]]</big><br/>
[[Ασίαν|Ασίαν]] · [[Αφρικήν|Αφρικήν]] · [[Ευρώπην|Ευρώπην]] · [[Αμερικήν|Αμερικήν]] · [[Ωκεανίαν|Ωκεανίαν]] · [[Ανταρκτικήν|Ανταρκτικήν]] · [[Αρκτικήν|Αρκτικήν]] · [[Πολιτεία|Πολιτείας]] · [[Κράτος|Κράτη]] · [[Θάλασσα|Θάλασσας]] · [[Νησίν|Νησία]] · [[Ραχίν|Ραχία]]
[[Εικόναν:Nuvola apps bookcase.svg|40px|left]] <big>[[Ιστορίαν|Ιστορίαν]]</big><br/>
[[Παλαιόν Ιστορίαν|Παλαιόν Ιστορίαν]] · [[Ρωμανίαν|Ρωμανίαν/Βυζάντιον]] · [[Ευρωπαϊκόν Ιστορίαν|Ευρωπαϊκόν Ιστορίαν]] · [[Πολέμ|Πολέμ]] · [[Ρωμαϊκόν Αυτοκρατορίαν|Ρωμαϊκόν Αυτοκρατορίαν]] · [[Καινούρ' Ιστορίαν|Καινούρ' Ιστορίαν]]
[[Εικόναν:Nuvola apps edu miscellaneous.png|40px|left]] <big>[[Γραμματικήν|Γραμματικήν]]</big><br/>[[Ουσιαστικόν|Ουσιαστικόν]] · [[Ρήμαν|Ρήμαν]] ·[[Επίρρημαν|Επίρρημαν]] · [[Σύνδεσμον|Σύνδεσμον]]
[[Εικόναν:Nuvola apps kuser.svg|40px|left]] <big>[[Βικιπαίδεια|Βικιπαίδεια]]</big><br/>
[[Βικιπαίδεια/Αγορά|Αγορά]] ·
[[Βικιπαίδεια/Παρακάθ|Παρακάθ]] · [[Βικιπαίδεια/Βοήθεια|'''Βοήθεια''']] · [[Βικιπαίδεια/Ντο 'κ εν η Βικιπαίδεια|Ντο 'κ εν η Βικιπαίδεια]] · [[Δικαιώματα πνευματί|Δικαιώματα πνευματί]]
|}
[[Κατηγορίαν:Wp/pnt|παλαιόν]]
i3xvt1wdifg7hhrmrnnfi1y3zkerfpt
Πιςία
0
295
36282
34890
2025-07-05T17:14:29Z
Dianeira
8650
36282
wikitext
text/x-wiki
[[Αρχείον:Pisia 2.jpg|μικρογραφία|Ποντιακά πιςία.]]
Τα '''πιςία''' (προφέρκουνταν {{IPA|[piʃ'ia]}}) είναι πατροπαράδοτον [[Πόντος|ποντιακόν]] φαΐν. Ψήεται σο τηγάν.
== Ντο πράματα θέλομεν ==
Για δέκα πιςία:
*500 γρ. αλεύρ
*1 φακελόπον ξηρόν μαγιάν
*1 ωβόν
*1 χουλερόπον άλας
*1 φλιτζάν ελάδ
== Πώς εφτάμε τα πιςία ==
Εφτάμε τρανά ζουμωτά φύλλα κι ενοίγοματα. Επεκεί θέκοματα σο τηγάν απές και
κλώθοματα ασα δύο μερέας. Εκοκκινίζνε κι επέκει εβγάζοματα, αλείβομ'απάν μέλ, πετμέζ ή
ζάχαρην. Επεκεί βάλλομ'ατα σ'έναν ςκεύος, κάθουμες σο τραπέζ και τρώγουμε.
== Συνδέσμεα ==
*[https://web.archive.org/web/20100804030211/http://www.sintagespareas.gr/sintages/pisia-me-giaourti.html Πως εφτάμε τα πιςία] - sintagespareas.gr (ελλ)
[[Κατηγορίαν:φαΐα|πισια]]
pzgbbx4f6p03q1mdiba07e6yof0ltsn
Τσιριχτά
0
296
36084
36079
2024-12-12T23:31:19Z
Wolverène
4171
36084
wikitext
text/x-wiki
[[Αρχείον: Τσιριχτά.JPG|200px|μικρογραφία|Τα τσιριχτά.]]
[[Αρχείον:Τσιριχτά σο ελάδ απές.JPG|200px|μικρογραφία|Τα τσιριχτά απές σο χασευτόν τ' ελάδ.]]
Τα ποντιακά τα '''τσιριχτά''' έν άμον τα ξακουστά τ'[[ελλενικόν λαλίαν|ελλενικά]] τα «λουκουμάδες» ντο έχνε σα ζαχαροπλαστεία. Βέβαια σα ζαχαροπλαστεία ξ̌ύνε και το σιρόπ απάν και κανέλλα. Οι Πόντιοι εδούνανε σα μωρά ‘τουν κι έτρωαν τα τσιριχτά για γλύκισμαν, αφού εβάλνανε σεκέρ ή μέλ’ απάν.
== Τα τσιριχτά σο ποντιακόν τη χαράν ==
Όντες επάντρευανε οι νέοι, πρωτού το εγκλεσιαστικόν το μυστήριον (δηλαδή το στεφάνωμαν) και ύστερα ασ’ ατό, ο κόσμον εx̌αίρουντον και ετοιμάουτον να εφτάει τα γλέντϊα. Έτρωαν, έπιναν κι εχόρευαν. Η ποτή ατούν έτον το [[κρασίν]] και το [[ρακίν]], με τ'οποία έρχουνταν σο κεφ. Εσκάλωνανε το Σάββατον το βράδον με τα τραγωδίας και τον χορόν κι ετελαίνανε τη Δευτέραν το πρωίν.
Τα φαΐα ‘τουν έσανε κρέατα [[μουχτερόν|μουχτερί]], [[κοσσάρα|κοσσάρας]], [[βουδ|βουδί]] κ' ίντια άλλο εδίνεν ο καιρόν. Τα σαλάτας ατούν έσανε [[λάχανα]] του χωραφί. Το χειμώναν εποίνανε και σαλάτα ασ'άσπρον το λάχανον και στίπα [[πιπέρ|πιπερή]] και λαχανί. Εξόν ασ’ ατά εποίνανε [[σινίν|σινία]] πα, εποίνανε τσιριχτά και [[ωτία]], π' εζύμωνανε με του [[κοκίν|κοκί]] τ'αλεύριν.
Τα τσιριχτά εβάλν’ ατά απάν σα τραπέζϊα σα ποντιακά τα χαράντας και αντί για ψωμίν έτρωγαν ατά, σίτϊα έπινανε τα κρασία και τα ρακία.
== Ντο πράματα θέλομεν ==
*2 ποτήρϊα τσ̌αΐ γαλιό χουλιόν νερόν
*1 μικρόν χουλιαρέαν άλας
*1 μικρόν χουλιαρέαν μέλ
*1 χουλιάρ μαγιάν
*σ̌ιμισκί ελάδ
== Πώς εφτάμε τα τσιριχτά ==
[[Αρχείον:Τσιριχτά (ζουμάρ).JPG|εναλλ.=|μικρογραφία|259x259εσ|Με το βρεμμένον το χουλιάρ παίρουμε και κςύζουμε το ζυμάρ ντ’ εξέβεν ασ’ απάν το μέρος τη μούστας και σύρομ’ ατό απές σο χασευτόν τ'ελάδ.]]
Ατώρα ας λέουμε πώς εποίνανε τ'εμετέρ τα τσιριχτά για να εγροικάτεν κι εσείς. Αούτο εν η συνταγήν τη γιάγιας ‘ιμ τη Ανατολής:
Παίρουμε δυο ποτήρϊα τσαΐ γαλιό-χουλιόν νερόν, έναν μικρόν χουλιάρ [[άλας]] κι έναν πα μικρόν χουλιάρ μέλ’. Παίρουμε ολίον μαγιάν πα και λύουμε τη μαγιάν απές σο νερόν. Επεκεί φέρουμε το αλεύρ’ και ξ̌ύνουμε γάλϊα-γάλϊα απές σο νερόν. Παίρουμε κι έναν ξύλινον χουλιάρ και ταράζομ’ ατό ως ατό να ίνεται ζυμάρ. Ζυμάρ όμως μαλακόν, γιοκ σκυρόν. Επεκεί τσ̌ιλϊάζουμ’ ατό μ’έναν πανίν και βάλομ’ ατό σ’έναν χουλιόν μέρος κι αφήνομ’ ατό περίπου ημσόν ώραν ν’ανεβαίν’ το ζυμάρ’. Ασού ανεβαίν’ το ζυμάρ’ κι επεκεί παίρουμε έναν τένζερην μικρόν, ξ̌ύνουμ’ απές έναν λίτρον σ̌[[σίμισκα|ιμισκί]] [[ελάδ]], βάλομ’ατό απάν ση φωτίαν, σο τσ̌ακ ή σον πέσ̌κον κι αναμένωμαι ους να ψέεται καλά.
Αφού εφτάμε όλϊα ατά, παίρουμε το ζυμάρ τ΄ανεβασμένον (γιόκ τ'ανανήβ’), βάλομ’ ατό δίπλα σο τηγάν’, παίρουμε κι έναν μαστραπάν’ νερόν κι έναν χουλιάρ του τσ̌αΐ. Βάλομε το χουλιάρ απές σο νερόν. Με τ'έναν το x̌ερ παίρουμε ζυμάρ απ'απές ασο σκεύος, τσουπώνουμε το x̌ερ εμούν κι εφτάμ’ ατό άμον μούστα. Ασ'απάν τη μερέαν αφήνουμε τα δάχτυλαν εμουν ολιόπον ανοιχτά για να εβγαίν το ζυμάρ απάν. Με τ'εβρεμμένον το χουλιάρ παίρουμε και ξ̌ύζουμε το ζυμάρ ντ’ εξέβεν ασ’ απάν το μέρος τη μούστας και σύρομ’ ατό απές σο χουλιόν τ'ελάδ. Ατό το έργον εφτάμ’ ατό ους να τελείται το ζουμάρ.
Τα ψεμμένα τα τσιριχτά εβγάλουμ’ ατά ασο χουλιόν τ'ελάδ και βάλουμ’ ατά σ’έναν καθαρόν σκεύος.
== Συνδέσμεα ==
*[https://web.archive.org/web/20110827031923/http://www.tithafame.gr/syntages/cea4cf83ceb9cf81ceb9cf87cf84ceac.html Πως εφτάμε τα τσιριχτά] - tithafame.gr (ελλ)
[[Κατηγορίαν:φαΐα|τσιριχτα]]
[[Κατηγορίαν:Βικιπαίδεια:Arthron]]
e77sf3a8kteoc6y2a26afejov9g9zrl
Πρότυπον:NUMBEROFARTICLES
10
297
9961
3084
2009-12-04T14:52:54Z
Qoan
1170
Κατηγοριοποιώ
9961
wikitext
text/x-wiki
[[Special:Prefixindex/Wp/pnt|'''167''']]
<noinclude>
[[Κατηγορίαν:Πρότυπα]]
</noinclude>
k1vbxic4j9o3rd3k6k4tvfc0u0gomq9
Πρότυπον:Arthron
10
298
24725
24722
2011-12-22T20:43:55Z
Ο Γέργον
1099
24725
wikitext
text/x-wiki
[[Εικόναν:Τσιριχτά.JPG|100px|right]]
Τα ποντιακά τα '''τσιριχτά''' είναι τα φημισμένα ελλενικά «λουκουμάδες» σα ζαχαροπλαστεία. Οι Πόντιοι εδίναν τα μωρά ‘τουν κι έτρωγαν τα τσιριχτά για γλύκισμαν αφού εβάλλανε ζάχαρην ή μέλ’ απάν.
Ατώρα ας λέγουμε πως εποίνανε τα τσιριχτά για να εγροικάτεν κι εσείς. Παίρουμε δυο ποτήρεα τςαΐ χαλέ χουλέν νερόν, έναν χουλέρ τςαΐ [[άλας]] κι έναν πα μικρόν χουλέρ τςαΐ μέλ’. Παίρουμε και ολίγον μαγιάν κα λύνουμε τη μαγιάν απές σο νερόν. Ύστερα φέρουμε το αλεύρ’ και κςύνουμε γάλεα γάλεα απές σο νερόν. Παίρουμε κι έναν ξύλινον χουλέρ και ταράζομ’ ατό όσπου να ίνεται ζουμάρ. Ζουμάρ όμως μαλακόν, όχι σπιχτόν.
<div align=left style="font-size:100%;">'''[[Τσιριχτά|Πλέα...]]'''</div>
<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]
</noinclude>
3v0vhihtw7lkif71htl67bmlbsgzmx6
Πρότυπον:Hapere
10
299
3665
3109
2009-03-07T11:23:13Z
ZaDiak
10
Redirected page to [[Πρότυπον:Χαπέραι]]
3665
wikitext
text/x-wiki
#REDIRECT [[Πρότυπον:Χαπέραι]]
me8bq91n4566ncy6m9mkboe64sign3m
Πρότυπον:Πληροφορίας χώρας
10
300
32484
31751
2015-08-04T22:06:54Z
YiFeiBot
4458
Ρομπότ: Μεταφέρω 6 σύνδεσμους interwiki, που τώρα παρέχονται από τα [[d:|Wikidata]] στο [[d:q5621162]]
32484
wikitext
text/x-wiki
<div>
{| border=1 align=right cellpadding=4 cellspacing=0 width=250 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big>'''{{{εθνικόν_όνεμαν}}}'''</big>
{{#if:{{{εθνικόν όνεμαν σα ποντιακά|<noinclude>-</noinclude>}}} | <br><big>'''{{{εθνικόν όνεμαν σα ποντιακά}}}'''</big> }}
|-
| align=center colspan="2" |
{| style="background:#f9f9f9;" border="0" cellpadding="2" cellspacing="0"
|- align=center
| [[Image:{{{σημαία}}}|150px|border|Σημαία]]
| [[Image:{{{σύμβολον}}}|{{{πλάτος εθνόσημου|100px}}}|Σύμβολον]]
|- align=center
| <small>[[{{{άρθρον σημαίας|Σημαία}}}|Σημαία]]</small>
| <small>[[{{{άρθρον συμβολατί|Σύμβολον}}}|Σύμβολον]]</small>
|}
|- align=center valign=top
{{#if:{{{εθνικόν_σύνθημαν|}}} |<!--then:
--><tr> <td colspan="3" style="line-height:1.2em; text-align:center;"><!--
--><small>'''[[Εθνικόν σύνθημαν|Εθνικόν σύνθημαν]]:''' ''{{{εθνικόν_σύνθημαν|}}}''</small></td>
</tr><!--
-->}}
|- align=center valign=top
{{#if:{{{εθνικόν_ύμνος|}}}|<!--then:
--><tr>
<td colspan="3" style="line-height:1.2em; text-align:center;"><!--
-->{{#if:{{{εθνικόν_ύμνος|}}}
|<!--then:--><small>'''[[Κατάλογος με τ' ύμνς τη κρατίων|Εθνικόν ύμνος]]:''' ''{{{εθνικόν_ύμνος}}}''</small>
}}<!--
--></td>
</tr><!--
-->}}
|- align=center
| colspan="2" style="background:#ffffff;" | [[Image:{{{χάρτες}}}|250px|Θέση τη χώρας σον κόσμον]]
|- valign=top
{{#if: {{{πρωτεύουσα και ασ' όλον τρανόν πολιτεία|<noinclude>-</noinclude>}}} |
{{!}} '''[[Πρωτεύουσα|Πρωτεύουσα]]'''<br><small>(και ασ' όλον τρανόν πολιτεία)</small>
{{!}} {{{πρωτεύουσα και ασ' όλον τρανόν πολιτεία}}}<br/>
{{#if: {{{συντεταγμένας_πρωτεύουσας|<noinclude>-</noinclude>}}} | <small>{{{συντεταγμένας_πρωτεύουσας}}}</small> }} }}
|- valign=top
{{#if: {{{πρωτεύουσα|<noinclude>-</noinclude>}}} |
{{!}} '''[[Πρωτεύουσα|Πρωτεύουσα]]'''
{{!}} {{{πρωτεύουσα}}}<br/>
{{#if: {{{συντεταγμένας_πρωτεύουσας|<noinclude>-</noinclude>}}} | <small>{{{συντεταγμένας_πρωτεύουσας}}}</small>}} }}
|- valign=top
{{#if: {{{ασ' όλον τρανόν πολιτεία|<noinclude>-</noinclude>}}} |
{{!}} '''Ασ' όλον τρανόν πολιτεία'''
{{!}} {{{ασ' όλον τρανόν πολιτεία}}} }}
|- valign=top
{{#if: {{{επίσημα_γλώσσας|<noinclude>-</noinclude>}}} |
{{!}} '''[[Επίσημον γλώσσα|Επίσημα γλώσσας]]'''
{{!}} {{{επίσημα_γλώσσας}}} }}
|- valign=top
| style="white-space: nowrap;" | '''[[Πολίτευμαν|Πολίτευμαν]]'''<br>{{{τίτλοι_τ' ηγετίων}}}
| style="white-space: nowrap;" | {{{πολίτευμαν}}}<br>{{{ονόματα_τ' ηγετίων}}}
|- valign=top
|- valign=top style="border-bottom:none;"
{{#if: {{{έκταση|<noinclude>-</noinclude>}}} |
{{!}} '''[[Κατάλογος χωρών ανά έκταση|Έκταση]]'''
{{!}} {{{έκταση}}} km² }} {{#if: {{{θέση_έκτασης|<noinclude>-</noinclude>}}} | ([[Κατάλογος χωρών ανά έκταση|{{{θέση_έκτασης}}}ον]]) }}
|- valign=top style="border-top:none;"
{{#if: {{{ποσοστόν_νερού|<noinclude>-</noinclude>}}} |
{{!}} Νερό (%)
{{!}} {{{ποσοστόν_νερού}}} }}
|- valign=top
| style="white-space: nowrap;" | '''[[Κατάλογος κρατίων ανά πληθυσμόν|Πληθυσμός]]'''<br> - Εκτίμηση {{{χρονία_εκτίμησης_πληθυσμού}}}<br> - Απογραφή {{{χρονία_απογραφής_πληθυσμού}}}<br> - [[Πυκνότητα πληθυσμού|Πυκνότητα]]
| <br>{{{εκτίμηση_πληθυσμού}}} ([[Κατάλογος χωρών ανά πληθυσμό|{{{θέση_πληθυσμού}}}ον]])<br>{{{πληθυσμός}}}<br>{{{πυκνότητα_πληθυσμού}}} κάτ./km² ([[Κατάλογος κρατίων κατά πυκνότητα πληθυσμού|{{{θέση_πυκνότητας_πληθυσμού}}}ον]])
|- valign=top
{{#if: {{{παράδας|<noinclude>-</noinclude>}}} |
{{!}} '''[[Παράδας|Παράδας]]'''
{{!}} {{{παράδας}}} }} {{#if: {{{κωδικός_παράδων|<noinclude>-</noinclude>}}} | <br>(<code>[[ISO 4217|{{{κωδικός_παράδων}}}]]</code>) }}
|- valign=top
| '''[[Ζώνε ώρας|Ζώνε ώρας]]''' {{#if: {{{θερινόν_διαφορά_UTC|<noinclude>-</noinclude>}}} | <br> - [[θερινόν ώρα|θερινόν ώρα]]}}
| {{{ώρα_ζώνες}}} ([[UTC|UTC]]{{{διαφορά_UTC}}}) {{#if: {{{θερινόν_διαφορά_UTC|<noinclude>-</noinclude>}}} |<br> ([[UTC|UTC]]{{{θερινόν_διαφορά_UTC}}})}}
|- valign=top
{{#if: {{{top_level_domain|<noinclude>-</noinclude>}}} |
{{!}} '''[[Top-level domain|Internet TLD]]'''
{{!}} <code>{{{top_level_domain}}}</code> }}
|- valign=top
{{#if: {{{κωδικός_τηλεφωνατί|<noinclude>-</noinclude>}}} |
{{!}} '''[[Κατάλογος με κωδικούς τηλεφωνατί κρατίων|Κωδικός τηλεφωνατί]]'''
{{!}} <code>+{{{κωδικός_τηλεφωνατί}}}</code> }}
{{#if: {{{σημειώσεις|<noinclude>-</noinclude>}}} |
{{!}}-valign=top
{{!}}colspan=2 {{!}} <small>{{{σημειώσεις}}}</small> }}
|}
</div><noinclude>
[[Category:Πρότυπα|Πληροφοριας χωρας]]
[[fr:Modèle:Pays]]
[[ro:Format:CutieŢări]]
</noinclude>
6cpmb5i62i7bb9lcnxdzb4mc79j1t0k
Πρότυπον:Ημέρας τη εβδομάδας
10
301
32485
31732
2015-08-04T22:07:04Z
YiFeiBot
4458
Ρομπότ: Μεταφέρω 1 σύνδεσμους interwiki, που τώρα παρέχονται από τα [[d:|Wikidata]] στο [[d:q6091158]]
32485
wikitext
text/x-wiki
{| border="0" id="toc" style="margin: 0 auto" align=center
| style="background:#ccccff" align="center" | '''Ημέρας τ' [[Εβδομάδα|εβδομάδας]]'''
|-
|align=center| [[Κερεκήν|Κερεκήν]] | [[Δευτέραν|Δευτέραν]] | [[Τρίτ|Τρίτ]] | [[Τετράδ|Τετράδ]] | [[Πέφτ|Πέφτ]] | [[Παρασκευήν|Παρασκευήν]] | [[Σάββαν|Σάββαν]]
|}
<noinclude>
[[ml:ഫലകം:ആഴ്ചയിലെ ദിവസങ്ങള്]]
[[Κατηγορίαν:Πρότυπα]]
</noinclude>
1qs4r63nz8lo4hgjxw0zkppzmmd9duf
Πρότυπον:Κράτη ΕΣ
10
302
35951
34756
2024-10-26T05:27:36Z
Minorax
7522
35951
wikitext
text/x-wiki
<br clear=all>
{| id="toc" style="margin: auto;"
! align="center" style="background:#ccccff" width="100%" | <div style="float:left;width:50px;"> </div> Κράτη τ΄ [[Ευρωπαϊκόν Σύνδεσμος|Ευρωπαϊκού Συνδέσμου]] || [[Image:European flag.svg|50px|Σημαία τ΄ Ευρωπαϊκού Συνδέσμου]]
|-
| align="center" style="font-size: 100%;" colspan="2" |
''' [[Αυστρία]]{{·}} [[Βέλγιον]]{{·}} [[Βουλγαρία]]{{·}} [[Γαλλία]]{{·}} [[Γερμανία]]{{·}} [[Δανία]]{{·}} [[Ελλάδα]]{{·}} [[Εσθονία]]{{·}} [[Ιρλανδία]]{{·}} [[Ισπανία]]{{·}} [[Ιταλία]]{{·}} [[Κροατία]]{{·}} [[Κύπρος]]{{·}} [[Λεττονία]]{{·}} [[Λιθουανία]]{{·}} [[Λουξεμβούργο]]{{·}} [[Μάλτα]]{{·}} [[Ολλανδία]]{{·}} [[Ουγγαρία]]{{·}} [[Πολωνία]]{{·}} [[Πορτογαλία]]{{·}} [[Ρουμανία]]{{·}} [[Σλοβακία]]{{·}} [[Σλοβενία]]{{·}} [[Σουηδία]]{{·}} [[Τσεχία]]{{·}} [[Φινλανδία]]
|}
<noinclude>
[[Category:Πρότυπα|Κράτη ΕΣ]]
</noinclude>
lo2c6yooev0ovgcrce1ll1t52y96w5p
Πρότυπον:Κράτη τη Ευρώπης
10
303
36290
36289
2025-07-21T16:41:09Z
Apokar
10158
36290
wikitext
text/x-wiki
<br clear="all" />
{| align="center" class="toccolours" cellspacing="0"
|-
! bgcolor="#ccccff" align="center" | '''[[Κράτος|Κράτη]] τη [[Ευρώπην|Ευρώπης]]'''
|-
| align="center" style="font-size: 100%;" colspan="3"|
[[Αζερμπαϊτζάν]]<sup>1</sup>{{•}} [[Άι Μαρίνος]]{{•}} [[Αλβανία]]{{•}} [[Ανδόρρα]]{{•}} [[Αρμενία]]<sup>2</sup>{{•}} [[Αυστρία]]{{•}} [[Βατικανό]]{{•}} [[Βέλγιον]]{{•}} [[Βοσνία και Ερζεγοβίνη|{{nowrap|Βοσνία και}} Ερζεγοβίνη]]{{•}} [[Βουλγαρία]]{{•}} [[Γαλλία]]{{•}} [[Γερμανία]]{{•}} [[Γρουζία]]<sup>1</sup>{{•}} [[Δανία]]{{•}} [[Ελβετία]]{{•}} [[Ελλάδα]]{{•}} [[Εσθονία]]{{•}} {{nowrap|[[Ηνωμένο Βασίλειο]]}}{{•}} [[Ιρλανδία]]{{•}} [[Ισλανδία]]{{•}} [[Ισπανία]]{{•}} [[Ιταλία]]{{•}} [[Κόσοβο]]{{•}} [[Κροατία]]{{•}} [[Κύπρος]]<sup>2</sup>{{•}} [[Λεττονία]]{{•}} [[Λευκορουσία]]{{•}} [[Λιθουανία]]{{•}} [[Λιχτενστάιν]]{{•}} [[Λουξεμβούργο]]{{•}} [[Βόρεια Μακεδονία|Βόρεια Μακεδονία]]{{•}} [[Μάλτα]]{{•}} [[Μαυροβούνιον]]{{•}} [[Μολδαβία]]{{•}} [[Μονακό]]{{•}} [[Νορβηγία]]{{•}} [[Ολλανδία]]{{•}} [[Ουγγαρία]]{{•}} [[Ουκρανία]]{{•}} [[Πολωνία]]{{•}} [[Πορτογαλία]]{{•}} [[Ρουμανία]]{{•}} [[Ρουσία]]<sup>1</sup>{{•}} [[Σερβία]]{{•}} [[Σλοβακία]]{{•}} [[Σλοβενία]]{{•}} [[Σουηδία]]{{•}} [[Τουρκία]]<sup>1</sup>{{•}} [[Τσεχία]]{{•}} [[Φινλανδία]]
|----
| align="center" style="font-size: 100%" colspan="2"|
'''Κτήσεις:''' [[Ακρωτήρι Κύπρου|Ακρωτήρι]]<sup>3</sup>{{•}} [[Δεκέλεια Κύπρου|Δεκέλεια]]<sup>3</sup>{{•}} {{nowrap|[[Νήσοι Φερόες]]}}{{•}} [[Γιβραλτάρ]]{{•}} [[Γκέρνσεϋ]]{{•}} [[Τζέρσεϋ]]{{•}} {{nowrap|[[Νήσος Μαν]]}}
|----
| style="font-size: 94%" colspan="1"|
1. Ένα κομάτ ασήν έκτασην ατς ευρίεται σην Ασίαν.<br>
2. Γεωγραφικά εν σην Ασίαν, άμαν λέγουμ' ατέναν ευρωπαϊκόν για την ιστορίαν και τον πολιτισμόν ατς.<br>
3. Βρετανικόν έδαφος απέσς σο Κυπριακόν τη Δημοκρατίαν.
|}<includeonly>{{#if: {{NAMESPACE}} | | [[Κατηγορίαν:{{PAGENAME}}| ]] [[Κατηγορίαν:Κράτη]] [[Κατηγορίαν:Ευρώπη]]}}</includeonly><!--
--><noinclude>{{Documentation}}
</noinclude>
ddnz9bbo2agjqep5cn8jb7lmuen3414
Πρότυπον:Μήνας
10
304
36998
36997
2025-12-16T16:44:54Z
Εὐθυμένης
2777
36998
wikitext
text/x-wiki
{| border="0" id="toc" style="margin: 0 auto" align=center
|align=center| [[Καλαντάρτς]] | [[Κούντουρος]] | [[Μαρτς]] | [[Απρίλτς]] | [[Καλομηνάς]] | [[Κερασινός]] | [[Χορτοθέρτς]] | [[Αλωνάρτς]] | [[Σταυρίτες]] | [[Τρυγομηνάς]] | [[Αεργίτες]] | [[Χριστουγεννάρτς]]
|}
<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|Μηνας]]
</noinclude>
4pmdi1e5kh58tunnvua9cw6ut7ciebl
Πρότυπον:Μετάφραση el
10
305
3662
3166
2009-03-07T11:15:59Z
ZaDiak
10
[[Πρότυπον:Πρότυπον:Μετάφραση el]] ετερχλαεύτεν σο [[Πρότυπον:Μετάφραση el]]
3662
wikitext
text/x-wiki
<div id="source">
{| class="toccolours" style="border: 1px solid #aaaaaa; background-color: #f9f9f9; padding: 5px; margin-top: 1em; margin-bottom: -0.5em; clear: both; width:100%;"
| width="30px"| [[Image:Wikipedia-logo.png|25px|]]
| Αβούτο το γράψιμον στηρίχκεται σο [[:el:{{{1|{{FULLPAGENAME}}}}}|άρθρον]] τ' [[:el:|ελλενικού τη Βικιπαίδειας]], κατά την [[w:el:Άδεια Ελεύθερης Τεκμηρίωσης GNU|GNU FDL]]. (<span class="plainlinks">[http://el.wikipedia.org{{localurl:{{{1|{{FULLPAGENAMEE}}}}}|action=history}} ιστορικόν/συντάκτες]</span>).
|}</div>
<noinclude>
[[Category:Πρότυπα|Μεταφραση el]]
</noinclude>
kr0hl1c8m97l8txzcnxfwnw1q89vetl
Πρότυπον:Χαπέραι
10
306
35755
35754
2024-10-12T14:20:59Z
37.73.38.10
35755
wikitext
text/x-wiki
* <span class="plainlinks" style="white-space: nowrap">[http://translatewiki.net/wiki/Translating:Group_statistics Μετάφραση τ' interface (pnt)]</span>: 45.11% (most used: 100.00%)
----
<div class="center">'''Ντο ίνεται με τη Βικιπαίδειαν'''</div>
----
==2009==
* '''[[5 Μαρτί|5 Μαρτί]]''': Έντονεν η Ποντιακή Βικιπαίδεια, έναν τρανόν κεφάλαιον για την ιστορίαν τ΄Ελλένων Ποντίων. Τερέστεν αδακά: '''[http://pnt.wikipedia.org/ http://pnt.wikipedia.org/]'''.
* '''[[23 Καλανταρί|23 Καλανταρί]]''': [[Βικιπαίδεια:Αδακά ψηφίζομεν για νοματάντς|Ψηφίζομεν για νοματάντς και γιαρίφς]] τη [[Βικιπαίδεια|Βικιπαίδειας]]
* '''[[7 Καλανταρί|7 Καλανταρί]]''': Εδέκανε΄μας ασο [[meta:Main_Page|Meta-Wiki]] την [[meta:Requests for new languages/Wikipedia Pontic|έγκρισην]] για να ίνετεν το κανονικόν η Ποντιακή [[Βικιπαίδεια|Βικιπαίδεια]]. Τερέστεν μερ΄κικά θα χτίζουματην: [http://pnt.wikipedia.org/ http://pnt.wikipedia.org/].
==2008==
* '''[[29 Απρίλτ|29 τ' Απρίλτ]]''': Σο δοκιμαστικόν κομμάτ τη Ποντιακού Βικιπαίδειας εχπάσκεται και χτίετε το ημερολόγιον. [[Σταυρίτες|Τερέστε παράδειγμαν]].
* '''[[18 Απρίλτ|18 τ' Απρίλτ]]''': Σο δοκιμαστικόν κομμάτ τη Ποντιακού Βικιπαίδειας εχπάσκεται και χτίετε το ημερολόγιον. [[Αρχικόν σελίδα]].
* '''[[7 Μαρτί|7 τη Μάρτ]]''': Σο δοκιμαστικόν κομμάτ τη Ποντιακού Βικιπαίδειας εχτέθεν καινούρ [[Βικιπαίδεια:Αγορά|αγοράν]].
==2007==
* '''[[23 Σταυρί|23 τη Σταυρίτε]]''': Ερχίνεσεν το δοκιμαστικόν κομμάτ' τη [[Ποντιακής Βικιπαίδειας]] τη [[Παλαιόν]].
<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]
</noinclude>
ebrubwa3y7k0fwb0o6kqunsalpiagn2
Κατηγορίαν:Wp/pnt
14
307
31652
31639
2013-04-30T00:22:39Z
EmausBot
1699
Bot: Migrating 1 interwiki links, now provided by [[Wikipedia:Wikidata|Wikidata]] on [[d:Q1281]]
31652
wikitext
text/x-wiki
This is the main category.
heyctcv6q3zzcdjy21oe6tv63vip0c6
MediaWiki:Sidebar
8
308
34427
5688
2020-04-02T04:20:18Z
~riley
2999
RMV - outdated, 2009 (GS action
34427
wikitext
text/x-wiki
* navigation
** mainpage|mainpage-description
** pump-url|pump
** recentchanges-url|recentchanges
** sandbox-url|sandbox
** randompage-url|randompage
** helppage|help
** sitesupport-url|sitesupport
3p79msq63mmj8hgcpmwb5b1hcb4pley
MediaWiki:Pump-url
8
309
3241
2009-03-06T15:36:00Z
ZaDiak
10
Καινούρεον σελίδαν με 'Βικιπαίδεια:Αγορά'
3241
wikitext
text/x-wiki
Βικιπαίδεια:Αγορά
g0ui4nh0k6707cvohdjw32rglghqbmh
MediaWiki:Pump
8
310
3242
2009-03-06T15:36:26Z
ZaDiak
10
Καινούρεον σελίδαν με 'Αγορά'
3242
wikitext
text/x-wiki
Αγορά
i88wmglxn81fmm0pjt6ne16plhy8g4u
Κατηγορίαν:Άγιος Μαρίνος
14
311
31576
29698
2013-04-13T07:59:43Z
KLBot2
3570
Bot: Migrating 105 interwiki links, now provided by [[Wikidata]] on [[:d:Q7130509]]
31576
wikitext
text/x-wiki
{{Commonscat|San Marino}}
[[Κατηγορίαν:Κράτη|Άγιος Μαρίνος]]
lxo8sjkylzsrzutj4bmytswwpxof905
Κατηγορίαν:Έλλενας (αρχαιότητα)
14
312
31444
30321
2013-03-11T10:24:20Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 66 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6692116]] [[M:User:Addbot/WDS|(translate me)]]
31444
wikitext
text/x-wiki
[[Κατηγορίαν:Ελλενικόν ιστορίαν|Ελλενας (αρχαιοτητα)]]
7lej37seeeau1ygjfwlgpe12tguxa5t
Κατηγορίαν:Αλβανία
14
313
31503
29499
2013-03-14T05:09:36Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 137 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7130966]] [[M:User:Addbot/WDS|(translate me)]]
31503
wikitext
text/x-wiki
{{Commonscat|Albania}}
[[Κατηγορίαν:Κράτη|Αλβανία]]
[[Κατηγορίαν:Βαλκάνια|Αλβανία]]
a5wr1c3majwetzlj0forp3m3ulriw4m
Κατηγορίαν:Ανδόρρα
14
314
31577
29745
2013-04-13T08:01:20Z
KLBot2
3570
Bot: Migrating 129 interwiki links, now provided by [[Wikidata]] on [[:d:Q7130777]]
31577
wikitext
text/x-wiki
{{Commonscat|Andorra}}
[[Κατηγορίαν:Κράτη|Ανδόρρα]]
[[Κατηγορίαν:Ιβηρία|Ανδόρρα]]
cugcmuj2uwmmormluh4nnz21x51h89d
Κατηγορίαν:Αραπάδας
14
315
31578
31074
2013-04-13T08:01:21Z
KLBot2
3570
Bot: Migrating 1 interwiki links, now provided by [[Wikidata]] on [[:d:Q3919953]]
31578
wikitext
text/x-wiki
[[Κατηγορίαν:Τεχνολογίαν|Αραπαδας]]
kwcpqd3jouyn933bt1hsojjqhsi15sw
Κατηγορίαν:Ασία
14
316
31579
31075
2013-04-13T08:01:22Z
KLBot2
3570
Bot: Migrating 1 interwiki links, now provided by [[Wikidata]] on [[:d:Q5610083]]
31579
wikitext
text/x-wiki
{{Commonscat|Asia}}
[[Κατηγορίαν:Γεωγραφίαν|Ασία]]
[[Κατηγορίαν:Ευρασία|*]]
bc5tn4ij1n531svqv4p54yiik0tuwii
Κατηγορίαν:Αστρονομία
14
317
31402
31076
2013-03-08T00:01:36Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6508]] [[M:User:Addbot/WDS|(translate me)]]
31402
wikitext
text/x-wiki
{{Commonscat|Astronomy}}
[[Κατηγορίαν:Επιστήμην|Αστρονομια]]
ip26olrp3w59ph4gye7tgwx94cbchlf
Κατηγορίαν:Αυστρία
14
318
31077
29375
2013-03-07T18:39:58Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 152 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1455420]] [[M:User:Addbot/WDS|(translate me)]]
31077
wikitext
text/x-wiki
{{Commonscat|Austria}}
[[Κατηγορίαν:Κράτη|Αυστρία]]
o7amll0te5kj4kn1h8zvhvvnjpxcpda
Κατηγορίαν:Αυστραλία
14
319
31078
29709
2013-03-07T18:40:08Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 152 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1411322]] [[M:User:Addbot/WDS|(translate me)]]
31078
wikitext
text/x-wiki
{{Commonscat|Australia}}
[[Κατηγορίαν:Κράτη|Αυστραλία]]
ak5erspvp8bdg9ubmj3xy7pq2fkeh27
Κατηγορίαν:Βέλγιον
14
320
31079
30864
2013-03-07T18:40:30Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 147 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4366768]] [[M:User:Addbot/WDS|(translate me)]]
31079
wikitext
text/x-wiki
{{Commonscat|Belgium}}
[[Κατηγορίαν:Κράτη|Βέλγιον]]
9uj9fngi5x7l40gw2thib6mylvsa6s3
Κατηγορίαν:Βαλκάνια
14
321
31528
30314
2013-04-02T18:47:20Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 59 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7879262]] [[M:User:Addbot/WDS|(translate me)]]
31528
wikitext
text/x-wiki
[[Κατηγορίαν:Ευρώπη|Βαλκάνια]]
[[Κατηγορίαν:Χερσονησία|Βαλκάνια]]
gqtzsdjknexj6mvlntpdgy52d9kxj4h
Κατηγορίαν:Βικιπαίδεια
14
322
31581
31080
2013-04-13T08:03:06Z
KLBot2
3570
Bot: Migrating 12 interwiki links, now provided by [[Wikidata]] on [[:d:Q4966679]]
31581
wikitext
text/x-wiki
{{Commonscat|Wikipedia}}
[[Κατηγορίαν:Wp/pnt|Βικιπαίδεια]]
euh24p4wpx7u54t1be0yamjnou6bhpu
Κατηγορίαν:Βοσνία και Ερζεγοβίνη
14
323
31582
31512
2013-04-13T08:04:08Z
KLBot2
3570
Bot: Migrating 120 interwiki links, now provided by [[Wikidata]] on [[:d:Q7130650]]
31582
wikitext
text/x-wiki
{{Commonscat|Bosnia and Herzegovina}}
[[Κατηγορίαν:Κράτη|Βοσνία και Ερζεγοβίνη]]
[[Κατηγορίαν:Βαλκάνια|Βοσνία και Ερζεγοβίνη]]
1h0ej0fea7qyq52a1kqbrrnppfz7e9s
Κατηγορίαν:Βουλγαρία
14
324
31081
30315
2013-03-07T18:41:08Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 143 interwiki links, now provided by [[d:|Wikidata]] on [[d:q8241]] [[M:User:Addbot/WDS|(translate me)]]
31081
wikitext
text/x-wiki
{{Commonscat|Bulgaria}}
[[Κατηγορίαν:Κράτη|Βουλγαρία]]
[[Κατηγορίαν:Βαλκάνια|Βουλγαρία]]
snxe0e99wd38qouusgo9sdx6tctj3c1
Κατηγορίαν:Γαλλία
14
325
31403
31082
2013-03-08T00:30:13Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q8249]] [[M:User:Addbot/WDS|(translate me)]]
31403
wikitext
text/x-wiki
{{Commonscat|France}}
[[Κατηγορίαν:Κράτη|Γαλλία]]
75ap6bdsy6r4rpyll4jxkwsqc6jgsb9
Κατηγορίαν:Γερμανία
14
326
33180
31404
2016-10-31T00:12:15Z
EmausBot
1699
Bot: Migrating 1 interwiki links, now provided by [[Wikipedia:Wikidata|Wikidata]] on [[d:Q1410828]]
33180
wikitext
text/x-wiki
{{Commonscat|Germany}}
[[Κατηγορίαν:Κράτη|Γερμανία]]
kjawtr6s1j4gfuy6p907mi77ib4kd12
Κατηγορίαν:Γεωγραφίαν
14
327
31405
31084
2013-03-08T00:31:17Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1457673]] [[M:User:Addbot/WDS|(translate me)]]
31405
wikitext
text/x-wiki
{{Commonscat|Geography}}
[[Κατηγορίαν:Wp/pnt|Γεωγραφίαν]]
pa0v9edwcoh9jvsv2ji253ec5l8aoxa
Κατηγορίαν:Γεωμορφολογία
14
328
31502
30567
2013-03-14T05:09:28Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 64 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7037629]] [[M:User:Addbot/WDS|(translate me)]]
31502
wikitext
text/x-wiki
[[Κατηγορίαν:Γεωγραφίαν|Γεωμορφολογία]]
ljesnx8gasqpv192vbh703zo7h2ch5y
Κατηγορίαν:Γραμματικήν
14
329
31583
31085
2013-04-13T08:04:19Z
KLBot2
3570
Bot: Migrating 2 interwiki links, now provided by [[Wikidata]] on [[:d:Q4960721]]
31583
wikitext
text/x-wiki
{{Commonscat|Grammar}}
[[Κατηγορίαν:Γλωσσολογίαν]]
hn6jv0bg0st8aa2j2ym1g15glpofm9r
Κατηγορίαν:Γρουζία
14
330
31584
30238
2013-04-13T08:05:14Z
KLBot2
3570
Bot: Migrating 130 interwiki links, now provided by [[Wikidata]] on [[:d:Q7059874]]
31584
wikitext
text/x-wiki
{{Commonscat|Georgia}}
[[Κατηγορίαν:Κράτη|Γρουζία]]
bzhjo0rh9k89hjqr1nl2zhgh5fxg6o7
Κατηγορίαν:Δανία
14
331
31086
30235
2013-03-07T18:42:07Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 151 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4367478]] [[M:User:Addbot/WDS|(translate me)]]
31086
wikitext
text/x-wiki
{{Commonscat|Denmark}}
[[Κατηγορίαν:Κράτη|Δανία]]
[[Κατηγορίαν:Σκανδιναβία|Δανία]]
9ej4rhfj5k8wi45dwz2fo34vmowlp9d
Κατηγορίαν:Ελβετία
14
332
31087
29544
2013-03-07T18:42:18Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 137 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1456250]] [[M:User:Addbot/WDS|(translate me)]]
31087
wikitext
text/x-wiki
{{Commonscat|Switzerland}}
[[Κατηγορίαν:Κράτη|Ελβετία]]
ev3v5i97q7x6llspg85o40ssil799py
Κατηγορίαν:Ελλάδα
14
333
31088
30478
2013-03-07T18:42:28Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 151 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4367791]] [[M:User:Addbot/WDS|(translate me)]]
31088
wikitext
text/x-wiki
{{Commonscat|Greece}}
[[Κατηγορίαν:Κράτη|Ελλάδα]]
[[Κατηγορίαν:Βαλκάνια|Ελλάδα]]
[[Κατηγορίαν:Ευρώπη|Ελλάδα]]
3etimuowi0n3r7ee271mr9qxyuz3j9d
Βικιπαίδεια:Βοήθεια
4
334
3310
2009-03-06T15:38:03Z
ZaDiak
10
[[Βικιπαίδεια:Βοήθεια]] ετερχλαεύτεν σο [[Βοήθειαν:Περιεχόμενα]]
3310
wikitext
text/x-wiki
#REDIRECT [[Βοήθειαν:Περιεχόμενα]]
ii8hki0k9cwg8nclb9n1k7ph2h3t9tr
Κατηγορίαν:Ελλενικόν ιστορίαν
14
335
31499
30322
2013-03-14T05:08:19Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 80 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6947426]] [[M:User:Addbot/WDS|(translate me)]]
31499
wikitext
text/x-wiki
{{Commonscat|History of Greece}}
[[Κατηγορίαν:Ιστορίαν|Ελλενικον ιστοριαν]]
m0zj6wkn2d0wn43qiaik6zsgymlcem6
Κατηγορίαν:Ευρασία
14
336
31527
30638
2013-04-02T18:45:35Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 50 interwiki links, now provided by [[d:|Wikidata]] on [[d:q8426586]] [[M:User:Addbot/WDS|(translate me)]]
31527
wikitext
text/x-wiki
[[Κατηγορίαν:Ασία|*]]
[[Κατηγορίαν:Ευρώπη|*]]
ew8byvlnjgglhv08rbii0f27gqcxci5
Κατηγορίαν:Ευρώπη
14
337
31586
31089
2013-04-13T08:05:20Z
KLBot2
3570
Bot: Migrating 2 interwiki links, now provided by [[Wikidata]] on [[:d:Q4587662]]
31586
wikitext
text/x-wiki
{{Commonscat|Europe}}
[[Κατηγορίαν:Γεωγραφίαν|Ευρωπη]]
[[Κατηγορίαν:Ευρασία|*]]
oojjaey2b3kkriunmb45syzkpufb5ia
Κατηγορίαν:Ημέρας τη εβδομάδας
14
338
3323
3322
2009-03-06T15:38:04Z
MF-Warburg
53
1 revision
3323
wikitext
text/x-wiki
[[Category:Ημερολόγιαν|Ημέρας τη εβδομάδας]]
ka61knbueflzlktwnnucvdx03wij4gb
Κατηγορίαν:Ημέρας τη χρονίας
14
339
31498
29882
2013-03-14T05:08:18Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 81 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7190896]] [[M:User:Addbot/WDS|(translate me)]]
31498
wikitext
text/x-wiki
[[Κατηγορίαν:Χρόνος|Ημερας]]
[[Κατηγορίαν:Ιστορίαν|Ημερας]]
69p5moj5slpe268day0immqj215md07
Κατηγορίαν:Ημερολόγιαν
14
340
3329
3328
2009-03-06T15:39:49Z
MF-Warburg
53
1 revision
3329
wikitext
text/x-wiki
[[Category:Χρονολόγησην|Ημερολόγιαν]]
1ik629d73dlu3n8cqguben87qxh3u88
Κατηγορίαν:Θάλασσας
14
341
31641
31613
2013-04-24T10:26:40Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 2 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6491872]] [[M:User:Addbot/WDS|(translate me)]]
31641
wikitext
text/x-wiki
{{Commonscat|Seas}}
[[Κατηγορίαν:Γεωμορφολογία|Θάλασσας]]
mhio4i1qlcdgk18s4965dadrko7vc8i
Κατηγορίαν:Θρησκείαν
14
342
3335
3334
2009-03-06T15:39:49Z
MF-Warburg
53
2 revisions
3335
wikitext
text/x-wiki
[[Category:Wp/pnt|Θρησκειαν]]
97i4vxfczwi5gbvm5u5cx5crzyn154o
Κατηγορίαν:Ιβηρία
14
343
31526
28828
2013-04-02T18:45:16Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 22 interwiki links, now provided by [[d:|Wikidata]] on [[d:q8530571]] [[M:User:Addbot/WDS|(translate me)]]
31526
wikitext
text/x-wiki
[[Κατηγορίαν:Ευρώπη|Ιβηρία]]
[[Κατηγορίαν:Χερσονησία|Ιβηρία]]
iu4jcffnp6oiws9c998u1kxpzc3a1bk
Κατηγορίαν:Ιρλανδία
14
344
31090
29514
2013-03-07T18:43:31Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 106 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4368623]] [[M:User:Addbot/WDS|(translate me)]]
31090
wikitext
text/x-wiki
[[Κατηγορίαν:Κράτη|Ιρλανδία]]
8zmpywttdh3d8tx6c0o8wgrctkfw9q7
Κατηγορίαν:Ισλανδία
14
345
31091
29595
2013-03-07T19:00:11Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 139 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4368249]] [[M:User:Addbot/WDS|(translate me)]]
31091
wikitext
text/x-wiki
{{Commonscat|Iceland}}
[[Κατηγορίαν:Κράτη|Ισλανδία]]
rlytgi6byqhx55f52fwqwn1yl91b2zd
Κατηγορίαν:Ισπανία
14
346
31092
30331
2013-03-07T19:00:22Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 200 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1411173]] [[M:User:Addbot/WDS|(translate me)]]
31092
wikitext
text/x-wiki
{{Commonscat|Spain}}
[[Κατηγορίαν:Κράτη|Ισπανία]]
[[Κατηγορίαν:Ιβηρία|Ισπανία]]
1b7ky7fxaio6d7wte1wn0gh0erwtqqj
Κατηγορίαν:Ιστορίαν
14
347
31093
30671
2013-03-07T19:00:33Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 203 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1457595]] [[M:User:Addbot/WDS|(translate me)]]
31093
wikitext
text/x-wiki
{{Commonscat|History}}
[[Κατηγορίαν:Wp/pnt|Ιστορίαν]]
0rh61xh559lscp8cy1gxorsg3i1kwog
Κατηγορίαν:Ιταλία
14
348
31094
30437
2013-03-07T19:00:44Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 191 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1410903]] [[M:User:Addbot/WDS|(translate me)]]
31094
wikitext
text/x-wiki
{{Commonscat|Italy}}
[[Κατηγορίαν:Κράτη|Ιταλία]]
8akpl7boe5u12mr4szyc9tpyeb76lfb
Κατηγορίαν:Κίνα
14
349
34328
31095
2019-11-20T09:43:21Z
Chongkian
3947
34328
wikitext
text/x-wiki
{{Commonscat|China}}
[[Κατηγορίαν:Κράτη|Κίνα]]
[[Κατηγορίαν:Ασία]]
j10hb0oqq7nfsd3wclelf9f9h3144fo
Κατηγορίαν:Καυκασία
14
350
31587
29348
2013-04-13T08:06:57Z
KLBot2
3570
Bot: Migrating 69 interwiki links, now provided by [[Wikidata]] on [[:d:Q7463169]]
31587
wikitext
text/x-wiki
{{Commonscat|Caucasus}}
[[Κατηγορίαν:Ασία|Καυκασία]]
[[Κατηγορίαν:Ευρώπη|Καυκασία]]
[[Κατηγορίαν:Ευρασία|Καυκασία]]
eoktmwuq170wemgn0pr0zdilvwelp5j
Κατηγορίαν:Κράτη
14
351
31096
30650
2013-03-07T19:01:09Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 199 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4026570]] [[M:User:Addbot/WDS|(translate me)]]
31096
wikitext
text/x-wiki
{{Commonscat|Countries}}
[[Κατηγορίαν:Γεωγραφίαν|Κράτη]]
hfwvgqfvtni40524hnf9x67acrbs3ne
Κατηγορίαν:Κροατία
14
352
31588
31097
2013-04-13T08:07:00Z
KLBot2
3570
Bot: Migrating 1 interwiki links, now provided by [[Wikidata]] on [[:d:Q5626618]]
31588
wikitext
text/x-wiki
{{Commonscat|Croatia}}
[[Κατηγορίαν:Κράτη|Κροατία]]
[[Κατηγορίαν:Βαλκάνια|Κροατία]]
mjv1zj3mr48r8vcgz19scw6k0buv8a5
Κατηγορίαν:Κόμιξ
14
353
31623
30526
2013-04-15T02:54:27Z
Addbot
3509
Replaced content with "{{Commonscat|Comics}} [[Κατηγορίαν:Πολιτισμόν|Κομιξ]] [[fa:رده:کمیک استریپ]] [[hu:Kategória:Képregények]]"
31623
wikitext
text/x-wiki
{{Commonscat|Comics}}
[[Κατηγορίαν:Πολιτισμόν|Κομιξ]]
[[fa:رده:کمیک استریپ]]
[[hu:Kategória:Képregények]]
23depeyvp3mdlfjc5lxmdhyvt4laih7
Κατηγορίαν:Λιχτενστάιν
14
354
31590
30475
2013-04-13T08:08:31Z
KLBot2
3570
Bot: Migrating 115 interwiki links, now provided by [[Wikidata]] on [[:d:Q7130748]]
31590
wikitext
text/x-wiki
{{Commonscat|Liechtenstein}}
[[Κατηγορίαν:Κράτη|Λιχτενστάιν]]
t02tnq6h2peykuml15ysthhuccwik1m
Κατηγορίαν:Λουξεμβούργο
14
355
31098
30328
2013-03-07T19:01:31Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 124 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4368335]] [[M:User:Addbot/WDS|(translate me)]]
31098
wikitext
text/x-wiki
{{Commonscat|Luxembourg}}
[[Κατηγορίαν:Κράτη|Λουξεμβούργο]]
9cqimxp18gg2r2i79ltwy6tyk64cp9v
Κατηγορίαν:Μάλτα
14
356
31591
31099
2013-04-13T08:08:35Z
KLBot2
3570
Bot: Migrating 2 interwiki links, now provided by [[Wikidata]] on [[:d:Q4368434]]
31591
wikitext
text/x-wiki
{{Commonscat|Malta}}
[[Κατηγορίαν:Κράτη|Μάλτα]]
[[Κατηγορίαν:Νησία|Μάλτα]]
[[Κατηγορίαν:Ευρώπη|Μάλτα]]
rkanic9k9aldbmov4ohuuidkzti3dq0
Κατηγορίαν:Μήνας
14
357
3378
3377
2009-03-06T15:39:51Z
MF-Warburg
53
1 revision
3378
wikitext
text/x-wiki
[[Category:Χρόνος|Μηνας]]
j2arh7wxzc3137zdkypzf2yxcupt3ws
Κατηγορίαν:Μακεδονία
14
358
31507
30325
2013-03-14T05:10:09Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 39 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7098293]] [[M:User:Addbot/WDS|(translate me)]]
31507
wikitext
text/x-wiki
[[Category:Ελλάδα|Μακεδονία]]
q7pju10738lowilntsrse5ucq4kk0fd
Κατηγορίαν:Μαύρον Θάλασσα
14
359
31530
30616
2013-04-02T18:48:00Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 55 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7217332]] [[M:User:Addbot/WDS|(translate me)]]
31530
wikitext
text/x-wiki
{{Commonscat|Black Sea}}
[[Κατηγορίαν:Θάλασσας|Μαυρον Θαλασσα]]
jujgnus2orikjhonfbpfxb28zocz0r2
Κατηγορίαν:Μολδαβία
14
360
31100
30738
2013-03-07T19:01:55Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 123 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5609626]] [[M:User:Addbot/WDS|(translate me)]]
31100
wikitext
text/x-wiki
{{Commonscat|Moldova}}
[[Κατηγορίαν:Κράτη|Μολδαβία]]
[[Κατηγορίαν:Βαλκάνια|Μολδαβία]]
oiwte2u4v42eto90wuypc49nknshawd
Κατηγορίαν:Μουσική
14
361
31101
29877
2013-03-07T19:02:06Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 190 interwiki links, now provided by [[d:|Wikidata]] on [[d:q8255]] [[M:User:Addbot/WDS|(translate me)]]
31101
wikitext
text/x-wiki
{{Commonscat|Music}}
[[Κατηγορίαν:Πολιτισμόν|Μουσικη]]
3955t5rrnf0z7ty3xcnxjtu4n8g5cqa
Κατηγορίαν:Νέα Ζηλανδία
14
362
31102
30326
2013-03-07T19:02:17Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 128 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1411745]] [[M:User:Addbot/WDS|(translate me)]]
31102
wikitext
text/x-wiki
{{Commonscat|New Zealand}}
[[Κατηγορίαν:Κράτη]]
nka3794961l081dqmwtax8xrbys6xwt
Κατηγορίαν:Νησία
14
363
31103
30349
2013-03-07T19:02:27Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 124 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6394918]] [[M:User:Addbot/WDS|(translate me)]]
31103
wikitext
text/x-wiki
{{Commonscat|Islands}}
[[Κατηγορίαν:Γεωμορφολογία]]
s7z5xcblmb4t0w2mxpqzqbnhr06kfb8
Κατηγορίαν:Νορβηγία
14
364
31594
27969
2013-04-13T08:11:11Z
KLBot2
3570
Bot: Migrating 147 interwiki links, now provided by [[Wikidata]] on [[:d:Q7130670]]
31594
wikitext
text/x-wiki
{{Commonscat|Norway}}
[[Κατηγορίαν:Κράτη|Νορβηγία]]
[[Κατηγορίαν:Σκανδιναβία|Νορβηγία]]
ngu3oo494hxtxbe0ves3wczg53nmf1b
Κατηγορίαν:Ολλανδία
14
365
31104
30327
2013-03-07T19:02:40Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 144 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1455739]] [[M:User:Addbot/WDS|(translate me)]]
31104
wikitext
text/x-wiki
{{Commonscat|Netherlands}}
[[Κατηγορίαν:Κράτη|Ολλανδία]]
ryea4xh36gw0v3leze79wkw00gctp0a
Κατηγορίαν:Ουγγαρία
14
366
31406
31105
2013-03-08T00:32:04Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 2 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4366397]] [[M:User:Addbot/WDS|(translate me)]]
31406
wikitext
text/x-wiki
{{Commonscat|Hungary}}
[[Κατηγορίαν:Κράτη|Ουγγαρία]]
kecxgok3bxj0cbnrbmt8cffome2okn4
Κατηγορίαν:Ουκρανία
14
367
31677
31407
2013-05-17T17:04:06Z
MerlIwBot
2140
Robot: Removing [[kbd:Категориэ:Укрэинэ]] (deleted)
31677
wikitext
text/x-wiki
{{Commonscat|Ukraine}}
[[Κατηγορίαν:Κράτη|Ουκρανία]]
4lofw96gmlva2ep3twxcw0d7nm07ywt
Κατηγορίαν:Πολιτείας
14
368
3406
3405
2009-03-06T15:39:52Z
MF-Warburg
53
1 revision
3406
wikitext
text/x-wiki
[[Category:Γεωγραφίαν|Πολιτείας]]
fdx7fuz07i68chdhmiqackcscpw3ga3
Κατηγορίαν:Πολιτικήν
14
369
3409
3408
2009-03-06T15:39:52Z
MF-Warburg
53
2 revisions
3409
wikitext
text/x-wiki
[[Category:Wp/pnt|Πολιτικήν]]
c0pn3nszzcovqtthe1yo8r528b1mk7j
Κατηγορίαν:Πολιτικός (Ελλάδα)
14
370
31500
30224
2013-03-14T05:08:48Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 53 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7028961]] [[M:User:Addbot/WDS|(translate me)]]
31500
wikitext
text/x-wiki
[[Category:Πολιτικήν|Ελλαδα]]
kod91o8youm3fyw2617c7coevd2ub0p
Κατηγορίαν:Πολιτισμόν
14
371
31844
31834
2013-11-22T17:00:30Z
Omnipaedista
35
Undo revision 31834 by [[Special:Contributions/Φωτίκας Τσιαγκούδης|Φωτίκας Τσιαγκούδης]] ([[User talk:Φωτίκας Τσιαγκούδης|talk]])
31844
wikitext
text/x-wiki
{{Commonscat|Culture}}
[[Κατηγορίαν:Wp/pnt]]
evs5va6vmot6kc5mnkyergse4rxnmyr
Κατηγορίαν:Πολωνία
14
372
31429
31108
2013-03-11T10:23:24Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1455901]] [[M:User:Addbot/WDS|(translate me)]]
31429
wikitext
text/x-wiki
{{Commonscat|Poland}}
[[Κατηγορίαν:Κράτη|Πολωνία]]
6afa0iqb7kvsxapnzezmu1ah4xkqxhu
Κατηγορίαν:Πορτογαλία
14
373
31408
31109
2013-03-08T00:32:27Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1455963]] [[M:User:Addbot/WDS|(translate me)]]
31408
wikitext
text/x-wiki
{{Commonscat|Portugal}}
[[Κατηγορίαν:Κράτη|Πορτογαλία]]
[[Κατηγορίαν:Ιβηρία|Πορτογαλία]]
1yc32cd26o1goieylhtvgt677g1y2nq
Κατηγορίαν:Ποτάμαι
14
374
31595
29513
2013-04-13T08:14:07Z
KLBot2
3570
Bot: Migrating 148 interwiki links, now provided by [[Wikidata]] on [[:d:Q6965093]]
31595
wikitext
text/x-wiki
{{Commonscat|Rivers}}
[[Κατηγορίαν:Γεωμορφολογία|Ποτάμαι]]
2qdg6f4lc5tt2ppgqpxz0uk9ujqu8wh
Κατηγορίαν:Πρότυπα
14
375
31110
29602
2013-03-07T19:04:49Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 57 interwiki links, now provided by [[d:|Wikidata]] on [[d:q3760]] [[M:User:Addbot/WDS|(translate me)]]
31110
wikitext
text/x-wiki
{{Commonscat|Navigational templates}}
[[Κατηγορίαν:Βικιπαίδεια|Προτυπα]]
dbfweb4yug3pzdkyk60fcfw3m4n55mj
Κατηγορίαν:Πόντος
14
376
31501
29543
2013-03-14T05:08:52Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 20 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7138890]] [[M:User:Addbot/WDS|(translate me)]]
31501
wikitext
text/x-wiki
{{Commonscat|Pontus}}
[[Κατηγορίαν:Γεωγραφίαν|Ποντος]]
[[Κατηγορίαν:Ιστορίαν|Ποντος]]
hc47986ls3u4gyckflx17niyfko9sm5
Κατηγορίαν:Ραχία
14
377
31596
31111
2013-04-13T08:14:09Z
KLBot2
3570
Bot: Migrating 3 interwiki links, now provided by [[Wikidata]] on [[:d:Q5741923]]
31596
wikitext
text/x-wiki
{{Commonscat|Mountains}}
[[Κατηγορίαν:Γεωμορφολογία|Ραχία]]
fvo5z4t5zpop6ncgqddbda4jy9fk5d0
Κατηγορίαν:Ρουμανία
14
378
31112
30334
2013-03-07T19:05:13Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 148 interwiki links, now provided by [[d:|Wikidata]] on [[d:q11317]] [[M:User:Addbot/WDS|(translate me)]]
31112
wikitext
text/x-wiki
{{Commonscat|Romania}}
[[Κατηγορίαν:Κράτη|Ρουμανία]]
[[Κατηγορίαν:Βαλκάνια|Ρουμανία]]
kuun31wpwd488ygtq1jm9yieb9ym0vv
Κατηγορίαν:Σερβία
14
379
31597
30549
2013-04-13T08:15:23Z
KLBot2
3570
Bot: Migrating 133 interwiki links, now provided by [[Wikidata]] on [[:d:Q7130806]]
31597
wikitext
text/x-wiki
{{Commonscat|Serbia}}
[[Κατηγορίαν:Κράτη|Σερβία]]
[[Κατηγορίαν:Βαλκάνια|Σερβία]]
g7afa22ibocxmey0rjx71tiptv0cxfp
Κατηγορίαν:Σκανδιναβία
14
380
31504
30754
2013-03-14T05:09:43Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 81 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7162174]] [[M:User:Addbot/WDS|(translate me)]]
31504
wikitext
text/x-wiki
{{Commonscat|Scandinavia}}
[[Κατηγορίαν:Ευρώπη|Σκανδιναβία]]
[[Κατηγορίαν:Χερσονησία|Σκανδιναβία]]
ab5h9f3re74hovogpp7vt4q410uaax8
Κατηγορίαν:Σλοβακία
14
381
31113
30172
2013-03-07T19:05:26Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 144 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4368526]] [[M:User:Addbot/WDS|(translate me)]]
31113
wikitext
text/x-wiki
{{Commonscat|Slovakia}}
[[Κατηγορίαν:Κράτη|Σλοβακία]]
sdnjk763wyxs9t884v2xr86h8jmgzd6
Κατηγορίαν:Σλοβενία
14
382
31114
29842
2013-03-07T19:05:36Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 124 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4368574]] [[M:User:Addbot/WDS|(translate me)]]
31114
wikitext
text/x-wiki
{{Commonscat|Slovenia}}
[[Κατηγορίαν:Κράτη|Σλοβενία]]
[[Κατηγορίαν:Βαλκάνια|Σλοβενία]]
0j12n65jdmmyvud5jwq7wktkfn7r6g1
Κατηγορίαν:Σουηδία
14
383
31505
31115
2013-03-14T05:09:45Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 2 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4368475]] [[M:User:Addbot/WDS|(translate me)]]
31505
wikitext
text/x-wiki
{{Commonscat|Sweden}}
[[Κατηγορίαν:Κράτη|Σουηδία]]
[[Κατηγορίαν:Σκανδιναβία|Σουηδία]]
k8gf4xxb8phvv3qc5nhzcomqr5ggdf9
Κατηγορίαν:Τεχνολογίαν
14
384
31599
31116
2013-04-13T08:17:35Z
KLBot2
3570
Bot: Migrating 1 interwiki links, now provided by [[Wikidata]] on [[:d:Q4884546]]
31599
wikitext
text/x-wiki
{{Commonscat|Technology}}
[[Κατηγορίαν:Wp/pnt|Τεχνολογιαν]]
6vgw1e9m9j9a5l7nhaydle4kz33wknw
Κατηγορίαν:Τουρκία
14
385
31409
31117
2013-03-08T01:00:43Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1411579]] [[M:User:Addbot/WDS|(translate me)]]
31409
wikitext
text/x-wiki
{{Commonscat|Turkey}}
[[Κατηγορίαν:Κράτη|Τουρκια]]
[[Κατηγορίαν:Βαλκάνια|Τουρκία]]
[[Κατηγορίαν:Ευρώπη|Τουρκία]]
[[Κατηγορίαν:Ασία|Τουρκία]]
obr55lvnlki3vl896zkypvs1vw3f717
Κατηγορίαν:Τσεχία
14
386
31118
30204
2013-03-07T19:06:24Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 146 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4367403]] [[M:User:Addbot/WDS|(translate me)]]
31118
wikitext
text/x-wiki
{{Commonscat|Czech Republic}}
[[Κατηγορίαν:Κράτη|Τσεχία]]
4juz1syhyz82p3v031wrucxqisbhzg3
Κατηγορίαν:Χερσονησία
14
387
31506
29490
2013-03-14T05:09:46Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 82 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7023666]] [[M:User:Addbot/WDS|(translate me)]]
31506
wikitext
text/x-wiki
[[Κατηγορίαν:Γεωμορφολογία|Χερσονησία]]
76es65tu2kbuw2hli7yy9lw0deip11t
Κατηγορίαν:Χρονολόγησην
14
388
3461
3460
2009-03-06T15:39:55Z
MF-Warburg
53
1 revision
3461
wikitext
text/x-wiki
[[Category:Χρόνος|Χρονολόγησην]]
[[Category:Ιστορίαν|Χρονολόγησην]]
1f6ucd7lejzuvsbr2gvry8we7jc07db
Κατηγορίαν:Χρόνος
14
389
31410
31119
2013-03-08T01:00:54Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4049213]] [[M:User:Addbot/WDS|(translate me)]]
31410
wikitext
text/x-wiki
{{Commonscat|Time}}
[[Κατηγορίαν:Wp/pnt|Χρονος]]
hi0y7sv0bkwsg7fxbvedmzdu6yuu7xr
Κατηγορίαν:Χωρία
14
390
3467
3466
2009-03-06T15:39:55Z
MF-Warburg
53
1 revision
3467
wikitext
text/x-wiki
[[Category:Γεωγραφίαν|Χωρία]]
6y1gu79ugo4a5oiiy85fo5abfhq4rm0
Κατηγορίαν:Φαΐα
14
391
31120
30753
2013-03-07T19:06:50Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 55 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6010682]] [[M:User:Addbot/WDS|(translate me)]]
31120
wikitext
text/x-wiki
[[Κατηγορίαν:Πολιτισμόν|Φαια]]
1o1fnxzciln0aa7chry639y55dwubkk
Πρότυπον:Reflist
10
393
36905
36205
2025-12-16T10:31:15Z
Εὐθυμένης
2777
36905
wikitext
text/x-wiki
<div class="reflist <!--
-->{{#if: {{{1|}}}
| columns {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }}
| references-column-width
| references-column-count references-column-count-{{#if:1|{{{1}}}}} }}
| {{#if: {{{colwidth|}}}
| references-column-width }} }}" style="<!--
-->{{#if: {{{1|}}}
| {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }}
| {{column-width|{{#if:1|{{{1}}}}}}}
| {{column-count|{{#if:1|{{{1}}}}}}} }}
| {{#if: {{{colwidth|}}}
| {{column-width|{{{colwidth}}}}} }} }} list-style-type: <!--
-->{{{liststyle|{{#switch: {{{group|}}}
| upper-alpha
| upper-roman
| lower-alpha
| lower-greek
| lower-roman = {{{group}}}
| #default = decimal}}}}};">
{{#tag:references|{{{refs|}}}|group={{{group|}}}}}</div><noinclude>
{{Τεκμηρίωση προτύπου}}</noinclude>
cthoasnuekikv6ldjeaca5k4ed2aavz
MediaWiki:Latin
8
398
6831
3710
2009-06-29T23:02:26Z
ZaDiak
10
6831
wikitext
text/x-wiki
Rumca
16hmhziqgyv39ergw25qqeggcgwdrbb
MediaWiki:Latin-url
8
399
3714
3486
2009-03-07T14:25:03Z
ZaDiak
10
3714
wikitext
text/x-wiki
Ke me latinikus haraktires
e8n3urtpj4v1089418jr2zw9wru31a6
Πρότυπον:BUtilisateur
10
400
35962
3487
2024-10-26T05:28:13Z
Minorax
7522
35962
wikitext
text/x-wiki
<div style="float:{{{align|left}}};margin:1px;width:238px;border:1px solid {{{bordure|#999999}}}">
{|width="100%" border="0" cellspacing="0" cellpadding="1" style="background-color:{{{couleur|#EEEEEE}}};color:{{{texte-couleur|#000000}}}"
|-
|id="ModeleBUtilisateurGauche" width="47" valign="middle" align="center" style="width:47px;height:47px;background-color:{{{img-couleur|#FFFFFF}}};color:{{{img-texte-couleur|#000000}}};text-align:center"|<!--
-->{{#if:{{{img|}}}|[[Αρχείον:{{{img}}}|{{{img-taille|45px}}}|{{{img-titre|{{{titre|{{{img}}}}}}}}}]]}}<!--
-->{{#if:{{{imgd|}}}|[[Αρχείον:{{{imgd}}}|{{{imgd-taille|45px}}}|{{{imgd-titre|{{{imgd}}}}}}]]}}<!--
-->{{#if:{{{img2|}}}|<br />[[Αρχείον:{{{img2}}}|{{{img2-taille|45px}}}|{{{img2-titre|{{{img2}}}}}}]]}}<!--
-->{{#if:{{{imgd2|}}}|[[Αρχείον:{{{imgd2}}}|{{{imgd2-taille|45px}}}|{{{imgd2-titre|{{{imgd2}}}}}}]]}}<!--
-->{{#if:{{{img-texte|}}}|<div id="ModeleBUtilisateurImgTexte" style="font-size:{{{img-texte-taille|14pt}}};line-height:1.25">{{{img-texte}}}</div>}}
|id="ModeleBUtilisateurInfo" valign="middle" align="center" style="padding:1px;padding-right:4px;padding-left:4px;text-align:center"|<!--
-->{{#if:{{{catégorie|}}}{{{lien|}}}|<!--
--><div id="ModeleBUtilisateurLien" class="plainlinks" style="float:right;margin:0;margin-left:1px;font-size:12px;line-height:1"><!--
-->{{#if:{{{catégorie|}}}|<!--
-->[[:Catégorie:{{{catégorie}}}|∇]]|<!--
-->[[Special:Whatlinkshere/Modèle:Utilisateur {{{lien}}}|∇]]<!--
-->}}<!--
--></div><!--
-->}}<!--
-->{{#if:{{{titre|}}}|<!--
--><div id="ModeleBUtilisateurTitre" style="font-size:{{{titre-taille|8pt}}};line-height:1.25">'''{{{titre}}}'''</div><!--
-->}}<!--
--><div id="ModeleBUtilisateurTexte" class="plainlinks" style="font-size:{{{texte-taille|8pt}}};line-height:1.25">{{{texte}}}</div><!--
-->{{#if:{{{texte2|}}}|<!--
--><!--
--><div id="ModeleBUtilisateurTexte2" class="plainlinks" style="font-size:{{{texte2-taille|8pt}}};line-height:1.25">{{{texte2}}}</div><!--
-->}}
|}
</div><includeonly><!--
-->{{#if:{{{nocat|}}}||<!--
-->{{#ifeq:{{NAMESPACE}}|Utilisateur|<!--
-->{{#if:{{{catégorie|}}}|[[Catégorie:{{{catégorie}}}|{{PAGENAME}}]]}}<!--
-->{{#if:{{{catégorie2|}}}|[[Catégorie:{{{catégorie2}}}|{{PAGENAME}}]]}}<!--
-->}}<!--
-->}}</includeonly>
mprdmklq5j1z56u3f729hb2eb9krfr4
Πρότυπον:Babel field
10
401
3488
2009-03-06T20:14:57Z
ZaDiak
10
Καινούρεον σελίδαν με '{{BUtilisateur |bordure={{{color 1|#999999}}} |img-couleur={{{color 1|#999999}}} |img-texte-couleur=#000000 |img-texte-taille={{{letter code size|1…'
3488
wikitext
text/x-wiki
{{BUtilisateur
|bordure={{{color 1|#999999}}}
|img-couleur={{{color 1|#999999}}}
|img-texte-couleur=#000000
|img-texte-taille={{{letter code size|1.5em}}}
|img-texte='''{{{letter code}}}'''
|couleur={{{color 2|#EEEEEE}}}
|texte-couleur=#000000
|texte-taille={{{text size|0.83em}}}
|titre={{{language|}}}
|texte={{{text}}}
|texte2={{{text2|}}}
}}
27w1lndgjrekldn8s7lrht6yvu0z72h
Πρότυπον:Babel field 2
10
402
3490
3489
2009-03-06T20:18:43Z
ZaDiak
10
3490
wikitext
text/x-wiki
{{Babel field
|color 1=#BCB9EF
|color 2=#E9E5F9
|letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}}-2
|letter code size={{{letter code size|1.5em}}}
|text size={{{text size|0.83em}}}
|language={{{language|}}}
|lien langue={{{lien langue|}}}
|text={{{text}}}
|text2={{{text2|}}}
}}<includeonly>{{#ifeq:{{NAMESPACE}}|Χρήστες|{{#if:{{{nocat|}}}||[[Κατηγορίαν:User {{{letter code}}}|{{PAGENAME}}]][[Κατηγορίαν:User {{{letter code}}}-2|{{PAGENAME}}]]}}}}</includeonly><noinclude>
[[Κατηγορίαν:Babel field]]
</noinclude>
3hmcr56kfsprqgn6z1nhovk6ml44256
Πρότυπον:Babel field 1
10
403
3491
2009-03-06T20:21:07Z
ZaDiak
10
Καινούρεον σελίδαν με '{{Babel field |color 1=#E0C0E0 |color 2=#F3E0F3 |letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}}-1 …'
3491
wikitext
text/x-wiki
{{Babel field
|color 1=#E0C0E0
|color 2=#F3E0F3
|letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}}-1
|letter code size={{{letter code size|1.5em}}}
|text size={{{text size|0.83em}}}
|language={{{language|}}}
|lien langue={{{lien langue|}}}
|text={{{text}}}
|text2={{{text2|}}}
}}<includeonly>{{#ifeq:{{NAMESPACE}}|Χρήστες|{{#if:{{{nocat|}}}||[[Κατηγορίαν:User {{{letter code}}}|{{PAGENAME}}]][[Κατηγορίαν:User {{{letter code}}}-1|{{PAGENAME}}]]}}}}</includeonly><noinclude>
[[Κατηγορίαν:Babel field]]
</noinclude>
332gq9bgylmwbq9tcltbf2gn56a9ug4
Πρότυπον:Babel field 3
10
404
3492
2009-03-06T20:22:47Z
ZaDiak
10
Καινούρεον σελίδαν με '{{Babel field |color 1=#99B3FF |color 2=#E0E8FF |letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}}-3 …'
3492
wikitext
text/x-wiki
{{Babel field
|color 1=#99B3FF
|color 2=#E0E8FF
|letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}}-3
|letter code size={{{letter code size|1.5em}}}
|text size={{{text size|0.83em}}}
|language={{{language|}}}
|text={{{text}}}
|text2={{{text2|}}}
}}<includeonly>{{#ifeq:{{NAMESPACE}}|Χρήστες|{{#if:{{{nocat|}}}||[[Κατηγορίαν:User {{{letter code}}}|{{PAGENAME}}]][[Κατηγορίαν:User {{{letter code}}}-3|{{PAGENAME}}]]}}}}</includeonly><noinclude>
[[Κατηγορίαν:Babel field]]
</noinclude>
gdlfm0myom68n7bwq9izisvbzq59syc
Πρότυπον:Babel field 4
10
405
3493
2009-03-06T20:25:10Z
ZaDiak
10
Καινούρεον σελίδαν με '{{Babel field |color 1=#AFCFEF |color 2=#CFE7FF |letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}}-4 …'
3493
wikitext
text/x-wiki
{{Babel field
|color 1=#AFCFEF
|color 2=#CFE7FF
|letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}}-4
|letter code size={{{letter code size|1.5em}}}
|text size={{{text size|0.83em}}}
|language={{{language|}}}
|text={{{text}}}
|text2={{{text2|}}}
}}<includeonly>{{#ifeq:{{NAMESPACE}}|Χρήστες|{{#if:{{{nocat|}}}||[[Κατηγορίαν:User {{{letter code}}}|{{PAGENAME}}]][[Κατηγορίαν:User {{{letter code}}}-4|{{PAGENAME}}]]}}}}</includeonly><noinclude>
[[Κατηγορίαν:Babel field]]
</noinclude>
stz0dfxemxr9tr9xyjfkceg85gz1cwq
Πρότυπον:Babel field N
10
406
3494
2009-03-06T20:27:28Z
ZaDiak
10
Καινούρεον σελίδαν με '{{Babel field |color 1=#6EF7A7 |color 2=#C5FCDC |letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}} |…'
3494
wikitext
text/x-wiki
{{Babel field
|color 1=#6EF7A7
|color 2=#C5FCDC
|letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}}
|letter code size={{{letter code size|1.5em}}}
|text size={{{text size|0.83em}}}
|language={{{language|}}}
|text={{{text}}}
|text2={{{text2|}}}
}}<includeonly>{{#ifeq:{{NAMESPACE}}|Χρήστες|{{#if:{{{nocat|}}}||[[Κατηγορίαν:User {{{letter code}}}|{{PAGENAME}}]][[Κατηγορίαν:User {{{letter code}}}-N|{{PAGENAME}}]]}}}}</includeonly><noinclude>
[[Κατηγορίαν:Babel field]]
</noinclude>
1q85rhqjecxyf0seqdy0kmm8iyt8ch8
Πρότυπον:Babel field 0
10
407
21600
3495
2011-07-14T11:24:47Z
Dcljr
606
if you don't speak the language, you shouldn't be in the user category for that language
21600
wikitext
text/x-wiki
{{BUtilisateur
|bordure={{{color 1|#999999}}}
|img-couleur={{{color 1|#999999}}}
|img-texte-couleur=#000000
|img-texte-taille={{{letter code size|1.5em}}}
|img-texte='''{{{letter code}}}-0'''
|couleur={{{color 2|#EEEEEE}}}
|texte-couleur=#000000
|texte-taille={{{text size|0.83em}}}
|titre={{{language|}}}
|texte={{{text}}}
|texte2={{{text2|}}}
}}<includeonly>{{#ifeq:{{NAMESPACE}}|Χρήστες|{{#if:{{{nocat|}}}||[[Κατηγορίαν:User {{{letter code}}}-0|{{PAGENAME}}]]}}}}</includeonly><noinclude>[[Κατηγορίαν:Babel field]]
</noinclude>
jbqupo5ghr3qmqmtef5cj4lwn9jfsw0
Πρότυπον:Χρήστες pnt-0
10
412
3505
3502
2009-03-06T21:16:33Z
ZaDiak
10
3505
wikitext
text/x-wiki
{{Babel field 0|
letter code size=1.5em|
letter code=pnt|lien langue =|
text=Ατός ο χρήστες ξάι 'κ [[:Κατηγορίαν:User pnt-0|'''εγροικά''']] τα
[[:Κατηγορίαν:User pnt|'''Ποντιακά''']] (ή με τρανόν ζορ).}}
oefq35w5xbk2oe4z5w1ak9i9tpnd0gb
Πρότυπον:Χρήστες pnt-1
10
413
3631
3507
2009-03-06T22:37:26Z
Makedonier
30
3631
wikitext
text/x-wiki
{{Babel field 1|
letter code size=1.5em|
letter code=pnt|lien langue =|
text=Ατός ο χρήστες [[:Κατηγορίαν:User pnt-1|'''καλατςέβ''']] έναν ξάιν τα [[:Κατηγορίαν:User pnt|'''Ποντιακά''']].}}
ql09rzm1z8xpydavg5h7rfx6y846yp7
Κατηγορίαν:User pnt
14
417
31551
20928
2013-04-08T16:31:18Z
EmausBot
1699
Bot: Migrating 2 interwiki links, now provided by [[Wikipedia:Wikidata|Wikidata]] on [[d:Q9701723]]
31551
wikitext
text/x-wiki
[[Κατηγορίαν:Βαβέλ]]
af487s67kicv88furv78hphgoirnzr7
Κατηγορίαν:User pnt-1
14
418
3513
2009-03-06T21:36:42Z
ZaDiak
10
Καινούρεον σελίδαν με '[[Κατηγορίαν:User pnt]]'
3513
wikitext
text/x-wiki
[[Κατηγορίαν:User pnt]]
gfbc1xydlfrzr2xb7348dswc86pdkvu
Κατηγορίαν:User pnt-0
14
422
4000
3862
2009-03-09T12:41:13Z
JAnDbot
207
robot Removing: [[fr:Modèle:Utilisateur pnt-0]]
4000
wikitext
text/x-wiki
[[Κατηγορίαν:User pnt]]
gfbc1xydlfrzr2xb7348dswc86pdkvu
Main Page
0
430
3629
2009-03-06T22:30:03Z
ZaDiak
10
Redirected page to [[Αρχικόν σελίδα]]
3629
wikitext
text/x-wiki
#REDIRECT [[Αρχικόν σελίδα]]
avdpdrz86bu21g54lanrcu3lg1jt91r
Πρότυπον:Babel field 5
10
432
3634
2009-03-06T22:48:25Z
ZaDiak
10
Καινούρεον σελίδαν με '{{Babel field |color 1=#f99c99 |color 2=#f9cbc9 |letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}}-5 …'
3634
wikitext
text/x-wiki
{{Babel field
|color 1=#f99c99
|color 2=#f9cbc9
|letter code={{#if:{{{lien langue|}}}|[[{{{lien langue}}}|{{{letter code}}}]]|{{{letter code}}}}}-5
|letter code size={{{letter code size|1.5em}}}
|text size={{{text size|0.83em}}}
|language={{{language|}}}
|text={{{text}}}
|text2={{{text2|}}}
}}<includeonly>{{#ifeq:{{NAMESPACE}}|Χρήστες|{{#if:{{{nocat|}}}||[[Κατηγορίαν:User {{{letter code}}}|{{PAGENAME}}]][[Κατηγορίαν:User {{{letter code}}}-5|{{PAGENAME}}]]}}}}</includeonly><noinclude>
[[Κατηγορίαν:Babel field]]
</noinclude>
n1jhmdwwn57swhohn9q9ischbxlfsy0
Πρότυπον:Support
10
435
10263
9959
2009-12-09T23:35:46Z
ZaDiak
10
10263
wikitext
text/x-wiki
[[Image:Symbol support vote.svg|15px]] '''Support'''<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]
</noinclude>
dwpiqlgtr7f8wcb2frtseb45aq1cm44
Πρότυπον:Χρήστες el
10
441
31631
14890
2013-04-16T08:35:59Z
EmausBot
1699
Bot: Migrating 1 interwiki links, now provided by [[Wikipedia:Wikidata|Wikidata]] on [[d:Q11144584]]
31631
wikitext
text/x-wiki
{{Babel field N|
letter code size=1.5em|
letter code=el|lien langue =|
text size=0.83em|nocat = {{{nocat|}}}|
text=Αυτός ο χρήστης έχει ως '''[[:Κατηγορίαν:User el-N|μητρική]]''' του γλώσσα την '''[[:Κατηγορίαν:User_el|Ελληνική]]'''.}}<noinclude>
</noinclude>
jl0raq86wd7u3pog7jngo3znxii9xc8
Κατηγορίαν:User el
14
446
31121
30906
2013-03-07T19:07:14Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 119 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6397340]] [[M:User:Addbot/WDS|(translate me)]]
31121
wikitext
text/x-wiki
{{Commonscat|User el}}
[[Κατηγορίαν:Βαβέλ]]
rwdt7f1dj2v7fgw34ylcw3k0yfoilgi
Κατηγορίαν:User el-N
14
447
31122
30243
2013-03-07T19:07:24Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 94 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6397808]] [[M:User:Addbot/WDS|(translate me)]]
31122
wikitext
text/x-wiki
{{Commonscat|User el-N}}
[[Κατηγορίαν:User el]]
rit0hjzxgu5a81mfkfhkesy72o46m7z
Πρότυπον:Χρήστες en-4
10
452
31127
30834
2013-03-07T19:30:07Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 213 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5546014]] [[M:User:Addbot/WDS|(translate me)]]
31127
wikitext
text/x-wiki
{{Babel field 4|
letter code size=1.5em|
letter code=en|lien langue =|
text size=0.83em|nocat = {{{nocat|}}}|
text=This user is able to contribute with a '''[[:Κατηγορίαν:User en-4|near-native]]''' level of '''[[:Κατηγορίαν:User en|English]]'''.}}
<noinclude>
[[Κατηγορίαν:User en-4| ]]
</noinclude>
bjrh83ng8i5ekgidq0487jxu51s0qc8
Κατηγορίαν:User en
14
453
31562
31128
2013-04-13T07:50:19Z
KLBot2
3570
Bot: Migrating 2 interwiki links, now provided by [[Wikidata]] on [[:d:Q5626526]]
31562
wikitext
text/x-wiki
{{Commonscat|User en}}
[[Κατηγορίαν:Βαβέλ]]
2m5bvm2z6opqjjrjcu0yk6fpqbckobl
Κατηγορίαν:User en-4
14
454
31564
31129
2013-04-13T07:50:26Z
KLBot2
3570
Bot: Migrating 8 interwiki links, now provided by [[Wikidata]] on [[:d:Q5626440]]
31564
wikitext
text/x-wiki
{{Commonscat|User en-4}}
[[Κατηγορίαν:User en]]
7ab6kcrkp29z5fzspz1ys2rbav3uwlg
Κατηγορίαν:User de
14
456
31559
31130
2013-04-13T07:50:11Z
KLBot2
3570
Bot: Migrating 17 interwiki links, now provided by [[Wikidata]] on [[:d:Q6395874]]
31559
wikitext
text/x-wiki
{{Commonscat|User de}}
[[Κατηγορίαν:Βαβέλ]]
qwkr5p6a2xg82po9a6ta7dwmcv25v5d
Κατηγορίαν:Βαβέλ
14
458
3693
2009-03-07T11:42:49Z
ZaDiak
10
Καινούρεον σελίδαν με '[[Κατηγορίαν:Wp/pnt]]'
3693
wikitext
text/x-wiki
[[Κατηγορίαν:Wp/pnt]]
gbnfivrzuu2xurtefe8l068j7u6tpvz
Πρότυπον:Ημερολόγιο
10
459
31733
31617
2013-08-01T15:39:09Z
Addbot
3509
[[User:addbot|Bot]]: Migrating interwiki links, now provided by [[d:|Wikidata]] on [[d:q10957435]]
31733
wikitext
text/x-wiki
<div style="border:solid #ccc; background: #fff; border-width: 1px 3px 3px 1px; text-align: center; padding-top:3px; float:left; font-size: smaller; line-height: 1.3; margin-right: 4px; width: 7em">
[[{{CURRENTDAY}} {{CURRENTMONTHNAMEGEN}}|<span style="display: block;">{{CURRENTDAYNAME}}</span>
<span style="font-size: x-large; width: 100%; display: block; padding:6px 0px">{{CURRENTDAY}}</span>
<span style="display: block;">{{CURRENTMONTHNAME}}</span>]]
<span style="background: #aaa; color: #000; display: block;">'''[[{{CURRENTYEAR}}]]'''</span>
</div><!--
--><noinclude>
<!--Categories-->
{{DEFAULTSORT:Ημερολογιο}}
[[Category:Πρότυπα]]
</noinclude>
bdhxiju0m5u4tehxxjrjz9r8sl3hvb4
Κe me latinikus haraktires
0
461
3713
2009-03-07T14:24:44Z
ZaDiak
10
[[Κe me latinikus haraktires]] ετερχλαεύτεν σο [[Ke me latinikus haraktires]]
3713
wikitext
text/x-wiki
#REDIRECT [[Ke me latinikus haraktires]]
o8xynhyycjrmyo0npip21veg3es18yl
Πρότυπον:IPA
10
469
31667
31132
2013-05-06T22:49:04Z
Iketsi
1885
wikidata
31667
wikitext
text/x-wiki
<span class="IPA" style="white-space: nowrap; font-family:Arial Unicode MS, Doulos SIL, Code2000, Chrysanthi Unicode, Gentium, GentiumAlt, TITUS Cyberbit Basic, Bitstream Cyberbit, Bitstream Vera, Lucida Sans Unicode; font-family /**/:inherit;">{{{1}}}</span><!--
--><noinclude>
<!--Categories-->
[[Κατηγορίαν:Γλωσσολογίαν]]
</noinclude>
m5uxs7rbuwby2gu27km7avelmucg0m8
Πρότυπον:Polytonic
10
470
33499
32488
2017-10-12T05:04:10Z
Great Brightstar
6110
33499
wikitext
text/x-wiki
<includeonly><span lang="grc" xml:lang="grc" class="polytonic" style="font-family: 'SBL BibLit', 'SBL Greek', Athena, 'EB Garamond 12', 'Foulis Greek', Cardo, 'Gentium Plus', Gentium, Garamond, 'Palatino Linotype', 'DejaVu Sans', 'DejaVu Serif', FreeSerif, FreeSans, 'Arial Unicode MS', 'Lucida Sans Unicode', 'Lucida Grande', Code2000,">{{{1}}}</span></includeonly><!--
--><noinclude>
This template allows to display polytonic greek Text clearly with all diacritics and is used like this:
''<nowiki>{{Polytonic|Text}}</nowiki>''
<!--Categories-->
<!--[[Κατηγορίαν:MSIE font fix templates |Polytonic]]-->
<!--Interwikis-->
[[Κατηγορίαν:Πρότυπα]]
</noinclude>
rr4r9h6i8nj2ynr0txt2z11sf3azh14
Πρότυπον:Unicode
10
471
31134
27373
2013-03-07T19:31:31Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 25 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5409951]] [[M:User:Addbot/WDS|(translate me)]]
31134
wikitext
text/x-wiki
<span class="Unicode">{{{1}}}</span><!--
--><noinclude>
<!--Categories-->
<!--[[Κατηγορίαν:]]-->
<!--Interwikis-->
[[fa:الگو:کاراکترهای ویژه]]
[[Κατηγορίαν:Πρότυπα]]
</noinclude>
94esmtisb3qrgfzh92apb49fqpkif54
Πρότυπον:!
10
472
31135
30862
2013-03-07T19:31:42Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 263 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5400303]] [[M:User:Addbot/WDS|(translate me)]]
31135
wikitext
text/x-wiki
|<!--
--><noinclude>
<!--Categories-->
<!--[[[Κατηγορίαν:]]-->
<!--Interwikis-->
[[kg:Template:!-]]
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
s73im21hvfhsgyq7ry1mkcq57fpnl9w
Πρότυπον:·
10
473
3808
2009-03-08T03:06:23Z
Budelberger
25
Création.
3808
wikitext
text/x-wiki
<includeonly><span style="font-weight:bold;"> ·</span> </includeonly><!--
--><noinclude>
<!-- {{pp-template|small=yes}}
{{template doc}} -->
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
f64lyd9sr75x866lrd2qg506pmc9rtx
Άγιος Μαρίνος
0
478
3880
2009-03-08T15:07:36Z
ZaDiak
10
[[Άγιος Μαρίνος]] ετερχλαεύτεν σο [[Άι Μαρίνος]]
3880
wikitext
text/x-wiki
#REDIRECT [[Άι Μαρίνος]]
ttkn6ud48tycr7nq11b2ox9oivi2edy
Βριλήσσια
0
485
36862
31136
2025-12-16T10:02:35Z
Εὐθυμένης
2777
36862
wikitext
text/x-wiki
[[Εικόναν:Naos Analipseos at Vrilissia 2.jpg|thumb|280px|Τ' Ελλενικόν η Εκκλησία Ανάληψης σα Βριλήσσια εν έδρα τη πλατείας.]]
Τα '''Βριλήσσια''' εν ελλενικόν προάστιον ση πρωτεύουσαν τη [[Αθήνα]]ς. Το 2008 εχ' πληθυσμόν 40.000 ανθρώπς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Βριλησσια}}
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας]]
ellt2j25si4d0be2gfgkf331jq5dn56
1 Καλανταρί
0
487
37285
35779
2025-12-16T19:15:25Z
Εὐθυμένης
2777
37285
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[31 Χριστουγενναρί]] | [[1 Καλανταρί]] | [[2 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''1 τη Καλανταρί''' εν 1ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 364 ημέρας για να τελούτεν η χρονία (365 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[1 Χριστουγενναρί]] - [[1 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0101]]
maey7ebq2jmqhwk1i2skzcx731mrjnq
2 Καλανταρί
0
488
37286
35893
2025-12-16T19:15:41Z
Εὐθυμένης
2777
37286
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[1 Καλανταρί]] | [[2 Καλανταρί]] | [[3 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''2 τη Καλανταρί''' εν 2ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]].
Επέμναν άλλα 363 ημέρας για να τελούτεν η χρονία (364 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[2 Χριστουγενναρί]] - [[2 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0102]]
c8ooovwr5zwjesi9stokmhcizinmr9w
Πρότυπον:Χαιρέτημαν
10
512
31720
29023
2013-07-22T01:08:34Z
MerlIwBot
2140
Robot: Removing [[lb:Schabloun:Welcome]] (deleted), [[bs:Šablon:Kahrimandobrodosli]] (deleted)
31720
wikitext
text/x-wiki
<noinclude>
Ξάι μη εφτάτε τρανά αλλαγάς σ'αούτο το πρότυπον πριχού να καλατςέβουμε σην σελίδαν καλατςεματί.
Γραφέστεν τον κώδικαν <code><nowiki>{{subst:χαιρέτημαν}}</nowiki></code>, για να θέκετε το πρότυπον.
----
</noinclude>
<span style="font-size:130%;font-weight:bold;">Υίαν και χαιρετίαν!</span>
-----
<div style="float:right;border:1px dotted red;margin:5px;padding:2px;background:#FFF8DC;">(de) [[Πρότυπον:Willkommen|Willkommen]]<br> (en) [[Πρότυπον:Welcome|Welcome]]<br> (es) [[Πρότυπον:Bienvenido|Bienvenido]]<br> (fr) [[Πρότυπον:Bienvenue|Bienvenue]]<br> (ru) [[Πρότυπον:Добро пожаловать|Добро пожаловать]]</div>
{{PAGENAME}}<noinclude>ΧρήστηΤάδε</noinclude>, καλώς έρθες σην [[Βικιπαίδεια|Βικιπαίδειαν]]! Χρειάσκουμες κι εθέλουμε τ'εσόν το γράψιμον και τη δουλείαν. Τέρεν αούτα τα χρήσιμα τα συνδέσμε:
*'''[[Βικιπαίδεια:Ντο εν η Βικιπαίδεια|Εισαγωγή]]''' και '''[[Βικιπαίδεια:Πολλά ερωτήσεις|Πολλά ερωτήσεις]]'''
*Τα '''[[Βικιπαίδεια:Νομς και συμβουλάς|Νομς και συμβουλάς για την δουλείαν σην Βικιπαίδειαν]]'''
*'''[[Βικιπαίδεια:Πολιτική|Βασικόν πολιτική]]''' (<small>[[Βικιπαίδεια:Ουδετερότητα|Ουδετερότητα]] - [[Βικιπαίδεια:Επαληθευσιμότητα|Επαληθευσιμότητα]] - [[Βικιπαίδεια:Ξάι μη εφτάτε πρωτότυπον αράεμαν|Ξάι μη εφτάτε πρωτότυπον αράεμαν.]]</small>)
*'''[[Βικιπαίδεια:Εγκυκλοπαιδικότητα|Εγκυκλοπαιδικότητα]]''' (<small>ντο θέματα να γράφουμε</small>)
*'''[[Βοήθειαν:Περιεχόμενα|Βοήθεια]]'''
*'''[[Βικιπαίδεια:Ντο ν'εφτάν οι καινούρ' οι χρήστες|Ντο ν'εφτάν οι καινούρ' οι χρήστες]]
*'''[[Βικιπαίδεια:Αργαστέρ|Αργαστέρ]]''' (<small>σελίδα για ν'εφτάτε πειράματα σην επεξεργασίαν σελιδίων</small>)
Για να θέκεις την υπογραφή'ς σα [[Βικιπαίδεια:Σελίδα καλατςεματί|σελίδας καλατςεματί]] γράψον ~~~~ ή ποίσον κλικ σο κουμπίν τ' υπογραφής ([[Image:Signature icon.png]]). Κάθαν ερώτησην επορείς να γραφ'ς ατέναν σην [[Βικιπαίδεια:Αγορά|Αγοράν]] εμούν. Χαϊτέστεν, ας εφτάμε τη δουλείαν εμουν! <noinclude>
[[Κατηγορίαν:Πρότυπα Χαιρέτημαν|*]]
[[af:Sjabloon:Welkom]]
[[an:Plantilla:Biemplegata]]
[[ar:قالب:ترحيب]]
[[ast:Plantilla:Bienvenida]]
[[bg:Шаблон:Добре дошли]]
[[bn:Template:স্বাগতম]]
[[br:Patrom:Degemermat nevez]]
[[ca:Plantilla:Benvinguda]]
[[cs:Šablona:Vítejte]]
[[cv:Шаблон:Ырă сунса кĕтетпĕр]]
[[da:Skabelon:Velkommen]]
[[dsb:Pśedłoga:Witaj]]
[[el:Πρότυπο:Καλωσόρισμα]]
[[en:Template:Welcome]]
[[eo:Ŝablono:Bonvenon]]
[[es:Plantilla:Bienvenido usuario]]
[[et:Mall:Teretulemast]]
[[eu:Txantiloi:Ongietorria]]
[[ext:Prantilla:Bienviniu]]
[[fa:الگو:خوشامد]]
[[fi:Malline:Tt]]
[[fr:Modèle:Bienvenue nouveau]]
[[gl:Modelo:Benvida]]
[[gu:Template:સ્વાગત]]
[[he:תבנית:ברוך בואך]]
[[hi:साँचा:स्वागत]]
[[hr:Predložak:Dobrodošlica2]]
[[hsb:Předłoha:Witaj]]
[[hu:Sablon:Üdvözlet]]
[[ia:Patrono:Benvenite]]
[[id:Templat:Selamatdatang]]
[[io:Shablono:Bonveno]]
[[is:Snið:Velkomin]]
[[it:Template:Benvenuto]]
[[ja:Template:Welcome]]
[[jv:Cithakan:Sugengrawuh]]
[[ka:თარგი:ახალი მომხმარებელი]]
[[kn:ಟೆಂಪ್ಲೇಟು:ಸುಸ್ವಾಗತ]]
[[ko:틀:환영합니다]]
[[ksh:Schablon:Wėlkůmme]]
[[la:Formula:Salve]]
[[lt:Šablonas:Welcome]]
[[mk:Шаблон:Добредојде]]
[[ml:ഫലകം:സ്വാഗതം]]
[[mn:Template:Welcome]]
[[mr:साचा:Welcome]]
[[ms:Templat:Sd]]
[[nap:Template:Bemmenuto]]
[[nl:Sjabloon:Welkom]]
[[nn:Mal:Velkomst-reg]]
[[no:Mal:Reg-velkommen]]
[[oc:Modèl:Benvenguda novèl]]
[[os:Шаблон:Салам]]
[[pl:Szablon:Witaj2]]
[[pt:Predefinição:Bem vindo]]
[[ro:Format:Bunvenit]]
[[ru:Шаблон:Welcome]]
[[simple:Template:Welcome]]
[[sk:Šablóna:Vitajte]]
[[sl:Predloga:Pozdrav]]
[[sr:Шаблон:Добродошао]]
[[sv:Mall:Intro]]
[[szl:Szablon:Witej]]
[[ta:வார்ப்புரு:Newuser]]
[[tr:Şablon:Hoşgeldin]]
[[uk:Шаблон:Welcome]]
[[ur:سانچہ:Newuser]]
[[vec:Template:Benvegnù]]
[[vi:Tiêu bản:Hoan nghênh]]
[[yi:מוסטער:שלום עליכם]]
[[zh:Template:Welcome]]
[[zh-classical:Template:歡迎]]
[[zh-yue:Template:歡迎]]
</noinclude>
nfv9v0kkn2wca379ba7r06y7luu43n1
Πρότυπον:Willkommen
10
515
9953
4495
2009-12-04T14:40:27Z
Qoan
1170
Κατηγοριοποιώ
9953
wikitext
text/x-wiki
<noinclude>
Bitte verändert diese Vorlage nicht wesentlich, ohne die Veränderungen vorher auf der<br>
[[Καλάτσεμαν πρότυπι:Willkommen|Diskussionsseite]] zu besprechen.
Um diese Vorlage zu benutzen, schreibt ihr: <code><nowiki>{{subst:χαιρέτημαν}}</nowiki></code>
----
</noinclude>
<span style="font-size:130%;font-weight:bold;">Herzlich Willkommen!</span>
-----
<div style="float:right;border:1px dotted red;margin:5px;padding:2px;background:#FFF8DC;">(de) [[Πρότυπον:Willkommen|Willkommen]]<br> (en) [[Πρότυπον:Welcome|Welcome]]<br> (es) [[Πρότυπον:Bienvenido|Bienvenido]]<br> (fr) [[Πρότυπον:Bienvenue|Bienvenue]]<br> (ru) [[Πρότυπον:Добро пожаловать|Добро пожаловать]]</div>
<includeonly>{{sub</includeonly><includeonly>st:BASEPAGENAME}}</includeonly>Es freut uns, dass Du zu uns gestoßen bist, zur Wikipedia in pontischer Sprache (romeyika). Mit den folgenden Links kannst Du Dir mal einen Überblick über unsere Zusammenarbeit verschaffen:
*'''[[Βικιπαίδεια:Ντο εν η Βικιπαίδεια|Εισαγωγή]]''' und '''[[Βικιπαίδεια:Πολλά ερωτήσεις|Πολλά ερωτήσεις]]'''
*'''[[Βικιπαίδεια:Νομς και συμβουλάς|Νομς και συμβουλάς για την δουλείαν σην Βικιπαίδειαν]]'''
*'''[[Βικιπαίδεια:Πολιτική|Βασικόν πολιτική]]''' (<small>[[Βικιπαίδεια:Ουδετερότητα|Ουδετερότητα]] - [[Βικιπαίδεια:Επαληθευσιμότητα|Επαληθευσιμότητα]] - [[Βικιπαίδεια:Ξάι μη εφτάτε πρωτότυπον αράεμαν|Ξάι μη εφτάτε πρωτότυπον αράεμαν.]]</small>)
*'''[[Βικιπαίδεια:Εγκυκλοπαιδικότητα|Εγκυκλοπαιδικότητα]]''' (<small>ντο θέματα να γράφουμε</small>)
*'''[[Βοήθειαν:Περιεχόμενα|Βοήθεια]]'''
*'''[[Βικιπαίδεια:Ντο ν'εφτάν οι καινούρ' οι χρήστες|Ντο ν'εφτάν οι καινούρ' οι χρήστες]]
*'''[[Βικιπαίδεια:Αργαστέρ|Αργαστέρ]]''' (<small>Auf dieser Seite kannst du nach Herzenslust herumprobieren und -spielen und dann auch sehen, was passiert.</small>)
Deine Beiträge auf Diskussionsseiten kannst Du mit <nowiki>--~~~~</nowiki> (zwei Bindestriche, vier Tilden) unterschreiben oder einfach auf den Signaturbutton ([[Image:Signature icon.png]]) klicken. Fragen jeder Art kannst du gerne in der [[Βικιπαίδεια:Αγορά|Agora]] stellen. Viel Spass! <noinclude>
[[Κατηγορίαν:Πρότυπα Χαιρέτημαν|Willkommen]]
</noinclude>
2qm8fl25vbegodtqup7yoh7lfc1pc29
Βικιπαίδεια:Δικαιώματα Πνευματί
4
516
4149
2009-03-10T14:40:51Z
Sinopeus
168
Redirected page to [[Βικιπαίδεια:Δικαιώματα πνευματί]]
4149
wikitext
text/x-wiki
#REDIRECT[[Βικιπαίδεια:Δικαιώματα πνευματί]]
th426dyc541yrgetdf7d0dmb8g9cmsg
Μαδαγασκάρην
0
521
37382
35939
2025-12-20T12:05:53Z
Εὐθυμένης
2777
/* Αναφοράν */
37382
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Μαδαγασκάρην'''</big></big><br/>''Repoblikan'i Madagasikara''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Madagascar.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of Madagascar.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:MDG_orthographic.svg|300px]]
|}
Η '''Μαδαγασκάρην''' εν τέταρτον τρανόν νήσον τη κόσμονος. Ο πληθυσμόν ατ'ς εν σα 20.098.654<ref>[http://www.xist.org/earth/population1.aspx Geohive]</ref> τ' ανθρώπ'ς και ευρίεται ασόν Ινδικόν τ' ωκεανόν. Πρωτεύουσαν ατ'ς εν η [[Ταναναρίβην]] (σήμερον Ανταναναρίβο) και πρόεδρος ατ'ς εν ο [[Αντρί Ραζοελίνα]].
== Αναφοράν ==
<references />
== Συνδέζμαι ==
[[:el:Commons:Κατηγορίαν:Madagascar]] - H Μαδαγασκάρην σα Κόμονς.
[[Κατηγορίαν:Μαδαγασκάρην|Μαδαγασκάρην]]
[[Κατηγορίαν:Κράτη|Μαδα]]
[[Κατηγορίαν:Αφρική]]
hg6mjbs8gtsy27xqlhtum4jhr9viaf5
8 Μαρτί
0
522
37319
37053
2025-12-16T19:28:28Z
Εὐθυμένης
2777
37319
wikitext
text/x-wiki
<div class="center">[[Καλαντάρτς]] | [[Κούντουρος]] | '''[[Μαρτς]]''' | [[Απρίλτς]] | [[Καλομηνάς]]</div>
<div class="center">[[6 Μαρτί]] | [[7 Μαρτί]] | [[8 Μαρτί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|3}}
'''8 Σταυρί''' εν 67ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (εν το 68ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 298 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[8 Κούντουρονος]] - [[8 Απρίλ]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0308]]
678w6sylo5tx20j5yg7v7gfd5jndlbd
9 Μαρτί
0
523
37320
37052
2025-12-16T19:28:47Z
Εὐθυμένης
2777
37320
wikitext
text/x-wiki
<div class="center">[[Καλαντάρτς]] | [[Κούντουρος]] | '''[[Μαρτς]]''' | [[Απρίλτς]] | [[Καλομηνάς]]</div>
<div class="center">[[6 Μαρτί]] | [[7 Μαρτί]] | [[8 Μαρτί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|3}}
'''9 Σταυρί''' εν 68ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (εν το 69ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 297 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[9 Κούντουρονος]] - [[9 Απρίλ]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0309]]
pbgm73m4ycbwkysuhkqd5cqkj6ekhbh
10 Μαρτί
0
525
37321
37063
2025-12-16T19:29:05Z
Εὐθυμένης
2777
37321
wikitext
text/x-wiki
<div class="center">[[Καλαντάρτς]] | [[Κούντουρος]] | '''[[Μαρτς]]''' | [[Απρίλτς]] | [[Καλομηνάς]]</div>
<div class="center">[[9 Μαρτί]] | [[10 Μαρτί]] | [[11 Μαρτί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|3}}
'''10 Σταυρί''' εν 69ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (εν το 70ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 296 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[10 Κούντουρονος]] - [[10 Απρίλ]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0310]]
muq0gcadenl2dqa5xhnof237l4yv1w9
11 Μαρτί
0
526
37322
37058
2025-12-16T19:29:22Z
Εὐθυμένης
2777
37322
wikitext
text/x-wiki
<div class="center">[[Καλαντάρτς]] | [[Κούντουρος]] | '''[[Μαρτς]]''' | [[Απρίλτς]] | [[Καλομηνάς]]</div>
<div class="center">[[10 Μαρτί]] | [[11 Μαρτί]] | [[12 Μαρτί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|3}}
'''11 Σταυρί''' εν 70ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (εν το 71ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 295 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[11 Κούντουρονος]] - [[11 Απρίλ]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0311]]
5dbrgzoi6jisv119ozwwnuc45yu4hu2
Κατηγορίαν:Μαδαγασκάρην
14
527
31497
29691
2013-03-14T05:08:13Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 96 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6891951]] [[M:User:Addbot/WDS|(translate me)]]
31497
wikitext
text/x-wiki
[[Category:Νησία]]
l44bplsd83lm3r0618u30743ftl5bul
12 Μαρτί
0
528
37323
37047
2025-12-16T19:29:40Z
Εὐθυμένης
2777
37323
wikitext
text/x-wiki
<div class="center">[[Καλαντάρτς]] | [[Κούντουρος]] | '''[[Μαρτς]]''' | [[Απρίλτς]] | [[Καλομηνάς]]</div>
<div class="center">[[11 Μαρτί]] | [[12 Μαρτί]] | [[13 Μαρτί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|3}}
'''12 Σταυρί''' εν 71ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (εν το 72ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 294 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[12 Κούντουρονος]] - [[12 Απρίλ]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0312]]
dtwrpnvwxkbr9zgfkwoxdidxbsbrpxp
Πρότυπον:CopyrightByWikimedia
10
531
9965
4282
2009-12-04T14:55:13Z
Qoan
1170
9965
wikitext
text/x-wiki
'''© & ™ All rights reserved, Wikimedia Foundation, Inc.'''<br />
This image (or parts of it) is '''[[w:copyright|copyrighted]]''' by the '''[[Wikimedia:|Wikimedia Foundation]]'''. It is (or includes) one of the official logos or designs used by the Wikimedia Foundation or by one of its projects.'' Use of the Wikimedia logo is subject to the '''[[Wikimedia:Wikimedia visual identity guidelines|Wikimedia visual identity guidelines]]''' and requires permission.
<noinclude>
[[Κατηγορίαν:Πρότυπα]]
</noinclude>
4a94utxja412y210sn3vq2h3fvnndm8
Βικιπαίδεια:Bot policy
4
558
4323
2009-03-15T20:21:20Z
Pathoschild
209
redirected to [[Βικιπαίδεια:Αγορά|bot request page]] for [[m:standard bot policy|global bot policy]]
4323
wikitext
text/x-wiki
#REDIRECT [[Βικιπαίδεια:Αγορά]]
963dy9mmnphtjpqr6c8298cwvpmqq9d
Πρότυπον:Добро пожаловать
10
559
28812
28807
2012-10-02T10:24:30Z
Tamara Ustinova
2544
28812
wikitext
text/x-wiki
<div style="float:right;border:1px dotted red;margin:5px;padding:2px;background:#FFF8DC;">(de) [[Πρότυπον:Willkommen|Willkommen]]<br> (pnt) [[Πρότυπον:Χαιρέτημαν|Χαιρέτημαν]] <br> (en) [[Πρότυπον:Welcome|Welcome]]<br> (es) [[Πρότυπον:Bienvenido|Bienvenido]]<br> (fr) [[Πρότυπον:Bienvenue|Bienvenue]]</div>
<includeonly>{{sub</includeonly><includeonly>st:BASEPAGENAME}}</includeonly><noinclude>ΧρήστηΤάδε</noinclude>, добро пожаловать в Понтийскую Википедию! Если вы ещё не создали страницы о себе, вы можете сделать это прямо сейчас (в верхнем меню ваше имя пользователя — ссылка на страницу о вас). Язык интерфейса можно поменять на [[Special:Preferences|странице настроек]]. Другие полезные ссылки:
* [[:ru:Понтийский язык|О понтийском языке по-русски]].
* Наш [[Βικιπαίδεια:Αγορά|форум]].
Если у вас есть вопросы, задайте их на моей странице обсуждения.
<noinclude>[[Κατηγορίαν:Πρότυπα Χαιρέτημαν|Добро пожаловать]]</noinclude>
iznir5pmqgodfwyer7pml4hkspw6g7t
Πρότυπον:Χρήστες ru
10
561
31742
31145
2013-08-01T15:39:10Z
Addbot
3509
[[User:addbot|Bot]]: Migrating interwiki links, now provided by [[d:|Wikidata]] on [[d:q5743436]]
31742
wikitext
text/x-wiki
{{Babel field N|
letter code size=1.5em|
letter code=ru|lien langue =|
text=Для этого участника '''[[:Κατηγορίαν:User ru|русский язык]]''' является '''[[:Κατηγορίαν:User ru-N|родным]]'''.}}
<noinclude>
[[Κατηγορίαν:User ru-N| ]]
</noinclude>
h8m21z9p7fpu6sept2noc02azsyx92v
Πρότυπον:Bot
10
565
35364
31725
2023-03-19T09:35:52Z
Minorax
7522
vva
35364
wikitext
text/x-wiki
{| class="messagebox plainlinks"
|align="center"|[[Image:Crystal Clear action run.svg|50px]]
|align="left" width="100%"|'''Αούτο η λογαρίαν εν [[Project:Bot policy|bot]] κι ο άνθρωπον οπίς ασο bot εν ο χρήστες [[:{{{site|pnt}}}:User:{{{1}}}|{{{1}}}]] ([[:{{{site|pnt}}}:User talk:{{{1}}}|καλάτσεμαν]]).'''
Η λογαρίαν 'κ εν sock puppet. Το bot εν αυτόματον ή ημσόν-αυτόματον λογαρίαν και κουλανέβουν ατο για τα δουλείας π'ίνουνταν και ξαν ίνουνταν.
<br>
<small>''Νοματέοι: αούτο το bot αν 'κ δουλεύ' καλά κι εφτάει ζεμίας, [{{fullurl:Special:Blockip|wpBlockAddress={{PAGENAMEE}}&wpBlockExpiry=indefinite&wpAnonOnly=0&wpEnableAutoblock=0&wpCreateAccount=0&wpBlockReason=Bot%20malfunctioning:%20}} ασπαλίστεν τη λογαρίαν ατ].''</small>
|}{{{category|[[Category:Bot|<includeonly>{{PAGENAME}}</includeonly> ]]}}}
30tkx2jz9sxme4d1vbl9pjahpxllqpi
Κατηγορίαν:User en-2
14
576
31563
31151
2013-04-13T07:50:21Z
KLBot2
3570
Bot: Migrating 2 interwiki links, now provided by [[Wikidata]] on [[:d:Q5626683]]
31563
wikitext
text/x-wiki
{{Commonscat|User en-2}}
[[Κατηγορίαν:User en]]
bcqsyr8gsac34w71d683fpvmt4wcxfu
Κατηγορίαν:User eo
14
577
31565
31152
2013-04-13T07:50:29Z
KLBot2
3570
Bot: Migrating 6 interwiki links, now provided by [[Wikidata]] on [[:d:Q6398969]]
31565
wikitext
text/x-wiki
{{Commonscat|User eo}}
[[Κατηγορίαν:Βαβέλ]]
9gi0iujkew14fk0en24jjh7l5ahn02q
Κατηγορίαν:User hsb
14
578
31446
31153
2013-03-11T10:24:28Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 2 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6408311]] [[M:User:Addbot/WDS|(translate me)]]
31446
wikitext
text/x-wiki
{{Commonscat|User hsb}}
[[Κατηγορίαν:Βαβέλ]]
7x86wst6qil1f3ii29x6jw313ck9ghi
Κατηγορίαν:User dsb
14
579
31445
31154
2013-03-11T10:24:27Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 2 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6396965]] [[M:User:Addbot/WDS|(translate me)]]
31445
wikitext
text/x-wiki
[[Κατηγορίαν:Βαβέλ]]
af487s67kicv88furv78hphgoirnzr7
Κατηγορίαν:User pl
14
580
31572
30253
2013-04-13T07:54:49Z
KLBot2
3570
Bot: Migrating 157 interwiki links, now provided by [[Wikidata]] on [[:d:Q7215810]]
31572
wikitext
text/x-wiki
{{Commonscat|User pl}}
[[Κατηγορίαν:Βαβέλ]]
9jw3xl528fygw0ij8mhdko3ui0d7fnw
Πρότυπον:Welcome
10
585
31704
31674
2013-06-29T13:19:18Z
EmausBot
1699
Bot: Migrating 1 interwiki links, now provided by [[Wikipedia:Wikidata|Wikidata]] on [[d:Q5611978]]
31704
wikitext
text/x-wiki
<div style="float:right;border:1px dotted red;margin:5px;padding:2px;background:#FFF8DC;">(de) [[Πρότυπον:Willkommen|Willkommen]]<br> (pnt) [[Πρότυπον:Χαιρέτημαν|Χαιρέτημαν]] <br> (en) [[Πρότυπον:Welcome|Welcome]]<br> (es) [[Πρότυπον:Bienvenido|Bienvenido]]<br> (fr) [[Πρότυπον:Bienvenue|Bienvenue]]</div>
<includeonly>{{sub</includeonly><includeonly>st:BASEPAGENAME}}</includeonly><noinclude>
ΧρήστηΤάδε
</noinclude>, welcome to the Pontic Wikipedia! If you have not yet created a page about yourself, you can do it right now (the top row has your username—click on it to create it). You can change the interface language by going to your [[Special:Preferences|preferences]]. Here are some other useful links:
* [[:en:Pontic Greek|About Pontic in English]].
* Our [[Βικιπαίδεια:Αγορά|Village Pump]].
If you have any questions, please ask the on my discussion page.
<noinclude>[[Κατηγορίαν:Πρότυπα Χαιρέτημαν|Welcome]]
</noinclude>
o7g6vq599l1hk2u17uro5hr49cisfbn
Πρότυπον:Βαβέλ
10
586
31432
31158
2013-03-11T10:23:34Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 2 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5461620]] [[M:User:Addbot/WDS|(translate me)]]
31432
wikitext
text/x-wiki
{| name="userboxes" id="userboxes" style="float: {{{align|right}}}; margin-left: 1em; margin-bottom: 0.5em; width: 242px; border: #99B3FF solid 1px; clear: {{{align|right}}};"
{{#ifeq:{{{header|}}}|without||{{!-}}
! style="background-color: {{{color|}}}; text-align: center" colspan="10" {{!}} {{{header|[[ Project:Βαβέλ|Γλώσσας ντ'εξέρουμε]]}}}}}
|-
| {{#if:{{{1|}}}|{{Χρήστες {{{1}}} | mž={{{mž|}}} }}|<center>Ατός ο χρήστες νε γραφ' νε εγροικά τα γλώσσας. Βοηθέστεν ατόναν.</center>
}}{{#if:{{{2|}}}|{{Χρήστες {{{2}}} | mž={{{mž|}}} }}
}}{{#if:{{{3|}}}|{{Χρήστες {{{3}}} | mž={{{mž|}}} }}
}}{{#if:{{{4|}}}|{{Χρήστες {{{4}}} | mž={{{mž|}}} }}
}}{{#if:{{{5|}}}|{{Χρήστες {{{5}}} | mž={{{mž|}}} }}
}}{{#if:{{{6|}}}|{{Χρήστες {{{6}}} | mž={{{mž|}}} }}
}}{{#if:{{{7|}}}|{{Χρήστες {{{7}}} | mž={{{mž|}}} }}
}}{{#if:{{{8|}}}|{{Χρήστες {{{8}}} | mž={{{mž|}}} }}
}}{{#if:{{{9|}}}|{{Χρήστες {{{9}}} | mž={{{mž|}}} }}
}}{{#if:{{{10|}}}|{{Χρήστες {{{10}}} | mž={{{mž|}}} }}
}}{{#if:{{{11|}}}|{{Χρήστες {{{11}}} | mž={{{mž|}}} }}
}}{{#if:{{{12|}}}|{{Χρήστες {{{12}}} | mž={{{mž|}}} }}
}}{{#if:{{{13|}}}|{{Χρήστες {{{13}}} | mž={{{mž|}}} }}
}}{{#if:{{{14|}}}|{{Χρήστες {{{14}}} | mž={{{mž|}}} }}
}}{{#if:{{{15|}}}|{{Χρήστες {{{15}}} | mž={{{mž|}}} }}
}}{{#if:{{{16|}}}|{{Χρήστες {{{16}}} | mž={{{mž|}}} }}
}}{{#if:{{{17|}}}|{{Χρήστες {{{17}}} | mž={{{mž|}}} }}
}}{{#if:{{{18|}}}|{{Χρήστες {{{18}}} | mž={{{mž|}}} }}
}}{{#if:{{{19|}}}|{{Χρήστες {{{19}}} | mž={{{mž|}}} }}
}}{{#if:{{{20|}}}|{{Χρήστες {{{20}}} | mž={{{mž|}}} }}
}}{{#if:{{{21|}}}|{{Χρήστες {{{21}}} | mž={{{mž|}}} }}
}}{{#if:{{{22|}}}|{{Χρήστες {{{22}}} | mž={{{mž|}}} }}
}}{{#if:{{{23|}}}|{{Χρήστες {{{23}}} | mž={{{mž|}}} }}
}}{{#if:{{{24|}}}|{{Χρήστες {{{24}}} | mž={{{mž|}}} }}
}}{{#if:{{{25|}}}|{{Χρήστες {{{25}}} | mž={{{mž|}}} }}
}}{{#if:{{{26|}}}|{{Χρήστες {{{26}}} | mž={{{mž|}}} }}
}}{{#if:{{{27|}}}|{{Χρήστες {{{27}}} | mž={{{mž|}}} }}
}}{{#if:{{{28|}}}|{{Χρήστες {{{28}}} | mž={{{mž|}}} }}
}}{{#if:{{{29|}}}|{{Χρήστες {{{29}}} | mž={{{mž|}}} }}
}}{{#if:{{{30|}}}|{{Χρήστες {{{30}}} | mž={{{mž|}}} }}
}}{{#if:{{{31|}}}|{{Χρήστες {{{31}}} | mž={{{mž|}}} }}
}}{{#if:{{{32|}}}|{{Χρήστες {{{32}}} | mž={{{mž|}}} }}
}}{{#if:{{{33|}}}|{{Χρήστες {{{33}}} | mž={{{mž|}}} }}
}}{{#if:{{{34|}}}|{{Χρήστες {{{34}}} | mž={{{mž|}}} }}
}}{{#if:{{{35|}}}|{{Χρήστες {{{35}}} | mž={{{mž|}}} }}
}}{{#if:{{{36|}}}|{{Χρήστες {{{36}}} | mž={{{mž|}}} }}
}}{{#if:{{{37|}}}|{{Χρήστες {{{37}}} | mž={{{mž|}}} }}
}}{{#if:{{{38|}}}|{{Χρήστες {{{38}}} | mž={{{mž|}}} }}
}}{{#if:{{{39|}}}|{{Χρήστες {{{39}}} | mž={{{mž|}}} }}
}}{{#if:{{{40|}}}|{{Χρήστες {{{40}}} | mž={{{mž|}}} }}
}}{{#if:{{{41|}}}|{{Χρήστες {{{41}}} | mž={{{mž|}}} }}
}}{{#if:{{{42|}}}|{{Χρήστες {{{42}}} | mž={{{mž|}}} }}
}}{{#if:{{{43|}}}|{{Χρήστες {{{43}}} | mž={{{mž|}}} }}
}}{{#if:{{{44|}}}|{{Χρήστες {{{44}}} | mž={{{mž|}}} }}
}}{{#if:{{{45|}}}|{{Χρήστες {{{45}}} | mž={{{mž|}}} }}
}}{{#if:{{{46|}}}|{{Χρήστες {{{46}}} | mž={{{mž|}}} }}
}}{{#if:{{{47|}}}|{{Χρήστες {{{47}}} | mž={{{mž|}}} }}
}}{{#if:{{{48|}}}|{{Χρήστες {{{48}}} | mž={{{mž|}}} }}
}}{{#if:{{{49|}}}|{{Χρήστες {{{49}}} | mž={{{mž|}}} }}
}}{{#if:{{{50|}}}|{{Χρήστες {{{50}}} | mž={{{mž|}}} }}
}}{{#if:{{{51|}}}|{{Χρήστες {{{51}}} | mž={{{mž|}}} }}
}}{{#if:{{{52|}}}|{{Χρήστες {{{52}}} | mž={{{mž|}}} }}
}}{{#if:{{{53|}}}|{{Χρήστες {{{53}}} | mž={{{mž|}}} }}
}}{{#if:{{{54|}}}|{{Χρήστες {{{54}}} | mž={{{mž|}}} }}
}}{{#if:{{{55|}}}|{{Χρήστες {{{55}}} | mž={{{mž|}}} }}
}}{{#if:{{{56|}}}|{{Χρήστες {{{56}}} | mž={{{mž|}}} }}
}}{{#if:{{{57|}}}|{{Χρήστες {{{57}}} | mž={{{mž|}}} }}
}}{{#if:{{{58|}}}|{{Χρήστες {{{58}}} | mž={{{mž|}}} }}
}}{{#if:{{{59|}}}|{{Χρήστες {{{59}}} | mž={{{mž|}}} }}
}}{{#if:{{{60|}}}|{{Χρήστες {{{60}}} | mž={{{mž|}}} }}
}}{{#if:{{{61|}}}|{{Χρήστες {{{61}}} | mž={{{mž|}}} }}
}}{{#if:{{{62|}}}|{{Χρήστες {{{62}}} | mž={{{mž|}}} }}
}}{{#if:{{{63|}}}|{{Χρήστες {{{63}}} | mž={{{mž|}}} }}
}}{{#if:{{{64|}}}|{{Χρήστες {{{64}}} | mž={{{mž|}}} }}
}}{{#if:{{{65|}}}|{{Χρήστες {{{65}}} | mž={{{mž|}}} }}
}}{{#if:{{{66|}}}|{{Χρήστες {{{66}}} | mž={{{mž|}}} }}
}}{{#if:{{{67|}}}|{{Χρήστες {{{67}}} | mž={{{mž|}}} }}
}}{{#if:{{{68|}}}|{{Χρήστες {{{68}}} | mž={{{mž|}}} }}
}}{{#if:{{{69|}}}|{{Χρήστες {{{69}}} | mž={{{mž|}}} }}
}}{{#if:{{{70|}}}|{{Χρήστες {{{70}}} | mž={{{mž|}}} }}
}}{{#if:{{{71|}}}|{{Χρήστες {{{71}}} | mž={{{mž|}}} }}
}}{{#if:{{{72|}}}|{{Χρήστες {{{72}}} | mž={{{mž|}}} }}
}}{{#if:{{{73|}}}|{{Χρήστες {{{73}}} | mž={{{mž|}}} }}
}}{{#if:{{{74|}}}|{{Χρήστες {{{74}}} | mž={{{mž|}}} }}
}}{{#if:{{{75|}}}|{{Χρήστες {{{75}}} | mž={{{mž|}}} }}
}}{{#if:{{{76|}}}|{{Χρήστες {{{76}}} | mž={{{mž|}}} }}
}}{{#if:{{{77|}}}|{{Χρήστες {{{77}}} | mž={{{mž|}}} }}
}}{{#if:{{{78|}}}|{{Χρήστες {{{78}}} | mž={{{mž|}}} }}
}}{{#if:{{{79|}}}|{{Χρήστες {{{79}}} | mž={{{mž|}}} }}
}}{{#if:{{{80|}}}|{{Χρήστες {{{80}}} | mž={{{mž|}}} }}
}}{{#if:{{{81|}}}|{{Χρήστες {{{81}}} | mž={{{mž|}}} }}
}}{{#if:{{{82|}}}|{{Χρήστες {{{82}}} | mž={{{mž|}}} }}
}}{{#if:{{{83|}}}|{{Χρήστες {{{83}}} | mž={{{mž|}}} }}
}}{{#if:{{{84|}}}|{{Χρήστες {{{84}}} | mž={{{mž|}}} }}
}}{{#if:{{{85|}}}|{{Χρήστες {{{85}}} | mž={{{mž|}}} }}
}}{{#if:{{{86|}}}|{{Χρήστες {{{86}}} | mž={{{mž|}}} }}
}}{{#if:{{{87|}}}|{{Χρήστες {{{87}}} | mž={{{mž|}}} }}
}}{{#if:{{{88|}}}|{{Χρήστες {{{88}}} | mž={{{mž|}}} }}
}}{{#if:{{{89|}}}|{{Χρήστες {{{89}}} | mž={{{mž|}}} }}
}}{{#if:{{{90|}}}|{{Χρήστες {{{90}}} | mž={{{mž|}}} }}
}}{{#if:{{{91|}}}|{{Χρήστες {{{91}}} | mž={{{mž|}}} }}
}}{{#if:{{{92|}}}|{{Χρήστες {{{92}}} | mž={{{mž|}}} }}
}}{{#if:{{{93|}}}|{{Χρήστες {{{93}}} | mž={{{mž|}}} }}
}}{{#if:{{{94|}}}|{{Χρήστες {{{94}}} | mž={{{mž|}}} }}
}}{{#if:{{{95|}}}|{{Χρήστες {{{95}}} | mž={{{mž|}}} }}
}}{{#if:{{{96|}}}|{{Χρήστες {{{96}}} | mž={{{mž|}}} }}
}}{{#if:{{{97|}}}|{{Χρήστες {{{97}}} | mž={{{mž|}}} }}
}}{{#if:{{{98|}}}|{{Χρήστες {{{98}}} | mž={{{mž|}}} }}
}}{{#if:{{{99|}}}|{{Χρήστες {{{99}}} | mž={{{mž|}}} }}
}}{{#if:{{{100|}}}|{{Χρήστες {{{100}}} | mž={{{mž|}}} }}
}}
{{#ifeq:{{{footer|}}}|whitout||
{{!-}}
{{!}} style="background-color: {{{color|}}}; text-align: center" colspan="10" {{!}} {{{footer|'''[[:Κατηγορίαν:Βαβέλ|Βαβέλ]]'''}}} }}
|}<noinclude>{{doc|ns=2}}
[[Κατηγορίαν:Βαβέλ]]
</noinclude>
177075zxr1wnsal0snpuh91etnx0r67
Πρότυπον:!-
10
587
31724
31159
2013-08-01T15:39:06Z
Addbot
3509
[[User:addbot|Bot]]: Migrating interwiki links, now provided by [[d:|Wikidata]] on [[d:q5406460]]
31724
wikitext
text/x-wiki
|-<noinclude>
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
3sm19iyajpp74phckqh5i5gpq9hlzyb
Πρότυπον:Babel
10
588
4392
2009-03-16T18:12:34Z
Tlustulimu
165
Redirected page to [[Πρότυπον:Βαβέλ]]
4392
wikitext
text/x-wiki
#REDIRECT [[Πρότυπον:Βαβέλ]]
9118g90n7iasa6s3mddgc9gvwputng9
Πρότυπον:Doc
10
589
26622
24723
2012-05-05T08:55:28Z
MerlIwBot
2140
Robot: Removing [[pt:Predefinição:Instruções da predefinição]] (deleted)
26622
wikitext
text/x-wiki
<noinclude>{{doc|ns=10}}
[[Κατηγορίαν:Πρότυπα βοήθειας]]</noinclude><includeonly>{{#if:{{{doc|}}}|{{Doc/beginning|{{{doc}}}|notoc={{{notoc|}}}}}{{{{{doc}}}}}{{#if:{{{ns|}}}|{{Doc/end|ns={{{ns}}}|dok={{{doc}}}}}|{{Doc/end|doc={{{doc}}}}}}}
|{{Doc/beginning|{{SUBJECTPAGENAME}}/Doc|notoc={{{notoc|}}}}}{{{{SUBJECTPAGENAME}}/Doc}}{{#if:{{{ns|}}}|{{Doc/end|ns={{{ns}}}}}|{{Doc/end}}}}}}</includeonly><noinclude>
[[bg:Шаблон:Документация]]
[[ca:Plantilla:Ús de la plantilla]]
[[da:Skabelon:Dokumentation]]
[[de:Vorlage:Dokumentation]]
[[dsb:Pśedłoga:Dokumentacija]]
[[en:Template:Documentation]]
[[eo:Ŝablono:Dok]]
[[fa:الگو:توضیحات]]
[[fr:Modèle:Documentation modèle]]
[[hsb:Předłoha:Doc]]
[[hu:Sablon:Sablondokumentáció]]
[[ia:Patrono:Docpatrono]]
[[ja:Template:Documentation]]
[[ko:틀:틀 설명문서]]
[[nl:Sjabloon:Sjabdoc]]
[[pl:Szablon:Dokumentacja]]
[[ro:Format:Documentaţie]]
[[ru:Шаблон:Doc]]
[[sl:Predloga:Dokumentacija]]
[[sr:Шаблон:Документација]]
[[sv:Mall:Dokumentation]]
[[tpi:Template:Template doc]]
[[uk:Шаблон:Doc]]
[[zh:Template:Documentation]]
</noinclude>
eblicz2575io9oj15xr76p92aywrmhj
Πρότυπον:Doc/end
10
590
31728
31637
2013-08-01T15:39:07Z
Addbot
3509
[[User:addbot|Bot]]: Migrating interwiki links, now provided by [[d:|Wikidata]] on [[d:q6081633]]
31728
wikitext
text/x-wiki
<includeonly><nowiki/>
<br/><hr style="border:none; height:0.7ex; background:#000000; clear:both;"/>
{{(!}} {{individual formats|breadth=99%|b-color=#f9f9f9}}
{{!}} If you have questions about this [[Help:Templates|template]], you can ask on the page [[Βικιπαίδεια καλάτσεμαν:Project for templates]].
{{!)}}
{{(!}} cellspacing="8" cellpadding="0" class="plainlinks" style="background:transparent; margin: 2px 0;" id="Dokumentation.Info"
{{!}} style="position:relative; width:35px; vertical-align:top;" {{!}} [[File:Information icon.svg|30px|Information]]
{{!}} style="width: 100%;" {{!}}
<ul>
<li>{{#switch:{{{ns}}}
| 2 = {{Usage|ns=2}} templates on user pages.
| 6 = {{Usage|ns=6}} templates on file pages.
| 10 = {{Usage|ns=10}} templates on pages for templates.
| 14 = {{Usage|ns=14}} templates on pages of categories.
| #default = {{Usage}} templates in articles.
}}</li>
{{#if:{{{doc|}}}|
<li> This documentation is addes from [[{{{doc}}}|a subpage]], which is used from some templates.</li>
|
{{#ifexist:{{SUBJECTPAGENAME}}/Dokumentacija
| <li> This documentation is added from [[{{SUBJECTPAGENAME}}/Doc|a subpage]].</li>
| <li class="metadata metadata-label">[{{fullurl:{{SUBJECTPAGENAME}}/Doc|action=edit&preload=Πρότυπον:Doc/preload-Doc}} Create a subpage for the template documentation].</li>
}}
}}
{{#ifexist:{{SUBJECTPAGENAME}}/hrajkanišćo
| <li>The page for [[{{SUBJECTPAGENAME}}/sandbox|sandbox of the template, where can be evoluated new version]]. ([[Βικιπαίδεια:Sandbox and tests for templates|Help]])</li>
| <li class="metadata metadata-label">[{{fullurl:{{SUBJECTPAGENAME}}/hrajkanišćo|action=edit&preload=Πρότυπον:Doc/preload-hrajkanišćo}} Create a subpage for the template sandbox]. ([[Βικιπαίδεια:Sandbox and tests for templates|Help]])</li>
}}
{{#ifexist:{{SUBJECTPAGENAME}}/testy
| <li>Examples and tests of functionality are on the [[{{SUBJECTPAGENAME}}/tests|testing page]]. ([[Βικιπαίδεια:Sandbox and tests for templates|Help]])</li>
| <li class="metadata metadata-label">[{{fullurl:{{SUBJECTPAGENAME}}/testy|action=edit&preload=Πρότυπον:Doc/preload-testy}} Create a testing page with examples]. ([[Βικιπαίδεια:Sandbox and tests for templates|Help]])</li>
}}
<li>[[Special:PrefixIndex/{{SUBJECTPAGENAME}}/|List of subpages]].</li>
</ul>
{{!)}}
</div></includeonly><noinclude>{{Doc|ns=10}}
<!--[[Kategorija:Wikipedija:Předłoha za předłohi]]-->
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
5b4vuq3ycuhjmklbtobf6jfntygf7wn
Πρότυπον:(!
10
591
13283
9939
2010-04-22T16:02:05Z
Tlustulimu
165
correction
13283
wikitext
text/x-wiki
{|<noinclude>
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
tpzbmtgpaokntk583eosip88pxkxxgm
Πρότυπον:!)
10
592
13284
9937
2010-04-22T16:05:09Z
Tlustulimu
165
correction
13284
wikitext
text/x-wiki
|}<noinclude>__NOTOC__
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
2lvhs2l98r06nmpb0d1eyg403sb8m9h
Πρότυπον:Doc/beginning
10
593
31496
31491
2013-03-14T05:08:05Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 6 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6180494]] [[M:User:Addbot/WDS|(translate me)]]
31496
wikitext
text/x-wiki
<div style="background:#F0F8FF;border:1px dotted #8BCBFF;padding:10px 10px 0;margin-top:10px">__NOEDITSECTION__
<div style="float:right;padding-right:1em;"><span class=plainlinks style="font-size:11px"><nowiki>[</nowiki>[[{{{1}}}|Πρώτον τέρεμαν]]<nowiki>]</nowiki> <nowiki>[</nowiki>[{{fullurl:{{{1}}}|action=edit}} άλλαξον]<nowiki>]</nowiki> <nowiki>[</nowiki>[{{fullurl:{{{1}}}|action=history}} ιστορίαν]<nowiki>]</nowiki> <nowiki>[</nowiki>[{{fullurl:{{FULLPAGENAMEE}}|action=purge}} purge]<nowiki>]</nowiki></span></div><span style="font-size:11pt;line-height:11pt;">[[File:information.svg|20px|link=#Doc.Info|Doc]] Doc</span>
----{{#switch: {{SUBPAGENAME}}
|sandbox|tests=<!--**njepokazaj tutej wotkazaj na tutymaj specielnymaj stronomaj sandbox/tests**-->
|#default=
{{#switch: {{SUBJECTSPACE}}
|{{ns:template}}
|{{ns:user}}=
{{#ifexist: {{FULLPAGENAME}}/sandbox
|This template has a [[/sandbox|sandbox]] <small style="font-style: normal">([{{fullurl:{{ #rel2abs: /sandbox}}|action=edit}} άλλαξον])</small> <!--
-->{{#ifexist: {{FULLPAGENAME}}/testy
|and [[/tests|tests]] <small style="font-style: normal">([{{fullurl:{{ #rel2abs: /tests }}|action=edit}} άλλαξον])</small>}} for users to experimenting.
|{{#ifexist: {{FULLPAGENAME}}/testy
|This template has [[/tests|tests]] <small style="font-style: normal">([{{fullurl:{{ #rel2abs: /tests }}|action=edit}} άλλαξον])</small> for users to experimenting.}}
}}}}}}{{#if:{{{notoc|}}}|__NOTOC__|{{TOC-right}}}}
<noinclude>
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
<noinclude></div><!--please dont remove this div here!-->
<!--[[Kategorija:Wikipedija:Předłoha za předłohi]]-->
</noinclude>
cygvgt6hbalb7o5h9vuwnr1w4dbg2nw
Πρότυπον:TOC-right
10
594
32489
31731
2015-08-04T22:07:46Z
YiFeiBot
4458
Ρομπότ: Μεταφέρω 2 σύνδεσμους interwiki, που τώρα παρέχονται από τα [[d:|Wikidata]] στο [[d:q5626794]]
32489
wikitext
text/x-wiki
<div style="{{float right}}">__TOC__</div><noinclude>{{Doc}}
<!--
[[Kategorija:Předłoha:Formatowanska pomoc]]-->
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
cq5xsfueqem79iq2yettgjphli96nul
Πρότυπον:Float right
10
595
31726
31612
2013-08-01T15:39:07Z
Addbot
3509
[[User:addbot|Bot]]: Migrating interwiki links, now provided by [[d:|Wikidata]] on [[d:q10951414]]
31726
wikitext
text/x-wiki
float: right; margin-left: 1em; margin-bottom: 0.5em; clear: right;<noinclude>
==See also==
*{{Tl|Float left}}
<!--[[Kategorija:Předłoha:Formatowanska pomoc]]-->
</noinclude>
<noinclude>
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
epcd0ffyuhrj7qoiiqg90h05j5kszge
Πρότυπον:Usage
10
596
9946
4403
2009-12-04T14:34:49Z
Qoan
1170
Kατηγοριοποιοώ
9946
wikitext
text/x-wiki
{{Plainlink|{{fullurl:Special:WhatLinksHere|limit=200&hideredirs=1&hidelinks=1&target={{#if: {{{page|}}}|{{urlencode:{{{page}}} }}|{{FULLPAGENAMEE}} }}&namespace={{{ns|0}}}}}|{{{text|Usage}}} }}<noinclude>
<!--{{Tausendfach verwendet}}-->{{Doc}}
<!-- Please add interwiki link to the /Doc-subpage-->
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
qizua2ircrfmt3utwjtvk1tcrukppw2
Πρότυπον:Plainlink
10
597
31730
31619
2013-08-01T15:39:07Z
Addbot
3509
[[User:addbot|Bot]]: Migrating interwiki links, now provided by [[d:|Wikidata]] on [[d:q10964198]]
31730
wikitext
text/x-wiki
<span class="plainlinks">[{{{1}}} {{{2|{{{1}}}}}}]</span><noinclude>{{doc}}
<!--
[[Kategorija:Předłoha:Formatowanska pomoc|P]]
[[Kategorija:Předłoha:Wotkazy|P]]-->
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
n3q52cu6djpnfykt9ll0yofdxhsznw1
Πρότυπον:Individual formats
10
598
31618
16904
2013-04-15T00:25:08Z
Addbot
3509
31618
wikitext
text/x-wiki
cellspacing="{{#expr: 2 * {{{border|2}}}}}" cellpadding="{{#expr: 2 * {{{border|2}}}}}" style="width: {{{breadth|80%}}}; border: {{{border|2}}}px solid {{{border color|#CCCCCC}}}; margin: 0.5em auto 0.5em; clear: both; position: relative; background-color: {{{b-color|#FFFFFF}}}; color: {{{t-color|#000000}}};"<noinclude>
'''Template for individual text boxes.'''
== Parameters ==
{| class="prettytable"
! Parameter
! Meaning
! Default value
|--
| breadth || relative breadth in %. || <tt>80</tt>
|--
| border || border breadth in px ('''without''' "px") || <tt>2</tt>
|--
| border color || border color (Format: #RRGGBB) || <tt>#CCCCCC</tt>
|--
| b-color || background color (Format: #RRGGBB) || <tt>#FFFFFF</tt>
|--
| t-color || text color (Format: #RRGGBB) || <tt>#000000</tt>
|}
== Source ==
<pre>
{{Individual formats
|breadth=
|border=
|border color=
|b-color=
|t-color=
}}
</pre>
== Example ==
{| {{Individual formats}}
|--
| Denk' ich an Deutschland in der Nacht, dann bin ich um den Schlaf gebracht. Ich kann nicht mehr die Augen schließen, und meine heißen Tränen fließen. (Heinrich Heine)
|}
<!--
[[Kategorija:Předłoha:Formatowanska pomoc|{{PAGENAME}}]]-->
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
fyv0bkzhxfucydza894j5bn4jopisc5
Κατηγορίαν:Πρότυπα Βικιπαίδειας
14
609
31412
31161
2013-03-08T01:30:30Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q3740]] [[M:User:Addbot/WDS|(translate me)]]
31412
wikitext
text/x-wiki
[[Κατηγορίαν:Πρότυπα]]
ou0u4xph1hvsmak9ybztlxd2p0okt7b
Βικιπαίδεια:Ντο ν'εφτάν οι καινούρ' οι χρήστες
4
619
33978
33977
2018-10-27T16:41:19Z
Wim b
3723
Ανάκληση των αλλαγών [[Special:Contributions/91.140.89.219|91.140.89.219]] ([[User talk:91.140.89.219|συζήτηση]]) επιστροφή στην προηγούμενη αναθεώρηση [[User:MerlIwBot|MerlIwBot]]
26623
wikitext
text/x-wiki
'''Καλώς έρθες σην Βικιπαίδειαν. Αδακά καθαείς επορεί να γραφτ. Γράψον κι εσύ.'''
Σ'αούτον τη σελίδαν ευρίουνταν ολίγα πληροφορίας για να μαθάνεις τη λειτουργίαν τη Βικιπαίδειας και πως να γραφτς.
<h2 style="border:1px solid #AAAAAA; background-color:#F0F0F0; padding:0.2em 0; margin:0; font-size: 110%; font-weight:bold; text-indent:0.5em;">Είσαι καινούρεος χρήστες σο ποντιακόν τη Βικιπαίδειαν;</h2>
<div class="plainlinks" style="border:1px solid #AAAAAA; border-top:0px solid #FFFFFF; background-color:#FFFFFF; margin-bottom:1em; padding:0.5em 0.8em 0.5em 0.8em;">
<div style="style=position:absolute; overflow:hidden; margin-bottom:0.5em;">[[Εικόναν:Edit wp pnt banner long.png]]</div>
Αν θελτς να γραφτς σ'έναν άρθρον και να εφτάς ατο κι άλλο τρανόν, ποίσον έναν κλικ σο '''άλλαξον'''!
</div>
Αν εξέρτς κι άλλα πράματα για το άρθρον και τα πράματα 'κ είν' ατουπές, ποίσον έναν κλικ σο "άλλαξον" και γράψον ατα σο άρθρον απές. Με το "άλλαξον" επορείς να γραφτς καινούρεα πράματα σο άρθρον απές ή (αν ευρίκς γραφόμενα ντο 'κ είναι σωστά κι αν έεις σον νους τα σωστά) να εφτάς ατο κι άλλο καλόν. Ξάι μη γραφτς παλαλά πράματα και πράματα ντο 'κ είναι σωστά. Ασ' άλλ τη μερέαν πα 'κ πρεπ να φογάσαι. Να θαρρεύκεσαι, ποίσον τ'αλλαγάς-ις. Αν εφτάς λάθος 'κ εν πρόβλημαν να ίνεται κλώσιμον τη αρθρί. Αδακά σην Βικιπαίδειαν τα λάθη 'κ εν ανανάμενα. Τα άρθρα ντ'εχατεύταν επορούν να κλώσκουνταν οπίς. Αν εφτάς λάθος, άλλος χρήστες ή νοματέας θα έρτεν και θα φτάει έναν κλώσιμον το άρθρον και το λάθος θα χάται. Η Βικιπαίδειαν παίρ' ζωήν ασοι χρήστες ατς, π' σχηματίζνε την κοινότηταν τη ποντιακού τη Βικιπαίδειας. Για τ'ατό η κοινότητα τη Βικιπαίδειας εμουν πολλά θα χαρεντερίεται με την δουλεία'ς. Χάιτε, ντο στεκς; '''Πάντα να είσαι καταθαρρεμένον'''.
Πριν τ'αποθήκεμαν τ'αλλαγίων ντ'εποίκες σο άρθρον, ποίσον έναν κλικ σο "πρώτον τέρεμαν". Αέτς επορείς ν'ελέπς ντο αλλαγάς εποίκες και αν είναι καλά. Αν θελτς, δέβα σο [[Βικιπαίδεια:Αργαστέρ|αργαστέρ]]. Ατουπές επορείς ν'εφτάς άμον ντο θελτς για να μαθάντς.
<h2 style="border:1px solid #AAAAAA; background-color:#F0F0F0; padding:0.2em 0; margin:0; font-size: 110%; font-weight:bold; text-indent:0.5em;">Θελτς να καλατςεύτς;</h2>
<div class="plainlinks" style="border:1px solid #AAAAAA; border-top:0px solid #FFFFFF; background-color:#FFFFFF; margin-bottom:1em; padding:0.5em 0.8em 0.5em 0.8em;">
<div style="style=position:absolute; overflow:hidden; margin-bottom:0.5em;">[[Εικόναν:Discussion wp pnt banner long.png]]</div>
Αν θελτς να καλατςεύτς με τ'άλλτς τη χρήστες, ποίσον έναν κλικ σο '''καλάτσεμαν'''!
</div>
Αν εθαρρείς πως το άρθρον 'κ εν καλόν άμαν 'κ θελτς εφτάς ατό καλλίων, επορείς να γραφτς τα νουνίζματα'ς σο "καλάτσεμαν". Ατουπές επορείς να δεαβάζεις ντο λέγουν άλλοι χρήστες για το άρθρον.
Έναν άρθρον αν εν ασπαλιγμένον και θελτς ν'εφτάς αλλαγάς άμαν 'κ επορείς, γράψον ατο σο "καλάτσεμαν". Όταν θα δεαβάζν'ατο χρήστες με τα δικαιώματα για τ'αλλαγάς, θ' αλλάζνε το άρθρον... ή 'κ θ' αλλάζν'ατο.
[[Κατηγορίαν:Βικιπαίδεια|Ντο ν'εφτάν οι καινούρ' οι χρήστες]]
[[ar:ويكيبيديا:ترحيب بالقادمين الجدد]]
[[bar:Wikipedia:Griaßde]]
[[bs:Wikipedia:Dobrodošli]]
[[ca:Viquipèdia:Pàgina d'acollida]]
[[ceb:Wikipedya:Maayong pag-abot, higala!]]
[[da:Wikipedia:Velkommen nybegynder]]
[[de:Wikipedia:Willkommen]]
[[en:Wikipedia:Introduction]]
[[eo:Vikipedio:Bonvenon al la Vikipedio]]
[[es:Wikipedia:Bienvenidos]]
[[fr:Wikipédia:Accueil des nouveaux arrivants]]
[[hi:विकिपीडिया:स्वागत, नये आनेवालों]]
[[ia:Wikipedia:Benvenite]]
[[it:Aiuto:Benvenuto]]
[[ja:Wikipedia:新規参加者の方、ようこそ]]
[[lb:Wikipedia:Wëllkomm]]
[[ms:Wikipedia:Selamat Datang]]
[[nds:Wikipedia:Infos för Niege]]
[[nl:Wikipedia:Welkom voor nieuwelingen]]
[[pl:Wikipedia:Powitanie nowicjuszy]]
[[ro:Wikipedia:Bun venit]]
[[sk:Wikipédia:Úvod|úvod]]
[[sl:Wikipedija:Dobrodošli, novinci]]
[[sr:Википедија:Добродошли]]
[[sv:Wikipedia:Välkommen]]
[[tr:Vikipedi:Hoş geldiniz]]
[[zh:Wikipedia:欢迎,新来者]]
2yniagnfz7w64nbymbep57qrjpnrs53
Επίθετον
0
622
34090
31427
2019-02-08T00:57:21Z
74.248.229.34
/* Τέρεν */
34090
wikitext
text/x-wiki
'''Επίθετον''' εν τα λέξεις ντο φανερώνε ντο λογίς εν το [[ουσιαστικόν]], δηλαδή ντο ποιότηταν ή ιδιότηταν εσ το ουσιαστικόν. Λ.χ. τρανός κλεφτ, τρανέσα πολ, τρανόν κεπήν.
== Καταληξία για τα επίθετα ==
Τα επίθετα κλίνουνταν αμόν τα ουσιαστικά μερ έχνε την ίδιαν καταληξία.
Επίθετα εν τρανός, καλός, ακριβέσα, αλυκέσα, αχουλούς, παλαλός, λυγερέσα, λεγνέσα, οκνέσα, τσακωμένον κ.α.
ειμαι παλαλος
== Τέρεν ==
* [[Επίρρημαν]]
* [[Ουσιαστικόν]]
* [[Σύνδεσμον]]
[[Κατηγορίαν:Γραμματικήν|Επιθετον]]
am4ly0aua82iybemjg11zfal7wqt00g
Πρότυπον:-
10
672
4587
2009-03-23T12:51:51Z
Tlustulimu
165
Καινούρεον σελίδαν με '<br style="clear:both;" />'
4587
wikitext
text/x-wiki
<br style="clear:both;" />
nkbdfhm7mqlirgjhp2tk0ixh8v1z416
Πρότυπον:Πρότυπον
10
682
31741
31610
2013-08-01T15:39:10Z
Addbot
3509
[[User:addbot|Bot]]: Migrating interwiki links, now provided by [[d:|Wikidata]] on [[d:q3926051]]
31741
wikitext
text/x-wiki
<includeonly>[[Πρότυπον:{{{1}}}|<nowiki>{{</nowiki>{{{1}}}{{#if:{{{2|}}}|{{!}}''{{{2}}}''|}}{{#if:{{{3|}}}|{{!}}''{{{3}}}''|}}{{#if:{{{4|}}}|{{!}}''{{{4}}}''|}}<nowiki>}}</nowiki>]]</includeonly><noinclude>{{Doc}}
<!--
{{DEFAULTSORT:Predloha}}
[[Kategorija:Předłoha:Formatowanska pomoc]]
[[Kategorija:Předłoha:Wotkazowanska pomoc]]
-->
[[Κατηγορίαν:Πρότυπα βοήθειας]]
</noinclude>
h9zypt6lr8c8iwb6w9d2ks2ekc5bxyf
Πρότυπον:Tl
10
683
37366
4604
2025-12-20T11:50:55Z
Εὐθυμένης
2777
Αφαιρέθηκε ανακατεύθυνση προς το [[Πρότυπον:Πρότυπον]]
37366
wikitext
text/x-wiki
{{[[Πρότυπον:{{{1}}}|{{{1}}}]]}}<noinclude>
{{Τεκμηρίωση προτύπου }}
<!-- Οι κατηγορίες προστίθενται στην υποσελίδα τεκμηρίωσης και οι διαγλωσσικοί σύνδεσμοι προστίθενται στα Wikidata. -->
<templatedata>
{
"params": {
"1": {
"label": "Πρότυπον",
"description": "όνομα του προτύπου (χωρίς το πρόθεμα)",
"example": "Παράδειγμα",
"type": "wiki-template-name",
"required": true
}
},
"description": " δημιουργεί έναν σύνδεσμο προς τη σελίδα κάποιου προτύπου με τη μορφή {{τίτλος}}",
"format": "inline"
}
</templatedata>
</noinclude>
ek1s69zr51qemzhks3bx4e2lua16ys7
Μαυροβούνιον
0
686
35941
35190
2024-10-26T05:26:52Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35941
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Μαυροβούνιον'''</big></big><br/>''Crna Gora''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Montenegro.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Montenegro.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Europe-Montenegro.svg|300px]]
|}
Το '''Μαυροβούνιον''' (σερβικά: ''Црна Гора, Crna Gora'') εν κράτος ντο ευρίεται σο Βαλκανικόν τη χερσόνησον, σα νοτιοανατολικά τη Ευρώπης. Πρωτεύουσαν ατ'ς εν η Ποντγκόριτσα. Η χώρα εχ' πληθυσμόν σα 678,177 (2008) τ' ανθρώπ'ς.
== Γεωγραφίαν ==
Η χώρα ευρίεται απεσκές ση [[Σερβία]], ση [[Βοσνία και Ερζεγοβίνη]], τ' [[Αλβανία|Αλβανίας]] και ση [[Κροατία]]. Βρέχκεται σ' δυτικόν ασό Αδριατικόν τη Θάλασσαν. Έχ' τρανά πολιτείας το [[Πλαν]] και το [[Μπαρ]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Κατηγορίαν:Montenegro|Το Μαυροβούνιον σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Μαυροβούνιο|Το Μαυροβούνιον σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Montenegro|Χάρτες ασο Μαυροβούνιον]]'''
{{Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Μαυροβούνιον]]
[[Κατηγορίαν:Ευρώπη|Μαυροβούνιον]]
[[Κατηγορίαν:Μαυροβούνιον| ]]
eyywo5gpwmssevll3zgsm1abe75cglb
Λύρα
0
687
35567
34469
2024-01-24T15:03:34Z
Διογένες
10538
'''
35567
wikitext
text/x-wiki
Η '''λύρα''' (σα Ποντιακά λέεται κεμεντζές) εν έγχορδον όργανον.
[[Κατηγορίαν:Μουσική|!]]
awf041a9hnajv9mm2y4pnysj1k5kzol
Πρότυπον:Χρήστες it-1
10
689
31737
31171
2013-08-01T15:39:09Z
Addbot
3509
[[User:addbot|Bot]]: Migrating interwiki links, now provided by [[d:|Wikidata]] on [[d:q5567988]]
31737
wikitext
text/x-wiki
{{Babel field 1
|letter code size=1.5em
|letter code=it
|lien langue=
|text size=0.83em
|text= {{#switch: {{{mw|}}} | 1 = Posso | w = Questa utente può | Questo utente può }} contribuire con un '''[[:Category:User it|italiano]]''' di livello '''[[:Category:User it-1|semplice]]'''.
}}<noinclude>
[[Κατηγορίαν:User it-1| ]]
</noinclude>
nwserua0yby2h3r35146btvubup4mex
Τόπσαμ
0
694
36582
4787
2025-12-15T19:09:22Z
Εὐθυμένης
2777
36582
wikitext
text/x-wiki
Το '''Τόπσαμ''' έτονε το όνομαν τη δημοκρατίας ντο εποίκεν ο Κοτζαναστας, απα σα ρασία. Έτονε 10.000 απαναφκα [[Έλλενες]] τη [[Πόντος|Ποντί]], και επηναν αντάρτικόν. Οι Τουσμαν κι επόρνανε να νικουν ατούς. Όντες εγέντον η ανταλλαγή, ο κόσμον εδαίβεν σην ελέυθερην [[Ελλάδα]]. Ο Κοτζαναστάς εσκοτώθεν σε ενέδραν ντο εποίκαν οι Τουσμαν. Είσεν γαρην και έναν κορτσόπον. Η γαρήνατ' ερθεν σην Ελλάδαν, το κορτσόπον αρπαξενατο ο Αμερικάνικόν Ερυθρόν Σταυρόν και εδώκενατο για υιοθεσίαν σην Αμερικήν.
{{authority control}}
[[Κατηγορίαν:Ελλενικόν ιστορίαν|Τοπσαμ]]
[[Κατηγορίαν:Πόντος|Τοπσαμ]]
n1x2ownci0esd28zsgft6gyry75bi97
Κρυφοχριστιανοί
0
695
34478
34450
2020-04-08T05:46:50Z
Tulsi
5081
Cross-wiki abuse
31174
wikitext
text/x-wiki
Όντες επαίραν την Μικραν Ασίαν οι Τουσμάν επαίραν και επήναν τον κόσμο Μωαμεθανούς με το ζόρι. Πολλοί Χριστιανοί κι θελαν να ανασπάλνε τον Χριστόν, αλλ' επογαλεύκουσαν να κλόσκουνται άλλον μια σον Χριστιανισμόν, μη παίρνε οι Τουσμάν και σκοτούνατους. Για τ' ατό εδίκνειζαν σοι Τουσμάντς ντο είναι σο Ισλαμ, αλλ' σα κρυφά ηταν Χριστιανοί και εκρατναν τα εικόνας σο σπιτνετουν, και είχαν Ελλενικά Χριστιανικά ονόματα, σα κρυφά. Ετερνανε να παντρέφκουνταν αλλόν κρυφοχριστιανόν.
Πολλοί όντες επαίρανεν ο καιρόν τη Σουλτανί ντο επήνεν τον νόμον, να γίνουνταν Τουσμάν, ξαν κλόσκουνταν σον Χρηστόν. Αλλ' πα κι επόρναν να κλόσκουνταν. Οσήμερον σην Τουρκίαν εν άγνωστόν ο αριθμόν των Κρυφοχριστιανών, αλλ' εν κόσμον ντο εδαίβεν εκειπαν και καλάτσεψεν με κόσμον σα Ρωμαίϊκα, ντο λέγνε, είναι Χριστιανοί σα κρυφά.
[[Κατηγορίαν:Θρησκείαν]]
5a1hhkkjt5a7eyjfnz4rx3u9oq0ijgu
Wp/pnt/Βικιπαίδεια/Αγορά
0
699
5998
5997
2009-05-29T13:58:54Z
Tlustulimu
165
Undo revision 5997 by [[Special:Contributions/Tlustulimu|Tlustulimu]] ([[User talk:Tlustulimu|Talk]])
5998
wikitext
text/x-wiki
#REDIRECT [[Βικιπαίδεια:Αγορά]]
Συγχαρητήρια!!!!! Γραπτά ποντιακά με ένταξη όλου του νέου τεχνολογικού λεξιλογίου!!!!
rjo9wms3iovki71ldnn7c3rmh03cozs
Παλαιόν Ιστορίαν
0
703
34466
34463
2020-04-08T05:46:43Z
Tulsi
5081
Cross-wiki abuse
31431
wikitext
text/x-wiki
Το '''παλαιόν η ιστορίαν''' εν η μελέτε τη τσιπ σημαντικών πολιτιστικών και πολιτικών συμβαντίων ασα αρχάς τη ιστορίας τη άνθρωπονος ους τα πρώιμα τα μεσαιωνικά τα χρόνε.
[[Κατηγορίαν:Παλαιόν Ιστορίαν|*]]
9zewpljvoug6abcv9oa94s5auohzttx
Γιόχαν Βόλφγκανγκ φον Γκαίτε
0
704
37411
35667
2025-12-30T22:15:29Z
Таёжный лес
10003
/* Συνδέσμε */
37411
wikitext
text/x-wiki
[[Αρχείον:Goethe (Stieler 1828).jpg|μικρογραφία|250px|''Γιόχαν Βόλφγκανγκ φον Γκαίτε'', εζωγράφσεν ο Γιόζεφ Καρλ Ϛτίλερ (1828)[[Αρχείον:Signature of Johann Wolfgang von Goethe.svg|250px]]]]
Ο '''Γιόχαν Βόλφγκανγκ φον Γκαίτε''' ([[γερμανικόν γλώσσα|γερμ.]] ''Johann Wolfgang von Goethe''), εποίκαν ατον αριστοκράτε σα 1782 τη χρονίας (* [[28 Αλωναρί]] [[1749]] σην [[Φραγκφούρτη|Φραγκφούρτην]], † [[22 Μαρτί]] [[1832]] σην [[Βαϊμάρη|Βαϊμάρην]], λέγνε και ''Γκαίτε'' μαναχόν), έτονε [[ποιητικήν|ποιητής]] ασην [[Γερμανία|Γερμανίαν]]. Εράεψεν κι έγραψεν και για τα [[φυσικόν επιστήμη|φυσικάς επιστήμας]]. Ασα 1776 τη χρονίας κι επεκεί έτονε και πολιτικός τη βαϊμαρικού τη προεστού.
Σα φιλολογικά τα γράμματα τη Γκö́τονος απές ευρίουνταν [[ποίημαν|ποιήματα]], [[δράμαν|δράματα]], [[επικόν ποίηση|μεσελέδες]] (σον πεζόν λόγον και με στροφάς), [[αυτοβιογραφία|αυτοβιογραφικά]] κι επιστημονικά γράμματα. Άμαν και η αλληλογραφίαν ατ' εςς πολλά τρανόν φιλολογικόν σημασίαν. Ο Γκαίτε εμπρολάλεσεν το προρομαντικόν το κίνημαν τη ''Sturm und Drang''. Σα 1774 τη χρονίας η μεσελέν ατ' ''Die Leiden des jungen Werther'' (''Τα τέρτε τη άγουρονος Βέρτερ'') εποίκεν ατόναν γνωστόν σ'όλεν την [[Ευρώπην]]. Απυστεραίας εννεάσκουτον για τα ιδανικά τη [[αρχαιότητα|αρχαιότητας]] κι ασα 1790 τη χρονίας κι επεκεί με το [[Φρίντριχ Ϛίλερ]] εντάμαν (συνεργάσκουσαν) εγένταν μειζοτέρ συγγραφιάντ' τη ''κλασικισµού τη Βαϊµάρης'' (''Weimarer Klassik'').
Ασην θανήν ατ' κι αδά μερέαν ο Γκαίτε 'κ νεσπάλθεν κι οσήμερον λέγουν για τ'ατόν οι αθρώπ' τη Γερμανίας το εν όλων ο καλλίων ο ποιητής ατουν. Το έργον ατ' εποίκεν τον κόσμον όλον να σεβάσκετ'ατον.
== Ζωή ==
=== Τα μικράτα ===
Ο Γκαίτε εγεννέθεν σ'οσημερνόν το ''Goethe-Haus'' ('' τη Γκö́τονος τ’ οσπίτ''), ντ'ευρίεται στην Φραγκφούρτην. Το κύρην ατ' έλεαν ατον Γιόχαν Κασπαρ Γκαίτε (1710–1782). Έτον νομικός, άμαν αφότε είςεν πλούσιον βιόν 'κ εδούλευεν. Αούτον τον βιόν εφέκεν σον γιον ατ' κι αέτς πα όταν ετράνηνεν ο Γκαίτε 'κ είςεν τέρτε με τα παράδας και 'κ έπρεπε να νεγκάζ' το κιφάλν'ατ για τ'ατά.<ref>Klaus Seehafer: ''Mein Leben, ein einzig Abenteuer - Johann Wolfgang Goethe, Biografie'', σελ. 12.</ref> Εννεάσκουτον για πολλά πράματα κι έτον πολλά αχουλής και δεαβασμένος, άμαν και πολλά σοβαρός κι εριστέας. Με τ'ατά επατάλευεν τοι περιςάντς τη μάναν και τον κύρην ατ' και λογοφέρκουσαν.
Η μάναν ατ' έτονε φυντάν ασ'αρχοντικόν ρίζαν κι έλεγαν ατεναν Κατερίνα Ελίσαμπετ Γκαίτε (1731–1808, εγεννέθεν με τ'όνομαν Τέξτορ). Γελαστέσα και χαρεμέντσα πουτςή, έντρισεν σα 17 τα χρόν' ατ'ς τον Γιόχαν Κάσπαρ π'έτον σα 38. Α σου εγεννέθεν ο Γιόχαν Βόλφγκανγκ, εγεννέθαν κι άλλα τέσσερα παιδία, άμαν αποθάναν τα τρία σα μικράτα'τουν. Επέμναν ο Γιόχαν Βόλφγκανγκ με την αδερφέσαν ατ', την Κορνέλια, π'αγαπίουσαν κι εμπιστεύκουσαν. Τα παιδία εμάθισαν ατα πολλά γράμματα κι αέτς επαίραν τρανόν εκπαίδευσην. Ασα 1756 ους τα 1758 τη χρονίας ο Γιόχαν Βόλφγκανγκ επήγεν σε δημόσιον σχολείον. Απυστεραίας είςεν με την αδερφέσαν ατ' εντάμαν τ'ατεινέτερων δέσκαλον σ'οσπίτ'νατουν. Έμαθαν γαλλικά, αγγλικά, ιταλικά, λατινικά, [[ελλενικόν γλώσσα|ελλενικά]], φυσικά επιστήμας, θρησκείαν και ζωγράφεμαν. Ο Γκαίτε έμαθεν να παίζ' τςέλον, πιάνον, να καβαλκεύ' τ'άλογον, ν'αγωνίσκεται με τα σπαθία και να χορεύ'.
Μικρίκον έτον όταν ερχίνεσεν κι εννεάσκουτον για τη φιλολογίαν. Για τα μεσελέδες ντ'έλεεν η μάναν ατ' και για το δεάβασμαν τ' [[Αεσμένον Γραφή|Αεσμένου τη Γραφής]] ντ'εποίνανε σο λουθηρανικόν-προτεσταντικόν την οικογένειαν ατ'. Σα Χριστούγεννα τη 1753 τη χρονίας η καλομάναν ατ' εδώκεν ατον έναν κουκλοθέατρον. Γι'αούτο το θέατρον ο Γκαίτε έγραψεν τα πρώτα έργ'ατ κι εδέκνιζεν ατα σοι φίλτς ατ'. Πολλά εδεάβαζαν σ'οσπίτ τη Γκö́τάντων. Ο κύρης είςεν τ'ατουνού βιβλιοθήκην κι ατουπές είςεν σα 2.000 βιβλία. Αέτς πα ο Γκαίτε έμαθεν σα μικράτατ' για τον Φάουστ (''Historia von D. Johann Fausten'').
=== Σπουδάζ κι εσκαλών' το γράψιμον ===
Σα 1765, έσαν τη µοθοπώρ τα µήνας, εχπάστεν ση Λειψίαν κι ακεκά ερχίνεσεν κι εδέβασεν νομικήν. Η Λειψίαν ασην Φραγκφούρτην έτονε αλλέτερον πολιτείαν. Κιάλλο ανοιχτόν, κιάλλο κοσμοπολίτικον. Ο Γκαίτε αέτς άμον ντο έτον τηδέν ‘κ εταίριαζεν σην Λειψίαν και για τ’ατό έλλαξεν τα συνήθειασ’ατ κι εφόρησεν καινούρεα λώματα.
Το δεάβασμαν τη νομικής ‘κ ερέχτεν ατό. Αέτς πα ερχίνεσεν κι επαίνεν σα μαθήματα τη ποιητικής. Δέσκαλον ατ έτον ο Κρίστιαν Φüρχτεγκοτ Γκέλερτ κι ατός πα πολλά ‘κ ερέχτεν τα πρώτα ποιητικά δουλείας τη Γκαίτε. Ντ’ εγνώρτσεν το ζωγράφον Άνταμ Φρίντριχ Όεζερ είςεν τρανόν σημασίαν. Ο Όεζερ συνέχισεν κι εμάθισεν’ατον ζωγράφεμαν άμαν και τα νουνίζματα τη Γιόχαν Γιοάχιμ Βίνκελμαν σα ιδανικά τη αρχαιότητας απάν.
Έτονε μικρός σα χρόνε και μακρά ασον κύρην και τη μάναν’ατ είςεν και τα ελευθερίας’ατ. Σο θέατρον πολλά επαίνεν ή έπηνεν μπύρας με τη φίλτς ατ εντάμαν. Ακεκά ση Λειψίαν εγνώρτσεν και την εγάπην κι ατό παλ επηρέασεν το γράψιμον’ατ. Σην αρχήν οριαστά έγραφεν έμορφα ποιήματα σην τεχνοτροπίαν τη [[ροκοκό]]. Άμαν ατώρα έκλωσεν το γράψιμον κι εποίκεν ατο κιάλλο ανοιχτόν και με σεβτά. Αέτς εσερέφταν 19 ποίματα. Επαίρεν ατα ο φίλον ατ ο Έρνστ Βόλφγκανγκ Μπέριςς έβαλεν απές και εικόνας κι εποίκεν ατα βιβλίον με τίτλον ''Annette''. Άλλο ποιητικόν δουλείαν εξέβεν σα 1769 και είςεν τ’όνομαν ''Neue Liede''r («καινούρεα τραγωδίας») κι έτον το πρώτον η δουλεία τη Γκαίτε π’ετύπωσαν ατο.
Σα 1768 ερρώστησεν κι εκλώστεν οπίς σον κύρην και την μάναν ατ.
=== Φραγκφούρτη και Ϛτρασβούργον ===
Σα κρεβάτεα ερούξεν και να λαρούται ‘κ επόρνεν. Εδέβαν κι επέρασαν ημέρας και μήνας και ‘κ σκούτον. Ατότες ο Γκαίτε ερχίνεσεν να δεαβάζ’ πράματα ολόερα ασον μυστικισμόν και σην αλχημιστικήν. Ατά ντ’ εμάθανεν, αργότερα εχρησιμοποίησεν ατα σο βιβλίον ''[[Φάουστ]]''. Εξόν ασ’ατά είςεν τακάτ’ κι έγραψεν κι έναν κωμωδίαν, ''Die Mitschuldigen'' (Ατοίν π’φταίγνε).
Σα 1770 τοι χρονίας, Απρίλτς έτον, εσυνέχισεν το σπούδαγμαν τη νομικής σο [[Ϛτρασβούργον]]. Ακεί πέραν σo Ϛτρασβούργον εγνώρτσεν το θεολόγον και φιλόλογον [[Γιόχαν Γκότφριντ Χέρντερ]]. Ο Χέρντερ ένοιξεν τ’ομμάτεα τη Γκαίτε για τοι παλαιούς συγγραφιάντ', λχ τον [[Όμηρος|Όμηρον]] και το [[Ϛαίξπηρ]]. Σο Ζέζεναϊμ, ασο Ϛτρασβούργον ‘κ έτον μακρά, εγνώρτσεν κι έναν πουτςή. Η Φριντερίκε Μπριόν έτονε τη ποπά η κόρ’. Όντες έφυεν ασο Ϛτρασβούργον ο Γκαίτε, εφέκεν και την Φριντερίκε. Τα ποιήματα ντ’έγραψεν ατα για τ’ατέν, επαίραν τον τίτλον ''Sesenheimer Lieder (Τραγωδίας ασο Ζέζεναϊμ).'' Έσανε πολλά εκφραστικά, ''«το επαναστατικόν αρνάςεμαν είνος καινούρεου λυρικού εποχής»''.<ref>Dieter Borchmeyer: ''Schnellkurs Goethe'', σελ. 31.</ref> Ετελέθαν τα σπουδάς ατ’ σο θέρος σα 1771 τη χρονίας κι έγραψεν έναν διατριβήν ''De legislatoribus''. Ατουπές έγραψεν πράματα π’ έσανε τεά «αιρετικά» <ref>Dieter Borchmeyer: ''Schnellkurs Goethe'', σελ. 28.</ref> και για τ’ατό ‘κ δέχτηκαν ατο κι εχάθεν. Άμαν ασο πανεπιστήμιον είπανατονα παίρ’ άδειαν να μαθίζ’. Εκατάφερεν κι επαίρενατεν ''cum applausu'' σα 1771, 6 Αλωναρί. Βάση τη εργασίας έσανε 56 θέσεις σο λατινικόν τη γλώσσαν με τ’όνομαν ''Positiones Juris''.
=== Πόρα και τάλεμαν ===
Εκλώστεν οπίς σην Φραγκφούρτην κι ένοιξεν μικρόν νομικόν γραφείον. Εδούλεψενατο τέσσερα χρόνεα κι επεκεί έκλεισενατο κι επήεν στην [[Βαϊµάρη|Βαϊµάρην]]. Ο Γκαίτε αση νομικήν κι άλλο πολλά εθέλνεν τη ποιητικήν. Σο τέλος τοι 1771 έγραψεν σ’έξι βδομάδας απές το δράμαν ''"Geschichte Gottfriedens von Berlichingen mit der eisernen Hand"''. Ασού εδούλεψενατο κι εποίκενατο καλλίον, το δράμαν εξέβεν σα 1773 με τ’όνομαν ''Götz von Berlichingen''. Το έργον ‘κ ετέρνεν τα παραδοσιακά δραματικά κανόνας και πολλοί εγάπεσανατο κι οσήμερον λέγουνε για τ'ατό το δράμαν ντ'εξεκίνησεν το ''Sturm und Drang'' (Πόρα και τάλεμαν).<ref>Dieter Borchmeyer: ''Schnellkurs Goethe'', σελ. 35.</ref>
Σον Καλομηνά τοι 1772 – σα δυο γραψίματα τη ''Götz'' απεσκές – ο κύρης τη Γκöτονος έδωκενατον δαρμενεία κι αέτς επήεν κι εξεκίνησεν πρακτικήν σο δικαστήριον τη πολιτείας τη [[Βέτσλαρ]]. Ακεί πέρα είςεν συνεργάτεν το Γιόχαν Κρίστιαν Κέστνερ. Ατός επεριέγραψεν τον Γκαίτε άμον ντο έτον ατότες: ''«Πολλά αχουλής εν και εςς τρανόν τακάτ σο νούνισμαν. Χολάσκεται αναχάπαρτα. Εςς πολλά καλόν τρόπον νουνισματί […] Εφτάει άμον ντο θέλ και ξάι ‘κ σαέβ’ τ’αλλτς […]»''.<ref>Σο: Klaus Seehafer: ''Mein Leben, ein einzig Abenteuer – Johann Wolfgang Goethe, Biografie'', σελ. 105.</ref>
=== Υπουργός ση Βαϊμάρην ===
[[Αρχείον:Weimar, Stadtplan von Franz Ludwig Güssefeld, 1784.jpg|μικρογραφία|Αέτς έτονε η Βαϊμάρην όνταν ο Γκαίτε εζήνεν ακαικά). Σ'αφκά το μέρος αριστερά ελέπουμε το κεπίν ατ'.]]
Ο Γκαίτε επήεν ση Βαϊμάρην σον Αεργίτεν τοι 1775. Η πολιτείαν έτον η πρωτεύουσαν τη τρανού τη Δουκατή τη Σαξονίας-Βαϊμάρης-Αϊζεναχή κι εζήναν ατού απές 6.000 αθρώπ' (σο δουκάτον εζήνανε 100.000 απάν αφκά). Σ'εκείνα τα χρόνεα η μάναν τη Δούκα, η Άννα Αμαλία, εποίκεν την Βαϊμάρην κι έντον πολιτισμικόν κέντρον.<ref>Ασού απόθανεν ο άντρας ατ'ς, η Άννα Αμαλία, εκυβέρνησεν το Δουκάτον ατ'ς 17 χρόνεα με τρανόν σοφία κι έφερεν σην αυλήν ατ'ς αχουλήδες, και καλλιτέχνες.</ref> Αγλήγορα ο Δούκας Καρλ Άουγκουστ εμπιστεύκουτον τον Γκαίτε κι επρότεινεν ατόν να ίνεται υπουργόν τη ντεβλετή. Ο Γκαίτε ύλεψεν κι εντούντσεν ατό, άμαν σο τέλος εδέχτηκεν.
Επεκεί για 10 χρόνεα τιδέν 'κ εδημοσίευσεν, εξόν ασ'ολίγα μεσελέδες αδά κι ακεί. Με τα υπουργικά τα δουλείας χρόνον για σοβαρόν ποιητικόν έργον 'κ επέμνεν. Έναν ασα ολίγα σοβαρά δουλείας έτον το πεζογραφικόν εκδοχή τη ''Ιφιγένεια εν Ταύροις''. Επεκεί εξεκίνεσεν να γραφτ' τον '''Εγκμοντ'', το ''Τορκουάτο Τάσσο'' και το ''Βίλχελμ Μάιστερ''. Σα 1780 ο Γκαίτε ερχίνεσεν να αραέυ' απαντήσεις σα επιστημονικά ερωτήσεις τη [[γεωλογία|γεωλογίας]] και τη [[ωρυκτολογία|ωρυκτολογίας]], τη [[βοτανική|βοτανικής]] και τη [[οστεολογία|οστεολογίας]]. Σ'αούτον τη δεκαετίαν εγνώρτσεν κι εγάπεσεν την Τςαρλότε φον Ϛτάιν κι ερόιζεν αποπίσ'ατ'ς. Εκείνεν έντρισεν άλλον και είςεν παιδία άμαν για τον Γκαίτε άμον ατέναν 'κ ευρίουτον σα μαχαλάδας κι αέτς έγραψεν για τ'ατέν ποιήματα σεβταλίδικα πολλά. Επέμναν ους οσήμερον 1700 γράμματα και σημειώματα απάν αφκά ντο δεκνίζεν μας πόσο σεβταλής έτον.
Αούτο η ιστορίαν ετελέθεν όνταν ο Γκαίτε εσκώθεν κι έφυεν στην [[Ιταλία|Ιταλίαν]]. Τιδέν 'κ είπεν ατέν και για τ'ατό η Τςαρλότε εγούζεψεν κι άλλο να ελέπ' ατόν 'κ εθέλνεν.
=== Σην Ιταλίαν ===
[[Εικόναν:Johann Heinrich Wilhelm Tischbein - Goethe in der roemischen Campagna.jpg|μικρογραφία|«Ο Γκαίτε σην Καμπανίαν», εζωγράφσεν ο Γιόχαν Χάινριχ Βίλελμ Τίςμπαϊν, 1787]]
Σα 1786, Σταυρίτες έτον, ο Γκαίτε επουγαλεύτεν την Τςαρλότε φον Ϛτάιν, τη δουλείαν ατ', το Δουκάτον και ούλ' ατά και για τ'ατό εχπάστεν για την [[Ιταλία|Ιταλίαν]]. Κανείς 'κ εξέρνεν μερ επήεν, εξόν ασό θεραπόν ατ' και το Δούκαν. Ασού εκλώστεν τη [[Βερόνα|Βερόναν]], τη [[Βιτσέντσα|Βιτςέντσαν]] και τη [[Βενετία|Βενετίαν]] έφτασεν τον Αεργίτεν ση [[Ρώμη|Ρώμην]]. Επέμνεν εκεί ους τον Απρίλτ' τη 1788. Επεκεί εκλώστεν τη Σιέναν, τη Φλωρεντίαν, τη Πάρμαν και το Μιλάνον κι εκλώστεν οπίς στ Βαϊμάρην.
== Δουλείας ατ' (χωρισμέν') ==
[[Αρχείον:Goethe Ginkgo Biloba.jpg|μικρογραφία|Αούτο εν το γράψιμον τη Γκö́τονος. Ποίημαν εν κι εςς τ'όνομαν ''Ginkgo biloba'' (1815)]]
[[Αρχείον:Coudr 05.jpg|μικρογραφία|Το ταφίν τη Γκö́τονος σην Βαϊμάρην]]
''' Δράματα '''
* ''Die Laune des Verliebten'', 1768
* ''Die Mitschuldigen'', 1769
* ''Gö́tz von Berlichingen'', 1773
* ''Ein Fastnachtsspiel vom Pater Brey,'' 1774
* ''Jahrmarktsfest zu Plundersweilern,'' 1774
* ''Gö́tter, Helden und Wieland'', 1774
* ''Clavigo'', 1774
* ''Egmont'',1775
* ''Erwin und Elmire'' (θέατρον με τραγωδίας), 1775
* ''Die Geschwister. Ein Schauspiel in einem Akt'', 1776
* ''Stella. Ein Schauspiel für Liebende'', 1776
* ''Der Triumph der Empfindsamkeit'' (Eine dramatische Grille), 1777
* ''Proserpina'', 1778/1779
* ''Iphigenie auf Tauris'' (δράμα), 1779
* ''Torquato Tasso'' (δράμα), εχπάστεν σα 1780
* ''Faust. Ein Fragment'', 1790
* ''Der Groß-Cophta'', 1792
* ''Der Bürgergeneral'', 1793
* ''Faust. Eine Tragö́die''
* ''Mahomet der Prophet'', το κείμενον έγραψεν ο [[Βολταίρος|Βολταίρον]] και σα γερμανικά πα έκλωσεν ατο ο Γκαίτε, 1802
* ''Die natürliche Tochter'', 1804
* ''Pandora'', 1807/08
* ''Faust II.'' (2ον κομμάτ' τη ''Faust''), 1833
''' Μεσελέδες και νοβέλλες '''
* ''Die Leiden des jungen Werthers'', 1774, 2ον μορφή 1787
* ''Wilhelm Meisters theatralische Sendung'', ασα 1776 κιαν, ετυπώθεν σα 1911
* ''Unterhaltungen deutscher Ausgewanderten'', 1795
* ''Wilhelm Meisters Lehrjahre'' 1795/96 [http://gutenberg.spiegel.de/goethe/meisterl/meisterl.htm (κείμενον)]
* ''Novelle'' ab 1797
* ''Wilhelm Meisters Wanderjahre'' (μεσελέ), 1807 [http://gutenberg.spiegel.de/goethe/meisterw/meisterw.htm (κείμενον)]
* ''Die Wahlverwandtschaften,'' 1809 [http://gutenberg.spiegel.de/goethe/wahlverw/wahlv001.htm (κείμενον)]
''' Ποιήματα '''
* 1774: ''Prometheus''
* 1774/1775: ''Vor Gericht'' (ποίημαν)
* 1777: ''An den Mond''
* 1782: ''Der Erlkö́nig'' (μπαλάντα)
* 1797: ''Der Schatzgräber'' (μπαλάντα)
* 1799: ''Die erste Walpurgisnacht'' (μπαλάντα)
* 1815: ''Totentanz''
* 1828: ''Dem aufgehenden Vollmonde'' (ποιήματα, Dornburg 1828 τη χρονίας, 25 τ'Αλωναρί)
''' Αυτοβιογραφικά γράμματα '''
* ''Aus meinem Leben. Dichtung und Wahrheit'', (αυτοβιογραφικόν ποίησην), 1811–33
* ''Italienische Reise'', 1816/17
* ''Kampagne in Frankreich'', 1822
== Αναφοράντας ==
<references/>
== Συνδέσμε ==
{{Βικιφθέγματα|el:Γιόχαν Βόλφγκανγκ Γκαίτε}}
* [[Αρχείον:Commons-logo.svg|link=https://commons.wikimedia.org/wiki/Category:Johann_Wolfgang_von_Goethe?uselang=pnt|18x18px]] Σα [[c:Αρχική σελίδα|Κοινά]] εσ υλικόν σχετικόν με [https://commons.wikimedia.org/wiki/Category:Johann_Wolfgang_von_Goethe?uselang=pnt '''''Γιόχαν Βόλφγκανγκ φον Γκαίτε''''']
* '''[[Αρχείον:Wikisource-logo.svg|13px]] Σο [[:de:s:Hauptseite|γερμανικόν τη Βικιθήκην]] εςς [[:de:s:Johann Wolfgang von Goethe|γραψίματα τη Γκö́τονος]]'''
{{authority control}}
[[Κατηγορίαν:Ποιητάδες|Γκαίτε, Γιοχαν Βολφγκανγκ φον]]
[[Κατηγορίαν:Συγγραφέοι|Γκαίτε, Γιοχαν Βολφγκανγκ φον]]
[[Κατηγορίαν:Λογοτεχνίαν]]
[[Κατηγορίαν:Θέατρον]]
of2d7u0nmwbpc85nfh12lpwl8mllo9z
22 Μαρτί
0
705
37324
37049
2025-12-16T19:29:58Z
Εὐθυμένης
2777
37324
wikitext
text/x-wiki
<div class="center">[[Καλαντάρτς]] | [[Κούντουρος]] | '''[[Μαρτς]]''' | [[Απρίλτς]] | [[Καλομηνάς]]</div>
<div class="center">[[21 Μαρτί]] | [[22 Μαρτί]] | [[23 Μαρτί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|3}}
Η '''22 τη Μαρτί''' εν τ' 81ον ημέρα τη χρονίας (82ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]].
Επέμναν άλλα 284 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
* [[1832]]: [[Γιόχαν Βόλφγκανγκ φον Γκöτε]], ποιητής ασην Γερμανίαν.
== Έξεργος ==
'''Τερέστεν πα:'''
* [[22 Κούντουρονος]] - [[22 Απρίλ]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0322]]
klb6m24r4rcisarkkfh008929p0u6fc
Ρουσία
0
711
35953
35749
2024-10-26T05:27:40Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35953
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ρουσία'''</big></big><br/>''Российская Федерация''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Russia.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of Arms of the Russian Federation.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Russian Federation (orthographic projection) - Crimea disputed.svg|300px]]
|}
Η '''Ρουσίαν''' (ρουσ. ''Российская Федерация'') είναι ένα κράτος που βόρεια τη Ευρασίας. Η Ρουσίαν εν τ'ασούλτς τρανόν κράτος σ'όλεν τον κόσμον. Πρωτεύουσαν ατ'ς εν η [[Μόσχα|Μόσχαν]]. Η χώρα εχ' πληθυσμόν 144,699,673 ανθρώπ'ς (2023).
{{Πρότυπον:Κράτη τη Ευρώπης|Πρωτεύουσα=Μόσχαν}}
[[Κατηγορίαν:Ρουσία| ]]
k7z1s1m91ykrd23tyfhryme9ks9fork
28 Αλωναρί
0
713
37149
37044
2025-12-16T18:42:18Z
Εὐθυμένης
2777
37149
wikitext
text/x-wiki
<div class="center">[[Κερασινός]] | [[Χορτοθέρτς]] | '''[[Αλωνάρτς]]''' | [[Σταυρίτες]] | [[Τρυγομηνάς]]</div>
<div class="center">[[27 Αλωναρί]] | [[28 Αλωναρί]] | [[29 Αλωναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|8}}
Η '''28 Αλωναρί''' εν τ' 240ον ημέρα τη χρονίας (241ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 125 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
*[[1749]]: [[Γιόχαν Βόλφγκανγκ φον Γκαίτε]], ποιητής ασην Γερμανίαν.
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
*[[28 Χορτοθερί]] - [[28 Σταυρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0240]]
581836dl2hlgg2mskz5jbbltymw8kfm
1 Απρίλτ
0
717
37117
37046
2025-12-16T18:19:57Z
Εὐθυμένης
2777
37117
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[31 Μαρτί]] | [[1 Απρίλτ]] | [[2 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''1 τ' Απρίλτ''' εν τ' 91ον ημέρα τη χρονίας (92ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 274 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[1 Μαρτί]] - [[1 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0091]]
tdki8qw5jkq47cxakldsuwddr5ti0kw
2 Απρίλτ
0
718
37118
37050
2025-12-16T18:22:54Z
Εὐθυμένης
2777
37118
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[1 Απρίλτ]] | [[2 Απρίλτ]] | [[3 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''2 τ' Απρίλτ''' εν τ' 92ον ημέρα τη χρονίας (93ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 273 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[2 Μαρτί]] - [[2 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0092]]
f4vg0ynehlxyidlggjmrj0qtvichbj3
3 Απρίλτ
0
719
37119
37057
2025-12-16T18:23:11Z
Εὐθυμένης
2777
37119
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[2 Απρίλτ]] | [[3 Απρίλτ]] | [[4 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''3 τ' Απρίλτ''' εν τ' 93ον ημέρα τη χρονίας (94ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 258 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[3 Μαρτί]] - [[3 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0093]]
sjzpwwxii99gutty1hv41dqjeb3d5eg
Πρότυπον:Αργαστέρ
10
720
36986
7284
2025-12-16T15:51:12Z
Εὐθυμένης
2777
36986
wikitext
text/x-wiki
<noinclude>
Αούτο το πρότυπον εν ο τίτλον τ' [[Βικιπαίδεια:Αργαστέρ|αργαστερί]].</noinclude>
{{ombox
|image=[[Αρχείον:Sandbox.png|75px|link=]]
|style=margin: auto;
|text=Καλώς έρθατε σο '''αργαστέρ'''. Αδαπές επορείτε ν'εφτάτε και να γράφετε άμον ντο θέλετε, αέτς για να μαθάνετε την Βικιπαίδειαν! Το αργαστέρ ευκαιρώνουμ'ατο μ'έναν αυτόματον λειτουργίαν. Για ν'εφτάτε δουλείας σο αργαστέρ, '''[{{fullurl:Special:MyPage/πρόχειρο|action=edit&preload=Template:User_sandbox/preload}} ποίστεν κλικ αδακά]'''. Γιά σο '''άλλαξον''' σην σελίδαν κιαλ'απάν. Γραφέστεν ήντιαν θέλετε! Επεκεί ποίστεν κλικ σο '''αποθήκεμαν''' και τερέστεν ντο θα ίνεται!''}}
<noinclude>
<templatedata>
{
"params": {},
"description": "Αυτό είναι ένα «πρότυπο», δηλαδή μια σελίδα που ενσωματώνεται σε μια άλλη σελίδα (αυτή που επεξεργάζεστε τώρα). Το συγκεκριμένο εμφανίζει αυτό το πλαίσιο μηνύματος. Άλλα πρότυπα μπορεί να εκτελούν και λειτουργίες και να δέχονται παραμέτρους που αλλάζουν αυτό που εμφανίζεται.",
"format": "block"
}
</templatedata>
</noinclude>
1xh4j157t1d5w9tnu9pb9w8j3h5w6lh
Βικιπαίδεια:Αργαστέρ
4
721
33990
33965
2018-10-27T16:43:15Z
Wim b
3723
Ανάκληση των αλλαγών [[Special:Contributions/91.140.89.219|91.140.89.219]] ([[User talk:91.140.89.219|συζήτηση]]) επιστροφή στην προηγούμενη αναθεώρηση [[User:Ποντικάκι|Ποντικάκι]]
33194
wikitext
text/x-wiki
{{αργαστέρ}}
<!-- ΠΑΡΑΚΑΛΟΥΜΕ ΣΑΣ: ΓΡΑΦΕΣΤΕΝ ΑΦΚΑ Σ'ΑΟΥΤΟΝ ΤΗ ΓΡΑΜΜΗΝ! --><br />''
bvxulebcz7ij0ni2ygoknywy8g22rxu
4 Απρίλτ
0
722
37120
37061
2025-12-16T18:23:26Z
Εὐθυμένης
2777
37120
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[3 Απρίλτ]] | [[4 Απρίλτ]] | [[5 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''4 τ' Απρίλτ''' εν τ' 94ον ημέρα τη χρονίας (95ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 258 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[4 Μαρτί]] - [[4 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0094]]
7r2tkej715uac0bqac56jj63wo7hq3h
Φίλων Κτενίδης
0
723
32844
32033
2016-03-19T15:17:44Z
91.9.104.102
[[wmf:Resolution:Licensing policy]]
32844
wikitext
text/x-wiki
Ο '''Φίλων Κτενίδης''' (1889- 13 Χορτοθέρτ 1963) έτονε [[Πόντος|πόντιος]] [[Ελλάδα|έλλενας]] συγγραφέας, δημοσιογράφος και γιατρός. Ατός εμπρολάλεσεν την ανιστόρησην τη μονής Σουμελά σο Βέρμιον. Ίδρυσεν το Σωματείον τη Παναγίας Σουμελά το 1951.
== Συνδέσμαι ==
* ''[[oldwikisource:Η Καμπάνα του Πόντου|Η Καμπάνα του Πόντου]]'' - Έργον τη Φίλωνα Κτενίδη
* [http://pontosworld.com/index.php?option=com_content&task=view&id=202&Itemid=90 ''Φίλων Κτενίδης''] - σο [[PontosWorld.com]] (σ'αγγλικά και σ'ελλενικά)
[[Κατηγορίαν:Ποιητάδες|Κτενίδης, Φίλων]]
[[Κατηγορίαν:Συγγραφέοι|Κτενίδης, Φίλων]]
9qzixrmshhw189ahlzgoml37ifpzrzc
Κατηγορίαν:User fr
14
725
31567
31184
2013-04-13T07:50:34Z
KLBot2
3570
Bot: Migrating 8 interwiki links, now provided by [[Wikidata]] on [[:d:Q6402996]]
31567
wikitext
text/x-wiki
{{Commonscat|User fr}}
[[Κατηγορίαν:Βαβέλ]]
7ogpsq6nyjzu9dewxh23wqxl8qz27c7
Μόσχα
0
729
36794
35551
2025-12-16T09:16:15Z
Εὐθυμένης
2777
36794
wikitext
text/x-wiki
[[Αρχείον:Kremlin 27.06.2008 01.jpg|μικρογραφία]]
Η '''Μόσχα''' (ρουσ. Москва́) εν η πρωτεύουσαν, η μία ασοι δύο ομοσπονδιακούς πόλεις τη [[Ρουσία|Ρουσίας]] και διοικητικόν κέντρον τη Περιφέρειας Μόσχας (Моско́вская о́бласть).
<gallery>
Kremlin birds eye view-1.jpg|
RedSquare (pixinn.net).jpg|
Moscow Business Center 5073-84.jpg|
Trinitylavra.jpg|
</gallery>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ru}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ρουσία]]
l076vu4e45is45itksuwkr1bld2ztdu
5 Απρίλτ
0
733
37121
37051
2025-12-16T18:23:41Z
Εὐθυμένης
2777
37121
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[4 Απρίλτ]] | [[5 Απρίλτ]] | [[6 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''5 τ' Απρίλτ''' εν τ' 95ον ημέρα τη χρονίας (96ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 270 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[5 Μαρτί]] - [[5 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0095]]
1uxxbb8k22kd5v8rmjxl4quefbkosmx
6 Απρίλτ
0
734
37122
37056
2025-12-16T18:23:57Z
Εὐθυμένης
2777
37122
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[5 Απρίλτ]] | [[6 Απρίλτ]] | [[7 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''6 τ' Απρίλτ''' εν τ' 96ον ημέρα τη χρονίας (97ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 269 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
* 46π.Χ.- Ο Ιούλος Καίσαρας ενίκεσεν τον Καικίλιον Μέτελλο Σκιπίωνα και τον Μάρκο Πόρκιο Κάτωνα σην μάχην σο Θαψό.
* 402- Ο Στίλλιχον ενίκεσεν τους Βισιγότθους αφκά σο Αλαρικόν ση μάχην ση Πολλέντια.
* 1199- Ο βασιλέας Ριχάρδος Α' της Αγγλίας απέθανεν απ' έναν λοίμωξην που έπαθεν όταν εξέγκαν ασον μίνατ' έναν δόρυ.
* 1320- Οι Σκωτσέζοι ξανεποίκαν συμφωνία να ίνταν ανεξαρτητοι με την Διακήρηξην του Αμπρόατου.
* 1327- Ο ποιητής Πετράρχης ελεπ΄πρωτην φοραν το εσνατ'το ταιριαστόν, τη Λαύρα, σην εκκλησίαν τη Αγίας Κλαίρης σο Αβινιόν.
* 1385- Ο Γιάνες, ο κυβερνήτης σην περιοχής του Αβίζ εντον ο βασιλεας της Πορτογαλίας.
* 1652- Σο Ακρωτήρ Καλής Ελπίδας, ο Ολλανδον 8αλασσοπόρον Ίαν φαν Ρίμπεκ εποίκεν ξαν εναν σταθμόν για τα αναγκας των εμπόρων που εν ατωρα το Κέιπ Τάουν.
* 1667- Ίνασ τρανος σεισμός καταστρέφ' την πόλ'Δουβρόβνικ.
* 1782- Ο Ράμα ο Α' ενίκεσεν τον βασιλέα Ταξίν του Σιαμ (οσήμερον Ταυλάνδη) και εποίκεν στρατιωτικόν νόμο.
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[6 Μαρτί]] - [[6 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0096]]
2owl85oi4mpofaaxs060qxy4ec8qv1q
7 Απρίλτ
0
736
37123
37054
2025-12-16T18:24:12Z
Εὐθυμένης
2777
37123
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[6 Απρίλτ]] | [[7 Απρίλτ]] | [[8 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''7 τ' Απρίλτ''' εν τ' 97ον ημέρα τη χρονίας (98ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 268 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[7 Μαρτί]] - [[7 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0097]]
i729k8omnp2ceb16ndj9ir1ni3vbvl5
ΚΤΕΝΙΔΗΣ ΦΙΛΩΝ
0
737
4943
2009-04-07T08:05:32Z
Sinopeus
168
[[ΚΤΕΝΙΔΗΣ ΦΙΛΩΝ]] ετερχλαεύτεν σο [[Φίλων Κτενίδης]]
4943
wikitext
text/x-wiki
#REDIRECT [[Φίλων Κτενίδης]]
asvsgfak7eu8ub6mnesn8d16g16627f
Βικιπαίδεια:Αγορά
4
740
36330
36326
2025-11-20T14:22:33Z
MediaWiki message delivery
4020
/* Reminder: Help us decide the name of the new Abstract Wikipedia project */ νέα ενότητα
36330
wikitext
text/x-wiki
__NEWSECTIONLINK__
<ul>
{| class="plainlinks" width="50%" align="center" border="0" cellpadding="2" cellspacing="2" style="margin-bottom:0.5em; background:#FFF; font-size:1.2em; text-align:center;"
| [{{fullurl:Βικιπαίδεια:Αγορά|action=edit§ion=new}} Αρχινέστε γράψιμον σην αγοράν<br>Add a new topic in this forum<br>Добавьте новую тему на форуме]
|}
{| align="right" style="background:#FFF5EE; margin:0 0 0.5em 1em;" id="toc" width="220px"
|-
|colspan="2" align="center" | [[Αρχείον:Diogenes looking for a man - attributed to JHW Tischbein.jpg|center|200px]]
|-
|colspan="2" align="center" | <big>'''Αγορά'''</big><br />
----
|-
|style="background:#EEDFCC;" colspan="2" align="center"| '''Χρήσιμα'''
|-
|colspan="2" align="center"|
[[Βικιπαίδεια:Εκλογήν|Εκλογήν]]<br />
[[Αρχικόν σελίδα|Αρχικόν σελίδαν]]<br /> [[Βικιπαίδεια|Βικιπαίδεια]]<br /> [[Βικιπαίδεια/Ντο εν η Βικιπαίδεια|Ντο εν η Βικιπαίδεια]]<br />[[Βικιπαίδεια/Ντο 'κ εν η Βικιπαίδεια|Ντο 'κ εν η Βικιπαίδεια]] <br /> [[Βικιπαίδεια/Βοήθεια|Βοήθεια]] <br /> [[Βικιπαίδεια/Δικαιώματα πνευματί|Δικαιώματα πνευματί]]<br />[irc://irc.freenode.net/wikipedia-pnt Παρακάθ σο IRC]
|}
<div style="background:#EEDFCC; text-align:left; margin:0px; padding:3px;">
<span style="font-size:bigger;">'''<u>Χ</u>αιρετίας και καλωσόρεμαν σ' όλ<u>α</u> τα Βικιπαιδία!'''</span>
</div>
<div style="background:#FFF5EE; padding:2px; margin-top:2px;">
Οι παλιοί εμουν σ' αρχαίον τ' ελλενικόν την γλώσσαν έλεγαν «αγοράν» τον τόπον που εποίνανε τα μουχαμπέτε και τα καλατσίας ατουν. Αέτς πα, όλ' εμείς 'τουν θα καλατσέβουμε αδά σην αγοράν εμουν. Σον αρχαίον την αγοράν ο Διογένες ο Σινωπέας αραεύκουτον τ' ανθρώπ'ς (εικόνα). Εμείς 'τουν αδά πα θα ευρίσκουμ' ατείντζ.
Αρχινέστε γράψιμον [{{fullurl:{{FULLPAGENAME}}|action=edit§ion=new}} αφκά καικά] και βαλέστε την '''υπογραφήν εσουν''': <nowiki>~~~~</nowiki>.
</div>
</li>
<li>'''pnt:''' Ψαλαφία για σημαίαν μποτ πρεπ' να ίνουνταν σ'αβούτεν τη σελίδαν.
</li>
<li>'''en:''' Requests for the [[m:bot|bot]] flag should be made on this page. This wiki uses the [[m:bot policy|standard bot policy]], and allows [[m:bot policy#Global_bots|global bots]] and [[m:bot policy#Automatic_approval|automatic approval of certain types of bots]]. Other bots should apply below.</li>
<li>'''ru:''' Запросы на присвоение флагов [[m:bot|бота]] должны быть поданы на этой странице. В данном Вики-разделе действует [[m:bot policy|стандартная политика в отношении ботов]], допускающая функционирование здесь т. н. [[m:bot policy#Global_bots|глобальных ботов]] и их [[m:bot policy#Automatic_approval|автоматическое подтверждение]] в большинстве Вики-проектов. В прочих случаях владельцы ботов должны подать заявку ниже.
</ul>
<hr size="5px" noshadow>
== Αρχεία ==
* [[Βικιπαίδεια:Αγορά/Αρχείον 2008|Αρχείον 2008]]
* [[Βικιπαίδεια:Αγορά/Αρχείον 2009|Αρχείον 2009]]
* [[Βικιπαίδεια:Αγορά/Αρχείον 2009-2017|Αρχείον 2009-2017]]
==Αρχειοθέτηση==
Έγινε αρχειοθέτηση της Αγοράς. [[Χρήστες:George23820|George23820]] ([[Καλάτσεμαν χρήστε:George23820|συζήτηση]]) 22:59, 2 Καλανταρί 2018 (UTC)
== Editing News #1—2018 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''[[m:VisualEditor/Newsletter/2018/February|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]''
<div style="float:right;width:270px;margin-left:1em;border-style:solid;border-width:1px;padding:1em;">
[[File:VisualEditor-logo.svg|200px|center]]
'''Did you know?'''<div class="thumbcaption" style="font-size: 90%;">
Did you know that you can now use the [[mw:Special:MyLanguage/VisualEditor/Diffs|visual diff tool]] on any page?
[[File:Wikitext diff paragraph move correcting vandalism 2018.png|alt=Screenshot showing some changes, in the two-column wikitext diff display|center|frameless|250px]]
Sometimes, it is hard to see important changes in a wikitext diff. This screenshot of a wikitext diff (click to enlarge) shows that the paragraphs have been rearranged, but it does not highlight the removal of a word or the addition of a new sentence.
If you [[Special:Preferences#mw-prefsection-betafeatures|enable the Beta Feature]] for "{{Int:visualeditor-preference-visualdiffpage-label}}", you will have a new option. It will give you a new box at the top of every diff page. This box will let you choose either diff system on any edit.
[[File:VisualEditor visual diff tool - toggle button.png|alt=Toggle button showing visual and wikitext options; visual option is selected|center|frameless|200px]]
Click the toggle button to switch between visual and wikitext diffs.
In the visual diff, additions, removals, new links, and formatting changes will be highlighted. Other changes, such as changing the size of an image, are described in notes on the side.
[[File:Visual diff paragraph move correcting vandalism 2018.png|alt=Screenshot showing the same changes to an article. Most changes are highlighted with text formatting.|center|frameless|250px]]
This screenshot shows the same edit as the wikitext diff. The visual diff highlights the removal of one word and the addition of a new sentence.
You can read and help translate [[mw:Special:MyLanguage/Help:VisualEditor/User guide|the user guide]], which has more information about how to use the visual editor.
</div></div>
Since [[m:VisualEditor/Newsletter/2017/May|the last newsletter]], the [[mw:Editing|Editing Team]] has spent most of their time supporting [[mw:2017 wikitext editor|the 2017 wikitext editor mode]], which is available inside the visual editor as a Beta Feature, and improving [[mw:VisualEditor/Diffs|the visual diff tool]]. Their work board is available [[phab:project/view/3236/|in Phabricator]]. You can find links to the work finished each week at [[mw:VisualEditor/Weekly triage meetings]]. Their [[mw:Editing team/Current priorities|current priorities]] are fixing bugs, supporting the 2017 wikitext editor, and improving the visual diff tool.
===Recent changes===
*The '''[[mw:2017 wikitext editor|2017 wikitext editor]]''' is [[Special:Preferences#mw-prefsection-betafeatures|available as a Beta Feature]] on desktop devices. It has the same toolbar as the visual editor and can use the citoid service and other modern tools. The team have been comparing the performance of different editing environments. They have studied how long it takes to open the page and start typing. The study uses data for more than one million edits during December and January. Some changes have been made to improve the speed of the 2017 wikitext editor and the visual editor. Recently, the 2017 wikitext editor opened fastest for most edits, and the 2010 WikiEditor was fastest for some edits. More information will be posted at [[mw:Contributors/Projects/Editing performance]].
*The '''[[mw:VisualEditor/Diffs|visual diff tool]]''' was developed for the visual editor. It is now available to all users of the visual editor and the 2017 wikitext editor. When you review your changes, you can toggle between wikitext and visual diffs. You can also [[Special:Preferences#mw-prefsection-betafeatures|enable the new Beta Feature]] for "Visual diffs". The Beta Feature lets you use the visual diff tool to view other people's edits on page histories and [[Special:RecentChanges]]. [https://phabricator.wikimedia.org/T167508]
*[[mw:Special:MyLanguage/Extension:CodeMirror|'''Wikitext syntax highlighting''']] is available as a Beta Feature for both [[mw:2017 wikitext editor|the 2017 wikitext editor]] and the 2010 wikitext editor. [https://phabricator.wikimedia.org/T101246]
*The [[mw:Citoid|citoid service]] automatically translates URLs, DOIs, ISBNs, and PubMed id numbers into wikitext citation templates. It is very popular and useful to editors, although it can be a bit tricky to set up. <mark>Your wiki can have this service. Please [[mw:Special:MyLanguage/Citoid/Enabling Citoid on your wiki|read the instructions]]. You can [[phab:T127354|ask the team to help you enable citoid at your wiki]]</mark>.
===Let's work together===
*The team will talk about editing tools at an upcoming [[m:Wikimedia Foundation metrics and activities meetings|Wikimedia Foundation metrics and activities meeting]].
*Wikibooks, Wikiversity, and other communities may have the visual editor made available by default to contributors. If your community wants this, then please contact [[mw:User talk:Deskana (WMF)|Dan Garry]].
*The <code><nowiki><references /></nowiki></code> block can [[mw:Special:MyLanguage/Contributors/Projects/Columns for references|automatically display long lists of references in columns]] on wide screens. This makes footnotes easier to read. You can [https://phabricator.wikimedia.org/maniphest/task/edit/form/1/?projects=Cite,VisualEditor,Wikimedia-Site-requests&title=Convert%20reference%20lists%20over%20to%20`responsive`%20on%20XXwiki&priority=10&parent=159895 '''request multi-column support'''] for your wiki. [https://phabricator.wikimedia.org/T33597]
*If you aren't reading this in your preferred language, then please help us with translations! Subscribe to the [[mail:translators-l|Translators mailing list]] or [https://meta.wikimedia.org/w/index.php?title=User_talk:Elitre_(WMF)&action=edit§ion=new contact us] directly. We will notify you when the next issue is ready for translation. {{Int:Feedback-thanks-title}}
—[[mw:User:Elitre (WMF)|Elitre (WMF)]]
</div> 20:56, 2 Μαρτ 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=17790200 -->
== Merging [[:Κατηγορίαν:Πρότυπα]] and [[:Κατηγορίαν:Πρότυπα Βικιπαίδειας]] ==
Hi all! Proposed merging [[:Κατηγορίαν:Πρότυπα]] and [[:Κατηγορίαν:Πρότυπα Βικιπαίδειας]]. These categories is aimed to these same topic. --[[Χρήστες:Kaganer|Kaganer]] ([[Καλάτσεμαν χρήστε:Kaganer|συζήτηση]]) 16:08, 4 Μαρτ 2018 (UTC)
== WikiGap 2018 Russia ==
* '''EN:''' Dear colleagues, please comment on ''[[m:CentralNotice/Request/WikiGap 2018 Russia |CentralNotice banner proposal]]'' for [[wmru:Конкурсы/WikiGap 2018 Russia/en|WikiGap 2018 Russia]] article contest. (8 March - 8 April, all IPs from Russia, WPs only, 1 banner impression per week). Thank you.
* '''RU:''' Уважаемые коллеги, пожалуйста выскажите своё мнение по поводу ''[[m:CentralNotice/Request/WikiGap 2018 Russia|баннерной кампании CentralNotice]]'' для объявления о российском викимарафоне [[wmru:Конкурсы/WikiGap 2018 Russia|WikiGap 2018]] (8 марта - 8 апреля, все IP из России, только Википедии, 1 показ в неделю). Спасибо.--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 15:02, 6 Μαρτ 2018 (UTC)
== Public Domain 2018 Russia ==
* '''EN:''' Dear colleagues, please comment on ''[[m:CentralNotice/Request/Public Domain 2018 Russia |CentralNotice banner proposal]]'' for [[wmru:Открытая библиотека/Конкурсы/Общественное достояние — 2018/en|Public Domain 2018 Russia]] uploads & article contest. (18 March - 30 June, all IPs from Russia, Wp/Ws/Commons, 1 banner impression per two weeks). Thank you.
* '''RU:''' Уважаемые коллеги, пожалуйста выскажите своё мнение по поводу ''[[m:CentralNotice/Request/Public Domain 2018 Russia|баннерной кампании CentralNotice]]'' для объявления о российском викимарафоне [[wmru:Открытая библиотека/Конкурсы/Общественное достояние — 2018|Общественное достояние 2018]] (18 марта - 30 июня, все IP из России, Википедии/Викитеки/Викисклад, 1 показ в две недели). Спасибо.--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 18:37, 8 Μαρτ 2018 (UTC)
== Galicia 15 - 15 Challenge ==
<center>[[File:Mapa de Galiza con bandeira.svg|100px]]</center>
'''[[:w:en:Wikipedia:Galicia 15 - 15 Challenge|Wikipedia:Galicia 15 - 15 Challenge]]''' is a public writing competition which will improve improve and translate this list of 15 really important articles into as many languages as possible. Everybody can help in any language to collaborate on writing and/or translating articles related to Galicia. To participate you just need to sign up [[:en:Wikipedia:Galicia 15 - 15 Challenge/Participants|here]]. Thank you very much.--[[Χρήστες:Breogan2008|Breogan2008]] ([[Καλάτσεμαν χρήστε:Breogan2008|συζήτηση]]) 14:29, 12 Μαρτ 2018 (UTC)
== 2018 FIFA World Cup Cities Regions ==
RU:
Уважаемые коллеги!</br>
[[m:Wikimedia_Russia/ru|Викимедиа Россия]] ([[:wmru:|ВМРУ]]) выступает со-организатором открытого мультиплатформенного конкурса «[[wmru:Конкурсы/Узнай Россию. Города и регионы ЧМ по футболу 2018|Узнай Россию. Города и регионы ЧМ по футболу 2018]]» (14 марта-15 июля). Для уведомления о возможности участия пользующихся Википедией, Викигидом и Викискладом жителей и гостей России инициирована ''[[m:CentralNotice/Request/2018 FIFA World Cup Cities Regions|баннерная кампания CentralNotice]]''.</br>
* '''Проект баннера''' (RU)
<div class="plainlinks" style="border: 1px solid #ddd; margin: 0 0 3px;">
<div class="nomobile" style="float:left"></div>
<div class="nomobile" style="float:right">[[File:Wikipedia-logo-v2.svg|180x25px|link=]]</br>[[File:Wikivoyage-logo.svg|75x30px|link=]]</br>[[File:Commons-logo.svg|180x35px|link=]]</div>
<div style="color: grey; max-width:1280px; margin: 12px auto; font-family: Tahoma, 'DejaVu Sans Condensed', sans-serif; text-align: center; font-size: 14pt; position: relative;">«'''[[wmru:Конкурсы/Узнай Россию. Города и регионы ЧМ по футболу 2018|Узнай Россию. Города и регионы ЧМ по футболу 2018]]'''»</div>
<div style="color: grey; max-width:1280px; margin: 12px auto; font-family: Tahoma, 'DejaVu Sans Condensed', sans-serif; text-align: center; font-size: 12pt; position: relative;">Пиши статьи, загружай изображения и выигрывай призы!</div>
<div style="clear: both;"></div>
</div></br>
* '''Срок''': 20 мая - 3 июня 2018 г.
* '''Аудитория''': [[m:Unregistered_user/ru|незарегистрировавшиеся посетители]]
* '''Разделы''': [[w:en:|en]]-[[w:ru:|ru]]-[[w:tt:|tt]] и возможно в иных, на языке которых будет готова локальная посадочная страница (преимущественно из числа [[m:Wikipedias in the languages of Russia/ru|Википедий на языках народов России]])
* '''Частота показов''': низкая, по усмотрению CN-админов, желательно не более 3-4 всплываний в неделю (Limit traffic 3% like [https://meta.wikimedia.org/w/index.php?title=Special:CentralNotice&subaction=noticeDetail¬ice=WMDE_spring_2018 WMDE Spring 2018]?).</br>
''Прошу высказать своё мнение, предложения по изменению баннера или настроек ниже, а лучше на [[m:CentralNotice/Request/2018 FIFA World Cup Cities Regions|страничке заявки на баннер]] на языке данного уведомления.'' Будем благодарны, если поможете нам создать или улучшить баннер и посадочную страницу проекта на Вашем языке.<br />
От имени [[:wmru:Баннеры|баннерной программы Викимедиа РУ]], с уважением
EN:
Dear colleagues!</br>
[[m:Wikimedia_Russia|Wikimedia Russia]] ([[:wmru:en:|WMRU]]) is a co-organizer of [[wmru:Конкурсы/Узнай Россию. Города и регионы ЧМ по футболу 2018/en|Discover Russia. 2018 FIFA World Cup Cities & Regions]] Wiki-Marathon (March 14 - July 15). ''[[m:CentralNotice/Request/2018 FIFA World Cup Cities Regions|Targeted CentralNotice banner campaign]]'' is initiated to inform Wikipedia, Wikivoyage & Wikimedia Commons visitors from among residents & guests of the Russian Federation about this opportunity.</br>
* '''Draft Banner''' (EN)
<div class="plainlinks" style="border: 1px solid #ddd; margin: 0 0 3px;">
<div class="nomobile" style="float:left"></div>
<div class="nomobile" style="float:right">[[File:Wikipedia-logo-v2.svg|180x25px|link=]]</br>[[File:Wikivoyage-logo.svg|75x30px|link=]]</br>[[File:Commons-logo.svg|180x35px|link=]]</div>
<div style="color: grey; max-width:1280px; margin: 12px auto; font-family: Tahoma, 'DejaVu Sans Condensed', sans-serif; text-align: center; font-size: 14pt; position: relative;">'''[[wmru:Конкурсы/Узнай Россию. Города и регионы ЧМ по футболу 2018/en|Discover Russia. 2018 FIFA World Cup Cities & Regions]]'''</div><div style="color: grey; max-width:1280px; margin: 12px auto; font-family: Tahoma, 'DejaVu Sans Condensed', sans-serif; text-align: center; font-size: 12pt; position: relative;">Write articles, upload images and win prizes!</div>
<div style="clear: both;"></div>
</div>
* '''Terms''': 20 May - 4 June 2018
* '''Audience''': [[m:Unregistered_user|Anonymous visitors]]
* '''Wikipedia editions''': [[w:en:|en]]-[[w:ru:|ru]]-[[w:tt:|tt]] and possibly others, who will have local language landing page (though we mainly concentrate on [[m:Wikipedias in the languages of Russia|Wikipedias in the languages of Russia]])
* '''Weight & impression''': low, TBD by CN-admins, preferably no more than 3-4 impressions per week (Limit traffic 3% like [https://meta.wikimedia.org/w/index.php?title=Special:CentralNotice&subaction=noticeDetail¬ice=WMDE_spring_2018 WMDE Spring 2018]?).</br>
''We invite you to express your opinion, voice your proposals about improving the banner or its settings, here or (better) at [[m:CentralNotice/Request/Wikimedia CEE Spring 2018 Russia|banner request page]] in the language of this notification.'' We will be grateful if you can help us to create or improve the banner and the project landing page in Your language.<br />
On behalf of [[:wmru:Баннеры/en|WMRU Banner Program]], respectfully--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 21:59, 20 Απρίλ 2018 (UTC)
== Wikimedia CEE Spring 2018 Russia ==
<blockquote>
EN:
Please comment on ''[[m:CentralNotice/Request/Wikimedia CEE Spring 2018 Russia|CentralNotice banner proposal]]'' for ongoing annual [[m:Wikimedia CEE Spring 2018|Wikimedia CEE Spring 2018]] article writing contest.</br>'''Proposed settings''': Month long, only in Russia, WPs in en-kk-myv-ru-tt & possibly others (local landing page, mainly from [[m:Wikipedias in the languages of Russia]]), low impression TBD by CN admins.</br>On behalf of [[:wmru:Banners|Wikimedia Russia Banners Program]], respectfully --[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 08:24, 21 Απρίλ 2018 (UTC)
RU:
Пожалуйста выскажитесь про ''[[m:CentralNotice/Request/Wikimedia CEE Spring 2018 Russia|баннерную кампанию CentralNotice]]'' для уведомления читателей о [[wmru:Конкурсы/Вики-весна — 2018|ежегодном викимарафоне «Вики-весна»]] (21 марта-31 мая).</br>
'''Предложенные настройки''': длинной в месяц, только в России, разделы ВП на en-kk-myv-ru-tt и возможно в иных (локальная посадочная страница, преимущественно из числа [[m:Wikipedias in the languages of Russia/ru|Википедий на языках народов России]]), низкая частота показов по усмотрению CN-админов.</br>
От имени [[:wmru:Баннеры|баннерной программы Викимедиа РУ]], с уважением --[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 08:24, 21 Απρίλ 2018 (UTC)
</blockquote>
== Time to bring embedded maps (‘mapframe’) to most Wikipedias ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
'''Time to bring embedded maps (‘mapframe’) to most Wikipedias'''
{{int:please-translate}}
[[mw:Special:MyLanguage/Help:Extension:Kartographer|Mapframe]] is a feature that enables users to easily display interactive maps right on wiki pages. Currently, most Wikipedias don’t have mapframe. But [[mw:Special:MyLanguage/Maps#Milestones_and_Updates|fifteen Wikipedias]], along with all the other Wikimedia projects, are using mapframe today to display maps on thousands of pages.
A little background: over the last few months, the Foundation’s [[mw:Collaboration|Collaboration team]] has been working to improve the stability and user experience of the maps service. In addition, a question about long-term support for the maps service was recently settled, and a small team has been assigned for routine maintenance. Given these developments, bringing the benefits of mapframe to Wikipedias that lack the feature seems both safe and supportable. [[phab:T191583|Nine Wikipedias]] that use a stricter version of Flagged Revisions will not get mapframe in this release.
Maps are a valuable form of visual data that can improve readers’ understanding across a wide range of topics. If you know of any reasons why mapframe shouldn’t be implemented on your Wikipedia, let us know [[mw:Talk:Map_improvements_2018|on the project talk page]]. Unless we hear from you, we plan to release mapframe to most Wikipedias in May, 2018. So, if you foresee an issue, please let us hear from you. Otherwise, happy mapping!
</div> [[m:User:CKoerner (WMF)|CKoerner (WMF)]] ([[m:User talk:CKoerner (WMF)|talk]]) 21:38, 24 Απρίλ 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:JMatazzoni_(WMF)/mapframe-to-all-wikipedias-notice/distribution_list&oldid=17969222 -->
== AdvancedSearch ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
From May 8, [[mw:Special:MyLanguage/Help:Extension:AdvancedSearch|AdvancedSearch]] will be available as a [[mw:Special:MyLanguage/Beta Features|beta feature]] in your wiki. The feature enhances the [[Special:Search|search page]] through an advanced parameters form and aims to make [[m:WMDE_Technical_Wishes/AdvancedSearch/Functional_scope|existing search options]] more visible and accessible for everyone. AdvancedSearch is a project by [[m:WMDE Technical Wishes/AdvancedSearch|WMDE Technical Wishes]]. Everyone is invited to test the feature and we hope that it will serve you well in your work! </div> [[m:User:Birgit Müller (WMDE)|Birgit Müller (WMDE)]] 14:53, 7 Καλομηνά 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Birgit Müller (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_2&oldid=17995461 -->
== New Wikipedia Library Accounts Available Now (May 2018) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|upright|The TWL OWL says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for free, full-access, accounts to research and tools as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials on the [https://wikipedialibrary.wmflabs.org/ Library Card platform]:
* '''[https://wikipedialibrary.wmflabs.org/partners/69/ Rock's Backpages]''' – Music articles and interviews from the 1950s onwards - 50 accounts
* '''[https://wikipedialibrary.wmflabs.org/partners/68/ Invaluable]''' – Database of more than 50 million auctions and over 500,000 artists - 15 accounts
* '''[https://wikipedialibrary.wmflabs.org/partners/70/ Termsoup]''' – Translation tool
'''Expansions'''
* '''[https://wikipedialibrary.wmflabs.org/partners/43/ Fold3]''' – Available content has more than doubled, now including new military collections from the UK, Australia, and New Zealand.
* '''[https://wikipedialibrary.wmflabs.org/partners/52/ Oxford University Press]''' – The Scholarship collection now includes [http://www.e-enlightenment.com/ Electronic Enlightenment]
* '''[https://wikipedialibrary.wmflabs.org/partners/60/ Alexander Street Press]''' – [https://alexanderstreet.com/products/women-and-social-movements-library Women and Social Movements Library] now available
* '''[https://wikipedialibrary.wmflabs.org/partners/58/ Cambridge University Press]''' – [http://orlando.cambridge.org/ Orlando Collection] now available
Many other partnerships with accounts available are listed on [https://wikipedialibrary.wmflabs.org/partners/ our partners page], including [https://wikipedialibrary.wmflabs.org/partners/47/ Baylor University Press], [https://wikipedialibrary.wmflabs.org/partners/41/ Loeb Classical Library], [https://wikipedialibrary.wmflabs.org/partners/46/ Cairn], [https://wikipedialibrary.wmflabs.org/partners/55/ Gale] and [https://wikipedialibrary.wmflabs.org/partners/61/ Bloomsbury].
Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 18:03, 30 Καλομηνά 2018 (UTC)
:''You can host and coordinate signups for a Wikipedia Library branch in your own language. Please contact [[m:User:Ocaasi_(WMF)|Ocaasi (WMF)]].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Samwalton9@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=18064061 -->
== Update on page issues on mobile web ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
'''Update on page issues on mobile web'''
{{int:please-translate}}
Hi everyone. The [[mw:Reading/Web/Team|Readers web team]] has recently begun working on exposing issue templates on the mobile website. Currently, details about issues with page content are generally hidden on the mobile website. This leaves readers unaware of the reliability of the pages they are reading. The goal of this project is to improve awareness of particular issues within an article on the mobile web. We will do this by changing the visual styling of page issues.
So far, we have [[mw:Reading/Web/Projects/Mobile Page Issues|drafted a proposal on the design and implementation]] of the project. We were also able to run [[mw:Reading/Web/Projects/Mobile Page Issues/Research Results|user testing on the proposed designs]]. The tests so far have positive results. Here is a quick summary of what we learned:
* The new treatment increases awareness of page issues among participants. This is true particularly when they are in a more evaluative/critical mode.
* Page issues make sense to readers and they understand how they work
* Readers care about page issues and consider them important
* Readers had overwhelmingly positive sentiments towards Wikipedia associated with learning about page issues
Our next step would be to start implementing these changes. We wanted to reach out to you for any concerns, thoughts, and suggestions you might have before beginning development. Please [[mw:Reading/Web/Projects/Mobile Page Issues|visit the project page]] where we have more information and mockups of how this may look. Please [[mw:Talk:Reading/Web/Projects/Mobile Page Issues|leave feedback on the talk page]].
</div> [[m:User:CKoerner (WMF)|CKoerner (WMF)]] ([[m:User talk:CKoerner (WMF)|talk]]) 20:58, 12 Κερασινού 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:CKoerner_(WMF)/Sandbox&oldid=18120916 -->
== Global preferences are available ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Global preferences are now available, you can set them by visiting your new [[Special:GlobalPreferences|global preferences page]]. Visit [[mw:Help:Extension:GlobalPreferences|mediawiki.org for information on how to use them]] and [[mw:Help talk:Extension:GlobalPreferences|leave feedback]]. -- [[User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]])
</div> 19:19, 10 Χορτοθερί 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=17968247 -->
== New user group for editing sitewide CSS / JS ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''({{int:please-translate}})''
Hi all!
To improve the security of our readers and editors, permission handling for CSS/JS pages has changed. (These are pages like <code dir="ltr">MediaWiki:Common.css</code> and <code dir="ltr">MediaWiki:Vector.js</code> which contain code that is executed in the browsers of users of the site.)
A new user group, <code dir="ltr">[[m:Special:MyLanguage/Interface administrators|interface-admin]]</code>, has been created.
Starting four weeks from now, only members of this group will be able edit CSS/JS pages that they do not own (that is, any page ending with <code dir="ltr">.css</code> or <code dir="ltr">.js</code> that is either in the <code dir="ltr">MediaWiki:</code> namespace or is another user's user subpage).
You can learn more about the motivation behind the change [[m:Special:MyLanguage/Creation of separate user group for editing sitewide CSS/JS|here]].
Please add users who need to edit CSS/JS to the new group (this can be done the same way new administrators are added, by stewards or local bureaucrats).
This is a dangerous permission; a malicious user or a hacker taking over the account of a careless interface-admin can abuse it in far worse ways than admin permissions could be abused. Please only assign it to users who need it, who are trusted by the community, and who follow common basic password and computer security practices (use strong passwords, do not reuse passwords, use two-factor authentication if possible, do not install software of questionable origin on your machine, use antivirus software if that's a standard thing in your environment).
Thanks!
<br/><span dir="ltr">[[m:User:Tgr|Tgr]] ([[m:User talk:Tgr|talk]]) 17:45, 30 Χορτοθερί 2018 (UTC) <small>(via [[m:Special:MyLanguage/Global_message_delivery|global message delivery]])</small></span>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Tgr@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Tgr/massmessage-T139380-ifadmin&oldid=18255968 -->
== Enabling a helpful feature for Template editors ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hello.
The team working on TemplateStyles at the Wikimedia Foundation would like to enable TemplateStyles on this wiki.
TemplateStyles is a feature to allow non-administrators to write and manage CSS styles for templates. It allows contributors who edit templates to separate content and presentation. A good web practice that makes it easier to manage the layout of templates. If you don't edit templates, this will not have any impact on your contributions.
TemplateStyles is useful for a few reasons.
* It makes it possible for templates to work better on mobile.
* It cuts out confusion on where to apply CSS rules.
* Editing CSS is currently limited to administrators, which is a major barrier to participation.
* All stylesheets must be loaded on all pages (whether they actually use the page or not), which wastes bandwidth and makes debugging style rules more difficult.
You can [[mw:Help:TemplateStyles|learn more about TemplateStyles on MediaWiki.org]]. [[mw:Extension:TemplateStyles|Technical documentation is also available]].
This is an optional feature and no one must use it, but template contributors are encouraged to do so! Please discuss and let us know if there are any concerns. If there are no concerns we will proceed to deploy the feature on the 9th of August.
Thank you.
</div> [[m:User:CKoerner (WMF)|CKoerner (WMF)]] ([[m:User talk:CKoerner (WMF)|talk]]) 21:28, 6 Aλωναρί 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:CKoerner_(WMF)/Sandbox&oldid=18277775 -->
== Editing of sitewide CSS/JS is only possible for interface administrators from now ==
''({{int:please-translate}})''
<div lang="en" dir="ltr" class="mw-content-ltr">
Hi all,
as [[m:Special:MyLanguage/Creation of separate user group for editing sitewide CSS/JS/announcement 2|announced previously]], permission handling for CSS/JS pages has changed: only members of the <code>[[m:Special:MyLanguage/Interface administrators|interface-admin]]</code> ({{int:group-interface-admin}}) group, and a few highly privileged global groups such as stewards, can edit CSS/JS pages that they do not own (that is, any page ending with .css or .js that is either in the MediaWiki: namespace or is another user's user subpage). This is done to improve the security of readers and editors of Wikimedia projects. More information is available at [[m:Special:MyLanguage/Creation of separate user group for editing sitewide CSS/JS|Creation of separate user group for editing sitewide CSS/JS]]. If you encounter any unexpected problems, please contact me or file a bug.
Thanks!<br />
[[m:User:Tgr|Tgr]] ([[m:User talk:Tgr|talk]]) 12:40, 27 Aλωναρί 2018 (UTC) <small>(via [[m:Special:MyLanguage/Global_message_delivery|global message delivery]])</small>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Tgr@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=18258712 -->
== Read-only mode for up to an hour on 12 September and 10 October ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch 2018|Read this message in another language]] • {{int:please-translate}}
The [[foundation:|Wikimedia Foundation]] will be testing its secondary data centre. This will make sure that Wikipedia and the other Wikimedia wikis can stay online even after a disaster. To make sure everything is working, the Wikimedia Technology department needs to do a planned test. This test will show if they can reliably switch from one data centre to the other. It requires many teams to prepare for the test and to be available to fix any unexpected problems.
They will switch all traffic to the secondary data center on '''Wednesday, 12 September 2018'''.
On '''Wednesday, 10 October 2018''', they will switch back to the primary data center.
Unfortunately, because of some limitations in [[mw:Manual:What is MediaWiki?|MediaWiki]], all editing must stop when we switch. We apologize for this disruption, and we are working to minimize it in the future.
'''You will be able to read, but not edit, all wikis for a short period of time.'''
*You will not be able to edit for up to an hour on Wednesday, 12 September and Wednesday, 10 October. The test will start at [https://www.timeanddate.com/worldclock/fixedtime.html?iso=20170503T14 14:00 UTC] (15:00 BST, 16:00 CEST, 10:00 EDT, 07:00 PDT, 23:00 JST, and in New Zealand at 02:00 NZST on Thursday 13 September and Thursday 11 October).
*If you try to edit or save during these times, you will see an error message. We hope that no edits will be lost during these minutes, but we can't guarantee it. If you see the error message, then please wait until everything is back to normal. Then you should be able to save your edit. But, we recommend that you make a copy of your changes first, just in case.
''Other effects'':
*Background jobs will be slower and some may be dropped. Red links might not be updated as quickly as normal. If you create an article that is already linked somewhere else, the link will stay red longer than usual. Some long-running scripts will have to be stopped.
*There will be code freezes for the weeks of 10 September 2018 and 8 October 2018. Non-essential code deployments will not happen.
This project may be postponed if necessary. You can [[wikitech:Switch Datacenter#Schedule for 2018 switch|read the schedule at wikitech.wikimedia.org]]. Any changes will be announced in the schedule. There will be more notifications about this. '''Please share this information with your community.''' /<span dir=ltr>[[m:User:Johan (WMF)|User:Johan(WMF)]] ([[m:User talk:Johan (WMF)|talk]])</span>
</div></div> 13:33, 6 Σταυρί 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=18333489 -->
== The Community Wishlist Survey ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
The Community Wishlist Survey. {{Int:Please-translate}}.
Hey everyone,
The Community Wishlist Survey is the process when the Wikimedia communities decide what the Wikimedia Foundation [[m:Community Tech|Community Tech]] should work on over the next year.
The Community Tech team is focused on tools for experienced Wikimedia editors. You can post technical proposals from now until 11 November. The communities will vote on the proposals between 16 November and 30 November. You can read more on the [[m:Special:MyLanguage/Community Wishlist Survey 2019|wishlist survey page]].
<span dir=ltr>/[[m:User:Johan (WMF)|User:Johan (WMF)]]</span></div></div> 11:06, 30 Τρυγομηνά 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=18458512 -->
== Πως είναι δυνατόν; ==
Πως είναι δυνατόν η ποντιακή Βικιπαίδεια να διαθέτει μόνο 462 λήμματα ενώ η Αγγλική διαθέτει πάνω από 1.000.000;--[[Χρήστες:Το πουλί της φωτιάς|Το πουλί της φωτιάς]] ([[Καλάτσεμαν χρήστε:Το πουλί της φωτιάς|συζήτηση]]) 17:02, 31 Τρυγομηνά 2018 (UTC)
== Editing News #2—2018 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''[[metawiki:VisualEditor/Newsletter/2018/October|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]''
<div style="float:right;width:270px;margin-left:1em;border-style:solid;border-width:1px;padding:1em;">
[[File:VisualEditor-logo.svg|200px|center]]
'''Did you know?'''
<div class="thumbcaption" style="font-size: 90%;">
Did you know that you can use the visual editor on a mobile device?
[[File:Mobile editing watchlist star editing pencil.png|alt=Screenshot showing the location of the pencil icon|center|frameless|250px]]
Tap on the pencil icon to start editing. The page will probably open in the wikitext editor.
You will see another pencil icon in the toolbar. Tap on that pencil icon to the switch between visual editing and wikitext editing.
[[File:Visual editing mobile switch wikitext.png|alt=Toolbar with menu opened|center|frameless|250px]]
Remember to publish your changes when you're done.
You can read and help translate [[mw:Special:MyLanguage/Help:VisualEditor/User guide|the user guide]], which has more information about how to use the visual editor.</div></div>
Since the last newsletter, the [[mw:Editing|Editing Team]] has wrapped up most of their work on the [[mw:2017 wikitext editor|2017 wikitext editor]] and [[mw:VisualEditor/Diffs|the visual diff tool]]. The team has begun investigating the needs of editors who use mobile devices. Their work board is available [[phab:project/view/3236/|in Phabricator]]. Their [[mw:Wikimedia Audiences/2018-19 Q2 Goals#Contributors|current priorities]] are fixing bugs and improving mobile editing.
=== Recent changes ===
*The Editing team has published an [[mw:Mobile editing using the visual editor report|initial report about mobile editing]].
*The Editing team has begun a design study of visual editing on the mobile website. New editors have trouble doing basic tasks on a smartphone, such as adding links to Wikipedia articles. You can [[c:File:Visual Editor Heuristic - Results.pdf|read the report]].
*The Reading team is working on a [[mw:Reading/Web/Advanced mobile contributions|separate mobile-based contributions project]].
*The 2006 wikitext editor is [[mw:Contributors/Projects/Removal of the 2006 wikitext editor|no longer supported]]. If you used [[:File:Edit toolbar - 2.png|that toolbar]], then you will no longer see any toolbar. You may choose another editing tool in your [[Special:Preferences#mw-prefsection-editing|editing preferences]], [[Special:Preferences#mw-prefsection-gadgets|local gadgets]], or [[Special:Preferences#mw-prefsection-betafeatures|beta features]].
*The Editing team described the history and status of [[mw:Extension:VisualEditor|VisualEditor]] in [[m:Wikimedia monthly activities meetings/2018-03|this recorded public presentation]] (starting at 29 minutes, 30 seconds).
*The Language team released [[mw:Content translation/V2|a new version of Content Translation]] (CX2) last month, on [[foundationsite:2018/09/30/international-translation-day/|International Translation Day]]. It integrates the visual editor to support templates, tables, and images. It also produces better wikitext when the translated article is published. [https://wikimediafoundation.org/2018/09/30/content-translation-version-two/]
=== Let's work together ===
* The Editing team wants to improve visual editing on the mobile website. <mark>Please read [[mw:Visual-based mobile editing/Ideas/October 2018|their ideas]] and tell the team what you think would help editors who use the mobile site.</mark>
*The [[m:Community Wishlist Survey 2019|Community Wishlist Survey]] begins next week.
*If you aren't reading this in your preferred language, then please help us with translations! Subscribe to the [[mail:translators-l|Translators mailing list]] or [https://meta.wikimedia.org/w/index.php?title=User_talk:Elitre_(WMF)&action=edit§ion=new contact us] directly. We will notify you when the next issue is ready for translation. {{int:Feedback-thanks-title}}
—[[mw:User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:User talk:Whatamidoing (WMF)|talk]])
</div> 14:17, 2 Αεργί 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=17790200 -->
== Change coming to how certain templates will appear on the mobile web ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
'''Change coming to how certain templates will appear on the mobile web'''
{{int:please-translate}}
[[File:Page_issues_-_mobile_banner_example.jpg|thumb|Example of improvements]]
Hello,
In a few weeks the Readers web team will be changing how some templates look on the mobile web site. We will make these templates more noticeable when viewing the article. We ask for your help in updating any templates that don't look correct.
What kind of templates? Specifically templates that notify readers and contributors about issues with the content of an article – the text and information in the article. Examples like [[wikidata:Q5962027|Template:Unreferenced]] or [[Wikidata:Q5619503|Template:More citations needed]]. Right now these notifications are hidden behind a link under the title of an article. We will format templates like these (mostly those that use Template:Ambox or message box templates in general) to show a short summary under the page title. You can tap on the "Learn more" link to get more information.
For template editors we have [[mw:Recommendations_for_mobile_friendly_articles_on_Wikimedia_wikis#Making_page_issues_(ambox_templates)_mobile_friendly|some recommendations on how to make templates that are mobile-friendly]] and also further [[mw:Reading/Web/Projects/Mobile_Page_Issues|documentation on our work so far]].
If you have questions about formatting templates for mobile, [[mw:Talk:Reading/Web/Projects/Mobile_Page_Issues|please leave a note on the project talk page]] or [https://phabricator.wikimedia.org/maniphest/task/edit/form/1/?projects=Readers-Web-Backlog file a task in Phabricator] and we will help you.
{{Int:Feedback-thanks-title}}
</div> [[m:User:CKoerner (WMF)|CKoerner (WMF)]] ([[m:User talk:CKoerner (WMF)|talk]]) 19:35, 13 Αεργί 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=18543269 -->
== Community Wishlist Survey vote ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
The Community Wishlist Survey. {{Int:Please-translate}}.
Hey everyone,
The Community Wishlist Survey is the process when the Wikimedia communities decide what the Wikimedia Foundation [[m:Community Tech|Community Tech]] should work on over the next year.
The Community Tech team is focused on tools for experienced Wikimedia editors. The communities have now posted a long list of technical proposals. You can vote on the proposals from now until 30 November. You can read more on the [[m:Special:MyLanguage/Community Wishlist Survey 2019|wishlist survey page]].
<span dir=ltr>/[[m:User:Johan (WMF)|User:Johan (WMF)]]</span></div></div> 18:13, 22 Αεργί 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=18543269 -->
== Advanced Search ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[m:WMDE_Technical_Wishes/AdvancedSearch|Advanced Search]] will become a default feature on your wiki on November 28. This new interface allows you to perform specialized searches on the [[Special:Search|search page]], even if you don’t know any [[mw:Special:MyLanguage/Help:CirrusSearch|search syntax]]. Advanced Search originates from the [[m:WMDE_Technical_Wishes|German Community’s Technical Wishes project]]. It's already a default feature on German, Arabic, Farsi and Hungarian Wikipedia. Besides, more than 40.000 users across all wikis have tested the beta version. Feedback is welcome on the [[mw:Help talk:Extension:AdvancedSearch|central feedback page]].</div> [[m:User:Johanna Strodt (WMDE)|Johanna Strodt (WMDE)]] ([[m:User talk:Johanna Strodt (WMDE)|talk]]) 11:03, 26 Αεργί 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johanna Strodt (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_2&oldid=18363910 -->
== New Wikimedia password policy and requirements ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
{{int:please-translate}}
The Wikimedia Foundation security team is implementing a new [[m:Password policy|password policy and requirements]]. [[mw:Wikimedia_Security_Team/Password_strengthening_2019|You can learn more about the project on MediaWiki.org]].
These new requirements will apply to new accounts and privileged accounts. New accounts will be required to create a password with a minimum length of 8 characters. Privileged accounts will be prompted to update their password to one that is at least 10 characters in length.
These changes are planned to be in effect on December 13th. If you think your work or tools will be affected by this change, please let us know on [[mw:Talk:Wikimedia_Security_Team/Password_strengthening_2019|the talk page]].
{{Int:Feedback-thanks-title}}
</div> [[m:User:CKoerner (WMF)|CKoerner (WMF)]] ([[m:User talk:CKoerner (WMF)|talk]]) 20:03, 6 Χριστουγενναρί 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=18639017 -->
== Invitation from Wiki Loves Love 2019 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:WLL Subtitled Logo (transparent).svg|right|frameless]]
Love is an important subject for humanity and it is expressed in different cultures and regions in different ways across the world through different gestures, ceremonies, festivals and to document expression of this rich and beautiful emotion, we need your help so we can share and spread the depth of cultures that each region has, the best of how people of that region, celebrate love.
[[:c:Commons:Wiki Loves Love|Wiki Loves Love (WLL)]] is an international photography competition of Wikimedia Commons with the subject love testimonials happening in the month of February.
The primary goal of the competition is to document love testimonials through human cultural diversity such as monuments, ceremonies, snapshot of tender gesture, and miscellaneous objects used as symbol of love; to illustrate articles in the worldwide free encyclopedia Wikipedia, and other Wikimedia Foundation (WMF) projects.
The theme of 2019 iteration is '''''Celebrations, Festivals, Ceremonies and rituals of love.'''''
Sign up your affiliate or individually at [[:c:Commons:Wiki Loves Love 2019/Participants|Participants]] page.
To know more about the contest, check out our [[:c:Commons:Wiki Loves Love 2019|Commons Page]] and [[:c:Commons:Wiki Loves Love 2018/FAQ|FAQs]]
There are several prizes to grab. Hope to see you spreading love this February with Wiki Loves Love!
Kind regards,
[[:c:Commons:Wiki Loves Love 2018/International Team|Wiki Loves Love Team]]
Imagine... the sum of all love!
</div>
--[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 10:13, 27 Χριστουγενναρί 2018 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=18639017 -->
== FileExporter beta feature ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[File:Logo for the beta feature FileExporter.svg|thumb|Coming soon: the beta feature [[m:WMDE_Technical_Wishes/Move_files_to_Commons|FileExporter]]]]
A new beta feature will soon be released on all wikis: The [[m:WMDE_Technical_Wishes/Move_files_to_Commons|FileExporter]]. It allows exports of files from a local wiki to Wikimedia Commons, including their file history and page history. Which files can be exported is defined by each wiki's community: '''Please check your wiki's [[m:WMDE_Technical_Wishes/Move_files_to_Commons/Configuration file documentation|configuration file]]''' if you want to use this feature.
The FileExporter has already been a beta feature on [https://www.mediawiki.org mediawiki.org], [https://meta.wikimedia.org meta.wikimedia], deWP, faWP, arWP, koWP and on [https://wikisource.org wikisource.org]. After some functionality was added, it's now becoming a beta feature on all wikis. Deployment is planned for January 16. More information can be found [[m:WMDE_Technical_Wishes/Move_files_to_Commons|on the project page]].
As always, feedback is highly appreciated. If you want to test the FileExporter, please activate it in your [[Special:Preferences#mw-prefsection-betafeatures|user preferences]]. The best place for feedback is the [[mw:Help_talk:Extension:FileImporter|central talk page]]. Thank you from Wikimedia Deutschland's [[m:WMDE Technical Wishes|Technical Wishes project]].
</div> [[User:Johanna Strodt (WMDE)|Johanna Strodt (WMDE)]] 09:41, 14 Καλανταρί 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johanna Strodt (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=18782700 -->
== No editing for 30 minutes on 17 January ==
<div lang="en" dir="ltr" class="mw-content-ltr">You will '''not be able to edit''' the wikis for up to 30 minutes on '''[https://www.timeanddate.com/worldclock/fixedtime.html?iso=20190117T07 17 January 07:00 UTC]'''. This is because of a database problem that has to be fixed immediately. You can still read the wikis. Some wikis are not affected. They don't get this message. You can see which wikis are '''not''' affected [[:m:User:Johan (WMF)/201901ReadOnlyPage|on this page]]. Most wikis are affected. The time you can not edit might be shorter than 30 minutes. /[[User:Johan (WMF)|Johan (WMF)]]</div>
18:52, 16 Καλανταρί 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/201901ReadOnly/Targets6&oldid=18789238 -->
==Public Domain 2019 Russia==
Уважаемые коллеги, пожалуйста выскажите своё мнение по поводу ''[[m:CentralNotice/Request/Public Domain 2019 Russia|баннерной кампании CentralNotice]]'' для объявления о российском викимарафоне [[wmru:Открытая библиотека/Конкурсы/Общественное достояние — 2019|Общественное достояние 2019]] (18 февраля — 31 марта, все IP из России, Википедии/Викитеки/Викисклад, 1 показ в две недели). [[Χρήστες:JukoFF|JukoFF]] ([[Καλάτσεμαν χρήστε:JukoFF|συζήτηση]]) 15:11, 30 Καλανταρί 2019 (UTC)
== Talk to us about talking ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[File:OOjs_UI_icon_speechBubbles-rtl.svg|alt="icon depicting two speech Bubbles"|frameless|right|120px]]
The Wikimedia Foundation is planning a [[mw:Talk pages consultation 2019|global consultation about communication]]. The goal is to bring Wikimedians and wiki-minded people together to improve tools for communication.
We want all contributors to be able to talk to each other on the wikis, whatever their experience, their skills or their devices.
We are looking for input from as many different parts of the Wikimedia community as possible. It will come from multiple projects, in multiple languages, and with multiple perspectives.
We are currently planning the consultation. We need your help.
'''We need volunteers to help talk to their communities or user groups.'''
You can help by hosting a discussion at your wiki. Here's what to do:
# First, [[mw:Talk pages consultation 2019/Participant group sign-up|sign up your group here.]]
# Next, create a page (or a section on a Village pump, or an e-mail thread – whatever is natural for your group) to collect information from other people in your group. This is not a vote or decision-making discussion: we are just collecting feedback.
# Then ask people what they think about communication processes. We want to hear stories and other information about how people communicate with each other on and off wiki. Please consider asking these five questions:
## When you want to discuss a topic with your community, what tools work for you, and what problems block you?
## What about talk pages works for newcomers, and what blocks them?
## What do others struggle with in your community about talk pages?
## What do you wish you could do on talk pages, but can't due to the technical limitations?
## What are the important aspects of a "wiki discussion"?
# Finally, please go to [[mw:Talk:Talk pages consultation 2019|Talk pages consultation 2019 on Mediawiki.org]] and report what you learned from your group. Please include links if the discussion is available to the public.
'''You can also help build the list of the many different ways people talk to each other.'''
Not all groups active on wikis or around wikis use the same way to discuss things: it can happen on wiki, on social networks, through external tools... Tell us [[mw:Talk pages consultation 2019/Tools in use|how your group communicates]].
You can read more about [[mw:Talk pages consultation 2019|the overall process]] on mediawiki.org. If you have questions or ideas, you can [[mw:Talk:Talk pages consultation 2019|leave feedback about the consultation process]] in the language you prefer.
Thank you! We're looking forward to talking with you.
</div> [[user:Trizek (WMF)|Trizek (WMF)]] 15:01, 21 Κούντουρονος 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=18639017 -->
== New Wikipedia Library Accounts Available Now (March 2019) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|upright|The TWL OWL says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for free, full-access, accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials on the [https://wikipedialibrary.wmflabs.org/ Library Card platform]:
* '''[https://wikipedialibrary.wmflabs.org/partners/72/ Kinige]''' – Primarily Indian-language ebooks - 10 books per month
* '''[https://wikipedialibrary.wmflabs.org/partners/55/ Gale]''' – Times Digital Archive collection added (covering 1785-2013)
* '''[https://wikipedialibrary.wmflabs.org/partners/54/ JSTOR]''' – New applications now being taken again
Many other partnerships with accounts available are listed on [https://wikipedialibrary.wmflabs.org/partners/ our partners page], including [https://wikipedialibrary.wmflabs.org/partners/47/ Baylor University Press], [https://wikipedialibrary.wmflabs.org/partners/10/ Taylor & Francis], [https://wikipedialibrary.wmflabs.org/partners/46/ Cairn], [https://wikipedialibrary.wmflabs.org/partners/32/ Annual Reviews] and [https://wikipedialibrary.wmflabs.org/partners/61/ Bloomsbury]. You can request new partnerships on our [https://wikipedialibrary.wmflabs.org/suggest/ Suggestions page].
Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 17:40, 13 Μαρτ 2019 (UTC)
:''You can host and coordinate signups for a Wikipedia Library branch in your own language. Please contact [[m:User:Ocaasi_(WMF)|Ocaasi (WMF)]].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Samwalton9@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=18873404 -->
== Read-only mode for up to 30 minutes on 11 April ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
<div lang="en" dir="ltr" class="mw-content-ltr">You will '''not be able to edit''' most Wikimedia wikis for up to 30 minutes on '''[https://www.timeanddate.com/worldclock/fixedtime.html?iso=20190411T05 11 April 05:00 UTC]'''. This is because of a hardware problem. You can still read the wikis. You [[phab:T220080|can see which wikis are affected]]. The time you can not edit might be shorter than 30 minutes. /[[User:Johan (WMF)|Johan (WMF)]]</div></div></div> 10:56, 8 Απρίλ 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=18979889 -->
== Wikimedia Foundation Medium-Term Plan feedback request ==
{{int:please-translate}}
<div lang="en" dir="ltr" class="mw-content-ltr">The Wikimedia Foundation has published a [[m:Special:MyLanguage/Wikimedia_Foundation_Medium-term_plan_2019|Medium-Term Plan proposal]] covering the next 3–5 years. We want your feedback! Please leave all comments and questions, in any language, on [[m:Talk:Wikimedia_Foundation_Medium-term_plan_2019|the talk page]], by April 20. {{Int:Feedback-thanks-title}} [[m:User:Quiddity (WMF)|Quiddity (WMF)]] ([[m:User talk:Quiddity (WMF)|talk]]) 17:35, 12 Απρίλ 2019 (UTC)</div>
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=18998727 -->
== Wikidata Bridge: edit Wikidata’s data from Wikipedia infoboxes ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''Sorry for writing this message in English - feel free to help us translating it :)''
Hello all,
Many language versions of Wikipedia use the content of [[Wikidata]], the centralized knowledge base, to fill out the content of infoboxes. The data is stored in Wikidata and displayed, partially or completely, in the Wikipedia’s language, on the articles.
This feature is used by many template editors, but brought several issues that were raised by communities in various places: not being able to edit the data directly from Wikipedia was one of them.
This is the reason why the '''[[mw:Wikidata Bridge|Wikidata Bridge]]''' project started, with the goal of offering a way to Wikipedia editors to edit Wikidata’s data more easily. This will be achieved by an interface, connected to the infobox, that users can access directly from their local wiki.
The project is now at an early stage of development. A lot of [[mw:Wikidata_Bridge/Research|user research]] has been done, and will continue to be done through the different phases of the project. The next steps of [[mw:Wikidata_Bridge/Development|development]] will be achieved by the development team working at Wikimedia Deutschland, starting now until the end of 2019.
In order to make sure that we’re building a tool that is answering editors’ needs, we’re using agile methods in our development process. We don’t start with a fixed idea of the tool we want to deliver: we will build it together with the editors, based on feedback loops that we will regularly organize. The first version will not necessarily have all of the features you want, but it will keep evolving.
Here’s the planned timeline:
* From June to August, we will build the setup and technical groundwork.
* From September to November 2019, we will develop the first version of the feature and publish a test system so you can try it and give feedback.
* Later on, we will test the feature on a few projects, in collaboration with the communities.
** We will first focus on early adopters communities who already implemented a shortcut from their infoboxes to edit Wikidata (for example Russian, Catalan, Basque Wikipedias)
** but we also welcome also communities who [[mw:Wikidata_Bridge/Get_involved|volunteer to be part of the first test round]].
** Then we will reach some of the big Wikipedias (French, German, English) in order to see if the project scales and to address their potentially different needs.
** Even later, we can consider enabling the feature on all the other projects.
In any case, no deployment or big change will be enforced on the projects without talking to the communities first, and helping the template builders to prepare for the changes they will have to do on the infoboxes’ code.
If you want to get involved, there are several ways to help:
* Read and help translating [[mw:Wikidata_Bridge|the documentation pages]]
* Follow the [[mw:Wikidata_Bridge/Updates|updates]] and participate in [[mw:Topic:V1x2lxtu8rgi954a|the first feedback loop]]
* Talk about it with your local community
More ideas will be added [[mw:Wikidata_Bridge/Get_involved|on this page]] along the way
If you have any questions for the development team, feel free to ask them [[mw:Talk:Wikidata_Bridge|on the main talk page]]. You can also ask under this message, but if you expect an answer from me, please make sure to ping me.
Thanks for your attention, [[:d:User:Lea Lacroix (WMDE)|Lea Lacroix (WMDE)]] 13:03, 24 Κερασινού 2019 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Lea Lacroix (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Lea_Lacroix_(WMDE)/List_Wikipedias&oldid=19168539 -->
== Editing News #1—July 2019 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''[[m:VisualEditor/Newsletter/2019/July|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]''
<div style="float:right;width:270px;margin-left:1em;border-style:solid;border-width:1px;padding:1em;">
[[File:VisualEditor-logo.svg|200px|center]]
<big>'''Did you know?'''</big>
<div class="thumbcaption" style="font-size: 90%;">
Did you know that you can use the visual editor on a mobile device?
Every article has a pencil icon at the top. Tap on the pencil icon [[File:OOjs UI icon edit-ltr.svg|frameless|16x16px]] to start editing.
'''<big>Edit Cards</big>'''
[[File:EditCards-v.20.png|alt=Toolbar with menu opened|center|frameless|250px]]
This is what the new '''Edit Cards for editing links''' in the mobile visual editor look like. You can try the prototype here: '''[[mw:Topic:V394zwrigth8ii7c|📲 Try Edit Cards]].'''
</div></div>
Welcome back to the [[mw:Editing|Editing]] newsletter.
Since [[m:VisualEditor/Newsletter/2018/October|the last newsletter]], the team has released two new features for the [[mw:VisualEditor on mobile|mobile visual editor]] and has started developing three more. All of this work is part of the team's goal to [[m:Wikimedia Foundation Annual Plan/2018-2019/Audiences#Outcome 3: Mobile Contribution|make editing on mobile web simpler]].
Before talking about the team's recent releases, we have a question for you:
<strong>Are you willing to try a new way to add and change links?</strong>
If you are interested, we would value your input! You can try this new link tool in the mobile visual editor on a separate wiki.
<em>Follow these instructions and share your experience:</em>
<strong>[[mw:Topic:V394zwrigth8ii7c|📲 Try Edit Cards]].</strong>
=== Recent releases ===
The mobile visual editor is a simpler editing tool, for smartphones and tablets using the [[mw:Reading/Web/Mobile#About|mobile site]]. The Editing team recently launched two new features to improve the mobile visual editor:
# [[mw:VisualEditor on mobile/Section editing|Section editing]]
#* The purpose is to help contributors focus on their edits.
#* The team studied this with an A/B test. [[mw:VisualEditor on mobile/Section editing#16 June 2019|This test showed]] that contributors who could use section editing were '''1% more likely to publish''' the edits they started than people with only full-page editing.
# [[mw:VisualEditor on mobile#March 1, 2019|Loading overlay]]
#* The purpose is to smooth the transition between reading and editing.
Section editing and the new loading overlay are '''now available to everyone''' using the mobile visual editor.
=== New and active projects ===
This is a list of our most active projects. [[mw:Help:Watching pages|Watch]] these pages to learn about project updates and to share your input on new designs, prototypes and research findings.
*[[mw:VisualEditor on mobile/Edit cards|Edit cards]]: This is a clearer way to add and edit links, citations, images, templates, etc. in articles. You can try this feature now. <em>Go here to see how:</em> [[mw:Topic:V394zwrigth8ii7c|📲 <em>Try Edit Cards</em>]].
*[[mw:VisualEditor on mobile/Toolbar refresh|Mobile toolbar refresh]]: This project will learn if contributors are more successful when the editing tools are easier to recognize.
*[[mw:VisualEditor on mobile/VE mobile default|Mobile visual editor availability]]: This A/B test asks: ''Are newer contributors more successful if they use the mobile visual editor?'' We are collaborating with [[mw:VisualEditor on mobile/VE mobile default#26 June 2019 %E2%80%93 Participating wikis and test start date|20 Wikipedias]] to answer this question.
*[[mw:VisualEditor on mobile/Usability improvements|Usability improvements]]: This project will make the mobile visual editor easier to use. The goal is to let contributors stay focused on editing and to feel more confident in the editing tools.
=== Looking ahead ===
* '''Wikimania:''' Several members of the Editing Team will be attending [[wmania:|Wikimania]] in August 2019. They will lead a session about mobile editing in the [[wmania:2019:Community Growth/Visual editing on mobile: An accessible editor for all|Community Growth space]]. Talk to the team about how editing can be improved.
* '''Talk Pages:''' In the coming months, the Editing Team will begin [[mw:Talk pages consultation 2019|improving talk pages]] and communication on the wikis.
=== Learning more ===
The [[mw:VisualEditor on mobile|VisualEditor on mobile]] is a good place to learn more about the projects we are working on. The team wants to talk with you about anything related to editing. If you have something to say or ask, please leave a message at [[mw:Talk:VisualEditor on mobile|Talk:VisualEditor on mobile]].
[[user:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:user_talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:user_talk:Whatamidoing (WMF)|talk]])
</div> 18:32, 23 Χορτοθερί 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=19175117 -->
== Γειά! ==
Γειά σου! Θέλω να επιταχύνω και να βοηθήσω ως διαχειριστής εδώ. --[[Χρήστες:Giooo95|Giooo95]] ([[Καλάτσεμαν χρήστε:Giooo95|συζήτηση]]) 22:49, 30 Χορτοθερί 2019 (UTC)
:You have 4 edits to this project and don't give a reason to be an administrator other than that you want to volunteer. I oppose this request. [[Χρήστες:Vermont|Vermont]] ([[Καλάτσεμαν χρήστε:Vermont|συζήτηση]]) 17:19, 6 Aλωναρί 2019 (UTC)
== Update on the consultation about office actions ==
Hello all,
Last month, the Wikimedia Foundation's Trust & Safety team [[:en:Wikipedia:Village_pump_(policy)/Archive_152#Announcement_of_forthcoming_temporary_and_partial_ban_tool_consultation|announced]] a future consultation about partial and/or temporary [[m:Special:MyLanguage/office actions|office actions]]. We want to let you know that the '''draft version''' of this consultation has now been [[:m:Office_actions/Community_consultation_on_partial_and_temporary_office_actions/draft|posted on Meta]].
This is a '''draft'''. It is not intended to be the consultation itself, which will be posted on Meta likely in early September. Please do not treat this draft as a consultation. Instead, we ask your assistance in forming the final language for the consultation.
For that end, we would like your input over the next couple of weeks about what questions the consultation should ask about partial and temporary Foundation office action bans and how it should be formatted. '''[[:m:Talk:Office_actions/Community_consultation_on_partial_and_temporary_office_actions/draft|Please post it on the draft talk page]]'''. Our goal is to provide space for the community to discuss all the aspects of these office actions that need to be discussed, and we want to ensure with your feedback that the consultation is presented in the best way to encourage frank and constructive conversation.
Please visit [[:m:Office_actions/Community_consultation_on_partial_and_temporary_office_actions/draft|the consultation draft on Meta-wiki]] and leave your comments on the draft’s talk page about what the consultation should look like and what questions it should ask.
Thank you for your input! -- The [[m:Special:MyLanguage/Trust and Safety|Trust & Safety team]] 08:03, 16 Aλωναρί 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=19175143 -->
== New tools and IP masking ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
<div lang="en" dir="ltr" class="mw-content-ltr">
Hey everyone,
The Wikimedia Foundation wants to work on two things that affect how we patrol changes and handle vandalism and harassment. We want to make the tools that are used to handle bad edits better. We also want to get better privacy for unregistered users so their IP addresses are no longer shown to everyone in the world. We would not hide IP addresses until we have better tools for patrolling.
We have an idea of what tools ''could'' be working better and how a more limited access to IP addresses would change things, but we need to hear from more wikis. You can read more about the project [[m:IP Editing: Privacy Enhancement and Abuse Mitigation|on Meta]] and [[m:Talk:IP Editing: Privacy Enhancement and Abuse Mitigation|post comments and feedback]]. Now is when we need to hear from you to be able to give you better tools to handle vandalism, spam and harassment.
You can post in your language if you can't write in English.
[[User:Johan (WMF)|Johan (WMF)]]</div></div></div> 14:18, 21 Aλωναρί 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/Tools_and_IP_message/Distribution&oldid=19315232 -->
== Κλήσημο της Ποντιακής Βικιπαίδιας ==
Γειά σας,
για διάφορους λόγους πιστεύω ότι αυτή η έκδοση της Βικιπαίδιας πρέπει να κλήσει. Δείτε την αντοίστηχη σελιδα στο Μετα (https://meta.wikimedia.org/wiki/Proposals_for_closing_projects/Closure_of_Pontic_Wikipedia). Ειστε ευπρόσδεκτοι να πει΄τε την γνώμη σας εκεί. [[Χρήστες:Enivak|Enivak]] ([[Καλάτσεμαν χρήστε:Enivak|συζήτηση]]) 10:47, 26 Aλωναρί 2019 (UTC)
:Sorry for writing in English. This proposal was rejected, and this project will remain open. [[Χρήστες:StevenJ81|StevenJ81]] ([[Καλάτσεμαν χρήστε:StevenJ81|συζήτηση]]) 16:14, 13 Σταυρί 2019 (UTC)
== The consultation on partial and temporary Foundation bans just started ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<div class="plainlinks">
Hello,
In a [[:en:Wikipedia:Community_response_to_the_Wikimedia_Foundation%27s_ban_of_Fram/Official_statements#Board_statement|recent statement]], the Wikimedia Foundation Board of Trustees [[:en:Wikipedia:Community_response_to_the_Wikimedia_Foundation%27s_ban_of_Fram/Official_statements#Board_statement|requested that staff hold a consultation]] to "re-evaluat[e] or add community input to the two new office action policy tools (temporary and partial Foundation bans)".
Accordingly, the Foundation's Trust & Safety team invites all Wikimedians [[:m:Office actions/Community consultation on partial and temporary office actions/09 2019|to join this consultation and give their feedback]] from 30 September to 30 October.
How can you help?
* Suggest how partial and temporary Foundation bans should be used, if they should (eg: On all projects, or only on a subset);
* Give ideas about how partial and temporary Foundation bans should ideally implemented, if they should be; and/or
* Propose changes to the existing Office Actions policy on partial and temporary bans.
We offer our thanks in advance for your contributions, and we hope to get as much input as possible from community members during this consultation!
</div>
</div>-- [[user:Kbrown (WMF)|Kbrown (WMF)]] 17:14, 30 Σταυρί 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=19302497 -->
== Feedback wanted on Desktop Improvements project ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
{{Int:Please-translate}}
{{int:Hello}}. The Readers Web team at the WMF will work on some [[mw:Special:MyLanguage/Reading/Web/Desktop Improvements|improvements to the desktop interface]] over the next couple of years. The goal is to increase usability without removing any functionality. We have been inspired by changes made by volunteers, but that currently only exist as local gadgets and user scripts, prototypes, and volunteer-led skins. We would like to begin the process of bringing some of these changes into the default experience on all Wikimedia projects.
We are currently in the research stage of this project and are looking for ideas for improvements, as well as feedback on our current ideas and mockups. So far, we have performed interviews with community members at Wikimania. We have gathered lists of previous volunteer and WMF work in this area. We are examining possible technical approaches for such changes.
We would like individual feedback on the following:
* Identifying focus areas for the project we have not yet discovered
* Expanding the list of existing gadgets and user scripts that are related to providing a better desktop experience. If you can think of some of these from your wiki, please let us know
* Feedback on the ideas and mockups we have collected so far
We would also like to gather a list of wikis that would be interested in being test wikis for this project - these wikis would be the first to receive the updates once we’re ready to start building.
When giving feedback, please consider the following goals of the project:
* Make it easier for readers to focus on the content
* Provide easier access to everyday actions (e.g. search, language switching, editing)
* Put things in logical and useful places
* Increase consistency in the interface with other platforms - mobile web and the apps
* Eliminate clutter
* Plan for future growth
As well as the following constraints:
* Not touching the content - no work will be done in terms of styling templates or to the structure of page contents themselves
* Not removing any functionality - things might move around, but all navigational items and other functionality currently available by default will remain
* No drastic changes to the layout - we're taking an evolutionary approach to the changes and want the site to continue feeling familiar to readers and editors
Please give all feedback (in any language) at [[mw:Talk:Reading/Web/Desktop Improvements|mw:Talk:Reading/Web/Desktop Improvements]]
After this round of feedback, we plan on building a prototype of suggested changes based on the feedback we receive. You’ll hear from us again asking for feedback on this prototype.
{{Int:Feedback-thanks-title}} [[mw:User:Quiddity (WMF)|Quiddity (WMF)]] ([[mw:User talk:Quiddity (WMF)|talk]])
</div> 07:18, 16 Τρυγομηνά 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Quiddity_(WMF)/Global_message_delivery_split_4&oldid=19462890 -->
== Beta feature "Reference Previews" ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
A new beta feature will soon be deployed to your wiki: [[m:WMDE_Technical_Wishes/ReferencePreviews|Reference Previews]]. As you might guess from the name, this feature gives you a preview of references in the article text. That means, you can look up a reference without jumping down to the bottom of the page.
Reference Previews have already been a beta feature on German and Arabic Wikipedia since April. Now they will become available on more wikis. Deployment is planned for October 24. More information can be found [[m:WMDE_Technical_Wishes/ReferencePreviews|on the project page]].
As always, feedback is highly appreciated. If you want to test Reference Previews, please activate the beta feature in your [[Special:Preferences#mw-prefsection-betafeatures|user preferences]] and let us know what you think. The best place for feedback is the [[mw:Help talk:Reference Previews|central talk page]]. We hope the feature will serve you well in your work. Thank you from Wikimedia Deutschland's [[m:WMDE Technical Wishes|Technical Wishes project]].
</div> -- [[User:Johanna Strodt (WMDE)|Johanna Strodt (WMDE)]] 09:47, 23 Τρυγομηνά 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johanna Strodt (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=19478814 -->
== Editing News #2 – Mobile editing and talk pages ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<em>[[m:VisualEditor/Newsletter/2019/October|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</em>
Inside this newsletter, the [[mw:Editing|Editing team]] talks about their work on the [[mw:Mobile visual editor|mobile visual editor]], on [[mw:Talk pages project|the new talk pages project]], and at [[wikimania:|Wikimania 2019]].
=== Help ===
<strong>What talk page interactions do you remember?</strong> Is it a story about how someone helped you to learn something new? Is it a story about how someone helped you get involved in a group? Something else? Whatever your story is, we want to hear it!
Please tell us a story about how you used a talk page. <mark>Please share a link to a memorable discussion, or describe it on the <strong>[[mw:Topic:V8d91yh8gcg404dj|talk page for this project]]</strong>.</mark> The team wants your examples. These examples will help everyone develop a shared understanding of what this project should support and encourage.
=== Talk pages project ===
The [[mw:Talk pages consultation 2019|Talk Pages Consultation]] was a global consultation to define better tools for wiki communication. From February through June 2019, more than 500 volunteers on 20 wikis, across 15 languages and multiple projects, came together with members of the Foundation to create a product direction for a set of discussion tools. The [[mw:Talk pages consultation 2019/Phase 2 report|Phase 2 Report]] of the Talk Page Consultation was published in August. It summarizes the product direction the team has started to work on, which you can read more about here: [[mw:Talk pages project|Talk Page Project project page]].
The team needs and wants your help at this early stage. They are starting to develop the first idea. Please add your name to the [[mw:Talk pages project#Getting involved|<strong>"Getting involved"</strong>]] section of the project page, if you would like to hear about opportunities to participate.
=== Mobile visual editor ===
The Editing team is trying to make it simpler to edit on mobile devices. The team is changing the [[mw:VisualEditor on mobile|visual editor on mobile]]. If you have something to say about editing on a mobile device, please leave a message at [[mw:Talk:VisualEditor on mobile|Talk:VisualEditor on mobile]].
==== [[mw:VisualEditor on mobile/Edit cards|Edit Cards]] ====
[[File:Edit Cards-before-v3-comparison.png|thumb|486x486px|What happens when you click on a link. The new Edit Card is bigger and has more options for editing links.]]
* On 3 September, the Editing team released [[:File:Edit Cards comparison v2 and v3.png|version 3 of Edit Cards]]. Anyone could use the new version in the mobile visual editor.
* There is an [[:File:Edit Cards comparison v2 and v3.png|updated design]] on the Edit Card for adding and modifying links. There is also a new, [[mw:VisualEditor on mobile/Edit cards#2 September 2019 - v3 deployment timing|combined workflow for editing a link's display text and target]].
* Feedback: You can try the new Edit Cards by opening the mobile visual editor on a smartphone. Please post your feedback on the [[:mw:Topic:V5rg0cqmikpubmjj|Edit cards talk page]].
==== [[mw:VisualEditor on mobile/Toolbar refresh|Toolbar]] ====
[[File:Toolbar-comparison-v1.png|thumb|486px|The editing toolbar is changing in the mobile visual editor. The old system had two different toolbars. Now, all the buttons are together. [[mw:Topic:V79x6zm8n6i4nb56|Tell the team what you think about the new toolbar]].]]
* In September, the Editing team updated the mobile visual editor's editing toolbar. Anyone could see these changes in the mobile visual editor.
** <em>One toolbar:</em> All of the editing tools are located in one toolbar. Previously, the toolbar changed when you clicked on different things.
**<em>New navigation:</em> The buttons for moving forward and backward in the edit flow have changed.
**<em>Seamless switching:</em> an [[phab:T228159|improved workflow]] for switching between the visual and wikitext modes.
* Feedback: You can try the refreshed toolbar by opening the mobile VisualEditor on a smartphone. Please post your feedback on the [[mw:Topic:V79x6zm8n6i4nb56|Toolbar feedback talk page]].
=== Wikimania ===
The Editing Team attended [[wmania:2019:Program|Wikimania 2019]] in Sweden. They led a session on [[wmania:2019:Community Growth/Visual editing on mobile: An accessible editor for all|the mobile visual editor]] and a session on [[wmania:2019:Community Growth/After Flow: A new direction for improving talk pages|the new talk pages project]]. They tested [[mw:VisualEditor on mobile/Toolbar refresh#v1 prototype|two]] new [[mw:VisualEditor on mobile/Edit cards#v3 prototype|features]] in the mobile visual editor with contributors. You can read more about what the team did and learned in [[mw:VisualEditor on mobile#Wikimania Stockholm: Overview|the team's report on Wikimania 2019]].
=== Looking ahead ===
* <strong>Talk Pages Project:</strong> The team is thinking about the first set of proposed changes. The team will be working with a few communities to pilot those changes. The best way to stay informed is by adding your username to the list on the project page: [[mw:Talk pages project#Getting involved|<strong>Getting involved</strong>]].
* <strong>Testing the mobile visual editor as the default:</strong> The Editing team plans to post results before the end of the calendar year. The best way to stay informed is by adding the project page to your watchlist: [[mw:VisualEditor on mobile/VE mobile default|<strong>VisualEditor as mobile default project page</strong>]].
* <strong>Measuring the impact of Edit Cards:</strong> This study asks whether the project helped editors add links and citations. The Editing team hopes to share results in November. The best way to stay informed is by adding the project page to your watchlist: [[mw:VisualEditor on mobile/Edit cards|<strong>Edit Cards project page</strong>]].
– [[User:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:User talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:User talk:Whatamidoing (WMF)|talk]])
</div> 11:12, 29 Τρυγομηνά 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/Target_lists/VE_201910/4&oldid=19500850 -->
== Wikipedia Asian Month 2019 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:WAM logo without text.svg|right|frameless]]
'''Wikipedia Asian Month''' is back! We wish you all the best of luck for the contest. The basic guidelines of the contest can be found on your local page of Wikipedia Asian Month. For more information, refer [[:m:Wikipedia Asian Month 2019|to our Meta page]] for organizers.
Looking forward to meet the next ambassadors for Wikipedia Asian Month 2019!
For additional support for organizing offline event, contact our international team [[:m:Talk:Wikipedia Asian Month 2019|on wiki]] or on email. We would appreciate the translation of this message in the local language by volunteer translators. Thank you!
[[:m:Wikipedia Asian Month 2019/International Team|Wikipedia Asian Month International Team.]]
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 16:57, 31 Τρυγομηνά 2019 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/WAM&oldid=19499019 -->
==Выпускники и наставники России 2019==
Уважаемые коллеги, пожалуйста выскажите своё мнение по поводу ''[[m:CentralNotice/Request/Alumni and Mentors of Russia 2019|баннерной кампании CentralNotice]]'' для объявления о российском конкурсе статей [[wmru:Конкурсы/Выпускники и наставники России 2019|Конкурсы/Выпускники и наставники России 2019]] (1 - 15 декабря, все IP из России, Википедии, 1 показ в две недели). Спасибо. [[Χρήστες:JukoFF|JukoFF]] ([[Καλάτσεμαν χρήστε:JukoFF|συζήτηση]]) 13:27, 10 Αεργί 2019 (UTC)
== Extension of Wikipedia Asian Month contest ==
In consideration of a week-long internet block in Iran, [[:m:Wikipedia Asian Month 2019|Wikipedia Asian Month 2019]] contest has been extended for a week past November. The articles submitted till 7th December 2019, 23:59 UTC will be accepted by the fountain tools of the participating wikis.
Please help us translate and spread this message in your local language.
[[:m:Wikipedia Asian Month 2019/International Team|Wikipedia Asian Month International Team]]
--[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 14:16, 27 Αεργί 2019 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/WAM&oldid=19592127 -->
== Wiki Loves Folklore ==
[[File:WLL Subtitled Logo (transparent).svg|100px|right|frameless]]
'''Hello Folks,'''
Wiki Loves Love is back again in 2020 iteration as '''[[:c:Commons:Wiki Loves Folklore|Wiki Loves Folklore]]''' from 1 February, 2020 - 29 February, 2020. Join us to celebrate the local cultural heritage of your region with the theme of folklore in the international photography contest at [https://commons.wikimedia.org/w/index.php?title=Special:UploadWizard&campaign=wllove Wikimedia Commons]. Images, videos and audios representing different forms of folk cultures and new forms of heritage that haven’t otherwise been documented so far are welcome submissions in Wiki Loves Folklore. Learn more about the contest at [[m:Wiki Loves Folklore|Meta-Wiki]] and [[:c:Commons:Wiki Loves Folklore|Commons]].
'''Kind regards,'''<br/>
[[:c:Commons:Wiki Loves Folklore/International Team|'''Wiki Loves Folklore International Team''']]<br/>
<small>— [[User:Tulsi Bhagat|<font color="black">'''Tulsi Bhagat'''</font>]] <small>([[Special:Contributions/Tulsi Bhagat|<font color="black">contribs</font>]] | [[User talk:Tulsi Bhagat|<font color="black">talk</font>]])</small><br/>
sent using [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 06:15, 18 Καλανταρί 2020 (UTC)</small>
<!-- Το μήνυμα στάλθηκε από τον User:Tulsi Bhagat@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/wll&oldid=19716850 -->
== Movement Learning and Leadership Development Project ==
Hello
The Wikimedia Foundation’s Community Development team is seeking to learn more about the way volunteers learn and develop into the many different roles that exist in the movement. Our goal is to build a movement informed framework that provides shared clarity and outlines accessible pathways on how to grow and develop skills within the movement. To this end, we are looking to speak with you, our community to learn about your journey as a Wikimedia volunteer. Whether you joined yesterday or have been here from the very start, we want to hear about the many ways volunteers join and contribute to our movement.
To learn more about the project, [[:m:special:MyLanguage/Movement Learning and Leadership Development Project|please visit the Meta page]]. If you are interested in participating in the project, please complete [https://docs.google.com/forms/d/e/1FAIpQLSegM07N1FK_s0VUECM61AlWOthwdn5zQOlVsa2vaKcx13BwZg/viewform?usp=sf_link this simple Google form]. Although we may not be able to speak to everyone who expresses interest, we encourage you to complete this short form if you are interested in participating!
-- [[user:LMiranda (WMF)|LMiranda (WMF)]] ([[user talk:LMiranda (WMF)|talk]]) 19:01, 22 Καλανταρί 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Trizek_(WMF)/sandbox/temp_MassMessage_list&oldid=19738989 -->
== Γλωσσικό συνέδριο Celtic Knot στην Ιρλανδία, 9-10 Ιουλίου 2020 ==
Χαιρετώ την κοινότητα και με συγχωρείτε που δεν γνωρίζω Ποντιακά (αν και "τεμέτερη", με πρώην σύζυγο Πόντιο και κόρη μισή Πόντια μισή Κεφαλονίτισσα :).
Γράφω εδώ για να σας κοινοποιήσω ένα πάρα πολύ ενδιαφέρον συνέδριο, στο οποίο γίνεται προσπάθεια να αναπτυχθούν στη Βικιπαίδεια οι γλώσσες που μιλούνται πλέον ελάχιστα στον κόσμο... πρόκειται για το Celtic Knot: το πρώτο συνέδριο έγινε στο Εδιμβούργο τον Ιούλιο του 2017, όπου είχα προσκληθεί να μιλήσω για το Κεφαλονίτικο ιδίωμα (δείτε [https://media.ed.ac.uk/media/The+Kefalonian+Dialect+in+Wiktionary+and+how+Wikitherapy+addresses+social+equality+in+open-source+language+projects+-+Mina+Theofilatou/1_bondd8n3 εδώ] την παρουσίαση). Ήταν μια εξαιρετική ευκαιρία να γνωριστώ με ανθρώπους από όλη την Ευρώπη και τον κόσμο με πάθος για τη μητρική τους γλώσσα... οι ιστορίες τους ήταν ενδιαφέρουσες, συγκινητικές και ενίοτε εξοργιστικές (όπως π.χ. ότι στη Σκωτία και Ουαλία δεκαετία του 70 απαγορευόταν στα παιδιά στο σχολείο να μιλούν τις μητρικές τους γλώσσες, και οι παραβάτες φορούσαν πινακίδα που έγραφε "I spoke Gaelic" για μια ολόκληρη μερα). Έδειξαν μεγάλο ενδιαφέρον για τις διαλέκτους και τα ιδιώματα της Ελλάδας, ήταν με λίγα λόγια μια υπέροχη εμπειρία απόκτησης γνώσεων, παρέα με παθιασμένους με τη γλώσσα και τον πολιτισμό τους ανθρώπους, σε μια υπέροχη πόλη όπως είναι το Εδιμβούργο :)
Φέτος το συνέδριο θα πραγματοποιηθεί στην Ιρλανδία. Πέρυσι που ήμουν στη Wikimania συζητούσα με το διοργανωτή του 1ου Celtic Knot ότι θα ήταν εξαιρετικό το ενδεχόμενο συμμετοχής εκπροσώπου(-ων) της Ποντιακής Βικιπαίδειας! Μόλις είδα λοιπόν την ανακοίνωση του συνεδρίου, σας κοινοποιώ [https://meta.wikimedia.org/wiki/Celtic_Knot_Conference_2020 εδώ] το σύνδεσμο και εύχομαι να τα κατάφερει κάποιος από εσάς να συμμετάσχει... και γιατί όχι, με παρουσίαση! Αν χρειαστείτε οτιδήποτε μπορείτε να μου αφήσετε μήνυμα στη σελίδα μου, ή να μου στείλετε μέιλ. Α, αξίζει να σημειώσω ότι πέρυσι για πρώτη φορά δόθηκαν κάποιες υποτροφίες που κάλυπταν μέρος των εξόδων του ταξιδιού. Δεν ξέρω αν θα γίνει το ίδιο φέτος, αξίζει πάντως να το δείτε. Με φιλικούς χαιρετισμούς από Κεφαλονιά, Μίνα Θ. --[[Χρήστες:Saintfevrier|Saintfevrier]] ([[Καλάτσεμαν χρήστε:Saintfevrier|συζήτηση]]) 22:03, 23 Κούντουρονος 2020 (UTC)
== Additional interface for edit conflicts on talk pages ==
''Sorry, for writing this text in English. If you could help to translate it, it would be appreciated.''
You might know the new interface for edit conflicts (currently a beta feature). Now, Wikimedia Germany is designing an additional interface to solve edit conflicts on talk pages. This interface is shown to you when you write on a discussion page and another person writes a discussion post in the same line and saves it before you do. With this additional editing conflict interface you can adjust the order of the comments and edit your comment. We are inviting everyone to have a look at [[m:WMDE Technical Wishes/Edit Conflicts#Edit conflicts on talk pages|the planned feature]]. Let us know what you think on our [[mw:Help talk:Two Column Edit Conflict View|central feedback page]]! -- For the Technical Wishes Team: [[m:User:Max Klemm (WMDE)|Max Klemm (WMDE)]] 14:15, 26 Κούντουρονος 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Max Klemm (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=19845780 -->
== WikiGap 2020 Russia ==
Уважаемые коллеги, пожалуйста выскажите своё мнение по поводу ''[[m:CentralNotice/Request/WikiGap 2020 Russia|баннерной кампании CentralNotice]]'' для объявления о российском викимарафоне [[wmru:Конкурсы/WikiGap 2020 Russia|WikiGap 2020]] (8 марта - 8 мая, все IP из России, только Википедии, 1 показ в неделю). Спасибо. [[Χρήστες:JukoFF|JukoFF]] ([[Καλάτσεμαν χρήστε:JukoFF|συζήτηση]]) 09:01, 27 Κούντουρονος 2020 (UTC)
== Editing news 2020 #1 – Discussion tools ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<em>[[m:VisualEditor/Newsletter/2020/April|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</em>
[[File:TalkPages-Reply-v1.0.png|thumb|300px|alt=Screenshot showing what the Reply tool looks like|This early version of the Reply tool automatically signs and indents comments.]]
The [[mw:Editing|Editing team]] has been working on [[mw:Talk pages project|the talk pages project]]. The goal of the talk pages project is to help contributors communicate on wiki more easily. This project is the result of the [[mw:Talk pages consultation 2019|Talk pages consultation 2019]].
[[File:TalkPages-Reply-v2.0.png|thumb|300px|alt=Reply tool improved with edit tool buttons|In a future update, the team plans to test a tool for easily linking to another user's name, a rich-text editing option, and other tools.]]
The team is building a [[mw:Talk pages project/replying|new tool for replying]] to comments now. This early version can sign and indent comments automatically. <strong>Please [[mw:Talk pages project/replying/prototype testing#Reply%20version%201.0|test the new Reply tool]].</strong>
*On 31 March 2020, the new {{Int:discussiontools-replylink}} tool was offered as a [[mw:Beta Feature|Beta Feature]] editors at four Wikipedias: [[w:ar:Special:Preferences#mw-prefsection-betafeatures|Arabic]], [[w:nl:Special:Preferences#mw-prefsection-betafeatures|Dutch]], [[w:fr:Special:Preferences#mw-prefsection-betafeatures|French]], and [[w:hu:Special:Preferences#mw-prefsection-betafeatures|Hungarian]]. If your community also wants early access to the new tool, contact [[User:Whatamidoing (WMF)]].
*The team is planning some upcoming changes. <strong>Please [[mw:Talk pages project/replying#Version%202.0|review the proposed design]] and share your thoughts on the talk page.</strong> The team will test features such as:
**an easy way to mention another editor ("pinging"),
**a rich-text visual editing option, and
**other features identified through user testing or recommended by editors.
To hear more about Editing Team updates, please add your name to the [[mw:Talk pages project#Get involved|<strong>"Get involved"</strong>]] section of the project page. You can also watch [[File:MediaWiki Vector skin blue star watchlist icon.svg|frameless|16px]] these pages: [[mw:Talk pages project|the main project page]], [[mw:Talk pages project/Updates|Updates]], [[mw:Talk pages project/replying|Replying]], and [[mw:Talk pages project/replying/prototype testing|User testing]].
– [[user:PPelberg (WMF)|PPelberg (WMF)]] ([[mw:User talk:PPelberg (WMF)|talk]]) & [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[mw:User talk:Whatamidoing (WMF)|talk]])
</div> 19:25, 8 Απρίλ 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Quiddity_(WMF)/sandbox2&oldid=19967064 -->
== Editing news 2020 #2 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<em>[[m:Special:MyLanguage/VisualEditor/Newsletter/2020/June|Read this in another language]] • [[m:Special:MyLanguage/VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</em>
[[File:TalkPages-Reply-v2.0.png|alt=Mockup of the new reply feature, showing new editing tools|thumb|400x400px|The new features include a toolbar. [[mw:Talk:Talk pages project/replying|What do you think should be in the toolbar?]]]]
This issue of the [[mw:Special:MyLanguage/Editing|Editing]] newsletter includes information the [[mw:Special:MyLanguage/Talk pages project|Talk pages project]], an effort to help contributors communicate on wiki more easily.
* [[mw:Special:MyLanguage/Talk pages project/replying|<strong>Reply tool</strong>]]: This is available as a Beta Feature at the four partner wikis (Arabic, Dutch, French, and Hungarian Wikipedias). The Beta Feature is called "{{int:discussiontools-preference-label}}". The Beta Feature will get [[mw:Special:MyLanguage/Talk pages project/replying#Version%202.0|new features]] soon. The new features include writing comments in a new visual editing mode and pinging other users by typing <code>@</code>. You can [[mw:Special:MyLanguage/Talk pages project/replying/prototype testing#Reply%20tool%20version%202.0|test the new features]] on the [[mw:Special:MyLanguage/Beta Cluster|Beta Cluster]] now. Some other wikis will have a chance to try the Beta Feature in the coming months.
* [[mw:Special:MyLanguage/New requirements for user signatures|<strong>New requirements for user signatures</strong>]]: Soon, users will not be able to save invalid custom signatures in [[Special:Preferences]]. This will reduce signature spoofing, prevent page corruption, and make new talk page tools more reliable. Most editors will not be affected.
* [[mw:Special:MyLanguage/Talk pages project/New discussion|<strong>New discussion tool</strong>]]: The Editing team is beginning work on a simpler process for starting new discussions. You can [[mw:Special:MyLanguage/Talk pages project/New discussion#Design|see the initial design on the project page]].
* [[m:Special:MyLanguage/Research:Usage of talk pages|<strong>Research on the use of talk pages</strong>]]: The Editing team worked with the [[mw:Special:MyLanguage/Wikimedia Research|Wikimedia research team]] to study how talk pages help editors improve articles. We learned that new editors who use talk pages make more edits to the main namespace than new editors who don't use talk pages.
– [[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[User talk:Whatamidoing (WMF)|talk]])
</div> 20:33, 17 Κερασινού 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Trizek_(WMF)/sandbox/temp_MassMessage_list&oldid=20184653 -->
== Annual contest Wikipedia Pages Wanting Photos ==
[[File:WPWP logo 1.png|150px|right|Wikipedia Pages Wanting Photos (WPWP)]]
This is to invite you to join the Wikipedia Pages Wanting Photos (WPWP) campaign to help improve Wikipedia articles with photos and win prizes. The campaign starts today 1st July 2020 and closes 31st August 2020.
The campaign primarily aims at using images from Wikimedia Commons on Wikipedia articles that are lacking images. Participants will choose among Wikipedia pages without photo images, then add a suitable file from among the many thousands of photos in the Wikimedia Commons, especially those uploaded from thematic contests (Wiki Loves Africa, Wiki Loves Earth, Wiki Loves Folklore, etc.) over the years.
Please visit the '''[[m:Wikipedia Pages Wanting Photos|campaign page]]''' to learn more about the WPWP Campaign.
With kind regards,
Thank you,
Deborah Schwartz Jacobs, Communities Liaison, On behalf of the Wikipedia Pages Wanting Photos Organizing Team - 08:24, 1 Χορτοθερί 2020 (UTC)
''feel free to translate this message to your local language when this helps your community''
<!-- Το μήνυμα στάλθηκε από τον User:Romaine@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Romaine/MassMessage&oldid=20232618 -->
== Feedback on movement names ==
{{int:Hello}}. Apologies if you are not reading this message in your native language. {{int:please-translate}} if necessary. {{Int:Feedback-thanks-title}}
There are a lot of conversations happening about the future of our movement names. We hope that you are part of these discussions and that your community is represented.
Since 16 June, the Foundation Brand Team has been running a [https://wikimedia.qualtrics.com/jfe/form/SV_9G2dN7P0T7gPqpD survey] in 7 languages about [[m:Special:MyLanguage/Communications/Wikimedia brands/2030 movement brand project/Naming convention proposals|3 naming options]]. There are also community members sharing concerns about renaming in a [[m:Special:MyLanguage/Community open letter on renaming|Community Open Letter]].
Our goal in this call for feedback is to hear from across the community, so we encourage you to participate in the survey, the open letter, or both. The survey will go through 7 July in all timezones. Input from the survey and discussions will be analyzed and published on Meta-Wiki.
Thanks for thinking about the future of the movement, --[[:m:Talk:Communications/Wikimedia brands/2030 movement brand project|The Brand Project team]], 19:42, 2 Χορτοθερί 2020 (UTC)
''Note: The survey is conducted via a third-party service, which may subject it to additional terms. For more information on privacy and data-handling, see the [[foundation:Special:MyLanguage/Naming Convention Proposals Movement Feedback Survey Privacy Statement|survey privacy statement]].''
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Elitre_(WMF)/All_wikis_June_2020&oldid=20238830 -->
== Editing news 2020 #3 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<em>[[m:VisualEditor/Newsletter/2020/July|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</em>
[[File:50M@2x.png|thumb|alt=A gold star with a blue ribbon, and the text 50m|More than <strong>50 million edits</strong> have been made using the visual editor on desktop.|400px]]
Seven years ago this month, the [[mw:Editing team|Editing team]] offered the visual editor to most Wikipedia editors. Since then, editors have achieved many milestones:
* More than <strong>50 million edits</strong> have been made using the visual editor on desktop.
* More than <strong>2 million new articles</strong> have been created in the visual editor. More than 600,000 of these new articles were created during 2019.
* The visual editor is <strong>increasingly popular</strong>. The proportion of all edits made using the visual editor has increased every year since its introduction.
* In 2019, <strong>35% of the edits by newcomers</strong> (logged-in editors with ≤99 edits) used the visual editor. This percentage has <strong>increased every year</strong>.
* Almost <strong>5 million edits on the mobile site</strong> have been made with the visual editor. Most of these edits have been made since the Editing team started improving the [[mw:Mobile visual editor|mobile visual editor]] in 2018.
* On 17 November 2019, the [https://discuss-space.wmflabs.org/t/first-edit-made-to-wikipedia-from-outer-space/2254 <strong>first edit from outer space</strong>] was made in the mobile visual editor. 🚀 👩🚀
* Editors have made more than <strong>7 million edits in the 2017 wikitext editor</strong>, including starting <strong>600,000 new articles</strong> in it. The [[mw:2017 wikitext editor|2017 wikitext editor]] is VisualEditor's built-in wikitext mode. You can [[Special:Preferences#mw-prefsection-betafeatures|enable it in your preferences]].
[[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[User talk:Whatamidoing (WMF)|talk]])
</div> 12:55, 9 Χορτοθερί 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=20232673 -->
== Announcing a new wiki project! Welcome, Abstract Wikipedia ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hi all,
It is my honor to introduce Abstract Wikipedia, a new project that has been unanimously approved by the Wikimedia Foundation Board of Trustees. Abstract Wikipedia proposes a new way to generate baseline encyclopedic content in a multilingual fashion, allowing more contributors and more readers to share more knowledge in more languages. It is an approach that aims to make cross-lingual cooperation easier on our projects, increase the sustainability of our movement through expanding access to participation, improve the user experience for readers of all languages, and innovate in free knowledge by connecting some of the strengths of our movement to create something new.
This is our first new project in over seven years. Abstract Wikipedia was submitted as a project proposal by Denny Vrandečić in May 2020 <ref>[[m:Special:MyLanguage/Abstract Wikipedia|Abstract Wikipedia]]</ref> after years of preparation and research, leading to a detailed plan and lively discussions in the Wikimedia communities. We know that the energy and the creativity of the community often runs up against language barriers, and information that is available in one language may not make it to other language Wikipedias. Abstract Wikipedia intends to look and feel like a Wikipedia, but build on the powerful, language-independent conceptual models of Wikidata, with the goal of letting volunteers create and maintain Wikipedia articles across our polyglot Wikimedia world.
The project will allow volunteers to assemble the fundamentals of an article using words and entities from Wikidata. Because Wikidata uses conceptual models that are meant to be universal across languages, it should be possible to use and extend these building blocks of knowledge to create models for articles that also have universal value. Using code, volunteers will be able to translate these abstract “articles” into their own languages. If successful, this could eventually allow everyone to read about any topic in Wikidata in their own language.
As you can imagine, this work will require a lot of software development, and a lot of cooperation among Wikimedians. In order to make this effort possible, Denny will join the Foundation as a staff member in July and lead this initiative. You may know Denny as the creator of Wikidata, a long-time community member, a former staff member at Wikimedia Deutschland, and a former Trustee at the Wikimedia Foundation <ref>[[m:User:Denny|User:Denny]]</ref>. We are very excited that Denny will bring his skills and expertise to work on this project alongside the Foundation’s product, technology, and community liaison teams.
It is important to acknowledge that this is an experimental project, and that every Wikipedia community has different needs. This project may offer some communities great advantages. Other communities may engage less. Every language Wikipedia community will be free to choose and moderate whether or how they would use content from this project.
We are excited that this new wiki-project has the possibility to advance knowledge equity through increased access to knowledge. It also invites us to consider and engage with critical questions about how and by whom knowledge is constructed. We look forward to working in cooperation with the communities to think through these important questions.
There is much to do as we begin designing a plan for Abstract Wikipedia in close collaboration with our communities. I encourage you to get involved by going to the project page and joining the new mailing list <ref>[[mail:abstract-wikipedia|Abstract Wikipedia mailing list]]</ref>. We recognize that Abstract Wikipedia is ambitious, but we also recognize its potential. We invite you all to join us on a new, unexplored path.
Yours,
Katherine Maher (Executive Director, Wikimedia Foundation)
<references/>
</div> <small>Sent by [[:m:User:Elitre (WMF)]] 20:10, 9 Χορτοθερί 2020 (UTC) - '''[[:m:Special:MyLanguage/Abstract Wikipedia/July 2020 announcement]]''' </small>
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Elitre_(WMF)/All_wikis_June_2020&oldid=20265921 -->
== The Universal Code of Conduct (UCoC): we want to hear from you. ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''{{int:Hello}}. Apologies that you may not be reading this message in your native language: translations of the following message may be available on [[:m:Special:MyLanguage/Universal Code of Conduct/Message to small and medium sized wikis|Meta]]. {{int:please-translate}}. {{Int:Feedback-thanks-title}}''<br>
At times, our contributor communities and projects have suffered from a lack of guidelines that can help us create an environment where free knowledge can be shared safely without fear.
There has been talk about the need for a global set of conduct rules in different communities over time.
Recently, the Wikimedia Foundation Board of Trustees announced a [[:m:Special:MyLanguage/Wikimedia_Foundation_Board_noticeboard/May_2020_-_Board_of_Trustees_on_Healthy_Community_Culture,_Inclusivity,_and_Safe_Spaces|Community Culture Statement]], asking for new standards to address harassment and promote inclusivity across projects.
The universal code of conduct will be a binding minimum set of standards across all Wikimedia projects, and will apply to all of us, staff and volunteers alike, all around the globe. It is of great importance that we all participate in expressing our opinions and thoughts about UCoC and its values. We should think about what we want it to cover or include and what it shouldn’t include, and how it may create difficulties or help our groups.
This is the time to talk about it. Before starting drafting the code of conduct, we would like to hear from you and to solicit the opinions and feedback of your colleagues.
In order for your voice to be heard, we encourage and invite you to read more about [[:m:Special:MyLanguage/Universal_Code_of_Conduct|the universal code of conduct (UCoC)]] and then write down your opinions or feedback [[:m:Talk:Universal_Code_of_Conduct|on the discussion page]].
To reduce language barriers during the process, you are welcome to translate [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Universal+Code+of+Conduct&language=en&action=page&filter= the universal code of conduct main page] from English into your respective local language. You and your community may choose to provide your opinions/feedback using your local languages.
Thanks in advance for your attention and contributions, [[:m:Talk:Trust_and_Safety|The Trust and Safety team at Wikimedia Foundation]] 16:42, 22 Χορτοθερί 2020 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Universal_Code_of_Conduct/Message_to_small_and_medium_sized_wikis/List&oldid=20303398 -->
== Technical Wishes: FileExporter and FileImporter become default features on all Wikis ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
The [[m:WMDE_Technical_Wishes/Move_files_to_Commons|FileExporter and FileImporter]] will become a default features on all wikis until August 7, 2020. They are planned to help you to move files from your local wiki to Wikimedia Commons easier while keeping all original file information (Description, Source, Date, Author, View History) intact. Additionally, the move is documented in the files view history.
How does it work?
Step 1: If you are an auto-confirmed user, you will see a link "Move file to Wikimedia Commons" on the local file page.
Step 2: When you click on this link, the FileImporter checks if the file can in fact be moved to Wikimedia Commons. These checks are performed based on the wiki's [[m:WMDE_Technical_Wishes/Move_files_to_Commons/Configuration_file_documentation|configuration file]] which is created and maintained by each local wiki community.
Step 3: If the file is compatible with Wikimedia Commons, you will be taken to an import page, at which you can update or add information regarding the file, such as the description. You can also add the 'Now Commons' template to the file on the local wiki by clicking the corresponding check box in the import form. Admins can delete the file from the local wiki by enabling the corresponding checkbox. By clicking on the 'Import' button at the end of the page, the file is imported to Wikimedia Commons.
If you want to know more about the [[m:WMDE_Technical_Wishes/Move_files_to_Commons|FileImporter extension]] or the [[m:WMDE_Technical_Wishes|Technical Wishes Project]], follow the links. --For the Technical Wishes Team: </div>[[User:Max Klemm (WMDE)|Max Klemm (WMDE)]] 09:14, 6 Aλωναρί 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Max Klemm (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=20343133 -->
==Alumni and Mentors of Russia 2020==
Уважаемые коллеги, пожалуйста выскажите своё мнение по поводу ''[[m:CentralNotice/Request/Alumni and Mentors of Russia 2020|баннерной кампании CentralNotice]]'' для объявления о российском конкурсе статей [[wmru:Конкурсы/Выпускники и наставники России 2020|Конкурсы/Выпускники и наставники России 2020]] (20 августа - 10 ноября 2020, все IP из России, Википедии, 1 показ в две недели). Спасибо. [[Χρήστες:JukoFF|JukoFF]] ([[Καλάτσεμαν χρήστε:JukoFF|συζήτηση]]) 17:24, 10 Aλωναρί 2020 (UTC)
== Important: maintenance operation on September 1st ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch 2020|Read this message in another language]] • [[:m:Special:MyLanguage/Tech/Server switch 2020|{{int:please-translate}}]]
The [[foundation:|Wikimedia Foundation]] will be testing its secondary data centre. This will make sure that Wikipedia and the other Wikimedia wikis can stay online even after a disaster. To make sure everything is working, the Wikimedia Technology department needs to do a planned test. This test will show if they can reliably switch from one data centre to the other. It requires many teams to prepare for the test and to be available to fix any unexpected problems.
They will switch all traffic to the secondary data centre on '''Tuesday, September 1st 2020'''.
Unfortunately, because of some limitations in [[mw:Manual:What is MediaWiki?|MediaWiki]], all editing must stop while the switch is made. We apologize for this disruption, and we are working to minimize it in the future.
'''You will be able to read, but not edit, all wikis for a short period of time.'''
*You will not be able to edit for up to an hour on Tuesday, September 1st. The test will start at [https://www.timeanddate.com/worldclock/fixedtime.html?iso=20200901T14 14:00 UTC] (15:00 BST, 16:00 CEST, 10:00 EDT, 19:30 IST, 07:00 PDT, 23:00 JST, and in New Zealand at 02:00 NZST on Wednesday September 2).
*If you try to edit or save during these times, you will see an error message. We hope that no edits will be lost during these minutes, but we can't guarantee it. If you see the error message, then please wait until everything is back to normal. Then you should be able to save your edit. But, we recommend that you make a copy of your changes first, just in case.
''Other effects'':
*Background jobs will be slower and some may be dropped. Red links might not be updated as quickly as normal. If you create an article that is already linked somewhere else, the link will stay red longer than usual. Some long-running scripts will have to be stopped.
*There will be code freezes for the week of September 1st, 2020. Non-essential code deployments will not happen.
This project may be postponed if necessary. You can [[wikitech:Switch Datacenter#Schedule for 2018 switch|read the schedule at wikitech.wikimedia.org]]. Any changes will be announced in the schedule. There will be more notifications about this. '''Please share this information with your community.'''
</div></div> <span dir=ltr>[[m:User:Trizek (WMF)|Trizek (WMF)]] ([[m:User talk:Trizek (WMF)|talk]])</span> 13:48, 26 Aλωναρί 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=20384955 -->
== New Wikipedia Library Collections Now Available (September 2020) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|upright|The TWL owl says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing new free, full-access, accounts to reliable sources as part of our [https://wikipedialibrary.wmflabs.org/partners/ research access program]. You can sign up for new accounts and research materials on the [https://wikipedialibrary.wmflabs.org/ Library Card platform]:
* '''[https://wikipedialibrary.wmflabs.org/partners/101/ Al Manhal]''' – Arabic journals and ebooks
* '''[https://wikipedialibrary.wmflabs.org/partners/102/ Ancestry.com]''' – Genealogical and historical records
* '''[https://wikipedialibrary.wmflabs.org/partners/100/ RILM]''' – Music encyclopedias
Many other partnerships are listed on [https://wikipedialibrary.wmflabs.org/partners/ our partners page], including [https://wikipedialibrary.wmflabs.org/partners/49/ Adam Matthew], [https://wikipedialibrary.wmflabs.org/partners/57/ EBSCO], [https://wikipedialibrary.wmflabs.org/partners/55/ Gale] and [https://wikipedialibrary.wmflabs.org/partners/54/ JSTOR].
A significant portion of our collection now no longer requires individual applications to access! Read more in our [https://diff.wikimedia.org/2020/06/24/simplifying-your-research-needs-the-wikipedia-library-launches-new-technical-improvements-and-partnerships/ recent blog post].
Do better research and help expand the use of high quality references across Wikipedia projects!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 09:49, 3 Σταυρί 2020 (UTC)
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Samwalton9@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=20418180 -->
== Invitation to participate in the conversation ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''{{int:Hello}}. Apologies for cross-posting, and that you may not be reading this message in your native language: translations of the following announcement may be available on '''[[:m:Special:MyLanguage/Universal Code of Conduct/Draft review/Invitation (long version)|Meta]]'''. {{int:please-translate}}. {{Int:Feedback-thanks-title}}''
We are excited to share '''[[:m:Special:MyLanguage/Universal Code of Conduct/Draft review|a draft of the Universal Code of Conduct]]''', which the Wikimedia Foundation Board of Trustees called for earlier this year, for your review and feedback. The discussion will be open until October 6, 2020.
The UCoC Drafting Committee wants to learn which parts of the draft would present challenges for you or your work. What is missing from this draft? What do you like, and what could be improved?
Please join the conversation and share this invitation with others who may be interested to join, too.
To reduce language barriers during the process, you are welcomed to translate this message and the [[:m:Special:MyLanguage/Universal Code of Conduct/Draft review|Universal Code of Conduct/Draft review]]. You and your community may choose to provide your opinions/feedback using your local languages.
To learn more about the UCoC project, see the [[:m:Special:MyLanguage/Universal Code of Conduct|Universal Code of Conduct]] page, and the [[:m:Special:MyLanguage/Universal Code of Conduct/FAQ|FAQ]], on Meta.
Thanks in advance for your attention and contributions, [[:m:Talk:Trust_and_Safety|The Trust and Safety team at Wikimedia Foundation]], 17:55, 10 Σταυρί 2020 (UTC) </div>
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Universal_Code_of_Conduct/Draft_review/Invitation_(long_version)/List&oldid=20440292 -->
== Wiki of functions naming contest ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
{{int:Please-translate}}
{{int:Hello}}. Please help pick a name for the new Wikimedia wiki project. This project will be a wiki where the community can work together on a library of [[m:Special:MyLanguage/Abstract_Wikipedia/Wiki_of_functions_naming_contest#function|functions]]. The community can create new functions, read about them, discuss them, and share them. Some of these functions will be used to help create language-independent Wikipedia articles that can be displayed in any language, as part of the Abstract Wikipedia project. But functions will also be usable in many other situations.
There will be two rounds of voting, each followed by legal review of candidates, with voting beginning on 29 September and 27 October. Our goal is to have a final project name selected on 8 December. If you would like to participate, then '''[[m:Special:MyLanguage/Abstract Wikipedia/Wiki of functions naming contest|please learn more and vote now]]''' at meta-wiki. {{Int:Feedback-thanks-title}} --[[m:User:Quiddity (WMF)|Quiddity (WMF)]]</div> 21:22, 29 Σταυρί 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Quiddity_(WMF)/Global_message_delivery_split_5&oldid=20492309 -->
== Call for feedback about Wikimedia Foundation Bylaws changes and Board candidate rubric ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:Hello}}. Apologies if you are not reading this message in your native language. {{Int:Please-translate}}.
Today the Wikimedia Foundation Board of Trustees starts two calls for feedback. One is about changes to the Bylaws mainly to increase the Board size from 10 to 16 members. The other one is about a trustee candidate rubric to introduce new, more effective ways to evaluate new Board candidates. The Board welcomes your comments through 26 October. For more details, [[m:Special:MyLanguage/Wikimedia Foundation Board noticeboard/October 2020 - Call for feedback about Bylaws changes and Board candidate rubric|check the full announcement]].
{{Int:Feedback-thanks-title}} [[m:User:Qgil-WMF|Qgil-WMF]] ([[m:User talk:Qgil-WMF|talk]]) 17:17, 7 Τρυγομηνά 2020 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Elitre_(WMF)/Board&oldid=20519859 -->
== Important: maintenance operation on October 27 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch 2020|Read this message in another language]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch+2020&language=&action=page&filter= {{int:please-translate}}]
The [[foundation:|Wikimedia Foundation]] tests the switch between its first and secondary data centers. This will make sure that Wikipedia and the other Wikimedia wikis can stay online even after a disaster. To make sure everything is working, the Wikimedia Technology department needs to do a planned test. This test will show if they can reliably switch from one data centre to the other. It requires many teams to prepare for the test and to be available to fix any unexpected problems.
They will switch all traffic back to the primary data center on '''Tuesday, October 27 2020'''.
Unfortunately, because of some limitations in [[mw:Manual:What is MediaWiki?|MediaWiki]], all editing must stop while the switch is made. We apologize for this disruption, and we are working to minimize it in the future.
'''You will be able to read, but not edit, all wikis for a short period of time.'''
*You will not be able to edit for up to an hour on Tuesday, October 27. The test will start at [https://zonestamp.toolforge.org/1603807200 14:00 UTC] (14:00 WET, 15:00 CET, 10:00 EDT, 19:30 IST, 07:00 PDT, 23:00 JST, and in New Zealand at 03:00 NZDT on Wednesday October 28).
*If you try to edit or save during these times, you will see an error message. We hope that no edits will be lost during these minutes, but we can't guarantee it. If you see the error message, then please wait until everything is back to normal. Then you should be able to save your edit. But, we recommend that you make a copy of your changes first, just in case.
''Other effects'':
*Background jobs will be slower and some may be dropped. Red links might not be updated as quickly as normal. If you create an article that is already linked somewhere else, the link will stay red longer than usual. Some long-running scripts will have to be stopped.
*There will be code freezes for the week of October 26, 2020. Non-essential code deployments will not happen.
This project may be postponed if necessary. You can [[wikitech:Switch_Datacenter#Schedule_for_2020_switch|read the schedule at wikitech.wikimedia.org]]. Any changes will be announced in the schedule. There will be more notifications about this. A banner will be displayed on all wikis 30 minutes before this operation happens. '''Please share this information with your community.'''</div></div> -- <span dir=ltr>[[m:User:Trizek (WMF)|Trizek (WMF)]] ([[m:User talk:Trizek (WMF)|talk]])</span> 17:11, 21 Τρυγομηνά 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=20519839 -->
== Wiki of functions naming contest - Round 2 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
{{int:Hello}}.
Reminder: Please help to choose the name for the new Wikimedia wiki project - the library of functions. The finalist vote starts today. The finalists for the name are: <span lang="en" dir="ltr" class="mw-content-ltr">Wikicode, Wikicodex, Wikifunctions, Wikifusion, Wikilambda, Wikimedia Functions</span>. If you would like to participate, then '''[[m:Special:MyLanguage/Abstract Wikipedia/Wiki of functions naming contest/Names|please learn more and vote now]]''' at Meta-wiki.
{{Int:Feedback-thanks-title}} --[[m:User:Quiddity (WMF)|Quiddity (WMF)]]
</div> 22:10, 5 Αεργί 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=20564572 -->
== [[m:Special:MyLanguage/Community Wishlist Survey 2021/Invitation|Community Wishlist Survey 2021]] ==
<div class="plainlinks mw-content-ltr" lang="el" dir="ltr">
[[File:Magic Wand Icon 229981 Color Flipped.svg|thumb|48px]]
H '''[[m:Special:MyLanguage/Community Wishlist Survey 2021|Δημοσκόπηση Επιθυμιών της Κοινότητας 2021]]''' έχει τώρα ανοίξει!
Η δημοσκόπηση αυτή αποτελεί την μέθοδο μέσω της οποίας οι κοινότητες αποφασίζουν σε τί θα εργαστεί η ομάδα [[m:Community Tech|Community Tech]] μέσα στην επόμενη χρονιά. Ενθαρρύνουμε όλους να συμβάλλουν με προτάσεις μέχρι τις '''{{#time:j xg|2020-11-30|{{PAGELANGUAGE}}}}''', ή να σχολιάσουν τις υπάρχουσες προτάσεις ώστε να βελτιωθούν.
Οι κοινότητες θα μπορούν να ψηφίσουν τις προτάσεις μεταξύ {{#time:j xg|2020-12-08|{{PAGELANGUAGE}}}} και {{#time:j xg|2020-12-21|{{PAGELANGUAGE}}}}.
Η ομάδα Community Tech εστιάζει σε εργαλεία για έμπειρους συντάκτες.
Μπορείτε να συντάξετε προτάσεις σε οποιαδήποτε γλώσσα, και θα τις μεταφράσουμε για εσάς. Ευχαριστούμε και ανυπομονούμε να δούμε τις προτάσεις σας!
</div>
<span lang="en" dir="ltr" class="mw-content-ltr">[[m:user:SGrabarczuk (WMF)|SGrabarczuk (WMF)]]</span>
18:11, 20 Αεργί 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SGrabarczuk (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:SGrabarczuk_(WMF)/sandbox/MM/Other_TOP30&oldid=20692843 -->
== Global bot policy proposal: invitation to a Meta discussion ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
{{int:hello}}!
I apologize for sending a message in English. {{int:please-translate}}. According to [[:m:Bot_policy/Implementation#Where_it_is_policy|the list]], your wiki project currently is opted in to the [[:m:Bot_policy#Global_bots|global bot policy]]. Under this policy, bots that fix double redirects or maintain interwiki links are allowed to operate under a global bot flag that is assigned directly by the stewards.
As the Wikimedia projects developed, the need for the current global bot policy decreased, and in the past years, no bots were appointed via that policy. That is mainly given Wikidata were estabilished in 2013, and it is no longer necessary to have dozens of bots that maintain interwiki links.
A [[:m:Requests for comment/Refine global bot policy|proposal]] was made at Meta-Wiki, which proposes that the stewards will be authorized to determine whether an uncontroversial task may be assigned a global bot flag. The stewards already assign permissions that are more impactful on many wikis, namely, [[:m:GS|global sysops]] and [[:m:GR|global renamers]], and I do not think that trust should be an issue. The stewards will assign the permission only to time-proven bots that are already approved at a number of projects, like [[:m:User:ListeriaBot|ListeriaBot]].
By this message, I would like to invite you to comment [[:m:Requests for comment/Refine global bot policy|in the global RFC]], to voice your opinion about this matter.
Thank you for your time.
Best regards,<br />
[[User:Martin Urbanec|Martin Urbanec]] ([[:m:User talk:Martin Urbanec|{{int:Talkpagelinktext}}]]) 11:49, 24 Αεργί 2020 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Martin Urbanec@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Martin_Urbanec/sand&oldid=20709229 -->
== Wikidata descriptions changes to be included more often in Recent Changes and Watchlist ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''Sorry for sending this message in English. Translations are available on [[m:Special:MyLanguage/Announcements/Announcement Wikidata descriptions in watchlist|this page]]. Feel free to translate it in more languages!''
As you may know, you can include changes coming from Wikidata in your Watchlist and Recent Changes ([[Special:Preferences#mw-prefsection-watchlist|in your preferences]]). Until now, this feature didn’t always include changes made on Wikidata descriptions due to the way Wikidata tracks the data used in a given article.
Starting on December 3rd, the Watchlist and Recent Changes will include changes on the descriptions of Wikidata Items that are used in the pages that you watch. This will only include descriptions in the language of your wiki to make sure that you’re only seeing changes that are relevant to your wiki.
This improvement was requested by many users from different projects. We hope that it can help you monitor the changes on Wikidata descriptions that affect your wiki and participate in the effort of improving the data quality on Wikidata for all Wikimedia wikis and beyond.
Note: if you didn’t use the Wikidata watchlist integration feature for a long time, feel free to give it another chance! The feature has been improved since the beginning and the content it displays is more precise and useful than at the beginning of the feature in 2015.
If you encounter any issue or want to provide feedback, feel free to use [[Phab:T191831|this Phabricator ticket]]. Thanks!
[[:d:User:Lea Lacroix (WMDE)|Lea Lacroix (WMDE)]] 14:39, 30 Αεργί 2020 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Lea Lacroix (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Lea_Lacroix_(WMDE)/wikis&oldid=20728482 -->
== 2020 Coolest Tool Award Ceremony on December 11th ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hello all,
The ceremony of the 2020 [[m:Coolest_Tool_Award|Wikimedia Coolest Tool Award]] will take place virtually on Friday, December 11th, at 17:00 GMT. This award is highlighting tools that have been nominated by contributors to the Wikimedia projects, and the ceremony will be a nice moment to show appreciation to the tools developers and maybe discover new tools!
You will find more information [[m:Coolest_Tool_Award|here]] about the livestream and the discussions channels. Thanks for your attention, [[:d:User:Lea Lacroix (WMDE)|Lea Lacroix (WMDE)]] 10:55, 7 Χριστουγενναρί 2020 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Lea Lacroix (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=20734978 -->
== [[m:Special:MyLanguage/Community Wishlist Survey 2021|Community Wishlist Survey 2021]] ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[File:Magic Wand Icon 229981 Color Flipped.svg|thumb|48px]]
'''We invite all registered users to vote on the [[m:Special:MyLanguage/Community Wishlist Survey 2021|2021 Community Wishlist Survey]]. You can vote from now until {{#time:j xg|2020-12-21|en}} for as many different wishes as you want.'''
In the Survey, wishes for new and improved tools for experienced editors are collected. After the voting, we will do our best to grant your wishes. We will start with the most popular ones.
We, the [[m:Special:MyLanguage/Community Tech|Community Tech]], are one of the [[m:Special:MyLanguage/Wikimedia Foundation|Wikimedia Foundation]] teams. We create and improve editing and wiki moderation tools. What we work on is decided based on results of the Community Wishlist Survey. Once a year, you can submit wishes. After two weeks, you can vote on the ones that you're most interested in. Next, we choose wishes from the survey to work on. Some of the wishes may be granted by volunteer developers or other teams.
We are waiting for your votes. Thank you!
</div>
[[user:SGrabarczuk (WMF)|SGrabarczuk (WMF)]]
15:58, 11 Χριστουγενναρί 2020 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SGrabarczuk (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:SGrabarczuk_(WMF)/sandbox/MM/Other_TOP30&oldid=20692843 -->
== Moving Wikimania 2021 to a Virtual Event ==
<div class="mw-content-ltr" lang="en" dir="ltr">
[[File:Wikimania_logo_with_text_2.svg|right|alt=Wikimania's logo.|75px]]
''{{int:Hello}}. Apologies if you are not reading this message in your native language. {{Int:Please-translate}}. {{Int:Feedback-thanks-title}}''
[[:m:Wikimania 2021|Wikimania will be a virtual event this year]], and hosted by a wide group of community members. Whenever the next in-person large gathering is possible again, [[:m:ESEAP Hub|the ESEAP Core Organizing Team]] will be in charge of it. Stay tuned for more information about how ''you'' can get involved in the planning
process and other aspects of the event. [https://lists.wikimedia.org/pipermail/wikimedia-l/2021-January/096141.html Please read the longer version of this announcement on wikimedia-l].
''ESEAP Core Organizing Team, Wikimania Steering Committee, Wikimedia Foundation Events Team'', 15:16, 27 Καλανταρί 2021 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Elitre_(WMF)/Wikimania21&oldid=21014617 -->
== Project Grant Open Call ==
This is the announcement for the [[m:Grants:Project|Project Grants program]] open call that started on January 11, with the submission deadline of February 10, 2021.<br> This first open call will be focussed on Community Organizing proposals. A second open call focused on research and software proposals is scheduled from February 15 with a submission deadline of March 16, 2021.<br>
For the Round 1 open call, we invite you to propose grant applications that fall under community development and organizing (offline and online) categories. Project Grant funds are available to support individuals, groups, and organizations to implement new experiments and proven ideas, from organizing a better process on your wiki, coordinating a campaign or editathon series to providing other support for community building. We offer the following resources to help you plan your project and complete a grant proposal:<br>
* Weekly proposals clinics via Zoom during the Open Call. Join us for [[m:Grants:Project|#Upcoming_Proposal_Clinics|real-time discussions]] with Program Officers and select thematic experts and get live feedback about your Project Grants proposal. We’ll answer questions and help you make your proposal better. We also offer these support pages to help you build your proposal:
* [[m:Grants:Project/Tutorial|Video tutorials]] for writing a strong application<br>
* General [[m:Grants:Project/Plan|planning page]] for Project Grants <br>
* [[m:Grants:Project/Learn|Program guidelines and criteria]]<br>
Program officers are also available to offer individualized proposal support upon request. Contact us if you would like feedback or more information.<br>
We are excited to see your grant ideas that will support our community and make an impact on the future of Wikimedia projects. Put your idea into motion, and [[m:Grants:Project/Apply|submit your proposal]] by February 10, 2021!<br>
Please feel free to get in touch with questions about getting started with your grant application, or about serving on the Project Grants Committee. Contact us at projectgrants{{at}}wikimedia.org. Please help us translate this message to your local language. [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 08:01, 28 Καλανταρί 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RSharma (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=20808431 -->
== New Wikipedia Library Collections Available Now (February 2021) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|upright|The TWL owl says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing new free, full-access, accounts to reliable sources as part of our [https://wikipedialibrary.wmflabs.org/partners/ research access program]. You can sign up to access research materials on the [https://wikipedialibrary.wmflabs.org/ Library Card platform]:
* '''[https://wikipedialibrary.wmflabs.org/partners/103/ Taxmann]''' – Taxation and law database
* '''[https://wikipedialibrary.wmflabs.org/partners/104/ PNAS]''' – Official journal of the National Academy of Sciences
* '''[https://wikipedialibrary.wmflabs.org/partners/57/ EBSCO]''' – New Arabic and Spanish language databases added
We have a wide array of [https://wikipedialibrary.wmflabs.org/partners/ other collections available], and a significant number now no longer require individual applications to access! Read more in our [https://diff.wikimedia.org/2020/06/24/simplifying-your-research-needs-the-wikipedia-library-launches-new-technical-improvements-and-partnerships/ blog post].
Do better research and help expand the use of high quality references across Wikipedia projects!
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
--12:57, 1 Κούντουρονος 2021 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Samwalton9@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=21022367 -->
== Wiki Loves Folklore 2021 is back! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:Wiki Loves Folklore Logo.svg|right|150px|frameless]]
You are humbly invited to participate in the '''[[:c:Commons:Wiki Loves Folklore 2021|Wiki Loves Folklore 2021]]''' an international photography contest organized on Wikimedia Commons to document folklore and intangible cultural heritage from different regions, including, folk creative activities and many more. It is held every year from the 1st till the 28th of February.
You can help in enriching the folklore documentation on Commons from your region by taking photos, audios, videos, and [https://commons.wikimedia.org/w/index.php?title=Special:UploadWizard&campaign=wlf_2021 submitting] them in this commons contest.
Please support us in translating the [[:c:Commons: Wiki Loves Folklore 2021|project page]] and a [https://meta.wikimedia.org/wiki/Special:Translate?group=Centralnotice-tgroup-wikiloveslove2020&language=en&filter=%21translated&action=translate|one-line banner message] to help us spread the word in your native language.
'''Kind regards,'''
'''Wiki loves Folklore International Team'''
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 13:25, 6 Κούντουρονος 2021 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/wll&oldid=21073884 -->
== Feminism & Folklore 1 February - 31 March ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
Greetings!
You are invited to participate in '''[[m:Feminism and Folklore 2021|Feminism and Folklore]] writing contest'''. This year Feminism and Folklore will focus on feminism, women's biographies and gender-focused topics for the project in league with Wiki Loves Folklore gender gap focus with folk culture theme on Wikipedia. folk activities, folk games, folk cuisine, folk wear, fairy tales, folk plays, folk arts, folk religion, mythology, etc.
You can help us in enriching the folklore documentation on Wikipedia from your region by creating or improving articles centered on folklore around the world, including, but not limited to folk festivals, folk dances, folk music, women and queer personalities in folklore, folk culture (folk artists, folk dancers, folk singers, folk musicians, folk game athletes, women in mythology, women warriors in folklore, witches and witch-hunting, fairy tales and more. You can contribute to new articles or translate from the list of [[:m:Feminism and Folklore 2021/List of Articles|suggested articles here]].
You can also support us in translating the [[m:Feminism and Folklore 2021|project page]] and help us spread the word in your native language.
Learn more about the contest and prizes from our [[m:Feminism and Folklore 2021|project page]]. Thank you.
Feminism and Folklore team,
[[m:User:Joy Agyepong|Joy Agyepong]] ([[m:User talk:Joy Agyepong|talk]]) 02:40, 16 Κούντουρονος 2021 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery/Wikipedia&oldid=20421065 -->
== Proposal: Set two-letter project shortcuts as alias to project namespace globally ==
<div lang="en" dir="ltr">
{{int:please-translate}}
Hello everyone,
I apologize for posting in English. I would like to inform everyone that I created a new global request for comment (GRFC) at Meta Wiki, which may affect your project: [[:m:Requests for comment/Set short project namespace aliases by default globally]].
In this GRFC, I propose that two-project shortcuts for project names will become a default alias for the project namespace. For instance, on all Wikipedias, WP will be an alias to the Wikipedia: namespace (and similar for other projects). Full list is available in the GRFC.
This is already the case for Wikivoyages, and many individual projects asked for this alias to be implemented. I believe this makes it easier to access the materials in the project namespace, as well as creating shortcuts like <tt>WP:NPOV</tt>, as well as helps new projects to use this feature, without having to figure out how to request site configuration changes first.
As far as I can see, {{SITENAME}} currently does not have such an alias set. This means that such an alias will be set for you, if the GRFC is accepted by the global community.
I would like to ask all community members to participate in the request for comment at Meta-Wiki, see [[:m:Requests for comment/Set short project namespace aliases by default globally]].
Please feel free to [[:m:User talk:Martin Urbanec|ask me]] if you have any questions about this proposal.
Best regards,<br />
--[[:m:User:Martin Urbanec|Martin Urbanec]] ([[:m:User talk:Martin Urbanec|talk]]) 14:12, 18 Κούντουρονος 2021 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Martin Urbanec@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Martin_Urbanec/MassMessage&oldid=21125035 -->
== Wikifunctions logo contest ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
{{Int:Hello}}. Please help to choose a design concept for the logo of the new Wikifunctions wiki. Voting starts today and will be open for 2 weeks. If you would like to participate, then '''[[m:Special:MyLanguage/Abstract Wikipedia/Wikifunctions logo concept/Vote|please learn more and vote now]]''' at Meta-Wiki. {{Int:Feedback-thanks-title}} --[[m:User:Quiddity (WMF)|Quiddity (WMF)]]</div> 01:47, 2 Μαρτ 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=21087740 -->
== WikiGap 2021 Russia ==
Уважаемые коллеги, пожалуйста выскажите своё мнение по поводу ''[[m:CentralNotice/Request/WikiGap 2021 Russia|баннерной кампании CentralNotice]]'' для объявления о российском викимарафоне [[wmru:Конкурсы/WikiGap 2021 Russia|WikiGap 2021]] (8 марта - 8 мая, все IP из России, только Википедии, 1 показ в неделю). Спасибо. --[[Χρήστες:Dmitry Rozhkov|Dmitry Rozhkov]] ([[Καλάτσεμαν χρήστε:Dmitry Rozhkov|συζήτηση]]) 00:32, 7 Μαρτ 2021 (UTC)
== Universal Code of Conduct – 2021 consultations ==
<div lang="en" dir="ltr" class="mw-content-ltr">
=== Universal Code of Conduct Phase 2 ===
{{int:please-translate}}
The [[:wmf:Special:MyLanguage/Universal Code of Conduct|'''Universal Code of Conduct (UCoC)''']] provides a universal baseline of acceptable behavior for the entire Wikimedia movement and all its projects. The project is currently in Phase 2, outlining clear enforcement pathways. You can read more about the whole project on its [[:m:Special:MyLanguage/Universal Code of Conduct|'''project page''']].
==== Drafting Committee: Call for applications ====
The Wikimedia Foundation is recruiting volunteers to join a committee to draft how to make the code enforceable. Volunteers on the committee will commit between 2 and 6 hours per week from late April through July and again in October and November. It is important that the committee be diverse and inclusive, and have a range of experiences, including both experienced users and newcomers, and those who have received or responded to, as well as those who have been falsely accused of harassment.
To apply and learn more about the process, see [[:m:Special:MyLanguage/Universal Code of Conduct/Drafting committee|Universal Code of Conduct/Drafting committee]].
==== 2021 community consultations: Notice and call for volunteers / translators ====
From 5 April – 5 May 2021 there will be conversations on many Wikimedia projects about how to enforce the UCoC. We are looking for volunteers to translate key material, as well as to help host consultations on their own languages or projects using suggested [[:m:Special:MyLanguage/Universal Code of Conduct/2021 consultations/Discussion|key questions]]. If you are interested in volunteering for either of these roles, please [[:m:Talk:Universal Code of Conduct/2021 consultations|contact us]] in whatever language you are most comfortable.
To learn more about this work and other conversations taking place, see [[:m:Special:MyLanguage/Universal Code of Conduct/2021 consultations|Universal Code of Conduct/2021 consultations]].
-- [[User:Xeno (WMF)|Xeno (WMF)]] ([[User talk:Xeno (WMF)|talk]]) 22:06, 5 Απρίλ 2021 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:MNadzikiewicz_(WMF)/Without_Russian,_Polish_and_translated/5&oldid=21302202 -->
== Global bot policy changes ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
{{int:hello}}!
I apologize for sending a message in English. {{int:please-translate}}. According to [[:m:Bot_policy/Implementation#Where_it_is_policy|the list]], your wiki project is currently opted in to the [[:m:Bot_policy#Global_bots|global bot policy]]. As such, I want to let you know about some changes that were made after the [[:m:Requests for comment/Refine global bot policy|global RfC]] was closed.
*Global bots are now subject to a 2 week discussion, and it'll be publicized via a MassMessage list, available at [[:m:Bot policy/New global bot discussion|Bot policy/New global bot discussion]] on Meta. Please subscribe yourself or your wiki if you are interested in new global bots proposals.
*For a bot to be considered for approval, it must demonstrate it is welcomed in multiple projects, and a good way to do that is to have the bot flag on at least 5 wikis for a single task.
*The bot operator should make sure to adhere to the wiki's preference as related to the use of the bot flag (i.e., if a wiki doesn't want a bot to use the flag as it edits, that should be followed).
Thank you for your time.
Best regards,<br />
—'''''<span style="font-family:Candara">[[User:Tks4Fish|<span style="color:black">Thanks for the fish!</span>]] <sup>[[User Talk:Tks4Fish|<span style="color:blue">talk</span>]]•[[Special:Contribs/Tks4Fish|contribs]]</sup></span>''''' 18:48, 6 Απρίλ 2021 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Tks4Fish@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Tks4Fish/temp&oldid=21306363 -->
== Line numbering coming soon to all wikis ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[File:Technical_Wishes_–_Line_numbering_-_2010_wikitext_editor.png|thumb|Example]]
From April 15, you can enable line numbering in some wikitext editors - for now in the template namespace, coming to more namespaces soon. This will make it easier to detect line breaks and to refer to a particular line in discussions. These numbers will be shown if you enable the syntax highlighting feature ([[mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror extension]]), which is supported in the [[mw:Special:MyLanguage/Extension:WikiEditor|2010]] and [[mw:Special:MyLanguage/2017 wikitext editor|2017]] wikitext editors.
More information can be found on [[m:WMDE Technical Wishes/Line Numbering|this project page]]. Everyone is invited to test the feature, and to give feedback [[m:talk:WMDE Technical Wishes/Line Numbering|on this talk page]].
</div> -- [[m:User:Johanna Strodt (WMDE)|Johanna Strodt (WMDE)]] 15:09, 12 Απρίλ 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johanna Strodt (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=21329014 -->
== Suggested Values ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
From April 29, it will be possible to suggest values for parameters in templates. Suggested values can be added to [[mw:Special:MyLanguage/Help:TemplateData|TemplateData]] and will then be shown as a drop-down list in [[mw:Special:MyLanguage/Help:VisualEditor/User guide|VisualEditor]]. This allows template users to quickly select an appropriate value. This way, it prevents potential errors and reduces the effort needed to fill the template with values. It will still be possible to fill in values other than the suggested ones.
More information, including the supported parameter types and how to create suggested values: [[mw:Help:TemplateData#suggestedvalues|[1]]] [[m:WMDE_Technical_Wishes/Suggested_values_for_template_parameters|[2]]]. Everyone is invited to test the feature, and to give feedback [[m:Talk:WMDE Technical Wishes/Suggested values for template parameters|on this talk page]].
</div> [[m:User:Timur Vorkul (WMDE)|Timur Vorkul (WMDE)]] 14:08, 22 Απρίλ 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Timur Vorkul (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=21361904 -->
== Universal Code of Conduct News – Issue 1 ==
<div style = "line-height: 1.2">
<span style="font-size:200%;">'''Universal Code of Conduct News'''</span><br>
<span style="font-size:120%; color:#404040;">'''Issue 1, June 2021'''</span><span style="font-size:120%; float:right;">[[m:Universal Code of Conduct/Newsletter/1|Read the full newsletter]]</span>
----
Welcome to the first issue of [[m:Special:MyLanguage/Universal Code of Conduct|Universal Code of Conduct News]]! This newsletter will help Wikimedians stay involved with the development of the new code, and will distribute relevant news, research, and upcoming events related to the UCoC.
Please note, this is the first issue of UCoC Newsletter which is delivered to all subscribers and projects as an announcement of the initiative. If you want the future issues delivered to your talk page, village pumps, or any specific pages you find appropriate, you need to [[m:Global message delivery/Targets/UCoC Newsletter Subscription|subscribe here]].
You can help us by translating the newsletter issues in your languages to spread the news and create awareness of the new conduct to keep our beloved community safe for all of us. Please [[m:Universal Code of Conduct/Newsletter/Participate|add your name here]] if you want to be informed of the draft issue to translate beforehand. Your participation is valued and appreciated.
</div><div style="margin-top:3px; padding:10px 10px 10px 20px; background:#fffff; border:2px solid #808080; border-radius:4px; font-size:100%;">
* '''Affiliate consultations''' – Wikimedia affiliates of all sizes and types were invited to participate in the UCoC affiliate consultation throughout March and April 2021. ([[m:Universal Code of Conduct/Newsletter/1#sec1|continue reading]])
* '''2021 key consultations''' – The Wikimedia Foundation held enforcement key questions consultations in April and May 2021 to request input about UCoC enforcement from the broader Wikimedia community. ([[m:Universal Code of Conduct/Newsletter/1#sec2|continue reading]])
* '''Roundtable discussions''' – The UCoC facilitation team hosted two 90-minute-long public roundtable discussions in May 2021 to discuss UCoC key enforcement questions. More conversations are scheduled. ([[m:Universal Code of Conduct/Newsletter/1#sec3|continue reading]])
* '''Phase 2 drafting committee''' – The drafting committee for the phase 2 of the UCoC started their work on 12 May 2021. Read more about their work. ([[m:Universal Code of Conduct/Newsletter/1#sec4|continue reading]])
* '''Diff blogs''' – The UCoC facilitators wrote several blog posts based on interesting findings and insights from each community during local project consultation that took place in the 1st quarter of 2021. ([[m:Universal Code of Conduct/Newsletter/1#sec5|continue reading]])</div>
--[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 23:06, 11 Κερασινού 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SOyeyele (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:SOyeyele_(WMF)/Announcements/Other_languages&oldid=21578291 -->
== Wikimania 2021: Individual Program Submissions ==
[[File:Wikimania logo with text 2.svg|right|200px]]
Dear all,
Wikimania 2021 will be [[:wikimania:2021:Save the date and the Core Organizing Team|hosted virtually]] for the first time in the event's 15-year history. Since there is no in-person host, the event is being organized by a diverse group of Wikimedia volunteers that form the [[:wikimania:2021:Organizers|Core Organizing Team]] (COT) for Wikimania 2021.
'''Event Program''' - Individuals or a group of individuals can submit their session proposals to be a part of the program. There will be translation support for sessions provided in a number of languages. See more information [[:wikimania:2021:Submissions/Guidelines#Language Accessibility|here]].
Below are some links to guide you through;
* [[:wikimania:2021:Submissions|Program Submissions]]
* [[:wikimania:2021:Submissions/Guidelines|Session Submission Guidelines]]
* [[:wikimania:2021:FAQ|FAQ]]
Please note that the deadline for submission is 18th June 2021.
'''Announcements'''- To keep up to date with the developments around Wikimania, the COT sends out weekly updates. You can view them in the Announcement section [[:wikimania:2021:Announcements|here]].
'''Office Hour''' - If you are left with questions, the COT will be hosting some office hours (in multiple languages), in multiple time-zones, to answer any programming questions that you might have. Details can be found [[:wikimania:2021:Organizers#Office hours schedule|here.]]
Best regards,
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 04:18, 16 Κερασινού 2021 (UTC)
On behalf of Wikimania 2021 Core Organizing Team
<!-- Το μήνυμα στάλθηκε από τον User:Bodhisattwa@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/VisualEditor/Newsletter/Wikis_with_VE&oldid=21597568 -->
== Editing news 2021 #2 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<em>[[m:Special:MyLanguage/VisualEditor/Newsletter/2021/June|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</em>
[[File:Reply Tool A-B test comment completion.png|alt=Junior contributors comment completion rate across all participating Wikipedias|thumb|296x296px|When newcomers had the Reply tool and tried to post on a talk page, they were more successful at posting a comment. ([https://wikimedia-research.github.io/Reply-tools-analysis-2021/ Source])]]
Earlier this year, the Editing team ran a large study of [[mw:Talk pages project/Replying|the Reply Tool]]. The main goal was to find out whether the Reply Tool helped [[mw:Talk pages project/Glossary|newer editors]] communicate on wiki. The second goal was to see whether the comments that newer editors made using the tool needed to be reverted more frequently than comments newer editors made with the existing wikitext page editor.
The key results were:
* Newer editors who had automatic ("default on") access to the Reply tool were [https://wikimedia-research.github.io/Reply-tools-analysis-2021/ more likely] to post a comment on a talk page.
* The comments that newer editors made with the Reply Tool were also [https://wikimedia-research.github.io/Reply-tools-analysis-2021/ less likely] to be reverted than the comments that newer editors made with page editing.
These results give the Editing team confidence that the tool is helpful.
<strong>Looking ahead</strong>
The team is planning to make the Reply tool available to everyone as an opt-out preference in the coming months. This has already happened at the Arabic, Czech, and Hungarian Wikipedias.
The next step is to [[phab:T280599|resolve a technical challenge]]. Then, they will deploy the Reply tool first to the [[phab:T267379|Wikipedias that participated in the study]]. After that, they will deploy it, in stages, to the other Wikipedias and all WMF-hosted wikis.
You can turn on "{{int:discussiontools-preference-label}}" [[Special:Preferences#mw-prefsection-betafeatures|in Beta Features]] now. After you get the Reply tool, you can change your preferences at any time in [[Special:Preferences#mw-prefsection-editing-discussion]].
–[[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[User talk:Whatamidoing (WMF)|talk]])
</div> 14:14, 24 Κερασινού 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/VisualEditor/Newsletter/Wikis_with_VE&oldid=21624491 -->
== Server switch ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch 2020|Read this message in another language]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch+2020&language=&action=page&filter= {{int:please-translate}}]
The [[foundation:|Wikimedia Foundation]] tests the switch between its first and secondary data centers. This will make sure that Wikipedia and the other Wikimedia wikis can stay online even after a disaster. To make sure everything is working, the Wikimedia Technology department needs to do a planned test. This test will show if they can reliably switch from one data centre to the other. It requires many teams to prepare for the test and to be available to fix any unexpected problems. <!--
They will switch all traffic back to the primary data center on '''Tuesday, October 27 2020'''. -->
Unfortunately, because of some limitations in [[mw:Manual:What is MediaWiki?|MediaWiki]], all editing must stop while the switch is made. We apologize for this disruption, and we are working to minimize it in the future.
'''You will be able to read, but not edit, all wikis for a short period of time.'''
*You will not be able to edit for up to an hour on Tuesday, 29 June 2021. The test will start at [https://zonestamp.toolforge.org/1624975200 14:00 UTC] (07:00 PDT, 10:00 EDT, 15:00 WEST/BST, 16:00 CEST, 19:30 IST, 23:00 JST, and in New Zealand at 02:00 NZST on Wednesday 30 June).
*If you try to edit or save during these times, you will see an error message. We hope that no edits will be lost during these minutes, but we can't guarantee it. If you see the error message, then please wait until everything is back to normal. Then you should be able to save your edit. But, we recommend that you make a copy of your changes first, just in case.
''Other effects'':
*Background jobs will be slower and some may be dropped. Red links might not be updated as quickly as normal. If you create an article that is already linked somewhere else, the link will stay red longer than usual. Some long-running scripts will have to be stopped.
*There will be code freezes for the week of June 28. Non-essential code deployments will not happen.
This project may be postponed if necessary. You can [[wikitech:Switch_Datacenter#Schedule_for_2021_switch|read the schedule at wikitech.wikimedia.org]]. Any changes will be announced in the schedule. There will be more notifications about this. A banner will be displayed on all wikis 30 minutes before this operation happens. '''Please share this information with your community.'''</div></div> [[user:SGrabarczuk (WMF)|SGrabarczuk (WMF)]] 01:19, 27 Κερασινού 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SGrabarczuk (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=21463754 -->
== New Wikipedia Library collections and design update (August 2021) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|upright|The TWL OWL says log in today!]]
[https://wikipedialibrary.wmflabs.org/users/my_library/ The Wikipedia Library] is pleased to announce the addition of new collections, alongside a new interface design. New collections include:
* '''[https://wikipedialibrary.wmflabs.org/partners/107/ Cabells]''' – Scholarly and predatory journal database
* '''[https://wikipedialibrary.wmflabs.org/partners/108/ Taaghche]''' - Persian language e-books
* '''[https://wikipedialibrary.wmflabs.org/partners/112/ Merkur]''', '''[https://wikipedialibrary.wmflabs.org/partners/111/ Musik & Ästhetik]''', and '''[https://wikipedialibrary.wmflabs.org/partners/110/ Psychologie, Psychotherapie, Psychoanalyse]''' - German language magazines and journals published by Klett-Cotta
* '''[https://wikipedialibrary.wmflabs.org/partners/117/ Art Archiv]''', '''[https://wikipedialibrary.wmflabs.org/partners/113/ Capital]''', '''[https://wikipedialibrary.wmflabs.org/partners/115/ Geo]''', '''[https://wikipedialibrary.wmflabs.org/partners/116/ Geo Epoche]''', and '''[https://wikipedialibrary.wmflabs.org/partners/114/ Stern]''' - German language newspapers and magazines published by Gruner + Jahr
Additionally, '''[https://wikipedialibrary.wmflabs.org/partners/105/ De Gruyter]''' and '''[https://wikipedialibrary.wmflabs.org/partners/106/ Nomos]''' have been centralised from their previous on-wiki signup location on the German Wikipedia. Many other collections are freely available by simply logging in to [https://wikipedialibrary.wmflabs.org/ The Wikipedia Library] with your Wikimedia login!
We are also excited to announce that the first version of a new design for My Library was deployed this week. We will be iterating on this design with more features over the coming weeks. Read more on the [[:m:Library Card platform/Design improvements|project page on Meta]].
Lastly, an Echo notification will begin rolling out soon to notify eligible editors about the library ([[Phab:T132084|T132084]]). If you can translate the notification please do so [https://translatewiki.net/w/i.php?title=Special:Translate&group=ext-thewikipedialibrary at TranslateWiki]!
--The Wikipedia Library Team 13:23, 11 Aλωναρί 2021 (UTC)
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Samwalton9@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=21851699 -->
== Universal Code of Conduct - Enforcement draft guidelines review ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="content"/>The [[m:Special:MyLanguage/Universal_Code_of_Conduct/Drafting_committee#Phase_2|Universal Code of Conduct Phase 2 drafting committee]] would like comments about the '''[[:m:Universal Code of Conduct/Enforcement draft guidelines review|enforcement draft guidelines]]''' for the [[m:Special:MyLanguage/Universal Code of Conduct|Universal Code of Conduct]] (UCoC). This review period is planned for 17 August 2021 through 17 October 2021.
These guidelines are not final but you can help move the progress forward. The committee will revise the guidelines based upon community input.
Comments can be shared in any language on the [[m:Talk:Universal Code of Conduct/Enforcement draft guidelines review|draft review talk page]] and [[m:Special:MyLanguage/Universal Code of Conduct/Discussions|multiple other venues]]. Community members are encouraged to organize conversations in their communities.
There are planned live discussions about the UCoC enforcement draft guidelines:
:[[wmania:2021:Submissions/Universal_Code_of_Conduct_Roundtable|Wikimania 2021 session]] (recorded 16 August)
:[[m:Special:MyLanguage/Universal_Code_of_Conduct/2021_consultations/Roundtable_discussions#Conversation hours|Conversation hours]] - 24 August, 31 August, 7 September @ 03:00 UTC & 14:00 UTC
:[[m:Special:MyLanguage/Universal_Code_of_Conduct/2021_consultations/Roundtable_discussions|Roundtable calls]] - 18 September @ 03:00 UTC & 15:00 UTC
Summaries of discussions will be posted every two weeks [[m:Special:MyLanguage/Universal Code of Conduct/Drafting committee/Digests|here]].
Please let me know if you have any questions.<section end="content"/>
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 23:19, 17 Aλωναρί 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Xeno_(WMF)/Delivery/Wikipedia&oldid=21895766 -->
== Wikimedia Foundation Board of Trustees election has come to an end ==
Thank you for participating in the [[:meta:Special:MyLanguage/Wikimedia_Foundation_elections/2021|2021 Wikimedia Foundation Board of Trustees election]]! Voting closed August 31 at 23:59. The official data, including the four most voted candidates, will be announced as soon as the [[:meta:Special:MyLanguage/Wikimedia_Foundation_elections_committee|Elections Committee]] completes their review of the ballots. The official announcement of the new trustees appointed will happen later, once the selected candidates have been confirmed by the Board.
6,946 community members from 216 wiki projects have voted. This makes 10.2% global participation, 1.1% higher than in the last Board elections. In 2017, 5167 people from 202 wiki projects cast their vote. A full analysis is planned to be published in a few days when the confirmed results are announced. In the meantime, you can check the [[:meta:Special:MyLanguage/Wikimedia_Foundation_elections/2021/Stats|data produced during the election]].
Diversity was an important goal with these elections. Messages about the Board election were translated into 61 languages. This outreach worked well. There were 70 communities with eligible voters voting in this election for the first time. With your help, next year’s Board of Trustees election will be even better.
10:03, 2 Σταυρί 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Xeno_(WMF)/Delivery/Wikipedia&oldid=21895840 -->
== The 2022 Community Wishlist Survey will happen in January ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hello everyone,
We hope all of you are as well and safe as possible during these trying times! We wanted to share some news about a change to the Community Wishlist Survey 2022. We would like to hear your opinions as well.
Summary:
<div style="font-style:italic;">
We will be running the [[m:Special:MyLanguage/Community Wishlist Survey|Community Wishlist Survey]] 2022 in January 2022. We need more time to work on the 2021 wishes. We also need time to prepare some changes to the Wishlist 2022. In the meantime, you can use a [[m:Special:MyLanguage/Community Wishlist Survey/Sandbox|dedicated sandbox to leave early ideas for the 2022 wishes]].
</div>
=== Proposing and wish-fulfillment will happen during the same year ===
In the past, the [[m:Special:MyLanguage/Community Tech|Community Tech]] team has run the Community Wishlist Survey for the following year in November of the prior year. For example, we ran the [[m:Special:MyLanguage/Community Wishlist Survey 2021|Wishlist for 2021]] in November 2020. That worked well a few years ago. At that time, we used to start working on the Wishlist soon after the results of the voting were published.
However, in 2021, there was a delay between the voting and the time when we could start working on the new wishes. Until July 2021, we were working on wishes from the [[m:Special:MyLanguage/Community Wishlist Survey 2020|Wishlist for 2020]].
We hope having the Wishlist 2022 in January 2022 will be more intuitive. This will also give us time to fulfill more wishes from the 2021 Wishlist.
=== Encouraging wider participation from historically excluded communities ===
We are thinking how to make the Wishlist easier to participate in. We want to support more translations, and encourage under-resourced communities to be more active. We would like to have some time to make these changes.
=== A new space to talk to us about priorities and wishes not granted yet ===
We will have gone 365 days without a Wishlist. We encourage you to approach us. We hope to hear from you in the [[m:Special:MyLanguage/Talk:Community Wishlist Survey|talk page]], but we also hope to see you at our bi-monthly Talk to Us meetings! These will be hosted at two different times friendly to time zones around the globe.
We will begin our first meeting '''September 15th at 23:00 UTC'''. More details about the agenda and format coming soon!
=== Brainstorm and draft proposals before the proposal phase ===
If you have early ideas for wishes, you can use the [[m:Special:MyLanguage/Community Wishlist Survey/Sandbox|new Community Wishlist Survey sandbox]]. This way, you will not forget about these before January 2022. You will be able to come back and refine your ideas. Remember, edits in the sandbox don't count as wishes!
=== Feedback ===
* What should we do to improve the Wishlist pages?
* How would you like to use our new [[m:Special:MyLanguage/Community Wishlist Survey/Sandbox|sandbox?]]
* What, if any, risks do you foresee in our decision to change the date of the Wishlist 2022?
* What will help more people participate in the Wishlist 2022?
Answer on the [[m:Special:MyLanguage/Talk:Community Wishlist Survey|talk page]] (in any language you prefer) or at our Talk to Us meetings.
</div>
[[user:SGrabarczuk (WMF)|SGrabarczuk (WMF)]] ([[user talk:SGrabarczuk (WMF)|talk]]) 00:23, 7 Σταυρί 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SGrabarczuk (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=21980442 -->
== Call for Candidates for the Movement Charter Drafting Committee ending 14 September 2021 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content"/>Movement Strategy announces [[:m:Special:MyLanguage/Movement_Charter/Drafting_Committee|the Call for Candidates for the Movement Charter Drafting Committee]]. The Call opens August 2, 2021 and closes September 14, 2021.
The Committee is expected to represent [[:m:Special:MyLanguage/Movement_Charter/Drafting_Committee/Diversity_and_Expertise_Matrices|diversity in the Movement]]. Diversity includes gender, language, geography, and experience. This comprises participation in projects, affiliates, and the Wikimedia Foundation.
English fluency is not required to become a member. If needed, translation and interpretation support is provided. Members will receive an allowance to offset participation costs. It is US$100 every two months.
We are looking for people who have some of the following [[:m:Special:MyLanguage/Movement_Charter/Drafting_Committee#Role_Requirements|skills]]:
* Know how to write collaboratively. (demonstrated experience is a plus)
* Are ready to find compromises.
* Focus on inclusion and diversity.
* Have knowledge of community consultations.
* Have intercultural communication experience.
* Have governance or organization experience in non-profits or communities.
* Have experience negotiating with different parties.
The Committee is expected to start with 15 people. If there are 20 or more candidates, a mixed election and selection process will happen. If there are 19 or fewer candidates, then the process of selection without election takes place.
Will you help move Wikimedia forward in this important role? Submit your candidacy [[:m:Special:MyLanguage/Movement_Charter/Drafting_Committee#Candidate_Statements|here]]. Please contact strategy2030[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org with questions.<section end="announcement-content"/>
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 17:02, 10 Σταυρί 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Xeno_(WMF)/Delivery/Wikipedia&oldid=22002240 -->
== Server switch ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Read this message in another language]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
The [[foundation:|Wikimedia Foundation]] tests the switch between its first and secondary data centers. This will make sure that Wikipedia and the other Wikimedia wikis can stay online even after a disaster. To make sure everything is working, the Wikimedia Technology department needs to do a planned test. This test will show if they can reliably switch from one data centre to the other. It requires many teams to prepare for the test and to be available to fix any unexpected problems.
They will switch all traffic back to the primary data center on '''Tuesday, 14 September 2021'''.
Unfortunately, because of some limitations in [[mw:Manual:What is MediaWiki?|MediaWiki]], all editing must stop while the switch is made. We apologize for this disruption, and we are working to minimize it in the future.
'''You will be able to read, but not edit, all wikis for a short period of time.'''
*You will not be able to edit for up to an hour on Tuesday, 14 September 2021. The test will start at [https://zonestamp.toolforge.org/1631628049 14:00 UTC] (07:00 PDT, 10:00 EDT, 15:00 WEST/BST, 16:00 CEST, 19:30 IST, 23:00 JST, and in New Zealand at 02:00 NZST on Wednesday, 15 September).
*If you try to edit or save during these times, you will see an error message. We hope that no edits will be lost during these minutes, but we can't guarantee it. If you see the error message, then please wait until everything is back to normal. Then you should be able to save your edit. But, we recommend that you make a copy of your changes first, just in case.
''Other effects'':
*Background jobs will be slower and some may be dropped. Red links might not be updated as quickly as normal. If you create an article that is already linked somewhere else, the link will stay red longer than usual. Some long-running scripts will have to be stopped.
* We expect the code deployments to happen as any other week. However, some case-by-case code freezes could punctually happen if the operation require them afterwards.
This project may be postponed if necessary. You can [[wikitech:Switch_Datacenter|read the schedule at wikitech.wikimedia.org]]. Any changes will be announced in the schedule. There will be more notifications about this. A banner will be displayed on all wikis 30 minutes before this operation happens. '''Please share this information with your community.'''</div></div> [[user:SGrabarczuk (WMF)|SGrabarczuk (WMF)]] ([[user talk:SGrabarczuk (WMF)|<span class="signature-talk">{{int:Talkpagelinktext}}</span>]]) 00:45, 11 Σταυρί 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SGrabarczuk (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=21980442 -->
== Talk to the Community Tech ==
[[File:Magic Wand Icon 229981 Color Flipped.svg|{{dir|{{pagelang}}|left|right}}|frameless|50px]]
[[:m:Special:MyLanguage/Community Wishlist Survey/Updates/2021-09 Talk to Us|Read this message in another language]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Community_Wishlist_Survey/Updates/2021-09_Talk_to_Us&language=&action=page&filter= {{int:please-translate}}]
Hello!
As we have [[m:Special:MyLanguage/Community Wishlist Survey/Updates|recently announced]], we, the team working on the [[m:Special:MyLanguage/Community Wishlist Survey|Community Wishlist Survey]], would like to invite you to an online meeting with us. It will take place on [https://www.timeanddate.com/worldclock/fixedtime.html?iso=20210915T2300 '''September 15th, 23:00 UTC'''] on Zoom, and will last an hour. [https://wikimedia.zoom.us/j/89828615390 '''Click here to join'''].
'''Agenda'''
* [[m:Special:MyLanguage/Community Wishlist Survey 2021/Status report 1#Prioritization Process|How we prioritize the wishes to be granted]]
* [[m:Special:MyLanguage/Community Wishlist Survey/Updates|Why we decided to change the date]] from November 2021 to January 2022
* Update on the [[m:Special:MyLanguage/Community Wishlist Survey 2021/Warn when linking to disambiguation pages|disambiguation]] and the [[m:Special:MyLanguage/Community Wishlist Survey 2021/Real Time Preview for Wikitext|real-time preview]] wishes
* Questions and answers
'''Format'''
The meeting will not be recorded or streamed. Notes without attribution will be taken and published on Meta-Wiki. The presentation (first three points in the agenda) will be given in English.
We can answer questions asked in English, French, Polish, and Spanish. If you would like to ask questions in advance, add them [[m:Talk:Community Wishlist Survey|on the Community Wishlist Survey talk page]] or send to sgrabarczuk@wikimedia.org.
[[m:Special:MyLanguage/User:NRodriguez (WMF)|Natalia Rodriguez]] (the [[m:Special:MyLanguage/Community Tech|Community Tech]] manager) will be hosting this meeting.
'''Invitation link'''
* [https://wikimedia.zoom.us/j/89828615390 Join online]
* Meeting ID: 898 2861 5390
* One tap mobile
** +16465588656,,89828615390# US (New York)
** +16699006833,,89828615390# US (San Jose)
* [https://wikimedia.zoom.us/u/kctR45AI8o Dial by your location]
See you! [[User:SGrabarczuk (WMF)|SGrabarczuk (WMF)]] ([[User talk:SGrabarczuk (WMF)|<span class="signature-talk">{{int:Talkpagelinktext}}</span>]]) 03:03, 11 Σταυρί 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SGrabarczuk (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=21980442 -->
== Select You the question statements for candidates of Drafting Committee Movement Charter ==
Into 2021-10-04 11:59:59 UTC you can select [[:m:Movement Charter/Drafting Committee/Election Compass Statements|question statements]] for the [[:m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates|candidates]] of [[:m:Special:MyLanguage/Movement Charter/Drafting Committee|Drafting Committee]] [[:m:Special:MyLanguage/Movement_Charter|Movement Charter]]. ✍️ [[Χρήστες:Dušan Kreheľ|Dušan Kreheľ]] ([[Καλάτσεμαν χρήστε:Dušan Kreheľ|συζήτηση]]) 02:46, 30 Σταυρί 2021 (UTC)
== Alumni and Mentors of Russia 2021 ==
Уважаемые коллеги, пожалуйста выскажите своё мнение по поводу ''[[m:CentralNotice/Request/Alumni and Mentors of Russia 2021|баннерной кампании CentralNotice]]'' для объявления о российском конкурсе статей [[wmru:Конкурсы/Выпускники и наставники России 2021|Конкурсы/Выпускники и наставники России 2021]] (15 сентября - 30 ноября 2021, все IP из России, Википедии, 3 показа в неделю, в течении ноября). Спасибо. [[Χρήστες:JukoFF|JukoFF]] ([[Καλάτσεμαν χρήστε:JukoFF|συζήτηση]]) 13:42, 11 Τρυγομηνά 2021 (UTC)
== Voting for the election for the members for the Movement Charter drafting committee is now open ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content"/>
:''<div class="plainlinks">[[m:Special:MyLanguage/Movement Charter/Drafting Committee/MCDC Voter Email short 12-10-2021|{{int:otherlanguages}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Movement Charter/Drafting Committee/MCDC Voter Email short 12-10-2021}}&language=&action=page&filter= {{int:please-translate}}]''
Voting for the election for the members for the Movement Charter drafting committee is now open. In total, 70 Wikimedians from around the world are running for 7 seats in these elections.
'''Voting is open from October 12 to October 24, 2021.'''
The committee will consist of 15 members in total: The online communities vote for 7 members, 6 members will be selected by the Wikimedia affiliates through a parallel process, and 2 members will be appointed by the Wikimedia Foundation. The plan is to assemble the committee by November 1, 2021.
Learn about each candidate to inform your vote in the language that you prefer: <https://meta.wikimedia.org/wiki/Special:MyLanguage/Movement_Charter/Drafting_Committee/Candidates>
Learn about the Drafting Committee: <https://meta.wikimedia.org/wiki/Special:MyLanguage/Movement_Charter/Drafting_Committee>
We are piloting a voting advice application for this election. Click yourself through the tool and you will see which candidate is closest to you! Check at <https://mcdc-election-compass.toolforge.org/>
Read the full announcement: <https://meta.wikimedia.org/wiki/Special:MyLanguage/Movement_Charter/Drafting_Committee/Elections>
'''Go vote at SecurePoll on:''' <https://meta.wikimedia.org/wiki/Special:MyLanguage/Movement_Charter/Drafting_Committee/Elections>
Best,
Movement Strategy & Governance Team, Wikimedia Foundation
<section end="announcement-content"/>
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 02:25, 14 Τρυγομηνά 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Xeno_(WMF)/Delivery/Wikipedia&oldid=22185710 -->
== Learn how Movement Strategy Implementation Grants can support your Movement Strategy plans ==
<section begin="announcement-content"/>Movement Strategy Implementation grants now provide more than $2,000 USD to put Movement Strategy plans into action. Find out more about [[:m:Special:MyLanguage/Grants:MSIG/About|Movement Strategy Implementation grants, the criteria, and how to apply]].<section end="annoumcent-content"/>
[[User:MNadzikiewicz (WMF)|MNadzikiewicz (WMF)]] ([[User talk:MNadzikiewicz (WMF)#top|talk]]) 13:30, 29 October 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:MNadzikiewicz_(WMF)/Delivery&oldid=22247589 -->
== Meet the new Movement Charter Drafting Committee members ==
<section begin="announcement-content"/>
:''<div class="plainlinks">[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Elections/Results/Announcement|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Movement Charter/Drafting Committee/Elections/Results/Announcement}}&language=&action=page&filter= {{int:please-translate}}]</div>''
The Movement Charter Drafting Committee election and selection processes are complete.
* The [[m:Special:MyLanguage/Movement Charter/Drafting Committee/Elections/Results|election results have been published]]. 1018 participants voted to elect seven members to the committee: '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Richard_Knipel_(Pharos)|Richard Knipel (Pharos)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Anne_Clin_(Risker)|Anne Clin (Risker)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Alice_Wiegand_(lyzzy)|Alice Wiegand (Lyzzy)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Micha%C5%82_Buczy%C5%84ski_(Aegis_Maelstrom)|Michał Buczyński (Aegis Maelstrom)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Richard_(Nosebagbear)|Richard (Nosebagbear)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Ravan_J_Al-Taie_(Ravan)|Ravan J Al-Taie (Ravan)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Ciell_(Ciell)|Ciell (Ciell)]]'''.
* The [[m:Special:MyLanguage/Movement_Charter/Drafting_Committee/Candidates#Affiliate-chosen_members|affiliate process]] has selected six members: '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Anass_Sedrati_(Anass_Sedrati)|Anass Sedrati (Anass Sedrati)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#%C3%89rica_Azzellini_(EricaAzzellini)|Érica Azzellini (EricaAzzellini)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Jamie_Li-Yun_Lin_(Li-Yun_Lin)|Jamie Li-Yun Lin (Li-Yun Lin)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Georges_Fodouop_(Geugeor)|Georges Fodouop (Geugeor)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Manavpreet_Kaur_(Manavpreet_Kaur)|Manavpreet Kaur (Manavpreet Kaur)]]''', '''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Candidates#Pepe_Flores_(Padaguan)|Pepe Flores (Padaguan)]]'''.
* The Wikimedia Foundation has [[m:Special:MyLanguage/Movement_Charter/Drafting_Committee/Candidates#Wikimedia_Foundation-chosen_members|appointed]] two members: '''[[m:Special:MyLanguage/Movement_Charter/Drafting_Committee/Candidates#Runa_Bhattacharjee_(Runab_WMF)|Runa Bhattacharjee (Runab WMF)]]''', '''[[m:Special:MyLanguage/Movement_Charter/Drafting_Committee/Candidates#Jorge_Vargas_(JVargas_(WMF))|Jorge Vargas (JVargas (WMF))]]'''.
The committee will convene soon to start its work. The committee can appoint up to three more members to bridge diversity and expertise gaps.
If you are interested in engaging with [[m:Special:MyLanguage/Movement Charter|Movement Charter]] drafting process, follow the updates [[m:Special:MyLanguage/Movement Charter/Drafting Committee|on Meta]] and join the [https://t.me/joinchat/U-4hhWtndBjhzmSf Telegram group].
With thanks from the Movement Strategy and Governance team<section end="announcement-content"/>
15:53, 5 Αεργί 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:MNadzikiewicz_(WMF)/Delivery&oldid=22300322 -->
== Upcoming Call for Feedback about the Board of Trustees elections ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content />
:''You can find this message translated into additional languages on Meta-wiki.''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees/Call for feedback:2022 Board of Trustees election/Upcoming Call for Feedback about the Board of Trustees elections|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation Board of Trustees/Call for feedback:2022 Board of Trustees election/Upcoming Call for Feedback about the Board of Trustees elections}}&language=&action=page&filter= {{int:please-translate}}]</div>''
The Board of Trustees is preparing a call for feedback about the upcoming Board Elections, from January 7 - February 10, 2022.
While details will be finalized the week before the call, we have confirmed at least two questions that will be asked during this call for feedback:
* What is the best way to ensure fair representation of emerging communities among the Board?
* What involvement should candidates have during the election?
While additional questions may be added, the Movement Strategy and Governance team wants to provide time for community members and affiliates to consider and prepare ideas on the confirmed questions before the call opens. We apologize for not having a complete list of questions at this time. The list of questions should only grow by one or two questions. The intention is to not overwhelm the community with requests, but provide notice and welcome feedback on these important questions.
'''Do you want to help organize local conversation during this Call?'''
Contact the [[m:Special:MyLanguage/Movement Strategy and Governance|Movement Strategy and Governance team]] on Meta, on [https://t.me/wmboardgovernancechat Telegram], or via email at msg[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org.
Reach out if you have any questions or concerns. The Movement Strategy and Governance team will be minimally staffed until January 3. Please excuse any delayed response during this time. We also recognize some community members and affiliates are offline during the December holidays. We apologize if our message has reached you while you are on holiday.
Best,
Movement Strategy and Governance<section end="announcement-content" />
</div>
{{int:thank-you}} [[User:Xeno (WMF)|Xeno (WMF)]] 17:56, 27 Χριστουγενναρί 2021 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery/Wikipedia&oldid=22502754 -->
== Wiki Loves Folklore is back! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:Wiki Loves Folklore Logo.svg|right|150px|frameless]]
You are humbly invited to participate in the '''[[:c:Commons:Wiki Loves Folklore 2022|Wiki Loves Folklore 2022]]''' an international photography contest organized on Wikimedia Commons to document folklore and intangible cultural heritage from different regions, including, folk creative activities and many more. It is held every year from the '''1st till the 28th''' of February.
You can help in enriching the folklore documentation on Commons from your region by taking photos, audios, videos, and [https://commons.wikimedia.org/w/index.php?title=Special:UploadWizard&campaign=wlf_2022 submitting] them in this commons contest.
You can also [[:c:Commons:Wiki Loves Folklore 2022/Organize|organize a local contest]] in your country and support us in translating the [[:c:Commons:Wiki Loves Folklore 2022/Translations|project pages]] to help us spread the word in your native language.
Feel free to contact us on our [[:c:Commons talk:Wiki Loves Folklore 2022|project Talk page]] if you need any assistance.
'''Kind regards,'''
'''Wiki loves Folklore International Team'''
--[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 13:15, 9 Καλανταρί 2022 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/wlf&oldid=22560402 -->
== Δημοσκόπηση Επιθυμιών της Κοινότητας 2022 ==
[[File:Community Wishlist Survey Lamp.svg|right|200px]]
H '''[[m:Special:MyLanguage/Community Wishlist Survey 2022|Δημοσκόπηση Επιθυμιών της Κοινότητας 2022]]''' έχει τώρα ανοίξει!
Η δημοσκόπηση αυτή αποτελεί την μέθοδο μέσω της οποίας οι κοινότητες αποφασίζουν σε τί θα εργαστεί η ομάδα [[m:Special:MyLanguage/Community Tech|Community Tech]] μέσα στην επόμενη χρονιά. Ενθαρρύνουμε όλους να συμβάλλουν με προτάσεις μέχρι τις '''23 Ιανουαρίου''', ή να σχολιάσουν τις υπάρχουσες προτάσεις ώστε να βελτιωθούν.
Οι κοινότητες θα μπορούν να ψηφίσουν τις προτάσεις μεταξύ 28 Ιανουαρίου και 11 Φεβρουαρίου.
Η ομάδα Community Tech εστιάζει σε εργαλεία για έμπειρους συντάκτες. Μπορείτε να συντάξετε προτάσεις σε οποιαδήποτε γλώσσα, και θα τις μεταφράσουμε για εσάς. Ευχαριστούμε και ανυπομονούμε να δούμε τις προτάσεις σας! [[User:SGrabarczuk (WMF)|SGrabarczuk (WMF)]] ([[User talk:SGrabarczuk (WMF)|talk]]) 21:00, 10 Καλανταρί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SGrabarczuk (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:SGrabarczuk_(WMF)/sandbox/MM/Other_TOP30/el&oldid=22381754 -->
== Feminism and Folklore 2022 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
Greetings! You are invited to participate in '''[[:m:Feminism and Folklore 2022|Feminism and Folklore 2022]]''' writing competion. This year Feminism and Folklore will focus on feminism, women biographies and gender-focused topics for the project in league with Wiki Loves Folklore gender gap focus with folk culture theme on Wikipedia.
You can help us in enriching the folklore documentation on Wikipedia from your region by creating or improving articles focused on folklore around the world, including, but not limited to folk festivals, folk dances, folk music, women and queer personalities in folklore, folk culture (folk artists, folk dancers, folk singers, folk musicians, folk game athletes, women in mythology, women warriors in folklore, witches and witch hunting, fairy tales and more. You can contribute to new articles or translate from the list of suggested articles [[:m:Feminism and Folklore 2022/List of Articles|here]].
You can also support us in organizing the contest on your local Wikipedia by signing up your community to participate in this project and also translating the [[m:Feminism and Folklore 2022|project page]] and help us spread the word in your native language.
Learn more about the contest and prizes from our project page. Feel free to contact us on our [[:m:Talk:Feminism and Folklore 2022|talk page]] or via Email if you need any assistance...
Thank you.
'''Feminism and Folklore Team''',
[[User:Tiven2240|Tiven2240]]
--05:49, 11 Καλανταρί 2022 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Tiven2240/wlf&oldid=22574381 -->
== Call for Feedback about the Board of Trustees elections is now open ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />:''[[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Call for Feedback about the Board of Trustees elections is now open/Short|You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Call for Feedback about the Board of Trustees elections is now open/Short|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections/Call for Feedback about the Board of Trustees elections is now open/Short}}&language=&action=page&filter= {{int:please-translate}}]</div>''
The Call for Feedback: Board of Trustees elections is now open and will close on 7 February 2022.
With this Call for Feedback, the Movement Strategy and Governance team is taking a different approach. This approach incorporates community feedback from 2021. Instead of leading with proposals, the Call is framed around key questions from the Board of Trustees. The key questions came from the feedback about the 2021 Board of Trustees election. The intention is to inspire collective conversation and collaborative proposal development about these key questions.
[[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees/Call for feedback: Board of Trustees elections|Join the conversation.]]
Best,
Movement Strategy and Governance<section end="announcement-content" />
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 01:04, 15 Καλανταρί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery/Wikipedia&oldid=22610145 -->
== Subscribe to the This Month in Education newsletter - learn from others and share your stories ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Dear community members,
Greetings from the EWOC Newsletter team and the education team at Wikimedia Foundation. We are very excited to share that we on tenth years of Education Newsletter ([[m:Education/News|This Month in Education]]) invite you to join us by [[m:Global message delivery/Targets/This Month in Education|subscribing to the newsletter on your talk page]] or by [[m:Education/News/Newsroom|sharing your activities in the upcoming newsletters]]. The Wikimedia Education newsletter is a monthly newsletter that collects articles written by community members using Wikimedia projects in education around the world, and it is published by the EWOC Newsletter team in collaboration with the Education team. These stories can bring you new ideas to try, valuable insights about the success and challenges of our community members in running education programs in their context.
If your affiliate/language project is developing its own education initiatives, please remember to take advantage of this newsletter to publish your stories with the wider movement that shares your passion for education. You can submit newsletter articles in your own language or submit bilingual articles for the education newsletter. For the month of January the deadline to submit articles is on the 20th January. We look forward to reading your stories.
Older versions of this newsletter can be found in the [[outreach:Education/Newsletter/Archives|complete archive]].
More information about the newsletter can be found at [[m:Education/News/Publication Guidelines|Education/Newsletter/About]].
For more information, please contact spatnaik{{@}}wikimedia.org.
------
<div style="text-align: center;"><div style="margin-top:10px; font-size:90%; padding-left:5px; font-family:Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif;">[[m:Education/Newsletter/About|About ''This Month in Education'']] · [[m:Global message delivery/Targets/This Month in Education|Subscribe/Unsubscribe]] · [[m:MassMessage|Global message delivery]] · For the team: [[User:ZI Jony|<span style="color:#8B0000">'''ZI Jony'''</span>]] [[User talk:ZI Jony|<sup><span style="color:Green"><i>(Talk)</i></span></sup>]], {{<includeonly>subst:</includeonly>#time:l G:i, d F Y|}} (UTC)</div></div>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:ZI Jony@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:ZI_Jony/MassMessage/Awareness_of_Education_Newsletter/List_of_Village_Pumps&oldid=21244129 -->
== Movement Strategy and Governance News – Issue 5 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="ucoc-newsletter"/>
:''<div class="plainlinks">[[m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5/Global message|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Movement Strategy and Governance/Newsletter/5/Global message}}&language=&action=page&filter= {{int:please-translate}}]</div>''
<span style="font-size:200%;">'''Movement Strategy and Governance News'''</span><br>
<span style="font-size:120%; color:#404040;">'''Issue 5, January 2022'''</span><span style="font-size:120%; float:right;">[[m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5|'''Read the full newsletter''']]</span>
----
Welcome to the fifth issue of Movement Strategy and Governance News (formerly known as Universal Code of Conduct News)! This revamped newsletter distributes relevant news and events about the Movement Charter, Universal Code of Conduct, Movement Strategy Implementation grants, Board elections and other relevant MSG topics.
This Newsletter will be distributed quarterly, while more frequent Updates will also be delivered weekly or bi-weekly to subscribers. Please remember to subscribe [[:m:Special:MyLanguage/Global message delivery/Targets/MSG Newsletter Subscription|here]] if you would like to receive these updates.
<div style="margin-top:3px; padding:10px 10px 10px 20px; background:#fffff; border:2px solid #808080; border-radius:4px; font-size:100%;">
*'''Call for Feedback about the Board elections''' - We invite you to give your feedback on the upcoming WMF Board of Trustees election. This call for feedback went live on 10th January 2022 and will be concluded on 16th February 2022. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5#Call for Feedback about the Board elections|continue reading]])
*'''Universal Code of Conduct Ratification''' - In 2021, the WMF asked communities about how to enforce the Universal Code of Conduct policy text. The revised draft of the enforcement guidelines should be ready for community vote in March. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5#Universal Code of Conduct Ratification|continue reading]])
*'''Movement Strategy Implementation Grants''' - As we continue to review several interesting proposals, we encourage and welcome more proposals and ideas that target a specific initiative from the Movement Strategy recommendations. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5#Movement Strategy Implementation Grants|continue reading]])
*'''The New Direction for the Newsletter''' - As the UCoC Newsletter transitions into MSG Newsletter, join the facilitation team in envisioning and deciding on the new directions for this newsletter. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5#The New Direction for the Newsletter|continue reading]])
*'''Diff Blogs''' - Check out the most recent publications about MSG on Wikimedia Diff. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/5#Diff Blogs|continue reading]])</div><section end="ucoc-newsletter"/>
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 03:28, 29 Καλανταρί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery/Wikipedia&oldid=22704115 -->
== Updates on the Universal Code of Conduct Enforcement Guidelines Review ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/2022-02-02 Announcement|You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/2022-02-02 Announcement|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Enforcement guidelines/2022-02-02 Announcement}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hello everyone,
The Wikimedia Foundation Board of Trustees released a [[m:Special:MyLanguage/Wikimedia Foundation Board noticeboard/January 2022 - Board of Trustees on Community ratification of enforcement guidelines of UCoC|statement on the ratification process]] for the '''[[m:Universal Code of Conduct/Enforcement guidelines|Universal Code of Conduct (UCoC) Enforcement Guidelines]]'''.
The [[m:Universal Code of Conduct|Universal Code of Conduct]] (UCoC) provides a baseline of acceptable behavior for the entire movement. The UCoC and the Enforcement Guidelines were written by [[m:Special:MyLanguage/Universal Code of Conduct/Drafting committee|volunteer-staff drafting committees]] following community consultations.
The revised guidelines were published 24 January 2022 as a proposed way to apply the policy across the movement. There is a [[m:Universal Code of Conduct/Enforcement guidelines/Changes|list of changes made]] to the guidelines after the [[m:Special:MyLanguage/Universal Code of Conduct/Enforcement draft guidelines review|enforcement draft guidelines review]]. '''Comments about the guidelines can be shared [[m:Talk:Universal Code of Conduct/Enforcement guidelines|on the Enforcement Guidelines talk page on Meta-wiki]].'''
To help to understand the guidelines and process, the [[m:Special:MyLanguage/Movement Strategy and Governance|Movement Strategy and Governance]] (MSG) team will be hosting Conversation Hours on 4 February 2022 at 15:00 UTC, 25 February 2022 at 12:00 UTC, and 4 March 2022 at 15:00 UTC. '''[[m:Special:MyLanguage/Universal Code of Conduct/Conversations|Join the conversation hours to speak with the UCoC project team and drafting committee members about the updated guidelines and voting process]].'''
The [[m:Universal Code of Conduct/Project#Timeline|timeline is available on Meta-wiki]]. The voting period is March 7 to 21. All eligible voters will have an opportunity to support or oppose the adoption of the Enforcement guidelines, and share why. '''[[m:Universal Code of Conduct/Enforcement guidelines/Voting|See the voting information page for more details]].'''
Many participants from across the movement have provided valuable input in these ongoing conversations. The UCoC and MSG teams want to thank the Drafting Committee and the community members for their contributions to this process.
Sincerely,
Movement Strategy and Governance<br/>
Wikimedia Foundation<section end="announcement-content" />
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 03:55, 4 Κούντουρονος 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery/Wikipedia&oldid=22704115 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Leadership Development Task Force: Your feedback is appreciated</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />:''[[m:Special:MyLanguage/Leadership Development Task Force/Call for Feedback Announcement|You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Leadership Development Task Force/Call for Feedback Announcement|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Leadership Development Task Force/Call for Feedback Announcement}}&language=&action=page&filter= {{int:please-translate}}]</div>''
The Community Development team at the Wikimedia Foundation is supporting the creation of a global, community-driven Leadership Development Task Force. The purpose of the task force is to advise leadership development work.
The team is looking for feedback about the responsibilities of the Leadership Development Task Force. This Meta page shares the proposal for a [[m:Special:MyLanguage/Leadership Development Task Force|Leadership Development Task Force]] and how [[m:Special:MyLanguage/Leadership Development Task Force/Participate|you can help.]] Feedback on the proposal will be collected from 7 to 25 February 2022.<section end="announcement-content" />
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 02:35, 9 Κούντουρονος 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery/Wikipedia&oldid=22796821 -->
== Wiki Loves Folklore is extended till 15th March ==
<div lang="en" dir="ltr" class="mw-content-ltr">{{int:please-translate}}
[[File:Wiki Loves Folklore Logo.svg|right|frameless|180px]]
Greetings from Wiki Loves Folklore International Team,
We are pleased to inform you that [[:c:Commons:Wiki Loves Folklore|Wiki Loves Folklore]] an international photographic contest on Wikimedia Commons has been extended till the '''15th of March 2022'''. The scope of the contest is focused on folk culture of different regions on categories, such as, but not limited to, folk festivals, folk dances, folk music, folk activities, etc.
We would like to have your immense participation in the photographic contest to document your local Folk culture on Wikipedia. You can also help with the [[:c:Commons:Wiki Loves Folklore 2022/Translations|translation]] of project pages and share a word in your local language.
Best wishes,
'''International Team'''<br />
'''Wiki Loves Folklore'''
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 04:50, 22 Κούντουρονος 2022 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Rockpeterson@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=22754428 -->
== Coming soon ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
=== Several improvements around templates ===
Hello, from March 9, several improvements around templates will become available on your wiki:
* Fundamental improvements of the [[Mw:Special:MyLanguage/Help:VisualEditor/User guide#Editing templates|VisualEditor template dialog]] ([[m:WMDE Technical Wishes/VisualEditor template dialog improvements|1]], [[m:WMDE Technical Wishes/Removing a template from a page using the VisualEditor|2]]),
* Improvements to make it easier to put a template on a page ([[m:WMDE Technical Wishes/Finding and inserting templates|3]]) (for the template dialogs in [[Mw:Special:MyLanguage/Help:VisualEditor/User guide#Editing templates|VisualEditor]], [[Mw:Special:MyLanguage/Extension:WikiEditor#/media/File:VectorEditorBasic-en.png|2010 Wikitext]] and [[Mw:Special:MyLanguage/2017 wikitext editor|New Wikitext Mode]]),
* and improvements in the syntax highlighting extension [[Mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror]] ([[m:WMDE Technical Wishes/Improved Color Scheme of Syntax Highlighting|4]], [[m:WMDE Technical Wishes/Bracket Matching|5]]) (which is available on wikis with writing direction left-to-right).
All these changes are part of the “[[m:WMDE Technical Wishes/Templates|Templates]]” project by [[m:WMDE Technical Wishes|WMDE Technical Wishes]]. We hope they will help you in your work, and we would love to hear your feedback on the talk pages of these projects. </div> - [[m:User:Johanna Strodt (WMDE)|Johanna Strodt (WMDE)]] 12:38, 28 Κούντουρονος 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johanna Strodt (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=22907463 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Remember to Participate in the UCoC Conversations and Ratification Vote!</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Universal Code of Conduct/Enforcement guidelines/Voting/Announcement|You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Voting/Announcement|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Enforcement guidelines/Voting/Announcement}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hello everyone,
A [[m:Special:MyLanguage/Universal_Code_of_Conduct/Enforcement_guidelines/Voting|'''vote in SecurePoll from 7 to 21 March 2022''']] is scheduled as part of the ratification process for the Universal Code of Conduct (UCoC) Enforcement guidelines. Eligible voters are invited to answer a poll question and share comments. [[m:Special:MyLanguage/Universal_Code_of_Conduct/Enforcement_guidelines/Voter_information|Read voter information and eligibility details.]] During the poll, voters will be asked if they support the enforcement of the Universal Code of Conduct based on the proposed guidelines.
The [[m:Special:MyLanguage/Universal Code of Conduct|Universal Code of Conduct]] (UCoC) provides a baseline of acceptable behavior for the entire movement. The [[m:Special:MyLanguage/Universal_Code_of_Conduct/Enforcement_guidelines|revised enforcement guidelines]] were published 24 January 2022 as a proposed way to apply the policy across the movement. A [[m:Special:MyLanguage/Wikimedia_Foundation_Board_noticeboard/January_2022_-_Board_of_Trustees_on_Community_ratification_of_enforcement_guidelines_of_UCoC|Wikimedia Foundation Board statement]] calls for a [[m:Special:MyLanguage/Universal_Code_of_Conduct/Enforcement_guidelines/Voting|ratification process]] where eligible voters will have an opportunity to support or oppose the adoption of the UCoC Enforcement guidelines in a vote. Wikimedians are invited to [[m:Special:MyLanguage/Universal_Code_of_Conduct/Enforcement_guidelines/Voter_information/Volunteer|translate and share important information]]. For more information about the UCoC, please see the [[m:Special:MyLanguage/Universal Code of Conduct/Project|project page]] and [[m:Special:MyLanguage/Universal Code of Conduct/FAQ|frequently asked questions]] on Meta-wiki.
There are events scheduled to learn more and discuss:
* A [[m:Special:MyLanguage/Universal_Code_of_Conduct/Conversations/Panel_Q&A|community panel]] recorded on 18 February 2022 shares perspectives from small- and medium-sized community participants.
* The [[m:Movement Strategy and Governance|Movement Strategy and Governance]] (MSG) team is hosting Conversation Hours on 4 March 2022 at 15:00 UTC. Please [[m:Special:MyLanguage/Universal_Code_of_Conduct/Conversations|'''sign-up''']] to interact with the project team and the drafting committee about the updated enforcement guidelines and the ratification process. See the [[m:Special:MyLanguage/Universal_Code_of_Conduct/2022_conversation_hour_summaries|Conversation Hour summaries]] for notes from 4 February 2022 and 25 February 2022.
You can comment on Meta-wiki talk pages in any language. You may also contact either team by email: msg[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org or ucocproject[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org
Sincerely,
Movement Strategy and Governance <br />
Wikimedia Foundation <br /><section end="announcement-content" />
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 02:17, 2 Μαρτ 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=22916674 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Universal Code of Conduct Enforcement guidelines ratification voting open from 7 to 21 March 2022</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Vote|You can find this message translated into additional languages on Meta-wiki.]]
:''<div class="plainlinks">[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Vote|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Enforcement guidelines/Vote}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hello everyone,
The ratification voting process for the [[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines|revised enforcement guidelines]] of the [[m:Special:MyLanguage/Universal Code of Conduct|Universal Code of Conduct]] (UCoC) is now open! '''[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Voting|Voting commenced on SecurePoll]]''' on 7 March 2022 and will conclude on 21 March 2022. Please [[m:Universal Code of Conduct/Enforcement guidelines/Voter information|read more on the voter information and eligibility details]].
The Universal Code of Conduct (UCoC) provides a baseline of acceptable behavior for the entire movement. The revised enforcement guidelines were published 24 January 2022 as a proposed way to apply the policy across the movement. You can [[m:Special:MyLanguage/Universal Code of Conduct/Project|read more about the UCoC project]].
You can also comment on Meta-wiki talk pages in any language. You may also contact the team by email: ucocproject[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org
Sincerely,
Movement Strategy and Governance
Wikimedia Foundation<section end="announcement-content" />
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 00:52, 8 Μαρτ 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=22962850 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Invitation to Hubs event: Global Conversation on 2022-03-12 at 13:00 UTC</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />Hello!
The Movement Strategy and Governance team of the Wikimedia Foundation would like to invite you to the next event about "Regional and Thematic Hubs". The Wikimedia Movement is in the process of understanding what Regional and Thematic Hubs should be. Our workshop in November was a good start ([[m:Special:MyLanguage/Hubs/Documentation/27 November Workshop|read the report]]), but we're not finished yet.
Over the last weeks we conducted about 16 interviews with groups working on establishing a Hub in their context ([[m:Special:MyLanguage/Hubs/Dialogue|see Hubs Dialogue]]). These interviews informed a report that will serve as a foundation for discussion on March 12. The report is planned to be published on March 9.
The event will take place on March 12, 13:00 to 16:00 UTC on Zoom. Interpretation will be provided in French, Spanish, Arabic, Russian, and Portuguese. Registration is open, and will close on March 10. Anyone interested in the topic is invited to join us. '''[[m:Special:MyLanguage/Hubs/Global Conversations March 12, 2022|More information on the event on Meta-wiki]]'''.
Best regards,
[[m:User:KVaidla (WMF)|Kaarel Vaidla]]<br />Movement Strategy
<section end="announcement-content" />
</div>
01:31, 10 Μαρτ 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=22974079 -->
== Wiki Loves Folklore 2022 ends tomorrow ==
[[File:Wiki Loves Folklore Logo.svg|right|frameless|180px]]
International photographic contest [[:c:Commons:Wiki Loves Folklore 2022| Wiki Loves Folklore 2022]] ends on 15th March 2022 23:59:59 UTC. This is the last chance of the year to upload images about local folk culture, festival, cuisine, costume, folklore etc on Wikimedia Commons. Watch out our social media handles for regular updates and declaration of Winners.
([https://www.facebook.com/WikiLovesFolklore/ Facebook] , [https://twitter.com/WikiFolklore Twitter ] , [https://www.instagram.com/wikilovesfolklore/ Instagram])
The writing competition Feminism and Folklore will run till 31st of March 2022 23:59:59 UTC. Write about your local folk tradition, women, folk festivals, folk dances, folk music, folk activities, folk games, folk cuisine, folk wear, folklore, and tradition, including ballads, folktales, fairy tales, legends, traditional song and dance, folk plays, games, seasonal events, calendar customs, folk arts, folk religion, mythology etc. on your local Wikipedia. Check if your [[:m:Feminism and Folklore 2022/Project Page|local Wikipedia is participating]]
A special competition called '''Wiki Loves Falles''' is organised in Spain and the world during 15th March 2022 till 15th April 2022 to document local folk culture and [[:en:Falles|Falles]] in Valencia, Spain. Learn more about it on [[:ca:Viquiprojecte:Falles 2022|Catalan Wikipedia project page]].
We look forward for your immense co-operation.
Thanks
Wiki Loves Folklore international Team
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 14:40, 14 Μαρτ 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Rockpeterson@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=22754428 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Leadership Development Working Group: Apply to join! (14 March to 10 April 2022)</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Leadership Development Working Group/Participate/Announcement|You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Leadership Development Working Group/Participate/Announcement|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Leadership Development Working Group/Participate/Announcement}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hello everyone,
Thank you to everyone who participated in the feedback period for the [[m:Special:MyLanguage/Leadership Development Working Group|Leadership Development Working Group]] initiative. A [[m:Special:MyLanguage/Leadership Development Working Group/Participate#5. Summary of Call for Feedback|summary of the feedback]] can be found on Meta-wiki. This feedback will be shared with the working group to inform their work. The application period to join the Working Group is now open and will close on April 10, 2022. Please [[m:Special:MyLanguage/Leadership_Development_Working_Group/Purpose_and_Structure#3._How_is_the_working_group_formed_and_structured?|review the information about the working group]], share with community members who might be interested, and '''[[m:Special:MyLanguage/Leadership_Development_Working_Group/Participate#1._How_to_participate|apply if you are interested]]'''.
Thank you,
From the Community Development team<br /><section end="announcement-content" />
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 02:20, 18 Μαρτ 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=22974079 -->
== Feminism and Folklore 2022 ends soon ==
[[File:Feminism and Folklore 2022 logo.svg|right|frameless|250px]]
[[:m:Feminism and Folklore 2022|Feminism and Folklore 2022]] which is an international writing contest organized at Wikipedia ends soon that is on <b>31 March 2022 11:59 UTC</b>. This is the last chance of the year to write about feminism, women biographies and gender-focused topics such as <i>folk festivals, folk dances, folk music, folk activities, folk games, folk cuisine, folk wear, fairy tales, folk plays, folk arts, folk religion, mythology, folk artists, folk dancers, folk singers, folk musicians, folk game athletes, women in mythology, women warriors in folklore, witches and witch hunting, fairy tales and more</i>
Keep an eye on the project page for declaration of Winners.
We look forward for your immense co-operation.
Thanks
Wiki Loves Folklore international Team
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 14:29, 26 Μαρτ 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Rockpeterson@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Rockpeterson/fnf&oldid=23060054 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Universal Code of Conduct Enforcement guidelines ratification voting is now closed</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Vote/Closing message|You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Vote/Closing message|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Enforcement guidelines/Vote/Closing message}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Greetings,
The ratification voting process for the [[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines|revised enforcement guidelines]] of the [[m:Special:MyLanguage/Universal Code of Conduct|Universal Code of Conduct]] (UCoC) came to a close on 21 March 2022. Over {{#expr:2300}} Wikimedians voted across different regions of our movement. Thank you to everyone who participated in this process! The scrutinizing group is now reviewing the vote for accuracy, so please allow up to two weeks for them to finish their work.
The final results from the voting process will be announced [[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Voting/Results|here]], along with the relevant statistics and a summary of comments as soon as they are available. Please check out [[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Voter information|the voter information page]] to learn about the next steps. You can comment on the project talk page [[m:Talk:Universal Code of Conduct/Enforcement guidelines|on Meta-wiki]] in any language. You may also contact the UCoC project team by email: ucocproject[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org
Best regards,
Movement Strategy and Governance<br /><section end="announcement-content" />
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 01:53, 30 Μαρτ 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23079949 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Movement Strategy and Governance News – Issue 6</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="msg-newsletter"/>
<div style = "line-height: 1.2">
<span style="font-size:200%;">'''Movement Strategy and Governance News'''</span><br>
<span style="font-size:120%; color:#404040;">'''Issue 6, April 2022'''</span><span style="font-size:120%; float:right;">[[m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/6|'''Read the full newsletter''']]</span>
----
Welcome to the sixth issue of Movement Strategy and Governance News! This revamped newsletter distributes relevant news and events about the Movement Charter, Universal Code of Conduct, Movement Strategy Implementation grants, Board of trustees elections and other relevant MSG topics.
This Newsletter will be distributed quarterly, while the more frequent Updates will also be delivered weekly. Please remember to subscribe [[m:Special:MyLanguage/Global message delivery/Targets/MSG Newsletter Subscription|here]] if you would like to receive future issues of this newsletter.
</div><div style="margin-top:3px; padding:10px 10px 10px 20px; background:#fffff; border:2px solid #808080; border-radius:4px; font-size:100%;">
*'''Leadership Development -''' A Working Group is Forming! - The application to join the Leadership Development Working Group closed on April 10th, 2022, and up to 12 community members will be selected to participate in the working group. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/6#A1|continue reading]])
*'''Universal Code of Conduct Ratification Results are out! -''' The global decision process on the enforcement of the UCoC via SecurePoll was held from 7 to 21 March. Over 2,300 eligible voters from at least 128 different home projects submitted their opinions and comments. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/6#A2|continue reading]])
*'''Movement Discussions on Hubs -''' The Global Conversation event on Regional and Thematic Hubs was held on Saturday, March 12, and was attended by 84 diverse Wikimedians from across the movement. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/6#A3|continue reading]])
*'''Movement Strategy Grants Remain Open! -''' Since the start of the year, six proposals with a total value of about $80,000 USD have been approved. Do you have a movement strategy project idea? Reach out to us! ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/6#A4|continue reading]])
*'''The Movement Charter Drafting Committee is All Set! -''' The Committee of fifteen members which was elected in October 2021, has agreed on the essential values and methods for its work, and has started to create the outline of the Movement Charter draft. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/6#A5|continue reading]])
*'''Introducing Movement Strategy Weekly -''' Contribute and Subscribe! - The MSG team have just launched the updates portal, which is connected to the various Movement Strategy pages on Meta-wiki. Subscriber to get up-to-date news about the various ongoing projects. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/6#A6|continue reading]])
*'''Diff Blogs -''' Check out the most recent publications about Movement Strategy on Wikimedia Diff. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/6#A7|continue reading]])
</div><section end="msg-newsletter"/>
</div>
Also, a draft of the [[m:Special:MyLanguage/Wikimedia Foundation Annual Plan/2022-2023/draft|'''2022-23 Wikimedia Foundation Annual Plan''']] has been published. Input is being sought on-wiki and during [[:m:Special:MyLanguage/Wikimedia Foundation Annual Plan/2022-2023/Conversations|'''several conversations''' with Wikimedia Foundation CEO Maryana Iskander]].
[[m:Special:MyLanguage/Wikimedia Foundation Annual Plan/2022-2023/Conversations/Announcement|See full announcement on Meta-wiki]]. [[User:Xeno (WMF)|Xeno (WMF)]] 01:45, 22 Απρίλ 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23184989 -->
== New Wikipedia Library Collections Available Now - April 2022 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|upright|The TWL owl says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] has free access to new paywalled reliable sources. You can these and dozens more collections at https://wikipedialibrary.wmflabs.org/:
* '''[https://wikipedialibrary.wmflabs.org/partners/128/ Wiley]''' – journals, books, and research resources, covering life, health, social, and physical sciences
* '''[https://wikipedialibrary.wmflabs.org/partners/125/ OECD]''' – OECD iLibrary, Data, and Multimedia published by the Organisation for Economic Cooperation and Development
* '''[https://wikipedialibrary.wmflabs.org/partners/129/ SPIE Digital Library]''' – journals and eBooks on optics and photonics applied research
Many other sources are freely available for experienced editors, including collections which recently became accessible to all eligible editors: Cambridge University Press, BMJ, AAAS, Érudit and more.
Do better research and help expand the use of high quality references across Wikipedia projects: log in today!
<br>--The Wikipedia Library Team 13:17, 26 Απρίλ 2022 (UTC)
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Samwalton9@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=23036656 -->
== Coming soon: Improvements for templates ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<!--T:11-->
[[File:Overview of changes in the VisualEditor template dialog by WMDE Technical Wishes.webm|thumb|Fundamental changes in the template dialog.]]
Hello, more changes around templates are coming to your wiki soon:
The [[mw:Special:MyLanguage/Help:VisualEditor/User guide#Editing templates|'''template dialog''' in VisualEditor]] and in the [[mw:Special:MyLanguage/2017 wikitext editor|2017 Wikitext Editor]] (beta) will be '''improved fundamentally''':
This should help users understand better what the template expects, how to navigate the template, and how to add parameters.
* [[metawiki:WMDE Technical Wishes/VisualEditor template dialog improvements|project page]], [[metawiki:Talk:WMDE Technical Wishes/VisualEditor template dialog improvements|talk page]]
In '''syntax highlighting''' ([[mw:Special:MyLanguage/Extension:CodeMirror|CodeMirror]] extension), you can activate a '''colorblind-friendly''' color scheme with a user setting.
* [[metawiki:WMDE Technical Wishes/Improved Color Scheme of Syntax Highlighting#Color-blind_mode|project page]], [[metawiki:Talk:WMDE Technical Wishes/Improved Color Scheme of Syntax Highlighting|talk page]]
Deployment is planned for May 10. This is the last set of improvements from [[m:WMDE Technical Wishes|WMDE Technical Wishes']] focus area “[[m:WMDE Technical Wishes/Templates|Templates]]”.
We would love to hear your feedback on our talk pages!
</div> -- [[m:User:Johanna Strodt (WMDE)|Johanna Strodt (WMDE)]] 11:14, 29 Απρίλ 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johanna Strodt (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=23222263 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Editing news 2022 #1</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="message"/><i>[[metawiki:VisualEditor/Newsletter/2022/April|Read this in another language]] • [[m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</i>
[[File:Junior Contributor New Topic Tool Completion Rate.png|thumb|New editors were more successful with this new tool.]]
The [[mw:Special:MyLanguage/Help:DiscussionTools#New discussion tool|New topic tool]] helps editors create new ==Sections== on discussion pages. New editors are more successful with this new tool. You can [[mw:Talk pages project/New topic#21 April 2022|read the report]]. Soon, the Editing team will offer this to all editors at the 20 Wikipedias that participated in the test. You will be able to turn it off at [[Special:Preferences#mw-prefsection-editing-discussion]].<section end="message"/>
</div>
[[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] 18:55, 2 Καλομηνά 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/VisualEditor/Newsletter/Wikis_with_VE&oldid=22019984 -->
== 2022 Board of Trustees Call for Candidates ==
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/Call for Candidates/Short|You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/Call for Candidates/Short|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections/2022/Announcement/Call for Candidates/Short}}&language=&action=page&filter= {{int:please-translate}}]</div>''
The Board of Trustees seeks candidates for the 2022 Board of Trustees election. [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Announcement/Call_for_Candidates|'''Read more on Meta-wiki.''']]
The [[m:Special:MyLanguage/Wikimedia Foundation elections/2022|2022 Board of Trustees election]] is here! Please consider submitting your candidacy to serve on the Board of Trustees.
The Wikimedia Foundation Board of Trustees oversees the Wikimedia Foundation's operations. Community-and-affiliate selected trustees and Board-appointed trustees make up the Board of Trustees. Each trustee serves a three year term. The Wikimedia community has the opportunity to vote for community-and-affiliate selected trustees.
The Wikimedia community will vote to fill two seats on the Board in 2022. This is an opportunity to improve the representation, diversity, and expertise of the Board as a team.
;Who are potential candidates? Are you a potential candidate? Find out more on the [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Apply to be a Candidate|Apply to be a Candidate page]].
Thank you for your support,
Movement Strategy and Governance on behalf of the Elections Committee and the Board of Trustees<br /><section end="announcement-content" />
10:39, 10 Καλομηνά 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23215441 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Revisions to the Universal Code of Conduct (UCoC) Enforcement Guidelines</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''<div class="plainlinks">[[m:Special:MyLanguage/Universal Code of Conduct/Enforcement guidelines/Revision discussions/Announcement|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Enforcement guidelines/Revision discussions/Announcement}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hello all,
We'd like to provide an update on the work on the Enforcement Guidelines for the Universal Code of Conduct. After the conclusion of the community vote on the guidelines in March, the [[m:Special:MyLanguage/Wikimedia Foundation Community Affairs Committee|Community Affairs committee (CAC)]] of the Board [https://lists.wikimedia.org/hyperkitty/list/wikimedia-l@lists.wikimedia.org/thread/JAYQN3NYKCHQHONMUONYTI6WRKZFQNSC/ asked that several areas of the guidelines be reviewed for improvements] before the Board does its final review. These areas were identified based on community discussions and comments provided during the vote. The CAC also requested review of the controversial Note in 3.1 of the UCoC itself.
Once more, a big thank you to all who voted, especially to all who left constructive feedback and comments! The project team is working with the Board to establish a timeline for this work, and will communicate this next month.
Members of the two prior [[m:Special:MyLanguage/Universal Code of Conduct/Drafting committee|UCoC Drafting Committees]] have generously offered their time to help shape improvements to the Guidelines. You can read more about them and their work [[m:Special:MyLanguage/Universal Code of Conduct/Drafting committee#Revisions_Committee|here]], as well as read [[m:Special:MyLanguage/Universal_Code_of_Conduct/Drafting_committee/Phase_2_meeting_summaries#2022|summaries of their weekly meetings in 2022]].
Wikimedians have provided many valuable comments together with the vote and in other conversations. Given the size and diversity of the Wikimedia community, there are even more voices out there who can give ideas on how to improve the enforcement guidelines and add even more valuable ideas to the process. To help the Revisions committee identify improvements, input on several questions for the committee’s review is requested. Visit the Meta-wiki pages ([[m:Special:MyLanguage/Universal_Code_of_Conduct/Enforcement_guidelines/Revision_discussions|Enforcement Guidelines revision discussions]], [[m:Special:MyLanguage/Universal_Code_of_Conduct/Policy text/Revision_discussions|Policy text revision discussions]]) to get your ideas to the Committee - it is very important that viewpoints are heard from different communities before the Committee begins drafting revision proposals.
On behalf of the UCoC project team <br /><section end="announcement-content" />
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 22:56, 3 Κερασινού 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23215441 -->
== Results of Wiki Loves Folklore 2022 is out! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:Wiki Loves Folklore Logo.svg|right|150px|frameless]]
Hi, Greetings
The winners for '''[[c:Commons:Wiki Loves Folklore 2022|Wiki Loves Folklore 2022]]''' is announced!
We are happy to share with you winning images for this year's edition. This year saw over 8,584 images represented on commons in over 92 countries. Kindly see images '''[[:c:Commons:Wiki Loves Folklore 2022/Winners|here]]'''
Our profound gratitude to all the people who participated and organized local contests and photo walks for this project.
We hope to have you contribute to the campaign next year.
'''Thank you,'''
'''Wiki Loves Folklore International Team'''
--[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 16:13, 4 Χορτοθερί 2022 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=23454230 -->
== Propose statements for the 2022 Election Compass ==
:''[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/Propose statements for the 2022 Election Compass| You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/Propose statements for the 2022 Election Compass|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections/2022/Announcement/Propose statements for the 2022 Election Compass}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hi all,
Community members in the [[m:Special:MyLanguage/Wikimedia Foundation elections/2022|2022 Board of Trustees election]] are invited to [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Community_Voting/Election_Compass|propose statements to use in the Election Compass.]]
An Election Compass is a tool to help voters select the candidates that best align with their beliefs and views. The community members will propose statements for the candidates to answer using a Lickert scale (agree/neutral/disagree). The candidates’ answers to the statements will be loaded into the Election Compass tool. Voters will use the tool by entering in their answer to the statements (agree/disagree/neutral). The results will show the candidates that best align with the voter’s beliefs and views.
;Here is the timeline for the Election Compass:
* July 8 - 20: Community members propose statements for the Election Compass
* July 21 - 22: Elections Committee reviews statements for clarity and removes off-topic statements
* July 23 - August 1: Volunteers vote on the statements
* August 2 - 4: Elections Committee selects the top 15 statements
* August 5 - 12: candidates align themselves with the statements
* August 15: The Election Compass opens for voters to use to help guide their voting decision
The Elections Committee will select the top 15 statements at the beginning of August. The Elections Committee will oversee the process, supported by the Movement Strategy and Governance team. MSG will check that the questions are clear, there are no duplicates, no typos, and so on.
Best,
Movement Strategy and Governance
''This message was sent on behalf of the Board Selection Task Force and the Elections Committee''<br /><section end="announcement-content" />
[[User:MNadzikiewicz (WMF)|MNadzikiewicz (WMF)]] ([[User talk:MNadzikiewicz (WMF)|talk]]) 11:34, 14 Χορτοθερί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23215441 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Movement Strategy and Governance News – Issue 7</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="msg-newsletter"/>
<div style = "line-height: 1.2">
<span style="font-size:200%;">'''Movement Strategy and Governance News'''</span><br>
<span style="font-size:120%; color:#404040;">'''Issue 7, July-September 2022'''</span><span style="font-size:120%; float:right;">[[m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7|'''Read the full newsletter''']]</span>
----
Welcome to the 7th issue of Movement Strategy and Governance News! The newsletter distributes relevant news and events about the implementation of Wikimedia's [[:m:Special:MyLanguage/Movement Strategy/Initiatives|Movement Strategy recommendations]], other relevant topics regarding Movement governance, as well as different projects and activities supported by the Movement Strategy and Governance (MSG) team of the Wikimedia Foundation.
The MSG Newsletter is delivered quarterly, while the more frequent [[:m:Special:MyLanguage/Movement Strategy/Updates|Movement Strategy Weekly]] will be delivered weekly. Please remember to subscribe [[m:Special:MyLanguage/Global message delivery/Targets/MSG Newsletter Subscription|here]] if you would like to receive future issues of this newsletter.
</div><div style="margin-top:3px; padding:10px 10px 10px 20px; background:#fffff; border:2px solid #808080; border-radius:4px; font-size:100%;">
* '''Movement sustainability''': Wikimedia Foundation's annual sustainability report has been published. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7#A1|continue reading]])
* '''Improving user experience''': recent improvements on the desktop interface for Wikimedia projects. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7#A2|continue reading]])
* '''Safety and inclusion''': updates on the revision process of the Universal Code of Conduct Enforcement Guidelines. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7#A3|continue reading]])
* '''Equity in decisionmaking''': reports from Hubs pilots conversations, recent progress from the Movement Charter Drafting Committee, and a new white paper for futures of participation in the Wikimedia movement. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7#A4|continue reading]])
* '''Stakeholders coordination''': launch of a helpdesk for Affiliates and volunteer communities working on content partnership. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7#A5|continue reading]])
* '''Leadership development''': updates on leadership projects by Wikimedia movement organizers in Brazil and Cape Verde. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7#A6|continue reading]])
* '''Internal knowledge management''': launch of a new portal for technical documentation and community resources. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7#A7|continue reading]])
* '''Innovate in free knowledge''': high-quality audiovisual resources for scientific experiments and a new toolkit to record oral transcripts. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7#A8|continue reading]])
* '''Evaluate, iterate, and adapt''': results from the Equity Landscape project pilot ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7#A9|continue reading]])
* '''Other news and updates''': a new forum to discuss Movement Strategy implementation, upcoming Wikimedia Foundation Board of Trustees election, a new podcast to discuss Movement Strategy, and change of personnel for the Foundation's Movement Strategy and Governance team. ([[:m:Special:MyLanguage/Movement Strategy and Governance/Newsletter/7#A10|continue reading]])
</div><section end="msg-newsletter"/>
</div>
Thank you for reading! [[User:RamzyM (WMF)|RamzyM (WMF)]] 01:37, 18 Χορτοθερί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23529147 -->
== Announcing the six candidates for the 2022 Board of Trustees election ==
<section begin="announcement-content"/>
:''[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/Announcing the six candidates for the 2022 Board of Trustees election| You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/Announcing the six candidates for the 2022 Board of Trustees election|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections/2022/Announcement/Announcing the six candidates for the 2022 Board of Trustees election}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hi everyone,
'''The Affiliate voting process has concluded.''' Representatives from each Affiliate organization learned about the candidates by reading candidates’ statements, reviewing candidates’ answers to questions, and considering the candidates’ ratings provided by the Analysis Committee. The selected 2022 Board of Trustees candidates are:
* Tobechukwu Precious Friday ([[:m:User:Tochiprecious|Tochiprecious]])
* Farah Jack Mustaklem ([[:m:User:Fjmustak|Fjmustak]])
* Shani Evenstein Sigalov ([[:m:User:Esh77|Esh77]])
* Kunal Mehta ([[:m:User:Legoktm|Legoktm]])
* Michał Buczyński ([[:m:User:Aegis Maelstrom|Aegis Maelstrom]])
* Mike Peel ([[:m:User:Mike Peel|Mike Peel]])
You may see more information about the [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Results|Results]] and [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Stats|Statistics]] of this Board election.
Please take a moment to appreciate the Affiliate Representatives and Analysis Committee members for taking part in this process and helping to grow the Board of Trustees in capacity and diversity. These hours of volunteer work connect us across understanding and perspective. Thank you for your participation.
Thank you to the community members who put themselves forward as candidates for the Board of Trustees. Considering joining the Board of Trustees is no small decision. The time and dedication candidates have shown to this point speaks to their commitment to this movement. Congratulations to those candidates who have been selected. A great amount of appreciation and gratitude for those candidates not selected. Please continue to share your leadership with Wikimedia.
Thank you to those who followed the Affiliate process for this Board election. You may review the results of the Affiliate selection process.
'''The next part of the Board election process is the community voting period.''' [[m:Special:MyLanguage/Wikimedia Foundation elections/2022#Timeline|You may view the Board election timeline here]]. To prepare for the community voting period, there are several things community members can engage with in the following ways:
* [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Candidates|Read candidates’ statements]] and read the candidates’ answers to the questions posed by the Affiliate Representatives.
* [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Community_Voting/Questions_for_Candidates|Propose and select the 6 questions for candidates to answer during their video Q&A]].
* See the [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Candidates|Analysis Committee’s ratings of candidates on each candidate’s statement]].
* [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Community Voting/Election Compass|Propose statements for the Election Compass]] voters can use to find which candidates best fit their principles.
* Encourage others in your community to take part in the election.
Best,
Movement Strategy and Governance
''This message was sent on behalf of the Board Selection Task Force and the Elections Committee''
</div><section end="announcement-content"/>
[[User:MNadzikiewicz (WMF)|MNadzikiewicz (WMF)]] 14:03, 27 Χορτοθερί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23530132 -->
== Vote for Election Compass Statements ==
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/Vote for Election Compass Statements| You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/Vote for Election Compass Statements|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections/2022/Announcement/Vote for Election Compass Statements}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hi all,
Volunteers in the [[m:Special:MyLanguage/Wikimedia Foundation elections/2022|2022 Board of Trustees election]] are invited to [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Community_Voting/Election_Compass/Statements|vote for statements to use in the Election Compass]]. You can vote for the statements you would like to see included in the Election Compass on Meta-wiki.
An Election Compass is a tool to help voters select the candidates that best align with their beliefs and views. The community members will propose statements for the candidates to answer using a Lickert scale (agree/neutral/disagree). The candidates’ answers to the statements will be loaded into the Election Compass tool. Voters will use the tool by entering in their answer to the statements (agree/disagree/neutral). The results will show the candidates that best align with the voter’s beliefs and views.
Here is the timeline for the Election Compass:
*<s>July 8 - 20: Volunteers propose statements for the Election Compass</s>
*<s>July 21 - 22: Elections Committee reviews statements for clarity and removes off-topic statements</s>
*July 23 - August 1: Volunteers vote on the statements
*August 2 - 4: Elections Committee selects the top 15 statements
*August 5 - 12: candidates align themselves with the statements
*August 15: The Election Compass opens for voters to use to help guide their voting decision
The Elections Committee will select the top 15 statements at the beginning of August
Best,
Movement Strategy and Governance
''This message was sent on behalf of the Board Selection Task Force and the Elections Committee''
</div><section end="announcement-content" />
[[User:MNadzikiewicz (WMF)|MNadzikiewicz (WMF)]] 21:01, 27 Χορτοθερί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23530132 -->
== The 2022 Board of Trustees election Community Voting period is now open ==
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/The 2022 Board of Trustees election Community Voting period is now open| You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Announcement/The 2022 Board of Trustees election Community Voting period is now open|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections/2022/Announcement/The 2022 Board of Trustees election Community Voting period is now open}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hi everyone,
The Community Voting period for the [[m:Special:MyLanguage/Wikimedia Foundation elections/2022|2022 Board of Trustees election]] is now open. Here are some helpful links to get you the information you need to vote:
* Try the [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Community_Voting/Election_Compass|Election Compass]], showing how candidates stand on 15 different topics.
* Read the [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Candidates|candidate statements]] and [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Affiliate_Organization_Participation/Candidate_Questions|answers to Affiliate questions]]
* [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Apply to be a Candidate|Learn more about the skills the Board seeks]] and how the [[m:Special:MyLanguage/Wikimedia Foundation elections/2022/Candidates|Analysis Committee found candidates align with those skills]]
If you are ready to vote, you may go to [[Special:SecurePoll/vote/Wikimedia_Foundation_Board_Elections_2022|SecurePoll voting page]] to vote now. '''You may vote from August 23 at 00:00 UTC to September 6 at 23:59 UTC.''' To see about your voter eligibility, please visit the [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2022/Voter_eligibility_guidelines|voter eligibility page]].
Best,
Movement Strategy and Governance
''This message was sent on behalf of the Board Selection Task Force and the Elections Committee''<br /><section end="announcement-content" />
[[User:MNadzikiewicz_(WMF)|MNadzikiewicz (WMF)]]
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23708360 -->
== Invitation to join the Movement Strategy Forum ==
:''{{More languages}}''
<section begin="announcement-content" />
Hello everyone,
The [https://forum.movement-strategy.org/ Movement Strategy Forum] (MS Forum) is a multilingual collaborative space for all conversations about Movement Strategy implementation.
We are inviting all Movement participants to collaborate on the MS Forum. The goal of the forum is to build community collaboration, using an inclusive multilingual platform.
The [[m:Movement Strategy|Movement Strategy]] is a collaborative effort to imagine and build the future of the Wikimedia Movement. Anyone can contribute to the Movement Strategy, from a comment to a full-time project.
;Join this forum with your Wikimedia account, engage in conversations, and ask questions in your language.
The Movement Strategy and Governance team (MSG) launched the proposal for the MS Forum in May 2022. There was a 2-month community review period, which ended on 24 July 2022. The community review process included several questions that resulted in interesting conversations. You can read the [https://forum.movement-strategy.org/t/ms-forum-community-review-report/1436 Community Review Report].
We look forward to seeing you at the MS Forum!
Best regards,
the Movement Strategy and Governance Team
[[User:MNadzikiewicz (WMF)]] 11:32, 29 Aλωναρί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23720620 -->
== The Vector 2022 skin as the default in two weeks? ==
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:Wikimania 2022 Vector (2022) Presentation.pdf|thumb|The slides for our presentation at Wikimania 2022|page=26]]
Hello. I'm writing on behalf of the [[mw:Reading/Web|Wikimedia Foundation Web team]]. '''In two weeks, we would like to make the Vector 2022 skin the default on this wiki.'''
We have been working on it for the past three years. So far, it has been the default on more than 30 wikis, including sister projects, all accounting for more than 1 billion pageviews per month. On average [[phab:T317529#8246686|87% of active logged-in users]] of those wikis use Vector 2022.
It would become the default for all logged-out users, and also all logged-in users who currently use Vector legacy. Logged-in users can at any time switch to [[Special:Preferences#mw-prefsection-rendering|any other skins]]. No changes are expected for users of these skins.
<div style="width:100%; margin:auto;"><gallery widths="220" heights="150" mode="packed" caption="Top of an article">
Screenshot Historia da moeda do Tíbet - 2022-09-22 - Vector 2010 top.png|Vector legacy (current default)
Screenshot Historia da moeda do Tíbet - 2022-09-22 - Vector 2022 top.png|Vector 2022
</gallery><gallery widths="220" heights="150" mode="packed" caption="A section of an article">
Screenshot Historia da moeda do Tíbet - 2022-09-22 - Vector 2010 scrolled.png|Vector legacy (current default)
Screenshot Historia da moeda do Tíbet - 2022-09-22 - Vector 2022 scrolled.png|Vector 2022
</gallery></div>
=== About the skin ===
'''[Why is a change necessary]''' The current default skin meets the needs of the readers and editors as these were 13 years ago. Since then, new users have begun using Wikimedia projects. [https://diff.wikimedia.org/2022/08/18/prioritizing-equity-within-wikipedias-new-desktop/ The old Vector doesn't meet their needs.]
'''[Objective]''' The objective for the new skin is to make the interface more welcoming and comfortable for readers and useful for advanced users. It draws inspiration from previous requests, the [[metawiki:Special:MyLanguage/Community_Wishlist_Survey|Community Wishlist Surveys]], and gadgets and scripts. The work helped our code follow the standards and improve all other skins. [[phab:phame/post/view/290/how_and_why_we_moved_our_skins_to_mustache/|We reduced PHP code in Wikimedia deployed skins by 75%]]. The project has also focused on making it easier to support gadgets and use APIs.
'''[Changes and test results]''' The skin introduces a [[mw:Special:MyLanguage/Reading/Web/Desktop Improvements/Features|series of changes]] that improve readability and usability. The new skin does not remove any functionality currently available on the Vector skin.
* The sticky header makes it easier to find tools that editors use often. It decreases scrolling to the top of the page by 16%.
* The new table of contents makes it easier to navigate to different sections. Readers and editors jumped to different sections of the page 50% more than with the old table of contents. It also looks a bit different on talk pages.
* The new search bar is easier to find and makes it easier to find the correct search result from the list. This increased the amount of searches started by 30% on the wikis we tested on.
* The skin does not negatively affect pageviews, edit rates, or account creation. There is evidence of increases in pageviews and account creation across partner communities.
'''[Try it out]''' Try out the new skin by going to the appearance tab in [[Special:Preferences#mw-prefsection-rendering|your preferences]] and selecting Vector 2022 from the list of skins.
=== How can editors change and customize this skin? ===
It's possible to configure and personalize our changes. We support volunteers who create new gadgets and user scripts. Check out [[mw:Special:MyLanguage/Reading/Web/Desktop Improvements/Repository|our repository]] for a list of currently available customizations, or add your own.
=== Our plan ===
'''If no large concerns are raised, we plan on deploying in the week of October 3, 2022'''. If your community would like to request more time to discuss the changes, hit the button and write to us. We can adjust the calendar.
<div style="text-align: center;">[[mw:Talk:Reading/Web/Desktop Improvements|<span class="plainlinks mw-ui-button">Request for more time to discuss the change</span>]]</div>
If you'd like ask our team anything, if you have questions, concerns, or additional thoughts, please ping me here or write on the [[mw:Talk:Reading/Web/Desktop Improvements|talk page of the project]]. We will gladly answer! Also, [[mw:Reading/Web/Desktop Improvements/Frequently asked questions|see our FAQ]]. Thank you! [[mw:User:SGrabarczuk (WMF)|SGrabarczuk (WMF)]] ([[mw:User talk:SGrabarczuk (WMF)|talk]]) 04:15, 22 Σταυρί 2022 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:SGrabarczuk (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:SGrabarczuk_(WMF)/sandbox/MM/Varia&oldid=23838600 -->
== Update on Vector 2022 ==
[[File:Screenshot Historia da moeda do Tíbet - 2022-09-22 - Vector 2022 scrolled.png|thumb]]
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello. I'm sorry for not communicating in your language. I'll be grateful if you translated my message. I'm writing on behalf of the [[mw:Reading/Web|Web team]] working on the new skin, [[mw:Special:MyLanguage/Reading/Web/Desktop Improvements|Vector 2022]].
We wanted to apologize for the delays in the deployment of Vector 2022. We know many of you are waiting for this eagerly. We have been delaying the deployment because we have been working on the logos. It has taken us more time than originally expected. Once the logos are ready, we will let you know the exact date of deployment. '''We are planning for either the next (more likely) or the following week'''. If your wiki doesn't currently have a localized logo, we encourage you to [[mw:Talk:Reading/Web/Desktop Improvements|reach out to us]] and we can help make one.
We invite you to [[mw:Special:MyLanguage/Reading/Web/Desktop Improvements#contact|get involved in the project]]. Contact us if you have any questions or need any help, particularly with the compatibility of gadgets and user scripts. Thank you! [[User:SGrabarczuk (WMF)|SGrabarczuk (WMF)]] ([[User talk:SGrabarczuk (WMF)|talk]]) 23:24, 19 Τρυγομηνά 2022 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:SGrabarczuk (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:SGrabarczuk_(WMF)/sandbox/MM/Varia&oldid=23955535 -->
== Invitation to attend “Ask Me Anything about Movement Charter” Sessions ==
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Movement Charter/Community Consultation/Announcement/Ask Me Anything Sessions|You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Movement Charter/Community Consultation/Announcement/Ask Me Anything Sessions|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Movement Charter/Community Consultation/Announcement/Ask Me Anything Sessions}}&language=&action=page&filter= {{int:please-translate}}]
Hello all,
During the 2022 Wikimedia Summit, the [[m:Special:MyLanguage/Movement Charter/Drafting Committee|Movement Charter Drafting Committee]] (MCDC) presented the first outline of the Movement Charter, giving a glimpse on the direction of its future work, and the Charter itself. The MCDC then integrated the initial feedback collected during the Summit. Before proceeding with writing the Charter for the whole Movement, the MCDC wants to interact with community members and gather feedback on the drafts of the three sections: Preamble, Values & Principles, and Roles & Responsibilities (intentions statement). The Movement Charter drafts will be available on the Meta page [[m:Special:MyLanguage/Movement Charter/Content|here]] on November 14, 2022. Community wide consultation period on MC will take place from November 20 to December 18, 2022. Learn more about it [[m:Special:MyLanguage/Movement Charter/Community Consultation|here]].
With the goal of ensuring that people are well informed to fully participate in the conversations and are empowered to contribute their perspective on the Movement Charter, three '''“Ask Me Anything about Movement Charter"''' sessions have been scheduled in different time zones. Everyone in the Wikimedia Movement is invited to attend these conversations. The aim is to learn about Movement Charter - its goal, purpose, why it matters, and how it impacts your community. MCDC members will attend these sessions to answer your questions and hear community feedback.
The “Ask Me Anything” sessions accommodate communities from different time zones. Only the presentation of the session is recorded and shared afterwards, no recording of conversations. Below is the list of planned events:
*<s>'''Asia/Pacific''': November 4, 2022 at 09:00 UTC ([https://zonestamp.toolforge.org/1667552400 your local time]). Interpretation is available in Chinese and Japanese.</s>
* '''Europe/MENA/Sub Saharan Africa''': November 12, 2022 at 15:00 UTC ([https://zonestamp.toolforge.org/1668265257 your local time]). Interpretation is available in Arabic, French and Russian.
* '''North and South America/ Western Europe''': November 12, 2022 at 15:00 UTC ([https://zonestamp.toolforge.org/1668265257 your local time]). Interpretation is available in Spanish and Portuguese.
On the [[m:Special:MyLanguage/Movement Charter/Community Consultation|Meta page]] you will find more details; Zoom links will be shared 48 hours ahead of the call.
'''Call for Movement Charter Ambassadors'''
Individuals or groups from all communities who wish to help include and start conversations in their communities on the Movement Charter are encouraged to become [[m:Special:MyLanguage/Movement Strategy and Governance/Movement Charter Ambassadors Program/About|Movement Charter Ambassadors]] (MC Ambassadors). MC Ambassadors will carry out their own activities and get financial support for enabling conversations in their own languages. [[m:Special:MyLanguage/Movement Strategy and Governance/Team|Regional facilitators]] from the Movement Strategy and Governance team are available to support applicants with MC Ambassadors grantmaking. If you are interested please sign up [[m:Special:MyLanguage/Movement Strategy and Governance/Movement Charter Ambassadors Program/About|here]]. Should you have specific questions, please reach out to the MSG team via email: strategy2030@wikimedia.org or on the MS forum.
We thank you for your time and participation.
On behalf of the Movement Charter Drafting Committee,<section end="announcement-content" />
[[User:MNadzikiewicz (WMF)|MNadzikiewicz (WMF)]] 15:33, 7 Αεργί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23914777 -->
== Apply for Funding through the Movement Strategy Community Engagement Package to Support Your Community ==
:''{{More languages}}''
<section begin="announcement-content" />
The Wikimedia Movement Strategy implementation is a collaborative effort for all Wikimedians.
[[m:Special:MyLanguage/Grants:MSIG/About|Movement Strategy Implementation Grants]] support projects that take the current state of a [[m:Special:MyLanguage/Movement Strategy/Initiatives|Movement Strategy Initiative]] and push it one step forward. If you are looking for an example or some guide on how to engage your community further on Movement Strategy and the Movement Strategy Implementation Grants specifically, you may find this '''[[m:Special:MyLanguage/Grants:MSIG/Community Engagement Package|community engagement package]]''' helpful.
The goal of this community engagement package is to support more people to access the funding they might need for the implementation work. By becoming a recipient of this grant, you will be able to support other community members to develop further grant applications that fit with your local contexts to benefit your own communities. With this package, the hope is to break down language barriers and to ensure community members have needed information on Movement Strategy to connect with each other. Movement Strategy is a two-way exchange, we can always learn more from the experiences and knowledge of Wikimedians everywhere. We can train and support our peers by using this package, so more people can make use of this great funding opportunity.
If this information interests you or if you have any further thoughts or questions, please do not hesitate to reach out to us as your [[m:Special:MyLanguage/Movement_Strategy_and_Governance/Team|regional facilitators]] to discuss further. We will be more than happy to support you. When you are ready, follow the steps on [[m:Special:MyLanguage/Grants:MSIG/About |this page]] to apply. We look forward to receiving your application.
Best regards, <br> Movement Strategy and Governance Team <br> Wikimedia Foundation<section end="announcement-content" />
[[User:MNadzikiewicz (WMF)|MNadzikiewicz (WMF)]] 16:26, 14 Αεργί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23914777 -->
== Opportunities open for the Ombuds commission and the Case Review Committee ==
<section begin="announcement-content" />
<div style="margin:.2em 0 .5em;margin-{{#switch:{{PAGELANGUAGE}}|ar|arc|ary|arz|azb|bcc|bgn|ckb|bqi|dv|fa|fa-af|glk|ha-arab|he|kk-arab|kk-cn|ks|ku-arab|ms-arab|mzn|pnb|prd|ps|sd|ug|ur|ydd|yi=right|left}}:3ex;">
[[m:Special:MyLanguage/Wikimedia Foundation Legal department/Announcement/2023 OC and CRC appointments process|''You can find this message translated into additional languages on Meta-wiki.'']]
''<span class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation Legal department/Announcement/2023 OC and CRC appointments process|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation Legal department/Announcement/2023 OC and CRC appointments process}}&language=&action=page&filter= {{int:please-translate}}]</span>''
</div>
Hi everyone! The Ombuds commission (OC) and the Case Review Committee (CRC) are looking for members. People are encouraged to nominate themselves or encourage others they feel would contribute to these groups to do so. There is more information below about the opportunity and the skills that are needed.
'''About the Ombuds commission'''
The Ombuds commission (OC) works on all Wikimedia projects to investigate complaints about violations of the privacy policy, especially in use of [[m:Special:MyLanguage/CheckUser policy|CheckUser]] and [[m:Special:MyLanguage/Oversight policy|Oversight]] (also known as Suppression) tools. The Commission mediates between the parties of the investigation and, when violations of the policies are identified, advises the Wikimedia Foundation on best handling. They may also assist the General Counsel, the Chief Executive Officer, or the Board of Trustees of the Foundation in these investigations when legally necessary. For more on the OC's duties and roles, '''[[m:Special:MyLanguage/Ombuds commission|see Ombuds commission on Meta-Wiki]]'''.
Volunteers serving in this role should be experienced Wikimedians, active on any project, who have previously used the CheckUser/Oversight tools OR who have the technical ability to understand these tools and the willingness to learn them. They must be able to communicate in English, the common language of the commission. They are expected to be able to engage neutrally in investigating these concerns and to know when to recuse when other roles and relationships may cause conflict. Commissioners will serve '''two-year terms''' (note that this is different from past years, when the terms have been for one year).
'''About the Case Review Committee'''
The Case Review Committee (CRC) reviews appeals of eligible Trust & Safety office actions. The CRC is a critical layer of oversight to ensure that Wikimedia Foundation office actions are fair and unbiased. They also make sure the Wikimedia Foundation doesn’t overstep established practices or boundaries. For more about the role, '''[[m:Special:MyLanguage/Case Review Committee|see Case Review Committee on Meta-Wiki]]'''.
We are looking for current or former functionaries and experienced volunteers with an interest in joining this group. Applicants must be fluent in English (additional languages are a strong plus) and willing to abide by the [[m:Special:MyLanguage/Trust_and_Safety/Case_Review_Committee/Charter|terms of the Committee charter]]. If the work resonates and you qualify, please apply. Committee members will serve '''two-year terms''' (note that this is different from past years, when the terms have been for one year).
'''Applying to join either of these groups'''
Members are required to sign the [[m:Special:MyLanguage/Confidentiality agreement for nonpublic information|Confidentiality agreement for nonpublic information]] and must be willing to comply with the appropriate Wikimedia Foundation board policies (such as the [[m:Special:MyLanguage/Access to nonpublic information policy|access to non-public information policy]] and the [[foundation:Special:MyLanguage/Privacy policy|Foundation privacy policy]]). These positions requires a high degree of discretion and trust. Members must also be over 18 years of age.
'''If you are interested in serving in either capacity listed above,''' please write in English to the Trust and Safety team at ca[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org (to apply to the OC) or to the Legal Team at legal[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org (to apply to the CRC) with information about:
* Your primary projects
* Languages you speak/write
* Any experience you have serving on committees, whether movement or non-movement
* Your thoughts on what you could bring to the OC or CRC if appointed
* Any experience you have with the Checkuser or Oversight tools (OC only)
* Any other information you think is relevant
'''The deadline for applications is 31 December 2022 in any timezone.'''
Please feel free to pass this invitation along to any users who you think may be qualified and interested. Thank you!
On behalf of the Committee Support team,<br /><section end="announcement-content" />
<!-- Το μήνυμα στάλθηκε από τον User:MNadzikiewicz (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Movement_Strategy_and_Governance/Delivery&oldid=23914777 -->
== Community Wishlist Survey 2023 opens in January! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''{{int:Please-translate}}''
{{int:Hello}}
The [[m:Community Wishlist Survey 2023|'''Community Wishlist Survey (CWS) 2023''']], which lets contributors propose and vote for tools and improvements, starts next month on Monday, [https://zonestamp.toolforge.org/1674496831 23 January 2023, at 18:00 UTC] and will continue annually.
We are inviting you to share your ideas for technical improvements to our tools and platforms. Long experience in editing or technical skills is not required. If you have ever used our software and thought of an idea to improve it, this is the place to come share those ideas!
The dates for the phases of the Survey will be as follows:
* Phase 1: Submit, discuss, and revise proposals – Monday, Jan 23, 2023 to Sunday, Feb 6, 2023
* Phase 2: WMF/Community Tech reviews and organizes proposals – Monday, Jan 30, 2023 to Friday, Feb 10, 2023
* Phase 3: Vote on proposals – Friday, Feb 10, 2023 to Friday, Feb 24, 2023
* Phase 4: Results posted – Tuesday, Feb 28, 2023
If you want to start writing out your ideas ahead of the Survey, you can start thinking about your proposals and draft them in [[m:Community Wishlist Survey/Sandbox|the CWS sandbox]].
We are grateful to all who participated last year. See you in January 2023!
</div>
{{int:Feedback-thanks-title}} <bdi lang="en" dir="ltr">Community Tech, [[m:User:STei (WMF)|STei (WMF)]]</bdi> 12:59, 13 Χριστουγενναρί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Sannita (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:STei_(WMF)/CWS_2023_List&oldid=24226232 -->
== Vote for your favourite Wikimedia sound logo ==
''{{int:Please-translate}}''
''We are really sorry for posting in English''
[[Αρχείον:Sound_Logo_Cover_Image_-_Linkedin.png|κέντρο|800x800εσ]]
Voting in the Wikimedia sound logo contest [[c:Commons:Sound_Logo_Vote|'''has started''']]. From December 6 to 19, 2022, please play a part and help chose the sound that will identify Wikimedia content on audio devices. [[wmfblog:2022/12/06/vote-for-the-sound-of-all-human-knowledge/|Learn more on Diff]].
The sound logo team is grateful to everyone who participated in this global contest. We received 3,235 submissions from 2,094 participants in 135 countries. We are incredibly grateful to the team of [[wmfblog:2022/10/31/screening-3235-sound-submissions/|volunteer screeners]] and the [https://meta.wikimedia.org/wiki/Communications/Sound_Logo/Contest_proposal#How_will_the_final_selection_happen? selection committee] who, among others, helped bring us to where we are today. It is now up to Wikimedia to choose the Sound Of All Human Knowledge.
Best wishes, [[Χρήστες:Arupako-WMF|Arupako-WMF]] ([[Καλάτσεμαν χρήστε:Arupako-WMF|συζήτηση]]) 16:06, 17 Χριστουγενναρί 2022 (UTC)
== Feminism and Folklore 2023 ==
<div style="border:8px maroon ridge;padding:6px;>
[[File:Feminism and Folklore 2023 logo.svg|centre|550px|frameless]]
::<div lang="en" dir="ltr" class="mw-content-ltr">
<center>''{{int:please-translate}}''</center>
Dear Wiki Community,
Christmas Greetings and a Happy New Year 2023,
You are humbly invited to organize the '''[[:m:Feminism and Folklore 2023|Feminism and Folklore 2023]]''' writing competition from February 1, 2023, to March 31, 2023 on your local Wikipedia. This year, Feminism and Folklore will focus on feminism, women's issues, and gender-focused topics for the project, with a [[:c:Commons:Wiki Loves Folklore 2023|Wiki Loves Folklore]] gender gap focus and a folk culture theme on Wikipedia.
You can help Wikipedia's coverage of folklore from your area by writing or improving articles about things like folk festivals, folk dances, folk music, women and queer folklore figures, folk game athletes, women in mythology, women warriors in folklore, witches and witch hunting, fairy tales, and more. Users can help create new articles, expand or translate from a [[:m:Feminism and Folklore 2023/List of Articles|list]] of suggested articles.
Organisers are requested to work on the following action items to sign up their communities for the project:
# Create a page for the contest on the local wiki.
# Set up a fountain tool or dashboard.
# Create the local list and mention the timeline and local and international prizes.
# Request local admins for site notice.
# Link the local page and the fountain/dashboard link on the [[:m:Feminism and Folklore 2023/Project Page|meta project page]].
This year we would be supporting the community's financial aid for Internet and childcare support. This would be provided for the local team including their jury and coordinator team. This support is opt-in and non mandatory. Kindly fill in [https://docs.google.com/forms/d/e/1FAIpQLSea81OO0lVgUBd551iIiENXht7BRCISYZlKyBQlemZu_j2OHQ/viewform this Google form] and mark a mail to [mailto:support@wikilovesfolklore.org support@wikilovesfolklore.org] with the subject line starting as [Stipend] Name or Username/Language. The last date to sign up for internet and childcare aid from our team is 20th of January 2023, We encourage the language coordinators to sign up their community on this link by the 25th of January 2023.
Learn more about the contest and prizes on our [[:m:Feminism and Folklore 2023|project page]]. Feel free to contact us on our [[:m:Talk:Feminism and Folklore 2023/Project Page|meta talk page]] or by email us if you need any assistance.
We look forward to your immense coordination.
Thank you and Best wishes,
[[:m:Feminism and Folklore 2023|Feminism and Folklore 2023 International Team]]
::::Stay connected [[File:B&W Facebook icon.png|link=https://www.facebook.com/feminismandfolklore/|30x30px]] [[File:B&W Twitter icon.png|link=https://twitter.com/wikifolklore|30x30px]]
</div></div>
--[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 10:24, 24 Χριστουγενναρί 2022 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery/Wikipedia&oldid=23942484 -->
== Global ban for PlanespotterA320/RespectCE ==
Per the [[m:Global bans|Global bans]] policy, I'm informing the project of this request for comment: [[m:Requests for comment/Global ban for PlanespotterA320 (2) ]] about banning a member from your community. Thank you.--[[User:Lemonaka|Lemonaka]] ([[User talk:Lemonaka|talk]]) 21:40, 6 February 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Zabe@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Lemonaka/Massmessagelist&oldid=24501599 -->
== Editing news 2023 #1 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="message"/><i>[[m:Special:MyLanguage/VisualEditor/Newsletter/2023/February|Read this in another language]] • [[m:Special:MyLanguage/VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]</i>
This newsletter includes two key updates about the [[mw:Special:MyLanguage/Editing team|Editing]] team's work:
# The Editing team will finish adding new features to the [[mw:Special:MyLanguage/Talk pages project|Talk pages project]] and deploy it.
# They are beginning a new project, [[mw:Special:MyLanguage/Edit check|Edit check]].
<strong>Talk pages project</strong>
[[File:Page Frame Features on desktop.png|alt=Screenshot showing the talk page design changes that are currently available as beta features at all Wikimedia wikis. These features include information about the number of people and comments within each discussion.|thumb|300px|Some of the upcoming changes]]
The Editing team is nearly finished with this first phase of the [[mw:Special:MyLanguage/Talk_pages_project|Talk pages project]]. Nearly all [[mw:Special:MyLanguage/Talk pages project/Usability|new features]] are available now in the [[Special:Preferences#mw-prefsection-betafeatures|Beta Feature for {{int:discussiontools-preference-label}}]].
It will show information about how active a discussion is, such as the date of the most recent comment. There will soon be a new "{{int:skin-action-addsection}}" button. You will be able to turn them off at [[Special:Preferences#mw-prefsection-editing-discussion]]. Please [[mw:Special:MyLanguage/Talk:Talk_pages_project/Usability#c-PPelberg_(WMF)-20230215001000-Feedback:_Proposed_Revisions_to_%22Add_topic%22_button|tell them what you think]].
[[File:Daily edit completion rates mobile talk pages.png|thumb|300px|Daily edit completion rate by test group: DiscussionTools (test group) and MobileFrontend overlay (control group)]]
An A/B test for [[mw:Special:MyLanguage/Talk pages project/Mobile|{{int:discussiontools-preference-label}} on the mobile site]] has finished. Editors were [[mw:Special:MyLanguage/Talk_pages_project/Mobile#Status_Updates|more successful with {{int:discussiontools-preference-label}}]]. The Editing team is enabling these features for all editors on the mobile site.
<strong>New Project: Edit Check</strong>
The Editing team is beginning [[mw:Special:MyLanguage/Edit check|a project to help new editors of Wikipedia]]. It will help people identify some problems before they click "{{int:publishchanges}}". The first tool will encourage people to add references when they add new content. Please [[mw:Special:MyLanguage/Help:Watchlist|watch]] that page for more information. You can [[mw:Special:MyLanguage/Editing_team/Community_Conversations#20230303|join a conference call on 3 March 2023]] to learn more.<section end="message"/>
</div>
–[[User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[User talk:Whatamidoing (WMF)|{{int:Talkpagelinktext}}]]) 23:24, 22 Κούντουρονος 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/VisualEditor/Newsletter/Wikis_with_VE&oldid=24611966 -->
== <span lang="el" dir="ltr" class="mw-content-ltr">Your wiki will be in read only soon</span> ==
<div lang="el" dir="ltr" class="mw-content-ltr">
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Διαβάστε αυτό το μήνυμα σε άλλη γλώσσα]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
Το [[foundation:|Ἰδρυμα Wikimedia]] δοκιμάζει την εναλλαγή μεταξύ των πρωτευόντων και δευτερόντων κέντρων δεδομένων του. Με αυτόν τον τρόπο θα διασφαλιστεί ότι η Βικιπαίδεια και τα άλλα wiki του Wikimedia θα μπορούν να παραμείνουν ενεργά ακόμα και μετά από μία καταστροφή. Για να βεβαιώσουμε ότι όλα λειτουργούν ομαλά, το Τμήμα Τεχνολογίας της Wikimedia πρέπει να πραγματοποιήσει μία προγραμματισμένη δοκιμή. Η δοκιμή αυτή θα δείξει αν μπορεί να γίνει αξιόπιστα η αλλαγή από το ένα κέντρο δεδομένων στο άλλο. Χρειάζονται πολλές ομάδες τόσο για την προετοιμασία της δοκιμής, όσο και για την αντιμετώπιση τυχόν απροσδόκητων προβλημάτων.
Όλη η κίνηση θα εναλλαχθεί στις '''{{#time:j xg|2023-03-01|el}}'''. Η δοκιμή θα ξεκινήσει στις '''[https://zonestamp.toolforge.org/{{#time:U|2023-03-01T14:00|en}} {{#time:H:i e|2023-03-01T14:00}}]''' (16:00 ώρα Ελλάδος και Κύπρου).
Δυστυχώς, λόγω κάποιων περιορισμών του [[mw:Manual:What is MediaWiki?|MediaWiki]], δεν θα υπάρχει δυνατότητα επεξεργασίας κατά τη διάρκεια της μετατόπισης της κίνησης. Ζητούμε συγγνώμη για την αναστάτωση, και καταβάλλουμε προσπάθειες αυτή να ελαχιστοποιηθεί στο μέλλον.
'''Για ένα σύντομο χρονικό διάστημα, θα μπορείτε να διαβάσετε όλα τα wiki, αλλά όχι να τα επεξεργαστείτε.'''
*Η επεξεργασία θα είναι αδύνατη για έως και μία ώρα την {{#time:l j xg Y|2023-03-01|el}}.
*Αν προσπαθήσετε να επεξεργαστείτε ή να αποθηκεύσετε μια σελίδα εκείνη την ώρα, θα δείτε ένα μήνυμα σφάλματος. Ελπίζουμε ότι δεν θα χαθούν επεξεργασίες εκείνη την ώρα, αλλά δεν μπορούμε να το εγγυηθούμε. Αν δείτε το μήνυμα σφάλματος, παρακαλούμε περιμένετε μέχρι να επανέλθουν όλα στο κανονικό. Τότε θα μπορέσετε να αποθηκεύσετε την αλλαγή σας. Ωστόσο προτείνουμε να κρατήσετε ένα αντίγραφο των αλλαγών σας, για κάθε ενδεχόμενο.
''Άλλα προβλήματα''
*Οι εργασίες στο υπόβαθρο θα είναι πιο αργές και κάποιες μπορεί να ακυρωθούν. Οι κόκκινοι σύνδεσμοι πιθανώς να μην ενημερώνονται τόσο γρήγορα όσο συνήθως. Αν δημιουργήσετε μια σελίδα που ήδη συνδέεται από κάπου αλλού, ο σύνδεσμος θα παραμείνει κόκκινος για περισσότερο χρόνο από ότι συνήθως. Κάποια διεργασίες που απαιτούν ώρα να εκτελεστούν θα αναγκαστούν να σταματήσουν.
* Αναμένουμε ότι οι αναπτύξεις κώδικα θα γίνουν όπως κάθε άλλη εβδομάδα. Ωστόσο, ορισμένες κατά περίπτωση παγώσεις κώδικα θα μπορούσαν να συμβούν αμέσως, εάν η επιχείρηση τις απαιτήσει στη συνέχεια.
* Το [[mw:Special:MyLanguage/GitLab|GitLab]] δεν θα είναι διαθέσιμο για περίπου 90 λεπτά.
Το έργο αυτό ενδέχεται να αναβληθεί εάν είναι απαραίτητο. Μπορείτε να [[wikitech:Switch_Datacenter|διαβάσετε το πρόγραμμα στο wikitech.wikimedia.org]]. Οι όποιες αλλαγές θα ανακοινωθούν στο πρόγραμμα. Θα υπάρξουν περισσότερες ειδοποιήσεις σχετικά με τη διαδικασία. Ένα μπάνερ θα προβληθεί σε όλα τα wiki 30 λεπτά πριν ξεκινήσει η επιχείρηση. '''Παρακαλούμε μοιραστείτε αυτή την πληροφορία με την κοινότητά σας.'''</div><section end="server-switch"/>
</div>
<span dir=ltr>[[m:User:Trizek (WMF)|Trizek (WMF)]] ([[m:User talk:Trizek (WMF)|{{int:talk}}]])</span> 21:21, 27 Κούντουρονος 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=24390465 -->
== Ukraine's Cultural Diplomacy Month 2023: We are back! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:UCDM 2023 promo.png|180px|right]]
{{int:please-translate}}
Hello, dear Wikipedians!<br/>
[[m:Special:MyLanguage/Wikimedia Ukraine|Wikimedia Ukraine]], in cooperation with the [[:en:Ministry of Foreign Affairs of Ukraine|Ministry of Foreign Affairs of Ukraine]] and [[:en:Ukrainian Institute|Ukrainian Institute]], has launched the third edition of writing challenge "'''[[m:Special:MyLanguage/Ukraine's Cultural Diplomacy Month 2023|Ukraine's Cultural Diplomacy Month]]'''", which lasts from 1st until 31st March 2023. The campaign is dedicated to famous Ukrainian artists of cinema, music, literature, architecture, design and cultural phenomena of Ukraine that are now part of world heritage. We accept contribution in every language! The most active contesters will receive [[m:Special:MyLanguage/Ukraine's Cultural Diplomacy Month 2023/Prizes|prizes]].<br/>
We invite you to take part and help us improve the coverage of Ukrainian culture on Wikipedia in your language! Also, we plan to set up a [[m:CentralNotice/Request/UCDM 2023|banner]] to notify users of the possibility to participate in such a challenge!
</div>
[[m:User:ValentynNefedov (WMUA)|ValentynNefedov (WMUA)]] ([[m:User talk:ValentynNefedov (WMUA)|talk]]) 07:58, 1 March 2023 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:ValentynNefedov (WMUA)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery/Wikipedia&oldid=23942484 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Wikimania 2023 Welcoming Program Submissions</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="wikimania-program-submissions"/>[[File:Wikimedia_Singapore_Logo.svg|right|frameless]]Do you want to host an in-person or virtual session at Wikimania 2023? Maybe a hands-on workshop, a lively discussion, a fun performance, a catchy poster, or a memorable lightning talk? [[wmania:Special:MyLanguage/2023:Program/Submissions|'''Submissions are open until March 28''']]. The event will have dedicated hybrid blocks, so virtual submissions and pre-recorded content are also welcome. If you have any questions, please join us at an upcoming conversation on March 12 or 19, or reach out by email at wikimania@wikimedia.org or on Telegram. More information on-wiki.<section end="wikimania-program-submissions"/>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=24390465 -->
== <span lang="el" dir="ltr" class="mw-content-ltr">Your wiki will be in read-only soon</span> ==
<div lang="el" dir="ltr" class="mw-content-ltr">
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Διαβάστε αυτό το μήνυμα σε άλλη γλώσσα]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
Το [[foundation:|Ἰδρυμα Wikimedia]] δοκιμάζει την εναλλαγή μεταξύ των πρωτευόντων και δευτερόντων κέντρων δεδομένων του. Με αυτόν τον τρόπο θα διασφαλιστεί ότι η Βικιπαίδεια και τα άλλα wiki του Wikimedia θα μπορούν να παραμείνουν ενεργά ακόμα και μετά από μία καταστροφή. Για να βεβαιώσουμε ότι όλα λειτουργούν ομαλά, το Τμήμα Τεχνολογίας της Wikimedia πρέπει να πραγματοποιήσει μία προγραμματισμένη δοκιμή. Η δοκιμή αυτή θα δείξει αν μπορεί να γίνει αξιόπιστα η αλλαγή από το ένα κέντρο δεδομένων στο άλλο. Χρειάζονται πολλές ομάδες τόσο για την προετοιμασία της δοκιμής, όσο και για την αντιμετώπιση τυχόν απροσδόκητων προβλημάτων.
Όλη η κίνηση θα εναλλαχθεί στις '''{{#time:j xg|2023-04-26|el}}'''. Η δοκιμή θα ξεκινήσει στις '''[https://zonestamp.toolforge.org/{{#time:U|2023-04-26T14:00|en}} {{#time:H:i e|2023-04-26T14:00}}]''' (16:00 ώρα Ελλάδος και Κύπρου).
Δυστυχώς, λόγω κάποιων περιορισμών του [[mw:Manual:What is MediaWiki?|MediaWiki]], δεν θα υπάρχει δυνατότητα επεξεργασίας κατά τη διάρκεια της μετατόπισης της κίνησης. Ζητούμε συγγνώμη για την αναστάτωση, και καταβάλλουμε προσπάθειες αυτή να ελαχιστοποιηθεί στο μέλλον.
'''Για ένα σύντομο χρονικό διάστημα, θα μπορείτε να διαβάσετε όλα τα wiki, αλλά όχι να τα επεξεργαστείτε.'''
*Η επεξεργασία θα είναι αδύνατη για έως και μία ώρα την {{#time:l j xg Y|2023-04-26|el}}.
*Αν προσπαθήσετε να επεξεργαστείτε ή να αποθηκεύσετε μια σελίδα εκείνη την ώρα, θα δείτε ένα μήνυμα σφάλματος. Ελπίζουμε ότι δεν θα χαθούν επεξεργασίες εκείνη την ώρα, αλλά δεν μπορούμε να το εγγυηθούμε. Αν δείτε το μήνυμα σφάλματος, παρακαλούμε περιμένετε μέχρι να επανέλθουν όλα στο κανονικό. Τότε θα μπορέσετε να αποθηκεύσετε την αλλαγή σας. Ωστόσο προτείνουμε να κρατήσετε ένα αντίγραφο των αλλαγών σας, για κάθε ενδεχόμενο.
''Άλλα προβλήματα''
*Οι εργασίες στο υπόβαθρο θα είναι πιο αργές και κάποιες μπορεί να ακυρωθούν. Οι κόκκινοι σύνδεσμοι πιθανώς να μην ενημερώνονται τόσο γρήγορα όσο συνήθως. Αν δημιουργήσετε μια σελίδα που ήδη συνδέεται από κάπου αλλού, ο σύνδεσμος θα παραμείνει κόκκινος για περισσότερο χρόνο από ότι συνήθως. Κάποια διεργασίες που απαιτούν ώρα να εκτελεστούν θα αναγκαστούν να σταματήσουν.
* Αναμένουμε ότι οι αναπτύξεις κώδικα θα γίνουν όπως κάθε άλλη εβδομάδα. Ωστόσο, ορισμένες κατά περίπτωση παγώσεις κώδικα θα μπορούσαν να συμβούν αμέσως, εάν η επιχείρηση τις απαιτήσει στη συνέχεια.
* Το [[mw:Special:MyLanguage/GitLab|GitLab]] δεν θα είναι διαθέσιμο για περίπου 90 λεπτά.
Το έργο αυτό ενδέχεται να αναβληθεί εάν είναι απαραίτητο. Μπορείτε να [[wikitech:Switch_Datacenter|διαβάσετε το πρόγραμμα στο wikitech.wikimedia.org]]. Οι όποιες αλλαγές θα ανακοινωθούν στο πρόγραμμα. Θα υπάρξουν περισσότερες ειδοποιήσεις σχετικά με τη διαδικασία. Ένα μπάνερ θα προβληθεί σε όλα τα wiki 30 λεπτά πριν ξεκινήσει η επιχείρηση. '''Παρακαλούμε μοιραστείτε αυτή την πληροφορία με την κοινότητά σας.'''</div><section end="server-switch"/>
</div>
<bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 00:41, 21 Απρίλ 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:UOzurumba (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=24748237 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Seeking volunteers for the next step in the Universal Code of Conduct process</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''<div class="plainlinks">[[m:Special:MyLanguage/Universal Code of Conduct/U4C Building Committee/Nominations/Announcement|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/U4C Building Committee/Nominations/Announcement}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hello,
As follow-up to [https://lists.wikimedia.org/hyperkitty/list/wikimedia-l@lists.wikimedia.org/message/IOMVS7W75ZYMABQGOQ2QH2JAURC3CHGH/ the message about the Universal Code of Conduct Enforcement Guidelines] by Wikimedia Foundation Board of Trustees Vice Chair, Shani Evenstein Sigalov, I am reaching out about the next steps. I want to bring your attention to the next stage of the Universal Code of Conduct process, which is forming a building committee for the Universal Code of Conduct Coordinating Committee (U4C). I invite community members with experience and deep interest in community health and governance to nominate themselves to be part of the U4C building committee, which needs people who are:
* Community members in good standing
* Knowledgeable about movement community processes, such as, but not limited to, policy drafting, participatory decision making, and application of existing rules and policies on Wikimedia projects
* Aware and appreciative of the diversity of the movement, such as, but not limited to, languages spoken, identity, geography, and project type
* Committed to participate for the entire U4C Building Committee period from mid-May - December 2023
* Comfortable with engaging in difficult, but productive conversations
* Confidently able to communicate in English
The Building Committee shall consist of volunteer community members, affiliate board or staff, and Wikimedia Foundation staff.
The Universal Code of Conduct has been a process strengthened by the skills and knowledge of the community and I look forward to what the U4C Building Committee creates. If you are interested in joining the Building Committee, please either [[m:Special:MyLanguage/Universal_Code_of_Conduct/U4C_Building_Committee/Nominations|sign up on the Meta-Wiki page]], or contact ucocproject[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org by May 12, 2023. '''[[m:Special:MyLanguage/Universal_Code_of_Conduct/U4C_Building_Committee|Read more on Meta-Wiki]]'''.
Best regards,<br /><section end="announcement-content" />
</div>
[[User:Xeno (WMF)|Xeno (WMF)]] 19:00, 26 Απρίλ 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Xeno (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=24941045 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Selection of the U4C Building Committee</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
The next stage in the Universal Code of Conduct process is establishing a Building Committee to create the charter for the Universal Code of Conduct Coordinating Committee (U4C). The Building Committee has been selected. [[m:Special:MyLanguage/Universal_Code_of_Conduct/U4C_Building_Committee|Read about the members and the work ahead on Meta-wiki]].<section end="announcement-content" />
</div>
-- [[m:Special:MyLanguage/Universal_Code_of_Conduct/Project|UCoC Project Team]], 04:20, 27 Καλομηνά 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=25018085 -->
== <span lang="en" dir="ltr" class="mw-content-ltr"> Announcing the new Elections Committee members</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Wikimedia Foundation elections committee/Nominatons/2023/Announcement - new members|You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation elections committee/Nominatons/2023/Announcement - new members|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections committee/Nominatons/2023/Announcement - new members}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hello there,
We are glad to announce [[listarchive:list/wikimedia-l@lists.wikimedia.org/message/4TALOUFPAP2VDBR27GKRVOP7IGQYU3DB/|the new members and advisors of the Elections Committee]]. The [[m:Special:MyLanguage/Wikimedia_Foundation_elections_committee|Elections Committee]] assists with the design and implementation of the process to select Community- and Affiliate-Selected trustees for the Wikimedia Foundation Board of Trustees. After an open nomination process, the strongest candidates spoke with the Board and four candidates were asked to join the Elections Committee. Four other candidates were asked to participate as advisors.
Thank you to all the community members who submitted their names for consideration. We look forward to working with the Elections Committee in the near future.
On behalf of the Wikimedia Foundation Board of Trustees,<br /><section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 18:00, 28 Κερασινού 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=25018085 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Review the Charter for the Universal Code of Conduct Coordinating Committee</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''<div class="plainlinks">[[m:Special:MyLanguage/Universal Code of Conduct/U4C Building Committee/Announcement - Review|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/U4C Building Committee/Announcement - Review}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Hello all,
I am pleased to share the next step in the [[foundation:Special:MyLanguage/Policy:Universal Code of Conduct|Universal Code of Conduct]] work. The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|Universal Code of Conduct Coordinating Committee (U4C) draft charter]] is now ready for your review.
The [[foundation:Special:MyLanguage/Policy:Universal Code of Conduct/Enforcement guidelines|Enforcement Guidelines]] require a [[foundation:Special:MyLanguage/Policy:Universal_Code_of_Conduct/Enforcement_guidelines#4.5_U4C_Building_Committee|Building Committee]] form to draft a charter that outlines procedures and details for a global committee to be called the [[foundation:Special:MyLanguage/Policy:Universal_Code_of_Conduct/Enforcement_guidelines#4._UCoC_Coordinating_Committee_(U4C)|Universal Code of Conduct Coordinating Committee (U4C)]]. Over the past few months, the U4C Building Committee worked together as a group to discuss and draft the U4C charter. The U4C Building Committee welcomes feedback about the draft charter now through 22 September 2023. After that date, the U4C Building Committee will revise the charter as needed and a community vote will open shortly afterward.
Join the conversation during the [[m:Special:MyLanguage/Universal Code of Conduct/U4C Building Committee#Conversation hours|conversation hours]] or on [[m:Talk:Universal Code of Conduct/Coordinating Committee/Charter|Meta-wiki]].
Best,<br /><section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]], on behalf of the U4C Building Committee, 15:35, 28 Aλωναρί 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=25392152 -->
== <span lang="el" dir="ltr" class="mw-content-ltr">Το wiki σας σύντομα θα είναι μόνο για ανάγνωση</span> ==
<div lang="el" dir="ltr" class="mw-content-ltr">
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Διαβάστε αυτό το μήνυμα σε άλλη γλώσσα]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
<span class="mw-translate-fuzzy">Το [[foundation:|Ἰδρυμα Wikimedia]] δοκιμάζει την εναλλαγή μεταξύ των πρωτευόντων και δευτερόντων κέντρων δεδομένων του.</span> Με αυτόν τον τρόπο θα διασφαλιστεί ότι η Βικιπαίδεια και τα άλλα wiki του Wikimedia θα μπορούν να παραμείνουν ενεργά ακόμα και μετά από μία καταστροφή. Για να βεβαιώσουμε ότι όλα λειτουργούν ομαλά, το Τμήμα Τεχνολογίας της Wikimedia πρέπει να πραγματοποιήσει μία προγραμματισμένη δοκιμή. Η δοκιμή αυτή θα δείξει αν μπορεί να γίνει αξιόπιστα η αλλαγή από το ένα κέντρο δεδομένων στο άλλο. Χρειάζονται πολλές ομάδες τόσο για την προετοιμασία της δοκιμής, όσο και για την αντιμετώπιση τυχόν απροσδόκητων προβλημάτων.
Όλη η κίνηση θα εναλλαχθεί στις '''{{#time:j xg|2023-09-20|el}}'''. Η δοκιμή θα ξεκινήσει στις '''[https://zonestamp.toolforge.org/{{#time:U|2023-09-20T14:00|en}} {{#time:H:i e|2023-09-20T14:00}}]''' (16:00 ώρα Ελλάδος και Κύπρου).
Δυστυχώς, λόγω κάποιων περιορισμών του [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], δεν θα υπάρχει δυνατότητα επεξεργασίας κατά τη διάρκεια της μετατόπισης της κίνησης. Ζητούμε συγγνώμη για την αναστάτωση, και καταβάλλουμε προσπάθειες αυτή να ελαχιστοποιηθεί στο μέλλον.
'''Για ένα σύντομο χρονικό διάστημα, θα μπορείτε να διαβάσετε όλα τα wiki, αλλά όχι να τα επεξεργαστείτε.'''
*Η επεξεργασία θα είναι αδύνατη για έως και μία ώρα την {{#time:l j xg Y|2023-09-20|el}}.
*Αν προσπαθήσετε να επεξεργαστείτε ή να αποθηκεύσετε μια σελίδα εκείνη την ώρα, θα δείτε ένα μήνυμα σφάλματος. Ελπίζουμε ότι δεν θα χαθούν επεξεργασίες εκείνη την ώρα, αλλά δεν μπορούμε να το εγγυηθούμε. Αν δείτε το μήνυμα σφάλματος, παρακαλούμε περιμένετε μέχρι να επανέλθουν όλα στο κανονικό. Τότε θα μπορέσετε να αποθηκεύσετε την αλλαγή σας. Ωστόσο προτείνουμε να κρατήσετε ένα αντίγραφο των αλλαγών σας, για κάθε ενδεχόμενο.
''Άλλα προβλήματα''
*Οι εργασίες στο υπόβαθρο θα είναι πιο αργές και κάποιες μπορεί να ακυρωθούν. Οι κόκκινοι σύνδεσμοι πιθανώς να μην ενημερώνονται τόσο γρήγορα όσο συνήθως. Αν δημιουργήσετε μια σελίδα που ήδη συνδέεται από κάπου αλλού, ο σύνδεσμος θα παραμείνει κόκκινος για περισσότερο χρόνο από ότι συνήθως. Κάποια διεργασίες που απαιτούν ώρα να εκτελεστούν θα αναγκαστούν να σταματήσουν.
* Αναμένουμε ότι οι αναπτύξεις κώδικα θα γίνουν όπως κάθε άλλη εβδομάδα. Ωστόσο, ορισμένες κατά περίπτωση παγώσεις κώδικα θα μπορούσαν να συμβούν αμέσως, εάν η επιχείρηση τις απαιτήσει στη συνέχεια.
* Το [[mw:Special:MyLanguage/GitLab|GitLab]] δεν θα είναι διαθέσιμο για περίπου 90 λεπτά.
Το έργο αυτό ενδέχεται να αναβληθεί εάν είναι απαραίτητο. Μπορείτε να [[wikitech:Switch_Datacenter|διαβάσετε το πρόγραμμα στο wikitech.wikimedia.org]]. Οι όποιες αλλαγές θα ανακοινωθούν στο πρόγραμμα. Θα υπάρξουν περισσότερες ειδοποιήσεις σχετικά με τη διαδικασία. Ένα μπάνερ θα προβληθεί σε όλα τα wiki 30 λεπτά πριν ξεκινήσει η επιχείρηση. '''Παρακαλούμε μοιραστείτε αυτή την πληροφορία με την κοινότητά σας.'''</div><section end="server-switch"/>
</div>
[[User:Trizek (WMF)|Trizek_(WMF)]] ([[m:User talk:Trizek (WMF)|talk]]) 09:23, 15 Σταυρί 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=25018086 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">== Opportunities open for the Affiliations Committee, Ombuds commission, and the Case Review Committee ==</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
<div style="margin:.2em 0 .5em;margin-{{#switch:{{PAGELANGUAGE}}|ar|arc|ary|arz|azb|bcc|bgn|ckb|bqi|dv|fa|fa-af|glk|ha-arab|he|kk-arab|kk-cn|ks|ku-arab|ms-arab|mzn|pnb|prd|ps|sd|ug|ur|ydd|yi=right|left}}:3ex;">
[[m:Special:MyLanguage/Wikimedia Foundation Legal department/Committee appointments/Announcement/Short|''You can find this message translated into additional languages on Meta-wiki.'']]
''<span class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation Legal department/Committee appointments/Announcement/Short|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation Legal department/Committee appointments/Announcement/Short}}&language=&action=page&filter= {{int:please-translate}}]</span>''</div>
Hi everyone! The [[m:Special:MyLanguage/Affiliations Committee|Affiliations Committee]] (AffCom), [[m:Special:MyLanguage/Ombuds_commission|Ombuds commission]] (OC), and the [[m:Special:MyLanguage/Trust_and_Safety/Case_Review_Committee|Case Review Committee]] (CRC) are looking for new members. These volunteer groups provide important structural and oversight support for the community and movement. People are encouraged to nominate themselves or encourage others they feel would contribute to these groups to apply. There is more information about the roles of the groups, the skills needed, and the opportunity to apply on the [[m:Special:MyLanguage/Wikimedia Foundation Legal department/Committee appointments|'''Meta-wiki page''']].
On behalf of the Committee Support team,<br /><section end="announcement-content" />
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
~ [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 16:41, 9 Τρυγομηνά 2023 (UTC) </div>
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=25570445 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Review and comment on the 2024 Wikimedia Foundation Board of Trustees selection rules package</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/wiki/Wikimedia Foundation elections/2024/Announcement/Rules package review - short| You can find this message translated into additional languages on Meta-wiki.]]''
:''<div class="plainlinks">[[m:Special:MyLanguage/wiki/Wikimedia Foundation elections/2024/Announcement/Rules package review - short|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:wiki/Wikimedia Foundation elections/2024/Announcement/Rules package review - short}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Dear all,
Please review and comment on the Wikimedia Foundation Board of Trustees selection rules package from now until 29 October 2023. The selection rules package was based on older versions by the Elections Committee and will be used in the 2024 Board of Trustees selection. Providing your comments now will help them provide a smoother, better Board selection process. [[m:Special:MyLanguage/Wikimedia Foundation elections/2024|More on the Meta-wiki page]].
Best,
Katie Chan <br>
Chair of the Elections Committee<br /><section end="announcement-content" />
</div>
01:13, 17 Τρυγομηνά 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=25570445 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Coming soon: Reference Previews</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="ReferencePreviewsDefault"/>
[[File:Example_of_a_Reference_Preview.png|right|300px]]
A new feature is coming to your wiki soon: Reference Previews are popups for references. Such popups have existed on wikis as local gadgets for many years. Now there is a central solution, available on all wikis, and consistent with the [[mw:Special:MyLanguage/Page Previews|PagePreviews feature]].
Reference Previews will be visible to everyone, including readers. If you don’t want to see them, [[m:WMDE Technical Wishes/ReferencePreviews#Opt-out feature|you can opt out]]. If you are [[Special:Preferences#mw-prefsection-gadgets|using the gadgets]] Reference Tooltips or Navigation Popups, you won’t see Reference Previews unless you disable the gadget.
Reference Previews have been a beta feature on many wikis since 2019, and a default feature on some since 2021. Deployment is planned for November 22.
* [[mw:Special:MyLanguage/Help:Reference Previews|Help page]]
* [[m:WMDE Technical Wishes/ReferencePreviews|Project page with more information (in English)]].
* Feedback is welcome [[m:Talk:WMDE Technical Wishes/ReferencePreviews|on this talk page]].
-- For [[m:WMDE Technical Wishes|Wikimedia Deutschland’s Technical Wishes]] team,
<section end="ReferencePreviewsDefault"/>
</div>
[[m:User:Johanna Strodt (WMDE)|Johanna Strodt (WMDE)]], 13:11, 15 Αεργί 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johanna Strodt (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=25866958 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">(New) Feature on [[mw:Special:MyLanguage/Help:Extension:Kartographer|Kartographer]]: Adding geopoints via QID</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="Body"/>Since September 2022, it is possible to create geopoints using a QID. Many wiki contributors have asked for this feature, but it is not being used much. Therefore, we would like to remind you about it. More information can be found on the [[M:WMDE_Technical_Wishes/Geoinformation/Geopoints via QID|project page]]. If you have any comments, please let us know on the [[M:Talk:WMDE Technical Wishes/Geoinformation/Geopoints via QID|talk page]]. – Best regards, the team of Technical Wishes at Wikimedia Deutschland
<section end="Body"/>
</div>
[[M:User:Thereza Mengs (WMDE)|Thereza Mengs (WMDE)]] 12:31, 13 Χριστουγενναρί 2023 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Thereza Mengs (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=25955829 -->
== Do you use Wikidata in Wikimedia sibling projects? Tell us about your experiences ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''Note: Apologies for cross-posting and sending in English.''
Hello, the '''[[m:WD4WMP|Wikidata for Wikimedia Projects]]''' team at Wikimedia Deutschland would like to hear about your experiences using Wikidata in the sibling projects. If you are interested in sharing your opinion and insights, please consider signing up for an interview with us in this '''[https://wikimedia.sslsurvey.de/Wikidata-for-Wikimedia-Interviews Registration form]'''.<br>
''Currently, we are only able to conduct interviews in English.''
The front page of the form has more details about what the conversation will be like, including how we would '''compensate''' you for your time.
For more information, visit our ''[[m:WD4WMP/AddIssue|project issue page]]'' where you can also share your experiences in written form, without an interview.<br>We look forward to speaking with you, [[m:User:Danny Benjafield (WMDE)|Danny Benjafield (WMDE)]] ([[m:User talk:Danny Benjafield (WMDE)|talk]]) 08:53, 5 January 2024 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Danny Benjafield (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/WD4WMP/ScreenerInvite&oldid=26027495 -->
== Reusing references: Can we look over your shoulder? ==
''Apologies for writing in English.''
The Technical Wishes team at Wikimedia Deutschland is planning to [[m:WMDE Technical Wishes/Reusing references|make reusing references easier]]. For our research, we are looking for wiki contributors willing to show us how they are interacting with references.
* The format will be a 1-hour video call, where you would share your screen. [https://wikimedia.sslsurvey.de/User-research-into-Reusing-References-Sign-up-Form-2024/en/ More information here].
* Interviews can be conducted in English, German or Dutch.
* [[mw:WMDE_Engineering/Participate_in_UX_Activities#Compensation|Compensation is available]].
* Sessions will be held in January and February.
* [https://wikimedia.sslsurvey.de/User-research-into-Reusing-References-Sign-up-Form-2024/en/ Sign up here if you are interested.]
* Please note that we probably won’t be able to have sessions with everyone who is interested. Our UX researcher will try to create a good balance of wiki contributors, e.g. in terms of wiki experience, tech experience, editing preferences, gender, disability and more. If you’re a fit, she will reach out to you to schedule an appointment.
We’re looking forward to seeing you, [[m:User:Thereza Mengs (WMDE)| Thereza Mengs (WMDE)]]
<!-- Το μήνυμα στάλθηκε από τον User:Thereza Mengs (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_all_village_pumps&oldid=25956752 -->
== Feminism and Folklore 2024 ==
<div style="border:8px maroon ridge;padding:6px;>
[[File:Feminism and Folklore 2024 logo.svg|centre|550px|frameless]]
::<div lang="en" dir="ltr" class="mw-content-ltr">
<center>''{{int:please-translate}}''</center>
Dear Wiki Community,
You are humbly invited to organize the '''[[:m:Feminism and Folklore 2024|Feminism and Folklore 2024]]''' writing competition from February 1, 2023, to March 31, 2023 on your local Wikipedia. This year, Feminism and Folklore will focus on feminism, women's issues, and gender-focused topics for the project, with a [[:c:Commons:Wiki Loves Folklore 2024|Wiki Loves Folklore]] gender gap focus and a folk culture theme on Wikipedia.
You can help Wikipedia's coverage of folklore from your area by writing or improving articles about things like folk festivals, folk dances, folk music, women and queer folklore figures, folk game athletes, women in mythology, women warriors in folklore, witches and witch hunting, fairy tales, and more. Users can help create new articles, expand or translate from a generated list of suggested articles.
Organisers are requested to work on the following action items to sign up their communities for the project:
# Create a page for the contest on the local wiki.
# Set up a campaign on '''CampWiz''' tool.
# Create the local list and mention the timeline and local and international prizes.
# Request local admins for site notice.
# Link the local page and the CampWiz link on the [[:m:Feminism and Folklore 2024/Project Page|meta project page]].
This year, the Wiki Loves Folklore Tech Team has introduced two new tools to enhance support for the campaign. These tools include the '''Article List Generator by Topic''' and '''CampWiz'''. The Article List Generator by Topic enables users to identify articles on the English Wikipedia that are not present in their native language Wikipedia. Users can customize their selection criteria, and the tool will present a table showcasing the missing articles along with suggested titles. Additionally, users have the option to download the list in both CSV and wikitable formats. Notably, the CampWiz tool will be employed for the project for the first time, empowering users to effectively host the project with a jury. Both tools are now available for use in the campaign. [https://tools.wikilovesfolklore.org/ '''Click here to access these tools''']
Learn more about the contest and prizes on our [[:m:Feminism and Folklore 2024|project page]]. Feel free to contact us on our [[:m:Talk:Feminism and Folklore 2024/Project Page|meta talk page]] or by email us if you need any assistance.
We look forward to your immense coordination.
Thank you and Best wishes,
'''[[:m:Feminism and Folklore 2024|Feminism and Folklore 2024 International Team]]'''
::::Stay connected [[File:B&W Facebook icon.png|link=https://www.facebook.com/feminismandfolklore/|30x30px]] [[File:B&W Twitter icon.png|link=https://twitter.com/wikifolklore|30x30px]]
</div></div>
--[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 07:26, 18 Καλανταρί 2024 (UTC)
== Wiki Loves Folklore is back! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:Wiki Loves Folklore Logo.svg|right|150px|frameless]]
Dear Wiki Community,
You are humbly invited to participate in the '''[[:c:Commons:Wiki Loves Folklore 2024|Wiki Loves Folklore 2024]]''' an international photography contest organized on Wikimedia Commons to document folklore and intangible cultural heritage from different regions, including, folk creative activities and many more. It is held every year from the '''1st till the 31st''' of March.
You can help in enriching the folklore documentation on Commons from your region by taking photos, audios, videos, and [https://commons.wikimedia.org/w/index.php?title=Special:UploadWizard&campaign=wlf_2024 submitting] them in this commons contest.
You can also [[:c:Commons:Wiki Loves Folklore 2024/Organize|organize a local contest]] in your country and support us in translating the [[:c:Commons:Wiki Loves Folklore 2024/Translations|project pages]] to help us spread the word in your native language.
Feel free to contact us on our [[:c:Commons talk:Wiki Loves Folklore 2024|project Talk page]] if you need any assistance.
'''Kind regards,'''
'''Wiki loves Folklore International Team'''
-- [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 07:26, 18 Καλανταρί 2024 (UTC)
</div></div>
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery/Wikipedia&oldid=23942484 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Vote on the Charter for the Universal Code of Conduct Coordinating Committee</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/wiki/Universal Code of Conduct/Coordinating Committee/Charter/Announcement - voting opens|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:wiki/Universal Code of Conduct/Coordinating Committee/Charter/Announcement - voting opens}}&language=&action=page&filter= {{int:please-translate}}]''
Hello all,
I am reaching out to you today to announce that the voting period for the [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) Charter is now open. Community members may [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Charter/Voter_information|cast their vote and provide comments about the charter via SecurePoll]] now through '''2 February 2024'''. Those of you who voiced your opinions during the development of the [[foundation:Special:MyLanguage/Policy:Universal_Code_of_Conduct/Enforcement_guidelines|UCoC Enforcement Guidelines]] will find this process familiar.
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|current version of the U4C Charter]] is on Meta-wiki with translations available.
Read the charter, go vote and share this note with others in your community. I can confidently say the U4C Building Committee looks forward to your participation.
On behalf of the UCoC Project team,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 18:08, 19 Καλανταρί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=25853527 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Last days to vote on the Charter for the Universal Code of Conduct Coordinating Committee</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/wiki/Universal Code of Conduct/Coordinating Committee/Charter/Announcement - voting reminder|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:wiki/Universal Code of Conduct/Coordinating Committee/Charter/Announcement - voting reminder}}&language=&action=page&filter= {{int:please-translate}}]''
Hello all,
I am reaching out to you today to remind you that the voting period for the [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) charter will close on '''2 February 2024'''. Community members may [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Charter/Voter_information|cast their vote and provide comments about the charter via SecurePoll]]. Those of you who voiced your opinions during the development of the [[foundation:Special:MyLanguage/Policy:Universal_Code_of_Conduct/Enforcement_guidelines|UCoC Enforcement Guidelines]] will find this process familiar.
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|current version of the U4C charter]] is on Meta-wiki with translations available.
Read the charter, go vote and share this note with others in your community. I can confidently say the U4C Building Committee looks forward to your participation.
On behalf of the UCoC Project team,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 17:00, 31 Καλανταρί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=25853527 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Announcing the results of the UCoC Coordinating Committee Charter ratification vote</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/wiki/Universal Code of Conduct/Coordinating Committee/Charter/Announcement - results|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:wiki/Universal Code of Conduct/Coordinating Committee/Charter/Announcement - results}}&language=&action=page&filter= {{int:please-translate}}]''
Dear all,
Thank you everyone for following the progress of the Universal Code of Conduct. I am writing to you today to announce the outcome of the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Charter/Voter_information|ratification vote]] on the [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|Universal Code of Conduct Coordinating Committee Charter]]. 1746 contributors voted in this ratification vote with 1249 voters supporting the Charter and 420 voters not. The ratification vote process allowed for voters to provide comments about the Charter.
A report of voting statistics and a summary of voter comments will be published on Meta-wiki in the coming weeks.
Please look forward to hearing about the next steps soon.
On behalf of the UCoC Project team,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 18:23, 12 Κούντουρονος 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26160150 -->
== Ukraine's Cultural Diplomacy Month 2024: We are back! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:UCDM 2024 general.jpg|180px|right]]
{{int:please-translate}}
Hello, dear Wikipedians!<br/>
[[:m:Special:MyLanguage/Wikimedia Ukraine|Wikimedia Ukraine]], in cooperation with the [[:en:Ministry of Foreign Affairs of Ukraine|MFA of Ukraine]] and [[:en:Ukrainian Institute|Ukrainian Institute]], has launched the forth edition of writing challenge "'''[[:m:Special:MyLanguage/Ukraine's Cultural Diplomacy Month 2024|Ukraine's Cultural Diplomacy Month]]'''", which lasts from 1st until 31st March 2024. The campaign is dedicated to famous Ukrainian artists of cinema, music, literature, architecture, design and cultural phenomena of Ukraine that are now part of world heritage. We accept contribution in every language! The most active contesters will receive prizes.<br/>
We invite you to take part and help us improve the coverage of Ukrainian culture on Wikipedia in your language! Also, we plan to set up a [[:m:CentralNotice/Request/UCDM 2024|banner]] to notify users of the possibility to participate in such a challenge! [[:m:User:ValentynNefedov (WMUA)|ValentynNefedov (WMUA)]] ([[:m:User talk:ValentynNefedov (WMUA)|talk]])
</div>
<!-- Το μήνυμα στάλθηκε από τον User:ValentynNefedov (WMUA)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery/Wikipedia&oldid=26166467 -->
== <span lang="en" dir="ltr" class="mw-content-ltr"> Report of the U4C Charter ratification and U4C Call for Candidates now available</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024/Announcement – call for candidates| You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Coordinating Committee/Election/2024/Announcement – call for candidates}}&language=&action=page&filter= {{int:please-translate}}]''
Hello all,
I am writing to you today with two important pieces of information. First, the [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter/Vote results|report of the comments from the Universal Code of Conduct Coordinating Committee (U4C) Charter ratification]] is now available. Secondly, the call for candidates for the U4C is open now through April 1, 2024.
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. Community members are invited to submit their applications for the U4C. For more information and the responsibilities of the U4C, please [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|review the U4C Charter]].
Per the charter, there are 16 seats on the U4C: eight community-at-large seats and eight regional seats to ensure the U4C represents the diversity of the movement.
Read more and submit your application on [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024|Meta-wiki]].
On behalf of the UCoC project team,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 16:25, 5 Μαρτ 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26276337 -->
== <span lang="en" dir="ltr" class="mw-content-ltr"> Wikimedia Foundation Board of Trustees 2024 Selection</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
: ''[[m:Special:MyLanguage/Wikimedia Foundation elections/2024/Announcement/Selection announcement| You can find this message translated into additional languages on Meta-wiki.]]''
: ''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation elections/2024/Announcement/Selection announcement|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections/2024/Announcement/Selection announcement}}&language=&action=page&filter= {{int:please-translate}}]</div>''
Dear all,
This year, the term of 4 (four) Community- and Affiliate-selected Trustees on the Wikimedia Foundation Board of Trustees will come to an end [1]. The Board invites the whole movement to participate in this year’s selection process and vote to fill those seats.
The [[m:Special:MyLanguage/Wikimedia Foundation elections committee|Elections Committee]] will oversee this process with support from Foundation staff [2]. The Board Governance Committee created a Board Selection Working Group from Trustees who cannot be candidates in the 2024 community- and affiliate-selected trustee selection process composed of Dariusz Jemielniak, Nataliia Tymkiv, Esra'a Al Shafei, Kathy Collins, and Shani Evenstein Sigalov [3]. The group is tasked with providing Board oversight for the 2024 trustee selection process, and for keeping the Board informed. More details on the roles of the Elections Committee, Board, and staff are here [4].
Here are the key planned dates:
* May 2024: Call for candidates and call for questions
* June 2024: Affiliates vote to shortlist 12 candidates (no shortlisting if 15 or less candidates apply) [5]
* June-August 2024: Campaign period
* End of August / beginning of September 2024: Two-week community voting period
* October–November 2024: Background check of selected candidates
* Board's Meeting in December 2024: New trustees seated
Learn more about the 2024 selection process - including the detailed timeline, the candidacy process, the campaign rules, and the voter eligibility criteria - on [[m:Special:MyLanguage/Wikimedia Foundation elections/2024|this Meta-wiki page]], and make your plan.
'''Election Volunteers'''
Another way to be involved with the 2024 selection process is to be an Election Volunteer. Election Volunteers are a bridge between the Elections Committee and their respective community. They help ensure their community is represented and mobilize them to vote. Learn more about the program and how to join on this [[m:Special:MyLanguage/Wikimedia Foundation elections/2024/Election Volunteers|Meta-wiki page]].
Best regards,
[[m:Special:MyLanguage/User:Pundit|Dariusz Jemielniak]] (Governance Committee Chair, Board Selection Working Group)
[1] https://meta.wikimedia.org/wiki/Special:MyLanguage/Wikimedia_Foundation_elections/2021/Results#Elected
[2] https://foundation.wikimedia.org/wiki/Committee:Elections_Committee_Charter
[3] https://foundation.wikimedia.org/wiki/Minutes:2023-08-15#Governance_Committee
[4] https://meta.wikimedia.org/wiki/Wikimedia_Foundation_elections_committee/Roles
[5] Even though the ideal number is 12 candidates for 4 open seats, the shortlisting process will be triggered if there are more than 15 candidates because the 1-3 candidates that are removed might feel ostracized and it would be a lot of work for affiliates to carry out the shortlisting process to only eliminate 1-3 candidates from the candidate list.<section end="announcement-content" />
</div>
[[User:MPossoupe_(WMF)|MPossoupe_(WMF)]]19:57, 12 Μαρτ 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MPossoupe (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26349432 -->
== <span lang="el" dir="ltr" class="mw-content-ltr">Το wiki σας σύντομα θα είναι μόνο για ανάγνωση</span> ==
<div lang="el" dir="ltr" class="mw-content-ltr">
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Διαβάστε αυτό το μήνυμα σε άλλη γλώσσα]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
<span class="mw-translate-fuzzy">Το [[foundation:|Ἰδρυμα Wikimedia]] δοκιμάζει την εναλλαγή μεταξύ των πρωτευόντων και δευτερόντων κέντρων δεδομένων του.</span> Με αυτόν τον τρόπο θα διασφαλιστεί ότι η Βικιπαίδεια και τα άλλα wiki του Wikimedia θα μπορούν να παραμείνουν ενεργά ακόμα και μετά από μία καταστροφή.
Όλη η κίνηση θα εναλλαχθεί στις '''{{#time:j xg|2024-03-20|el}}'''. Η δοκιμή θα ξεκινήσει στις '''[https://zonestamp.toolforge.org/{{#time:U|2024-03-20T14:00|en}} {{#time:H:i e|2024-03-20T14:00}}]''' (16:00 ώρα Ελλάδος και Κύπρου).
Δυστυχώς, λόγω κάποιων περιορισμών του [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], δεν θα υπάρχει δυνατότητα επεξεργασίας κατά τη διάρκεια της μετατόπισης της κίνησης. Ζητούμε συγγνώμη για την αναστάτωση, και καταβάλλουμε προσπάθειες αυτή να ελαχιστοποιηθεί στο μέλλον.
'''Για ένα σύντομο χρονικό διάστημα, θα μπορείτε να διαβάσετε όλα τα wiki, αλλά όχι να τα επεξεργαστείτε.'''
*Η επεξεργασία θα είναι αδύνατη για έως και μία ώρα την {{#time:l j xg Y|2024-03-20|el}}.
*Αν προσπαθήσετε να επεξεργαστείτε ή να αποθηκεύσετε μια σελίδα εκείνη την ώρα, θα δείτε ένα μήνυμα σφάλματος. Ελπίζουμε ότι δεν θα χαθούν επεξεργασίες εκείνη την ώρα, αλλά δεν μπορούμε να το εγγυηθούμε. Αν δείτε το μήνυμα σφάλματος, παρακαλούμε περιμένετε μέχρι να επανέλθουν όλα στο κανονικό. Τότε θα μπορέσετε να αποθηκεύσετε την αλλαγή σας. Ωστόσο προτείνουμε να κρατήσετε ένα αντίγραφο των αλλαγών σας, για κάθε ενδεχόμενο.
''Άλλα προβλήματα''
*Οι εργασίες στο υπόβαθρο θα είναι πιο αργές και κάποιες μπορεί να ακυρωθούν. Οι κόκκινοι σύνδεσμοι πιθανώς να μην ενημερώνονται τόσο γρήγορα όσο συνήθως. Αν δημιουργήσετε μια σελίδα που ήδη συνδέεται από κάπου αλλού, ο σύνδεσμος θα παραμείνει κόκκινος για περισσότερο χρόνο από ότι συνήθως. Κάποια διεργασίες που απαιτούν ώρα να εκτελεστούν θα αναγκαστούν να σταματήσουν.
* Αναμένουμε ότι οι αναπτύξεις κώδικα θα γίνουν όπως κάθε άλλη εβδομάδα. Ωστόσο, ορισμένες κατά περίπτωση παγώσεις κώδικα θα μπορούσαν να συμβούν αμέσως, εάν η επιχείρηση τις απαιτήσει στη συνέχεια.
* Το [[mw:Special:MyLanguage/GitLab|GitLab]] δεν θα είναι διαθέσιμο για περίπου 90 λεπτά.
Το έργο αυτό ενδέχεται να αναβληθεί εάν είναι απαραίτητο. Μπορείτε να [[wikitech:Switch_Datacenter|διαβάσετε το πρόγραμμα στο wikitech.wikimedia.org]]. Οι όποιες αλλαγές θα ανακοινωθούν στο πρόγραμμα. Θα υπάρξουν περισσότερες ειδοποιήσεις σχετικά με τη διαδικασία. Ένα μπάνερ θα προβληθεί σε όλα τα wiki 30 λεπτά πριν ξεκινήσει η επιχείρηση. '''Παρακαλούμε μοιραστείτε αυτή την πληροφορία με την κοινότητά σας.'''</div><section end="server-switch"/>
</div>
[[user:Trizek (WMF)|Trizek (WMF)]], 00:01, 15 Μαρτ 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=25636619 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Vote now to select members of the first U4C</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024/Announcement – vote opens|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Coordinating Committee/Election/2024/Announcement – vote opens}}&language=&action=page&filter= {{int:please-translate}}]''
Dear all,
I am writing to you to let you know the voting period for the Universal Code of Conduct Coordinating Committee (U4C) is open now through May 9, 2024. Read the information on the [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024|voting page on Meta-wiki]] to learn more about voting and voter eligibility.
The Universal Code of Conduct Coordinating Committee (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. Community members were invited to submit their applications for the U4C. For more information and the responsibilities of the U4C, please [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|review the U4C Charter]].
Please share this message with members of your community so they can participate as well.
On behalf of the UCoC project team,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 20:20, 25 Απρίλ 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26390244 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Sign up for the language community meeting on May 31st, 16:00 UTC</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="message"/>Hello all,
The next language community meeting is scheduled in a few weeks - May 31st at 16:00 UTC. If you're interested, you can [https://www.mediawiki.org/w/index.php?title=Wikimedia_Language_engineering/Community_meetings#31_May_2024 sign up on this wiki page].
This is a participant-driven meeting, where we share language-specific updates related to various projects, collectively discuss technical issues related to language wikis, and work together to find possible solutions. For example, in the last meeting, the topics included the machine translation service (MinT) and the languages and models it currently supports, localization efforts from the Kiwix team, and technical challenges with numerical sorting in files used on Bengali Wikisource.
Do you have any ideas for topics to share technical updates related to your project? Any problems that you would like to bring for discussion during the meeting? Do you need interpretation support from English to another language? Please reach out to me at ssethi(__AT__)wikimedia.org and [[etherpad:p/language-community-meeting-may-2024|add agenda items to the document here]].
We look forward to your participation!
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 21:23, 14 Καλομηνά 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SSethi (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26390244 -->
== <span lang="en" dir="ltr" class="mw-content-ltr"> Feedback invited on Procedure for Sibling Project Lifecycle</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Wikimedia Foundation Community Affairs Committee/Procedure for Sibling Project Lifecycle/Invitation for feedback (MM)|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation Community Affairs Committee/Procedure for Sibling Project Lifecycle/Invitation for feedback (MM)}}&language=&action=page&filter= {{int:please-translate}}]''
[[File:Sibling Project Lifecycle Conversation 3.png|150px|right|link=:m:Special:MyLanguage/Wikimedia Foundation Community Affairs Committee/Procedure for Sibling Project Lifecycle]]
Dear community members,
The [[:m:Special:MyLanguage/Wikimedia Foundation Community Affairs Committee|Community Affairs Committee]] (CAC) of the [[:m:Special:MyLanguage/Wikimedia Foundation Board of Trustees|Wikimedia Foundation Board of Trustees]] invites you to give feedback on a '''[[:m:Special:MyLanguage/Wikimedia Foundation Community Affairs Committee/Procedure for Sibling Project Lifecycle|draft Procedure for Sibling Project Lifecycle]]'''. This draft Procedure outlines proposed steps and requirements for opening and closing Wikimedia Sibling Projects, and aims to ensure any newly approved projects are set up for success. This is separate from the procedures for opening or closing language versions of projects, which is handled by the [[:m:Special:MyLanguage/Language committee|Language Committee]] or [[m:Special:MyLanguage/Closing_projects_policy|closing projects policy]].
You can find the details on [[:m:Special:MyLanguage/Talk:Wikimedia Foundation Community Affairs Committee/Procedure for Sibling Project Lifecycle#Review|this page]], as well as the ways to give your feedback from today until the end of the day on '''June 23, 2024''', anywhere on Earth.
You can also share information about this with the interested project communities you work with or support, and you can also help us translate the procedure into more languages, so people can join the discussions in their own language.
On behalf of the CAC,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 02:25, 22 Καλομηνά 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26390244 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Announcing the first Universal Code of Conduct Coordinating Committee</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024/Announcement – results|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Coordinating Committee/Election/2024/Announcement – results}}&language=&action=page&filter= {{int:please-translate}}]''
Hello,
The scrutineers have finished reviewing the vote results. We are following up with the results of the first [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024|Universal Code of Conduct Coordinating Committee (U4C) election]].
We are pleased to announce the following individuals as regional members of the U4C, who will fulfill a two-year term:
* North America (USA and Canada)
** –
* Northern and Western Europe
** [[m:Special:MyLanguage/User:Ghilt|Ghilt]]
* Latin America and Caribbean
** –
* Central and East Europe (CEE)
** —
* Sub-Saharan Africa
** –
* Middle East and North Africa
** [[m:Special:MyLanguage/User:Ibrahim.ID|Ibrahim.ID]]
* East, South East Asia and Pacific (ESEAP)
** [[m:Special:MyLanguage/User:0xDeadbeef|0xDeadbeef]]
* South Asia
** –
The following individuals are elected to be community-at-large members of the U4C, fulfilling a one-year term:
* [[m:Special:MyLanguage/User:Barkeep49|Barkeep49]]
* [[m:Special:MyLanguage/User:Superpes15|Superpes15]]
* [[m:Special:MyLanguage/User:Civvì|Civvì]]
* [[m:Special:MyLanguage/User:Luke081515|Luke081515]]
* –
* –
* –
* –
Thank you again to everyone who participated in this process and much appreciation to the candidates for your leadership and dedication to the Wikimedia movement and community.
Over the next few weeks, the U4C will begin meeting and planning the 2024-25 year in supporting the implementation and review of the UCoC and Enforcement Guidelines. Follow their work on [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Meta-wiki]].
On behalf of the UCoC project team,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 08:15, 3 Κερασινού 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26390244 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">The final text of the Wikimedia Movement Charter is now on Meta</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Announcement - Final draft available|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Movement Charter/Drafting Committee/Announcement - Final draft available}}&language=&action=page&filter= {{int:please-translate}}]''
Hi everyone,
The final text of the [[m:Special:MyLanguage/Movement Charter|Wikimedia Movement Charter]] is now up on Meta in more than 20 languages for your reading.
'''What is the Wikimedia Movement Charter?'''
The Wikimedia Movement Charter is a proposed document to define roles and responsibilities for all the members and entities of the Wikimedia movement, including the creation of a new body – the Global Council – for movement governance.
'''Join the Wikimedia Movement Charter “Launch Party”'''
Join the [[m:Special:MyLanguage/Event:Movement Charter Launch Party|“Launch Party”]] on '''June 20, 2024''' at '''14.00-15.00 UTC''' ([https://zonestamp.toolforge.org/1718892000 your local time]). During this call, we will celebrate the release of the final Charter and present the content of the Charter. Join and learn about the Charter before casting your vote.
'''Movement Charter ratification vote'''
Voting will commence on SecurePoll on '''June 25, 2024''' at '''00:01 UTC''' and will conclude on '''July 9, 2024''' at '''23:59 UTC.''' You can read more about the [[m:Special:MyLanguage/Movement Charter/Ratification/Voting|voting process, eligibility criteria, and other details]] on Meta.
If you have any questions, please leave a comment on the [[m:Special:MyLanguage/Talk:Movement Charter|Meta talk page]] or email the MCDC at [mailto:mcdc@wikimedia.org mcdc@wikimedia.org].
On behalf of the MCDC,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 08:44, 11 Κερασινού 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26390244 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Voting to ratify the Wikimedia Movement Charter is now open – cast your vote</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Announcement - Ratification vote opens|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Movement Charter/Drafting Committee/Announcement - Ratification vote opens}}&language=&action=page&filter= {{int:please-translate}}]''
Hello everyone,
The voting to ratify the [[m:Special:MyLanguage/Movement Charter|'''Wikimedia Movement Charter''']] is now open. The Wikimedia Movement Charter is a document to define roles and responsibilities for all the members and entities of the Wikimedia movement, including the creation of a new body – the Global Council – for movement governance.
The final version of the Wikimedia Movement Charter is [[m:Special:MyLanguage/Movement Charter|available on Meta in different languages]] and attached [https://commons.wikimedia.org/wiki/File:Wikimedia_Movement_Charter_(June_2024).pdf here in PDF format] for your reading.
Voting commenced on SecurePoll on '''June 25, 2024''' at '''00:01 UTC''' and will conclude on '''July 9, 2024''' at '''23:59 UTC'''. Please read more on the [[m:Special:MyLanguage/Movement Charter/Ratification/Voting|voter information and eligibility details]].
After reading the Charter, please [[Special:SecurePoll/vote/398|'''vote here''']] and share this note further.
If you have any questions about the ratification vote, please contact the Charter Electoral Commission at [mailto:cec@wikimedia.org '''cec@wikimedia.org'''].
On behalf of the CEC,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 10:52, 25 Κερασινού 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26989444 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Voting to ratify the Wikimedia Movement Charter is ending soon</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Announcement - Final reminder|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Movement Charter/Drafting Committee/Announcement - Final reminder}}&language=&action=page&filter= {{int:please-translate}}]''
Hello everyone,
This is a kind reminder that the voting period to ratify the [[m:Special:MyLanguage/Movement Charter|Wikimedia Movement Charter]] will be closed on '''July 9, 2024''', at '''23:59 UTC'''.
If you have not voted yet, please vote [[m:Special:SecurePoll/vote/398|on SecurePoll]].
On behalf of the [[m:Special:MyLanguage/Movement_Charter/Ratification/Voting#Electoral_Commission|Charter Electoral Commission]],<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 03:45, 8 Χορτοθερί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26989444 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">U4C Special Election - Call for Candidates</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election/Announcement – call for candidates|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election/Announcement – call for candidates}}&language=&action=page&filter= {{int:please-translate}}]''
Hello all,
A special election has been called to fill additional vacancies on the U4C. The call for candidates phase is open from now through July 19, 2024.
The [[:m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the [[:foundation:Wikimedia Foundation Universal Code of Conduct|UCoC]]. Community members are invited to submit their applications in the special election for the U4C. For more information and the responsibilities of the U4C, please review the [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|U4C Charter]].
In this special election, according to [[Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter#2. Elections and Terms|chapter 2 of the U4C charter]], there are 9 seats available on the U4C: '''four''' community-at-large seats and '''five''' regional seats to ensure the U4C represents the diversity of the movement. [[Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter#5. Glossary|No more than two members of the U4C can be elected from the same home wiki]]. Therefore, candidates must not have English Wikipedia, German Wikipedia, or Italian Wikipedia as their home wiki.
Read more and submit your application on [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election|Meta-wiki]].
In cooperation with the U4C,<section end="announcement-content" />
</div>
-- [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 00:03, 10 Χορτοθερί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26989444 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Wikimedia Movement Charter ratification voting results</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Movement Charter/Drafting Committee/Announcement - Results of the ratification vote|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Movement Charter/Drafting Committee/Announcement - Results of the ratification vote}}&language=&action=page&filter= {{int:please-translate}}]''
Hello everyone,
After carefully tallying both individual and affiliate votes, the [[m:Special:MyLanguage/Movement Charter/Ratification/Voting#Electoral Commission|Charter Electoral Commission]] is pleased to announce the final results of the Wikimedia Movement Charter voting.
As [[m:Special:MyLanguage/Talk:Movement Charter#Thank you for your participation in the Movement Charter ratification vote!|communicated]] by the Charter Electoral Commission, we reached the quorum for both Affiliate and individual votes by the time the vote closed on '''July 9, 23:59 UTC'''. We thank all 2,451 individuals and 129 Affiliate representatives who voted in the ratification process. Your votes and comments are invaluable for the future steps in Movement Strategy.
The final results of the [[m:Special:MyLanguage/Movement Charter|Wikimedia Movement Charter]] ratification voting held between 25 June and 9 July 2024 are as follows:
'''Individual vote:'''
Out of 2,451 individuals who voted as of July 9 23:59 (UTC), 2,446 have been accepted as valid votes. Among these, '''1,710''' voted “yes”; '''623''' voted “no”; and '''113''' selected “–” (neutral). Because the neutral votes don’t count towards the total number of votes cast, 73.30% voted to approve the Charter (1710/2333), while 26.70% voted to reject the Charter (623/2333).
'''Affiliates vote:'''
Out of 129 Affiliates designated voters who voted as of July 9 23:59 (UTC), 129 votes are confirmed as valid votes. Among these, '''93''' voted “yes”; '''18''' voted “no”; and '''18''' selected “–” (neutral). Because the neutral votes don’t count towards the total number of votes cast, 83.78% voted to approve the Charter (93/111), while 16.22% voted to reject the Charter (18/111).
'''Board of Trustees of the Wikimedia Foundation:'''
The Wikimedia Foundation Board of Trustees voted '''not to ratify''' the proposed Charter during their special Board meeting on July 8, 2024. The Chair of the Wikimedia Foundation Board of Trustees, Nataliia Tymkiv, [[m:Special:MyLanguage/Wikimedia_Foundation_Board_noticeboard/Board_resolution_and_vote_on_the_proposed_Movement_Charter|shared the result of the vote, the resolution, meeting minutes and proposed next steps]].
With this, the Wikimedia Movement Charter in its current revision is '''not ratified'''.
We thank you for your participation in this important moment in our movement’s governance.
The Charter Electoral Commission,
[[m:User:Abhinav619|Abhinav619]], [[m:User:Borschts|Borschts]], [[m:User:Iwuala Lucy|Iwuala Lucy]], [[m:User:Tochiprecious|Tochiprecious]], [[m:User:Der-Wir-Ing|Der-Wir-Ing]]<section end="announcement-content" />
</div>
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 17:52, 18 Χορτοθερί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26989444 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Vote now to fill vacancies of the first U4C</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election/Announcement – voting opens|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election/Announcement – voting opens}}&language=&action=page&filter= {{int:please-translate}}]''
Dear all,
I am writing to you to let you know the voting period for the Universal Code of Conduct Coordinating Committee (U4C) is open now through '''August 10, 2024'''. Read the information on the [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election|voting page on Meta-wiki]] to learn more about voting and voter eligibility.
The Universal Code of Conduct Coordinating Committee (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. Community members were invited to submit their applications for the U4C. For more information and the responsibilities of the U4C, please [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|review the U4C Charter]].
Please share this message with members of your community so they can participate as well.
In cooperation with the U4C,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 02:47, 27 Χορτοθερί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=26989444 -->
== <span lang="en" dir="ltr" class="mw-content-ltr">Reminder! Vote closing soon to fill vacancies of the first U4C</span> ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election/Announcement – reminder to vote|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election/Announcement – reminder to vote}}&language=&action=page&filter= {{int:please-translate}}]''
Dear all,
The voting period for the Universal Code of Conduct Coordinating Committee (U4C) is closing soon. It is open through 10 August 2024. Read the information on [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2024_Special_Election#Voting|the voting page on Meta-wiki to learn more about voting and voter eligibility]]. If you are eligible to vote and have not voted in this special election, it is important that you vote now.
'''Why should you vote?''' The U4C is a global group dedicated to providing an equitable and consistent implementation of the UCoC. Community input into the committee membership is critical to the success of the UCoC.
Please share this message with members of your community so they can participate as well.
In cooperation with the U4C,<section end="announcement-content" />
</div>
-- [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 15:30, 6 Aλωναρί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=27183190 -->
== <span lang="en" dir="ltr">Coming soon: A new sub-referencing feature – try it!</span> ==
<div lang="en" dir="ltr">
<section begin="Sub-referencing"/>
[[File:Sub-referencing reuse visual.png|{{#ifeq:{{#dir}}|ltr|right|left}}|400px]]
Hello. For many years, community members have requested an easy way to re-use references with different details. Now, a MediaWiki solution is coming: The new sub-referencing feature will work for wikitext and Visual Editor and will enhance the existing reference system. You can continue to use different ways of referencing, but you will probably encounter sub-references in articles written by other users. More information on [[m:Special:MyLanguage/WMDE Technical Wishes/Sub-referencing|the project page]].
'''We want your feedback''' to make sure this feature works well for you:
* [[m:Special:MyLanguage/WMDE Technical Wishes/Sub-referencing#Test|Please try]] the current state of development on beta wiki and [[m:Talk:WMDE Technical Wishes/Sub-referencing|let us know what you think]].
* [[m:WMDE Technical Wishes/Sub-referencing/Sign-up|Sign up here]] to get updates and/or invites to participate in user research activities.
[[m:Special:MyLanguage/Wikimedia Deutschland|Wikimedia Deutschland]]’s [[m:Special:MyLanguage/WMDE Technical Wishes|Technical Wishes]] team is planning to bring this feature to Wikimedia wikis later this year. We will reach out to creators/maintainers of tools and templates related to references beforehand.
Please help us spread the message. --[[m:User:Johannes Richter (WMDE)|Johannes Richter (WMDE)]] ([[m:User talk:Johannes Richter (WMDE)|talk]]) 10:36, 19 August 2024 (UTC)
<section end="Sub-referencing"/>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Johannes Richter (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Johannes_Richter_(WMDE)/Sub-referencing/massmessage_list&oldid=27309345 -->
== Sign up for the language community meeting on August 30th, 15:00 UTC ==
Hi all,
The next language community meeting is scheduled in a few weeks—on August 30th at 15:00 UTC. If you're interested in joining, you can [https://www.mediawiki.org/wiki/Wikimedia_Language_and_Product_Localization/Community_meetings#30_August_2024 sign up on this wiki page].
This participant-driven meeting will focus on sharing language-specific updates related to various projects, discussing technical issues related to language wikis, and working together to find possible solutions. For example, in the last meeting, topics included the Language Converter, the state of language research, updates on the Incubator conversations, and technical challenges around external links not working with special characters on Bengali sites.
Do you have any ideas for topics to share technical updates or discuss challenges? Please add agenda items to the document [https://etherpad.wikimedia.org/p/language-community-meeting-aug-2024 here] and reach out to ssethi(__AT__)wikimedia.org. We look forward to your participation!
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 23:19, 22 Aλωναρί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SSethi (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=27183190 -->
== <span lang="en" dir="ltr">Announcing the Universal Code of Conduct Coordinating Committee</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
:''[https://lists.wikimedia.org/hyperkitty/list/board-elections@lists.wikimedia.org/thread/OKCCN2CANIH2K7DXJOL2GPVDFWL27R7C/ Original message at wikimedia-l]. [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election/Announcement - results|You can find this message translated into additional languages on Meta-wiki.]] [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election/Announcement - results}}&language=&action=page&filter= {{int:please-translate}}]''
Hello all,
The scrutineers have finished reviewing the vote and the [[m:Special:MyLanguage/Elections Committee|Elections Committee]] have certified the [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election/Results|results]] for the [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2024 Special Election|Universal Code of Conduct Coordinating Committee (U4C) special election]].
I am pleased to announce the following individual as regional members of the U4C, who will fulfill a term until 15 June 2026:
* North America (USA and Canada)
** Ajraddatz
The following seats were not filled during this special election:
* Latin America and Caribbean
* Central and East Europe (CEE)
* Sub-Saharan Africa
* South Asia
* The four remaining Community-At-Large seats
Thank you again to everyone who participated in this process and much appreciation to the candidates for your leadership and dedication to the Wikimedia movement and community.
Over the next few weeks, the U4C will begin meeting and planning the 2024-25 year in supporting the implementation and review of the UCoC and Enforcement Guidelines. You can follow their work on [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Meta-Wiki]].
On behalf of the U4C and the Elections Committee,<section end="announcement-content" />
</div>
[[m:User:RamzyM (WMF)|RamzyM (WMF)]] 14:06, 2 Σταυρί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=27183190 -->
== <span lang="en" dir="ltr">Have your say: Vote for the 2024 Board of Trustees!</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Hello all,
The voting period for the [[m:Special:MyLanguage/Wikimedia Foundation elections/2024|2024 Board of Trustees election]] is now open. There are twelve (12) candidates running for four (4) seats on the Board.
Learn more about the candidates by [[m:Special:MyLanguage/Wikimedia Foundation elections/2024/Candidates|reading their statements]] and their [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2024/Questions_for_candidates|answers to community questions]].
When you are ready, go to the [[Special:SecurePoll/vote/400|SecurePoll]] voting page to vote. '''The vote is open from September 3rd at 00:00 UTC to September 17th at 23:59 UTC'''.
To check your voter eligibility, please visit the [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2024/Voter_eligibility_guidelines|voter eligibility page]].
Best regards,
The Elections Committee and Board Selection Working Group<section end="announcement-content" />
</div>
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 12:14, 3 Σταυρί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=27183190 -->
== <span lang="el" dir="ltr">Το wiki σας σύντομα θα είναι μόνο για ανάγνωση</span> ==
<div lang="el" dir="ltr">
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Διαβάστε αυτό το μήνυμα σε άλλη γλώσσα]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
<span class="mw-translate-fuzzy">Το [[foundation:|Ἰδρυμα Wikimedia]] δοκιμάζει την εναλλαγή μεταξύ των πρωτευόντων και δευτερόντων κέντρων δεδομένων του.</span> Με αυτόν τον τρόπο θα διασφαλιστεί ότι η Βικιπαίδεια και τα άλλα wiki του Wikimedia θα μπορούν να παραμείνουν ενεργά ακόμα και μετά από μία καταστροφή.
Όλη η κίνηση θα εναλλαχθεί στις '''{{#time:j xg|2024-09-25|el}}'''. Η δοκιμή θα ξεκινήσει στις '''[https://zonestamp.toolforge.org/{{#time:U|2024-09-25T15:00|en}} {{#time:H:i e|2024-09-25T15:00}}]''' (18:00 ώρα Ελλάδος και Κύπρου).
Δυστυχώς, λόγω κάποιων περιορισμών του [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], δεν θα υπάρχει δυνατότητα επεξεργασίας κατά τη διάρκεια της μετατόπισης της κίνησης. Ζητούμε συγγνώμη για την αναστάτωση, και καταβάλλουμε προσπάθειες αυτή να ελαχιστοποιηθεί στο μέλλον.
Ένα μπάνερ θα προβληθεί σε όλα τα wiki 30 λεπτά πριν ξεκινήσει η επιχείρηση. <span lang="en" dir="ltr" class="mw-content-ltr">This banner will remain visible until the end of the operation.</span>
'''Για ένα σύντομο χρονικό διάστημα, θα μπορείτε να διαβάσετε όλα τα wiki, αλλά όχι να τα επεξεργαστείτε.'''
*Η επεξεργασία θα είναι αδύνατη για έως και μία ώρα την {{#time:l j xg Y|2024-09-25|el}}.
*Αν προσπαθήσετε να επεξεργαστείτε ή να αποθηκεύσετε μια σελίδα εκείνη την ώρα, θα δείτε ένα μήνυμα σφάλματος. Ελπίζουμε ότι δεν θα χαθούν επεξεργασίες εκείνη την ώρα, αλλά δεν μπορούμε να το εγγυηθούμε. Αν δείτε το μήνυμα σφάλματος, παρακαλούμε περιμένετε μέχρι να επανέλθουν όλα στο κανονικό. Τότε θα μπορέσετε να αποθηκεύσετε την αλλαγή σας. Ωστόσο προτείνουμε να κρατήσετε ένα αντίγραφο των αλλαγών σας, για κάθε ενδεχόμενο.
''Άλλα προβλήματα''
*Οι εργασίες στο υπόβαθρο θα είναι πιο αργές και κάποιες μπορεί να ακυρωθούν. Οι κόκκινοι σύνδεσμοι πιθανώς να μην ενημερώνονται τόσο γρήγορα όσο συνήθως. Αν δημιουργήσετε μια σελίδα που ήδη συνδέεται από κάπου αλλού, ο σύνδεσμος θα παραμείνει κόκκινος για περισσότερο χρόνο από ότι συνήθως. Κάποια διεργασίες που απαιτούν ώρα να εκτελεστούν θα αναγκαστούν να σταματήσουν.
* Αναμένουμε ότι οι αναπτύξεις κώδικα θα γίνουν όπως κάθε άλλη εβδομάδα. Ωστόσο, ορισμένες κατά περίπτωση παγώσεις κώδικα θα μπορούσαν να συμβούν αμέσως, εάν η επιχείρηση τις απαιτήσει στη συνέχεια.
* Το [[mw:Special:MyLanguage/GitLab|GitLab]] δεν θα είναι διαθέσιμο για περίπου 90 λεπτά.
Το έργο αυτό ενδέχεται να αναβληθεί εάν είναι απαραίτητο. Μπορείτε να [[wikitech:Switch_Datacenter|διαβάσετε το πρόγραμμα στο wikitech.wikimedia.org]]. Οι όποιες αλλαγές θα ανακοινωθούν στο πρόγραμμα.
'''Παρακαλούμε μοιραστείτε αυτή την πληροφορία με την κοινότητά σας.'''</div><section end="server-switch"/>
</div>
[[User:Trizek_(WMF)|Trizek_(WMF)]], 09:37, 20 Σταυρί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=27248326 -->
== 'Wikidata item' link is moving. Find out where... ==
<div lang="en" dir="ltr" class="mw-content-ltr"><i>Apologies for cross-posting in English. Please consider translating this message.</i>{{tracked|T66315}}
Hello everyone, a small change will soon be coming to the user-interface of your Wikimedia project.
The [[d:Q16222597|Wikidata item]] [[w:|sitelink]] currently found under the <span style="color: #54595d;"><u>''General''</u></span> section of the '''Tools''' sidebar menu will move into the <span style="color: #54595d;"><u>''In Other Projects''</u></span> section.
We would like the Wiki communities feedback so please let us know or ask questions on the [[m:Talk:Wikidata_For_Wikimedia_Projects/Projects/Move_Wikidata_item_link|Discussion page]] before we enable the change which can take place October 4 2024, circa 15:00 UTC+2.
More information can be found on [[m:Wikidata_For_Wikimedia_Projects/Projects/Move_Wikidata_item_link|the project page]].<br><br>We welcome your feedback and questions.<br> [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 18:57, 27 Σταυρί 2024 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Danny Benjafield (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_Test_List&oldid=27524260 -->
== Invitation to Participate in Wiki Loves Ramadan Community Engagement Survey ==
Dear all,
Apologies for writing in English. Please help to translate in your language.
We are excited to announce the upcoming [[m:Wiki Loves Ramadan|Wiki Loves Ramadan]] event, a global initiative aimed at celebrating Ramadan by enriching Wikipedia and its sister projects with content related to this significant time of year. As we plan to organize this event globally, your insights and experiences are crucial in shaping the best possible participation experience for the community.
To ensure that Wiki Loves Ramadan is engaging, inclusive, and impactful, we kindly invite you to participate in our community engagement survey. Your feedback will help us understand the needs of the community, set the event's focus, and guide our strategies for organizing this global event.
Survey link: https://forms.gle/f66MuzjcPpwzVymu5
Please take a few minutes to share your thoughts. Your input will make a difference!
Thank you for being a part of our journey to make Wiki Loves Ramadan a success.
Warm regards,
User:ZI Jony 03:20, 6 Τρυγομηνά 2024 (UTC)
Wiki Loves Ramadan Organizing Team
<!-- Το μήνυμα στάλθηκε από τον User:ZI Jony@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=27510935 -->
== <span lang="en" dir="ltr">Preliminary results of the 2024 Wikimedia Foundation Board of Trustees elections</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Hello all,
Thank you to everyone who participated in the [[m:Special:MyLanguage/Wikimedia Foundation elections/2024|2024 Wikimedia Foundation Board of Trustees election]]. Close to 6000 community members from more than 180 wiki projects have voted.
The following four candidates were the most voted:
# [[User:Kritzolina|Christel Steigenberger]]
# [[User:Nadzik|Maciej Artur Nadzikiewicz]]
# [[User:Victoria|Victoria Doronina]]
# [[User:Laurentius|Lorenzo Losa]]
While these candidates have been ranked through the vote, they still need to be appointed to the Board of Trustees. They need to pass a successful background check and meet the qualifications outlined in the Bylaws. New trustees will be appointed at the next Board meeting in December 2024.
[[m:Special:MyLanguage/Wikimedia_Foundation_elections/2024/Results|Learn more about the results on Meta-Wiki.]]
Best regards,
The Elections Committee and Board Selection Working Group
<section end="announcement-content" />
</div>
[[User:MPossoupe_(WMF)|MPossoupe_(WMF)]] 08:25, 14 Τρυγομηνά 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MPossoupe (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=27183190 -->
== <span lang="en" dir="ltr">Seeking volunteers to join several of the movement’s committees</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Each year, typically from October through December, several of the movement’s committees seek new volunteers.
Read more about the committees on their Meta-wiki pages:
* [[m:Special:MyLanguage/Affiliations_Committee|Affiliations Committee (AffCom)]]
* [[m:Special:MyLanguage/Ombuds_commission|Ombuds commission (OC)]]
* [[m:Special:MyLanguage/Wikimedia Foundation/Legal/Community Resilience and Sustainability/Trust and Safety/Case Review Committee|Case Review Committee (CRC)]]
Applications for the committees open on 16 October 2024. Applications for the Affiliations Committee close on 18 November 2024, and applications for the Ombuds commission and the Case Review Committee close on 2 December 2024. Learn how to apply by [[m:Special:MyLanguage/Wikimedia_Foundation/Legal/Committee_appointments|visiting the appointment page on Meta-wiki]]. Post to the talk page or email [mailto:cst@wikimedia.org cst@wikimedia.org] with any questions you may have.
For the Committee Support team,
<section end="announcement-content" />
</div>
-- [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 23:08, 16 Τρυγομηνά 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=27601062 -->
== 'Wikidata item' link is moving, finally. ==
Hello everyone, I previously wrote on the 27th September to advise that the ''Wikidata item'' sitelink will change places in the sidebar menu, moving from the '''General''' section into the '''In Other Projects''' section. The scheduled rollout date of 04.10.2024 was delayed due to a necessary request for Mobile/MinervaNeue skin. I am happy to inform that the global rollout can now proceed and will occur later today, 22.10.2024 at 15:00 UTC-2. [[m:Talk:Wikidata_For_Wikimedia_Projects/Projects/Move_Wikidata_item_link|Please let us know]] if you notice any problems or bugs after this change. There should be no need for null-edits or purging cache for the changes to occur. Kind regards, -[[m:User:Danny Benjafield (WMDE)|Danny Benjafield (WMDE)]] 11:29, 22 Τρυγομηνά 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Danny Benjafield (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_Test_List&oldid=27535421 -->
== Final Reminder: Join us in Making Wiki Loves Ramadan Success ==
Dear all,
We’re thrilled to announce the Wiki Loves Ramadan event, a global initiative to celebrate Ramadan by enhancing Wikipedia and its sister projects with valuable content related to this special time of year. As we organize this event globally, we need your valuable input to make it a memorable experience for the community.
Last Call to Participate in Our Survey: To ensure that Wiki Loves Ramadan is inclusive and impactful, we kindly request you to complete our community engagement survey. Your feedback will shape the event’s focus and guide our organizing strategies to better meet community needs.
* Survey Link: [https://docs.google.com/forms/d/e/1FAIpQLSffN4prPtR5DRSq9nH-t1z8hG3jZFBbySrv32YoxV8KbTwxig/viewform?usp=sf_link Complete the Survey]
* Deadline: November 10, 2024
Please take a few minutes to share your thoughts. Your input will truly make a difference!
'''Volunteer Opportunity''': Join the Wiki Loves Ramadan Team! We’re seeking dedicated volunteers for key team roles essential to the success of this initiative. If you’re interested in volunteer roles, we invite you to apply.
* Application Link: [https://docs.google.com/forms/d/e/1FAIpQLSfXiox_eEDH4yJ0gxVBgtL7jPe41TINAWYtpNp1JHSk8zhdgw/viewform?usp=sf_link Apply Here]
* Application Deadline: October 31, 2024
Explore Open Positions: For a detailed list of roles and their responsibilities, please refer to the position descriptions here: [https://docs.google.com/document/d/1oy0_tilC6kow5GGf6cEuFvdFpekcubCqJlaxkxh-jT4/ Position Descriptions]
Thank you for being part of this journey. We look forward to working together to make Wiki Loves Ramadan a success!
Warm regards,<br>
The Wiki Loves Ramadan Organizing Team 05:12, 29 Τρυγομηνά 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:ZI Jony@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=27568454 -->
== Sign up for the language community meeting on November 29th, 16:00 UTC ==
Hello everyone,
The next language community meeting is coming up next week, on November 29th, at 16:00 UTC (Zonestamp! For your timezone <https://zonestamp.toolforge.org/1732896000>). If you're interested in joining, you can sign up on this wiki page: <https://www.mediawiki.org/wiki/Wikimedia_Language_and_Product_Localization/Community_meetings#29_November_2024>.
This participant-driven meeting will be organized by the Wikimedia Foundation’s Language Product Localization team and the Language Diversity Hub. There will be presentations on topics like developing language keyboards, the creation of the Moore Wikipedia, and the language support track at Wiki Indaba. We will also have members from the Wayuunaiki community joining us to share their experiences with the Incubator and as a new community within our movement. This meeting will have a Spanish interpretation.
Looking forward to seeing you at the language community meeting! Cheers, [[User:SSethi (WMF)|Srishti]] 19:54, 21 Αεργί 2024 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SSethi (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=27746256 -->
== Launching! Join Us for Wiki Loves Ramadan 2025! ==
Dear All,
We’re happy to announce the launch of [[m:Wiki Loves Ramadan 2025|Wiki Loves Ramadan 2025]], an annual international campaign dedicated to celebrating and preserving Islamic cultures and history through the power of Wikipedia. As an active contributor to the Local Wikipedia, you are specially invited to participate in the launch.
This year’s campaign will be launched for you to join us write, edit, and improve articles that showcase the richness and diversity of Islamic traditions, history, and culture.
* Topic: [[m:Event:Wiki Loves Ramadan 2025 Campaign Launch|Wiki Loves Ramadan 2025 Campaign Launch]]
* When: Jan 19, 2025
* Time: 16:00 Universal Time UTC and runs throughout Ramadan (starting February 25, 2025).
* Join Zoom Meeting: https://us02web.zoom.us/j/88420056597?pwd=NdrpqIhrwAVPeWB8FNb258n7qngqqo.1
* Zoom meeting hosted by [[m:Wikimedia Bangladesh|Wikimedia Bangladesh]]
To get started, visit the [[m:Wiki Loves Ramadan 2025|campaign page]] for details, resources, and guidelines: Wiki Loves Ramadan 2025.
Add [[m:Wiki Loves Ramadan 2025/Participant|your community here]], and organized Wiki Loves Ramadan 2025 in your local language.
Whether you’re a first-time editor or an experienced Wikipedian, your contributions matter. Together, we can ensure Islamic cultures and traditions are well-represented and accessible to all.
Feel free to invite your community and friends too. Kindly reach out if you have any questions or need support as you prepare to participate.
Let’s make Wiki Loves Ramadan 2025 a success!
For the [[m:Wiki Loves Ramadan 2025/Team|International Team]] 12:08, 16 Καλανταρί 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:ZI Jony@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=27568454 -->
== Universal Code of Conduct annual review: provide your comments on the UCoC and Enforcement Guidelines ==
<div lang="en" dir="ltr" class="mw-content-ltr">
My apologies for writing in English.
{{Int:Please-translate}}.
I am writing to you to let you know the annual review period for the Universal Code of Conduct and Enforcement Guidelines is open now. You can make suggestions for changes through 3 February 2025. This is the first step of several to be taken for the annual review.
[[m:Special:MyLanguage/Universal_Code_of_Conduct/Annual_review|Read more information and find a conversation to join on the UCoC page on Meta]].
The [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 01:11, 24 Καλανταρί 2025 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=27746256 -->
== Feminism and Folklore 2025 starts soon ==
<div style="border:8px maroon ridge;padding:6px;>
[[File:Feminism and Folklore 2025 logo.svg|centre|550px|frameless]]
::<div lang="en" dir="ltr" class="mw-content-ltr">
<center>''{{int:please-translate}}''</center>
Dear Wiki Community,
You are humbly invited to organize the '''[[:m:Feminism and Folklore 2025|Feminism and Folklore 2025]]''' writing competition from February 1, 2025, to March 31, 2025 on your local Wikipedia. This year, Feminism and Folklore will focus on feminism, women's issues, and gender-focused topics for the project, with a [[:c:Commons:Wiki Loves Folklore 2025|Wiki Loves Folklore]] gender gap focus and a folk culture theme on Wikipedia.
You can help Wikipedia's coverage of folklore from your area by writing or improving articles about things like folk festivals, folk dances, folk music, women and queer folklore figures, folk game athletes, women in mythology, women warriors in folklore, witches and witch hunting, fairy tales, and more. Users can help create new articles, expand or translate from a generated list of suggested articles.
Organisers are requested to work on the following action items to sign up their communities for the project:
# Create a page for the contest on the local wiki.
# Set up a campaign on '''CampWiz''' tool.
# Create the local list and mention the timeline and local and international prizes.
# Request local admins for site notice.
# Link the local page and the CampWiz link on the [[:m:Feminism and Folklore 2025/Project Page|meta project page]].
This year, the Wiki Loves Folklore Tech Team has introduced two new tools to enhance support for the campaign. These tools include the '''Article List Generator by Topic''' and '''CampWiz'''. The Article List Generator by Topic enables users to identify articles on the English Wikipedia that are not present in their native language Wikipedia. Users can customize their selection criteria, and the tool will present a table showcasing the missing articles along with suggested titles. Additionally, users have the option to download the list in both CSV and wikitable formats. Notably, the CampWiz tool will be employed for the project for the first time, empowering users to effectively host the project with a jury. Both tools are now available for use in the campaign. [https://tools.wikilovesfolklore.org/ '''Click here to access these tools''']
Learn more about the contest and prizes on our [[:m:Feminism and Folklore 2025|project page]]. Feel free to contact us on our [[:m:Talk:Feminism and Folklore 2025/Project Page|meta talk page]] or by email us if you need any assistance.
We look forward to your immense coordination.
Thank you and Best wishes,
'''[[:m:Feminism and Folklore 2025|Feminism and Folklore 2025 International Team]]'''
::::Stay connected [[File:B&W Facebook icon.png|link=https://www.facebook.com/feminismandfolklore/|30x30px]] [[File:B&W Twitter icon.png|link=https://twitter.com/wikifolklore|30x30px]]
</div></div>
--[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 02:36, 29 Καλανταρί 2025 (UTC)
== Wiki Loves Folklore is back! ==
<div lang="en" dir="ltr" class="mw-content-ltr">
{{int:please-translate}}
[[File:Wiki Loves Folklore Logo.svg|right|150px|frameless]]
Dear Wiki Community,
You are humbly invited to participate in the '''[[:c:Commons:Wiki Loves Folklore 2025|Wiki Loves Folklore 2025]]''' an international media contest organized on Wikimedia Commons to document folklore and intangible cultural heritage from different regions, including, folk creative activities and many more. It is held every year from the '''1st till the 31st''' of March.
You can help in enriching the folklore documentation on Commons from your region by taking photos, audios, videos, and [https://commons.wikimedia.org/w/index.php?title=Special:UploadWizard&campaign=wlf_2025 submitting] them in this commons contest.
You can also [[:c:Commons:Wiki Loves Folklore 2025/Organize|organize a local contest]] in your country and support us in translating the [[:c:Commons:Wiki Loves Folklore 2025/Translations|project pages]] to help us spread the word in your native language.
Feel free to contact us on our [[:c:Commons talk:Wiki Loves Folklore 2025|project Talk page]] if you need any assistance.
'''Kind regards,'''
'''Wiki loves Folklore International Team'''
--[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 02:36, 29 Καλανταρί 2025 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Tiven2240@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery/Wikipedia&oldid=26503019 -->
== Reminder: first part of the annual UCoC review closes soon ==
<div lang="en" dir="ltr" class="mw-content-ltr">
My apologies for writing in English.
{{Int:Please-translate}}.
This is a reminder that the first phase of the annual review period for the Universal Code of Conduct and Enforcement Guidelines will be closing soon. You can make suggestions for changes through [[d:Q614092|the end of day]], 3 February 2025. This is the first step of several to be taken for the annual review.
[[m:Special:MyLanguage/Universal_Code_of_Conduct/Annual_review|Read more information and find a conversation to join on the UCoC page on Meta]]. After review of the feedback, proposals for updated text will be published on Meta in March for another round of community review.
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 00:48, 3 Κούντουρονος 2025 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=28198931 -->
== <span lang="en" dir="ltr"> Upcoming Language Community Meeting (Feb 28th, 14:00 UTC) and Newsletter</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone!
[[File:WP20Symbols WIKI INCUBATOR.svg|right|frameless|150x150px|alt=An image symbolising multiple languages]]
We’re excited to announce that the next '''Language Community Meeting''' is happening soon, '''February 28th at 14:00 UTC'''! If you’d like to join, simply sign up on the '''[[mw:Wikimedia_Language_and_Product_Localization/Community_meetings#28_February_2025|wiki page]]'''.
This is a participant-driven meeting where we share updates on language-related projects, discuss technical challenges in language wikis, and collaborate on solutions. In our last meeting, we covered topics like developing language keyboards, creating the Moore Wikipedia, and updates from the language support track at Wiki Indaba.
'''Got a topic to share?''' Whether it’s a technical update from your project, a challenge you need help with, or a request for interpretation support, we’d love to hear from you! Feel free to '''reply to this message''' or add agenda items to the document '''[[etherpad:p/language-community-meeting-feb-2025|here]]'''.
Also, we wanted to highlight that the sixth edition of the Language & Internationalization newsletter (January 2025) is available here: [[:mw:Special:MyLanguage/Wikimedia Language and Product Localization/Newsletter/2025/January|Wikimedia Language and Product Localization/Newsletter/2025/January]]. This newsletter provides updates from the October–December 2024 quarter on new feature development, improvements in various language-related technical projects and support efforts, details about community meetings, and ideas for contributing to projects. To stay updated, you can subscribe to the newsletter on its wiki page: [[:mw:Wikimedia Language and Product Localization/Newsletter|Wikimedia Language and Product Localization/Newsletter]].
We look forward to your ideas and participation at the language community meeting, see you there!
<section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 08:29, 22 Κούντουρονος 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:SSethi (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=28217779 -->
== Universal Code of Conduct annual review: proposed changes are available for comment ==
<div lang="en" dir="ltr" class="mw-content-ltr">
My apologies for writing in English.
{{Int:Please-translate}}.
I am writing to you to let you know that [[m:Special:MyLanguage/Universal_Code_of_Conduct/Annual_review/Proposed_Changes|proposed changes]] to the [[foundation:Special:MyLanguage/Policy:Universal_Code_of_Conduct/Enforcement_guidelines|Universal Code of Conduct (UCoC) Enforcement Guidelines]] and [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Charter|Universal Code of Conduct Coordinating Committee (U4C) Charter]] are open for review. '''[[m:Special:MyLanguage/Universal_Code_of_Conduct/Annual_review/Proposed_Changes|You can provide feedback on suggested changes]]''' through the [[d:Q614092|end of day]] on Tuesday, 18 March 2025. This is the second step in the annual review process, the final step will be community voting on the proposed changes.
[[m:Special:MyLanguage/Universal_Code_of_Conduct/Annual_review|Read more information and find relevant links about the process on the UCoC annual review page on Meta]].
The [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] (U4C) is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Charter|you may review the U4C Charter]].
Please share this information with other members in your community wherever else might be appropriate.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] 18:51, 7 Μαρτ 2025 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=28307738 -->
== An improved dashboard for the Content Translation tool ==
<div lang="en" dir="ltr">
{{int:Hello}} Wikipedians,
Apologies as this message is not in your language, {{int:please-translate}}.
The [[mediawikiwiki:Special:MyLanguage/Wikimedia Language and Product Localization|Language and Product Localization team]] has improved the [https://test.wikipedia.org/w/index.php?title=Special:ContentTranslation&filter-type=automatic&filter-id=previous-edits&active-list=suggestions&from=en&to=es Content Translation dashboard] to create a consistent experience for all contributors using mobile and desktop devices. Below is a breakdown of important information about the improvement.
'''What are the improvements?'''<br>
The improved translation dashboard allows all logged-in users of the tool to enjoy a consistent experience regardless of their type of device.
With a harmonized experience, logged-in desktop users can now access the capabilities shown in the image below.
[[file:Content_Translation_new-dashboard.png|alt=|center|thumb|576x576px|Notice that in this screenshot, the new dashboard allows: Users to adjust suggestions with the "For you" and "...More" buttons to select general topics or community-created collections (like the example of Climate topic). Also, users can use translation to create new articles (as before) and expand existing articles section by section. You can see how suggestions are provided in the new dashboard in two groups ("Create new pages" and "Expand with new sections")-one for each activity.]]
[[File:Content_Translation_dashboard_on_desktop.png|alt=|center|thumb|577x577px|In the current dashboard, you will notice that you can't adjust suggestions to select topics or community-created collections. Also, you can't expand on existing articles by translating new sections.]]
'''Does this improvement change the current accessibility of this tool in this Wikipedia?'''<br>
The Content translation tool will still be in beta; therefore, only logged-in users who activated the tool from the [[en:wikipedia:Special:Preferences#mw-prefsection-betafeatures|beta features]] will continue to have access to the content translation tool. Also, if the tool is only available to a specific [[en:Wikipedia:User access levels|user group]], it will remain that way.
'''When do we plan to implement this improvement?'''<br>
We will implement it on your Wikipedia and others by 24th, March 2025.
'''What happens to the former dashboard after we implement the improvement?'''<br>
You can still access it in the tool for some time. We will remove it from all Wikipedias by May 2025, as maintaining it will no longer be productive.
'''Where can I test this improvement and report any issues before it is implemented in this Wiki?''' <br>
You can try the improved capabilities in the test wiki using this link: https://test.wikipedia.org/w/index.php?title=Special:ContentTranslation&campaign=contributionsmenu&to=es&filter-type=automatic&filter-id=previous-edits&active-list=suggestions&from=en#/ .
If you notice an issue related to the improved dashboard in the test wiki, please let us know in this thread and ping me, or report it in [https://phabricator.wikimedia.org/ Phabricator], adding these tags: <code>BUG REPORT</code> and <code>ContentTranslation</code>.
Please ask us any questions regarding this improvement in this thread. Thank you!
On behalf of the Language and Product Localization team.
</div>
<bdi lang="en" dir="ltr">[[User:UOzurumba (WMF)|UOzurumba (WMF)]]</bdi> 04:23, 14 Μαρτ 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:UOzurumba (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:UOzurumba_(WMF)/sandbox_CX_Unified_dashboard_announcement_list_2&oldid=28390868 -->
== <span lang="el" dir="ltr">Το wiki σας σύντομα θα είναι μόνο για ανάγνωση</span> ==
<div lang="el" dir="ltr">
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Διαβάστε αυτό το μήνυμα σε άλλη γλώσσα]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
Το [[foundation:|Ἰδρυμα Wikimedia]] θα μεταστρέψει την κίνηση μεταξύ των κέντρων δεδομένων του. Με αυτόν τον τρόπο θα διασφαλιστεί ότι η Βικιπαίδεια και τα άλλα wiki του Wikimedia θα μπορούν να παραμείνουν ενεργά ακόμα και μετά από μία καταστροφή.
Όλη η κίνηση θα εναλλαχθεί στις '''{{#time:j xg|2025-03-19|el}}'''. Η δοκιμή θα ξεκινήσει στις '''[https://zonestamp.toolforge.org/{{#time:U|2025-03-19T14:00|en}} {{#time:H:i e|2025-03-19T14:00}}]''' (16:00 ώρα Ελλάδος και Κύπρου).
Δυστυχώς, λόγω κάποιων περιορισμών του [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], δεν θα υπάρχει δυνατότητα επεξεργασίας κατά τη διάρκεια της μετατόπισης της κίνησης. Ζητούμε συγγνώμη για την αναστάτωση, και καταβάλλουμε προσπάθειες αυτή να ελαχιστοποιηθεί στο μέλλον.
Ένα μπάνερ θα προβληθεί σε όλα τα wiki 30 λεπτά πριν ξεκινήσει η επιχείρηση. Αυτό το μπάνερ θα παραμείνει ορατό μέχρι το τέλος της λειτουργίας.
'''Για ένα σύντομο χρονικό διάστημα, θα μπορείτε να διαβάσετε όλα τα wiki, αλλά όχι να τα επεξεργαστείτε.'''
*Η επεξεργασία θα είναι αδύνατη για έως και μία ώρα την {{#time:l j xg Y|2025-03-19|el}}.
*Αν προσπαθήσετε να επεξεργαστείτε ή να αποθηκεύσετε μια σελίδα εκείνη την ώρα, θα δείτε ένα μήνυμα σφάλματος. Ελπίζουμε ότι δεν θα χαθούν επεξεργασίες εκείνη την ώρα, αλλά δεν μπορούμε να το εγγυηθούμε. Αν δείτε το μήνυμα σφάλματος, παρακαλούμε περιμένετε μέχρι να επανέλθουν όλα στο κανονικό. Τότε θα μπορέσετε να αποθηκεύσετε την αλλαγή σας. Ωστόσο προτείνουμε να κρατήσετε ένα αντίγραφο των αλλαγών σας, για κάθε ενδεχόμενο.
''Άλλα προβλήματα''
*Οι εργασίες στο υπόβαθρο θα είναι πιο αργές και κάποιες μπορεί να ακυρωθούν. Οι κόκκινοι σύνδεσμοι πιθανώς να μην ενημερώνονται τόσο γρήγορα όσο συνήθως. Αν δημιουργήσετε μια σελίδα που ήδη συνδέεται από κάπου αλλού, ο σύνδεσμος θα παραμείνει κόκκινος για περισσότερο χρόνο από ότι συνήθως. Κάποια διεργασίες που απαιτούν ώρα να εκτελεστούν θα αναγκαστούν να σταματήσουν.
* Αναμένουμε ότι οι αναπτύξεις κώδικα θα γίνουν όπως κάθε άλλη εβδομάδα. Ωστόσο, ορισμένες κατά περίπτωση παγώσεις κώδικα θα μπορούσαν να συμβούν αμέσως, εάν η επιχείρηση τις απαιτήσει στη συνέχεια.
* Το [[mw:Special:MyLanguage/GitLab|GitLab]] δεν θα είναι διαθέσιμο για περίπου 90 λεπτά.
Το έργο αυτό ενδέχεται να αναβληθεί εάν είναι απαραίτητο. Μπορείτε να [[wikitech:Switch_Datacenter|διαβάσετε το πρόγραμμα στο wikitech.wikimedia.org]]. Οι όποιες αλλαγές θα ανακοινωθούν στο πρόγραμμα.
'''Παρακαλούμε μοιραστείτε αυτή την πληροφορία με την κοινότητά σας.'''</div><section end="server-switch"/>
</div>
<bdi lang="en" dir="ltr">[[User:MediaWiki message delivery|MediaWiki message delivery]]</bdi> 23:15, 14 Μαρτ 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=28307742 -->
== Final proposed modifications to the Universal Code of Conduct Enforcement Guidelines and U4C Charter now posted ==
<div lang="en" dir="ltr" class="mw-content-ltr">
The proposed modifications to the [[foundation:Special:MyLanguage/Policy:Universal_Code_of_Conduct/Enforcement_guidelines|Universal Code of Conduct Enforcement Guidelines]] and the U4C Charter [[m:Universal_Code_of_Conduct/Annual_review/2025/Proposed_Changes|are now on Meta-wiki for community notice]] in advance of the voting period. This final draft was developed from the previous two rounds of community review. Community members will be able to vote on these modifications starting on 17 April 2025. The vote will close on 1 May 2025, and results will be announced no later than 12 May 2025. The U4C election period, starting with a call for candidates, will open immediately following the announcement of the review results. More information will be posted on [[m:Special:MyLanguage//Universal_Code_of_Conduct/Coordinating_Committee/Election|the wiki page for the election]] soon.
Please be advised that this process will require more messages to be sent here over the next two months.
The [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee (U4C)]] is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, you may [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Charter|review the U4C Charter]].
Please share this message with members of your community so they can participate as well.
-- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User_talk:Keegan (WMF)|talk]]) 02:04, 4 Απρίλ 2025 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=28469465 -->
== Ukraine's Cultural Diplomacy Month 2025: Invitation ==
<div lang="en" dir="ltr">
[[File:UCDM 2025 general.png|180px|right]]
{{int:please-translate}}
Hello, dear Wikipedians!<br/>
[[:m:Special:MyLanguage/Wikimedia Ukraine|Wikimedia Ukraine]], in cooperation with the [[:en:Ministry of Foreign Affairs of Ukraine|MFA of Ukraine]] and [[:en:Ukrainian Institute|Ukrainian Institute]], has launched the fifth edition of writing challenge "'''[[:m:Special:MyLanguage/Ukraine's Cultural Diplomacy Month 2025|Ukraine's Cultural Diplomacy Month]]'''", which lasts from '''14th April''' until '''16th May 2025'''. The campaign is dedicated to famous Ukrainian artists of cinema, music, literature, architecture, design, and cultural phenomena of Ukraine that are now part of world heritage. We accept contributions in every language!
The most active contesters will receive prizes.
If you are interested in coordinating long-term community engagement for the campaign and becoming a local ambassador, we would love to hear from you! Please let us know your interest.
<br/>
We invite you to take part and help us improve the coverage of Ukrainian culture on Wikipedia in your language! Also, we plan to set up a [[:m:CentralNotice/Request/Ukraine's Cultural Diplomacy Month 2025|banner]] to notify users of the possibility to participate in such a challenge! [[:m:User:OlesiaLukaniuk (WMUA)|OlesiaLukaniuk (WMUA)]] ([[:m:User talk:OlesiaLukaniuk (WMUA)|talk]])
</div>
16:11, 16 Απρίλ 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Hide on Rosé@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:OlesiaLukaniuk_(WMUA)/list_of_wikis&oldid=28552112 -->
== Vote now on the revised UCoC Enforcement Guidelines and U4C Charter ==
<div lang="en" dir="ltr" class="mw-content-ltr">
The voting period for the revisions to the Universal Code of Conduct Enforcement Guidelines ("UCoC EG") and the UCoC's Coordinating Committee Charter is open now through the end of 1 May (UTC) ([https://zonestamp.toolforge.org/1746162000 find in your time zone]). [[m:Special:MyLanguage/Universal_Code_of_Conduct/Annual_review/2025/Voter_information|Read the information on how to participate and read over the proposal before voting]] on the UCoC page on Meta-wiki.
The [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee (U4C)]] is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review of the EG and Charter was planned and implemented by the U4C. Further information will be provided in the coming months about the review of the UCoC itself. For more information and the responsibilities of the U4C, you may [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Charter|review the U4C Charter]].
Please share this message with members of your community so they can participate as well.
In cooperation with the U4C -- [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User_talk:Keegan (WMF)|talk]]) 00:34, 17 Απρίλ 2025 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=28469465 -->
== Sub-referencing: User testing ==
<div lang="en" dir="ltr">
[[File:Sub-referencing reuse visual.png|400px|right]]
<small>''Apologies for writing in English, please help us by providing a translation below''</small>
Hi I’m Johannes from [[:m:Wikimedia Deutschland|Wikimedia Deutschland]]'s [[:m:WMDE Technical Wishes|Technical Wishes team]]. We are making great strides with the new [[:m:WMDE Technical Wishes/Sub-referencing|sub-referencing feature]] and we’d love to invite you to take part in two activities to help us move this work further:
#'''Try it out and share your feedback'''
#:[[:m:WMDE Technical Wishes/Sub-referencing# Test the prototype|Please try]] the updated ''wikitext'' feature [https://en.wikipedia.beta.wmflabs.org/wiki/Sub-referencing on the beta wiki] and let us know what you think, either [[:m:Talk:WMDE Technical Wishes/Sub-referencing|on our talk page]] or by [https://greatquestion.co/wikimediadeutschland/talktotechwish booking a call] with our UX researcher.
#'''Get a sneak peak and help shape the ''Visual Editor'' user designs'''
#:Help us test the new design prototypes by participating in user sessions – [https://greatquestion.co/wikimediadeutschland/gxk0taud/apply sign up here to receive an invite]. We're especially hoping to speak with people from underrepresented and diverse groups. If that's you, please consider signing up! No prior or extensive editing experience is required. User sessions will start ''May 14th''.
We plan to bring this feature to Wikimedia wikis later this year. We’ll reach out to wikis for piloting in time for deployments. Creators and maintainers of reference-related tools and templates will be contacted beforehand as well.
Thank you very much for your support and encouragement so far in helping bring this feature to life! </div> <bdi lang="en" dir="ltr">[[User:Johannes Richter (WMDE)|Johannes Richter (WMDE)]] ([[User talk:Johannes Richter (WMDE)|talk]])</bdi> 15:03, 28 Απρίλ 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johannes Richter (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Johannes_Richter_(WMDE)/Sub-referencing/massmessage_list&oldid=28628657 -->
== <span lang="en" dir="ltr">Vote on proposed modifications to the UCoC Enforcement Guidelines and U4C Charter</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
The voting period for the revisions to the Universal Code of Conduct Enforcement Guidelines and U4C Charter closes on 1 May 2025 at 23:59 UTC ([https://zonestamp.toolforge.org/1746162000 find in your time zone]). [[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2025/Voter information|Read the information on how to participate and read over the proposal before voting]] on the UCoC page on Meta-wiki.
The [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee|Universal Code of Conduct Coordinating Committee (U4C)]] is a global group dedicated to providing an equitable and consistent implementation of the UCoC. This annual review was planned and implemented by the U4C. For more information and the responsibilities of the U4C, you may [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Charter|review the U4C Charter]].
Please share this message with members of your community in your language, as appropriate, so they can participate as well.
In cooperation with the U4C -- <section end="announcement-content" />
</div>
<div lang="en" dir="ltr" class="mw-content-ltr">
[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 03:41, 29 Απρίλ 2025 (UTC)</div>
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=28618011 -->
== We will be enabling the new Charts extension on your wiki soon! ==
''(Apologies for posting in English)''
Hi all! We have good news to share regarding the ongoing problem with graphs and charts affecting all wikis that use them.
As you probably know, the [[:mw:Special:MyLanguage/Extension:Graph|old Graph extension]] was disabled in 2023 [[listarchive:list/wikitech-l@lists.wikimedia.org/thread/EWL4AGBEZEDMNNFTM4FRD4MHOU3CVESO/|due to security reasons]]. We’ve worked in these two years to find a solution that could replace the old extension, and provide a safer and better solution to users who wanted to showcase graphs and charts in their articles. We therefore developed the [[:mw:Special:MyLanguage/Extension:Chart|Charts extension]], which will be replacing the old Graph extension and potentially also the [[:mw:Extension:EasyTimeline|EasyTimeline extension]].
After successfully deploying the extension on Italian, Swedish, and Hebrew Wikipedia, as well as on MediaWiki.org, as part of a pilot phase, we are now happy to announce that we are moving forward with the next phase of deployment, which will also include your wiki.
The deployment will happen in batches, and will start from '''May 6'''. Please, consult [[:mw:Special:MyLanguage/Extension:Chart/Project#Deployment Timeline|our page on MediaWiki.org]] to discover when the new Charts extension will be deployed on your wiki. You can also [[:mw:Special:MyLanguage/Extension:Chart|consult the documentation]] about the extension on MediaWiki.org.
If you have questions, need clarifications, or just want to express your opinion about it, please refer to the [[:mw:Special:MyLanguage/Extension_talk:Chart/Project|project’s talk page on Mediawiki.org]], or ping me directly under this thread. If you encounter issues using Charts once it gets enabled on your wiki, please report it on the [[:mw:Extension_talk:Chart/Project|talk page]] or at [[phab:tag/charts|Phabricator]].
Thank you in advance! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 15:08, 6 Καλομηνά 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Sannita (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=28663781 -->
== <span lang="el" dir="ltr">Πρόσκληση Υποψηφιότητας για την Συντονιστική Επιτροπή του Παγκόσμιου Κώδικα Δεοντολογίας (U4C)</span> ==
<div lang="el" dir="ltr">
<section begin="announcement-content" />
Τα αποτελέσματα της ψηφοφορίας επί των Οδηγιών Εφαρμογής του Παγκόσμιου Κώδικα Δεοντολογίας και του Χάρτη της Συντονιστικής Επιτροπής του Παγκόσμιου Κώδικα Δεοντολογίας (U4C) είναι:[[m:Special:MyLanguage/Universal Code of Conduct/Annual review/2025#Results|διαθέσιμα στο Meta-wiki]].
Μπορείτε τώρα να [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2025/Candidates|υποβάλετε την υποψηφιότητά σας για να υπηρετήσετε στην U4C]] έως τις 29 Μαΐου 2025, ώρα 12:00 UTC. Πληροφορίες σχετικά με [[m:Special:MyLanguage/Universal Code of Conduct/Coordinating Committee/Election/2025|τα κριτήρια επιλεξιμότητας, τη διαδικασία και το χρονοδιάγραμμα βρίσκονται στο Meta-wiki]]. Η ψηφοφορία για τους υποψηφίους θα ξεκινήσει την 1η Ιουνίου 2025 και θα διαρκέσει δύο εβδομάδες, κλείνοντας στις 15 Ιουνίου 2025, ώρα 12:00 UTC.
Αν έχετε οποιεσδήποτε ερωτήσεις, μπορείτε να τις υποβάλετε στη [[m:Talk:Universal Code of Conduct/Coordinating Committee/Election/2025|σελίδα συζήτησης για τις εκλογές]] -- σε συνεργασία με το U4C, </div><section end="announcement-content" />
</div>
<bdi lang="en" dir="ltr">[[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User_talk:Keegan (WMF)|καλάτσεμαν]])</bdi> 22:07, 15 Καλομηνά 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=28618011 -->
== RfC ongoing regarding Abstract Wikipedia (and your project) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''(Apologies for posting in English, if this is not your first language)''
Hello all! We opened a discussion on Meta about a very delicate issue for the development of [[:m:Special:MyLanguage/Abstract Wikipedia|Abstract Wikipedia]]: where to store the abstract content that will be developed through functions from Wikifunctions and data from Wikidata. Since some of the hypothesis involve your project, we wanted to hear your thoughts too.
We want to make the decision process clear: we do not yet know which option we want to use, which is why we are consulting here. We will take the arguments from the Wikimedia communities into account, and we want to consult with the different communities and hear arguments that will help us with the decision. The decision will be made and communicated after the consultation period by the Foundation.
You can read the various hypothesis and have your say at [[:m:Abstract Wikipedia/Location of Abstract Content|Abstract Wikipedia/Location of Abstract Content]]. Thank you in advance! -- [[User:Sannita (WMF)|Sannita (WMF)]] ([[User talk:Sannita (WMF)|<span class="signature-talk">{{int:Talkpagelinktext}}</span>]]) 15:27, 22 Καλομηνά 2025 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Sannita (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Sannita_(WMF)/Mass_sending_test&oldid=28768453 -->
== <span lang="en" dir="ltr">Wikimedia Foundation Board of Trustees 2025 Selection & Call for Questions</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
:''[[m:Special:MyLanguage/Wikimedia Foundation elections/2025/Announcement/Selection announcement|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections/2025/Announcement/Selection announcement}}&language=&action=page&filter= {{int:please-translate}}]''
Dear all,
This year, the term of 2 (two) Community- and Affiliate-selected Trustees on the Wikimedia Foundation Board of Trustees will come to an end [1]. The Board invites the whole movement to participate in this year’s selection process and vote to fill those seats.
The Elections Committee will oversee this process with support from Foundation staff [2]. The Governance Committee, composed of trustees who are not candidates in the 2025 community-and-affiliate-selected trustee selection process (Raju Narisetti, Shani Evenstein Sigalov, Lorenzo Losa, Kathy Collins, Victoria Doronina and Esra’a Al Shafei) [3], is tasked with providing Board oversight for the 2025 trustee selection process and for keeping the Board informed. More details on the roles of the Elections Committee, Board, and staff are here [4].
Here are the key planned dates:
* May 22 – June 5: Announcement (this communication) and call for questions period [6]
* June 17 – July 1, 2025: Call for candidates
* July 2025: If needed, affiliates vote to shortlist candidates if more than 10 apply [5]
* August 2025: Campaign period
* August – September 2025: Two-week community voting period
* October – November 2025: Background check of selected candidates
* Board’s Meeting in December 2025: New trustees seated
Learn more about the 2025 selection process - including the detailed timeline, the candidacy process, the campaign rules, and the voter eligibility criteria - on this Meta-wiki page [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2025|[link]]].
'''Call for Questions'''
In each selection process, the community has the opportunity to submit questions for the Board of Trustees candidates to answer. The Election Committee selects questions from the list developed by the community for the candidates to answer. Candidates must answer all the required questions in the application in order to be eligible; otherwise their application will be disqualified. This year, the Election Committee will select 5 questions for the candidates to answer. The selected questions may be a combination of what’s been submitted from the community, if they’re alike or related. [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2025/Questions_for_candidates|[link]]]
'''Election Volunteers'''
Another way to be involved with the 2025 selection process is to be an Election Volunteer. Election Volunteers are a bridge between the Elections Committee and their respective community. They help ensure their community is represented and mobilize them to vote. Learn more about the program and how to join on this Meta-wiki page [[m:Wikimedia_Foundation_elections/2025/Election_volunteers|[link].]]
Thank you!
[1] https://meta.wikimedia.org/wiki/Wikimedia_Foundation_elections/2022/Results
[2] https://foundation.wikimedia.org/wiki/Committee:Elections_Committee_Charter
[3] https://foundation.wikimedia.org/wiki/Resolution:Committee_Membership,_December_2024
[4] https://meta.wikimedia.org/wiki/Wikimedia_Foundation_elections_committee/Roles
[5] https://meta.wikimedia.org/wiki/Wikimedia_Foundation_elections/2025/FAQ
[6] https://meta.wikimedia.org/wiki/Wikimedia_Foundation_elections/2025/Questions_for_candidates
Best regards,
Victoria Doronina
Board Liaison to the Elections Committee
Governance Committee<section end="announcement-content" />
</div>
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 03:07, 28 Καλομηνά 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=28618011 -->
== <span lang="en" dir="ltr"> Upcoming Deployment of the CampaignEvents Extension</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Hello everyone,
''(Apologies for posting in English if English is not your first language. Please help translate to your language.)''
The Campaigns Product Team is planning a global deployment of the '''[[:mw:Help:Extension:CampaignEvents|CampaignEvents extension]]''' to all Wikipedias, including this wiki, during the '''week of June 23rd'''.
This extension is designed to help organizers plan and manage events, WikiProjects, and other on-wiki collaborations - and to make these efforts more discoverable.
The three main features of this extension are:
* '''[[:m:Event_Center/Registration|Event Registration]]''': A simple way to sign up for events on the wiki.
* '''[[:m:CampaignEvents/Collaboration_list|Collaboration List]]''': A global list of events and a local list of WikiProjects, accessible at '''[[:m:Special:AllEvents|Special:AllEvents]]'''.
* '''[[:m:Campaigns/Foundation_Product_Team/Invitation_list|Invitation Lists]]''': A tool to help organizers find editors who might want to join, based on their past contributions.
'''Note''': The extension comes with a new user right called '''"Event Organizer"''', which will be managed by administrators on this wiki. Organizer tools like Event Registration and Invitation Lists will only work if someone is granted this right. The Collaboration List is available to everyone immediately after deployment.
The extension is already live on several wikis, including '''Meta, Wikidata, English Wikipedia''', and more ( [[m:CampaignEvents/Deployment_status#Current_Deployment_Status_for_CampaignEvents_extension| See the full deployment list]])
If you have any questions, concerns, or feedback, please feel free to share them on the [[m:Talk:CampaignEvents| extension talkpage]]. We’d love to hear from you before the rollout.
Thank you! <section end="message"/>
</div>
<bdi lang="en" dir="ltr">[[User:Udehb-WMF|Udehb-WMF]] ([[User talk:Udehb-WMF|καλάτσεμαν]]) 16:47, 29 Καλομηνά 2025 (UTC)</bdi>
<!-- Το μήνυμα στάλθηκε από τον User:Udehb-WMF@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Udehb-WMF/sandbox/deployment_audience&oldid=28803829 -->
== Vote now in the 2025 U4C Election ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Apologies for writing in English.
{{Int:Please-translate}}
Eligible voters are asked to participate in the 2025 [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee|Universal Code of Conduct Coordinating Committee]] election. More information–including an eligibility check, voting process information, candidate information, and a link to the vote–are available on Meta at the [[m:Special:MyLanguage/Universal_Code_of_Conduct/Coordinating_Committee/Election/2025|2025 Election information page]]. The vote closes on 17 June 2025 at [https://zonestamp.toolforge.org/1750161600 12:00 UTC].
Please vote if your account is eligible. Results will be available by 1 July 2025. -- In cooperation with the U4C, [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 23:01, 13 Κερασινού 2025 (UTC) </div>
<!-- Το μήνυμα στάλθηκε από τον User:Keegan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=28848819 -->
== <span lang="en" dir="ltr">Wikimedia Foundation Board of Trustees 2025 - Call for Candidates</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
:''<div class="plainlinks">[[m:Special:MyLanguage/Wikimedia Foundation elections/2025/Announcement/Call for candidates|{{int:interlanguage-link-mul}}]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-{{urlencode:Wikimedia Foundation elections/2025/Announcement/Call for candidates}}&language=&action=page&filter= {{int:please-translate}}]</div>
Hello all,
The [[m:Special:MyLanguage/Wikimedia Foundation elections/2025|call for candidates for the 2025 Wikimedia Foundation Board of Trustees selection is now open]] from June 17, 2025 – July 2, 2025 at 11:59 UTC [1]. The Board of Trustees oversees the Wikimedia Foundation's work, and each Trustee serves a three-year term [2]. This is a volunteer position.
This year, the Wikimedia community will vote in late August through September 2025 to fill two (2) seats on the Foundation Board. Could you – or someone you know – be a good fit to join the Wikimedia Foundation's Board of Trustees? [3]
Learn more about what it takes to stand for these leadership positions and how to submit your candidacy on [[m:Special:MyLanguage/Wikimedia Foundation elections/2025/Candidate application|this Meta-wiki page]] or encourage someone else to run in this year's election.
Best regards,
Abhishek Suryawanshi<br />
Chair of the Elections Committee
On behalf of the Elections Committee and Governance Committee
[1] https://meta.wikimedia.org/wiki/Special:MyLanguage/Wikimedia_Foundation_elections/2025/Call_for_candidates
[2] https://foundation.wikimedia.org/wiki/Legal:Bylaws#(B)_Term.
[3] https://meta.wikimedia.org/wiki/Special:MyLanguage/Wikimedia_Foundation_elections/2025/Resources_for_candidates<section end="announcement-content" />
</div>
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 17:44, 17 Κερασινού 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=28866958 -->
== <span lang="en" dir="ltr">Sister Projects Task Force reviews Wikispore and Wikinews</span> ==
<div lang="en" dir="ltr">
<section begin="message"/>
Dear Wikimedia Community,
The [[m:Wikimedia Foundation Community Affairs Committee|Community Affairs Committee (CAC)]] of the Wikimedia Foundation Board of Trustees assigned [[m:Wikimedia Foundation Community Affairs Committee/Sister Projects Task Force|the Sister Projects Task Force (SPTF)]] to update and implement a procedure for assessing the lifecycle of Sister Projects – wiki [[m:Wikimedia projects|projects supported by Wikimedia Foundation (WMF)]].
A vision of relevant, accessible, and impactful free knowledge has always guided the Wikimedia Movement. As the ecosystem of Wikimedia projects continues to evolve, it is crucial that we periodically review existing projects to ensure they still align with our goals and community capacity.
Despite their noble intent, some projects may no longer effectively serve their original purpose. '''Reviewing such projects is not about giving up – it's about responsible stewardship of shared resources'''. Volunteer time, staff support, infrastructure, and community attention are finite, and the non-technical costs tend to grow significantly as our ecosystem has entered a different age of the internet than the one we were founded in. Supporting inactive projects or projects that didn't meet our ambitions can unintentionally divert these resources from areas with more potential impact.
Moreover, maintaining projects that no longer reflect the quality and reliability of the Wikimedia name stands for, involves a reputational risk. An abandoned or less reliable project affects trust in the Wikimedia movement.
Lastly, '''failing to sunset or reimagine projects that are no longer working can make it much harder to start new ones'''. When the community feels bound to every past decision – no matter how outdated – we risk stagnation. A healthy ecosystem must allow for evolution, adaptation, and, when necessary, letting go. If we create the expectation that every project must exist indefinitely, we limit our ability to experiment and innovate.
Because of this, SPTF reviewed two requests concerning the lifecycle of the Sister Projects to work through and demonstrate the review process. We chose Wikispore as a case study for a possible new Sister Project opening and Wikinews as a case study for a review of an existing project. Preliminary findings were discussed with the CAC, and a community consultation on both proposals was recommended.
=== Wikispore ===
The [[m:Wikispore|application to consider Wikispore]] was submitted in 2019. SPTF decided to review this request in more depth because rather than being concentrated on a specific topic, as most of the proposals for the new Sister Projects are, Wikispore has the potential to nurture multiple start-up Sister Projects.
After careful consideration, the SPTF has decided '''not to recommend''' Wikispore as a Wikimedia Sister Project. Considering the current activity level, the current arrangement allows '''better flexibility''' and experimentation while WMF provides core infrastructural support.
We acknowledge the initiative's potential and seek community input on what would constitute a sufficient level of activity and engagement to reconsider its status in the future.
As part of the process, we shared the decision with the Wikispore community and invited one of its leaders, Pharos, to an SPTF meeting.
Currently, we especially invite feedback on measurable criteria indicating the project's readiness, such as contributor numbers, content volume, and sustained community support. This would clarify the criteria sufficient for opening a new Sister Project, including possible future Wikispore re-application. However, the numbers will always be a guide because any number can be gamed.
=== Wikinews ===
We chose to review Wikinews among existing Sister Projects because it is the one for which we have observed the highest level of concern in multiple ways.
Since the SPTF was convened in 2023, its members have asked for the community's opinions during conferences and community calls about Sister Projects that did not fulfil their promise in the Wikimedia movement.[https://commons.wikimedia.org/wiki/File:WCNA_2024._Sister_Projects_-_opening%3F_closing%3F_merging%3F_splitting%3F.pdf <nowiki>[1]</nowiki>][https://meta.wikimedia.org/wiki/Wikimedia_Foundation_Community_Affairs_Committee/Sister_Projects_Task_Force#Wikimania_2023_session_%22Sister_Projects:_past,_present_and_the_glorious_future%22 <nowiki>[2]</nowiki>][https://meta.wikimedia.org/wiki/WikiConvention_francophone/2024/Programme/Quelle_proc%C3%A9dure_pour_ouvrir_ou_fermer_un_projet_%3F <nowiki>[3]</nowiki>] Wikinews was the leading candidate for an evaluation because people from multiple language communities proposed it. Additionally, by most measures, it is the least active Sister Project, with the greatest drop in activity over the years.
While the Language Committee routinely opens and closes language versions of the Sister Projects in small languages, there has never been a valid proposal to close Wikipedia in major languages or any project in English. This is not true for Wikinews, where there was a proposal to close English Wikinews, which gained some traction but did not result in any action[https://meta.wikimedia.org/wiki/Proposals_for_closing_projects/Closure_of_English_Wikinews <nowiki>[4]</nowiki>][https://meta.wikimedia.org/wiki/WikiConvention_francophone/2024/Programme/Quelle_proc%C3%A9dure_pour_ouvrir_ou_fermer_un_projet_%3F <nowiki>[5]</nowiki>, see section 5] as well as a draft proposal to close all languages of Wikinews[https://meta.wikimedia.org/wiki/Talk:Proposals_for_closing_projects/Archive_2#Close_Wikinews_completely,_all_languages? <nowiki>[6]</nowiki>].
[[:c:File:Sister Projects Taskforce Wikinews review 2024.pdf|Initial metrics]] compiled by WMF staff also support the community's concerns about Wikinews.
Based on this report, SPTF recommends a community reevaluation of Wikinews. We conclude that its current structure and activity levels are the lowest among the existing sister projects. SPTF also recommends pausing the opening of new language editions while the consultation runs.
SPTF brings this analysis to a discussion and welcomes discussions of alternative outcomes, including potential restructuring efforts or integration with other Wikimedia initiatives.
'''Options''' mentioned so far (which might be applied to just low-activity languages or all languages) include but are not limited to:
*Restructure how Wikinews works and is linked to other current events efforts on the projects,
*Merge the content of Wikinews into the relevant language Wikipedias, possibly in a new namespace,
*Merge content into compatibly licensed external projects,
*Archive Wikinews projects.
Your insights and perspectives are invaluable in shaping the future of these projects. We encourage all interested community members to share their thoughts on the relevant discussion pages or through other designated feedback channels.
=== Feedback and next steps ===
We'd be grateful if you want to take part in a conversation on the future of these projects and the review process. We are setting up two different project pages: [[m:Public consultation about Wikispore|Public consultation about Wikispore]] and [[m:Public consultation about Wikinews|Public consultation about Wikinews]]. Please participate between 27 June 2025 and 27 July 2025, after which we will summarize the discussion to move forward. You can write in your own language.
I will also host a community conversation 16th July Wednesday 11.00 UTC and 17th July Thursday 17.00 UTC (call links to follow shortly) and will be around at Wikimania for more discussions.
<section end="message"/>
</div>
-- [[User:Victoria|Victoria]] on behalf of the Sister Project Task Force, 20:57, 27 Κερασινού 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/Sister_project_MassMassage_on_behalf_of_Victoria/Target_list&oldid=28911188 -->
== Wikidata Item and Property labels soon displayed in Wiki Watchlist/Recent Changes ==
''(Apologies for posting in English, you can help by translating into your language)''
Hello everyone, the [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Resolve_Labels|Wikidata For Wikimedia Projects]] team is excited to announce an upcoming change in how Wikidata edit changelogs are displayed in your [[Special:Watchlist|Watchlists]] and [[Special:RecentChanges|Recent Changes]] lists. If an edit is made on Wikidata that affects a page in another Wikimedia Project, the changelog will contain some information about the nature of the edit. This can include a QID (or Q-number), a PID (or P-number) and a value (which can be text, numbers, dates, or also QID or PID’s). Confused by these terms? See the [[d:Special:MyLanguage/Wikidata:Glossary|Wikidata:Glossary]] for further explanations.
The upcoming change is scheduled for '''17.07.2025''', between '''1300 - 1500 UTC'''.
The change will display the label (item name) alongside any QID or PIDs, as seen in the image below:
[[File:Apr10 edit summary on Wikidata.png|An edit sum entry on Wikidata, labels display alongside their P- and Q-no.'s]]
These changes will only be visible if you have Wikidata edits enabled in your User Preferences for Watchlists and Recent Changes, or have the active filter ‘Wikidata edits’ checkbox toggled on, directly on the Watchlist and Recent Changes pages.
Your bot and gadget may be affected! There are thousands of bots, gadgets and user-scripts and whilst we have researched potential effects to many of them, we cannot guarantee there won’t be some that are broken or affected by this change.
Further information and context about this change, including how your bot may be affected can be found on this [[m:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Resolve_Labels|project task page]]. We welcome your questions and feedback, please write to us on this dedicated [[m:Talk:Wikidata_For_Wikimedia_Projects/Clearer_Wikidata_Edit_Summaries/Resolve_Labels|Talk page]].
Thank you, - [[m:User:Danny_Benjafield_(WMDE)|Danny Benjafield (WMDE)]] on behalf of the Wikidata For Wikimedia Projects Team. [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 12:45, 14 Χορτοθερί 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Danny Benjafield (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Danny_Benjafield_(WMDE)/MassMessage_Test_List&oldid=28981877 -->
== <span lang="en" dir="ltr">Migration to Parsoid</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
<em>[[m:Special:MyLanguage/Wikimedia Foundation/Product and Technology/Parsoid Read Views/Read View Announcement|Read this in another language]]</em>
Hello everyone! I am glad to inform you that as the next step in the [[mw:Special:MyLanguage/Parsoid/Parser Unification|Parser Unification]] project, Parsoid will soon be turned on as the default article renderer on your wiki. We are gradually increasing the number of wikis using Parsoid, with the intention of making it the default wikitext parser for MediaWiki's next long-term support release. This will make our wikis more reliable and consistent for editors, readers, and tools to use, as well as making the development of future wikitext features easier.
If this disrupts your workflow, don’t worry! You can still opt out through a user preference or turn Parsoid off on the current page using the Tools submenu, as described in the [[mw:Special:MyLanguage/Help:Extension:ParserMigration|Extension:ParserMigration]] documentation.
There is [[mw:Special:MyLanguage/Parsoid/Parser_Unification/Confidence_Framework|more information about our roll-out strategy]] available, including the testing done before we turn on Parsoid for a new wiki.
To report bugs and issues, please look at our [[mw:Special:MyLanguage/Parsoid/Parser Unification/Known Issues|known issues]] documentation and if you found a new bug please create a phab ticket and tag the [[phab:project/view/5846|Content Transform Team in Phabricator]].
<section end="announcement-content" />
</div>
<bdi lang="en" dir="ltr">[[mw:User:ABreault (WMF)|Content Transform Team]]</bdi> 22:38, 19 Aλωναρί 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:ABreault (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Wikimedia_Foundation/Product_and_Technology/Parsoid_Read_Views/2025-08-25_Wikipedias&oldid=29152044 -->
== <span lang="el" dir="ltr">Οι προσωρινοί λογαριασμοί θα τεθούν σε λειτουργία σύντομα</span> ==
<div lang="el" dir="ltr">
<section begin="body"/>
Γεια σας, είμαστε η ομάδα [[mw:Special:MyLanguage/Product Safety and Integrity|Ασφάλειας και Ακεραιότητας Προϊόντων]] του Ιδρύματος Wikimedia. Θα θέλαμε να ανακοινώσουμε ότι '''σκοπεύουμε να ενεργοποιήσουμε τους [[mw:Special:MyLanguage/Trust and Safety Product/Temporary Accounts|προσωρινούς λογαριασμούς]] σε αυτό το wiki την εβδομάδα της 1ης Σεπτεμβρίου'''.
Οι προσωρινοί λογαριασμοί λειτουργούν με επιτυχία σε 30 wiki, συμπεριλαμβανομένων πολλών μεγάλων όπως τα γερμανικά, ιαπωνικά και τα γαλλικά. Η αλλαγή που φέρνουν είναι ιδιαίτερα σημαντική για τους συντάκτες που δεν έχουν συνδεθεί, τους οποίους αυτή η λειτουργία έχει σχεδιαστεί για να προστατεύει. Αλλά είναι επίσης σημαντική για μέλη της κοινότητας όπως καθοδηγητές, επιτηρητές και διαχειριστές – οποιονδήποτε που αναιρεί επεξεργασίες, φράζει χρήστες ή αλληλεπιδρά με συντάκτες που δεν έχουν συνδεθεί, ως μέρος της προσπάθειας να διατηρηθούν τα wiki ασφαλή και αξιόπιστα.
'''Γιατί δημιουργούμε προσωρινούς λογαριασμούς'''
Τα wiki μας πρέπει να είναι από προεπιλογή ασφαλέστερα για επεξεργασία για συντάκτες που δεν έχουν συνδεθεί. Οι προσωρινοί λογαριασμοί επιτρέπουν στους χρήστες να συνεχίσουν να επεξεργάζονται τα wiki χωρίς να δημιουργήσουν λογαριασμό, αποφεύγοντας παράλληλα τη δημόσια σύνδεση των επεξεργασιών τους με τη διεύθυνση IP τους. Πιστεύουμε ότι αυτό είναι προς το συμφέρον των συντάκτων που δεν έχουν συνδεθεί, οι οποίοι συμβάλλουν σημαντικά στα wiki και οι οποίοι μπορεί αργότερα να δημιουργήσουν λογαριασμούς και να διευρύνουν την κοινότητα των συντακτών, των διαχειριστών και άλλων ρόλων. Παρόλο που τα wiki προειδοποιούν τους συντάκτες που δεν έχουν συνδεθεί ότι η διεύθυνση IP τους θα συσχετιστεί με την επεξεργασία τους, πολλοί άνθρωποι μπορεί να μην καταλαβαίνουν τι είναι μια διεύθυνση IP ή ότι μπορεί να χρησιμοποιηθεί για να τους συνδέσει με άλλες πληροφορίες που τους αφορούν με τρόπους που δεν θα περίμεναν.
Επιπλέον, το λογισμικό και τα εργαλεία διαμεσολάβησης που χρησιμοποιούμε βασίζονται υπερβολικά στην προέλευση του δικτύου (διευθύνσεις IP) για την αναγνώριση χρηστών και μοτίβων δραστηριότητας, ειδικά καθώς οι ίδιες οι διευθύνσεις IP γίνονται λιγότερο σταθερές ως αναγνωριστικά. Οι προσωρινοί λογαριασμοί επιτρέπουν πιο ακριβείς αλληλεπιδράσεις με αποσυνδεδεμένους συντάκτες, συμπεριλαμβανομένων φραγών με περισσότερη ακρίβεια, και μπορούν να βοηθήσουν στον περιορισμό της συχνότητας με την οποία καταλήγουμε ακούσια να αποκλείουμε χρήστες καλή τη πίστει που χρησιμοποιούν τις ίδιες διευθύνσεις IP με κακόπιστους χρήστες.
'''Πώς λειτουργούν οι προσωρινοί λογαριασμοί'''
[[File:Temporary account banner and empty talk page.png|thumb]]
Κάθε φορά που ένας αποσυνδεδεμένος χρήστης δημοσιεύει μια επεξεργασία σε αυτό το wiki, θα δημιουργείται ένα cookie στο πρόγραμμα περιήγησης αυτού του χρήστη και θα δημιουργείται αυτόματα ένας προσωρινός λογαριασμός συνδεδεμένος με αυτό το cookie. Το όνομα αυτού του λογαριασμού θα ακολουθεί το μοτίβο: <code dir=ltr>~2025-12345-67</code> (μια κατσαρή παύλα, το τρέχον έτος, ένας αριθμός). Σε σελίδες όπως οι Πρόσφατες αλλαγές ή το ιστορικό σελίδας, θα εμφανίζεται αυτό το όνομα. Το cookie θα λήξει 90 ημέρες μετά τη δημιουργία του. Όσο υπάρχει, όλες οι επεξεργασίες που γίνονται από αυτή τη συσκευή θα αποδίδονται σε αυτόν τον προσωρινό λογαριασμό. Θα είναι ο ίδιος λογαριασμός ακόμα και αν αλλάξει η διεύθυνση IP, εκτός αν ο χρήστης διαγράψει τα cookie του ή χρησιμοποιήσει διαφορετική συσκευή ή πρόγραμμα περιήγησης. Ένα αρχείο με τη διεύθυνση IP που χρησιμοποιήθηκε κατά τη στιγμή κάθε επεξεργασίας θα αποθηκεύεται για 90 ημέρες μετά την επεξεργασία. Ωστόσο, μόνο ορισμένοι συνδεδεμένοι χρήστες θα μπορούν να το δουν.
'''Τι σημαίνει αυτό για τις διάφορες ομάδες χρηστών;'''
'''Για αποσυνδεδεμένους συντάκτες'''
* Αυτό αυξάνει την ιδιωτικότητα: επί του παρόντος, εάν δεν χρησιμοποιείτε έναν εγγεγραμμένο λογαριασμό για να επεξεργαστείτε, τότε όλοι μπορούν να δουν τη διεύθυνση IP για τις επεξεργασίες που κάνατε, ακόμη και μετά από 90 ημέρες. Αυτό δεν θα είναι πλέον δυνατό σε αυτό το wiki.
* Εάν χρησιμοποιείτε έναν προσωρινό λογαριασμό για να επεξεργαστείτε από διαφορετικές τοποθεσίες κατά τη διάρκεια των τελευταίων 90 ημερών (για παράδειγμα, από το σπίτι και από καφετέρια), το ιστορικό επεξεργασίας και οι διευθύνσεις IP για όλες αυτές τις τοποθεσίες θα καταγράφονται πλέον μαζί, για τον ίδιο προσωρινό λογαριασμό. Οι χρήστες που [[foundation:Special:MyLanguage/Policy:Access_to_temporary_account_IP_addresses|πληρούν τις σχετικές προϋποθέσεις]] θα μπορούν να δουν αυτά τα δεδομένα. Εάν αυτό δημιουργεί προβλήματα προσωπικής ασφάλειας για εσάς, παρακαλούμε επικοινωνήστε με το talktohumanrights στο wikimedia.org για συμβουλές.
'''Για μέλη της κοινότητας που αλληλεπιδρούν με αποσυνδεδεμένους συντάκτες'''
* Ένας προσωρινός λογαριασμός συνδέεται μοναδικά με μια συσκευή. Συγκριτικά, μια διεύθυνση IP μπορεί να μοιράζεται σε διαφορετικές συσκευές και άτομα (για παράδειγμα, διαφορετικά άτομα στο σχολείο ή στην εργασία μπορεί να έχουν την ίδια διεύθυνση IP).
* Σε σύγκριση με την τρέχουσα κατάσταση, θα είναι ασφαλέστερο να υποθέσουμε ότι η σελίδα συζήτησης ενός προσωρινού χρήστη ανήκει μόνο σε ένα άτομο και τα μηνύματα που αφήνονται εκεί θα διαβαστούν από αυτό. Όπως μπορείτε να δείτε στο στιγμιότυπο οθόνης, οι χρήστες προσωρινών λογαριασμών θα λαμβάνουν ειδοποιήσεις. Θα είναι επίσης δυνατό να τους ευχαριστήσετε για τις επεξεργασίες τους, να τους κάνετε ping σε συζητήσεις και να τους προσκαλέσετε να συμμετάσχουν περισσότερο στην κοινότητα.
'''Για χρήστες που χρησιμοποιούν δεδομένα διεύθυνσης IP για τη διατήρηση και συντήρηση του wiki'''
* '''Για περιπολούντες''' που παρακολουθούν επίμονους παραβάτες, διερευνούν παραβιάσεις πολιτικών κ.λπ.: Οι χρήστες που [[foundation:Special:MyLanguage/Policy:Access_to_temporary_account_IP_addresses|πληρούν τις προϋποθέσεις]] θα μπορούν να αποκαλύπτουν τις διευθύνσεις IP προσωρινών χρηστών και όλες τις συνεισφορές που έχουν γίνει από προσωρινούς λογαριασμούς από μια συγκεκριμένη διεύθυνση IP ή εύρος διευθύνσεων IP ([[Special:IPContributions]]). Θα έχουν επίσης πρόσβαση σε χρήσιμες πληροφορίες σχετικά με τις διευθύνσεις IP χάρη στη λειτουργία [[mw:Special:MyLanguage/Trust and Safety Product/IP Info|Πληροφορίες IP]]. Πολλά άλλα εργαλεία λογισμικού έχουν δημιουργηθεί ή προσαρμοστεί για να λειτουργούν με προσωρινούς λογαριασμούς, όπως το AbuseFilter, οι παγκόσμιες φραγές, τα Global User Contributions και άλλα. (Για πληροφορίες για εθελοντές προγραμματιστές σχετικά με τον τρόπο ενημέρωσης του κώδικα των εργαλείων σας – δείτε το τελευταίο μέρος του μηνύματος.)
* '''Για διαχειριστές που αποκλείουν συντάκτες που έχουν αποσυνδεθεί:'''
** Θα είναι δυνατό να φράσετε πολλούς χρήστες που κάνουν κατάχρηση απλώς αποκλείοντας τους προσωρινούς λογαριασμούς τους. Ένα άτομο που έχει αποκλειστεί δεν θα μπορεί να δημιουργήσει γρήγορα νέους προσωρινούς λογαριασμούς εάν ο διαχειριστής επιλέξει την επιλογή [[mw:Special:MyLanguage/Autoblock|αυτόματης φραγής]].
** Θα εξακολουθεί να είναι δυνατό να αποκλείσετε μια διεύθυνση IP ή ένα εύρος διευθύνσεων IP.
* Οι προσωρινοί λογαριασμοί δεν θα εφαρμοστούν αναδρομικά σε συνεισφορές που έγιναν πριν από την ανάπτυξη. Στο Special:Contributions, θα μπορείτε να δείτε τις υπάρχουσες συνεισφορές χρηστών IP, αλλά όχι τις νέες συνεισφορές που έγιναν από προσωρινούς λογαριασμούς σε αυτή τη διεύθυνση IP. Αντ' αυτού, θα πρέπει να χρησιμοποιήσετε το Special:IPContributions για τον σκοπό αυτό.
'''Τα αιτήματά μας προς εσάς και τα επόμενα βήματα'''
* Εάν γνωρίζετε εργαλεία, bots, gadgets κ.λπ. που χρησιμοποιούν δεδομένα σχετικά με διευθύνσεις IP ή είναι διαθέσιμα σε αποσυνδεδεμένους χρήστες, μπορείτε να δοκιμάσετε αν λειτουργούν στο [[testwiki:Main_Page|testwiki]] ή το [[test2wiki:Main_Page|test2wiki]]. Εάν είστε εθελοντής προγραμματιστής, [[mw:Special:MyLanguage/Trust and Safety Product/Temporary Accounts/For developers|διαβάστε την τεκμηρίωσή μας για προγραμματιστές]] και, ειδικότερα, την ενότητα σχετικά με τον τρόπο με τον οποίο [[mw:Special:MyLanguage/Trust and Safety Product/Temporary Accounts/For developers#How should I update my code?|ενδέχεται να χρειαστεί να ενημερώσετε τον κώδικά σας]].
* Αν θέλετε να δοκιμάσετε την εμπειρία του προσωρινού λογαριασμού, για παράδειγμα απλώς για να δείτε πώς είναι, μεταβείτε στο testwiki ή στο test2wiki και επεξεργαστείτε χωρίς να συνδεθείτε.
* Ενημερώστε μας αν γνωρίζετε τυχόν δυσκολίες που πρέπει να αντιμετωπιστούν. Θα προσπαθήσουμε να βοηθήσουμε και, αν δεν είμαστε σε θέση να το κάνουμε, θα εξετάσουμε τις διαθέσιμες επιλογές.
* Δείτε το [[m:Meta:Babel#Temporary_Accounts:_access_to_IP_addresses_and_next_steps|προηγούμενο μήνυμά]] μας σχετικά με τις απαιτήσεις για χρήστες χωρίς εκτεταμένα δικαιώματα που ενδέχεται να χρειάζονται πρόσβαση σε διευθύνσεις IP.
Για να μάθετε περισσότερα σχετικά με το έργο, ανατρέξτε στις [[mw:Special:MyLanguage/Trust and Safety Product/Temporary Accounts/FAQ|Συχνές Ερωτήσεις]] – εκεί θα βρείτε πολλές χρήσιμες απαντήσεις. Μπορείτε επίσης να [[mw:Special:MyLanguage/Trust and Safety Product/Temporary Accounts/Updates|δείτε τις ενημερώσεις]] (μόλις δημοσιεύσαμε μία) και να [[mw:Newsletter:Product Safety and Integrity|εγγραφείτε στο νέο μας ενημερωτικό δελτίο]]. Αν θέλετε να μιλήσετε μαζί μου (Szymon) εκτός wiki, θα με βρείτε στο Discord και στο Telegram. Ευχαριστούμε!<section end="body" />
</div>
<bdi lang="en" dir="ltr">[[m:user:NKohli (WMF)|NKohli (WMF)]], [[m:user:SGrabarczuk (WMF)|SGrabarczuk (WMF)]]</bdi> 21:36, 26 Aλωναρί 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Quiddity_(WMF)/sandbox6&oldid=29181713 -->
== <span lang="el" dir="ltr">Το wiki σας σύντομα θα είναι μόνο για ανάγνωση</span> ==
<div lang="el" dir="ltr">
<section begin="server-switch"/><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch|Διαβάστε αυτό το μήνυμα σε άλλη γλώσσα]] • [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Tech%2FServer+switch&language=&action=page&filter= {{int:please-translate}}]
Το [[foundation:|Ἰδρυμα Wikimedia]] θα μεταστρέψει την κίνηση μεταξύ των κέντρων δεδομένων του. Με αυτόν τον τρόπο θα διασφαλιστεί ότι η Βικιπαίδεια και τα άλλα wiki του Wikimedia θα μπορούν να παραμείνουν ενεργά ακόμα και μετά από μία καταστροφή.
Όλη η κίνηση θα εναλλαχθεί στις '''{{#time:j xg|2025-09-24|el}}'''. Η δοκιμή θα ξεκινήσει στις '''[https://zonestamp.toolforge.org/{{#time:U|2025-09-24T15:00|en}} {{#time:H:i e|2025-09-24T15:00}}]''' (17:00 ώρα Ελλάδος και Κύπρου).
Δυστυχώς, λόγω κάποιων περιορισμών του [[mw:Special:MyLanguage/Manual:What is MediaWiki?|MediaWiki]], δεν θα υπάρχει δυνατότητα επεξεργασίας κατά τη διάρκεια της μετατόπισης της κίνησης. Ζητούμε συγγνώμη για την αναστάτωση, και καταβάλλουμε προσπάθειες αυτή να ελαχιστοποιηθεί στο μέλλον.
Ένα μπάνερ θα προβληθεί σε όλα τα wiki 30 λεπτά πριν ξεκινήσει η επιχείρηση. Αυτό το μπάνερ θα παραμείνει ορατό μέχρι το τέλος της λειτουργίας.
<span lang="en" dir="ltr" class="mw-content-ltr">You can contribute to the [https://meta.wikimedia.org/w/index.php?title=Special%3ATranslate&group=Centralnotice-tgroup-read_only_banner&task=view&language=&filter=&action=translate translation or proofreading] of this banner text.</span>
'''Για ένα σύντομο χρονικό διάστημα, θα μπορείτε να διαβάσετε όλα τα wiki, αλλά όχι να τα επεξεργαστείτε.'''
*Η επεξεργασία θα είναι αδύνατη για έως και μία ώρα την {{#time:l j xg Y|2025-09-24|el}}.
*Αν προσπαθήσετε να επεξεργαστείτε ή να αποθηκεύσετε μια σελίδα εκείνη την ώρα, θα δείτε ένα μήνυμα σφάλματος. Ελπίζουμε ότι δεν θα χαθούν επεξεργασίες εκείνη την ώρα, αλλά δεν μπορούμε να το εγγυηθούμε. Αν δείτε το μήνυμα σφάλματος, παρακαλούμε περιμένετε μέχρι να επανέλθουν όλα στο κανονικό. Τότε θα μπορέσετε να αποθηκεύσετε την αλλαγή σας. Ωστόσο προτείνουμε να κρατήσετε ένα αντίγραφο των αλλαγών σας, για κάθε ενδεχόμενο.
''Άλλα προβλήματα''
*Οι εργασίες στο υπόβαθρο θα είναι πιο αργές και κάποιες μπορεί να ακυρωθούν. Οι κόκκινοι σύνδεσμοι πιθανώς να μην ενημερώνονται τόσο γρήγορα όσο συνήθως. Αν δημιουργήσετε μια σελίδα που ήδη συνδέεται από κάπου αλλού, ο σύνδεσμος θα παραμείνει κόκκινος για περισσότερο χρόνο από ότι συνήθως. Κάποιες διεργασίες που απαιτούν ώρα να εκτελεστούν θα αναγκαστούν να σταματήσουν.
* Αναμένουμε ότι οι αναπτύξεις κώδικα θα γίνουν όπως κάθε άλλη εβδομάδα. Ωστόσο, ορισμένες κατά περίπτωση παγώσεις κώδικα θα μπορούσαν να συμβούν αμέσως, εάν η επιχείρηση τις απαιτήσει στη συνέχεια.
* Το [[mw:Special:MyLanguage/GitLab|GitLab]] δεν θα είναι διαθέσιμο για περίπου 90 λεπτά.
Το έργο αυτό ενδέχεται να αναβληθεί εάν είναι απαραίτητο. Μπορείτε να [[wikitech:Switch_Datacenter|διαβάσετε το πρόγραμμα στο wikitech.wikimedia.org]]. Οι όποιες αλλαγές θα ανακοινωθούν στο πρόγραμμα.
'''Παρακαλούμε μοιραστείτε αυτή την πληροφορία με την κοινότητά σας.'''</div><section end="server-switch"/>
</div>
<span dir=ltr>[[m:User:Trizek (WMF)|Trizek (WMF)]] ([[m:User talk:Trizek (WMF)|{{int:talk}}]])</span> 15:42, 18 Σταυρί 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Trizek (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Non-Technical_Village_Pumps_distribution_list&oldid=29170715 -->
== <span lang="en" dir="ltr">Have your say: vote for the 2025 Board of Trustees</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Hello all,
The voting period for the [[m:Special:MyLanguage/Wikimedia Foundation elections/2025|2025 Board of Trustees election]] is now open. Candidates are running for two (2) seats on the Board.
To check your voter eligibility, please visit the [[m:Special:MyLanguage/Wikimedia Foundation elections/2025/Voter eligibility guidelines|voter eligibility page]].
Learn more about them by [[m:Special:MyLanguage/Wikimedia Foundation elections/2025/Candidates|reading their application statements and watch their candidacy videos]].
When you are ready, go to the [[m:Special:SecurePoll/vote/405|SecurePoll voting page to vote]].
'''The vote is open from October 8 at 00:00 UTC to October 22 at 23:59 UTC.'''
Best regards,
Abhishek Suryawanshi<br />Chair, Elections Committee<section end="announcement-content" />
</div>
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 04:48, 9 Τρυγομηνά 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:RamzyM (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29360896 -->
== <span lang="en" dir="ltr">Help us decide the name of the new Abstract Wikipedia project</span> ==
<div lang="en" dir="ltr">
<section begin="function1"/>
{{int:Hello}}. Please help pick a name for the new Abstract Wikipedia wiki project. This project will be a wiki that will enable users to combine functions from [[:f:|Wikifunctions]] and data from Wikidata in order to generate natural language sentences in any supported languages. These sentences can then be used by any Wikipedia (or elsewhere).
There will be two rounds of voting, each followed by legal review of candidates, with votes beginning on 20 October and 17 November 2025. Our goal is to have a final project name selected on mid-December 2025. If you would like to participate, then '''[[m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|please learn more and vote now]]''' at meta-wiki.
{{Int:Feedback-thanks-title}}
<section end="function1"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 11:43, 20 Τρυγομηνά 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Sannita (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29432175 -->
== <span lang="en" dir="ltr">Seeking volunteers to join several of the movement’s committees</span> ==
<div lang="en" dir="ltr">
<section begin="announcement-content" />
Each year, typically from October through December, several of the movement’s committees seek new volunteers.
Read more about the committees on their Meta-wiki pages:
* [[m:Special:MyLanguage/Affiliations Committee|Affiliations Committee (AffCom)]]
* [[m:Special:MyLanguage/Ombuds commission|Ombuds commission (OC)]]
* [[m:Special:MyLanguage/Wikimedia Foundation/Legal/Community Resilience and Sustainability/Trust and Safety/Case Review Committee|Case Review Committee (CRC)]]
Applications for the committees open on October 30, 2025. Applications for the Affiliations Committee, Ombuds commission and the Case Review Committee close on December 11, 2025. Learn how to apply by [[m:Special:MyLanguage/Wikimedia Foundation/Legal/Committee appointments|visiting the appointment page on Meta-wiki]]. Post to the talk page or email cst[[File:At sign.svg|16x16px|link=|(_AT_)]]wikimedia.org with any questions you may have.
For the Committee Support team,
<section end="announcement-content" />
</div>
-[[m:User:MKaur (WMF)| MKaur (WMF)]] 14:13, 30 Τρυγομηνά 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:MKaur (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29517125 -->
== <span lang="en" dir="ltr">Reminder: Help us decide the name of the new Abstract Wikipedia project</span> ==
<div lang="en" dir="ltr">
<section begin="function2"/>
{{int:Hello}}. Reminder: Please help to choose name for the new Abstract Wikipedia wiki project. The finalist vote starts today. The finalists for the name are: <span lang="en" dir="ltr" class="mw-content-ltr">Abstract Wikipedia, Multilingual Wikipedia, Wikiabstracts, Wikigenerator, Proto-Wiki</span>. If you would like to participate, then '''[[m:Special:MyLanguage/Abstract Wikipedia/Abstract Wikipedia naming contest|please learn more and vote now]]''' at meta-wiki.
{{Int:Feedback-thanks-title}}
<section end="function2"/>
</div>
-- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 14:22, 20 Αεργί 2025 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Sannita (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=29583860 -->
99a639da9cnagh54295k7lxf7sk28br
Συναλλοιότητα διαφορομορφιζμίων
0
752
34087
31191
2019-02-03T17:54:21Z
Texvc2LaTeXBot
7121
Replacing deprecated latex syntax [[mw:Extension:Math/Roadmap]]
34087
wikitext
text/x-wiki
Σην θεωρητικόν [[Φυσική|φυσικήν]], η '''συναλλ΄εότητα δ΄εαφορομορφιζμίων''' (γιά '''γενικόν συναλλ΄εότητα''' γιά '''γενικόν αναλλ΄εότητα''') εν αναλλ΄εότητα τη μορφής τη φυσικών νομίων αφκά ασοί αυταίρετους [[Παράγωγον (μαθεματικά)|δ΄εαφορίσιμους]] μετασκηματιζμούς [[Συντεταγμένε|συντεταγμενίων]]. Το κεντρικόν η ιδέα εν η αφκά: τα συντεταγμένας 'κ υπάρχνε πραματικά σην φύσην, άμα είναι μαναχόν κατασκευάζματα που περγράφνε ατέν κ΄ γ΄ τ'ατό εν καλλίον να μην έχνε ρόλον σην δ΄εατύπωσην τη βασικών φυσικών νομίων.
Φυσικόν νόμον γενικά συναλλοίωτον εν ατός που ες΄ την ίδ΄εαν μαθεματικόν μορφήν σ'όλ΄εα τα συστέματα συντεταγμενίων που αλληλοσκετίζκουνταν δ΄εα μεσίου διαφορισιμιδίων μετασκηματιζμίων. Αΐκοι νομ εκφράζκουνταν πολλά φοράς με ορς [[Τανυστής|τανυστικών]] πεδίων· παράδειγμαν: η κλασικόν (μη [[Κβαντομηχανική|κβαντικόν]]) Θεωρία τη Ελεκτροδυναμικής εν αΐκεσσα θεωρία.
Ους αρχή, την γενικόν συναλλ΄εότηταν επρότεινεν ο [[Άλμπερτ Αϊνστάιν]] γ΄ την θεωρίανατουν τη Ειδικού τη Σχετικότητας, άμα αβούτε η θεωρία πα έτον περιοριζμένον σα συστέματα συντεταγμενίων που αλληλοσκετίζκουνταν μαναχόν δ΄εα μεσίου ομ΄εομορφιδίων σχετικών ταχυτητίων (δηλαδή, αδρανειακών πλαισίων). Ο Αϊνστάιν ανεγνώρισεν την ανάγκην εφαρμογής τη [[Γενικόν Σχετικότητα|Γενικού Αρχής τη Σχετικότητας]] σοι επιταχυνόμενους σχετικούς ταχύτητας κ΄ μετεχειρίστεν τοι υπολογιστικούς μέθοδους τη Τανυστικού Λογιζμού (τη νέονος ατουνού εργαλείου γ΄ την εποχήν εκείνεν) για να επεκτείνει την Καθολικόν Συναλλ΄εότηταν Λόρεντς (Lorentz) τη ειδικού θεωρίας (που εφαρμόζκεται μαναχόν σα αδρανειακά πλαίσ΄εα) σην άλο γενικόν Τοπικόν Συναλλ΄εότηταν Λόρεντς (που εφαρμόζκεται σ'όλ΄εα τα πλαίσ΄εα)'''·''' αραέτς εποίκεν ο Αϊνστάιν την Γενικόν Θεωρίαν τη Σχετικότητας. Η τοπικός περιστολή τη γενικού τανυστή μετρικής σην μετρικήν Μινκόφσκι αντιστοισ΄εί σε κίνησην ελεύθερου πτώσης (γεωδαιτικήν, δηλαδή)'''·''' αέτς περικλείσκεται σην γενικόν θεωρίαν το φαινόμενον τη [[Βαρύτητα|βαρύτητας]].
Η σύχρονον ερμηνεία τη φυσικού περιεχόμενου τη αρχής τη γενικού συναλλ΄εότητας εν η αφκά: η ομάδα Λι (Lie) GL<small>4</small>(<math>\mathbb{R}</math>) (η ομάδα συμμετρίας τη Γενικού Σχετικότητας, δηλαδή) εν θεμελ΄εώδης εξωτερικόν [[Συμμετρία|συμμετρία]] τη κόζμονοσεμουν. Άμα κ΄ άλλα συμμετρίας, άμον οι [[Πεδίον (φυσικήν)|εσωτερικοί συμμετρίας]] που βασίζκουνταν σοι διακριτούς ομάδας, έχνε πλέον τρανόν ρόλον σο ποίσιμον καινούργεων φυσικών θεωρίων.
==Τέρεν και==
*[[Ειδικόν σχετικότητα]]
==Αναφοράντας / Βιβλ΄εογραφία==
*(σ'αγγλικά) O'Hanian, Hans ϗ Ruffini, Remo. ''Gravitation and Spacetime'' (2η εκδ.). New York: W. W. Norton. 1994.<br />ISBN 0-393-96501-5. ''Τέρεν το κομμάτ'': 7.1.
==Συνδέζμ==
*(σ'αγγλικά) [http://www.pitt.edu/~jdnorton/papers/decades_re-set.pdf ''General covariance and the foundations of general relativity: eight decades of dispute'']
[[Κατηγορίαν:Φυσικήν|!]]
[[Κατηγορίαν:Μαθηματικά|!]]
odb4s7ndmsuecvby056lgmgi57mu2xx
Κατηγορίαν:Γλυπτικήν
14
753
31532
29381
2013-04-02T18:48:48Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 91 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7235747]] [[M:User:Addbot/WDS|(translate me)]]
31532
wikitext
text/x-wiki
{{Commonscat|Sculpturing}}
[[Category:Πολιτισμόν|*]]
l0vlug0ukyy5wud2v312krjninmz233
Κατηγορίαν:Ποιητικήν
14
754
5046
2009-04-10T06:20:25Z
Omnipaedista
35
Καινούρεον σελίδαν με '[[Category:Πολιτισμόν|*]]'
5046
wikitext
text/x-wiki
[[Category:Πολιτισμόν|*]]
bi21pgepp4o6e04jtm717bkfjcvqmou
Κατηγορίαν:Παλαιόν Ιστορίαν
14
755
31755
24772
2013-08-17T10:31:41Z
Addbot
3509
[[User:addbot|Bot]]: Migrating interwiki links, now provided by [[d:|Wikidata]] on [[d:q6499653]]
31755
wikitext
text/x-wiki
[[Category:Ιστορίαν|*]]
[[da:Kategori:Antikken]]
[[sl:Kategorija:Antika]]
jwltnti9wcq6xrmtw8r4eqcf8a31cxq
Κατηγορίαν:Ρωμανίαν
14
756
5054
2009-04-10T06:41:57Z
Omnipaedista
35
Καινούρεον σελίδαν με '[[Category:Ιστορίαν|*]]'
5054
wikitext
text/x-wiki
[[Category:Ιστορίαν|*]]
beg67jio41a4w12l0fykoqd9laeofrp
Κατηγορίαν:Επιστήμην
14
757
31192
29839
2013-03-07T20:06:36Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 188 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1458083]] [[M:User:Addbot/WDS|(translate me)]]
31192
wikitext
text/x-wiki
[[Category:Wp/pnt|*]]
rg12fwb6t1x9anv6rae4k4bnt2vk1rp
Κατηγορίαν:Φυσικήν
14
758
5057
2009-04-10T06:50:32Z
Omnipaedista
35
Καινούρεον σελίδαν με '[[Category:Επιστήμην|*]]'
5057
wikitext
text/x-wiki
[[Category:Επιστήμην|*]]
1w1zsndiuq2ims3xg24rb7d2ko8377w
Κατηγορίαν:Μαθηματικά
14
759
5058
2009-04-10T06:50:35Z
Omnipaedista
35
Καινούρεον σελίδαν με '[[Category:Επιστήμην|*]]'
5058
wikitext
text/x-wiki
[[Category:Επιστήμην|*]]
1w1zsndiuq2ims3xg24rb7d2ko8377w
Κατηγορίαν:Χορός
14
760
31602
28617
2013-04-13T08:18:51Z
KLBot2
3570
Bot: Migrating 109 interwiki links, now provided by [[Wikidata]] on [[:d:Q7216239]]
31602
wikitext
text/x-wiki
{{Commonscat|Dance}}
[[Category:Πολιτισμόν|*]]
rmk3njz3m787zh3lim5c9ui3hpjbgxy
Φινλανδία
0
763
36025
35493
2024-10-26T05:34:11Z
Minorax
7522
36025
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Φινλανδία'''</big></big><br/>''Suomen tasavalta''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Finland.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of Finland.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Finland.svg|300px]]
|}
[[File:Koli National Park in Northern Karelia.jpg|thumb|]]Η '''Φινλανδία''' εν κράτος ντο ευρίεται σα βόρεια τη [[Ευρώπην|Ευρώπης]]. Η κεφαλούπολη εν η Χελσίνκι.
5twv6cr0ng1eryj3jwn4rwxnnpkq20u
Λουξεμβούργον
0
765
18354
6612
2011-01-28T15:35:51Z
Vargenau
582
#REDIRECT [[Λουξεμβούργο]]
18354
wikitext
text/x-wiki
#REDIRECT [[Λουξεμβούργο]]
ltjjge8b60jogkaikq1kc634nz79t14
Βόλος
0
779
36861
31194
2025-12-16T10:01:44Z
Εὐθυμένης
2777
36861
wikitext
text/x-wiki
Ο '''Βόλος''' εν πόλην τρανή (τρανότερη της [[Μαγνησία|Μαγνησίας]] ούλης) παρά την θάλασσαν ασο κέντρον της [[Ελλάδα]]ς 326 χλμ. ασον Βορράν της [[Αθήνα|Αθήνας]].
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Βολος}}
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας]]
owp6tc8c90158tq5e6nwkn5lvwwivcj
MediaWiki:Sandbox
8
786
5518
2009-05-18T09:04:54Z
ZaDiak
10
Καινούρεον σελίδαν με 'Αργαστέρ'
5518
wikitext
text/x-wiki
Αργαστέρ
fuh0jwsj956wh5m62s8tcf8r6u2v1u7
MediaWiki:Sandbox-url
8
787
5519
2009-05-18T09:05:33Z
ZaDiak
10
Καινούρεον σελίδαν με 'Βικιπαίδεια:Αργαστέρ'
5519
wikitext
text/x-wiki
Βικιπαίδεια:Αργαστέρ
repjz8kmxs41j9o8c2zpnptqrcxsa0s
Υδρογόνον
0
789
34825
31195
2021-07-16T04:52:20Z
Shihab1729
8656
+video #WPWP #WPWPBN
34825
wikitext
text/x-wiki
[[Αρχείον:Hydrogen.svg|150px|right]]
[[Αρχείον:Emissions Spectra.webm|μικρογραφία|246x246εσ|Hydrogen Spectrum Test]]
Η λέξην υδρογόνον (hydrogen) προέρχεται ασα λέξεις «ὕδωρ» + «γείνομαι», δηλαδή σημαίν' την βασικήν χημικήν ιδιότητανατου να καίγεται αφού έχει ποίσναι νερόν (ὕδωρ). Το χημικόν στοιχείον Υδρογόνον (Η) (γιά διυδρογόνον) ση διατομικήν στοιχειακήν μορφήνατου) έν´ άχρωμον, άοσμον, άγευστον, εύφλεκτον αμέταλλον διατομικόν αέριον, με ατομικόν αριθμόν 1, ατομικήν μάζαν 1,00794(7) amu, χημικόν τύπον H<sub>2</sub>, μοριακήν μάζαν 2,01588(14) amu. Έν´ τ'ελαφρύτερον χημικόν στοιχείον.
{{Commons|Hydrogen}}
[[Κατηγορίαν:Χημείαν|!]]
mo5sg0vk67bwwc9zsrvu8ss5rx0eiv6
Λιθουανία
0
791
35937
33575
2024-10-26T05:26:40Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35937
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Λιθουανία'''</big></big><br/>''Lietuvos Respublika''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Lithuania.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Lithuania.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Lithuania.svg|300px]]
|}
Η '''Λιθουανία''' εν [[κράτος]] σο βορειάν τ' [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν τ' [[Βίλνιους]] κι πρόεδρος ατ'ς εν η [[Ντάλια Γκριμπαουσκάιτε]]. Η χώρα έχ' πληθυσμόν σα 2.810.865 τ' ανθρώπ'ς (2017).
== Γεωγραφίαν ==
Η Λιθουανίαν ευρισκάται ση Βαλτικήν τη θάλασσαν αφκά, εχ' την [[Πολωνία]], τη [[Λευκορουσία]], τη [[Λεττονία]] και τη [[Ρουσία]] απές. Έχ' τρανά πολιτείας τ' [[Κάουνας]], και τη [[Κλαϊπέντα]].
== Συνδέζμαι ==
* [http://www.lietuve.lt/ Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Λιθουανίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Λιθουανία]]
[[Κατηγορίαν:Ευρώπη|Λιθουανία]]
luxy5eojygeqwqtepbv7y7127upy5fg
Κατηγορίαν:Χημείαν
14
792
5622
2009-05-22T23:05:03Z
Omnipaedista
35
Καινούρεον σελίδαν με '[[Category:Επιστήμην|*]]'
5622
wikitext
text/x-wiki
[[Category:Επιστήμην|*]]
1w1zsndiuq2ims3xg24rb7d2ko8377w
Υδρογόνο
0
793
5624
2009-05-22T23:05:35Z
Omnipaedista
35
[[Υδρογόνο]] ετερχλαεύτεν σο [[Υδρογόνον]]
5624
wikitext
text/x-wiki
#REDIRECT [[Υδρογόνον]]
9xn8pvobwwivav5alz9ucg4d7ss8de7
MediaWiki:Deletereason-dropdown
8
795
5634
5633
2009-05-23T12:36:46Z
ZaDiak
10
5634
wikitext
text/x-wiki
*Σύνηθες λόγοι
** Αίτησην συγγραφέου
** Παράβαση δικαιωμάτων πνευματί
** Βανδαλισμόν
** Άχρηστην σελίδαν
o2pxfr0qqw4yqpb2vez2t21ikjbvhs7
MediaWiki:Common.css
8
801
5672
2009-05-23T23:06:53Z
ZaDiak
10
Καινούρεον σελίδαν με '/* CSS placed here will be applied to all skins */ // <pre> /* στρογγυλές καρτέλες */ .pBody { padding:0.3em 0.3em; -moz-border-r…'
5672
css
text/css
/* CSS placed here will be applied to all skins */
// <pre>
/* στρογγυλές καρτέλες */
.pBody {
padding:0.3em 0.3em;
-moz-border-radius-topright:0.5em;
}
.portlet h5 {
text-transform:none;
font-variant:normal;
background-color:#e0e3e6;
border:thin solid silver;
-moz-border-radius-topright:0.5em;
}
#p-cactions ul li, #p-cactions ul li a {
-moz-border-radius-topright:0.5em;
-moz-border-radius-topleft:0.5em;
}
/* wikitable/prettytable class for skinning normal tables */
table.wikitable,
table.prettytable {
margin: 1em 1em 1em 0;
background: #f9f9f9;
border: 1px #aaa solid;
border-collapse: collapse;
}
.wikitable th, .wikitable td,
.prettytable th, .prettytable td {
border: 1px #aaa solid;
padding: 0.2em;
}
.wikitable th,
.prettytable th {
background: #f2f2f2;
text-align: center;
}
.wikitable caption,
.prettytable caption {
margin-left: inherit;
margin-right: inherit;
font-weight: bold;
}
/* On [[Special:RecentChanges]] and [[Special:Watchlist]] make the new pages symbol bold green and the minor edit symbol gray. */
.newpage {
color: green;
font-weight: bold
}
.minoredit,
.minor {
color: gray;
}
/* Alternating background colours on Watchlist and RecentChanges */
li.odd {
background-color: #FFF8E7
}
.mw-plusminus-neg {
color:darkred;
}
.mw-plusminus-pos {
color:darkgreen;
}
/* NavFrame */
div.Boxmerge,
div.NavFrame {
margin: 0;
padding: 4px;
border: 1px solid #aaa;
text-align: center;
border-collapse: collapse;
font-size: 95%;
}
div.Boxmerge div.NavFrame {
border-style: none;
border-style: hidden;
}
div.NavFrame + div.NavFrame {
border-top-style: none;
border-top-style: hidden;
}
div.NavPic {
background-color: #fff;
margin: 0;
padding: 2px;
float: left;
}
div.NavFrame div.NavHead {
height: 1.6em;
font-weight: bold;
background-color: #ccf;
position:relative;
}
div.NavFrame p {
font-size: 100%;
}
div.NavFrame div.NavContent {
font-size: 100%;
}
div.NavFrame div.NavContent p {
font-size: 100%;
}
div.NavEnd {
margin: 0;
padding: 0;
line-height: 1px;
clear: both;
}
a.NavToggle {
position: absolute;
top: 0;
right: 3px;
font-weight: normal;
font-size: 90%;
}
// </pre>
/* ===== Namespace background colors ===== */
/* MediaWiki: */
.ns-8 * #content, .ns-8 * #p-cactions li, .ns-8 * #p-cactions li a { background: #EEEEFF; }
/* Βοήθεια: */
.ns-12 * #content, .ns-12 * #p-cactions li, .ns-12 * #p-cactions li a { background: #FFE; }
/* ===== Redirects italic and green in Special:Allpages and Special:Prefixindex ===== */
.allpagesredirect { font-style: italic; color: green; }
.allpagesredirect a { font-style: italic; color: green; }
.allpagesredirect a:visited { color: #008000; }
rdenajypfreq5xr2z95g8zlw83obq5x
MediaWiki:Common.js
8
802
32500
5673
2015-08-09T02:03:45Z
Jack Phoenix
4941
cleanup; replaced document.write() with something that works, [[mw:Manual:Coding conventions|stylized]] the code, removed custom hasClass() function in favor of jQuery's hasClass(); removed loading of a nonexistent page
32500
javascript
text/javascript
/* Οποιοσδήποτε κώδικας JavaScript εδώ θα φορτωθεί για όλους τους χρήστες σε κάθε φόρτωση σελίδας. */
// Παρέχει έναν εύκολο τρόπο εισαγωγής σεναρίων στο wiki
function import_script( name ) {
name = encodeURIComponent( name );
mw.loader.load( mw.config.get( 'wgServer' ) + mw.config.get( 'wgScriptPath' ) + '/index.php?title=' + name + '&action=raw&ctype=text/javascript' );
}
/* Κώδικας ειδικά για Internet Explorer */
if ( navigator.appName == 'Microsoft Internet Explorer' ) {
/** Internet Explorer bug fix **************************************************
*
* Description: Fixes IE horizontal scrollbar bug
* Maintainers: [[User:Tom-]]?
*/
var oldWidth;
var docEl = document.documentElement;
function fixIEScroll() {
if ( !oldWidth || docEl.clientWidth > oldWidth ) {
doFixIEScroll();
} else {
setTimeout( doFixIEScroll, 1 );
}
oldWidth = docEl.clientWidth;
}
function doFixIEScroll() {
docEl.style.overflowX = ( docEl.scrollWidth - docEl.clientWidth < 4 ) ? 'hidden' : '';
}
document.attachEvent( 'onreadystatechange', fixIEScroll );
document.attachEvent( 'onresize', fixIEScroll );
/**
* Remove need for CSS hacks regarding MSIE and IPA.
*/
if ( document.createStyleSheet ) {
document.createStyleSheet().addRule( '.IPA', 'font-family: "Doulos SIL", "Charis SIL", Gentium, "DejaVu Sans", Code2000, "TITUS Cyberbit Basic", "Arial Unicode MS", "Lucida Sans Unicode", "Chrysanthi Unicode";' );
}
}
/** Collapsible tables *********************************************************
*
* Description: Allows tables to be collapsed, showing only the header. See
* [[Wikipedia:NavFrame]].
* Maintainers: [[User:R. Koot]]
*/
var autoCollapse = 2;
var collapseCaption = 'απόκρυψη';
var expandCaption = 'εμφάνιση';
function collapseTable( tableIndex ) {
var Button = document.getElementById( 'collapseButton' + tableIndex );
var Table = document.getElementById( 'collapsibleTable' + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
if ( Button.firstChild.data == collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = 'none';
}
Button.firstChild.data = expandCaption;
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = collapseCaption;
}
}
function createCollapseButtons() {
var tableIndex = 0;
var NavigationBoxes = {};
var Tables = document.getElementsByTagName( 'table' );
for ( var i = 0; i < Tables.length; i++ ) {
if ( $( Tables[i] ).hasClass( 'collapsible' ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( 'tr' )[0];
if ( !HeaderRow ) {
continue;
}
var Header = HeaderRow.getElementsByTagName( 'th' )[0];
if ( !Header ) {
continue;
}
NavigationBoxes[tableIndex] = Tables[i];
Tables[i].setAttribute( 'id', 'collapsibleTable' + tableIndex );
var Button = document.createElement( 'span' );
var ButtonLink = document.createElement( 'a' );
var ButtonText = document.createTextNode( collapseCaption );
Button.style.styleFloat = 'right';
Button.style.cssFloat = 'right';
Button.style.fontWeight = 'normal';
Button.style.textAlign = 'right';
Button.style.width = '6em';
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( 'id', 'collapseButton' + tableIndex );
ButtonLink.setAttribute( 'href', 'javascript:collapseTable(' + tableIndex + ');' );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( '[' ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( ']' ) );
Header.insertBefore( Button, Header.childNodes[0] );
tableIndex++;
}
}
for ( var i = 0; i < tableIndex; i++ ) {
if (
$( NavigationBoxes[i] ).hasClass( 'collapsed' ) ||
( tableIndex >= autoCollapse && $( NavigationBoxes[i] ).hasClass( 'autocollapse' ) )
)
{
collapseTable( i );
}
}
}
$( createCollapseButtons );
// ============================================================
// BEGIN Dynamic Navigation Bars (experimantal)
// set up the words in your language
var NavigationBarHide = '[ απόκρυψη ]';
var NavigationBarShow = '[ εμφάνιση ]';
var NavigationBarShowDefault = 2;
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
function toggleNavigationBar( indexNavigationBar ) {
var NavToggle = document.getElementById( 'NavToggle' + indexNavigationBar );
var NavFrame = document.getElementById( 'NavFrame' + indexNavigationBar );
if ( !NavFrame || !NavToggle ) {
return false;
}
// if shown now
if ( NavToggle.firstChild.data == NavigationBarHide ) {
for ( var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if ( $( NavChild ).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'none';
}
if ( $( NavChild ).hasClass( 'NavContent') ) {
NavChild.style.display = 'none';
}
}
NavToggle.firstChild.data = NavigationBarShow;
// if hidden now
} else if ( NavToggle.firstChild.data == NavigationBarShow ) {
for ( var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if ( $( NavChild ).hasClass( 'NavPic' ) ) {
NavChild.style.display = 'block';
}
if ( $( NavChild ).hasClass( 'NavContent' ) ) {
NavChild.style.display = 'block';
}
}
NavToggle.firstChild.data = NavigationBarHide;
}
}
// adds show/hide-button to navigation bars
function createNavigationBarToggleButton() {
var indexNavigationBar = 0;
// iterate over all < div >-elements
var divs = document.getElementsByTagName( 'div' );
for ( var i = 0; NavFrame = divs[i]; i++ ) {
// if found a navigation bar
if ( $( NavFrame ).hasClass( 'NavFrame' ) ) {
indexNavigationBar++;
var NavToggle = document.createElement( 'a' );
NavToggle.className = 'NavToggle';
NavToggle.setAttribute( 'id', 'NavToggle' + indexNavigationBar );
NavToggle.setAttribute( 'href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');' );
var NavToggleText = document.createTextNode( NavigationBarHide );
for ( var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {
if (
$( NavChild ).hasClass( 'NavPic' ) ||
$( NavChild ).hasClass( 'NavContent' )
)
{
if ( NavChild.style.display == 'none' ) {
NavToggleText = document.createTextNode( NavigationBarShow );
break;
}
}
}
NavToggle.appendChild( NavToggleText );
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked)
for ( var j = 0; j < NavFrame.childNodes.length; j++ ) {
if ( $( NavFrame.childNodes[j] ).hasClass( 'NavHead' ) ) {
NavFrame.childNodes[j].appendChild( NavToggle );
}
}
NavFrame.setAttribute( 'id', 'NavFrame' + indexNavigationBar );
}
}
// if more Navigation Bars found than Default: hide all
if ( NavigationBarShowDefault < indexNavigationBar ) {
for ( var i = 1; i <= indexNavigationBar; i++ ) {
toggleNavigationBar( i );
}
}
}
$( createNavigationBarToggleButton );
// END Dynamic Navigation Bars
// ============================================================
13490z2zo0tntoiyof11uyrif5avrdj
Ήλιον
0
803
31197
30622
2013-03-07T20:07:43Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 136 interwiki links, now provided by [[d:|Wikidata]] on [[d:q560]] [[M:User:Addbot/WDS|(translate me)]]
31197
wikitext
text/x-wiki
[[Αρχείον:Helium atom QM rev1.svg|right|150px]]
Το χημικόν στοιχείον ήλιον εν τ'αρχικόν στοιχείον τη ομάδας τη ευγενίων αερίων, εςς σύμβολον το He κι ατομικόν αριθμόν 2. Εν´ αέριον, άχρωμον, άοσμον κι άγευστον κι εςς το χαμηλότερον σημείον βρασμού τη χημικών στοιχείων.
{{Commons|Helium}}
[[Κατηγορίαν:Χημείαν]]
5q6bskf50x0bkmlkurasgve2p9sedvv
Περιοδικόν Πινάκιν
0
804
35999
34619
2024-10-26T05:31:08Z
Minorax
7522
35999
wikitext
text/x-wiki
<div class="center"><div class="NavHead" style="background-color:#bbccee;">Περιοδικόν Πινάκιν</div></div>
<div class="NavContent " style="font-size:90%; padding:2px;background-color:#f9f9f9;">
{| style="width:100%;text-align:center;" align="center"
|-
! colspan="32" |
|-
| width="3.125%" style="background-color:LimeGreen"|[[Υδρογόνον|H]]
| width="3.125%" colspan="30" |
| width="3.125%" style="background-color:LightskyBlue"|[[Ήλιον|He]]
|-
|style="background-color:OrangeRed"|[[Λίθιον|Li]]
|style="background-color:DarkOrange"|[[Βηρύλλιον|Be]]
| colspan="24" |
|style="background-color:Peru"|[[Βόριον|B]]
|style="background-color:LimeGreen"|[[Άνθρακας|C]]
|style="background-color:LimeGreen"|[[Άζωτον|N]]
|style="background-color:LimeGreen"|[[Οξυγόνον|O]]
|style="background-color:Khaki"|[[Φθόριον|F]]
|style="background-color:LightskyBlue"|[[Νέον|Ne]]
|-
|style="background-color:OrangeRed" |[[Νάτριον|Na]]
|style="background-color:DarkOrange"|[[Μαγνήσιον|Mg]]
| colspan="24" |
|style="background-color:DarkGray" |[[Αργίλιον|Al]]
|style="background-color:Peru" |[[Πυρίτιον|Si]]
|style="background-color:LimeGreen" |[[Φώσφορον|P]]
|style="background-color:LimeGreen" |[[Θείον|S]]
|style="background-color:Khaki" |[[Χλώριον|Cl]]
|style="background-color:LightskyBlue"|[[Αργόν|Ar]]
|-
| style="background-color:OrangeRed"|[[Κάλιον|K]]
|style="background-color:DarkOrange"|[[Ασβέστιον|Ca]]
|colspan="14" |
|style="background-color:LightCoral"|[[Σκάνδιον|Sc]]
|style="background-color:LightCoral"|[[Τιτάνιον|Ti]]
|style="background-color:LightCoral"|[[Βανάδιον|V]]
|style="background-color:LightCoral"|[[Χρώμιον|Cr]]
|style="background-color:LightCoral"|[[Μαγγάνιον|Mn]]
|style="background-color:LightCoral"|[[Σίδηρον|Fe]]
|style="background-color:LightCoral"|[[Κοβάλτιον|Co]]
|style="background-color:LightCoral"|[[Νικέλιον|Ni]]
|style="background-color:LightCoral"|[[Χαλκός|Cu]]
|style="background-color:LightCoral"|[[Ψευδάργυρον|Zn]]
|style="background-color:DarkGray"|[[Γάλλιον|Ga]]
|style="background-color:Peru"|[[Γερμάνιον|Ge]]
|style="background-color:Peru"|[[Αρσενικόν|As]]
|style="background-color:LimeGreen"|[[Σελήνιον|Se]]
|style="background-color:Khaki"|[[Βρώμιον|Br]]
|style="background-color:LightskyBlue"|[[Κρυπτόν|Kr]]
|-
| style="background-color:OrangeRed"|[[Ρουβίδιον|Rb]]
|style="background-color:DarkOrange"|[[Στρόντιον|Sr]]
|colspan="14" |
|style="background-color:LightCoral"|[[Ύτριον|Y]]
|style="background-color:LightCoral"|[[Ζιρκόνιον|Zr]]
|style="background-color:LightCoral"|[[Νιόβιον|Nb]]
|style="background-color:LightCoral"|[[Μολυβδένιον|Mo]]
|style="background-color:LightCoral"|[[Τεχνήτιον|Tc]]
|style="background-color:LightCoral"|[[Ρουθήνιον|Ru]]
|style="background-color:LightCoral"|[[Ρόδιον|Rh]]
|style="background-color:LightCoral"|[[Παλλάδιον|Pd]]
|style="background-color:LightCoral"|[[Άργυρον|Ag]]
|style="background-color:LightCoral"|[[Κάδμιον|Cd]]
|style="background-color:DarkGray"|[[Ίνδιον|In]]
|style="background-color:DarkGray"|[[Κασσίτερον|Sn]]
|style="background-color:Peru"|[[Αντιμόνιον|Sb]]
|style="background-color:Peru"|[[Τελλούριον|Te]]
|style="background-color:Khaki"|[[Ιώδιον|I]]
|style="background-color:LightskyBlue"|[[Ξένον|Xe]]
|-
| width="3.125%" style="background-color:OrangeRed"|[[Καίσιον|Cs]]
| width="3.125%" style="background-color:DarkOrange"|[[Βάριον|Ba]]
| width="3.125%" style="background-color:Plum"|[[Λανθάνιον|La]]
| width="3.125%" style="background-color:Plum"|[[Δημήτριον|Ce]]
| width="3.125%" style="background-color:Plum"|[[Πρασεοδύμιον|Pr]]
| width="3.125%" style="background-color:Plum"|[[Νεοδύμιον|Nd]]
| width="3.125%" style="background-color:Plum"|[[Προμήθειον|Pm]]
| width="3.125%" style="background-color:Plum"|[[Σαμάριον|Sm]]
| width="3.125%" style="background-color:Plum"|[[Ευρώπιον|Eu]]
| width="3.125%" style="background-color:Plum"|[[Γαδολίνιον|Gd]]
| width="3.125%" style="background-color:Plum"|[[Τέρβιον|Tb]]
| width="3.125%" style="background-color:Plum"|[[Δυσπρόσιον|Dy]]
| width="3.125%" style="background-color:Plum"|[[Όλμιον|Ho]]
| width="3.125%" style="background-color:Plum"|[[Έρβιον|Er]]
| width="3.125%" style="background-color:Plum"|[[Θούλιον|Tm]]
| width="3.125%" style="background-color:Plum"|[[Υττέρβιον|Yb]]
| width="3.125%" style="background-color:LightCoral"|[[Λουτήτιον|Lu]]
| width="3.125%" style="background-color:LightCoral"|[[Άφνιον|Hf]]
| width="3.125%" style="background-color:LightCoral"|[[Ταντάλιον|Ta]]
| width="3.125%" style="background-color:LightCoral"|[[Βολφράμιον|W]]
| width="3.125%" style="background-color:LightCoral"|[[Ρήνιον|Re]]
| width="3.125%" style="background-color:LightCoral"|[[Όσμιον|Os]]
| width="3.125%" style="background-color:LightCoral"|[[Ιρίδιον|Ir]]
| width="3.125%" style="background-color:LightCoral"|[[Λευκόχρυσον|Pt]]
| width="3.125%" style="background-color:LightCoral"|[[Χρυσός|Au]]
| width="3.125%" style="background-color:LightCoral"|[[Υδράργυρον|Hg]]
| width="3.125%" style="background-color:DarkGray"|[[Θάλλιον|Tl]]
| width="3.125%" style="background-color:DarkGray"|[[Μόλυβδον|Pb]]
| width="3.125%" style="background-color:DarkGray"|[[Βισμούθιον|Bi]]
| width="3.125%" style="background-color:Peru"|[[Πολώνιον|Po]]
| width="3.125%" style="background-color:Khaki"|[[Άστατο|At]]
| width="3.125%" style="background-color:LightskyBlue"|[[Ραδόνιον|Rn]]
|-
|style="background-color:OrangeRed"|[[Φράγκιον|Fr]]
|style="background-color:DarkOrange"|[[Ράδιον|Ra]]
|style="background-color:Orchid"|[[Ακτίνιον|Ac]]
|style="background-color:Orchid"|[[Θόριον|Th]]
|style="background-color:Orchid"|[[Πρωτακτίνιον|Pa]]
|style="background-color:Orchid"|[[Ουράνιον|U]]
|style="background-color:Orchid"|[[Ποσειδώνιον|Np]]
|style="background-color:Orchid"|[[Πλουτώνιον|Pu]]
|style="background-color:Orchid"|[[Αμερίκιον|Am]]
|style="background-color:Orchid"|[[Κιούριον|Cm]]
|style="background-color:Orchid"|[[Μπερκέλιον|Bk]]
|style="background-color:Orchid"|[[Καλιφόρνιον|Cf]]
|style="background-color:Orchid"|[[Αϊνσταΐνιον|Es]]
|style="background-color:Orchid"|[[Φέρμιον|Fm]]
|style="background-color:Orchid"|[[Μεντελέβιον|Md]]
|style="background-color:Orchid"|[[Νομπέλιον|No]]
|style="background-color:LightCoral"|[[Λωρένσιον|Lr]]
|style="background-color:LightCoral"|[[Ραδερφόρντιον|Rf]]
|style="background-color:LightCoral"|[[Ντούμπνιον|Db]]
|style="background-color:LightCoral"|[[Σιμπόργκιον|Sg]]
|style="background-color:LightCoral"|[[Μπόριον|Bh]]
|style="background-color:LightCoral"|[[Χάσιον|Hs]]
|style="background-color:LightCoral"|[[Μαϊτνέριον|Mt]]
|style="background-color:LightCoral"|[[Νταρμστάντιον|Ds]]
|style="background-color:LightCoral"|[[Ρεντγκένιον|Rg]]
|style="background-color:LightCoral"|[[Ununbium|Uub]]
|style="background-color:DarkGray"|[[Ununtrium|Uut]]
|style="background-color:DarkGray"|[[Φλερόβιον|Fl]]
|style="background-color:DarkGray"|[[Ununpentium|Uup]]
|style="background-color:DarkGray"|[[Λιβερμόριον|Lv]]
|[[Ununseptium|Uus]]
|style="background-color:LightskyBlue"|[[Ununoctium|Uuo]]
|-
| colspan="32" |
{| border="1" align="center" style="border:1px solid #ffffff; border-collapse:collapse; width:100%" rules="all" cellpadding="1"
| style="background-color:OrangeRed" width="10%" |[[Αλκάλεα]]
| style="background-color:DarkOrange" width="10%" |[[Αλκαλικάς γαίας]]
| style="background-color:Plum" width="10%" |[[Σπάνιας γαίας|Λανθανίδες]]
| style="background-color:Orchid" width="10%" |[[Ακτινίδες]]
| style="background-color:LightCoral" width="10%" |[[Στοιχεία μετάπτωσης|Στοιχεία μετάπτωσης]]
| style="background-color:DarkGray" width="10%" |Άλλα [[μέταλλα]]
| style="background-color:Peru" width="10%" |[[Μεταλλοειδή]]
| style="background-color:LimeGreen" width="10%" |Άλλα [[αμέταλλα]]
| style="background-color:Khaki" width="10%" |[[Αλογόνα]]
| style="background-color:LightskyBlue" width="10%" |[[Ευγενισμένα αέρια]]
|}
|}</div>
[[Κατηγορίαν:Χημείαν]]
77galgfs0ruskj8baf91pekuzwv29b4
Αίγυπτος
0
806
35906
34088
2024-10-26T05:24:33Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35906
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Αίγυπτος'''</big></big><br/>''جمهوريّة مصر العربيّة''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Egypt.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of Egypt.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EGY orthographic.svg|300px]]
|}
[[Αρχείον:Egypt in its region (undisputed).svg|thumb|]]
Η '''Αίγυπτος''' (''λένατον πα κι'' Αίγυπτον), σ'αραβικά مصر - Miṣr, εν [[Αφρικήν|αφρικανικόν]] [[κράτος]] ση νότιαν τη [[Μεσόγειον Θάλασσα|Μεσόγειον την θάλασσαν]]. Πρωτεύουσαν ατ'ς εν το [[Κάιρον]] κ' τρανότερην πόλην εν η [[Αλεξάνδρεια|Αλεξάνδρειαν]]. Ο πρόεδεος ατ'ς εν ο [[Χόσνι Μπουμπάρακ|Χόσνι Μουμπάρακ]] και ο πληθυσμόν ατ'ς έν σα 75.500.662 τ' ανθρώπ'ς.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Egypt|Η Αίγυπτος σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:|Η Αίγυπτος σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Egypt|Χάρτες ασήν Αίγυπτον]]'''
[[Κατηγορίαν:Αφρική|Αίγυπτος ]]
[[Κατηγορίαν:Κράτη|Αίγυπτος]]
[[Κατηγορίαν:Αίγυπτος| ]]
kz9n9qsdv2b62oe4tnsnbs7339sr7r5
Πρότυπον:Fn
10
807
10030
5702
2009-12-06T20:51:09Z
Stravon
942
10030
wikitext
text/x-wiki
<sup id="fn_{{{1}}}_back">[[#fn_{{{1}}}|{{{1}}}]]</sup><noinclude>[[Κατηγορίαν:Πρότυπα Βιβλιογραφίας|{{PAGENAME}}]]</noinclude>
4s0h1ln6uhy5avtjq77c4yf76ynlrty
Πρότυπον:Fnb
10
808
10031
5703
2009-12-06T20:51:58Z
Stravon
942
10031
wikitext
text/x-wiki
<cite id="fn_{{{1}}}">[[#fn_{{{1}}}_back| {{{1}}}]]: </cite><noinclude>[[Κατηγορίαν:Πρότυπα Βιβλιογραφίας|{{PAGENAME}}]]</noinclude>
9dldzerqdxaiyehdgideqedi4tb0mop
Πρότυπον:Cite web
10
809
36699
31752
2025-12-15T22:33:41Z
Εὐθυμένης
2777
Αντικατάσταση σελίδας με «<includeonly>{{#invoke:citation/CS1|citation |CitationClass=web }}</includeonly><noinclude> {{τεκμηρίωση προτύπου}} </noinclude>»
36699
wikitext
text/x-wiki
<includeonly>{{#invoke:citation/CS1|citation
|CitationClass=web
}}</includeonly><noinclude>
{{τεκμηρίωση προτύπου}}
</noinclude>
60np4zc9errlz93rcg2o34r6hhvzslz
Νάτριον
0
812
31200
30115
2013-03-07T20:08:17Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 125 interwiki links, now provided by [[d:|Wikidata]] on [[d:q658]] [[M:User:Addbot/WDS|(translate me)]]
31200
wikitext
text/x-wiki
[[Αρχείον:Electron shell 011 Sodium.svg|right|250px|]]
Το χημικόν στοιχείον '''Νάτριον''' [σύμβολον '''Na''' (λατινικά: ''Natrium'')] εν μαλακόν δραστικόν [[μέταλλα|μέταλλον]] αση ομάδαν τη [[αλκάλεα|αλκαλίων]] σο [[Περιοδικόν Πινάκιν|Περιοδικόν πινάκιν]] με ατομικόν αριθμόν 11 κι ατομικόν βάρος 22,98977 . Εςς θερμοκρασίαν τήξης 97,8 C° και θερμοκρασίαν βρασμού 882,9 C°.
Το νάτριον εν διαδογμένον ση φύσην με τη μορφήν χημικών ενωσίων, όπως το [[Άλας|χλωριούχον νάτριον]] (αλάς), ντο ευρίεται σε μεγάλας ποσότητας σο θαλασσινόν νερόν, το νιτρικόν νάτριον γιά ''νίτρον τη Χιλής'', ντο εν κρυσταλλικόν κι ευρίετεν μέσα σο έδαφος. Ση φύσην ευρίετεν μανάχον σε ενώσια κι εν ενεργόν χημικά.
Εςς ατομικόν αριθμόν 11 κι ατομικόν βάρος 23 κι ειδικόν βάρος 0,968. Εν μαλακόν, στερεόν, ελατόν, ασημόλευκον αλκαλικόν μεταλλικόν χημικόν στοιχείον. Οξειδώνετ' όμως γοργά σον αέραν. Για τ'ατό φυλάετ' μέσα σε παραφινέλαιον γιά πετρέλαιον.
[[Κατηγορίαν:Χημείαν]]
awx2lot0jsz80sax9kv91cjwlgsv82e
Πρότυπον:Εύλογην χρήσην
10
814
9958
5780
2009-12-04T14:45:43Z
Qoan
1170
Κατηγοριοποιώ
9958
wikitext
text/x-wiki
<div><br clear="all";>
{| align="center" cellpadding="5" class="boilerplate" id="pd" style="width:80%; background-color:#f7f8ff; border:2px solid #8888aa; padding:5px;"
| [[Εικόναν:Orange copyright.svg|80px|Πνευματικά δικαιώματα]]
| '''''Αυτό το αρχείο υπόκειται σε πνευματικά δικαιώματα'''. Ο χρήστης που το επιφόρτωσε και πρώτος το χρησιμοποίησε σε μία σελίδα, όπως και τα υπόλοιπα άτομα που το εισήγαγαν σε σελίδες βεβαιώνουν ότι έχει τα προσόντα ώστε να θεωρείται υλικό που καλύπτεται από την πρόβλεψη «'''εύλογης χρήσης'''» (fair use) του νόμου των [[w:Ηνωμένες Πολιτείες|Η.Π.Α.]] όπου βρίσκονται οι [[w:Εξυπηρετητής|διακομιστές]] της [[Βικιπαίδεια|Βικιπαίδειας]], καθώς και από το '''άρθρο 19 του [[s:Νόμος 2121/93|N. 2121/93]]''' για την συγκεκριμένη χρήση που έχει στις σελίδες αυτές. Χρήση διαφορετική από αυτή που μπορεί να θεωρηθεί «εύλογη», αντίθετη προς τα χρηστά ήθη και δεν δικαιολογείται από τον επιδιωκόμενο σκοπό, πιθανότατα είναι παραβίαση πνευματικής ιδιοκτησίας.
----
<small>Προς τον χρήστη που ανέβασε το αρχείο: Παρακαλούμε γράψτε στην περιγραφή τους λόγους για τους οποίους επικαλείστε «εύλογη χρήση» και για ποια σελίδα. Είναι επίσης απαραίτητο να αναφέρεται ο δημιουργός του αρχείου ή η πηγή του. Άλλοι χρήστες μπορούν να ελέγξουν αν δικαιολογείται η χρήση του αρχείου σε συγκεκριμένη σελίδα και, αν δεν συμβαίνει κάτι τέτοιο, να το προτείνουν για διαγραφή. Δείτε τα [[Βικιεπιστήμιο:κριτήρια εύλογης χρήσης|κριτήρια εύλογης χρήσης]]. Aπλή εικονογράφηση σελίδας και πορτρέτο προσώπου σε σελίδα για το εικονιζόμενο πρόσωπο δεν αποτελούν "εύλογη χρήση".</small>
|}<br clear="all";/></div>
<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]
</noinclude>
guc7944lrfuw26cq1tlge1yasc4xt64
MediaWiki:Recentchangestext
8
815
7203
6442
2009-07-13T11:56:06Z
ZaDiak
10
7203
wikitext
text/x-wiki
'''Επικοινωνίαν:'''
[irc://irc.freenode.net/wikipedia-pnt Παρακάθ σο IRC] - [[Βικιπαίδεια:Αγορά]] - [[Βικιπαίδεια:Αργαστέρ]] - [[Πρότυπον:Χαπέραι|Χαπέραι]]
'''Βοήθειαν:'''
[[Βοήθειαν:Περιεχόμενα]] - [[Βικιπαίδεια:Ντο εν η Βικιπαίδεια|Ντο εν η Βικιπαίδεια]] - [[Βικιπαίδεια:Ντο 'κ εν η Βικιπαίδεια|Ντο 'κ εν η Βικιπαίδεια]] - [[Βικιπαίδεια:Νομς και συμβουλάς]]
'''Χρήσιμα:'''
[[Special:Newpages|Καινούρεα σελίδας]] - [[Special:Allpages|Ούλαι οι σελίδας]] - [[Ειδικόν:Statistics|Στατιστικήν]] - [irc://irc.wikimedia.org/#pnt.wikipedia Επιτήρησην σο IRC] - [[Βικιπαίδεια:Νοματέοι|Νοματέοι]]
'''Άλλα έργα:'''
[[oldwikisource:Αρχικόν σελίδα|Βικιθήκην]] - [[commons:Special:Recentchanges|Commons]] - [[meta:Special:Recentchanges|ΜεταΒίκι]] - [[wikispecies:Special:Recentchanges|Βικιείδη]] - <span class="plainlinks">[http://translatewiki.net/w/i.php?namespace=&translations=only&users=&trailer=%2Fpnt&title=Special%3ARecentChanges TranslateWiki]</span> - [[incubator:Special:Recentchanges|Incubator]]
i2rmbmc7apkf1din5jkrlrtfiqrprmw
Κώστας Διαμαντίδης
0
817
35540
34496
2024-01-23T17:57:55Z
Διογένες
10538
'''
35540
wikitext
text/x-wiki
Ο '''Κώστας Διαμαντίδης''' (1952-) γιά Κοσμέτες (ψευδώνυμον) εν γνωστός λογοτέχνες κι συγγραφέας ποντιακών ἐργων.
Εγεννέθεν ση Αγάπην Γρεβενών ασ'σό γονείς πρόσφυγας ασ'σο Πόντον κι απόφοιτον τη Οδοντιατρικού Σχολής τη Α.Π.Θ..
Πρώτη τουν ποιητική συλλογή έτον το “Ονέρ’τα Πόνια Τάματα”, έκδοση Ινστιτούτου Βιβλίων κι Ανάγνωσης Κοζάνης κι Πανελλήνιας Ένωσης Σουρμενιτών, 1998.
[[Κατηγορίαν:Ποιητάδες]]
[[Κατηγορίαν:Συγγραφέοι]]
0hivvls8jxrkfxpedfb2yak6wucl2oz
Κατηγορίαν:Ποιητάδες
14
818
33850
33849
2018-09-19T00:30:25Z
2A02:587:DC03:6400:DD2F:41EA:3D86:EAB8
33850
wikitext
text/x-wiki
[[Ηλίας Τσιρκινίδης]]{{Commonscat|Poets}}
[[Κατηγορίαν:Πολιτισμόν|!]]
[[Κατηγορίαν:Ποιητικήν|!]]
[[Κατηγορίαν:Λογοτεχνίαν|!]]
twfg773je8l7w35yo6nbdvqkzhasnqn
Κατηγορίαν:Συγγραφέοι
14
819
31415
31201
2013-03-08T02:00:34Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 10 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5849863]] [[M:User:Addbot/WDS|(translate me)]]
31415
wikitext
text/x-wiki
{{Commonscat|Writers}}
[[Κατηγορίαν:Πολιτισμόν|!]]
[[Κατηγορίαν:Λογοτεχνίαν|!]]
dcq9o1q9cpu0yqeftyxvru9z3f99sai
Κατηγορίαν:Λογοτεχνίαν
14
820
31202
30466
2013-03-07T20:08:39Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 184 interwiki links, now provided by [[d:|Wikidata]] on [[d:q8259]] [[M:User:Addbot/WDS|(translate me)]]
31202
wikitext
text/x-wiki
{{Commonscat|Literature}}
[[Κατηγορίαν:Πολιτισμόν|!]]
jccrs2p7fzd0zi1jhfgogn0zo6j3tmk
Γιόχαν Βόλφγκανγκ φον Γκöτε
0
821
8732
5812
2009-09-14T18:19:03Z
Omnipaedista
35
Redirected page to [[Γιόχαν Βόλφγκανγκ φον Γκαίτε]]
8732
wikitext
text/x-wiki
#REDIRECT [[Γιόχαν Βόλφγκανγκ φον Γκαίτε]]
cgmq1r12ml3ql45pa3tw1j494dp7186
Βικιπαίδεια:Νοματαίοι
4
822
34633
34568
2020-10-24T16:16:49Z
2A02:587:5400:6501:B8EF:538B:B6B9:83E8
/* Προτεσνόν νοματάντς */Ήταν νοματαίας
34633
wikitext
text/x-wiki
==Δικαιώματα==
Οι νοματαίοι (sysops) τη Βικιπαίδειας επόρουν να φτάνεν:
* Σβήσιμον σελιδίων
* Ασπάλιγμαν σελιδίων
* Ασπάλιγμαν χρηστίων
==Καινούρ νοματάντ==
[[Βικιπαίδεια:Αδακά ψηφίζομεν για νοματάντς|Εκέκα]] επορείτε να ψηφίζετεν για καινούρτς νοματάντς.
==Προτεσνόν νοματάντς==
*[[Χρήστες:Makedonier|Makedonier]]
*[[Χρήστες:Omnipaedista|Omnipaedista]]
*[[Χρήστες:Sinopeus|Sinopeus]]
*[[Χρήστες:ZaDiak|ZaDiak]]
*[[Χρήστες:Stravon|Stravon]]
[[Κατηγορίαν:Βικιπαίδεια]]
4z02m6vtnkhj9ds4jjinj50s5aersmv
Κατηγορίαν:Θέατρον
14
823
35257
35256
2022-11-07T12:02:08Z
Billinghurst
2641
Ανάκληση των επεξεργασιών που έγιναν από τον [[Special:Contributions/Jawabanonline|Jawabanonline]] ([[User talk:Jawabanonline|συζήτηση]]) και επιστροφή στην τελευταία αναθεώρηση που είχε γίνει από τον [[User:Legobot|Legobot]]
31508
wikitext
text/x-wiki
{{Commonscat|Theatre}}
[[Κατηγορίαν:Πολιτισμόν|!]]
01co36s4i1mr0wcdx164lbb8062g7yv
Κατηγορίαν:Γλωσσολογίαν
14
824
31203
30670
2013-03-07T20:30:15Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 147 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5613665]] [[M:User:Addbot/WDS|(translate me)]]
31203
wikitext
text/x-wiki
{{Commonscat|Linguistics}}
[[Κατηγορίαν:Επιστήμην]]
f56op5o5nqg3vk4kkwiqpxw57r1uds5
Κατηγορίαν:Bot
14
828
5886
2009-05-25T22:37:19Z
ZaDiak
10
Καινούρεον σελίδαν με '[[Category:Wp/pnt]]'
5886
wikitext
text/x-wiki
[[Category:Wp/pnt]]
dv2hwaicnu8sn7dbr4s0fqfi568bfuh
Βικιπαίδεια:Νέον λεχτικόν
4
830
31676
8577
2013-05-15T23:38:56Z
Λεγωνίδαν
3669
/* Λέξεις */
31676
wikitext
text/x-wiki
Έχουμες σελίδας για τεχνολογικά κι επιστημονικά θέματα ση Βικιπαίδειαν εμουν. Σε αήκα άρθρα χρειάσκουμες και λέξεις ντο 'κ έχομε σα ρωμαίικα τη Πόντονος τη παλαιών εμουν.
==Λέξεις==
*Αραπάν: Αυτοκίνητο
*Καρβώνιν: Άνθρακας
*Νοματέος: Διαχειριστής
*Γιαρίφς: Γραφειοκράτης
*Σατάρς: Βλάκας
[[Κατηγορίαν:Βικιπαίδεια]]
bndmrfqedl68407scqqhydayxh0l8h4
Ίων Δραγούμης
0
834
35538
34882
2024-01-23T17:53:35Z
Διογένες
10538
μικρογραφία
35538
wikitext
text/x-wiki
[[Εικόναν:Ion Dragoumis.jpg|μικρογραφία|250px|Ίων Δραγούμης]]
Ο Ίων Δραγούμης έτονε αγωνιστής,πατριώτ'ς και λόγιος κ' ας αλλουνούς τρανόν εκφραστής τη ακραίου ελληνικού σωβινισμού. Διεκρίθη αμόν υπέρμαχον τη Μεγάλη Ιδέας(Τρανέσσα Ιδέα).Υιός τ' Στεφάνου Δραγούμη.Μακεδών,ασό Βογατσικό τη Καστοριάς,εγεννέθε σην Αθήναν σα 14 τη Σεπτέμβρη(Σταυρίτε) 1878 και εσπούδασεν νομικά σο Παρίσιν.Εσκότωσαν ατόν σα 31 τη Ιούλη(Χορτοθέρτ) 1920 απές σην Αθήνα,η αιτία έτονε πολιική,σουμά σ' Αμπελόκηπους,εκεκά όποι έτονε τα στρατώνας τη πεζικού και οπ' 'εστεασν αναμνηστικόν πλάκαν(στήλη).
Τρανόν σεβντάν είσεν με την Πηνελόπη Δέλτα-τον σεβντάν ατούν είπαν ατον "πλατωνικόν"-ντο έτονε συγγραφέας μυθιστορημάτων ντο γράφνε για τον Μακεδονικόν Αγώνα.Ασά 1902 έμπεσεν σον διπλωματικόν κλάδον,υπηρέτησεν αμον υποπρόξενον,κατόπιν απαιτήσεώς του,σο Μοναστήρ και απ'εκεί σην Ανατολ. Μακεδονίαν,σο Προξενείον των Σερρών,σην Ανατολικήν Ρωμυλίαν σο Προξενείον τη Πύργου και ση Θράκην,σο Προξενείον τη Φιλιππούπολης, έως σα 1907.Αντάμα με τον γαμπρόν ατ' Παύλον Μελάν,ντο έτονε άγουρος τη αδελφής ατ',έστεσεν τα ορθοδόξους κοινότητας εναντίον τη βουλγαρικών κομιτάτων,έσκωσεν' σο ποδάρ τα Ελληνικά Δυνάμεις και έντονε τρανόν απόστολος τη Μακεδονικού Αγώνος.Ίδια πατριωτικά προσπάθειας εποίκε και σην Πόλιν αυκά,όποι υπηρέτησεν σην Ελληνικήν Πρεσβείαν.(1907-1909).Σα 1909 εβοήθησεν σην προετοιμασίαν τη πατριωτικού κινήματος.Σα 1910 εποίκε μ'αλλουνούς τον "Εκαπιδευτικόν Όμιλον".
Σα 1911,αμόν οι Ιταλοί επαίραν τα Δωδεκάνησα,εποίκεν σην Πάτμον πανδωδεκανησιακόν συνέδριον,ντο επρόλαβεν και απεφάσισεν το ένωμαν με την Ελλάδα.(Συνέδριο Πάτμου 1912).Σα 1912,έντονε δεκανέας σο επιτελείον τη αρχηστράτηγου Κωνσταντίνου.Αντάμα με τον Βίκτορα Δούσμανη και τον Ιωάννη Μεταξά έστειλαν ατόν να διαπραγματεύκεται με τον Ταχσίν πασά την παράδοσιν τη Θεσσαλονίκης,όπ' έστεσεν την ελληνικήν σημαίαν.Σα 1914 επήεν πρεσβευτήν σην Αγίαν Πετρούπολη και εδιαχειρίστεν με επιτυχίαν το ζήτημα τ' Αγίου Όρους,φτάοντας μέλημαν να οργανούνται τα ελληνικά κοινοτητας τη Ρουσσίας.Σα 1915 εκλέχθεν βουλευτής Φλωρίνης.Σα 1916 εκδόθε το περιοδιόν ατ' "Πολιτική Επιθεώρησις".Σα 1917 εξόρισεν ατόν η κυβέρνηση τη Βενιζέλ' σην Κορσικήν,ασ' επαλινόστησεν σα 1919.
Η επακόλουθη ένταξήν ατ' σο αντίθετον, ασο βενιζελικόν στρατόπεδον, έντονε αιτίαν, αμον εμαθεύτεν η δολοφονική απόπειρα σο Παρίσι εναντίον τη Βενιζέλ', να πιανούται σ' ενέδραν ανδρών τη ασφαλείας του τότε αρχηγού ση Χωροφυλακήν Εμμανουήλ Ι. Ζυμβρακάκη, και να αραέβ' τραγικόν τέλος σο σημείο όπ' έσ' σήμερον στηθεί το αναμνηστικόν πλάκαν.
== Δουλείας ατ' ==
Ασό συγγραφικόν έργον ατ' ξεχωρίζνε το "Μαρτύρων και ηρώων αίμα" (1907) ντο εν εμπνευσμένον ασον Μακεδονικόν Αγώνα και ουσιαστικά αφιερωμένον ση θυσίαν τη γαμπρούν ατ' Παύλου Μελά, ίστε και τα "Σαμοθράκη" (1909) και "Όσοι ζωντανοί" (1912).
== Συνδέζμαι ==
*[https://web.archive.org/web/20100502080520/http://www.e-grammes.gr/2002/07/dragoumis2.htm Γ. Πισσαλίδη, Ίων Δραγούμης]
*[http://www.mani.org.gr/istor/mak/delta.htm Εφ. ''ΤΑ ΝΕΑ'', 29-10-1999 - τ' Αλέξανδρου Π. Ζάννα, Πηνελόπη Σ. Δέλτα]
*[http://80.76.55.10/Archive/skins/LAGeneric/navigator.asp?AW=1169503894328 Η Καθημερινήν]
[[Κατηγορίαν:Ποιητάδες]]
3uq78mi5w3xdjfr4ilb4lkblwqbi9xu
Συναλλ΄εότητα δ΄εαφορομορφιζμίων
0
837
6118
2009-06-08T06:05:35Z
Omnipaedista
35
[[Συναλλ΄εότητα δ΄εαφορομορφιζμίων]] ετερχλαεύτεν σο [[Συναλλοιότητα διαφορομορφιζμίων]]
6118
wikitext
text/x-wiki
#REDIRECT [[Συναλλοιότητα διαφορομορφιζμίων]]
9rstms75hc73azhdnqgece9lqkzktp7
Ποντιακόν γλώσσα
0
848
7175
2009-07-12T23:42:09Z
ZaDiak
10
[[Ποντιακόν γλώσσα]] ετερχλαεύτεν σο [[Ποντιακόν λαλίαν]] σε σύνδεσμον απάν
7175
wikitext
text/x-wiki
#REDIRECT [[Ποντιακόν λαλίαν]]
hh70627f411imxoabivk216h6jm4bp9
Ελλενικόν γλώσσα
0
850
7179
2009-07-12T23:42:50Z
ZaDiak
10
[[Ελλενικόν γλώσσα]] ετερχλαεύτεν σο [[Ελλενικόν λαλίαν]]
7179
wikitext
text/x-wiki
#REDIRECT [[Ελλενικόν λαλίαν]]
a08un6fc02wtw4n5bq5e6arhnc1ncxr
Τσάρλι Τσάπλιν
0
851
35590
35589
2024-01-25T09:16:07Z
Διογένες
10538
/* Συνδέσμε */Βικιφθέγματα
35590
wikitext
text/x-wiki
[[Αρχείον:Charlie Chaplin.jpg|right|thumb|Τσάπλιν το 1915|150px]]
Ο '''Τσάρλς Σπένσερ Τσάπλιν''' (Charles Spencer Chaplin Jr, [[16 Απρίλτ]] [[1889]] - [[25 Χριστουγενναρί]] [[1977]]), γνωστός σα Τσάρλι έτον άγγλος ηθοποιός. Έγνεν τρανός σα πρώτα δεκαετίας τ' [[Χόλυγουντ]]. Εν ο πρώτος τρανός ηθοποιός όπ' εποίσον το Σαρλό σε ταινίας. Απέθανεν τ' 1977.
== Φιλμογραφίαν ==
* The Kid, 1921
* A Woman of Paris, 1923
* The Gold Rush, 1925
* The Circus, 1929
* City Lights, 1931
* Modern Times, 1936
* The Great Dictator, 1940
* Monsieur Verdoux, 1947
* Limelight, 1952
* A King in New York, 1957
== Συνδέσμε ==
{{Βικιφθέγματα|el:Τσάρλι Τσάπλιν}}
* [[Αρχείον:Commons-logo.svg|link=https://commons.wikimedia.org/wiki/Category:Charlie_Chaplin?uselang=pnt|19x19px]] Σα [[c:Αρχική σελίδα|Κοινά]] εσ υλικόν σχετικόν με [https://commons.wikimedia.org/wiki/Category:Charlie_Chaplin?uselang=pnt '''''Τσάρλι Τσάπλιν''''']
[[Κατηγορίαν:Σινεμά]]
azfrtl5sajswby439qp0tu012s4yeko
16 Απρίλτ
0
852
37132
37066
2025-12-16T18:26:36Z
Εὐθυμένης
2777
37132
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[15 Απρίλτ]] | [[16 Απρίλτ]] | [[17 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''16 τ' Απρίλτ''' εν τ' 106ον ημέρα τη χρονίας (107ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 259 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[16 Μαρτί]] - [[16 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0106]]
lsu3krqavfy32iqhwxvl6mhiacb99sh
29 Απρίλτ
0
853
37145
37062
2025-12-16T18:30:37Z
Εὐθυμένης
2777
37145
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[28 Απρίλτ]] | [[29 Απρίλτ]] | [[30 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''29 τ' Απρίλτ''' εν τ' 119ον ημέρα τη χρονίας (120ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 246 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
* [[1863]] - [[Κωνσταντίνος Καβάφης]], Έλληνας ποιητής
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[29 Μαρτί]] - [[29 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0119]]
helt6a29fenb9l6vc0bot772dwx3355
Τσιν Σι Χουάνγκ
0
854
36296
35211
2025-08-16T18:51:19Z
CommonsDelinker
121
Removing [[:c:File:QinshihuangBW.jpg|QinshihuangBW.jpg]], it has been deleted from Commons by [[:c:User:Jameslwoodward|Jameslwoodward]] because: per [[:c:Commons:Deletion requests/Files in Category:Qin Shi Huang in art|]].
36296
wikitext
text/x-wiki
Ο '''Τσιν Σι Χουάνγκ''' (秦始皇) (259 π.Χ. – 210 π.Χ.), γνωστός σα Γινγκ Ζενγκ (嬴政), έτον βασιλέας σην κινεζικήν πολιτείαν τ' Τσιν από τ' 246 π.Χ. ως τ' 221 π.Χ. σην περίοδον των Μαχούμενων Πολιτείων. Έγνεν ο πρώτος βασιλέας σην ενωμένην [[Κίνα]] τ' 221 π.Χ. Εκυβέρνησεν ως τη θανή ατού τ' 210 π.χ. σην ηλικίαν των 50.
== Συνδέζμαι ==
* [https://web.archive.org/web/20100107121517/http://www.qinshihuangling.com/ Μαυσωλείον τ' Τσιν Σι Χουάνγκ]
* [https://web.archive.org/web/20170422063008/http://www.chinawikipedia.com/chinahistory.html Ιστορίαν τ'ς Κίνας]
[[Κατηγορίαν:Κίνα]]
0vutxi5hxplwm66g7nj9ij8vclatedu
Βικιπαίδεια:Γραμματικήν
4
856
34428
33872
2020-04-03T09:14:27Z
2A02:2149:8623:3900:30EA:91:E0D8:CB01
/* Φωνολογία */
34428
wikitext
text/x-wiki
'''Αυτή είναι η γραμματική της ποντιακής γλώσσας σε μια περιληπτική απλουστευμένη μορφή.''' '''Θα πρέπει να συμπληρωθεί και να βελτιωθεί σταδιακά και από άλλους χρήστες.'''--Κώτσον 08:41, 9 Σταυρί 2009 (UTC)
Δες και [[Βικιπαίδεια:Λεχτικόν]]
== Φωνολογία ==
('''<u>σ</u>, <u>ζ</u>, <u>χ</u>, <u>ψ</u>, <u>ξ</u>, <u>τσ</u>, <u>τζ</u>''' = παχιά συριστικά σύμφωνα, '''<u>α</u>, <u>ο</u>''' = ενδιάμεσα ή συνηρημένα φωνήεντα).
1. Η Ποντιακή διαφέρει από τη Νεοελληνική ως προς τα παχιά συριστικά σύμφωνα '''<u>σ</u>, <u>ζ</u>, <u>χ</u>, <u>ψ</u>, <u>ξ</u>, <u>τσ</u>, <u>τζ</u>''' και τα συνηρημένα φωνήεντα '''<u>α</u>''', '''<u>ο</u>'''. Το '''σκ''' μπροστά από '''ε''' ή '''ι''' προφέρεται '''<u>σκ</u>''' και το '''χ''' μπροστά από '''ε, ι''' προφέρεται '''<u>σ</u>'''. Τα '''<u>α</u>''' και '''<u>ο</u>''' προέρχονται από συνίζηση των '''ια, εα, ιο, εο''', όταν δεν τονίζεται το πρώτο φωνήεν, είτε βρίσκονται συνεχόμενα στην ίδια λέξη είτε βρίσκονται στο τέλος μιας λέξης και στην αρχή μιας άλλης: π.χ. ''Σον Κερασινόν γεμί<u>σ</u><u>α</u>, ας σην κορφήν ους τα νύ<u>χα</u>, Αεργίτες ους να βγαίν’ σην σισέν ρακίν εμπαίν’ , Δύο ακονισμένα μα<u>χ</u>αίρ<u>α</u> σ’ έναν θεκάρ’ ‘κι γίνταν, Θωρέαν έ<u>χ</u>’ ευλοϊάν ‘κ’ έ<u>χ</u> , Εέντον τη καλα<u>τζ</u>ής, Ατού σα μέσα σ’ τα λεγνά τα <u>χ</u>έρ<u>α</u> μ’ θα τυλίζω, Η Αθηνά και σύρ’ <u>α</u>τον ας σα ξανθά μαλλία''.
2. Αποβολές φθόγγων: Αποβάλλονται συνήθως τα άτονα - '''ι''' , - '''ου''', πριν και μετά από τονιζόμενη συλλαβή, αλλά και άλλα φωνήεντα: π.χ. ''Έσαν ευχαριστεμέν’ ν’ αποθαν’νε εκεί, Να μην διαβαίν’νε, Καρίπ’ και ψωμίν να μην τρώγ’νε''. Αποβάλλονται και σύμφωνα ανάμεσα σε φωνήεντα ή στην αρχή της λέξης: π.χ. ''Ψύχος θα έν’, μη φοάσαι, Με τα χτήν<u>α</u> με τα πρόατα, Επέγ’ναν οι συενοί, οι φίλ’'' . Στη θέση του αποβαλλόμενου φωνήεντος μπαίνει απόστροφος, το ίδιο γίνεται και στη θέση αποβαλλόμενου αρχικού συμφώνου. Όταν στη θέση του αποβαλλόμενου φωνήεντος αναπτύσσεται σύμφωνο (συνήθως το '''τ''' μετά τα ένρινα '''μ,ν''' και τα υγρά '''λ,ρ''') δεν μπαίνει απόστροφος: ''π.χ. Καλαντάρ’ς καληχρονία, κόρ’ έλα ας φιλούμε μίαν, Και Κουντούρ’ έρθεν ο κρύον, ναϊλί εκείνον π’ έ<u>χ</u>’ τον βίον, Μάρτς τελέν’ την εσοδείαν, όλ’ εντώκαν σα χαρτία, Τη Θερ’νού η εσοδεία, τη κοσμί’ έν’ ευλοΐα, Σον Σταυρίτεν άμα σπέρτς, έναν βάλτς και δέκα παίρτς, Τη Παναΐας το ζωνάρ’ , Τ’ άγρια τα μουχτερά τα ρα<u>χ</u>ία ημερών’νε''.
3. Ανάπτυξη ευφωνικού '''-ι, -ν''' και παρασιτικού '''-ι'''. Συχνά στην ποίηση αναπτύσσονται ως ευφωνικοί φθόγγοι το '''-ν''' και το '''-ι''' , που γράφονται σε αυτήν την περίπτωση με παύλα. Πολλές φορές αναπτύσσεται και το παρασιτικό '''-ι''' σε θέσεις όπου δε δικαιολογείται: π.χ. ''Η Σάρρα και -ν ας ση χαράν, Ταράζει -ν η καρδία, Ας σο καρδόπο μ’ έβγαισες κι επήες σο καλόν –ι / <u>τσ</u>εχέλ’κον έσ’νε ‘κ’ έξερες τσ’ εγάπ’ς το μυστικόν –ι, Τη μάνας ιμ’, Απάν’ ιμ’ , Θείος ιμ’''.
4. Το αρχαίο ελληνικό '''-η''' προφέρεται και γράφεται '''-ε''' στις ποντιακές λέξεις όχι στις νεότερες: π.χ. ''νύφε αντί νύφη, κλέφτες αντί κλέφτης, έτον αντί ήτο, αγαπηθέτε αντί αγαπηθείτε < αγαπηθήτε, κοιμεθέτε αντί κοιμηθείτε < κοιμηθήτε '', ''Έρθεν σα ήμαρτα, Που ‘κι τερεί όντες κάθεται, Γαμπρός υιός ‘κι ‘΄ινεται και νύφε θαγατέρα, Το κάστανον εξέβεν ας σο τζέπλιν αθε'' .
5. Τα '''μπ,ντ,γκ''' γράφονται και προφέρονται, κυρίως σε ξένες λέξεις, '''π,τ,κ''': π.χ. ''Με τ’ έναν ρακόπον ντ’ έπιες παχτσέδες ελέπ’ς και ταούλια ακούς, Και την οτάν ντο κείσαι'' .
6. Ευρεία χρήση του τελικού '''–ν''' και ανάπτυξή του σε θέσεις που δε δικαιολογείται: π.χ. ''Έρθεν κ’ ερούξεν σ’ έναν οσπίτ’ απέσ’ .''
7. Μετατροπή του συμφωνικού συμπλέγματος '''σφ''' σε '''σπ''': π.χ. ''Η πεθερά τ’ς πα έτον ολίγον σπιχτέσα, Κάποιος σπίγγ’ την γούλαν ατ’ , Άμα εσπίχκουτον κ’ έλεεν, Έσ’κωσεν την φοτάν ατ’ς να σπογγίεται'' .
8. Το '''γ''' ανάμεσα σε φωνήεντα δεν προφέρεται και δε γράφεται ή προφέρεται απαλά: π.χ. ''να έ<u>χ</u>ετεν ύαν και ευλοΐαν'' .
9. Ανάπτυξη αρχικού φωνήεντος ή αλλαγή αρχικού φωνήεντος: ''Έναν πουλίν καλόν πουλίν εβγαίν’ από την Πόλιν, Εφτωχοί κάποτ’ επέγ’ναν σην ξενιτείαν κ’ εφόρ’ναν κι άλλο καλλίον'' .
10. Διατήρηση του ιωνικού '''σ''', αντί του '''τ''': ''κοσσάρα αντί κότα, σεύτελον αντί τεύτλον''.
11. Διατήρηση του '''ω''' σε περιπτώσεις που η κοινή νεοελληνική το έχει μετατρέψει σε '''ου''': ''ζωμίν αντί ζουμί, ρωθώνι αντί ρουθούνι, κωδώνι αντί κουδούνι''.
12. Διατήρηση του ιωνικού '''ουκί''', αντί του αττικού '''ουχί''' ή του νεοελληνικού '''δεν''', με μετατροπή του, μετά από αφαίρεση της πρώτης συλλαβής, σε ''''κι''': '''κι θέλω, 'κι τρώγω''.
13. Το φωνητικό αλφάβητο έχει 20 γράμματα, πέντε φωνήεντα '''α,ε,ι,ο,υ''' και 15 σύμφωνα, δεν έχει τα '''ξ, ψ''', στη θέση τους χρησιμοποιεί '''κσ ,πσ'''. Εμείς χρησιμοποιούμε την ιστορική ορθογραφία με τα 24 γράμματα και υπογράμμιση στα διαφέροντα σύμφωνα και φωνήεντα, γιατί είναι τελικά η πιο απλή από όλες τις σχετικές προτάσεις που έχουν γίνει. Τα ενδιάμεσα φωνήεντα '''<u>α</u> , <u>ο</u>''' συνήθως δηλώνονται από άλλους με δύο τελείες κάτω από το γράμμα και τα παχιά σύμφωνα '''<u>σ</u>, <u>ζ</u>, <u>χ</u>, <u>ψ</u>, <u>ξ</u>, <u>τσ</u>, <u>τζ</u>''' με το σημείο της βραχύτητας επάνω από το γράμμα.
== Τονισμός λέξεων ==
Δεν τονίζονται οι μονοσύλλαβες λέξεις εκτός από το ερωτηματικό '''ντό''', το διαζευκτικό '''γιά…γιά''' και το συμπλεκτικό '''νέ…νέ'''. Οι δισύλλαβες λέξεις που γίνονται μονοσύλλαβες μετά από αποκοπή διατηρούν τον τόνο. Στην προπροπαραλήγουσα ανεβαίνει ο τόνος σε κλητικές, στη συλλαβική αύξηση των ρηματικών τύπων, σε ρήματα των οποίων προηγείται ερωτηματικό '''ντο''' με έκθλιψη και στα θηλυκά των επιθέτων σε '''–εσα''': π.χ. ''Νε ποπά, Κώνσταντινε, Έκαιγαμε , Ετίμαναμε, Ντ’ έποικες έμορφεσα'' .
== Μορφολογία ==
Η ποντιακή διάλεκτος διέσωσε μέχρι σήμερα μεγάλο πλήθος αρχαίων ελληνικών λέξεων όπως: ''βοτρύδιν < βότρυς (τσαμπί), λιμός < λιμός (πείνα), στούδιν < οστούν (κόκκαλο), ωβόν < ωόν (αυγό), ωτίν < ους, ωτός (αυτί), έγκα < ήνεγκα (έφερα), τ' εμόν < το εμόν, τ' εμέτερον <το ημέτερον, βάλον < βάλον (βάλε) ''
== Άρθρα ==
Τά άρθρα '''ο, η, οι''' της ονομαστικής δε χρησιμοποιούνται συνήθως μπροστά από φωνήεν αλλά μερικές φορές και από σύμφωνο: π.χ. ''Απόψ’ αδελφό μ’ επέθανεν, Η μάνα μ’ είπεν Αλευράς,'' . Στη γενική ενικού και των τριών γενών χρησιμοποιούνται συχνά τα άρθρα '''τη, τση''', ή '''τ’ , τσ’''' , στη γενική πληθυντικού και των τριών γενών το άρθρο '''τη , τ’''' και στην αιτιατική πληθυντικού αρσενικού και θηλυκού τα άρθρα '''τοι , τσοι τ’ , τσ’''' : ''π.χ. Αδελφός ιμ’ , Καλομάνα μ’'' .
== Ουσιαστικά ==
Κανονικό πληθυντικό στο γένος τους σχηματίζουν μόνο τα ουσιαστικά που δηλώνουν έμψυχα λογικά όντα, όλα τα άλλα σχηματίζουν ουδέτερο πληθυντικό: π.χ. ''Μοιρολογούν τα εγκλησιάς, κλαίγ’νε τα μοναστήρ<u>α</u>, Η <u>ψ</u>η σ’ είν’ τα καβγάδας, Τα κοσάρας ιμ ωβάζ’νε σα καφούλ<u>α</u>.'' Τα ουσιαστικά από άλλες γλώσσες γίνονται γένους ουδετέρου στα ποντιακά όσα τελειώνουν σε σύμφωνο ή σε '''-ι''', και γένους θηλυκού τα άψυχα που λήγουν σε '''–α''', ή '''–ε'''.
'''Α΄ κλίση ουσιαστικών''': ''ο άντρας, τη αντρού, τον άντρα, οι αντρούδες, τη αντρουδίων, τοι αντρούδες / ο κλέφτες, τη κλέφτε, τον κλέφτεν, οι κλεφτάντ’, τη κλεφταντίων, τοι κλεφτάντ’ς / η νύφε, τη νύφες, την νύφεν, οι νυφάδες, τη νυφαδίων, τοι νυφάδες / η κοσάρα, τα κοσάρας, τη κοσαρίων.''
'''Β΄ κλίση ουσιαστικών''': τα αρσενικά σε '''-ος''' σχηματίζουν την ονομαστική σε '''–ον''', όταν είναι έναρθρα. ''ο άθρωπον, τη αθρωπί, τον άθρωπον, οι αθρώπ’, τη αθρωπίων, τοι αθρώπ’ς / το χωρίον, τη χωρίονος, το χωρίον, τα χωρία, τη χωρίων, τα χωρία / το παιδίν, τη παιδί, το παιδίν, τα παιδία, τη παιδίων, τα παιδία.''
'''Γ΄ κλίση ουσιαστικών''': έχει μόνο ουδέτερα: ''το γάλαν, τη γαλατί, το γάλαν, τα γάλ’τα, τη γαλατίων, τα γάλ’ τα / το μέλιν, τη μελί, το μέλιν, τα μέλια, τη μελίων, τα μέλια''.
== Επίθετα ==
άσπρος, άσπρεσα, άσπρον / άλαλος, άλαλεσα ή άλαλος, άλαλον / αγαπέσιμος, αγαπέσιμος, αγαπέσιμον / ανοιχτομάτ’ς, ανοιχτομάταινα, ανοιχτομάτ’κον / οκνέας, οκναρία, οκνάριν ή οκνάρικον / σεβταλής, σεβταλήσα, σεβταλίν / εντροπιάρης, εντροπαρία, εντροπιάρ’κον / γουλέας, γουλαρία, γουλάριν ή γουλάρ’κον / βαρύς, βαρέσα, βαρύ / έμορφος, κι άλλο έμορφος, πολλά έμορφος ή τσιπ έμορφος: π.χ. ας σε μεν καλλίων εν’, Ας όλτς καλλίον είμαι, Μαναχοκόρτς και λαλα<u>χ</u>ού και καλομαθεμέντσα, Α! την νέισαν την Ελέν’ θέλτς. Διατηρούνται τα αρχαία ελληνικά θηλυκά επίθέτα σε '''-ος''' αντί σε '''-η''': ''η άλαλος αντί η άλαλη, η έμορφος αντί η όμορφη''.Ο επιθετικός προσδιορισμός σε θηλυκό άψυχο ουσιαστικό μπαίνει συνήθως έναρθρος σε ουδέτερο γένος και ακολουθεί το άψυχο θηλυκό ουσιαστικό με άρθρο: ''το Μαύρον η Θάλασσα''. Το αντίστοιχο κατηγορούμενο ή ο αντίστοιχος κατηγορηματικός προσδιορισμός εκφέρεται συνήθως όμοια αλλά χωρίς άρθρο: ''Ο Εύξεινον ο Πόντον έν' μαύρον θάλασσα''.
== Αριθμητικά ==
Αρσενικό και θηλυκό: εις, είνας, ένας, εινός, είνονος, ενός, είναν, έναν. Ουδέτερο: ένα (ν), εινός, είνονος, ενός, έναν.
== Αντωνυμίες ==
εγώ, ογώ, μου, μ’ , με, εμέναν, εμέν, εμείς, εμείστεν, εμείστουν, εμούν, εμάς, μας, εσύ, σου, σ’, σε, εσέν, εσέναν, εσείς, εσείν, εσείστουν, εσείστεν, εσούν, εσάς, σας, ατός, ατού, ατ’, ατόν, ατόναν, ατείν, ατούν, εκουν, ατούς, ατουνούς, ατείνους, ατείντζ, ατέ, ατής, ατές, ατ’ς, ατό, έθε, άθε, άθες, άχτε, άχτες, άχτερ / τ’ εμόν, μον, τ’εμά, μα, τ’εμέτερον, τ’εμέτερα, τ’εσόν, σον, τ’ εσά ,σα, τ’εσέτερον, τ’εσέτερα, τ’ατουνού, τ’ατεινές, τ’ατεινθεΐ, τ’ατεινέτερον, τ’ατεινέτερα / ο νιαυτός ιμ’, ο νιαυτός ισ’, ο νιαυτός ατ’ / εγώ εμέν, εσύ εσέν, ατός ατόν, εκείνος εκείνον, εμείς εμάς, εσείς εσάς, εκείν’ εκείντζ’ / τ’ έναν τ’ άλλο. Σύντομοι τύποι της προσωπικής αντωνυμίας '''ο, α''': π.χ. εξέγκεν α οξουκά είδεν α κ’εχπαράεν, Εείνος ατώρα θέλ’ να παίρ’ α , Εξέγκα ο οξουκά, Υίαν και καληχρονίαν σ’ οσπίτ’ν εσουν, Θα φουρκίζω εγώ εμέν, Ήντ<u>α</u>ν έλεπες και ήντ<u>α</u>ν έκουες, Τ’ εμόν το κιφάλ’ πολλά ετρίφτεν, Και σ’ άλλον το φτερόν αθε, Η <u>ψ</u>η ατ’ς εσύρνεν να τρώει τ’ έναν και τ’ άλλο, Επάρθαν τα κλειδία θε, Το <u>ψ</u>όπον εθε έτον π’ επέταξεν, Και σο ταφίν εμούν απάν’, εσύ μοιρολογάς μας, Πέ ατα σ’ εμέτερον την γλώσσαν, Σίτα εκλώσκουμ’ νε έλεγα εγώ εμέν, Άμα ξάν’ τιδέν ‘κ’ εγέντον, Εκατήβεν Ηρακλής μετ’ εκείνεν .
== Ρήματα ==
Παθητικός ενεστώτας σε '''-ουμαι''': π.χ. πορεύκουμαι, πορεύκεσαι, πορεύκεται, πορεύκουμες, πορεύκουστουν, πορεύκουνταν, Παρατατικός σε '''-ινα''': π.χ. Εζήναν όλ’ το ίδιον ζωήν, Κι εθέλναν ν’ αποχωρίουν . Προσεχής μέλλοντας: Η πεθερά τ’ς έ<u>χ</u>' κ’ έρ’ται, Εκόπαν τα συντελέας ατ’ς, έ<u>χ</u>’ και λιγούται. Η έκφραση '''παρά λίγο να''': ερούξεν έτον, εφουρκίεν έτον. Συλλαβική αύξηση '''ε-''' παίρνουν τα ρήματα που αρχίζουν από σύμφωνο ή από '''α-'''. Τα σύνθετα ρήματα παίρνουν εξωτερική και εσωτερική ή μόνο εξωτερική συλλαβική αύξηση: π.χ. Ατό κανείς ‘κ’ ενέγνωσεν.
Είμαι, είσαι, ένι, έν’ , είμες, είμεστεν, είμεστουν, είστεν, είσν’νε, είστουν, είναι, είν’ , έμ’νε, έμουν, έσ’νε, έσουνε, έσ’ , έτον, έτουνε, έμ’νες, έμουνες, ήστουν, ήστενε, ήσαν. Κόφτω, κόφτ’ς, κόφτ’, κόφτομε, κόφτετε, κόφ’νε / τιμώ, τιμάς, τιμά, τιμούμε, τιμάτε, τιμούν / ετίμανα, ετίμανες, ετίμανε, ετίμαναμε, ετίμανατε, ετίμαναν / ετίμεσα, ετίμησες ετίμεσεν, ετίμεσαμεν, ετίμεσετε, ετίμεσαν . Κοιμούμαι, κοιμάσαι, κοιμάται, κοιμούμες, κοιμούσνε, κοιμούστουν, κοιμούνται / εκοιμούμ’νε, εκοιμούμ’, εκοιμούσ’νε, εκοιμούτον, εκοιμούμ’νες, εκοιμούστουν, εκοιμούνταν / εκοιμέθα, εκοιμέθες, εκοιμέθε, εκοιμέθαμεν, εκοιμέθετεν, εκοιμέθαν. Αφήνω, αφήντς, αφήν’, αφήνουμεν, αφήνετεν, αφήν’νε / ανοίγω, ανοίεις, ανοίς, ανοί, ανοίουμε, ανοίτε, ανοίγ’νε. Διατήρείται η κατάληξη της προστακτικής του αορίστου σε '''-σον''',αντί '''-ε''': ''ποίσον < ποίησον αντί ποίησε, κόψον αντί κόψε''. Διατηρείται η παθητική συνηρημένη κατάληξη '''-ούμαι < -οομαι''' της αρχαίας ελληνικής αντί της νεοεληνικής '''-ώνομαι''': ελευθερούμαι < ελευθερώνομαι, κοιμούμαι αντί κοιμάμαι, φανερούμε αντί φανερώνομαι.
== Ρηματικοί τύποι ==
Μην κλαις Αγιάννε μου και δερνοκοπισκάσαι, Όλα εκείνε Θ’ εδιατάχκουτον, Εξέγκαν την τορπάν κ’ εσέγκαν απέσ’ την χαλβάν, Τερεί τ’οσπίτ’ όλον εσκουτούλτσεν, Μεσανυχτί’ εκαρκάριζες τα σκεύια, Εζύμωσα ενήβεν το ζυμάρ’, Ζατί εσέν νερ<u>ά</u>στα σε, Επέρεν βρούλαν Αχιλλεύς, εκάεν, εμανίεν, Κι ο κάστρεν εκρεμίεν, Πρώτα ώβασον κ’επεκεί κακάντσον, Επέγνεν ση Ρουσίαν κ’ έρχουτον, Επεδέβεν τοι γονέοις και το στέφανόν ατ΄, Όλα ένταν ήμπως έταν σιφτιάν, Το μωρόν ε<u>τσ</u>απαλάεψεν, Γιούρα, δέβα κόψον εισιτήρια, ντ’ άναμεντς; Γεννίουμες κι ούλ’ <u>χ</u>αίρουνταν, Μανα<u>χ</u>έσα εργούντον, Τ’ ομμάτ<u>α</u> τ’ς εχαντιλιάαν, εχπαράεν, ‘Κ’ εγούεψαν την <u>ψ</u>ην ατουν, Να δ<u>α</u>τάχκουμαι τοι <u>τσ</u>οπάντς .
== Επιρρήματα ==
Αέτσ’ έν’, ρίζα μ’ αέτσ’ έν’ ,αέτσ’, άμον ντο λέγω, Καμίαν ‘κι γεράτεν, Αλλομίαν ας σο παραθύρ’ είδαν, Βίρ<u>α</u> πίν’ το νερόν, Οι πλούσ’ εδούλευαν κι άλλο πολλά, Ας σο γιαζιλίν τασίν κι κάθεν, Και να ευρίουν σον τόπον τ’ εγεννέθαν, Εκείνα τα λόγια καμίαν ‘κι ανασπάλ’ ατα, Ξάι τον καιρόν ατ’ς ‘κ’ έ<u>χ</u>’, Πουρνόν πουρνόν, Τερεί απάν’ τερεί αφκά, τερεί οπίσ’ και έμπρα, Άμα ο Θεόν πολλά ψηλά έτον, Έρθεν το μωρόν απαγκέσ’ σο νερόν, Πλαν κεικά ας σα χωρία μουν, Έναν ημέραν θα επένεν σην Άρδασσαν κεκά, Στέκ’νε καρ<u>σ</u>ί καρ<u>σ</u>ί, Ποίσον έναν ξάι κι άλλο υπομονήν, Δέβα στυχαρίασον την Παρθέναν τη Λαζάρ’, Άνοιξη έτον και πολλά κρύος πα ‘κ’ έτον, Τρία βραδάς έμ’νεν εκαικά, Τ’ άλλο επέναμε σα χαμούφτας, τ’ άλλο σα μομό<u>τσ</u>ια .
== Προθέσεις ==
Η πρόθεση '''σε''' με τα άρθρα '''τον, την, το, τους, τοι''' κ.ά. δίνει τους τύπους '''σον, σην, σο, σοι''' κ.ά, με αποβολή του '''τ'''. Το ίδιο γίνεται και με την πρόθεση '''ας''' που δίνει τύπους '''ας σον, ας σην, ας σο, ας ση''' κ.ά.: π.χ. Αδά σον κατακέφαλον, Έλα κάθ’κα σα γόνατα μ’ , Αφκά σο σπαρελόπο σου, Από παν’ ους κά, Κ’ επεκεί εκλώσκουσαν οπίσ’ , Επεΐ εγνώρτσα τοι τρανούς πα, Επολέμαγα να εδείκνυζα τεάμ’ τ’ έμαθα πολλά, Αντραδέλφ’σα τ’ς μετ’εκείνεν έναν στόμαν έταν .
== Σύνδεσμοι ==
Πασκίμ ντο ετέρεσα την ώραν, Γιόξα ν’ ευτάει υπομονήν, Ώσνα θ’ εμπαίν’ναν απέσ’, Αμόν ντ’ εσέβαν απέσ’, Άμον το θα πάνε θαφ’ ν ατον, Και σιτ’ επέγ΄ναν έπιναν’ ετραγώδ’ναν, Όντας έρχουτον κάποτε σειρά να λογοφέρκουμες, Γιαμ’ ‘κ’ εν’ καλά η μάνα σ;
== Επιφωνήματα ==
Ναϊλί εμάς και βάι εμάς, Νασάν εσάς ψηλά ραχιά, Μώ την πλάση σ’ και την καρή σ’ , Νασάν την μάναν π’ έχ’ ατον, Αχά! έρτεν ερίφς, Βάι την μάναν, βάι την μάναν π’ εί<u>χ</u>εν τσοι οκτώ τσοι υιους και την Ερήν την κόρην, Έρθεν ο χρόνον δίσεχτον τα μήνας οργισμένα, Έικιτι χρόν<u>α</u> έικιτι βαχούτ<u>α</u>, Άφεριν, Μαρία εγροίκσες κι εποίκες αΐκον κορίτσ’ .
== Σύνθετα ==
Την κόρ’ την <u>χ</u>ιλεπλούμιγον, Σα <u>χ</u>ιλ<u>ό</u>μορφα πουλία, Ο <u>χ</u>ειμωγκόν εμέσαξεν χιονοκαπατεμένος, Ασπροκουκουλο<u>σκ</u>έπαγα και μαυροκαρδισμένα, Τ’ αγιαζοφύσεμαν ξερόν σωστόν ανασμοκόφτης, Κι ήλεν πυκναράευτος, Καντηλογλυκοφώτιστα, Αγνιάρ’ φαΐν εμαέρεψεν υλιστοτανωμένον.
== Σύνταξη ==
Προτίμηση στο μικροπερίοδο λόγο με κύριες προτάσεις. Οι προσωπικές αντωνυμίες μπαίνουν μετά το ρήμα σε πτώση αιτιατική είτε είναι άμεσα είτε είναι έμμεσα αντικείμενα. Το έμμεσο αντικείμενο μπαίνει σε πτώση αιτιατική: π.χ. ''Τ’ όνεμα σ’ χαρ’σον με''. Οι επιθετικοί και κατηγορηματικοί προσδιορισμοί και τα κατηγορούμενα των ουσιαστικών που δηλώνουν μη λογικά όντα μπαίνουν σε ουδέτερο γένος: π.χ. ''Αούτ’ ο κόσμον ψεύτικον, Ξάι ‘κ’ εφάνθεν αούτα τα ημέρας, Σα τρία φοράς απάν’, Κανείς τ’ εσόν ανάγκην ‘κι έ<u>χ</u>’, Και με τ’ έναν μουντζούναν κόκκινον, Σ’ όλ<u>α</u> τα μέρ<u>α</u> η ξενιτεία βαρύν έν’ άμα σην Ματσούκαν πολλά βαρύν, Είμ’ ας σο ποντιακόν ρίζαν, Να γονουσεύ’ με τ’ εμέν’ πολλά ημέρας, Έναν Κερεκήν ημέραν''. Μερικές φορές παραλείπεται το '''"να"''' των βουλητικών και τελικών προτάσεων: π.χ. ''Πάω άφτω το φουρνίν, φέρον την πιρρίφτεν ας αρχινώ και πιρρίφτω, Κάθ’ κά κεράζω σε έναν ρακίν''.
'''ΔΕΥΤΕΡΕΥΟΥΣΕΣ ΠΡΟΤΑΣΕΙΣ''': ''Σίτ’ αναγνώθει, σίτ<u>α</u> κλαίει, σίτ<u>α</u> κρούει την καρδίαν, Την ώραν ντου ‘κ’ ελέπω σε κάθουμαι κά και κλαίω, Ανάθεμά σε, νε κουτσή, ντο παλαλέσα είσαι, Ν’ ακούω <u>τσ</u>οπάν σύριγμαν και κεμεντζές λαλόπον, ‘Κ’ ερχίνεσαν ν’ ευτάγ’νε την χαλβάν, ‘Κ’ εξέρ ’ντο πρέπ’ για να ευτάει, Κ’έτρωαν τ’οψάρα τ’επίανεν ατός ο παλουχ<u>τσ</u>ής, Εκεί εύραν ατον, όντες εδέβεν ο φόβον, Ο Φωστήρτς ο μουχτάρτς είχεν τρανόν μεράχ’ το ‘κ’ έστεκαν ατον παιδία, Οι γεραλαεμέν’ πα επέμ’ναν σα νοσοκομεία ώσνα ‘ίνταν καλά, Ν’ ευτάγ’νε ήντ<u>α</u>ν λέγω, Ους γιτουρεύκουν και γερλεσεύ’νε σο χωρίον εμουν, Κά ‘κ’ εκάθουσαν να τρών’νε αν ‘κ’ εφάζαν πρώτα τα ζά τουν'' .
'''ΕΡΩΤΗΣΕΙΣ''': ''Γουρζούλ’ νερόν, αγνέστικά μέρ΄ πάς; Χα, ξαν’ ντ’ έπαθες, νέψα; Κι αούτο ντο έν; Ντ’ άγληγορεις μάνα; Έκ’σες ντό είπα; Ως πότε θα διαρμηνεύ’ς με; Τάη, ντ’ έποικα και διώχ’ς με; Ξαν’ ντ’ έπαθες; Ποίος αραεύ’ με; Πασκίμ ντο εν’ Πόντιεσα;''
== Ιδιόμορφες λέξεις ==
Σ''α δίχωτα ευρέθεν, Την σπαθέαν, Κάστρεν απάν’ σον κάστρεν, Ευλογίζ’νε κι όλεν την ε<u>χ</u>ετείαν, Καυκίν μαλαματένεν, Βαθέα νουνιγμέντσα, Εγώ και πώς γαλοφορώ και πώς θα βυζαλίζω, Θεού το μένεμαν, Θεού η στυχαρία, Ση κυρού μ’ τον καιρόν έτον είνας τ<u>α</u>λιγανλής, Σ’ υστερ’νόν την έλαν ατ’ ση Σάνταν, Κι εβγάλνε ση μέσεν το σκάνταλον, Και ν’ αμπελώντς και να κλα-δώντς και να γομώντς τον κόσμον, Την Σάββαν 10 Χορτοθερί, Ναϊλί που ‘κι θα ευρίεται, Τ’ άχαρον την κλαίη ‘κ’ εφήν’ , Τα δεντρά έκλισαν τα κλαδία τουν, Αέτς εκόλτσαν ατον Κούκουδα, Κάλεα και νεότεν έφαγαν, Όνταν <u>τζ</u>ίζ’ το καρδόπο μ’ , Επορεί να <u>τσ</u>ακανίουμες σα χωράφ<u>α</u>, Εδέβασες ατό κά, Η Σημέλα πολλά θρήσκαινα έτον, Οψέ σα βρατέρ<u>α</u> κεσ’, Εκόπαν τα συντελέας εμουν, Η Πελαΐα ερούξεν το λετσέκ’ν ατ’ς, Ελύαν τα τσάμιας ατ’ς, Φως τ’ ομμάτ<u>α</u> σουν, έρθεν ο Ζάχον, Τ’ ομμάτ<u>α</u> σ’ γομάτον φως, Εγώ εντροπέας και χα<u>σ</u>εμένος όπως έμ’νε, Έσκωσα τ’ άλογον σο τετνάρ, ‘Κ’ έγκ’ ατο ση λογαρίαν, Ίδρωσα κ’ εγένουμ’ κού<u>στ</u>’ νερόν, Ση χαμονής το άκλωστον τ’ αγύριστον την στράταν, Ημ’σοι τ’ ημ’σού επέμνανε, Σός, νέψα, ε<u>χ</u>ύτωσεν'' .
== Τουρκική επίδραση ==
''Εταζιρλιάεψεν ατόν ο μωμόγερον, Έζησα σ’ όλ<u>α</u> τα τιζέν<u>α</u> κ’ εσέβα απέσ’ σα κετίσ<u>α</u> τη ζωής, Άλλ’ εύρ’ ατα τογρία κι άλλα πιτίν πιτινέ ανάποδα, Έναν τατ’ ‘κ’ επόρεσα να επαίρ’να, Πώς εζήναν ση Τούρκονος το μιγιάτ αφκά, Να γαρσουλαεύ’ ατο με τ’ ατωρ’νόν το κετίσ’, Όσα φοράς εγονούσεψα με τ’ εκείνον, Είδα κι άλλα μιλέτ<u>α</u> κι άλλα κετίσ<u>α</u>, Κι υστερ’νά θα χοσλανεύκεται, Βαχούτ’ ‘κι θα χάνω, Η νύφε επουγαλεύτεν, Και στέκ’ σο γιάν ’ , Ντο να λέω σας να ινανεύετε, Το πουίχ’ν ατ’ σην κοτύλαν ατ’, Και καν’νάν ‘κ’ επεγενεύκουτον, Τεΐ εχολ<u>ά</u>σταν, Θα γουρεύουμε τον χορόν, 20 Καλανταρί, Σάββαν ημέραν, Αλλομίαναν ατός αρίφ’ς, Και έβαλεν το γουντάχ’ σο νερόν, Να σκοτών’ την κεντήν ατ’ , Νέ έτρωεν και νέ έπινεν, Τέρτ’ που ‘κι λαρούται, Σην πολιτείαν λεγ’νε σοεύ’νε σε σίτ<u>α</u> πορπατείς και χαπέρ’ ‘ κι παίρ’ς, Τα πλούτ’ ας είναι τη ζεγκίν και συ τ ’εμόν ας είσαι, Με τ’ ατό τ’ ομούτ ζούνε, <u>Χ</u>οσ’ εξέρ’ς , Γιοκ, πουλί μ’, να τρώω την <u>ψ</u>ή σ’, Εβράδυνεν και έμ’ναν σα τικιάνια τη <u>Τσ</u>εβιζλούκ'' .
== Ποντιακά επώνυμα ==
Μουρουζάντ’, Αντωνάντ’, Κερμανάντ,Σελιμάντ’, Τσαχουράντ’,Υψηλάντ’, ση Ποπαδάντων,ση Γιαννακάντων, Κέρογλης, Σάρπογλης, Αμιράς, Αλευράς,Φωκάς, Γαλέας, Μανέας, Ζουρνατζής, Καλατζής, Μεταξάς, Καρατζάς, Τριάντης, Χαριτάντης, Μουρούζης και άλλα πολλά.
== Βιβλιογραφία ==
*Άνθιμος Παπαδόπουλος
*Κώστας-Γιάννης Κανονίδης-Τοπχαράς
*Βέρα Κεσίδου
*Ποντιακή Λογοτεχνία
[[Κατηγορίαν:Γραμματικήν]]
k8vo4el6hst1wggup944l5txdlla0kh
Βικιπαίδεια:Λεχτικόν
4
857
35485
35484
2023-10-24T07:02:12Z
84.205.244.136
35485
wikitext
text/x-wiki
== Βασικό [[λεχτικόν|λεξικό]] της ποντιακής γλώσσας ==
'''Θα πρέπει να συμπληρωθεί και να βελτιωθεί σταδιακά και από άλλους χρήστες.''' Οι λέξεις που είναι όμοιες στη μορφή και το νόημα με τις λέξεις της νεοελληνικής μπορεί και να παραλείπονται.''' – Κώτσον 20:02, 7 Σταυρί 2009 (UTC)
(''' <u>σ</u>, <u>ζ</u>, <u>χ</u>, <u>ψ</u>, <u>ξ</u>, <u>τσ</u>, <u>τζ</u>''' = παχιά συριστικά σύμφωνα, '''<u>α</u>, <u>ο</u>''' = ενδιάμεσα ή συνηρημένα φωνήεντα).
Δες και [[Βικιπαίδεια:Γραμματικήν]]
'''Α'''
'''αβάπτιστεσσα''', (η) αυτή που δεν έχει βαπτιστεί
'''αβαράσσα''', άεργη, τεμπέλα, χασομέρα.
'''αβάσιμεσα''', '''άβαφεσα''', '''άβγαλτεσα''', '''άβολεσα''', '''αγαθέσα'''.
'''αβλούκ<u>α</u>''', τα (εν. το αβλούκιν ή τ'αβλούκ'): λάπατα, άγρια λαχανικά με πλατύ μακρύ φύλλο.
'''αγαπέσιμος, -ος, -ον''', επίθ.: αγαπητός (θυλ. και '''αγαπητικιέσα, αγαπετικιέσα''').
'''αγγείον''', το: άσκαυλος, τουλούμ', μουσικό όργανο σαν την γκάιντα.
'''αγγεύω''', ρ. (αόρ. έγγευα): αναφέρω.
'''άγγιχτεσα''', η: άγγιχτη.
'''αγγούριν''' ή '''αγγούρ'''', το : αγγούρι.
'''αγέλαστον''', ο: παιδικό παιχνίδι, το οποίο παιζόταν με δύο παίχτες, ο ένας έμενε ακίνητος και ο άλλος προσπαθούσε να κάνει τον άλλο να γελάσει.
'''αγέννητεσα''', η: η αγέννητη.
'''αγιάτρευτεσα'''
'''αγιθοδώρισσα''' ή '''αϊθοδώρισσα''', η: νεαρή κοπέλα, συνήθως αρραβωνιασμένη, που έκανε σκληρή νηστεία εν όψει του γάμου της (πβ. αεθοδώρισμαν, θοδώρισμαν, αεδοθωρίζ’).
'''αγληγορώ''', ρ. (αγλήγορα): βιάζομαι.
'''αγναεύω''', ρ. (εγνάψα): καταλαβαίνω (< τουρκ. ağnamak).
'''αγνέστικα''', επίρ.: θεονήστικα.
'''αγνεφίζω''', ρ.: ξυπνώ.
'''αγνός, -ἐσα, -ὀν''', επίθ.: περίεργος, σπουδαίος· '''αγνά <u>ά</u>ρ<u>α</u>''': εκλεκτά φαγώσιμα· '''ντ’ άγνα''': πώς.
'''αγούδα''', η: θαμνώδες φυτό με φύλλα σαν της ελιάς και κίτρινα άνθη· το υγρό από τα φύλλα το χρησιμοποιούσαν ως φάρμακο για τη φαγούρα.
'''άγουρος''' ή '''άγουρον''', ο (οι αγούρ', τη αγουρίων, τοι αγούρτς, τα αγούραι): άνδρας· ο άγουρομ' = ο άντρας μου· το αγουρόπον, τα αγουρόπα = παιδάκι.
'''αγουροσύνε '''ή''' αγουρότε''', η: γενναιότητα, ανδρεία, σεξουαλική ικανότητα.
'''Άγουστον '''ή''' Αλωνάρτς''', ο : Αύγουστος (πβ. Καλαντάρτς, Κούντουρον, Μάρτς, Απρίλτς, Καλομηνάς, Κερασινόν, Θερ'νός, Σταυρίτες, Τρυγομηνάς, Αεργίτες, Χριστιανάρτς).
'''αγρ<u>ά</u>νθρωπος''', ο: …
'''αγρασεύω''', ρ.: προσπαθώ (< τουρκ. uğraşmak).
'''αγρά<u>σ</u>κεμος, -ος, -ον''': κακάσχημος.
'''αγρέλαφον''', το : το άγριο ελάφι.
'''αγρηγορότε''', η: ταχύτητα, γρηγοράδα.
'''αγριοκοκκύμελον''', το: το άγριο δαμάσκηνο.
'''ο άγριον, η αγριέσα''' (ή και '''ο άγρες, άγρεν'''): ο άγριος.
'''αγριόγατεσα'''
'''αγριοχάπαρον''', το: η κακή είδηση (< ελλ. άγριος + τουρκ. haber)· '''ο αγροχάπαρος'''.
'''αγροικώ '''ή''' εγροικώ''', ρ. (εγροικούν, εγροίκανα, εγροίξα, εγροίξαν): καταλαβαίνω.
'''αγροκάστανον '''ή''' αγρ<u>ο</u>κάστανον''', το: η άγρια καστανιά και ο καρπός της.
'''αγροκέρασον, αγροκοκκύμελον, αγροκόσαρον, αγροκύδωνον'''
'''αγρ<u>ο</u>μούχτερον''', το: το αγριογούρουνο.
'''αγρόμηλον, αγροσεύτελον, αγροστάφυλον, αγρόσυκον'''
'''αγροτερώ''': αγριοκοιτάζω· '''αγροτέρεμαν''': αγριοκοίταγμα· '''αγροτερίδ’''': το σκιάχτρο.
'''αγρούμαι''': αγριεύομαι, φοβάμαι.
'''αγρούστιν '''ή''' αγρώστιν''', το: δέντρο του οποίου οι επιφανειακές ρίζες βρασμένες ήταν φάρμακο διουρητικό και λιθοτριπτικό.
'''άγρυπνος, -εσα'''
'''αγυναίκιστος''', ο: ανύπαντρος.
'''αδακά, αδά''', επίρ.: εδώ· '''αδακές''': προς τα δω· '''αδά μερέαν''': προς αυτήν τη μεριά· '''αδαπές''': εδώ μέσα· '''απόθεν''': από πού· '''απαδά, απαδάκα, απαδακές''': από εδώ· '''απαδαπές''': αποδώ μέσα.
'''αδελφόν''', ο: ο αδελφός· '''αδελφέσα''': αδερφή· '''αδελφοκόρ<u>τσ</u>α''': ξαδέλφες.
'''αδιάντροπεσα, αδιάφορεσα'''
'''αζούχ''', το: η τροφή για ταξίδι, για εργασία (< τουρκ. azık).
'''Αεργίτες''', ο: Νοέμβριος.
'''αετέντς, αετόν '''ή''' αϊτόν''', ο: αετός.
'''αέτς''', επίρ.: έτσι· '''αέτς πα''': και έτσι.
'''αθέωτα''', επιρ.: αλύπητα, άσπλαχνα.
'''αθόγαλαν''', το: το καϊμάκι.
'''άθρεφτεσα''', η: άθρεφτη.
'''αθώεσα'''
'''αΐκος, αΐκον''' (θυλ. και '''αΐκσα, αΐκα'''), αντ.: τέτοιος.
'''αιχμάλωτεσα, ακάθαρτεσα, άκακιεσα, ακάλεστεσα, ακάλυπτεσα, ακαμάτεσα, ακαπνεσα, άκαρδεσα, ακατάδεχτεσα'''
'''ακεί''', επίρ.: εκεί (επίσης '''ατουκά, ατουπές, ακειαπές, πλαν κεικά, ακέκα''').
'''ακίνδυνεσα, άκλαυτεσα'''
'''άκλερεσα''', η: καημένη.
'''άκληρεσα''', η: άκληρη.
'''ακλοθώ''', ρ.: ακολουθώ.
'''Ακ Νταγ Μαντέν''', το: Μεταλλείο Λευκού Όρους, περιοχή στο νοτιοδυτικό άκρο του Πόντου και η πρωτεύουσα της περιοχής < (τουρ) Ak Dağ Madeni.
'''ακόλαστεσα, άκοπεσα, ακριβέσα'''
'''άκ'σον, ακ'σέτεν''', ρ.: άκουσε, ακούστε (ακούω, έκ'σα, έκ'σαν, έκ'σεν α = το άκουσε).
'''άλειμμαν''', το: το ζωικό λίπος (< αλείφω)· '''αλειμματοκέριν'''.
'''αλευρομάλεζον''', το: η αλευρόσουπα.
'''αληθινέσα'''
'''άλλ΄''', οι: οι άλλοι· '''τους άλλτς''': τους άλλους.
'''αλλάζω''', ρ. (ελλάγα): αλλάζω· '''αλλάη''', η: η γιορτινή φορεσιά (< αλλαγή).
'''αλάι''', το: η παρέα, η παρέα του γαμπρού στο γάμο, μοίρα στρατού.
'''αλάπαλουκ''', το: η πέστροφα (< τουρκ. alabalık).
'''αλλέως''', επιρ.: αλλιώς, διαφορετικά.
'''αλλομίαν''', επιρ.: ξανά.
'''αλμεγάδιν''', το: το ζώο που αρμέγεται· '''αλμεγάδιν χτήνον''' ή '''χτήνον''': η αγελάδα.
'''αλμεχτέρ’''' το: ξύλινος κουβάς για το άρμεγμα των ζώων.
'''αλυκέσα'''
'''αμάν '''ή''' χαμάν''', επίρ.: αμέσως (< τουρκ. hemen).
'''αμελέ ταπουρού''', τα: τα γερμανικής έμπνευσης τάγματα εργασίας που χρησιμοποίησαν οι Τούρκοι για να εξοντώσουν τον ελληνικό πληθυσμό του Πόντου (< τουρκ. amele taburu).
'''αμάραντον '''ή''' μάραντον''', το : το βλήτο.
'''άμον''': σαν, όπως, καθώς.
'''αμπάρ’''', το: το αμπάρι, το κελάρι, η αποθήκη (< τουρκ. ambar).
'''αμπάς''', ο: το πανωφόρι, κάπα (< τουρκ. aba).
'''αμπελώνω''', ρ.: φυτεύω αμπέλι, κάνω παιδιά.
'''άμποτε''', επιφ.: μακάρι.
'''αναγνώριμος, -ος, -ον''': άγνωστος.
'''αναθυμεθή''', η: η ανάμνηση ή αναφορά απόντος προσώπου.
'''ανακατούμαι''', ρ.: ανακατώνομαι.
'''άναλεσα'''
'''αναλλαγάδιν''', το: πολυτελής ενδυμασία.
'''αναμένω''', ρ. (αναμνόν): περιμένω.
'''ανάντριστος''', η: ανύπαντρη γυναίκα.
'''ανάσκαμμαν''', το: η βρισιά σε νεκρό.
'''ανασπάλω''', ρ. (ανασπάλτς, ανασπάλ', ενέσπαλα): ξεχνώ.
'''άναυα''', πρόθ.: χωρίς, άνευ.
'''αναχάπαρα''', επιρ.: ξαφνικά.
'''ανεμικά''', τα (το ανεμικόν): οι ρευματισμοί.
'''ανεμοκαλίτζα '''ή''' ανεμοκαλή''', η: ο σίφουνας, ο ανεμοστρόβιλος.
'''ανέντροπος''', ο: ξεδιάντροπος.
'''ανέξερ'τα''', επίρ.: εν αγνοία.
'''ανεφέλ’''', το: ο καταρράκτης στο μάτι.
'''ανθρωπέα''', η: η ανθρωπίλα, η μυρωδιά του ανθρώπινου σώματος.
'''ανιφτοκάτα''', η (ο άνιφτος, η άνιφτεσα): ο άπλυτος, συνήθως αυτός που δεν πλένεται το πρωί.
'''ανοιγάρ’''', το (τα ανοιγάρ<u>α</u>): το κλειδί, (< ανοίγω, ένοιξα, ένοιξαν).
'''αντζίν''', το (τα αντζία): το πόδι από το γόνατο μέχρι τον αστράγαλο, η γάμπα.
'''αντίκαλον''', το: η ανταπόδοση.
'''αντιφέρκουμαι''', ρ.: εναντιώνομαι.
'''αντίχαρα '''ή''' αντίγαμος''': συμπόσιο στο σπίτι του γαμπρού ή της νύφης μία βδομάδα περίπου μετά το
γάμο (πβ. τ’εφτά, τα λαλέματα, τα συμπέθερα).
'''αντράδελφος''', ο (αντράλφος, ανατραδέλφ<u>α</u>): κουνιάδος.
'''αντράχνα''', η: αγριοκουμαριά, θάμνος· τα φύλλα του χρησιμοποιούνταν ως φάρμακο κατά της αιμόπτυσης και της αιματουρίας.
'''αντρίζω''' (έντρισα, αντρίζνε, άντρισον)
'''ανυπόμονεσα'''
'''ανωχαλία''', η: αδυναμία.
'''αξιναρίτζα''', η: ο τσαλαπετεινός.
'''αούτος '''ή''' αούτ', αούτε, αούτον''', αντ. (και ατός, ατέ, ατό, ατοίν, ατά· αβούτος,
αβούτε, αβούτεν, αβούτο, αβούτον, αβούτα, αβουτοίντς): αυτός, αυτή, αυτό.
'''απαλιμιδέα''', η: το ξαρμύρισμα.
'''απάν΄''', επίρ: επάνω (απάν’ ιμ: πάνω μου, απάν’ εσουν: πάνω σου, αποπάν’: από πάνω).
'''απανάρυμαν''', το: αραίωμα των φυτών ή φιντανιών στο χωράφι.
'''απαντή''', η: η συνάντηση στο δρόμο, η υποδοχή.
'''απανωδράνιν''', το: ράφι πάνω από το τζάκι.
'''απαρδάλ΄''', το: φόρεμα παρδαλό, φτηνό, οτιδήποτε είναι άξιο να καταστραφεί.
'''απαροθυμία '''ή''' απαραθυμία''', η: η απουσία νοσταλγίας για κάτι.
'''απέσ΄''', επίρ.: μέσα.
'''απιδ<u>α</u>βασέας''', τα: περάσματα βουνών (< απιδ<u>α</u>βαίνω, η απιδ<u>α</u>βασέα, επεδέβα).
'''απίδιν '''ή''' απίδ'''' , το: το αχλάδι· '''απιδοζώμ’''' ή '''απιδοζώμιν, απιδοτζίρ’''': ξεραμένο στον ήλιο ή στο φούρνο αχλάδι.
'''απιτάγματα''', τα : οι προσταγές.
'''απιταχτέρ’ '''ή''' επιταχτέρ’''', το: το παιδί για θελέηματα.
'''αποδελαχτέρ’ '''ή''' αποδ<u>α</u>λεχτήριν''', το: αραιή γυναικεία χτένα.
'''αποζαγκούμαι''', ρ. : ξεσκουριάζω.
'''αποκρίσκομαι''', ρ. : απαντώ.
'''απόκαμαν''', το: καούρες στο στομάχι, δυσπεψία.
'''αποκαμάρωμαν''', το: αφαίρεση του νυφικού πέπλου ('''καμαρωτέρ’''') από το κεφάλι της νύφης.
'''αποκόλλημαν''', το: απογαλακτισμός μωρού.
'''αποκουμπιστέρ’''' το: στήριγμα για ξεκούραση.
'''απολαδόστομος''', ο: βλάκας, μωρός (πβ. αγλάγανος).
'''απονεγκάσκουμαι''', ρ.: ξεκουράζομαι (πβ. αναπάουμαι).
'''απόνυφος''', η: νύφη που σύντομα χήρεψε ή εγκαταλείφθηκε (πβ. απόγαμπρος).
'''αποπλυμάτ’''', το: ξέπλυμα μαγειρικών σκευών.
'''απόρκισμαν''', το: ο εξορκισμός.
'''απο<u>σ</u>κευαρίζω''', ρ. (απο<u>σ</u>κευάρτσον): ετοιμάζω.
'''απο<u>σ</u>κευάριμαν''', το: μάζεμα των μαγειρικών σκευών μετά το γεύμα.
'''αποτενύ''', επιρ: στο εξής, από δω και πέρα (πβ. άλλο).
'''απόχαρα '''ή''' αποχαρά''', η: ματαίωση γάμου, απογοήτευση.
'''απόχασμα''', το: το χασμουρητό.
'''απράναν''', επίρ.: προ ολίγου.
'''αραεύω''', ρ. (εράεψα, αράεψον, εράευα): ψάχνω (< τουρκ. aramak).
'''αραμπά''', η: η άμαξα, το κάρο (< τουρκ. araba).
'''αραπίτζον''', ο: πήλινο μαγειρικό σκεύος μαύρο από τη χρήση.
'''αρατώρα''', επίρ.: τώρα δα (πβ. ατώρα).
'''αργαστέρ’''', το: το εργαστήρι.
'''αργατία''', η: ομάδα εργασίας 5, 10 ή 15 ανθρώπων.
'''αργεύω''', ρ. (έργευα): αργώ.
'''Αργυρούπολη''', η: πόλη του νομού Τραπεζούντας, τούρκικα Gümüşhane (Γκιουμου<u>σ</u>χανέ, Κιμισχανέ).
'''αργώς κι απαργώς''', επίρ.: εκτός χρόνου.
'''αρ καλά''', επίρ: καλά λοιπόν.
'''αρκάλειμμαν''', το: το λίπος αρκούδας (< άρκτος + αλείφω).
'''αρκατά<u>σ</u>α''', τα: φίλοι καλοί (< τουρκ. arkadaş).
'''αρκοκαλομάνα''', η: η γιαγιά της γιαγιάς (πβ. λυκοκαλομάνα: η μαμά της γιαγιάς, καλομάνα: η γιαγιά, αρκοπάππον, λυκοπάππον).
'''αρματώνω''',ρ. (ερμάτωσαν): στολίζω.
'''αρνίουμαι''', ρ.: αρνούμαι
'''αρνίτζα''', ή: είδος μανιταριού.
'''αροθυμώ''' ή '''αραθυμώ''', ρ. (αραθυμούνε, αραθυμίαν, εροθύμεσα, ερεθύμεσα): νοσταλγώ (πβ. αροθυμία).
'''αρρωστικόν''', το: φαγητό προσφερόμενο σε άρρωστο.
'''αρτούκ''', επίρ.: πια, δηλαδή (< τουρκ. artık).
'''ασηρόχαντος''' ή '''ασηράχαντος''', ο: ο σκαντζόχοιρος.
'''ασίχ''', το: παιδικό παιχνίδι, το κότσι.
'''ασκεμεσα'''
'''α<u>σ</u>λαεύω''', ρ.: μπολιάζω (< τουρκ. aşılamak).
'''ασσού''', σύνδ.: αφού.
'''ασπαλιγμένος''', ο: κλεισμένος.
'''άσπλαχνεσα'''
'''ασχανές''', ο: η κουζίνα, το μαγειρείο (< τουρκ. aşhane).
'''α<u>τσ</u>άλ'''΄, το: η μοίρα, ο θάνατος.
'''α<u>τσ</u>άπα''', επίρ.: άραγε (< τουρκ. acaba).
'''ατσιελέν''', το: το επείγον (< τουρκ. acele).
'''αφεντάδες''', οι: τα αρσενικά μέλη της οικογένειας για τη νύφη (πβ. ο αφέντης ή αφέντας ή αφέντς, αφεντράδες = κυράδες).
'''αφερούμ''', επίρ.: μπράβο (< τουρκ. aferin).
'''αφκά''', επίρ.: κάτω.
'''αφκατοκόσκινον''', το : κόσκινο για το στάρι.
'''αφορεσμένος''', ο (αφορεζμέντσα): καταραμένος.
'''αφ’σον''', ρ.: άφησε (αφήνω, εφήνα, εφέκα, εφέκαν, αφ’ς).
'''άφτω''', ρ. (έψα): ανάβω (άψιμον).
'''αχά''', επιφ.: να!· αχατοχάς: νάτος· αχατοχάδες.
'''άχαρος, -ος, -ον''': δυστυχής.
'''αχερών''', ο: αχυρώνας (το αχερώνιν, το αχερωνοκάλαθον).
'''αχούλ''', το: μυαλό (< τουρκ. akıl)· '''αχουλανεύω''': βάζω μυαλό· αχουλής, αχουλίσσα, αχουλίν.
'''αχπάνω''', ρ.: βγάζω, ξεριζώνω.
'''αχπάραγμαν''', το: ξαφνικός φόβος από δυνατό θόρυβο· αχπαράζω, αχπάγουμαι, αχπαραγμένος, αχπαράουνταν = τρομάζουν.
'''αχπάσκουμαι''', ρ. (αχπά<u>σ</u>κεσαι, αχπά<u>σ</u>κεται, αχπά<u>σ</u>κουμες, εχπάστα): ξεκινώ.
'''Β'''
'''βαδίζω''', ρ.: περπατώ . βαδίζ'νε.
'''βαθέα''', επίρ.: βαθιά / πβ. βαρέα.
'''βαθυβολίζω''', ρ.: σκέφτομαι βαθιά, λογικά.
'''βαΐτζα''', η: ψωμάκι που έδιναν οι νοικοκυρές στα παιδιά που έψαλλαν τα κάλαντα του Λαζάρου.
'''βαλά''', η: καλυμμα κεφαλής της νύφης.
'''βάλλω''', ρ.: βάζω / βάλον.
'''βαρελόπον''', το: βαρέλι μικρό / βαρέλ’ , τα βαρέλ<u>α</u>.
'''βαρκίζω''', ρ.: φωνάζω δυνατά / bαρκίζ'νε.
'''βασιέτ''', το: η τελευταία επιθυμία μελλοθάνατου, διαθήκη < (τουρ) vasiyet.
'''βασιλέας''', ο: βασιλιάς / βασιλοπούλιν, το: το βασιλόπουλο, η αλκυόνα.
'''βαχούτ'''', το: ο καιρός, η εποχή < (τουρ) vakit.
'''βεζίρτς''', ο: ο βεζίρης.
'''βελόνιν''', το: η βελόνα / βελόν' , τα βελόν<u>α</u>.
'''βεντούζας''', τα: οι βεντούζες.
'''βερεσμέντσα''', η: η έγκυος /η έμποδος.
'''βερκιλής, βερκιλίν''': παραγωγικός, εύφορος < (τουρ) verkili.
'''βιλαέτ'''', το: διοικητική περιφέρεια του Οθωμανικού Κράτους < (τουρ) vilayet.
'''βιντόφκας''', τα: τα σχοινιά.
'''βλαττία''', τα: μεταξωτά και μάλλινα υφάσματα από την Τραπεζούντα κόκκινου χρώματος / το βλαττίν.
'''βόζια''', τα: τα ηνία του αλόγου.
'''βολετινός''', -ος, -όν: βολικός.
'''βολίζω''', ρ.: βουλιάζω / βουλίζω, βουλίουμαι.
'''βουδ'''', το: το βόδι / τα βούδ<u>α</u>, η βουρκέντ' = βουκέντρα, το βούτορον, τα βουτούρτα = βούτυρα.
'''βούκα''',η: η μπουκιά / βουκώνω .
'''βούρα''', η: η χούφτα / τα βούρας.
'''βουτυροχάρατσον''', το: φαγητό με βούτυρο και κρεμμύδι.
'''βραδ<u>ά</u>σκουμαι''', ρ.: βραδιάζομαι.
'''βραδή''', η: το βράδυ, η βραδιά / βράδον = βράδυ, τα βράδ<u>α</u> τα βράδια.
'''βρε<u>χ</u>ή''', η: η βροχή / τα βρε<u>χ</u>ία, βρε<u>χ</u>' = βρέχει.
'''βρακίν''', το: το βρακί / τα βρακία = σώβρακα.
'''βρασόλ'''', το: βραχιόλι / τα βρασόλ<u>α</u>.
'''βρούλα''', η: η φλόγα.
'''Γ'''
'''γαβάλ'''', το: η φλογέρα, ο αυλός < (τουρ) kaval / τα γαβάλ<u>α</u>.
'''γαβάνας''', τα: ξύλινα κυκλικά η ελλειπτικά δοχεία για τη διατήρηση του βούτυρου / η γαβάνα.
'''γάβζ''', το: η δυσκοιλιότητα < (τουρ) kabız.
'''γαβούν'''', το: το πεπόνι, τα γαβούν<u>α</u> < (τουρ) kavun / καβούν'.
'''γαβράνα''', η: η κυψέλη /το γουβάν' < (τουρ) kovan.
'''γαζανέβω''', ρ.: κερδίζω < (τουρ) kazanmak / γαζανέβ'νε.
'''γαϊδούρ'''', το: το γαϊδούρι / τα γαϊδούρ<u>α</u>, το γαϊδούριν.
'''γάλ<u>α</u> - γάλ<u>α</u>''', επίρ.: σιγά - σιγά
'''γαλατομάλεζον''', το: κρεμώδες φαγητό με γάλα, αλεύρι και βούτυρο.
'''γαλατοσύρβ'''',το: σούπα με γάλα και κορκότα / γαλοσίρβ'.
'''γαλατοφάι''', το: κρεμώδες φαγητό με γάλα και καλαμποκίσιο αλεύρι.
'''γαλατοχάβιτσον''', το: κρεμώδες φαγητό με ανθόγαλα, αλεύρι και γιαούρτι.
'''γαλενός''', ο: ήρεμος, γαλήνιος /γαλενά.
'''γαλιτσόσ'''', το: φαγητό με τσορτάνια, βούτυρο και κρεμμύδι.
'''γαμοκέρ<u>α</u>''', τα: κεριά που στέλνονταν σε συγγενείς κατά το γάμο / ο γάμον, τα γάμ'τα.
'''γαμόστολος''', ο: η γαμήλια πομπή.
'''γαμπροκάλεσμαν''', το: η πρόσκληση για γλέντι στο γαμπρό και τους συγγενείς του από τους συγγενείς της νύφης.
'''γαμπροκούρ΄''', το: χοντρό κούτσουρο που έπρεπε να σχίσει ο γαμπρός πριν από το γάμο / γαμπροκούριν.
'''γαμπρολάλ<u>α</u>''', τα: η επίσκεψη του υποψήφιου γαμπρού στο σπίτι της νύφης μετά από πρόσκληση.
'''γαμπροφούστορον''', το: αβγά τηγανητά με βούτυρο που έπρεπε να πληρώσει για να φάει ο γαμπρός με τον κουμπάρο πριν μπουν στο σπίτι της νύφης.
'''γαντάρ'''', το: το καντάρι, η ζυγαριά / το καντάρ', τα γαντάρ<u>α</u>,
'''γαπατεύω ή καπατεύω''', ρ: κλείνω < (τουρ) kapatmak.
'''γαραλαΐσματα''', τα: δυνατές γοερές κραυγές πόνου και τρόμου / το γραραλάισμαν, γαραλαΐζω.
'''γάραμσον''', το: ο μαϊντανός / γάραμψον.
'''γαράσαπαν''', το: είδος ξύλινου αρότρου με σιδερένιο υνί < (τουρ) karasaban.
'''γαργάν''', το: χορός του Ακ Νταγ Μαντέν.
'''γαρή''', η : η γυναίκα, η σύζυγος < (τουρ) karı / γαρήδες, γαρηδίων, καρή, γαρή μ' = γυναίκα μου
γαρή σ' = γυναίκα σου, γαρή ατ'.
'''γαρσουλαεύω''', ρ.: συγκρίνω < (τουρ) karşılaştırmak.
'''γελέκ'''', το: το γιλέκ’ < (τουρ) yelek / γιλάκ' , γελάκ'.
'''γέλος''', το: γέλιο /γέλτον = γέλιο, τα γέλ’τα, εγέλανα.
'''γεμενία''', τα: χαμηλά χωρίς τακούνι αντρικά παπούτσια από δέρμα κατσίκας.
'''γεμί<u>σα</u>''', τα: φρούτα, καρποί.
'''γεννίουμαι''', ρ.: γεννιέμαι / εγεννέθα, εγεννέθαν.
'''γερά''', η: η πληγή < (τουρ) yara / τα γεράδες, οι γεραλαεμέν'.
'''γερανόφορος''', η: ντυμένη με σκούρα ρούχα μεσόκοπη γυναίκα / γερανέεν = γαλάζιο.
'''γεργανόπον''', το: το παπλωματάκι < (τουρ) yorgan / το γιοργάν, τα γιοργάν<u>α</u>.
'''γερντάν<u>α</u>''', τα: το περιδέραιο < (τουρ) gerdan = λαιμός /το γερντάνιν / το γκερντανλούκ.
'''γιαγλία''', τα: πίτες σε σχήμα βάρκας γεμισμένες με διάφορα υλικά, τυρί, κιμά, αυγά και ψημένες στο φούρνο < (τουρ) yağ = λίπος / το γιαγλίν.
'''γιαγμουρλία''', τα: τα αδιάβροχα < (τουρ) yağmur = βροχή / το γιαγμουρλoύκ.
'''γιαϊλά''', η: ορεινός εξοχικός τόπος, το παρχάρ' < (τουρ) yayla.
'''γιαμ''', σύν.: μήπως / γιόκσα, γιοκ = όχι, για ... για + ή ... ή < (τουρ) ya ... ya.
'''γιαραεύω''', ρ.: χρησιμεύω < (τουρ) yarama,yaramaz.
'''γιαρούσ'''' , το: ο συναγωνισμ'ος, η άμιλλα < (τουρ) yarış.
'''γιασμάς''', ο: χρωματιστό μαντίλι που τύλιγαν γύρω από το φέσι < (τουρ) yaşmak / ή γιαζμά.
'''γιατάκ’''', το: το κρεβάτι, το στρώμα < (τουρ) yatak.
'''για το ποίον''': γιατί, για ποιο λόγο / για τ’ ατό, για τ’εμέν, για τ’εσ’εν, για τ’ατείντζ.
'''γιαχνίν''', το: φαγητό με κρέας, πατάτες, κρεμμύδια, σάλτσα.
'''γιαχού''', το: έμπλαστρο < (τουρ) yakı.
'''γιοντζά''', η: το τριφύλλι < (τουρ) yonca.
'''γιοσμάς''', ο: κομψός νέος / το γιοσμαλίκιν, γιοσμαλούκ', η γιοσμάσα.
'''γιουμουρταλία''', τα: πίτες με αυγά < yumurta = αυγό.
'''γιούρτιν''', το: βοσκότοπος σε κατηφορική πλαγιά βουνού.
'''γιουφκάδες''', τα: λεπτά φύλλα από ζύμη ψημένα στο σάτσι < yufka.
'''γκιομλέκι''', το: το πουκάμισο < (τουρ) gömlek.
'''γλιάζω''', ρ.: γλιστρώ / γλιάζ'νε, εγλίαξα = γλίστρισα, εγλίαξαν.
'''γλυκοκαλά<u>τζ</u>εμαν''', το: η γλυκιά ομιλία.
'''γλύνω''', ρ.: λειώνω
'''γναφίν''', το: η γνάθος, το σαγόνι / τα γναφία = το πρόσωπο.
'''γνεφίζω''', ρ.: ξυπνώ / γνεφίζ'νε, εγνέφ'σα, εγνέφ'σαν.
'''γνωρίζω''', ρ.: εγνώρτσα, εγνώρτσαν.
'''γοϊμ<u>σ</u>ής'''. ο: o χρυσοχόος < (τουρ) kuyumcu / κοϊμ<u>τζ</u>ής, κουιμ<u>τζ</u>ής.
'''γολτούκ'''', το: η μασχάλη < (τουρ) koltuk / κολτούκ'.
'''γομάρ'''', το: το φορτίο / γομάριν, σελέκ', σαλάκ'.
'''γομώνω''', ρ.: γεμίζω / εγόμωσα, εγόμωσαν.
'''γονάχ'''' , το: το αρχοντικό, το παλάτι < (τουρ) konak / το κονάκ', το κονάκιν, γονεύω = μένω, διανυκτερεύω.
'''γονουσεύω''', ρ.: μιλώ, συζητώ < (τουρ) konuşmak / γονουσέματα.
'''γορό<u>σα</u>''', τα: τα γρόσια, (τουρ) kuruş.
'''γοτζαμάνος''', ο: ο γέρος, ο σύζυγος < (τουρ) kocaman / κοτζαμάνος.
'''γουεύω''', ρ.: λυπάμαι / εγούεψα.
'''γουζέβω''', ρ.: θυμώνω < (τουρ) küsmek / γουζέβ'νε, γουζεμένος = θυμωμένος, γουζεμέντσα, εγούζεψα,
εγούζεψαν.
'''γούλα''', η: ο λαιμός / τα γούλας = αμυγδαλίτιδα, το γουλά<u>σ</u>' = διφθερίτιδα, γουλέας, γουλαρία, ση γούλα σ' ερούξεν; η γούλα τ' εγομώθεν = βούρκωσε.
'''γουή''', η: η όχθη, η παραλία / το κουίν = πηγάδι, υπόγειο, το γουβίν.
'''γουρεύω''', ρ.: στήνω, αρχίζω < (τουρ) kurmak.
'''γουρζουλάς''', ο: η πανούκλα, ο διάβολος.
'''γουρνούμαι''', ρ.: ουρλιάζω / το γούρνιαγμαν.
'''γουρου<u>τζ</u>ής''', ο: αγροφύλακας < (τουρ) korucu.
'''γουρουχ<u>τζ</u>ής''', ο: πρακτικός γιατρός για κατάγματα < (τουρ) kırık.
'''γουρπάν''', το: η θυσία < (τουρ) kurban / γουρπάν να ίνουμαι.
'''γουρταρεύω''', ρ.: σ΄ψζω < (τουρ) < kurtarmak / το γουρτάρεμαν, εγουταρέφτα, εγουταρέφταν.
'''γραίας τηγάν'''', το: ομελέτα με καλαμποκίσιο αλεύρι, αυγά και βούτυρο / γραία, γραιάδες.
'''γραμματισμέν'''', οι: οι μορφωμένοι, ο γραμματισμένον, η γραμματισμέντσα.
'''γρίζεμαν''', το: εκχέρσωση χέρσου εδάφους.
'''γριζομάκελον''', το: μεγάλη τσάπα για βαθύ σκάψιμο.
'''γυναικίζω'''
'''γυροκλώσκουμαι''', ρ.: τριγυρνώ.
'''Δ'''
'''δ<u>α</u>βαίνω''', ρ.: περνώ, διαβαίνω / δέβα, δεβάτεν, εδέβηνα, εδέβα, εδέβασες ατό κα, αποδ<u>α</u>βαίνω, επεδέβα.
'''δ<u>ά</u>βολον''', ο: ο διάβολος / τη δ<u>α</u>βόλ' η κάλτσα, δ<u>α</u>βολσύνε.
'''δάκλυμαν''', το: ο καθαρισμός, ο εξαγνισμός.
'''δακρ'''', το: το, / δάκρυ, τα δάκρ<u>α</u>.
'''δάκω''', ρ.: δαγκώνω / δάκ'νε, δάκσον = δάγκωσε.
'''δάνος''', το: ο δανεισμός πραγμάτων.
'''δ<u>α</u>ρμηνεία''', η: η συμβουλή.
'''δ<u>α</u>σκάλτσα''', η: δασκάλα / οι δ<u>α</u>σκάλ', ο δ<u>α</u>σκαλον.
'''δ<u>α</u><u>σκ</u>εύω''', ρ.: συμβουλεύω.
'''δ<u>α</u>τάζω''', ρ.: διατάζω / δ<u>α</u>ταγή, δ<u>α</u>τάχκουμαι, εδ<u>α</u>τάχτα.
'''δαυκίν''', το: το καρότο.
'''δέβα''', ρ. : πήγαινε / δεβάτεν, το δέβα και έλα.
'''δέ<u>ζ</u>'μ΄''', το: ο δυόσμος / τα δεζ'μα.
'''δεικνύζω''', ρ.: δείχνω / δειξίζω, εδέκνιζα, εδέκνισα = έδειξα.
'''δειλ<u>α</u>σμένα''', επιρ.: δειλά.
'''δελιάουμαι''',ρ.: μπερδεύομαι.
'''δείσα''', η: η ομίχλη.
'''δελ<u>ά</u>ζω''', ρ.: μπερδεύω, εμπλέκω / εδελίασα.
'''δεμέσια''', τα: χορτόπιτες / το δεμέσιν.
'''δε<u>ξ</u>ά''', επίρ.: δεξιά.
'''δεξάμενος''', ο: ο νουνός / δεξαμέντσα, σύντεκνος, συντέκν'σα, το δεξιμάτ', η δεξιματέα = βαφτιστικιά.
'''δερνοκοπίουμαι''', ρ.: θρηνώ, ολοφύρομαι.
'''δέχκουμαι''', ρ.: δέχομαι / εδέχτα.
'''διαβολολάγηνον''', το: το σταμνί με τη μαγιά για το τυρί.
'''διβώλισμα''', το: το όργωμα του χωραφιού για δεύτερη φορά.
'''δίγω''', ρ.: δίνω / δίεις ή δι'ς, δίγει ή δι, δίγ'νε, δίν'νε, εδώκα ή εδέκα, εδέκαν, δος, δι και παιρ'.
'''διδυμάρ<u>α</u>''', τα: τα δίδυμα.
'''δίκαια''', τα: τα δώρα που έστελνε την παραμονή του γάμου ο γαμπρός στη νύφη.
'''δικούριν''', το: το μαλλί του προβάτου που κουρεύεται για δεύτερη φορά.
'''δικράνιν''', το: ξύλινο εργαλείο σε σχήμα διχάλας για τη φόρτωση του σανού.
'''δίλαβον''', το: καζάνι μεγάλο με δύο λαβές / δίλαβον χαλκόν.
'''δι<u>χ</u>ερέα''', η: ποσότητα υλικών που χωράει στις δύο παλάμες / το διχέριν.
'''δίχωτα ή δίχουτα''', επίρ.: με δυο γνώμες.
'''διώχω''', ρ.: διώχνω / διώεις, διώ<u>χ</u>'.
'''δό<u>σα</u>''', τα: η προίκα.
'''δουρβάν'''', το: ξύλινο εργαλείο σε σχήμα βαρελιού για το κτύπημα του γάλακτος και την παραγωγή του βουτύρου / δρουβάν', ξυλλάγγ', δουρβανίζω.
'''δουλεία''', η: η δουλεία / δουλόπον.
'''δρανίν''', το: ράφι σε τοίχο του σπιτιού.
'''δώμαν''', το: οριζόντια από χώμα στέγη οικίας.
'''δώρημαν''', το: το δώρο / δωρόπον.
'''Ε'''
'''έβγα''', η: η έξοδος / εβγαίνω, εβγώνω, εβγών'νε ή εξέβα, έβγα, εβγάτεν,εβγάλω, εβγάλ'νε.
'''εβόρα''', η: η σκιά
'''εβριστόν''', το: ζυμαρικό του Πόντου προψημένο, ξερόν μακαρίνα / το ιβριστον.
'''εγάπ'''', η: η αγάπη / εγάπανα, εγάπαναν, εγάπεσα, εγάπεσαν.
'''έγκα, έγκες, έγκε''', ρ.: έφερα, έφερες, έφερε / φέρω.
'''εγκλεσία''', η: η εκκλησία / τα εγκλεσίας.
'''εγνωρίζω''', ρ.: γνωρίζω / γνωρίζω, εγνώρτσα = γνώρισα, εγνώρτσαν.
'''εθαρρώ''', ρ.: θαρρώ, νομίζω / εθαρρούν, εθάρνα, εθάρναν.
'''έικιτι''', επιφ.: επιφώνημα νοσταλγίας.
'''εκανέθεν''', ρ.: φτάνει / κανείται.
'''εκειαπέσ''''. επίρ.: εκεί μέσα / εκεπά = εκεί πέρα, εκέκα = εκεί, εκές = προς τα κει, επεκεί = αποκεί,κατόπιν.
'''έκλωσεν''', ρ.: γύρισε, επέστρεψε / κλώσκουμαι, εκλώστεν, κλώστ', κλωστός, άκλωστος .
'''εκόμπωσεν''', ρ.: ξεγέλασε / κομπώνω.
'''εκούξεν''', ρ.: φώναξε / κουίζω.
'''έλα''', η: ο ερχομός, η επίσκεψη.
'''ελέπω''', ρ.: βλέπω / ελεπ'ς, ελέπ', έλεπα, έλεπον = δες.
'''Έλλενος ή Έλλενας''', ο: ο Έλληνας / ελλενικός.
Εκαμώθα :προσποιήθικα
'''έμνοστος, -ος, -ον''': νόστιμος, έμνοστα.
'''έμορφος, έμορφεσα, έμορφον''': όμορφος / έμορφα.
'''εμπαίνω, ρ.'''. : μπαίνω / εμπαίντ'ς, η έμπα, εσέβα, έμπα, εμπάτεν.
'''εμποδέα''', η: γυναικεία, συνήθως ριγωτή, ποδιά μακριά μέχρι τους αστραγάλους.
'''έμποδος''', η: η έγκυος / η δίψυχος.
'''έμπρ<u>α</u>''', επίρ.: μπροστά / έμπρ<u>α</u> μουν, έμπλ<u>α</u> σουν, εμπρικέσ’.
'''εμπροκάρδ<u>α</u>''', τα: το στήθος της γυναίκας.
'''εμπρομαμή''', η: η βοηθός της μαμής.
'''εμπροστάλιν''', το: στηθόπανο, ένδυμα που φοριόταν πάνω από τα στήθη.
'''εμπροστία''', η: ο σιδερένιος τρίποδας στο τζάκι για βράσιμο νερού.
'''έμπρουμεραν''', επίρ.: προχθές.
'''εναύλια''', τα: χωράφια που είναι κοντά στο χωριό.
'''ενεμείνα''', ρ.: περίμενα / αναμένω.
'''ένοικον''', το: το σπίτι, η κατοικία.
'''ενούντσεν''', ρ.: σκέφτηκε / νουνίζω.
'''εντάμαν''', επίρ.: μαζί.
'''εντρανώ''', ρ.: φροντίζω.
'''εντώκα''', ρ.: κτύπησα / κρούω.
'''εξαγούρεμαν''', το: η εξομολόγηση / εξαβούρεμαν.
'''εξαπέ<u>σ</u><u>α</u>''', επίρ.: αλλοπρόσαλλα.
'''έξεργος''', η: γιορτή, αργία
'''εξέρω''', ρ.: ξέρω, γνωρίζω / εξέρτ'ς, έξερον = να ξέρεις.
'''εξηγίζω''', ρ.: εξηγώ / εξηγί'εις.
'''εξωπότιν''', το: το τελευταίο ποτήρι του ποτού.
'''εξώρας''', επίρ.: αργά.
'''εξωτέρα''', η: το πολιτικό δικαστήριο.
'''επ' αληθείας''', επίρ.: στ' αλήθεια.
'''έπαρ'''', ρ.: πάρε / παίρω, παίρνω.
'''επεβγάλω''', ρ.: ξεπληρώνω.
'''επεΐ''', επίρ.: αρκετά < (τουρ) epeyce.
'''επεκεί''', επίρ.: έπειτα.
'''εποίκες''', ρ.: έκανες / εφτάω, εποίν'να, εποίκα, ντ' έποικες.
'''επλώθεν''', ρ.: απλώθηκε / απλούμαι.
'''επορώ''', ρ.: μπορώ / επόρνα, επόρναν.
'''έργανον''', το: όργανο.
'''έργατα''', τα: έργα
'''ερέχκουμαι''', ρ.: μου αρέσει / ορέχκουμαι, ερέχτα.
'''εριάζω''',η οριάζω ρ.: φυλάω / εριάζ'νε, ερίαζα, ερίαζαν, ερίαξα, ερίαξαν, ερία = πρόσεξε, ερίαμαν = σκοπιά, βάζω όρια.
'''εριστέας''',ο : ο εριστικός.
'''έρχουμαι''', ρ.: έρχομαι / έρται, έρτα ή έρθα.
'''ερωτώ''', ρ.: ρωτάω / ερώτανα, ερώταναν, ερώτεσα, ερώτεσαν ερωτέθα, ερωτέθαν.
'''ε<u>σ</u>ά<u>σ</u>εψεν''', ρ.: σαστίζω < (τουρ) şaşırmak / <u>σ</u>α<u>σ</u>εύω.
'''εσγάρα''', η: η σχάρα.
'''εστά''', ρ. : στάσου / εσταθέστεν.
'''εσχωρώ''', ρ.: συγχωρώ.
'''ετοιμάγουμαι''', ρ.: ετοιμάζομαι / ετοιμαέστεν.
'''ετότες''', επίρ.: τότε.
'''ευκαιρώνω''', ρ.: αδειάζω / ευκαιρών'νε, ευκαίρωσα, ευκαιρώθεν, εύκαιρος = άδειος, απρόσεκτος, επιπόλαιος, η εύκαιρεσα = η άδεια.
'''ευκούμαι''', ρ.: εύχομαι.
'''ευρεμάτ'''', το: κάτι χαμένο που βρέθηκε / το ευρεμάτιν, ευρήκω, ευρίουμαι, εύρηκον = βρες.
'''ευρίσκω''', ρ.: βρίσκω / ευρίκω, ευρίκ'νε, εύρα, εύραν, ευρίουμαι,ευρίουνταν .
'''ετέκ’''', το: η φούστα < (τουρ) etek / ετέκιν.
'''εφέκα''', ρ.: άφησα / αφήνω, εφήνα.
'''εφέρθα''', ρ.: συμπεριφέρθηκα / φέρκουμαι.
'''εφτάω''', ρ.: κάνω / εφτάγω, εφτάς, ευτάει, εποίκα.
'''εφτάνω''', ρ.: φθάνω / εφτάνε = φθάνουν.
'''εχάθα''', ρ.: χάθηκα / χάμαι = χάνομαι.
'''ε<u>χ</u>ετεία''', η: η περιουσία.
'''εχολομανίγα''', ρ.: νευρίασα / χολομανίουμαι.
'''εχπούλ''', το: το μικρό πουλί που βγαίνει από το αυγό / το πιλίτζ’, το πιλιτζιν.
'''εχτήθα''', επίρ.: από στήθους, παπαγαλία.
'''έχω, έεις, ε<u>σ</u>'''', ρ.: έχω, έχεις, έχει / έχνε.
'''Ζ '''
'''ζα''', τα: τα ζώα.
'''ζαγάρ'''', το: το ζαγάρι.
'''ζαγκότσον''', ο: ο καντηλανάφτης / ζαγκότζ’.
'''ζαγκώνω''', ρ.: σκουριάζω / ζαγκωμένος.
'''ζαέρ''', επίρ.: πιθανώς. ίσως.
'''ζαλίουμαι''', ρ.: ζαλίζομαι / ζαλίγουμαι, εζαλίγα = ζαλίστηκα, εζαλίγαν.
'''ζαμάν''', το: ο καιρός, διάστημα < (τουρ) zaman / έναν καιρόν κι έναν ζαμάν.
'''ζαντός,''' ο: ο τρελός / παλαλός, ζαντίνω, εζάντινα = τρελάθηκα, εζάντιναν, ζαντέ = τρελέ, η ζάντενα = τρελή, η ζαντέσα = τρελή, τα ζαντίας = τρέλες.
'''ζαρούδ<u>α</u>''', τα: οι ζάρες / το ζαρούδιν.
'''ζατί''', επιρ.: εξάλλου < (τουρ) zaten / ζατίμ.
'''ζελεύω''', ρ.: ζηλεύω.
'''ζεμία''', η: η ζημία.
'''ζενγκίν''',ο: ο πλούσιος < (τουρ)zengin .
'''ζεπίρες''', οι: τα κουνάβια / η ζεπίρα.
'''ζερταλίδιν''', το: το βερίκοκο.
'''ζίλ’''', το: η ψιλή φωνή της λύρας.
'''ζιντζίρ<u>α</u>''', τα: οι αλυσίδες < (τουρ) zincir = αλυσίδα.
'''ζίπκα''', η: παντελόνι αντρικό μέχρι τους αστραγάλους, χωρίς άνοιγμα μπροστά, με ζώνη.
'''ζιπούνα''', η: σταυρωτό πουκάμισο για τους άνδρες, για τις γυναικες το μακρύ μέχρι τους αστραγάλους ριχτό με φαρδιά μανίκια φόρεμα / ζουπούνα.
'''ζογούδ’''', το: η πυκνή χλόη του βουνού.
'''ζουρνά''', η: ο ζουρνάς, οξύαυλος.
'''ζύμωτρον''', το: σκάφη για ζύμωμα / το ζυμαρομάντιλο, ο ζυμοστάτες, ζουμάρ', ζουμώνω = ζυμώνω,
ζουμών'νε.
'''ζωνάρ’ τη Παναγίας''': το ουράνιο τόξο.
'''Η'''
'''ηβορίζω''', ρ.: λιχνίζω / ηβορίζ'νε, ηβόρριζα, ηβορρίζω, ηβορρίουμαι, ηβόρτσα, το ηβόρισμαν, ιβορίζ'νε, ιβορίζω, ιβόρισμαν.
'''ηλάζω''', ρ.: γαβγίζω / ηλάζ'νε, ήλαζα, ήλαζαν, ήλαξα, ήλαξαν, ήλαξον = γάβγισε.
'''ηλάσκουμαι''', ρ.: ηλιάζομαι / ηλάστα = ηλιάστηκα.
'''ηλέπορον''', το: το εύηλιο μέρος, το λιακωτό.
'''ήλ<u>ο</u>ν''', ο: ο ήλιος / ήλöς, ήλες, ηλοξάψιμον = λιοπύρι, ηλοχάραγμαν = ανατολή ήλιου.
'''ηλιόπαρμαν''' ή ηλέπαρμαν, το: η ανατολή του ήλιου.
'''ηλ<u>ό</u>βρε<u>χ</u>η''', η: η βροχή με ήλιο.
'''ηλ<u>ο</u>κόρασον''', το: κορίτσι πολύ όμορφο.
'''ημερκόν''', το: το μεροκάματο / ημερομίστιν.
'''ήμπαν''', επίρ.: όπου / ήμποι = όποιοι, ήμποιεσα = όποια, ήμποιος = όποιος.
'''ημ'σός, ημ'σή''', επίθ.: ο μισός / ημ'σοί, ημ'σά, ημ'σόν.
'''ήντ<u>α</u>ν''', αντων.: οτιδήποτε / ήντιναν = όποιον, όποιαν, ήντιαν = ότι, ήντιν' = όποιοι, ήντινος = όποιου.
'''ήντζαν''', αντων.: όποιος / ήντζ', ήντσαν, ήμποιος.
'''ήπαρη''', η: το συκώτι, ο αφαλός.
'''ησυχίζω''', ρ.: ησυχάζω / η ησύχαση, η ησυχασία, ηήσυχεσα = ήσυχη.
'''Θ'''
'''θαλασσάκρα''', τα: η ακρογιαλιά / το θαλασσάκριν, θαλασσέα = θαλάσσια αύρα, θαλασσομάνα = μέδουσα, τσούχτρα, θαλασσοπούλ', το θαλάσσωμα = τρικυμία.
'''θαμαστός''', επίθ.: θαυμαστός, παράξενος / η θαμαστέσα, το θάμαν, το θάμαγμαν = θαυμασμός, θαμάζω, η θαμαντουρία = μεγάλο θαύμα, το θάμασμαν.
'''θανατίτζα''', η: το κακό σπυρί,το εξάνθημα άνθρακας / θανατέα = ετοιμοθάνατος, θανατίτα = πικρόχορτο, θανέσα, η: το μετά την κηδεία γεύμα.
'''θάφτω''', ρ.: θάβω / θάφκουμαι, θάψον.
'''θεκάριν''', το: η θήκη / θεκάρ'.
'''θέκω''', ρ.: βάζω, θέτω / θέκ'ς, θεκ'.
'''θέκλα''', η: κουτσομπόλα / θεκλεύκουμαι, ο θεκλέας = χαϊδεμένος, η θεκλού, η θεκλεία = χάιδεμα.
'''θελκός''', ο: θηλυκός / θελκέσα.
'''θέλω''', ρ.: θέλω / θελτς, θέλ'νε, εθέλ'να, θέλ'μαν,θέλσιμον, θελ'ματάρτς.
'''θεμέλ' ή τεμέλ''', το: το θεμέλιο.
'''θεοτικός''', ο: θεοσεβής / θεοτικέσα, θεόφοβος, θεοξύριστος = σπανός, θεοπάλαλος.
'''Θερ'νός''' ή θερ'νόν ή χορτοθέρτς, ο: ο Ιούλιος.
'''θέρωτρα''', τα: τα προγαμιαία δώρα του γαμπρού στη νύφη.
'''θημίζω''', ρ: λέω τα κάλαντα, χορεύω το γαμήλιο χορό / το θήμισμαν, το θημιστόν = ειδικός γαμήλιος χορός.
''''θόγαλα''', το: αθόγαλα, ανθόγαλα, καϊμάκι του γάλακτος / 'θογαλοχάβιτσον, θογαλίζω = χωρίζω το ανθόγαλο, θογαλότανον = αριάνι.
'''θρέφω''', ρ: τρέφω / θρέβω, θρέφτω, θρέφκομαι, θροφή.
'''θρυμούλιν''', το: ψίχουλο από ψωμί / θρυμμουλίζω, θρουμούλ', θρουμουλίζω, θρουμούλιν.
'''θύμαρη''', η: το θυμάρι / θομάριν, θομάρ', θομαρέα = μυρωδιά θυμαριού.
'''θυμίαμαν''', το: θυμίαμα, λιβάνι / θυμίωμαν, θυμιαματέα = μυρουδιά θυμιάματος, θυμιαντόν = λιβανιστήρι.
'''θυμούμαι''', ρ.: θυμάμαι / εθυμέθα, εθυμέθαν.
'''θωρέα''', η: όψη, εμφάνιση / θεωρητικός = παρουσιαστικός, θεωρητικέσσα.
'''Ι'''
'''ιβριστόν''', το: ζυμαρικό του Πόντου προψημένο/ εβριστόν.
'''ιγδίν''', το: γουδί.
'''ιγεύω''', ρ.: ταιριάζω <(τουρ) uydurmak / ιεύω, ίεμαν = ταίριασμα, ίεψα.
'''ίδρος''', ο: ιδρώτας / ιδροκοπώ, ιδρωματέα = μυρωδιά ιδρώτα, ιδροφτείρα = ψείρα από ιδρώτα, ίρδος, ιρδώνω, ίρδωνα, ίρδωσα.
'''ιθάκιν''', το: ο μαστός της αγελάδας.
'''ίλ<u>α</u>''', επίρ.: ιδίως, προπαντός / ίλ<u>α</u>μ.
'''ιλοίφιν''', το: πάνινη μικρή σακούλα για λούσιμο με το σαπούνι.
'''ιμαρέτ''', το: φιλανθρωπικό ίδρυμα, πτωχοκομείο < (τουρ) imaret.
'''ιμπρίκ''', το: το μπρίκι, < (τουρ) ibrik.
'''ινανεύω''', ρ.: πιστεύω, εμπιστεύομαι < (τουρ )inammak, ινάνευα, ινάνεψα, το ινάνεμα = πίστη, ινανμάζης = αμετάπειστος, ινανμάζαινα, ινανμάζ.
'''ι<u>şτ</u>έ''', επιφ.: να, ορίστε, δηλαδή < (τουρ) işte.
'''ίστονιν''', το: αντρικό εσώρουχο / ισλίκ.
'''ιστορίζω''', ρ.: αφηγούμαι, διηγούμαι.
'''Κ'''
'''καβάκια''', τα: οι λεύκες < (τουρ) kavak / το καβάκιν.
'''καβαλάρτς''', ο: καβαλάρης, ο ιππέας / η καβαλαρέα.
'''καβουρμάδες''', τα: κομμάτια από κρέας που τσιγαρισμένα με λίπος τα διατηρούσαν όλο το χειμώνα < (τουρ) kavurma / η καβουρμά, γαβουρμά / καβουρεύω = τηγανίζω.
'''καγάν’''', το: δρεπάνι με κοντή ξύλινη λαβή.
'''κάζ'''', το: η χήνα < (τουρ) kaz.
'''καζανεύω''', ρ.: κερδίζω < (τουρ) kazanmak.
'''καθαροψώμ'''',το: το ψωμί από σκέτο σιτάρι.
'''κάθκα''', ρ.: κάθισε / καθκά, καθέστεν.
'''καϊ<u>σ</u>'''', το: η ζώνη < (τουρ) kayiş / γαϊ<u>σ</u>'..
'''κακόσυρτος''', επιθ.: δύστροπος
'''κακοφέρκουμαι''', ρ. συμπεριφέρομαι άσχημα / εκακοφέρθα.
'''κακοχάπαρος''', επίθ.: εκείνος που φέρνει κακές ειδήσεις.
'''καλαμόπον''', το: το καλαμάκι.
'''Καλαντάρτς''', ο: ο Ιανουάριος / καλαντοκούρ', καλαντόνερον, Καλαντόφωτα.
'''καλαπαλούκ'''', το: καλαμπαλίκι, περιττό πράγμα < (τουρ) kalabalik.
'''καλάπως''', επίρ.: βέβαια.
'''καλατ<u>σ</u>εύω''', ρ.: μιλάω / καλατ<u>σ</u>ή, τα καλατ<u>σ</u>ίας, καλατ<u>σ</u>εύνε, καλάτ<u>σ</u>ευα = μιλούσα, καλάτ<u>σ</u>ευαν, καλάτ<u>σ</u>εμαν, καλατ<u>σ</u>εμένα = μιλημένα, καλάτ<u>σ</u>εψα.
'''κάλη''', η: η σύντροφος, η αγαπημένη / καλλεμέντσα = όμορφη, τα κάλλεα = η ομορφιά.
'''καλκεύω''', ρ.: καβαλώ / κάλκεψον.
'''καλλίον''', επίρ.: καλύτερα / καλός, καλέσα, καλλύνω = θεραπεύομαι.
'''καλομάνα''', η: η γιαγιά / λυκοκαλομάνα, αρκοκαλομάνα, λυκοπάππον, αρκοπάππον.
'''Καλομηνάς''', ο: ο Μάιος.
'''καλοτερώ''', ρ.: κυττάζω προσεκτικά, ξαναβλέπω.
'''καλωσηρθίασμαν''', το: καλωσόρισμα / η καλωσωρία.
'''κάμα''', η: σπαθί γυριστό, χαντζάρι < (τουρ) kama.
'''καμαρωτέρ’''', το: πέπλο με το οποίο σκέπαζαν το κεφάλι της νύφης / το καμαρωτέριν, η καμάρα.
'''καματερός''', επίθ.: δουλευτάρης / καματερέσα πβ. κακούργεσα, καλόχρονεσα, κοτυλεμέντσα = αδύνατη, κοντέσα = κοντή, κουτσέσα = κουτσή, λεγνέσα, λιφτέσα = ελαφρόμυαλη, λουσμέντσα = λουσμένη, λυγερέσα, μικρέσα, μυξέσα.
'''καμίαν''', επίρ: ποτέ.
'''καμίσ’''', το: αντρικό ή γυναικείο πουκάμισο.
'''κανείται''', ρ.: φτάνει / κανείνταν, εκανέθεν, κανείσαι.
'''κανόνιν''', το: το νεκροκρέβατο που είχε η εκκλησία κάθε ενορίας.
'''καντσίν''', το: η ψύχα του ξηρού καρπού.
'''κάουμαι''', ρ.: καίγομαι.
'''καπίτς''', το: το αλεστικό δικαίωμα του μυλωνά.
'''καπούσκα''', η: φαγητό με χοιρινό κρέας, λάχανο τουρσί, κόκκινη πιπεριά και βούτυρο < (τουρ) kapuska.
'''καρακόλιν''', το: αστυνομικό τμήμα < (τουρ) karakol.
'''καρβών'''', το: το κάρβουνο / καρβώνιν, τσιλίδ'.
'''καρκαρίζω''',ρ.: κάνω θόρυβο, βροντώ.
'''καρμενέτσα''', η: ρόκα, ηλακάτη, ξύλινο εργαλείο για το γνέσιμο του μαλλιού.
'''καρτά<u>σ'</u>''', το: ο αδελφός < (τουρ) kardaş / καρτά</>σ</u>ιν.
'''καρτόφ<u>α</u>''', τα: οι πατάτες / το καρτόφιν, καρτοφοφούστορον, καρτοφοτήγανον.
'''καρτοφοτήγανον''', το: πρόχειρο φαγητό με πατάτες που βράζονται και τηγανίζονται με κρεμμύδι και λάδι.
'''κασκάρα''', η: καρακάξα
'''κάστρεν''', ο: το κάστρο.
'''καταλαχού''', επίρ.: κατά τύχη.
'''καταμάγια''', η: σκούπα από κουρέλια για το φούρνο.
'''κατενίζω''', ρ.: ξεπλύνω / κατενίζ'νε, κατενόν = καθαρό.
'''κατσίν''', το: πρόσωπο / τα κατσία.
'''καυκία''', τα: ποτήρια, τάσια / καυκίν.
'''καφούλιν''', το: θάμνος / τα καφούλ<u>α</u>, καφουλόπον ,.
'''καφτάν'''', το: πολυτελές επίσημο πανωφόρι < (τουρ) kaftan.
'''κεβεζελεύω''', ρ.: μιλάω πολύ / κεβεζελεύ'νε, κεβεζέας = πολυλογάς, κεβεζού.
'''κελπεστία''', τα: οι μπριζόλες.
'''κεμεντζέ''', η: η λύρα του Πόντου < (τουρ) kemençe / κεμεντζές, κεμανές.
'''κεντίρ''', το: η ινδική κάνναβη, χασίσι < τουρ) kendir.
'''Κερεκή''', η: Κυριακή, Δευτέραν, Τρίτ', Τετράδ', Πέφτ', Παρασκευήν, Σάββαν.
'''κερεντή''', η: μεγάλο δρεπάνι με ξύλινο χερούλι.
'''κεσκέκ’''', το: γαμήλιο ή εορταστικό γεύμα με κρέας από κοτόπουλο ή κατσίκι ή μοσχάρι και αποφλοιωμένο σιτάρι και περιχυμένο με λειωμένο βούτυρο < (τουρ) keşkek.
'''κι άλλο </>x</u>ειρ'''', επίρ: χειρότερα.
''''κι εν''', ρ.: δεν είναι (ενικός) / 'κ’ είναι = δεν είναι (πληθυντικός), 'κι’ έχω = δεν έχω, 'κι’ έχνε.
'''κιντέας''', τα: οι τσουκνίδες / κιντέατα, κινθέα, κνιδέα.
'''κιφάλ'''', το: το κεφάλι / ξερόν κιφάλ', τρανόν κιφάλ',
'''κλαινίζω''', ρ.: κάνω κάποιον να κλαίει.
'''κλέμια''', τα: η ζώνη.
'''κλιβάν’''', το: εστία, ταντούρ, ορθογώνιο κτίσμα στην κουζίνα ύψους εβδομήντα εκατοστών με μεταλλικό κύλινδρο διαμέτρου πενήντα εκατοστών.
'''κλίσκουμαι''', ρ.: σκύβω / κλίσκουνταν.
'''κλώθω''', ρ.: επιστρέφω / κλώσον, κλώσκουμαι, κλωστός, κλωστοτήγανον.
'''κοβλάκια''', τα: κουβάδες από ξύλο έλατου για το γάλα / κοβλάκ'.
'''κοεμτζής''', ο: ο χρυσοχόος < (τουρ) kuyumcu / γοεμτζής, κουιμτζής.
'''κοζέρ'''', το: μεγάλο κόσκινο για το στάρι.
'''κοκίν''', το: σιτάρι / κοκία = κόλυβα.
'''κοκκύμελον''', το: το κορόμηλο, το δαμάσκηνο, η δαμασκηνιά / κοκκίμελον, κοκκίμελα.
'''κοκνέτσα''', η: μάλλινο τετράγωνο ύφασμα το τύλιγαν οι γυναίκες πάνω από τη ζιπούνα από τη μέση μέχρι τις γάμπες.
'''κολλίζω''', ρ.: ανάβω, καίγομαι.
'''κολόθ<u>α</u>''', τα: μικρά ψωμάκια που τα μοίραζαν για τις ψυχές των νεκρών.
'''κομές''', το: κοτέτσι < (τουρ) kümes.
'''κομπώνω''', ρ.: ξεγελώ / κομπών'νε, κόμπωμαν.
'''κονεύω''', ρ.: μένω, κάθομαι, σταθμεύω < (τουρ) konmak / γονεύω.
'''κοντέσ'''', το: τσόχινη ζακέτα, τη φορούσαν οι γυναίκες πάνω από τη ζιπούνα μέχρι τη μέση.
'''κοπάλ<u>α</u>''', τα: ξύλινοι κόπανοι για την αποφλοίωση του σιταριού / το κοπάλ', το κοπάλιν, κοπαλίχτρα.
'''κοπροθέσ'''', το: λάκος για την κοπριά των ζώων /η κοπροθέκα.
'''κόρασον''', το: το κορίτσι / κορτσόπον.
'''κορδιλάουμαι''', ρ.: μπερδεύομαι / εκορδιλάεν, κορδίλ' = κόμπος, κορδίλ<u>α</u>.
'''κορκότα''', τα: αποφλοιωμένο κοπανισμένο και χονδροαλεσμένο σιτάρι χωρίς βράσιμο. Γίνονταν και από καλαμπόκι και από κριθάρι / κορκότον, κορκοτοφάσουλον.
'''κορνακότζ’''', το: παιδικό παιχνίδι, το κουτσό.
'''κοσάρας''', τα: οι κότες / η κοσάρα, η κοσού = η κλώσα.
'''κοσμοδέβαση''', η: η καταστροφή.
'''κότ'''', το: το κότι, μονάδα βάρους περίπου έξι οκάδων, όπως και το πατμάνι / το κότιν.
'''κότζεμαν''' ή κότσεμαν, το: η μετακόμιση, η μετοικεσία < (τουρ) göçmek.
'''κότς''', το: χορός παμποντιακός.
'''κοτσορύμ'''', το: το ρυάκι, ποταμάκι / κοτσορύμιν.
'''κοτύλα''', η : το σβέρκο / κοτυλεύω = αδυνατίζω, κοτυλεύ'νε, κοτυλεμένος, κοτυλεμέντσα.
'''κουβανέφκουμαι''', ρ.: εμπιστεύομαι < (τουρ) güvenmek / κουβανέφκουνταν.
'''κουή''', η: το πηγάδι, η παραλία, το κουίν = το υπόγειο < kuyu.
'''κουίζω''', ρ.: φωνάζω / κουίζ'νε, κούξον = φώναξε.
'''κουιμαλία''', τα: πίτες στο φούρνο με κιμά < (τουρ) kıymalı / το κουιμαλίν.
'''κουκουβάκια''', τα: μανιτάρια.
'''κουκούμ’''', το: χάλκινη στάμνα νερού / το κουκούμιν.
'''κουλανεύω''', ρ.: χρησιμοποιώ < (τουρ) kulanmak.
'''κουμποσπάλερον''', το: μεταξωτό επιστήθιο ύφασμα της νύφης.
'''κουνίν''', το: η κούνια / κουνίζω, κουνίζ'νε, τα κουνία.
'''κούντα''', ρ.: σπρώξε / κούντεμαν, κουντώ = σπρώχνω, κουντούν.
'''κουντάχ’''', το: οι φασκιές < (τουρ) kundak.
'''κουντούρας''', τα: η κουντούρα, παπούτσια γυναικεία με χαμηλά τακούνια συνήθως μαύρα.
'''Κούντουρον''', ο: Φεβρουάριος.
'''κουρτώ''', ρ.: καταπίνω / κουρτούν.
'''κουσκουντέρα''', η: μεγάλη σκούπα από αγκαθωτό θάμνο.
'''κουσκούρ’''', το: ξεραμένη κοπριά αγελάδας που χρησιμοποιείται ως καύσιμη ύλη / το κουσκούριν.
'''κουτίν''', το: το φέρετρο.
'''κούτσα''', η: η μυρμηγκιά / τα κούτσας.
'''κουτσή''', η: κορίτσι, κοπέλα / ή πουτσή.
'''κόφτω''', ρ.: κόβω / κόψον.
'''κοχλίδ<u>α</u>''', τα: τα σαλιγκάρια / το κοχλίδιν = σαλιγκάρι, χρυσή αλυσίδα.
'''κράνια''', τα: οι καρποί της κρανιάς, δενδρύλλιου μέτριου μεγέθους με καρπούς σαν της ελιάς αλλά κόκκινους.
'''κρεατοκούρ’''', το: χοντρό σανίδι για το κόψιμο του κρέατος / κρεατοκούριν.
'''κρενίν''', το: η βρύση.
'''κρούω''', ρ.: κτυπώ / κρούγ'νε.
'''κρυφτερίτσα''', η: παιχνίδι των παιδιών, το κρυφτό / κρύφκουμαι.
'''κυμιόνιν''', το: το κύμινο.
'''κυνηγεύω''', ρ.: κυνηγώ.
'''κύρης''', ο: ο πατέρας, ο πεθερός.
'''κωλισάφρα''', η: η σαύρα.
'''Λ'''
'''λαβάσα''', τα: λεπτές πίτες από ζυμάρι ψωμιού που τις έψηναν στο ταντούρ ή το σάτσι ή το φούρνο.
'''λαγγεύω''', ρ.: πηδώ / λαγκεύ'νε = πηδούν, λάγκεμαν.
'''λαγήν’''', το: πήλινη στάμνα.
'''λαζούδα''', τα: τα καλαμπόκια.
'''λαϊστέρα''', η: παιδικό παιχνίδι, η κούνια / λαϊζω = κουνώ, λαϊζ'νε, λαϊσκουμαι, λαήσκουνταν = κουνιούνται.
'''λακουρτία''', τα: οι ομιλίες , (τουρ) lakırdı.
'''λαλάγκα''', η: πρόχειρο φαγητό, με νερουλή ζύμη που χυνόταν πάνω στο σάτσι και τρωγόταν περιχυμένη με βούτυρο.
'''λαλα</>χ</u>ού''', η: η χαϊδεμένη.
'''λαλία''', η: η φωνή / τα λαλίας, λαλόπον, λαλώ, λαλεμέντζα = προσκεκλημένη, λαλασία = ομιλία.
'''λαμψία''', τα: ελαφριά παπούτσια που τα φορούσαν μέσα από τις γαλότσες.
'''λανάρ’''', το: μεταλλικό οικιακό εργαλείο για το λανάρισμα του μαλλιού με πενήντα περίπου βελόνες κολλημένες σε δύο σειρές σε μεταλλική βάση.
'''λαρώνω''', ρ.: γιατρεύω / λαρών'νε, λαρούμαι, λαρούνταν.
'''λάσκουμαι''', ρ: περιφέρομαι / λάσκουνταν.
'''λαταρίγουμαι''', ρ.: κουνιέμαι / λαταρίγουνταν.
'''λαχανοκούταλον''', το: κουτάλα τρυπητή για ανακάτεμα ή σερβίρισμα του φαγητού.
'''λαχμάζω''', ρ.: λαχανιάζω / λαχμάζ'νε.
'''λαχόριν''', το: τετράγωνο ύφασμα που το έδεναν οι γυναίκες στη μέση.
'''λαχτίζω''', ρ.: κλωτσώ / λαχτίζ'νε, λάχταν = κλωτσιά, τα λάχτας = κλωτσιές.
'''λεγνός''', επίθ.: λεπτός, αδύνατος.
'''λείβ'''', το: σύννεφο, τα λείβ<u>α</u> / λειβώνω = σκοτεινιάζω, λειβών'.
'''λειφτός''', επίθ.: λειψός / λειφτάζω.
'''λέλεκον''', ο: πελαργός.
'''λελεύω σε''', ρ.: να σε χαρώ.
'''λετσέκ'''', το: και λετζέκ, βαμβακερό κάλυμμα κεφαλής γυναίκας, ανοιχτόχρωμο για τις νέες και σκούρο για τις ηλικιωμένες.
'''λεφτοκάρ<u>α</u>''', τα: φουντούκια < λεπτοκάρυα / το λεφτοκάρ' .
'''λιγμετέρ’''', το: και λιχμετέρ', μεγάλο ξύλινο πιρούνι με έξι δόντια, το χρησιμοποιούσαν στο αλώνισμα.
'''λιγούμαι''', ρ.: λιγώνομαι / λιγούνταν = λιγώνονται.
'''λιθάρ'''', το: πέτρα / λιθάρ<u>α</u>, λιθαρόπα.
'''λιμπαντέ''', η: γυναικείο παλτό από χρωματιστό βαμβακερό ύφασμα.
'''λίντζα''', τα: παιδικό παιχνίδι, τα πεντόβολα.
'''λογαρία''', η: ο λογαριασμός / λογαρέζω = λογαριάζω, λογαρέζ'νε.
'''λογομάντιλον''', το: μαντίλι που έστελναν οι γονείς της νέας στους γονείς του αρραβωνιαστικού για δήλωση αποδοχής του γάμου.
'''λογόπαρμαν''', το: η τελική συμφωνία για την τέλεση του γάμου.
'''λοχούσα''', η: η λεχώνα.
'''λυκοκαλομάνα''', η: η μαμά της γιαγιάς.
'''λώματα''', τα: τα ρούχα / λωμόπα = ρουχαλάκια.
'''Μ'''
'''μαγαρούτζ<u>α</u>''', τα: δώρα και τραπέζωμα για καλορίζικα.
'''μάγλα''', τα: μάγουλα / μάγλον.
'''μαθίζω''', ρ.: διδάσκω / μαθάνω = μαθαίνω, μαθάν'νε, μαθεύκεται.
'''μακαρίνα''', η: ζυμαρικό σαν τα μακαρόνια, λεπτό φύλλο από ζύμη με αλεύρι σιταριού που κοβόταν σε στενές λωρίδες και ξεραίνο- νταν στον ήλιο.
'''μακέλ'''', το: η αξίνα, ο κασμάς / τα μακέλ<u>α</u>.
'''μαλάζω''', ρ.: πιάνω / μαλάζ'νε.
'''μαλλοδέματα''', τα: στολίδια για τα μαλλιά, μεταξωτά ή ασημένια.
'''μαντζάνες''', τα: οι μελιτζάνες.
'''μαντζιρίζω''', ρ.: δε νηστεύω / μαντζιρίζ'νε.
'''μαντίν''', το: ζυμαρικό από σιταρίσιο αλεύρι. Η ζύμη κόβεται σε μικρά τετράγωνα πλάτους ενός εκατοστού που ξεραίνονται στον ήλιο. Αφού βράσει με νερό προστίθεται γιαούρτι και σκόρδο, < mantı.
'''μαροκούμαι''', ρ.: αναμασώ / μαροκούνταν = αναμασούν.
'''μασίνα''', η: αποθηκευτικός χώρος και χώρος εργασίας ανοιχτός από μπροστά.
'''μασλάχ'''': γυναικείο ρούχο χωρίς μανίκια < maşlah.
'''μαστραπά''', η: χάλκινο ποτήρι νερού < maşrapa.
'''μασχαρεύω''', ρ.: αστειεύομαι / μασχαρεύ'νε, μασχαρίας, μασχαράνος, μασχαρεφτά = στ’ αστεία.
'''μα<u>χ</u>''', το: το έθιμο σιωπής της νύφης προς τα πεθερικά της.
'''μαχανά''', η: η αφορμή, η δικαιολογία.
'''μεϊβέδες''', τα: φρούτα < meyve.
'''μειζοτέρ'''', οι: οι μεγαλύτεροι / μιζέτερος, μιζέτερα.
'''μελεσσίδ'''', το: η μέλισσα, το μελίσσι / τα μελεσσίδ<u>α</u>.
'''μένεμαν''', το: μήνυμα / μενέματα, μενώ = παραγγέλνω, μενούν = παραγγέλνουν.
'''μέρ'''', επίρ.: πού / μέρ' έν'.
'''μερία''', τα: οι μηροί.
'''μερσίνα''', τα: ψάρια οξύρρυγχοι.
'''μέστα''', τα: ελαφριά παπούτσια χωρίς τακούνι για μέσα στο σπίτι.
'''μετζίτι''', το: νόμισμα που το χρυσό είχε μία χρυσή λίρα και το ασημένιο είκοσι πέντε γρόσια.
'''μικρέσσα''', η: μικρή.
'''μιλέτ''', το: ο λαός, ο κόσμος, το έθνος < (τουρ) millet.
'''μιντέρια''', τα: μαξιλάρια για κάθισμα < minder.
'''μισίριν''', το: καλαμπόκι < mısır.
'''μοθοπώρ'''', το: φθινόπωρο.
'''μοιράουμαι''', ρ.: μοιράζομαι.
'''μομότσ<u>α</u>''', τα: τα κουκουνάρια / μομότς.
'''μονα<u>χ</u>ία''', η: η μοναξιά.
'''μουσκάρ'''', το: μοσχάρι / μουσκάρ<u>α</u>.
'''μουσκόφυλλον''', το: το φασκόμηλο.
'''μούστα''', η: η γροθιά / τα μούστας.
'''μουστερήδες''', οι: οι πελάτες < müşteri.
'''μουστρώνω''', ρ.: σκυθρωπιάζω.
'''μουχατσίρ''', ο: μετανάστης, πρόσφυγας < (τουρ) muhacir.
'''μουχτάρτς''', ο: ο πρόεδρος του χωριού < (τουρ) muhtar.
'''μουχτερόν''', το: το γουρούνι / μουχτερόπον.
'''μπατανίας''', τα: οι κουβέρτες < battaniye.
'''μπουρμαλίν''', το: τυλιχτό, στριφτό γλυκό σαν το σαραγλί, η πουρμά.
'''μυντζίν''', το: είδος τυριού από άπαχο γάλα.
'''μύα''', η: η μύγα
'''μυξέας''', ο: μυξιάρης / μυξέσα.
'''μύρα''', η: η μυρωδιά.
'''Ν'''
'''ναϊλί''', επιφ.: αλίμονο / ναϊλί εμέν, ναϊλί τη μάνα σ'.
'''νασάν''', επιφ.: είθε, μακάρι να / νασάν εσέν, νασάν την μάναν.
'''νε,''' μόριο: νε αφορισμένε! / νε .. νε = ούτε ... ούτε.
'''νεγάμ’κα''', τα: νεονυφιάτικα.
'''νεγκασία''', η: η κούραση / νεγκασμένος, νεγκασμέντσα, νεγκάζω, νεγκάσκουμαι, νεγκάσκουνταν.
'''Νεοχρονία''', η: η Πρωτοχρονιά.
'''νέπαι''' : βρε, καλέ / νέψα = καλέ, μωρή.
'''νερ<u>ά</u>σκουμαι''', ρ.: σιχαίνομαι / νερ<u>α</u>ξία = σιχαμένη.
'''νεσβήνω''', ρ.: σβήνω / νεσβήγα.
'''νεσπάλω''', ρ.: ξεχνώ / νεσπάλ'νε.
'''νιμέ''', η: παιχνίδι παιδικό ομαδικό.
'''νι<u>σ</u>αλούς''', ο: μνηστήρας < (τουρ) nişan / νι<u>σ</u>αλούσα.
'''νίφτω''', ρ.: πλένω / νίφ'νε, νίφκουμαι, νίφκουνταν.
'''νόμα''', ρ.: δος μου / δίγω.
'''νουνίζω''', ρ. : σκέφτομαι / νούντσον = σκέψου, νουνισμένος, νουνισμέντσα, νουνιγμένος, ενούντσα, νοΐζω = αντιλαμβάνομαι.
'''ντελικανλής''', ο: νέος, παλικάρι < delikanlı.
'''ντό''': τι, εκείνο που / ντ' έφτάς, ντ' έποικες; ντ' άγνα = πώς.
'''ντος''', ρ.: κτύπα / ντόσιμον, κρούω, ντοχτούμαι.
'''ντοσέκια''', τα: τα στρώματα < döşek.
'''νυφείον''', το: χώρος διασκευασμένος πρόχειρα για να υποδεχθεί τη νύφη μόλις επιστρέψει από την εκκλησία / νύφε, νυφάδες,
νύφεσα, νυφόπαρμαν.
'''νυχτοπούλ'''', το: νυχτοπούλι / τα νυχτοπούλ<u>α</u>.
'''Ξ'''
'''ξάι''', επίρ.: καθόλου / έναν ξάι = λίγο.
'''ξαμώνω''', ρ.: συγκρίνω, ξαμών'νε.
'''ξυλάγγ’''', το: το δουρβάνιν, ξύλινο εργαλείο σε σχήμα βαρελιού για το κτύπημα του γάλακτος και την παραγωγή του βουτύρου.
'''ξαν''', επίρ.: ξανά.
'''ξέντσα''', η: η ξένη / ο ξένον, ξενιτέας, ξενιτία.
'''ξύγαλαν''', το: γιαούρτι / τα ξυγάλτα.
'''ξυλέα''', η: το κτύπημα, το χαστούκι / τα ξυλέας.
'''ξυμήτς''', ο: ο ψηλομύτης.
'''ξύνω''', ρ.: χύνω / ξύουμαι, ξύουνταν.
'''ξύσκουμαι''', ρ.: ξύνομαι / ξύσκουνταν, το ξυστήρ', τα ξυστήρ<u>α</u>.
'''Ο'''
'''οβόν''', το: το αυγό / τα οβά, οβάζ' = κάνει αυγό.
'''ογρήγορα''', επίρ.: γρήγορα / ογρηγορώ.
'''οκνέας''', ο: ο τεμπέλης / οκνέσα, οκνώ, οκνούν.
'''ολόγ<u>ο</u>ς''', ο: αναίσθητος, απαθής.
'''ολόες''', ο: επίθ.: ολόκληρος / ολόεν, ολόερα, όλος, όλε, όλ', όλτς.
'''ομ<u>ά</u>ζω''', ρ.: μοιάζω.
'''ομάλ'''', το: χορός παμποντιακός / ομαλίζω = ισοπεδώνω.
'''ομάτ'''' το: το μάτι /ομμάτ', ομμάτ<u>α</u>.
'''ομούτ'''', το: η ελπίδα < (τουρ) umut.
'''ονέρ'τα''', τα: τα όνειρα.
'''όντες''', σύνδ.: όταν / όντας.
'''οξουκά''', επίρ.: έξω / οξούκα, οξουκές = εκεί έξω.
'''οξύγαλαν''', το: γιαούρτι.
'''οπουρνά''', επίρ.: αύριο.
'''ορέχκομαι''', ρ.: επιθυμώ.
'''ορθία''', η: η αλήθεια.
'''ορθώνω''', ρ.: επιδιορθώνω.
'''ορμάν''', το: το δάσος < (τουρ) orman.
'''ορμίν''', το: το μικρό ποτάμι / τα ορμία, τα ορμόπα.
'''ορτάρα''', τα: μάλλινες κάλτσες.
'''οσήμερον,''' επίρ.: σήμερα.
'''οσπιτόπον''', το: το σπιτάκι / οσπιτ<u>α</u>νός.
'''οτά''', η: το δωμάτιο < (τουρ) oda.
'''ούβας''', τα: οι χουρμάδες.
'''ούμπαν''', επιρ.: όπου.
'''ούσνα''', σύνδ.: μέχρι, έως.
'''οφέτος''', επίρ.: φέτος.
'''οψάρ'''', το: το ψάρι / τα οψάρ<u>α</u>, η οψαρέα = ψαρίλα.
'''οψεζ'νόν''', ο: ο χθεσινός / οψέ, οψικέσ' = χθες, οψεκές = τις προάλλες, οψεμπριμέραν = προχθές.
'''Π'''
'''παγκανότ<u>α</u>''', τα: τα χαρτονομίσματα < (τουρ) banknot.
'''παθάνω''', ρ.: παθαίνω.
'''παιδάς''', ο: ο νέος, το παιδί, το παλικάρι / παιδοποιώ, παιδοποίγω.
'''παινεύκουμαι''', ρ.: παινεύομαι / παινεύκουνταν.
'''παίρω''', ρ.: παίρνω / έπαρ'.
'''παϊτόνιν''', το : μόνιππο, αμάξι με ένα άλογο < payton.
'''παλαλέ''': παλαβέ, παλαλός = παλαβός / παλαλούμαι, παλαλώνω, παλαλοσύνε, παλαλά = τρελά, τα παλαλίτσας.
'''παλικάρ'''', το: παλικάρι, τα παλικάρ<u>α</u>, η παλικάρενα, το παλικαρόπον.
'''παλουχτζής''', ο: ο ψαράς < (τουρ) balıkçı.
'''πανοΰρ''', το: πανηγύρι.
'''παρακαλία''', η: παράκληση,/ τα παρακαλίας.
'''παρακαμίν'''', το: η εστία.
'''παρλαεύω''', ρ.: λάμπω, γυαλίζω < (τουρ) parlamak.
'''παρουσιάσκουμαι''', ρ.: παρουσιάζομαι.
'''παρχάρ<u>α</u>''', τα: θερινός βοσκότοπος / παρχαρεύω, ο παρχάρτς, η παρχαρομάνα, τα παρχαρομύτ<u>α</u> = βουνοκορφές.
'''πασκιτάν''', το: αποβουτυρωμένο, στραγγισμένο, αλατισμένο γιαούρτι.
'''πασκίμ''', σύνδ.: μήπως.
'''πασμάδες''', τα: τσίτια, βαμβακερό εμπριμέ ύφασμα.
'''πα<u>σ</u>τάν''', επίρ.: τελείως < (τουρ) baştan.
'''παστρεύω''', ρ.: καθαρίζω / πάστρεψον.
'''παταλεύω''', ρ.: εμποδίζω, ενοχλώ.
'''πατίκιν''', το: χάλκινο σκεύος που το έβαζε η πεθερά στο κατώφλι για να το πατήσει η νύφη όταν ερχόταν από την εκκλησία.
'''πατμάνια''', τα: μονάδες βάρους έξι οκάδων < batman / πατουμάνια.
'''πατούλα''', η: ή πιπιλομάταινα, χορός παμποντιακός.
'''πα<u>χ</u>όκολον''', ο: ο χοντρόκωλος.
'''παχτ<u>σ</u>έ''', η: ο κήπος < (τουρ) bahçe.
'''πα<u>χ</u>ύνω''', ρ.: παχαίνω.
'''πε''', ρ.: πες / πέτεν, λέγω, πέα την, πέα τον, πέα τσε.
'''πεγαδομάτ<u>α</u>''', τα: οι πηγές.
'''πεϊνιρλία''', τα: πίτες σε σχήμα βάρκας γεμισμένες με τυρί και ψημένες στο φούρνο < peynir = τυρί.
'''πεκιάρ'ς''', ο: ο ανύπαντρος < (τουρ) bekar.
'''πελίτια,''' τα: οι βελανιδιές < pelit.
'''πέλκι''', επίρ.: ίσως, πιθανόν < (τουρ) belki.
'''πεντικόν''', ο: ποντικός.
'''περε<u>σ</u>κία''', τα: τα πιροσκί.
'''περήδες''', οι: νεράιδες < peri.
'''περι<u>σ</u>άντς''', ο: φουκαράς < (τουρ) perişan / περι<u>σ</u>άντσα.
'''περμένω''', ρ.: περιμένω.
'''πέσκον''', ο: η σόμπα.
'''πετεινάρ'''', το: ο κόκορας / τα πετειναρόπα, πιλίτς = πετιναράκι, πιλίτσ<u>α</u>.
'''πινακίδ’''', το: πινακίδα γραφής.
'''πίνω''', ρ.: πίνω / πία, πιάτεν, η ποτή.
'''πιπιλομάταινα''', η: εκείνη που έχει μικρά μάτια.
'''πιρίφτε''', η: ξύλινο φτυάρι για το φούρνισμα του ψωμιού ή του φαγητού / πιρίφτω = φουρνίζω, πυρίφτ'νε.
'''πιρνά πιρνά''', επίρ.: πρωί πρωί / πουρνά, το πιρνόν = το επόμενο πρωί.
'''πιρπιρίμα''', τα: οι γλιστρίδες.
'''πισία''', τα: τηγανίτες πλατιές και μεγάλες περιχυμένες με πετιμέζι ή μέλι ή πασπαλισμένες με ζάχαρη < pişmek = ψήνω.
'''πισταμπάλ'''', το: ποδιά από μάλλινο ύφασμα.
'''πιστόφ'''', το: πιστόλι, όπλο < pişton.
'''πλαν''', επίρ.: πέρα.
'''πλεθύνω''', ρ.: πληθύνω.
'''πλουμίδ'''', το: το στολίδι / πλουμίδ<u>α</u>, πλουμιστά, πλουμιστός, πλουμιστέσα.
'''πλύσκουμαι''', ρ.: πλένομαι / πλύσκουνταν.
'''ποδεδίζω σε''', ρ.: να σε χαρώ.
'''ποιώ''', ρ.: κάνω / εποίνα, εποίκα, ποίσον, ποίστεν.
'''πόν<u>α</u>''', τα: οι πόνοι.
'''πορανία''', τα: μπουρανί, φαγητό με χόρτα ή παντζαρόφυλλα τηγανισμένα με βούτυρο και περιχυμένα με πασκιτάν.
'''ποστάλα''', τα: γυναικεία χαμηλά παπούτσια < postal.
'''ποταμάκριν''', το: η ακροποταμιά.
'''ποτισκούμαι''', ρ.: πίνομαι, ποτίζομαι / ποτίω.
'''ποτισώνα''', η: η ποτίστρα.
'''ποτούριν''', το: αντρικό φαρδύ παντελόνι < potur.
'''πουγαλεύκουμαι''', ρ.: αγανακτώ < (τουρ) buğalmak / οι πουαλεμέν'.
'''πουδέν''', επίρ.: πουθενά / πουθέν.
'''πουίχ'''', το: μουστάκι < (τουρ) bıyık / το πουίκιν.
'''πουλούλ<u>α</u>''', τα: πιθάρια / το πουλούλ'.
'''πουρτίν''', το: ύφασμα / τα πουρτία.
'''πουσιντάλευρον''', το: το κριθαρίσιο καβουρδισμένο αλεύρι.
'''πουτσή''', η: η κόρη / κουτσή, νέπουτση, νέκουτση.
'''πρέσκουμαι''', ρ.: πρήζομαι / πρέσκουνταν, πρεσμέντσα.
'''πυκναράευτος''', ο: ο ποθητός.
'''Ρ'''
'''ρακάν''', το: η βουνοπλαγιά.
'''ρά<u>χ</u>α''', η: η ράχη / ρασόπον = ραχούλα.
'''ρα<u>χ</u>ίν''', το: βουνό / τα ρα<u>χ</u>ία, ρα<u>χ</u>ιόπουλον = πουλί του βουνού, ρα<u>χ</u>ιοκέφαλα = οι βουνοκορφές.
'''ριγώ''', ρ.: κρυώνω / το ρίγαμαν, ριγωμένος, ριγωμέντσα.
'''ρίζα μ'''', προσφώνηση: ψυχή μου!
'''ρούζω''', ρ.: πέφτω / ρούζ'νε, ερούζ'να, ερούξα, ρούξιμον.
'''ρουκάν'''', το: ο αυτοσχέδιος αποχιονιστήρας.
'''Σ'''
'''σαεύω''', ρ.: σέβομαι.
'''σαβουρεύω''', ρ.: τινάσσω, σκορπίζω < (τουρ) savurmak.
'''σα βρατέρα''', επίρ.: στο δειλινό / σο μέρωμαν, σο κιντίν.
'''σάγκα''', η: μοχλός, κλειδαριά πόρτας.
'''σάγκι''', σύνδ.: σάν να < (τουρ) sanki.
'''σαλάκ’''', το: φόρτωμα πλάτης, συνήθως δεμάτι ξύλα ή κλαδιά.
'''σαλαχανάς''', ο: αργόσχολος, σαλαχανέσα.
'''σαμάρα''', η: το χαστούκι < (τουρ) şamar / η σαπλάκα, τα σαπλάκας, σαπλακίζω, σαπλακίζ'νε.
'''σαρεύω''', ρ.: αρέσω.
'''σαρής,''' ο: ο ξανθός / σαρήσα, σαρίν < (τούρ) sarı.
'''<u>σ</u>α<u>σ</u>εύω''', ρ.: σαστίζω < (τουρ) şaşırmak / ε<u>σ</u>ά<u>σ</u>εψα, <u>σ</u>α<u>σ</u>ιρεμένος, <u>σ</u>ασ<u>σ</u>ιρεμέντσα.
'''σάτσι''', το: στρογγυλή λαμαρίνα για το ψήσιμο των γιουφκάδων < sac.
'''σαφλέας,ο''': σαλιάρης, σαφλίζω, σαφλίζ'νε.
'''σαχάνια''', τα: πιάτα < sahan.
'''σαχτάρ<u>α</u>''', τα: οι στάχτες.
'''σεβάσκουμαι''', ρ.: σέβομαι.
'''σεβνταλής''', ο: ο ερωτευμένος < (τουρ) sevdalı / η σεβτά, τα σεβτάδες.
'''σειμουγκόν''', ο: χειμώνας.
'''σέρα''', η: ποντιακός πολεμικός χορός.
'''σερομίλ'''', το: η μυλόπετρα / τα σερομίλ<u>α</u>.
'''σέφτελα''', τα: παντζάρια / το σέφτελον, σεύτελον, ο σεύτελον = ο ανόητος, h σέφτελεσα, η σεφτελοσύνη.
'''σιλεγνίζω''', ρ.: κοσκινίζω, λεπτολογώ.
'''σιλευτέρ'''’ το: σφουγγαρόπανο / σιλεύω = σφουγγαρίζω, σιλεύ'νε.
'''σίμισκα''', η: ηλιόσπορος, τα σίμισκας.
'''σινίν''', το: μεγάλος χάλκινος δίσκος < sini.
'''σιργούνιν''', το: η εξορία < (τουρ) sürgün.
'''σι<u>σ</u>έ''', η: το μπουκάλι ,(τουρ) şişe.
'''σίτ<u>α</u>''', σύνδ.: όταν, ενώ, καθώς
'''σιτλία''', τα: ρυζόγαλα < sütlü.
'''σιφτέν''', επίρ.: στην αρχή.
'''σκαλώνω''', ρ.: αρχίζω.
'''σκεπίδ'''', το: η σφήκα.
'''σκοτία''', η: το σκοτάδι.
'''σκούμαι''', ρ.: σηκώνομαι / σούκ' = σήκω, σκώνω.
'''σκουτουλίζω''', ρ.: ευωδιάζω / εσκουτούλτσα, η σκουτούλα, σκουντουλοδέσμια = άρωμα δυόσμου.
'''<u>σκ</u>υλάζω''', ρ.: βρωμάω.
'''σκώνω''', ρ.: σηκώνω / έσκωσα.
'''σοέβω''', ρ.: ληστεύω < (τουρ) soymak.
'''σουμά''', επίρ.: κοντά / σουμώνω.
'''σουμάδεμαν''', το: ο αρραβώνας / σουμαδεύω, ο σουμαδεμένον, η σουμαδεμέντσα, τα σουμάδ<u>α</u>, σουμαδεύκουμαι, σουμαδεύκουνταν.
'''σοφράς''', ο: τραπέζι κοντό στρογγυλό < sofra.
'''σπάζω''', ρ.: σφάζω / σπάξιμον.
'''σπαρέλιν''', το: κάλυμμα γυναικείου στήθους / σπαρελόπον.
'''σπιτίτζας''', τα: παιδικό παιχνίδι, οι κουμπάρες.
'''σπιχτέσα''', η: η τσιγκούνα / ο σπιχτόν, σπίγγω, σπίχκουμαι, σπίγγουμαι, σπίγγουνταν.
'''Σταυριώτες''', οι: οι κάτοικοι του χωριού Σταυρίν της Αργυρούπολης πολλοί από τους οποίους εξισλαμίστηκαν αλλά παρέμειναν κρυπτοχριστιανοί.
'''στέκω''', ρ.: στέκομαι / στα, εστά, εσταθέστεν.
'''στέφανον''', το: ο σύζυγος.
'''στοιβαχτόν''', το: ο μουσακάς.
'''στουδ΄''', το: το κόκαλο / τα στούδ<u>α</u>.
'''στρούλιγμαν''', το: το έθιμο για το ξύρισμα του γαμπρού.
'''στύπας''', τα: τα τουρσιά / η στύπα.
'''στυχαρία''', η: η αναγγελία ευχάριστης είδησης / στυχαριάζω, στυχαρίασον, στυχαρέζω, στυχαρέζ'νε.
'''σύννυχτα''', επίρ.: πριν ξημερώσει.
'''συντάγουμαι''', ρ.: κάνω συμφωνία.
'''συντιβάλλω''', ρ.: διαβάλλω.
'''<u>σ</u>υρίζω''', ρ.: σφυρίζω / σουρίζω, το σύριμαν, η συρίχτα.
'''σύρσιμον''', το: απαγωγή κόρης με σκοπό το γάμο / σύρκουμαι = υποφέρομαι.
'''σωρεύω''', ρ.: μαζεύω / σωρεύκουμαι.
'''Τ'''
'''ταβίζω''', ρ.: μαλώνω / ταβίζ'νε, το τάβισμαν.
'''τάζω,''' ρ. : υπόσχομαι / τάουμαι.
'''ταής''', ο: ο θείος < (τουρ) dayı.
'''ταβά''', η: τηγάνι < (τουρ) tava.
'''ταμάμ''', επίρ.: σωστά, εντάξει < (τουρ) tamam.
'''τανωμένον σουρβάν’''', το: σούπα με τάνι και κορκότα ή πλιγούρι ή ρύζι / το τάν', τανοσίρβ'.
'''τάπλα''', η: κάλυμμα της κεφαλής των παντρεμένων γυναικών.
'''ταράουμαι''', ρ.: ανακατεύομαι / ταράγουμαι, ταράγουνταν, ταράζω, ταράζ'νε.
'''ταραπολόζα''', τα: γυναικείες ζώνες από την Τρίπολη της Λιβύης.
'''τάσι''', το: κύπελο < (τουρ) tas.
'''ταφίν''', το: ο τάφος / τα ταφία.
'''τεβόρ<u>α</u>''', τα: τα λευκά έλατα.
'''τελικανλής,''' ο: παλικάρι, θερμόαιμος < (τουρ) delikanlı.
'''τελ<u>ό</u>νω''', ρ.: τελειώνω.
'''τεμέκ''', επίρ: τάχα, δήθεν, λοιπόν < (τουρ) demek / τεά, τεάμ.
'''τεντελίζω''', ρ.: τουρτουρίζω / τεντελίζ'νε.
'''τέντζερη''', η: τσουκάλι για μαγείρεμα < (τουρ) tencere.
'''τεπελίκια''', τα: κάλυμμα κεφαλής ανύπαντρων κοριτσιών < (τουρ) tepe = κορφή.
'''τέρεν''', ρ.: κύττα / τερώ, τερέστεν.
'''τερλίκια''', τα: κάλτσες από πολύ χοντρή κλωστή < (τουρ) terlik = παντόφλα.
'''τεστίν''', το: στάμνα νερού < (τουρ) testi.
'''τέτσια''', τα: χάλκινα δοχεία για τη φύλαξη των καβουρμάδων.
'''τεψίν''', το: ταψί < (τουρ) tepsi.
'''τζαντζαρεύω''', ρ.: = σκαρφαλώνω / τζαντζαρεύ'νε.
'''τζεβζέ''', η : το μπρίκι < (τουρ) cezve.
'''τιδέν''', αντ.: τίποτε / τιδέν 'κ' εν'.
'''τίκ''', το: χορός παμποντιακός.
'''τοξάριν''', το: το δοξάρι της λύρας.
'''τοου<u>σ</u>εύω''', ρ.: μαλώνω < (τουρ) dovüşmek.
'''τοπλαεύω''', ρ.: μαζεύω < (τουρ) toplamak / τοπλαεύκουμαι, ετοπλαεύταν.
'''τουβάρ'''', το: ο τοίχος, το ντουβάρι < (τουρ) duvar.
'''τουλουμτζήδες''', οι: οι μουσικοί που έπαιζαν την γκαίντα < (τουρ) tulum.
'''τουλπίρ’''', το: γυναικείο κόσμημα από ασημένιες αλυσίδες για το κεφάλι.
'''τουλώνω''', ρ.: σωπαίνω / τούλωσον, τουλώστεν.
'''Τουρκάντ'''', οι: οι Τούρκοι.
'''τραβωδία''', η: το τραγούδι / η τραγωδία, ο τραγωδ<u>ά</u>νον.
'''τρανύνω''', ρ.: μεγαλώνω / ο τρανον, η τρανέσα, τα τρανά, τρανύν'νε, τρανόν κορίτς = γεροντοκόρη, τρανόν αγούρ'.
'''τρίμμαν''', το: κουρκούτι, φαγητό με αλεύρι από σιτάρι, κρεμμύδια και βούτυρο.
'''Τρίτη ασβολερή''', η : αποφράδα ημέρα στον Πόντο ήταν η Τρίτη.
'''Τρυγομηνάς''', ο: ο Οκτώβριος.
'''τρυγόνα''', η: χορός του Ακ Νταγ Μαντέν.
'''τρυπίν''', το: τρύπα / τα τρυπία, τρυπεμένα = τρυπημένα.
'''τσαγγίν’''', το: παπούτσι, πόδι.
'''τσαγτσίρα''', τα: στενό αντρικό παντελόνι.
'''τσαζούδες''', οι: μάγισσες.
'''τσαΐζω''', ρ.: φωνάζω δυνατά / τσάϊξον = φώναξε, τσαϊχτά = φωναχτά.
'''τσαΐρια''', τα: λιβάδια, βοσκοτόπια < (τουρ) çayır.
'''τ<u>σ</u>ακανίουμαι''', ρ.: σέρνομαι στα πόδια μου, ταλαιπωρούμαι / τ<u>σ</u>ακανίουμες.
'''τσακώνω''', ρ.: σπάζω / τσακωμένον.
'''τσάλτικα''', η: παιχνίδι παιδικό, τσιλίκι.
'''τσάμιας''', τα: οι πλεξούδες / η τσάμια.
'''τσαμούρ'''', το: η λάσπη < (τουρ) çamur / τα τσαμούρ<u>α</u>, τσαμουρωμένος, τσαμουρωμέντσα, τσαμουρωμένα = λασπωμένα.
'''τσαούσης''', ο: λοχίας < (τουρ) çavuş.
'''τσαράνα''', η: λάμπα πετρελαίου.
'''τσαραχότ’''', το: ή εμπροπίς, παμποντιακός χορός.
'''τσαρκούλιν''', το: πέπλο που κάλυπτε το κεφάλι της νύφης ή καμαρωτέρ'.
'''τ<u>σ</u>ατεύω''', ρ.: συναντώ.
'''τσατσαλίζω''', ρ.: ξεγυμνώνω / ο τσάτσαλον = ολόγυμνος, η τσάτσαλεσα, τσατσαλίζ'νε.
'''τσαφίζω''', ρ.: ξύνω / τσαφίζ'νε.
'''τσερέζια''', τα: ξηροί καρποί < (τουρ) çerez.
'''τσεχέλ’κον''', το: άβγαλτο παιδί < (τουρ) cehil.
'''τσιγ κεφτές''', ο: κεφτές με ωμό κιμά και πλιγούρι < (τουρ) çiğ köfte.
'''τ<u>σ</u>ίζω''', ρ.: λυπάμαι.
'''τσικάριμ''': καρδούλα μου < (τουρ) ciğer = συκώτι.
'''τσιλίδ'''', το: αναμμένο κάρβουνο.
'''τσιλτεύω''', ρ.: κατουρώ / τα τσιλτούρ<u>α</u>, τσιλτέας, τσίλτεμαν, τσιλτεύ'νε.
'''τσιμίδ'''', το: ο νους, το μυαλό.
'''τ<u>σ</u>ιμπου<u>σ</u>'''', το: το συμπόσιο.
'''τσίπα''', η: ο αφαλός.
'''τσιπ καλά''', επίρ.: πολύ καλά.
'''τσίρια''', τα: ξεραμένα φρούτα.
'''τσιριχτά''', τα: οι λουκουμάδες.
'''τσιτσέκια''', τα: λουλούδια < (τουρ) çiçek.
'''τσιτσίν''', το: το βυζί / τα τσιτσία.
'''τσούνα''', η: η σκύλα / τσούνας παιδίν.
'''τ<u>σ</u>ορτάν<u>α</u>''', τα: σβώλοι από πασκιτάν ξεραμένοι στον ήλιο / τ<u>σ</u>ορτάν.
'''τυραννίουμαι''', ρ.: τυραννιέμαι / τυραννίουνταν.
'''τυρομύντζ'''', το: είδος τυριού σαν μυζήθρα.
'''Υ'''
'''υβρίζω''', ρ.: βρίζω / η υβρισία, το ύβρισμαν, ο υβριστέας.
'''υεία,''' η: η υγεία /υία, ύαν, ύας, υείας και <u>χ</u>αιρετίας.
'''υλάζω''', ρ.: γαυγίζω / το ύλαγμαν, ο υλαγμός, υλάζ'νε, ύλαξα, υλάξτε.
'''υλίζω,''' ρ.: στραγγίζω / υλίζ'νε, το υλιστέρ', το υλιστέριν, υλιστερόν = στραγγιστό, υλιστόν = στραγγισμένο γιαούρτι.
'''υπαντρία''', η: ο γάμος / το υπάντρεμαν, υπαντρεύω, η ύπαντρος = παντρεμένη.
'''υπερηφανεύκομαι''', ρ.: περηφανεύομαι, υπερηφανεύκουμαι, υπερηφανεύτα, η υπερηφανία.
'''υπνάσκουμαι''', ρ.: νυστάζω, υπνοβατώ, ο υπνασμένος = υπνοβάτης, η υπνασμέντζα, ο υπνέας = υπναράς, η υπνού = υπναρού, η υπνωή = νύστα, υπνώνω = νυστάζω, ύπνωσα = νύσταξα.
'''υποψιάσκουμαι''', ρ.: υποψιάζομαι, υποψιάστα.
'''υστερινός''', ο: τελευταίος, υστερνά = στο τέλος, υστερναίος = κατοπινός, υστερνοκαίριν = φθινόπωρο, υστερνοπαίδ', υστερνοπούλ'.
'''υφάδ'''', το: υφάδι, υφαίνσιμον, υφαίστρα = υφάντρα, ύφαση = ύφανση, υφαστικά = υφαντικά.
'''Φ'''
'''φαγόπον''', το: το φαγάκι / φαγοποτίζω, φα = φάε, φάζω = ταίζω, φάζ'νε, το φαΐν, τα φαΐα.
'''φαμελία''', η: η οικογένεια.
'''φαρμακώνω''', ρ.: δηλητηριάζω / το φαρμάκιν, τα φαρμάκ<u>α</u>.
'''φέγγον''', ο: το φεγγάρι.
'''φελία''', τα: φέτες ψωμιού βουτηγμένες σε γάλα και αυγό και τηγανισμένες με λάδι / to φελίν.
'''φέρκουμαι''', ρ.: συμπεριφέρομαι.
'''φεύω''', ρ. : φεύγω / φευς, φευ, φεύ'νε.
'''φιλάρ<u>α</u>''', τα: ελαφριά πέδιλα για βρέφη.
'''φιλέρ’''', το: φλαμούρι.
'''φιλώ''', ρ.: αγαπώ / φιλίουμαι, φιλ<u>ά</u>σκουμαι = συμφιλιώνομαι, το φίλ<u>α</u>σμαν.
'''φοούμαι''', ρ.: φοβάμαι / φογούμαι, φοούμες, φοούστουν, η φοβερέσα, o φοβετσέας = φοβητσιάρης.
'''φορίζω''', ρ.: ντύνω / φορίστεν.
'''φορκάλ’''', το: η σκούπα.
'''φορφάκα''', η: ο βάτραχος / τα φορφάκας.
'''φοσίζω''', ρ.: παραχώνω / φοσίζ'νε, φοσίγουμαι, φοσίγουνταν.
'''φοτά''', η: η ποδιά.
'''φουλίρ<u>α</u>''', τα: τα φλουριά / φλωρίν.
'''φουντάριν''', το: το καρβέλι το ψωμί.
'''φουρκίζω''', ρ. : πνίγω / φουρκίζ'νε.
'''φουρνίν''', το: ο φούρνος / τα φουρνία.
'''φούστορον''', το: ομελέτα με αυγά και διάφορα άλλα υλικά / φούστορον, φούστουρα, φουστρολάβασον.
'''φουτίζω''', ρ.: αερίζομαι / ο φουτέας.
'''φτείρα''', η: η ψείρα / τα φτείρας, ο φτειρέας.
'''φτιλακίζω''', ρ.: τρομάζω, σπαρταρώ / φτιλακίζ'νε, φτουλακίζω, το φτουλάκισμαν.
'''φτουλίζω''', ρ.: ξεπουπουλιάζω.
'''φωτάζω''', ρ.: φέγγω, λάμπω.
'''φωτίζω''', ρ.: βαφτίζω / φωτίζ'νε.
'''Χ'''
'''χαβίτσ'''', το: φαγητό με φουρνισμένο καλαμποκίσιο αλεύρι και βούτυρο.
'''<u>χ</u>αίρουμαι''', ρ.: χαίρομαι / χαρά = ο γάμος, η <u>χ</u>αιρετία.
'''χαλαλοή,''' η: η φασαρία / η χαλασμονή = ο χαμός.
'''χαλκίν''', το: ή χαλκόν, χάλκινο δοχείο και καζάνι με χερούλι.
'''χάμαι''', ρ.: χάνομαι / χάθ' = χάσου, χάνω, χαντς, χάν', χάσον.
'''χαμαιλέτε''', η: ο μύλος.
'''χαμάν''', εππίρ.: αμέσως < (τουρ) hemen.
'''χαμελύνω''', ρ.: χαμηλώνω / χαμελά, η χαμελέσα.
'''χαμούφτας''', τα: άγριες φράουλες.
'''χαντιλιάουμαι''', ρ.: θαμπώνουμαι.
'''χαπάρ'''', το: η είδηση < (τουρ) haber / τα χαπάρ<u>α</u>, χαπαρ<u>ά</u>ζω.
'''χαρά''', η: ο γάμος / χαρεντερίζω, χάρουμαι, χάρουνταν.
'''χαρτίν''', το: το χαρτί / τα χαρτία.
'''χαρτσεύω''', ρ.: ξοδεύω < (τουρ) harcamak.
'''χα<u>σ</u>εύω''', ρ.: ζεματίζω / χα<u>σ</u>εμένος.
'''χασίλ’''', το: φαγητό με κορκότο σιταρίσιο ή καλαμποκίσιο.
'''χα<u>σ</u>λούκ'''', το: το χαρτζιλίκι.
'''χάταλον,''' το: βρέφος, παιδί.
'''χαψία''', τα: ψάρια μικρά, γαύρος < (τουρ) hamsi.
'''<u>χ</u>εροκαλκ’''', το: χάλκινο σκεύος για διάφορες χρήσεις.
'''<u>χ</u>ειλιαύρη''', η: η φλογέρα.
'''<u>χ</u>ίλ<u>α</u>''' : χίλια / ο <u>χ</u>ιλοπλούμιγον.
'''<u>χ</u>ειμωγκός''', ο: ο χειμώνας.
'''<u>χ</u>ερ'''', το : χέρι / <u>χ</u>ερέα = όσο χωράει στη χούφτα.
'''χινέα''', η: φυτική βαφή ρόδινου χρώματος.
'''Χιντιρελές''', ο: ο Άγιος Γεώργιος όπως τον αποκαλούσαν οι Τούρκοι.
'''χολ<u>ά</u>ζω''', ρ.: εξοργίζω / χολιούμαι, τα χολία, χολομανίγουμαι, χολέσκουμαι, χολέσκουνταν, χολεσμένος, χολεσμέντσα
'''χοντρολαλώ''', ρ.: μιλώ μεγαλόφωνα.
'''Χορτοθέρτς''', ο: ο Ιούλιος.
'''χο<u>σ</u>λανεύκομαι''', ρ.: μου αρέσει < (τουρ) hoşlanmak.
'''χουλένω''', ρ.: ζεσταίνω / χουλέν = ζεστό, χούλεμαν, χουλίουμαι = ζεσταίνομαι, χουλίουνταν.
'''χουλιάρ<u>α</u>''', τα: τα κουτάλια / η χουλαρέα = η κουταλιά.
'''χρέσκουμαι''', ρ.: χρειάζομαι / χρ<u>ά</u>σκουμαι.
'''Χριστουγεννάρτς''', ο: ο Δεκέμβριος / Χριστιανάρτς.
'''χτενίουμαι''', ρ.: χτενίζομαι / χτενίουνταν.
'''χτήν<u>α</u>''', τα: οι αγελάδες / το χτήνον, το αλμεγάδιν χτήνον.
'''χωρέτες''', ο: ο χωρικός / η χωρέτ'σα.
'''Ψ'''
'''ψαλαφώ''', ρ.: ζητώ / η ψαλαφία, ψαλάφεμαν = πρόταση γάμου, το ψαλαφίον = αίτηση.
'''ψεματικά''', επίρ.: ψεύτικα / ψεματικός.
'''ψένω''', ρ.: ψήνω / ψεμένος, ψεμέντζα, ψημέντζα, ψητέσα, ψεμένον, ψέουμαι, η ψεσ’ = ψήση, ψέσιμον, ψέσκομαι, ψέσον.
'''ψεύτες''', ο: ο ψεύτης / ο ψεύτας, η ψευτία, η ψεύτικεσα, ψευτύνω = διαψεύδω.
'''<u>ψ</u>ή''', η: η ψυχή / τα <u>ψ</u>ήα, το <u>ψ</u>όπον, <u>ψ</u>υχόπον, <u>ψ</u>υχοκόριτζον, <u>ψ</u>υχοπαίδ', <u>ψ</u>υχομάχεμαν.
'''ψηλέσα''', η: η ψηλή, ψηλόλεγνος, ψηλολεγνέσα, ψηλορραχέα, το ψήλος = ύψος.
'''ψηφίζω''', ρ.: υπολογίζω.
'''ψίνα''', τα: τα ψώνια / ψινίζω = ψωνίζω, το ψίνισμα, ψουνίζω, ψώντσον = ψώνισε.
'''ψοφεμένος''', ο: ψόφιος / το ψόφεμαν = ψοφίμι, το ψοφεμάτ', ψοφεμένος = τσιγκούνης, ψοφεμέντζα, ψοφένω, ψοφίζω.
'''ψύχος''', το: ο πυρετός / ψυχούμαι = παθαίνω ελονοσία, ψυχωμένος.
'''ψωμίν''' το: το ψωμί / ψωμία, ψωμίτζα = φέτα ψωμιού, ψωμάς, ψωμάβα = γυναίκα φούρναρη, ψωμόπον, ψωμοτάρεζον = ράφι ψωμιών, ψωμοφούρνιν, ψωμοσάνιδον.
'''Ω'''
'''ωβάζω''', ρ.: γεννώ αυγά / τα ωβά, ωβόπον, ωβάζ'νε, ώβασον, ώβασμαν, ωβαστάριν = κοτέτσι, ωβατσής = αβγουλάς, ωβότζεπλον.
'''ωμίν''', το: ο ώμος / τα ωμία.
'''ωρ<u>ά</u>ζω''', ρ: προσέχω, φυλάω / ωρ<u>ά</u>ζ'νε, ωρία = πρόσεχε, ωρ<u>ά</u>γουμαι = φυλάγομαι, το ώρ<u>α</u>σμαν, ώρ<u>ά</u>σον.
'''ώσπουτα''', σύνδ.: έως ότου.
'''ωτίν''', το: το αυτί / τα ωτία, ωτόπον, ωτόπονος.
== Βιβλιογραφία ==
*Άνθιμος Παπαδόπουλος
*Θωμάς Τσοπουρίδης
*Ποντιακή Λογοτεχνία
[[Κατηγορίαν:Γραμματικήν]]
8txqzp9bl34otay8b94kt218h62d5ya
23 Καλανταρί
0
858
37307
37075
2025-12-16T19:24:08Z
Εὐθυμένης
2777
37307
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[22 Καλανταρί]] | [[23 Καλανταρί]] | [[24 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''23 τη Καλανταρί''' εν 23ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 342 ημέρας για να τελούτεν η χρονία (343 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Απόθαναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[23 Χριστουγενναρί]] - [[23 Κούντουρονος]]
{{commonscat|23 January}}
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0107]]
rmfus2qpkjqf9grtei29cv9evebj3vc
Ρώμη
0
859
36854
34786
2025-12-16T09:56:06Z
Εὐθυμένης
2777
36854
wikitext
text/x-wiki
[[Αρχείον:Colosseum in Rome, Italy - April 2007.jpg|Κολοσσαίον|thumb|250px]]
Η '''Ρώμη''' εν [[Ιταλία|ιταλικόν]] πολιτείαν και εχ' τρανόν [[ιστορίαν]]. Εν η ασ' ουλτς τρανόν πολιτείαν και η [[πρωτεύουσα]] τη Ιταλίας. Οσήμερον εχ' πληθυσμόν 3.700.000 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{it}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Ιταλία]]
[[Κατηγορίαν:Πολιτείας τη Ιταλίας]]
k2rysjhanxlskq4fftdg1mp8e3zaell
Κατηγορίαν:Λαλίαν
14
860
31589
31211
2013-04-13T08:07:36Z
KLBot2
3570
Bot: Migrating 2 interwiki links, now provided by [[Wikidata]] on [[:d:Q4960490]]
31589
wikitext
text/x-wiki
{{Commonscat|Language}}
[[Κατηγορίαν:Πολιτισμόν]]
td4d6y3465ldkz7q36ueg4vvthnocel
Πρότυπον:Bienvenue
10
866
9950
9932
2009-12-04T14:39:11Z
Qoan
1170
9950
wikitext
text/x-wiki
<div style="float:right;border:1px dotted red;margin:5px;padding:2px;background:#FFF8DC;">(de) [[Πρότυπον:Willkommen|Willkommen]]<br> (pnt) [[Πρότυπον:Χαιρέτημαν|Χαιρέτημαν]] <br> (en) [[Πρότυπον:Welcome|Welcome]]<br> (es) [[Πρότυπον:Bienvenido|Bienvenido]]<br> (fr) [[Πρότυπον:Bienvenue|Bienvenue]]</div>
<includeonly>{{sub</includeonly><includeonly>st:BASEPAGENAME}}</includeonly><noinclude>ΧρήστηΤάδε</noinclude>, bienvenue sur la Wikipédia en pontique ! Si vous n'avez pas encore créé une page sur vous, vous pouvez le faire dès maintenant (l'onglet du haut est un lien vers votre page personnelle - cliquez dessus pour la créer). Vous pouvez changer la langue de l'interface en accédant à vos [[Special:Preferences|préférences]]. Voici d'autres liens utiles:
* [[:fr:Grec pontique|Informations sur le pontique en français]].
* Notre [[Βικιπαίδεια:Αγορά|Bistro]].
Si vous avez des questions n'hésitez pas à me laisser un mot sur ma page de discussion.
<noinclude>[[Κατηγορίαν:Πρότυπα Χαιρέτημαν|Bienvenue]]</noinclude>
cl30ritlsx2weny43ll68e2rjrmqs68
Βικιπαίδεια:Νέον Λεχτικόν
4
878
7845
2009-08-16T19:05:17Z
Omnipaedista
35
[[Βικιπαίδεια:Νέον Λεχτικόν]] ετερχλαεύτεν σο [[Βικιπαίδεια:Νέον λεχτικόν]]
7845
wikitext
text/x-wiki
#REDIRECT [[Βικιπαίδεια:Νέον λεχτικόν]]
prcwx8ar85io6pgr0wfo7b9cloqej7k
Λεχτικόν
0
879
34468
34461
2020-04-08T05:46:44Z
Tulsi
5081
Cross-wiki abuse
31450
wikitext
text/x-wiki
'''Λεχτικόν''' εν σύνολον λεξίων μίας λαλίας. Το λεχτικόν 'κ εν αναλλοίωτον, αλλά εξελίζκεται χρόνον με τον χρόνον.
[[Κατηγορίαν:Γλωσσολογίαν]]
7ismys6tlwig1ksiihmoxwjkfjvjqbc
Πρότυπον:Bienvenido
10
881
9952
9913
2009-12-04T14:39:53Z
Qoan
1170
9952
wikitext
text/x-wiki
<div style="float:right;border:1px dotted red;margin:5px;padding:2px;background:#FFF8DC;">(de) [[Πρότυπον:Willkommen|Willkommen]]<br> (pnt) [[Πρότυπον:Χαιρέτημαν|Χαιρέτημαν]]<br>
(en) [[Πρότυπον:Welcome|Welcome]]<br>
(es) [[Πρότυπον:Bienvenido|Bienvenido]]<br> (fr) [[Πρότυπον:Bienvenue|Bienvenue]]</div> <includeonly>{{sub</includeonly><includeonly>st:BASEPAGENAME}}</includeonly><noinclude>ΧρήστηΤάδε</noinclude>, ¡Bienvenido a la Wikipedia en Póntico!
Si aún no has creado tu página de usuario, puedes hacerlo ahora mismo (en la barra superior aparece tu nombre de usuario, haz click en él para crearla). Puedes cambiar el idioma de la interfaz yendo a tus [[Special:Preferences|preferencias]], en la sección ''internationalisation''.
Aquí tienes algunos vínculos útiles:
* [[:es:póntico|Información sobre el póntico]].
* Nuestro [[Βικιπαίδεια:Αγορά|café]].
Si tienes alguna pregunta, puedes hacérmela en mi página de discusión. <noinclude>[[Κατηγορίαν:Πρότυπα Χαιρέτημαν|Welcome]]</noinclude>
f59c94tm5wd75x49dmtnlicuk7g0u6a
Αραπάν
0
889
31212
30792
2013-03-07T20:32:06Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 132 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1420]] [[M:User:Addbot/WDS|(translate me)]]
31212
wikitext
text/x-wiki
[[Αρχείον:Benz-velo.jpg|thumb|Karl Benz 1894]]
'''Αραπάν''' εν τροχοφόρον όχημαν με μηχανήν. Τα αραπάτα πάσκουνταν σο μεσοστράτ, έχνε κάτσα για 1 ως 6 ανθρώπ'ς, έχνε 4 τροχούς και εφτάνουν τα για τη μεταφοράν τ' ανθρώπων.
Σο [[2002]] έτον 590.000.000 αραπάτα (1/11 ανθρώπ'ς).
== Ιστορίαν ==
Εφευρέθεν σην [[Γερμανία]] το [[1885]] ασόν Karl Benz.
[[Κατηγορίαν:Τεχνολογίαν]]
[[Κατηγορίαν:Αραπάδας]]
h19ivn504t1dhox7fv1dbsv6dlofkoh
Ιμπν Χαλντούν
0
894
33998
33957
2018-10-27T16:43:52Z
Wim b
3723
Ανάκληση των αλλαγών [[Special:Contributions/91.140.89.219|91.140.89.219]] ([[User talk:91.140.89.219|συζήτηση]]) επιστροφή στην προηγούμενη αναθεώρηση [[User:Wim b|Wim b]]
33946
wikitext
text/x-wiki
[[Εικόναν:Ibn Khaldoun-Kassus.jpg|200px|right|thumb|Ιμπν Χαλντούν]]
Ο Ιμπν Χαλντούν ([[27 Καλομηνά]], [[1332]]– [[19 Μαρτί]], [[1406]]) (Αραβικά: أبو زيد عبد الرحمن بن محمد بن خلدون الحضرمي) έτον Βορειοαφρικανός πολύμαθον — αστρονόμον, οικονομολόγον, ιστορικός, μελετητής και θεολόγον του Ισλάμ, νομολόγον, δικηγόρον, μαθηματικός, δεατροφολόγον, φιλόσοφον, κοινωνεολόγον και πολιτικον. Εγεννέθεν σην Βόρεον [[Αφρικήν]] ση σημερινήν [[Τυνησία|Τυνησίαν]]. Οι γονείσατου Περσικού καταγωγής έσαν. Έτον πρόδρομον τη: δημογραφίας, πολιτιστικού ιστορίας, ιστοριογραφίας, φιλοσοφίας τη ιστορίας, και κοινωνεολογίας.
Εν τσιπ γνωστός για το έργον ατού Μουκαντίμα (γιά Προλεγόμενον), τον πρώτον τόμον της καθολικής ιστορίας τη κόσμονος, Κιτάμπ αλ-Ιμπάρ.
Απέθανεν σο [[Κάιρον]].
[[Κατηγορίαν:Ιστορίαν]]
[[Κατηγορίαν:Αίγυπτος]]
ne8msukg1o7n87p4vnakkxh1my1tzd0
Κάιρον
0
895
36770
34850
2025-12-16T09:00:26Z
Εὐθυμένης
2777
36770
wikitext
text/x-wiki
[[Αρχείον:Cairo, evening view from the Tower of Cairo, Egypt, Oct 2004.jpg|right|thumb|Κάιρον|200px]]
Το Κάιρον εν η πρωτεύουσαν τς [[Αίγυπτος|Αιγύπτου]], ευρίετεν σον ποταμόν [[Νείλος|Νείλο]]. Οσήμερον εχ' πληθυσμόν 15.200.000 ανθρώπ κι εν η πιο τρανήν [[Πολιτείας|πολιτείαν]] τς [[Αφρικήν|Αφρικής]]. Τ' επίσημον όνεμαν ατής εν Αλ-Καχίρα (القاهرة).
== Ανθρώπ'ς ==
* [[Ιμπν Χαλντούν]]
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ar}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Αίγυπτος]]
qhkwwioefr4z92323atvpi2mvm4wqdh
MediaWiki:Gadget-HotCats.js
8
898
34746
34717
2021-03-06T15:04:14Z
Ladsgroup
3794
Maintenance: Replacing legacy global variable ([[phab:T72470]])
34746
javascript
text/javascript
/*
* HotCat: Adds an easy way to add, modify and remove categories
* Documentation: [[:en:User:TheDJ/HotCat]]
* Originally written by: Magnus Manske
* Modified for Pontic Wikipedia by [[User:ZaDiak]]
*
* This version was forked from //commons.wikimedia.org/w/index.php?title=MediaWiki:Gadget-HotCat.js&oldid=10204404
* Major changes:
* - blacklist code is disabled.
* - all code for the uploadForm has been removed
* - autocommit is disabled
* - will be enabled on pages without categories so that you can easily add them
* - uses javascript:void() as a dummy value for href in order to avoid a conflict with popups.
* - checks for {{Uncategorized}} and removes it if a category is added
* - does not use JSconfig for configuration options like its Commons original
* - tries to detect other categories and if possible, add to the end of them.
* - fixes a bug in the suggestion list with titles containing : character
* [[User:TheDJ]] 2008-03-12
<source lang="javascript"><nowiki> */
var hotcat_running = 0 ;
var hotcat_last_v = "" ;
var hotcat_exists_yes = "//upload.wikimedia.org/wikipedia/commons/thumb/b/be/P_yes.svg/20px-P_yes.svg.png" ;
var hotcat_exists_no = "//upload.wikimedia.org/wikipedia/commons/thumb/4/42/P_no.svg/20px-P_no.svg.png" ;
var hotcat_no_autocommit = 0;
// In Commons hotcat_suggestion_delay is configurable trough JSconfig
var hotcat_suggestion_delay = 100;
var hotcat_old_onsubmit = null;
var hotcat_nosuggestions = false;
// hotcat_nosuggestions is set to true if we don't have XMLHttp! (On IE6, XMLHttp uses
// ActiveX, and the user may deny execution.) If true, no suggestions will ever be
// displayed, and there won't be any checking whether the category exists.
// Lupo, 2008-01-20
var hotcat_modify_blacklist = new Array (
""
) ;
$( hotcat ) ;
function hotcat () {
if ( hotcat_check_action() ) return ; // Edited page, reloading anyway
// Do not add interface to protected pages, if user has no edit permission
// Also disable it on preview pages: on a preview, we *are* already editing,
// and HotCat must not open the page for editing a second time. Lupo, 2008-02-27
if( mw.config.get('wgAction') != "view" || document.getElementById('ca-viewsource' ) != null ||
mw.config.get('wgNamespaceNumber') == -1 )
return;
// If we have no Categories div, then add one
// TheDJ, 2008-02-28
var visible_catlinks = document.getElementById ('mw-normal-catlinks') || getElementsByClassName ( document , "p" , "catlinks" ) [0];
var hidden_catlinks = document.getElementById ('mw-hidden-catlinks');
if ( visible_catlinks == null || typeof( visible_catlinks ) == 'undefined' ) {
d3 = document.createElement ( "div" );
d3.id = "mw-normal-catlinks";
d3.innerHTML = '<a href="/wiki/Special:Categories" title="Special:Categories">Κατηγορίας</a>: ';
visible_catlinks = d3;
if ( hidden_catlinks ) {
// There are hidden categories.
hidden_catlinks.parentNode.insertBefore( d3, hidden_catlinks );
hidden_catlinks.parentNode.className = "catlinks";
} else {
// This page has no categories at all, lets create a section where we can add them.
var footer = getElementsByClassName ( document , "div" , "printfooter" ) [0];
if( !footer ) return; // We have no idea where we should add this.
d1 = document.createElement ( "div" );
d1.id = "catlinks";
d1.className = "catlinks";
d1.appendChild ( d3 );
footer.parentNode.insertBefore( d1, footer.nextSibling );
}
}
hotcat_modify_existing ( visible_catlinks ) ;
hotcat_append_add_span ( visible_catlinks ) ;
}
function hotcat_append_add_span ( catline ) {
var span_add = document.createElement ( "span" ) ;
var span_sep = document.createTextNode ( " | " ) ;
if ( catline.getElementsByTagName("span")[0] ) catline.appendChild ( span_sep ) ;
catline.appendChild ( span_add ) ;
hotcat_create_span ( span_add ) ;
}
String.prototype.ucFirst = function () {
return this.substr(0,1).toUpperCase() + this.substr(1,this.length);
}
function hotcat_is_on_blacklist ( cat_title ) {
if ( !cat_title ) return 0 ;
cat_title = cat_title.ucFirst.replace( /Κατηγορίαν:/gi, "" );
for ( var i = 0 ; i < hotcat_modify_blacklist.length ; i++ ) {
if ( cat_title.substr ( 0 , hotcat_modify_blacklist[i].length ) == hotcat_modify_blacklist[i] ) return 1 ;
}
return 0 ;
}
function hotcat_modify_span ( span , i ) {
//var cat_title = span.firstChild.getAttribute ( "title" ) ;
// This fails with MW 1.13alpha if the category is a redlink, because MW 1.13alpha appends
// [[MediaWiki:Red-link-title]] to the category name... we another way to get that category
// name. Lupo, 2008-02-27
var cat_title = span.firstChild.innerHTML; // without "Category:"
var sep1 = document.createTextNode ( " " ) ;
var a1 = document.createTextNode ( "(-)" ) ;
var remove_link = document.createElement ( "a" ) ;
// Set the href to a dummy value to make sure we don't move if somehow the onclick handler
// is bypassed.
remove_link.href = "#catlinks";
remove_link.onclick = hotcat_remove;
remove_link.appendChild ( a1 ) ;
span.appendChild ( sep1 ) ;
span.appendChild ( remove_link ) ;
// Disabled blacklist check TheDJ, 2008-02-28
// if ( hotcat_is_on_blacklist ( cat_title ) ) return ;
var mod_id = "hotcat_modify_" + i ;
var sep2 = document.createTextNode ( " " ) ;
var a2 = document.createTextNode ( "(±)" ) ;
var modify_link = document.createElement ( "a" ) ;
modify_link.id = mod_id ;
modify_link.href = "javascript:hotcat_modify(\"" + mod_id + "\");" ;
modify_link.appendChild ( a2 ) ;
span.appendChild ( sep2 ) ;
span.appendChild ( modify_link ) ;
}
function hotcat_modify_existing ( catline ) {
var spans = catline.getElementsByTagName ( "span" ) ;
for ( var i = 0 ; i < spans.length ; i++ ) {
hotcat_modify_span ( spans[i] , i ) ;
}
}
function hotcat_getEvt (evt) {
return evt || window.event || window.Event; // Gecko, IE, Netscape
}
function hotcat_evt2node (evt) {
var node = null;
try {
var e = hotcat_getEvt (evt);
node = e.target;
if (!node) node = e.srcElement;
} catch (ex) {
node = null;
}
return node;
}
function hotcat_evtkeys (evt) {
var code = 0;
try {
var e = hotcat_getEvt (evt);
if (typeof(e.ctrlKey) != 'undefined') { // All modern browsers
if (e.ctrlKey) code |= 1;
if (e.shiftKey) code |= 2;
if (e.altKey) code |= 4;
} else if (typeof (e.modifiers) != 'undefined') { // Netscape...
if (e.modifiers & Event.CONTROL_MASK) code |= 1;
if (e.modifiers & Event.SHIFT_MASK) code |= 2;
if (e.modifiers & Event.ALT_MASK) code |= 4;
}
} catch (ex) {
}
return code;
}
function hotcat_killEvt (evt)
{
try {
var e = hotcat_getEvt (evt);
if (typeof (e.preventDefault) != 'undefined') {
e.preventDefault();
e.stopPropagation()
} else
e.cancelBubble = true;
} catch (ex) {
}
}
function hotcat_remove (evt) {
var node = hotcat_evt2node (evt);
if (!node) return false;
// Get the category name from the original link to the category
var cat_title = node.parentNode.firstChild.innerHTML;
var editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href;
if ((hotcat_evtkeys (evt) & 1) || (hotcat_evtkeys (evt) & 4 )) // CTRL or ALT pressed?
editlk = editlk + '&hotcat_nocommit=1';
hotcat_killEvt (evt);
document.location = editlk + '&hotcat_removecat=' + encodeURIComponent(cat_title) ;
return false;
}
function hotcatGetParamValue(paramName, h) {
if (typeof(h) == 'undefined' ) { h = document.location.href; }
var cmdRe=RegExp('[&?]'+paramName+'=([^&]*)');
var m=cmdRe.exec(h);
if (m) {
try {
return decodeURIComponent(m[1]);
} catch (someError) {}
}
return null;
}
// New. Code by Lupo & Superm401, added by Lupo, 2008-02-2007
function hotcat_find_category (wikitext, category)
{
var cat_name = category.replace(/([\\\^\$\.\?\*\+\(\)])/g, "\\$1");
var initial = cat_name.substr (0, 1);
var cat_regex = new RegExp ("\\[\\[\\s*[Κκ]ατηγορίαν\\s*:\\s*"
+ (initial == "\\"
? initial
: "[" + initial.toUpperCase() + initial.toLowerCase() + "]")
+ cat_name.substring (1).replace (/[ _]/g, "[ _]")
+ "\\s*(\\|.*?)?\\]\\]", "g"
);
var result = new Array ();
var curr_match = null;
while ((curr_match = cat_regex.exec (wikitext)) != null) {
result [result.length] = {match : curr_match};
}
return result; // An array containing all matches, with positions, in result[i].match
}
// New. Code by TheDJ, 2008-03-12
function hotcat_find_ins ( wikitext )
{
var re = /\[\[(?:Category):[^\]]+\]\]/ig
var index = -1;
while( re.exec(wikitext) != null ) index = re.lastIndex;
if( index > -1) return index;
//we should try to find interwiki links here, but that's for later.
return -1;
}
// Rewritten (nearly) from scratch. Lupo, 2008-02-27
function hotcat_check_action () {
var ret = 0;
if (mw.config.get('wgAction') != 'edit' || typeof(document.editform) == "undefined" ) return ret; // Not an edit page, so not our business...
var summary = new Array () ;
var t = document.editform.wpTextbox1.value ;
var prevent_autocommit = 0;
if ( (typeof (hotcat_no_autocommit) != "undefined" && hotcat_no_autocommit)
|| hotcatGetParamValue ('hotcat_nocommit') == '1')
prevent_autocommit = 1;
var cat_rm = hotcatGetParamValue ('hotcat_removecat');
var cat_add = hotcatGetParamValue ('hotcat_newcat');
var cat_key = null;
if (cat_rm != null && cat_rm.length > 0) {
var matches = hotcat_find_category (t, cat_rm);
if (!matches || matches.length == 0) {
alert ('Η κατηγορίαν "' + cat_rm + '" ουκ ευρέθεν;?');
prevent_autocommit = 1;
} else if (matches.length > 1) {
alert ('Η κατηγορίαν "' + cat_rm
+ "\" ευρέθεν πολλάς φοράς");
prevent_autocommit = 1;
} else {
if (cat_add != null && cat_add.length > 0 && matches[0].match.length > 1)
cat_key = matches[0].match[1]; // Remember the category key, if any.
var t1 = t.substring (0, matches[0].match.index);
var t2 = t.substring (matches[0].match.index + matches[0].match[0].length);
// Remove whitespace (properly): strip whitespace, but only up to the next line feed.
// If we then have two linefeeds in a row, remove one. Otherwise, if we have two non-
// whitespace characters, insert a blank.
var i = t1.length - 1;
while (i >= 0 && t1.charAt (i) != '\n' && t1.substr (i, 1).search (/\s/) >= 0) i--;
var j = 0;
while (j < t2.length && t2.charAt (j) != '\n' && t1.substr (j, 1).search (/\s/) >= 0) j++;
if (i >= 0 && t1.charAt (i) == '\n' && j < t2.length && t2.charAt (j) == '\n')
i--;
if (i >= 0) t1 = t1.substring (0, i+1); else t1 = "";
if (j < t2.length) t2 = t2.substring (j); else t2 = "";
if (t1.length > 0 && t1.substring (t1.length - 1).search (/\S/) >= 0
&& t2.length > 0 && t2.substr (0, 1).search (/\S/) >= 0)
t1 = t1 + ' ';
t = t1 + t2;
summary.push ( "Σβήσον κατηγορίαν \"" + cat_rm + "\"" ) ;
ret = 1;
}
}
if (cat_add != null && cat_add.length > 0) {
var matches = hotcat_find_category (t, cat_add);
if (matches && matches.length > 0) {
alert ('Η κατηγορίαν "' + cat_add + '" εν σην σελίδαν, ουκ προστέθεν.');
prevent_autocommit = 1;
} else {
var insertionpoint = hotcat_find_ins( t );
var newcatstring = '\n\[\[Κατηγορίαν:' + cat_add + (cat_key != null ? cat_key : "") + '\]\]';
if( insertionpoint > -1 ) {
t = t.substring(0, insertionpoint ) + newcatstring + t.substring( insertionpoint );
} else {
t = t + newcatstring;
}
summary.push ( "Γοργήν προσθήκην κατηγορίας \"" + cat_add + "\"" ) ;
var t2 = t.replace(/\{\{[Uu]ncategorized[^}]*\}\}/g, ""); // Remove "uncategorized" template
if (t2.length != t.length) {
t = t2;
summary.push ( "removed {{uncategorized}}" ) ;
}
ret = 1;
}
}
if (ret) {
document.editform.wpTextbox1.value = t ;
document.editform.wpSummary.value = summary.join( "; " )
+ " ('''HotCat''')" ;
document.editform.wpMinoredit.checked = true ;
if (!prevent_autocommit) {
// Hide the entire edit section so as not to tempt the user into editing...
var bodyContentId = document.getElementById("bodyContent") || document.getElementById("mw_contentholder");
bodyContentId.style.display = "none";
document.editform.submit();
}
}
return ret;
}
function hotcat_clear_span ( span_add ) {
while ( span_add.firstChild ) span_add.removeChild ( span_add.firstChild ) ;
}
function hotcat_create_span ( span_add ) {
hotcat_clear_span ( span_add ) ;
var a_add = document.createElement ( "a" ) ;
var a_text = document.createTextNode ( "(+)" ) ;
span_add.id = "hotcat_add" ;
a_add.href = "javascript:hotcat_add_new()" ;
a_add.appendChild ( a_text ) ;
span_add.appendChild ( a_add ) ;
}
function hotcat_modify ( link_id ) {
var link = document.getElementById ( link_id ) ;
var span = link.parentNode ;
var catname = span.firstChild.innerHTML; // was .firstChild.data. Just for consistency
while ( span.firstChild.nextSibling ) span.removeChild ( span.firstChild.nextSibling ) ;
span.firstChild.style.display = "none" ;
hotcat_create_new_span ( span , catname ) ;
hotcat_last_v = "" ;
hotcat_text_changed () ; // Update icon
}
function hotcat_add_new () {
var span_add = document.getElementById ( "hotcat_add" ) ;
hotcat_clear_span ( span_add ) ;
hotcat_last_v = "" ;
hotcat_create_new_span ( span_add , "" ) ;
}
function hotcat_create_new_span ( thespan , init_text ) {
var form = document.createElement ( "form" ) ;
form.method = "post" ;
form.onsubmit = function () { hotcat_ok(); return false; } ;
form.id = "hotcat_form" ;
form.style.display = "inline" ;
var list = null;
if (!hotcat_nosuggestions) {
// Only do this if we may actually use XMLHttp...
list = document.createElement ( "select" ) ;
list.id = "hotcat_list" ;
list.onclick = function ()
{
var l = document.getElementById("hotcat_list");
if (l != null)
document.getElementById("hotcat_text").value = l.options[l.selectedIndex].text;
hotcat_text_changed();
};
list.ondblclick = function (evt)
{
var l = document.getElementById("hotcat_list");
if (l != null)
document.getElementById("hotcat_text").value = l.options[l.selectedIndex].text;
// Don't call text_changed here if on upload form: hotcat_ok will remove the list
// anyway, so we must not ask for new suggestions since show_suggestions might
// raise an exception if it tried to show a no longer existing list.
// Lupo, 2008-01-20
hotcat_text_changed();
hotcat_ok((hotcat_evtkeys (evt) & 1) || (hotcat_evtkeys (evt) & 4)); // CTRL or ALT pressed?
};
list.style.display = "none" ;
}
var text = document.createElement ( "input" ) ;
text.size = 40 ;
text.id = "hotcat_text" ;
text.type = "text" ;
text.value = init_text ;
text.onkeyup = function () { window.setTimeout("hotcat_text_changed();", hotcat_suggestion_delay ); } ;
var exists = null;
if (!hotcat_nosuggestions) {
exists = document.createElement ( "img" ) ;
exists.id = "hotcat_exists" ;
exists.src = hotcat_exists_no ;
}
var OK = document.createElement ( "input" ) ;
OK.type = "button" ;
OK.value = "Εγέντον" ;
OK.onclick = function (evt) { hotcat_ok ((hotcat_evtkeys (evt) & 1) || (hotcat_evtkeys (evt) & 4)); }; // CTRL or ALT pressed?
var cancel = document.createElement ( "input" ) ;
cancel.type = "button" ;
cancel.value = "Άκυρον" ;
cancel.onclick = hotcat_cancel ;
if (list != null) form.appendChild ( list ) ;
form.appendChild ( text ) ;
if (exists != null) form.appendChild ( exists ) ;
form.appendChild ( OK ) ;
form.appendChild ( cancel ) ;
thespan.appendChild ( form ) ;
text.focus () ;
}
function hotcat_ok (nocommit) {
var text = document.getElementById ( "hotcat_text" ) ;
var v = text.value ;
// Empty category ?
if ( v == "" ) {
hotcat_cancel() ;
return ;
}
var editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href;
var url = editlk + '&hotcat_newcat=' + encodeURIComponent( v ) ;
// Editing existing?
var span = text.parentNode.parentNode ; // span.form.text
if ( span.id != "hotcat_add" ) { // Not plain "addition"
url += '&hotcat_removecat=' + span.firstChild.innerHTML;
}
if (nocommit) url = url + '&hotcat_nocommit=1';
document.location = url ;
}
function hotcat_just_add ( text ) {
var span = document.getElementById("hotcat_form") ;
while ( span.tagName != "SPAN" ) span = span.parentNode ;
var add = 0 ;
if ( span.id == "hotcat_add" ) add = 1 ;
span.id = "" ;
while ( span.firstChild ) span.removeChild ( span.firstChild ) ;
var na = document.createElement ( "a" ) ;
na.href = mw.config.get('wgArticlePath').split("$1").join("Κατηγορίαν:" + encodeURI (text)) ;
na.appendChild ( document.createTextNode ( text ) ) ;
na.setAttribute ( "title" , "Κατηγορίαν:" + text ) ;
span.appendChild ( na ) ;
var catline = getElementsByClassName ( document , "p" , "catlinks" ) [0] ;
if ( add ) hotcat_append_add_span ( catline ) ;
for ( var i = 0 ; i < span.parentNode.childNodes.length ; i++ ) {
if ( span.parentNode.childNodes[i] != span ) continue ;
hotcat_modify_span ( span , i ) ;
break ;
}
}
function hotcat_cancel () {
var span = document.getElementById("hotcat_form").parentNode ;
if ( span.id == "hotcat_add" ) {
hotcat_create_span ( span ) ;
} else {
while ( span.firstChild.nextSibling ) span.removeChild ( span.firstChild.nextSibling ) ;
span.firstChild.style.display = "" ;
for ( var i = 0 ; i < span.parentNode.childNodes.length ; i++ ) {
if ( span.parentNode.childNodes[i] != span ) continue ;
hotcat_modify_span ( span , i ) ;
break ;
}
}
}
function hotcat_text_changed () {
if ( hotcat_running ) return ;
var text = document.getElementById ( "hotcat_text" ) ;
var v = text.value.ucFirst() ;
if ( hotcat_last_v == v ) return ; // Nothing's changed...
if (hotcat_nosuggestions) {
// On IE, XMLHttp uses ActiveX, and the user may deny execution... just make sure
// the list is not displayed.
var list = document.getElementById ('hotcat_list');
if (list != null) list.style.display = "none" ;
var exists = document.getElementById ('hotcat_exists');
if (exists != null) exists.style.display = "none" ;
return;
}
hotcat_running = 1 ;
hotcat_last_v = v ;
if ( v != "" ) {
var url = mw.config.get('wgServer') + wgScriptPath
+ "/api.php?format=xml&action=query&list=allpages&apnamespace=14&apfrom="
+ encodeURIComponent( v ) ;
var request = sajax_init_object() ;
if (request == null) {
//Oops! We don't have XMLHttp...
hotcat_nosuggestions = true;
var list = document.getElementById ('hotcat_list');
if (list != null) list.style.display = "none" ;
var exists = document.getElementById ('hotcat_exists');
if (exists != null) exists.style.display = "none" ;
hotcat_running = 0;
return;
}
request.open('GET', url, true);
request.onreadystatechange = function () {
if (request.readyState == 4) {
var xml = request.responseXML ;
if ( xml == null ) return ;
var pages = xml.getElementsByTagName( "p" ) ;
var titles = new Array () ;
for ( var i = 0 ; i < pages.length ; i++ ) {
// Strip "Category:" but don't break on titles like "Category:Space: 2001 a space odyssey"
var s = pages[i].getAttribute("title").replace( /Κατηγορίαν:/gi, "" );
if ( s.substr ( 0 , hotcat_last_v.length ) != hotcat_last_v ) break ;
titles.push ( s ) ;
}
hotcat_show_suggestions ( titles ) ;
}
};
request.setRequestHeader ('Pragma', 'cache=yes');
request.setRequestHeader ('Cache-Control', 'no-transform');
request.send(null);
} else {
hotcat_show_suggestions ( new Array () ) ;
}
hotcat_running = 0 ;
}
function hotcat_show_suggestions ( titles ) {
var text = document.getElementById ( "hotcat_text" ) ;
var list = document.getElementById ( "hotcat_list" ) ;
var icon = document.getElementById ( "hotcat_exists" ) ;
// Somehow, after a double click on the selection list, we still get here in IE, but
// the list may no longer exist... Lupo, 2008-01-20
if (list == null) return;
if (hotcat_nosuggestions) {
list.style.display = "none" ;
if (icon != null) icon.style.display = "none";
return;
}
if ( titles.length == 0 ) {
list.style.display = "none" ;
icon.src = hotcat_exists_no ;
return ;
}
// Set list size to minimum of 5 and actual number of titles. Formerly was just 5.
// Lupo, 2008-01-20
list.size = (titles.length > 5 ? 5 : titles.length) ;
// Avoid list height 1: double-click doesn't work in FF. Lupo, 2008-02-27
if (list.size == 1) list.size = 2;
list.style.align = "left" ;
list.style.zIndex = 5 ;
list.style.position = "absolute" ;
// Was listh = titles.length * 20: that makes no sense if titles.length > list.size
// Lupo, 2008-01-20
var listh = list.size * 20;
var nl = parseInt (text.offsetLeft) - 1 ;
var nt = parseInt (text.offsetTop) - listh ;
list.style.top = nt + "px" ;
list.style.width = text.offsetWidth + "px" ;
list.style.height = listh + "px" ;
list.style.left = nl + "px" ;
while ( list.firstChild ) list.removeChild ( list.firstChild ) ;
for ( var i = 0 ; i < titles.length ; i++ ) {
var opt = document.createElement ( "option" ) ;
var ot = document.createTextNode ( titles[i] ) ;
opt.appendChild ( ot ) ;
//opt.value = titles[i] ;
list.appendChild ( opt ) ;
}
icon.src = hotcat_exists_yes ;
var nof_titles = titles.lenght;
var first_title = titles.shift () ;
var v = text.value.ucFirst() ;
if ( first_title == v ) {
if( nof_titles == 1 ) {
// Only one result, and it's the same as whatever is in the input box: makes no sense
// to show the list. But make sure the text field has the focus !
text.focus();
list.style.display = "none";
}
return;
}
list.style.display = "block" ;
// Put the first entry of the title list into the text field, and select the
// new suffix such that it'll be overwritten if the user keeps typing.
// ONLY do this if we have a way to select parts of the content of a text
// field, otherwise, this is very annoying for the user. Note: IE does it
// again differently from the two versions previously implemented.
// Lupo, 2008-01-20
// Only put first entry into the list if the user hasn't typed something
// conflicting yet Dschwen 2008-02-18
if ( ( text.setSelectionRange ||
text.createTextRange ||
typeof (text.selectionStart) != 'undefined' &&
typeof (text.selectionEnd) != 'undefined' ) &&
v == first_title.substr(0,v.length) )
{
// taking hotcat_last_v was a major annoyance,
// since it constantly killed text that was typed in
// _since_ the last AJAX request was fired! Dschwen 2008-02-18
var nosel = v.length ;
text.value = first_title ;
if (text.setSelectionRange) // e.g. khtml
text.setSelectionRange (nosel, first_title.length);
else if (text.createTextRange) { // IE
var new_selection = text.createTextRange();
new_selection.move ("character", nosel);
new_selection.moveEnd ("character", first_title.length - nosel);
new_selection.select();
} else {
text.selectionStart = nosel;
text.selectionEnd = first_title.length;
}
}
}
/* </nowiki></source> */
dcyjenj14euzn8ram3v4xmdcxih652e
MediaWiki:Gadget-HotCats
8
899
8453
2009-09-08T12:18:40Z
ZaDiak
10
Καινούρεον σελίδαν με 'HotCats: Εργαλείον για ποίσον, άλλαγμαν και σβήσον κατηγορίας.'
8453
wikitext
text/x-wiki
HotCats: Εργαλείον για ποίσον, άλλαγμαν και σβήσον κατηγορίας.
ckrpwj6vtzgc1qh8tv8f3pds4xuf2nn
MediaWiki:Gadgets-definition
8
900
34340
8454
2019-12-11T16:09:15Z
WikiBayer
7202
[ResourceLoader]
34340
wikitext
text/x-wiki
*HotCats[ResourceLoader]|HotCats.js
99vwf884u7rpprvl15fjhigvnxhh1l4
Κατηγορίαν:Αίγυπτος
14
901
31215
30299
2013-03-07T20:32:39Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 156 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1411674]] [[M:User:Addbot/WDS|(translate me)]]
31215
wikitext
text/x-wiki
*
{{Commonscat|Egypt}}
[[Κατηγορίαν:Κράτη]]
itb3phiokcctno1861ryjd5pcaf2zck
16 Σταυρί
0
903
37230
37187
2025-12-16T18:51:47Z
Εὐθυμένης
2777
37230
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[15 Σταυρί]] | [[16 Σταυρί]] | [[17 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''16 Σταυρί''' εν 259ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 260ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 106 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
*[[2007]]: Ασού εξέβεν πρώτον σα βουλευτικά εκλογάς τη 16 Σταυρί ο πρωθυπουργόν [[Κωνσταντίνος Καραμανλής|Κωνσταντίνον Καραμανλής]] σχηματίζ' καινούρεον [[Κυβέρνηση Κωνσταντίνονος Α. Καραμανλή 2007|κυβέρνησην]].
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[16 Αλωναρί]] - [[16 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0916]]
pvp904n84ncx1d544byovdqqznt8jl2
17 Σταυρί
0
904
37231
37192
2025-12-16T18:52:02Z
Εὐθυμένης
2777
37231
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[16 Σταυρί]] | [[17 Σταυρί]] | [[18 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''17 Σταυρί''' εν 260ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 261ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 105 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[17 Αλωναρί]] - [[17 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0917]]
reywnttw9b1tzfbi9hoqleh0070g8mg
18 Σταυρί
0
905
37232
37169
2025-12-16T18:58:11Z
Εὐθυμένης
2777
37232
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[17 Σταυρί]] | [[18 Σταυρί]] | [[19 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''18 Σταυρί''' εν 261ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 262ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 104 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[18 Αλωναρί]] - [[18 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0918]]
75g310q8lzns5l8824zjd4xbwakr2o7
19 Σταυρί
0
906
37233
37176
2025-12-16T18:58:25Z
Εὐθυμένης
2777
37233
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[18 Σταυρί]] | [[19 Σταυρί]] | [[20 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''19 Σταυρί''' εν 262ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 263ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 103 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[19 Αλωναρί]] - [[19 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0919]]
mjoxarfwcejg66kylu4s9bcstojsxuc
20 Σταυρί
0
907
37234
37167
2025-12-16T18:58:40Z
Εὐθυμένης
2777
37234
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[19 Σταυρί]] | [[20 Σταυρί]] | [[21 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''20 Σταυρί''' εν 263ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 264ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 102 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
* [[Ορθόδοξον Εγκλεσία|Ορθόδοξον Εγκλεσίαν]]: Ευσταθίου τη Μεγαλομάρτυρα, και τη συνοδείας ατουνού, Θεοπίστης τ'ατουνού γαρής, Αγαπίου κ' Θεόπιστου τ'ατουνού παιδία (σα 118 τη χρονίαν).
'''Τερέστεν πα:'''
* [[20 Αλωναρί]] - [[20 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0920]]
kzqs3d7evi3jeybylz4m27agii35ow0
Νείλος
0
909
34862
31221
2021-08-10T19:09:11Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.8
34862
wikitext
text/x-wiki
[[Εικόναν:Ägypten am Nil.jpg|250px|right|thumb|Ο Νείλος]]
Ο '''Νείλος''' εν ποτάμιν κι ευρίεται σην [[Αφρικήν]]. Εν το τρανότερον ποτάμιν σον κόσμον. Ο Νείλος εχ' δυο τρανούς κλώνους: τον Λευκόν Νείλον και τον Μπλε Νείλον ασήν Αιθιοπίαν. Απεκεί πάει σην Αίγυπτον κι εκεί ξύνεται σην [[Μεσόγειον Θάλασσα|Μεσόγειον τη Θάλασσαν]] εφτάοντας Δέλτα.
== Τ' όνεμαν ==
Τ' όνεμαν Νείλος εν Παλαιόν Ελλενικόν και εν ασήν σημιτικήν ρίζαν ''νάχαλ'' τεμέκ κοιλάδαν γιά ποτάμιν (ασή μετάφρασην ποτάμιν-κοιλάδαν).
== Απόθεν κατεβαίν' ==
Ο Νείλος εν το τρανότερον ποτάμιν (μάκρον) σην Αφρικήν, αλλά και σ' ούλον τον κόσμον. Εβγών ασά νότια τ' Ισημερινού, ξύνει σην Μεσόγειον Θάλασσα. Εν 6.650 χμ μακρόν και ξύνει σε 3.349.000 τ.χμ. Δαβαίν' την [[Τανζανία|Τανζανίαν]], το [[Μπουρούντι]], την [[Ρουάντα]], το [[Ζαΐρ]], την [[Κένυα|Κένυαν]], την [[Ουγκάντα]], την [[Αιθιοπία|Αιθιοπίαν]], το [[Σουδάν]] και την [[Αίγυπτος|Αίγυπτον]]. Ο Νείλος αχπάσκεται ασόν Κυανόν Νείλον (Αμπάι), τον Άτμπαρα, και τον Λευκόν Νείλον.
== Συνδέζμαι ==
* [https://web.archive.org/web/20070104025227/http://www.rhodes.aegean.gr/sxedia/grafdaskalou/afriki/wwwroot/mysite7/O_neilos.htm Ο ΝΕΙΛΟΣ]
[[Κατηγορίαν:Αίγυπτος]]
[[Κατηγορίαν:Ποτάμαι]]
t1uits3pq8x22vv16n0v96lwxa2im9k
21 Σταυρί
0
912
37235
37173
2025-12-16T18:58:54Z
Εὐθυμένης
2777
37235
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[20 Σταυρί]] | [[21 Σταυρί]] | [[22 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''21 Σταυρί''' εν 264ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 265ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 101 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[21 Αλωναρί]] - [[21 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0921]]
gnxb3ev4abrgtf75qdq44jlo5qxn9gg
22 Σταυρί
0
913
37236
37166
2025-12-16T18:59:10Z
Εὐθυμένης
2777
37236
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[21 Σταυρί]] | [[22 Σταυρί]] | [[23 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''22 Σταυρί''' εν 265ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 266ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 100 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[22 Αλωναρί]] - [[22 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0922]]
putllvobn6iqcydr38sq5ibe0r4a6ua
24 Σταυρί
0
914
37238
37188
2025-12-16T18:59:43Z
Εὐθυμένης
2777
37238
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[23 Σταυρί]] | [[24 Σταυρί]] | [[25 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''24 Σταυρί''' εν 267ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 268ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 98 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[24 Αλωναρί]] - [[24 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0924]]
ahboiuqgxyhxi9c1rf84wmzoimdhsrn
25 Σταυρί
0
915
37239
37177
2025-12-16T18:59:58Z
Εὐθυμένης
2777
37239
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[24 Σταυρί]] | [[25 Σταυρί]] | [[26 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''25 Σταυρί''' εν 268ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 269ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 97 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[25 Αλωναρί]] - [[25 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0925]]
s46z5tllm7ljzvnbwj9un6x02mq1s8y
26 Σταυρί
0
916
37240
37171
2025-12-16T19:00:13Z
Εὐθυμένης
2777
37240
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[25 Σταυρί]] | [[26 Σταυρί]] | [[27 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''26 Σταυρί''' εν 269ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 270ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 96 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[26 Αλωναρί]] - [[26 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0926]]
2vm4uytvmddodrwr5l63rhhv2fajt4x
27 Σταυρί
0
917
37241
37196
2025-12-16T19:00:28Z
Εὐθυμένης
2777
37241
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[26 Σταυρί]] | [[27 Σταυρί]] | [[28 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''27 Σταυρί''' εν 270ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 271ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 95 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
* [[1984]]: [[Αβρίλ Λαβίν]], τραγουδίστρια ασον Καναδάν.
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[27 Αλωναρί]] - [[27 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0927]]
prnhvtzi52qfaicqqymb4znysyr6i23
28 Σταυρί
0
918
37242
37185
2025-12-16T19:00:44Z
Εὐθυμένης
2777
37242
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[27 Σταυρί]] | [[28 Σταυρί]] | [[29 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''28 Σταυρί''' εν 271ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 272ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 94 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[28 Αλωναρί]] - [[28 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0928]]
91cji798o43036odib4keu9sq49ywij
29 Σταυρί
0
919
37243
37180
2025-12-16T19:00:58Z
Εὐθυμένης
2777
37243
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[28 Σταυρί]] | [[29 Σταυρί]] | [[30 Σταυρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''29 Σταυρί''' εν 272ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 273ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 93 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[29 Αλωναρί]] - [[29 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0929]]
96pcjdnb6307i2yue55h7hg9hnx83dr
30 Σταυρί
0
920
37244
37175
2025-12-16T19:01:17Z
Εὐθυμένης
2777
37244
wikitext
text/x-wiki
<div class="center">[[Χορτοθέρτς]] | [[Αλωνάρτς]] | '''[[Σταυρίτες]]''' | [[Τρυγομηνάς]] | [[Αεργίτες]]</div>
<div class="center">[[29 Σταυρί]] | [[30 Σταυρί]] | [[1 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|9}}
'''30 Σταυρί''' εν 273ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 274ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 92 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[30 Αλωναρί]] - [[30 Τρυγομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0930]]
fpviqlbq790kktk5geyoh9fphvulagm
Τραπεζούντα
0
921
36747
36703
2025-12-16T08:39:19Z
Εὐθυμένης
2777
36747
wikitext
text/x-wiki
[[Εικόναν:Trabzon Turkey Provinces locator.gif|thumb|right|350px|Η τοποθεσία τση Τραπεζούντας σο σύγχρονον χάρτην τση Τουρκίας.]]
Η '''Τραπεζούντα''' ([[τούρκικα]]: '''Trabzon''', λάζικα: '''Ťrabuzeni'''), μια πόλη ση [[Μαύρον Θάλασσα|Μαυροθαλάσσας]] το γιαλό ση σημερινόν [[Τουρκία|Τουρκίαν]], και του [[Κρατίδιο τση Τραπεζούντας|Κρατίδιου τση Τραπεζούντας]] η μετρόπολη εν.
== Ιστορία ==
Εθεμελίωσαν την πόλην οι [[Mίλητος|Mιλήσιοι]] πουλητάντοι ασή [[Σινώπη|Σινώπης]] σην [[Κλασική Αρχαιότητα|Κλασικήν Αρχαιότηταν]] σο χρόνο 756 π.Κ.Ε.<ref name="Bosneagu2022">{{cite book|author=Romeo Bosneagu|date=2022-02-22|title=The Black Sea from Paleogeography to Modern Navigation: Applied Maritime Geography and Oceanography|publisher=Springer Nature|pages=|isbn=978-3-03-088762-9|oclc=1299382109|url=https://books.google.com/books?id=lr9gEAAAQBAJ}}</ref> Σο 11ο κατόχρονο, η Τραπεζούντα ελληνικόν αποικίαν σου Βυζάντιου έτονε, και ίσταρο, σο 13ο κατόχρονο, τση [[Αυτοκρατορίας τση Τραπεζούντας]] η μετρόπολη εγέντονε.
== Τερέστεν και εκεί ==
* [[Αυτοκρατορία τη Τραπεζούντος|Αυτοκρατορία τση Τραπεζούντας]]
* [[Δαβίδ Τρανόν Κομνηνός]]
== Παραπομπές ==
<references />
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Τραπεζουντα}}
[[Κατηγορίαν:Πόντος]]
[[Κατηγορίαν:Πολιτείας τη Τουρκίας]]
nlh5h9ta8jwn1s6vk9iodmanay87j3n
Πρότυπον:Coord
10
923
37391
10482
2025-12-20T13:43:27Z
Εὐθυμένης
2777
37391
wikitext
text/x-wiki
<includeonly>{{#invoke:Coordinates|coord}}<!--
-->{{#coordinates:{{{1|}}}|{{{2|}}}|{{{3|}}}|{{{4|}}}|{{{5|}}}|{{{6|}}}|{{{7|}}}|{{{8|}}}|{{{9|}}}
|{{#switch:{{{display|}}}
|inline,title
|inline, title
|it
|t
|title,inline
|title={{#switch:{{SUBPAGENAME}}
|doc
|testcases=
|#default={{talk other||primary}}
}}
|#default=
}}
|name={{{name|}}}
}}</includeonly><noinclude>Για οδηγίες χρήσης τερέστεν ση [[Βικιπαίδεια:Επιχείρησην Γεωγραφικά Συντεταγμένες|Επιχείρησην Γεωγραφικά Συντεταγμένας]]
{{Documentation}}
</noinclude>
17v9zzd2t6pb722g7zj5cm7gy75dpbb
Πρότυπον:Coord/display/title
10
924
36453
10789
2025-12-15T16:31:59Z
Εὐθυμένης
2777
36453
wikitext
text/x-wiki
<span id="coordinates">[[Γεωγραφικά συντεταγμένας|Συντεταγμένας]]: {{{1}}}</span><noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
rk6lq92n9wg1nvjoe3nd2d5mzpik8k1
Πρότυπον:Τεκμηρίωση προτύπου
10
925
36524
8630
2025-12-15T17:53:56Z
Εὐθυμένης
2777
Ανακατεύθυνση στη σελίδα [[Πρότυπον:Documentation]]
36524
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Documentation]]
a5da8np5uhxvnt72gzd7vgo5qlz114u
Πρότυπον:Coord/input/dec
10
928
36450
10788
2025-12-15T16:29:29Z
Εὐθυμένης
2777
36450
wikitext
text/x-wiki
<includeonly>{{Coord/link|dms-lat={{coord/dec2dms|{{{1}}}|N|S|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}|dms-long={{coord/dec2dms|{{{2}}}|E|W|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}|dec-lat={{{1}}}|dec-long={{{2}}}|param={{{1}}}_N_{{{2}}}_E_{{{3|}}}|default={{#if:{{{format|}}}|{{{format}}}|dec}}|name={{{name|}}}
}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
0of0vzpoaoincwvqqpakqiupc5g5mg9
Πρότυπον:Coord/link
10
929
36437
8639
2025-12-15T16:18:16Z
Εὐθυμένης
2777
36437
wikitext
text/x-wiki
<span class="plainlinksneverexpand">[{{Coor URL}}{{{param}}}{{#if:{{{name|}}}|&title={{urlencode:{{{name}}}}}}} <span class="{{#ifeq:{{{default|}}}|dec|geo-nondefault|geo-default}}"><span class="geo-dms" title="Χάρτες, αεροφωτογραφίες και άλλες πληροφορίες για {{{dms-lat}}} {{{dms-long}}}"><span class="latitude">{{{dms-lat}}}</span> <span class="longitude">{{{dms-long}}}</span></span></span><span class="geo-multi-punct"> / </span><span class="{{#ifeq:{{{default|}}}|dec|geo-default|geo-nondefault}}">{{#if:{{{name|}}}|<span class="vcard">|}}<span class="geo-dec geo" title="Χάρτες, αεροφωτογραφίες και άλλες πληροφορίες για {{{dec-lat}}} {{{dec-long}}}"><span class="latitude">{{{dec-lat}}}</span>, <span class="longitude">{{{dec-long}}}</span></span>{{#if:{{{name|}}}|<span style="display:none"> (<span class="fn org">{{{name|}}}</span>)</span></span>|}}]</span><noinclude>
[[Κατηγορίαν:Coord template|Link]]{{τεκμηρίωση προτύπου}}
</noinclude>
srpo9p8sx5pxob0hvzktz87ilg1j2zw
Βικιπαίδεια:1000 σελίδας
4
930
31428
31232
2013-03-11T10:23:20Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5460604]] [[M:User:Addbot/WDS|(translate me)]]
31428
wikitext
text/x-wiki
Ατή η σελίδαν έχ' τρανά σελίδας πη πρεπ' να εχ' και η Ποντιακήν Βικιπαίδεια. Πηγήν ατής έτον το [[meta:List of articles every Wikipedia should have/Version 1.0]].
== Βιογραφίαν (319 σελίδας) ==
=== Ηθοποιοί, χορευτές και μοντέλα (8 σελίδας) ===
# [[Μάρλον Μπράντο]]
# [[Τσάρλι Τσάπλιν]]
# [[Μάρλεν Ντήτριχ|Μάρλεν Ντίτριχ]]
# [[Μέριλιν Μονρόε]]
# [[Τζον Γουέιν]]
# [[Μπριζίτ Μπαρντό]]
# [[Μπρους Λη]]
# [[Ρούντολφ Νουρέγιεφ]]
=== Καλλιτέχνες και αρχιτέκτονες (26 σελίδας) ===
# [[Πωλ Σεζάν]]
# [[Λε Κορμπυζιέ]]
# [[Σαλβαδόρ Νταλί|Σαλβαντόρ Νταλί]]
# [[Άλμπρεχτ Ντύρερ]]
# [[Βίνσεντ βαν Γκογκ]]
# [[Φρανσίσκο Γκόγια]]
# [[Κατσουσίκα Χοκουσάι|Χοκουσάι]]
# [[Φρίντα Κάλο]]
# [[Εντουάρ Μανέ]]
# [[Ανρί Ματίς]]
# [[Μιχαήλ Άγγελος]]
# [[Κλωντ Μονέ]]
# [[Τζώρτζια Ο'Κήφι]]
# [[Πάμπλο Πικάσο]]
# [[Τζάκσον Πόλοκ|Τζάκσον Πόλλοκ]]
# [[Ραφαήλ]]
# [[Ρέμπραντ]]
# [[Αύγουστος Ροντέν]]
# [[Μις φαν ντερ Ρόε]]
# [[Ντιέγο Βελάθκεθ|Ντιέγκο Βελάσκεθ]]
# [[Γιοχάνες Βερμέερ]]
# [[Μάρκος Πολλίωνας Βιτρούβιος|Βιτρούβιος]]
# [[Άντι Γουόρχολ]]
# [[Φρανκ Λόιντ Ράιτ]]
# [[Ι.Μ. Πέι]]
# [[Πέτερ Πάουλ Ρούμπενς]]
=== Συγγραφέοι (67 σελίδας) ===
# [[Δάντης Αλιγκέρι]]
# [[Χανς Κρίστιαν Άντερσεν]]
# [[Αριστοφάνης]]
# [[Ισαάκ Ασίμωφ]]
# [[Τζέιν Όστεν]]
# [[Ουίλλιαμ Μπλέηκ|Ουίλιαμ Μπλέηκ]]
# [[Μπέρτολτ Μπρεχτ|Μπέρτολντ Μπρεχτ]]
# [[Λόρδος Βύρων]]
# [[Μιγκέλ ντε Θερβάντες]]
# [[Αντόν Τσέχωφ|Άντον Τσέχοφ]]
# [[Έμιλι Ντίκινσον]]
# [[Φιοντόρ Ντοστογιέφσκι]]
# [[Άρθουρ Κόναν Ντόυλ]]
# [[Του Φου]]
# [[Αλέξανδρος Δουμάς (πατέρας)]]
# [[Φράνσις Σκοτ Φιτζέραλντ]]
# [[Αδελφοί Γκριμ]]
# [[Έρνεστ Χέμινγουεϊ]]
# [[Χίλντεγκαρντ του Μπίνγκεν]]
# [[Όμηρος]]
# [[Βίκτωρ Ουγκώ]]
# [[Ερρίκος Ίψεν]]
# [[Τζαίημς Τζόυς|Τζέημς Τζόυς]]
# [[Φραντς Κάφκα]]
# [[Λι Μπάι]]
# [[Άστριντ Λίντγκρεν]]
# [[Τόμας Μαν]]
# [[Ματσούο Μπασό]]
# [[Άρθουρ Μίλερ]]
# [[Μολιέρος]]
# [[Μουρασάκι Σικίμπου]]
# [[Πάμπλο Νερούδα]]
# [[Έντγκαρ Άλλαν Πόε|Έντγκαρ Άλαν Πόε]]
# [[Μαρσέλ Προυστ]]
# [[Αλέξανδρος Πούσκιν|Αλεξάντερ Πούσκιν]]
# [[Ράινερ Μαρία Ρίλκε]]
# [[Καρλ Σάντμπεργκ]]
# [[Σαπφώ]]
# [[Ζαν-Πωλ Σαρτρ|Ζαν Πωλ Σαρτρ]]
# [[Ουίλλιαμ Σαίξπηρ|Ουίλιαμ Σαίξπηρ]]
# [[Τζορτζ Μπέρναρντ Σω|Τζωρτζ Μπέρναρντ Σω]]
# [[Μαίρη Σέλλεϋ]]
# [[Σοφοκλής]]
# [[Ρόμπερτ Λούις Στίβενσον|Ρόμπερτ Λούις Στήβενσον]]
# [[Τζον Ρόναλντ Ρούελ Τόλκιν|Τζ. Ρ. Ρ. Τόλκιν]]
# [[Λέων Τολστόι]]
# [[Μαρκ Τουαίην|Μαρκ Τουέην]]
# [[Ιούλιος Βερν]]
# [[Βιργίλιος]]
# [[Χ. Τζ. Γουέλς]]
# [[Ουώλτ Ουίτμαν]]
# [[Όσκαρ Ουάιλντ]]
# [[Ουίλιαμ Μπάτλερ Γέιτς]]
# [[Αμπού Νουβάς]]
# [[Χόρχε Λουίς Μπόρχες]]
# [[Κάρολος Ντίκενς]]
# [[Φερντοβσί]]
# [[Φουζουλί]]
# [[Γκαμπριέλ Γκαρσία Μάρκες]]
# [[Γιόχαν Βόλφγκανγκ φον Γκαίτε]]
# [[Οράτιος]]
# [[Καλιντάσα]]
# [[Ομάρ Καγιάμ]]
# [[Οβίδιος]]
# [[Αρθούρος Ρεμπώ]]
# [[Σότα Ρουσταβελί]]
# [[Τζορτζ Όργουελ]]
=== Μουσικοί (25 σελίδας) ===
# [[Γιόχαν Σεμπάστιαν Μπαχ]]
# [[The Beatles]]
# [[Λούντβιχ βαν Μπετόβεν]]
# [[Φρεντερίκ Σοπέν]]
# [[Αντονίν Ντβόρζακ]]
# [[Αρίθα Φράνκλιν]]
# [[Μάικλ Τζάκσον]]
# [[Γκούσταβ Μάλερ]]
# [[Κλαούντιο Μοντεβέρντι]]
# [[Βόλφγκανγκ Αμαντέους Μότσαρτ]]
# [[Έλβις Πρίσλεϊ]]
# [[Γιαν Σιμπέλιους]]
# [[Ρίχαρντ Βάγκνερ]]
# [[Έκτορ Μπερλιόζ]]
# [[Γιόχαν Μπραμς]]
# [[Γκέοργκ Χαίντελ]]
# [[Τζίμι Χέντριξ]]
# [[Τζιάκομο Πουτσίνι]]
# [[The Rolling Stones]]
# [[Φραντς Σούμπερτ]]
# [[Ρόμπερτ Σούμαν]]
# [[Ιγκόρ Στραβίνσκι]]
# [[Πιότρ Τσαϊκόφσκι]]
# [[Τζουζέπε Βέρντι]]
# [[Αντόνιο Βιβάλντι]]
=== Εξερευνητές (15 σελίδας) ===
# [[Ρόαλντ Αμούνδσεν]]
# [[Νηλ Άρμστρονγκ|Νιλ Άρμστρονγκ]]
# [[Γουλιέλμος Μπάρεντς]]
# [[Χριστόφορος Κολόμβος]]
# [[Τζέιμς Κουκ]]
# [[Χερνάντο Κορτέζ]]
# [[Φράνσις Ντρέικ]]
# [[Χουάν Σεμπαστιάν Ελκάνο]]
# [[Λέιφ Έρικσον]]
# [[Βάσκο ντα Γκάμα]]
# [[Γιούρι Γκαγκάριν]]
# [[Έντμουντ Χίλαρι]]
# [[Φερδινάνδος Μαγγελάνος]]
# [[Μάρκο Πόλο]]
# [[Τσενκ Χι]]
=== Σκηνοθέτες και σεναριογράφοι (11 σελίδας) ===
# [[Ίνγκμαρ Μπέργκμαν]]
# [[Ουώλτ Ντίσνεϋ]]
# [[Σεργκέι Αϊζενστάιν]]
# [[Άλφρεντ Χίτσκοκ]]
# [[Ακίρα Κουροσάβα]]
# [[Φριτς Λανγκ]]
# [[Τζορτζ Λούκας]]
# [[Φράνσις Μάριον]]
# [[Λένι Ρίφενσταλ]]
# [[Μάρτιν Σκορσέζε]]
# [[Στίβεν Σπίλμπεργκ]]
=== Εφευρέτες, επιστήμονες και μαθηματικοί (53 σελίδας) ===
# [[Αλ Χουαρίζμι]]
# [[Αρχιμήδης]]
# [[Τζον Λόγκι Μπερντ]]
# [[Αλεξάντερ Γκράχαμ Μπελ]]
# [[Καρλ Μπεντς]]
# [[Τιμ Μπέρνερς Λι]]
# [[Νιλς Μπορ]]
# [[Τυχό Μπραχέ]]
# [[Ρέιτσελ Κάρσον]]
# [[Νικόλαος Κοπέρνικος]]
# [[Μαρία Κιουρί]]
# [[Κάρολος Δαρβίνος]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# [[Άλμπερτ Αϊνστάιν]]
# [[Τόμας Έντισον]]
# [[Λέοναρντ Όιλερ]]
# [[Ενρίκο Φέρμι]]
# [[Ρίτσαρντ Φάινμαν]]
# [[Αλεξάντερ Φλέμινγκ]]
# [[Χένρυ Φορντ]]
# [[Ζοζέφ Φουριέ]]
# [[Ρίτσαρτ Μπάκμινστερ Φύλλερ]]
# [[Κάζιμιρ Φανκ]]
# [[Γαλιλαίος Γαλιλέι]]
# [[Μπιλ Γκέιτς]]
# [[Καρλ Φρίντριχ Γκάους]]
# [[Κουρτ Γκέντελ]]
# [[Γουτεμβέργιος|Ιωάννης Γουτεμβέργιος]]
# [[Ντάβιντ Χίλμπερτ]]
# [[Κρίστιαν Χόυχενς]]
# [[Υπατία]]
# [[Εδουάρδος Τζένερ]]
# [[Στηβ Τζομπς]]
# [[Γιοχάνες Κέπλερ]]
# [[Τζων Κέυνς]]
# [[Ντόναλντ Κνουθ]]
# [[Πιέρ Σιμόν Λαπλάς]]
# [[Γκότφριντ Βίλχελμ Λάιμπνιτς]]
# [[Κάρολος Λινναίος]]
# [[Ιγκνάσι Λουκασίεβιτς]]
# [[Τζέιμς Κλερκ Μάξγουελ]]
# [[Ισαάκ Νεύτων]]
# [[Άλφρεντ Νομπέλ]]
# [[Λουί Παστέρ]]
# [[Ντένις Ρίτσι]]
# [[Όλε Ρέμερ]]
# [[Βίλχελμ Κόνραντ Ρέντγκεν]]
# [[Έρνεστ Ράδερφορντ]]
# [[Ρίτσαρντ Στώλλμαν]]
# [[Νίκολα Τέσλα]]
# [[Λίνους Τόρβαλντς]]
# [[Άλαν Τούρινγκ]]
# [[Λεονάρντο ντα Βίντσι]]
# [[Αδελφοί Ράιτ]]
=== Φιλόσοφοι, ιστορικοί, οικονομολόγοι, στοχαστές (38 σελίδας) ===
# [[Φραγκίσκος της Ασίζης]]
# [[Βενέδικτος της Νούρσια]]
# [[Θωμάς Ακινάτης]]
# [[Αριστοτέλης]]
# [[Αυγουστίνος Ιππώνος]]
# [[Αβερρόης]]
# [[Σιμόν ντε Μποβουάρ|Σιμόν ντε Μπωβουάρ]]
# [[Ρενέ Ντεκάρτ]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# [[Εμίλ Ντιρκάιμ]]
# [[Μισέλ Φουκώ]]
# [[Σίγκμουντ Φρόυντ|Ζίγκμουντ Φρόιντ]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# [[Γιόχαν Βόλφγκανγκ φον Γκαίτε]]
# [[Ζερμαίν Γκρέερ]]
# [[Ηρόδοτος]]
# [[Γκέοργκ Βίλχελμ Φρήντριχ Χέγκελ]]
# [[Ιπποκράτης]]
# [[Εμμάνουελ Καντ]]
# [[Μαρτίνος Λούθηρος]]
# [[Ρόζα Λούξεμπουργκ]]
# [[Σαίρεν Κίρκεγκωρ]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# [[Μάρτιν Λούθερ Κινγκ]]
# [[Νικολό Μακιαβέλι]]
# [[Καρλ Μαρξ]]
# [[Ναγκαριούνα]]
# [[Φρειδερίκος Νίτσε]]
# [[Τόμας Πέιν]]
# [[Πλάτων|Πλάτωνας]]
# [[Πυθαγόρας ο Σάμιος|Πυθαγόρας]]
# [[Σίμα Κιάν]]
# [[Ζαν Ζακ Ρουσσώ]]
# [[Μπέρτραντ Ράσελ|Μπέρντραντ Ράσσελ]]
# [[Άνταμ Σμιθ]]
# [[Σωκράτης]]
# [[Σουν Τσου|Σουν Τζου]]
# [[Θαλής]]
# [[Βολταίρος]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# [[Μαξ Βέμπερ]]
# [[Λούντβιχ Βιτγκενστάιν]]
=== Πολιτικοί, ηγέτες και αριστοκράτες (66 σελίδας) ===
# [[Ακμπάρ ο Μέγας]]
# [[Αλέξανδρος ο Μέγας]]
# [[Κόφι Ανάν]]
# [[Μουσταφά Κεμάλ Ατατούρκ|Κεμάλ Ατατούρκ]]
# [[Αττίλας]]
# [[Οκταβιανός Αύγουστος]]
# [[Πάπας Βενέδικτος ΙΣΤ΄]]
# [[Ότο φον Μπίσμαρκ|Όττο Βίσμαρκ]]
# [[Σιμόν Μπολίβαρ|Σιμόν Μπολιβάρ]]
# [[Ναπολέων Βοναπάρτης]]
# [[Γκρο Χάρλεμ Μπρούντλαντ]]
# [[Τζωρτζ Μπους (νεότερος)]]
# [[Φιντέλ Κάστρο]]
# [[Αικατερίνη Β΄ της Ρωσίας|Αικατερίνη Β' της Ρωσίας]]
# [[Καρλομάγνος]]
# [[Ζακ Σιράκ]]
# [[Ουίνστον Τσώρτσιλ|Ουίνστων Τσώρτσιλ]]
# [[Κλεοπάτρα Ζ' της Αιγύπτου]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# [[Πριγκίπισσα Νταϊάνα]]
# [[Ίντιρα Γκάντι]]
# [[Κωνσταντίνος Α΄ ο Μέγας|Κωνσταντίνος Α']]
# [[Ελισάβετ Α' της Αγγλίας]]
# [[Ελισάβετ Β' του Ηνωμένου Βασιλείου]]
# [[Φραγκίσκος Φερδινάνδος της Αυστρίας]]
# [[Σαρλ ντε Γκωλ|Σαρλ Ντε Γκωλ]]
# [[Μιχαήλ Γκορμπατσώφ|Μιχαήλ Γκορμπατσόφ]]
# [[Χαϊλέ Σελασιέ]]
# [[Χαμουραμπί|Χαμμουραμπί]]
# [[Αννίβας]]
# [[Χιροχίτο]]
# [[Αδόλφος Χίτλερ]]
# [[Τόμας Τζέφερσον|Θωμάς Τζέφερσον]]
# [[Πάπας Ιωάννης Παύλος Β΄|Πάπας Ιωάννης Παύλος Β']]
# [[Ιούλιος Καίσαρας|Ιούλιος Καίσαρ]]
# [[Τζένγκις Χαν|Τσένγκις Χαν]]
# [[Βλαντιμίρ Λένιν]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# [[Αβραάμ Λίνκολν]]
# [[Νέλσον Μαντέλα]]
# [[Μάο Τσετούνγκ|Μαο Τσετούνγκ]]
# [[Μαρία Θηρεσία]]
# [[Μαρία Α' της Σκωτίας]]
# [[Γκόλντα Μέιρ]]
# [[Μπενίτο Μουσολίνι]]
# [[Νεφερτίτη]]
# [[Κβάμε Νκρούμαχ]]
# [[Εβίτα Περόν]]
# [[Πέτρος Α΄ της Ρωσίας (ο Μέγας)]]
# [[Γιόζεφ Πιλσούντσκι]]
# [[Πολ Ποτ]]
# [[Βλαντιμίρ Πούτιν]]
# [[Τσιν Σι Χουάνγκ]]
# [[Έλινορ Ρούζβελτ]]
# [[Φραγκλίνος Ρούζβελτ|Φραγκλίνος Ρούσβελτ]]
# [[Σαλαντίν]] ή Σαλαδίνος (Σαλάχ ελ-Ντιν)
# [[Σεμίραμις]]
# [[Σάκα Ζούλου]]
# [[Ιωσήφ Στάλιν]]
# [[Μάργκαρετ Θάτσερ]]
# [[Ταμερλάνος]]
# [[Λέων Τρότσκι]]
# [[Χάρρυ Τρούμαν]]
# [[Βασίλισσα Βικτωρία]]
# [[Τζωρτζ Ουάσινγκτων|Τζωρτζ Ουάσινγκτον]]
# [[Γουλιέλμος Β΄ της Γερμανίας]]
# [[Μάρτιν Λούθερ Κινγκ]]
# [[Περικλής]]
=== Επαναστάτες και ακτιβιστές (10 σελίδας) ===
# [[Ιωάννα της Λωραίνης]]
# [[Θεόδωρος Κολοκοτρώνης]]
# [[Μαχάτμα Γκάντι]]
# [[Έμμα Γκόλντμαν]]
# [[Ερνέστο Τσε Γκεβάρα|Τσε Γκεβάρα]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# [[Έλεν Κέλερ]]
# [[Χο Τσι Μινχ]]
# [[Οσάμα μπιν Λάντεν]]
# [[Φλόρενς Νάιτινγκεϊλ]]
# [[Ρόζα Παρκς]]
# [[Μητέρα Τερέζα]]
== Ιστορία (62 άρθρα) ==
# [[Ιστορία]]
# [[Παγκόσμια ιστορία]]
=== Προϊστορία και αρχαίος κόσμος (17 άρθρα) ===
# [[Αρχαία Αίγυπτος]]
# [[Αρχαία Ελλάδα]]
# [[Αρχαία Ρώμη]]
# [[Αρχαιολογία]]
# [[Εποχή του Χαλκού|Εποχή του χαλκού]]
# [[Βυζαντινή αυτοκρατορία|Βυζαντινή Αυτοκρατορία]]
# [[Δυναστεία των Χαν]]
# [[Ανθρώπινη εξέλιξη]]
# [[Πολιτισμός της κοιλάδας του Ινδού]]
# [[Μάγια]]
# [[Εποχή του Σιδήρου|Εποχή του σιδήρου]]
# [[Μακεδονικό βασίλειο]]
# [[Προϊστορία]]
# [[Εποχή του Λίθου|Εποχή του λίθου]]
# [[Σουμέριοι]]
# [[Μεσοποταμία]]
=== Μεσαίωνας και Αναγέννηση (19 άρθρα) ===
# [[Διαφωτισμός]]
# [[Αμερικανική Επανάσταση]]
# [[Αζτέκοι]]
# [[Μαύρη Πανώλη]]
# [[Σταυροφορίες]]
# [[Σχίσμα του 1054|Μεγάλο Σχίσμα]]
# [[Ογδοηκονταετής Πόλεμος]]
# [[Αγγλικός Εμφύλιος Πόλεμος]]
# [[Αποικισμός της Αμερικής]]
# [[Γαλλική Επανάσταση]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# [[Αγία Ρωμαϊκή Αυτοκρατορία]]
# [[Ίνκας]]
# [[Μεσαίωνας]]
# [[Ναπολεόντειοι πόλεμοι]]
# [[Οθωμανική αυτοκρατορία|Οθωμανική Αυτοκρατορία]]
# [[Σελτζούκοι]]
# [[Μεταρρύθμιση]]
# [[Αναγέννηση]]
# [[Ιερά Εξέταση]]
# [[Βίκινγκ]]
=== Βιομηχανική εποχή (25 άρθρα) ===
# [[Πετρελαϊκή κρίση του 1973]]
# [[Αμερικανικός Εμφύλιος Πόλεμος|Αμερικανικός εμφύλιος πόλεμος]]
# [[Επανάσταση του 1821]]
# [[Απαρτχάιντ]]
# [[Βρετανική Αυτοκρατορία]]
# [[Ψυχρός πόλεμος]]
# [[Ένωση Σοβιετικών Σοσιαλιστικών Δημοκρατιών|Σοβιετική Ένωση]]
# [[Γαλλοπρωσικός Πόλεμος|Γαλλοπρωσικός πόλεμος]]
# [[Παγκόσμια οικονομική ύφεση 1929]]
# [[Πόλεμος του Κόλπου]]
# [[Ολοκαύτωμα]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# [[Βιομηχανική επανάσταση]]
# [[Ιταλική ενοποίηση]]
# [[Πόλεμος της Κορέας]]
# [[Μεταρρύθμιση Μεΐτζι]]
# [[Ναζιστική Γερμανία]]
# [[Ρωσική Επανάσταση]]
# [[Διαμάχη για την Αφρική]]
# [[Σοβιετικός πόλεμος στο Αφγανιστάν]]
# [[Εξερεύνηση του διαστήματος]]
# [[Ισπανικός Εμφύλιος|Ισπανικός εμφύλιος πόλεμος]]
# [[Συνθήκη των Βερσαλλιών]]
# [[Πόλεμος του Βιετνάμ]]
# [[Α΄ Παγκόσμιος Πόλεμος|Πρώτος Παγκόσμιος Πόλεμος]]
# [[Β΄ Παγκόσμιος Πόλεμος|Δεύτερος Παγκόσμιος Πόλεμος]]
== Γεωγραφία (143 άρθρα) ==
=== Γενικοί όροι (15 άρθρα) ===
# '''[[Γεωγραφία]]'''
# [[Πρωτεύουσα]]
# '''[[Πόλη]]'''
# '''[[Ήπειρος]]'''
# '''[[Χώρα]]'''
# [[Έρημος]]
# [[Χάρτης]]
# [[Βόρειος Πόλος]]
# '''[[Ωκεανός]]'''
# [[Τροπικό δάσος]]
# [[Ποταμός|Ποτάμι]]
# [[Θάλασσα]]
# [[Νότιος Πόλος]]
# [[Βουνό]]
# [[Παγετώνας]]
=== Ήπειροι και άλλες περιοχές (9 σελίδας) ===
# '''[[Αφρικήν]]'''
# '''[[Ανταρκτικήν]]'''
# '''[[Ασίαν]]'''
# '''[[Μέση Ανατολή]]'''
# '''[[Ευρώπην]]'''
# '''[[Αμερικήν]]'''
# '''[[Ωκεανίαν]]'''
=== Κράτη (49 σελίδας) ===
Υψηλής προτεραιότητας:
# [[Αφγανιστάν]]
# '''[[Αυστραλία]]'''
# [[Αυστρία]]
# [[Μπανγκλαντές]]
# [[Βέλγιον]]
# '''[[Βραζιλία]]'''
# '''[[Καναδάς]]'''
# [[Κούβα]]
# '''[[Κίνα]]'''
# [[Λαϊκή Δημοκρατία του Κονγκό]]
# [[Αίγυπτος]]
# [[Αιθιοπία]]
# '''[[Γαλλία]]'''
# '''[[Γερμανία]]'''
# [[Ελλάδα]]
# '''[[Ινδία]]'''
# '''[[Ινδονησία]]'''
# '''[[Ιράν]]'''
# '''[[Ιράκ]]'''
# '''[[Ισραήλ]]'''
# [[Ιταλία]]
# '''[[Ιαπωνία]]'''
# [[Λιβύη]]
# [[Μεξικό]]
# [[Μονακό]]
# [[Μογγολία]]
# [[Νεπάλ]]
# [[Ολλανδία]]
# [[Νιγηρία]]
# [[Βόρεια Κορέα]]
# [[Περού]]
# '''[[Κίνα]]'''
# [[Πολωνία]]
# '''[[Ρουσία]]'''
# [[Ρουάντα]]
# [[Σαουδική Αραβία]]
# [[Σιγκαπούρη]]
# [[Νότια Αφρική|Νότιος Αφρική]]
# [[Νότια Κορέα|Νότιος Κορέα]]
# '''[[Ισπανία]]'''
# [[Σουδάν]]
# [[Σουηδία]]
# [[Ελβετία]]
# [[Τουρκία]]
# [[Ουκρανία]]
# '''[[Ηνωμένο Βασίλειο]]'''
# '''[[Ηνωμένες Πολιτείες της Αμερικής|Ηνωμένες Πολιτείες]]'''
# [[Βιετνάμ]]
=== Πόλεις (41 άρθρα) ===
# [[Αθήνα]]
# [[Μπανγκόκ]]
# [[Βαρκελώνη]]
# [[Πεκίνο]]
# [[Βελιγράδι]]
# [[Βερολίνο]]
# [[Βρυξέλλες]]
# [[Κοπεγχάγη]]
# [[Εδιμβούργο]]
# [[Φρανκφούρτη]]
# [[Ανόι]]
# '''[[Χονγκ Κονγκ]]'''
# [[Καλκούτα]]
# [[Κωνσταντινούπολη]]
# [[Τζακάρτα]]
# '''[[Ιερουσαλήμ]]'''
# '''[[Λονδίνο]]'''
# [[Λος Άντζελες]]
# [[Μανίλα]]
# [[Μαδρίτη]]
# [[Μέκκα]]
# [[Πόλη του Μεξικού]]
# [[Μόσχα]]
# [[Μόναχο]]
# [[Ναϊρόμπι]]
# [[Νέο Δελχί]]
# '''[[Νέα Υόρκη]]'''
# [[Ντουμπάι]]
# '''[[Παρίσι]]'''
# [[Ρίο ντε Τζανέιρο]]
# '''[[Ρώμη]]'''
# [[Αγία Πετρούπολη]]
# [[Σεούλ]]
# [[Σαγκάη|Σανγκάη]]
# [[Σιγκαπούρη]]
# '''[[Τόκιο]]'''
# [[Τορόντο]]
# [[Βατικανό]]
# [[Βιέννη]]
# [[Βαρσοβία]]
# [[Ουάσινγκτον (Περιφέρεια της Κολούμπια)]]
=== Υδάτινοι όγκοι (21 άρθρα) ===
# [[Αμαζόνιος]]
# [[Αράλη]]
# [[Αρκτικήν]]
# '''[[Ατλαντικός Ωκεανός]]'''
# [[Βαλτικόν Θάλασσα]]
# [[Μαύρον Θάλασσα]]
# [[Κασπία Θάλασσα]]
# [[Νεκρά θάλασσα|Νεκρή Θάλασσα]]
# [[Μεγάλες Λίμνες]]
# '''[[Ινδικός Ωκεανός]]'''
# [[Βαϊκάλη]]
# [[Τανγκανίκα]]
# [[Λίμνη Βικτόρια|Λίμνη Βικτώρια]]
# [[Μεσόγειον Θάλασσα]]
# '''[[Νείλος ποταμός|Νείλος]]'''
# [[Βόρεια Θάλασσα]]
# '''[[Ειρηνικός Ωκεανός]]'''
# [[Διώρυγα Παναμά|Διώρυγα του Παναμά]]
# [[Διώρυγα Σουέζ|Διώρυγα του Σουέζ]]
# [[Νότιος Ωκεανός]]
# [[Βόλγας]]
=== Βουνά, κοιλάδες και έρημοι (8 άρθρα) ===
# [[Άλπεις]]
# [[Άνδεις]]
# [[Γκραν Κάνυον]]
# '''[[Ιμαλάια]]'''
# [[Κιλιμάντζαρο]]
# [[Έβερεστ]]
# [[Βραχώδη Όρη]]
# '''[[Σαχάρα]]'''
== Κοινωνία (131 άρθρα) ==
# '''[[Κοινωνία]]'''
# [[Ανθρωπολογία]]
# [[Δημογραφία]]
# '''[[Εκπαίδευση]]'''
# [[Ψυχολογία]]
# [[Κοινωνιολογία]]
=== Οικογένεια και σχέσεις (10 άρθρα) ===
# '''[[Οικογένεια]]'''
# '''[[Ενήλικας]]'''
# [[Αγούρ]]
# '''[[Παιδίν]]'''
# [[Ερωτοτροπία]]
# [[Κορίτς]]
# '''[[Νεογνό]]'''
# [[Άνδρας]]
# '''[[Χαράν]]'''
# [[Γυναίκα]]
=== Σκέψη, συμπεριφορά και συναίσθημα (12 άρθρα) ===
# [[Συμπεριφορά]]
# [[Συναίσθημα]]
## [[Θυμός]]
## [[Φόβος]]
## [[Ευτυχία]]
## [[Μίσος]]
## [[Αγάπη]]
## [[Λύπη]]
# [[Νόηση]]
# [[Ύπνος]]
## [[Όνειρο]]
# [[Σκέψη]]
=== Πολιτική (23 άρθρα) ===
# '''[[Πολιτική]]'''
# [[Αναρχισμός]]
# [[Δημοκρατία]]
# [[Δικτατορία]]
# [[Διπλωματία]]
# [[Φασισμός]]
# [[Παγκοσμιοποίηση]]
# '''[[Κυβέρνηση]]'''
# [[Ιμπεριαλισμός]]
# [[Φιλελευθερισμός]]
# [[Μοναρχία]]
# [[Εθνικισμός]]
# [[Πολιτεία]]
# [[Διάκριση των εξουσιών]]
# '''[[Κράτος]]'''
# [[Πολιτικό κόμμα]]
# [[Θεοκρατία]]
# [[Αποικιοκρατία]]
# [[Συντηρητισμός]]
# [[Μαρξισμός]]
# [[Εθνικοσοσιαλισμός|Ναζισμός]]
# [[Προπαγάνδα]]
# [[Τρομοκρατία]]
=== Επιχειρήσεις και οικονομικά (27 άρθρα) ===
# '''[[Επιχείρηση]]'''
# '''[[Οικονομικά]]'''
# [[Διαφήμιση]]
# '''[[Γεωργία (εργασία)]]'''
# [[Κεφάλαιο (οικονομικά)]]
# [[Κεφαλαιοκρατία]]
# [[Κομμουνισμός]]
# [[Νόμισμα]]/'''[[Χρήμα]]'''
## [[Ευρώ]]
## [[Γιεν]]
## [[Στερλίνα|Λίρα στερλίνα]]
## [[Ρενμπίμπι]]/[[Γιουάν]]
## [[Ρουπία]]
## [[Δολάριο ΗΠΑ]]
# [[Εργασία]]
# [[Χρηματοοικονομικά]]
# [[Βιομηχανία]]
## [[Παραγωγή]]
## [[Εξόρυξη]]
## [[Διύλιση]]
# [[Αγορά (εμπόριο)]]
# [[Σοσιαλισμός]]
# [[Προσφορά και ζήτηση]]
# [[Τουρισμός]]
# [[Φορολογία]]
=== Δίκαιο (8 άρθρα) ===
# '''[[Δίκαιο]]'''
# [[Έγκλημα]]
# [[Σύνταγμα]]
# Συγκεκριμένα κείμενα
## [[Μάγκνα Κάρτα]]
## [[Λεβιάθαν (βιβλίο)]]
## [[Πολιτεία του Πλάτωνα]]
## [[Μανιφέστο του Κομμουνιστικού Κόμματος|Κομμουνιστικό Μανιφέστο]]
# [[Νόμος]]
=== Διεθνείς οργανισμοί (27 άρθρα) ===
# [[Αφρικανική Ένωση]]
# [[Αραβικός Σύνδεσμος]]
# [[Ένωση Χωρών της Νοτιοανατολικής Ασίας]]
# [[Ένωση Σοβιετικών Σοσιαλιστικών Δημοκρατιών|Κοινοπολιτεία Ανεξαρτήτων Κρατών]]
# [[Κοινοπολιτεία]]
# [[Συμβούλιο της Ευρώπης]]
# [[Ευρωπαϊκή Ένωση]]
# [[Συνθήκες της Γενεύης]]
## '''[[Διεθνές Κίνημα Ερυθρού Σταυρού και Ερυθράς Ημισελήνου]]'''
# [[Ιντερπόλ]]
# [[ΝΑΤΟ|NATO]]
# [[Βραβείο Νόμπελ]]
# [[Οργανισμός Οικονομικής Συνεργασίας και Ανάπτυξης]]
# [[Οργανισμός για την Ασφάλεια και Συνεργασία στην Ευρώπη]]
# [[Οργανισμός Αμερικανικών Κρατών]]
# [[Οργανισμός εξαγωγών πετρελαιοπαραγωγών χωρών]]
# '''[[Οργανισμός Ηνωμένων Εθνών]]'''
## [[Διεθνής Επιτροπή Ατομικής Ενέργειας]]
## [[Διεθνές Δικαστήριο της Δικαιοσύνης]]
## [[Διεθνές Ποινικό Δικαστήριο]]
## [[Διεθνές Νομισματικό Ταμείο]]
## [[ΟΥΝΕΣΚΟ]]
## [[UNICEF]]
## [[Οικουμενική Διακήρυξη για τα Ανθρώπινα Δικαιώματα]]
## [[Παγκόσμια Τράπεζα]]
## [[Παγκόσμιος Οργανισμός Υγείας]]
## [[Παγκόσμιος Οργανισμός Εμπορίου]]
=== Πόλεμος και στρατός (9 άρθρα) ===
# '''[[Στρατός|Ένοπλες δυνάμεις]]'''
## [[Στρατός]]
### [[Πυροβολικό]]
### [[Ιππικό]]
### [[Πεζικό]]
## [[Πολεμικό ναυτικό]]
## [[Πολεμική αεροπορία]]
# '''[[Ειρήνη (κατάσταση)]]'''
# '''[[Πόλεμος]]'''
=== Κοινωνικά θέματα (9 άρθρα) ===
# [[Έκτρωση]]
# [[Αντισύλληψη]]
# '''[[Θανατική ποινή]]'''
# [[Ελευθερία]]
# [[Φύλο]]
# '''[[Ανθρώπινα δικαιώματα]]'''
# [[Ρατσισμός]]
# [[Σεξισμός]]
# '''[[Δουλεία]]'''
== Πολιτισμός (188 άρθρα) ==
# '''[[Πολιτισμός]]'''
# '''[[Τέχνη]]'''
## [[Κόμικς]]
## [[Σχέδιο]]
## [[Ζωγραφική]]
## [[Γλυπτική]]
### [[Αγγειοπλαστική]]
# '''[[Χορός]]'''
# [[Μόδα]]
# '''[[Θέατρο]]'''
=== Γλώσσα και λογοτεχνία (40 άρθρα) ===
# '''[[Γλώσσα]]'''
# '''[[Αλφάβητο]]'''
## [[Κινέζικο σύστημα γραφής]]
## [[Κυριλλικό αλφάβητο]]
## [[Ελληνικό αλφάβητο]]
## [[Λατινικό αλφάβητο]]
# '''[[Βιβλίο]]'''
# [[Διάλεκτος]]
# '''[[Γραμματική]]'''
## [[Ουσιαστικόν]]
## [[Σύνταξη|Συντακτικό]]
## [[Ρήμαν]]
# [[Γλωσσολογία]]
# [[Αλφαβητισμός]]
# '''[[Λογοτεχνία]]'''
## [[Μυθιστόρημα]]
## '''[[Ποιητικήν|Ποιητική]]'''
### [[Έπος του Γκιλγκαμές]]
### [[Ιλιάδα]]
### [[Μαχαμπχαράτα]]
### [[Οδύσσεια]]
# Συγκεκριμένες γλώσσες
## [[Αραβική γλώσσα]]
## [[Μπενγκάλι γλώσσα]]
## [[Κινεζική γλώσσα]]
## [[Αγγλική γλώσσα]]
## [[Εσπεράντο]]
## [[Γαλλική γλώσσα]]
## [[Γερμανική γλώσσα]]
## [[Ελλενικόν λαλίαν]]
## [[Εβραϊκή γλώσσα]]
## [[Ινδική γλώσσα]]
## [[Ιαπωνική γλώσσα]]
## [[Λατινική γλώσσα]]
## [[Ρωσική γλώσσα]]
## [[Σανσκριτική γλώσσα]]
## [[Ισπανική γλώσσα]]
## [[Ταμίλ γλώσσα]]
## [[Τουρκική γλώσσα]]
# '''[[Λέξη]]'''
# '''[[Σύστημα γραφής|Γραφή]]'''
=== Αρχιτεκτονική και δόμηση (16 άρθρα) ===
# '''[[Αρχιτεκτονική]]'''
# [[Αψίδα]]
# [[Γέφυρα]]
# [[Διώρυγα]]
# [[Φράγμα]]
# [[Θόλος]]
# '''[[Κατοικία]]'''
# Συγκεκριμένες κατασκευές:
## [[Φράγμα του Ασσουάν]]
## [[Κολοσσαίο]]
## [[Μέγα Σινικό Τείχος]]
## [[Πύργος του Άιφελ]]
## [[Αγία Σοφία (Κωνσταντινούπολη)]]
## [[Παρθενώνας]]
## [[Πυραμίδες της Γκίζα]]
## [[Βασιλική του Αγίου Πέτρου]]
## [[Τατζ Μαχάλ]]
=== Κινηματογράφος, ραδιόφωνο και τηλεόραση (6 άρθρα) ===
# '''[[Κινηματογράφος]]'''
## [[Animation]]
## [[Βουβή ταινία]]
## [[Κινηματογραφικό στούντιο]]
# '''[[Ραδιόφωνο]]'''
# '''[[Τηλεόραση]]'''
=== Μουσική (21 άρθρα) ===
# '''[[Μουσική]]'''
# [[CD|Compact disc]]
# [[Τραγούδι]]
# Μουσικά είδη:
## [[Κλασική μουσική]]
### [[Όπερα]]
### [[Συμφωνία (μουσική)]]
## [[Παραδοσιακή μουσική]]
## [[Τζαζ]]
## [[Ποπ]]
## [[Ρέγκε|Ρέγγε]]
## [[Rhythm and blues]]
### [[Σόουλ]]
## [[Ροκ μουσική]]
### [[Heavy metal]]
# Μουσικά όργανα:
## [[Τύμπανο]]
## [[Φλάουτο]]
## [[Κιθάρα]]
## [[Πιάνο]]
## [[Έγχορδο]]
## [[Τρομπέτα]]
## [[Βιολί]]
=== Ψυχαγωγία (29 άρθρα) ===
# [[Ψυχαγωγία]]
# [[Διασκέδαση]]
# '''[[Παιχνίδι]]'''
## [[Τάβλι]]
## [[Σκάκι]]
## [[Ντάμα]]
## [[Γκο]]
## [[Μανκάλα]]
## [[Τράπουλα]]
# [[Στοίχημα]]
# [[Αναψυχή]]
# [[Πολεμικές τέχνες]]
## [[Τζούντο]]
# [[Ολυμπιακοί Αγώνες]]
# [[Πάρτι]]
# '''[[Αθλητισμός]]'''
## [[Αμερικάνικο ποδόσφαιρο]]
## [[Αγώνας αυτοκινήτων]]
### [[Φόρμουλα 1]]
## [[Καλαθοσφαίριση]]
## [[Κρίκετ]]
## [[Ξιφασκία]]
## [[Ποδόσφαιρο]]
## [[Αντισφαίριση|Τέννις]]
## [[Βόλεϋ]]
## [[Υδατοσφαίριση]]
## [[Πάλη]]
## [[Στίβος]]
# [[Παγκόσμιο κύπελλο ποδοσφαίρου]]
=== Θρησκεία (66 άρθρα) ===
# '''[[Θρησκεία]]'''
# [[Αστρολογία]]
# '''[[Θεότητα]]'''
## [[Θεός]]
# [[Εορτασμός]]
# [[Αργία]]
# [[Μυθολογία]]
## [[Ελληνική μυθολογία]]
## [[Τρωικός πόλεμος]]
# Θρησκευτικές φιλοσοφίες
## [[Αγνωστικισμός]]
## [[Αθεϊσμός]]
## [[Φονταμενταλισμός]]
# '''[[Ψυχή]]'''
# Συγκεκριμένες θρησκείες
## [[Μπαχάι Πίστη|Πίστη Μπαχάι]]
### [[Μπαμπ]]
### [[Μπαχαουλλάχ]]
## [[Βουδισμός]]
### [[Σιντάρτα Γκαουτάμα]]
## '''[[Χριστιανισμός]]'''
### [[Αγία Γραφή]]
### [[Εκκλησία]]
### [[Ιησούς Χριστός|Ιησούς]]
### [[Πάπας]]
### [[Προτεσταντισμός]]
### [[Καθολική Εκκλησία|Ρωμαιοκαθολική Εκκλησία]]
### [[Αγία Τριάδα]]
## [[Κομφουκιανισμός]]
### [[Κομφούκιος]]
## '''[[Ινδουισμός|Ινδουϊσμός]]'''
### [[Μπαγκαβάτ Γκίτα]]
### [[Βράχμα]]
### [[Σίβα]]
### [[Ουπανισάδες]]
### [[Βέδες]]
### [[Βισνού]]
### [[Γιόγκα]]
### [[Κρίσνα]]
## '''[[Ισλάμ]]'''
### [[Αλί]]
### [[Αλλάχ]]
### [[Τζαμί]]
### [[Μωάμεθ]]
### [[Κοράνιο|Κοράνι]]
### [[Σιίτες|Σιιτισμός]]
### [[Μεβλεβί Ντερβίς|Σουφισμός]]
### [[Σουνίτες|Σουνιτισμός]]
### [[Ομάρ]]
## [[Τζαϊνισμός]]
## [[Ιουδαϊσμός]]
### [[Αβραάμ]]
### [[Μωυσής]]
### [[Πεντάτευχος|Τορά]]
### [[Ταλμούδ]]
## [[Σιντοϊσμός]]
## [[Σιχισμός]]
### [[Γκουρού Νανάκ Ντεβ]]
## [[Ταοϊσμός]]
### [[Λάο Τσε]]
## [[Ουνιταριανισμός]]
## [[Βουντού]]
## [[Ζωροαστρισμός]]
### [[Ζωροάστρης|Ζαρατούστρα]]
# [[Πνευματικότητα]]
# [[Μυστικισμός]]
## [[Διαλογισμός]]
## [[Προσευχή]]
## [[Λατρεία]]
== Φιλοσοφία (13 άρθρα) ==
# '''[[Φιλοσοφία]]'''
# [[Αισθητική]]
# [[Ηθική]]
# [[Ύπαρξη]]
# [[Εμπειρία]]
# [[Φεμινισμός]]
# [[Ελεύθερη θέληση]]
# [[Ανθρωπισμός]]
# [[Γνώση]]
# '''[[Λογική]]'''
# [[Μεταφυσική]]
# [[Πραγματικότητα]]
# [[Διαλεκτική]]
== Επιστήμη (245 άρθρα) ==
# [[Επιστήμη]]
# [[Επιστημονική μέθοδος]]
=== Αστρονομία (22 άρθρα) ===
# '''[[Αστρονομία]]'''
# [[Αστεροειδής]]
# '''[[Μεγάλη έκρηξη|Μεγάλη Έκρηξη]]'''
# [[Μαύρη τρύπα]]
# [[Κομήτης]]
# '''[[Γαλαξίες]]'''
## [[Γαλαξίας]]
# [[Έτος φωτός]]
# '''[[Φέγγος]]'''
# '''[[Πλανήτης]]'''
## '''[[Γη]]'''
## [[Δίας (πλανήτης)]]
## [[Άρης (πλανήτης)]]
## [[Ερμής (πλανήτης)]]
## [[Ποσειδώνας (πλανήτης)]]
## [[Κρόνος (πλανήτης)]]
## [[Ουρανός (πλανήτης)]]
## [[Αφροδίτη (πλανήτης)]]
# [[Ηλιακό σύστημα]]
# '''[[Αστέρας|Άστρο]]'''
## '''[[Ήλος]]'''
# [[Σύμπαν]]
=== Βιολογία (12 άρθρα) ===
# '''[[Βιολογία]]'''
# Βιολογικά υλικά:
## '''[[DNA]]'''
## [[RNA]]
## [[Ένζυμο]]
## [[Πρωτεΐνη]]
# [[Βοτανική]]
# '''[[Θάνατος]]'''
# [[Οικολογία]]
## [[Απειλούμενα είδη]]
# [[Εξημέρωση]]
# '''[[Ζωή]]'''
# [[Συστηματική ταξινόμηση]]
## [[Είδος (βιολογία)]]
==== Βιολογικές διαδικασίες (15 άρθρα) ====
# '''[[Μεταβολισμός]]'''
## [[Πέψη]]
## [[Απέκκριση]]
## '''[[Φωτοσύνθεση]]'''
## [[Αναπνοή]]
# '''[[Εξέλιξη (βιολογία)]]'''
## [[Ανθρώπινη εξέλιξη]]
#'''[[Σεξουαλικός προσανατολισμός]]'''
## [[Ετεροφυλοφιλία]]
## [[Ομοφυλοφιλία]]
# '''[[Αναπαραγωγή]]'''
## [[Ασεξουαλική αναπαραγωγή]]
## [[Σεξουαλική αναπαραγωγή]]
### [[Εγκυμοσύνη]]
### [[Συνουσία]]
==== Ανατομία (28 άρθρα) ====
# '''[[Ανατομία]]'''
# '''[[Κύτταρο]]'''
# [[Κυκλοφορικό σύστημα]]
## [[Αίμαν]]
## [[Καρδία]]
# [[Ενδοκρινές σύστημα]]
# [[Γαστρεντερική οδός]]/[[Γαστρεντερικό σύστημα|Πεπτικό σύστημα]]
## [[Παχύ έντερο]]
## [[Λεπτό έντερο]]
## [[Ήπαρ]]
# [[Καλυπτήριο σύστημα]]
## [[Μαστός]]
## [[Δέρμαν]]
# [[Μυς]]
# [[Νευρικό σύστημα]]
## [[Εγκέφαλος]]
## [[Αισθητηριακό σύστημα]]
#### [[Ωτίν]]
#### [[Γλώσσα (ανατομία)]]
#### [[Μυτίν]]
#### [[Ομάτ]]
# [[Αναπαραγωγικό σύστημα]]
## [[Πέος]]
## [[Αιδοίο]]
# [[Αναπνευστικό σύστημα]]
## [[Πνεύμονας]]
# [[Σκελετός]]
==== Υγεία και ιατρική (44 άρθρα) ====
#'''[[Ιατρική]]'''
# [[Εθισμός]]
## [[Αλκοολισμός]]
### [[Κίρρωση του ήπατος]]
## [[Τοξικομανία]]
# '''[[Καρκίνος]]'''
# [[Χολέρα]]
# [[Οδοντιατρική]]
# [[Διαβήτης (ασθένεια)|Διαβήτης]]
# [[Αναπηρία]]
## [[Τύφλωση]]
## [[Κώφωση]]
## [[Ψυχική ασθένεια]]
# '''[[Ασθένεια]]'''
# [[Φαρμακευτική]]
# [[Εθιστικές ουσίες]]
## [[Καφεΐνη]]
## [[Κάνναβη]]
## [[Κοκαΐνη]]
## [[Αιθανόλη]]
## [[Νικοτίνη]]
### [[Καπνός (φυτό)]]
## [[Όπιο]]
# [[Δυσεντερία]]
# [[Υγεία]]
# [[Καρδιακή νόσος]]
# [[Υπέρταση]]
# '''[[Ελονοσία]]'''
# [[Υποσιτισμός]]
# [[Παχυσαρκία]]
# [[Πνευμονία]]
# [[Σεξουαλικώς μεταδιδόμενα νοσήματα]]
## '''[[AIDS]]'''
## [[Σύφιλη]]
# [[Εγκεφαλικό επεισόδιο]]
# [[Φυματίωση]]
# '''[[Ιός]]'''
## '''[[Γρίπη]]'''
### [[H5N1]]
## [[Ευλογιά]]
# [[Κοινό κρυολόγημα]]
# [[Πονοκέφαλος]]
# [[Πανδημία]]
# [[Πενικιλλίνη]]
==== Οργανισμοί (29 άρθρα) ====
# '''[[Οργανισμός (βιολογία)]]'''
# '''[[Ζώο]]'''
## [[Αρθρόποδα]]
### '''[[Έντομα]]'''
#### [[Μυρμήγκι]]
#### [[Μέλισσα]]
#### [[Πεταλούδα]]
### [[Αραχνίδες]]
## [[Χορδωτά]]
### '''[[Αμφίβια]]'''
### [[Δεινόσαυρος]]
### '''[[Πτηνό]]'''
### '''[[Ψάρι]]'''
### '''[[Θηλαστικό|Θηλαστικά]]'''
#### '''[[Άνθρωπος]]'''
#### [[Γάτα]]
#### [[Αγελάδα]]
#### [[Σκύλος]]
#### [[Άλογο]]
#### [[Πρόβατο]]
#### [[Γουρούνι|Χοίρος]]
### '''[[Ερπετό]]'''
# [[Αρχαιοβακτήρια]]
# [[Βακτήριο]]
# [[Μύκητας]]
# [[Φυτό]]
## [[Άνθος]]
## [[Δέντρο]]
# [[Πρώτιστα]]
=== Χημεία (34 άρθρα) ===
# '''[[Χημεία]]'''
# [[Βιοχημεία]]
# [[Χημική ουσία]]
## [[Οξύ]]
## [[Βάση]]
## [[Άλας]]
# '''[[Χημικό στοιχείο]]'''
## [[Κατάλογος χημικών στοιχείων]]
## [[Περιοδικόν Πινάκιν|Περιοδικόν πίνακας τοι στοιχείων τη χημείας]]
## [[Αργίλιο|Αλουμίνιο]]
## [[Άνθρακας]]
## [[Χαλκός]]
## '''[[Χρυσός]]'''
## [[Ήλιον]]
## '''[[Υδρογόνον]]'''
## '''[[Σίδηρος]]'''
## [[Άζωτο]]
## '''[[Οξυγόνο]]'''
## [[Άργυρος]]
# '''[[Μέταλλα|Μέταλλο]]'''
## [[Κράμα]]
### [[Ορείχαλκος]]
### [[Κρατέρωμα]]
### [[Χάλυβας]]
# [[Οργανική Χημεία|Οργανική χημεία]]
## [[Αιθανόλη|Αλκοόλη]]
## [[Υδρογονάνθρακες|Υδρογονάνθρακας]]
## [[Ορμόνη]]
## [[Λιπίδιο]]
# '''[[Κατάσταση της ύλης]]'''
## [[Αέριο]]
## [[Υγρό]]
## [[Πλάσμα (Φυσική)]]
## [[Στερεό]]
=== Καιρός, κλίμα και γεωλογία (20 άρθρα) ===
# '''[[Κλίμα]]'''
## [[Ελ Νίνιο]]
## [[Παγκόσμια θέρμανση]]
# [[Σεισμός]]
# '''[[Γεωλογία]]'''
## '''[[Ορυκτό]]'''
### [[Διαμάντι]]
### [[Ασβεστόλιθος]]
## [[Θεωρία τεκτονικών πλακών]]
## [[Πέτρωμα]]
# [[Φυσική καταστροφή]]
# [[Ηφαίστειο]]
# [[Καιρός]]
## [[Νέφος]]
## [[Πλημμύρα]]
### [[Τσουνάμι]]
## [[Βροχή]]
### [[Βροχή|Όξινη βροχή]]
### [[Χιόνι]]
## [[Τροπικός κυκλώνας]]
=== Φυσική (31 άρθρα) ===
# '''[[Φυσική]]'''
# [[Επιτάχυνση]]
# '''[[Άτομο]]'''
## [[Ηλεκτρόνιο]]
## [[Νετρόνιο]]
## [[Πρωτόνιο]]
# '''[[Ενέργεια]]'''
## [[Ηλεκτρομαγνητική ακτινοβολία]]
### [[Ορατό φάσμα]]
#### [[Μαύρο]]
#### [[Λευκό]]
### [[Ακτίνες γ]]
# '''[[Δύναμη]]'''
## [[Ηλεκτρομαγνητισμός]]
## [[Βαρύτητα]]
## [[Ισχυρή αλληλεπίδραση]]
## [[Ασθενής αλληλεπίδραση]]
# [[Ισότοπο]]
# [[Φως]]
# '''[[Μάζα]]'''
# '''[[Μόριο]]'''
# [[Κβαντική Μηχανική|Κβαντική μηχανική]]
# '''[[Ήχος]]'''
# '''[[Ταχύτητα]]'''
# [[Σχετικότητα]]
# '''[[Χρόνος]] '''
# [[Μαγνήτης]]
# [[Ραδιενέργεια]]
## [[Ταχύτητα του φωτός]]
## [[Ταχύτητα του ήχου]]
# [[Μήκος]]
=== Μέτρηση χρόνου (8 άρθρα) ===
# '''[[Ημερολόγιο]]'''
## [[Κινεζικό ημερολόγιο]]
## [[Γρηγοριανό ημερολόγιο]]
# '''[[Ημέρα]]'''
# '''[[Μήνας]]'''
# [[Ζώνη ώρας]]
# [[Εβδομάδα]] [[Αρχείο:LinkFA-star.png|width=14px|height=14px]]
# '''[[Έτος]]'''
== Τεχνολογία (100 άρθρα) ==
# [[Τεχνολογία]]
# [[Βιοτεχνολογία]]
# [[Ένδυση]]
## [[Βαμβάκι]]
# [[Μηχανική]]
## [[Κεκλιμένο επίπεδο]]
## [[Μοχλός]]
## [[Τροχαλία]]
## [[Βίδα]]
## [[Σφήνα]]
## [[Τροχός]]
# [[Άρδευση]]
## [[Άροτρο]]
# [[Μαχαίρι]]
# [[Μεταλλουργία]]
# [[Νανοτεχνολογία]]
=== Επικοινωνία (10 άρθρα) ===
# [[Επικοινωνία]]
# [[Πληροφορία]]
# [[Δημοσιογραφία]]
## [[Εφημερίδα]]
## [[Μέσα ενημέρωσης|Μέσα Μαζικής Ενημέρωσης]]
# [[Τυπογραφία]]
# [[Σιδηρόδρομος]]
# [[Τηλέγραφος]]
# [[Τηλέφωνο]]
## [[Κινητό τηλέφωνο]]
=== Ηλεκτρονική (14 άρθρα) ===
# [[Ηλεκτρονική]]
## [[Χωρητικότητα (ηλεκτρισμός)]]
## [[Απολαβή]]
## [[Ηλεκτρικό φορτίο]]
## [[Ηλεκτρικό ρεύμα]]
## [[Ηλεκτρική αντίσταση]]
## [[Συχνότητα]]
## [[Συντελεστής αυτεπαγωγής]]
# Εξαρτήματα
## [[Πυκνωτής]]
## [[Πηνίο]]
## [[Τρανζίστορ]]
## [[Δίοδος]]
## [[Αντίσταση]]
## [[Μετασχηματιστής]]
==== Υπολογιστάς και Διαδίκτυον (28 άρθρα) ====
# [[Ηλεκτρονικόν υπολογιστής]]
## [[Σκληρόν δίσκος]]
## [[Μητρικόν κάρτα]]
## [[Κεντρικόν Μονάδα Επεξεργασίας]]
## [[Μνήμη τυχαίας προσπέλασης]]
# [[Τεχνητόν νοημοσύνη|Τεχνητόν ευφυΐα]]
# [[Επιστήμη υπολογιστίων]]
## [[Αλγόριθμος]]
# [[Διαδίκτυον]]
## [[Ηλεκτρονικόν ταχυδρομείον|E-mail]]
## [[TCP/IP]]
## [[Παγκόσμιον Ιστός]]
### [[Web browser]]
# [[Λειτουργικόν σύστημαν]]
## [[Linux]]
## [[Mac OS]]
## [[Microsoft Windows]]
## [[Unix]]
# [[Γλώσσα προγραμματισμού]]
## [[BASIC]]
## [[C++]]
## [[Java]]
## [[PHP]]
# [[Λογισμικόν]]
# [[Διεπαφή χρήστη]]
## [[Πληκτρολόγιο]]
## [[Οθόνη υπολογιστή]]
## [[Πεντικόν (υπολογιστές)]]
=== Πρώτες ύλες, ενέργεια και καύσιμα (17 άρθρα) ===
# [[Ηλεκτρισμός]]
## [[Πυρηνική ενέργεια]]
# [[Ορυκτό καύσιμο]]
## [[Γαιάνθρακας (καύσιμο)]]
## [[Φυσικό αέριο]]
## [[Πετρέλαιο]]
# [[Φωτιά]]
# [[Μηχανή εσωτερικής καύσης]]
## [[Ήπιες μορφές ενέργειας|Ανανεώσιμες Πηγές Ενέργειας]]
### [[Υδροηλεκτρική ενέργεια]]
### [[Ηλιακή ενέργεια]]
### [[Αιολική ενέργεια]]
# [[Γυαλί]]
# [[Χαρτί]]
# [[Πλαστικό]]
# [[Ατμομηχανή]]
# [[Ξύλο]]
=== Μεταφορές (6 άρθρα) ===
# [[Μεταφορά]]
# [[Αεροσκάφος]]
# [[Αυτοκίνητο]]
# [[Ποδήλατο]]
# [[Πλοίο]]
# [[Τραίνο]]
=== Όπλα (9 άρθρα) ===
# [[Όπλο]]
# [[Εκρηκτικό]]
## [[Πυρίτιδα]]
# [[Πυροβόλο]]
# [[Πυρηνικό όπλο]]
# [[Ξίφος|Σπαθί]]
# [[Άρμα μάχης]]
# [[Τόξο (όπλο)]]
# [[Υποβρύχιο]]
== Τρόφιμα (32 άρθρα) ==
# [[Τροφή]]
# [[Ψωμί]]
# [[Δημητριακά]]
## [[Κριθάρι]]
## [[Λαζούδ]]
## [[Βρώμη]]
## [[Ρύζι]]
## [[Σίκαλη]]
## [[Σόργο]]
## [[Σιτάρι]]
# [[Τυρί]]
# [[Σοκολάτα]]
# [[Μέλι]]
# [[Φρούτα|Φρούτο]]
## [[Μήλο]]
## [[Μπανάνα]]
## [[Σταφύλι]]
## [[Πορτοκάλι]]
# [[Σόγια]]
# [[Λεμόνι]]
# [[Κρέας]]
# [[Ζάχαρη]]
# [[Λαχανικό]]
## [[Πατάτα]]
=== Ποτά (8 άρθρα) ===
# [[Αλκοολούχο ποτό]]
## [[Μπίρα|Μπύρα]]
## [[Κρασί]]
# [[Κόλα]]
# [[Καφές]]
# [[Γάλα]]
# [[Τσάι]]
# [[Νερό]]
== Μαθηματικά (26 άρθρα) ==
# [[Μαθηματικά]]
# [[Άλγεβρα]]
# [[Αριθμητική]]
# [[Αξίωμα]]
# [[Απειροστικός λογισμός]]
## [[Παράγωγος]]
## [[Ολοκλήρωμα]]
# [[Γεωμετρία]]
## [[Κύκλος]]
### [[Αριθμός π|Πι]]
## [[Τετράγωνο]]
## [[Τρίγωνο]]
# [[Θεωρία ομάδων]]
# [[Μαθηματική απόδειξη]]
## [[Μαθηματική επαγωγή]]
## [[Εις άτοπον απαγωγή]]
# [[Αριθμός]]
## [[Μιγαδικός αριθμός]]
## [[Ακέραιος αριθμός]]
## [[Φυσικός αριθμός]]
## [[Πρώτος αριθμός]]
## [[Ρητός αριθμός]]
# [[Άπειρο]]
# [[Θεωρία συνόλων]]
# [[Στατιστική]]
# [[Τριγωνομετρία]]
== Μέτρηση και μονάδες μέτρησης (8 άρθρα) ==
# '''[[Μέτρηση]]'''
# [[Διεθνές σύστημα μονάδων]]
# [[Χιλιόγραμμο|Κιλό]]
# [[Λίτρο]]
# [[Μέτρο (μονάδα μήκους)]]
# [[Νιούτον (μονάδα μέτρησης)]]
# [[Βολτ]]
# [[Βατ (μονάδα μέτρησης)]]
[[Κατηγορίαν:Βικιπαίδεια]]
kiworp6l5i9wqddhvfwt49oh6pd7an7
Κατηγορίαν:Σινεμά
14
932
31233
30107
2013-03-07T20:36:13Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 129 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1458269]] [[M:User:Addbot/WDS|(translate me)]]
31233
wikitext
text/x-wiki
[[Κατηγορίαν:Πολιτισμόν]]
sv0ottb8dqlvhhgpdjvqgmft1x1mvh7
Γκέοργκ Βίλχελμ Φρήντριχ Χέγκελ
0
935
32582
31234
2015-12-12T17:05:56Z
CommonsDelinker
121
Replacing Hegel.jpg with [[File:G.W.F._Hegel_(by_Sichling,_after_Sebbers).jpg]] (by [[commons:User:CommonsDelinker|CommonsDelinker]] because: [[:commons:COM:FR|File renamed]]: this is not Idora Hegel).
32582
wikitext
text/x-wiki
[[Εικόναν:G.W.F. Hegel (by Sichling, after Sebbers).jpg|thumb|right|Γκέοργκ Βίλχελμ Φρήντριχ Χέγκελ]]
Ο '''Γκέοργκ Βίλχελμ Φρήντριχ Χέγκελ''' (''Georg Wilhelm Friedrich Hegel'', Στουτγκάρδη [[27 Αλωναρί]] [[1770]] - [[Βερολίνο]] [[13 Αεργίτε]] [[1831]]) ή '''Έγελον''' έτον τρανός [[Γερμανοί|Γερμανός]] μεταφυσικός [[φιλοσοφίαν|φιλόσοφον]] τη [[γερμανικός ιδεαλισμός|Γερμανικού Ιδεαλισμού]]. Ιδέασατου έσαν η Διαλεκτική Θεωρίαν, η Ανάσυρσην (Aufhebung), η Διαλεκτικήν Αφέντε-Σκλάβονος και ο Απόλυτον Ιδεαλισμός.
[[Κατηγορίαν:Φιλοσοφίαν]]
qixy26buxbjyxp9j9kdt88sk3nbsdcj
Κατηγορίαν:Φιλοσοφίαν
14
936
31235
30477
2013-03-07T20:36:46Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 121 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4266974]] [[M:User:Addbot/WDS|(translate me)]]
31235
wikitext
text/x-wiki
[[Κατηγορίαν:Φιλοσοφία|*]]
phf3hlnk2pxqypmc1q6zyi8yheexhws
Βοστώνη
0
939
36760
31236
2025-12-16T08:50:05Z
Εὐθυμένης
2777
36760
wikitext
text/x-wiki
[[Αρχείον:Arlington Street Church, Boston MA.jpg|thumb|200px]]
Η '''Βοστώνη''' έν το τρανύτερον πολιτείαν και η πρωτεύουσα τη [[Μασσαχουσέττη]]ς. Ονομάζουμε 'ατεν και "Αθήναν τη Αμερικής" γιατί εχ' τα περισσότερα [[πανεπιστήμιο|πανεπιστήμια]] ασ'όλια τ'άλλα πολιτείας τη [[Αμερική]]ς.
Σην Βοστώνην ειν' πολλοί [[Πόντιοι]] Έλληνες ασ' όλια τα μερέας τη [[Ελλάδα]]ς, αμάν οι πλείονες είν' ασή Μακεδονίας τα νομούς, όπως την [[Κοζάνην]], [[Ημαθίαν]], [[Σαλονίκην]], [[Φλώριναν]], [[Κέστεραν]] κ,α.
Έχομε δύο Ποντιακούς Συλλόγους και είναι πολλά δυνατοί, την «Παναΐαν Σουμελάν Βοστώνης» και την «Ποντιακήν Εστίαν». Είναι ασ' ολίγους Συλλόγους που έχ'νε τ'ατεινέτερα κτίρια απέ σην καρδίαν τη Βοστώνης.
Εχ'νε χορευτικά συγκροτήματα, μικρά και τρανά. Η Παναΐα Σουμελά εχ' πολλά δυνατόν νεολαίαν. Η νεολαία μουν είν' ολ' γεννεμέν αδά σην Αμερικήν, αμάν έμαθαν να παίζνε την κεμεντζέν και νε τραωδούν, άμον ντ'εγεννέθαν, για σον Πόντον για σην Ελλάδαν.
Ασό 2008, ερχίνεσεν να έχ' Σκολείον Ελλενικής και Ποντιακής γλώσσας εντάμαν, όθεν μαθάνε την [[Ιστορίαν]], [[Πολιτισμόν]], [[Παράδοσην]], [[ήθη]], [[έθιμα]].
Τα τραωδίας βοηθούν πολλά τα μωρά να μαθάνε την [[γλώσσαν]] για τ' ατό εμείς με την νεολαίαν έμουν, χορεύομε και τραωδούμε όθεν και να ευρίουμες.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{en}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
8fv8i7k5ylo7xjxaeue5qm60hru6ssy
Βασίλης Ανθόπουλος
0
944
36572
34489
2025-12-15T19:06:49Z
Εὐθυμένης
2777
36572
wikitext
text/x-wiki
Ο Βασίλειος Ανθόπουλος ή Βασίλ Αγάς γεννέθεν σο χωρίον Κιζίκ του Απές σο σαντζάκ τη Σεβάστειας το έτος 1888. Μορφώθεν απ έναν Γάλλον αρχιτέκτονα και για τ' ατό καλέθεν "Ουστάς" απο το τούρκικον "USTA" που σημέν "πρωτομαστόρ". Το 1914 χταλεύει έναν Τούρκο που βιασ τη γαρη τη καρντασιτ΄ και κλόσκει σο βουνόν αντάρτης. Απε το 1914 ως το 1918 πολλά συμφοράς φερ τη Τούρκοις, με πιο τρανόν το γλύτωμαν ενός Ρουσαντ' Στρατηγού α ση φυλακήν τη Σεβάστειας. Οι Ρουσσάντ δίγουν ατον παράσημον και τουφέκιαν να εφτάει πόλεμον αντάρτι. Αμα ατός κι μπορεί να πολεμεί τη Τούρκοις που εν πολλοί και τακτικοί και για τ' ατο το 1918 ερχεται σην Αθήνα να παρακαλεί το Βενιζέλο και το ασκέρ' το Ελληνικό. Ο Βενιζέλος βοήθεια κι διγ' και ο Βασίλ Ουστάς αφίν οπίς τη γαρήνατ' και λίγους άγουρους τς τ' αντάρτικο σα χωρία Ριζό και Βάγγενα (Σεβαστειαννά) τη Πέλλας ση Μακεδονία και κλόσκεται παλ' σον Πόντο. Το 1920 οι Τούρκοι εφταν ατον καρτερ' σην Κωνσταντινούπολη και θανατώνε ατον. Τη 13 Τρυγομηνά 2009 σο Δήμον τη Σκύδρας εποίκαν το άγαλμα του Βασίλ Ουστά.
{{authority control}}
[[Κατηγορίαν:Πόντος]]
r70vq51vpmk7h5dmz82k24so6yp8c64
Βασιλης ανθοπουλος
0
946
9249
2009-10-14T17:09:31Z
Omnipaedista
35
[[Βασιλης ανθοπουλος]] ετερχλαεύτεν σο [[Βασίλης Ανθόπουλος]]
9249
wikitext
text/x-wiki
#REDIRECT [[Βασίλης Ανθόπουλος]]
aozbki22slc63yhdsr6ki0zoj9c11qt
1 Τρυγομηνά
0
956
37245
37201
2025-12-16T19:01:42Z
Εὐθυμένης
2777
37245
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[30 Σταυρί]] | [[1 Τρυγομηνά]] | [[2 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''1 Τρυγομηνά''' εν 274ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 275ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 91 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[1 Σταυρί]] - [[1 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|1001]]
j9nijqzwxjj4j0d0bf42rm8kl3hazl5
Μιχάλης Καλιοντζίδης
0
957
36292
36180
2025-07-29T11:38:16Z
109.242.93.219
36292
wikitext
text/x-wiki
Ο '''Μιχάλης Καλιοντζίδης''' (1960-) εν [[Ελλάδα|Έλλενας]] μουσικός και [[κεμεντζές|κεμεντζετζής]].
== Βιογραφικόν ==
Ο Καλιοντζίδης εγεννέθεν σο χωρίον Διπόταμος (Παπελέρ) σην [[Καβάλα|Καβάλαν]]. Ο κύρ' σ' ατ' εγεννέθεν σο χωρίον Κοσμά τση Ματσούκας και η μάνα τ' αδά σην Ελλάδαν άμα εκράτ'νεν ας σην Κρώμ' κι ας ση Χ̌ερρίαινα μερέαν. Σο Παπελέρ ο Μουχαήλτς επήεν σο Δημοτικόν και εξέγκεν τη Μέση Τεχνική Σχολή Εργοδηγών.
Την κεμεντζ̌έν εσκάλωσεν να μαθάνει α' μαναχός ατ' το 1975, άμα επεκεί εποίκεν ατον κάποσον μάθεμαν και ο Λάμπον ο Τηλκερίδης. Σα '81 τη χρονίας επήεν σην [[Αθήνα|Αθήναν]] κι έμαθεν μουσικήν σο Ευγενίδειον Ωδείον. Σα 1988 εποίκεν μουσικόν σχολείον σην Καλλιθέα Αθηνών και τ' όνομαν αθε έτον «Λύρα». Οσήμερον σχολεία έχ̌' δώδεκα αΐκα σκολεία. Εξόν ας σην Αθήναν έχ̌' σκολεία ση [[Θεσσαλονίκη|Θεσσαλονίκην]], σην Καβάλα, σο Κιλκίς, σην Κατερίνην, σην Βέροια, σην Κοζάνην, σον Κοπανόν Ναούσης, σην Κρύα Βρύση Γιαννιτσών, ση Δράμαν, σην Πρέβεζα και σην Ανατολή Ιωαννίνων.
Ο Καλιοντζίδης εξέγκεν πολλά δίσκους. Εξόν ασ' ατό παναΰρια πα πάει κι εκεί που ζούνε Πόντιοι σην [[Ευρώπην]], [[Αμερικήν]] και [[Αυστραλία|Αυστραλίαν]].
== Δουλείας ατ' ==
=== Βιβλία ===
*''Η Λύρα του Πόντου'', 2008
=== Δίσκοι ===
*''Αγροτσάλτς'', 1998
*''Τ αυθεντικα του Ποντου 1986
Καθως,ακολουθησαν τα αυθεντικα του Ποντου#2,#3,#4
== Συνδέσμε ==
*[https://pontianlyrics.gr/persons/person-details?personId=36 Βιογραφία σο pontianlyrics.gr]
*[http://pontosworld.com/index.php?option=com_content&task=view&id=1119&Itemid=78&limit=1&limitstart=1 Βιογραφικόν σο pontosworld.com] (ελλ.)
[[Κατηγορίαν:Μουσική|Καλιοντζιδης, Μιχαλης]]
4cvqhiqoov2gzjccmibldpeewi37kjy
Κομφούκιον
0
959
34479
34449
2020-04-08T05:46:50Z
Tulsi
5081
Cross-wiki abuse
31238
wikitext
text/x-wiki
[[Αρχείον:Confucius 02.png|150px|right|thumb|Κομφούκιον]]
Ο Κομφούκιος έτον πελλόν φιλόσοφον ασήν Κίναν και τα έργανατ έφταναν ους σην Κίναν, Κορέαν, Ιαπωνίαν, Βιετνάμ. Η φιλοσοφίαν ατ αναφέρκονταν σην ηθικήν, σα κοινωνικά, σην δικαιοσύνην και σην ειρήνην.
[[Κατηγορίαν:Φιλοσοφίαν]]
p69czx48747inyi82gvy6cxdojxmons
Πεσκιοϊλού Αντέμ
0
961
31239
30789
2013-03-07T20:37:31Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 3 interwiki links, now provided by [[d:|Wikidata]] on [[d:q471339]] [[M:User:Addbot/WDS|(translate me)]]
31239
wikitext
text/x-wiki
Ο '''Πεςκιοϊλού Αντέμ''' ([[τουρκικόν γλώσσα|τουρκ.]] ''Beşköylü Adem'', [[ελλενικόν γλώσσα|ελλ.]] ''Μπεσκιοϊλού Αντέμ'', [[1 Μαρτί]] [[1980]]-) εν πόντιος μουσικός και [[κεμεντζές|κεμεντζετζής]] αση [[Τουρκία|Τουρκίαν]]. Εξέρ και καλατςεύ' τα [[ποντιακόν λαλίαν|ποντιακά]] ντο εν το μητρικόν η γλώσσαν ατ'. Το κανονικόν τ'όνομαν ατ' εν Αντέμ Εκίζ.
== Βιογραφικόν ==
Ο Αντέμης εγεννέθεν κι εθράφεν σο χωρίον Πέςκιοϊ σα [[Σούρμενα]], κοντά σην [[Τραπεζούντα|Τραπεζούνταν]]. Το παλαιόν τ'όνομαν τη χωρί έτονε «Καλίστη». Εςς τον ποντιακόν πολιτισμόν και κρατεί ατόν γιατί με τ'ατόν έζησεν. Για τον κύρην ατ' λέει αν έλεεν δυο τρία τέσσερα τουρκικά λόγια, έλεεν δέκα δεκαπέντε ποντιακά. Ο Αντέμης ασην καρδίαν ατ' λεει εν πόντιος, όχι ασ'όνομαν.
Σην κεμεντζέν ερχίνεσεν αυτοδίδακτος κι έμαθεν τα καϊτέδες άμον ντ'έκουεν ατα ασοι παλαιούς τη χωρί, αέτς άμον ντο έπαιζαν και έλεγαν ατα. Επεκεί πολλά επαίνεν κι έρχουτον σα πανηγύρε και σα βραδύας κι έπαιζεν την κεμεντζέν. Όνταν ετελείωσεν το λύκειον ασον [[Πόντος|Πόντον]] έφυγεν και με την οικογένειαν εντάμαν επήγεν σην [[Κωνσταντινούπολη|Κωνσταντινούπολην]].
Ασα 2001 κιαν πουλίσκεται το δισκογραφικόν η δουλείαν ατ' «''Yanarım Ateşine''». Ατουπές εςς έναν τραγωδίαν σα ποντιακά. Σα 2005 συνεργάσκουτον με τον Νίκο Μιχαηλίδη και τον Φίλιππο Κεσαπίδη κι εξέβεν σην [[Ελλάδα|Ελλάδαν]] το CD «''Ρωμαίικα Τραγωδίας''» (σον Πόντον τα ποντιακά λέγουν ατα «ρωμαίικα»). Σα 2007 με τον Κερίμ Αϊντίν εντάμαν εκυκλοφόρησεν σην [[Τουρκία|Τουρκίαν]] το CD «''Gülüm Demedimmi Sana''».
Οσήμερον εξόν ασ'αλμπούμε ο Αντέμης πολλά πάει σα παρακάθε και σα βραδύας τη Ποντίων σην Ελλάδαν, σο [[Βέλγιον]], ση [[Γερμανία|Γερμανίαν]], ση Τουρκίαν, σην [[Ολλανδία|Ολλανδίαν]] και σ'άλλα χώρας.
== Αλμπούμε ==
* ''Yanarım Ateşine'', 2000
* ''Ρωμαίικα Τραγωδίας'', 2005
* ''Gülüm Demedimmi Sana'', 2007
* ''AS SIN TRAPEZOUNTAN SIN THESSALONIKIN''2010
* ''Anemo /Rüzgar
[[Κατηγορίαν:Μουσική|Πεσκιοϊλου Αντεμ]]
r66r3zc0npioi6yh63oxklss84xcut6
Στάνλεϊ Κιούμπρικ
0
962
31449
31240
2013-03-11T10:24:43Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 2 interwiki links, now provided by [[d:|Wikidata]] on [[d:q2001]] [[M:User:Addbot/WDS|(translate me)]]
31449
wikitext
text/x-wiki
Ο '''Στάνλεϊ Κιούμπρικ''' (Stanley Kubrick) έτον σκηνοθέτες, σεναριογράφον κ' παραγωγός τη κινηματογράφονος ασήν [[Αμερικήν]].
== Φιλμογραφίαν ==
<ul>
<li>'''1950:''' <cite>Day of the Fight</cite>
<li>'''1951:''' <cite>Flying Padre</cite>
<li>'''1952:''' <cite>The Seafarers</cite>
<li>'''1953:''' <cite>Fear and Desire</cite>
<li>'''1955:''' <cite>Killer's Kiss</cite>
<li>'''1956:''' <cite>The Killing</cite>
<li>'''1957:''' <cite>Paths of Glory</cite> ("Σταυροί σο Μέτωπον")
<li>'''1960:''' <cite>Spartacus</cite> ("Σπάρτακον")
<li>'''1962:''' <cite>Lolita</cite> ("Λολίτα")
<li>'''1964:''' <cite>Dr. Strangelove</cite> ("S.O.S. Πεντάγωνον Καλεί Μόσχαν")
<li>'''1968:''' <cite>2001: A Space Odyssey</cite> ("2001: Η Οδύσσειαν τη Διαστήματος")
<li>'''1971:''' <cite>A Clockwork Orange</cite>
<li>'''1975:''' <cite>Barry Lyndon</cite>
<li>'''1980:''' <cite>The Shining</cite>
<li>'''1987:''' <cite>Full Metal Jacket</cite>
<li>'''1999:''' <cite>Eyes Wide Shut</cite>
</ul>
[[Κατηγορίαν:Σκηνοθέτ|!]]
t0s2alxzhzymkqe1q5nrp5rkz46h1vq
Κατηγορίαν:Σκηνοθέτ
14
963
31719
26618
2013-07-22T01:01:44Z
MerlIwBot
2140
Robot: Removing [[sq:Kategoria:Regjisor filmi]] (deleted)
31719
wikitext
text/x-wiki
[[Κατηγορίαν:Σινεμά]]
[[af:Kategorie:Rolprentregisseurs]]
[[ast:Categoría:Direutores]]
[[be-x-old:Катэгорыя:Кінарэжысэры]]
[[ca:Categoria:Directors de cinema]]
[[cs:Kategorie:Režiséři]]
[[da:Kategori:Filminstruktører]]
[[de:Kategorie:Filmregisseur]]
[[el:Κατηγορία:Σκηνοθέτες]]
[[en:Category:Film directors]]
[[eo:Kategorio:Filmoreĝisoroj]]
[[es:Categoría:Directores de cine]]
[[et:Kategooria:Filmilavastajad]]
[[fa:رده:کارگردانان]]
[[fi:Luokka:Elokuvaohjaajat]]
[[fr:Catégorie:Réalisateur]]
[[he:קטגוריה:במאי קולנוע]]
[[hi:श्रेणी:फ़िल्म निर्देशक]]
[[hr:Kategorija:Filmski redatelji]]
[[hu:Kategória:Filmrendezők]]
[[id:Kategori:Sutradara]]
[[ja:Category:映画監督]]
[[ko:분류:영화 감독]]
[[lb:Kategorie:Filmregisseuren]]
[[lv:Kategorija:Kinorežisori]]
[[mk:Категорија:Филмски режисери]]
[[ms:Kategori:Pengarah filem]]
[[nn:Kategori:Filmregissørar]]
[[pt:Categoria:Cineastas]]
[[ru:Категория:Кинорежиссёры]]
[[sk:Kategória:Filmoví režiséri]]
[[sl:Kategorija:Filmski režiserji]]
[[sr:Категорија:Редитељи]]
[[th:หมวดหมู่:ผู้กำกับภาพยนตร์]]
[[tl:Kaurian:Mga direktor ayon sa bansa]]
[[tr:Kategori:Film yönetmenleri]]
[[uk:Категорія:Кінорежисери]]
[[vls:Categorie:Cineast]]
[[zh:Category:電影導演]]
cyin2nqnql00mjjcyg8qkelgmag5v5h
Πρότυπον:Χρήστες es
10
977
31241
30830
2013-03-07T20:37:54Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 169 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5542595]] [[M:User:Addbot/WDS|(translate me)]]
31241
wikitext
text/x-wiki
{{Babel field N
|letter code size=1.5em
|letter code=es
|text size=0.83em
|text= El '''[[:Κατηγορίαν:User es|español]]''' es la '''[[:Κατηγορίαν:User es-N|lengua materna]]''' {{#switch: {{{mw|}}} | 1 = mía | w = de esta usuaria. | de este usuario. }}}}<noinclude>
</noinclude>
ftinr0ylbzz76l84wxnny4ejkt7reu1
Κατηγορίαν:User es
14
979
9855
2009-12-01T19:32:49Z
Qoan
1170
Καινούρεον σελίδαν με '[[Κατηγορίαν:Βαβέλ]]'
9855
wikitext
text/x-wiki
[[Κατηγορίαν:Βαβέλ]]
af487s67kicv88furv78hphgoirnzr7
Κατηγορίαν:User es-N
14
980
31242
30853
2013-03-07T20:38:12Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 156 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6400684]] [[M:User:Addbot/WDS|(translate me)]]
31242
wikitext
text/x-wiki
{{Commonscat|User es-N}}
[[Κατηγορίαν:User es]]
nf40bxpwsighw3mv5ld3bbq1e8cuz7f
Κατηγορίαν:User ca
14
981
31558
31243
2013-04-13T07:49:55Z
KLBot2
3570
Bot: Migrating 1 interwiki links, now provided by [[Wikidata]] on [[:d:Q6392510]]
31558
wikitext
text/x-wiki
{{Commonscat|User ca}}
[[Κατηγορίαν:Βαβέλ]]
hzs9olzpqobtdlgkiuhzrhl20ek650i
Κατηγορίαν:User en-3
14
985
9863
9861
2009-12-01T19:38:34Z
Qoan
1170
9863
wikitext
text/x-wiki
[[Κατηγορίαν:User en]]
sk3yj5xk7kwoj9dhrefpqd2cc3it83o
Κατηγορίαν:User ar
14
987
31556
31246
2013-04-13T07:49:54Z
KLBot2
3570
Bot: Migrating 1 interwiki links, now provided by [[Wikidata]] on [[:d:Q6387736]]
31556
wikitext
text/x-wiki
{{Commonscat|User ar}}
[[Κατηγορίαν:Βαβέλ]]
b8lodt8eatx4hdqr52orjxtb18zot1f
Κατηγορίαν:Πρότυπα Βιβλιογραφίας
14
996
9916
2009-12-04T13:04:09Z
Qoan
1170
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πρότυπα]]'
9916
wikitext
text/x-wiki
[[Κατηγορίαν:Πρότυπα]]
ou0u4xph1hvsmak9ybztlxd2p0okt7b
Πρότυπον:Cite book
10
997
36702
32490
2025-12-15T22:36:32Z
Εὐθυμένης
2777
Αντικατάσταση σελίδας με «<includeonly>{{#invoke:citation/CS1|citation |CitationClass=book }}</includeonly><noinclude> {{τεκμηρίωση προτύπου}} </noinclude>»
36702
wikitext
text/x-wiki
<includeonly>{{#invoke:citation/CS1|citation
|CitationClass=book
}}</includeonly><noinclude>
{{τεκμηρίωση προτύπου}}
</noinclude>
s6q85ciwmj0dtje4j8h93zad000ypi9
Κατηγορίαν:Πρότυπα βοήθειας
14
998
9925
2009-12-04T13:39:33Z
Qoan
1170
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πρότυπα]]'
9925
wikitext
text/x-wiki
[[Κατηγορίαν:Πρότυπα]]
ou0u4xph1hvsmak9ybztlxd2p0okt7b
Κατηγορίαν:Πρότυπα Χαιρέτημαν
14
999
9949
2009-12-04T14:38:40Z
Qoan
1170
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]'
9949
wikitext
text/x-wiki
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]
ppi47h4quw2aoq5q3e9gvbzgj8rs77v
Κατηγορίαν:User ru
14
1003
9977
2009-12-04T15:03:19Z
Qoan
1170
Καινούρεον σελίδαν με '[[Κατηγορίαν:Βαβέλ]]'
9977
wikitext
text/x-wiki
[[Κατηγορίαν:Βαβέλ]]
af487s67kicv88furv78hphgoirnzr7
Κατηγορίαν:User ru-N
14
1004
31575
31552
2013-04-13T07:58:38Z
KLBot2
3570
Bot: Migrating 154 interwiki links, now provided by [[Wikidata]] on [[:d:Q6587224]]
31575
wikitext
text/x-wiki
{{Commonscat|User ru-N}}
[[Κατηγορίαν:User ru]]
h4m5e39yi6q2iiykj5ijyylmkcr66fm
Κατηγορίαν:User it-1
14
1005
31569
31251
2013-04-13T07:50:45Z
KLBot2
3570
Bot: Migrating 6 interwiki links, now provided by [[Wikidata]] on [[:d:Q6445707]]
31569
wikitext
text/x-wiki
{{Commonscat|User it-1}}
[[Κατηγορίαν:User it]]
j9bi4lq6o5hqkpwnve3jz0tmn3rtllr
Κατηγορίαν:User it
14
1006
9983
9982
2009-12-04T15:06:00Z
Qoan
1170
9983
wikitext
text/x-wiki
[[Κατηγορίαν:Βαβέλ]]
af487s67kicv88furv78hphgoirnzr7
Κατηγορίαν:User mg
14
1011
31471
30663
2013-03-11T10:26:20Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 25 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6489562]] [[M:User:Addbot/WDS|(translate me)]]
31471
wikitext
text/x-wiki
[[Κατηγορίαν:Βαβέλ]]
af487s67kicv88furv78hphgoirnzr7
Κατηγορίαν:User lt
14
1012
31570
30249
2013-04-13T07:52:25Z
KLBot2
3570
Bot: Migrating 101 interwiki links, now provided by [[Wikidata]] on [[:d:Q6488868]]
31570
wikitext
text/x-wiki
{{Commonscat|User lt}}
[[Κατηγορίαν:Βαβέλ]]
qq1a344457hqrfs4p23x3buppisdzp1
Κατηγορίαν:User szl
14
1013
31535
29448
2013-04-02T18:49:51Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 35 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6588387]] [[M:User:Addbot/WDS|(translate me)]]
31535
wikitext
text/x-wiki
[[Κατηγορίαν:Βαβέλ]]
af487s67kicv88furv78hphgoirnzr7
Πρότυπον:Nowrap
10
1014
9998
2009-12-04T15:23:44Z
Qoan
1170
Καινούρεον σελίδαν με '<includeonly><span style="white-space:nowrap">{{{1}}}</span></includeonly><noinclude>[[Κατηγορίαν:Πρότυπα βοήθειας]]</noinclude>'
9998
wikitext
text/x-wiki
<includeonly><span style="white-space:nowrap">{{{1}}}</span></includeonly><noinclude>[[Κατηγορίαν:Πρότυπα βοήθειας]]</noinclude>
i03zweju0ai6ebit8bbnpcxjr9np1t7
Πρότυπον:Γλώσσα
10
1015
10002
10001
2009-12-04T18:25:53Z
Qoan
1170
Διορθώστε την μετάφραση!
10002
wikitext
text/x-wiki
<!-- Δεν λειτουργεί σωστά ακόμα, ευτιχώς σε λίγο να το κάνει
Επίσης, προσπάθησα να γράφω σε κάτι ποντιακά, αλλά προφανώς έκανα λάθη, άμα μπορείτε, διορθώστε το -->
{| class="infobox_v2"
! class="media" colspan="2" style="font-size:120%; {{#switch: {{{color|}}}
| artificial
| black
| #8899FD
| #808080
| Sudamérica
| Caribe
| Tupí
| #6677FA
| #4455F8
| #3344E6
| #3344e6
| #2233C4
| #2233c4
| #1111A2
| #1111a2
| #000080
| #default = color: white;
| }} background-color: {{{color|#dddddd}}};" | {{#if: {{{1|}}} | {{{1|}}} <br />}}{{#if:{{{όνεμα|}}} | {{{όνεμα}}} <br />}}{{#if: {{{ντόπιον όνεμα<includeonly>|</includeonly>}}} | ''{{{ντόπιον}}}'' }}
|-
{{#if:{{{Φτιαγμένη από<includeonly>|</includeonly>}}} |
{{!}} style="vertical-align: top; padding-left: 0.5em;" {{!}} '''Φτιαγμένη από'''
{{!}} style="text-align: left;" {{!}} {{{φτιαγμένη από}}}
{{!}}-
}}
{{#if:{{{Κράτος<includeonly>|</includeonly>}}} {{{κράτη<includeonly>|</includeonly>}}}|
{{!}} style="vertical-align: top; padding-left: 0.5em;" {{!}} '''Συντισένατεν σην'''
{{!}} style="text-align: left;" {{!}} {{{κράτη|{{{κράτος}}}}}}
{{!}}-
}}
{{#if:{{{ομιλητές<includeonly>|</includeonly>}}} |
{{!}} style="vertical-align: top; padding-left: 0.5em;" {{!}}'''Ομιλητές'''
{{#if:{{{h1<includeonly>|</includeonly>}}} {{{h2<includeonly>|</includeonly>}}} |
• Nativos:<br>
• Otros: }}
{{!}} {{{ομιλητές}}}
{{#if:{{{h1<includeonly>|</includeonly>}}} {{{h2<includeonly>|</includeonly>}}} |
• {{{h1|''sin datos''}}}<br>
• {{{h2|''sin datos''}}}
}}
{{!}}-
}}
{{#if:{{{rank<includeonly>|</includeonly>}}} |
{{!}} style="vertical-align: top; padding-left: 0.5em;" {{!}} '''Ρανκ'''
{{!}} style="text-align: left;" {{!}} [http://www.davidpbrown.co.uk/help/top-100-languages-by-population.html {{{ρανκ}}}] <small>(Ethnologue 1996)</small>
{{!}}-
}}
{{#if:{{{lengua_muerta<includeonly>|</includeonly>}}} |
{{!}} style="vertical-align: top; padding-left: 0.5em;" {{!}} {{nowrap|'''[[Θνητή γλώσσα]]'''}}
{{!}} style="text-align: left;" {{!}} {{{θνητή γλώσσα}}}
{{!}}-
}}
{{#if:{{{Γενετική τη γλώσσας<includeonly>|</includeonly>}}} |
{{!}} style="vertical-align: top; padding-left: 0.5em;" {{!}} '''[[Γενετική τη γλώσσας]]'''
{{!}} style="text-align: left;" {{!}} {{{γενετική τη γλώσσας}}}
{{!}}-
}}
{{#if:{{{Διάλεκτοι<includeonly>|</includeonly>}}} |
{{!}} style="vertical-align: top; padding-left: 0.5em;" {{!}} '''[[Διάλεκτος|Διάλεκτοι]]'''
{{!}} style="text-align: left;" {{!}} {{{διάλεκτοι}}}
{{!}}-
}}
{{#if:{{{γραφή<includeonly>|</includeonly>}}} |
{{!}} style="vertical-align: top; padding-left: 0.5em;" {{!}} '''[[Αλφάβετον]]'''
{{!}} style="text-align: left;" {{!}} {{{γραφή}}}
{{!}}-
}}
! colspan="2" style="{{#switch: {{{color|}}}
| artificial
| black
| #8899FD
| #808080
| Sudamérica
| Caribe
| #6677FA
| #4455F8
| #3344E6
| #3344e6
| #2233C4
| #2233c4
| #1111A2
| #1111a2
| #000080
| #default = color: white;
| }} background-color: {{{color|#dddddd}}}; text-align:center;"|Επίσημα
|-
| valign="top" style="padding-left: 0.5em;" {{!}} '''Επίσημον γλώσσαν'''
{{!}} {{#if:{{{και επίσημον<includeonly>|</includeonly>}}}|{{{επίσημον}}}|''Κανένα κράτος''}}
{{ #if: {{{επίσημον με<includeonly>|</includeonly>}}} | <small>(επίσημον με [[{{ #ifexist: γλώσσαν {{{επίσημον_με}}} | γλώσσαν {{{επίσημον_με}}} | επίσημον_με }}|{{{επίσημον_με|άλλα(ς) γλώσσα(ς)}}}]] σε {{{επίσημον}}})</small> }}
|-
| valign="top" style="padding-left: 0.5em;" {{!}} {{nowrap|'''Ρυθμιστές'''}}
{{!}} {{#if:{{{ρυθμιστές|}}}|{{{ρυθμιστές}}}|''αρρύθμιτον''}}
|-
! colspan="2" style="{{#switch: {{{color|}}}
| artificial
| black
| #808080
| Sudamérica
| Caribe
| #6677FA
| #4455F8
| #3344E6
| #3344e6
| #2233C4
| #2233c4
| #1111A2
| #1111a2
| #000080
| #default = color: white;
| }} background-color: {{{color|#dddddd}}}; text-align:center;"|Κώδικ
|-
{{#if:{{{iso1<includeonly>|</includeonly>}}} |
{{!}} style="vertical-align: top; padding-left: 0.5em;" {{!}} '''[[ISO 639-1]]'''
{{!}} style="text-align: left;" {{!}} <code>{{{iso1}}}</code>
{{!}}-|
{{!}} style="vertical-align: top; padding-left: 0.5em;" {{!}} '''[[ISO 639-1]]'''
{{!}} style="text-align: left;" {{!}} ''κανένα''
{{!}}-
}}
|- class="hiddenStructure{{{iso2<includeonly>|</includeonly>}}}"
| style="vertical-align: top; padding-left: 0.5em;" |'''[[ISO 639-2]]'''|| <code>{{{iso2}}}</code>
|- class="hiddenStructure{{{iso3<includeonly>|{{{sil|}}}</includeonly>}}}"
| style="vertical-align: top; padding-left: 0.5em;" |'''[[ISO 639-3]]'''|| {{ #if: {{{iso3<includeonly>|</includeonly>}}} | <code>[http://www.sil.org/iso639-3/documentation.asp?id={{{iso3|{{{sil}}}}}} {{{iso3|{{{sil}}}}}}]</code> | {{ #ifeq: {{{sil}}} | varios | {{ #if: {{{sil_url|}}} | [{{{sil_url}}} Cada variedad tiene un código propio] | Cada variedad tiene un código propio{{ #if: {{{l1|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l1}}} {{{l1}}}]</code> {{ #if: {{{l1n}}} | – {{{l1n}}} }} }}{{ #if: {{{l2|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l2}}} {{{l2}}}]</code> {{ #if: {{{l2n}}} | – {{{l2n}}} }} }}{{ #if: {{{l3|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l3}}} {{{l3}}}]</code> {{ #if: {{{l3n}}} | – {{{l3n}}} }} }}{{ #if: {{{l4|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l4}}} {{{l4}}}]</code> {{ #if: {{{l4n}}} | – {{{l4n}}} }} }}{{ #if: {{{l5|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l5}}} {{{l5}}}]</code> {{ #if: {{{l5n}}} | – {{{l5n}}} }} }}{{ #if: {{{l6|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l6}}} {{{l6}}}]</code> {{ #if: {{{l6n}}} | – {{{l6n}}} }} }}{{ #if: {{{l7|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l7}}} {{{l7}}}]</code> {{ #if: {{{l7n}}} | – {{{l7n}}} }} }}{{ #if: {{{l8|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l8}}} {{{l8}}}]</code> {{ #if: {{{l8n}}} | – {{{l8n}}} }} }}{{ #if: {{{l9|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l9}}} {{{l9}}}]</code> {{ #if: {{{l9n}}} | – {{{l9n}}} }} }}{{ #if: {{{l10|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l10}}} {{{l10}}}]</code> {{ #if: {{{l10n}}} | – {{{l10n}}} }} }}{{ #if: {{{l11|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l11}}} {{{l11}}}]</code> {{ #if: {{{l11n}}} | – {{{l11n}}} }} }}{{ #if: {{{l12|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l12}}} {{{l12}}}]</code> {{ #if: {{{l12n}}} | – {{{l12n}}} }} }}{{ #if: {{{l13|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l13}}} {{{l13}}}]</code> {{ #if: {{{l13n}}} | – {{{l13n}}} }} }}{{ #if: {{{l14|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l14}}} {{{l14}}}]</code> {{ #if: {{{l14n}}} | – {{{l14n}}} }} }}{{ #if: {{{l15|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l15}}} {{{l15}}}]</code> {{ #if: {{{l15n}}} | – {{{l15n}}} }} }}{{ #if: {{{l16|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l16}}} {{{l16}}}]</code> {{ #if: {{{l16n}}} | – {{{l16n}}} }} }}{{ #if: {{{l17|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l17}}} {{{l17}}}]</code> {{ #if: {{{l17n}}} | – {{{l17n}}} }} }}{{ #if: {{{l18|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l18}}} {{{l18}}}]</code> {{ #if: {{{l18n}}} | – {{{l18n}}} }} }}{{ #if: {{{l19|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l19}}} {{{l19}}}]</code> {{ #if: {{{l19n}}} | – {{{l19n}}} }} }}{{ #if: {{{l20|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l20}}} {{{l20}}}]</code> {{ #if: {{{l20n}}} | – {{{l20n}}} }} }}{{ #if: {{{l21|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l21}}} {{{l21}}}]</code> {{ #if: {{{l21n}}} | – {{{l21n}}} }} }}{{ #if: {{{l22|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l22}}} {{{l22}}}]</code> {{ #if: {{{l22n}}} | – {{{l22n}}} }} }}{{ #if: {{{l23|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l23}}} {{{l23}}}]</code> {{ #if: {{{l23n}}} | – {{{l23n}}} }} }}{{ #if: {{{l24|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l24}}} {{{l24}}}]</code> {{ #if: {{{l24n}}} | – {{{l24n}}} }} }}{{ #if: {{{l25|}}}
| <br /><code>[http://www.ethnologue.com/show_language.asp?code={{{l25}}} {{{l25}}}]</code> {{ #if: {{{l25n}}} | – {{{l25n}}} }} }}
}}
}}
}}
|- class="hiddenStructure{{{χάρτες<includeonly>|</includeonly>}}}"
|colspan=2 style="text-align: center; padding-bottom: 0.5em;"| {{#ifexist: File:{{{χάρτες}}} | [[Εικόναν:{{{χάρτες}}}|{{{mapa_tamaño|200x200px}}}|{{{όνεμα|}}}]] | {{{χάρτες}}} }} <center><small>{{{χάρτες_λεζάνδα|Επέκταση τη {{{1|{{{όνεμα}}}}}}}}}</small></center>
|}<noinclude>
__NOTOC__
__NOEDITSECTION__
<nowiki>{{Γλώσσα
|όνεμα =
|ντόπιο =
|color =
|επίσημον =
|κράτη =
|ομιλιτές =
|h1 =
|h2 =
|ρανκ =
|θνητή γλώσσα =
|γενετική τη γλώσσας =
|διάλεκτοι =
|γραφή =
|και επίσημον =
|επίσημον με =
|ρυθμιστές =
|iso1 =
|iso2 =
|iso3 =
|χάρτες = [[Εικόναν:Ejemplo.jpg|thumb|center]]
|χάρτες_λεζάνδα =
}}
</nowiki>
[[Κατηγορίαν:Πρότυπα]]</noinclude>
sq37t7bavpf64t1s3iyek724t3fvh9w
Αμερική
0
1016
10004
2009-12-04T18:36:32Z
Qoan
1170
Redirected page to [[Αμερικήν]]
10004
wikitext
text/x-wiki
#REDIRECT [[Αμερικήν]]
ollh87k79mxv6prvvo3ww18eikoz36r
Απόστολος Παύλος
0
1017
34490
34438
2020-04-08T05:46:56Z
Tulsi
5081
Cross-wiki abuse
33623
wikitext
text/x-wiki
Ο '''Απόστολος Παύλος''' (Ταρσός, Κιλικία αρχές 1ου αι. (5-15 μ.Χ.) – Ρώμη 66-68 μ.Χ.), συγγραφέας των μισών περίπου από τα βιβλία της Καινής Διαθήκης, αναγνωρίσθηκε ως Ισαπόστολος και Άγιος, και ήταν μία από τις σπουδαιότερες προσωπικότητες της πρώιμης εποχής του Χριστιανισμού, υποστηρικτής της παγκοσμιότητας της Διδασκαλίας Του Ιησού. Για τον λόγο αυτό πήρε το όνομα ''"Απόστολος τῶν ἐθνῶν"'' και των εθνικών, εκείνων δηλαδή που δεν ανήκουν στον λαό και στη θρησκεία των Εβραίων.
Λεγόταν Σαούλ (''Σαύλος'', βλ. ''Πράξ. 7:58'', ''8:1'' κ.ά.) αλλά κατά την τότε συνήθεια των Ιουδαίων της διασποράς έφερε εκτός από το ιουδαϊκό όνομα και ένα ομόηχο ελληνικό ή ρωμαϊκό.
[[Κατηγορίαν:Θρησκείαν]]
nyhnzy2q61h9unufs63lt930j70gk24
Ξενοφών
0
1020
34887
34863
2021-08-20T16:52:03Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.8
34887
wikitext
text/x-wiki
Ο '''Ξενοφών''' (μεταξυ 431 και 429π.Χ.) ένας [[Αθήνα|Αθηναίον]] ιστορικόν και [[φιλοσοφία|φιλόσοφον]] έτον [[στρατιώτης]], [[μισθοφόρος]] και μαθητής του [[Σωκράτης|Σωκράτη]]. Εν πολλά γνώριμος για τη συγγραφήν τη [[ιστορία|ιστορίας]] του [[4ος αιώνας π.Χ.|καιρού ατ]], των έργων του Σωκράτη και τη ζωήν ατ σην [[Ελλάδα]]. Έτον γιός του Γρύλλονος και τη Διοδώρας.
[[Αρχείον:Xenophon.jpg|thumb|200px|Προτομή του Ξενοφώντος]]
Η Οικογένεια 'τ ανήκε σο δήμον των Ερχιέων και έτον πολλά εύπορος αφού ανήκε ση τάξην των ιππέων. Το έτος τη γεννήσεως ατ κ’ εξέρομεν επ' ακριβώς, πρεπ να εγενέθεν μεταξύ του 440 και του 425 π.Χ. Σην "Ανάβασην" παρουσιά<u>σ</u>κεται άλλο τρανός ασά 30, γεγονός που δικαιολοεί την εκδοχήν να εγεννέθεν το 431 π.Χ.
== Παιδικά χρόνια ==
Ο [[Διογένης ο Λαέρτιος]] εξιστορεί ότι κάποτες όταν έτον ακόμη νέος, ο Ξενοφών εντάμωθεν σε έναν στενόν δρόμον με το Σωκράτην ο οποίος με το τ<u>σ</u>ιμπούκ νατ παρεμπόδεσεν τη στράταν του Ξενοφώντος. Ο Σωκράτης ερώτεσεν "που οι ανθρώπ ίνονται καλοί και αγαθοί πα;" Ο Ξενοφών τότες ε<u>σ</u>άσεψεν ατά και ο Σωκράτης απήντεσεν "Έπου και μάνθανε!". Από τότες ο Ξενοφών εέντονε μαθητής του Σωκράτη.
== Εκστρατείαν ==
Το [[401 π.Χ.]] ο Ξενοφών εκλείθεν ασ’ ό φίλον ατ τον Πράξενο (τον Βοιώτιον) που διέτριβε σι [[Σάρδεις]] αν εθέλνεν να μετάσχει σην εκστρατείαν του Πέρση βασιλοπαίδ [[Κύρος|Κύρου]] εναντίον του αδελφού ατ Βασιλέα [[Αρταξέρξης Β'|Αρταξέρξη Β']]. [[Αρχείον:Persian Empire, 490 BC.png|thumb|400px|Η πορεία τη Ξενοφώντος και των [[Μύριοι)|μυρίων]]]]Ο ενθουσιασμός του Ξενοφώντος σην ανταπόκρισην τη καλεσματί εφάνθεν ασό γεγονός ότι σην προτροπήν τη Σωκράτη να επαίρ χρησμόν ασό [[Μαντείο των Δελφών]] καταφέρ να παίρ θετικόν απάντησην με πλάια όμως ερώτησην που έτον "Σε ποίον Θεόν πρέπ να εφτάω θυσίαν ώστε να πετυχέν το ταξίδ και να κλώ<u>σ</u>κουμαι σώος; (αντί τη ορθής ερώτησης να πάω γιοκ ξαμ μη πάω;). Και βέβαια η σοφίαν του Μαντείου, επαίρεν χαπέρ με τη βοήθεια του Απόλλωνος που εγρίξεν το σκοπόν ατ, απάντεσεν: ούλτς εκείνους του θεούς «επ΄ αγαθώ και μη» ακριβώς ατό ντο λέμε και σήμερον: "για καλόν και για κακόν").
Αέτσ ο Ξενοφών εβρέθεν σην Ασίαν, σο γιάν του Κύρονος τον οποίο και ερχίνεσεν να θαυμάζ, ασον θαυμασμόν που εί<u>σ</u>εν πρώτα εκείνος για τη Έλληνας. Συγκεκριμένα έλεεν ο Κύρον ότι "θέλ τη Έλληνας συμμάχους όχι γιατί κ εί<u>σ</u>εν στρατόν αλλά γιατί εθάρνεν τη Έλληνας ας ούλτς καλίον" (Κύρ. Αναβ. Ι 7,3). Ακόμη επαίνευεν τους Έλληνας για τη ελευθερίαν ατούν, που εκείνος πολλά εγάπανεν και που όπως έλεεν προϊόν τη ελευθερίας έτον η υπεροχήν των Ελλήνων σον πόλεμον και σην ηθική. Ατός έτον και ο λόγον που όποτε επολέμαναν οι [[Πέρσες]] πάντα είχαν σο γιάν ατούν Έλληνες στρατιώτας (Κυρ. Παιδ VIII 8,26).
Κι εν γνωστός ο βαθμός που εί<u>σ</u>εν ο Ξενοφών σον Περσικόν στρατόν και σην αυλήν του Κύρονος, σίγουρον εν ότι έτον [[συνδαιτυμόνας]] ατ και εκαλάτσεβεν πολλά με τα’ ατόν.
Μετά το θάνατον του Κύρονος σην μάχην σα [[Κούναξα]] και τη δολίαν εξόντωσην των Ελλήνων στρατηών ασόν Τισσαφέρνη, εκλέχθεν ασού "μυρίονες" (=10.000 Ελλήνων μισθοφόρων), στρατηγός (5ος κατά σειράν), οδήησεν ατς επιτυχώς αντιμετωπίζοντας πολλά κινδύνους ασα υψώματα τη [[Αρμενίας]] προς ην [[Τραπεζούνταν]] ση θαλασσάκρην του [[Εύξεινος Πόντος|Ευξείνου Πόντου]] κι επεκεί έπλευσαν προς τα δυτικά πίσω σην [[Ελλάδα|Ελλάδαν]]. Ση [[Θράκη|Θράκην]], εβοήθησαν το [[Σεύθης Β|Σεύθη Β]] να ίνεται βασιλέας. Η καταγραφήν τη εκστρατείας και τη ταξιδί της επιστροφής ασόν Ξενοφώντα επιγράφηκε ''[[Κύρου Ανάβασις]]''.
== Κατάλογος έργων ==
Τα έργα τη Ξενοφώντος, ιδιαιτέρως η ''[[Κύρου Ανάβασις]]'', συχνά διεβάουνταν ασά αρχαρίους σην [[Ελληνικήν γλώσσαν]]. Τα ''[[Ελληνικά (Ξενοφώντος)|Ελληνικά]]'' εν ένας βασικός πηγή γεγονότων τη Ελλάδας ασό 411 ως το 404 π.Χ., και των Σωκρατικών έργων, που εδιατηρέθαν ολάκερα, εν οι μόνοι αντιπρόσωπ των [[Σωκρατικοί λόγοι|Σωκρατικών λόγων]] που επέμνανε εκτός των διαλόγων του Πλάτωνος.
=== Ιστορικά και Βιογραφικά έργα ===
* ''[[Κύρου Ανάβασις]]''
* ''[[Ελληνικά (Ξενοφώντος)|Ελληνικά]]''
* ''[[Αγησίλαος Β΄]]''
* ''[[Η Περσική Εκστρατεία]]''
=== Φιλοσοφικά και διάλογοι ===
* ''[[Απολογία Σωκράτους]]''
* ''[[Αναμνήσεις]]''
* ''[[Οικονομικός]]''
* ''[[Συμπόσιον]]''
* ''[[Ιέρων]] ή (Τυραννικός)
=== Διδακτικά ===
* ''[[Λακεδαιμονίων πολιτεία]]
* ''[[Αθηναίων πολιτεία]]
* ''[[Πόροι ή περί προσόδων]]
* ''[[Ιππαρχικός]] (Λόγος)
* ''[[Περί ιππικής]]
* ''[[Κυνηγετικός]] και
* ''[[Κύρου Παιδεία]]
== Εξωτερικοί σύνδεσμοι ==
* [http://www.iep.utm.edu/x/xenophon.htm Internet Encyclopedia of Philosophy: Xenophon]
* [https://web.archive.org/web/20040805114940/http://www.liv.ac.uk/~gjoliver/xenophon.html Graham Oliver's Xenophon Homepage]
* [https://web.archive.org/web/20060320085855/http://www.isidore-of-seville.com/small/10.html Xenophon's Education of Cyrus (Cyropaedia) Web directory]
* [https://web.archive.org/web/20070310221751/http://www.ironyage.com/alderman/xenophon/ Xenophon's Socratic Works]
==== Κείμενα (Project Gutenberg) ====
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1169 Agesliaus]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1170 Anabasis]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1171 The Apology]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1172 The Cavalry General]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=2085 Cyropaedia]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1173 The Economist]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1174 Hellenica]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1175 Hiero]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1177 The Memorabilia]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1176 On Horsemanship]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1179 On Revenues]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1178 The Polity of the Athenians and the Lacedaemonians]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1180 The Sportsman]
* [http://onlinebooks.library.upenn.edu/webbin/gutbook/lookup?num=1181 The Symposium]
[https://web.archive.org/web/20100210195854/http://www.ellinikoslogos.gr/files/alykxenelkeimena.htm]
[[Κατηγορίαν:Έλλενας (αρχαιότητα)]]
[[Κατηγορίαν:Φιλοσοφίαν]]
1nsadqc9b3z1r6stuk60a3o35h8jjil
Κύρου Ανάβασις
0
1022
35666
31255
2024-04-01T13:15:42Z
79.129.234.130
μικροδιορθόσεις ορθογραφίας
35666
wikitext
text/x-wiki
[[File:Persian Empire, 490 BC.png|thumb|400px|Η πορεία του [[Ξενοφών|Ξενοφώντος]] και των [[Μύριοι)|Μυρίων]].]]Η '''''Κύρου Ανάβασις''''' {{fn|1}}εν έναν πολλά σημαντικόν ιστορικόν σύγγραμμα του Έλληνος ιστορικού, στρατιωτικού, και φιλοσόφου [[Ξενοφών|Ξενοφώντος]] που περιγράφη τη συμμετοχήν ενός σώματος 10.000 Ελλήνων μισθοφόρων (των Μυρίων), ασήν ώραν που ενετάχθαν στον στρατον του [[Κύρος ο νεότερος|Κύρονος]] και συμμετείχαν σην εκστρατείαν του κατά του αδελφού του [[Αρταξέρξης|Αρταξέρξη]] και ειδικότερα σην [[μάχην σα Κούναξα]] το [[401 π.Χ.]], όντως μετά τον θάνατον του Κύρονος ακολούθησεν η περιπετειώδης επιστροφήν ατούν στην [[Μικράν Ασίαν|Μικρά Ασία]] προς τη θάλασσαν που ονομάζεται "κάθοδος των μυρίων". Ο Ξενοφών ήτον ο διοικητής της στρατιωτικής μονάδας.<br>
Ατό το ιστορικόν σύγγραμμαν αποτελείται από επτά βιβλία. Εν γραμμένον σε καθαρή [[αττική διάλεκτος|αττική διάλεκτον]] και θεωρείται πολλά αξιόλογον <u>σ</u>η περιγραφήν ενός τρανέσας στρατιωτικής επιχείρησεως τη αρχαιότητος.
{{Βικιθήκη}}
;Σημειώσεις:{{fnb|1}} - '''Ανάβαση''' λέγνε την πορείαν ενός στρατεύματος ασ'η θάλασσαν σο εσωτερικόν μιας χώρας και '''κάθοδος''' ακριβώς το αντίθετον.
[[Κατηγορίαν:Αρχαίον Ελληνικόν γραμματείαν]]
68cmt6ft74qny9kflvj8kttoml4wmth
Πρότυπον:Βικιθήκη
10
1023
36220
35873
2025-04-11T13:39:46Z
Svartava
9404
Αναίρεση αναθεώρησης [[Special:Diff/35049|35049]] από τον [[Special:Contributions/Rosičák|Rosičák]] ([[User talk:Rosičák|Συζήτηση]])
36220
wikitext
text/x-wiki
<includeonly>{{Sisterproject
|project=Wikisource
|image=Wikisource-logo.svg
|text=Σην [[:el:s:Main_Page|Βικιθήκην]] ε<u>σ</u> υλικόν σχετικόν με το θέμαν:
|link=[[:el:s:{{#if: {{{1|}}} | {{{1}}}| {{PAGENAME}}}} | {{#if: {{{2|}}} | {{{2}}} | {{PAGENAME}}}}]]
}}</includeonly><noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]
</noinclude>
ogg4mvye15c7vvvshi3k59tllos8qe4
Πρότυπον:Sisterproject
10
1024
36411
36042
2025-12-15T15:47:44Z
Εὐθυμένης
2777
36411
wikitext
text/x-wiki
<table role="presentation" class="noprint mbox-small{{#ifeq:{{lc:{{{position|}}}}}|left|-left}} {{{class|}}}" style="border:1px solid var(--border-color-base, #a2a9b1); background-color:var(--background-color-notice-subtle, #f8f9fa); color:inherit; {{{style|}}}">
{{#if:{{{above|}}}
| <tr><td colspan={{#if:{{{imageright|}}}|3|2}} class="mbox-text" style="{{{textstyle|}}}{{{abovestyle|}}}">
{{{above}}}</td></tr>
}}
<tr>
{{#switch:{{{image|}}}
|<!--BLANK-->|none={{td}}
|#default=<td class="mbox-image">[[Image:{{{image}}}|40px|none|link= |{{{project}}} logo]]</td>
}}
<td class="mbox-text plainlist" style="{{{textstyle|}}}">{{{text}}}<br> '''{{{link}}}'''</td>
{{#if:{{{imageright|}}}
| <td class="mbox-imageright">[[Image:{{{imageright}}}40px|none|]]</td>
}}
</tr>
{{#if:{{{below|}}}
| <tr><td colspan={{#if:{{{imageright|}}}|3|2}} class="mbox-text" style="{{{textstyle|}}}">{{{below}}}</td></tr>
}}
</table><noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]
</noinclude>
aoyh015iw43vx7xrcpugan5s3sdn8jb
Πρότυπον:Γλωσσο-Βικιθήκη
10
1025
10074
10073
2009-12-06T23:55:57Z
Stravon
942
10074
wikitext
text/x-wiki
{{Sister
| position = {{{position|}}}
| project = Wikisource
| text = Σην {{#ifeq:{{#language:{{{1}}}}}|{{{1}}}||{{Iso2lang|{{{1}}}}}}} [[Βικιθήκην]] ε<u>σ</u> πρωτότυπον κείμενoν σχετικόν με:
<div style="margin-left: 10px;">'''[[:{{#ifeq:{{#language:{{{1|}}}}}|{{{1}}}|oldwikisource|s:{{{1|<noinclude>en</noinclude>}}}}}:{{{2|{{PAGENAME}}}}}|{{{3|{{{2|{{PAGENAME}}}}}}}}]]'''</div>
}}<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]
</noinclude>
6f7f0k2tlk24vqqpcq2cg3srum5ss6z
Πρότυπον:Sister
10
1026
10047
10046
2009-12-06T22:23:28Z
Stravon
942
10047
wikitext
text/x-wiki
{{side box
|position = {{{position|}}}
|image = <!--
-->{{#switch:{{{image|}}}
|none=
|=[[Image:{{#switch:{{lc:{{{project|}}}}}
|commons = Commons-logo.svg
|meta|metawiki|m = Wikimedia Community Logo.svg
|wikibooks|wbk|wb|b = Wikibooks-logo-en-noslogan.svg
|wikiquote|quote|wqt|q = Wikiquote-logo-en.svg
|wikipedia|wp|w = Wikipedia-logo-en.png
|wikisource|source|ws|s = Wikisource-logo.svg
|wiktionary|wkt|wdy|d = Wiktionary-logo-en.svg
|wikinews|news|wnw|n = Wikinews-logo.svg
|wikispecies|species = Wikispecies-logo.svg
|wikiversity|wvy|v = Wikiversity-logo.svg
|mediawiki|mw = Mediawiki.png
|#default = Wikimedia-logo.svg
}}|40px|link={{#switch:{{lc:{{{project}}}}}
|commons = commons
|meta|metawiki|m = meta
|wikibooks|wbk|wb|b = b
|wikiquote|quote|wqt|q = q
|wikipedia|wp|w = w
|wikisource|source|ws|s = s
|wiktionary|wkt|wdy|d = wikt
|wikinews|news|wnw|n = n
|wikispecies|species = species
|wikiversity|wvy|v = v
|mediawiki|mw = mw
|#default =
}}:{{{1|Special:Search/{{PAGENAME}}}}}|Search {{#switch:{{lc:{{{project}}}}}
|commons = Wikimedia Commons
|meta|metawiki|m = Meta
|wikibooks|wbk|wb|b = Wikibooks
|wikiquote|quote|wqt|q = Wikiquote
|wikipedia|wp|w = Wikipedia
|wikisource|source|ws|s = Wikisource
|wiktionary|wkt|wdy|d = Wiktionary
|wikinews|news|wnw|n = Wikinews
|wikispecies|species = Wikispecies
|wikiversity|wvy|v = Wikiversity
|mediawiki|mw = MediaWiki
|#default = sister project
}}]]
|{{{image}}}
}}<!--
-->
|text = {{{text}}}
|below = {{{below|}}}
|imageright = {{{imageright|}}}
}}<noinclude>
{{pp-template|small=yes}}
</noinclude>
6u3g5e9mqx1piwrusf4lbgwlbmz961x
Πρότυπον:Side box
10
1027
10050
10043
2009-12-06T22:28:34Z
Stravon
942
10050
wikitext
text/x-wiki
<table class="metadata plainlinks mbox-small{{#ifeq:{{lc:{{{position|}}}}}|left|-left}}" style="border:1px solid #aaa; background-color:#f9f9f9; {{{style|}}}">
<tr>
{{#switch:{{{image|}}}
|<!--BLANK-->|none={{td}}
|#default=<td class="mbox-image">{{{image}}}</td>
}}
<td class="mbox-text" style="{{{textstyle|}}}"> {{{text}}} </td>
{{#if:{{{imageright|}}}
| <td class="mbox-imageright">{{{imageright}}}</td>
}}
</tr>
{{#if:{{{below|}}}
| <tr><td colspan={{#if:{{{imageright|}}}|3|2}} class="mbox-text" style="{{{textstyle|}}}"> {{{below}}} </td></tr>
}}
</table><noinclude>
{{pp-template|small=yes}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
gdpp4dn45299mj9nxumw23ryxl0mj1r
Πρότυπον:Td
10
1028
36413
36412
2025-12-15T15:48:54Z
Εὐθυμένης
2777
36413
wikitext
text/x-wiki
<includeonly><td style="width:1px;"></td></includeonly>
<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|Πρότυπα Βικιπαίδειας]]
Αυτό το πρότυπο χρησιμοποιείται για να εισάγει ένα κελί μήκους 1px σε πίνακες σε html πίνακες ή βίκιπίνακες όταν θέλουμε να προσθέσουμε ένα άδειο κελί για να ισορροπήσει ο πίνακας.
Χρησιμοποιείται στα:
*[[πρότυπον:Πλευρικό κουτί|πρότυπον Πλευρικό κουτί]]
</noinclude>
3ls59n7savr5w4leggk3pr6j5u2iz2d
Πρότυπον:Pp-template
10
1029
10048
2009-12-06T22:24:22Z
Stravon
942
Καινούρεον σελίδαν με '<includeonly>{{pp-meta |type={{#switch:{{{demolevel|{{#ifeq:{{PROTECTIONLEVEL:edit}}-{{PROTECTIONLEVEL:move}}|-sysop|move|{{PROTECTIONLEVEL:edit}}}}}}} ...'
10048
wikitext
text/x-wiki
<includeonly>{{pp-meta
|type={{#switch:{{{demolevel|{{#ifeq:{{PROTECTIONLEVEL:edit}}-{{PROTECTIONLEVEL:move}}|-sysop|move|{{PROTECTIONLEVEL:edit}}}}}}}
|semi
|autoconfirmed=semi
|administrator
|full
|sysop=indef
|move=move
|#default=indef<!--fallback value-->}}
|small={{{small|yes}}}
|demospace={{{demospace|}}}
|demolevel={{#ifeq:{{PAGENAME}}/{{NAMESPACE}}|{{SUBPAGENAME}}/{{ns:Template}}|{{{demolevel|undefined}}}|{{#ifeq:{{lc:{{SUBPAGENAME}}}}|sandbox|sysop|{{{demolevel|undefined}}}}}}}
|expiry=<!--not applicable-->
|dispute=no
|icon-text=This {{#ifeq:{{NAMESPACE}}|{{ns:6}}|image, included in a high-risk template or message,|high-risk template}} is indefinitely {{#switch:{{{demolevel|{{#ifeq:{{PROTECTIONLEVEL:edit}}-{{PROTECTIONLEVEL:move}}|-sysop|move|{{PROTECTIONLEVEL:edit}}}}}}}
|semi
|autoconfirmed=semi-protected from editing
|move=move-protected
|administrator
|full
|sysop
|#default=<!--fallback value-->protected from editing}} to prevent vandalism.
|reason-text=This {{#switch:{{NAMESPACE}}
|{{ns:image}}=image, used in one or more [[Wikipedia:High-risk templates|high-risk templates]]{{#switch:{{{demolevel|{{PROTECTIONLEVEL:edit}}}}}
|semi
|autoconfirmed=
|administrator
|full
|sysop=<nowiki> </nowiki>and/or [[Special:Allmessages|system messages]],
|#default=<!--fallback value-->}}
|#default=[[Wikipedia:High-risk templates|high-risk template]]
}} has been [[Wikipedia:This page is protected|{{#switch:{{{demolevel|{{#ifeq:{{PROTECTIONLEVEL:edit}}-{{PROTECTIONLEVEL:move}}|-sysop|move|{{PROTECTIONLEVEL:edit}}}}}}}
|semi
|autoconfirmed=semi-
|move=move-
|administrator
|full
|sysop<!--uses default-->
|#default=<!--fallback value-->}}protected]]{{#ifeq:{{PROTECTIONLEVEL:edit}}-{{PROTECTIONLEVEL:move}}|-sysop||<nowiki> </nowiki>from editing}} to prevent [[Wikipedia:Vandalism|vandalism]]. {{#switch:{{{demolevel|{{PROTECTIONLEVEL:edit}}}}}
|semi
|autoconfirmed=
|administrator
|full
|sysop<!--uses default-->
|#default={{#switch:{{NAMESPACE}}|{{ns:image}}=<br /><small>'''Do not move this image''' to [[commons:|Wikimedia Commons]].</small>}}}}
|categories={{{categories|{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{{demolevel|{{#ifeq:{{PROTECTIONLEVEL:edit}}-{{PROTECTIONLEVEL:move}}|-sysop|move|{{PROTECTIONLEVEL:edit}}}}}}}
|semi
|autoconfirmed=[[Category:Wikipedia semi-protected templates|{{PAGENAME}}]]{{#ifeq:{{PROTECTIONLEVEL:move}}|sysop|[[Category:Wikipedia move-protected templates|{{PAGENAME}}]]}}
|move=[[Category:Wikipedia move-protected templates|{{PAGENAME}}]]
|administrator
|full
|sysop<!--uses default-->
|#default=[[Category:Wikipedia protected templates|{{PAGENAME}}]]<!--fallback value-->}}}}{{#ifeq:{{NAMESPACE}}|{{ns:6}}|[[Category:{{#switch:{{{demolevel|{{PROTECTIONLEVEL:edit}}}}}
|semi
|autoconfirmed=Semi-protected
|administrator
|full
|sysop<!--uses default-->
|#default=Protected<!--fallback value-->}} images|{{PAGENAME}}]]}}}}}}}</includeonly><noinclude>
{{pp-template|categories=no}} <!-- Show the small version -->
{{pp-template|small=no}} <!-- Show the large version -->
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
79t3irvnujgyemf7k46foxcibbuir0a
Πρότυπον:Pp-meta
10
1030
10051
2009-12-06T22:29:13Z
Stravon
942
Καινούρεον σελίδαν με '{{#ifeq:{{#switch:{{lc:{{{type}}}}} |move=<!-- -->{{#ifeq: {{#switch:{{lc:{{{demolevel|undefined}}}}} |semi |autoconfirmed=autocon...'
10051
wikitext
text/x-wiki
{{#ifeq:{{#switch:{{lc:{{{type}}}}}
|move=<!--
-->{{#ifeq:
{{#switch:{{lc:{{{demolevel|undefined}}}}}
|semi
|autoconfirmed=autoconfirmed
|administrator
|full
|sysop=sysop
|undefined={{PROTECTIONLEVEL:move}}
|#default=<!--fallback value: null
-->}}
|sysop|yes|no
}}
|create=<!--
-->{{#if:
{{#switch:{{lc:{{{demolevel|undefined}}}}}
|semi
|autoconfirmed=autoconfirmed
|administrator
|full
|sysop=sysop
|undefined={{PROTECTIONLEVEL:create}}
|#default=<!--fallback value: null
-->}}
|yes|no
}}
|#default<!--includes all other types-->=<!--
-->{{#if:
{{#switch:{{lc:{{{demolevel|undefined}}}}}
|semi
|autoconfirmed=autoconfirmed
|administrator
|full
|sysop=sysop
|undefined={{PROTECTIONLEVEL:edit}}
|#default=<!--fallback value: null
-->}}
|{{#ifeq:{{#switch:{{lc:{{{disallowlevel|}}}}}
|semi
|autoconfirmed=autoconfirmed
|administrator
|full
|sysop=sysop
|#default=<!--fallback value: null-->}}
|{{#switch:{{lc:{{{demolevel|undefined}}}}}
|semi
|autoconfirmed=autoconfirmed
|administrator
|full
|sysop=sysop
|undefined={{PROTECTIONLEVEL:edit}}
|#default=<!--fallback value: null
-->}}
|no|yes
}}
|no}}
}}|yes|{{#ifeq:{{lc:{{{small|}}}}}|yes|
<div class="metadata topicon" id="protected-icon" style="display:none; right:55px;">[[Image:{{{image|{{#switch:{{lc:{{{type}}}}}
|full=Padlock.svg
|semi=Padlock-silver-medium.svg
|move=Padlock-olive.svg
|indef=Padlock-red.svg
|office=Padlock-black.svg
|create=Padlock-skyblue.svg
|#default=Transparent.gif
}}}}}|20px|link={{{icon-link|Wikipedia:Protection policy#{{lc:{{{type}}}}}}}}|{{{icon-text|This {{pagetype|subjectspace=yes}} is {{#switch:{{lc:{{{type}}}}}
|semi=semi-
|move=move-
|indef=permanently<nowiki> </nowiki>
|create=creation-
|office=<!--null, but should this have a special tag?-->
|full
|#default=<!--null-->
}}protected{{#ifeq:{{lc:{{{type}}}}}|indef||{{#if:{{{expiry|}}}|<nowiki> </nowiki>until {{#time:F j, Y|{{{expiry}}}}}}}}}{{#if:{{{icon-reason|}}}|<nowiki> </nowiki>{{{icon-reason}}}}}.}}}]]</div>
|<!-- else, not small -->
{{mbox
| demospace = {{{demospace|}}}
| type = protection
| image = [[Image:{{{image|{{#switch:{{lc:{{{type}}}}}
|full=Padlock.svg
|semi=Padlock-silver-medium.svg
|move=Padlock-olive.svg
|indef=Padlock-red.svg
|office=Padlock-black.svg
|create=Padlock-skyblue.svg
|#default=Transparent.gif
}}}}}|40px|{{{icon-text|This page is {{#switch:{{lc:{{{type}}}}}
|semi=semi-
|move=move-
|indef=permanently<nowiki> </nowiki>
|create=creation-
|office=<!--null, but should this have a special tag?-->
|full
|#default=<!--null-->
}}protected.}}}]]
| text = '''{{{reason-text|{{#switch:{{lc:{{{type}}}}}
|full=This page is currently [[Wikipedia:This page is protected|protected]] from editing
|semi=Editing of this {{pagetype|subjectspace=yes}} by [[Wikipedia:User access levels#Autoconfirmed_users|new]] or [[Wikipedia:User access levels#Anonymous_users|unregistered]] users is currently [[Wikipedia:Protection policy|disabled]]
|move=This {{pagetype|subjectspace=yes}} is currently [[Wikipedia:This page is protected|protected]] from [[Help:Moving a page|page moves]]
|indef=This page is [[Wikipedia:This page is protected|protected]] from editing ''indefinitely''
|office=This {{pagetype|subjectspace=yes}} is currently [[Wikipedia:This page is protected|protected]] from editing
|create=[[Help:Starting a new page|Recreation]] of this {{pagetype|subjectspace=yes}} [[Wikipedia:This page is protected|has been disabled]]
}}{{#ifeq:{{lc:{{{type}}}}}|indef||{{#if:{{{expiry|}}}| until {{#time:[[F j]], [[Y]]|{{{expiry}}}}}}}}}{{{reason<includeonly>|</includeonly>}}}.}}}'''<br /> {{{explanation-text|{{#ifeq:{{lc:{{{dispute}}}}}|yes|This protection is '''not''' an endorsement of the {{#ifeq:{{{type}}}|move|[{{fullurl:Special:Log|type=move&page={{FULLPAGENAMEE}}}} current title]|[{{fullurl:{{FULLPAGENAMEE}}|action=history}} current version]}}.}} See the [[Wikipedia:Protection policy|protection policy]] and [{{fullurl:Special:Log|type=protect&page={{FULLPAGENAMEE}}}} protection log] for more details. {{#switch:{{lc:{{{type}}}}}
|full|indef=Please discuss any changes on the [[{{TALKPAGENAME}}|talk page]]; you may use the {{tlx|editprotected}} template to ask an [[Wikipedia:Administrator|administrator]] to make the edit if it is supported by [[Wikipedia:Consensus|consensus]]. {{#ifeq:{{NAMESPACE}}|{{ns:8}}<!--MediaWiki-->||You may also [[Wikipedia:Requests for page protection|request]] that this page be unprotected.}}
|semi=If you cannot edit this {{pagetype|subjectspace=yes}} and you wish to make a change, you can {{#ifeq:{{NAMESPACE}}|{{TALKSPACE}}||[[Template:Editsemiprotected|request an edit]], [[{{TALKPAGENAME}}|discuss changes on the talk page]],}} [[Wikipedia:Requests for page protection#Current requests for unprotection|request unprotection]], [[Special:Userlogin|log in]], or <span class="plainlinks">[http://en.wikipedia.org/w/index.php?title=Special:Userlogin&type=signup <span style="color:#002bb8;" title="Sign in / create account">create an account</span>].
|move=The page may still be edited but cannot be moved until unprotected. Please discuss any suggested moves on the [[{{TALKPAGENAME}}|talk page]] or at [[Wikipedia:Requested moves]]. You can also [[Wikipedia:Requests for page protection|request]] that the page be unprotected.
|office=If you are able to edit this page, please discuss all changes and additions on the [[{{TALKPAGENAME}}|talk page]] first. '''Do not remove protection from this article unless you are authorized by the Wikimedia Foundation to do so.'''
|create=Please see the {{#if:{{{xfd|}}}|'''[[{{{xfd}}}|deletion discussion]]''' or the}} [{{fullurl:Special:Log|type=delete&page={{FULLPAGENAMEE}}}} deletion log] for details of why this page was deleted. If you would like to create a page at this title, you must first [[Wikipedia:Requests for page protection|request]] for it to be unprotected, or contact the administrator who deleted the page for the deleted material to be restored. If unsuccessful, you can use [[Wikipedia:Deletion review|deletion review]].
}}}}}
}}
}}|[[Category:Wikipedia pages with incorrect protection templates]]}}<!--End if small--><includeonly>{{#ifeq:{{lc:{{{categories|no}}}}}|no||{{{categories|}}}}}</includeonly><noinclude>
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
2oab0v8fsplr04igq7jj4nqarab4lo3
Πρότυπον:Error
10
1033
10054
2009-12-06T22:32:38Z
Stravon
942
Καινούρεον σελίδαν με '<{{#switch:{{lc:{{{tag}}}}} |p=p |span=span |div=div |#default=strong }} class="error"><!-- -->{{{message|{{{1}}}}}}<!-- --></{{#switch:{...'
10054
wikitext
text/x-wiki
<{{#switch:{{lc:{{{tag}}}}}
|p=p
|span=span
|div=div
|#default=strong
}} class="error"><!--
-->{{{message|{{{1}}}}}}<!--
--></{{#switch:{{lc:{{{tag}}}}}
|p=p
|span=span
|div=div
|#default=strong
}}><noinclude>
</noinclude>
qyt1davehh2k3ldxucuh86wpojiyg29
Πρότυπον:Iso2lang
10
1034
10057
2009-12-06T22:50:33Z
Stravon
942
Καινούρεον σελίδαν με '{{ISO 639 name {{{1|}}}}}'
10057
wikitext
text/x-wiki
{{ISO 639 name {{{1|}}}}}
5w2e7nit7agc625xb3gsdjjeshj4qss
Πρότυπον:ISO 639 name
10
1035
10076
10058
2009-12-07T00:40:57Z
Stravon
942
10076
wikitext
text/x-wiki
{{#switch:{{{1|}}}
|aa|aar=Afar
|ab|abk=Abkhaz
|ae|ave=Avestan
|af|afr=Afrikaans
|ags=Esimbi
|ak|aka=Akan
|am|amh=Amharic
|an|arg=Aragonese
|ang=Old English
|ar|ara=Arabic
|as|asm=Assamese
|av|ava=Avaric
|ay|aym=Aymara
|az|aze=Azerbaijani
|ba|bak=Bashkir
|be|bel=Belarusian
|bg|bul=Bulgarian
|bh|bih=Bihari
|bi|bis=Bislama
|bm|bam=Bambara
|bn|ben=Bengali
|bo|tib|bod=Tibetan
|br|bre=Breton
|bs|bos=Bosnian
|ca|cat=Catalan
|ce|che=Chechen
|ch|cha=Chamorro
|cho=Choctaw
|co|cos=Corsican
|cr|cre=Cree
|cs|cze|ces|cz=Czech
|cu|chu=Old Church Slavonic
|cv|chv=Chuvash
|cy|wel|cym=Welsh
|da|dan=Danish
|de|ger|deu=German
|dv|div=Dhivehi
|dz|dzo=Dzongkha
|ee|ewe=Ewe
|el|gre|ell=Ελληνικήν
|en|eng=explicitly cited English
|eo|epo=Esperanto
|es|spa=Spanish
|et|est=Estonian
|eu|baq|eus=Basque
|fa|per|fas=Persian
|ff|ful=Fula
|fi|fin=Finnish
|fj|fij=Fijian
|fo|fao=Faroese
|fr|fre|fra=French
|fy|fry=West Frisian
|ga|gle=Irish
|gd|gla=Scottish Gaelic
|gl|glg=Galician
|gn|grn=Guaraní
|grc=Ancient Greek
|gu|guj=Gujarati
|gv|glv=Manx
|ha|hau=Hausa
|he|heb=Hebrew
|hi|hin=Hindi
|ho|hmo=Hiri Motu
|hr|scr|hrv=Croatian
|ht|hat=Haitian Creole
|hu|hun=Hungarian
|hy|arm|hye=Armenian
|hz|her=Herero
|ia|ina=Interlingua
|id|ind=Indonesian
|ie|ile=Interlingue
|ig|ibo=Igbo
|ii|iii=Yi
|ik|ipk=Inupiaq
|io|ido=Ido
|is|ice|isl=Icelandic
|it|ita=Italian
|iu|iku=Inuktitut
|ja-Hani|ja-Latn|ja|jpn=Japanese
|jv|jav=Javanese
|ka|geo|kat=Georgian
|kg|kon=Kongo
|ki|kik=Gikuyu
|kj|kua=Kwanyama
|kk|kaz=Kazakh
|kl|kal=Kalaallisut
|km|khm=Khmer
|kn|kan=Kannada
|ko|kor|kp-Hanj|ko-Hang|ko-hang|ko-Hang-KP|ko-Hang-KR|ko-Hani|ko-Hant|ko-Hant-KP|ko-Kana|ko-Kang|ko-Kore|ko-KP|ko-Latn=Korean
|kr|kau=Kanuri
|ks|kas=Kashmiri
|ku|kur=Kurdish
|kv|kom=Komi
|kw|cor=Cornish
|ky|kir=Kyrgyz
|la|lat=Latin
|lb|ltz=Luxembourgish
|lg|lug=Luganda
|li|lim=Limburgish
|ln|lin=Lingala
|lo|lao=Lao
|lt|lit=Lithuanian
|lu|lub=Tshiluba
|lv|lav=Latvian
|mg|mlg=Malagasy
|mh|mah=Marshallese
|mi|mao|mri=Māori
|mk|mac|mkd=Macedonian
|ml|mal=Malayalam
|mn|mon=Mongolian
|mo|mol=Moldovan
|mr|mar=Marathi
|ms|may|msa=Malay
|mt|mlt=Maltese
|my|bur|mya=Burmese
|na|nau=Nauruan
|nb|nob=Norwegian Bokmål
|nd|nde=Northern Ndebele
|ne|nep=Nepali
|ng|ndo=Ndonga
|nl|dut|nld=Dutch
|nn|nno=Norwegian Nynorsk
|no|nor=Norwegian
|nr|nbl=Southern Ndebele
|nv|nav=Navajo
|ny|nya=Chichewa
|oc|oci=Occitan
|oj|oji=Anishinaabe
|om|orm=Oromo
|or|ori=Oriya
|os|oss=Ossetic
|pa|pan=Punjabi
|pi|pli=Pāli
|pl|pol=Polish
|ps|pus=Pashto
|pt|por=Portuguese
|qu|que=Quechua
|rm|roh=Romansh
|rn|run=Kirundi
|ro|rum|ron=Romanian
|ru|rus=Russian
|rw|kin=Kinyarwanda
|sa|san=Sanskrit
|sc|srd=Sardinian
|sco=Scots
|sd|snd=Sindhi
|se|sme=Sami
|sg|sag=Sango
|sga=Old Irish
|sh|hbs=Serbo-Croatian
|si|sin=Sinhala
|sk|slo|slk=Slovak
|sl|slv=Slovenian
|sm|smo=Samoan
|sn|sna=Shona
|so|som=Somali
|sq|alb|sqi=Albanian
|sr|scc|srp=Serbian
|ss|ssw=Swati
|st|sot=Sotho
|su|sun=Sundanese
|sv|swe=Swedish
|sw|swa=Swahili
|syc|syr=Syriac
|ta|tam=Tamil
|te|tel=Telugu
|tg|tgk=Tajik
|th|tha=Thai
|ti|tir=Tigrinya
|tk|tuk=Turkmen
|tl|tgl=Tagalog
|tn|tsn=Tswana
|to|ton=Tongan
|tr|tur=Turkish
|ts|tso=Tsonga
|tt|tat=Tatar
|tw|twi=Twi
|ty|tah=Tahitian
|ug|uig=Uyghur
|uk|ukr=Ukrainian
|ur|urd=Urdu
|uz|uzb=Uzbek
|ve|ven=Venda
|vi|vie=Vietnamese
|vo|vol=Volapük
|wa|wln=Walloon
|wlm=Middle Welsh
|wo|wol=Wolof
|xh|xho=Xhosa
|yi|yid=Yiddish
|yo|yor=Yoruba
|za|zha=Zhuang
|zh|chi|zho=Chinese
|zu|zul=Zulu
|zun=Zuni
|zh-Hant|zh-t=traditional Chinese
|zh-Hans|zh-s=simplified Chinese
|#default={{{2|{{error|Language abbreviation not recognized by [[Template:ISO 639 name|template]]!}}}}}
}}<noinclude>
</noinclude>
e4pmbeqo0beqs0et2ut56690j212plq
Πρότυπον:ISO 639 name el
10
1036
10075
10065
2009-12-07T00:22:20Z
Stravon
942
10075
wikitext
text/x-wiki
Greek<noinclude>
{{ISO 639 name conversion template doc|{{ISO 639 name el}}|el}}</noinclude>
3mwf2laid9r680ji8s3pc9csz2ceg6d
Πρότυπον:Wikiquote
10
1037
10081
10080
2009-12-07T12:27:24Z
Stravon
942
10081
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Βικιφθέγματα]]
ck75uh8pk4x8rlvdcuivpm8g9w3c24i
Πρότυπον:Βικιφθέγματα
10
1038
10085
10083
2009-12-07T12:34:56Z
Stravon
942
10085
wikitext
text/x-wiki
{{Sisterproject
|project=Wikiquote
|image=Greek wikiquote logo.png
|text=Σα [[:el:q:Κύρια_Σελίδα|Βικιφθέγματα]] ε<u>σ</u> υλικόν σχετικόν με:
|link=[[:el:q:{{#if: {{{1|}}} | {{{1}}}| {{PAGENAME}}}} | {{#if: {{{2|}}} | {{{2}}} | {{PAGENAME}}}}]]
}}<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|Βικιφθεγματα]]
</noinclude>
dq0xwabqaw6748gwaxc844nos5atdqi
Pontic Greek
0
1039
10088
2009-12-07T13:01:01Z
Qoan
1170
Redirected page to [[Ποντιακόν λαλίαν]]
10088
wikitext
text/x-wiki
#REDIRECT [[Ποντιακόν λαλίαν]]
hh70627f411imxoabivk216h6jm4bp9
Πόντιοι
0
1040
37381
36284
2025-12-20T12:05:41Z
Εὐθυμένης
2777
/* Αναφοράντας */
37381
wikitext
text/x-wiki
<table border="1" cellpadding="2" cellspacing="0" align="right" width="300" style="margin-left:0.5em;">
<tr><td colspan="2" bgcolor="chocolate"><center><font size="+1">'''Πόντιοι'''</font></center></td></tr>
<tr><td colspan="2">[[Εικόναν:Flag of Pontus.svg|290px]]</td></tr>
<tr><td bgcolor="orange">Όλων ο πληθυσμός:</td>
<td bgcolor="#ffde80"> 2.000.000 - 2.500.000 παγκoσμίως (κατ' εκτίμησην) </td>
</tr>
<tr><td bgcolor="orange">Σημαντικοί πληθυσμοί:</td>
<td bgcolor="#ffde80">[[Ελλάδα]]: 500.000 - 300.000 (κατ' εκτίμησην) </td>
</tr>
<tr><td bgcolor="orange">Καλατσή</td><td bgcolor="#ffde80">[[Ποντιακή διάλεκτος|Ποντιακά]], [[Ελληνική γλώσσα|Ελληνικά]]</td></tr>
<tr><td bgcolor="orange">θρή<u>σ</u>κευμα</td><td bgcolor="#ffde80">[[Ορθοδοξία|Χριστιανοί Ορθόδοξοι]] </td></tr>
</table>
'''Πόντιοι''' ονομά<u>σ</u>κουνταν οι [[Έλληνες]] πρόσφυγες που έρθαν ασήν περιοχή του [[Εύξεινος Πόντος|Ευξείνου Πόντου]] - [[Πόντος]]. Η περιοχή του Ευξείνου Πόντου εβρήεται ση βόρειαν και σην ανατολικήν θαλασσάκρην του τωρινού κράτους τη [[Τουρκία|Τουρκίας]] και άλλων [[Μαύρη Θάλασσα|παρευξεινίων χωρών]].Σημαντικοί Πόντοι ήταν ο Στράβων
[[Εικόναν:Bessarion 1476.JPG|right|thumb|140px|[[Βησσαρίων|Καρδινάλιος Βησσαρίων]] ([[1395]] – [[1472]]) τη [[Τραπεζούντα|Τραπεζούντος]], Πόντιος λόγιος, πολιτικός και καρδινάλιος]]
== Αρχαιότητα ==
[[Εικόναν:Ελληνικές_αποικίες_Ευξείνου_Πόντου.svg|thumb|left|Αποικίες τη Πόντονος]]
* Η ιστορία του Ποντιακού Ελληνισμού έ<u>σ</u> για ξεκίνεμα την ίδρυση της Σινώπης ση Βόρεια θαλασσάκρην της [[Μικρά Ασία|Μικρά Ασίας]] ασά [[Ίωνες|Μηλίσιους]]<ref>https://el.wikisource.org/wiki/%CE%93%CE%B5%CF%89%CE%B3%CF%81%CE%B1%CF%86%CE%B9%CE%BA%CE%AC/%CE%99%CE%92 Στράβων, Γεωγραφικά/ΙΒ - Βικιθήκη, κεφ. 3.1. </ref>
<references group="Στράβων, Γεωγραφικά/ΙΒ - Βικιθήκη, κεφ. 3.1" responsive="" />
περίπου το 800 π.Χ. Άσην Σινώπη οικιστές ίδρεσαν άλλα πόλεις. Η κυριότερη αούτων των πόλεων έτονε η [[Τραπεζούντα]] σο [[783 π.Χ.]]
Για τους Έλληνας του Πόντου πολλά εγράφταν ασου συγγραφάντας.
Οι Πόντιοι ζούσαν σε εκείνα τα μέρη ασην [[αρχαιότητα|αρχαιότηταν]] που έτονε αμιγώς ελληνικά πριν να εφτάει κατοχήν η [[Οθωμανική Αυτοκρατορία|Οθωμανικήν Αυτοκρατορίαν]]. Πολλοί τρανοί αρχαίοι επιστήμονες έχνε ποντιακήν καταγωγής όπως έτον ο [[αστρονομία|αστρονόμον]] ο [[Ηρακλείδης ο Πόντιος]],ο [[γεωγραφία|γεωφράφον]] ο [[Στράβων|Στράβωνας]] ο [[Αμάσεια|Αμάσειος]] και ο [[Διογένης|Διογένες]] ο [[κυνικός|κυνικόν]].
== Ανταλλαγή πληθυσμών ==
Το [[1923]] σύμφωνα με τη [[Συνθήκην τη Λωζάνες]], εέντονε [[ανταλλαγή πληθυσμών]] μεταξύ [[Έλληνες|Ελλήνων]] και [[Τούρκοι (πολίτες)|Τουρκαλάντων]] και απές ση συμφωνία τη συνθήκες περιλαμβάουνταν και οι κάτοικοι του Πόντου (όπως και ατοί τη [[Μικρά Ασία|Μικράς Ασίας]]).
== Γενοκτονία ==
Απάν ση προσφυγίαν ασην [[Τουρκία|Τουρκίαν]] σην [[Ελλάδα|Ελλάδαν]] πολλοί ( 350000 ) Πόντιοι έβρανε τον θάνατον και τελικά ασατούνς που εξεκίνεσαν πολλοί κι πρόλαβαν να φτάνε σην Ελλάδαν.
Η [[Γενοκτονία των Ελλήνων του Πόντου|γενοκτονία των Ποντίων]] κι εν αναγνωρισμέντσα διεθνώς αλλά μαναχά ασην Ελληνικήν Πολιτείαν με Νόμο του 1994 (N 2193/1994).
Η γενοκτονία κι έτονε μικρότερον ασατήν που εποίκαν ση [[Εβραίοι|Εβραίους]] οι [[Γερμανία|Γερμανοί]] ή ση [[Αρμενία|Αρμενίους]] οι [[Τούρκοι (πολίτες)|Τουρκάντ]].
[[Εικόναν:Ο Αλέξιος Γ’ Μεγάλος Κομνηνός 1349-1390 με τη σύζυγο του Θεοδώρα σε μικρογραφία του κτιτορικού χρυσόβουλλου της Μονής Διονυσίου του.jpg|left|thumb|160px|[[Αλέξιον ο 3ον]] (1338 – 1390), [[Αυτοκρατορία τη Τραπεζούντος|Αυτοκράτορας τη Τραπεζούντος]].]]
Οι Έλληνες τιμούν την γενοκτονίαν ση [[19 Καλομηνά|19 του Καλομηνά]] (Μάιος).
== Ήθη και εθίματα ==
Οι Πόντιοι έχνε πολλά σκυρόν παράδοσην και εθίματα που μετέφεραν ασον Πόντον. Οι [[χορός|χοροί]], η [[ποντιακή διάλεκτος]] και πολλά ασά εθίματα διατηρίουνταν εώς και σήμερον.
== Παραπομπές ==
<br /><references group="Στράβων, Γεωγραφικά/ΙΒ - Βικιθήκη, κεφ. 3.1" responsive="" />
== Τέρεν επίσης ==
*[[Ποντιακά Κάλαντα]]
*[[Ποντιακοί χοροί]]
== Αναφοράντας ==
<references />
== Εξωτερικές Συνδέσεις ==
*[https://web.archive.org/web/20210305165938/https://www.afternic.com/forsale/greek-genocide.org?&traffic_type=TDFS&traffic_id=GoDaddy_DLS Η Γενοκτονία των Ελλήνων]
*[https://web.archive.org/web/20090912094100/http://www.aihgs.com/pontus.htm Η γενοκτονία των Ποντίων]
*[https://web.archive.org/web/20070930120901/http://www.pontiangenocide.org.au/ Η γενοκτονία των Ποντίων-στοιχεία]
*[https://web.archive.org/web/20080611152026/http://www.karalahana.com/english.html Τραπεζούντα]
*[https://web.archive.org/web/20061106224353/http://lahana.org/resimler/index.php Εικόνα]
[[Κατηγορίαν:Ελλενικόν ιστορίαν]]
np7ylsdp4sej7xy5la7hoa0ac2f9qiu
3 Καλανταρί
0
1041
37287
37080
2025-12-16T19:15:57Z
Εὐθυμένης
2777
37287
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[2 Καλανταρί]] | [[3 Καλανταρί]] | [[4 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''3 τη Καλανταρί''' εν 3ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 362 ημέρας για να τελούτεν η χρονία (363 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[3 Χριστουγενναρί]] - [[3 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
61w9s5gnt0n5dspmtroiyi1q3rovlac
4 Καλανταρί
0
1042
37288
37076
2025-12-16T19:16:13Z
Εὐθυμένης
2777
37288
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[3 Καλανταρί]] | [[4 Καλανταρί]] | [[5 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''4 τη Καλανταρί''' εν 4ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 361 ημέρας για να τελούτεν η χρονία (362 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[4 Χριστουγενναρί]] - [[4 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
dw3dvsoih9ihihvkfvzonlv7qmtsrdd
5 Καλανταρί
0
1043
37289
37078
2025-12-16T19:18:47Z
Εὐθυμένης
2777
37289
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[4 Καλανταρί]] | [[5 Καλανταρί]] | [[6 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''5 τη Καλανταρί''' εν 5ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 360 ημέρας για να τελούτεν η χρονία (361 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[5 Χριστουγενναρί]] - [[5 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
cq5q57kxikjpq9o1txwm95zf7cuc92c
6 Καλανταρί
0
1044
37290
37079
2025-12-16T19:19:03Z
Εὐθυμένης
2777
37290
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[5 Καλανταρί]] | [[6 Καλανταρί]] | [[7 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''6 τη Καλανταρί''' εν 6ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 359 ημέρας για να τελούτεν η χρονία (360 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[6 Χριστουγενναρί]] - [[6 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
kwxgqkn88sx6d0e5g7sdb4jupobimpb
8 Καλανταρί
0
1045
37292
35795
2025-12-16T19:19:33Z
Εὐθυμένης
2777
37292
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[7 Καλανταρί]] | [[8 Καλανταρί]] | [[9 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''8 τη Καλανταρί''' εν 8ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 357 ημέρας για να τελούτεν η χρονία (358 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[8 Χριστουγενναρί]] - [[8 Κούντουρονος]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
qr7y641klxlloep1ipfptce6558xckq
9 Καλανταρί
0
1046
37293
37086
2025-12-16T19:19:56Z
Εὐθυμένης
2777
37293
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[8 Καλανταρί]] | [[9 Καλανταρί]] | [[10 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''9 τη Καλανταρί''' εν 9ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 356 ημέρας για να τελούτεν η χρονία (357 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[9 Χριστουγενναρί]] - [[9 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
228x0kvk1893d0qtmto7mjpb3iuo8i4
10 Καλανταρί
0
1047
37294
37093
2025-12-16T19:20:21Z
Εὐθυμένης
2777
37294
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[9 Καλανταρί]] | [[10 Καλανταρί]] | [[11 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''10 τη Καλανταρί''' εν 10ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 355 ημέρας για να τελούτεν η χρονία (356 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[10 Χριστουγενναρί]] - [[10 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
bm9ms4lw9dcojd9495ufydbxmxwww4n
11 Καλανταρί
0
1048
37295
37088
2025-12-16T19:20:41Z
Εὐθυμένης
2777
37295
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[10 Καλανταρί]] | [[11 Καλανταρί]] | [[12 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''11 τη Καλανταρί''' εν 11ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 354 ημέρας για να τελούτεν η χρονία (355 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[11 Χριστουγενναρί]] - [[11 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
465tsnp967sfu8ihso6lpsjh75fk3wk
12 Καλανταρί
0
1049
37296
37081
2025-12-16T19:20:58Z
Εὐθυμένης
2777
37296
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[11 Καλανταρί]] | [[12 Καλανταρί]] | [[13 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''12 τη Καλανταρί''' εν 12ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 353 ημέρας για να τελούτεν η χρονία (354 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[12 Χριστουγενναρί]] - [[12 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
hc8xhip8cj5k4dasbe9dp9fkv78ajmi
13 Καλανταρί
0
1050
37297
35862
2025-12-16T19:21:14Z
Εὐθυμένης
2777
37297
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[12 Καλανταρί]] | [[13 Καλανταρί]] | [[14 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''13 τη Καλανταρί''' εν 13ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 352 ημέρας για να τελούτεν η χρονία (353 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[13 Χριστουγενναρί]] - [[13 Κούντουρονος]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
hyu4ad2kzxmpd57fa2y7cha7d5qveqm
14 Καλανταρί
0
1051
37298
37089
2025-12-16T19:21:31Z
Εὐθυμένης
2777
37298
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[13 Καλανταρί]] | [[14 Καλανταρί]] | [[15 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''14 τη Καλανταρί''' εν 14ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 351 ημέρας για να τελούτεν η χρονία (352 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[14 Χριστουγενναρί]] - [[14 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
jlf6klwd9lh9aoj2fdcuq6ab1zdjtlk
15 Καλανταρί
0
1052
37299
37083
2025-12-16T19:21:48Z
Εὐθυμένης
2777
37299
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[14 Καλανταρί]] | [[15 Καλανταρί]] | [[16 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''15 τη Καλανταρί''' εν 15ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 350 ημέρας για να τελούτεν η χρονία (351 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[15 Χριστουγενναρί]] - [[15 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
im5dfhd6u1ddhyzis6rfx96gyg3zbeg
16 Καλανταρί
0
1053
37300
37085
2025-12-16T19:22:03Z
Εὐθυμένης
2777
37300
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[15 Καλανταρί]] | [[16 Καλανταρί]] | [[17 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''16 τη Καλανταρί''' εν 16ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 349 ημέρας για να τελούτεν η χρονία (350 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[16 Χριστουγενναρί]] - [[16 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
du0cb2m49qna1b4tq6jbun6wac2g79n
17 Καλανταρί
0
1054
37301
37092
2025-12-16T19:22:24Z
Εὐθυμένης
2777
37301
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[16 Καλανταρί]] | [[17 Καλανταρί]] | [[18 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''17 τη Καλανταρί''' εν 17ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 348 ημέρας για να τελούτεν η χρονία (349 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[17 Χριστουγενναρί]] - [[17 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
03gqdd1braajyyqn2xbtoys45rccz8f
18 Καλανταρί
0
1055
37302
37082
2025-12-16T19:22:41Z
Εὐθυμένης
2777
37302
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[17 Καλανταρί]] | [[18 Καλανταρί]] | [[19 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''18 τη Καλανταρί''' εν 18ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 347 ημέρας για να τελούτεν η χρονία (348 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[18 Χριστουγενναρί]] - [[18 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
1sihx6ins0pgfjfe9wny0sgfccn9www
19 Καλανταρί
0
1056
37303
37084
2025-12-16T19:23:02Z
Εὐθυμένης
2777
37303
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[18 Καλανταρί]] | [[19 Καλανταρί]] | [[20 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''19 τη Καλανταρί''' εν 19ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 346 ημέρας για να τελούτεν η χρονία (347 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[19 Χριστουγενναρί]] - [[19 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
5votckyai1mcqll8ppz6jd931kq0sb1
20 Καλανταρί
0
1057
37304
37101
2025-12-16T19:23:19Z
Εὐθυμένης
2777
37304
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[19 Καλανταρί]] | [[20 Καλανταρί]] | [[21 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''20 τη Καλανταρί''' εν 20ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 345 ημέρας για να τελούτεν η χρονία (346 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[20 Χριστουγενναρί]] - [[20 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
31jmtyzdpmpjug9s9zy2gcye4muz5x4
21 Καλανταρί
0
1058
37305
37087
2025-12-16T19:23:36Z
Εὐθυμένης
2777
37305
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[20 Καλανταρί]] | [[21 Καλανταρί]] | [[22 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''21 τη Καλανταρί''' εν 21ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 344 ημέρας για να τελούτεν η χρονία (345 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[21 Χριστουγενναρί]] - [[21 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
4hkg4j8q03ovn2z8ywju1kjmwtmr8kn
22 Καλανταρί
0
1059
37306
37094
2025-12-16T19:23:52Z
Εὐθυμένης
2777
37306
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[21 Καλανταρί]] | [[22 Καλανταρί]] | [[23 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''22 τη Καλανταρί''' εν 22ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 343 ημέρας για να τελούτεν η χρονία (344 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[22 Χριστουγενναρί]] - [[22 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
lm4qlm37jelkfw8cujac7n0dlv74se4
24 Καλανταρί
0
1060
37308
37102
2025-12-16T19:24:26Z
Εὐθυμένης
2777
37308
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[23 Καλανταρί]] | [[24 Καλανταρί]] | [[25 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''24 τη Καλανταρί''' εν 24ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 341 ημέρας για να τελούτεν η χρονία (342 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[24 Χριστουγενναρί]] - [[24 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
4kchagzt4emojg84cv991zm9zes8slw
25 Καλανταρί
0
1061
37309
37096
2025-12-16T19:24:45Z
Εὐθυμένης
2777
37309
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[24 Καλανταρί]] | [[25 Καλανταρί]] | [[26 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''25 τη Καλανταρί''' εν 25ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 340 ημέρας για να τελούτεν η χρονία (341 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[25 Χριστουγενναρί]] - [[25 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
efyslu3uu71qwrha123hqs27vcq1c8e
26 Καλανταρί
0
1062
37310
37091
2025-12-16T19:25:03Z
Εὐθυμένης
2777
37310
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[25 Καλανταρί]] | [[26 Καλανταρί]] | [[27 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''26 τη Καλανταρί''' εν 26ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 339 ημέρας για να τελούτεν η χρονία (340 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[26 Χριστουγενναρί]] - [[26 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
1f794bww1z4r23da31lzi1fdqth4sii
27 Καλανταρί
0
1063
37311
37097
2025-12-16T19:25:19Z
Εὐθυμένης
2777
37311
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[26 Καλανταρί]] | [[27 Καλανταρί]] | [[28 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''27 τη Καλανταρί''' εν 27ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 338 ημέρας για να τελούτεν η χρονία (339 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[27 Χριστουγενναρί]] - [[27 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
48eaf2spol85fjkv00t20j2ck6im42q
28 Καλανταρί
0
1064
37312
37103
2025-12-16T19:25:34Z
Εὐθυμένης
2777
37312
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[27 Καλανταρί]] | [[28 Καλανταρί]] | [[29 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''28 τη Καλανταρί''' εν 28ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 337 ημέρας για να τελούτεν η χρονία (338 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[28 Χριστουγενναρί]] - [[28 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
99oaokup7j7gv98gvvqufxtea936yc6
29 Καλανταρί
0
1065
37313
37095
2025-12-16T19:25:52Z
Εὐθυμένης
2777
37313
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[28 Καλανταρί]] | [[29 Καλανταρί]] | [[30 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''29 τη Καλανταρί''' εν 29ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 336 ημέρας για να τελούτεν η χρονία (337 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[29 Χριστουγενναρί]] - [[29 Κούντουρονος]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
c3bpng3hzltk4aa2wcw885bto1t2rk7
30 Καλανταρί
0
1066
37314
37114
2025-12-16T19:26:12Z
Εὐθυμένης
2777
37314
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[29 Καλανταρί]] | [[30 Καλανταρί]] | [[31 Καλανταρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''30 τη Καλανταρί''' εν 30ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 335 ημέρας για να τελούτεν η χρονία (336 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[30 Χριστουγενναρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
2pa1y6ujqt2507to82ef09dm312i9yj
31 Καλανταρί
0
1067
37315
37098
2025-12-16T19:26:31Z
Εὐθυμένης
2777
37315
wikitext
text/x-wiki
<div class="center">[[Αεργίτες]] | [[Χριστουγεννάρτς]] | '''[[Καλαντάρτς]]''' | [[Κούντουρος]] | [[Μαρτς]]</div>
<div class="center">[[30 Καλανταρί]] | [[31 Καλανταρί]] | [[1 Κούντουρονος]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|1}}
Η '''31 τη Καλανταρί''' εν 31ον ημέρα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 334 ημέρας για να τελούτεν η χρονία (335 ημέρας σο δίσεκτον τη χρονία).
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[31 Χριστουγενναρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
j3hg0e4a1ba036x9x68wrv4i2ekocf7
2 Τρυγομηνά
0
1068
37246
37183
2025-12-16T19:01:57Z
Εὐθυμένης
2777
37246
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[1 Τρυγομηνά]] | [[2 Τρυγομηνά]] | [[3 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''2 Τρυγομηνά''' εν 275ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 276ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 90 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
* 2 Τρυγομηνά 1187 – Ο Σαλαντίν επήρεν την [[Ιερουσαλήμ]] από τας [[Σταυροφορίας]].
* 2 Τρυγομηνά 1836 – Ο Κάρολος Δαρβίνος εγύρισεν σην [[Αγγλίαν]] μετά πέντε χρόνια ταξίδ’ με το πλοίον “Μπίγκλ”.
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[2 Σταυρί]] - [[2 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
2adfj54zpmw63jzs6u03v3l55rc7hbh
3 Τρυγομηνά
0
1069
37247
37174
2025-12-16T19:02:13Z
Εὐθυμένης
2777
37247
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[2 Τρυγομηνά]] | [[3 Τρυγομηνά]] | [[4 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''3 Τρυγομηνά''' εν 276ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 277ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 89 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[3 Σταυρί]] - [[3 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
8wbgme100wfuuxjzxg43oodcqt2jf9d
4 Τρυγομηνά
0
1070
37248
37172
2025-12-16T19:02:27Z
Εὐθυμένης
2777
37248
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[3 Τρυγομηνά]] | [[4 Τρυγομηνά]] | [[5 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''4 Τρυγομηνά''' εν 277ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 278ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 88 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[4 Σταυρί]] - [[4 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
5oc3xnffiph7hwwqkuzbfse934y41wn
5 Τρυγομηνά
0
1071
37249
37184
2025-12-16T19:02:42Z
Εὐθυμένης
2777
37249
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[4 Τρυγομηνά]] | [[5 Τρυγομηνά]] | [[6 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''5 Τρυγομηνά''' εν 278ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 279ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 87 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[5 Σταυρί]] - [[5 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
khdpkiijdr293klr9orkgujhul2xf2v
6 Τρυγομηνά
0
1072
37250
37181
2025-12-16T19:02:57Z
Εὐθυμένης
2777
37250
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[5 Τρυγομηνά]] | [[6 Τρυγομηνά]] | [[7 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''6 Τρυγομηνά''' εν 279ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 280ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 86 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[6 Σταυρί]] - [[6 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
fiq3rlj1kt8hsudrpa5ynlgbjoddluv
7 Τρυγομηνά
0
1073
37251
37195
2025-12-16T19:04:40Z
Εὐθυμένης
2777
37251
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[6 Τρυγομηνά]] | [[7 Τρυγομηνά]] | [[8 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''7 Τρυγομηνά''' εν 280ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 281ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 85 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[7 Σταυρί]] - [[7 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
t3zcgdnilr2kwgsjuiqloing837cnm3
8 Τρυγομηνά
0
1074
37252
37170
2025-12-16T19:04:55Z
Εὐθυμένης
2777
37252
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[7 Τρυγομηνά]] | [[8 Τρυγομηνά]] | [[9 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''8 Τρυγομηνά''' εν 281ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 282ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 84 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[8 Σταυρί]] - [[8 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
eqrgbioyrkwwi4ob38qekvdqllw67g8
9 Τρυγομηνά
0
1075
37253
37179
2025-12-16T19:05:08Z
Εὐθυμένης
2777
37253
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[8 Τρυγομηνά]] | [[9 Τρυγομηνά]] | [[10 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''9 Τρυγομηνά''' εν 282ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 283ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 83 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[9 Σταυρί]] - [[9 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
tkpejtfqdt6lazuusc5phlsqk387wt8
10 Τρυγομηνά
0
1076
37254
37190
2025-12-16T19:05:23Z
Εὐθυμένης
2777
37254
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[9 Τρυγομηνά]] | [[10 Τρυγομηνά]] | [[11 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''10 Τρυγομηνά''' εν 283ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 284ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 82 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[10 Σταυρί]] - [[10 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
b2xrtl4d37letfpcg6w0cco3fainx2i
11 Τρυγομηνά
0
1077
37255
37215
2025-12-16T19:05:43Z
Εὐθυμένης
2777
37255
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[10 Τρυγομηνά]] | [[11 Τρυγομηνά]] | [[12 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''11 Τρυγομηνά''' εν 284ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 285ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 81 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[11 Σταυρί]] - [[11 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
suhayl2khdfry427lgi6aprhzz8coey
12 Τρυγομηνά
0
1078
37256
37208
2025-12-16T19:05:59Z
Εὐθυμένης
2777
37256
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[11 Τρυγομηνά]] | [[12 Τρυγομηνά]] | [[13 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''12 Τρυγομηνά''' εν 285ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 286ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 80 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[12 Σταυρί]] - [[12 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
8ovwrwq1v92qkv711pofqfefcbyqjea
13 Τρυγομηνά
0
1079
37257
37213
2025-12-16T19:06:13Z
Εὐθυμένης
2777
37257
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[12 Τρυγομηνά]] | [[13 Τρυγομηνά]] | [[14 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''13 Τρυγομηνά''' εν 286ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 287ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 79 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[13 Σταυρί]] - [[13 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
72d7owsbfeg3l95kajl1mfdzyzmtypx
14 Τρυγομηνά
0
1080
37258
37199
2025-12-16T19:06:39Z
Εὐθυμένης
2777
37258
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[13 Τρυγομηνά]] | [[14 Τρυγομηνά]] | [[15 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''14 Τρυγομηνά''' εν 287ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 288ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 78 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[14 Σταυρί]] - [[14 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
m5ao9xrpnvdcrqhaeks2k4z7p0b7ldj
15 Τρυγομηνά
0
1081
37259
37204
2025-12-16T19:06:57Z
Εὐθυμένης
2777
37259
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[14 Τρυγομηνά]] | [[15 Τρυγομηνά]] | [[16 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''15 Τρυγομηνά''' εν 288ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 289ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 77 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[15 Σταυρί]] - [[15 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
nvnu8ugbrubh6wszwvgf0r8bj36yzcu
16 Τρυγομηνά
0
1082
37260
37193
2025-12-16T19:07:15Z
Εὐθυμένης
2777
37260
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[15 Τρυγομηνά]] | [[16 Τρυγομηνά]] | [[17 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''16 Τρυγομηνά''' εν 289ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 290ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 76 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[16 Σταυρί]] - [[16 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
44laqjtwg1xec0gjnes0g2wqcg5eayo
17 Τρυγομηνά
0
1083
37261
37191
2025-12-16T19:07:48Z
Εὐθυμένης
2777
37261
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[16 Τρυγομηνά]] | [[17 Τρυγομηνά]] | [[18 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''17 Τρυγομηνά''' εν 290ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 291ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 75 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[17 Σταυρί]] - [[17 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
1yyh9xq46qadzgzx1g8q8p1jdd5gn55
18 Τρυγομηνά
0
1084
37262
37206
2025-12-16T19:08:02Z
Εὐθυμένης
2777
37262
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[17 Τρυγομηνά]] | [[18 Τρυγομηνά]] | [[19 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''18 Τρυγομηνά''' εν 291ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 292ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 74 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[18 Σταυρί]] - [[18 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
964gc5h6ygra337edruqlka32vyyf7v
19 Τρυγομηνά
0
1085
37263
37205
2025-12-16T19:08:17Z
Εὐθυμένης
2777
37263
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[18 Τρυγομηνά]] | [[19 Τρυγομηνά]] | [[20 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''19 Τρυγομηνά''' εν 292ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 293ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 73 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[19 Σταυρί]] - [[19 Αεργί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
najswz6d8hdy8e2ukrn60tf3fqu4szp
20 Τρυγομηνά
0
1086
37264
37194
2025-12-16T19:08:33Z
Εὐθυμένης
2777
37264
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[19 Τρυγομηνά]] | [[20 Τρυγομηνά]] | [[21 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''20 Τρυγομηνά''' εν 293ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 294ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 72 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[20 Σταυρί]] - [[20 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
7klzkbeffqyxr2b4wn0hqwzgo71kisn
21 Τρυγομηνά
0
1087
37265
37198
2025-12-16T19:08:49Z
Εὐθυμένης
2777
37265
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[20 Τρυγομηνά]] | [[21 Τρυγομηνά]] | [[22 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''21 Τρυγομηνά''' εν 294ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 295ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 71 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[21 Σταυρί]] - [[21 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
sco0q8twcp85usjgrcl1poy4f0oko2g
22 Τρυγομηνά
0
1088
37266
37207
2025-12-16T19:09:11Z
Εὐθυμένης
2777
37266
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[21 Τρυγομηνά]] | [[22 Τρυγομηνά]] | [[23 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''22 Τρυγομηνά''' εν 295ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 296ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 70 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[22 Σταυρί]] - [[22 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
kldtn0nz23y3g2tyzy6114b3qud20c5
23 Τρυγομηνά
0
1089
37267
37197
2025-12-16T19:09:27Z
Εὐθυμένης
2777
37267
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[22 Τρυγομηνά]] | [[23 Τρυγομηνά]] | [[24 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''23 Τρυγομηνά''' εν 296ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 297ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 69 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[23 Σταυρί]] - [[23 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
5wx1qzpiqvrqb2o0r4910edgnv7g0vr
24 Τρυγομηνά
0
1090
37268
37200
2025-12-16T19:09:44Z
Εὐθυμένης
2777
37268
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[23 Τρυγομηνά]] | [[24 Τρυγομηνά]] | [[25 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''24 Τρυγομηνά''' εν 297ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 298ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 68 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[24 Σταυρί]] - [[24 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
2q0kid10hztas8tb58kgoyofdds9l2p
25 Τρυγομηνά
0
1091
37269
37216
2025-12-16T19:10:00Z
Εὐθυμένης
2777
37269
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[24 Τρυγομηνά]] | [[25 Τρυγομηνά]] | [[26 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''25 Τρυγομηνά''' εν 298ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 299ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 67 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[25 Σταυρί]] - [[25 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
9cq3fp5it1tv2dmcybslbda3n68hfko
26 Τρυγομηνά
0
1092
37270
37203
2025-12-16T19:10:16Z
Εὐθυμένης
2777
37270
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[25 Τρυγομηνά]] | [[26 Τρυγομηνά]] | [[27 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''26 Τρυγομηνά''' εν 299ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 300ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 66 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[26 Σταυρί]] - [[26 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
juzgyh6cxlw0y39wopfmwyz9p7rngr3
27 Τρυγομηνά
0
1093
37271
37214
2025-12-16T19:10:32Z
Εὐθυμένης
2777
37271
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[26 Τρυγομηνά]] | [[27 Τρυγομηνά]] | [[28 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''27 Τρυγομηνά''' εν 300ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 301ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 65 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[27 Σταυρί]] - [[27 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
bu8be89i37xupd34x0r0ic7zw71soct
28 Τρυγομηνά
0
1094
37272
37202
2025-12-16T19:10:49Z
Εὐθυμένης
2777
37272
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[27 Τρυγομηνά]] | [[28 Τρυγομηνά]] | [[29 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''28 Τρυγομηνά''' εν 301ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 302ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 64 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[28 Σταυρί]] - [[28 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
jm1x8433jbtrtosurt28lohhrtopvv4
29 Τρυγομηνά
0
1095
37273
37210
2025-12-16T19:11:06Z
Εὐθυμένης
2777
37273
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[28 Τρυγομηνά]] | [[29 Τρυγομηνά]] | [[30 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''29 Τρυγομηνά''' εν 302ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 303ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 63 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[29 Σταυρί]] - [[29 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
rpnfdlgpsg8m6598pa5xhqsa6y4rtz5
30 Τρυγομηνά
0
1096
37274
37209
2025-12-16T19:11:23Z
Εὐθυμένης
2777
37274
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[29 Τρυγομηνά]] | [[30 Τρυγομηνά]] | [[31 Τρυγομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''30 Τρυγομηνά''' εν 303ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 304ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 62 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[30 Σταυρί]] - [[30 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
64mtgm8mzq9yegzpygaelyhe8wtav8b
31 Τρυγομηνά
0
1097
37275
37212
2025-12-16T19:11:40Z
Εὐθυμένης
2777
37275
wikitext
text/x-wiki
<div class="center">[[Αλωνάρτς]] | [[Σταυρίτες]] | '''[[Τρυγομηνάς]]''' | [[Αεργίτες]] | [[Χριστουγεννάρτς]]</div>
<div class="center">[[30 Τρυγομηνά]] | [[31 Τρυγομηνά]] | [[1 Αεργί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|10}}
'''31 Τρυγομηνά''' εν 304ον ημέρα τη χρονίας, ίστε λεει μας το [[Γρηγοριανόν ημερολόγιον]] (έν το 305ον ημέρα σο δίσεκτον τη χρονία). Επέμναν άλλα 61 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[31 Σταυρί]] - [[31 Αεργί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας]]
b8k9o168x175di9r7y25ttz0th0zgqx
Γρηγοριανόν ημερολόγιον
0
1098
35318
31485
2023-01-05T22:36:45Z
Wolverène
4171
+
35318
wikitext
text/x-wiki
To '''Γρηγοριανόν Hμερολόγιον''', εν τ' ημερολόγιον τ' Δυτικού κόσμου. Εν μιαν παραλλαγήν τ' ιουλιανούν, και θεσπίστ' ασόν Πάπα [[Γρηγόριο ΙΓ']], ασόν ονομάζουντο, σα [[24 Κουντούρονος]] τ' [[1582]].
[[Κατηγορίαν:Ημερολόγιαν]]
rp68sjrxalzf7o8l0z3aneb5ljy8nex
Κάλαντα Πρωτοχρονίας
0
1099
32540
32539
2015-10-20T19:22:36Z
Failstate14
5044
32540
wikitext
text/x-wiki
Τα '''κάλαντα τη Πρωτοχρονίας''' εν ευχητικά τραγωδίας ντο ψάλκουνταν κάθαν χρόνον, σην παραμονήν τη [[Πρωτοχρονία|Πρωτοχρονίας]]. Τα κάλαντα έχνε πολλά λοέν μορφάς (λ.χ. [[ποντιακά]], μωραΐτικα, κρητικά, κ.ου.κ.).
== Κάλαντα ==
: Αρχή κάλαντα κι αρχή του χρόνου κι αρχή του χρόνου.
: Πάντα κάλαντα, πάντα του χρόνου πάντα του χρόνου.
: Αρχή μήλον εν κι αρχή κυδών εν κι αρχή κυδών εν
: Κι αρχή βάλσαμον το μυριγμένον το μυριγμένον.
: Εμυρίστεν ατό ο κόσμος όλον ο κόσμος όλον.
: Για μύριστ ατό και εσύ αφέντα καλέμ αφέντα.
: Λύσον την κεσέ σ και δος παράδας και δος παράδας.
: Κι αν ανιοιείς μας χαράν σην πόρτας σ χαράν σην πόρτας σ.
: Ευχές Χρόνια Πολλά, πάντα και του χρόνου Καλή χρονία και σ όλα τα σπίτ(ι)α υείαν κι ευλοίαν
[[Κατηγορίαν:Θρησκείαν]]
7bp13wkq99920cmy9dvx8iav54sa8rq
Βικιπαίδεια:Αδακά ψηφίζομεν για νοματάντς
4
1111
10266
2009-12-09T23:37:54Z
ZaDiak
10
[[Βικιπαίδεια:Αδακά ψηφίζομεν για νοματάντς]] ετερχλαεύτεν σο [[Βικιπαίδεια:Εκλογήν]]
10266
wikitext
text/x-wiki
#REDIRECT [[Βικιπαίδεια:Εκλογήν]]
314xgsthpc89e0eep6m7mdvbnro5fdo
Βικιπαίδεια:Αγορά/Αρχείον 2008
4
1113
35289
10276
2022-12-24T11:57:31Z
Εὐθυμένης
2777
([[c:GR|GR]]) [[File:Flag of Pontus.jpg]] → [[File:Flag of Pontus (2).svg]]
35289
wikitext
text/x-wiki
__NEWSECTIONLINK__
<ul><li>'''pnt:'''
{| class="plainlinks" width="50%" align="center" border="0" cellpadding="2" cellspacing="2" style="margin-bottom:0.5em; background:#FFF; font-size:1.2em; text-align:center;"
| [{{fullurl:Wp/pnt/Βικιπαίδεια/Αγορά|action=edit§ion=new}} Αρχινέστε γράψιμον σην αγοράν<br>Arhineste ğrapsimon sin ağoran]
|}
{| align="right" style="background:#FFF5EE; margin:0 0 0.5em 1em;" id="toc" width="220px"
|-
|colspan="2" align="center" | [[Image:Diogenes looking for a man - attributed to JHW Tischbein.jpg|center|200px]]
|-
|colspan="2" align="center" | <big>'''Αγορά'''</big><br />
----
|-
|style="background:#EEDFCC;" colspan="2" align="center"| '''Χρήσιμα'''
|-
|colspan="2" align="center"|
'''[[Βικιπαίδεια:Αδακά ψηφίζομεν για νοματάντς|Αδακά ψηφίζομεν για νοματάντς και γιαρίφς]]'''<br />
[[Αρχικόν σελίδα|Αρχικόν σελίδαν]]<br /> [[Βικιπαίδεια|Βικιπαίδεια]]<br /> [[Βικιπαίδεια/Ντο εν η Βικιπαίδεια|Ντο εν η Βικιπαίδεια]]<br />[[Βικιπαίδεια/Ντο 'κ εν η Βικιπαίδεια|Ντο 'κ εν η Βικιπαίδεια]] <br /> [[Βικιπαίδεια/Βοήθεια|Βοήθεια]] <br /> [[Βικιπαίδεια/Δικαιώματα πνευματί|Δικαιώματα πνευματί]]<br />[irc://irc.freenode.net/wikipedia-pnt Παρακάθ σο IRC]
|}
<div style="background:#EEDFCC; text-align:left; margin:0px; padding:3px;">
<span style="font-size:bigger;">'''Χαιρετίας και καλωσόρεμαν σ' όλεα τα Βικιπαιδία!'''</span>
</div>
<div style="background:#FFF5EE; padding:2px; margin-top:2px;">
Οι παλιοίεμουν σ' αρχαίον τ' ελλενικόν την γλώσσαν έλεγαν «αγοράν» τον τόπον που εποίνανε τα μουχαμπέτε και τα καλατσίασατουν. Αέτς πα, όλ εμείστουν θα καλατσέβουμε αδά σην αγοράνεμουν. Σον αρχαίον την αγοράν ο Διογένες ο Σινωπέας αραεύκουτον τ' ανθρώπ'ς (εικόνα). Εμείστουν αδά πα θα ευρίσκουμ' ατείντζ.
Αρχινέστε γράψιμον [{{fullurl:{{FULLPAGENAME}}|action=edit§ion=new}} αφκά καικά] και βαλέστε την '''υπογραφήνεσουν''': <nowiki>~~~~</nowiki>.
</div>
</li>
<li>'''en:''' Requests for the [[m:bot|bot]] flag should be made on this page. This wiki uses the [[m:bot policy|standard bot policy]], and allows [[m:bot policy#Global_bots|global bots]] and [[m:bot policy#Automatic_approval|automatic approval of certain types of bots]]. Other bots should apply below.</li>
</ul>
<hr size="5px" noshadow>
== τεστ ==
το γάιδαρον όντες τιρτεύς, ακούς και την πορδήνατ'. --[[User:Sinopeus|Sinopeus]] 15:22, 7 March 2008 (UTC)
== τεστ2 ==
τον sinopeus όντες τιρτεύς, ακούς και την γαρήνατ'. --[[User:Sinopeus|Sinopeus]] 15:24, 7 March 2008 (UTC)
== Εξαιρετικα ==
Πολύ όμορφο το ντιζάιν μας έτσι με το καλό;) --[[User:Consta|Consta]] 17:29, 7 March 2008 (UTC)
Το ρωμαίικο interface βρίσκεται [http://translatewiki.net/wiki/Special:Translate?task=untranslated&group=core-mostused&limit=2000&language=pnt εδώ] για όποιον Έλλην ή Ρωμιό(Πόντιο) θα επιθυμούσε να βοηθήσει. Έχουμε ανάγκη για βοήθεια όποιοι χρήστες είναι διαθέσιμοι ας το δηλώσουν εδώ--[[User:Consta|Consta]] 17:47, 7 March 2008 (UTC)
==IRC==
Με χαρά ανακοινώνω ότι η Ποντιακή Βικιπαίδεια απέκτησε το δικό της κανάλι για συζήτηση στο [irc://irc.freenode.net/wikipedia-pnt IRC] --[[User:Consta|Consta]] 16:38, 10 March 2008 (UTC)
== Interface ==
Ερχίνεσα κι εφτάγω [http://translatewiki.net/wiki/Special:Translate?task=untranslated&group=core-mostused&limit=2000&language=pnt κι άλλα μεταφράσεις]. Εάν ευρίκετε μεταφράσεις ντο 'κ είναι σωστά κι αν έχετε σον νούνεσουν τα σωστά, να λέγετε με. Ή ποίστεν το κι άλλο καλλίον. Ατό πα [[Wiki|Wiki]] εν. ;-) --[[User:Sinopeus|Sinopeus]] 13:58, 11 April 2008 (UTC)
== Ποντέικα ==
Μου άρεσε έτσι όπως τεκμηρίωσες την άποψη σου. Ομολογώ όμως ότι έχω κάποιες ''αντιρρήσεις-αμφιβολίες'' πάνω στο θέμα. Καταρχήν διαφωνώ ή μάλλον αμφιβάλλω για το τι ονομάζουμε γλώσσα και τι διάλεκτο. Γλώσσα ονομάζουμε (όπως το καταλαβαίνω εγώ τουλάχιστον), έναν ανεξάρτητο σύνολο προφορικής/γραπτής ομιλίας-έκφρασης που διαφέρει από κάποιον άλλο στην γραμματική, στο συντακτικό και στο λεξιλόγιο και δεν γίνεται αντιληπτό από άλλους που δεν την γνωρίζουν, πολύ χοντρικά. Διάλεκτος νομίζω ότι είναι μια παραλλαγή της κοινής γλώσσας π.χ. κρητική, κυπριακή διάλεκτος, οι οποίες γίνονται αντιληπτές από τους ομιλούντες και των δυο και επιπλέον είναι αρκετά κατανοητές και από ομιλητές που έχουν σαν μητρική τους την κοινή και η διαφορά τους συνοψίζεται σε κάποιες λέξεις και στην προφορά. Τι συμβαίνει όμως όταν μια διάλεκτος αποξενώνεται για διάφορους λόγους από την κοινή, και εμφανίζει τεράστιες αποκλίσεις; Για παράδειγμα τα ποντιακά που δεν είναι αντιληπτά από ομιλητές ούτε των Κρητικών, ούτε των Κυπριακών, αλλά ούτε και της κοινής ή με μεγάλη δυσκολία;
Άραγε η ποντιακή που σε ποσοστό 90% και πάνω, διαφέρει από την νεοελληνική και η ομοιότητα της στηρίζεται σε κάποιες ομόριζες λέξεις, μπορεί να θεωρείτε πια διάλεκτος; Ένα παρόμοιο παράδειγμα είναι η Αγγλική γλώσσα με την Γερμανική που μετά από μεγάλο χρονικό διάστημα άρχισαν να παρουσιάζουν αποκλίσεις μεταξύ τους, δημιουργώντας με το πέρασμα χιλιετιών δυο διαφορετικές γλώσσες. Για μένα η ποντιακή λίγο πολύ είναι γλώσσα γιατί είναι αντιληπτή σχεδόν μόνο από τους Ποντιόφωνους. Και την συνδέουμε με την νεοελληνική εκτός από τις λέξεις και με τους πρόσφυγες (κακώς). Ή μόνη αλήθεια είναι ότι οι πόντιοι μιλούν μια ελληνογενής γλώσσα (όπως και η [http://el.wikipedia.org/wiki/%CE%A4%CF%83%CE%B1%CE%BA%CF%89%CE%BD%CE%B9%CE%BA%CE%AE_%CE%B4%CE%B9%CE%AC%CE%BB%CE%B5%CE%BA%CF%84%CE%BF%CF%82 τσακωνική]) που τίνι να εκλήψει. Το καλύτερο πιστεύω είναι να βρούμε μια ονομασία μιας λέξης μόνο για εδώ, όμως πολύ σωστά θα κάνουμε και αυτό που λες να κρατήσουμε στην αρχική το Ποντέικα Ρωμαίικα . Τι λες; Κάτι σαν διπλή ονομασία; --[[User:Consta|Consta]] 15:33, 19 April 2008 (UTC)
[[Image:Leonidio-Tsakonian-sign.jpg|thumb|right|300px|]]
ΟΚ. Απ' ότι γνωρίζω στο θέμα διάλεκτος/γλώσσα σχετικά με την ποντιακή υπάρχουν και μεταξύ γλωσσολόγων διαφορετικές απόψεις. Ακόμη και ο Τοπχαράς υποστηρίζει στο βιβλίο του το 1932 ότι πρόκειται για γλώσσα, όχι για διάλεκτο. Για να είμαι ειλικρινής, για μένα δεν κάνει και μεγάλη διαφορά και ευχαρίστως τα δέχομαι και ως ελληνογενής γλώσσα. Ίσως θα μπορούσε να βοηθήσει κανένας ειδικός.<br>
Προτείνεις ''«Κάτι σαν διπλή ονομασία»''. Δώσε ένα παράδειγμα, όλο και κάτι θα έχεις στο νου σου. :-) --[[User:Sinopeus|Sinopeus]] 11:03, 20 April 2008 (UTC)
Ναι, πχ. εννοώ, η επίσημη ονομασία μας να είναι '''Ποντέικα''' (είσαι σίγουρος πως γράφετε έτσι και είναι γραμματικά σωστό;), και στην κύρια σελίδα μας μπορούμε να γράφουμε ρωμαίικα ποντέικα. Δηλαδή θα έχουμε ένα επίσημο όνομα για έξω '''Ποντείκα - Pontic''' (pnt) και κάτι σαν (χα χα) συνταγματικό όνομα, για το πως θα αυτοαποκαλούμαστε οι ίδιοι '''Pωμαίικα Ποντέικα''' (αν και σ' αυτό οφείλω να ομολογήσω ότι έχω μια ένσταση γιατί υπάρχουν σχεδόν 1 εκ. Ποντιόφωνοι στην Τουρκία οι οποίοι μαζί με τον ρατσισμό που υπάρχει εκεί με τους Τούρκους δεν νομίζω να αυτοαποκαλούνται Ρωμιοί=Rum=Έλληνες ωστόσο για την Ρωσία την Ουκρανία την Αμερική, δεν ξέρω). Τι λες εσύ συμφωνείς; --[[User:Consta|Consta]] 10:05, 21 April 2008 (UTC)
Κώστα, πρέπει να τονίζω συνεχώς ότι δεν είμαι ειδικός στο θέμα. Ότι λεω δεν είναι παρά η προσωπική μου άποψη. Για να είμαι ειλικρινείς: το «ποντέικα» το υιοθέτησα από το βιβλίο του Τοπχαρά (βλ. [[Talk:Wp/pnt|συζήτηση εδώ]], πολύ καλό btw). Πριν δεν το είχα ακούσει και ούτε γνωρίζω κανέναν, να τα λεει έτσι. Με τον όρο ήλπιζα να κινήσω το ενδιαφέρον άλλων χρηστών, έστω για συζήτηση. ;-) Το google βγάζει μονάχα την αρχική μας σελίδα, οπότε δε θα με πείραζε, εάν το κάναμε «ποντιακά». Δεν πιστεύω ότι το «ποντέικα» είναι λάθος αλλά αφού δεν το χρησιμοποιεί κανείς, είπαμε. Ο σκοπός δεν μπορεί να είναι να χρησιμοποιούμε λέξεις που δεν χρησιμοποιεί κανένας άλλος. <br>
Οι φίλοι μας Ποντιόφωνοι της Τουρκίας νιώθουν απ’ ότι γνωρίζω 1000% Τούρκοι και είναι πιστοί μωαμεθανοί. Τα ποντιακά όμως τα λένε με το όνομα που τους έμαθαν οι πρόγονοι τους: [http://www.ocena.info/leksiko/ romeika] ή και (περισσότερο επίσημα) [[:w:tr:Pontus Rumcası|pontus rumcası]]. Δες κι [http://www.ocena.info/glossa/index.htm αυτό το κειμενάκι] που έγραψε ένας Τούρκος για τα ποντιακά («''T'emetero ti glossa emis onemazum Romayika. Sin Ellada (so Yunanistani) leguna Pontiaka''.»). Γνωρίζω προσωπικά μια Τουρκάλα που μιλάει ποντιακά (βαριά αλλά χαριτωμένη τουρκική προφορά) και τα λεει «ρωμαϊγκα». Όσο για τους φίλους μας στη Ρωσία, σε [http://www.greek.ru/forum/forum65/topic9544/messages/ αυτό το φόρουμ] τουλάχιστον και αυτοί τα λένε «romeyka». Σε Αμερική, Γερμανία και όπουδήποτε μετανάστευσαν οι τ'εμετέρ ξεκινώντας από Ελλάδα, τα λένε «ποντιακά».<br>
Συμφωνώ απόλυτα με την λύση σου (επίσημο όνομα για έξω «συνταγματικό όνομα» για εδώ). Πότε θα πρέπει να αποφασιστεί οριστικά; Θα ήθελα να μην το αποφασίσουμε μονάχα εμείς οι δυο. Αλήθεια, το Αστεράκι πού είναι; --[[User:Sinopeus|Sinopeus]] 14:02, 21 April 2008 (UTC)
ΥΓ: πολύ ωραία η φωτογραφία. :-)
Καλύτερα όσο το δυνατό γρηγορότερα πρέπει να αποφασιστεί, είναι τυπικό ζήτημα, αργότερα άμα θες σου δίνω και δυο σελίδες για να δεις. Στον Αστεράκι θα στείλω mail. --[[User:Consta|Consta]] 14:24, 21 April 2008 (UTC)
:Αδακά είμαι και γω παιδάδες. Ντο να λέω. Τεμόν η γνώμ εν: ένα όνομα για όλα τα χρήσεις.
*Τεμόν η γνωμ εν: '''Ποντιακά''' = «Pωμαίικα (δηλ. Ελληνικά) ασον Πόντο» (για τ’ατό και’χουμε τον κωδικόν: '''pnt''' δηλ. σα βαρβάρικα «Pontiaka»)
*Και αν θέλετε βάλτε στην αρχική μας σελίδα το '''Ποντιακά''' και απο κάτω ακριβώς, την ένδειξη «τα Pωμαίικα τη Πόντου»,:
<div align="center" style="font-size:17pt; line-height:1em;">Η Βικιπαίδεια σα</div>
<div align="center" style="font-size:35pt; line-height:1em;">Ποντιακά</div>
<div align="center" style="font-size:14pt; line-height:1em;">«τα Pωμαίικα τη Πόντου»</div> :
<div align="center" style="font-size:12pt; line-height:1,3em;">Ανοιχτόν εγκυκλοπαίδεια ντο γράφκεται και τρανείν απ' ατείντς π' θέλνε. --[[User:Asteraki|Asteraki]] 15:48, 22 April 2008 (UTC)</div>
Καλό κι αυτό, μου αρέσει. Περιέχει και τις δυο τις ονομασίες, όπως το θέλουμε. Έχω μικρή αντίρρηση σχετικά με την γενική πτώση («Πόντου») που είναι η νεοελληνική. Ξέρω, πολλοί την χρησιμοποιούν, αλλά πρόκειται για επιρροή της νεοελληνικής. Στηρίζομαι σε διάφορα βιβλία που έχω (βλ. και το άρθρο [[Ουσιαστικόν|Ουσιαστικόν]]). Αυτά ορίζουν για ουσιαστικά αρσενικού γένους που δέν τονίζονται στη λίγουσα (''Πόντος, κόσμος, διάσκαλος'') ως κατάληξη της γενικής την ''-ονος'' (''Πόντονος, κόσμονος, διάσκαλονος''). Όταν τονίζεται η λίγουσα (πχ ''αριθμός'') η πτώση γενική αντιστοιχεί στην νεοελληνική (''αριθμού''). Εδώ δηλαδή '''«τα Pωμαίικα τη Πόντονος»'''. Κατά τ' άλλα για μένα η πρόταση είναι ΟΚ. Ο [[User:Consta|Σελανικλής]] ντο λεει; --[[User:Sinopeus|Sinopeus]] 21:47, 22 April 2008 (UTC)
:Δίκιο έχεις, «τα Pωμαίικα τη Πόντονος»... Ήταν λάθος μου, συγνώμη. Πάντως χάρηκα που συμφώνησες. --[[User:Asteraki|Asteraki]] 23:57, 22 April 2008 (UTC)
:Δύο σχόλια θα κάνω. Μου αρέσει πολύ (αν σίγουρα είναι και γραμματικά σωστό) το '''«τα Pωμαίικα τη Πόντονος»''' σαν συνταγματικό μας όνομα εδώ, το εγκρίνω. Το άλλο όνομα όμως, δηλαδή το επίσημο για έξω δεν κατάλαβα ποιο θέλετε, το '''Ρωμαίικα''' που οι περισσότεροι ποντιόφωνοι του εξωτερικού τα λένε έτσι ή τα '''Ποντιακά'''. Σκέφτηκα ότι μπορούμε να κάνουμε αν συμφωνείτε '''Ρωμαίικα (Ποντιακά)''' έτσι όλο μαζί (υπάρχει και σε άλλες γλώσσες σαν πολιτική). Ντο λέτε; --[[User:Consta|Consta]] 10:32, 23 April 2008 (UTC)
::Δεν έχω αντιρρήσεις, και τα δυο ονόματα χρησιμοποιούνται. Θα λεει δηλαδή στα ιντερβίκια '''Ρωμαίικα (Ποντιακά)'''; Εάν το δεχτούν (αφού ''υπάρχει και σε άλλες γλώσσες σαν πολιτική''), ΟΚ. --[[User:Sinopeus|Sinopeus]] 13:10, 23 April 2008 (UTC)
=== Διεθνή ονομασία ===
Κατα την ταπεινή μου γνώμη, για το επίσημο όνομα για έξω, δηλ. την Διεθνή ονομασία, προτείνω από το «''Η Βικιπαίδεια σα <big>Ποντιακά</big>»''» το σκέτο (και χωρίς παρενθέση, που υποδηλώνει σύγχηση): <big>'''Ποντιακά'''</big>. Γιατί υπάρχουν σχεδόν 5 εκ. Ποντιόφωνοι Παγκοσμίως που έτσι την ονομάζουν και έτσι την ξέρουνε την γλώσσα. --[[User:Asteraki|Asteraki]] 03:34, 24 April 2008 (UTC)
:Καταλαβαίνω τη θέση σου. Εγώ συνεχίζω να αμφιβάλλω εάν πραγματικά συμφωνίσει το language subcommittee στην διπλή ονομασία '''Ρωμαίικα (Ποντιακά)'''. Για να είμαι ειλικρινείς, αμφιβάλλω. Παντως ''αν τυχόν και επιμείνουν σε μια ονομασία'', υποστηρίζω κι εγώ το '''ποντιακά'''. Θεωρώ το '''ρωμαίικα''' ιστορικά σωστό, αλλά τί να το κάνουμε, αφού στην Ελλάδα δεν τα λεει κανείς έτσι; Άσε που και ο ''κωδικός γλώσσας ISO 639-3'' είναι '''pnt''', που σημαίνει ότι εάν κάποτε εγκριθεί ποντιακή Βικι, θα μετακινηθεί στο ''pnt.wikipedia.org''. Επίσης και στο ''ethnologue.com'' λέγεται μόνο ''pontic''. --[[User:Sinopeus|Sinopeus]] 07:24, 24 April 2008 (UTC)
:Τώρα κατάλαβα τι εννωούσε ο Κώστας: δες π.χ. τα interwiki-links για τα νορβηγικά: '''Norsk (nynorsk)''' και '''Norsk (bokmål)'''. --[[User:Sinopeus|Sinopeus]] 10:10, 24 April 2008 (UTC)
::Τα γνωρίζω ήδη. Ich bin wikisüchtig seit 5 jahre. Ευχαριστώ. --[[User:Asteraki|Asteraki]] 14:39, 24 April 2008 (UTC)
:::Oh, OK. Sorry. Εγώ δεν τα είχα προσέξει ποτέ. :-) --[[User:Sinopeus|Sinopeus]] 22:56, 24 April 2008 (UTC)
Ο Κώστας με παρακάλεσε να γράψω κι εγώ την τελική μου άποψη πάνω στο θέμα. Λοιπόν: Εφόσον δεχτούν από το LangCom (αυτοί νομίζω εγκρίνουν ή και όχι) διπλή ονομασία του είδους «ρωμαίικα (ποντιακά)» ή το αντίστροφο, υποστιρίζω αυτήν. Εάν θα πρέπει τελικά να διαλέξουμε ''μια'' ονομασία, υποστηρίζω το «ποντιακά». Κώστα (εσύ που ζεις και στην Ελλάδα), ίσως θα μπορούσαμε να ρωτήσουμε κανέναν ειδικό (καθηγητής πανεπιστημίου κλπ). Ξέρεις καμιά διεύθυνση στην οποία θα μπουρούσαμε να απευθυνθούμε; --[[User:Sinopeus|Sinopeus]] 11:47, 29 April 2008 (UTC)
:Διαφωνώ κάθετα με την οποιαδήποτε διπλή ονομασία. Μια διπλή ονομασία, οποιασδήποτε μορφής, θα είναι μια άστοχη ενέργεια, που εκτός των άλλων θα μας χαλάει την καλή εικόνα που θέλουμε να παρουσιάσουμε και να στείλουμε προς τα έξω (εννοώ στην κοινότητα της Βίκι, στην κοινή γνώμη κ.ο.κ.) με την δημιουργία του εγχειρήματος της Ποντιακής Βίκι, για τους εξής απλούστατους λόγους, τ΄ότι θα είναι κακοαισθητική, αφού δεν θα χτυπάει και τόσο καλά στο μάτι, αλλά και θα δείχνει, ότι είμαστε ως ένα βαθμό μεν, ανοργάνοτοι και πολύ περισσότερο δε, μπερδεμένοι, ότι δηλ. δεν θα ξέρουμε, τι ακριβώς θέλουμε να κάνουμε...
:Που μπορεί να έχει αρνητικές συνέπειες και μελλοντικά ίσως να οδηγήσει και σε μια απαξίωση του όλου εγχειρήματος. Πρέπει να το δούμε σφαιρικά, ψυχρά και ρεαλιστικά και μακριά απο ρομαντισμούς, γιατι αλλιώς δεν θα επιτύχουμε τον κοινό σκοπό μας.
*Το «ποντιακά» είναι η παγκοσμίως αναγνωρισμένη ονομασία, απο πόντιους (με μια μικροεξαίρεση, αυτούς που κατοικούν στα κράτη της πρώην ΕΣΣΔ και στα εδάφη της σημερινής Β.Τουρκίας), μη πόντιους και τρίτους, όπως π.χ. τα διεθνή φόρα και οργανισμούς.
*Το «τα Pωμαίικα τη Πόντονος» σαν συμπληρωματικό κάτω απο το <<Η Βικιπαίδεια σα Ποντιακά>> θεωρώ ότι είναι καλύτερο και υπεραρκετό ως αναφορά στην αρχική σελίδα. --[[User:Asteraki|Asteraki]] 21:45, 29 April 2008 (UTC)
Λοιπόν, για αυτό το θέμα θα ξανά επαναλάβω ότι οι θέσεις μου ταυτίζονται με αυτές του Sinopeus πιστεύω στην διπλή ονομασία όσο αναφορά το interwiki. Αυτή είναι η θέση μου, και σε αυτήν βλέπω πολλά θετικά πχ ότι θα είναι μια οικουμενική προσπάθεια για όλους τους Πόντιους είτε τα λένε ποντιακά ή Ρωμαίικα, μ' αυτόν τον τρόπο θα τα αναγνωρίζουν με τη μία και θα τα νιώθουν πιο κοντά τους έστω και να είναι ένα εκατομμύριο (Ρωσία-Τουρκία και δεν νομίζω ότι είναι λίγοι). Ένα άλλο ζενίθ είναι ότι το ρωμαίικα προσδιορίζει τα ποντιακά δηλαδή όταν το ακούει κάποιος θα του έρχεται απευθείας στο μυαλό η ύπαρξή μιας ελληνογενής γλώσσα σε μια συγκεκριμένη περιοχή πχ. του Πόντου. Επίσης αν μου επιτρέπεται θα ήθελα να τροποποιήσω την πρόταση μου δηλαδή να αφαιρέσω την παρένθεση '''Ρωμαίικα (Ποντιακά)''' και να μείνει σκέτο '''Ρωμαίικα Ποντιακά''' (Ελληνικά Ποντιακά) δείτε [[:w:Pontic Greek|Pontic Greek]] ,δηλαδή με την παρένθεση αφήνει να ενοοιθή κάτι, ενώ χωρίς αυτή κάτι πιο ξεκάθαρο. Και επίσης να αναφέρω ότι εφαρμόζεται αυτή η πολιτική δείτε την βίκι '''Bahasa Indonesia'''. Οστόσο συζητώ λίγο ακόμη. --[[User:Consta|Consta]] 18:02, 30 April 2008 (UTC)
== Προσωρινός διαχειριστής ==
Παίδες, βλέποντας την ανάπτυξη του project τις τελευταίες εβδομάδες, σκέφτομαι (κατόπιν πρότασης του Consta) να κάνω την αίτηση για test-adminship. Περάσαμε άνετα τα 50 άρθρα και αρκετά πλέον δεν είναι μονάχα άρθρα μιας σειράς. Κύριο κίνητρο μου για την αίτηση είναι να μπορώ να σβήνω ο ίδιος λανθασμένα redirects (έχω κάνει αρκετά στο παρελθόν ;-). Βανδαλισμό μέχρι στιγμής ευτυχώς δεν είχαμε. Η αίτηση αυτή όμως έχει μόνο νόημα εάν συνεχίσουμε τις συνεισφορές μας εδώ (ας είναι λίγες, αλλά ''τακτικές''), και αναπτύξουμε το project. Εάν ο μόνος χρήστης με παραπάνω από 10 edits το μήνα παραμείνω [http://tools.wikimedia.de/~pathoschild/ls-testanalysis/?prefix=wp/pnt#list_editors εγώ] (τον Απρίλιο θα είναι ευτυχώς και ο Consta, ίσως και το Αστεράκι με λίγα edits ακόμα), δεν έχει νόημα. Δώστε λοιπόν τα ΟΚ σας και άντε να δούμε τι θα γίνει. ;-) --[[User:Sinopeus|Sinopeus]] 23:01, 22 April 2008 (UTC)
:Συμφωνώ. '''ΟΚ'''. --[[User:Asteraki|Asteraki]] 23:57, 22 April 2008 (UTC)
:Συμφωνώ. '''ΟΚ'''. --[[User:Consta|Consta]] 10:20, 23 April 2008 (UTC)
::[[Incubator:Administrators#Requests for permissions|Έκανα την αίτηση]]. Αν κατάλαβα σωστά, δεν χρειάζεται να ψηφίσετε. Απλά δίνεται για πέντε μέρες η ευκαιρία σε όποιον δει λόγο να προβάλλει αντιρρήσεις. Μετά η αίτηση εγκρίνεται (ή και όχι :-). --[[User:Sinopeus|Sinopeus]] 23:44, 23 April 2008 (UTC)
Εμφανίστηκε στα κουμπάκια μου ένα καινούριο: το «σβήσον». --[[User:Sinopeus|Sinopeus]] 16:35, 28 April 2008 (UTC)
Στις αρχές Δεκέμβρη, ύστερα από παρότρυνση του ZaDiak και λόγω τ΄ότι δε μπορούσα να επικοινωνήσω με τον [[User:Sinopeus|Σινωπέα]] που εκείνο το
διάστημα ήταν ανενεργός, έθεσα επίσης υποψηφιότητα για test-adminship. Η υποψηφιότητα εγκρίθηκε και από τις 8 Δεκέμβρη είμαι
επίσης [[Special:ListUsers/test-sysop|προσωρινός διαχειριστής]] της δοκιμαστικής Ποντιακής Βικιπαίδειας. ;) --[[User:Makedonier|Μακεδόνας]] 12:31, 28 December 2008 (UTC)
== Αρχικον σελίδα ==
[[Wp/pnt|Είδ' ατεν]]. Χαίρομαι ιδιέτερα που έχουμε ομοφονία ('''Η Βικιπαίδεια σα <big>Ποντιακά</big>''' - «'''τα Pωμαίικα τη Πόντονος'''»). Ξέρετε ([[User:Sinopeus|Ηλία]] και [[User:Consta|Κωνσταντίνε]]), υπάρχει ένα παλαιό ρητό που λέει πως "Η ενότητα εκφράζεται με ομοφονία"...
Αυτό τα λέει όλα..., γιατι δείχνει ότι ξέρουμε πιοι είμαστε και τι θέλουμε.
'''@Συνάντηση'''
*Αν γίνεται και μπορείτε και οι δυο σας, να είστε σήμερα στην αγορά, στις 17:00 η ώρα Ελλάδος (16:00 η ώρα Γερμανίας) ή αν δεν μπορείτε και δεν σας βολεύει χρονικά, τότε σας παρακαλώ να προτείνετε εσεις δυο άλλες ημερομηνίες (το συντομότερο, λ.χ. αύριο), για κοινή και ταυτόχρονη συνάντηση μας στην αγορά. Καλημέρα σας. --[[User:Asteraki|Asteraki]] 03:34, 24 April 2008 (UTC)
:Θα προσπαθήσω να είμαι εδώ. --[[User:Sinopeus|Sinopeus]] 07:09, 24 April 2008 (UTC)
:ΥΓ: Αστερακι μετακίνησα το ''@Διεθνή ονομασία'' κάτω από τον τίτλο ''Ποντέικα'', όπου ήδη υπάρχει συζήτηση για την ονομασία. Απλά για να μην μπερδευόμαστε στις συζητήσεις μας. :-)
Εγώ μπορώ να είμαι μέσα στο IRC, μπορώ όμως και νωρίτερα όπως 15:20 ώρα Ελλάδος.
Υ.Γ. Για την επίσημη εξωτερική μας ονομασία έχω κάποιες αμφιβολίες βλέπετε οι 500.000 ποντιόφωνοι της Ρωσίας τα λένε Ρωμαίικα και όλο το ανατολικό μπλοκ και αλλού. --[[User:Consta|Consta]] 12:15, 24 April 2008 (UTC)
ΟΚ--[[User:Consta|Consta]] 14:34, 24 April 2008 (UTC)
Ελάτε είμαι μέσα στην αγορά (ώρα Ελλάδος 17:05) --[[User:Consta|Consta]] 14:06, 24 April 2008 (UTC)
Γειά σας κύριοι. Εγώ δεν μπορώ να είμαι μέσα στο IRC, έχω Mozzila Firefox και δεν το ανοίγει. Γι' αυτό και προτείνω να μπούμε σ' αυτήν [http://chat.icq.com/icqchat/chatroom.php?c_id=36 εδώ] τη σελίδα. Και να δηλωθούμε με το όνομα μας απο τη βικιπαιδία, όπως λεγόμαστε..., λ.χ. Sinopeus, Consta, Asteraki. Και μετά να μπούμε στο Chat Room, με την ονομασία #Greece. Τι λέτε; --[[User:Asteraki|Asteraki]] 14:12, 24 April 2008 (UTC)
== Καλό Πάσχα ==
Χριστός Ανέστη και Χρόνια Πολλά σε σας και τις οικογένειες σας κ. [[User:Sinopeus|Ηλία]] και κ. [[User:Consta|Κωνσταντίνε]]. Χερετισμούς Άκης. --[[User:Asteraki|Asteraki]] 09:22, 27 April 2008 (UTC)
Άκη, ευχαριστώ. Χρηστός ανέστη και χρόνια πολλά σε όλους σας. Καλά να ειστουν ούλ. --[[User:Sinopeus|Sinopeus]] 10:40, 28 April 2008 (UTC)
Ευχαριστώ και εγώ. Χρηστός ανέστη και χρόνια πολλά σε όλους σας.--[[User:Consta|Consta]] 11:37, 28 April 2008 (UTC)
== Ημερολόγιο ==
Έρθεν ο καιρόν να εφτάμε και '''τα ημέρας''': Φίλοι, έκανα ένα πρώτο σχέδιο για τα άρθρα ημερών (εισαγωγικό κείμενο, τίτλοι τμημάτων κλπ). Ρίξτε το μια ματιά και πέστε τις απόψεις σας στην σελίδα συζήτησης της συγκεκριμένης μέρας ([[14 Σταυρί|14 τη Σταυρίτε]]). Προτάσεις για αλλαγές είναι (όπως πάντα) ευπρόσδεκτες. --[[User:Sinopeus|Sinopeus]] 12:01, 30 April 2008 (UTC).
== Σημαία λογότυπο ==
Πήρα μέρος σε διάφορα [http://www.osepe.de/ πανευρωπαϊκά ποντιακά φεστιβάλ] και ποτέ δεν συνάντησα την σημαία του Αυτόνοµου Πόντου: [[Image:Flag of Pontus (2).svg|30px]] (η Ελλάδα την αναγνώρισε ποτέ επίσημα;). Οι ποντιακοί συλλόγοι έχουν συνήθως (εφόσον έχουμε ανάγκη σύμβολα και σημαίες) λάβαρα με παραλλαγές του αυτοκρατορικού δικέφαλου αετού, σε [http://www.oraman.eu/web/images/stories/enimeronoyme/genoktonia1.jpg μορφή µονοκέφαλου], βλέπε και [http://img.blogcu.com/uploads/besik_Pontos4-1.jpg εδώ] (στο βάθος). Αφού λοιπόν δεν την χρησιμοποιούν οι ποντιακής καταγωγής χριστιανοί Έλληνες, εμείς γιατί να την κάνουμε λογότυπό τη Βικιπαίδειας εμούν; Να τονίσω επίσης ότι κατά την ταπεινή μου άποψη δεν χρειζόμαστε σημαίες, αλλά άρθρα. ;-) --[[User:Sinopeus|Sinopeus]] 12:48, 23 May 2008 (UTC).
Καταρχήν χαιρετίσματα έχουμε πολύ καρό να τα πούμε (βλέπεις έχουμε και εξετάσεις σε λίγο καιρό στο πανεπιστήμιο). Ναι πράγματι από όσο γνωρίζω αυτή η σημαία υπήρχε (από κάποια ντοκουμέντα που υπάρχουν και σαν φωτογραφία ασπρόμαυρη). Εγώ πήρα την έγχρωμη από [http://clubs.pathfinder.gr/kynaigeiros2/295161?zoom=13&album=96882 εδώ]. Επίσης γνωρίζω πως αυτή η σημαία ήταν σε χρήση κάποτε γύρο στο 1917-1919 (μικρό διάστημα) σίγουρα δεν είναι αναγνωρισμένη από την Ελλάδα, μετά την αποχώρηση τον ρώσικων στρατευμάτων και την παραχώρηση της εξουσίας σε έναν μητροπολίτη (μου διαφεύγει το όνομα). Τώρα τι να σου πω, για τα ποντιακά σωματεία υπάρχουν πολλά με διάφορες παραλλαγές του δικέφαλου αετού κρατούν την βασική ιδέα που δεν αμφισβητήται στην σημαία δηλαδή ο δικέφαλος ή μονοκέφαλος αετός ανάλογα με τον τόπο καταγωγής του πόντου, και τα υπόλοιπα κόκκινα κίτρινα γαλάζια φόντα είναι αυτοσχεδιασμοί, και σχηματικά λέω ότι από κάποιες ποντιακές ρίζες που έχω εγώ αύριο-μεθαύριο μπορεί να έφτιαχνα ένα δικό μου ποντιακό σωματείο και εκεί θα αυτοσχεδίαζα εγώ μια δικιά μου σημαία. Καταλήγω ότι για μένα εδώ η χρήση μιας οποιαδήποτε σημαίας είναι καθαρά συμβολική αν θες φτιάξε και συ μια δικιά σου σημαία και ανέβασε την για να συζητήσουμε πάνω σε αυτήν. Πάντως αυτή είναι η επίσημη σημαία του τότε νεοσύστατου κράτους (3-4 χρόνια), και προτείνω και για συναισθηματικούς λόγους να την κρατήσουμε αν συμφωνείς. Επίσης όσον αναφορά την ευρύτερη χρήση της σημαίας στην βικιπαίδεια δες πχ την γκαγκαούζικη βικιπαίδεια [http://incubator.wikimedia.org/wiki/Wp/gag εδώ] δες και στην σελίδα χρήστη μου πόσες άλλες βικιπαίδειες με σημαίες υπάρχουν, και φυσικά προέχει η δημιουργία άρθρων όμως χρειαζόμαστε ένα έμβλημα, ένα θυρεό να μας στολίζει τουλάχιστον εθιμοτυπικά, δεν επιθυμώ να έχουμε τα ίδια προβλήματα που είχαμε στο να πάρουμε μια απόφαση για το όνομα. Ο Αστεράκι τι κάνει δεν τον είδα να εμφανίζεται καθόλου; --[[User:Consta|Consta]] 14:47, 27 May 2008 (UTC)
:Πράγματι, ψιλοχαθήκαμε φίλε Κώστα. ;-) Τι να πω ρε παιδιά. Αφού θέλετε σημαία ας την έχετε. Κάτι μου λεει ότι και στο Αστεράκι θα αρέσει η πρότασή σου (όπου και να βρίσκεται αυτή τη στιγμή). ;-) Σε καμία περίπτωση όμως να αυτοσχεδιάσουμε δική μας σημαία! Να χρησιμοποιήσουμε κάτι που πραγματικά υπήρξε! Αφού λοιπόν η σημαία του Αυτόνομου Πόντου είναι ιστορική και χρησιμοποιήθηκε το 1917-1919 που λες, εντάξει. Προσωπικά θα προτιμούσα κάτι που χρησιμοποιήθηκε για περισσότερο χρόνο (εφόσον φυσικά υπάρχει κάτι τέτοιο). Το αφήνουμε όπως είναι και αν κάποτε κανείς ανοίξει ξανά το θέμα και κάνει νέα πρόταση, το ξανασυζητάμε. Καλή επιτυχία στις εξετάσεις σου. :-) --[[User:Sinopeus|Sinopeus]] 06:16, 28 May 2008 (UTC)
Σε ευχαριστώ πολύ τα λέμε! --[[User:Consta|Consta]] 10:31, 28 May 2008 (UTC)
== Λεχτικόν για τα καινούρεα ==
Οσήμερον εποίκα γράψιμον για την [[BMW Isetta|BMW Isetta]]. :-) Σ' αήκα άρθρα χρειάσκουνταν και λέξεις ντο 'κ έχομε σα ρωμαίικα τη παλαιώνεμουν. Ντο εν η BMW Isetta?
*αραπάν; (ποντιακόν λέξη = κάρο, όχημα)
*αυτοκίνητον; (ελλενικόν λέξη)
*οτομομπίλι; (διεθνικόν λέξη ντ' εξέβεν ασ' ελλενικά και λατινικά και λέει ατέν όλεν ο κόσμον)
Ογώ «αραπάν» είπατεναν, άμα εθαρρώ ντ' επρέπ' ν' εφτάμε έναν σελίδαν [[Βικιπαίδεια:Νέον Λεχτικόν]], άμον ντ' εποίκαν σ' αρχαίον τη Βικιπαίδειαν ([[:incubator:Wp/grc/Βικιπαιδεία:Ἀγορά/Λόγιοι Ἑλληνικοὶ ὅροι περὶ συγχρόνων ἐννοιῶν|Ἀρχαῖοι Ἑλληνικοὶ ὅροι περὶ συγχρόνων ἐννοιῶν]]). Ντό λέτε; --[[User:Sinopeus|Sinopeus]] 13:46, 16 September 2008 (UTC)
:Ουσιαστικά δεν είμαι μέρος της κοινότητας αλλά αν θα θέλατε, θέλω να πω τη γνώμη μου. Προτείνω να γίνει αυτή η σελίδα που λες, αλλά αφού δημιουργηθεί η ΒΠ θα ήταν μια πολυ καλή λύση να επιδιώξετε να δημιουργήσετε κι ένα Βικιλεξικό (με τον καιρό με λίγη δουλειά που και που πρώτον στο test project και δεύτερον στο Betawiki).--[[User:ZaDiak|ZaDiak]] 14:06, 16 September 2008 (UTC)
== Ντο λέγνε σα σα μπλόγκαι ==
Ερχίνεσαν και γράφνε για την Βικιπαίδειανεμουν. :-)
*[http://taxalia.blogspot.com/2008/09/wikipedia.html]
*[http://troktiko.blogspot.com/2008/09/blog-post_2792.html]
*[http://eptalofos.madblog.gr/note/3836/Η-ΒΙΚΙΠΑΙΔΕΙΑ-ΣΑ-ΠΟΝΤΙΑΚΑ.html]
--[[User:Sinopeus|Sinopeus]] 11:22, 18 September 2008 (UTC)
[[Category:wp/pnt|Βικιπαίδεια/Αγορά]]
Μιά πρόταση στούς συντάκτες.Πρέπει να βρεθεί ενας τρόπος να αποδοθεί ορθογραφικά η δασύτητα ορισμένων συμφώνων οπως του χ στη λέξη "χέρ'" ή του σ στι λέξη "πισία",για να μην χαθεί με τον καιρό ο αρχαιότατος αυτός τρόπος προφοράς.Προτείνω να μπαιίνει ενας τόνος στο αντίστοιχο σύμφωνο π.χ. "χ'έρ"
Κατά τα άλλα ενα μεγάλο μπράβο!
Λουκίδης Αλέξης
Μιά πρόταση στούς συντάκτες.Πρέπει να βρεθεί ενας τρόπος να αποδοθεί ορθογραφικά η δασύτητα ορισμένων συμφώνων οπως του χ στη λέξη "χέρ'" ή του σ στι λέξη "πισία",για να μην χαθεί με τον καιρό ο αρχαιότατος αυτός τρόπος προφοράς.Προτείνω να μπαιίνει ενας τόνος στο αντίστοιχο σύμφωνο π.χ. "χ'έρ"
Κατά τα άλλα ενα μεγάλο μπράβο!
Λουκίδης Αλέξης
== Μιά πρόταση ==
Μιά πρόταση στούς συντάκτες.Πρέπει να βρεθεί ενας τρόπος να αποδοθεί ορθογραφικά η δασύτητα ορισμένων συμφώνων οπως του χ στη λέξη "χέρ'" ή του σ στι λέξη "πισία",για να μην χαθεί με τον καιρό ο αρχαιότατος αυτός τρόπος προφοράς.Προτείνω να μπαιίνει ενας τόνος στο αντίστοιχο σύμφωνο π.χ. "χ'έρ"
Κατά τα άλλα ενα μεγάλο μπράβο! {{unsigned|Alexiosgreek}}
:Αλέξιε, καλώς έρθες σην Βικιπαίδιανεμουν! :-) Κατά την άποψη μου έχεις απόλυτο δίκιο. Η ιδέα με τους τόνους είναι καλή, ίσως όμως μπερδέψει ο αναγώστης τον τόνο αυτό με την απόστροφο, που χρησιμοποιείται επίσης αρκετά συχνά στα ποντιακά. Ο Τοπχαράς δημιούργησε το 1928 για τον λόγο αυτό το φωνητικό αλφάβητο (βλ. [[Ποντιακόν λαλίαν#Αλφάβητον]]). Το χέρι για παράδειγμα το έγραφε ςςερι. Παντώς πρέπει να βρεθεί μια λύση για την σωστή απόδωση της ποντιακής, το αλφάβητο που χρησιμοποιούμε για την νεοελληνική δεν καλύπτει διάφορα φωνήματα της ποντιακής, όπως πολύ σωστά παρατήρησες. Ας συζητήσουμε (όλοι) διάφορα «μοντέλα» και να συμφωνήσουμε σε ένα, το οποίο θα ακολουθούμε στο εξής.<br>
:Κάτι άλλο: Σε παρακαλώ να υπογράφεις τα μηνύματά σου γράφοντας ~~~~ ή πατώντας το κουμπί της υπογραφής ([[Image:Button sig.png]]) για να ξέρουμε ποιός γράφει. :-) Φιλικά, --[[User:Sinopeus|Sinopeus]] 15:29, 13 December 2008 (UTC)
:ΥΓ: Η τροποποίηση του αλφάβητου σε βικιπαίδεια διαλέκτου είναι πλέον συνηθισμένο φαινόμενο. Στην [[w:bar:Hauptseitn|βαυαρική βικιπαίδεια]] πχ χρησιμοποιούνται γράμματα που δεν υπάρχουν στην γερμανική γλώσσα (πχ å, ô, é, à). Οι χρήστες της συμφώνησαν και κατέγραψαν διάφορους κανόνες της «ορθογραφίας» της [[w:bar:Wikipedia:Boarische Umschrift|εδώ]]. Κάτι τέτοιο προτείνω να κάνουμε ενδεχομένως κι εμείς. --[[User:Sinopeus|Sinopeus]] 16:40, 13 December 2008 (UTC)
Έγραψα ένα αρθράκι για τα πισία χρησιμοποιώντας το τελικό ς ως sh (IPA [ʃ]). Προτείνω [[πιςία|πιςία]] ή πιςςία. Ντο λέτε; --[[User:Sinopeus|Sinopeus]] 15:50, 14 December 2008 (UTC)
:: [[Image:Yes_check.svg|20px| ]] {{{1|'''Αραέτς ντο επίκες, εν καλλίον ασό άλλον'''}}}. :-) --[[User:Makedonier|Μακεδόνας]] 14:00, 26 December 2008 (UTC)
Ερχίνεσα και γράφω έναν «οδηγίαν» για το ζήτημαν (τερέστεν: [[Βικιπαίδεια:Ποντιακόν γράψιμον|Βικιπαίδεια:ποντιακόν γράψιμον]]). Σο [[Talk:Βικιπαίδεια:Ποντιακόν γράψιμον|καλάτςεμαν τη οδηγίας]] επορούμε να λέγουμε ούλ' ντο νουνίζομε απάν σο θέμαν και ν'αλλάζουμ'ατέναν για να ίνεται η «οδηγίαν» κι άλλο καλόν. 'Κ επρέπ ο καθαείς να γράφ' άμον ντο λέει εκαικά. 'Κ εν νόμος, έναν βοήθειαν εν και μόνον. --[[User:Sinopeus|Sinopeus]] 23:43, 12 January 2009 (UTC)
:Καιρός ήταν να ξεκινήσει μια προσπάθεια για “κανονικοποίηση” :) Την έχει ανάγκη το project τώρα που προβλέπεται να αποκτήσει νέους συμβάλλοντες γεμάτους απορίες για το ποιο σύστημα γραφἠς θα'ταν καλό να ακολουθείται για λόγους συνέπειας. Έχω ήδη κάποιες ιδέες που σύντομα θα καταθέσω ''ση σελίδαν καλατςεματί τη οδηγίας''. Για την διευκόλυνση μάλιστα των μη φυσικών ομιλητών (εμού συμπεριλαμβανομένου) θα πρέπει να δημιουργηθούν άρθρα που καλύπτουν σημαντικά κομμάτια της ποντιακής γραμματικής όπως τα επίθετα και τα ρήματα. Και τέλος για ακόμη μεγαλύτερη πληρότητα, ''εάν'' κατασταλάξουμε σε μια ορθογραφία, σκέφτομαι να αρχίσω δοκιμαστικά να προσθέτω ποντιακά λήμματα στο αγγλικό Βικιλεξικό, με ετυμολογίες, σημασίες και πλήρεις πίνακες καταλήξεων, έτσι ώστε να γίνει ακόμη πιο εύκολη η πρόσβαση του όποιου ενδιαφερόμενου σε τέτοιου είδους δεδομένα. <br>--[[User:Omnipaedista|Omnipaedista]] 12:00, 13 January 2009 (UTC)
:Χμ.. και μάλλον πρέπει να γίνουν και αλλαγές στην localisation σε περίπτωση που δε συμφωνεί με τη νέα ορθογραφία. --[[User:Omnipaedista|Omnipaedista]] 12:09, 13 January 2009 (UTC)
::Όταν συμφωνίσουμε σε έναν τύπο, να γίνουν. Εγώ στην συγκεκριμένη σελίδα κάνω απλά προτάσεις και δεν ξέρω αν όλοι τις δεχτούν. Σημαντικό κατά τη γνώμη μου είναι να χρησιμοποιούμε γράμματα που ο κάθε χρήστης εύκολα μπορεί να βρει και να γράψει, να υπάρχουν δηλαδή στην ελληνική γραμματοσειρά (όπως πχ το ς/ςς για το φώνημα [ʃ]). Οι αλλαγές στην localisation γίνονται και εκ των υστέρων ή πρέπει να γίνουν οποσδήποτε πριν την δημιουργία της pnt.wiki; --[[User:Sinopeus|Sinopeus]] 12:26, 13 January 2009 (UTC)
:::Δεν υπάρχει καμιά βιασύνη σε αυτό. Τα μηνύματα της interface (διεπαφής) είναι κατά μία έννοια ανεξάρτητα από το project και οι αλλαγές σε αυτά μπορούν να γίνουν οποτεδήποτε. Άλλος είναι ο λόγος για τον οποίο θα'ταν γενικά καλό να συμφωνήσουμε σε κάποια σύμβαση (''οποιαδήποτε'' και αν είναι αυτή). Στο αρχαίο wiki, πχ, δεν είχαν διευκρινιστεί εξαρχής κάποιες λεπτομέρειες του ορθογραφικού συστήματος και όταν τελικά καταλήξαμε κάπου, αφού είχαν δημιουργηθεί δεκάδες άρθρα, ήταν χρονοβόρο (και λίγο επίπονο) να γίνουν όλες οι προσαρμογές εκ των υστέρων. Αν υπάρξει συντονισμός, κάτι παρόμοιο θα μπορούσε να αποφευχθεί εδώ. --[[User:Omnipaedista|Omnipaedista]] 12:54, 13 January 2009 (UTC)
::::[[Talk:Βικιπαίδεια:Ποντιακόν γράψιμον|Δημοσίευσα]] τις προτάσεις μου. Όποιος θέλει σχολιάζει! --[[User:Omnipaedista|Omnipaedista]] 11:25, 16 January 2009 (UTC)
6k3mtegcp2bkmvx5ykkzpnhkzuuo0uo
Ισαάκ Νιούτον
0
1115
37410
35594
2025-12-30T22:15:03Z
Таёжный лес
10003
37410
wikitext
text/x-wiki
[[Αρχείον:GodfreyKneller-IsaacNewton-1689.jpg|right|200px|thumb|Ισαάκ Νιούτον]]
Ο '''Ισαάκ Νιούτον''' (4 Καλανταρί 1643 – 31 Μαρτί 1727) έτον φυσικόν ασήν Αγγλίαν. Θεωρούν ατό πολλοί έναν τσιπ τρανόν ασ' άνθρωπ'ς.
== Συνδέσμε ==
* [[Αρχείον:Wikiquote-logo.svg|link=https://el.wikiquote.org/wiki/Ισαάκ_Νεύτων?uselang=pnt|16x16px]] Βικιφθέγματα: [https://el.wikiquote.org/wiki/Ισαάκ_Νεύτων?uselang=pnt '''''Ισαάκ Νεύτων''''']
* [[Αρχείον:Commons-logo.svg|link=https://commons.wikimedia.org/wiki/Category:Isaac_Newton?uselang=pnt|18x18px]] Σα [[c:Αρχική σελίδα|Κοινά]] εσ υλικόν σχετικόν με [https://commons.wikimedia.org/wiki/Category:Isaac_Newton?uselang=pnt '''''Ισαάκ Νεύτων''''']
{{authority control}}
[[Κατηγορίαν:Φυσικήν]]
4b5yzef7ef5o9djophoj7cebmb4mucn
Κύπρος
0
1118
36316
36315
2025-09-04T20:13:34Z
Xristis963
11827
Αναίρεση αναθεώρησης [[Special:Diff/36315|36315]] από τον [[Special:Contributions/Unknow240|Unknow240]] ([[User talk:Unknow240|Συζήτηση]])
36316
wikitext
text/x-wiki
{{Πληροφορίας χώρας|
|εθνικόν_όνεμαν= Κυπριακή Δημοκρατία <br />Kıbrıs Cumhuriyeti<br>
|εθνικόν όνεμαν σα ποντιακά = Κυπριακή Δημοκρατία
|κοινόν_όνεμαν= Κύπρος
|σημαία = Flag of Cyprus.svg
|σύμβολον = Coat of arms of Cyprus (old).svg
|άρθρον συμβολατί = Σύμβολον τη Κύπρου
|χάρτες= EU-Cyprus.svg
|εθνικόν_σύνθημαν= Δεν Ξεχνώ και Αγωνίζομαι
|εθνικόν_ύμνος= [[Ύμνος εις την ελευθερίαν|{{polytonic|Ὕμνος εἰς τὴν Ἐλευθερίαν}}]]
|επίσημα_γλώσσας= [[Ελλενικόν λαλίαν|Ελλενικόν]], [[Τουρκικόν λαλίαν|Τουρκικόν]]
|πρωτεύουσα και ασ' όλον τρανόν πολιτεία = [[Λευκωσίαν]]
|πολίτευμαν= [[Προεδρικόν Δημοκρατία]]
|τίτλοι_τ' ηγετίων = [[Πρόεδρον τη Δημοκρατίας|Πρόεδρον]]
|ονόματα_τ' ηγετίων = [[Νίκος Αναστασιάδης]]
|θέση_έκτασης= 167
|έκταση= 9.251
|ποσοστόν_νερού= Αμελητέον
|εκτίμηση_πληθυσμού= 801.622<ref>{{cite web|url=http://epp.eurostat.ec.europa.eu/tgm/table.do?tab=table&language=en&pcode=tps00001&tableSelection=1&footnotes=yes&labeling=labels&plugin=1|title=Total population - At 1 January|publisher=Eurostat|accessdate=06-04-2009}}</ref>
|χρονία_εκτίμησης_πληθυσμού= 2009
|πληθυσμός= 800.000
|θέση_πληθυσμού= 157
|χρονία_απογραφής_πληθυσμού= 2005
|πυκνότητα_πληθυσμού= 86,6
|θέση_πυκνότητας_πληθυσμού= 110
|τύπος_κυριαρχίας= [[Ανεξαρτησία]]
|γεγονός_κυριαρχίας= - Κηρύχθηκε<br /> - Αναγνωρίστηκε<br />
|ημερομηνίες_κυριαρχίας= [[16 Αλωναρί]] [[1960]]
|παράδας = [[Ευρώ]]
|κωδικός_παράδων = € EUR
|ώρα_ζώνες=
|διαφορά_UTC= +2
|θερινόν_UTC=
|θερινόν_διαφορά_UTC= +3
|top_level_domain= .cy
|κωδικός_τηλεφωνατί= 357
|σημειώσεις=
}}
Η '''Κύπρος''' εν νησιωτικόν κράτος τη Ανατολικού Μεσογείου. Ές (με τα εκτιμήσεις τη 2024) '''1,358,282''' ανθρώπς.
Η Κύπρος απέμνει διχοτομημένη ας σο τουρκικόν αούρισμαν 'τ' 1974. Το βόρειον μέρος 'τ' νησίν ελέγχεται ας το αυτοονομαζόμενον «κρατόπον» τη Τουρκικής Δημοκρατίας τη Βόρειας Κύπρον, που αναγνωρίζεται μόνον ας ση [[Τουρκία|Τουρκίαν]]. Η Κυπριακή Δημοκρατίαν εξακολουθεί να είν' το διεθνώς αναγνωρισμένον κρατόπον και μέλος τη Ευρωπαϊκής Ένωσιν.
== Αναφοράντας ==
<references/>
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Κύπρος]]
[[Κατηγορίαν:Ευρώπη|Κύπρος]]
[[Κατηγορίαν:Κύπρος| ]]
ok3tu2js9g4767jflvn24bto2blkism
Πρότυπον:Coord/display/inline
10
1119
36455
10474
2025-12-15T16:34:16Z
Εὐθυμένης
2777
36455
wikitext
text/x-wiki
{{{1}}}<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
03logx76q4agn7teyivxc9uk7opmvig
Πρότυπον:Coord/input/dm
10
1120
36449
10475
2025-12-15T16:28:04Z
Εὐθυμένης
2777
36449
wikitext
text/x-wiki
<includeonly>{{Coord/link|dms-lat={{{1}}}°{{{2}}}′{{{3}}}|dms-long={{{4}}}°{{{5}}}′{{{6}}}|dec-lat={{coor dms2dec|{{{3}}}|{{{1}}}|{{{2}}}}}|dec-long={{coor dms2dec|{{{6}}}|{{{4}}}|{{{5}}}}}|param={{{1}}}_{{{2}}}_{{{3}}}_{{{4}}}_{{{5}}}_{{{6}}}_{{{7|}}}|default={{#if:{{{format|}}}|{{{format}}}|dms}}|name={{{name|}}}}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
s08z10a5l6wn7fd5kx07ndy9rvw4pkm
Πρότυπον:Coor/dms2dec
10
1122
10480
10478
2009-12-18T20:27:41Z
ZaDiak
10
[[Πρότυπον:Coor dms2dec]] ετερχλαεύτεν σο [[Πρότυπον:Coor/dms2dec]]
10480
wikitext
text/x-wiki
<includeonly>{{#expr:{{#switch:{{{1}}}|N|E=1|S|W=-1}}*({{{2|0}}}+({{{3|0}}}+{{{4|0}}}/60)/60) round {{{precdec|{{#if:{{{4|}}}|5|{{#if:{{{3|}}}|3|0}}}}+{{precision1|{{{4|{{{3|{{{2}}}}}}}}}}}}}}}}</includeonly>
2bg88e7no99lhojvwpo87nagn96ncd8
Πρότυπον:Συντεταγμένες URL
10
1123
36439
36438
2025-12-15T16:19:33Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπον:Coor URL]] στην [[Πρότυπον:Συντεταγμένες URL]]
36438
wikitext
text/x-wiki
https://tools.wmflabs.org/geohack/geohack.php?language=el&pagename={{FULLPAGENAMEE}}¶ms=<noinclude>
[[Κατηγορίαν:Πρότυπα συντεταγμένων|*]]
</noinclude>
2zzkaphbvnz8r9kpeoax3kwko0udh62
Πρότυπον:Coor dms2dec
10
1124
10481
2009-12-18T20:27:41Z
ZaDiak
10
[[Πρότυπον:Coor dms2dec]] ετερχλαεύτεν σο [[Πρότυπον:Coor/dms2dec]]
10481
wikitext
text/x-wiki
#REDIRECT [[Πρότυπον:Coor/dms2dec]]
m529djhwwi4j32zz3346ckxl5olxb23
Λευκωσίαν
0
1125
36790
34689
2025-12-16T09:13:14Z
Εὐθυμένης
2777
36790
wikitext
text/x-wiki
[[File:Nicosia 01-2017 img23 View from Shacolas Tower.jpg|thumb|Η Λευκωσίαν]]
Η '''Λευκωσίαν''' εν [[Κύπρος|κυπριακόν]] πολιτείαν. Εν η ασ' ουλτς τρανόν πολιτείαν και η πρωτεύουσα τη χώρας. Οσήμερον εχ' πληθυσμόν 224.500 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Κύπρος]]
[[Κατηγορίαν:Πολιτείας]]
7mny9gvzoz1ymoih87cn0igex4gvmx4
Κατηγορίαν:Κύπρος
14
1126
31320
30339
2013-03-07T21:35:59Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 117 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4367074]] [[M:User:Addbot/WDS|(translate me)]]
31320
wikitext
text/x-wiki
{{Commonscat|Cyprus}}
[[Κατηγορίαν:Κράτη|Κύπρος]]
[[Κατηγορίαν:Ευρώπη|Κύπρος]]
akelktv44oixcpis5ikzo3yb2jztmoq
Τζέιμς Κλερκ Μάξγουελ
0
1128
35586
35585
2024-01-25T08:59:23Z
Διογένες
10538
/* Συνδέσμε */Κοινά
35586
wikitext
text/x-wiki
[[Αρχείον:James Clerk Maxwell big.jpg|thumb|Τζέιμς Κλερκ Μάξγουελ το 1882]]
Ο '''Τζέιμς Κλερκ Μάξγουελ''' (αγγλ.: ''James Clerk Maxwell'', [[Εδιμβούργον]], [[13 Κερασινού]] [[1831]] - [[Καίμπριτζ]], [[5 Τρυγομηνά]] [[1879]]) έτον [[Σκωτίαν|Σκωτσέζον]] [[φυσικός]].
== Συνδέσμε ==
* [[Αρχείον:Commons-logo.svg|link=https://commons.wikimedia.org/wiki/Category:James_Clerk_Maxwell?uselang=pnt|19x19px]] Σα [[c:Αρχική σελίδα|Κοινά]] εσ υλικόν σχετικόν με [https://commons.wikimedia.org/wiki/Category:James_Clerk_Maxwell?uselang=pnt '''''Τζέιμς Κλερκ Μάξγουελ''''']
[[Κατηγορίαν:Φυσικήν]]
2fmsoetrxm3qarr1j1dxcnoyed1zuym
Ποντιακά Κάλαντα
0
1130
31625
26651
2013-04-15T03:42:31Z
Addbot
3509
31625
wikitext
text/x-wiki
Τα κάλαντα εν ευχητικά τραγωδίας ντο ψάλκουνταν κάθαν χρόνον, σα τρανά γιορτάς. Έχνε πολλά λοέν μορφάς (λ.χ. μωραΐτικα, κρητικά, κ.ου.κ.). Τα ποντιακά κάλαντα εν:
*[[Κάλαντα Πρωτοχρονίας]]
*[[Κάλαντα Χριστουγέννων]]
[[Κατηγορίαν:Θρησκείαν]]
ilypk2du0vpa72v0dmy74mqxog7ji35
Ποντιακοί χοροί
0
1131
34384
34383
2020-01-30T21:38:00Z
176.58.224.245
34384
wikitext
text/x-wiki
Οι Ποντιακοί χοροί εν πολλά γνωστοί σην [[Ελλάδα|Ελλάδαν]]. Οσημερον χορευνέ ατους οι Ποντιοι σον κοσμον. Σην Τουρκιαν πα χορευνε ατους. Horon λεγνε ατοιν, ασον ελλενικον λογον "χορος". Σην Βικιπαίδειαν ες λήμμαν για:
*[[Ανεφορίτσα]]
*[[Ατςαπάτ]]
*[[Κότσαρι]]
*[[Τρυγόνα]]
[[Κατηγορίαν:Χορός]]
1f7vpnhpzsfaapvq0b9cfcpiflllq0e
Κατηγορίαν:Φυτά
14
1133
10781
2010-01-01T00:55:49Z
ZaDiak
10
Καινούρεον σελίδαν με '[[Κατηγορίαν:Γεωγραφίαν]]'
10781
wikitext
text/x-wiki
[[Κατηγορίαν:Γεωγραφίαν]]
cwd56vepyg3pb11yq6x1kqr40v055xw
Κατηγορίαν:Μαυροβούνιον
14
1134
31592
29586
2013-04-13T08:09:49Z
KLBot2
3570
Bot: Migrating 112 interwiki links, now provided by [[Wikidata]] on [[:d:Q7235877]]
31592
wikitext
text/x-wiki
{{Commonscat|Montenegro}}
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Βαλκάνια]]
2c8aw9i3vskcv4jopemffa9s4f80kx8
Κατηγορίαν:Αρχαίον Ελληνικόν γραμματείαν
14
1135
10785
2010-01-01T00:59:28Z
ZaDiak
10
Καινούρεον σελίδαν με '[[Κατηγορίαν:Γλωσσολογίαν]]'
10785
wikitext
text/x-wiki
[[Κατηγορίαν:Γλωσσολογίαν]]
f7b1yc360isdi5d1o3qsic56vsnm8yv
Κατηγορίαν:Babel field
14
1137
10787
2010-01-01T01:01:47Z
ZaDiak
10
Καινούρεον σελίδαν με '[[Κατηγορίαν:Βαβέλ]]'
10787
wikitext
text/x-wiki
[[Κατηγορίαν:Βαβέλ]]
af487s67kicv88furv78hphgoirnzr7
Εμμανουηλίδης
0
1143
34485
34443
2020-04-08T05:46:53Z
Tulsi
5081
Cross-wiki abuse
10953
wikitext
text/x-wiki
Οι Μανουηλάντων εν τρανόν οικογένειαν. Ο Χρήστον ο δέσκαλον έτον δέσκαλος σην Λίτσασα τη Γαράσαρης. Εκεί σην εκκλησίαν ¨Αγιον Γεώργιον σην ανταλλαγήν, έγραψεν απές΄σον ναόν την υπογραφήν ατ΄. Οταν τα παιδία ατ΄εδέβαν σην Λίτσασαν εκλαψον άμον ντο είδαν την υπογραφήν του πατέρα ατουν. Σο χωρίον ατόν επήρε την ομορφέσσα Βασιλικήν, που εγενέθεν σην Νικόπολιν τη Γαράσαρης και έτον πολλά ευκατάστατος.
Ο Χρήστος και η Βασιλική έρθαν σο χωρίον Κύργια Δράμας και εποίκαν επτά παιδία. Πρώτος ο Γιωρίκας που εδέβεν σην Αμερικήν και έντονε καθηγητής Παιδιατρικής Καρδιολογίας σο Πανεπιστήμιο Καλιφόρνιας σο Λος Αντζελες. Ατός έτον και ακαδημαικός σην Αθήνα. Δεύτερος ο Γιάννες, έτον δικηγόρος σην Δράμαν και πρόεδρος του Δικηγορκού συλλόγου. Τρίτος ο Εμμανουήλ, έντονε δάσκαλος και επεκεί δικαστής και έφυγεν ως πρώτος Πόντιος αεροπαγίτης. Τέταρτος ο Νικόλαος, καθηγητής φιλόλογος, και λυκειάρχης, εδούλεψεν πολλά χρόνε σην Ιωνίδειον Σχολή Πειραιώς και σην Ευαγγελική Σχολή. Ο Ιωσήφ έντονε ιατρός ακτινολόγος σην Δράμα, και διευθυντής ακτινολογίας σην Δράμα. Ο έκτον ο Δημήτριος, έντονε μαθηματικός, εσπούδασε μεταπτυχιακά σην Αμερικήν, αλλά νέος αφήκεν τα εγκόσμια σε αυτοκινητιστικό δυστύχημα σίτα έρθεν σην Ελλάδα. Η τελευταία, Σοφία, το μόνον κορίτσ επήρε το όνομα της καλομάνας Σοφίας. Ατέ πολλα εξυπνέσσα έτον και εσπούδασεν αδά σο Πολυτεχνείον ως αρχιτέκτων. δέβε σην Γαλλίαν και επέρε μάστερ και εργάζεται σην Αθήνα.
Τα εφτά παιδία εποίκαν δεκαεφτά χάταλα, και μέχρι ατώρα, Καλανταρτσ 2010, τα παιδία ατουν εποίκαν άλλα δεκαοχτώ χάταλα.
qgtewjae94jsfvkhab6n7y3bbjrp2nv
Πρότυπον:Delete
10
1174
32491
31604
2015-08-04T22:08:13Z
YiFeiBot
4458
Ρομπότ: Μεταφέρω 1 σύνδεσμους interwiki, που τώρα παρέχονται από τα [[d:|Wikidata]] στο [[d:q4847311]]
32491
wikitext
text/x-wiki
{| style=" border: 1px solid #aa8888; background-color: #ffeeee;width: 85%;margin: 0 auto 1em auto; padding: .2em; text-align: justify; font-size: 80%;"
|-
| [[Image:Keeptidy ask.png|none|50px| ]]
|
<span style="font-size:110%">'''Η σελίδα αυτή είναι υποψήφια για γρήγορη διαγραφή. Η αιτία που δόθηκε είναι {{#if:{{{1|}}}|{{{1}}}|<big>Παρακαλώ συμπληρώστε τον λόγο για τον οποίο ζητάτε την διαγραφή της σελίδας</big> }}'''</span>
Αν διαφωνείτε για την διαγραφή της, εξηγήστε τους λόγους στην [[{{NAMESPACE}} talk:{{PAGENAME}}|σελίδα συζήτησής]] της. Αν πιστεύετε ότι μπορείτε να διορθώσετε την σελίδα ώστε να μην διαγραφεί μπορείτε να αφαιρέσετε αυτή την σημείωση, αλλά όχι αν έχετε δημιουργήσει την σελίδα ο ίδιος.
''[[Βικιβιβλία:Διαχειριστές|Διαχειριστές]] - Θυμηθείτε να ελέγξετε [[Special:Whatlinkshere/{{NAMESPACE}}:{{PAGENAME}}|αν κάτι οδηγεί εδώ]] και το [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|action=history}} ιστορικό της σελίδας] πριν τη διαγραφή.''
|}<includeonly>[[Κατηγορίαν:Σελίδες για γρήγορη διαγραφή]]</includeonly><noinclude><noinclude>
[[eo:Ŝablono:Forigu]]
</noinclude>
e4ehe1v5vs2m2d8bhxzpxfjfglsmvng
Κατηγορίαν:Ρουσία
14
1189
31323
29183
2013-03-07T21:36:32Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 197 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1411008]] [[M:User:Addbot/WDS|(translate me)]]
31323
wikitext
text/x-wiki
{{Commonscat|Russia}}
[[Κατηγορίαν:Κράτη]]
p8hmmsjhc5kdkxu6ekosuzcnvj63dfp
Eurovision
0
1211
35534
34956
2024-01-23T17:45:19Z
Διογένες
10538
Αρχείον, μικρογραφία
35534
wikitext
text/x-wiki
[[Αρχείον:Opening act 2, ESC 2011.jpg|μικρογραφία|Eurovision]]
Η '''Eurovision''' εν τρανόν διαγωνισμόν [[μουσική|μουσικής]].
[[Κατηγορίαν:Μουσική]]
k4v7g0qv6lfkjfw7o8b3qydg0yhwzyo
Βιγιένα
0
1218
36759
35427
2025-12-16T08:49:25Z
Εὐθυμένης
2777
36759
wikitext
text/x-wiki
[[Εικόναν:Castillo villena.JPG|thumb|280px|Κάστρο τη Βιγιένα.]]
Η '''Βιγιένα''' (ισπ. ''Villena'') εν [[Ισπανία|ισπανικόν]] πολιτείαν. Οσήμερον (2009) εχ' πληθυσμόν 35.222 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{es}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Βιγιενα}}
[[Κατηγορίαν:Ισπανία]]
[[Κατηγορίαν:Πολιτείας]]
53cg0j9mslb6tzkqeg6v0yxtklgaipl
Κατηγορίαν:Πολιτείας τη Τουρκίας
14
1219
13961
2010-05-28T12:52:03Z
Qoan
1170
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πολιτείας]] [[Κατηγορίαν:Τουρκία]]'
13961
wikitext
text/x-wiki
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Τουρκία]]
kunv1c7mxbzi6k0plwbmoccooyct0h0
Κατηγορίαν:Πολιτείας τ' Ελλάδας
14
1220
13970
2010-05-28T12:56:23Z
Qoan
1170
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πολιτείας]] [[Κατηγορίαν:Ελλάδα]]'
13970
wikitext
text/x-wiki
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ελλάδα]]
dgmdr1mkndamom8o4y3agjls6b11p5z
Πρότυπον:Commonscat
10
1223
36410
32492
2025-12-15T15:46:31Z
Εὐθυμένης
2777
36410
wikitext
text/x-wiki
{{Commons|Category:{{{1|{{#property:P373}}}}} | {{{2|{{SUBPAGENAME}}}}} }}
<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]
[[da:Skabelon:Commonscat]]
</noinclude>
cf6nuytno8it87b1msqy44cifyqqpr4
Πρότυπον:Commons
10
1224
36417
32493
2025-12-15T15:54:51Z
Εὐθυμένης
2777
36417
wikitext
text/x-wiki
<includeonly>{{Sisterproject
|project=Commons
|image=Commons-logo.svg
|text=Σα [[commons:Κύρια_Σελίδα|Κοινά]] ε<u>σ</u> υλικόν σχετικόν με το θέμα|link=[[commons:{{#if: {{{1|}}} | {{{1}}}| {{SUBPAGENAME}}}} | {{#if: {{{2|}}} | {{{2}}} | {{SUBPAGENAME}}}}]]
}}</includeonly><noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]
<!-- interwiki -->
[[az:Şablon:Commons]]
</noinclude>
rkokr0aqdhu0ne9xag3of3egdwis6jk
Καμερούν
0
1252
35930
32441
2024-10-26T05:26:04Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35930
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Καμερούν'''</big></big><br/>''République du Cameroun''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Cameroon.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of_Cameroon.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Cameroon_(orthographic_projection).svg|300px]]
|}
[[Αρχείον:LocationCameroon.svg|thumb|right|Το καμερουνικόν ο χάρτ'ς.]]
Το '''Καμερούν''', σα γαλλικά République du Cameroun, εν [[Αφρικήν|αφρικανικόν]] [[κράτος]]. Πρωτεύουσαν ατ'ς εν η [[Γιαουντέ]] κ' τρανότερην πόλην εν η [[Ντουάλα]]. Ο πρόεδεος ατ'ς εν ο [[Πολ Μπιγιά]] ο πρωθυπουργός ατ' ς εν ο [[Φιλεμόν Γιανζί Γιανγκ]] και ο πληθυσμόν ατ'ς έν σα 15.746.179 τ' ανθρώπ'ς.
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Αφρική|Καμερούν]]
38o7z5z04qhr8ejhbscipuhhu9pacgx
Πρότυπον:Softredirect
10
1281
31481
30825
2013-03-11T10:26:59Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 274 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4844001]] [[M:User:Addbot/WDS|(translate me)]]
31481
wikitext
text/x-wiki
[[Image:Redirectltr.png|#REDIRECT ]]<span class="redirectText" id="softredirect">[[{{{1}}}]]</span><br /><span style="font-size:85%; padding-left:52px;">This page is a [[:w:Wikipedia:Soft redirect|soft redirect]].</span><noinclude>
</noinclude>
0plrqqczrchr1heykdu948ryo5rlrn5
Βιετνάμ
0
1288
35917
33928
2024-10-26T05:25:13Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35917
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Βιετνάμ'''</big></big><br/>''Cộng hoà Xã hội Chủ nghĩa Việt Nam''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Vietnam.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Emblem of Vietnam.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Location Vietnam ASEAN.svg|300px]]
|}
Το '''Βιετνάμ''', σα βιετναμικά Cộng hòa xã hội chủ nghĩa Việt Nam, εν [[Ασίαν|ασιατικόν]] [[κράτος]]. Πρωτεύουσαν ατ'ς εν το [[Ανόι]] κ' τρανότερην πόλην εν η [[Πόλη Χο Τσι Μινχ]]. Ο πρόεδεος ατ'ς εν ο [[Νγκουϊέν Μινχ Τριετ]] ο πρωθυπουργός ατ' ς εν ο [[Νγουϊέν Ταν Ντουνγκ]] και ο πληθυσμόν ατ'ς έν σα 85,846,997 τ' ανθρώπ'ς.
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Ασία]]
r4cjwmz5tv4n4e93y74che2mmxpfgsk
Βικιπαίδεια:Νοματέοι
4
1335
17441
2010-12-26T16:05:53Z
Omnipaedista
35
[[Βικιπαίδεια:Νοματέοι]] ετερχλαεύτεν σο [[Βικιπαίδεια:Νοματαίοι]]
17441
wikitext
text/x-wiki
#REDIRECT [[Βικιπαίδεια:Νοματαίοι]]
buteqbhsw40ptc8wtiyxy3aluzzc6ox
Βαϊμάρη
0
1336
36857
31330
2025-12-16T09:57:58Z
Εὐθυμένης
2777
36857
wikitext
text/x-wiki
[[Αρχείον:Weimar City hall.jpg|thumb|right|310px|Το δημαρχείον τη πολιτείας]]
Η '''Βαϊμάρη''' (σα γερμανικά: ''Weimar'') εν πολιτείαν σο κέντρον τη [[Γερμανία|Γερμανίας]], σο κρατίδιον τη [[Θουριγγία|Θουριγγίας]].
Εςς 60.000 αθρώπς απαναφκά κι έναν πανεμιστήμιον.
Πολλά γνωστοί πολίτες σα παλαιά τα χρόνεα έσαν οι ποιητές [[Γιόχαν Βόλφγκανγκ φον Γκαίτε]] και [[Φρίντριχ Ϛίλερ]].
Επίσης η πολιτείαν εν γνωστόν για τη [[Δημοκρατία τη Βαϊμάρης|Δημοκρατίαν τη Βαϊμάρης]]. Αούτην ερχίνεσεν σα [[1919]] τη χρονίας.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{de}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γερμανίας]]
14lfkify8s13su3ua6jxbtvkhxgaqth
Κατηγορίαν:Πολιτείας τη Γερμανίας
14
1337
17482
17454
2010-12-28T03:18:26Z
Sinopeus
168
κατ
17482
wikitext
text/x-wiki
[[Κατηγορίαν:Γερμανία]]
[[Κατηγορίαν:Πολιτείας]]
p7m0uertn71o6wb0akw7ve4dpf3iqt4
Βαϊµάρη
0
1338
17457
2010-12-27T18:45:20Z
78.50.22.214
Redirected page to [[Βαϊμάρη]]
17457
wikitext
text/x-wiki
#REDIRECT [[Βαϊμάρη]]
kvuogb26mr4uv4t8mdr1w9uodc3cgnp
Καλαμπόκι
0
1339
17471
2010-12-28T02:43:52Z
85.182.22.163
Redirected page to [[Λαζούδ]]
17471
wikitext
text/x-wiki
#REDIRECT [[λαζούδ]]
ar57j08wndmis5oj5d16v6eeq84yym0
Γραμματικήν
0
1340
17474
2010-12-28T02:48:26Z
Sinopeus
168
[[Γραμματικήν]] ετερχλαεύτεν σο [[Γραμματική]]
17474
wikitext
text/x-wiki
#REDIRECT [[Γραμματική]]
ox8gd505pm1sjypvd1ickwahep2lj8g
Ουσιαστικό
0
1341
17475
2010-12-28T02:56:45Z
Sinopeus
168
Βικιπαίδεια:1000 σελίδας
17475
wikitext
text/x-wiki
#REDIRECT [[Ουσιαστικόν]]
atprhcjtut3l59xktgzm4ucwd5erp2n
Μουσικήν
0
1342
17478
2010-12-28T02:59:32Z
Sinopeus
168
[[Μουσικήν]] ετερχλαεύτεν σο [[Μουσική]]: Βικιπαίδεια:1000 σελίδας
17478
wikitext
text/x-wiki
#REDIRECT [[Μουσική]]
58vbbpucp7898w1sb1sw18l4hqu5e4x
Ήλιος
0
1343
17479
2010-12-28T03:05:29Z
Sinopeus
168
Βικιπαίδεια:1000 σελίδας
17479
wikitext
text/x-wiki
#REDIRECT [[Ήλος]]
c9baqf2853nfu99uoxqfjhmvqr2l4vf
Κατηγορίαν:Πολιτείας τη Ιταλίας
14
1344
31911
31909
2014-02-04T18:35:39Z
Sihlaine
4027
31911
wikitext
text/x-wiki
[[Κατηγορίαν:Πολιτείας]]
kxv8qr0v3vgeqqgqiu8ey78hoid3qz3
Βερολίνον
0
1345
36856
36083
2025-12-16T09:57:22Z
Εὐθυμένης
2777
36856
wikitext
text/x-wiki
[[Αρχείον:Reichstag building Berlin view from west before sunset.jpg|thumb|right|310px|Το γερμανικόν η βουλή, το Ράιχσταγκ]]
[[Αρχείον:EU location Berlin.svg|thumb|right|200px|]]
Το '''Βερολίνον''' (σα γερμανικά: ''Berlin'') εν πολιτείαν σην ανατολήν τη [[Γερμανία|Γερμανίας]]. Εν η πρωτεύουσα τη χώρας και τ'ασούλτς τρανόν πολιτείαν. Εςς 3.447.048 αθρώπς απαναφκά.
== Ιστορία ==
* [[1244]] Εμφανίσκουνταν τα πρώτα γράμματα για έναν μέρος π'λέγνατο Βερλίνον.
* [[1451]] Το σόι τοι Χοχεντσολερνάντ' (''Hohenzollern'') επήεν σο Βερολίνον κι ασ'ατό το μέρος εκυβέρνηνεν τη χώρανατουν
* [[1701]] Το Βερολίνον έντον [[Πρωσία|πρωσικόν]] πρωτεύουσα.
* [[1806]] Ο στρατός τη [[Ναπολέον Βοναπάρτης|Ναπολέοντα]] εσέβεν σο Βερολίνον.
* [[1871]] Το Βερολίνον έντον πρωτεύουσα τη [[Γερμανικόν Ράιχ|Γερμανικού Ράιχ]].
* [[1920]] Το παλαιόν το Βερολίνον εφτάνατο έναν με κιάλλα πολιτείας κι αέτς πα σχηματίσκεται το "Τρανόν Βερολίνον" (Groß-Berlin).
* [[1945]] Ασού επέρασεν ο δεύτερον ο τρανόν ο πόλεμον τη πολιτείαν χωρίζνατεν σε τέσσερα κομμάτεα: Έναν [[σοβιετικόν]], έναν [[αμερικανικόν]], έναν [[βρετανικόν]] κι έναν [[Γαλλία|γαλλικόν]].
* [[1949]] Εποίκανε τα δυο Γερμανίας άμα και η πολιτείαν εταγουτεύτεν κι έντον ημσόν: Ατώρα εςς Δυτικόν Βερολίνον και Ανατολικόν Βερολίνον.
* [[1961]] Το κομμουνιστικόν η κυβέρνησην τ’Ανατολικού τη Γερμανίας εποίκεν το [[Τουβάρ τη Βερολίνου]]. Ατό πα εχώρισεν τη πολιτείαν.
* [[1990]] Ασου τα Γερμανίας ένταν έναν αξάν, το Τουβάρ τη Βερολίνου εκρέμσανατο κι εχάθεν. Ατώρα εςς έναν Βερολίνον μαναχόν. Το καινούρεον η πολιτείαν ίνεται γερμανικόν πρωτεύτουσα.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{de}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γερμανίας]]
56co260kvkfl7e1wf61jssjzlrbztzf
Βερολίνο
0
1346
17515
2010-12-29T08:18:45Z
85.182.16.162
Redirected page to [[Βερολίνον]]
17515
wikitext
text/x-wiki
#REDIRECT [[Βερολίνον]]
ety96qxr5i4mvdghmr73xwmyjlrv7lp
Γλωσσολογία
0
1347
31476
31332
2013-03-11T10:26:45Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q8162]] [[M:User:Addbot/WDS|(translate me)]]
31476
wikitext
text/x-wiki
'''Γλωσσολογία''' λέγουμε την τέχνην π' τερεί και φωτογραφίζ' τη [[γλώσσα|γλώσσαν]]. Τοι επιστήμονες π'σουδάζνε τη γλώσσαν λέγνατοιντς γλωσσολόγους.
Τη γλωσσολογίαν χωρίζνατεν σε πολλά κομμάτεα, άμον ντο εν ο βοετός ([[φωνητική]]), η μορφή τη λέξης ([[μορφολογία]]), ντο λεει μας η λεξη ([[λεξικολογία]]) και τα κανόνας τη γλώσσας ([[γραμματική]]). Η γλωσσολογίαν 'κ τερεί έναν γλώσσαν μαναχόν αλλά πολλά. Αέτς πα επορούμε κι ελέπουμε τα γλώσσας ομνεάζνε τ'έναν τ'άλλο.
[[Κατηγορίαν:Γλωσσολογίαν|Γλωσσολογια]]
cwzicvrlt09m01korjhye57ggyh4s49
Intel Core i7
0
1348
37380
33261
2025-12-20T12:04:54Z
Εὐθυμένης
2777
/* Αναφοράντας */
37380
wikitext
text/x-wiki
{| class="toccolours" cellpadding="3" style="border: 1px solid #999999; float: right; margin: 0 0 1em 1em; width: 22em; border-collapse: collapse; font-size: 95%;"
| align="center" colspan=2 bgcolor="#F0F0F0" style="font-size:110%; border: 1px solid #999999;" | '''''Intel Core i7'''''
|-
| style="border: 1px solid #999999;" align="center" colspan="2" | [[Αρχείον:Intel core i7 940 top R7309478 wp.jpg|225 px]]
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0" | '''Όνομαν'''
| style="border: 1px solid #999999; width:14em" | Core i7
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0" | '''Ερχίνεσεν σα'''
| 2008
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0" | '''Ετελέθεν σα'''
| style="border: 1px solid #999999;" | -
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0" | '''Χρονισμοί'''
| style="border: 1px solid #999999;" | 1.6 GHz ους 3.47 GHz
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0"|'''Αρχιτεκτονικά Σετ Εντολίων'''
| style="border: 1px solid #999999;" | x86, x86-64, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0"|'''Μικροαρχιτεκτονική'''
| style="border: 1px solid #999999;" | Nehalem
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0"|'''Κουκούτσεα'''
| style="border: 1px solid #999999;" | 4
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0"|'''Συμβατά Υποδοχάς (Socket)'''
| style="border: 1px solid #999999;" | LGA 1366<br>LGA 1156<br>mPGA-989
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0"|'''Ονόματα κουκουτσίων'''
| style="border: 1px solid #999999;" | Bloomfield<br>Lynnfield<br>Clarksfield<br>Clarksfield XM
|-
|}
'''Intel Core i7''' εν τ'όνομαν π'έδωκεν η εταιρία [[Intel]] σε [[κεντρικόν μονάδα επεξεργασίας|επεξεργαστάς]] ντ'εφτάειατα για τ’ οσπιτί υπολογιστάς και για λάπτοπ. Η Intel εσκάλωσεν κι εχρησιμοίησεν αούτον τ'όνομαν σα 2008. Ασα 2008 κι επεκεί, όλεα τα επεξεργαστάς Core i7 στιρίχκουνταν σην [[Intel Nehalem (microarchitecture)|Intel Nehalem microarchitecture]] απάν. Ασα 2008 εμπροστά, η Intel είςεν τ'όνομαν «[[Intel Core 2|Core 2]]» για αήκα επεξεργαστάς. Εςς πολλά λοέν Core i7 επεξεργαστάς. Τ'όνομαν ΄κ συμβολίζ' κατηγορίαν επεξεργαστίων. Core i7 εν τ'όνομαν για όλεα τα πολλά αληγορτά επεργαστάς τη Intel. Εξόν ασ'ατά η Intel εςς και άλλα ονόματα για τοι επεξεργαστές'ατς π' θέλ να πωλείατα σοι καταναλωτές: «Core i5» και «Core i3». «Core I5» λέχκουνταν τα επεξεργαστάς π' 'κ είν'ατόσον αληγορτά άμον ντο είναι τα «Core i7». Τα «Core i5» επορούν κι εφτάγνε όλεα τα δουλείας π'θέλνε οι χρήστες υπολογιστίων, εξόν ασ'ολίγα κατηγορίας παιχνιδίων. Τ'όνομαν «Core i3» συμβολίζ' τα επεξεργαστάς, τα οποία δουλεύνε κιάλλο αργά ασα «Core i5». Τα «Core I3» επορούν κι εφτάγνε πολλά απλά δουλείας για πολλούς χρήστες υπολογιστίων.<ref name="i7-920">
{{cite web
|url=http://ark.intel.com/cpu.aspx?groupId=37147
|title=Intel® Core™ i7-920 Processor (8M Cache, 2.66 GHz, 4.80 GT/s Intel® QPI)
|accessdate=2008-12-06
|publisher=Intel
}}</ref><ref name="i7-940">
{{cite web
|url=http://ark.intel.com/cpu.aspx?groupId=37148
|title=Intel® Core™ i7-940 Processor (8M Cache, 2.93 GHz, 4.80 GT/s Intel® QPI)
|accessdate=2008-12-06
|publisher=Intel
}}</ref><ref name="i7-965">
{{cite web
|url=http://ark.intel.com/cpu.aspx?groupId=37149
|title=Intel® Core™ i7-965 Processor Extreme Edition (8M Cache, 3.20 GHz, 6.40 GT/s Intel® QPI)
|accessdate=2008-12-06
|publisher=Intel
}}</ref>
== Αναφοράντας ==
<references />
[[Κατηγορίαν:Τεχνολογίαν]]
[[en:Intel Core#Core i7]]
h0wglslvo1u9p518htw19ljlymhq2io
Intel
0
1349
37379
36333
2025-12-20T12:04:44Z
Εὐθυμένης
2777
/* Αναφοράντας */
37379
wikitext
text/x-wiki
[[File:Intel logo (2020, light blue).svg|thumb]] '''Intel Corporation''' ('''Int'''egrated '''El'''ectronics '''Corporation''') εν εταιρίαν ντ'εφτάει τςιπ ημσαγωγίων κι εσκάλωσεν να φτάει τα δουλείασατς σα [[1968]] τοι χρονίας, [[18 Χορτοθερί]]. Τα [[Κεντρικόν μονάδα επεξεργασίας|επεξεργαστάς]] ντ'εποίκενατα η Intel εχρησιμοποίησανατα σε πολλά [[υπολογιαστής|υπολογιστάς]]. Πολλοί εξέρνε τα παλαιά τα πράματα ντ'εποίκεν, άμον ντο εν ο 386, ο 486 και τα Pentium. Οσήμερον τ'ασούλτς σημαντικόν επεξεργαστήνατς λέγουνατο [[Intel Core i7]]. Πολλοί έχνε σον υπολογιστήνατουν τον Core 2 processor - λεει "Intel Inside" ατού απάν. Η Intel εφτάει πολλά λοέν πράματα κι έκλωσεν σον [[dual core]], [[64 bit]] σα [[2006]]. Τα πρώτα Pentium τςιπς εποίκενατα σα 1993, 22 Μαρτί.<ref name="The Pentium">
{{cite web
|url=http://arstechnica.com/old/content/2004/07/pentium-1.ars
|title=The Pentium: An Architectural History of the World's Most Famous Desktop Processor
|accessdate=2010-03-19
|publisher=Stokes, Jon
}}</ref>
== Αναφοράντας ==
<references />
== Άλλα σελίδας ==
{{Commonscat}}
* [http://www.intel.com Επίσημον ιστοσελίδα]
[[Κατηγορίαν:Τεχνολογίαν]]
0hi7j7z7n8ewe4c2sq6f0apuv7nx31g
18 Χορτοθερί
0
1350
37211
35887
2025-12-16T18:47:45Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
37211
wikitext
text/x-wiki
<div class="center">[[Καλομηνάς]] | [[Κερασινός]] | '''[[Χορτοθέρτς]]''' | [[Αλωνάρτς]] | [[Σταυρίτες]]</div>
<div class="center">[[17 Χορτοθερί]] | [[18 Χορτοθερί]] | [[19 Χορτοθερί]]</div>
----
Η '''18 τη Χορτοθερί''' εν το 199ον το ημέραν τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. 166 ημέρας απομέν'νε ουσνα τελείται η χρονία.
== Ατά ντ' εγένταν ==
* [[1968]] - Η [[Intel]] εσκάλωσεν να φτάει τα δουλείασατς.
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[18 Κερασινού]] - [[18 Αλωναρί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0718]]
9ti776mlfyo4o1x3qsarrezdwyo0x6d
Κεντρικόν μονάδα επεξεργασίας
0
1351
36254
32881
2025-05-15T21:45:06Z
Amherst99
2442
36254
wikitext
text/x-wiki
[[File:COAST CPU.jpg|thumb|220px|right|Έναν ΚΜΕ Pentium σ'έναν υπολογιστήν απές]]
Το '''Κεντρικόν η μονάδα επεξεργασίας - ΚΜΕ''' (αγγλ. ''central processing unit - CPU'') λέγουμε έναν πολλά σημαντικόν κομμάτ' τ'[[υπολογιστής|υπολογιστίων]]. Το ΚΜΕ εν άμον ντο εν τ'αχούλ. Η δουλείανατ' εν ν'εφτάει λογαρίας και δαταγάς.
Το ΚΜΕ εν ελεκτρονικόν μηχανήν ντ'εφτάει δουλείας ασ'έναν κατάλογον. Τον κατάλογον δεαβάζατον και παίρ τα δουλείας έναν έναν. Επεκεί εφτάει δουλείας με τη σειράνατουν άμον ντ'ορίζνε τα δαταγάς. Αήκον λίσταν με δαταγάς π'δεαβάζατα το ΚΜΕ λέγουματο [[πρόγραμμαν υπολογιστή|πρόγραμμαν]]. Τη μηχανήν π'επορεί κι εφτάει τα δουλείας τη ΚΜΕ, οι μαθηματικοί λέγουνατεν [[Μηχανή Τούρινγκ]].
Ολίγα δουλείας ντ'εφτάει το ΚΜΕ:
* Θέκει δυο αριθμούς εντάμα
* Τερεί ποίος αριθμός εν κιάλλο τρανόν ασ'άλλτς
* Κοβαλεί και θέκει τον αριθμόν σ'άλλον μέρος
* Παίρ' έναν αριθμόν αση μνύμην
* Λαγκέβ' σ'άλλον μέρος σον κατάλογον με τα δαταγάς απές
== Άλλα σελίδας ==
* [[Intel]]
[[Κατηγορίαν:Τεχνολογίαν]]
5p8ctsnmvibm93mf2bmg0dqywngj5jl
CPU
0
1352
17728
2011-01-10T13:40:52Z
85.182.18.8
Redirected page to [[Κεντρικόν μονάδα επεξεργασίας]]
17728
wikitext
text/x-wiki
#REDIRECT [[Κεντρικόν μονάδα επεξεργασίας]]
886qq0wzukf4istsnfaba2ketr6ud6s
ΚΜΕ
0
1353
17729
2011-01-10T13:41:16Z
85.182.18.8
Redirected page to [[Κεντρικόν μονάδα επεξεργασίας]]
17729
wikitext
text/x-wiki
#REDIRECT [[Κεντρικόν μονάδα επεξεργασίας]]
886qq0wzukf4istsnfaba2ketr6ud6s
Ιστορίαν
0
1354
17746
2011-01-11T12:13:01Z
Sinopeus
168
[[Ιστορίαν]] ετερχλαεύτεν σο [[Ιστορία]]: ονομαστική
17746
wikitext
text/x-wiki
#REDIRECT [[Ιστορία]]
ldmr7jruo0ie1oqbhmqulwkw2lclqrx
Μαύρη Θάλασσα
0
1355
17753
2011-01-11T19:24:12Z
78.50.20.55
Redirected page to [[Μαύρον Θάλασσα]]
17753
wikitext
text/x-wiki
#REDIRECT [[Μαύρον Θάλασσα]]
rzen1kydaywa5mgwp0x66qveokhohef
Κεντρικόν Μονάδα Επεξεργασίας
0
1356
17765
2011-01-12T12:00:54Z
92.231.7.160
Redirected page to [[Κεντρικόν μονάδα επεξεργασίας]]
17765
wikitext
text/x-wiki
#REDIRECT [[Κεντρικόν μονάδα επεξεργασίας]]
886qq0wzukf4istsnfaba2ketr6ud6s
Πεντικόν (υπολογιστές)
0
1357
37378
35448
2025-12-20T12:04:32Z
Εὐθυμένης
2777
/* Αναφοράντας */
37378
wikitext
text/x-wiki
[[Εικόναν:3-Tasten-Maus Microsoft.jpg|thumb|Πολλά πεντικάς έχνε δυο κουμπία κι έναν κυλιντάρ απεσκές.]]
Ο '''πεντικόν''' εν λυστρίν ντο λεει τον [[Ηλεκτρονικόν υπολογιστής|υπολογιστήν]] ντο δουλείας να φτάει. Ο χρήστες λαήζ τον πεντικόν σο τραπέζ απάν κι αέτς πα ο [[κέρσορας]] κουνίεται σην [[οθόνη|οθόνην]], ασ'έναν εικονόπον σ'άλλον.<ref>http://foldoc.org/mouse Mouse at free on-line dictionary of computing</ref>
Το λυστρίν επαίρεν τ'όνομανατ επειδή με το καλόδιον εμπροστά ομνέζ με [[πεντικόν]]. Οσήμερον τα καινούρεα μοντέλα καλόδιον πα 'κ έχνε άμα δουλεύνε με [[μπαταρία|μπαταρίας]].
== Αναφοράντας ==
<references />
[[Κατηγορίαν:Τεχνολογίαν]]
nze7jm3mf0kpwx85mulfi7wgh4lkv9u
Intel Core 2
0
1358
35099
35092
2022-02-19T03:38:50Z
Ladsgroup
3794
Reverting botnet vandalism attack ([[phab:T302047]])
35099
wikitext
text/x-wiki
{| class="toccolours" cellpadding="3" style="border: 1px solid #999999; float: right; margin: 0 0 1em 1em; width: 22em; border-collapse: collapse; font-size: 95%;"
| align="center" colspan=2 bgcolor="#F0F0F0" style="font-size:110%; border: 1px solid #999999;" | '''''Intel Core 2'''''
|-
| style="border: 1px solid #999999;" align="center" colspan="2" | [[Αρχείον:Core 2 Wolfdale.jpg|225 px]]<br><small>Ο [[Intel]] Core 2 "Wolfdale"</small>
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0" | '''Όνομαν'''
| style="border: 1px solid #999999; width:14em" | Core 2
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0" | '''Ερχίνεσεν σα'''
| 2006
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0" | '''Ετελέθεν σα'''
| style="border: 1px solid #999999;" | 2010
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0" | '''Χρονισμοί'''
| style="border: 1px solid #999999;" | 1.06 ους 3.33 GHz
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0"|'''Αρχιτεκτονικά Σετ Εντολίων'''
| style="border: 1px solid #999999;" | x86, x86-64
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0"|'''Μικροαρχιτεκτονική'''
| style="border: 1px solid #999999;" | Core
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0"|'''Κουκούτσεα'''
| style="border: 1px solid #999999;" | 1, 2 ή 4 (2x2)
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0"|'''Συμβατά Υποδοχάς (Socket)'''
| style="border: 1px solid #999999;" | LGA 1366<br>LGA 1156<br>mPGA-989
|- valign="top"
| style="border: 1px solid #999999;" bgcolor="#F0F0F0"|'''Ονόματα κουκουτσίων'''
| style="border: 1px solid #999999;" | Allendale, Conroe, Conroe-L, Merom-2M, Merom, Merom-L, Kentsfield, Wolfdale, Yorkfield, Penryn
|-
|}
'''Intel Core 2''' εν ομάδαν [[Κεντρικόν μονάδα επεξεργασίας|επεξεργαστίων]] ντ'εποίκενατο η [[Intel]]. Εξέβεν ασα [[Intel Core|Core]] κι επεκεί. Σ'αούτον την ομάδαν απές εςς επεξεργαστάς solo-core (με έναν κουκούτς) "Core 2 Solo", dual-core (2 κουκούτσεα) "Core 2 Duo", και quad-core (4 κουκούτσεα) "Core 2 Quad". Επεκεί εξέβαν και επεξεργαστάς με τ'όνομαν "Extreme", λ.χ. ''Core 2 Extreme''. Ατά πα θέλνε κιάλλα παράδας άμαν έχνε κιάλλο τρανόν τακάτ ασ'αλτς.
== Τ'επεξεργαστή τα κουκούτσεα ==
Η κατάληξη "XE" συμβολίζ ο επεξεργαστής εν "Extreme Edition".
* Conroe: Τα πρώτα επεξεργαστάς Core 2 Duo εξέβαν σα [[2006]], [[27 Χορτοθερί]]. Εποίκαν ατοιντς ασου εγέντανε παλαιά τα Intel [[Intel Pentium 4|Pentium 4]] και [[Intel Pentium D|Pentium D]].
* Conroe XE: Εξέβεν σα 2006, [[29 Χορτοθερί]] κι επαίραν τη θέσην τ'Intel Pentium Extreme Edition.
* Conroe L
* Allendale
* Morem
* Morem XE
* Kentsfield
* Kentsfield XE
* Penryn
* Wolfdale
* Yorkfield
* Yorkfield XE
[[Κατηγορίαν:Τεχνολογίαν]]
n37kd2a3i3slloql5rhq02lr0n9tzmy
Πίτσα
0
1372
35563
31340
2024-01-23T18:16:36Z
Διογένες
10538
μικρογραφία
35563
wikitext
text/x-wiki
[[Αρχείον:Pizza-2.jpg|300px|μικρογραφία|Πίτσα με τομάτας, τυρίν, κουκουβάκα και κρομμύδεα]]
[[Αρχείον:Pizza-oven.jpg|300px|μικρογραφία|Πατροπαράδοτον φουρνίν]]
Η '''πίτσα''' εν πατροπαράδοτον [[Ιταλία|ιταλικόν]] φαΐν αση [[Νεάπολη (Ιταλία)|Νεάπολην]]. Εν πολλά γνωστόν σ'όλον τον κόσμον.
== Ντο πράματα θέλομεν ==
=== Για το ζουμάρ' ===
* Αλεύρ
* Μαγιά
* Νερόν
* Άλας
* Λάδ'
== Πως εφτάμε την πίτσαν ==
Η πίτσα θέλ' αλέυρ, νερόν, ολίγον μαγιά, [[άλας]] και ολίγον λάδ'. Εφτάμε το ζουμάρ' κι αφήνομ'ατο έναν ώραν να φουσκών' με τη μαγιάν. Ασο φουσκών' και ύστερα, εφτάμε τρανόν ζουμωτόν φύλλον κι ενοίγομ'ατο σ'έναν σινίν απές. Επεκεί εςς πολλά συνταγάς. Κόφτομε τομάτας και βάλλομ'ατα σο ζουμάρ'. Εφτάμε μίαν σάλτσαν με τοματοπολτόν, ρίγανην, βασιλικόν και σκόρδον και κςύνομ'ατο απάν σο ζουμάρ' με τα τομάτας. Τρίφτομε το τυρίν απάν σο ζουμάρ'. Επεκεί βάλλομε ολίγον λαδ' και σύρομε το σινίν με το ζουμάρ' απές σο φουρνίν. Περιμένομεν να λύεται το τυρίν και να ψέεται το ζουμάρ'. Όνταν εγροικούμε εψέθεν, βγάλομε το σινίν και κόφτομε την πίτσαν μερτικά. <br />Επεκεί βγάλομε τα κομμάτεα'σο σινίν, βάλλομ'ατα σα ςκεύε, κάθουμες κα και τρώγουμε.
== Συνδέσμεα ==
* [http://www.sintagespareas.gr/apotelesmata-anazitisis?cx=003949553894029236155%3Axvhdyojmuiu&cof=FORID%3A11&ie=UTF-8&q=%CF%80%CE%AF%CF%84%CF%83%CE%B1&sa=%CE%95%CF%8D%CF%81%CE%B5%CF%83%CE%B7#890 Πως εφτάμε την πίτσαν] - sintagespareas.gr (ελλ)
[[Κατηγορίαν:Φαΐα|πιτσα]]
cl3646fnex05lcnivrxldd6r0wkk4aj
Ωτία
0
1374
34881
34687
2021-08-20T16:22:01Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.8
34881
wikitext
text/x-wiki
''Γιαμ' αραέβετε το τ'όργανον με το οποίον ακούγνε; [[ωτίν|Τερέστεν αδά]].''
Τα '''ωτία''' είναι πατροπαράδοτον [[Πόντος|ποντιακόν]] γλύκισμαν. Ομνέζ'νε με [[ωτίν|τ'ωτίν τ'αθρωπί]] και για τ'ατό λέγουν'ατα ωτία.
== Ντο πράματα θέλομεν ==
*ωβά
*1 φλιτζάν' ςεκ[[5]]<nowiki/>έρ
*1 φλιτζάν' ελάδ'
*1 φλιτζάν ξύγαλαν
*2 βανίλιας
*1 χουλέρ φαΐ σόδα
*ςεκέρ και κανέλα για γαρνίρισμαν
== Πως εφτάμε τα ωτία ==
Για να'φτάμε το ζουμάρ', βάλλομε τα ωβά σ'έναν μπολ με το ςεκέρ εντάμαν και ταράζομ'ατα. Επεκεί γομώνομε το λαδ' και το ξύγαλαν σο μπολ. Βάλλομε και τα βανίλιας και τη σόδαν. Ατώρα γάλεα γάλεα βάλλομε τ'αλέυρ' και συνέχεια με το χουλέρ ταράζομε το μίγμαν.<br>
Όνταν εγροικούμ' έντον το ζουμάρ', εφτάμε τρανά φύλλα κι ενοίγοματα. Κόφτομ'ατα κομμάτεα 2*10 εκατοστά, άμον ντο εν ο ρόμβον. Σο κέντρον τη ρομβί εφτάμ'εναν τρυπίν με το μαςαίρ και σύρομε μίαν άκραν τη ρομβί ατού απές.<br>
Βάλλομε το λάδ' απές σο τηγάν' να ψέεται. Επεκεί σύρομε τα ρομβία απές σο τηγάν' να κοκκινίζ'νε. Ασο εψέθαν και ύστερα, εβγάλομ'ατα ασο τηγάν'. Βάλλομ'ατα σ'έναν ςκεύος, κάθουμες κα και τρώγουμε.
== Συνδέσμεα ==
*[https://web.archive.org/web/20110220090259/http://www.sintagespareas.gr/sintages/otia.html Πως εφτάμε τα ωτία] - sintagespareas.gr (ελλ)
[[Κατηγορίαν:φαΐα|ωτια]]
rvpvyx990cb6i21wm396o97avn61uhi
Ωτίν
0
1375
31341
30817
2013-03-07T22:00:22Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 129 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7362]] [[M:User:Addbot/WDS|(translate me)]]
31341
wikitext
text/x-wiki
''Γιαμ' αραέβετε το ποντιακόν φαΐν; [[ωτία|Τερέστεν αδά]].''
[[Αρχείον:Earcov.JPG|thumb|right|150px|Ωτίν αθρωπί]]
Τ''''ωτίν''' (αρχαία ελλενικά: ''οὖς'') εν τ'όργανον με το οποίον ακούγνε οι αθρώπ' και τα χαϊβάνεα. Σ'ωτίν απές εςς και το όργανον για την ισορροπίαν, αέτς για να μη ρούζνε αφκά. Οι αθρώπ' και τα [[σπονδυλωτά]] έχνε δυο ωτία σο κηφάλν'ατουν.
{{commonscat|Ear}}
[[Κατηγορίαν:Ανατομία]]
98cfyz63yok2b6ofddlj2ljktqdzp3y
Ηνωμένο Βασίλειο
0
1377
36166
35688
2025-02-18T15:14:44Z
CommonsDelinker
121
Replacing Royal_Coat_of_Arms_of_the_United_Kingdom_(St_Edward's_Crown).svg with [[File:Royal_coat_of_arms_of_the_United_Kingdom_(St._Edward's_Crown).svg]] (by [[:c:User:CommonsDelinker|CommonsDelinker]] because: [[:c:COM:FR|File renamed]]: [[:c:COM:FR#FR6
36166
wikitext
text/x-wiki
{{Πληροφορίας χώρας|
|εθνικόν_όνεμαν= <big>Ηνωμένο Βασίλειο</big>
|εθνικόν όνεμαν σα ποντιακά = Ηνωμένων Βασίλειον
|κοινόν_όνεμαν= Ηνωμένο Βασίλειο
|μέγεθος σημαίας=
|σημαία = Flag of the United Kingdom.svg
|άρθρον σημαίας = Σημαία τ' Ηνωμένου Βασιλείου
|σύμβολον= Royal coat of arms of the United Kingdom (St. Edward's Crown).svg
|άρθρον συμβολατί = Σύμβολον τ' Ηνωμένου Βασιλείου
|χάρτες= EU location UK.png
|εθνικόν_σύνθημαν= Dieu et mon droit (Ο Θεός και το δικαίωμά μου)
|εθνικόν_ύμνος= God Save the King (Ο Θεός σώζει τη Βασίλισσα)
|επίσημα_γλώσσας= [[Εγγλέζικη γλώσσα|Εγγλέζικα]]
|πρωτεύουσα και ασ' όλον τρανόν πολιτεία = [[Λονδίνο]]
|συντεταγμένας_πρωτεύουσας= 51°31'7"N -0°6'3"E
|πολίτευμαν= [[Βασιλευόμενον Κοινοβουλευτικόν Δημοκρατία|Βασιλευόμενον<br /> Κοινοβουλευτικόν Δημοκρατία]]
|τίτλοι_τ' ηγετίων = <br />[[Βασιλιάς]]<br />[[Πρωθυπουργός]] |
|ονόματα_τ' ηγετίων = [[Κάρολος Γ΄ του Ηνωμένου Βασιλείου]] <br /> [[Τερέζα Μέι]]
|θέση_έκτασης= 78
|έκταση= 244.820
|ποσοστόν_νερού= %1,34
|εκτίμηση_πληθυσμού= 61.113.205
|χρονία_εκτίμησης_πληθυσμού= 2007
|πληθυσμός= 58.789.194
|θέση_πληθυσμού= 22
|χρονία_απογραφής_πληθυσμού= 2001
|πυκνότητα_πληθυσμού= 243 κατ
|θέση_πυκνότητας_πληθυσμού= 48
|παράδας = [[Λίρα Στερλίνα]]
|κωδικός_παράδων = £ GBP
|ώρα_ζώνες= GMT
|διαφορά_UTC= +0
|θερινόν_UTC= UTC
|θερινόν_διαφορά_UTC= +1
|top_level_domain= .uk και .eu ως μέλος της ΕΕ
|κωδικός_τηλεφωνατί= 44
|σημειώσεις=
}}
Το '''Ηνωμένο Βασίλειον''' κράτος εν σα βορειοδυτικά τη [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν το [[Λονδίνο]] και πρωθυπουργόν ατ'ς εν ο [[Μπόρις Τζόνσον]]. Ο πληθυσμόν τη χώρας εν σα 58.769.194 τ' ανθρώπ'ς (2001).
== Γεωγραφίαν ==
Το Ηνωμένο Βασίλειον ευρίεται αφκά σην [[Σκοτία]] και [[Ουαλία]]. Σα τρανά τα αγγλικά τα πολιτείας εξόν τη πρωτεύουσαν ανήκ'νε η [[Λίβερπουλ]] και ο [[Μάντσεστερ]].
== Πολιτικήν ==
Τ' ατωριζνόν η κηβέρνησην τη κράτονος εν η Κυβέρνηση [[Τερέζα Μέι]] και βασίλησαν [[Ελισάβετ Β΄]] ντ' εξέβεν σην εξουσίαν σα 2016 τη χρονίαν.
== Συνδέζμαι ==
[http://el.wikipedia.org/wiki/%CE%97%CE%BD%CF%89%CE%BC%CE%AD%CE%BD%CE%BF_%CE%92%CE%B1%CF%83%CE%AF%CE%BB%CE%B5%CE%B9%CE%BF Ελλενικόν]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Ηνωμένο Βασιλείον]]
[[Κατηγορίαν:Ευρώπη|Ηνωμένο Βασίλειον]]
sfh1a9kxch90w49j325dapc8ikj4glx
Βατικανό
0
1380
37413
36251
2025-12-30T22:17:10Z
Таёжный лес
10003
/* Συνδέζμαι */
37413
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Βατικανό'''</big></big><br/>''Status Civitatis Vaticanæ''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of the Vatican City - 2001 version.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of the Vatican City.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Location_Vatican_City_Europe.png|300px]]
|}
== Βατικανό (Βατικανό Κράτος) ==
Το '''Βατικανό''', ή και Κράτος τη Πόλιν του Βατικανού, έν' έναν ανεξάρτητον κράτος-πόλιν, σο δυτικόν μέρος τη Ρώμης, στην Ιταλία. Είν' η συνέχεια από το παπικόν κράτος που εποίκεν σο Μεσαίωναν. Εγεννέθεν σην 11η του Φλεβάρη το 1929, με την Συνθήκην του Λατερανού, κεικά σο φασιστικόν καθεστώς του Μουσολίν'.
Το Βατικανό λογαριάζεται ως το πιο μικρόν ανεξάρτητον κράτος, και σην έκτασιν (0,44 τετραγωνικά χιλιόμετρα) και σον λαόν (κατά την επίσημον εκτίμηση του 2023 είχεν 764 ψυές).
Σο Βατικανό κάθεται η [[Αγία Έδρα]] – έν' το πνευματικόν και διοικητικόν κέντρον της Ρωμαιοκαθολικής Εκκλησίας. Τον Πάπαν ελέγνε τον οι καρδινάλοι σον κονκλάβιον, αούτοι που έν' κάτω από 80 χρονών.
Η εθνική γιορτή έν' η 8η Μαΐου – ημέρα που ελέχθην ο νέος Ποντίφικας (το 2025). Το Βατικανό έν' το μόνο κράτος σον δυτικόν κόσμον (και μαζίν με τες [[Φιλιππίνες]] παγκοσμίως), που απαγορεύ’ το διαζύγιον.
== Ιστορικόν ==
=== Α΄ Περίοδος: ως το 590 ===
Το Παπικόν ή Ποντιφικόν κράτος (''Stato Pontificio'') ήτον ένα κράτος σην κεντρικήν Ιταλίαν, που εζούσεν από τον 8ον αιώνα ως τον 19ον. Εγεννέθεν ως μια «κοσμική» εξουσία των Παπών, με την Ρώμην ως κέντρον και πρωτεύουσα. Εκατείχεν πολλά εδάφη, που άλλαζαν πολλάκις σο πέρασμα του χρόνου – τόσον πολλά που κανένα άλλο κράτος δεν εγνώρεν τέτοιαν αστάθειαν. Αυτό εγίντον γιατί δεν είχεν αρκετούς υπερασπιστάδες.
Η αρχή αυτής της «κοσμικής» εξουσίας δεν εβεβαιώθεν ιστορικώς. Ελέγνε πως ο Μέγας Κωνσταντίνος, ο αυτοκράτορας, πρώτος εδώκεν την εξουσίαν τούτην με μια δωρεάν γης. Αλλά αυτό απεδείχθη ψεύδιν, κατασκευασμένον από έναν Ισπανόν παπά, τον Ισίδωρον Μερκάτορα. Ήδη από τον 12ον αιώνα οι Βενεδικτίνοι αμφέβαλαν, και στα μέσα του 15ου αιώνα ο Λαυρέντιος Βάλλας το απεκάλυψεν ως μεγάλο ψεύδος.
Και οι άλλες δωρεές – από τον Πιπίνον τον Μικρόν και τον Καρόλον τον Μέγαν – δεν εβεβαιώθεν ποτέ με έγγραφον. Μάλλον ήτον λόγια, και μόνον για μικρόν χρονικόν διάστημα. Πάντως, ιστορικά ξέρουμε πως οι βασιλείς των Φράγκων εδώκαν κάποια εξουσία στους Παπάδες, αλλά όχι ολική κυριαρχία και ανεξαρτησία.
Η εξουσία των Παπών ήρτεν κυρίως γιατί σιγά σιγά επήραν πρωτεύουσαν θέσιν σην Δυτικήν Εκκλησίαν. Την αρχή, ο τίτλος του Πάπα δεν είχεν καμμία προτεραιότητα. Αλλά επειδή η Ρώμη ήτον η πρωτεύουσα του κράτους, ο επίσκοπος της πόλης εποίκεν πρώτος ανάμεσα σ’ όλους. Βοήθησε και το που ελέγνε πως οι Πάπες είναι διάδοχοι του Απόστολου Πέτρου – που τάχα ήρθεν και εμαρτύρησεν σην Ρώμην.
Το 381, ο αυτοκράτορας Γρατιανός εδώκεν στον Πάπαν το δικαίωμα να δικάζ' τις διαφορές των επισκόπων. Το 452, ο Πάπας Λέων ο Α΄, που τον έστειλεν ο αυτοκράτορας Βαλεντιανός ο Γ΄, επήεν σο Αττίλαν και τον έπεισεν να μη χτυπήσει την Ρώμην.
Όταν επαύσαν οι Αυτοκράτορες της Δύσης, οι Πάπες εγίνηκαν μεσάζοντες ανάμεσα στον λαόν και τους βασιλέας των βαρβάρων.
Όταν ο Ιουστινιανός επήρεν ξανά την Ιταλίαν σο κράτος του (το 554), οι Πάπες είχεν ήδη πολλά εδάφη και πλούτη, από τα δώρα των πιστών. Είχεν περισσότερην δύναμιν κι από τους βυζαντινούς έξαρχους. Όταν οι Λομβαρδοί επήραν την Ιταλίαν (το 568), το κέντρο της Εξαρχίας έφυγεν από την Ρώμην και εποίκεν σην Ραβένναν.
=== Β΄ Περίοδος: 590–860 ===
Σην εποχήν τούτην, οι Παπάδες εγίνηκαν όχι μόνον πνευματικοί αρχηγοί, αλλά και κοσμικοί άρχοντες. Ο Πάπας Γρηγόριος ο Μέγας (590–604) εδιοίκεν την Εκκλησίαν με σοφίαν και εδυνάμωσεν την εξουσίαν της Ρώμης. Εστήριξεν τα μοναστήρα, έστειλεν ιεραποστόλους, και ετακτοποίησεν τα εκκλησιαστικά ζητήματα.
Μετά τον θάνατον του Γρηγορίου, οι διάδοχοί ατ’ συνεχίσαν την ενίσχυσην της παπικής εξουσίας. Το 754, ο Πάπας Στέφανος Β΄ εζήτησεν βοήθειαν από τον βασιλέαν των Φράγκων, τον Πιπίνον τον Μικρόν, για να πολεμήσ’ την απειλήν των Λομβαρδών. Ο Πιπίνος επέκανεν και, με την «Δωρεάν του Πιπίνου», εδώκεν στον Πάπαν εδάφη, που εγίνηκαν η ρίζα του Παπικού Κράτους.
Το 800, ο Πάπας Λέων ο Γ΄ εστέψεν τον Καρλομάγνον αυτοκράτοραν της Αγίας Ρωμαϊκής Αυτοκρατορίας. Αυτό το πράμαν εδυνάμωσεν την θέσην του Πάπαν ως πνευματικόν και κοσμικόν αρχηγόν σην Δύσην.
Ακείνη την εποχήν, η εξουσία των Παπών εστερεώθεν καλά, και το Παπικόν Κράτος εδυναμώθεν, και εβάλεν τα θεμέλια για την μετέπειτα πορείαν της Εκκλησίας και όλης της Δυτικής Ευρώπης.
[[Αρχείον:Pope Gregory I.jpg|thumb|right|150px|Ο Πάπας Γρηγόριος ο Μέγας]]
=== Γ΄ Περίοδος: 860–1254 ===
Σην περίοδον τούτην, η Παπική εξουσία ενισχύθην και επεκτάθην, και οι Παπάδες εγίνηκαν όχι μόνον πνευματικοί, αλλά και κοσμικοί άρχοντες. Η Ρώμη εγίνεν κέντρον εξουσίας, και το Παπικόν Κράτος εστερεώθεν σην Ιταλίαν.
Ο Πάπας Ιννοκέντιος Δ΄ (1243–1254) εσυγκρούθην με τον αυτοκράτοραν Φρειδερίκον Β΄, και σην Σύνοδον της Λυών (1245) τον αφόρισεν και τον καθαίρεσεν από τον θρόνον. Μετά τον θάνατον του Φρειδερίκου το 1250, ο Ιννοκέντιος επροσπάθησεν να ενισχύσ' την παπικήν εξουσίαν σην Ιταλίαν, αλλά εσυνάντησεν αντίστασην από τον γιον του Φρειδερίκου, τον Μανφρέδον.
Το 1254, ο Ιννοκέντιος επεχείρησεν στρατιωτικήν εκστρατείαν εναντίον του Μανφρέδου, αλλά ηττήθην σην μάχην της Φώτζιας. Ο Ιννοκέντιος απέθανεν λίγες ημέρες μετά, σην Νάπολην, και ετάφηκεν σην Καθεδρικήν Εκκλησίαν της πόλης.
=== Δ΄ Περίοδος: 1254–1378 ===
[[Αρχείον: βατικανό δ'.jpg|thumb|194x194px|Όψιν τη Πόλιν του Βατικανού σο 1593, από χαρτίν του Αντόνιο Τεμπέστα|αριστερά]]
Μετά τον θάνατον του Ιννοκέντιου Δ΄, η Παπική εξουσία επέρασεν δύσκολες εποχές. Οι Πάπες επροσπαθούσαν να κρατούν την εξουσίαν τους σην Ιταλίαν, ενώ η αυτοκρατορία των Γερμανών ήθελεν να ελέγχει το νότιο μέρος.
Το 1309, ο Πάπας Κλήμης ο Ε΄ μετέφερεν την έδραν του Παπά από την Ρώμην σην Αβινιόν της Γαλλίας. Αυτό εγίντον γιατί η πολιτική κατάστασις σην Ιταλίαν ήτον ασταθής και επικίνδυνη. Από το 1309 ως το 1377, οι Πάπες εκαθίσαν σην Αβινιόν — αυτό το χρονικόν λέγεται και «Αιχμαλωσία της Βαβυλώνας».
Η παραμονή σην Γαλλίαν έφερεν πολλήν κριτική, και πολλοί Χριστιανοί λέγαν πως ο Πάπας έν' όργανον του γαλλικού βασιλέα. Το 1377, ο Πάπας Γρηγόριος ΙΑ΄ εφέραν ξανά την έδραν σην Ρώμην, αλλά ο θάνατος ατ' το 1378 έφερεν μεγάλην κρίση.
Από εκεί και πέρα εγίνηκεν το «Σχίσμα της Δύσης»: δύο Παπάδες — ένας σην Ρώμην κι ένας σην Αβινιόν — διεκδικούσαν την εξουσίαν. Η Εκκλησία εκατασχίστην και η παπική εξουσία ετρανταχθήν σην Ευρώπην.
== Πηγές ==
* [https://el.wikipedia.org/wiki/Βατικανό Βικιπαίδεια: Βατικανό (ελληνικά)]
* Ιστορικές πηγές για την Παπική εξορία στην Αβινιόν και το Σχίσμα της Δύσης.
== Πηγές ==
* [https://el.wikipedia.org/wiki/Βατικανό Βικιπαίδεια: Βατικανό (ελληνικά)]
* [https://en.wikipedia.org/wiki/Pope_Innocent_IV Wikipedia: Pope Innocent IV (αγγλικά)]
* [https://de.wikipedia.org/wiki/Papstwahl_1254 Wikipedia: Papstwahl 1254 (γερμανικά)]
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Vaticano|Το Βατικανό σα Commons]]'''
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{authority control}}
kszk04rxa76i4pry7woru1gnsg0z8zm
Κατηγορίαν:Αθλητισμός
14
1381
19037
19036
2011-02-19T13:00:20Z
Teomatra
2089
Blanked the page
19037
wikitext
text/x-wiki
phoiac9h4m842xq45sp7s6u21eteeq1
Λονδίνο
0
1383
31534
31344
2013-04-02T18:49:44Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q84]] [[M:User:Addbot/WDS|(translate me)]]
31534
wikitext
text/x-wiki
[[Εικόναν:London (European Parliament constituency).svg|thumb|280px|]]
[[Εικόναν:The Tower Bridge, London in the night 2.jpg|thumb|280px|]]
Το Λονδίνο (αγγ.London) εν αγγληκ΄ον πολιτείαν και εχ' τρανόν [[ιστορίαν]]. Εν η ασ' ουλτς τρανόν πολιτείαν και η [[πρωτεύουσα]] τη χώρας. Οσήμερον (2001) εχ' πληθυσμόν 7.700.000 ανθρώπ.
[[Εικόναν:LondonNumbered.png|left|280px|]]
[[Κατηγορίαν:Πολιτείας τ' Αγγλίας|Λονδίνο]]
gouus5k53w0zahe9nxpz6lehmqdgf2h
Κατηγορίαν:Πολιτείας τ' Αγγλίας
14
1385
19079
19078
2011-02-20T19:02:19Z
Teomatra
2089
19079
wikitext
text/x-wiki
Σελίδας τη κατηγορίας "Πολιτείας τ' Αγγλίας"
Αβούτη κατηγορίαν έχ' τ' αφκά τη σελίδαν μαναχόν
5r604ypi6iqagwwc6jupgns4fe44ojs
Πρότυπον:Ημέρα τη χρονίας
10
1391
19209
19175
2011-02-27T14:06:41Z
Budelberger
25
19209
wikitext
text/x-wiki
<includeonly><span style="visibility:hidden">{{Second of two words}}</span>{{ημέρα τη χρονίας!|ημέρα={{First word}}|μήνας={{Second of two words}}}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
3uq1livc6vhvqf8vosmqu1kj5k7almg
Πρότυπον:First word
10
1392
19128
2011-02-25T02:32:02Z
Budelberger
25
Création.
19128
wikitext
text/x-wiki
<includeonly>{{#ifeq: {{str find|{{{1|{{PAGENAME}}}}}| }} | -1 | {{{1|{{PAGENAME}}}}} | {{trunc|{{{1|{{PAGENAME}}}}}|{{str find|{{{1|{{PAGENAME}}}}}| }}}}}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
4fqumie92t9e3doeyrqxpcm8resz8sm
Πρότυπον:Trunc
10
1393
19129
2011-02-25T02:32:39Z
Budelberger
25
Création.
19129
wikitext
text/x-wiki
<includeonly>{{padright: {{#iferror: {{#expr: 0 + {{{2}}}}} | {{{1}}} |}} | {{{2|}}} | {{{1}}}}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
1a749qv0l8g6odqqhp5k991e5mjjpt4
Πρότυπον:Second of two words
10
1394
19130
2011-02-25T02:33:19Z
Budelberger
25
Création.
19130
wikitext
text/x-wiki
<includeonly>{{str right|{{{words|{{{1|{{PAGENAME}}}}}}}}|{{#expr: {{str len|{{first word|{{{words|{{{1|{{PAGENAME}}}}}}}}}}}} + 1}}}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
9lv475lgkrvatloqn5uko89bqc0nxyx
Πρότυπον:Str right
10
1395
19131
2011-02-25T02:33:56Z
Budelberger
25
Création.
19131
wikitext
text/x-wiki
<includeonly>{{{{{|safesubst:}}}Str sub long|nocategory={{{nocategory|}}}|{{{1}}}|{{{2}}}|{{{{{|safesubst:}}}#expr:{{{{{|safesubst:}}}Str len|nocategory={{{nocategory|}}}|{{{1}}}}}-{{{2}}}}}}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
8rnkj19jx87anp2newcfj3rrxpk4b5d
Πρότυπον:Str sub long
10
1396
19132
2011-02-25T02:35:00Z
Budelberger
25
Création.
19132
wikitext
text/x-wiki
<includeonly>{{{{{|safesubst:}}}#ifeq:{{{2|0}}}|0|{{{{{|safesubst:}}}str_left|{{{1}}}|{{{3|0}}}}}|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 1 and {{{2|0}}} + {{{3|0}}} >= 1|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|1}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 2 and {{{2|0}}} + {{{3|0}}} >= 2|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|2}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 3 and {{{2|0}}} + {{{3|0}}} >= 3|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|3}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 4 and {{{2|0}}} + {{{3|0}}} >= 4|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|4}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 5 and {{{2|0}}} + {{{3|0}}} >= 5|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|5}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 6 and {{{2|0}}} + {{{3|0}}} >= 6|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|6}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 7 and {{{2|0}}} + {{{3|0}}} >= 7|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|7}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 8 and {{{2|0}}} + {{{3|0}}} >= 8|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|8}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 9 and {{{2|0}}} + {{{3|0}}} >= 9|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|9}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 10 and {{{2|0}}} + {{{3|0}}} >= 10|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|10}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 11 and {{{2|0}}} + {{{3|0}}} >= 11|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|11}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 12 and {{{2|0}}} + {{{3|0}}} >= 12|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|12}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 13 and {{{2|0}}} + {{{3|0}}} >= 13|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|13}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 14 and {{{2|0}}} + {{{3|0}}} >= 14|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|14}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 15 and {{{2|0}}} + {{{3|0}}} >= 15|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|15}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 16 and {{{2|0}}} + {{{3|0}}} >= 16|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|16}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 17 and {{{2|0}}} + {{{3|0}}} >= 17|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|17}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 18 and {{{2|0}}} + {{{3|0}}} >= 18|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|18}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 19 and {{{2|0}}} + {{{3|0}}} >= 19|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|19}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 20 and {{{2|0}}} + {{{3|0}}} >= 20|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|20}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 21 and {{{2|0}}} + {{{3|0}}} >= 21|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|21}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 22 and {{{2|0}}} + {{{3|0}}} >= 22|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|22}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 23 and {{{2|0}}} + {{{3|0}}} >= 23|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|23}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 24 and {{{2|0}}} + {{{3|0}}} >= 24|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|24}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 25 and {{{2|0}}} + {{{3|0}}} >= 25|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|25}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 26 and {{{2|0}}} + {{{3|0}}} >= 26|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|26}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 27 and {{{2|0}}} + {{{3|0}}} >= 27|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|27}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 28 and {{{2|0}}} + {{{3|0}}} >= 28|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|28}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 29 and {{{2|0}}} + {{{3|0}}} >= 29|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|29}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 30 and {{{2|0}}} + {{{3|0}}} >= 30|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|30}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 31 and {{{2|0}}} + {{{3|0}}} >= 31|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|31}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 32 and {{{2|0}}} + {{{3|0}}} >= 32|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|32}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 33 and {{{2|0}}} + {{{3|0}}} >= 33|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|33}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 34 and {{{2|0}}} + {{{3|0}}} >= 34|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|34}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 35 and {{{2|0}}} + {{{3|0}}} >= 35|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|35}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 36 and {{{2|0}}} + {{{3|0}}} >= 36|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|36}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 37 and {{{2|0}}} + {{{3|0}}} >= 37|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|37}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 38 and {{{2|0}}} + {{{3|0}}} >= 38|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|38}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 39 and {{{2|0}}} + {{{3|0}}} >= 39|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|39}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 40 and {{{2|0}}} + {{{3|0}}} >= 40|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|40}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 41 and {{{2|0}}} + {{{3|0}}} >= 41|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|41}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 42 and {{{2|0}}} + {{{3|0}}} >= 42|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|42}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 43 and {{{2|0}}} + {{{3|0}}} >= 43|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|43}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 44 and {{{2|0}}} + {{{3|0}}} >= 44|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|44}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 45 and {{{2|0}}} + {{{3|0}}} >= 45|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|45}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 46 and {{{2|0}}} + {{{3|0}}} >= 46|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|46}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 47 and {{{2|0}}} + {{{3|0}}} >= 47|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|47}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 48 and {{{2|0}}} + {{{3|0}}} >= 48|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|48}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 49 and {{{2|0}}} + {{{3|0}}} >= 49|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|49}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 50 and {{{2|0}}} + {{{3|0}}} >= 50|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|50}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 51 and {{{2|0}}} + {{{3|0}}} >= 51|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|51}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 52 and {{{2|0}}} + {{{3|0}}} >= 52|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|52}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 53 and {{{2|0}}} + {{{3|0}}} >= 53|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|53}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 54 and {{{2|0}}} + {{{3|0}}} >= 54|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|54}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 55 and {{{2|0}}} + {{{3|0}}} >= 55|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|55}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 56 and {{{2|0}}} + {{{3|0}}} >= 56|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|56}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 57 and {{{2|0}}} + {{{3|0}}} >= 57|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|57}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 58 and {{{2|0}}} + {{{3|0}}} >= 58|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|58}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 59 and {{{2|0}}} + {{{3|0}}} >= 59|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|59}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 60 and {{{2|0}}} + {{{3|0}}} >= 60|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|60}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 61 and {{{2|0}}} + {{{3|0}}} >= 61|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|61}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 62 and {{{2|0}}} + {{{3|0}}} >= 62|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|62}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 63 and {{{2|0}}} + {{{3|0}}} >= 63|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|63}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 64 and {{{2|0}}} + {{{3|0}}} >= 64|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|64}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 65 and {{{2|0}}} + {{{3|0}}} >= 65|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|65}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 66 and {{{2|0}}} + {{{3|0}}} >= 66|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|66}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 67 and {{{2|0}}} + {{{3|0}}} >= 67|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|67}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 68 and {{{2|0}}} + {{{3|0}}} >= 68|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|68}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 69 and {{{2|0}}} + {{{3|0}}} >= 69|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|69}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 70 and {{{2|0}}} + {{{3|0}}} >= 70|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|70}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 71 and {{{2|0}}} + {{{3|0}}} >= 71|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|71}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 72 and {{{2|0}}} + {{{3|0}}} >= 72|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|72}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 73 and {{{2|0}}} + {{{3|0}}} >= 73|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|73}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 74 and {{{2|0}}} + {{{3|0}}} >= 74|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|74}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 75 and {{{2|0}}} + {{{3|0}}} >= 75|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|75}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 76 and {{{2|0}}} + {{{3|0}}} >= 76|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|76}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 77 and {{{2|0}}} + {{{3|0}}} >= 77|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|77}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 78 and {{{2|0}}} + {{{3|0}}} >= 78|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|78}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 79 and {{{2|0}}} + {{{3|0}}} >= 79|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|79}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 80 and {{{2|0}}} + {{{3|0}}} >= 80|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|80}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 81 and {{{2|0}}} + {{{3|0}}} >= 81|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|81}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 82 and {{{2|0}}} + {{{3|0}}} >= 82|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|82}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 83 and {{{2|0}}} + {{{3|0}}} >= 83|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|83}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 84 and {{{2|0}}} + {{{3|0}}} >= 84|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|84}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 85 and {{{2|0}}} + {{{3|0}}} >= 85|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|85}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 86 and {{{2|0}}} + {{{3|0}}} >= 86|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|86}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 87 and {{{2|0}}} + {{{3|0}}} >= 87|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|87}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 88 and {{{2|0}}} + {{{3|0}}} >= 88|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|88}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 89 and {{{2|0}}} + {{{3|0}}} >= 89|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|89}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 90 and {{{2|0}}} + {{{3|0}}} >= 90|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|90}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 91 and {{{2|0}}} + {{{3|0}}} >= 91|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|91}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 92 and {{{2|0}}} + {{{3|0}}} >= 92|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|92}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 93 and {{{2|0}}} + {{{3|0}}} >= 93|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|93}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 94 and {{{2|0}}} + {{{3|0}}} >= 94|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|94}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 95 and {{{2|0}}} + {{{3|0}}} >= 95|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|95}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 96 and {{{2|0}}} + {{{3|0}}} >= 96|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|96}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 97 and {{{2|0}}} + {{{3|0}}} >= 97|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|97}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 98 and {{{2|0}}} + {{{3|0}}} >= 98|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|98}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 99 and {{{2|0}}} + {{{3|0}}} >= 99|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|99}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} < 100 and {{{2|0}}} + {{{3|0}}} >= 100|<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}str index any|nocategory={{{nocategory|}}}|{{{1}}}|100}}}}<noinclude><!--
--></noinclude>{{{{{|safesubst:}}}#ifexpr:{{{2|0}}} >= 100 or {{{2|0}}} + {{{3|0}}} > 100|{{FormattingError|nocategory={{{nocategory|}}}|max index is 100 for str sub long}}}}<noinclude><!--
--></noinclude>}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
i30i2njrv9otnuocf2t2dou8ji0mhjc
Πρότυπον:Ημέρα τη χρονίας!
10
1397
19370
19174
2011-03-08T22:50:51Z
Budelberger
25
19370
wikitext
text/x-wiki
<includeonly>{{ημέρα τη χρονίας¡
|ημέρα = {{{ημέρα}}}
|μήνας = {{#switch: {{{μήνας}}}
| Καλανταρί = 01
| Κούντουρονος = 02
| Μαρτ | Μαρτί = 03
| Απρίλ | Απρίλτ = 04
| Καλομηνά = 05
| Κερασινού = 06
| Χορτοθερί | Χορτοθέρτ = 07
| Αλωναρί | Aλωναρί = 08
| Σταυρί = 09
| Τρυγομηνά = 10
| Αεργί = 11
| Χριστουγενναρί = 12}}
|χρονία = {{#ifeq: {{{ημέρα}}} {{{μήνας}}} | 29 Κούντουρονος | 2008 | {{CURRENTYEAR}}}}}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
0bwy3ntvd5tf8kv3w0ibov8jha0u0c6
Πρότυπον:Ημέρα τη χρονίας¡
10
1398
19376
19375
2011-03-09T01:33:59Z
Budelberger
25
19376
wikitext
text/x-wiki
<includeonly><center>[[{{#time: F|{{CURRENTYEAR}}-{{{μήνας}}} - 2 month}}]] | [[{{#time: F|{{CURRENTYEAR}}-{{{μήνας}}} - 1 month}}]] | '''[[{{#time: F|{{CURRENTYEAR}}-{{{μήνας}}}}}]]''' | [[{{#time: F|{{CURRENTYEAR}}-{{{μήνας}}} + 1 month}}]] | [[{{#time: F|{{CURRENTYEAR}}-{{{μήνας}}} + 2 month}}]]</center>
{{#switch: {{{μήνας}}}{{{ημέρα}}}
| 0129 = <center>[[28 Καλανταρί]] {{!}} '''[[29 Καλανταρί]]''' {{!}} [[30 Καλανταρί]]</center><center>[[29 Χριστουγενναρί]] {{!}} [[29 Κούντουρονος]]</center>
| 0228 = <center>[[27 Κούντουρονος]] {{!}} '''[[28 Κούντουρονος]]''' {{!}} ''[[29 Κούντουρονος]]'' {{!}} [[1 Μαρτ]]</center><center>[[28 Καλανταρί]] {{!}} [[28 Μαρτ]]</center>
| 0229 = <center>[[28 Κούντουρονος]] {{!}} '''[[29 Κούντουρονος]]''' {{!}} [[1 Μαρτ]]</center><center>[[29 Καλανταρί]] {{!}} [[29 Μαρτ]]</center>
| 031 = <center>[[28 Κούντουρονος]] {{!}} ''[[29 Κούντουρονος]]'' {{!}} '''[[1 Μαρτ]]''' {{!}} [[2 Μαρτ]]</center><center>[[1 Κούντουρονος]] {{!}} [[1 Απρίλτ]]</center>
| 0329 = <center>[[28 Μαρτ]] {{!}} '''[[29 Μαρτ]]''' {{!}} [[30 Μαρτ]]</center><center>[[29 Κούντουρονος]] {{!}} [[29 Απρίλτ]]</center>
| #default = <center>[[{{#time: j xg|{{CURRENTYEAR}}-{{{μήνας}}}-{{{ημέρα}}} - 1 day}}]] {{!}} '''[[{{#time: j xg|{{CURRENTYEAR}}-{{{μήνας}}}-{{{ημέρα}}}}}]]''' {{!}} [[{{#time: j xg|{{CURRENTYEAR}}-{{{μήνας}}}-{{{ημέρα}}} + 1 day}}]]</center>{{#switch: {{{μήνας}}}{{{ημέρα}}}
| 0130
| 0131
| 0831 = <center>[[{{#time: j xg|{{CURRENTYEAR}}-{{{μήνας}}}-{{{ημέρα}}} - 1 month}}]]</center>
| 0330
| 0731
| 1231 = <center>[[{{#time: j xg|{{CURRENTYEAR}}-{{{μήνας}}}-{{{ημέρα}}} + 1 month}}]]</center>
| 0331
| 0531
| 1031 =
| #default = <center>[[{{#time: j xg|{{CURRENTYEAR}}-{{{μήνας}}}-{{{ημέρα}}} - 1 month}}]] {{!}} [[{{#time: j xg|{{CURRENTYEAR}}-{{{μήνας}}}-{{{ημέρα}}} + 1 month}}]]</center>}}}}<!--
-->{{ΜήναςΗμερολόγιον|date={{CURRENTYEAR}}-{{{μήνας}}}-1|float=right}}<!--
-->{{Ημέρα τη χρονίας/Κατηγορίας|ημέρα={{{ημέρα}}}|μήνας={{{μήνας}}}}}<!--
--></includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
m98bnf3nuny92qxnbfez9gxg3gwu6zj
Πρότυπον:Str find
10
1399
19135
2011-02-25T03:01:22Z
Budelberger
25
Création.
19135
wikitext
text/x-wiki
{{#titleparts: {{str find/logic|{{{1|}}}|{{{2|}}}|{{str len|*{{{2|}}}*}}-2}}-1|1}}<!--
--><noinclude>{{Documentation}}</noinclude>
j88y1yfnwt3yyzwcseg6lffa1zkq9c7
Πρότυπον:Str find/logic
10
1400
19136
2011-02-25T03:01:53Z
Budelberger
25
Création.
19136
wikitext
text/x-wiki
{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}}}}}}* | *{{{2}}}* | 1/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 1}}}}* | *{{str left|{{{1}}}|1}}{{{2}}}* | 2/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 2}}}}* | *{{str left|{{{1}}}|2}}{{{2}}}* | 3/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 3}}}}* | *{{str left|{{{1}}}|3}}{{{2}}}* | 4/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 4}}}}* | *{{str left|{{{1}}}|4}}{{{2}}}* | 5/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 5}}}}* | *{{str left|{{{1}}}|5}}{{{2}}}* | 6/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 6}}}}* | *{{str left|{{{1}}}|6}}{{{2}}}* | 7/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 7}}}}* | *{{str left|{{{1}}}|7}}{{{2}}}* | 8/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 8}}}}* | *{{str left|{{{1}}}|8}}{{{2}}}* | 9/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 9}}}}* | *{{str left|{{{1}}}|9}}{{{2}}}* | 10/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 10}}}}* | *{{str left|{{{1}}}|10}}{{{2}}}* | 11/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 11}}}}* | *{{str left|{{{1}}}|11}}{{{2}}}* | 12/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 12}}}}* | *{{str left|{{{1}}}|12}}{{{2}}}* | 13/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 13}}}}* | *{{str left|{{{1}}}|13}}{{{2}}}* | 14/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 14}}}}* | *{{str left|{{{1}}}|14}}{{{2}}}* | 15/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 15}}}}* | *{{str left|{{{1}}}|15}}{{{2}}}* | 16/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 16}}}}* | *{{str left|{{{1}}}|16}}{{{2}}}* | 17/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 17}}}}* | *{{str left|{{{1}}}|17}}{{{2}}}* | 18/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 18}}}}* | *{{str left|{{{1}}}|18}}{{{2}}}* | 19/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 19}}}}* | *{{str left|{{{1}}}|19}}{{{2}}}* | 20/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 20}}}}* | *{{str left|{{{1}}}|20}}{{{2}}}* | 21/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 21}}}}* | *{{str left|{{{1}}}|21}}{{{2}}}* | 22/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 22}}}}* | *{{str left|{{{1}}}|22}}{{{2}}}* | 23/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 23}}}}* | *{{str left|{{{1}}}|23}}{{{2}}}* | 24/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 24}}}}* | *{{str left|{{{1}}}|24}}{{{2}}}* | 25/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 25}}}}* | *{{str left|{{{1}}}|25}}{{{2}}}* | 26/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 26}}}}* | *{{str left|{{{1}}}|26}}{{{2}}}* | 27/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 27}}}}* | *{{str left|{{{1}}}|27}}{{{2}}}* | 28/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 28}}}}* | *{{str left|{{{1}}}|28}}{{{2}}}* | 29/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 29}}}}* | *{{str left|{{{1}}}|29}}{{{2}}}* | 30/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 30}}}}* | *{{str left|{{{1}}}|30}}{{{2}}}* | 31/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 31}}}}* | *{{str left|{{{1}}}|31}}{{{2}}}* | 32/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 32}}}}* | *{{str left|{{{1}}}|32}}{{{2}}}* | 33/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 33}}}}* | *{{str left|{{{1}}}|33}}{{{2}}}* | 34/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 34}}}}* | *{{str left|{{{1}}}|34}}{{{2}}}* | 35/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 35}}}}* | *{{str left|{{{1}}}|35}}{{{2}}}* | 36/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 36}}}}* | *{{str left|{{{1}}}|36}}{{{2}}}* | 37/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 37}}}}* | *{{str left|{{{1}}}|37}}{{{2}}}* | 38/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 38}}}}* | *{{str left|{{{1}}}|38}}{{{2}}}* | 39/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 39}}}}* | *{{str left|{{{1}}}|39}}{{{2}}}* | 40/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 40}}}}* | *{{str left|{{{1}}}|40}}{{{2}}}* | 41/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 41}}}}* | *{{str left|{{{1}}}|41}}{{{2}}}* | 42/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 42}}}}* | *{{str left|{{{1}}}|42}}{{{2}}}* | 43/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 43}}}}* | *{{str left|{{{1}}}|43}}{{{2}}}* | 44/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 44}}}}* | *{{str left|{{{1}}}|44}}{{{2}}}* | 45/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 45}}}}* | *{{str left|{{{1}}}|45}}{{{2}}}* | 46/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 46}}}}* | *{{str left|{{{1}}}|46}}{{{2}}}* | 47/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 47}}}}* | *{{str left|{{{1}}}|47}}{{{2}}}* | 48/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 48}}}}* | *{{str left|{{{1}}}|48}}{{{2}}}* | 49/}}<!--
-->{{#ifeq: *{{str left|{{{1}}}|{{#expr: {{{3}}} + 49}}}}* | *{{str left|{{{1}}}|49}}{{{2}}}* | 50/}}<!--
--><noinclude>{{Documentation}}</noinclude>
olwom9jdltgh1l5bbbtq83vpnz2egvx
Πρότυπον:Str len
10
1401
19137
2011-02-25T03:02:38Z
Budelberger
25
Création.
19137
wikitext
text/x-wiki
{{{{{|safesubst:}}}#ifeq: x{{{{{|safesubst:}}}#if:x|{{{1|}}}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| 500 }} <noinclude><!-- str >= 500 --></noinclude>
| 500
| {{{{{|safesubst:}}}str len/core <noinclude><!-- xx0-xx9 --></noinclude>
|{{{{{|safesubst:}}}#if:x|{{{1|}}}}}
| {{{{{|safesubst:}}}str len/core <noinclude><!-- x0x-x9x --></noinclude>
|{{{{{|safesubst:}}}#if:x|{{{1|}}}}}
| {{{{{|safesubst:}}}str len/core <noinclude><!-- 0xx-4xx --></noinclude>
|{{{{{|safesubst:}}}#if:x|{{{1|}}}}}
| | hundreds
}}| tens
}}| ones
}}
}}<!--
--><noinclude>{{Documentation}}</noinclude>
5abrmrqmzng0bbezkp5j4fm9z8p9kom
Πρότυπον:Str len/core
10
1402
19138
2011-02-25T03:03:11Z
Budelberger
25
Création.
19138
wikitext
text/x-wiki
{{{{{|safesubst:}}}#switch: {{{3|}}}
| hundreds = <noinclude><!-- 0xx-4xx, using linear search since most strings will probably be less than 100 bytes. --></noinclude>
{{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| 100 }} <noinclude><!--str >= x--></noinclude>
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| 200 }}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| 300 }}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| 400 }}
| 4
| 3
}}
| 2
}}
| 1
}}
| <noinclude><!-- Don't return 0, since tens and ones don't want a leading 0 in parameter 2. --></noinclude>
}}
| tens = <noinclude><!-- x0x-x9x, using linear search for 0x-3x, binary search for 4x-9x, since most strings will probably be 0-39 bytes. --></noinclude>
{{{2|}}}{{
{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}10 }} <noinclude><!--str >= x--></noinclude>
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}20 }}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}30 }}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}40 }}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}60 }}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}80 }}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}90 }}
| 9
| 8
}}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}70 }}
| 7
| 6
}}
}}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}50 }}
| 5
| 4
}}
}}
| 3
}}
| 2
}}
| 1
}}
| {{{{{|safesubst:}}}#if:{{{2|}}}|0}} <noinclude><!-- Only return 0 if >=100, since ones don't want a leading 0 in parameter 2. --></noinclude>
}}
| ones = <noinclude><!-- xx0-xx9, using binary search. --></noinclude>
{{{2|}}}{{
{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}4 }} <noinclude><!--str >= x--></noinclude>
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}6 }}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}8 }}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}9 }}
| 9
| 8
}}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}7 }}
| 7
| 6
}}
}}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}5 }}
| 5
| 4
}}
}}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}2 }}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}3 }}
| 3
| 2
}}
| {{{{{|safesubst:}}}#ifeq: x{{{1|}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}}1 }}
| 1
| 0
}}
}}
}}
}}<!--
--><noinclude>{{Documentation}}</noinclude>
0n2akycaj4x8wq6bxbht2featuk3wen
Πρότυπον:Str left
10
1403
36950
19139
2025-12-16T13:30:09Z
Εὐθυμένης
2777
36950
wikitext
text/x-wiki
<includeonly>{{safesubst:padleft:|{{{2|1}}}|{{{1}}}}}</includeonly><noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
</noinclude>
3rrdme1fpv80h1kdk9b7zwlkqd34dfk
Πρότυπον:Str index any
10
1404
19140
2011-02-25T03:04:54Z
Budelberger
25
Création.
19140
wikitext
text/x-wiki
<includeonly>{{{{{|safesubst:}}}str ≥ len
| 1 = {{{1|}}}
| 2 = {{{2|0}}}
| 3 = {{{{{|safesubst:}}}str index/getchar |nocategory={{{nocategory|}}} |*{{{{{|safesubst:}}}str left |nocategory={{{nocategory|}}} |{{{1|}}}|{{{2|0}}}}}*|{{{{{|safesubst:}}}str left |nocategory={{{nocategory|}}} |{{{1|}}}|{{{{{|safesubst:}}}#expr:{{{2|0}}}-1}}}}}}
| 4 = <noinclude><!--IGNORE: {Str index any} - End of string.--></noinclude>
}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
tc0srn13nt0bbhpp04ab3zv6p8392wd
Πρότυπον:Str ≥ len
10
1405
19141
2011-02-25T03:05:49Z
Budelberger
25
Création.
19141
wikitext
text/x-wiki
{{{{{|safesubst:}}}#ifeq: x{{{{{|safesubst:}}}#if:x|{{{1|}}}}} | x{{{{{|safesubst:}}}padleft:{{{1|}}}| {{{2|}}} }} <noinclude><!-- str >= len --></noinclude>
| {{{3|}}}
| {{{4|}}}
}}<!--
--><noinclude>{{Documentation}}</noinclude>
5xf86htlmge49bm5s4m7k23cgovprf0
Πρότυπον:Str index/getchar
10
1406
19143
2011-02-25T03:32:48Z
Budelberger
25
Création.
19143
wikitext
text/x-wiki
<includeonly>{{{{{|safesubst:}}}#switch: {{{1}}}
| *{{{2}}} * = <noinclude><!--matches a space--></noinclude>
| *{{{2}}}Α* = Α
| *{{{2}}}Β* = Β
| *{{{2}}}Γ* = Γ
| *{{{2}}}Δ* = Δ
| *{{{2}}}Ε* = Ε
| *{{{2}}}Ζ* = Ζ
| *{{{2}}}Η* = Η
| *{{{2}}}Θ* = Θ
| *{{{2}}}Ι* = Ι
| *{{{2}}}Κ* = Κ
| *{{{2}}}Λ* = Λ
| *{{{2}}}Μ* = Μ
| *{{{2}}}Ν* = Ν
| *{{{2}}}Ξ* = Ξ
| *{{{2}}}Ο* = Ο
| *{{{2}}}Π* = Π
| *{{{2}}}Ρ* = Ρ
| *{{{2}}}Σ* = Σ
| *{{{2}}}Τ* = Τ
| *{{{2}}}Υ* = Υ
| *{{{2}}}Φ* = Φ
| *{{{2}}}Χ* = Χ
| *{{{2}}}Ψ* = Ψ
| *{{{2}}}Ω* = Ω<noinclude><!--
--></noinclude>
| *{{{2}}}Ά* = Ά
| *{{{2}}}Έ* = Έ
| *{{{2}}}Ή* = Ή
| *{{{2}}}Ί* = Ί
| *{{{2}}}Ό* = Ό
| *{{{2}}}Ύ* = Ύ
| *{{{2}}}Ώ* = Ώ<noinclude><!--
--></noinclude>
| *{{{2}}}α* = α
| *{{{2}}}β* = β
| *{{{2}}}γ* = γ
| *{{{2}}}δ* = δ
| *{{{2}}}ε* = ε
| *{{{2}}}ζ* = ζ
| *{{{2}}}η* = η
| *{{{2}}}θ* = θ
| *{{{2}}}ι* = ι
| *{{{2}}}κ* = κ
| *{{{2}}}λ* = λ
| *{{{2}}}μ* = μ
| *{{{2}}}ν* = ν
| *{{{2}}}ξ* = ξ
| *{{{2}}}ο* = ο
| *{{{2}}}π* = π
| *{{{2}}}ρ* = ρ
| *{{{2}}}σ* = σ
| *{{{2}}}ς* = ς
| *{{{2}}}τ* = τ
| *{{{2}}}υ* = υ
| *{{{2}}}φ* = φ
| *{{{2}}}χ* = χ
| *{{{2}}}ψ* = ψ
| *{{{2}}}ω* = ω<noinclude><!--
--></noinclude>
| *{{{2}}}ά* = ά
| *{{{2}}}έ* = έ
| *{{{2}}}ή* = ή
| *{{{2}}}ί* = ί
| *{{{2}}}ό* = ό
| *{{{2}}}ύ* = ύ
| *{{{2}}}ώ* = ώ<noinclude><!--
--></noinclude>
|*{{{2}}}a*=a
|*{{{2}}}b*=b
|*{{{2}}}c*=c
|*{{{2}}}d*=d
|*{{{2}}}e*=e
|*{{{2}}}f*=f
|*{{{2}}}g*=g
|*{{{2}}}h*=h
|*{{{2}}}i*=i
|*{{{2}}}j*=j
|*{{{2}}}k*=k
|*{{{2}}}l*=l
|*{{{2}}}m*=m
|*{{{2}}}n*=n
|*{{{2}}}o*=o
|*{{{2}}}p*=p
|*{{{2}}}q*=q
|*{{{2}}}r*=r
|*{{{2}}}s*=s
|*{{{2}}}t*=t
|*{{{2}}}u*=u
|*{{{2}}}v*=v
|*{{{2}}}w*=w
|*{{{2}}}x*=x
|*{{{2}}}y*=y
|*{{{2}}}z*=z<noinclude><!--
--></noinclude>
|*{{{2}}}A*=A
|*{{{2}}}B*=B
|*{{{2}}}C*=C
|*{{{2}}}D*=D
|*{{{2}}}E*=E
|*{{{2}}}F*=F
|*{{{2}}}G*=G
|*{{{2}}}H*=H
|*{{{2}}}I*=I
|*{{{2}}}J*=J
|*{{{2}}}K*=K
|*{{{2}}}L*=L
|*{{{2}}}M*=M
|*{{{2}}}N*=N
|*{{{2}}}O*=O
|*{{{2}}}P*=P
|*{{{2}}}Q*=Q
|*{{{2}}}R*=R
|*{{{2}}}S*=S
|*{{{2}}}T*=T
|*{{{2}}}U*=U
|*{{{2}}}V*=V
|*{{{2}}}W*=W
|*{{{2}}}X*=X
|*{{{2}}}Y*=Y
|*{{{2}}}Z*=Z<noinclude><!--
--></noinclude>
|*{{{2}}}1*=1
|*{{{2}}}2*=2
|*{{{2}}}3*=3
|*{{{2}}}4*=4
|*{{{2}}}5*=5
|*{{{2}}}6*=6
|*{{{2}}}7*=7
|*{{{2}}}8*=8
|*{{{2}}}9*=9
|*{{{2}}}0*=0<noinclude><!--
--></noinclude>
|*{{{2}}}!*=!
|*{{{2}}}@*=@
|*{{{2}}}#*=#
|*{{{2}}}$*=$
|*{{{2}}}%*=%
|*{{{2}}}^*=^
|*{{{2}}}&*=&
|*{{{2}}}**=*
|*{{{2}}}(*=(
|*{{{2}}})*=)<noinclude><!--
--></noinclude>
|*{{{2}}}.*=.
|*{{{2}}},*=,
|*{{{2}}}<*=<
|*{{{2}}}>*=>
|*{{{2}}}:*=:
|*{{{2}}};*=;
|*{{{2}}}[*=[
|*{{{2}}}]*=]
|*{{{2}}}'*='
|*{{{2}}}"*="
|*{{{2}}}?*=?
|*{{{2}}}/*=/
|*{{{2}}}\*=\
|*{{{2}}}{*={
|*{{{2}}}}*=}
|*{{{2}}}~*=~
|*{{{2}}}`*=`
|*{{{2}}}{{=}}*={{=}}
|*{{{2}}}-*=-
|*{{{2}}}{{!}}*={{!}}
|*{{{2}}}+*=+
|*{{{2}}}_*=_
|*{{{2}}}♣*=♣
|*{{{2}}}♦*=♦
|*{{{2}}}♥*=♥
|*{{{2}}}♠*=♠<noinclude><!--
--></noinclude>
|*{{{2}}}Á*=Á
|*{{{2}}}á*=á
|*{{{2}}}À*=À
|*{{{2}}}à*=à
|*{{{2}}}Â*=Â
|*{{{2}}}â*=â
|*{{{2}}}Ä*=Ä
|*{{{2}}}ä*=ä
|*{{{2}}}Ǎ*=Ǎ
|*{{{2}}}ǎ*=ǎ
|*{{{2}}}Ă*=Ă
|*{{{2}}}ă*=ă
|*{{{2}}}Ā*=Ā
|*{{{2}}}ā*=ā
|*{{{2}}}Ã*=Ã
|*{{{2}}}ã*=ã
|*{{{2}}}Å*=Å
|*{{{2}}}å*=å
|*{{{2}}}Ą*=Ą
|*{{{2}}}ą*=ą
|*{{{2}}}Æ*=Æ
|*{{{2}}}æ*=æ<noinclude><!--
--></noinclude>
|*{{{2}}}Ć*=Ć
|*{{{2}}}ć*=ć
|*{{{2}}}Ċ*=Ċ
|*{{{2}}}ċ*=ċ
|*{{{2}}}Ĉ*=Ĉ
|*{{{2}}}ĉ*=ĉ
|*{{{2}}}Č*=Č
|*{{{2}}}č*=č
|*{{{2}}}Ç*=Ç
|*{{{2}}}ç*=ç
|*{{{2}}}Ď*=Ď
|*{{{2}}}ď*=ď
|*{{{2}}}Đ*=Đ
|*{{{2}}}đ*=đ
|*{{{2}}}Ð*=Ð
|*{{{2}}}ð*=ð
|*{{{2}}}É*=É
|*{{{2}}}é*=é
|*{{{2}}}È*=È
|*{{{2}}}è*=è
|*{{{2}}}Ė*=Ė
|*{{{2}}}ė*=ė
|*{{{2}}}Ê*=Ê
|*{{{2}}}ê*=ê
|*{{{2}}}Ë*=Ë
|*{{{2}}}ë*=ë
|*{{{2}}}Ě*=Ě
|*{{{2}}}ě*=ě
|*{{{2}}}Ĕ*=Ĕ
|*{{{2}}}ĕ*=ĕ
|*{{{2}}}Ē*=Ē
|*{{{2}}}ē*=ē
|*{{{2}}}Ẽ*=Ẽ
|*{{{2}}}ẽ*=ẽ
|*{{{2}}}Ę*=Ę
|*{{{2}}}ę*=ę
|*{{{2}}}Ġ*=Ġ
|*{{{2}}}ġ*=ġ
|*{{{2}}}Ĝ*=Ĝ
|*{{{2}}}ĝ*=ĝ
|*{{{2}}}Ğ*=Ğ
|*{{{2}}}ğ*=ğ
|*{{{2}}}Ģ*=Ģ
|*{{{2}}}ģ*=ģ
|*{{{2}}}Ĥ*=Ĥ
|*{{{2}}}ĥ*=ĥ
|*{{{2}}}Ħ*=Ħ
|*{{{2}}}ħ*=ħ
|*{{{2}}}İ*=İ
|*{{{2}}}ı*=ı
|*{{{2}}}Í*=Í
|*{{{2}}}í*=í
|*{{{2}}}Ì*=Ì
|*{{{2}}}ì*=ì
|*{{{2}}}Î*=Î
|*{{{2}}}î*=î
|*{{{2}}}Ï*=Ï
|*{{{2}}}ï*=ï
|*{{{2}}}Ǐ*=Ǐ
|*{{{2}}}ǐ*=ǐ
|*{{{2}}}Ĭ*=Ĭ
|*{{{2}}}ĭ*=ĭ
|*{{{2}}}Ī*=Ī
|*{{{2}}}ī*=ī
|*{{{2}}}Ĩ*=Ĩ
|*{{{2}}}ĩ*=ĩ
|*{{{2}}}Į*=Į
|*{{{2}}}į*=į
|*{{{2}}}Ĵ*=Ĵ
|*{{{2}}}ĵ*=ĵ
|*{{{2}}}Ķ*=Ķ
|*{{{2}}}ķ*=ķ
|*{{{2}}}Ĺ*=Ĺ
|*{{{2}}}ĺ*=ĺ
|*{{{2}}}Ŀ*=Ŀ
|*{{{2}}}ŀ*=ŀ
|*{{{2}}}Ľ*=Ľ
|*{{{2}}}ľ*=ľ
|*{{{2}}}Ļ*=Ļ
|*{{{2}}}ļ*=ļ
|*{{{2}}}Ł*=Ł
|*{{{2}}}ł*=ł
|*{{{2}}}Ń*=Ń
|*{{{2}}}ń*=ń
|*{{{2}}}Ň*=Ň
|*{{{2}}}ň*=ň
|*{{{2}}}Ñ*=Ñ
|*{{{2}}}ñ*=ñ
|*{{{2}}}Ņ*=Ņ
|*{{{2}}}ņ*=ņ
|*{{{2}}}Ṇ*=Ṇ
|*{{{2}}}ṇ*=ṇ
|*{{{2}}}Ó*=Ó
|*{{{2}}}ó*=ó
|*{{{2}}}Ò*=Ò
|*{{{2}}}ò*=ò
|*{{{2}}}Ô*=Ô
|*{{{2}}}ô*=ô
|*{{{2}}}Ö*=Ö
|*{{{2}}}ö*=ö
|*{{{2}}}Ǒ*=Ǒ
|*{{{2}}}ǒ*=ǒ
|*{{{2}}}Ŏ*=Ŏ
|*{{{2}}}ŏ*=ŏ
|*{{{2}}}Ō*=Ō
|*{{{2}}}ō*=ō
|*{{{2}}}Õ*=Õ
|*{{{2}}}õ*=õ
|*{{{2}}}Ǫ*=Ǫ
|*{{{2}}}ǫ*=ǫ
|*{{{2}}}Ő*=Ő
|*{{{2}}}ő*=ő
|*{{{2}}}Ø*=Ø
|*{{{2}}}ø*=ø
|*{{{2}}}Œ*=Œ
|*{{{2}}}œ*=œ
|*{{{2}}}Ŕ*=Ŕ
|*{{{2}}}ŕ*=ŕ
|*{{{2}}}Ř*=Ř
|*{{{2}}}ř*=ř
|*{{{2}}}Ŗ*=Ŗ
|*{{{2}}}ŗ*=ŗ
|*{{{2}}}Ṛ*=Ṛ
|*{{{2}}}ṛ*=ṛ
|*{{{2}}}Ṝ*=Ṝ
|*{{{2}}}ṝ*=ṝ
|*{{{2}}}Ś*=Ś
|*{{{2}}}ś*=ś
|*{{{2}}}Ŝ*=Ŝ
|*{{{2}}}ŝ*=ŝ
|*{{{2}}}Š*=Š
|*{{{2}}}š*=š
|*{{{2}}}Ş*=Ş
|*{{{2}}}ş*=ş
|*{{{2}}}Ṣ*=Ṣ
|*{{{2}}}ṣ*=ṣ
|*{{{2}}}ß*=ß
|*{{{2}}}Ť*=Ť
|*{{{2}}}ť*=ť
|*{{{2}}}Ţ*=Ţ
|*{{{2}}}ţ*=ţ
|*{{{2}}}Ú*=Ú
|*{{{2}}}ú*=ú
|*{{{2}}}Ù*=Ù
|*{{{2}}}ù*=ù
|*{{{2}}}Û*=Û
|*{{{2}}}û*=û
|*{{{2}}}Ü*=Ü
|*{{{2}}}ü*=ü
|*{{{2}}}Ǔ*=Ǔ
|*{{{2}}}ǔ*=ǔ
|*{{{2}}}Ŭ*=Ŭ
|*{{{2}}}ŭ*=ŭ
|*{{{2}}}Ū*=Ū
|*{{{2}}}ū*=ū
|*{{{2}}}Ũ*=Ũ
|*{{{2}}}ũ*=ũ
|*{{{2}}}Ů*=Ů
|*{{{2}}}ů*=ů
|*{{{2}}}Ų*=Ų
|*{{{2}}}ų*=ų
|*{{{2}}}Ű*=Ű
|*{{{2}}}ű*=ű
|*{{{2}}}Ǘ*=Ǘ
|*{{{2}}}ǘ*=ǘ
|*{{{2}}}Ǜ*=Ǜ
|*{{{2}}}ǜ*=ǜ
|*{{{2}}}Ǚ*=Ǚ
|*{{{2}}}ǚ*=ǚ
|*{{{2}}}Ǖ*=Ǖ
|*{{{2}}}ǖ*=ǖ
|*{{{2}}}Ŵ*=Ŵ
|*{{{2}}}ŵ*=ŵ
|*{{{2}}}Ý*=Ý
|*{{{2}}}ý*=ý
|*{{{2}}}Ŷ*=Ŷ
|*{{{2}}}ŷ*=ŷ
|*{{{2}}}Ÿ*=Ÿ
|*{{{2}}}ÿ*=ÿ
|*{{{2}}}Ỹ*=Ỹ
|*{{{2}}}ỹ*=ỹ
|*{{{2}}}Ź*=Ź
|*{{{2}}}ź*=ź
|*{{{2}}}Ż*=Ż
|*{{{2}}}ż*=ż
|*{{{2}}}Ž*=Ž
|*{{{2}}}ž*=ž
|*{{{2}}}ß*=ß
|*{{{2}}}Ð*=Ð
|*{{{2}}}ð*=ð
|*{{{2}}}Þ*=Þ
|*{{{2}}}þ*=þ
|*{{{2}}}ɪ*=ɪ
|*{{{2}}}ɛ*=ɛ
|*{{{2}}}æ*=æ
|*{{{2}}}ɒ*=ɒ
|*{{{2}}}ʌ*=ʌ
|*{{{2}}}ʊ*=ʊ
|*{{{2}}}ɜ*=ɜ
|*{{{2}}}ː*=ː
|*{{{2}}}ɑ*=ɑ
|*{{{2}}}ɔ*=ɔ
|*{{{2}}}ə*=ə
|*{{{2}}}ɨ*=ɨ
|*{{{2}}}ˈ*=ˈ
|*{{{2}}}ˌ*=ˌ
|*{{{2}}}ˑ*=ˑ
|*{{{2}}}θ*=θ
|*{{{2}}}ð*=ð
|*{{{2}}}ʃ*=ʃ
|*{{{2}}}ʒ*=ʒ
|*{{{2}}}ŋ*=ŋ
|{{FormattingError |nocategory={{{nocategory|}}} |Str_index/getchar - Unknown code "{{{1}}}"}}
}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
rxfl8hz1id8esine3pk7ug8255nj2od
Πρότυπον:Ημέρα τη χρονίας/Κατηγορίας
10
1408
19286
2011-03-02T03:09:44Z
Budelberger
25
Création.
19286
wikitext
text/x-wiki
<includeonly>{{#if: {{NAMESPACE}} | | [[Κατηγορίαν:{{PAGENAME}}| ]] [[Κατηγορίαν:Ημέρας τη χρονίας|&#{{#expr: 912 + {{{μήνας}}}}};{{padleft: {{{ημέρα}}}|2|0}}]]}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
nueomarg77v6ezu1xxrr7udps85czj4
Πρότυπον:BBC: On This Day
10
1409
19365
19288
2011-03-08T22:06:11Z
Budelberger
25
19365
wikitext
text/x-wiki
[http://news.bbc.co.uk/onthisday/<includeonly>hi/dates/stories/{{#switch: {{lc: {{{2|{{{μήνας|{{Second of two words}}}}}}}}}}
| 01 | 1 | i | Ⅰ | ⅰ | καλανταρί | καλαντάρτς = january
| 02 | 2 | ii | Ⅱ | ⅱ | κούντουρονος | κούντουρος = february
| 03 | 3 | iii | Ⅲ | ⅲ | μαρτ | μάρτ | μαρτί | μαρτς | μάρτς = march
| 04 | 4 | iv | Ⅳ | ⅳ | απρίλ | απρίλτ | απρίλτς = april
| 05 | 5 | v | Ⅴ | ⅴ | καλομηνά | καλομηνάς = may
| 06 | 6 | vi | Ⅵ | ⅵ | κερασινού | κερασινός = june
| 07 | 7 | vii | Ⅶ | ⅶ | χορτοθερί | χορτοθέρτ | χορτοθέρτς = july
| 08 | 8 | viii | Ⅷ | ⅷ | αλωναρί | aλωναρί | αλωνάρτς | aλωνάρτς = august
| 09 | 9 | ix | Ⅸ | ⅸ | σταυρί | σταυρίτες = september
| 10 | x | Ⅹ | ⅹ | τρυγομηνά | τρυγομηνάς = october
| 11 | xi | Ⅺ | ⅺ | ⅩⅠ | ⅹⅰ | αεργί | αεργίτες = november
| 12 | xii | Ⅻ | ⅻ | ⅩⅠⅠ | ⅹⅰⅰ | χριστουγενναρί | χριστουγεννάρτς = december
| #default = {{{2}}}}}/{{#expr: {{{1|{{{ημέρα|{{First word}}}}}}}}}}/default.stm</includeonly> BBC: On This Day] {{#if: {{{3|{{{eng|}}}}}} | | ({{icon eng}})}}<!--
--><noinclude>{{Documentation}}</noinclude>
b3synm0ze288ot0dws7e78wdt832xkh
9 Χορτοθερί
0
1410
37325
32029
2025-12-16T19:51:06Z
Εὐθυμένης
2777
37325
wikitext
text/x-wiki
----
{{ΗμερολόγιοΣεΠίνακα|7}}
Η '''9 τη Χορτοθερί''' εν το 190ον το ημέραν τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]] (έν το 191ον ημέρα σο δίσεκτον τη χρονία). 175 ημέρας απομέν'νε ουσνα τελείται η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Συνδέζμαι ==
{{Commons|July 9}}
* {{BBC: On This Day}}
* {{The New York Times: On This Day}}
{{Μήνας}}
kjcr09tm1o3gd8psop3idjj6mjbcm0o
Πρότυπον:Μήνας/doc
10
1411
19290
2011-03-02T04:09:48Z
Budelberger
25
Création.
19290
wikitext
text/x-wiki
<includeonly>
[[de:Vorlage:Navigationsleiste Monate]]
[[dsb:Pśedłoga:Mjasece]]
[[el:Πρότυπο:Μήνες]]
[[en:Template:Month header]]
[[fr:Modèle:Mois]]
[[hsb:Předłoha:Měsacy]]
[[it:Template:Mesi]]
[[nah:Plantilla:Meses]]
[[pl:Szablon:Miesiące]]
</includeonly>
64g186jlyf7x312ij84gozfn7y7ry59
Πρότυπον:Clear
10
1412
36373
31467
2025-12-15T14:53:35Z
Εὐθυμένης
2777
36373
wikitext
text/x-wiki
<div style="clear:{{{1|both}}};"></div><noinclude>{{Documentation}}</noinclude>
iomjbs5kovlcxi46oobvlsfxgy62i3c
10 Χορτοθερί
0
1413
35455
35454
2023-08-10T01:02:31Z
Wutsje
248
rv cross-wiki spam, see https://guc.toolforge.org/?by=date&user=92.46.159.43
35455
wikitext
text/x-wiki
{{Ημέρα τη χρονίας}}
Η '''10 τη Χορτοθερί''' εν το 191ον το ημέραν τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]] (έν το 192ον ημέρα σο δίσεκτον τη χρονία). 174 ημέρας απομέν'νε ουσνα τελείται η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Συνδέζμαι ==
{{Commons|July 10}}
* {{BBC: On This Day}}
* {{The New York Times: On This Day}}
{{Πρότυπον:Μήνας}}
t46961d7rnmsadtkhqp3p7v8x8euws5
Πρότυπον:ΜήναςΗμερολόγιον/Εβδομάδα
10
1415
19368
19356
2011-03-08T22:14:54Z
Budelberger
25
19368
wikitext
text/x-wiki
<includeonly>{{#ifexpr: {{{day}}} + 6 > 0 and {{{day}}} <= {{{monthdays}}} |
{{!-}}
{{!}} {{#ifexpr: {{{day}}} > 0 and {{{day}}} <= {{{monthdays}}} | [[{{{day}}} {{#time: xg|{{{date}}}}}|{{{day}}}]] | }}
{{!}} {{#ifexpr: {{{day}}} + 1 > 0 and {{{day}}} + 1 <= {{{monthdays}}} | [[{{#expr: {{{day}}} + 1}} {{#time: xg|{{{date}}}}}|{{#expr: {{{day}}} + 1}}]] | }}
{{!}} {{#ifexpr: {{{day}}} + 2 > 0 and {{{day}}} + 2 <= {{{monthdays}}} | [[{{#expr: {{{day}}} + 2}} {{#time: xg|{{{date}}}}}|{{#expr: {{{day}}} + 2}}]] | }}
{{!}} {{#ifexpr: {{{day}}} + 3 > 0 and {{{day}}} + 3 <= {{{monthdays}}} | [[{{#expr: {{{day}}} + 3}} {{#time: xg|{{{date}}}}}|{{#expr: {{{day}}} + 3}}]] | }}
{{!}} {{#ifexpr: {{{day}}} + 4 > 0 and {{{day}}} + 4 <= {{{monthdays}}} | [[{{#expr: {{{day}}} + 4}} {{#time: xg|{{{date}}}}}|{{#expr: {{{day}}} + 4}}]] | }}
{{!}} {{#ifexpr: {{{day}}} + 5 > 0 and {{{day}}} + 5 <= {{{monthdays}}} | [[{{#expr: {{{day}}} + 5}} {{#time: xg|{{{date}}}}}|{{#expr: {{{day}}} + 5}}]] | }}
{{!}} {{#ifexpr: {{{day}}} + 6 > 0 and {{{day}}} + 6 <= {{{monthdays}}} | [[{{#expr: {{{day}}} + 6}} {{#time: xg|{{{date}}}}}|{{#expr: {{{day}}} + 6}}]] | }}
{{!-}}
}}</includeonly><!--
--><noinclude>{{Documentation}}</noinclude>
ojh3vpr8j18opieqrxqc0rjpo7ky2iz
Πρότυπον:ΜήναςΗμερολόγιον
10
1416
19357
2011-03-08T01:18:34Z
Budelberger
25
Création.
19357
wikitext
text/x-wiki
{|class="toccolours" style="float:{{{float|none}}}; text-align:center;" cellpadding=1 cellspacing=1
|- style="{{{titlestyle|background-color: #ccccff;}}}"
|[[{{#time: F | {{{date|}}} - 1 month}}|<<]]
|colspan="5" style="text-align: center;"| '''[[{{#time: F | {{{date|}}}}}]]'''
|[[{{#time: F | {{{date|}}} + 1 month}}|>>]]
|- style="{{{titlestyle|background-color: #ccccff;}}}"
|- style="border: none; {{{weekstyle|background-color: #ccccff;}}}"
| style="width:14%;" | [[Κερεκήν|Κερ.]]
| style="width:14%;" | [[Δευτέραν|Δευτ.]]
| style="width:14%;" | [[Τρίτ]]
| style="width:14%;" | [[Τετράδ|Τετρ.]]
| style="width:14%;" | [[Πέφτ]]
| style="width:14%;" | [[Παρασκευήν|Παρ.]]
| style="width:14%;" | [[Σάββαν|Σάβ.]]
{{ΜήναςΗμερολόγιον/Εβδομάδα|day={{#expr:01-{{#time:N|{{{date|{{#time:Y-m-01}}}}}}}}}|monthdays={{#time:t|{{{date|}}}}}|date={{#time:Y-m-01|{{{date|}}}}}}}
{{ΜήναςΗμερολόγιον/Εβδομάδα|day={{#expr:08-{{#time:N|{{{date|{{#time:Y-m-01}}}}}}}}}|monthdays={{#time:t|{{{date|}}}}}|date={{#time:Y-m-01|{{{date|}}}}}}}
{{ΜήναςΗμερολόγιον/Εβδομάδα|day={{#expr:15-{{#time:N|{{{date|{{#time:Y-m-01}}}}}}}}}|monthdays={{#time:t|{{{date|}}}}}|date={{#time:Y-m-01|{{{date|}}}}}}}
{{ΜήναςΗμερολόγιον/Εβδομάδα|day={{#expr:22-{{#time:N|{{{date|{{#time:Y-m-01}}}}}}}}}|monthdays={{#time:t|{{{date|}}}}}|date={{#time:Y-m-01|{{{date|}}}}}}}
{{ΜήναςΗμερολόγιον/Εβδομάδα|day={{#expr:29-{{#time:N|{{{date|{{#time:Y-m-01}}}}}}}}}|monthdays={{#time:t|{{{date|}}}}}|date={{#time:Y-m-01|{{{date|}}}}}}}
{{ΜήναςΗμερολόγιον/Εβδομάδα|day={{#expr:36-{{#time:N|{{{date|{{#time:Y-m-01}}}}}}}}}|monthdays={{#time:t|{{{date|}}}}}|date={{#time:Y-m-01|{{{date|}}}}}}}
|-
|colspan="7"|
{{#if: {{{EndNote|}}} | {{!}}colspan="7"{{!}}{{{EndNote}}}}}
|- style="{{{titlestyle|background-color: #ccccff;}}}"
|colspan="7"| '''[[{{#time: Y | {{{date|}}}}}|{{#time: xrY | {{{date|}}}}}]]'''
|}<noinclude><!--
--><noinclude>{{Documentation}}</noinclude>
37l4niyihy4vpuk5ievwn5j79yozn7d
Πρότυπον:The New York Times: On This Day
10
1417
19359
2011-03-08T01:38:03Z
Budelberger
25
Création.
19359
wikitext
text/x-wiki
[http://learning.blogs.nytimes.com/on-this-day/<includeonly>{{#switch: {{lc: {{{2|{{{μήνας|{{Second of two words}}}}}}}}}}
| 01 | 1 | i | Ⅰ | ⅰ | καλανταρί | καλαντάρτς = january
| 02 | 2 | ii | Ⅱ | ⅱ | κούντουρονος | κούντουρος = february
| 03 | 3 | iii | Ⅲ | ⅲ | μαρτ | μάρτ | μαρτί | μαρτς | μάρτς = march
| 04 | 4 | iv | Ⅳ | ⅳ | απρίλ | απρίλτ | απρίλτς = april
| 05 | 5 | v | Ⅴ | ⅴ | καλομηνά | καλομηνάς = may
| 06 | 6 | vi | Ⅵ | ⅵ | κερασινού | κερασινός = june
| 07 | 7 | vii | Ⅶ | ⅶ | χορτοθερί | χορτοθέρτ | χορτοθέρτς = july
| 08 | 8 | viii | Ⅷ | ⅷ | αλωναρί | aλωναρί | αλωνάρτς | aλωνάρτς = august
| 09 | 9 | ix | Ⅸ | ⅸ | σταυρί | σταυρίτες = september
| 10 | x | Ⅹ | ⅹ | τρυγομηνά | τρυγομηνάς = october
| 11 | xi | Ⅺ | ⅺ | ⅩⅠ | ⅹⅰ | αεργί | αεργίτες = november
| 12 | xii | Ⅻ | ⅻ | ⅩⅠⅠ | ⅹⅰⅰ | χριστουγενναρί | χριστουγεννάρτς = december
| #default = {{lc: {{{2}}}}}}}-{{#expr: {{{1|{{{ημέρα|{{First word}}}}}}}}}}/</includeonly> The New York Times: On This Day] {{#if: {{{3|{{{eng|}}}}}} | | ({{icon eng}})}}<!--
--><noinclude>{{Documentation}}</noinclude>
e7bj92xu43x1n70eyx0bvcceexu9xmi
29 Κούντουρονος
0
1418
37317
37316
2025-12-16T19:27:13Z
Εὐθυμένης
2777
37317
wikitext
text/x-wiki
----
{{ΗμερολόγιοΣεΠίνακα|2}}
Η '''29 τη Κούντουρονος''' εν 60ον ημέρα δίσεκτα τη χρονίας, άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 306 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Συνδέζμαι ==
{{Commons|February 29}}
* {{BBC: On This Day}}
* {{The New York Times: On This Day}}
{{Πρότυπον:Μήνας}}
eukh9opikpqz00g63hfsgrb75qpzhab
Εσθονία
0
1422
35923
35491
2024-10-26T05:25:40Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35923
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Εσθονία'''</big></big><br/>''Eesti Vabariik''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| width="140" align="center" | [[Αρχείον:Flag of Estonia.svg|125px]]
| width="140" align="center" | [[Αρχείον:Coat_of_arms_of Estonia.svg|125px]]
|-
| width="140" align="center" |
| width="140" align="center" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Estonia.svg|300px]]
|}
Η '''Εσθονία''' (σα εσθονικά: ''Eesti Vabariik'') εν [[Ευρώπην|ευρωπαϊκόν]] [[κράτος]]. Πρωτεύουσαν ατ'ς εν το [[Ταλίν]]. Ο πρωθυπουργός ατ'ς εν ο [[Τόμας Χένρικ Ίλβες|Κέρστι Κάλιουλαϊντ]] και ο πληθυσμόν ατ'ς ένι σα 1.340.021 τ' ανθρώπ'ς.
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Ευρώπη]]
hmse87vw6n92ecriylnu6z98jbja2ss
Πρότυπον:Κράτη τη Ευρώπης/doc
10
1423
19842
2011-03-29T17:16:16Z
Budelberger
25
Création.
19842
wikitext
text/x-wiki
<includeonly>
<!-- Κατηγορίας -->
[[Category:Πρότυπα|Κρατη τη Ευρωπης]]
<!-- Interwikis -->
[[af:Sjabloon:Lande van Europa]]
[[ar:قالب:دول أوروبا]]
[[be-x-old:Шаблён:Краіны Эўропы]]
[[bg:Шаблон:Европа]]
[[cs:Šablona:Evropa]]
[[de:Vorlage:Navigationsleiste Staaten in Europa]]
[[dsb:Pśedłoga:Nawikašćik Europa]]
[[en:Template:Countries of Europe]]
[[fi:Malline:Eurooppa]]
[[fr:Modèle:Palette Pays d'Europe]]
[[gl:Modelo:Europa]]
[[hr:Predložak:Europa]]
[[hsb:Předłoha:Europa]]
[[is:Snið:Evrópa]]
[[ja:Template:ヨーロッパ]]
[[ko:틀:유럽]]
[[ku:Şablon:Dewletên Ewropa]]
[[la:Formula:Europa]]
[[lt:Šablonas:Europa]]
[[lv:Veidne:Eiropa]]
[[mk:Шаблон:Држави во Европа]]
[[ml:ഫലകം:യൂറോപ്യന് രാഷ്ട്രങ്ങള്]]
[[mn:Загвар:Европ]]
[[mr:साचा:मार्गक्रमण युरोपातील देश]]
[[nds:Vörlaag:Länner in Europa]]
[[no:Mal:Europa]]
[[os:Шаблон:Европæ]]
[[pl:Szablon:Państwa Europy]]
[[rm:Template:Navigaziun Stadis da l'Europa]]
[[ru:Шаблон:Страны Европы]]
[[sk:Šablóna:Európa]]
[[sl:Predloga:Države Evrope]]
[[sr:Шаблон:Европа]]
[[sv:Mall:Europa]]
[[tpi:Template:Ol kantri bilong Yurop]]
[[war:Template:Europa]]
[[wuu:模板:欧洲行政区划]]
[[zh:Template:Europe]]
</includeonly>
6gnuucpmv4sraos36mrru1x3msmoo0h
Πρότυπον:•
10
1424
19843
2011-03-29T17:38:13Z
Budelberger
25
Création.
19843
wikitext
text/x-wiki
• <!--
--><noinclude>{{Documentation}}</noinclude>
amn691ltz695481vgpcr449c0w0ec0b
Κατηγορίαν:Εσθονία
14
1425
31585
31349
2013-04-13T08:05:18Z
KLBot2
3570
Bot: Migrating 3 interwiki links, now provided by [[Wikidata]] on [[:d:Q4367632]]
31585
wikitext
text/x-wiki
{{Commonscat|Estonia}}
{{DEFAULTSORT:Εσθονια}}
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Ευρώπη]]
6jzju1fhslgbqp6tx8egncj0cmqfp4r
Κατηγορίαν:Λιθουανία
14
1426
31350
29748
2013-03-07T22:02:15Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 155 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4368380]] [[M:User:Addbot/WDS|(translate me)]]
31350
wikitext
text/x-wiki
{{Commonscat|Lithuania}}
{{DEFAULTSORT:Λιθουανια}}
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Ευρώπη]]
2nsxqbs40a0wk205kkj50c6pitc7b31
Κατηγορίαν:Ηνωμένο Βασίλειο
14
1427
31351
30319
2013-03-07T22:02:26Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 151 interwiki links, now provided by [[d:|Wikidata]] on [[d:q1411125]] [[M:User:Addbot/WDS|(translate me)]]
31351
wikitext
text/x-wiki
{{Commonscat|United Kingdom}}
{{DEFAULTSORT:Ηνωμενο Βασιλειο}}
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Ευρώπη]]
paor8507ct3go5ten9ynpov24d0b4vk
Κατηγορίαν:ΠΓΔΜ
14
1428
31477
19848
2013-03-11T10:26:49Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q6331187]] [[M:User:Addbot/WDS|(translate me)]]
31477
wikitext
text/x-wiki
{{Commonscat|Republic of Macedonia}}
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Ευρώπη]]
3854bqddmeu6dxgchppj4y1pcv77ffi
Κατηγορίαν:Φινλανδία
14
1429
31601
31352
2013-04-13T08:17:44Z
KLBot2
3570
Bot: Migrating 3 interwiki links, now provided by [[Wikidata]] on [[:d:Q4367709]]
31601
wikitext
text/x-wiki
{{Commonscat|Finland}}
{{DEFAULTSORT:Φινλανδια}}
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Ευρώπη]]
[[Κατηγορίαν:Σκανδιναβία]]
t3j69owhr087i7s3p2dvi6yknzyk2qb
Κατηγορίαν:Άι Μαρίνος
14
1430
24763
19851
2011-12-27T13:44:07Z
MerlIwBot
2140
Robot: Removing szl, zh, pl, eu, bs, es, oc, hu, sw, sq, mt, crh, ia, ga, tk, kw, nl, ar, pt, eo, sr, fi, uk, be-x-old, sco, roa-tara, kv, hr, az, nap, da, an, vec, pms, udm, nah, be, he, arz, yo, it, hif, ja, vi, wo, hsb, sk, th, no, ca, la, cy, ...
24763
wikitext
text/x-wiki
{{Commonscat|San Marino}}
{{DEFAULTSORT:Αι Μαρινος}}
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Ευρώπη]]
5iwlhkj4fe66gkop6y26menamkqwxkx
Πρότυπον:Mod
10
1434
31472
30846
2013-03-11T10:26:22Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 268 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5611452]] [[M:User:Addbot/WDS|(translate me)]]
31472
wikitext
text/x-wiki
<includeonly>{{ {{{|safesubst:}}}#ifexpr:({{{2}}})=0|0|{{ {{{|safesubst:}}}#ifexpr:(({{{1}}})/({{{2}}}))=((({{{1}}})/({{{2}}}))round 0)|0|{{ {{{|safesubst:}}}#ifexpr:(({{{1}}})/({{{2}}}))>0 and(({{{1}}})/({{{2}}}))<1|{{ {{{|safesubst:}}}#expr:{{{1}}}}}|{{ {{{|safesubst:}}}#expr:({{{1}}})-((((({{{1}}})/({{{2}}}))-0.5)round 0)*({{{2}}}))}}}}}}}}</includeonly><noinclude>
See documentation of [[:en:Template:Mod]]
</noinclude>
ns8erun5tol4lf586m8gpoiwv49bw7p
Ρωσία
0
1446
20180
2011-04-23T01:18:28Z
Gleb Borisov
1471
Redirected page to [[Ρουσία]]
20180
wikitext
text/x-wiki
#REDIRECT [[Ρουσία]]
nz6rx2qjja3fjpf8p50hdsw4ppafvuk
Koνσεπσιόν
0
1448
34652
33606
2020-11-22T20:20:41Z
Je7roi
4539
Correcting
34652
wikitext
text/x-wiki
[[Αρχείον:Coat of arms of Concepcion, Chile.svg|left|120px]]
[[Αρχείον:Flag of Concepcion, Chile.svg|thumb|right|240px| [[Αρχείον:Flag of Chile.svg|20px]] [[Koνσεπσιόν]], [[Χιλή]]]]
[[Αρχείον:Mapa_loc_Biobío.svg|right|270px]]
[[Αρχείον:Concepcion-Chile(001).jpg|thumb|right|240px| <center>36º 46' 22'' S 73º 03' 47'' W</center>]]
Το '''Koνσεπσιόν''' (σα ισπανικά: ''Concepción'') είναι πόλη της [[Χιλή]]. Το [[2002]] εχ' πληθυσμόν 216.061 ανθρώπ.
== Βιβλιογραφία ==
* Ida Stevenson Weldon Vernon ([[1969]]) ''Pedro de Valdivia, Conquistador of Chile'', Greenwood Press (''eng.'')
* John Milton Nickles, Marie Siegrist ([[1965]]) ''Bibliography and Index of Geology Exclusive of North America'', Geological Society of America, v.28 (''eng.'')
== Συνδέζμαι ==
=== Εξωτερικα σύνδεσμα ===
* [http://www.concepcion.cl Επίσημον σελίδαν τη Δήμου τη Koνσεπσιόν] (ισπ.)
* [http://el.wikipedia.org/wiki/Κονσεπσιόν Koνσεπσιόν (ελλενικόν)]
* {{commonscat|Concepcion, Chile|Koνσεπσιόν}}
* [[Αρχείον:P wiki letter w.svg|38px]]
[[Κατηγορίαν:Χιλή]]
[[Κατηγορίαν:Πολιτείας τ' Χιλή|Koνσεπσιόν]]
neqn2s0twkvhj7gyopa3s43h05ukw8r
Ανασπαλτος
0
1457
34492
34436
2020-04-08T05:46:57Z
Tulsi
5081
Cross-wiki abuse
20930
wikitext
text/x-wiki
Ανάσπαλτος = Από το ανασπάλλω 1)Παθ. ο μη λησμονημένος 2)Ενεργ. ο μη λησμονών
myqn9dmpo8o7sqn9jej1fw46t18npsl
Λίθιον
0
1467
34826
34617
2021-07-18T05:52:47Z
Shihab1729
8656
video added #WPWP #WPWPBN
34826
wikitext
text/x-wiki
[[Αρχείον:Wie funktioniert eine Lithium-Schwefel-Batterie?.webm|μικρογραφία|Λίθιον]]
Το Λίθιο [Σύμβολον : Li] εν το τρίτο χημικό στοιχείον σο Περιοδικό Πινάκιν. Εν μέταλλον και ανήκει αση ομάδα τη αλκαλίων. Εςς ατομικόν αριθμόν 3 κι ατομικό βάρος 6,94. Θερμοκρασία τήξης εςς τους 180,54 C° κι θερμοκρασία βρασμού 1347 C°. Με το Λίθιο εφτάμε κράματα μεταφοράς θερμότητας κι μπαταρίας. Το Λίθιο εν μαλακόν μέταλλον κι εςς αργυρόλευκο χρώμαν. Αντιδρά με το νερόν κι εφτάει ισχυρά εξώθερμη αντίδρασην ασην οποίαν παράγεται υδρογόνο.
[[Κατηγορίαν:Χημείαν]]
8rgt3pjdefoea774fetuji5jvlvaxhf
Ηλεκτρονικόν υπολογιστής
0
1481
33934
33895
2018-10-24T13:26:54Z
Wim b
3723
Ανάκληση των αλλαγών [[Special:Contributions/91.140.91.118|91.140.91.118]] ([[User talk:91.140.91.118|συζήτηση]]) επιστροφή στην προηγούμενη αναθεώρηση [[User:CommonsDelinker|CommonsDelinker]]
32550
wikitext
text/x-wiki
[[Εικόναν:Desktop computer clipart - Yellow theme.svg|thumb|Σ'αούτον τη ζωγραφίαν ελέπωμεν έναν υπολογιστήν, άμον ντ'εξέρν'ατον σ'όλον τον κόσμον.]]
Ατώρα ας λέγω σας ντο εν ο '''υπολογιστής'''. Υπολογιστήν λέγομεν έναν [[μηχάνημαν]] ντ'αλλάζ' [[πληροφορία|πληροφορίας]] άμον ντο λέγνε συγκεκριμένα [[κανόνας]]. Η [[ιστορίαν]] τ' υπολογιστίων ερχίνεσεν πολλά χρόνεα εμπροστά. Παλαιά υπολογιστάς λχ εν ο [[αστρολάβος|αστρολάβον]] άμα και ο [[άβαξ|άβακον]]. 'Κ ομνέζνε πολλά με τ' οσημερνά τα υπολογιστάς άμα ασο 'κ εν καλλίον έσαν. Τα καινούρεα τα υπολογιστάς επορούν και ρυθμίζνε [[σηματοδώτης|σηματοδώτας]] και [[αραπάν|αραπάδας]], παίζνε [[μουσική|μουσικήν]] και [[ταινία|ταινίας]]. Άμαν το βασικόν η αρχήν επέμνεν άμον ντο έτον: ο υπολογιστής έςς κανόνας κι ατά λέγουν ατόν ντο να φτάει. Πολλά κανόνας εντάμαν λέγουμ'ατα [[αλγόριθμος|αλγόριθμον]].
Ο άθρωπος δουλεύ' τον υπολογιστήν και λέει ατόν να φτάει δουλείας, λχ να παίζ' ταινίας ή να πάει σην Βικιπαίδειαν. Άμαν ο υπολογιστής 'κ εγροικά νε ποντιακά, νε αγγλικά. Για τ'ατό ο χρήστες επρέπ' να καλατςεύ' τη γλώσσαν τ' υπολογιστή. Τη γλώσσαν τ' υπολογιστή λέγουν ατέν [[γλώσσα προγραμματισμού|γλώσσαν προγραμματισμού]]. Οι [[προγραμματιστής|προγραμματιστές]] εγροικούν τη γλώσσαν κι αέτς γράφνε προγράμματα ντο λέγνε τον υπολογιστήν ντο να φτάει. Επεκεί ο χρήστες χρησιμοποιεί τα προγράμματα κι αέτς πα, με τ' αείκα και τ' αείκα εφτάει τα δουλείας ατ'.
[[Κατηγορίαν:Τεχνολογίαν|υπολογιστης]]
1ftjmgoeuwz01xs1sw54bbjjfporbuz
Υπολογιστής
0
1482
21568
2011-07-11T19:15:46Z
85.182.20.25
Redirected page to [[Ηλεκτρονικόν υπολογιστής]]
21568
wikitext
text/x-wiki
#REDIRECT [[Ηλεκτρονικόν υπολογιστής]]
fr6dad9jtfi93077wfqg0gslxurynq5
Τσάμπασιν
0
1483
36748
36734
2025-12-16T08:39:41Z
Εὐθυμένης
2777
36748
wikitext
text/x-wiki
[[Εικόναν:Ordu districts.png|thumb|230px|Το Τςάμπαςιν σον χάρτεν τ'Ορντούς]]
Το '''Τςάμπαςιν''' ({{IPA|[ˈʧambaʃin]}}, σα τούρκικα λέγουν ατο ''Çaybaşı'') εν [[Πόντος|ποντιακόν]] κωμόπολην σην [[Τουρκία|Τουρκίαν]], σην επαρχίαν τ'[[Ορντού|Ορντούς]]. Οσήμερον (2009) σο Τςάμπαςιν απές ζούνε 4.431<ref name="Στατιστική">Ινστιτούτον Στατιστικής τη Τουρκίας - [http://report.tuik.gov.tr/reports/rwservlet?adnksdb2=&report=idari_yapi_09sonrasi.RDF&p_il1=52&p_yil=2009&p_dil=1&desformat=html&ENVID=adnksdb2Env Türkiye İstatistik Kurumu]</ref> αθρώπ'.
== Απόθεν επαίραμε τα πληροφορίας ==
<references/>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας|Τσαμπασιν]]
65nxftfxzstbhukxy5znys89vp69ibv
Καρλ Μαρξ
0
1485
35593
35582
2024-01-25T11:01:39Z
Διογένες
10538
/* Συνδέσμε */Βικιφθέγματα
35593
wikitext
text/x-wiki
[[Αρχείον:Karl Marx 001.jpg|μικρογραφία|Ο Μαρξ κάθεται σ' έναν καρέκλαν απάν]]
Ο '''Καρλ Χάινριχ Μαρξ''' (1818 - 1883, ''Karl Heinrich Marx'') έτονε [[φιλοσοφία|φιλόσοφος]], [[κοινωνιολογία|κοινωνιολόγος]], [[ιστορία|ιστορικός]], [[οικονομικά|πολιτικός οικονομολόγος]] κι έχτισεν τον [[κομμουνισμός|κομμουνισμόν]]. Εγεννέθεν σην [[Τριέρη|Τριέρην]] τη [[Γερμανία|Γερμανίας]], κάπου εκεί σο [[Λουξεμβούργον]] σουμά, σοι Μαρξάντων. Ο κύρης ατ' έκουεν Χέρςελ και η μάνα 'τ Χενριέτε. Έτονε φυντάν ασ' εβραϊκόν ρίζαν, ο θείος ατ' ο Σαμουήλ έτονε ραββίνος ση Τριέρην. Επάντρεψεν 25 χρονών την Ντςένη φον Βεστφάλεν και έγκανε εφτά παιδία σον κόσμον.
== Συνδέσμε ==
* [[Αρχείον:Wikiquote-logo.svg|link=https://el.wikiquote.org/wiki/Καρλ_Μαρξ?uselang=pnt|16x16px]] Βικιφθέγματα: [https://el.wikiquote.org/wiki/Καρλ_Μαρξ?uselang=pnt '''''Καρλ Μαρξ''''']
* [[Αρχείον:Commons-logo.svg|link=https://commons.wikimedia.org/wiki/Category:Karl_Marx?uselang=pnt|18x18px]] Σα [[c:Αρχική σελίδα|Κοινά]] εσ υλικόν σχετικόν με [https://commons.wikimedia.org/wiki/Category:Karl_Marx?uselang=pnt '''''Καρλ Μαρξ''''']
[[Κατηγορίαν:Συγγραφέοι|Μαρξ, Καρλ]]
h849ynyd863cl7cgu2cu77oa9p31m19
Τζαμαίκαν
0
1487
34620
32095
2020-10-05T16:46:20Z
Rotondus
8164
Κατηγορίαν
34620
wikitext
text/x-wiki
[[Αρχείον:Flag of Jamaica.svg|thumb|right|250px]]
Η '''Τζαμαίκαν''' εν χώραν μ’έκταση 10.991 τετραγώνικα χλμ κ το νησίν αούτον εσς 2.825.928 ταν’θρώπς και πρωτεύουσανάτς εν το Κιννγκ΄στον.
Τη Τζαμαίκαν λενα’την κ Ιαμαίκην κ εν το τρίτον τρανότερον νησίν α σα Τρανα Αντίλλας ση Καραιβικήν τη Θάλασσαν κ εν οκσςουκές σα 80 τα ναύτικα μίλια νότια ση Κούβαν
Ταν΄θρώπς το ζούν ση Τζαμαίκαν λένατ΄ς Σαύμάκα.
{{Commonscat|Jamaica|Τζαμαίκαν}}
[[Κατηγορίαν:Κράτη]]
btu9go3p96ctii2m1fb5zn8tkssi5ke
Ποντιακή διάλεκτος
0
1500
28152
22568
2012-08-05T18:01:42Z
MF-Warburg
53
rm spam
28152
wikitext
text/x-wiki
#REDIRECT [[Ποντιακόν λαλίαν]]
hh70627f411imxoabivk216h6jm4bp9
Παλτογα
0
1515
35556
31360
2024-01-23T18:14:59Z
Διογένες
10538
μικρογραφία
35556
wikitext
text/x-wiki
[[Αρχείον:Paltoga 125.jpg|μικρογραφία|right|250px|Παλτογα]]
Το '''Παλτογα''' εν χωρίον σα ανατολικά τη [[Ρουσία|Ρουσίας]]. Ο πληθυσμόν αθέ είν' ασα 296 τ' ανθρώπ'ς (2006).
[[Κατηγορίαν:Ρουσία]]
[[Κατηγορίαν:Χωρία]]
axi4tffrs3idcwl9lqsafyi2ad6f497
Θράκη
0
1541
34613
34482
2020-10-05T16:10:16Z
Rotondus
8164
Κατηγορίαν
34613
wikitext
text/x-wiki
Διαμέρισμα τη Ελλάδας με τα πολειτείας Κομοτηνήν, Ξάνθη και Αλεξανδρούπολη.
[[Κατηγορίαν:Ελλενικόν ιστορίαν]]
jp68x2naa893k5l9dt02y6dluqttihc
Κατηγορίαν:Σελίδες για γρήγορη διαγραφή
14
1595
31746
31362
2013-08-01T15:39:11Z
Addbot
3509
[[User:addbot|Bot]]: Migrating interwiki links, now provided by [[d:|Wikidata]] on [[d:q5964]]
31746
wikitext
text/x-wiki
[[da:Kategori:Sletningsforslag]]
snyaujipfgu3b5f8wjvr8l7zi39bczy
Μονακό
0
1596
37406
35943
2025-12-30T21:43:53Z
Таёжный лес
10003
from [[Μονακόν]]
37406
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Μονακό'''</big></big><br/>''Principauté de Monaco''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Monaco.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Monaco.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Location_Monaco_Europe.png|300px]]
|}
Το '''Μονακό'''/'''Μονακόν''' (σ' γαλλικά: Monaco) εν [[κράτος]] σο νότον τ' Ευρώπης/σην δυτικήν [[Ευρώπην]]. Πρωτεύουσαν ατ'ς είν' το . Ο πρίγκηψ ατ'ς λέχκεται Αλβέρτος Β' και ο Υπουργός του Κράτους εν ο Σερζ Τελ. Τη 2015 το Μονακόν είχεν πληθυσμόν σα 38.400.
{{Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Μονακό]]
[[Κατηγορίαν:Ευρώπη|Μονακό]]
bgf39hl20i5719zxkv6urglyhigdr0s
Αρμενία
0
1597
35911
34835
2024-10-26T05:24:53Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35911
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Αρμενία'''</big></big><br/>''Հայաստանի Հանրապետություն''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Armenia.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Armenia.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Armenia_(orthographic_projection).svg|300px]]
|}
Η '''Αρμενία''' εν [[κράτος]] σην ανατολήν [[Ευρώπην]].
{{Commons|Category:Armenia|Αρμενία}}
{{Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Αρμενία]]
[[Κατηγορίαν:Ευρώπη|Αρμενία]]
[[Κατηγορίαν:Καυκασία]]
6jl9ky6ksd8js5j679cu6vz3041m1q8
Λευκορουσία
0
1610
35812
35658
2024-10-26T05:19:30Z
Minorax
7522
35812
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Λευκορουσία'''</big></big><br/>''Рэспубліка Беларусь''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Belarus.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Belarus (2020–present).svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Europe-Belarus.svg|300px]]
|}
Η '''Λευκορουσίαν''' εν [[κράτος]] σην ανατολήν [[Ευρώπην]].
{{Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Λευκορουσία]]
[[Κατηγορίαν:Ευρώπη|Λευκορουσία]]
5yyl4bqzwz4qwgg6izexq23x7t2m6o5
Ελευθερία Ελευθερίου
0
1620
35572
35509
2024-01-24T15:11:12Z
Διογένες
10538
Ελευθερία Ελευθερίου το 2012
35572
wikitext
text/x-wiki
[[Αρχείον:Eleftheria Eleftheriou4.jpg|μικρογραφία|Ελευθερία Ελευθερίου το 2012]]
Ο '''Ελευθερία Ελευθερίου''' (* [[12 Καλομηνά]] [[1989]]) εν τραγουδίστρια.
[[Κατηγορίαν:Μουσική]]
owlx80rgmxdv90lqljiwylr239bqq2l
Μοστσένα
0
1621
32836
31367
2016-02-04T21:50:46Z
81.177.254.196
32836
wikitext
text/x-wiki
[[Αρχείον:Centr Moschena.jpg|thumb|right|250px|Μοστσένα]]
Το '''Μοστσένα''' ([[ουκρανικά]]: Мощена) εν χωρίον σα ανατολικά τη [[Ουκρανία|Ουκρανίας]]. Ο πληθυσμόν αθέ είν' ασα 581 ανθρώπ'ς (2010).
{{commonscat|Moshchena}}
[[Κατηγορίαν:Ουκρανία]]
1aqv4ij7qex8a3flffz80vnnymr37aj
17 Απρίλτ
0
1638
37133
36988
2025-12-16T18:26:51Z
Εὐθυμένης
2777
37133
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[16 Απρίλτ]] | [[17 Απρίλτ]] | [[18 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''17 τ' Απρίλτ''' εν τ' 107ον ημέρα τη χρονίας (108ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 258 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[17 Μαρτί]] - [[17 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0107]]
82pueneymrfffq5v26oyloalm5f9232
Πουτσιχτά
0
1649
26833
26832
2012-05-21T00:09:28Z
Omnipaedista
35
26833
wikitext
text/x-wiki
Πολλοί ἐθαρρούνε πὼς ἀτά ντὸ λέγνε σὴν Ελλάδαν "λουκουμάδες" ἒν τὰ ποντιακά τὰ [[Τσιριχτά]] αμά ἂλλα ἒν τὰ τσιριχτά καὶ ἂλλα τὰ λουκουμάδες ντὸ λὲγνε οἱ [[Ματσούκα|Ματσουκέτ]] "πουτσιχτά".
Πουτσίζω σὰ ποντιακά θὰ λέει "πιτσιλάω". Τὰ πουτσιχτά ίντανε μὲ τ'ἳδιον τὸ ζυμάρ΄ ντ'εφτάγνε τὰ τσιριχτά. Τα τσιριχτά ὂμως ίντανε απές σο τηγάν, τηγανεμένα έν δηλαδή καὶ ἐν ἂλλο τρανά ασὰ πουτσιχτά.
Τὰ πουτσιχτά ἀσ'ἂλλον τὴν μερέαν, ψέουνταν ἀπες σε ἐναν τέτζεριν καυτόν ἐλάδ.
Τὰ τσιριχτά ὲν ἂλλο μαλακά καὶ φαΐουνταν μὲ τὸ μέλ΄ ἠ μὲ τὴν ζάχαριν ἀμα ἐπορούμε νά τρώμ΄ατά καὶ μὲ τὸ τυρίν ἢ ςκέτα, άμον ψωμίν ασ'λέμε. Τὰ πουτσιχτά ἒν τραγανά καὶ φαΐζνε μὲ κςυμένον ἀπάν ὁλίγον μελόπον ἢ πασπαλιμένον ζάχαριν.
[[Κατηγορίαν:Φαΐα|Πουτσιχτά]]
mwand7bp07t8ysw3toeugp1o9jhgsvj
Φρίντριχ Σίλερ
0
1676
35669
35541
2024-04-03T09:35:48Z
Διογένες
10538
+s
35669
wikitext
text/x-wiki
[[Εικόναν:Friedrich schiller.jpg|μικρογραφία|Φρίντριχ Σ̌ίλερ <br />
(εζωγράφσεν η [[Λουντοβίκε Σιμάνοβιτς]], 1794)]]
[[Αρχείον:Schiller Weimar.jpg|μικρογραφία|Windischenstr 8, Weimar]]
[[Αρχείον:Dom Carlos 1787.jpg|μικρογραφία|''Don Karlos'' (Ντον Κάρλος), 1787]]
Ο '''Γιόχαν Κρίστοφ Φρίντριχ φον Σ̌ίλερ''' ([[γερμανικόν γλώσσα|γερμ.]] ''Johann Christoph Friedrich von Schiller''), εποίκαν ατον αριστοκράτε σα 1802 τη χρονίας, (* [[10 Αεργί]] [[1759]] σο [[Μάρμπαχ]], Δουκάτον τη Βυρτεμβέργης, † [[9 Καλομηνά]] [[1805]] ση [[Βαϊμάρη|Βαϊμάρην]], Σαξονία-Βαϊμάρη-Άιζεναχ), έτονε [[ποιητικήν|ποιητής]], [[φιλοσοφία|φιλόσοφον]] και [[ιστορία|ιστορικόν]] αση [[Γερμανία|Γερμανίαν]]. Οσήμερον λέγουνε για τ’ατόν ντο έτονε πολλά τρανόν δραματικόν συγγραφέας σο γερμανόγλωσσον κόσμον. Εγεννέθεν Βυρτεμβεργιανόν, άμαν επάιρεν και την υπηκοότηταν τη Σαξονίας-Βαϊμάρης. Επεκεί, σα 1972 τη χρονίας, επαίρεν και το [[Γαλλία|γαλλικόν]] τη υπηκοότηταν. <ref>Die deutsche Staatsangehörigkeit: Vergangenheit - Gegenwart - Zukunft, Ingo von Münch, De Gruyter Rechtswissenschaften, 2007, σελ. 187. [https://books.google.com/books?id=U0BVt0eewacC&pg=PA187&lpg=PA187#v=onepage&q&f=false Τερέστεν τη σελίδαν σα Google-Books].</ref>
Ο Σ̌ίλερ με το [[Γιόχαν Βόλφγκανγκ φον Γκαίτε|Γκö́τε]], το [[Κρίστοφ Μάρτιν|Βίλαντ]] και το [[Γιόχαν Γκότφριντ Χέρντερ|Χέρντερ]] εντάμαν είναι τα τρανά τα ονόματα τη ''κλασικισµού τη Βαϊµάρης'' (''Weimarer Klassik'').
== Έργα ==
=== Δράματα ===
* ''Die Räuber'' (Οι κλέφτες), 1781
* ''Kabale und Liebe'' (Ραδιουργία και έρως), 1783
* ''Die Verschwörung des Fiesco zu Genua'' (Η συνωμοσία τη Φιέσκονος ση Γένοβαν), 1784
* ''Don Karlos'' (Ντον Κάρλος), 1787
* Wallenstein. Trilogie: ''Wallensteins Lager'', ''Die Piccolomini'', ''Wallensteins Tod'' (Βαλλενστάιν. Τριλογίαν: Το στρατόπεδο τη Βαλλενστάιν, Οι Πικκολομίνι, Η θανήν τη Βαλλενστάιν), 1800
* ''Maria Stuart'' (Μαρία Στούαρτ), 1800
* ''Die Jungfrau von Orleans'' (Η Παρθένος της Ορλεάνης), 1801
* ''Die Braut von Messina'' (Η νύφε της Μεσσήνης), 1803
* ''Wilhelm Tell'' (Γουλιέλμος Τέλλος), 1804
=== Λυρική ποίηση ===
* ''An die Freude'' (Ωδή ση χαράν), 1786
* ''Die Götter Griechenlandes'' (Οι θεοί τη Ελλάδας), 1788 & 1800
* ''Hektors Abschied'' (Ο αποχαιρετισμός τη Έκτορα), 1790
* ''Das verschleierte Bild zu Sais'' (Το πεπλοφορεμένο άγαλμα ση Σαΐδαν), 1795
* ''Der Handschuh'' (Το γάντι), 1797
* ''Der Taucher'' (Ο βουτηχτής), 1797
* ''Die Kraniche des Ibykus'' (Οι γερανοί τ’ Ίβυκου), 1797
* ''Der Ring des Polykrates'' (Το δαχτυλίδ τη Πολυκράτε), 1798
* ''Die Bürgschaft'', 1798
* ''Das Lied von der Glocke'' (Η τραγωδίαν τη καμπάνας), 1799
* ''Nänie'' (Επιτάφιο), 1800
* ''Klage der Ceres'' (To αγγάλεμαν τη Δήμητρας)
=== Ιστορία ===
* ''Geschichte des Abfalls der vereinigten Niederlande von der spanischen Regierung'' (Ιστορία τη ταγουτεματί τη Ηνωμένων Αφκά Χωρών ασ’ ισπανικόν αφεντίαν), 1788
* ''Geschichte des dreißigjährigen Kriegs'' (Ιστορία του Τριακονταετούς Πολέμου), 1790
* ''Über Völkerwanderung, Kreuzzüge und Mittelalter'' (Περί της Μετανάστευσης των Λαών, των Σταυροφοριών και του Μεσαίωνα)
=== Φιλοσοφία ===
* ''Der Spaziergang unter den Linden'' (Ο περίπατος υπό τας φιλύρας),1782
* ''Über die ästhetische Erziehung des Menschen in einer Reihe von Briefen'' (Περί της αισθητικής αγωγής των ανθρώπων σε μία σειρά επιστολών), 1795
* ''Über naive und sentimentalische Dichtung'' (Περί αφελούς και συναισθηματικής ποιήσεως), 1795
=== Κλώσκεμαν ασ’ άλλα γλώσσας ===
* Ευριπίδης, ''Ιφιγένεια η εν Αυλίδι''
* William Shakespeare, ''Macbeth'', 1800
* Jean Racine (Ρακίνας), ''Phèdre'' (Φαίδρα), 1805
* Carlo Gozzi (Κάρλο Γκότσι), ''Turandot'' (Τουραντό), 1801
== Αναφοράντας ==
<references/>
== Συνδέσμε ==
* '''[[Αρχείον:Wikisource-logo.svg|13px]] Σο [[:el:s:Κύρια_Σελίδα |ελλενικόν τη Βικιθήκην]] εςς [[:el:s: Φρίντριχ Σίλερ|γραψίματα τ']]'''
{{Commons|Friedrich Schiller}}
[[Κατηγορίαν:Ποιητάδες|Σίλερ, Φρίντριχ]]
[[Κατηγορίαν:Συγγραφέοι|Σίλερ, Φρίντριχ]]
[[Κατηγορίαν:Λογοτεχνίαν|Σίλερ, Φρίντριχ]]
[[Κατηγορίαν:Θέατρον|Σίλερ, Φρίντριχ]]
[[Κατηγορίαν:Φιλοσοφίαν|Σίλερ, Φρίντριχ]]
90780z6cgivw0rk7vzcr90t8zvuiway
Φρίντριχ Ϛίλερ
0
1677
27456
2012-06-24T13:04:42Z
Sinopeus
168
Sinopeus moved page [[Φρίντριχ Ϛίλερ]] to [[Φρίντριχ Σίλερ]]: Αέτς αραεύν'ατον.
27456
wikitext
text/x-wiki
#REDIRECT [[Φρίντριχ Σίλερ]]
rufs3mmxzmsy13yejnuhizyobt3c9kj
Avril Lavigne
0
1680
27485
2012-06-25T10:45:35Z
Midnight Green
2532
Midnight Green moved page [[Avril Lavigne]] to [[Αβρίλ Λαβίν]]
27485
wikitext
text/x-wiki
#REDIRECT [[Αβρίλ Λαβίν]]
r72v3gatfocjbhfy3ns1eip7qhbtu4q
Γιόχαν Γκότφριντ Χέρντερ
0
1682
37362
35535
2025-12-19T00:44:21Z
Εὐθυμένης
2777
37362
wikitext
text/x-wiki
[[Εικόναν:Johann Gottfried Herder 2.jpg|μικρογραφία|Γιόχαν Γκότφριντ Χέρντερ, εζωγράφσεν ο [[Άντον Γκραφ]], 1785]]
Ο '''Γιόχαν Γκότφριντ Χέρντερ''', ([[γερμανικόν γλώσσα|γερμ.]] ''Johann Gottfried Herder''), εποίκαν ατον αριστοκράτε σα 1802 τη χρονίας, (* [[25 Αλωναρί]] [[1744]] σο [[Μόραγκ]], Ανατολικόν Πρωσία, † [[18 Χριστουγενναρί]] [[1803]] ση [[Βαϊμάρη|Βαϊμάρην]], Σαξονία-Βαϊμάρη-Άιζεναχ), έτονε [[ποιητικήν|ποιητής]], [[φιλοσοφία|φιλόσοφον]] και [[θεολογία|θεολόγον]] αση [[Γερμανία|Γερμανίαν]]. Ο Χέρντερ με το [[Γιόχαν Βόλφγκανγκ φον Γκαίτε|Γκö́τε]], το [[Κρίστοφ Μάρτιν Βίλαντ|Βίλαντ]] και το [[Φρίντριχ Ϛίλερ|Ϛίλερ]] εντάμαν είναι τα τρανά τα ονόματα τη ''κλασικισµού τη Βαϊµάρης'' (''Weimarer Klassik'').
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
{{DEFAULTSORT:Χερντερ, Γιοχαν Γκοτφριντ}}
[[Κατηγορίαν:Ποιητάδες]]
[[Κατηγορίαν:Συγγραφέοι]]
[[Κατηγορίαν:Λογοτεχνίαν]]
[[Κατηγορίαν:Φιλοσοφίαν]]
g8f5168g0p31qs6r1gyey8kgslf8u2j
Φιλοσοφία
0
1683
31372
30739
2013-03-07T22:06:24Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 172 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5891]] [[M:User:Addbot/WDS|(translate me)]]
31372
wikitext
text/x-wiki
[[Αρχείον:La scuola di Atene.jpg|thumb|Η σχολή τη Αθήνας (εζωγράφσεν ο [[Ραφαήλ]], 1509)]]
'''Φιλοσοφίαν''' λέγουμε τον τρόπον νουνισματί για τον [[κόσμος|κόσμον]], το [[σύμπαν]], και τ'[[άθρωπος|αθρώπς]]. Έναν φιλοσοφίαν εν πολλά ιδέας, π'εράεψεν κι εποίκεν ατα ο φιλόσοφον (ατός π'εδεάβασεν κι εσπούδασεν το νούνισμαν για τον κόσμον). Τα ιδέας τη φιλοσοφίας είναι ''αφηρημένα'', 'κ επορούμε να «κρατούμ'ατα σα ςέρια'μουν» δηλαδή. Άμαν η φιλοσοφίαν στηρίχκεται απάν' σα αλήθειας ντο ελέπ' σον κόσμον. Η ηθικήν λ.χ. κανονίζ' και ρωτά ντο να φτάμε κάθαν ημέραν. Ασ' άλλ' τη μεράν πα η μεταφυσικήν τερεί τη λειτουργείαν τη κόσμονος.
Πολλοί λέγουνε ντο έχνε «προσοπικόν φιλοσοφίαν». Ατό παλ' εν ο τρόπον με τον οποίον ένας άθρωπος νουνίζ' για τον κόσμον. Σ'άούτον το γράψιμον '''κ τερούμε'' το «προσοπικόν τη φιλοσοφίαν» τη αθρωπίων. Αδαπές τερούμε τα ιδέας τη φιλοσοφίων.
Πολλά χρόνεα εμπροστά ους οσήμερον οι φιλόσοφοι εφτάνε ερωτήσεις άμον:
* Το καλόν ντο εν;
* Τ'έμορφον ντο εν;
* Επορούμε κι εφτάμε άμον ντο θέλομεν;
* Ο Θεόν υπάρχει;
* Ο κόσμον ολόερα υπάρχει;
* Ο άθρωπον ντο εν;
* Η αλήθειαν ντο εν;
* Το κακόν ντο εν;
* Η επιστήμην ντο εν;
* Η φιλοσοφίαν ντο εν;
* Η σεβντά ντο εν;
[[Κατηγορίαν:Φιλοσοφία|*]]
2lobh51rllzcoxyiihpz3c55hbcwgkd
Αλωνάρτς
0
1684
37022
31489
2025-12-16T18:06:11Z
Εὐθυμένης
2777
37022
wikitext
text/x-wiki
<center> '''Ημέρας Αλωναρί''' </center>
<center> [[1 Αλωναρί|1]] | [[2 Αλωναρί|2]] | [[3 Αλωναρί|3]] | [[4 Αλωναρί|4]] | [[5 Αλωναρί|5]] | [[6 Αλωναρί|6]] | [[7 Αλωναρί|7]] | [[8 Αλωναρί|8]] | [[9 Αλωναρί|9]] | [[10 Αλωναρί|10]] | [[11 Αλωναρί|11]] | [[12 Αλωναρί|12]] | [[13 Αλωναρί|13]] | [[14 Αλωναρί|14]] | [[15 Αλωναρί|15]] | [[16 Αλωναρί|16]] | [[17 Αλωναρί|17]] | [[18 Αλωναρί|18]] | [[19 Αλωναρί|19]] | [[20 Αλωναρί|20]] | [[21 Αλωναρί|21]] | [[22 Αλωναρί|22]] | [[23 Αλωναρί|23]] | [[24 Αλωναρί|24]] | [[25 Αλωναρί|25]] | [[26 Αλωναρί|26]] | [[27 Αλωναρί|27]] | [[28 Αλωναρί|28]] | [[29 Αλωναρί|29]] | [[30 Αλωναρί|30]] | [[31 Αλωναρί|31]]</center>
----
{{ΗμερολόγιοΣεΠίνακα|8}}
Ο '''Αλωνάρτς''' άμαν και λέγν'ατόν και ''''''Άγουστος''''' (σ' ελλενικά: ''Αύγουστος'') εν ο όγδοον μήνας τη χρονίας, άμον ντο λέει μας το [[Γρηγοριανόν ημερολόγιον]] κι εχ' 31 ημέρας.
== Συνδέσμε ==
* '''[[Αρχείον:Wiktfavicon en.svg|16px|Βικιλεξικόν]] [[:el: wikt:Αύγουστος|Ο Αλωνάρτς (Αύγουστος) σ’ ελλενικόν το Βικιλεξικόν]]'''
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Μήνας|Αλωναρτς]]
ist29wiv343zrnew0ih7v2vyasoiuju
10 Αεργί
0
1685
37276
35782
2025-12-16T19:12:12Z
Εὐθυμένης
2777
37276
wikitext
text/x-wiki
<div class="center">[[Σταυρίτες]] | [[Τρυγομηνάς]] | '''[[Αεργίτες]]''' | [[Χριστουγεννάρτς]] | [[Καλαντάρτς]]</div>
<div class="center">[[9 Αεργί]] | [[10 Αεργί]] | [[11 Αεργί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|11}}
Η '''10 Αεργί''' εν το 314ον ημέρα τη χρονίας (315ον ημέρα σε δίσεκτον χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 51 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
* [[1759]]: [[Φρίντριχ Ϛίλερ]], ποιητής, φιλόσοφον και ιστορικόν αση Γερμανίαν.
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[10 Τρυγομηνά]] - [[10 Χριστουγενναρί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|1110]]
ndp8rtqjyo22h0eu0np1nzsawukj5gn
18 Χριστουγενναρί
0
1686
37283
35888
2025-12-16T19:14:13Z
Εὐθυμένης
2777
37283
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[17 Χριστουγενναρί]] | [[18 Χριστουγενναρί]] | [[19 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''18 Χριστουγενναρί''' εν το 352ον ημέρα τη χρονίας (353ον ημέρα σε δίσεκτον χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμνε άλλα 13 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
* [[1803]]: [[Γιόχαν Γκότφριντ Χέρντερ]], ποιητής, φιλόσοφον και θεολόγον αση Γερμανίαν.
== Έξεργος ==
'''Τερέστεν πα:'''
* [[18 Αεργί]] - [[18 Καλανταρί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|1218]]
m9ikblngunmpldzpljcrguawaaygjja
Σιρόν
0
1692
34870
34541
2021-08-10T19:10:41Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.8
34870
wikitext
text/x-wiki
Το '''σιρόν''' εν πατροπαράδοτον [[Πόντος|ποντιακόν]] φαΐν.
== Υλικά ==
*αλεύρ
*νερόν
*[[άλας]]
*σκόρδον
*πασ̌ κιτάν (ημ'σόν κιλόν)
*βούτουρον (2 χουλερα̈)
== Παρασκευή ==
*Ζουμώντς όλα̈ τα υλικά εντάμαν ωσπούτα να ίνεται ζουμάρ μαλακόν.
*Χωρί'εις το ζουμάρ και ανοί'εις φύλλα λεπτά.
*Τυλί'εις τα φύλλα και κοφτ'ς ατα τίκια χουμάτα̈, να ομοια̈ζνε λωρία τυλιχτά (άμον γαïσ̌ ).
*Θεκς τα χουμάτα̈ σο ταψίν και ψεντς ατα σα 180 βαθμούς, ωσπούτα να παίρνε καλόν χρώμαν.
*(Ίντζαν θελ κρατεί τα χουμάτα̈ ασου έψεσεν ατά, απές σην κατάψυξην).
*Επεκεί βράεις νερόν με [[άλας]] και ξ̌ύντς ατο απάν ατς, ους να καπατεύκουνταν.
*Αφήντ'ς και φουσκώνε για ολίγα λεπτά.
*Σε έναν τας θεκ'ς το πασ̌ κιταν με ολίγον ζεστόν νερόν και όσον σκόρδον θελτς και ταράεις ατο.
*Θεκς ατο απές σο ταψίν να γομούται ολόερα και επεκεί λύ'εις το βούτουρον και ξ̌υντς ατο απάν.
*Φαΐεται ζεστόν.
== Συνδέσμεα ==
*[https://web.archive.org/web/20100412132115/http://www.mamakouzina.tv/gr_recipy.asp?rid=435&mid=10&sid=58&sid2=null Πως εφτάμε το σιρόν] - mamakouzina.tv (ελλ)
[[Κατηγορίαν:φαΐα|σιρον]]
thkymllm1gc1riwpcpr15bo4t4u496z
Ομάτ
0
1693
31376
30418
2013-03-07T22:07:19Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 143 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7364]] [[M:User:Addbot/WDS|(translate me)]]
31376
wikitext
text/x-wiki
[[Αρχείον:Me avatar pequenio.jpg|thumb|right|150px|Ατός τερεί μας μ'έναν ομάτ.]]
Τ''''ομάτ''' ([[ελλενικόν λαλίαν|αρχαία ελλενικά]]: ''ὤψ'') εν τ'όργανον με το οποίον ελέπνε οι αθρώπ' και τα χαϊβάνεα. Οι αθρώπ' έχνε δυο ομάτεα σο κηφάλν'ατουν.
{{commonscat|Eye}}
[[Κατηγορίαν:Ανατομία]]
dnwe23kg8g7f3j2hf6cnagr4sin364n
Κατηγορίαν:Ανατομία
14
1694
31377
30746
2013-03-07T22:07:30Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 129 interwiki links, now provided by [[d:|Wikidata]] on [[d:q4095469]] [[M:User:Addbot/WDS|(translate me)]]
31377
wikitext
text/x-wiki
[[Κατηγορίαν:Επιστήμην]]
5wq3hvbhiwb9gfzfosu4lczyjrocba0
Μυτίν
0
1696
31378
30816
2013-03-07T22:07:40Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 119 interwiki links, now provided by [[d:|Wikidata]] on [[d:q7363]] [[M:User:Addbot/WDS|(translate me)]]
31378
wikitext
text/x-wiki
[[Αρχείον:Neus1.jpg|thumb|right|150px|Σ'αούτο τη φωτογραφίαν ελέπομεν έναν τρανόν μυτίν.]]
Το '''μυτίν''' ([[ελλενικόν λαλίαν|αρχαία ελλενικά]]: ''μύτις'') εν τ'όργανον με το οποίον μυρίζνε οι αθρώπ' και τα χαϊβάνεα. Σ'αθρώπ'ς και σα [[σπονδυλωτά]] γενικά το μυτίν εν όργανον ντο ξεχωρίζ σο κατσίν απάν και πολλοί έχνε μυτίν άμον το καγάν. Άμαν σα [[κητώδη]] ασο μυτίν επέμναν τα ρωθώνεα μαναχόν.
{{commonscat|Nose}}
[[Κατηγορίαν:Ανατομία]]
oy7g3qhpmhu3fap32au0nkbi1g2xw88
Σιρον
0
1697
27834
2012-07-11T08:22:47Z
Omnipaedista
35
Omnipaedista moved page [[Σιρον]] to [[Σιρόν]]
27834
wikitext
text/x-wiki
#REDIRECT [[Σιρόν]]
m7d6i70ibltys6egrzuvktruxj5x7ei
Αντισθένες
0
1731
31379
29016
2013-03-07T22:07:51Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 43 interwiki links, now provided by [[d:|Wikidata]] on [[d:q179149]] [[M:User:Addbot/WDS|(translate me)]]
31379
wikitext
text/x-wiki
Ο '''Αντισθένες''' (439–376) έτον τρανόν [[Φιλοσοφία|φιλόσοφον]].
[[Κατηγορίαν:Φιλοσοφίαν]]
m6svtanbk1wlbjlt9kxy8qosxwh4kyb
Ίαν Γκίλαν
0
1734
35573
35507
2024-01-24T15:11:41Z
Διογένες
10538
Ίαν Γκίλαν το 2005
35573
wikitext
text/x-wiki
[[Αρχείον:Ian Gillan playing air guitar.jpg|μικρογραφία|250px|Ίαν Γκίλαν το 2005]]
Ο '''Ίαν Γκίλαν''' (* [[19 Αλωναρί]] [[1945]]) εν τραγουδιστής, [[Deep Purple]].
[[Κατηγορίαν:Μουσική|Γκίλαν, Ίαν]]
9a2cng1165dxz0bjtbvnukthz0iy4mf
Στέλιος Καζαντζίδης
0
1735
31478
31381
2013-03-11T10:26:51Z
Legobot
3209
[[M:User:Addbot|Bot:]] Migrating 1 interwiki links, now provided by [[d:|Wikidata]] on [[d:q737903]] [[M:User:Addbot/WDS|(translate me)]]
31478
wikitext
text/x-wiki
Η '''Στέλιος Καζαντζίδης''' (* [[19 Αλωναρί]] [[1931]] — † [[14 Σταυρί]] [[2001]]) έτον [[Ελλάδα|Έλλενας]] τραγουδοποιός.
[[Κατηγορίαν:Μουσική]]
jodm4rom4nzbiu6xniqfsznil5dbj79
Κώστας Κουκοδήμος
0
1736
31382
29210
2013-03-07T22:08:24Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 4 interwiki links, now provided by [[d:|Wikidata]] on [[d:q983862]] [[M:User:Addbot/WDS|(translate me)]]
31382
wikitext
text/x-wiki
'''Κώστας Κουκοδήμος''' (* [[14 Σταυρί]] [[1969]]) εν βουλευτής (ΝΔ) σην [[Πιερία|Πιερίαν]] τη [[Μακεδονία|Μακεδονίας]] και παλεός αγωνιστέας σο λάνγκεμα τη αγώνων τη σταδί.
2k04tz1zazimox29wuqoi8uts9jwmoc
Κατηγορίαν:Φιλοσοφία
14
1743
31600
31383
2013-04-13T08:17:39Z
KLBot2
3570
Bot: Migrating 6 interwiki links, now provided by [[Wikidata]] on [[:d:Q1983674]]
31600
wikitext
text/x-wiki
[[Κατηγορίαν:Επιστήμην]]
5wq3hvbhiwb9gfzfosu4lczyjrocba0
Κορκ
0
1760
36781
34125
2025-12-16T09:06:59Z
Εὐθυμένης
2777
36781
wikitext
text/x-wiki
Ο '''Κορκ''' (''Cork''; ''Corcaigh'') εν πολιτεία σην [[Ιρλανδία|Ιρλανδίαν]]. Οσήμερον εχ' πληθυσμόν 119.230 ανθρώπ (2011).
<br><gallery>
Cork-02-Patrick Street-2017-gje.jpg
City of Cork, Ireland.jpg
Cork-06-Brauerei-2017-gje.jpg
Cork-16-Strasse-2017-gje.jpg
Cork-18-Canty's Bar-2017-gje.jpg
</gallery>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{en}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιρλανδία]]
lsa4h9py1psmhfs7c7139nqgivh4ps6
Modern Talking
0
1762
31385
30178
2013-03-07T22:08:56Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 64 interwiki links, now provided by [[d:|Wikidata]] on [[d:q27417]] [[M:User:Addbot/WDS|(translate me)]]
31385
wikitext
text/x-wiki
[[Αρχείον:Modern Talking.svg|right|300px]]
'''«Modern Talking»''' εν τ’ όνεμα [[Μουσική|μουσικού]] μπάντας αση [[Γερμανία|Γερμανίαν]].
Τ’ ονέματα τη μουσικίων είναι [[Τόμας Άντερς]] και [[Ντίτερ Μπόλεν]].
== Δισκογραφίαν ==
[[Αρχείον:Moderntalking.jpg|thumbnail|right|300px|Modern Talking, 2003]]
* ''[[The 1st Album]]'' (1985)
* ''[[Let's Talk About Love]]'' (1985)
* ''[[Ready for Romance]]'' (1986)
* ''[[In the Middle of Nowhere]]'' (1986)
* ''[[Romantic Warriors]]'' (1987)
* ''[[In the Garden of Venus]]'' (1987)
* ''[[Back for Good]]'' (1998)
* ''[[Alone]]'' (1999)
* ''[[Year of the Dragon]]'' (2000)
* ''[[America]]'' (2001)
* ''[[Victory]]'' (2002)
* ''[[Universe]]'' (2003)
[[Κατηγορίαν:Μουσική]]
[[Κατηγορίαν:Modern Talking|*]]
6o94ykj1vgfw09nv9vt4bz19k8msygf
Κουριτίμπα
0
1763
36784
36782
2025-12-16T09:08:31Z
Εὐθυμένης
2777
36784
wikitext
text/x-wiki
[[Αρχείον:Brasão de Armas do Município de Curitiba.png|70px|left]]
[[Αρχείον:'JardimBotanico.BotanicalGarden.CuritibaParanaBrasilBrazil.JPG|thumb| [http://tools.wikimedia.de/~magnus/geo/geohack.php?language=en¶ms=25_25_47_S_49_16_19_W 25° 25' 47" S 49° 16' 19" O]]]
Η '''Κουριτίμπα''' (σα πορτογαλικά: ''Curitiba'') εν πολιτεία σην [[Βραζιλία|Βραζιλίαν]]. Οσήμερον (2008) εχ' πληθυσμόν 1 828 092 ανθρώπς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{pt}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
olfz1uozft4shwb53v9bcwzdueq8eue
Κυριτίπα
0
1764
29402
2012-11-12T02:51:38Z
Tamara Ustinova
2544
Tamara Ustinova moved page [[Κυριτίπα]] to [[Κουριτίμπα]]
29402
wikitext
text/x-wiki
#REDIRECT [[Κουριτίμπα]]
rr1ir8zs5iknjhv674xf1yc9o643cce
Κόσοβο
0
1787
35934
35637
2024-10-26T05:26:29Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35934
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Κόσοβο'''</big></big><br/>''Република Косово''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| width="140" align="center" | [[Αρχείον:Flag of Kosovo.svg|125px]]
| width="140" align="center" | [[Αρχείον:Emblem of the Republic of Kosovo.svg|125px]]
|-
| width="140" align="center" |
| width="140" align="center" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Europe-Republic_of_Kosovo.svg|300px]]
|}
Το '''Κόσοβο''' εν αμφισβητούμενο κράτος ντο ευρίεται σο νότον τ' [[Ευρώπην|Ευρώπης]]; και σα κεντρικά τα [[Βαλκανική Χερσόνησος |Βαλκάνια]]. Πρωτεύουσαν ατ'ς εν η [[Πρίστινα]]. Η χώρα εχει πληθυσμόν σα 1.804.838 τ' ανθρώπους. ([[2007]]).
Έχει αναγνωριστεί εισά με 117 χώρες μέλη ΟΗΕ.
== Γεωγραφία ==
Το Κόσοβο ευρίεται, σα βόρεια τη [[Σερβία]], σα νότια τα [[Βόρεια Μακεδονία|Σκόπια]] και σα νοτιοδυτικά την [[Αλβανία]].
== Συνδέσμοι ==
* '''[[Εικόναν:Commons-logo.svg|15px]] [[:el:commons:Kosovo|Το Κόσοβο σα Commons]]'''
* '''[[Εικόναν:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Κόσοβο|Το Κόσοβο σο Βικιλεξικόν]]'''
* '''[[Εικόναν:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Kosovo|Χάρτες του Κόσοβο]]'''
* [http://www.assembly-kosova.org/ Το επίσημον ο ιστοτόπον τη κυβέρνησης του Κόσοβου]
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Κόσοβο]]
[[Κατηγορίαν:Ευρώπη|Κόσοβο]]
[[Κατηγορίαν:Βαλκάνια|Κόσοβο]]
6rfu9j0r332zlopdugl2fl76lej06v8
Αζερμπαϊτζάν
0
1793
35907
34361
2024-10-26T05:24:37Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35907
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Αζερμπαϊτζάν'''</big></big><br/>''Azərbaycan Respublikası''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Azerbaijan.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Azerbaijan.svg|125px]]
|-
| align="center" width="140px" | Σημαία του Αζερμπαϊτζάν
| align="center" width="140px" | Το σύμβολον του Αζερμπαϊτζάν
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Azerbaijan (orthographic projection).svg|300px]]
|}
Το '''Αζερμπαϊτζάν''' (σα αζερ. Azərbaycan) εν κράτος ντ' ευρίεται ση δύσαν τ' Ασίας και σα δυτικά της [[Κασπία Θάλασσα|Κασπίας Θάλασσας]]. Πρωτεύουσαν ατ'ς εν η [[Μπακού]]. Η χώρα εχ' πληθυσμόν σα 9.511.100 τ' ανθρώπ'ς (Χορτοθέρτς 2014).
== Γεωγραφίαν ==
Η χώρα ευρίεται σα νότια τη [[Ρουσία|Ρουσίας]], σα βόρεια του [[Ιράν|Ιράν]], τ' [[Αρμουνίας]] και της Γεωργίας. Βρέχκεται σ' δυτικάν ασό [[Κασπία Θάλλασα|Κασπία]] τη Θάλασσα.
== Πολιτικήν ==
Πρόεδρος εν ο Ιλχάμ Αλίγιεφ.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Κατηγορίαν:Azərbaycan|Το Αζερμπαϊτζάν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Αζερμπαϊτζάν|Το Αζερμπαϊτζάν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Azerbaijan|Χάρτες του Αζερμπαϊτζάν ]]'''
{{Πρότυπον:Κράτη τη Ευρώπης}}
[[Κατηγορίαν:Κράτη|Αζερμπαϊτζάν]]
[[Κατηγορίαν:Ασία|Αζερμπαϊτζάν]]
[[Κατηγορίαν:Ευρώπη|Αζερμπαϊτζάν]]
[[Κατηγορίαν:Καυκασία|Αζερμπαϊτζάν]]
[[Κατηγορίαν:Αζερμπαϊτζάν| ]]
ajwobpjvedzkjjxr5t2bea5balbr43z
Κατηγορίαν:Αζερμπαϊτζάν
14
1794
31389
30766
2013-03-07T22:30:33Z
Addbot
3509
[[M:User:Addbot|Bot:]] Migrating 129 interwiki links, now provided by [[d:|Wikidata]] on [[d:q5609682]] [[M:User:Addbot/WDS|(translate me)]]
31389
wikitext
text/x-wiki
{{Commonscat|Azerbaijan}}
[[Κατηγορίαν:Κράτη|Αζερμπαϊτζάν]]
jn9ifc2j1ncx27vdmi9oyjriup60hkd
Βαλκανικόν Χερσόνησος
0
1795
34105
33322
2019-02-17T21:08:36Z
Xaris333
781
34105
wikitext
text/x-wiki
[[Εικόναν:Balkan topo en.jpg|right|thumb|400px|Τ' Βαλκανικόν η χερσόνησος]]
Τ' '''Βαλκανικόν η χερσόνησος''' εν ση ανατολήν τ' [[Ευρώπην|Ευρώπης]] κι ανήκει σα ασ' όλεα τα τρανά τα χερσονησία νατς. Λέγνατεν και ''Βαλκάνια''. Τ' Βαλκανικόν χερσόνησος βρέχεται δυτικά ασήν [[Μεσόγειον Θάλασσα|Μεσόγειον τη θάλασσαν]] και ανατολικά ασήν [[Μαύρον Θάλασσα]].
== Κράτε κι εδάφε ==
* [[Εικόναν:Flag of Albania.svg|20px]] [[Αλβανία]]
* [[Εικόναν:Flag of Bulgaria.svg|20px]] [[Βουλγαρία]]
* [[Εικόναν:Flag of Romania.svg|20px]] [[Ρουμανία]]
* [[Εικόναν:Flag of Greece.svg|20px]] [[Ελλάδα]]
* [[Εικόναν:Flag of Montenegro.svg|20px]] [[Μαυροβούνιον|Μαυροραχιν]]
* [[Εικόναν:Flag of Croatia.svg|20px]] [[Κροατία]]
* [[Εικόναν:Flag of Slovenia.svg|20px]] [[Σλοβενία]]
* [[Εικόναν:Flag of North Macedonia.svg|20px]] [[Βόρεια Μακεδονία]]
* [[Εικόναν:Flag of Turkey.svg|20px]] [[Τουρκία]] (ευρωπαϊκόν)
* [[Εικόναν:Flag of Kosovo.svg|20px]] [[Κόσοβο]]
[[Κατηγορίαν:Χερσονησία|Βαλκανικόν Χερσόνησος]]
[[Κατηγορίαν:Ευρώπη|Βαλκανικόν Χερσόνησος]]
[[Κατηγορίαν:Βαλκάνια| ]]
bzl2dbnwfy0qh8o9ha4nb88a2lpfe11
Μεσόγειον Θάλασσα
0
1796
34799
34798
2021-06-04T07:32:25Z
Wolverène
4171
culturally Cyprus belongs to Europe, same as we don't call Malta an African country though 'technically'/geographically it's rather African
34799
wikitext
text/x-wiki
[[Εικόναν:Mediterranean Sea 16.61811E 38.99124N.jpg|right|thumb|350px|Ασό σατελίτ: τ' Μεσόγειον Θάλασσα]]
Η '''Μεσόγειον Θάλασσα''' εν θάλασσαν απές μερέαν. Ευρίεται σο νότια τ' [[Ευρώπην]]. Βρέχει την Ευρώπην, την [[Ασίαν]] και την [[Αφρικήν]].
== Κράτη ντο συνορεύνε με τη Μεσόγειον Θάλασσα ==
'''[[Ευρώπην]]:'''
* [[Εικόναν:Flag of Spain.svg|30px]]'''[[Ισπανία]]'''
* [[Εικόναν:Flag of France.svg|30px]]'''[[Γαλλία]]'''
* [[Εικόναν:Flag of Monaco.svg|30px]]'''[[Μονακό]]'''
* [[Εικόναν:Flag of Italy.svg|30px]]'''[[Ιταλία]]'''
* [[Εικόναν:Flag of Malta.svg|30px]]'''[[Μάλτα]]'''
* [[Εικόναν:Flag of Slovenia.svg|30px]]'''[[Σλοβενία]]'''
* [[Εικόναν:Flag of Croatia.svg|30px]]'''[[Κροατία]]'''
* [[Εικόναν:Flag of Bosnia and Herzegovina.svg|30px]]'''[[Βοσνία και Ερζεγοβίνη]]'''
* [[Εικόναν:Flag of Montenegro.svg|30px]]'''[[Μαυροβούνιον|Μαυροράχην]]'''
* [[Εικόναν:Flag of Albania.svg|30px]]'''[[Αλβανία]]'''
* [[Εικόναν:Flag of Greece.svg|30px]]'''[[Ελλάδα]]'''
* [[Εικόναν:Flag of Cyprus.svg|30px]]'''[[Κύπρος]]'''
'''[[Ασίαν]]:'''
* [[Εικόναν:Flag of Turkey.svg|30px]]'''[[Τουρκία]]'''
* [[Εικόναν:Flag of the United Arab Republic.svg|30px]]'''[[Συρία]]'''
* [[Εικόναν:Flag of Lebanon.svg|30px]]'''[[Λίβανος]]'''
* [[Εικόναν:Flag of Israel.svg|30px]]'''[[Ισραήλ]]'''
* [[Εικόναν:Flag of Palestine.svg|30px]]'''[[Παλαιστίνη]]'''
'''[[Αφρικήν]]:'''
* [[Εικόναν:Flag of Morocco.svg|30px]]'''[[Μαρόκο]]'''
* [[Εικόναν:Flag of Algeria.svg|30px]]'''[[Αλγερίαν]]'''
* [[Εικόναν:Flag of Tunisia.svg|30px]]'''[[Τυνησίαν]]'''
* [[Εικόναν:Flag of Libya.svg|30px]]'''[[Λιβύη]]'''
* [[Εικόναν:Flag of Egypt.svg|30px]]'''[[Αίγυπτος]]'''
== Βιβλιογραφία ==
*Φερνάν Μπρωντέλ ''Μεσόγειος'', (3 τόμοι), ΜΙΕΤ.
*Φερνάν Μπρωντέλ - Ζωρζ Ντυμπί - Ροζέ Αρναλντέζ - κ. ά. ''Η Μεσόγειος - Άνθρωποι και πολιτισμική κληρονομιά'', Αλεξάνδρεια, 1991, μτφ. Κώστας Αντύπας.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|13px]] [[:el:commons:Κατηγορίαν:Mediterranean Sea|Μεσόγειον Θάλασσα σα Commons]]'''
[[Κατηγορίαν:Θάλασσας|Μεσόγειον Θάλασσα]]
[[Κατηγορίαν:Μεσόγειον Θάλασσα|*]]
4ig435dw14mwnna29dsm4a4koedk54t
Κατηγορίαν:Μεσόγειον Θάλασσα
14
1797
31593
31392
2013-04-13T08:09:52Z
KLBot2
3570
Bot: Migrating 2 interwiki links, now provided by [[Wikidata]] on [[:d:Q5626376]]
31593
wikitext
text/x-wiki
phoiac9h4m842xq45sp7s6u21eteeq1
Συρία
0
1798
36283
36234
2025-07-06T10:04:02Z
78.177.162.141
36283
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Συρία'''</big></big><br/>''الجمهوريّة العربيّة السّوريّة''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of the Syrian revolution.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Emblem of Syria (2025–present).svg|105px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Syria (orthographic projection).svg|300px]]
|}
Η '''Συρία''' (αραβ. سورية) εν κράτος σα δυτικά τη [[Ασίαν|Ασίας]]. Η Συρία βρέχεται σα ανατολικά τ΄ [[Μεσόγειον Θάλασσα|Μεσόγειον τη Θάλασσαν]], σα νοτιανατολικά τ΄ [[Ισραήλ]] και ο [[Λίβανος]]. Ο πρωθυπουργόν ατς εν ο [[Γουαέλ Ναντέρ αλ Χαλκί]] και πρόεδρος ατς εν ο [[Μπασάρ αλ Άσαντ]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Syria|Η Συρία σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Συρία |Η Συρία σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Syria|Χάρτες αση Συρίαν]]'''
[[Κατηγορίαν:Κράτη|Συρία]]
[[Κατηγορίαν:Ασία|Συρία]]
[[Κατηγορίαν:Συρία| ]]
bio7tx6xjdzf4laoc4s06hwnbq9h5sf
Κατηγορίαν:Συρία
14
1799
31598
30806
2013-04-13T08:17:32Z
KLBot2
3570
Bot: Migrating 123 interwiki links, now provided by [[Wikidata]] on [[:d:Q7020538]]
31598
wikitext
text/x-wiki
phoiac9h4m842xq45sp7s6u21eteeq1
Παλαιστίνη
0
1800
36041
35464
2024-10-26T05:35:35Z
Minorax
7522
36041
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Παλαιστίνη'''</big></big><br/>''دولة فلسطين''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Palestine.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Palestine (Official).svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:LocationPalestine.svg|300px]]
|}
Η '''Παλαιστίνη''' (αραβ. فلسطين) εν κράτος σα δυτικά τη [[Ασίαν|Ασίας]]. Η Παλαιστίνη βρέχεται σα ανατολικά τ΄ [[Μεσόγειον Θάλασσα|Μεσόγειον τη Θάλασσαν]], σα βόρεια τ΄ [[Ισραήλ]] και ο [[Λίβανος]]. Ο πρόεδρος ατς εν ο [[Μαχμούντ Αμπάς]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Palestine|Η Παλαιστίνη σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Παλαιστίνη |Η Παλαιστίνη σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Palestine|Χάρτες αση Παλαιστίνη]]'''
[[Κατηγορίαν:Κράτη|Παλαιστίνη]]
[[Κατηγορίαν:Ασία|Παλαιστίνη]]
[[Κατηγορίαν:Παλαιστίνη| ]]
rp4oiof34uih8cgag3l0kp5kwllpqet
Λίβανος
0
1801
35935
32429
2024-10-26T05:26:33Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35935
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Λίβανος'''</big></big><br/>''الجمهوريّة اللبنانيّة''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Lebanon.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of Lebanon.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Lebanon_(orthographic_projection).svg|300px]]
|}
Ο '''Λίβανος''' (αραβ. لبنان) εν κράτος σα δυτικά τη [[Ασίαν|Ασίας]]. Ο Λίβανος βρέχεται σα ανατολικά τ΄ [[Μεσόγειον Θάλασσα|Μεσόγειον τη Θάλασσαν]], σα βόρεια τ΄ [[Ισραήλ]]. Ο πρόεδρος ατς εν ο [[Μισέλ Σουλεϊμάν]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Κατηγορίαν:Lebanon|Ο Λίβανος σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Λίβανος|Ο Λίβανος σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Lebanon|Χάρτες του Λίβανου]]'''
[[Κατηγορίαν:Κράτη|Λίβανος]]
[[Κατηγορίαν:Ασία|Λίβανος]]
[[Κατηγορίαν:Λίβανος| ]]
80y7mwyskevckco4assizx4syy2525l
Ισραήλ
0
1802
36337
36336
2025-12-04T08:46:22Z
Sun8908
8162
Reverted 1 edit by [[Special:Contributions/~2025-38263-04|~2025-38263-04]] ([[User talk:~2025-38263-04|talk]]): Rvv (TwinkleGlobal)
36337
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ισραήλ'''</big></big><br/>''מְדִינַת יִשְׂרָאֵל''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Israel.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of Israel.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Israel_(orthographic_projection).svg|300px]]
|}
[[Αρχείον:Actual_situation_in_Isra%C3%ABl.svg|thumb|]]
Το '''Ισραήλ''' (εβραϊ. מדינת ישראל, αραβ. دولة اسرائيل) εν κράτος σα δυτικά τη [[Ασίαν|Ασίας]]. Το Ισραήλ βρέχεται σα ανατολικά τ΄ [[Μεσόγειον Θάλασσα|Μεσόγειον τη Θάλασσαν]], σα βόρεια τ΄ Αίγυπτου. Ο πρόεδρος ατς εν ο [[Ρεουβέν Ριβλίν]].
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Κατηγορίαν:ישראל|Το Ισραήλ σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Ισραήλ|Το Ισραήλ σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Israel|Χάρτες του Ισραήλ ]]'''
[[Κατηγορίαν:Κράτη|Ισραήλ]]
[[Κατηγορίαν:Ασία|Ισραήλ]]
[[Κατηγορίαν:Ισραήλ| ]]
g20orttvgj37x1gw4s7v0ne8yoet1yb
Κατηγορίαν:Αφρική
14
1803
31580
31513
2013-04-13T08:02:56Z
KLBot2
3570
Bot: Migrating 136 interwiki links, now provided by [[Wikidata]] on [[:d:Q6581695]]
31580
wikitext
text/x-wiki
phoiac9h4m842xq45sp7s6u21eteeq1
Τυνησίαν
0
1804
35379
32436
2023-04-03T19:17:23Z
WikiBayer
7202
35379
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Τυνησίαν'''</big></big><br/>''الجمهورية التونسية''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Tunisia.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat_of_arms_of Tunisia.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 | </big>
|-
| align=center colspan=2 | [[Αρχείον:Tunisia_(orthographic_projection).svg|300px]]
|}
Η '''Τυνησίαν''' (αραβ. تونس) εν αφρικανικόν κράτος ση νότιαν τη [[Μεσόγειον Θάλασσα|Μεσόγειον την θάλασσαν]]. Πρωτεύουσαν ατ'ς εν τ' [[Τύνιδα]]. Ο πρόεδεος ατ'ς εν ο [[Φουάντ Μεμπαζάα]] και ο πληθυσμόν ατ'ς έν σα 10.486.339 τ' ανθρώπ'ς.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Tunisia|Η Τυνησίαν σα Commons]]'''
* '''[[Αρχείον:Greek_wiktionary_logo.png|15px]] [[:wikt:el:Λίβανος|Η Τυνησίαν σο Βικιλεξικόν]]'''
* '''[[Αρχείον:Gnome-globe.svg|15px]] [[:el:commons:Atlas of Tunisia|Χάρτες της Τυνησίαν]]'''
[[Κατηγορίαν:Αφρική|Αίγυπτος ]]
[[Κατηγορίαν:Κράτη|Αίγυπτος]]
[[Κατηγορίαν:Αίγυπτος| ]]
8p8dhdd7tpb5izr9p3yqzkt1u8gkacp
Koνςεπςιόν
0
1807
30193
2013-01-07T01:57:00Z
Omnipaedista
35
Omnipaedista moved page [[Koνςεπςιόν]] to [[Koνσεπσιόν]]
30193
wikitext
text/x-wiki
#REDIRECT [[Koνσεπσιόν]]
0vanqdl1k5vg9a24svebfrtmg8c3z05
Σίλιγο
0
1824
36855
34639
2025-12-16T09:56:40Z
Εὐθυμένης
2777
36855
wikitext
text/x-wiki
'''Σίλιγο''' (σα ιταλικά ''Siligo'') εν [[πολιτεία]] σην νησί [[Σαρδηνία|Σαρδηνίαν]] σην [[Ιταλία|Ιταλίαν]]. Εχ' πληθυσμόν σα 826 τ' ανθρώπ'ς (2020).
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{it}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Ιταλίας|Σίλιγο]]
ht2hdjpf62fweuw4abxdicdhjkzmar4
Norge
0
1852
31524
2013-04-01T08:17:08Z
Magnefl
3569
Redirect because «Norge» and «Noreg» are the names of the country and may be used as a search string.
31524
wikitext
text/x-wiki
#REDIRECT[[Νορβηγία]]
7wpgsye1h7ti3yj85c0z0k4g2sowwkc
Noreg
0
1853
31525
2013-04-01T08:17:26Z
Magnefl
3569
Redirect because «Norge» and «Noreg» are the names of the country and may be used as a search string.
31525
wikitext
text/x-wiki
#REDIRECT[[Νορβηγία]]
7wpgsye1h7ti3yj85c0z0k4g2sowwkc
Λετονία
0
1856
31964
31550
2014-03-24T15:00:38Z
Midnight Gambler
3907
doubtful but trying to trust
31964
wikitext
text/x-wiki
#redirect [[Λεττονία]]
ki5xhzs5f4n65d9t2akvkag1ehjff0k
Ηλίας Τουφεξής
0
1959
35460
35085
2023-08-16T05:50:40Z
Wolverène
4171
img
35460
wikitext
text/x-wiki
[[Αρχείον:Elias Toufexis BW headshot.png|thumb|right|250px]]
Ο '''Ηλίας Τουφεξής''' ([[Αγγλική γλώσσα|αγγ.]]: ''Elias Toufexis''; * [[27 Τρυγομηνάς]] [[1975]], [[Μοντρεάλη]], [[Καναδάς]]) είναι Έλληνας ηθοποιός από τον Καναδά.
== Φιλμογραφίαν ==
* Alphas (2012)
* Zero Hour (2012)
* Rookie Blue (2012)
* Crisis Point (2012)
* Against The Wall (2011)
* Flashpoint (2011)
* Sarila (2011)
* Smallville (2006, 2011)
* The Listener (2011)
* Eureka (2010)
* Conduct Unbecoming (2011)
* Lost Girl (2010)
* The Partner (short) (2010)
* Sand Serpents (2009)
* Ba 'AL (2008)
* South Of Houston St. (2008)
* Flash Gordon (2007)
* Painkiller Jane (2007)
* Supernatural (2006)
* Blade: The Series (2006)
* Connor's War (2006)
* Engaged To Kill (2006)
* Kraken: Tentacles of the Deep (2006)
* Stargate Atlantis (2006)
* Bloodsuckers (2005)
* Da Vinci's Inquest (2005)
* The Collector (2005)
* The Five People You Meet In Heaven (2004)
* Brilliant (2004)
* 8 Decoys (2004)
* Dead Like Me (2004)
* Dead Zone (2004)
* The Days (2004)
* Fries With That (2003)
== Συνδέζμαι ==
* [http://www.eliastoufexis.com/ Το επίσημον ο ιστοτόπον]
* http://www.imdb.com/name/nm1340118/
* [https://web.archive.org/web/20130301034046/http://www.enternity.gr/Article/%CE%97%CE%BB%CE%AF%CE%B1%CF%82-%CE%A4%CE%BF%CF%85%CF%86%CE%B5%CE%BE%CE%AE%CF%82:-%CE%97...-%CF%86%CF%89%CE%BD%CE%AE-%CF%84%CE%BF%CF%85-Adam-Jensen/972.html Ηλίας Τουφεξής: Η... φωνή του Adam Jensen (ελλ.)]
[[Κατηγορίαν:Σινεμά]]
[[Κατηγορίαν:Έλληνες]]
0thnoy7do7smhzqeafgvibg7qx1kxg6
Κακάου
0
1961
31931
31930
2014-02-20T03:17:20Z
Omnipaedista
35
Omnipaedista moved page [[Κακού]] to [[Κακάου]]
31931
wikitext
text/x-wiki
Ο '''Κλαουντεμιρ Ζερονιμο Μπαρετο Κακάου''' (''Claudemir Jeromino Barreto Cacau''; στις [[7 Μαρτς]] [[1981]], [[Σαντο Ανδρε]]) εν [[Γερμανία|Γερμανικον]] ποδοσφαιριστής.
== Συνδέσμ==
* {{commonscat|Cacau}}
dsyucdrho40matqiu4wrnyx8irrm4je
Κακού
0
1964
31932
2014-02-20T03:17:21Z
Omnipaedista
35
Omnipaedista moved page [[Κακού]] to [[Κακάου]]
31932
wikitext
text/x-wiki
#REDIRECT [[Κακάου]]
sacr0ustu3i9hqsj1kz92ns2wo7h5jq
Λεττονία
0
1975
35936
34857
2024-10-26T05:26:36Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35936
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Λεττονία'''</big></big><br/>''Latvijas Republika''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Latvia.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Latvia.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:EU-Latvia.svg|300px]]
|}
Η '''Λεττονία''' εν [[κράτος]] σο βορειάν τ' [[Ευρώπην|Ευρώπης]]. Πρωτεύουσαν ατ'ς εν τ' [[Ρίγα]] κι πρόεδρος ατ'ς εν ο [[Άντρις Μπέρζινς]]. Η χώρα έχ' πληθυσμόν σα 2.070.371 τ' ανθρώπ'ς (2011).
== Γεωγραφίαν ==
Η Λεττονία ευρισκάται ση Βαλτικήν τη θάλασσαν αφκά, εχ' την [[Εσθονία]], τη [[Λευκορουσία]], τη [[Λιθουανία]] και τη [[Ρουσία]] απές. Έχ' τρανά πολιτείας τ' [[Ντώγκαβπιλς]], τ' [[Λιεπάγια]] και τη [[Ρίγα]].
== Συνδέζμαι ==
* [https://web.archive.org/web/20140317183808/http://www.latvia.lv/ Το επίσημον ο ιστοτόπον τη κυβέρνησης τη Λεττονίας]
{{Πρότυπον:Κράτη τη Ευρώπης}}
{{Πρότυπον:Κράτη ΕΣ}}
[[Κατηγορίαν:Κράτη|Λεττονία]]
[[Κατηγορίαν:Ευρώπη|Λεττονία]]
hr8sxb88r45p11f7mjnjvtnhxm1w5p7
Србија
0
1996
32005
2014-06-01T02:37:19Z
Крушевљанин Иван
4213
Redirected page to [[Σερβία]]
32005
wikitext
text/x-wiki
#Redirect[[Σερβία]]
2q34wbxoyymzu9vlesrks3qsmthxazy
Λατινικήν Αμέρικα
0
2003
35238
34925
2022-10-10T18:51:27Z
Tzauarner
9320
Ελαφρώς ενημερωμένη ορθογραφία, άλλαξα το τελικό "-ν" για να προστεθεί στο όνομα του συνδέσμου
35238
wikitext
text/x-wiki
[[Αρχείον:Latin America (orthographic projection).svg|thumb|250px|Λατινικήν Αμέρικα]]
Η '''Λατινικήν Αμέρικα''' εν τμήμα τη ήπειρος τη Αμέρικας, π'εκατακτέθεν ασ'ισπανούς και ασα πορτογάλλους. Τα χώρας ατ'ς είναι το [[Μεξικό|Μεξικόν]], η [[Κολομβία|Κολομβίαν]], η [[Αργεντίνα|Αργεντίναν]], η [[Βραζιλία|Βραζιλίαν]], η [[Χιλή|Χιλήν]], η [[Ουρογουάη|Ουρογουάην]], η [[Παραγουάη|Παραγουάην]], η [[Βενεζουέλα|Βενεζουέλαν]], το [[Περού]], το [[Πουέρτο Ρικό]] και άλλα μικρότερα χώρας. Ατουκά τα αρθώπς καλλιεργούνε καβεάν, ρύζ, φρούκτα, τσάγια αλλά και ναρκωτικά ουσίας.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Latin America|Η Λατινικήν Αμέρικα σα Commons]]'''
[[Κατηγορίαν:Γεωγραφίαν|Λατινικήν Αμέρικα]]
rrdfq7unuxngki368mygncswhdkrgnx
Λατινική Αμερική
0
2004
34475
34453
2020-04-08T05:46:48Z
Tulsi
5081
Cross-wiki abuse
32023
wikitext
text/x-wiki
Η Λατινική Αμέρικαν εν το τμήμα τη κεντρικής και νότια Αμέρικας.Ατουκά ζουν πολλοί Ινδιάννοι,Ισπανοί,Πορτογάλς,Εβραίοι και άλτς.Εκατακτέθεν ασα ευρωπαίους και για τ'αβούτο έχνε ευρωπαεκά γλώσσας(ισπανικά,πορτογάλικα,ιταλικά).Τα τσιπ τρανότερα χώρας σατς είναι το Μέξικον,η Βραζιλίαν,η Αργεντίναν,η Κολομβίαν και η Χιλήν.
dqyi78tm1ihv77cplph2pdbddpcmxm1
Wiki
0
2007
32031
2014-07-14T03:02:36Z
Verdy p
2980
Verdy p moved page [[Wiki]] to [[Βικι]]: use same orthography as local name "Βικιπαίδεια" in Pontic
32031
wikitext
text/x-wiki
#REDIRECT [[Βικι]]
ebibiojqs47ir5pk5yv7ljq9r9awjyn
Trojany
0
2024
32494
32072
2015-08-04T22:08:57Z
YiFeiBot
4458
Ρομπότ: Μεταφέρω 2 σύνδεσμους interwiki, που τώρα παρέχονται από τα [[d:|Wikidata]] στο [[d:q7845134]]
32494
wikitext
text/x-wiki
[[Αρχείον:Trojany województwo mazowieckie.JPG|thumb|right|250px|Trojany]]
Το '''Trojany''' εν χωρίον σα ανατολικά τη [[Πολωνία|Πολωνίας]]. Ο πληθυσμόν αθέ είν' ασα 490 τ' ανθρώπ'ς (2014).
[[Κατηγορίαν:Πολωνία]]
[[Κατηγορίαν:Χωρία]]
gp8xxnpc6otfwj0mnfu92hs6sxxy8g8
Βικιπαίδεια:Вики-Сабантуй 2015
4
2032
32089
2014-10-16T16:19:54Z
Kaiyr
2342
Καινούρεον σελίδαν με '{{softredirect|wmru:Вики-Сабантуй 2015}}'
32089
wikitext
text/x-wiki
{{softredirect|wmru:Вики-Сабантуй 2015}}
my62xy332co0tjllaz55zwot76ee5o1
Π.Α.Ο.Κ.
0
2034
35168
34467
2022-05-16T13:11:10Z
2A02:587:6E10:A400:68A7:C8F0:74A0:7262
35168
wikitext
text/x-wiki
Ο Π.Α.Ο.Κ (Πανθεσσαλονικιός Αθλητικός Όμιλος Κωνσταντινουπολιτών) είν' έναν σωματείον α 'σην Σαλονίκη απέ το 1926. Είναι προσφυγικό σωματείον. Ιδρύθηκε απ' Έλληνες απε την Πόλη. Έχει πολλάν αθηλτικάν τμήματα όπως Ποδόσφαιρον, Καλαθοσφαίριση, Πετοσφαίριση, Χειρσφαίριση και άλλον. Σο ποδόσφαιρον έχει γήπεδο ασην Τούμπα και σα άλλον αθλήματα ασην Πυλαία.
6tm8mvm5tbhuwdrvasnz89o46bkk3wj
Έδεσσα
0
2100
36858
32453
2025-12-16T09:59:17Z
Εὐθυμένης
2777
36858
wikitext
text/x-wiki
Ἡ ''' Ἔδεσσα''' ἔν [[Ἑλλάδα|ἑλλενικόν]] πολιτείαν ντ'εὐρίεται 'ς σὴν [[Μακεδονία|Μακεδονίαν]] καὶ ἔχ' πληθυσμόν 18.253 τ'ἀνθρώπ'ς. Εὐρίεται 'ς σὴν κεντρικήν Μακεδονίαν, 'ς σὸν νομόν τσῆ Πέλλας καὶ ἔν ἡ πρωτεύουσάν ἀτ'ς. Ἔν χτισμέντζα ἀπάν σὸ βράχον τσῆ παλαιόν ἀκρόπολην τσῆ Ἔδεσσας σε ψήλος 320 μέτρων.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Εδεσσα}}
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας|Ἔδεσσαν]]
[[Κατηγορίαν:Μακεδονία|Ἔδεσσαν]]
gnj2dp3kb2y3yi7740ytvn3zo8tnh4d
Γιαννιτσά
0
2101
36863
36304
2025-12-16T10:03:25Z
Εὐθυμένης
2777
36863
wikitext
text/x-wiki
Τὰ '''Γιαννιτσά''' ἔν ἑλλενικόν πολιτείαν ντ'εὐρίεται 'ς σὴν [[Μακεδονία|Μακεδονίαν]] καὶ ἔν ἡ ἄς οὗλτς τρανόν πολιτείαν τῆ νόμονος τσῆ Πέλλας με 29.789 τ'ἀνθρώπ'ς. Αοὗτε ἡ πολιτείαν 'κί ἔν πολλά μακρά ἀσ'ἀρχαῖον τσῆ Πέλλας ντ'ἐγεννέθεν ὁ Μεγαλέξανδρον. Τὰ ἐρείπια τσῆ Πέλλας εὐρίουνταν 7 χιλιόμετρα ἀς σὰ Γιαννιτσά. Τὰ Γιαννιτσά εὐρίουνταν ἐπί τσῆ ἱστορικῆς Ἐγνατίας Ὀδοῦ 'ς σὸ κέντρον τσῆ Μακεδονίας, σε ψήλος 40 μέτρων, σουμά 'ς σὸ ραχίν Πάικο.
== Τ'ὄνεμαν τῆ Γιαννιτσῶν ==
Τὰ Γιαννιτσά ἐπαίραν τ'ὄνεμαν ἀτοῦν ἀς σὸν Τούρκον στρατηλάτη Γαζῆ Ἀχμέτ Ἐβρενός, π'ἐκατέλαβεν τὴν περιοχήν τὸ 1385 καὶ ἐπανίδρυσεν τὸν ρωμαίικον τὸν οἰκισμόν «Βαρδάριον» καὶ ἐδῶκεν σ'ἀτόν τ'ὄνεμαν «Γενιτσέ ι Βαρντάρ», «Νέο Βαρδάρι». Τὸ 1926 τὸ ἐλλενικόν τὸ κράτος ἔλλαξεν τ'ὄνεμαν σε Γιαννιτσά.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Γιαννιτσα}}
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας]]
[[Κατηγορίαν:Μακεδονία]]
gc7jprrmk265vhyqvctwt8c85z4g9l2
Γιώργος Νταλάρας
0
2102
36152
36151
2025-02-01T19:34:55Z
Nikos Patas
11433
36152
wikitext
text/x-wiki
Ο Γιώργος Νταλάρας εν Έλληνας τραγουδάνος, ερμηνευτής τη Ελληνικής τραγωδίας. Τον Τρυγομηνάν τη 2006 ανακηρύχθεν Πρεσβευτής Καλής Θέλησης τη Ύπατης Αρμοστείας τη ΟΗΕ για τοι Πρόσφυγες.
Εγεννέθεν σα 29 Σταυρίτε 1949 σον Πειραιάν. Κατάγεται από οικογένειαν μουσικών. Ο κύρτς'ατ, ο Λουκάς Νταράλας έτον κι'ατός τραγουδάνος και συνθέτης σον χώρον τη ρεμπέτικης μουσικής. Τα πρώτα μνήμες'ατ είναι σουμά δεμένα με τα βασικά μορφές τη ελληνικής μουσικής, την δημοτικήν, την σμυρνέικην, την ρεμπέτικην και την λαϊκήν τραγωδίαν. Ατά τα τζιρέδας επηρέασαν ατόν άμον καλλιτέχνην και ετραγούδεσεν'ατά σα συναυλίας και σα δίσκους'ατ. Σην καριέραν'ατ ετραγούδεσεν και άλλα πολλά τζιρέδας τραγωδίας αήκα άμον βυζαντινά ύμνους, λυρικά, σύγχρονα έντεχνα, λάτιν, όπερα, συμφωνικά έργα, ροκ, ποπ κ.α., ενώ εσυνεργάστε με πολλά από τα σημαντικότερα συμφωνικά ορχήστρας τη κοσμί. Έπραγματοποίησεν συνεργασίας με τοι πλέησε ας τοι σύγχρονους Έλληνες συνθέτες και εκπροσώπησεν την ελληνικήν τραγωδίαν.
== Πρώτο Βήματα ==
Ερχήνωσεν το 1965 όνταν έτον 16 χρονών, έπαιζεν κιθάραν και ετραγώδνε σον πάλκον "Στου Στελλάκη", με τον βετεράνον Στελιον Περπινιάδην και τον γιο'νατ τον Βαγγέλην σο Χαϊδάρ.
Ο Βαγγέλης Περπινιάδης, ο σύντροφον τη κύρ τη Γ. Νταλάρα, επροσπάθεσε να βοηθά'τον να εμπαίν σην δισκογραφίαν. Έγραψεν'ατον δύο τραφωδίας και επρώτενεν'ατον να ηχογραφούν'ατα σ΄ έναν στούντιο σα Εξάρχεια. Ο 17χρονον Γ. Νταλάρας σίτε πάει σο στούντιο την ημέραν τ' αηχογραφούσαν τα τραγωδίας, δύο άρματα μάχης εστάθαν σο μέρος τη Στουρνάρη κιαν. Σ'άλλ τη μερέαν έτον η ίδια εικόνα. Έτον Παρασκευή 21 Απριλί 1967, η ημέρα όνταν η στρατιωτική χούντα εκατέλαβεν την εξουσίαν, και εγόμωσε το κέντρον τη Αθήνας με τα τάνκς. Και για τ'ατό κ'εμπόρεσε να πάει στο στούντιο. Η ηχογράφηση εματαιώε και ατα τα τραγωδίας καμίαν κ'εγράφταν. Ας την αυτοβιογραφίαν τη Βαγγέλη Περπινιάδη μαθάνουμε ατά τα δύο τραγωδίας ντο έταν το "Μπροστά στα σκαλοπάτια σου" έναν κανταδορίστικον χασάπικον και το "Πάντα σε φίλους πίστευα" έναν ζεϊμπέκικον.
Ας τα πέντε μήνας και ύστερα ηχογραφεί το πρώτον τραγωδίαν'ατ ας την εταιρίαν "Αυλός" τη Γ. Περγαντή. Η "Προσμονή" σην μουσικήν τη Βασίλη Αρχιτεκτονίδη και σα στίχους τη Παναγιώτη Καλαποθαράκου ηχογραφέθεν το 1967 σε έναν μικρόν στούντιο σην οδό Μασσαλίας, ούμερ έν πάροδος τη Σόλωνος. Ατό η τραγωδία ελάστεν σε δίσκον 45 στροφών, άμα εκόπεν αμέσως και όχι τυχαία ας την λογοκρισίαν τη συνταγματαρχίων. Οι στίχοι έταν τσιπ πολιτικοί: "Πότε η καμπάνα του λαού / του γερο-Μακρυγιάννη / λεύτερο χώμα κι ουρανό / για όλους θα σημάνει"
Ούμπως επαραδέχτεν ο ίδιος, τη κυρ'σατ το όνομαν εδιευκόλυνεν'ατον πολλά σα πρώτα βήματα'τ και άνοιξεν'ατον πόρτας. Ερχήνωσε να φανερίζ σα διάφορα λαϊκά μαγαζία και να παίζ κιθάραν και να τραγωδεί με αήκα ονόματα ούμπως η Καίτη Γκρέυ, ο Νίκον Καλλέργης και άλλ. Ολίγον υστερνία, ο Σπύρος Ζαγοραίος, τη κυρ'σατ ο αδελφικόν σύντροφον, κουείζ τον Μάκην Μάτσαν σο μαγαζί'νατ σην Πλάκαν για να αφουγκράται τον Νταλάραν. Ο Μάτσας αβασλανεύκεται και ο Γιώργος υπογράφ το ίδιον εβδομάδαν το πρώτον συμβόλαιον συνεργασίας σην "ΜΙΝΟΣ". Έναν συμβόλαιον και έναν συνεργασίαν ντο εκράτεσε ας το 1968 ούς το 2005.
Το 1969, ας τα κάποια συμμετοχές και ύστερα σα δίσκους με τη Λοΐζονος τα τραγωδίας, Μητσάκη κ.α., ηχογράφ τον πρώτον προσωπικόν'ατ δίσκον με τα τραγωδίας τη Σταύρονος Κουγιουμτζή, Λουκιανού Κηλαηδόνη, Γρηγόρη Φούντα, Γιώργονος Μητσάκη σε στίχους Κουγιουμτζή, Άκου Δασκαλόπουλονος, Δημήτρη Ιατρόπουλονος και Κώστα Βίρβου.
Ασ τ'όλα τα τρανά επιτυχίας τη πρώτου δίσκου, τον οποίο ηχογράφεσε ούνταν έτον 20 χρόνων, έταν το "Πού ΄ναι τα χρόνια" και το "Ο ουρανός φεύγει βαρύς" τα οποία ακούγουνταν ούς οσήμερον. Αμέσως ας την κυκλοφορίαν ατού τη πρώτου δίσκου και ύστερα εσυνεργάστε με την ήδη καταξιωμέντσαν ατότες Μαρινέλλαν σο "Στορκ" για 3 χρόνεα. Με ατόν τον τρόπον η Μαρινέλλα εσύστησεν σον κόζμον τον Γ. Νταλάρα.
Το 1970 ελάστεν ο δίσκος "Να ΄τανε το 21", ολόεν τα τραγωδίας τη Σταύρονος Κουγιουμτζή. Ας ατόν το δίσκον εξεχωρίγαν αήκα κομμάτεα ούμπως το "Νά ΄τανε το 21", "Αν δεις στον ύπνο σου ερημιά", "Μ΄ έκοψαν, με χώρισαν στα δυο" και "Κάπου νυχτώνει".
Επ'εκεί επήε η συνεργασία με τον Μάνον Λοΐζον, πη ανάμεσα σ'αλλα είπεν τα τραγωδίας ούμπως το "Αχ χελιδόνι μου", το "Έχω ένα καφενέ", το "Πάνε να πεις", το "Μάνα δεν φυτέψαμε", το "Δέκα παλικάρια", όλα σα στίχους τη Λευτέρη Παπαδόπουλονος.
Μακρύν έτονε και η συνεργασία'τ με τον Απόστολον Καλδάραν. Χαρακτηριστικά δείγματα τη δουλείας'ατουν είναι οι δίσκοι "Μικρά Ασία", ντο ελάστεν τον Αλωνάρ τη 1972 και ο "Βυζαντινός Εσπερινός" το 1973, σ'οποία επήρε μέρος και η Χάρις Αλεξίου, άμα και κάποια λαϊκά τραγωδίας ούμπως η "Φαντασία" και το "Αχ ο μπαγλαμάς". Η κυκλοφορία τη δίσκονος "Μικρά Ασία" συνέπεσε με την επέτειον τη 50 χρόνων ας την Μικρασιατικήν καταστροφήν.
Η ηχογράφηση τη "Λιανοτράγουδων της πικρής πατρίδας" τη Μίκη Θεοδωράκη και τη Γιάννη Ρίτσονος με λαϊκήν ενορχήστρωσην σφραγίζνε το έλασμαν σην Δημοκρατίαν (1974). Ίντανε τραγωδίας σταθμοί ούμπως "Τη ρωμιοσύνη μην την κλαις", "Εδώ το φως", "Κουβέντα με ένα λουλούδι", "Το κυκλάμινο", "Καρτέρεμα" κ.α. Τα "Λιανοτράγουδα" ηχογραφέθαν για πρώτη φορά σο Παρίσι από την Μαρίαν Φαραντούρην το 1972 και δεύτερην φοράν σην Αθήναν κρυφά (ας τη δικτατορίας το κατσίν) με τον Γιώργον Νταλάραν και την Άννα Βίσση, πη ατότες επρωτοφανέρτσε. Δύο χρόνεα ύστερα, το 1976, ηχογράφνε δύο τραγωδίας ("Κόκκινο τριαντάφυλλο" και "Εκείνος ήταν μόνος") σην μνήμην τη Αλέκονος Παναγούλη. Ατά τα τραγωδίας ελάστανε σε δισκόπον 45 στροφών, άμα ύστερα εσεγκαν'ατα και σα τρανά δίσκους.
== Δισκογραφία ==
Ούς οσήμερον έγραψε ας τα 70 προσωπικούς δίσκους περισσόν (τ'οποία επέρασαν τα 15 000 000 αντίτυπα σ'όλον τον κόσμον), και επήρε μέρος σην ηχογράφησην ας τα 80 και περισσόν άμον ερμηνευτής, μουσικός και παραγωγός.
Κάποιοι δίσκοι-σταθμοί σην πορείαν τη Νταλάρα είναι: "Μικρές πολιτείες", "Μικρά Ασία", "Οι Μάηδες οι ήλιοι μου", "Latin", "50 Χρόνια Ρεμπέτικο", "Τα Τραγούδια μου", "Ζωντανή Ηχογράφηση στο Αττικόν", "Live recording at the Mann Auditorium", "Αφιέρωμα στο Βασίλη Τσιτσάνη".
Η κυκλοφορία τη δίσκονος "Μικρά Ασία" το 1972 έν σταθμός για την ελληνικήν δισκογραφίαν, γιατί με 50.000 πούλεματα θεωρείται άμον ο πρώτος χρυσός δίσκος σην Ελλάδαν. Το 1975 ο δίσκος "50 Χρόνια Ρεμπέτικο" απές μαναχόν σα ολίγα μήνας ας την κυκλοφορίαν'ατ εκαθιέρωσεν για πρώτην φορά σην Ελλάδαν τον όρον "πλατινένιος δίσκος" με περισσόν ας τα 500.000 πούλεματα. Αήκον κι εν βέβαια πως πριν ας τ'ατόν κι επουλούνταναν οι δίσκοι τη Καζαντζίδη, τη Μπιθικώτση και τη Θεοδωράκη. Απλά ατότες κι' είχαν καθιερωμένα τα απονομές πλατινένιων δίσκων. Το ρεκόρ τη πουλεμάτων ές ο δίσκος "Τα Τραγούδια μου" (1983) ντ'επυλέθεν ας τα 700.000 περισσόν και ους ατώρα πουλίεται και καθιστά τον δίσκο έναν ας τα εμπορικά επιτυχημένα όλων των εποχών. Το 1987 έτονε ο δίσκος "Λάτιν (Latin)" με 650.000 πούλεματα και το 1989 ο δίσκος "Μη μιλάς, κινδυνεύει η Ελλάς" με ας τα 300.000 πούλεματα περισσόν.
trnl2gbpbdaoutc6v617a9za9v1u1s2
Αλέξανδρος Τάταρνικοφ
0
2104
34494
34434
2020-04-08T05:46:58Z
Tulsi
5081
Cross-wiki abuse
32464
wikitext
text/x-wiki
H '''Αλέξανδρος, Τάταρνικοφ''' (* 25 Αλωναρί 1993 —) έτον Ρουσίαν καλλιτέχνης.
== Συνδέζμαι ==
*[http://physics.ecuadors.net/index.php?title=%CE%91%CE%BB%CE%AD%CE%BE%CE%B1%CE%BD%CE%B4%CF%81%CE%BF%CF%82_%CE%A4%CE%AC%CF%84%CE%B1%CF%81%CE%BD%CE%B9%CE%BA%CE%BF%CF%86]
[[Κατηγορίαν:καλλιτέχνης]]
rslp07fyb0fr99owxj2y9lxndvouewk
Πρότυπον:FlowMention
10
2108
32481
2015-08-03T23:36:54Z
Flow talk page manager
4932
/* Automatically created by Flow */
32481
wikitext
text/x-wiki
@[[Χρήστες:{{{1|Example}}}|{{{2|{{{1|Example}}}}}}]]
5103u2lisf0trkpnuebsg76w0mcne9f
Πρότυπον:LQT Moved thread stub converted to Flow
10
2118
32528
2015-10-02T20:09:02Z
Flow talk page manager
4932
/* Automatically created by Flow */
32528
wikitext
text/x-wiki
This post by {{{author}}} was moved on {{{date}}}. You can find it at [[{{{title}}}]].
e5j16chw2130kmdotptl65jvxa6lw5w
Πρότυπον:LQT page converted to Flow
10
2119
32529
2015-10-02T20:09:02Z
Flow talk page manager
4932
/* Automatically created by Flow */
32529
wikitext
text/x-wiki
Previous page history was archived for backup purposes at <span class='flow-link-to-archive'>[[{{{archive}}}]]</span> on {{#time: Y-m-d|{{{date}}}}}.
njhr9sbh7lx81p2xfwikn7amdd3n1zn
Πρότυπον:Archive for converted LQT page
10
2120
32530
2015-10-02T20:09:02Z
Flow talk page manager
4932
/* Automatically created by Flow */
32530
wikitext
text/x-wiki
This page is an archived LiquidThreads page. '''Do not edit the contents of this page'''. Please direct any additional comments to the [[{{{from}}}|current talk page]].
nigyidinm7czjt0s9dq851dwhckapia
Πρότυπον:LQT post imported with supressed user
10
2121
32531
2015-10-02T20:09:02Z
Flow talk page manager
4932
/* Automatically created by Flow */
32531
wikitext
text/x-wiki
This revision was imported from LiquidThreads with a suppressed user. It has been reassigned to the current user.
1pswkbcu7hauadd98nklgf3pku080ee
Πρότυπον:LQT post imported with different signature user
10
2122
32532
2015-10-02T20:09:03Z
Flow talk page manager
4932
/* Automatically created by Flow */
32532
wikitext
text/x-wiki
''This post was posted by [[User:{{{authorUser}}}|{{{authorUser}}}]], but signed as [[User:{{{signatureUser}}}|{{{signatureUser}}}]].''
gr9xg2oo9p9alcaf8usi587bcmsi65s
Πρότυπον:Wikitext talk page converted to Flow
10
2123
32533
2015-10-02T20:09:03Z
Flow talk page manager
4932
/* Automatically created by Flow */
32533
wikitext
text/x-wiki
Previous discussion was archived at <span class='flow-link-to-archive'>[[{{{archive}}}]]</span> on {{#time: Y-m-d|{{{date}}}}}.
ccusakfp9y2sl227h5sbt4ok1ptcsxi
Πρότυπον:Archive for converted wikitext talk page
10
2124
32534
2015-10-02T20:09:03Z
Flow talk page manager
4932
/* Automatically created by Flow */
32534
wikitext
text/x-wiki
This page is an archive. '''Do not edit the contents of this page'''. Please direct any additional comments to the [[{{{from|{{TALKSPACE}}:{{BASEPAGENAME}}}}}|current talk page]].
hd1xxik7k0u7gcb9oq9ddgh20zmhpy4
Εμείς κι Εμείς
0
2125
34486
34442
2020-04-08T05:46:54Z
Tulsi
5081
Cross-wiki abuse
32535
wikitext
text/x-wiki
Εμείς κι Εμείς εν σειράν κωμικόν τελεοπτικόν α σο Mega.
Α σ'εναν οικίαν τη Αθήνας, α σο Μετς, ζουνα 8 αθρώποι, οι 7 φίλοι έντουνα σ ις σπουδάς ατών και η μία εν αξαδέρφ τσι Σμαραγδίας και τσι Αντωνίας, η Παρθένα.
kzjnnwr8wmtvq636iynnnbg28gpp4nq
Βικιπαίδεια:Asian Month
4
2131
32566
2015-11-19T13:56:55Z
永続繁栄
5060
Καινούρεον σελίδαν με ' '''Asian Month ''' is about writing Asia. If you are writing five or more pages about Asia, Special design letter(from other country) will send to you....'
32566
wikitext
text/x-wiki
'''Asian Month ''' is about writing Asia. If you are writing five or more pages about Asia, Special design letter(from other country) will send to you. Why don't you join us? If you are interested, please sign [[/participants|this page]]. If you want to be local organizer, please sign below.
Cf.[[m:Wikipedia Asian Month]]
[[:en:Wikipedia:Wikipedia Asian Month]]
== Organizers ==
exareu8u9so1ufl6z7hdoo9t3htvpw5
Βικιπαίδεια:Asian Month/participants
4
2132
32567
2015-11-19T13:57:35Z
永続繁栄
5060
Καινούρεον σελίδαν με '--~~~~'
32567
wikitext
text/x-wiki
--[[Χρήστες:永続繁栄|永続繁栄]] ([[Καλάτσεμαν χρήστε:永続繁栄|talk]]) 13:57, 19 Αεργί 2015 (UTC)
eli8oaw7h4j853k1u5rpad1t70ntck4
Σέρρες
0
2133
36870
35026
2025-12-16T10:09:33Z
Εὐθυμένης
2777
36870
wikitext
text/x-wiki
[[Αρχείον:Serres overview.jpg|μικρογραφία]]
Τα Σέρρας εν η πρωτεύουσα του ομώνυμου νομού.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Σερρες}}
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας]]
[[Κατηγορίαν:Μακεδονία]]
6cpwk8fhevyabqr2im7we9f44l3sug0
Ουκρανική Εθνική Ένωση
0
2135
34888
33641
2021-08-20T16:52:28Z
InternetArchiveBot
8521
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.8
34888
wikitext
text/x-wiki
'''Ουκρανική Εθνική Ένωση ''' ([[ουκρανική γλώσσα|ουκρανικά]]: Український Національний Союз) είναι ένα πολιτικό κόμμα στην [[Ουκρανία]], με επικεφαλής την [[Βιτάλη Καμπύληλαιμούεφ]]<ref>https://web.archive.org/web/20160304060011/http://ru.tsn.ua/politika/u-svobody-poyavitsya-novyy-konkurent-na-nacionalisticheskom-pole-303510.html</ref><ref>http://glavnoe.ua/news/n135622</ref>.
== Παραπομπές ==
<references />
== Εξωτερικοί Σύνδεσμοι ==
*[http://www.naso.org.ua/ Επίσημη ιστοσελίδα του Ουκρανική Εθνική Ένωση]
[[Κατηγορίαν:Ουκρανία| ]]
[[Κατηγορίαν:Πολιτικήν|Πολιτικήν]]
hsbku438akrn1bltobecrgg3rolcazw
Module:TableTools
828
2140
34161
32601
2019-05-17T18:33:55Z
DiBabelYurikBot
7312
Copying one change by Capankajsmilyo: "copied from enwiki" from [[mw:Module:TableTools]]. ([[mw:WP:TNT|docs]], [[c:Data:I18n/DiBabel.tab|translate]])
34161
Scribunto
text/plain
--[[
------------------------------------------------------------------------------------
-- TableTools --
-- --
-- This module includes a number of functions for dealing with Lua tables. --
-- It is a meta-module, meant to be called from other Lua modules, and should --
-- not be called directly from #invoke. --
------------------------------------------------------------------------------------
--]]
local libraryUtil = require('libraryUtil')
local p = {}
-- Define often-used variables and functions.
local floor = math.floor
local infinity = math.huge
local checkType = libraryUtil.checkType
local checkTypeMulti = libraryUtil.checkTypeMulti
--[[
------------------------------------------------------------------------------------
-- isPositiveInteger
--
-- This function returns true if the given value is a positive integer, and false
-- if not. Although it doesn't operate on tables, it is included here as it is
-- useful for determining whether a given table key is in the array part or the
-- hash part of a table.
------------------------------------------------------------------------------------
--]]
function p.isPositiveInteger(v)
if type(v) == 'number' and v >= 1 and floor(v) == v and v < infinity then
return true
else
return false
end
end
--[[
------------------------------------------------------------------------------------
-- isNan
--
-- This function returns true if the given number is a NaN value, and false
-- if not. Although it doesn't operate on tables, it is included here as it is
-- useful for determining whether a value can be a valid table key. Lua will
-- generate an error if a NaN is used as a table key.
------------------------------------------------------------------------------------
--]]
function p.isNan(v)
if type(v) == 'number' and tostring(v) == '-nan' then
return true
else
return false
end
end
--[[
------------------------------------------------------------------------------------
-- shallowClone
--
-- This returns a clone of a table. The value returned is a new table, but all
-- subtables and functions are shared. Metamethods are respected, but the returned
-- table will have no metatable of its own.
------------------------------------------------------------------------------------
--]]
function p.shallowClone(t)
local ret = {}
for k, v in pairs(t) do
ret[k] = v
end
return ret
end
--[[
------------------------------------------------------------------------------------
-- removeDuplicates
--
-- This removes duplicate values from an array. Non-positive-integer keys are
-- ignored. The earliest value is kept, and all subsequent duplicate values are
-- removed, but otherwise the array order is unchanged.
------------------------------------------------------------------------------------
--]]
function p.removeDuplicates(t)
checkType('removeDuplicates', 1, t, 'table')
local isNan = p.isNan
local ret, exists = {}, {}
for i, v in ipairs(t) do
if isNan(v) then
-- NaNs can't be table keys, and they are also unique, so we don't need to check existence.
ret[#ret + 1] = v
else
if not exists[v] then
ret[#ret + 1] = v
exists[v] = true
end
end
end
return ret
end
--[[
------------------------------------------------------------------------------------
-- numKeys
--
-- This takes a table and returns an array containing the numbers of any numerical
-- keys that have non-nil values, sorted in numerical order.
------------------------------------------------------------------------------------
--]]
function p.numKeys(t)
checkType('numKeys', 1, t, 'table')
local isPositiveInteger = p.isPositiveInteger
local nums = {}
for k, v in pairs(t) do
if isPositiveInteger(k) then
nums[#nums + 1] = k
end
end
table.sort(nums)
return nums
end
--[[
------------------------------------------------------------------------------------
-- affixNums
--
-- This takes a table and returns an array containing the numbers of keys with the
-- specified prefix and suffix. For example, for the table
-- {a1 = 'foo', a3 = 'bar', a6 = 'baz'} and the prefix "a", affixNums will
-- return {1, 3, 6}.
------------------------------------------------------------------------------------
--]]
function p.affixNums(t, prefix, suffix)
checkType('affixNums', 1, t, 'table')
checkType('affixNums', 2, prefix, 'string', true)
checkType('affixNums', 3, suffix, 'string', true)
local function cleanPattern(s)
-- Cleans a pattern so that the magic characters ()%.[]*+-?^$ are interpreted literally.
s = s:gsub('([%(%)%%%.%[%]%*%+%-%?%^%$])', '%%%1')
return s
end
prefix = prefix or ''
suffix = suffix or ''
prefix = cleanPattern(prefix)
suffix = cleanPattern(suffix)
local pattern = '^' .. prefix .. '([1-9]%d*)' .. suffix .. '$'
local nums = {}
for k, v in pairs(t) do
if type(k) == 'string' then
local num = mw.ustring.match(k, pattern)
if num then
nums[#nums + 1] = tonumber(num)
end
end
end
table.sort(nums)
return nums
end
--[[
------------------------------------------------------------------------------------
-- numData
--
-- Given a table with keys like ("foo1", "bar1", "foo2", "baz2"), returns a table
-- of subtables in the format
-- { [1] = {foo = 'text', bar = 'text'}, [2] = {foo = 'text', baz = 'text'} }
-- Keys that don't end with an integer are stored in a subtable named "other".
-- The compress option compresses the table so that it can be iterated over with
-- ipairs.
------------------------------------------------------------------------------------
--]]
function p.numData(t, compress)
checkType('numData', 1, t, 'table')
checkType('numData', 2, compress, 'boolean', true)
local ret = {}
for k, v in pairs(t) do
local prefix, num = mw.ustring.match(tostring(k), '^([^0-9]*)([1-9][0-9]*)$')
if num then
num = tonumber(num)
local subtable = ret[num] or {}
if prefix == '' then
-- Positional parameters match the blank string; put them at the start of the subtable instead.
prefix = 1
end
subtable[prefix] = v
ret[num] = subtable
else
local subtable = ret.other or {}
subtable[k] = v
ret.other = subtable
end
end
if compress then
local other = ret.other
ret = p.compressSparseArray(ret)
ret.other = other
end
return ret
end
--[[
------------------------------------------------------------------------------------
-- compressSparseArray
--
-- This takes an array with one or more nil values, and removes the nil values
-- while preserving the order, so that the array can be safely traversed with
-- ipairs.
------------------------------------------------------------------------------------
--]]
function p.compressSparseArray(t)
checkType('compressSparseArray', 1, t, 'table')
local ret = {}
local nums = p.numKeys(t)
for _, num in ipairs(nums) do
ret[#ret + 1] = t[num]
end
return ret
end
--[[
------------------------------------------------------------------------------------
-- sparseIpairs
--
-- This is an iterator for sparse arrays. It can be used like ipairs, but can
-- handle nil values.
------------------------------------------------------------------------------------
--]]
function p.sparseIpairs(t)
checkType('sparseIpairs', 1, t, 'table')
local nums = p.numKeys(t)
local i = 0
local lim = #nums
return function ()
i = i + 1
if i <= lim then
local key = nums[i]
return key, t[key]
else
return nil, nil
end
end
end
--[[
------------------------------------------------------------------------------------
-- size
--
-- This returns the size of a key/value pair table. It will also work on arrays,
-- but for arrays it is more efficient to use the # operator.
------------------------------------------------------------------------------------
--]]
function p.size(t)
checkType('size', 1, t, 'table')
local i = 0
for k in pairs(t) do
i = i + 1
end
return i
end
local function defaultKeySort(item1, item2)
-- "number" < "string", so numbers will be sorted before strings.
local type1, type2 = type(item1), type(item2)
if type1 ~= type2 then
return type1 < type2
else -- This will fail with table, boolean, function.
return item1 < item2
end
end
--[[
Returns a list of the keys in a table, sorted using either a default
comparison function or a custom keySort function.
]]
function p.keysToList(t, keySort, checked)
if not checked then
checkType('keysToList', 1, t, 'table')
checkTypeMulti('keysToList', 2, keySort, { 'function', 'boolean', 'nil' })
end
local list = {}
local index = 1
for key, value in pairs(t) do
list[index] = key
index = index + 1
end
if keySort ~= false then
keySort = type(keySort) == 'function' and keySort or defaultKeySort
table.sort(list, keySort)
end
return list
end
--[[
Iterates through a table, with the keys sorted using the keysToList function.
If there are only numerical keys, sparseIpairs is probably more efficient.
]]
function p.sortedPairs(t, keySort)
checkType('sortedPairs', 1, t, 'table')
checkType('sortedPairs', 2, keySort, 'function', true)
local list = p.keysToList(t, keySort, true)
local i = 0
return function()
i = i + 1
local key = list[i]
if key ~= nil then
return key, t[key]
else
return nil, nil
end
end
end
--[[
Returns true if all keys in the table are consecutive integers starting at 1.
--]]
function p.isArray(t)
checkType("isArray", 1, t, "table")
local i = 0
for k, v in pairs(t) do
i = i + 1
if t[i] == nil then
return false
end
end
return true
end
-- { "a", "b", "c" } -> { a = 1, b = 2, c = 3 }
function p.invert(array)
checkType("invert", 1, array, "table")
local map = {}
for i, v in ipairs(array) do
map[v] = i
end
return map
end
--[[
{ "a", "b", "c" } -> { ["a"] = true, ["b"] = true, ["c"] = true }
--]]
function p.listToSet(t)
checkType("listToSet", 1, t, "table")
local set = {}
for _, item in ipairs(t) do
set[item] = true
end
return set
end
--[[
Recursive deep copy function.
Preserves identities of subtables.
]]
local function _deepCopy(orig, includeMetatable, already_seen)
-- Stores copies of tables indexed by the original table.
already_seen = already_seen or {}
local copy = already_seen[orig]
if copy ~= nil then
return copy
end
if type(orig) == 'table' then
copy = {}
for orig_key, orig_value in pairs(orig) do
copy[deepcopy(orig_key, includeMetatable, already_seen)] = deepcopy(orig_value, includeMetatable, already_seen)
end
already_seen[orig] = copy
if includeMetatable then
local mt = getmetatable(orig)
if mt ~= nil then
local mt_copy = deepcopy(mt, includeMetatable, already_seen)
setmetatable(copy, mt_copy)
already_seen[mt] = mt_copy
end
end
else -- number, string, boolean, etc
copy = orig
end
return copy
end
function p.deepCopy(orig, noMetatable, already_seen)
checkType("deepCopy", 3, already_seen, "table", true)
return _deepCopy(orig, not noMetatable, already_seen)
end
--[[
Concatenates all values in the table that are indexed by a number, in order.
sparseConcat{ a, nil, c, d } => "acd"
sparseConcat{ nil, b, c, d } => "bcd"
]]
function p.sparseConcat(t, sep, i, j)
local list = {}
local list_i = 0
for _, v in p.sparseIpairs(t) do
list_i = list_i + 1
list[list_i] = v
end
return table.concat(list, sep, i, j)
end
--[[
-- This returns the length of a table, or the first integer key n counting from
-- 1 such that t[n + 1] is nil. It is similar to the operator #, but may return
-- a different value when there are gaps in the array portion of the table.
-- Intended to be used on data loaded with mw.loadData. For other tables, use #.
-- Note: #frame.args in frame object always be set to 0, regardless of
-- the number of unnamed template parameters, so use this function for
-- frame.args.
--]]
function p.length(t)
local i = 1
while t[i] ~= nil do
i = i + 1
end
return i - 1
end
function p.inArray(arr, valueToFind)
checkType("inArray", 1, arr, "table")
-- if valueToFind is nil, error?
for _, v in ipairs(arr) do
if v == valueToFind then
return true
end
end
return false
end
return p
tqif0qe0lu98pj8cuq70kgi6evye5t3
Μαριούπολη
0
2318
36795
36341
2025-12-16T09:16:49Z
Εὐθυμένης
2777
36795
wikitext
text/x-wiki
[[Αρχείον:Mariupol postcard.jpg|300px|thumb|Μαριούπολη]]
Η '''Μαριούπολη''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 250.000 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
oalxidggs9zy06lavxmf91pbi6w0gue
Οδησσός
0
2319
36817
36092
2025-12-16T09:32:48Z
Εὐθυμένης
2777
36817
wikitext
text/x-wiki
[[Αρχείον:Одесса-коллаж1.jpg|300px|thumb|Οδησσός]]
Η '''Οδησσός''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 998.000 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
j4cuayiw5w23g2wichd4ryfqqgixol3
Ντονέτσκ
0
2320
36816
34398
2025-12-16T09:32:12Z
Εὐθυμένης
2777
36816
wikitext
text/x-wiki
[[Αρχείον:Donetsk montage (2015).png|300px|thumb|Ντονέτσκ]]
Η '''Ντονέτσκ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 975.959 ανθρώπ.Εκεκα πολλα τη Ρωμεης στεκνε. Ατωρα ατοι καλατσεβνε Ρωμαιικα (μαριουπολιτικην διαλεκτον ντο ομοιαζ' με την ποντιακον λαλιαν αμα εναν κι εν), Νεοελληνικα, Ρωσικα και ουκρανικα
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
ey74h1705b6vedwv5z13nfxtiac5ru9
Χερσώνα
0
2321
36851
36192
2025-12-16T09:53:33Z
Εὐθυμένης
2777
36851
wikitext
text/x-wiki
[[Αρχείον:Херсон-коллаж1.jpg|300px|thumb|Χερσώνα]]
Η '''Χερσώνα''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 66.000 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
fwy901taqmnphgimp908oe9ajfdpmwe
Λουχάνσκ
0
2322
36793
32787
2025-12-16T09:14:56Z
Εὐθυμένης
2777
36793
wikitext
text/x-wiki
[[Αρχείον:Luhansk collage.jpg|300px|thumb|Λουχάνσκ]]
Η '''Λουχάνσκ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 425.848 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
gmwmc3k3kf94dso1pdvbijo08wewq0s
Τσέρνιγκοφ
0
2323
36847
34147
2025-12-16T09:51:15Z
Εὐθυμένης
2777
36847
wikitext
text/x-wiki
[[Αρχείον:Chernihiv Panorama.jpg|300px|thumb|Τσέρνιγκοφ]]
Η '''Τσέρνιγκοφ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 296.008 ανθρώπ.
== Gallery ==
<gallery widths=155 heights=125>
2014 Чернігів Україна Адміністративний будинок.jpg
Чернігів. Обласна філармонія.JPG
Дзвіниця, 5 ярусів,висота 58 метрів, Троїцький монастир.jpg
Chernigiv Desna hotel IMG 8722 74-101-0076.JPG
NSH Chernigiv Spaso-Preobrazhenskiy Sobor 001.JPG
Чернигов, храм Михаила и Федора.JPG
Драматичний театр ім.Т.Г.Шевченка - Teatro Dramático Shevchenko.jpg
Введенська церква. Чернігів.jpg
74-101-0020 Troyckiy Sobor 3.jpg
Церква параскеви П'ятниці, Чернігів.jpg
BudArhiepiskop.JPG
Чернігівський вокзал.JPG
</gallery>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
m4lmbqmk59f1bca9y3t1sk1sriwhkxr
Ντνιπρο
0
2324
36815
32890
2025-12-16T09:31:39Z
Εὐθυμένης
2777
36815
wikitext
text/x-wiki
[[Αρχείον:Collage of Dnipro city images.jpg|300px|thumb|Ντνιπρο]]
Η '''Ντνιπρο''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 979.046 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
o37k74yf5zwzm2h89kdsldne4827x3a
Χάρκοβο
0
2325
36850
35733
2025-12-16T09:53:03Z
Εὐθυμένης
2777
36850
wikitext
text/x-wiki
Η '''Χάρκοβο''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 1.430.885 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
hz1qda822td4mf40kkcp3g9sp15t3bs
Κίεβο
0
2326
36771
32791
2025-12-16T09:00:59Z
Εὐθυμένης
2777
36771
wikitext
text/x-wiki
[[Αρχείον:Panorama of Kyiv from Saint Sophia Monastery.jpg|300px|thumb|Κίεβο]]
Η '''Κίεβο''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 2.900.920 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
rrspih24qahkdviicz8sd7gchh2gkms
Ζαπορίζια
0
2327
36766
33104
2025-12-16T08:57:49Z
Εὐθυμένης
2777
36766
wikitext
text/x-wiki
[[Αρχείον:Над проспектом Металургів.jpg|300px|thumb|Ζαπορίζια]]
Η '''Ζαπορίζια''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 770.672 ανθρώπ (2013).
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
j4rrh7fyduff65zkrvl4l6oeaxpb56v
Λβιβ
0
2328
36788
32793
2025-12-16T09:11:55Z
Εὐθυμένης
2777
36788
wikitext
text/x-wiki
[[Αρχείον:Lwów - Widok z wieży ratuszowej 01.jpg|300px|thumb|Λβιβ]]
Η '''Λβιβ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 730.272 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
qartdk77pwmqm93an8k1py6kigobqc2
Μικολάιβ
0
2329
36798
32794
2025-12-16T09:18:41Z
Εὐθυμένης
2777
36798
wikitext
text/x-wiki
[[Αρχείον:Здание Горкома в Николаеве.jpg|300px|thumb|Μικολάιβ]]
Η '''Μικολάιβ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 498.748 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
ccssgehx9u4h44csobkwmlbkmk7q99t
Σλοβιάνσκ
0
2330
36839
32795
2025-12-16T09:46:33Z
Εὐθυμένης
2777
36839
wikitext
text/x-wiki
[[Αρχείον:Sloviansk City Bank.jpg|300px|thumb|Σλοβιάνσκ]]
Η '''Σλοβιάνσκ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 117.445 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
mbewk0ze6fgg55y093vrsxedjb2gr2s
Ευπατορία
0
2331
36765
36327
2025-12-16T08:57:16Z
Εὐθυμένης
2777
36765
wikitext
text/x-wiki
Η '''Ευπατορία''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 105.719 (2015) ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
04r96g4jh8wgyeg24no44whjuexjabe
Κερτς
0
2332
36778
35548
2025-12-16T09:05:04Z
Εὐθυμένης
2777
36778
wikitext
text/x-wiki
[[Αρχείον:Kerch ObeliskOfGlory.jpg|300px|μικρογραφία|Κερτς]]
Η '''Κερτς''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 147.033 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
dvu3scbafae0qjqeag3wrwneq2yfhut
Συμφερόπολη
0
2333
36842
35560
2025-12-16T09:48:20Z
Εὐθυμένης
2777
36842
wikitext
text/x-wiki
[[Αρχείον:Симферополь. Пешеходная зона..JPG|300px|μικρογραφία|Συμφερόπολη]]
Η '''Συμφερόπολη''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 332.317 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
axqdgkg0q39661nbr7k3p59z3gabz3d
Σεβαστούπολη
0
2334
36837
34941
2025-12-16T09:45:30Z
Εὐθυμένης
2777
36837
wikitext
text/x-wiki
[[Αρχείον:Sewastopol Panorama1.jpg|300px|thumb|Σεβαστούπολη]]
Η '''Σεβαστούπολη''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 393.304 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
qtyiwqv6m8ft55o9oynrtd3ychbhnsn
Ουμάν
0
2335
36822
32800
2025-12-16T09:36:01Z
Εὐθυμένης
2777
36822
wikitext
text/x-wiki
[[Αρχείον:Uman-2007-08-12-05.jpg|300px|thumb|Ουμάν]]
Η '''Ουμάν''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 86.911 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
2wba26idhv3vb5igxtwavovf1jx6dsa
Γιάλτα
0
2336
36761
35545
2025-12-16T08:54:03Z
Εὐθυμένης
2777
36761
wikitext
text/x-wiki
[[Αρχείον:Ялта 032.jpg|300px|μικρογραφία|Γιάλτα]]
Η '''Γιάλτα''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 76.746 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
qt1820mfhh97indtlr6tbp6m7985mgz
Θεοδοσία
0
2337
36767
35547
2025-12-16T08:58:26Z
Εὐθυμένης
2777
36767
wikitext
text/x-wiki
[[Αρχείον:THEODOSIA 01.jpg|300px|μικρογραφία|Θεοδοσία]]
Η '''Θεοδοσία''' (ουκρανικά: Феодо́сія, ρωσικά: Феодо́сия, κριμαϊκά: Kefe, μεσαιωνική ονομασία Καφφάς)εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Σήμερον έχει πληθυσμό 69.038 ανθρώπους.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
iloei6gcte1hn8h0fydgw151aohmmzg
Κολομία
0
2338
36780
32803
2025-12-16T09:06:23Z
Εὐθυμένης
2777
36780
wikitext
text/x-wiki
[[Αρχείον:Kolomyia City Hall.jpg|300px|thumb|Κολομία]]
Η '''Κολομία''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 61.428 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
echemjwpyc7s3km0g970e5qbk8q6i2f
Ντζανκόι
0
2339
36813
35555
2025-12-16T09:30:18Z
Εὐθυμένης
2777
36813
wikitext
text/x-wiki
[[Αρχείον:Джанкой.Привокзальная площадь.JPG|300px|μικρογραφία|Ντζανκόι]]
Η '''Ντζανκόι''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 38.622 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
fegi82oizmczhdux4pnt2tn1g56sg9p
Κρασνοπερεκόπσκ
0
2340
36785
35550
2025-12-16T09:09:09Z
Εὐθυμένης
2777
36785
wikitext
text/x-wiki
[[Αρχείον:Krasnoperekopsk railway station.jpg|300px|μικρογραφία|Κρασνοπερεκόπσκ]]
Η '''Κρασνοπερεκόπσκ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 26.268 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
ijxczztl26atd8j3413plbmbui9ayy4
Αλούστα
0
2341
36753
36240
2025-12-16T08:43:51Z
Εὐθυμένης
2777
36753
wikitext
text/x-wiki
[[Αρχείον:AlushtaPanoram.jpg|300px|thumb|Αλούστα]]
Η '''Αλούστα''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 29.078 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
23mghfh4c4xtz5an6brswjv9h4py3mf
Σάκι
0
2342
36833
32807
2025-12-16T09:43:17Z
Εὐθυμένης
2777
36833
wikitext
text/x-wiki
Η '''Σάκι''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 25.146 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
aor1uhvg5n8xg7bb9qypxadjrzea84p
Μπακτσίσαραϊ
0
2343
36802
35553
2025-12-16T09:21:14Z
Εὐθυμένης
2777
36802
wikitext
text/x-wiki
[[Αρχείον:Mošee minarett Bahtšisarais.jpg|300px|μικρογραφία|Μπακτσίσαραϊ]]
Η '''Μπακτσίσαραϊ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 27.448 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
g57m95bpliuo7qzp97j0i8joi3hnxsn
Αρμιάνσκ
0
2344
36757
36228
2025-12-16T08:46:29Z
Εὐθυμένης
2777
36757
wikitext
text/x-wiki
Η '''Αρμιάνσκ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 19.900 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
qyrkrs0a6dq3j8xis49micaybrnayhn
Σουντάκ
0
2345
36840
35559
2025-12-16T09:47:08Z
Εὐθυμένης
2777
36840
wikitext
text/x-wiki
[[Αρχείον:View of Sudak from Genoese Fortress.jpg|300px|μικρογραφία|Σουντάκ]]
Η '''Σουντάκ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 16.492 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
9eanyhsfd5p40jt38t6t6emta8topo1
Αλούπκα
0
2346
36752
35544
2025-12-16T08:43:18Z
Εὐθυμένης
2777
36752
wikitext
text/x-wiki
[[Αρχείον:VorontsovskiPalace.jpg|300px|μικρογραφία|Αλούπκα]]
Η '''Αλούπκα''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 7.771 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
cqrq9ot5r5laszdta3oslxjozncb61k
Πριπιάτ
0
2347
36828
34027
2025-12-16T09:40:10Z
Εὐθυμένης
2777
36828
wikitext
text/x-wiki
[[Αρχείον:View of Chernobyl taken from Pripyat.JPG|300px|thumb|Πριπιάτ]]
Η '''Πριπιάτ''' εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 0 ανθρώπ. Η πολιτείαν ατς ακατοίκητην.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
88ovgcezu0i9qhzl3kvo2bi8vdp57wa
Γιαρέμτσε
0
2348
36762
36236
2025-12-16T08:54:42Z
Εὐθυμένης
2777
36762
wikitext
text/x-wiki
[[Αρχείον:Yaremche2.JPG|300px|thumb|Γιαρέμτσε]]
Η '''Γιαρέμτσε''' (''Яремче'') εν πολιτεία σην [[Ουκρανία|Ουκρανίαν]]. Οσήμερον εχ' πληθυσμόν 8.124 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{uk}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ουκρανία]]
h3mx41ip7w9md9tmf8w69hxkvayh38u
Σότσι
0
2349
36834
35739
2025-12-16T09:43:49Z
Εὐθυμένης
2777
36834
wikitext
text/x-wiki
[[Αρχείον:Сочи-коллаж1.jpg|300px|μικρογραφία|Σότσι]]
Η '''Σότσι''' εν πολιτεία σην [[Ρουσία|Ρουσίαν]]. Οσήμερον εχ' πληθυσμόν 444.989 ανθρώπ (2024).
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ru}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ρουσία]]
jfb3u4m6am69x0okixa7cp2gwv6xt32
Νοβοροσίσκ
0
2350
36810
35348
2025-12-16T09:28:09Z
Εὐθυμένης
2777
36810
wikitext
text/x-wiki
Η '''Νοβοροσίσκ''' εν πολιτεία σην [[Ρουσία|Ρουσίαν]]. Οσήμερον εχ' πληθυσμόν 241.952 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ru}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ρουσία]]
762qa38p10i4nw7h7xy55l8nog0fvww
Κρασνοντάρ
0
2351
37397
36783
2025-12-25T12:39:18Z
~2025-42930-69
12233
37397
wikitext
text/x-wiki
[[Αρχείον:Краснодар.png|300px|μικρογραφία|Κρασνοντάρ]]
Η '''Κρασνοντάρ''' (ρουσικά: Краснодáр), πρώτα '''Αικατερινοντάρ''' (ους 1920), εν πολιτεία σην νότιαν [[Ρουσία|Ρουσίαν]], η πρωτεύουσσα τη Κράι Κρασνοντάρ (Κουμπάν). Οσήμερον εχ' πληθυσμόν 1.154.885 ανθρώπ.<ref>{{cite web|url=https://citypopulation.de/en/russia/gorodkrasnodar/|title=Krasnodar City|accessdate=2025-12-25|work=citypopulation.de}}</ref>
== Αναφοράντας ==
<references/>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ru}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ρουσία]]
6djvn28jit3yxnke5zloqkyve9bi5cf
Μαϊκόπ
0
2352
36797
35552
2025-12-16T09:18:06Z
Εὐθυμένης
2777
36797
wikitext
text/x-wiki
[[Αρχείον:Вокзал Майкопа.JPG|300px|μικρογραφία|Μαϊκόπ]]
Η '''Μαϊκόπ''' εν πολιτεία σην [[Ρουσία|Ρουσίαν]]. Οσήμερον εχ' πληθυσμόν 144.249 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ru}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ρουσία]]
b1qyys77k1wav4l7ecrp4qqxstxc11g
Ροστόφ επί του Ντον
0
2353
36831
35557
2025-12-16T09:42:07Z
Εὐθυμένης
2777
36831
wikitext
text/x-wiki
[[Αρχείον:Rostov-on-Don Collage.jpg|300px|μικρογραφία|Ροστόφ επί του Ντον]]
Η '''Ροστόφ επί του Ντον''' εν πολιτεία σην [[Ρουσία|Ρουσίαν]]. Οσήμερον εχ' πληθυσμόν 1.089.800 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ru}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ρουσία]]
et1sd3v2mwp4nh94e1teatdeulghcb4
Ταγκανρόγκ
0
2354
36844
35561
2025-12-16T09:49:27Z
Εὐθυμένης
2777
36844
wikitext
text/x-wiki
[[Αρχείον:Port of Taganrog.jpg|300px|μικρογραφία|Ταγκανρόγκ]]
Η '''Ταγκανρόγκ''' (ru: Таганрог) εν πολιτεία σην [[Ρουσία|Ρουσίαν]]. Οσήμερον εχ' πληθυσμόν 257.681 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ru}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ρουσία]]
bqrphwiyrhrwka0x0pjux0q7hoiyxdg
Νοβοτσερκάσσκ
0
2355
36811
35554
2025-12-16T09:28:41Z
Εὐθυμένης
2777
36811
wikitext
text/x-wiki
[[Αρχείον:Novoch Triumph arc.JPG|300px|μικρογραφία|Νοβοτσερκάσσκ]]
Η '''Νοβοτσερκάσσκ''' εν πολιτεία σην [[Ρουσία|Ρουσίαν]]. Οσήμερον εχ' πληθυσμόν 168.746 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ru}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ρουσία]]
4me79ffnx5hsbl9be8tlhy0cqhb34le
Βικιπαίδεια:VisualEditor
4
2361
32835
2016-02-01T19:46:45Z
Whatamidoing (WMF)
5092
Καινούρεον σελίδαν με '{{softredirect|mw:VisualEditor/Portal}}'
32835
wikitext
text/x-wiki
{{softredirect|mw:VisualEditor/Portal}}
iy7vgueo1hjlcivyimch8qd4qyl8k3o
Αγία Πετρούπολη
0
2362
36750
35543
2025-12-16T08:41:56Z
Εὐθυμένης
2777
36750
wikitext
text/x-wiki
[[Αρχείον:Spb collage.JPG|300px|μικρογραφία|Αγία Πετρούπολη]]
Η '''Αγία Πετρούπολη''' εν πολιτεία σην [[Ρουσία|Ρουσίαν]]. Οσήμερον εχ' πληθυσμόν 5.191.690 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ru}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ρουσία]]
pdbhlosebqc1kol69ty26vkwuhl0wcw
Ιερουσαλήμ
0
2363
36768
36309
2025-12-16T08:59:03Z
Εὐθυμένης
2777
36768
wikitext
text/x-wiki
[[Αρχείον:Jerusalem Dome of the rock BW 14.JPG|300px|thumb|Ιερουσαλήμ]]
Η '''Ιερουσαλήμ''' εν πολιτεία σην [[Ισραήλ]]. Οσήμερον εχ' πληθυσμόν 890,428 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{he}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ισραήλ]]
[[Κατηγορίαν:Ιερουσαλήμ]]
6xioct0h2nfx7nnlfvmctu744mvwp8s
Ρίο ντε Τζανέιρο
0
2364
36829
34253
2025-12-16T09:40:59Z
Εὐθυμένης
2777
36829
wikitext
text/x-wiki
[[Αρχείον:Montagem Rio de Janeiro.jpg|300px|thumb|Ρίο ντε Τζανέιρο]]
Η '''Ρίο ντε Τζανέιρο''' εν πολιτεία σην [[Βραζιλία|Βραζιλίαν]]. Οσήμερον εχ' πληθυσμόν 6.453.682 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{pt}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
4o38cfxpej1ppl1t6bvai9fc2tyimlo
Χρύσανθος Θεοδωρίδης
0
2365
37404
37401
2025-12-28T19:19:06Z
Таёжный лес
10003
37404
wikitext
text/x-wiki
[[File:Chrisanthos.jpg|thumb]]
Ο '''Χρύσανθον''' ο '''Θεοδωρίδης''' εγγενέθεν το 1933 Σο χωρίον Οινόη τη Κοζάνης. Τα κυρουκά τ' έσαν Ποντιοι πρόσφηγοι α σο χωρίον Πεζιρκιάν Κιατσίτ (οσήμερον Εσκί Γκετσίτ, σο Καρσ Καυκάσου σην [[Τουρκία]]).Τραγωδεάνος α σο κουνίν'ατ έτον πολλά αναγνωρίσιμος και με το προσωνύμ' "Αϊδονι του Ποντου". Η γλυκίν και πολλά Ζηλ λαλίαν ατ' εποίκεν ατον ογλήορα αγαπητό και φενόμενον, αμον ντο είπε και ο συνθέτας Γιάννης Μαρκόπουλος Ο Χρύσανθον έτον σα επτά λαλίας τη οικουμένης.
[[Κατηγορίαν:Ποιητάδες]]
[[Κατηγορίαν:Μουσική]]
eymai8pviy4k5ji0u54u8q0aj188u5n
Τόκιο
0
2366
36843
32852
2025-12-16T09:48:53Z
Εὐθυμένης
2777
36843
wikitext
text/x-wiki
[[Αρχείον:Tokyo Montage 2015.jpg|300px|thumb|Τόκιο]]
Η '''Τόκιο''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 13.506.607 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
shd17xr72ddxp286pc0oirbmsyatyei
Κιότο
0
2367
36779
33918
2025-12-16T09:05:41Z
Εὐθυμένης
2777
36779
wikitext
text/x-wiki
[[Αρχείον:Kyoto01.jpg|300px|thumb|Κιότο]]
Η '''Κιότο''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 1.474.570 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
5p4z416e5s8adzjgfdr13zb4q32g1e3
Ναγκόγια
0
2368
36805
33988
2025-12-16T09:25:02Z
Εὐθυμένης
2777
36805
wikitext
text/x-wiki
[[Αρχείον:Japan Nagoya.png|300px|thumb|Ναγκόγια]]
Η '''Ναγκόγια''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 2.283.289 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
nfg1tbc2l88pqnv5ss3r2nelv5rncnz
Οσάκα
0
2369
36820
32855
2025-12-16T09:34:53Z
Εὐθυμένης
2777
36820
wikitext
text/x-wiki
[[Αρχείον:Osaka montage.jpg|300px|thumb|Οσάκα]]
Η '''Οσάκα''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 2.668.586 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
7tbcifvwbmpor5k0gvdbzd0y206q03d
Σαππόρο
0
2370
36836
32856
2025-12-16T09:44:58Z
Εὐθυμένης
2777
36836
wikitext
text/x-wiki
[[Αρχείον:Hokkaido Sapporo Odori Park.jpg|300px|thumb|Σαππόρο]]
Η '''Σαππόρο''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 1.918.096 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
am9nddz4uktngmuwcr8c3dpbxrgxvtk
Γιοκοχάμα
0
2371
36763
36185
2025-12-16T08:55:56Z
Εὐθυμένης
2777
36763
wikitext
text/x-wiki
[[Αρχείον:Japan Yokohama.png|300px|thumb|Γιοκοχάμα]]
Η '''Γιοκοχάμα''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 3.697.894 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
lng0vm35l1x33c88en67j9legcj1yjm
Ντνιπροπετρόφσκ
0
2380
32889
2016-06-02T21:55:16Z
UpdaterQ
5373
UpdaterQ moved page [[Ντνιπροπετρόφσκ]] to [[Ντνιπρο]]
32889
wikitext
text/x-wiki
#REDIRECT [[Ντνιπρο]]
gt42jah1nit0q1q00oyyz88frgrud53
Ματσούο Μπασό
0
2382
34470
34459
2020-04-08T05:46:45Z
Tulsi
5081
Cross-wiki abuse
32894
wikitext
text/x-wiki
[[Αρχείον:Basho in Ogaki.JPG|thumb|Ματσούο Μπασό]]
Ο '''Ματσούο Μπασό''' (1644 σο Κοντά στο Ουένο, Ιαπωνία - 28 Αεργίτες 1694 ση Οσάκα, Ιαπωνία), έτονε ποιητής ασην Ιαπωνία.
== Αναφοράντας ==
{{Commonscat}}
[[Κατηγορίαν:Ιαπωνία]]
22ayvxywyn41tac2r08aq04k8gg5ho4
Χιλή
0
2568
35961
35017
2024-10-26T05:28:12Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35961
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Χιλή'''</big></big><br/>''República de Chile''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Chile.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Chile (c).svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Chile in South America (+Easter Islands).svg|300px]]
|}
Η '''Χιλή''' (σα ισπανικά: ''Chile'', ή ''República de Chile'') εν κράτος ντ' ευρίεται ση Λατινικήν Αμέρικα. Πρωτεύουσαν ατ'ς εν το [[Σαντιάγκο]]. Η χώρα εχ' πληθυσμόν σα 17,574,003 ([[2017]]) τ' ανθρώπ'ς.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Chile|Η Χιλή σα Commons]]'''
* [http://el.wikipedia.org/wiki/Χιλή Χιλή (ελλενικόν)]
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Χιλή ]]
[[Κατηγορίαν:Λατινικήν Αμέρικα]]
680hwy4qy8daxcihnzeqtclq7so5rbi
Παρίσι
0
2574
36893
36824
2025-12-16T10:21:38Z
Εὐθυμένης
2777
36893
wikitext
text/x-wiki
{{WikidataCoord|display=title}}
[[Αρχείον:Paris - Eiffelturm und Marsfeld2.jpg|300px|thumb|Παρίσι]]
Το '''Παρίσι''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 2.220.445 ανθρώπ.
<br><gallery>
Paris-Assemblee nationale-106-Palais Bourbon nord-2017-gje.jpg|Palais Bourbon
Paris-Jardin des Plantes-104-Museum national d'histoire naturelle-Stegosaurus-2017-gje.jpg|Jardin des Plantes
Paris-Notre Dame-117c-Westfassade-Mittelportal-2017-gje.jpg|Notre Dame
Paris-Rue Descartes 39-104-Maison de Verlaine-2017-gje.jpg|Maison de Verlaine
Paris-Rue Mouffetard-118-Meeresfruechte-2017-gje.jpg|Marché à la Rue Mouffetard
Paris-Seine-102-Pont de Sully-2017-gje.jpg|Seine, Pont de Sully
Paris-Tuileries-114-2017-gje.jpg|Tuileries
Paris-von Montmartre-124-St Vinzenz-p9-2017-gje.jpg|Vue depuis Montmartre
</gallery>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
[[Κατηγορίαν:Γαλλία]]
edyqz7q0er7gjhcsd6rk2czqowrkf3f
Μασσαλία
0
2575
36881
36796
2025-12-16T10:18:57Z
Εὐθυμένης
2777
36881
wikitext
text/x-wiki
Η '''Μασσαλία''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 863.310 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
nsrcsfdiyp7w4fkbjs7nkg9pp75anvs
Λιόν
0
2576
36879
36791
2025-12-16T10:18:33Z
Εὐθυμένης
2777
36879
wikitext
text/x-wiki
[[Αρχείον:Lyon-Paysages.jpg|300px|thumb|Λιόν]]
Η '''Λιόν''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 506.615 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
cmiufmarj8y7vbbexetjf4lv5a1o33c
Τουλούζ
0
2577
36900
36846
2025-12-16T10:23:12Z
Εὐθυμένης
2777
36900
wikitext
text/x-wiki
[[Αρχείον:Montage Toulouse 2.jpg|300px|thumb|Τουλούζ]]
Η '''Τουλούζ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 466.297 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
eh5suuvi82hqbyltxvdx3bgp6rp5qnv
Νις (Γαλλία)
0
2578
36889
36809
2025-12-16T10:20:45Z
Εὐθυμένης
2777
36889
wikitext
text/x-wiki
[[Αρχείον:Port Of Nice, Côte d'Azur.jpg|300px|thumb|Νις]]
Η '''Νις''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 344.875 ανθρώπ.
== Parade ==
<gallery>
File:Bataille de fleurs. 2020-02-22 14-43-52.jpg
File:Bataille de fleurs. 2020-02-22 14-47-17.jpg
File:Bataille de fleurs. 2020-02-22 14-50-16.jpg
File:Bataille de fleurs. 2020-02-22 14-53-48.jpg
File:Bataille de fleurs. 2020-02-22 14-56-44.jpg
File:Bataille de fleurs. 2020-02-22 15-00-53.jpg
File:Bataille de fleurs. 2020-02-22 15-18-29.jpg
File:Bataille de fleurs. 2020-02-22 15-23-33.jpg
File:Bataille de fleurs. 2020-02-22 15-15-01.jpg
</gallery>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
5vphmy7bs57vidstg61yp07sav7rky1
Μπορντό
0
2579
36886
36804
2025-12-16T10:20:04Z
Εὐθυμένης
2777
36886
wikitext
text/x-wiki
[[Αρχείον:138 - Place de la Bourse et le miroir d'eau - Bordeaux.jpg|300px|thumb|Μπορντό]]
To '''Μπορντό''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 246.586 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
97rmk36lxdmaqj3r82f3ontjtspi8my
Στρασβούργο
0
2580
36898
36841
2025-12-16T10:22:46Z
Εὐθυμένης
2777
36898
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Στρασβούργο'''</big></big><br/>''Strossburi''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="190px" | [[Αρχείον:Greater_coat_of_arms_of_Strasbourg.svg|178px]]
| align="center" width="100px" | [[Αρχείον:Flag_of_Strasbourg.svg|125px]]
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Absolute cathedrale vue quais 01.JPG|300px]]
|}
To '''Στρασβούργο''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 276.170 ανθρώπ.
<br><gallery class=center caption="Στρασβούργο - Strasbourg">
Strassburg-Muenster-116-Kraemergass-2005-gje.jpg
Strassburg-Haus Kammerzell-02-2005-gje.jpg
Strassburg-Petite France-42-Argentorate-1987-gje.jpg
Strassburg-Petite France-52-Maler vor Maison d'Tanneur-1987-gje.jpg
Strassburg-Petite France-80-2005-gje.jpg
Strassburg-Ponts Couverts-10-von Barrage Vauban-1987-gje.jpg
Strassburg-Weihnachtsmarkt-02-2005-gje.jpg
Strassburg-Weihnachtsmarkt-18-Muenster-2005-gje.jpg
</gallery>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
cxnmla8zlpfi5y2f1fgjmvhi61j5k81
Λιλ
0
2581
36880
36792
2025-12-16T10:18:45Z
Εὐθυμένης
2777
36880
wikitext
text/x-wiki
[[Αρχείον:Lille vue gd place.JPG|300px|thumb|Λιλ]]
Η '''Λιλ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 233.897 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
0ooypaflts2lpcf1t6jtznz69vm8xt5
Ναντ
0
2582
36887
36807
2025-12-16T10:20:17Z
Εὐθυμένης
2777
36887
wikitext
text/x-wiki
[[Αρχείον:Marité.jpg|300px|thumb|Ναντ]]
Η '''Ναντ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 298.029 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
t1xcswvyp7pe4yflyxu9bxunnu5nual
Ρουέν
0
2583
36897
36832
2025-12-16T10:22:30Z
Εὐθυμένης
2777
36897
wikitext
text/x-wiki
[[Αρχείον:Rouen montage.jpg|300px|thumb|Ρουέν]]
Η '''Ρουέν''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 110.618 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
ti4qlh4htu1rl6am6xawtl7n79urno6
Καλαί
0
2584
36876
36775
2025-12-16T10:17:53Z
Εὐθυμένης
2777
36876
wikitext
text/x-wiki
[[Αρχείον:Burghers of calais.jpeg|300px|thumb|Καλαί]]
To '''Καλαί''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 76.402 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
pt07wpl9wvp59j42lue3y990jy4lzqv
Καέν
0
2585
36875
36773
2025-12-16T10:17:38Z
Εὐθυμένης
2777
36875
wikitext
text/x-wiki
[[Αρχείον:Clochers de Caen.JPG|300px|thumb|Καέν]]
Η '''Καέν''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 106.538 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
6v0l12vtr5pjyph0jysv4m11rbbpv6f
Λα Ροσέλ
0
2586
36878
36787
2025-12-16T10:18:20Z
Εὐθυμένης
2777
36878
wikitext
text/x-wiki
[[Αρχείον:La Rochelle Vieux-Port.JPG|300px|thumb|Λα Ροσέλ]]
Η '''Λα Ροσέλ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 74.998 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
g6kus8c4jbzc4whfpf321wb1q9zg1db
Ρεν
0
2587
36896
36830
2025-12-16T10:22:17Z
Εὐθυμένης
2777
36896
wikitext
text/x-wiki
[[Αρχείον:Vue sud-ouest de la place du parlement de Bretagne, Rennes, France.jpg|300px|thumb|Ρεν]]
Η '''Ρεν''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 213.454 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
r2a1is0mh34oeo2beywg0fuvp6bo7ml
Χάβρη
0
2588
36901
36849
2025-12-16T10:23:25Z
Εὐθυμένης
2777
36901
wikitext
text/x-wiki
[[Αρχείον:Le Havre.jpg|300px|thumb|Χάβρη]]
Η '''Χάβρη''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 172.807 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
0o6ew9k9525t0puvumfnpkuwuh1dy5t
Ονφλέρ
0
2589
36892
36819
2025-12-16T10:21:23Z
Εὐθυμένης
2777
36892
wikitext
text/x-wiki
[[Αρχείον:France Calvados Honfleur port2.jpg|300px|thumb|Ονφλέρ]]
Το '''Ονφλέρ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 7.440 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
danhp92f28qzfjd4wacbjaom4oj70bt
Γκρενόμπλ
0
2590
36874
36764
2025-12-16T10:16:55Z
Εὐθυμένης
2777
36874
wikitext
text/x-wiki
[[Αρχείον:Panorama grenoble.png|300px|thumb|Γκρενόμπλ]]
Η '''Γκρενόμπλ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 160.779 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
b8ifhfwievk5wv4cuuwy9suhlzrctgs
Πουατιέ
0
2591
36895
36827
2025-12-16T10:22:05Z
Εὐθυμένης
2777
36895
wikitext
text/x-wiki
[[Αρχείον:Poitiers hill.jpg|300px|thumb|Πουατιέ]]
Το '''Πουατιέ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 87.435 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
qicntiivgl0v0q6imzs44a3pq56svyv
Ντιέπ (Σεν-Μαριτίμ)
0
2592
36890
36814
2025-12-16T10:20:58Z
Εὐθυμένης
2777
36890
wikitext
text/x-wiki
[[Αρχείον:Vue sur Dieppe depuis Chateau.JPG|300px|thumb|Ντιέπ]]
Η '''Ντιέπ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 30.086 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
sio5zvwerl72spoo45uwjc07cjusncp
Αλμπέρ (Σομ)
0
2593
36871
36751
2025-12-16T10:14:56Z
Εὐθυμένης
2777
36871
wikitext
text/x-wiki
[[Αρχείον:L'Hôtel-de-ville d'Albert ( Somme), oeuvre d'Alexandre Miniac et Maneval..jpg|300px|thumb|Αλμπέρ]]
Η '''Αλμπέρ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 10.064 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
0pve1jcmb7a36gehvs03i42qtq3ipjq
Αμιάν
0
2594
36872
36754
2025-12-16T10:15:18Z
Εὐθυμένης
2777
36872
wikitext
text/x-wiki
[[Αρχείον:0 Amiens - Cathédrale Notre-Dame (1).JPG|300px|thumb|Αμιάν]]
Η '''Αμιάν''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 132.479 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
ij62tm2tsk5d5oefgioy19tnlqk1fpv
Ανζέ
0
2595
36873
36756
2025-12-16T10:15:33Z
Εὐθυμένης
2777
36873
wikitext
text/x-wiki
[[Αρχείον:Vue sur le centre d'Angers.jpg|300px|thumb|Ανζέ]]
Η '''Ανζέ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 151.056 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
8ggrn2jo4mgyq347pc20aocz127x8cl
Ντανκέρκ
0
2596
36891
36812
2025-12-16T10:21:11Z
Εὐθυμένης
2777
36891
wikitext
text/x-wiki
[[Αρχείον:Dunkerquepaysage2.png|300px|thumb|Ντανκέρκ]]
Η '''Ντανκέρκ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 89.160 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
di40leerc73sj0wnnobtsi25r0y2sh7
Μονπελιέ
0
2597
36882
36799
2025-12-16T10:19:08Z
Εὐθυμένης
2777
36882
wikitext
text/x-wiki
[[Αρχείον:Montpellier PhotoMontage 01.jpg|300px|thumb|Μονπελιέ]]
To '''Μονπελιέ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 285.121 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
p1hlb5ul2ul6g6m3i265356ojnh63tv
Ταρμπ
0
2598
36899
36845
2025-12-16T10:23:00Z
Εὐθυμένης
2777
36899
wikitext
text/x-wiki
[[Αρχείον:Mairie de Tarbes (Hautes-Pyrénées, France).jpg|300px|thumb|Ταρμπ]]
Η '''Ταρμπ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 40.900 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
5i2ihwb0neuzwr2a0gcr2objpk5vrb7
Καρκασσόν
0
2599
36877
36776
2025-12-16T10:18:07Z
Εὐθυμένης
2777
36877
wikitext
text/x-wiki
[[Αρχείον:Burg von Carcassonne.jpg|300px|thumb|Καρκασσόν]]
Η '''Καρκασσόν''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 45.941 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
r99gv9ow497pzoxxiiwnf8fcxpkxlf4
Μοντωμπάν
0
2600
36884
36801
2025-12-16T10:19:39Z
Εὐθυμένης
2777
36884
wikitext
text/x-wiki
[[Αρχείον:Montauban - La Place Nationale.jpg|300px|thumb|Μοντωμπάν]]
To '''Μοντωμπάν''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 58.826 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
1mcb8gy7mnhzz99ujgjzw2xgi8u2di2
Μπεζιέ
0
2601
36885
36803
2025-12-16T10:19:52Z
Εὐθυμένης
2777
36885
wikitext
text/x-wiki
[[Αρχείον:CathedraleEtVieuxPontBeziers.jpg|300px|thumb|Μπεζιέ]]
Η '''Μπεζιέ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 75.701 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
5ap2yo7wuonmn3w5u9wv4fb7esov3ds
Περπινιάν
0
2602
36894
36826
2025-12-16T10:21:51Z
Εὐθυμένης
2777
36894
wikitext
text/x-wiki
[[Αρχείον:Perpignan.jpg|300px|thumb|Περπινιάν]]
Το '''Περπινιάν''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 120.605 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
ihmrnk60tuen6q68omrv153kyrq9f0q
Νιμ
0
2603
36888
36808
2025-12-16T10:20:29Z
Εὐθυμένης
2777
36888
wikitext
text/x-wiki
[[Αρχείον:Nîmes, Centre ville.jpg|300px|thumb|Νιμ]]
Η '''Νιμ''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 151.075 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
e4lcplo6vx7vkwpgqxehafty3lrj4f8
Αβινιόν
0
2604
36902
36749
2025-12-16T10:23:48Z
Εὐθυμένης
2777
36902
wikitext
text/x-wiki
[[Αρχείον:Avignon, Palais des Papes depuis Tour Philippe le Bel by JM Rosier.jpg|300px|thumb|Αβινιόν]]
Η '''Αβινιόν''' εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 92.209 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
2luhdps3wkfwfguewb3llg11lbt9mwd
Βικιπαίδεια:Arthron
4
2605
33168
2016-10-27T06:17:47Z
Frhdkazan
5174
Καινούρεον σελίδαν με ''''pnt''': Σελίδας, ιστορικόν εκδοσίων [[Πρότυπον:Arthron]], Αρχικόν σελίδα. '''en''': This list of Featur...'
33168
wikitext
text/x-wiki
'''pnt''': Σελίδας, ιστορικόν εκδοσίων [[Πρότυπον:Arthron]], Αρχικόν σελίδα.
'''en''': This list of Featured Articles is obtained from [[Πρότυπον:Arthron]] MainPage Current Featured Article template history.
'''ru''': Данный список Избранных статей вычленен из истории правок шаблона текущая избранная статья [[Πρότυπον:Arthron]], размещённого на заглавной странице.
# [[Τσιριχτά]]
# [[Στράβων]]
# [[Ευρώπην]]
# [[Αστερίκον]]
# [[Καρς]]
# [[Ποντιακά Παρχάραι]]
# [[Χαβίτς]]
[[Κατηγορίαν:Βικιπαίδεια]]
f5bmtmjt6ssgi2ii75kso01na2es9tv
Κατηγορίαν:Βικιπαίδεια:Arthron
14
2606
33177
33176
2016-10-27T06:31:05Z
Frhdkazan
5174
33177
wikitext
text/x-wiki
'''''[[Βικιπαίδεια:Arthron]]'''''
[[Κατηγορίαν:Βικιπαίδεια]]
kjp4wpmvereoyvfew8l05j2jrukeeof
Μονακόν
0
2610
37405
34472
2025-12-30T21:43:38Z
Таёжный лес
10003
merging
37405
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Μονακό]]
7vdevp7fklbj9lijnh0hbhczz9ur2w9
Κρήτη
0
2616
34616
34477
2020-10-05T16:27:23Z
Rotondus
8164
Κατηγορίαν
34616
wikitext
text/x-wiki
Η Κρήτη εν νησιωτικό μέρος τη νοτιονατολικού Μεσογείου. Ές (με τα εκτιμήσεις τη 2009) 623.065 ανθρώπς.
[[Κατηγορίαν:Νησία]]
[[Κατηγορίαν:Ελλάδα]]
93fl4adsxbmy52nucj08s0w7agpmqss
Χιροσίμα
0
2620
36852
33231
2025-12-16T09:54:08Z
Εὐθυμένης
2777
36852
wikitext
text/x-wiki
[[Αρχείον:Hiroshima montage2.jpg|thumb|Χιροσίμα]]
Η '''Χιροσίμα''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 1.196.274 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
k1slri9rqnydoi22zuazknckec4xmop
Ναγκασάκι
0
2621
36806
33232
2025-12-16T09:25:35Z
Εὐθυμένης
2777
36806
wikitext
text/x-wiki
[[Αρχείον:Nagasaki City view from Hamahira01s3.jpg|thumb|Ναγκασάκι]]
Η '''Ναγκασάκι''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 446.007 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
ir8tqpog5mbr4b7ogjvk32dw6y359pq
Φουκουόκα
0
2622
36848
35097
2025-12-16T09:51:55Z
Εὐθυμένης
2777
36848
wikitext
text/x-wiki
[[Αρχείον:Fukuoka montage.jpg|thumb|Φουκουόκα]]
Η '''Φουκουόκα''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 5.590.378 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
6n8z1jwaa86vj7qy4kmka8k8gssucaa
Καγκοσίμα
0
2623
36774
36314
2025-12-16T09:02:40Z
Εὐθυμένης
2777
36774
wikitext
text/x-wiki
[[file:Kagoshima and Sakurajima.jpg|thumb|Καγκοσίμα]]
Η '''Καγκοσίμα''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 605.855 ανθρώπ.
Την 1ην του Καλαντάρτς (Ιανουαρίου) το έτος 2553 (2010), η πόλιν Καγκωσίμα είχεν πληθυσμόν περίπου 605.855 ανθρώπους. Η πυκνότητα ατον ήτον 1.107,49 ανθρώπους ανά τετραγωνικόν χιλιόμετρον, με συνολικήν έκτασην 546,71 τετραγωνικά χιλιόμετρα.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
r1nmhkz6br7nx1xo4eghvmglwq1ure9
Σεντάι
0
2624
36838
34876
2025-12-16T09:46:01Z
Εὐθυμένης
2777
36838
wikitext
text/x-wiki
Η '''Σεντάι''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 1.063.103 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
di7pyifwhledjzgy1kv6frgolz825wn
Κόμπε
0
2625
36772
33236
2025-12-16T09:01:35Z
Εὐθυμένης
2777
36772
wikitext
text/x-wiki
[[Αρχείον:Twilight view of Kobe, from a point near Shin-Kobe station.jpg|thumb|Κόμπε]]
Η '''Κόμπε''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 1.536.499 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
1pzgpo1r3of8d7semtxaunbwtdxqowg
Ονταγουάρα
0
2626
36818
33237
2025-12-16T09:33:23Z
Εὐθυμένης
2777
36818
wikitext
text/x-wiki
[[Αρχείον:Odawara montage.JPG|thumb|Ονταγουάρα]]
Η '''Ονταγουάρα''' εν πολιτεία σην [[Ιαπωνία]]ν. Οσήμερον εχ' πληθυσμόν 194.672 ανθρώπ.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{ja}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Ιαπωνία]]
au0dvxm4ncljlnk5vmew9lcyisqomh6
Κατηγορίαν:Χιλή
14
2631
34655
34647
2020-11-22T20:23:01Z
Je7roi
4539
Ο Je7roi μετακίνησε τη σελίδα [[Κατηγορίαν:Χιλε]] στην [[Κατηγορίαν:Χιλή]]: Correction name
34647
wikitext
text/x-wiki
{{Commonscat|Chile}}
[[Κατηγορίαν:Κράτη|Χιλε]]
d6iwoidlm1gcxtu1dewqo7bu77gt78c
Σαντιάγκο
0
2632
36835
34769
2025-12-16T09:44:23Z
Εὐθυμένης
2777
36835
wikitext
text/x-wiki
[[Αρχείον:Santiago, vista hacia el Sureste (9417568385).jpg|μικρογραφία|Σαντιάγκο]]
To '''Σαντιάγκο''' εν πολιτεία σην [[Χιλή]]. Οσήμερον ([[2014]]) εχ' πληθυσμόν 5.128.590 ανθρώπς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{es}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Χιλή]]
rm2kqzayxb0v14lg4qdai6kczb968dd
Latin America
0
2633
33263
2017-02-27T21:59:12Z
GreekCanine
4979
Ο GreekCanine μετακίνησε τη σελίδα [[Latin America]] στην [[Λατινικήν Αμέρικα]]
33263
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Λατινικήν Αμέρικα]]
rf0ewym2bujag00ii5hspu6u52t6iyc
Συνθετικοι
0
2641
35526
35525
2024-01-23T17:21:07Z
Διογένες
10538
/* Παραπομπές */+s
35526
wikitext
text/x-wiki
Οι '''Συνθετικοί''' είναι η πρωτοποριακή ελληνική μπάντα ηλεκτρονικής μουσικής, που δημιουργήθηκε το 1985 από τους '''Αποστόλη "Λοβέρδο" Αυγερινό''' (στίχοι, σύνθεση, φωνή, κιθάρα), και τον '''Διονύση Αυγερινό''' (στίχοι, σύνθεση, φωνή, πλήκτρα).
{| class="wikitable"
|+Πίνακας περιεχομένων
!1.
!Ιστορικό - 1η περίοδος
!
!
|-
!
!
!1.1
!1η περίοδος
|-
|
|
|'''1.2'''
|'''2η περίοδος'''
|-
|'''2.'''
|'''Δισκογραφία'''
|
|
|-
|'''3.'''
|'''Άλλα projects'''
|
|
|-
|'''4.'''
|'''Παραπομπές'''
|
|
|}
== Ιστορικό - ==
=== 1η περίοδος ===
Οι Αποστόλης και Διονύσης Αυγερινός γεννήθηκαν στο Ληξούρι Κεφαλλονιάς. Η σχέση τους με την μουσική ξεκινάει από πολύ νωρίς, τόσο λόγω της πλούσιας μουσικής παράδοσης του τόπου που μεγάλωσαν, όσο και των μουσικών ερεθισμάτων μέσα από την ίδια την οικογένεια, που όλοι σχεδόν παππούδες ,πατέρας, θείοι, ήταν ερασιτέχνες μουσικοί. Πρόγονος τους ήταν ο Νικόλαος Αυγερινός που ζούσε στην Οδησσό της Ρωσίας . Ήταν συνθέτης κυρίως εκκλησιαστικής τετράφωνης μουσικής και ενορχηστρωτής σε κάποια έργα του Τσαϊκόφσκι.
Πριν από την εφηβεία, εγκαθίστανται οικογενειακά στην Αθήνα. Εκεί γνωρίζονται με τον '''Δημοσθένη Τσανέτογλου''', οι γνώσεις του οποίου στη μουσική τεχνολογία της εποχής, σε συνδυασμό με τα μουσικά ακούσματα των αδελφών Αυγερινών από την ροκ, την πανκ, τα blues, αλλά και την ηλεκτρονική μουσική, οδηγεί τους τρεις τους να υλοποιήσουν την ιδέα σχηματισμού της μπάντας "Συγχρονισμοί". Αργότερα αλλάζουν το όνομα σε «Συνθετικοί», το οποίο και καθιερώνεται, κυκλοφορώντας το πρώτο τους ομώνυμο βινύλιο, με τη συμμετοχή στα computers του Δημοσθένη Τσανέτογλου. Ακολουθώντας ηλεκτρονικά μονοπάτια, καθιερώνουν το δικό τους ξεχωριστό ύφος, μέσα από την όσμωση του μινιμαλισμού, των ψυχεδελικών πλήκτρων, αλλά και της ηλεκτρικής κιθάρας, με τα ψιλά φωνητικά του Αποστόλη Αυγερινού και τον υπερρεαλιστικό στίχο. Το πρωτόγνωρο για την εποχή ύφος των Συνθετικών δεν έχει την ανάλογη ανταπόκριση και έτσι τρία χρόνια αργότερα το συγκρότημα διαλύεται.
=== 2η περίοδος ===
Στη συνέχεια οι Αποστόλης και Διονύσης ηχογραφούν και κυκλοφορούν ως "Αποστόλης και Διονύσης Αυγερινός»" δύο cd: το "Φώτα μου, ήλιε μου" το 1997 και το «Ήλεκτρον» το 2006, με το δεύτερο να αποτελεί ένα εξ’ ολοκλήρου ορχηστικό άλμπουμ ηλεκτρονικής μουσικής, με επιρροές από την ελληνική παραδοσιακή επτανησιακή παραδοσιακή, αλλά και την βυζαντινή μουσική.
Το 2010, και ύστερα από απαίτηση μερίδας κόσμου, επανασυνδέονται ως "Συνθετικοί", χωρίς τη συμμετοχή του Δημοσθένη Τσανέτογλου στο σχήμα . Την ίδια χρονιά, κυκλοφορούν υλικό που υπήρχε στα σκαριά, αλλά και νέα τραγούδια που εμπεριέχονται στο άλμπουμ με τίτλο «Προσωπεία- Εφιάλτες». Το 2013, κυκλοφορούν το «Ανθρώπινες Ιστορίες», ενώ μέσα στο 2017, αναμένεται ο τέταρτος δίσκος της μπάντας. Σήμερα οι Συνθετικοί, συνεχίζουν να εμφανίζονται ζωντανά. Παράλληλα, οι Αποστόλης και Διονύσης Αυγερινός, εργάζονται επάνω στη σύνθεση και την ηχογράφηση ενός διαφορετικού project με ακουστικά όργανα. Πρόκειται για την μελοποίηση ποιημάτων του Ναπολέων Λαπαθιώτη.
== Δισκογραφία ==
* ''Συνθετικοί'' (1990)
* ''Προσωπεία - Εφιάλτες'' (2010)
* ''Ανθρώπινες Ιστορίες'' (2013)
== Άλλα projects ==
* ''Φώτα μου ήλιε μου'' (1997)
* ''Ήλεκτρον'' (2006)
<nowiki>*</nowiki> Ως Αποστόλης και Διονύσης Αυγερινός
== Παραπομπές ==
# https://www.tovima.gr/2013/01/16/vimagazino/oi-synthetikoi-tragoydane-akoma/
# https://www.lifo.gr/prosopa/synenteyjeis/oi-synthetikoi-anasyntithentai-ki-apopse
# https://web.archive.org/web/20170527190610/http://www.rock-elliniko.gr/Synthetiki
# https://web.archive.org/web/20170527190610/http://www.rock-elliniko.gr/Synthetiki
[[Κατηγορίαν:Μουσική]]
alstllmjpv69f621yhju3wv0u2epqpb
Κατηγορίαν:User pt
14
2642
33340
2017-06-14T21:04:26Z
5.9.6.51
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33340
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Πορτογαλικά.
bk3wt4c0yqmxim250zvirnymcaj4pmi
Κατηγορίαν:User gl
14
2643
33341
2017-06-14T21:04:26Z
5.9.6.51
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33341
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Γαλικιανά.
4smm7s9z29w44ur81t94cmwf940ypbx
Κατηγορίαν:User mwl
14
2644
33342
2017-06-14T21:04:26Z
5.9.6.51
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33342
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Μιραντεζικά.
cf8573b9ilyxuqampqzqm6r2yve674u
Κατηγορίαν:User an
14
2645
33343
2017-06-14T21:04:26Z
5.9.6.51
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33343
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Αραγκονικά.
4ctyn1hdx7d1ur1t7uywz1hot6st0ch
Κατηγορίαν:User oc
14
2646
33344
2017-06-14T21:04:26Z
5.9.6.51
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33344
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Οξιτανικά.
h5z3ebcfdc089bpk3oke0c5vq63fvbs
Κατηγορίαν:User id
14
2647
33345
2017-06-14T22:55:56Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33345
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Ινδονησιακά.
toeb69crqxcr8pzcb95fugm31ps6oh3
Κατηγορίαν:User ko
14
2649
33349
2017-06-16T04:40:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33349
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Κορεατικά.
425mo1b2rvbah3312oontfos1kz71yy
Κατηγορίαν:User nl
14
2650
33350
2017-06-16T06:00:57Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33350
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Ολλανδικά.
c9uu1do4193tycmtedxwar0gwhbz5dd
Κατηγορίαν:User bg
14
2651
33354
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33354
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Βουλγαρικά.
664gqhny66o7592wi3lb1q5g6133uqb
Κατηγορίαν:User bs
14
2652
33355
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33355
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Βοσνιακά.
qme02ybiztvhm6b2866q6xgmvit2x1c
Κατηγορίαν:User cs
14
2653
33356
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33356
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Τσεχικά.
pho5mxcoyzimeukdmwvok8fz5ecn2jw
Κατηγορίαν:User csb
14
2654
33357
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33357
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Κασούμπιαν.
dhbpbmunzy8r68lq16p1hu8afu8rvyo
Κατηγορίαν:User hr
14
2655
33358
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33358
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Κροατικά.
tr3dk3zzmm1n6tzvgwo2srhta6xq9ed
Κατηγορίαν:User kg
14
2656
33359
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33359
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Κονγκό.
3x7yx4j5qkqi4ii2xzhwy0fvssnzpl5
Κατηγορίαν:User la
14
2657
33360
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33360
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Λατινικά.
ibgru41ubkaoe3opkx87intju97jake
Κατηγορίαν:User ro
14
2658
33361
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33361
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Ρουμανικά.
ha0kp2qdeu2pe79k0730uyhhhftkkvt
Κατηγορίαν:User sc
14
2659
33362
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33362
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Σαρδινικά.
h4er0vw0x5nsc6ryj04q4d0dxd03jfa
Κατηγορίαν:User sh
14
2660
33363
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33363
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Σερβοκροατικά.
ey3fsrk486s6r4pl7134fy3dp43bav2
Κατηγορίαν:User sk
14
2661
33364
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33364
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Σλοβακικά.
miri19u02x8w4x5yi4m9bnjurcrssh6
Κατηγορίαν:User sr
14
2662
33365
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33365
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Σερβικά.
b8v1rt58kxnpm2t5vt418x8168mqgcy
Κατηγορίαν:User uk
14
2663
33366
2017-06-18T05:20:29Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33366
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Ουκρανικά.
7erzv89nqiut9n20acdoi7xepaeir0h
Κατηγορίαν:Μονακό
14
2664
33367
2017-06-18T08:19:03Z
80.106.160.80
Δημιουργήθηκε κενή σελίδα
33367
wikitext
text/x-wiki
phoiac9h4m842xq45sp7s6u21eteeq1
Κατηγορίαν:User de-AT
14
2665
33370
2017-06-18T23:49:53Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33370
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Γερμανικά Αυστρίας.
hjrj4sr7kni0kfz8131shgit02bijs2
Κατηγορίαν:User zh
14
2666
33371
2017-06-19T00:47:27Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33371
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Κινεζικά.
mfc20gay5iyvokxysocz72e90tlr2hr
Κατηγορίαν:User lzh
14
2667
33372
2017-06-19T00:47:27Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33372
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Literary Chinese.
ankrr9oo8jy18ernctke8kk3ym476e7
Κατηγορίαν:User yue
14
2668
33373
2017-06-19T00:55:11Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33373
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Καντονέζικα.
5w9llezwzvrc8qptmmblysesbjrh1gf
Κατηγορίαν:User zh-Hant
14
2669
33374
2017-06-19T15:17:00Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33374
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Παραδοσιακά Κινεζικά.
5y2nvxexwe7v8c9cag5zcu44xzbyhaw
Κατηγορίαν:User vep
14
2670
33375
2017-06-19T18:07:12Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33375
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Veps.
lzyyg0bzxzw11cyqv6i15un9hhtk9b3
Κατηγορίαν:User li
14
2671
33376
2017-06-20T02:57:52Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33376
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Λιμβουργιανά.
b2f2lydz23ro4kec3ze5932yk36ojth
Κατηγορίαν:User af
14
2672
33377
2017-06-20T02:57:52Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33377
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Αφρικάανς.
8jomd3ff0e6xqc23bgm1bbpt0t805gx
Κατηγορίαν:User eu
14
2673
33378
2017-06-20T03:19:28Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33378
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Βασκικά.
ni36u7khugqxc2zth5tyc8ncpqpuewq
Κατηγορίαν:User is
14
2674
33379
2017-06-20T03:41:18Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33379
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Ισλανδικά.
bhx69mz2oskzzxi3mjcsg8ry99ve0wa
Κατηγορίαν:User da
14
2675
33380
2017-06-20T03:41:18Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33380
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Δανικά.
ktkqj7becagb33cmwyig94tpf615l27
Κατηγορίαν:User hu
14
2676
33381
2017-06-21T04:54:40Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33381
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Ουγγρικά.
orybzlnmhqa07m7ghxclukuzzwwslbc
Κατηγορίαν:User zh-Hans
14
2677
33382
2017-06-21T23:21:15Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33382
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Απλοποιημένα Κινεζικά.
fer05lpcc2bi6bjirgesmwtiybfv7az
Κατηγορίαν:User be
14
2678
33383
2017-06-22T03:48:37Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33383
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Λευκορωσικά.
bmteq2k3sq1h9xpdpz4siy3eiusirdo
Κατηγορίαν:User bn
14
2679
33386
2017-06-25T05:30:37Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33386
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Μπενγκάλι.
n967j7atv9kzkq48k6k3m837uewu9eb
Κατηγορίαν:User liv
14
2680
33389
2017-07-02T00:20:19Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33389
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Livonian.
nzsgdewbxkv21m1dz56shp8lidcijkw
Κατηγορίαν:User lv
14
2681
33390
2017-07-02T00:20:19Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33390
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Λετονικά.
7rkdzm44espbexb6vfbbftob3ex5wd6
Κατηγορίαν:User et
14
2682
33391
2017-07-02T00:20:19Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33391
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Εσθονικά.
h14k3x9cz0l4u0czszocilz126hn3ca
Κατηγορίαν:User sv
14
2683
33392
2017-07-02T12:09:42Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33392
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Σουηδικά.
b32k2cxwsi85p8yz3y6cgai4y8sy5pz
Κατηγορίαν:User no
14
2684
33393
2017-07-02T12:09:42Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33393
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Νορβηγικά.
8njshjgn70h8ww8g0irfq4favxbsh58
Κατηγορίαν:User nn
14
2685
33394
2017-07-02T12:09:42Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33394
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Νορβηγικά Νινόρσκ.
erhwh1jx7zrze3f8bscpt3rsg8zkgya
Κατηγορίαν:User nds
14
2686
33395
2017-07-02T12:09:43Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33395
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Κάτω Γερμανικά.
mqfx9uk9qn0sy779702u9mkkzp0ea8i
Κατηγορίαν:User nb
14
2687
33396
2017-07-02T18:44:22Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33396
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Νορβηγικά Μποκμάλ.
tnwls5w62fw8aitwilo5ihbcpbizzng
Κατηγορίαν:User ka
14
2688
33397
2017-07-02T18:44:22Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33397
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Γεωργιανά.
s77heybge4ebq3emthizqza1b3b0on1
Κατηγορίαν:User ab
14
2689
33398
2017-07-03T02:56:41Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33398
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Αμπχαζικά.
8c4iu6cmy5hwld1uw7j4d3xgeguko4p
Κατηγορίαν:User rn
14
2690
33399
2017-07-03T02:56:41Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33399
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Ρούντι.
kajmy4aa0zqf324hdcl2f3vdf7gly4p
Κατηγορίαν:User grc
14
2691
33400
2017-07-04T07:13:08Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33400
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Αρχαία Ελληνικά.
i4bei7kclr33k5g94u3x9bp6h56xfha
Κατηγορίαν:User ast
14
2692
33401
2017-07-05T13:09:45Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33401
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Αστουριανά.
mg0sq2hvyy7f0rja1z1114w5cieeqhp
Κατηγορίαν:User sco
14
2693
33403
2017-07-06T08:45:16Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33403
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Σκωτικά.
i5xqzib9jnxz2iaxuvpguibvwivvf91
Κατηγορίαν:User pih
14
2694
33404
2017-07-06T08:45:16Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33404
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Norfuk / Pitkern.
8kh2je6b172qquh9l0erusjtfiqqkeo
Κατηγορίαν:User nov
14
2695
33405
2017-07-06T08:45:16Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33405
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Novial.
lhf43poiar669bvaypjqe94r3wsodza
Κατηγορίαν:User kk
14
2696
33406
2017-07-07T15:12:40Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33406
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Καζακικά.
ku3r7vsrdb890i3be9gdxgik3ldvedk
Κατηγορίαν:User or
14
2697
33408
2017-07-11T19:29:53Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33408
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Ορίγια.
c29p00bj86kax4heaqb4sbcbghz5cod
Κατηγορίαν:User pi
14
2698
33409
2017-07-11T19:29:53Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33409
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Πάλι.
iajhqqd9wqlz284psdx1e3m0iaibggt
Κατηγορίαν:User kn
14
2699
33410
2017-07-11T19:29:54Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33410
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Κανάντα.
n7l7oy8b41xsce35za5alwthalo3it0
Κατηγορίαν:User hi
14
2700
33412
2017-07-13T01:09:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33412
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Χίντι.
0s1sfboehtalu17kh02euc9pu1fc24f
Κατηγορίαν:User ne
14
2701
33418
2017-08-10T23:28:19Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33418
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Νεπάλι.
ka7nkx27y3n5fjl6aw9m1pgo7224u7v
Κατερίνη
0
2706
36867
33425
2025-12-16T10:06:53Z
Εὐθυμένης
2777
36867
wikitext
text/x-wiki
[[File:Park Katerini.jpg|thumb]]
Ἡ '''Κατερίνην''' ἔν [[Ελλάδα|ἑλλενικόν]] πολιτείαν ντ'εὐρίεται 'ς σὴν [[Μακεδονία|Μακεδονίαν]] καὶ ἔχ' πληθυσμόν 58.309 τ'ἀνθρώπ'ς. Εὐρίεται 'ς σὴν κεντρικήν Μακεδονίαν, 'ς σὸν νομόν τσῆ Πιερίας καὶ ἔν ἡ πρωτεύουσάν ἀτ'ς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Κατερινη}}
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας]]
[[Κατηγορίαν:Μακεδονία]]
2z18mbt9b6w4szy0f7tpw9rr46bfwq6
Νίκαια
0
2708
33439
2017-08-31T08:28:17Z
Εὐθυμένης
2777
Ο Glorious 93 μετακίνησε τη σελίδα [[Νίκαια]] στην [[Νις (Γαλλία)]]
33439
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Νις (Γαλλία)]]
69ldgwyelbkwgbjhhbcm667htmxl0ll
Λυών
0
2709
33443
2017-08-31T08:29:00Z
Εὐθυμένης
2777
Ο Glorious 93 μετακίνησε τη σελίδα [[Λυών]] στην [[Λιόν]]
33443
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Λιόν]]
80t243hk6m7qt1z88tpeoxwn93vb7ho
Δουνκέρκη
0
2710
33469
2017-08-31T08:58:47Z
Εὐθυμένης
2777
Ο Glorious 93 μετακίνησε τη σελίδα [[Δουνκέρκη]] στην [[Ντανκέρκ]]
33469
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Ντανκέρκ]]
n6ryjbmth2hh24q7n6z3r23smvj91ko
Διέππη
0
2711
33473
2017-08-31T09:00:45Z
Εὐθυμένης
2777
Ο Glorious 93 μετακίνησε τη σελίδα [[Διέππη]] στην [[Ντιέπ (Σεν-Μαριτίμ)]]
33473
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Ντιέπ (Σεν-Μαριτίμ)]]
5b8wo2rfddvj3k63riduos4nqngmpkb
Αλμπέρ
0
2712
33479
2017-08-31T09:17:52Z
Εὐθυμένης
2777
Ο Glorious 93 μετακίνησε τη σελίδα [[Αλμπέρ]] στην [[Αλμπέρ (Σομ)]]
33479
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Αλμπέρ (Σομ)]]
0bpbqgwmc3679cbpna612dnw2413v6o
23 Χριστουγενναρί
0
2716
37284
36334
2025-12-16T19:14:36Z
Εὐθυμένης
2777
37284
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[22 Χριστουγενναρί]] | [[23 Χριστουγενναρί]] | [[24 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
'''23 Χριστουγενναρί''' εν ο Δεκεμβρς. Αλλιώς εν Δεκεμβριτί. Μηνς που γιουρτάϊζ που τρως τσιριχτό με ζουμάρ πιχτό, όχι σπιουχτό.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[23 Αεργί]] - [[23 Καλανταρί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|1223]]
o47bl9wc7vq1dnwhx7inp6j33tyajac
Άννα Νετρέμπκο
0
2719
35584
35574
2024-01-25T08:46:11Z
Διογένες
10538
/* Συνδέσμε */Κοινά
35584
wikitext
text/x-wiki
[[Αρχείον:Anna Netrebko - Romy 2013 b.jpg|μικρογραφία|250px|Αννα Νετρέμπκο το 2013]]
Η '''Άννα Νετρέμπκο''' (Анна Юрьевна Нетребко, εγγενέθεν [[18 Σταυρί]] [[1971]]) εν τραγουδίστρια.
== Συνδέσμε ==
* [[Αρχείον:Commons-logo.svg|link=https://commons.wikimedia.org/wiki/Category:Anna_Netrebko?uselang=pnt|19x19px]] Σα [https://commons.wikimedia.org/wiki/%CE%9A%CF%8D%CF%81%CE%B9%CE%B1_%CE%A3%CE%B5%CE%BB%CE%AF%CE%B4%CE%B1 Κοινά] εσ υλικόν σχετικόν με [https://commons.wikimedia.org/wiki/Category:Anna_Netrebko?uselang=pnt '''''Άννα Νετρέμπκο''''']
[[Κατηγορίαν:Μουσική]]
tsey4fdp6a6uymet6lnbgqvdlv565l9
Βικιπαίδεια:Αγορά/Αρχείον 2009-2017
4
2725
34528
34391
2020-06-08T16:42:15Z
CommonsDelinker
121
Replacing 25_percents.svg with [[File:25_percent.svg]] (by [[:c:User:CommonsDelinker|CommonsDelinker]] because: redirect linked from other project).
34528
wikitext
text/x-wiki
__NEWSECTIONLINK__
<ul>
{| class="plainlinks" width="50%" align="center" border="0" cellpadding="2" cellspacing="2" style="margin-bottom:0.5em; background:#FFF; font-size:1.2em; text-align:center;"
| [{{fullurl:Βικιπαίδεια:Αγορά|action=edit§ion=new}} Αρχινέστε γράψιμον σην αγοράν<br>Add a new topic in this forum<br>Добавьте новую тему на форуме]
|}
{| align="right" style="background:#FFF5EE; margin:0 0 0.5em 1em;" id="toc" width="220px"
|-
|colspan="2" align="center" | [[Αρχείον:Diogenes looking for a man - attributed to JHW Tischbein.jpg|center|200px]]
|-
|colspan="2" align="center" | <big>'''Αγορά'''</big><br />
----
|-
|style="background:#EEDFCC;" colspan="2" align="center"| '''Χρήσιμα'''
|-
|colspan="2" align="center"|
[[Βικιπαίδεια:Εκλογήν|Εκλογήν]]<br />
[[Αρχικόν σελίδα|Αρχικόν σελίδαν]]<br /> [[Βικιπαίδεια|Βικιπαίδεια]]<br /> [[Βικιπαίδεια/Ντο εν η Βικιπαίδεια|Ντο εν η Βικιπαίδεια]]<br />[[Βικιπαίδεια/Ντο 'κ εν η Βικιπαίδεια|Ντο 'κ εν η Βικιπαίδεια]] <br /> [[Βικιπαίδεια/Βοήθεια|Βοήθεια]] <br /> [[Βικιπαίδεια/Δικαιώματα πνευματί|Δικαιώματα πνευματί]]<br />[irc://irc.freenode.net/wikipedia-pnt Παρακάθ σο IRC]
|}
<div style="background:#EEDFCC; text-align:left; margin:0px; padding:3px;">
<span style="font-size:bigger;">'''<u>Χ</u>αιρετίας και καλωσόρεμαν σ' όλ<u>α</u> τα Βικιπαιδία!'''</span>
</div>
<div style="background:#FFF5EE; padding:2px; margin-top:2px;">
Οι παλιοί εμουν σ' αρχαίον τ' ελλενικόν την γλώσσαν έλεγαν «αγοράν» τον τόπον που εποίνανε τα μουχαμπέτε και τα καλατσίας ατουν. Αέτς πα, όλ' εμείς 'τουν θα καλατσέβουμε αδά σην αγοράν εμουν. Σον αρχαίον την αγοράν ο Διογένες ο Σινωπέας αραεύκουτον τ' ανθρώπ'ς (εικόνα). Εμείς 'τουν αδά πα θα ευρίσκουμ' ατείντζ.
Αρχινέστε γράψιμον [{{fullurl:{{FULLPAGENAME}}|action=edit§ion=new}} αφκά καικά] και βαλέστε την '''υπογραφήν εσουν''': <nowiki>~~~~</nowiki>.
</div>
</li>
<li>'''pnt:''' Ψαλαφία για σημαίαν μποτ πρεπ' να ίνουνταν σ'αβούτεν τη σελίδαν.
</li>
<li>'''en:''' Requests for the [[m:bot|bot]] flag should be made on this page. This wiki uses the [[m:bot policy|standard bot policy]], and allows [[m:bot policy#Global_bots|global bots]] and [[m:bot policy#Automatic_approval|automatic approval of certain types of bots]]. Other bots should apply below.</li>
<li>'''ru:''' Запросы на присвоение флагов [[m:bot|бота]] должны быть поданы на этой странице. В данном Вики-разделе действует [[m:bot policy|стандартная политика в отношении ботов]], допускающая функционирование здесь т. н. [[m:bot policy#Global_bots|глобальных ботов]] и их [[m:bot policy#Automatic_approval|автоматическое подтверждение]] в большинстве Вики-проектов. В прочих случаях владельцы ботов должны подать заявку ниже.
</ul>
<hr size="5px" noshadow>
== Αρχεία ==
* [[Βικιπαίδεια:Αγορά/Αρχείον 2008|Αρχείον 2008]]
* [[Βικιπαίδεια:Αγορά/Αρχείον 2009|Αρχείον 2009]]
== Διαμαντίδης ==
γεια σας παιδες... εδω θα ηθελα να κανω μια μικρη παρατητηση σχετικα με την χρηση της ποντιακης γλωσσας και κυριως την γραπτη αποδοση της. επεσε εδω και καιρο στα χερια μου το βιβλιο του [[Κώστας Διαμαντίδης|κωστα ε. διαμαντιδη]] "το ροδάφ'νον" και πρεπει να πω οτι διαβαζοντας το ειναι σαν να ακους την θεια "σουμελλα" να σου λεει ιστοριες....μια γοητεια. μονο που η προσπαθεια της pnt vikipedia ειναι μεν καλη αλλα θελει ακομα δουλεια. τι θελω να πω με ολα αυτα: αλλο ειναι ενα λογοτεχνικο κειμενο ενος συγγραφεα και αλλο το να στηνεις μια ιστοσελιδα προσπαθωντας να αποδωσεις στα ποντιακα ορους ιντερνετ αγγλικους και "συγχρονους" κατα καποιον τροπο αρα και ιδιαιτερα δυσκολους και απαιτητηκους. αναγνωριζει κανεις τις δυσκολιες αλλα αν γινει λιγη περισσοτερη δουλεια ισως ξεφυλλιζοντας τις σελιδες της pnt vikipedia επαιρνε κανεις το ιδιο συναισθημα οπως απο το ανωτερω βιβλιο. να ειστε ολοι καλα. Ζαχον
--[[Ειδικόν:Contributions/62.103.57.188|62.103.57.188]] 07:17, 8 Απρίλ 2009 (UTC)
:Να ξεκαθαρίσω μιας και κάποιοι με ρώτησαν για αυτή την ανάρτηση ότι δεν την έγραψα εγώ απλά ο γραφών είναι συνονόματος μου (Ζάχον). Τώρα πάνω στα λεγόμενα του: Πιστεύω πως κατα μία ερμηνεία (προσωπική) μας ενθαρρύνει να κάνουμε πιο ποιοτικά τα άρθρα μας. Έχει αρκετό δίκιο και όταν φτάσουμε ένα μέγεθος από εκεί και πέρα θα πρέπει να αρχίσουμε να ενισχύουμε ποιοτικά τα τότε υπάρχοντα άρθρα. Προσωπικά πρώτη φορά άκουσα για σύγχρονη ποντιακή λογοτεχνία και έψαξα πληροφορίες. Πιστεύω πως μέσα στις διακοπές θα καταφέρω να πάρω αυτό το βιβλίο να το διαβάσω και να μελετήσω καλύτερα και την γλώσσα.--[[Χρήστες:ZaDiak|ZaDiak]] 20:12, 25 Καλομηνά 2009 (UTC)
== Γραφειοκράτης ==
Παιδιά έγινα επισήμως και γραφειοκράτης αφού μου έδωσαν τα δικαιώματα οι stewards. Έτσι σύυμφωνα με την ψηφοφορία που έχουμε κάνει έδωσα δικαιώματα διαχειριστή στους χρήστες Makedonier, Omnipaedista, Sinopeus.--[[Χρήστες:ZaDiak|ZaDiak]] 15:47, 8 Απρίλ 2009 (UTC)
== Βικιθήκη ==
Παιδιά ήθελα να αναρτήσω μερικά ποντιακά κείμενα κι έτσι έφτιαξα Κάτι σαν test project στα ποντιακά για να βάζουμε εκεί προσωρινά τα κείμενα. Δεν δημιούργησα πρόταση οπότε ξεκαθαρίζω ότι αυτό δεν πρόκειται για δουλειά για ένα νέο εγχείρημα. [http://wikisource.org/wiki/Category:Pontic Εδώ] θα το βρείτε έχει κάποια λάθη στους τίτλους των καλάντων μιας και δεν ξέρω πάρα πολύ καλά τη γλώσσα. Μέχρι στιγμής έχω αναρτήσει τα κάλαντα χριστουγέννων και πρωτοχρονιάς και έχω ξεκινήσει να αναρτώ την γραμματική του [[Τοπχαράς|Τοπχαρά]].--[[Χρήστες:ZaDiak|ZaDiak]] 13:36, 12 Καλομηνά 2009 (UTC)
:Πολύ καλή η δουλειά σου. Άρχισα να αναρτώ και εγώ κείμενα στο Old Wikisource. --[[Χρήστες:Omnipaedista|Omnipaedista]] 07:20, 25 Καλομηνά 2009 (UTC)
== Update information about localisaton on translatewiki.net ==
* Currently 41.51% of the MediaWiki messages and 0.86% of the messages of the extensions used by the Wikimedia Foundation projects have been localised. Please help us help your language by localising and proof reading at [[betawiki:Special:LanguageStats/{{CONTENTLANGUAGE}}|translatewiki.net]]. This is the [http://translatewiki.net/w/i.php?title=Special:RecentChanges&translations=only&trailer=/{{CONTENTLANGUAGE}} recent localisation activity] for your language. Thanks, [[Χρήστες:GerardM|GerardM]] 08:56, 27 Μαρτ 2009 (UTC)
* Currently 41.37% of the MediaWiki messages and 0.80% of the messages of the extensions used by the Wikimedia Foundation projects have been localised. Please help us help your language by localising and proof reading at [[betawiki:Special:LanguageStats/{{CONTENTLANGUAGE}}|translatewiki.net]]. This is the [http://translatewiki.net/w/i.php?title=Special:RecentChanges&translations=only&trailer=/{{CONTENTLANGUAGE}} recent localisation activity] for your language. Thanks, [[Χρήστες:GerardM|GerardM]] 08:25, 13 Καλομηνά 2009 (UTC)
== Πλαϊνή Μπάρα ==
Μιας και κανείς δεν ανανέωνει τα Ατωριζνά γεγονότα (Τρέχοντα γεγονότα) τοποθέτησα στη θέση τους στην πλαϊνή μπάρα το Αργαστέρ (Αμμοδοχείο) το οποίο τροποποίησα λιγάκι έτσι ώστε να καθαρίζει από μόνο του.--[[Χρήστες:ZaDiak|ZaDiak]] 09:12, 18 Καλομηνά 2009 (
== Παρατηρήσεις σχετικά με τη γραφή και την ερμηνεία ==
Αγαπητοί φίλοι, διαχειριστές και αρθρογράφοι της "Βικιπαίδεια σα Ποντιακά" δημοσίευσα ένα άρθρο στο blog μου σχετικά με την ορθή γραφή της διαλέκτου μας. Αν θέλετε ρίξτε μια ματιά:
http://mavropouloskostas.wordpress.com/%ce%ba%ce%b1%ce%bd%cf%8c%ce%bd%ce%b5%cf%82-%cf%80%cf%81%ce%bf%cf%86%ce%bf%cf%81%ce%ac%cf%82-%cf%80%ce%bf%ce%bd%cf%84%ce%b9%ce%b1%ce%ba%ce%ae%cf%82-%ce%b4%ce%b9%ce%b1%ce%bb%ce%ad%ce%ba%cf%84%ce%bf/
== ΑΝΑΓΚΑΙΟΤΗΤΑ ΚΑΤΑΓΡΑΦΗΣ ΣΤΗ ΒΙΚΙΠΑΙΔΕΙΑ ΣΥΓΧΡΟΝΗΣ ΓΡΑΜΜΑΤΙΚΗΣ ΤΗΣ ΠΟΝΤΙΑΚΗΣ ΔΙΑΛΕΚΤΟΥ ΚΑΙ ΛΕΞΙΚΟΥ ==
Φίλοι διαχειριστές της ποντιακής Βικιπαίδειας, θεωρώ εντελώς απαραίτητη προϋπόθεση για την επιτυχία
του σημαντικότατου για τον Ποντιακό Ελληνισμό, αλλά και για τους αδελφούς Πόντιους των άλλων χωρών, εγχειρήματός σας να αρχίσει να διαμορφώνεται στην ποντιακή Βικιπαίδεια ένα βασικό σύγχρονο, απλό και χρηστικό λεξικό της κοινής ποντιακής διαλέκτου (ευθύ και αντίστροφο) και μία σύγχρονη, απλή και εύχρηστη γραμματική της. '''Όλα τα άρθρα και τα κείμενα που θα γράφονται στα ποντιακά πρέπει να συμφωνούν γενικά, χωρίς να περιορίζεται ο διαλεκτικός πλούτος της Ποντιακής, με το παραπάνω αναφερόμενο λεξικό και τη γραμματική''', για να μην υπάρξει ίσως ο κίνδυνος να αυτοκαταστραφεί από περιττή και μη ελεγχόμενη πολυμορφία μία τόσο σημαντική προσπάθεια. Με μεγάλη εκτίμηση για τις μέχρι σήμερα πολύ σημαντικές προσπάθειές σας. --Κώτσον 10:56, 15 Κερασινού 2009 (UTC)
Δες, και συμπλήρωσε ή διόρθωσε, στην αρχική σελίδα [[Βικιπαίδεια:Λεχτικόν]], [[Βικιπαίδεια:Γραμματικήν]]
===Ποντιακόν γραμματικήν===
Σο λήμμαν [[Τοπχαράς]] έ<u>ς</u> την βιογραφίαν τη Τοπχάρα που συνέγραψεν τη γραμματικήν εμούν. Μακάρ να ανεβάζ' ατό κάποιος για να διεβάζετ' ατό. Κάτ θα μαθάνετε. Αλλά θα σχολιάζατο αδακά γιατι θαρρώ πως οτι εςς να εφτάει με τα θεμέλια τη γλώσσας εμούν πρεπ να διεβάζετ' ατά ουλ.
Μπράβο σον Τοπχαρά π' έγραψεν την ποντιακήν γραμματικήν. Αναμένω όμως ας έναν πόντιον φιλόλογον να γράφτ άλλο καλίον γραμματικήν γιατί ο Τοπχαράς εν έναν κσάι απλός. Ντο εννοώ; καταρχάς η Ορθογραφίαν 'ατ εν πολλά απλόν. Οι Πόντιοι εν Ίωνικόν φύλλον και τα λέξεις έχνε κοινά ρίζας. Ατό σημαίν' ότι έχνε και κοινόν ορθογραφίαν και τα δομάς των λέξεων πρεπ να ομοιάζνε.
Ο Τοπχαράς γραφτ για τον "ιποθετικόν" τρόπον. Ατό εν λάθος γιατί η γραφήν κι εν greekpont αλλά εν ελληνικόν γραφήν. Τα ρίζας, τα πνεύματα, τα σύμβολα εν όμοια σα ποντιακά και σα Ελληνικά. Επομένως και σα ποντιακά η λέξη γράφκεται "υποθετικόν τρόπον" με "υ".
Όμοια, τα λάθη ντε φτάει εν σα ακόλουθα λέξεις: Ιποταχτικόν, το άρθρο "ι" αλλά και γενικώς σε όλα τα λέξεις εςς λάθος ορθογραφίαν. Σην Ελληνικην τη γλώσσαν (σ' ατό περιλαμβάνεται και η ποντιακή) η ορθογραφίαν εν πολλά συμαντικόν γιατί δεκνείζ παρα πολλά.
Αλλά κι έν μαναχόν τα ορθογραφικά λάθην ατ που εφτάνε το έργον ατ πολλά απλοϊκόν. Εν και η δομήν των λέξεων. Κι χωρίζ δηλαδή τα λέξεις ασ σα προθέσεις και ασου συνδέσμους αλλά εφτάει πολυλέξεις. Για παράδειγμαν λέει: "ταντονιμίας" αντίς "τ' αντωνυμίας"
Το φαινόμενον ατό λέ' ατο συντραβηγμόν αλλά αν δέχκουμες ατό κι θα πρέπ να δέχκουμες ατό και σην διδασκαλίαν τη αρχαίας ελληνικής; Η γνώμη μ' έν ότι πρέπ να βάλουμε απόστροφόν χωρίς να ενούνταν τα λέξεις.
Έλεα πως τα ποντιακά έχνε συγγένειαν με την Ιωνικήν διάλεκτον κ' ατό πρέπ να εν η αφετερία τη λογικής εμούν. Πολλά κόσμος, εφέκεν την πατρίδαν κ' επήεν ση Ρωσίαν πρόσφυας αλλά ατό κι σημαίν ότι πρέπ να βάλομε με το ζόρ' το Ρωσικόν προφοράν σην ποντιακή γραμματικήν. Αποφάσισαμε να διδάσκουμες την Αττικήν διάλεκτον τη αρχαίας γλώσσας σα σχολεία γιατί εν πολλά λόγιος και έμορφεσσα. Με το ίδιον σκεπτικόν, σωστό τρόπος να καλατσέβομε και να γράφτουμε τα ποντιακά κι εν ο τρόπον τη Τασκένδης αλλά ο τρόπον τη Τραπεζούντας. Πολλά αγαπούμε τα αδέρφιαν εμούν που εέντοναν πρόσφυγας σην Ρωσίαν αλλά η καρδία τη Πόντονος εν σην Τραπεζούντα, ση Σαμσούντα, ση Ματσούκα.
Για τ' ατό παρακαλώ όποιος εν πόντιος φιλόλογος με ρίζας ας σην Τραπεζούντα ας γράφτ έναν σωστόν λεξικόν και γραμματικήν και το έργον ατ θα απομέν αιώνια σην ιστορίαν.
Κάτ ακόμη θέλω να λέω για τον συμβολισμόν των γραμμάτων σα λέξεις. Ποίος έ<u>ς</u> πραγματικόν ανάγκην να συμβολίζ το πως πρεπ να διεβά<u>σ</u>κεται έναν γράμμαν; Ας τερούμε για παράδεγμα τη λέξην "τα τεσσάρια". Σα ποντιακά διεβά<u>σ</u>κεται <b>"τεσσάρια"</b> και σα νεοελληνικά <b>"τεσσάργια"</b>. Για τ' αούτο τα ποντιακά εν πολλά χρήσιμον γλώσσα για να δεκνείζ και τοι Έλληνες πως έν ο σωστόν τρόπος διεβάσματος. Το ποντιακόν γλώσσαν θαρώ πρέπ να διδάσκεται και σην φιλολογικήν σχολήν για να έχνε οι φιλόλοοι, οι γλωσσολόοι κλπ καλλίον αντίληψην τη Ελληνική γλώσσας.
--[[Χρήστες:Stravon|Stravon]] 15:39, 22 Σταυρί 2009 (UTC)
== Ποντιακά ==
Ημέρα πανηγυρισμού για τα Ποντιακά σήμερα!!! Έπειτα από σχετική εισήγησή μου προς το Ethnologue θα αναγνωριστεί ότι η Ποντιακή έχει 1.058.068 ομιλητές. Φυσικά και ο αριθμός είναι μεγαλύτερος αλλά η επιτυχία είναι τεράστια αν αναλογιστεί κανείς το γεγονός ότι ο αριθμός τριπλασιάζεται σε σχέση με πριν!! Έτσι αποκτάμε ένα αρκετά αξιόλογο μέγεθος σε ομιλητές και γενικά ανεβαίνουμε γλωσσολογικά!! Οι αλλαγές θα εφαρμοστούν στην 17η έκδοση του βιβλίου και η ιστοσελίδα θα αργήσει να ενημερωθεί λιγάκι.--[[Χρήστες:ZaDiak|ZaDiak]] 22:53, 18 Aλωναρί 2009 (UTC)
:Πράγματι ο αριθμός σχεδόν τριπλασιάζεται! Ελπίζω ότι και αυτός ο τριπλασιασμός θα μετακυλιστεί και στα άρθρα μας εδώ, σε αριθμό και περιεκτικότητα!--[[Χρήστες:Consta|Consta]] 17:37, 19 Aλωναρί 2009 (UTC)
== Ποντιακόν καλατσήν ==
Το καλάτ<u>σ</u>εμαν σα ποντιακά σίγουρα θα ζορλαεύ' αρκετούς, εμέ πα, γιατί ούλ' εγέμναμε τη πόλης τα παιδία και εμοντέρνεψαμε. Οσήμερον λέμε πως έν δύ<u>σ</u>κολον να καλατ<u>σ</u>εύομε σα ποντιακά τα σύγχρονα τα όρους αλλά έχω έναν ερωτησην να εφτάγω σας. Σο φροντιστήριον τη Τραπεζούντος μαναχόν για χαβίτς εμαθάναν τα παιδία; 'Κ' είχαν επιστημονικόν καλατσήν; <p> Αν ζορλαεύκουμες ατώρα εν γιατί ενέ<u>σ</u>παλαμε τα ποντιακά και αν 'κι μιλούμ' ατα ξάι τότες τα παιδίαν εμούν 'κι θα μαθάν' ατα ξάι. Ζορλάεμαν - ξεζορλάεμαν, αδαπές πρέπ' ούλ' να μιλούμε ποντιακά γιατί τα λέξεις εν αλλά εμείς 'κι ξερομ' ατα.
--[[Χρήστες:Stravon|Stravon]] 14:18, 1 Σταυρί 2009 (UTC)
:Φίλε Stravοn, σο φροντιστήριον τη Τραπεζούντος μαναχόν για χαβίτς 'κι εμαθάναν τα παιδία, αλλά είχαν για επιστημονικόν καλατ<u>σ</u>ήν το ελλενικόν τη γλώσσαν; Σα ποντιακά τα σύγχρονα τα όρους εμείς 'τουν πρέπ΄ να ευρίουμ' ατα. Υείας και <u>χ</u>αιρετίας!--Κώτσον 09:19, 13 Σταυρί 2009 (UTC)
:Εγώ δεν μπορώ να μιλήσω ποντιακά ωστόσο μπορώ να τα καταλάβω άνετα. Το θέμα που θίγεις είναι πολύ ενδιαφέρον και συμφωνώ μαζί σου. Πρέπει να αρχίσουμε να καλατσεύομε στα ποντιακά. Αυτό θα βοηθήσει και για τη διάδοση. Τώρα όσο αφορά το Φροντιστήριο της Τραπεζούντας δεν γνωρίζω το θέμα που θέτεις. Απο εδώ και πέρα θα προσπαθώ να μιλάω και εγώ ποντιακά όπου μπορώ και θα γράψω οδηγίες που θα ενθαρρύνεται η ομιλία στο ποντιακά. <u>Χ</u>αιρετίας,--[[Χρήστες:ZaDiak|ZaDiak]] 21:44, 1 Σταυρί 2009 (UTC)
::Θαρρώ πως το σώσιμον τη ποντικής τη γλώσσας 'κι εν απλώς έναν γραφικόν θέμαν. Έν ίσως το μοναδικόν γλώσσαν που έ<u>σ</u>' ακόμη συγγένειαν με τα αρχαία. 'Κι έν μαναχόν ποντιακόν ζήτεμα, έν ελληνικόν πα. Το παλαλόν με το θέμαν εμούν έν ότι πάει να χάται η ποντιακήν κι ας είμαστε χαμά-χαμά 4-5 εκατομμύρια Πόντιοι σ' ούλον τον κόσμον. Ατό 'κι εν θάνατον τη γλώσσας αλλά χαραλάεμαν ατς. Εν γλωσσικόν αυτοκτονίαν. Εθάρναμε, και εγώ ασ αουτούς έμνε, ότι εν πιο μοντέρνο να καλατσεύομε Ελληνικά. Ετίρτεβαν νε μας κιόλα οι ντόπιοι και έπαιζανε μας και εμείς ένοιθαμε ά<u>σ</u>χεμα. Πλύσην εγκεφάλου εποίνανε μας με τα ανέκδοτά τουν. Ατώρα όμως πρεπ' να εγνεφούμε προτού να έν πολλά αργά. Και θαρρώ ότι πρέπ' να ξεκινούμε ασήν γραφήν. '''Πρέπ' να συμφωνούμε πώς εν το σωστόν να γράφκουνταν τα ποντιακά γιατί χωρίς σωστόν συμβολισμόν χάται η προφοράν'''. Έρχινεσα να αλλάζω και τα παραθύρ<u>α</u> μ' (windows xp) σα ποντιακά αλλά χρειάσκουμαι βοήθειαν σοι ορισμούς για να έν σωστοί. Ας πούμε το "Save" μετάφρασα το σε "τοπλάεμα" αλλά πρέπ' να συμφωνούν κι άλλ' για να εβγαίν'νε τα πρώτα ποντιακά παραθύρ<u>α</u>. Όσοι θέλετε να βοηθάτε με γράψτε έναν μήνυμα.--[[Χρήστες:Stravon|Stravon]] 00:55, 3 Σταυρί 2009 (UTC)
Εγώ θα ήμουν παραπάνω από χαρούμενος να σε βοηθήσω αλλά θα μου ήταν προτιμότερο να μιλούσαμε μέσω μέιλ ή irc ή msn ή οτιδήποτε τέτοιο. Όποτε ξαναμπείς γράψε μου έναν τρόπο να έρθουμε σε επικοινωνία. Στο μεταξύ θα πρότεινα να αρχίσεις να συνεισφέρεις κι εσύ στην Βικιπαίδεια γιατί είναι από τις πιο γνωστές ποντιακές ιστοσελίδες ανάμεσα στους ποντίους και σίγουρα μέσα στισ 4-5 πιο γνωστές στους μη-πόντιους. Έτσι θα διατηρηθεί κι η γλώσσα.
Υ.Γ. Συγνώμη που δεν μιλάω στα Ποντιακά αλλά δεν έχω την απαραίτητη εξοικείωση. Με τον καιρό θα προσπαθήσω να τα ενσωματώσω στην ομιλία μου.--[[Χρήστες:ZaDiak|ZaDiak]] 21:59, 3 Σταυρί 2009 (UTC)
[[Κατηγορίαν:Wp/pnt]]
== Γλυκύν Ποντιακόν Γλώσσαν ==
Αούτο η προσπάθεια έν' πολλά καλόν, αέτς εθαρώ, θα βοηθά να εγλιτώνουμε το πανάρχαιον την γλώσσαν έμουν.
Έζησεν απάν - αφκά 3,000 χρόνια και εδέβασεν πολλά φουρτούνας και εμπόδια, αμά, άμον ντ' ελέπω την νεολαίαν έμουν, να καλατσέβ' να τρα'ωδεί και να χορεύ', χαίρουμε και λέω εγώ εμέν, το μελωδικόν, το ποιητικόν, το μελιστάλακτον γλυκύν, το Ποντιακόν η γλώσσα, 'κι εχ' την δύναμην ν'αποθάν', αν βέβαια η νεολαία μουν αγαπά το και καλατσέβ' ατό, κι' άμον ντο εγροικώ ασ' εμέτερον την Νεολαίαν τη Βοστώνης, αγαπούν' ατό πολλά,
κατ' εχ' το μα'εμένον!!!!!!
Το καλοκαίρ' ντο εδέβε μας το 2009, επήγα σο Ποντιακόν Βιβλιοπωλείον τη Κυριακίδη σην Θεσσαλονίκην, και ντο 'κι εύρα, ασ' όλια τα Ποντιακά τα βιβλία, σωστός Ποντιακός παράδεισος, εύρα και το ΡΟΔΑΦΝΟΝ, τη Διαμαντίδη, μανίτσα μ'!!!! ντο να λέγω σας!!!!! εδέβασα το μίαν, εδέβασα ατό δεύτερον, εχόρτασα κατενόν Ποντιακόν καλατζήν και γράψιμον. Να λελεύω αοίκον γράψιμον.
Εθαρείς και σον πόντον εγεννέθεν,ετράνυνεν και εσπούδασεν ση Τραπεζούντας το Φροντηστήριον, καθαρόν νερόν, κρύον κροσταλίδ' ασά πεγαδομάτια του ευλοΐμένου πόντου, ντο πίντς, πίντς και 'κι χορτά'εις!!!
Ν' αγιάζ' ο κύρ'ς ατ' ντ' εκάτσεν και έγραψεν, αοίκον έμορφον σκουτουλιχτέρ' "ΡΟΔΑΦΝΟΝ".
Ποδεδίζω σας, κανείς εσούν εξέρετεν, αν έγραψεν? γιαμ θα γράφτ'άλλα, αμόν το "ΡΟΔΑΦΝΟΝ" πετέστ' 'μεν, θέλω να δεβάζατε όλια απ' έναν - έναν.
Ρίζα μ' Κωστίκα γράψον - γράψον - γράψον!!!!! Ξάι μη κολολεύ'ς......
Πορτολόης ο Σταματέτες,Σταυρίτες 2009
==1ον ΑΝΟΙΚΤΟΝ ΚΑΛΑΤΣΗΝ ΓΙΑ ΤΟ ΠΟΝΤΙΑΚΟΝ ΤΟ ΓΡΑΨΙΜΟΝ==
'''ΓΡΑΨΤΕΝ ΟΥΛ’ ΤΑ ΝΟΥΝΙΣΜΑΤΑ ΣΟΥΝ ΑΔΑΚΑ ΓΙΑ ΤΟ ΠΟΝΤΙΑΚΟΝ ΤΟ ΓΡΑΨΙΜΟΝ ΚΑΙ ΑΠΟΦΑΣΙΣΤΕΝ. Η ΟΡΘΟΓΡΑΦΙΑ ΕΝ ΠΟΛΛΑ ΣΗΜΑΝΤΙΚΟΝ. ‘ΚΙ ΠΡΕΠ’ ΝΑ ΧΑΤΑΙ Η ΓΛΩΣΣΑ ΤΗ ΠΟΝΤΟΝΟΣ.'''
1. Να γράφτουμε ούλ’ τα ποντιακά τα συναιρεμέν’ τα φωνήεντα και τα δασέα σύμφωνα '''<u>α</u>''' < εα, ια και '''<u>ο</u>''' < εο, ιο '''<u>σ</u>''', '''<u>ζ</u>''', '''<u>χ</u>''', '''<u>ψ</u>''', '''<u>ξ</u>''', '''<u>τσ</u>''', '''<u>τζ</u>''' ''';'''
α) '''με υπογράμμισην''': τα γεμί<u>σ</u>α, τα νύ<u>χα</u>, τα μα<u>χ</u>αίρ<u>α</u>, τα <u>χ</u>έρ<u>α</u>, έ<u>χ</u>’, τη καλα<u>τζ</u>ής, σύρ’ <u>α</u>τον; (εύκολον)
β) '''με απόστροφον από πάν’''': γεμίσα, τα νύχα, τα μαχαίρα, τα χέρα, έχ’, τη καλατζής , σύρ’ ατον ; (τσιπ δύσκολον)
γ) ..............................................................................................................................
δ) ..............................................................................................................................
2. Να χωρίουμε τα λέξεις για να δ<u>α</u>βάζεται καλλίον η γλώσσαν εμουν;
α) Ατού σα μέσα σ’ τα λεγνά τα <u>χ</u>έρ<u>α</u> μ’ θα τυλίζω, Το κάστανον εξέβεν ας σο τζέπλιν αθε, Το χωρίον εμουν, σ’ οσπίτ’ν εσουν.
β) ..............................................................................................................................
γ) ..............................................................................................................................
3. Να γράφτουμε ούλ’ την απόστροφον ( ’ ) σα μέρ<u>α</u> που χάν’ται τα φωνήεντα για να γνωρίουμε τα ελλενικά τα λέξεις και να δ<u>α</u>βάζομεν καλλίον το ποντιακόν την γλώσσαν.
α) Ευχαριστεμέν’ ν’ αποθαν’νε, Καρίπ’ και ψωμίν να μην τρώγ’νε, Επέγ’ναν, Καλαντάρ’ς, Τη Θερ’νού, το ζωνάρ’, οι φίλ’ .
β) .............................................................................................................................
4. Να χωρίουμε το '''κι, κ’''' (= και) από το '''‘κι, ‘κ’''' (= δεν);
α) Δύο ακονισμένα μα<u>χ</u>αίρ<u>α</u> σ’ έναν θεκάρ’ ‘κι γίνταν, Θωρέαν έ<u>χ</u>’ ευλοϊάν ‘κ’ έ<u>χ</u>’ , Ας σο καρδόπο μ’ έβγαισες κι επήες σο καλόν.
β) ............................................................................................................................. --Κώτσον 18:43, 26 Σταυρί 2009 (UTC)
==The LocalisationUpdate extension has gone live==
The LocalisationUpdate extension is now enabled for all Wikimedia projects. From now on new localisations that become available in SVN will become available to your project within 24 hours. Your localisations get into SVN from [http://translatewiki.net translatewiki.net] typically within a day and at worst in two days. This is a huge improvement from the old practice where the localisations became available with new software. This could take weeks, even months.
The localisations done by our community at translatewiki.net are committed to SVN typically every day. When the system messages in English are the same as the local messages, they will now be inserted in a file and are available for use in all our projects in a timely manner
===What this means for you===
Local messages have an impact on the performance of our system. It is best when messages are as much as possible part of the system messages. In order to remove unnecessary duplication, all the messages that have a local localisation and are '''exactly''' the same as the system message will be removed. What we ask you to do is to compare and proof read the messages in translatewiki.net and the local messages. You can then either remove local messages when the translatewiki.net message is to be preferred or, you can update the message at translatewiki.net.
Messages that are specific to your project will have to stay as they are. You do want to check if the format and the variables of the message are still the same.
===Why localise at translatewiki.net===
When you localise at translatewiki.net, your messages will be used in all Wikimedia projects and eventually in all MediaWiki based projects. This is how we provide the standard support for your language. When messages change, at translatewiki.net you will be prompted to revisit your translations. Localising is more efficient because we have innovated the process to make you more efficient; there is text explaining about messages and we have applied AJAX technology to reduce the number of clicks you have to make.
==Translatewiki.net update==
*Currently 44.60% of the MediaWiki messages and 0.70% of the messages of the extensions used by the Wikimedia Foundation projects have been localised. Please help us help your language by localising and proof reading at [[betawiki:Special:LanguageStats/{{CONTENTLANGUAGE}}|translatewiki.net]]. This is the [http://translatewiki.net/w/i.php?title=Special:RecentChanges&translations=only&trailer=/{{CONTENTLANGUAGE}} recent localisation activity] for your language. Thanks, [[Χρήστες:GerardM|GerardM]] 14:04, 30 Σταυρί 2009 (UTC)
*Currently 44.90% of the MediaWiki messages and 0.71% of the messages of the extensions used by the Wikimedia Foundation projects have been localised. Please help us help your language by localising and proof reading at [[betawiki:Special:LanguageStats/{{CONTENTLANGUAGE}}|translatewiki.net]]. This is the [http://translatewiki.net/w/i.php?title=Special:RecentChanges&translations=only&trailer=/{{CONTENTLANGUAGE}} recent localisation activity] for your language. Thanks, [[Χρήστες:GerardM|GerardM]] 13:25, 8 Χριστουγενναρί 2009 (UTC)
*Currently 44.69% of the MediaWiki messages and 0.70% of the messages of the extensions used by the Wikimedia Foundation projects have been localised. Please help us help your language by localising and proof reading at [[betawiki:Special:LanguageStats/{{CONTENTLANGUAGE}}|translatewiki.net]]. This is the [http://translatewiki.net/w/i.php?title=Special:RecentChanges&translations=only&trailer=/{{CONTENTLANGUAGE}} recent localisation activity] for your language. Thanks, [[Χρήστες:GerardM|GerardM]] 15:19, 18 Καλανταρί 2010 (UTC)
==How can we improve the usability for your language==
We expect that with the implementation of LocalisationUpdate the usability of MediaWiki for your language will improve. We are now ready to look at other aspects of usability for your language as well. There are two questions we would like you to answer:
Are there issues with the new functionality of the Usability Initiative
Does MediaWiki support your language properly
The best way to answer the first question is to visit the translatewiki.net. Change the language to your language, select the “vector” skin and add the advanced tool bar in in the preferences and check out the new functionality. And make some changes in your user page. When there is a need to improve on the localisation, please make the [http://translatewiki.net/w/i.php?title=Special:Translate&group=ext-ui-0-all necessary changes]s . It should update your localisation straight away.
We would like you to report each issue individually at http://meta.wikimedia.org/wiki/Usability_issues.
When there are problems with the support of MediaWiki for your language, we really want to know about this. It is best to report each issue separately. In this way there will be no large mass of issues to resolve but we can address each issue on its own. Consider issues with the display of characters, the presentation of your script, the position of the side bar, the combination of text with other languages, scripts. It is best to try this in an environment like the prototype wiki as it provides you with a clean, basic and up to date environment. The prototype wiki is available for five languages but you can select any of them, change the preferences to your language and test out MediaWiki for your language.
We would like you to report each issue individually at http://meta.wikimedia.org/wiki/Language_issues. The issues you raise will all be assessed. It is important to keep each issue separate, because this will make it easier to understand the issues and find solutions.
PS This text has been approved by Naoko, Brion and Siebrand. Thanks, [[Χρήστες:GerardM|GerardM]] 14:04, 30 Σταυρί 2009 (UTC)
== Αναδιαμόρφωση ==
Μετά από πολύ σκέψη αποφάσισα πως πρέπει να προχωρήσουμε σε αναδιαμόρφωση στην Βικιπαίδεια. Ύστερα από το απαραίτητο καλάτσεμαν αποφάσισα τα εξής:
* Έπειτα από συζήτηση με τον Στράβων και την μεγάλη του προθυμία να συνεισφέρει για να του δοθεί όλη η διευκόλυνση θα γίνει νοματέας.
* Όλοι οι υπόλοιποι νοματέοι θα πρέπει εντός εύλογου χρονικού διαστήματος να δηλώσουν ότι εξακολουθούν να θέλουν να ασχοληθούν με την εγκυκλοπαίδεια και να το πράξουν όσο το δυνατόν γρηγορότερα.
* Εγώ πήρα απόφαση να εκτελέσω τα δικαιώματα μου μέχρι να βρεθεί κάποιος άλλος ενδιαφερόμενος για να γίνει γραφειοκράτης. Τότε θα παραιτηθώ και θα μείνω μόνο επιβλέπων.
* Οι αφαιρέσεις θα εκτελεστούν όλες μαζί όταν βρεθεί και ο νέος γραφειοκράτης. Ο γραφειοκράτης πέρα από τις απαραίτητες γλωσσικές δεξιότητες θα πρέπει να έχει δείξει το έργο του για αρκετό καιρό στο εγχείρημα και να έχει και τις απαραίτητες γνώσεις κώδικα.
* Όποιος ενδιαφέρεται πέρα από τη θέση του γραφειοκράτη μπορεί να δηλώσει και για νοματέας.
Ευχαριστώ πολύ, --[[Χρήστες:ZaDiak|ZaDiak]] 18:31, 18 Τρυγομηνά 2009 (UTC)
:Ευχαριστώ σε ZaDiak, όταν θέλτς στείλων ένα χαπέρ ση λογαρία 'μ, με τον κατάλογον π' είπες με.
--[[Χρήστες:Stravon|Stravon]] 18:39, 18 Τρυγομηνά 2009 (UTC)
::Συμφωνώ βεβαίως με την παραχωρήρηση δικαιωμάτων διαχειριστή στον Stravon. Αν και είναι σχετικά νεός χρήστης, υπήρξε από τους πιο ενεργούς το τελευταίο δίμηνο, και δείχνει να κατέχει καλά τη γλώσσα, και ότι είναι πρόθυμος να συνεισφέρει γενικότερα. Όσο για την αναδιαμόρφωση που προτείνεται επίσης συμφωνώ ότι είναι αναπόφευκτη. Σε κάθε περίπτωση δηλώνω ότι ενδιαφέρομαι να ανανεωθούν τα προνόμια μου ως διαχειριστή: κατ'ουσίαν εγώ ήμουν αυτός που διέγραψε άμεσα όλες τις βανδαλιστικές σελίδες που δημιουργήθηκαν κατά το τελευταίο τρίμηνο και θα ήθελα να συνεχίσω να προστατεύω το εγχείρημα κατ' αυτόν τον τρόπο, αλλά και να μπορώ να επεμβαίνω εποικοδομητικά στην κύρια σελίδα όποτε χρειαστεί, όπως έκανα πρόσφατα. Προβληματίζομαι όμως από το γεγονός ότι κανείς δεν έχει δηλώσει ακόμα ενδιαφέρον για τη θέση του γραφειοκράτη. Ίσως πρέπει να κανονίσουμε, όλοι οι ενεργοί χρήστες, μία συνάντηση στο IRC, για να το συζητήσουμε πιο ενδελεχώς αυτό το ζήτημα. --[[Χρήστες:Omnipaedista|Omnipaedista]] 07:13, 21 Τρυγομηνά 2009 (UTC)
::: Τι εννοείς βανδαλιστικές σελίδες; Μας σαμποτάρουν;--[[Χρήστες:Stravon|Stravon]] 10:10, 21 Τρυγομηνά 2009 (UTC)
Όχι δεν μας σαμποτάρουν ο βανδαλισμός είναι σύνηθες φαινόμενο σε όλες τις Βικιπαίδειες δυστυχώς. Διαστρέβλωση περιεχομένου είναι συνήθως. Σε εμας γίνοταν συνήθως σε άρθρα περί ΠΓΔΜ. Όσο για μια συνάντηση στο τσατ είμαι υπέρ.--[[Χρήστες:ZaDiak|ZaDiak]] 13:06, 22 Τρυγομηνά 2009 (UTC)
== Γιορτή ==
Παιδιά σήμερα περάσαμε τα 300 άρθρα και τις 1000 σελίδες! Πάμε γερά ώστε να πιάσουμε τα 500 πριν τις γιορτές <tt>:)</tt>--[[Χρήστες:ZaDiak|ZaDiak]] 23:41, 9 Χριστουγενναρί 2009 (UTC)
==Προτάσεις==
Αγαπητοί φίλοι και συμπατριώτες,
η καλή σας προσπάθεια για να έχει θετικά αποτελέσματα, θα πρέπει να υποστηρίζεται από επαρκείς φιλολόγους ποντίους ή και άλλους συμπατριώτες μας που γνωρίζουν καλή σύνταξη και γραμματική της ποντιακής, οι οποίοι θα πρέπει να προσκληθούν για να υποστηρίξουν την αξιαίπενη προσπάθειά σας (πχ. υπάρχει ο '''Πανελλήνιος Σύλλογος Ποντίων Εκπαιδευτικών''', επίσης αξιόλογοι επιστήμονες στην '''Επιτροπή Ποντιακών Μελετών''' κλπ με πολούς επαίοντες που θα μπορούσαν να συμβάλλουν στην διόρθωση της Ηλεκτρονικής Ποντιακής Εγκυκλοπαίδειας).
Τα λάθη Ως ΠΡΟς ΤΗΝ ΟΡΘΟΓΡΑΦΊΑ ΚΑΙ ΤΗΝ ΣΎΝΤΑΞΗ πάντως, οφείλω να ομολογήσω οτι είναι σοβαρά και θα πρέπει να τα προσέξετε, για να συντείνετε και εσείς σε μια καλύτερη βάση δεδομένων μιας γλώσσας που χάνετα (ειδικά ως προς την προφορά κατά την ανάγνωση. πχ ζζ κλπ).
Η Γραμματική Τοπχαρά (πλην της ιστορικής αξίας της πάντως), δεν νομίζω οτι μπορεί να συμβάλει ως προς την νοηματική και ετυμολογική κατανόηση της διαλέκτου μας.
Καλή δύναμη και καλή προσπάθεια!
Η κριτική όταν είναι γόνιμη και καλόπιστη πρέπει να εισακούεται.
Με πολύ εκτίμηση
Θεόφιλος Καστανίδης απο τον Σύλλογο Ποντίων "ΑΡΓΟΝΑΥΤΑΙ-ΚΟΜΝΗΝΟΙ"
== Λατινική απόδοση ==
Συγχαρητήρια για τις ιδέες που προωθεί η σελίδα. Πρόταση παράλληλα να επεξεργαστούμε και σύστημα λατινικής απόδοση της ποντιακής φωνητικής και σύνταξης. Πριν βιαστεί κάποιος να μιλήσει για "παγκοσμιοποίηση" και απώλεια ταυτότητας, όσοι από εμάς μιλούνε με κατοίκους του σημερινού Πόντου, καταλαβαίνουν αυτονόητα το γιατί προέχει '''και αυτό''' να γίνει. --[[Ειδικόν:Contributions/79.131.244.75|79.131.244.75]] 19:08, 21 Χριστουγενναρί 2009 (UTC)
== ΕΥΧΑΡΙΣΤΗΡΙΟ...... ==
ΜΕ ΙΔΙΑΙΤΕΡΗ ΧΑΡΑ ΕΙΔΑ ΟΤΙ ΟΙ ΑΝΑΚΟΙΝΩΣΕΙΣ ΤΩΝ ΑΝΑΓΝΩΣΤΩΝ ΜΕΛΕΤΩΝΤΑΙ ΚΑΙ ΛΑΜΒΑΝΟΝΤΑΙ ΥΠ΄ΟΨΙΝ....
ΠΡΩΤΑ ΠΡΕΠΕΙ ΝΑ ΑΝΑΦΕΡΩ ΤΗΝ ΙΚΑΝΟΠΟΙΗΣΗ ΜΟΥ ΠΟΥ ΑΝΑΚΑΛΥΨΑΤΕ ΤΟΝ ΔΙΑΜΑΝΤΙΔΗ....ΕΙΝΑΙ ΠΡΑΓΜΑΤΙ ΠΟΛΥ ΓΛΥΚΕΙΑ
Η ΠΟΝΤΙΑΚΗ ΤΟΥ ΓΛΩΣΣΑ ΚΑΙ ΑΥΤΟ ΕΠΕΙΔΗ ΕΙΝΑΙ ΓΡΑΜΜΕΝΗ ΣΩΣΤΑ ΜΕ ΤΙΣ ΣΤΙΞΕΙΣ ΤΗΣ ΚΑΙ ΤΟ ΣΩΣΤΟ ΣΥΝΤΑΚΤΙΚΟ ΤΗΣ....
Ο ΑΝΘΡΩΠΟΣ ΒΕΒΑΙΑ ΕΙΝΑΙ ΛΟΓΟΤΕΧΝΗΣ.....
ΠΑΝΤΩΣ ΔΙΑΒΑΖΟΝΤΑΣ ΤΟΝ ....ΜΑΘΑΙΝΕΙΣ....
ΝΑ ΕΙΣΤΕ ΟΛΟΙ ΚΑΛΑ
Ο ΖΑΧΟΝ
== Υγειαν και ευλογιαν ==
Γεια και χαρα σε ολον τον ποντιακο ελληνισμο. Θα θελα να πω οτι ειμαι ιδιαιτερα χαρουμενος που εγινα μελος της Ποντιακης Βικιπαιδειας και απο δω και περα θα μπαινω τακτικα για να βλεπω την προοδο.
Θα ηθελα να μου πει καποιος διαχειριστης πως θα μπορουσα να βοηθησω σε κατι ευκολο και οχι πολυ χρονοβορο τουλαχιστον στην αρχη για να βαλω και εγω ενα λιθαρακι σε αυτο το εργο.
--[[Χρήστες:Nakos2208|Nakos2208]] 21:26, 6 Απρίλ 2010 (UTC)
:Καλως ἠρθες! Η συγγραφή μικρών άρθρων μιας ή δύο προτάσεων θα ήταν ένας καλός τρόπος να περάσει κανείς στα βαθιά :) Τσέκαρε [http://pnt.wikipedia.org/wiki/%CE%92%CE%B9%CE%BA%CE%B9%CF%80%CE%B1%CE%AF%CE%B4%CE%B5%CE%B9%CE%B1/%CE%92%CE%BF%CE%AE%CE%B8%CE%B5%CE%B9%CE%B1 αυτή τη σελίδα]. Από εκεί και περά πιο ελαφρές συνεισφορές είναι η προσθήκη κατηγοριών ή η επέκταση/διόρθωση ήδη υπαρχόντων άρθρων. --[[Χρήστες:Omnipaedista|Omnipaedista]] 16:59, 26 Απρίλ 2010 (UTC)
== Bot flag for [[User:WikitanvirBot|WikitanvirBot]] ==
* Operator : [[User:Wikitanvir|Wikitanvir]]
* Automatic or Manually Assisted : Automatic
* Programming Language(s) : Python (pywikipedia)
* Function Summary : Interwiki
* Edit period(s) : Daily
* Edit rate requested : 2/3 edits per minute at most
* Already has a bot flag (Y/N) : Yes, [http://toolserver.org/~vvv/sulutil.php?user=WikitanvirBot see here]
* Function Details : Bot will patrol recent changes and new pages, and add, remove, or modify interwiki links in autonomous mode.
Currently doing some test edits. Notify me if there is a problem. — [[User:Wikitanvir|Tanvir]] • 05:36, 3 Τρυγομηνά 2010 (UTC)
== 2010 Fundraising Is Almost Here ==
[[File:Wikimedia_Foundation_RGB_logo_with_text.svg|80px|left]] Hello Wikipedians, I am Theo and I am working for the Wikimedia Foundation during the 2010 Fundraiser. My job is to be the liaison between your community and the Foundation. This year's fundraiser is intended to be a collaborative and global effort; we recognize that banner messages which may perform well in the United States don't necessarily translate well, or appeal to international audiences. <Br>
I'm contacting you as I am currently looking for translators who are willing to contribute to this project by helping translate and localize messages into different languages and suggesting messages that would appeal to your readers on the Fundraising Meta Page. We've started the setup on [http://meta.wikimedia.org/wiki/Fundraising_2010 meta] for both [http://meta.wikimedia.org/wiki/Fundraising_2010/Messages banner submission], [http://meta.wikimedia.org/wiki/Fundraising_2010/Banner_testing statistical analysis], and [http://meta.wikimedia.org/wiki/Fundraising_2010/Committee grouping volunteers together].<br>Use the talk pages on meta, talk to your local communities, talk to others, talk to us, and add your feedback to the proposed messages as well! I look forward to working with you during this year's fundraiser. If someone could translate this message I would really appreciate it so that everyone is able to understand our goals and contribute to this year's campaign.<br> [[user:Theo (WMF)|Theo (WMF)]] 20:48, 20 Τρυγομηνά 2010 (UTC)
<!-- EdwardsBot 0020 -->
== Astonishing ==
Bonjour,
Why is this Wikipedia silent, almost dead ?
[[Χρήστες:Budelberger|Budelberger]] 21:33, 14 Κούντουρονος 2011 (UTC) ([[File:Flag of France.svg|15px]]).
:It would be an exaggeration to call it silent or dead. Undoubtedly, the activity has been low during the last months. This is because most of the original contributors have retired from editing this wiki (in fact I am the only one left). There are new contributors (alas, anonymous) though who carry on. --[[Χρήστες:Omnipaedista|Omnipaedista]] 15:43, 17 Κούντουρονος 2011 (UTC)
== Bug(s) ==
Bonjour,
* <nowiki>{{#time: F| January }}</nowiki>: {{#time: F| January }}
:* <nowiki>{{#time: xg| January }}</nowiki>: {{#time: xg| January }}
* <nowiki>{{#time: F| February }}</nowiki>: {{#time: F| February }}
:* <nowiki>{{#time: xg| February }}</nowiki>: {{#time: xg| February }}
* <nowiki>{{#time: F| March }}</nowiki>: {{#time: F| March }}
:* <nowiki>{{#time: xg| March }}</nowiki>: {{#time: xg| March }} — Μαρτ or [[22 Μαρτί|Μαρτί]] ?
* <nowiki>{{#time: F| April }}</nowiki>: {{#time: F| April }}
:* <nowiki>{{#time: xg| April }}</nowiki>: {{#time: xg| April }} — Απρίλ or [[Απρίλτς|Απρίλτ]] ?
* <nowiki>{{#time: F| May }}</nowiki>: {{#time: F| May }}
:* <nowiki>{{#time: xg| May }}</nowiki>: {{#time: xg| May }}
* <nowiki>{{#time: F| June }}</nowiki>: {{#time: F| June }}
:* <nowiki>{{#time: xg| June }}</nowiki>: {{#time: xg| June }}
* <nowiki>{{#time: F| July }}</nowiki>: {{#time: F| July }}
:* <nowiki>{{#time: xg| July }}</nowiki>: {{#time: xg| July }} — [[18 Χορτοθερί|Χορτοθερί]] or [[Χορτοθέρτς|Χορτοθέρτ]] ?
* <nowiki>{{#time: F| August }}</nowiki>: {{#time: F| August }} — Latin « A » !
:* <nowiki>{{#time: xg| August }}</nowiki>: {{#time: xg| August }} — Latin « A » !
* <nowiki>{{#time: F| September }}</nowiki>: {{#time: F| September }}
:* <nowiki>{{#time: xg| September }}</nowiki>: {{#time: xg| September }}
* <nowiki>{{#time: F| October }}</nowiki>: {{#time: F| October }}
:* <nowiki>{{#time: xg| October }}</nowiki>: {{#time: xg| October }}
* <nowiki>{{#time: F| November }}</nowiki>: {{#time: F| November }}
:* <nowiki>{{#time: xg| November }}</nowiki>: {{#time: xg| November }}
* <nowiki>{{#time: F| December }}</nowiki>: {{#time: F| December }}
:* <nowiki>{{#time: xg| December }}</nowiki>: {{#time: xg| December }}
[[Χρήστες:Budelberger|Budelberger]] 17:56, 25 Κούντουρονος 2011 (UTC) ([[Αρχείον:Flag of France.svg|15px]]).
:Genitives are indeed Μαρτί, Απρίλτ, Χορτοθερί, respectively, but I think that variations exist and should be considered valid. Obviously, Latin A's have to be replaced by Greek ones. Thanks for the notification! --[[Χρήστες:Omnipaedista|Omnipaedista]] 06:13, 1 Μαρτ 2011 (UTC)
== Multilingual Challenge ==
{| class="center" style="border:2px double; color:#009900; background-color:#CCFFCC;"
|-
| style="color:red;" | Please help: replace this red text with a translation of the English message below. Thank you!
|-
| style="color:black;" | '''Announcing [[:en:Wikipedia:GLAM/Derby/Multilingual Challenge|the Derby Multilingual Challenge]]'''<br />
This is the first multilingual Wikipedia collaboration. All Wikipedians can take part, in any Wikipedia language. The challenge runs from 1 May until 3 September 2011.<br />
'''[[:en:Wikipedia:GLAM/Derby/Multilingual Challenge/Participants|Sign up now!]]'''<br />
<small>" Wikipedia is particularly pleased to see that Derby Museums are encouraging the creation of articles in languages other than English." ([http://uk.wikimedia.org/wiki/Press_releases/First_GLAMWIKI_outside_Capital Jimmy Wales, 14 January 2011])</small>
|}
[[Χρήστες:Andrew Dalby|Andrew Dalby]] 13:39, 2 Καλομηνά 2011 (UTC)
== Γιαρίφ ==
Σκοπεύω να παραιτηθώ από γραφειοκράτης για αυτό και έκανα γραφειοκράτη τον μοναδικό ενεργό χρήστη του εγχειρήματος ύστερα και από συζήτηση μαζί του. <b>[[Χρήστες:ZaDiak|<font color="black">Ζάχον</font>]]</b><sup>[[User talk:ZaDiak|<font color="Crimson">Talk</font>]]</sup> 15:38, 18 Κερασινού 2011 (UTC)
== Call for image filter referendum ==
The Wikimedia Foundation, at the direction of the Board of Trustees, will be holding a vote to determine whether members of the community support the creation and usage of an opt-in personal image filter, which would allow readers to voluntarily screen particular types of images strictly for their own account.
Further details and educational materials will be available shortly. The referendum is scheduled for 12-27 August, 2011, and will be conducted on servers hosted by a neutral third party. Referendum details, officials, voting requirements, and supporting materials will be posted at [[Meta:Image filter referendum]] shortly.
Sorry for delivering you a message in English. Please help translate the pages on the referendum on Meta and join the [[mail:translators-l|translators mailing list]].
For the coordinating committee,<br />
[[m:User:Philippe (WMF)|Philippe (WMF)]]<br />
[[m:User:Cbrown1023|Cbrown1023]]<br/>
[[m:User:Risker|Risker]]</br>
[[m:User:Mardetanha|Mardetanha]]<br/>
[[m:User:PeterSymonds|PeterSymonds]]<br/>
[[m:User:Robertmharris|Robert Harris]]
<!-- EdwardsBot 0090 -->
== Bot flag request for [[User:HiW-Bot|HiW-Bot]] ==
* Operator : [[:de:Benutzer:Hedwig in Washington|Hedwig in Washington]]
* Automatic or Manually Assisted : automatic
* Programming Language(s) : Python (pywikipedia), daily update
* Function Summary : Interwiki, Internationalization by removing chaos in Babel-Category so it can be used properly and easy. Double redirects will be added shortly
* Already has a bot flag (Y/N) : Yes: 27 Wikis so far, others pending. [http://toolserver.org/~vvv/sulutil.php?user=HiW-Bot see here]
* Function Details : just using the standard interwiki.py; parameters: -auto -all - log -catr
I humbly request bot status on this wiki in order to update Interwiki, and improve Internationalization by removing chaos in Babel so it can be used properly and easy by everyone.
Thank you for consideration! --[[Χρήστες:Hedwig in Washington|Hedwig in Washington]] 03:50, 9 Σταυρί 2011 (UTC)
== Μωμόγεροι ==
Ξεκίνησα στο άρθρο [[:el:Μωμόγεροι (λαϊκό δρώμενο)|Μωμόγεροι]], μιας και είναι ποντιακό, εκτός από να το εμπλουτίσετε ίσως σας ενδιαφέρει να το βάλετε και στην ποντιακή βικιπαίδεια. Το βίντεο στο άρθρο είναι δικό μου. Χαιρετισμοί και καλή χρονιά! [[Χρήστες:Ggia|Ggia]] 09:21, 3 Καλανταρί 2012 (UTC)
== Announcing Wikipedia 1.19 beta ==
Wikimedia Foundation is getting ready to push out 1.19 to all the WMF-hosted wikis. As we finish wrapping up our code review, you can test the new version ''right now'' on [http://beta.wmflabs.org/ beta.wmflabs.org]. For more information, please read the [https://svn.wikimedia.org/viewvc/mediawiki/trunk/phase3/RELEASE-NOTES-1.19?view=markup release notes] or the [[mw:MediaWiki_1.19|start of the final announcement]].
The following are the areas that you will probably be most interested in:
* [https://bugzilla.wikimedia.org/show_bug.cgi?id=33711#c2 Faster loading of javascript files makes dependency tracking more important.]
* New common*.css files usable by skins instead of having to copy piles of generic styles from MonoBook or Vector's css.
* The default user signature now contains a talk link in addition to the user link.
* Searching blocked usernames in block log is now clearer.
* Better timezone recognition in user preferences.
* Improved diff readability for colorblind people.
* The interwiki links table can now be accessed also when the interwiki cache is used (used in the API and the Interwiki extension).
* More gender support (for instance in logs and user lists).
* Language converter improved, e.g. it now works depending on the page content language.
* Time and number-formatting magic words also now depend on the page content language.
* Bidirectional support further improved after 1.18.
Report any [http://labs.wikimedia.beta.wmflabs.org/wiki/Problem_reports problems] on the labs beta wiki and we'll work to address them before they software is released to the production wikis.
'''Note''' that this cluster does have SUL but it is not integrated with SUL in production, so you'll need to create another account. You should avoid using the same password as you use here. — [[m:Global message delivery|Global message delivery]] 16:29, 15 Καλανταρί 2012 (UTC)
<!-- EdwardsBot 0145 -->
==Language support group for Pontic==
The Wikimedia Foundation has brought together a new team of developers who are dedicated to language support. This team is to support all the languages and consequently it is not realistic to expect that the team members can provide proper support for your language. It is for this reason that we are looking for volunteers who will make up a [[:translatewiki:language support team|language support team]].
This language support team will be asked to provide us with information about their language. Such information may need to be provided either to us or on a website that we will indicate to you. Another activity will be to test software that will likely have an effect on the running of the MediaWiki software. We are looking for people who clearly identify their ability. Formal knowledge is definitely appreciated.
As much of the activity will be concentrated on [[:translatewiki:Main Page|translatewiki.net]], it will be a plus when team members know how to localise at translatewiki.net. <br>
Thanks, [[Χρήστες:Gmeijssen|Gmeijssen]] 19:39, 1 Κούντουρονος 2012 (UTC)
== MediaWiki 1.19 ==
(Apologies if this message isn't in your language.) The Wikimedia Foundation is planning to upgrade MediaWiki (the software powering this wiki) to its latest version this month. You can help to test it before it is enabled, to avoid disruption and breakage. More information is available [[:mw:MediaWiki 1.19/Deployment announcement|in the full announcement]]. Thank you for your understanding.
[[:m:user:guillom|Guillaume Paumier]], via the [[:m:Global message delivery|Global message delivery system]] <small>([[:m:Distribution list/Global message delivery|wrong page? You can fix it.]])</small>. 15:15, 12 Κούντουρονος 2012 (UTC)
<!-- EdwardsBot 0154 -->
== Update on IPv6 ==
[[File:Wikimedia_Foundation_RGB_logo_with_text.svg|80px|right]]
(Apologies if this message isn't in your language. Please consider translating it, as well as '''[[m:Special:MyLanguage/IPv6 initiative/2012 IPv6 Day announcement|the full version of this announcement on Meta]]''')
The Wikimedia Foundation is planning to do limited testing of IPv6 on June 2-3. If there are not too many problems, we may fully enable IPv6 on [http://www.worldipv6day.org/ World IPv6 day] (June 6), and keep it enabled.
What this means for your project:
*At least on June 2-3, 2012, you may see a small number of edits from IPv6 addresses, which are in the form "<code>2001:0db8:85a3:0000:0000:8a2e:0370:7334</code>". See e.g. [[w:en:IPv6 address]]. These addresses should behave like any other IP address: You can leave messages on their talk pages; you can track their contributions; you can block them. (See [[m:Special:MyLanguage/IPv6 initiative/2012 IPv6 Day announcement|the full version of this announcement]] for notes on range blocks.)
*In the mid term, some user scripts and tools will need to be adapted for IPv6.
*We suspect that IPv6 usage is going to be very low initially, meaning that abuse should be manageable, and we will assist in the monitoring of the situation.
Read [[m:Special:MyLanguage/IPv6 initiative/2012 IPv6 Day announcement|the full version of this announcement]] on how to test the behavior of IPv6 with various tools and how to leave bug reports, and to find a fuller analysis of the implications of the IPv6 migration.
--[[m:User:Eloquence|Erik Möller, VP of Engineering and Product Development, Wikimedia Foundation]] 01:18, 2 Κερασινού 2012 (UTC)
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Fix here]].)</small>
<!-- EdwardsBot 0201 -->
== 2011 Picture of the Year competition ==
<small>[[:commons:Commons:Picture of the Year/2011/Translations/mk|{{#language:mk}}]] • [[:commons:Commons:Picture of the Year/2011/Translations/no|{{#language:no}}]] • [[:commons:Commons:Picture of the Year/2011/Translations/pl|{{#language:pl}}]]</small>
Dear Wikimedians,
Wikimedia Commons is happy to announce that the ''2011 Picture of the Year competition'' is now open. We are interested in your opinion as to which images qualify to be the ''Picture of the Year 2011''. Any user registered at Commons or a Wikimedia wiki SUL-related to Commons [//toolserver.org/~pathoschild/accounteligibility/?user=&wiki=&event=24 with more than 75 edits before 1 April 2012 (UTC)] is welcome to vote and, of course everyone is welcome to view!
Detailed information about the contest can be found [[:commons:Commons:Picture of the Year/2011/Introduction|at the introductory page]].
About 600 of the best of Wikimedia Common's photos, animations, movies and graphics were chosen –by the international Wikimedia Commons community– out of 12 million files during ''2011'' and are now called ''Featured Pictures''.
From professional animal and plant shots to breathtaking panoramas and skylines, restorations of historically relevant images, images portraying the world's best architecture, maps, emblems, diagrams created with the most modern technology, and impressive human portraits, Commons ''Features Pictures'' of all flavors.
For your convenience, we have sorted the images [[:commons:Commons:Picture of the Year/2011/Galleries|into topic categories]].
We regret that you receive this message in English; we intended to use banners to notify you in your native language but there was both, human and technical resistance.
See you on Commons!
--[[:commons:Commons:Picture of the Year/2011/Committee|Picture of the Year 2011 Committee]] 18:35, 5 Κερασινού 2012 (UTC)
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Fix here]].)</small>
<!-- EdwardsBot 0205 -->
== Help decide about more than $10 million of Wikimedia donations in the coming year ==
[[File:Wikimedia_Foundation_RGB_logo_with_text.svg|80px|right]]
''(Apologies if this message isn't in your language. Please consider translating it)''
Hi,
As many of you are aware, the Wikimedia Board of Trustees recently initiated important changes in the way that money is being distributed within the Wikimedia movement. As part of this, a new community-led "[[m:Funds_Dissemination_Committee/Framework_for_the_Creation_and_Initial_Operation_of_the_FDC|Funds Dissemination Committee]]" (FDC) is currently being set up. Already in 2012-13, its recommendations will guide the decisions about the distribution of over 10 million US dollars among the Foundation, chapters and other [[m:Funds_Dissemination_Committee/Framework_for_the_Creation_and_Initial_Operation_of_the_FDC#Eligible_fund-seeking_entities|eligible entities]].
Now, seven capable, knowledgeable and trustworthy community members are sought to volunteer on the initial Funds Dissemination Committee. It is expected to take up its work in September. In addition, a community member is sought to be the [[m:Funds_Dissemination_Committee/Framework_for_the_Creation_and_Initial_Operation_of_the_FDC#FDC_Ombudsperson|Ombudsperson]] for the FDC process. If you are interested in joining the committee, read the [[m:Funds Dissemination Committee/Call for Volunteers|call for volunteers]]. Nominations are planned to close on August 15.
--[[m:User:ASengupta_(WMF)|Anasuya Sengupta]], Director of Global Learning and Grantmaking, Wikimedia Foundation 20:20, 19 Χορτοθερί 2012 (UTC)
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Fix here]].)</small>
<!-- EdwardsBot 0223 -->
== More opportunities for you to access free research databases ==
The quest to get editors free access to the sources they need is gaining momentum.
* '''[[w:en:Wikipedia:Credo|Credo Reference]]''' provides full-text online versions of nearly 1200 published reference works from more than 70 publishers in every major subject, including general and subject dictionaries and encyclopedias. There are '''125''' full Credo 350 accounts available, with access even to 100 more references works than in Credo's original donation. All you need is a 1-year old account with 1000 edits. Sign up [[w:en:Wikipedia:Credo#Sign-up sheet|here]].
* '''[[w:en:Wikipedia:HighBeam|HighBeam Research]]''' has access to over 80 million articles from 6,500 publications including newspapers, magazines, academic journals, newswires, trade magazines and encyclopedias. Thousands of new articles are added daily, and archives date back over 25 years covering a wide range of subjects and industries. There are '''250''' full access 1-year accounts available. All you need is a 1-year old account with 1000 edits. Sign up [[w:en:Wikipedia:HighBeam/Applications|here]].
* '''[[w:en:Wikipedia:Questia|Questia]]''' is an online research library for books and journal articles focusing on the humanities and social sciences. Questia has curated titles from over 300 trusted publishers including 77,000 full-text books and 4 million journal, magazine, and newspaper articles, as well as encyclopedia entries. There will soon be '''1000''' full access 1-year accounts available. All you need is a 1-year old account with 1000 edits. Sign up [[w:en:Wikipedia:Questia#Apply here: Round 1|here]].
You might also be interested in the idea to create a central '''Wikipedia Library''' where approved editors would have access to ''all'' participating resource donors. Add your feedback to the [[m:Wikimedia Fellowships/Project Ideas/The Wikipedia Library|Community Fellowship proposal]]. Apologies for the English message ([http://translate.google.com/ translate here]). Go sign up :) --[[w:en:User:Ocaasi|Ocaasi]] ([[w:en:User talk:Ocaasi|talk]]) 02:23, 16 Aλωναρί 2012 (UTC)
<!-- EdwardsBot 0232 -->
== Request for Comment: Legal Fees Assistance Program ==
[[File:Wikimedia_Foundation_RGB_logo_with_text.svg|80px|right]]
''I apologize for addressing you in English. I would be grateful if you could translate this message into your language.''
The Wikimedia Foundation is conducting a [[:m:Request_for_comment/Legal_Fees_Assistance_Program|request for comment]] on a [[:m:Legal_and_Community_Advocacy/Legal_Fees_Assistance_Program|proposed program]] that could provide legal assistance to users in specific support roles who are named in a legal complaint as a defendant because of those roles. We wanted to be sure that your community was aware of this discussion and would have a chance to participate in [[:m:Request_for_comment/Legal_Fees_Assistance_Program|that discussion]].
If this page is not the best place to publicize this request for comment, please help spread the word to those who may be interested in participating. (If you'd like to help translating the "request for comment", program policy or other pages into your language and don't know how the translation system works, please come by my user talk page at [[:m:User talk:Mdennis (WMF)]]. I'll be happy to assist or to connect you with a volunteer who can assist.)
Thank you! --[[:m:User:Mdennis (WMF)|Mdennis (WMF)]]02:09, 6 Σταυρί 2012 (UTC)
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Fix here]].)</small>
<!-- EdwardsBot 0245 -->
== Wikidata is getting close to a first roll-out ==
[[File:Wikimedia_Foundation_RGB_logo_with_text.svg|80px|right]]
(Apologies if this message isn't in your language.)
As some of you might already have heard Wikimedia Deutschland is working on a new Wikimedia project. It is called [[m:Wikidata]]. The goal of Wikidata is to become a central data repository for the Wikipedias, its sister projects and the world. In the future it will hold data like the number of inhabitants of a country, the date of birth of a famous person or the length of a river. These can then be used in all Wikimedia projects and outside of them.
The project is divided into three phases and "we are getting close to roll-out the first phase". The phases are:
# language links in the Wikipedias (making it possible to store the links between the language editions of an article just once in Wikidata instead of in each linked article)
# infoboxes (making it possible to store the data that is currently in infoboxes in one central place and share the data)
# lists (making it possible to create lists and similar things based on queries to Wikidata so they update automatically when new data is added or modified)
It'd be great if you could join us, test the [http://wikidata-test.wikimedia.de demo version], provide feedback and take part in the development of Wikidata. You can find all the relevant information including an [[m:Wikidata/FAQ|FAQ]] and sign-up links for our on-wiki newsletter on [[m:Wikidata|the Wikidata page on Meta]].
For further discussions please use [[m:Talk:Wikidata|this talk page]] (if you are uncomfortable writing in English you can also write in your native language there) or point [[m:User_talk:Lydia Pintscher (WMDE)|me]] to the place where your discussion is happening so I can answer there.
--[[m:User:Lydia Pintscher (WMDE)|Lydia Pintscher]] 13:34, 10 Σταυρί 2012 (UTC)
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Fix here]].)</small>
<!-- EdwardsBot 0248 -->
== Upcoming software changes - please report any problems ==
[[File:Wikimedia_Foundation_RGB_logo_with_text.svg|80px|right]]
<div dir=ltr>
''(Apologies if this message isn't in your language. Please consider translating it)''
All Wikimedia wikis - including this one - will soon be upgraded with new and possibly disruptive code. This process starts today and finishes on October 24 (see the [[mw:MediaWiki_1.21/Roadmap|upgrade schedule]] & [[mw:MediaWiki 1.21/wmf2|code details]]).
Please watch for problems with:
* revision diffs
* templates
* CSS and JavaScript pages (like user scripts)
* bots
* PDF export
* images, video, and sound, especially scaling sizes
* the CologneBlue skin
If you notice any problems, please [[mw:How to report a bug|report problems]] at [[mw:Bugzilla|our defect tracker site]]. You can test for possible problems at [https://test2.wikipedia.org test2.wikipedia.org] and [https://mediawiki.org/ mediawiki.org], which have already been updated.
Thanks! With your help we can find problems fast and get them fixed faster.
[[mw:User:Sharihareswara (WMF)|Sumana Harihareswara, Wikimedia Foundation Engineering Community Manager]] ([[mw:User talk:Sharihareswara (WMF)|talk]]) 03:09, 16 Τρυγομηνά 2012 (UTC)
P.S.: For the regular, smaller MediaWiki updates every two weeks, please [[mw:MediaWiki_1.21/Roadmap|watch this schedule]].
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Fix here]].)</small>
</div>
<!-- EdwardsBot 0278 -->
== Fundraising localization: volunteers from outside the USA needed ==
''Please translate for your local community''
Hello All,
The Wikimedia Foundation's Fundraising team have begun our 'User Experience' project, with the goal of understanding the donation experience in different countries outside the USA and enhancing the localization of our donation pages. I am searching for volunteers to spend 30 minutes on a Skype chat with me, reviewing their own country's donation pages. It will be done on a 'usability' format (I will ask you to read the text and go through the donation flow) and will be asking your feedback in the meanwhile.
The only pre-requisite is for the volunteer to actually live in the country and to have access to at least one donation method that we offer for that country (mainly credit/debit card, but also real-time banking like IDEAL, E-wallets, etc...) so we can do a live test and see if the donation goes through. ''All volunteers will be reimbursed of the donations that eventually succeed'' (and they will be low amounts, like 1-2 dollars)
By helping us you are actually helping thousands of people to support our mission of free knowledge across the world. Please sing up and help us with our 'User Experience' project! :)
If you are interested (or know of anyone who could be) please email ppena@wikimedia.org. All countries needed (excepting USA)!
Thanks!<br />
[[wmf:User:Ppena|Pats Pena]]<br />
Global Fundraising Operations Manager, Wikimedia Foundation
Sent using [[m:Global message delivery|Global message delivery]], 17:15, 17 Τρυγομηνά 2012 (UTC)
<!-- EdwardsBot 0280 -->
==Βικινέα==
Αν μπορεί κάποιος ας αλλάξει το σύνδεσμο προς τα Βικινέα στην πρώτη σελίδα για να κατευθύνει στο el.wikinews.org καθώς υπάρχει ελληνική έκδοση εδώ και αρκετό καιρό. [[Χρήστες:Glavkos|Glavkos]] ([[Καλάτσεμαν χρήστε:Glavkos|talk]]) 10:33, 22 Τρυγομηνά 2012 (UTC)
:Έγινε! --[[Χρήστες:Omnipaedista|Omnipaedista]] ([[Καλάτσεμαν χρήστε:Omnipaedista|talk]]) 02:06, 30 Τρυγομηνά 2012 (UTC)
[[de:Wikipedia:Fragen zur Wikipedia]]
== Be a Wikimedia fundraising "User Experience" volunteer! ==
Thank you to everyone who volunteered last year on the Wikimedia fundraising 'User Experience' project. We have talked to many different people in different countries and their feedback has helped us immensely in restructuring our pages. If you haven't heard of it yet, the 'User Experience' project has the goal of understanding the donation experience in different countries (outside the USA) and enhancing the localization of our donation pages.
I am (still) searching for volunteers to spend some time on a Skype chat with me, reviewing their own country's donation pages. It will be done on a 'usability' format (I will ask you to read the text and go through the donation flow) and will be asking your feedback in the meanwhile.
The only pre-requisite is for the volunteer to actually live in the country and to have access to at least one donation method that we offer for that country (mainly credit/debit card, but also real time banking like IDEAL, E-wallets, etc...) so we can do a live test and see if the donation goes through. **All volunteers will be reimbursed of the donations that eventually succeed (and they will be very low amounts, like 1-2 dollars)**
By helping us you are actually helping thousands of people to support our mission of free knowledge across the world. If you are interested (or know of anyone who could be) please email ppena@wikimedia.org. All countries needed (excepting USA)!!
Thanks!
[[m:User:Ppena (WMF)|Pats Pena]]<br/>
Global Fundraising Operations Manager, Wikimedia Foundation
: Sent using [[m:Global message delivery|Global message delivery]], 21:13, 8 Καλανταρί 2013 (UTC)
<!-- EdwardsBot 331 -->
== Wikimedia sites to move to primary data center in Ashburn, Virginia. Read-only mode expected. ==
(Apologies if this message isn't in your language.) Next week, the Wikimedia Foundation will transition its main technical operations to a new data center in Ashburn, Virginia, USA. This is intended to improve the technical performance and reliability of all Wikimedia sites, including this wiki. There will be some times when the site will be in read-only mode, and there may be full outages; the current target windows for the migration are January 22nd, 23rd and 24th, 2013, from 17:00 to 01:00 UTC (see [http://www.timeanddate.com/worldclock/fixedtime.html?msg=Wikimedia+data+center+migration&iso=20130122T17&ah=8 other timezones] on timeanddate.com). More information is available [https://blog.wikimedia.org/2013/01/19/wikimedia-sites-move-to-primary-data-center-in-ashburn-virginia/ in the full announcement].
If you would like to stay informed of future technical upgrades, consider [[m:Tech/Ambassadors|becoming a Tech ambassador]] and [https://lists.wikimedia.org/mailman/listinfo/wikitech-ambassadors joining the ambassadors mailing list]. You will be able to help your fellow Wikimedians have a voice in technical discussions and be notified of important decisions.
Thank you for your help and your understanding.
[[:m:user:guillom|Guillaume Paumier]], via the [[:m:Global message delivery|Global message delivery system]] <small>([[:m:Distribution list/Global message delivery|wrong page? You can fix it.]])</small>. 15:37, 19 Καλανταρί 2013 (UTC)
<!-- EdwardsBot 0338 -->
== Help turn ideas into grants in the new IdeaLab ==
<div class="mw-content-ltr">
[[File:Wikimedia_Foundation_RGB_logo_with_text.svg|80px|right]]
''I apologize if this message is not in your language. Please help translate it.''
*Do you have an idea for a project to improve this community or website?
*Do you think you could complete your idea if only you had some funding?
*Do you want to help other people turn their ideas into project plans or grant proposals?
Please join us in the [[m:Grants:IdeaLab|IdeaLab]], an incubator for project ideas and Individual Engagement Grant proposals.
The Wikimedia Foundation is seeking new ideas and proposals for Individual Engagement Grants. These grants fund individuals or small groups to complete projects that help improve this community. If interested, please submit a completed proposal by February 15, 2013. Please visit https://meta.wikimedia.org/wiki/Grants:IEG for more information.
Thanks! --[[m:User:Sbouterse (WMF)|Siko Bouterse, Head of Individual Engagement Grants, Wikimedia Foundation]] 20:47, 30 Καλανταρί 2013 (UTC)
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Correct it here]].)</small>
</div>
<!-- EdwardsBot 0344 -->
== Wikidata phase 1 (language links) coming to this Wikipedia ==
[[File:Wikidata-logo-en.svg|150px|right]]
Sorry for writing in English. I hope someone can translate this locally.
[[d:|Wikidata]] has been in development for a few months now. It is now time for the roll-out of the first part of it on your Wikipedia. Phase 1 is the support for the management of language links. It is already being used on the Hungarian, Hebrew, Italian and English Wikipedias. The next step is to enable the extension on all other Wikipedias. We have currently planned this for March 6.
=== What is Wikidata? ===
Wikidata is a central place to store data that you can usually find in infoboxes. Think of it as something like Wikimedia Commons but for data (like the number of inhabitants of a country or the length of a river) instead of multimedia. The first part of this project (centralizing language links) is being rolled out now. The more fancy things will follow later.
=== What is going to happen? ===
Language links in the sidebar are going to come from Wikidata in addition to the ones in the wiki text. To edit them, scroll to the bottom of the language links, and click edit. You no longer need to maintain these links by hand in the wiki text of the article.
=== Where can I find more information and ask questions? ===
Editors on en:wp have created a [[:en:Wikipedia:Wikidata|great page with all the necessary information for editors]] and there is also an [[meta:Wikidata/Deployment Questions|FAQ for this deployment]]. Please ask questions you might have on [[meta:Wikidata/Deployment Questions|the FAQ’s discussion page]].
=== I want to be kept up to date about Wikidata ===
To stay up-to-date on everything happening around Wikidata please [[meta:Global message delivery/Targets/Wikidata|subscribe]] to the newsletter that is delivered weekly to subscribed user’s talk pages. You can see previous editions [[meta:Wikidata/Newsletter/Archive|here]].
--[[m:User:Lydia Pintscher (WMDE)|Lydia Pintscher]] 16:15, 21 Κούντουρονος 2013 (UTC)
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Fix here]].)</small>
<!-- EdwardsBot 0366 -->
== Wikidata phase 1 (language links) live on this Wikipedia ==
[[File:Wikidata-logo-en.svg|150px|right]]
Sorry for writing in English. I hope someone can translate this locally. If you understand German better than English you can have a look at the announcement on [[:de:Wikipedia:Kurier]].
As I annonced 2 weeks ago, [[d:|Wikidata]] phase 1 (language links) has been deployed here today. Language links in the sidebar are coming from Wikidata in addition to the ones in the wiki text. To edit them, scroll to the bottom of the language links, and click edit. You no longer need to maintain these links by hand in the wiki text of the article.
'''Where can I find more information and ask questions?'''
Editors on en:wp have created a [[:en:Wikipedia:Wikidata|great page with all the necessary information for editors]] and there is also an [[meta:Wikidata/Deployment Questions|FAQ for this deployment]]. It'd be great if you could bring this to this wiki if that has not already happened. Please ask questions you might have on [[meta:Talk:Wikidata/Deployment Questions|the FAQ’s discussion page]].
'''I want to be kept up to date about Wikidata'''
To stay up-to-date on everything happening around Wikidata please [[meta:Global message delivery/Targets/Wikidata|subscribe]] to the newsletter that is delivered weekly to subscribed user’s talk pages.
--[[m:User:Lydia Pintscher (WMDE)|Lydia Pintscher]] 23:07, 6 Μαρτ 2013 (UTC)
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Fix here]].)</small>
<!-- EdwardsBot 0373 -->
== Convert complex templates to Lua to make them faster and more powerful ==
<small>(Please consider translating this message for the benefit of your fellow Wikimedians)</small>
Greetings. As you might have seen on the [https://blog.wikimedia.org/2013/03/11/lua-templates-faster-more-flexible-pages/ Wikimedia tech blog] or the [http://lists.wikimedia.org/pipermail/wikitech-ambassadors/2013-March/000171.html tech ambassadors list], a new functionality called "Lua" is being enabled on all Wikimedia sites today. [[mw:Lua|Lua]] is a scripting language that enables you to write faster and more powerful MediaWiki templates.
If you have questions about how to convert existing templates to Lua (or how to create new ones), we'll be holding two support sessions on IRC next week: [http://www.timeanddate.com/worldclock/fixedtime.html?hour=02&min=00&sec=0&day=20&month=03&year=2013 one on Wednesday] (for Oceania, Asia & America) and [http://www.timeanddate.com/worldclock/fixedtime.html?hour=18&min=00&sec=0&day=22&month=03&year=2013 one on Friday] (for Europe, Africa & America); see [[m:IRC office hours]] for the details. If you can't make it, you can also get help at [[mw:Talk:Lua scripting]].
If you'd like to learn about this kind of events earlier in advance, consider becoming a [[m:Tech/Ambassadors|Tech ambassador]] by subscribing to the [https://lists.wikimedia.org/mailman/listinfo/wikitech-ambassadors mailing list]. You will also be able to help your fellow Wikimedians have a voice in technical discussions and be notified of important decisions.
[[:m:user:guillom|Guillaume Paumier]], via the [[:m:Global message delivery|Global message delivery system]]. 20:16, 13 Μαρτ 2013 (UTC) <small>([[:m:Distribution list/Global message delivery|wrong page? You can fix it.]])</small>
<!-- EdwardsBot 0379 -->
== Wikidata phase 2 (infoboxes) coming to this Wikipedia ==
[[File:Wikidata-logo-en.svg|150px|right]]
Sorry for writing in English. I hope someone can translate this. If you understand German better than English you can have a look at the announcement on [[:de:Wikipedia:Kurier]].
A while ago the first phase of [[d:|Wikidata]] was enabled on this Wikipedia. This means you are getting the language links in each article from Wikidata. It is soon time to enable the second phase of Wikidata (infoboxes) here. We have already done this on the [[http://blog.wikimedia.de/2013/03/27/you-can-have-all-the-data/ first 11 Wikipedias]] (it, he, hu, ru, tr, uk, uz, hr, bs, sr, sh) and things are looking good. The next step is English Wikipedia. This is planned for April 8. '''If everything works out fine we will deploy on all remaining Wikipedias on April 10.''' I will update [[m:Wikidata/Deployment Questions#When_will_this_be_deployed_on_my_Wikipedia.3F|this part of the FAQ]] if there are any issues forcing us to change this date. I will also sent another note to this village pump once the deployment is finished.
'''What will happen once we have phase 2 enabled here?'''
Once it is enabled in a few days you will be able to make use of the structured data that is available on Wikidata in your articles/infoboxes. It includes things like the symbol for a chemical element, the ISBN for a book or the top level domain of a country. (None of this will happen automatically. Someone will have to change the article or infobox template for this to happen!)
'''How will this work?'''
There are two ways to access the data:
* Use a parser function like <nowiki>{{#property:p169}}</nowiki> in the wiki text of the article on Yahoo!. This will return “[[d:Q14086|Marissa Mayer]]” as she is the [[d:Property:P169|chief executive officer]] of the [[d:Q37093|company]].
* For more complicated things you can use Lua. The documentation for this is [[mw:Extension:WikibaseClient/Lua|here]].
We are working on expanding the parser function so you can for example use <nowiki>{{#property:chief executive officer}}</nowiki> instead of <nowiki>{{#property:p169}}</nowiki>. The complete plan for this is [[meta:Wikidata/Notes/Inclusion syntax|here]].
'''Where can I test this?'''
You can already test it on [http://test2.wikipedia.org test2].
'''Where can I find more information and ask questions?'''
We have collected the main questions in an [[meta:Wikidata/Deployment Questions|FAQ for this deployment]]. Please ask questions you might have on [[meta:Talk:Wikidata/Deployment Questions|the FAQ’s discussion page]].
'''I want to be kept up to date about Wikidata'''
To stay up-to-date on everything happening around Wikidata please [[meta:Global message delivery/Targets/Wikidata|subscribe]] to the newsletter that is delivered weekly to subscribed user’s talk pages.
--[[m:User:Lydia Pintscher (WMDE)|Lydia Pintscher]] 17:09, 5 Απρίλ 2013 (UTC)
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Fix here]].)</small>
<!-- EdwardsBot 0399 -->
== [[m:Requests for comment/Activity levels of advanced administrative rights holders|Request for comment on inactive administrators]] ==
<small>(Please consider translating this message for the benefit of your fellow Wikimedians. Please also consider translating [[m:Requests for comment/Activity levels of advanced administrative rights holders/Summary|the proposal]].)</small>
<small>[[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message|Read this message in English]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/ast|Lleer esti mensaxe n'asturianu]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/bn|বাংলায় এই বার্তাটি পড়ুন]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/ca|Llegiu aquest missatge en català]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/da|Læs denne besked på dansk]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/de|Lies diese Nachricht auf Deutsch]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/egl|Leś cal mesag' chè in Emiliàn]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/es|Leer este mensaje en español]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/fi|Lue tämä viesti suomeksi]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/fr|Lire ce message en français]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/gl|Ler esta mensaxe en galego]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/hi|हिन्दी]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/hr|Pročitajte ovu poruku na hrvatskom]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/id|Baca pesan ini dalam Bahasa Indonesia]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/it|Leggi questo messaggio in italiano]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/kn|ಈ ಸಂದೇಶವನ್ನು ಕನ್ನಡದಲ್ಲಿ ಓದಿ]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/mt|Aqra dan il-messaġġ bil-Malti]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/nb|norsk (bokmål)]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/nl|Lees dit bericht in het Nederlands]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/pl|Przeczytaj tę wiadomość po polsku]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/ro|Citiți acest mesaj în română]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/ru|Прочитать это сообщение на русском]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/so|Farriintaan ku aqri Af-Soomaali]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/sr|Pročitaj ovu poruku na srpskom (Прочитај ову поруку на српском)]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/th|อ่านข้อความนี้ในภาษาไทย]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/uk|Прочитати це повідомлення українською мовою]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/vi|Đọc thông báo bằng tiếng Việt]] / [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message/zh|使用中文阅读本信息。]]</small>
Hello!
There is [[m:Requests for comment/Activity levels of advanced administrative rights holders|a new request for comment]] on Meta-Wiki concerning the removal of administrative rights from long-term inactive Wikimedians. Generally, this proposal from stewards would apply to wikis without an administrators' review process.
We are also compiling a [[m:Talk:Requests for comment/Activity levels of advanced administrative rights holders|list of projects]] with procedures for removing inactive administrators on the talk page of the request for comment. Feel free to add your project(s) to the list if you have a policy on administrator inactivity.
All input is appreciated. The discussion may close as soon as 21 May 2013 (2013-05-21), but this will be extended if needed.
Thanks, [[m:User:Billinghurst|Billinghurst]] <small>(thanks to all the [[m:Requests for comment/Activity levels of advanced administrative rights holders/Global message|translators]]!)</small> 05:12, 24 Απρίλ 2013 (UTC)
:<small>Distributed via [[m:Global message delivery|Global message delivery]] (Wrong page? [[m:Distribution list/Global message delivery|You can fix it]].)</small>
<!-- EdwardsBot 0430 -->
== Wikidata phase 2 (infoboxes) is here ==
[[File:Wikidata-logo-en.svg|150px|right]]
Sorry for writing in English. I hope someone can translate this. If you understand German better than English you can have a look at the announcement on [[:de:Wikipedia:Kurier]].
A while ago the first phase of [[d:|Wikidata]] was enabled on this Wikipedia. This means you are getting the language links in each article from Wikidata. We have now enabled the second phase of Wikidata (infoboxes) here. We have already done this on the [[http://blog.wikimedia.de/2013/03/27/you-can-have-all-the-data/ first 11 Wikipedias]] (it, he, hu, ru, tr, uk, uz, hr, bs, sr, sh) a month ago and [http://blog.wikimedia.de/2013/04/22/and-that-makes-12/ two days ago on the English Wikipedia]. Today all the remaining Wikipedias followed.
'''What does having phase 2 enabled here mean?'''
You are now able to make use of the structured data that is available on Wikidata in your articles/infoboxes. It includes things like the symbol for a chemical element, the ISBN for a book or the top level domain of a country. (None of this will happen automatically. Someone will have to change the article or infobox template for this to happen!) The current state is just the beginning though. It will be extended based on feedback we get from you now.
'''How will this work?'''
There are two ways to access the data:
* Use a parser function like <nowiki>{{#property:p159}}</nowiki> in the wiki text of the article on Wikimedia Foundation. This will return “[[d:Q62|San Francisco]]” as that is the [[d:Property:P159|headquarter location]] of the [[d:180|non-profit]].
* For more complicated things you can use Lua. The documentation for this is [[mw:Extension:WikibaseClient/Lua|here]].
We are working on expanding the parser function so you can for example use <nowiki>{{#property:headquarter location}}</nowiki> instead of <nowiki>{{#property:p159}}</nowiki>. The complete plan for this is [[meta:Wikidata/Notes/Inclusion syntax|here]].
'''Where can I test this?'''
You can test it on [http://test2.wikipedia.org test2] if you don't want to do it in an article here.
'''Where can I find more information and ask questions?'''
We have collected the main questions in an [[meta:Wikidata/Deployment Questions|FAQ for this deployment]]. Please ask questions you might have on [[meta:Talk:Wikidata/Deployment Questions|the FAQ’s discussion page]].
'''I want to be kept up to date about Wikidata'''
To stay up-to-date on everything happening around Wikidata please [[meta:Global message delivery/Targets/Wikidata|subscribe]] to the newsletter that is delivered weekly to subscribed user’s talk pages.
We are excited about taking yet another step towards allowing all Wikipedias share structured data and collect and curate it together.
--[[m:User:Lydia Pintscher (WMDE)|Lydia Pintscher]] 19:19, 24 Απρίλ 2013 (UTC)
<small>Distributed via [[m:Global message delivery|Global message delivery]]. (Wrong page? [[m:Distribution list/Global message delivery|Fix here]].)</small>
<!-- EdwardsBot 0431 -->
== [en] Change to wiki account system and account renaming ==
<div class="mw-content-ltr">
Some accounts will soon be renamed due to a technical change that the developer team at Wikimedia are making. [[m:Single User Login finalisation announcement|More details on Meta]].
<small>(Distributed via [[m:global message delivery|global message delivery]] 04:03, 30 Απρίλ 2013 (UTC). Wrong page? [[m:Distribution list/Global message delivery|Correct it here]].)</small>
</div>
<!-- EdwardsBot 0437 -->
== [en] Change to section edit links ==
<div class="mw-content-ltr">
The default position of the "edit" link in page section headers is going to change soon. The "edit" link will be positioned adjacent to the page header text rather than floating opposite it.
Section edit links will be to the immediate right of section titles, instead of on the far right. If you're an editor of one of the wikis which already implemented this change, nothing will substantially change for you; however, scripts and gadgets depending on the previous implementation of section edit links will have to be adjusted to continue working; however, nothing else should break even if they are not updated in time.
[[m:Change to section edit links|Detailed information and a timeline]] is available on meta.
Ideas to do this all the way to 2009 at least. It is often difficult to track which of several potential section edit links on the far right is associated with the correct section, and many readers and anonymous or new editors may even be failing to notice section edit links at all, since they read section titles, which are far away from the links.
<small>(Distributed via [[m:global message delivery|global message delivery]] 18:52, 30 Απρίλ 2013 (UTC). Wrong page? [[m:Distribution list/Global message delivery|Correct it here]].)</small>
</div>
<!-- EdwardsBot 0438 -->
== Tech newsletter: Subscribe to receive the next editions ==
<div style="width:auto; padding: 1em; background:#fdf6e3;" class="plainlinks" ><big>Latest '''[[m:Tech/News|<span style="color:#268bd2;">Tech news</span>]]''' from the Wikimedia technical community.</big> ''Please inform other users about these changes.''</div>
<div style="width:auto; padding: 1em; border: 2px solid #fdf6e3;" class="plainlinks" >
;Recent software changes: ''(Not all changes will affect you.)''
* The latest version of MediaWiki (version [[mw:MediaWiki 1.22/wmf4|1.22/wmf4]]) was added to non-Wikipedia wikis on May 13, and to the English Wikipedia (with a Wikidata software update) on May 20. It will be updated on all other Wikipedia sites on May 22. [https://gerrit.wikimedia.org/r/gitweb?p=operations/mediawiki-config.git;a=commitdiff;h=ed976cf0c14fa3632fd10d9300bb646bfd6fe751;hp=c6c7bb1e5caaddf7325de9eef0e7bf85bcf5cc35] [http://lists.wikimedia.org/pipermail/wikitech-l/2013-May/069458.html]
* A software update will perhaps result in temporary issues with images. Please [[m:Tech/Ambassadors|report any problems]] you notice. [http://lists.wikimedia.org/pipermail/wikitech-l/2013-May/069458.html]
* MediaWiki recognizes links in twelve new [[:w:en:URI scheme|schemes]]. Users can now link to [[:w:en:SSH|SSH]], [[:w:en:XMPP|XMPP]] and [[:w:en:Bitcoin|Bitcoin]] directly from wikicode. [https://gerrit.wikimedia.org/r/gitweb?p=mediawiki/core.git;a=commitdiff;h=a89d623302b5027dbb2d06941a22372948757685]
* VisualEditor was added to [[bugzilla:48430|all content namespaces]] on mediawiki.org on May 20. [http://lists.wikimedia.org/pipermail/wikitech-l/2013-May/069458.html]
* A new extension ("TemplateData") was added to all Wikipedia sites on May 20. It will allow a future version of VisualEditor to [[bugzilla:44444|edit templates]]. [http://lists.wikimedia.org/pipermail/wikitech-l/2013-May/069458.html]
* New sites: [[:voy:el:|Greek Wikivoyage]] and [[:wikt:vec:|Venetian Wiktionary]] joined the Wikimedia family last week; the total number of project wikis is now 794. [https://gerrit.wikimedia.org/r/gitweb?p=operations/mediawiki-config.git;a=commit;h=5d7536b403730bb502580e21243f923c3b79da0e] [https://gerrit.wikimedia.org/r/gitweb?p=operations/mediawiki-config.git;a=commit;h=43c9eebdfc976333be5c890439ba1fae3bef46f7]
* The logo of 18 Wikipedias was changed to [[w:en:Wikipedia:Wikipedia_logos#The_May_2010_logo|version 2.0]] in a [http://lists.wikimedia.org/pipermail/wikimedia-l/2013-May/125999.html third group of updates]. [https://gerrit.wikimedia.org/r/gitweb?p=operations/mediawiki-config.git;a=commitdiff;h=4688adbe467440eea318eecf04839fdd9ffa0565]
* The [[:commons:Special:UploadWizard|UploadWizard]] on Commons now shows links to the old upload form in 55 languages ([[:bugzilla:33513|bug 33513]]). [https://gerrit.wikimedia.org/r/gitweb?p=operations/mediawiki-config.git;a=commit;h=4197fa18a22660296d0e5b84820d5ebb4cef46d4]
;Future software changes:
* The next version of MediaWiki (version 1.22/wmf5) will be added to Wikimedia sites starting on May 27. [http://lists.wikimedia.org/pipermail/wikitech-l/2013-May/069458.html]
* An updated version of [[mw:Echo (Notifications)|Notifications]], with new features and fewer bugs, will be added to the English Wikipedia on May 23. [http://lists.wikimedia.org/pipermail/wikitech-l/2013-May/069458.html]
* The [[m:Special:MyLanguage/Single User Login finalisation announcement|final version]] of the "single user login" (which allows people to use the same username on different Wikimedia wikis) is moved to August 2013. The software will [http://lists.wikimedia.org/pipermail/wikitech-ambassadors/2013-April/000217.html automatically rename] some usernames. [http://lists.wikimedia.org/pipermail/wikitech-ambassadors/2013-May/000233.html]
* A [[m:Special:MyLanguage/Flow|new discussion system]] for MediaWiki, called "Flow", is under development. Wikimedia designers need your help to inform other users, [http://unicorn.wmflabs.org/flow/ test the prototype] and discuss the interface. [http://lists.wikimedia.org/pipermail/wikitech-l/2013-May/069433.html].
* The Wikimedia Foundation is hiring people to act as links between software developers and users for VisualEditor. [http://lists.wikimedia.org/pipermail/wikitech-ambassadors/2013-May/000245.html]
</div>
<div style="font-size:90%; font-style:italic; background:#fdf6e3; padding:1em;">'''[[m:Tech/News|Tech news]]''' prepared by [[m:Tech/Ambassadors|tech ambassadors]] and posted by [[m:Global message delivery|Global message delivery]] • [[m:Tech/News#contribute|Contribute]] • [[m:Tech/News/2013/21|Translate]] • [[m:Tech|Get help]] • [[m:Talk:Tech/News|Give feedback]] • [[m:Global message delivery/Targets/Tech ambassadors|Unsubscribe]] • 21:05, 20 Καλομηνά 2013 (UTC)
</div>
<div style="float:left; background:#eee8d5; border: .2em solid #dc322f; border-left: .7em solid #dc322f; padding: 1em; "><span style="color:#dc322f;font-weight:bold;">Important note:</span> This is the first edition of the [[m:Tech/News|Tech News]] weekly summaries, which help you monitor recent software changes likely to impact you and your fellow Wikimedians.
'''If you want to continue to receive the next issues every week''', please '''[[m:Global message delivery/Targets/Tech ambassadors|subscribe to the newsletter]]'''. You can subscribe your personal talk page and a community page like this one. The newsletter can be [[m:Tech/News/2013/21|translated into your language]].
You can also [[m:Tech/Ambassadors|become a tech ambassador]], [[m:Tech/News|help us write the next newsletter]] and [[m:Talk:Tech/News|tell us what to improve]]. Your feedback is greatly appreciated. [[m:user:guillom|guillom]] 21:05, 20 Καλομηνά 2013 (UTC)</div>
<!-- EdwardsBot 0455 -->
== Updating the logo for this wiki ==
<div class="mw-content-ltr">
[[File:Wikipedia-logo-v2-{{CONTENTLANGUAGE}}.png|thumb|New logo]]
Hello! As part of the update of Wikipedias logos to the new (2010) 3D puzzle globe version, we have noticed that your wiki's current logo is missing, outdated or with wrong translation. We are trying to help Wikipedias get a locally-adapted correct logo, by taking the technical difficulties on us, and in about a week from now we'll be replacing the current logo with the new one shown in [//commons.wikimedia.org/w/index.php?title=User:Nemo_bis/Wikipedia&oldid=97076963 this gallery, with explanation].
If the translation is wrong, or there's another error in the new logo, or the community disagrees with the update, please [[m:User:Cbrown1023/Logos|update the list of logos]] or tell us on [[m:User talk:Cbrown1023/Logos|its talk page]].
Feel free to translate this message and to move/copy/forward it where appropriate. Thanks, [[m:User:Nemo_bis|Nemo]] 13:01, 27 Καλομηνά 2013 (UTC) (<small>Distributed via [[m:Global message delivery|Global message delivery]]: wrong page? [[m:Distribution list/Global message delivery|correct the list of targets]].)</small>
</div>
<!-- EdwardsBot 0462 -->
== Trademark discussion ==
Hi, apologies for posting this in English, but I wanted to alert your community to a discussion on Meta about potential changes to the Wikimedia Trademark Policy. Please translate this statement if you can. We hope that you will all participate in the discussion; we also welcome translations of the legal team’s statement into as many languages as possible and encourage you to voice your thoughts there. Please see the [[:m:Trademark practices discussion|Trademark practices discussion (on Meta-Wiki)]] for more information. Thank you! --[[:m:User:Mdennis_(WMF)|Mdennis (WMF)]] ([[:m:User talk:Mdennis_(WMF)|talk]])
<!-- EdwardsBot 0473 -->
== Free Research Accounts from Leading Medical Publisher. Come and Sign up! ==
[[:EN:W:TWL|The Wikipedia Library]] gets Wikipedia editors free access to reliable sources that are behind paywalls. I want to alert you to our latest donation.
*'''[[Cochrane Collaboration]]''' is an independent medical nonprofit organization that conducts systematic reviews of randomized controlled trials of health-care interventions, which it then publishes in the Cochrane Library.
*Cochrane has generously agreed to give ''free, full-access accounts to medical editors''. Individual access would otherwise cost between $300 and $800 per account.
*'''If you are active as a medical editor, come and [[WP:COCHRANE|sign up :)]]'''
Cheers, [[:EN:W:User:Ocaasi|Ocaasi]] 21:17, 16 Κερασινού 2013 (UTC)
<!-- EdwardsBot 0487 -->
== Cochrane Library Sign-up (correct link) ==
My apologies for the incorrect link: You can sign up for <nowiki>[[:EN:W:Cochrane Collaboration|Cochrane Collaboration]]</nowiki> accounts at the <nowiki>[[:EN:W:WP:COCHRANE|COCHRANE sign-up page]]</nowiki>. Cheers, [[:EN:W:User:Ocaasi|Ocaasi]] 21:51, 16 Κερασινού 2013 (UTC)
<!-- EdwardsBot 0488 -->
== [[:m:Requests_for_comment/X!'s_Edit_Counter|X!'s Edit Counter]] ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
<small>(Sorry for writing in English. You can [[:m:Special:MyLanguage/Requests_for_comment/X!%27s_Edit_Counter/Summary|translate the proposal]].)</small>
Should [[tools:~tparis/pcount|X!'s edit counter]] retain the opt-in requirement? Your input is strongly encouraged. [[:m:Requests_for_comment/X!'s_Edit_Counter|Voice your input here]].—[[:m:w:User:Cyberpower678|<span style="color:green;font-family:Neuropol">cyberpower]] [[:m:w:User talk:Cyberpower678|<sup style="color:purple;font-family:arnprior">Chat]]<sub style="margin-left:-4.4ex;color:purple;font-family:arnprior">Automation</sub> 04:54, 23 Κερασινού 2013 (UTC)
:<small>Distributed via [[:m:Global message delivery|Global message delivery]]. (Wrong page? [[:m:Distribution list/Global message delivery|Fix here]].)</small>
</div>
<!-- EdwardsBot 0505 -->
== Universal Language Selector will be enabled on 2013-07-09 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
On July 9, 2013, [[mw:Universal Language Selector|Universal Language Selector]] (ULS) will be enabled on this wiki. The ULS provides a flexible way to configure and deliver language settings like interface language, fonts, and input methods (keyboard mappings). Making it available here is the last phase of making ULS available on all Wikimedia wikis.
Please read the announcement on [[m:Announcement Universal Language Selector|Meta-Wiki]] for more information. [[m:User_talk:Siebrand|Siebrand]] 12:51, 4 Χορτοθερί 2013 (UTC) <small>(via [[m:Global message delivery|Global message delivery]]).</small>
</div>
<!-- EdwardsBot 0515 -->
== Pywikipedia is migrating to git ==
Hello, Sorry for English but It's very important for bot operators so I hope someone translates this.
[[mw:PWB|Pywikipedia]] is migrating to Git so after July 26, SVN checkouts won't be updated If you're using Pywikipedia you have to switch to git, otherwise you will use out-dated framework and your bot might not work properly. There is a [[mw:Manual:Pywikipediabot/Gerrit|manual]] for doing that and a [https://blog.wikimedia.org/2013/07/23/pywikipediabot-moving-to-git-on-july-26/ blog post] explaining about this change in non-technical language. If you have question feel free to ask in [[mw:Manual talk:Pywikipediabot/Gerrit]], [https://lists.wikimedia.org/mailman/listinfo/pywikipedia-l mailing list], or in the [irc://irc.freenode.net/#pywikipediabot IRC channel]. Best [[mw:User:Ladsgroup|Amir]] <small>(via [[m:Global message delivery|Global message delivery]]).</small> 13:40, 23 Χορτοθερί 2013 (UTC)
<!-- EdwardsBot 0534 -->
== VisualEditor and your Wikipedia ==
''(Please translate this message)''
Greetings,
The Wikimedia Foundation will soon turn on [[mw:VisualEditor|VisualEditor]] for all users, all the time on your Wikipedia. Right now your Wikipedia does not have any local documents on VisualEditor, and we hope that your community can change that. To find out about how you can help with translations visit the [[mw:VisualEditor/TranslationCentral|TranslationCentral for VisualEditor]] and read the easy instructions on [[mw:VisualEditor/Portal/Localization|bringing information to your Wikipedia]]. The [[mw:Help:VisualEditor/User_guide|User Guide]] and the [[mw:Help:VisualEditor/FAQ|FAQ]] are very important to have in your language.
We want to find out as much as we can from you about VisualEditor and how it helps your Wikipedia, and having local pages is a great way to start. We also encourage you to [[mw:VisualEditor/Feedback|leave feedback on Mediawiki]] where the community can offer ideas, opinions, and point out bugs that may still exist in the software that need to be reported to [https://bugzilla.wikimedia.org/describecomponents.cgi?product=VisualEditor Bugzilla].
If you are able to speak for the concerns of others in English on MediaWiki or locally I encourage you to help your community to be represented in this process.
If you can help translate the user interface for VisualEditor to your language, you can help with that as well. [https://translatewiki.net/w/i.php?title=Special%3AMessageGroupStats&x=D&group=ext-visualeditor#sortable:3=desc Translatewiki] has open tasks for translating VisualEditor. A direct link to translate the user interface is [https://translatewiki.net/wiki/Special:Translate?filter=!translated&action=translate&group=ext-visualeditor here]. You can see how we are doing with those translations [https://translatewiki.net/w/i.php?title=Special%3AMessageGroupStats&x=D&group=ext-visualeditor#sortable:3=desc here]. You need an account on Translatewiki to translate. This account is free and easy to create.
If we can help your community in any way with this process, please let me know and I will do my best to assist your Wikipedia with this |exciting development. You can contact me on my [[m:User_talk:Keegan (WMF)|meta talk page]] or by [[Special:EmailUser/Keegan (WMF)|email]]. You can also contact [[mw:User_talk:PEarley_(WMF)|Patrick Earley]] for help with translations and documents on Mediawiki. We look forward to working with you to bring the VisualEditor experience to your Wikipedia! [[:m:User:Keegan (WMF)|Keegan (WMF)]] ([[:m:User talk:Keegan (WMF)|talk]]) 19:11, 30 Χορτοθερί 2013 (UTC)
:<small>Distributed via [[:m:Global message delivery|Global message delivery]]. (Wrong page? [[:m:Distribution list/Global message delivery|Fix here]].)</small>
<!-- EdwardsBot 0549 -->
== HTTPS for users with an account ==
Greetings. Starting on August 21 (tomorrow), all users with an account will be using [[m:w:en:HTTPS|HTTPS]] to access Wikimedia sites. HTTPS brings better security and improves your privacy. More information is available at [[m:HTTPS]].
If HTTPS causes problems for you, tell us [https://bugzilla.wikimedia.org on bugzilla], [[m:IRC|on IRC]] (in the <code>#wikimedia-operations</code> channel) or [[m:Talk:HTTPS|on meta]]. If you can't use the other methods, you can also send an e-mail to <code>https@wikimedia.org</code>.
[[m:User:Greg (WMF)|Greg Grossmeier]] <small>(via the [[m:Global message delivery|Global message delivery]] system)</small>. 19:34, 20 Aλωναρί 2013 (UTC) <small>(wrong page? [[m:Distribution list/Global message delivery|You can fix it.]])</small>
<!-- EdwardsBot 0560 -->
== [[:m:Community Logo/Request for consultation|Request for consultation on community logo]] ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[File:Wikimedia Community Logo.svg|thumb|Request for consultation on this community logo]]
First, I’d like to apologize for the English. If you can, please help to translate this for other members of your community.
The legal team at the Wikimedia Foundation would greatly appreciate your input on the best way to manage the "community logo" (pictured here) to best balance protection of the projects with community support. Accordingly, they have created a “request for consultation” on Meta where they set out briefly some of the issues to be considered and the options that they perceive. [[:m:Community Logo/Request for consultation|Your input would be invaluable]] in helping guide them in how best to serve our mission.
Thank you! --[[m:User:Mdennis|Mdennis]] ([[m:User talk:Mdennis|talk]]) <small>(via the [[m:Global message delivery|Global message delivery]] system)</small>. 03:03, 24 Σταυρί 2013 (UTC) <small>(wrong page? [[m:Distribution list/Global message delivery|You can fix it.]])</small>
</div>
<!-- EdwardsBot 0590 -->
== [[mw:Echo|Notifications]] ==
[[File:Notifications-Flyout-Screenshot-08-10-2013-Cropped.png|thumb|300px|Notifications inform you of new activity that affects you -- and let you take quick action.]]
''(This message is in English, please translate as needed)''
Greetings!
[[mw:Echo|Notifications]] will inform users about new activity that affects them on this wiki in a unified way: for example, this new tool will let you know when you have new talk page messages, edit reverts, mentions or links -- and is designed to augment (rather than replace) the watchlist. The Wikimedia Foundation's editor engagement team developed this tool (code-named 'Echo') earlier this year, to help users contribute more productively to MediaWiki projects.
We're now getting ready to bring Notifications to almost all other Wikimedia sites, and are aiming for a 22 October deployment, as outlined in [[mw:Echo/Release_Plan_2013|this release plan]]. It is important that notifications is translated for all of the languages we serve.
There are three major points of translation needed to be either done or checked:
*[https://translatewiki.net/w/i.php?title=Special%3AMessageGroupStats&x=D&group=ext-echo#sortable:3=desc Echo on translatewiki for user interface] - you must have an account on translatewiki to translate
*[https://translatewiki.net/w/i.php?title=Special%3AMessageGroupStats&x=D&group=ext-thanks#sortable:3=desc Thanks on translatewiki for user interface] - you must have an account on translatewiki to translate
*[[mw:Help:Notifications|Notifications help on mediawiki.org]]. This page can be hosted after translation on mediawiki.org or we can localize it to this Wikipedia. You do not have to have an account to translate on mediawiki, but single-user login will create it for you there if you follow the link.
:*[[mw:Echo/Release Plan 2013#Checklist|Checklist]]
Please let us know if you have any questions, suggestions or comments about this new tool. For more information, visit [[mw:Echo_(Notifications)|this project hub]] and [[mw:Help:Notifications|this help page]]. [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:07, 4 Τρυγομηνά 2013 (UTC)
:<small>(via the [[m:Global message delivery|Global message delivery]] system) (wrong page? [[m:Distribution list/Global message delivery|You can fix it.]])</small>
<!-- EdwardsBot 0597 -->
== Speak up about the trademark registration of the Community logo. ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hi all,
Please join the consultation about the Community logo that represents Meta-Wiki: [[:m:Community Logo/Request for consultation]].
This community consultation was commenced on September 24. The following day, two individuals filed a legal opposition against the registration of the Community logo.
The question is whether the Wikimedia Foundation should seek a collective membership mark with respect to this logo or abandon its registration and protection of the trademark.
We want to make sure that everyone get a chance to speak up so that we can get clear direction from the community. We would therefore really appreciate the community's help in translating this announcement from English so that everyone is able to understand it.
Thanks,
[[m:User:Geoffbrigham|Geoff]] & [[m:User:YWelinder (WMF)|Yana]] 20:43, 8 Τρυγομηνά 2013 (UTC)
</div>
<!-- EdwardsBot 0601 -->
== Introducting Beta Features ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''(Apologies for writing in English. Please translate if necessary)''
We would like to let you know about [[mw:About_Beta_Features|Beta Features]], a new program from the Wikimedia Foundation that lets you try out new features before they are released for everyone.
Think of it as a digital laboratory where community members can preview upcoming software and give feedback to help improve them. This special preference page lets designers and engineers experiment with new features on a broad scale, but in a way that's not disruptive.
Beta Features is now ready for testing on [[mw:Special:Preferences#mw-prefsection-betafeatures|MediaWiki.org]]. It will also be released on Wikimedia Commons and MetaWiki this Thursday, 7 November. Based on test results, the plan is to release it on all wikis worldwide on 21 November, 2013.
Here are the first features you can test this week:
* [[mw:Multimedia/About_Media_Viewer|Media Viewer]] — view images in large size or full screen
* [[mw:VisualEditor/Beta_Features/Formulae|VisualEditor Formulæ]] (for wikis with [[mw:VisualEditor|VisualEditor]]) — edit algebra or equations on your pages
* [[mw:Typography_Update|Typography Refresh]] — make text more readable (coming Thursday)
Would you like to try out Beta Features now? After you log in on MediaWiki.org, a small 'Beta' link will appear next to your 'Preferences'. Click on it to see features you can test, check the ones you want, then click 'Save'. Learn more on the [[mw:About_Beta_Features|Beta Features page]].
After you've tested Beta Features, please let the developers know what you think on [[mw:Talk:About_Beta_Features|this discussion page]] -- or report any bugs [http://wmbug.com/new?product=MediaWiki%20extensions&component=BetaFeatures here on Bugzilla]. You're also welcome to join [[m:IRC_office_hours#Upcoming_office_hours|this IRC office hours chat]] on Friday, 8 November at 18:30 UTC.
Beta Features was developed by the Wikimedia Foundation's Design, Multimedia and VisualEditor teams. Along with other developers, they will be adding new features to this experimental program every few weeks. They are very grateful to all the community members who helped create this project — and look forward to many more productive collaborations in the future.
Enjoy, and don't forget to let developers know what you think! [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 20:30, 5 Αεργί 2013 (UTC)
:<small>Distributed via [[m:Global message delivery|Global message delivery]] (wrong page? [[m:Distribution list/Global message delivery|Correct it here]])</small>, 20:30, 5 Αεργί 2013 (UTC)
</div>
<!-- EdwardsBot 0622 -->
== Call for comments on draft trademark policy ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hi all,
The Wikimedia legal team invites you to participate in the development of the new Wikimedia trademark policy.
The [[:wmf:Trademark policy|current trademark policy]] was introduced in 2009 to protect the [[:wmf:Wikimedia trademarks|Wikimedia marks]]. We are now updating this policy to better balance permissive use of the marks with the legal requirements for preserving them for the community. The new draft trademark policy is ready for your review [[:m:Trademark policy|here]], and we encourage you to discuss it [[:m:Talk:Trademark policy|here]].
We would appreciate if someone would translate this message into your language so more members of your community can contribute to the conversation.
Thanks, <br />
[[:m:User:YWelinder (WMF)|Yana]] & [[:m:User:Geoffbrigham|Geoff]]
</div>
<!-- EdwardsBot 0657 -->
== ΠΩΣ ΛΕΓΝΕ ΤΟ ΦΛΑΣ Τ' ΑΥΤΟΚΙΝΗΤΙ ΣΑ ΠΟΝΤΙΑΚΑ ==
Πύρ γαρέρ τσιάμπλισμα τ' οματί ( ή τη φενερί ) τ' αυτοκινητί
επαναλαμβανόμενο ανοιγοκλείσιμο του ματιού ( ή του φαναριού ) του αυτοκινήτου
ΘΕΟΔΟΣΙΑΔΗΣ ΙΩΑΝΝΗΣ
π. Πρόεδρος του συλλόγου Ποντίων Έδεσσας
<< Ο Άγιος Θεόδωρος Γαβράς >>
Η ηλεκτρονική μου διεύθυνση : Akrania26@gmail.com
== Request for comment on Commons: Should Wikimedia support MP4 video? ==
''I apologize for this message being only in English. Please translate it if needed to help your community.''
The Wikimedia Foundation's [[mw:Multimedia|multimedia team]] seeks community guidance on a proposal to support the [[w:MP4|MP4 video format]]. This digital video standard is used widely around the world to record, edit and watch videos on mobile phones, desktop computers and home video devices. It is also known as [[w:MP4|H.264/MPEG-4 or AVC]].
Supporting the MP4 format would make it much easier for our users to view and contribute video on Wikipedia and Wikimedia projects -- and video files could be offered in dual formats on our sites, so we could continue to support current open formats (WebM and Ogg Theora).
However, MP4 is a patent-encumbered format, and using a proprietary format would be a departure from our current practice of only supporting open formats on our sites -- even though the licenses appear to have acceptable legal terms, with only a small fee required.
We would appreciate your guidance on whether or not to support MP4. Our Request for Comments presents views both in favor and against MP4 support, based on opinions we’ve heard in our discussions with community and team members.
[[commons:Commons:Requests for comment/MP4 Video|Please join this RfC -- and share your advice]].
All users are welcome to participate, whether you are active on Commons, Wikipedia, other Wikimedia project -- or any site that uses content from our free media repository.
You are also welcome to join tomorrow's [[m:IRC_office_hours#Upcoming_office_hours|Office hours chat on IRC]], this Thursday, January 16, at 19:00 UTC, if you would like to discuss this project with our team and other community members.
We look forward to a constructive discussion with you, so we can make a more informed decision together on this important topic. [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 06:46, 16 Καλανταρί 2014 (UTC)
<!-- Message sent by User:Keegan (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=User:Keegan_(WMF)/MP4_notice_targets&oldid=7105580 -->
== Conversions between Writing Systems / Συστήματα για την ορθογραφία της ποντιακής ==
Η Βικιπάιδειες στα βλαχικά, σερβικά, κινέζικα, κ.α. έχουν σύστημα όπου εύκολα μπορεί κανείς να αλλάξει μεταξύ δύο ή παραπάνω συστήματα γραφής.
Αφού η ποντιακή γλώσσα δεν έχει μια γενική επίσημη γραφή, μπορούμε και εμείς να βάλουμε αυτό το σύστημα εδώ;
Έτσι, θα μπορούσαμε να αλλάξουμε μεταξύ: ντ/τ̇ - μπ/π̇ - γκ/κ̇ - δ'/δ̦ σ̱/σ̌/ς - τσ/τ̵ - τσ̱/τσ̌/τ̌ - εα/α̈ - εο/ο̈ (και όσα άλλα υπάρχουν)
Πιστεύω θα ήταν εύκολο στην εφαρμογή και θα βοηθούσε πολύ επειδή τώρα πολλές φορές δεν διευκρινίζονται μερικά γράμματα. Συχνά οι φθόγγοι [ʃ], [ʒ], [ts], [tʃ], [æ], [ø], και ιδιαίτερα το [ðʲ] δεν φαίνονται καθόλου. Αφού και το [ðʲ] που μερικοί το γράφουν με <δ̦> δεν το βρίσκω πουθενά στην Βικιπαίδεια και ας είναι συχνό φθόγγο, π.χ. στη λέξη απίδ̦
== Universal Language Selector will be enabled by default again on this wiki by 21 February 2014 ==
<div class="mw-content-ltr" lang="en" dir="ltr">
On January 21 2014 the MediaWiki extension [[mw:Universal Language Selector|Universal Language Selector]] (ULS) was [[mw:Universal Language Selector/Announcement Jan2014|disabled]] on this wiki. A new preference was added for logged-in users to turn on ULS. This was done to prevent slow loading of pages due to ULS webfonts, a behaviour that had been observed by the Wikimedia Technical Operations team on some wikis.
We are now ready to enable ULS again. The temporary preference to enable ULS will be removed. A [[commons:File:ULS-font-checkbox.png|new checkbox]] has been added to the Language Panel to enable/disable font delivery. This will be unchecked by default for this wiki, but can be selected at any time by the users to enable webfonts. This is an interim solution while we improve the feature of webfonts delivery.
You can read the [[mw:Universal Language Selector/Announcement Feb2014|announcement]] and the [[mw:Universal Language Selector/Upcoming Development Plan|development plan]] for more information. Apologies for writing this message only in English. Thank you. [[m:User_talk:Runab WMF|Runa]]
</div>
<!-- Message sent by User:Runab WMF@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/ULS_Reenable_2014&oldid=7490703 -->
== Amendment to the Terms of Use ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hello all,
Please join a discussion about a [[:m:Terms of use/Paid contributions amendment|proposed amendment]] to the [[wmf:Terms of Use|Wikimedia Terms of Use]] regarding undisclosed paid editing and we encourage you to voice your thoughts there. Please translate this statement if you can, and we welcome you to translate the proposed amendment and introduction. Please see [[:m:Terms of use/Paid contributions amendment|the discussion on Meta Wiki]] for more information. Thank you! [[:m:User:Slaporte (WMF)|Slaporte (WMF)]] 22:00, 21 Κούντουρονος 2014 (UTC)
</div>
<!-- Message sent by User:Jalexander@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=7499312 -->
== Call for project ideas: funding is available for community experiments ==
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:IEG_key_blue.png|100px|right]]
''I apologize if this message is not in your language. Please help translate it.''
Do you have an idea for a project that could improve your community? [[m:Grants:IEG|Individual Engagement Grants]] from the Wikimedia Foundation help support individuals and small teams to organize experiments for 6 months. You can get funding to try out your idea for online community organizing, outreach, tool-building, or research to help make {{SITENAME}} better. In March, we’re looking for new project proposals.
Examples of past Individual Engagement Grant projects:
*[[m:Grants:IEG/Build_an_effective_method_of_publicity_in_PRChina|Organizing social media for Chinese Wikipedia]] ($350 for materials)
*[[m:Grants:IEG/Visual_editor-_gadgets_compatibility|Improving gadgets for Visual Editor]] ($4500 for developers)
*[[m:Grants:IEG/The_Wikipedia_Library|Coordinating access to reliable sources for Wikipedians]] ($7500 for project management, consultants and materials)
*[[m:Grants:IEG/Elaborate_Wikisource_strategic_vision|Building community and strategy for Wikisource]] (€10000 for organizing and travel)
'''[[m:Grants:IEG#ieg-applying|Proposals]] are due by 31 March 2014.''' There are a number of ways to [[m:Grants:IEG|get involved]]!
Hope to have your participation,
--[[m:User:Sbouterse (WMF)|Siko Bouterse, Head of Individual
Engagement Grants, Wikimedia Foundation]] 19:44, 28 Κούντουρονος 2014 (UTC)
</div>
<!-- Message sent by User:AKoval (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=IEG/MassMessageList&oldid=7675744 -->
== Proposed optional changes to Terms of Use amendment ==
<div lang="en" dir="ltr" class="mw-content-ltr">Hello all, in response to some community comments in the discussion on the amendment to the Terms of Use on undisclosed paid editing, we have prepared two optional changes. Please [[m:Terms_of_use/Paid_contributions_amendment#Optional_changes|read about these optional changes on Meta wiki]] and share your comments. If you can (and this is a non english project), please translate this announcement. Thanks! [[m:User:Slaporte (WMF)|Slaporte (WMF)]] 21:56, 13 Μαρτ 2014 (UTC) </div>
<!-- Message sent by User:Jalexander@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=7592057 -->
== Catalan Culture Challenge ==
I apologize if this message is not in your language. Please help translate it.
The Catalan-speaking world... Want to find out more? From March 16 to April 15 we will organise the [[:en:Wikipedia:Catalan culture challenge|Catalan Culture Challenge]], a Wikipedia editing contest in which victory will go to those who start and improve the greatest number of articles about 50 key figures of Catalan culture. You can take part by creating or expanding articles on these people in your native language (or any other one you speak). It would be lovely to have you on board. :-)
We look forward to seeing you!
[[:m:Amical Wikimedia|Amical Wikimedia]]--[[Χρήστες:Kippelboy|Kippelboy]] ([[Καλάτσεμαν χρήστε:Kippelboy|talk]]) 05:56, 16 Μαρτ 2014 (UTC)
== Changes to the default site typography coming soon ==
<div lang="en" dir="ltr" class="mw-content-ltr">
This week, the typography on Wikimedia sites will be updated for all readers and editors who use the default "Vector" skin. This change will involve new serif fonts for some headings, small tweaks to body content fonts, text size, text color, and spacing between elements. The schedule is:
* '''April 1st''': non-Wikipedia projects will see this change live
* '''April 3rd''': Wikipedias will see this change live
This change is very similar to the "Typography Update" Beta Feature that has been available on Wikimedia projects since November 2013. After several rounds of testing and with feedback from the community, this Beta Feature will be disabled and successful aspects enabled in the default site appearance. Users who are logged in may still choose to use another skin, or alter their [[Special:MyPage/vector.css|personal CSS]], if they prefer a different appearance. Local [[MediaWiki:Common.css|common CSS]] styles will also apply as normal, for issues with local styles and scripts that impact all users.
For more information:
* [[mw:Typography refresh|Summary of changes and FAQ]]
* [[mw:Talk:Typography refresh|Discussion page]] for feedback or questions
* [https://blog.wikimedia.org/2014/03/27/typography-refresh/ Post] on blog.wikimedia.org
-- [[m:User:Steven (WMF)|Steven Walling]] (Product Manager) on behalf of the Wikimedia Foundation's [[mw:Design|User Experience Design]] team
</div>
<!-- Message sent by User:Steven (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=7990801 -->
== No one needs free knowledge in Esperanto ==
There is a [[:de:Wikipedia Diskussion:Kurier#.E2.80.9ENiemand braucht freies Wissen auf Esperanto.E2.80.9C|current discussion]] on German Wikipedia on a decision of Asaf Bartov, Head of WMF Grants and Global South Partnerships, Wikimedia Foundation, who rejected a request for funding a proposal from wikipedians from eowiki one year ago with the explanation ''[[:meta:Grants_talk:PEG/KuboF_-_Esperanto_kaj_Libera_Scio/WikiTrans_training_and_work_session_2013#An_Esperanto_Wikipedia_does_not_advance_our_mission|the existence, cultivation, and growth of the Esperanto Wikipedia does not advance our educational mission. No one needs free knowledge in Esperanto]]''. On meta there has also started a discussion about that decision. --[[Χρήστες:Holder|Holder]] ([[Καλάτσεμαν χρήστε:Holder|talk]]) 10:46, 5 Καλομηνά 2014 (UTC)
== Using only [[commons:Special:MyLanguage/Commons:Upload Wizard|UploadWizard]] for uploads ==
[[Image:Commons-logo.svg|right|220px|alt=Wikimedia Commons logo]]
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello! It was noted that on this wiki you have [[Special:Statistics|less than 10 local files]]. Presumably, you therefore don't have interest nor energies to have [[commons:Category:Licensing templates|hundreds templates]] with the [[mw:Multimedia/Media Viewer/Template compatibility|now required HTML]], even less a local [[m:EDP|EDP]]. However, this means that users here will experience a mostly broken and/or [[wmf:Resolution:Licensing policy|illegal]] uploading.
I propose to
* '''have [[Special:Upload|local upload]] [[commons:Commons:Turning off local uploads|restricted]]''' to the "{{int:group-sysop}}" group (for emergency uploads) and
* the '''sidebar point to [[commons:Special:UploadWizard]]''',
so that you can avoid local maintenance and all users can have a functioning, easy upload interface [[translatewiki:Special:Translate/ext-uploadwizard|in their own language]]. All registered users can upload on Commons and [[Special:ListFiles|existing files]] will not be affected.
I'll get this done in one week from now.
# If you disagree with the proposal, just [[m:User:Nemo bis/Unused local uploads|remove your wiki from the list]].
# To make the UploadWizard even better, please tell your experience and ideas on [[commons:Commons:Upload Wizard feedback]].
[[m:User:Nemo_bis|Nemo]] 20:38, 19 Καλομηνά 2014 (UTC)
</div>
<!-- Message sent by User:Nemo bis@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=User_talk:Nemo_bis/Unused_local_uploads&oldid=8578536 -->
== Media Viewer ==
<br>
<div lang="en" dir="ltr" class="mw-content-ltr">
Greetings, my apologies for writing in English.
I wanted to let you know that [[mw:Multimedia/About Media Viewer|Media Viewer]] will be released to this wiki in the coming weeks. Media Viewer allows readers of Wikimedia projects to have an enhanced view of files without having to visit the file page, but with more detail than a thumbnail. You can try Media Viewer out now by turning it on in your [[Special:Preferences#mw-prefsection-betafeatures|Beta Features]]. If you do not enjoy Media Viewer or if it interferes with your work after it is turned on you will be able to disable Media Viewer as well in your [[Special:Preferences#mw-prefsection-rendering|preferences]]. I invite you to [[mw:Talk:Multimedia/About Media Viewer|share what you think]] about Media Viewer and how it can be made better in the future.
Thank you for your time. - [[m:User:Keegan (WMF)|Keegan (WMF)]] 21:29, 23 Καλομηνά 2014 (UTC)
<small>--This message was sent using [[m:MassMessage|MassMessage]]. Was there an error? [[m:Talk:MassMessage|Report it!]]</small>
</div>
</br>
<!-- Message sent by User:Keegan (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=User:Keegan_(WMF)/MassMessage/Multimedia/Media_Viewer&oldid=8631315 -->
== Media Viewer is now live on this wiki ==
<br>
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:Media_Viewer_Desktop_-_Large_Image_Opaque_Info.png|thumb|Media Viewer lets you see images in larger size]]
Greetings— and sorry for writing in English, please translate if it will help your community,
The Wikimedia Foundation's [[mw:Multimedia|Multimedia team]] is happy to announce that [[mw:Multimedia/About Media Viewer|Media Viewer]] was just released on this site today.
Media Viewer displays images in larger size when you click on their thumbnails, to provide a better viewing experience. Users can now view images faster and more clearly, without having to jump to separate pages — and its user interface is more intuitive, offering easy access to full-resolution images and information, with links to the file repository for editing. The tool has been tested extensively across all Wikimedia wikis over the past six months as a [[Special:Preferences#mw-prefsection-betafeatures|Beta Feature]] and has been [[mw:Multimedia/Media_Viewer/Release_Plan#Timeline|released]] to the largest Wikipedias, all language Wikisources, and the English Wikivoyage already.
If you do not like this feature, you can easily turn it off by clicking on "Disable Media Viewer" at the bottom of the screen, pulling up the information panel (or in your [[Special:Preferences#mw-prefsection-rendering|your preferences]]) whether you have an account or not. Learn more [[mw:Help:Multimedia/Media_Viewer#How_can_I_turn_off_this_feature.3F|in this Media Viewer Help page]].
Please let us know if you have any questions or comments about Media Viewer. You are invited to [[mw:Talk:Multimedia/About_Media_Viewer|share your feedback in this discussion on MediaWiki.org]] in any language, to help improve this feature. You are also welcome to [https://www.surveymonkey.com/s/media-viewer-1-all?c=announce-all take this quick survey in English], [https://www.surveymonkey.com/s/media-viewer-1-fr en français], [https://www.surveymonkey.com/s/media-viewer-1-es o español].
We hope you enjoy Media Viewer. Many thanks to all the community members who helped make it possible. - [[mw:User:Fabrice Florin (WMF)|Fabrice Florin (WMF)]] ([[m:User talk:Fabrice Florin (WMF)|talk]]) 21:54, 19 Κερασινού 2014 (UTC)
<small>--This message was sent using [[m:MassMessage|MassMessage]]. Was there an error? [[m:Talk:MassMessage|Report it!]]</small>
</div>
<!-- Message sent by User:Keegan (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=User:Keegan_(WMF)/MassMessage/Multimedia/Media_Viewer&oldid=8631315 -->
==Απόδοση από Νέα Ελληνικά==
Γεια. Αν κάποιος έχει τη διάθεση, θα ήθελα να με βοηθήσει να αποδόσω 2 παραγράφους για μια αθλητική ομάδα από τα Νέα Ελληνικά. [[Χρήστες:Xaris333|Xaris333]] ([[Καλάτσεμαν χρήστε:Xaris333|talk]]) 23:54, 11 Aλωναρί 2014 (UTC)
== Letter petitioning WMF to reverse recent decisions ==
The Wikimedia Foundation recently created a new feature, "superprotect" status. The purpose is to prevent pages from being edited by elected administrators -- but permitting WMF staff to edit them. It has been put to use in only one case: to protect the deployment of the Media Viewer software on German Wikipedia, in defiance of a clear decision of that community to disable the feature by default, unless users decide to enable it.
If you oppose these actions, please add your name to this letter. If you know non-Wikimedians who support our vision for the free sharing of knowledge, and would like to add their names to the list, please ask them to sign an identical version of the letter on change.org.
* [[:m:Letter to Wikimedia Foundation: Superprotect and Media Viewer|Letter to Wikimedia Foundation: Superprotect and Media Viewer]]
* [http://www.change.org/p/lila-tretikov-remove-new-superprotect-status-and-permit-wikipedia-communities-to-enact-current-software-decisions-uninhibited Letter on change.org]
-- [[:m:User:JurgenNL|JurgenNL]] ([[:m:User talk:JurgenNL|talk]]) 17:35, 21 Aλωναρί 2014 (UTC)
<!-- Message sent by User:JurgenNL@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=9313374 -->
== Process ideas for software development ==
<div class=”mw-content-ltr”>
’’My apologies for writing in English.’’
Hello,
I am notifying you that a brainstorming session has been [[:m:Community Engagement (Product)/Process ideas|started on Meta]] to help the Wikimedia Foundation increase and better affect community participation in software development across all wiki projects. Basically, how can you be more involved in helping to create features on Wikimedia projects? We are inviting all interested users to voice their ideas on how communities can be more involved and informed in the product development process at the Wikimedia Foundation. It would be very appreciated if you could translate this message to help inform your local communities as well.
I and the rest of [[:m:Community Engagement (Product)|my team]] welcome you to participate. We hope to see you on Meta.
Kind regards,
-- [[m:User:Rdicerb (WMF)|Rdicerb (WMF)]] [[m:User talk:Rdicerb (WMF)|talk]] 22:15, 21 Aλωναρί 2014 (UTC)
<small>--This message was sent using [[m:MassMessage|MassMessage]]. Was there an error? [[m:Talk:MassMessage|Report it!]]</small>
</div>
<!-- Message sent by User:Keegan (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=9313374 -->
== Grants to improve your project ==
:''Apologies for English. Please help translate this message.''
Greetings! The [[:m:Grants:IEG|Individual Engagement Grants program]] is accepting proposals for funding new experiments from September 1st to 30th. Your idea could improve Wikimedia projects with a new tool or gadget, a better process to support community-building on your wiki, research on an important issue, or something else we haven't thought of yet.
Whether you need $200 or $30,000 USD, Individual Engagement Grants can cover your own project development time in addition to hiring others to help you.
*'''[[:m:Grants:IEG#ieg-apply|Submit your proposal]]'''
*'''Get help''': In [[:m:Grants:IdeaLab|IdeaLab]] or an upcoming [[:m:Grants:IdeaLab/Events#Upcoming_events|Hangout session]] [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 16:52, 2 Σταυρί 2014 (UTC)
<!-- Message sent by User:PEarley (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=User:PEarley_(WMF)/Sandbox&oldid=9730503 -->
== Change in renaming process ==
''Part or all of this message may be in English. Please help translate if possible.''
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">[[:m:Single User Login finalisation announcement|Single-user login (SUL) finalisation]]'s goal is so that every Wikimedia editor has a single, recognized global account with one username across all projects. As you may know, after a long delay, it's now underway as an effort between [[m:bureaucrat|bureaucrat]]s, [[m:stewards|stewards]], and Wikimedia Foundation engineers. This will also allow for development of cross-wiki tools like global notifications and watchlists. '''There is no set date for the completion of single-user login finalization at this time.'''
The process involves changing all rename processes into one global renaming process. The ability for local bureaucrats to rename users on this wiki will be turned off on Monday, 15 September 2014, as one of the first steps. [[:m:Global renamers|Global renamers]] are in the process of being created to make sure projects and languages are represented by the time this occurs. I sent a note to every bureaucrat about this process three weeks ago with an invitation to participate and many have begun [[:m:SRGP|requesting]] to be a part of the group. Together with the stewards, the global renamers will be empowered to help editors work through the often difficult process of getting a global name.
In parting, visit [[Special:MergeAccount]] to unify your account if you have never done so. If your local pages about renaming still need to be updated, please do so and consider pointing people to [[:m:SRUC]] for future rename requests, especially if this project does not have bureaucrats that hold global renamer permissions. If you have any questions, you can read more on [[:m:Help:Unified login|the help page on Meta]]. You can also follow the technical progress [[:mw:SUL finalisation|on mediawiki.org]]. [[:m:User talk:Keegan (WMF)|Contact me on Meta]] any time with questions as well. Thank you for your time.</div> -- [[:m:User:Keegan (WMF)|User:Keegan (WMF)]] ([[:m:User talk:Keegan (WMF)|talk]]) 16:23, 9 Σταυρί 2014 (UTC)
<!-- Message sent by User:Keegan (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=User:Keegan_(WMF)/MassMessage/Crats/Pumps&oldid=9804310 -->
== VisualEditor available on Internet Explorer 11 ==
<div class="mw-content-ltr" lang="en" dir="ltr">
[[File:VisualEditor-logo.svg|right|frameless|200x200px]]
VisualEditor will become available to users of Microsoft Internet Explorer 11 during today's regular software update. Support for some earlier versions of Internet Explorer is being worked on. If you encounter problems with VisualEditor on Internet Explorer, please contact the Editing team by leaving a message at [[:mw:VisualEditor/Feedback|VisualEditor/Feedback]] on Mediawiki.org. Happy editing, [[:mw:User:Elitre (WMF)|Elitre (WMF)]] 07:29, 11 Σταυρί 2014 (UTC).
PS. Please subscribe to the [[:m:VisualEditor/Newsletter|global monthly newsletter]] to receive further news about VisualEditor.
</div>
<!-- Message sent by User:Elitre (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/VisualEditor/All_Wikipedias&oldid=9829651 -->
== Meta RfCs on two new global groups ==
<div lang="en" dir="ltr" class="mw-content-ltr">Hello all,
There are currently requests for comment open on meta to create two new global groups. The first is a group for members of the OTRS permissions queue, which would grant them autopatrolled rights on all wikis except those who opt-out. That proposal can be found at [[m:Requests for comment/Creation of a global OTRS-permissions user group]]. The second is a group for Wikimedia Commons admins and OTRS agents to view deleted file pages through the 'viewdeletedfile' right on all wikis except those who opt-out. The second proposal can be found at [[m:Requests for comment/Global file deletion review]].
We would like to hear what you think on both proposals. Both are in English; if you wanted to translate them into your native language that would also be appreciated.
It is possible for individual projects to opt-out, so that users in those groups do not have any additional rights on those projects. To do this please start a local discussion, and if there is consensus you can request to opt-out of either or both at [[m:Stewards' noticeboard]].
Thanks and regards, [[m:User:Ajraddatz|Ajraddatz]] ([[m:User talk:Ajraddatz|talk]]) 18:04, 26 Τρυγομηνά 2014 (UTC)</div>
<!-- Message sent by User:Ajraddatz@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=10024331 -->
== [[:en:Languages in censuses|Languages in censuses]] ==
Hello, Dear wikipedians. I invite you to edit and improve this article and to add information about your and other country.--[[Χρήστες:Kaiyr|Kaiyr]] ([[Καλάτσεμαν χρήστε:Kaiyr|talk]]) 12:35, 31 Τρυγομηνά 2014 (UTC)
== New Wikipedia Library Accounts Now Available (November 2014) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''Apologies for writing in English, please help translate this into your local language.''
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|150px|The TWL OWL says sign up today :)]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for, free, full-access accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for:
*'''DeGruyter''': 1000 new accounts for English and German-language research. Sign up on one of two language Wikipedias:
**[[w:en:Wikipedia:De_Gruyter|English signup]]
**[[w:de:Wikipedia:De_Gruyter|Deutsch signup]]
*'''[[w:en:Wikipedia:Fold3|Fold3]]''': 100 new accounts for American history and military archives
*'''[[w:en:Wikipedia:ScotlandsPeople|Scotland's People]]''': 100 new accounts for Scottish genealogy database
*'''[[w:en:Wikipedia:BNA|British Newspaper Archive]]''': expanded by 100+ accounts for British newspapers
*'''[[w:en:Wikipedia:HighBeam|Highbeam]]''': 100+ remaining accounts for newspaper and magazine archives
*'''[[w:en:Wikipedia:Questia| Questia]]''': 100+ remaining accounts for journal and social science articles
*'''[[w:en:Wikipedia:JSTOR|JSTOR]]''': 100+ remaining accounts for journal archives
Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]].23:19, 5 Αεργί 2014 (UTC)
:''You can host and coordinate signups for a Wikipedia Library branch in your own language. Please contact [[m:User:Ocaasi_(WMF)|Ocaasi (WMF)]].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Message sent by User:Sadads@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=9909230 -->
== Global AbuseFilter ==
<div lang="en" dir="ltr" class="mw-content-ltr">Hello,
[[mw:Special:MyLanguage/Extension:AbuseFilter|AbuseFilter]] is a MediaWiki extension used to detect likely abusive behavior patterns, like pattern vandalism and spam. In 2013, [[m:Special:Mylanguage/Global AbuseFilter|Global AbuseFilters]] were enabled on a limited set of wikis including Meta-Wiki, MediaWiki.org, Wikispecies and (in early 2014) all the "[https://noc.wikimedia.org/conf/highlight.php?file=small.dblist small wikis]". Recently, global abuse filters were enabled on "[https://noc.wikimedia.org/conf/highlight.php?file=medium.dblist medium sized wikis]" as well. These filters are currently managed by stewards on Meta-Wiki and have shown to be very effective in preventing mass spam attacks across Wikimedia projects. However, there is currently no policy on how the global AbuseFilters will be managed although there are proposals. There is an ongoing [[m:Requests for comment/Global AbuseFilter|request for comment]] on policy governing the use of the global AbuseFilters. In the meantime, specific wikis can opt out of using the global AbuseFilter. These wikis can simply add a request to [[m:Global AbuseFilter/Opt-out wikis|this list]] on Meta-Wiki. More details can be found on [[m:Special:Mylanguage/Global AbuseFilter/2014 announcement|this page]] at Meta-Wiki. If you have any questions, feel free to ask on [[m:Talk:Global AbuseFilter|m:Talk:Global AbuseFilter]].
Thanks,
[[m:User:PiRSquared17|PiRSquared17]], [[m:User:Glaisher|Glaisher]]</div> — 17:36, 14 Αεργί 2014 (UTC)
<!-- Message sent by User:Glaisher@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Global_AbuseFilter/2014_announcement_distribution_list&oldid=10495115 -->
== New Wikipedia Library Accounts Now Available (December 2014) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''Apologies for writing in English, please help translate this into your local language.''
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|150px|The TWL OWL says sign up today :)]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for, free, full-access accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials from:
*[[w:en:WP:ELSEVIER|Elsevier]] - science and medicine journals and books
*[[w:en:WP:RSC Gold|Royal Society of Chemistry]] - chemistry journals
*[[w:en:wp:Pelican Books|Pelican Books]] - ebook monographs
*[[w:en:WP:Public Catalogue Foundation|Public Catalogue Foundation]]- art books
Other partnerships with accounts available are listed on [[w:en:WP:The_Wikipedia_Library/Journals|our partners page]]. Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]].00:22, 18 Χριστουγενναρί 2014 (UTC)
:''You can host and coordinate signups for a Wikipedia Library branch in your own language. Please contact [[m:User:Ocaasi_(WMF)|Ocaasi (WMF)]].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Message sent by User:Sadads@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=10542996 -->
== ΣΗΜΑΝΤΙΚΟ: Επιθεώρηση δραστηριότητας διαχειριστών ==
Χαίρετε! Μία πολιτική για την αφαίρεση «ανώτερων δικαιωμάτων» (διαχειριστής, γραφειοκράτης, κτλ) υιοθετήθηκε με [[:m:Requests for comment/Activity levels of advanced administrative rights holders|συναίνεση της παγκόσμιας κοινότητας]] το 2013. Σύμφωνα με αυτή την πολιτική, οι [[:m:stewards|επίτροποι]] επιθεωρούν την δραστηριότητα των διαχειριστών σε όλα τα wiki του ιδρύματος Wikimedia που δεν έχουν τοπική πολιτική για τους αδρανείς διαχειριστές. Σύμφωνα με όσα γνωρίζουμε, το wiki σας δεν διαθέτει επίσημη διαδικασία για την αφαίρεση «ανωτέρων δικαιωμάτων» από ανενεργούς λογαριασμούς. Αυτό σημαίνει ότι οι επίτροποι θα δράσουν σύμφωνα με την [[:m:Admin activity review|επιθεώρηση δραστηριότητας διαχειριστών]].
Διαπιστώσαμε ότι οι ακόλουθοι χρήστες πληρούν τα κριτήρια αδράνειας (καμία επεξεργασία και καμία διαχειριστική δραστηριότητα για πάνω από 2 χρόνια):
# Sinopeus (διαχειριστής)
# Stravon (διαχειριστής)
Αυτοί οι χρήστες θα λάβουν σύντομα ειδοποίηση, που θα τους ζητά να αρχίσουν μία συζήτηση στην κοινότητα για το άν θέλουν να κρατήσουν κάποια ή όλα τα δικαιώματά τους. Αν οι χρήστες δεν ανταποκριθούν, τότε τα ανώτερα δικαιώματά τους θα αφαιρεθούν από τους επιτρόπους.
Ωστόσο, αν εσείς ως κοινότητα θέλετε να φτιάξετε τη δική σας διαδικασία επιθεώρησης δραστηριότητας που να υπερκαλύπτει την παγκόσμια, θέλετε να πάρετε άλλη απόφαση σχετικά με τους ανενεργούς κατόχους αυτών των δικαιωμάτων, ή έχετε ήδη αντίστοιχη πολιτική που την παραβλέψαμε, παρακαλούμε [[:m:Stewards' noticeboard|ειδοποιήστε τους επιτρόπους στο Meta-Wiki]], έτσι ώστε να γνωρίζουμε να μην προχωρήσουμε με την επιθεώρηση δικαιωμάτων στο wiki σας. Ευχαριστούμε, [[meta:User:Openbk|Openbk]] ([[meta:User talk:Openbk|talk]]) 12:31, 4 Κούντουρονος 2015 (UTC)
== [Global proposal] m.{{SITENAME}}.org: {{int:group-all}} {{int:right-edit}} ==
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:Mediawiki-mobile-smartphone.png|thumb|MediaWiki mobile]]
Hi, this message is to let you know that, on domains like {{CONTENTLANGUAGE}}.'''m'''.wikipedia.org, '''unregistered users cannot edit'''. At the Wikimedia Forum, where global configuration changes are normally discussed, a few dozens users [[m:Wikimedia Forum#Proposal: restore normal editing permissions on all mobile sites|propose to restore normal editing permissions on all mobile sites]]. Please read and comment!
Thanks and sorry for writing in English, [[m:User:Nemo_bis|Nemo]] 22:33, 1 Μαρτ 2015 (UTC)
</div>
<!-- Message sent by User:Nemo bis@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=11428885 -->
== New Wikipedia Library Accounts Available Now (March 2015) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''Apologies for writing in English, please help translate this into your local language.''
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|150px|The TWL OWL says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for, free, full-access accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials from:
*[[w:en:WP:Project MUSE|Project MUSE]] — humanities and social science books and journals
*[[w:en:Wikipedia:DynaMed|DynaMed]] — clinical reference tool for medical topics
*[[w:en:Wikipedia:Royal Pharmaceutical Society|Royal Pharmaceutical Society]] — pharmaceutical information and practice resources
*[[w:en:Wikipedia:Women_Writers_Online|Women Writers Online]] — a digital humanities database focused on women's literature
*[[w:en:Wikipedia:Newspapers.com|Newspapers.com]] — American newspapers database w/ Open Access opportunities (expansion of accounts)
Many other partnerships with accounts available are listed on [[w:en:WP:The_Wikipedia_Library/Journals|our partners page]]. Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 21:14, 2 Μαρτ 2015 (UTC)
:''Help us coordinate Wikipedia Library's distribution of accounts, communication of access opportunities and more! Please join our team at [[w:en:Wikipedia:The_Wikipedia_Library/Coordinators/Signup|our new coordinator page]].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Message sent by User:Sadads@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=10785744 -->
== Inspire Campaign: Improving diversity, improving content ==
This March, we’re organizing an Inspire Campaign to encourage and support new ideas for improving gender diversity on Wikimedia projects. Less than 20% of Wikimedia contributors are women, and many important topics are still missing in our content. We invite all Wikimedians to participate. If you have an idea that could help address this problem, please get involved today! The campaign runs until March 31.
All proposals are welcome - research projects, technical solutions, community organizing and outreach initiatives, or something completely new! Funding is available from the Wikimedia Foundation for projects that need financial support. Constructive, positive feedback on ideas is appreciated, and collaboration is encouraged - your skills and experience may help bring someone else’s project to life. Join us at the Inspire Campaign and help this project better represent the world’s knowledge!
:*[[:m:Grants:IdeaLab/Inspire|Inspire Campaign main page]]
''(Sorry for the English - please translate this message!)'' [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 20:02, 4 Μαρτ 2015 (UTC)
<!-- Message sent by User:PEarley (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=User:PEarley_(WMF)/Inspire_Mass_Message&oldid=11457822 -->
== SUL finalization update ==
<div class="mw-content-ltr">
Hi all,apologies for writing in English, please read [[m:Single_User_Login_finalisation_announcement/Schema_announcement|this page]] for important information and an update involving [[m:Help:Unified login|SUL finalization]], scheduled to take place in one month. Thanks. [[m:User:Keegan (WMF)|Keegan (WMF)]] ([[m:User talk:Keegan (WMF)|talk]]) 19:45, 13 Μαρτ 2015 (UTC)
</div>
<!-- Message sent by User:Keegan (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=User:Keegan_(WMF)/Everyone_but_meta_and_de&oldid=11538208 -->
== Stewards confirmation rules ==
Hello, I made [[:m:Requests_for_comment/Confirmation_of_stewards|a proposal on Meta]] to change the rules for the steward confirmations. Currently consensus to remove is required for a steward to lose his status, however I think it's fairer to the community if every steward needed the consensus to keep. As this is an issue that affects all WMF wikis, I'm sending this notification to let people know & be able to participate. Best regards, --<small>[[User:MF-Warburg|MF-W]]</small> 16:13, 10 Απρίλ 2015 (UTC)
<!-- Message sent by User:MF-Warburg@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=11737694 -->
== [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/Call for candidates|Nominations are being accepted for 2015 Wikimedia Foundation elections]] ==
''This is a message from the [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/Committee|2015 Wikimedia Foundation Elections Committee]]. [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/Accepting nominations|Translations]] are available.''
[[File:Wikimedia Foundation logo - vertical (2012-2016).svg|100px|right]]
Greetings,
I am pleased to announce that nominations are now being accepted for the 2015 Wikimedia Foundation Elections. This year the Board and the FDC Staff are looking for a diverse set of candidates from regions and projects that are traditionally under-represented on the board and in the movement as well as candidates with experience in technology, product or finance. To this end they have [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/Call for candidates|published letters]] describing what they think is needed and, recognizing that those who know the community the best are the community themselves, the election committee is [[m:Special:MyLanguage/Wikimedia Foundation elections 2015|accepting nominations]] for community members you think should run and will reach out to those nominated to provide them with information about the job and the election process.
This year, elections are being held for the following roles:
''Board of Trustees''<br/>
The Board of Trustees is the decision-making body that is ultimately responsible for the long term sustainability of the Foundation, so we value wide input into its selection. There are three positions being filled. More information about this role can be found at [[m:Special:MyLanguage/Wikimedia Foundation elections/Board elections/2015|the board elections page]].
''Funds Dissemination Committee (FDC)''<br/>
The Funds Dissemination Committee (FDC) makes recommendations about how to allocate Wikimedia movement funds to eligible entities. There are five positions being filled. More information about this role can be found at [[m:Special:MyLanguage/Wikimedia Foundation elections/FDC elections/2015|the FDC elections page]].
''Funds Dissemination Committee (FDC) Ombud''<br/>
The FDC Ombud receives complaints and feedback about the FDC process, investigates complaints at the request of the Board of Trustees, and summarizes the investigations and feedback for the Board of Trustees on an annual basis. One position is being filled. More information about this role can be found at [[m:Special:MyLanguage/Wikimedia Foundation elections/FDC Ombudsperson elections/2015|the FDC Ombudsperson elections page]].
The candidacy submission phase lasts from 00:00 UTC April 20 to 23:59 UTC May 5 for the Board and from 00:00 UTCApril 20 to 23:59 UTC April 30 for the FDC and FDC Ombudsperson. This year, we are accepting both self-nominations and nominations of others. More information on this election and the nomination process can be found on [[m:Special:MyLanguage/Wikimedia Foundation elections 2015|the 2015 Wikimedia elections page on Meta-Wiki]].
Please feel free to post a note about the election on your project's village pump. Any questions related to the election can be posted on the talk page on Meta, or sent to the election committee's mailing list, board-elections -at- wikimedia.org
On behalf of the Elections Committee,<br/>
-Gregory Varnum ([[m:User:Varnent|User:Varnent]])<br/>
Coordinator, [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/Committee|2015 Wikimedia Foundation Elections Committee]]
''Posted by the [[m:User:MediaWiki message delivery|MediaWiki message delivery]] on behalf of the [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/Committee|2015 Wikimedia Foundation Elections Committee]], 05:03, 21 April 2015 (UTC) • [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/Accepting nominations|Translate]] • [[m:Talk:Wikimedia Foundation elections 2015|Get help]]
<!-- Message sent by User:Varnent@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=11918510 -->
== Please test VisualEditor in your language! ==
<div class="mw-content-ltr" lang="en" dir="ltr">
[[File:VisualEditor-logo.svg|right|frameless]]
It is very important to us at the [[:mw:Editing|Editing Department]] that [[:mw:Special:MyLanguage/VisualEditor/Portal|VisualEditor]] works in every language, for every user.
VisualEditor's editing environment is a browser ContentEditable element. This means that your [[:en:Input method|input method editor]] (IME) should already know how to work with it. However, to make VisualEditor correctly edit wiki pages, we have to stop browsers in lots of ways from breaking the page.
Sometimes this can interfere with IMEs. To make sure we work in your IME, we need your help: please see '''[http://wikimedia.github.io/VisualEditor/demos/ve/desktop-dist.html#!pages/simple.html wikimedia.github.io/VisualEditor/demos/ve/desktop-dist.html#!pages/simple.html]'''. This is the core system inside VisualEditor which lets you write and edit. It is different from the full editor, and some of the tools you are used to will be missing.
We're interested in particular in whether you can write text at all, what happens when you select different candidate texts, and how VisualEditor behaves in general.
More details, and some early test results, are provided here: '''[[:mw:VisualEditor/IME_Testing#What_to_test|mediawiki.org/wiki/VisualEditor/IME_Testing#What_to_test]]'''.
We would love to hear from every language, and especially languages which use IMEs, like Japanese, Korean, Indic languages, Arabic and others. Thank you for your help.
Yours,
[[:mw:User:Jdforrester (WMF)|James Forrester]] [[:mw:User talk:Jdforrester (WMF)|(talk)]] 07:41, 22 Απρίλ 2015 (UTC)
</div>
<!-- Message sent by User:Elitre (WMF)@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Phase_6_wikis&oldid=11926646 -->
== [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/FDC voting has begun|Wikimedia Foundation Funds Dissemination Committee elections 2015]] ==
[[File:Wikimedia Foundation RGB logo with text.svg|right|75px|link=m:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/FDC voting has begun]]
''This is a message from the [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/Committee|2015 Wikimedia Foundation Elections Committee]]. [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/FDC voting has begun|Translations]] are available.''
[[m:Special:SecurePoll/vote/336|Voting has begun]] for [[m:Wikimedia Foundation elections 2015#Requirements|eligible voters]] in the 2015 elections for the ''[[m:Special:MyLanguage/Wikimedia Foundation elections/FDC elections/2015|Funds Dissemination Committee]]'' (FDC) and ''[[m:Special:MyLanguage/Wikimedia Foundation elections/FDC Ombudsperson elections/2015|FDC Ombudsperson]]''. Questions and discussion with the candidates for the ''[[m:Special:MyLanguage/Wikimedia Foundation elections/FDC elections/2015/Questions|Funds Dissemination Committee]]'' (FDC) and ''[[m:Special:MyLanguage/Wikimedia Foundation elections/FDC Ombudsperson elections/2015/Questions|FDC Ombudsperson]]'' will continue during the voting. Nominations for the ''[[m:Special:MyLanguage/Wikimedia Foundation elections/Board elections/2015|Board of Trustees]]'' will be accepted until 23:59 UTC May 5.
The ''[[m:Special:MyLanguage/Grants:APG/Funds Dissemination Committee|Funds Dissemination Committee]]'' (FDC) makes recommendations about how to allocate Wikimedia movement funds to eligible entities. There are five positions on the committee being filled.
The ''[[m:Special:MyLanguage/Grants:APG/Funds Dissemination Committee/Ombudsperson role, expectations, and selection process|FDC Ombudsperson]]'' receives complaints and feedback about the FDC process, investigates complaints at the request of the [[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees|Board of Trustees]], and summarizes the investigations and feedback for the Board of Trustees on an annual basis. One position is being filled.
The voting phase lasts from 00:00 UTC May 3 to 23:59 UTC May 10. '''[[m:Special:SecurePoll/vote/336|Click here to vote]].''' Questions and discussion with the candidates will continue during that time. '''[[m:Special:MyLanguage/Wikimedia Foundation elections/FDC elections/2015/Questions|Click here to ask the FDC candidates a question]]. [[m:Special:MyLanguage/Wikimedia Foundation elections/FDC Ombudsperson elections/2015/Questions|Click here to ask the FDC Ombudsperson candidates a question]].''' More information on the candidates and the elections can be found on the [[m:Special:MyLanguage/Wikimedia Foundation elections/FDC elections/2015|2015 FDC election page]], the [[m:Special:MyLanguage/Wikimedia Foundation elections/FDC Ombudsperson elections/2015|2015 FDC Ombudsperson election page]], and the [[m:Special:MyLanguage/Wikimedia Foundation elections/Board elections/2015|2015 Board election page]] on Meta-Wiki.
On behalf of the Elections Committee,<br/>
-Gregory Varnum ([[m:User:Varnent|User:Varnent]])<br/>
Volunteer Coordinator, [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/Committee|2015 Wikimedia Foundation Elections Committee]]
''Posted by the [[m:Special:MyLanguage/User:MediaWiki message delivery|MediaWiki message delivery]] 03:45, 4 May 2015 (UTC) • [[m:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/FDC voting has begun|Translate]] • [[m:Talk:Wikimedia Foundation elections 2015|Get help]]
<!-- Message sent by User:Varnent@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=12082785 -->
== New Wikipedia Library Accounts Available Now (May 2015) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''Apologies for writing in English, please help translate this into your local language.''
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|150px|The TWL OWL says sign up today!]]
Today [[m:The Wikipedia Library|The Wikipedia Library]] announces signups for more free, full-access accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials from:
* '''[[w:en:WP:MIT|MIT Press Journals]]''' — scholarly journals in the humanities, sciences, and social sciences (200 accounts)
* '''[[w:en:WP:Loeb|Loeb Classical Library]]''' — Harvard University Press versions of Classical Greek and Latin literature with commentary and annotation (25 accounts)
* '''[[w:en:Wikipedia:RIPM|RIPM]]''' — music periodicals published between 1760 and 1966 (20 accounts)
* '''[[w:en:WP:SAGE Stats|Sage Stats]]''' — social science data for geographies within the United States (10 accounts)
* '''[[w:en:WP:HeinOnline|HeinOnline]]''' — an extensive legal research database, including 2000 law-related journals as well as international legal history materials (25 accounts)
Many other partnerships with accounts available are listed on [[w:en:WP:The_Wikipedia_Library/Journals|our partners page]], including [[w:en:WP:Project MUSE|Project MUSE]], [[w:en:Wikipedia:JSTOR|JSTOR]], [[w:en:WP:DeGruyter|DeGruyter]], [[w:en:WP:Newspapers.com|Newspapers.com]] and [[w:en:WP:BNA|British Newspaper Archive]]. Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 22:12, 4 Καλομηνά 2015 (UTC)
:''We need your help! Help coordinate Wikipedia Library's account distribution and global development! Please join our team at [https://meta.wikimedia.org/wiki/The_Wikipedia_Library/Coordinators/Signup Global our new coordinator signup].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List]</small>
</div>
<!-- Message sent by User:Sadads@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=12114173 -->
== [https://meta.wikimedia.org/wiki/Special:SecurePoll/vote/339?setlang=pnt Wikimedia Foundation Board of Trustees elections 2015] ==
[[File:Wikimedia Foundation logo - vertical (2012-2016).svg|right|100px|link=metawiki:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/Board voting has begun]]
''This is a message from the [[metawiki:Special:MyLanguage/Wikimedia Foundation elections 2015/Committee|2015 Wikimedia Foundation Elections Committee]]. [[metawiki:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/Board voting has begun|Translations]] are available.''
[https://meta.wikimedia.org/wiki/Special:SecurePoll/vote/339?setlang=pnt Voting has begun] for [[metawiki:Wikimedia Foundation elections 2015#Requirements|eligible voters]] in the 2015 elections for the ''[[metawiki:Special:MyLanguage/Wikimedia Foundation elections/Board elections/2015|Wikimedia Foundation Board of Trustees]]''. Questions and discussion with the candidates for the ''[[metawiki:Special:MyLanguage/Wikimedia Foundation elections/Board elections/2015/Questions|Board]]'' will continue during the voting.
The ''[[metawiki:Wikimedia Foundation Board of Trustees|Wikimedia Foundation Board of Trustees]]'' is the ultimate governing authority of the Wikimedia Foundation, a 501(c)(3) non-profit organization registered in the United States. The Wikimedia Foundation manages many diverse projects such as Wikipedia and Commons.
The voting phase lasts from 00:00 UTC May 17 to 23:59 UTC May 31. '''[https://meta.wikimedia.org/wiki/Special:SecurePoll/vote/339?setlang=pnt Click here to vote].''' More information on the candidates and the elections can be found on the [[metawiki:Special:MyLanguage/Wikimedia Foundation elections/Board elections/2015|2015 ''Board'' election page]] on Meta-Wiki.
On behalf of the Elections Committee,<br/>
-Gregory Varnum ([[metawiki:User:Varnent|User:Varnent]])<br/>
Volunteer Coordinator, [[metawiki:Special:MyLanguage/Wikimedia Foundation elections 2015/Committee|2015 Wikimedia Foundation Elections Committee]]
''Posted by the [[metawiki:Special:MyLanguage/User:MediaWiki message delivery|MediaWiki message delivery]] 17:20, 17 May 2015 (UTC) • [[metawiki:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/Board voting has begun|Translate]] • [[metawiki:Talk:Wikimedia Foundation elections 2015|Get help]]
<!-- Message sent by User:Varnent@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=12206621 -->
== [https://meta.wikimedia.org/wiki/Special:SecurePoll/vote/339?setlang=pnt Wikimedia Foundation Board of Trustees elections 2015] ==
[[File:Wikimedia Foundation logo - vertical (2012-2016).svg|right|100px|link=metawiki:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/Board voting has begun]]
''This is a message from the [[metawiki:Special:MyLanguage/Wikimedia Foundation elections 2015/Committee|2015 Wikimedia Foundation Elections Committee]]. [[metawiki:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/Board voting has begun|Translations]] are available.''
[https://meta.wikimedia.org/wiki/Special:SecurePoll/vote/339?setlang=pnt Voting has begun] for [[metawiki:Wikimedia Foundation elections 2015#Requirements|eligible voters]] in the 2015 elections for the ''[[metawiki:Special:MyLanguage/Wikimedia Foundation elections/Board elections/2015|Wikimedia Foundation Board of Trustees]]''. Questions and discussion with the candidates for the ''[[metawiki:Special:MyLanguage/Wikimedia Foundation elections/Board elections/2015/Questions|Board]]'' will continue during the voting.
The ''[[metawiki:Wikimedia Foundation Board of Trustees|Wikimedia Foundation Board of Trustees]]'' is the ultimate governing authority of the Wikimedia Foundation, a 501(c)(3) non-profit organization registered in the United States. The Wikimedia Foundation manages many diverse projects such as Wikipedia and Commons.
The voting phase lasts from 00:00 UTC May 17 to 23:59 UTC May 31. '''[https://meta.wikimedia.org/wiki/Special:SecurePoll/vote/339?setlang=pnt Click here to vote].''' More information on the candidates and the elections can be found on the [[metawiki:Special:MyLanguage/Wikimedia Foundation elections/Board elections/2015|2015 ''Board'' election page]] on Meta-Wiki.
On behalf of the Elections Committee,<br/>
-Gregory Varnum ([[metawiki:User:Varnent|User:Varnent]])<br/>
Volunteer Coordinator, [[metawiki:Special:MyLanguage/Wikimedia Foundation elections 2015/Committee|2015 Wikimedia Foundation Elections Committee]]
''Posted by the [[metawiki:Special:MyLanguage/User:MediaWiki message delivery|MediaWiki message delivery]] 17:20, 17 May 2015 (UTC) • [[metawiki:Special:MyLanguage/Wikimedia Foundation elections 2015/MassMessages/Board voting has begun|Translate]] • [[metawiki:Talk:Wikimedia Foundation elections 2015|Get help]]
<!-- Message sent by User:Varnent@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=12206621 -->
== Pywikibot compat will no longer be supported - Please migrate to pywikibot core ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<small>Sorry for English, I hope someone translates this.</small><br />
[[mw:Special:MyLanguage/Manual:Pywikibot|Pywikibot]] (then "Pywikipediabot") was started back in 2002. In 2007 a new branch (formerly known as "rewrite", now called "core") was started from scratch using the MediaWiki API. The developers of Pywikibot have decided to stop supporting the compat version of Pywikibot due to bad performance and architectural errors that make it hard to update, compared to core. If you are using pywikibot compat it is likely your code will break due to upcoming MediaWiki API changes (e.g. [[phab:T101524|T101524]]). It is highly recommended you migrate to the core framework. There is a [[mw:Manual:Pywikibot/Compat deprecation|migration guide]], and please [[mw:Special:MyLanguage/Manual:Pywikibot/Communication|contact us]] if you have any problem.
There is an upcoming MediaWiki API breaking change that compat will not be updated for. If your bot's name is in [https://lists.wikimedia.org/pipermail/wikitech-l/2015-June/081931.html this list], your bot will most likely break.
Thank you,<br />
The Pywikibot development team, 19:30, 5 June 2015 (UTC)
</div>
<!-- Message sent by User:Ladsgroup@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=12271740 -->
== Pywikibot compat will no longer be supported - Please migrate to pywikibot core ==
<div lang="en" dir="ltr" class="mw-content-ltr">
<small>Sorry for English, I hope someone translates this.</small><br />
[[mw:Special:MyLanguage/Manual:Pywikibot|Pywikibot]] (then "Pywikipediabot") was started back in 2002. In 2007 a new branch (formerly known as "rewrite", now called "core") was started from scratch using the MediaWiki API. The developers of Pywikibot have decided to stop supporting the compat version of Pywikibot due to bad performance and architectural errors that make it hard to update, compared to core. If you are using pywikibot compat it is likely your code will break due to upcoming MediaWiki API changes (e.g. [[phab:T101524|T101524]]). It is highly recommended you migrate to the core framework. There is a [[mw:Manual:Pywikibot/Compat deprecation|migration guide]], and please [[mw:Special:MyLanguage/Manual:Pywikibot/Communication|contact us]] if you have any problem.
There is an upcoming MediaWiki API breaking change that compat will not be updated for. If your bot's name is in [https://lists.wikimedia.org/pipermail/wikitech-l/2015-June/081931.html this list], your bot will most likely break.
Thank you,<br />
The Pywikibot development team, 19:30, 5 June 2015 (UTC)
</div>
<!-- Message sent by User:Ladsgroup@metawiki using the list at http://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=12271740 -->
== New Wikipedia Library Accounts Available Now (June 2015) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|150px|The TWL OWL says sign up today!]]
Today [[m:The Wikipedia Library|The Wikipedia Library]] announces signups for more free, full-access accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials from:
* '''[[w:en:WP:TANDF|Taylor & Francis]]''' — academic publisher of journals. The pilot includes two subject collections: Arts & Humanities and Biological, Environment & Earth Sciences. (30 accounts)
*'''[[w:en:WP:World Bank|World Bank eLibrary]]''' — digital platform containing all books, working papers, and journal articles published by the World Bank from the 1990s to the present. (100 accounts)
* '''[[w:en:WP:AAAS|AAAS]]''' — general interest science publisher, who publishes the journal ''Science'' among other sources (50 accounts)
'''New French-Language Branch!'''
* '''[[w:en:Wikipedia:Erudit|Érudit]]''' ([[w:fr:Wikip%C3%A9dia:%C3%89rudit|en Francais]]) — Érudit is a French-Canadian scholarly aggregator primarily, humanities and social sciences, and contains sources in both English and French. Signups on both English and French Wikipedia (50 accounts).
* '''[[w:en:WP:Cairn|Cairn.info]]''' ([[w:fr:Wikip%C3%A9dia:Cairn|en Francais]]) — Cairn.info is a Switzerland based online web portal of scholarly materials in the humanities and social sciences. Most sources are in French, but some also in English. Signups on both English and French Wikipedia (100 accounts).
* '''[[w:fr:WP:L'Harmattan|L'Harmattan]]''' — French language publisher across a wide range of non-fiction and fiction, with a strong selection of francophone African materials (1000 accounts).
Many other partnerships with accounts available are listed on [[meta:The_Wikipedia_Library/Journals|our partners page]], including an expansion of accounts for [[w:en:WP:RSUK|Royal Society journals]] and remaining accounts on [[w:en:WP:Project MUSE|Project MUSE]], [[w:en:Wikipedia:JSTOR|JSTOR]], [[w:en:WP:DeGruyter|DeGruyter]], [[w:en:WP:Highbeam|Highbeam]] [[w:en:WP:Newspapers.com|Newspapers.com]] and [[w:en:WP:BNA|British Newspaper Archive]]. If you have suggestions for journals or databases we should seek access to [[meta:The_Wikipedia_Library/Journals/Requests|make a request]]! Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 22:08, 15 June 2015 (UTC)
:''We need your help! Help coordinate Wikipedia Library's account distribution and global development! Please join our team at [[meta:The_Wikipedia_Library/Coordinators/Signup|our new coordinator signup]].''<br>
:<small>This message was delivered via the [[meta:MassMessage#Global_message_delivery| Global Mass Message]] tool to [[meta:Global_message_delivery/Targets/Wikipedia_Library|The Wikipedia Library Global Delivery List]]</small>
</div>
<!-- Message sent by User:Sadads@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=12455967 -->
== New Wikipedia Library Accounts Available Now (June 2015) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|150px|The TWL OWL says sign up today!]]
Today [[m:The Wikipedia Library|The Wikipedia Library]] announces signups for more free, full-access accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials from:
* '''[[w:en:WP:TANDF|Taylor & Francis]]''' — academic publisher of journals. The pilot includes two subject collections: Arts & Humanities and Biological, Environment & Earth Sciences. (30 accounts)
*'''[[w:en:WP:World Bank|World Bank eLibrary]]''' — digital platform containing all books, working papers, and journal articles published by the World Bank from the 1990s to the present. (100 accounts)
* '''[[w:en:WP:AAAS|AAAS]]''' — general interest science publisher, who publishes the journal ''Science'' among other sources (50 accounts)
'''New French-Language Branch!'''
* '''[[w:en:Wikipedia:Erudit|Érudit]]''' ([[w:fr:Wikip%C3%A9dia:%C3%89rudit|en Francais]]) — Érudit is a French-Canadian scholarly aggregator primarily, humanities and social sciences, and contains sources in both English and French. Signups on both English and French Wikipedia (50 accounts).
* '''[[w:en:WP:Cairn|Cairn.info]]''' ([[w:fr:Wikip%C3%A9dia:Cairn|en Francais]]) — Cairn.info is a Switzerland based online web portal of scholarly materials in the humanities and social sciences. Most sources are in French, but some also in English. Signups on both English and French Wikipedia (100 accounts).
* '''[[w:fr:WP:L'Harmattan|L'Harmattan]]''' — French language publisher across a wide range of non-fiction and fiction, with a strong selection of francophone African materials (1000 accounts).
Many other partnerships with accounts available are listed on [[meta:The_Wikipedia_Library/Journals|our partners page]], including an expansion of accounts for [[w:en:WP:RSUK|Royal Society journals]] and remaining accounts on [[w:en:WP:Project MUSE|Project MUSE]], [[w:en:Wikipedia:JSTOR|JSTOR]], [[w:en:WP:DeGruyter|DeGruyter]], [[w:en:WP:Highbeam|Highbeam]] [[w:en:WP:Newspapers.com|Newspapers.com]] and [[w:en:WP:BNA|British Newspaper Archive]]. If you have suggestions for journals or databases we should seek access to [[meta:The_Wikipedia_Library/Journals/Requests|make a request]]! Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 22:08, 15 June 2015 (UTC)
:''We need your help! Help coordinate Wikipedia Library's account distribution and global development! Please join our team at [[meta:The_Wikipedia_Library/Coordinators/Signup|our new coordinator signup]].''<br>
:<small>This message was delivered via the [[meta:MassMessage#Global_message_delivery| Global Mass Message]] tool to [[meta:Global_message_delivery/Targets/Wikipedia_Library|The Wikipedia Library Global Delivery List]]</small>
</div>
<!-- Message sent by User:Sadads@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=12455967 -->
== HTTPS ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Apologies for writing in English.
Hi everyone.
Over the last few years, the Wikimedia Foundation has [http://blog.wikimedia.org/2013/08/01/future-https-wikimedia-projects/ been working] towards enabling [[m:Special:MyLanguage/HTTPS|HTTPS]] by default for all users, including unregistered ones, for better privacy and security for both readers and editors. This has taken a long time, as there were different aspects to take into account. Our servers haven't been ready to handle it. The Wikimedia Foundation has had to balance sometimes conflicting goals.
[https://blog.wikimedia.org/2015/06/12/securing-wikimedia-sites-with-https/ Forced HTTPS] has just been implemented on all Wikimedia projects. Some of you might already be aware of this, as a few Wikipedia language versions were converted to HTTPS last week and the then affected communities were notified.
Most of Wikimedia editors shouldn't be affected at all. If you edit as registered user, you've probably already had to log in through HTTPS. We'll keep an eye on this to make sure everything is working as it should. Do get in touch with [[:m:HTTPS#Help!|us]] if you have any problems after this change or contact me if you have any other questions.
/[[:m:User:Johan (WMF)|Johan (WMF)]]
</div> 22:00, 19 Κερασινού 2015 (UTC)
<!-- Message sent by User:Johan (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/HTTPS_global_message_delivery&oldid=12471979 -->
== Content Translation, the new article creation tool is now available as a beta-feature ==
[[File:Cx-icon-ltr.svg|264px|right|Tool icon]]
[[File:Content_Translation_Screencast_%28English%29.webm|thumb|How to use Content Translation - a short video (English)]]
Hello, [[mw:Content_translation|Content Translation]] has now been enabled as an opt-in beta feature on the Pontic Wikipedia. To start translating:
# Please enable the Beta feature in your preferences by checking the box for Content Translation.
# Visit the page [[Special:ContentTranslation]] or to your contributions page to open the tool.
# Click on the button to create a new translation.
# In the displayed dialog select the language of the original article and the article name, and the language you would like to translate to. Also add the title of the new article (or the original title will be inserted) and click on to begin. Your language preferences will be remembered for the next time.
# You will see a screen consisting of three columns. The first column contains the text of the source language and the middle column is for the translated text. Using the third column you can perform several actions such as insert source text, remove the inserted text source text, add or remove links etc.
# After you translate the article, you can publish it directly as a new page on the Pontic Wikipedia by using the publish button that appears. In case the article gets created by another user while you were translating, you will see an option to save the newly published translation under your user namespace.
# The number of published pages can be seen on the [[Special:CXStats|Content Translation stats page]].
Since this is the first time we have installed the tool on this Wikipedia, there are chances that there may be some problems or service disruptions which we are not yet aware of. We will be monitoring the usage to check for any failures or issues, but please do let us know on the [[:mw:Talk:Content_translation|Content Translation talk page]] or through [[phab:T103545|Phabricator]] if you spot any problems. For more information, please read the information available in the [[:mw:Help:Extension:ContentTranslation|User Guide]]. Our announcement is written only in Russian and English, and we would really appreciate if this message can be translated to reach more users of this Wikipedia. Thank you. On behalf of the Wikimedia Foundation's Language Engineering Team: --[[Χρήστες:Aaharoni-WMF|Aaharoni-WMF]] ([[Καλάτσεμαν χρήστε:Aaharoni-WMF|talk]]) 22:21, 30 Κερασινού 2015 (UTC)
=== Перевод Содержания ===
[[File:Cx-icon-ltr.svg|264px|right|Эмблема инструмента]]
[[File:Content_Translation_Screencast_%28English%29.webm|thumb|Как пользоваться Переводом содержания - короткий клип (по-английски)]]
Здравствуйте,
Инструмент перевода [[mw:Content_translation|Content Translation]] был включен как бета-функция в Понтийской Википедии.
Чтобы начать перевод:
# Включите бета-функцию в ваших настройках - отметьте Перевод содержания и сохраните.
# Посетите страницу [[Special:ContentTranslation]] или пройдите на вашу страницу вклада чтобы открыть инструмент.
# Нажмите на синюю кнопку "Создать новый перевод".
# Выберите язык, с которого вы хотите перевести, напишите название статьи , которую вы хотите перевести, и название статьи, которая будет создана на вашем языке.
# Вы увидите экран с тремя колонками - статья на иностранном языке, колонка для написания вашей новой переведённой статьи, и колонка для инструментов оформления и ссылок.
# Когда переведённый текст готов, нажмите кнопку "Опубликовать перевод" и страница будет создана в Понтийской Википедии. Если такая страница уже существует, вам будет показано предупреждение.
# Количество можно увидеть на [[Special:CXStats|странице статистики]].
Так как мы включаем этот инструмент в вашей википедии впервые, возможно, что здесь есть неисправности, о которых мы ещё не знаем. Мы следим за использованием инструмента, но мы просим и вас сообщать нам о любых неисправностях через [[:mw:Talk:Content_translation|страницу обсуждения проекта]] (можно по-русски) или через [https://phabricator.wikimedia.org/T103545 Фабрикатор]. Дополнительная информация доступна в [[:mw:Help:Extension:ContentTranslation|инструкции]]. Кроме этого, вы можете посмотреть [https://upload.wikimedia.org/wikipedia/commons/e/ee/Content_Translation_Screencast_%28English%29.webm клип об использовании инструмента]. --[[Χρήστες:Aaharoni-WMF|Aaharoni-WMF]] ([[Καλάτσεμαν χρήστε:Aaharoni-WMF|talk]]) 22:21, 30 Κερασινού 2015 (UTC)
== Please join the 2nd edition of the VisualEditor Translathon ==
<div class="mw-content-ltr" lang="en" dir="ltr">
[[File:VisualEditor-logo-pacifico.svg|right|200px]]
Hello!
I'm pleased to announce the 2nd edition of the '''VisualEditor Translathon'''.
It is a translation rally, focused on interface messages and help pages related to [[:mw:VisualEditor|VisualEditor]].
In order to participate, you need to '''[[:betawiki:Project:VisualEditor/2015_Translathon|sign up on the Translathon page]]''' on TranslateWiki.
The top 3 contributors will each win a Wikipedia t-shirt of their choice from [//store.wikimedia.org/ the Wikipedia store]<ref>You can choose between any short-sleeve shirt, or other items for the same value.</ref>.
Translations made between '''July 15th and July 19th''' ([//www.timeanddate.com/time/zones/cdt CDT time zone]) qualify<ref>This means both new translations, and updates for messages in the "Outdated" tab of the translation interface.</ref>.
If you are at [//wikimania2015.wikimedia.org/wiki/Wikimania Wikimania Mexico] this year, you are also welcome to join a related sprint during the hackathon in '''Workplace 1 - Don Américo, Thursday 16 July at 4pm (CDT)''' at the conference venue, so you can meet other fellow translators and [//wikimania2015.wikimedia.org/wiki/Hackathon#Hackathon_Day_2 get support if you need some].
Interface messages have the priority. You will need to create an account at translatewiki.net in order to work on them, if you don't have one. ''It is recommended to create the account ASAP'', so that it can be confirmed in time.
You can also help translate documentation pages about VisualEditor on mediawiki.org. You can use your Wikipedia account to work there.
You will find instructions, links and other details [[:betawiki:Project:VisualEditor/2015_Translathon|on the Translathon page]].
Thanks for your attention, and happy translating! <br>
[[:mw:User:Elitre (WMF)|Elitre (WMF)]] 21:00, 13 Χορτοθερί 2015 (UTC)
<references />
</div>
<!-- Message sent by User:Elitre (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Phase_6_wikis&oldid=12066019 -->
== Proposal to create PNG thumbnails of static GIF images ==
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:(R)-3-phenyl-cyclohanone.gif|255px|thumb|The thumbnail of this gif is of really bad quality.]]
[[File:(R)-3-phenyl-cyclohanone.png|255px|thumb|How a PNG thumb of this GIF would look like]]
There is a [[w:c:Commons:Village_pump/Proposals#Create_PNG_thumbnails_of_static_GIF_images|proposal]] at the Commons Village Pump requesting feedback about the thumbnails of static GIF images: It states that static GIF files should have their thumbnails created in PNG. The advantages of PNG over GIF would be visible especially with GIF images using an alpha channel. (compare the thumbnails on the side)
This change would affect all wikis, so if you support/oppose or want to give general feedback/concerns, please post them to the [[w:c:Commons:Village_pump/Proposals#Create_PNG_thumbnails_of_static_GIF_images|proposal page]]. Thank you. --[[w:c:User:McZusatz|McZusatz]] ([[w:c:User talk:McZusatz|talk]]) & [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 05:08, 24 Χορτοθερί 2015 (UTC)
</div>
<!-- Message sent by User:-revi@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=12485605 -->
== What does a Healthy Community look like to you? ==
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:Community Health Cover art News portal.png|300px|right]]
Hi, <br>
The Community Engagement department at the Wikimedia Foundation has launched a new learning campaign. The WMF wants to record community impressions about what makes a healthy online community.
Share your views and/or create a drawing and take a chance to win a Wikimania 2016 scholarship!
Join the WMF as we begin a conversation about Community Health. Contribute a drawing or answer the questions [[meta:Grants:Evaluation/Community Health learning campaign|on the campaign's page.]]
=== Why get involved? ===
'''The world is changing. The way we relate to knowledge is transforming.''' As the next billion people come online, the Wikimedia movement is working to bring more users on the wiki projects. The way we interact and collaborate online are key to building sustainable projects. How accessible are Wikimedia projects to newcomers today? Are we helping each other learn?
<br/>
Share your views on this matter that affects us all!
<br>
'''We invite everyone to take part in this learning campaign. Wikimedia Foundation will distribute one Wikimania Scholarship 2016 among those participants who are eligible.'''
=== More information ===
* All participants must have a registered user of at least one month antiquity on any Wikimedia project before the starting date of the campaign.
* <span style="border-bottom:1px dotted"> All eligible contributions must be done until '''August 23, 2015 at <nowiki>23:59</nowiki> UTC''' </span>
* <big> Wiki link: '''[[meta:Grants:Evaluation/Community Health learning campaign|Community Health learning campaign]]''' </big>
* URL https://meta.wikimedia.org/wiki/Grants:Evaluation/Community_Health_learning_campaign
* Contact: [[meta:user:MCruz (WMF)|María Cruz]] / Twitter: {{@}}WikiEval #CommunityHealth / email: eval{{@}}wikimedia{{dot}}org
<br>
Happy editing!
<br>
<br>
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 23:42, 31 Χορτοθερί 2015 (UTC)
</div>
<!-- Message sent by User:MCruz (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=12909005 -->
== What does a Healthy Community look like to you? ==
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:Community Health Cover art News portal.png|300px|right]]
Hi, <br>
The Community Engagement department at the Wikimedia Foundation has launched a new learning campaign. The WMF wants to record community impressions about what makes a healthy online community.
Share your views and/or create a drawing and take a chance to win a Wikimania 2016 scholarship!
Join the WMF as we begin a conversation about Community Health. Contribute a drawing or answer the questions [[meta:Grants:Evaluation/Community Health learning campaign|on the campaign's page.]]
=== Why get involved? ===
'''The world is changing. The way we relate to knowledge is transforming.''' As the next billion people come online, the Wikimedia movement is working to bring more users on the wiki projects. The way we interact and collaborate online are key to building sustainable projects. How accessible are Wikimedia projects to newcomers today? Are we helping each other learn?
<br/>
Share your views on this matter that affects us all!
<br>
'''We invite everyone to take part in this learning campaign. Wikimedia Foundation will distribute one Wikimania Scholarship 2016 among those participants who are eligible.'''
=== More information ===
* All participants must have a registered user of at least one month antiquity on any Wikimedia project before the starting date of the campaign.
* <span style="border-bottom:1px dotted"> All eligible contributions must be done until '''August 23, 2015 at <nowiki>23:59</nowiki> UTC''' </span>
* <big> Wiki link: '''[[meta:Grants:Evaluation/Community Health learning campaign|Community Health learning campaign]]''' </big>
* URL https://meta.wikimedia.org/wiki/Grants:Evaluation/Community_Health_learning_campaign
* Contact: [[meta:user:MCruz (WMF)|María Cruz]] / Twitter: {{@}}WikiEval #CommunityHealth / email: eval{{@}}wikimedia{{dot}}org
<br>
Happy editing!
<br>
<br>
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 01:08, 1 Aλωναρί 2015 (UTC)
</div>
<!-- Message sent by User:MCruz (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=12909005 -->
== Wikidata: Access to data from arbitrary items is coming ==
<div lang="en" dir="ltr" class="mw-content-ltr">
(Sorry for writing in English)
When using data from Wikidata on Wikipedia and other sister projects, there is currently a limitation in place that hinders some use cases: data can only be accessed from the corresponding item. So, for example, the Wikipedia article about Berlin can only get data from the Wikidata item about Berlin but not from the item about Germany. This had technical reasons. We are now removing this limitation. It is already done for many projects. Your project is one of the next ones. We will roll out this feature here on August 12.
We invite you to play around with this new feature if you are one of the people who have been waiting for this for a long time. If you have technical issues/questions with this you can come to [[d:Wikidata:Contact the development team]].
A note of caution: Please be careful with how many items you use for a single page. If it is too many pages, loading might get slow. We will have to see how the feature behaves in production to see where we need to tweak and how.
How to use it, once it is enabled:
* Parser function: <nowiki>{{#property:P36|from=Q183}}</nowiki> to get the capital from the item about Germany
* Lua: see [[mw:Extension:Wikibase Client/Lua]]
Cheers [[:d:User:Lydia Pintscher (WMDE)|Lydia Pintscher]] [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 17:46, 3 Aλωναρί 2015 (UTC)
</div>
<!-- Message sent by User:Lydia Pintscher (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Lydia_Pintscher_(WMDE)/Distribution_List&oldid=12981073 -->
== Wikidata: Access to data from arbitrary items is coming ==
<div lang="en" dir="ltr" class="mw-content-ltr">
(Sorry for writing in English)
When using data from Wikidata on Wikipedia and other sister projects, there is currently a limitation in place that hinders some use cases: data can only be accessed from the corresponding item. So, for example, the Wikipedia article about Berlin can only get data from the Wikidata item about Berlin but not from the item about Germany. This had technical reasons. We are now removing this limitation. It is already done for many projects. Your project is one of the next ones. We will roll out this feature here on August 12.
We invite you to play around with this new feature if you are one of the people who have been waiting for this for a long time. If you have technical issues/questions with this you can come to [[d:Wikidata:Contact the development team]].
A note of caution: Please be careful with how many items you use for a single page. If it is too many pages, loading might get slow. We will have to see how the feature behaves in production to see where we need to tweak and how.
How to use it, once it is enabled:
* Parser function: <nowiki>{{#property:P36|from=Q183}}</nowiki> to get the capital from the item about Germany
* Lua: see [[mw:Extension:Wikibase Client/Lua]]
Cheers [[:d:User:Lydia Pintscher (WMDE)|Lydia Pintscher]] [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 01:15, 4 Aλωναρί 2015 (UTC)
</div>
<!-- Message sent by User:Lydia Pintscher (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Lydia_Pintscher_(WMDE)/Distribution_List&oldid=12981073 -->
== Wikidata: Access to data from arbitrary items is here ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
(Sorry for writing in English)
Hi everyone,
As I have previously announced here we have now enabled the arbitrary access feature here. This means from now on you can make use of data from any Wikidata item in any article here. Before you could for example only access data about Berlin in the article about Berlin. If you want to find out more or have questions please come to [[d:Wikidata:Arbitrary access]]. I hope this will open up great possibilities for you and make your work easier.
Cheers [[:d:Lydia Pintscher (WMDE)|Lydia Pintscher (WMDE)]] 13:32, 12 Aλωναρί 2015 (UTC)
</div>
<!-- Message sent by User:Lydia Pintscher (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Lydia_Pintscher_(WMDE)/Distribution_List&oldid=12983468 -->
== How can we improve Wikimedia grants to support you better? ==
''My apologies for posting this message in English. Please help translate it if you can.''
Hello,
The Wikimedia Foundation would like your feedback about how we can '''[[m:Grants:IdeaLab/Reimagining WMF grants|reimagine Wikimedia Foundation grants]]''', to better support people and ideas in your Wikimedia project. Ways to participate:
*Respond to questions on [[m:Grants talk:IdeaLab/Reimagining WMF grants|the discussion page of the idea]].
*Join a [[m:Grants:IdeaLab/Events#Upcoming_events|small group conversation]].
*Learn more about [[m:Grants:IdeaLab/Reimagining WMF grants/Consultation|this consultation]].
Feedback is welcome in any language.
With thanks,
[[m:User:I JethroBT (WMF)|I JethroBT (WMF)]], [[m:Community Resources|Community Resources]], Wikimedia Foundation.
([[m:Grants:IdeaLab/Reimagining WMF grants/ProjectTargets|''Opt-out Instructions'']]) <small>This message was sent by [[m:User:I JethroBT (WMF)|I JethroBT (WMF)]] through [[m:User:MediaWiki message delivery|MediaWiki message delivery]].</small> 23:08, 18 Aλωναρί 2015 (UTC)
<!-- Message sent by User:I JethroBT (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Grants:IdeaLab/Reimagining_WMF_grants/ProjectTargets&oldid=13196071 -->
== How can we improve Wikimedia grants to support you better? ==
''My apologies for posting this message in English. Please help translate it if you can.''
Hello,
The Wikimedia Foundation would like your feedback about how we can '''[[Grants:IdeaLab/Reimagining WMF grants|reimagine Wikimedia Foundation grants]]''', to better support people and ideas in your Wikimedia project. Ways to participate:
*Respond to questions on [[Grants talk:IdeaLab/Reimagining WMF grants|the discussion page of the idea]].
*Join a [[Grants:IdeaLab/Events#Upcoming_events|small group conversation]].
*Learn more about [[Grants:IdeaLab/Reimagining WMF grants/Consultation|this consultation]].
Feedback is welcome in any language.
With thanks,
[[User:I JethroBT (WMF)|I JethroBT (WMF)]], [[Community Resources]], Wikimedia Foundation.
([[Grants:IdeaLab/Reimagining WMF grants/ProjectTargets|''Opt-out Instructions'']]) <small>This message was sent by {{user|I JethroBT (WMF)}} through [[User:MediaWiki message delivery|MediaWiki message delivery]].</small> 03:14, 19 Aλωναρί 2015 (UTC)
<!-- Message sent by User:I JethroBT (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Grants:IdeaLab/Reimagining_WMF_grants/ProjectTargets&oldid=13196071 -->
== Introducing the Wikimedia public policy site ==
Hi all,
We are excited to introduce a new Wikimedia Public Policy site. The site includes resources and position statements on access, copyright, censorship, intermediary liability, and privacy. The site explains how good public policy supports the Wikimedia projects, editors, and mission.
Visit the public policy portal: https://policy.wikimedia.org/
Please help translate the [[m:Public policy|statements on Meta Wiki]]. You can [http://blog.wikimedia.org/2015/09/02/new-wikimedia-public-policy-site/ read more on the Wikimedia blog].
Thanks,
[[m:User:YWelinder (WMF)|Yana]] and [[m:User:Slaporte (WMF)|Stephen]] ([[m:User talk:Slaporte (WMF)|Talk]]) 18:12, 2 Σταυρί 2015 (UTC)
''(Sent with the [[m:MassMessage#Global_message_delivery|Global message delivery system]])''
<!-- Message sent by User:Slaporte (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Slaporte_(WMF)/Announcing_public_policy_site&oldid=13439030 -->
== Open call for Individual Engagement Grants ==
''My apologies for posting this message in English. Please help translate it if you can.''
Greetings! The '''[[m:IEG|Individual Engagement Grants program]] is accepting proposals''' until September 29th to fund new tools, community-building processes, and other experimental ideas that enhance the work of Wikimedia volunteers. Whether you need a small or large amount of funds (up to $30,000 USD), Individual Engagement Grants can support you and your team’s project development time in addition to project expenses such as materials, travel, and rental space.
*[[m:Grants:IEG#ieg-apply|'''Submit''' a grant request]]
*[[m:Grants:IdeaLab|'''Get help''' with your proposal in IdeaLab]] or [[m:Grants:IdeaLab/Events#Upcoming_events|an upcoming Hangout session]]
*[[m:Grants:IEG#ieg-engaging|'''Learn from examples''' of completed Individual Engagement Grants]]
Thanks,
[[m:User:I JethroBT (WMF)|I JethroBT (WMF)]], [[m:Community Resources|Community Resources]], Wikimedia Foundation. 20:52, 4 Σταυρί 2015 (UTC)
([[m:User:I JethroBT (WMF)/IEG 2015 Targets|''Opt-out Instructions'']]) <small>This message was sent by [[m:User:I JethroBT (WMF)|I JethroBT (WMF)]] ([[m:User talk:I JethroBT (WMF)|talk]]) through [[m:User:MediaWiki message delivery|MediaWiki message delivery]].</small>
<!-- Message sent by User:I JethroBT (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:I_JethroBT_(WMF)/IEG_2015_Targets&oldid=13476366 -->
== New Wikipedia Library Database Access (September 2015) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|150px|The TWL OWL says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for free, full-access accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials from:
* '''[[w:en:WP:EBSCO|EBSCOHost]]''' - this is one of our largest access donations so far: access to a wide variety of academic, newspaper and magazine sources through their Academic Search Complete, Business Source Complete and MasterFILE Complete
* '''[[w:en:WP:Newspaperarchive.com|Newspaperarchive.com]]''' - historical newspapers from the United States, Canada, UK and 20 other countries, and includes an Open Access "clipping" feature (1000 accounts)
* '''[[w:en:WP:IMF|IMF Elibary]]'''- a digital collection of the IMF's reports, studies and research on global economics and development (50 accounts)
* '''[[w:en:Wikipedia:Sabinet|Sabinet]]''' - one of the largest African digital publishers, based in South Africa, with a wide range of content in English and other European and African languages (10 accounts)
* '''[[w:fr:Wikipédia:Numérique Premium|Numérique Premium]]''' - a French language social science and humanities ebook database, with topical collections on a wide range of topics (100)
*'''[[w:ar:ويكيبيديا:مكتبة_ويكيبيديا/المنهل|Al Manhal]]''' - an Arabic and English database with a wide range of sources, largely focused on or published in the Middle East (60 accounts)
*'''[[w:ar:ويكيبيديا:مكتبة ويكيبيديا/جملون|Jamalon]]''' - an Arabic book distributor, who is providing targeted book delivery to volunteers (50 editors)
Many other partnerships with accounts available are listed on [[w:en:WP:The_Wikipedia_Library/Journals|our partners page]], including expanded accounts for [[w:en:WP:Elsevier ScienceDirect|Elsevier ScienceDirect]], [[w:en:WP:BMJ|British Medical Journal]] and [[w:en:WP:Dynamed|Dynamed]] and additional accounts for [[w:en:WP:Project MUSE|Project MUSE]], [[w:en:WP:DeGruyter|DeGruyter]], [[w:en:WP:Newspapers.com|Newspapers.com]], [[w:en:WP:Highbeam|Highbeam]] and [[w:en:HeinOnline|HeinOnline]]. Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 19:42, 16 September 2015 (UTC)
:''We need help! Help us coordinate Wikipedia Library's distribution of accounts, communication of access opportunities and more! Please join our team at [https://meta.wikimedia.org/wiki/The_Wikipedia_Library/Coordinators/Signup our new coordinator signup].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Message sent by User:Sadads@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=13664781 -->
== New Wikipedia Library Database Access (September 2015) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|150px|The TWL OWL says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for free, full-access accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials from:
* '''[[w:en:WP:EBSCO|EBSCOHost]]''' - this is one of our largest access donations so far: access to a wide variety of academic, newspaper and magazine sources through their Academic Search Complete, Business Source Complete and MasterFILE Complete
* '''[[w:en:WP:Newspaperarchive.com|Newspaperarchive.com]]''' - historical newspapers from the United States, Canada, UK and 20 other countries, and includes an Open Access "clipping" feature (1000 accounts)
* '''[[w:en:WP:IMF|IMF Elibary]]'''- a digital collection of the IMF's reports, studies and research on global economics and development (50 accounts)
* '''[[w:en:Wikipedia:Sabinet|Sabinet]]''' - one of the largest African digital publishers, based in South Africa, with a wide range of content in English and other European and African languages (10 accounts)
* '''[[w:fr:Wikipédia:Numérique Premium|Numérique Premium]]''' - a French language social science and humanities ebook database, with topical collections on a wide range of topics (100)
*'''[[w:ar:ويكيبيديا:مكتبة_ويكيبيديا/المنهل|Al Manhal]]''' - an Arabic and English database with a wide range of sources, largely focused on or published in the Middle East (60 accounts)
*'''[[w:ar:ويكيبيديا:مكتبة ويكيبيديا/جملون|Jamalon]]''' - an Arabic book distributor, who is providing targeted book delivery to volunteers (50 editors)
Many other partnerships with accounts available are listed on [[w:en:WP:The_Wikipedia_Library/Journals|our partners page]], including expanded accounts for [[w:en:WP:Elsevier ScienceDirect|Elsevier ScienceDirect]], [[w:en:WP:BMJ|British Medical Journal]] and [[w:en:WP:Dynamed|Dynamed]] and additional accounts for [[w:en:WP:Project MUSE|Project MUSE]], [[w:en:WP:DeGruyter|DeGruyter]], [[w:en:WP:Newspapers.com|Newspapers.com]], [[w:en:WP:Highbeam|Highbeam]] and [[w:en:HeinOnline|HeinOnline]]. Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 19:42, 16 September 2015 (UTC)
:''We need help! Help us coordinate Wikipedia Library's distribution of accounts, communication of access opportunities and more! Please join our team at [https://meta.wikimedia.org/wiki/The_Wikipedia_Library/Coordinators/Signup our new coordinator signup].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Message sent by User:Sadads@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=13664781 -->
== Only one week left for Individual Engagement Grant proposals! ==
(Apologies for using English below, please help translate if you are able.)
'''There is still one week left to submit [[m:IEG|Individual Engagement Grant]] (IEG) proposals''' before the September 29th deadline. If you have ideas for new tools, community-building processes, and other experimental projects that enhance the work of Wikimedia volunteers, start your proposal today! Please encourage others who have great ideas to apply as well. Support is available if you want help turning your idea into a grant request.
*[[m:Grants:IEG#ieg-apply|'''Submit''' a grant request]]
*[[m:Grants:IdeaLab|'''Get help''' with your proposal in IdeaLab]]
*[[m:Grants:IEG#ieg-engaging|'''Learn from examples''' of completed Individual Engagement Grants]]
[[m:User:I JethroBT (WMF)|I JethroBT (WMF)]], [[m:Community Resources|Community Resources]] 21:01, 22 Σταυρί 2015 (UTC)
<!-- Message sent by User:I JethroBT (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:I_JethroBT_(WMF)/IEG_2015_Targets&oldid=13754911 -->
== Reimagining WMF grants report ==
''(My apologies for using English here, please help translate if you are able.)''
Last month, we asked for community feedback on [[m:Grants:IdeaLab/Reimagining WMF grants| a proposal to change the structure of WMF grant programs]]. Thanks to the 200+ people who participated! '''[[m:Grants:IdeaLab/Reimagining_WMF_grants/Outcomes|
A report]]''' on what we learned and changed based on this consultation is now available.
Come read about the findings and next steps as WMF’s Community Resources team begins to implement changes based on your feedback. Your questions and comments are welcome on [[m:Grants talk:IdeaLab/Reimagining WMF grants/Outcomes|the outcomes discussion page]].
With thanks, [[m:User:I JethroBT (WMF)|I JethroBT (WMF)]] 16:56, 28 Σταυρί 2015 (UTC)
<!-- Message sent by User:I JethroBT (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Grants:IdeaLab/Reimagining_WMF_grants/ProjectTargets&oldid=13850666 -->
== Reimagining WMF grants report ==
''(My apologies for using English here, please help translate if you are able.)''
Last month, we asked for community feedback on [[m:Grants:IdeaLab/Reimagining WMF grants| a proposal to change the structure of WMF grant programs]]. Thanks to the 200+ people who participated! '''[[m:Grants:IdeaLab/Reimagining_WMF_grants/Outcomes|
A report]]''' on what we learned and changed based on this consultation is now available.
Come read about the findings and next steps as WMF’s Community Resources team begins to implement changes based on your feedback. Your questions and comments are welcome on [[m:Grants talk:IdeaLab/Reimagining WMF grants/Outcomes|the outcomes discussion page]].
With thanks, [[m:User:I JethroBT (WMF)|I JethroBT (WMF)]] 18:48, 28 Σταυρί 2015 (UTC)
<!-- Message sent by User:I JethroBT (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Grants:IdeaLab/Reimagining_WMF_grants/ProjectTargets&oldid=13850666 -->
== Community Wishlist Survey ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hi everyone! Apologies for posting in English. Translations are very welcome.
The [[:m:Community Tech|Community Tech team]] at the Wikimedia Foundation is focused on building improved curation and moderation tools for experienced Wikimedia contributors. We're now starting a '''[[:m:2015 Community Wishlist Survey|Community Wishlist Survey]]''' to find the most useful projects that we can work on.
For phase 1 of the survey, we're inviting all active contributors to submit brief proposals, explaining the project that you'd like us to work on, and why it's important. Phase 1 will last for 2 weeks. In phase 2, we'll ask you to vote on the proposals. Afterwards, we'll analyze the top 10 proposals and create a prioritized wishlist.
While most of this process will be conducted in English, we're inviting people from any Wikimedia wiki to submit proposals. We'll also invite volunteer translators to help translate proposals into English.
Your proposal should include: the problem that you want to solve, who would benefit, and a proposed solution, if you have one. You can submit your proposal on the Community Wishlist Survey page, using the entry field and the big blue button. We will be accepting proposals for 2 weeks, ending on November 23.
We're looking forward to hearing your ideas!
</div> <div lang="en" dir="ltr" class="mw-content-ltr">Community Tech Team via [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 21:57, 9 Αεργί 2015 (UTC)</div>
<!-- Message sent by User:Johan (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/Target_lists/Global_distribution&oldid=14554458 -->
== Wikimania 2016 scholarships ambassadors needed ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello! [[wm2016:|Wikimania 2016]] scholarships will soon be open; by the end of the week we'll form the committee and we need your help, see [[wm2016:Special:MyLanguage/Scholarship committee|Scholarship committee]] for details.
If you want to carefully review nearly a thousand applications in January, you might be a perfect committee member. Otherwise, you can '''volunteer as "ambassador"''': you will observe all the committee activities, ensure that people from your language or project manage to apply for a scholarship, translate '''scholarship applications written in your language''' to English and so on. Ambassadors are allowed to ask for a scholarship, unlike committee members.
[[wm2016:Scholarship committee|Wikimania 2016 scholarships subteam]] 10:47, 10 Αεργί 2015 (UTC)
</div>
<!-- Message sent by User:Nemo bis@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=14347818 -->
== Harassment consultation ==
{{int:Please-translate}}
The Community Advocacy team the Wikimedia Foundation has opened a consultation on the topic of '''harassment''' on [[m:Harassment consultation 2015|Meta]]. The consultation period is intended to run for one month from today, November 16, and end on December 17. Please share your thoughts there on harassment-related issues facing our communities and potential solutions. (Note: this consultation is not intended to evaluate specific cases of harassment, but rather to discuss the problem of harassment itself.)
::*[[m:Harassment consultation 2015|Harassment consultation 2015]]
:Regards, [[m:Community Advocacy|Community Advocacy, Wikimedia Foundation]]
<!-- Message sent by User:PEarley (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:PEarley_(WMF)/Inspire_Mass_Message&oldid=14684364 -->
== [[m:Special:MyLanguage/Free Bassel/MassMessages/2015 Free Bassel banner straw poll|Your input requested on the proposed #FreeBassel banner campaign]] ==
''This is a message regarding the [[:m:Special:MyLanguage/Free Bassel/Banner|proposed 2015 Free Bassel banner]]. [[m:Special:MyLanguage/Free Bassel/MassMessages/2015 Free Bassel banner straw poll|Translations]] are available.''
Hi everyone,
This is to inform all Wikimedia contributors that a [[:m:Special:MyLanguage/Free Bassel/Banner/Straw poll|straw poll seeking your involvement]] has just been started on Meta-Wiki.
As some of your might be aware, a small group of Wikimedia volunteers have proposed a banner campaign informing Wikipedia readers about the urgent situation of our fellow Wikipedian, open source software developer and Creative Commons activist, [[:w:Bassel Khartabil|Bassel Khartabil]]. An exemplary [[:m:Special:MyLanguage/Free Bassel/Banner|banner]] and an [[:m:Special:MyLanguage/Free Bassel/Banner|explanatory page]] have now been prepared, and translated into about half a dozen languages by volunteer translators.
We are seeking [[:m:Special:MyLanguage/Free Bassel/Banner/Straw poll|your involvement to decide]] if the global Wikimedia community approves starting a banner campaign asking Wikipedia readers to call on the Syrian government to release Bassel from prison. We understand that a campaign like this would be unprecedented in Wikipedia's history, which is why we're seeking the widest possible consensus among the community.
Given Bassel's urgent situation and the resulting tight schedule, we ask everyone to [[:m:Special:MyLanguage/Free Bassel/Banner/Straw poll|get involved with the poll and the discussion]] to the widest possible extent, and to promote it among your communities as soon as possible.
(Apologies for writing in English; please kindly [[m:Special:MyLanguage/Free Bassel/MassMessages/2015 Free Bassel banner straw poll|translate]] this message into your own language.)
Thank you for your participation!
''Posted by the [[:m:Special:MyLanguage/User:MediaWiki message delivery|MediaWiki message delivery]] 21:47, 25 November 2015 (UTC) • [[m:Special:MyLanguage/Free Bassel/MassMessages/2015 Free Bassel banner straw poll|Translate]] • [[:m:Talk:Free Bassel/Banner|Get help]]
<!-- Message sent by User:Varnent@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=14758733 -->
== Community Wishlist Survey ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hi everyone! Apologies for posting this in English. Translations are very welcome.
We're beginning the second part of the Community Tech team's '''[[:m:2015 Community Wishlist Survey/Voting|Community Wishlist Survey]]''', and we're inviting all active contributors to vote on the proposals that have been submitted.
Thanks to you and other Wikimedia contributors, 111 proposals were submitted to the team. We've split the proposals into categories, and now it's time to vote! You can vote for any proposal listed on the pages, using the <nowiki>{{Support}}</nowiki> tag. Feel free to add comments pro or con, but only support votes will be counted. The voting period will be 2 weeks, ending on December 14.
The proposals with the most support votes will be the team's top priority backlog to investigate and address. Thank you for participating, and we're looking forward to hearing what you think!
Community Tech via
</div> [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 14:38, 1 Χριστουγενναρί 2015 (UTC)
<!-- Message sent by User:Johan (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:Johan_(WMF)/Target_lists/Global_distribution&oldid=14913494 -->
== Please test the visual editor on this Wikipedia ==
<div dir="ltr" class="me-content-ltr" lang="en">
[[File:VisualEditor-logo-pacifico.svg|right|frameless]]
''I apologize for writing in English. {{Int:Please-translate}}. {{Int:Feedback-thanks-title}}''
Hi everybody,
My name is Erica, and I am a [[Mw:Community Engagement (Product)|Community Liaison]] at the Wikimedia Foundation. The [[mw:Editing/Team|Editing team at WMF]] wants to know what you think about [[:mw:VisualEditor|the visual editor]] on this Wikipedia. {{int:visualeditor}} is a way to edit articles that is similar to a word processing application. The team has been working on support for languages that use input method editors (IMEs), such as this one.
'''To test the visual editor, please:'''
# '''Opt-in to the visual editor''' by going to [[Special:Preferences#mw-prefsection-betafeatures]] and choosing "{{int:visualeditor}}". Save your preferences.
# '''Edit any article or your user page''' in the visual editor. See the [[:mw:Help:VisualEditor/User guide]] for information on how to use the visual editor.
# '''Please post your comments and the language(s) that you tested''' at [https://www.mediawiki.org/wiki/Topic:St8y4ni42d0vr9cv the feedback thread on Mediawiki.org]. The developers would like to know how well it works. Please tell them what kind of computer, web browser, and keyboard you are using. It is important that they hear from as many editors as possible. You may leave your comments in any language.
When language support has been refined a little more based on your feedback, all editors at this wiki can have access to the visual editor. If you want to help prepare, please read [[mw:Help:VisualEditor/VE as Beta Feature|the advice on mediawiki.org]].
{{Int:Feedback-thanks-title}}
<div style="float: right;">''[[m:VisualEditor/Newsletter/Phase 6.1|Wrong target page? Fix it here]] • [[:m:VisualEditor/Newsletter|Sign up for the visual editor's multilingual newsletter]] '' </div>
–[[:m:User:Elitre (WMF)]], 12:15, 2 Χριστουγενναρί 2015 (UTC)
</div>
<!-- Message sent by User:Elitre (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Phase_6.1&oldid=14780730 -->
== New Wikipedia Library Accounts Available Now (December 2015) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|150px|The TWL OWL says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for, free, full-access accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials from:
* [[w:en:WP:Gale|Gale]] - multidisciplinary periodicals, newspapers, and reference sources - 10 accounts
* [[w:en:Wikipedia:Brill|Brill]] - academic e-books and journals in English, Dutch, and other languages - 25 accounts
* [[w:fi:Wikipedia:Wikipedian_Lähdekirjasto/Suomalaisen_Kirjallisuuden_Seura|Finnish Literature Society]] (in Finnish)
* [[w:fa:ویکیپدیا:مگایران|Magiran]] (in Farsi) - scientific journal articles - 100 articles
* [[w:fa:ویکیپدیا:سیویلیکا|Civilica]] (in Farsi) - Iranian journal articles, seminars, and conferences - 50 accounts
Many other partnerships with accounts available are listed on [[m:The_Wikipedia_Library/Journals|our partners page]], including [[w:en:WP:EBSCO|EBSCO]], [[w:en:WP:DeGruyter|DeGruyter]], and [[w:en:WP:Newspaperarchive.com|Newspaperarchive.com]]. Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[m:The Wikipedia Library/Coordinators|The Wikipedia Library Team]] 01:01, 11 December 2015 (UTC)
:''Help us a start Wikipedia Library in your language! Email us at wikipedialibrary@wikimedia.org''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small></div>
<!-- Message sent by User:Matiia@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=14689842 -->
== [[m:Special:MyLanguage/Wikipedia 15|Get involved in Wikipedia 15!]] ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''This is a message from the [[m:Special:MyLanguage/Wikimedia Foundation|Wikimedia Foundation]]. [[m:Special:MyLanguage/Wikipedia 15/MassMessages/Get involved|Translations]] are available.''
[[File:International-Space-Station wordmark blue.svg|right|200px]]
As many of you know, January 15 is Wikipedia’s 15th Birthday!
People around the world are getting involved in the celebration and have started adding their [[m:Special:MyLanguage/Wikipedia 15/Events|events on Meta Page]]. While we are celebrating Wikipedia's birthday, we hope that all projects and affiliates will be able to utilize this celebration to raise awareness of our community's efforts.
Haven’t started planning? Don’t worry, there’s lots of ways to get involved. Here are some ideas:
* '''[[m:Special:MyLanguage/Wikipedia 15/Events|Join/host an event]]'''. We already have more than 80, and hope to have many more.
* '''[[m:Special:MyLanguage/Wikipedia 15/Media|Talk to local press]]'''. In the past 15 years, Wikipedia has accomplished extraordinary things. We’ve made a [[m:Special:MyLanguage/Wikipedia 15/15 years|handy summary]] of milestones and encourage you to add your own. More resources, including a [[m:Special:MyLanguage/Wikipedia 15/Media#releases|press release template]] and [[m:Special:MyLanguage/Communications/Movement Communications Skills|resources on working with the media]], are also available.
* '''[[m:Special:MyLanguage/Wikipedia 15/Material|Design a Wikipedia 15 logo]]'''. In place of a single icon for Wikipedia 15, we’re making dozens. Add your own with something fun and representative of your community. Just use the visual guide so they share a common sensibility.
* '''[[m:Special:MyLanguage/Wikipedia 15/Events/Package#birthdaywish|Share a message on social media]]'''. Tell the world what Wikipedia means to you, and add #wikipedia15 to the post. We might re-tweet or share your message!
Everything is linked on the [[m:Special:MyLanguage/Wikipedia 15|Wikipedia 15 Meta page]]. You’ll find a set of ten data visualization works that you can show at your events, and a [[c:Category:Wikipedia15 Mark|list of all the Wikipedia 15 logos]] that community members have already designed.
If you have any questions, please contact [[m:User:ZMcCune (WMF)|Zachary McCune]] or [[m:User:JSutherland (WMF)|Joe Sutherland]].
Thanks and Happy nearly Wikipedia 15!<br />
-The Wikimedia Foundation Communications team
''Posted by the [[m:User:MediaWiki message delivery|MediaWiki message delivery]], 20:59, 18 Χριστουγενναρί 2015 (UTC) • [[m:Wikipedia 15/MassMessages/Get involved|{{int:please-translate}}]] • [[m:Talk:Wikipedia 15|{{int:help}}]]
</div>
<!-- Message sent by User:GVarnum-WMF@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=15158198 -->
== Wikimania 2016 Scholarships - Deadline soon! ==
:{{int:Please-translate}}
A reminder - applications for scholarships for Wikimania 2016 in Esino Lario, Italy, are closing soon! Please get your applications in by January 9th. To apply, visit the page below:
:*[https://wikimania2016.wikimedia.org/wiki/Scholarships Wikimania 2016 Scholarships]
[[User:PEarley (WMF)|Patrick Earley (WMF)]] via [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 01:49, 5 Καλανταρί 2016 (UTC)
<!-- Message sent by User:PEarley (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:PEarley_(WMF)/Mass_Message_-_large&oldid=15209973 -->
== The visual editor is coming to this wiki ==
[[File:Norwegian-road-sign-110.0 (fluorescent).svg|right|frameless]]
''Hello again. Please excuse the English. {{Int:Please-translate}}. {{Int:Feedback-thanks-title}}''
<mark>[[mw:VisualEditor/Portal|'''The visual editor''']] is coming to all editors at this Wikipedia on Monday, 25 January.</mark> It allows people to edit Wikipedia articles as if they were using word processing software.
You don't have to wait until the deployment to test it; '''you can test the visual editor right now.''' To turn it on, select [[Special:Preferences#mw-prefsection-betafeatures|"Beta"]] in your preferences. Choose "{{int:visualeditor}}" and click save. When it is enabled, you will press the "{{int:vector-view-edit}}" button to edit an article in the new software. To use the wikitext editor, you can press "{{int:visualeditor-ca-editsource}}".
After the deployment, everyone will automatically have the option to use either the visual editor or the current wikitext editor. For more information about how to use the visual editor, see [[:mw:Help:VisualEditor/User guide]].
More information about [[mediawikiwiki:Help:VisualEditor/VE_as_the_main_editor|preparing for the visual editor is posted here]].
* It's easier to add templates if you've added [[mw:TemplateData|TemplateData]] information.
* Please help translate the user interface and pages about the visual editor. See [[:mw:VisualEditor/TranslationCentral|the visual editor's TranslationCentral]] for general information. To translate the user guide, go to [[mediawikiwiki:Help:VisualEditor/User_guide|the MediaWiki.org page]], and select "{{int:translate-tag-translate-link-desc}}". Your language should be available from the drop-down menu on the right. Once you've done this, you'll see the document in English side by side with any translation work already done in your language. You can add new translations or change old translations. To [https://translatewiki.net/w/i.php?title=Special:Translate&group=ext-visualeditor-0-all&language= translate the user interface], you need to create an account at translatewiki.net. Contact me personally if you need help with that.
* Please let us know if you find any problems. You can report issues in [[phab:|Phabricator, the new bug tracking system]] or on the [[:mw:Topic:St8y4ni42d0vr9cv|central feedback page]] on MediaWiki.org. If you notice major issues affecting your project, please leave a note [[:mw:User talk:Elitre (WMF)|on my talk page]]. In case of emergency (like an unexpected bug causing widespread problems), please contact James Forrester, the product manager, at jforrester@wikimedia.org or on [[:m:IRC|IRC]] in the #mediawiki-visualeditor channel.
<div style="float: right;">''[[m:VisualEditor/Newsletter/Phase 6.1|Wrong target page? Fix it here]] • [[:m:VisualEditor/Newsletter|Sign up for the visual editor's multilingual newsletter]] ''</div>
Thank you, and happy editing! --[[:mw:User:Elitre (WMF)|Elitre (WMF)]] [[:mw:User talk:Elitre (WMF)|(talk)]] 18:20, 15 Καλανταρί 2016 (UTC)
<!-- Message sent by User:Elitre (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Phase_6.1&oldid=14780730 -->
== 2016 WMF Strategy consultation ==
:{{int:Please-translate}}
Hello, all.
The Wikimedia Foundation (WMF) has launched a consultation to help create and prioritize WMF strategy beginning July 2016 and for the 12 to 24 months thereafter. This consultation will be open, on Meta, from 18 January to 26 February, after which the Foundation will also use these ideas to help inform its Annual Plan. (More on our timeline can be found on that Meta page.)
Your input is welcome (and greatly desired) at the Meta discussion, [[:m:2016 Strategy/Community consultation|2016 Strategy/Community consultation]].
Apologies for English, where this is posted on a non-English project. We thought it was more important to get the consultation translated as much as possible, and good headway has been made there in some languages. There is still much to do, however! We created [[:m:2016 Strategy/Translations]] to try to help coordinate what needs translation and what progress is being made. :)
If you have questions, please reach out to me on my talk page or on the strategy consultation's talk page or by email to mdennis@wikimedia.org.
I hope you'll join us! [[:m:User:Mdennis (WMF)|Maggie Dennis]] via [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 19:07, 18 Καλανταρί 2016 (UTC)
<!-- Message sent by User:Mdennis (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:PEarley_(WMF)/Mass_Message_-_large&oldid=15253743 -->
== Pontic is missing ==
Pontic Greek is missing from this page:<br />
https://meta.wikimedia.org/wiki/There_is_also_a_Wikipedia_in_your_language<br />
More than 100 languages are now listed.<br />
Thank you, [[Χρήστες:Varlaam|Varlaam]] ([[Καλάτσεμαν χρήστε:Varlaam|talk]]) 22:17, 30 Καλανταρί 2016 (UTC)
== The visual editor is now active here ==
{| class="wikitable" style="width: 30%;" align="right"
|-
! scope="col" | '''Please translate to Pontic''' ([[:mw:VisualEditor/TranslationCentral|how-to]]; data: January 2016)
! scope="col"| Completion
! scope="col"| Outdated
|-
|[https://translatewiki.net/w/i.php?title=Special:Translate&group=ext-visualeditor-0-all&language=pnt Interface messages*]
|0% [[File:25 percent.svg|alt=Way to go to complete translations!]]
|0% [[File:100 percent.svg|alt=25 to 0% remaining]]
|-
|[https://www.mediawiki.org/w/index.php?title=Special:Translate&group=page-Help%3AVisualEditor%2FUser+guide&language=pnt&filter=%21translated&action=translate User Guide]
|0% [[File:25 percent.svg|alt=Way to go to complete translations!]]
|0% [[File:100 percent.svg|alt=25 to 0% remaining]]
|-
|[https://www.mediawiki.org/w/index.php?title=Special:Translate&group=page-Help%3AVisualEditor%2FFAQ&language=pnt&action=page&filter= FAQ]
|0% [[File:25 percent.svg|alt=Way to go to complete translations!]]
|0% [[File:100 percent.svg|alt=25 to 0% remaining]]
|-
|[https://www.mediawiki.org/w/index.php?title=Special:Translate&group=page-VisualEditor%2FPortal&language=pnt&action=page&filter= Portal]
|0% [[File:25 percent.svg|alt=Way to go to complete translations!]]
|0% [[File:100 percent.svg|alt=25 to 0% remaining]]
|-
|[https://www.mediawiki.org/w/index.php?title=Special:Translate&group=page-VisualEditor%2FPortal%2FTemplateData&language=pnt&action=page&filter= TemplateData information]
|0% [[File:25 percent.svg|alt=Way to go to complete translations!]]
|0% [[File:100 percent.svg|alt=25 to 0% remaining]]
|-
|[https://www.mediawiki.org/w/index.php?title=Special:Translate&group=page-Help%3ATemplateData&language=pnt&action=page&filter= TemplateData help]
|0% [[File:25 percent.svg|alt=Way to go to complete translations!]]
|0% [[File:100 percent.svg|alt=25 to 0% remaining]]
|-
|colspan="3;"|<small>* The interface is hosted at https://translatewiki.net; you'll need an account if you never translated there before. The other pages are at Mediawiki.org, for which you can use your regular Wikipedia account.</small>
|-
|}
Hello again (and again, apologies for using English on this page. {{Int:Please-translate}}. {{Int:Feedback-thanks-title}})
As some of you have noticed, '''this Wikipedia now has [[:mw:VisualEditor/Portal|the visual editor]] ({{int:visualeditor}}) enabled for all users'''. (We planned to do this on 25 January 2016. However, last week, there was an unusual problem with an upgrade to MediaWiki. Thanks for your understanding.) There are now two tabs for editing: "{{int:vector-view-edit}}" and "{{int:visualeditor-ca-editsource}}". Click "{{int:vector-view-edit}}" to use the visual editor. Click "{{int:visualeditor-ca-editsource}}" to edit using wikitext markup.
All edits using the visual editor will be tagged with "{{Int:tag-visualeditor}}" in recent changes, watchlists, and page histories. To access the [[:mw:Help:VisualEditor/User guide|User Guide for the visual editor]], click on the "(?)" icon in its toolbar. If you wish to disable this new system, this can be done under [[Special:Preferences#mw-prefsection-editing|"Editing" in your preferences]].
Please let us know if you find any problems. You can report issues in [[phab:|Phabricator, the new bug tracking system]] or on the [[:mw:Topic:St8y4ni42d0vr9cv|central feedback page]] on MediaWiki.org.
<mark>If you can translate from English into this wiki's language, or know anyone who can, please follow the links on the "translation table" and help your community get the best possible experience when it comes to interface messages and documentation related to the visual editor.</mark> [[:mw:User talk:Elitre (WMF)|Please contact me directly]] whenever you need help!
Happy editing, [[:mw:User:Elitre (WMF)|Elitre (WMF)]] [[:mw:User talk:Elitre (WMF)|(talk)]] 17:45, 1 Κούντουρονος 2016 (UTC)
== New Wikipedia Library Accounts Available Now (March 2016) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''Apologies for writing in English. {{int:Please-translate}}''
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|upright|The TWL OWL says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for free, full-access accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for access to research materials from:
* '''[[w:en:WP:Cambridge|Cambridge University Press]]''' - a major publisher of academic journals and e-books in a variety of subject areas. Access includes both Cambridge Journals Online and Cambridge Books. 25 accounts.
* '''[[w:en:WP:Alexander Street|Alexander Street ''Academic Video Online'']]''' - a large academic video collection good for a wide range of subjects, including news programs (such as PBS and BBC), music and theatre, lectures and demonstrations, and documentaries. 25 accounts.
* '''[[w:en:WP:Baylor|Baylor University Press]]''' - a publisher of academic e-books primarily in religious studies and the humanities. 50 accounts.
* '''[[w:en:WP:Future Science Group|Future Science Group]]''' - a publisher of medical, biotechnological and scientific research. 30 accounts.
* '''[[w:en:WP:Annual Reviews|Annual Reviews]]''' - a publisher of review articles in the biomedical sciences. 100 accounts.
* '''[[w:en:WP:Miramar|Miramar Ship Index]]''' - an index to ships and their histories since the early 19th century. 30 accounts.
'''Non-English'''
*'''[[w:fa:ویکیپدیا:نورمگز|Noormags]]''' - Farsi-language aggregator of academic and professional journals and magazines. 30 accounts.
*'''[[w:ar:ويكيبيديا:مكتبة ويكيبيديا/كتبنا|Kotobna]]''' - Arabic-language ebook publishing platform. 20 accounts.
'''Expansions'''
*'''[[w:en:WP:Gale|Gale]]''' - aggregator of newspapers, magazines and journals. 50 accounts.
*'''[[w:en:WP:Elsevier|Elsevier ScienceDirect]]''' - an academic publishing company that publishes medical and scientific literature. 100 accounts.
Many other partnerships with accounts available are listed on [[w:en:WP:The_Wikipedia_Library/Journals|our partners page]], including [[w:en:WP:Project MUSE|Project MUSE]], [[w:en:WP:De Gruyter|De Gruyter]], [[w:en:WP:EBSCO|EBSCO]], [[w:en:WP:Newspapers.com|Newspapers.com]] and [[w:en:WP:BNA|British Newspaper Archive]]. Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 20:30, 17 Μαρτ 2016 (UTC)
:''You can host and coordinate signups for a Wikipedia Library branch in your own language. Please contact [[m:User:Ocaasi_(WMF)|Ocaasi (WMF)]].''
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Message sent by User:Sadads@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=15424370 -->
== Open Call for Individual Engagement Grants ==
[[File:IEG barnstar 2.png|right|100px]]
{{int:Please-translate}}:
Greetings! The '''[[m:Special:MyLanguage/IEG|Individual Engagement Grants (IEG) program]] is accepting proposals''' until April 12th to fund new tools, research, outreach efforts, and other experiments that enhance the work of Wikimedia volunteers.
Whether you need a small or large amount of funds (up to $30,000 USD), IEGs can support you and your team’s project development time in addition to project expenses such as materials, travel, and rental space.
*[[m:Special:MyLanguage/Grants:IEG#ieg-apply|'''Submit''' a grant request]] or [[m:Special:MyLanguage/Grants:IdeaLab|'''draft''' your proposal]] in IdeaLab
*[[m:Special:MyLanguage/Grants:IdeaLab/Events#Upcoming_events|'''Get help''' with your proposal]] in an upcoming Hangout session
*[[m:Special:MyLanguage/Grants:IEG#ieg-engaging|'''Learn from examples''' of completed Individual Engagement Grants]]
With thanks, [[m:User:I JethroBT (WMF)|I JethroBT (WMF)]] 15:47, 31 Μαρτ 2016 (UTC)
<!-- Message sent by User:I JethroBT (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:I_JethroBT_(WMF)/IEG_2015_Targets&oldid=15490024 -->
== Бюллетень «Википедии на языках России», выпуск #5 (апр'16) / «Wikipedias in the languages of Russia» newsletter, issue #5 (Apr.'16) ==
{{User:Frhdkazan/Wikipedias in the languages of Russia/Newsletter/2016-04-15}}
== Server switch 2016 ==
<div lang="en" dir="ltr" class="mw-content-ltr">
The [[foundation:|Wikimedia Foundation]] will be testing its newest data center in Dallas.
This will make sure Wikipedia and the other Wikimedia wikis can stay online even after a disaster.
To make sure everything is working, the Wikimedia Technology department needs to conduct a planned test. This test will show whether they can reliably switch from one data center to the other. It requires many teams to prepare for the test and to be available to fix any unexpected problems.
They will switch all traffic to the new data center on '''Tuesday, 19 April'''.<br/>
On '''Thursday, 21 April''', they will switch back to the primary data center.
Unfortunately, because of some limitations in [[mw:Manual:What is MediaWiki?|MediaWiki]], all editing must stop during those two switches.
We apologize for this disruption, and we are working to minimize it in the future.
'''You will be able to read, but not edit, all wikis for a short period of time.'''
*You will not be able to edit for approximately 15 to 30 minutes on Tuesday, 19 April and Thursday, 21 April, starting at 14:00 UTC (15:00 BST, 16:00 CEST, 10:00 EDT, 07:00 PDT).
If you try to edit or save during these times, you will see an error message.
We hope that no edits will be lost during these minutes, but we can't guarantee it.
If you see the error message, then please wait until everything is back to normal.
Then you should be able to save your edit.
But, we recommend that you make a copy of your changes first, just in case.
''Other effects'':
*Background jobs will be slower and some may be dropped.
Red links might not be updated as quickly as normal.
If you create an article that is already linked somewhere else, the link will stay red longer than usual.
Some long-running scripts will have to be stopped.
*There will be a code freeze for the week of 18 April.
No non-essential code deployments will take place.
This test was originally planned to take place on March 22.
April 19th and 21st are the new dates.
You can [[wikitech:Switch Datacenter#Schedule for Q3 FY2015-2016 rollout|read the schedule at wikitech.wikimedia.org]].
They will post any changes on that schedule.
There will be more notifications about this.
'''Please share this information with your community.''' /[[m:User:Whatamidoing (WMF)|User:Whatamidoing (WMF)]] ([[m:User talk:Whatamidoing (WMF)|talk]]) 21:07, 17 Απρίλ 2016 (UTC)
</div>
<!-- Message sent by User:Johan (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Tech/Server_switch_2016/Delivery_list&oldid=15533827 -->
== Wikipedia to the Moon ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello! Sorry that this is in English only, but we are using village pump messaging in order to reach as many language communities as possible. Wrong page? Please fix it [[:m:Distribution list/Global message delivery|here]].
This is an invitation to all Wikipedians: Wikimedia Deutschland has been given data space to include Wikipedia content in an upcoming mission to the Moon. (No joke!) We have launched a community discussion about how to do that, because we feel that this is for the global community of editors. Please, '''[[:m:Special:MyLanguage/Wikipedia to the Moon|join the discussion on Meta-Wiki]]''' (and translate this invitation to your language community)! Best, [[:m:Talk:Wikipedia to the Moon|Moon team at Wikimedia Deutschland]] 15:35, 21 Απρίλ 2016 (UTC)
</div>
<!-- Message sent by User:Martin Rulsch (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_Wikipedia_delivery&oldid=15542536 -->
== [[m:Wikipedias in the languages of Russia/Newsletter#2016-05-15|'''Бюллетень «Википедии на языках России», выпуск #6 (май'16) / «Wikipedias in the languages of Russia» newsletter, issue #6 (May.'16)''']] ==
{| border="2" cellspacing="0" cellpadding="4" rules="all" style="margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; font-size:95%; empty-cells:show;
|Уважаемый коллега,
''Большое спасибо всем и каждому, кто вносит свой вклад в развитие [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Разделов Википедии на языках России]].''
В этом выпуске:
* [https://lists.wikimedia.org/pipermail/wikimedia-l/2016-May/084165.html Article Placeholders запущен]: ''[[:wmru:Простейшая работа в Вики-данных|как работать в Викидата]]''
* Трансляция ''[[:wmru:Вики-премия 2016|Вики-премии 2016]]'' с 11:00 мск 16 мая.
* Допустимо ли ''[[m:User talk:Frhdkazan#ru - Проект текста обращения к стюардам|копивио в суверенной ТатВики]]''...
* Всемирный курултай башкир ''[[:n:ru:Администратор Башкирской Википедии награжден медалью Всемирного курултая башкир|наградил бюрократа БашВики]]''.
* ''[[:wmru:Финно-угорский вики-семинар 2016/Итоги|Итоги]]'' финно-угорского викисеминара 2016.
* [[m:Wikipedias in the languages of Russia/Tables/ru|Текущие показатели]] проектов и [[m:Wikipedias_in_the_languages_of_Russia/Trends#2016-03|аналитическая таблица за март 2016]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Подписаться/Отписаться]]. ''Готовы поделиться своими новостями или опытом?'' <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|добавляйте ссылку в следующий выпуск]]</u>!
|
Dear colleague,
''Great thanks go to each and everyone contributing into developing [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Wikipedias in the languages of Russia]]''. In this issue:
* [https://lists.wikimedia.org/pipermail/wikimedia-l/2016-May/084165.html Article Placeholders launched]: ''[[:wmru:Простейшая работа в Вики-данных|simplest work in Wikidata]]''
* ''[[:wmru:Вики-премия 2016|Wiki-Award 2016]]'' broadcast since 11:00 CET on May 16.
* ''[[m:User talk:Frhdkazan#en - Draft Steward Request for Comment|Copyvio in sovereign ttwiki]]'': how acceptable?...
* World Kurultay of Bashkirs ''[[:n:ru:Администратор Башкирской Википедии награжден медалью Всемирного курултая башкир|awarded bawiki bureaucrat]]''.
* ''[[:wmru:Финно-угорский вики-семинар 2016/Итоги|Results]]'' of Finno-Ugric Wiki-seminar 2016.
* [[m:Wikipedias in the languages of Russia/Tables|Current Stats]] and [[m:Wikipedias_in_the_languages_of_Russia/Trends#2016-03|March 2016 analytical table]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Subscribe/Unsubscribe]]. ''Ready to share own news or valuable experience?'' Add a link into <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|the next month issue]]</u>!
|}</div>--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|talk]]) 18:34, 15 Καλομηνά 2016 (UTC)
== Wikipedia to the Moon: voting has begun ==
Hello, after six weeks of community discussion about [https://moon.wikimedia.org Wikipedia to the Moon], there are now 10 different proposals for content for the mission. Starting today, [[:m:Special:MyLanguage/Wikipedia_to_the_Moon/Voting|you can vote for them on Meta-Wiki]], and decide what we will work on: a Wikipedia canon, different lists, the Moon in 300 languages, an astronomy editathon, featured articles, articles about technology, endangered things, or DNA-related topics. You can even vote against community involvement. Voting is open until 24 June. Sorry that this message is again in English only, but we are using village pumps to reach as many communities as possible, so that everyone knows they can vote. Best, [[:m:Special:MyLanguage/Wikipedia to the Moon/About|Moon team at Wikimedia Deutschland]] 15:31, 10 Κερασινού 2016 (UTC)
<!-- Message sent by User:Martin Rulsch (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_Wikipedia_delivery&oldid=15542536 -->
== Бюллетень «Википедии на языках России», выпуск #7 (июнь'16) / «Wikipedias in the languages of Russia» newsletter, issue #7 (June'16) ==
[[m:Wikipedias in the languages of Russia/Newsletter#2016-06-15|'''Бюллетень «Википедии на языках России», выпуск #7 (июнь'16) / «Wikipedias in the languages of Russia» newsletter, issue #7 (June'16)''']]
{| border="2" cellspacing="0" cellpadding="4" rules="all" style="margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; font-size:95%; empty-cells:show;
|Уважаемый коллега,
''Большое спасибо всем и каждому, кто вносит свой вклад в развитие [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Разделов Википедии на языках России]].'' В этом выпуске:
* Повышение ценности малого языкового раздела Википедии
В добавок к тому, что уже опубликовал в рамках [[:wmru:Финно-угорский вики-семинар 2016/Программа/Доклады/Википедии на языках России сегодня и завтра|постерного доклада на Финноугорском викисеминаре 2016]], хочу поделиться следующей находкой и пригласить и Вас пользоваться ей – для себя я её назвал «Интервикификацией»:
Статья, посвящённая каждому дню года обычно имеет раздел «Праздники и памятные даты» и мы, несомненно, гордимся тем, что знаем о событиях, важных для наших соседей по планете и в мире Википедии. В татароязычном разделе Википедии я уже некоторое время как '''[[:tt:9 июнь#Дөньяви бәйрәмнәр һәм истәлекле вакыйгалар|собираю подобную информацию]]''' из соседних разделов, снабжаю её наименованием на соответствующем языке (которую подкрепляю ссылкой на статью об этом мероприятии в соответствующем разделе) и ссылками на внешний авторитетный источник <small>(особенно при отсутствии таковых в статье в соответствующем языковом разделе или даже отсутствии самой статьи – например лишь упоминание события на [[:pl:9 czerwca#Święta]] или [[:es:9 de junio#Celebraciones]])</small>.
При этом я соблюдаю рекомендации Павла Львовича Каганера, что я сам должен прочитать материал в соответствующей внешней ссылке, если таковая является обязательной <small>(в отличие от однозначных случаев типа [[:en:Public holidays in Åland|Autonomy Day]], [[:ru:Праздники Аландских островов|День автономии]], [[:sv:Ålands självstyrelsedag|Ålands självstyrelsedag]], [[:fi:Ahvenanmaan maakunta#Itsehallinnon aika|Itsehallintopäivä]])</small>
На соответствующих страницах ТатВики конечно же пока не отражаются все праздники и памятные даты по всем дням всех стран и народов, но то, что я собрал и подтвердил за последние два года можете смело забирать и обогащать свои разделы. Так даже самый маленький раздел может ощутить свою подлинную интернациональность, а его читатели – его значимость и ценность...
* [[m:Wikipedias in the languages of Russia/Tables/ru|Текущие показатели]] проектов.
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Подписаться/Отписаться]]. ''Готовы поделиться своими новостями или опытом?'' <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|добавляйте ссылку в следующий выпуск]]</u>!
|
Dear colleague,
''Great thanks go to each and everyone contributing into developing [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Wikipedias in the languages of Russia]]''. In this issue:
* Increasing utility of Wikipedias in small languages
I'd like to share one more tool left unmentioned in [[:wmru:Финно-угорский вики-семинар 2016/Программа/Доклады/Википедии на языках России сегодня и завтра|my poster presentation @ Finno-Ugric Wikiseminar 2016]] & invite you to start using it – I've called it «Interwikification»:
An article dedicated to a specific day of the year usually has «Holidays and memorable days» section and we all are certainly proud to know about events special to our neighbors on the planet who contribute into Wikipedia. It's been a while since I've started visiting neighboring Wikipedias to '''[[:tt:9 июнь#Дөньяви бәйрәмнәр һәм истәлекле вакыйгалар|gathering such info]]''' for Tatar Wikipedia, providing it with original language title (linking to a specific article in respective language), as well as links to external respectable sources <small>(especially if such links/article are missing in respective Wikipedia – say the event is just mentioned at [[:pl:9 czerwca#Święta]] or [[:es:9 de junio#Celebraciones]])</small>.
At the same time I follow Paul Kaganer's (User:Kaganer) recommendation that I must read the material in the external link myself, since Wikipedia itself is not always reliable <small>(except probably such cases as [[:en:Public holidays in Åland|Autonomy Day]], [[:ru:Праздники Аландских островов|День автономии]], [[:sv:Ålands självstyrelsedag|Ålands självstyrelsedag]], [[:fi:Ahvenanmaan maakunta#Itsehallinnon aika|Itsehallintopäivä]])</small>
Respective ttwiki pages certainly do not reflect all special dates of all countries, peoples and social groups, but feel free to use what I've gathered over the last two years to enrich your Wikipedias. Thus even very small language Wikipedia becomes truly international, helping its readers to feel the importance of their language...
* [[m:Wikipedias in the languages of Russia/Tables|Current Stats]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Subscribe/Unsubscribe]]. ''Ready to share own news or valuable experience?'' Add a link into <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|the next month issue]]</u>!
|}</div> --[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|talk]]) 10:53, 14 Κερασινού 2016 (UTC)
== Compact Language Links enabled in this wiki today ==
{{int:Please-translate}}
<div lang="en" dir="ltr" class="mw-content-ltr">
[[File:Compact-language-links-list.png|thumb|Screenshot of Compact Language Links interlanguage list]]
[[:mw:Universal_Language_Selector/Compact_Language_Links|Compact Language Links]] has been available as a beta-feature on all Wikimedia wikis since 2014. With compact language links enabled, users are shown a much shorter list of languages on the interlanguage link section of an article (see image). Based on several factors, this shorter list of languages is expected to be more relevant for them and valuable for finding similar content in a language known to them. More information about compact language links can be found in [[:mw:Universal_Language_Selector/Compact_Language_Links|the documentation]].
From today onwards, compact language links has been enabled as the default listing of interlanguage links on this wiki. Using the button at the bottom, you will be able to see a longer list of all the languages the article has been written in. The setting for this compact list can be changed by using the checkbox under ''User Preferences -> Appearance -> Languages''
The compact language links feature has been tested extensively by the Wikimedia Language team, which developed it. However, in case there are any problems or other feedback please let us know on the [[:mw:Talk:Universal_Language_Selector/Compact_Language_Links|project talk page]] or on this discussion thread. It is to be noted that on some wikis the presence of an existing older gadget that was used for a similar purpose may cause an interference for compact language list. We would like to bring this to the attention of the admins of this wiki. Full details are on [[phab:T131455|this phabricator ticket]] (in English).
Due to the large scale enablement of this feature, we have had to use [[:m:Global_message_delivery|MassMessage]] for this announcement and as a result it is only written in English. We will really appreciate if this message can be translated for other users of this wiki. Thank you. On behalf of the Wikimedia Language team: [[:mw:User:Runab_WMF|Runa Bhattacharjee (WMF)]] ([[mw:User talk:Runab_WMF|talk]]) 07:04, 24 Κερασινού 2016 (UTC)
</div>
<!-- Message sent by User:Runab WMF@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/ULS_Compact_Links/24_June&oldid=15720673 -->
== Wikipedia to the Moon: invitation to edit ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Three weeks ago, you were invited to vote on how to take Wikipedia articles to the Moon. Community voting is over and the winning idea is to send all ‘’featured articles and lists’’ to the Moon. This decision means that, starting today, Wikipedians from all language communities are warmly invited to intensively work on their best articles and lists, and submit them to Wikipedia to the Moon. The central site to coordinate between communities will be Meta-Wiki. You will find an [[m:Wikipedia to the Moon/Working|overview and more information there]]. Hopefully, we will be able to represent as many languages as possible, to show Wikipedia’s diversity. Please feel kindly invited to edit on behalf of your community and tell us about your work on featured content!
Best, [[:m:Special:MyLanguage/Wikipedia to the Moon/About|Moon team at Wikimedia Deutschland]] 14:10, 1 Χορτοθερί 2016 (UTC)
</div>
<!-- Message sent by User:Lydia Pintscher (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_Wikipedia_delivery&oldid=15542536 -->
== Editing News #2—2016 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''[[m:Special:MyLanguage/VisualEditor/Newsletter/2016/June|Read this in another language]] • [[:m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]''
<div style="float:right;width:230px;{{#switch:ltr|rtl=float:left;margin-left:0;|#default=float:right;margin-right:0;}}margin-left:1em;border-style:solid;border-width:1px;padding:1em;">
[[File:VisualEditor-logo.svg|200px|center|alt=VisualEditor]]'''Did you know?'''
<div class="thumbcaption" style="font-size: 90%;">
It's quick and easy to insert a references list.
[[File:VisualEditor References List Insert Menu-en.png|alt=Screenshot showing a dropdown menu with many items|center|frameless|150px]]
Place the cursor where you want to display the references list (usually at the bottom of the page). Open the "{{int:visualeditor-toolbar-insert}}" menu and click the "{{int:cite-ve-dialogbutton-referenceslist-tooltip}}" icon (three books).
If you are using several groups of references, which is relatively rare, you will have the opportunity to specify the group. If you do that, then only the references that belong to the specified group will be displayed in this list of references.
Finally, click "{{int:visualeditor-dialog-action-insert}}" in the dialog to insert the {{int:cite-ve-dialogbutton-referenceslist-tooltip}}. This list will change as you add more footnotes to the page.
You can read and help translate [[:mw:Special:MyLanguage/VisualEditor/User guide|the user guide]], which has more information about how to use the visual editor.</div></div>
Since the last newsletter, the [[:mw:Special:MyLanguage/VisualEditor|VisualEditor Team]] has fixed many bugs. Their workboard is available [[phab:project/board/483/|in Phabricator]]. Their [[:mw:VisualEditor/Current_priorities|current priorities]] are improving support for Arabic and Indic scripts, and adapting the visual editor to the needs of the Wikivoyages and Wikisources.
=== Recent changes ===
The visual editor is now available to all users at most [[Wikivoyage:|Wikivoyages]]. It was also enabled for all contributors at the French Wikinews.
The '''[[:mw:Special:MyLanguage/VisualEditor/Single edit tab|single edit tab]]''' feature combines the "{{int:vector-view-edit}}" and "{{int:visualeditor-ca-editsource}}" tabs into a single "{{int:vector-view-edit}}" tab. It has been deployed to several Wikipedias, including Hungarian, Polish, English and Japanese Wikipedias, as well as to all Wikivoyages. At these wikis, you can change your settings for this feature in the "{{int:prefs-editing}}" tab of [[Special:Preferences]]. The team is now reviewing the feedback and considering ways to improve the design before rolling it out to more people.
=== Future changes ===
The "{{int:Savearticle}}" button will say "{{int:Publishpage}}". This will affect both the visual and wikitext editing systems. More [[M:Editing/Publish|information is available on Meta]].
The visual editor will be offered to all editors at the remaining [[:mw:VisualEditor/Rollouts|"Phase 6" Wikipedias]] during the next few months. The developers want to know whether typing in your language feels natural in the visual editor. Please post your comments and the language(s) that you tested at [[:mw:Topic:St8y4ni42d0vr9cv|the feedback thread on mediawiki.org]]. This will affect several languages, including: [[:w:ar: |'''Arabic''']], [[:w:hi: |'''Hindi''']], [[:w:th: |'''Thai''']], [[:w:ta: |'''Tamil''']], [[:w:mr: |'''Marathi''']], [[:w:ml: |'''Malayalam''']], [[:w:ur: |'''Urdu''']], [[:w:fa: |'''Persian''']], [[:w:bn: |'''Bengali''']], [[:w:as: |'''Assamese''']], [[:w:arc: |'''Aramaic''']] and others.
The team is working with the volunteer developers who power Wikisource to provide the visual editor there, for opt-in testing right now and eventually for all users. ([[phab:T138966|T138966]])
The team is working on a modern wikitext editor. It will look like the visual editor, and be able to use the citoid service and other modern tools. This new editing system may become available as a Beta Feature on desktop devices around September 2016. You can read about this project in a [[mediawikiwiki:Special:MyLanguage/VisualEditor/Roadmap/Update_2016-06-23|general status update on the Wikimedia mailing list]].
=== Let's work together ===
* Do you teach new editors how to use the visual editor? Did you help [[:mw:Citoid/Enabling Citoid on your wiki|set up the Citoid automatic reference feature for your wiki]]? Have you written or imported [[:mw:Special:MyLanguage/Help:TemplateData|TemplateData]] for your most important citation templates? <mark>Would you be willing to help new editors and small communities with the visual editor? Please sign up for the new [[:mw:Help:VisualEditor/Community Taskforce|'''VisualEditor Community Taskforce''']].</mark>
* Learn how to improve the "automagical" [[:mw:citoid|citoid]] referencing system in the visual editor, by creating [[w:en:Zotero|Zotero]] translators for popular sources in your language! Watch the [[Mw:Citoid/Zotero's Tech Talk|Tech Talk by Sebastian Karcher]] for more information.
If you aren't reading this in your preferred language, then please help us with translations! Subscribe to the [[mail:translators-l|Translators mailing list]] or [https://meta.wikimedia.org/w/index.php?title=User_talk:Elitre_(WMF)&action=edit§ion=new contact us] directly, so that we can notify you when the next issue is ready. {{int:Feedback-thanks-title}}
</div> [[:m:User:Elitre (WMF)]], 17:20, 3 Χορτοθερί 2016 (UTC)
<!-- Message sent by User:Elitre (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=15741003 -->
== Open call for Project Grants ==
[[File:IEG barnstar 2.png|right|100px]]
{{int:Please-translate}}:
:Greetings! The '''[[m:Special:MyLanguage/Grants:Project|Project Grants program]] is accepting proposals''' from July 1st to August 2nd to fund new tools, research, offline outreach (including editathon series, workshops, etc), online organizing (including contests), and other experiments that enhance the work of Wikimedia volunteers.
:Whether you need a small or large amount of funds, Project Grants can support you and your team’s project development time in addition to project expenses such as materials, travel, and rental space.
:*[[m:Special:MyLanguage/Grants:Project/Apply|'''Submit''' a grant request]] or [[m:Special:MyLanguage/Grants:IdeaLab|'''draft''' your proposal]] in IdeaLab
:*[[m:Special:MyLanguage/Grants:IdeaLab/Events#Upcoming_events|'''Get help with your proposal''']] in an upcoming Hangout session
:*'''Learn from examples''' of completed [[m:Special:MyLanguage/Grants:IEG#ieg-engaging|Individual Engagement Grants]] or [[m:Special:MyLanguage/Grants:PEG/Requests#Grants_funded_by_the_WMF_in_FY_2015.E2.80.9316|Project and Event Grants]]
:Also accepting candidates to [[m:Special:MyLanguage/Grants:Project/Quarterly/Committee|join the Project Grants Committee through July 15.]]
:With thanks, [[m:User:I JethroBT (WMF)|I JethroBT (WMF)]] 15:25, 5 Χορτοθερί 2016 (UTC)
<!-- Message sent by User:I JethroBT (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:I_JethroBT_(WMF)/IEG_2015_Targets&oldid=15504704 -->
== ΣΗΜΑΝΤΙΚΟ: Επιθεώρηση δραστηριότητας διαχειριστών ==
Χαίρετε. Μια νέα πολιτική σχετικά με την αφαίρεση "ειδικών δικαιωμάτων" (διαχειριστή, γραφειοκράτη, κλπ) πρόσφατα υιοθετήθηκε από τη [[:m:Requests for comment/Activity levels of advanced administrative rights holders|συναίνεση της παγκόσμιας κοινότητας]] (η κοινότητά σας έλαβε ειδοποίηση για την συζήτηση). Σύμφωνα με αυτή την πολιτική, οι [[:m:stewards|επίτροποι]] επιθεωρούν την δραστηριότητα των διαχειριστών στα μικρότερα wiki. Σύμφωνα με όσα ξέρουμε, το wiki σας δεν έχει μια τυπική διαδικασία για την αφαίρεση "ειδικών δικαιωμάτων" από ανενεργούς λογαριασμούς. Αυτό σημαίνει ότι οι επίτροποι θα φροντίσουν για αυτό εδώ σύμφωνα με την [[:m:Admin activity review|επιθεώρηση δραστηριότητας διαχειριστών]].
Έχουμε διαπιστώσει ότι οι παρακάτω χρήστες πληρούν τα κριτήρια αδράνειας (χωρίς επεξεργασίες και χωρίς καταγραμμένες ενέργειες για περισσότερο από 2 χρόνια):
#Makedonier (διαχειριστής)
Αυτοί οι χρήστες θα λάβουν σύντομα μια ειδοποίηση, ζητώντας τους να ξεκινήσουν μια συζήτηση στην κοινότητα αν θέλουν να διατηρήσουν κάποια ή όλα τα δικαιώματά τους. Αν οι χρήστες δεν απαντήσουν, τότε τα ειδικά δικαιώματά τους θα αφαιρεθούν από τους επιτρόπους.
Ωστόσο, αν εσείς ως μια κοινότητα θα θέλατε να δημιουργήσετε τη δική της διαδικασία επιθεώρησης δραστηριότητας παραγκωνίζοντας την παγκόσμια, θέλετε να λάβετε μια άλλη απόφαση σχετικά με αυτούς τους ανενεργούς κατόχους δικαιωμάτων, ή έχετε ήδη μια πολιτική που δεν βρήκαμε, τότε παρακαλείσθε να ενημερώσετε τους [[:m:Stewards' noticeboard|επιτρόπους στο Meta-Wiki]] έτσι ώστε να ξέρουμε να μην προχωρήσουμε με την επιθεώρηση δικαιωμάτων για το wiki σας. Ευχαριστώ, '''[[User:Rschen7754|Rs]][[User talk:Rschen7754|chen]][[Special:Contributions/Rschen7754|7754]]''' 04:55, 8 Χορτοθερί 2016 (UTC)
== Save/Publish ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
The [[:mw:Editing|Editing]] team is planning to change the name of the [https://translatewiki.net/w/i.php?title=Special:Translations&namespace=8&message=Savearticle “<bdi>{{int:Savearticle}}</bdi>”] button to [https://translatewiki.net/w/i.php?title=Special:Translations&namespace=8&message=Publishpage “'''<bdi>{{int:Publishpage}}</bdi>'''”] and [https://translatewiki.net/w/i.php?title=Special:Translations&namespace=8&message=Publishchanges “'''<bdi>{{int:Publishchanges}}</bdi>'''”]. “<bdi>{{int:Publishpage}}</bdi>” will be used when you create a new page. “<bdi>{{int:Publishchanges}}</bdi>” will be used when you change an existing page. The names will be consistent in all editing environments.[https://phabricator.wikimedia.org/T131132][https://phabricator.wikimedia.org/T139033]
This change will probably happen during the week of 30 August 2016. The change will be announced in [[:m:Special:MyLanguage/Tech/News|Tech News]] when it happens.
If you are fluent in a language other than English, please check the status of translations at translatewiki.net for [https://translatewiki.net/w/i.php?title=Special:Translations&namespace=8&message=Publishpage “'''<bdi>{{int:Publishpage}}</bdi>'''”] and [https://translatewiki.net/w/i.php?title=Special:Translations&namespace=8&message=Publishchanges “'''<bdi>{{int:Publishchanges}}</bdi>'''”].
The main reason for this change is to avoid confusion for new editors. Repeated user research studies with new editors have shown that some new editors believed that [https://translatewiki.net/w/i.php?title=Special:Translations&namespace=8&message=Savearticle “<bdi>{{int:Savearticle}}</bdi>”] would save a private copy of a new page in their accounts, rather than permanently publishing their changes on the web. It is important for this part of the user interface to be clear, since it is difficult to remove public information after it is published. We believe that the confusion caused by the “<bdi>{{int:Savearticle}}</bdi>” button increases the workload for experienced editors, who have to clean up the information that people unintentionally disclose, and report it to the functionaries and stewards to suppress it. Clarifying what the button does will reduce this problem.
Beyond that, the goal is to make all the wikis and languages more consistent, and some wikis made this change many years ago. The [[:m:Legal|Legal team]] at the Wikimedia Foundation supports this change. Making the edit interface easier to understand will make it easier to handle licensing and privacy questions that may arise.
Any help pages or other basic documentation about how to edit pages will also need to be updated, on-wiki and elsewhere. On wiki pages, you can use the wikitext codes <code><nowiki>{{int:Publishpage}}</nowiki></code> and <code><nowiki>{{int:Publishchanges}}</nowiki></code> to display the new labels in the user's preferred language. For the language settings in [[Special:Preferences|your account preferences]], these wikitext codes produce “<bdi>{{int:Publishpage}}</bdi>” and “<bdi>{{int:Publishchanges}}</bdi>”.
Please share this news with community members who teach new editors and with others who may be interested.
</div> [[m:User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[m:User talk:Whatamidoing (WMF)|talk]]) 18:04, 9 Aλωναρί 2016 (UTC)
<!-- Message sent by User:Quiddity (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=15790914 -->
==Wikipedia to the Moon working phase==
Dear Pontic Wikipedia language community,
First of all, I am sorry to write this in English.
You may already have heard about [[:meta:Wikipdia_to_the_Moon|Wikipedia to the Moon]]: A team of scientists called the “PT Scientists” are going to send a space craft to the moon in 2017 and they want to take Wikipedia along with them. Because Wikipedia is so big, we cannot send all of it to the moon. That is why the international Wikipedia-community has voted to send all “Featured Articles and Featured Lists“ from all languages in Wikipedia.
[[:en:Wikipedia:Featured_articles|“Featured Articles“]] is a category in many language versions of Wikipedia that collects the very best articles in that language. Your community does not currently have a „Featured Articles“ category. Ideally, we want to take every language on Wikipedia to the moon and we also want to take the best articles in your language. That is why we would like ''you'' to tell us what the very best articles in your language are.
There are two ways you could do this:
:1) You could introduce the categories “Featured Article” and “Featured List” in your language version of Wikipedia and vote for the best articles and put them in the category. We will take every article that is tagged as a “Featured Article” or a “Featured List” to the moon
:2) You could vote for the best articles in your language version of Wikipedia and put them all on one a new Wikipedia page. If you let us know where we can find that list [[:meta:Wikipedia_to_the_Moon/Working|here]], we will also take the articles to the moon.
The deadline for Wikipedia to the Moon is 31 October 2016. After that date, we will put all the Featured Articles and Lists onto a special disc and give it to the “PT Scientists.” They will take the Wikipedia articles into space next year.
--[[Χρήστες:Denis Schroeder (WMDE)|Denis Schroeder (WMDE)]] ([[Καλάτσεμαν χρήστε:Denis Schroeder (WMDE)|talk]]) 14:53, 17 Aλωναρί 2016 (UTC)
== New Wikipedia Library accounts available now (August 2016) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|upright|The TWL OWL says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for free, full-access, accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|publisher donation program]]. You can now sign up for new accounts and research materials from:
* '''[[w:de:Wikipedia:Nomos|Nomos]]''' – Primarily German-language publisher of law and social sciences books and journals - 25 accounts
* '''[[w:en:Wikipedia:World Scientific|World Scientific]]''' – Scientific, technical, and medical journals - 50 accounts
* '''[[w:en:Wikipedia:Edinburgh University Press|Edinburgh University Press]]''' – Humanities and social sciences journals - 25 accounts
* '''[[w:en:Wikipedia:American Psychological Association|American Psychological Association]]''' – Psychology books and journals - 10 accounts
* '''[[w:en:Wikipedia:Emerald|Emerald]]''' – Journals on a range of topics including business, education, health care, and engineering - 10 accounts
Many other partnerships with accounts available are listed on [[m:The Wikipedia Library/Databases|our partners page]], including [[w:en:WP:Project MUSE|Project MUSE]], [[w:en:WP:EBSCO|EBSCO]], [[w:de:WP:DeGruyter|DeGruyter]], [[w:en:WP:Gale|Gale]] and [[w:en:WP:Newspaperarchive.com|Newspaperarchive.com]].
Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 18:38, 30 Aλωναρί 2016 (UTC)
:''You can host and coordinate signups for a Wikipedia Library branch in your own language! Please contact [[m:User:Ocaasi_(WMF)|Ocaasi (WMF)]].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Message sent by User:Samwalton9@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=15804509 -->
== '''Бюллетень «Википедии на языках России», выпуск #8 (сентябрь'16) / «Wikipedias in the languages of Russia» newsletter, issue #8 (September '16)''' ==
[[m:Wikipedias in the languages of Russia/Newsletter#2016-09-03|'''Бюллетень «Википедии на языках России», выпуск #8 (сентябрь'16) / «Wikipedias in the languages of Russia» newsletter, issue #8 (September '16)''']]
{| border="2" cellspacing="0" cellpadding="4" rules="all" style="margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; font-size:95%; empty-cells:show;
|Уважаемый коллега,
''Большое спасибо всем и каждому, кто вносит свой вклад в развитие [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Разделов Википедии на языках России]].'' </br>Поздравляем всех с началом очередного учебного года!</br>
В этом выпуске:
* 11.09-11.10.2016 в [[:w:ru:Башкирская Википедия|башвики]] проходит [[:w:ru:Вики-марафон|Вики-марафон]] «[[:w:ba:Проект:Башҡортостан айлығы|Месячник Башкортостана]]».
* 23-26.09.2016 в Ижевске пройдёт «[[:wmru:Уральский_вики-семинар_2016|Уральский вики-семинар 2016]]».
* Открыта [[:w:wmru:Вики-конференция_2016/Участники|регистрация участников]] на Х международную [[:w:wmru:Вики-конференция_2016|'''Вики-конференцию 2016''']], которая в этом году пройдёт 1-2.10.2016 года в Санкт-Петербурге. Ежегодный форум российских волонтеров посвящён развитию проектов Викимедиа на языках народов России, а также проблемам свободного создания и распространению знаний в целом. Расходы на проезд и проживание производится за счет собственных средств, средств спонсоров, и при соответствии определенным критериям, можно просить стипендию по грантовой программе «[[:m:Grants:TPS|Travel & Participation Support]]» Фонда Викимедиа, или региональных чаптеров.
* 1-30.11.2016 года пройдёт ежегодный международный Вики-марафон «[[:w:ru:Проект:Месяц Азии|Месяц Азии]]». В этом году от нас также подтвердили участие [[:w:av:Проект:Азиялъул моцІ|аварский]] и [[:w:ba:Проект:Википедияла Азия айлығы|башкирский]] разделы.
* [[:m:Wikimedians of Bashkortostan User Group|Викимедийцы Башкортостана]] 15-17 июля осуществили [[:w:ba:Википедия:Вики-саралар/Вики-Йәйләү 2016|вики-экспедицию в Бурзянский район]]. На территории [[:w:ru:Шульган-Таш (заповедник)|Шульган-Ташского заповедника]] были посещены места, упоминающиеся в башкирском эпосе «[[:w:ru:Урал-батыр|Урал батыр]]» ([[:w:ru:Капова пещера|Капова пещера]], озеро Йылкысыккан), местный музей [[:w:ru:Бортевое пчеловодство|бортевого пчеловодства]]; проведены дискуссии, теоретические и практические занятия в формате [[:wmru:Вики-семинар|вики-семинара]]. См. фотоотчёт на [[commons:Category:Wiki-Yäyläü2016 Şülgäntaş|Викискладе]].
* [[m:Wikipedias in the languages of Russia/Tables/ru|Текущие показатели]] проектов и [[m:Wikipedias_in_the_languages_of_Russia/Trends|аналитика]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Подписаться/Отписаться]]. ''Готовы поделиться своими новостями или опытом?'' <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|добавляйте ссылку в следующий выпуск]]</u>!
|
Dear colleague,
''Great thanks go to each and everyone contributing into developing [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Wikipedias in the languages of Russia]]''.</br>
Our congratulations & best wishes on the occasion of a New School Year!</br>In this issue:
* On 11.09-11.10.2016 our BashWiki colleagues organize «[[:w:ba:Проект:Башҡортостан айлығы|Bashkortostan Month]]» [[:w:en:Edit-a-thon|Edit-a-thon]].
* On 23-26.09.2016 Izhevsk will host «[[:wmru:Уральский_вики-семинар_2016|Ural Wiki-Seminar 2016]]».
* On 1-2.10.2016 Saint-Petersburg will host Хth International [[:w:wmru:Вики-конференция_2016|'''Wiki-Conference 2016''']]. Participant registration for this annual forum of Russian volunteers dedicated to developing Wikimedia projects in the languages of Russia, as well as overall free creation and distribution of knowledge is now [[:w:wmru:Вики-конференция_2016/Участники|officially open]]. Travel and lodging costs are born by participants, sponsors, and regional chapter or Wikimedia Foundation Grants, such as «[[:m:Grants:TPS|Travel & Participation Support]]».
* Annual International «[[:m:Wikipedia Asian Month|Wikipedia Asian Month]]» Edit-a-thon will take place on 1-30.11.2016. This year, Team Russia's [[:w:ru:Проект:Месяц Азии|team leader]] efforts are confirmed to be supported by [[:w:av:Проект:Азиялъул моцІ|Avar]] и [[:w:ba:Проект:Википедияла Азия айлығы|Bashkir]] sections.
* On 15-17.07.2016 [[:m:Wikimedians of Bashkortostan User Group|Wikimedians of Bashkortostan]] have organized [[:w:ba:Википедия:Вики-саралар/Вики-Йәйләү 2016|Wiki-Expedition to Burzyansky District]]. On top of visiting [[:w:en:Kapova Cave|Kapova Cave]] & Jylqysyqqan lake, mentioned in Bashkir epic poem «[[:w:en:Ural-batyr|Ural-batyr]]», participants also learned about local [[:w:en:Honey hunting|honey hunting]] traditions in [[:w:en:Shulgan-Tash Nature Reserve|Shulgan-Tash Nature Reserve]]'s dedicated museum, made Wiki-Seminar style presentations, held discussions and engaged in practical editing sessions. See photo-report in [[commons:Category:Wiki-Yäyläü2016 Şülgäntaş|Wikimedia Commons]].
* [[m:Wikipedias in the languages of Russia/Tables|Current Stats]] and [[m:Wikipedias_in_the_languages_of_Russia/Trends|analytics]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Subscribe/Unsubscribe]]. ''Ready to share own news or valuable experience?'' Add a link into <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|the next month issue]]</u>!
|}</div>
--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|talk]]) 10:13, 3 Σταυρί 2016 (UTC)
== RevisionSlider ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
From September 13th on, [[mw:Special:MyLanguage/Extension:RevisionSlider|RevisionSlider]] will be available as a [[mw:Special:MyLanguage/Beta Features|beta feature]] in your wiki. The RevisionSlider adds a slider view to the diff page, so that you can easily move between revisions. The feature fulfills a wish from the [[m:WMDE Technical Wishes|German Community’s Technical Wishlist]]. Everyone is invited to test the feature and we hope that it will serve you well in your work! </div> [[user:Birgit Müller (WMDE)|Birgit Müller (WMDE)]] 15:08, 12 Σταυρί 2016 (UTC)
<!-- Message sent by User:Birgit Müller (WMDE)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_2&oldid=15903627 -->
== Grants to improve your project ==
''{{int:Please-translate}}:''
Greetings! The [[:m:Grants:Project|Project Grants program]] is currently accepting proposals for funding. There is just over a week left to submit before the October 11 deadline. If you have ideas for software, offline outreach, research, online community organizing, or other projects that enhance the work of Wikimedia volunteers, start your proposal today! Please encourage others who have great ideas to apply as well. Support is available if you want help turning your idea into a grant request.
*'''[[:m:Grants:Project/Apply|Submit a grant request]]'''
*'''Get help''': In [[:m:Grants:IdeaLab|IdeaLab]] or an upcoming [[:m:Grants:Project#Upcoming_events|Hangout session]]
*'''Learn from examples''' of completed [[:m:Grants:IEG#ieg-engaging|Individual Engagement Grants]] or [[:m:Grants:PEG/Requests#Grants_funded_by_the_WMF_in_FY_2015.E2.80.9316|Project and Event Grants]]
[[m:User:I JethroBT (WMF)|I JethroBT (WMF)]] ([[m:User talk:I JethroBT (WMF)|talk]]) 20:11, 30 Σταυρί 2016 (UTC)
<!-- Message sent by User:I JethroBT (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:I_JethroBT_(WMF)/IEG_2015_Targets&oldid=15939807 -->
== [[m:Wikipedias in the languages of Russia/Newsletter#2016-10-03|'''Бюллетень «Википедии на языках России» / «Wikipedias in the languages of Russia» newsletter''' - #9 (окт./Oct'16)''']] ==
{| border="2" cellspacing="0" cellpadding="4" rules="all" style="margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; font-size:95%; empty-cells:show;
|Уважаемый коллега,
''Большое спасибо всем и каждому, кто вносит свой вклад в развитие [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Разделов Википедии на языках России]].''</br>
В этом выпуске:
* Викиданные: перечень элементов для перевода полей Обозначение и Описание – ''[[d:User:Drbug/list|в перечне языков]]'' щёлкаете ссылку на нужный, внизу открывшегося окошечка жмёте кнопку "'''> Run'''", открываете элементы из полученного списка и правите/переводите эти два поля.
* [//meta.wikimedia.org/w/index.php?title=Requests_for_new_languages/Wikipedia_Livvi-Karelian&diff=15935356&oldid=15918602 Одобрено] создание раздела Википедии ''[[m:incubator:Wp/olo|на ливвиковском диалекте]]'' карельского языка!
* Сообщества разделов Википедии на языках народов России ''[[m:User:Frhdkazan/WCR2016|были упомянуты]]'' на пленарных сессиях [[wmru:Уральский_вики-семинар_2016/Программа|Уральского викисеминара]] в Ижевске и [[wmru:Вики-конференция 2016/Программа|Всероссийской вики-конференции 2016]] в Санкт-Петербурге.
* Сентябрьские новости о коллегах за рубежом: [https://www.theguardian.com/culture/2016/sep/02/ngean-noonar-noongar-is-australias-first-indigenous-wikipedia-we-want-to-use-our-language Первая Википедия на коренном языке Австралии], [http://indiancountrytodaymedianetwork.com/2016/09/26/wikipedia-wants-improved-content-indigenous-peoples-needs-your-help-165905 Викимарафон о коренных народах США], [http://qz.com/771351/promoting-local-languages-will-get-more-africans-connected-online/ Популяризация местных языков как инструмент повышения использования возможностей Интернета народами Африки].
* [[m:Wikipedias in the languages of Russia/Tables/ru|Текущие показатели]] проектов и [[m:Wikipedias_in_the_languages_of_Russia/Trends|аналитика]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Подписаться/Отписаться]]. ''Готовы поделиться своими новостями или опытом?'' <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|добавляйте ссылку в следующий выпуск]]</u>!
|
Dear colleague,
''Great thanks go to each and everyone contributing into developing [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Wikipedias in the languages of Russia]]''. </br>In this issue:
* Wikidata: the list of elements with missing Label и Description translation – click the necessary language link ''[[d:User:Drbug/list|in the list]]'', press "'''> Run'''" at the bottom of the opening query page, open elements from the resultant elements list and edit/translate these two fields.
* Rejoice for ''[[m:incubator:Wp/olo|Livvi Karelian]]'' Wikipedia, which has been recently [//meta.wikimedia.org/w/index.php?title=Requests_for_new_languages/Wikipedia_Livvi-Karelian&diff=15935356&oldid=15918602 approved] for coming out of the Wikimedia Incubator!
* Communities of Wikipedias in the languages of Russia ''[[m:User:Frhdkazan/WCR2016|presented]]'' at the plenary sessions of [[wmru:Уральский_вики-семинар_2016/Программа|Uralic Wiki-Seminar]] in Izhevsk and [[wmru:Вики-конференция 2016/Программа|All-Russia Wiki-Conference 2016]] in Saint Petersburg.
* September news about colleagues abroad: [https://www.theguardian.com/culture/2016/sep/02/ngean-noonar-noongar-is-australias-first-indigenous-wikipedia-we-want-to-use-our-language Australia's first indigenous Wikipedia], [http://indiancountrytodaymedianetwork.com/2016/09/26/wikipedia-wants-improved-content-indigenous-peoples-needs-your-help-165905 Indigenous people marathon in U.S.], [http://qz.com/771351/promoting-local-languages-will-get-more-africans-connected-online/ Local language promotion as a tool to increase Internet use in Africa].
* [[m:Wikipedias in the languages of Russia/Tables|Current Stats]] and [[m:Wikipedias_in_the_languages_of_Russia/Trends|analytics]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Subscribe/Unsubscribe]]. ''Ready to share own news or valuable experience?'' Add a link into <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|the next month issue]]</u>!
|}</div>--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|talk]]) 11:37, 3 Τρυγομηνά 2016 (UTC)
== Creative Commons 4.0 ==
Hello! I'm writing from the Wikimedia Foundation to invite you to give your feedback on a proposed move from CC BY-SA 3.0 to a CC BY-SA 4.0 license across all Wikimedia projects. The consultation will run from October 5 to November 8, and we hope to receive a wide range of viewpoints and opinions. Please, if you are interested, [[meta:Special:MyLanguage/Terms of use/Creative Commons 4.0|take part in the discussion on Meta-Wiki]].
''Apologies that this message is only in English. [[meta:Special:MyLanguage/Terms of use/Creative Commons 4.0/MassMessage|This message can be read and translated in more languages here]].'' [[User:JSutherland (WMF)|Joe Sutherland]] ([[User talk:JSutherland (WMF)|talk]]) 01:34, 6 Τρυγομηνά 2016 (UTC)
<!-- Message sent by User:JSutherland (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:JSutherland_(WMF)/MassMessage/1&oldid=15962252 -->
== Editing News #3—2016 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''[[:m:Special:MyLanguage/VisualEditor/Newsletter/2016/October|Read this in another language]] • [[:m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]''
<div style="float:right;width:230px;{{#switch:ltr|rtl=float:left;margin-left:0;|#default=float:right;margin-right:0;}}margin-left:1em;border-style:solid;border-width:1px;padding:1em;">
[[File:VisualEditor-logo.svg|200px|center|alt=VisualEditor]]'''Did you know?'''
<div class="thumbcaption" style="font-size: 90%;">
Did you know that you can easily re-arrange columns and rows in the visual editor? [[File:VisualEditor table editing menu.png|alt=Screenshot showing a dropdown menu with options for editing the table structure|center|frameless|232x232px]]
Select a cell in the column or row that you want to move. Click the arrow at the start of that row or column to open the dropdown menu (shown). Choose either "Move before" or "Move after" to move the column, or "Move above" or "Move below" to move the row.
You can read and help translate [[:mw:Special:MyLanguage/VisualEditor/User guide|the user guide]], which has more information about how to use the visual editor.
</div></div>
Since the last newsletter, the [[:mw:Special:MyLanguage/VisualEditor|VisualEditor Team]] has mainly worked on a new wikitext editor. They have also released some small features and the new map editing tool. Their workboard is available [[phab:project/board/483/|in Phabricator]]. You can find links to the list of work finished each week at [[:mw:VisualEditor/Weekly triage meetings|mw:VisualEditor/Weekly triage meetings]]. Their [[:mw:VisualEditor/Current_priorities|current priorities]] are fixing bugs, releasing the 2017 wikitext editor as a [[mediawikiwiki:Beta_Features|beta feature]], and improving language support.
=== Recent changes ===
*You can now set text as small or big.[https://phabricator.wikimedia.org/T53613]
*Invisible templates have been shown as a puzzle icon. Now, the name of the invisible template is displayed next to the puzzle icon.[https://phabricator.wikimedia.org/T141861] A similar feature will display the first part of hidden HTML comments.[https://phabricator.wikimedia.org/T147089]
*Categories are displayed at the bottom of each page. If you click on the categories, the dialog for editing categories will open.[https://phabricator.wikimedia.org/T145267]
*At many wikis, you can now add [[mediawikiwiki:Maps|maps]] to pages. Go to the Insert menu and choose the "Maps" item. The Discovery department is adding more features to this area, like geoshapes. You can read more at mediawiki.org.[https://www.mediawiki.org/wiki/Wikimedia_Discovery#Maps]
*The "Save" button now says "Save page" when you create a page, and "Save changes" when you change an existing page.[https://phabricator.wikimedia.org/T139033] In the future, the "{{int:Savearticle}}" button will say "{{int:Publishpage}}". This will affect both the visual and wikitext editing systems. More [[:m:Editing/Publish|information is available on Meta]].
*Image galleries now use a visual mode for editing. You can see thumbnails of the images, add new files, remove unwanted images, rearrange the images by dragging and dropping, and add captions for each image. Use the "Options" tab to set the gallery's display mode, image sizes, and add a title for the gallery.[https://phabricator.wikimedia.org/T45037]
=== Future changes ===
The visual editor will be offered to all editors at the remaining 10 [[:mw:VisualEditor/Rollouts|"Phase 6" Wikipedias]] during the next month. The developers want to know whether typing in your language feels natural in the visual editor. Please post your comments and the language(s) that you tested at [[:mw:Topic:St8y4ni42d0vr9cv|the feedback thread on mediawiki.org]]. This will affect several languages, including [[:w:th:|'''Thai''']], [[:w:my:|'''Burmese''']] and [[:w:arc:|'''Aramaic''']].
The team is working on a modern wikitext editor. The [[Mw:2017 wikitext editor|2017 wikitext editor]] will look like the visual editor and be able to use the citoid service and other modern tools. This new editing system may become available as a Beta Feature on desktop devices in October 2016. You can read about this project in a [[:mw:Special:MyLanguage/VisualEditor/Roadmap/Update_2016-06-23|general status update on the Wikimedia mailing list]].
=== Let's work together ===
* Do you teach new editors how to use the visual editor? Did you help [[:mw:Citoid/Enabling Citoid on your wiki|set up the Citoid automatic reference feature for your wiki]]? Have you written or imported [[:mw:Special:MyLanguage/Help:TemplateData|TemplateData]] for your most important citation templates? <mark>Would you be willing to help new editors and small communities with the visual editor? Please sign up for the new [[:mw:Help:VisualEditor/Community Taskforce|'''VisualEditor Community Taskforce''']].</mark>
*If you aren't reading this in your preferred language, then please help us with translations! Subscribe to the [[mail:translators-l|Translators mailing list]] or [https://meta.wikimedia.org/w/index.php?title=User_talk:Elitre_(WMF)&action=edit§ion=new contact us] directly, so that we can notify you when the next issue is ready. {{int:Feedback-thanks-title}}
—[[:mw:User:Elitre (WMF)|Elitre (WMF)]]
</div> 17:49, 15 Τρυγομηνά 2016 (UTC)
<!-- Message sent by User:Elitre (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=15960088 -->
== [[m:Wikipedias in the languages of Russia/Newsletter#2016-10-25|'''Бюллетень «Википедии на языках России» / «Wikipedias in the languages of Russia» newsletter''' - #10 (ноя./Nov.'16)''']] ==
{| border="2" cellspacing="0" cellpadding="4" rules="all" style="margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; font-size:95%; empty-cells:show;
|Уважаемый коллега,
''Большое спасибо всем и каждому, кто вносит свой вклад в развитие [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Разделов Википедии на языках России]].''</br>
В этом выпуске:
* Cамые активные [[m:WikiWomen's User Group|викиженщины]] в России – [[n:ru:10-я_юбилейная_международная_Вики-конференция_в_Санкт-Петербурге#Роль женщин в развитии Википедии|безусловно в Башкортостане]]!
** [[w:ba:Портал:Ағымдағы ваҡиғалар/Беҙҙең берләшмә ваҡиғалары#22-23 октябрь 2016|Обучают вики-бабушек]] из [[w:ru:Байназарово|Байназарово]] ([[w:ru:Бурзянский район|Бурзянский район]])
* [[d:User:Drbug/list|Простой и надёжный способ]] обеспечить своему языку жизнь в эру искусственного интелекта
* ''Успейте'' [[m:Wikipedia_to_the_Moon/Greetings/ru|включить свой родной язык в проект «Википедию на Луну»]]! (до '''31.10.2016''')
* Поддержим [[m:Grants:TPS/Khanmarat/Day Siberian Tatar language|срочный грант в помощь сибирскотатарской Википедии]]
* Приглашаем к участию в организации и проведении марийского викисеминара [[:wmru:Вики-Пайрем_2017|Вики-Пайрем 2017]] (Йошкар-Ола, 14-17.06.2017)
* Октябрьские новости о коллегах за рубежом: [https://yourstory.com/2016/10/indian-language-wikipedia/ Википедии на языках Индии как инструмент расширения открытого доступа], [http://www.lne.es/sociedad/2016/10/18/editaton-feminista-wikipedia/1999537.html Испанские Викиженщины со-организовали женский викимарафон в Национальной библиотеке], [http://www.edinburghnews.scotsman.com/news/entertainment/gaelic-wikipedia-being-developed-with-help-of-experts-1-4254619 Национальная Библиотека Шотландии и Wikimedia UK привлекают носителей шотландского к улучшению Кельтской Википедии], [http://www.levante-emv.com/ribera/2016/10/01/fiesta-tecnologica-maraton-wikipedia-novedades/1473955.html Городской фестиваль – прекрасный повод для тематического викимарафона], [http://www.heraldglobe.com/index.php/sid/248484957 Национальный музей Швеции передал 3000 изображений в Викисклад], [http://rudaw.net/english/kurdistan/121020165 Обучение курдских википедистов в Иракском Курдистане], [http://punchng.com/wiki-loves-women-encourages-nigerian-womens-presence-wikipedia/ Вики Любит Женщин в Нигерии].
* [[m:Wikipedias in the languages of Russia/Tables/ru|Текущие показатели]] проектов и [[m:Wikipedias_in_the_languages_of_Russia/Trends|аналитика]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Подписаться/Отписаться]]. ''Готовы поделиться своими новостями или опытом?'' <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|добавляйте ссылку в следующий выпуск]]</u>!
|
Dear colleague,
''Great thanks go to each and everyone contributing into developing [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Wikipedias in the languages of Russia]]''. </br>In this issue:
* Most active [[m:WikiWomen's User Group|WikiWomen]] of Russia are [[n:ru:10-я_юбилейная_международная_Вики-конференция_в_Санкт-Петербурге#Роль женщин в развитии Википедии|certainly from Bashkortostan]]!
** [[w:ba:Портал:Ағымдағы ваҡиғалар/Беҙҙең берләшмә ваҡиғалары#22-23 октябрь 2016|Training for Wiki-Grandmas]] from [[w:ru:Байназарово|Baynazarovo]] ([[w:en:Burzyansky District|Burzyansky District]])
* [[d:User:Drbug/list|Simple and most reliable way]] to guarantee your native language will live on in AI era.
* ''Still possible'' [[m:Wikipedia_to_the_Moon/Greetings/ru|to include your native tongue into «Wikipedia to the Moon» project]] (till '''31.10.2016''')
* Invitation to support [[m:Grants:TPS/Khanmarat/Day Siberian Tatar language|urgent grant to help Siberian Tatar Wikipedia]]
* Invitation to join in organizing and participating at [[:wmru:Вики-Пайрем_2017|Вики-Пайрем 2017]] Mari Wikiseminar in [[w:en:Yoshkar-Ola|Yoshkar-Ola]], 14-17.06.2017)
* October news about colleagues abroad: [https://yourstory.com/2016/10/indian-language-wikipedia/ Indian language Wikipedias for greater open access in India], [http://www.lne.es/sociedad/2016/10/18/editaton-feminista-wikipedia/1999537.html Spanish Wikimujeres helped organize a feminine edit-a-thon in the National Library], [http://www.edinburghnews.scotsman.com/news/entertainment/gaelic-wikipedia-being-developed-with-help-of-experts-1-4254619 The National Library of Scotland and Wikimedia UK are recruiting more Gaelic speakers in an effort to improve Uicipeid], [http://www.levante-emv.com/ribera/2016/10/01/fiesta-tecnologica-maraton-wikipedia-novedades/1473955.html City festival as an opportunity to organize edit-a-thon], [http://www.heraldglobe.com/index.php/sid/248484957 Stockholm's Nationalmuseum releases 3,000 images on Wikimedia Commons], [http://rudaw.net/english/kurdistan/121020165 Training for Kurdish Wikipedians in Iraqi Kurdistan], [http://punchng.com/wiki-loves-women-encourages-nigerian-womens-presence-wikipedia/ Wiki Loves Women in Nigeria].
* [[m:Wikipedias in the languages of Russia/Tables|Current Stats]] and [[m:Wikipedias_in_the_languages_of_Russia/Trends|analytics]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Subscribe/Unsubscribe]]. ''Ready to share own news or valuable experience?'' Add a link into <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|the next month issue]]</u>!
|}</div>
--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|talk]]) 10:19, 25 Τρυγομηνά 2016 (UTC)
== New Wikipedia Library Accounts Available Now (November 2016) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|upright|The TWL OWL says sign up today!]]
[[:m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for free, full-access, accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials from:
*'''''[[:en:WP:Foreign Affairs|Foreign Affairs]]''''' - Journal of international relations and U.S. foreign policy
*'''[[:en:WP:OpenEdition|OpenEdition]]''' - Journals in the social sciences and humanities
*'''[[:en:WP:EDP Sciences|Édition Diffusion Presse Sciences]]''' - French and English language scientific journals
*'''[[:en:WP:ASHA|ASHA]]''' - Speech–language–hearing journals
*'''[[:fi:Wikipedia:Wikipedian_Lähdekirjasto/Tilastopaja|Tilastopaja]]''' - Athletics statistics
'''Expansions'''
*'''[[:en:WP:EBSCO|EBSCO]]''' - Many new databases added
*'''[[:en:WP:Taylor & Francis|Taylor & Francis]]''' - Strategic, Defence & Security Studies collection
Many other partnerships with accounts available are listed on [[:m:The Wikipedia Library/Databases|our partners page]]. Sign up today!
<br>--[[:m:The Wikipedia Library/Coordinators|The Wikipedia Library Team]] 18:30, 1 Αεργί 2016 (UTC)
:''You can host and coordinate signups for a Wikipedia Library branch in your own language. Please contact [[:m:User:Ocaasi_(WMF)|Ocaasi (WMF)]].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Message sent by User:Samwalton9@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=15939318 -->
== Password reset ==
''I apologise that this message is in English. [https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Security%2FPassword+reset&language=&action=page&filter= {{int:Centralnotice-shared-help-translate}}]''
We are having a problem with attackers taking over wiki accounts with privileged user rights (for example, admins, bureaucrats, oversighters, checkusers). It appears that this may be because of weak or reused passwords.
Community members are working along with members of multiple teams at the Wikimedia Foundation to address this issue.
In the meantime, we ask that everyone takes a look at the passwords they have chosen for their wiki accounts. If you know that you've chosen a weak password, or if you've chosen a password that you are using somewhere else, please change those passwords.
Select strong passwords – eight or more characters long, and containing letters, numbers, and punctuation. [[m:User:JSutherland (WMF)|Joe Sutherland]] ([[m:User talk:JSutherland (WMF)|{{int:Talkpagelinktext}}]]) / [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 23:59, 13 Αεργί 2016 (UTC)
<!-- Message sent by User:JSutherland (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:JSutherland_(WMF)/MassMessage/1&oldid=16060701 -->
== Adding to the above section (Password reset) ==
Please accept my apologies - that first line should read "[https://meta.wikimedia.org/w/index.php?title=Special:Translate&group=page-Security%2FPassword+reset&language=&action=page&filter= Help with translations!]". [[m:User:JSutherland (WMF)|Joe Sutherland (WMF)]] ([[m:User talk:JSutherland (WMF)|talk]]) / [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|talk]]) 00:11, 14 Αεργί 2016 (UTC)
<!-- Message sent by User:JSutherland (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=User:JSutherland_(WMF)/MassMessage/1&oldid=16060701 -->
== New way to edit wikitext ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
'''Summary''': There's a new opt-in Beta Feature of a [[:mw:2017 wikitext editor|wikitext mode for the visual editor]]. Please [[Special:Preferences#mw-prefsection-betafeatures|go try it out]].
We in the Wikimedia Foundation's Editing department are responsible for making editing better for all our editors, new and experienced alike. We've been slowly improving [[:mw:VisualEditor|the visual editor]] based on feedback, user tests, and feature requests. However, that doesn't work for all our user needs: whether you need to edit a wikitext talk page, create a template, or fix some broken reference syntax, sometimes you need to use wikitext, and many experienced editors prefer it.
Consequently, we've planned a "wikitext mode" for the visual editor for a long time. It provides as much of the visual editor's features as possible, for those times that you need or want wikitext. It has the same user interface as the visual editor, including the same toolbar across the top with the same buttons. It provides access to the [[:mw:citoid|citoid service]] for formatting citations, integrated search options for inserting images, and the ability to add new templates in a simple dialog. Like in the visual editor, if you paste in formatted text copied from another page, then formatting (such as bolding) will automatically be converted into wikitext.
All wikis now have access to this mode as a [[:mw:Beta Features|Beta Feature]]. When enabled, it replaces your existing [[:mw:Editor|wikitext editor]] everywhere. If you don't like it, you can reverse this at any time by turning off the Beta Feature in your preferences. We don't want to surprise anyone, so it's strictly an ''opt-in-only'' Beta Feature. It won't switch on automatically for anyone, even if you have previously checked the box to "{{Int:Betafeatures-auto-enroll}}".
The new wikitext edit mode is based on the visual editor, so it requires JavaScript (as does the [[:mw:Extension:WikiEditor|current wikitext editor]]). It doesn't work with gadgets that have only been designed for the older one (and ''vice versa''), so some users will miss gadgets they find important. We're happy to [[:mw:VisualEditor/Gadgets|work with gadget authors to help them update their code to work]] with both editors. We're not planning to get rid of the current main wikitext editor on desktop in the foreseeable future. We're also not going to remove the existing ability to edit plain wikitext without JavaScript. Finally, though it should go without saying, if you prefer to continue using the current wikitext editor, then you may so do.
This is an early version, and we'd love to know what you think so we can make it better. Please leave feedback about the new mode [[:mw:2017 wikitext editor/Feedback|on the feedback page]]. You may write comments in any language. Thank you.
</div> [[:mw:User:Jdforrester (WMF)|James Forrester]] (Product Manager, Editing department, Wikimedia Foundation) --19:32, 14 Χριστουγενναρί 2016 (UTC)
<!-- Message sent by User:Elitre (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=15942009 -->
== Translation ==
Hello, could you please translate '''Automatic refresh (Αυτόματη ενημέρωση)''' to {{#language:pnt}}? Thanks [[Χρήστες:-XQV-|-XQV-]] ([[Καλάτσεμαν χρήστε:-XQV-|συζήτηση]]) 19:19, 13 Καλανταρί 2017 (UTC)
== Invitation to [[:m:Wikimedia CEE Spring 2017|Wikimedia CEE Spring 2017]] ==
<small>Sorry for writing in English.</small>
Dear Pontic community,
Last year your community missed to participate at CEE Spring in Pontic and we invite you to participate in this year’s contest! Local organisers, please subscribe to the mailing list at https://lists.wikimedia.bg/mailman/listinfo/ceespring-localorganisers, add your community at the [[:m:Wikimedia CEE Spring 2017/Participants|Meta page with the participants]] and discuss this year’s edition of the contest on its talk page ([[:m:Talk:Wikimedia CEE Spring 2017/Participants|Talk:Wikimedia CEE Spring 2017/Participants]]). There you will also find information on some of the things expected from the local organisers. We are looking forward to reading from you soon!
On behalf of the international organisers, -- [[Χρήστες:Алиса Селезньова|Αλίσα Σελεζνιέβα]] ([[Καλάτσεμαν χρήστε:Алиса Селезньова|συζήτηση]]) 14:48, 17 Καλανταρί 2017 (UTC)
== [[m:Wikipedias in the languages of Russia/Newsletter#2017-01-19|'''Бюллетень «Википедии на языках России» / «Wikipedias in the languages of Russia» newsletter''' - #11 (янв./Jan.'17)''']] ==
{| border="2" cellspacing="0" cellpadding="4" rules="all" style="margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; font-size:95%; empty-cells:show;
|Уважаемый коллега,
''Большое спасибо всем и каждому, кто вносит свой вклад в развитие [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Разделов Википедии на языках России]].''</br>
В этом выпуске:
* На заметку: * [https://www.seonews.ru/events/wikipedia-ranzhiruetsya-v-google-tak-zhe-kak-i-lyuboy-drugoy-sayt/ Wikipedia ранжируется в Google так же, как и любой другой сайт], [https://arxiv.org/abs/1611.03932 Использование Викиданных для обучения искусственного интелекта IBM Watson (англ.)], [http://wikirank-2016.di.unimi.it/ Самые важные статьи англоВП по категориям (англ.)], [http://ren.tv/novosti/2016-12-05/smi-ryazanskie-chinovniki-otredaktirovali-wikipedia-chtoby-snesti-dom СМИ: Рязанские чиновники отредактировали Wikipedia, чтобы снести дом], [http://www.inc.com/justin-bariso/wikipedias-new-email-campaign-is-a-master-class-in-emotional-intelligence.html Эксперт: Предновогодняя кампания Википедии по сбору пожертвований — мастер-класс по использованию эмоционального интеллекта! (англ.)], [https://www.researchgate.net/blog/post/wikipedia-is-the-worlds-largest-medical-resource-but-crucial-information-is-often-missing ВП – это самый большой энциклопедический ресурс планеты по медицине, но в нём иногда отсутствует ключевая информация (англ.)], [https://www.newscientist.com/article/2115986-wikipedia-facts-depend-on-which-language-you-read-them-in/ Wikipedia ‘facts’ depend on which language you read them in], [https://thinkprogress.org/ending-wikipedia-gender-gap-online-sexism-776d0854fd53 The slow and steady battle to close Wikipedia’s dangerous gender gap]
* В конце 2017 года [[m:Wikipedia to the Moon/Wrap-up|на Луну отправится]] более 31,500 избранных статей и списков из всех Википедий, включая все разделы ВПнаЯР (даже ady и olo)!
* Поддержать новичков? Обратная связь? [[:w:kk:|КазВП]] использует [[w:kk:MediaWiki:Sitenotice|MediaWiki:Sitenotice]]
* [[m:The_Wikipedia_Library/1Lib1Ref/ru|Представьте себе мир, где каждый библиотекарь добавил в Википедию не менее одной ссылки на источники]].
* Викимания-2017 пройдёт 9-13 августа в Монтреале (Канада). Заявки на [https://wikimania2017.wikimedia.org/wiki/Scholarships стипендии для участия] принимаются до 20 февраля.
* Новый отчёт: «[[m:Wikipedias in the languages of Russia/Readership|Кто, как и откуда читает разделы ВП на языках России?]]»
* Видео [[:File:Wikipedia - FactsMatter2016.webm|#FactsMatter2016 (проверяемость фактов)]] с субтитрами — выбирать из [сс].
* Новости о коллегах за рубежом: [http://www.thebetterindia.com/76669/indian-language-wikipedias-access-to-knowledge-for-all/ How Indian Language Wikipedias Are Making Knowledge Accessible to All], [http://venturesafrica.com/wiki-loves-africa-wikimedias-call-for-an-increased-coverage-of-the-african-continent/ Wiki Loves Africa: Wikipedias call for an increased coverage of the African continent - Ventures Africa], [http://www.click.ro/utile/asa-ai-mereu-acces-la-cele-mai-importante-informatii-descarca-acum-wikipedia-si-foloseste Romania: How to download Wikipedia for offline access]
* [[m:Wikipedias in the languages of Russia/Tables/ru|Текущие показатели]] проектов и [[m:Wikipedias_in_the_languages_of_Russia/Trends|аналитика]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Подписаться/Отписаться]]. ''Готовы поделиться своими новостями или опытом?'' <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|добавляйте ссылку в следующий выпуск]]</u>!
|
Dear colleague,
''Great thanks go to each and everyone contributing into developing [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Wikipedias in the languages of Russia]]''. </br>In this issue:
* Take note: [https://arxiv.org/abs/1611.03932 Training IBM Watson using Wikidata], [http://wikirank-2016.di.unimi.it/ The Open Wikipedia Ranking2016], [http://ren.tv/novosti/2016-12-05/smi-ryazanskie-chinovniki-otredaktirovali-wikipedia-chtoby-snesti-dom Russian Wikipedia page edited in favor of a building's demolition from local administration IP address], [http://www.inc.com/justin-bariso/wikipedias-new-email-campaign-is-a-master-class-in-emotional-intelligence.html Wikipedia's New Email Campaign Is a Master Class in Emotional Intelligence], [https://www.researchgate.net/blog/post/wikipedia-is-the-worlds-largest-medical-resource-but-crucial-information-is-often-missing Wikipedia is the world’s largest medical resource, but crucial information is often missing], [https://www.newscientist.com/article/2115986-wikipedia-facts-depend-on-which-language-you-read-them-in/ Wikipedia ‘facts’ depend on which language you read them in], [https://thinkprogress.org/ending-wikipedia-gender-gap-online-sexism-776d0854fd53 The slow and steady battle to close Wikipedia’s dangerous gender gap], [https://www.seroundtable.com/google-wikipedia-special-ranking-treatment-23157.html Google: Wikipedia Is Ranked By Google Like Any Other Web Site]
* At the end of 2017 over 31,500 WP's FAs and FLs [[m:Wikipedia to the Moon/Wrap-up|will head for the Moon]], including all WPs in the Languages of Russia (even newbies like ady & olo)!
* Supporting new editors? Looking for reader feedback? [[:w:kk:|KazWP]] uses its [[w:kk:MediaWiki:Sitenotice|MediaWiki:Sitenotice]]
* [[m:The_Wikipedia_Library/1Lib1Ref|Imagine a World where Every Librarian Added One More Reference to Wikipedia]].
* Wikimania-2017 will be held on August 9-13 in Montréal, Canada. [https://wikimania2017.wikimedia.org/wiki/Scholarships Participation Scholarship] applications accepted till Feb.20.
* New Report: «[[m:Wikipedias in the languages of Russia/Readership|WPs in the Languages of Russia Readership]]»
* Video: [[:File:Wikipedia - FactsMatter2016.webm|#FactsMatter2016]] — choose subtitles from [сс].
* December news about colleagues abroad: [http://www.thebetterindia.com/76669/indian-language-wikipedias-access-to-knowledge-for-all/ How Indian Language Wikipedias Are Making Knowledge Accessible to All], [http://venturesafrica.com/wiki-loves-africa-wikimedias-call-for-an-increased-coverage-of-the-african-continent/ Wiki Loves Africa: Wikipedias call for an increased coverage of the African continent - Ventures Africa], [http://www.click.ro/utile/asa-ai-mereu-acces-la-cele-mai-importante-informatii-descarca-acum-wikipedia-si-foloseste Romania: How to download Wikipedia for offline access]
* [[m:Wikipedias in the languages of Russia/Tables|Current Stats]] and [[m:Wikipedias_in_the_languages_of_Russia/Trends|analytics]].
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Subscribe/Unsubscribe]]. ''Ready to share own news or valuable experience?'' Add a link into <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|the next month issue]]</u>!
|}</div>
--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 14:56, 19 Καλανταρί 2017 (UTC)
== Review of initial updates on Wikimedia movement strategy process ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''Note: Apologies for cross-posting and sending in English. [[m:Strategy/Wikimedia movement/2017/Updates/Initial announcements review|Message is available for translation on Meta-Wiki]].''
The Wikimedia movement is beginning a movement-wide strategy discussion, a process which will run throughout 2017. For 15 years, Wikimedians have worked together to build the largest free knowledge resource in human history. During this time, we've grown from a small group of editors to a diverse network of editors, developers, affiliates, readers, donors, and partners. Today, we are more than a group of websites. We are a movement rooted in values and a powerful vision: all knowledge for all people. As a movement, we have an opportunity to decide where we go from here.
This movement strategy discussion will focus on the future of our movement: where we want to go together, and what we want to achieve. We hope to design an inclusive process that makes space for everyone: editors, community leaders, affiliates, developers, readers, donors, technology platforms, institutional partners, and people we have yet to reach. There will be multiple ways to participate including on-wiki, in private spaces, and in-person meetings. You are warmly invited to join and make your voice heard.
The immediate goal is to have a strategic direction by Wikimania 2017 to help frame a discussion on how we work together toward that strategic direction.
Regular updates are being sent to the [[mail:Wikimedia-l|Wikimedia-l mailing list]], and posted [[m:Strategy/Wikimedia_movement/2017/Updates|on Meta-Wiki]]. Beginning with this message, monthly reviews of these updates will be sent to this page as well. [[m:Strategy/Wikimedia movement/2017/Updates/Signup|Sign up]] to receive future announcements and monthly highlights of strategy updates on your user talk page.
Here is a review of the updates that have been sent so far:
* [[m:Strategy/Wikimedia movement/2017/Updates/15 December 2016 - Update 1 on Wikimedia movement strategy process|Update 1 on Wikimedia movement strategy process]] (15 December 2016)
** Introduction to process and information about budget spending resolution to support it
* [[m:Strategy/Wikimedia movement/2017/Updates/23 December 2016 - Update 2 on Wikimedia movement strategy process|Update 2 on Wikimedia movement strategy process]] (23 December 2016)
** Start of search for Lead Architect for movement strategy process
* [[m:Strategy/Wikimedia movement/2017/Updates/8 January 2017 - Update 3 on Wikimedia movement strategy process|Update 3 on Wikimedia movement strategy process]] (8 January 2017)
** Plans for strategy sessions at upcoming Wikimedia Conference 2017
* [[m:Strategy/Wikimedia movement/2017/Updates/11 January 2017 - Update 4 on Wikimedia movement strategy process|Update 4 on Wikimedia movement strategy process]] (11 January 2017)
** Introduction of williamsworks
* [[m:Strategy/Wikimedia movement/2017/Updates/2 February 2017 - Update 5 on Wikimedia movement strategy process|Update 5 on Wikimedia movement strategy process]] (2 February 2017)
** The core movement strategy team, team tracks being developed, introduction of the Community Process Steering Committee, discussions at WikiIndaba conference 2017 and the Wikimedia movement affiliates executive directors gathering in Switzerland
* [[m:Strategy/Wikimedia movement/2017/Updates/10 February 2017 - Update 6 on Wikimedia movement strategy process|Update 6 on Wikimedia movement strategy process]] (10 February 2017)
** Tracks A & B process prototypes and providing feedback, updates on development of all four Tracks
More information about the movement strategy is available on the [[m:Strategy/Wikimedia movement/2017|Meta-Wiki 2017 Wikimedia movement strategy portal]].
''Posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|MediaWiki message delivery]] on behalf of the [[m:Special:MyLanguage/Wikimedia Foundation|Wikimedia Foundation]], 20:30, 15 Κούντουρονος 2017 (UTC) • [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Updates/Initial announcements review|{{int:please-translate}}]] • [[m:Talk:Strategy/Wikimedia movement/2017/Updates|Get help]]''
</div>
<!-- Το μήνυμα στάλθηκε από τον User:GVarnum-WMF@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=16297862 -->
== [[m:Wikipedias in the languages of Russia/Newsletter#2017-02-16|'''Бюллетень «Википедии на языках России» / «Wikipedias in the languages of Russia» newsletter''' - #12 (фев./Feb.'17)''']] ==
{| border="2" cellspacing="0" cellpadding="4" rules="all" style="margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; font-size:95%; empty-cells:show;
|Уважаемый коллега,
''Большое спасибо всем и каждому, кто вносит свой вклад в развитие [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Разделов Википедии на языках России]].''</br>
В этом выпуске:
* Новости [[:wmru:|ВМРУ]]:
** [[:wmru:Собрания/2017-01-30|Отчёт собрания 2017-01-30]]
** Продолжается конкурс [[:wmru:Конкурсы/Узнай Россию. Начни с Дона|«Узнай Россию. Начни с Дона»]]
** [[:wmru:Вики-Пайрем_2017/Программа|Программа Вики-Пайрем_2017]] (14-18.06.2017)
** [[:wmru:Вики-экспедиции/Сахалин|Миссия: Отснять и описать Сахалин]] (июнь 2017)
* Новое в рамках движения Викимедиа: ''[[m:Wikimedia Resource Center|Ресурсный центр]]'' ([https://blog.wikimedia.org/2017/01/19/new-wikimedia-resource-center/ статья в блоге]); ''[[m:Community health initiative|Инициатива «Здоровое сообщество»]]'' ([https://blog.wikimedia.org/2017/01/26/community-health-initiative-grant/ статья в блоге])
** '''[[w:ru:Проект:GLAM|GLAM]]''': [http://pro.europeana.eu/blogpost/meet-the-members-council-barbara-fischer Викимедиа впервые представлена в совете членов проекта Europeana]
** [[w:ru:Википедия:Викиданные|Викиданные]]:
*** [https://www.oxfordaspiremuseums.org/blog/wikidata Викиданные: новая площадка для культурного наследия]
*** [[m:WikiCite|Вики-Библиография]]: Конгресс 2017 [[m:WikiCite 2017|пройдёт в Вене 23-25 мая]].
** '''[[w:ru:Проект:Школы и университеты|Википедия в образовании]]'''
*** В школе: [https://mywikieducation.blogspot.ru/2017/01/change-in-modern-schooling-education.html Википедия меняет подход к современному среднему образованию (Часть 1)], [https://mywikieducation.blogspot.ru/2017/01/change-in-modern-schooling-education_28.html Часть 2], [https://mywikieducation.blogspot.ru/2017/02/change-in-modern-schooling-education.html Часть 3]
*** В ВУЗе: [http://words.usask.ca/gmcte/2017/01/17/the-wikipedia-manifesto/ Манифест Википедии], [http://words.usask.ca/gmcte/2017/01/24/medicine-and-wikipedia/ О том, как студенты изучают медицину, овладевают навыками совместной работы, и трансформируют Википедию], [http://words.usask.ca/gmcte/2017/01/31/what-does-it-mean-to-say-that-anyone-can-edit-wikipedia/ Как понимать, что Википедию “может править каждый”?], [http://words.usask.ca/gmcte/2017/02/07/wikipedias-gender-bias-and-what-your-students-can-do-about-it/ Гендерные стереотипы в Википедии – и что с этим делать Вашим студентам], [http://words.usask.ca/gmcte/2017/02/14/wikiprojects-article-importance-and-article-quality-an-intimate-relationship-12/ ВикиПроекты, важность статей и их качество: интимные связи (1/2)], [https://psmag.com/how-wikipedia-is-cultivating-an-army-of-fact-checkers-to-battle-fake-news-6e818f68e5a6#.b5esrd9mz Этой весной учиться править Википедию будет 7500 студентов из 335 учебных групп]
* На заметку:
** [http://www.20min.ch/schweiz/basel/story/Behoerden-pfuschen-an-Wikipedia-Eintraegen-herum-14051350 Behörden pfuschen an Wikipedia-Einträgen herum - Basel] (Базель: За последние 5 лет статьи, касающиеся работы государственных офисов редактировались с их IP-адресов почти 290 раз.)
** [http://www.radioaustralia.net.au/international/2017-01-19/encyclopaedias-now-virtually-worthless-as-wikipedia-celebrates-16th-anniversary/1645574 На момент 16-летия Википедии, (физические) энциклопедии практически обеценились]
** [http://trueviralnews.com/this-bot-has-written-more-wikipedia-articles-than-anybody/ Этот бот написал больше статей в Википедию, чем кто-либо ещё]
** [https://blog.wikimedia.org/2017/01/16/public-domain-copyright-week/ Старший юрист Фонда Викимедиа: Википедия стоит на фундаменте общественного достояния]
** [http://radio.krcb.org/post/inner-workings-wikipedia#stream/0 Самыми ценными являются правки, усиливающие истинность информации в статьях.]
** [https://eos.org/opinions/three-reasons-why-earth-scientists-should-edit-wikipedia Три причины, почему представителям наук о Земле стоит править Википедию]
** [https://arxiv.org/abs/1702.00716 Анализ эволюции содержания идентичных статей в разных языковых разделах Википедии]
* Лучшие практики:
** [[:File:Wikimedia Commons web en.pdf|Руководство по Викискладу для новичков (на англ.)]]
* Новости о коллегах за рубежом:
** [https://yourstory.com/2017/02/wikipedia-and-women/ India: Wikipedia and women]
** [https://www.theguardian.com/technology/2017/feb/08/wikipedia-bans-daily-mail-as-unreliable-source-for-website Daily Mail? НеАИ.] И список [[:w:en:Wikipedia:Potentially unreliable sources|«потенциальных неАИ» англоВП]].
** [https://www.zawya.com/mena/en/story/For_Wikipedia_founder_online_freedom_matters_most-GN_24012017_250109/ Учащиеся используют Арабскую Википедию как инструмент для овладения навыками цитирования источников, составления текстов, и критического мышления (анализа)]
** [https://www.pressandjournal.co.uk/fp/business/north-of-scotland/1156279/susan-becomes-first-ever-gaelic-wikipedian/ Первым штатным википедистом на гэльском шотландском стала Сьюзан]
** [http://24tv.ua/ru/kak_stremitelno_razvivaetsja_ukrainskaja_wikipedia_poznavatelnaja_infografika_n778150 Инфографика УкрВП Украина]
* [[m:Wikipedias in the languages of Russia/Tables/ru|Текущие показатели]] разделов ВП:ЯР, [[m:Wikipedias in the languages of Russia/Readership|их читателей]], и [[m:Wikipedias_in_the_languages_of_Russia/Trends|аналитика]].
* [[wmru:Список сайтов со свободным использованием материалов|Список сайтов со свободным использованием материалов]] от ВМРУ
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Подписаться/Отписаться]]. ''Готовы поделиться своими новостями или опытом?'' <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|добавляйте ссылку в следующий выпуск]]</u>!
|
Dear colleague,
''Great thanks go to each and everyone contributing into developing [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Wikipedias in the languages of Russia]]''. </br>In this issue:
* [[:wmru:|Wikimedia Russia]] News:
** [[:wmru:Собрания/2017-01-30|Meeting report 2017-01-30]]
** On-going contest [[:wmru:Конкурсы/Узнай Россию. Начни с Дона|«Discover Russia. Start from Don»]]
** [[:wmru:Вики-Пайрем_2017/Программа|Вики-Пайрем_2017 seminar program]] (14-18.06.2017)
** [[:wmru:Вики-экспедиции/Сахалин/en|Mission: to photograph & describe Sakhalin]] (June 2017)
* Wikimedia movement-wide developments: ''[[m:Wikimedia Resource Center|Wikimedia Resource Center]]'' ([https://blog.wikimedia.org/2017/01/19/new-wikimedia-resource-center/ blog post]); ''[[m:Community health initiative|Community health initiative]]'' ([https://blog.wikimedia.org/2017/01/26/community-health-initiative-grant/ blog post])
** [[:outreach:GLAM|GLAM]]:
*** [http://pro.europeana.eu/blogpost/meet-the-members-council-barbara-fischer Wikimedia for the first time represented on Europeanas member council]
** [[w:en:Wikipedia:Wikidata|Wikidata]]:
*** [https://www.oxfordaspiremuseums.org/blog/wikidata Wikidata: the new hub for cultural heritage]
*** [[m:WikiCite|WikiCite]]: 2017 Congress [[m:WikiCite 2017|will take place in Vienna on May 23-25]].
** [[:outreach:Education|Wikipedia in Education]]
*** In high school: [https://mywikieducation.blogspot.ru/2017/01/change-in-modern-schooling-education.html Change in Modern Schooling Education with Wikipedia (Part 1)], [https://mywikieducation.blogspot.ru/2017/01/change-in-modern-schooling-education_28.html Part 2], [https://mywikieducation.blogspot.ru/2017/02/change-in-modern-schooling-education.html Part 3]
*** In college: [http://words.usask.ca/gmcte/2017/01/17/the-wikipedia-manifesto/ The Wikipedia Manifesto], [http://words.usask.ca/gmcte/2017/01/24/medicine-and-wikipedia/ How Students Are Learning Medicine and Collaborative Skills, And Transforming Wikipedia], [http://words.usask.ca/gmcte/2017/01/31/what-does-it-mean-to-say-that-anyone-can-edit-wikipedia/ What Does It Mean to Say That “Anyone Can Edit” Wikipedia?], [http://words.usask.ca/gmcte/2017/02/07/wikipedias-gender-bias-and-what-your-students-can-do-about-it/ Wikipedia’s Gender Bias – and What Your Students Can Do About It], [http://words.usask.ca/gmcte/2017/02/14/wikiprojects-article-importance-and-article-quality-an-intimate-relationship-12/ WikiProjects, Article Importance, and Article Quality: An Intimate Relationship (1/2)], [https://psmag.com/how-wikipedia-is-cultivating-an-army-of-fact-checkers-to-battle-fake-news-6e818f68e5a6#.b5esrd9mz Wiki Edu expects 7,500 students in around 335 courses to contribute to the site this spring]
* Keep in mind:
** [http://www.20min.ch/schweiz/basel/story/Behoerden-pfuschen-an-Wikipedia-Eintraegen-herum-14051350 Behörden pfuschen an Wikipedia-Einträgen herum - Basel] (Basel: In the past five years, government IP address have been found to edit articles relating to their jobs about 290 times.)
** [Physical] [http://www.radioaustralia.net.au/international/2017-01-19/encyclopaedias-now-virtually-worthless-as-wikipedia-celebrates-16th-anniversary/1645574 Encyclopaedias now virtually worthless as Wikipedia celebrates 16th anniversary]
** [http://trueviralnews.com/this-bot-has-written-more-wikipedia-articles-than-anybody/ This Bot Has Written More Wikipedia Articles Than Anybody]
** [https://blog.wikimedia.org/2017/01/16/public-domain-copyright-week/ WMF Senior Legal Counsel: Wikipedia is built on the public domain]
** [http://radio.krcb.org/post/inner-workings-wikipedia#stream/0 The most useful additions are those that add to the veracity of the information in a given article.]
** [https://eos.org/opinions/three-reasons-why-earth-scientists-should-edit-wikipedia Three Reasons Why Earth Scientists Should Edit Wikipedia]
** [https://arxiv.org/abs/1702.00716 Analysing Temporal Evolution of Interlingual Wikipedia Article Pairs]
* Best practice:
** [[:File:Wikimedia Commons web en.pdf|Beginners' guide on Wikimedia Commons in English]]
* News about colleagues abroad:
** [https://yourstory.com/2017/02/wikipedia-and-women/ India: Wikipedia and women]
** [https://www.theguardian.com/technology/2017/feb/08/wikipedia-bans-daily-mail-as-unreliable-source-for-website Daily Mail? Not RS.] And a list of [[:w:en:Wikipedia:Potentially unreliable sources|EnWP Potentially unreliable sources]].
** [https://www.zawya.com/mena/en/story/For_Wikipedia_founder_online_freedom_matters_most-GN_24012017_250109/ Students use Arabic Wikipedia as a tool to learn important skills like referencing sources, writing, and critical thinking]
** [https://www.pressandjournal.co.uk/fp/business/north-of-scotland/1156279/susan-becomes-first-ever-gaelic-wikipedian/ Susan becomes first ever Gaelic Wikipedian-in-Residence]
** [http://24tv.ua/ru/kak_stremitelno_razvivaetsja_ukrainskaja_wikipedia_poznavatelnaja_infografika_n778150 UkWP Ukraine Infographics]
* [[m:Wikipedias in the languages of Russia/Tables|Current Stats]] on WP:LR and [[m:Wikipedias in the languages of Russia/Readership|its Readership]], as well as [[m:Wikipedias_in_the_languages_of_Russia/Trends|analytics]].
* WMRU's [[wmru:Список сайтов со свободным использованием материалов|List of websites under free license]]
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Subscribe/Unsubscribe]]. ''Ready to share own news or valuable experience?'' Add a link into <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|the next month issue]]</u>!
|}</div>
--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 13:43, 16 Κούντουρονος 2017 (UTC)
== Overview #2 of updates on Wikimedia movement strategy process ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''Note: Apologies for cross-posting and sending in English. [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Updates/Overview 2 of updates on Wikimedia movement strategy process|This message is available for translation on Meta-Wiki]].''
As we mentioned last month, the Wikimedia movement is beginning a movement-wide strategy discussion, a process which will run throughout 2017. This movement strategy discussion will focus on the future of our movement: where we want to go together, and what we want to achieve.
Regular updates are being sent to the [[mail:Wikimedia-l|Wikimedia-l mailing list]], and posted [[m:Special:MyLanguage/Strategy/Wikimedia_movement/2017/Updates|on Meta-Wiki]]. Each month, we are sending overviews of these updates to this page as well. [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Updates/Signup|Sign up]] to receive future announcements and monthly highlights of strategy updates on your user talk page.
Here is a overview of the updates that have been sent since our message last month:
* [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Updates/16 February 2017 - Update 7 on Wikimedia movement strategy process|Update 7 on Wikimedia movement strategy process]] (16 February 2017)
** Development of documentation for Tracks A & B
* [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Updates/24 February 2017 - Update 8 on Wikimedia movement strategy process|Update 8 on Wikimedia movement strategy process]] (24 February 2017)
** Introduction of Track Leads for all four audience tracks
* [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Updates/2 March 2017 - Update 9 on Wikimedia movement strategy process|Update 9 on Wikimedia movement strategy process]] (2 March 2017)
** Seeking feedback on documents being used to help facilitate upcoming community discussions
More information about the movement strategy is available on the [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017|Meta-Wiki 2017 Wikimedia movement strategy portal]].
''Posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|MediaWiki message delivery]] on behalf of the [[m:Special:MyLanguage/Wikimedia Foundation|Wikimedia Foundation]], 19:43, 9 Μαρτ 2017 (UTC) • [[m:Strategy/Wikimedia movement/2017/Updates/Overview 2 of updates on Wikimedia movement strategy process|{{int:please-translate}}]] • [[m:Talk:Strategy/Wikimedia movement/2017/Updates|Get help]]''
</div>
<!-- Το μήνυμα στάλθηκε από τον User:GVarnum-WMF@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=16350625 -->
== We invite you to join the movement strategy conversation (now through April 15) ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
: ''This message, "[[mailarchive:wikimediaannounce-l/2017-March/001383.html|We invite you to join the movement strategy conversation (now through April 15)]]", was sent through multiple channels by [[m:User:GVarnum-WMF|Gregory Varnum]] on 15 and 16 of March 2017 to village pumps, affiliate talk pages, movement mailing lists, and MassMessage groups. A similar message was sent by [[m:User:Nicole_Ebber_(WMDE)|Nicole Ebber]] to organized groups and their mailing lists on 15 of March 2017. This version of the message is available for translation and documentation purposes''
Dear Wikimedians/Wikipedians:
Today we are starting a broad discussion to define Wikimedia's future role in the world and develop a collaborative strategy to fulfill that role. You are warmly invited to join the conversation.
There are many ways to participate, by joining an existing conversation or starting your own:
[[m:Special:MyLanguage/Strategy/Wikimedia_movement/2017/Track_A|Track A (organized groups)]]: Discussions with your affiliate, committee or other organized group (these are groups that support the Wikimedia movement).
Track B (individual contributors): [[m:Special:MyLanguage/Strategy/Wikimedia_movement/2017/Cycle_1|On Meta]] or your [[m:Special:MyLanguage/Strategy/Wikimedia_movement/2017/Participate|local language or project wiki]].
This is the first of three conversations, and it will run between now and April 15. The purpose of cycle 1 is to discuss the future of the movement and generate major themes around potential directions. What do we want to build or achieve together over the next 15 years?
We welcome you, as we create this conversation together, and look forward to broad and diverse participation from all parts of our movement.
* [[m:Special:MyLanguage/Strategy/Wikimedia_movement/2017|Find out more about the movement strategy process]]
* [[m:Special:MyLanguage/Strategy/Wikimedia_movement/2017/Toolkit/Discussion_Coordinator_Role|Learn more about volunteering to be a Discussion Coordinator]]
Sincerely,
Nicole Ebber (Track A Lead), Jaime Anstee (Track B Lead), & the [[m:Special:MyLanguage/Strategy/Wikimedia_movement/2017/People|engagement support teams]]</div></div> 05:09, 18 Μαρτ 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:GVarnum-WMF@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Strategy/Wikimedia_movement/2017/Updates/Global_message_delivery&oldid=16453957 -->
== IMPORTANT: Admin activity review ==
Hello. A policy regarding the removal of "advanced rights" (administrator, bureaucrat, etc. ) was adopted by [[:m:Requests for comment/Activity levels of advanced administrative rights holders|global community consensus]] in 2013. According to this policy, the [[:m:stewards|stewards]] are reviewing administrators' activity on all Wikimedia Foundation wikis with no inactivity policy. To the best of our knowledge, your wiki does not have a formal process for removing "advanced rights" from inactive accounts. This means that the stewards will take care of this according to the [[:m:Admin activity review|admin activity review]].
We have determined that the following users meet the inactivity criteria (no edits and no log actions for more than 2 years):
#Omnipaedista (bureaucrat, administrator)
These users will receive a notification soon, asking them to start a community discussion if they want to retain some or all of their rights. If the users do not respond, then their advanced rights will be removed by the stewards.
However, if you as a community would like to create your own activity review process superseding the global one, want to make another decision about these inactive rights holders, or already have a policy that we missed, then please notify the [[:m:Stewards' noticeboard|stewards on Meta-Wiki]] so that we know not to proceed with the rights review on your wiki. Thanks, [[User:Defender|<font color="black">'''Defender'''</font>]] <small>[[User_talk:Defender|<font color="black">(talk)</font>]]</small> 19:58, 18 Μαρτ 2017 (UTC)
== [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Updates/Start of the 2017 Wikimedia Foundation Board of Trustees elections|Start of the 2017 Wikimedia Foundation Board of Trustees elections]] ==
<div lang="en" dir="ltr" class="mw-content-ltr">
''Please accept our apologies for cross-posting this message. [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Updates/Start of the 2017 Wikimedia Foundation Board of Trustees elections|This message is available for translation on Meta-Wiki]].''
[[File:Wikimedia-logo black.svg|right|150px|link=m:Special:MyLanguage/Wikimedia Foundation elections/2017]]
On behalf of the Wikimedia Foundation Elections Committee, I am pleased to announce that self-nominations are being accepted for the [[m:Special:MyLanguage/Wikimedia_Foundation_elections/2017/Board_of_Trustees/Call_for_candidates|2017 Wikimedia Foundation Board of Trustees Elections]].
The [[m:Special:MyLanguage/Wikimedia Foundation Board of Trustees|Board of Trustees]] (Board) is the decision-making body that is ultimately responsible for the long-term sustainability of the Wikimedia Foundation, so we value wide input into its selection. More information about this role can be found [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Board of Trustees|on Meta-Wiki]]. Please read the [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Board of Trustees/Call for candidates|letter from the Board of Trustees calling for candidates]].
'''The [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Board of Trustees/Candidates|candidacy submission phase]] will last from April 7 (00:00 UTC) to April 20 (23:59 UTC).'''
'''We will also be accepting questions to ask the candidates from April 7 to April 20. [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Board of Trustees/Questions|You can submit your questions on Meta-Wiki]].'''
Once the questions submission period has ended on April 20, the Elections Committee will then collate the questions for the candidates to respond to beginning on April 21.
The goal of this process is to fill the '''three community-selected seats''' on the Wikimedia Foundation Board of Trustees. The election results will be used by the Board itself to select its new members.
The full schedule for the Board elections is as follows. All dates are '''inclusive''', that is, from the beginning of the first day (UTC) to the end of the last.
* April 7 (00:00 UTC) – April 20 (23:59 UTC) – '''Board nominations'''
* April 7 – April 20 – '''Board candidates questions submission period'''
* April 21 – April 30 – '''Board candidates answer questions'''
* May 1 – May 14 – '''Board voting period'''
* May 15–19 – '''Board vote checking'''
* May 20 – '''Board result announcement goal'''
In addition to the Board elections, we will also soon be holding elections for the following roles:
* '''Funds Dissemination Committee (FDC)'''
** There are five positions being filled. More information about this election will be available [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Funds Dissemination Committee|on Meta-Wiki]].
* '''Funds Dissemination Committee Ombudsperson (Ombuds)'''
** One position is being filled. More information about this election will be available [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Funds Dissemination Committee Ombudsperson|on Meta-Wiki]].
Please note that this year the Board of Trustees elections will be held before the FDC and Ombuds elections. Candidates who are not elected to the Board are explicitly permitted and encouraged to submit themselves as candidates to the FDC or Ombuds positions after the results of the Board elections are announced.
More information on this year's elections can be found [[m:Special:MyLanguage/Wikimedia Foundation elections/2017|on Meta-Wiki]]. Any questions related to the election can be posted on the [[m:Talk:Wikimedia Foundation elections/2017|election talk page on Meta-Wiki]], or sent to the election committee's mailing list, <tt dir="ltr" style="white-space:nowrap;font-size:12px;line-height:1.5">board-elections[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]wikimedia.org</tt>.
On behalf of the Election Committee,<br />
[[m:User:KTC|Katie Chan]], Chair, [[m:Special:MyLanguage/Wikimedia Foundation elections committee|Wikimedia Foundation Elections Committee]]<br />
[[m:User:JSutherland (WMF)|Joe Sutherland]], Community Advocate, Wikimedia Foundation
''Posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|MediaWiki message delivery]] on behalf of the [[m:Special:MyLanguage/Wikimedia Foundation elections committee|Wikimedia Foundation Elections Committee]], 03:38, 7 Απρίλ 2017 (UTC) • [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Updates/Start of the 2017 Wikimedia Foundation Board of Trustees elections|{{int:please-translate}}]] • [[m:Talk:Wikimedia Foundation elections/2017|Get help]]''</div>
<!-- Το μήνυμα στάλθηκε από τον User:GVarnum-WMF@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=16441214 -->
== Read-only mode for 20 to 30 minutes on 19 April and 3 May ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
[[:m:Special:MyLanguage/Tech/Server switch 2017|Read this message in another language]] • {{int:please-translate}}
The [[foundation:|Wikimedia Foundation]] will be testing its secondary data center in Dallas. This will make sure that Wikipedia and the other Wikimedia wikis can stay online even after a disaster. To make sure everything is working, the Wikimedia Technology department needs to conduct a planned test. This test will show whether they can reliably switch from one data center to the other. It requires many teams to prepare for the test and to be available to fix any unexpected problems.
They will switch all traffic to the secondary data center on '''Wednesday, 19 April 2017'''.
On '''Wednesday, 3 May 2017''', they will switch back to the primary data center.
Unfortunately, because of some limitations in [[mw:Manual:What is MediaWiki?|MediaWiki]], all editing must stop during those two switches. We apologize for this disruption, and we are working to minimize it in the future.
'''You will be able to read, but not edit, all wikis for a short period of time.'''
*You will not be able to edit for approximately 20 to 30 minutes on Wednesday, 19 April and Wednesday, 3 May. The test will start at [https://www.timeanddate.com/worldclock/fixedtime.html?iso=20170419T14 14:00 UTC] (15:00 BST, 16:00 CEST, 10:00 EDT, 07:00 PDT, 23:00 JST, and in New Zealand at 02:00 NZST on Thursday 20 April and Thursday 4 May).
*If you try to edit or save during these times, you will see an error message. We hope that no edits will be lost during these minutes, but we can't guarantee it. If you see the error message, then please wait until everything is back to normal. Then you should be able to save your edit. But, we recommend that you make a copy of your changes first, just in case.
''Other effects'':
*Background jobs will be slower and some may be dropped. Red links might not be updated as quickly as normal. If you create an article that is already linked somewhere else, the link will stay red longer than usual. Some long-running scripts will have to be stopped.
*There will be code freezes for the weeks of 17 April 2017 and 1 May 2017. Non-essential code deployments will not happen.
This project may be postponed if necessary. You can [[wikitech:Switch Datacenter#Schedule for 2017 switch|read the schedule at wikitech.wikimedia.org]]. Any changes will be announced in the schedule. There will be more notifications about this. '''Please share this information with your community.''' /<span dir=ltr>[[m:User:Whatamidoing (WMF)|User:Whatamidoing (WMF)]] ([[m:User talk:Whatamidoing (WMF)|talk]])</span>
</div></div>[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 17:34, 11 Απρίλ 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Johan (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=16545942 -->
== Wikidata description editing in the Wikipedia Android app ==
<div class="mw-content-ltr" lang="en" dir="ltr">
[[:mw:Wikimedia_Apps/Short_descriptions|Wikidata description editing]] is a new experiment being rolled out on the Wikipedia app for Android. While this primarily impacts Wikidata, the changes are also addressing a concern about the mobile versions of Wikipedia, so that mobile users will be able to edit directly the descriptions shown under the title of the page and in the search results.
We began by rolling out this feature several weeks ago to a pilot group of Wikipedias (Russian, Hebrew, and Catalan), and have seen very positive [[:mw:Wikimedia_Apps/Short_descriptions/Research|results]] including numerous quality contributions in the form of new and updated descriptions, and a low rate of vandalism.
We are now ready for the next phase of rolling out this feature, which is to enable it in a few days for all Wikipedias except the top ten by usage within the app (i.e. except English, German, Italian, French, Spanish, Japanese, Dutch, Portuguese, Turkish, and Chinese). We will enable the feature for those languages instead at some point in the future, as we closely monitor user engagement with our expanded set of pilot communities.
As always, if have any concerns, please reach out to us on wiki at [[:mw:Talk:Wikimedia_Apps/Short_descriptions|the talk page for this project]] or by email at reading@wikimedia.org. Thanks!
-[[:mw:User:DBrant (WMF)|DBrant (WMF)]] 08:41, 14 Απρίλ 2017 (UTC)
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Elitre_(WMF)/Wikidata_editing&oldid=16580284 -->
== New Page previews feature ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr"><div class="plainlinks">
New Page previews feature
[[:m:Special:MyLanguage/User:CKoerner (WMF)/Enable Hovercards/Phase 1|Read this message in another language]] • {{int:please-translate}}
Hello,
The Reading web team at the Wikimedia Foundation has been working to enable [[mw:Beta Features/Hovercards|Page previews]], [[Special:Preferences#mw-prefsection-betafeatures|a beta feature]] known previously as Hovercards, as opt-in behavior for logged-in users and the default behavior for logged-out users across Wikipedia projects. Page previews provide a preview of any linked article, giving readers a quick understanding of a related article without leaving the current page. For this project, we are expecting to collect feedback over the following few weeks and tentatively enable the feature in early May, 2017.
A quick note on the implementation:
* For logged-in users who are not currently testing out the beta feature, Page previews will be off by default. Users may turn them on from [[Special:Preferences#mw-prefsection-betafeatures|their user preferences]] page.
* For logged-out users, the feature will be on by default. Users may disable it at any time by selecting the setting cog available in each preview.
* For users of the Navigation popups gadget, you will not be able to turn on the Page previews feature while using navigational popups. If you would like to try out the Page preview feature, make sure to first turn Navigation popups off prior to turning Page previews on.
You can read more about [[mw:Beta_Features/Hovercards|the feature]] and [[mw:Beta Features/Hovercards#Success Metrics and Feature Evaluation|the tests we used to evaluate performance]], try it out by enabling it from the beta features page, and leave feedback or questions [[mw:Talk:Beta_Features/Hovercards|on the talk page]].
Thank you, [[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 16:52, 19 Απρίλ 2017 (UTC)
</div></div>
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:CKoerner_(WMF)/Enable_Hovercards/Phase_1/Distribution_list&oldid=16616381 -->
== [[m:Wikipedias in the languages of Russia/Newsletter#2017-04-20|'''Бюллетень «Википедии на языках России» / «Wikipedias in the languages of Russia» newsletter''' - #13 (апрель/April'17)''']] ==
{| border="2" cellspacing="0" cellpadding="4" rules="all" style="margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; font-size:95%; empty-cells:show;
|Уважаемый коллега,
''Большое спасибо всем и каждому, кто вносит свой вклад в развитие [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Разделов Википедии на языках России]].''</br>
В этом выпуске:
* [[:ru:Проект:Вики-весна — 2017|Вики-весна — 2017]]
* '''[[w:ru:Проект:Школы и университеты|Википедия в образовании]]''': [https://www.ludovia.com/2017/04/enseigner-wikipedia/ Почему я учу своих студентов редактировать Википедию] (видео, фран.), [http://www.rp-online.de/panorama/wissen/bildung/wikipedia-eintrag-statt-hausarbeit-aid-1.6738149 Википедия в учебном плане Гейдельбергского университета] (нем.), [http://www.npr.org/sections/ed/2017/02/22/515244025/what-students-can-learn-by-writing-for-wikipedia NPR: Чему могут научиться студенты, когда пишут в Википедию] (англ.)
* Главное в википедийных сообществах России одной строкой:
** Новости [[:wmru:|ВМРУ]]: 23 апреля — [[:wmru:Вики-премия 2017|Вики-премия 2017]].
** [[m:Wikipedias in the languages of Russia/ActionPlan/Calendar/ru|Календарь на месяц]]
** [[m:Wikipedias in the languages of Russia/ActionPlan/Potd/ru|Изображение дня]]
* На заметку: [http://www.sanluisobispo.com/opinion/letters-to-the-editor/article144876159.html Википедия учит важности проверки фактов] (англ.), [http://www.nature.com/news/initiative-aims-to-break-science-s-citation-paywall-1.21800 I4OC: инициатива по открытому цитированию] (англ.), [http://elpais.com/elpais/2017/04/02/opinion/1491144492_876964.html В ходе коллаборативного процесса все сообщества выбирают, что зафиксировать, а что опустить] (исп.), [http://www.businessinsider.com/career-benefits-sharing-knowledge-2017-2?r=US&IR=T&IR=T Карьерные выгоды участия в движении обмена знаниями] (англ.)
* Лучшие практики: [http://azertag.az/xeber/_quotWikipediaorg_quot_ensiklopediyasinin_Azerbaycana_dair_ozbekdilli_versiyasi_yaradilir-1046892 Азербайджанский культурный центр в Узбекистане вносит вклад в развитие uzwiki]
* Новости о коллегах за рубежом:
** [http://fenix951.com.ar/nuevo_2013/noticia.php?id=76121 Викимедиа Аргентина сотрудничает с аргентинским минобром в подготовке инструкторов по редактированию Википедии] (исп.)
** [http://www.military-technologies.net/2017/04/12/sharing-indian-culture-with-the-world-through-wikipedia-ashish-bhatnagar/ Открываю миру индийскую культуру ч/з Википедию] (англ.)
** [http://www.thehindu.com/news/cities/Mangalore/karavali-wikimedians-to-supply-content-offline-to-tulu-students-in-village-schools/article17523898.ece Викимедийцы Каравали предоставляют оффлайн-контент деревенским школам, в которых изучают язык тулу] (англ.)
** [http://www.ut.ee/en/news/ambitious-plan-lets-increase-estonian-wikipedia-one-million-articles План: довести Эстонскую Википедию до миллиона статей!] (англ.)
** [http://www.elmundo.es/pais-vasco/2017/02/22/58ad665446163fe9488b4577.html Испанские политики привержены усилению присутствия баскского языка в Википедии.]
* [[m:Wikipedias in the languages of Russia/Tables/ru|Текущие показатели]] разделов ВП:ЯР, [[m:Wikipedias in the languages of Russia/Readership|их читателей]], и [[m:Wikipedias_in_the_languages_of_Russia/Trends|аналитика]].
* [[wmru:Список сайтов со свободным использованием материалов|Список сайтов со свободным использованием материалов]] от ВМРУ
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Подписаться/Отписаться]]. ''Готовы поделиться своими новостями или опытом?'' <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|добавляйте ссылку в следующий выпуск]]</u>!
|
Dear colleague,
''Great thanks go to each and everyone contributing into developing [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Wikipedias in the languages of Russia]]''. </br>In this issue:
* [[m:Wikimedia CEE Spring 2017|Wikimedia CEE Spring 2017]]
* '''[[:outreach:Education|Wikipedia in Education]]:''' [https://www.ludovia.com/2017/04/enseigner-wikipedia/ Why I teach my students editing Wikipedia] (video, fr), [http://www.rp-online.de/panorama/wissen/bildung/wikipedia-eintrag-statt-hausarbeit-aid-1.6738149 Wikipedia in the University of Heidelberg curriculum], [http://www.npr.org/sections/ed/2017/02/22/515244025/what-students-can-learn-by-writing-for-wikipedia NPR: What Students Can Learn By Writing For Wikipedia]
* Single line News from Russia's Wikipedia communities:
** [[:wmru:|Wikimedia Russia]] News: [[:wmru:Вики-премия 2017|Wiki-Award 2017]] on April 23rd.
** [[m:Wikipedias in the languages of Russia/ActionPlan/Calendar|Calendar for the Month]]
** [[m:Wikipedias in the languages of Russia/ActionPlan/Potd|Picture of the Day]]
* Keep in mind: [http://www.sanluisobispo.com/opinion/letters-to-the-editor/article144876159.html Wikipedia is a fantastic tool, and it teaches us the value of fact-checking], [http://www.nature.com/news/initiative-aims-to-break-science-s-citation-paywall-1.21800 Initiative for Open Citation], [http://elpais.com/elpais/2017/04/02/opinion/1491144492_876964.html All linguistic communities decide to record and omit something throughout a collaborative process] (es), [http://www.businessinsider.com/career-benefits-sharing-knowledge-2017-2?r=US&IR=T&IR=T Career benefits of sharing knowledge]
* Best practice: [http://azertag.az/xeber/_quotWikipediaorg_quot_ensiklopediyasinin_Azerbaycana_dair_ozbekdilli_versiyasi_yaradilir-1046892 Azerbaijani Cultural Center in Uzbekistan contributing into uzwiki]
* News about colleagues abroad:
** [http://fenix951.com.ar/nuevo_2013/noticia.php?id=76121 Wikimedia Argentina is collaborating with the Argentinian Ministry of Education to train instructors how to edit Wikipedia.]
** [http://www.military-technologies.net/2017/04/12/sharing-indian-culture-with-the-world-through-wikipedia-ashish-bhatnagar/ Sharing Indian culture with the world through Wikipedia]
** [http://www.thehindu.com/news/cities/Mangalore/karavali-wikimedians-to-supply-content-offline-to-tulu-students-in-village-schools/article17523898.ece Karavali Wikimedians to supply content offline to Tulu students in village schools]
** [http://www.ut.ee/en/news/ambitious-plan-lets-increase-estonian-wikipedia-one-million-articles Ambitious plan: let’s increase Estonian Wikipedia to one million articles!]
** [http://www.elmundo.es/pais-vasco/2017/02/22/58ad665446163fe9488b4577.html Politicians in Spain are committed to increasing the presence of the Basque language on Wikipedia.]
* [[m:Wikipedias in the languages of Russia/Tables|Current Stats]] on WP:LR and [[m:Wikipedias in the languages of Russia/Readership|its Readership]], as well as [[m:Wikipedias_in_the_languages_of_Russia/Trends|analytics]].
* WMRU's [[wmru:Список сайтов со свободным использованием материалов|List of websites under free license]]
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Subscribe/Unsubscribe]]. ''Ready to share own news or valuable experience?'' Add a link into <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|the next month issue]]</u>!
|}</div>
--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 11:55, 20 Απρίλ 2017 (UTC)
== New Wikipedia Library Accounts Available Now (May 2017) ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello Wikimedians!
[[File:Wikipedia_Library_owl.svg|thumb|upright|The TWL OWL says sign up today!]]
[[m:The Wikipedia Library|The Wikipedia Library]] is announcing signups today for free, full-access, accounts to published research as part of our [[m:The_Wikipedia_Library/Journals|Publisher Donation Program]]. You can sign up for new accounts and research materials from:
* '''[[w:en:Wikipedia:American Psychiatric Association|American Psychiatric Association]]''' – Psychiatry books and journals
* '''[[w:en:Wikipedia:Bloomsbury|Bloomsbury]]''' – ''Who's Who'', Drama Online, Berg Fashion Library, and ''Whitaker's''
* '''[[w:fi:Wikipedia:Wikipedian Lähdekirjasto/Gaudeamus|Gaudeamus]]''' – Finnish humanities and social sciences
* '''[[w:fi:Wikipedia:Wikipedian Lähdekirjasto/Ympäristö-lehti|Ympäristö-lehti]]''' – The Finnish Environment Institute's ''Ympäristö-lehti'' magazine
'''Expansions'''
* '''[[w:en:Wikipedia:Gale|Gale]]''' – Biography In Context database added
* '''[[w:en:Wikipedia:Adam Matthew|Adam Matthew]]''' – all 53 databases now available
Many other partnerships with accounts available are listed on [[m:The Wikipedia Library/Databases|our partners page]], including [[w:en:WP:Project MUSE|Project MUSE]], [[w:en:WP:EBSCO|EBSCO]], [[w:en:WP:Taylor & Francis|Taylor & Francis]] and [[w:en:WP:Newspaperarchive.com|Newspaperarchive.com]].
Do better research and help expand the use of high quality references across Wikipedia projects: sign up today!
<br>--[[w:en:Wikipedia:TWL/Coordinators|The Wikipedia Library Team]] 18:52, 2 Καλομηνά 2017 (UTC)
:''You can host and coordinate signups for a Wikipedia Library branch in your own language. Please contact [[m:User:AVasanth_(WMF)|Aaron]].''<br>
:<small>This message was delivered via the [https://meta.wikimedia.org/wiki/MassMessage#Global_message_delivery Global Mass Message] tool to [https://meta.wikimedia.org/wiki/Global_message_delivery/Targets/Wikipedia_Library The Wikipedia Library Global Delivery List].</small>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Samwalton9@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikipedia_Library&oldid=16557812 -->
== [https://meta.wikimedia.org/wiki/Special:SecurePoll/vote/341?setlang={{CONTENTLANG}} Voting has begun in 2017 Wikimedia Foundation Board of Trustees elections] ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">[[File:Wikimedia-logo black.svg|{{#switch:{{CONTENTLANG}}|ar=left|he=left|right}}|125px|link=m:Special:MyLanguage/Wikimedia Foundation elections/2017/Updates/Board voting has begun]]''This is a message from the [[m:Special:MyLanguage/Wikimedia Foundation elections committee|Wikimedia Foundation Elections Committee]]. [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Updates/Board voting has begun|Translations]] are available.''
[https://meta.wikimedia.org/wiki/Special:SecurePoll/vote/341?setlang={{CONTENTLANG}}&uselang={{CONTENTLANG}} Voting has begun] for [[m:Wikimedia Foundation elections/2017#Requirements|eligible voters]] in the 2017 elections for the ''[[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Board of Trustees|Wikimedia Foundation Board of Trustees]]''.
The [[m:Wikimedia Foundation Board of Trustees|Wikimedia Foundation Board of Trustees]] is the ultimate governing authority of the Wikimedia Foundation, a 501(c)(3) non-profit organization registered in the United States. The Wikimedia Foundation manages many diverse projects such as Wikipedia and Commons.
The voting phase lasts from 00:00 UTC May 1 to 23:59 UTC May 14. '''[https://meta.wikimedia.org/wiki/Special:SecurePoll/vote/341?setlang={{CONTENTLANG}}&uselang={{CONTENTLANG}} Click here to vote].''' More information on the candidates and the elections can be found on the [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Board of Trustees|2017 Board of Trustees election page]] on Meta-Wiki.
On behalf of the Elections Committee,<br/>
[[m:User:KTC|Katie Chan]], Chair, [[m:Special:MyLanguage/Wikimedia Foundation elections committee|Wikimedia Foundation Elections Committee]]<br/>
[[m:User:JSutherland (WMF)|Joe Sutherland]], Community Advocate, Wikimedia Foundation
''Posted by the [[m:Special:MyLanguage/User:MediaWiki message delivery|MediaWiki message delivery]] • [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Updates/Board voting has begun|Translate]] • [[m:Talk:Wikimedia Foundation elections/2017|Get help]]</div> 19:14, 3 Καλομηνά 2017 (UTC)''
<!-- Το μήνυμα στάλθηκε από τον User:GVarnum-WMF@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=16683836 -->
== Beta Feature Two Column Edit Conflict View ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
From May 9, the [[mw:Special:MyLanguage/Help:Two_Column_Edit_Conflict_View|Two Column Edit Conflict View]] will be available as a [[mw:Special:MyLanguage/Beta Features|beta feature]] on all wikis. The Two Column Edit Conflict View is a new interface for the edit conflict resolution page. It highlights differences between the editor's and the conflicting changes to make it easy to copy and paste pieces of the text and resolve the conflict. The feature fulfils a request for a more user-friendly edit conflict resolution from the [[m:WMDE Technical Wishes|German Community’s Technical Wishlist]]. Everyone is invited to test the feature and we hope that it will serve you well! </div> [[m:user:Birgit Müller (WMDE)|Birgit Müller (WMDE)]] 14:41, 8 Καλομηνά 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Birgit Müller (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_2&oldid=16712264 -->
== Editing News #1—2017 ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
''[[:m:Special:MyLanguage/VisualEditor/Newsletter/2017/May|Read this in another language]] • [[:m:VisualEditor/Newsletter|Subscription list for this multilingual newsletter]]''
<div style="float:right;width:230px;{{#switch:ltr|rtl=float:left;margin-left:0;|#default=float:right;margin-right:0;}}margin-left:1em;border-style:solid;border-width:1px;padding:1em;">
[[File:VisualEditor-logo.svg|200px|center|alt=VisualEditor]]'''Did you know?'''
<div class="thumbcaption" style="font-size: 90%;">
Did you know that you can review your changes visually?
[[File:VisualEditor visual diff tool - visual diff.png|alt=Screenshot showing some changes to an article. Most changes are highlighted with text formatting.|center|frameless|245x245px]]When you are finished editing the page, type your edit summary and then choose "{{Int:visualeditor-savedialog-label-review}}".
In visual mode, you will see additions, removals, new links, and formatting highlighted. Other changes, such as changing the size of an image, are described in notes on the side.
[[File:VisualEditor visual diff tool - toggle button.png|alt=Toggle button showing visual and wikitext options; visual option is selected.|center|frameless|220x220px]]
Click the toggle button to switch between visual and wikitext diffs.
[[File:VisualEditor visual diff tool - wikitext diff.png|alt=Screenshot showing the same changes, in the two-column wikitext diff display.|center|frameless|245x245px]]
The wikitext diff is the same diff tool that is used in the wikitext editors and in the page history. You can read and help translate [[:mw:Special:MyLanguage/VisualEditor/User guide|the user guide]], which has more information about how to use the visual editor.
</div></div>
Since the last newsletter, the [[:mw:VisualEditor|VisualEditor Team]] has spent most of their time supporting [[:mediawikiwiki:2017_wikitext_editor|the 2017 wikitext editor mode]] which is available inside the visual editor as a Beta Feature, and adding [[:mediawikiwiki:VisualEditor/Diffs|the new visual diff tool]]. Their workboard is available [[:phab:project/board/483/|in Phabricator]]. You can find links to the work finished each week at [[:mw:VisualEditor/Weekly triage meetings|mw:VisualEditor/Weekly triage meetings]]. Their [[:mw:VisualEditor/Current_priorities|current priorities]] are fixing bugs, supporting the 2017 wikitext editor as a [[:mw:Beta Features|beta feature]], and improving the visual diff tool.
=== Recent changes ===
*A '''new wikitext editing mode''' is available as a Beta Feature on desktop devices. The [[:mw:2017 wikitext editor|2017 wikitext editor]] has the same toolbar as the visual editor and can use the citoid service and other modern tools. Go to [[Special:Preferences#mw-prefsection-betafeatures]] to enable the {{Int:Visualeditor-preference-newwikitexteditor-label}}.
* A new '''[[:mediawikiwiki:VisualEditor/Diffs|visual diff tool]]''' is available in VisualEditor's visual mode. You can toggle between wikitext and visual diffs. More features will be added to this later. In the future, this tool may be integrated into other MediaWiki components. [https://phabricator.wikimedia.org/T143350]
* The team have added [[:mediawikiwiki:Editing/Projects/Columns_for_references|multi-column support for lists of footnotes]]. The <code><nowiki><references /></nowiki></code> block can automatically display long lists of references in columns on wide screens. This makes footnotes easier to read. You can [https://phabricator.wikimedia.org/maniphest/task/edit/form/1/?projects=Cite,VisualEditor,Wikimedia-Site-requests&title=Convert%20reference%20lists%20over%20to%20`responsive`%20on%20XXwiki&priority=10&parent=159895 '''request multi-column support'''] for your wiki. [https://phabricator.wikimedia.org/T33597]
* You can now use your web browser's function to switch typing direction in the new wikitext mode. This is particularly helpful for RTL language users like Urdu or Hebrew who have to write JavaScript or CSS. You can use Command+Shift+X or Control+Shift+X to trigger this. [https://phabricator.wikimedia.org/T153356]
* The way to switch between the visual editing mode and the wikitext editing mode is now consistent. There is a drop-down menu that shows the two options. This is now the same in desktop and mobile web editing, and inside things that embed editing, such as Flow. [https://phabricator.wikimedia.org/T116417]
* The {{Int:visualeditor-categories-tool}} item has been moved to the top of the {{Int:visualeditor-pagemenu-tooltip}} menu (from clicking on the "hamburger" icon) for quicker access. [https://phabricator.wikimedia.org/T74399] There is also now a "Templates used on this page" feature there. [https://phabricator.wikimedia.org/T149009]
* You can now create <code><nowiki><chem></nowiki></code> tags (sometimes used as <code><nowiki><ce></nowiki></code>) for chemical formulas inside the visual editor. [https://phabricator.wikimedia.org/T153365]
* Tables can be set as collapsed or un-collapsed. [https://phabricator.wikimedia.org/T157989]
* The {{Int:visualeditor-specialcharacter-button-tooltip}} menu now includes characters for Canadian Aboriginal Syllabics and angle quotation marks (‹› and ⟨⟩) . The team thanks the volunteer developer, [[:S:en:User:Tpt|Tpt]]. [https://phabricator.wikimedia.org/T108626]
* A bug caused some section edit conflicts to blank the rest of the page. This has been fixed. The team are sorry for the disruption. [https://phabricator.wikimedia.org/T154217]
* There is a new keyboard shortcut for citations: <code>Control</code>+<code>Shift</code>+<code>K</code> on a PC, or <code>Command</code>+<code>Shift</code>+<code>K</code> on a Mac. It is based on the keyboard shortcut for making links, which is <code>Control</code>+<code>K</code> or <code>Command</code>+<code>K</code> respectively. [https://phabricator.wikimedia.org/T99299]
=== Future changes ===
* The team is working on a syntax highlighting tool. It will highlight matching pairs of <code><nowiki><ref></nowiki></code> tags and other types of wikitext syntax. You will be able to turn it on and off. It will first become available in VisualEditor's built-in wikitext mode, maybe late in 2017. [https://phabricator.wikimedia.org/T101246]
* The kind of button used to {{Int:Showpreview}}, {{Int:showdiff}}, and finish an edit will change in all WMF-supported wikitext editors. The new buttons will use [[Mw:OOjs UI|OOjs UI]]. The buttons will be larger, brighter, and easier to read. The labels will remain the same. You can test the new button by editing a page and adding <code>&ooui=1</code> to the end of the URL, like this: https://www.mediawiki.org/wiki/Project:Sandbox?action=edit&ooui=1 The old appearance will no longer be possible, even with local CSS changes. [https://phabricator.wikimedia.org/T162849]
* The [[:mediawikiwiki:File:Edit_toolbar_-_2.png|outdated 2006 wikitext editor]] will be removed later this year. It is used by approximately 0.03% of active editors. See [[:mw:Editor|a list of editing tools on mediawiki.org]] if you are uncertain which one you use. [https://phabricator.wikimedia.org/T30856]
*If you aren't reading this in your preferred language, then please help us with translations! Subscribe to the [[mail:translators-l|Translators mailing list]] or [https://meta.wikimedia.org/w/index.php?title=User_talk:Elitre_(WMF)&action=edit§ion=new contact us] directly, so that we can notify you when the next issue is ready. {{int:Feedback-thanks-title}}
—[[:mw:User:Elitre (WMF)|Elitre (WMF)]]
</div> 18:07, 12 Καλομηνά 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Elitre (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=VisualEditor/Newsletter/Wikis_with_VE&oldid=16160401 -->
== Prototype for editing Wikidata infoboxes on Wikipedia ==
Hello,
I’m sorry for writing in English. It’d be great if someone could translate this message if necessary.
One of the most requested features for Wikidata is to enable editing of Wikidata’s data directly from Wikipedia, so the editors can continue their workflow without switching websites.
The Wikidata development team has been working on a tool to achieve this goal: '''fill and edit the Wikipedia infoboxes with information from Wikidata, directly on Wikipedia''', via the Visual Editor.
We already [[d:Wikidata:Client editing input|asked for feedback in 2015]], and collected some interesting ideas which we [[:File:Facilitating_the_use_of_Wikidata_in_Wikimedia_projects_with_a_user-centered_design_approach.pdf|shared with you in this thesis]]. Now we would like to present to you our first prototype and collect your feedback, in order to improve and continue the development of this feature.
We present this work to you very early, so we can include your feedback before and all along the development. You are the core users of this feature, so we want to make sure that it fits your needs and editing processes.
You will find the prototype, description of the features, and a demo video, '''[[d:Special:MyLanguage/Wikidata:Client editing prototype|on this page]]'''. Feel free to add any comment or feedback on the talk page. The page is currently not translated in every languages, but you can add your contribution by helping to translate it.
Unfortunately, I won’t be able to follow all the discussions on Wikipedia, so if you want to be sure that your feedback is read, please add it on the Wikidata page, in your favorite language. Thanks for your understanding.
Thanks, [[user:Lea Lacroix (WMDE)|Lea Lacroix (WMDE)]]
<!-- Το μήνυμα στάλθηκε από τον User:Lea Lacroix (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Lea_Lacroix_(WMDE)/List_Wikipedias&oldid=16766491 -->
== RevisionSlider ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
[[mw:Special:MyLanguage/Extension:RevisionSlider|RevisionSlider]] will be available as a default feature for all users on all wikis from May 17. The RevisionSlider adds a slider view to the diff page so that you can easily move between revisions. The slider view is collapsed by default, and will load by clicking on it. It can also be turned off entirely in the user preferences. RevisionSlider has been a default feature on German, Arabic and Hebrew Wikipedia for 6 months and a beta feature on all wikis for 8 months. The feature fulfills a wish from the [[m:WMDE Technical Wishes|German Community’s Technical Wishlist]]. Thanks to everyone who tested RevisionSlider and gave valuable feedback to improve the feature! We hope that RevisionSlider will continue to serve you well in your work. </div> [[m:user:Birgit Müller (WMDE)|Birgit Müller (WMDE)]] 14:44, 16 Καλομηνά 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Birgit Müller (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=WMDE_Technical_Wishes/Technical_Wishes_News_list_2&oldid=16715712 -->
== [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Cycle 2|Join the next cycle of Wikimedia movement strategy discussions (underway until June 12)]] ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
:''[[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Updates/Cycle 2 discussions launch|Message is available for translation on Meta-Wiki]]''
[[File:Wikimedia-logo.svg|{{#switch:{{CONTENTLANG}}|ar=left|he=left|right}}|150px]]
The Wikimedia movement strategy core team and working groups have completed reviewing the more than 1800 thematic statements we received from the first discussion. They have identified [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Cycle 2|5 themes that were consistent across all the conversations]] - each with their own set of sub-themes. These are not the final themes, just an initial working draft of the core concepts.
You are invited to [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Participate|join the online and offline discussions taking place]] on these 5 themes. This round of discussions will take place between now and June 12th. You can discuss as many as you like; we ask you to participate in the ones that are most (or least) important to you.
Here are the five themes, each has a page on Meta-Wiki with more information about the theme and how to participate in that theme's discussion:
* [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Cycle 2/Healthy, Inclusive Communities|Healthy, Inclusive Communities]]
* [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Cycle 2/The Augmented Age|The Augmented Age]]
* [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Cycle 2/A Truly Global Movement|A Truly Global Movement]]
* [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Cycle 2/The Most Respected Source of Knowledge|The Most Respected Source of Knowledge]]
* [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Cycle 2/Engaging in the Knowledge Ecosystem|Engaging in the Knowledge Ecosystem]]
On the [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Participate|movement strategy portal on Meta-Wiki]], you can find more information about each of these themes, their discussions, and how to participate.
''Posted by [[m:Special:MyLanguage/User:MediaWiki message delivery|MediaWiki message delivery]] on behalf of the [[m:Special:MyLanguage/Wikimedia Foundation|Wikimedia Foundation]] • [[m:Special:MyLanguage/Strategy/Wikimedia movement/2017/Updates/Cycle 2 discussions launch|{{int:please-translate}}]] • [[m:Talk:Strategy/Wikimedia movement/2017/Updates|Get help]]''</div> 21:09, 16 Καλομηνά 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:GVarnum-WMF@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Strategy/Wikimedia_movement/2017/Updates/Global_message_delivery&oldid=16773425 -->
== New notification when a page is connected to Wikidata ==
Hello all,
''({{Int:Please-translate}})''
The Wikidata development team is about to deploy a new feature on all Wikipedias. It is a new type of notification (via Echo, the notification system you see at the top right of your wiki when you are logged in), that will inform the creator of a page, when this page is connected to a Wikidata item.
You may know that [[d:Wikidata:Main page|Wikidata]] provides a centralized system for all the interwikilinks. When a new page is created, it should be connected to the corresponding Wikidata item, by modifying this Wikidata item. With this new notification, editors creating pages will be informed when another editor connects this page to Wikidata.
[[File:Screenshot Echo Wikibase notification.png]]
This feature will be deployed on May 30th on all the Wikipedias, excepting English, French and German. This feature will be disable by default for existing editors, and enabled by default for new editors.
This is the first step of the deployments, the Wikipedias and other Wikimedia projects will follow in the next months.
If you have any question, suggestion, please let me know by pinging me. You can also follow and leave a comment [[phab:T142102|on the Phabricator ticket]].
Thanks go to [[d:user:Matěj Suchánek|Matěj Suchánek]] who developed this feature!
{{Int:Feedback-thanks-title}} [[:d:User:Lea Lacroix (WMDE)|Lea Lacroix (WMDE)]] ([[:d:User talk:Lea Lacroix (WMDE)|talk]])
<!-- Το μήνυμα στάλθηκε από τον User:Lea Lacroix (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Lea_Lacroix_(WMDE)/List_Wikipedias&oldid=16774958 -->
== [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Updates/Start of the 2017 Wikimedia Foundation Funds Dissemination Committee elections|Start of the 2017 Wikimedia Foundation Funds Dissemination Committee elections]] ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">[[File:Wikimedia-logo black.svg|{{#switch:{{CONTENTLANG}}|ar=left|he=left|right}}|125px|link=m:Special:MyLanguage/Wikimedia Foundation elections/2017/Updates/Start of the 2017 Wikimedia Foundation Funds Dissemination Committee elections]]
:''[[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Updates/Start of the 2017 Wikimedia Foundation Funds Dissemination Committee elections|Translations of this message are available on Meta-Wiki]].''
On behalf of the Wikimedia Foundation Elections Committee, we are pleased to announce that self-nominations are being accepted for the [[m:Wikimedia Foundation elections/2017/Funds Dissemination Committee/Call for candidates|2017 Wikimedia Foundation Funds Dissemination Committee]] and [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Funds Dissemination Committee Ombudsperson|Funds Dissemination Committee Ombudsperson]] elections. Please read the letter from the Wikimedia Foundation calling for candidates at [[m:Wikimedia Foundation elections/2017/Funds Dissemination Committee/Call for candidates|on the 2017 Wikimedia Foundation elections portal]].
''Funds Dissemination Committee''<br />
The Funds Dissemination Committee (FDC) makes recommendations about how to allocate Wikimedia movement funds to eligible entities. There are five positions being filled. More information about this role can be found at [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Funds Dissemination Committee|the FDC elections page]].
''Funds Dissemination Committee Ombudsperson''<br />
The Funds Dissemination Committee Ombudsperson receives complaints and feedback about the FDC process, investigates complaints at the request of the Board of Trustees, and summarizes the investigations and feedback for the Board of Trustees on an annual basis. One position is being filled. More information about this role can be found at [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Funds Dissemination Committee Ombudsperson|the FDC Ombudsperson elections page]].
'''The [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Funds Dissemination Committee/Candidates|candidacy submission phase]] will last until May 28 (23:59 UTC).'''
'''We will also be accepting questions to ask the candidates until May 28. [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Funds Dissemination Committee/Questions|You can submit your questions on Meta-Wiki]].''' Once the questions submission period has ended on May 28, the Elections Committee will then collate the questions for the candidates to respond to.
The goal of this process is to fill the '''five community-selected seats''' on the Wikimedia Foundation Funds Dissemination Committee and the '''community-selected ombudsperson'''. The election results will be used by the Board itself to make the appointments.
The full schedule for the FDC elections is as follows. All dates are '''inclusive''', that is, from the beginning of the first day (UTC) to the end of the last.
* May 15 (00:00 UTC) – May 28 (23:59 UTC) – '''Nominations'''
* May 15 – May 28 – '''Candidates questions submission period'''
* May 29 – June 2 – '''Candidates answer questions'''
* June 3 – June 11 – '''Voting period'''
* June 12–14 – '''Vote checking'''
* June 15 – '''Goal date for announcing election results'''
More information on this year's elections can be found at [[m:Special:MyLanguage/Wikimedia Foundation elections/2017|the 2017 Wikimedia Foundation elections portal]].
Please feel free to post a note about the election on your project's village pump. Any questions related to the election can be posted on [[m:Talk:Wikimedia Foundation elections/2017|the talk page on Meta-Wiki]], or sent to the election committee's mailing list, <tt dir="ltr" style="white-space:nowrap;font-size:12px;line-height:1.5">board-elections[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]wikimedia.org</tt>.
On behalf of the Election Committee,<br />
[[m:User:KTC|Katie Chan]], Chair, [[m:Special:MyLanguage/Wikimedia Foundation elections committee|Wikimedia Foundation Elections Committee]]<br />
[[m:User:JSutherland (WMF)|Joe Sutherland]], Community Advocate, Wikimedia Foundation
''Posted by the [[m:Special:MyLanguage/User:MediaWiki message delivery|MediaWiki message delivery]] • [[m:Special:MyLanguage/Wikimedia Foundation elections/2017/Updates/Start of the 2017 Wikimedia Foundation Funds Dissemination Committee elections|Translate]] • [[m:Talk:Wikimedia Foundation elections/2017|Get help]]''</div> 21:05, 23 Καλομηνά 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:GVarnum-WMF@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=16804695 -->
== [[m:Requests for comment/Global centralnotice for the blockade of the Turkish government]] ==
Hi, you are invited to participate in the discussion on the proposal to make a banner through [[m: centralnotice]] to inform more people around the world about what the Turkish government has done about Wikipedia, ie all the language versions of Wikipedia are You are obscured, so in Turkey it is impossible to view the * .wikipedia.org site. To hope that the Turkish government will remove the block, it is necessary to raise awareness of this fact around the world because it is important to succeed in this mission because Wikipedia can not be seen in Turkey. With this message also for those interested, I invite him to sign the [[m:Response to 2017 ban in Turkey|Wikimedian appeal]].
If you have any questions or questions do not hesitate to contact me.
Thanks best regards. --[[User:Samuele2002|<span style="color:#0080C0;">'''Samuele'''2002</span>]] <small>[[User Talk:Samuele2002|'''<font face="Cursive"><font color="#F50">(Talk!)</font></font>''']]</small> 05:50, 12 Κερασινού 2017 (UTC)
== [[m:Wikipedias_in_the_languages_of_Russia/Newsletter#2017-06-15|'''Бюллетень «Википедии на языках России» / «Wikipedias in the languages of Russia» newsletter – #14''']] ==
{| border="2" cellspacing="0" cellpadding="4" rules="all" style="margin:1em 1em 1em 0; border:solid 1px #AAAAAA; border-collapse:collapse; font-size:95%; empty-cells:show;
|Уважаемый коллега,
''Большое спасибо всем и каждому, кто вносит свой вклад в развитие [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Разделов Википедии на языках России]].''</br>
В этом выпуске:
* Дискуссионные группы проекта [https://vk.com/club48540739 в Vk.com] и [https://www.facebook.com/groups/1942496925980407/ в Facebook.com]
* На встречу к Викимании-2017
** Предварительная [https://wikimania2017.wikimedia.org/wiki/Programme программа мероприятия]
** Подготовка проекта выступления и постера [[:m:User:Frhdkazan/Wikimania2017|от имени наших проектов]]
* [[m:Wikipedias in the languages of Russia/ActionPlan/ru|План действий по повышению посещаемости малых Вики]]:
** "[[m:Wikipedias in the languages of Russia/ActionPlan/Calendar/ru|Календарь на Заглавную]]": + бурятская, луговомарийская, кабардинская, крымскотатарская и аварская вики
** "[[m:Wikipedias in the languages of Russia/ActionPlan/Potd/ru|Изображение дня]]": + вепсская, калмыкская, карачай-балкарская и аварская вики
* [[:wmuk:Celtic Knot Conference 2017|Научно-практическая конференция по развитию Википедий на языках коренных и автохтонных народов "Кельтский узел 2017"]], Эдинбург (Великобритания), 6.07.2017
* [[m:Wikipedias in the languages of Russia/Tables/ru|Текущие показатели]] разделов ВП:ЯР, [[m:Wikipedias in the languages of Russia/Readership|их читателей]], и [[m:Wikipedias_in_the_languages_of_Russia/Trends|аналитика]].
* [[wmru:Список сайтов со свободным использованием материалов|Список сайтов со свободным использованием материалов]] от ВМРУ
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Подписаться/Отписаться]]. ''Готовы поделиться своими новостями или опытом?'' <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|добавляйте ссылку в следующий выпуск]]</u>!
|
Dear colleague,
''Great thanks go to each and everyone contributing into developing [[File:Flag-map_of_Russia.svg|border|20px]] [[m:Wikipedias_in_the_languages_of_Russia|Wikipedias in the languages of Russia]]''. </br>In this issue:
* Project discussion groups [https://vk.com/club48540739 in Vk.com] & [https://www.facebook.com/groups/1942496925980407/ in Facebook.com]
* Towards Wikimania-2017
** Preliminary [https://wikimania2017.wikimedia.org/wiki/Programme Programme]
** Drafting lightning talk & poster [[:m:User:Frhdkazan/Wikimania2017|on behalf of our projects]]
* [[m:Wikipedias in the languages of Russia/ActionPlan/ru|Action plan to increase small wiki readership & participation]]:
** "[[m:Wikipedias in the languages of Russia/ActionPlan/Calendar/ru|Events of the month]]": + bxr, mhr, kbd, crh & avwiki
** "[[m:Wikipedias in the languages of Russia/ActionPlan/Potd/ru|Picture of the Day]]": + vep, xal, krc & avwiki
* [[:wmuk:Celtic Knot Conference 2017|Celtic Knot Conference 2017]] on supporting Celtic & Indigenous Languages, Edinburgh (UK), 6.07.2017
* [[m:Wikipedias in the languages of Russia/Tables|Current Stats]] on WP:LR and [[m:Wikipedias in the languages of Russia/Readership|its Readership]], as well as [[m:Wikipedias_in_the_languages_of_Russia/Trends|analytics]].
* WMRU's [[wmru:Список сайтов со свободным использованием материалов|List of websites under free license]]
[[m:Wikipedias in the languages of Russia/Newsletter/Delivery list|Subscribe/Unsubscribe]]. ''Ready to share own news or valuable experience?'' Add a link into <u>[[m:Wikipedias_in_the_languages_of_Russia/Newsletter#Подготовка нового выпуска / Preparing new issue|the next month issue]]</u>!
|}</div>--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 13:54, 15 Κερασινού 2017 (UTC)
== Διαχειριστές ==
Γειά χαρά νταν ποιοι είναι διαχειριστές εδώ πέρα --[[Ειδικόν:Συνεισφορές/80.106.160.80|80.106.160.80]] 08:23, 18 Ιουνίου 2017 (UTC)
== Wikidata changes now also appear in enhanced recent changes ==
<div lang="en" dir="ltr" class="mw-content-ltr">
Hello, and sorry to write this message in English. You can [[mw:User:Lea_Lacroix_(WMDE)/Wikidata_in_enhanced_recent_changes|help translating it]].
Starting from today, you will be able to display Wikidata changes in both modes of the recent changes and the watchlist.
'''[[mw:User:Lea_Lacroix_(WMDE)/Wikidata_in_enhanced_recent_changes|Read and translate the full message]]'''
{{Int:Feedback-thanks-title}} [[user:Lea Lacroix (WMDE)|Lea Lacroix (WMDE)]] 08:33, 29 Κερασινού 2017 (UTC)
<small>(wrong target page? you can [[m:User:Lea Lacroix (WMDE)/List Wikipedias|fix it here]])</small>
</div>
<!-- Το μήνυμα στάλθηκε από τον User:Lea Lacroix (WMDE)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:Lea_Lacroix_(WMDE)/List_Wikipedias&oldid=16777494 -->
== Accessible editing buttons ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">The MediaWiki developers have been slowly improving the accessibility of the user interface. The next step in this transition will change the appearance of some buttons and may break some outdated (non-updated or unmaintained) user scripts and gadgets.
You can see and use the [https://www.mediawiki.org/wiki/Project:Sandbox?action=submit&ooui=0 old] and [https://www.mediawiki.org/wiki/Project:Sandbox?action=submit&ooui=1 new] versions now. Most editors will only notice that some buttons are slightly larger and have different colors.
<gallery mode="nolines" caption="Comparison of old and new styles" heights="240" widths="572">
File:MediaWiki edit page buttons accessibility change 2017, before.png|Buttons before the change
File:MediaWiki edit page buttons accessibility change 2017, after.png|Buttons after the change
</gallery>
However, this change also affects some user scripts and gadgets. Unfortunately, some of them may not work well in the new system. <mark>If you maintain any user scripts or gadgets that are used for editing, please see '''[[:mw:Contributors/Projects/Accessible editing buttons]]''' for information on how to test and fix your scripts. Outdated scripts can be tested and fixed now.</mark>
This change will probably reach this wiki on '''Tuesday, 18 July 2017'''. Please leave a note at [[:mw:Talk:Contributors/Projects/Accessible editing buttons]] if you need help.</div> [[:m:User:Whatamidoing (WMF)|Whatamidoing (WMF)]] ([[User talk:Whatamidoing (WMF)|talk]]) 22:22, 10 Χορτοθερί 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Quiddity (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery/Wikipedia&oldid=16980876 -->
== Page Previews (Hovercards) update ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
Hello,
A quick update on the progress of enabling [[mw:Hovercards|Page Previews]] (previously named Hovercards) on this project. Page Previews provide a preview of any linked article, giving readers a quick understanding of a related article without leaving the current page. As mentioned in December we're preparing to remove the feature from Beta and make it the default behavior for logged-out users. We have recently made a large update to the code which fixes most outstanding bugs.
Due to some issues with our instrumentation, we delayed our deployment by a few months. We are finally ready to deploy the feature. Page Previews will be off by default and available in the user preferences page for logged-in users the week of July 24th. The feature will be on by default for current beta users and logged-out users. If you would like to preview the feature, you can enable it as a [[Special:Preferences#mw-prefsection-betafeatures|beta feature]]. For more information see [[mw:Hovercards|Page Previews]]. Questions can be left [[mw:Talk:Beta_Features/Hovercards|on the talk page]] in your preferred language.
Thank you again.
</div>[[m:User:CKoerner (WMF)|CKoerner (WMF)]] ([[m:User talk:CKoerner (WMF)|talk]]) 22:32, 20 Χορτοθερί 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:CKoerner_(WMF)/Enable_Hovercards/Reminder/Distribution_list&oldid=17019707 -->
== Improved search in deleted pages archive ==
{{int:please-translate}}
During Wikimedia Hackathon 2016, the [[mw:Wikimedia_Discovery|Discovery]] team [https://phabricator.wikimedia.org/T109561 worked] on one of the items on the 2015 community wishlist, namely [[m:2015_Community_Wishlist_Survey/Search#Provide_a_means_of_searching_for_deleted_pages|enabling searching the archive of deleted pages]]. This feature is now ready for production deployment, and will be enabled on all wikis, except Wikidata.
Right now, the feature is behind a feature flag - to use it on your wiki, please go to the <code>Special:Undelete</code> page, and add <code>&fuzzy=1</code> to the URL, like this: https://test.wikipedia.org/w/index.php?title=Special%3AUndelete&fuzzy=1. Then search for the pages you're interested in. There should be more results than before, due to using ElasticSearch indexing (via the CirrusSearch extension).
We plan to enable this improved search by default on all wikis soon (around August 1, 2017). If you have any objections to this - please raise them with the Discovery team via [http://mailto:discovery@lists.wikimedia.org email] or on this announcement's discussion page. Like most Mediawiki configuration parameters, the functionality can be configured per wiki.
Once the improved search becomes the default, you can still access the old mode using <code>&fuzzy=0</code> in the URL, like this: https://test.wikipedia.org/w/index.php?title=Special%3AUndelete&fuzzy=0
Please note that since Special:Undelete is an admin-only feature, this search capability is also only accessible to wiki admins.
{{Int:Feedback-thanks-title}} [[m:User:CKoerner (WMF)|CKoerner (WMF)]] ([[m:User talk:CKoerner (WMF)|talk]]) 18:39, 25 Χορτοθερί 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:CKoerner_(WMF)/Archive_search_announce/Distribution_list&oldid=17036927 -->
== RfC regarding "Interlinking of accounts involved with paid editing to decrease impersonation" ==
There is currently a RfC open on Meta regarding "[https://meta.wikimedia.org/wiki/Requests_for_comment/Interlinking_of_accounts_involved_with_paid_editing_to_decrease_impersonation requiring those involved with paid editing on Wikipedia to link on their user page to all other active accounts through which they advertise paid Wikipedia editing business.]"
Note this is to apply to Wikipedia and not necessarily other sister projects, this is only to apply to websites where people are specifically advertising that they will edit Wikipedia for pay and not any other personal, professional, or social media accounts a person may have.
[https://meta.wikimedia.org/wiki/Requests_for_comment/Interlinking_of_accounts_involved_with_paid_editing_to_decrease_impersonation Please comment on meta]. Thanks. Send on behalf of [[User:Doc James]].
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 21:07, 17 Σταυρί 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Doc James@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery/Wikipedias&oldid=17234819 -->
== Discussion on synced reading lists ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
'''Discussion on synced reading lists'''
Hello,
[[File:Illustration of Reading List feature on Android Wikipedia App (not logged in).png|thumb]] The Reading Infrastructure team at the Wikimedia Foundation is developing a cross-platform reading list service for the mobile Wikipedia app. Reading lists are like bookmark folders in your web browser. They allow readers using the Wikipedia app to bookmark pages into folders to read later. This includes reading offline. Reading lists do not create or alter content in any way.
To create Reading Lists, app users will register an account and marked pages will be tied to that account. Reading List account preferences sync between devices. You can read the same pages on different mobile platforms (tablets, phones). This is the first time we are syncing preference data between devices in such a way. We want to hear and address concerns about privacy and data security. We also want to explain why the current watchlist system is not being adapted for this purpose.
=== Background ===
In 2016 the Android team replaced the simple Saved Pages feature with Reading Lists. Reading Lists allow users to bookmark pages into folders and for reading offline. The intent of this feature was to allow "syncing" of these lists for users with many devices. Due to overlap with the Gather feature and related community concerns, this part was put on hold.
The Android team has identified this lack of synching as a major area of complaint from users. They expect lists to sync. The iOS team has held off implementing Reading Lists, as syncing was seen as a "must have" for this feature. A recent [https://phabricator.wikimedia.org/T164990 technical RfC] has allowed these user stories and needs to be unblocked. Initially for Android, then iOS, and with web to potentially follow.
Reading lists are private, stored as part of a user's account, not as a public wiki page. There is no sharing or publishing ability for reading lists. No planned work to make these public. The target audience are people that read Wikipedia and want to bookmark and organize that content in the app. There is a potential for the feature to be available on the web in the future.
=== Why not watchlists ===
Watchlists offer similar functionality to Reading Lists. The Reading Infrastructure team evaluated watchlist infrastructure before exploring other options. In general, the needs of watchlists differ from Reading Lists in a few key ways:
* Reading lists focus on Reading articles, not the monitoring of changes.
* Watchlists are focused on monitoring changes of pages/revisions.
** The Watchlist infrastructure is key to our contributor community for monitoring content changes manually and through the use of automated tools (bots). Because of these needs, expanding the scope of Watchlists to reading purposes will only make the project harder to maintain and add more constraints.
* By keeping the projects separate it is easier to scale resources. We can serve these two different audiences and prioritize the work accordingly. Reading Lists are, by their nature, less critical to the health of Wikipedia/MediaWiki.
* Multi-project support. Reading Lists are by design cross-wiki/project. Watchlists are tied to specific wikis. While there have been many discussion for making them cross-wiki, resolution is not in the near term.
[[mw:Wikimedia Apps/Synced Reading Lists|More information can be found on MediaWiki.org]] where feedback and ideas are welcome.
Thank you
</div> [[m:User:CKoerner (WMF)|CKoerner (WMF)]] ([[m:User talk:CKoerner (WMF)|talk]]) 20:35, 20 Σταυρί 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery/Wikipedia&oldid=16981815 -->
== Баннерная кампания про Российскую Викимедиа конференцию 2017 ==
Уважаемые коллеги, пожалуйста выскажите своё мнение по поводу ''[[m:CentralNotice/Request/2017 Wiki Conference Russia|баннерной кампании CentralNotice]]'' для объявления о [[wmru:Вики-конференция 2017|Российской Викимедиа конференции 2017]] (для читателей разных вики из России + русская вики глобально). Спасибо.--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 16:01, 27 Σταυρί 2017 (UTC)
== Баннерная кампания про Приволжский вики-семинар 2017 ==
* '''EN:''' Dear colleagues, please comment on ''[[m:CentralNotice/Request/Volga WikiSeminar 2017|CentralNotice banner proposal]]'' for [[wmru:Volga WikiSeminar 2017/en|Volga WikiSeminar 2017]] announcement (all [[m:Wikipedias_in_the_languages_of_Russia/Tables#Active_Wikipedias|active WPs in languages of Russia]], except Azerbaidjani, Kazakh, Finnish and Ukrainian; globally, [[m:CentralNotice/Request/2017_Wiki_Conference_Russia#Banner_in_Ukraine|except Ukraine]]). Thank you & sorry if this announcement is not available in your preferred language.
* '''RU:''' Уважаемые коллеги, пожалуйста выскажите своё мнение по поводу ''[[m:CentralNotice/Request/Volga WikiSeminar 2017|баннерной кампании CentralNotice]]'' для объявления о [[wmru:Volga WikiSeminar 2017|Приволжском вики-семинаре 2017]] (все [[m:Wikipedias_in_the_languages_of_Russia/Tables/ru#Активные Википедии|активные ВП на языках России]], кроме азербайджанской, казахской, украинской и финской; глобально, [[m:CentralNotice/Request/2017_Wiki_Conference_Russia#Banner_in_Ukraine|кроме Украины]]). Спасибо и приношу извинения, если данное объявление недоступно на предпочитаемом вами языке.--[[Χρήστες:Frhdkazan|Frhdkazan]] ([[Καλάτσεμαν χρήστε:Frhdkazan|συζήτηση]]) 12:06, 9 Τρυγομηνά 2017 (UTC)
== New print to pdf feature for mobile web readers ==
<div class="plainlinks mw-content-ltr" lang="en" dir="ltr">
'''New print to pdf feature for mobile web readers'''
The Readers web team will be deploying a new feature this week to make it [[mw:Reading/Web/Projects/Mobile_PDFs|easier to download PDF versions of articles on the mobile website]].
Providing better offline functionality was one of the highlighted areas from [[m:New_Readers/Offline|the research done by the New Readers team in Mexico, Nigeria, and India]]. The teams created a prototype for mobile PDFs which was evaluated by user research and community feedback. The [[m:New_Readers/Offline#Concept_testing_for_mobile_web|prototype evaluation]] received positive feedback and results, so development continued.
For the initial deployment, the feature will be available to Google Chrome browsers on Android. Support for other mobile browsers to come in the future. For Chrome, the feature will use the native Android print functionality. Users can choose to download a webpage as a PDF. [[mw:Reading/Web/Projects/Print_Styles#Mobile_Printing|Mobile print styles]] will be used for these PDFs to ensure optimal readability for smaller screens.
The feature is available starting Wednesday, Nov 15. For more information, see [[mw:Reading/Web/Projects/Mobile_PDFs|the project page on MediaWiki.org]].
{{Int:Feedback-thanks-title}}
</div> [[m:User:CKoerner (WMF)|CKoerner (WMF)]] ([[m:User talk:CKoerner (WMF)|talk]]) 22:07, 20 Αεργί 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:CKoerner (WMF)@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=User:CKoerner_(WMF)/Mobile_PDF_distribution_list&oldid=17448927 -->
== Call for Wikimania 2018 Scholarships ==
Hi all,
We wanted to inform you that scholarship applications for [[:wm2018:Wikimania 2018|Wikimania 2018]] which is being held in Cape Town, South Africa on July 18–22, 2018 are now being accepted. '''Applications are open until Monday, 22 January 2018 23:59 UTC.'''
Applicants will be able to apply for a partial or full scholarship. A full scholarship will cover the cost of an individual's round-trip travel, shared accommodation, and conference registration fees as arranged by the Wikimedia Foundation. A partial scholarship will cover conference registration fees and shared accommodation. Applicants will be rated using a pre-determined selection process and selection criteria established by the Scholarship Committee and the Wikimedia Foundation, who will determine which applications are successful. To learn more about Wikimania 2018 scholarships, please visit: [[:wm2018:Scholarships]].
To apply for a scholarship, fill out the multi-language application form on: '''https://scholarships.wikimedia.org/apply'''
It is highly recommended that applicants review all the material on the Scholarships page and [[:wm2018:Scholarships/FAQ|the associated FAQ]] before submitting an application. If you have any questions, please contact: wikimania-scholarships at wikimedia.org or leave a message at: [[:wm2018:Talk:Scholarships]]. Please help us spread the word and translate pages!
Best regards, [[:m:User:Slashme|David Richfield]] and [[:m:DerHexer|Martin Rulsch]] for the [[:wm2018:Scholarship Committee|Scholarship Committee]] 19:24, 20 Χριστουγενναρί 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:DerHexer@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_Wikipedia_delivery&oldid=17300722 -->
== User group for Military Historians ==
Greetings,
"Military history" is one of the most important subjects when speak of sum of all human knowledge. To support contributors interested in the area over various language Wikipedias, we intend to form a user group. It also provides a platform to share the best practices between military historians, and various military related projects on Wikipedias. An initial discussion was has been done between the coordinators and members of WikiProject Military History on English Wikipedia. Now this discussion has been taken to Meta-Wiki. Contributors intrested in the area of military history are requested to share their feedback and give suggestions at [[:m:Talk:Discussion to incubate a user group for Wikipedia Military Historians|Talk:Discussion to incubate a user group for Wikipedia Military Historians]].
[[Χρήστες:MediaWiki message delivery|MediaWiki message delivery]] ([[Καλάτσεμαν χρήστε:MediaWiki message delivery|συζήτηση]]) 10:46, 21 Χριστουγενναρί 2017 (UTC)
<!-- Το μήνυμα στάλθηκε από τον User:Krishna Chaitanya Velaga@metawiki με βάση τη λίστα στην https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_Wikipedia_delivery&oldid=17565441 -->
plzdbs6diikmbgvgxxwfq46ejxrtayh
Αμερικανική εταιρεία ραδιοτηλεόρασης
0
2727
36156
36155
2025-02-01T23:54:04Z
Nikos Patas
11433
36156
wikitext
text/x-wiki
Η '''''Αμερικανική Εταιρεία Ραδιοτηλεοπτικών Εκπομπών''''' (''American Broadcasting Company'', ABC) εν ένα αμερικανικόν τηλεοπτικόν δίκτυον εμπορικών εκπομπών, π' αποτελεί ιδιοκτησίαν τη Disney-ABC Television Group, θεγατρικής του τμήματος Disney Media Networks τ'ς εταιρείας [[The Walt Disney Company|Walt Disney Company]]. Το δίκτυον έχ' την έδραν του σην λεωφόρο Columbus και την Δυτικήν 66η οδό σο Μανχάταν τη Νέας Υόρκης. Υπάρχουν επιπλέον τρανά γραφεία και εγκαταστάσεις παραγωγής σ' άλλες περιοχές τη Νέας Υόρκης, καθώς και σο Λος Άντζελες και σο [[Μπέρμπανκ]] τη [[Καλιφόρνιαν|Καλιφόρνιας]].
Απ' το 2007, όντες η ABC Radio (γνωστή και ως Cumulus Media Networks) επωλήθεν σην Citadel Broadcasting, η ABC ελιγόστευσεν σχεδόν αποκλειστικά τις τηλεοπτικές ατ'ς δραστηριότητες. Το πέμπτον παλαιότερον σημαντικόν ραδιοτηλεοπτικόν δίκτυον σον κόσμον και το νεότερον απ' τα τρία τρανά τηλεοπτικά δίκτυα, το ABC συχνά αποκαλείται "'''Το Δίκτυο Αλφάβητου'''", καθώς ο αρχικός του χαρακτήρας αντιπροσωπεύει και τα τρία πρώτα γράμματα του λατινικού αλφαβήτου.
Η ABC ερχήνωσεν ως ραδιοφωνικόν δίκτυον σις 12 Τρυγομηνά 1943, υπηρετώντας ως διάδοχος του NBC Blue Network, π' είχ' αγοράσ' ο [[Έντουαρντ Τζ. Νομπλ]]. Επέτεινεν τις δραστηριότητές ατ' σην τηλεόρασην σα 1948, ακολουθώντας τα βήματα 'τ' καθιερωμένων ραδιοτηλεοπτικών δικτύων CBS και NBC. Σην δεκαετίαν του 1950, η ABC εσυγχωνεύθεν με την United Paramount Theaters, μία αλυσίδα κινηματογραφικών ταινιών που λειτουργούσε σο παρελθόν ως θυγατρική τη Paramount Pictures. Ο [[Λέοναρντ Γκόλντενσον]], π' έτον επικεφαλής τη UPT, έκανε το νέον τηλεοπτικόν δίκτυον κερδοφόρον, βοηθώντας την ανάπτυξην και την προβολήν πολλών επιτυχημένων σειρών. Ση δεκαετίαν του '80, μετά την αγοράν του 80% του καλωδιακού αθλητικού καναλιού ESPN, ο εταιρικός γονέας του δικτύου, American Broadcasting Companies Inc., εσυγχωνεύθεν με την Capital Cities Communications, ιδιοκτήτην πολλών εκδόσεων εκτύπωσης και τηλεοπτικούς και ραδιοφωνικούς σταθμούς. Σα 1996, τα περισσότερα περιουσιακά στοιχεία Capital Cities / ABC αγοράστηκαν απ' την εταιρείαν Walt Disney Company.
Το τηλεοπτικόν δίκτυον έχ' οχτώ ιδιόκτητες και λειτουργίες και περισσότερους από 232 συνδεδεμένους τηλεοπτικούς σταθμούς σ' όλες τις Ηνωμένες Πολιτείας και τ' εδάφη του. Το ABC News παρέχ' νέα και διαθέτει περιεχόμενον για επιλεγμένους ραδιοφωνικούς σταθμούς π' ανήκουν σην Citadel Broadcasting, π' αγόρασε τις ιδιότητες του ABC Radio σα 2007.
ra3df35zkxqi1ju3id0aqwxvctxdn3w
Arhikon selida
0
2729
33571
2018-01-26T14:27:59Z
Hugo.arg
153
Ο Hugo.arg μετακίνησε τη σελίδα [[Arhikon selida]] στην [[Πρότυπον:Arhikon selida]]
33571
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Arhikon selida]]
deyv5xg7tp2g3yukdtaqzat7f0njlc3
Μπλεόνα
0
2734
35527
35517
2024-01-23T17:27:07Z
Διογένες
10538
35527
wikitext
text/x-wiki
[[Αρχείον:Bleona Qereti mirror.jpg|μικρογραφία|250px|Μπλεόνα Τσερέτι]]
Η '''Μπλεόνα Τσερέτι''' (Bleona Qereti, εγγενέθεν 14 Καλομηνά [[1979]]) εν τραγουδίστρια.
==Δισκογραφία==
* 1997 Kam Qejfin Tim
* 1999 Nese Me Do Fort
* 2001 S'me Behet Vone
* 2002 Ik Meso Si Dashurohet
* 2003 Ti Nuk Di As Me Ma Lyp
* 2005 Greatest Hits
* 2005 Boom Boom
* 2007 Mandarin
[[Κατηγορίαν:Μουσική]]
apowdmp3p4jsiw3vkgxzgddh0w1y7qk
Αδριανούπολιη
0
2737
36736
36570
2025-12-16T08:29:41Z
Εὐθυμένης
2777
36736
wikitext
text/x-wiki
[[Αρχείον:Edirne Turkey Provinces locator.gif|μικρογραφία|230px|Αδριανοπούλιη]]
Το '''Αδριανοπούλιη''' (σα Τουρκικα: ''Edirne''; σα Ελληνικα: Αδριανοπούλη; σα βουλγάρικα: Одрин) εν [[Τουρκία|τουρκικόη]] πολιτείαν κι ευριοκάται σον [[Πόντος]], [[Ελλάδα]] και τι [[Βουλγαρία]].
== Αναφοράντας ==
<references/>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας|Αδριανοπούλιη]]
[[Κατηγορίαν:Πόντος|Αδριανοπούλιη]]
s3qb33k1zmdtfyq9zj9idv9ht2ka2ad
Λύκον
0
2740
33647
2018-03-27T21:10:24Z
2A02:587:6E1E:A00:4954:A401:1829:7FEC
Καινούρεον σελίδαν με '[[File:Canis lupus.jpg|thumb|Είνας λύκον]] Ο '''λύκον''' εν χαϊβάν το οποίον ανήκει σην οικογενείαν...'
33647
wikitext
text/x-wiki
[[File:Canis lupus.jpg|thumb|Είνας λύκον]]
Ο '''λύκον''' εν χαϊβάν το οποίον ανήκει σην οικογενείαν τοι [[Κυνίδες]].
[[Κατηγορίαν:Χαϊβάνεα]]
p1jg0o8gf21qswgdq6f0mnjvdlgi2vo
Κατηγορίαν:Χαϊβάνεα
14
2741
33653
2018-03-30T16:56:23Z
2A02:587:6E1C:3A00:6547:E16D:17C8:8AEF
Καινούρεον σελίδαν με '[[Κατηγορίαν:Wp/pnt]]'
33653
wikitext
text/x-wiki
[[Κατηγορίαν:Wp/pnt]]
gbnfivrzuu2xurtefe8l068j7u6tpvz
Κατηγορίαν:User ja
14
2744
33663
2018-04-07T02:04:50Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
33663
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Ιαπωνικά.
fr0ojichq4fgnbgz969jpoequlqps14
Νατάλια Ορέιρο
0
2749
35583
35511
2024-01-25T08:42:33Z
Διογένες
10538
/* Συνδέσμε */Κοινά
35583
wikitext
text/x-wiki
[[Αρχείον:Natalia Oreiro at 2017 MIFF.jpg|μικρογραφία|250px|Νατάλια Ορέιρο το 2017]]
Η '''Νατάλια Ορέιρο''' (Natalia Oreiro, εγγενέθεν 19 Καλομηνά [[1977]]) εν τραγουδίστρια.
==Δισκογραφία==
* Natalia Oreiro' (1998)
* Tu veneno (2000)
* Turmalina (2002)
* Gilda, no me arrepiento de este amor (2015)
== Συνδέσμε ==
* [[Αρχείον:Commons-logo.svg|link=https://commons.wikimedia.org/wiki/Category:Natalia_Oreiro?uselang=pnt|19x19px]] Σα [https://commons.wikimedia.org/wiki/%CE%9A%CF%8D%CF%81%CE%B9%CE%B1_%CE%A3%CE%B5%CE%BB%CE%AF%CE%B4%CE%B1 Κοινά] εσ υλικόν σχετικόν με [https://commons.wikimedia.org/wiki/Category:Natalia_Oreiro?uselang=pnt '''''Νατάλια Ορέιρο''''']
[[Κατηγορίαν:Μουσική]]
on3prrsa87l0wnaah7y1zg4xmlmyaw6
Τραπεζούς
0
2750
33675
33673
2018-04-15T14:23:38Z
2A02:587:6E0F:9700:C406:4195:1F6A:2ED3
Ανακατεύθυνση στη σελίδα [[Τραπεζούντα]]
33675
wikitext
text/x-wiki
#REDIRECT [[Τραπεζούντα]]
skwvo231bz9m2upurpsuskh3owx3e9t
Κερασούντα
0
2751
36742
36576
2025-12-16T08:35:05Z
Εὐθυμένης
2777
36742
wikitext
text/x-wiki
[[Εικόναν:Giresun Turkey Provinces locator.gif|thumb|230px|right|Η Κερασούντα σον τούρκικον τον χάρτεν.]]
Η '''Κερασούντα''' (τουρκ. ''Giresun'') εν οσήμερον [[Τουρκία|τούρκικον]] πολιτείαν τη κι ευρίεται σην επαρχίαν τη Κερασούντος, σον [[Πόντος|Πόντον]].
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{tr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Τουρκίας|Κερασουντα]]
[[Κατηγορίαν:Πόντος|Κερασουντα]]
i6e7ldy6lru4x7p8ehj5q8los8htu4q
Κερασούς
0
2752
33678
2018-04-15T14:25:52Z
FaIvie
6049
Ο FaIvie μετακίνησε τη σελίδα [[Κερασούς]] στην [[Κερασούντα]]
33678
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Κερασούντα]]
b40jr9937ndls7t46zvhzq4ocwd002f
Βαϊβούρτη
0
2753
33680
2018-04-17T15:41:18Z
2A02:587:6E0F:9700:41AA:D276:E33C:B711
Ανακατεύθυνση στη σελίδα [[Παϊπούρτ]]
33680
wikitext
text/x-wiki
#REDIRECT [[Παϊπούρτ]]
gvdsoatnqko7nolg5p3bgnuv8hrrqu3
Μπρουνέιν
0
2754
34618
34473
2020-10-05T16:39:41Z
Rotondus
8164
Κατηγορίαν
34618
wikitext
text/x-wiki
{{Πληροφορίας χώρας|πολίτευμαν=αυστηράν μουσουλμανικήν μοναρχίαν|Επίσημαι γλώσσαι=Μαλαικάν
Αραβικάν
Κινεζικάν
Αγγλικάν|μονάρχης=Χασανάλ Μπολκιάχ άτς Σουλτάν|σημαίαν=Flag of Brunei.jpg}}
Το Μρουνέιν είν κράτος τσης Ανατολικής τσην Ασίας. Εβρέχεται από την Νότιαν Κινέζικην Θάλασσαν. Οι κάτοικοι΄του Μπρουνέιν άτς φανατικοί μουσουλμάνοι.
[[Κατηγορίαν:Κράτη]]
dkipy6lcdzz4xsucntwihnt9ngspcp5
Ονταουάρα
0
2761
33785
2018-07-23T08:48:37Z
2A02:586:6E14:A800:DD99:1FE7:B247:81B0
Ανακατεύθυνση στη σελίδα [[Ονταγουάρα]]
33785
wikitext
text/x-wiki
#REDIRECT [[Ονταγουάρα]]
1psod0p9jbfno6cpwc3m4ezj4g7lv0n
Ονταβάρα
0
2762
33786
2018-07-23T08:49:09Z
2A02:586:6E14:A800:DD99:1FE7:B247:81B0
Ανακατεύθυνση στη σελίδα [[Ονταγουάρα]]
33786
wikitext
text/x-wiki
#REDIRECT [[Ονταγουάρα]]
1psod0p9jbfno6cpwc3m4ezj4g7lv0n
Πιοτροβίτσε
0
2763
33839
33792
2018-09-04T05:44:28Z
JJJ2002
6378
33839
wikitext
text/x-wiki
[[Εικόναν: Lokalizacja Piotrowic.png|thumb|280px|]]
[[Εικόναν:Znak Piotrowice i krzyż.jpg|thumb|280px|]]
Το '''Πιοτροβίτσε''' (πολ.Piotrowice) εν πολωνι΄ον πολιτείαν και εχ' τρανόν [[ιστορίαν]]. Εν η ασ' ουλτς τρανόν πολιτείαν και η [[πρωτεύουσα]] τη χώρας. Οσήμερον (2013) εχ' πληθυσμόν 352 ανθρώπ.
==Εικόναν==
[[Εικόναν:Widok Piotrowic.jpg|thumb|280px|]]
[[Εικόναν:Panorama jeziora w Piotrowicach.jpg|left|280px|]]
r1sjc4tt7h4cs63zxcjog9upcyzcm7i
Ηλίας Τσιρκινίδης
0
2766
34483
34445
2020-04-08T05:46:52Z
Tulsi
5081
Cross-wiki abuse
33852
wikitext
text/x-wiki
Ηλίας Τσιρκινίδης εν γνωστός Ποντιος ποιητής
Εγέννεθεν σο Νοβοροσίσκ της Ρωσίας(1915) ασ'σο γονείς προσφυγες ασ'σο χωρίο Σταυρίν της Χαλδίας σο Πόντον.
Η ποιητική συλλογή του έτον "Το γήτεμα" ,Το μένεμαν" κ.α
Τα θεατρικά του εργαν έτον: Το όρωμαν και το κρίμαν και Δαβίδ ο Μέγας Κομνηνός
e6nko57to2420c0hyy8l3lzsv8y7iit
Χιτλερ
0
2773
34574
34573
2020-09-01T08:07:10Z
37.6.11.37
Άλλαξε στόχος ανακατεύθυνσης από το [[w:el:Αδόλφος Χίτλερ]] στο [[el:Αδόλφος Χίτλερ]]
34574
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ[[el:Αδόλφος Χίτλερ]]
emsv0p8ml6ge8lyanrwqo72vpocoe4d
Βλαντιμίρ Λένιν
0
2777
34488
34440
2020-04-08T05:46:55Z
Tulsi
5081
Cross-wiki abuse
34301
wikitext
text/x-wiki
[[Αρχείον:Lenin and stalin.jpg|μικρογραφία|Φωτογραφία τη Λένιν]]
Ο Βλαντιμίρ Λένιν έτον κομμουνιστής ηγέτης.
[[Κατηγορίαν:Κομμουνιστές]]
km4b3bw5pzqdbh7jloq4i6337m45o3z
Τσάρος
0
2779
35738
34011
2024-09-16T06:31:32Z
CommonsDelinker
121
Removing [[:c:File:Τσάρος_της_Βουλγαρίας.jpg|Τσάρος_της_Βουλγαρίας.jpg]], it has been deleted from Commons by [[:c:User:Krd|Krd]] because: No license since 8 September 2024.
35738
wikitext
text/x-wiki
Τσάρος ατς ο βασιλέας εν πάσες ταις σλαβικές χώρες όπως την [[Ρουσία|Ρωσίαν]], την [[Βουλγαρία|Βουλγαρίαν]] και την [[Σερβία|Σερβίαν]].
[[Κατηγορίαν:Βουλγαρία]]
[[Κατηγορίαν:Ρωσία]]
[[Κατηγορίαν:Σερβία]]
[[Κατηγορίαν:Σλάβοι]]
fyfmjmznqfs7jduahlamy5ojyrmf6p8
Μικρασιατική Καταστροφή
0
2780
34471
34458
2020-04-08T05:46:46Z
Tulsi
5081
Cross-wiki abuse
34012
wikitext
text/x-wiki
[[Αρχείον:Smyrna-massacre greeks-killed line.jpg|μικρογραφία|518x518εσ|Νεκροί στη προκυμαία της Σμύρνης]]
Η Μικαρασιατική Καταστροφή ατς το σύνολον των τρανών σφαγών των Ελλένων Μικρασιατών από τους Τούρκους κατά το 1922.
== Θύματα ==
Μητροπολίτης Σμύρνης Χρυσόστομος
r1ta6921aucwat9lb9ynimsi7nh8tlm
Κατηγορίαν:Κομμουνιστές
14
2782
34016
2018-10-31T16:22:02Z
Το πουλί της φωτιάς
6952
Δημιουργήθηκε κενή σελίδα
34016
wikitext
text/x-wiki
phoiac9h4m842xq45sp7s6u21eteeq1
Καζακστάν
0
2783
36107
36106
2025-01-18T15:19:47Z
Farruh Samadov
11391
36107
wikitext
text/x-wiki
Το Καζακστάν ατς μίαν χώραν τση Κεντρικήν [[Ασίαν]]. Αβούτον το κράτος έχει ως επίσημην λαλίαν την καζακικήν.Η Δημοκρατία του Καζακστάν, είναι μια κλειστή χώρα κυρίως στη Κεντρική Ασία, με λίγη χώρα στη Ανατολική Ευρώπη. Συνορεύει με τη Ρωσία βόρεια και δυτικά, την Κίνα ανατολικά, το Κιργιστάν νοτιοανατολικά, το [[Ουζμπεκιστάν]] νότια και το [[Τουρκμενιστάν]] νοτιοδυτικά, με παραλία στις Κασπίες Θάλασσες. Η πρωτεύουσα είναι η Αστάνα, ενώ η μεγαλύτερη πόλη και το κορυφαίο πολιτιστικό και εμπορικό κέντρο είναι το Αλμάτι.
[[Αρχείον:Flag of Kazakhstan.svg|μικρογραφία]]
== Θρησκεία ==
[[Ισλάμ]]
[[Κατηγορίαν:Κράτη]]
66b7odp8ncbm4omedxzdm2szjzpcb32
Τουρκμενιστάν
0
2784
34907
34020
2021-08-30T12:14:56Z
91.140.25.228
/* Γειτονικά κράτη */
34907
wikitext
text/x-wiki
Το Τουρκμενιστάν ατς εν κράτος τση Κεντρικήν Ασίαν. Αβούτο το κράτος έχεις ως επίσημον λαλίαν την τουρκμενικήν. Επίσημην θρησκείαν ατς το Σουνιτικόν Ισλάμ.
[[Αρχείον:Flag of Turkmenistan.svg|μικρογραφία]]
== Γειτονικά κράτη ==
* [[Καζακστάν]]
* [[Αφγανιστάν]]
* [[Ουζμπεκιστάν]]
* [[Ιράν]]
hk0mlru9tccfrj7w7904shnihbz7v3t
Κατηγορίαν:User zh-Hans-CN
14
2785
34029
2018-11-04T16:12:27Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
34029
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Chinese (China).
qav0l7umygsatzv54jy4j04a6qx8pc8
Κατηγορίαν:User zh-Hant-TW
14
2786
34030
2018-11-04T16:12:27Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
34030
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Chinese (Taiwan).
c82wgithdn5qch90rst0ok21h1y3u8y
Κατηγορίαν:User zh-Hant-HK
14
2787
34031
2018-11-04T16:12:27Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
34031
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Chinese (Hong Kong).
tik0hx2ajz5a42z3mpvs2akpc4yvsiu
Αδόλφον Χίτλερ
0
2788
34575
34572
2020-09-01T08:08:32Z
37.6.11.37
Άλλαξε στόχος ανακατεύθυνσης από το [[w:el:Αδόλφος Χίτλερ]] στο [[el:Αδόλφος Χίτλερ]]
34575
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ[[el:Αδόλφος Χίτλερ]]
emsv0p8ml6ge8lyanrwqo72vpocoe4d
Μαρία Γκουλέγκινα
0
2791
35569
35510
2024-01-24T15:09:24Z
Διογένες
10538
Μαρία Γκουλέγκινα το 2012
35569
wikitext
text/x-wiki
[[Αρχείον:AlyaandGulegina.jpg|μικρογραφία|250px|Μαρία Γκουλέγκινα το 2012]]
Η '''Μαρία Γκουλέγκινα''' (εγγενέθεν 9 Αλωναρί [[1959]]) εν τραγουδίστρια.
[[Κατηγορίαν:Μουσική]]
b91pel6f6lw9m7c1a2vh55c6nyo8i33
Κατηγορίαν:User fi
14
2792
34086
2019-02-02T17:14:33Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
34086
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Φινλανδικά.
qi1b98f5rt1kycuhzthjsnqd1oi3s55
ΠΓΔΜ
0
2794
34099
2019-02-17T21:03:34Z
Xaris333
781
Ο Xaris333 μετακίνησε τη σελίδα [[ΠΓΔΜ]] στην [[Βόρεια Μακεδονία]]
34099
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Βόρεια Μακεδονία]]
nywls8rna769u84fkxe86lzak29k2yy
Μονσορώ
0
2799
36883
36800
2025-12-16T10:19:26Z
Εὐθυμένης
2777
36883
wikitext
text/x-wiki
[[Αρχείον:Château de Montsoreau, depuis la rive droite de la Loire.jpg|300px|thumb|Μονσορώ]]
Η '''Μονσορώ''' (''Montsoreau'') εν πολιτεία σην [[Γαλλία|Γαλλίαν]]. Οσήμερον εχ' πληθυσμόν 447 ανθρώπ.
== Δημογραφία ==
<div class="center">'''Μονσορώ (Montsoreau)'''<ref name="fcass">{{Cite web|url=http://cassini.ehess.fr/cassini/fr/html/fiche.php?select_resultat=23896|title=Des villages de Cassini aux communes d'aujourd'hui|work =École des hautes études en sciences sociales}}</ref><ref>{{Cite web|url=https://www.statistiques-locales.insee.fr/#c=indicator&i=bdcom.pop&s=2015&selcodgeo=49219&view=map1|title=Recensement de la population au 1er janvier 2006|work =Insee}}</ref><ref>{{Cite web|url=http://www.insee.fr/fr/ppp/bases-de-donnees/recensement/populations-legales/commune.asp?depcom=49007&annee=2009|title=Recensement de la population|work =Insee}}</ref><br>
<timeline>
Colors=
id:lightgrey value:gray(0.9)
id:darkgrey value:gray(0.7)
id:sfondo value:rgb(1,1,1)
id:barra value:rgb(0.7,0.9,0.7)
ImageSize = width:800 height:350
PlotArea = left:50 bottom:30 top:30 right:50
DateFormat = x.y
Period =from:0 till:1200
TimeAxis = orientation:vertical
AlignBars = justify
ScaleMajor = gridcolor:darkgrey increment:200 start:0
ScaleMinor = gridcolor:lightgrey increment:100 start:0
BackgroundColors = canvas:sfondo
BarData=
bar:1791
bar:1792
bar:1793
bar:1794
bar:1795
bar:1796
bar:1797
bar:1798
bar:1799
bar:1800 text:1800
bar:1801
bar:1802
bar:1803
bar:1804
bar:1805
bar:1806
bar:1807
bar:1808
bar:1809
bar:1810
bar:1811
bar:1812
bar:1813
bar:1814
bar:1815
bar:1816
bar:1817
bar:1818
bar:1819
bar:1820 text:1820
bar:1821
bar:1822
bar:1823
bar:1824
bar:1825
bar:1826
bar:1827
bar:1828
bar:1829
bar:1830
bar:1831
bar:1832
bar:1833
bar:1834
bar:1835
bar:1836
bar:1837
bar:1838
bar:1839
bar:1840 text:1840
bar:1841
bar:1842
bar:1843
bar:1844
bar:1845
bar:1846
bar:1847
bar:1848
bar:1849
bar:1850
bar:1851
bar:1852
bar:1853
bar:1854
bar:1855
bar:1856
bar:1857
bar:1858
bar:1859
bar:1860 text:1860
bar:1861
bar:1862
bar:1863
bar:1864
bar:1865
bar:1866
bar:1867
bar:1868
bar:1869
bar:1870
bar:1871
bar:1872
bar:1873
bar:1874
bar:1875
bar:1876
bar:1877
bar:1878
bar:1879
bar:1880 text:1880
bar:1881
bar:1882
bar:1883
bar:1884
bar:1885
bar:1886
bar:1887
bar:1888
bar:1889
bar:1890
bar:1891
bar:1892
bar:1893
bar:1894
bar:1895
bar:1896
bar:1897
bar:1898
bar:1899
bar:1900 text:1900
bar:1901
bar:1902
bar:1903
bar:1904
bar:1905
bar:1906
bar:1907
bar:1908
bar:1909
bar:1910
bar:1911
bar:1912
bar:1913
bar:1914
bar:1915
bar:1916
bar:1917
bar:1918
bar:1919
bar:1920 text:1920
bar:1921
bar:1922
bar:1923
bar:1924
bar:1925
bar:1926
bar:1927
bar:1928
bar:1929
bar:1930
bar:1931
bar:1932
bar:1933
bar:1934
bar:1935
bar:1936
bar:1937
bar:1938
bar:1939
bar:1940 text:1940
bar:1941
bar:1942
bar:1943
bar:1944
bar:1945
bar:1946
bar:1947
bar:1948
bar:1949
bar:1950
bar:1951
bar:1952
bar:1953
bar:1954
bar:1955
bar:1956
bar:1957
bar:1958
bar:1959
bar:1960 text:1960
bar:1961
bar:1962
bar:1963
bar:1964
bar:1965
bar:1966
bar:1967
bar:1968
bar:1969
bar:1970
bar:1971
bar:1972
bar:1973
bar:1974
bar:1975
bar:1976
bar:1977
bar:1978
bar:1979
bar:1980 text:1980
bar:1981
bar:1982
bar:1983
bar:1984
bar:1985
bar:1986
bar:1987
bar:1988
bar:1989
bar:1990
bar:1991
bar:1992
bar:1993
bar:1994
bar:1995
bar:1996
bar:1997
bar:1998
bar:1999
bar:2000 text:2000
bar:2001
bar:2002
bar:2003
bar:2004
bar:2005
bar:2006
bar:2007
bar:2008
bar:2009
bar:2010 text:2010
bar:2015
PlotData=
color:barra width:10 align:left
bar:1793 from:0 till: 746
bar:1800 from:0 till: 778
bar:1806 from:0 till: 790
bar:1821 from:0 till: 867
bar:1831 from:0 till: 987
bar:1836 from:0 till: 986
bar:1841 from:0 till: 1019
bar:1846 from:0 till: 1071
bar:1851 from:0 till: 1097
bar:1856 from:0 till: 937
bar:1861 from:0 till: 921
bar:1866 from:0 till: 851
bar:1872 from:0 till: 790
bar:1876 from:0 till: 752
bar:1881 from:0 till: 688
bar:1886 from:0 till: 655
bar:1891 from:0 till: 619
bar:1896 from:0 till: 584
bar:1901 from:0 till: 528
bar:1906 from:0 till: 494
bar:1911 from:0 till: 515
bar:1921 from:0 till: 452
bar:1926 from:0 till: 425
bar:1931 from:0 till: 425
bar:1936 from:0 till: 432
bar:1946 from:0 till: 504
bar:1954 from:0 till: 506
bar:1962 from:0 till: 570
bar:1966 from:0 till: 547
bar:1975 from:0 till: 503
bar:1982 from:0 till: 549
bar:1990 from:0 till: 461
bar:1999 from:0 till: 544
bar:2006 from:0 till: 503
bar:2010 from:0 till: 480
bar:2015 from:0 till: 449
</timeline>
</div>
== Εικόνες ==
<gallery>
File:Map commune FR insee code 49219.png|
File:Montsoreau Val de Loire.png|
File:Montsoreau castello valle della loira.jpg|'
File:Montsoreau ( Maine et Loire ).jpg|
File:Montsoreau bridge.jpg|
File:Più bei borghi della Francia montsoreau 2.jpg|
File:Château de montsoreau confluence vienne loire.jpg|
</gallery>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{fr}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τη Γαλλίας]]
5zx3x9ube8ukj80qrykrurx2nxowlsw
Ανατόλι Σολοβιανένκο
0
2804
35512
35410
2024-01-09T20:47:27Z
Διογένες
10538
μικρογραφία
35512
wikitext
text/x-wiki
{{Πληροφορίας χώρας}}
εθνικόν_όνεμαν = <big>Ανατόλι Σολοβιανένκο</big>
|εθνικόν όνεμαν σα ποντιακά = Ελλενικόν Δημοκρατίαν
[[Αρχείον:Anatoliy Solovianenko - Soviet Life, October 1984.jpg|μικρογραφία|250px|Ανατόλι Σολοβιανένκο]]
Η '''Ανατόλι Σολοβιανένκο''' (* [[25 Σταυρί]] [[1932]] — † 29 Χορτοθέρτ [[1999]]) έτον τραγουδοποιός.
[[Κατηγορίαν:Μουσική]]
74r0df5taqr19643nxm8gq4ru08xuv3
Ιαπωνία
0
2813
36026
34524
2024-10-26T05:34:13Z
Minorax
7522
36026
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Ιαπωνία'''</big></big><br/>''日本''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Japan.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Imperial Seal of Japan.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Japan (orthographic projection).svg|300px]]
|}
[[File:Mount Fuji from meadow.jpg|thumb|Όρος Φούτζι]]
H '''Ιαπωνία''' εν κράτος ντο ευρίεται σα βόρεια τη [[Ασίαν]].
Πρωτεύουσαν ατ'ς είν' τα [[Τόκιο]].
Η χώρα έχ' πληθυσμόν σα 126.330.302 τ' ανθρώπ'ς (2018).
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:el:commons:Japan|Η Ιαπωνία σα Commons]]'''
*[https://www.iaponia.gr/ Ταξίδι στην Ιαπωνία]
*[https://www.greecejapan.com/ Ελλάδα-Ιαπωνία]
[[Κατηγορίαν:Ιαπωνία| ]]
1t7k96vadpgzlfw3qnej515vofqfnha
Κατηγορίαν:User frp
14
2816
34212
2019-07-02T14:26:33Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
34212
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Arpitan.
fh1nejfg1k2oiwaubqisfcwq7e2o0rf
Κατηγορίαν:User gsw
14
2817
34213
2019-07-02T14:26:33Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]].
34213
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Γερμανικά Ελβετίας.
rjlgur2034t4ny8xzedlv1rxv79wsqa
Βικιπαίδεια:Ελεγκτής
4
2820
34223
2019-08-06T17:11:08Z
Giooo95
7439
Καινούρεον σελίδαν με 'Ελέγξτε τους χρήστες είναι άτομα που έχουν τη δυνατότητα να ελέγχουν τις διευθύνσε...'
34223
wikitext
text/x-wiki
Ελέγξτε τους χρήστες είναι άτομα που έχουν τη δυνατότητα να ελέγχουν τις διευθύνσεις IP των χρηστών σε περίπτωση πολλαπλής χρήσης του λογαριασμού.
edd8qdq4nwn28f2lkk8e5e55o7zbyib
Βικιπαίδεια:Γεροντάδες
4
2821
34224
2019-08-06T17:14:41Z
Giooo95
7439
Καινούρεον σελίδαν με 'Γεροντάδες είναι άτομα που είναι διαχειριστές με τη δυνατότητα να προωθούν άλλους...'
34224
wikitext
text/x-wiki
Γεροντάδες είναι άτομα που είναι διαχειριστές με τη δυνατότητα να προωθούν άλλους χρήστες στο Διαχειριστές και Γεροντάδες, αλλά δεν μπορεί να τα αφαιρέσει μόλις διοριστεί. Ένας Steward πρέπει να καταργήσει αυτά τα δικαιώματα αν χρειαστεί.
8wwpvphm2votzp50psszgpohcywoz45
Βικιπαίδεια:Bots
4
2822
34226
2019-08-06T17:25:22Z
Giooo95
7439
Καινούρεον σελίδαν με 'Το δικαίωμα χρήστη Bot επιτρέπει στον χρήστη να εκτελεί μεγάλο αριθμό επεξεργασιών...'
34226
wikitext
text/x-wiki
Το δικαίωμα χρήστη Bot επιτρέπει στον χρήστη να εκτελεί μεγάλο αριθμό επεξεργασιών χωρίς να περιορίζεται ή να περιορίζεται από το σύστημα. Οι χρήστες μπορούν να έχουν ξεχωριστούς εγκεκριμένους λογαριασμούς οι οποίοι λειτουργούν για να εκτελούν δύσκολα καθήκοντα με ευκολία που έχουν εγκριθεί από τη διοίκηση ή το δικαίωμα χρήστη μπορεί να χορηγηθεί προσωρινά σε κάποιον που εκτελεί υψηλότερο ποσοστό επεξεργασιών από το συνηθισμένο.
4yunucsctroe2adft1vq9hpuv3d281s
Κατηγορίαν:Ιαπωνία
14
2838
34331
2019-11-20T09:45:21Z
Chongkian
3947
Καινούρεον σελίδαν με '[[Κατηγορίαν:Κράτη]] [[Κατηγορίαν:Ασία]]'
34331
wikitext
text/x-wiki
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Ασία]]
a1c5ywpxuift0l35cm528p7d2a6ju5b
Μόντε Άγιλα
0
2840
34653
34337
2020-11-22T20:21:26Z
Je7roi
4539
Correcting
34653
wikitext
text/x-wiki
Το ''' Μόντε Άγιλα''' (σα ισπανικά: ''Monte Águila'') είναι πόλη της [[Χιλή]]. Το [[2002]] εχ' πληθυσμόν 6.574 ανθρώπ.
[[Αρχείον: Inauguracion Nueva Plaza de Monte Aguila 2017 (15).jpg|thumb|right|240px| [[Αρχείον:Flag of Chile.svg|20px]] [[Μόντε Άγιλα]], [[Χιλή]]]]
[[Κατηγορίαν:Χιλή]]
k237x4vqgju940vzv0f6imcgg3y1cwx
Ύμνος εις την ελευθερίαν
0
2842
35421
34495
2023-06-08T00:47:17Z
Filippos Fragkogiannis
10057
35421
wikitext
text/x-wiki
Ύμνος εις την Ελευθεριαν εν Εθνικόν ύμνος σιν [[Ελλάδα]] (ασο 1865) και σιν [[Κύπρος|Κυπρον]] (ασο 1966). Ετον Εθνικόν ύμνος σο ποντιακον δημοκρατιαν. Ατον εγραψε τον ο Διονύσιος Σολωμός. Ατωρα εν Εθνικόν ύμνος Ελλήνων σα ξένα.
Σα ελληνικά εν:
Σὲ γνωρίζω ἀπὸ τὴν κόψι
τοῦ σπαθιοῦ τὴν τρομερή,
σὲ γνωρίζω ἀπὸ τὴν ὄψι,
ποὺ μὲ βιά μετράει τὴν γῆ.
Ἀπ’ τὰ κόκκαλα βγαλμένη
τῶν Ἑλλήνων τὰ ἱερά,
καὶ σὰν πρῶτα ἀνδρειωμένη,
χαῖρε, ὢ χαῖρε, Ἐλευθεριά!
sgnlsr59003xex9fntmgurx5if1q22n
Ευρωπαϊκόν Σύνδεσμον
0
2847
35461
34612
2023-08-17T13:35:42Z
Kontrollstellekundl
7721
+
35461
wikitext
text/x-wiki
[[File:Flag of Europe.svg|200px|right]]
[[File:Global European Union.svg|500px|right]]
[[File:EU Member states and Candidate countries map.svg|500px|right]]
[[File:Belgique - Bruxelles - Schuman - Berlaymont - 01.jpg|thumb|European Commission]]
Ο Ευρωπαϊκον συνδεσμον (Ευρωπαϊκη ενωση σα ελλενικα) είνας συνδεσμος εν ντο σην Ευρωπην εν. Πολλα γλωσσας εχ' ασ'ολεν την Ευρωπην. 27 χωρας σ'ατο το συνδεσμον ειναι. Τα χωρας ετον 28, αμα σον Κουντουρον, σα 2020 τη χρονιας, η Μεγαλην Βρετανια εξεβεν ασον συνδεσμον. Η Ελλαδαν επηγεν σον συνδεσμον σα 1981 τη χρονιας.
[[Κατηγορίαν:Ευρώπη]]
t9j8v7euybw445ogcedw1yhn6gp2qic
MediaWiki:Sandbox/en
8
2850
34425
2020-04-02T04:18:41Z
~riley
2999
Sandbox
34425
wikitext
text/x-wiki
Sandbox
180b4o8webax01hgcc2r1q2f1sv2rus
MediaWiki:Pump/en
8
2851
34426
2020-04-02T04:19:23Z
~riley
2999
Translating [[Mediawiki:Sidebar]] (global sysop action
34426
wikitext
text/x-wiki
Village pump
q2wo92cze7z59youewlwyypa59cuo5j
11 Αεργί
0
2854
37277
35851
2025-12-16T19:12:27Z
Εὐθυμένης
2777
37277
wikitext
text/x-wiki
<div class="center">[[Σταυρίτες]] | [[Τρυγομηνάς]] | '''[[Αεργίτες]]''' | [[Χριστουγεννάρτς]] | [[Καλαντάρτς]]</div>
<div class="center">[[10 Αεργί]] | [[11 Αεργί]] | [[12 Αεργί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|11}}
Η '''11 Αεργί''' εν το 315ον ημέρα τη χρονίας (316ον ημέρα σε δίσεκτον χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 50 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[11 Τρυγομηνά]] - [[11 Χριστουγενναρί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|1111]]
nx5kne5uw0csdqnyxsiwna8n155eece
Κολομβία
0
2855
35933
35624
2024-10-26T05:26:25Z
Minorax
7522
/* top */ clean up using [[Project:AWB|AWB]]
35933
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Κολομβία'''</big></big><br/>''Colombia''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Colombia.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Colombia.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Colombia (orthographic projection).svg|300px]]
|}
[[File:Cabo San Juan, Colombia.jpg|thumb|left]]
Η '''Κολομβίαν''' είναι μια χώρα της [[Νότια Αμερικα|Νότιας Αμερικής]]. Η χώρα εχ' πληθυσμόν 50,372,424 (2020) ανθρώπ'ς.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:commons:Colombia|Η Κολομβία σα Commons]]'''
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Κολομβία| ]]
[[Κατηγορίαν:Λατινικήν Αμέρικα]]
1n74sitxq7q51j28uyro2obxja5xqar
Ολεσια Ζουρακιυσκα
0
2859
34538
34537
2020-06-10T17:46:19Z
93.73.115.248
34538
wikitext
text/x-wiki
Η '''Ολεσια Ζουρακιυσκα''' (Олеся Вікторівна Жураківська, εγγενέθεν [[13 Αλωναρί]] [[1973]]) εν ηθοποιός.
[[Κατηγορίαν:Σινεμά]]
7qs22ks63gld92ig67lir4rxeihpwuw
Βελίκο Τάρνοβο
0
2879
36758
34627
2025-12-16T08:48:33Z
Εὐθυμένης
2777
36758
wikitext
text/x-wiki
Η '''Βελίκο Τάρνοβο''' (bουλ. Велико Търново) εν η πρωτεύουσαν, η μία ασοι δύο ομοσπονδιακούς πόλεις τη [[Βουλγαρία]](1185-1393).
<gallery>
Constituent Assembly of Bulgaria.jpg|
20140620 Veliko Tarnovo 010.jpg|
Veliko Tarnovo002.JPG|
20140620 Veliko Tarnovo 298.jpg|
Bulgaria Bulgaria-0893 - Trapezitsa (7433398084).jpg|
Veliko Tarnovo Cathedral 4.jpg|
Marno pole Park,Veliko Tarnovo.jpg|
Samovodska charshia 6.JPG|
</gallery>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{bg}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Βουλγαρία]]
r4g9rmqtcuv2ygzt2ax6nx2irx9sugz
Χιλε
0
2882
34650
2020-11-22T20:17:52Z
Je7roi
4539
Ο Je7roi μετακίνησε τη σελίδα [[Χιλε]] στην [[Χιλή]]: Correction name
34650
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Χιλή]]
aglg0a3b6zsrvyb2nl3ugu6clkzbxms
Κατηγορίαν:Χιλε
14
2883
34656
2020-11-22T20:23:01Z
Je7roi
4539
Ο Je7roi μετακίνησε τη σελίδα [[Κατηγορίαν:Χιλε]] στην [[Κατηγορίαν:Χιλή]]: Correction name
34656
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[:Κατηγορίαν:Χιλή]]
00wh8asnb9scnhgeuzicir20m4bi8vy
Κατηγορίαν:Καναδάς
14
2891
34673
2021-01-04T16:22:21Z
2A02:587:6E13:7A00:BCC3:B88A:3E90:3E2C
Καινούρεον σελίδαν με '{{Commonscat|Canada}} [[Κατηγορίαν:Κράτη|Καναδάς]]'
34673
wikitext
text/x-wiki
{{Commonscat|Canada}}
[[Κατηγορίαν:Κράτη|Καναδάς]]
nvwrfvncu8to80ob8hny14llix15vrs
Οττάβα
0
2892
36821
34674
2025-12-16T09:35:28Z
Εὐθυμένης
2777
36821
wikitext
text/x-wiki
[[Αρχείον:Canada Ottawa Panorama.jpg|thumb|Η Οττάβα]]
Ἡ '''Οττάβα''' ἔν καναδικόν πολιτείαν ντ'εὐρίεται 'ς σόν Οντάριο, ἔχ' πληθυσμόν 58.309 τ'ἀνθρώπ'ς και εν η πρωτεύουσα τη χώρας του [[Καναδάς|Καναδά]].
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{en}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας]]
[[Κατηγορίαν:Καναδάς]]
7zw9viirc66wfvqyfcdnpc9xi3w72xn
Καναδάς
0
2893
34675
2021-01-04T16:35:08Z
2A02:587:6E13:7A00:BCC3:B88A:3E90:3E2C
Καινούρεον σελίδαν με 'Ο '''Καναδάς''', σ'αγγλικά Canada, εν βορειοαμερικανικόν κράτος. Πρωτεύουσαν ατ'ς εν η Οτ...'
34675
wikitext
text/x-wiki
Ο '''Καναδάς''', σ'αγγλικά Canada, εν βορειοαμερικανικόν κράτος. Πρωτεύουσαν ατ'ς εν η [[Οττάβα]] κ' τρανότερην πόλην εν το [[Τορόντο]]. Ο προθυπουργός ατ'ς εν ο Τζάστιν Τρυντώ και ο πληθυσμόν ατ'ς έν σα 37.906.883 τ' ανθρώπ'ς.
[[Κατηγορίαν:Κράτη|Καναδάς]]
[[Κατηγορίαν:Καναδάς| ]]
r7jqi63wt5auvhnlwetg0ibypvl92jm
12 Αεργί
0
2916
37278
35856
2025-12-16T19:12:41Z
Εὐθυμένης
2777
37278
wikitext
text/x-wiki
<div class="center">[[Σταυρίτες]] | [[Τρυγομηνάς]] | '''[[Αεργίτες]]''' | [[Χριστουγεννάρτς]] | [[Καλαντάρτς]]</div>
<div class="center">[[11 Αεργί]] | [[12 Αεργί]] | [[13 Αεργί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|11}}
Η '''12 Αεργί''' εν το 316ον ημέρα τη χρονίας (317ον ημέρα σε δίσεκτον χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 49 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[12 Τρυγομηνά]] - [[12 Χριστουγενναρί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|1112]]
b5mzuspo5vw7tqviapgwa99vrk08yij
Περίσταση
0
2926
36868
34878
2025-12-16T10:07:44Z
Εὐθυμένης
2777
36868
wikitext
text/x-wiki
[[File:Peristasi mnimio.jpg|thumb|Μνημεῖον πρός τιμήν σὸν Τρανόν Αλέξανδρον]]
Ἡ '''Περίστασην''' ἔν [[Ελλάδα|ἑλλενικόν]] χωρίον ντ'εὐρίεται 'ς σὴν [[Μακεδονία|Μακεδονίαν]] καὶ ἔχ' πληθυσμόν 4.326 τ'ἀνθρώπ'ς. Εὐρίεται 'ς σὴν κεντρικήν Μακεδονίαν, 'ς σὸν νομόν τσῆ Πιερίας.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
{{DEFAULTSORT:Περισταση}}
[[Κατηγορίαν:Πολιτείας τ' Ελλάδας|Κατερίνην]]
[[Κατηγορίαν:Μακεδονία|Κατερίνην]]
62oo7beu5x388k91pi1s6igbby6a71t
MediaWiki:GrowthExperimentsConfig.json
8
2934
35249
34918
2022-10-19T06:56:32Z
MediaWiki default
5794
Disabling mentorship for wikis with no list of mentors ([[:phab:T321056]])
35249
json
application/json
{
"GEHelpPanelLinks": [
{
"title": "mw:Special:MyLanguage/Help:VisualEditor/User guide",
"text": "Special:MyLanguage/Help:VisualEditor/User guide",
"id": "mw:Special:MyLanguage/Help:VisualEditor/User_guide"
},
{
"title": "mw:Special:MyLanguage/Help:VisualEditor/User guide#Images",
"text": "Special:MyLanguage/Help:VisualEditor/User guide",
"id": "mw:Special:MyLanguage/Help:VisualEditor/User_guide"
},
{
"title": "mw:Special:MyLanguage/Help:VisualEditor/User guide#Editing references",
"text": "Special:MyLanguage/Help:VisualEditor/User guide",
"id": "mw:Special:MyLanguage/Help:VisualEditor/User_guide"
}
],
"GEHomepageSuggestedEditsIntroLinks": {
"create": "mw:Special:MyLanguage/Help:VisualEditor/User_guide",
"image": "mw:Special:MyLanguage/Help:VisualEditor/User_guide#Images"
},
"GEMentorshipEnabled": false
}
o2x6w5tmdm6el91oxfmxtxbdkgezigg
13 Αεργί
0
2935
37279
35861
2025-12-16T19:12:56Z
Εὐθυμένης
2777
37279
wikitext
text/x-wiki
<div class="center">[[Σταυρίτες]] | [[Τρυγομηνάς]] | '''[[Αεργίτες]]''' | [[Χριστουγεννάρτς]] | [[Καλαντάρτς]]</div>
<div class="center">[[12 Αεργί]] | [[13 Αεργί]] | [[14 Αεργί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|11}}
Η '''13 Αεργί''' εν το 317ον ημέρα τη χρονίας (318ον ημέρα σε δίσεκτον χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 48 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[13 Τρυγομηνά]] - [[13 Χριστουγενναρί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|1113]]
94r68oeguzi8oo7gojn2i3n5yfllc6u
Τόρστεν Χας
0
2977
36740
35013
2025-12-16T08:33:25Z
Εὐθυμένης
2777
/* Συνδέζμαι */
36740
wikitext
text/x-wiki
Ο '''Τόρστεν Χας''' (γερμ. Torsten Haß; *1970 σην Neumünster) είναι [[ποιητής]] ασην [[Γερμανίαν]]. <ref>{{cite web |title= Katalog der Deutschen Nationalbibliothek, Ergebnis der Suche nach: idn=1145989268 |url=http://d-nb.info/gnd/1145989268 |website=Katalog der Deutschen Nationalbibliothek, Ergebnis der Suche nach: idn=1145989268 |publisher=Deutsche Nationalbibliothek |access-date=2021-11-21}}</ref>
==Δουλείας ατ' (χωρισμέν')==
===Μεσελέδες και νοβέλλες===
* ''Das Kartenhaus : ein Betrugs-Roman'' (2002<ref name="chrono">{{cite book |last1=Godal |first1=Kim |title=Morddeich |publisher=Spatz |date=2021 |pages=133–134 |isbn=979-8746727725}}</ref>)
* ''Der König des Schreckens : ein Vatikan-Krimi'' (2013<ref name="chrono" />)
* ''Männchensache : Rechtsfälle zur Vorbereitung im Geschlechterkampf – Roman'' (2009<ref name="chrono" />)
* ''Morddeich : und andere Kurzprosa'' (2021)
* ''Die Schwarze Zeit : ein Mittelalter-Roman'' (2006<ref name="chrono" />)
* ''Die Schwarze Zeit II : Aphrodites Puppen – Roman'' (2007<ref name="chrono" />)
* ''Die Schwarze Zeit III : Metathronos – Roman'' (2008<ref name="chrono" />)
* ''Die Schwarze Zeit IV : Agonie – Roman'' (2009<ref name="chrono" />)
* ''Die Schwarze Zeit V : Staub – Roman'' (2010<ref name="chrono" />)
* ''Die Schwarze Zeit VI : Terra re-mota – Roman'' (2011<ref name="chrono" />)
* ''Totenmelodie : ein Kurpfalz-Krimi'' (2017<ref name="chrono" />)
* ''Totenquintett : ein Kurpfalz-Krimi'' (2018<ref name="chrono" />)
* ''Totentraum : ein Kurpfalz-Krimi'' (2019<ref name="chrono" />)
===Δράματα===
* ''En Nuit : Dramolett'' (2021)
* ''Omega oder Das Hochzeitsmahl : Drama'' (2020<ref name="chrono" />)
* ''Die Staatsschuld – In a State of Bonds : Drama'' (2003<ref name="chrono" />)
===Ποιήματα===
* ''Das Christkind taumelt betrunken im Wald, der Weihnachtsmann torkelt nicht minder : Winter- und Weihnachtsgedichte'' (2020)
* ''Es wiehert der Gaul, es graset das Pferd. Es machte auch nichts, wär’s mal umgekehrt : Liebesgedichte und andere'' (2020)
== Αναφοράντας ==
<references/>
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
{{authority control}}
{{DEFAULTSORT:Χας, Τορστεν}}
[[Κατηγορίαν:Θέατρον]]
eqiv5sf190t547g9osprgabuoukvs7g
Λάρνακαν
0
2978
36786
35028
2025-12-16T09:10:46Z
Εὐθυμένης
2777
36786
wikitext
text/x-wiki
[[File:Larnaca 01-2017 img14 Finikoudes.jpg|thumb|Ἡ Λάρνακαν]]
Ἡ '''Λάρνακαν''' ἔν κυπριακόν πολιτείαν ντ'εὐρίεται 'ς σὴν επαρχίαν Λάρνακας καὶ οσήμερον ἔχ' πληθυσμόν 51.468 τ'ἀνθρώπ'ς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Κύπρος]]
[[Κατηγορίαν:Πολιτείας]]
ccrhufjgmafdq0fhocnvv6zi3h3w9w9
Λεμεσός
0
2979
36789
35032
2025-12-16T09:12:38Z
Εὐθυμένης
2777
36789
wikitext
text/x-wiki
[[Αρχείον:Limassol, Cyprus 2.jpg|μικρογραφία|Ἡ Λεμεσός]]
Ἡ '''Λεμεσός''' ἔν κυπριακόν πολιτείαν ντ'εὐρίεται 'ς σὴν επαρχίαν Λεμεσού καὶ οσήμερον ἔχ' πληθυσμόν 101.000 τ'ἀνθρώπ'ς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Κύπρος]]
[[Κατηγορίαν:Πολιτείας]]
4go8qyrlcoowy1gsc4n30o6kbszle1p
Αμμόχωστος
0
2980
36755
35031
2025-12-16T08:45:01Z
Εὐθυμένης
2777
36755
wikitext
text/x-wiki
[[File:Famagusta 01-2017 img16 view of the walled city.jpg|thumb|Ἡ Αμμόχωστος]]
Ἡ '''Αμμόχωστος''' ἔν κυπριακόν πολιτείαν ντ'εὐρίεται 'ς σὴν επαρχίαν Αμμοχώστου καὶ οσήμερον ἔχ' πληθυσμόν 40.920 τ'ἀνθρώπ'ς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Κύπρος]]
[[Κατηγορίαν:Πολιτείας]]
n9vfwxa4d8tdpoz0kbo4b0ypl9furxa
Πάφος
0
2981
36823
35034
2025-12-16T09:36:34Z
Εὐθυμένης
2777
36823
wikitext
text/x-wiki
[[File:Набережная гавани г. Пафоса (09.2013).JPG|thumb|Ἡ Πάφος]]
Ἡ '''Πάφος''' ἔν κυπριακόν πολιτείαν ντ'εὐρίεται 'ς σὴν επαρχίαν Πάφου καὶ οσήμερον ἔχ' πληθυσμόν 35.961 τ'ἀνθρώπ'ς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Κύπρος]]
[[Κατηγορίαν:Πολιτείας]]
t973syt7tuv59vfqus0lhhyhvdrh8z3
Κερύνειαν
0
2982
36777
35035
2025-12-16T09:04:25Z
Εὐθυμένης
2777
36777
wikitext
text/x-wiki
[[File:Kyrenia Harbour 2.JPG|thumb|Ἡ Κερύνειαν]]
Ἡ '''Κερύνειαν''' ἔν κυπριακόν πολιτείαν ντ'εὐρίεται 'ς σὴν επαρχίαν Κερύνειας καὶ οσήμερον ἔχ' πληθυσμόν 20.851 τ'ἀνθρώπ'ς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Κύπρος]]
[[Κατηγορίαν:Πολιτείας]]
fe28gajp3jrgdvl4767dkmfzic4a6l0
Παραλίμνι
0
2983
36825
35038
2025-12-16T09:37:43Z
Εὐθυμένης
2777
36825
wikitext
text/x-wiki
[[File:Protaras tropical famous beach at Paralimni holiday destination in Republic of Cyprus.jpg|thumb|Το Παραλίμνι]]
Το '''Παραλίμνι''' ἔν κυπριακόν πολιτείαν ντ'εὐρίεται 'ς σὴν επαρχίαν Αμμοχώστου καὶ οσήμερον ἔχ' πληθυσμόν 40.000 τ'ἀνθρώπ'ς.
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
* {{el}} {{επίσημος ιστότοπος}}
{{authority control}}
[[Κατηγορίαν:Κύπρος]]
[[Κατηγορίαν:Πολιτείας]]
4awvg5z5s45x7mid3sr8wkfh8acfaa5
Λάρα Φαμπιάν
0
2987
35571
35529
2024-01-24T15:10:37Z
Διογένες
10538
Λάρα Φαμπιάν το 2012
35571
wikitext
text/x-wiki
[[Αρχείον:Lara Fabian 2012.jpg|μικρογραφία|Λάρα Φαμπιάν το 2012]]
Η '''Λάρα Φαμπιάν''' (Lara Fabian, εγγενέθεν 9 Καλαντάρ 1970) εν τραγουδίστρια.
[[Κατηγορίαν:Μουσική]]
d6e4zc0cwcwn8i9h8wofnp8ek6ys69l
Αργεντίνα
0
2993
36270
35910
2025-06-13T06:19:27Z
CommonsDelinker
121
Replacing Argentina_(orthographic_projection).svg with [[File:Argentina_(including_claimed_territories,_orthographic_projection).svg]] (by [[:c:User:CommonsDelinker|CommonsDelinker]] because: [[:c:COM:FR|File renamed]]: [[:c:Commons:Deletion requests/File
36270
wikitext
text/x-wiki
{| border=1 align=right cellpadding=4 cellspacing=0 width=300 style="margin: 0 0 1em 1em; background: #f9f9f9; border: 1px #aaaaaa solid; border-collapse: collapse; font-size: 95%;"
|+<big><big>'''Αργεντίνα'''</big></big><br/>''Argentina''
|-
| style="background:#efefef;" align="center" colspan=2 |
{| border="0" cellpadding="2" cellspacing="0"
|-
| align="center" width="140px" | [[Αρχείον:Flag of Argentina.svg|125px]]
| align="center" width="140px" | [[Αρχείον:Coat of arms of Argentina.svg|125px]]
|-
| align="center" width="140px" |
| align="center" width="140px" |
|}
|-
| align="center" colspan=2 |
|-
| align=center colspan=2 | [[Αρχείον:Argentina (including claimed territories, orthographic projection).svg|300px]]
|}
Η '''Αργεντίναν''' είναι μια χώρα της [[Νότια Αμερικα|Νότιας Αμερικής]]. Η χώρα εχ' πληθυσμόν 45,605,826 (2021) ανθρώπ'ς.
== Συνδέζμαι ==
* '''[[Αρχείον:Commons-logo.svg|15px]] [[:commons:Αργεντίνα|Η Αργεντίνα σα Commons]]'''
[[Κατηγορίαν:Κράτη]]
[[Κατηγορίαν:Αργεντίνα| ]]
[[Κατηγορίαν:Λατινικήν Αμέρικα]]
dy62aqj77289io1rru4r7zv0qmjeaua
Γη
0
3001
35383
35237
2023-04-08T08:36:09Z
Kwamikagami
8969
35383
wikitext
text/x-wiki
[[File:The Blue Marble (remastered).jpg|thumb|Η Γη (και η [[Αφρικήν]])]]
Η '''Γη'''.
Τ' αστρονομικόν το σύμβολονατ' εν: [[file:Earth symbol (fixed width).svg|16px|🜨]].
[[File:NASA-Apollo8-Dec24-Earthrise.jpg|frameless]]
[[Κατηγορίαν:Αστρονομία]]
5nilkd6vkaeti53ftl48eyz8vstwj3o
19 Καλομηνά
0
3003
37148
35360
2025-12-16T18:36:37Z
Εὐθυμένης
2777
37148
wikitext
text/x-wiki
<div class="center">[[Μαρτς]] | [[Απρίλτς]] | '''[[Καλομηνάς]]''' | [[Κερασινός]] | [[Χορτοθέρτς]]</div>
<div class="center">[[18 Καλομηνά]] | [[19 Καλομηνά]] | [[20 Καλομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|5}}
Η '''19 τη Καλομηνά''' εν τ' 139ον ημέρα τη χρονίας (140ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 226 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
[[Αρχείον:Genoktonia12.png|μικρογραφία]]
Ημέρα μνήμης για τ' εμάς τους ποντίους καί γιά ολόες τους Έλληνες. Οσήμερον 19 καλομηνά τιμάται αμόν Ημέρα Μνήμης τής Γενοκτονίας τών Ελλήνων απ' τη Ρωμανίαν.
Εδιάλεξον ατή τήν ημέραν' για το ποίον ετότες ο Μουσταφά Κεμάλ έφτασε άσην' Σαμψούντα γιά να σκαλών' τη δέυτερην και άγρεν φάση τής Ποντιακής Γενοκτονίας. Απάν 'ση προσφυγίαν ασήν Τουρκίαν 'σήν Ελλάδαν πολλοί Πόντιοι (περίπου 350.000) έβραν' τόν θάνατον και τελικά ασατούνς που εξεκίνεσαν κι πρόλαβαν να φτάνε ασήν Ελλάδαν. Η γενοκτονία των Ποντίων κί έν' αναγνωρισμέντσα διεθνώς αλλά μαναχά άσην' Ελληνικήν Πολιτείαν μέ Νόμο τού 1994. Σα 1918 τη χρονίαν, οι Έλλενες ορθόδοξοι τη Πόντονος εγράσεψαν ν' εφτάγνε ανεξάρτητον κράτος . Άμα η Ελλάδαν έχασεν τ' ελλενοτουρκικόν πόλεμον (1919-1922) και με τη συνθήκη τη Λωζάνης (1922) οι Έλλενες χριστιανοί τη Πόντονος εξεριζώθαν ασην πατρίδαν ατουν κι εχατεύταν σην Ελλάδαν, κι εκεί έδωκανατουν τ' όνεμα «Πόντιοι». Σον τ' ατεινέτερων τον δρόμον, πολλοί επέθαναν και πολλοί εσκοτώθαν. Για τ' ατό οσήμερον λέγομε για τη «Γενοκτονία τη Ποντίων»
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[19 Απρίλτ]] - [[19 Κερασινού]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0139]]
bt7rtqwrtuxvagtnayxpnry09t4lrj7
Wikipedia
0
3006
35192
2022-07-19T22:46:46Z
Eurohunter
2009
Ανακατεύθυνση στη σελίδα [[Βικιπαίδεια]]
35192
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Βικιπαίδεια]]
ojjt4ccb66a1fmlei6r8fs0wfk9bnxi
Basshunter
0
3007
37377
36186
2025-12-20T12:04:20Z
Εὐθυμένης
2777
/* Αναφοράντας */
37377
wikitext
text/x-wiki
[[Αρχείον:Basshunter, 20 april 2008 in Halmstad.jpg|thumb|right|240px|Basshunter (2008)]]
'''Basshunter''', '''Jonas Erik Altberg''' (* [[22 Χριστουγενναρί]]) έτον [[τραγουδίστρια]], [[τραγουδοποιός]].
== Βιογραφικόν ==
Ο Basshunter εγεννέθεν κι εθράφεν σο [[Halmstad]], κοντά σην [[Tylösand]].<ref>{{cite web | url = http://www.basshunter.se/bio | title = Bio | access-date = 2022 | website = basshunter.se | archive-url = https://web.archive.org/web/20100528035145/http://www.basshunter.se/bio | archive-date = 28 May 2010 | url-status = dead}}</ref>
== Δισκογραφίαν ==
=== Αλμπούμε ===
* ''[[The Bassmachine]]'' (2004)
* ''[[LOL (^^,)|LOL <(^^,)>]]'' (2006)
* ''[[Now You're Gone – The Album]]'' (2008)
* ''[[Bass Generation]]'' (2009)
* ''[[Calling Time]]'' (2013)
== Αναφοράντας ==
<references />
== Συνδέσμε ==
{{Commonscat}}
* [https://basshunter.se basshunter.se]
[[Κατηγορίαν:Μουσική]]
[[Κατηγορίαν:Σουηδία]]
p1un0qf6empl9tnqeklitoj5ab2kvcn
Jonas Erik Altberg
0
3008
35195
2022-07-19T22:51:04Z
Eurohunter
2009
Ανακατεύθυνση στη σελίδα [[Basshunter]]
35195
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Basshunter]]
85nh5c7zsnvdckx78f0qrsw04qcjz8r
Jonas Altberg
0
3009
35196
2022-07-19T22:51:31Z
Eurohunter
2009
Ανακατεύθυνση στη σελίδα [[Basshunter]]
35196
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Basshunter]]
85nh5c7zsnvdckx78f0qrsw04qcjz8r
14 Αεργί
0
3012
37280
35865
2025-12-16T19:13:12Z
Εὐθυμένης
2777
37280
wikitext
text/x-wiki
<div class="center">[[Σταυρίτες]] | [[Τρυγομηνάς]] | '''[[Αεργίτες]]''' | [[Χριστουγεννάρτς]] | [[Καλαντάρτς]]</div>
<div class="center">[[13 Αεργί]] | [[14 Αεργί]] | [[15 Αεργί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|11}}
Η '''14 Αεργί''' εν το 318ον ημέρα τη χρονίας (319ον ημέρα σε δίσεκτον χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 47 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[14 Τρυγομηνά]] - [[14 Χριστουγενναρί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|1114]]
rchmjpzfjy18du048w5xinubcwcjasz
MediaWiki:GrowthMentors.json
8
3022
35254
2022-10-26T13:16:21Z
MediaWiki default
5794
Migrate wikitext mentor list to a structured form ([[:phab:T264343]])
35254
json
application/json
{
"Mentors": []
}
dn46w1g5znu799elq35nkxlad6w2krp
15 Αεργί
0
3027
37281
35871
2025-12-16T19:13:29Z
Εὐθυμένης
2777
37281
wikitext
text/x-wiki
<div class="center">[[Σταυρίτες]] | [[Τρυγομηνάς]] | '''[[Αεργίτες]]''' | [[Χριστουγεννάρτς]] | [[Καλαντάρτς]]</div>
<div class="center">[[14 Αεργί]] | [[15 Αεργί]] | [[16 Αεργί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|11}}
Η '''15 Αεργί''' εν το 319ον ημέρα τη χρονίας (320ον ημέρα σε δίσεκτον χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 46 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[15 Τρυγομηνά]] - [[15 Χριστουγενναρί]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|1115]]
bgckv1xemzviuivglp6qsyktm30r9rz
16 Αεργί
0
3033
37282
35876
2025-12-16T19:13:45Z
Εὐθυμένης
2777
37282
wikitext
text/x-wiki
<div class="center">[[Σταυρίτες]] | [[Τρυγομηνάς]] | '''[[Αεργίτες]]''' | [[Χριστουγεννάρτς]] | [[Καλαντάρτς]]</div>
<div class="center">[[15 Αεργί]] | [[16 Αεργί]] | [[17 Αεργί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|11}}
Η '''16 Αεργί''' εν το 320ον ημέρα τη χρονίας (321ον ημέρα σε δίσεκτον χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 45 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[16 Τρυγομηνά]] - [[16 Χριστουγενναρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|1116]]
swcvjg6urgigyt1t3tqzqkov0d6ncfc
Πρότυπον:Documentation
10
3040
36346
35373
2025-12-15T14:14:02Z
Εὐθυμένης
2777
Αντικατάσταση σελίδας με «{{#invoke:documentation|main|_content={{ {{#invoke:documentation|contentTitle}}}}}}<noinclude> <!-- Add categories to the /doc subpage --> </noinclude>»
36346
wikitext
text/x-wiki
{{#invoke:documentation|main|_content={{ {{#invoke:documentation|contentTitle}}}}}}<noinclude>
<!-- Add categories to the /doc subpage -->
</noinclude>
ii1kftoonz87mztj4siz1yhyqeg6agm
Πρότυπον:Template other
10
3041
35374
2023-04-02T01:52:22Z
2601:18E:C081:2FF0:9111:3D9E:4E5C:D202
Καινούρεον σελίδαν με '{{#switch: <!--If no or empty "demospace" parameter then detect namespace--> {{#if:{{{demospace|}}} | {{lc: {{{demospace}}} }} <!--Use lower case "demospace"--> | {{#ifeq:{{NAMESPACE}}|{{ns:Template}} | template | other }} }} | template = {{{1|}}} | other | #default = {{{2|}}} }}<!--End switch--><noinclude> {{documentation}} <!-- Add categories and interwikis to the /doc subpage, not here! --> </noinclude>'
35374
wikitext
text/x-wiki
{{#switch:
<!--If no or empty "demospace" parameter then detect namespace-->
{{#if:{{{demospace|}}}
| {{lc: {{{demospace}}} }} <!--Use lower case "demospace"-->
| {{#ifeq:{{NAMESPACE}}|{{ns:Template}}
| template
| other
}}
}}
| template = {{{1|}}}
| other
| #default = {{{2|}}}
}}<!--End switch--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
0tcssjmltwl7y5v3f5wj2kqciaabqly
Πρότυπον:Τεκμηρίωση προτύπου/start box2
10
3042
35375
2023-04-02T01:54:11Z
2601:18E:C081:2FF0:9111:3D9E:4E5C:D202
Καινούρεον σελίδαν με '{{Τεκμηρίωση προτύπου/start box | preload = {{{preload|}}} <!--Allow custom preloads--> | heading = {{{heading|¬}}} <!--Empty but defined means no header--> | heading-style = {{{heading-style|}}} | content = {{{content|}}} | docpage = {{#if: {{{1|}}} | {{{1|}}} | {{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/τεκμηρίωση }} | doc exist = {{#ifexist: {{#if: {{{1|}}} | {{{1|}}} <...'
35375
wikitext
text/x-wiki
{{Τεκμηρίωση προτύπου/start box
| preload = {{{preload|}}} <!--Allow custom preloads-->
| heading = {{{heading|¬}}} <!--Empty but defined means no header-->
| heading-style = {{{heading-style|}}}
| content = {{{content|}}}
| docpage =
{{#if: {{{1|}}}
| {{{1|}}}
| {{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/τεκμηρίωση
}}
| doc exist =
{{#ifexist:
{{#if: {{{1|}}}
| {{{1|}}} <!--Other docname fed-->
| {{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/τεκμηρίωση
}}
| yes
}}
}}<noinclude>
</noinclude>
7v9nf4rxsqm8pmoky017gm1pp8dyvzb
Πρότυπον:Τεκμηρίωση προτύπου/start box
10
3043
35499
35376
2023-12-29T05:38:59Z
Minorax
7522
vva
35499
wikitext
text/x-wiki
<!--
Start of green doc box
--><div style="clear:both; background-color:#ecfcf4; border:1px solid #aaa; padding:1em;"><!--
Add the heading at the top of the doc box:
-->{{#ifeq: {{{heading|¬}}} | <!--Defined but empty-->
| <!--"heading=", do nothing-->
| <div style="padding-bottom: 3px; border-bottom: 1px solid #aaa; margin-bottom: 1ex;"><span style="{{#if: {{{heading-style|}}}
| {{{heading-style|}}}
| {{#ifeq: {{SUBJECTSPACE}} | {{ns:Template}}
| font-weight: bold; font-size: 125%
| font-size: 150%
}}
}}">{{#switch: {{{heading|¬}}}
| ¬ =
<!--"heading" not defined in this or previous level-->
{{#switch: {{SUBJECTSPACE}}
| {{ns:Template}} = [[Αρχείο:Test Template Info-Icon.svg|50px|alt=Documentation icon|link=]] Τεκμηρίωση προτύπου
| {{ns:File}} = Σύνοψη
| #default = Τεκμηρίωση
}}
| #default =
<!--"heading" has data or is empty but defined-->
{{{heading|}}}
}}</span>{{
#if: {{{content|}}}
|
| <!--Τοποθέτηση συνδέσμων [προβολή][επεξεργασία][ιστορικό][εκκαθάριση] ή [δημιουργία]-->
<span class="mw-editsection plainlinks" id="doc_editlinks">{{
#if: {{{doc exist|yes}}}
| [[[{{{docpage|{{FULLPAGENAME}}/τεκμηρίωση}}}|προβολή]]] [[{{fullurl:{{{docpage|{{FULLPAGENAME}}/τεκμηρίωση}}}|action=edit}} επεξεργασία]] [[{{fullurl:{{{docpage|{{FULLPAGENAME}}/τεκμηρίωση}}}|action=history}} ιστορικό]] [{{purge|εκκαθάριση}}]
| <!--/doc doesn't exist-->
[[{{fullurl:{{{docpage|{{FULLPAGENAME}}/τεκμηρίωση}}}| action=edit&preload={{
#if: {{{preload|}}}
| {{urlencode:{{{preload}}}}}
| {{#ifeq: {{SUBJECTSPACE}} | {{ns:File}}
| Πρότυπο:Τεκμηρίωση_προτύπου/preload-filespace
| Πρότυπο:Τεκμηρίωση_προτύπου/preload
}} }} }} δημιουργία]]
}}</span>
}}</div>
}}<noinclude></div>
</noinclude>
4upsvh5zjtn3e3q33anczi21qwcuq0b
Πρότυπον:Τεκμηρίωση προτύπου/end box2
10
3044
35377
2023-04-02T01:59:01Z
2601:18E:C081:2FF0:9111:3D9E:4E5C:D202
Καινούρεον σελίδαν με '{{Τεκμηρίωση προτύπου/end box | preload = {{{preload|}}} <!--Allow custom preloads--> | content = {{{content|}}} | link box = {{{link box|}}} <!--So "link box=off" works--> | docpage = {{#if: {{{1|}}} | {{{1|}}} | {{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/τεκμηρίωση }} | doc exist = {{#ifexist: {{#if: {{{1|}}} | {{{1|}}} <!--Other docname fed--> | {{{docspace|{{NAMESPAC...'
35377
wikitext
text/x-wiki
{{Τεκμηρίωση προτύπου/end box
| preload = {{{preload|}}} <!--Allow custom preloads-->
| content = {{{content|}}}
| link box = {{{link box|}}} <!--So "link box=off" works-->
| docpage =
{{#if: {{{1|}}}
| {{{1|}}}
| {{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/τεκμηρίωση
}}
| doc exist =
{{#ifexist:
{{#if: {{{1|}}}
| {{{1|}}} <!--Other docname fed-->
| {{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/τεκμηρίωση
}}
| yes
}}
| docname fed =
{{#if: {{{1|}}}
| yes
}}
| sandbox =
{{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/αμμοδοχείο
| testcases =
{{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/testcases
| template page =
{{NAMESPACE}}:{{{template page|{{PAGENAME}}}}}
}}<noinclude>
</noinclude>
3ilobqzztqygnj39bex5b70yxc2pwkx
Πρότυπον:Τεκμηρίωση προτύπου/end box
10
3045
35378
2023-04-02T01:59:32Z
2601:18E:C081:2FF0:9111:3D9E:4E5C:D202
Καινούρεον σελίδαν με '<noinclude><div></noinclude><div style="clear: both;"></div><!--So right or left floating items don't stick out of the doc box.--> </div><!--End of green doc box--><!-- Link box below for the doc meta-data: -->{{#if: <!--Check if we should show the link box--> {{#ifeq: {{{link box|}}} | off | | {{{doc exist|yes}}}{{ #switch: {{SUBJECTSPACE}} | {{ns:User}} | {{ns:Template}} = yes }} }} | {{fmbox | id = documentation-m...'
35378
wikitext
text/x-wiki
<noinclude><div></noinclude><div style="clear: both;"></div><!--So right or left floating items don't stick out of the doc box.-->
</div><!--End of green doc box--><!--
Link box below for the doc meta-data:
-->{{#if:
<!--Check if we should show the link box-->
{{#ifeq: {{{link box|}}} | off
|
| {{{doc exist|yes}}}{{
#switch: {{SUBJECTSPACE}}
| {{ns:User}}
| {{ns:Template}} = yes
}}
}}
| {{fmbox
| id = documentation-meta-data
| image = none
| style = background-color: #ecfcf4;
| textstyle = font-style: italic;
| text =
{{#if: {{{link box|}}}
| {{{link box}}} <!--Use custom link box content-->
| {{#if: {{{doc exist|yes}}}
| <!--/doc exists, link to it-->
Η παραπάνω τεκμηρίωση ενσωματώνεται από τη σελίδα [[{{{docpage|{{FULLPAGENAME}}/τεκμηρίωση}}}]]. <small style="font-style: normal">([{{fullurl:{{{docpage|{{FULLPAGENAME}}/τεκμηρίωση}}}|action=edit}} επεξεργασία] | [{{fullurl:{{{docpage|{{FULLPAGENAME}}/τεκμηρίωση}}}|action=history}} ιστορικό])</small> <br>
}}<!--
Add links to /sandbox and /testcases when appropriate:
-->{{#switch: {{SUBJECTSPACE}}
| {{ns:User}}
| {{ns:Template}} =
Οι συντάκτες μπορούν να πειραματίζονται στο {{
#ifexist: {{{sandbox| {{FULLPAGENAME}}/αμμοδοχείο }}}
| [[{{{sandbox| {{FULLPAGENAME}}/αμμοδοχείο }}}|αμμοδοχείο]] <small style="font-style: normal">([{{fullurl: {{{sandbox| {{FULLPAGENAME}}/αμμοδοχείο }}} | action=edit }} επεξεργασία] <nowiki>|</nowiki> [{{fullurl:Special:ComparePages | page1={{urlencode:{{{template page|{{FULLPAGENAME}}}}}}}&page2={{urlencode:{{{sandbox|{{FULLPAGENAME}}/sandbox}}}}}}} διαφ])</small>
| αμμοδοχείο <small style="font-style: normal">([{{fullurl: {{{sandbox| {{FULLPAGENAME}}/αμμοδοχείο }}} | action=edit&preload=Πρότυπο:Τεκμηρίωση_προτύπου/preload-sandbox }} δημιουργία] <nowiki>|</nowiki> [{{fullurl: {{{sandbox| {{FULLPAGENAME}}/αμμοδοχείο }}} | action=edit&preload={{urlencode:{{{template page|{{FULLPAGENAME}}}}}}}&summary={{urlencode:Δημιουργία έκδοσης αμμοδοχείου για το [[{{{template page|{{FULLPAGENAME}}}}}]]}} }} αντίγραφο])</small>
}} και στις {{
#ifexist: {{{testcases| {{FULLPAGENAME}}/δοκιμές }}}
| [[{{{testcases| {{FULLPAGENAME}}/δοκιμές }}}|testcases]] <small style="font-style: normal">([{{fullurl: {{{testcases| {{FULLPAGENAME}}/testcases }}} | action=edit }} επεξεργασία])</small>
| δοκιμαστικές σελίδες <small style="font-style: normal">([{{fullurl: {{{testcases| {{FULLPAGENAME}}/δοκιμές }}} | action=edit&preload=Πρότυπο:Τεκμηρίωση_προτύπου/preload-testcases }} δημιουργία])</small>
}} του προτύπου. <br>
}}<!--
Show the cats and interwiki text, but not
if "content" fed or "docname fed" since then it is
unclear where to add the cats and interwikis.
-->{{#if: {{{content|}}} {{{docname fed|}}}
|
| Παρακαλούμε να προσθέτετε τις κατηγορίες στην [[{{{docpage|{{FULLPAGENAME}}/τεκμηρίωση}}}| υποσελίδα τεκμηρίωσης]].
}}<!--
Show the "Subpages" link:
-->{{#switch: {{SUBJECTSPACE}}
| {{ns:File}} = <!--Don't show it-->
| {{ns:Template}} =  [[Special:PrefixIndex/{{{template page|{{FULLPAGENAME}}}}}/|Υποσελίδες αυτής της σελίδας]].
| #default =  [[Special:PrefixIndex/{{{template page|{{FULLPAGENAME}}}}}/|Subpages of this page]].
}}
}}{{#ifexist:{{FULLPAGENAME}}/Print
|</br>A [[Help:Books/for experts#Improving the book layout|print version]] of this template exists at [[/Print]]. If you make a change to this template, please update the print version as well.[[Κατηγορία:Templates with print versions]]
}}
}}
}}<!--End link box--><!--
Detect and report strange usage:
-->{{#if:
<!--Check if {{Τεκμηρίωση προτύπου/}} is transcluded
on a /doc or /testcases page-->
{{#switch: {{SUBPAGENAME}}
| doc
| testcases = strange
}}
<!--More checks can be added here, just return anything
to make the surrounding if-case trigger-->
|
}}<noinclude>
{{τεκμηρίωση προτύπου}}
</noinclude>
trpb4he5t2w45twjyw6bkwxqf0gpyfp
Αλέξανδρος Παρχαρίδης
0
3053
37403
37402
2025-12-28T19:16:08Z
Таёжный лес
10003
37403
wikitext
text/x-wiki
[[File:Alexis Parharidis.jpg|thumb]]
Ο '''Αλέξανδρος''' (Αλεξίκον) ο '''Παρχαρίδης''' (15 Μάρτ' 1971) έν’ [[Ελλάδα|Έλληνας]] τραγωδι͜άνος, ντο γράφτ’ δίστιχα και καϊτέδες σα [[Πόντιοι|ποντιακά]].
Εγεννέθεν σην Κοζάνη το 1971. Τα κυρουκά τ’, ο Αναστά͜ης και η Σοφία Παρχαρίδου (το γένος Αντωνιάδη) οι δύος πα έσαν Πόντιοι. Ο κύρ’ σ’ ατ’ εγεννέθεν σο Πορτοράζ’ (Πρωτοχώρι Κοζάνης) και η μάναν ατ’ εγεννέθεν σο Σεραλάρ (Αλωνάκια Κοζάνης). Ατείν' έσαν που σιφτέν εμάτσαν τον γιον ατουν να ακούει και να τραγωδεί ποντιακά καϊτέδες.
Το 1989 εσέβεν ση Σχολή Αυτοματισμών σο ΤΕΙ τη Θεσσαλονίκης άμα, καμίαν ’κ’ επρόφτασεν να τελέν’ τη Σχολήν γιατί επ’ ετότε κιάν’ ερχίνεσεν να τραγωδεί σα χορόντας και σα πανοΰρι͜α, ασού εδι͜αρμένεψεν ατον ο Χρύσανθον κι επεκεί.
Ους ατώρα εποίκεν οκτώ δίσκους με ποντιακά τραωδίας.
{| class="wikitable"
!Έτος
!Τίτλος
!Συνεργασία
!Εκδόσεις
|-
|1991
|Καπίκιοϊ
|Κώστας Σιαμίδης
|Σύλλογος Ποντίων Φοιτητών & Σπουδαστών Θεσσαλονίκης
|-
|1999
|Καρδίας Καμονάντας
|Μιχάλης Καλιοντζίδης
|Θερμαϊκός
|-
|2001
|Ιάσων
|Omer Beykoz/Φίλιππος Κεσαπίδης
|ΜΒΙ
|-
|2003
|Αντίφωνα
|Μιχάλης Καλιοντζίδης/Δημήτρης Πιπερίδης/Δημήτρης Καρασαββίδης/Παναγιώτης Κογκαλίδης/Κώστας Τσιαβδαρίδης
|Θερμαϊκός
|-
|2004
|Ηλιοχάραμαν
|Παναγιώτης Κογκαλίδης
|Θερμαϊκός
|-
|2005
|Πόντος, η δική μου γη
|Αντώνης Παπαδόπουλος
|Θερμαϊκός
|-
|2016
|Αγγείου Μνήμες
|Γιώργος Σιαμίδης
|Σύλλογος Ποντίων Φοιτητών & Σπουδαστών Θεσσαλονίκης
|-
|2019
|Ύψωμαν
|Γιάννης Σανίδης
|Alexis Parharidis
|}
[[Κατηγορίαν:Ποιητάδες]]
[[Κατηγορίαν:Μουσική]]
jpwedzhg5419eh1ffufh4dc19d3iwkb
Σιμπσωνς
0
3059
35435
2023-07-01T10:09:05Z
88.155.10.196
Καινούρεον σελίδαν με 'Το '''The Simpsons''' είναι αμερικανική σειρά κινουμένων σχεδίων που δημιουργήθηκε από τον Ματ Γκρέινιγκ για το τηλεοπτικό κανάλι Fox. Οι Simpsons προβλήθηκαν για πρώτη φορά στις 17 Δεκεμβρίου του 1989 και συνεχίζουν να προβάλλονται έως σήμερα σε διάφορα τηλεοπτ...'
35435
wikitext
text/x-wiki
Το '''The Simpsons''' είναι αμερικανική σειρά κινουμένων σχεδίων που δημιουργήθηκε από τον Ματ Γκρέινιγκ για το τηλεοπτικό κανάλι Fox. Οι Simpsons προβλήθηκαν για πρώτη φορά στις 17 Δεκεμβρίου του 1989 και συνεχίζουν να προβάλλονται έως σήμερα σε διάφορα τηλεοπτικά δίκτυα παγκοσμίως.Ok CmC Είναι από τις μακροβιότερες σειρές κινουμένων σχεδίων στην ιστορία της τηλεόρασης, ενώ αναδείχτηκαν ως η μακροβιότερη τηλεοπτική σειρά σε ώρα υψηλής τηλεθέασης της αμερικανικής τηλεόρασης.[1] Έχουν μεταδοθεί πάνω από 660 επεισόδια, ενώ ο 30ος κύκλος μεταδίδεται την τηλεοπτική περίοδο 2018-19. Τον Ιούλιο του 2007 προβλήθηκε η κινηματογραφική ταινία [[The Simpsons: Η Ταινία]], η οποία έκανε εισπράξεις 527 εκατομμυρίων δολαρίων παγκοσμίως. Το 2011 ανακοινώθηκε ότι η σειρά θα έχει άλλες 2 σεζόν (24+25). Η 26η σεζόν έκανε πρεμιέρα στις 28 Σεπτεμβρίου του 2014 και ολοκληρώθηκε στις 17 Μαΐου του 2015. Στις 4 Μαΐου του 2015, η σειρά ανανεώθηκε για 27η και 28η σεζόν,[2] οι οποίες έκαναν πρεμιέρα στις 27 Σεπτεμβρίου του 2015 και 25 Σεπτεμβρίου του 2016, αντίστοιχα
hq8trs9w04luaq4js6c66y27qbfvqiv
MediaWiki:NewcomerTasks.json
8
3060
35459
35458
2023-08-14T16:59:32Z
MediaWiki default
5794
machine-generated configuration for excluding sections from link recommendations ([[phab:T308138]]), feel free to improve
35459
json
application/json
{
"image-recommendation": {
"disabled": false,
"templates": [],
"excludedTemplates": [],
"excludedCategories": [],
"type": "image-recommendation",
"group": "medium",
"learnmore": "",
"maxTasksPerDay": 25
},
"link-recommendation": {
"type": "link-recommendation",
"group": "easy",
"excludedSections": [
"αναφοράν",
"αναφοράντας",
"δείτε επίσης",
"εξωτερικοί σύνδεσμοι",
"σύνδεσμοι"
]
},
"section-image-recommendation": {
"type": "section-image-recommendation",
"group": "medium",
"maxTasksPerDay": 25
}
}
qask56u6vjkrmiv20e0j2nha4pnppln
Μαρία Κάλλας
0
3063
35568
35528
2024-01-24T15:08:26Z
Διογένες
10538
Κάλλας το 1958
35568
wikitext
text/x-wiki
[[Αρχείον:Maria Callas 1958.jpg|μικρογραφία|Κάλλας το 1958]]
Η '''Μαρία Κάλλας''' (Maria Callas· 2 Χριστουγενναρί 1923 - 16 Σταυρί 1977) έτον τραγουδίστρια.
[[Κατηγορίαν:Μουσική]]
sqge5ywdsh6jbm9h6drkddbyxqwwk15
Αννα Νετρέμπκο
0
3066
35476
2023-10-07T18:56:20Z
AntonyFragakis
6008
Ο AntonyFragakis μετακίνησε τη σελίδα [[Αννα Νετρέμπκο]] στην [[Άννα Νετρέμπκο]]
35476
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Άννα Νετρέμπκο]]
mtx2ognrpx3z7ie6snpvhmz65wx3wpi
Χρύσανθος
0
3068
35480
2023-10-15T09:05:57Z
Aarp65
4133
Ανακατεύθυνση στη σελίδα [[Χρύσανθος Θεοδωρίδης]]
35480
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Χρύσανθος Θεοδωρίδης]]
2qo02omz315orx57ilg9amyflxvqlvz
Θεοδωρίδης
0
3069
35481
2023-10-15T09:06:39Z
Aarp65
4133
Ανακατεύθυνση στη σελίδα [[Χρύσανθος Θεοδωρίδης]]
35481
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Χρύσανθος Θεοδωρίδης]]
2qo02omz315orx57ilg9amyflxvqlvz
Τίρανα
0
3076
37409
35614
2025-12-30T22:14:49Z
Таёжный лес
10003
37409
wikitext
text/x-wiki
[[Εικόναν:Skanderbeg square tirana 2016.jpg|thumb|250px|]]
[[Εικόναν:Albania District.svg|thumb|150px|]]
Η '''Τίρανα''' (αγγ.Tirana) εν αλβανικόν πολιτείαν και εχ' τρανόν [[ιστορίαν]]. Εν η ασ' ουλτς τρανόν πολιτείαν και η [[πρωτεύουσα]] τη χώρας. Οσήμερον (2011) εχ' πληθυσμόν 557,422 ανθρώπ.
== Συνδέζμαι ==
* [https://www.tirana.al Επίσημον σελίδαν τη Τίρανα]
* [https://www.visit-tirana.com/things-to-do/museums-in-tirana/ Μουσεία τη Τίρανα]
* {{commonscat-inline}}
{{authority control}}
[[Κατηγορίαν:Πολιτείας τ' Αλβανία|Τίρανα]]
lr0nhz54osb71pf3kjhh9l0esmtmfgv
Δυρράχιο
0
3077
35615
2024-02-27T01:12:43Z
Muhaarnaout
10636
προστέθηκε περιεχόμενο
35615
wikitext
text/x-wiki
[[Εικόναν:Drač, panorama náměstí.jpg|thumb|250px|]]
[[Εικόναν:Durres in Albania.svg|thumb|150px|]]
Η '''Δυρράχιο''' (αγγ.Durrës) εν αλβανικόν πολιτείαν και εχ' τρανόν [[ιστορίαν]]. Οσήμερον (2011) εχ' πληθυσμόν 175,110 ανθρώπ.
== Συνδέζμαι ==
* [https://www.durrës.gov.al Επίσημον σελίδαν τη Δυρράχιο]
[[Κατηγορίαν:Πολιτείας τ' Αλβανία|Δυρράχιο]]
m1f35aslt4365u4tlk311wyzkf8lsqs
Σημαία τη Γερμανίας
0
3078
35620
35619
2024-03-03T17:27:51Z
2003:E7:471C:E500:51A3:70A9:A52E:4AE8
35620
wikitext
text/x-wiki
[[Αρχείον:Flag of Germany.svg|μικρογραφία]]
Η εθνικόν σημαία τη Γερμανίας εναι τρίχρωμον σύνθετον απʼ τρία ίσα οριζόντια ζωνάρια πον παρουσιάζνε τα εθνικά χρώματα τη Γερμανίας: μαυρον, κόκκινον, και χρυσόν (σα Γερμανικά: Schwarz-Rot-Gold)
rm7or7aok9fp3p50mjlwhop5n2a5jx5
Σημαία τ' Ελλάδας
0
3079
36325
35622
2025-10-26T16:10:26Z
~2025-30214-92
12055
36325
wikitext
text/x-wiki
[[Αρχείον:LGBTQ+ Greek Pride Flag.svg|μικρογραφία|Η επίσημος σημαία τη Ελληνικής Δημοκρατίας]]
Η εθνικόν σημαία τη Ελλάδας, εν τω λαώ γνωστήν ως η «γαλανολεύκης» ή η «κυανόλευκη», επίσημως αναγνωριστέον απʼ την Ελλάδαν ως εν απʼ τα εθνικά σημεία ταν, έχεν πέντε ίσα οριζόντια γραμμάς απʼ γαλάζιον εναλλασσόμενα με άσπρον. Έχεν γαλάζιον καντόνιον εις την άνω γωνίαν τη πλευράς τη σημαίας, φέροντα λευκόν σταυρόν· ο σταυρός συμβολίζετον το Ανατολικόν Ορθόδοξον Χριστιανισμόν. Το λεξικόν τη σημαίας εναι «κυανόν, τέσσερες γραμμάς λευκές· επί καντονίου του πεδίου σταυρός ελληνικός όλον του δευτέρου». Ο επίσημος λόγος τη σημαίας εναι 2:3. Η απόχρωση του γαλάζιου πον χρησιμοποιείται εις την σημαίαν έχ' εναλλαχθή εις όλον τ' ιστορίαν ταν, απο ανοικτόν γαλάζιον εις σκούρον γαλάζιον, το δεύτερον χρησιμοπούμενον ολοέν και περισσότερον απο τα τέλη τη δεκαετίας του 1960. Επίσημως ετέθη απʼ την Πρώτη Εθνικήν Συνέλευσιν εις τ' Επίδαυρον την 13ην Ιανουαρίου του 1822.
Ενώ τα εννέα γραμμάς δεν έχενε επίσημον σημασίαν, η πιο δημοφιλής ερμηνεία λέει ότι παρουσιάζνε τα συλλαβάς τη φράσης «Ελευθερία ή Θάνατος» οι πέντε γαλάζιες γραμμάς για τα συλλαβάς εις την «Ελευθερία», οι τέσσερες λευκές για εκείνα τη «ή Θάνατος». Ο σύνολον των εννέα γραμμών λέγεται επίσης ότι παρουσιάζε τα γράμματα τη λέξεως «ελευθερία». Το άσπρο και το γαλάζιο συμβολίζνε τα χρώματα του ελληνικού ουρανού και τη θάλασσας.
80c3cvkxss007imz4k0ksdlnfbys5d1
Υπεριώδης ακτινοβολία
0
3092
35687
2024-05-02T19:56:52Z
2601:18D:4800:EA0:B804:B790:ACBB:33F4
Καινούρεον σελίδαν με '[[Αρχείο:Spectre visible light el.png|thumb|right|340px|Το φάσμα της ορατής ακτινοβολίας.]] '''Υπεριώδης ακτινοβολία''' (υπέρ το ιώδες χρώμα, πάνω από τη συχνότητα του ιώδους χρώματος) ονομάζεται η περιοχή της ηλεκτρομαγνητική ακτινοβολία|ηλεκτρομαγνητικής ακτινοβολία...'
35687
wikitext
text/x-wiki
[[Αρχείο:Spectre visible light el.png|thumb|right|340px|Το φάσμα της ορατής ακτινοβολίας.]]
'''Υπεριώδης ακτινοβολία''' (υπέρ το ιώδες χρώμα, πάνω από τη συχνότητα του ιώδους χρώματος) ονομάζεται η περιοχή της [[ηλεκτρομαγνητική ακτινοβολία|ηλεκτρομαγνητικής ακτινοβολίας]] της οποίας το [[μήκος κύματος]] στο [[κενό]] κυμαίνεται περίπου μεταξύ 380 και 60 νανομέτρων (nm).<ref name="Σχολικό Βιβλίο Φυσικής">{{cite book|title=Φυσική Θετικής & Τεχνολογικής Κατεύθυνσης Γ΄Τάξης Γενικού Λυκείου|work=Παιδαγωγικό Ινστιτούτο, Υπουργείο Εθνικής παιδείας και Θρησκευμάτων|publisher=Οργανισμός Εκδόσεων Διδακτικών Βιβλίων|edition=Η' |year=2008|pages=62-63|chapter=Κύματα|isbn=960-06-1154-8}}</ref>
Υπάρχουν τρία είδη υπεριώδους ακτινοβολίας<ref name="ιστοσελίδα υπεριώδους">{{cite web|url=http://www.certh.gr/32B73BBB.el.aspx|title=Βασικές Γνώσεις Εργασίας με Υπεριώδη Ακτινοβολία|year=2010|publisher=The Center for research & Tecnology Hellas|accessdate=2010-01-13|format=aspx}}</ref>:<!--η ασυμφωνία των μηκών κύματος με παραπάνω οφείλεται στη διαφωνία των πηγών-->
* UV-A: Αυτή η ακτινοβολία κυμαίνεται στο κενό μεταξύ 315 και 400 νανόμετρα. Είναι υπεύθυνη για τα βαθιά εγκαύματα και μελανώματα και δεν σταματάει με απλά αντιηλιακά αλλά ούτε με τζάμι.
* UV-B: Αυτή η ακτινοβολία κυμαίνεται στο κενό μεταξύ 280 και 315 νανόμετρα. Μεν και αυτή επικίνδυνη, αλλά προσφέρει το μαύρισμα και τη βιταμίνη D, αλλά είναι πιθανό να προκαλέσει και επιφανειακά εγκαύματα που μπορεί να προκαλέσουν βασικοκυτταρικά και πλακωδωκυτταρικά καρκινώματα.
* UV-Γ: Αυτή η ακτινοβολία κυμαίνεται στο κενό μεταξύ 40 και 280 νανόμετρα. Είναι το πιο επικίνδυνο είδος της υπεριώδους ακτινοβολίας, καθώς με αυτήν έχουν επιτευχθεί εργαστηριακά [[μετάλλαξη|μεταλλάξεις]].
Κύρια πηγή υπεριώδους ακτινοβολίας είναι ο ήλιος<ref name="Σχολικό Βιβλίο Φυσικής"/>. Φτάνει στη γη μέσω της επανεκπομπής της από τη [[στρατόσφαιρα]]. Είναι επικίνδυνη ακτινοβολία και το [[όζον|στρώμα του όζοντος]] προστατεύει την επιφάνεια της γης από αυτήν. Αυτός είναι ο λόγος που η [[τρύπα του όζοντος]] είναι σοβαρό [[οικολογικό πρόβλημα]].
== Βιολογικές επιπτώσεις της υπεριώδους ακτινοβολίας ==
Το [[δέρμα]] και τα [[μάτι]]α είναι τα όργανα που υφίσταται τη μεγαλύτερη έκθεση στις υπεριώδεις ακτίνες του ήλιου. Αν και τα μαλλιά και τα νύχια είναι περισσότερο εκτεθειμένα, είναι λιγότερο σημαντικά από ιατρικής άποψης. Η έκθεση στην ηλιακή υπεριώδη ακτινοβολία μπορεί να καταλήξει σε άμεσα και σε χρόνια προβλήματα υγείας του δέρματος, των ματιών και του ανοσοποιητικού συστήματος, καθώς και σε βλάβες στο [[DNA]].
Τα άμεσα αποτελέσματα της έκθεσης στην υπεριώδη ακτινοβολία είναι η πρόκληση [[έγκαυμα|εγκαύματος]] στο δέρμα και [[φωτοκερατίτιδα]]ς στο μάτι. Χρόνια αποτελέσματα είναι ο [[καρκίνος]] και η πρόωρη γήρανση του δέρματος, ενώ στα χρόνια αποτελέσματα του ματιού περιλαμβάνονται ο [[καταρράκτης (ιατρική)|καταρράκτης]], το πτερύγιο και η [[κερατοπάθεια]].
Ενώ η υπεριώδης ακτινοβολία Β (UV-B) προκαλεί έγκαυμα και διάφορες μορφές καρκίνου του δέρματος, η υπεριώδης ακτινοβολία Α (UV-A) επιδρά στον υποδόριο ιστό και μπορεί να αλλάξει η δομή του [[κολλαγόνο]]υ και των ινών [[ελαστίνη]]ς του δέρματος, επιταχύνοντας έτσι τη γήρανσή του. Οι αρνητικές συνέπειες των εγκαυμάτων είναι αθροιστικές.
Είναι σημαντικό να κατανοήσουμε ότι το δέρμα έχει την ικανότητα να αφομοιώσει την υπεριώδη ακτινοβολία με την παραγωγή [[μελανίνη]]ς (μαύρισμα), η οποία προστατεύει από την έκθεση στην UV ακτινοβολία. Το ανθρώπινο μάτι όμως δεν έχει τέτοια ικανότητα.
Όταν η υπεριώδης ακτινοβολία αλληλεπιδράσει με το DNA προκαλεί μια αναδιάταξή του όπου υπάρχουν δύο συνεχόμενες βάσεις [[θυμίνη]]ς δημιουργώντας τα [[διμερή θυμίνης]]. Το σχήμα του DNA αλλάζει τοπικά στο σημείο όπου σχηματίζονται τα διμερή, με αποτέλεσμα οι πολυμεράσες τόσο του DNA όσο και του RNA να τα προσπερνούν, αλλάζοντας με αυτό το τρόπο το πλαίσιο ανάγνωσης, με αποτέλεσμα την εμφάνιση μεταλλάξεων. Οι οργανισμοί έχουν αναπτύξει αρκετούς διαφορετικούς μηχανισμούς για να επιδιορθώσουν τα διμερή θυμίνης, όπως το [[ένζυμο]] [[φωτολυάση]] που ενεργοποιείται με [[μπλε|μπλε ακτινοβολία]] και διαχωρίζει τα διμερή. Άλλοι μηχανισμοί αποκόπτουν το σημείο που σχηματίστηκαν τα διμερή και η DNA πολυμεράση συμπληρώνει τις ελλιπείς βάσεις.
Η ικανότητα του ανθρώπινου σώματος να προστατεύει και να αποκαθιστά τις βλάβες που προκαλούνται από την υπεριώδη ακτινοβολία, μειώνεται κατά τη διάρκεια της ζωής μας. Ορισμένα άτομα παρουσιάζουν αντιδράσεις [[φωτοευαισθησία]]ς στην έκθεση σε ακτινοβολία UV λόγω γενετικών-μεταβολικών ιδιαιτεροτήτων ή χρήση φαρμάκων.
Γενικά, όσο μικρότερο το μήκος κύματος, τόσο μεγαλύτεροι οι κίνδυνοι από την έκθεση σε ακτινοβολία UV.
== Πηγές υπεριώδους ακτινοβολίας στα εργαστήρια ==
Οι κύριες πηγές υπεριώδους ακτινοβολίας στα εργαστήρια είναι οι [[μικροβιοκτόνος λαμπτήρας|μικροβιοκτόνοι λαμπτήρες]] και οι [[τράπεζα υπεριώδους ακτινοβολίας|τράπεζες υπεριώδους ακτινοβολίας]].
* Οι τράπεζες υπεριώδους ακτινοβολίας εκπέμπουν ακτινοβολία UV-B (312nm) που είναι επικίνδυνη για το δέρμα και τα μάτια. Η σωστή χρήση επιβάλει το [[ακρυλικό]] καπάκι της συσκευής να είναι κλειστό όταν παρατηρούμε τη [[γέλη]], να φοράμε ποδιά (η ακτινοβολία δεν διαπερνά τα ρούχα), γάντια και προστατευτικά γυαλιά.
* Ο θάλαμος νηματικής (στρωτής) ροής (laminar flow) έχει μικροβιοκτόνο λάμπα που εκπέμπει UV-C (253,7nm). Η χρήση της λάμπας με σκοπό την αποστείρωση του χώρου εργασίας του θαλάμου γίνεται για 5-10 λεπτά και αφού ειδοποιηθούν οι συνάδελφοι να μην βρίσκονται τριγύρω. Μετά την [[αποστείρωση]] ο χώρος να αεριστεί επειδή η ακτινοβολία UV-C παράγει όζον.
===Αξιολόγηση και έλεγχος του κινδύνου===
#Καθορίστε τον τύπο UV της πηγής (UV-A, UV-Β, UV-C) από τις πληροφορίες που δίνει ο κατασκευαστής. Ο τύπος UV καθορίζει τον τύπο κινδύνου ( δέρμα, μάτι, κ.λπ).
#Καθορίστε την ένταση της πηγής.
#Καθορίστε τη διάρκεια έκθεσης. Σε αντιδιαστολή με τη βιομηχανία οι περισσότεροι οι άνθρωποι που εργάζονται στα εργαστήρια εκτελούν μια τυχαία σειρά δοκιμών και η έκθεση και οι διάρκειες έκθεσης θα είναι σποραδικές.
#Χρησιμοποιήστε κατάλληλο προστατευτικό εξοπλισμό. Ποδιές εργαστηρίων, προστατευτικά γάντια, γυαλιά ασφάλειας, οι ασπίδες προσώπου παρέχουν έναν σημαντικό επίπεδο προστασίας.
Εάν οι πηγές είναι εξοπλισμένες με προστατευτικά εξαρτήματα να μην αφαιρούνται κατά τη χρήση.
===Προσωπικός προστατευτικός εξοπλισμός===
Ο ακόλουθος εξοπλισμός πρέπει να χρησιμοποιείται κατά τις εργασίες με πηγές υπεριώδους ακτινοβολίας.
*Απορροφητικά γυαλιά ηλίου, γυαλιά οράσεως με UV φίλτρο, φακοί επαφής με UV φίλτρο, γυαλιά ασφαλείας ή ασπίδα προσώπου.
*Γάντια
*Ποδιές ή φόρμες εργαστηρίων.
*Κατάρτιση
== Πηγές ==
<references />
{{ηλεκτρομαγνητικό φάσμα}}
{{Authority control}}
{{Portal bar|Φυσική}}
{{Ηλεκτρομαγνητισμός-επέκταση}}
[[Κατηγορία:Ηλεκτρομαγνητικό φάσμα]]
n99pgjpj6e85aybjg0cszo2jfru2tjh
Φιέρ
0
3093
35697
2024-06-01T07:07:16Z
Stafili70
10848
προστέθηκε περιεχόμενο
35697
wikitext
text/x-wiki
[[Εικόναν:Centrum Fier Albania 2018 1.jpg|thumb|250px|]]
[[Εικόναν:Fier in Albania.svg|thumb|150px|]]
Η '''Φιέρ''' (αγγ.Fier) εν αλβανικόν πολιτείαν και εχ' τρανόν [[ιστορίαν]]. Οσήμερον (2011) εχ' πληθυσμόν 120,655 ανθρώπ.
== Συνδέζμαι ==
* [https://bashkiafier.gov.al/ Επίσημον σελίδαν τη Φιέρ]
[[Κατηγορίαν:Πολιτείας τ' Αλβανία|Φιέρ]]
snyflbx6nxj4wm0y40cdkdb6dawcqao
MediaWiki:GrowthExperimentsHelpPanel.json
8
3103
35732
35716
2024-08-28T12:29:19Z
Maintenance script
4747
Adding version data
35732
json
application/json
{
"$version": "1.0.0",
"GEHelpPanelAskMentor": "mentor-talk-page",
"GEHelpPanelExcludedNamespaces": [],
"GEHelpPanelHelpDeskPostOnTop": "top",
"GEHelpPanelHelpDeskTitle": "",
"GEHelpPanelLinks": [
{
"title": "mw:Special:MyLanguage/Help:VisualEditor/User guide",
"text": "Special:MyLanguage/Help:VisualEditor/User guide",
"id": "mw:Special:MyLanguage/Help:VisualEditor/User_guide"
},
{
"title": "mw:Special:MyLanguage/Help:VisualEditor/User guide#Images",
"text": "Special:MyLanguage/Help:VisualEditor/User guide",
"id": "mw:Special:MyLanguage/Help:VisualEditor/User_guide"
},
{
"title": "mw:Special:MyLanguage/Help:VisualEditor/User guide#Editing references",
"text": "Special:MyLanguage/Help:VisualEditor/User guide",
"id": "mw:Special:MyLanguage/Help:VisualEditor/User_guide"
}
],
"GEHelpPanelReadingModeNamespaces": [],
"GEHelpPanelSearchNamespaces": [],
"GEHelpPanelViewMoreTitle": ""
}
8nmgwyoridqmm0f25g47w8yir31zu8g
MediaWiki:GrowthExperimentsHomepage.json
8
3104
36172
36171
2025-02-24T16:25:15Z
Maintenance script
4747
Migrating data to new format
36172
json
application/json
{
"$version": "2.0.1",
"GEHomepageSuggestedEditsIntroLinks": {
"create": "mw:Special:MyLanguage/Help:VisualEditor/User_guide",
"image": "mw:Special:MyLanguage/Help:VisualEditor/User_guide#Images"
},
"GELevelingUpGetStartedMaxTotalEdits": 10,
"GELevelingUpKeepGoingNotificationThresholdsMaximum": 4
}
01d9h0h7i4mrxfhzbizepi2kycrlquz
MediaWiki:GrowthExperimentsMentorship.json
8
3105
35718
2024-07-17T12:10:01Z
Maintenance script
4747
machine-generated configuration for migrating GrowthExperiments community configurable options to use CommunityConfiguration Extension ([[phab:T359038]])
35718
json
application/json
{
"GEMentorshipEnabled": false
}
a09xiu0ooqkfmvvcbrs68ahct9dme76
MediaWiki:GrowthExperimentsSuggestedEdits.json
8
3106
36278
36277
2025-06-23T17:09:44Z
Maintenance script
4747
Migrating data to new format
36278
json
application/json
{
"$version": "2.0.0",
"GEInfoboxTemplates": [],
"copyedit": {
"disabled": false,
"templates": [],
"excludedTemplates": [],
"excludedCategories": [],
"learnmore": ""
},
"expand": {
"disabled": false,
"templates": [],
"excludedTemplates": [],
"excludedCategories": [],
"learnmore": ""
},
"image_recommendation": {
"disabled": false,
"excludedTemplates": [],
"excludedCategories": [],
"learnmore": "",
"maxTasksPerDay": 25,
"templates": []
},
"link_recommendation": {
"disabled": false,
"excludedTemplates": [],
"excludedCategories": [],
"learnmore": "",
"maximumLinksToShowPerTask": 3,
"excludedSections": [
"αναφοράν",
"αναφοράντας",
"δείτε επίσης",
"εξωτερικοί σύνδεσμοι",
"σύνδεσμοι"
],
"maxTasksPerDay": 25,
"underlinkedWeight": 0.5,
"minimumLinkScore": 0.6,
"maximumEditsTaskIsAvailable": "no"
},
"links": {
"disabled": false,
"templates": [],
"excludedTemplates": [],
"excludedCategories": [],
"learnmore": ""
},
"references": {
"disabled": false,
"templates": [],
"excludedTemplates": [],
"excludedCategories": [],
"learnmore": ""
},
"section_image_recommendation": {
"disabled": false,
"excludedTemplates": [],
"excludedCategories": [],
"learnmore": "",
"maxTasksPerDay": 25
},
"update": {
"disabled": false,
"templates": [],
"excludedTemplates": [],
"excludedCategories": [],
"learnmore": ""
}
}
myvjixkh2ee8st2ig700a4w86vr6dkq
Τζόγος σον διαδίκτυον
0
3108
35735
35731
2024-09-02T16:29:35Z
XXBlackburnXx
6949
spam
35735
wikitext
text/x-wiki
Ο διαδικτυακός τζόγος (γνωστός επίσης ως iGaming ή iGambling) εν’ κάθε είδους τζόγος που γίνετ’ σο διαδίκτυον. Τούτο συμπεριλαμβάνει εικονικό πόκερ, καζίνα και στοιχήματα αθλοπαιδιών. Το πρώτον διαδικτυακόν μέρος για τζόγον που άνοιξεν για το γενικόν κοινόν ήτον η πώληση εισιτηρίων για το Λοταρίαν του Λιχτενστάιν τον Οκτώβριον του 1994. Σήμερον, η αγορά εν αξίζει περίπου $40 δισεκατομμύρια παγκοσμίως κάθε χρόνον, σύμφωνα με διάφορες εκτιμήσεις.
Πολλά κράτη περιορίζουν ή απαγορεύουν τον διαδικτυακόν τζόγον. Ωστόσο, εν’ νόμιμος σ' ορισμένας πολιτείας των Ηνωμένων Πολιτειών, σε ορισμένας επαρχίας του Καναδά, στα περισσότερα κράτη της Ευρωπαϊκής Ένωσης, και σ' αρκετές χώρες της Καραϊβικής.
Σ’ πολλούς νόμιμους τόπους, οι πάροχοι υπηρεσιών διαδικτυακού τζόγου απαιτείται να έχουν κάποιον είδος άδειας για να προσφέρουν υπηρεσίες ή να διαφημίζονται σ’ ακάτοικους εκεί. Για παράδειγμα, η Επιτροπή Τζόγου του Ηνωμένου Βασιλείου ή το Συμβούλιο Ελέγχου Παιχνιδιών της Πενσυλβανίας στις ΗΠΑ.
== Ιστορία ==
Το 1994, η Αντίγκουα και Μπαρμπούντα επέρασεν τον Νόμον Ελεύθερου Εμπορίου και Επεξεργασίας, επιτρέποντας να δοθούσιν άδειες σ' οργανισμούς που αιτούνταν να ανοίξνε διαδικτυακά καζίνα. Πριν από τα διαδικτυακά καζίνα, το πρώτον πλήρως λειτουργικόν λογισμικόν τζόγου αναπτύχθηκεν από τη Microgaming, μια εταιρία λογισμικού που έδρευεν στην Νήσον του Μαν. Τούτο εσφαλίσθεν με λογισμικόν που αναπτύχθηκεν από τη CryptoLogic, μια εταιρία διαδικτυακής ασφάλειας λογισμικού. Ασφαλείς συναλλαγές εγίνησαν δυνατές· τούτο οδήγησεν σην ίδρυσην των πρώτων διαδικτυακών καζίνο το 1994.
Το 1996 εγίνηκεν η ίδρυση της Επιτροπής Παιχνιδιών του Κανάγουακε, που ερρύθμιζεν τη διαδικτυακήν δραστηριότητα τζόγου από την Επικράτειαν των Μοχάουκ του Κανάγουακε και εξέδιδεν άδειες τζόγου σε πολλά από τα διαδικτυακά καζίνα και δωμάτια πόκερ του κόσμου. Τούτο εν’ μια προσπάθεια να κρατήνεται οι λειτουργίες των αδειοδοτημένων διαδικτυακών οργανισμών τζόγου δίκαιες και διαφανείς.
== '''Μορφές''' ==
Το διαδίκτυον επέτρεψεν καινούρια είδη τζόγου να εφτάν’ διαδικτυακά. Οι βελτιώσεις σην τεχνολογίαν άλλαξνε τ' έθη των στοιχημάτων, όπως τα τερματικά βίντεο λοταρίας, το κίνο, και τα ξυστόχαρτα αλλάξαν την βιομηχανίαν τζόγου σον 20όν αιώναν.
Ο τζόγος εγίνηκεν ένα από τα πιο δημοφιλή και κερδοφόρα επιχειρήματα σο διαδίκτυον. Το 2007, η Επιτροπή Τζόγου του Ηνωμένου Βασιλείου ανέφερεν ότι η βιομηχανία τζόγου επετύχαν έναν κύκλον εργασιών άνω των £84 δισεκατομμυρίων. Τούτον οφείλεται εν μέρει σην μεγάλην γκάμαν επιλογών τζόγου που εν διαθέσιμες σε πολλών διαφόρων ειδών ανθρώπους. Ένα άρθρον γραμμένον από τους Ντάρεν Ρ. Κρίστενσεν, Νίκι Α. Ντόουλινγκ, Άλουν Κ. Τζάκσον και Σέιν Α. Τόμας είπεν ότι μια έρευνα σην Αυστραλίαν έδειξεν ότι οι πιο κοινές μορφές τζόγου ήσαν λοταρίες (46.5%), κίνο (24.3%), ξυστά εισιτήρια (24.3%), και ηλεκτρονικά μηχανήματα τυχερών παιχνιδιών (20.5%). Οι διαδικτυακοί τόποι τζόγου άρχισαν να προσλαμβάνουν διασημότητες ως πρεσβευτές τους, όπως ο Μάικ Τάισον, ο Κριστιάνο Ρονάλντο, ο Κόνορ ΜακΓκρέγκορ, και ο Πίτερ Κράουτς.
=== '''Πόκερ''' ===
Κύριο άρθρο: Διαδικτυακό πόκερ
Τα διαδικτυακά τραπέζια πόκερ συχνά προσφέρουν το Τέξας Χολντ’ εμ, Όμαχα Χολντ’ εμ, επτά-φύλλα Στούντ, ρας, HORSE, και άλλα είδη παιχνιδιών τόσο σε τουρνουά όσο και σε παιχνίδια μετρητών. Οι παίκτες παίζουν μεταξύ τους αντί εναντίον του «σπιτιού», και το καζίνο βγάζει χρήματα μέσω του «ράκε» και μέσω των χρεώσεων τουρνουά.
=== '''Καζίνα''' ===
Κύριο άρθρο: Διαδικτυακό καζίνο
Υπάρχουν πολλά διαδικτυακά καζίνα όπου οι άνθρωποι μπορούν να παίξν καζίνο παιχνίδια όπως ρουλέτα, μπλακτζάκ, πατσίνκο, μπακαρά, και πολλά άλλα. Αυτά τα παιχνίδια παίζονται ενάντια στο «σπίτι», το οποίο βγάζει χρήματα επειδή οι πιθανότητες εν υπέρ του.
=== '''Sweepstakes διαδικτυακά καζίνα''' ===
Κύριο άρθρο: Sweepstakes καζίνο
Τα sweepstakes διαδικτυακά καζίνα αντιπροσωπεύουν μιαν εναλλακτικήν προσέγγιση σον διαδικτυακόν τζόγον, παρέχοντας μιαν πλατφόρμαν για παιχνίδια καζίνο σ’ περιοχές όπου ο παραδοσιακός διαδικτυακός τζόγος αντιμετωπίζει νομικούς περιορισμούς. Αυτές οι πλατφόρμες χαρακτηρίζονται από ένα μοντέλον sweepstakes, που τα διακρίνει από τα συνηθισμένα διαδικτυακά καζίνα επιτρέποντας στους χρήστες να συμμετέχνε σον παιχνίδι χωρίς να στοιχηματίζουν άμεσα πραγματικά χρήματα.
== '''Υπεύθυνος Τζόγος''' ==
Τα Χαρακτηριστικά Υπεύθυνου Τζόγου (ΧΥΤ) εν’ χαρακτηριστικά που χρησιμοποιούν τα διαδικτυακά τζόγου για να προωθούν υπεύθυνη συμπεριφορά και να μειώνουν τη βλάβη. Αυτά συμπεριλαμβάνουν τον περιορισμόν των ποσών που μπορούν να στοιχηματιστούν ή να κατατεθούν κατά τη διάρκεια καθορισμένης χρονικής περιόδου, τεστ αυτοαξιολόγησης για προβλήματα τζόγου, και προειδοποιητικά σημάδια για παρατεταμένο παίξιμον ή υψηλή δαπάνη. Τα ΧΥΤ εν συνήθως χαρακτηριστικά που οι παίκτες πρέπει να επιλέξνε και απαιτούνται από ορισμένες δικαιοδοσίες. Για παράδειγμα, οι πάροχοι στη Δανία, Γερμανία, και Ισπανία πρέπει να παρέχουν όρια καταθέσεων, αλλά τούτο εν προαιρετικό για τους παρόχους στην Αυστραλία. Ένα δείγμα διαδικτυακών παικτών πόκερ από τη Σουηδίαν έδειξεν ότι τα ΧΥΤ αυξάνουν την εμπιστοσύνη τους σην εταιρίαν και μειώνουν το άγχος τους για την νίκη από άλλους παίκτες. Ωστόσο, στες δικαιοδοσίες που απαιτούν Χαρακτηριστικά Υπεύθυνου Τζόγου, μόνο ένα μικρόν ποσοστό πελατών τα χρησιμοποιεί. Στην Αυστραλία, το 0.8% χρησιμοποίησεν το όριον κατάθεσης σον SportsBet και το 6% χρησιμοποίησεν τα όρια απώλειας καταθέσεων σον BetFair Australia.
bylvq4ucn6q1qnuvpag3j2virv3dz6n
Κατηγορίαν:User ksh
14
3123
35969
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35969
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Κολωνικά.
iifpzr6aunxwq4oeycp2p6b7jq7kbc6
Κατηγορίαν:User nds-NL
14
3124
35970
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35970
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Κάτω Γερμανικά Ολλανδίας.
07dxjds4vy2k43jxoxvws4g3g165s5o
Κατηγορίαν:User vls
14
3125
35971
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35971
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν West Flemish.
6iashfx2kptwaaos3xw8mcnjnqt6m6r
Κατηγορίαν:User lb
14
3126
35972
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35972
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Λουξεμβουργιανά.
l4e0qvbptfq5pb6zmkx9laim0ez8053
Κατηγορίαν:User pdc
14
3127
35973
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35973
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Pennsylvania German.
dxqb0r6ufukfomagxhfabrdkahlbplw
Κατηγορίαν:User pfl
14
3128
35974
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35974
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Palatine German.
c11l81a9p4wklqjrvpb5gg2dzs0d4li
Κατηγορίαν:User bar
14
3129
35975
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35975
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Bavarian.
qeb3kxy9w8dsbo39u2t242nlgkizqzc
Κατηγορίαν:User wep
14
3130
35976
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35976
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Westphalien.
998snoscrq90xo6b88dqmawnifwl798
Κατηγορίαν:User swg
14
3131
35977
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35977
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Swabian.
sqvw140vp5lr5uapk532x7e0rynpw41
Κατηγορίαν:User sli
14
3132
35978
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35978
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Lower Silesian.
ja8nlg2e6qlslmccb9715pa6jjgrrgm
Κατηγορίαν:User vmf
14
3133
35979
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35979
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Main-Franconian.
gn72ivhrs8we1xxytboq4f5b2fkhz18
Κατηγορίαν:User pdt
14
3134
35980
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35980
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Plautdietsch.
teoe6k0wbgcdc8do0jeeouxxs7lfkoz
Κατηγορίαν:User stq
14
3135
35981
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35981
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Saterland Frisian.
g4rgiy2grns4y5klmwjyxkuixq0an9q
Κατηγορίαν:User lfn
14
3136
35982
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35982
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Lingua Franca Nova.
7g8o85kg24q7ul002a0grg9ocf46h5c
Κατηγορίαν:User gmh
14
3137
35983
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35983
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Μέσα Άνω Γερμανικά.
5ydj53l5qsu3fnmpmzd8b7wnstehmzh
Κατηγορίαν:User frr
14
3138
35984
2024-10-26T05:29:05Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35984
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Βόρεια Φριζιανά.
b3ica00wauie2zydh10vr1of0dfis1s
Κατηγορίαν:User fa
14
3139
35990
2024-10-26T05:30:00Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35990
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Περσικά.
s402eykto5uvzrrkkezr8pnawi96464
Κατηγορίαν:User az
14
3140
35991
2024-10-26T05:30:00Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35991
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Αζερμπαϊτζανικά.
oqo41g9gcwlwd1rtj4nxhwnmcsox6lw
Κατηγορίαν:User tr
14
3141
35992
2024-10-26T05:30:00Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
35992
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Τουρκικά.
1y1t0r239iww7iixyo92c7l3r5yhqr2
MediaWiki:BabelConfig.json
8
3152
36115
2025-01-30T23:46:42Z
Maintenance script
4747
Migrating server configuration to an on-wiki JSON file ([[phab:T374348]])
36115
json
application/json
{
"$version": "1.0.0",
"BabelAutoCreate": true,
"BabelCategoryNames": {
"0": "",
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"N": ""
},
"BabelMainCategory": "User %code%",
"BabelUseUserLanguage": false
}
lx7iuvc3uobaj3ina5v8p1g2np2r6vh
The Walt Disney Company
0
3153
36158
2025-02-04T12:58:15Z
Nikos Patas
11433
Καινούρεον σελίδαν με 'Η '''The Walt Disney Company''', (σ' [[Ελλενικόν λαλίαν|ελλενικά]]: '''Εταιρεία Γουόλτ Ντίσνεϊ'''), λέγ'ται και '''Ντίσνεϊ''', εν μία αμερικανική πολυεθνική κοινοπραξία μέσων ενημέρωσης και ψυχαγωγίας μ' έδρα την Walt Disney Studios σο [[Μπέρμπανκ]] τη [[Καλιφόρνια|Καλιφόρνιας]]....'
36158
wikitext
text/x-wiki
Η '''The Walt Disney Company''', (σ' [[Ελλενικόν λαλίαν|ελλενικά]]: '''Εταιρεία Γουόλτ Ντίσνεϊ'''), λέγ'ται και '''Ντίσνεϊ''', εν μία αμερικανική πολυεθνική κοινοπραξία μέσων ενημέρωσης και ψυχαγωγίας μ' έδρα την Walt Disney Studios σο [[Μπέρμπανκ]] τη [[Καλιφόρνια|Καλιφόρνιας]].
Η εταιρία εν γνώριμη για το κινηματογραφικό στούντιο ατ'ς, τη The Walt Disney Studios, που περιέχ' τις [[Walt Disney Pictures]], Walt Disney Animation Studios, Pixar, Marvel Studios, Lucasfilm, 20th Century Studios, Searchlight Pictures και Blue Sky Studios.
Ο χαρακτήρας κινουμένων σχεδίων [[Μίκυ Μάους]], εδημιουργέθεν σα 1928 απ' τους Γουόλτ Ντίσνεϊ και Ουμπ Άιγουερκς, εν ένας απ' τους πιο γνώριμους χαρακτήρες όλων των εποχών και αποτελεί την επίσημην μασκότ τ' εταιρίας.
ch8cirnwmuzj62lv7l1tfsux6kxevwt
Η Χιονάρα και οι Εφτά Κοντοπόιδες (ταινία, 1937)
0
3154
36191
36190
2025-03-21T21:03:32Z
Nikos Patas
11433
36191
wikitext
text/x-wiki
'''''Η Χιονάρα και οι Εφτά Κοντοπόιδες''''' (σα [[Ελλενικόν λαλίαν|ελλενικά]]: ''Η Χιονάτη και οι Επτά Νάνοι'', σα εγγλέζικα: ''Snow White and the Seven Dwarfs'') εν μια αμερικανική κινηματογραφική ταινία φαντασίας - μιούζικαλ κινουμένων σχεδίων του 1937. Η παραγωγή εγέν'τον απ' τη Walt Disney Productions ενώ η διανομή απ' τη RKO Pictures. Βασίζεται σο ομότιτλον γερμανικόν παραμύθιν των αδελφών Γκριμ και εν η πρωτέσσα ταινία κινουμένων σχεδίων τρανού μήκους τη Disney. Επικεφαλής σκηνοθέτης έτον ο Ντέιβιντ Χαντ, ενώ οι Ουίλιαμ Κότρελ, Ουίλφρεντ Τζάκσον, Λάρι Μόρεϊ, Περς Πιρς και Μπεν Σάρπστιν έσαν σκηνοθέτες των μεμονωμένων σκηνών τη ταινίας.
lxhbtynz6u2dkesfr424kay2b9dej8x
MediaWiki:Blockedtext
8
3156
36208
36207
2025-03-28T22:13:47Z
A09
10151
handled
36208
wikitext
text/x-wiki
<strong>Το όνομα χρήστη ή η διεύθυνση IP σας έχει φραγεί.</strong>
{{int:blockedtext-made-by|$1}}
{{int:blockedtext-reason-comment|$2}}
*{{int:blockedtext-start-time|$8}}
*{{int:blockedtext-expiration-time|$6}}
*{{int:blockedtext-intended-blockee|$7}}
{{int:blockedtext-contact-blocker-admin|$1}}
Μπορείτε να χρησιμοποιήσετε τη λειτουργία «{{int:emailuser}}» αν έχετε ορίσει μια έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου στις [[Special:Preferences|προτιμήσεις χρήστη]] σας και δεν έχετε αποκλειστεί από τη χρήση της.
{{int:blockedtext-block-ip|$3}}{{int:blockedtext-block-id|$5}}
{{int:blockedtext-include-details-queries}}
58le8wl9dtjt3n77j1r2wl7s7tzvm7s
Αργυρόκαστρον
0
3158
36202
36201
2025-03-26T20:05:41Z
Nikos Patas
11433
/* Πολλά γνωστοί Αργυροκαστρίτες */
36202
wikitext
text/x-wiki
Τ' '''Αργυρόκαστρον''' (σ' αλβανικόν λαλίαν: Gjirokastër, Γκιροκάστερ) εν αλβανικόν πολιτείαν σον νότο τ' [[Αλβανία|Αλβανίας]] και ζει τρανόν ελλενικόν μειονότητα ατού. Σ' ατή την πολιτείαν εγεννέθαν ο πρώην Αλβανός κομμουνιστής Ενβέρ Χότζα κι ο τρανός συγγραφέας Ισμαΐλ Κανταρέ. Η πολιτεία εφάνθεν καταγεγραμμέντσα σην ιστορίαν σα 1336 με τ' ελλενικόν όνεμαν ατ'ς, Αργυρόκαστρον ή Αργυρούπολη, ωσάν τμήμα τη Ρωμανίας. Εγέν'τον αργότερα κέντρον του τοπικού πριγκιπάτου, μ' άρχοντα τον Αλβανόν Γκιον Ζενεμπίσι (1373-1417), πριν γενεί Οθωμανική πολιτείαν για πέντε αιώνες.
== Πολλά γνωστοί Αργυροκαστρίτες ==
* Γρηγόριος Αργυροκαστρίτης, λόγιος και Αρχιεπίσκοπος Αθηνών ως Γρηγόριος Δ΄ (1827-1828)
* Ιωάννης Δούκας, Έλλενας ζωγράφος του 19ου αιώνα
* Ιωάννης Κόντης, Ελλενοαλβανός ποδοσφαιριστής
* Αριάν Μπελάι πρώην διεθνής ποδοσφαιριστής
* Αλτίν Χατζί, διεθνής ποδοσφαιριστής
qss4ry3tz3a8xlb6krriadr148tcvbd
MediaWiki:GrowthExperimentsCommunityUpdates.json
8
3159
36204
36203
2025-03-27T16:17:17Z
Maintenance script
4747
Migrating data to new format
36204
json
application/json
{
"$version": "2.0.3",
"GEHomepageCommunityUpdatesCallToAction": {
"pageTitle": "",
"buttonText": ""
},
"GEHomepageCommunityUpdatesContentBody": "",
"GEHomepageCommunityUpdatesContentTitle": "",
"GEHomepageCommunityUpdatesEnabled": false,
"GEHomepageCommunityUpdatesMinEdits": 0,
"GEHomepageCommunityUpdatesThumbnailAddDarkModeBackground": false,
"GEHomepageCommunityUpdatesThumbnailFile": {
"title": "",
"url": ""
}
}
d1xm97f2xbtvehjzbe3po6c2mousbni
Ελβασάνι
0
3160
36216
2025-04-05T16:27:52Z
Nikos Patas
11433
Δημιουργήθηκε από μετάφραση της σελίδας "[[:el:Special:Redirect/revision/11016344|Ελμπασάν]]"
36216
wikitext
text/x-wiki
Τ' '''Ελβασάνι''' ή '''Ελμπασάν''' (σ' αλβανικά: ''Elbasani'' ή ''Elbasan'') εν πολιτείαν σο κέντρον τ' Αλβανίας. Τ' Ελβασάνι εν μίαν απ' τις τρανότερες πολιτείες της χώρας, με 128.150 ανθρώπ'ς ση χρονία 2011. Η πολιτεία εν κτισμέντσα σον βοράν του ποταμού Σκούμπιν, 32 χιλιομέτρα σα νοτιοανατολικά των Τιράνων κ' εν πρωτεύουσα του νομού και τ' επαρχίας με τ' ίδιον όνεμαν. Παλαιά, ωνεμαζόταν ''Νεόκαστρον'' σ' ελλενικά, ''Νόβιγκραντ'' (Νέα Πόλιτειαν) σα σλαβικά και ''Terra Nuova'' σ' ιταλικόν λαλίαν. Τ' όνεμαν π' εχ' οσήμερον επάρθεν απ' το τουρκικόν ιλ-μπασάν ("ατός π' επάτησεν το χέρ'").
gbh8qcwx2nps0msm9y4baf1lsrbjvfq
Ελμπασάν
0
3161
36217
2025-04-05T17:14:11Z
Nikos Patas
11433
Δημιουργήθηκε από μετάφραση της σελίδας "[[:el:Special:Redirect/revision/11016344|Ελμπασάν]]"
36217
wikitext
text/x-wiki
Τ' Ελβασάνι ή Ελμπασάν (σ' αλβανικά: Elbasani ή Elbasan) εν πολιτείαν σο κέντρον τ' Αλβανίας. Τ' Ελβασάνι εν μίαν απ' τις τρανότερες πολιτείες της χώρας, με 128.150 ανθρώπ'ς ση χρονία 2011. Η πολιτεία εν κτισμέντσα σον βοράν του ποταμού Σκούμπιν, 32 χιλιομέτρα σα νοτιοανατολικά των Τιράνων κ' εν πρωτεύουσα του νομού και τ' επαρχίας με τ' ίδιον όνεμαν. Παλαιά, ωνεμαζόταν Νεόκαστρον σ' ελλενικά, Νόβιγκραντ (Νέα Πόλιτειαν) σα σλαβικά και Terra Nuova σ' ιταλικόν λαλίαν. Τ' όνεμαν π' εχ' οσήμερον επάρθεν απ' το τουρκικόν ιλ-μπασάν ("ατός π' επάτησεν το χέρ'").
kybv29ktmn2cdf9p3a1nxfev6cofdfl
Λάνα Ντελ Ρέι
0
3170
36261
2025-05-26T19:31:15Z
RDTvG
11657
Καινούρεον σελίδαν με 'Λάνα Ντελ Ρέι Η '''Ελισάβετ Ουλρίτζ Γκραντ''' (''Elizabeth Woolridge Grant''), γεννέθεν την 21ην του Ιουνίου 1985 σο Νέα Υόρκην, έν' γνωστή με τ’ ονομα '''Λάνα Ντελ Ρέι'''. Είν' Αμερικάν’ τραγωδός, τραγωδοποιός και ποιήτρια. Ο κόσμος λέει ατ’ έναν ας τα πιο σοβαρά πρόσωπα...'
36261
wikitext
text/x-wiki
Λάνα Ντελ Ρέι
Η '''Ελισάβετ Ουλρίτζ Γκραντ''' (''Elizabeth Woolridge Grant''), γεννέθεν την 21ην του Ιουνίου 1985 σο Νέα Υόρκην, έν' γνωστή με τ’ ονομα '''Λάνα Ντελ Ρέι'''. Είν' Αμερικάν’ τραγωδός, τραγωδοποιός και ποιήτρια. Ο κόσμος λέει ατ’ έναν ας τα πιο σοβαρά πρόσωπα σ’ εποχή μούζικας. Έχουν επονέψει ατ’ “Βασίλισσα της Εναλλακτικής Μούζικας” (''Queen of Alternative Music'').<ref name="elwiki">\[[https://el.wikipedia.org/wiki/Λάνα\_Ντελ\_Ρέι](https://el.wikipedia.org/wiki/Λάνα_Ντελ_Ρέι) Λάνα Ντελ Ρέι – Βικιπαίδεια (ελληνικά)]</ref>
Το άλμπουμ ατής το ''Born to Die'' εβγήκεν το 2012 και έκαμεν μεγάλη επιτυχία. Έφτασεν σο δεύτερον νούμερον σην Αμερική και ήτον το τρίτον πιο πουλημένον άλμπουμ εκείνον το χρόνον. Τραγούδια σο άλμπουμ, όκ’ ''Summertime Sadness'', ''Video Games'' και ''Blue Jeans'' εγένταν μεγάλες επιτυχίες. Μετά έβγαλε κι άλλα άλμπουμ, όκ’ το ''Ultraviolence'' (2014), ''Honeymoon'' (2015), και ''Lust for Life'' (2017). Το 2019 έβγαλε το ''Norman Fucking Rockwell!'', οποιόν ελέπ’ σο περιοδικό ''Rolling Stone'' άς ένα ας τα πιο καλά όλων των εποχών.<ref name="rollingstone">\[[https://www.rollingstone.com/music/music-lists/best-albums-of-all-time-1062063/lana-del-rey-norman-fucking-rockwell-2-1063190/](https://www.rollingstone.com/music/music-lists/best-albums-of-all-time-1062063/lana-del-rey-norman-fucking-rockwell-2-1063190/) Rolling Stone – 500 Greatest Albums]</ref>
Η Λάνα εγεννέθεν σο Νέα Υόρκην και εμεγάλωσεν σο Λέικ Πλάσιντ.<ref name="elwiki" /> Εδιάλεξεν το ψευδώνυμον ατ’ για να έχ’ έναν όνομα που να δείχν’ το στυλ ατ’, με παλαιόν λαμπρόν του Χόλιγουντ. Είν’ γνωστή για το ξεχωριστόν σηνέμα-ήχον ατ’, οποίν ενεμπνεύθεν από τη μουσικήν των ’50 και ’60 χρόνων, από τη χιπ-χοπ και από τραγωδούς όκ’ ο Έλβις Πρίσλεϊ, η Νάνσυ Σινάτρα και οι Νιρβάνα. Τ’ είν’ φανερόν σ’ τραγωδίαν όκ’ το ''National Anthem'' και το ''Born To Die''.
Οι μουσικολόγοι λένε ατ’ η Λάνα έν’ έναν ας τα πιο επιδραστικά πρόσωπα σην εποχήν μουσικής. Τραγωδούδες όκ’ η Τέιλορ Σουίφτ και η Μπίλι Άιλις εγνωρίσαν το ταλέντο ατ’. Ελέπεν ατ’ ως αρχηγόν της mainstream μουσικής σο 2010, γιατί έβγαλε ατ’ από τα χαρωπά και χορευτικά τραγούδια και έβαλεν ατ’ μελαγχολικά λόγια και μουσικές υποβλητικές.
Το έργον ατς εκάλυψεν και θέματα κοινωνικά και ψυχολογικά. Στο άλμπουμ ''Chemtrails over the Country Club'' (2021) και ''Blue Banisters'' (2021) ασχολείται με την απομόνωση, την οικογένεια και τον ρόλον της γυναίκας. Το 2023, έβγαλε το ''Did You Know That There's a Tunnel Under Ocean Blvd'', έναν δίσκον με πολλά προσωπικά και πονεμένα στοιχεία.<ref name="elwiki" />
Ατ’ έχουν επικρίνει και για τον τρόπον που παρουσιάζ’ τη θηλυκότητα και τον ρομαντισμόν. Παρόλα ταύτα, πολλοί υποστηρίζουν ατ’, λέγοντας πως η Λάνα εν' ένας καθρέφτης της σύγχρονης εποχής – και μια τραγωδός με έντονον προσωπικόν ύφος, χωρίς φόβον να δείχν’ τ’ αδυναμίας ατ’.
Το όνομα ''Λάνα Ντελ Ρέι'' ενεμπνεύσθεν από τη χολιγουντιανή λάμψη και το μοντέλο αμαξιού Ford Del Rey. Το μουσικό ύφος ατς χαρακτηρίζεται από βαριά ρετρό αισθητική, με κινηματογραφικά στοιχεία, δραματικούς στίχους και επιρροές από doo-wop, indie pop, trip hop και art rock. Τα τραγούδια ατς συχνά μιλούν για την αγάπη, τη θλίψη, την καταστροφή, το αμερικανικό όνειρο και την ταυτότητα.
Η Ντελ Ρέι έλαβεν πολλαπλές υποψηφιότητες για Γκράμι και άλλες διεθνείς διακρίσεις. Το 2021 συμπεριλήφθην στη λίστα ''100 most influential people'' του περιοδικού ''Time''.<ref name="time">{{Cite web |title=Lana Del Rey: The 100 Most Influential People of 2021 |url=[https://time.com/collection/100-most-influential-people-2021/6096087/lana-del-rey/](https://time.com/collection/100-most-influential-people-2021/6096087/lana-del-rey/) |website=TIME |access-date=25 Μαΐου 2025}}</ref>
Πηγές
mq1wvtdxd6oimeh813qosjf2eh7269p
Σταυροφορίας
0
3178
36311
36310
2025-09-02T09:59:33Z
History012
11896
36311
wikitext
text/x-wiki
Σταυροφορίας ήτανε σειρά θρησκευτικώ πολέμων που εγεννήθαν και ενεκρίναν από την [[Ρωμαιοκαθολικήν]] [[Εκκλησίαν]] κατά την [[μεσαιωνικήν]] εποχήν. Ο κυριότερος σκοπός ατον ήτον η ανάκτηση και υπεράσπιση των Αγίων Τόπων, κυρίως της [[Ιερουσαλήμ]], από την [[μουσουλμανικήν]] κυριαρχίαν. Η πρώτη Σταυροφορία εκηρύχθη το 1095 από τον πάπαν Ουρβανόν Β΄, μετά από αίτημα του [[Βυζαντινού]] αυτοκράτορα Αλεξίου Α΄ Κομνηνού, για στρατιωτικήν βοήθειαν εναντίον των Σελτζούκων Τούρκων.
5rgadsxu5zjlxayugtn7s10gron88ul
Module:Infobox
828
3183
36343
2025-12-15T14:09:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- -- This module implements {{Infobox}} -- local p = {} local navbar = require('Module:Navbar')._navbar local args = {} local origArgs local root local function notempty( s ) return s and s:match( '%S' ) end local function fixChildBoxes(sval, tt) if notempty(sval) then local marker = '<span class=special_infobox_marker>' local s = sval s = mw.ustring.gsub(s, '(<%s*[Tt][Rr])', marker .. '%1') s = mw.ustring.gsub(s, '(</[Tt][Rr]%s*>)',...'
36343
Scribunto
text/plain
--
-- This module implements {{Infobox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local args = {}
local origArgs
local root
local function notempty( s ) return s and s:match( '%S' ) end
local function fixChildBoxes(sval, tt)
if notempty(sval) then
local marker = '<span class=special_infobox_marker>'
local s = sval
s = mw.ustring.gsub(s, '(<%s*[Tt][Rr])', marker .. '%1')
s = mw.ustring.gsub(s, '(</[Tt][Rr]%s*>)', '%1' .. marker)
if s:match(marker) then
s = mw.ustring.gsub(s, marker .. '%s*' .. marker, '')
s = mw.ustring.gsub(s, '([\r\n]|-[^\r\n]*[\r\n])%s*' .. marker, '%1')
s = mw.ustring.gsub(s, marker .. '%s*([\r\n]|-)', '%1')
s = mw.ustring.gsub(s, '(</[Cc][Aa][Pp][Tt][Ii][Oo][Nn]%s*>%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, '(<%s*[Tt][Aa][Bb][Ll][Ee][^<>]*>%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, '^(%{|[^\r\n]*[\r\n]%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, '([\r\n]%{|[^\r\n]*[\r\n]%s*)' .. marker, '%1')
s = mw.ustring.gsub(s, marker .. '(%s*</[Tt][Aa][Bb][Ll][Ee]%s*>)', '%1')
s = mw.ustring.gsub(s, marker .. '(%s*\n|%})', '%1')
end
if s:match(marker) then
local subcells = mw.text.split(s, marker)
s = ''
for k = 1, #subcells do
if k == 1 then
s = s .. subcells[k] .. '</' .. tt .. '></tr>'
elseif k == #subcells then
local rowstyle = ' style="display:none"'
if notempty(subcells[k]) then rowstyle = '' end
s = s .. '<tr' .. rowstyle ..'><' .. tt .. ' colspan=2>\n' .. subcells[k]
elseif notempty(subcells[k]) then
if (k % 2) == 0 then
s = s .. subcells[k]
else
s = s .. '<tr><' .. tt .. ' colspan=2>\n' .. subcells[k] .. '</' .. tt .. '></tr>'
end
end
end
end
-- the next two lines add a newline at the end of lists for the PHP parser
-- https://en.wikipedia.org/w/index.php?title=Template_talk:Infobox_musical_artist&oldid=849054481
-- remove when [[:phab:T191516]] is fixed or OBE
s = mw.ustring.gsub(s, '([\r\n][%*#;:][^\r\n]*)$', '%1\n')
s = mw.ustring.gsub(s, '^([%*#;:][^\r\n]*)$', '%1\n')
s = mw.ustring.gsub(s, '^([%*#;:])', '\n%1')
s = mw.ustring.gsub(s, '^(%{%|)', '\n%1')
return s
else
return sval
end
end
local function union(t1, t2)
-- Returns the union of the values of two tables, as a sequence.
local vals = {}
for k, v in pairs(t1) do
vals[v] = true
end
for k, v in pairs(t2) do
vals[v] = true
end
local ret = {}
for k, v in pairs(vals) do
table.insert(ret, k)
end
return ret
end
local function getArgNums(prefix)
-- Returns a table containing the numbers of the arguments that exist
-- for the specified prefix. For example, if the prefix was 'data', and
-- 'data1', 'data2', and 'data5' exist, it would return {1, 2, 5}.
local nums = {}
for k, v in pairs(args) do
local num = tostring(k):match('^' .. prefix .. '([1-9]%d*)$')
if num then table.insert(nums, tonumber(num)) end
end
table.sort(nums)
return nums
end
local function addRow(rowArgs)
-- Adds a row to the infobox, with either a header cell
-- or a label/data cell combination.
if rowArgs.header then
root
:tag('tr')
:addClass(rowArgs.rowclass)
:cssText(rowArgs.rowstyle)
:attr('id', rowArgs.rowid)
:tag('th')
:attr('colspan', 2)
:attr('id', rowArgs.headerid)
:addClass(rowArgs.class)
:addClass(args.headerclass)
:css('text-align', 'center')
:cssText(args.headerstyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(fixChildBoxes(rowArgs.header, 'th'))
elseif rowArgs.data then
local row = root:tag('tr')
row:addClass(rowArgs.rowclass)
row:cssText(rowArgs.rowstyle)
row:attr('id', rowArgs.rowid)
if rowArgs.label then
row
:tag('th')
:attr('scope', 'row')
:attr('id', rowArgs.labelid)
:css('text-align','left')
:cssText(args.labelstyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(rowArgs.label)
:done()
end
local dataCell = row:tag('td')
if not rowArgs.label then
dataCell
:attr('colspan', 2)
:css('text-align', 'center')
end
dataCell
:attr('id', rowArgs.dataid)
:addClass(rowArgs.class)
:cssText(rowArgs.datastyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(fixChildBoxes(rowArgs.data, 'td'))
end
end
local function renderTitle()
if not args.title then return end
root
:tag('caption')
:css('font-size','125%')
:css('font-weight','bold')
:addClass(args.titleclass)
:cssText(args.titlestyle)
:wikitext(args.title)
end
local function renderAboveRow()
if not args.above then return end
root
:tag('tr')
:tag('th')
:attr('colspan', 2)
:addClass(args.aboveclass)
:css('text-align', 'center')
:css('font-size', '125%')
:css('font-weight', 'bold')
:cssText(args.abovestyle)
:wikitext(fixChildBoxes(args.above,'th'))
end
local function renderBelowRow()
if not args.below then return end
root
:tag('tr')
:tag('td')
:attr('colspan', '2')
:addClass(args.belowclass)
:css('text-align', 'center')
:cssText(args.belowstyle)
:wikitext(fixChildBoxes(args.below,'td'))
end
local function renderSubheaders()
if args.subheader then
args.subheader1 = args.subheader
end
if args.subheaderrowclass then
args.subheaderrowclass1 = args.subheaderrowclass
end
local subheadernums = getArgNums('subheader')
for k, num in ipairs(subheadernums) do
addRow({
data = args['subheader' .. tostring(num)],
datastyle = args.subheaderstyle,
rowcellstyle = args['subheaderstyle' .. tostring(num)],
class = args.subheaderclass,
rowclass = args['subheaderrowclass' .. tostring(num)]
})
end
end
local function renderImages()
if args.image then
args.image1 = args.image
end
if args.caption then
args.caption1 = args.caption
end
local imagenums = getArgNums('image')
for k, num in ipairs(imagenums) do
local caption = args['caption' .. tostring(num)]
local data = mw.html.create():wikitext(args['image' .. tostring(num)])
if caption then
data
:tag('div')
:cssText(args.captionstyle)
:wikitext(caption)
end
addRow({
data = tostring(data),
datastyle = args.imagestyle,
class = args.imageclass,
rowclass = args['imagerowclass' .. tostring(num)]
})
end
end
local function renderRows()
-- Gets the union of the header and data argument numbers,
-- and renders them all in order using addRow.
local rownums = union(getArgNums('header'), getArgNums('data'))
table.sort(rownums)
for k, num in ipairs(rownums) do
addRow({
header = args['header' .. tostring(num)],
label = args['label' .. tostring(num)],
data = args['data' .. tostring(num)],
datastyle = args.datastyle,
class = args['class' .. tostring(num)],
rowclass = args['rowclass' .. tostring(num)],
rowstyle = args['rowstyle' .. tostring(num)],
rowcellstyle = args['rowcellstyle' .. tostring(num)],
dataid = args['dataid' .. tostring(num)],
labelid = args['labelid' .. tostring(num)],
headerid = args['headerid' .. tostring(num)],
rowid = args['rowid' .. tostring(num)]
})
end
end
local function renderNavBar()
if not args.name then return end
root
:tag('tr')
:tag('td')
:attr('colspan', '2')
:css('text-align', 'right')
:wikitext(navbar{
args.name,
mini = 1,
})
end
local function renderItalicTitle()
local italicTitle = args['italic title'] and mw.ustring.lower(args['italic title'])
if italicTitle == '' or italicTitle == 'force' or italicTitle == 'yes' then
root:wikitext(mw.getCurrentFrame():expandTemplate({title = 'italic title'}))
end
end
local function renderTrackingCategories()
if args.decat ~= 'yes' then
if args.child == 'yes' then
if args.title then
root:wikitext('[[Category:Σελίδες που περιλαμβάνουν πρότυπα πλαίσια πληροφοριών χωρίς παράμετρο τίτλου]]')
end
elseif #(getArgNums('data')) == 0 and mw.title.getCurrentTitle().namespace == 0 then
root:wikitext('[[Category:Λήμματα που περιλαμβάνουν πρότυπα πλαίσια πληροφοριών χωρίς γραμμές δεδομένων]]')
end
end
end
local function _infobox()
-- Specify the overall layout of the infobox, with special settings
-- if the infobox is used as a 'child' inside another infobox.
if args.child ~= 'yes' then
root = mw.html.create('table')
root
:addClass((args.subbox ~= 'yes') and 'infobox' or nil)
:addClass(args.bodyclass)
if args.subbox == 'yes' then
root
:css('padding', '0')
:css('border', 'none')
:css('margin', '-3px')
:css('width', 'auto')
:css('min-width', '100%')
:css('font-size', '88%')
:css('clear', 'none')
:css('float', 'none')
:css('background-color', 'transparent')
else
root
:css('line-height','1.5em')
:css('width', '22em')
:css('font-size', '88%')
end
root
:cssText(args.bodystyle)
renderTitle()
renderAboveRow()
else
root = mw.html.create()
root
:wikitext(args.title)
end
renderSubheaders()
renderImages()
renderRows()
renderBelowRow()
renderNavBar()
renderItalicTitle()
renderTrackingCategories()
return tostring(root)
end
local function preprocessSingleArg(argName)
-- If the argument exists and isn't blank, add it to the argument table.
-- Blank arguments are treated as nil to match the behaviour of ParserFunctions.
if origArgs[argName] and origArgs[argName] ~= '' then
args[argName] = origArgs[argName]
end
end
local function preprocessArgs(prefixTable, step)
-- Assign the parameters with the given prefixes to the args table, in order, in batches
-- of the step size specified. This is to prevent references etc. from appearing in the
-- wrong order. The prefixTable should be an array containing tables, each of which has
-- two possible fields, a "prefix" string and a "depend" table. The function always parses
-- parameters containing the "prefix" string, but only parses parameters in the "depend"
-- table if the prefix parameter is present and non-blank.
if type(prefixTable) ~= 'table' then
error("Non-table value detected for the prefix table", 2)
end
if type(step) ~= 'number' then
error("Invalid step value detected", 2)
end
-- Get arguments without a number suffix, and check for bad input.
for i,v in ipairs(prefixTable) do
if type(v) ~= 'table' or type(v.prefix) ~= "string" or (v.depend and type(v.depend) ~= 'table') then
error('Invalid input detected to preprocessArgs prefix table', 2)
end
preprocessSingleArg(v.prefix)
-- Only parse the depend parameter if the prefix parameter is present and not blank.
if args[v.prefix] and v.depend then
for j, dependValue in ipairs(v.depend) do
if type(dependValue) ~= 'string' then
error('Invalid "depend" parameter value detected in preprocessArgs')
end
preprocessSingleArg(dependValue)
end
end
end
-- Get arguments with number suffixes.
local a = 1 -- Counter variable.
local moreArgumentsExist = true
while moreArgumentsExist == true do
moreArgumentsExist = false
for i = a, a + step - 1 do
for j,v in ipairs(prefixTable) do
local prefixArgName = v.prefix .. tostring(i)
if origArgs[prefixArgName] then
moreArgumentsExist = true -- Do another loop if any arguments are found, even blank ones.
preprocessSingleArg(prefixArgName)
end
-- Process the depend table if the prefix argument is present and not blank, or
-- we are processing "prefix1" and "prefix" is present and not blank, and
-- if the depend table is present.
if v.depend and (args[prefixArgName] or (i == 1 and args[v.prefix])) then
for j,dependValue in ipairs(v.depend) do
local dependArgName = dependValue .. tostring(i)
preprocessSingleArg(dependArgName)
end
end
end
end
a = a + step
end
end
function p.infobox(frame)
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- Parse the data parameters in the same order that the old {{infobox}} did, so that
-- references etc. will display in the expected places. Parameters that depend on
-- another parameter are only processed if that parameter is present, to avoid
-- phantom references appearing in article reference lists.
preprocessSingleArg('child')
preprocessSingleArg('bodyclass')
preprocessSingleArg('subbox')
preprocessSingleArg('bodystyle')
preprocessSingleArg('title')
preprocessSingleArg('titleclass')
preprocessSingleArg('titlestyle')
preprocessSingleArg('above')
preprocessSingleArg('aboveclass')
preprocessSingleArg('abovestyle')
preprocessArgs({
{prefix = 'subheader', depend = {'subheaderstyle', 'subheaderrowclass'}}
}, 10)
preprocessSingleArg('subheaderstyle')
preprocessSingleArg('subheaderclass')
preprocessArgs({
{prefix = 'image', depend = {'caption', 'imagerowclass'}}
}, 10)
preprocessSingleArg('captionstyle')
preprocessSingleArg('imagestyle')
preprocessSingleArg('imageclass')
preprocessArgs({
{prefix = 'header'},
{prefix = 'data', depend = {'label'}},
{prefix = 'rowclass'},
{prefix = 'rowstyle'},
{prefix = 'rowcellstyle'},
{prefix = 'class'},
{prefix = 'dataid'},
{prefix = 'labelid'},
{prefix = 'headerid'},
{prefix = 'rowid'}
}, 50)
preprocessSingleArg('headerclass')
preprocessSingleArg('headerstyle')
preprocessSingleArg('labelstyle')
preprocessSingleArg('datastyle')
preprocessSingleArg('below')
preprocessSingleArg('belowclass')
preprocessSingleArg('belowstyle')
preprocessSingleArg('name')
args['italic title'] = origArgs['italic title'] -- different behaviour if blank or absent
preprocessSingleArg('decat')
return _infobox()
end
return p
qe309g8sjwnl5dpf1hmfb9zpdj0zomm
Module:File link
828
3184
36344
2025-12-15T14:10:15Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module provides a library for formatting file wikilinks. local yesno = require('Module:Yesno') local checkType = require('libraryUtil').checkType local p = {} function p._main(args) checkType('_main', 1, args, 'table') -- This is basically libraryUtil.checkTypeForNamedArg, but we are rolling our -- own function to get the right error level. local function checkArg(key, val, level) if type(val) ~= 'string' then error(string.form...'
36344
Scribunto
text/plain
-- This module provides a library for formatting file wikilinks.
local yesno = require('Module:Yesno')
local checkType = require('libraryUtil').checkType
local p = {}
function p._main(args)
checkType('_main', 1, args, 'table')
-- This is basically libraryUtil.checkTypeForNamedArg, but we are rolling our
-- own function to get the right error level.
local function checkArg(key, val, level)
if type(val) ~= 'string' then
error(string.format(
"type error in '%s' parameter of '_main' (expected string, got %s)",
key, type(val)
), level)
end
end
local ret = {}
-- Adds a positional parameter to the buffer.
local function addPositional(key)
local val = args[key]
if not val then
return nil
end
checkArg(key, val, 4)
ret[#ret + 1] = val
end
-- Adds a named parameter to the buffer. We assume that the parameter name
-- is the same as the argument key.
local function addNamed(key)
local val = args[key]
if not val then
return nil
end
checkArg(key, val, 4)
ret[#ret + 1] = key .. '=' .. val
end
-- Filename
checkArg('file', args.file, 3)
ret[#ret + 1] = 'File:' .. args.file
-- Format
if args.format then
checkArg('format', args.format)
if args.formatfile then
checkArg('formatfile', args.formatfile)
ret[#ret + 1] = args.format .. '=' .. args.formatfile
else
ret[#ret + 1] = args.format
end
end
-- Border
if yesno(args.border) then
ret[#ret + 1] = 'border'
end
addPositional('location')
addPositional('alignment')
addPositional('size')
addNamed('upright')
addNamed('link')
addNamed('alt')
addNamed('page')
addNamed('class')
addNamed('lang')
addNamed('start')
addNamed('end')
addNamed('thumbtime')
addPositional('caption')
return string.format('[[%s]]', table.concat(ret, '|'))
end
function p.main(frame)
local origArgs = require('Module:Arguments').getArgs(frame, {
wrappers = 'Template:File link'
})
if not origArgs.file then
-- error("'file' parameter missing from [[Template:File link]]", 0)
return ''; -- fail silently
end
-- Copy the arguments that were passed to a new table to avoid looking up
-- every possible parameter in the frame object.
local args = {}
for k, v in pairs(origArgs) do
-- Make _BLANK a special argument to add a blank parameter. For use in
-- conditional templates etc. it is useful for blank arguments to be
-- ignored, but we still need a way to specify them so that we can do
-- things like [[File:Example.png|link=]].
if v == '_BLANK' then
v = ''
end
args[k] = v
end
return p._main(args)
end
return p
smwy47x1qqb9f8lhqy31ezwnaxxh2h1
Module:Yesno
828
3185
36345
2025-12-15T14:11:47Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Function allowing for consistent treatment of boolean-like wikitext input. -- It works similarly to the template {{yesno}}. return function (val, default) -- If your wiki uses non-ascii characters for any of "yes", "no", etc., you -- should replace "val:lower()" with "mw.ustring.lower(val)" in the -- following line. val = type(val) == 'string' and val:lower() or val if val == nil then return nil elseif val == true or val == 'yes' o...'
36345
Scribunto
text/plain
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to the template {{yesno}}.
return function (val, default)
-- If your wiki uses non-ascii characters for any of "yes", "no", etc., you
-- should replace "val:lower()" with "mw.ustring.lower(val)" in the
-- following line.
val = type(val) == 'string' and val:lower() or val
if val == nil then
return nil
elseif val == true
or val == 'yes'
or val == 'y'
or val == 'true'
or val == 't'
or val == 'on'
or tonumber(val) == 1
then
return true
elseif val == false
or val == 'no'
or val == 'n'
or val == 'false'
or val == 'f'
or val == 'off'
or tonumber(val) == 0
then
return false
else
return default
end
end
swdskn7svew8i9wuydn9uj5l3r2ghcs
Module:Transclusion count
828
3186
36347
2025-12-15T14:14:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.fetch(frame) local template = nil local return_value = nil -- Use demo parameter if it exists, otherswise use current template name local namespace = mw.title.getCurrentTitle().namespace if frame.args["demo"] and frame.args["demo"] ~= "" then template = mw.ustring.gsub(frame.args["demo"],"^[Tt]emplate:","") elseif namespace == 10 then -- Template namespace template = mw.title.getCurrentTitle().text elseif namesp...'
36347
Scribunto
text/plain
local p = {}
function p.fetch(frame)
local template = nil
local return_value = nil
-- Use demo parameter if it exists, otherswise use current template name
local namespace = mw.title.getCurrentTitle().namespace
if frame.args["demo"] and frame.args["demo"] ~= "" then
template = mw.ustring.gsub(frame.args["demo"],"^[Tt]emplate:","")
elseif namespace == 10 then -- Template namespace
template = mw.title.getCurrentTitle().text
elseif namespace == 828 then -- Module namespace
template = (mw.site.namespaces[828].name .. ":" .. mw.title.getCurrentTitle().text)
end
-- If in template or module namespace, look up count in /data
if template ~= nil then
namespace = mw.title.new(template, "Template").namespace
if namespace == 10 or namespace == 828 then
template = mw.ustring.gsub(template, "/doc$", "") -- strip /doc from end
template = mw.ustring.gsub(template, "/sandbox$", "") -- strip /sandbox from end
local index = mw.ustring.sub(mw.title.new(template).text,1,1)
local status, data = pcall(function ()
return(mw.loadData('Module:Transclusion_count/data/' .. (mw.ustring.find(index, "%a") and index or "other")))
end)
if status then
return_value = tonumber(data[mw.ustring.gsub(template, " ", "_")])
end
end
end
-- If database value doesn't exist, use value passed to template
if return_value == nil and frame.args[1] ~= nil then
local arg1=mw.ustring.match(frame.args[1], '[%d,]+')
if arg1 and arg1 ~= '' then
return_value = tonumber(frame:callParserFunction('formatnum', arg1, 'R'))
end
end
return return_value
end
-- Tabulate this data for [[Wikipedia:Database reports/Templates transcluded on the most pages]]
function p.tabulate(frame)
local list = {}
for i = 65, 91 do
local data = mw.loadData('Module:Transclusion count/data/' .. ((i == 91) and 'other' or string.char(i)))
for name, count in pairs(data) do
table.insert(list, {mw.title.new(name, "Template").fullText, count})
end
end
table.sort(list, function(a, b)
return (a[2] == b[2]) and (a[1] < b[1]) or (a[2] > b[2])
end)
local lang = mw.getContentLanguage();
for i = 1, #list do
list[i] = ('|-\n| %d || [[%s]] || %s\n'):format(i, list[i][1]:gsub('_', ' '), lang:formatNum(list[i][2]))
end
return table.concat(list)
end
return p
008uk8mly4azus83p91srb45zrvm6fn
Module:Distinguish
828
3187
36348
2025-12-15T14:17:32Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local mHatnote = require('Module:Hatnote') local mHatlist = require('Module:Hatnote list') local mArguments --initialize lazily local mTableTools --initialize lazily local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local p = {} function p.distinguish(frame) mArguments = require('Module:Arguments') mTableTools = require('Module:TableTools') local args = mTableTools.compressSparseArray(mArguments.getArgs(frame))...'
36348
Scribunto
text/plain
local mHatnote = require('Module:Hatnote')
local mHatlist = require('Module:Hatnote list')
local mArguments --initialize lazily
local mTableTools --initialize lazily
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local p = {}
function p.distinguish(frame)
mArguments = require('Module:Arguments')
mTableTools = require('Module:TableTools')
local args = mTableTools.compressSparseArray(mArguments.getArgs(frame))
return p._distinguish(args)
end
function p._distinguish(args)
checkType("_distinguish", 1, args, 'table')
if #args == 0 then return '' end
local text = string.format(
'Να μη συγχέεται με %s.',
mHatlist.orList(args, true)
)
return mHatnote._hatnote(text)
end
return p
ilgov61coykixml4j5wtaoxttsfut82
Module:Hatnote
828
3188
36349
2025-12-15T14:18:29Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-------------------------------------------------------------------------------- -- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the {{hatnote}} and {{format link}} meta-templates and includes -- -- helper functions for other Lua hatnote modul...'
36349
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Module:Hatnote --
-- --
-- This module produces hatnote links and links to related articles. It --
-- implements the {{hatnote}} and {{format link}} meta-templates and includes --
-- helper functions for other Lua hatnote modules. --
--------------------------------------------------------------------------------
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local mArguments -- lazily initialise [[Module:Arguments]]
local yesno -- lazily initialise [[Module:Yesno]]
local p = {}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function getArgs(frame)
-- Fetches the arguments from the parent frame. Whitespace is trimmed and
-- blanks are removed.
mArguments = require('Module:Arguments')
return mArguments.getArgs(frame, {parentOnly = true})
end
local function removeInitialColon(s)
-- Removes the initial colon from a string, if present.
return s:match('^:?(.*)')
end
function p.findNamespaceId(link, removeColon)
-- Finds the namespace id (namespace number) of a link or a pagename. This
-- function will not work if the link is enclosed in double brackets. Colons
-- are trimmed from the start of the link by default. To skip colon
-- trimming, set the removeColon parameter to false.
checkType('findNamespaceId', 1, link, 'string')
checkType('findNamespaceId', 2, removeColon, 'boolean', true)
if removeColon ~= false then
link = removeInitialColon(link)
end
local namespace = link:match('^(.-):')
if namespace then
local nsTable = mw.site.namespaces[namespace]
if nsTable then
return nsTable.id
end
end
return 0
end
function p.formatPages(...)
-- Formats a list of pages using formatLink and returns it as an array. Nil
-- values are not allowed.
local pages = {...}
local ret = {}
for i, page in ipairs(pages) do
ret[i] = p._formatLink(page)
end
return ret
end
function p.formatPageTables(...)
-- Takes a list of page/display tables and returns it as a list of
-- formatted links. Nil values are not allowed.
local pages = {...}
local links = {}
for i, t in ipairs(pages) do
checkType('formatPageTables', i, t, 'table')
local link = t[1]
local display = t[2]
links[i] = p._formatLink(link, display)
end
return links
end
function p.makeWikitextError(msg, helpLink, addTrackingCategory, title)
-- Formats an error message to be returned to wikitext. If
-- addTrackingCategory is not false after being returned from
-- [[Module:Yesno]], and if we are not on a talk page, a tracking category
-- is added.
checkType('makeWikitextError', 1, msg, 'string')
checkType('makeWikitextError', 2, helpLink, 'string', true)
yesno = require('Module:Yesno')
title = title or mw.title.getCurrentTitle()
-- Make the help link text.
local helpText
if helpLink then
helpText = ' ([[' .. helpLink .. '|βοήθεια]])'
else
helpText = ''
end
-- Make the category text.
local category
if not title.isTalkPage and yesno(addTrackingCategory) ~= false then
category = 'Πρότυπα hatnote με σφάλματα'
category = string.format(
'[[%s:%s]]',
mw.site.namespaces[14].name,
category
)
else
category = ''
end
return string.format(
'<strong class="error">Σφάλμα: %s%s.</strong>%s',
msg,
helpText,
category
)
end
function p.disambiguate(page, disambiguator)
-- Formats a page title with a disambiguation parenthetical,
-- i.e. "Example" → "Example (disambiguation)".
checkType('disambiguate', 1, page, 'string')
checkType('disambiguate', 2, disambiguator, 'string', true)
disambiguator = disambiguator or 'disambiguation'
return string.format('%s (%s)', page, disambiguator)
end
--------------------------------------------------------------------------------
-- Format link
--
-- Makes a wikilink from the given link and display values. Links are escaped
-- with colons if necessary, and links to sections are detected and displayed
-- with " § " as a separator rather than the standard MediaWiki "#". Used in
-- the {{format hatnote link}} template.
--------------------------------------------------------------------------------
function p.formatLink(frame)
local args = getArgs(frame)
local link = args[1]
local display = args[2]
if not link then
return p.makeWikitextError(
'δεν ορίστηκε σύνδεσμος',
'Template:Format hatnote link#Errors',
args.category
)
end
return p._formatLink(link, display)
end
function p._formatLink(link, display)
checkType('_formatLink', 1, link, 'string')
checkType('_formatLink', 2, display, 'string', true)
-- Remove the initial colon for links where it was specified manually.
link = removeInitialColon(link)
-- Find whether a faux display value has been added with the {{!}} magic
-- word.
if not display then
local prePipe, postPipe = link:match('^(.-)|(.*)$')
link = prePipe or link
display = postPipe
end
-- Find the display value.
if not display then
local page, section = link:match('^(.-)#(.*)$')
if page then
display = page .. ' § ' .. section
end
end
-- Assemble the link.
if display then
return string.format(
'[[:%s|%s]]',
string.gsub(link, '|(.*)$', ''), --display overwrites manual piping
display
)
else
return string.format('[[:%s]]', link)
end
end
--------------------------------------------------------------------------------
-- Hatnote
--
-- Produces standard hatnote text. Implements the {{hatnote}} template.
--------------------------------------------------------------------------------
function p.hatnote(frame)
local args = getArgs(frame)
local s = args[1]
local options = {}
if not s then
return p.makeWikitextError(
'δεν ορίστηκε κείμενο',
'Πρότυπο:Hatnote#Σφάλματα',
args.category
)
end
options.extraclasses = args.extraclasses
options.selfref = args.selfref
return p._hatnote(s, options)
end
function p._hatnote(s, options)
checkType('_hatnote', 1, s, 'string')
checkType('_hatnote', 2, options, 'table', true)
options = options or {}
local classes = {'hatnote'}
local extraclasses = options.extraclasses
local selfref = options.selfref
if type(extraclasses) == 'string' then
classes[#classes + 1] = extraclasses
end
if selfref then
classes[#classes + 1] = 'selfref'
end
return string.format(
'<div role="note" class="%s">%s</div>',
table.concat(classes, ' '),
s
)
end
return p
r7nn2ig1gizg6biv3te9y2t653jqmz9
Module:Hatnote list
828
3189
36350
2025-12-15T14:19:20Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-------------------------------------------------------------------------------- -- Module:Hatnote list -- -- -- -- This module produces and formats lists for use in hatnotes. In particular, -- -- it implements the for-see list, i.e. lists of "For X, see Y" statements, -- -- as used in {{about}}, {{redirect}}, and thei...'
36350
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Module:Hatnote list --
-- --
-- This module produces and formats lists for use in hatnotes. In particular, --
-- it implements the for-see list, i.e. lists of "For X, see Y" statements, --
-- as used in {{about}}, {{redirect}}, and their variants. Also introduced --
-- are andList & orList helpers for formatting lists with those conjunctions. --
--------------------------------------------------------------------------------
local mArguments --initialize lazily
local mHatnote = require('Module:Hatnote')
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local p = {}
--------------------------------------------------------------------------------
-- List stringification helper functions
--
-- These functions are used for stringifying lists, usually page lists inside
-- the "Y" portion of "For X, see Y" for-see items.
--------------------------------------------------------------------------------
--default options table used across the list stringification functions
local stringifyListDefaultOptions = {
conjunction = "και",
separator = ",",
altSeparator = "·",
space = " ",
formatted = false
}
-- Stringifies a list generically; probably shouldn't be used directly
function stringifyList(list, options)
-- Type-checks, defaults, and a shortcut
checkType("stringifyList", 1, list, "table")
if #list == 0 then return nil end
checkType("stringifyList", 2, options, "table", true)
options = options or {}
for k, v in pairs(stringifyListDefaultOptions) do
if options[k] == nil then options[k] = v end
end
local s = options.space
-- Format the list if requested
if options.formatted then list = mHatnote.formatPages(unpack(list)) end
-- Set the separator; if any item contains it, use the alternate separator
local separator = options.separator
--searches display text only
function searchDisp(t, f)
return string.find(string.sub(t, (string.find(t, '|') or 0) + 1), f)
end
for k, v in pairs(list) do
if searchDisp(v, separator) then
separator = options.altSeparator
break
end
end
-- Set the conjunction, apply Oxford comma, and force a comma if #1 has "§"
local conjunction = s .. options.conjunction .. s
if #list == 2 and searchDisp(list[1], "§") or #list > 2 then
conjunction = separator .. conjunction
end
-- Return the formatted string
return mw.text.listToText(list, separator .. s, conjunction)
end
--DRY function
function conjList (conj, list, fmt)
return stringifyList(list, {conjunction = conj, formatted = fmt})
end
-- Stringifies lists with "and" or "or"
function p.andList (...) return conjList("και", ...) end
function p.orList (...) return conjList("ή", ...) end
--------------------------------------------------------------------------------
-- For see
--
-- Makes a "For X, see [[Y]]." list from raw parameters. Intended for the
-- {{about}} and {{redirect}} templates and their variants.
--------------------------------------------------------------------------------
--default options table used across the forSee family of functions
local forSeeDefaultOptions = {
andKeyword = 'και',
title = mw.title.getCurrentTitle().text,
otherText = 'άλλες χρήσεις',
forSeeForm = 'Για %s, δείτε %s.'
}
--Collapses duplicate punctuation
function punctuationCollapse (text)
local replacements = {
["%.%.$"] = ".",
["%?%.$"] = "?",
["%!%.$"] = "!",
["%.%]%]%.$"] = ".]]",
["%?%]%]%.$"] = "?]]",
["%!%]%]%.$"] = "!]]"
}
for k, v in pairs(replacements) do text = string.gsub(text, k, v) end
return text
end
-- Structures arguments into a table for stringification, & options
function p.forSeeArgsToTable (args, from, options)
-- Type-checks and defaults
checkType("forSeeArgsToTable", 1, args, 'table')
checkType("forSeeArgsToTable", 2, from, 'number', true)
from = from or 1
checkType("forSeeArgsToTable", 3, options, 'table', true)
options = options or {}
for k, v in pairs(forSeeDefaultOptions) do
if options[k] == nil then options[k] = v end
end
-- maxArg's gotten manually because getArgs() and table.maxn aren't friends
local maxArg = 0
for k, v in pairs(args) do
if type(k) == 'number' and k > maxArg then maxArg = k end
end
-- Structure the data out from the parameter list:
-- * forTable is the wrapper table, with forRow rows
-- * Rows are tables of a "use" string & a "pages" table of pagename strings
-- * Blanks are left empty for defaulting elsewhere, but can terminate list
local forTable = {}
local i = from
local terminated = false
-- Loop to generate rows
repeat
-- New empty row
local forRow = {}
-- On blank use, assume list's ended & break at end of this loop
forRow.use = args[i]
if not args[i] then terminated = true end
-- New empty list of pages
forRow.pages = {}
-- Insert first pages item if present
table.insert(forRow.pages, args[i + 1])
-- If the param after next is "and", do inner loop to collect params
-- until the "and"'s stop. Blanks are ignored: "1|and||and|3" → {1, 3}
while args[i + 2] == options.andKeyword do
if args[i + 3] then
table.insert(forRow.pages, args[i + 3])
end
-- Increment to next "and"
i = i + 2
end
-- Increment to next use
i = i + 2
-- Append the row
table.insert(forTable, forRow)
until terminated or i > maxArg
return forTable
end
-- Stringifies a table as formatted by forSeeArgsToTable
function p.forSeeTableToString (forSeeTable, options)
-- Type-checks and defaults
checkType("forSeeTableToString", 1, forSeeTable, "table")
checkType("forSeeTableToString", 2, options, "table", true)
options = options or {}
for k, v in pairs(forSeeDefaultOptions) do
if options[k] == nil then options[k] = v end
end
-- Stringify each for-see item into a list
local strList = {}
for k, v in pairs(forSeeTable) do
local useStr = v.use or options.otherText
local pagesStr = p.andList(v.pages, true) or
mHatnote._formatLink(mHatnote.disambiguate(options.title))
local forSeeStr = string.format(options.forSeeForm, useStr, pagesStr)
forSeeStr = punctuationCollapse(forSeeStr)
table.insert(strList, forSeeStr)
end
-- Return the concatenated list
return table.concat(strList, ' ')
end
-- Produces a "For X, see [[Y]]" string from arguments. Expects index gaps
-- but not blank/whitespace values. Ignores named args and args < "from".
function p._forSee (args, from, options)
local forSeeTable = p.forSeeArgsToTable(args, from, options)
return p.forSeeTableToString(forSeeTable, options)
end
-- As _forSee, but uses the frame.
function p.forSee (frame, from, options)
mArguments = require('Module:Arguments')
return p._forSee(mArguments.getArgs(frame), from, options)
end
return p
ke817u2gov62wa1yvoxusudghjqbu7h
Module:High-use
828
3190
36351
2025-12-15T14:20:25Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} -- _fetch looks at the "demo" argument. local _fetch = require('Module:Transclusion_count').fetch local yesno = require('Module:Yesno') function p.num(frame, count) if count == nil then if yesno(frame.args['fetch']) == false then if (frame.args[1] or '') ~= '' then count = tonumber(frame.args[1]) end else count = _fetch(frame) end end -- Build output string local return_value = "" if count == nil then if frame.ar...'
36351
Scribunto
text/plain
local p = {}
-- _fetch looks at the "demo" argument.
local _fetch = require('Module:Transclusion_count').fetch
local yesno = require('Module:Yesno')
function p.num(frame, count)
if count == nil then
if yesno(frame.args['fetch']) == false then
if (frame.args[1] or '') ~= '' then count = tonumber(frame.args[1]) end
else
count = _fetch(frame)
end
end
-- Build output string
local return_value = ""
if count == nil then
if frame.args[1] == "risk" then
return_value = "πάρα πολλές"
else
return_value = "πολλές"
end
else
-- Use 2 significant figures for smaller numbers and 3 for larger ones
local sigfig = 2
if count >= 100000 then
sigfig = 3
end
-- Prepare to round to appropriate number of sigfigs
local f = math.floor(math.log10(count)) - sigfig + 1
-- Round and insert "approximately" or "+" when appropriate
if (frame.args[2] == "yes") or (mw.ustring.sub(frame.args[1],-1) == "+") then
-- Round down
return_value = string.format("%s+", mw.getContentLanguage():formatNum(math.floor( (count / 10^(f)) ) * (10^(f))) )
else
-- Round to nearest
return_value = string.format("περίπου %s", mw.getContentLanguage():formatNum(math.floor( (count / 10^(f)) + 0.5) * (10^(f))) )
end
-- Insert percentage of pages if that is likely to be >= 1% and when |no-percent= not set to yes
if count and count > 250000 and not yesno (frame:getParent().args['no-percent']) then
local percent = math.floor( ( (count/frame:callParserFunction('NUMBEROFPAGES', 'R') ) * 100) + 0.5)
if percent >= 1 then
return_value = string.format("%s σελίδες, ή περίπου %s%% από όλες στην Ελληνική Wikipedia", return_value, percent)
end
end
end
return return_value
end
-- Actions if there is a large (greater than or equal to 100,000) transclusion count
function p.risk(frame)
local return_value = ""
if frame.args[1] == "risk" then
return_value = "risk"
else
local count = _fetch(frame)
if count and count >= 100000 then return_value = "risk" end
end
return return_value
end
function p.text(frame, count)
-- Only show the information about how Αυτό template gets updated if someone
-- is actually editing the page and maybe trying to update the count.
local bot_text = (frame:preprocess("{{REVISIONID}}") == "") and "\n\n----\n'''Μήνυμα προεπισκόπησης''': Το Transclusion count ενημερώθηκε αυτόματα." or ''
if count == nil then
if yesno(frame.args['fetch']) == false then
if (frame.args[1] or '') ~= '' then count = tonumber(frame.args[1]) end
else
count = _fetch(frame)
end
end
local title = mw.title.getCurrentTitle()
if title.subpageText == "doc" or title.subpageText == "πρόχειρο" then
title = title.basePageTitle
end
local systemMessages = frame.args['system']
if frame.args['system'] == '' then
systemMessages = nil
end
-- This retrieves the project URL automatically to simplify localiation.
local templateCount = ('σε [https://linkcount.toolforge.org/index.php?project=%s&page=%s %s σελίδες]'):format(
mw.title.getCurrentTitle():fullUrl():gsub('//(.-)/.*', '%1'),
mw.uri.encode(title.fullText), p.num(frame, count))
local used_on_text = "'''Αυτό το " .. (mw.title.getCurrentTitle().namespace == 828 and "Lua module" or "πρότυπο ") .. 'χρησιμοποιείται ';
if systemMessages then
used_on_text = used_on_text .. systemMessages ..
((count and count > 2000) and ("''', και " .. templateCount) or ("'''"))
else
used_on_text = used_on_text .. templateCount .. "'''"
end
local sandbox_text = (" [[%s/πρόχειρο|/πρόχειρο]] ή [[%s/testcases|/testcases]] του προτύπου, ή στις προσωπικες σας υποσελίδες χρήστη. "):format(
(mw.title.getCurrentTitle().namespace == 828 and "module" or "template"),
title.fullText, title.fullText,
mw.title.getCurrentTitle().namespace == 828 and "Module:Sandbox|module sandbox" or ""
)
local infoArg = frame.args["info"] ~= "" and frame.args["info"]
if (systemMessages or frame.args[1] == "risk" or (count and count >= 100000) ) then
local info = systemMessages and '.<br/>Επεξεργασίες σε αυτό το πρότυπο μπορούν να προκαλέσουν μεγάλες αλλαγές στη διεπαφή χρήστη της Βικιπαίδειας.' or '.'
if infoArg then
info = info .. "<br />" .. infoArg
end
sandbox_text = info .. '<br /> Για να αποφευχθεί αναστάτωση' ..
(count and count >= 100000 and ' και server load' or '') ..
', οποιεσδήποτε αλλαγές πρέπει να δοκιμάζονται σε ' .. sandbox_text ..
'Οι δοκιμασμένες αλλαγές μπορούν να προστεθούν στη σελίδα με μία επεξεργασία. '
else
sandbox_text = (infoArg and ('.<br />' .. infoArg .. ' Α') or ', οπότε α') ..
'λλαγές σε αυτό θα γίνουν ευρέως αντιληπτές. Παρακαλούμε δοκιμάστε οποιεσδήποτε αλλαγές στις υποσελίδες ' .. sandbox_text
end
local discussion_text = systemMessages and 'Παρακαλούμε φροντίστε να συζητήσετε τις αλλαγές ' or 'Παρακαλούμε φροντίστε να συζητήσετε τις αλλαγές '
if frame.args["2"] and frame.args["2"] ~= "" and frame.args["2"] ~= "yes" then
discussion_text = string.format("%sat [[%s]]", discussion_text, frame.args["2"])
else
discussion_text = string.format("%s στη [[%s|σελίδα συζήτησης]]", discussion_text, title.talkPageTitle.fullText )
end
return used_on_text .. sandbox_text .. discussion_text .. " πριν τις εφαρμόσετε." .. bot_text
end
function p.main(frame)
local count = nil
if yesno(frame.args['fetch']) == false then
if (frame.args[1] or '') ~= '' then count = tonumber(frame.args[1]) end
else
count = _fetch(frame)
end
local image = "[[File:Ambox warning yellow.svg|40px|alt=Warning|link=]]"
local type_param = "style"
local epilogue = ''
if frame.args['system'] and frame.args['system'] ~= '' then
image = "[[File:Ambox important.svg|40px|alt=Warning|link=]]"
type_param = "content"
local nocat = frame:getParent().args['nocat'] or frame.args['nocat']
local categorise = (nocat == '' or not yesno(nocat))
if categorise then
epilogue = frame:preprocess('{{Sandbox other||{{#switch:{{#invoke:Effective protection level|{{#switch:{{NAMESPACE}}|File=upload|#default=edit}}|{{FULLPAGENAME}}}}|sysop|templateeditor|interfaceadmin=|#default=[[Category:Pages used in system messages needing protection]]}}}}')
end
elseif (frame.args[1] == "risk" or (count and count >= 100000)) then
image = "[[File:Ambox warning orange.svg|40px|alt=Warning|link=]]"
type_param = "content"
end
if frame.args["form"] == "editnotice" then
return frame:expandTemplate{
title = 'editnotice',
args = {
["image"] = image,
["text"] = p.text(frame, count),
["expiry"] = (frame.args["expiry"] or "")
}
} .. epilogue
else
return require('Module:Message box').main('ombox', {
type = type_param,
image = image,
text = p.text(frame, count),
expiry = (frame.args["expiry"] or "")
}) .. epilogue
end
end
return p
ppr55cn1pwlbo1tkt5l20s4egf7krbb
Module:List
828
3191
36352
2025-12-15T14:21:29Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module outputs different kinds of lists. At the moment, bulleted, -- unbulleted, horizontal, ordered, and horizontal ordered lists are supported. local libUtil = require('libraryUtil') local checkType = libUtil.checkType local mTableTools = require('Module:TableTools') local p = {} local listTypes = { ['bulleted'] = true, ['unbulleted'] = true, ['horizontal'] = true, ['ordered'] = true, ['horizontal_ordered'] = true } function p.ma...'
36352
Scribunto
text/plain
-- This module outputs different kinds of lists. At the moment, bulleted,
-- unbulleted, horizontal, ordered, and horizontal ordered lists are supported.
local libUtil = require('libraryUtil')
local checkType = libUtil.checkType
local mTableTools = require('Module:TableTools')
local p = {}
local listTypes = {
['bulleted'] = true,
['unbulleted'] = true,
['horizontal'] = true,
['ordered'] = true,
['horizontal_ordered'] = true
}
function p.makeListData(listType, args)
-- Constructs a data table to be passed to p.renderList.
local data = {}
-- Classes
data.classes = {}
if listType == 'horizontal' or listType == 'horizontal_ordered' then
table.insert(data.classes, 'hlist')
elseif listType == 'unbulleted' then
table.insert(data.classes, 'plainlist')
end
table.insert(data.classes, args.class)
-- Main div style
data.style = args.style
-- Indent for horizontal lists
if listType == 'horizontal' or listType == 'horizontal_ordered' then
local indent = tonumber(args.indent)
indent = indent and indent * 1.6 or 0
if indent > 0 then
data.marginLeft = indent .. 'em'
end
end
-- List style types for ordered lists
-- This could be "1, 2, 3", "a, b, c", or a number of others. The list style
-- type is either set by the "type" attribute or the "list-style-type" CSS
-- property.
if listType == 'ordered' or listType == 'horizontal_ordered' then
data.listStyleType = args.list_style_type or args['list-style-type']
data.type = args['type']
-- Detect invalid type attributes and attempt to convert them to
-- list-style-type CSS properties.
if data.type
and not data.listStyleType
and not tostring(data.type):find('^%s*[1AaIi]%s*$')
then
data.listStyleType = data.type
data.type = nil
end
end
-- List tag type
if listType == 'ordered' or listType == 'horizontal_ordered' then
data.listTag = 'ol'
else
data.listTag = 'ul'
end
-- Start number for ordered lists
data.start = args.start
if listType == 'horizontal_ordered' then
-- Apply fix to get start numbers working with horizontal ordered lists.
local startNum = tonumber(data.start)
if startNum then
data.counterReset = 'listitem ' .. tostring(startNum - 1)
end
end
-- List style
-- ul_style and ol_style are included for backwards compatibility. No
-- distinction is made for ordered or unordered lists.
data.listStyle = args.list_style
-- List items
-- li_style is included for backwards compatibility. item_style was included
-- to be easier to understand for non-coders.
data.itemStyle = args.item_style or args.li_style
data.items = {}
for i, num in ipairs(mTableTools.numKeys(args)) do
local item = {}
item.content = args[num]
item.style = args['item' .. tostring(num) .. '_style']
or args['item_style' .. tostring(num)]
item.value = args['item' .. tostring(num) .. '_value']
or args['item_value' .. tostring(num)]
table.insert(data.items, item)
end
return data
end
function p.renderList(data)
-- Renders the list HTML.
-- Return the blank string if there are no list items.
if type(data.items) ~= 'table' or #data.items < 1 then
return ''
end
-- Render the main div tag.
local root = mw.html.create('div')
for i, class in ipairs(data.classes or {}) do
root:addClass(class)
end
root:css{['margin-left'] = data.marginLeft}
if data.style then
root:cssText(data.style)
end
-- Render the list tag.
local list = root:tag(data.listTag or 'ul')
list
:attr{start = data.start, type = data.type}
:css{
['counter-reset'] = data.counterReset,
['list-style-type'] = data.listStyleType
}
if data.listStyle then
list:cssText(data.listStyle)
end
-- Render the list items
for i, t in ipairs(data.items or {}) do
local item = list:tag('li')
if data.itemStyle then
item:cssText(data.itemStyle)
end
if t.style then
item:cssText(t.style)
end
item
:attr{value = t.value}
:wikitext(t.content)
end
return tostring(root)
end
function p.renderTrackingCategories(args)
local isDeprecated = false -- Tracks deprecated parameters.
for k, v in pairs(args) do
k = tostring(k)
if k:find('^item_style%d+$') or k:find('^item_value%d+$') then
isDeprecated = true
break
end
end
local ret = ''
if isDeprecated then
ret = ret .. '[[Category:List templates with deprecated parameters]]'
end
return ret
end
function p.makeList(listType, args)
if not listType or not listTypes[listType] then
error(string.format(
"bad argument #1 to 'makeList' ('%s' is not a valid list type)",
tostring(listType)
), 2)
end
checkType('makeList', 2, args, 'table')
local data = p.makeListData(listType, args)
local list = p.renderList(data)
local trackingCategories = p.renderTrackingCategories(args)
return list .. trackingCategories
end
for listType in pairs(listTypes) do
p[listType] = function (frame)
local mArguments = require('Module:Arguments')
local origArgs = mArguments.getArgs(frame)
-- Copy all the arguments to a new table, for faster indexing.
local args = {}
for k, v in pairs(origArgs) do
args[k] = v
end
return p.makeList(listType, args)
end
end
return p
gys728jf7k7k0tacxur7d4u3ykwd6zh
Πρότυπον:Tag
10
3192
36353
2025-12-15T14:22:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<code class="{{#ifeq:{{{wrap|}}}|yes|wrap|nowrap}}" style="{{#ifeq:{{{style|}}}|plain|border:none;background:transparent;|{{{style|}}}}}"><!-- Opening tag -->{{#switch:{{{2|pair}}} |c|close = |s|single |o|open |p|pair = <{{{1|tag}}}{{#if:{{{params|}}}| {{{params}}}}} }}<!-- Content between tags -->{{#switch:{{{2|pair}}} |c|close = {{{content|}}} |s|single =  /> |o|open = >{{{content|}}} |p|pair = {{#ifeq:{{{1...'
36353
wikitext
text/x-wiki
<code class="{{#ifeq:{{{wrap|}}}|yes|wrap|nowrap}}" style="{{#ifeq:{{{style|}}}|plain|border:none;background:transparent;|{{{style|}}}}}"><!--
Opening tag
-->{{#switch:{{{2|pair}}}
|c|close =
|s|single
|o|open
|p|pair = <{{{1|tag}}}{{#if:{{{params|}}}| {{{params}}}}}
}}<!--
Content between tags
-->{{#switch:{{{2|pair}}}
|c|close = {{{content|}}}
|s|single =  />
|o|open = >{{{content|}}}
|p|pair = {{#ifeq:{{{1|tag}}}|!--||>}}{{{content|...}}}
}}<!--
Closing tag
-->{{#switch:{{{2|pair}}}
|s|single
|o|open =
|c|close
|p|pair = {{#ifeq:{{{1|tag}}}|!--|-->|</{{{1|tag}}}>}}
}}<!--
--></code><noinclude>
{{Documentation}}
</noinclude>
5j8i0ksncjr7xuajus50xhkswcyir7j
Πρότυπον:Pre2
10
3193
36354
2025-12-15T14:23:49Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<pre<includeonly></includeonly> format="wikitext" style="{{#ifeq:{{{1}}}|scroll|overflow:auto; white-space:pre; width:auto;{{{style|}}}">{{#switch:{{{2}}}|nowiki|nw={{#tag:nowiki|{{{3}}}}}|{{{2}}}}}|white-space:-moz-pre-wrap; white-space:-pre-wrap; white-space:-o-pre-wrap; white-space:pre-wrap; word-wrap:break-word;{{{style|}}}">{{#switch:{{{1}}}|nowiki|nw={{#tag:nowiki|{{{2}}}}}|{{{1}}}}} }}</pre><noinclude> {{Documentation}} <!-- PLEASE ADD CATEG...'
36354
wikitext
text/x-wiki
<pre<includeonly></includeonly> format="wikitext" style="{{#ifeq:{{{1}}}|scroll|overflow:auto; white-space:pre; width:auto;{{{style|}}}">{{#switch:{{{2}}}|nowiki|nw={{#tag:nowiki|{{{3}}}}}|{{{2}}}}}|white-space:-moz-pre-wrap; white-space:-pre-wrap; white-space:-o-pre-wrap; white-space:pre-wrap; word-wrap:break-word;{{{style|}}}">{{#switch:{{{1}}}|nowiki|nw={{#tag:nowiki|{{{2}}}}}|{{{1}}}}} }}</pre><noinclude>
{{Documentation}}
<!-- PLEASE ADD CATEGORIES AND INTERWIKIS TO THE /doc SUBPAGE, THANKS -->
</noinclude>
ff87goq5h62irp4xyvimw3v08gmtgce
Πρότυπον:Para
10
3194
36355
2025-12-15T14:24:34Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<code class="nowrap" {{SAFESUBST:<noinclude />#if:{{{plain|}}}|style="border:none;background-color:inherit;color:inherit;"}}>|{{SAFESUBST:<noinclude />#if:{{{1|}}}|{{{1}}}=}}{{{2|}}}</code><noinclude> {{Documentation}} <!--Categories and interwikis go near the bottom of the /doc subpage.--> </noinclude>'
36355
wikitext
text/x-wiki
<code class="nowrap" {{SAFESUBST:<noinclude />#if:{{{plain|}}}|style="border:none;background-color:inherit;color:inherit;"}}>|{{SAFESUBST:<noinclude />#if:{{{1|}}}|{{{1}}}=}}{{{2|}}}</code><noinclude>
{{Documentation}}
<!--Categories and interwikis go near the bottom of the /doc subpage.-->
</noinclude>
fzhirwlsi2n3ak3qun5tviym3yisuda
Πρότυπον:Tlx
10
3195
36356
2025-12-15T14:25:32Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly><!-- --><code><!-- --><nowiki>{{</nowiki>{{#if:{{{subst|}}} |[[:en:Help:Substitution|subst]]:}}<!-- -->[[{{{LANG|}}}{{{SISTER|}}}{{ns:Template}}:{{{1|}}}|{{{1|}}}]]<!-- -->{{#if:{{{2|}}} ||{{{2}}}}}<!-- -->{{#if:{{{3|}}} ||{{{3}}}}}<!-- -->{{#if:{{{4|}}} ||{{{4}}}}}<!-- -->{{#if:{{{5...'
36356
wikitext
text/x-wiki
<includeonly><!--
--><code><!--
--><nowiki>{{</nowiki>{{#if:{{{subst|}}} |[[:en:Help:Substitution|subst]]:}}<!--
-->[[{{{LANG|}}}{{{SISTER|}}}{{ns:Template}}:{{{1|}}}|{{{1|}}}]]<!--
-->{{#if:{{{2|}}} ||{{{2}}}}}<!--
-->{{#if:{{{3|}}} ||{{{3}}}}}<!--
-->{{#if:{{{4|}}} ||{{{4}}}}}<!--
-->{{#if:{{{5|}}} ||{{{5}}}}}<!--
-->{{#if:{{{6|}}} ||{{{6}}}}}<!--
-->{{#if:{{{7|}}} ||{{{7}}}}}<!--
-->{{#if:{{{8|}}} ||{{{8}}}}}<!--
-->{{#if:{{{9|}}} ||{{{9}}}}}<!--
-->{{#if:{{{10|}}} ||{{{10}}}}}<!--
-->{{#if:{{{11|}}} ||{{{11}}}}}<!--
-->{{#if:{{{12|}}} ||''…''}}<!--
--><nowiki>}}</nowiki><!--
--></code><!--
--></includeonly><noinclude>
{{Documentation}}
</noinclude>
8gnp8q3ft07xsh5jpwayr878721q0kw
Module:Lua banner
828
3196
36357
2025-12-15T14:26:24Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module implements the {{lua}} template. local yesno = require('Module:Yesno') local mList = require('Module:List') local mTableTools = require('Module:TableTools') local mMessageBox = require('Module:Message box') local p = {} function p.main(frame) local origArgs = frame:getParent().args local args = {} for k, v in pairs(origArgs) do v = v:match('^%s*(.-)%s*$') if v ~= '' then args[k] = v end end return p._main(args) end...'
36357
Scribunto
text/plain
-- This module implements the {{lua}} template.
local yesno = require('Module:Yesno')
local mList = require('Module:List')
local mTableTools = require('Module:TableTools')
local mMessageBox = require('Module:Message box')
local p = {}
function p.main(frame)
local origArgs = frame:getParent().args
local args = {}
for k, v in pairs(origArgs) do
v = v:match('^%s*(.-)%s*$')
if v ~= '' then
args[k] = v
end
end
return p._main(args)
end
function p._main(args)
local modules = mTableTools.compressSparseArray(args)
local box = p.renderBox(modules)
local trackingCategories = p.renderTrackingCategories(args, modules)
return box .. trackingCategories
end
function p.renderBox(modules)
local boxArgs = {}
if #modules < 1 then
boxArgs.text = '<strong class="error">Σφάλμα: δεν ορίστηκαν modules</strong>'
else
local moduleLinks = {}
for i, module in ipairs(modules) do
moduleLinks[i] = string.format('[[:%s]]', module)
end
local moduleList = mList.makeList('bulleted', moduleLinks)
boxArgs.text = 'Χρησιμοποιεί [[Βικιπαίδεια:Lua|Lua]]:\n' .. moduleList
end
boxArgs.type = 'notice'
boxArgs.small = true
boxArgs.image = '[[File:Lua-logo-nolabel.svg|30px|alt=Lua λογότυπο|link=Βικιπαίδεια:Lua]]'
return mMessageBox.main('mbox', boxArgs)
end
function p.renderTrackingCategories(args, modules, titleObj)
if yesno(args.nocat) then
return ''
end
local cats = {}
-- Error category
if #modules < 1 then
cats[#cats + 1] = 'Πρότυπα Lua με σφάλματα'
end
-- Lua templates category
titleObj = titleObj or mw.title.getCurrentTitle()
local subpageBlacklist = {
doc = true,
sandbox = true,
sandbox2 = true,
testcases = true
}
if titleObj.namespace == 10
and not subpageBlacklist[titleObj.subpageText]
then
local category = args.category
if not category then
local categories = {
['Module:String'] = 'Πρότυπα βασισμένα στο Lua String',
['Module:Math'] = 'Πρότυπα βασισμένα στο Math Lua module',
['Module:BaseConvert'] = 'Πρότυπα βασισμένα στο BaseConvert Lua module',
['Module:Citation'] = 'Πρότυπα τεκμηρίωσης βασισμένα στη Lua'
}
categories['Module:Citation/CS1'] = categories['Module:Citation']
category = modules[1] and categories[modules[1]]
category = category or 'Πρότυπα βασισμένα στη Lua'
end
cats[#cats + 1] = category
end
for i, cat in ipairs(cats) do
cats[i] = string.format('[[Category:%s]]', cat)
end
return table.concat(cats)
end
return p
q9brunodfgxujullq005gdlnrge715b
Module:Message box
828
3197
36358
2025-12-15T14:27:15Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require('strict') local getArgs local yesno = require('Module:Yesno') local lang = mw.language.getContentLanguage() local CONFIG_MODULE = 'Module:Message box/configuration' local DEMOSPACES = {talk = 'tmbox', image = 'imbox', file = 'imbox', category = 'cmbox', article = 'ambox', main = 'ambox'} -------------------------------------------------------------------------------- -- Helper functions ----------------------------------------------------...'
36358
Scribunto
text/plain
require('strict')
local getArgs
local yesno = require('Module:Yesno')
local lang = mw.language.getContentLanguage()
local CONFIG_MODULE = 'Module:Message box/configuration'
local DEMOSPACES = {talk = 'tmbox', image = 'imbox', file = 'imbox', category = 'cmbox', article = 'ambox', main = 'ambox'}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function getTitleObject(...)
-- Get the title object, passing the function through pcall
-- in case we are over the expensive function count limit.
local success, title = pcall(mw.title.new, ...)
if success then
return title
end
end
local function union(t1, t2)
-- Returns the union of two arrays.
local vals = {}
for i, v in ipairs(t1) do
vals[v] = true
end
for i, v in ipairs(t2) do
vals[v] = true
end
local ret = {}
for k in pairs(vals) do
table.insert(ret, k)
end
table.sort(ret)
return ret
end
local function getArgNums(args, prefix)
local nums = {}
for k, v in pairs(args) do
local num = mw.ustring.match(tostring(k), '^' .. prefix .. '([1-9]%d*)$')
if num then
table.insert(nums, tonumber(num))
end
end
table.sort(nums)
return nums
end
--------------------------------------------------------------------------------
-- Box class definition
--------------------------------------------------------------------------------
local MessageBox = {}
MessageBox.__index = MessageBox
function MessageBox.new(boxType, args, cfg)
args = args or {}
local obj = {}
-- Set the title object and the namespace.
obj.title = getTitleObject(args.page) or mw.title.getCurrentTitle()
-- Set the config for our box type.
obj.cfg = cfg[boxType]
if not obj.cfg then
local ns = obj.title.namespace
-- boxType is "mbox" or invalid input
if args.demospace and args.demospace ~= '' then
-- implement demospace parameter of mbox
local demospace = string.lower(args.demospace)
if DEMOSPACES[demospace] then
-- use template from DEMOSPACES
obj.cfg = cfg[DEMOSPACES[demospace]]
elseif string.find( demospace, 'talk' ) then
-- demo as a talk page
obj.cfg = cfg.tmbox
else
-- default to ombox
obj.cfg = cfg.ombox
end
elseif ns == 0 then
obj.cfg = cfg.ambox -- main namespace
elseif ns == 6 then
obj.cfg = cfg.imbox -- file namespace
elseif ns == 14 then
obj.cfg = cfg.cmbox -- category namespace
else
local nsTable = mw.site.namespaces[ns]
if nsTable and nsTable.isTalk then
obj.cfg = cfg.tmbox -- any talk namespace
else
obj.cfg = cfg.ombox -- other namespaces or invalid input
end
end
end
-- Set the arguments, and remove all blank arguments except for the ones
-- listed in cfg.allowBlankParams.
do
local newArgs = {}
for k, v in pairs(args) do
if v ~= '' then
newArgs[k] = v
end
end
for i, param in ipairs(obj.cfg.allowBlankParams or {}) do
newArgs[param] = args[param]
end
obj.args = newArgs
end
-- Define internal data structure.
obj.categories = {}
obj.classes = {}
-- For lazy loading of [[Module:Category handler]].
obj.hasCategories = false
return setmetatable(obj, MessageBox)
end
function MessageBox:addCat(ns, cat, sort)
if not cat then
return nil
end
if sort then
cat = string.format('[[Category:%s|%s]]', cat, sort)
else
cat = string.format('[[Category:%s]]', cat)
end
self.hasCategories = true
self.categories[ns] = self.categories[ns] or {}
table.insert(self.categories[ns], cat)
end
function MessageBox:addClass(class)
if not class then
return nil
end
table.insert(self.classes, class)
end
function MessageBox:setParameters()
local args = self.args
local cfg = self.cfg
-- Get type data.
self.type = args.type
local typeData = cfg.types[self.type]
self.invalidTypeError = cfg.showInvalidTypeError
and self.type
and not typeData
typeData = typeData or cfg.types[cfg.default]
self.typeClass = typeData.class
self.typeImage = typeData.image
self.typeImageNeedsLink = typeData.imageNeedsLink
-- Find if the box has been wrongly substituted.
self.isSubstituted = cfg.substCheck and args.subst == 'SUBST'
-- Find whether we are using a small message box.
self.isSmall = cfg.allowSmall and (
cfg.smallParam and args.small == cfg.smallParam
or not cfg.smallParam and yesno(args.small)
)
-- Add attributes, classes and styles.
self.id = args.id
self.name = args.name
if self.name then
self:addClass('box-' .. string.gsub(self.name,' ','_'))
end
if yesno(args.plainlinks) ~= false then
self:addClass('plainlinks')
end
for _, class in ipairs(cfg.classes or {}) do
self:addClass(class)
end
if self.isSmall then
self:addClass(cfg.smallClass or 'mbox-small')
end
self:addClass(self.typeClass)
self:addClass(args.class)
self.style = args.style
self.attrs = args.attrs
-- Set text style.
self.textstyle = args.textstyle
-- Find if we are on the template page or not. This functionality is only
-- used if useCollapsibleTextFields is set, or if both cfg.templateCategory
-- and cfg.templateCategoryRequireName are set.
self.useCollapsibleTextFields = cfg.useCollapsibleTextFields
if self.useCollapsibleTextFields
or cfg.templateCategory
and cfg.templateCategoryRequireName
then
if self.name then
local templateName = mw.ustring.match(
self.name,
'^[tT][eE][mM][pP][lL][aA][tT][eE][%s_]*:[%s_]*(.*)$'
) or self.name
templateName = 'Template:' .. templateName
self.templateTitle = getTitleObject(templateName)
end
self.isTemplatePage = self.templateTitle
and mw.title.equals(self.title, self.templateTitle)
end
-- Process data for collapsible text fields. At the moment these are only
-- used in {{ambox}}.
if self.useCollapsibleTextFields then
-- Get the self.issue value.
if self.isSmall and args.smalltext then
self.issue = args.smalltext
else
local sect
if args.sect == '' then
sect = 'This ' .. (cfg.sectionDefault or 'page')
elseif type(args.sect) == 'string' then
sect = 'This ' .. args.sect
end
local issue = args.issue
issue = type(issue) == 'string' and issue ~= '' and issue or nil
local text = args.text
text = type(text) == 'string' and text or nil
local issues = {}
table.insert(issues, sect)
table.insert(issues, issue)
table.insert(issues, text)
self.issue = table.concat(issues, ' ')
end
-- Get the self.talk value.
local talk = args.talk
-- Show talk links on the template page or template subpages if the talk
-- parameter is blank.
if talk == ''
and self.templateTitle
and (
mw.title.equals(self.templateTitle, self.title)
or self.title:isSubpageOf(self.templateTitle)
)
then
talk = '#'
elseif talk == '' then
talk = nil
end
if talk then
-- If the talk value is a talk page, make a link to that page. Else
-- assume that it's a section heading, and make a link to the talk
-- page of the current page with that section heading.
local talkTitle = getTitleObject(talk)
local talkArgIsTalkPage = true
if not talkTitle or not talkTitle.isTalkPage then
talkArgIsTalkPage = false
talkTitle = getTitleObject(
self.title.text,
mw.site.namespaces[self.title.namespace].talk.id
)
end
if talkTitle and talkTitle.exists then
local talkText
if self.isSmall then
local talkLink = talkArgIsTalkPage and talk or (talkTitle.prefixedText .. '#' .. talk)
talkText = string.format('([[%s|talk]])', talkLink)
else
talkText = 'Relevant discussion may be found on'
if talkArgIsTalkPage then
talkText = string.format(
'%s [[%s|%s]].',
talkText,
talk,
talkTitle.prefixedText
)
else
talkText = string.format(
'%s the [[%s#%s|talk page]].',
talkText,
talkTitle.prefixedText,
talk
)
end
end
self.talk = talkText
end
end
-- Get other values.
self.fix = args.fix ~= '' and args.fix or nil
local date
if args.date and args.date ~= '' then
date = args.date
elseif args.date == '' and self.isTemplatePage then
date = lang:formatDate('F Y')
end
if date then
self.date = string.format(" <span class='date-container'><i>(<span class='date'>%s</span>)</i></span>", date)
end
self.info = args.info
if yesno(args.removalnotice) then
self.removalNotice = cfg.removalNotice
end
end
-- Set the non-collapsible text field. At the moment this is used by all box
-- types other than ambox, and also by ambox when small=yes.
if self.isSmall then
self.text = args.smalltext or args.text
else
self.text = args.text
end
-- Set the below row.
self.below = cfg.below and args.below
-- General image settings.
self.imageCellDiv = not self.isSmall and cfg.imageCellDiv
self.imageEmptyCell = cfg.imageEmptyCell
-- Left image settings.
local imageLeft = self.isSmall and args.smallimage or args.image
if cfg.imageCheckBlank and imageLeft ~= 'blank' and imageLeft ~= 'none'
or not cfg.imageCheckBlank and imageLeft ~= 'none'
then
self.imageLeft = imageLeft
if not imageLeft then
local imageSize = self.isSmall
and (cfg.imageSmallSize or '30x30px')
or '40x40px'
self.imageLeft = string.format('[[File:%s|%s%s|alt=]]', self.typeImage
or 'Information icon4.svg', imageSize, self.typeImageNeedsLink and "" or "|link=" )
end
end
-- Right image settings.
local imageRight = self.isSmall and args.smallimageright or args.imageright
if not (cfg.imageRightNone and imageRight == 'none') then
self.imageRight = imageRight
end
-- set templatestyles
self.base_templatestyles = cfg.templatestyles
self.templatestyles = args.templatestyles
end
function MessageBox:setMainspaceCategories()
local args = self.args
local cfg = self.cfg
if not cfg.allowMainspaceCategories then
return nil
end
local nums = {}
for _, prefix in ipairs{'cat', 'category', 'all'} do
args[prefix .. '1'] = args[prefix]
nums = union(nums, getArgNums(args, prefix))
end
-- The following is roughly equivalent to the old {{Ambox/category}}.
local date = args.date
date = type(date) == 'string' and date
local preposition = 'from'
for _, num in ipairs(nums) do
local mainCat = args['cat' .. tostring(num)]
or args['category' .. tostring(num)]
local allCat = args['all' .. tostring(num)]
mainCat = type(mainCat) == 'string' and mainCat
allCat = type(allCat) == 'string' and allCat
if mainCat and date and date ~= '' then
local catTitle = string.format('%s %s %s', mainCat, preposition, date)
self:addCat(0, catTitle)
catTitle = getTitleObject('Category:' .. catTitle)
if not catTitle or not catTitle.exists then
self:addCat(0, 'Λήμματα με μη έγκυρη παράμετρο ημερομηνίας σε πρότυπο')
end
elseif mainCat and (not date or date == '') then
self:addCat(0, mainCat)
end
if allCat then
self:addCat(0, allCat)
end
end
end
function MessageBox:setTemplateCategories()
local args = self.args
local cfg = self.cfg
-- Add template categories.
if cfg.templateCategory then
if cfg.templateCategoryRequireName then
if self.isTemplatePage then
self:addCat(10, cfg.templateCategory)
end
elseif not self.title.isSubpage then
self:addCat(10, cfg.templateCategory)
end
end
-- Add template error categories.
if cfg.templateErrorCategory then
local templateErrorCategory = cfg.templateErrorCategory
local templateCat, templateSort
if not self.name and not self.title.isSubpage then
templateCat = templateErrorCategory
elseif self.isTemplatePage then
local paramsToCheck = cfg.templateErrorParamsToCheck or {}
local count = 0
for i, param in ipairs(paramsToCheck) do
if not args[param] then
count = count + 1
end
end
if count > 0 then
templateCat = templateErrorCategory
templateSort = tostring(count)
end
if self.categoryNums and #self.categoryNums > 0 then
templateCat = templateErrorCategory
templateSort = 'C'
end
end
self:addCat(10, templateCat, templateSort)
end
end
function MessageBox:setAllNamespaceCategories()
-- Set categories for all namespaces.
if self.invalidTypeError then
local allSort = (self.title.namespace == 0 and 'Main:' or '') .. self.title.prefixedText
self:addCat('all', 'Παράμετρος πλαισίου μηνύματος της Βικιπαίδειας που χρειάζεται διόρθωση', allSort)
end
if self.isSubstituted then
self:addCat('all', 'Σελίδες με εσφαλμένως υποκαταστημένα πρότυπα')
end
end
function MessageBox:setCategories()
if self.title.namespace == 0 then
self:setMainspaceCategories()
elseif self.title.namespace == 10 then
self:setTemplateCategories()
end
self:setAllNamespaceCategories()
end
function MessageBox:renderCategories()
if not self.hasCategories then
-- No categories added, no need to pass them to Category handler so,
-- if it was invoked, it would return the empty string.
-- So we shortcut and return the empty string.
return ""
end
-- Convert category tables to strings and pass them through
-- [[Module:Category handler]].
return require('Module:Category handler')._main{
main = table.concat(self.categories[0] or {}),
template = table.concat(self.categories[10] or {}),
all = table.concat(self.categories.all or {}),
nocat = self.args.nocat,
page = self.args.page
}
end
function MessageBox:export()
local root = mw.html.create()
-- Add the subst check error.
if self.isSubstituted and self.name then
root:tag('b')
:addClass('error')
:wikitext(string.format(
'Το πρότυπο <code>%s[[Πρότυπο:%s|%s]]%s</code> έχει εσφαλμένως υποκατασταθεί.',
mw.text.nowiki('{{'), self.name, self.name, mw.text.nowiki('}}')
))
end
local frame = mw.getCurrentFrame()
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.base_templatestyles },
})
-- Add support for a single custom templatestyles sheet. Undocumented as
-- need should be limited and many templates using mbox are substed; we
-- don't want to spread templatestyles sheets around to arbitrary places
if self.templatestyles then
root:wikitext(frame:extensionTag{
name = 'templatestyles',
args = { src = self.templatestyles },
})
end
-- Create the box table.
local boxTable = root:tag('table')
boxTable:attr('id', self.id or nil)
for i, class in ipairs(self.classes or {}) do
boxTable:addClass(class or nil)
end
boxTable
:cssText(self.style or nil)
:attr('role', 'presentation')
if self.attrs then
boxTable:attr(self.attrs)
end
-- Add the left-hand image.
local row = boxTable:tag('tr')
if self.imageLeft then
local imageLeftCell = row:tag('td'):addClass('mbox-image')
if self.imageCellDiv then
-- If we are using a div, redefine imageLeftCell so that the image
-- is inside it. Divs use style="width: 52px;", which limits the
-- image width to 52px. If any images in a div are wider than that,
-- they may overlap with the text or cause other display problems.
imageLeftCell = imageLeftCell:tag('div'):addClass('mbox-image-div')
end
imageLeftCell:wikitext(self.imageLeft or nil)
elseif self.imageEmptyCell then
-- Some message boxes define an empty cell if no image is specified, and
-- some don't. The old template code in templates where empty cells are
-- specified gives the following hint: "No image. Cell with some width
-- or padding necessary for text cell to have 100% width."
row:tag('td')
:addClass('mbox-empty-cell')
end
-- Add the text.
local textCell = row:tag('td'):addClass('mbox-text')
if self.useCollapsibleTextFields then
-- The message box uses advanced text parameters that allow things to be
-- collapsible. At the moment, only ambox uses this.
textCell:cssText(self.textstyle or nil)
local textCellDiv = textCell:tag('div')
textCellDiv
:addClass('mbox-text-span')
:wikitext(self.issue or nil)
if (self.talk or self.fix) then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:wikitext(self.talk and (' ' .. self.talk) or nil)
:wikitext(self.fix and (' ' .. self.fix) or nil)
end
textCellDiv:wikitext(self.date and (' ' .. self.date) or nil)
if self.info and not self.isSmall then
textCellDiv
:tag('span')
:addClass('hide-when-compact')
:wikitext(self.info and (' ' .. self.info) or nil)
end
if self.removalNotice then
textCellDiv:tag('span')
:addClass('hide-when-compact')
:tag('i')
:wikitext(string.format(" (%s)", self.removalNotice))
end
else
-- Default text formatting - anything goes.
textCell
:cssText(self.textstyle or nil)
:wikitext(self.text or nil)
end
-- Add the right-hand image.
if self.imageRight then
local imageRightCell = row:tag('td'):addClass('mbox-imageright')
if self.imageCellDiv then
-- If we are using a div, redefine imageRightCell so that the image
-- is inside it.
imageRightCell = imageRightCell:tag('div'):addClass('mbox-image-div')
end
imageRightCell
:wikitext(self.imageRight or nil)
end
-- Add the below row.
if self.below then
boxTable:tag('tr')
:tag('td')
:attr('colspan', self.imageRight and '3' or '2')
:addClass('mbox-text')
:cssText(self.textstyle or nil)
:wikitext(self.below or nil)
end
-- Add error message for invalid type parameters.
if self.invalidTypeError then
root:tag('div')
:addClass('mbox-invalid-type')
:wikitext(string.format(
'This message box is using an invalid "type=%s" parameter and needs fixing.',
self.type or ''
))
end
-- Add categories.
root:wikitext(self:renderCategories() or nil)
return tostring(root)
end
--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------
local p, mt = {}, {}
function p._exportClasses()
-- For testing.
return {
MessageBox = MessageBox
}
end
function p.main(boxType, args, cfgTables)
local box = MessageBox.new(boxType, args, cfgTables or mw.loadData(CONFIG_MODULE))
box:setParameters()
box:setCategories()
return box:export()
end
function mt.__index(t, k)
return function (frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return t.main(k, getArgs(frame, {trim = false, removeBlanks = false}))
end
end
return setmetatable(p, mt)
kxzzoqpa33ednsat2sdvfyknevn9pqg
Module:Message box/configuration
828
3198
36359
2025-12-15T14:28:08Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-------------------------------------------------------------------------------- -- Message box configuration -- -- -- -- This module contains configuration data for [[Module:Message box]]. -- -------------------------------------------------------------------------------- return { ambox = { types = { speedy = {...'
36359
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Message box configuration --
-- --
-- This module contains configuration data for [[Module:Message box]]. --
--------------------------------------------------------------------------------
return {
ambox = {
types = {
speedy = {
class = 'ambox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'ambox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'ambox-content',
image = 'Ambox important.svg'
},
style = {
class = 'ambox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'ambox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'ambox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'ambox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
allowBlankParams = {'talk', 'sect', 'date', 'issue', 'fix', 'subst', 'hidden'},
allowSmall = true,
smallParam = 'left',
smallClass = 'mbox-small-left',
substCheck = true,
classes = {'metadata', 'ambox'},
imageEmptyCell = true,
imageCheckBlank = true,
imageSmallSize = '20x20px',
imageCellDiv = true,
useCollapsibleTextFields = true,
imageRightNone = true,
sectionDefault = 'article',
allowMainspaceCategories = true,
templateCategory = 'Ετικέτες σήμανσης άρθρων',
templateCategoryRequireName = false,
templateErrorCategory = 'Article message templates with missing parameters',
templateErrorParamsToCheck = {'issue', 'fix', 'subst'},
removalNotice = '<small>Εκκρεμεί σύνδεσμος με οδηγίες για το πως και πότε αφαιρείται αυτό το μήνυμα</small>',
templatestyles = 'Module:Message box/ambox.css'
},
cmbox = {
types = {
speedy = {
class = 'cmbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'cmbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'cmbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'cmbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'cmbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'cmbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'cmbox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'cmbox'},
imageEmptyCell = true,
templatestyles = 'Module:Message box/cmbox.css'
},
fmbox = {
types = {
warning = {
class = 'fmbox-warning',
image = 'Ambox warning pn.svg'
},
editnotice = {
class = 'fmbox-editnotice',
image = 'Information icon4.svg'
},
system = {
class = 'fmbox-system',
image = 'Information icon4.svg'
}
},
default = 'system',
showInvalidTypeError = true,
classes = {'fmbox'},
imageEmptyCell = false,
imageRightNone = false,
templatestyles = 'Module:Message box/fmbox.css'
},
imbox = {
types = {
speedy = {
class = 'imbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'imbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'imbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'imbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'imbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'imbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
license = {
class = 'imbox-license licensetpl',
image = 'Imbox-license.svg'
},
["license-related"] = {
class = 'imbox-license',
image = 'Imbox-license.svg'
},
featured = {
class = 'imbox-featured',
image = 'Cscr-featured.svg',
imageNeedsLink = true
},
notice = {
class = 'imbox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'imbox'},
imageEmptyCell = true,
below = true,
templateCategory = 'File message boxes',
templatestyles = 'Module:Message box/imbox.css'
},
ombox = {
types = {
speedy = {
class = 'ombox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'ombox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'ombox-content',
image = 'Ambox important.svg'
},
style = {
class = 'ombox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'ombox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'ombox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'ombox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'ombox'},
allowSmall = true,
imageEmptyCell = true,
imageRightNone = true,
templatestyles = 'Module:Message box/ombox.css'
},
tmbox = {
types = {
speedy = {
class = 'tmbox-speedy',
image = 'Ambox warning pn.svg'
},
delete = {
class = 'tmbox-delete',
image = 'Ambox warning pn.svg'
},
content = {
class = 'tmbox-content',
image = 'Ambox important.svg'
},
style = {
class = 'tmbox-style',
image = 'Edit-clear.svg'
},
move = {
class = 'tmbox-move',
image = 'Merge-split-transwiki default.svg'
},
protection = {
class = 'tmbox-protection',
image = 'Semi-protection-shackle-keyhole.svg'
},
notice = {
class = 'tmbox-notice',
image = 'Information icon4.svg'
}
},
default = 'notice',
showInvalidTypeError = true,
classes = {'tmbox'},
allowSmall = true,
imageRightNone = true,
imageEmptyCell = true,
templateCategory = 'Talk message boxes',
templatestyles = 'Module:Message box/tmbox.css'
}
}
ldp14f687e3couk3fbctieck1oy25xp
Module:Message box/ombox.css
828
3199
36360
2025-12-15T14:28:54Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '.ombox { margin: 4px 0; border-collapse: collapse; border: 1px solid #a2a9b1; /* Default "notice" gray */ background-color: var(--background-color-neutral-subtle, #f8f9fa); box-sizing: border-box; color: var(--color-base, #202122); } /* For the "small=yes" option. */ .ombox.mbox-small { font-size: 88%; line-height: 1.25em; } .ombox-speedy { border: 2px solid #b32424; /* Red */ background-color: #fee7e6; /* Pink */ } .ombox-...'
36360
sanitized-css
text/css
.ombox {
margin: 4px 0;
border-collapse: collapse;
border: 1px solid #a2a9b1; /* Default "notice" gray */
background-color: var(--background-color-neutral-subtle, #f8f9fa);
box-sizing: border-box;
color: var(--color-base, #202122);
}
/* For the "small=yes" option. */
.ombox.mbox-small {
font-size: 88%;
line-height: 1.25em;
}
.ombox-speedy {
border: 2px solid #b32424; /* Red */
background-color: #fee7e6; /* Pink */
}
.ombox-delete {
border: 2px solid #b32424; /* Red */
}
.ombox-content {
border: 1px solid #f28500; /* Orange */
}
.ombox-style {
border: 1px solid #fc3; /* Yellow */
}
.ombox-move {
border: 1px solid #9932cc; /* Purple */
}
.ombox-protection {
border: 2px solid #a2a9b1; /* Gray-gold */
}
.ombox .mbox-text {
border: none;
/* @noflip */
padding: 0.25em 0.9em;
width: 100%;
}
.ombox .mbox-image {
border: none;
/* @noflip */
padding: 2px 0 2px 0.9em;
text-align: center;
}
.ombox .mbox-imageright {
border: none;
/* @noflip */
padding: 2px 0.9em 2px 0;
text-align: center;
}
/* An empty narrow cell */
.ombox .mbox-empty-cell {
border: none;
padding: 0;
width: 1px;
}
.ombox .mbox-invalid-type {
text-align: center;
}
@media (min-width: 720px) {
.ombox {
margin: 4px 10%;
}
.ombox.mbox-small {
/* @noflip */
clear: right;
/* @noflip */
float: right;
/* @noflip */
margin: 4px 0 4px 1em;
width: 238px;
}
}
/** T367463 */
body.skin--responsive table.ombox img {
max-width: none !important;
}
@media screen {
html.skin-theme-clientpref-night .ombox-speedy {
background-color: #310402; /* Dark red, same hue/saturation as light */
}
}
@media screen and ( prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .ombox-speedy {
background-color: #310402; /* Dark red, same hue/saturation as light */
}
}
cull3cnbb7vcu7kqk2u43t3wa025kjy
Πρότυπον:Υποσελίδα τεκμηριώσεως
10
3200
36361
2025-12-15T14:32:48Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#ifeq: {{lc:{{SUBPAGENAME}}}} | {{{override|τεκμηρίωση}}} | <!-- doc page --> </includeonly>{{ #ifeq: {{{doc-notice|show}}} | show | {{#invoke:message box | type = notice | image = [[file:Edit-copy green.svg|link=]] | text = '''Yποσελίδα τεκμηριώσεως για το {{{1|[[{{SUBJECTSPACE}}:{{BASEPAGENAME}}]]}}}'''.<br /> Περιέχει πληροφορίαι χρήσεως, κατηγορίαι...'
36361
wikitext
text/x-wiki
<includeonly>{{#ifeq: {{lc:{{SUBPAGENAME}}}} | {{{override|τεκμηρίωση}}}
| <!-- doc page -->
</includeonly>{{
#ifeq: {{{doc-notice|show}}} | show
| {{#invoke:message box
| type = notice
| image = [[file:Edit-copy green.svg|link=]]
| text = '''Yποσελίδα τεκμηριώσεως για το {{{1|[[{{SUBJECTSPACE}}:{{BASEPAGENAME}}]]}}}'''.<br />
Περιέχει πληροφορίαι χρήσεως, κατηγορίαι και περιεχόμενον ό, ἔστιν ουκ ἀπό μέρος τοῦ ἀρχικού {{#ifeq:{{SUBJECTSPACE}}|{{ns:module}}|module|προτύπου}}.
}}
}}{{DEFAULTSORT:{{PAGENAME}}}}{{
#if: {{{inhibit|}}}
| <!-- να παραλείπεται η αυτόματη κατηγοριοποίηση -->
| <includeonly>[[Κατηγορία:Σελίδες τεκμηρίωσης προτύπων]]</includeonly>
}}<includeonly>
| <!-- εάν δεν βρίσκεται σε υποσελίδα /τεκμηρίωση, να μη συμβαίνει τίποτα -->
}}</includeonly><noinclude>[[Κατηγορία:Σελίδες τεκμηρίωσης προτύπων| ]]</noinclude>
oing08tobavtbyrg9omz9hhivmrwx9y
Πρότυπον:Περισσότεραι πληροφορίαι
10
3201
36363
36362
2025-12-15T14:34:58Z
Εὐθυμένης
2777
36363
wikitext
text/x-wiki
:<div class="noprint">''Περισσότερες πληροφορίες: [[{{{1}}}|{{{l1|{{{1}}}}}}]]{{#if:{{{2| }}}
|{{#if:{{{3|}}}|, | και }}[[{{{2}}}|{{{l2|{{{2}}}}}}]]}}{{#if:{{{3|}}}
|{{#if:{{{4|}}}|, | και }}[[{{{3}}}|{{{l3|{{{3}}}}}}]]}}{{#if:{{{4|}}}
|{{#if:{{{5|}}}|, | και }}[[{{{4}}}|{{{l4|{{{4}}}}}}]]}}{{#if:{{{5|}}}
|{{#if:{{{6|}}}|, | και }}[[{{{5}}}|{{{l5|{{{5}}}}}}]]}}{{#if:{{{6|}}}
|{{#if:{{{7|}}}|, | και }}[[{{{6}}}|{{{l6|{{{6}}}}}}]]}}{{#if:{{{7|}}}
|{{#if:{{{8|}}}|, | και }}[[{{{7}}}|{{{l7|{{{7}}}}}}]]}}{{#if:{{{8|}}}
|{{#if:{{{9|}}}|, | και }}[[{{{8}}}|{{{l8|{{{8}}}}}}]]}}{{#if:{{{9|}}}
|{{#if:{{{10|}}}|, | και }}[[{{{9}}}|{{{l9|{{{9}}}}}}]]}}{{#if:{{{10|}}}
| και [[{{{10}}}|{{{l10|{{{10}}}}}}]]}}''{{#if:{{{11| }}}|  (πάρα πολλές παράμετροι στο {{[[Πρότυπο:κύριο|κύριο]]}})}}</div><noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]
{{documentation}}
</noinclude>
gdkvo53arr6d6v9lazwmkkn6g5jgmax
Κατηγορίαν:Σελίδες με σφάλματα δέσμης ενεργειών
14
3202
36365
36364
2025-12-15T14:36:56Z
Εὐθυμένης
2777
36365
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Επιμέλεια Βικιπαίδειας]]
1fciy6n5ov0iu21nfb2d1v6sr6y5vh2
Κατηγορίαν:Επιμέλεια Βικιπαίδειας
14
3203
36367
36366
2025-12-15T14:44:05Z
Εὐθυμένης
2777
36367
wikitext
text/x-wiki
{{hiddencat}}
Ἐδῶ εἰσίν λήμματα, ἃ εἶναι κάπως ἀνεπτυγμένα, ἀλλὰ χρειάζονται ἐπιμέλειαν ἵνα προσεγγίσουν σον βαθμόν τῶν ἄλλων λημμάτων.
Ἡ ἐπιμέλεια, ἣν χρειάζονται, δύναται νά εἶναι ὀρθογραφική-γραμματική, προσθήκη συνδέσμων Wiki ἢ μορφοποίησις.
[[Κατηγορίαν:Διαχείριση Βικιπαίδειας]]
[[Κατηγορίαν:Βικιπαίδεια λήμματα]]
5f9l5jp8oje43y08at18xjhzwnft0c5
Πρότυπον:Cmbox
10
3204
36368
2025-12-15T14:45:20Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<table class="plainlinks cmbox {{#switch:{{{type|}}} | speedy = cmbox-speedy | delete = cmbox-delete | content = cmbox-content | style = cmbox-style | move = cmbox-move | protection = cmbox-protection | notice <!-- notice = default --> | #default = cmbox-notice }} {{{class|}}}" style="margin: 3px 10%; border-collapse: collapse; border: 1px solid #aaa; background: #DFE8FF; {{#switch:{{{type|}}} | speedy = margin-...'
36368
wikitext
text/x-wiki
<table class="plainlinks cmbox
{{#switch:{{{type|}}}
| speedy = cmbox-speedy
| delete = cmbox-delete
| content = cmbox-content
| style = cmbox-style
| move = cmbox-move
| protection = cmbox-protection
| notice <!-- notice = default -->
| #default = cmbox-notice
}} {{{class|}}}" style="margin: 3px 10%; border-collapse: collapse; border: 1px solid #aaa; background: #DFE8FF;
{{#switch:{{{type|}}}
| speedy = margin-top: 4px; margin-bottom: 4px; border: 4px solid #b22222; background: #FFDBDB;
| delete = background: #FFDBDB;
| content = background: #FFE7CE;
| style = background: #FFF9DB;
| move = background: #E4D8FF;
| protection = background: #EFEFE1;
| notice <!-- notice = default -->
| #default = background: #D8E8FF;
}} {{{style|}}}">
<tr>
{{#ifeq:{{{image|}}}|none
| <!-- No image. Cell with some width or padding necessary for text cell to have 100% width. --><td class="mbox-empty-cell"></td>
| <td class="mbox-image" style="border: none; padding: 2px 0 2px 0.9em; text-align: center;">
{{#if:{{{image|}}}
| {{{image}}}
| [[File:{{#switch:{{{type|}}}
| speedy = Cmbox deletion.png
| delete = Cmbox deletion.png
| content = Cmbox content.png
| style = Edit-clear.svg
| move = Cmbox move.png
| protection = Cmbox protection.png
| notice <!-- notice = default -->
| #default = Cmbox notice.png
}}|40x40px|link=|alt=]]
}}</td>
}}
<td class="mbox-text" style="border: none; padding: 0.25em 0.9em; width: 100%; {{{textstyle|}}}"> {{{text}}} </td>
{{#if:{{{imageright|}}}
| <td class="mbox-imageright" style="border: none; padding: 2px 0.9em 2px 0; text-align: center;"> {{{imageright}}} </td>
}}
</tr>
</table><!--
Detect and report usage with faulty "type" parameter:
-->{{#switch:{{{type|}}}
| <!-- No type fed, is also valid input -->
| speedy
| delete
| content
| style
| move
| protection
| notice = <!-- Do nothing, valid "type" -->
| #default = <div style="text-align: center;">This message box is using an invalid "type={{{type|}}}" parameter and needs fixing.</div>[[Κατηγορίαν:Wikipedia message box parameter needs fixing|{{main other|Main:}}{{FULLPAGENAME}}]]<!-- Sort on namespace -->
}}<noinclude>
{{documentation}}
[[Κατηγορίαν:Πρότυπα κατηγοριών]]
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
fn72i6kcvqf7o7qp7nkufbiamzsbro3
Κατηγορίαν:Πρότυπα κατηγοριών
14
3205
36369
2025-12-15T14:46:11Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|κατηγοριων]]'
36369
wikitext
text/x-wiki
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|κατηγοριων]]
tkzdzyvud78mk62bqfylfbkldua9s6r
Πρότυπον:Hiddencat
10
3206
36636
36370
2025-12-15T20:27:30Z
Εὐθυμένης
2777
36636
wikitext
text/x-wiki
__HIDDENCAT__{{Cmbox
| type = notice
| image = [[File:Tunnel icon2.svg|60x50px|alt=|link=]]
| textstyle =
| text = Αυτή είναι μία '''[[:Κατηγορίαν:Κρυμμέν κατηγορίας|κρυμμένη κατηγορία]]''' που διευκολύνει τη συντήρηση της Βικιπαίδειας. Αυτή η κατηγορία δεν εμφανίζεται στις σελίδες όπου ανήκει, εκτός κι αν [https://el.wikipedia.org/wiki/Special:Preferences#mw-prefsection-rendering-advancedrendering o χρήστης προτιμά να εμφανίζεται].{{#if:{{{text|}}}|<hr/>{{{text|}}}}}
}}<noinclude>
{{Documentation|content=
<templatedata>
{
"params": {},
"description": "Σήμανση κατηγοριών συντήρησης που είναι κρυφές από τους αναγνώστες (ταυτόχρονα κάνει και την κατηγορία κρυφή).",
"format": "block"
}
</templatedata>
}}
</noinclude>
jk8sdf6w9z1haxl7dicwoz65awje177
Πρότυπον:Lua
10
3207
36371
2025-12-15T14:51:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#invoke:Lua banner|main}}</includeonly><noinclude> {{Lua|Module:Lua banner}} {{documentation}} <!-- Categories go on the /doc subpage and interwikis go on Wikidata. --> </noinclude>'
36371
wikitext
text/x-wiki
<includeonly>{{#invoke:Lua banner|main}}</includeonly><noinclude>
{{Lua|Module:Lua banner}}
{{documentation}}
<!-- Categories go on the /doc subpage and interwikis go on Wikidata. -->
</noinclude>
pnmjp3f3fl321yf2jpg5syebi412n7b
Κατηγορίαν:Πρότυπα βασισμένα στη Lua
14
3208
36372
2025-12-15T14:52:33Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'Πρότυπα που βασίζονται στη [[Lua]], δηλαδή χρησιμοποιούν ''modules'' γραμμένα στη Lua. [[Κατηγορίαν:Πρότυπα|Lua]]'
36372
wikitext
text/x-wiki
Πρότυπα που βασίζονται στη [[Lua]], δηλαδή χρησιμοποιούν ''modules'' γραμμένα στη Lua.
[[Κατηγορίαν:Πρότυπα|Lua]]
ge3k4681wad4ht2ginedjs3frt1vfew
Module:No globals
828
3209
36374
2025-12-15T14:54:21Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local mt = getmetatable(_G) or {} function mt.__index (t, k) if k ~= 'arg' then -- perf optimization here and below: do not load Module:TNT unless there is an error error(require('Module:TNT').format('I18n/No globals', 'err-read', tostring(k)), 2) end return nil end function mt.__newindex(t, k, v) if k ~= 'arg' then error(require('Module:TNT').format('I18n/No globals', 'err-write', tostring(k)), 2) end rawset(t, k, v) end setmetatable(_...'
36374
Scribunto
text/plain
local mt = getmetatable(_G) or {}
function mt.__index (t, k)
if k ~= 'arg' then
-- perf optimization here and below: do not load Module:TNT unless there is an error
error(require('Module:TNT').format('I18n/No globals', 'err-read', tostring(k)), 2)
end
return nil
end
function mt.__newindex(t, k, v)
if k ~= 'arg' then
error(require('Module:TNT').format('I18n/No globals', 'err-write', tostring(k)), 2)
end
rawset(t, k, v)
end
setmetatable(_G, mt)
s0drk5a3gn0y3tu3a6ay5f8w1mc8lqo
Πρότυπον:Shared Template Warning
10
3210
36375
2025-12-15T14:55:47Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<noinclude>{{ {{PAGENAME}}|Template:Shared Template Warning|Shared Template Warning}}{{Documentation}}</noinclude><includeonly><table cellspacing="0" cellpadding="0" border="0" style="background:transparent; margin:0.5em auto; padding:0.5em; background-color:#fee7e6; border:1px solid #aaa;" ><tr><td nowrap="nowrap" valign="top"><!-- --><span style="position:relative; top:-2px;"><!-- -->File:OOjs_UI_icon_notice-destructive.svg|18px|warning|link...'
36375
wikitext
text/x-wiki
<noinclude>{{ {{PAGENAME}}|Template:Shared Template Warning|Shared Template Warning}}{{Documentation}}</noinclude><includeonly><table
cellspacing="0" cellpadding="0" border="0"
style="background:transparent; margin:0.5em auto; padding:0.5em; background-color:#fee7e6; border:1px solid #aaa;"
><tr><td nowrap="nowrap" valign="top"><!--
--><span style="position:relative; top:-2px;"><!--
-->[[File:OOjs_UI_icon_notice-destructive.svg|18px|warning|link=]]<!--
--></span> '''{{#invoke:TNT|msg|I18n/Shared Template Warning.tab|warning}}'''</td><!--
--><td valign="top" style="padding-left:0.5em;"><!--
-->{{#ifeq:{{SITENAME}}|MediaWiki<!--
-->|{{#invoke:TNT|msg|I18n/Shared Template Warning.tab|be-careful}}<!--
-->|{{#invoke:TNT|msg|I18n/Shared Template Warning.tab|no-edit|{{{1}}}}}<!--
-->}}{{#if:{{{2|}}}|<br>{{#invoke:TNT|msg|I18n/Shared Template Warning.tab|translate|c:Data:I18n/{{{2}}}.tab}}<!--
-->}}</td></tr></table></includeonly>
n3c1lasii8zjoggzfgsarlzuwrc20s1
Module:TNT
828
3211
37400
37398
2025-12-27T18:07:00Z
ExE Boss
8682
Update from [[d:Special:GoToLinkedPage/mediawikiwiki/Q28132212|master]] using [[mw:Synchronizer| #Synchronizer]]
37400
Scribunto
text/plain
--
-- INTRO: (!!! DO NOT RENAME THIS PAGE !!!)
-- This module allows any template or module to be copy/pasted between
-- wikis without any translation changes. All translation text is stored
-- in the global Data:*.tab pages on Commons, and used everywhere.
--
-- SEE: https://www.mediawiki.org/wiki/Multilingual_Templates_and_Modules
--
-- ATTENTION:
-- Please do NOT rename this module - it has to be identical on all wikis.
-- This code is maintained at https://www.mediawiki.org/wiki/Module:TNT
-- Please do not modify it anywhere else, as it may get copied and override your changes.
-- Suggestions can be made at https://www.mediawiki.org/wiki/Module_talk:TNT
--
-- DESCRIPTION:
-- The "msg" function uses a Commons dataset to translate a message
-- with a given key (e.g. source-table), plus optional arguments
-- to the wiki markup in the current content language.
-- Use lang=xx to set language. Example:
--
-- {{#invoke:TNT | msg
-- | I18n/Template:Graphs.tab <!-- https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab -->
-- | source-table <!-- uses a translation message with id = "source-table" -->
-- | param1 }} <!-- optional parameter -->
--
--
-- The "doc" function will generate the <templatedata> parameter documentation for templates.
-- This way all template parameters can be stored and localized in a single Commons dataset.
-- NOTE: "doc" assumes that all documentation is located in Data:Templatedata/* on Commons.
--
-- {{#invoke:TNT | doc | Graph:Lines }}
-- uses https://commons.wikimedia.org/wiki/Data:Templatedata/Graph:Lines.tab
-- if the current page is Template:Graph:Lines/doc
--
local config = (function()
local ok, res = pcall(mw.loadData, "Module:TNT/config");
return ok and res or {};
end)();
local p = {}
local i18nDataset = 'I18n/Module:TNT.tab'
-- Forward declaration of the local functions
local sanitizeDataset, loadData, link, formatMessage
function p.msg(frame)
local dataset, id
local params = {}
local lang = nil
for k, v in pairs(frame.args) do
if k == 1 then
dataset = mw.text.trim(v)
elseif k == 2 then
id = mw.text.trim(v)
elseif type(k) == 'number' then
params[k - 2] = mw.text.trim(v)
elseif k == 'lang' and v ~= '_' then
lang = mw.text.trim(v)
end
end
return formatMessage(dataset, id, params, lang)
end
-- Identical to p.msg() above, but used from other lua modules
-- Parameters: name of dataset, message key, optional arguments
-- Example with 2 params: format('I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.format(dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('format', 1, dataset, 'string')
checkType('format', 2, key, 'string')
return formatMessage(dataset, key, {...})
end
-- Identical to p.msg() above, but used from other lua modules with the language param
-- Parameters: language code, name of dataset, message key, optional arguments
-- Example with 2 params: formatInLanguage('es', I18n/Module:TNT', 'error_bad_msgkey', 'my-key', 'my-dataset')
function p.formatInLanguage(lang, dataset, key, ...)
local checkType = require('libraryUtil').checkType
checkType('formatInLanguage', 1, lang, 'string')
checkType('formatInLanguage', 2, dataset, 'string')
checkType('formatInLanguage', 3, key, 'string')
return formatMessage(dataset, key, {...}, lang)
end
-- Obsolete function that adds a 'c:' prefix to the first param.
-- "Sandbox/Sample.tab" -> 'c:Data:Sandbox/Sample.tab'
function p.link(frame)
return link(frame.args[1])
end
local implGetTemplateData;
function p.doc(frame)
local dataset = sanitizeDataset(frame.args[1])
local json, dataPage, categories = implGetTemplateData(nil, dataset, frame.args)
return frame:extensionTag('templatedata', json) ..
formatMessage(i18nDataset, 'edit_doc', {link(dataPage)}) ..
(categories or "");
end
function p.getTemplateData(dataset)
local data = implGetTemplateData(true, dataset);
return data;
end
function p.getTemplateDataNew(...)
return implGetTemplateData(nil, ...);
end
function implGetTemplateData(legacy, dataset, args)
-- TODO: add '_' parameter once lua starts reindexing properly for "all" languages
local data, dataPage, categories = loadData(
dataset, nil, not legacy and 'TemplateData' or nil);
local names = {}
for _, field in ipairs(data.schema.fields) do
table.insert(names, field.name)
end
local numOnly = true
local params = {}
local paramOrder = {}
for _, row in ipairs(data.data) do
local newVal = {}
local name = nil
for pos, columnName in ipairs(names) do
if columnName == 'name' then
name = row[pos]
else
newVal[columnName] = row[pos]
end
end
if name then
if (
(type(name) ~= "number")
and (
(type(name) ~= "string")
or not string.match(name, "^%d+$")
)
) then
numOnly = false
end
params[name] = newVal
table.insert(paramOrder, name)
end
end
-- Work around json encoding treating {"1":{...}} as an [{...}]
if numOnly then
params['zzz123']=''
end
local json = mw.text.jsonEncode({
params=params,
paramOrder=paramOrder,
description=data.description,
-- TODO: Store this in a dataset:
format = (args and args.format or nil),
})
if numOnly then
json = string.gsub(json,'"zzz123":"",?', "")
end
return json, dataPage, categories;
end
-- Local functions
sanitizeDataset = function(dataset)
if not dataset then
return nil
end
dataset = mw.text.trim(dataset)
if dataset == '' then
return nil
elseif string.sub(dataset,-4) ~= '.tab' then
return dataset .. '.tab'
else
return dataset
end
end
loadData = function(dataset, lang, dataType)
dataset = sanitizeDataset(dataset)
if not dataset then
error(formatMessage(i18nDataset, 'error_no_dataset', {}))
end
-- Give helpful error to thirdparties who try and copy this module.
if not mw.ext or not mw.ext.data or not mw.ext.data.get then
error(string.format([['''Missing JsonConfig extension, or not properly configured;
Cannot load https://commons.wikimedia.org/wiki/Data:%s.
See https://www.mediawiki.org/wiki/Extension:JsonConfig#Supporting_Wikimedia_templates''']], dataset))
end
local dataPage = dataset;
local data, categories;
if dataType == 'TemplateData' then
dataPage = 'TemplateData/' .. dataset;
data = mw.ext.data.get(dataPage, lang);
if data == false then
data = mw.ext.data.get('Templatedata/' .. dataset, lang);
if data ~= false then
local legacyTemplateDataCategoryName = config.legacyTemplateDataCategoryName;
if legacyTemplateDataCategoryName ~= false then
categories = string.format(
'[[Category:%s%s]]',
legacyTemplateDataCategoryName or "Templates using legacy global TemplateData table name",
config.translatableCategoryLink and mw.getCurrentFrame():callParserFunction("#translation:") or ""
);
end
dataPage = 'Templatedata/' .. dataset;
end
end
else
data = mw.ext.data.get(dataset, lang)
end
if data == false then
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Missing Commons dataset ' .. i18nDataset)
else
error(formatMessage(i18nDataset, 'error_bad_dataset', {link(dataPage)}))
end
end
return data, dataPage, categories;
end
-- Given a dataset name, convert it to a title with the 'commons:data:' prefix
link = function(dataset)
return 'c:Data:' .. mw.text.trim(dataset or '')
end
formatMessage = function(dataset, key, params, lang)
for _, row in pairs(loadData(dataset, lang).data) do
local id, msg = unpack(row)
if id == key then
local result = mw.message.newRawMessage(msg, unpack(params or {}))
return result:plain()
end
end
if dataset == i18nDataset then
-- Prevent cyclical calls
error('Invalid message key "' .. key .. '"')
else
error(formatMessage(i18nDataset, 'error_bad_msgkey', {key, link(dataset)}))
end
end
return p
2ii65lh3z6ssbx7s7r8h0vsbnbhbiyl
Πρότυπον:TemplateData header
10
3212
36377
2025-12-15T14:58:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="templatedata-header">{{#if:{{{noheader|}}}| |Αυτή είναι η τεκμηρίωση για τα [[Βικιπαίδεια:TemplateData|δεδομένα προτύπου]], για αυτό το πρότυπο, που θα χρησιμοποιηθούν από τον [[Βικιπαίδεια:VisualEditor|VisualEditor]] και άλλα εργαλεία.}} '''{{{1|{{BASEPAGENAME}}}}}''' </div><includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbo...'
36377
wikitext
text/x-wiki
<div class="templatedata-header">{{#if:{{{noheader|}}}| |Αυτή είναι η τεκμηρίωση για τα [[Βικιπαίδεια:TemplateData|δεδομένα προτύπου]], για αυτό το πρότυπο, που θα χρησιμοποιηθούν από τον [[Βικιπαίδεια:VisualEditor|VisualEditor]] και άλλα εργαλεία.}}
'''{{{1|{{BASEPAGENAME}}}}}'''
</div><includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox||
[[Κατηγορίαν:Σελίδες τεκμηρίωσης προτύπων]]
}}</includeonly><noinclude>
{{Documentation|content=
<templatedata>
{
"params": {
"1": {
"label": "Όνομα προτύπου",
"description": "Χρησιμοποιείται για την εμφάνιση ενός ονόματος για το πρότυπο διαφορετικό από το προεπιλεγμένο, το οποίο είναι {{BASEPAGENAME}}.",
"type": "string"
},
"noheader": {
"label": "Χωρίς κεφαλίδα",
"description": "Εάν αντιστοιχίσετε οποιαδήποτε τιμή σε αυτήν την παράμετρο, το πρότυπο θα παραλείψει την πρώτη πρόταση του κειμένου της κεφαλίδας.",
"type": "string"
}
},
"description": "Εισάγει μια σύντομη κεφαλίδα για την ενότητα TemplateData. Προσθέτει τη σελίδα στην [[:Κατηγορίαν:Σελίδες τεκμηρίωσης προτύπων]]",
"format": "inline"
}
</templatedata>
}}
[[Κατηγορίαν:Σελίδες τεκμηρίωσης προτύπων]]
</noinclude>
qa4bdw9hfojzh1ysre4f6q3k5yhi78h
Κατηγορίαν:Σελίδες τεκμηρίωσης προτύπων
14
3213
36378
2025-12-15T14:59:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]] {{Category TOC}}'
36378
wikitext
text/x-wiki
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]
{{Category TOC}}
l2f40o8tpt7tso0rx50dsd9h86iro3o
Πρότυπον:Category TOC
10
3214
36380
36379
2025-12-15T15:00:11Z
Εὐθυμένης
2777
36380
wikitext
text/x-wiki
{| role="navigation" border="0" align="center" class="plainlinks"
|-
| align="center" | '''Ευρετήριο:'''
| align="center" | [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Α}} Α] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Β}} Β] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Γ}} Γ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Δ}} Δ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ε}} Ε] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ζ}} Ζ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Η}} Η] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Θ}} Θ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ι}} Ι] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Κ}} Κ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Λ}} Λ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Μ}} Μ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ν}} Ν] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ξ}} Ξ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ο}} Ο] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Π}} Π] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ρ}} Ρ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Σ}} Σ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Τ}} Τ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Υ}} Υ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Φ}} Φ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Χ}} Χ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ψ}} Ψ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ω}} Ω]
|-
| align="center" | [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}}} Αρχή]
| align="center" | [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=A}} A] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=B}} B] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=C}} C] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=D}} D] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=E}} E] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=F}} F] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=G}} G] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=H}} H] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=I}} I] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=J}} J] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=K}} K] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=L}} L] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=M}} M] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=N}} N] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=O}} O] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=P}} P] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Q}} Q] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=R}} R] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=S}} S] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=T}} T] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=U}} U] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=V}} V] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=W}} W] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=X}} X] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Y}} Y] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Z}} Z]
|}<noinclude>
{{documentation | content =
== Χρήση ==
Αυτό το πρότυπο προσθέτει έναν [[Πίνακας περιεχομένων|πίνακα περιεχομένων]] (TOC) σε μια [[Βικιπαίδεια:Κατηγοριοποίηση|σελίδα κατηγορίας]]. Θα πρέπει να προστίθεται ''μόνο σε σελίδες κατηγοριών και δεν πρέπει να χρησιμοποιείται για κατηγορίες που περιέχουν λιγότερες από 200 σελίδες''.
== TemplateData ==
{{TemplateData header}}
<templatedata>
{
"params": {},
"description": "Προσθέτει έναν πίνακα περιεχομένων (TOC) σε μια σελίδα κατηγορίας.",
"format": "inline"
}
</templatedata>}}
[[Κατηγορίαν:Πρότυπα κατηγοριών|{{PAGENAME}}]]
</noinclude>
hzu1djbfqjv2nzuzkj54k5flwze1v1i
Πρότυπον:Υποσελίδα τεκμηρίωσης
10
3215
36382
36381
2025-12-15T15:02:02Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπον:Documentation subpage]] στην [[Πρότυπον:Υποσελίδα τεκμηρίωσης]]
36381
wikitext
text/x-wiki
<includeonly>{{#ifeq: {{lc:{{SUBPAGENAME}}}} | {{{override|τεκμηρίωση}}}
| <!-- doc page -->
</includeonly>{{
#ifeq: {{{doc-notice|show}}} | show
| {{#invoke:message box
| type = notice
| image = [[File:Edit-copy green.svg|link=]]
| text = '''Yποσελίδα τεκμηρίωσης για το {{{1|[[{{SUBJECTSPACE}}:{{BASEPAGENAME}}]]}}}'''.<br />
Περιέχει πληροφορίες χρήσης, κατηγορίες και περιεχόμενο που δεν αποτελεί τμήμα του αρχικού {{#ifeq:{{SUBJECTSPACE}}|{{ns:module}}|module|προτύπου}}.
}}
}}{{DEFAULTSORT:{{PAGENAME}}}}{{
#if: {{{inhibit|}}}
| <!-- να παραλείπεται η αυτόματη κατηγοριοποίηση -->
| <includeonly>[[Κατηγορίαν:Σελίδες τεκμηρίωσης προτύπων]]</includeonly>
}}<includeonly>
| <!-- εάν δεν βρίσκεται σε υποσελίδα /τεκμηρίωση, να μη συμβαίνει τίποτα -->
}}</includeonly><noinclude>[[Κατηγορίαν:Σελίδες τεκμηρίωσης προτύπων| ]]</noinclude>
j9ejkufjl7gmak7v420o73zqzu1fit2
Πρότυπον:Documentation subpage
10
3216
36383
2025-12-15T15:02:02Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπον:Documentation subpage]] στην [[Πρότυπον:Υποσελίδα τεκμηρίωσης]]
36383
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Υποσελίδα τεκμηρίωσης]]
ewjvpr31612ye1ac1yhpksn5vc7csdz
Πρότυπον:No redirect
10
3217
36384
2025-12-15T15:03:21Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{safesubst:<noinclude/>#if: {{safesubst:<noinclude/>#invoke:Redirect|isRedirect|{{{1}}}}} | <span class="plainlinks">[{{safesubst:<noinclude/>fullurl:{{{1}}}|redirect=no}} {{{2|{{{1}}}}}}]</span> | {{safesubst:<noinclude/>#if:{{{2|}}}|[[:{{safesubst:<noinclude/>FULLPAGENAME:{{{1}}}}}|{{{2}}}]]|[[:{{safesubst:<noinclude/>FULLPAGENAME:{{{1}}}}}]]}} }}<noinclude> {{Documentation}} </noinclude>'
36384
wikitext
text/x-wiki
{{safesubst:<noinclude/>#if: {{safesubst:<noinclude/>#invoke:Redirect|isRedirect|{{{1}}}}}
| <span class="plainlinks">[{{safesubst:<noinclude/>fullurl:{{{1}}}|redirect=no}} {{{2|{{{1}}}}}}]</span>
| {{safesubst:<noinclude/>#if:{{{2|}}}|[[:{{safesubst:<noinclude/>FULLPAGENAME:{{{1}}}}}|{{{2}}}]]|[[:{{safesubst:<noinclude/>FULLPAGENAME:{{{1}}}}}]]}}
}}<noinclude>
{{Documentation}}
</noinclude>
p5kg3clqhkb649rlqhyl3a0jrslzpel
Πρότυπον:Shortcut/styles.css
10
3218
36385
2025-12-15T15:04:20Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '.module-shortcutboxplain { float: right; margin: 0 0 0 1em; border: 1px solid var(--border-color-base); background: var(--background-color-interactive); padding: 0.3em 0.6em 0.2em 0.6em; text-align: center; font-size: 85%; } .module-shortcutboxleft { float: left; margin: 0 1em 0 0; } .module-shortcutlist { display: inline-block; border-bottom: 1px solid #aaa; margin-bottom: 0.2em; } .module-shortcutboxplain > ul { font-weight: bold;...'
36385
sanitized-css
text/css
.module-shortcutboxplain {
float: right;
margin: 0 0 0 1em;
border: 1px solid var(--border-color-base);
background: var(--background-color-interactive);
padding: 0.3em 0.6em 0.2em 0.6em;
text-align: center;
font-size: 85%;
}
.module-shortcutboxleft {
float: left;
margin: 0 1em 0 0;
}
.module-shortcutlist {
display: inline-block;
border-bottom: 1px solid #aaa;
margin-bottom: 0.2em;
}
.module-shortcutboxplain > ul {
font-weight: bold;
}
.module-shortcutanchordiv {
position: relative;
top: -3em;
}
li .module-shortcutanchordiv {
float: right; /* IE/Edge in list items */
}
.mbox-imageright .module-shortcutboxplain {
padding: 0.4em 1em 0.4em 1em;
line-height: 1.3;
margin: 0;
}
9so7fj79k4g0l0sw8ub2k0jtye7fp7s
Πρότυπον:Συντόμευση προτύπου
10
3219
36386
2025-12-15T15:05:11Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#invoke:Shortcut|main|template=yes}}</includeonly><noinclude>{{Documentation}}</noinclude>'
36386
wikitext
text/x-wiki
<includeonly>{{#invoke:Shortcut|main|template=yes}}</includeonly><noinclude>{{Documentation}}</noinclude>
me4jjte8wllgxkf22h7gbzu0e2tux3i
Πρότυπον:Template shortcut
10
3220
36387
2025-12-15T15:06:20Z
Εὐθυμένης
2777
Ανακατεύθυνση στη σελίδα [[Πρότυπον:Συντόμευση προτύπου]]
36387
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ[[Πρότυπον:Συντόμευση προτύπου]]
69wy0zcqtggd38vagc4oegkul6mjluj
Module:Shortcut/config
828
3221
36388
2025-12-15T15:07:14Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module holds configuration data for [[Module:Shortcut]]. return { -- The heading at the top of the shortcut box. It accepts the following parameter: -- $1 - the total number of shortcuts. (required) ['shortcut-heading'] = '[[Βικιπαίδεια:Συντόμευση|{{PLURAL:$1|Συντόμευση|Συντομεύσεις}}]]:', -- The error message to display when a shortcut is invalid (is not a string, or -- is the blank string). It...'
36388
Scribunto
text/plain
-- This module holds configuration data for [[Module:Shortcut]].
return {
-- The heading at the top of the shortcut box. It accepts the following parameter:
-- $1 - the total number of shortcuts. (required)
['shortcut-heading'] = '[[Βικιπαίδεια:Συντόμευση|{{PLURAL:$1|Συντόμευση|Συντομεύσεις}}]]:',
-- The error message to display when a shortcut is invalid (is not a string, or
-- is the blank string). It accepts the following parameter:
-- $1 - the number of the shortcut in the argument list. (required)
['invalid-shortcut-error'] = 'shortcut #$1 was invalid (shortcuts must be ' ..
'strings of at least one character in length)',
-- The error message to display when no shortcuts or other displayable content
-- were specified. (required)
['no-content-error'] = 'Error: no shortcuts were specified and the ' ..
mw.text.nowiki('|msg=') ..
' parameter was not set.',
-- A category to add when the no-content-error message is displayed. (optional)
['no-content-error-category'] = 'Shortcut templates with missing parameters',
-- The error category to add if the shortcut listed in the first parameter
-- doesn't exist. (optional)
['first-parameter-error-category'] = 'Wikipedia shortcut box first parameter needs fixing',
}
fe9i8h9qhja4zl1htpzg7rap0u653cy
Module:Shortcut
828
3222
36389
2025-12-15T15:08:16Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module implements {{shortcut}}. -- Set constants local CONFIG_MODULE = 'Module:Shortcut/config' -- Load required modules local checkType = require('libraryUtil').checkType local yesno = require('Module:Yesno') local p = {} local function message(msg, ...) return mw.message.newRawMessage(msg, ...):plain() end local function makeCategoryLink(cat) return string.format('[[%s:%s]]', mw.site.namespaces[14].name, cat) end function p._main(...'
36389
Scribunto
text/plain
-- This module implements {{shortcut}}.
-- Set constants
local CONFIG_MODULE = 'Module:Shortcut/config'
-- Load required modules
local checkType = require('libraryUtil').checkType
local yesno = require('Module:Yesno')
local p = {}
local function message(msg, ...)
return mw.message.newRawMessage(msg, ...):plain()
end
local function makeCategoryLink(cat)
return string.format('[[%s:%s]]', mw.site.namespaces[14].name, cat)
end
function p._main(shortcuts, options, frame, cfg)
checkType('_main', 1, shortcuts, 'table')
checkType('_main', 2, options, 'table', true)
options = options or {}
frame = frame or mw.getCurrentFrame()
cfg = cfg or mw.loadData(CONFIG_MODULE)
local templateMode = options.template and yesno(options.template)
local redirectMode = options.redirect and yesno(options.redirect)
local isCategorized = not options.category or yesno(options.category) ~= false
-- Validate shortcuts
for i, shortcut in ipairs(shortcuts) do
if type(shortcut) ~= 'string' or #shortcut < 1 then
error(message(cfg['invalid-shortcut-error'], i), 2)
end
end
-- Make the list items. These are the shortcuts plus any extra lines such
-- as options.msg.
local listItems = {}
for i, shortcut in ipairs(shortcuts) do
local templatePath, prefix
if templateMode then
-- Namespace detection
local titleObj = mw.title.new(shortcut, 10)
if titleObj.namespace == 10 then
templatePath = titleObj.fullText
else
templatePath = shortcut
end
prefix = options['pre' .. i] or options.pre or ''
end
if options.target and yesno(options.target) then
listItems[i] = templateMode
and string.format("{{%s[[%s|%s]]}}", prefix, templatePath, shortcut)
or string.format("[[%s]]", shortcut)
else
listItems[i] = frame:expandTemplate{
title = 'No redirect',
args = templateMode and {templatePath, shortcut} or {shortcut, shortcut}
}
if templateMode then
listItems[i] = string.format("{{%s%s}}", prefix, listItems[i])
end
end
end
table.insert(listItems, options.msg)
-- Return an error if we have nothing to display
if #listItems < 1 then
local msg = cfg['no-content-error']
msg = string.format('<strong class="error">%s</strong>', msg)
if isCategorized and cfg['no-content-error-category'] then
msg = msg .. makeCategoryLink(cfg['no-content-error-category'])
end
return msg
end
local root = mw.html.create()
root:wikitext(frame:extensionTag{ name = 'templatestyles', args = { src = 'Shortcut/styles.css'} })
-- Anchors
local anchorDiv = root
:tag('div')
:addClass('module-shortcutanchordiv')
for i, shortcut in ipairs(shortcuts) do
local anchor = mw.uri.anchorEncode(shortcut)
anchorDiv:tag('span'):attr('id', anchor)
end
-- Shortcut heading
local shortcutHeading
do
local nShortcuts = #shortcuts
if nShortcuts > 0 then
local headingMsg = options['shortcut-heading'] or
redirectMode and cfg['redirect-heading'] or
cfg['shortcut-heading']
shortcutHeading = message(headingMsg, nShortcuts)
shortcutHeading = frame:preprocess(shortcutHeading)
end
end
-- Shortcut box
local shortcutList = root
:tag('div')
:addClass('module-shortcutboxplain plainlist noprint')
:attr('role', 'note')
if options.float and options.float:lower() == 'left' then
shortcutList:addClass('module-shortcutboxleft')
end
if options.clear and options.clear ~= '' then
shortcutList:css('clear', options.clear)
end
if shortcutHeading then
shortcutList
:tag('div')
:addClass('module-shortcutlist')
:wikitext(shortcutHeading)
end
local list = shortcutList:tag('ul')
for i, item in ipairs(listItems) do
list:tag('li'):wikitext(item)
end
return tostring(root)
end
function p.main(frame)
local args = require('Module:Arguments').getArgs(frame)
-- Separate shortcuts from options
local shortcuts, options = {}, {}
for k, v in pairs(args) do
if type(k) == 'number' then
shortcuts[k] = v
else
options[k] = v
end
end
-- Compress the shortcut array, which may contain nils.
local function compressArray(t)
local nums, ret = {}, {}
for k in pairs(t) do
nums[#nums + 1] = k
end
table.sort(nums)
for i, num in ipairs(nums) do
ret[i] = t[num]
end
return ret
end
shortcuts = compressArray(shortcuts)
return p._main(shortcuts, options, frame)
end
return p
4jqk5gxekn99b9nsdu6rq56uiap5da8
Module:Redirect
828
3223
36390
2025-12-15T15:09:08Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module provides functions for getting the target of a redirect page. local p = {} -- Gets a mw.title object, using pcall to avoid generating script errors if we -- are over the expensive function count limit (among other possible causes). local function getTitle(...) local success, titleObj = pcall(mw.title.new, ...) if success then return titleObj else return nil end end -- Gets the name of a page that a redirect leads to, or ni...'
36390
Scribunto
text/plain
-- This module provides functions for getting the target of a redirect page.
local p = {}
-- Gets a mw.title object, using pcall to avoid generating script errors if we
-- are over the expensive function count limit (among other possible causes).
local function getTitle(...)
local success, titleObj = pcall(mw.title.new, ...)
if success then
return titleObj
else
return nil
end
end
-- Gets the name of a page that a redirect leads to, or nil if it isn't a
-- redirect.
function p.getTargetFromText(text)
return string.match(
text,
"^%s*#[Rr][Ee][Dd][Ii][Rr][Ee][Cc][Tt]%s*:?%s*%[%[([^%[%]]-)%]%]"
) or mw.ustring.match(
text,
"#[Αα][Νν][Αα][Κκ][Αα][Ττ][Εε][Υυ][Θθ][Υυ][Νν][Σσ][Ηη]%s*:?%s*%[%[%s*:?%s*(.-)[#%]]"
)
end
-- Gets the target of a redirect. If the page specified is not a redirect,
-- returns nil.
function p.getTarget(page)
-- Get the title object. Both page names and title objects are allowed
-- as input.
local titleObj
if type(page) == 'string' or type(page) == 'number' then
titleObj = getTitle(page)
elseif type(page) == 'table' and type(page.getContent) == 'function' then
titleObj = page
else
error(string.format(
"bad argument #1 to 'getTarget'"
.. " (string, number, or title object expected, got %s)",
type(page)
), 2)
end
if not titleObj or not titleObj.isRedirect then
return nil
end
-- Find the target by using string matching on the page content.
local target = p.getTargetFromText(titleObj:getContent() or "")
if target then
local targetTitle = getTitle(target)
if targetTitle then
return targetTitle.prefixedText
else
return nil
end
else
-- The page is a redirect, but matching failed. This indicates a bug in
-- the redirect matching pattern, so throw an error.
error(string.format(
'could not parse redirect on page "%s"',
titleObj.prefixedText
))
end
end
--[[
-- Given a single page name determines what page it redirects to and returns the
-- target page name, or the passed page name when not a redirect. The passed
-- page name can be given as plain text or as a page link.
--
-- Returns page name as plain text, or when the bracket parameter is given, as a
-- page link. Returns an error message when page does not exist or the redirect
-- target cannot be determined for some reason.
--]]
function p.luaMain(rname, bracket)
if type(rname) ~= "string" or not rname:find("%S") then
return nil
end
bracket = bracket and "[[%s]]" or "%s"
rname = rname:match("%[%[(.+)%]%]") or rname
local target = p.getTarget(rname)
local ret = target or rname
ret = getTitle(ret)
if ret then
ret = ret.prefixedText
return bracket:format(ret)
else
return nil
end
end
-- Provides access to the luaMain function from wikitext.
function p.main(frame)
local args = require('Module:Arguments').getArgs(frame, {frameOnly = true})
return p.luaMain(args[1], args.bracket) or ''
end
-- Returns "yes" if the specified page is a redirect, and the blank string
-- otherwise.
function p.isRedirect(frame)
local args = require('Module:Arguments').getArgs(frame, {frameOnly = true})
local titleObj = getTitle(args[1])
if not titleObj then
return ''
end
if titleObj.isRedirect then
return 'yes'
else
return ''
end
end
return p
aycwvzwwxek49dwrvqm2bevjlpa7vox
Πρότυπον:Distinguish
10
3224
36391
2025-12-15T15:10:20Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:Distinguish|distinguish}}<noinclude><!-- splitting these lines causes {{Documentation}} template to terminate green shading when Distinguish is used in /doc pages. --> {{Documentation}} <!-- Add categories to the /doc subpage and interwikis to Wikidata, not here! --> </noinclude>'
36391
wikitext
text/x-wiki
{{#invoke:Distinguish|distinguish}}<noinclude><!-- splitting these lines causes {{Documentation}} template to terminate green shading when Distinguish is used in /doc pages. -->
{{Documentation}}
<!-- Add categories to the /doc subpage and interwikis to Wikidata, not here! -->
</noinclude>
t4az5q8zekjr0kpgvlz6fgo7i77psk8
Module:Arguments
828
3225
36392
2025-12-15T15:11:30Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module provides easy processing of arguments passed to Scribunto from -- #invoke. It is intended for use by other Lua modules, and should not be -- called from #invoke directly. local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local arguments = {} -- Generate four different tidyVal functions, so that we don't have to check the -- options every time we call it. local function tidyValDefault(key, val) if...'
36392
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
Module:Documentation
828
3226
36393
2025-12-15T15:12:27Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module implements {{documentation}}. -- Get required modules. local getArgs = require('Module:Arguments').getArgs -- Get the config table. local cfg = mw.loadData('Module:Documentation/config') local p = {} -- Often-used functions. local ugsub = mw.ustring.gsub local format = mw.ustring.format ---------------------------------------------------------------------------- -- Helper functions -- -- These are defined as local functions, but...'
36393
Scribunto
text/plain
-- This module implements {{documentation}}.
-- Get required modules.
local getArgs = require('Module:Arguments').getArgs
-- Get the config table.
local cfg = mw.loadData('Module:Documentation/config')
local p = {}
-- Often-used functions.
local ugsub = mw.ustring.gsub
local format = mw.ustring.format
----------------------------------------------------------------------------
-- Helper functions
--
-- These are defined as local functions, but are made available in the p
-- table for testing purposes.
----------------------------------------------------------------------------
local function message(cfgKey, valArray, expectType)
--[[
-- Gets a message from the cfg table and formats it if appropriate.
-- The function raises an error if the value from the cfg table is not
-- of the type expectType. The default type for expectType is 'string'.
-- If the table valArray is present, strings such as $1, $2 etc. in the
-- message are substituted with values from the table keys [1], [2] etc.
-- For example, if the message "foo-message" had the value 'Foo $2 bar $1.',
-- message('foo-message', {'baz', 'qux'}) would return "Foo qux bar baz."
--]]
local msg = cfg[cfgKey]
expectType = expectType or 'string'
if type(msg) ~= expectType then
error('message: type error in message cfg.' .. cfgKey .. ' (' .. expectType .. ' expected, got ' .. type(msg) .. ')', 2)
end
if not valArray then
return msg
end
local function getMessageVal(match)
match = tonumber(match)
return valArray[match] or error('message: no value found for key $' .. match .. ' in message cfg.' .. cfgKey, 4)
end
return ugsub(msg, '$([1-9][0-9]*)', getMessageVal)
end
p.message = message
local function makeWikilink(page, display)
if display then
return format('[[%s|%s]]', page, display)
else
return format('[[%s]]', page)
end
end
p.makeWikilink = makeWikilink
local function makeCategoryLink(cat, sort)
local catns = mw.site.namespaces[14].name
return makeWikilink(catns .. ':' .. cat, sort)
end
p.makeCategoryLink = makeCategoryLink
local function makeUrlLink(url, display)
return format('[%s %s]', url, display)
end
p.makeUrlLink = makeUrlLink
local function makeToolbar(...)
local ret = {}
local lim = select('#', ...)
if lim < 1 then
return nil
end
for i = 1, lim do
ret[#ret + 1] = select(i, ...)
end
-- 'documentation-toolbar'
return format(
'<span class="%s">(%s)</span>',
message('toolbar-class'),
table.concat(ret, ' | ')
)
end
p.makeToolbar = makeToolbar
----------------------------------------------------------------------------
-- Argument processing
----------------------------------------------------------------------------
local function makeInvokeFunc(funcName)
return function (frame)
local args = getArgs(frame, {
valueFunc = function (key, value)
if type(value) == 'string' then
value = value:match('^%s*(.-)%s*$') -- Remove whitespace.
if key == 'heading' or value ~= '' then
return value
else
return nil
end
else
return value
end
end
})
return p[funcName](args)
end
end
----------------------------------------------------------------------------
-- Entry points
----------------------------------------------------------------------------
function p.nonexistent(frame)
if mw.title.getCurrentTitle().subpageText == 'testcases' then
return frame:expandTemplate{title = 'module test cases notice'}
else
return p.main(frame)
end
end
p.main = makeInvokeFunc('_main')
function p._main(args)
--[[
-- This function defines logic flow for the module.
-- @args - table of arguments passed by the user
--]]
local env = p.getEnvironment(args)
local root = mw.html.create()
root
:wikitext(p._getModuleWikitext(args, env))
:wikitext(p.protectionTemplate(env))
:wikitext(p.sandboxNotice(args, env))
:tag('div')
-- 'documentation-container'
:addClass(message('container'))
:attr('role', 'complementary')
:attr('aria-labelledby', args.heading ~= '' and 'documentation-heading' or nil)
:attr('aria-label', args.heading == '' and 'Documentation' or nil)
:newline()
:tag('div')
-- 'documentation'
:addClass(message('main-div-classes'))
:newline()
:wikitext(p._startBox(args, env))
:wikitext(p._content(args, env))
:tag('div')
-- 'documentation-clear'
:addClass(message('clear'))
:done()
:newline()
:done()
:wikitext(p._endBox(args, env))
:done()
:wikitext(p.addTrackingCategories(env))
-- 'Module:Documentation/styles.css'
return mw.getCurrentFrame():extensionTag (
'templatestyles', '', {src=cfg['templatestyles']
}) .. tostring(root)
end
----------------------------------------------------------------------------
-- Environment settings
----------------------------------------------------------------------------
function p.getEnvironment(args)
--[[
-- Returns a table with information about the environment, including title
-- objects and other namespace- or path-related data.
-- @args - table of arguments passed by the user
--
-- Title objects include:
-- env.title - the page we are making documentation for (usually the current title)
-- env.templateTitle - the template (or module, file, etc.)
-- env.docTitle - the /doc subpage.
-- env.sandboxTitle - the /sandbox subpage.
-- env.testcasesTitle - the /testcases subpage.
--
-- Data includes:
-- env.protectionLevels - the protection levels table of the title object.
-- env.subjectSpace - the number of the title's subject namespace.
-- env.docSpace - the number of the namespace the title puts its documentation in.
-- env.docpageBase - the text of the base page of the /doc, /sandbox and /testcases pages, with namespace.
-- env.compareUrl - URL of the Special:ComparePages page comparing the sandbox with the template.
--
-- All table lookups are passed through pcall so that errors are caught. If an error occurs, the value
-- returned will be nil.
--]]
local env, envFuncs = {}, {}
-- Set up the metatable. If triggered we call the corresponding function in the envFuncs table. The value
-- returned by that function is memoized in the env table so that we don't call any of the functions
-- more than once. (Nils won't be memoized.)
setmetatable(env, {
__index = function (t, key)
local envFunc = envFuncs[key]
if envFunc then
local success, val = pcall(envFunc)
if success then
env[key] = val -- Memoise the value.
return val
end
end
return nil
end
})
function envFuncs.title()
-- The title object for the current page, or a test page passed with args.page.
local title
local titleArg = args.page
if titleArg then
title = mw.title.new(titleArg)
else
title = mw.title.getCurrentTitle()
end
return title
end
function envFuncs.templateTitle()
--[[
-- The template (or module, etc.) title object.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
-- 'testcases-subpage' --> 'testcases'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local subpage = title.subpageText
if subpage == message('sandbox-subpage') or subpage == message('testcases-subpage') then
return mw.title.makeTitle(subjectSpace, title.baseText)
else
return mw.title.makeTitle(subjectSpace, title.text)
end
end
function envFuncs.docTitle()
--[[
-- Title object of the /doc subpage.
-- Messages:
-- 'doc-subpage' --> 'doc'
--]]
local title = env.title
local docname = args[1] -- User-specified doc page.
local docpage
if docname then
docpage = docname
else
docpage = env.docpageBase .. '/' .. message('doc-subpage')
end
return mw.title.new(docpage)
end
function envFuncs.sandboxTitle()
--[[
-- Title object for the /sandbox subpage.
-- Messages:
-- 'sandbox-subpage' --> 'sandbox'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('sandbox-subpage'))
end
function envFuncs.testcasesTitle()
--[[
-- Title object for the /testcases subpage.
-- Messages:
-- 'testcases-subpage' --> 'testcases'
--]]
return mw.title.new(env.docpageBase .. '/' .. message('testcases-subpage'))
end
function envFuncs.protectionLevels()
-- The protection levels table of the title object.
return env.title.protectionLevels
end
function envFuncs.subjectSpace()
-- The subject namespace number.
return mw.site.namespaces[env.title.namespace].subject.id
end
function envFuncs.docSpace()
-- The documentation namespace number. For most namespaces this is the
-- same as the subject namespace. However, pages in the Article, File,
-- MediaWiki or Category namespaces must have their /doc, /sandbox and
-- /testcases pages in talk space.
local subjectSpace = env.subjectSpace
if subjectSpace == 0 or subjectSpace == 6 or subjectSpace == 8 or subjectSpace == 14 then
return subjectSpace + 1
else
return subjectSpace
end
end
function envFuncs.docpageBase()
-- The base page of the /doc, /sandbox, and /testcases subpages.
-- For some namespaces this is the talk page, rather than the template page.
local templateTitle = env.templateTitle
local docSpace = env.docSpace
local docSpaceText = mw.site.namespaces[docSpace].name
-- Assemble the link. docSpace is never the main namespace, so we can hardcode the colon.
return docSpaceText .. ':' .. templateTitle.text
end
function envFuncs.compareUrl()
-- Diff link between the sandbox and the main template using [[Special:ComparePages]].
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
if templateTitle.exists and sandboxTitle.exists then
local compareUrl = mw.uri.canonicalUrl(
'Special:ComparePages',
{ page1 = templateTitle.prefixedText, page2 = sandboxTitle.prefixedText}
)
return tostring(compareUrl)
else
return nil
end
end
return env
end
----------------------------------------------------------------------------
-- Auxiliary templates
----------------------------------------------------------------------------
p.getModuleWikitext = makeInvokeFunc('_getModuleWikitext')
function p._getModuleWikitext(args, env)
local currentTitle = mw.title.getCurrentTitle()
if currentTitle.contentModel ~= 'Scribunto' then return end
pcall(require, currentTitle.prefixedText) -- if it fails, we don't care
local moduleWikitext = package.loaded["Module:Module wikitext"]
if moduleWikitext then
return moduleWikitext.main()
end
end
function p.sandboxNotice(args, env)
--[=[
-- Generates a sandbox notice for display above sandbox pages.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-notice-image' --> '[[File:Sandbox.svg|50px|alt=|link=]]'
-- 'sandbox-notice-blurb' --> 'This is the $1 for $2.'
-- 'sandbox-notice-diff-blurb' --> 'This is the $1 for $2 ($3).'
-- 'sandbox-notice-pagetype-template' --> '[[Wikipedia:Template test cases|template sandbox]] page'
-- 'sandbox-notice-pagetype-module' --> '[[Wikipedia:Template test cases|module sandbox]] page'
-- 'sandbox-notice-pagetype-other' --> 'sandbox page'
-- 'sandbox-notice-compare-link-display' --> 'diff'
-- 'sandbox-notice-testcases-blurb' --> 'See also the companion subpage for $1.'
-- 'sandbox-notice-testcases-link-display' --> 'test cases'
-- 'sandbox-category' --> 'Template sandboxes'
-- 'module-sandbox-category' --> 'Module sandboxes'
-- 'other-sandbox-category' --> 'Sandboxes outside of template or module namespace'
--]=]
local title = env.title
local sandboxTitle = env.sandboxTitle
local templateTitle = env.templateTitle
local subjectSpace = env.subjectSpace
if not (subjectSpace and title and sandboxTitle and templateTitle
and mw.title.equals(title, sandboxTitle)) then
return nil
end
-- Build the table of arguments to pass to {{ombox}}. We need just two fields, "image" and "text".
local omargs = {}
omargs.image = message('sandbox-notice-image')
-- Get the text. We start with the opening blurb, which is something like
-- "This is the template sandbox for [[Template:Foo]] (diff)."
local text = ''
local pagetype, sandboxCat
if subjectSpace == 10 then
pagetype = message('sandbox-notice-pagetype-template')
sandboxCat = message('sandbox-category')
elseif subjectSpace == 828 then
pagetype = message('sandbox-notice-pagetype-module')
sandboxCat = message('module-sandbox-category')
else
pagetype = message('sandbox-notice-pagetype-other')
sandboxCat = message('other-sandbox-category')
end
local templateLink = makeWikilink(templateTitle.prefixedText)
local compareUrl = env.compareUrl
if compareUrl then
local compareDisplay = message('sandbox-notice-compare-link-display')
local compareLink = makeUrlLink(compareUrl, compareDisplay)
text = text .. message('sandbox-notice-diff-blurb', {pagetype, templateLink, compareLink})
else
text = text .. message('sandbox-notice-blurb', {pagetype, templateLink})
end
-- Get the test cases page blurb if the page exists. This is something like
-- "See also the companion subpage for [[Template:Foo/testcases|test cases]]."
local testcasesTitle = env.testcasesTitle
if testcasesTitle and testcasesTitle.exists then
if testcasesTitle.contentModel == "Scribunto" then
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesRunLinkDisplay = message('sandbox-notice-testcases-run-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-run-blurb', {testcasesLink, testcasesRunLink})
else
local testcasesLinkDisplay = message('sandbox-notice-testcases-link-display')
local testcasesLink = makeWikilink(testcasesTitle.prefixedText, testcasesLinkDisplay)
text = text .. '<br />' .. message('sandbox-notice-testcases-blurb', {testcasesLink})
end
end
-- Add the sandbox to the sandbox category.
omargs.text = text .. makeCategoryLink(sandboxCat)
-- 'documentation-clear'
return '<div class="' .. message('clear') .. '"></div>'
.. require('Module:Message box').main('ombox', omargs)
end
function p.protectionTemplate(env)
-- Generates the padlock icon in the top right.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'protection-template' --> 'pp-template'
-- 'protection-template-args' --> {docusage = 'yes'}
local protectionLevels = env.protectionLevels
if not protectionLevels then
return nil
end
local editProt = protectionLevels.edit and protectionLevels.edit[1]
local moveProt = protectionLevels.move and protectionLevels.move[1]
if editProt then
-- The page is edit-protected.
return require('Module:Protection banner')._main{
message('protection-reason-edit'), small = true
}
elseif moveProt and moveProt ~= 'autoconfirmed' then
-- The page is move-protected but not edit-protected. Exclude move
-- protection with the level "autoconfirmed", as this is equivalent to
-- no move protection at all.
return require('Module:Protection banner')._main{
action = 'move', small = true
}
else
return nil
end
end
----------------------------------------------------------------------------
-- Start box
----------------------------------------------------------------------------
p.startBox = makeInvokeFunc('_startBox')
function p._startBox(args, env)
--[[
-- This function generates the start box.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- The actual work is done by p.makeStartBoxLinksData and p.renderStartBoxLinks which make
-- the [view] [edit] [history] [purge] links, and by p.makeStartBoxData and p.renderStartBox
-- which generate the box HTML.
--]]
env = env or p.getEnvironment(args)
local links
local content = args.content
if not content or args[1] then
-- No need to include the links if the documentation is on the template page itself.
local linksData = p.makeStartBoxLinksData(args, env)
if linksData then
links = p.renderStartBoxLinks(linksData)
end
end
-- Generate the start box html.
local data = p.makeStartBoxData(args, env, links)
if data then
return p.renderStartBox(data)
else
-- User specified no heading.
return nil
end
end
function p.makeStartBoxLinksData(args, env)
--[[
-- Does initial processing of data to make the [view] [edit] [history] [purge] links.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'view-link-display' --> 'view'
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'purge-link-display' --> 'purge'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'docpage-preload' --> 'Template:Documentation/preload'
-- 'create-link-display' --> 'create'
--]]
local subjectSpace = env.subjectSpace
local title = env.title
local docTitle = env.docTitle
if not title or not docTitle then
return nil
end
if docTitle.isRedirect then
docTitle = docTitle.redirectTarget
end
-- Create link if /doc doesn't exist.
local preload = args.preload
if not preload then
if subjectSpace == 828 then -- Module namespace
preload = message('module-preload')
else
preload = message('docpage-preload')
end
end
return {
title = title,
docTitle = docTitle,
-- View, display, edit, and purge links if /doc exists.
viewLinkDisplay = message('view-link-display'),
editLinkDisplay = message('edit-link-display'),
historyLinkDisplay = message('history-link-display'),
purgeLinkDisplay = message('purge-link-display'),
preload = preload,
createLinkDisplay = message('create-link-display')
}
end
function p.renderStartBoxLinks(data)
--[[
-- Generates the [view][edit][history][purge] or [create][purge] links from the data table.
-- @data - a table of data generated by p.makeStartBoxLinksData
--]]
local docTitle = data.docTitle
-- yes, we do intend to purge the template page on which the documentation appears
local purgeLink = makeWikilink("Special:Purge/" .. data.title.prefixedText, data.purgeLinkDisplay)
if docTitle.exists then
local viewLink = makeWikilink(docTitle.prefixedText, data.viewLinkDisplay)
local editLink = makeWikilink("Special:EditPage/" .. docTitle.prefixedText, data.editLinkDisplay)
local historyLink = makeWikilink("Special:PageHistory/" .. docTitle.prefixedText, data.historyLinkDisplay)
return "[" .. viewLink .. "] [" .. editLink .. "] [" .. historyLink .. "] [" .. purgeLink .. "]"
else
local createLink = makeUrlLink(docTitle:canonicalUrl{action = 'edit', preload = data.preload}, data.createLinkDisplay)
return "[" .. createLink .. "] [" .. purgeLink .. "]"
end
return ret
end
function p.makeStartBoxData(args, env, links)
--[=[
-- Does initial processing of data to pass to the start-box render function, p.renderStartBox.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- @links - a string containing the [view][edit][history][purge] links - could be nil if there's an error.
--
-- Messages:
-- 'documentation-icon-wikitext' --> '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]]'
-- 'template-namespace-heading' --> 'Template documentation'
-- 'module-namespace-heading' --> 'Module documentation'
-- 'file-namespace-heading' --> 'Summary'
-- 'other-namespaces-heading' --> 'Documentation'
-- 'testcases-create-link-display' --> 'create'
--]=]
local subjectSpace = env.subjectSpace
if not subjectSpace then
-- Default to an "other namespaces" namespace, so that we get at least some output
-- if an error occurs.
subjectSpace = 2
end
local data = {}
-- Heading
local heading = args.heading -- Blank values are not removed.
if heading == '' then
-- Don't display the start box if the heading arg is defined but blank.
return nil
end
if heading then
data.heading = heading
elseif subjectSpace == 10 then -- Template namespace
data.heading = message('documentation-icon-wikitext') .. ' ' .. message('template-namespace-heading')
elseif subjectSpace == 828 then -- Module namespace
data.heading = message('documentation-icon-wikitext') .. ' ' .. message('module-namespace-heading')
elseif subjectSpace == 6 then -- File namespace
data.heading = message('file-namespace-heading')
else
data.heading = message('other-namespaces-heading')
end
-- Heading CSS
local headingStyle = args['heading-style']
if headingStyle then
data.headingStyleText = headingStyle
else
-- 'documentation-heading'
data.headingClass = message('main-div-heading-class')
end
-- Data for the [view][edit][history][purge] or [create] links.
if links then
-- 'mw-editsection-like plainlinks'
data.linksClass = message('start-box-link-classes')
data.links = links
end
return data
end
function p.renderStartBox(data)
-- Renders the start box html.
-- @data - a table of data generated by p.makeStartBoxData.
local sbox = mw.html.create('div')
sbox
-- 'documentation-startbox'
:addClass(message('start-box-class'))
:newline()
:tag('span')
:addClass(data.headingClass)
:attr('id', 'documentation-heading')
:cssText(data.headingStyleText)
:wikitext(data.heading)
local links = data.links
if links then
sbox:tag('span')
:addClass(data.linksClass)
:attr('id', data.linksId)
:wikitext(links)
end
return tostring(sbox)
end
----------------------------------------------------------------------------
-- Documentation content
----------------------------------------------------------------------------
p.content = makeInvokeFunc('_content')
function p._content(args, env)
-- Displays the documentation contents
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
local content = args.content
if not content and docTitle and docTitle.exists then
content = args._content or mw.getCurrentFrame():expandTemplate{title = docTitle.prefixedText}
end
-- The line breaks below are necessary so that "=== Headings ===" at the start and end
-- of docs are interpreted correctly.
return '\n' .. (content or '') .. '\n'
end
p.contentTitle = makeInvokeFunc('_contentTitle')
function p._contentTitle(args, env)
env = env or p.getEnvironment(args)
local docTitle = env.docTitle
if not args.content and docTitle and docTitle.exists then
return docTitle.prefixedText
else
return ''
end
end
----------------------------------------------------------------------------
-- End box
----------------------------------------------------------------------------
p.endBox = makeInvokeFunc('_endBox')
function p._endBox(args, env)
--[=[
-- This function generates the end box (also known as the link box).
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
--]=]
-- Get environment data.
env = env or p.getEnvironment(args)
local subjectSpace = env.subjectSpace
local docTitle = env.docTitle
if not subjectSpace or not docTitle then
return nil
end
-- Check whether we should output the end box at all. Add the end
-- box by default if the documentation exists or if we are in the
-- user, module or template namespaces.
local linkBox = args['link box']
if linkBox == 'off'
or not (
docTitle.exists
or subjectSpace == 2
or subjectSpace == 828
or subjectSpace == 10
)
then
return nil
end
-- Assemble the link box.
local text = ''
if linkBox then
text = text .. linkBox
else
text = text .. (p.makeDocPageBlurb(args, env) or '') -- "This documentation is transcluded from [[Foo]]."
if subjectSpace == 2 or subjectSpace == 10 or subjectSpace == 828 then
-- We are in the user, template or module namespaces.
-- Add sandbox and testcases links.
-- "Editors can experiment in this template's sandbox and testcases pages."
text = text .. (p.makeExperimentBlurb(args, env) or '') .. '<br />'
if not args.content and not args[1] then
-- "Please add categories to the /doc subpage."
-- Don't show this message with inline docs or with an explicitly specified doc page,
-- as then it is unclear where to add the categories.
text = text .. (p.makeCategoriesBlurb(args, env) or '')
end
text = text .. ' ' .. (p.makeSubpagesBlurb(args, env) or '') --"Subpages of this template"
end
end
local box = mw.html.create('div')
-- 'documentation-metadata'
box:attr('role', 'note')
:addClass(message('end-box-class'))
-- 'plainlinks'
:addClass(message('end-box-plainlinks'))
:wikitext(text)
:done()
return '\n' .. tostring(box)
end
function p.makeDocPageBlurb(args, env)
--[=[
-- Makes the blurb "This documentation is transcluded from [[Template:Foo]] (edit, history)".
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'edit-link-display' --> 'edit'
-- 'history-link-display' --> 'history'
-- 'transcluded-from-blurb' -->
-- 'The above [[Wikipedia:Template documentation|documentation]]
-- is [[Help:Transclusion|transcluded]] from $1.'
-- 'module-preload' --> 'Template:Documentation/preload-module-doc'
-- 'create-link-display' --> 'create'
-- 'create-module-doc-blurb' -->
-- 'You might want to $1 a documentation page for this [[Wikipedia:Lua|Scribunto module]].'
--]=]
local docTitle = env.docTitle
if not docTitle then
return nil
end
if docTitle.exists then
-- /doc exists; link to it.
local docLink = makeWikilink(docTitle.prefixedText)
local editDisplay = message('edit-link-display')
local editLink = makeWikilink("Special:EditPage/" .. docTitle.prefixedText, editDisplay)
local historyDisplay = message('history-link-display')
local historyLink = makeWikilink("Special:PageHistory/" .. docTitle.prefixedText, historyDisplay)
return message('transcluded-from-blurb', {docLink})
.. ' '
.. makeToolbar(editLink, historyLink)
.. '<br />'
elseif env.subjectSpace == 828 then
-- /doc does not exist; ask to create it.
local createUrl = docTitle:canonicalUrl{action = 'edit', preload = message('module-preload')}
local createDisplay = message('create-link-display')
local createLink = makeUrlLink(createUrl, createDisplay)
return message('create-module-doc-blurb', {createLink})
.. '<br />'
end
end
function p.makeExperimentBlurb(args, env)
--[[
-- Renders the text "Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
--
-- Messages:
-- 'sandbox-link-display' --> 'sandbox'
-- 'sandbox-edit-link-display' --> 'edit'
-- 'compare-link-display' --> 'diff'
-- 'module-sandbox-preload' --> 'Template:Documentation/preload-module-sandbox'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'sandbox-create-link-display' --> 'create'
-- 'mirror-edit-summary' --> 'Create sandbox version of $1'
-- 'mirror-link-display' --> 'mirror'
-- 'mirror-link-preload' --> 'Template:Documentation/mirror'
-- 'sandbox-link-display' --> 'sandbox'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display'--> 'edit'
-- 'template-sandbox-preload' --> 'Template:Documentation/preload-sandbox'
-- 'testcases-create-link-display' --> 'create'
-- 'testcases-link-display' --> 'testcases'
-- 'testcases-edit-link-display' --> 'edit'
-- 'module-testcases-preload' --> 'Template:Documentation/preload-module-testcases'
-- 'template-testcases-preload' --> 'Template:Documentation/preload-testcases'
-- 'experiment-blurb-module' --> 'Editors can experiment in this module's $1 and $2 pages.'
-- 'experiment-blurb-template' --> 'Editors can experiment in this template's $1 and $2 pages.'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
local sandboxTitle = env.sandboxTitle
local testcasesTitle = env.testcasesTitle
local templatePage = templateTitle.prefixedText
if not subjectSpace or not templateTitle or not sandboxTitle or not testcasesTitle then
return nil
end
-- Make links.
local sandboxLinks, testcasesLinks
if sandboxTitle.exists then
local sandboxPage = sandboxTitle.prefixedText
local sandboxDisplay = message('sandbox-link-display')
local sandboxLink = makeWikilink(sandboxPage, sandboxDisplay)
local sandboxEditDisplay = message('sandbox-edit-link-display')
local sandboxEditLink = makeWikilink("Special:EditPage/" .. sandboxPage, sandboxEditDisplay)
local compareUrl = env.compareUrl
local compareLink
if compareUrl then
local compareDisplay = message('compare-link-display')
compareLink = makeUrlLink(compareUrl, compareDisplay)
end
sandboxLinks = sandboxLink .. ' ' .. makeToolbar(sandboxEditLink, compareLink)
else
local sandboxPreload
if subjectSpace == 828 then
sandboxPreload = message('module-sandbox-preload')
else
sandboxPreload = message('template-sandbox-preload')
end
local sandboxCreateUrl = sandboxTitle:canonicalUrl{action = 'edit', preload = sandboxPreload}
local sandboxCreateDisplay = message('sandbox-create-link-display')
local sandboxCreateLink = makeUrlLink(sandboxCreateUrl, sandboxCreateDisplay)
local mirrorSummary = message('mirror-edit-summary', {makeWikilink(templatePage)})
local mirrorPreload = message('mirror-link-preload')
local mirrorUrl = sandboxTitle:canonicalUrl{action = 'edit', preload = mirrorPreload, summary = mirrorSummary}
if subjectSpace == 828 then
mirrorUrl = sandboxTitle:canonicalUrl{action = 'edit', preload = templateTitle.prefixedText, summary = mirrorSummary}
end
local mirrorDisplay = message('mirror-link-display')
local mirrorLink = makeUrlLink(mirrorUrl, mirrorDisplay)
sandboxLinks = message('sandbox-link-display') .. ' ' .. makeToolbar(sandboxCreateLink, mirrorLink)
end
if testcasesTitle.exists then
local testcasesPage = testcasesTitle.prefixedText
local testcasesDisplay = message('testcases-link-display')
local testcasesLink = makeWikilink(testcasesPage, testcasesDisplay)
local testcasesEditUrl = testcasesTitle:canonicalUrl{action = 'edit'}
local testcasesEditDisplay = message('testcases-edit-link-display')
local testcasesEditLink = makeWikilink("Special:EditPage/" .. testcasesPage, testcasesEditDisplay)
-- for Modules, add testcases run link if exists
if testcasesTitle.contentModel == "Scribunto" and testcasesTitle.talkPageTitle and testcasesTitle.talkPageTitle.exists then
local testcasesRunLinkDisplay = message('testcases-run-link-display')
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay)
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink, testcasesRunLink)
else
testcasesLinks = testcasesLink .. ' ' .. makeToolbar(testcasesEditLink)
end
else
local testcasesPreload
if subjectSpace == 828 then
testcasesPreload = message('module-testcases-preload')
else
testcasesPreload = message('template-testcases-preload')
end
local testcasesCreateUrl = testcasesTitle:canonicalUrl{action = 'edit', preload = testcasesPreload}
local testcasesCreateDisplay = message('testcases-create-link-display')
local testcasesCreateLink = makeUrlLink(testcasesCreateUrl, testcasesCreateDisplay)
testcasesLinks = message('testcases-link-display') .. ' ' .. makeToolbar(testcasesCreateLink)
end
local messageName
if subjectSpace == 828 then
messageName = 'experiment-blurb-module'
else
messageName = 'experiment-blurb-template'
end
return message(messageName, {sandboxLinks, testcasesLinks})
end
function p.makeCategoriesBlurb(args, env)
--[[
-- Generates the text "Please add categories to the /doc subpage."
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'doc-link-display' --> '/doc'
-- 'add-categories-blurb' --> 'Please add categories to the $1 subpage.'
--]]
local docTitle = env.docTitle
if not docTitle then
return nil
end
local docPathLink = makeWikilink(docTitle.prefixedText, message('doc-link-display'))
return message('add-categories-blurb', {docPathLink})
end
function p.makeSubpagesBlurb(args, env)
--[[
-- Generates the "Subpages of this template" link.
-- @args - a table of arguments passed by the user
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'template-pagetype' --> 'template'
-- 'module-pagetype' --> 'module'
-- 'default-pagetype' --> 'page'
-- 'subpages-link-display' --> 'Subpages of this $1'
--]]
local subjectSpace = env.subjectSpace
local templateTitle = env.templateTitle
if not subjectSpace or not templateTitle then
return nil
end
local pagetype
if subjectSpace == 10 then
pagetype = message('template-pagetype')
elseif subjectSpace == 828 then
pagetype = message('module-pagetype')
else
pagetype = message('default-pagetype')
end
local subpagesLink = makeWikilink(
'Special:PrefixIndex/' .. templateTitle.prefixedText .. '/',
message('subpages-link-display', {pagetype})
)
return message('subpages-blurb', {subpagesLink})
end
----------------------------------------------------------------------------
-- Tracking categories
----------------------------------------------------------------------------
function p.addTrackingCategories(env)
--[[
-- Check if {{documentation}} is transcluded on a /doc or /testcases page.
-- @env - environment table containing title objects, etc., generated with p.getEnvironment
-- Messages:
-- 'display-strange-usage-category' --> true
-- 'doc-subpage' --> 'doc'
-- 'testcases-subpage' --> 'testcases'
-- 'strange-usage-category' --> 'Wikipedia pages with strange ((documentation)) usage'
--
-- /testcases pages in the module namespace are not categorised, as they may have
-- {{documentation}} transcluded automatically.
--]]
local title = env.title
local subjectSpace = env.subjectSpace
if not title or not subjectSpace then
return nil
end
local subpage = title.subpageText
if message('display-strange-usage-category', nil, 'boolean')
and (
subpage == message('doc-subpage')
or subjectSpace ~= 828 and subpage == message('testcases-subpage')
)
then
return makeCategoryLink(message('strange-usage-category'))
end
return ''
end
return p
p33g4x3fxmkanhsxkrtbu5ap9297k3g
Module:Documentation/config
828
3227
36707
36394
2025-12-15T22:43:59Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
36707
Scribunto
text/plain
----------------------------------------------------------------------------------------------------
--
-- Configuration for Module:Documentation
--
-- Here you can set the values of the parameters and messages used in Module:Documentation to
-- localise it to your wiki and your language. Unless specified otherwise, values given here
-- should be string values.
----------------------------------------------------------------------------------------------------
local cfg = {} -- Do not edit this line.
----------------------------------------------------------------------------------------------------
-- Protection template configuration
----------------------------------------------------------------------------------------------------
-- cfg['protection-reason-edit']
-- The protection reason for edit-protected templates to pass to
-- [[Module:Protection banner]].
cfg['protection-reason-edit'] = 'template'
--[[
----------------------------------------------------------------------------------------------------
-- Sandbox notice configuration
--
-- On sandbox pages the module can display a template notifying users that the current page is a
-- sandbox, and the location of test cases pages, etc. The module decides whether the page is a
-- sandbox or not based on the value of cfg['sandbox-subpage']. The following settings configure the
-- messages that the notices contains.
----------------------------------------------------------------------------------------------------
--]]
-- cfg['sandbox-notice-image']
-- The image displayed in the sandbox notice.
cfg['sandbox-notice-image'] = '[[Image:Sandbox.svg|50px|alt=|link=]]'
--[[
-- cfg['sandbox-notice-pagetype-template']
-- cfg['sandbox-notice-pagetype-module']
-- cfg['sandbox-notice-pagetype-other']
-- The page type of the sandbox page. The message that is displayed depends on the current subject
-- namespace. This message is used in either cfg['sandbox-notice-blurb'] or
-- cfg['sandbox-notice-diff-blurb'].
--]]
cfg['sandbox-notice-pagetype-template'] = 'σελίδα είναι το [[:en:w:Wikipedia:Template sandbox and test cases|πρόχειρο προτύπου]]'
cfg['sandbox-notice-pagetype-module'] = 'σελίδα είναι το [[:en:w:Wikipedia:Template sandbox and test cases|πρόχειρο module]]'
cfg['sandbox-notice-pagetype-other'] = 'σελίδα είναι το πρόχειρο'
--[[
-- cfg['sandbox-notice-blurb']
-- cfg['sandbox-notice-diff-blurb']
-- cfg['sandbox-notice-diff-display']
-- Either cfg['sandbox-notice-blurb'] or cfg['sandbox-notice-diff-blurb'] is the opening sentence
-- of the sandbox notice. The latter has a diff link, but the former does not. $1 is the page
-- type, which is either cfg['sandbox-notice-pagetype-template'],
-- cfg['sandbox-notice-pagetype-module'] or cfg['sandbox-notice-pagetype-other'] depending what
-- namespace we are in. $2 is a link to the main template page, and $3 is a diff link between
-- the sandbox and the main template. The display value of the diff link is set by
-- cfg['sandbox-notice-compare-link-display'].
--]]
cfg['sandbox-notice-blurb'] = 'Αυτή η $1 για το $2.'
cfg['sandbox-notice-diff-blurb'] = 'Αυτή η $1 για το $2 ($3).'
cfg['sandbox-notice-compare-link-display'] = 'διαφορές'
--[[
-- cfg['sandbox-notice-testcases-blurb']
-- cfg['sandbox-notice-testcases-link-display']
-- cfg['sandbox-notice-testcases-run-blurb']
-- cfg['sandbox-notice-testcases-run-link-display']
-- cfg['sandbox-notice-testcases-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit. $1 is a link to the test cases page.
-- cfg['sandbox-notice-testcases-link-display'] is the display value for that link.
-- cfg['sandbox-notice-testcases-run-blurb'] is a sentence notifying the user that there is a test cases page
-- corresponding to this sandbox that they can edit, along with a link to run it. $1 is a link to the test
-- cases page, and $2 is a link to the page to run it.
-- cfg['sandbox-notice-testcases-run-link-display'] is the display value for the link to run the test
-- cases.
--]]
cfg['sandbox-notice-testcases-blurb'] = 'See also the companion subpage for $1.'
cfg['sandbox-notice-testcases-link-display'] = 'test cases'
cfg['sandbox-notice-testcases-run-blurb'] = 'See also the companion subpage for $1 ($2).'
cfg['sandbox-notice-testcases-run-link-display'] = 'run'
-- cfg['sandbox-category'] - A category to add to all template sandboxes.
-- cfg['module-sandbox-category'] - A category to add to all module sandboxes.
-- cfg['module-sandbox-category'] - A category to add to all sandboxe not in templates or modules.
cfg['sandbox-category'] = 'Πρόχειρα προτύπων'
cfg['module-sandbox-category'] = 'Πρόχειρα Module'
cfg['other-sandbox-category'] = 'Sandboxes outside of template or module namespace'
----------------------------------------------------------------------------------------------------
-- Start box configuration
----------------------------------------------------------------------------------------------------
-- cfg['documentation-icon-wikitext']
-- The wikitext for the icon shown at the top of the template.
cfg['documentation-icon-wikitext'] = '[[File:Test Template Info-Icon - Version (2).svg|50px|link=|alt=]]'
-- cfg['template-namespace-heading']
-- The heading shown in the template namespace.
cfg['template-namespace-heading'] = 'Τεκμηρίωση προτύπου'
-- cfg['module-namespace-heading']
-- The heading shown in the module namespace.
cfg['module-namespace-heading'] = 'Τεκμηρίωση module'
-- cfg['file-namespace-heading']
-- The heading shown in the file namespace.
cfg['file-namespace-heading'] = 'Σύνοψη'
-- cfg['other-namespaces-heading']
-- The heading shown in other namespaces.
cfg['other-namespaces-heading'] = 'Τεκμηρίωση'
-- cfg['view-link-display']
-- The text to display for "view" links.
cfg['view-link-display'] = 'προβολή'
-- cfg['edit-link-display']
-- The text to display for "edit" links.
cfg['edit-link-display'] = 'επεξεργασία'
-- cfg['history-link-display']
-- The text to display for "history" links.
cfg['history-link-display'] = 'ιστορικό'
-- cfg['purge-link-display']
-- The text to display for "purge" links.
cfg['purge-link-display'] = 'ανανέωση'
-- cfg['create-link-display']
-- The text to display for "create" links.
cfg['create-link-display'] = 'δημιουργία'
----------------------------------------------------------------------------------------------------
-- Link box (end box) configuration
----------------------------------------------------------------------------------------------------
-- cfg['transcluded-from-blurb']
-- Notice displayed when the docs are transcluded from another page. $1 is a wikilink to that page.
cfg['transcluded-from-blurb'] = 'Η παραπάνω [[:en:w:Wikipedia:Template documentation|τεκμηρίωση]] [[:en:w:Wikipedia:Transclusion|ενσωματώνεται]] από τη σελίδα $1.'
--[[
-- cfg['create-module-doc-blurb']
-- Notice displayed in the module namespace when the documentation subpage does not exist.
-- $1 is a link to create the documentation page with the preload cfg['module-preload'] and the
-- display cfg['create-link-display'].
--]]
cfg['create-module-doc-blurb'] = 'Μπορείτε να συμβάλλετε στη $1 σελίδας τεκμηρίωσης για αυτό το [[:en:w:Wikipedia:Lua|Scribunto module]].'
----------------------------------------------------------------------------------------------------
-- Experiment blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['experiment-blurb-template']
-- cfg['experiment-blurb-module']
-- The experiment blurb is the text inviting editors to experiment in sandbox and test cases pages.
-- It is only shown in the template and module namespaces. With the default English settings, it
-- might look like this:
--
-- Editors can experiment in this template's sandbox (edit | diff) and testcases (edit) pages.
--
-- In this example, "sandbox", "edit", "diff", "testcases", and "edit" would all be links.
--
-- There are two versions, cfg['experiment-blurb-template'] and cfg['experiment-blurb-module'], depending
-- on what namespace we are in.
--
-- Parameters:
--
-- $1 is a link to the sandbox page. If the sandbox exists, it is in the following format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-edit-link-display'] | cfg['compare-link-display'])
--
-- If the sandbox doesn't exist, it is in the format:
--
-- cfg['sandbox-link-display'] (cfg['sandbox-create-link-display'] | cfg['mirror-link-display'])
--
-- The link for cfg['sandbox-create-link-display'] link preloads the page with cfg['template-sandbox-preload']
-- or cfg['module-sandbox-preload'], depending on the current namespace. The link for cfg['mirror-link-display']
-- loads a default edit summary of cfg['mirror-edit-summary'].
--
-- $2 is a link to the test cases page. If the test cases page exists, it is in the following format:
--
-- cfg['testcases-link-display'] (cfg['testcases-edit-link-display'] | cfg['testcases-run-link-display'])
--
-- If the test cases page doesn't exist, it is in the format:
--
-- cfg['testcases-link-display'] (cfg['testcases-create-link-display'])
--
-- If the test cases page doesn't exist, the link for cfg['testcases-create-link-display'] preloads the
-- page with cfg['template-testcases-preload'] or cfg['module-testcases-preload'], depending on the current
-- namespace.
--]]
cfg['experiment-blurb-template'] = "Οι συντάκτες μπορούν να πειραματίζονται στο $1 και στις $2 του προτύπου."
cfg['experiment-blurb-module'] = "Οι συντάκτες μπορούν να πειραματίζονται στο $1 και στις $2 του module."
----------------------------------------------------------------------------------------------------
-- Sandbox link configuration
----------------------------------------------------------------------------------------------------
-- cfg['sandbox-subpage']
-- The name of the template subpage typically used for sandboxes.
cfg['sandbox-subpage'] = 'πρόχειρο'
-- cfg['template-sandbox-preload']
-- Preload file for template sandbox pages.
cfg['template-sandbox-preload'] = 'Πρότυπον:Τεκμηρίωση προτύπου/preload-sandbox'
-- cfg['module-sandbox-preload']
-- Preload file for Lua module sandbox pages.
cfg['module-sandbox-preload'] = 'Πρότυπον:Τεκμηρίωση προτύπου/preload-module-sandbox'
-- cfg['sandbox-link-display']
-- The text to display for "sandbox" links.
cfg['sandbox-link-display'] = 'πρόχειρο'
-- cfg['sandbox-edit-link-display']
-- The text to display for sandbox "edit" links.
cfg['sandbox-edit-link-display'] = 'επεξεργασία'
-- cfg['sandbox-create-link-display']
-- The text to display for sandbox "create" links.
cfg['sandbox-create-link-display'] = 'δημιουργία'
-- cfg['compare-link-display']
-- The text to display for "compare" links.
cfg['compare-link-display'] = 'διαφορές'
-- cfg['mirror-edit-summary']
-- The default edit summary to use when a user clicks the "mirror" link. $1 is a wikilink to the
-- template page.
cfg['mirror-edit-summary'] = 'Create sandbox version of $1'
-- cfg['mirror-link-display']
-- The text to display for "mirror" links.
cfg['mirror-link-display'] = 'αντίγραφο'
-- cfg['mirror-link-preload']
-- The page to preload when a user clicks the "mirror" link.
cfg['mirror-link-preload'] = '{{urlencode:{{FULLPAGENAME}}}}&summary={{urlencode:Δημιουργία έκδοσης προχείρου για το [[{{FULLPAGENAME}}]]}}'
----------------------------------------------------------------------------------------------------
-- Test cases link configuration
----------------------------------------------------------------------------------------------------
-- cfg['testcases-subpage']
-- The name of the template subpage typically used for test cases.
cfg['testcases-subpage'] = 'testcases'
-- cfg['template-testcases-preload']
-- Preload file for template test cases pages.
cfg['template-testcases-preload'] = 'Πρότυπον:Τεκμηρίωση προτύπου/preload-testcases'
-- cfg['module-testcases-preload']
-- Preload file for Lua module test cases pages.
cfg['module-testcases-preload'] = 'Πρότυπον:Τεκμηρίωση προτύπου/preload-module-testcases'
-- cfg['testcases-link-display']
-- The text to display for "testcases" links.
cfg['testcases-link-display'] = 'δοκιμαστικές σελίδες'
-- cfg['testcases-edit-link-display']
-- The text to display for test cases "edit" links.
cfg['testcases-edit-link-display'] = 'επεξεργασία'
-- cfg['testcases-create-link-display']
-- The text to display for test cases "create" links.
cfg['testcases-create-link-display'] = 'δημιουργία'
----------------------------------------------------------------------------------------------------
-- Add categories blurb configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['add-categories-blurb']
-- Text to direct users to add categories to the /doc subpage. Not used if the "content" or
-- "docname fed" arguments are set, as then it is not clear where to add the categories. $1 is a
-- link to the /doc subpage with a display value of cfg['doc-link-display'].
--]]
cfg['add-categories-blurb'] = 'Παρακαλούμε να προσθέτετε τις κατηγορίες στην $1.'
-- cfg['doc-link-display']
-- The text to display when linking to the /doc subpage.
cfg['doc-link-display'] = 'υποσελίδα τεκμηρίωσης'
----------------------------------------------------------------------------------------------------
-- Subpages link configuration
----------------------------------------------------------------------------------------------------
--[[
-- cfg['subpages-blurb']
-- The "Subpages of this template" blurb. $1 is a link to the main template's subpages with a
-- display value of cfg['subpages-link-display']. In the English version this blurb is simply
-- the link followed by a period, and the link display provides the actual text.
--]]
cfg['subpages-blurb'] = '$1.'
--[[
-- cfg['subpages-link-display']
-- The text to display for the "subpages of this page" link. $1 is cfg['template-pagetype'],
-- cfg['module-pagetype'] or cfg['default-pagetype'], depending on whether the current page is in
-- the template namespace, the module namespace, or another namespace.
--]]
cfg['subpages-link-display'] = 'Υποσελίδες $1'
-- cfg['template-pagetype']
-- The pagetype to display for template pages.
cfg['template-pagetype'] = 'αυτού του προτύπου'
-- cfg['module-pagetype']
-- The pagetype to display for Lua module pages.
cfg['module-pagetype'] = 'αυτού του module'
-- cfg['default-pagetype']
-- The pagetype to display for pages other than templates or Lua modules.
cfg['default-pagetype'] = 'αυτής της σελίδας'
----------------------------------------------------------------------------------------------------
-- Doc link configuration
----------------------------------------------------------------------------------------------------
-- cfg['doc-subpage']
-- The name of the subpage typically used for documentation pages.
cfg['doc-subpage'] = 'τεκμηρίωση'
-- cfg['docpage-preload']
-- Preload file for template documentation pages in all namespaces.
cfg['docpage-preload'] = 'Πρότυπον:Τεκμηρίωση προτύπου/preload'
-- cfg['module-preload']
-- Preload file for Lua module documentation pages.
cfg['module-preload'] = 'Πρότυπον:Τεκμηρίωση προτύπου/preload'
----------------------------------------------------------------------------------------------------
-- HTML and CSS configuration
----------------------------------------------------------------------------------------------------
-- cfg['templatestyles']
-- The name of the TemplateStyles page where CSS is kept.
-- Sandbox CSS will be at Module:Documentation/sandbox/styles.css when needed.
cfg['templatestyles'] = 'Module:Documentation/styles.css'
-- cfg['container']
-- Class which can be used to set flex or grid CSS on the
-- two child divs documentation and documentation-metadata
cfg['container'] = 'documentation-container'
-- cfg['main-div-classes']
-- Classes added to the main HTML "div" tag.
cfg['main-div-classes'] = 'documentation'
-- cfg['main-div-heading-class']
-- Class for the main heading for templates and modules and assoc. talk spaces
cfg['main-div-heading-class'] = 'documentation-heading'
-- cfg['start-box-class']
-- Class for the start box
cfg['start-box-class'] = 'documentation-startbox'
-- cfg['start-box-link-classes']
-- Classes used for the [view][edit][history] or [create] links in the start box.
-- mw-editsection-like is per [[Wikipedia:Village pump (technical)/Archive 117]]
cfg['start-box-link-classes'] = 'mw-editsection-like plainlinks'
-- cfg['end-box-class']
-- Class for the end box.
cfg['end-box-class'] = 'documentation-metadata'
-- cfg['end-box-plainlinks']
-- Plainlinks
cfg['end-box-plainlinks'] = 'plainlinks'
-- cfg['toolbar-class']
-- Class added for toolbar links.
cfg['toolbar-class'] = 'documentation-toolbar'
-- cfg['clear']
-- Just used to clear things.
cfg['clear'] = 'documentation-clear'
----------------------------------------------------------------------------------------------------
-- Tracking category configuration
----------------------------------------------------------------------------------------------------
-- cfg['display-strange-usage-category']
-- Set to true to enable output of cfg['strange-usage-category'] if the module is used on a /doc subpage
-- or a /testcases subpage. This should be a boolean value (either true or false).
cfg['display-strange-usage-category'] = true
-- cfg['strange-usage-category']
-- Category to output if cfg['display-strange-usage-category'] is set to true and the module is used on a
-- /doc subpage or a /testcases subpage.
cfg['strange-usage-category'] = 'Wikipedia pages with strange ((documentation)) usage'
--[[
----------------------------------------------------------------------------------------------------
-- End configuration
--
-- Don't edit anything below this line.
----------------------------------------------------------------------------------------------------
--]]
return cfg
2onr8r3weet7zquwrfgbc0bfoc0xwl4
Module:Documentation/styles.css
828
3228
36395
2025-12-15T15:14:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '.documentation, .documentation-metadata { border: 1px solid #a2a9b1; background-color: #ecfcf4; clear: both; } .documentation { margin: 1em 0 0 0; padding: 1em; } .documentation-metadata { margin: 0.2em 0; /* same margin left-right as .documentation */ font-style: italic; padding: 0.4em 1em; /* same padding left-right as .documentation */ } .documentation-startbox { padding-bottom: 3px; border-bottom: 1px solid #aaa; margin-bott...'
36395
sanitized-css
text/css
.documentation,
.documentation-metadata {
border: 1px solid #a2a9b1;
background-color: #ecfcf4;
clear: both;
}
.documentation {
margin: 1em 0 0 0;
padding: 1em;
}
.documentation-metadata {
margin: 0.2em 0; /* same margin left-right as .documentation */
font-style: italic;
padding: 0.4em 1em; /* same padding left-right as .documentation */
}
.documentation-startbox {
padding-bottom: 3px;
border-bottom: 1px solid #aaa;
margin-bottom: 1ex;
}
.documentation-heading {
font-weight: bold;
font-size: 125%;
}
.documentation-clear { /* Don't want things to stick out where they shouldn't. */
clear: both;
}
.documentation-toolbar {
font-style: normal;
font-size: 85%;
}
@media screen {
html.skin-theme-clientpref-night .documentation,
html.skin-theme-clientpref-night .documentation-metadata {
background-color: #0b1e1c;
}
}
@media screen and ( prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .documentation,
html.skin-theme-clientpref-os .documentation-metadata {
background-color: #0b1e1c;
}
}
plcljg17wrwl7ynpinl3njyt12xl9hl
Module:Navbar/configuration
828
3229
36396
2025-12-15T15:15:17Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local configuration = { ['templatestyles'] = 'Module:Navbar/styles.css', ['box_text'] = 'Αυτό το πλαίσιο: ', -- default text box when not plain or mini ['title_namespace'] = 'Πρότυπο', -- namespace to default to for title ['invalid_title'] = 'Άκυρος τίτλος ', ['classes'] = { -- set a line to nil if you don't want it ['navbar'] = 'navbar', ['plainlinks'] = 'plainlinks', -- plainlinks ['horizontal_list']...'
36396
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'Αυτό το πλαίσιο: ', -- default text box when not plain or mini
['title_namespace'] = 'Πρότυπο', -- namespace to default to for title
['invalid_title'] = 'Άκυρος τίτλος ',
['classes'] = { -- set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
return configuration
266sw0kz41eaguydwpfq9q0va92p333
Module:Navbar
828
3230
36397
2025-12-15T15:16:06Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local cfg = mw.loadData('Module:Navbar/configuration') local function get_title_arg(is_collapsible, template) local title_arg = 1 if is_collapsible then title_arg = 2 end if template then title_arg = 'template' end return title_arg end local function choose_links(template, args) -- The show table indicates the default displayed items. -- view, talk, edit, hist, move, watch -- TODO: Move to configuration. local show = {true, t...'
36397
Scribunto
text/plain
local p = {}
local cfg = mw.loadData('Module:Navbar/configuration')
local function get_title_arg(is_collapsible, template)
local title_arg = 1
if is_collapsible then title_arg = 2 end
if template then title_arg = 'template' end
return title_arg
end
local function choose_links(template, args)
-- The show table indicates the default displayed items.
-- view, talk, edit, hist, move, watch
-- TODO: Move to configuration.
local show = {true, true, true, false, false, false}
if template then
show[2] = false
show[3] = false
local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6,
talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
-- TODO: Consider removing TableTools dependency.
for _, v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
local num = index[v]
if num then show[num] = true end
end
end
local remove_edit_link = args.noedit
if remove_edit_link then show[3] = false end
return show
end
local function add_link(link_description, ul, is_mini, font_style)
local l
if link_description.url then
l = {'[', '', ']'}
else
l = {'[[', '|', ']]'}
end
ul:tag('li')
:addClass('nv-' .. link_description.full)
:wikitext(l[1] .. link_description.link .. l[2])
:tag(is_mini and 'abbr' or 'span')
:attr('title', link_description.html_title)
:cssText(font_style)
:wikitext(is_mini and link_description.mini or link_description.full)
:done()
:wikitext(l[3])
:done()
end
local function make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
local title = mw.title.new(mw.text.trim(title_text), cfg.title_namespace)
if not title then
error(cfg.invalid_title .. title_text)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
-- TODO: Get link_descriptions and show into the configuration module.
-- link_descriptions should be easier...
local link_descriptions = {
{ ['mini'] = 'π', ['full'] = 'προβολή', ['html_title'] = 'Προβολή του προτύπου',
['link'] = title.fullText, ['url'] = false },
{ ['mini'] = 'σ', ['full'] = 'συζ.', ['html_title'] = 'Συζήτηση του προτύπου',
['link'] = talkpage, ['url'] = false },
{ ['mini'] = 'ε', ['full'] = 'επεξ.', ['html_title'] = 'Επεξεργασία του προτύπου',
['link'] = title:fullUrl('action=edit'), ['url'] = true },
{ ['mini'] = 'ι', ['full'] = 'ιστ.', ['html_title'] = 'Ιστορικό του προτύπου',
['link'] = title:fullUrl('action=history'), ['url'] = true },
{ ['mini'] = 'μ', ['full'] = 'μετ.', ['html_title'] = 'Μετακίνηση του προτύπου',
['link'] = mw.title.new('Special:Movepage'):fullUrl('target='..title.fullText), ['url'] = true },
{ ['mini'] = 'w', ['full'] = 'παρ.', ['html_title'] = 'Παρακολούθηση του προτύπου',
['link'] = title:fullUrl('action=watch'), ['url'] = true }
}
local ul = mw.html.create('ul')
if has_brackets then
ul:addClass(cfg.classes.brackets)
:cssText(font_style)
end
for i, _ in ipairs(displayed_links) do
if displayed_links[i] then add_link(link_descriptions[i], ul, is_mini, font_style) end
end
return ul:done()
end
function p._navbar(args)
-- TODO: We probably don't need both fontstyle and fontcolor...
local font_style = args.fontstyle
local font_color = args.fontcolor
local is_collapsible = args.collapsible
local is_mini = args.mini
local is_plain = args.plain
local collapsible_class = nil
if is_collapsible then
collapsible_class = cfg.classes.collapsible
if not is_plain then is_mini = 1 end
if font_color then
font_style = (font_style or '') .. '; color: ' .. font_color .. ';'
end
end
local navbar_style = args.style
local div = mw.html.create():tag('div')
div
:addClass(cfg.classes.navbar)
:addClass(cfg.classes.plainlinks)
:addClass(cfg.classes.horizontal_list)
:addClass(collapsible_class) -- we made the determination earlier
:cssText(navbar_style)
if is_mini then div:addClass(cfg.classes.mini) end
local box_text = (args.text or cfg.box_text) .. ' '
-- the concatenated space guarantees the box text is separated
if not (is_mini or is_plain) then
div
:tag('span')
:addClass(cfg.classes.box_text)
:cssText(font_style)
:wikitext(box_text)
end
local template = args.template
local displayed_links = choose_links(template, args)
local has_brackets = args.brackets
local title_arg = get_title_arg(is_collapsible, template)
local title_text = args[title_arg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local list = make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
div:node(list)
if is_collapsible then
local title_text_class
if is_mini then
title_text_class = cfg.classes.collapsible_title_mini
else
title_text_class = cfg.classes.collapsible_title_full
end
div:done()
:tag('div')
:addClass(title_text_class)
:cssText(font_style)
:wikitext(args[1])
end
return mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = cfg.templatestyles }
} .. tostring(div:done())
end
function p.navbar(frame)
return p._navbar(require('Module:Arguments').getArgs(frame))
end
return p
559mh2tqplundnsfqhmb8roeki2emwh
Κατηγορίαν:Βικιπαίδεια λήμματα
14
3231
36399
36398
2025-12-15T15:34:02Z
Εὐθυμένης
2777
36399
wikitext
text/x-wiki
[[Κατηγορίαν:Διαχείριση Βικιπαίδειας|βικιπαιδεια λημματα]]
1bppxj2olawy2wcr9fpt10ops3t2dmj
Κατηγορίαν:Διαχείριση Βικιπαίδειας
14
3232
36400
2025-12-15T15:34:56Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με ':''Για τους διαχειριστές της Βικιπαίδειας, δείτε την [[:Κατηγορίαν:Διαχειριστές]] και το [[Βικιπαίδεια:Διαχειριστές]].'' {{δείτε|Βικιπαίδεια:Εισαγωγή|Βικιπαίδεια:Βοήθεια|Βικιπαίδεια:Πολιτική}} Η κατηγορία αυτή αφορά τη οργάνωση και τη λειτουργία της ...'
36400
wikitext
text/x-wiki
:''Για τους διαχειριστές της Βικιπαίδειας, δείτε την [[:Κατηγορίαν:Διαχειριστές]] και το [[Βικιπαίδεια:Διαχειριστές]].''
{{δείτε|Βικιπαίδεια:Εισαγωγή|Βικιπαίδεια:Βοήθεια|Βικιπαίδεια:Πολιτική}}
Η κατηγορία αυτή αφορά τη οργάνωση και τη λειτουργία της [[Βικιπαίδεια|Βικιπαίδειας]]. Για το συνολικό εγκυκλοπαιδικό περιεχόμενο της Βικιπαίδειας δείτε [[:Κατηγορίαν:Κατηγορίες]].
{{Commonscat|Wikipedia administration}}
{{διάχυση κατηγορίας}}
[[Κατηγορίαν:Θεμελιώδης| ]]
bfani2ywfuf0kzv5lvkiw8g9hyaxm9m
Module:StringReplace
828
3233
36401
2025-12-15T15:36:06Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Module for different search and replace operations on strings. local p = {} -- Takes one string parameter, and returns the string with all characters with special meaning for Lua patterns escaped with a preceding `%`. function p.escape_pattern(text) -- Replaces each occurrence of any of ().%+-*?[^$ with a `%` and then the character. local r = string.gsub(text, "[%(%)%.%%%+%-%*%?%[%^%$]", "%%%1") return r end -- Returns the first pa...'
36401
Scribunto
text/plain
-- Module for different search and replace operations on strings.
local p = {}
-- Takes one string parameter, and returns the string with all characters with special meaning for Lua patterns escaped with a preceding `%`.
function p.escape_pattern(text)
-- Replaces each occurrence of any of ().%+-*?[^$ with a `%` and then the character.
local r = string.gsub(text, "[%(%)%.%%%+%-%*%?%[%^%$]", "%%%1")
return r
end
-- Returns the first parameter, with all occurrences of the second parameter replaced with the third parameter.
-- All special characters are ignored: {{#invoke:StringReplace|replace_all|test.a%1$foo|%1|bar}} results in `test.abarfoo`.
function p.replace_all(frame)
local str = frame.args[1]
local strToFind = frame.args[2]
local strToreplaceWith = frame.args[3]
local r = string.gsub(str, p.escape_pattern(strToFind), p.escape_pattern(strToreplaceWith))
return r
end
p['encode wiki page name'] = function( frame )
local x = mw.ustring.gsub(
frame.args[1] or '',
'[\'"&_]',
{
["'"] = ''',
['"'] = '"',
['&'] = '&',
['_'] = ' ',
}
)
return mw.text.trim( x )
end
return p
boys4063t5ya90wc49hfsoe4797mp4d
Πρότυπον:Διάχυση κατηγορίας
10
3234
36402
2025-12-15T15:36:58Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:message box|cmbox |style = background:#D8E8FF; border:1px solid #aaa; margin: 4px 10%; |image = [[File:Sub-arrows.svg|45px|link=]] |text = '''Τα λήμματα σε αυτή την κατηγορία πρέπει να μετακινούνται στις κατάλληλες υποκατηγορίες της, όποτε αυτό είναι δυνατό.'''<br />Αυτή η κατηγορία μπορεί να μεγαλώσει υπερ...'
36402
wikitext
text/x-wiki
{{#invoke:message box|cmbox
|style = background:#D8E8FF; border:1px solid #aaa; margin: 4px 10%;
|image = [[File:Sub-arrows.svg|45px|link=]]
|text = '''Τα λήμματα σε αυτή την κατηγορία πρέπει να μετακινούνται στις κατάλληλες υποκατηγορίες της, όποτε αυτό είναι δυνατό.'''<br />Αυτή η κατηγορία μπορεί να μεγαλώσει υπερβολικά. Για την αποφυγή αυτού του ενδεχόμενου, καλό είναι να περιέχει κυρίως υποκατηγορίες και λίγα ή καθόλου λήμματα.}}<noinclude>
[[Κατηγορίαν:Πρότυπα κατηγοριών]]
</noinclude>
o6ngg7q22ghpp34ur3igmqmueaptwxd
Module:Message box/ambox.css
828
3235
36403
2025-12-15T15:38:33Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '.ambox { border: 1px solid #a2a9b1; /* @noflip */ border-left: 10px solid #36c; /* Default "notice" blue */ background-color: #fbfbfb; box-sizing: border-box; } /* Single border between stacked boxes. Take into account base templatestyles, * user styles, and Template:Dated maintenance category. * remove link selector when T200206 is fixed */ .ambox + link + .ambox, .ambox + link + style + .ambox, .ambox + link + link + .ambox, /* TODO: ra...'
36403
sanitized-css
text/css
.ambox {
border: 1px solid #a2a9b1;
/* @noflip */
border-left: 10px solid #36c; /* Default "notice" blue */
background-color: #fbfbfb;
box-sizing: border-box;
}
/* Single border between stacked boxes. Take into account base templatestyles,
* user styles, and Template:Dated maintenance category.
* remove link selector when T200206 is fixed
*/
.ambox + link + .ambox,
.ambox + link + style + .ambox,
.ambox + link + link + .ambox,
/* TODO: raise these as "is this really that necessary???". the change was Dec 2021 */
.ambox + .mw-empty-elt + link + .ambox,
.ambox + .mw-empty-elt + link + style + .ambox,
.ambox + .mw-empty-elt + link + link + .ambox {
margin-top: -1px;
}
/* For the "small=left" option. */
/* must override .ambox + .ambox styles above */
html body.mediawiki .ambox.mbox-small-left {
/* @noflip */
margin: 4px 1em 4px 0;
overflow: hidden;
width: 238px;
border-collapse: collapse;
font-size: 88%;
line-height: 1.25em;
}
.ambox-speedy {
/* @noflip */
border-left: 10px solid #b32424; /* Red */
background-color: #fee7e6; /* Pink */
}
.ambox-delete {
/* @noflip */
border-left: 10px solid #b32424; /* Red */
}
.ambox-content {
/* @noflip */
border-left: 10px solid #f28500; /* Orange */
}
.ambox-style {
/* @noflip */
border-left: 10px solid #fc3; /* Yellow */
}
.ambox-move {
/* @noflip */
border-left: 10px solid #9932cc; /* Purple */
}
.ambox-protection {
/* @noflip */
border-left: 10px solid #a2a9b1; /* Gray-gold */
}
.ambox .mbox-text {
border: none;
/* @noflip */
padding: 0.25em 0.5em;
width: 100%;
}
.ambox .mbox-image {
border: none;
/* @noflip */
padding: 2px 0 2px 0.5em;
text-align: center;
}
.ambox .mbox-imageright {
border: none;
/* @noflip */
padding: 2px 0.5em 2px 0;
text-align: center;
}
/* An empty narrow cell */
.ambox .mbox-empty-cell {
border: none;
padding: 0;
width: 1px;
}
.ambox .mbox-image-div {
width: 52px;
}
/* Hack around MobileFrontend being opinionated */
html.client-js body.skin-minerva .mbox-text-span {
margin-left: 23px !important;
}
@media (min-width: 720px) {
.ambox {
margin: 0 10%; /* 10% = Will not overlap with other elements */
}
}
@media print {
body.ns-0 .ambox {
display: none !important;
}
}
i6s0a5zyzr9jd8subqitmlgqp3lqes6
Module:Message box/fmbox.css
828
3236
36404
2025-12-15T15:39:16Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '.fmbox { clear: both; margin: 0.2em 0; width: 100%; border: 1px solid #a2a9b1; background-color: var(--background-color-interactive-subtle, #f8f9fa); box-sizing: border-box; color: var(--color-base, #202122); } .fmbox-warning { border: 1px solid #bb7070; /* Dark pink */ background-color: #ffdbdb; /* Pink */ } .fmbox-editnotice { background-color: transparent; } .fmbox .mbox-text { border: none; /* @noflip */ padding: 0.25...'
36404
sanitized-css
text/css
.fmbox {
clear: both;
margin: 0.2em 0;
width: 100%;
border: 1px solid #a2a9b1;
background-color: var(--background-color-interactive-subtle, #f8f9fa);
box-sizing: border-box;
color: var(--color-base, #202122);
}
.fmbox-warning {
border: 1px solid #bb7070; /* Dark pink */
background-color: #ffdbdb; /* Pink */
}
.fmbox-editnotice {
background-color: transparent;
}
.fmbox .mbox-text {
border: none;
/* @noflip */
padding: 0.25em 0.9em;
width: 100%;
}
.fmbox .mbox-image {
border: none;
/* @noflip */
padding: 2px 0 2px 0.9em;
text-align: center;
}
.fmbox .mbox-imageright {
border: none;
/* @noflip */
padding: 2px 0.9em 2px 0;
text-align: center;
}
.fmbox .mbox-invalid-type {
text-align: center;
}
@media screen {
html.skin-theme-clientpref-night .fmbox-warning {
background-color: #300; /* Reddish, same hue/saturation as light */
}
}
@media screen and ( prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .fmbox-warning {
background-color: #300; /* Reddish, same hue/saturation as light */
}
}
k18za5h8ujwt6mea3q507ztplqmpwzg
Module:Message box/imbox.css
828
3237
36405
2025-12-15T15:39:51Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '.imbox { margin: 4px 0; border-collapse: collapse; border: 3px solid #36c; /* Default "notice" blue */ background-color: var(--background-color-interactive-subtle, #f8f9fa); box-sizing: border-box; } /* For imboxes inside imbox-text cells. */ .imbox .mbox-text .imbox { margin: 0 -0.5em; /* 0.9 - 0.5 = 0.4em left/right. */ /* TODO: Still needed? */ display: block; /* Fix for webkit to force 100% width. */ } .imbox-speedy { border: 3p...'
36405
sanitized-css
text/css
.imbox {
margin: 4px 0;
border-collapse: collapse;
border: 3px solid #36c; /* Default "notice" blue */
background-color: var(--background-color-interactive-subtle, #f8f9fa);
box-sizing: border-box;
}
/* For imboxes inside imbox-text cells. */
.imbox .mbox-text .imbox {
margin: 0 -0.5em; /* 0.9 - 0.5 = 0.4em left/right. */
/* TODO: Still needed? */
display: block; /* Fix for webkit to force 100% width. */
}
.imbox-speedy {
border: 3px solid #b32424; /* Red */
background-color: #fee7e6; /* Pink */
}
.imbox-delete {
border: 3px solid #b32424; /* Red */
}
.imbox-content {
border: 3px solid #f28500; /* Orange */
}
.imbox-style {
border: 3px solid #fc3; /* Yellow */
}
.imbox-move {
border: 3px solid #9932cc; /* Purple */
}
.imbox-protection {
border: 3px solid #a2a9b1; /* Gray-gold */
}
.imbox-license {
border: 3px solid #88a; /* Dark gray */
}
.imbox-featured {
border: 3px solid #cba135; /* Brown-gold */
}
.imbox .mbox-text {
border: none;
/* @noflip */
padding: 0.25em 0.9em;
width: 100%;
}
.imbox .mbox-image {
border: none;
/* @noflip */
padding: 2px 0 2px 0.9em;
text-align: center;
}
.imbox .mbox-imageright {
border: none;
/* @noflip */
padding: 2px 0.9em 2px 0;
text-align: center;
}
/* An empty narrow cell */
.imbox .mbox-empty-cell {
border: none;
padding: 0;
width: 1px;
}
.imbox .mbox-invalid-type {
text-align: center;
}
@media (min-width: 720px) {
.imbox {
margin: 4px 10%;
}
}
@media screen {
html.skin-theme-clientpref-night .imbox-speedy {
background-color: #310402; /* Dark red, same hue/saturation as light */
}
}
@media screen and ( prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .imbox-speedy {
background-color: #310402; /* Dark red, same hue/saturation as light */
}
}
sxryvj6qx8dikgkcdwckuah05tnx4yo
Module:Message box/tmbox.css
828
3238
36406
2025-12-15T15:40:35Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '.tmbox { margin: 4px 0; border-collapse: collapse; border: 1px solid #c0c090; /* Default "notice" gray-brown */ background-color: #f8eaba; box-sizing: border-box; } /* For the "small=yes" option. */ .tmbox.mbox-small { font-size: 88%; line-height: 1.25em; } .tmbox-speedy { border: 2px solid #b32424; /* Red */ background-color: #fee7e6; /* Pink */ } .tmbox-delete { border: 2px solid #b32424; /* Red */ } .tmbox-content { bo...'
36406
sanitized-css
text/css
.tmbox {
margin: 4px 0;
border-collapse: collapse;
border: 1px solid #c0c090; /* Default "notice" gray-brown */
background-color: #f8eaba;
box-sizing: border-box;
}
/* For the "small=yes" option. */
.tmbox.mbox-small {
font-size: 88%;
line-height: 1.25em;
}
.tmbox-speedy {
border: 2px solid #b32424; /* Red */
background-color: #fee7e6; /* Pink */
}
.tmbox-delete {
border: 2px solid #b32424; /* Red */
}
.tmbox-content {
border: 2px solid #f28500; /* Orange */
}
.tmbox-style {
border: 2px solid #fc3; /* Yellow */
}
.tmbox-move {
border: 2px solid #9932cc; /* Purple */
}
.tmbox .mbox-text {
border: none;
/* @noflip */
padding: 0.25em 0.9em;
width: 100%;
}
.tmbox .mbox-image {
border: none;
/* @noflip */
padding: 2px 0 2px 0.9em;
text-align: center;
}
.tmbox .mbox-imageright {
border: none;
/* @noflip */
padding: 2px 0.9em 2px 0;
text-align: center;
}
/* An empty narrow cell */
.tmbox .mbox-empty-cell {
border: none;
padding: 0;
width: 1px;
}
.tmbox .mbox-invalid-type {
text-align: center;
}
@media (min-width: 720px) {
.tmbox {
margin: 4px 10%;
}
.tmbox.mbox-small {
/* @noflip */
clear: right;
/* @noflip */
float: right;
/* @noflip */
margin: 4px 0 4px 1em;
width: 238px;
}
}
@media screen {
html.skin-theme-clientpref-night .tmbox {
background-color: #2e2505; /* Dark brown, same hue/saturation as light */
}
html.skin-theme-clientpref-night .tmbox-speedy {
background-color: #310402; /* Dark red, same hue/saturation as light */
}
}
@media screen and ( prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .tmbox {
background-color: #2e2505; /* Dark brown, same hue/saturation as light */
}
html.skin-theme-clientpref-os .tmbox-speedy {
background-color: #310402; /* Dark red, same hue/saturation as light */
}
}
/** T367463 */
body.skin--responsive table.tmbox img {
max-width: none !important;
}
56hhdhk66btxrol909widxvwk2c68ai
Module:Message box/cmbox.css
828
3239
36407
2025-12-15T15:41:21Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '.cmbox { margin: 3px 0; border-collapse: collapse; border: 1px solid #a2a9b1; background-color: #dfe8ff; /* Default "notice" blue */ box-sizing: border-box; /* necessary when embedded in other templates like [[:Category:Pending_AfC_submissions]] */ color: var( --color-base ); } .cmbox-speedy { border: 4px solid #b32424; /* Red */ background-color: #ffdbdb; /* Pink */ } .cmbox-delete { background-color: #ffdbdb; /* Pink *...'
36407
sanitized-css
text/css
.cmbox {
margin: 3px 0;
border-collapse: collapse;
border: 1px solid #a2a9b1;
background-color: #dfe8ff; /* Default "notice" blue */
box-sizing: border-box;
/* necessary when embedded in other templates like [[:Category:Pending_AfC_submissions]] */
color: var( --color-base );
}
.cmbox-speedy {
border: 4px solid #b32424; /* Red */
background-color: #ffdbdb; /* Pink */
}
.cmbox-delete {
background-color: #ffdbdb; /* Pink */
}
.cmbox-content {
background-color: #ffe7ce; /* Orange */
}
.cmbox-style {
background-color: #fff9db; /* Yellow */
}
.cmbox-move {
background-color: #e4d8ff; /* Purple */
}
.cmbox-protection {
background-color: #efefe1; /* Gray-gold */
}
.cmbox .mbox-text {
border: none;
/* @noflip */
padding: 0.25em 0.9em;
width: 100%;
}
.cmbox .mbox-image {
border: none;
/* @noflip */
padding: 2px 0 2px 0.9em;
text-align: center;
}
.cmbox .mbox-imageright {
border: none;
/* @noflip */
padding: 2px 0.9em 2px 0;
text-align: center;
}
/* An empty narrow cell */
.cmbox .mbox-empty-cell {
border: none;
padding: 0;
width: 1px;
}
.cmbox .mbox-invalid-type {
text-align: center;
}
@media (min-width: 720px) {
.cmbox {
margin: 3px 10%;
}
}
/* flipped lightness in hsl space except the main cmbox is the main page blue */
@media screen {
html.skin-theme-clientpref-night .cmbox {
background-color: #0d1a27; /* Default "notice" blue */
}
html.skin-theme-clientpref-night .cmbox-speedy,
html.skin-theme-clientpref-night .cmbox-delete {
background-color: #300; /* Pink */
}
html.skin-theme-clientpref-night .cmbox-content {
background-color: #331a00; /* Orange */
}
html.skin-theme-clientpref-night .cmbox-style {
background-color: #332b00; /* Yellow */
}
html.skin-theme-clientpref-night .cmbox-move {
background-color: #08001a; /* Purple */
}
html.skin-theme-clientpref-night .cmbox-protection {
background-color: #212112; /* Gray-gold */
}
}
@media screen and ( prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .cmbox {
background-color: #0d1a27; /* Default "notice" blue */
}
html.skin-theme-clientpref-os .cmbox-speedy,
html.skin-theme-clientpref-os .cmbox-delete {
background-color: #300; /* Pink */
}
html.skin-theme-clientpref-os .cmbox-content {
background-color: #331a00; /* Orange */
}
html.skin-theme-clientpref-os .cmbox-style {
background-color: #332b00; /* Yellow */
}
html.skin-theme-clientpref-os .cmbox-move {
background-color: #08001a; /* Purple */
}
html.skin-theme-clientpref-os .cmbox-protection {
background-color: #212112; /* Gray-gold */
}
}
srrsgothsd7f66xbx66nmehz9ctsosq
Πρότυπον:Δείτε
10
3240
36408
2025-12-15T15:43:54Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{rellink|extraclasses=boilerplate hatnote seealso|{{{altphrase|Δείτε επίσης}}}: {{#if:{{{1<includeonly>|</includeonly>}}} |<!--then:-->[[:{{{1}}}{{#if:{{{label 1|{{{l1|}}}}}}|{{!}}{{{label 1|{{{l1}}}}}}}}]] |<!--else:-->'''Σφάλμα: [[Πρότυπον:δείτε|Στο πρότυπο πρέπει να δοθεί τουλάχιστον ένας τίτλος λήμματος]]''' }}{{#if:{{{2|}}}|{{#if:{{{3|}}}|, | και }} :{...'
36408
wikitext
text/x-wiki
{{rellink|extraclasses=boilerplate hatnote seealso|{{{altphrase|Δείτε επίσης}}}: {{#if:{{{1<includeonly>|</includeonly>}}} |<!--then:-->[[:{{{1}}}{{#if:{{{label 1|{{{l1|}}}}}}|{{!}}{{{label 1|{{{l1}}}}}}}}]] |<!--else:-->'''Σφάλμα: [[Πρότυπον:δείτε|Στο πρότυπο πρέπει να δοθεί τουλάχιστον ένας τίτλος λήμματος]]'''
}}{{#if:{{{2|}}}|{{#if:{{{3|}}}|, | και }} [[:{{{2}}}{{#if:{{{label 2|{{{l2|}}}}}}|{{!}}{{{label 2|{{{l2}}}}}}}}]]
}}{{#if:{{{3|}}}|{{#if:{{{4|}}}|, |, και }} [[:{{{3}}}{{#if:{{{label 3|{{{l3|}}}}}}|{{!}}{{{label 3|{{{l3}}}}}}}}]]
}}{{#if:{{{4|}}}|{{#if:{{{5|}}}|, |, και }} [[:{{{4}}}{{#if:{{{label 4|{{{l4|}}}}}}|{{!}}{{{label 4|{{{l4}}}}}}}}]]
}}{{#if:{{{5|}}}|{{#if:{{{6|}}}|, |, και }} [[:{{{5}}}{{#if:{{{label 5|{{{l5|}}}}}}|{{!}}{{{label 5|{{{l5}}}}}}}}]]
}}{{#if:{{{6|}}}|{{#if:{{{7|}}}|, |, και }} [[:{{{6}}}{{#if:{{{label 6|{{{l6|}}}}}}|{{!}}{{{label 6|{{{l6}}}}}}}}]]
}}{{#if:{{{7|}}}|{{#if:{{{8|}}}|, |, και }} [[:{{{7}}}{{#if:{{{label 7|{{{l7|}}}}}}|{{!}}{{{label 7|{{{l7}}}}}}}}]]
}}{{#if:{{{8|}}}|{{#if:{{{9|}}}|, |, και }} [[:{{{8}}}{{#if:{{{label 8|{{{l8|}}}}}}|{{!}}{{{label 8|{{{l8}}}}}}}}]]
}}{{#if:{{{9|}}}|{{#if:{{{10|}}}|, |, και }} [[:{{{9}}}{{#if:{{{label 9|{{{l9|}}}}}}|{{!}}{{{label 9|{{{l9}}}}}}}}]]
}}{{#if:{{{10|}}}|{{#if:{{{11|}}}|, |, και }} [[:{{{10}}}{{#if:{{{label 10|{{{l10|}}}}}}|{{!}}{{{label 10|{{{l10}}}}}}}}]]
}}{{#if:{{{11|}}}|{{#if:{{{12|}}}|, |, και }} [[:{{{11}}}{{#if:{{{label 11|{{{l11|}}}}}}|{{!}}{{{label 11|{{{l11}}}}}}}}]]
}}{{#if:{{{12|}}}|{{#if:{{{13|}}}|, |, και }} [[:{{{12}}}{{#if:{{{label 12|{{{l12|}}}}}}|{{!}}{{{label 12|{{{l12}}}}}}}}]]
}}{{#if:{{{13|}}}|{{#if:{{{14|}}}|, |, και }} [[:{{{13}}}{{#if:{{{label 13|{{{l13|}}}}}}|{{!}}{{{label 13|{{{l13}}}}}}}}]]
}}{{#if:{{{14|}}}|{{#if:{{{15|}}}|, |, και }} [[:{{{14}}}{{#if:{{{label 14|{{{l14|}}}}}}|{{!}}{{{label 14|{{{l14}}}}}}}}]]
}}{{#if:{{{15|}}}|, και [[:{{{15}}}{{#if:{{{label 15|{{{l15|}}} }}}|{{!}}{{{label 15|{{{l15|}}} }}} }}]]
}}{{#if:{{{16|}}}| — '''<br/>Σφάλμα: (πάρα πολλές παράμετροι στο {{[[Πρότυπον:δείτε|δείτε]]}})'''
}}}}<noinclude>
== Χρήση ==
<code><nowiki>{{δείτε|</nowiki>''σύνδεσμος1|σύνδεσμος2|σύνδεσμος3...''<nowiki>}}</nowiki></code>
όπου ''σύνδεσμος1,2,3...'' άλλα λήμματα της Βικιπαίδειας (προσοχή, '''όχι εξωτερικοί σύνδεσμοι''')
'''Παράδειγμα:'''
<code><nowiki>{{δείτε|</nowiki>Βυζαντινή αυτοκρατορία|Βυζαντινή κοινωνία|Βυζαντινός στρατός<nowiki>}}</nowiki></code>
το οποίο θα εμφανιστεί ως:
{{δείτε|Βυζαντινή αυτοκρατορία|Βυζαντινή κοινωνία|Βυζαντινός στρατός}}
'''Όλες οι παράμετροι'''
<pre>{{Δείτε| σελίδα1 | σελίδα2 | σελίδα3 | ...
label 1 = ετικέτα 1 | label 2 = ετικέτα 2 | label 3 = ετικέτα 3 | ...
| l1 = ετικέτα 1 | l2 = ετικέτα 2 | l3 = ετικέτα3 | ...
| selfref = ναι | κατηγορία = όχι }}</pre>
== TemplateData==
<templatedata>
{
"description": "Αυτό το πρότυπο δημιουργεί ένα hatnote για να οδηγήσει προς έναν μικρό αριθμό σχετικών σελίδων. Τοποθετείται στην κορυφή μιας ενότητας, ακριβώς κάτω από την επικεφαλίδα της ενότητας.",
"params": {
"1": {
"label": "Σελίδα 1",
"description": "Το όνομα της πρώτης σελίδας που θέλετε να συνδέσετε προς εκείνη.",
"type": "wiki-page-name",
"required": true,
"example": "Τίτλος λήμματος"
},
"2": {
"label": "Σελίδα 2",
"description": "Το όνομα της δεύτερης σελίδας που θέλετε να συνδέσετε προς εκείνη.",
"type": "wiki-page-name",
"required": false
},
"3": {
"label": "Σελίδα 3",
"description": "Το όνομα της τρίτης σελίδας που θέλετε να συνδέσετε προς εκείνη. Περισσότερες σελίδες μπορούν να προστεθούν χρησιμοποιώντας τις παραμέτρους \"4\", \"5\", \"6\", κλπ.",
"type": "wiki-page-name",
"required": false
},
"label 1": {
"label": "Ετικέτα 1",
"type": "string",
"description": "Πως θα εμφανίζεται το πρώτο συνδεδεμένο λήμμα.",
"aliases": [
"l1"
]
},
"label 2": {
"label": "Ετικέτα 2",
"type": "string",
"description": "Πως θα εμφανίζεται το δεύτερο συνδεδεμένο λήμμα.",
"aliases": [
"l2"
]
},
"selfref": {
"type": "boolean",
"label": "Αυτοαναφορά",
"description": "Ορίστε ως \"yes\" αν το πρότυπο είναι αυτοαναφορά προς τη Βικιπαίδειαt που δεν θα είχε νόημα σε αντίγραφα ή εναλλακτικές εκδόσεις του περιεχομένου",
"example": "yes",
"default": "no"
},
"category": {
"label": "Κατηγορία",
"description": "Ορίστε ως \"no\", \"n\", \"false\", ή \"0\" για να απενεργοποιήσετε την κατηγορία ανίχνευσης σφαλμάτων (Category:Hatnote templates with errors). This only has an effect if no page names are specified.",
"type": "boolean",
"default": "yes",
"example": "no"
},
"label 3": {
"aliases": [
"l3"
],
"type": "string",
"label": "Ετικέτα 3",
"description": "Πως θα εμφανίζεται το τρίτο συνδεδεμένο λήμμα. Άλλες ετικέτες μπορούν να προστεθούν με τη χρήση αυξανόμενων αριθμών (ξεκινώντας με \"label 4\" ή \"l4\" για τη σελίδα 4) ως ονόματα παραμέτρων."
}
},
"format": "inline"
}
</templatedata>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]
</noinclude>
r0ifkoglx5rg85jv63m3aszyacyh8ci
Πρότυπον:Rellink
10
3241
36409
2025-12-15T15:44:52Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="rellink{{#if:{{{extraclasses|}}}|<nowiki> </nowiki>{{{extraclasses}}}}}">{{{1}}}</div><noinclude> {{documentation}} </noinclude>'
36409
wikitext
text/x-wiki
<div class="rellink{{#if:{{{extraclasses|}}}|<nowiki> </nowiki>{{{extraclasses}}}}}">{{{1}}}</div><noinclude>
{{documentation}}
</noinclude>
2324mokuqb4rybkh0qre9oyyqesbdvb
Πρότυπον:Πλευρικό κουτί
10
3242
36414
2025-12-15T15:49:41Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<table class="metadata plainlinks mbox-small" style="{{#ifeq:{{lc:{{{position|}}}}}|left|clear:left; float:left; margin:4px 1em 4px 0;}} border:1px solid #aaa; background-color:#f9f9f9; {{{style|}}}"> <tr> {{#switch:{{{image|}}} |<!--BLANK-->|none={{td}} |#default=<td class="mbox-image">{{{image}}}</td> }} <td class="mbox-text" style="{{{textstyle|}}}"> {{{text}}} </td> {{#if:{{{imageright|}}} | <td class="mbox-imageright">{{{imageright}}}</td> }}...'
36414
wikitext
text/x-wiki
<table class="metadata plainlinks mbox-small" style="{{#ifeq:{{lc:{{{position|}}}}}|left|clear:left; float:left; margin:4px 1em 4px 0;}} border:1px solid #aaa; background-color:#f9f9f9; {{{style|}}}">
<tr>
{{#switch:{{{image|}}}
|<!--BLANK-->|none={{td}}
|#default=<td class="mbox-image">{{{image}}}</td>
}}
<td class="mbox-text" style="{{{textstyle|}}}"> {{{text}}} </td>
{{#if:{{{imageright|}}}
| <td class="mbox-imageright">{{{imageright}}}</td>
}}
</tr>
{{#if:{{{below|}}}
| <tr><td colspan={{#if:{{{imageright|}}}|3|2}} class="mbox-text" style="{{{textstyle|}}}"> {{{below}}} </td></tr>
}}
</table><noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|Πρότυπα Βικιπαίδειας]]
Χρησιμοποιείται στα πρότυπα:
*[[πρότυπον:Αδελφικό]]
</noinclude>
8jkdteicdvwf7z5d8bmr4to7kkr1ps4
Πρότυπον:Αδελφικό
10
3243
36415
2025-12-15T15:50:22Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{πλευρικό κουτί |position = {{{position|}}} |image = <!-- -->{{#switch:{{{image|}}} |none= |=Image:{{#switch:{{lc:{{{εγχείρημα|}}}}} |commons = Commons-logo.svg |meta|metawiki|m = Wikimedia Community Logo.svg |βικιβιβλία|wikibooks|wbk|wb|b = Wikibooks-logo-el.svg |wikiquote|quote|wqt|q = Greek wikiquote logo.png |wikisource|source|ws|s = Wikisource Greek.png |βικι...'
36415
wikitext
text/x-wiki
{{πλευρικό κουτί
|position = {{{position|}}}
|image = <!--
-->{{#switch:{{{image|}}}
|none=
|=[[Image:{{#switch:{{lc:{{{εγχείρημα|}}}}}
|commons = Commons-logo.svg
|meta|metawiki|m = Wikimedia Community Logo.svg
|βικιβιβλία|wikibooks|wbk|wb|b = Wikibooks-logo-el.svg
|wikiquote|quote|wqt|q = Greek wikiquote logo.png
|wikisource|source|ws|s = Wikisource Greek.png
|βικιλεξικό|wiktionary|wkt|wdy|d =Greek wiktionary logo.png
|wikinews|news|wnw|n = Wikinews-logo.svg
|wikispecies|species = Wikispecies-logo.svg
|wikiversity|wvy|v = Wikiversity-el-logo-Snorky.svg
|mediawiki|mw = Mediawiki.png
|#default = Wikimedia-logo.svg
}}|40px|link={{#switch:{{lc:{{{εγχείρημα}}}}}
|commons = commons
|meta|metawiki|m = meta
|wikibooks|wbk|wb|b = b
|wikiquote|quote|wqt|q = q
|wikisource|source|ws|s = s
|wiktionary|wkt|wdy|d = wikt
|wikinews|news|wnw|n = n
|wikispecies|species = species
|wikiversity|wvy|v = v
|mediawiki|mw = mw
|#default =
}}:{{{1|Special:Search/{{PAGENAME}}}}}|Sister project]]
|{{{image}}}
}}<!--
-->
|text = {{{text}}}
|below = {{{below|}}}
|imageright = {{{imageright|}}}
}}
<noinclude>{{τεκμηρίωση προτύπου}}</noinclude>
ilokflbst6geg6ud1jaqa9fe8sa4u3j
Πρότυπον:Τεκμηρίωση προτύπου/docname
10
3244
36416
2025-12-15T15:52:19Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#switch: {{SUBPAGENAME}} |sandbox|testcases={{ #rel2abs: ../τεκμηρίωση }} |#default={{SUBJECTPAGENAME}}/τεκμηρίωση }}<noinclude> [[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]] </noinclude>'
36416
wikitext
text/x-wiki
{{#switch: {{SUBPAGENAME}}
|sandbox|testcases={{ #rel2abs: ../τεκμηρίωση }}
|#default={{SUBJECTPAGENAME}}/τεκμηρίωση
}}<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]
</noinclude>
rlr88upw538tcnlneg7i6x6nhlvpjcp
Πρότυπον:Commons category-inline
10
3245
36419
36418
2025-12-15T15:57:11Z
Εὐθυμένης
2777
36419
wikitext
text/x-wiki
{{sister-inline
|short={{{short|}}}
|project=commonscat
|list={{{list|}}}
|extratext={{{extratext|}}}
|links= [[commons:Category:{{{1|{{#property:P373}}}}} | {{{2|{{{1|{{#property:P373}}}}}}}}]]<!--
-->}}<noinclude><!-- Κατηγορίες ΑΝ χρειάζεται -->
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]</noinclude>
e0910aahnnzo8po8o1ipmfzneh6cum6
Πρότυπον:Sister-inline
10
3246
36904
36420
2025-12-16T10:28:34Z
Εὐθυμένης
2777
36904
wikitext
text/x-wiki
[[File:{{#switch:{{lc:{{{project|}}}}}
| commons|commonscat = Commons-logo.svg
| meta|metawiki|m = Wikimedia Community Logo.svg
| wikibooks|wbk|wb|b = Wikibooks-logo-en-noslogan.svg
| wikidata|data = Wikidata-logo.svg
| cookbook = Wikibooks-logo-en-noslogan.svg
| wikiquote|quote|wqt|q = Wikiquote-logo.svg
| wikipedia|wp|w = Wikipedia-logo-v2.svg
| wikisource|wikisource2|source|source2|ws|ws2|s|s2 = Wikisource-logo.svg
| wiktionary|wkt|wdy|d = Wiktionary-logo-el-without-text.svg
| wikinews|news|wnw|n = Wikinews-logo.svg
| wikispecies|species = Wikispecies-logo.svg
| wikiversity|wvy|v = Wikiversity logo 2017.svg
| wikivoyage|voyage|voy = Wikivoyage-Logo-v3-icon.svg
| mediawiki|mw = Mediawiki.png
| outreachwiki|outreach = Wikimedia Outreach.png
| incubator = Incubator-notext.svg
| #default = Wikimedia-logo.svg
}}|16x16px|class=noviewer|link=|alt=]] {{#if:{{{short|}}}|{{{links|}}}|{{#if:{{{list|}}}|{{#switch:{{lc:{{{project|}}}}}
| commons = Related media at Wikimedia Commons
| commonscat = Related categories at Wikimedia Commons
| meta|metawiki|m =
| wikibooks|wbk|wb|b = Texts at Wikibooks
| wikidata|data =
| cookbook = Cookbooks at Wikibooks
| wikiquote|quote|wqt|q = Quotations on Wikiquote
| wikipedia|wp|w =
| wikisource|wikisource2|source|source2|ws|ws2|s|s2 = Texts on Wikisource
| wiktionary|wkt|wdy|d = Definitions and translations at Wiktionary
| wikinews|news|wnw|n =
| wikispecies|species = Data related to Wikispecies
| wikiversity|wvy|v = Learning materials from Wikiversity
| wikivoyage|voyage|voy = Travel information on Wikivoyage
| mediawiki|mw =
| outreachwiki|outreach =
| incubator =
| #default = }}:
{{{list}}}|{{#switch:{{lc:{{{project|}}}}}
| commons = Πολυμέσα σχετικώς με το ζήτημαν {{{links|}}} σο Wikimedia Commons
| commonscat = Πολυμέσα σχετικώς με το ζήτημαν {{{links|}}} σο Wikimedia Commons
| meta|metawiki|m =
| wikibooks|wbk|wb|b = {{{links|}}} στα Βικιβιβλία{{{extratext|}}}
| wikidata|data =
| cookbook = {{{links|}}} στο Wikibook Cookbooks{{{extratext|}}}
| wikiquote|quote|wqt|q = Αναφορές σχετικά με το θέμα {{{links|}}} στα Βικιφθέγματα
| wikipedia|wp|w =
| wikisource|source|ws|s = Εργασίες αναφορικά με το θέμα {{{links|}}} στην Βικιθήκη
| wikisource2|source2|ws2|s2 = Πλήρες κείμενο αναφορικά με το θέμα {{{links|}}} στην Βικιθήκη
| wiktionary|wkt|wdy|d = Λεξιλογικός ορισμός του {{{links|}}} στο Βικιλεξικό
| wikinews|news|wnw|n =
| wikispecies|species = Δεδομένα σχετικά με το θέμα {{{links|}}} στο Wikispecies
| wikiversity|wvy|v = Εκπαιδευτικό υλικό σχετικά με το θέμα {{{links|}}} από το Βικιεπιστήμιο
| wikivoyage|voyage|voy = Ταξιδιωτικός οδηγός για το θέμα {{{links|}}} από τα Βικιταξίδια
| mediawiki|mw =
| outreachwiki|outreach =
| incubator =
| #default = }}{{{extratext|}}}}} }}<noinclude>
{{documentation}}
</noinclude>
l92ka5fuyfhnm4fw9wuc8ko3k0vg6al
Module:Infobox/styles.css
828
3247
36421
2025-12-15T15:59:04Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '/* * This TemplateStyles sheet deliberately does NOT include the full set of * infobox styles. We are still working to migrate all of the manual * infoboxes. See [[MediaWiki talk:Common.css/to do#Infobox]] * DO NOT ADD THEM HERE */ /* * not strictly certain these styles are necessary since the modules now * exclusively output infobox-subbox or infobox, not both * just replicating the module faithfully */ .infobox-subbox { padding: 0; bor...'
36421
sanitized-css
text/css
/*
* This TemplateStyles sheet deliberately does NOT include the full set of
* infobox styles. We are still working to migrate all of the manual
* infoboxes. See [[MediaWiki talk:Common.css/to do#Infobox]]
* DO NOT ADD THEM HERE
*/
/*
* not strictly certain these styles are necessary since the modules now
* exclusively output infobox-subbox or infobox, not both
* just replicating the module faithfully
*/
.infobox-subbox {
padding: 0;
border: none;
margin: -3px;
width: auto;
min-width: 100%;
font-size: 100%;
clear: none;
float: none;
background-color: transparent;
}
.infobox-3cols-child {
margin: auto;
}
.infobox .navbar {
font-size: 100%;
}
/* T281642 */
body.skin-minerva .infobox-header,
body.skin-minerva .infobox-subheader,
body.skin-minerva .infobox-above,
body.skin-minerva .infobox-title,
body.skin-minerva .infobox-image,
body.skin-minerva .infobox-full-data,
body.skin-minerva .infobox-below {
text-align: center;
}
hfs0ljm3qpuvl8azk1cnvgtr4ztzh4f
Module:Infobox3cols
828
3248
36422
2025-12-15T15:59:48Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- -- This module implements {{Infobox3cols}} -- -- The initial version was created by modifying [[Module:Infobox]] -- local p = {} local navbar = require('Module:Navbar')._navbar local args = {} local origArgs local root local function union(t1, t2) -- Returns the union of the values of two tables, as a sequence. local vals = {} for k, v in pairs(t1) do vals[v] = true end for k, v in pairs(t2) do vals[v] =...'
36422
Scribunto
text/plain
--
-- This module implements {{Infobox3cols}}
--
-- The initial version was created by modifying [[Module:Infobox]]
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local args = {}
local origArgs
local root
local function union(t1, t2)
-- Returns the union of the values of two tables, as a sequence.
local vals = {}
for k, v in pairs(t1) do
vals[v] = true
end
for k, v in pairs(t2) do
vals[v] = true
end
local ret = {}
for k, v in pairs(vals) do
table.insert(ret, k)
end
return ret
end
local function getArgNums(prefix,suffix)
-- Returns a table containing the numbers of the arguments that exist
-- for the specified prefix. For example, if the prefix was 'data', and
-- 'data1', 'data2', and 'data5' exist, it would return {1, 2, 5}.
local nums = {}
for k, v in pairs(args) do
local num = tostring(k):match('^' .. prefix .. '([0-9]%d*)' .. suffix .. '$')
if num then table.insert(nums, tonumber(num)) end
end
table.sort(nums)
return nums
end
local function addRow(rowArgs)
-- Adds a row to the infobox, with either a header cell
-- or a label/data cell combination.
if rowArgs.header then
root
:tag('tr')
:addClass(rowArgs.rowclass)
:cssText(rowArgs.rowstyle)
:attr('id', rowArgs.rowid)
:tag('th')
:attr('colspan', 4)
:attr('id', rowArgs.headerid)
:addClass(rowArgs.class)
:addClass(args.headerclass)
:css('text-align', 'center')
:cssText(args.headerstyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(rowArgs.header)
elseif rowArgs.label then
if rowArgs.data then
local row = root:tag('tr')
row:addClass(rowArgs.rowclass)
row:cssText(rowArgs.rowstyle)
row:attr('id', rowArgs.rowid)
row
:tag('th')
:attr('scope', 'row')
:attr('id', rowArgs.labelid)
:cssText(args.labelstyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(rowArgs.label)
:done()
local dataCell = row:tag('td')
dataCell
:attr('colspan', 3)
:attr('id', rowArgs.dataid)
:addClass(rowArgs.class)
:cssText(rowArgs.datastyle)
:cssText(rowArgs.rowcellstyle)
:newline()
:wikitext(rowArgs.data)
elseif rowArgs.dataa or rowArgs.datab then
local row = root:tag('tr')
row:addClass(rowArgs.rowclass)
row:cssText(rowArgs.rowstyle)
row:attr('id', rowArgs.rowid)
row
:tag('th')
:attr('scope', 'row')
:attr('id', rowArgs.labelid)
:cssText(args.labelstyle)
:cssText(rowArgs.rowcellstyle)
:wikitext(rowArgs.label)
:done()
local dataCella = row:tag('td')
dataCella
:attr('id', rowArgs.dataaid)
:addClass(rowArgs.classa)
:cssText(rowArgs.dataastyle)
:cssText(rowArgs.rowcellstyle)
:newline()
:wikitext(rowArgs.dataa)
if rowArgs.renderb then
local dataCellb = row:tag('td')
dataCellb
:attr('id', rowArgs.databid)
:addClass(rowArgs.classb)
:cssText(rowArgs.databstyle)
:cssText(rowArgs.rowcellstyle)
:newline()
:wikitext(rowArgs.datab)
end
if rowArgs.renderc then
local dataCellc = row:tag('td')
dataCellc
:attr('id', rowArgs.datacid)
:addClass(rowArgs.classc)
:cssText(rowArgs.datacstyle)
:cssText(rowArgs.rowcellstyle)
:newline()
:wikitext(rowArgs.datac)
end
end
elseif rowArgs.data then
local row = root:tag('tr')
row:addClass(rowArgs.rowclass)
row:cssText(rowArgs.rowstyle)
row:attr('id', rowArgs.rowid)
local dataCell = row:tag('td')
dataCell
:attr('colspan', 4)
:attr('id', rowArgs.dataid)
:addClass(rowArgs.class)
:css('text-align', 'center')
:cssText(rowArgs.datastyle)
:cssText(rowArgs.rowcellstyle)
:newline()
:wikitext(rowArgs.data)
end
end
local function renderTitle()
if not args.title then return end
root
:tag('caption')
:addClass(args.titleclass)
:cssText(args.titlestyle)
:wikitext(args.title)
end
local function renderAboveRow()
if not args.above then return end
root
:tag('tr')
:tag('th')
:attr('colspan', 4)
:addClass(args.aboveclass)
:css('text-align', 'center')
:css('font-size', '125%')
:css('font-weight', 'bold')
:cssText(args.abovestyle)
:wikitext(args.above)
end
local function renderBelowRow()
if not args.below then return end
root
:tag('tr')
:tag('td')
:attr('colspan', 4)
:addClass(args.belowclass)
:css('text-align', 'center')
:cssText(args.belowstyle)
:newline()
:wikitext(args.below)
end
local function renderSubheaders()
if args.subheader then
args.subheader1 = args.subheader
end
if args.subheaderrowclass then
args.subheaderrowclass1 = args.subheaderrowclass
end
local subheadernums = getArgNums('subheader','')
for k, num in ipairs(subheadernums) do
addRow({
data = args['subheader' .. tostring(num)],
datastyle = args.subheaderstyle or args['subheaderstyle' .. tostring(num)],
class = args.subheaderclass,
rowclass = args['subheaderrowclass' .. tostring(num)]
})
end
end
local function renderImages()
if args.image then
args.image1 = args.image
end
if args.caption then
args.caption1 = args.caption
end
local imagenums = getArgNums('image','')
for k, num in ipairs(imagenums) do
local caption = args['caption' .. tostring(num)]
local data = mw.html.create():wikitext(args['image' .. tostring(num)])
if caption then
data
:tag('div')
:cssText(args.captionstyle)
:wikitext(caption)
end
addRow({
data = tostring(data),
datastyle = args.imagestyle,
class = args.imageclass,
rowclass = args['imagerowclass' .. tostring(num)]
})
end
end
local function renderRows()
-- Gets the union of the header and data argument numbers,
-- and renders them all in order using addRow.
local rownums = union(getArgNums('header',''), getArgNums('data','[ab]?'))
local datab_count = #(getArgNums('data','b'))
local datac_count = #(getArgNums('data','c'))
table.sort(rownums)
for k, num in ipairs(rownums) do
addRow({
renderb = datab_count > 0,
renderc = datac_count > 0,
header = args['header' .. tostring(num)],
label = args['label' .. tostring(num)],
data = args['data' .. tostring(num)],
datastyle = args.datastyle,
class = args['class' .. tostring(num)],
dataa = args['data' .. tostring(num) .. 'a'],
dataastyle = args.datastylea,
classa = args['class' .. tostring(num) .. 'a'],
datab = args['data' .. tostring(num) .. 'b'],
databstyle = args.datastyleb,
classb = args['class' .. tostring(num) .. 'b'],
datac = args['data' .. tostring(num) .. 'c'],
datacstyle = args.datastylec,
classc = args['class' .. tostring(num) .. 'c'],
rowclass = args['rowclass' .. tostring(num)],
rowstyle = args['rowstyle' .. tostring(num)],
rowcellstyle = args['rowcellstyle' .. tostring(num)],
dataid = args['dataid' .. tostring(num)],
dataaid = args['dataid' .. tostring(num) .. 'a'],
dataaib = args['dataid' .. tostring(num) .. 'b'],
dataaic = args['dataid' .. tostring(num) .. 'c'],
labelid = args['labelid' .. tostring(num)],
headerid = args['headerid' .. tostring(num)],
rowid = args['rowid' .. tostring(num)]
})
end
end
local function renderNavBar()
if not args.name then return end
root
:tag('tr')
:tag('td')
:attr('colspan', '4')
:css('text-align', 'right')
:wikitext(navbar{
args.name,
mini = 1,
})
end
local function renderItalicTitle()
local italicTitle = args['italic title'] and mw.ustring.lower(args['italic title'])
if italicTitle == '' or italicTitle == 'force' or italicTitle == 'yes' then
root:wikitext(mw.getCurrentFrame():expandTemplate({title = 'italic title'}))
end
end
local function renderTrackingCategories()
if args.decat ~= 'yes' then
if #(getArgNums('data','[abc]?')) == 0 and mw.title.getCurrentTitle().namespace == 0 then
root:wikitext('[[Category:Λήμματα που περιλαμβάνουν πρότυπα πλαίσια πληροφοριών χωρίς γραμμές δεδομένων]]')
end
end
end
local function _infobox()
-- Specify the overall layout of the infobox, with special settings
-- if the infobox is used as a 'child' inside another infobox.
root = mw.html.create('table')
root
:addClass('infobox')
:addClass(args.bodyclass)
if args.child == 'yes' or args.subbox == 'yes' then
root
:css('padding', '0')
:css('border', 'none')
:css('margin', (args.subbox == 'yes') and '-3px' or 'auto')
:css('width', 'auto')
:css('min-width', '100%')
:css('font-size', '100%')
:css('clear', 'none')
:css('float', 'none')
:css('background-color', 'transparent')
else
root
:css('width', '22em')
end
root:cssText(args.bodystyle)
renderTitle()
renderAboveRow()
renderSubheaders()
renderImages()
renderRows()
renderBelowRow()
renderNavBar()
renderItalicTitle()
renderTrackingCategories()
return tostring(root)
end
local function preprocessSingleArg(argName)
-- If the argument exists and isn't blank, add it to the argument table.
-- Blank arguments are treated as nil to match the behaviour of ParserFunctions.
if origArgs[argName] and origArgs[argName] ~= '' then
args[argName] = origArgs[argName]
end
end
local function preprocessArgs(prefixTable, step)
-- Assign the parameters with the given prefixes to the args table, in order, in batches
-- of the step size specified. This is to prevent references etc. from appearing in the
-- wrong order. The prefixTable should be an array containing tables, each of which has
-- two possible fields, a "prefix" string and a "depend" table. The function always parses
-- parameters containing the "prefix" string, but only parses parameters in the "depend"
-- table if the prefix parameter is present and non-blank.
if type(prefixTable) ~= 'table' then
error("Non-table value detected for the prefix table", 2)
end
if type(step) ~= 'number' then
error("Invalid step value detected", 2)
end
-- Get arguments without a number suffix, and check for bad input.
for i,v in ipairs(prefixTable) do
if type(v) ~= 'table' or type(v.prefix) ~= "string" or (v.depend and type(v.depend) ~= 'table') then
error('Invalid input detected to preprocessArgs prefix table', 2)
end
preprocessSingleArg(v.prefix)
-- Only parse the depend parameter if the prefix parameter is present and not blank.
if args[v.prefix] and v.depend then
for j, dependValue in ipairs(v.depend) do
if type(dependValue) ~= 'string' then
error('Invalid "depend" parameter value detected in preprocessArgs')
end
preprocessSingleArg(dependValue)
end
end
end
-- Get arguments with number suffixes.
local a = 0 -- Counter variable.
local moreArgumentsExist = true
while moreArgumentsExist == true do
moreArgumentsExist = false
for i = a, a + step - 1 do
for j,v in ipairs(prefixTable) do
local prefixArgName = v.prefix .. tostring(i) .. (v.suffix or '')
if origArgs[prefixArgName] then
moreArgumentsExist = true -- Do another loop if any arguments are found, even blank ones.
preprocessSingleArg(prefixArgName)
end
-- Process the depend table if the prefix argument is present and not blank, or
-- we are processing "prefix1" and "prefix" is present and not blank, and
-- if the depend table is present.
if v.depend and (args[prefixArgName] or (i == 1 and args[v.prefix])) then
for j,dependValue in ipairs(v.depend) do
local dependArgName = dependValue .. tostring(i) .. (v.dependsuffix or '')
preprocessSingleArg(dependArgName)
end
end
end
end
a = a + step
end
end
function p.infobox(frame)
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- Parse the data parameters in the same order that the old {{infobox}} did, so that
-- references etc. will display in the expected places. Parameters that depend on
-- another parameter are only processed if that parameter is present, to avoid
-- phantom references appearing in article reference lists.
preprocessSingleArg('child')
preprocessSingleArg('bodyclass')
preprocessSingleArg('subbox')
preprocessSingleArg('bodystyle')
preprocessSingleArg('title')
preprocessSingleArg('titleclass')
preprocessSingleArg('titlestyle')
preprocessSingleArg('above')
preprocessSingleArg('aboveclass')
preprocessSingleArg('abovestyle')
preprocessArgs({
{prefix = 'subheader', depend = {'subheaderstyle', 'subheaderrowclass'}}
}, 10)
preprocessSingleArg('subheaderstyle')
preprocessSingleArg('subheaderclass')
preprocessSingleArg('image')
preprocessSingleArg('caption')
preprocessArgs({
{prefix = 'image', depend = {'caption', 'imagerowclass'}}
}, 10)
preprocessSingleArg('captionstyle')
preprocessSingleArg('imagestyle')
preprocessSingleArg('imageclass')
preprocessArgs({
{prefix = 'header'},
{prefix = 'data', depend = {'label'}},
{prefix = 'data', suffix = 'a', depend = {'label'}},
{prefix = 'data', suffix = 'a', depend = {'data'}, dependsuffix='c'},
{prefix = 'data', suffix = 'b', depend = {'label'}},
{prefix = 'data', suffix = 'b', depend = {'data'}, dependsuffix='c'},
{prefix = 'rowclass'},
{prefix = 'rowstyle'},
{prefix = 'rowcellstyle'},
{prefix = 'class'},
{prefix = 'dataid'},
{prefix = 'labelid'},
{prefix = 'headerid'},
{prefix = 'rowid'}
}, 50)
preprocessSingleArg('headerclass')
preprocessSingleArg('headerstyle')
preprocessSingleArg('labelstyle')
preprocessSingleArg('datastyle')
preprocessSingleArg('datastylea')
preprocessSingleArg('datastyleb')
preprocessSingleArg('datastylec')
preprocessSingleArg('below')
preprocessSingleArg('belowclass')
preprocessSingleArg('belowstyle')
preprocessSingleArg('name')
args['italic title'] = origArgs['italic title'] -- different behaviour if blank or absent
preprocessSingleArg('decat')
return _infobox()
end
return p
fs0pc545e5vlq63zmon4tux2jhjrw3b
Module:Infobox mapframe
828
3249
36423
2025-12-15T16:00:48Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local mf = require('Module:Mapframe') local getArgs = require('Module:Arguments').getArgs local yesno = require('Module:Yesno') local infoboxImage = require('Module:InfoboxImage').InfoboxImage -- Defaults local DEFAULT_FRAME_WIDTH = "270" local DEFAULT_FRAME_HEIGHT = "200" local DEFAULT_ZOOM = 10 local DEFAULT_GEOMASK_STROKE_WIDTH = "1" local DEFAULT_GEOMASK_STROKE_COLOR = "#777777" local DEFAULT_GEOMASK_FILL = "#888888" local DEFAULT_GEOMASK_FILL...'
36423
Scribunto
text/plain
local mf = require('Module:Mapframe')
local getArgs = require('Module:Arguments').getArgs
local yesno = require('Module:Yesno')
local infoboxImage = require('Module:InfoboxImage').InfoboxImage
-- Defaults
local DEFAULT_FRAME_WIDTH = "270"
local DEFAULT_FRAME_HEIGHT = "200"
local DEFAULT_ZOOM = 10
local DEFAULT_GEOMASK_STROKE_WIDTH = "1"
local DEFAULT_GEOMASK_STROKE_COLOR = "#777777"
local DEFAULT_GEOMASK_FILL = "#888888"
local DEFAULT_GEOMASK_FILL_OPACITY = "0.5"
local DEFAULT_SHAPE_STROKE_WIDTH = "3"
local DEFAULT_SHAPE_STROKE_COLOR = "#FF0000"
local DEFAULT_SHAPE_FILL = "#606060"
local DEFAULT_SHAPE_FILL_OPACITY = "0.5"
local DEFAULT_LINE_STROKE_WIDTH = "5"
local DEFAULT_LINE_STROKE_COLOR = "#FF0000"
local DEFAULT_MARKER_COLOR = "#5E74F3"
-- Trim whitespace from args, and remove empty args
function trimArgs(argsTable)
local cleanArgs = {}
for key, val in pairs(argsTable) do
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val ~= '' then
cleanArgs[key] = val
end
else
cleanArgs[key] = val
end
end
return cleanArgs
end
function getBestStatement(item_id, property_id)
if not(item_id) or not(mw.wikibase.isValidEntityId(item_id)) or not(mw.wikibase.entityExists(item_id)) then
return false
end
local statements = mw.wikibase.getBestStatements(item_id, property_id)
if not statements or #statements == 0 then
return false
end
local hasNoValue = ( statements[1].mainsnak and statements[1].mainsnak.snaktype == 'novalue' )
if hasNoValue then
return false
end
return statements[1]
end
function hasWikidataProperty(item_id, property_id)
return getBestStatement(item_id, property_id) and true or false
end
function getStatementValue(statement)
return statement and statement.mainsnak and statement.mainsnak.datavalue and statement.mainsnak.datavalue.value or nil
end
function relatedEntity(item_id, property_id)
local value = getStatementValue( getBestStatement(item_id, property_id) )
return value and value.id or false
end
function idType(id)
if not id then
return nil
elseif mw.ustring.match(id, "[Pp]%d+") then
return "property"
elseif mw.ustring.match(id, "[Qq]%d+") then
return "item"
else
return nil
end
end
function getZoom(value, unit)
local length_km
if unit == 'km' then
length_km = tonumber(value)
elseif unit == 'mi' then
length_km = tonumber(value)*1.609344
elseif unit == 'km2' then
length_km = math.sqrt(tonumber(value))
elseif unit == 'mi2' then
length_km = math.sqrt(tonumber(value))*1.609344
end
-- max for zoom 2 is 6400km, for zoom 3 is 3200km, for zoom 4 is 1600km, etc
local zoom = math.floor(8 - (math.log10(length_km) - 2)/(math.log10(2)))
-- limit to values below 17
zoom = math.min(17, zoom)
-- take off 1 when calculated from area, to account for unusual shapes
if unit == 'km2' or unit == 'mi2' then
zoom = zoom - 1
end
-- minimum value is 1
return math.max(1, zoom)
end
function shouldAutoRun(frame)
-- Check if should be running
local explicitlyOn = yesno(mw.text.trim(frame.getParent(frame).args.mapframe or "")) -- true of false or nil
local onByDefault = (explicitlyOn == nil) and yesno(mw.text.trim(frame.args.onByDefault or ""), false) -- true or false
return explicitlyOn or onByDefault
end
function argsFromAuto(frame)
-- Get args from the frame (invoke call) and the parent (template call).
-- Frame arguments are default values which are overridden by parent values
-- when both are present
local args = getArgs(frame, {parentFirst = true})
-- Discard args not prefixed with "mapframe-", remove that prefix from those that remain
local fixedArgs = {}
for name, val in pairs(args) do
local fixedName = string.match(name, "^mapframe%-(.+)$" )
if fixedName then
fixedArgs[fixedName] = val
-- allow coord, coordinates, etc to be unprefixed
elseif name == "coordinates" or name == "coord" or name == "coordinate" and not fixedArgs.coord then
fixedArgs.coord = val
-- allow id, qid to be unprefixed, map to id (if not already present)
elseif name == "id" or name == "qid" and not fixedArgs.id then
fixedArgs.id = val
end
end
return fixedArgs
end
local p = {}
p.autocaption = function(frame)
if not shouldAutoRun(frame) then return "" end
local args = argsFromAuto(frame)
if args.caption then
return args.caption
elseif args.switcher then
return ""
end
local maskItem
local maskType = idType(args.geomask)
if maskType == 'item' then
maskItem = args.geomask
elseif maskType == "property" then
maskItem = relatedEntity(args.id or mw.wikibase.getEntityIdForCurrentPage(), args.geomask)
end
local maskItemLabel = maskItem and mw.wikibase.getLabel( maskItem )
return maskItemLabel and "Location in "..maskItemLabel or ""
end
function parseCustomWikitext(customWikitext)
-- infoboxImage will format an image if given wikitext containing an
-- image, or else pass through the wikitext unmodified
return infoboxImage({
args = {
image = customWikitext
}
})
end
p.auto = function(frame)
if not shouldAutoRun(frame) then return "" end
local args = argsFromAuto(frame)
if args.custom then
return frame:preprocess(parseCustomWikitext(args.custom))
end
local mapframe = p._main(args)
return frame:preprocess(mapframe)
end
p.main = function(frame)
local parent = frame.getParent(frame)
local parentArgs = parent.args
local mapframe = p._main(parentArgs)
return frame:preprocess(mapframe)
end
p._main = function(_config)
-- `config` is the args passed to this module
local config = trimArgs(_config)
-- Require wikidata item, or specified coords
local wikidataId = config.id or mw.wikibase.getEntityIdForCurrentPage()
if not(wikidataId) and not(config.coord) then
return ''
end
-- Require coords (specified or from wikidata), so that map will be centred somewhere
-- (P625 = coordinate location)
local hasCoordinates = hasWikidataProperty(wikidataId, 'P625') or config.coordinates or config.coord
if not hasCoordinates then
return ''
end
-- `args` is the arguments which will be passed to the mapframe module
local args = {}
-- Some defaults/overrides for infobox presentation
args.display = "inline"
args.frame = "yes"
args.plain = "yes"
args["frame-width"] = config["frame-width"] or config.width or DEFAULT_FRAME_WIDTH
args["frame-height"] = config["frame-height"] or config.height or DEFAULT_FRAME_HEIGHT
args["frame-align"] = "center"
args["frame-coord"] = config["frame-coordinates"] or config["frame-coord"] or ""
-- Note: config["coordinates"] or config["coord"] should not be used for the alignment of the frame;
-- see talk page ( https://en.wikipedia.org/wiki/Special:Diff/876492931 )
-- deprecated lat and long parameters
args["frame-lat"] = config["frame-lat"] or config["frame-latitude"] or ""
args["frame-long"] = config["frame-long"] or config["frame-longitude"] or ""
-- Calculate zoom from length or area (converted to km or km2)
if config.length_km then
args.zoom = getZoom(config.length_km, 'km')
elseif config.length_mi then
args.zoom = getZoom(config.length_mi, 'mi')
elseif config.area_km2 then
args.zoom = getZoom(config.area_km2, 'km2')
elseif config.area_mi2 then
args.zoom = getZoom(config.area_mi2, 'mi2')
else
args.zoom = config.zoom or DEFAULT_ZOOM
end
-- Conditionals: whether point, geomask should be shown
local hasOsmRelationId = hasWikidataProperty(wikidataId, 'P402') -- P402 is OSM relation ID
local shouldShowPointMarker;
if config.point == "on" then
shouldShowPointMarker = true
elseif config.point == "none" then
shouldShowPointMarker = false
else
shouldShowPointMarker = not(hasOsmRelationId) or (config.marker and config.marker ~= 'none') or (config.coordinates or config.coord)
end
local shouldShowShape = config.shape ~= 'none'
local shapeType = config.shape == 'inverse' and 'shape-inverse' or 'shape'
local shouldShowLine = config.line ~= 'none'
local maskItem
local useWikidata = wikidataId and true or false -- Use shapes/lines based on wikidata id, if there is one
-- But do not use wikidata when local coords are specified (and not turned off), unless explicitly set
if useWikidata and config.coord and shouldShowPointMarker then
useWikidata = config.wikidata and true or false
end
-- Switcher
if config.switcher == "zooms" then
-- switching between zoom levels
local maxZoom = math.max(tonumber(args.zoom), 3) -- what zoom would have otherwise been (if 3 or more, otherwise 3)
local minZoom = 1 -- completely zoomed out
local midZoom = math.floor((maxZoom + minZoom)/2) -- midway between maxn and min
args.switch = "zoomed in, zoomed midway, zoomed out"
args.zoom = string.format("SWITCH:%d,%d,%d", maxZoom, midZoom, minZoom)
elseif config.switcher == "auto" then
-- switching between P276 and P131 areas with recursive lookup, e.g. item's city,
-- that city's state, and that state's country
args.zoom = nil -- let kartographer determine the zoom
local maskLabels = {}
local maskItems = {}
local maskItemId = relatedEntity(wikidataId, "P276") or relatedEntity(wikidataId, "P131")
local maskLabel = mw.wikibase.getLabel(maskItemId)
while maskItemId and maskLabel and mw.text.trim(maskLabel) ~= "" do
table.insert(maskLabels, maskLabel)
table.insert(maskItems, maskItemId)
maskItemId = maskItemId and relatedEntity(maskItemId, "P131")
maskLabel = maskItemId and mw.wikibase.getLabel(maskItemId)
end
if #maskLabels > 1 then
args.switch = table.concat(maskLabels, "###")
maskItem = "SWITCH:" .. table.concat(maskItems, ",")
elseif #maskLabels == 1 then
maskItem = maskItemId[1]
end
elseif config.switcher == "geomasks" and config.geomask then
-- switching between items in geomask parameter
args.zoom = nil -- let kartographer determine the zoom
local separator = (mw.ustring.find(config.geomask, "###", 0, true ) and "###") or
(mw.ustring.find(config.geomask, ";", 0, true ) and ";") or ","
local pattern = "%s*"..separator.."%s*"
local maskItems = mw.text.split(mw.ustring.gsub(config.geomask, "SWITCH:", ""), pattern)
local maskLabels = {}
if #maskItems > 1 then
for i, item in ipairs(maskItems) do
table.insert(maskLabels, mw.wikibase.getLabel(item))
end
args.switch = table.concat(maskLabels, "###")
maskItem = "SWITCH:" .. table.concat(maskItems, ",")
end
end
-- resolve geomask item id (if not using geomask switcher)
if not maskItem then --
local maskType = idType(config.geomask)
if maskType == 'item' then
maskItem = config.geomask
elseif maskType == "property" then
maskItem = relatedEntity(wikidataId, config.geomask)
end
end
-- Keep track of arg numbering
local argNumber = ''
local function incrementArgNumber()
if argNumber == '' then
argNumber = 2
else
argNumber = argNumber + 1
end
end
-- Geomask
if maskItem then
args["type"..argNumber] = "shape-inverse"
args["id"..argNumber] = maskItem
args["stroke-width"..argNumber] = config["geomask-stroke-width"] or DEFAULT_GEOMASK_STROKE_WIDTH
args["stroke-color"..argNumber] = config["geomask-stroke-color"] or config["geomask-stroke-colour"] or DEFAULT_GEOMASK_STROKE_COLOR
args["fill"..argNumber] = config["geomask-fill"] or DEFAULT_GEOMASK_FILL
args["fill-opacity"..argNumber] = config["geomask-fill-opacity"] or DEFAULT_SHAPE_FILL_OPACITY
-- Let kartographer determine zoom and position, unless it is explicitly set in config
if not config.zoom and not config.switcher then
args.zoom = nil
args["frame-coord"] = nil
args["frame-lat"] = nil
args["frame-long"] = nil
local maskArea = getStatementValue( getBestStatement(maskItem, 'P2046') )
end
incrementArgNumber()
-- Hack to fix phab:T255932
if not args.zoom then
args["type"..argNumber] = "line"
args["id"..argNumber] = maskItem
args["stroke-width"..argNumber] = 0
incrementArgNumber()
end
end
-- Shape (or shape-inverse)
if useWikidata and shouldShowShape then
args["type"..argNumber] = shapeType
if config.id then args["id"..argNumber] = config.id end
args["stroke-width"..argNumber] = config["shape-stroke-width"] or config["stroke-width"] or DEFAULT_SHAPE_STROKE_WIDTH
args["stroke-color"..argNumber] = config["shape-stroke-color"] or config["shape-stroke-colour"] or config["stroke-color"] or config["stroke-colour"] or DEFAULT_SHAPE_STROKE_COLOR
args["fill"..argNumber] = config["shape-fill"] or DEFAULT_SHAPE_FILL
args["fill-opacity"..argNumber] = config["shape-fill-opacity"] or DEFAULT_SHAPE_FILL_OPACITY
incrementArgNumber()
end
-- Line
if useWikidata and shouldShowLine then
args["type"..argNumber] = "line"
if config.id then args["id"..argNumber] = config.id end
args["stroke-width"..argNumber] = config["line-stroke-width"] or config["stroke-width"] or DEFAULT_LINE_STROKE_WIDTH
args["stroke-color"..argNumber] = config["line-stroke-color"] or config["line-stroke-colour"] or config["stroke-color"] or config["stroke-colour"] or DEFAULT_LINE_STROKE_COLOR
incrementArgNumber()
end
-- Point
if shouldShowPointMarker then
args["type"..argNumber] = "point"
if config.id then args["id"..argNumber] = config.id end
if config.coord then args["coord"..argNumber] = config.coord end
if config.marker then args["marker"..argNumber] = config.marker end
args["marker-color"..argNumber] = config["marker-color"] or config["marker-colour"] or DEFAULT_MARKER_COLOR
incrementArgNumber()
end
local mapframe = args.switch and mf.multi(args) or mf._main(args)
--local tracking = hasOsmRelationId and '' or '[[Category:Infobox mapframe without OSM relation ID on Wikidata]]'
return mapframe --.. tracking
end
return p
8k5d8ahbbdis317pmvj0zlq9jd33d8y
Module:Mapframe
828
3250
36424
2025-12-15T16:02:08Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Note: Originally written on English Wikipedia at https://en.wikipedia.org/wiki/Module:Mapframe --[[---------------------------------------------------------------------------- ##### Localisation (L10n) settings ##### Replace values in quotes ("") with localised values ----------------------------------------------------------------------------]]-- local L10n = {} -- Modue dependencies local transcluder -- local copy of https://www.mediawiki....'
36424
Scribunto
text/plain
-- Note: Originally written on English Wikipedia at https://en.wikipedia.org/wiki/Module:Mapframe
--[[----------------------------------------------------------------------------
##### Localisation (L10n) settings #####
Replace values in quotes ("") with localised values
----------------------------------------------------------------------------]]--
local L10n = {}
-- Modue dependencies
local transcluder -- local copy of https://www.mediawiki.org/wiki/Module:Transcluder loaded lazily
-- "strict" should not be used, at least until all other modules which require this module are not using globals.
-- Template parameter names (unnumbered versions only)
-- Specify each as either a single string, or a table of strings (aliases)
-- Aliases are checked left-to-right, i.e. `{ "one", "two" }` is equivalent to using `{{{one| {{{two|}}} }}}` in a template
L10n.para = {
display = "display",
type = "type",
id = { "id", "ids" },
from = "from",
raw = "raw",
title = "title",
description = "description",
strokeColor = { "stroke-color", "stroke-colour" },
strokeWidth = "stroke-width",
strokeOpacity = "stroke-opacity",
fill = "fill",
fillOpacity = "fill-opacity",
coord = "coord",
marker = "marker",
markerColor = { "marker-color", "marker-colour" },
markerSize = "marker-size",
radius = { "radius", "radius_m" },
radiusKm = "radius_km",
radiusFt = "radius_ft",
radiusMi = "radius_mi",
edges = "edges",
text = "text",
icon = "icon",
zoom = "zoom",
frame = "frame",
plain = "plain",
frameWidth = "frame-width",
frameHeight = "frame-height",
frameCoordinates = { "frame-coordinates", "frame-coord" },
frameLatitude = { "frame-lat", "frame-latitude" },
frameLongitude = { "frame-long", "frame-longitude" },
frameAlign = "frame-align",
switch = "switch",
overlay = "overlay",
overlayBorder = "overlay-border",
overlayHorizontalAlignment = "overlay-horizontal-alignment",
overlayVerticalAlignment = "overlay-vertical-alignment",
overlayHorizontalOffset = "overlay-horizontal-offset",
overlayVerticalOffset = "overlay-vertical-offset"
}
-- Names of other templates this module can extract coordinates from
L10n.template = {
coord = { -- The coord template, as well as templates with output that contains {{coord}}
"Coord", "Coord/sandbox",
"NRHP row", "NRHP row/sandbox",
"WikidataCoord", "WikidataCoord/sandbox", "Wikidatacoord", "Wikidata coord"
}
}
-- Error messages
L10n.error = {
badDisplayPara = "Invalid display parameter",
noCoords = "Coordinates must be specified on Wikidata or in |" .. ( type(L10n.para.coord)== 'table' and L10n.para.coord[1] or L10n.para.coord ) .. "=",
wikidataCoords = "Coordinates not found on Wikidata",
noCircleCoords = "Circle centre coordinates must be specified, or available via Wikidata",
negativeRadius = "Circle radius must be a positive number",
noRadius = "Circle radius must be specified",
negativeEdges = "Circle edges must be a positive number",
noSwitchPara = "Found only one switch value in |" .. ( type(L10n.para.switch)== 'table' and L10n.para.switch[1] or L10n.para.switch ) .. "=",
oneSwitchLabel = "Found only one label in |" .. ( type(L10n.para.switch)== 'table' and L10n.para.switch[1] or L10n.para.switch ) .. "=",
noSwitchLists = "At least one parameter must have a SWITCH: list",
switchMismatches = "All SWITCH: lists must have the same number of values",
-- "%s" and "%d" tokens will be replaced with strings and numbers when used
oneSwitchValue = "Found only one switch value in |%s=",
fewerSwitchLabels = "Found %d switch values but only %d labels in |" .. ( type(L10n.para.switch)== 'table' and L10n.para.switch[1] or L10n.para.switch ) .. "=",
noNamedCoords = "No named coordinates found in %s"
}
-- Other strings
L10n.str = {
-- valid values for display parameter, e.g. (|display=inline) or (|display=title) or (|display=inline,title) or (|display=title,inline)
inline = "inline",
title = "title",
dsep = ",", -- separator between inline and title (comma in the example above)
-- valid values for type paramter
line = "line", -- geoline feature (e.g. a road)
shape = "shape", -- geoshape feature (e.g. a state or province)
shapeInverse = "shape-inverse", -- geomask feature (the inverse of a geoshape)
data = "data", -- geoJSON data page on Commons
point = "point", -- single point feature (coordinates)
circle = "circle", -- circular area around a point
named = "named", -- all named coordinates in an article or section
-- Keyword to indicate a switch list. Must NOT use the special characters ^$()%.[]*+-?
switch = "SWITCH",
-- valid values for icon, frame, and plain parameters
affirmedWords = ' '..table.concat({
"add",
"added",
"affirm",
"affirmed",
"include",
"included",
"on",
"true",
"yes",
"y"
}, ' ')..' ',
declinedWords = ' '..table.concat({
"decline",
"declined",
"exclude",
"excluded",
"false",
"none",
"not",
"no",
"n",
"off",
"omit",
"omitted",
"remove",
"removed"
}, ' ')..' '
}
-- Default values for parameters
L10n.defaults = {
display = L10n.str.inline,
text = "Map",
frameWidth = "300",
frameHeight = "200",
frameAlign = "right",
markerColor = "5E74F3",
markerSize = nil,
strokeColor = "#ff0000",
strokeWidth = 6,
edges = 32, -- number of edges used to approximate a circle
overlayBorder = "1px solid white",
overlayHorizontalAlignment = "right",
overlayHorizontalOffset = "0",
overlayVerticalAlignment = "bottom",
overlayVerticalOffset = "0"
}
-- #### End of L10n settings ####
--[[----------------------------------------------------------------------------
Utility methods
----------------------------------------------------------------------------]]--
local util = {}
--[[
Looks up a parameter value based on the id (a key from the L10n.para table) and
optionally a suffix, for parameters that can be suffixed (e.g. type2 is type
with suffix 2).
@param {table} args key-value pairs of parameter names and their values
@param {string} param_id id for parameter name (key from the L10n.para table)
@param {string} [suffix] suffix for parameter name
@returns {string|nil} parameter value if found, or nil if not found
]]--
function util.getParameterValue(args, param_id, suffix)
suffix = suffix or ''
if type( L10n.para[param_id] ) ~= 'table' then
return args[L10n.para[param_id]..suffix]
end
for _i, paramAlias in ipairs(L10n.para[param_id]) do
if args[paramAlias..suffix] then
return args[paramAlias..suffix]
end
end
return nil
end
--[[
Trim whitespace from args, and remove empty args. Also fix control characters.
@param {table} argsTable
@returns {table} trimmed args table
]]--
function util.trimArgs(argsTable)
local cleanArgs = {}
for key, val in pairs(argsTable) do
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val ~= '' then
-- control characters inside json need to be escaped, but stripping them is simpler
-- See also T214984
-- However, *don't* strip control characters from wikitext or you'll break strip markers
cleanArgs[key] = (not util.matchesParam('text', key)) and val:gsub('%c',' ') or val
end
else
cleanArgs[key] = val
end
end
return cleanArgs
end
--[[
Check if a parameter name matches an unlocalized parameter key
@param {string} key - the unlocalized parameter name to search through
@param {string} name - the localized parameter name to check
@param {string|nil} - an optional suffix to apply to the value(s) from the localization key
@returns {boolean} true if the name matches the parameter, false otherwise
]]--
function util.matchesParam(key, name, suffix)
local param = L10n.para[key]
suffix = suffix or ''
if type(param) == 'table' then
for _, v in pairs(param) do
if (v .. suffix) == name then return true end
end
return false
end
return ((param .. suffix) == name)
end
--[[
Check if a value is affirmed (one of the values in L10n.str.affirmedWords)
@param {string} val Value to be checked
@returns {boolean} true if affirmed, false otherwise
]]--
function util.isAffirmed(val)
if not(val) then return false end
return string.find(L10n.str.affirmedWords, ' '..val..' ', 1, true ) and true or false
end
--[[
Check if a value is declined (one of the values in L10n.str.declinedWords)
@param {string} val Value to be checked
@returns {boolean} true if declined, false otherwise
]]--
function util.isDeclined(val)
if not(val) then return false end
return string.find(L10n.str.declinedWords , ' '..val..' ', 1, true ) and true or false
end
--[[
Check if the name of a template matches the known coord templates or wrappers
(in L10n.template.coord). The name is normalised when checked, so e.g. the names
"Coord", "coord", and " Coord" all return true.
@param {string} name
@returns {boolean} true if it is a coord template or wrapper, false otherwise
]]--
function util.isCoordTemplateOrWrapper(name)
name = mw.text.trim(name)
local inputTitle = mw.title.new(name, 'Template')
if not inputTitle then
return false
end
-- Create (or reuse) mw.title objects for each known coord template/wrapper.
-- Stored in L10n.template.title so that they don't need to be recreated
-- each time this function is called
if not L10n.template.titles then
L10n.template.titles = {}
for _, v in pairs(L10n.template.coord) do
table.insert(L10n.template.titles, mw.title.new(v, 'Template'))
end
end
for _, templateTitle in pairs(L10n.template.titles) do
if mw.title.equals(inputTitle, templateTitle) then
return true
end
end
return false
end
--[[
Recursively extract coord templates which have a name parameter.
@param {string} wikitext
@returns {table} table sequence of coord templates
]]--
function util.extractCoordTemplates(wikitext)
local output = {}
local templates = mw.ustring.gmatch(wikitext, '{%b{}}')
local subtemplates = {}
for template in templates do
local templateName = mw.ustring.match(template, '{{([^}|]+)')
local nameParam = mw.ustring.match(template, "|%s*name%s*=%s*[^}|]+")
if util.isCoordTemplateOrWrapper(templateName) then
if nameParam then table.insert(output, template) end
elseif mw.ustring.find(mw.ustring.sub(template, 2), "{{") then
local subOutput = util.extractCoordTemplates(mw.ustring.sub(template, 2))
for _, t in pairs(subOutput) do
table.insert(output, t)
end
end
end
-- ensure coords are not using title display
for k, v in pairs(output) do
output[k] = mw.ustring.gsub(v, "|%s*display%s*=[^|}]+", "|display=inline")
end
return output
end
--[[
Gets all named coordiates from a page or a section of a page.
@param {string|nil} page Page name, or name#section, to get named coordinates
from. If the name is omitted, i.e. #section or nil or empty string, then
the current page will be used.
@returns {table} sequence of {coord, name, description} tables where coord is
the coordinates in a format suitable for #util.parseCoords, name is a string,
and description is a string (coordinates in a format suitable for displaying
to the reader). If for some reason the name can't be found, the description
is nil and the name contains display-format coordinates.
@throws {L10n.error.noNamedCoords} if no named coordinates are found.
]]--
function util.getNamedCoords(page)
if transcluder == nil then
-- load [[Module:Transcluder]] lazily so it is only transcluded on pages that
-- actually use named coordinates
transcluder = require("Module:Transcluder")
end
local parts = mw.text.split(page or "", "#", true)
local name = parts[1] == "" and mw.title.getCurrentTitle().prefixedText or parts[1]
local section = parts[2]
local pageWikitext = transcluder.get(section and name.."#"..section or name)
local coordTemplates = util.extractCoordTemplates(pageWikitext)
if #coordTemplates == 0 then error(string.format(L10n.error.noNamedCoords, page or name), 0) end
local frame = mw.getCurrentFrame()
local sep = "________"
local expandedContent = frame:preprocess(table.concat(coordTemplates, sep))
local expandedTemplates = mw.text.split(expandedContent, sep)
local namedCoords = {}
for _, expandedTemplate in pairs(expandedTemplates) do
local coord = mw.ustring.match(expandedTemplate, "<span class=\"geo%-dec\".->(.-)</span>")
if coord then
local name = (
-- name specified by a wrapper template, e.g [[Article|Name]]
mw.ustring.match(expandedTemplate, "<span class=\"mapframe%-coord%-name\">(.-)</span>") or
-- name passed into coord template
mw.ustring.match(expandedTemplate, "<span class=\"fn org\">(.-)</span>") or
-- default to the coordinates if the name can't be retrieved
coord
)
local description = name ~= coord and coord
local coord = mw.ustring.gsub(coord, "[° ]", "_")
table.insert(namedCoords, {coord=coord, name=name, description=description})
end
end
if #namedCoords == 0 then error(string.format(L10n.error.noNamedCoords, page or name), 0) end
return namedCoords
end
--[[
Parse coordinate values from the params passed in a GeoHack url (such as
//tools.wmflabs.org/geohack/geohack.php?pagename=Example¶ms=1_2_N_3_4_W_ or
//tools.wmflabs.org/geohack/geohack.php?pagename=Example¶ms=1.23_S_4.56_E_ )
or non-url string in the same format (such as `1_2_N_3_4_W_` or `1.23_S_4.56_E_`)
@param {string} coords string containing coordinates
@returns {number, number} latitude, longitude
]]--
function util.parseCoords(coords)
local coordsPatt
if mw.ustring.find(coords, "params=", 1, true) then
-- prevent false matches from page name, e.g. ?pagename=Lorem_S._Ipsum
coordsPatt = 'params=([_%.%d]+[NS][_%.%d]+[EW])'
else
-- not actually a geohack url, just the same format
coordsPatt = '[_%.%d]+[NS][_%.%d]+[EW]'
end
local parts = mw.text.split((mw.ustring.match(coords, coordsPatt) or ''), '_')
local lat_d = tonumber(parts[1])
local lat_m = tonumber(parts[2]) -- nil if coords are in decimal format
local lat_s = lat_m and tonumber(parts[3]) -- nil if coords are either in decimal format or degrees and minutes only
local lat = lat_d + (lat_m or 0)/60 + (lat_s or 0)/3600
if parts[#parts/2] == 'S' then
lat = lat * -1
end
local long_d = tonumber(parts[1+#parts/2])
local long_m = tonumber(parts[2+#parts/2]) -- nil if coords are in decimal format
local long_s = long_m and tonumber(parts[3+#parts/2]) -- nil if coords are either in decimal format or degrees and minutes only
local long = long_d + (long_m or 0)/60 + (long_s or 0)/3600
if parts[#parts] == 'W' then
long = long * -1
end
return lat, long
end
--[[
Get coordinates from a Wikidata item
@param {string} item_id Wikidata item id (Q number)
@returns {number, number} latitude, longitude
@throws {L10n.error.noCoords} if item_id is invalid or the item does not exist
@throws {L10n.error.wikidataCoords} if the the item does not have a P625
statement (coordinates), or it is set to "no value"
]]--
function util.wikidataCoords(item_id)
if not (item_id and mw.wikibase.isValidEntityId(item_id) and mw.wikibase.entityExists(item_id)) then
error(L10n.error.noCoords, 0)
end
local coordStatements = mw.wikibase.getBestStatements(item_id, 'P625')
if not coordStatements or #coordStatements == 0 then
error(L10n.error.wikidataCoords, 0)
end
local hasNoValue = ( coordStatements[1].mainsnak and (coordStatements[1].mainsnak.snaktype == 'novalue' or coordStatements[1].mainsnak.snaktype == 'somevalue') )
if hasNoValue then
error(L10n.error.wikidataCoords, 0)
end
local wdCoords = coordStatements[1]['mainsnak']['datavalue']['value']
return tonumber(wdCoords['latitude']), tonumber(wdCoords['longitude'])
end
--[[
Creates a polygon that approximates a circle
@param {number} lat Latitude
@param {number} long Longitude
@param {number} radius Radius in metres
@param {number} n Number of edges for the polygon
@returns {table} sequence of {latitude, longitude} table sequences, where
latitude and longitude are both numbers
]]--
function util.circleToPolygon(lat, long, radius, n) -- n is number of edges
-- Based on https://github.com/gabzim/circle-to-polygon, ISC licence
local function offset(cLat, cLon, distance, bearing)
local lat1 = math.rad(cLat)
local lon1 = math.rad(cLon)
local dByR = distance / 6378137 -- distance divided by 6378137 (radius of the earth) wgs84
local lat = math.asin(
math.sin(lat1) * math.cos(dByR) +
math.cos(lat1) * math.sin(dByR) * math.cos(bearing)
)
local lon = lon1 + math.atan2(
math.sin(bearing) * math.sin(dByR) * math.cos(lat1),
math.cos(dByR) - math.sin(lat1) * math.sin(lat)
)
return {math.deg(lon), math.deg(lat)}
end
local coordinates = {};
local i = 0;
while i < n do
table.insert(coordinates,
offset(lat, long, radius, (2*math.pi*i*-1)/n)
)
i = i + 1
end
table.insert(coordinates, offset(lat, long, radius, 0))
return coordinates
end
--[[
Get the number of key-value pairs in a table, which might not be a sequence.
@param {table} t
@returns {number} count of key-value pairs
]]--
function util.tableCount(t)
local count = 0
for k, v in pairs(t) do
count = count + 1
end
return count
end
--[[
For a table where the values are all tables, returns either the util.tableCount
of the subtables if they are all the same, or nil if they are not all the same.
@param {table} t
@returns {number|nil} count of key-value pairs of subtable, or nil if subtables
have different counts
]]--
function util.subTablesCount(t)
local count = nil
for k, v in pairs(t) do
if count == nil then
count = util.tableCount(v)
elseif count ~= util.tableCount(v) then
return nil
end
end
return count
end
--[[
Splits a list into a table sequence. The items in the list may be separated by
commas, or by semicolons (if items may contain commas), or by "###" (if items
may contain semicolons).
@param {string} listString
@returns {table} sequence of list items
]]--
function util.tableFromList(listString)
if type(listString) ~= "string" or listString == "" then return nil end
local separator = (mw.ustring.find(listString, "###", 0, true ) and "###") or
(mw.ustring.find(listString, ";", 0, true ) and ";") or ","
local pattern = "%s*"..separator.."%s*"
return mw.text.split(listString, pattern)
end
-- Boolean in outer scope indicating if Kartographer should be able to
-- automatically calculate coordinates (see phab:T227402)
local coordsDerivedFromFeatures = false;
--[[----------------------------------------------------------------------------
Make methods: These take in a table of arguments, and return either a string
or a table to be used in the eventual output.
----------------------------------------------------------------------------]]--
local make = {}
--[[
Makes content to go inside the maplink or mapframe tag.
@param {table} args
@returns {string} tag content
]]--
function make.content(args)
if util.getParameterValue(args, 'raw') then
coordsDerivedFromFeatures = true -- Kartographer should be able to automatically calculate coords from raw geoJSON
return util.getParameterValue(args, 'raw')
end
local content = {}
local argsExpanded = {}
for k, v in pairs(args) do
local index = string.match( k, '^[^0-9]+([0-9]*)$' )
if index ~= nil then
local indexNumber = ''
if index ~= '' then
indexNumber = tonumber(index)
else
indexNumber = 1
end
if argsExpanded[indexNumber] == nil then
argsExpanded[indexNumber] = {}
end
argsExpanded[indexNumber][ string.gsub(k, index, '') ] = v
end
end
for contentIndex, contentArgs in pairs(argsExpanded) do
local argType = util.getParameterValue(contentArgs, "type")
-- Kartographer automatically calculates coords if geolines/shapes are used (T227402)
if not coordsDerivedFromFeatures then
coordsDerivedFromFeatures = ( argType == L10n.str.line or argType == L10n.str.shape ) and true or false
end
if argType == L10n.str.named then
local namedCoords = util.getNamedCoords(util.getParameterValue(contentArgs, "from"))
local typeKey = type(L10n.para.type) == "table" and L10n.para.type[1] or L10n.para.type
local coordKey = type(L10n.para.coord) == "table" and L10n.para.coord[1] or L10n.para.coord
local titleKey = type(L10n.para.title) == "table" and L10n.para.title[1] or L10n.para.title
local descKey = type(L10n.para.description) == "table" and L10n.para.description[1] or L10n.para.description
for _, namedCoord in pairs(namedCoords) do
contentArgs[typeKey] = "point"
contentArgs[coordKey] = namedCoord.coord
contentArgs[titleKey] = namedCoord.name
contentArgs[descKey] = namedCoord.description
content[#content+1] = make.contentJson(contentArgs)
end
else
content[#content + 1] = make.contentJson(contentArgs)
end
end
--Single item, no array needed
if #content==1 then return content[1] end
--Multiple items get placed in a FeatureCollection
local contentArray = '[\n' .. table.concat( content, ',\n') .. '\n]'
return contentArray
end
--[[
Make coordinates from the coord arg, or the id arg, or the current page's
Wikidata item.
@param {table} args
@param {boolean} [plainOutput]
@returns {Mixed} Either:
{number, number} latitude, longitude if plainOutput is true; or
{table} table sequence of longitude, then latitude (gives the required format
for GeoJSON when encoded)
]]--
function make.coords(args, plainOutput)
local coords, lat, long
local frame = mw.getCurrentFrame()
if util.getParameterValue(args, 'coord') then
coords = frame:preprocess( util.getParameterValue(args, 'coord') )
lat, long = util.parseCoords(coords)
else
lat, long = util.wikidataCoords(util.getParameterValue(args, 'id') or mw.wikibase.getEntityIdForCurrentPage())
end
if plainOutput then
return lat, long
end
return {[0] = long, [1] = lat}
end
--[[
Makes a table of coordinates that approximate a circle.
@param {table} args
@returns {table} sequence of {latitude, longitude} table sequences, where
latitude and longitude are both numbers
@throws {L10n.error.noCircleCoords} if centre coordinates are not specified
@throws {L10n.error.noRadius} if radius is not specified
@throws {L10n.error.negativeRadius} if radius is negative or zero
@throws {L10n.error.negativeEdges} if edges is negative or zero
]]--
function make.circleCoords(args)
local lat, long = make.coords(args, true)
local radius = util.getParameterValue(args, 'radius')
if not radius then
radius = util.getParameterValue(args, 'radiusKm') and tonumber(util.getParameterValue(args, 'radiusKm'))*1000
if not radius then
radius = util.getParameterValue(args, 'radiusMi') and tonumber(util.getParameterValue(args, 'radiusMi'))*1609.344
if not radius then
radius = util.getParameterValue(args, 'radiusFt') and tonumber(util.getParameterValue(args, 'radiusFt'))*0.3048
end
end
end
local edges = util.getParameterValue(args, 'edges') or L10n.defaults.edges
if not lat or not long then
error(L10n.error.noCircleCoords, 0)
elseif not radius then
error(L10n.error.noRadius, 0)
elseif tonumber(radius) <= 0 then
error(L10n.error.negativeRadius, 0)
elseif tonumber(edges) <= 0 then
error(L10n.error.negativeEdges, 0)
end
return util.circleToPolygon(lat, long, radius, tonumber(edges))
end
--[[
Makes JSON data for a feature
@param contentArgs args for this feature. Keys must be the non-suffixed version
of the parameter names, i.e. use type, stroke, fill,... rather than type3,
stroke3, fill3,...
@returns {string} JSON encoded data
]]--
function make.contentJson(contentArgs)
local data = {}
if util.getParameterValue(contentArgs, 'type') == L10n.str.point or util.getParameterValue(contentArgs, 'type') == L10n.str.circle then
local isCircle = util.getParameterValue(contentArgs, 'type') == L10n.str.circle
data.type = "Feature"
data.geometry = {
type = isCircle and "LineString" or "Point",
coordinates = isCircle and make.circleCoords(contentArgs) or make.coords(contentArgs)
}
data.properties = {
title = util.getParameterValue(contentArgs, 'title') or mw.getCurrentFrame():getParent():getTitle()
}
if isCircle then
-- TODO: This is very similar to below, should be extracted into a function
data.properties.stroke = util.getParameterValue(contentArgs, 'strokeColor') or L10n.defaults.strokeColor
data.properties["stroke-width"] = tonumber(util.getParameterValue(contentArgs, 'strokeWidth')) or L10n.defaults.strokeWidth
local strokeOpacity = util.getParameterValue(contentArgs, 'strokeOpacity')
if strokeOpacity then
data.properties['stroke-opacity'] = tonumber(strokeOpacity)
end
local fill = util.getParameterValue(contentArgs, 'fill')
if fill then
data.properties.fill = fill
local fillOpacity = util.getParameterValue(contentArgs, 'fillOpacity')
data.properties['fill-opacity'] = fillOpacity and tonumber(fillOpacity) or 0.6
end
else -- is a point
local markerSymbol = util.getParameterValue(contentArgs, 'marker') or L10n.defaults.marker
-- allow blank to be explicitly specified, for overriding infoboxes or other templates with a default value
if markerSymbol ~= "blank" then
data.properties["marker-symbol"] = markerSymbol
end
data.properties["marker-color"] = util.getParameterValue(contentArgs, 'markerColor') or L10n.defaults.markerColor
data.properties["marker-size"] = util.getParameterValue(contentArgs, 'markerSize') or L10n.defaults.markerSize
end
else
data.type = "ExternalData"
if util.getParameterValue(contentArgs, 'type') == L10n.str.data or util.getParameterValue(contentArgs, 'from') then
data.service = "page"
elseif util.getParameterValue(contentArgs, 'type') == L10n.str.line then
data.service = "geoline"
elseif util.getParameterValue(contentArgs, 'type') == L10n.str.shape then
data.service = "geoshape"
elseif util.getParameterValue(contentArgs, 'type') == L10n.str.shapeInverse then
data.service = "geomask"
end
if util.getParameterValue(contentArgs, 'id') or (not (util.getParameterValue(contentArgs, 'from')) and mw.wikibase.getEntityIdForCurrentPage()) then
data.ids = util.getParameterValue(contentArgs, 'id') or mw.wikibase.getEntityIdForCurrentPage()
else
data.title = util.getParameterValue(contentArgs, 'from')
end
data.properties = {
stroke = util.getParameterValue(contentArgs, 'strokeColor') or L10n.defaults.strokeColor,
["stroke-width"] = tonumber(util.getParameterValue(contentArgs, 'strokeWidth')) or L10n.defaults.strokeWidth
}
local strokeOpacity = util.getParameterValue(contentArgs, 'strokeOpacity')
if strokeOpacity then
data.properties['stroke-opacity'] = tonumber(strokeOpacity)
end
local fill = util.getParameterValue(contentArgs, 'fill')
if fill and (data.service == "geoshape" or data.service == "geomask") then
data.properties.fill = fill
local fillOpacity = util.getParameterValue(contentArgs, 'fillOpacity')
if fillOpacity then
data.properties['fill-opacity'] = tonumber(fillOpacity)
end
end
end
data.properties.title = util.getParameterValue(contentArgs, 'title') or mw.title.getCurrentTitle().text
if util.getParameterValue(contentArgs, 'description') then
data.properties.description = util.getParameterValue(contentArgs, 'description')
end
return mw.text.jsonEncode(data)
end
--[[
Makes attributes for the maplink or mapframe tag.
@param {table} args
@param {boolean} [isTitle] Tag is to be displayed in the title of page rather
than inline
@returns {table<string,string>} key-value pairs of attribute names and values
]]--
function make.tagAttribs(args, isTitle)
local attribs = {}
if util.getParameterValue(args, 'zoom') then
attribs.zoom = util.getParameterValue(args, 'zoom')
end
if util.isDeclined(util.getParameterValue(args, 'icon')) then
attribs.class = "no-icon"
end
if util.getParameterValue(args, 'type') == L10n.str.point and not coordsDerivedFromFeatures then
local lat, long = make.coords(args, 'plainOutput')
attribs.latitude = tostring(lat)
attribs.longitude = tostring(long)
end
if util.isAffirmed(util.getParameterValue(args, 'frame')) and not(isTitle) then
attribs.width = util.getParameterValue(args, 'frameWidth') or L10n.defaults.frameWidth
attribs.height = util.getParameterValue(args, 'frameHeight') or L10n.defaults.frameHeight
if util.getParameterValue(args, 'frameCoordinates') then
local frameLat, frameLong = util.parseCoords(util.getParameterValue(args, 'frameCoordinates'))
attribs.latitude = frameLat
attribs.longitude = frameLong
else
if util.getParameterValue(args, 'frameLatitude') then
attribs.latitude = util.getParameterValue(args, 'frameLatitude')
end
if util.getParameterValue(args, 'frameLongitude') then
attribs.longitude = util.getParameterValue(args, 'frameLongitude')
end
end
if not attribs.latitude and not attribs.longitude and not coordsDerivedFromFeatures then
local success, lat, long = pcall(util.wikidataCoords, util.getParameterValue(args, 'id') or mw.wikibase.getEntityIdForCurrentPage())
if success then
attribs.latitude = tostring(lat)
attribs.longitude = tostring(long)
end
end
if util.getParameterValue(args, 'frameAlign') then
attribs.align = util.getParameterValue(args, 'frameAlign')
end
if util.isAffirmed(util.getParameterValue(args, 'plain')) then
attribs.frameless = "1"
else
attribs.text = util.getParameterValue(args, 'text') or L10n.defaults.text
end
else
attribs.text = util.getParameterValue(args, 'text') or L10n.defaults.text
end
return attribs
end
--[[
Makes maplink wikitext that will be located in the top-right of the title of the
page (the same place where coords with |display=title are positioned).
@param {table} args
@param {string} tagContent Content for the maplink tag
@returns {string}
]]--
function make.titleOutput(args, tagContent)
local titleTag = mw.text.tag('maplink', make.tagAttribs(args, true), tagContent)
local spanAttribs = {
style = "font-size: small;",
id = "coordinates"
}
return mw.text.tag('span', spanAttribs, titleTag)
end
--[[
Makes maplink or mapframe wikitext that will be located inline.
@param {table} args
@param {string} tagContent Content for the maplink tag
@returns {string}
]]--
function make.inlineOutput(args, tagContent)
local tagName = 'maplink'
if util.getParameterValue(args, 'frame') then
tagName = 'mapframe'
end
return mw.text.tag(tagName, make.tagAttribs(args), tagContent)
end
--[[
Makes the HTML required for the swicther to work, including the templatestyles
tag.
@param {table} params table sequence of {map, label} tables
@param {string} params{}.map Wikitext for mapframe map
@param {string} params{}.label Label text for swicther option
@param {table} options
@param {string} options.alignment "left" or "center" or "right"
@param {boolean} options.isThumbnail Display in a thumbnail
@param {string} options.width Width of frame, e.g. "200"
@param {string} [options.caption] Caption wikitext for thumnail
@retruns {string} swicther HTML
]]--
function make.switcherHtml(params, options)
options = options or {}
local frame = mw.getCurrentFrame()
local styles = frame:extensionTag{
name = "templatestyles",
args = {src = "Template:Maplink/styles-multi.css"}
}
local container = mw.html.create("div")
:addClass("switcher-container")
:addClass("mapframe-multi-container")
if options.alignment == "left" or options.alignment == "right" then
container:addClass("float"..options.alignment)
else -- alignment is "center"
container:addClass("center")
end
for i = 1, #params do
container
:tag("div")
:wikitext(params[i].map)
:tag("span")
:addClass("switcher-label")
:css("display", "none")
:wikitext(mw.text.trim(params[i].label))
end
if not options.isThumbnail then
return styles .. tostring(container)
end
local classlist = container:getAttr("class")
classlist = mw.ustring.gsub(classlist, "%a*"..options.alignment, "")
container:attr("class", classlist)
local outerCountainer = mw.html.create("div")
:addClass("mapframe-multi-outer-container")
:addClass("mw-kartographer-container")
:addClass("thumb")
if options.alignment == "left" or options.alignment == "right" then
outerCountainer:addClass("t"..options.alignment)
else -- alignment is "center"
outerCountainer
:addClass("tnone")
:addClass("center")
end
outerCountainer
:tag("div")
:addClass("thumbinner")
:css("width", options.width.."px")
:node(container)
:node(options.caption and mw.html.create("div")
:addClass("thumbcaption")
:wikitext(options.caption)
)
return styles .. tostring(outerCountainer)
end
--[[
Makes the HTML required for an overlay map to work
tag.
@param {string} overlayMap wikitext for the overlay map
@param {string} baseMap wikitext for the base map
@param {table} options various styling/display options
@param {string} options.align "left" or "center" or "right"
@param {string|number} options.width Width of the base map, e.g. "300"
@param {string|number} options.width Height of the base map, e.g. "200"
@param {string} options.border Border style for the overlayed map, e.g. "1px solid white"
@param {string} options.horizontalAlignment Horizontal alignment for overlay map, "left" or "right"
@param {string|number} options.horizontalOffset Horizontal offset in pixels from the alignment edge, e.g "10"
@param {string} options.verticalAlignment Vertical alignment for overlay map, "top" or "bottom"
@param {string|number} options.verticalOffset Vertical offset in pixels from the alignment edge, e.g. is "10"
@param {boolean} options.isThumbnail Display in a thumbnail
@param {string} [options.caption] Caption wikitext for thumnail
@retruns {string} HTML for basemap with overlay
]]--
function make.overlayHtml(overlayMap, baseMap, options)
options = options or {}
local containerFloatClass = "float"..(options.align or "none")
if options.align == "center" then
containerFloatClass = "center"
end
local containerStyle = {
position = "relative",
width = options.width .. "px",
height = options.height .. "px",
overflow = "hidden" -- mobile/minerva tends to add scrollbars for a couple of pixels
}
if options.align == "center" then
containerStyle["margin-left"] = "auto"
containerStyle["margin-right"] = "auto"
end
local container = mw.html.create("div")
:addClass("mapframe-withOverlay-container")
:addClass(containerFloatClass)
:addClass("noresize")
:css(containerStyle)
local overlayStyle = {
position = "absolute",
["z-index"] = "1",
border = options.border or "1px solid white"
}
if options.horizontalAlignment == "right" then
overlayStyle.right = options.horizontalOffset .. "px"
else
overlayStyle.left = options.horizontalOffset .. "px"
end
if options.verticalAlignment == "bottom" then
overlayStyle.bottom = options.verticalOffset .. "px"
else
overlayStyle.top = options.verticalOffset .. "px"
end
local overlayDiv = mw.html.create("div")
:css(overlayStyle)
:wikitext(overlayMap)
container
:node(overlayDiv)
:wikitext(baseMap)
if not options.isThumbnail then
return tostring(container)
end
local classlist = container:getAttr("class")
classlist = mw.ustring.gsub(classlist, "%a*"..options.align, "")
container:attr("class", classlist)
local outerCountainer = mw.html.create("div")
:addClass("mapframe-withOverlay-outerContainer")
:addClass("mw-kartographer-container")
:addClass("thumb")
if options.align == "left" or options.align == "right" then
outerCountainer:addClass("t"..options.align)
else -- alignment is "center"
outerCountainer
:addClass("tnone")
:addClass("center")
end
outerCountainer
:tag("div")
:addClass("thumbinner")
:css("width", options.width.."px")
:node(container)
:node(options.caption and mw.html.create("div")
:addClass("thumbcaption")
:wikitext(options.caption)
)
return tostring(outerCountainer)
end
--[[----------------------------------------------------------------------------
Package to be exported, i.e. methods which will available to templates and
other modules.
----------------------------------------------------------------------------]]--
local p = {}
-- Entry point for templates
function p.main(frame)
local parent = frame.getParent(frame)
-- Check for overlay option
local overlay = util.getParameterValue(parent.args, 'overlay')
local hasOverlay = overlay and mw.text.trim(overlay) ~= ""
-- Check for switch option
local switch = util.getParameterValue(parent.args, 'switch')
local isMulti = switch and mw.text.trim(switch) ~= ""
-- Create output by choosing method to suit options
local output
if hasOverlay then
output = p.withOverlay(parent.args)
elseif isMulti then
output = p.multi(parent.args)
else
output = p._main(parent.args)
end
-- Preprocess output before returning it
return frame:preprocess(output)
end
-- Entry points for modules
function p._main(_args)
local args = util.trimArgs(_args)
local tagContent = make.content(args)
local display = mw.text.split(util.getParameterValue(args, 'display') or L10n.defaults.display, '%s*' .. L10n.str.dsep .. '%s*')
local displayInTitle = display[1] == L10n.str.title or display[2] == L10n.str.title
local displayInline = display[1] == L10n.str.inline or display[2] == L10n.str.inline
local output
if displayInTitle and displayInline then
output = make.titleOutput(args, tagContent) .. make.inlineOutput(args, tagContent)
elseif displayInTitle then
output = make.titleOutput(args, tagContent)
elseif displayInline then
output = make.inlineOutput(args, tagContent)
else
error(L10n.error.badDisplayPara)
end
return output
end
function p.multi(_args)
local args = util.trimArgs(_args)
if not args[L10n.para.switch] then error(L10n.error.noSwitchPara, 0) end
local switchParamValue = util.getParameterValue(args, 'switch')
local switchLabels = util.tableFromList(switchParamValue)
if #switchLabels == 1 then error(L10n.error.oneSwitchLabel, 0) end
local mapframeArgs = {}
local switchParams = {}
for name, val in pairs(args) do
-- Copy to mapframeArgs, if not the switch labels or a switch parameter
if val ~= switchParamValue and not string.match(val, "^"..L10n.str.switch..":") then
mapframeArgs[name] = val
end
-- Check if this is a param to switch. If so, store the name and switch
-- values in switchParams table.
local switchList = string.match(val, "^"..L10n.str.switch..":(.+)")
if switchList ~= nil then
local values = util.tableFromList(switchList)
if #values == 1 then
error(string.format(L10n.error.oneSwitchValue, name), 0)
end
switchParams[name] = values
end
end
if util.tableCount(switchParams) == 0 then
error(L10n.error.noSwitchLists, 0)
end
local switchCount = util.subTablesCount(switchParams)
if not switchCount then
error(L10n.error.switchMismatches, 0)
elseif switchCount > #switchLabels then
error(string.format(L10n.error.fewerSwitchLabels, switchCount, #switchLabels), 0)
end
-- Ensure a plain frame will be used (thumbnail will be built by the
-- make.switcherHtml function if required, so that switcher options are
-- inside the thumnail)
mapframeArgs.plain = "yes"
local switcher = {}
for i = 1, switchCount do
local label = switchLabels[i]
for name, values in pairs(switchParams) do
mapframeArgs[name] = values[i]
end
table.insert(switcher, {
map = p._main(mapframeArgs),
label = "Show "..label
})
end
return make.switcherHtml(switcher, {
alignment = args["frame-align"] or "right",
isThumbnail = (args.frame and not args.plain) and true or false,
width = args["frame-width"] or L10n.defaults.frameWidth,
caption = args.text
})
end
function p.withOverlay(_args)
-- Get and trim wikitext for overlay map
local overlayMap = _args.overlay
if type(overlayMap) == 'string' then
overlayMap = overlayMap:match('^%s*(.-)%s*$')
end
local isThumbnail = (util.getParameterValue(_args, "frame") and not util.getParameterValue(_args, "plain")) and true or false
-- Get base map using the _main function, as a plain map
local args = util.trimArgs(_args)
args.plain = "yes"
local basemap = p._main(args)
-- Extract overlay options from args
local overlayOptions = {
width = util.getParameterValue(args, "frameWidth") or L10n.defaults.frameWidth,
height = util.getParameterValue(args, "frameHeight") or L10n.defaults.frameHeight,
align = util.getParameterValue(args, "frameAlign") or L10n.defaults.frameAlign,
border = util.getParameterValue(args, "overlayBorder") or L10n.defaults.overlayBorder,
horizontalAlignment = util.getParameterValue(args, "overlayHorizontalAlignment") or L10n.defaults.overlayHorizontalAlignment,
horizontalOffset = util.getParameterValue(args, "overlayHorizontalOffset") or L10n.defaults.overlayHorizontalOffset,
verticalAlignment = util.getParameterValue(args, "overlayVerticalAlignment") or L10n.defaults.overlayVerticalAlignment,
verticalOffset = util.getParameterValue(args, "overlayVerticalOffset") or L10n.defaults.overlayVerticalOffset,
isThumbnail = isThumbnail,
caption = util.getParameterValue(args, "text") or L10n.defaults.text
}
-- Make the HTML for the overlaying maps
return make.overlayHtml(overlayMap, basemap, overlayOptions)
end
return p
tn0yfwmsva9pwrkeixd6lxe4g5c51el
Module:InfoboxImage
828
3251
36425
2025-12-15T16:03:24Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Inputs: -- image - Can either be a bare filename (with or without the File:/Image: prefix) or a fully formatted image link -- page - page to display for multipage images (DjVu) -- size - size to display the image -- maxsize - maximum size for image -- sizedefault - default size to display the image if size param is blank -- alt - alt text for image -- title - title text for image -- border - set to yes if border -- cen...'
36425
Scribunto
text/plain
-- Inputs:
-- image - Can either be a bare filename (with or without the File:/Image: prefix) or a fully formatted image link
-- page - page to display for multipage images (DjVu)
-- size - size to display the image
-- maxsize - maximum size for image
-- sizedefault - default size to display the image if size param is blank
-- alt - alt text for image
-- title - title text for image
-- border - set to yes if border
-- center - set to yes, if the image has to be centered
-- upright - upright image param
-- suppressplaceholder - if yes then checks to see if image is a placeholder and suppresses it
-- link - page to visit when clicking on image
-- Outputs:
-- Formatted image.
-- More details available at the "Module:InfoboxImage/doc" page
local i = {};
local placeholder_image = {
"Blue - Replace this image female.svg",
"Blue - Replace this image male.svg",
"Female no free image yet.png",
"Flag of None (square).svg",
"Flag of None.svg",
"Flag of.svg",
"Green - Replace this image female.svg",
"Green - Replace this image male.svg",
"Image is needed female.svg",
"Image is needed male.svg",
"Location map of None.svg",
"Male no free image yet.png",
"Missing flag.png",
"No flag.svg",
"No free portrait.svg",
"No portrait (female).svg",
"No portrait (male).svg",
"Red - Replace this image female.svg",
"Red - Replace this image male.svg",
"Replace this image female (blue).svg",
"Replace this image female.svg",
"Replace this image male (blue).svg",
"Replace this image male.svg",
"Silver - Replace this image female.svg",
"Silver - Replace this image male.svg",
"Replace this image.svg",
"Cricket no pic.png",
"CarersLogo.gif",
"Diagram Needed.svg",
"Example.jpg",
"Image placeholder.png",
"No male portrait.svg",
"Nocover-upload.png",
"NoDVDcover copy.png",
"Noribbon.svg",
"No portrait-BFD-test.svg",
"Placeholder barnstar ribbon.png",
"Project Trains no image.png",
"Image-request.png",
"Sin bandera.svg",
"Sin escudo.svg",
"Replace this image - temple.png",
"Replace this image butterfly.png",
"Replace this image.svg",
"Replace this image1.svg",
"Resolution angle.png",
"Image-No portrait-text-BFD-test.svg",
"Insert image here.svg",
"No image available.png",
"NO IMAGE YET square.png",
"NO IMAGE YET.png",
"No Photo Available.svg",
"No Screenshot.svg",
"No-image-available.jpg",
"Null.png",
"PictureNeeded.gif",
"Place holder.jpg",
"Unbenannt.JPG",
"UploadACopyrightFreeImage.svg",
"UploadAnImage.gif",
"UploadAnImage.svg",
"UploadAnImageShort.svg",
"CarersLogo.gif",
"Diagram Needed.svg",
"No male portrait.svg",
"NoDVDcover copy.png",
"Placeholder barnstar ribbon.png",
"Project Trains no image.png",
"Image-request.png",
}
function i.IsPlaceholder(image)
-- change underscores to spaces
image = mw.ustring.gsub(image, "_", " ");
assert(image ~= nil, 'mw.ustring.gsub(image, "_", " ") must not return nil')
-- if image starts with [[ then remove that and anything after |
if mw.ustring.sub(image,1,2) == "[[" then
image = mw.ustring.sub(image,3);
image = mw.ustring.gsub(image, "([^|]*)|.*", "%1");
assert(image ~= nil, 'mw.ustring.gsub(image, "([^|]*)|.*", "%1") must not return nil')
end
-- Trim spaces
image = mw.ustring.gsub(image, '^[ ]*(.-)[ ]*$', '%1');
assert(image ~= nil, "mw.ustring.gsub(image, '^[ ]*(.-)[ ]*$', '%1') must not return nil")
-- remove prefix if exists
local allNames = mw.site.namespaces[6].aliases
allNames[#allNames + 1] = mw.site.namespaces[6].name
allNames[#allNames + 1] = mw.site.namespaces[6].canonicalName
for i, name in ipairs(allNames) do
if mw.ustring.lower(mw.ustring.sub(image, 1, mw.ustring.len(name) + 1)) == mw.ustring.lower(name .. ":") then
image = mw.ustring.sub(image, mw.ustring.len(name) + 2);
break
end
end
-- Trim spaces
image = mw.ustring.gsub(image, '^[ ]*(.-)[ ]*$', '%1');
-- capitalise first letter
image = mw.ustring.upper(mw.ustring.sub(image,1,1)) .. mw.ustring.sub(image,2);
for i,j in pairs(placeholder_image) do
if image == j then
return true
end
end
return false
end
function i.InfoboxImage(frame)
local image = frame.args["image"];
if image == "" or image == nil then
return "";
end
if image == " " then
return image;
end
if frame.args["suppressplaceholder"] ~= "no" then
if i.IsPlaceholder(image) == true then
return "";
end
end
if mw.ustring.lower(mw.ustring.sub(image,1,5)) == "http:" then
return "";
end
if mw.ustring.lower(mw.ustring.sub(image,1,6)) == "[http:" then
return "";
end
if mw.ustring.lower(mw.ustring.sub(image,1,7)) == "[[http:" then
return "";
end
if mw.ustring.lower(mw.ustring.sub(image,1,6)) == "https:" then
return "";
end
if mw.ustring.lower(mw.ustring.sub(image,1,7)) == "[https:" then
return "";
end
if mw.ustring.lower(mw.ustring.sub(image,1,8)) == "[[https:" then
return "";
end
if mw.ustring.sub(image,1,2) == "[[" then
-- search for thumbnail images and add to tracking cat if found
if mw.title.getCurrentTitle().namespace == 0 and (mw.ustring.find(image, "|%s*thumb%s*[|%]]") or mw.ustring.find(image, "|%s*thumbnail%s*[|%]]")) then
return image .. "[[Κατηγορία:Σελίδες που χρησιμοποιούν πλαίσια πληροφοριών με μικρογραφίες εικόνων]]";
else
return image;
end
elseif mw.ustring.sub(image,1,2) == "{{" and mw.ustring.sub(image,1,3) ~= "{{{" then
return image;
elseif mw.ustring.sub(image,1,1) == "<" then
return image;
elseif mw.ustring.sub(image,1,5) == mw.ustring.char(127).."UNIQ" then
-- Found strip marker at begining, so pass don't process at all
return image;
else
local result = "";
local page = frame.args["page"];
local size = frame.args["size"];
local maxsize = frame.args["maxsize"];
local sizedefault = frame.args["sizedefault"];
local alt = frame.args["alt"];
local link = frame.args["link"];
local title = frame.args["title"];
local border = frame.args["border"];
local upright = frame.args["upright"] or "";
local thumbtime = frame.args["thumbtime"] or "";
local center= frame.args["center"];
-- remove prefix if exists
local allNames = mw.site.namespaces[6].aliases
allNames[#allNames + 1] = mw.site.namespaces[6].name
allNames[#allNames + 1] = mw.site.namespaces[6].canonicalName
for i, name in ipairs(allNames) do
if mw.ustring.lower(mw.ustring.sub(image, 1, mw.ustring.len(name) + 1)) == mw.ustring.lower(name .. ":") then
image = mw.ustring.sub(image, mw.ustring.len(name) + 2);
break
end
end
if maxsize ~= "" and maxsize ~= nil then
-- if no sizedefault then set to maxsize
if sizedefault == "" or sizedefault == nil then
sizedefault = maxsize
end
-- check to see if size bigger than maxsize
if size ~= "" and size ~= nil then
local sizenumber = tonumber(mw.ustring.match(size,"%d*")) or 0;
local maxsizenumber = tonumber(mw.ustring.match(maxsize,"%d*")) or 0;
if sizenumber>maxsizenumber and maxsizenumber>0 then
size = maxsize;
end
end
end
-- add px to size if just a number
if (tonumber(size) or 0) > 0 then
size = size .. "px";
end
result = "[[File:" .. image;
if page ~= "" and page ~= nil then
result = result .. "|page=" .. page;
end
if size ~= "" and size ~= nil then
result = result .. "|" .. size;
elseif sizedefault ~= "" and sizedefault ~= nil then
result = result .. "|" .. sizedefault;
else
result = result .. "|frameless";
end
if center == "yes" then
result = result .. "|center"
end
if alt ~= "" and alt ~= nil then
result = result .. "|alt=" .. alt;
end
if link ~= "" and link ~= nil then
result = result .. "|link=" .. link;
end
if border == "yes" then
result = result .. "|border";
end
if upright == "yes" then
result = result .. "|upright";
elseif upright ~= "" then
result = result .. "|upright=" .. upright;
end
if thumbtime ~= "" then
result = result .. "|thumbtime=" .. thumbtime;
end
if title ~= "" and title ~= nil then
result = result .. "|" .. title;
elseif alt ~= "" and alt ~= nil then
result = result .. "|" .. alt;
end
result = result .. "]]";
return result;
end
end
return i;
c8pmd8ni2bye6o3mft04hgtychpmbdf
Module:Infobox/Style
828
3252
36426
2025-12-15T16:04:21Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- style par défaut. Plus pratique pour l'instant que d'utiliser les classes de l'énorme common.css return { entete = { display = 'table', width ='100%', ['border-spacing'] = '0', zoom = '1', ['background-color'] = maincolor or '#E1E1E1', ['word-wrap'] = 'break-word', height = '45px', -- celle de infobox V2. Celle d'infobox V2, '100%!ie', est souvent moche ['font-weight'] = 'bold', ['text-align'] = 'center', ['font-size'] = '1.4em', ['...'
36426
Scribunto
text/plain
-- style par défaut. Plus pratique pour l'instant que d'utiliser les classes de l'énorme common.css
return {
entete = {
display = 'table',
width ='100%',
['border-spacing'] = '0',
zoom = '1',
['background-color'] = maincolor or '#E1E1E1',
['word-wrap'] = 'break-word',
height = '45px', -- celle de infobox V2. Celle d'infobox V2, '100%!ie', est souvent moche
['font-weight'] = 'bold',
['text-align'] = 'center',
['font-size'] = '1.4em',
['line-height'] = '1.1em',
margin = '0 0 10px 0 !important',
padding = '3px 0',
border = '2px',
solid = '#DFEDFF',
},
boldline = {
['text-align'] = 'center',
['font-weight'] = 'bold'
},
}
ksobysco915rlala820kby34er2556p
Module:WikidataCoord
828
3253
36427
2025-12-15T16:06:59Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require('strict') local getArgs = require('Module:Arguments').getArgs local patterns = { '(%d+)°(%d+)'([%d%.]+)"([NS]),%s*(%d+)°(%d+)'([%d%.]+)"([EW])', -- if the returned data looks like 55°13'12"N, 23°17'17"E '(%d+)°(%d+)'([NS]),%s*(%d+)°(%d+)'([EW])', -- if the returned data looks like 54°24'N, 25°25'E '(%d+)°(%d+)[′\']([%d%.]+)[″\"]([NS]),?%s*(%d+)°(%d+)[′\']([%d%.]+)[...'
36427
Scribunto
text/plain
require('strict')
local getArgs = require('Module:Arguments').getArgs
local patterns = {
'(%d+)°(%d+)'([%d%.]+)"([NS]),%s*(%d+)°(%d+)'([%d%.]+)"([EW])', -- if the returned data looks like 55°13'12"N, 23°17'17"E
'(%d+)°(%d+)'([NS]),%s*(%d+)°(%d+)'([EW])', -- if the returned data looks like 54°24'N, 25°25'E
'(%d+)°(%d+)[′\']([%d%.]+)[″\"]([NS]),?%s*(%d+)°(%d+)[′\']([%d%.]+)[″\"]([EW])', -- when args[1] is a dms string that uses quotes or primes
'(%d+)°(%d+)[′\']([NS]),?%s*(%d+)°(%d+)[′\']([EW])', -- when args[1] is a dms string that uses quotes or primes, bit shorter format
'(%d+%.?%d*)°([NS]),?%s*(%d+%.?%d*)°([EW])', -- when args[1] is a decimal degrees string
}
local params = {'display', 'format', 'name', 'notes'}; -- {{coord}} template paramters
--[[--------------------------< I S _ S E T >------------------------------------------------------------------
Whether variable is set or not. A variable is set when it is not nil and not empty.
]]
local function is_set( var )
return not (var == nil or var == '');
end
--[[--------------------------< M A I N >----------------------------------------------------------------------
Template entry point. This function takes up to two unnamed positional parameters:
1 = coordinate string typically from a call to Wikidata like this: {{#property:P625|from=Q...}}
2 = coordinate parameters; see Template:Coord
Also takes the named parameters |display=, |format=, |name=, |notes= which it passes on to {{coord}}
Reformats the Wikidata coordinate string into unnamed parameters for {{coord}}
{{#invoke:WikidataCoord|main|{{#property:P625|from={{{1}}}}}|{{{2}}}|display={{{display}}}|format={{{format}}}|name={{{name}}}|notes={{{notes}}}}}
]]
local function main (frame)
local args = getArgs(frame);
local lat_long = {}; -- table of lat/long coords extracted from wikidata return
if not is_set (args[1]) then -- in case wikidata returns nothing (happens when Q... is wrong)
return '<span style="font-size:100%" class="error">{{WikidataCoord}} – missing coordinate data</span>'; -- error message and quit
else
for _, pattern in ipairs (patterns) do
lat_long[1], lat_long[2], lat_long[3], lat_long[4], lat_long[5], lat_long[6], lat_long[7], lat_long[8] =
mw.ustring.match (args[1], pattern)
if lat_long[1] then
break;
end
end
end
if not lat_long[1] then
return '<span style="font-size:100%" class="error">{{WikidataCoord}} – malformed coordinate data</span>'; -- wikidata returned something else
end
if is_set (args[2]) then -- coordinate parameters are in second unnammed positional parameter
table.insert (lat_long, args[2]); -- add coordinate parameters as next positional parameter after coordnates
end
for _, param in ipairs (params) do
if is_set (args[param]) then
lat_long[param] = args[param]; -- add the named parameters if they have a value
end
end
if args._debug then
return table.concat ({'<code style="color:inherit; background:inherit; border:none;">{{coord|', table.concat (lat_long, '|' ), '}}</code>'});
end
return frame:expandTemplate ({title = 'coord', args=lat_long}); -- invoke template {{coord}} with wikidata lat/long
end
--[[--------------------------< E X P O R T E D F U N C T I O N >--------------------------------------------
]]
return {main = main}
7yfsh0uuumf6p61n3lha5s1utw2dz4z
Πρότυπον:Κώδικας
10
3254
36429
36428
2025-12-15T16:08:33Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπον:Code]] στην [[Πρότυπον:Κώδικας]]
36428
wikitext
text/x-wiki
{{#tag:syntaxhighlight|{{{code|{{{1}}}}}}|lang={{{lang|{{{2|text}}}}}}|class={{{class|}}}|id={{{id|}}}|style={{{style|}}}|inline=1}}<noinclude>
{{documentation}}
</noinclude>
iyuiy1uoe39isuphgfdwgy4hc8jrsnl
Πρότυπον:Code
10
3255
36430
2025-12-15T16:08:33Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπον:Code]] στην [[Πρότυπον:Κώδικας]]
36430
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Κώδικας]]
aix87tlw0m3nwo0zpff4eoekhu59pap
Πρότυπον:WikidataCoord
10
3256
36431
2025-12-15T16:09:38Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#invoke:WikidataCoord|main|{{#property:P625|from={{{1|}}}}}|{{{2|}}}|display={{{display|title}}}|format={{{format|}}}|name={{{name|}}}|notes={{{notes|}}}}}</includeonly><noinclude> {{Documentation}} </noinclude>'
36431
wikitext
text/x-wiki
<includeonly>{{#invoke:WikidataCoord|main|{{#property:P625|from={{{1|}}}}}|{{{2|}}}|display={{{display|title}}}|format={{{format|}}}|name={{{name|}}}|notes={{{notes|}}}}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
faey2m1gnwc7v781lhstjeiay9z7u63
Πρότυπον:Coord/input/dms
10
3257
36432
2025-12-15T16:11:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{Coord/link|dms-lat={{{1}}}°{{{2}}}′{{{3}}}″{{{4}}}|dms-long={{{5}}}°{{{6}}}′{{{7}}}″{{{8}}}|dec-lat={{coor dms2dec|{{{4}}}|{{{1}}}|{{{2}}}|{{{3}}}}}|dec-long={{coor dms2dec|{{{8}}}|{{{5}}}|{{{6}}}|{{{7}}}}}|param={{{1}}}_{{{2}}}_{{{3}}}_{{{4}}}_{{{5}}}_{{{6}}}_{{{7}}}_{{{8}}}_{{{9|}}}|default={{#if:{{{format|}}}|{{{format}}}|dms}}|name={{{name|}}}}}</includeonly><noinclude> [[Κατηγορίαν:Coord template]] </noinclude>'
36432
wikitext
text/x-wiki
<includeonly>{{Coord/link|dms-lat={{{1}}}°{{{2}}}′{{{3}}}″{{{4}}}|dms-long={{{5}}}°{{{6}}}′{{{7}}}″{{{8}}}|dec-lat={{coor dms2dec|{{{4}}}|{{{1}}}|{{{2}}}|{{{3}}}}}|dec-long={{coor dms2dec|{{{8}}}|{{{5}}}|{{{6}}}|{{{7}}}}}|param={{{1}}}_{{{2}}}_{{{3}}}_{{{4}}}_{{{5}}}_{{{6}}}_{{{7}}}_{{{8}}}_{{{9|}}}|default={{#if:{{{format|}}}|{{{format}}}|dms}}|name={{{name|}}}}}</includeonly><noinclude>
[[Κατηγορίαν:Coord template]]
</noinclude>
71jb3wzty5cspricl9ax0byk9k9t4g4
Κατηγορίαν:Coord template
14
3258
36433
2025-12-15T16:11:49Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πρότυπα συντεταγμένων]]'
36433
wikitext
text/x-wiki
[[Κατηγορίαν:Πρότυπα συντεταγμένων]]
38ao352ku9nvjw12k10f30a1wyv1ffv
Κατηγορίαν:Πρότυπα συντεταγμένων
14
3259
36434
2025-12-15T16:12:47Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]'
36434
wikitext
text/x-wiki
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]
ppi47h4quw2aoq5q3e9gvbzgj8rs77v
Πρότυπον:Coord/dec2dms
10
3260
36435
2025-12-15T16:14:16Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{Coord/dec2dms/{{{4}}}|{{#ifexpr:{{{1}}} >= 0||-}}{{{1}}}}}{{#ifexpr:{{{1}}} >= 0|{{{2}}}|{{{3}}}}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]] {{τεκμηρίωση προτύπου}} </noinclude>'
36435
wikitext
text/x-wiki
<includeonly>{{Coord/dec2dms/{{{4}}}|{{#ifexpr:{{{1}}} >= 0||-}}{{{1}}}}}{{#ifexpr:{{{1}}} >= 0|{{{2}}}|{{{3}}}}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]]
{{τεκμηρίωση προτύπου}}
</noinclude>
55elyhwf3kfd8qwkxfwxy1jotlhwfrt
Πρότυπον:Coord/prec dec
10
3261
36436
2025-12-15T16:16:47Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#switch:{{max|{{precision1|{{{1}}}}}|{{precision1|{{{2}}}}}}}|0=d|1|2=dm|dms}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]]{{τεκμηρίωση προτύπου}}</noinclude>'
36436
wikitext
text/x-wiki
<includeonly>{{#switch:{{max|{{precision1|{{{1}}}}}|{{precision1|{{{2}}}}}}}|0=d|1|2=dm|dms}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]]{{τεκμηρίωση προτύπου}}</noinclude>
c8vycp4p57xkl20bhtimkfg9h1ps09u
Πρότυπον:Coor URL
10
3262
36440
2025-12-15T16:19:33Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπον:Coor URL]] στην [[Πρότυπον:Συντεταγμένες URL]]
36440
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Συντεταγμένες URL]]
dzjxovvohg70ovsv06cp6imnxzo6g5u
Module:Math
828
3263
36441
2025-12-15T16:20:34Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ This module provides a number of basic mathematical operations. ]] local yesno, getArgs -- lazily initialized local p = {} -- Holds functions to be returned from #invoke, and functions to make available to other Lua modules. local wrap = {} -- Holds wrapper functions that process arguments from #invoke. These act as intemediary between functions meant for #invoke and functions meant for Lua. --[[ Helper functions used to avoid redundant c...'
36441
Scribunto
text/plain
--[[
This module provides a number of basic mathematical operations.
]]
local yesno, getArgs -- lazily initialized
local p = {} -- Holds functions to be returned from #invoke, and functions to make available to other Lua modules.
local wrap = {} -- Holds wrapper functions that process arguments from #invoke. These act as intemediary between functions meant for #invoke and functions meant for Lua.
--[[
Helper functions used to avoid redundant code.
]]
local function err(msg)
-- Generates wikitext error messages.
return mw.ustring.format('<strong class="error">Formatting error: %s</strong>', msg)
end
local function unpackNumberArgs(args)
-- Returns an unpacked list of arguments specified with numerical keys.
local ret = {}
for k, v in pairs(args) do
if type(k) == 'number' then
table.insert(ret, v)
end
end
return unpack(ret)
end
local function makeArgArray(...)
-- Makes an array of arguments from a list of arguments that might include nils.
local args = {...} -- Table of arguments. It might contain nils or non-number values, so we can't use ipairs.
local nums = {} -- Stores the numbers of valid numerical arguments.
local ret = {}
for k, v in pairs(args) do
v = p._cleanNumber(v)
if v then
nums[#nums + 1] = k
args[k] = v
end
end
table.sort(nums)
for i, num in ipairs(nums) do
ret[#ret + 1] = args[num]
end
return ret
end
local function fold(func, ...)
-- Use a function on all supplied arguments, and return the result. The function must accept two numbers as parameters,
-- and must return a number as an output. This number is then supplied as input to the next function call.
local vals = makeArgArray(...)
local count = #vals -- The number of valid arguments
if count == 0 then return
-- Exit if we have no valid args, otherwise removing the first arg would cause an error.
nil, 0
end
local ret = table.remove(vals, 1)
for _, val in ipairs(vals) do
ret = func(ret, val)
end
return ret, count
end
--[[
Fold arguments by selectively choosing values (func should return when to choose the current "dominant" value).
]]
local function binary_fold(func, ...)
local value = fold((function(a, b) if func(a, b) then return a else return b end end), ...)
return value
end
--[[
random
Generate a random number
Usage:
{{#invoke: Math | random }}
{{#invoke: Math | random | maximum value }}
{{#invoke: Math | random | minimum value | maximum value }}
]]
function wrap.random(args)
local first = p._cleanNumber(args[1])
local second = p._cleanNumber(args[2])
return p._random(first, second)
end
function p._random(first, second)
math.randomseed(mw.site.stats.edits + mw.site.stats.pages + os.time() + math.floor(os.clock() * 1000000000))
-- math.random will throw an error if given an explicit nil parameter, so we need to use if statements to check the params.
if first and second then
if first <= second then -- math.random doesn't allow the first number to be greater than the second.
return math.random(first, second)
end
elseif first then
return math.random(first)
else
return math.random()
end
end
--[[
order
Determine order of magnitude of a number
Usage:
{{#invoke: Math | order | value }}
]]
function wrap.order(args)
local input_string = (args[1] or args.x or '0');
local input_number = p._cleanNumber(input_string);
if input_number == nil then
return err('order of magnitude input appears non-numeric')
else
return p._order(input_number)
end
end
function p._order(x)
if x == 0 then return 0 end
return math.floor(math.log10(math.abs(x)))
end
--[[
precision
Detemines the precision of a number using the string representation
Usage:
{{ #invoke: Math | precision | value }}
]]
function wrap.precision(args)
local input_string = (args[1] or args.x or '0');
local trap_fraction = args.check_fraction;
local input_number;
if not yesno then
yesno = require('Module:Yesno')
end
if yesno(trap_fraction, true) then -- Returns true for all input except nil, false, "no", "n", "0" and a few others. See [[Module:Yesno]].
local pos = string.find(input_string, '/', 1, true);
if pos ~= nil then
if string.find(input_string, '/', pos + 1, true) == nil then
local denominator = string.sub(input_string, pos+1, -1);
local denom_value = tonumber(denominator);
if denom_value ~= nil then
return math.log10(denom_value);
end
end
end
end
input_number, input_string = p._cleanNumber(input_string);
if input_string == nil then
return err('precision input appears non-numeric')
else
return p._precision(input_string)
end
end
function p._precision(x)
if type(x) == 'number' then
x = tostring(x)
end
x = string.upper(x)
local decimal = x:find('%.')
local exponent_pos = x:find('E')
local result = 0;
if exponent_pos ~= nil then
local exponent = string.sub(x, exponent_pos + 1)
x = string.sub(x, 1, exponent_pos - 1)
result = result - tonumber(exponent)
end
if decimal ~= nil then
result = result + string.len(x) - decimal
return result
end
local pos = string.len(x);
while x:byte(pos) == string.byte('0') do
pos = pos - 1
result = result - 1
if pos <= 0 then
return 0
end
end
return result
end
--[[
max
Finds the maximum argument
Usage:
{{#invoke:Math| max | value1 | value2 | ... }}
Note, any values that do not evaluate to numbers are ignored.
]]
function wrap.max(args)
return p._max(unpackNumberArgs(args))
end
function p._max(...)
local max_value = binary_fold((function(a, b) return a > b end), ...)
if max_value then
return max_value
end
end
--[[
median
Find the median of set of numbers
Usage:
{{#invoke:Math | median | number1 | number2 | ...}}
OR
{{#invoke:Math | median }}
]]
function wrap.median(args)
return p._median(unpackNumberArgs(args))
end
function p._median(...)
local vals = makeArgArray(...)
local count = #vals
table.sort(vals)
if count == 0 then
return 0
end
if p._mod(count, 2) == 0 then
return (vals[count/2] + vals[count/2+1])/2
else
return vals[math.ceil(count/2)]
end
end
--[[
min
Finds the minimum argument
Usage:
{{#invoke:Math| min | value1 | value2 | ... }}
OR
{{#invoke:Math| min }}
When used with no arguments, it takes its input from the parent
frame. Note, any values that do not evaluate to numbers are ignored.
]]
function wrap.min(args)
return p._min(unpackNumberArgs(args))
end
function p._min(...)
local min_value = binary_fold((function(a, b) return a < b end), ...)
if min_value then
return min_value
end
end
--[[
sum
Finds the sum
Usage:
{{#invoke:Math| sum | value1 | value2 | ... }}
OR
{{#invoke:Math| sum }}
Note, any values that do not evaluate to numbers are ignored.
]]
function wrap.sum(args)
return p._sum(unpackNumberArgs(args))
end
function p._sum(...)
local sums, count = fold((function(a, b) return a + b end), ...)
if not sums then
return 0
else
return sums
end
end
--[[
average
Finds the average
Usage:
{{#invoke:Math| average | value1 | value2 | ... }}
OR
{{#invoke:Math| average }}
Note, any values that do not evaluate to numbers are ignored.
]]
function wrap.average(args)
return p._average(unpackNumberArgs(args))
end
function p._average(...)
local sum, count = fold((function(a, b) return a + b end), ...)
if not sum then
return 0
else
return sum / count
end
end
--[[
round
Rounds a number to specified precision
Usage:
{{#invoke:Math | round | value | precision }}
--]]
function wrap.round(args)
local value = p._cleanNumber(args[1] or args.value or 0)
local precision = p._cleanNumber(args[2] or args.precision or 0)
if value == nil or precision == nil then
return err('round input appears non-numeric')
else
return p._round(value, precision)
end
end
function p._round(value, precision)
local rescale = math.pow(10, precision or 0);
return math.floor(value * rescale + 0.5) / rescale;
end
--[[
log10
returns the log (base 10) of a number
Usage:
{{#invoke:Math | log10 | x }}
]]
function wrap.log10(args)
return math.log10(args[1])
end
--[[
mod
Implements the modulo operator
Usage:
{{#invoke:Math | mod | x | y }}
--]]
function wrap.mod(args)
local x = p._cleanNumber(args[1])
local y = p._cleanNumber(args[2])
if not x then
return err('first argument to mod appears non-numeric')
elseif not y then
return err('second argument to mod appears non-numeric')
else
return p._mod(x, y)
end
end
function p._mod(x, y)
local ret = x % y
if not (0 <= ret and ret < y) then
ret = 0
end
return ret
end
--[[
gcd
Calculates the greatest common divisor of multiple numbers
Usage:
{{#invoke:Math | gcd | value 1 | value 2 | value 3 | ... }}
--]]
function wrap.gcd(args)
return p._gcd(unpackNumberArgs(args))
end
function p._gcd(...)
local function findGcd(a, b)
local r = b
local oldr = a
while r ~= 0 do
local quotient = math.floor(oldr / r)
oldr, r = r, oldr - quotient * r
end
if oldr < 0 then
oldr = oldr * -1
end
return oldr
end
local result, count = fold(findGcd, ...)
return result
end
--[[
precision_format
Rounds a number to the specified precision and formats according to rules
originally used for {{template:Rnd}}. Output is a string.
Usage:
{{#invoke: Math | precision_format | number | precision }}
]]
function wrap.precision_format(args)
local value_string = args[1] or 0
local precision = args[2] or 0
return p._precision_format(value_string, precision)
end
function p._precision_format(value_string, precision)
-- For access to Mediawiki built-in formatter.
local lang = mw.getContentLanguage();
local value
value, value_string = p._cleanNumber(value_string)
precision = p._cleanNumber(precision)
-- Check for non-numeric input
if value == nil or precision == nil then
return err('invalid input when rounding')
end
local current_precision = p._precision(value)
local order = p._order(value)
-- Due to round-off effects it is neccesary to limit the returned precision under
-- some circumstances because the terminal digits will be inaccurately reported.
if order + precision >= 14 then
if order + p._precision(value_string) >= 14 then
precision = 13 - order;
end
end
-- If rounding off, truncate extra digits
if precision < current_precision then
value = p._round(value, precision)
current_precision = p._precision(value)
end
local formatted_num = lang:formatNum(math.abs(value))
local sign
-- Use proper unary minus sign rather than ASCII default
if value < 0 then
sign = '−'
else
sign = ''
end
-- Handle cases requiring scientific notation
if string.find(formatted_num, 'E', 1, true) ~= nil or math.abs(order) >= 9 then
value = value * math.pow(10, -order)
current_precision = current_precision + order
precision = precision + order
formatted_num = lang:formatNum(math.abs(value))
else
order = 0;
end
formatted_num = sign .. formatted_num
-- Pad with zeros, if needed
if current_precision < precision then
local padding
if current_precision <= 0 then
if precision > 0 then
local zero_sep = lang:formatNum(1.1)
formatted_num = formatted_num .. zero_sep:sub(2,2)
padding = precision
if padding > 20 then
padding = 20
end
formatted_num = formatted_num .. string.rep('0', padding)
end
else
padding = precision - current_precision
if padding > 20 then
padding = 20
end
formatted_num = formatted_num .. string.rep('0', padding)
end
end
-- Add exponential notation, if necessary.
if order ~= 0 then
-- Use proper unary minus sign rather than ASCII default
if order < 0 then
order = '−' .. lang:formatNum(math.abs(order))
else
order = lang:formatNum(order)
end
formatted_num = formatted_num .. '<span style="margin:0 .15em 0 .25em">×</span>10<sup>' .. order .. '</sup>'
end
return formatted_num
end
--[[
Helper function that interprets the input numerically. If the
input does not appear to be a number, attempts evaluating it as
a parser functions expression.
]]
function p._cleanNumber(number_string)
if type(number_string) == 'number' then
-- We were passed a number, so we don't need to do any processing.
return number_string, tostring(number_string)
elseif type(number_string) ~= 'string' or not number_string:find('%S') then
-- We were passed a non-string or a blank string, so exit.
return nil, nil;
end
-- Attempt basic conversion
local number = tonumber(number_string)
-- If failed, attempt to evaluate input as an expression
if number == nil then
local success, result = pcall(mw.ext.ParserFunctions.expr, number_string)
if success then
number = tonumber(result)
number_string = tostring(number)
else
number = nil
number_string = nil
end
else
number_string = number_string:match("^%s*(.-)%s*$") -- String is valid but may contain padding, clean it.
number_string = number_string:match("^%+(.*)$") or number_string -- Trim any leading + signs.
if number_string:find('^%-?0[xX]') then
-- Number is using 0xnnn notation to indicate base 16; use the number that Lua detected instead.
number_string = tostring(number)
end
end
return number, number_string
end
--[[
Wrapper function that does basic argument processing. This ensures that all functions from #invoke can use either the current
frame or the parent frame, and it also trims whitespace for all arguments and removes blank arguments.
]]
local mt = { __index = function(t, k)
return function(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return wrap[k](getArgs(frame)) -- Argument processing is left to Module:Arguments. Whitespace is trimmed and blank arguments are removed.
end
end }
return setmetatable(p, mt)
rp27wodkcpetzw9mjays09ovm4ps8al
Module:Coordinates
828
3264
36442
2025-12-15T16:21:31Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ This module is intended to replace the functionality of {{Coord}} and related templates. It provides several methods, including {{#Invoke:Coordinates | coord }} : General function formatting and displaying coordinate values. {{#Invoke:Coordinates | dec2dms }} : Simple function for converting decimal degree values to DMS format. {{#Invoke:Coordinates | dms2dec }} : Simple function for converting DMS format to decimal degree format. ]] mat...'
36442
Scribunto
text/plain
--[[
This module is intended to replace the functionality of {{Coord}} and related
templates. It provides several methods, including
{{#Invoke:Coordinates | coord }} : General function formatting and displaying
coordinate values.
{{#Invoke:Coordinates | dec2dms }} : Simple function for converting decimal
degree values to DMS format.
{{#Invoke:Coordinates | dms2dec }} : Simple function for converting DMS format
to decimal degree format.
]]
math_mod = require( "Module:Math" );
globalFrame = nil
coordinates = {};
--[[ Helper function, replacement for {{coord/display/title}} ]]
function displaytitle (s, notes)
local l = "[[Γεωγραφικές συντεταγμένες|Συντεταγμένες]]: " .. s
local co = '<span id="coordinates">' .. l .. notes .. '</span>';
return '<span style="font-size: small;">' .. co .. '</span>';
end
--[[ Helper function, Replacement for {{coord/display/inline}} ]]
function displayinline (s, notes)
return s .. notes
end
--[[ Helper function, used in detecting DMS formatting ]]
local dmsTest = function(first, second)
local concatenated = first:upper() .. second:upper();
if concatenated == "NE" or concatenated == "NW" or concatenated == "SE" or concatenated == "SW" or
concatenated == "EN" or concatenated == "WN" or concatenated == "ES" or concatenated == "WS" then
return true;
end
return false;
end
--[[
parseDec
Transforms decimal format latitude and longitude into the a
structure to be used in displaying coordinates
]]
function parseDec( lat, long, format )
local coordinateSpec = {}
local errors = {}
if long == "" or long == nil then
return nil, {{"parseDec", "Λείπει το μήκος"}}
end
errors = validate( lat, nil, nil, long, nil, nil, 'parseDec', false );
coordinateSpec["dec-lat"] = lat;
coordinateSpec["dec-long"] = long;
local mode = coordinates.determineMode( lat, long );
coordinateSpec["dms-lat"] = convert_dec2dms( lat, "N", "S", mode) -- {{coord/dec2dms|{{{1}}}|N|S|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}
coordinateSpec["dms-long"] = convert_dec2dms( long, "E", "W", mode) -- {{coord/dec2dms|{{{2}}}|E|W|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}
if format ~= "" then
coordinateSpec.default = format
else
coordinateSpec.default = "dec"
end
return coordinateSpec, errors
end
--[[ Helper function, handle optional args. ]]
function optionalArg(arg, suplement)
if arg ~= nil and arg ~= "" then
return arg .. suplement
end
return ""
end
--[[
parseDMS
Transforms degrees, minutes, seconds format latitude and longitude
into the a structure to be used in displaying coordinates
]]
function parseDMS( lat_d, lat_m, lat_s, lat_f, long_d, long_m, long_s, long_f, format )
local coordinateSpec = {}
local errors = {}
lat_f = lat_f:upper();
long_f = long_f:upper();
-- Check if specified backward
if lat_f == 'E' or lat_f == 'W' then
local t_d, t_m, t_s, t_f;
t_d = lat_d;
t_m = lat_m;
t_s = lat_s;
t_f = lat_f;
lat_d = long_d;
lat_m = long_m;
lat_s = long_s;
lat_f = long_f;
long_d = t_d;
long_m = t_m;
long_s = t_s;
long_f = t_f;
end
errors = validate( lat_d, lat_m, lat_s, long_d, long_m, long_s, 'parseDMS', true );
if long_d == nil or long_d == "" then
table.insert(errors, {"parseDMS", "Λείπει το πλάτος" })
end
if lat_m == nil and lat_s == nil and long_m == nil and long_s == nil and #errors == 0 then
if math_mod._precision( lat_d ) > 0 or math_mod._precision( long_d ) > 0 then
if lat_f:upper() == 'S' then
lat_d = '-' .. lat_d;
end
if long_f:upper() == 'W' then
long_d = '-' .. long_d;
end
return parseDec( lat_d, long_d, format );
end
end
coordinateSpec["dms-lat"] = lat_d.."°"..optionalArg(lat_m,"′") .. optionalArg(lat_s,"″") .. lat_f
coordinateSpec["dms-long"] = long_d.."°"..optionalArg(long_m,"′") .. optionalArg(long_s,"″") .. long_f
coordinateSpec["dec-lat"] = convert_dms2dec(lat_f, lat_d, lat_m, lat_s) -- {{coord/dms2dec|{{{4}}}|{{{1}}}|0{{{2}}}|0{{{3}}}}}
coordinateSpec["dec-long"] = convert_dms2dec(long_f, long_d, long_m, long_s) -- {{coord/dms2dec|{{{8}}}|{{{5}}}|0{{{6}}}|0{{{7}}}}}
if format ~= "" then
coordinateSpec.default = format
else
coordinateSpec.default = "dms"
end
return coordinateSpec, errors
end
--[[
specPrinter
Output formatter. Takes the structure generated by either parseDec
or parseDMS and formats it for inclusion on Wikipedia.
]]
function specPrinter(args, coordinateSpec)
local uriComponents = coordinateSpec["param"]
if uriComponents == "" then
-- RETURN error, should never be empty or nil
return "ERROR param was empty"
end
if args["name"] ~= "" and args["name"] ~= nil then
uriComponents = uriComponents .. "&title=" .. mw.uri.encode(coordinateSpec["name"])
end
local geodmshtml = '<span class="geo-dms" title="Χάρτες, αεροφωτογραφίες, και άλλα δεδομένα για αυτή την τοποθεσία">'
.. '<span class="latitude">' .. coordinateSpec["dms-lat"] .. '</span> '
.. '<span class="longitude">' ..coordinateSpec["dms-long"] .. '</span>'
.. '</span>'
local lat = tonumber( coordinateSpec["dec-lat"] ) or 0
if lat < 0 then
-- FIXME this breaks the pre-existing precision
geodeclat = coordinateSpec["dec-lat"]:sub(2) .. "°S"
else
geodeclat = (coordinateSpec["dec-lat"] or 0) .. "°N"
end
local long = tonumber( coordinateSpec["dec-long"] ) or 0
if long < 0 then
-- FIXME does not handle unicode minus
geodeclong = coordinateSpec["dec-long"]:sub(2) .. "°W"
else
geodeclong = (coordinateSpec["dec-long"] or 0) .. "°E"
end
local geodechtml = '<span class="geo-dec" title="Χάρτες, αεροφωτογραφίες, και άλλα δεδομένα για αυτή την τοποθεσία">'
.. geodeclat .. ' '
.. geodeclong
.. '</span>'
local geonumhtml = '<span class="geo">'
.. coordinateSpec["dec-lat"] .. '; '
.. coordinateSpec["dec-long"]
.. '</span>'
local inner;
inner = '<span class="' .. displayDefault(coordinateSpec["default"], "dms" ) .. '">' .. geodmshtml .. '</span>'
.. '<span class="geo-multi-punct"> / </span>'
.. '<span class="' .. displayDefault(coordinateSpec["default"], "dec" ) .. '">';
if args["name"] == "" or args["name"] == nil then
inner = inner .. geodechtml
.. '<span style="display:none"> / ' .. geonumhtml .. '</span></span>'
else
inner = inner .. '<span class="vcard">' .. geodechtml
.. '<span style="display:none"> / ' .. geonumhtml .. '</span>'
.. '<span style="display:none"> (<span class="fn org">'
.. args["name"] .. '</span>)</span></span></span>'
end
return '<span class="plainlinks nourlexpansion">' .. globalFrame:preprocess(
'[//tools.wmflabs.org/geohack/geohack.php?pagename={{FULLPAGENAMEE}}&language=el¶ms=' ..
uriComponents .. ' ' .. inner .. ']') .. '</span>'
end
--[[
Formats any error messages generated for display
]]
function errorPrinter(errors)
local result = ""
for i,v in ipairs(errors) do
local errorHTML = '<strong class="error">Συντεταγμένες: ' .. v[2] .. '</strong>'
result = result .. errorHTML .. "<br />"
end
return result
end
--[[
Determine the required CSS class to display coordinates
Usually geo-nondefault is hidden by CSS, unless a user has overridden this for himself
default is the mode as specificied by the user when calling the {{coord}} template
mode is the display mode (dec or dms) that we will need to determine the css class for
]]
function displayDefault(default, mode)
if default == "" then
default = "dec"
end
if default == mode then
return "geo-default"
else
return "geo-nondefault"
end
end
--[[
Check the input arguments for coord to determine the kind of data being provided
and then make the necessary processing.
]]
function formatTest(args)
local result, errors;
local primary = false;
if args[1] == "" then
-- no lat logic
return errorPrinter( {{"formatTest", "Λείπει το πλάτος"}} )
elseif args[4] == "" and args[5] == "" and args[6] == "" then
-- dec logic
result, errors = parseDec( args[1], args[2], args['format'] )
if result == nil then
return errorPrinter( errors );
end
result.param = table.concat( {args[1], "_N_", args[2], "_E_", args[3] } );
elseif dmsTest(args[4], args[8]) then
-- dms logic
result, errors = parseDMS( args[1], args[2], args[3], args[4],
args[5], args[6], args[7], args[8], args['format'] )
result.param = table.concat( { args[1], args[2], args[3], args[4], args[5],
args[6], args[7], args[8], args[9] } , '_' );
if args[10] ~= '' then
table.insert( errors, { 'formatTest', 'Μη αναμενόμενοι παράμετροι (10)' .. args[10] } );
end
elseif dmsTest(args[3], args[6]) then
-- dm logic
result, errors = parseDMS( args[1], args[2], nil, args[3],
args[4], args[5], nil, args[6], args['format'] )
result.param = table.concat( { args[1], args[2], args[3], args[4], args[5],
args[6], args[7] } , '_' );
if args[8] ~= '' then
table.insert( errors, { 'formatTest', 'Μη αναμενόμενοι παράμετροι (8)' .. args[8] } );
end
elseif dmsTest(args[2], args[4]) then
-- d logic
result, errors = parseDMS( args[1], nil, nil, args[2],
args[3], nil, nil, args[4], args['format'] )
result.param = table.concat( { args[1], args[2], args[3], args[4], args[5] } , '_' );
if args[6] ~= '' then
table.insert( errors, { 'formatTest', 'Μη αναμενόμενοι παράμετροι (6)' .. args[6] } );
end
else
-- Error
return errorPrinter( {{"formatTest", "Άγνωστη μορφή παραμέτρου"}} )
end
result.name = args["name"]
local extra_param = {'dim', 'globe', 'scale', 'region', 'source', 'type'}
for _, v in ipairs( extra_param ) do
if (args[v] or '') ~= '' then
table.insert( errors, {'formatTest', 'Η παράμετρος: "' .. v .. '=" θα έπρεπε να είναι "' .. v .. ':"' } );
end
end
if #errors == 0 then
return specPrinter( args, result )
else
return specPrinter( args, result ) .. " " .. errorPrinter(errors) .. '[[Category:Σελίδες με εσφαλμένες ετικέτες συντεταγμένων]]';
end
end
--[[
Helper function, convert decimal latitude or longitude to
degrees, minutes, and seconds format based on the specified precision.
]]
function convert_dec2dms(coordinate, firstPostfix, secondPostfix, precision)
local coord = tonumber(coordinate) or 0
local postfix
if coord >= 0 then
postfix = firstPostfix
else
postfix = secondPostfix
end
precision = precision:lower();
if precision == "dms" then
return convert_dec2dms_dms( math.abs( coord ) ) .. postfix;
elseif precision == "dm" then
return convert_dec2dms_dm( math.abs( coord ) ) .. postfix;
elseif precision == "d" then
return convert_dec2dms_d( math.abs( coord ) ) .. postfix;
end
end
--[[ Helper function, convert decimal to degrees ]]
function convert_dec2dms_d(coordinate)
local d = math_mod._round( coordinate, 0 ) .. "°"
return d .. ""
end
--[[ Helper function, convert decimal to degrees and minutes ]]
function convert_dec2dms_dm(coordinate)
coordinate = math_mod._round( coordinate * 60, 0 );
local m = coordinate % 60;
coordinate = math.floor( (coordinate - m) / 60 );
local d = coordinate % 360 .."°"
return d .. string.format( "%02d′", m )
end
--[[ Helper function, convert decimal to degrees, minutes, and seconds ]]
function convert_dec2dms_dms(coordinate)
coordinate = math_mod._round( coordinate * 60 * 60, 0 );
local s = coordinate % 60
coordinate = math.floor( (coordinate - s) / 60 );
local m = coordinate % 60
coordinate = math.floor( (coordinate - m) / 60 );
local d = coordinate % 360 .."°"
return d .. string.format( "%02d′", m ) .. string.format( "%02d″", s )
end
--[[
Convert DMS format into a N or E decimal coordinate
]]
function convert_dms2dec(direction, degrees_str, minutes_str, seconds_str)
local degrees = tonumber(degrees_str) or 0
local minutes = tonumber(minutes_str) or 0
local seconds = tonumber(seconds_str) or 0
local factor
if direction == "N" or direction == "E" then
factor = 1
else
factor = -1
end
local precision = 0
if seconds_str ~= nil and seconds_str ~= '' then
precision = 5 + math.max( math_mod._precision(seconds_str), 0 );
elseif minutes_str ~= nil and minutes_str ~= '' then
precision = 3 + math.max( math_mod._precision(minutes_str), 0 );
else
precision = math.max( math_mod._precision(degrees_str), 0 );
end
local decimal = factor * (degrees+(minutes+seconds/60)/60)
return string.format( "%." .. precision .. "f", decimal ) -- not tonumber since this whole thing is string based.
end
--[[
Checks input values to for out of range errors.
]]
function validate( lat_d, lat_m, lat_s, long_d, long_m, long_s, source, strong )
local errors = {};
lat_d = tonumber( lat_d ) or 0;
lat_m = tonumber( lat_m ) or 0;
lat_s = tonumber( lat_s ) or 0;
long_d = tonumber( long_d ) or 0;
long_m = tonumber( long_m ) or 0;
long_s = tonumber( long_s ) or 0;
if strong then
if lat_d < 0 then
table.insert(errors, {source, "latitude degrees < 0 with hemisphere flag"})
end
if long_d < 0 then
table.insert(errors, {source, "longitude degrees < 0 with hemisphere flag"})
end
--[[
#coordinates is inconsistent about whether this is an error. If globe: is
specified, it won't error on this condition, but otherwise it will.
For not simply disable this check.
if long_d > 180 then
table.insert(errors, {source, "longitude degrees > 180 with hemisphere flag"})
end
]]
end
if lat_d > 90 then
table.insert(errors, {source, "μοίρες πλάτους > 90"})
end
if lat_d < -90 then
table.insert(errors, {source, "μοίρες πλάτους < -90"})
end
if lat_m >= 60 then
table.insert(errors, {source, "λεπτά πλάτους >= 60"})
end
if lat_m < 0 then
table.insert(errors, {source, "λεπτά πλάτους < 0"})
end
if lat_s >= 60 then
table.insert(errors, {source, "δευτερόλεπτα πλάτους >= 60"})
end
if lat_s < 0 then
table.insert(errors, {source, "δευτερόλεπτα πλάτους < 0"})
end
if long_d >= 360 then
table.insert(errors, {source, "μοίρες μήκους >= 360"})
end
if long_d <= -360 then
table.insert(errors, {source, "μοίρες μήκους <= -360"})
end
if long_m >= 60 then
table.insert(errors, {source, "λεπτά μήκους >= 60"})
end
if long_m < 0 then
table.insert(errors, {source, "λεπτά μήκους < 0"})
end
if long_s >= 60 then
table.insert(errors, {source, "δευτερόλεπτα μήκους >= 60"})
end
if long_s < 0 then
table.insert(errors, {source, "δευτερόλεπτα μήκους < 0"})
end
return errors;
end
--[[
dec2dms
Wrapper to allow templates to call dec2dms directly.
Usage:
{{ Invoke:Coordinates | dec2dms | decimal_coordinate | positive_suffix |
negative_suffix | precision }}
decimal_coordinate is converted to DMS format. If positive, the positive_suffix
is appended (typical N or E), if negative, the negative suffix is appended. The
specified precision is one of 'D', 'DM', or 'DMS' to specify the level of detail
to use.
]]
function coordinates.dec2dms(frame)
globalFrame = frame
local coordinate = frame.args[1]
local firstPostfix = frame.args[2]
local secondPostfix = frame.args[3]
local precision = frame.args[4]
return convert_dec2dms(coordinate, firstPostfix, secondPostfix, precision)
end
--[[
Helper function to determine whether to use D, DM, or DMS
format depending on the precision of the decimal input.
]]
function coordinates.determineMode( value1, value2 )
local precision = math.max( math_mod._precision( value1 ), math_mod._precision( value2 ) );
if precision <= 0 then
return 'd'
elseif precision <= 2 then
return 'dm';
else
return 'dms';
end
end
--[[
dms2dec
Wrapper to allow templates to call dms2dec directly.
Usage:
{{ Invoke:Coordinates | dms2dec | direction_flag | degrees |
minutes | seconds }}
Converts DMS values specified as degrees, minutes, seconds too decimal format.
direction_flag is one of N, S, E, W, and determines whether the output is
positive (i.e. N and E) or negative (i.e. S and W).
]]
function coordinates.dms2dec(frame)
globalFrame = frame
local direction = frame.args[1]
local degrees = frame.args[2]
local minutes = frame.args[3]
local seconds = frame.args[4]
return convert_dms2dec(direction, degrees, minutes, seconds)
end
--[[
coord
Main entry point for Lua function to replace {{coord}}
Usage:
{{ Invoke:Coordinates | coord }}
{{ Invoke:Coordinates | coord | lat | long }}
{{ Invoke:Coordinates | coord | lat | lat_flag | long | long_flag }}
...
Refer to {{coord}} documentation page for many additional parameters and
configuration options.
Note: This function provides the visual display elements of {{coord}}. In
order to load coordinates into the database, the {{#coordinates:}} parser
function must also be called, this is done automatically in the Lua
version of {{coord}}.
]]
function coordinates.coord(frame)
globalFrame = frame
local args = frame.args
if args[1] == nil then
local pFrame = frame:getParent();
args = pFrame.args;
for k,v in pairs( frame.args ) do
args[k] = v;
end
end
for i=1,10 do
if args[i] == nil then
args[i] = ""
else
args[i] = args[i]:match( '^%s*(.-)%s*$' ); --remove whitespace
end
end
args['format'] = args['format'] or '';
local contents = formatTest(args)
local Notes = args.notes or ""
local Display = string.lower(args.display or "inline")
if Display == '' then
Display = 'inline';
end
local text = ''
if string.find( Display, 'inline' ) ~= nil or Display == 'i' or
Display == 'it' or Display == 'ti' then
text = displayinline(contents, Notes)
end
if string.find( Display, 'title' ) ~= nil or Display == 't' or
Display == 'it' or Display == 'ti' then
text = text .. displaytitle(contents, Notes)
end
return text
end
--[[
coordinsert
Injects some text into the Geohack link of a transclusion of {{Coord}} (if that text isn't already in the transclusion). Outputs the modified transclusion of {{Coord}}.
IF THE GEOHACK LINK SYNTAX CHANGES THIS FUNCTION MUST BE MODIFIED.
Usage:
{{#invoke:Coordinates | coordinsert | {{Coord}} | parameter:value | parameter:value | … }}
Do not make Geohack unhappy by inserting something which isn't mentioned in the {{Coord}} documentation.
]]
function coordinates.coordinsert(frame)
for i, v in ipairs(frame.args) do
if i ~= 1 then
if not mw.ustring.find(frame.args[1], (mw.ustring.match(frame.args[i], '^(.-:)') or '')) then frame.args[1] = mw.ustring.gsub(frame.args[1], '(params=.-)_? ', '%1_'..frame.args[i]..' ') end
end
end
return frame.args[1]
end
return coordinates
q9pjp6f2e1cusw3hcbzqvfwspsz3lpd
Module:Coordinates/2025
828
3265
36443
2025-12-15T16:22:39Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ This module is intended to replace the functionality of {{Coord}} and related templates. It provides several methods, including {{#invoke:Coordinates | coord }} : General function formatting and displaying coordinate values. {{#invoke:Coordinates | dec2dms }} : Simple function for converting decimal degree values to DMS format. {{#invoke:Coordinates | dms2dec }} : Simple function for converting DMS format to decimal degree format. {{#invo...'
36443
Scribunto
text/plain
--[[
This module is intended to replace the functionality of {{Coord}} and related
templates. It provides several methods, including
{{#invoke:Coordinates | coord }} : General function formatting and displaying
coordinate values.
{{#invoke:Coordinates | dec2dms }} : Simple function for converting decimal
degree values to DMS format.
{{#invoke:Coordinates | dms2dec }} : Simple function for converting DMS format
to decimal degree format.
{{#invoke:Coordinates | link }} : Export the link used to reach the tools
]]
require('strict')
local math_mod = require("Module:Math")
local coordinates = {};
local isSandbox = mw.getCurrentFrame():getTitle():find('sandbox', 1, true);
local current_page = mw.title.getCurrentTitle()
local page_name = mw.uri.encode( current_page.prefixedText, 'WIKI' );
local coord_link = 'https://geohack.toolforge.org/geohack.php?pagename=' .. page_name .. '¶ms='
--[[ Helper function, replacement for {{coord/display/title}} ]]
local function displaytitle(coords)
return mw.getCurrentFrame():extensionTag{
name = 'indicator',
args = { name = 'coordinates' },
content = '<span id="coordinates">[[Geographic coordinate system|Coordinates]]: ' .. coords .. '</span>'
}
end
--[[ Helper function, used in detecting DMS formatting ]]
local function dmsTest(first, second)
if type(first) ~= 'string' or type(second) ~= 'string' then
return nil
end
local s = (first .. second):upper()
return s:find('^[NS][EW]$') or s:find('^[EW][NS]$')
end
--[[ Wrapper function to grab args, see Module:Arguments for this function's documentation. ]]
local function makeInvokeFunc(funcName)
return function (frame)
local args = require('Module:Arguments').getArgs(frame, {
wrappers = 'Template:Coord/2025'
})
return coordinates[funcName](args, frame)
end
end
--[[ Helper function, handle optional args. ]]
local function optionalArg(arg, supplement)
return arg and arg .. supplement or ''
end
--[[
Formats any error messages generated for display
]]
local function errorPrinter(errors)
local result = ""
for i,v in ipairs(errors) do
result = result .. '<strong class="error">Coordinates: ' .. v[2] .. '</strong><br />'
end
return result
end
--[[
Determine the required CSS class to display coordinates
Usually geo-nondefault is hidden by CSS, unless a user has overridden this for himself
default is the mode as specificied by the user when calling the {{coord}} template
mode is the display mode (dec or dms) that we will need to determine the css class for
]]
local function displayDefault(default, mode)
if default == "" then
default = "dec"
end
if default == mode then
return "geo-default"
else
return "geo-nondefault"
end
end
--[[
specPrinter
Output formatter. Takes the structure generated by either parseDec
or parseDMS and formats it for inclusion on Wikipedia.
]]
local function specPrinter(args, coordinateSpec)
local uriComponents = coordinateSpec["param"]
if uriComponents == "" then
-- RETURN error, should never be empty or nil
return "ERROR param was empty"
end
if args["name"] then
uriComponents = uriComponents .. "&title=" .. mw.uri.encode(coordinateSpec["name"])
end
local geodmshtml = '<span class="geo-dms" title="Maps, aerial photos, and other data for this location">'
.. '<span class="latitude">' .. coordinateSpec["dms-lat"] .. '</span> '
.. '<span class="longitude">' ..coordinateSpec["dms-long"] .. '</span>'
.. '</span>'
local lat = tonumber( coordinateSpec["dec-lat"] ) or 0
local geodeclat
if lat < 0 then
-- FIXME this breaks the pre-existing precision
geodeclat = tostring(coordinateSpec["dec-lat"]):sub(2) .. "°S"
else
geodeclat = (coordinateSpec["dec-lat"] or 0) .. "°N"
end
local long = tonumber( coordinateSpec["dec-long"] ) or 0
local geodeclong
if long < 0 then
-- FIXME does not handle unicode minus
geodeclong = tostring(coordinateSpec["dec-long"]):sub(2) .. "°W"
else
geodeclong = (coordinateSpec["dec-long"] or 0) .. "°E"
end
local geodechtml = '<span class="geo-dec" title="Maps, aerial photos, and other data for this location">'
.. geodeclat .. ' '
.. geodeclong
.. '</span>'
local geonumhtml = '<span class="geo">'
.. coordinateSpec["dec-lat"] .. '; '
.. coordinateSpec["dec-long"]
.. '</span>'
local inner = '<span class="' .. displayDefault(coordinateSpec["default"], "dms" ) .. '">' .. geodmshtml .. '</span>'
.. '<span class="geo-multi-punct"> / </span>'
.. '<span class="' .. displayDefault(coordinateSpec["default"], "dec" ) .. '">';
if not args["name"] then
inner = inner .. geodechtml
.. '<span style="display:none"> / ' .. geonumhtml .. '</span></span>'
else
inner = inner .. '<span class="vcard">' .. geodechtml
.. '<span style="display:none"> / ' .. geonumhtml .. '</span>'
.. '<span style="display:none"> (<span class="fn org">'
.. args["name"] .. '</span>)</span></span></span>'
end
local stylesheetLink = 'Module:Coordinates' .. ( isSandbox and '/sandbox' or '' ) .. '/styles.css'
return mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = stylesheetLink }
} .. '<span class="plainlinks nourlexpansion">[' .. coord_link .. uriComponents ..
' ' .. inner .. ']</span>' .. '[[Category:Pages using gadget WikiMiniAtlas]]'
end
--[[ Helper function, convert decimal to degrees ]]
local function convert_dec2dms_d(coordinate)
local d = math_mod._round( coordinate, 0 ) .. "°"
return d .. ""
end
--[[ Helper function, convert decimal to degrees and minutes ]]
local function convert_dec2dms_dm(coordinate)
coordinate = math_mod._round( coordinate * 60, 0 );
local m = coordinate % 60;
coordinate = math.floor( (coordinate - m) / 60 );
local d = coordinate % 360 .."°"
return d .. string.format( "%02d′", m )
end
--[[ Helper function, convert decimal to degrees, minutes, and seconds ]]
local function convert_dec2dms_dms(coordinate)
coordinate = math_mod._round( coordinate * 60 * 60, 0 );
local s = coordinate % 60
coordinate = math.floor( (coordinate - s) / 60 );
local m = coordinate % 60
coordinate = math.floor( (coordinate - m) / 60 );
local d = coordinate % 360 .."°"
return d .. string.format( "%02d′", m ) .. string.format( "%02d″", s )
end
--[[
Helper function, convert decimal latitude or longitude to
degrees, minutes, and seconds format based on the specified precision.
]]
local function convert_dec2dms(coordinate, firstPostfix, secondPostfix, precision)
local coord = tonumber(coordinate)
local postfix
if coord >= 0 then
postfix = firstPostfix
else
postfix = secondPostfix
end
precision = precision:lower();
if precision == "dms" then
return convert_dec2dms_dms( math.abs( coord ) ) .. postfix;
elseif precision == "dm" then
return convert_dec2dms_dm( math.abs( coord ) ) .. postfix;
elseif precision == "d" then
return convert_dec2dms_d( math.abs( coord ) ) .. postfix;
end
end
--[[
Convert DMS format into a N or E decimal coordinate
]]
local function convert_dms2dec(direction, degrees_str, minutes_str, seconds_str)
local degrees = tonumber(degrees_str)
local minutes = tonumber(minutes_str) or 0
local seconds = tonumber(seconds_str) or 0
local factor = 1
if direction == "S" or direction == "W" then
factor = -1
end
local precision = 0
if seconds_str then
precision = 5 + math.max( math_mod._precision(seconds_str), 0 );
elseif minutes_str and minutes_str ~= '' then
precision = 3 + math.max( math_mod._precision(minutes_str), 0 );
else
precision = math.max( math_mod._precision(degrees_str), 0 );
end
local decimal = factor * (degrees+(minutes+seconds/60)/60)
return string.format( "%." .. precision .. "f", decimal ) -- not tonumber since this whole thing is string based.
end
--[[
Checks input values to for out of range errors.
]]
local function validate( lat_d, lat_m, lat_s, long_d, long_m, long_s, source, strong )
local errors = {};
lat_d = tonumber( lat_d ) or 0;
lat_m = tonumber( lat_m ) or 0;
lat_s = tonumber( lat_s ) or 0;
long_d = tonumber( long_d ) or 0;
long_m = tonumber( long_m ) or 0;
long_s = tonumber( long_s ) or 0;
if strong then
if lat_d < 0 then
table.insert(errors, {source, "latitude degrees < 0 with hemisphere flag"})
end
if long_d < 0 then
table.insert(errors, {source, "longitude degrees < 0 with hemisphere flag"})
end
--[[
#coordinates is inconsistent about whether this is an error. If globe: is
specified, it won't error on this condition, but otherwise it will.
For not simply disable this check.
if long_d > 180 then
table.insert(errors, {source, "longitude degrees > 180 with hemisphere flag"})
end
]]
end
if lat_d > 90 then
table.insert(errors, {source, "latitude degrees > 90"})
end
if lat_d < -90 then
table.insert(errors, {source, "latitude degrees < -90"})
end
if lat_m >= 60 then
table.insert(errors, {source, "latitude minutes >= 60"})
end
if lat_m < 0 then
table.insert(errors, {source, "latitude minutes < 0"})
end
if lat_s >= 60 then
table.insert(errors, {source, "latitude seconds >= 60"})
end
if lat_s < 0 then
table.insert(errors, {source, "latitude seconds < 0"})
end
if long_d >= 360 then
table.insert(errors, {source, "longitude degrees >= 360"})
end
if long_d <= -360 then
table.insert(errors, {source, "longitude degrees <= -360"})
end
if long_m >= 60 then
table.insert(errors, {source, "longitude minutes >= 60"})
end
if long_m < 0 then
table.insert(errors, {source, "longitude minutes < 0"})
end
if long_s >= 60 then
table.insert(errors, {source, "longitude seconds >= 60"})
end
if long_s < 0 then
table.insert(errors, {source, "longitude seconds < 0"})
end
return errors;
end
--[[
parseDec
Transforms decimal format latitude and longitude into the
structure to be used in displaying coordinates
]]
local function parseDec( lat, long, format )
local coordinateSpec = {}
local errors = {}
if not long then
return nil, {{"parseDec", "Missing longitude"}}
elseif not tonumber(long) then
return nil, {{"parseDec", "Longitude could not be parsed as a number: " .. long}}
end
errors = validate( lat, nil, nil, long, nil, nil, 'parseDec', false );
coordinateSpec["dec-lat"] = lat;
coordinateSpec["dec-long"] = long;
local mode = coordinates.determineMode( lat, long );
coordinateSpec["dms-lat"] = convert_dec2dms( lat, "N", "S", mode) -- {{coord/dec2dms|{{{1}}}|N|S|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}
coordinateSpec["dms-long"] = convert_dec2dms( long, "E", "W", mode) -- {{coord/dec2dms|{{{2}}}|E|W|{{coord/prec dec|{{{1}}}|{{{2}}}}}}}
if format then
coordinateSpec.default = format
else
coordinateSpec.default = "dec"
end
return coordinateSpec, errors
end
--[[
parseDMS
Transforms degrees, minutes, seconds format latitude and longitude
into the a structure to be used in displaying coordinates
]]
local function parseDMS( lat_d, lat_m, lat_s, lat_f, long_d, long_m, long_s, long_f, format )
local coordinateSpec, errors, backward = {}, {}
lat_f = lat_f:upper();
long_f = long_f:upper();
-- Check if specified backward
if lat_f == 'E' or lat_f == 'W' then
lat_d, long_d, lat_m, long_m, lat_s, long_s, lat_f, long_f, backward = long_d, lat_d, long_m, lat_m, long_s, lat_s, long_f, lat_f, true;
end
errors = validate( lat_d, lat_m, lat_s, long_d, long_m, long_s, 'parseDMS', true );
if not long_d then
return nil, {{"parseDMS", "Missing longitude" }}
elseif not tonumber(long_d) then
return nil, {{"parseDMS", "Longitude could not be parsed as a number:" .. long_d }}
end
if not lat_m and not lat_s and not long_m and not long_s and #errors == 0 then
if math_mod._precision( lat_d ) > 0 or math_mod._precision( long_d ) > 0 then
if lat_f:upper() == 'S' then
lat_d = '-' .. lat_d;
end
if long_f:upper() == 'W' then
long_d = '-' .. long_d;
end
return parseDec( lat_d, long_d, format );
end
end
coordinateSpec["dms-lat"] = lat_d.."°"..optionalArg(lat_m,"′") .. optionalArg(lat_s,"″") .. lat_f
coordinateSpec["dms-long"] = long_d.."°"..optionalArg(long_m,"′") .. optionalArg(long_s,"″") .. long_f
coordinateSpec["dec-lat"] = convert_dms2dec(lat_f, lat_d, lat_m, lat_s) -- {{coord/dms2dec|{{{4}}}|{{{1}}}|0{{{2}}}|0{{{3}}}}}
coordinateSpec["dec-long"] = convert_dms2dec(long_f, long_d, long_m, long_s) -- {{coord/dms2dec|{{{8}}}|{{{5}}}|0{{{6}}}|0{{{7}}}}}
if format then
coordinateSpec.default = format
else
coordinateSpec.default = "dms"
end
return coordinateSpec, errors, backward
end
--[[
Check the input arguments for coord to determine the kind of data being provided
and then make the necessary processing.
]]
local function formatTest(args)
local result, errors
local backward, primary = false, false
local function getParam(args, lim)
local ret = {}
for i = 1, lim do
ret[i] = args[i] or ''
end
return table.concat(ret, '_')
end
if not args[1] then
-- no lat logic
return errorPrinter( {{"formatTest", "Missing latitude"}} )
elseif not tonumber(args[1]) then
-- bad lat logic
return errorPrinter( {{"formatTest", "Unable to parse latitude as a number:" .. args[1]}} )
elseif not args[4] and not args[5] and not args[6] then
-- dec logic
result, errors = parseDec(args[1], args[2], args.format)
if not result then
return errorPrinter(errors);
end
-- formatting for geohack: geohack expects D_N_D_E notation or D;D notation
-- wikiminiatlas doesn't support D;D notation
-- #coordinates parserfunction doesn't support negative decimals with NSWE
result.param = table.concat({
math.abs(tonumber(args[1])),
((tonumber(args[1]) or 0) < 0) and 'S' or 'N',
math.abs(tonumber(args[2])),
((tonumber(args[2]) or 0) < 0) and 'W' or 'E',
args[3] or ''}, '_')
elseif dmsTest(args[4], args[8]) then
-- dms logic
result, errors, backward = parseDMS(args[1], args[2], args[3], args[4],
args[5], args[6], args[7], args[8], args.format)
if args[10] then
table.insert(errors, {'formatTest', 'Extra unexpected parameters'})
end
if not result then
return errorPrinter(errors)
end
result.param = getParam(args, 9)
elseif dmsTest(args[3], args[6]) then
-- dm logic
result, errors, backward = parseDMS(args[1], args[2], nil, args[3],
args[4], args[5], nil, args[6], args['format'])
if args[8] then
table.insert(errors, {'formatTest', 'Extra unexpected parameters'})
end
if not result then
return errorPrinter(errors)
end
result.param = getParam(args, 7)
elseif dmsTest(args[2], args[4]) then
-- d logic
result, errors, backward = parseDMS(args[1], nil, nil, args[2],
args[3], nil, nil, args[4], args.format)
if args[6] then
table.insert(errors, {'formatTest', 'Extra unexpected parameters'})
end
if not result then
return errorPrinter(errors)
end
result.param = getParam(args, 5)
else
-- Error
return errorPrinter({{"formatTest", "Unknown argument format"}}) .. '[[Category:Pages with malformed coordinate tags]]'
end
result.name = args.name
local extra_param = {'dim', 'globe', 'scale', 'region', 'source', 'type'}
for _, v in ipairs(extra_param) do
if args[v] then
table.insert(errors, {'formatTest', 'Parameter: "' .. v .. '=" should be "' .. v .. ':"' })
end
end
local ret = specPrinter(args, result)
if #errors > 0 then
ret = ret .. ' ' .. errorPrinter(errors) .. '[[Category:Pages with malformed coordinate tags]]'
end
return ret, backward
end
--[[
Generate Wikidata tracking categories.
]]
local function makeWikidataCategories(qid)
local ret
local qid = qid or mw.wikibase.getEntityIdForCurrentPage()
if mw.wikibase and current_page.namespace == 0 then
if qid and mw.wikibase.entityExists(qid) and mw.wikibase.getBestStatements(qid, "P625") and mw.wikibase.getBestStatements(qid, "P625")[1] then
local snaktype = mw.wikibase.getBestStatements(qid, "P625")[1].mainsnak.snaktype
if snaktype == 'value' then
-- coordinates exist both here and on Wikidata, and can be compared.
ret = 'Coordinates on Wikidata'
elseif snaktype == 'somevalue' then
ret = 'Coordinates on Wikidata set to unknown value'
elseif snaktype == 'novalue' then
ret = 'Coordinates on Wikidata set to no value'
end
else
-- We have to either import the coordinates to Wikidata or remove them here.
ret = 'Coordinates not on Wikidata'
end
end
if ret then
return string.format('[[Category:%s]]', ret)
else
return ''
end
end
--[[
link
Simple function to export the coordinates link for other uses.
Usage:
{{#invoke:Coordinates | link }}
]]
function coordinates.link(frame)
return coord_link;
end
--[[
dec2dms
Wrapper to allow templates to call dec2dms directly.
Usage:
{{#invoke:Coordinates | dec2dms | decimal_coordinate | positive_suffix |
negative_suffix | precision }}
decimal_coordinate is converted to DMS format. If positive, the positive_suffix
is appended (typical N or E), if negative, the negative suffix is appended. The
specified precision is one of 'D', 'DM', or 'DMS' to specify the level of detail
to use.
]]
coordinates.dec2dms = makeInvokeFunc('_dec2dms')
function coordinates._dec2dms(args)
local coordinate = args[1]
local firstPostfix = args[2] or ''
local secondPostfix = args[3] or ''
local precision = args[4] or ''
return convert_dec2dms(coordinate, firstPostfix, secondPostfix, precision)
end
--[[
Helper function to determine whether to use D, DM, or DMS
format depending on the precision of the decimal input.
]]
function coordinates.determineMode( value1, value2 )
local precision = math.max( math_mod._precision( value1 ), math_mod._precision( value2 ) );
if precision <= 0 then
return 'd'
elseif precision <= 2 then
return 'dm';
else
return 'dms';
end
end
--[[
dms2dec
Wrapper to allow templates to call dms2dec directly.
Usage:
{{#invoke:Coordinates | dms2dec | direction_flag | degrees |
minutes | seconds }}
Converts DMS values specified as degrees, minutes, seconds too decimal format.
direction_flag is one of N, S, E, W, and determines whether the output is
positive (i.e. N and E) or negative (i.e. S and W).
]]
coordinates.dms2dec = makeInvokeFunc('_dms2dec')
function coordinates._dms2dec(args)
local direction = args[1]
local degrees = args[2]
local minutes = args[3]
local seconds = args[4]
return convert_dms2dec(direction, degrees, minutes, seconds)
end
--[[
coord
Main entry point for Lua function to replace {{coord}}
Usage:
{{#invoke:Coordinates | coord }}
{{#invoke:Coordinates | coord | lat | long }}
{{#invoke:Coordinates | coord | lat | lat_flag | long | long_flag }}
...
Refer to {{coord}} documentation page for many additional parameters and
configuration options.
Note: This function provides the visual display elements of {{coord}}. In
order to load coordinates into the database, the {{#coordinates:}} parser
function must also be called, this is done automatically in the Lua
version of {{coord}}.
]]
coordinates.coord = makeInvokeFunc('_coord')
function coordinates._coord(args)
if not tonumber(args[1]) and not args[2] then
args[3] = args[1]; args[1] = nil
local entity = mw.wikibase.getEntityObject(args.qid)
if entity
and entity.claims
and entity.claims.P625
and entity.claims.P625[1].mainsnak.snaktype == 'value'
then
local precision = entity.claims.P625[1].mainsnak.datavalue.value.precision
args[1] = entity.claims.P625[1].mainsnak.datavalue.value.latitude
args[2] = entity.claims.P625[1].mainsnak.datavalue.value.longitude
if precision then
precision = -math_mod._round(math.log(precision)/math.log(10),0)
args[1] = math_mod._round(args[1],precision)
args[2] = math_mod._round(args[2],precision)
end
end
end
local contents, backward = formatTest(args)
local Notes = args.notes or ''
local Display = args.display and args.display:lower() or 'inline'
-- it and ti are short for inline,title and title,inline
local function isInline(s)
-- Finds whether coordinates are displayed inline.
return s:find('inline') ~= nil or s == 'i' or s == 'it' or s == 'ti'
end
local function isInTitle(s)
-- Finds whether coordinates are displayed in the title.
return s:find('title') ~= nil or s == 't' or s == 'it' or s == 'ti'
end
local function coord_wrapper(in_args)
-- Calls the parser function {{#coordinates:}}.
return mw.getCurrentFrame():callParserFunction('#coordinates', in_args) or ''
end
local text = ''
if isInline(Display) then
text = text .. '<span class="geo-inline">' .. contents .. Notes .. '</span>'
end
if isInTitle(Display) then
-- Add to output since indicator content is invisible to Lua later on
if not isInline(Display) then
text = text .. '<span class="geo-inline-hidden noexcerpt">' .. contents .. Notes .. '</span>'
end
text = text .. displaytitle(contents .. Notes) .. makeWikidataCategories(args.qid)
end
if not args.nosave then
local page_title, count = mw.title.getCurrentTitle(), 1
if backward then
local tmp = {}
while not string.find((args[count-1] or ''), '[EW]') do tmp[count] = (args[count] or ''); count = count+1 end
tmp.count = count; count = 2*(count-1)
while count >= tmp.count do table.insert(tmp, 1, (args[count] or '')); count = count-1 end
for i, v in ipairs(tmp) do args[i] = v end
else
while count <= 9 do args[count] = (args[count] or ''); count = count+1 end
end
if isInTitle(Display) and not page_title.isTalkPage and page_title.subpageText ~= 'doc' and page_title.subpageText ~= 'testcases' then args[10] = 'primary' end
args.notes, args.format, args.display = nil
text = text .. coord_wrapper(args)
end
return text
end
--[[
coord2text
Extracts a single value from a transclusion of {{Coord}}.
IF THE GEOHACK LINK SYNTAX CHANGES THIS FUNCTION MUST BE MODIFIED.
Usage:
{{#invoke:Coordinates | coord2text | {{Coord}} | parameter }}
Valid values for the second parameter are: lat (signed integer), long (signed integer), type, scale, dim, region, globe, source
]]
function coordinates._coord2text(coord,type)
if coord == '' or type == '' or not type then return nil end
type = mw.text.trim(type)
if type == 'lat' or type == 'long' then
local result, negative = mw.text.split((mw.ustring.match(coord,'[%.%d]+°[NS] [%.%d]+°[EW]') or ''), ' ')
if type == 'lat' then
result, negative = result[1], 'S'
else
result, negative = result[2], 'W'
end
result = mw.text.split(result, '°')
if result[2] == negative then result[1] = '-'..result[1] end
return result[1]
else
return mw.ustring.match(coord, 'params=.-_' .. type .. ':(.-)[ _]')
end
end
function coordinates.coord2text(frame)
return coordinates._coord2text(frame.args[1],frame.args[2])
end
--[[
coordinsert
Injects some text into the Geohack link of a transclusion of {{Coord}} (if that text isn't already in the transclusion). Outputs the modified transclusion of {{Coord}}.
IF THE GEOHACK LINK SYNTAX CHANGES THIS FUNCTION MUST BE MODIFIED.
Usage:
{{#invoke:Coordinates | coordinsert | {{Coord}} | parameter:value | parameter:value | … }}
Do not make Geohack unhappy by inserting something which isn't mentioned in the {{Coord}} documentation.
]]
function coordinates.coordinsert(frame)
-- for the 2nd or later integer parameter (the first is the coord template, as above)
for i, v in ipairs(frame.args) do
if i ~= 1 then
-- if we cannot find in the coord_template the i_th coordinsert parameter e.g. region
if not mw.ustring.find(frame.args[1], (mw.ustring.match(frame.args[i], '^(.-:)') or '')) then
-- find from the params= up to the first possibly-present underscore
-- and append the i_th coordinsert parameter and a space
-- IDK why we're adding a space but it does seem somewhat convenient
frame.args[1] = mw.ustring.gsub(frame.args[1], '(params=.-)_? ', '%1_'..frame.args[i]..' ')
end
end
end
if frame.args.name then
-- if we can't find the vcard class
if not mw.ustring.find(frame.args[1], '<span class="vcard">') then
-- take something that looks like a coord template and add the vcard span with class and fn org class
local namestr = frame.args.name
frame.args[1] = mw.ustring.gsub(
frame.args[1],
'(<span class="geo%-default">)(<span[^<>]*>[^<>]*</span><span[^<>]*>[^<>]*<span[^<>]*>[^<>]*</span></span>)(</span>)',
'%1<span class="vcard">%2<span style="display:none"> (<span class="fn org">' .. namestr .. '</span>)</span></span>%3'
)
-- then find anything from coordinates parameters to the 'end' and attach the title parameter
frame.args[1] = mw.ustring.gsub(
frame.args[1],
'(¶ms=[^&"<>%[%] ]*) ',
'%1&title=' .. mw.uri.encode(namestr) .. ' '
)
end
end
-- replace the existing indicator with a new indicator using the modified content
frame.args[1] = mw.ustring.gsub(
frame.args[1],
'(<span class="geo%-inline[^"]*">(.+)</span>)\127[^\127]*UNIQ%-%-indicator%-%x+%-%-?QINU[^\127]*\127',
function (inline, coord) return inline .. displaytitle(coord) end
)
return frame.args[1]
end
return coordinates
cdv03qx9rqg6nlnts9651zciopdw4qd
Module:Coordinates/i18n
828
3266
36444
2025-12-15T16:23:30Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { N = { bn = 'উ', en = ' N', fr = 'N', pl = 'N', }, Nlong = { bn = 'উত্তর', en = 'North', fr = 'Nord', pl = 'Północ', }, W = { bn = 'প', de = 'W', en = 'W', fr = 'O', pl = 'W', }, Wlong = { bn = 'পশ্চিম', en = 'West', fr = 'Ouest', pl = 'Zachód', }, E = { bn = 'পূ', de = 'O', en = 'E', fr = 'E', pl = 'E', }, Elong = { bn = 'পূর্ব', en = 'East', fr = 'Est', pl = 'Wschód',...'
36444
Scribunto
text/plain
return {
N = {
bn = 'উ',
en = ' N',
fr = 'N',
pl = 'N',
},
Nlong = {
bn = 'উত্তর',
en = 'North',
fr = 'Nord',
pl = 'Północ',
},
W = {
bn = 'প',
de = 'W',
en = 'W',
fr = 'O',
pl = 'W',
},
Wlong = {
bn = 'পশ্চিম',
en = 'West',
fr = 'Ouest',
pl = 'Zachód',
},
E = {
bn = 'পূ',
de = 'O',
en = 'E',
fr = 'E',
pl = 'E',
},
Elong = {
bn = 'পূর্ব',
en = 'East',
fr = 'Est',
pl = 'Wschód',
},
S = {
bn = 'দ',
de = 'S',
en = 'S',
fr = 'S',
pl = 'S',
},
Slong = {
bn = 'দক্ষিণ',
de = 'South',
en = 'South',
fr = 'Sud',
pl = 'Południe',
},
degrees = {
bn = '° ',
en = '° ',
fr = '° ',
pl = '° ',
},
minutes = {
bn = '\′ ',
en = '\′ ',
fr = '\′ ',
pl = '\′ ',
},
seconds = {
bn = '″ ',
en = '″ ',
fr = '″ ',
pl = '″ ',
},
tooltip = {
bn = 'এই স্থান সম্পর্কে মাস্তল, আকাশস্ত চিত্র এবং অন্যান্য উপাত্ত',
en = 'Maps, aerial views and other data about this place',
fr = 'Cartes, vues aériennes et autres données pour cet endroit',
pl = 'Mapy, widoki z lotu ptaka i inne dane o tym miejscu',
}
}
thylzu321bfndbzggadylc9szci3vem
Module:Coordinates/styles.css
828
3267
36445
2025-12-15T16:24:18Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '/* Geographical coordinates defaults. The classes "geo", "longitude", and "latitude" are used by the [[Geo microformat]]. */ .geo-default, .geo-dms, .geo-dec { display: inline; } .geo-nondefault, .geo-multi-punct, .geo-inline-hidden { display: none; } .longitude, .latitude { white-space: nowrap; }'
36445
sanitized-css
text/css
/* Geographical coordinates defaults. The classes "geo", "longitude", and
"latitude" are used by the [[Geo microformat]]. */
.geo-default,
.geo-dms,
.geo-dec {
display: inline;
}
.geo-nondefault,
.geo-multi-punct,
.geo-inline-hidden {
display: none;
}
.longitude,
.latitude {
white-space: nowrap;
}
6kb1bv1kq6yo1ukxzqi15vrd26x01rl
Module:Math functions
828
3268
36446
2025-12-15T16:25:18Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- misc math functions -- gts-tg@elwiki, Nov 2017 local p = {} -- calculate gcd local function _gcd(a,b) if b ~= 0 then return _gcd(b, a % b) else return math.abs(a) end end -- return gcd function p.gcd(frame) local a = frame.args[1] local b = frame.args[2] return _gcd(a,b) end -- return φ(n) function p.phi(frame) local n = frame.args[1] local amount = 0 for k=1, n + 1 do if _gcd(n, k) == 1 then amount =...'
36446
Scribunto
text/plain
-- misc math functions
-- gts-tg@elwiki, Nov 2017
local p = {}
-- calculate gcd
local function _gcd(a,b)
if b ~= 0 then
return _gcd(b, a % b)
else
return math.abs(a)
end
end
-- return gcd
function p.gcd(frame)
local a = frame.args[1]
local b = frame.args[2]
return _gcd(a,b)
end
-- return φ(n)
function p.phi(frame)
local n = frame.args[1]
local amount = 0
for k=1, n + 1 do
if _gcd(n, k) == 1 then
amount = amount + 1
end
end
return amount-1
end
return p
bgxj1yi3cwe45qoefxstqzsc3dp3k0i
Πρότυπον:Coord/input/error2
10
3269
36447
2025-12-15T16:26:21Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<font color="red"><b> {{{msg}}} in {{tl|Coord}}</b></font><includeonly>{{#ifeq:{{NAMESPACE}}|{{NS:0}}|[[Κατηγορίαν:Λήμματα με ενσωματωμένο πρότυπο Coord που χρειάζονται επισκευή|{{{sort_ch}}}{{PAGENAME}}]]}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]]</noinclude>'
36447
wikitext
text/x-wiki
<font color="red"><b> {{{msg}}} in {{tl|Coord}}</b></font><includeonly>{{#ifeq:{{NAMESPACE}}|{{NS:0}}|[[Κατηγορίαν:Λήμματα με ενσωματωμένο πρότυπο Coord που χρειάζονται επισκευή|{{{sort_ch}}}{{PAGENAME}}]]}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
43avd0gzt6unmdjyypqye3pg13u6kfi
Πρότυπον:Coord/input/ERROR
10
3270
36448
2025-12-15T16:27:08Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<font color="red">ERROR in {{tl|coord}} invocation. Please see [[Template:Coord]] for usage. Arguments supplied as:</font> * <font color="red">1={{{1|}}}</font> * <font color="red">2={{{2|}}}</font> *<font color="red"> 3={{{3|}}}</font> * <font color="red">4={{{4|}}}</font> * <font color="red">5={{{5|}}}</font> * <font color="red">6={{{6|}}}</font> * <font color="red">7={{{7|}}}</font> * <font color="red">8={{{8|}}}</font> * <font color="red">9={...'
36448
wikitext
text/x-wiki
<font color="red">ERROR in {{tl|coord}} invocation. Please see [[Template:Coord]] for usage. Arguments supplied as:</font>
* <font color="red">1={{{1|}}}</font>
* <font color="red">2={{{2|}}}</font>
*<font color="red"> 3={{{3|}}}</font>
* <font color="red">4={{{4|}}}</font>
* <font color="red">5={{{5|}}}</font>
* <font color="red">6={{{6|}}}</font>
* <font color="red">7={{{7|}}}</font>
* <font color="red">8={{{8|}}}</font>
* <font color="red">9={{{9|}}}</font>
<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
lclhqraftm3vjfg5rm7jlk0dwi6j8e9
Πρότυπον:Coord/input/d
10
3271
36451
2025-12-15T16:30:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{Coord/link|dms-lat={{coord/dec2dms|{{{1}}}|{{{2}}}|{{#ifeq:{{{2}}}|N|S|N}}|{{coord/prec dec|{{{1}}}|{{{3}}}}}}}|dms-long={{coord/dec2dms|{{{3}}}|{{{4}}}|{{#ifeq:{{{4}}}|E|W|E}}|{{coord/prec dec|{{{1}}}|{{{3}}}}}}}|dec-lat={{coord/dms2dec|{{{2}}}|{{{1}}}}}|dec-long={{coord/dms2dec|{{{4}}}|{{{3}}}}}|param={{{1}}}_{{{2}}}_{{{3}}}_{{{4}}}_{{{5|}}}|default={{#if:{{{format|}}}|{{{format}}}|{{#ifeq:{{coord/prec dec|{{{1}}}|{{{3}}}}}|d|dms|d...'
36451
wikitext
text/x-wiki
<includeonly>{{Coord/link|dms-lat={{coord/dec2dms|{{{1}}}|{{{2}}}|{{#ifeq:{{{2}}}|N|S|N}}|{{coord/prec dec|{{{1}}}|{{{3}}}}}}}|dms-long={{coord/dec2dms|{{{3}}}|{{{4}}}|{{#ifeq:{{{4}}}|E|W|E}}|{{coord/prec dec|{{{1}}}|{{{3}}}}}}}|dec-lat={{coord/dms2dec|{{{2}}}|{{{1}}}}}|dec-long={{coord/dms2dec|{{{4}}}|{{{3}}}}}|param={{{1}}}_{{{2}}}_{{{3}}}_{{{4}}}_{{{5|}}}|default={{#if:{{{format|}}}|{{{format}}}|{{#ifeq:{{coord/prec dec|{{{1}}}|{{{3}}}}}|d|dms|dec}}}}|name={{{name|}}}
}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
ifnckrtfzih5ycb5drr26qwnazpjxjj
Πρότυπον:Coord/dms2dec
10
3272
36452
2025-12-15T16:30:51Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#expr:{{#switch:{{{1}}}|N|E=1|S|W=-1}}*({{{2|0}}}+({{{3|0}}}+{{{4|0}}}/60)/60) round {{{precdec|{{#if:{{{4|}}}|5|{{#if:{{{3|}}}|3|0}}}}+{{precision1|{{{4|{{{3|{{{2}}}}}}}}}}}}}}}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]]</noinclude>'
36452
wikitext
text/x-wiki
<includeonly>{{#expr:{{#switch:{{{1}}}|N|E=1|S|W=-1}}*({{{2|0}}}+({{{3|0}}}+{{{4|0}}}/60)/60) round {{{precdec|{{#if:{{{4|}}}|5|{{#if:{{{3|}}}|3|0}}}}+{{precision1|{{{4|{{{3|{{{2}}}}}}}}}}}}}}}}</includeonly><noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
gx68gut0epeeu5pcwzmclnq82nlfvph
Πρότυπον:Coord/display/inline,title
10
3273
36454
2025-12-15T16:33:24Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{{1}}}<span id="coordinates">[[Γεωγραφικά συντεταγμένας|Συντεταγμένας]]: {{{1}}}</span><noinclude>[[Κατηγορίαν:Coord template]]</noinclude>'
36454
wikitext
text/x-wiki
{{{1}}}<span id="coordinates">[[Γεωγραφικά συντεταγμένας|Συντεταγμένας]]: {{{1}}}</span><noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
0ql436ww59q7a8hjeewomdu3plepqlf
Πρότυπον:Coord/dec2dms/τεκμηρίωση
10
3274
36456
2025-12-15T16:35:11Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'Given a decimal coordinate, two cardinal directions, and precision, render a coordinate in degrees/minutes/seconds. == Usage == {{coord/dec2dms|''coord''|N|S|''precision''}} {{coord/dec2dms|''coord''|E|W|''precision''}} Precision codes: <table class="prettytable"> <tr><td>d</td><td>Degrees (rounded to integer)</td> <tr><td>d1</td><td>Degrees (rounded to 0.1 degrees)</td> <tr><td>dm</td><td>Degrees, minutes (rounded to integer)</td> <t...'
36456
wikitext
text/x-wiki
Given a decimal coordinate, two cardinal directions, and precision, render a coordinate in degrees/minutes/seconds.
== Usage ==
{{coord/dec2dms|''coord''|N|S|''precision''}}
{{coord/dec2dms|''coord''|E|W|''precision''}}
Precision codes:
<table class="prettytable">
<tr><td>d</td><td>Degrees (rounded to integer)</td>
<tr><td>d1</td><td>Degrees (rounded to 0.1 degrees)</td>
<tr><td>dm</td><td>Degrees, minutes (rounded to integer)</td>
<tr><td>dm1</td><td>Degrees, minutes (rounded to 0.1 minutes)</td>
<tr><td>dms</td><td>Degrees, minutes, seconds (rounded to integer)</td>
<tr><td>dms1</td><td>Degrees, minutes, seconds (rounded to 0.1 seconds)</td>
</table>
== Examples ==
<table class="prettytable">
{{template example row|10.391944|N|S|d}}
{{template example row|10.391944|N|S|d1}}
{{template example row|10.390000|N|S|d}}
{{template example row|10.390000|N|S|d1}}
{{template example row|10.39|N|S|d}}
{{template example row|10.39|N|S|d1}}
{{template example row|-10.391944|N|S|dm}}
{{template example row|-10.391944|N|S|dm1}}
{{template example row|10.391944|E|W|dms}}
{{template example row|10.391944|E|W|dms1}}
{{template example row|10|N|S|d}}
{{template example row|10|E|W|dm}}
{{template example row|-10|E|W|dms}}
{{template example row|-10|E|W|dms1}}
</table>
{{Coord/dec2dms/subdoc}}
2xu4ktns5mckk9r0fkj8gd3kpl9vtp0
Πρότυπον:Coord/dec2dms/subdoc
10
3275
36457
2025-12-15T16:35:41Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '== Subroutines == Subroutines of {{lt|Coord/dec2dms}}: *{{tl|Coord/dec2dms/d}} *{{tl|Coord/dec2dms/d1}} *{{tl|Coord/dec2dms/dm}} *{{tl|Coord/dec2dms/dm1}} *{{tl|Coord/dec2dms/dms}} *{{tl|Coord/dec2dms/dms1}} [[Κατηγορίαν:Coord template]]'
36457
wikitext
text/x-wiki
== Subroutines ==
Subroutines of {{lt|Coord/dec2dms}}:
*{{tl|Coord/dec2dms/d}}
*{{tl|Coord/dec2dms/d1}}
*{{tl|Coord/dec2dms/dm}}
*{{tl|Coord/dec2dms/dm1}}
*{{tl|Coord/dec2dms/dms}}
*{{tl|Coord/dec2dms/dms1}}
[[Κατηγορίαν:Coord template]]
06j362u43vc3bict7u93q4sttwnqehv
Πρότυπον:Coord/dec2dms/d
10
3276
36458
2025-12-15T16:36:19Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#expr:{{{1}}} round 0}}°<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>'
36458
wikitext
text/x-wiki
{{#expr:{{{1}}} round 0}}°<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
o0ju2hw1uqug7aus1mz2vjtk1v10mzv
Πρότυπον:Precision1
10
3277
36459
2025-12-15T16:37:50Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#expr:{{#ifeq:{{{1}}}|0|0|{{#ifexpr:{{{1}}} round 0={{{1}}}|0|{{#ifexpr:{{{1}}} round 1={{{1}}}|1|{{#ifexpr:{{{1}}} round 2={{{1}}}|2|{{#ifexpr:{{{1}}} round 3={{{1}}}|3|{{#ifexpr:{{{1}}} round 4={{{1}}}|4|{{#ifexpr:{{{1}}} round 5={{{1}}}|5|6}}}}}}}}}}}}}}+{{precision/tz|{{{1}}}}}}}</includeonly><noinclude>[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]</noinclude>'
36459
wikitext
text/x-wiki
<includeonly>{{#expr:{{#ifeq:{{{1}}}|0|0|{{#ifexpr:{{{1}}} round 0={{{1}}}|0|{{#ifexpr:{{{1}}} round 1={{{1}}}|1|{{#ifexpr:{{{1}}} round 2={{{1}}}|2|{{#ifexpr:{{{1}}} round 3={{{1}}}|3|{{#ifexpr:{{{1}}} round 4={{{1}}}|4|{{#ifexpr:{{{1}}} round 5={{{1}}}|5|6}}}}}}}}}}}}}}+{{precision/tz|{{{1}}}}}}}</includeonly><noinclude>[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]</noinclude>
ae3f3t959bxfof0tp4grzfho35qc0wp
Πρότυπον:Precision/tz/1
10
3278
36460
2025-12-15T16:38:38Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#switch:{{{1}}}|{{{2}}}|{{{2}}}.=0|{{{2}}}0|{{{2}}}.0=1|{{{2}}}00|{{{2}}}.00=2|{{{2}}}000|{{{2}}}.000=3|{{{2}}}0000|{{{2}}}.0000=4|{{{2}}}00000|{{{2}}}.00000=5|0}}</includeonly><noinclude>[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]</noinclude>'
36460
wikitext
text/x-wiki
<includeonly>{{#switch:{{{1}}}|{{{2}}}|{{{2}}}.=0|{{{2}}}0|{{{2}}}.0=1|{{{2}}}00|{{{2}}}.00=2|{{{2}}}000|{{{2}}}.000=3|{{{2}}}0000|{{{2}}}.0000=4|{{{2}}}00000|{{{2}}}.00000=5|0}}</includeonly><noinclude>[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]</noinclude>
ovwwfus07xhcgrwvnmyo8ynko9mld2m
Πρότυπον:Precision/tz
10
3279
36461
2025-12-15T16:39:21Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{precision/tz/1|x{{{1}}}|x{{#expr:{{{1}}}+0}}}}</includeonly><noinclude>[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]</noinclude>'
36461
wikitext
text/x-wiki
<includeonly>{{precision/tz/1|x{{{1}}}|x{{#expr:{{{1}}}+0}}}}</includeonly><noinclude>[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]</noinclude>
lab9tp4j7eh1a1c1g8rm5yq1h4yy7jh
Πρότυπον:Precision
10
3280
36462
2025-12-15T16:40:08Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<noinclude><!-- --============================================================ -- Getprecision - Count decimal digits or in fraction (2+1/3) --============================================================ -- (see NOTES at bottom) --></noinclude>{{ #expr: ( 0 {{ #ifexpr: {{{1|0.0000}}}0={{{1|0.0000}}} |<!--see NOTE Z7--> -1 + <noinclude><!--see NOTE S5--></noinclude> {{#switch: x{{{1|0.0000}}} |{{padleft:|6|x{{{1}}}}}=5...'
36462
wikitext
text/x-wiki
<noinclude><!--
--============================================================
-- Getprecision - Count decimal digits or in fraction (2+1/3)
--============================================================
-- (see NOTES at bottom)
--></noinclude>{{
#expr: ( 0 {{
#ifexpr: {{{1|0.0000}}}0={{{1|0.0000}}} |<!--see NOTE Z7-->
-1 + <noinclude><!--see NOTE S5--></noinclude>
{{#switch: x{{{1|0.0000}}}
|{{padleft:|6|x{{{1}}}}}=5
|{{padleft:|5|x{{{1}}}}}=4
|{{padleft:|7|x{{{1|0.0000}}}}}=6
|{{padleft:|4|x{{{1}}}}}=3
|{{padleft:|8|x{{{1}}}}}=7
|{{padleft:|9|x{{{1}}}}}=8
|{{padleft:|10|x{{{1}}}}}=9
|{{padleft:|11|x{{{1}}}}}=10
|{{padleft:|2|x{{{1}}}}}=1 <!--for "0"-->
|{{padleft:|12|x{{{1}}}}}=11
|{{padleft:|13|x{{{1}}}}}=12
|{{padleft:|14|x{{{1}}}}}=13
|{{padleft:|15|x{{{1}}}}}=14
|{{padleft:|16|x{{{1}}}}}=15
|{{padleft:|17|x{{{1}}}}}=16
|{{padleft:|18|x{{{1}}}}}=17
|{{padleft:|19|x{{{1}}}}}=18
|{{padleft:|20|x{{{1}}}}}=19
|{{padleft:|21|x{{{1}}}}}=20
|{{padleft:|3|x{{{1}}}}}=2
|{{padleft:|22|x{{{1}}}}}=21
|{{padleft:|23|x{{{1}}}}}=22
|{{padleft:|24|x{{{1}}}}}=23
|{{padleft:|25|x{{{1}}}}}=24
|{{padleft:|26|x{{{1}}}}}=25
|{{padleft:|27|x{{{1}}}}}=26
|{{padleft:|28|x{{{1}}}}}=27
|{{padleft:|29|x{{{1}}}}}=28
|{{padleft:|30|x{{{1}}}}}=29
|{{padleft:|31|x{{{1}}}}}=30
|{{padleft:|32|x{{{1}}}}}=31
|{{padleft:|33|x{{{1}}}}}=32
|{{padleft:|34|x{{{1}}}}}=33
|{{padleft:|35|x{{{1}}}}}=34
|{{padleft:|36|x{{{1}}}}}=35
|{{padleft:|37|x{{{1}}}}}=36
|{{padleft:|38|x{{{1}}}}}=37
|{{padleft:|39|x{{{1}}}}}=38
|{{padleft:|40|x{{{1}}}}}=39
|{{padleft:|41|x{{{1}}}}}=40
|#default = 41
}} - floor(
ln (floor( abs({{{1|0}}}) )+0.99 )/ln10 ) - 1
{{#ifexpr: floor(abs({{{1|0}}}) )=0 |-1}}
{{#ifeq: {{{1|0.0000}}}x|0x| + 1}}{{
#ifexpr: {{{1|500}}}<0| - 1}}<!--For minus sign-->
|<noinclude><!--else for integers--></noinclude>{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/10)*10|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/100)*100|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E3)*1E3|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E4)*1E4|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E5)*1E5|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E6)*1E6|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E7)*1E7|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E8)*1E8|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E9)*1E9|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E10)*1E10|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E11)*1E11|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E12)*1E12|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E13)*1E13|-1}}{{
#ifexpr:{{{1|500}}}=floor({{{1|500}}}/1E14)*1E14|-1
}}}}<noinclude><!--endif {1}0={1}
--------------------------------------------------------
Check for fraction "/" to use logn of denominator, by
clearing prior count: (..prior..)*0 + (logn denom / logn 10).
(see NOTE A1). The whole expression ends with close ")".
--></noinclude>{{
#if: {{#titleparts:{{{1|6+3~8}}}|1|2}}| )*0 + (
(ln {{#titleparts:{{{1|6+3/8}}}|1|2}} / ln10)
}}<noinclude><!--endif fraction
--></noinclude> ) }}<noinclude><!--endexpr# (close paren.)
--
--------------------------------------------------------------
--NOTES:
-- [ These comments are skipped by <noinclude> and not send
-- inside formatted Internet pages, only during edit. ]
--
--NOTE A1: This template determines the precision of decimals
-- by counting the length of the numeric string (in a
-- #switch comparing lengths of padded strings), then
-- subtracting integer length, minus the decimal point,
-- and minus 1 if negative. For integers, 1 place is
-- subtracted for each trailing 0 on the integer.
-- For fractions, any prior count is cleared x 0, then
-- size is logarithm of denominator divided by logn 10:
-- (..prior...)*0 + floor(logn denom / logn 10 - .01) + 1.
--
--NOTE D2: The check, for whole integers, compares the amount
-- versus appending "0" at the end: when the amount is a
-- decimal, then the value is unchanged by appending 0 at
-- the end: so 5.23 = 5.230 is true, whereas for whole
-- integers, it would be: 5 = 50 as false, due to values
-- becoming n*10 for integer n. So, for integer n, the
-- check rejects: n = n0 as false; hence n is integer.
--
--NOTE M3: The magnitude of the integer portion is calculated
-- by logarithm of the floor of absolute value (divided by
-- [[natural logarithm]] of 10 to adjust for e=2.71828*),
-- as: ln (floor( abs({{{1|-0.050067}}}) )+0.99 )/ln10
-- Function floor(x) trims the decimal part, to leave the
-- whole count: 0-9 yield 0, 10-19 as 1, 1000-1999 as 3.
-- The abs(x) avoids floor of negatives, floor(-0.1)= -1,
-- hence using abs(x) ensures -0.1 floors to 0 not -1.
-- Near zero, the +0.99 avoids invalid log of 0, but does
-- not round-up any decimals, already floored as nnn.00.
-- Complexity is 6 operations: floor of abs( {1} ) +0.99
-- then logn div logn10, then floor that logarithm ratio.
-- Decimals -1 < x < 1 yield -1, avoiding log 0.001 = -3.
--
--NOTE N4: Nesting of if-else and nested templates is kept to
-- a minimum, due to the MediaWiki 1.6 limit of 40 levels
-- of if-logic for all nested templates used together.
-- Template {ordomag} was omitted to avoid 2 more levels
-- of nested templates. Template {Precision} had 8 levels,
-- and this template was trimmed to only 5 levels.
--
--NOTE S5: The #switch is run with "x" prepended in front of
-- the amount, otherwise a #switch will compare as numeric
-- where 2 would match "2.0" even though "2" is length 1.
-- So "x2" won't match "x2.0" in non-numeric comparison.
-- The #switch will exit on the first match, so smaller
-- lengths are compared first, to avoid extra comparisons
-- for more rare, longer numeric strings up to 41 long.
--
--NOTE W6: The check for integers with whole end-zeroes uses
-- typical n=n/10*10, for each power of 10, where whole
-- millions match: {{#ifexpr: {1}=floor( {1}/1E6 )*1E6| }}
-- Previously, {Precision} had tried to use "round" to
-- detect end-zeroes but "round" loses precision at -5,
-- so, n00000 round -5 differs from n00000 slightly, and
-- comparisons to exact rounded amounts failed to match
-- some numbers when 6 or more zeroes "n000000".
--
--NOTE Z7: The check on zero for any .00000 compares adding 1
-- to the amount, versus appending "1" at the end: if the
-- amount is a decimal, then adding 1 will be larger than
-- appending 1 at the end: 0.00 + 1 > 0.001, whereas for
-- whole zero, it would be: 0+1 > 01 as false, due to the
-- value being the same. So, for integer 0, the check
-- rejects: 0+1 > 01 as false; hence whole 0 is integer.
--
-- WARNING: *** DO NOT DELETE COMMENTS FROM THIS TEMPLATE ***
-- Unless these comments are readily available, people
-- might tinker with the coding (or rename templates),
-- in hopes to clarify operation because these comments
-- were not nearby to explain the issues. Having these
-- comments only on a doc-page increases the danger of
-- explanations no longer matching the current coding.
-- UPDATE these comments to match changes to the template.
-- UPDATE the HISTORY during major changes (not typos).
--
--------------------------------------------------------------
--HISTORY:
--15Aug10 Created to get precision even if large or negative.
--15Aug10 Put NOTES comments to explain template coding.
--15Aug10 Put HISTORY comments to log major changes.
--18Aug10 Fixed to handle zero: 0 as 0, 0.000 as 3, etc.
--04Sep10 Fixed to handle decimals between 0~1 (by round 0).
--04Sep10 Updated NOTES to explain the check appending 0 or 1.
--03Jan11 Fix integer end-zeroes: 50 as -1, 500 as -2, 5000 -3.
--03Jan11 Omit {Order of Magnitude} for 2 levels less nesting.
--03Jan11 Omit {Str_len} for 8 fewer levels of 40-nest limit.
--03Jan11 Put "noinclude" around all inter-line HTML comments.
--03Jan11 Allow fraction "/": floor(ln denom/ln 10 -.01)+1.
--08Feb11 Fixed to not count minus sign on negative integers.
--08Feb11 Extended to handle integers with 14 end-zeroes "0".
--08Feb11 Ordered length-search by most-likely (rarely 1 or 2).
--10Feb11 Re-added NOTES/HISTORY to explain logic & changes.
--22Jun11 Move to Precision: no need to keep all three.
--22Jun11 No rounding up for fractions (i.e. ln denom/ln 10)
--
-->{{documentation}}</noinclude>
3gzld2n8id2y6kssvp4plp7bp51paf1
Πρότυπον:Coord/dec2dms/dms
10
3281
36463
2025-12-15T16:40:57Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#expr:{{{1}}} mod 360}}°{{pad2digit|{{#expr:{{{1}}} * 60 mod 60}}}}′{{pad2digit|{{#expr:({{{1}}} * 36000 round 0) mod 600 / 10 round 0}}}}″<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>'
36463
wikitext
text/x-wiki
{{#expr:{{{1}}} mod 360}}°{{pad2digit|{{#expr:{{{1}}} * 60 mod 60}}}}′{{pad2digit|{{#expr:({{{1}}} * 36000 round 0) mod 600 / 10 round 0}}}}″<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
esk77quevc1smcd63nrn51og4a2h7h3
Πρότυπον:Pad2digit
10
3282
36464
2025-12-15T16:41:43Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#ifeq:x{{{1}}}|x0|00|{{padleft:{{{1}}}|2|0}}}}<noinclude> [[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]] </noinclude>'
36464
wikitext
text/x-wiki
{{#ifeq:x{{{1}}}|x0|00|{{padleft:{{{1}}}|2|0}}}}<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]
</noinclude>
js11xaszulx31mqts7hydlmfb3tub4g
Πρότυπον:Coord/dec2dms/dm1
10
3283
36465
2025-12-15T16:42:33Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#expr:{{{1}}} mod 360}}°{{pad2digit|{{#expr:({{{1}}} * 600 round 0) mod 600 / 10}}}}′<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>'
36465
wikitext
text/x-wiki
{{#expr:{{{1}}} mod 360}}°{{pad2digit|{{#expr:({{{1}}} * 600 round 0) mod 600 / 10}}}}′<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
jb1dnbp6uctm9quuhoj99dp0yvtx301
Πρότυπον:Coord/dec2dms/dm
10
3284
36466
2025-12-15T16:43:15Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#expr:{{{1}}} mod 360}}°{{pad2digit|{{#expr:({{{1}}} * 600 round 0) mod 600 / 10 round 0}}}}′<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>'
36466
wikitext
text/x-wiki
{{#expr:{{{1}}} mod 360}}°{{pad2digit|{{#expr:({{{1}}} * 600 round 0) mod 600 / 10 round 0}}}}′<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
bzll6l59oc40z45mpbyizhlazvbmj24
Πρότυπον:Coord/dec2dms/d1
10
3285
36467
2025-12-15T16:43:57Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#expr:{{{1}}} round 1}}°<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>'
36467
wikitext
text/x-wiki
{{#expr:{{{1}}} round 1}}°<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
hlq3h8lmarfzuv6sj6j3t241kp5hjxw
Module:Excerpt/config
828
3286
36468
2025-12-15T16:46:01Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { -- Templates that should never be transcluded blacklist = { '.*[Ii]nfobox.*', '[Ee]xtension', '[Tt]ool', '[Ss]kin', -- infoboxes }, -- Map from image parameters to captions -- Used for extracting files out of infoboxes captions = { {'image', {'description'} }, }, -- Tracking categories (without the category namespace) categories = { content = 'Content pages with excerpts', errors = 'Content pages with broken excerpts',...'
36468
Scribunto
text/plain
return {
-- Templates that should never be transcluded
blacklist = {
'.*[Ii]nfobox.*', '[Ee]xtension', '[Tt]ool', '[Ss]kin', -- infoboxes
},
-- Map from image parameters to captions
-- Used for extracting files out of infoboxes
captions = {
{'image', {'description'} },
},
-- Tracking categories (without the category namespace)
categories = {
content = 'Content pages with excerpts',
errors = 'Content pages with broken excerpts',
--[0] = 'Articles with excerpts',
--[1] = 'Talk pages with excerpts',
},
-- Prefix for generating the hatnote
--hat = '{{#hatnote|selfref=yes|1='
-- Title of the template styles
--styles = 'Excerpt/styles.css'
}
tk4lts51jz9raaxutmdp0remcaoyyzn
Module:External links/conf
828
3287
36469
2025-12-15T16:46:49Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local messages = {} messages['el'] = { ['wikidata-linkback-edit'] = 'Edit on Wikidata', ['missing-limits'] = 'Missing limits-var in [[Module:External links/conf/$1]]', ['missing-conf'] = 'Missing content in [[Module:External links/conf/$1]]', ['msg-langcode'] = '<span class="languageicon"> ($2)</span>', -- $1 is language code, $2 is language name ['msg-ul-prepend'] = '* ', ['msg-inline-separator'] = ', ', } local arguments = { ['arg-conf']...'
36469
Scribunto
text/plain
local messages = {}
messages['el'] = {
['wikidata-linkback-edit'] = 'Edit on Wikidata',
['missing-limits'] = 'Missing limits-var in [[Module:External links/conf/$1]]',
['missing-conf'] = 'Missing content in [[Module:External links/conf/$1]]',
['msg-langcode'] = '<span class="languageicon"> ($2)</span>', -- $1 is language code, $2 is language name
['msg-ul-prepend'] = '* ',
['msg-inline-separator'] = ', ',
}
local arguments = {
['arg-conf'] = 'conf',
['arg-title'] = 'title',
['arg-properties'] = 'properties',
['arg-maxlink'] = 'maxlink',
['arg-short'] = 'short',
['arg-languages'] = 'languages',
['arg-no-categories'] = 'no categories',
['arg-inline'] = 'inline',
['arg-track'] = 'track',
['mod-filter-all'] = 'all',
['mod-filter-separator'] = ',',
}
local p = {
['g'] = function (self, ...)
for _,v in ipairs(arg) do
if self.messages[v] then
return self.messages[v]
end
end
return '<'..arg[1]..'>'
end,
['a'] = function (self, ...)
for _,v in ipairs(arg) do
if self.arguments[v] then
return self.arguments[v]
end
end
return '<'..arg[1]..'>'
end
}
-- metatable for the export
local mt = {
-- adjust the installation of the module
['__call'] = function (self, lang)
self.messages = messages[lang]
self.arguments = arguments
return self
end
}
-- install the metatable
setmetatable(p, mt)
return p
gpby6gleuy7k40yxoedy6oolsoqjltv
Module:Excerpt slideshow
828
3288
36470
2025-12-15T16:47:37Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local excerptModule = require('Module:Excerpt/portals') local slideshowModule = require('Module:Random slideshow') local randomModule = require('Module:Random') local DEFAULT_LIMIT = 25 -- max number of excerpts to be shown in the slideshow local SOURCE_PAGES_LIMIT = 10 -- max number of pages to check for links / list items -- begin BHG addition for tracking source pages local sourcepgagesused = {}; local sourcepgagesusedcounter = 0;...'
36470
Scribunto
text/plain
local p = {}
local excerptModule = require('Module:Excerpt/portals')
local slideshowModule = require('Module:Random slideshow')
local randomModule = require('Module:Random')
local DEFAULT_LIMIT = 25 -- max number of excerpts to be shown in the slideshow
local SOURCE_PAGES_LIMIT = 10 -- max number of pages to check for links / list items
-- begin BHG addition for tracking source pages
local sourcepgagesused = {};
local sourcepgagesusedcounter = 0;
local articlelistcount = -1;
local usesEmbeddedList = false;
-- end BHG addition for tracking source pages
function cleanupArgs(argsTable)
local cleanArgs = {}
for key, val in pairs(argsTable) do
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val ~= '' then
cleanArgs[key] = val
end
else
cleanArgs[key] = val
end
end
return cleanArgs
end
function isDeclined(val)
if not val then return false end
local declinedWords = " decline declined exclude excluded false none not no n off omit omitted remove removed "
return string.find(declinedWords , ' '..val..' ', 1, true ) and true or false
end
--[[
@param {String} wikitext: Wikitext of just the list (i.e. each line is a list item)
@param {String} symbol: Special character used in the wikitext markup for the list, e.g. '*' or '#'
@param {String} outerTag: Text portion of the tag for each list or sublist, e.g. 'ul' or 'ol'
@param {String} innerTag: Text portion of the tag for each list item, e.g. 'li'
]]
local wikitextToHtmlList = function(wikitext, symbol, outerTag, innerTag)
local listParts = {}
for level, item in mw.ustring.gmatch('\n'..wikitext..'\n', '\n(%'..symbol..'+)(.-)%f[\n]') do
table.insert(listParts, {level=level, item=item})
end
table.insert(listParts, {level='', item=''})
local htmlList = {}
for i, this in ipairs( listParts ) do
local isFirstItem = (i == 1)
local isLastItem = (i == #listParts)
local lastLevel = isFirstItem and '' or listParts[i-1]['level']
local tags
if #lastLevel == #this.level then
tags = '</'..innerTag..'><'..innerTag..'>'
elseif #this.level > #lastLevel then
tags = string.rep('<'..outerTag..'><'..innerTag..'>', #this.level - #lastLevel)
elseif isLastItem then
tags = string.rep('</'..innerTag..'></'..outerTag..'>', #lastLevel)
else -- ( #this.level < #lastLevel ) and not last item
tags = string.rep('</'..innerTag..'></'..outerTag..'>', #lastLevel - #this.level ) .. '</'..innerTag..'><'..innerTag..'>'
end
table.insert(htmlList, tags .. this.item)
end
return table.concat(htmlList)
end
--[[
@param {String} wikitext: Wikitext excertp containg zero or more lists
@param {String} symbol: Special character used in the wikitext markup for the list, e.g. '*' or '#'
@param {String} outerTag: Text portion of the tag for each list or sublist, e.g. 'ul' or 'ol'
@param {String} innerTag: Text portion of the tag for each list item, e.g. 'li'
]]
local gsubWikitextLists = function(wikitext, symbol, outerTag, innerTag)
-- temporarily remove list linebreaks...
wikitext = mw.ustring.gsub(wikitext..'\n', '\n%'..symbol, '¿¿¿'..symbol)
-- ...so we can grab the whole list (and just the list)...
return mw.ustring.gsub(
wikitext,
'¿¿¿%'..symbol..'[^\n]+',
function(listWikitext)
-- ...and then reinstate linebreaks...
listWikitext = mw.ustring.gsub(listWikitext, '¿¿¿%'..symbol, '\n'..symbol)
-- ...and finally do the conversion
return wikitextToHtmlList(listWikitext, symbol, outerTag, innerTag)
end
)
end
local replacePipesWithMagicword = function(t)
return mw.ustring.gsub(t, '|', '{{!}}')
end
--[[ help gsub strip tables and templates that aren't part of the prose,
and remove linebreaks from within other templates,
and preprocess parser functions ]]
local processBraces = function(t)
local isTable = mw.ustring.sub(mw.text.trim(t), 2, 2) == '|'
if isTable then
return ''
end
-- else it's a template or parser function
local first = mw.ustring.sub(t, 1, 1)
local last = mw.ustring.sub(t, -1)
local isNotPartOfProse = first == '\n' and last == '\n'
if isNotPartOfProse then
return ''
end
local isParserFunction = mw.ustring.sub(mw.text.trim(t), 3, 3) == '#'
if isParserFunction then
local frame = mw.getCurrentFrame()
return frame:preprocess(t)
end
-- else replace pipes and remove internal linebreaks
return replacePipesWithMagicword(mw.ustring.gsub(t, '\n*', ''))
end
local cleanUpExcerpt = function(excerpt)
-- strip galleries
excerpt = mw.ustring.gsub(excerpt, "<%s*[Gg]allery.->.-<%s*/%s*[Gg]allery%s*>", "")
-- strip tables and block templates; strip newlines and replace pipes within inline templates
excerpt = mw.ustring.gsub(excerpt..'\n', '\n?%b{}\n?', processBraces)
-- replace pipes within links
excerpt = mw.ustring.gsub(excerpt, '%b[]', replacePipesWithMagicword)
-- replace other pipes with html entity
excerpt = mw.ustring.gsub(excerpt, '|', '|')
-- replace wikitext bulleted lists with html bulleted lists
excerpt = gsubWikitextLists(excerpt, '*', 'ul', 'li')
-- replace wikitext numbered lists with html numbered lists
excerpt = gsubWikitextLists(excerpt, '#', 'ol', 'li')
excerpt = mw.text.trim(excerpt)
return excerpt
end
function makeGalleryArgs(titles, options, limit, nonRandom)
local galleryArgs = {}
local titlesSequence = {}
local i = 1
while titles[i] do
titlesSequence[i] = titles[i]
i = i + 1
end
local sortedTitles = nonRandom and titlesSequence or randomModule.main('array', {t=titlesSequence, limit=limit})
for _i, title in ipairs(sortedTitles) do
if (#galleryArgs / 2) < limit then
local success, excerpt = pcall(excerptModule.get, title, options)
if not success then
mw.log("require('Module:Excerpt').get failed: " .. excerpt) -- probably got a redlink
excerpt = nil
end
if excerpt and excerpt ~= '' and #excerpt > 10 then -- check again in case we had a few characters plus (Full article...)
excerpt = cleanUpExcerpt(excerpt)
if options.more then
excerpt = excerpt .. " ('''[[" .. title .. "|" .. options.more .. "]]''')"
end
local text = '<div style{{=}}text-align:left;>' .. mw.ustring.gsub(excerpt, '%c', '<br>') .. '</div>'
table.insert(galleryArgs, 'File:Blank.png')
table.insert(galleryArgs, text)
end
end
end
if nonRandom then
galleryArgs.random = 'false'
end
if #galleryArgs == 0 and options.nostubs then
-- try again, this time including stubs
options.nostubs = false
return makeGalleryArgs(titles, options, limit, nonRandom)
else
return galleryArgs
end
end
local makeOptions = function(args)
local options = args -- pick up miscellaneous options: more, errors, fileargs
options.paraflags = excerptModule.numberFlags(args.paragraphs or "") -- parse paragraphs, e.g. "1,3-5" → {"1","3-5"}
options.fileflags = excerptModule.numberFlags(args.files or "") -- parse file numbers
if args.nostubs and isDeclined(args.nostubs) then
options.nostubs = false
else
options.nostubs = true
end
return options
end
local isArticle = function(pagetitle)
local titleObject = mw.title.new(pagetitle)
return ( titleObject and titleObject.namespace == 0 ) and true or false
end
local getLinkedTitles = function(args, method, limit)
local pagenames = {}
local ii = 1
local isNotCategory
while args[ii] and ii < limit do
local pageContent = excerptModule.getContent(args[ii])
if pageContent then
local pageSection = args["section"..ii] or args["section"]
local sectionOnly = args["sectiononly"..ii] or args["sectiononly"]
local text = pageContent
if pageSection then -- check relevant section only
local success, result = pcall(excerptModule.getSection, pageContent, pageSection, sectionOnly)
if not success then
mw.log("require('Module:Excerpt').getSection failed on the content of " .. args[ii] .. ": " .. result)
result = nil
end
text = result or pageContent
end
-- begin BHG addition for tracking source pages
local thisPage = mw.title.getCurrentTitle().nsText .. ":" .. mw.title.getCurrentTitle().text
local thisBareParam = mw.ustring.gsub(args[ii], "^([^#]+).*$", "%1", 1) -- strip any section anchor from the parameter's page name
if (thisPage == thisBareParam) then
usesEmbeddedList = true;
end
-- end BHG addition for tracking source pages
-- replace annotated links with real links
text = mw.ustring.gsub(text, "{{%s*[Aa]nnotated[ _]link%s*|%s*(.-)%s*}}", "[[%1]]")
if method == "linked" then
for p in mw.ustring.gmatch(text, "%[%[%s*([^%]|\n]*)") do
if isArticle(p) then
table.insert(pagenames, p)
end
end
else
-- listitem: first wikilink on a line beginning *, :#, etc. except in "See also" or later section
text = mw.ustring.gsub(text, "\n== *See also.*", "")
for p in mw.ustring.gmatch(text, "\n:*[%*#][^\n]-%[%[%s*([^%]|\n]*)") do
if isArticle(p) then
table.insert(pagenames, p)
end
end
end
-- begin BHG addition for tracking source pages
if ((method == "listitem") or (method == "linked")) then
table.insert(sourcepgagesused, args[ii])
sourcepgagesusedcounter = sourcepgagesusedcounter + 1
end
-- end BHG addition for tracking source pages
end
ii = ii + 1
end
-- begin BHG addition for tracking
articlelistcount = #pagenames
-- end BHG addition for tracking
return pagenames
end
-- Template entry points:
-- randomExcerpt: Titles specified in template parameters (equivalent to {{Transclude random excerpt}})
p.randomExcerpt = function(frame)
local parent = frame.getParent(frame)
local output = p._excerpt(parent.args, 'random')
return frame:preprocess(output)
end
-- linkedExcerpt: Titles from links on one or more pages (similar to {{Transclude linked excerpt}})
p.linkedExcerpt = function(frame)
local parent = frame.getParent(frame)
local output = p._excerpt(parent.args, 'linked')
return frame:preprocess(output)
end
-- listItemExcerpt: Titles from linked list items one one or more pages (similar to {{Transclude list item excerpt}})
p.listItemExcerpt = function(frame)
local parent = frame.getParent(frame)
local output = p._excerpt(parent.args, 'listitem')
return frame:preprocess(output)
end
-- Module entry point:
p._excerpt = function(_args, method)
local args = cleanupArgs(_args)
args.more = excerptModule.getMoreLinkText(_args.more)
local options = makeOptions(args)
local limit = args.limit and tonumber(args.limit) or DEFAULT_LIMIT
local titles
if method == 'linked' or method == 'listitem' then
titles = getLinkedTitles(args, method, SOURCE_PAGES_LIMIT)
else
titles = args
end
local galleryArgs = makeGalleryArgs(titles, options, limit, isDeclined(_args.random))
return slideshowModule._main(galleryArgs, false, 'excerptSlideshow-container') .. checksourcepages()
end
p._cleanUpExcerpt = cleanUpExcerpt
-- begin BHG addition for tracking source pages
function checksourcepages()
-- no tracking unless we are in Portal namespace
if (mw.title.getCurrentTitle().nsText ~= "Portal") then
return ""
end
local pagecounter = 0;
local templatecount = 0;
local outlinecount = 0;
local retval ="";
local usesEponymousArticle = false;
local debugging = false;
local thisPageBareName = mw.title.getCurrentTitle().text;
if debugging then
retval = '<div style="display:block; border:10px solid green; background-color:#efe; padding:1em; margin:1em">\n----\n'
retval = retval .. "sourcepgagesusedcounter: " .. sourcepgagesusedcounter .. "\n----\n"
retval = retval .. "pages used:"
end
local apage
for apage in arrayvalues(sourcepgagesused) do
if debugging then
retval = retval .. "\n# [[:" .. apage .. "]]"
retval = retval .. " — " .. "First 999 = /" .. string.sub(apage, 1, 999) .. "/"
end
if (string.find(apage, "^[tT]emplate ?:") == 1) then
templatecount = templatecount + 1;
end
if (string.find(apage, "^[oO]utline +of ") == 1) then
outlinecount = outlinecount + 1;
end
if (apage == thisPageBareName) then
usesEponymousArticle = true;
end
pagecounter = pagecounter + 1
end
if debugging then
retval = retval .. "\nTotal pages: " .. pagecounter
retval = retval .. "\ntemplatecount: " .. templatecount
retval = retval .. "</div>"
end
-- first do a sanity check that both counting methods have produced the same result
if (sourcepgagesusedcounter == pagecounter) then
-- if all pages are templates, then populate tracking categories
if (pagecounter == templatecount) then
if (templatecount == 1) then
retval = retval .. "[[Category:Automated article-slideshow portals with article list built solely from one template]]"
elseif (templatecount == 2) then
retval = retval .. "[[Category:Automated article-slideshow portals with article list built solely from two templates]]"
elseif (templatecount == 3) then
retval = retval .. "[[Category:Automated article-slideshow portals with article list built solely from three templates]]"
elseif (templatecount > 3) then
retval = retval .. "[[Category:Automated article-slideshow portals with article list built solely from four or more templates]]"
end
elseif (templatecount > 0) then
retval = retval .. "[[Category:Automated article-slideshow portals with article list built using one or more templates, and other sources]]"
end
end
if (outlinecount >= 1) then
retval = retval .. "[[Category:Automated article-slideshow portals with article list built using one or more outline pages]]"
end
if (articlelistcount < 2) then
retval = retval .. "[[Category:Automated article-slideshow portals with less than 2 articles in article list]]"
elseif (articlelistcount <= 5) then
retval = retval .. "[[Category:Automated article-slideshow portals with 2–5 articles in article list]]"
elseif (articlelistcount <= 10) then
retval = retval .. "[[Category:Automated article-slideshow portals with 6–10 articles in article list]]"
elseif (articlelistcount <= 15) then
retval = retval .. "[[Category:Automated article-slideshow portals with 11–15 articles in article list]]"
elseif (articlelistcount <= 20) then
retval = retval .. "[[Category:Automated article-slideshow portals with 16–20 articles in article list]]"
elseif (articlelistcount <= 25) then
retval = retval .. "[[Category:Automated article-slideshow portals with 21–25 articles in article list]]"
elseif (articlelistcount <= 30) then
retval = retval .. "[[Category:Automated article-slideshow portals with 26–30 articles in article list]]"
elseif (articlelistcount <= 40) then
retval = retval .. "[[Category:Automated article-slideshow portals with 31–40 articles in article list]]"
elseif (articlelistcount <= 50) then
retval = retval .. "[[Category:Automated article-slideshow portals with 41–50 articles in article list]]"
elseif (articlelistcount <= 100) then
retval = retval .. "[[Category:Automated article-slideshow portals with 51–100 articles in article list]]"
elseif (articlelistcount <= 200) then
retval = retval .. "[[Category:Automated article-slideshow portals with 101–200 articles in article list]]"
elseif (articlelistcount <= 500) then
retval = retval .. "[[Category:Automated article-slideshow portals with 201–500 articles in article list]]"
elseif (articlelistcount <= 1000) then
retval = retval .. "[[Category:Automated article-slideshow portals with 501–1000 articles in article list]]"
elseif (articlelistcount > 1000) then
retval = retval .. "[[Category:Automated article-slideshow portals with over 1000 articles in article list]]"
end
if usesEmbeddedList then
retval = retval .. "[[Category:Automated article-slideshow portals with embedded list]]"
end
if usesEponymousArticle then
retval = retval .. "[[Category:Automated article-slideshow portals with article list built using eponymous article]]"
end
return retval
end
function arrayvalues(t)
local i = 0
return function() i = i + 1; return t[i] end
end
-- end BHG addition for tracking source pages
return p
scvpsmshg1xrjwx65oylfz8o5pxtjw9
Module:Random
828
3289
36471
2025-12-15T16:55:16Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module contains a number of functions that make use of random numbers. local cfg = {} -------------------------------------------------------------------------------------- -- Configuration -------------------------------------------------------------------------------------- -- Set this to true if your wiki has a traffic rate of less than one edit every two minutes or so. -- This will prevent the same "random" number being generated man...'
36471
Scribunto
text/plain
-- This module contains a number of functions that make use of random numbers.
local cfg = {}
--------------------------------------------------------------------------------------
-- Configuration
--------------------------------------------------------------------------------------
-- Set this to true if your wiki has a traffic rate of less than one edit every two minutes or so.
-- This will prevent the same "random" number being generated many times in a row until a new edit is made
-- to the wiki. This setting is only relevant if the |same= parameter is set.
cfg.lowTraffic = false
-- If cfg.lowTraffic is set to true, and the |same= parameter is set, this value is used for the refresh rate of the random seed.
-- This is the number of seconds until the seed is changed. Getting this right is tricky. If you set it too high, the same number
-- will be returned many times in a row. If you set it too low, you may get different random numbers appearing on the same page,
-- particularly for pages that take many seconds to process.
cfg.seedRefreshRate = 60
--------------------------------------------------------------------------------------
-- End configuration
--------------------------------------------------------------------------------------
local p = {} -- For functions available from other Lua modules.
local l = {} -- For functions not available from other Lua modules, but that need to be accessed using table keys.
local yesno = require('Module:Yesno')
local makeList = require('Module:List').makeList
--------------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------------
local function raiseError(msg)
-- This helps to generate a wikitext error. It is the calling function's responsibility as to how to include it in the output.
return mw.ustring.format('<b class="error">[[Module:Random]] error: %s.</b>', msg)
end
--------------------------------------------------------------------------------------
-- random number function
--------------------------------------------------------------------------------------
local function getBigRandom(l, u)
-- Gets a random integer between l and u, and is not limited to RAND_MAX.
local r = 0
local n = 2^math.random(30) -- Any power of 2.
local limit = math.ceil(53 / (math.log(n) / math.log(2)))
for i = 1, limit do
r = r + math.random(0, n - 1) / (n^i)
end
return math.floor(r * (u - l + 1)) + l
end
function l.number(args)
-- Gets a random number.
first = tonumber(args[1])
second = tonumber(args[2])
-- This needs to use if statements as math.random won't accept explicit nil values as arguments.
if first then
if second then
if first > second then -- Second number cannot be less than the first, or it causes an error.
first, second = second, first
end
return getBigRandom(first, second)
else
return getBigRandom(1, first)
end
else
return math.random()
end
end
--------------------------------------------------------------------------------------
-- Date function
--------------------------------------------------------------------------------------
function l.date(args)
-- This function gets random dates, and takes timestamps as positional arguments.
-- With no arguments specified, it outputs a random date in the current year.
-- With two arguments specified, it outputs a random date between the timestamps.
-- With one argument specified, the date is a random date between the unix epoch (1 Jan 1970) and the timestamp.
-- The output can be formatted using the "format" argument, which works in the same way as the #time parser function.
-- The default format is the standard Wikipedia timestamp.
local lang = mw.language.getContentLanguage()
local function getDate(format, ts)
local success, date = pcall(lang.formatDate, lang, format, ts)
if success then
return date
end
end
local function getUnixTimestamp(ts)
local unixts = getDate('U', ts)
if unixts then
return tonumber(unixts)
end
end
local t1 = args[1]
local t2 = args[2]
-- Find the start timestamp and the end timestamp.
local startTimestamp, endTimestamp
if not t1 then
-- Find the first and last second in the current year.
local currentYear = tonumber(getDate('Y'))
local currentYearStartUnix = tonumber(getUnixTimestamp('1 Jan ' .. tostring(currentYear)))
local currentYearEndUnix = tonumber(getUnixTimestamp('1 Jan ' .. tostring(currentYear + 1))) - 1
startTimestamp = '@' .. tostring(currentYearStartUnix) -- @ is used to denote Unix timestamps with lang:formatDate.
endTimestamp = '@' .. tostring(currentYearEndUnix)
elseif t1 and not t2 then
startTimestamp = '@0' -- the Unix epoch, 1 January 1970
endTimestamp = t1
elseif t1 and t2 then
startTimestamp = t1
endTimestamp = t2
end
-- Get Unix timestamps and return errors for bad input (or for bugs in the underlying PHP library, of which there are unfortunately a few)
local startTimestampUnix = getUnixTimestamp(startTimestamp)
local endTimestampUnix = getUnixTimestamp(endTimestamp)
if not startTimestampUnix then
return raiseError('"' .. tostring(startTimestamp) .. '" was not recognised as a valid timestamp')
elseif not endTimestampUnix then
return raiseError('"' .. tostring(endTimestamp) .. '" was not recognised as a valid timestamp')
elseif startTimestampUnix > endTimestampUnix then
return raiseError('the start date must not be later than the end date (start date: "' .. startTimestamp .. '", end date: "' .. endTimestamp .. '")')
end
-- Get a random number between the two Unix timestamps and return it using the specified format.
local randomTimestamp = getBigRandom(startTimestampUnix, endTimestampUnix)
local dateFormat = args.format or 'H:i, d F Y (T)'
local result = getDate(dateFormat, '@' .. tostring(randomTimestamp))
if result then
return result
else
return raiseError('"' .. dateFormat .. '" is not a valid date format')
end
end
--------------------------------------------------------------------------------------
-- List functions
--------------------------------------------------------------------------------------
local function randomizeArray(t, limit)
-- Randomizes an array. It works by iterating through the list backwards, each time swapping the entry
-- "i" with a random entry. Courtesy of Xinhuan at http://forums.wowace.com/showthread.php?p=279756
-- If the limit parameter is set, the array is shortened to that many elements after being randomized.
-- The lowest possible value is 0, and the highest possible is the length of the array.
local len = #t
for i = len, 2, -1 do
local r = math.random(i)
t[i], t[r] = t[r], t[i]
end
if limit and limit < len then
local ret = {}
for i, v in ipairs(t) do
if i > limit then
break
end
ret[i] = v
end
return ret
else
return t
end
end
local function removeBlanks(t)
-- Removes blank entries from an array so that it can be used with ipairs.
local ret = {}
for k, v in pairs(t) do
if type(k) == 'number' then
table.insert(ret, k)
end
end
table.sort(ret)
for i, v in ipairs(ret) do
ret[i] = t[v]
end
return ret
end
local function makeSeparator(sep)
if sep == 'space' then
-- Include an easy way to use spaces as separators.
return ' '
elseif type(sep) == 'string' then
-- If the separator is a recognised MediaWiki separator, use that. Otherwise use the value of sep if it is a string.
local mwseparators = {'dot', 'pipe', 'comma', 'tpt-languages'}
for _, mwsep in ipairs(mwseparators) do
if sep == mwsep then
return mw.message.new( sep .. '-separator' ):plain()
end
end
return sep
end
end
local function makeRandomList(args)
local list = removeBlanks(args)
list = randomizeArray(list, tonumber(args.limit))
return list
end
function l.item(args)
-- Returns a random item from a numbered list.
local list = removeBlanks(args)
local len = #list
if len >= 1 then
return list[math.random(len)]
end
end
function l.list(args)
-- Randomizes a list and concatenates the result with a separator.
local list = makeRandomList(args)
local sep = makeSeparator(args.sep or args.separator)
return table.concat(list, sep)
end
function l.text_list(args)
-- Randomizes a list and concatenates the result, text-style. Accepts separator and conjunction arguments.
local list = makeRandomList(args)
local sep = makeSeparator(args.sep or args.separator)
local conj = makeSeparator(args.conj or args.conjunction)
return mw.text.listToText(list, sep, conj)
end
function l.array(args)
-- Returns a Lua array, randomized. For use from other Lua modules.
return randomizeArray(args.t, args.limit)
end
--------------------------------------------------------------------------------------
-- HTML list function
--------------------------------------------------------------------------------------
function l.html_list(args, listType)
-- Randomizes a list and turns it into an HTML list. Uses [[Module:List]].
listType = listType or 'bulleted'
local listArgs = makeRandomList(args) -- Arguments for [[Module:List]].
for k, v in pairs(args) do
if type(k) == 'string' then
listArgs[k] = v
end
end
return makeList(listType, listArgs)
end
--------------------------------------------------------------------------------------
-- The main function. Called from other Lua modules.
--------------------------------------------------------------------------------------
function p.main(funcName, args, listType)
-- Sets the seed for the random number generator and passes control over to the other functions.
local same = yesno(args.same)
if not same then
-- Generates a different number every time the module is called, even from the same page.
-- This is because of the variability of os.clock (the time in seconds that the Lua script has been running for).
math.randomseed(mw.site.stats.edits + mw.site.stats.pages + os.time() + math.floor(os.clock() * 1000000000))
else
if not cfg.lowTraffic then
-- Make the seed as random as possible without using anything time-based. This means that the same random number
-- will be generated for the same input from the same page - necessary behaviour for some wikicode templates that
-- assume bad pseudo-random-number generation.
local stats = mw.site.stats
local views = stats.views or 0 -- This is not always available, so we need a backup.
local seed = views + stats.pages + stats.articles + stats.files + stats.edits + stats.users + stats.activeUsers + stats.admins -- Make this as random as possible without using os.time() or os.clock()
math.randomseed(seed)
else
-- Make the random seed change every n seconds, where n is set by cfg.seedRefreshRate.
-- This is useful for low-traffic wikis where new edits may not happen very often.
math.randomseed(math.floor(os.time() / cfg.seedRefreshRate))
end
end
if type(args) ~= 'table' then
error('the second argument to p.main must be a table')
end
return l[funcName](args, listType)
end
--------------------------------------------------------------------------------------
-- Process arguments from #invoke
--------------------------------------------------------------------------------------
local function makeWrapper(funcName, listType)
-- This function provides a wrapper for argument-processing from #invoke.
-- listType is only used with p.html_list, and is nil the rest of the time.
return function (frame)
-- If called via #invoke, use the args passed into the invoking template, or the args passed to #invoke if any exist.
-- Otherwise assume args are being passed directly in from the debug console or from another Lua module.
local origArgs
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
for k, v in pairs(frame.args) do
origArgs = frame.args
break
end
else
origArgs = frame
end
-- Trim whitespace and remove blank arguments.
local args = {}
for k, v in pairs(origArgs) do
if type(v) == 'string' then
v = mw.text.trim(v)
end
if v ~= '' then
args[k] = v
end
end
return p.main(funcName, args, listType)
end
end
-- Process arguments for HTML list functions.
local htmlListFuncs = {
bulleted_list = 'bulleted',
unbulleted_list = 'unbulleted',
horizontal_list = 'horizontal',
ordered_list = 'ordered',
horizontal_ordered_list = 'horizontal_ordered'
}
for funcName, listType in pairs(htmlListFuncs) do
p[funcName] = makeWrapper('html_list', listType)
end
-- Process arguments for other functions.
local otherFuncs = {'number', 'date', 'item', 'list', 'text_list'}
for _, funcName in ipairs(otherFuncs) do
p[funcName] = makeWrapper(funcName)
end
return p
9wawjlpw2a7nh4ivul70s73ic8x4q0j
Module:Excerpt/portals
828
3290
36472
2025-12-15T16:56:07Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- ATTENTION ! -- This module is deprecated -- Prefer Module:Excerpt whenever possible -- Name of the category to track content pages with errors local errorCategory = "Articles with broken excerpts" -- Error messages local errorMessages = { prefix = "Excerpt error: ", noPage = "No page given", pageNotFound = "Page '%s' not found", leadEmpty = "Lead section is empty", sectionEmpty = "Section '%s' is empty", sectionNotFound = "Section '%s' n...'
36472
Scribunto
text/plain
-- ATTENTION !
-- This module is deprecated
-- Prefer Module:Excerpt whenever possible
-- Name of the category to track content pages with errors
local errorCategory = "Articles with broken excerpts"
-- Error messages
local errorMessages = {
prefix = "Excerpt error: ",
noPage = "No page given",
pageNotFound = "Page '%s' not found",
leadEmpty = "Lead section is empty",
sectionEmpty = "Section '%s' is empty",
sectionNotFound = "Section '%s' not found",
fragmentEmpty = "Fragment '%s' is empty",
fragmentNotFound = "Fragment '%s' not found"
}
-- Regular expressions to match all aliases of the file namespace
local fileNamespaces = {
"[Ff]ile",
"[Ii]mage"
}
-- Regular expressions to match all image parameters
local imageParams = {
{"thumb", "thumbnail", "frame", "framed", "frameless"},
{"right", "left", "center", "none"},
{"baseline", "middle", "sub", "super", "text-top", "text-bottom", "top", "bottom"}
}
-- Regular expressions to match all infobox parameters for image captions
local captionParams = {
"[^=|]*[Cc]aption[^=|]*",
"[^=|]*[Ll]egend[^=|]*"
}
-- Regular expressions to match all inline templates that are undesirable in excerpts
local unwantedInlineTemplates = {
"[Ee]fn", "[Ee]fn%-[lu][arg]", "[Ee]l[mn]", "[Rr]p?", "[Ss]fn[bmp]", "[Ss]f[bn]", "[Nn]ote[Tt]ag", "#[Tt]ag:%s*[Rr]ef", "[Rr]efn?",
"[CcDd]n", "[Cc]itation[%- _]needed", "[Dd]isambiguation needed", "[Ff]eatured article", "[Gg]ood article",
"[Dd]ISPLAYTITLE", "[Ss]hort[ _]+description", "[Cc]itation", "[Cc]ite[%- _]+[%w_%s]-", "[Cc]oor[%w_%s]-",
"[Uu]?n?[Rr]eliable source[%?%w_%s]-", "[Rr]s%??", "[Vv]c", "[Vv]erify credibility", "[Bb]y[ _]*[Ww]ho[m]*%??", "[Ww]ikisource[ -_]*multi", "[Ii]nflation[ _/-]*[Ff]n",
"[Bb]iblesource",
-- aliases for Clarification needed
"[Cc]f[ny]", "[Cc]larification[ _]+inline", "[Cc]larification[%- _]*needed", "[Cc]larification", "[Cc]larify%-inline", "[Cc]larify%-?me",
"[Cc]larify[ _]+inline", "[Cc]larify", "[Cc]LARIFY", "[Cc]onfusing%-inline", "[Cc]onfusing%-short", "[Ee]xplainme", "[Hh]uh[ _]*%??", "[Ww]hat%?",
"[Ii]nline[ _]+[Uu]nclear", "[Ii]n[ _]+what[ _]+sense", "[Oo]bscure", "[Pp]lease[ _]+clarify", "[Uu]nclear[ _]+inline", "[Ww]hat's[ _]+this%?",
"[Gg]eoQuelle", "[Nn]eed[s]+[%- _]+[Ii][Pp][Aa]", "[Ii]PA needed",
-- aliases for Clarification needed lead
"[Cc]itation needed %(?lea?de?%)?", "[Cc]nl", "[Ff]act %(?lea?de?%)?", "[Ll]ead citation needed", "[Nn]ot in body", "[Nn]ot verified in body",
-- Primary source etc.
"[Pp]s[ci]", "[Nn]psn", "[Nn]on%-primary[ _]+source[ _]+needed", "[Ss]elf%-published[%w_%s]-", "[Uu]ser%-generated[%w_%s]-",
"[Pp]rimary source[%w_%s]-", "[Ss]econdary source[%w_%s]-", "[Tt]ertiary source[%w_%s]-", "[Tt]hird%-party[%w_%s]-",
-- aliases for Disambiguation (page) and similar
"[Bb]egriffsklärung", "[Dd][Aa][Bb]", "[Dd]big", "[%w_%s]-%f[%w][Dd]isam[%w_%s]-", "[Hh][Nn][Dd][Ii][Ss]",
-- aliases for Failed verification
"[Bb]adref", "[Ff]aile?[ds] ?[rv][%w_%s]-", "[Ff][Vv]", "[Nn][Ii]?[Cc][Gg]", "[Nn]ot ?in ?[crs][%w_%s]-", "[Nn]ot specifically in source",
"[Vv]erification[%- _]failed",
-- aliases for When
"[Aa]s[ _]+of[ _]+when%??", "[Aa]s[ _%-]+of%??", "[Cc]larify date", "[Dd]ate[ _]*needed", "[Nn]eeds?[ _]+date", "[Rr]ecently", "[Ss]ince[ _]+when%??",
"[Ww]HEN", "[Ww]hen%??",
-- aliases for Update
"[Nn]ot[ _]*up[ _]*to[ _]*date","[Oo]u?[Tt][Dd]","[Oo]ut[%- _]*o?f?[%- _]*dated?", "[Uu]pdate", "[Uu]pdate[ _]+sect", "[Uu]pdate[ _]+Watch",
-- aliases for Pronunciation needed
"[Pp]ronunciation%??[%- _]*n?e?e?d?e?d?", "[Pp]ronounce", "[Rr]equested[%- _]*pronunciation", "[Rr]e?q?pron", "[Nn]eeds[%- _]*pronunciation",
-- Chart, including Chart/start etc.
"[Cc]hart", "[Cc]hart/[%w_%s]-",
-- Cref and others
"[Cc]ref2?", "[Cc]note",
-- Explain and others
"[Ee]xplain", "[Ff]urther[ ]*explanation[ ]*needed", "[Ee]laboration[ ]*needed", "[Ee]xplanation[ ]*needed",
-- TOC templates
"[Cc][Oo][Mm][Pp][Aa][Cc][Tt][ _]*[Tt][Oo][Cc][8]*[5]*", "[Tt][Oo][Cc]", "09[Aa][Zz]", "[Tt][Oo][Cc][ ]*[Cc][Oo][Mm][Pp][Aa][Cc][Tt]", "[Tt][Oo][Cc][ ]*[Ss][Mm][Aa][Ll][Ll]", "[Cc][Oo][Mm][Pp][Aa][Cc][Tt][ _]*[Aa][Ll][Pp][Hh][Aa][Bb][Ee][Tt][Ii][Cc][ _]*[Tt][Oo][Cc]",
"DEFAULTSORT:.-",
"[Oo]ne[ _]+source"
}
-- Regular expressions to match all block templates that are desirable in excerpts
local wantedBlockTemplates = {
"[Bb]asketball[ _]roster[ _]header",
"[Cc]abinet[ _]table[^|}]*",
"[Cc]hart[^|}]*",
"[Cc]lear",
"[Cc]ol[^|}]*", -- all column templates
"COVID-19[ _]pandemic[ _]data[^|}]*",
"[Cc]ycling[ _]squad[^|}]*",
"[Dd]ynamic[ _]list",
"[Ee]lection[ _]box[^|}]*",
"[Gg]allery",
"[Gg]raph[^|}]*",
"[Hh]idden",
"[Hh]istorical[ _]populations",
"[Ll]egend[ _]inline",
"[Pp]lainlist",
"[Pp]layer[^|}]*",
"[Ss]eries[ _]overview",
"[Ss]ide[ _]box",
"[Ss]witcher",
"[Tt]ree[ _]chart[^|}]*",
"[Tt]elevision[ _]ratings[ _]graph"
}
local yesno = require('Module:Yesno')
local p = {}
-- Helper function to test for truthy and falsy values
local function is(value)
if not value or value == "" or value == "0" or value == "false" or value == "no" then
return false
end
return true
end
-- Error handling function
-- Throws a Lua error or returns an empty string if error reporting is disabled
errors = true -- show errors by default
local function luaError(message, value)
if not is(errors) then return '' end -- error reporting is disabled
message = errorMessages[message] or message or ''
message = mw.ustring.format(message, value)
error(message, 2)
end
-- Error handling function
-- Returns a wiki friendly error or an empty string if error reporting is disabled
local function wikiError(message, value)
if not is(errors) then return '' end -- error reporting is disabled
message = errorMessages[message] or message or ''
message = mw.ustring.format(message, value)
message = errorMessages.prefix .. message
if mw.title.getCurrentTitle().isContentPage then
local errorCategory = mw.title.new(errorCategory, 'Category')
if errorCategory then message = message .. '[[' .. errorCategory.prefixedText .. ']]' end
end
message = mw.html.create('div'):addClass('error'):wikitext(message)
return message
end
-- Helper function to match from a list regular expressions
-- Like so: match pre..list[1]..post or pre..list[2]..post or ...
local function matchAny(text, pre, list, post, init)
local match = {}
for i = 1, #list do
match = { mw.ustring.match(text, pre .. list[i] .. post, init) }
if match[1] then return unpack(match) end
end
return nil
end
-- Helper function to convert imagemaps into standard images
local function convertImageMap(imagemap)
local image = matchAny(imagemap, "[>\n]%s*", fileNamespaces, "[^\n]*")
if image then
return "<!--imagemap-->[[" .. mw.ustring.gsub(image, "[>\n]%s*", "", 1) .. "]]"
else
return "" -- remove entire block if image can't be extracted
end
end
-- Helper function to convert a comma-separated list of numbers or min-max ranges into a list of booleans
-- For example: "1,3-5" to {1=true,2=false,3=true,4=true,5=true}
local function numberFlags(str)
if not str then return {} end
local flags = {}
local ranges = mw.text.split(str, ",") -- parse ranges: "1,3-5" to {"1","3-5"}
for _, r in pairs(ranges) do
local min, max = mw.ustring.match(r, "^%s*(%d+)%s*%-%s*(%d+)%s*$") -- "3-5" to min=3 max=5
if not max then min, max = mw.ustring.match(r, "^%s*((%d+))%s*$") end -- "1" to min=1 max=1
if max then
for p = min, max do flags[p] = true end
end
end
return flags
end
-- Helper function to convert template arguments into an array of arguments fit for get()
local function parseArgs(frame)
local args = {}
for key, value in pairs(frame:getParent().args) do args[key] = value end
for key, value in pairs(frame.args) do args[key] = value end -- args from a Lua call have priority over parent args from template
args.paraflags = numberFlags(args["paragraphs"] or "") -- parse paragraphs: "1,3-5" to {"1","3-5"}
args.fileflags = numberFlags(args["files"] or "") -- parse file numbers
return args
end
-- Helper function to remove unwanted templates and pseudo-templates such as #tag:ref and DEFAULTSORT
local function stripTemplate(t)
-- If template is unwanted then return "" (gsub will replace by nothing), else return nil (gsub will keep existing string)
if matchAny(t, "^{{%s*", unwantedInlineTemplates, "%s*%f[|}]") then return "" end
-- If template is wanted but produces an unwanted reference then return the string with |shortref or |ref removed
local noRef = mw.ustring.gsub(t, "|%s*shortref%s*%f[|}]", "")
noRef = mw.ustring.gsub(noRef, "|%s*ref%s*%f[|}]", "")
-- If a wanted template has unwanted nested templates, purge them too
noRef = mw.ustring.sub(noRef, 1, 2) .. mw.ustring.gsub(mw.ustring.sub(noRef, 3), "%b{}", stripTemplate)
-- Replace {{audio}} by its text parameter: {{Audio|Foo.ogg|Bar}} → Bar
noRef = mw.ustring.gsub(noRef, "^{{%s*[Aa]udio.-|.-|(.-)%f[|}].*", "%1")
-- Replace {{Nihongo foot}} by its text parameter: {{Nihongo foot|English|英語|eigo}} → English
noRef = mw.ustring.gsub(noRef, "^{{%s*[Nn]ihongo[ _]+foot%s*|(.-)%f[|}].*", "%1")
if noRef ~= t then return noRef end
return nil -- not an unwanted template: keep
end
-- Get a page's content, following redirects
-- Also returns the page name, or the target page name if a redirect was followed, or false if no page found
-- For file pages, returns the content of the file description page
local function getContent(page)
local title = mw.title.new(page)
if not title then return false, false end
local target = title.redirectTarget
if target then title = target end
return title:getContent(), title.prefixedText
end
-- Get the tables only
local function getTables(text, options)
local tables = {}
for candidate in mw.ustring.gmatch(text, "%b{}") do
if mw.ustring.sub(candidate, 1, 2) == '{|' then
table.insert(tables, candidate)
end
end
return table.concat(tables, '\n')
end
-- Get the lists only
local function getLists(text, options)
local lists = {}
for list in mw.ustring.gmatch(text, "\n[*#][^\n]+") do
table.insert(lists, list)
end
return table.concat(lists, '\n')
end
-- Check image for suitability
local function checkImage(image)
local page = matchAny(image, "", fileNamespaces, "%s*:[^|%]]*") -- match File:(name) or Image:(name)
if not page then return false end
-- Limit to image types: .gif, .jpg, .jpeg, .png, .svg, .tiff, .xcf (exclude .ogg, audio, etc.)
local fileTypes = {"[Gg][Ii][Ff]", "[Jj][Pp][Ee]?[Gg]", "[Pp][Nn][Gg]", "[Ss][Vv][Gg]", "[Tt][Ii][Ff][Ff]", "[Xx][Cc][Ff]"}
if not matchAny(page, "%.", fileTypes, "%s*$") then return false end
-- Check the local wiki
local fileDescription, fileTitle = getContent(page) -- get file description and title after following any redirect
if not fileTitle or fileTitle == "" then return false end -- the image doesn't exist
-- Check Commons
if not fileDescription or fileDescription == "" then
local frame = mw.getCurrentFrame()
fileDescription = frame:preprocess("{{" .. fileTitle .. "}}")
end
-- Filter non-free images
if not fileDescription or fileDescription == "" or mw.ustring.match(fileDescription, "[Nn]on%-free") then return false end
return true
end
-- Attempt to parse [[File:...]] or [[Image:...]], either anywhere (start=false) or at the start only (start=true)
local function parseImage(text, start)
local startre = ""
if start then startre = "^" end -- a true flag restricts search to start of string
local image = matchAny(text, startre .. "%[%[%s*", fileNamespaces, "%s*:.*") -- [[File: or [[Image: ...
if image then
image = mw.ustring.match(image, "%b[]%s*") -- matching [[...]] to handle wikilinks nested in caption
end
return image
end
-- Parse a caption, which ends at a | (end of parameter) or } (end of infobox) but may contain nested [..] and {..}
local function parseCaption(caption)
if not caption then return nil end
local length = mw.ustring.len(caption)
local position = 1
while position <= length do
local linkStart, linkEnd = mw.ustring.find(caption, "%b[]", position)
linkStart = linkStart or length + 1 -- avoid comparison with nil when no link
local templateStart, templateEnd = mw.ustring.find(caption, "%b{}", position)
templateStart = templateStart or length + 1 -- avoid comparison with nil when no template
local argEnd = mw.ustring.find(caption, "[|}]", position) or length + 1
if linkStart < templateStart and linkStart < argEnd then
position = linkEnd + 1 -- skip wikilink
elseif templateStart < argEnd then
position = templateEnd + 1 -- skip template
else -- argument ends before the next wikilink or template
return mw.ustring.sub(caption, 1, argEnd - 1)
end
end
return caption -- No terminator found: return entire caption
end
-- Attempt to construct a [[File:...]] block from {{infobox ... |image= ...}}
local function argImage(text)
local token = nil
local hasNamedArgs = mw.ustring.find(text, "|") and mw.ustring.find(text, "=")
if not hasNamedArgs then return nil end -- filter out any template that obviously doesn't contain an image
-- ensure image map is captured
text = mw.ustring.gsub(text, '<!%-%-imagemap%-%->', '|imagemap=')
-- find all images
local hasImages = false
local images = {}
local captureFrom = 1
while captureFrom < mw.ustring.len(text) do
local argname, position, image = mw.ustring.match(text, "|%s*([^=|]-[Ii][Mm][Aa][Gg][Ee][^=|]-)%s*=%s*()(.*)", captureFrom)
if image then -- ImageCaption=, image_size=, image_upright=, etc. do not introduce an image
local lcArgName = mw.ustring.lower(argname)
if mw.ustring.find(lcArgName, "caption")
or mw.ustring.find(lcArgName, "size")
or mw.ustring.find(lcArgName, "upright") then
image = nil
end
end
if image then
hasImages = true
images[position] = image
captureFrom = position
else
captureFrom = mw.ustring.len(text)
end
end
captureFrom = 1
while captureFrom < mw.ustring.len(text) do
local position, image = mw.ustring.match(text, "|%s*[^=|]-[Pp][Hh][Oo][Tt][Oo][^=|]-%s*=%s*()(.*)", captureFrom)
if image then
hasImages = true
images[position] = image
captureFrom = position
else
captureFrom = mw.ustring.len(text)
end
end
captureFrom = 1
while captureFrom < mw.ustring.len(text) do
local position, image = mw.ustring.match(text, "|%s*[^=|{}]-%s*=%s*()%[?%[?([^|{}]*%.%a%a%a%a?)%s*%f[|}]", captureFrom)
if image then
hasImages = true
if not images[position] then
images[position] = image
end
captureFrom = position
else
captureFrom = mw.ustring.len(text)
end
end
if not hasImages then return nil end
-- find all captions
local captions = {}
captureFrom = 1
while captureFrom < mw.ustring.len(text) do
local position, caption = matchAny(text, "|%s*", captionParams, "%s*=%s*()([^\n]+)", captureFrom)
if caption then
-- extend caption to parse "| caption = Foo {{Template\n on\n multiple lines}} Bar\n"
local bracedCaption = mw.ustring.match(text, "^[^\n]-%b{}[^\n]+", position)
if bracedCaption and bracedCaption ~= "" then caption = bracedCaption end
caption = mw.text.trim(caption)
local captionStart = mw.ustring.sub(caption, 1, 1)
if captionStart == '|' or captionStart == '}' then caption = nil end
end
if caption then
-- find nearest image, and use same index for captions table
local i = position
while i > 0 and not images[i] do
i = i - 1
if images[i] then
if not captions[i] then
captions[i] = parseCaption(caption)
end
end
end
captureFrom = position
else
captureFrom = mw.ustring.len(text)
end
end
-- find all alt text
local altTexts = {}
for position, altText in mw.ustring.gmatch(text, "|%s*[Aa][Ll][Tt]%s*=%s*()([^\n]*)") do
if altText then
-- altText is terminated by }} or |, but first skip any matched [[...]] and {{...}}
local lookFrom = math.max( -- find position after whichever comes last: start of string, end of last ]] or end of last }}
mw.ustring.match(altText, ".*{%b{}}()") or 1, -- if multiple {{...}}, .* consumes all but one, leaving the last for %b
mw.ustring.match(altText, ".*%[%b[]%]()") or 1)
local length = mw.ustring.len(altText)
local afterText = math.min( -- find position after whichever comes first: end of string, }} or |
mw.ustring.match(altText, "()}}", lookFrom) or length+1,
mw.ustring.match(altText, "()|", lookFrom) or length+1)
altText = mw.ustring.sub(altText, 1, afterText-1) -- chop off |... or }}... which is not part of [[...]] or {{...}}
altText = mw.text.trim(altText)
local altTextStart = mw.ustring.sub(altText, 1, 1)
if altTextStart == '|' or altTextStart == '}' then altText = nil end
end
if altText then
-- find nearest image, and use same index for altTexts table
local i = position
while i > 0 and not images[i] do
i = i - 1
if images[i] then
if not altTexts[i] then
altTexts[i] = altText
end
end
end
end
end
-- find all image sizes
local imageSizes = {}
for position, imageSizeMatch in mw.ustring.gmatch(text, "|%s*[Ii][Mm][Aa][Gg][Ee][ _]?[Ss][Ii][Zz][Ee]%s*=%s*()([^}|\n]*)") do
local imageSize = mw.ustring.match(imageSizeMatch, "=%s*([^}|\n]*)")
if imageSize then
imageSize = mw.text.trim(imageSize )
local imageSizeStart = mw.ustring.sub(imageSize, 1, 1)
if imageSizeStart == '|' or imageSizeStart == '}' then imageSize = nil end
end
if imageSize then
-- find nearest image, and use same index for imageSizes table
local i = position
while i > 0 and not images[i] do
i = i - 1
if images[i] then
if not imageSizes[i] then
imageSizes[i] = imageSize
end
end
end
end
end
-- sort the keys of the images table (in a table sequence), so that images can be iterated over in order
local keys = {}
for key, val in pairs(images) do
table.insert(keys, key)
end
table.sort(keys)
-- add in relevant optional parameters for each image: caption, alt text and image size
local imageTokens = {}
for _, index in ipairs(keys) do
local image = images[index]
local token = parseImage(image, true) -- look for image=[[File:...]] etc.
if not token then
image = mw.ustring.match(image, "^[^}|\n]*") -- remove later arguments
token = "[[" -- Add File: unless name already begins File: or Image:
if not matchAny(image, "^", fileNamespaces, "%s*:") then
token = token .. "File:"
end
token = token .. image
local caption = captions[index]
if caption and mw.ustring.match(caption, "%S") then token = token .. "|" .. caption end
local alt = altTexts[index]
if alt then token = token .. "|alt=" .. alt end
local image_size = imageSizes[index]
if image_size and mw.ustring.match(image_size, "%S") then token = token .. "|" .. image_size end
token = token .. "]]"
end
token = mw.ustring.gsub(token, "\n","") .. "\n"
table.insert(imageTokens, token)
end
return imageTokens
end
local function modifyImage(image, fileArgs)
if fileArgs then
for _, filearg in pairs(mw.text.split(fileArgs, "|")) do -- handle fileArgs=left|border etc.
local fa = mw.ustring.gsub(filearg, "=.*", "") -- "upright=0.75" → "upright"
local group = {fa} -- group of "border" is ["border"]...
for _, g in pairs(imageParams) do
for _, a in pairs(g) do
if fa == a then group = g end -- ...but group of "left" is ["right", "left", "center", "none"]
end
end
for _, a in pairs(group) do
image = mw.ustring.gsub(image, "|%s*" .. a .. "%f[%A]%s*=[^|%]]*", "") -- remove "|upright=0.75" etc.
image = mw.ustring.gsub(image, "|%s*" .. a .. "%s*([|%]])", "%1") -- replace "|left|" by "|" etc.
end
image = mw.ustring.gsub(image, "([|%]])", "|" .. filearg .. "%1", 1) -- replace "|" by "|left|" etc.
end
end
return image
end
-- a basic parser to trim down extracted wikitext
-- @param text : Wikitext to be processed
-- @param options : A table of options...
-- options.paraflags : Which number paragraphs to keep, as either a string (e.g. '1,3-5') or a table (e.g. {1=true,2=false,3=true,4=true,5=true}. If not present, all paragraphs will be kept.
-- options.fileflags : table of which files to keep, as either a string (e.g. '1,3-5') or a table (e.g. {1=true,2=false,3=true,4=true,5=true}
-- options.fileargs : args for the [[File:]] syntax, such as 'left'
-- options.filesOnly : only return the files and not the prose
local function parse(text, options)
local allParagraphs = true -- keep all paragraphs?
if options.paraflags then
if type(options.paraflags) ~= "table" then options.paraflags = numberFlags(options.paraflags) end
for _, v in pairs(options.paraflags) do
if v then allParagraphs = false end -- if any para specifically requested, don't keep all
end
end
if is(options.filesOnly) then
allParagraphs = false
options.paraflags = {}
end
local maxfile = 0 -- for efficiency, stop checking images after this many have been found
if options.fileflags then
if type(options.fileflags) ~= "table" then options.fileflags = numberFlags(options.fileflags) end
for k, v in pairs(options.fileflags) do
if v and k > maxfile then maxfile = k end -- set maxfile = highest key in fileflags
end
end
local fileArgs = options.fileargs and mw.text.trim(options.fileargs)
if fileArgs == '' then fileArgs = nil end
local leadStart = nil -- have we found some text yet?
local t = "" -- the stripped down output text
local fileText = "" -- output text with concatenated [[File:Foo|...]]\n entries
local files = 0 -- how many images so far
local paras = 0 -- how many paragraphs so far
local startLine = true -- at the start of a line (no non-spaces found since last \n)?
text = mw.ustring.gsub(text,"^%s*","") -- remove initial white space
-- Add named files
local f = options.files
if f and mw.ustring.match(f, "[^%d%s%-,]") then -- filename rather than number list
f = mw.ustring.gsub(f, "^%s*File%s*:%s*", "", 1)
f = mw.ustring.gsub(f, "^%s*Image%s*:%s*", "", 1)
f = "[[File:" .. f .. "]]"
f = modifyImage(f, "thumb")
f = modifyImage(f, fileArgs)
if checkImage(f) then fileText = fileText .. f .. "\n" end
end
repeat -- loop around parsing a template, image or paragraph
local token = mw.ustring.match(text, "^%b{}%s*") or false -- {{Template}} or {| Table |}
if not leadStart and not token then token = mw.ustring.match(text, "^%b<>%s*%b{}%s*") end -- allow <tag>{{template}} before lead has started
local line = mw.ustring.match(text, "[^\n]*")
if token and line and mw.ustring.len(token) < mw.ustring.len(line) then -- template is followed by text (but it may just be other templates)
line = mw.ustring.gsub(line, "%b{}", "") -- remove all templates from this line
line = mw.ustring.gsub(line, "%b<>", "") -- remove all HTML tags from this line
-- if anything is left, other than an incomplete further template or an image, keep the template: it counts as part of the line
if mw.ustring.find(line, "%S") and not matchAny(line, "^%s*", { "{{", "%[%[%s*[Ff]ile:", "%[%[%s*[Ii]mage:" }, "") then
token = nil
end
end
if token then -- found a template which is not the prefix to a line of text
if is(options.keepTables) and mw.ustring.sub(token, 1, 2) == '{|' then
t = t .. token -- keep tables
elseif mw.ustring.sub(token, 1, 3) == '{{#' then
t = t .. token -- keep parser functions
elseif leadStart then -- lead has already started, so keep the template within the text, unless it's a whole line (navbox etc.)
if not is(options.filesOnly) and not startLine then t = t .. token end
elseif matchAny(token, "^{{%s*", wantedBlockTemplates, "%s*%f[|}]") then
t = t .. token -- keep wanted block templates
elseif files < maxfile then -- discard template, but if we are still collecting images...
local images = argImage(token) or {}
if not images then
local image = parseImage(token, false) -- look for embedded [[File:...]], |image=, etc.
if image then table.insert(images, image) end
end
for _, image in ipairs(images) do
if files < maxfile and checkImage(image) then -- if image is found and qualifies (not a sound file, non-free, etc.)
files = files + 1 -- count the file, whether displaying it or not
if options.fileflags and options.fileflags[files] then -- if displaying this image
image = modifyImage(image, "thumb")
image = modifyImage(image, fileArgs)
fileText = fileText .. image
end
end
end
end
else -- the next token in text is not a template
token = parseImage(text, true)
if token then -- the next token in text looks like an image
if files < maxfile and checkImage(token) then -- if more images are wanted and this is a wanted image
files = files + 1
if options.fileflags and options.fileflags[files] then
local image = token -- copy token for manipulation by adding |right etc. without changing the original
image = modifyImage(image, fileArgs)
fileText = fileText .. image
end
end
else -- got a paragraph, which ends at a file, image, blank line or end of text
local afterEnd = mw.ustring.len(text) + 1
local blankPosition = mw.ustring.find(text, "\n%s*\n") or afterEnd -- position of next paragraph delimiter (or end of text)
local endPosition = math.min( -- find position of whichever comes first: [[File:, [[Image: or paragraph delimiter
mw.ustring.find(text, "%[%[%s*[Ff]ile%s*:") or afterEnd,
mw.ustring.find(text, "%[%[%s*[Ii]mage%s*:") or afterEnd,
blankPosition)
token = mw.ustring.sub(text, 1, endPosition-1)
if blankPosition < afterEnd and blankPosition == endPosition then -- paragraph ends with a blank line
token = token .. mw.ustring.match(text, "\n%s*\n", blankPosition)
end
local isHatnote = not(leadStart) and mw.ustring.sub(token, 1, 1) == ':'
if not isHatnote then
leadStart = leadStart or mw.ustring.len(t) + 1 -- we got a paragraph, so mark the start of the lead section
paras = paras + 1
if allParagraphs or (options.paraflags and options.paraflags[paras]) then t = t .. token end -- add if this paragraph wanted
end
end -- of "else got a paragraph"
end -- of "else not a template"
if token then text = mw.ustring.sub(text, mw.ustring.len(token)+1) end -- remove parsed token from remaining text
startLine = mw.ustring.find(token, "\n%s*$") -- will the next token be the first non-space on a line?
until not text or text == "" or not token or token == "" -- loop until all text parsed
text = mw.ustring.gsub(t, "\n+$", "") -- remove trailing line feeds, so "{{Transclude text excerpt|Foo}} more" flows on one line
return fileText .. text
end
local function cleanupText(text, options)
text = mw.ustring.gsub(text, "<!%-%-.-%-%->","") -- remove HTML comments
text = mw.ustring.gsub(text, "<[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.-</[Nn][Oo][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>", "") -- remove noinclude bits
if mw.ustring.find(text, "[Oo][Nn][Ll][Yy][Ii][Nn][Cc][Ll][Uu][Dd][Ee]") then -- avoid expensive search if possible
text = mw.ustring.gsub(text, "</[Oo][Nn][Ll][Yy][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.-<[Oo][Nn][Ll][Yy][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>", "") -- remove text between onlyinclude sections
text = mw.ustring.gsub(text, "^.-<[Oo][Nn][Ll][Yy][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>", "") -- remove text before first onlyinclude section
text = mw.ustring.gsub(text, "</[Oo][Nn][Ll][Yy][Ii][Nn][Cc][Ll][Uu][Dd][Ee]>.*", "") -- remove text after last onlyinclude section
end
if not is(options.keepSubsections) then
text = mw.ustring.gsub(text, "\n==.*","") -- remove first ==Heading== and everything after it
text = mw.ustring.gsub(text, "^==.*","") -- ...even if the lead is empty
end
if not is(options.keepRefs) then
text = mw.ustring.gsub(text, "<%s*[Rr][Ee][Ff][^>]-/%s*>", "") -- remove refs cited elsewhere
text = mw.ustring.gsub(text, "<%s*[Rr][Ee][Ff].->.-<%s*/%s*[Rr][Ee][Ff]%s*>", "") -- remove refs
text = mw.ustring.gsub(text, "%b{}", stripTemplate) -- remove unwanted templates such as references
end
text = mw.ustring.gsub(text, "<%s*[Ss][Cc][Oo][Rr][Ee].->.-<%s*/%s*[Ss][Cc][Oo][Rr][Ee]%s*>", "") -- remove musical scores
text = mw.ustring.gsub(text, "<%s*[Ii][Mm][Aa][Gg][Ee][Mm][Aa][Pp].->.-<%s*/%s*[Ii][Mm][Aa][Gg][Ee][Mm][Aa][Pp]%s*>", convertImageMap) -- convert imagemaps into standard images
text = mw.ustring.gsub(text, "%s*{{%s*[Tt][Oo][Cc].-}}", "") -- remove most common tables of contents
text = mw.ustring.gsub(text, "%s*__[A-Z]*TOC__", "") -- remove TOC behavior switches
text = mw.ustring.gsub(text, "\n%s*{{%s*[Pp]p%-.-}}", "\n") -- remove protection templates
text = mw.ustring.gsub(text, "%s*{{[^{|}]*[Ss]idebar%s*}}", "") -- remove most sidebars
text = mw.ustring.gsub(text, "%s*{{[^{|}]*%-[Ss]tub%s*}}", "") -- remove most stub templates
text = mw.ustring.gsub(text, "%s*%[%[%s*:?[Cc]ategory:.-%]%]", "") -- remove categories
text = mw.ustring.gsub(text, "^:[^\n]+\n","") -- remove DIY hatnote indented with a colon
return text
end
-- Parse a ==Section== from a page
local function getSection(text, section, mainOnly)
local escapedSection = mw.ustring.gsub(mw.uri.decode(section), "([%^%$%(%)%%%.%[%]%*%+%-%?])", "%%%1") -- %26 → & etc, then ^ → %^ etc.
local level, content = mw.ustring.match(text .. "\n", "\n(==+)%s*" .. escapedSection .. "%s*==.-\n(.*)")
if not content then return luaError("sectionNotFound", section) end
local nextSection
if mainOnly then
nextSection = "\n==.*" -- Main part of section terminates at any level of header
else
nextSection = "\n==" .. mw.ustring.rep("=?", #level - 2) .. "[^=].*" -- "===" → "\n===?[^=].*", matching "==" or "===" but not "===="
end
content = mw.ustring.gsub(content, nextSection, "") -- remove later sections with headings at this level or higher
if mw.ustring.match(content, "^%s*$") then return luaError("sectionEmpty", section) end
return content
end
-- Parse a <section begin="Name of the fragment">
-- @todo Implement custom parsing of fragments rather than relying on #lst
local function getFragment(page, fragment)
local frame = mw.getCurrentFrame()
local text = frame:callParserFunction('#lst', page, fragment)
if mw.ustring.match(text, "^%s*$") then return luaError("fragmentEmpty", fragment) end
return text
end
-- Remove unmatched <tag> or </tag> tags
local function fixTags(text, tag)
local startCount = 0
for i in mw.ustring.gmatch(text, "<%s*" .. tag .. "%f[^%w_].->") do startCount = startCount + 1 end
local endCount = 0
for i in mw.ustring.gmatch(text, "<%s*/" .. tag .. "%f[^%w_].->") do endCount = endCount + 1 end
if startCount > endCount then -- more <tag> than </tag>: remove the last few <tag>s
local i = 0
text = mw.ustring.gsub(text, "<%s*" .. tag .. "%f[^%w_].->", function(t)
i = i + 1
if i > endCount then return "" else return nil end
end) -- "end" here terminates the anonymous replacement function(t) passed to gsub
elseif endCount > startCount then -- more </tag> than <tag>: remove the first few </tag>s
text = mw.ustring.gsub(text, "<%s*/" .. tag .. "%f[^%w_].->", "", endCount - startCount)
end
return text
end
local function fixTemplates(text)
repeat -- hide matched {{template}}s including nested templates
local t = text
text = mw.ustring.gsub(text, "{(%b{})}", "\27{\27%1\27}\27") -- {{sometemplate}} → E{Esometemplate}E}E where E represents escape
text = mw.ustring.gsub(text, "(< *math[^>]*>[^<]-)}}(.-< */math *>)", "%1}\27}\27%2") -- <math>\{sqrt\{hat{x}}</math> → <math>\{sqrt\{hat{x}E}E</math>
until text == t
text = text.gsub(text, "([{}])%1[^\27].*", "") -- remove unmatched {{, }} and everything thereafter, avoiding }E}E etc.
text = text.gsub(text, "([{}])%1$", "") -- remove unmatched {{, }} at end of text
text = mw.ustring.gsub(text, "\27", "") -- unhide matched pairs: E{E{ → {{, etc.
return text
end
local function fixLinks(text)
repeat -- hide matched [[wikilink]]s including nested links like [[File:Example.jpg|Some [[nested]] link.]]
local t = text
text = mw.ustring.gsub(text, "%[(%b[])%]", "\27[\27%1\27]\27")
until text == t
text = text.gsub(text, "([%[%]])%1[^\27].*", "") -- remove unmatched [[ or ]] and everything thereafter, avoiding ]E]E etc.
text = text.gsub(text, "([%[%]])%1$", "") -- remove unmatched [[ or ]] at end of text
text = mw.ustring.gsub(text, "\27", "") -- unhide matched pairs: ]E]E → ]], etc.
return text
end
-- Replace the first call to each reference defined outside of the text for the full reference, to prevent undefined references
-- Then prefix the page title to the reference names to prevent conflicts
-- that is, replace <ref name="Foo"> for <ref name="Title of the article Foo">
-- and also <ref name="Foo" /> for <ref name="Title of the article Foo" />
-- also remove reference groups: <ref name="Foo" group="Bar"> for <ref name="Title of the article Foo">
-- and <ref group="Bar"> for <ref>
-- @todo The current regex may fail in cases with both kinds of quotes, like <ref name="Darwin's book">
local function fixRefs(text, page, full)
if not full then full = getContent(page) end
local refNames = {}
local refName
local refBody
local position = 1
while position < mw.ustring.len(text) do
refName, position = mw.ustring.match(text, "<%s*[Rr][Ee][Ff][^>]*name%s*=%s*[\"']?([^\"'>]+)[\"']?[^>]*/%s*>()", position)
if refName then
refName = mw.text.trim(refName)
if not refNames[refName] then -- make sure we process each ref name only once
table.insert(refNames, refName)
refName = mw.ustring.gsub(refName, "[%^%$%(%)%.%[%]%*%+%-%?%%]", "%%%0") -- escape special characters
refBody = mw.ustring.match(text, "<%s*[Rr][Ee][Ff][^>]*name%s*=%s*[\"']?%s*" .. refName .. "%s*[\"']?[^>/]*>.-<%s*/%s*[Rr][Ee][Ff]%s*>")
if not refBody then -- the ref body is not in the excerpt
refBody = mw.ustring.match(full, "<%s*[Rr][Ee][Ff][^>]*name%s*=%s*[\"']?%s*" .. refName .. "%s*[\"']?[^/>]*>.-<%s*/%s*[Rr][Ee][Ff]%s*>")
if refBody then -- the ref body was found elsewhere
text = mw.ustring.gsub(text, "<%s*[Rr][Ee][Ff][^>]*name%s*=%s*[\"']?%s*" .. refName .. "%s*[\"']?[^>]*/?%s*>", refBody, 1)
end
end
end
else
position = mw.ustring.len(text)
end
end
text = mw.ustring.gsub(text, "<%s*[Rr][Ee][Ff][^>]*name%s*=%s*[\"']?([^\"'>/]+)[\"']?[^>/]*(/?)%s*>", '<ref name="' .. page .. ' %1" %2>')
text = mw.ustring.gsub(text, "<%s*[Rr][Ee][Ff][^>]*group%s*=%s*[\"']?[^\"'>/]+[\"']%s*>", '<ref>')
return text
end
-- Replace the bold title or synonym near the start of the article by a wikilink to the article
function linkBold(text, page)
local lang = mw.language.getContentLanguage()
local position = mw.ustring.find(text, "'''" .. lang:ucfirst(page) .. "'''", 1, true) -- look for "'''Foo''' is..." (uc) or "A '''foo''' is..." (lc)
or mw.ustring.find(text, "'''" .. lang:lcfirst(page) .. "'''", 1, true) -- plain search: special characters in page represent themselves
if position then
local length = mw.ustring.len(page)
text = mw.ustring.sub(text, 1, position + 2) .. "[[" .. mw.ustring.sub(text, position + 3, position + length + 2) .. "]]" .. mw.ustring.sub(text, position + length + 3, -1) -- link it
else -- look for anything unlinked in bold, assumed to be a synonym of the title (e.g. a person's birth name)
text = mw.ustring.gsub(text, "()'''(.-'*)'''", function(a, b)
if not mw.ustring.find(b, "%[") then -- if not wikilinked
return "'''[[" .. page .. "|" .. b .. "]]'''" -- replace '''Foo''' by '''[[page|Foo]]'''
else
return nil -- instruct gsub to make no change
end
end, 1) -- "end" here terminates the anonymous replacement function(a, b) passed to gsub
end
return text
end
-- Main function for modules
local function get(page, options)
if options.errors then errors = options.errors end
if not page or page == "" then return luaError("noPage") end
local text
page, section = mw.ustring.match(page, "([^#]+)#?([^#]*)")
text, page = getContent(page)
if not page then return luaError("noPage") end
if not text then return luaError("pageNotFound", page) end
local full = text -- save the full text for later
if is(options.fragment) then
text = getFragment(page, options.fragment)
end
if is(section) then
text = getSection(text, section)
end
-- Strip text of all undersirables
text = cleanupText(text, options)
text = parse(text, options)
-- Replace the bold title or synonym near the start of the article by a wikilink to the article
text = linkBold(text, page)
-- Remove '''bold text''' if requested
if is(options.nobold) then text = mw.ustring.gsub(text, "'''", "") end
-- Keep only tables if requested
if is(options.tablesOnly) then text = getTables(text) end
-- Keep only lists if requested
if is(options.listsOnly) then text = getLists(text) end
-- Seek and destroy unterminated templates, links and tags
text = fixTemplates(text)
text = fixLinks(text)
text = fixTags(text, "div")
-- Fix broken references
if is(options.keepRefs) then text = fixRefs(text, page, full) end
-- Add (Full article...) link
if options.moreLinkText then
text = text .. " ('''[[" .. page .. "|" .. options.moreLinkText .. "]]''')"
end
return text
end
-- Main invocation function for templates
local function main(frame)
local args = parseArgs(frame)
local page = args[1]
local ok, text = pcall(get, page, args)
if not ok then
text = errorMessages.prefix .. text
if errorCategory and errorCategory ~= '' and mw.title.getCurrentTitle().isContentPage then
text = text .. '[[' .. errorCategory .. ']]'
end
return mw.html.create('div'):addClass('error'):wikitext(text)
end
return frame:preprocess(text)
end
local function getMoreLinkText(more)
local defaultText = "Full article..." -- default text, same as in [[Template:TFAFULL]]
if not more or more == '' then -- nil/empty => use default
return defaultText
end
if not yesno(more, true) then -- falsy values => suppress the link
return nil
end
return more
end
-- Shared invocation function used by templates meant for portals
local function portal(frame, template)
local args = parseArgs(frame)
errors = args['errors'] or false -- disable error reporting unless requested
-- There should be at least one argument except with selected=Foo and Foo=Somepage
if #args < 1 and not (template == "selected" and args[template] and args[args[template]]) then
return wikiError("noPage")
end
-- Figure out the page to excerpt
local page
local candidates = {}
if template == "lead" then
page = args[1]
page = mw.text.trim(page)
if not page or page == "" then return wikiError("noPage") end
candidates = { page }
elseif template == "selected" then
local key = args[template]
local count = #args
if tonumber(key) then -- normalise article number into the range 1..#args
key = key % count
if key == 0 then key = count end
end
page = args[key]
page = mw.text.trim(page)
if not page or page == "" then return wikiError("noPage") end
candidates = { page }
elseif template == "linked" or template == "listitem" then
local source = args[1]
local text, source = getContent(source)
if not source then
return wikiError("noPage")
elseif not text then
return wikiError("noPage")
end
local section = args.section
if section then -- check relevant section only
text = getSection(text, section)
if not text then return wikiError("sectionNotFound", section) end
end
-- Replace annotated links with real links
text = mw.ustring.gsub(text, "{{%s*[Aa]nnotated[ _]link%s*|%s*(.-)%s*}}", "[[%1]]")
if template == "linked" then
for candidate in mw.ustring.gmatch(text, "%[%[%s*([^%]|\n]*)") do table.insert(candidates, candidate) end
else -- listitem: first wikilink on a line beginning *, :#, etc. except in "See also" or later section
text = mw.ustring.gsub(text, "\n== *See also.*", "")
for candidate in mw.ustring.gmatch(text, "\n:*[%*#][^\n]-%[%[%s*([^%]|\n]*)") do table.insert(candidates, candidate) end
end
elseif template == "random" then
for key, value in pairs(args) do
if value and type(key) == "number" then
table.insert(candidates, mw.text.trim(value))
end
end
end
-- Build an options array for the Excerpt module out of the arguments and the desired defaults
local options = {
errors = args['errors'] or false,
fileargs = args['fileargs'],
fileflags = numberFlags( args['files'] ),
paraflags = numberFlags( args['paragraphs'] ),
moreLinkText = getMoreLinkText(args['more'])
}
-- Select a random candidate and make sure its valid
local text
local candidateCount = #candidates
if candidateCount > 0 then
local candidateKey = 1
local candidateString
local candidateArgs
if candidateCount > 1 then math.randomseed(os.time()) end
while (not text or text == "") and candidateCount > 0 do
if candidateCount > 1 then candidateKey = math.random(candidateCount) end -- pick a random candidate
candidateString = candidates[candidateKey]
if candidateString and candidateString ~= "" then
-- We have page or [[page]] or [[page|text]], possibly followed by |opt1|opt2...
page, candidateArgs = mw.ustring.match(candidateString, "^%s*(%[%b[]%])%s*|?(.*)")
if page and page ~= "" then
page = mw.ustring.match(page, "%[%[([^|%]]*)") -- turn [[page|text]] into page, discarding text
else -- we have page or page|opt...
page, candidateArgs = mw.ustring.match(candidateString, "%s*([^|]*[^|%s])%s*|?(.*)")
end
-- candidate arguments (even if value is "") have priority over global arguments
if candidateArgs and candidateArgs ~= "" then
for _, t in pairs(mw.text.split(candidateArgs, "|")) do
local k, v = mw.ustring.match(t, "%s*([^=]-)%s*=(.-)%s*$")
if k == 'files' then options.fileflags = numberFlags(v)
elseif k == 'paragraphs' then options.paraflags = numberFlags(v)
elseif k == 'more' then args.more = v
else options[k] = v end
end
end
if page and page ~= "" then
local section = mw.ustring.match(page, "[^#]+#([^#]+)") -- save the section
text, page = getContent(page) -- make sure the page exists
if page and page ~= "" and text and text ~= "" then
if args.nostubs then
local isStub = mw.ustring.find(text, "%s*{{[^{|}]*%-[Ss]tub%s*}}")
if isStub then text = nil end
end
if section and section ~= "" then
page = page .. '#' .. section -- restore the section
end
text = get(page, options)
end
end
end
table.remove(candidates, candidateKey) -- candidate processed
candidateCount = candidateCount - 1 -- ensure that we exit the loop after all candidates are done
end
end
if not text or text == "" then return wikiError("No valid pages found") end
if args.showall then
local separator = args.showall
if separator == "" then separator = "{{clear}}{{hr}}" end
for _, candidate in pairs(candidates) do
local t = get(candidate, options)
if t ~= "" then
text = text .. separator .. t
end
end
end
-- Add a collapsed list of pages which might appear
if args.list and not args.showall then
local list = args.list
if list == "" then list = "Other articles" end
text = text .. "{{collapse top|title={{resize|85%|" ..list .. "}}|bg=fff}}{{hlist"
for _, candidate in pairs(candidates) do
if mw.ustring.match(candidate, "%S") then text = text .. "|[[" .. mw.text.trim(candidate) .. "]]" end
end
text = text .. "}}\n{{collapse bottom}}"
end
return frame:preprocess(text)
end
-- Old invocation function used by {{Excerpt}}
local function excerpt(frame)
local args = parseArgs(frame)
-- Make sure the requested page exists
local page = args[1] or args.article or args.source or args.page
if not page then return wikiError("noPage") end
local title = mw.title.new(page)
if not title then return wikiError("noPage") end
if title.isRedirect then title = title.redirectTarget end
if not title.exists then return wikiError("pageNotFound", page) end
page = title.prefixedText
-- Define some useful variables
local section = args[2] or args.section or mw.ustring.match(args[1], "[^#]+#([^#]+)")
local tag = args.tag or 'div'
-- Define the HTML elements
local block = mw.html.create(tag):addClass('excerpt-block')
if is(args.indicator) then block:addClass('excerpt-indicator') end
local style = frame:extensionTag{ name = 'templatestyles', args = { src = 'Excerpt/styles.css' } }
local hatnote
if not args.nohat then
if args.this then
hatnote = args.this
elseif args.indicator then
hatnote = 'This is'
elseif args.only == 'file' then
hatnote = 'This file is'
elseif args.only == 'file' then
hatnote = 'These files are'
elseif args.only == 'list' then
hatnote = 'This list is'
elseif args.only == 'lists' then
hatnote = 'These lists are'
elseif args.only == 'table' then
hatnote = 'This table is'
elseif args.only == 'tables' then
hatnote = 'These tables are'
else
hatnote = 'This section is'
end
hatnote = hatnote .. ' an excerpt from '
if section then
hatnote = hatnote .. '[[' .. page .. '#' .. section .. '|' .. page .. ' § ' .. section .. ']]'
else
hatnote = hatnote .. '[[' .. page .. ']]'
end
hatnote = hatnote .. "''" .. '<span class="mw-editsection-like plainlinks"><span class="mw-editsection-bracket">[</span>['
hatnote = hatnote .. title:fullUrl('action=edit') .. ' edit'
hatnote = hatnote .. ']<span class="mw-editsection-bracket">]</span></span>' .. "''"
hatnote = require('Module:Hatnote')._hatnote(hatnote, {selfref=true}) or wikiError('Error generating hatnote')
end
-- Build the module options out of the template arguments and the desired defaults
local options = {
fileflags = numberFlags( args['files'] or 1 ),
paraflags = numberFlags( args['paragraphs'] ),
filesOnly = is( args['only'] == 'file' or args['only'] == 'files' ),
listsOnly = is( args['only'] == 'list' or args['only'] == 'lists'),
tablesOnly = is( args['only'] == 'table' or args['only'] == 'tables' ),
keepTables = is( args['tables'] or true ),
keepRefs = is( args['references'] or true ),
keepSubsections = is( args['subsections'] ),
nobold = not is( args['bold'] ),
fragment = args['fragment']
}
-- Get the excerpt itself
if section then page = page .. '#' .. section end
local ok, excerpt = pcall(e.get, page, options)
if not ok then return wikiError(excerpt) end
excerpt = "\n" .. excerpt -- line break is necessary to prevent broken tables and lists
if mw.title.getCurrentTitle().isContentPage then excerpt = excerpt .. '[[Category:Articles with excerpts]]' end
excerpt = frame:preprocess(excerpt)
excerpt = mw.html.create(tag):addClass('excerpt'):wikitext(excerpt)
-- Combine and return the elements
return block:node(style):node(hatnote):node(excerpt)
end
-- Entry points for templates
function p.main(frame) return main(frame) end
function p.wikiError(message, value) return wikiError(message, value) end
function p.lead(frame) return portal(frame, "lead") end -- {{Transclude lead excerpt}} reads a randomly selected article linked from the given page
function p.linked(frame) return portal(frame, "linked") end -- {{Transclude linked excerpt}} reads a randomly selected article linked from the given page
function p.listitem(frame) return portal(frame, "listitem") end -- {{Transclude list item excerpt}} reads a randomly selected article listed on the given page
function p.random(frame) return portal(frame, "random") end -- {{Transclude random excerpt}} reads any article (default for invoke with one argument)
function p.selected(frame) return portal(frame, "selected") end -- {{Transclude selected excerpt}} reads the article whose key is in the selected= parameter
function p.excerpt(frame) return excerpt(frame) end -- {{Excerpt}} transcludes part of an article into another article
-- Entry points for other Lua modules
function p.get(page, options) return get(page, options) end
function p.getContent(page) return getContent(page) end
function p.getSection(text, section) return getSection(text, section) end
function p.getTables(text, options) return getTables(text, options) end
function p.getLists(text, options) return getLists(text, options) end
function p.parse(text, options) return parse(text, options) end
function p.parseImage(text, start) return parseImage(text, start) end
function p.parseArgs(frame) return parseArgs(frame) end
function p.argImage(text) return argImage(text) end
function p.checkImage(image) return checkImage(image) end
function p.cleanupText(text, options) return cleanupText(text, options) end
function p.luaError(message, value) return luaError(message, value) end
function p.is(value) return is(value) end
function p.numberFlags(str) return numberFlags(str) end
function p.getMoreLinkText(more) return getMoreLinkText(more) end
-- Entry points for backwards compatibility
function p.getsection(text, section) return getSection(text, section) end
function p.parseimage(text, start) return parseImage(text, start) end
function p.checkimage(image) return checkImage(image) end
function p.argimage(text) return argImage(text) end
function p.numberflags(str) return numberFlags(str) end
return p
kr77zgwmgh6r3d2i37s3a9mir4pihi2
Module:Random slideshow
828
3291
36473
2025-12-15T16:57:00Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Creates a slideshow gallery where the order is randomised. Intended for use on portal pages. local p = {} local excerptModule = require('Module:Excerpt/portals') local randomModule = require('Module:Random') local redirectModule = require('Module:Redirect') function cleanupArgs(argsTable) local cleanArgs = {} for key, val in pairs(argsTable) do if type(val) == 'string' then val = val:match('^%s*(.-)%s*$') if val ~= '' then cleanA...'
36473
Scribunto
text/plain
-- Creates a slideshow gallery where the order is randomised. Intended for use on portal pages.
local p = {}
local excerptModule = require('Module:Excerpt/portals')
local randomModule = require('Module:Random')
local redirectModule = require('Module:Redirect')
function cleanupArgs(argsTable)
local cleanArgs = {}
for key, val in pairs(argsTable) do
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val ~= '' then
cleanArgs[key] = val
end
else
cleanArgs[key] = val
end
end
return cleanArgs
end
function normaliseCssMeasurement(input)
local suffix = string.reverse(string.sub(string.reverse(input), 1, 2))
if ( suffix == 'px' ) or ( suffix == 'em' ) or ( string.sub(suffix, 2, 2) == '%' ) then
return input
else
return input .. 'px'
end
end
function isDeclined(val)
if not val then return false end
local declinedWords = " decline declined exclude excluded false none not no n off omit omitted remove removed "
return string.find(declinedWords , ' '..val..' ', 1, true ) and true or false
end
function makeOutput(galleryLines, maxWidth, containerClassName, nonRandom)
local randomiseArgs = { ['t'] = galleryLines }
local sortedLines = nonRandom and galleryLines or randomModule.main('array', randomiseArgs)
local galleryContent = table.concat(sortedLines, '\n')
local output = '<div class="' .. containerClassName .. '" style="max-width:' .. normaliseCssMeasurement(maxWidth) .. '; margin:-4em auto;">{{#tag:gallery|' .. galleryContent .. '|mode=slideshow}}</div>'
return output
end
function makeGalleryLine(file, caption, credit)
local title = mw.title.new(file, "File" )
if not title
then
return "File:Blank.png{{!}}{{Error|File [[:File:" .. file .. "]] does not exist.}}"
end
local creditLine = ( credit and '<p><span style="font-size:88%">' .. credit .. '</span></p>' or '' )
return title.prefixedText .. '{{!}}' .. ( caption or '' ) .. creditLine
end
function makeGalleryLinesTable(args)
local galleryLinesTable = {}
local i = 1
while args[i] do
table.insert(galleryLinesTable, makeGalleryLine(args[i], args[i+1], args['credit' .. (i+1)/2]))
i = i + 2
end
return galleryLinesTable
end
function hasCaption(line)
local caption = mw.ustring.match(line, ".-{{!}}(.*)")
-- require caption to exist with more than 5 characters (avoids sizes etc being mistaken for captions)
return caption and #caption>5 and true or false
end
function extractGalleryFiles(wikitext)
local gallery = mw.ustring.match(wikitext, '<gallery.->%s*(.-)%s*</gallery>')
if not gallery then
return false
end
gallery = mw.ustring.gsub(gallery, '|', '{{!}}')
return mw.text.split(gallery, '%c')
end
function extractRegularFiles(wikitext)
local files = {}
local frame = mw.getCurrentFrame()
local expand = function(template)
return frame:preprocess(template)
end
for file in mw.ustring.gmatch(wikitext, '%b[]' ) do
-- remove keywords that don't work in galleries
file = mw.ustring.gsub(file, '|%s*thumb%s*([|%]])', '%1')
file = mw.ustring.gsub(file, '|%s*thumbnail%s*([|%]])', '%1')
file = mw.ustring.gsub(file, '|%s*left%s*([|%]])', '%1')
file = mw.ustring.gsub(file, '|%s*right%s*([|%]])', '%1')
file = mw.ustring.gsub(file, '|%s*center%s*([|%]])', '%1')
file = mw.ustring.gsub(file, '|%s*framed?%s*([|%]])', '%1')
file = mw.ustring.gsub(file, '|%s*frameless%s*([|%]])', '%1')
file = mw.ustring.gsub(file, '|%s*upright%s*([|%]])', '%1')
file = mw.ustring.gsub(file, '|%s*upright%s*=.-([|%]])', '%1')
-- remove spaces prior to captions (which cause pre-formatted text)
file = mw.ustring.gsub(file, '|%s*', '|')
-- remove sizes, which sometimes get mistaken for captions
file = mw.ustring.gsub(file, '|%d*x?%d+px([|%]])', '%1')
-- expand templates
file = mw.ustring.gsub(file, '{%b{}}', expand)
-- remove loose closing braces which don't have matching opening braces
file = mw.ustring.gsub(file, '}}', '')
-- remove loose opening braces which don't have matching closing braces (and the subsequent content, which is probably just a template name)
file = mw.ustring.gsub(file, '{{.-([|%]])', '$1')
-- replace pipes and equals (which would otherwise break the {{#tag:}} syntax)
file = mw.ustring.gsub(file, '|', '{{!}}')
file = mw.ustring.gsub(file, '=', '{{=}}')
-- remove linebreaks
file = mw.ustring.gsub(file, '\n\n', '<br>')
file = mw.ustring.gsub(file, '\n', '')
-- remove surrounding square brackets
file = mw.ustring.gsub(file, '^%[%[', '')
file = mw.ustring.gsub(file, '%]%]$', '')
table.insert(files, file)
end
return files
end
function makeTranscludedGalleryLinesTables(args)
local namespaceNumber = function(pagetitle)
local titleObject = mw.title.new(pagetitle)
return titleObject and titleObject.namespace
end
local lines = {}
local i = 1
while args[i] do
if namespaceNumber(args[i]) == 6 then -- file namespace
-- args[i] is either just the filename, or uses syntax File:Name.jpg##Caption##Credit
local parts = mw.text.split(args[i], '##%s*')
local filename = parts[1]
local caption = args['caption'..i] or parts[2] or false
local credit = args['credit'..i] or parts[3] or false
local line = makeGalleryLine(filename, caption, credit)
table.insert(lines, line)
else
local content, pagename = excerptModule.getContent(args[i])
if not pagename then
return error('Cannot read a valid page for "' .. args[i] .. '"', 0)
elseif not content then
return error('No content found on page "' .. args[i] .. '"', 0)
end
if args['section'..i] then
content = excerptModule.getSection(content, args['section'..i]) or ''
end
content = excerptModule.cleanupText(content, {keepSubsections=true}) -- true means keep subsections
local galleryFiles = extractGalleryFiles(content)
if galleryFiles then
for _, f in pairs(galleryFiles) do
if hasCaption(f) then
local filename = string.gsub(f, '{{!}}.*', '')
local isOkay = excerptModule.checkImage(filename)
if isOkay then
table.insert(lines, f)
end
end
end
end
local otherFiles = excerptModule.parse(content, {fileflags="1-100", filesOnly=true})
if otherFiles then
for _, f in pairs(extractRegularFiles(otherFiles)) do
if f and f ~= '' and mw.ustring.sub(f, 1, 5) == 'File:' and hasCaption(f) then
table.insert(lines, f)
end
end
end
end
i = i + 1
end
return ( #lines > 0 ) and lines or error('No images found')
end
p._main = function(args, transclude, containerClassName)
if not args[1] then
return error(linked and 'No page specified' or 'No page specified', 0)
end
local lines = transclude and makeTranscludedGalleryLinesTables(args) or makeGalleryLinesTable(args)
return makeOutput(lines, args.width or '100%', containerClassName or 'randomSlideshow-container', isDeclined(args.random))
end
p.main = function(frame)
local parent = frame.getParent(frame)
local parentArgs = parent.args
local args = cleanupArgs(parentArgs)
local output = p._main(args, false)
return frame:extensionTag{ name='templatestyles', args = { src='Module:Random slideshow/styles.css'} }
.. frame:preprocess(output)
end
p.transclude = function(frame)
local parent = frame.getParent(frame)
local parentArgs = parent.args
local args = cleanupArgs(parentArgs)
local output = p._main(args, true)
return frame:extensionTag{ name='templatestyles', args = { src='Module:Random slideshow/styles.css'} }
.. frame:preprocess(output)
end
return p
0mdxs60eeuz9kqoup9vpi6ob08cjdt1
Module:External links/conf/General
828
3292
36474
2025-12-15T16:58:06Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local configured_claims = {} local function commons_formatter(id) return "https://commons.wikimedia.org/wiki/Category:" .. id:gsub(" ", "_") end configured_claims['el'] = { -- { prop='P373', message="[$2 ''$1''] – pictures, videos or audio at [[Wikimedia Commons]]$3", short="[$2 Wikimedia Commons]", langcode='en', url_f=commons_formatter }, -- Αθλητισμός --- Καλαθοσφαίριση { prop='P3542', message='[$...'
36474
Scribunto
text/plain
local configured_claims = {}
local function commons_formatter(id)
return "https://commons.wikimedia.org/wiki/Category:" .. id:gsub(" ", "_")
end
configured_claims['el'] = {
-- { prop='P373', message="[$2 ''$1''] – pictures, videos or audio at [[Wikimedia Commons]]$3", short="[$2 Wikimedia Commons]", langcode='en', url_f=commons_formatter },
-- Αθλητισμός
--- Καλαθοσφαίριση
{ prop='P3542', message='[$2 $1] στη [[FIBA]]$3', short='[$2 FIBA]', langcode='en' },
{ prop='P3536', message='[$2 $1] στην [[Ευρωλίγκα]]$3', short='[$2 EuroLeague]', langcode='en' },
{ prop='P3647', message='[$2 $1] στο [[NBA]]$3', short='[$2 NBA]', langcode='en' },
--- Ποδόσφαιρο
{ prop='P1469', message='[$2 $1] στη [[FIFA]] (αρχειοθετημένος)$3', short='[$2 FIFA (αρχειοθετημένος)]', langcode='en' }, -- uses archived URL
{ prop='P2276', message='[$2 $1] στην [[UEFA]]$3', short='[$2 UEFA]', langcode='en' },
{ prop='P7360', message='[$2 $1] στην [[UEFA]] (αρχειοθετημένος)$3', short='[$2 UEFA (αρχειοθετημένος)]', langcode='en' },
{ prop='P10995', message='[$2 $1] στο National-Football-Teams.com$3', short='[$2 National-Football-Teams.com]', langcode='en' },
{ prop='P2574', message='[$2 $1 προφίλ παίκτη] στο National-Football-Teams.com', langcode='en', genitive=true },
-- Κινηματογράφος
{ prop='P345', message='[$2 $1] στην [[Internet Movie Database|IMDb]]$3', short='[$2 IMDb]', langcode='en' },
{ prop='P1562', message='[$2 $1] στο [[AllMovie]]$3', short='[$2 AllMovie]', langcode='en' },
{ prop='P1258', message='[$2 $1] στο [[Rotten Tomatoes]]$3', short='[$2 Rotten Tomatoes]', langcode='en' },
{ prop='P1712', message='[$2 $1] στο [[Metacritic]]$3', short='[$2 Metacritic]', langcode='en' },
{ prop='P1237', message='[$2 $1] στο [[Box Office Mojo]]$3', short='[$2 Cine gr]', langcode='en' },
{ prop='P2631', message='[$2 $1] στο TCMDB$3', short='[$2 TCMDB]', langcode='en' },
{ prop='P1265', message='[$2 $1] στο [[AlloCine]]$3', short='[$2 AlloCine]', langcode='fr' },
{ prop='P3129', message='[$2 $1] στο Cine.gr (αρχειοθετημένος)$3', short='[$2 Cine gr]', langcode='el' },
{ prop='P3593', message='[$2 $1] στο [[Αμερικανικό Ινστιτούτο Κινηματογράφου]]$3', short='[$2 AFI]' },
{ prop='P5340', message='[$2 $1] στο [[Αμερικανικό Ινστιτούτο Κινηματογράφου]]$3', short='[$2 AFI]', langcode='en' },
{ prop='P4438', message='[$2 $1] στο [[Βρετανικό Ινστιτούτο Κινηματογράφου]]$3', short='[$2 BFI]', langcode='en' },
}
local messages_conf = {}
messages_conf['el'] = {
['short-list-separator'] = ', ',
['with-data-cat'] = '[[Κατηγορίαν:Σελίδα που χρησιμοποιεί συνδέσμους με δεδομένα των Wikidata]]',
['no-data-text'] = "",
['no-data-cat'] = '[[Κατηγορίαν:Σελίδα που δεν έχει δεδομένα στα Wikidata]]',
['no-wikilink'] = "''Αυτή η σελίδα δεν έχει συνδέσμους στα Wikidata''",
}
local limits = {
['links-shown'] = 8, -- μέγιστος αριθμός συνδέσμων που εμφανίζονται στο λήμμα.
}
local p = {}
function p.getConfiguredClaims (self, lang)
return configured_claims[lang]
end
function p.getLimits (self)
return limits
end
function p.getMessage (self, lang, msg)
return messages_conf[lang][msg]
end
-- metatable for the export
local mt = {
-- adjust the installation of the module
['__call'] = function (self, lang)
self.configured_claims = configured_claims[lang]
self.messages_conf = messages_conf[lang]
return self
end
}
-- install the metatable
setmetatable(p, mt)
return p
q2vgkbpvevr5dzvsn5mquflk9lk8u44
Πρότυπον:External links
10
3293
36475
2025-12-15T16:58:59Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:External links|getLinks|conf=General}}<noinclude> {{documentation}} </noinclude>'
36475
wikitext
text/x-wiki
{{#invoke:External links|getLinks|conf=General}}<noinclude>
{{documentation}}
</noinclude>
rnab8mpr68iv8oagn2a6tg0kgi1dml8
Module:External links
828
3294
36476
2025-12-15T17:00:36Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require('strict') -- local genitive = require('Module:Genitive')._genitive local contLang = mw.language.getContentLanguage() local cmodule = {} local conf = require 'Module:External links/conf'(contLang:getCode()) local hasdatafromwikidata = false local hasdatafromlocal = false local haswikidatalink = true -- we assume it's connected local p = {} local function getLabel(entity, use_genitive, pagetitle) local label = (pagetitle and pagetitle ~=...'
36476
Scribunto
text/plain
require('strict')
-- local genitive = require('Module:Genitive')._genitive
local contLang = mw.language.getContentLanguage()
local cmodule = {}
local conf = require 'Module:External links/conf'(contLang:getCode())
local hasdatafromwikidata = false
local hasdatafromlocal = false
local haswikidatalink = true -- we assume it's connected
local p = {}
local function getLabel(entity, use_genitive, pagetitle)
local label = (pagetitle and pagetitle ~= '') and pagetitle or nil
if not label and not entity then
label = mw.title.getCurrentTitle().text
elseif not label then
label = mw.wikibase.label(entity.id) or mw.title.getCurrentTitle().text
end
-- return use_genitive and genitive(label, 'sitt') or label
return use_genitive and label .. "'s" or label
end
-- @todo cleanup, this is in production, use the console
local function dump(obj)
return "<pre>" .. mw.dumpObject(obj) .. "</pre>"
end
local function stringFormatter( datavalue )
if datavalue == nil or datavalue['type'] ~= 'string' then
return nil
end
return datavalue.value
end
local pval = {}
pval.P1793 = { -- format as a regular expression
types = {
snaktype = 'value',
datatype = 'string',
},
}
pval.P407 = { -- language of work or name
types = {
snaktype = 'value',
datatype = 'wikibase-item',
datavalue = {
type = 'wikibase-entityid',
}
},
}
pval.P364 = { -- original language of work
types = {
snaktype = 'value',
datatype = 'wikibase-item',
datavalue = {
type = 'wikibase-entityid',
}
},
}
pval.P218 = { -- ISO 639-1 language
types = {
snaktype = 'value',
datatype = 'external-id',
datavalue = {
type = 'string',
}
},
}
pval.P305 = { -- IETF language tag
types = {
snaktype = 'value',
datatype = 'external-id',
datavalue = {
type = 'string',
}
},
}
pval.P582 = { -- end time
types = {
snaktype = 'value',
datatype = 'time',
datavalue = {
type = 'string',
}
},
}
-- This is a really makeshift crappy converter, but it'll do some basic
-- conversion from PCRE to Lua-style patterns (note that this only work
-- in very few cases)
local function regexConverter( regex )
local output = regex
output = string.gsub(output, "\\d{2}", "%%d%%d")
output = string.gsub(output, "\\d{3}", "%%d%%d%%d")
output = string.gsub(output, "\\d{4}", "%%d%%d%%d%%d")
output = string.gsub(output, "\\d{5}", "%%d%%d%%d%%d%%d")
output = string.gsub(output, "\\d{6}", "%%d%%d%%d%%d%%d%%d")
output = string.gsub(output, "\\d{7}", "%%d%%d%%d%%d%%d%%d%%d")
output = string.gsub(output, "\\d{8}", "%%d%%d%%d%%d%%d%%d%%d%%d")
output = string.gsub(output, "\\d", "%%d")
return output
end
local function getFormatterUrl( prop, value )
local head = ""
local tail = ""
local entity = mw.wikibase.getEntity(prop)
-- to avoid deep tests
if not entity or not entity.claims then
return head
end
-- get the claims for this entity
local statements = entity.claims['P1630'] -- formatter URL
-- to avoid deep tests
if not statements then
return head
end
local formatters = {}
-- let's go through the claims
for _, claim in ipairs( statements ) do
-- to avoid deep tests
if not claim then
claim = {}
end
local valid = claim['type'] == 'statement'
and claim['rank'] ~= 'deprecated'
if valid then
local mainsnak = claim.mainsnak or {}
local preferred = claim['rank'] == 'preferred'
-- get any qualifiers for this claim (we are interested in P1793 for
-- indication of which claim is correct)
local qualifiers = claim.qualifiers or {}
-- now let's check the qualifier we are interested in
local qualid = 'P1793' -- format as a regular expression
-- if the claim has this qualifier
if qualifiers[qualid] then
-- it's here, let's check it out!
local items = {}
-- traverse all snaks in this qualifier
for _, qualsnak in ipairs( qualifiers[qualid] ) do
if qualsnak and pval[qualid] then
--mw.log("qualsnak = " .. dump(qualsnak))
-- check if the snak is of the correct snaktype and datatype
local valid = qualsnak.snaktype == pval[qualid].types.snaktype
and qualsnak.datatype == pval[qualid].types.datatype
if valid then
-- we'll have to convert the regex to Lua-style
local regex = regexConverter(qualsnak.datavalue.value)
local test = string.match( value, '^'..regex..'$' )
if test then
-- it matched, this is correct and overrides any other.
if preferred then
head = mainsnak.datavalue.value
else
tail = mainsnak.datavalue.value
end
end
end
end
end
else
-- we don't have any qualifier, is it preferred?
if (head == '' and preferred) or (tail == '' and not preferred) then
-- if we don't have any other, use this one
if preferred and head == '' then
head = mainsnak.datavalue.value
elseif not preferred and tail == '' then
tail = mainsnak.datavalue.value
end
end
end
end
end
return head ~= '' and head or tail
end
local function getLanguageData(prop, qid)
local head = {}
local tail = {}
-- mw.log("getLanguageData, prop="..dump(prop).." qid="..dump(qid))
-- get the entity we are checking
local entity = mw.wikibase.getEntityObject(qid)
-- to avoid deep tests
if not entity then
return nil
end
if not entity.claims then
return {}
end
-- get the claims for this entity
local statements = entity.claims[prop]
-- to avoid deep tests
if not statements then
return {}
end
-- mw.log("getLanguageData going through claims="..dump(statements))
-- let's go through the claims
for _, claim in ipairs( statements ) do
-- to avoid deep tests
if not claim then
claim = {}
end
local valid = claim['type'] == 'statement'
and claim['rank'] ~= 'deprecated'
if valid then
local mainsnak = claim.mainsnak or {}
local preferred = claim['rank'] == 'preferred'
-- verify the item is what we expect
local valid = mainsnak.snaktype == pval[prop].types.snaktype
and mainsnak.datatype == pval[prop].types.datatype
and mainsnak.datavalue.type == pval[prop].types.datavalue.type
if valid then
-- mw.log("getLanguageData claim is valid="..dump(claim))
-- if this is the correct P-value, dive into it and get P218 (ISO 639-1)
if mainsnak.property == 'P364' then -- original language of work
if preferred then
head[#head+1] = table.concat(getLanguageData('P218', 'Q'..mainsnak.datavalue.value['numeric-id']), conf:a('mod-filter-separator'))
else
tail[#tail+1] = table.concat(getLanguageData('P218', 'Q'..mainsnak.datavalue.value['numeric-id']), conf:a('mod-filter-separator'))
end
elseif mainsnak.property == 'P218' or mainsnak.property == 'P305' then -- ISO 639-1 code or IETF language tag
if preferred then
head[#head+1] = stringFormatter(mainsnak.datavalue)
else
tail[#tail+1] = stringFormatter(mainsnak.datavalue)
end
end
end
end
end
-- mw.log("getLanguageData returning head="..dump(head).." tail="..dump(tail))
return #head>0 and head or tail
end
local langqvalorder = {'P407','P364'}
local otherqvalorder = {'P582'}
local function getValuesFromWikidata(props)
local head = {}
local tail = {}
-- mw.log("getValuesFromWikidata, props="..dump(props))
-- get the entity we are checking
local entity = mw.wikibase.getEntityObject()
-- to avoid deep tests
if not entity then
--mw.log("getValuesFromWikidata no entity")
return nil
end
if not entity.claims or not props or not props.prop or props.prop == '' then
--mw.log("getValuesFromWikidata no claims or no props")
return {}
end
-- get the claims for this entity
local statements = entity.claims[props.prop]
-- to avoid deep tests
if not statements then
return {}
end
-- let's go through the claims
for _, claim in ipairs( statements ) do
-- to avoid deep tests
if not claim then
claim = {}
end
local valid = claim['type'] == 'statement'
and claim['rank'] ~= 'deprecated'
if valid then
-- mw.log("getValuesFromWikidata valid claim="..dump(claim))
local mainsnak = claim.mainsnak or {}
local preferred = claim['rank'] == 'preferred'
-- get the content of the claim (the identifier)
local langcode = props.langcode
local checklangcode = nil
if props.langcode and props.langcode ~= '' then
checklangcode = string.find(langcode, "([pP]%d+)")
end
if checklangcode and checklangcode ~= "" then
-- this is a P-value for language-code, so we'll check qualifiers for languagedata
-- first get any qualifiers
local qualifiers = claim.qualifiers or {}
for _, qualid in ipairs( langqvalorder ) do
-- if the claim has this qualifier
if qualifiers[qualid] then
-- it's here, let's check it out!
local items = {}
-- traverse all snaks in this qualifier
for _, qualsnak in ipairs( qualifiers[qualid] ) do
if qualsnak and pval[qualid] then
-- mw.log("qualsnak = " .. dump(qualsnak))
-- check if the snak is of the correct snaktype and datatype
local valid = qualsnak.snaktype == pval[qualid].types.snaktype
and qualsnak.datatype == pval[qualid].types.datatype
if valid then
-- now get the actual data
langcode = table.concat(getLanguageData('P305', 'Q'..qualsnak.datavalue.value['numeric-id']), '')
end
end
end
end
-- mw.log("langcode is now="..dump(langcode))
end
if string.find(langcode, "([pP]%d+)") then
-- we still don't have any langcode, so we default to "en"
langcode = nil
end
end
local stillvalid = true
-- we should check a couple of other qualifiers as well
-- first get any qualifiers
local qualifiers = claim.qualifiers or {}
for _, qualid in ipairs( otherqvalorder ) do
-- if the claim has this qualifier
if qualifiers[qualid] then
-- it's here, let's check it out!
local items = {}
-- traverse all snaks in this qualifier
for _, qualsnak in ipairs( qualifiers[qualid] ) do
if qualsnak and pval[qualid] then
-- mw.log("qualsnak = " .. dump(qualsnak))
-- check if the snak is of the correct snaktype and datatype
local valid = qualsnak.snaktype == pval[qualid].types.snaktype
and qualsnak.datatype == pval[qualid].types.datatype
if not valid then
-- sorry, this is not correct
mw.log("qualsnak = INCORRECT")
stillvalid = false
end
end
end
end
-- mw.log("langcode is now="..dump(langcode))
end
if stillvalid then
if preferred then
head[#head+1] = { value=stringFormatter(mainsnak.datavalue) }
if langcode and langcode ~= '' then
head[#head]['langcode'] = langcode
end
else
tail[#tail+1] = { value=stringFormatter(mainsnak.datavalue) }
if langcode and langcode ~= '' then
tail[#tail]['langcode'] = langcode
end
end
end
end
end
-- mw.log("getValuesFromWikidata returning head="..dump(head).." tail="..dump(tail))
return #head>0 and head or tail
end
local function findMainLinksOnWikidata(props, pagetitle, short_links)
local output = {}
local pid = nil
-- get the entity we are checking
local entity = mw.wikibase.getEntityObject()
-- to avoid deep tests
if not entity then
return nil
end
local values = getValuesFromWikidata(props)
for _, value in ipairs( values ) do
local verified_value = nil
if props.regex then
-- we have a local defined regex, so this will have to pass first
-- maybe we'll have to convert the regex to Lua-style
local regex = regexConverter(props.regex)
local test = string.match( value.value, '^'..regex..'$' )
--mw.log("testing with "..regex.. " and test="..dump(test).." and value="..id)
if test then
-- it matched, this is correct and overrides any other.
verified_value = value.value
end
else
verified_value = value.value
end
if verified_value then
local url = ''
output[#output+1] = {}
output[#output].langcode = value.langcode
output[#output].category = {}
if props.url_f then
-- we have a local defined url-formatter function, use it as first priority
url = props.url_f(verified_value)
if props.track and not string.find(props.langcode, "([pP]%d+)") then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-local-wd'), props.prop):plain()
elseif props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-wd-wd'), props.prop):plain()
end
elseif props.url then
-- we have a local defined url-formatter string, use it as second priority
url = mw.message.newRawMessage(props.url, verified_value):plain()
if props.track and not string.find(props.langcode, "([pP]%d+)") then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-local-wd'), props.prop):plain()
elseif props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-wd-wd'), props.prop):plain()
end
else
-- get the formatvalue from the property, if it exists
local formatterUrl = getFormatterUrl(props.prop, verified_value)
if formatterUrl ~= '' then
url = mw.message.newRawMessage(formatterUrl, verified_value):plain()
if props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-wd-wd'), props.prop):plain()
end
end
end
if url ~= '' then
local this_wiki = mw.getContentLanguage()
local this_wiki_code = this_wiki:getCode()
local langlink = (value.langcode and value.langcode ~= '' and value.langcode ~= this_wiki_code) and mw.message.newRawMessage(conf:g('msg-langcode'), value.langcode, mw.language.fetchLanguageName(value.langcode, this_wiki_code)) or ""
if short_links and props.short then
output[#output].text =
mw.message.newRawMessage(props.short,
getLabel(entity, props.genitive, pagetitle),
url,
langlink,
verified_value,
mw.uri.encode(verified_value, 'PATH'))
:plain()
else
output[#output].text =
mw.message.newRawMessage(props.message,
getLabel(entity, props.genitive, pagetitle),
url,
langlink,
verified_value,
mw.uri.encode(verified_value, 'PATH'))
:plain()
end
end
end
end
--mw.log("findMainLinksOnWikidata returning="..dump(output))
return output
end
local function getSitelinksFromWikidata(props, entity)
local output = {}
--mw.log("getSitelinksFromWikidata, props="..dump(props))
-- to avoid deep tests
if not entity then
entity = mw.wikibase.getEntityObject()
if not entity then
--mw.log("getSitelinksFromWikidata no entity")
return nil
end
end
local requested_sitelink = string.match(props.prop, "SL(%l+)")
local sitelinks = entity:getSitelink(requested_sitelink)
if sitelinks and sitelinks ~= '' then
output[#output+1] = { value = sitelinks }
end
--mw.log("getSitelinksFromWikidata returning output="..dump(output))
return output
end
local function findSiteLinksOnWikidata(props, pagetitle, short_links)
local output = {}
local pid = nil
-- get the entity we are checking
local entity = mw.wikibase.getEntityObject()
-- to avoid deep tests
if not entity then
return nil
end
local values = getSitelinksFromWikidata(props)
for _, value in ipairs( values ) do
local verified_value = nil
if props.regex then
-- we have a local defined regex, so this will have to pass first
-- maybe we'll have to convert the regex to Lua-style
local regex = regexConverter(props.regex)
local test = string.match( value.value, '^'..regex..'$' )
--mw.log("testing with "..regex.. " and test="..dump(test).." and value="..id)
if test then
-- it matched, this is correct and overrides any other.
verified_value = value.value
end
else
verified_value = value.value
end
if verified_value then
--mw.log("it's verified..")
local url = ''
output[#output+1] = {}
output[#output].langcode = value.langcode
output[#output].category = {}
if props.url_f then
-- we have a local defined url-formatter function, use it as first priority
url = props.url_f(verified_value)
if props.track and not string.find(props.langcode, "(SL%l+)") then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-local-wd'), props.prop):plain()
elseif props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-wd-wd'), props.prop):plain()
end
elseif props.url then
-- we have a local defined url-formatter string, use it as second priority
url = mw.message.newRawMessage(props.url, verified_value):plain()
if props.track and not string.find(props.langcode, "(SL%l+)") then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-local-wd'), props.prop):plain()
elseif props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-wd-wd'), props.prop):plain()
end
else
url = verified_value:gsub(' ','_')
if props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-wd-wd'), props.prop):plain()
end
end
if url ~= '' then
local this_wiki = mw.getContentLanguage()
local this_wiki_code = this_wiki:getCode()
local langlink = (value.langcode and value.langcode ~= '' and value.langcode ~= this_wiki_code) and mw.message.newRawMessage(conf:g('msg-langcode'), value.langcode, mw.language.fetchLanguageName(value.langcode, this_wiki_code)) or ""
if short_links and props.short then
output[#output].text =
mw.message.newRawMessage(props.short,
getLabel(entity, props.genitive, pagetitle),
url,
langlink,
verified_value,
mw.uri.encode(verified_value, 'PATH'))
:plain()
else
output[#output].text =
mw.message.newRawMessage(props.message,
getLabel(entity, props.genitive, pagetitle),
url,
langlink,
verified_value,
mw.uri.encode(verified_value, 'PATH'))
:plain()
end
end
end
end
--mw.log("findSiteLinksOnWikidata returning="..dump(output))
return output
end
local function findMainLinksLocal(props, pagetitle, short_links, local_value)
local output = {}
-- to avoid deep tests
if not props.prop then
return nil
end
if not (local_value or local_value == '') then
-- bail out if no value is present
return output
end
-- get the formatvalue from the property
local verified_value = local_value
if props.regex and props.regex ~= '' then
-- let's verify the id
-- maybe we'll have to convert the regex to Lua-style
local regex = regexConverter(props.regex)
local test = string.match( local_value, '^'..regex..'$' )
if test then
-- it matched, this is correct
verified_value = local_value
else
verified_value = nil
end
end
if not verified_value then
return output
end
local wikidata_property = string.find(props.prop, "([pP]%d+)")
local wikidata_values = {}
if wikidata_property then
-- get any wikidata values to see if they are equal to local values
wikidata_values = getValuesFromWikidata(props)
end
if wikidata_property or (props.url and props.url ~= '') or (props.url_f) then
output[#output+1] = {}
output[#output].langcode = string.find(props.langcode, "([pP]%d+)") and "" or props.langcode
--mw.log("findMainLinksLocal - props="..dump(props).." langcode="..output[#output].langcode)
output[#output].category = {}
local url = ''
if props.track and wikidata_property and wikidata_values and #wikidata_values then
local local_value_in_wikidata = false
for _,value in ipairs( wikidata_values ) do
if value.value == verified_value then
local_value_in_wikidata = true
end
end
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), (local_value_in_wikidata and 'track-cat-local-wd-equal' or 'track-cat-local-wd-unequal')), props.prop):plain()
end
if wikidata_property and wikidata_values and #wikidata_values then
hasdatafromwikidata = true -- signal up the chain this article has a wikidata claim
end
if props.url_f then
-- we have a local defined url-formatter function, use it as first priority
url = props.url_f(verified_value)
if props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-local-local'), props.prop):plain()
end
elseif props.url then
-- we have a local defined url-formatter string, use it as second priority
url = mw.message.newRawMessage(props.url, verified_value):plain()
if props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-local-local'), props.prop):plain()
end
elseif wikidata_property then
-- get the formatvalue from the property, if it exists
local formatterUrl = getFormatterUrl(props.prop, verified_value)
if formatterUrl ~= '' then
url = mw.message.newRawMessage(formatterUrl, verified_value):plain()
if props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-wd-local'), props.prop):plain()
end
end
else
-- no other choice, bail out
return {}
end
local this_wiki = mw.getContentLanguage()
local this_wiki_code = this_wiki:getCode()
local langlink = (output[#output].langcode and output[#output].langcode ~= '' and output[#output].langcode ~= this_wiki_code) and mw.message.newRawMessage(conf:g('msg-langcode'), props.langcode, mw.language.fetchLanguageName(props.langcode, this_wiki_code)) or ""
if short_links and props.short then
output[#output].text =
mw.message.newRawMessage(props.short,
getLabel(nil, props.genitive, pagetitle),
url,
langlink,
verified_value,
mw.uri.encode(verified_value, 'PATH'))
:plain()
else
output[#output].text =
mw.message.newRawMessage(props.message,
getLabel(nil, props.genitive, pagetitle),
url,
langlink,
verified_value,
mw.uri.encode(verified_value, 'PATH'))
:plain()
end
end
--mw.log("findMainLinksLocal returning="..dump(output))
return output
end
local function findSiteLinksLocal(props, pagetitle, short_links, local_value)
local output = {}
-- to avoid deep tests
if not props.prop then
return nil
end
if not (local_value or local_value == '') then
-- bail out if no value is present
return output
end
-- get the formatvalue from the property
local verified_value = local_value
if props.regex and props.regex ~= '' then
-- let's verify the id
-- maybe we'll have to convert the regex to Lua-style
local regex = regexConverter(props.regex)
local test = string.match( local_value, '^'..regex..'$' )
if test then
-- it matched, this is correct
verified_value = local_value
else
verified_value = nil
end
end
if not verified_value then
return output
end
local wikidata_property = string.find(props.prop, "(SL.+)")
local wikidata_values = {}
if wikidata_property then
-- get any wikidata values to see if they are equal to local values
wikidata_values = getSitelinksFromWikidata(props)
end
if wikidata_property or (props.url and props.url ~= '') or (props.url_f) then
output[#output+1] = {}
output[#output].langcode = string.find(props.langcode, "(SL.+)") and "" or props.langcode
--mw.log("findSiteLinksLocal - props="..dump(props).." langcode="..output[#output].langcode .." wikidata_values="..dump(wikidata_values))
output[#output].category = {}
local url = ''
if props.track and wikidata_property and wikidata_values and #wikidata_values then
local local_value_in_wikidata = false
for _,value in ipairs( wikidata_values ) do
if value.value == verified_value then
local_value_in_wikidata = true
end
end
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), (local_value_in_wikidata and 'track-cat-local-wd-equal' or 'track-cat-local-wd-unequal')), props.prop):plain()
end
if wikidata_property and wikidata_values and #wikidata_values then
hasdatafromwikidata = true -- signal up the chain this article has a wikidata claim
end
if props.url_f then
-- we have a local defined url-formatter function, use it as first priority
url = props.url_f(verified_value)
if props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-local-local'), props.prop):plain()
end
elseif props.url then
-- we have a local defined url-formatter string, use it as second priority
url = mw.message.newRawMessage(props.url, verified_value):plain()
if props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-local-local'), props.prop):plain()
end
elseif wikidata_property then
url = verified_value:gsub(' ','_')
if props.track then
output[#output].category[#output[#output].category+1] = mw.message.newRawMessage(cmodule:getMessage(contLang:getCode(), 'track-cat-wd-local'), props.prop):plain()
end
else
-- no other choice, bail out
return {}
end
local this_wiki = mw.getContentLanguage()
local this_wiki_code = this_wiki:getCode()
local langlink = (output[#output].langcode and output[#output].langcode ~= '' and output[#output].langcode ~= this_wiki_code) and mw.message.newRawMessage(conf:g('msg-langcode'), props.langcode, mw.language.fetchLanguageName(props.langcode, this_wiki_code)) or ""
if short_links and props.short then
output[#output].text =
mw.message.newRawMessage(props.short,
getLabel(nil, props.genitive, pagetitle),
url,
langlink,
verified_value,
mw.uri.encode(verified_value, 'PATH'))
:plain()
else
output[#output].text =
mw.message.newRawMessage(props.message,
getLabel(nil, props.genitive, pagetitle),
url,
langlink,
verified_value,
mw.uri.encode(verified_value, 'PATH'))
:plain()
end
end
--mw.log("findSiteLinksLocal returning="..dump(output))
return output
end
local function addLinkback(str, property)
local id = mw.wikibase.getEntityObject()
if not id then
return str
end
if type(id) == 'table' then
id = id.id
end
local class = ''
local url = ''
if property then
class = 'wd_' .. string.lower(property)
url = mw.uri.fullUrl('d:' .. id .. '#' .. property)
url.fragment = property
else
url = mw.uri.fullUrl('d:' .. id )
end
local title = conf:g('wikidata-linkback-edit')
local icon = '[%s [[File:Blue pencil.svg|%s|10px|text-top|link=]] ]'
url = tostring(url)
local v = mw.html.create('span')
:addClass(class)
:wikitext(str)
:tag('span')
:addClass('noprint plainlinks wikidata-linkback')
:css('padding-left', '.3em')
:wikitext(icon:format(url, title))
:allDone()
return tostring(v)
end
local function getArgument(frame, argument)
local args = frame.args
if args[1] == nil then
local pFrame = frame:getParent();
args = pFrame.args;
for k,v in pairs( frame.args ) do
args[k] = v;
end
end
if args[argument] then
return args[argument]
end
return nil
end
local function removeEntry(conf_claims, identifier, property)
for i, props in ipairs(conf_claims) do
if props[identifier] == property then
table.remove(conf_claims, i)
end
end
return conf_claims
end
function p.getLinks(frame)
local configured_conf = getArgument(frame, conf:a('arg-conf'))
if configured_conf then
cmodule = require ('Module:External links/conf/'..configured_conf)
else
error(mw.message.newRawMessage(conf:g('missing-conf'), configured_conf):plain())
end
local output = {}
local category = {}
local conf_claims = cmodule:getConfiguredClaims(contLang:getCode())
local limits = cmodule:getLimits()
assert(limits, mw.message.newRawMessage(conf:g('missing-limits'), configured_conf):plain())
local links_shown = getArgument(frame, conf:a('arg-maxlink'))
local pagetitle = getArgument(frame, conf:a('arg-title'))
-- get a list of tracked properties from the article itself
local requested_tracking = getArgument(frame, conf:a('arg-track'))
if requested_tracking and requested_tracking ~= '' then
-- the properties should be written as P1234, P2345 and other
-- version corresponding to the applicable property-identifiers in the config
for track_prop in string.gmatch(requested_tracking,"([^ ,;:]+)") do
-- get the requested properties and be able to access them
-- like req_prop['P345'] to verify if it was requested
local remove_track = string.match(track_prop, "^\-(.*)")
for i,claim in ipairs ( conf_claims ) do
if remove_track == claim.prop or remove_track == conf:a('mod-filter-all') then
-- if a property starts with "-", then we'll simply remove that
-- property from the conf_claims
conf_claims[i]['track'] = false
elseif track_prop == claim.prop or track_prop == conf:a('mod-filter-all') then
conf_claims[i]['track'] = true
end
end
end
end
-- get a list of "approved" properties from the article itself
local requested_properties = getArgument(frame, conf:a('arg-properties'))
--mw.log("requested_properties="..dump(requested_properties))
-- assume all properties are allowed
local req_prop = {}
local no_req_prop = false -- we'll allow properties to be filtered for now
if requested_properties and requested_properties ~= '' then
-- the properties should be written as P1234, P2345 and other
-- version corresponding to the applicable property-identifiers in the config
for i in string.gmatch(requested_properties,"([^ ,;:]+)") do
-- get the requested properties and be able to access them
-- like req_prop['P345'] to verify if it was requested
if i == conf:a('mod-filter-all') then
-- this is a special modifier, saying we should ignore
-- all previous and future positive filters and remove the
-- filter (with exception of negative filters)
req_prop = {}
no_req_prop = true
end
local remove_prop = string.match(i, "^\-(.*)")
if remove_prop then
-- if a property starts with "-", then we'll simply remove that
-- property from the conf_claims
conf_claims = removeEntry(conf_claims, 'prop', remove_prop)
elseif not no_req_prop then -- only if we are allowing properties to be filtered
req_prop[i] = 1
-- cheat to make #req_prop indicate populated table
req_prop[1] = 1
end
end
end
local requested_langs = getArgument(frame, conf:a('arg-languages'))
--mw.log("requested_langs="..dump(requested_langs))
-- assume all languages are allowed
local req_lang = {}
local no_req_lang = false -- we'll allow languages to be filtered for now
if requested_langs and requested_langs ~= '' then
-- the languages should be written as langcodes as used in the conf_claims
for i in string.gmatch(requested_langs,"([^ ,;:]+)") do
-- get the requested languages and be able to access them
if i == conf:a('mod-filter-all') then
-- this is a special modifier, saying we should ignore
-- all previous and future positive filters and remove the
-- filter (with exception of negative filters)
req_lang = {}
no_req_lang = true
end
-- like req_lang['en'] to verify if it was requested
local remove_lang = string.match(i, "^\-(.*)")
if remove_lang then
-- if a language starts with "-", then we'll simply remove that
-- language from the conf_claims
conf_claims = removeEntry(conf_claims, 'langcode', remove_lang)
elseif not no_req_lang then -- only if we are allowing languages to be filtered
req_lang[i] = 1
-- cheat to make #req_lang indicate populated table
req_lang[1] = 1
end
end
end
local short_links = getArgument(frame, conf:a('arg-short'))
if short_links and short_links ~= '' then
short_links = true
else
short_links = false
end
local showinline = getArgument(frame, conf:a('arg-inline'))
if showinline and showinline ~= '' then
showinline = true
else
showinline = false
end
if not links_shown or links_shown == '' then
links_shown = limits['links-shown'] and limits['links-shown'] or 10
else
links_shown = tonumber(links_shown)
end
local somedataonwikidata = (short_links and false or true)
--mw.log("conf_claims="..dump(conf_claims))
--mw.log("req_prop="..dump(req_prop))
--mw.log("req_lang="..dump(req_lang))
--mw.log("short_links="..dump(short_links))
for _, props in ipairs(conf_claims) do
-- if we're called with a list of approved properties or languages, check if this one is "approved"
if (#req_prop==0 or req_prop[props.prop]) and (#req_lang==0 or req_lang[props.langcode] or string.find(props.langcode, "([pP]%d+)")) then
--mw.log("checking claim="..dump(props))
local links = {}
local checkedonwikidata = false
-- get the any local overriding value from the call
local wikivalue = getArgument(frame, props.prop)
--mw.log("wikivalue="..dump(wikivalue))
if (not wikivalue or wikivalue == "") and string.find(props.prop, "([pP]%d+)") then
-- the property is a Pnnn type, and therefore on Wikidata
links = findMainLinksOnWikidata(props, pagetitle, short_links)
if links == nil then
-- a nil-value indicated no wikidata-link
haswikidatalink = false
links = {}
else
checkedonwikidata = true
end
elseif (not wikivalue or wikivalue == "") and string.find(props.prop, "(SL%l+)") then
-- this is a sitelink-type (SLspecieswiki)
--mw.log("finding sitelinks..")
links = findSiteLinksOnWikidata(props, pagetitle, short_links)
if links == nil then
-- a nil-value indicated no wikidata-link
haswikidatalink = false
links = {}
else
checkedonwikidata = true
end
elseif (wikivalue and wikivalue ~= "") and string.find(props.prop, "(SL%l+)") then
-- this is a sitelink-type (SLspecieswiki)
links = findSiteLinksLocal(props, pagetitle, short_links, wikivalue)
elseif wikivalue and wikivalue ~= '' then
-- the property is of another annotation, and therefore a local construct
links = findMainLinksLocal(props, pagetitle, short_links, wikivalue)
end
--mw.log("links="..dump(links))
for _,v in ipairs(links) do
-- we'll have to check langcodes again as they may have come from wikidata
if (#req_lang==0 or req_lang[v.langcode]) then
if checkedonwikidata and not hasdatafromwikidata then
-- add a general tracking category for articles with data from wikidata
hasdatafromwikidata = true
category[#category+1] = cmodule:getMessage(contLang:getCode(), 'with-data-cat')
elseif not checkedonwikidata and not hasdatafromlocal then
-- add a general tracking category for articles with data from template-calls in local articles
hasdatafromlocal = true
category[#category+1] = cmodule:getMessage(contLang:getCode(), 'with-local-cat')
end
if short_links and props.short and v.text and v.text ~= '' then
-- if short links were requested, and a short definition exists for this property, let's use it
if #output==0 then
output[#output+1] = v.text
else
output[#output] = output[#output] .. cmodule:getMessage(contLang:getCode(),'short-list-separator') .. v.text
end
somedataonwikidata = true
elseif not short_links and not showinline and v.text and v.text ~= '' then
-- only if short links were not requested
output[#output+1] = (#output>=1 and conf:g('msg-ul-prepend') or '') -- if this is the first link, we won't output a list-element (msg-ul-prepend)
.. (checkedonwikidata and addLinkback(v.text, props.prop) or v.text) -- if the link comes from wikidata, also output a linkback.
elseif not short_links and showinline and v.text and v.text ~= '' then
-- only if short links were not requested
output[#output+1] = v.text
end
if props.track and v.category and #v.category then
-- add category if tracking is on for this property and a category exists in the link-result.
for _,cats in ipairs( v.category ) do
category[#category+1] = cats
end
end
if links_shown>0 then
links_shown = links_shown - 1
else
break
end
end
end
if links_shown==0 then
break
end
end
end
local outtext = ""
if short_links and #output>0 then
-- if these are short links, output the whole thing with linkback to wikidata
--mw.log("somedataonwikidata="..dump(somedataonwikidata).." and output="..dump(output).." and #output="..dump(#output))
outtext = (somedataonwikidata
and addLinkback(table.concat(output,cmodule:getMessage(contLang:getCode(),'short-list-separator')), nil)
or table.concat(output,cmodule:getMessage(contLang:getCode(),'short-list-separator')))
elseif not short_links and not showinline and #output>0 then
outtext = table.concat(output,"\n")
elseif not short_links and showinline and #output>0 then
outtext = table.concat(output,conf:g('msg-inline-separator'))
end
if not hasdatafromwikidata then
category[#category+1] = cmodule:getMessage(contLang:getCode(), 'no-data-cat')
if not hasdatafromlocal and not short_links then
outtext = cmodule:getMessage(contLang:getCode(), 'no-data-text')
end
end
if not haswikidatalink then
category[#category+1] = cmodule:getMessage(contLang:getCode(), 'no-wikilink-cat')
if not hasdatafromlocal and not short_links then
outtext = cmodule:getMessage(contLang:getCode(), 'no-wikilink')
end
end
local nocategory = getArgument(frame, conf:a('arg-no-categories'))
category = #category>0 and "\n" .. table.concat(category,"\n") or ""
--mw.log("nocategory="..dump(nocategory).." and outtext="..dump(outtext).." and category="..dump(category))
outtext = outtext .. (nocategory and '' or category)
return outtext
end
function p.getLanguageCode(frame)
local prop = getArgument(frame, conf:a('arg-properties'))
local output = getLanguageData(prop)
return table.concat(output, conf:a('mod-filter-separator'))
end
return p
4zgeujlre7wtqqr14m9598rfsq2fnrn
Module:Example
828
3295
36477
2025-12-15T17:02:01Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.hello() return "Χαίρε κόσμε!" end setmetatable(p, { quickTests = function () if type(p.hello()) ~= 'string' then return false, 'υπήρξε ένα σφάλμα' end return true end } ) return p'
36477
Scribunto
text/plain
local p = {}
function p.hello()
return "Χαίρε κόσμε!"
end
setmetatable(p, {
quickTests = function ()
if type(p.hello()) ~= 'string' then return false, 'υπήρξε ένα σφάλμα' end
return true
end
} )
return p
0iyf8i9vcrz650rkdu1xv75edu52icl
Module:Expand wikitext
828
3296
36478
2025-12-15T17:02:40Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local yesno = require("Module:Yesno") function p.main(frame) local pframe = frame:getParent() local code = frame.args[1] if mw.text.trim(mw.text.killMarkers(code)) == "" or yesno(frame.args.unstrip) then code = mw.text.unstripNoWiki(code); end return pframe:preprocess(code) end return p'
36478
Scribunto
text/plain
local p = {}
local yesno = require("Module:Yesno")
function p.main(frame)
local pframe = frame:getParent()
local code = frame.args[1]
if mw.text.trim(mw.text.killMarkers(code)) == "" or yesno(frame.args.unstrip) then
code = mw.text.unstripNoWiki(code);
end
return pframe:preprocess(code)
end
return p
oyxkgldm8bb0spoz31nlwzp04g4l9dy
Πρότυπον:Coord/dec2dms/dms1
10
3297
36479
2025-12-15T17:04:15Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#expr:{{{1}}} mod 360}}°{{pad2digit|{{#expr:{{{1}}} * 60 mod 60}}}}′{{pad2digit|{{#expr:({{{1}}} * 36000 round 0) mod 600 / 10}}}}″<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>'
36479
wikitext
text/x-wiki
{{#expr:{{{1}}} mod 360}}°{{pad2digit|{{#expr:{{{1}}} * 60 mod 60}}}}′{{pad2digit|{{#expr:({{{1}}} * 36000 round 0) mod 600 / 10}}}}″<noinclude>[[Κατηγορίαν:Coord template]]</noinclude>
dz8qtqp43s1yar8irom3blrm24jubvm
Module:Wikidata/i18n
828
3298
36480
2025-12-15T17:05:04Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { categories = { ['arbitrary-data'] = '-', ['centenarians'] = '-', ['centenarians-living'] = '-', ['diff'] = '-', ['failed-age-computing'] = '-', ['missing-label'] = '-', ['not'] = '-', ['references'] = 'Έλεγχος:Παραπομπές από Wikidata', ['same'] = '-', ['used-property'] = 'Σελίδα που χρησιμοποιεί δεδομένα των Wikidata/%s', }, date = { ['start'] = 'από %s', ['e...'
36480
Scribunto
text/plain
return {
categories = {
['arbitrary-data'] = '-',
['centenarians'] = '-',
['centenarians-living'] = '-',
['diff'] = '-',
['failed-age-computing'] = '-',
['missing-label'] = '-',
['not'] = '-',
['references'] = 'Έλεγχος:Παραπομπές από Wikidata',
['same'] = '-',
['used-property'] = 'Σελίδα που χρησιμοποιεί δεδομένα των Wikidata/%s',
},
date = {
['start'] = 'από %s',
['end'] = 'έως %s',
['age'] = '$1 {{PLURAL:$2|έτους|ετών|let}}',
['in-the-age'] = 'στην ηλικία των $1 {{PLURAL:$2|ετών|let}}',
['gregorian'] = '<sup>[[Γρηγοριανό ημερολόγιο|γρηγ.]]</sup>',
['julian'] = '<sup>[[Ιουλιανό ημερολόγιο|ιουλ.]]</sup>',
['millenium'] = '$1η χιλιετία',
['millenium-linked'] = '$1η χιλιετία',
['millenium-BCE'] = '$1η χιλιετία π.Χ.',
['millenium-BCE-linked'] = '$1η χιλιετία π.Χ.',
['century'] = '$1ος αιώνας',
['century-linked'] = '$1ος αιώνας',
['century-BCE'] = '$1ος αιώνας π.Χ.',
['century-BCE-linked'] = '$1ος αιώνας π.Χ.',
['decade'] = 'Δεκαετία του $1',
--['decade-linked'] = 'Δεκαετία του $1',
['decade-BCE'] = 'Δεκαετία του $1 π.Χ.',
--['decade-BCE-linked'] = 'Δεκαετία του $1 π.Χ.',
['year'] = 'Y',
['year-linked'] = 'Y',
['year-BCE'] = 'Y" π.Χ."',
['year-BCE-linked'] = 'Y" π.Χ."',
['year-month'] = 'F Y',
['year-month-linked'] = 'F Y',
['year-month-BCE'] = 'F Y π.Χ."',
['year-month-BCE-linked'] = 'F Y π.Χ."',
['month-day'] = 'j" "xg',
['day'] = 'j',
['year-month-day'] = 'j " "xg Y',
['year-month-day-linked'] = 'j " "xg Y',
['year-month-day-BCE'] = 'j " "xg Y" π.Χ."',
['year-month-day-BCE-linked'] = 'j " "xg Y" π.Χ."',
},
errors = {
['entity-not-found'] = 'Η οντότητα δεν βρέθηκε',
['infobox-type-invalid'] = 'Μη έγκυρος τύπος τιμής στη σειρά %s: %s.',
['invalid-datatype'] = 'Εσφαλμένος τύπος δεδομένων ιδιοκτησίας «%s»: «%s»; απαιτείται «%s»', -- legacy
['invalid-datatype2'] = 'Η συνάρτηση «%s» απαιτεί τύπο δεδομένων «%s», δόθηκε «%s».' ,
['invalid-date'] = 'Μη έγκυρη ημερομηνία «%s»',
['invalid-field'] = 'Μη έγκυρο πεδίο «%s»',
['invalid-sort'] = 'Μη έγκυρη μέθοδος ταξινόμησης «%s»',
['param-not-provided'] = 'Μη προσδιορισμένη παράμετρος «%s»',
['unknown-claim-type'] = 'Άγνωστος τύπος δήλωσης: %s',
['unknown-datavalue-type'] = 'Άγνωστος τύπος τιμής δεδομένων: %s',
['unknown-entity-type'] = 'Άγνωστος τύπος οντότητας: %s',
['unknown-snak-type'] = 'Άγνωστος τύπος σνακ: %s',
},
lang = 'el',
['missing-label'] = 'Το λήμμα στα Wikidata δεν περιέχει ελληνική ετικέτα· μπορείτε να τη συμπληρώσετε',
['more-on-Wikidata'] = '… περισσότερα στα [[d:%s#%s|Wikidata]]',
novalue = "''χωρίς τιμή''", -- legacy
somevalue = "''άγνωστη τιμή''", -- legacy
['qualifiers separator'] = ', ',
}
eet7hes0xt0v5p40sdvlw2o3kyodo1b
Module:WikidataIB
828
3299
36481
2025-12-15T17:06:06Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Version: 2020-08-13 -- Module to implement use of a blacklist and whitelist for infobox fields -- Can take a named parameter |qid which is the Wikidata ID for the article -- if not supplied, it will use the Wikidata ID associated with the current page. -- Fields in blacklist are never to be displayed, i.e. module must return nil in all circumstances -- Fields in whitelist return local value if it exists or the Wikidata value otherwise -- The nam...'
36481
Scribunto
text/plain
-- Version: 2020-08-13
-- Module to implement use of a blacklist and whitelist for infobox fields
-- Can take a named parameter |qid which is the Wikidata ID for the article
-- if not supplied, it will use the Wikidata ID associated with the current page.
-- Fields in blacklist are never to be displayed, i.e. module must return nil in all circumstances
-- Fields in whitelist return local value if it exists or the Wikidata value otherwise
-- The name of the field that this function is called from is passed in named parameter |name
-- The name is compulsory when blacklist or whitelist is used,
-- so the module returns nil if it is not supplied.
-- blacklist is passed in named parameter |suppressfields (or |spf)
-- whitelist is passed in named parameter |fetchwikidata (or |fwd)
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:I18n/complex date, Module:ISOdate, Module:DateI18n (alternative for Module:Date),
-- Module:Formatnum, Module:I18n/date, Module:Yesno, Module:Linguistic, Module:Calendar
-- The following, taken from https://www.mediawiki.org/wiki/Wikibase/DataModel#Dates_and_times,
-- is needed to use Module:Complex date which seemingly requires date precision as a string.
-- It would work better if only the authors of the mediawiki page could spell 'millennium'.
local dp = {
[6] = "millennium",
[7] = "century",
[8] = "decade",
[9] = "year",
[10] = "month",
[11] = "day",
}
local i18n =
{
["errors"] =
{
["property-not-found"] = "Property not found.",
["No property supplied"] = "No property supplied",
["entity-not-found"] = "Wikidata entity not found.",
["unknown-claim-type"] = "Unknown claim type.",
["unknown-entity-type"] = "Unknown entity type.",
["qualifier-not-found"] = "Qualifier not found.",
["site-not-found"] = "Wikimedia project not found.",
["labels-not-found"] = "No labels found.",
["descriptions-not-found"] = "No descriptions found.",
["aliases-not-found"] = "No aliases found.",
["unknown-datetime-format"] = "Unknown datetime format.",
["local-article-not-found"] = "Article is available on Wikidata, but not on Wikipedia",
["dab-page"] = " (dab)",
},
["months"] =
{
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"
},
["century"] = "century",
["BC"] = "BC",
["BCE"] = "BCE",
["ordinal"] =
{
[1] = "st",
[2] = "nd",
[3] = "rd",
["default"] = "th"
},
["filespace"] = "File",
["Unknown"] = "Unknown",
["NaN"] = "Not a number",
-- set the following to the name of a tracking category,
-- e.g. "[[Category:Articles with missing Wikidata information]]", or "" to disable:
["missinginfocat"] = "[[Category:Articles with missing Wikidata information]]",
["editonwikidata"] = "Edit this on Wikidata",
["latestdatequalifier"] = function (date) return "before " .. date end,
-- some languages, e.g. Bosnian use a period as a suffix after each number in a date
["datenumbersuffix"] = "",
["list separator"] = ", ",
["multipliers"] = {
[0] = "",
[3] = " thousand",
[6] = " million",
[9] = " billion",
[12] = " trillion",
}
}
-- This allows an internationisation module to override the above table
if 'en' ~= mw.getContentLanguage():getCode() then
require("Module:i18n").loadI18n("Module:WikidataIB/i18n", i18n)
end
-- This piece of html implements a collapsible container. Check the classes exist on your wiki.
local collapsediv = '<div class="mw-collapsible mw-collapsed" style="width:100%; overflow:auto;" data-expandtext="{{int:show}}" data-collapsetext="{{int:hide}}">'
-- Some items should not be linked.
-- Each wiki can create a list of those in Module:WikidataIB/nolinks
-- It should return a table called itemsindex, containing true for each item not to be linked
local donotlink = {}
local nolinks_exists, nolinks = pcall(mw.loadData, "Module:WikidataIB/nolinks")
if nolinks_exists then
donotlink = nolinks.itemsindex
end
-- To satisfy Wikipedia:Manual of Style/Titles, certain types of items are italicised, and others are quoted.
-- The submodule [[Module:WikidataIB/titleformats]] lists the entity-ids used in 'instance of' (P31),
-- which allows this module to identify the values that should be formatted.
-- WikidataIB/titleformats exports a table p.formats, which is indexed by entity-id, and contains the value " or ''
local formats = {}
local titleformats_exists, titleformats = pcall(mw.loadData, "Module:WikidataIB/titleformats")
if titleformats_exists then
formats = titleformats.formats
end
-------------------------------------------------------------------------------
-- Private functions
-------------------------------------------------------------------------------
--
-------------------------------------------------------------------------------
-- makeOrdinal needs to be internationalised along with the above:
-- takes cardinal number as a numeric and returns the ordinal as a string
-- we need three exceptions in English for 1st, 2nd, 3rd, 21st, .. 31st, etc.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local makeOrdinal = function(cardinal)
local ordsuffix = i18n.ordinal.default
if cardinal % 10 == 1 then
ordsuffix = i18n.ordinal[1]
elseif cardinal % 10 == 2 then
ordsuffix = i18n.ordinal[2]
elseif cardinal % 10 == 3 then
ordsuffix = i18n.ordinal[3]
end
-- In English, 1, 21, 31, etc. use 'st', but 11, 111, etc. use 'th'
-- similarly for 12 and 13, etc.
if (cardinal % 100 == 11) or (cardinal % 100 == 12) or (cardinal % 100 == 13) then
ordsuffix = i18n.ordinal.default
end
return tostring(cardinal) .. ordsuffix
end
-------------------------------------------------------------------------------
-- findLang takes a "langcode" parameter if supplied and valid
-- otherwise it tries to create it from the user's set language ({{int:lang}})
-- failing that it uses the wiki's content language.
-- It returns a language object
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local findLang = function(langcode)
local langobj
langcode = mw.text.trim(langcode or "")
if mw.language.isKnownLanguageTag(langcode) then
langobj = mw.language.new( langcode )
else
langcode = mw.getCurrentFrame():preprocess( '{{int:lang}}' )
if mw.language.isKnownLanguageTag(langcode) then
langobj = mw.language.new( langcode )
else
langobj = mw.language.getContentLanguage()
end
end
return langobj
end
-------------------------------------------------------------------------------
-- _getItemLangCode takes a qid parameter (using the current page's qid if blank)
-- If the item for that qid has property country (P17) it looks at the first preferred value
-- If the country has an official language (P37), it looks at the first preferred value
-- If that official language has a language code (P424), it returns the first preferred value
-- Otherwise it returns nothing.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local _getItemLangCode = function(qid)
qid = mw.text.trim(qid or ""):upper()
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return end
local prop17 = mw.wikibase.getBestStatements(qid, "P17")[1]
if not prop17 or prop17.mainsnak.snaktype ~= "value" then return end
local qid17 = prop17.mainsnak.datavalue.value.id
local prop37 = mw.wikibase.getBestStatements(qid17, "P37")[1]
if not prop37 or prop37.mainsnak.snaktype ~= "value" then return end
local qid37 = prop37.mainsnak.datavalue.value.id
local prop424 = mw.wikibase.getBestStatements(qid37, "P424")[1]
if not prop424 or prop424.mainsnak.snaktype ~= "value" then return end
return prop424.mainsnak.datavalue.value
end
-------------------------------------------------------------------------------
-- roundto takes a number (x)
-- and returns it rounded to (sf) significant figures
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local roundto = function(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 it's integral, cast to an integer:
if x == math.floor(x) then x = math.floor(x) end
return x
end
-------------------------------------------------------------------------------
-- decimalToDMS takes a decimal degrees (x) with precision (p)
-- and returns degrees/minutes/seconds according to the precision
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local decimalToDMS = function(x, p)
-- if p is not supplied, use a precision around 0.1 seconds
if not tonumber(p) then p = 1e-4 end
local d = math.floor(x)
local ms = (x - d) * 60
if p > 0.5 then -- precision is > 1/2 a degree
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 -- precision is > 1/2 a minute
if s > 30 then m = m +1 end
s = 0
elseif p > 0.00014 then -- precision is > 1/2 a second
s = math.floor(s + 0.5)
elseif p > 0.000014 then -- precision is > 1/20 second
s = math.floor(10 * s + 0.5) / 10
elseif p > 0.0000014 then -- precision is > 1/200 second
s = math.floor(100 * s + 0.5) / 100
else -- cap it at 3 dec places for now
s = math.floor(1000 * s + 0.5) / 1000
end
return d, m, s
end
-------------------------------------------------------------------------------
-- decimalPrecision takes a decimal (x) with precision (p)
-- and returns x rounded approximately to the given precision
-- precision should be between 1 and 1e-6, preferably a power of 10.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local decimalPrecision = function(x, p)
local s = 1
if x < 0 then
x = -x
s = -1
end
-- if p is not supplied, pick an arbitrary precision
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 it's integral, cast to an integer:
if x == math.floor(x) then x = math.floor(x) end
-- if it's less than 1e-4, it will be in exponent form, so return a string with 6dp
-- 9e-5 becomes 0.000090
if math.abs(x) < 1e-4 then x = string.format("%f", x) end
return x
end
-------------------------------------------------------------------------------
-- formatDate takes a datetime of the usual format from mw.wikibase.entity:formatPropertyValues
-- like "1 August 30 BCE" as parameter 1
-- and formats it according to the df (date format) and bc parameters
-- df = ["dmy" / "mdy" / "y"] default will be "dmy"
-- bc = ["BC" / "BCE"] default will be "BCE"
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local format_Date = function(datetime, dateformat, bc)
local datetime = datetime or "1 August 30 BCE" -- in case of nil value
-- chop off multiple vales and/or any hours, mins, etc.
-- keep anything before punctuation - we just want a single date:
local dateval = string.match( datetime, "[%w ]+")
local dateformat = string.lower(dateformat or "dmy") -- default to dmy
local bc = string.upper(bc or "") -- can't use nil for bc
-- we only want to accept two possibilities: BC or default to BCE
if bc == "BC" then
bc = " " .. i18n["BC"] -- prepend a non-breaking space.
else
bc = " " .. i18n["BCE"]
end
local postchrist = true -- start by assuming no BCE
local dateparts = {}
for word in string.gmatch(dateval, "%w+") do
if word == "BCE" or word == "BC" then -- *** internationalise later ***
postchrist = false
else
-- we'll keep the parts that are not 'BCE' in a table
dateparts[#dateparts + 1] = word
end
end
if postchrist then bc = "" end -- set AD dates to no suffix *** internationalise later ***
local sep = " " -- separator is nbsp
local fdate = table.concat(dateparts, sep) -- set formatted date to same order as input
-- if we have day month year, check dateformat
if #dateparts == 3 then
if dateformat == "y" then
fdate = dateparts[3]
elseif dateformat == "mdy" then
fdate = dateparts[2] .. sep .. dateparts[1] .. "," .. sep .. dateparts[3]
end
elseif #dateparts == 2 and dateformat == "y" then
fdate = dateparts[2]
end
return fdate .. bc
end
-------------------------------------------------------------------------------
-- dateFormat is the handler for properties that are of type "time"
-- It takes timestamp, precision (6 to 11 per mediawiki), dateformat (y/dmy/mdy), BC format (BC/BCE),
-- a plaindate switch (yes/no/adj) to en/disable "sourcing circumstances"/use adjectival form,
-- any qualifiers for the property, the language, and any adjective to use like 'before'.
-- It passes the date through the "complex date" function
-- and returns a string with the internatonalised date formatted according to preferences.
-------------------------------------------------------------------------------
-- Dependencies: findLang(); cdate(); dp[]
-------------------------------------------------------------------------------
local dateFormat = function(timestamp, dprec, df, bcf, pd, qualifiers, lang, adj, model)
-- output formatting according to preferences (y/dmy/mdy/ymd)
df = (df or ""):lower()
-- if ymd is required, return the part of the timestamp in YYYY-MM-DD form
-- but apply Year zero#Astronomers fix: 1 BC = 0000; 2 BC = -0001; etc.
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
-- A year can be stored like this: "+1872-00-00T00:00:00Z",
-- which is processed here as if it were the day before "+1872-01-01T00:00:00Z",
-- and that's the last day of 1871, so the year is wrong.
-- So fix the month 0, day 0 timestamp to become 1 January instead:
timestamp = timestamp:gsub("%-00%-00T", "-01-01T")
-- just in case date precision is missing
dprec = dprec or 11
-- override more precise dates if required dateformat is year alone:
if df == "y" and dprec > 9 then dprec = 9 end
-- complex date only deals with precisions from 6 to 11, so clip range
dprec = dprec>11 and 11 or dprec
dprec = dprec<6 and 6 or dprec
-- BC format is "BC" or "BCE"
bcf = (bcf or ""):upper()
-- plaindate only needs the first letter (y/n/a)
pd = (pd or ""):sub(1,1):lower()
if pd == "" or pd == "n" or pd == "f" or pd == "0" then pd = false end
-- in case language isn't passed
lang = lang or findLang().code
-- set adj as empty if nil
adj = adj or ""
-- extract the day, month, year from the timestamp
local bc = timestamp:sub(1, 1)=="-" and "BC" or ""
local year, month, day = timestamp:match("[+-](%d*)-(%d*)-(%d*)T")
local iso = tonumber(year) -- if year is missing, let it throw an error
-- this will adjust the date format to be compatible with cdate
-- possible formats are Y, YY, YYY0, YYYY, YYYY-MM, YYYY-MM-DD
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
-- add "circa" (Q5727902) from "sourcing circumstances" (P1480)
local sc = not pd 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
-- deal with Julian dates:
-- no point in saying that dates before 1582 are Julian - they are by default
-- doesn't make sense for dates less precise than year
-- we can suppress it by setting |plaindate, e.g. for use in constructing categories.
local calendarmodel = ""
if tonumber(year) > 1582
and dprec > 8
and not pd
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 pd 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 pd == "a" then
fdate = fdate:gsub(' century', '-century')
end
return fdate
end
-------------------------------------------------------------------------------
-- parseParam takes a (string) parameter, e.g. from the list of frame arguments,
-- and makes "false", "no", and "0" into the (boolean) false
-- it makes the empty string and nil into the (boolean) value passed as default
-- allowing the parameter to be true or false by default.
-- It returns a boolean.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local parseParam = function(param, default)
if type(param) == "boolean" then param = tostring(param) end
if param and param ~= "" then
param = param:lower()
if (param == "false") or (param:sub(1,1) == "n") or (param == "0") then
return false
else
return true
end
else
return default
end
end
-------------------------------------------------------------------------------
-- _getSitelink takes the qid of a Wikidata entity passed as |qid=
-- It takes an optional parameter |wiki= to determine which wiki is to be checked for a sitelink
-- If the parameter is blank, then it uses the local wiki.
-- If there is a sitelink to an article available, it returns the plain text link to the article
-- If there is no sitelink, it returns nil.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local _getSitelink = function(qid, wiki)
qid = (qid or ""):upper()
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return nil end
wiki = wiki or ""
local sitelink
if wiki == "" then
sitelink = mw.wikibase.getSitelink(qid)
else
sitelink = mw.wikibase.getSitelink(qid, wiki)
end
return sitelink
end
-------------------------------------------------------------------------------
-- _getCommonslink takes an optional qid of a Wikidata entity passed as |qid=
-- It returns one of the following in order of preference:
-- the Commons sitelink of the Wikidata entity - but not if onlycat=true and it's not a category;
-- the Commons sitelink of the topic's main category of the Wikidata entity;
-- the Commons category of the Wikidata entity - unless fallback=false.
-------------------------------------------------------------------------------
-- Dependencies: _getSitelink(); parseParam()
-------------------------------------------------------------------------------
local _getCommonslink = function(qid, onlycat, fallback)
qid = (qid or ""):upper()
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return nil end
onlycat = parseParam(onlycat, false)
if fallback == "" then fallback = nil end
local sitelink = _getSitelink(qid, "commonswiki")
if onlycat and sitelink and sitelink:sub(1,9) ~= "Category:" then sitelink = nil end
if not sitelink then
-- check for topic's main category
local prop910 = mw.wikibase.getBestStatements(qid, "P910")[1]
if prop910 then
local tmcid = prop910.mainsnak.datavalue and prop910.mainsnak.datavalue.value.id
sitelink = _getSitelink(tmcid, "commonswiki")
end
if not sitelink then
-- check for list's main category
local prop1754 = mw.wikibase.getBestStatements(qid, "P1754")[1]
if prop1754 then
local tmcid = prop1754.mainsnak.datavalue and prop1754.mainsnak.datavalue.value.id
sitelink = _getSitelink(tmcid, "commonswiki")
end
end
end
if not sitelink and fallback then
-- check for Commons category (string value)
local prop373 = mw.wikibase.getBestStatements(qid, "P373")[1]
if prop373 then
sitelink = prop373.mainsnak.datavalue and prop373.mainsnak.datavalue.value
if sitelink then sitelink = "Category:" .. sitelink end
end
end
return sitelink
end
-------------------------------------------------------------------------------
-- The label in a Wikidata item is subject to vulnerabilities
-- that an attacker might try to exploit.
-- It needs to be 'sanitised' by removing any wikitext before use.
-- If it doesn't exist, return the id for the item
-- a second (boolean) value is also returned, value is true when the label exists
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local labelOrId = function(id, lang)
if lang == "default" then lang = findLang().code end
local label
if lang then
label = mw.wikibase.getLabelByLang(id, lang)
else
label = mw.wikibase.getLabel(id)
end
if label then
return mw.text.nowiki(label), true
else
return id, false
end
end
-------------------------------------------------------------------------------
-- linkedItem takes an entity-id and returns a string, linked if possible.
-- This is the handler for "wikibase-item". Preferences:
-- 1. Display linked disambiguated sitelink if it exists
-- 2. Display linked label if it is a redirect
-- 3. TBA: Display an inter-language link for the label if it exists other than in default language
-- 4. Display unlinked label if it exists
-- 5. Display entity-id for now to indicate a label could be provided
-- dtxt is text to be used instead of label, or nil.
-- shortname is boolean switch to use P1813 (short name) instead of label if true.
-- lang is the current language code.
-------------------------------------------------------------------------------
-- Dependencies: labelOrId(); donotlink[]
-------------------------------------------------------------------------------
local linkedItem = function(id, lprefix, lpostfix, prefix, postfix, dtxt, shortname, lang)
lprefix = lprefix or "" -- toughen against nil values passed
lpostfix = lpostfix or ""
prefix = prefix or ""
postfix = postfix or ""
lang = lang or "en" -- fallback to default if missing
-- see if item might need italics or quotes
local fmt = ""
for k, v in ipairs( mw.wikibase.getBestStatements(id, "P31") ) do
if v.mainsnak.datavalue and formats[v.mainsnak.datavalue.value.id] then
fmt = formats[v.mainsnak.datavalue.value.id]
break -- pick the first match
end
end
local disp
local sitelink = mw.wikibase.getSitelink(id)
local label, islabel
if dtxt then
label, islabel = dtxt, true
elseif shortname then
-- see if there is a shortname in our language, and set label to it
for k, v in ipairs( mw.wikibase.getBestStatements(id, "P1813") ) do
if v.mainsnak.datavalue.value.language == lang then
label, islabel = v.mainsnak.datavalue.value.text, true
break
end -- test for language match
end -- loop through values of short name
-- if we have no label set, then there was no shortname available
if not islabel then
label, islabel = labelOrId(id)
shortname = false
end
else
label, islabel = labelOrId(id)
end
if mw.site.siteName ~= "Wikimedia Commons" then
if sitelink then
if not (dtxt or shortname) then
-- strip any namespace or dab from the sitelink
local pos = sitelink:find(":") or 0
local slink = sitelink
if pos > 0 then
local prefix = sitelink:sub(1,pos-1)
if mw.site.namespaces[prefix] then -- that prefix is a valid namespace, so remove it
slink = sitelink:sub(pos+1)
end
end
-- remove stuff after commas or inside parentheses - ie. dabs
slink = slink:gsub("%s%(.+%)$", ""):gsub(",.+$", "")
-- use that as label, preserving label case - find("^%u") is true for 1st char uppercase
if label:find("^%u") then
label = slink:gsub("^(%l)", string.upper)
else
label = slink:gsub("^(%u)", string.lower)
end
end
if donotlink[label] then
disp = prefix .. fmt .. label .. fmt .. postfix
else
disp = "[[" .. lprefix .. sitelink .. lpostfix .. "|" .. prefix .. fmt .. label .. fmt .. postfix .. "]]"
end
elseif islabel then
-- no sitelink, label exists, so check if a redirect with that title exists
local artitle = mw.title.new(label, 0) -- only nil if label has invalid chars
if not donotlink[label] and artitle and artitle.redirectTarget then
-- there's a redirect with the same title as the label, so let's link to that
disp = "[[".. lprefix .. label .. lpostfix .. "|" .. prefix .. fmt .. label .. fmt .. postfix .. "]]"
else
-- either (donotlink is true) or (no sitelink, label exists, not redirect)
-- so output unlinked label with italics or quotes as needed
disp = prefix .. fmt .. label .. fmt .. postfix
end -- test if article title exists as redirect on current Wiki
else
-- no sitelink and no label, so return whatever was returned from labelOrId for now
-- add tracking category [[Category:Articles with missing Wikidata information]]
-- for enwiki, just return the tracking category
if mw.wikibase.getGlobalSiteId() == "enwiki" then
disp = i18n.missinginfocat
else
disp = prefix .. label .. postfix .. i18n.missinginfocat
end
end
else
local ccat = mw.wikibase.getBestStatements(id, "P373")[1]
if ccat and ccat.mainsnak.datavalue then
ccat = ccat.mainsnak.datavalue.value
disp = "[[" .. lprefix .. "Category:" .. ccat .. lpostfix .. "|" .. prefix .. label .. postfix .. "]]"
elseif sitelink then
-- this asumes that if a sitelink exists, then a label also exists
disp = "[[" .. lprefix .. sitelink .. lpostfix .. "|" .. prefix .. label .. postfix .. "]]"
else
-- no sitelink and no Commons cat, so return label from labelOrId for now
disp = prefix .. label .. postfix
end
end
return disp
end
-------------------------------------------------------------------------------
-- sourced takes a table representing a statement that may or may not have references
-- it looks for a reference sourced to something not containing the word "wikipedia"
-- it returns a boolean = true if it finds a sourced reference.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local sourced = function(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
-------------------------------------------------------------------------------
-- setRanks takes a flag (parameter passed) that requests the values to return
-- "b[est]" returns preferred if available, otherwise normal
-- "p[referred]" returns preferred
-- "n[ormal]" returns normal
-- "d[eprecated]" returns deprecated
-- multiple values are allowed, e.g. "preferred normal" (which is the default)
-- "best" will override the other flags, and set p and n
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local setRanks = function(rank)
rank = (rank or ""):lower()
-- if nothing passed, return preferred and normal
-- if rank == "" then rank = "p n" end
local ranks = {}
for w in string.gmatch(rank, "%a+") do
w = w:sub(1,1)
if w == "b" or w == "p" or w == "n" or w == "d" then
ranks[w] = true
end
end
-- check if "best" is requested or no ranks requested; and if so, set preferred and normal
if ranks.b or not next(ranks) then
ranks.p = true
ranks.n = true
end
return ranks
end
-------------------------------------------------------------------------------
-- parseInput processes the Q-id , the blacklist and the whitelist
-- if an input parameter is supplied, it returns that and ends the call.
-- it returns (1) either the qid or nil indicating whether or not the call should continue
-- and (2) a table containing all of the statements for the propertyID and relevant Qid
-- if "best" ranks are requested, it returns those instead of all non-deprecated ranks
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local parseInput = function(frame, input_parm, property_id)
-- There may be a local parameter supplied, if it's blank, set it to nil
input_parm = mw.text.trim(input_parm or "")
if input_parm == "" then input_parm = nil end
-- return nil if Wikidata is not available
if not mw.wikibase then return false, input_parm end
local args = frame.args
-- can take a named parameter |qid which is the Wikidata ID for the article.
-- if it's not supplied, use the id for the current page
local qid = args.qid or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
-- if there's no Wikidata item for the current page return nil
if not qid then return false, input_parm end
-- The blacklist is passed in named parameter |suppressfields
local blacklist = args.suppressfields or args.spf or ""
-- The whitelist is passed in named parameter |fetchwikidata
local whitelist = args.fetchwikidata or args.fwd or ""
if whitelist == "" then whitelist = "NONE" end
-- The name of the field that this function is called from is passed in named parameter |name
local fieldname = args.name or ""
if blacklist ~= "" then
-- The name is compulsory when blacklist is used, so return nil if it is not supplied
if fieldname == "" then return false, nil end
-- If this field is on the blacklist, then return nil
if blacklist:find(fieldname) then return false, nil end
end
-- If we got this far then we're not on the blacklist
-- The blacklist overrides any locally supplied parameter as well
-- If a non-blank input parameter was supplied return it
if input_parm then return false, input_parm end
-- We can filter out non-valid properties
if property_id:sub(1,1):upper() ~="P" or property_id == "P0" then return false, nil end
-- Otherwise see if this field is on the whitelist:
-- needs a bit more logic because find will return its second value = 0 if fieldname is ""
-- but nil if fieldname not found on whitelist
local _, found = whitelist:find(fieldname)
found = ((found or 0) > 0)
if whitelist ~= 'ALL' and (whitelist:upper() == "NONE" or not found) then
return false, nil
end
-- See what's on Wikidata (the call always returns a table, but it may be empty):
local props = {}
if args.reqranks.b then
props = mw.wikibase.getBestStatements(qid, property_id)
else
props = mw.wikibase.getAllStatements(qid, property_id)
end
if props[1] then
return qid, props
end
-- no property on Wikidata
return false, nil
end
-------------------------------------------------------------------------------
-- createicon assembles the "Edit at Wikidata" pen icon.
-- It returns a wikitext string inside a span class="penicon"
-------------------------------------------------------------------------------
-- Dependencies: i18n[];
-------------------------------------------------------------------------------
local createicon = function(langcode, entityID, propertyID)
local icon = " <span class='penicon'>[["
-- " <span data-bridge-edit-flow='overwrite' class='penicon'>[[" -> enable Wikidata Bridge
.. i18n["filespace"]
.. ":OOjs UI icon edit-ltr-progressive.svg |frameless |text-top |10px |alt="
.. i18n["editonwikidata"]
.. "|link=https://www.wikidata.org/wiki/" .. entityID
.. "?uselang=" .. langcode
if propertyID then icon = icon .. "#" .. propertyID end
icon = icon .. "|" .. i18n["editonwikidata"] .. "]]</span>"
return icon
end
-------------------------------------------------------------------------------
-- assembleoutput takes the sequence table containing the property values
-- and formats it according to switches given. It returns a string or nil.
-- It needs the entityID and propertyID to create a link in the pen icon.
-------------------------------------------------------------------------------
-- Dependencies: parseParam();
-------------------------------------------------------------------------------
local assembleoutput = function(out, args, entityID, propertyID)
-- sorted is a boolean passed to enable sorting of the values returned
-- if nothing or an empty string is passed set it false
-- if "false" or "no" or "0" is passed set it false
local sorted = parseParam(args.sorted, false)
-- noicon is a boolean passed to suppress the trailing "edit at Wikidata" icon
-- for use when the value is processed further by the infobox
-- if nothing or an empty string is passed set it false
-- if "false" or "no" or "0" is passed set it false
local noic = parseParam(args.noicon, false)
-- list is the name of a template that a list of multiple values is passed through
-- examples include "hlist" and "ubl"
-- setting it to "prose" produces something like "1, 2, 3, and 4"
local list = args.list or ""
-- sep is a string that is used to separate multiple returned values
-- if nothing or an empty string is passed set it to the default
-- any double-quotes " are stripped out, so that spaces may be passed
-- e.g. |sep=" - "
local sepdefault = i18n["list separator"]
local separator = args.sep or ""
separator = string.gsub(separator, '"', '')
if separator == "" then
separator = sepdefault
end
-- collapse is a number that determines the maximum number of returned values
-- before the output is collapsed.
-- Zero or not a number result in no collapsing (default becomes 0).
local collapse = tonumber(args.collapse) or 0
-- replacetext (rt) is a string that is returned instead of any non-empty Wikidata value
-- this is useful for tracking and debugging
local replacetext = mw.text.trim(args.rt or args.replacetext or "")
-- if there's anything to return, then return a list
-- comma-separated by default, but may be specified by the sep parameter
-- optionally specify a hlist or ubl or a prose list, etc.
local strout
if #out > 0 then
if sorted then table.sort(out) end
-- if there's something to display and a pen icon is wanted, add it the end of the last value
local hasdisplay = false
for i, v in ipairs(out) do
if v ~= i18n.missinginfocat then
hasdisplay = true
break
end
end
if not noic and hasdisplay then
out[#out] = out[#out] .. createicon(args.langobj.code, entityID, propertyID)
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
if collapse >0 and #out > collapse then
strout = collapsediv .. strout .. "</div>"
end
else
strout = nil -- no items had valid reference
end
if replacetext ~= "" and strout then strout = replacetext end
return strout
end
-------------------------------------------------------------------------------
-- rendersnak takes a table (propval) containing the information stored on one property value
-- and returns the value as a string and its language if monolingual text.
-- It handles data of type:
-- wikibase-item
-- time
-- string, url, commonsMedia, external-id
-- quantity
-- globe-coordinate
-- monolingualtext
-- It also requires linked, the link/pre/postfixes, uabbr, and the arguments passed from frame.
-- The optional filter parameter allows quantities to be be filtered by unit Qid.
-------------------------------------------------------------------------------
-- Dependencies: parseParam(); labelOrId(); i18n[]; dateFormat();
-- roundto(); decimalPrecision(); decimalToDMS(); linkedItem();
-------------------------------------------------------------------------------
local rendersnak = function(propval, args, linked, lpre, lpost, pre, post, uabbr, filter)
lpre = lpre or ""
lpost = lpost or ""
pre = pre or ""
post = post or ""
args.lang = args.lang or findLang().code
-- allow values to display a fixed text instead of label
local dtxt = args.displaytext or args.dt
if dtxt == "" then dtxt = nil end
-- switch to use display of short name (P1813) instead of label
local shortname = args.shortname or args.sn
shortname = parseParam(shortname, false)
local snak = propval.mainsnak or propval
local dtype = snak.datatype
local dv = snak.datavalue
dv = dv and dv.value
-- value and monolingual text language code returned
local val, mlt
if propval.rank and not args.reqranks[propval.rank:sub(1, 1)] then
-- val is nil: value has a rank that isn't requested
------------------------------------
elseif snak.snaktype == "somevalue" then -- value is unknown
val = i18n["Unknown"]
------------------------------------
elseif snak.snaktype == "novalue" then -- value is none
-- val = "No value" -- don't return anything
------------------------------------
elseif dtype == "wikibase-item" then -- data type is a wikibase item:
-- it's wiki-linked value, so output as link if enabled and possible
local qnumber = dv.id
if linked then
val = linkedItem(qnumber, lpre, lpost, pre, post, dtxt, shortname, args.lang)
else -- no link wanted so check for display-text, otherwise test for lang code
local label, islabel
if dtxt then
label = dtxt
else
label, islabel = labelOrId(qnumber)
local langlabel = mw.wikibase.getLabelByLang(qnumber, args.lang)
if langlabel then
label = mw.text.nowiki( langlabel )
end
end
val = pre .. label .. post
end -- test for link required
------------------------------------
elseif dtype == "time" then -- data type is time:
-- time is in timestamp format
-- date precision is integer per mediawiki
-- output formatting according to preferences (y/dmy/mdy)
-- BC format as BC or BCE
-- plaindate is passed to disable looking for "sourcing cirumstances"
-- or to set the adjectival form
-- qualifiers (if any) is a nested table or nil
-- lang is given, or user language, or site language
--
-- Here we can check whether args.df has a value
-- If not, use code from Module:Sandbox/RexxS/Getdateformat to set it from templates like {{Use mdy dates}}
val = dateFormat(dv.time, dv.precision, args.df, args.bc, args.pd, propval.qualifiers, args.lang, "", dv.calendarmodel)
------------------------------------
-- data types which are strings:
elseif dtype == "commonsMedia" or dtype == "external-id" or dtype == "string" or dtype == "url" then
-- commonsMedia or external-id or string or url
-- all have mainsnak.datavalue.value as string
if (lpre == "" or lpre == ":") and lpost == "" then
-- don't link if no linkpre/postfix or linkprefix is just ":"
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 -- check for link requested (i.e. either linkprefix or linkpostfix exists)
------------------------------------
-- data types which are quantities:
elseif dtype == "quantity" then
-- quantities have mainsnak.datavalue.value.amount and mainsnak.datavalue.value.unit
-- the unit is of the form http://www.wikidata.org/entity/Q829073
--
-- implement a switch to turn on/off numerical formatting later
local fnum = true
--
-- a switch to turn on/off conversions - only for en-wiki
local conv = parseParam(args.conv or args.convert, false)
-- if we have conversions, we won't have formatted numbers or scales
if conv then
uabbr = true
fnum = false
args.scale = "0"
end
--
-- a switch to turn on/off showing units, default is true
local showunits = parseParam(args.su or args.showunits, true)
--
-- convert amount to a number
local amount = tonumber(dv.amount) or i18n["NaN"]
--
-- scale factor for millions, billions, etc.
local sc = tostring(args.scale or ""):sub(1,1):lower()
local scale
if sc == "a" then
-- automatic scaling
if amount > 1e15 then
scale = 12
elseif amount > 1e12 then
scale = 9
elseif amount > 1e9 then
scale = 6
elseif amount > 1e6 then
scale = 3
else
scale = 0
end
else
scale = tonumber(args.scale) or 0
if scale < 0 or scale > 12 then scale = 0 end
scale = math.floor(scale/3) * 3
end
local factor = 10^scale
amount = amount / factor
-- ranges:
local range = ""
-- check if upper and/or lower bounds are given and significant
local upb = tonumber(dv.upperBound)
local lowb = tonumber(dv.lowerBound)
if upb and lowb then
-- differences rounded to 2 sig fig:
local posdif = roundto(upb - amount, 2) / factor
local negdif = roundto(amount - lowb, 2) / factor
upb, lowb = amount + posdif, amount - negdif
-- round scaled numbers to integers or 4 sig fig
if (scale > 0 or sc == "a") then
if amount < 1e4 then
amount = roundto(amount, 4)
else
amount = math.floor(amount + 0.5)
end
end
if fnum then amount = args.langobj:formatNum( amount ) end
if posdif ~= negdif then
-- non-symmetrical
range = " +" .. posdif .. " -" .. negdif
elseif posdif ~= 0 then
-- symmetrical and non-zero
range = " ±" .. posdif
else
-- otherwise range is zero, so leave it as ""
end
else
-- round scaled numbers to integers or 4 sig fig
if (scale > 0 or sc == "a") then
if amount < 1e4 then
amount = roundto(amount, 4)
else
amount = math.floor(amount + 0.5)
end
end
if fnum then amount = args.langobj:formatNum( amount ) end
end
-- unit names and symbols:
-- extract the qid in the form 'Qnnn' from the value.unit url
-- and then fetch the label from that - or symbol if unitabbr is true
local unit = ""
local usep = ""
local usym = ""
local unitqid = string.match( dv.unit, "(Q%d+)" )
if filter and unitqid ~= filter then return nil end
if unitqid and showunits then
local uname = mw.wikibase.getLabelByLang(unitqid, args.lang) or ""
if uname ~= "" then usep, unit = " ", uname end
if uabbr then
-- see if there's a unit symbol (P5061)
local unitsymbols = mw.wikibase.getBestStatements(unitqid, "P5061")
-- construct fallback table, add local lang and multiple languages
local fbtbl = mw.language.getFallbacksFor( args.lang )
table.insert( fbtbl, 1, args.lang )
table.insert( fbtbl, 1, "mul" )
local found = false
for idx1, us in ipairs(unitsymbols) do
for idx2, fblang in ipairs(fbtbl) do
if us.mainsnak.datavalue.value.language == fblang then
usym = us.mainsnak.datavalue.value.text
found = true
break
end
if found then break end
end -- loop through fallback table
end -- loop through values of P5061
if found then usep, unit = " ", usym end
end
end
-- format display:
if conv then
if range == "" then
val = mw.getCurrentFrame():expandTemplate{title = "cvt", args = {amount, unit}}
else
val = mw.getCurrentFrame():expandTemplate{title = "cvt", args = {lowb, "to", upb, unit}}
end
elseif unit == "$" or unit == "£" then
val = unit .. amount .. range .. i18n.multipliers[scale]
else
val = amount .. range .. i18n.multipliers[scale] .. usep .. unit
end
------------------------------------
-- datatypes which are global coordinates:
elseif dtype == "globe-coordinate" then
-- 'display' parameter defaults to "inline, title" *** unused for now ***
-- local disp = args.display or ""
-- if disp == "" then disp = "inline, title" end
--
-- format parameter switches from deg/min/sec to decimal degrees
-- default is deg/min/sec -- decimal degrees needs |format = dec
local form = (args.format or ""):lower():sub(1,3)
if form ~= "dec" then form = "dms" end -- not needed for now
--
-- show parameter allows just the latitude, or just the longitude, or both
-- to be returned as a signed decimal, ignoring the format parameter.
local show = (args.show or ""):lower()
if show ~= "longlat" then show = show:sub(1,3) end
--
local lat, long, prec = dv.latitude, dv.longitude, dv.precision
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 = "N"
local ew = "E"
if lat < 0 then
ns = "S"
lat = - lat
end
if long < 0 then
ew = "W"
long = - long
end
if form == "dec" then
lat = decimalPrecision(lat, prec)
long = decimalPrecision(long, prec)
val = lat .. "°" .. ns .. " " .. long .. "°" .. ew
else
local latdeg, latmin, latsec = decimalToDMS(lat, prec)
local longdeg, longmin, longsec = decimalToDMS(long, prec)
if latsec == 0 and longsec == 0 then
if latmin == 0 and longmin == 0 then
val = latdeg .. "°" .. ns .. " " .. longdeg .. "°" .. ew
else
val = latdeg .. "°" .. latmin .. "′" .. ns .. " "
val = val .. longdeg .. "°".. longmin .. "′" .. ew
end
else
val = latdeg .. "°" .. latmin .. "′" .. latsec .. "″" .. ns .. " "
val = val .. longdeg .. "°" .. longmin .. "′" .. longsec .. "″" .. ew
end
end
end
------------------------------------
elseif dtype == "monolingualtext" then -- data type is Monolingual text:
-- has mainsnak.datavalue.value as a table containing language/text pairs
-- collect all the values in 'out' and languages in 'mlt' and process them later
val = pre .. dv.text .. post
mlt = dv.language
------------------------------------
else
-- some other data type so write a specific handler
val = "unknown data type: " .. dtype
end -- of datatype/unknown value/sourced check
return val, mlt
end
-------------------------------------------------------------------------------
-- propertyvalueandquals takes a property object, the arguments passed from frame,
-- and a qualifier propertyID.
-- It returns a sequence (table) of values representing the values of that property
-- and qualifiers that match the qualifierID if supplied.
-------------------------------------------------------------------------------
-- Dependencies: parseParam(); sourced(); labelOrId(); i18n.latestdatequalifier(); format_Date();
-- makeOrdinal(); roundto(); decimalPrecision(); decimalToDMS(); assembleoutput();
-------------------------------------------------------------------------------
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 or args.osd, true)
-- 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 lprefix = (args.linkprefix or args.lp 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 lprefix
-- 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 wdl = parseParam(args.wdlinks or args.wdl, 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 uabbr = parseParam(args.unitabbr or args.uabbr, 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 or args.qo, 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
-- pd (plain date) is a string: yes/true/1 | no/false/0 | adj
-- to disable/enable "sourcing cirumstances" or use adjectival form for the plain date
local pd = args.plaindate or args.pd or "no"
args.pd = pd
-- allow qualifiers to have a different date format; default to year
args.qdf = args.qdf or args.qualifierdateformat or args.df or "y"
local lang = args.lang or findlang().code
-- 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 = {
["osd"] = "false",
["linked"] = tostring(linked),
["prefix"] = args.qprefix,
["postfix"] = args.qpostfix,
["linkprefix"] = args.qlinkprefix or args.qlp,
["linkpostfix"] = args.qlinkpostfix,
["wdl"] = "false",
["unitabbr"] = tostring(uabbr),
["maxvals"] = 0,
["sorted"] = tostring(args.qsorted),
["noicon"] = "true",
["list"] = args.qlist,
["sep"] = qsep,
["langobj"] = args.langobj,
["lang"] = args.langobj.code,
["df"] = args.qdf,
["sn"] = parseParam(args.qsn or 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
local datatype = objproperty[1].datatype or 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, lprefix, lpostfix, prefix, postfix, uabbr)
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.qdf, args.bc, pd, "", 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.qdf, args.bc, pd, "", 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
out[#out+1] = timestart .. dsep .. timeend
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
-------------------------------------------------------------------------------
-- Common code for p.getValueByQual and p.getValueByLang
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; assembleoutput;
-------------------------------------------------------------------------------
local _getvaluebyqual = function(frame, qualID, checkvalue)
-- The property ID that will have a qualifier is the first unnamed parameter
local propertyID = mw.text.trim(frame.args[1] or "")
if propertyID == "" then return "no property supplied" end
if qualID == "" then return "no qualifier supplied" end
-- onlysourced is a boolean passed to return property values
-- only when property values are sourced to something other than Wikipedia
-- if nothing or an empty string is passed set it true
-- if "false" or "no" or 0 is passed set it false
local onlysrc = parseParam(frame.args.onlysourced or frame.args.osd, true)
-- set the requested ranks flags
frame.args.reqranks = setRanks(frame.args.rank)
-- set a language object and code in the frame.args table
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
local args = frame.args
-- check for locally supplied parameter in second unnamed parameter
-- success means no local parameter and the property exists
local qid, props = parseInput(frame, args[2], propertyID)
local linked = parseParam(args.linked, true)
local lpre = (args.linkprefix or args.lp or ""):gsub('"', '')
local lpost = (args.linkpostfix or ""):gsub('"', '')
local pre = (args.prefix or ""):gsub('"', '')
local post = (args.postfix or ""):gsub('"', '')
local uabbr = parseParam(args.unitabbr or args.uabbr, false)
local filter = (args.unit or ""):upper()
if filter == "" then filter = nil end
if qid then
local out = {}
-- Scan through the values of the property
-- we want something like property is "pronunciation audio (P443)" in propertyID
-- with a qualifier like "language of work or name (P407)" in qualID
-- whose value has the required ID, like "British English (Q7979)", in qval
for k1, v1 in ipairs(props) do
if v1.mainsnak.snaktype == "value" then
-- check if it has the right qualifier
local v1q = v1.qualifiers
if v1q and v1q[qualID] then
if onlysrc == false or sourced(v1) then
-- if we've got this far, we have a (sourced) claim with qualifiers
-- so see if matches the required value
-- We'll only deal with wikibase-items and strings for now
if v1q[qualID][1].datatype == "wikibase-item" then
if checkvalue(v1q[qualID][1].datavalue.value.id) then
out[#out + 1] = rendersnak(v1, args, linked, lpre, lpost, pre, post, uabbr, filter)
end
elseif v1q[qualID][1].datatype == "string" then
if checkvalue(v1q[qualID][1].datavalue.value) then
out[#out + 1] = rendersnak(v1, args, linked, lpre, lpost, pre, post, uabbr, filter)
end
end
end -- of check for sourced
end -- of check for matching required value and has qualifiers
else
return nil
end -- of check for string
end -- of loop through values of propertyID
return assembleoutput(out, frame.args, qid, propertyID)
else
return props -- either local parameter or nothing
end -- of test for success
return nil
end
-------------------------------------------------------------------------------
-- _location takes Q-id and follows P276 (location)
-- or P131 (located in the administrative territorial entity) or P706 (located on terrain feature)
-- from the initial item to higher level territories/locations until it reaches the highest.
-- An optional boolean, 'first', determines whether the first item is returned (default: false).
-- An optional boolean 'skip' toggles the display to skip to the last item (default: false).
-- It returns a table containing the locations - linked where possible, except for the highest.
-------------------------------------------------------------------------------
-- Dependencies: findLang(); labelOrId(); linkedItem
-------------------------------------------------------------------------------
local _location = function(qid, first, skip)
first = parseParam(first, false)
skip = parseParam(skip, false)
local locs = {"P276", "P131", "P706"}
local out = {}
local langcode = findLang():getCode()
local finished = false
local count = 0
local prevqid = "Q0"
repeat
local prop
for i1, v1 in ipairs(locs) do
local proptbl = mw.wikibase.getBestStatements(qid, v1)
if #proptbl > 1 then
-- there is more than one higher location
local prevP131, prevP131id
if prevqid ~= "Q0" then
prevP131 = mw.wikibase.getBestStatements(prevqid, "P131")[1]
prevP131id = prevP131
and prevP131.mainsnak.datavalue
and prevP131.mainsnak.datavalue.value.id
end
for i2, v2 in ipairs(proptbl) do
parttbl = v2.qualifiers and v2.qualifiers.P518
if parttbl then
-- this higher location has qualifier 'applies to part' (P518)
for i3, v3 in ipairs(parttbl) do
if v3.snaktype == "value" and v3.datavalue.value.id == prevqid then
-- it has a value equal to the previous location
prop = proptbl[i2]
break
end -- of test for matching last location
end -- of loop through values of 'applies to part'
else
-- there's no qualifier 'applies to part' (P518)
-- so check if the previous location had a P131 that matches this alternate
if qid == prevP131id then
prop = proptbl[i2]
break
end -- of test for matching previous P131
end
end -- of loop through parent locations
-- fallback to second value if match not found
prop = prop or proptbl[2]
elseif #proptbl > 0 then
prop = proptbl[1]
end
if prop then break end
end
-- check if it's an instance of (P31) a country (Q6256) or sovereign state (Q3624078)
-- and terminate the chain if it is
local inst = mw.wikibase.getAllStatements(qid, "P31")
if #inst > 0 then
for k, v in ipairs(inst) do
local instid = v.mainsnak.datavalue.value.id
-- stop if it's a country (or a country within the United Kingdom if skip is true)
if instid == "Q6256" or instid == "Q3624078" or (skip and instid == "Q3336843") then
prop = nil -- this will ensure this is treated as top-level location
break
end
end
end
-- get the name of this location and update qid to point to the parent location
if prop and prop.mainsnak.datavalue then
if not skip or count == 0 then
out[#out+1] = linkedItem(qid, ":", "", "", "") -- get a linked value if we can
end
qid, prevqid = prop.mainsnak.datavalue.value.id, qid
else
-- This is top-level location, so get short name except when this is the first item
-- Use full label if there's no short name or this is the first item
local prop1813 = mw.wikibase.getAllStatements(qid, "P1813")
-- if there's a short name and this isn't the only item
if prop1813[1] and (#out > 0)then
local shortname
-- short name is monolingual text, so look for match to the local language
-- choose the shortest 'short name' in that language
for k, v in pairs(prop1813) do
if v.mainsnak.datavalue.value.language == langcode then
local name = v.mainsnak.datavalue.value.text
if (not shortname) or (#name < #shortname) then
shortname = name
end
end
end
-- add the shortname if one is found, fallback to the label
-- but skip it if it's "USA"
if shortname ~= "USA" then
out[#out+1] = shortname or labelOrId(qid)
else
if skip then out[#out+1] = "US" end
end
else
-- no shortname, so just add the label
local loc = labelOrId(qid)
-- exceptions go here:
if loc == "United States of America" then
out[#out+1] = "United States"
else
out[#out+1] = loc
end
end
finished = true
end
count = count + 1
until finished or count >= 10 -- limit to 10 levels to avoid infinite loops
-- remove the first location if not required
if not first then table.remove(out, 1) end
-- we might have duplicate text for consecutive locations, so remove them
if #out > 2 then
local plain = {}
for i, v in ipairs(out) do
-- strip any links
plain[i] = v:gsub("^%[%[[^|]*|", ""):gsub("]]$", "")
end
local idx = 2
repeat
if plain[idx] == plain[idx-1] then
-- duplicate found
local removeidx = 0
if (plain[idx] ~= out[idx]) and (plain[idx-1] == out[idx-1]) then
-- only second one is linked, so drop the first
removeidx = idx - 1
elseif (plain[idx] == out[idx]) and (plain[idx-1] ~= out[idx-1]) then
-- only first one is linked, so drop the second
removeidx = idx
else
-- pick one
removeidx = idx - (os.time()%2)
end
table.remove(out, removeidx)
table.remove(plain, removeidx)
else
idx = idx +1
end
until idx >= #out
end
return out
end
-------------------------------------------------------------------------------
-- _getsumofparts scans the property 'has part' (P527) for values matching a list.
-- The list (args.vlist) consists of a string of Qids separated by spaces or any usual punctuation.
-- If the matched values have a qualifer 'quantity' (P1114), those quantites are summed.
-- The sum is returned as a number (i.e. 0 if none)
-- a table of arguments is supplied implementing the usual parameters.
-------------------------------------------------------------------------------
-- Dependencies: setRanks; parseParam; parseInput; sourced; assembleoutput;
-------------------------------------------------------------------------------
local _getsumofparts = function(args)
local vallist = (args.vlist or ""):upper()
if vallist == "" then return end
args.reqranks = setRanks(args.rank)
local f = {}
f.args = args
local qid, props = parseInput(f, "", "P527")
if not qid then return 0 end
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local sum = 0
for k1, v1 in ipairs(props) do
if (onlysrc == false or sourced(v1))
and v1.mainsnak.snaktype == "value"
and v1.mainsnak.datavalue.type == "wikibase-entityid"
and vallist:match( v1.mainsnak.datavalue.value.id )
and v1.qualifiers
then
local quals = v1.qualifiers["P1114"]
if quals then
for k2, v2 in ipairs(quals) do
sum = sum + v2.datavalue.value.amount
end
end
end
end
return sum
end
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-- Public functions
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-- _getValue makes the functionality of getValue available to other modules
-------------------------------------------------------------------------------
-- Dependencies: setRanks; parseInput; propertyvalueandquals; assembleoutput; parseParam; sourced;
-- labelOrId; i18n.latestdatequalifier; format_Date; makeOrdinal; roundto; decimalPrecision; decimalToDMS;
-------------------------------------------------------------------------------
p._getValue = function(args)
-- parameter sets for commonly used groups of parameters
local paraset = tonumber(args.ps or args.parameterset or 0)
if paraset == 1 then
-- a common setting
args.rank = "best"
args.fetchwikidata = "ALL"
args.onlysourced = "no"
args.noicon = "true"
elseif paraset == 2 then
-- equivalent to raw
args.rank = "best"
args.fetchwikidata = "ALL"
args.onlysourced = "no"
args.noicon = "true"
args.linked = "no"
args.pd = "true"
elseif paraset == 3 then
-- third set goes here
end
-- implement eid parameter
local eid = args.eid
if eid == "" then
return nil
elseif eid then
args.qid = eid
end
local propertyID = mw.text.trim(args[1] or "")
args.reqranks = setRanks(args.rank)
-- replacetext (rt) is a string that is returned instead of any non-empty Wikidata value
-- this is useful for tracking and debugging, so we set fetchwikidata=ALL to fill the whitelist
local replacetext = mw.text.trim(args.rt or args.replacetext or "")
if replacetext ~= "" then
args.fetchwikidata = "ALL"
end
local f = {}
f.args = args
local entityid, props = parseInput(f, f.args[2], propertyID)
if not entityid then
return props -- either the input parameter or nothing
end
-- qual is a string containing the property ID of the qualifier(s) to be returned
-- if qual == "ALL" then all qualifiers returned
-- if qual == "DATES" then qualifiers P580 (start time) and P582 (end time) returned
-- if nothing or an empty string is passed set it nil -> no qualifiers returned
local qualID = mw.text.trim(args.qual or ""):upper()
if qualID == "" then qualID = nil end
-- set a language object and code in the args table
args.langobj = findLang(args.lang)
args.lang = args.langobj.code
-- table 'out' stores the return value(s):
local out = propertyvalueandquals(props, args, qualID)
-- format the table of values and return it as a string:
return assembleoutput(out, args, entityid, propertyID)
end
-------------------------------------------------------------------------------
-- getValue is used to get the value(s) of a property
-- The property ID is passed as the first unnamed parameter and is required.
-- A locally supplied parameter may optionaly be supplied as the second unnamed parameter.
-- The function will now also return qualifiers if parameter qual is supplied
-------------------------------------------------------------------------------
-- Dependencies: _getValue; setRanks; parseInput; propertyvalueandquals; assembleoutput; parseParam; sourced;
-- labelOrId; i18n.latestdatequalifier; format_Date; makeOrdinal; roundto; decimalPrecision; decimalToDMS;
-------------------------------------------------------------------------------
p.getValue = function(frame)
local args= frame.args
if not args[1] then
args = frame:getParent().args
if not args[1] then return i18n.errors["No property supplied"] end
end
return p._getValue(args)
end
-------------------------------------------------------------------------------
-- getPreferredValue is used to get a value,
-- (or a comma separated list of them if multiple values exist).
-- If preferred ranks are set, it will return those values, otherwise values with normal ranks
-- now redundant to getValue with |rank=best
-------------------------------------------------------------------------------
-- Dependencies: p.getValue; setRanks; parseInput; propertyvalueandquals; assembleoutput;
-- parseParam; sourced; labelOrId; i18n.latestdatequalifier; format_Date;
-- makeOrdinal; roundto; decimalPrecision; decimalToDMS;
-------------------------------------------------------------------------------
p.getPreferredValue = function(frame)
frame.args.rank = "best"
return p.getValue(frame)
end
-------------------------------------------------------------------------------
-- getCoords is used to get coordinates for display in an infobox
-- whitelist and blacklist are implemented
-- optional 'display' parameter is allowed, defaults to "inline, title"
-------------------------------------------------------------------------------
-- Dependencies: setRanks(); parseInput(); decimalPrecision();
-------------------------------------------------------------------------------
p.getCoords = function(frame)
local propertyID = "P625"
-- if there is a 'display' parameter supplied, use it
-- otherwise default to "inline, title"
local disp = frame.args.display or ""
if disp == "" then
disp = "inline, title"
end
-- there may be a format parameter to switch from deg/min/sec to decimal degrees
-- default is deg/min/sec
-- decimal degrees needs |format = dec
local form = (frame.args.format or ""):lower():sub(1,3)
if form ~= "dec" then
form = "dms"
end
-- just deal with best values
frame.args.reqranks = setRanks("best")
local qid, props = parseInput(frame, frame.args[1], propertyID)
if not qid then
return props -- either local parameter or nothing
else
local dv = props[1].mainsnak.datavalue.value
local lat, long, prec = dv.latitude, dv.longitude, dv.precision
lat = decimalPrecision(lat, prec)
long = decimalPrecision(long, prec)
local lat_long = { lat, long }
lat_long["display"] = disp
lat_long["format"] = form
-- invoke template Coord with the values stored in the table
return frame:expandTemplate{title = 'coord', args = lat_long}
end
end
-------------------------------------------------------------------------------
-- getQualifierValue is used to get a formatted value of a qualifier
--
-- The call needs: a property (the unnamed parameter or 1=)
-- a target value for that property (pval=)
-- a qualifier for that target value (qual=)
-- The usual whitelisting and blacklisting of the property is implemented
-- The boolean onlysourced= parameter can be set to return nothing
-- when the property is unsourced (or only sourced to Wikipedia)
-------------------------------------------------------------------------------
-- Dependencies: parseParam(); setRanks(); parseInput(); sourced();
-- propertyvalueandquals(); assembleoutput();
-- labelOrId(); i18n.latestdatequalifier(); format_Date();
-- findLang(); makeOrdinal(); roundto(); decimalPrecision(); decimalToDMS();
-------------------------------------------------------------------------------
p.getQualifierValue = function(frame)
-- The property ID that will have a qualifier is the first unnamed parameter
local propertyID = mw.text.trim(frame.args[1] or "")
-- The value of the property we want to match whose qualifier value is to be returned
-- is passed in named parameter |pval=
local propvalue = frame.args.pval
-- The property ID of the qualifier
-- whose value is to be returned is passed in named parameter |qual=
local qualifierID = frame.args.qual
-- onlysourced is a boolean passed to return qualifiers
-- only when property values are sourced to something other than Wikipedia
-- if nothing or an empty string is passed set it true
-- if "false" or "no" or 0 is passed set it false
local onlysrc = parseParam(frame.args.onlysourced or frame.args.osd, true)
-- set a language object and language code in the frame.args table
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
-- set the requested ranks flags
frame.args.reqranks = setRanks(frame.args.rank)
-- check for locally supplied parameter in second unnamed parameter
-- success means no local parameter and the property exists
local qid, props = parseInput(frame, frame.args[2], propertyID)
if qid then
local out = {}
-- Scan through the values of the property
-- we want something like property is P793, significant event (in propertyID)
-- whose value is something like Q385378, construction (in propvalue)
-- then we can return the value(s) of a qualifier such as P580, start time (in qualifierID)
for k1, v1 in pairs(props) do
if v1.mainsnak.snaktype == "value" and v1.mainsnak.datavalue.type == "wikibase-entityid" then
-- It's a wiki-linked value, so check if it's the target (in propvalue)
-- and if it has qualifiers
if v1.mainsnak.datavalue.value.id == propvalue and v1.qualifiers then
if onlysrc == false or sourced(v1) then
-- if we've got this far, we have a (sourced) claim with qualifiers
-- which matches the target, so find the value(s) of the qualifier we want
local quals = v1.qualifiers[qualifierID]
if quals then
-- can't reference qualifer, so set onlysourced = "no" (not boolean)
local qargs = frame.args
qargs.onlysourced = "no"
local vals = propertyvalueandquals(quals, qargs, qid)
for k, v in ipairs(vals) do
out[#out + 1] = v
end
end
end -- of check for sourced
end -- of check for matching required value and has qualifiers
end -- of check for wikibase entity
end -- of loop through values of propertyID
return assembleoutput(out, frame.args, qid, propertyID)
else
return props -- either local parameter or nothing
end -- of test for success
return nil
end
-------------------------------------------------------------------------------
-- getSumOfParts scans the property 'has part' (P527) for values matching a list.
-- The list is passed in parameter vlist.
-- It consists of a string of Qids separated by spaces or any usual punctuation.
-- If the matched values have a qualifier 'quantity' (P1114), those quantities are summed.
-- The sum is returned as a number or nothing if zero.
-------------------------------------------------------------------------------
-- Dependencies: _getsumofparts;
-------------------------------------------------------------------------------
p.getSumOfParts = function(frame)
local sum = _getsumofparts(frame.args)
if sum == 0 then return end
return sum
end
-------------------------------------------------------------------------------
-- getValueByQual gets the value of a property which has a qualifier with a given entity value
-- The call needs:
-- a property ID (the unnamed parameter or 1=Pxxx)
-- the ID of a qualifier for that property (qualID=Pyyy)
-- either the Wikibase-entity ID of a value for that qualifier (qvalue=Qzzz)
-- or a string value for that qualifier (qvalue=abc123)
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-------------------------------------------------------------------------------
-- Dependencies: _getvaluebyqual; parseParam; setRanks; parseInput; sourced;
-- assembleoutput;
-------------------------------------------------------------------------------
p.getValueByQual = function(frame)
local qualID = frame.args.qualID
-- The Q-id of the value for the qualifier we want to match is in named parameter |qvalue=
local qval = frame.args.qvalue or ""
if qval == "" then return "no qualifier value supplied" end
local function checkQID(id)
return id == qval
end
return _getvaluebyqual(frame, qualID, checkQID)
end
-------------------------------------------------------------------------------
-- getValueByLang gets the value of a property which has a qualifier P407
-- ("language of work or name") whose value has the given language code
-- The call needs:
-- a property ID (the unnamed parameter or 1=Pxxx)
-- the MediaWiki language code to match the language (lang=xx[-yy])
-- (if no code is supplied, it uses the default language)
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-------------------------------------------------------------------------------
-- Dependencies: _getvaluebyqual; parseParam; setRanks; parseInput; sourced; assembleoutput;
-------------------------------------------------------------------------------
p.getValueByLang = function(frame)
-- The language code for the qualifier we want to match is in named parameter |lang=
local langcode = findLang(frame.args.lang).code
local function checkLanguage(id)
-- id should represent a language like "British English (Q7979)"
-- it should have string property "Wikimedia language code (P424)"
-- qlcode will be a table:
local qlcode = mw.wikibase.getBestStatements(id, "P424")
if (#qlcode > 0) and (qlcode[1].mainsnak.datavalue.value == langcode) then
return true
end
end
return _getvaluebyqual(frame, "P407", checkLanguage)
end
-------------------------------------------------------------------------------
-- getValueByRefSource gets the value of a property which has a reference "stated in" (P248)
-- whose value has the given entity-ID.
-- The call needs:
-- a property ID (the unnamed parameter or 1=Pxxx)
-- the entity ID of a value to match where the reference is stated in (match=Qzzz)
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p.getValueByRefSource = function(frame)
-- The property ID that we want to check is the first unnamed parameter
local propertyID = mw.text.trim(frame.args[1] or ""):upper()
if propertyID == "" then return "no property supplied" end
-- The Q-id of the value we want to match is in named parameter |qvalue=
local qval = (frame.args.match or ""):upper()
if qval == "" then qval = "Q21540096" end
local unit = (frame.args.unit or ""):upper()
if unit == "" then unit = "Q4917" end
local onlysrc = parseParam(frame.args.onlysourced or frame.args.osd, true)
-- set the requested ranks flags
frame.args.reqranks = setRanks(frame.args.rank)
-- set a language object and code in the frame.args table
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
local linked = parseParam(frame.args.linked, true)
local uabbr = parseParam(frame.args.uabbr or frame.args.unitabbr, false)
-- qid not nil means no local parameter and the property exists
local qid, props = parseInput(frame, frame.args[2], propertyID)
if qid then
local out = {}
local mlt= {}
for k1, v1 in ipairs(props) do
if onlysrc == false or sourced(v1) then
if v1.references then
for k2, v2 in ipairs(v1.references) do
if v2.snaks.P248 then
for k3, v3 in ipairs(v2.snaks.P248) do
if v3.datavalue.value.id == qval then
out[#out+1], mlt[#out+1] = rendersnak(v1, frame.args, linked, "", "", "", "", uabbr, unit)
if not mlt[#out] then
-- we only need one match per property value
-- unless datatype was monolingual text
break
end
end -- of test for match
end -- of loop through values "stated in"
end -- of test that "stated in" exists
end -- of loop through references
end -- of test that references exist
end -- of test for sourced
end -- of loop through values of propertyID
if #mlt > 0 then
local langcode = frame.args.lang
langcode = mw.text.split( langcode, '-', true )[1]
local fbtbl = mw.language.getFallbacksFor( langcode )
table.insert( fbtbl, 1, langcode )
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 assembleoutput(out, frame.args, qid, propertyID)
else
return props -- no property or local parameter supplied
end -- of test for success
end
-------------------------------------------------------------------------------
-- getPropertyIDs takes most of the usual parameters.
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented.
-- It returns the Entity-IDs (Qids) of the values of a property if it is a Wikibase-Entity.
-- Otherwise it returns nothing.
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p.getPropertyIDs = function(frame)
local args = frame.args
args.reqranks = setRanks(args.rank)
args.langobj = findLang(args.lang)
args.lang = args.langobj.code
-- change default for noicon to true
args.noicon = tostring(parseParam(args.noicon or "", true))
local f = {}
f.args = args
local pid = mw.text.trim(args[1] or ""):upper()
-- get the qid and table of claims for the property, or nothing and the local value passed
local qid, props = parseInput(f, args[2], pid)
if not qid then return props end
if not props[1] then return nil end
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local maxvals = tonumber(args.maxvals) or 0
out = {}
for i, v in ipairs(props) do
local snak = v.mainsnak
if ( snak.datatype == "wikibase-item" )
and ( v.rank and args.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 assembleoutput(out, args, qid, pid)
end
-------------------------------------------------------------------------------
-- getQualifierIDs takes most of the usual parameters.
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented.
-- It takes a property-id as the first unnamed parameter, and an optional parameter qlist
-- which is a list of qualifier property-ids to search for (default is "ALL")
-- It returns the Entity-IDs (Qids) of the values of a property if it is a Wikibase-Entity.
-- Otherwise it returns nothing.
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p.getQualifierIDs = function(frame)
local args = frame.args
args.reqranks = setRanks(args.rank)
args.langobj = findLang(args.lang)
args.lang = args.langobj.code
-- change default for noicon to true
args.noicon = tostring(parseParam(args.noicon or "", true))
local f = {}
f.args = args
local pid = mw.text.trim(args[1] or ""):upper()
-- get the qid and table of claims for the property, or nothing and the local value passed
local qid, props = parseInput(f, args[2], pid)
if not qid then return props end
if not props[1] then return nil end
-- get the other parameters
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local maxvals = tonumber(args.maxvals) or 0
local qlist = args.qlist or ""
if qlist == "" then qlist = "ALL" end
qlist = qlist:gsub("[%p%s]+", " ") .. " "
out = {}
for i, v in ipairs(props) do
local snak = v.mainsnak
if ( v.rank and args.reqranks[v.rank:sub(1, 1)] )
and ( snak.snaktype == "value" )
and ( sourced(v) or not onlysrc )
then
if v.qualifiers then
for k1, v1 in pairs(v.qualifiers) do
if qlist == "ALL " or qlist:match(k1 .. " ") then
for i2, v2 in ipairs(v1) do
if v2.datatype == "wikibase-item" and v2.snaktype == "value" then
out[#out+1] = v2.datavalue.value.id
end -- of test that id exists
end -- of loop through qualifier values
end -- of test for kq in qlist
end -- of loop through qualifiers
end -- of test for qualifiers
end -- of test for rank value, sourced, and value exists
if maxvals > 0 and #out >= maxvals then break end
end -- of loop through property values
return assembleoutput(out, args, qid, pid)
end
-------------------------------------------------------------------------------
-- getPropOfProp takes two propertyIDs: prop1 and prop2 (as well as the usual parameters)
-- If the value(s) of prop1 are of type "wikibase-item" then it returns the value(s) of prop2
-- of each of those wikibase-items.
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p.getPropOfProp = function(frame)
frame.args.reqranks = setRanks(frame.args.rank)
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
local args = frame.args
local pid1 = args.prop1 or args.pid1 or ""
local pid2 = args.prop2 or args.pid2 or ""
local localval = mw.text.trim(args[1] or "")
if pid1 == "" or pid2 == "" then return nil end
local qid1, statements1 = parseInput(frame, localval, pid1)
if not qid1 then return localval end
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local maxvals = tonumber(args.maxvals) or 0
local qualID = mw.text.trim(args.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = {}
for k, v in ipairs(statements1) do
if not onlysrc or sourced(v) then
local snak = v.mainsnak
if snak.datatype == "wikibase-item" and snak.snaktype == "value" then
local qid2 = snak.datavalue.value.id
local statements2 = {}
if args.reqranks.b then
statements2 = mw.wikibase.getBestStatements(qid2, pid2)
else
statements2 = mw.wikibase.getAllStatements(qid2, pid2)
end
if statements2[1] then
local out2 = propertyvalueandquals(statements2, args, qualID)
out[#out+1] = assembleoutput(out2, args, qid2, pid2)
end
end -- of test for valid property1 value
end -- of test for sourced
if maxvals > 0 and #out >= maxvals then break end
end -- of loop through values of property1
return assembleoutput(out, args, qid1, pid1)
end
-------------------------------------------------------------------------------
-- getAwardCat takes most of the usual parameters. If the item has values of P166 (award received),
-- then it examines each of those awards for P2517 (category for recipients of this award).
-- If it exists, it returns the corresponding category,
-- with the item's P734 (family name) as sort key, or no sort key if there is no family name.
-- The sort key may be overridden by the parameter |sortkey (alias |sk).
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p.getAwardCat = function(frame)
frame.args.reqranks = setRanks(frame.args.rank)
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
local args = frame.args
args.sep = " "
local pid1 = args.prop1 or "P166"
local pid2 = args.prop2 or "P2517"
if pid1 == "" or pid2 == "" then return nil end
-- locally supplied value:
local localval = mw.text.trim(args[1] or "")
local qid1, statements1 = parseInput(frame, localval, pid1)
if not qid1 then return localval end
-- linkprefix (strip quotes)
local lp = (args.linkprefix or args.lp or ""):gsub('"', '')
-- sort key (strip quotes, hyphens and periods):
local sk = (args.sortkey or args.sk or ""):gsub('["-.]', '')
-- family name:
local famname = ""
if sk == "" then
local p734 = mw.wikibase.getBestStatements(qid1, "P734")[1]
local p734id = p734 and p734.mainsnak.snaktype == "value" and p734.mainsnak.datavalue.value.id or ""
famname = mw.wikibase.getSitelink(p734id) or ""
-- strip namespace and disambigation
local pos = famname:find(":") or 0
famname = famname:sub(pos+1):gsub("%s%(.+%)$", "")
if famname == "" then
local lbl = mw.wikibase.getLabel(p734id)
famname = lbl and mw.text.nowiki(lbl) or ""
end
end
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local maxvals = tonumber(args.maxvals) or 0
local qualID = mw.text.trim(args.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = {}
for k, v in ipairs(statements1) do
if not onlysrc or sourced(v) then
local snak = v.mainsnak
if snak.datatype == "wikibase-item" and snak.snaktype == "value" then
local qid2 = snak.datavalue.value.id
local statements2 = {}
if args.reqranks.b then
statements2 = mw.wikibase.getBestStatements(qid2, pid2)
else
statements2 = mw.wikibase.getAllStatements(qid2, pid2)
end
if statements2[1] and statements2[1].mainsnak.snaktype == "value" then
local qid3 = statements2[1].mainsnak.datavalue.value.id
local sitelink = mw.wikibase.getSitelink(qid3)
-- if there's no local sitelink, create the sitelink from English label
if not sitelink then
local lbl = mw.wikibase.getLabelByLang(qid3, "en")
if lbl then
if lbl:sub(1,9) == "Category:" then
sitelink = mw.text.nowiki(lbl)
else
sitelink = "Category:" .. mw.text.nowiki(lbl)
end
end
end
if sitelink then
if sk ~= "" then
out[#out+1] = "[[" .. lp .. sitelink .. "|" .. sk .. "]]"
elseif famname ~= "" then
out[#out+1] = "[[" .. lp .. sitelink .. "|" .. famname .. "]]"
else
out[#out+1] = "[[" .. lp .. sitelink .. "]]"
end -- of check for sort keys
end -- of test for sitelink
end -- of test for category
end -- of test for wikibase item has a value
end -- of test for sourced
if maxvals > 0 and #out >= maxvals then break end
end -- of loop through values of property1
return assembleoutput(out, args, qid1, pid1)
end
-------------------------------------------------------------------------------
-- getIntersectCat takes most of the usual parameters.
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-- It takes two properties, |prop1 and |prop2 (e.g. occupation and country of citizenship)
-- Each property's value is a wiki-base entity
-- For each value of the first parameter (ranks implemented) it fetches the value's main category
-- and then each value of the second parameter (possibly substituting a simpler description)
-- then it returns all of the categories representing the intersection of those properties,
-- (e.g. Category:Actors from Canada). A joining term may be supplied (e.g. |join=from).
-- The item's P734 (family name) is the sort key, or no sort key if there is no family name.
-- The sort key may be overridden by the parameter |sortkey (alias |sk).
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p.getIntersectCat = function(frame)
frame.args.reqranks = setRanks(frame.args.rank)
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
local args = frame.args
args.sep = " "
args.linked = "no"
local pid1 = args.prop1 or "P106"
local pid2 = args.prop2 or "P27"
if pid1 == "" or pid2 == "" then return nil end
local qid, statements1 = parseInput(frame, "", pid1)
if not qid then return nil end
local qid, statements2 = parseInput(frame, "", pid2)
if not qid then return nil end
-- topics like countries may have different names in categories from their label in Wikidata
local subs_exists, subs = pcall(mw.loadData, "Module:WikidataIB/subs")
local join = args.join or ""
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local maxvals = tonumber(args.maxvals) or 0
-- linkprefix (strip quotes)
local lp = (args.linkprefix or args.lp or ""):gsub('"', '')
-- sort key (strip quotes, hyphens and periods):
local sk = (args.sortkey or args.sk or ""):gsub('["-.]', '')
-- family name:
local famname = ""
if sk == "" then
local p734 = mw.wikibase.getBestStatements(qid, "P734")[1]
local p734id = p734 and p734.mainsnak.snaktype == "value" and p734.mainsnak.datavalue.value.id or ""
famname = mw.wikibase.getSitelink(p734id) or ""
-- strip namespace and disambigation
local pos = famname:find(":") or 0
famname = famname:sub(pos+1):gsub("%s%(.+%)$", "")
if famname == "" then
local lbl = mw.wikibase.getLabel(p734id)
famname = lbl and mw.text.nowiki(lbl) or ""
end
end
local cat1 = {}
for k, v in ipairs(statements1) do
if not onlysrc or sourced(v) then
-- get the ID representing the value of the property
local pvalID = (v.mainsnak.snaktype == "value") and v.mainsnak.datavalue.value.id
if pvalID then
-- get the topic's main category (P910) for that entity
local p910 = mw.wikibase.getBestStatements(pvalID, "P910")[1]
if p910 and p910.mainsnak.snaktype == "value" then
local tmcID = p910.mainsnak.datavalue.value.id
-- use sitelink or the English label for the cat
local cat = mw.wikibase.getSitelink(tmcID)
if not cat then
local lbl = mw.wikibase.getLabelByLang(tmcID, "en")
if lbl then
if lbl:sub(1,9) == "Category:" then
cat = mw.text.nowiki(lbl)
else
cat = "Category:" .. mw.text.nowiki(lbl)
end
end
end
cat1[#cat1+1] = cat
end -- of test for topic's main category exists
end -- of test for property has vaild value
end -- of test for sourced
if maxvals > 0 and #cat1 >= maxvals then break end
end
local cat2 = {}
for k, v in ipairs(statements2) do
if not onlysrc or sourced(v) then
local cat = rendersnak(v, args)
if subs[cat] then cat = subs[cat] end
cat2[#cat2+1] = cat
end
if maxvals > 0 and #cat2 >= maxvals then break end
end
out = {}
for k1, v1 in ipairs(cat1) do
for k2, v2 in ipairs(cat2) do
if sk ~= "" then
out[#out+1] = "[[" .. lp .. v1 .. " " .. join .. " " .. v2 .. "|" .. sk .. "]]"
elseif famname ~= "" then
out[#out+1] = "[[" .. lp .. v1 .. " " .. join .. " " .. v2 .. "|" .. famname .. "]]"
else
out[#out+1] = "[[" .. lp .. v1 .. " " .. join .. " " .. v2 .. "]]"
end -- of check for sort keys
end
end
args.noicon = "true"
return assembleoutput(out, args, qid, pid1)
end
-------------------------------------------------------------------------------
-- qualsToTable takes most of the usual parameters.
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented.
-- A qid may be given, and the first unnamed parameter is the property ID, which is of type wikibase item.
-- It takes a list of qualifier property IDs as |quals=
-- For a given qid and property, it creates the rows of an html table,
-- each row being a value of the property (optionally only if the property matches the value in |pval= )
-- each cell being the first value of the qualifier corresponding to the list in |quals
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced;
-------------------------------------------------------------------------------
p.qualsToTable = function(frame)
local args = frame.args
local quals = args.quals or ""
if quals == "" then return "" end
args.reqranks = setRanks(args.rank)
local propertyID = mw.text.trim(args[1] or "")
local f = {}
f.args = args
local entityid, props = parseInput(f, "", propertyID)
if not entityid then return "" end
args.langobj = findLang(args.lang)
args.lang = args.langobj.code
local pval = args.pval or ""
local qplist = mw.text.split(quals, "%p") -- split at punctuation and make a sequential table
for i, v in ipairs(qplist) do
qplist[i] = mw.text.trim(v):upper() -- remove whitespace and capitalise
end
local col1 = args.firstcol or ""
if col1 ~= "" then
col1 = col1 .. "</td><td>"
end
local emptycell = args.emptycell or " "
-- construct a 2-D array of qualifier values in qvals
local qvals = {}
for i, v in ipairs(props) do
local skip = false
if pval ~= "" then
local pid = v.mainsnak.datavalue and v.mainsnak.datavalue.value.id
if pid ~= pval then skip = true end
end
if not skip then
local qval = {}
local vqualifiers = v.qualifiers or {}
-- go through list of wanted qualifier properties
for i1, v1 in ipairs(qplist) do
-- check for that property ID in the statement's qualifiers
local qv, qtype
if vqualifiers[v1] then
qtype = vqualifiers[v1][1].datatype
if qtype == "time" then
if vqualifiers[v1][1].snaktype == "value" then
qv = mw.wikibase.renderSnak(vqualifiers[v1][1])
qv = frame:expandTemplate{title="dts", args={qv}}
else
qv = "?"
end
elseif qtype == "url" then
if vqualifiers[v1][1].snaktype == "value" then
qv = mw.wikibase.renderSnak(vqualifiers[v1][1])
local display = mw.ustring.match( mw.uri.decode(qv, "WIKI"), "([%w ]+)$" )
if display then
qv = "[" .. qv .. " " .. display .. "]"
end
end
else
qv = mw.wikibase.formatValue(vqualifiers[v1][1])
end
end
-- record either the value or a placeholder
qval[i1] = qv or emptycell
end -- of loop through list of qualifiers
-- add the list of qualifier values as a "row" in the main list
qvals[#qvals+1] = qval
end
end -- of for each value loop
local out = {}
for i, v in ipairs(qvals) do
out[i] = "<tr><td>" .. col1 .. table.concat(qvals[i], "</td><td>") .. "</td></tr>"
end
return table.concat(out, "\n")
end
-------------------------------------------------------------------------------
-- getGlobe takes an optional qid of a Wikidata entity passed as |qid=
-- otherwise it uses the linked item for the current page.
-- If returns the Qid of the globe used in P625 (coordinate location),
-- or nil if there isn't one.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getGlobe = function(frame)
local qid = frame.args.qid or frame.args[1] or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
local coords = mw.wikibase.getBestStatements(qid, "P625")[1]
local globeid
if coords and coords.mainsnak.snaktype == "value" then
globeid = coords.mainsnak.datavalue.value.globe:match("(Q%d+)")
end
return globeid
end
-------------------------------------------------------------------------------
-- getCommonsLink takes an optional qid of a Wikidata entity passed as |qid=
-- It returns one of the following in order of preference:
-- the Commons sitelink of the linked Wikidata item;
-- the Commons sitelink of the topic's main category of the linked Wikidata item;
-------------------------------------------------------------------------------
-- Dependencies: _getCommonslink(); _getSitelink(); parseParam()
-------------------------------------------------------------------------------
p.getCommonsLink = function(frame)
local oc = frame.args.onlycat or frame.args.onlycategories
local fb = parseParam(frame.args.fallback or frame.args.fb, true)
return _getCommonslink(frame.args.qid, oc, fb)
end
-------------------------------------------------------------------------------
-- getSitelink takes the qid of a Wikidata entity passed as |qid=
-- It takes an optional parameter |wiki= to determine which wiki is to be checked for a sitelink
-- If the parameter is blank, then it uses the local wiki.
-- If there is a sitelink to an article available, it returns the plain text link to the article
-- If there is no sitelink, it returns nil.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getSiteLink = function(frame)
return _getSitelink(frame.args.qid, frame.args.wiki or mw.text.trim(frame.args[1] or ""))
end
-------------------------------------------------------------------------------
-- getLink has the qid of a Wikidata entity passed as the first unnamed parameter or as |qid=
-- If there is a sitelink to an article on the local Wiki, it returns a link to the article
-- with the Wikidata label as the displayed text.
-- If there is no sitelink, it returns the label as plain text.
-- If there is no label in the local language, it displays the qid instead.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getLink = function(frame)
local itemID = mw.text.trim(frame.args[1] or frame.args.qid or "")
if itemID == "" then return end
local sitelink = mw.wikibase.getSitelink(itemID)
local label = labelOrId(itemID)
if sitelink then
return "[[:" .. sitelink .. "|" .. label .. "]]"
else
return label
end
end
-------------------------------------------------------------------------------
-- getLabel has the qid of a Wikidata entity passed as the first unnamed parameter or as |qid=
-- It returns the Wikidata label for the local language as plain text.
-- If there is no label in the local language, it displays the qid instead.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getLabel = function(frame)
local itemID = mw.text.trim(frame.args[1] or frame.args.qid or "")
if itemID == "" then return end
local lang = frame.args.lang or ""
if lang == "" then lang = nil end
local label = labelOrId(itemID, lang)
return label
end
-------------------------------------------------------------------------------
-- label has the qid of a Wikidata entity passed as the first unnamed parameter or as |qid=
-- if no qid is supplied, it uses the qid associated with the current page.
-- It returns the Wikidata label for the local language as plain text.
-- If there is no label in the local language, it returns nil.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.label = function(frame)
local qid = mw.text.trim(frame.args[1] or frame.args.qid or "")
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return end
local lang = frame.args.lang or ""
if lang == "" then lang = nil end
local label, success = labelOrId(qid, lang)
if success then return label end
end
-------------------------------------------------------------------------------
-- getAT (Article Title)
-- has the qid of a Wikidata entity passed as the first unnamed parameter or as |qid=
-- If there is a sitelink to an article on the local Wiki, it returns the sitelink as plain text.
-- If there is no sitelink or qid supplied, it returns nothing.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getAT = function(frame)
local itemID = mw.text.trim(frame.args[1] or frame.args.qid or "")
if itemID == "" then return end
return mw.wikibase.getSitelink(itemID)
end
-------------------------------------------------------------------------------
-- getDescription has the qid of a Wikidata entity passed as |qid=
-- (it defaults to the associated qid of the current article if omitted)
-- and a local parameter passed as the first unnamed parameter.
-- Any local parameter passed (other than "Wikidata" or "none") becomes the return value.
-- It returns the article description for the Wikidata entity if the local parameter is "Wikidata".
-- Nothing is returned if the description doesn't exist or "none" is passed as the local parameter.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getDescription = function(frame)
local desc = mw.text.trim(frame.args[1] or "")
local itemID = mw.text.trim(frame.args.qid or "")
if itemID == "" then itemID = nil end
if desc:lower() == 'wikidata' then
return mw.wikibase.getDescription(itemID)
elseif desc:lower() == 'none' then
return nil
else
return desc
end
end
-------------------------------------------------------------------------------
-- getAliases has the qid of a Wikidata entity passed as |qid=
-- (it defaults to the associated qid of the current article if omitted)
-- and a local parameter passed as the first unnamed parameter.
-- It implements blacklisting and whitelisting with a field name of "alias" by default.
-- Any local parameter passed becomes the return value.
-- Otherwise it returns the aliases for the Wikidata entity with the usual list options.
-- Nothing is returned if the aliases do not exist.
-------------------------------------------------------------------------------
-- Dependencies: findLang(); assembleoutput()
-------------------------------------------------------------------------------
p.getAliases = function(frame)
local args = frame.args
local fieldname = args.name or ""
if fieldname == "" then fieldname = "alias" end
local blacklist = args.suppressfields or args.spf or ""
if blacklist:find(fieldname) then return nil end
local localval = mw.text.trim(args[1] or "")
if localval ~= "" then return localval end
local whitelist = args.fetchwikidata or args.fwd or ""
if whitelist == "" then whitelist = "NONE" end
if not (whitelist == 'ALL' or whitelist:find(fieldname)) then return nil end
local qid = mw.text.trim(args.qid or "")
if qid == "" then qid = nil end
local entity = mw.wikibase.getEntity(qid)
if not entity then return nil end
local aliases = entity.aliases
if not aliases then return nil end
if not qid then qid= mw.wikibase.getEntityIdForCurrentPage() end
args.langobj = findLang(args.lang)
local langcode = args.langobj.code
args.lang = langcode
local out = {}
for k1, v1 in pairs(aliases) do
if v1[1].language == langcode then
for k1, v2 in ipairs(v1) do
out[#out+1] = v2.value
end
break
end
end
return assembleoutput(out, args, qid)
end
-------------------------------------------------------------------------------
-- pageId returns the page id (entity ID, Qnnn) of the current page
-- returns nothing if the page is not connected to Wikidata
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.pageId = function(frame)
return mw.wikibase.getEntityIdForCurrentPage()
end
-------------------------------------------------------------------------------
-- formatDate is a wrapper to export the private function format_Date
-------------------------------------------------------------------------------
-- Dependencies: format_Date();
-------------------------------------------------------------------------------
p.formatDate = function(frame)
return format_Date(frame.args[1], frame.args.df, frame.args.bc)
end
-------------------------------------------------------------------------------
-- location is a wrapper to export the private function _location
-- it takes the entity-id as qid or the first unnamed parameter
-- optional boolean parameter first toggles the display of the first item
-- optional boolean parameter skip toggles the display to skip to the last item
-- parameter debug=<y/n> (default 'n') adds error msg if not a location
-------------------------------------------------------------------------------
-- Dependencies: _location();
-------------------------------------------------------------------------------
p.location = function(frame)
local debug = (frame.args.debug or ""):sub(1, 1):lower()
if debug == "" then debug = "n" end
local qid = mw.text.trim(frame.args.qid or frame.args[1] or ""):upper()
if qid == "" then qid=mw.wikibase.getEntityIdForCurrentPage() end
if not qid then
if debug ~= "n" then
return i18n.errors["entity-not-found"]
else
return nil
end
end
local first = mw.text.trim(frame.args.first or "")
local skip = mw.text.trim(frame.args.skip or "")
return table.concat( _location(qid, first, skip), ", " )
end
-------------------------------------------------------------------------------
-- checkBlacklist implements a test to check whether a named field is allowed
-- returns true if the field is not blacklisted (i.e. allowed)
-- returns false if the field is blacklisted (i.e. disallowed)
-- {{#if:{{#invoke:WikidataIB |checkBlacklist |name=Joe |suppressfields=Dave; Joe; Fred}} | not blacklisted | blacklisted}}
-- displays "blacklisted"
-- {{#if:{{#invoke:WikidataIB |checkBlacklist |name=Jim |suppressfields=Dave; Joe; Fred}} | not blacklisted | blacklisted}}
-- displays "not blacklisted"
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.checkBlacklist = function(frame)
local blacklist = frame.args.suppressfields or frame.args.spf or ""
local fieldname = frame.args.name or ""
if blacklist ~= "" and fieldname ~= "" then
if blacklist:find(fieldname) then
return false
else
return true
end
else
-- one of the fields is missing: let's call that "not on the list"
return true
end
end
-------------------------------------------------------------------------------
-- emptyor returns nil if its first unnamed argument is just punctuation, whitespace or html tags
-- otherwise it returns the argument unchanged (including leading/trailing space).
-- If the argument may contain "=", then it must be called explicitly:
-- |1=arg
-- (In that case, leading and trailing spaces are trimmed)
-- It finds use in infoboxes where it can replace tests like:
-- {{#if: {{#invoke:WikidatIB |getvalue |P99 |fwd=ALL}} | <span class="xxx">{{#invoke:WikidatIB |getvalue |P99 |fwd=ALL}}</span> | }}
-- with a form that uses just a single call to Wikidata:
-- {{#invoke |WikidataIB |emptyor |1= <span class="xxx">{{#invoke:WikidataIB |getvalue |P99 |fwd=ALL}}</span> }}
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.emptyor = function(frame)
local s = frame.args[1] or ""
if s == "" then return nil end
local sx = s:gsub("%s", ""):gsub("<[^>]*>", ""):gsub("%p", "")
if sx == "" then
return nil
else
return s
end
end
-------------------------------------------------------------------------------
-- labelorid is a public function to expose the output of labelOrId()
-- Pass the Q-number as |qid= or as an unnamed parameter.
-- It returns the Wikidata label for that entity or the qid if no label exists.
-------------------------------------------------------------------------------
-- Dependencies: labelOrId
-------------------------------------------------------------------------------
p.labelorid = function(frame)
return (labelOrId(frame.args.qid or frame.args[1]))
end
-------------------------------------------------------------------------------
-- getLang returns the MediaWiki language code of the current content.
-- If optional parameter |style=full, it returns the language name.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getLang = function(frame)
local style = (frame.args.style or ""):lower()
local langcode = mw.language.getContentLanguage().code
if style == "full" then
return mw.language.fetchLanguageName( langcode )
end
return langcode
end
-------------------------------------------------------------------------------
-- getItemLangCode takes a qid parameter (using the current page's qid if blank)
-- If the item for that qid has property country (P17) it looks at the first preferred value
-- If the country has an official language (P37), it looks at the first preferred value
-- If that official language has a language code (P424), it returns the first preferred value
-- Otherwise it returns nothing.
-------------------------------------------------------------------------------
-- Dependencies: _getItemLangCode()
-------------------------------------------------------------------------------
p.getItemLangCode = function(frame)
return _getItemLangCode(frame.args.qid or frame.args[1])
end
-------------------------------------------------------------------------------
-- findLanguage exports the local findLang() function
-- It takes an optional language code and returns, in order of preference:
-- the code if a known language;
-- the user's language, if set;
-- the server's content language.
-------------------------------------------------------------------------------
-- Dependencies: findLang
-------------------------------------------------------------------------------
p.findLanguage = function(frame)
return findLang(frame.args.lang or frame.args[1]).code
end
-------------------------------------------------------------------------------
-- getQid returns the qid, if supplied
-- failing that, the Wikidata entity ID of the "category's main topic (P301)", if it exists
-- failing that, the Wikidata entity ID associated with the current page, if it exists
-- otherwise, nothing
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getQid = function(frame)
local qid = (frame.args.qid or ""):upper()
-- check if a qid was passed; if so, return it:
if qid ~= "" then return qid end
-- check if there's a "category's main topic (P301)":
qid = mw.wikibase.getEntityIdForCurrentPage()
if qid then
local prop301 = mw.wikibase.getBestStatements(qid, "P301")
if prop301[1] then
local mctid = prop301[1].mainsnak.datavalue.value.id
if mctid then return mctid end
end
end
-- otherwise return the page qid (if any)
return qid
end
-------------------------------------------------------------------------------
-- followQid takes three optional parameters: qid, props, and all.
-- If qid is not given, it uses the qid for the connected page
-- or returns nil if there isn't one.
-- props is a list of properties, separated by punctuation.
-- If props is given, the Wikidata item for the qid is examined for each property in turn.
-- If that property contains a value that is another Wikibase-item, that item's qid is returned,
-- and the search terminates, unless |all=y when all of the qids are returned, sparated by spaces.
-- If props is not given, the qid is returned.
-------------------------------------------------------------------------------
-- Dependencies: parseParam()
-------------------------------------------------------------------------------
p.followQid = function(frame)
local qid = (frame.args.qid or ""):upper()
local all = parseParam(frame.args.all, false)
if qid == "" then
qid = mw.wikibase.getEntityIdForCurrentPage()
end
if not qid then return nil end
local out = {}
local props = (frame.args.props or ""):upper()
if props ~= "" then
for p in mw.text.gsplit(props, "%p") do -- split at punctuation and iterate
p = mw.text.trim(p)
for i, v in ipairs( mw.wikibase.getBestStatements(qid, p) ) do
local linkedid = v.mainsnak.datavalue and v.mainsnak.datavalue.value.id
if linkedid then
if all then
out[#out+1] = linkedid
else
return linkedid
end -- test for all or just the first one found
end -- test for value exists for that property
end -- loop through values of property to follow
end -- loop through list of properties to follow
end
if #out > 0 then
return table.concat(out, " ")
else
return qid
end
end
-------------------------------------------------------------------------------
-- globalSiteID returns the globalSiteID for the current wiki
-- e.g. returns "enwiki" for the English Wikipedia, "enwikisource" for English Wikisource, etc.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.globalSiteID = function(frame)
return mw.wikibase.getGlobalSiteId()
end
-------------------------------------------------------------------------------
-- siteID returns the root of the globalSiteID
-- e.g. "en" for "enwiki", "enwikisource", etc.
-- treats "en-gb" as "en", etc.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.siteID = function(frame)
local txtlang = frame:preprocess( "{{int:lang}}" ) or ""
-- This deals with specific exceptions: be-tarask -> be-x-old
if txtlang == "be-tarask" then
return "be_x_old"
end
local pos = txtlang:find("-")
local ret = ""
if pos then
ret = txtlang:sub(1, pos-1)
else
ret = txtlang
end
return ret
end
-------------------------------------------------------------------------------
-- projID returns the code used to link to the reader's language's project
-- e.g "en" for [[:en:WikidataIB]]
-- treats "en-gb" as "en", etc.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.projID = function(frame)
local txtlang = frame:preprocess( "{{int:lang}}" ) or ""
-- This deals with specific exceptions: be-tarask -> be-x-old
if txtlang == "be-tarask" then
return "be-x-old"
end
local pos = txtlang:find("-")
local ret = ""
if pos then
ret = txtlang:sub(1, pos-1)
else
ret = txtlang
end
return ret
end
-------------------------------------------------------------------------------
-- formatNumber formats a number according to the the supplied language code ("|lang=")
-- or the default language if not supplied.
-- The number is the first unnamed parameter or "|num="
-------------------------------------------------------------------------------
-- Dependencies: findLang()
-------------------------------------------------------------------------------
p.formatNumber = function(frame)
local lang
local num = tonumber(frame.args[1] or frame.args.num) or 0
lang = findLang(frame.args.lang)
return lang:formatNum( num )
end
-------------------------------------------------------------------------------
-- examine dumps the property (the unnamed parameter or pid)
-- from the item given by the parameter 'qid' (or the other unnamed parameter)
-- or from the item corresponding to the current page if qid is not supplied.
-- e.g. {{#invoke:WikidataIB |examine |pid=P26 |qid=Q42}}
-- or {{#invoke:WikidataIB |examine |P26 |Q42}} or any combination of these
-- or {{#invoke:WikidataIB |examine |P26}} for the current page.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.examine = function( frame )
local args
if frame.args[1] or frame.args.pid or frame.args.qid then
args = frame.args
else
args = frame:getParent().args
end
local par = {}
local pid = (args.pid or ""):upper()
local qid = (args.qid or ""):upper()
par[1] = mw.text.trim( args[1] or "" ):upper()
par[2] = mw.text.trim( args[2] or "" ):upper()
table.sort(par)
if par[2]:sub(1,1) == "P" then par[1], par[2] = par[2], par[1] end
if pid == "" then pid = par[1] end
if qid == "" then qid = par[2] end
local q1 = qid:sub(1,1)
if pid:sub(1,1) ~= "P" then return "No property supplied" end
if q1 ~= "Q" and q1 ~= "M" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return "No item for this page" end
return "<pre>" .. mw.dumpObject( mw.wikibase.getAllStatements( qid, pid ) ) .. "</pre>"
end
-------------------------------------------------------------------------------
-- checkvalue looks for 'val' as a wikibase-item value of a property (the unnamed parameter or pid)
-- from the item given by the parameter 'qid'
-- or from the Wikidata item associated with the current page if qid is not supplied.
-- It only checks ranks that are requested (preferred and normal by default)
-- If property is not supplied, then P31 (instance of) is assumed.
-- It returns val if found or nothing if not found.
-- e.g. {{#invoke:WikidataIB |checkvalue |val=Q5 |pid=P31 |qid=Q42}}
-- or {{#invoke:WikidataIB |checkvalue |val=Q5 |P31 |qid=Q42}}
-- or {{#invoke:WikidataIB |checkvalue |val=Q5 |qid=Q42}}
-- or {{#invoke:WikidataIB |checkvalue |val=Q5 |P31}} for the current page.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.checkvalue = function( frame )
local args
if frame.args.val then
args = frame.args
else
args = frame:getParent().args
end
local val = args.val
if not val then return nil end
local pid = mw.text.trim(args.pid or args[1] or "P31"):upper()
local qid = (args.qid or ""):upper()
if pid:sub(1,1) ~= "P" then return nil end
if qid:sub(1,1) ~= "Q" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return nil end
ranks = setRanks(args.rank)
local stats = {}
if ranks.b then
stats = mw.wikibase.getBestStatements(qid, pid)
else
stats = mw.wikibase.getAllStatements( qid, pid )
end
if not stats[1] then return nil end
if stats[1].mainsnak.datatype == "wikibase-item" then
for k, v in pairs( stats ) do
ms = v.mainsnak
if ranks[v.rank:sub(1,1)] and ms.snaktype == "value" and ms.datavalue.value.id == val then
return val
end
end
end
return nil
end
-------------------------------------------------------------------------------
-- url2 takes a parameter url= that is a proper url and formats it for use in an infobox.
-- If no parameter is supplied, it returns nothing.
-- This is the equivalent of Template:URL
-- but it keeps the "edit at Wikidata" pen icon out of the microformat.
-- Usually it will take its url parameter directly from a Wikidata call:
-- e.g. {{#invoke:WikidataIB |url2 |url={{wdib |P856 |qid=Q23317 |fwd=ALL |osd=no}}
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.url2 = function(frame)
local txt = frame.args.url or ""
if txt == "" then return nil end
local url, icon = txt:match("(.+) (.+)")
url = url or txt
icon = icon or ""
local prot, addr = url:match("(http[s]*://)(.+)")
prot = prot or url
addr = addr or ""
local disp, n = addr:gsub("%.", "<wbr/>%.")
return '<span class="url">[' .. prot .. addr .. " " .. disp .. "]</span> " .. icon
end
-------------------------------------------------------------------------------
-- getWebsite fetches the Official website (P856) and formats it for use in an infobox.
-- This is similar to Template:Official website but with a url displayed,
-- and it adds the "edit at Wikidata" pen icon beyond the microformat if enabled.
-- A local value will override the Wikidata value. "NONE" returns nothing.
-- e.g. {{#invoke:WikidataIB |getWebsite |qid= |noicon= |lang= |url= }}
-------------------------------------------------------------------------------
-- Dependencies: findLang(); parseParam();
-------------------------------------------------------------------------------
p.getWebsite = function(frame)
local url = frame.args.url or ""
if url:upper() == "NONE" then return nil end
local qid = frame.args.qid or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return nil end
local urls = {}
local quals = {}
if url == "" then
local prop856 = mw.wikibase.getBestStatements(qid, "P856")
for k, v in pairs(prop856) do
if v.mainsnak.snaktype == "value" then
urls[#urls+1] = v.mainsnak.datavalue.value
if v.qualifiers and v.qualifiers["P1065"] then
-- just take the first archive url (P1065)
local au = v.qualifiers["P1065"][1]
if au.snaktype == "value" then
quals[#urls] = au.datavalue.value
end -- test for archive url having a value
end -- test for qualifers
end -- test for website having a value
end -- loop through website(s)
else
urls[1] = url
end
if #urls == 0 then return nil end
local out = {}
for i, u in ipairs(urls) do
local link = quals[i] or u
local prot, addr = u:match("(http[s]*://)(.+)")
addr = addr or u
local disp, n = addr:gsub("%.", "<wbr/>%.")
out[#out+1] = '<span class="url">[' .. link .. " " .. disp .. "]</span>"
end
local langcode = findLang(frame.args.lang).code
local noicon = parseParam(frame.args.noicon, false)
if url == "" and not noicon then
out[#out] = out[#out] .. createicon(langcode, qid, "P856")
end
local ret = ""
if #out > 1 then
ret = mw.getCurrentFrame():expandTemplate{title = "ubl", args = out}
else
ret = out[1]
end
return ret
end
-------------------------------------------------------------------------------
-- getAllLabels fetches the set of labels and formats it for display as wikitext.
-- It takes a parameter 'qid' for arbitrary access, otherwise it uses the current page.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getAllLabels = function(frame)
local args = frame.args or frame:getParent().args or {}
local qid = args.qid
if qid == "" then qid = nil end
local entity = mw.wikibase.getEntity(qid)
if not entity then return i18n["entity-not-found"] end
local labels = entity.labels
if not labels then return i18n["labels-not-found"] end
local out = {}
for k, v in pairs(labels) do
out[#out+1] = v.value .. " (" .. v.language .. ")"
end
return table.concat(out, "; ")
end
-------------------------------------------------------------------------------
-- getAllDescriptions fetches the set of descriptions and formats it for display as wikitext.
-- It takes a parameter 'qid' for arbitrary access, otherwise it uses the current page.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getAllDescriptions = function(frame)
local args = frame.args or frame:getParent().args or {}
local qid = args.qid
if qid == "" then qid = nil end
local entity = mw.wikibase.getEntity(qid)
if not entity then return i18n["entity-not-found"] end
local descriptions = entity.descriptions
if not descriptions then return i18n["descriptions-not-found"] end
local out = {}
for k, v in pairs(descriptions) do
out[#out+1] = v.value .. " (" .. v.language .. ")"
end
return table.concat(out, "; ")
end
-------------------------------------------------------------------------------
-- getAllAliases fetches the set of aliases and formats it for display as wikitext.
-- It takes a parameter 'qid' for arbitrary access, otherwise it uses the current page.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getAllAliases = function(frame)
local args = frame.args or frame:getParent().args or {}
local qid = args.qid
if qid == "" then qid = nil end
local entity = mw.wikibase.getEntity(qid)
if not entity then return i18n["entity-not-found"] end
local aliases = entity.aliases
if not aliases then return i18n["aliases-not-found"] end
local out = {}
for k1, v1 in pairs(aliases) do
local lang = v1[1].language
local val = {}
for k1, v2 in ipairs(v1) do
val[#val+1] = v2.value
end
out[#out+1] = table.concat(val, ", ") .. " (" .. lang .. ")"
end
return table.concat(out, "; ")
end
-------------------------------------------------------------------------------
-- showNoLinks displays the article titles that should not be linked.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.showNoLinks = function(frame)
local out = {}
for k, v in pairs(donotlink) do
out[#out+1] = k
end
table.sort( out )
return table.concat(out, "; ")
end
-------------------------------------------------------------------------------
-- checkValidity checks whether the first unnamed parameter represents a valid entity-id,
-- that is, something like Q1235 or P123.
-- It returns the strings "true" or "false".
-- Change false to nil to return "true" or "" (easier to test with #if:).
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
function p.checkValidity(frame)
local id = mw.text.trim(frame.args[1] or "")
if mw.wikibase.isValidEntityId(id) then
return true
else
return false
end
end
-------------------------------------------------------------------------------
-- getEntityFromTitle returns the Entity-ID (Q-number) for a given title.
-- Modification of Module:ResolveEntityId
-- The title is the first unnamed parameter.
-- The site parameter determines the site/language for the title. Defaults to current wiki.
-- The showdab parameter determines whether dab pages should return the Q-number or nil. Defaults to true.
-- Returns the Q-number or nil if it does not exist.
-------------------------------------------------------------------------------
-- Dependencies: parseParam
-------------------------------------------------------------------------------
function p.getEntityFromTitle(frame)
local args=frame.args
if not args[1] then args=frame:getParent().args end
if not args[1] then return nil end
local title = mw.text.trim(args[1])
local site = args.site or ""
local showdab = parseParam(args.showdab, true)
qid = mw.wikibase.getEntityIdForTitle(title, site)
if qid then
local prop31 = mw.wikibase.getBestStatements(qid, "P31")[1]
if not showdab and prop31 and prop31.mainsnak.datavalue.value.id == "Q4167410" then
return nil
else
return qid
end
end
end
-------------------------------------------------------------------------------
-- getDatePrecision returns the number representing the precision of the first best date value
-- for the given property.
-- It takes the qid and property ID
-- The meanings are given at https://www.mediawiki.org/wiki/Wikibase/DataModel#Dates_and_times
-- 0 = 1 billion years .. 6 = millennium, 7 = century, 8 = decade, 9 = year, 10 = month, 11 = day
-- Returns 0 (or the second unnamed parameter) if the Wikidata does not exist.
-------------------------------------------------------------------------------
-- Dependencies: parseParam; sourced;
-------------------------------------------------------------------------------
function p.getDatePrecision(frame)
local args=frame.args
if not args[1] then args=frame:getParent().args end
local default = tonumber(args[2] or args.default) or 0
local prop = mw.text.trim(args[1] or "")
if prop == "" then return default end
local qid = args.qid or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return default end
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local stat = mw.wikibase.getBestStatements(qid, prop)
for i, v in ipairs(stat) do
local prec = (onlysrc == false or sourced(v))
and v.mainsnak.datavalue
and v.mainsnak.datavalue.value
and v.mainsnak.datavalue.value.precision
if prec then return prec end
end
return default
end
return p
-------------------------------------------------------------------------------
-- List of exported functions
-------------------------------------------------------------------------------
--[[
_getValue
getValue
getPreferredValue
getCoords
getQualifierValue
getSumOfParts
getValueByQual
getValueByLang
getValueByRefSource
getPropertyIDs
getQualifierIDs
getPropOfProp
getAwardCat
getIntersectCat
getGlobe
getCommonsLink
getSiteLink
getLink
getLabel
label
getAT
getDescription
getAliases
pageId
formatDate
location
checkBlacklist
emptyor
labelorid
getLang
getItemLangCode
findLanguage
getQID
followQid
globalSiteID
siteID
projID
formatNumber
examine
checkvalue
url2
getWebsite
getAllLabels
getAllDescriptions
getAllAliases
showNoLinks
checkValidity
getEntityFromTitle
getDatePrecision
--]]
-------------------------------------------------------------------------------
obnebv079qwjrjls3a6wsg6l0jqj8m5
Module:WikidataIB/titleformats
828
3300
36482
2025-12-15T17:06:55Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ To satisfy Wikipedia:Manual of Style/Titles, certain types of items are italicised, and others are quoted. This submodule lists the entity-ids used in 'instance of' (P31), which allows a module to identify the values that should be formatted. The table p.formats is indexed by entity-id, and contains the value " or '' --]] local p = {} p.italics = { "Q571", -- book "Q13593966", -- literary trilogy "Q277759", -- book series "Q2188189",...'
36482
Scribunto
text/plain
--[[
To satisfy Wikipedia:Manual of Style/Titles, certain types of items are italicised,
and others are quoted.
This submodule lists the entity-ids used in 'instance of' (P31),
which allows a module to identify the values that should be formatted.
The table p.formats is indexed by entity-id, and contains the value " or ''
--]]
local p = {}
p.italics = {
"Q571", -- book
"Q13593966", -- literary trilogy
"Q277759", -- book series
"Q2188189", -- musical work
"Q11424", -- film
"Q13593818", -- film trilogy
"Q24856", -- film series
"Q5398426", -- television series
"Q482994", -- album
"Q169930", -- extended play
"Q1760610", -- comic book
"Q7889", -- video game
"Q7058673", -- video game series
"Q25379", -- play
"Q2743", -- musical
"Q37484", -- epic poem
"Q41298", -- magazine
}
p.quotes = {
"Q207628", -- musical composition
}
p.size = 0
p.formats = {}
for i, v in ipairs(p.italics) do
p.formats[v] = "''"
p.size = p.size + 1
end
for i, v in ipairs(p.quotes) do
p.formats[v] = '"'
p.size = p.size + 1
end
return p
kf27lmax414v7k61jzza3jomkstxn1m
Πρότυπον:Category link with count
10
3301
36484
36483
2025-12-15T17:09:12Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπο:Clc]] στην [[Πρότυπον:Category link with count]]
36483
wikitext
text/x-wiki
[[:Κατηγορίαν:{{#invoke:string|replace|1={{{1}}}|2=^:?[Κκ]ατηγορία:|3=|plain=false}}|<!--
-->{{#if:{{{ονομα|}}}|{{{ονομα}}}|Κατηγορίαν:{{#invoke:string|replace|1={{{1}}}|2=^:?[Κκ]ατηγορίαν:|3=|plain=false}}}}<!--
-->]] ({{PAGESINCATEGORY:{{#invoke:string|replace|1={{{1}}}|2=^:?[Κκ]ατηγορίαν:|3=|plain=false}}|{{{2|all}}}}})<noinclude>
{{Documentation}}
</noinclude>
rte6pftpf8h8j37u1wqj2ti342f0wdq
Πρότυπον:Clc
10
3302
36486
36485
2025-12-15T17:09:30Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπο:Clc]] στην [[Πρότυπον:Clc]]
36485
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Category link with count]]
7h4nr42w979pd13pig7f7zpyaehayrf
Πρότυπο:Clc
0
3303
36489
36488
2025-12-15T17:10:01Z
Εὐθυμένης
2777
36489
wikitext
text/x-wiki
{{delete|by mistake}}
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Clc]]
r5ks2anneb6k6dwa10emh7w73wy43qs
Πρότυπον:Examine
10
3305
36491
2025-12-15T17:12:36Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:WikidataIB|examine}}<noinclude> {{documentation}} </noinclude>'
36491
wikitext
text/x-wiki
{{#invoke:WikidataIB|examine}}<noinclude>
{{documentation}}
</noinclude>
45qeepxooko2qse5vc47bs0428jmf09
Πρότυπον:Wikidata entity link
10
3306
36493
36492
2025-12-15T17:14:17Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπον:Q]] στην [[Πρότυπον:Wikidata entity link]]
36492
wikitext
text/x-wiki
<includeonly>{{#if: {{{1|}}}
| {{#switch: {{uc:{{padleft:|1|{{#if:1|{{{1}}}}}}}}}
| Q | P = [[d:Special:EntityPage/{{#if:1|{{{1}}}}}|{{#invoke:wd|label|{{{1}}}}} <small>({{#if:1|{{{1}}}}})</small>]]
| #default = [[d:Special:EntityPage/Q{{#if:1|{{{1}}}}}|{{#invoke:wd|label|Q{{#if:1|{{{1}}}}}}} <small>(Q{{#if:1|{{{1|}}}}})</small>]]
}}
| {{#if:{{#invoke:wd|label|raw}}
| [[d:Special:EntityPage/{{#invoke:wd|label|raw}}|{{#invoke:wd|label}} <small>({{#invoke:wd|label|raw}})</small>]]
| <small>(no entity)</small>
}}
}}</includeonly><noinclude>{{Documentation}}</noinclude>
fj7fm5iufcoxrqyisjxf30ia7up8u23
Πρότυπον:Q
10
3307
36494
2025-12-15T17:14:17Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπον:Q]] στην [[Πρότυπον:Wikidata entity link]]
36494
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Wikidata entity link]]
tjrkv39ljujt7z3e10m4eb1pxnmomb8
Module:Complex date
828
3308
36495
2025-12-15T17:15:16Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ __ __ _ _ ____ _ _ | \/ | ___ __| |_ _| | ___ _ / ___|___ _ __ ___ _ __ | | _____ __ __| | __ _| |_ ___ | |\/| |/ _ \ / _` | | | | |/ _ (_) | / _ \| '_ ` _ \| '_ \| |/ _ \ \/ / / _` |/ _` | __/ _ \ | | | | (_) | (_| | |_| | | __/_| |__| (_) | | | | | | |_) | | __/> < | (_| | (_| | || __/ |_| |_|\___/ \__,_|\__,_|_|\___(_)\____\___/|_| |_| |_| .__/|_|\___/...'
36495
Scribunto
text/plain
--[[
__ __ _ _ ____ _ _
| \/ | ___ __| |_ _| | ___ _ / ___|___ _ __ ___ _ __ | | _____ __ __| | __ _| |_ ___
| |\/| |/ _ \ / _` | | | | |/ _ (_) | / _ \| '_ ` _ \| '_ \| |/ _ \ \/ / / _` |/ _` | __/ _ \
| | | | (_) | (_| | |_| | | __/_| |__| (_) | | | | | | |_) | | __/> < | (_| | (_| | || __/
|_| |_|\___/ \__,_|\__,_|_|\___(_)\____\___/|_| |_| |_| .__/|_|\___/_/\_\ \__,_|\__,_|\__\___|
|_|
This module is intended for creation of complex date phrases in variety of languages.
Once deployed, please do not modify this code without applying the changes first at Module:Complex date/sandbox and testing
at Module:Complex date/sandbox/testcases.
Authors and maintainers:
* User:Sn1per - first draft of the original version
* User:Jarekt - corrections and expansion of the original version
]]
-- List of external modules and functions
local p = {Error = nil}
local i18n = require('Module:i18n/complex date') -- used for translations of date related phrases
local ISOdate = require('Module:ISOdate')._ISOdate -- used for parsing dates in YYYY-MM-DD and related formats
local Calendar -- loaded lazily
-- ==================================================
-- === Internal functions ===========================
-- ==================================================
local function langSwitch(list,lang)
local langList = mw.language.getFallbacksFor(lang)
table.insert(langList,1,lang)
table.insert(langList,math.max(#langList,2),'default')
for i,language in ipairs(langList) do
if list[language] then
return list[language]
end
end
end
-- ==================================================
local function formatnum1(numStr, lang)
-- mostly require('Module:Formatnum').formatNum function used to translate a number to use different numeral characters,
-- except that it it does not call that function unless the language is on the list "LList"
local LList = {bn=1,bpy=1,kn=1,hi=1,mr=1,new=1,pa=1,gu=1,fa=1,glk=1,mzn=1,ur=1,ar=1,ckb=1,ks=1,lo=1,['or']=1,bo=1,['ml-old']=1,mn=1,te=1,th=1}
if LList[lang] then -- call only when the language is on the list
numStr = require('Module:Formatnum').formatNum(numStr, lang, 1)
end
return numStr
end
-- ==================================================
local function getISODate(datestr, datetype, lang, num, case)
-- translate dates in the format YYYY, YYYY-MM, and YYYY-MM-DD
if not case and i18n.Translations[datetype] then
-- look up the grammatical case needed and call ISOdate module
local rec = langSwitch(i18n.Translations[datetype], lang)
if type(rec)=='table' then
case = rec.case[num]
end
end
return ISOdate(datestr, lang, case, '', 1)
end
-- =======================================================================
local function translatePhrase(date1, date2, operation, lang, state)
-- use tables in Module:i18n/complex date to translate a phrase
if not i18n.Translations[operation] then
p.Error = string.format('<span style="background-color:red;">Error in [[Module:Complex date]]: input parameter "%s" is not recognized.</span>', operation or 'nil')
return ''
end
local dateStr = langSwitch(i18n.Translations[operation], lang)
if type(dateStr)=='table' then
dateStr = dateStr[1]
end
if type(dateStr)=='function' then
local dateFunc = dateStr
local nDates = i18n.Translations[operation]['nDates']
if nDates==2 then -- 2 date phrase
dateStr = dateFunc(date1, date2, state)
else -- 1 date phrase
dateStr = dateFunc(date1, state)
end
end
if type(dateStr)=='string' then
-- replace parts of the string '$date1' and '$date2' with date1 and date2 strings
dateStr = mw.ustring.gsub(dateStr, '$date1', date1)
dateStr = mw.ustring.gsub(dateStr, '$date2', date2)
else
-- Special case of more complex phrases that can be build out of simple phrases
-- If complex case is not translated to "lang" than build it out of simpler ones
local x = dateStr
dateStr = p._complex_date(x.conj, x.adj1, date1, x.units1, x.era1, x.adj2, date2, x.units2, x.era2, lang, 2)
end
return dateStr
end
-- =======================================================================
local function oneDatePhrase(dateStr, adj, era, units, lang, num, case, state)
-- translate a single date phrase
if num==2 then
state.adj, state.era, state.units, state.precision = state.adj2, state.era2, state.units2, state.precision2
end
-- dateStr can have many forms: ISO date, year or a number for
-- decade, century or millennium
if units == '' then -- unit is "year", "month", "day"
dateStr = getISODate(dateStr, adj, lang, num, case)
else -- units is "decade", "century", "millennium''
dateStr = translatePhrase(dateStr, '', units, lang, state)
end
-- add adjective ("early", "mid", etc.) or preposition ("before", "after",
-- "circa", etc.) to the date
if adj ~= '' then
dateStr = translatePhrase(dateStr, '', adj, lang, state)
else -- only era?
dateStr = formatnum1(dateStr, lang)
end
-- add era
if era ~= '' then
dateStr = translatePhrase(dateStr, '', era, lang, state)
end
return dateStr
end
-- =======================================================================
local function twoDatePhrase(date1, date2, state, lang)
-- translate a double date phrase
local dateStr, case
local era=''
if state.era1 == state.era2 then
-- if both eras are the same than add it only once
era = state.era1
state.era1 = ''
state.era2 = ''
end
case = {nil, nil}
if i18n.Translations[state.conj] then
local rec = langSwitch(i18n.Translations[state.conj], lang)
if type(rec)=='table' then
case = rec.case
end
end
date1 = oneDatePhrase(date1, state.adj1, state.era1, state.units1, lang, 1, case[1], state)
date2 = oneDatePhrase(date2, state.adj2, state.era2, state.units2, lang, 2, case[2], state)
dateStr = translatePhrase(date1, date2, state.conj, lang, state)
if era ~= '' then
dateStr = translatePhrase(dateStr, '', era, lang, state)
end
return dateStr
end
-- =======================================================================
local function otherPhrases(date1, date2, operation, era, lang, state)
-- translate specialized phrases
local dateStr = ''
if operation == 'islamic' then
if date2=='' then date2 = mw.getCurrentFrame():callParserFunction('#time', 'xmY', date1) end
date1 = getISODate(date1, operation, lang, 1, nil)
date2 = getISODate(date2, operation, lang, 2, nil)
if era == '' then era = 'ad' end
dateStr = translatePhrase(date1, '', era, lang, state) .. ' (' .. translatePhrase(date2, '', 'ah', lang, state) .. ')'
era = ''
elseif operation == 'julian' then
if not date2 and date1 then -- Convert from Julian to Gregorian calendar date
if Calendar == nil then
Calendar = require("Module:Calendar") -- lazy loding (only if needed)
end
local JDN = Calendar._date2jdn(date1, 0)
if JDN then
date2 = date1 -- first date is assumed to be Julian
date1 = Calendar._jdn2date(JDN, 1)
end
end
date1 = getISODate(date1, operation, lang, 1, nil)
date2 = getISODate(date2, operation, lang, 2, nil)
dateStr = translatePhrase(date1, date2, operation, lang, state)
dateStr = mw.ustring.gsub(mw.ustring.gsub(dateStr, '%( ', '('), ' %)', ')') -- in case date2 is empty
elseif operation == 'turn of the year' or operation == 'turn of the decade' or operation == 'turn of the century' then
local dt = 1
if operation == 'turn of the decade' then dt=10 end
if not date2 or date2=='' then date2=tostring(tonumber(date1)-dt) end
if era~='bp' and era~='bc' then date1, date2 = date2, date1 end
if operation == 'turn of the year' then
date1 = ISOdate(date1, lang, '', '', 1)
date2 = ISOdate(date2, lang, '', '', 1)
else
date1 = formatnum1(date1, lang)
date2 = formatnum1(date2, lang)
end
dateStr = translatePhrase(date1, date2, operation, lang, state)
elseif operation == 'year unknown' then
dateStr = translatePhrase('', '', operation, lang, state) .. '<div style="display: none;">Unknown date</div>'
elseif operation == 'unknown' then
dateStr = tostring(mw.message.new( "exif-unknowndate" ):inLanguage( lang )) .. '<div style="display: none;">Unknown date</div>'
end
-- add era
if era ~= '' then
dateStr = translatePhrase(dateStr, '', era, lang, state)
end
return dateStr
end
-- =======================================================================
local function checkAliases(str1, str2, sType)
-- some inputs have many aliases - reconcile them and ensure string is playing a proper role
local out = ''
if str1 and str1~='' then
local a = i18n.Synonyms[str1] -- look up synonyms of "str1"
if a then
out = a[1]
else
p.Error = string.format('<span style="background-color:red;">Error in [[Module:Complex date]]: %s is not recognized.</span>', str1)
end
elseif str2 and str2~='' then -- if "str1" of type "sType" is empty than maybe ...
local a = i18n.Synonyms[str2] -- ..."str2" is of the same type and is not empty
if a and a[2]==sType then
out = a[1]
str2 = ''
end
end
return out, str2
end
-- =======================================================================
local function datePrecision(dateStr, units)
-- "in this module "Units" is a string like millennium, century, or decade
-- "precision" is wikibase compatible date precision number: 6=millennium, 7=century, 8=decade, 9=year, 10=month, 11=day
-- based on string or numeric input calculate "Units" and "precision"
local precision
if type(units)=='number' then
precision = units
if precision>11 then precision=11 end -- clip the range of precision values
if precision==6 then units='millennium'
elseif precision==7 then units='century'
elseif precision==8 then units='decade'
else units = ''
end
elseif type(units)=='string' then
units = string.lower(units)
if units=='millennium' then precision=6
elseif units=='century' then precision=7
elseif units=='decade' then precision=8
else precision=9
end
end
if units=='' or precision==9 then
local sLen = mw.ustring.len(dateStr)
if sLen<= 4 then precision=9
elseif sLen== 7 then precision=10
elseif sLen>=10 then precision=11
end
units=''
end
if precision==6 and dateStr.match( dateStr, '%d000' )~=nil then
dateStr = tostring(math.floor(tonumber(dateStr)/1000) +1)
elseif precision==7 and mw.ustring.match( dateStr, '%d%d00' )~=nil then
dateStr = tostring(math.floor(tonumber(dateStr)/100) +1)
end
return dateStr, units, precision
end
-- =======================================================================
local function isodate2timestamp(dateStr, precision, era)
-- convert date string to timestamps used by Quick Statements
local tStamp = nil
if era == 'ah' or precision<6 then
return nil
elseif era ~= '' then
local eraLUT = {ad='+', bc='-', bp='-' }
era = eraLUT[era]
else
era='+'
end
-- convert isodate to timestamp used by quick statements
if precision>=9 then
if string.match(dateStr,"^%d%d%d%d$") then -- if YYYY format
tStamp = era .. dateStr .. '-00-00T00:00:00Z/9'
elseif string.match(dateStr,"^%d%d%d%d%-%d%d$") then -- if YYYY-MM format
tStamp = era .. dateStr .. '-00T00:00:00Z/10'
elseif string.match(dateStr,"^%d%d%d%d%-%d%d%-%d%d$") then -- if YYYY-MM-DD format
tStamp = era .. dateStr .. 'T00:00:00Z/11'
end
elseif precision==8 then -- decade
tStamp = era .. dateStr .. '-00-00T00:00:00Z/8'
elseif precision==7 then -- century
local d = tostring(tonumber(dateStr)-1)
tStamp = era .. d .. '50-00-00T00:00:00Z/7'
elseif precision==6 then
local d = tostring(tonumber(dateStr)-1)
tStamp = era .. d .. '500-00-00T00:00:00Z/6'
end
return tStamp
end
-- =======================================================================
local function oneDateQScode(dateStr, adj, era, precision)
-- create QuickStatements string for "one date" dates
local outputStr = ''
local d = isodate2timestamp(dateStr, precision, era)
if not d then
return ''
end
local rLUT = { early='Q40719727' , mid='Q40719748', late='Q40719766',
['1quarter']='Q40690303' , ['2quarter']='Q40719649' , ['3quarter']='Q40719662', ['4quarter']='Q40719674',
spring='Q40720559' , summer='Q40720564' , autumn='Q40720568' , winter='Q40720553',
firsthalf='Q40719687', secondhalf='Q40719707' }
local qLUT = {['from']='P580', ['until']='P582', ['after']='P1319', ['before']='P1326', ['by']='P1326'}
local refine = rLUT[adj]
local qualitier = qLUT[adj]
if adj=='' then
outputStr = d
elseif adj=='circa' then
outputStr = d..",P1480,Q5727902"
elseif refine then
outputStr = d..",P4241,"..refine
elseif precision>7 and qualitier then
local century = string.gsub(d, 'Z%/%d+', 'Z/7')
outputStr = century ..",".. qualitier ..","..d
end
return outputStr
end
-- =======================================================================
local function twoDateQScode(date1, date2, state)
-- create QuickStatements string for "two date" dates
if state.adj1~='' or state.adj2~='' or state.era1~=state.era2 then
return '' -- QuickStatements string are not generated for two date phrases with adjectives
end
local outputStr = ''
local d1 = isodate2timestamp(date1, state.precision1, state.era1)
local d2 = isodate2timestamp(date2, state.precision2, state.era2)
if (not d1) or (not d2) then
return ''
end
-- find date with lower precision in common to both dates
local cd
local year1 = tonumber(string.sub(d1,2,5))
local year2 = tonumber(string.sub(d2,2,5))
local k = 0
for i = 1,10,1 do
if string.sub(d1,1,i)==string.sub(d2,1,i) then
k = i -- find last matching letter
end
end
if k>=9 then -- same month, since "+YYYY-MM-" is in common
cd = isodate2timestamp(string.sub(d1,2,8), 10, state.era1)
elseif k>=6 and k<9 then -- same year, since "+YYYY-" is in common
cd = isodate2timestamp(tostring(year1), 9, state.era1)
elseif k==4 then -- same decade(k=4, precision=8), since "+YYY" is in common
cd = isodate2timestamp(tostring(year1), 8, state.era1)
elseif k==3 then -- same century(k=3, precision=7) since "+YY" is in common
local d = tostring(math.floor(year1/100) +1) -- convert 1999 -> 20
cd = isodate2timestamp( d, 7, state.era1)
elseif k==2 then -- same millennium (k=2, precision=6), since "+Y" is in common
local d = tostring(math.floor(year1/1000) +1) -- convert 1999 -> 2
cd = isodate2timestamp( d, 6, state.era1)
end
if not cd then
return ''
end
--if not cd then
-- return ' <br/>error: ' .. d1.." / " .. d2.." / ".. (cd or '') .." / ".. string.sub(d1,2,5).." / " .. string.sub(d2,2,5).." / " .. tostring(k)
--end
--
if (state.conj=='from-until') or (state.conj=='and' and year1==year2-1) then
outputStr = cd ..",P580,".. d1 ..",P582,".. d2
elseif (state.conj=='between') or (state.conj=='or' and year1==year2-1) then
outputStr = cd ..",P1319,".. d1 ..",P1326,".. d2
elseif state.conj=='circa2' then
outputStr = cd ..",P1319,".. d1 ..",P1326,".. d2 ..",P1480,Q5727902"
end
return outputStr
end
-- =======================================================================
local function processInputParams(conj, adj1, date1, units1, era1, adj2, date2, units2, era2, lang, passNr)
-- process inputs and save date in state array
local state = {}
state.conj = string.lower(conj or '')
state.adj1 = string.lower(adj1 or '')
state.adj2 = string.lower(adj2 or '')
state.era1 = string.lower(era1 or '')
state.era2 = string.lower(era2 or '')
state.units1 = string.lower(units1 or '')
state.units2 = string.lower(units2 or '')
-- if date 1 is missing but date 2 is provided than swap them
if date1 == '' and date2 ~= '' then
date1 = date2
date2 = ''
state = {adj1 = state.adj2, era1 = state.era2, units1 = state.units2,
adj2 = '', era2 = '', units2 = '', conj=state.conj, num=1}
end
if date2 ~= '' then state.nDates = 2
elseif date1 ~= '' then state.nDates = 1
else state.nDates = 0
end
-- reconcile alternative names for text inputs
local conj = checkAliases(state.conj ,'' ,'j')
state.adj1 ,conj = checkAliases(state.adj1 ,conj,'a')
state.units1,conj = checkAliases(state.units1,conj,'p')
state.era1 ,conj = checkAliases(state.era1 ,conj,'e')
state.special,conj = checkAliases('',conj,'c')
state.adj2 = checkAliases(state.adj2 ,'','a')
state.units2 = checkAliases(state.units2,'','p')
state.era2 = checkAliases(state.era2 ,'','e')
state.conj = conj
state.lang = lang
if p.Error~=nil then
return nil
end
-- calculate date precision value
date1, state.units1, state.precision1 = datePrecision(date1, state.units1)
date2, state.units2, state.precision2 = datePrecision(date2, state.units2)
-- Handle special cases
-- Some complex phrases can be created out of simpler ones. Therefore on pass # 1 we try to create
-- the phrase using complex phrase and if that is not found than on the second pass we try to build
-- the phrase out of the simpler ones
if passNr==1 then
if state.adj1=='circa' and state.nDates == 2 then
state.conj = 'circa2'
state.adj1 = ''
state.adj2 = ''
end
if state.nDates == 2 and state.adj1=='late' and state.adj2=='early' and state.conj=='and'
and state.units1==state.units2 and state.era1==state.era2 then
if state.units1=='century' then
state.conj='turn of the century'
elseif state.units1=='decade' then
state.conj='turn of the decade'
elseif state.units1=='' then
state.conj='turn of the year'
end
state.adj1 = ''
state.adj2 = ''
state.units1 = ''
state.units2 = ''
end
end
state.adj, state.era, state.units, state.precision = state.adj1, state.era1, state.units1, state.precision1
return date1, date2, state
end
-- ==================================================
-- === External functions ===========================
-- ==================================================
function p.Era(frame)
-- process inputs
local dateStr
local args = frame.args
if not (args.lang and mw.language.isSupportedLanguage(args.lang)) then
args.lang = frame:callParserFunction( "int", "lang" ) -- get user's chosen language
end
local lang = args['lang']
local dateStr = args['date'] or ''
local eraType = string.lower(args['era'] or '')
dateStr = ISOdate(dateStr, lang, '', '', 1)
if eraType then
eraType = checkAliases(eraType ,'','e')
dateStr = translatePhrase(dateStr, '', eraType, lang, {})
end
return dateStr
end
-- =======================================================================
function p._complex_date(conj, adj1, date1, units1, era1, adj2, date2, units2, era2, lang, passNr)
local Output=''
local state
-- process inputs and save date in state array
date1, date2, state = processInputParams(conj, adj1, date1, units1, era1, adj2, date2, units2, era2, lang, passNr)
if p.Error~=nil then
return nil
end
local errorStr = string.format(
'\n*conj=%s, adj1=%s, era1=%s, unit1=%s, prec1=%i, adj2=%s, era2=%s, unit2=%s, prec2=%i, special=%s',
state.conj, state.adj1, state.era1, state.units1, state.precision1,
state.adj2, state.era2, state.units2, state.precision2, state.special)
-- call specialized functions
local QScode = ''
if state.special~='' then
Output = otherPhrases(date1, date2, state.special, state.era1, lang, state)
elseif state.conj~='' then
QScode = twoDateQScode(date1, date2, state)
Output = twoDatePhrase(date1, date2, state, lang)
elseif state.adj1~='' or state.era1~='' or state.units1~='' then
Output = oneDatePhrase(date1, state.adj1, state.era1, state.units1, lang, 1, nil, state)
QScode = oneDateQScode(date1, state.adj1, state.era1, state.precision1)
elseif date1~='' then
Output = ISOdate(date1, lang, '', 'dtstart', '100-999')
end
if p.Error~=nil then
return errorStr
end
-- if there is any wikicode in the string than execute it
if mw.ustring.find(Output, '{') then
Output = mw.getCurrentFrame():preprocess(Output)
end
if QScode and #QScode>0 then
QScode = ' <div style="display: none;">date QS:P,' .. QScode .. '</div>'
end
return Output .. QScode
end
-- =======================================================================
function p._complex_date_cer(conj, adj1, date1, units1, era1, adj2, date2, units2, era2, certainty, lang)
-- same as p._complex_date but with extra parameter for certainty: probably, possibly, presumably, etc.
local dateStr = p._complex_date(conj, adj1, date1, units1, era1, adj2, date2, units2, era2, lang, 1)
certainty = checkAliases(certainty, conj, 'r')
local LUT = {probably='Q56644435', presumably='Q18122778', possibly='Q30230067', circa='Q5727902' }
if certainty and LUT[certainty] then
local state = {}
date1, date2, state = processInputParams(conj, adj1, date1, units1, era1, adj2, date2, units2, era2, lang, 1)
dateStr = translatePhrase(dateStr, '', certainty, lang, state)
dateStr = string.gsub(dateStr, '(%<div style="display: none;"%>date QS:P,[^%<]+)(%</div%>)', '%1,P1480,' .. LUT[certainty] .. '%2' )
end
return dateStr
end
-- =======================================================================
function p.complex_date(frame)
-- process inputs
local dateStr
local args = frame.args
if not (args.lang and mw.language.isSupportedLanguage(args.lang)) then
args.lang = frame:callParserFunction( "int", "lang" ) -- get user's chosen language
end
local date1 = args['date1'] or args['2'] or args['date'] or ''
local date2 = args['date2'] or args['3'] or ''
local conj = args['conj'] or args['1'] or ''
local adj1 = args['adj1'] or args['adj'] or ''
local adj2 = args['adj2'] or ''
local units1 = args['precision1'] or args['precision'] or ''
local units2 = args['precision2'] or args['precision'] or ''
local era1 = args['era1'] or args['era'] or ''
local era2 = args['era2'] or args['era'] or ''
local certainty = args['certainty']
local lang = args['lang']
dateStr = p._complex_date_cer(conj, adj1, date1, units1, era1, adj2, date2, units2, era2, certainty, lang)
if p.Error~=nil then
dateStr = p.Error .. '[[Category:Pages using Complex date template with incorrect parameter]]'
end
return dateStr
end
return p
ppv1t08ydt8a9x36u2iltdsomq7mcr5
Module:DateI18n
828
3309
36496
2025-12-15T17:16:16Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ __ __ _ _ ____ _ ___ _ ___ | \/ | ___ __| |_ _| | ___ _| _ \ __ _| |_ ___|_ _/ |( _ ) _ __ | |\/| |/ _ \ / _` | | | | |/ _ (_) | | |/ _` | __/ _ \| || |/ _ \| '_ \ | | | | (_) | (_| | |_| | | __/_| |_| | (_| | || __/| || | (_) | | | | |_| |_|\___/ \__,_|\__,_|_|\___(_)____/ \__,_|\__\___|___|_|\___/|_| |_| This module is intended for processing of date strings. Please do...'
36496
Scribunto
text/plain
--[[
__ __ _ _ ____ _ ___ _ ___
| \/ | ___ __| |_ _| | ___ _| _ \ __ _| |_ ___|_ _/ |( _ ) _ __
| |\/| |/ _ \ / _` | | | | |/ _ (_) | | |/ _` | __/ _ \| || |/ _ \| '_ \
| | | | (_) | (_| | |_| | | __/_| |_| | (_| | || __/| || | (_) | | | |
|_| |_|\___/ \__,_|\__,_|_|\___(_)____/ \__,_|\__\___|___|_|\___/|_| |_|
This module is intended for processing of date strings.
Please do not modify this code without applying the changes first at Module:Date/sandbox and testing
at Module:Date/sandbox/testcases and Module talk:Date/sandbox/testcases.
Authors and maintainers:
* User:Parent5446 - original version of the function mimicking template:ISOdate
* User:Jarekt - original version of the functions mimicking template:Date
]]
require('strict')
-- ==================================================
-- === Internal functions ===========================
-- ==================================================
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val==1 then
return true
elseif val==0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or tonumber(val) == 0 then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or tonumber(val) == 1 then
return true
end
end
return default
end
---------------------------------------------------------------------------------------
-- String replacement that ignores part of the string in "..."
local function strReplace(String, old, new)
if String:find('"') then
local T={}
for i, str in ipairs(mw.text.split( String, '"', true )) do
if i%2==1 then
str = str:gsub(old, new)
end
table.insert(T, str)
end
return table.concat(T,'"')
else
return String:gsub(old, new)
end
end
---------------------------------------------------------------------------------------
-- process datevec
-- INPUT:
-- * datevec - Array of {year,month,day,hour,minute,second, tzhour, tzmin} containing broken
-- down date-time component strings or numbers
-- OUTPUT:
-- * datecode - a code specifying content of the array where Y' is year, 'M' is month,
-- 'D' is day, 'H' is hour, 'M' minute, 'S' is second. output has to be one of YMDHMS, YMDHM, YMD, YM, MD, Y
-- * datenum - same array but holding only numbers or nuls
local function parserDatevec(datevec)
-- if month is not a number than check if it is a month name in project's language
local month = datevec[2]
if month and month~='' and not tonumber(month) then
datevec[2] = mw.getContentLanguage():formatDate( "n", month)
end
-- create datecode based on which variables are provided and check for out-of-bound values
local maxval = {nil, 12, 31, 23, 59, 59, 23, 59} -- max values for year, month, ...
local minval = {nil, 1, 1, 0, 0, 0, -23, 0} -- min values for year, month, ...
local c = {'Y', 'M', 'D', 'H', 'M', 'S', '', ''}
local datecode = '' -- a string signifying which combination of variables was provided
local datenum = {} -- date-time encoded as a vector = [year, month, ... , second]
for i = 1,8 do
datenum[i] = tonumber(datevec[i])
if datenum[i] and (i==1 or (datenum[i]>=minval[i] and datenum[i]<=maxval[i])) then
datecode = datecode .. c[i]
end
end
return datecode, datenum
end
---------------------------------------------------------------------------------------
-- process datevec
-- INPUT:
-- * datecode - a code specifying content of the array where Y' is year, 'M' is month,
-- 'D' is day, 'H' is hour, 'M' minute, 'S' is second. output has to be one of YMDHMS, YMDHM, YMD, YM, MD, Y
-- * datenum - Array of {year,month,day,hour,minute,second, tzhour, tzmin} as numbers or nuls
-- OUTPUT:
-- * timeStamp - date string in the format taken by mw.language:formatDate lua function and {{#time}} perser function
-- https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#mw.language:formatDate
-- https://www.mediawiki.org/wiki/Help:Extension:ParserFunctions#.23time
-- * datecode - with possible corrections
local function getTimestamp(datecode, datenum)
-- create time stamp string (for example 2000-02-20 02:20:20) based on which variables were provided
local timeStamp
if datecode == 'YMDHMS' then
timeStamp = string.format('%04i-%02i-%02i %02i:%02i:%02i', datenum[1], datenum[2], datenum[3], datenum[4], datenum[5], datenum[6] )
elseif datecode == 'YMDHM' then
timeStamp = string.format('%04i-%02i-%02i %02i:%02i', datenum[1], datenum[2], datenum[3], datenum[4], datenum[5] )
elseif datecode:sub(1,3)=='YMD' then
timeStamp = string.format('%04i-%02i-%02i', datenum[1], datenum[2], datenum[3] )
datecode = 'YMD' -- 'YMD', 'YMDHMS' and 'YMDHM' are the only supported format starting with 'YMD'. All others will be converted to 'YMD'
elseif datecode == 'YM' then
timeStamp = string.format('%04i-%02i', datenum[1], datenum[2] )
elseif datecode:sub(1,1)=='Y' then
timeStamp = string.format('%04i', datenum[1] )
datecode = 'Y'
elseif datecode == 'M' then
timeStamp = string.format('%04i-%02i-%02i', 2000, datenum[2], 1 )
elseif datecode == 'MD' then
timeStamp = string.format('%04i-%02i-%02i', 2000, datenum[2], datenum[3] )
else
timeStamp = nil -- format not supported
end
return timeStamp, datecode
end
---------------------------------------------------------------------------------------
-- trim leading zeros in years prior to year 1000
-- INPUT:
-- * datestr - translated date string
-- * lang - language of translation
-- OUTPUT:
-- * datestr - updated date string
local function trimYear(datestr, year, lang)
local yearStr0, yearStr1, yearStr2, zeroStr
yearStr0 = string.format('%04i', year ) -- 4 digit year in standard form "0123"
yearStr1 = mw.language.new(lang):formatDate( 'Y', yearStr0) -- same as calling {{#time}} parser function
--yearStr1 = mw.getCurrentFrame():callParserFunction( "#time", { 'Y', yearStr0, lang } ) -- translate to a language
if yearStr0==yearStr1 then -- most of languages use standard form of year
yearStr2 = tostring(year)
else -- some languages use different characters for numbers
yearStr2 = yearStr1
zeroStr = mw.ustring.sub(yearStr1,1,1) -- get "0" in whatever language
for i=1,3 do -- trim leading zeros
if mw.ustring.sub(yearStr2,1,1)==zeroStr then
yearStr2 = mw.ustring.sub(yearStr2, 2, 5-i)
else
break
end
end
end
return string.gsub(datestr, yearStr1, yearStr2 ) -- in datestr replace long year with trimmed one
end
---------------------------------------------------------------------------------------
-- Look up proper format string to be passed to {{#time}} parser function
-- INPUTS:
-- * datecode: YMDHMS, YMDHM, YMD, YM, MD, Y, or M
-- * day : Number between 1 and 31 (not needed for most languages)
-- * lang : language
-- OUTPUT:
-- * dFormat : input to {{#time}} function
local function getDateFormat(datecode, day, lang)
local function parseFormat(dFormat, day)
if dFormat:find('default') and #dFormat>10 then
-- special (and messy) case of dFormat code depending on a day number
-- then json contains a string with more json containing "default" field and 2 digit day keys
-- if desired day is not in that json than use "default" case
dFormat = dFormat:gsub('”','"') -- change fancy double quote to a straight one, used for json marking
local D = mw.text.jsonDecode( dFormat ) --com = mw.dumpObject(D)
day = string.format('d%02i',day) -- create day key
dFormat = D[day] or D.default
dFormat = dFormat:gsub("'", '"') -- change single quote to a double quote, used for {{#time}} marking
end
return dFormat
end
local T = {}
local tab = mw.ext.data.get('DateI18n.tab', lang)
for _, row in pairs(tab.data) do -- convert the output into a dictionary table
local id, _, msg = unpack(row)
T[id] = msg
end
local dFormat = T[datecode]
if dFormat=='default' and (datecode=='YMDHMS' or datecode=='YMDHM') then
-- for most languages adding hour:minute:second is done by adding ", HH:MM:SS to the
-- day precission date, those languages are skipped in DateI18n.tab and default to
-- English which stores word "default"
dFormat = parseFormat(T['YMD'], day).. ', H:i'
if datecode=='YMDHMS' then
dFormat = dFormat .. ':s'
end
else
dFormat = parseFormat(dFormat, day)
end
return dFormat
end
---------------------------------------------------------------------------------------
-- Look up proper format string to be passed to {{#time}} parser function
-- INPUTS:
-- * month : month number
-- * case : gramatic case abbriviation, like "ins", "loc"
-- * lang : language
-- OUTPUT:
-- * dFormat : input to {{#time}} function
local function MonthCase(month, case, lang)
local T = {{},{},{},{},{},{},{},{},{},{},{},{}}
local tab = mw.ext.data.get('I18n/MonthCases.tab', lang)
for _, row in pairs(tab.data) do
local mth, cs, msg = unpack(row)
T[mth][cs] = msg
end
return T[month][case]
end
-- ==================================================
-- === External functions ===========================
-- ==================================================
local p = {}
--[[ ========================================================================================
Date
This function is the core part of the ISOdate template.
Usage:
local Date = require('Module:DateI18n')._Date
local dateStr = Date({2020, 12, 30, 12, 20, 11}, lang)
Parameters:
* {year,month,day,hour,minute,second, tzhour, tzmin}: broken down date-time component strings or numbers
tzhour, tzmin are timezone offsets from UTC, hours and minutes
* lang: The language to display it in
* case: Language format (genitive, etc.) for some languages
* class: CSS class for the <time> node, use "" for no metadata at all
]]
function p._Date(datevec, lang, case, class, trim_year)
-- make sure inputs are in the right format
if not lang or not mw.language.isValidCode( lang ) then
lang = mw.getCurrentFrame():callParserFunction( "int", "lang" ) -- get user's chosen language
end
if lang == 'be-tarsk' then
lang = 'be-x-old'
end
-- process datevec and extract timeStamp and datecode strings as well as numeric datenum array
local datecode, datenum = parserDatevec(datevec)
local year, month, day = datenum[1], datenum[2], datenum[3]
local timeStamp, datecode = getTimestamp(datecode, datenum)
if not timeStamp then -- something went wrong in parserDatevec
return ''
end
-- Commons [[Data:DateI18n.tab]] page stores prefered formats for diferent
-- languages and datecodes (specifying year-month-day or just year of month-day, etc)
-- Look up country specific format input to {{#time}} function
local dFormat = getDateFormat(datecode, day, lang)
-- By default the gramatical case is not specified (case=='') allowing the format to be specified
-- in [[Data:DateI18n.tab]]. You can overwrite the default grammatical case of the month by
-- specifying "case" variable. This is needed mostly by Slavic languages to create more complex
-- phrases as it is done in [[c:Module:Complex date]]
case = case or ''
if (lang=='qu' or lang=='qug') and (case=='nom') then
-- Special case related to Quechua and Kichwa languages. The form in the I18n is
-- Genitive case with suffix "pi" added to month names provided by {#time}}
-- in Nominative case that "pi" should be removed
-- see https://commons.wikimedia.org/wiki/Template_talk:Date#Quechua from 2014
dFormat = dFormat:gsub('F"pi"', 'F')
elseif (case=='gen') then
dFormat = strReplace(dFormat, "F", "xg")
elseif (case=='nom') then
dFormat = strReplace(dFormat, "xg", "F")
elseif (case ~= '') then
-- see is page [[Data:I18n/MonthCases.tab]] on Commons have name of the month
-- in specific gramatic case in desired language. If we have it than replace
-- "F" and xg" in dFormat
local monthMsg = MonthCase(month, case, lang)
if monthMsg and monthMsg ~= '' then -- make sure it exists
dFormat = strReplace(dFormat, 'F', '"'..monthMsg..'"') -- replace default month with month name we already looked up
dFormat = strReplace(dFormat, 'xg', '"'..monthMsg..'"')
end
end
-- Translate the date using specified format
-- See https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#mw.language:formatDate and
-- https://www.mediawiki.org/wiki/Help:Extension:ParserFunctions##time for explanation of the format
local datestr = mw.language.new(lang):formatDate( dFormat, timeStamp) -- same as using {{#time}} parser function
-- Special case related to Thai solar calendar: prior to 1940 new-year was at different
-- time of year, so just year (datecode=='Y') is ambiguous and is replaced by "YYYY or YYYY" phrase
if lang=='th' and datecode=='Y' and year<=1940 then
datestr = string.format('%04i หรือ %04i', year+542, year+543 )
end
-- If year<1000 than either keep the date padded to the length of 4 digits or trim it
-- decide if the year will stay padded with zeros (for years in 0-999 range)
if year and year<1000 then
if type(trim_year)=='nil' then
trim_year = '100-999'
end
local trim = yesno(trim_year,nil) -- convert to boolean
if trim==nil and type(trim_year)=='string' then
-- if "trim_year" not a simple True/False than it is range of dates
-- for example '100-999' means to pad one and 2 digit years to be 4 digit long, while keeping 3 digit years as is
local YMin, YMax = trim_year:match( '(%d+)-(%d+)' )
trim = (YMin~=nil and year>=tonumber(YMin) and year<=tonumber(YMax))
end
if trim==true then
datestr = trimYear(datestr, year, lang) -- in datestr replace long year with trimmed one
end
end
-- append timezone if present
if datenum[7] and (datecode == 'YMDHMS' or datecode == 'YMDHM') then
-- use {{#time}} parser function to create timezone string, so that we use correct character set
local sign = (datenum[7]<0) and '−' or '+'
timeStamp = string.format("2000-01-01 %02i:%02i:00", math.abs(datenum[7]), datenum[8] or 0)
local timezone = mw.language.new(lang):formatDate( 'H:i', timeStamp) -- same as using {{#time}} parser function
datestr = string.format("%s %s%s", datestr, sign, timezone )
end
-- html formating and tagging of date string
if class and class ~= '' and datecode~='M' and datecode~='MD'then
local DateHtmlTags = '<span style="white-space:nowrap"><time class="%s" datetime="%s">%s</time></span>'
datestr = DateHtmlTags:format(class, timeStamp, datestr)
end
return datestr
end
--[[ ========================================================================================
Date
This function is the core part of the ISOdate template.
Usage:
{{#invoke:DateI18n|Date|year=|month=|day=|hour=|minute=|second=|tzhour=|tzmin=|lang=en}}
Parameters:
* year, month, day, hour, minute, second: broken down date-time component strings
* tzhour, tzmin: timezone offset from UTC, hours and minutes
* lang: The language to display it in
* case: Language format (genitive, etc.) for some languages
* class: CSS class for the <time> node, use "" for no metadata at all
]]
function p.Date(frame)
local args = {}
for name, value in pairs( frame.args ) do
name = string.gsub( string.lower(name), ' ', '_')
args[name] = value
end
return p._Date(
{ args.year, args.month, args.day, args.hour, args.minute, args.second, args.tzhour, args.tzmin },
args.lang, -- language
args.case, -- allows to specify grammatical case for the month for languages that use them
args.class or 'dtstart', -- allows to set the html class of the time node where the date is included. This is useful for microformats.
args.trim_year or '100-999' -- by default pad one and 2 digit years to be 4 digit long, while keeping 3 digit years as is
)
end
return p
lcwmkh5p6iicle9dw7qzn6d8j6xkduv
Module:GetParameters
828
3310
36497
2025-12-15T17:22:15Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} --[[ Helper function that populates the argument list given that user may need to use a mix of named and unnamed parameters. This is relevant because named parameters are not identical to unnamed parameters due to string trimming, and when dealing with strings we sometimes want to either preserve or remove that whitespace depending on the application. ]] function p.getParameters( frame_args, arg_list ) local new_args = {}; lo...'
36497
Scribunto
text/plain
local p = {}
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function p.getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper Function to interpret boolean strings
]]
function p.getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
function p.defined(frame)
local arg = mw.text.trim(frame.args[1])
--if arg == tostring(tonumber(arg)) then -- undesired result for '-0'
-- arg = tonumber(arg)
--end
--if mw.ustring.find(arg, '^%s*-?[1-9][0-9]*%s*$') ~= nil or arg == '0' then
-- arg = tonumber(arg)
--end
if mw.ustring.find(arg, '^-?[1-9][0-9]*$') ~= nil then
arg = tonumber(arg)
elseif arg == '0' then
arg = 0
end
return frame:getParent().args[arg] ~= nil
end
return p
03tz719zcckyx3el16h6xmmjd2dn09v
Module:I18n
828
3311
36498
2025-12-15T17:23:12Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} -- Credit to http://stackoverflow.com/a/1283608/2644759 -- cc-by-sa 3.0 local function tableMerge(t1, t2, overwrite) for k,v in pairs(t2) do if type(v) == "table" and type(t1[k]) == "table" then -- since type(t1[k]) == type(v) == "table", so t1[k] and v is true tableMerge(t1[k], v, overwrite) -- t2[k] == v else if overwrite or t1[k] == nil then t1[k] = v end end end return t1 end function p.loadI18n(name, i18n_arg)...'
36498
Scribunto
text/plain
local p = {}
-- Credit to http://stackoverflow.com/a/1283608/2644759
-- cc-by-sa 3.0
local function tableMerge(t1, t2, overwrite)
for k,v in pairs(t2) do
if type(v) == "table" and type(t1[k]) == "table" then
-- since type(t1[k]) == type(v) == "table", so t1[k] and v is true
tableMerge(t1[k], v, overwrite) -- t2[k] == v
else
if overwrite or t1[k] == nil then t1[k] = v end
end
end
return t1
end
function p.loadI18n(name, i18n_arg)
local exist, res = pcall(require, name)
if exist and next(res) ~= nil then
if i18n_arg then
tableMerge(i18n_arg, res.i18n, true)
elseif type(i18n) == "table" then
-- merge to global i18n
tableMerge(i18n, res.i18n, true)
end
end
end
function p.loadI18nFrame(frame, i18n_arg)
p.loadI18n(frame:getTitle().."/i18n", i18n_arg)
end
return p
pggbb6d78fzqixjoboirtmh9ljkxsuq
Module:I18n/complex date
828
3312
36499
2025-12-15T17:24:04Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ __ __ _ _ ___ _ ___ __ _ _ _ | \/ | ___ __| |_ _| | ___ _|_ _/ |( _ ) _ __ / /__ ___ _ __ ___ _ __ | | _____ __ __| | __ _| |_ ___ | |\/| |/ _ \ / _` | | | | |/ _ (_)| || |/ _ \| '_ \ / / __/ _ \| '_ ` _ \| '_ \| |/ _ \ \/ / / _` |/ _` | __/ _ \ | | | | (_) | (_| | |_| | | __/_ | || | (_) | | | |/ / (_| (_) | | | | | | |_) | | __/>...'
36499
Scribunto
text/plain
--[[
__ __ _ _ ___ _ ___ __ _ _ _
| \/ | ___ __| |_ _| | ___ _|_ _/ |( _ ) _ __ / /__ ___ _ __ ___ _ __ | | _____ __ __| | __ _| |_ ___
| |\/| |/ _ \ / _` | | | | |/ _ (_)| || |/ _ \| '_ \ / / __/ _ \| '_ ` _ \| '_ \| |/ _ \ \/ / / _` |/ _` | __/ _ \
| | | | (_) | (_| | |_| | | __/_ | || | (_) | | | |/ / (_| (_) | | | | | | |_) | | __/> < | (_| | (_| | || __/
|_| |_|\___/ \__,_|\__,_|_|\___(_)___|_|\___/|_| |_/_/ \___\___/|_| |_| |_| .__/|_|\___/_/\_\ \__,_|\__,_|\__\___|
|_|
This code was copied from Commons please request changes there.
Maintainers:
*Jarekt
]]
local function Ordinal(...)
return require('Module:Ordinal-cd')._Ordinal(...)
end
local function Roman(...)
return require('Module:Roman-cd')._Numeral(...)
end
-- ==========================================================================
-- === Local Helper functions ==============================================
-- ==========================================================================
-- form of French "of" based on "precision", which is wikibase compatible date precision format:
-- 6=millennium, 7=century, 8=decade, 9=year, 10=month, 11=day
-- 1 2 3 4 5 mill cent deca year month day
local frOf = {'du','du','du','du','du', 'du', 'du', 'de', 'de', 'de', 'du'}
local function decYear(state,lang,case)
--Declension of word "year" in several languages
if state.precision == 9 then
yearCase = {
fi={xxx='vuosien', gen='vuoden', ill='vuoteen', ptv='vuotta', ela='vuodesta', ine='vuonna'},
sl={insP='letoma', ins='letom', gen='leta', loc='letu'},
hsb={insP='lětami', ins='lětom', gen='lěta', loc='lěće'}
}
return yearCase[lang][case] .. ' '
else
return ''
end
end
local function decCentury(lang,case)
--Declension of word "century" in several languages
centuryCase = {
pl={nom='wiek', gen='wieku', ins='wiekiem', loc='wieku', default = 'wiek'},
hsb={nom='lětstotk', gen='lětstotka', ins='lětstotkom', loc='lětstotku', default = 'lětstotk'}
}
return centuryCase[lang][case] or centuryCase[lang]['default']
end
local function decMillennium(lang,case)
--Declension of word "century" in several languages
millenniumCase = {
pl={nom='tysiąclecie', gen='tysiąclecia', ins='tysiącleciem', loc='tysiącleciu', default = 'tysiąclecie'},
hsb={nom='lěttysac', gen='lěttysaca', ins='lěttysacom', loc='lěttysacu', default = 'lěttysac'}
}
return millenniumCase[lang][case] or millenniumCase[lang]['default']
end
-- ==========================================================================
-- === Output data structure ===============================================
-- ==========================================================================
local p = {}
--[[
Multiple formats are possible:
1) string with key words "$date1" and "$date2" which will be replaced later by the date strings
2) function which can be used to create output string
* Function INPUTS:
- date1 and date2 string with date strings. "$date1" and "$date2" can also be used which will be replaced latter
- state is a table with full description of the phrase we are trying to construct. It includes state.precision1 (and 2)
which is wikibase compatible date precision format: 6=millennium, 7=century, 8=decade, 9=year, 10=month, 11=day
3) table with following fields:
* table[1] is either string or a function
* table.case is a 2 element table with Grammatical cases used by given language to alter
month name or other adjective related to date # 1 and 2
]]
p.Translations = {
-- ==========================================
-- === Two date phrases =====================
-- ==========================================
['from-until'] = {
nDates = 2,
ar='من $date1 إلى $date2',
['be-tarask']={'з $date1 да $date2', case={'gen','gen'}},
bn='$date1 থেকে $date2 পর্যন্ত',
ca='$date1 fins $date2',
ckb='لە $date1 تاوەکوو $date2',
cs='$date1 až $date2',
da='fra $date1 til $date2',
de='$date1 bis $date2',
el='από $date1 έως $date2',
en='from $date1 until $date2',
['en-gb']='from $date1 until $date2',
['en-ca']='from $date1 until $date2',
eo='de $date1 al $date2',
es='de $date1 a $date2',
et='$date1 kuni $date2',
fa='از $date1 تا $date2',
fi='$date1–$date2', -- välisenä aikana
fr=function(date1, date2, state) -- could actually be better should be "d'octobre à mars 2013' not "de octore 2013 à mars 2013"
if state.precision > 10 then -- precision > month
return 'du $date1 au $date2'
else -- "DE septebmbre" / "D'octobre"
return require("Module:Linguistic").of(date1, 'fr') .. " à $date2"
end
end,
gl='de $date1 a $date2', --Template:From until used 'desde $date1 ata $date2'
he='מ- $date1 עד $date2',
hr='od $date1 do $date2',
hsb={'wot $date1 do $date2', case={'gen','gen'}},
hu='$date1 – $date2',
it='dal $date1 al $date2',
ja='$date1から$date2まで',
mk='од $date1 до $date2',
ml='$date1 മുതൽ $date2 വരെ',
nb='fra $date1 til $date2',
nds='$date1 bet $date2',
nn='fra $date1 til $date2',
nl='$date1 tot $date2',
no='fra $date1 til $date2',
pl={'od $date1 do $date2', case={'gen','gen'}},
ro='din $date1 până în $date2',
pt='de $date1 a $date2',
qu="$date1 p'unchawmanta $date2 p\'unchawkama",
ru={'с $date1 по $date2', case={'gen','gen'}},
sk={'od $date1 do $date2', case={'gen','gen'}},
sl={'od $date1 do $date2', case={'gen','gen'}},
sv='från $date1 till $date2',
uk={'з $date1 до $date2', case={'gen','gen'}},
ur='از $date1 تا $date2',
vi='từ $date1 đến $date2',
['zh-hans']='从$date1到$date2',
['zh-hant']='從$date1到$date2',
default='<span style="color:red">$date1 - $date2</span>',
},
['between']={
nDates = 2,
ar='بين $date1 و $date2',
['be-tarask']={'між $date1 і $date2', case={'ins','ins'}},
bn='$date1 এবং $date2-এর মাঝামাঝি',
ca='entre $date1 i $date2',
ckb='لەنێوان $date1 و $date2',
cs={'mezi $date1 a $date2', case={'ins','ins'}},
da='mellem $date1 og $date2',
de='zwischen $date1 und $date2',
el='μεταξύ $date1 και $date2',
en='between $date1 and $date2',
['en-gb']='between $date1 and $date2',
['en-ca']='between $date1 and $date2',
eo='inter $date1 kaj $date2',
es='entre $date1 y $date2',
et='$date1 ja $date2 vahel',
fa='بین $date1 و $date2',
fi={function(date1, date2, state) return decYear(state,'fi','xxx') .. '$date1 ja $date2 välisenä aikana' end, case={'gen','gen'}},
fr='entre $date1 et $date2',
gl='entre $date1 e $date2',
he='בין $date1 ו- $date2',
hr='između $date1 i $date2',
hsb={'mjez $date1 a $date2', case={'ins','ins'}},
hu='$date1 és $date2 között',
hi='$date1 और $date2 के बीच',
it='tra il $date1 e il $date2',
ja='$date1と$date2の間',
mk='помеѓу $date1 и $date2',
ml='$date1, $date2 എന്നിവയ്ക്കിടയ്ക്ക്',
nb='mellom $date1 og $date2',
nds='twischen $date1 un $date2',
nn='mellom $date1 og $date2',
nl='tussen $date1 en $date2',
no='mellom $date1 og $date2',
pl={'między $date1 a $date2', case={'ins','ins'}},
ro='între $date1 și $date2',
pt='entre $date1 e $date2',
qu="$date1 p'unchawpa $date2 p'unchawpapas chawpin",
ru={'между $date1 и $date2', case={'ins','ins'}},
sk={'medzi $date1 a $date2', case={'ins','ins'}},
sl={function(date1, date2, state) return 'med ' .. decYear(state,'sl','insP') .. '$date1 in $date2' end, case={'ins','ins'}},
sv='mellan $date1 och $date2',
uk={'між $date1 та $date2', case={'ins','ins'}},
ur='بین $date1 و $date2',
vec='tra el $date1 e el $date2',
vi='giữa $date1 và $date2',
['zh-hans']='在$date1到$date2之间',
['zh-hant']='在$date1到$date2之間',
default='<span style="color:red">$date1 - $date2</span>',
},
['or'] = {
nDates = 2,
ar='$date1 أو $date2',
['be-tarask']='$date1 ці $date2',
bn='$date1 অথবা $date2',
ca='$date1 o $date2',
ckb='$date1 یان $date2',
cs='$date1 nebo $date2',
da='$date1 eller $date2',
de='$date1 oder $date2',
el='$date1 ή $date2',
en='$date1 or $date2',
['en-gb']='$date1 or $date2',
['en-ca']='$date1 or $date2',
eo='$date1 aŭ $date2',
es='$date1 o $date2',
et='$date1 või $date2',
fa='$date1 یا $date2',
fi='$date1 tai $date2',
fr='$date1 ou $date2',
gl='$date1 ou $date2',
he='$date1 או $date2',
hr='$date1 ili $date2',
hsb='$date1 abo $date2',
hu='$date1 vagy $date2',
it='$date1 o $date2',
ja='$date1または$date2',
mk='$date1 или $date2',
ml='$date1 അഥവാ $date2',
nb='$date1 eller $date2',
nn='$date1 eller $date2',
nds='$date1 oder $date2',
nl='$date1 of $date2',
no='$date1 eller $date2',
pl='$date1 lub $date2',
pt='$date1 ou $date2',
qu='$date1 icha $date2',
ro='$date1 sau $date2',
ru='$date1 или $date2',
sk='$date1 alebo $date2',
sl='$date1 ali $date2',
sv='$date1 eller $date2',
uk='$date1 або $date2',
ur='$date1 یا $date2',
th='$date1 หรือ $date2',
vi='$date1 hoặc $date2',
['zh-hans']='$date1或$date2',
['zh-hant']='$date1或$date2',
default=function(date1, date2, state) return require("Module:linguistic").conj({date1, date2}, state.lang, 'or') end,
},
['and'] = {
nDates = 2,
ar='$date1 و $date2',
['be-tarask']='$date1 і $date2',
bn='$date1 এবং $date2',
ca='$date1 i $date2',
ckb='$date1 و $date2',
cs='$date1 a $date2',
da='$date1 og $date2',
de='$date1 und $date2',
el='$date1 και $date2',
en='$date1 and $date2',
['en-gb']='$date1 and $date2',
['en-ca']='$date1 and $date2',
eo='$date1 kaj $date2',
es='$date1 y $date2',
et='$date1 ja $date2',
fa='$date1 و $date2',
fi='$date1 ja $date2',
fr='$date1 et $date2',
gl='$date1 e $date2',
he='$date1 ו- $date2',
hu='$date1 és $date2',
hsb='$date1 a $date2',
it='$date1 e $date2',
ja='$date1および$date2',
mk='$date1 и $date2',
ml='$date1 ഒപ്പം $date2',
nb='$date1 og $date2',
nn='$date1 og $date2',
nds='$date1 un $date2',
nl='$date1 en $date2',
no='$date1 og $date2',
pl='$date1 i $date2',
pt='$date1 e $date2',
qu='$date1wan $date2pas',
ro='$date1 și $date2',
ru='$date1 и $date2',
sk='$date1 a $date2',
sl='$date1 in $date2',
sv='$date1 och $date2',
uk='$date1 та $date2',
ur='$date1 و $date2',
vi='$date1 và $date2',
['zh-hans']='$date1和$date2',
['zh-hant']='$date1和$date2',
default=function(date1, date2, state) return require("Module:linguistic").conj({date1, date2}, state.lang, 'and') end,
},
-- ==========================================
-- === Prepositions =========================
-- ==========================================
['by'] = {
nDates = 1,
ar='حوالي $date1',
['be-tarask']={'да $date1', case={'gen',''}},
bn='$date1 কর্তৃক',
ca='vers $date1',
ckb='نزیکی $date1',
cs={'kolem $date1', case={'gen',''}},
da='mod $date1',
de='spätestens $date1',
el='έως $date1',
en='by $date1',
['en-gb']='by $date1',
['en-ca']='by $date1',
eo='ne post $date1',
es='para $date1',
et='hiljemalt $date1',
fa='توسط $date1',
fi={function(date1, state) return decYear(state,'fi','ill') .. '$date1 mennessä' end, case={'ill',''}},
fr='$date1 (au plus tard)',
gl='cara a $date1',
he='עד $date1',
hr='do $date1',
hsb={'do $date1', case={'gen',''}},
it='entro il $date1',
ja='$date1まで',
mk='кон $date1',
ml='$date1-ൽ',
nb='innen $date1',
nn='innan $date1',
nds='$date1 oder vördem al',
nl='tegen $date1',
no='innen $date1',
pl={'przed $date1', case={'ins',''}},
pt='por $date1',
qu="$date1 p'unchawkama",
ro='de $date1',
ru={'к $date1', case={'dat',''}},
sk={'okolo $date1', case={'gen',''}},
sl={function(date1, state) return 'najpozneje ' .. decYear(state,'sl','gen') .. ' $date1' end, case={'gen',''}},
sv='senast $date1',
uk={'до $date1', case={'dat',''}},
ur='توسط $date1',
vi='vào $date1', -- need to insert "đã" somewhere later in the sentence -->
['zh-hans']='$date1前后',
['zh-hant']='$date1前后',
default='<span style="color:red">by $date1</span>',
},
['before'] = {
nDates = 1,
ar='قبل $date1',
['be-tarask']={'перад $date1', case={'ins',''}},
bn='$date1-এর আগে',
bg='Преди $date1',
ca='abans $date1',
ckb='پێش $date1',
cs={'před $date1', case={'ins',''}},
da='før $date1',
de='vor $date1',
el='πριν από $date1',
en='before $date1',
['en-gb']='before $date1',
['en-ca']='before $date1',
eo='antaŭ $date1',
es='antes de $date1',
et='enne $date1',
fa='پیش از $date1',
fi={function(date1, state) return 'ennen ' .. decYear(state,'fi','ptv') .. '$date1' end, case={'ptv',''}},
fr='avant $date1',
gl='antes do $date1',
he='לפני $date1',
hr='prije $date1',
hsb={'do $date1', case={'gen',''}},
hu='$date1 előtt',
it='prima del $date1',
ja='$date1より前',
mk='пред $date1',
ml='$date1-നു മുമ്പ്',
nb='før $date1',
nn='før $date1',
nds='vör $date1',
nl='voor $date1',
no='før $date1',
pl={'przed $date1', case={'ins',''}},
pt='antes de $date1',
qu="$date1 p'unchaw ñawpan",
ro='înainte de $date1',
ru={'ранее $date1', case={'gen',''}},
sk={'pred $date1', case={'ins',''}},
sl={function(date1, state) return 'pred ' .. decYear(state,'sl','ins') .. ' $date1' end, case={'ins',''}},
sv='före $date1',
uk={'до $date1', case={'gen',''}},
ur='قبل $date1',
vi='trước $date1',
['zh-hans']='在$date1之前',
['zh-hant']='在$date1之前',
default='<span style="color:red">before $date1</span>',
},
['from'] = {
nDates = 1,
ar='من $date1',
['be-tarask']={'з $date1', case={'gen',''}},
bn='$date1 থেকে',
ckb='لە $date1',
cs={'od $date1', case={'gen',''}},
de='Seit $date1',
el='από $date1',
en='from $date1',
['en-gb']='from $date1',
['en-ca']='from $date1',
eo='ekde $date1',
es='desde $date1',
et='alates $date1',
fa='از $date1',
fi={function(date1, state) return decYear(state,'fi','ela') .. '$date1 alkaen' end, case={'ela',''}},
fr= function(date1, state) return 'à partir '.. frOf[state.precision] ..' $date1' end,
gl='desde o $date1',
he='מ- $date1',
hr='od $date1',
hsb={'wot $date1', case={'gen',''}},
it='dal $date1',
ja='$date1から',
nds='vonaf $date1',
mk='од $date1',
nb='fra $date1',
nn='frå $date1',
ml='$date1 മുതൽ',
nl='vanaf $date1',
no='fra $date1',
pl={'od $date1', case={'gen',''}},
qu="$date1 p'unchawmanta",
ro='din $date1',
ru={'С $date1', case={'gen',''}},
sk={'od $date1', case={'gen',''}},
sl={function(date1, state) return 'od ' .. decYear(state,'sl','gen') .. ' $date1' end, case={'gen',''}},
sv='från $date1',
uk={'з $date1', case={'gen',''}},
ur='از $date1',
vi='từ $date1',
['zh-hans']='自$date1',
['zh-hant']='自$date1',
default='<span style="color:red">from $date1</span>',
},
['until'] = {
nDates = 1,
['be-tarask']={'усутыч да $date1', case={'gen',''}},
bn='$date1 পর্যন্ত',
ckb='تاوەکوو $date1',
cs={'do $date1', case={'gen', ''}},
de='bis $date1',
en='until $date1',
['en-gb']='until $date1',
['en-ca']='until $date1',
eo='ĝis $date1',
es='hasta $date1',
fr=function(date1, state)
if state.precision > 10 then -- precision > month
return "jusqu'au $date1"
else
return "jusqu'à $date1"
end
end,
hr='do $date1',
hsb={'do $date1', case={'gen',''}},
it='al $date1',
nb='til $date1',
nl='tot $date1',
nn='til $date1',
ml='$date1 വരെ',
pl={'do $date1', case={'gen',''}},
ru={'вплоть до $date1', case={'gen',''}},
sk={'do $date1', case={'gen', ''}},
uk={'аж до $date1', case={'gen',''}},
ur='تک $date1',
['zh-hans']='直到$date1',
['zh-hant']='直到$date1',
default='<span style="color:red">until $date1</span>',
},
['after'] = {
nDates = 1,
ar='بعد $date1',
['be-tarask']={'пасьля $date1', case={'gen',''}},
bn='$date1-এর পরে',
ca='després de $date1',
ckb='دوای $date1',
cs={'po $date1', case={'loc',''}},
de='nach $date1',
da='efter $date1',
el='μετά από $date1',
en='after $date1',
['en-gb']='after $date1',
['en-ca']='after $date1',
eo='post $date1',
es='después de $date1',
et='pärast $date1',
fa='پس از $date1',
fi={function(date1, state) return decYear(state,'fi','gen') .. '$date1 jälkeen' end, case={'gen',''}},
fr='après $date1',
gl='despois do $date1',
he='לאחר $date1',
hr='nakon $date1',
hu='$date1 után',
hsb={'po $date1', case={'loc',''}},
it='dopo il $date1',
ja='$date1より後',
mk='по $date1',
ml='$date1-നു ശേഷം',
nb='etter $date1',
nn='etter $date1',
nds='na $date1',
nl='na $date1',
no='etter $date1',
pl={'po $date1', case={'loc',''}},
pt='após $date1',
qu="$date1 p'unchaw qhipan",
ro='după $date1',
ru={'после $date1', case={'gen',''}},
sk={'po $date1', case={'loc',''}},
sl={function(date1, state) return 'po ' .. decYear(state,'sl','loc') .. ' $date1' end, case={'loc',''}},
sv='efter $date1',
uk={'після $date1', case={'gen',''}},
ur='بعد $date1',
vi='sau $date1',
['zh-hans']='在$date1之后',
['zh-hant']='在$date1之後',
default='<span style="color:red">after $date1</span>',
},
-- ==========================================
-- === Adjectives ===========================
-- ==========================================
['early'] = {
nDates = 1,
ar='بداية $date1',
['be-tarask']={'пачатак $date1', case={'gen',''}},
bn='$date1-এর শুরুতে',
ca='al principi de $date1',
ckb='سەرەتای $date1',
cs={'začátek $date1', case={'gen',''}},
da='tidlig $date1',
de='Anfang $date1',
el='αρχές του $date1',
en='early $date1',
['en-gb']='early $date1',
['en-ca']='early $date1',
eo='komence de $date1',
es='a principios de $date1',
et='$date1 algus',
fa='اوایل $date1',
fi={function(date1, state) return decYear(state,'fi','gen') .. '$date1 alku' end, case={'gen',''}},
fr='début $date1',
gl='a principios de $date1',
he='תחילת $date1',
hr='početak $date1',
hsb={'spočatk $date1', case={'gen',''}},
hu='$date1 elején',
it='inizio del $date1',
ja='$date1初頭',
mk='почеток на $date1',
ml='$date1 ആദ്യപാദം',
nb='tidlig $date1',
nn='tidleg $date1',
nds='Anfang $date1',
nl='begin $date1',
no='tidlig $date1',
pl={'początek $date1', case={'gen',''}},
pt='a princípios de $date1',
qu="$date1 ñawpaq p'unchawkunapi",
ro='începând cu $date1',
ru={'начало $date1', case={'gen',''}},
sk={'začiatok $date1', case={'gen',''}},
sl=function(date1, state)-- could actually be better should be "d'octobre à mars 2013' not "de octore 2013 à mars 2013"
if state.precision == 9 then -- precision > month
return 'zgodnje leto $date1'
else -- "DE septebmbre" / "D'octobre"
return 'zgodnji $date1'
end
end,
sv='början av $date1',
uk={'початок $date1', case={'gen',''}},
ur='ابتدا $date1',
vi='đầu năm $date1',
['zh-hans']='$date1早期',
['zh-hant']='$date1早期',
default='<span style="color:red">early $date1</span>',
},
['mid'] = {
nDates = 1,
ar='منتصف $date1',
['be-tarask']={'сярэдзіна $date1', case={'gen',''}},
bn='$date1-এর মাঝামাঝি',
ca='a mitjan $date1',
ckb='ناوەڕاستی $date1',
cs={'polovina $date1', case={'gen',''}},
da='midten af $date1',
de='Mitte $date1',
el='μέσα του $date1',
en='mid $date1',
['en-gb']='mid $date1',
['en-ca']='mid $date1',
eo='meze de $date1',
es='a mediados de $date1',
et='$date1 keskel',
fa='اواسط $date1',
fi={function(date1, state) return decYear(state,'fi','gen') .. '$date1 puoliväli' end, case={'gen',''}},
fr='mi $date1',
gl='a mediados de $date1',
he='אמצע $date1',
hr='sredina $date1',
hsb={'srjedź $date1', case={'gen',''}},
hu='$date1 közepén',
it='metà del $date1',
ja='$date1半ば',
mk='средина на $date1',
ml='$date1 മദ്ധ്യം',
nb='midten av $date1',
nn='midten av $date1',
nds='Midd $date1',
nl='midden $date1',
no='midten av $date1',
pl={'środek $date1', case={'gen',''}},
pt='meados de $date1',
qu="$date1 chawpin p'unchawkunapi",
ro='mijlocul lui $date1',
ru={'середина $date1', case={'gen',''}},
sk={'polovica $date1', case={'gen',''}},
sl={function(date1, state) return 'sredina ' .. decYear(state,'sl','gen') .. ' $date1' end, case={'gen',''}},
sv='mitten av $date1',
uk={'середина $date1', case={'gen',''}},
ur='وسط $date1',
vi='giữa năm $date1',
['zh-hans']='$date1中期',
['zh-hant']='$date1中期',
default='<span style="color:red">mid $date1</span>',
},
['late'] = {
nDates = 1,
ar='نهاية $date1',
bn='$date1-এর শেষে',
['be-tarask']={'канец $date1', case={'gen',''}},
ca='al final de $date1',
ckb='کۆتاییی $date1',
cs='konec $date1',
da='sen $date1',
de='Ende $date1',
el='τέλη του $date1',
en='late $date1',
['en-gb']='late $date1',
['en-ca']='late $date1',
eo='fine de $date1',
es='a fines de $date1',
et='$date1 lõpp',
fa='اواخر $date1',
fi={function(date1, state) return decYear(state,'fi','gen') .. '$date1 loppu' end, case={'gen',''}},
fr='fin $date1',
gl='a finais de $date1',
he='סוף $date1',
hr='kraj $date1',
hsb={'kónc $date1', case={'gen',''}},
hu='$date1 végén',
it='fine del $date1',
ja='$date1末',
mk='крајот на $date1',
ml='$date1 അന്ത്യപാദം',
nb='sent $date1',
no='seint $date1',
nds='Enn $date1',
nl='eind $date1',
no='sent $date1',
pl={'koniec $date1', case={'gen',''}},
pt='ao final de $date1',
qu="$date1 qhipaq p'unchawkunapi",
ro='sfârșitul lui $date1',
ru={'конец $date1', case={'gen',''}},
sk={'koniec $date1', case={'gen',''}},
sl={function(date1, state) return 'pozno ' .. decYear(state,'sl','gen') .. ' $date1' end, case={'gen',''}},
sv='slutet av $date1',
uk={'кінець $date1', case={'gen',''}},
ur='اخیر $date1',
vi='cuối năm $date1',
['zh-hans']='$date1晚期',
['zh-hant']='$date1晚期',
default='<span style="color:red">late $date1</span>',
},
['circa'] = {
nDates = 1,
ar='حوالي $date1',
['be-tarask']={'каля $date1', case={'gen',''}},
bn='প্রায় $date1',
ckb='بەنزیکی $date1',
ca='cap a $date1',
cs='cca $date1',
da='ca. $date1',
de='etwa $date1',
el='περ. $date1',
en='circa $date1',
['en-gb']='circa $date1',
['en-ca']='circa $date1',
eo='ĉirkaŭ $date1',
es='hacia $date1', -- suggestion use "hacia"/"hacia el" or leave the latin circa or ca.
et='ca. $date1',
fa='حوالی $date1', -- template:Circa used 'حدود $date1'
fi={function(date1, state) return 'suunnilleen ' .. decYear(state,'fi','ine') .. '$date1' end, case={'ine',''}}, -- template:Circa used 'noin $date1'
fr=function(date1, state)
if state.precision >= 11 then -- precision >= day
return 'vers le $date1'
else
return 'vers $date1'
end
end,
gl='entre $date1', -- template:Circa used 'cara a $date1'
he='בסביבות $date1',
hr='oko $date1',
hsb={'wokoło $date1', case={'gen',''}},
hu='$date1 körül',
it='$date1 circa',
ja='$date1頃',
ko='$date1경',
mk='~ $date1', -- template:Circa used 'o. $date1'
ml= 'ഉദ്ദേശം $date1',
nb='ca. $date1',
nn='ca. $date1',
nds='üm un bi $date1',
nl='ca. $date1',
no='ca. $date1',
pl={'około $date1', case={'gen',''}},
pt='cerca de $date1',
qu='$date1chá',
ro='circa $date1',
ru={'около $date1', case={'gen',''}},
sk='cca $date1',
sl={function(date1, state) return 'ok. ' .. decYear(state,'sl','gen') .. ' $date1' end, case={'gen',''}},
sv='c:a $date1', -- template:Circa used 'ca $date1'
uk={'близько $date1', case={'gen', ''}},
ur='قریباً $date1',
vi='vào khoảng $date1',
['zh-hans']='约$date1',
['zh-hant']='約$date1',
default='<span style="color:red">circa $date1</span>',
},
['uncertain'] = {
nDates = 1,
['zh-hans']='$date1(?)',
['zh-hant']='$date1(?)',
default='$date1 (?)',
},
probably = { -- see Q56644435
nDates = 1,
ast = 'probablemente $date1',
bn = 'সম্ভবত $date1',
ca = 'probablement $date1',
ckb = 'لەوانەیە $date1',
cs = 'pravděpodobně $date1',
de = 'wahrscheinlich $date1',
el = 'πιθανόν $date1',
en = 'probably $date1',
['en-gb']='probably $date1',
['en-ca']='probably $date1',
eo = 'probable $date1',
es = 'probable $date1',
fa = 'احتمالاً $date1',
fr = 'probablement $date1',
he = 'כפי הנראה $date1',
hu = 'feltehetőleg $date1',
it = 'probabile $date1',
mk = 'веројатно $date1',
ml = 'ഒരുപക്ഷേ $date1',
nl = 'waarschijnlijk $date1',
pl = 'prawdopodobnie $date1',
pt = 'provavelmente $date1',
ru = 'вероятно $date1',
sv = 'antagligen $date1',
uk = 'ймовірно $date1',
default='<span style="color:red">probably $date1</span>',
},
possibly = { -- see Q30230067
nDates = 1,
ast = 'posiblemente $date1',
bn = 'যথাসম্ভব $date1',
ckb = 'لەوانەیە $date1',
cs = 'možná $date1',
de = 'möglicherweise $date1',
en = 'possibly $date1',
['en-gb']='possibly $date1',
['en-ca']='possibly $date1',
eo = 'eble $date1',
el = 'πιθανόν $date1',
fa = 'احتمالاً $date1',
fr = 'peut-être $date1',
hu = 'talán $date1',
mk = 'можеби $date1',
ml = 'മിക്കവാറും $date1',
nl = 'mogelijk $date1',
pl = 'być może $date1',
pt = 'possivelmente $date1',
ro = 'poate $date1',
ru = 'возможно $date1',
sv = 'möjligen $date1',
uk = 'можливо $date1',
default='<span style="color:red">possibly $date1</span>',
},
presumably = { -- see Q18122778
nDates = 1,
ast = 'presumiblemente $date1',
ckb = 'دەشێت $date1',
de = 'vermutlich $date1',
en = 'presumably $date1',
['en-gb']='presumably $date1',
['en-ca']='presumably $date1',
fr = 'présumé $date1',
it = 'presumibilmente $date1',
ml = 'ഊഹപ്രകാരം $date1',
ru = 'предположительно $date1',
pl = 'przypuszczalnie $date1',
uk = 'здогадно $date1',
default='<span style="color:red">presumably $date1</span>',
},
['year unknown']= {
nDates = 0,
ca='Any desconegut',
['be-tarask']='Год невядомы',
bn='অজানা বছর',
ckb='ساڵی نەزاندراو',
cs='neznámý rok',
de='Jahr unbekannt',
el='άγνωστο έτος',
en='year unknown',
['en-gb']='year unknown',
['en-ca']='year unknown',
eo='jaro nesciata',
es='Año desconocido',
fa='سال نامعلوم',
fi='tuntematon vuosi',
fr='Année inconnue',
he='שנה לא ידועה',
hsb='lěto njeznate',
hr='nepoznata godina',
it='anno sconosciuto',
ja='年代不明',
la='Sine anno',
ml='വർഷം ലഭ്യമല്ല',
mk='непозната година',
nb='ukjent år',
nn='ukjent år',
nl='zonder jaar',
no='ukjent år',
pl='rok nieznany',
qu='Mana riqsisqa wata',
ru='Год неизвестен',
sk='neznámy rok',
sl='neznano leto',
sv='Okänt år',
uk='рік невідомий',
ur='سال نامعلوم',
vi='không rõ năm',
['zh-hans']='年份未知',
['zh-hant']='年份未知',
default='<span style="color:red">year unknown</span>',
},
-- ==========================================
-- === Parts of a whole =====================
-- ==========================================
['firsthalf'] = {
nDates = 1,
ar='النصف الأول من $date1',
['be-tarask']={'першая палова $date1', case={'gen',''}},
bn='$date1-এর প্রথমার্ধ',
ca='1a meitat de $date1',
ckb='نیوەی یەکەمی $date1',
cs={'1. polovina $date1', case={'gen',''}},
da='1. halvdel af $date1',
de='1. Hälfte $date1',
el='πρώτο μισό του $date1',
en='first half of $date1',
['en-gb']='first half of $date1',
['en-ca']='first half of $date1',
eo='unua duono de $date1',
es='primera mitad de $date1',
et='$date1 esimene pool',
fa='نیمهٔ نخست $date1',
fi={function(date1, state) return decYear(state,'fi','gen') .. '$date1 alkupuolisko' end, case={'gen',''}},
fr='1<sup>re</sup> moitié de $date1',
gl='primeira metade de $date1',
he='במחצית הראשונה של $date1',
hsb={'prěnja połojca $date1', case={'gen',''}},
hu='$date1 első felében',
hr='prva polovina $date1',
it='prima metà del $date1',
ja='$date1上半期',
mk='прва половина на $date1',
ml='$date1 ആദ്യപകുതി',
nb='første halvdel av $date1',
nn='fyrste halvdelen av $date1',
nds='1. Helft $date1',
nl='eerste helft $date1',
no='første halvdel av $date1',
pl={'pierwsza połowa $date1', case={'gen',''}},
pt='primeira metade de $date1',
qu='$date1 ñawpaq kuskanpi',
ro='prima jumătate a lui $date1',
ru={'первая половина $date1', case={'gen',''}},
sk={'1. polovica $date1', case={'gen',''}},
sl={function(date1, state) return 'prva polovica ' .. decYear(state,'sl','gen') .. ' $date1' end, case={'gen',''}},
sv='första halvan av $date1',
uk={'перша половина $date1', case={'gen',''}},
ur='نصف اول $date1',
vi='nửa đầu năm $date1',
['zh-hans']='$date1上半期',
['zh-hant']='$date1上半期',
default='<span style="color:red">first half of $date1</span>',
},
['secondhalf'] = {
nDates = 1,
ar='النصف الثاني من $date1',
['be-tarask']={'другая палова $date1', case={'gen',''}},
bn='$date1-এর দ্বিতীয়ার্ধ',
ca='2a meitat de $date1',
ckb='نیوەی دووەمی $date1',
cs={'2. polovina $date1', case={'gen',''}},
da='2. halvdel af $date1',
de='2. Hälfte $date1',
el='δεύτερο μισό του $date1',
en='second half of $date1',
['en-gb']='second half of $date1',
['en-ca']='second half of $date1',
eo='dua duono de $date1',
es='segunda mitad de $date1',
et='$date1 teine pool',
fa='نیمهٔ دوم $date1',
fi={function(date1, state) return decYear(state,'fi','gen') .. '$date1 loppupuolisko' end, case={'gen',''}},
fr='2<sup>e</sup> moitié de $date1',
gl='segunda metade de $date1',
he='במחצית השנייה של $date1',
hsb={'druha połojca $date1', case={'gen',''}},
hr='druga polovina $date1',
hu='$date1 második felében',
it='seconda metà del $date1',
ja='$date1下半期',
mk='втора половина на $date1',
ml='$date1 രണ്ടാം പകുതി',
nb='andre halvdel av $date1',
nn='andre halvdelen av $date1',
nds='2. Helft vun $date1',
nl='tweede helft $date1',
no='andre halvdel av $date1',
pl={'druga połowa $date1', case={'gen',''}},
pt='segunda metade de $date1',
qu='$date1 qhipaq kuskanpi',
ro='a doua jumătate a lui $date1',
ru={'вторая половина $date1', case={'gen',''}},
sk={'2. polovica $date1', case={'gen',''}},
sl={'druga polovica {{IfNum | $date0 | leta}} $date1', case={'gen',''}},
sv='andra halvan av $date1',
uk={'друга половина $date1', case={'gen',''}},
ur='نصف آخر $date1',
vi='nửa cuối năm $date1',
['zh-hans']='$date1下半期',
['zh-hant']='$date1下半期',
default='<span style="color:red">second half of $date1</span>',
},
['1quarter']= {
nDates = 1,
bn='$date1-এর প্রথম ত্রৈমাসিক',
['be-tarask']={'першая чвэрць $date1', case={'gen',''}},
ckb='چارەکی یەکەمی $date1',
cs={'1. čtvrtina $date1', case={'gen',''}},
de='erstes Viertel $date1',
en='first quarter of $date1',
['en-gb']='first quarter of $date1',
['en-ca']='first quarter of $date1',
eo='unua kvarono de $date1',
es='primer cuarto del $date1',
fa='ربع نخست $date1',
fi={function(date1, state) return decYear(state,'fi','gen') .. '$date1 ensimmäinen neljännes' end, case={'gen',''}},
fr= function(date1, state) return 'premier quart '.. frOf[state.precision] ..' $date1' end,
he='רבעון ראשון של $date1',
hsb={'prěnja štwórćina $date1', case={'gen',''}},
hr='prva četvrtina $date1',
it='primo quarto del $date1',
ja='$date1第1四半期',
ml='$date1 ഒന്നാം ത്രൈമാസം',
nb='første kvartal av $date1',
nl='eerste kwart $date1',
nn='fyrste kvartalet av $date1',
no='første kvartal av $date1',
pl={'pierwsza ćwiartka $date1', case={'gen',''}},
qu='$date1 ñawpaq ñiqin tawa phatmanpi',
ru={'первая четверть $date1', case={'gen',''}},
sk={'1. štvrtina $date1', case={'gen',''}},
sl={'prva četrtina {{IfNum | $date0 | leta}} $date1', case={'gen',''}},
sl={function(date1, state) return 'prva četrtina ' .. decYear(state,'sl','gen') .. ' $date1' end, case={'gen',''}},
sv='första kvartalet av $date1',
uk={'1-ша чверть $date1', case={'gen',''}},
ur='پہلی سہ ماہی $date1',
vi='quý 1 năm $date1',
['zh-hans']='$date1第一季度',
['zh-hant']='$date1第一季度',
default='<span style="color:red">first quarter of $date1</span>',
},
['2quarter']= {
nDates = 1,
['be-tarask']={'другая чвэрць $date1', case={'gen',''}},
bn='$date1-এর দ্বিতীয় ত্রৈমাসিক',
ckb='چارەکی دووەمی $date1',
cs={'2. čtvrtina $date1', case={'gen',''}},
de='zweites Viertel $date1',
en='second quarter of $date1',
['en-gb']='second quarter of $date1',
['en-ca']='second quarter of $date1',
eo='dua kvarono de $date1',
es='segundo cuarto del $date1',
fa='ربع دوم $date1',
fi={function(date1, state) return decYear(state,'fi','gen') .. '$date1 toinen neljännes' end, case={'gen',''}},
fr= function(date1, state) return 'deuxième quart '.. frOf[state.precision] ..' $date1' end,
he='רבעון שני של $date1',
hsb={'druha štwórćina $date1', case={'gen',''}},
hr='druga četvrtina $date1',
it='secondo quarto del $date1',
ja='$date1第2四半期',
ml='$date1 രണ്ടാം ത്രൈമാസം',
nb='andre kvartal av $date1',
nl='tweede kwart $date1',
nn='andre kvartalet av $date1',
no='andre kvartal av $date1',
pl={'druga ćwiartka $date1', case={'gen',''}},
qu='$date1 iskay ñiqin tawa phatmanpi',
ru={'вторая четверть $date1', case={'gen',''}},
sk={'2. štvrtina $date1', case={'gen',''}},
sl={function(date1, state) return 'druga četrtina ' .. decYear(state,'sl','gen') .. ' $date1' end, case={'gen',''}},
sv='andra kvartalet av $date1',
uk={'2-га чверть $date1', case={'gen',''}},
ur='دوسری سہ ماہی $date1',
vi='quý 2 năm $date1',
['zh-hans']='$date1第二季度',
['zh-hant']='$date1第二季度',
default='<span style="color:red">second quarter of $date1</span>',
},
['3quarter']= {
nDates = 1,
['be-tarask']={'трэцяя чвэрць $date1', case={'gen',''}},
bn='$date1-এর তৃতীয় ত্রৈমাসিক',
ckb='چارەکی سێیەمی $date1',
cs={'3. čtvrtina $date1', case={'gen',''}},
de='drittes Viertel $date1',
en='third quarter of $date1',
['en-gb']='third quarter of $date1',
['en-ca']='third quarter of $date1',
eo='tria kvarono de $date1',
es='tercer cuarto del $date1',
fa='ربع سوم $date1',
fi={function(date1, state) return decYear(state,'fi','gen') .. '$date1 kolmas neljännes' end, case={'gen',''}},
fr= function(date1, state) return 'troisième quart '.. frOf[state.precision] ..' $date1' end,
he='רבעון שלישי של $date1',
hsb={'třeća štwórćina $date1', case={'gen',''}},
hr='treća četvrtina $date1',
it='terzo quarto del $date1',
ja='$date1第3四半期',
ml='$date1 മൂന്നാം ത്രൈമാസം',
nb='tredje kvartal av $date1',
nl='derde kwart $date1',
nn='tredje kvartalet av $date1',
no='tredje kvartal av $date1',
pl={'trzecia ćwiartka $date1', case={'gen',''}},
qu='$date1 kimsa ñiqin tawa phatmanpi',
sk={'3. štvrtina $date1', case={'gen',''}},
sl={function(date1, state) return 'tretja četrtina ' .. decYear(state,'sl','gen') .. ' $date1' end, case={'gen',''}},
ru={'третья четверть $date1', case={'gen',''}},
sv='tredje kvartalet av $date1',
uk={'3-тя чверть $date1', case={'gen',''}},
ur='تیسری سہ ماہی $date1',
vi='quý 3 năm $date1',
['zh-hans']='$date1第三季度',
['zh-hant']='$date1第三季度',
default='<span style="color:red">third quarter of $date1</span>',
},
['4quarter']= {
nDates = 1,
['be-tarask']={'чацьвёртая чвэрць $date1', case={'gen',''}},
bn='$date1-এর চতুর্থ ত্রৈমাসিক',
ckb='چارەکی چوارەمی $date1',
cs={'4. čtvrtina $date1', case={'gen',''}},
de='letztes Viertel $date1',
en='fourth quarter of $date1',
['en-gb']='fourth quarter of $date1',
['en-ca']='fourth quarter of $date1',
eo='kvara kvarono de $date1',
es='último cuarto del $date1',
fa='ربع چهارم $date1',
fi={function(date1, state) return decYear(state,'fi','gen') .. '$date1 viimeinen neljännes' end, case={'gen',''}},
fr= function(date1, state) return 'quatrième quart '.. frOf[state.precision] ..' $date1' end,
he='רבעון רביעי של $date1',
hsb={'poslednja štwórćina $date1', case={'gen',''}},
hr='četvrta četvrtina $date1',
it='quarto quarto del $date1',
ja='$date1第4四半期',
ml='$date1 നാലാം ത്രൈമാസം',
nb='fjerde kvartal av $date1',
nl='vierde kwart $date1',
nn='tredje kvartalet av $date1',
no='fjerde kvartal av $date1',
pl={'czwarta ćwiartka $date1', case={'gen',''}},
qu='$date1 qhipaq ñiqin tawa phatmanpi',
ru={'последняя четверть $date1', case={'gen',''}},
sk={'4. štvrtina $date1', case={'gen',''}},
sl={function(date1, state) return 'zadnja četrtina ' .. decYear(state,'sl','gen') .. ' $date1' end, case={'gen',''}},
sv='fjärde kvartalet av $date1',
uk={'4-та чверть $date1', case={'gen',''}},
ur='چوتھی سہ ماہی $date1',
vi='quý 4 năm $date1',
['zh-hans']='$date1第四季度',
['zh-hant']='$date1第四季度',
default='<span style="color:red">forth quarter of $date1</span>',
},
-- ==========================================
-- === Seasons ==============================
-- ==========================================
['spring'] = {
nDates = 1,
ar='ربيع $date1',
['be-tarask']='вясна $date1',
bn='বসন্তকাল $date1',
ca='primavera $date1',
ckb='بەھاری $date1',
cs={'jaro $date1', case={'gen', ''}},
da='Forår $date1',
de='Frühling $date1',
en='Spring $date1',
['en-gb']='Spring $date1',
['en-ca']='Spring $date1',
eo='printempo $date1',
es='primavera de $date1',
et='$date1 kevad',
fa='بهار $date1',
fi='Kevät $date1',
fr='printemps $date1',
gl='primavera $date1',
he='אביב $date1',
hr='proljeće $date1',
hsb='nalěćo $date1',
hu='$date1 tavasza',
it='primavera $date1',
ja='{{#if:$date1|$date1年}}春',
mk='пролет $date1',
ml='$date1 വസന്തം',
nb='våren $date1',
nds='Vörjohr $date1',
nn='våren $date1',
nl='voorjaar $date1',
no='våren $date1',
pl='wiosna $date1',
pt='primavera de $date1',
ro='primăvara lui $date1',
ru='весна $date1',
sk={'jar $date1', case={'gen', ''}},
sl='pomlad $date1',
sv='våren $date1',
uk='весна $date1',
ur='بہار $date1',
vi='mùa đông năm $date1',
['zh-hans']='{{#if:$date1|$date1年}}春季',
['zh-hant']='{{#if:$date1|$date1年}}春季',
default='<span style="color:red">Spring $date1</span>',
},
['summer'] = {
nDates = 1,
ar='صيف $date1',
['be-tarask']='лета $date1',
bn='গ্রীষ্মকাল $date1',
ca='estiu $date1',
ckb='ھاوینی $date1',
cs={'léto $date1', case={'gen', ''}},
da='Sommer $date1',
de='Sommer $date1',
en='Summer $date1',
['en-gb']='Summer $date1',
['en-ca']='Summer $date1',
eo='somero $date1',
es='verano de $date1',
et='$date1 suvi',
fa='تابستان $date1',
fi='Kesä $date1',
fr='été $date1',
gl='verán $date1',
he='קיץ $date1',
hr='ljeto $date1',
hsb='lěćo $date1',
hu='$date1 nyara',
it='estate $date1',
ja='{{#if:$date1|$date1年}}夏',
mk='лето $date1',
ml='$date1 വേനൽ',
nb='sommeren $date1',
nds='Sommer $date1',
nn='sumaren $date1',
nl='zomer $date1',
no='sommeren $date1',
pl='lato $date1',
pt='verão de $date1',
ro='vara lui $date1',
ru='лето $date1',
sk={'leto $date1', case={'gen', ''}},
sl='poletje $date1',
sv='sommaren $date1',
uk='літо $date1',
ur='گرما $date1',
vi='mùa hè năm $date1',
['zh-hans']='{{#if:$date1|$date1年}}夏季',
['zh-hant']='{{#if:$date1|$date1年}}夏季',
default='<span style="color:red">Summer $date1</span>',
},
['autumn'] = {
nDates = 1,
ar='خريف $date1',
['be-tarask']='восень $date1',
bn='শরত্কাল $date1',
ca='tardor $date1',
ckb='پاییزی $date1',
cs={'podzim $date1', case={'gen', ''}},
da='Efterår $date1',
de='Herbst $date1',
en='Autumn $date1',
['en-gb']='Autumn $date1',
['en-ca']='Autumn $date1',
eo='aŭtuno $date1',
es='otoño de $date1',
et='$date1 sügis',
fa='پاییز $date1',
fi='Syksy $date1',
fr='automne $date1',
gl='outono $date1',
he='סתיו $date1',
hr='jesen $date1',
hsb='nazyma $date1',
hu='$date1 ősze',
it='autunno $date1',
ja='{{#if:$date1|$date1年}}秋',
mk='есен $date1',
ml='$date1 ശരത്കാലം',
nb='høsten $date1',
nds='Harvst $date1',
nn='hausten $date1',
nl='herfst $date1',
no='høsten $date1',
pl='jesień $date1',
pt='outono de $date1',
ro='toamna lui $date1',
ru='осень $date1',
sk={'jeseň $date1', case={'gen', ''}},
sl='jesen $date1',
sv='hösten $date1',
uk='осінь $date1',
ur='خزاں $date1',
vi='mùa thu năm $date1',
['zh-hans']='{{#if:$date1|$date1年}}秋季',
['zh-hant']='{{#if:$date1|$date1年}}秋季',
default='<span style="color:red">Autumn $date1</span>',
},
['winter'] = {
nDates = 1,
ar='شتاء $date1',
['be-tarask']='зіма $date1',
bn='শীতকাল $date1',
ca='hivern $date1',
ckb='زستانی $date1',
cs={'zima $date1', case={'gen', ''}},
da='Vinter $date1',
de='Winter $date1',
en='Winter $date1',
['en-gb']='Winter $date1',
['en-ca']='Winter $date1',
eo='vintro $date1',
es='invierno de $date1',
et='$date1 talv',
fa='زمستان $date1',
fi='Talvi $date1',
fr='hiver $date1',
gl='inverno $date1',
he='חורף $date1',
hr='zima $date1',
hsb='zyma $date1',
hu='$date1 tele',
it='inverno $date1',
ja='{{#if:$date1|$date1年}}冬',
mk='зима $date1',
ml='$date1 ശൈത്യകാലം',
nds='Winter $date1',
nl='winter $date1',
nb='vinteren $date1',
nn='vinteren $date1',
no='vinteren $date1',
pl='zima $date1',
pt='inverno de $date1',
ro='iarna lui $date1',
ru='зима $date1',
sk={'zima $date1', case={'gen', ''}},
sl='zima $date1',
sv='vintern $date1',
uk='зима $date1',
ur='سرما $date1',
vi='mùa đông năm $date1',
['zh-hans']='{{#if:$date1|$date1年}}冬季',
['zh-hant']='{{#if:$date1|$date1年}}冬季',
default='<span style="color:red">Winter $date1</span>',
},
-- ==========================================
-- === Decade/Century/Millennium ============
-- ==========================================
['decade'] = {
nDates = 1,
ar='أعوام $date1',
['be-tarask']='$date1-я гады',
bn='$date1-এর দশক',
ca='dècada del $date1',
ckb='دەیەی $date1',
cs=function(date1, state) return ((date1 % 100 == 0) and 'první dekáda' or ((date1 % 100) .. '. léta')) .. ' ' .. (math.floor(date1 / 100) + 1) .. '. století' end,
da="$date1'erne",
de='$date1er-Jahre',
el='δεκαετία του $date1',
en='$date1s',
['en-gb']='$date1s',
['en-ca']='$date1s',
eo='$date1-aj jaroj',
es='años $date1',
et='$date1ndad',
fa='دههٔ $date1',
fi='$date1-luvulla',
fr='années $date1',
gl='anos $date1',
he='שנות ה-$date1',
hr='$date1-ih',
hsb='$date1te lěta',
hu='$date1-s évek',
it="{{#ifexpr: $date1 mod 100 = 0 | primo decennio del {{Roman|{{#expr: ($date1 / 100) + 1}}}} sec. | anni '{{#expr: $date1 mod 100 }} del {{Roman|{{#expr: floor($date1 / 100) + 1}}}} sec.}}",
ja='$date1年代',
mk='$date1-ти',
ml='ദശകം $date1-ൽ',
nb='$date1-årene',
nn='$date1-åra',
nds='Johren $date1',
nl='jaren $date1',
no='$date1-årene',
pl=function(date1, state)
local str = 'lata '..(date1 % 100)..'. '
if (date1 % 100 == 0) then
str = 'pierwsza dekada '
elseif (date1 % 100 == 10) then
str = 'druga dekada '
end
return str .. Roman(math.floor(date1 / 100) + 1) .. ' wieku'
end,
pt='década de $date1',
qu='$date1 watakuna',
ro='anii $date1',
ru='$date1-е годы',
sk=function(date1, state) return ((date1 % 100 == 0) and 'prvé desaťročie' or ((date1 % 100) .. '. roky')) .. ' ' .. (math.floor(date1 / 100) + 1) .. '. storočia' end,
sl='$date1-ta leta',
sv='$date1-talet{{#switch:$date1|1300|1400|1500|1600|1700|1800|1900|2000|2100= (decennium)}}',
uk='$date1-ті роки',
ur='دہائی $date1',
vi='thập niên $date1',
['zh-hans']='$date1年代',
['zh-hant']='$date1年代',
default='<span style="color:red">$date1s</span>',
},
['century'] = {
nDates = 1,
ar='القرن $date1',
['be-tarask']=function(date1, state) return Ordinal(date1, 'be-tarask') .. ' стагодзьдзе' end,
bn=function(date1, state) return Ordinal(date1, 'bn') .. ' শতাব্দী' end,
ca='segle {{small-caps|{{lc:{{Roman year|$date1}}}}}}',
ckb='سەدەی $date1',
cs='$date1. století',
da='$date1. århundrede',
de='$date1. Jahrhundert',
el='$date1ος αιώνας',
en=function(date1, state) return Ordinal(date1, 'en') .. ' century' end,
['en-gb']=function(date1, state) return Ordinal(date1, 'en-gb') .. ' century' end,
['en-ca']=function(date1, state) return Ordinal(date1, 'en-ca') .. ' century' end,
eo='$date1-a jarcento',
es=function(date1, state) return 'siglo ' .. Roman(date1) end,
et='$date1. sajand',
fa='سدهٔ $date1',
fi='{{#expr: ($date1 - 1) * 100}}-luvulla',
fr=function(date1, state) return Ordinal(date1, 'fr', 'roman', 'm') .. ' siècle' end,
gl=function(date1, state) return 'século ' .. Roman(date1) end,
he='המאה ה-$date1',
hr='$date1. stoljeće',
hsb='$date1. lětstotk',
hu='$date1. évszázad',
it=function(date1, state) return Roman(date1) .. ' sec.' end,
ja='$date1世紀',
la='saeculum $date1',
mk=function(date1, state) return Roman(date1) .. ' век' end,
ml='$date1-ആം നൂറ്റാണ്ട്',
nb=function(date1, state) return Ordinal(date1, 'nb') .. ' århundre' end,
nn=function(date1, state) return 'det ' .. Ordinal(date1, 'no') .. ' århundre' end,
nds='$date1. Johrhunnert',
nl='$date1e eeuw',
no=function(date1, state) return Ordinal(date1, 'no') .. ' århundre' end,
pl=function(date1, state) return Roman(date1) .. ' ' .. decCentury('pl',state.case) end,
pt=function(date1, state) return 'século ' .. Roman(date1) end,
qu='$date1 ñiqin pachakwata',
ro='secolul al $date1-lea',
ru=function(date1, state) return Roman(date1) .. ' век' end,
sk='$date1. storočie',
sl=function(date1, state) return Ordinal(date1, 'sl') .. '. stoletje' end,
sv='{{#expr:$date1 - 1}}00-talet',
tt=function(date1, state) return Roman(date1) .. ' гасыр' end,
uk=function(date1, state) return Roman(date1) .. ' ст.' end,
ur='صدی $date1',
vi='thế kỷ $date1',
['zh-hans']='$date1世纪',
['zh-hant']='$date1世紀',
default='<span style="color:red">$date1 century</span>',
},
['millennium'] = {
nDates = 1,
['be-tarask']=function(date1, state) return Ordinal(date1, 'be-tarask') .. ' тысячагодзьдзе' end,
bn=function(date1, state) return Ordinal(date1, 'bn') .. ' সহস্রাব্দ' end,
ckb=function(date1, state) return 'ھەزارەی ' .. Ordinal(date1, 'ckb') end,
cs='$date1. tisíciletí',
de='$date1. Jahrtausend',
en=function(date1, state) return Ordinal(date1, 'en') .. ' millennium' end,
['en-gb']=function(date1, state) return Ordinal(date1, 'en-gb') .. ' millennium' end,
['en-ca']=function(date1, state) return Ordinal(date1, 'en-ca') .. ' millennium' end,
eo='$date1-a jarmilo',
es=function(date1, state) return Roman(date1) .. ' milenio' end,
fa=function(date1, state) return 'هزارهٔ ' .. Ordinal(date1, 'fa') end,
fr=function(date1, state) return Ordinal(date1, 'fr', 'roman', 'm') .. ' millénaire' end,
hr='$date1. tisućljeće',
hsb='$date1. lěttysac',
it=function(date1, state) return Roman(date1) .. ' millennio' end,
ja='$date1千年紀',
la='millennium $date1',
ml='$date1-മത്തെ സഹസ്രാബ്ദം',
nb=function(date1, state) return Ordinal(date1, 'nb') .. ' årtusen' end,
nn=function(date1, state) return Ordinal(date1, 'no') .. ' tusenår' end,
nl='$date1e millennium',
no=function(date1, state) return Ordinal(date1, 'no') .. ' årtusen' end,
pl=function(date1, state) return Roman(date1) .. ' ' .. decMillennium('pl',state.case) end,
pt=function(date1, state) return Roman(date1) .. ' milénio' end,
qu='$date1 ñiqin waranqawata',
ru=function(date1, state) return Roman(date1) .. ' тысячелетие' end,
sk='$date1. tisícročie',
sl=function(date1, state) return Ordinal(date1, 'sl') .. '. tisočletje' end,
sv=function(date1, state) return Ordinal(date1, 'sv') .. ' årtusendet' end,
uk=function(date1, state) return Roman(date1) .. ' тис.' end,
ur=function(date1, state) return 'ہزارہ ' .. Ordinal(date1, 'ur') end,
vi='thiên niên kỷ $date1',
['zh-hans']=function(date1, state) return Ordinal(date1, 'zh-hans') .. '千年' end,
['zh-hant']=function(date1, state) return Ordinal(date1, 'zh-hant') .. '千年' end,
--default='{{Please translate|$date1 millennium|Module:I18n/complex date}}',
default='<span style="color:red">$date1 millennium</span>',
},
['million'] = {
ckb = '$date1 میلیۆن ساڵ',
de = '$date1 Millionen Jahre',
en = '$date1 million years',
['en-gb'] = '$date1 million years',
['en-ca'] = '$date1 million years',
eo = '$date1 milionoj da jaroj',
es = '$date1 millones de años',
nl = '$date1e miljoen jaar',
fr = '$date1 millions d’années',
it = '$date1 milioni di anni',
ml = function(date1, state)
if date1 >= 10 then
return (date1 / 10) .. ' കോടി വർഷങ്ങൾ' -- 100 lakh = 1 crore
else
return (date1 * 10) .. ' ലക്ഷം വർഷങ്ങൾ'
end
end,
nb = '$date1 millioner år',
nl = '$date1 miljoen jaar',
nn = '$date1 millionar år',
pl = '$date1 milionów lat',
pt = '$date1 milhões de anos',
ru = '$date1 миллиона лет',
uk = '$date1 мільйони років',
ur = '$date1 ملین سال',
['zh-hans'] = '$date1百万年',
['zh-hant'] = '$date1百万年',
default='<span style="color:red">$date1 million years</span>',
nDates = 1,
},
['billion'] = {
ckb = '$date1 بیلیۆن ساڵ',
de = '$date1 Milliarden Jahre',
en = '$date1 billion years',
['en-gb'] = '$date1 billion years',
['en-ca'] = '$date1 billion years',
es = '$date1 mil millones de años',
nl = '$date1e miljard jaar',
fr = '$date1 milliard d’années',
it = '$date1 miliardi di anni',
ml = function(date1, state) return (date1 * 10) .. ' കോടി വർഷങ്ങൾ' end,
nb = '$date1 milliarder år',
nl = '$date1 miljard jaar',
nn = '$date1 milliardar år',
pl = '$date1 miliardów lat',
pt = '$date1 mil milhões de anos',
ru = '$date1 миллиардов лет',
uk = '$date1 мільярдів років',
ur = '$date1 بلین سال',
['zh-hans'] = '$date1十亿年',
['zh-hant'] = '$date1十億年',
default='<span style="color:red$date1 billion years</span>',
nDates = 1,
},
-- ==========================================
-- === Complex phrases ======================
-- ==========================================
-- Phrases which for some languages can be build out of simpler phrases
-- Their "default" state, used when no translation in the requested language was found, returns a "state" like
-- table which is used to call the function again and built the phrase out of simple phrases
-- $date1 - original date - 1
-- $date2 - original date
-- if era is BC than $date1 and $date2 are swapped
['turn of the century'] = {
nDates = 2,
['be-tarask']=function(date1, date2, state) return 'канец ' .. Roman(date1) ..' — пачатак ' .. Roman(date2) ..' стагодзьдзя' end,
bn=function(date1, date2, state) return '$date1/' .. Ordinal(date2, 'bn') .. ' শতাব্দীর পালাবদলে' end,
ckb=function(date1, date2, state) return 'سەردەمی $date1/' .. Ordinal(date2, 'ckb') .. ' سەدە' end,
cs='přelom $date1. a $date2. století',
de=function(date1, date2, state) return 'Jahrhundertwende $date1/' .. Ordinal(date2, 'de') end,
en=function(date1, date2, state) return 'turn of the $date1/' .. Ordinal(date2, 'en') .. ' century' end,
['en-gb']=function(date1, date2, state) return 'turn of the $date1/' .. Ordinal(date2, 'en-gb') .. ' century' end,
['en-ca']=function(date1, date2, state) return 'turn of the $date1/' .. Ordinal(date2, 'en-ca') .. ' century' end,
eo='ŝanĝo de la $date1-a al la $date2-a jarcentoj',
es=function(date1, date2, state) return 'hacia finales del siglo ' .. Roman(date1) .. ' y principios del siglo ' .. Roman(date2) .. '' end,
fi='{{#expr: $date1 * 100-100}}-luvun loppu ja {{#expr: $date2 * 100-100}}-luvun alku',
fr=function(date1, date2, state) return 'fin du ' .. Ordinal(date1, 'fr', 'roman', 'm') .. ' siècle / début du ' .. Ordinal(date2, 'fr', 'roman', 'm') end,
hr='kraj $date1. i početak $date2. stoljeća',
hsb=function(date1, date2, state) return 'přechod ' .. Roman(date1) ..' do ' .. Roman(date2) ..' lětstotka' end,
it=function(date1, date2, state) return 'fine del ' .. Roman(date1) .. ' sec. e inizio del ' .. Roman(date2) .. ' sec.' end,
ja='$date1世紀から$date2世紀への変わり目',
ml='$date1 നൂറ്റാണ്ട് അവസാനവും $date2 നൂറ്റാണ്ട് ആദ്യവും',
nb=function(date1, date2, state) return 'slutten av det ' .. Ordinal(date1, 'nb') .. ' århundre/begynnelsen av det ' .. Ordinal(date2, 'nb') .. ' århundre' end,
nl=function(date1, date2, state) return 'eind $date1e/begin $date2e eeuw' end,
nn=function(date1, date2, state) return 'slutten av det ' .. Ordinal(date1, 'nn') .. ' hundreåret/byrjinga av det ' .. Ordinal(date2, 'nn') .. ' hundreåret' end,
pl=function(date1, date2, state) return 'przełom ' .. Roman(date1) ..' i ' .. Roman(date2) ..' wieku' end,
qu="$date1 ñiqin waranqawatamanta $date2 ñiqin waranqawataman t'ikrasqanpi",
ru=function(date1, date2, state) return 'конец ' .. Roman(date1) ..' — начало ' .. Roman(date2) ..' века' end,
sk='prelom $date1. a $date2. storočia',
sl=function(date1, date2, state) return 'pozno ' .. Ordinal(date1, 'sl') .. '. in zgodnje ' .. Ordinal(date2, 'sl') .. '. stoletje' end,
sv=function(date1, date2, state) return '$date1/' .. Ordinal(date2, 'sv') .. ' årtusendets sekelskifte' end,
uk=function(date1, date2, state) return 'кін. ' .. Roman(date1) ..' ст. — поч. ' .. Roman(date2) ..' ст.' end,
vi='bước sang thế kỷ $date2',
['zh-hans']=function(date1, date2, state) return '$date1世纪末' .. Ordinal(date2, 'zh-hans') .. '世纪初' end,
['zh-hant']=function(date1, date2, state) return '$date1世紀末' .. Ordinal(date2, 'zh-hant') .. '世紀初' end,
default=function(date1, date2, state) return {conj='and', adj1 = 'late', unit1='century', era1=state.era1, adj2 = 'early', unit2='century', era2=state.era2} end,
},
-- $date1 - original date - 10
-- $date2 - original date
-- if era is BC than $date1 and $date2 are swapped
['turn of the decade']={
nDates = 2,
['be-tarask']='канец $date1-х — пачатак $date2-х гг.',
bn='$date1-এর দশকের শেষে এবং $date2-এর দশকের শুরুতে',
cs=function(date1, date2, state)
local decade1 = math.floor((date1 % 100) / 10)
local decade2 = math.floor((date2 % 100) / 10)
local century1 = math.floor( date1 / 100) + 1
local century2 = math.floor( date2 / 100) + 1
if decade1 == 0 and date1 < date2 then
return "přelom 1. a 2. dekády " .. century1 .. ". století"
elseif decade2 == 0 and date2 < date1 then
return "přelom 9. a 10. dekády " .. century1 .. ". století"
elseif (decade1 == 9 and date1 < date2) or (decade2 == 9 and date2 < date1) then
return "přelom " .. century1 .. ". a " .. century2 .. ". století"
else
return "přelom " .. decade1 .. "0. a " .. decade2 .. "0. let " .. century1 .. ". století"
end
end,
de='späte $date1er und frühe $date2er',
ckb='کۆتایییەکانی $date1 و سەرەتاکانی $date2',
en='late $date1s and early $date2s',
['en-gb']='late $date1s and early $date2s',
['en-ca']='late $date1s and early $date2s',
eo='ŝanĝo de la $date1-a al la $date2-a jardekoj',
es='finales de los años $date1 y principios de los años $date2',
fa='اواخر دههٔ $date1 و اوایل دههٔ $date2',
fi='$date1-luvun loppu ja $date2-luvun alku',
fr='fin des années $date1 / début des années $date2',
hr='kraj $date1-ih i početak $date2-ih',
hsb='pózdnje $date1te a zažne $date2te lěta',
it='fine degli anni $date1 / inizio degli anni $date2',
ja='$date1年代末から$date2年代初頭',
ml='$date1കൾ അവസാനവും $date2കൾ ആദ്യവും',
nb = 'sent på $date1-tallet og tidlig på $date2-tallet',
nl = 'eind $date1e/begin $date2e decennium',
nn = 'seint på $date1-talet og tidleg på $date2-talet',
pl=function(date1, date2, state)
local decade1 = math.floor(date1 % 100)
local decade2 = math.floor(date2 % 100)
local century1 = Roman(math.floor( date1 / 100) + 1)
local century2 = Roman(math.floor( date2 / 100) + 1)
if decade1 == 0 and date1 < date2 then
return "przełom pierwszej i drugiej dekady " .. century1 .. " wieku"
elseif decade1 == 10 and date1 < date2 then
return "przełom drugiej dekady i lat 20. " .. century1 .. " wieku"
elseif decade1 == 90 and decade2 == 0 then
return "przełom ostatniej dekady " .. century1 .. " i pierwszej dekady " .. century2 .. " wieku"
else
return "przełom lat " .. decade1 .. ". i " .. decade2 .. ". " .. century1 .. " wieku"
end
end,
qu='qhipaq $date1 watakuna ñawpaq $date2 watakunapas',
ru='конец $date1-х — начало $date2-х гг.',
sv='sena $date1-talet och tidiga $date2-talet',
sk=function(date1, date2, state)
local decade1 = math.floor((date1 % 100) / 10)
local decade2 = math.floor((date2 % 100) / 10)
local century1 = math.floor( date1 / 100) + 1
local century2 = math.floor( date2 / 100) + 1
if decade1 == 0 and date1 < date2 then
return "prelom 1. a 2. desaťročia " .. century1 .. ". storočia"
elseif decade2 == 0 and date2 < date1 then
return "prelom 9. a 10. desaťročia " .. century1 .. ". storočia"
elseif (decade1 == 9 and date1 < date2) or (decade2 == 9 and date2 < date1) then
return "prelom " .. century1 .. ". a " .. century2 .. ". storočia"
else
return "prelom " .. decade1 .. "0. a " .. decade2 .. "0. rokov " .. century1 .. ". storočia"
end
end,
sl='pozna $date1-ta in zgodnja $date2-ta leta',
uk='кінець $date1-х — початок $date2-х рр.',
ur='اخیر دہائی $date1 و ابتدا دہائی $date2',
vi='bước sang thập niên $date2',
['zh-hans']='$date1年代末$date2年代初',
['zh-hant']='$date1年代末$date2年代初',
default=function(date1, date2, state) return {conj='and', adj1 = 'late', unit1='decade', era1=state.era1, adj2 = 'early', unit2='decade', era2=state.era2} end,
},
-- $date1 - original date - 1
-- $date2 - original date
-- if era is BC than $date1 and $date2 are swapped
['turn of the year']={
nDates = 2,
['be-tarask']='канец $date1 — пачатак $date2 г.',
bn='$date1-এর শেষে এবং $date2-এর শুরুতে',
ckb='کۆتاییی $date1 و سەرەتای $date2',
cs='přelom roku $date1/$date2',
de='Jahreswechsel $date1/$date2',
en='late $date1 and early $date2',
['en-gb']='late $date1 and early $date2',
['en-ca']='late $date1 and early $date2',
eo='jarŝanĝo $date1 / $date2',
es='finales de $date1 y principios de $date2',
fa='اواخر $date1 و اوایل $date2',
fi='vuoden $date1 loppu ja vuoden $date2 alku',
fr='fin $date1 / début $date2',
hsb='kónc $date1/spočatk $date2',
ja='$date1年末から$date2年初め',
ml='$date1 അവസാനവും $date2 ആദ്യവും',
nb='årsskiftet $date1/$date2',
nl='eind $date1 en begin $date2',
nn='årsskiftet $date1/$date2',
pl='koniec $date1 i początek $date2 roku',
qu="$date1 qhipaq p'unchawkuna $date2 ñawpaq p'unchawkunapas",
ru='конец $date1 — начало $date2 г.',
sk='prelom rokov $date1/$date2',
sl='konec leta $date1 in začetek $date2',
sv='sena $date1 och tidiga $date2',
uk='кінець $date1 — початок $date2 р.',
ur='اخیر $date1 و ابتدا $date2',
vi='bước sang năm $date2',
['zh-hans']='$date1年末$date2年初',
['zh-hant']='$date1年末$date2年初',
default=function(date1, date2, state) return {conj='and', adj1 = 'late', unit1='year', era1=state.era1, adj2 = 'early', unit2='year', era2=state.era2} end,
},
['circa2'] = {
nDates = 2,
ar='حوالي $date1 – $date2',
['be-tarask']={'прыкладна з $date1 да прыкладна $date2', case={'gen','gen'}},
bn='প্রায় $date1 এবং প্রায় $date2-এর মাঝামাঝি',
ca='cap a $date1 o $date2',
ckb='بە نزیکی لەنێوان $date1 و $date2',
cs='cca $date1 až $date2',
da='ca. mellem $date1 og $date2',
de='etwa $date1 bis $date2',
el='περίπου μεταξύ $date1 και $date2',
en='between circa $date1 and circa $date2',
['en-gb']='between circa $date1 and circa $date2',
['en-ca']='between circa $date1 and circa $date2',
eo='proksimume de $date1 ĝis $date2',
es='hacia $date1 o $date2',
et='ca. $date1 ja $date2 vahel',
fa='حدوداً بین $date1 و $date2',
fi={function(date1, date2, state) return 'suunnilleen ' .. decYear(state,'fi','xxx') .. '$date1 ja $date2 välisenä aikana' end, case={'gen','gen'}},
fr='vers $date1-$date2',
gl='entre $date1 e $date2',
he='בסביבות ה- $date1 עד $date2',
hr='oko između $date1 i $date2',
hsb={'wot něhdźe $date1 do něhdźe $date2', case={'gen','gen'}},
hu='$date1 és $date2 között',
it='tra il $date1 e il $date2 circa',
ja='$date1頃と$date2頃の間',
mk='~ помеѓу $date1 и $date2',
ml='ഉദ്ദേശം $date1-നും ഉദ്ദേശം $date2-നും ഇടയ്ക്ക്',
nb='ca. mellom $date1 og $date2',
nn='ca. mellom $date1 og $date2',
nds='üm un bi $date1 bet $date2',
nl='ca. $date1 tot $date2',
no='ca. mellom $date1 og $date2',
pl={'od około $date1 do około $date2', case={'gen','gen'}},
pt='cerca de $date1 a $date2',
qu="$date1 p'unchawmantachá $date2 p'unchawkamachá",
ro='circa $date1 – $date2',
ru={'с около $date1 до, примерно, $date2', case={'gen','gen'}},
sk='cca $date1 až $date2',
sl={function(date1, date2, state) return 'ok. ' .. decYear(state,'sl','gen') .. ' $date1 do $date2' end, case={'gen','gen'}},
sv='c:a $date1 till $date2',
uk={'з близько $date1 до, приблизно, $date2', case={'gen','gen'}},
ur='قریباً بین $date1 و $date2',
vi='giữa vào khoảng $date1 và vào khoảng $date2',
['zh-hans']='约$date1~$date2间',
['zh-hant']='約$date1~$date2間',
default=function(date1, date2, state) return {conj='between', adj1 = 'circa', unit1=state.unit1, era1=state.era1, adj2 = 'circa', unit2=state.unit2, era2=state.era2} end,
},
-- ==========================================
-- === Eras and calendars ===================
-- ==========================================
['julian'] = {
nDates = 2,
ar='$date1 ($date2 حسب [[w:ar:التقويم اليولياني|تقويم يولياني]])',
['be-tarask']='$date1 ($date2 паводле [[w:be-tarask:Юліянскі каляндар|ст. ст.]]',
bn='$date1 (জুলিয়ান ক্যালেন্ডারে $date2)',
ca='$date1 ($date2 segons el [[w:ca:Calendari julià|calendari julià]])',
ckb='$date1 ($date2 بەپێی [[w:ڕۆژژمێری جولیانی|ڕۆژژمێری جولیانی]])',
cs='$date1 ($date2 podle [[w:cs:Juliánský kalendář|juliánského kalendáře]])',
da='$date1 ($date2 [[w:da:Julianske kalender|Julianske kalender]])',
de='$date1 ($date2 [[w:de:Julianischer Kalender|Julianischer Kalender]])',
el='$date1 ($date2 με το [[w:el:Ιουλιανό ημερολόγιο|Ιουλιανό ημερολόγιο]])',
en='$date1 ($date2 in [[w:Old Style and New Style dates|Julian calendar]])',
['en-gb']='$date1 ($date2 in [[w:Old Style and New Style dates|Julian calendar]])',
['en-ca']='$date1 ($date2 in [[w:Old Style and New Style dates|Julian calendar]])',
fa='$date1 ($date2 در [[w:fa:Old Style and New Style dates|تقویم جولیان]])',
eo='$date1 ($date2 laŭ la [[w:eo:Julia kalendaro|Julia Kalendaro]])',
es='$date1 ($date2 según el [[w:es:Calendario juliano|calendario juliano]])',
et='$date1 ($date2 [[w:et:Juliuse kalender|Juliuse kalendris]])',
fi='$date1 ($date2 [[w:fi:juliaaninen kalenteri|juliaanisen kalenterin]] mukaan)',
fr='$date1 ($date2 dans le [[w:fr:calendrier julien|calendrier julien]])',
gl='$date1 ($date2 segundo o [[w:gl:Calendario xuliano|calendario xuliano]])',
hu='$date1 ($date2 a [[w:hu:Julianus-naptár|Julián naptárban]])',
hr='$date1 ($date2 prema [[w:hr:Julijanski kalendar|julijanskom kalendaru]])',
he='$date1 ($date2 ב[[w:he:לוח היוליאני|הלוח היוליאני]])',
hsb='$date1 ($date2 po julianiskej protyce)',
it='$date1 ($date2 secondo il [[w:it:Calendario giuliano|calendario giuliano]])',
ja='$date1([[w:ja:ユリウス暦|ユリウス暦]] $date2)',
mk='$date1 ($date2 по [[w:mk:Јулијански календар|Јулијанскиот календар]])',
ml='$date1 ([[w:ml:ജൂലിയൻ കാലഗണനാരീതി|ജൂലിയൻ വർഷത്തിൽ]] $date2)',
ml='$date1 ([[w:Old Style and New Style dates|ജൂലിയൻ കാലഗണനാരീതിയിൽ]] $date2)',
nds='$date1 ($date2 na’n [[w:nds:Juliaansch Klenner|Juliaanschen Klenner]])',
nb='$date1 ($date2 etter [[w:no:Juliansk kalender|den julianske kalenderen]])',
nn='$date1 ($date2 etter [[w:no:Juliansk kalender|den julianske kalenderen]])',
nl='$date1 ($date2 volgens de [[w:nl:Juliaanse kalender|Juliaanse kalender]])',
no='$date1 ($date2 etter [[w:no:Juliansk kalender|den julianske kalender]])',
pl='$date1 ($date2 wedle [[w:pl:Daty nowego i starego porządku|kalendarza juliańskiego]])',
pt='$date1 ($date2 no [[w:pt:Mudança para o calendário gregoriano|calendário juliano]])',
qu='$date1 ($date2 [[w:qu:Hulyanu kalindaryu|Hulyanu kalindaryupi]])',
ro='$date1 ($date2 în [[w:ro:calendarul iulian|calendarul iulian]])',
ru='$date1 ($date2 [[w:ru:Юлианский календарь|по ст. ст.]])',
sk='$date1 ($date2 podľa [[w:sk:Juliánsky kalendár|juliánskeho kalendára]])',
sl='$date1 ($date2 po [[w:sl:Julijanski koledar|julijanskem koledarju]])',
sv='$date1 ($date2 [[w:sv:Gamla stilen|gamla stilen]])',
uk='$date1 ($date2 [[w:uk:Юліанський календар|Юліанський календар]])',
ur='$date1 ($date2 حسب [[w:ur:نئے اور پانے انداز کی تاریخ|جولین تقویم]])',
vi='$date1 ($date2 trong [[w:vi:Lịch Julius|lịch Juliêng]])',
['zh-hans']='$date1([[w:Old Style and New Style dates|格里历]]$date2)',
['zh-hant']='$date1([[w:Old Style and New Style dates|格里曆]]$date2)',
default='<span style="color:red">$date1 ($date2 in [[w:Old Style and New Style dates|Julian calendar]])</span>',
},
['ad'] = {
nDates = 1,
['be-tarask']='$date1 [[w:be-tarask:ад Нараджэньня Хрыста|пасьля Н. Х.]]',
bn ='$date1 খ্রিস্টাব্দ',
ca ='$date1 dC',
ckb ='$date1 [[w:ckb:ئانۆ دۆمینی|پاز]]',
cs ='$date1 n. l.',
de ='$date1 n. Chr.',
el ='$date1 μ.Χ.',
en ='$date1 [[w:en:Anno Domini|AD]]',
['en-gb'] ='$date1 [[w:en:Anno Domini|AD]]',
['en-ca'] ='$date1 [[w:en:Anno Domini|AD]]',
eo ='$date1 pK',
es ='$date1 [[w:es:Anno Dómini|d. C.]]',
fa ='$date1 م.',
fi ='$date1 jaa.',
fr ='$date1 ap. J.-C.',
gl ='$date1 d.C.',
he ='$date1 לספירה',
hu ='i. sz. $date1',
hr ='$date1 p. Kr.',
hsb='$date1 po Chr.',
it ='$date1 d.C.',
ja ='西暦$date1',
mk ='$date1 н.е.',
ml ='ക്രി.വ. $date1',
nb ='$date1 e.Kr.',
nl ='$date1 n.Chr.',
nn ='$date1 e.Kr.',
no ='$date1 e.Kr.',
pl ='$date1 [[w:pl:naszej ery|n.e.]]',
ro ='$date1 d.Hr.',
ru ='$date1 н. э.',
sk ='$date1 po Kr.',
sl ='$date1 n. št.',
sv ='$date1 [[w:sv:Efter Kristus|e.Kr.]]',
uk ='$date1 н. е.',
ur ='$date1 ء',
vi ='$date1 [[w:vi:Công Nguyên|CN]]',
['zh-hans'] ='[[w:zh:基督纪年|公元]]$date1',
['zh-hant'] ='[[w:zh:基督纪年|公元]]$date1',
default='<span style="color:red">$date1 [[w:en:Anno Domini|AD]]</span>',
},
['ah'] = {
nDates = 1,
['be-tarask']='$date1 [[w:be-tarask:Ісламскі каляндар|хіджры]]',
bn ='$date1 [[w:bn:ইসলামি বর্ষপঞ্জি|হিজরী]]',
ckb ='$date1 [[w:ckb:ساڵی کۆچی|سک]]',
cs ='$date1 [[w:cs:Anno Hegirae|AH]]',
en ='$date1 [[w:en:Hijri year|AH]]',
['en-gb'] ='$date1 [[w:en:Hijri year|AH]]',
['en-ca'] ='$date1 [[w:en:Hijri year|AH]]',
eo ='$date1 post la [[w:eo:Heĝiro|Heĝiro]]',
fa ='$date1 ه.ق.',
fr ='$date1 [[w:fr:Calendrier musulman|A.H.]]',
he ="$date1 [[w:he:הלוח המוסלמי|להג'רה]]",
hr ='$date1 god. hidžre',
ja ='[[w:ja:ヒジュラ暦|ヒジュラ暦]]$date1',
ml ='$date1 [[w:ml:ഇസ്ലാമിക കലണ്ടർ|ഹിജ്റ]]',
nb ='$date1 [[w:no:Den muslimske kalenderen|A.H.]]',
nn ='$date1 [[w:nn:Den muslimske kalenderen|A.H.]]',
pl ='$date1 [[w:pl:Kalendarz muzułmański|A.H.]]',
ru ='$date1 [[w:ru:Исламский календарь|хиджры]]',
sk ='$date1 [[w:sk:A. H.|A. H.]]',
sv ='$date1 [[w:sv:Muslimska kalendern|A.H.]]',
uk ='$date1 [[w:uk:Мусульманський календар|хіджри]]',
ur ='$date1 ھ',
vi ='$date1 [[w:vi:Lịch Hồi giáo|AH]]',
['zh-hans'] ='[[w:en:Hijri year|Hijri历]]$date1',
['zh-hant'] ='[[w:en:Hijri year|Hijri曆]]$date1',
default='<span style="color:red">$date1 [[w:en:Hijri year|AH]]</span>',
},
['bc'] = {
nDates = 1,
ar ='$date1 ق.م.',
['be-tarask']='$date1 [[w:be-tarask:да Нараджэньня Хрыста|да Н. Х.]]',
bn ='খ্রিস্টপূর্ব $date1',
ca ='$date1 [[w:ca:Abans de Crist|aC]]',
ckb ='$date1 [[w:ckb:پێش زایین|پز]]',
cs ='$date1 [[w:cs:Př. n. l.|př. n. l.]]',
de ='$date1 [[w:de:v. Chr.|v. Chr.]]',
el ='$date1 π.Χ.',
en ='$date1 [[w:en:Ante Christum Natum|BC]]',
['en-gb'] ='$date1 [[w:en:Ante Christum Natum|BC]]',
['en-ca'] ='$date1 [[w:en:Ante Christum Natum|BC]]',
eo ='$date1 aK',
es ='$date1 [[w:es:Antes de Cristo|a. C.]]',
fa ='$date1 پ.م.',
fi ='$date1 eaa.',
fr ='$date1 av. J.-C.',
gl ='$date1 [[w:gl:Antes de Cristo|a.C.]]',
he ='$date1 לפני הספירה',
hr ='$date1 [[w:hr:Pr. Kr.|pr. Kr.]]',
hsb='$date1 do Chr.',
hu ='i. e. $date1',
it ='$date1 [[w:it:Avanti Cristo|a.C.]]',
ja ='[[w:ja:紀元前|紀元前]]$date1',
mk ='$date1 п.н.е.',
ml ='ക്രി.മു. $date1',
nds='$date1 vör uns Tied',
nb ='$date1 f.Kr.',
nl ='$date1 v.Chr.',
nn ='$date1 f.Kr.',
no ='$date1 f.Kr.',
pl ='$date1 [[w:pl:przed naszą erą|p.n.e.]]',
ro ='$date1 î.Hr.',
ru ='$date1 до н. э.',
sk ='$date1 [[w:sk:Pred Kristom|pred Kr.]]',
sl ='$date1 pr. n. št.',
sv ='$date1 [[w:sv:Före Kristus|f.Kr.]]',
uk ='$date1 до н. е.',
ur ='$date1 ق م',
vi ='$date1 [[w:vi:Trước Công Nguyên|TCN]]',
['zh-hans'] ='[[w:zh:基督纪年|公元前]]$date1',
['zh-hant'] ='[[w:zh:基督纪年|公元前]]$date1',
default='<span style="color:red">$date1 [[w:en:Ante Christum Natum|BC]]</span>',
},
['bp'] = {
nDates = 1,
ar ='$date1 [[w:ar:قبل الحاضر|قبل الحاضر]]',
be ='$date1 [[w:be-tarask:Да нашых дзён|Да нашых дзён]]',
['be-tarask']='$date1 [[w:be-tarask:Да нашых дзён|Да нашых дзён]]',
bn ='বর্তমানের আগে $date1',
ca ='$date1 [[w:ca:BP (unitat de temps)|BP]]',
ckb ='$date1 [[w:ckb:پێش ئێستا|پێش ئێستا]]',
cs ='$date1 [[w:cs:B. P.|B. P.]]',
de ='$date1 [[w:de:Before Present|BP]]',
el ='$date1 [[w:en:Before Present|BP]]',
en ='$date1 [[w:en:Before Present|BP]]',
['en-gb'] ='$date1 [[w:en:Before Present|BP]]',
['en-ca'] ='$date1 [[w:en:Before Present|BP]]',
eo='$date1 [[w:eo:Before Present|BP]]',
es ='$date1 [[w:es:Before Present|BP]]',
et ='$date1 [[w:et:Before Present|BP]]',
fa ='$date1 پیش از اکنون',
fi ='$date1 [[w:fi:BP (ajanlasku)|BP]]',
fr ='$date1 [[w:fr:Avant le présent|avant le présent]]',
hr ='$date1 [[w:hr:BP|prije današnjice]]',
it ='$date1 [[w:it:Before Present|BP]]',
ja ='$date1 [[w:ja:BP (年代測定)|BP]]',
lv ='$date1 [[w:lv:Pirms mūsdienām|Pirms mūsdienām]]',
mk ='$date1 [[w:mk:Пред сегашноста|п.с.]]',
ml ='[[w:en:Before Present|ഇന്നത്തെ കാലത്തിനു മുമ്പ്]] $date1',
nb ='$date1 [[w:no:Before Present|BP]]',
nn ='$date1 [[w:nn:Before Present|BP]]',
nl ='$date1 [[w:nl:Before Present|BP]]',
no ='$date1 [[w:no:Before Present|BP]]',
pl ='$date1 [[w:pl:Before Present|BP]]',
pt ='$date1 [[w:pt:Antes do Presente|Antes do Presente]]',
ru ='$date1 [[w:ru:До настоящего времени|до н. в.]]',
sk ='$date1 [[w:sk:BP (čas)|BP]]',
sl ='$date1 [[w:sl:pred sedanjostjo|p. s.]]',
sr ='$date1 [[w:sr:Прије садашњости|Прије садашњости]]',
sv ='$date1 [[w:sv:B.P.|B.P.]]',
uk ='$date1 [[w:uk:Років тому|Років тому]]',
ur ='$date1 قبل حاضر',
vi ='$date1 [[w:en:Before Present|trước ngày nay]]',
['zh-hans'] ='[[w:zh:距今|距今]]$date1',
['zh-hant'] ='[[w:zh:距今|距今]]$date1',
default='<span style="color:red">$date1 [[w:en:Before Present|BP]]</span>',
},
}
-- List of possible string inputs to "adj", "junction", "era", and "precision" fields
-- Each term is matched to its synonym and the role: a - adjective, e - era
-- p - precision, c - calendar and combos, r - certainty and j - conjunction
p.Synonyms = {
-- adjectives and prepositions
['quarter1']={'1quarter','a'},
['1stquarter']={'1quarter','a'},
['1st quarter']={'1quarter','a'},
['first quarter']={'1quarter','a'},
['1quarter']={'1quarter','a'},
['quarter2']={'2quarter','a'},
['2ndquarter']={'2quarter','a'},
['2nd quarter']={'2quarter','a'},
['second quarter']={'2quarter','a'},
['2quarter']={'2quarter','a'},
['quarter3']={'3quarter','a'},
['3rdquarter']={'3quarter','a'},
['3rd quarter']={'3quarter','a'},
['third quarter']={'3quarter','a'},
['3quarter']={'3quarter','a'},
['quarter4']={'4quarter','a'},
['4thquarter']={'4quarter','a'},
['4th quarter']={'4quarter','a'},
['fourth quarter']={'4quarter','a'},
['4quarter']={'4quarter','a'},
['spring']={'spring','a'},
['summer']={'summer','a'},
['fall']={'autumn','a'},
['autumn']={'autumn','a'},
['winter']={'winter','a'},
['beginning']={'early','a'},
['early']={'early','a'},
['1half']={'firsthalf','a'},
['1sthalf']={'firsthalf','a'},
['1st half']={'firsthalf','a'},
['firsthalf']={'firsthalf','a'},
['first half']={'firsthalf','a'},
['end']={'late','a'},
['late']={'late','a'},
['middle']={'mid','a'},
['mid']={'mid','a'},
['2half']={'secondhalf','a'},
['2ndhalf']={'secondhalf','a'},
['2nd half']={'secondhalf','a'},
['secondhalf']={'secondhalf','a'},
['second half']={'secondhalf','a'},
['<']={'before','a'},
['b']={'before','a'},
['before']={'before','a'},
['>']={'after','a'},
['a']={'after','a'},
['after']={'after','a'},
['~']={'circa','a'},
['c']={'circa','a'},
['ca']={'circa','a'},
['circa']={'circa','a'},
['by']={'by','a'},
['from']={'from','a'},
['until']={'until','a'},
['uncertain']={'uncertain','r'},
['possibly']={'possibly','r'},
['probably']={'probably','r'},
['presumably']={'presumably','r'},
-- eras
['bc']={'bc','e'},
['bce']={'bc','e'},
['before present']={'bp','e'},
['bp']={'bp','e'},
['ce']={'ad','e'},
['ad']={'ad','e'},
['ah']={'ah','e'},
-- conjunctions
['&']={'and','j'},
['and']={'and','j'},
['or']={'or','j'},
['-']={'from-until','j'},
['–']={'from-until','j'},
['from-until']={'from-until','j'},
['between']={'between','j'},
['circa2']={'circa2','a'},
-- precision
['day']={'day','p'},
['month']={'month','p'},
['year']={'year','p'},
['s']={'decade','p'},
['decade']={'decade','p'},
['century']={'century','p'},
['millennium']={'millennium','p'},
['million']={'million','p'},
['billion']={'billion','p'},
-- calendar
['julian']={'julian','c'},
['islamic']={'islamic','c'},
['hijri']={'islamic','c'},
-- "Turn of the ..." options are a combos which will be handled in similar way as calendars
['turn of the century']={'turn of the century','c'},
['century turn']={'turn of the century','c'},
['turn of the decade']={'turn of the decade','c'},
['decade turn']={'turn of the decade','c'},
['turn of the year']={'turn of the year','c'},
['year turn']={'turn of the year','c'},
-- other dates which will be handled in similar way as calendars
['?']={'unknown','c'},
['unknown']={'unknown','c'},
['unknown year']={'year unknown','c'},
['year unknown']={'year unknown','c'},
}
return p
dewwfi4vqnuvm2x2yyc13jj2an5fuuv
Module:I18n/linguistic
828
3313
36500
2025-12-15T17:25:54Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { -- message corresponds to the translatewiki message (in some cases: no accurate and needs to be overridden by another text and_conj = { -- in some languages the translatewiki message is not quite right pl = ' i', no = ' og', zh = '和', ["zh-hans"] = '和', ["zh-hant"] = '和', ["zh-cn"] = '和', ["zh-tw"] = '和', message = "and", }, or_conj = { ar = 'أو', bn = ' অথবা', ca = ' o', cs = ' nebo', d...'
36500
Scribunto
text/plain
return {
-- message corresponds to the translatewiki message (in some cases: no accurate and needs to be overridden by another text
and_conj = { -- in some languages the translatewiki message is not quite right
pl = ' i',
no = ' og',
zh = '和',
["zh-hans"] = '和',
["zh-hant"] = '和',
["zh-cn"] = '和',
["zh-tw"] = '和',
message = "and",
},
or_conj = {
ar = 'أو',
bn = ' অথবা',
ca = ' o',
cs = ' nebo',
da = ' eller',
de = ' oder',
el = ' ή',
en = ' or',
eo = ' aŭ',
et = ' või',
fa = 'یا ',
fi = ' tai',
fr = ' ou',
gl = ' ou',
he = ' או',
hu = ' vagy',
it = ' o',
ja = 'または',
mk = ' или',
ml = ' അഥവാ',
nds = ' oder',
ne = ' अथवा',
nl = ' of',
nn = ' eller',
no = ' eller',
['os'] = ' ó',
pl = ' lub',
pt = ' ou',
['pt-br'] = ' ou',
ru = ' или',
sl = ' ali',
sv = ' eller',
tg = ' ё',
th = ' หรือ',
tr = ' ve',
zh = ' 或',
},
colon = { -- Please expand using Commons:Template:Colon
ar = ': ',
en = ': ',
fr = ' : ',
},
comma = {
message = "comma-separator"
},
citation_comma = {
zh = ',', -- in Chinese the commas used in citation aren't '、'
["zh-hans"] = ',',
["zh-hant"] = ',',
["zh-cn"] = ',',
["zh-tw"] = ',',
message = "comma-separator"
},
full_stop = { -- to expand see Commons:Template:Full stop
ar = '. ',
en = '. ',
},
word_separator = {
message = 'Word-separator',
}
}
ix9d56uxtoij5ox3biepj3jond8dfdh
Module:I18n/date
828
3314
36501
2025-12-15T17:26:43Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} --[[ Different languages use different date formats, and many formats are shared among whole families of languages. "DateLang" picks a cluster of languages associated with a single date format, based on the language to be used. All unlisted languages default to English form. Languages like "de-formal" follows regular language fallback chain and would default to German, and only if that does not exist then to English. ]] p.DateLang...'
36501
Scribunto
text/plain
local p = {}
--[[ Different languages use different date formats, and many formats are shared among whole families of languages.
"DateLang" picks a cluster of languages associated with a single date format, based on the language to be used.
All unlisted languages default to English form. Languages like "de-formal" follows regular language fallback chain
and would default to German, and only if that does not exist then to English.
]]
p.DateLang = {
['ar'] = 'en-form', -- Arabic
['be'] = 'ru-form', -- Belarusian
['be-tarsk'] = 'ru-form', -- Belarusian (Tara۫ievica)
['bn'] = 'bn-form', -- Bengali
['bpy'] = 'bpy-form', -- Bishnupuriya Manipuri
['cs'] = 'cs-form', -- Czech
['da'] = 'de-form', -- Danish
['de'] = 'de-form', -- German
['el'] = 'ru-form', -- Greek
['en'] = 'en-form', -- English
['eo'] = 'eo-form', -- Esperanto
['es'] = 'es-form', -- Spanish
['et'] = 'de-form', -- Estonian
['fa'] = 'en-form', -- Persian
['fi'] = 'fi-form', -- Finnish
['fr'] = 'fr-form', -- French
['ga'] = 'ga-form', -- Gallic
['gl'] = 'es-form', -- Galician based on https://translatewiki.net/wiki/MediaWiki:Pagetriage-info-timestamp-date-format/gl
['hi'] = 'en-form', -- Hindi
['hr'] = 'hr-form', -- Croatian
['hu'] = 'hu-form', -- Hungarian
['ia'] = 'ia-form', -- Interlingua
['is'] = 'de-form', -- Icelandic
['ja'] = 'zh-form', -- Japanese
['kn'] = 'bn-form', -- Kannada
['ko'] = 'ko-form', -- Korean
['lt'] = 'lt-form', -- Lithuanian
['lv'] = 'lv-form', -- Latvian
['mk'] = 'en-form', -- Macedonian
['ml'] = 'ml-form', -- Malayalam
['mr'] = 'mr-form', -- Marathi
['new'] = 'new-form', -- Newari
['nn'] = 'de-form', -- Norwegian Nynorsk
['no'] = 'de-form', -- Norwegian (bokm欩
['oc'] = 'oc-form', -- Occitan
['pa'] = 'en-form', -- Punjabi
['pl'] = 'ru-form', -- Polish
['pt'] = 'es-form', -- Portuguese
['qu'] = 'qu-form', -- Quechua based on https://translatewiki.net/wiki/MediaWiki:Pagetriage-info-timestamp-date-format/qu
['qug'] = 'qug-form', -- Kichwa based on Template_talk:Date#Kichwa_.5Bqug.5D
['ru'] = 'ru-form', -- Russian
['sl'] = 'sl-form', -- Slovene
['sr'] = 'hr-form', -- Serbian
['th'] = 'th-form', -- Thai solar calendar
['vi'] = 'vi-form', -- Vietnamese
['zh-hans'] = 'zh-form', -- Chinese
}
--[[ Date format parameter which will be passed to {{#time:}} parser function.
It depends on the language and which parts of the date need to be displayed.
Different forms are:
* YMDHMS = stands for YYYY:MM:DD, HH:MM:SS format or equivalent
* YMDHM = stands for YYYY:MM:DD, HH:MM format or equivalent
* YMD = stands for YYYY:MM:DD format or equivalent
* YM = stands for YYYY:MM (year-month) format or equivalent
* MD = stands for MM:DD (month-day) format or equivalent
* Y = stands for YYYY (year only) format or equivalent
* M = stands for month name only
See https://www.mediawiki.org/wiki/Help:Extension:ParserFunctions#.23time for documentation
Original set was developed to match the output of the pre-Lua {{date}} template, preserved as {{date/old}}
]]
p.DateFormat = {
-- day/month/year languages
['en-form'] = {
YMDHMS='j F Y, H:i:s',
YMDHM ='j F Y, H:i',
YMD ='j F Y',
YM ='F Y',
MD ='j F',
Y ='Y',
M ='F'
},
['de-form'] = {
YMDHMS='j. F Y, H:i:s',
YMDHM ='j. F Y, H:i',
YMD ='j. F Y',
YM ='F Y',
MD ='j. F',
Y ='Y',
M ='F'
},
['hr-form'] = {
YMDHMS='j. F Y., H:i:s',
YMDHM ='j. F Y., H:i',
YMD ='j. F Y.',
YM ='F Y.',
MD ='j. F',
Y ='Y.',
M ='F'
},
['ml-form'] = {
YMDHMS='j F Y, H:i:s',
YMDHM ='j F Y, H:i',
YMD ='j F Y',
YM ='F Y',
MD ='F j',
Y ='Y',
M ='F'
},
['th-form'] = {
YMDHMS='j F "พ.ศ." xkY, H:i:s',
YMDHM ='j F "พ.ศ." xkY, H:i',
YMD ='j F "พ.ศ." xkY',
YM ='F "พ.ศ." xkY',
MD ='j F',
Y ='"พ.ศ." xkY',
M ='F'
},
['fi-form'] = {
YMDHMS='j. F"ta" Y, H:i:s',
YMDHM ='j. F"ta" Y, H:i',
YMD ='j. F"ta" Y',
YM ='F Y',
MD ='j. F"ta"',
Y ='Y',
M ='F'
},
['es-form'] = {
YMDHMS='j "de" F "de" Y, H:i:s',
YMDHM ='j "de" F "de" Y, H:i',
YMD ='j "de" F "de" Y',
YM ='F "de" Y',
MD ='j "de" F',
Y ='Y',
M ='F'
},
['oc-form'] = {
YMDHMS='j F "de" Y, H:i:s',
YMDHM ='j F "de" Y, H:i',
YMD ='j F "de" Y',
YM ='F "de" Y',
MD ='j F',
Y ='Y',
M ='F'
},
['ia-form'] = {
YMDHMS='j "de" F Y, H:i:s',
YMDHM ='j "de" F Y, H:i',
YMD ='j "de" F Y',
YM ='F Y',
MD ='j "de" F',
Y ='Y',
M ='F'
},
['eo-form'] = {
YMDHMS='"la" j"-a de" F Y, H:i:s',
YMDHM ='"la" j"-a de" F Y, H:i',
YMD ='"la" j"-a de" F Y',
YM ='F Y',
MD ='"la" j"-a de" F',
Y ='Y',
M ='F'
},
['vi-form'] = {
YMDHMS='j F "năm" Y, H:i:s',
YMDHM ='j F "năm" Y, H:i',
YMD ='j F "năm" Y',
YM ='F "năm" Y',
MD ='j F',
Y ='"năm" Y',
M ='F'
},
['qu-form'] = {
YMDHMS='j "ñiqin" F"pi" Y "watapi", H:i:s',
YMDHM ='j "ñiqin" F"pi" Y "watapi", H:i',
YMD ='j "ñiqin" F"pi" Y "watapi"',
YM ='F"pi" Y "watapi"',
MD ='j "ñiqin" F"pi"',
Y ='Y',
M ='F'
},
['qug-form'] = {
YMDHMS='j "niki" F"pi" Y "watapi", H:i:s',
YMDHM ='j "niki" F"pi" Y "watapi", H:i',
YMD ='j "niki" F"pi" Y "watapi"',
YM ='F"pi" Y "watapi"',
MD ='j "niki" F"pi"',
Y ='Y',
M ='F'
},
-- French and Gallic languages require different form for first day of the month and
-- different for the other days
['fr-form'] = {
YMDHMS='j F Y, H:i:s',
YMDHM ='j F Y, H:i',
YMD ='j F Y',
YM ='F Y',
MD ='j F',
Y ='Y',
M ='F'
},
['ga-form'] = {
YMDHMS='j F Y, H:i:s',
YMDHM ='j F Y, H:i',
YMD ='j F Y',
YM ='F Y',
MD ='j F',
Y ='Y',
M ='F'
},
['fr-form1'] = { -- 1st of the month form
YMDHMS='j"<sup>er</sup>" F Y, H:i:s',
YMDHM ='j"<sup>er</sup>" F Y, H:i',
YMD ='j"<sup>er</sup>" F Y',
YM ='F Y',
MD ='j"<sup>er</sup>" F',
Y ='Y',
M ='F'
},
['ga-form1'] = { -- 1st of the month form
YMDHMS='j"<sup>ú</sup>" F Y, H:i:s',
YMDHM ='j"<sup>ú</sup>" F Y, H:i',
YMD ='j"<sup>ú</sup>" F Y',
YM ='F Y',
MD ='j"<sup>ú</sup>" F',
Y ='Y',
M ='F'
},
-- day/month/year slavic languages
['ru-form'] = {
YMDHMS='j xg Y, H:i:s',
YMDHM ='j xg Y, H:i',
YMD ='j xg Y',
YM ='F Y',
MD ='j xg',
Y ='Y',
M ='F'
},
['cs-form'] = {
YMDHMS='j. xg Y, H:i:s',
YMDHM ='j. xg Y, H:i',
YMD ='j. xg Y',
YM ='F Y',
MD ='j. xg',
Y ='Y',
M ='F'
},
['sl-form'] = {
YMDHMS='j. xg Y ob H.i.s',
YMDHM ='j. xg Y ob H.i',
YMD ='j. xg Y',
YM ='F Y',
MD ='j. xg',
Y ='Y',
M ='F'
},
-- year/month/day languages
['zh-form'] = {
YMDHMS='Y年Fj日, H:i:s',
YMDHM ='Y年Fj日, H:i',
YMD ='Y年Fj日',
YM ='Y年F',
MD ='Fj日',
Y ='Y年',
M ='F'
},
['ko-form'] = {
YMDHMS='Y년 F j일, H:i:s',
YMDHM ='Y년 F j일, H:i',
YMD ='Y년 F j일',
YM ='Y년 F',
MD ='F j일',
Y ='Y년',
M ='F'
},
['hu-form'] = {
YMDHMS='Y. F j., H:i:s',
YMDHM ='Y. F j., H:i',
YMD ='Y. F j.',
YM ='Y. F',
MD ='F j.',
Y ='Y',
M ='F'
},
['lt-form'] = {
YMDHMS='Y "m". F j "d"., H:i:s',
YMDHM ='Y "m". F j "d"., H:i',
YMD ='Y "m". F j "d".',
YM ='Y "m". F',
MD ='F j "d".',
Y ='Y "m".',
M ='F'
},
-- year/day/month languages
['lv-form'] = {
YMDHMS='Y". gada" j. F, H:i:s',
YMDHM ='Y". gada" j. F, H:i',
YMD ='Y". gada" j. F',
YM ='Y". gada" F',
MD ='j. F',
Y ='Y". gada"',
M ='F'
},
-- month/day/year languages
['bn-form'] = {
YMDHMS='F j, Y, H:i:s',
YMDHM ='F j, Y, H:i',
YMD ='F j, Y',
YM ='F, Y',
MD ='F j',
Y ='Y',
M ='F'
},
['bpy-form']= {
YMDHMS='F j, মারি Y, H:i:s',
YMDHM ='F j, মারি Y, H:i',
YMD ='F j, মারি Y',
YM ='F, মারি Y',
MD ='F j',
Y ='মারি Y',
M ='F'
},
['mr-form'] = {
YMDHMS='F j, इ.स. Y, H:i:s',
YMDHM ='F j, इ.स. Y, H:i',
YMD ='F j, इ.स. Y',
YM ='F, इ.स. Y',
MD ='F j',
Y ='इ.स. Y',
M ='F'
},
['new-form']= {
YMDHMS='F j, ई सं Y, H:i:s',
YMDHM ='F j, ई सं Y, H:i',
YMD ='F j, ई सं Y',
YM ='F, ई सं Y',
MD ='F j',
Y ='ई सं Y',
M ='F'
},
}
return p
jl2xcasgqtb79tv6z4hd8jcn0870bej
Module:I18n/wikidata
828
3315
36502
2025-12-15T17:27:34Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { ["trackingcat"] = "Σελίδα που χρησιμοποιεί δεδομένα των Wikidata", -- DON'T TRANSLATE -- SPECIAL VALUES ["novalue"] = { ar = "غير قابل للتطبيق", cs = "nelze použít", el = "δεν ισχύει", en = "not applicable", fr = "pas applicable", nl = "niet van toepassing", ['pt-br'] = "não aplicável", }, ["somevalue"] = { ar = "غير معروف", cs = "neznámé", el = "...'
36502
Scribunto
text/plain
return {
["trackingcat"] = "Σελίδα που χρησιμοποιεί δεδομένα των Wikidata", -- DON'T TRANSLATE
-- SPECIAL VALUES
["novalue"] = {
ar = "غير قابل للتطبيق",
cs = "nelze použít",
el = "δεν ισχύει",
en = "not applicable",
fr = "pas applicable",
nl = "niet van toepassing",
['pt-br'] = "não aplicável",
},
["somevalue"] = {
ar = "غير معروف",
cs = "neznámé",
el = "άγνωστη τιμή",
en = "unknown",
fr = "inconnu",
nl = "onbekend",
['pt-br'] = "desconhecido",
},
-- MISSING DATA
["no-label"] = {
ar = "بدون تسمية",
cs = "bez štítku",
el = "χωρίς ετικέτα",
en = "no label",
fr = "pas de libellé",
nl = "geen label",
['pt-br'] = "sem rótulo",
},
["no description"] = {
ar = "بدون وصف",
cs = "bez popisu",
el = "χωρίς περιγραφή",
en = "no description",
fr = "pas de description",
nl = "geen omschrijving",
['pt-br'] = "sem descrição",
},
-- ERRORS
["property-param-not-provided"] = { -- MERGE WITH qualifier-param-not-provided
ar = "وسائط الخاصية غير موجودة",
cs = "chybí parametr „property“",
en = "'property' parameter missing",
fr = "paramètre 'property' manquant",
nl = "parameter 'property' ontbreekt",
['pt-br'] = "parâmetro 'property' em falta",
},
["qualifier-param-not-provided"] = {
ar = "وسائط التصانيف غير موجودة",
cs = "chybí parametr „qualifier“",
en = "'qualifier' parameter missing",
fr = "paramètre 'qualifier' manquant",
nl = "parameter 'qualifier' ontbreekt",
['pt-br'] = "parâmetro 'qualificador' em falta",
},
["entity-not-found"] = {
ar = "بدون إدخال",
cs = "entita nenalezena",
en = "entity not found",
fr = "entité non trouvée",
nl = "entiteit niet gevonden",
['pt-br'] = "entidade não encontrada",
},
["unknown-claim-type"] = {
ar = "نوع الإدعاء غير معروف",
cs = "neznámý typ tvrzení",
en = "unknown claim type",
fr = "type d'affirmation inconnu",
nl = "onbekend type claim",
['pt-br'] = "tipo de afirmação desconhecida",
},
["unknown-snak-typeg"] = {
ar = "نوع الكلام غير معروف",
cs = "neznámý typ snaku",
en = "unknown snak type",
fr = "type de snak inconnu",
nl = "onbekend snaktype",
['pt-br'] = "tipo de conector (''snak'') desconhecido",
},
["unknown-datavalue-type"] = {
ar = "نوع قيم البيانات غير معروف.",
cs = "neznámý typ datové hodnoty",
en = "unknown datavalue type.",
fr = "type de donnée inconnu.",
nl = "onbekend type gegevenswaarde.",
['pt-br'] = "tipo de dado desconhecido.",
},
["unknown-entity-type"] = {
ar = "نوع الإدخال غير معروف",
cs = "neznámý typ entity",
en = "unknown entity type",
fr = "type d'entité inconnu",
nl = "onbekend type entiteit",
['pt-br'] = "tipo de entidade desconhecida",
},
["invalid-id"] = {
ar = "المُعرف غير صحيح",
cs = "neplatné ID",
en = "invalid ID",
fr = "identifiant inconnu",
nl = "onbekend identificatienummer",
['pt-br'] = "identificador inválido",
},
}
kb9n67553g70ice0tnfdl57err2k2h6
Module:I18n/ordinal
828
3316
36503
2025-12-15T17:28:26Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} --[[ Different languages use different schemes for ordinals, and some of these schemes are shared between languages. "SchemeFromLang" picks an ordinal scheme based on a specified language. All unlisted languages default to the "period-scheme", i.e. "104." is the ordinal for the value "104". Languages will follow the regular language fallback chain. For example, "de-formal" would fallback to scheme for "de", and only if that does n...'
36503
Scribunto
text/plain
local p = {}
--[[ Different languages use different schemes for ordinals, and some of these schemes are shared between languages.
"SchemeFromLang" picks an ordinal scheme based on a specified language.
All unlisted languages default to the "period-scheme", i.e. "104." is the ordinal for the value "104".
Languages will follow the regular language fallback chain. For example, "de-formal" would fallback to scheme for "de",
and only if that does not exist would the "period-scheme" be used.
]]
p.SchemeFromLang = {
['bn'] = 'bn-scheme', -- Bengali
['br'] = 'br-scheme', -- Breton
['cs'] = 'period-scheme', -- Czech
['da'] = 'period-scheme', -- Danish
['de'] = 'period-scheme', -- German
['el'] = 'el-scheme', -- Greek
['en'] = 'en-scheme', -- English
['eo'] = 'eo-scheme', -- Esperanto
['es'] = 'es-scheme', -- Spanish
['et'] = 'period-scheme', -- Estonian
['fa'] = 'fa-scheme', -- Persian
['fi'] = 'period-scheme', -- Finnish
['fr'] = 'fr-scheme', -- French
['hr'] = 'period-scheme', -- Croatian
['hu'] = 'period-scheme', -- Hungarian
['hy'] = 'hy-scheme', -- Armenian
['ia'] = 'ia-scheme', -- Interlingua
['it'] = 'romance-scheme', -- Italian
['ja'] = 'ja-scheme', -- Japanese
['km'] = 'km-scheme', -- Khmer
['ko'] = 'ko-scheme', -- Korean
['la'] = 'la-scheme', -- Latin
['lo'] = 'lo-scheme', -- Laothian
['mk'] = 'mk-scheme', -- Macedonian
['ml'] = 'ml-scheme', -- Malayalam
['ms'] = 'ms-scheme', -- Malay
['nds'] = 'period-scheme', -- Low German
['nl'] = 'nl-scheme', -- Dutch
['no'] = 'no-scheme', -- Norwegian
['pl'] = 'pl-scheme', -- Polish
['pt'] = 'romance-scheme', -- Portuguese
['ru'] = 'ru-scheme', -- Russian
['sk'] = 'period-scheme', -- Slovak
['sl'] = 'period-scheme', -- Slovene
['sv'] = 'sv-scheme', -- Swedish
['th'] = 'th-scheme', -- Thai
['zh'] = 'zh-scheme', -- Chinese
}
--[[ Text used to internationalize the various schemes.
Styles are supported by suffixing "/style" to key.
Styles that are superscripted set "superscript" to true.
Scheme set was developed to match the output of the pre-Lua {{Ordinal}} template, preserved as {{Ordinal/old}}
]]
p.Scheme = {
-- the null scheme, i.e. just the number
['null-scheme'] = {
},
-- the period scheme, i.e. "<value>." used for at least: cs, de, fi, hu
['period-scheme'] = {
rules = 'suffix',
suffix = '.'
},
-- the English scheme, i.e. "1st", "2nd", "3rd", "4th".
['en-scheme'] = {
rules = 'skip-tens',
superscript = true,
suffix = 'th',
suffix_1 = 'st',
suffix_2 = 'nd',
suffix_3 = 'rd',
},
-- the English scheme using the "d" style, i.e. "23d".
['en-scheme/d'] = {
rules = 'suffix',
suffix = 'd'
},
-- Bengali
['bn-scheme'] = {
rules = 'mod10-suffix',
superscript = true,
suffix_0 = 'ম',
suffix_1 = 'ম',
suffix_2 = 'য়',
suffix_3 = 'য়',
suffix_4 = 'র্থ়',
suffix_5 = 'ম',
suffix_6 = 'ষ্ঠ',
suffix_7 = 'ম',
suffix_8 = 'ম',
suffix_9 = 'ম',
},
-- Breton
['br-scheme'] = {
rules = 'suffix',
suffix = '-vet',
formatlang = 'eo' -- pre-Lua {{Ordinal}} template used "eo" number formatting for "br" ordinals
},
-- Greek
['el-scheme'] = {
rules = 'gendered-suffix',
suffix = 'ος',
suffix_m = 'ος',
suffix_f = 'η',
suffix_n = 'ο',
},
-- Esperanto
['eo-scheme'] = {
rules = 'suffix',
suffix = '-a',
},
-- Romance (Italian, Portuguese)
['romance-scheme'] = {
rules = 'gendered-suffix',
superscript = true,
period = false,
suffix = 'o',
suffix_m = 'o',
suffix_f = 'a',
suffix_n = 'o',
},
-- Spanish
['es-scheme'] = {
rules = 'gendered-suffix',
superscript = true,
period = true,
suffix = 'o',
suffix_m = 'o',
suffix_f = 'a',
suffix_n = 'o',
},
-- Persian
['fa-scheme'] = {
rules = 'suffix',
suffix = 'م',
},
-- French
['fr-scheme'] = {
rules = 'gendered-suffix-one',
superscript = true,
suffix = 'e',
suffix_1 = 'e',
suffix_1_m = 'er',
suffix_1_f = 're',
suffix_1_n = 'e',
},
-- the French scheme using the "roman" style ("roman year" is a supported alias for "roman")
['fr-scheme/roman'] = {
rules = 'gendered-suffix-one',
superscript = true,
suffix = 'e',
suffix_1 = 'e',
suffix_1_m = 'er',
suffix_1_f = 're',
suffix_1_n = 'е',
formatlang = 'roman'
},
-- Armenian
['hy-scheme'] = {
rules = 'suffix-one',
suffix = '-րդ',
suffix_1 = '-ին',
},
-- Interlingua
['ia-scheme'] = {
rules = 'mod10-suffix',
superscript = true,
suffix_0 = 'te',
suffix_1 = 'me',
suffix_2 = 'nde',
suffix_3 = 'tie',
suffix_4 = 'te',
suffix_5 = 'te',
suffix_6 = 'te',
suffix_7 = 'me',
suffix_8 = 've',
suffix_9 = 'ne',
},
-- Khmer
['km-scheme'] = {
rules = 'prefix',
prefix = 'ទ',
},
-- Japanese
-- this is for the adjective in undetermined order before noun; otherwise Japanese use: <cardinal number><noun>目
['ja-scheme'] = {
rules = 'prefix',
prefix = '第',
},
-- Latin
['la-scheme'] = {
rules = 'suffix',
superscript = true,
suffix = 'o',
formatlang = 'roman'
},
-- Laothian
['lo-scheme'] = {
rules = 'prefix',
prefix = 'ທີ່',
},
-- Korean
['ko-scheme'] = {
rules = 'suffix',
suffix = '째',
},
-- Macedonian
['mk-scheme'] = {
rules = 'mod10-suffix',
suffix_0 = '-тиот',
suffix_1 = '-виот',
suffix_2 = '-риот',
suffix_3 = '-иот',
suffix_4 = '-иот',
suffix_5 = '-тиот',
suffix_6 = '-иот',
suffix_7 = '-миот',
suffix_8 = '-миот',
suffix_9 = '-тиот',
},
-- Malayalam
['ml-scheme'] = {
rules = 'suffix',
suffix = '-മത്തെ',
},
-- Malay
['ms-scheme'] = {
rules = 'prefix',
prefix = 'ke-',
},
-- Dutch
['nl-scheme'] = {
rules = 'suffix',
suffix = 'e',
},
--Norwegian
['no-scheme'] = {
rules = 'skip-tens',
superscript = true,
suffix = 'de',
suffix_1 = 'ste',
suffix_2 = 'dre',
suffix_3 = 'dje',
suffix_5 = 'te',
suffix_6 = 'te',
},
-- Polish
['pl-scheme'] = {
rules = 'mod10-gendered-suffix-skip-tens',
suffix = '-ty',
suffix_f = '-ta',
suffix_n = '-te',
suffix_1 = '-szy',
suffix_1_f = '-sza',
suffix_1_n = '-sze',
suffix_2 = '-gi',
suffix_2_f = '-ga',
suffix_2_n = '-gie',
suffix_3 = '-ci',
suffix_3_f = '-cia',
suffix_3_n = '-cie',
suffix_7 = '-my',
suffix_7_f = '-ma',
suffix_7_n = '-me',
suffix_8 = '-my',
suffix_8_f = '-ma',
suffix_8_n = '-me',
},
-- Russian
['ru-scheme'] = {
rules = 'gendered-suffix',
suffix = '-й',
suffix_m = '-й',
suffix_f = '-я',
suffix_n = '-е',
},
-- Swedish
['sv-scheme'] = {
rules = 'skip-tens',
suffix = ':e',
suffix_1 = ':a',
suffix_2 = ':a',
},
['th-scheme'] = {
rules = 'prefix',
prefix = 'ที่',
},
['zh-scheme'] = {
rules = 'prefix',
prefix = '第',
},
}
return p
sopeihbjdavnnkzd6qk1j8zro3oofax
Module:ISOdate
828
3317
36504
2025-12-15T17:29:37Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ __ __ _ _ ___ ____ ___ _ _ | \/ | ___ __| |_ _| | ___ _|_ _/ ___| / _ \ __| | __ _| |_ ___ | |\/| |/ _ \ / _` | | | | |/ _ (_)| |\___ \| | | |/ _` |/ _` | __/ _ \ | | | | (_) | (_| | |_| | | __/_ | | ___) | |_| | (_| | (_| | || __/ |_| |_|\___/ \__,_|\__,_|_|\___(_)___|____/ \___/ \__,_|\__,_|\__\___| This module is intended for processing of date strings. Please do not mod...'
36504
Scribunto
text/plain
--[[
__ __ _ _ ___ ____ ___ _ _
| \/ | ___ __| |_ _| | ___ _|_ _/ ___| / _ \ __| | __ _| |_ ___
| |\/| |/ _ \ / _` | | | | |/ _ (_)| |\___ \| | | |/ _` |/ _` | __/ _ \
| | | | (_) | (_| | |_| | | __/_ | | ___) | |_| | (_| | (_| | || __/
|_| |_|\___/ \__,_|\__,_|_|\___(_)___|____/ \___/ \__,_|\__,_|\__\___|
This module is intended for processing of date strings.
Please do not modify this code without applying the changes first at Module:ISOdate/sandbox and testing
at Module:ISOdate/sandbox/testcases and Module talk:ISOdate/sandbox/testcases.
Authors and maintainers:
* User:Parent5446 - original version of the function mimicking template:ISOdate
* User:Jarekt - original version of the functions mimicking template:Date and template:ISOyear
]]
local p = {}
-- =======================================
-- === Dependencies ======================
-- =======================================
local D = require('Module:DateI18n')
--[[
ISOyear
This function returns year part of date string.
Usage:
{{#invoke:ISOdate|ISOyear|target_string}}
Parameters
1: The date string
Error Handling:
If the string does not look like it contain the year than the function will not return anything.
That is the preferred treatment for the template:Creator which is the main (only?) template calling it.
]]
function p.ISOyear( frame )
return p._ISOyear( frame.args[1] )
end
function p._ISOyear( input )
if not input then
return ''
end
input = mw.text.trim( input )
-- if empty string then return it
if input == "" then
return input
end
-- if number then return it
if tonumber( input ) then
return mw.ustring.format( '%04i', input )
end
-- otherwise use regular expression match
input = mw.ustring.match( input, '^+?(-?%d%d?%d?%d?)-' )
if input and tonumber( input ) then
return mw.ustring.format( '%04i', input )
else
return ''
end
end
--[[
ISOdate
This function is the core part of the ISOdate template.
Usage:
{{#invoke:ISOdate|ISOdate|target_string|lang=}}
Parameters:
1: The date string
lang: The language to display it in
form: Language format (genitive, etc.) for some languages
class: CSS class for the <time> node
Error Handling:
If the string does not look like it contain the proper ISO date than the function will return the original string.
That is the preferred treatment for the template:Information (and similar templates) which calling it.
]]
function p.ISOdate(frame)
local datestr, succeded
local args = frame.args
if not (args.lang and mw.language.isSupportedLanguage(args.lang)) then
args.lang = frame:callParserFunction( "int", "lang" ) -- get user's chosen language
end
datestr, succeded = p._ISOdate(
mw.text.trim(args[1]),
args.lang, -- language
args.case or '', -- allows to specify grammatical case for the month for languages that use them
args.class or 'dtstart', -- allows to set the html class of the time node where the date is included.
args.trim_year or '100-999' -- by default pad one and 2 digit years to be 4 digit long, while keeping 3 digit years as is
)
return datestr
end
function p._ISOdate(datestr, lang, case, class, trim_year)
-- pattern: regexp - regular expresion to test; dlen - number of date elements; tail = which element is a "tail" if any
-- regexp hints:
-- 1) Strings starting with "^" and ending with "$" indicate whole string match
-- 2) optional tail part copied as-is and following the main parsed part of the date have to be separated from the date by a whitespace, so "(\s.+)?"
local patterns = {
-- strings starting with YYYY-MM-DD HH:MM:SS. Year 4 digits (if we know seconds than it was within the last 100 years), the rest 1-2
-- date and time can be separated by space or "T" and there could be a "Z" on the end indicating "Zulu" time zone
{dlen=6, tail=7, regexp="^+?(%d%d%d%d)-(%d%d?)-(%d%d?)[ T](%d%d?):(%d%d?):(%d%d?)Z?(%s.*)"},
{dlen=6, tail=0, regexp="^+?(%d%d%d%d)-(%d%d?)-(%d%d?)[ T](%d%d?):(%d%d?):(%d%d?)Z?$"},
-- strings starting with YYYY-MM-DD HH:MM. Year 4 digits, the rest 1-2
-- (if one knows hour and minute than it was probably after a year 1000)
{dlen=5, tail=6, regexp="^+?(%d%d%d%d)-(%d%d?)-(%d%d?)[ T](%d%d?):(%d%d?)(%s.+)"},
{dlen=5, tail=0, regexp="^+?(%d%d%d%d)-(%d%d?)-(%d%d?)[ T](%d%d?):(%d%d?)$"},
-- strings starting with YYYY-MM-DD. Year 1-4 digits, the rest 1-2
{dlen=3, tail=4, regexp="^+?(%d%d?%d?%d?)-(%d%d?)-(%d%d?)(%s.+)"},
{dlen=3, tail=0, regexp="^+?(%d%d?%d?%d?)-(%d%d?)-(%d%d?)$"},
-- strings starting with YYYY-MM. Year 3-4 digits, month 2 digits
-- (want to avoit converting to dates strings like 10-5 = 5
{dlen=2, tail=3, regexp="^+?(%d%d%d%d?)-(%d%d)(%s.+)"},
-- if whole string is in YYYY-MM form: If Year 1-4 digits, month 1-2 digits
{dlen=2, tail=0, regexp="^+?(%d%d?%d?%d?)-(%d%d?)$"},
-- string starts with a number -> it has to be 3 or 4 digit long to be a year
{dlen=1, tail=2, regexp="^+?(%d%d%d%d?)(%s.+)"},
-- if whole string is a number (1-4 digit long) than it will be interpreted as a year
{dlen=1, tail=0, regexp="^+?(%d%d?%d?%d?)$"},
}
-- create datevec based on which variables are provided
local datevec, tail, formatNum
datevec, tail, formatNum = p.test_date_formats(datestr or '', patterns)
if datevec[1]=='' or datevec[1]==nil then
-- quickly return if datestr does not look like date (it could be a template)
return datestr, false
end
-- call p._Date function to format date string
local succeded, datestr2
succeded, datestr2 = pcall( D._Date, datevec, lang, case, class, trim_year)
if succeded and datestr2~='' then
return mw.text.trim( datestr2 .. tail), true
else -- in case of errors return the original string
return datestr, false
end
end
function p.ISOdate_extended(frame)
-- pattern: regexp - regular expresion to test; dlen - number of date elements; tail = which element is a "tail" if any
-- regexp hints:
-- 1) Strings starting with "^" and ending with "$" indicate whole string match
-- 2) optional tail part copied as-is and following the main parsed part of the date have to be separated from the date by a whitespace, so "(\s.+)?"
local datestr, succeded
local args = frame.args
if not (args.lang and mw.language.isSupportedLanguage(args.lang)) then
args.lang = frame:callParserFunction( "int", "lang" ) -- get user's chosen language
end
datestr, succeded = p._ISOdate(
mw.text.trim(args[1]),
args.lang, -- language
args.case or '', -- allows to specify grammatical case for the month for languages that use them
args.class or 'dtstart', -- allows to set the html class of the time node where the date is included.
args.trim_year or '100-999' -- by default pad one and 2 digit years to be 4 digit long, while keeping 3 digit years as is
)
if succeded then
return datestr
end
local patterns = {
-- Exended set of recognized formats: like MM/DD/YYYY
{dlen=3, tail=4, regexp="^(%d%d?)[-./](%d%d?)[-./](%d%d%d%d)(%s.+)"},
{dlen=3, tail=0, regexp="^(%d%d?)[-./](%d%d?)[-./](%d%d%d%d)$"},
{dlen=3, tail=0, regexp="^(%d%d?)%s(%w+)%s(%d%d%d%d)$"},
{dlen=3, tail=0, regexp="^(%w+)%s(%d%d?),%s(%d%d%d%d)$"},
}
local datevec, tail, formatNum, category = ''
datevec, tail, formatNum = p.test_date_formats(frame.args[1], patterns)
if formatNum==1 or formatNum==2 then
vec = datevec;
if tonumber(datevec[1])>12 then
frame.args[1] = string.format('%04i-%02i-%02i', datevec[3], datevec[2], datevec[1] )
category = '[[Category:Date in DD/MM/YYYY format]]'
return mw.text.trim( p.ISOdate(frame) .. tail);
elseif tonumber(datevec[2])>12 then
frame.args[1] = string.format('%04i-%02i-%02i', datevec[3], datevec[1], datevec[2] )
category = '[[Category:Date in MM/DD/YYYY format]]'
return mw.text.trim( p.ISOdate(frame) .. tail);
end
elseif (formatNum==3 or formatNum==4) and (datevec[3]=='' or datevec[3]~=nil) then
local str = mw.getCurrentFrame():callParserFunction( "#time", { 'Y-m-d', datestr} )
local vec = {str:match( "^(%d%d?%d?%d?)-(%d%d?)-(%d%d?)$" )}
if vec and vec[1]~=nil then
frame.args[1] = string.format('%04i-%02i-%02i', vec[1], vec[2], vec[3] )
category = '[[Category:Date in word format]]'
return p.ISOdate(frame);
end
end
return datestr
end
function p.test_date_formats(datestr, patterns)
-- pattern: regexp - regular expresion to test; dlen - number of date elements; tail = which element is a "tail" if any
local datevec = {'','','','','',''}
local tail = ''
local vec, pat
local formatNum = 0
for i, pat in ipairs( patterns ) do
vec = {datestr:match( pat.regexp )}
if vec and vec[1]~=nil then
for j=1,pat.dlen do
datevec[j] = vec[j]
end
if pat.tail>0 and vec[pat.tail]~=nil then
tail = mw.ustring.gsub(' ' .. vec[pat.tail], ' +', ' ')
end
formatNum = i
break
end
end
return datevec, tail, formatNum
end
return p
8au9sz1r45o542osy5nbgpcaj9hca0m
Module:String
828
3318
36505
2025-12-15T17:30:31Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ This module is intended to provide access to basic string functions. Most of the functions provided here can be invoked with named parameters, unnamed parameters, or a mixture. If named parameters are used, Mediawiki will automatically remove any leading or trailing whitespace from the parameter. Depending on the intended use, it may be advantageous to either preserve or remove such whitespace. Global options ignore_errors: If set to '...'
36505
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } )
local s = new_args['s'] or ''
local i = tonumber( new_args['i'] ) or 1
local j = tonumber( new_args['j'] ) or -1
local len = mw.ustring.len( s )
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1
end
if j < 0 then
j = len + j + 1
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' )
end
if j < i then
return str._error( 'String subset indices out of order' )
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
_match
This function returns a substring from the source string that matches a
specified pattern. It is exported for use in other modules
Usage:
strmatch = require("Module:String")._match
sresult = strmatch( s, pattern, start, match, plain, nomatch )
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain_flag, nomatch )
if s == '' then
return str._error( 'Target string is empty' )
end
if pattern == '' then
return str._error( 'Pattern string is empty' )
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' )
end
if match_index == 0 then
return str._error( 'Match index is out of range' )
end
if plain_flag then
pattern = str._escapePattern( pattern )
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start )
end
local iterator = mw.ustring.gmatch(s, pattern)
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1
if match_index == 0 then
result = w
break
end
end
else
-- Reverse search
local result_table = {}
local count = 1
for w in iterator do
result_table[count] = w
count = count + 1
end
result = result_table[ count + match_index ]
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' )
else
return nomatch
end
else
return result
end
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|match|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} )
local s = new_args['s'] or ''
local start = tonumber( new_args['start'] ) or 1
local plain_flag = str._getBoolean( new_args['plain'] or false )
local pattern = new_args['pattern'] or ''
local match_index = math.floor( tonumber(new_args['match']) or 1 )
local nomatch = new_args['nomatch']
return str._match( s, pattern, start, match_index, plain_flag, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} )
local target_str = new_args['target'] or ''
local pos = tonumber( new_args['pos'] ) or 0
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' )
end
return mw.ustring.sub( target_str, pos, pos )
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} )
local source_str = new_args['source'] or ''
local target_str = new_args['target'] or ''
if target_str == '' then
return 1
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['target'] or ''
local start_pos = tonumber(new_args['start']) or 1
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return 0
end
plain = str._getBoolean( plain )
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['pattern'] or ''
local replace = new_args['replace'] or ''
local count = tonumber( new_args['count'] )
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return source_str
end
plain = str._getBoolean( plain )
if plain then
pattern = str._escapePattern( pattern )
replace = mw.ustring.gsub( replace, "%%", "%%%%" ) --Only need to escape replacement sequences.
end
local result
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count )
else
result = mw.ustring.gsub( source_str, pattern, replace )
end
return result
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' )
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
count
This function counts the number of occurrences of one string in another.
]]
function str.count(frame)
local args = str._getParameters(frame.args, {'source', 'pattern', 'plain'})
local source = args.source or ''
local pattern = args.pattern or ''
local plain = str._getBoolean(args.plain or true)
if plain then
pattern = str._escapePattern(pattern)
end
local _, count = mw.ustring.gsub(source, pattern, '')
return count
end
--[[
endswith
This function determines whether a string ends with another string.
]]
function str.endswith(frame)
local args = str._getParameters(frame.args, {'source', 'pattern'})
local source = args.source or ''
local pattern = args.pattern or ''
if pattern == '' then
-- All strings end with the empty string.
return "yes"
end
if mw.ustring.sub(source, -mw.ustring.len(pattern), -1) == pattern then
return "yes"
else
return ""
end
end
--[[
join
Join all non empty arguments together; the first argument is the separator.
Usage:
{{#invoke:String|join|sep|one|two|three}}
]]
function str.join(frame)
local args = {}
local sep
for _, v in ipairs( frame.args ) do
if sep then
if v ~= '' then
table.insert(args, v)
end
else
sep = v
end
end
return table.concat( args, sep or '' )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {}
local index = 1
local value
for _, arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index]
index = index + 1
end
new_args[arg] = value
end
return new_args
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame()
local error_category = frame.args.error_category or 'Errors reported by Module String'
local ignore_errors = frame.args.ignore_errors or false
local no_category = frame.args.no_category or false
if str._getBoolean(ignore_errors) then
return ''
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>'
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str
end
return error_str
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower()
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false
else
boolean_value = true
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str
else
error( 'No boolean value found' )
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" )
end
return str
cufmbepw7ml3gut4lchtqrhtj5r63cp
Module:String2
828
3319
36506
2025-12-15T17:31:53Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} p.trim = function(frame) return mw.text.trim(frame.args[1] or "") end p.sentence = function (frame) -- {{lc:}} is strip-marker safe, string.lower is not. frame.args[1] = frame:callParserFunction('lc', frame.args[1]) return p.ucfirst(frame) end p.ucfirst = function (frame ) local s = mw.text.trim( frame.args[1] or "" ) local s1 = "" -- if it's a list chop off and (store as s1) everything up to the first <li> local lipos = mw...'
36506
Scribunto
text/plain
local p = {}
p.trim = function(frame)
return mw.text.trim(frame.args[1] or "")
end
p.sentence = function (frame)
-- {{lc:}} is strip-marker safe, string.lower is not.
frame.args[1] = frame:callParserFunction('lc', frame.args[1])
return p.ucfirst(frame)
end
p.ucfirst = function (frame )
local s = mw.text.trim( frame.args[1] or "" )
local s1 = ""
-- if it's a list chop off and (store as s1) everything up to the first <li>
local lipos = mw.ustring.find(s, "<li>" )
if lipos then
s1 = mw.ustring.sub(s, 1, lipos + 3)
s = mw.ustring.sub(s, lipos + 4)
end
-- s1 is either "" or the first part of the list markup, so we can continue
-- and prepend s1 to the returned string
local letterpos
if mw.ustring.find(s, "^%[%[[^|]+|[^%]]+%]%]") then
-- this is a piped wikilink, so we capitalise the text, not the pipe
local _
_, letterpos = mw.ustring.find(s, "|%W*%w") -- find the first letter after the pipe
else
letterpos = mw.ustring.find(s, '%w')
end
if letterpos then
local first = mw.ustring.sub(s, 1, letterpos - 1)
local letter = mw.ustring.sub(s, letterpos, letterpos)
local rest = mw.ustring.sub(s, letterpos + 1)
return s1 .. first .. mw.ustring.upper(letter) .. rest
else
return s1 .. s
end
end
p.title = function (frame )
-- http://grammar.yourdictionary.com/capitalization/rules-for-capitalization-in-titles.html
-- recommended by The U.S. Government Printing Office Style Manual:
-- "Capitalize all words in titles of publications and documents,
-- except a, an, the, at, by, for, in, of, on, to, up, and, as, but, or, and nor."
local alwayslower = {['a'] = 1, ['an'] = 1, ['the'] = 1,
['and'] = 1, ['but'] = 1, ['or'] = 1, ['for'] = 1,
['nor'] = 1, ['on'] = 1, ['in'] = 1, ['at'] = 1, ['to'] = 1,
['from'] = 1, ['by'] = 1, ['of'] = 1, ['up'] = 1 }
local res = ''
local s = mw.text.trim( frame.args[1] or "" )
local words = mw.text.split( s, " ")
for i, s in ipairs(words) do
-- {{lc:}} is strip-marker safe, string.lower is not.
s = frame:callParserFunction('lc', s)
if i == 1 or alwayslower[s] ~= 1 then
s = mw.getContentLanguage():ucfirst(s)
end
words[i] = s
end
return table.concat(words, " ")
end
-- findlast finds the last item in a list
-- the first unnamed parameter is the list
-- the second, optional unnamed parameter is the list separator (default = comma space)
-- returns the whole list if separator not found
p.findlast = function(frame)
local s = mw.text.trim( frame.args[1] or "" )
local sep = frame.args[2] or ""
if sep == "" then sep = ", " end
local pattern = ".*" .. sep .. "(.*)"
local a, b, last = s:find(pattern)
if a then
return last
else
return s
end
end
-- stripZeros finds the first number and strips leading zeros (apart from units)
-- e.g "0940" -> "940"; "Year: 0023" -> "Year: 23"; "00.12" -> "0.12"
p.stripZeros = function(frame)
local s = mw.text.trim(frame.args[1] or "")
local n = tonumber( string.match( s, "%d+" ) ) or ""
s = string.gsub( s, "%d+", n, 1 )
return s
end
-- nowiki ensures that a string of text is treated by the MediaWiki software as just a string
-- it takes an unnamed parameter and trims whitespace, then removes any wikicode
p.nowiki = function(frame)
local str = mw.text.trim(frame.args[1] or "")
return mw.text.nowiki(str)
end
-- split splits text at boundaries specified by separator
-- and returns the chunk for the index idx (starting at 1)
-- #invoke:String2 |split |text |separator |index |true/false
-- #invoke:String2 |split |txt=text |sep=separator |idx=index |plain=true/false
-- if plain is false/no/0 then separator is treated as a Lua pattern - defaults to plain=true
p.split = function(frame)
local args = frame.args
if not(args[1] or args.txt) then args = frame:getParent().args end
local txt = args[1] or args.txt or ""
if txt == "" then return nil end
local sep = (args[2] or args.sep or ""):gsub('"', '')
local idx = tonumber(args[3] or args.idx) or 1
local plain = (args[4] or args.plain or "true"):sub(1,1)
plain = (plain ~= "f" and plain ~= "n" and plain ~= "0")
local splittbl = mw.text.split( txt, sep, plain )
if idx < 0 then idx = #splittbl + idx + 1 end
return splittbl[idx]
end
-- val2percent scans through a string, passed as either the first unnamed parameter or |txt=
-- it converts each number it finds into a percentage and returns the resultant string.
p.val2percent = function(frame)
local args = frame.args
if not(args[1] or args.txt) then args = frame:getParent().args end
local txt = mw.text.trim(args[1] or args.txt or "")
if txt == "" then return nil end
local function v2p (x)
x = (tonumber(x) or 0) * 100
if x == math.floor(x) then x = math.floor(x) end
return x .. "%"
end
txt = txt:gsub("%d[%d%.]*", v2p) -- store just the string
return txt
end
-- one2a scans through a string, passed as either the first unnamed parameter or |txt=
-- it converts each occurrence of 'one ' into either 'a ' or 'an ' and returns the resultant string.
p.one2a = function(frame)
local args = frame.args
if not(args[1] or args.txt) then args = frame:getParent().args end
local txt = mw.text.trim(args[1] or args.txt or "")
if txt == "" then return nil end
txt = txt:gsub(" one ", " a "):gsub("^one", "a"):gsub("One ", "A "):gsub("a ([aeiou])", "an %1"):gsub("A ([aeiou])", "An %1")
return txt
end
-- findpagetext returns the position of a piece of text in a page
-- First positional parameter or |text is the search text
-- Optional parameter |title is the page title, defaults to current page
-- Optional parameter |plain is either true for plain search (default) or false for Lua pattern search
-- Optional parameter |nomatch is the return value when no match is found; default is nil
p._findpagetext = function(args)
-- process parameters
local nomatch = args.nomatch or ""
if nomatch == "" then nomatch = nil end
--
local text = mw.text.trim(args[1] or args.text or "")
if text == "" then return nil end
--
local title = args.title or ""
local titleobj
if title == "" then
titleobj = mw.title.getCurrentTitle()
else
titleobj = mw.title.new(title)
end
--
local plain = args.plain or ""
if plain:sub(1, 1) == "f" then plain = false else plain = true end
-- get the page content and look for 'text' - return position or nomatch
local content = titleobj and titleobj:getContent()
return content and mw.ustring.find(content, text, 1, plain) or nomatch
end
p.findpagetext = function(frame)
local args = frame.args
local pargs = frame:getParent().args
for k, v in pairs(pargs) do
args[k] = v
end
if not (args[1] or args.text) then return nil end
-- just the first value
return (p._findpagetext(args))
end
-- returns the decoded url. Inverse of parser function {{urlencode:val|TYPE}}
-- Type is:
-- QUERY decodes + to space (default)
-- PATH does no extra decoding
-- WIKI decodes _ to space
p._urldecode = function(url, type)
url = url or ""
type = (type == "PATH" or type == "WIKI") and type
return mw.uri.decode( url, type )
end
-- {{#invoke:String2|urldecode|url=url|type=type}}
p.urldecode = function(frame)
return mw.uri.decode( frame.args.url, frame.args.type )
end
-- what follows was merged from Module:StringFunc
-- helper functions
p._GetParameters = require('Module:GetParameters')
-- Argument list helper function, as per Module:String
p._getParameters = p._GetParameters.getParameters
-- Escape Pattern helper function so that all characters are treated as plain text, as per Module:String
function p._escapePattern( pattern_str)
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" )
end
-- Helper Function to interpret boolean strings, as per Module:String
p._getBoolean = p._GetParameters.getBoolean
--[[
Strip
This function Strips characters from string
Usage:
{{#invoke:String2|strip|source_string|characters_to_strip|plain_flag}}
Parameters
source: The string to strip
chars: The pattern or list of characters to strip from string, replaced with ''
plain: A flag indicating that the chars should be understood as plain text. defaults to true.
Leading and trailing whitespace is also automatically stripped from the string.
]]
function p.strip( frame )
local new_args = p._getParameters( frame.args, {'source', 'chars', 'plain'} )
local source_str = new_args['source'] or ''
local chars = new_args['chars'] or '' or 'characters'
source_str = mw.text.trim(source_str)
if source_str == '' or chars == '' then
return source_str
end
local l_plain = p._getBoolean( new_args['plain'] or true )
if l_plain then
chars = p._escapePattern( chars )
end
local result
result = mw.ustring.gsub(source_str, "["..chars.."]", '')
return result
end
--[[
Match any
Returns the index of the first given pattern to match the input. Patterns must be consecutively numbered.
Returns the empty string if nothing matches for use in {{#if:}}
Usage:
{{#invoke:String2|matchAll|source=123 abc|456|abc}} returns '2'.
Parameters:
source: the string to search
plain: A flag indicating that the patterns should be understood as plain text. defaults to true.
1, 2, 3, ...: the patterns to search for
]]
function p.matchAny(frame)
local source_str = frame.args['source'] or error('The source parameter is mandatory.')
local l_plain = p._getBoolean( frame.args['plain'] or true )
for i = 1, math.huge do
local pattern = frame.args[i]
if not pattern then return '' end
if mw.ustring.find(source_str, pattern, 1, l_plain) then
return tostring(i)
end
end
end
--[[--------------------------< H Y P H E N _ T O _ D A S H >--------------------------------------------------
Converts a hyphen to a dash under certain conditions. The hyphen must separate
like items; unlike items are returned unmodified. These forms are modified:
letter - letter (A - B)
digit - digit (4-5)
digit separator digit - digit separator digit (4.1-4.5 or 4-1-4-5)
letterdigit - letterdigit (A1-A5) (an optional separator between letter and
digit is supported – a.1-a.5 or a-1-a-5)
digitletter - digitletter (5a - 5d) (an optional separator between letter and
digit is supported – 5.a-5.d or 5-a-5-d)
any other forms are returned unmodified.
str may be a comma- or semicolon-separated list
]]
function p.hyphen_to_dash( str, spacing )
if (str == nil or str == '') then
return str
end
local accept
str = mw.text.decode(str, true ) -- replace html entities with their characters; semicolon mucks up the text.split
local out = {}
local list = mw.text.split (str, '%s*[,;]%s*') -- split str at comma or semicolon separators if there are any
for _, item in ipairs (list) do -- for each item in the list
item = mw.text.trim(item) -- trim whitespace
item, accept = item:gsub ('^%(%((.+)%)%)$', '%1')
if accept == 0 and mw.ustring.match (item, '^%w*[%.%-]?%w+%s*[%-–—]%s*%w*[%.%-]?%w+$') then -- if a hyphenated range or has endash or emdash separators
if item:match ('^%a+[%.%-]?%d+%s*%-%s*%a+[%.%-]?%d+$') or -- letterdigit hyphen letterdigit (optional separator between letter and digit)
item:match ('^%d+[%.%-]?%a+%s*%-%s*%d+[%.%-]?%a+$') or -- digitletter hyphen digitletter (optional separator between digit and letter)
item:match ('^%d+[%.%-]%d+%s*%-%s*%d+[%.%-]%d+$') or -- digit separator digit hyphen digit separator digit
item:match ('^%d+%s*%-%s*%d+$') or -- digit hyphen digit
item:match ('^%a+%s*%-%s*%a+$') then -- letter hyphen letter
item = item:gsub ('(%w*[%.%-]?%w+)%s*%-%s*(%w*[%.%-]?%w+)', '%1–%2') -- replace hyphen, remove extraneous space characters
else
item = mw.ustring.gsub (item, '%s*[–—]%s*', '–') -- for endash or emdash separated ranges, replace em with en, remove extraneous whitespace
end
end
table.insert (out, item) -- add the (possibly modified) item to the output table
end
local temp_str = table.concat (out, ',' .. spacing) -- concatenate the output table into a comma separated string
temp_str, accept = temp_str:gsub ('^%(%((.+)%)%)$', '%1') -- remove accept-this-as-written markup when it wraps all of concatenated out
if accept ~= 0 then
temp_str = str:gsub ('^%(%((.+)%)%)$', '%1') -- when global markup removed, return original str; do it this way to suppress boolean second return value
end
return temp_str
end
function p.hyphen2dash( frame )
local str = frame.args[1] or ''
local spacing = frame.args[2] or ' ' -- space is part of the standard separator for normal spacing (but in conjunction with templates r/rp/ran we may need a narrower spacing
return p.hyphen_to_dash(str, spacing)
end
-- Similar to [[Module:String#endswith]]
function p.startswith(frame)
return (frame.args[1]:sub(1, frame.args[2]:len()) == frame.args[2]) and 'yes' or ''
end
return p
7novuiabacjj8enbp69666q0os29r7w
Module:StringUtils
828
3320
36507
2025-12-15T17:32:48Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local arguments = require('Module:Arguments') local TableTools = require('Module:TableTools') local function makeInvokeFunc(funcName) return function (frame) local args = arguments.getArgs(frame, { wrappers = 'Πρότυπο:Ifempty' }) local firstRet,secondRet = p[funcName](args) return firstRet end end -- Adaugă la începutul unui șir un prefix, dacă nu există deja acolo el sau unul dintre cele listate în ultimul argum...'
36507
Scribunto
text/plain
local p = {}
local arguments = require('Module:Arguments')
local TableTools = require('Module:TableTools')
local function makeInvokeFunc(funcName)
return function (frame)
local args = arguments.getArgs(frame, { wrappers = 'Πρότυπο:Ifempty' })
local firstRet,secondRet = p[funcName](args)
return firstRet
end
end
-- Adaugă la începutul unui șir un prefix, dacă nu există deja acolo el sau unul dintre cele listate în ultimul argument
function p._prependIfMissing(args)
local str = args[1]
local prefix = args[2]
local others = {}
for argK,argV in pairs(args) do
if argK > 1 then
table.insert(others, argV)
end
end
if str == nil then return nil end
if prefix == nil then return str end
for i, eachPrefix in pairs(others) do
if mw.ustring.find(str, eachPrefix, 1, true) == 1 then return str end
end
return prefix .. str
end
p.prependIfMissing = makeInvokeFunc('_prependIfMissing')
-- Adaugă la sfârșitul unui șir un sufix, dacă nu există deja acolo el sau unul dintre cele listate în ultimul argument
function p._appendIfMissing(args)
local str = args[1]
local suffix = args[2]
local others = {}
for argK,argV in pairs(args) do
if argK > 1 then
table.insert(others, argV)
end
end
if str == nil then return nil end
if suffix == nil then return str end
for i, eachSuffix in pairs(others) do
local suffixStart
local suffixEnd
suffixStart, suffixEnd = mw.ustring.find(str, eachSuffix, 1, true)
if suffixEnd == mw.ustring.len(str) then return str end
end
return str .. suffix
end
p.appendIfMissing = makeInvokeFunc('_appendIfMissing')
function p._emptyToNil(args)
local str = args[1]
if str == '' then return nil end
return str
end
p.emptyToNil = makeInvokeFunc('_emptyToNil')
function p._capitalize(args)
local str = args[1]
if str == nil then return nil end
return mw.ustring.upper(mw.ustring.sub(str, 1, 1)) .. mw.ustring.sub(str,2);
end
p.capitalize = makeInvokeFunc('_capitalize')
function p._removeStart(args)
local str = args[1]
if str == nil then return nil end
local prefix = args[2]
if prefix == nil then return str end
if mw.ustring.sub(str, 1, mw.ustring.len(prefix)) == prefix then return mw.ustring.sub(str, mw.ustring.len(prefix) + 1, mw.ustring.len(str)) end
return str
end
p.removeStart = makeInvokeFunc('_removeStart')
function p._removeEnd(args)
local str = args[1]
if str == nil then return nil end
local suffix = args[2]
if suffix == nil then return str end
if mw.ustring.sub(str, -mw.ustring.len(suffix)) == suffix then return mw.ustring.sub(str, 1, -mw.ustring.len(suffix) - 1) end
return str
end
p.removeEnd = makeInvokeFunc('_removeEnd')
function p.__isEmpty(str)
return str == nil or (type(str) == 'string' and mw.ustring.len(str) == 0)
end
function p._isEmpty(args)
local str = args[1]
return p.__isEmpty(str)
end
p.isEmpty = makeInvokeFunc('_isEmpty')
function p._trim(args)
local str = args[1]
if not str then return nil end
return mw.text.trim(str)
end
p.trim = makeInvokeFunc('_trim')
function p._startsWithAny(args)
local str = args[1]
if not str then return false end
local idx = 2
while idx <= TableTools.size(args) do
if args[idx] and mw.ustring.sub(str, 1, mw.ustring.len(args[idx])) == args[idx] then
return true
end
idx = idx + 1
end
return false
end
p.startsWithAny = makeInvokeFunc('_startsWithAny')
p._startsWith = p._startsWithAny
p.startsWith = makeInvokeFunc('_startsWith')
function p._endsWithAny(args)
local str = args[1]
if not str then return false end
local idx = 2
while idx <= TableTools.size(args) do
if args[idx] and mw.ustring.sub(str, mw.ustring.len(str) - mw.ustring.len(args[idx]) + 1, mw.ustring.len(str)) == args[idx] then
return true
end
idx = idx + 1
end
return false
end
p.endsWithAny = makeInvokeFunc('_endsWith')
p._endsWith = p._endsWithAny
p.endsWith = makeInvokeFunc('_endsWith')
function p._substringBefore(args)
local str = args[1]
if not str then return nil end
local idx = 2
local substringEndPos = 1 + mw.ustring.len(str)
local firstSep = ''
while idx <= TableTools.size(args) do
if args[idx] then
local substringStart = mw.ustring.find(str, args[idx], 1, true)
if substringStart and substringStart < substringEndPos then
substringEndPos = substringStart
firstSep = args[idx]
end
end
idx = idx + 1
end
return mw.ustring.sub(str, 1, substringEndPos-1), firstSep
end
p.substringBefore = makeInvokeFunc('_substringBefore')
function p._substringAfter(args)
local str = args[1]
if not str then return nil end
local idx = 2
local substringStartPos = 1 + mw.ustring.len(str)
local firstSep = ''
while args[idx] ~= nil do
local substringStart = mw.ustring.find(str, args[idx], 1, true)
if substringStart and substringStart < substringStartPos then
substringStartPos = substringStart + mw.ustring.len(args[idx])
firstSep = args[idx]
end
idx = idx + 1
end
if substringStartPos > mw.ustring.len(str) then return str end
return mw.ustring.sub(str, substringStartPos), firstSep
end
p.substringAfter = makeInvokeFunc('_substringAfter')
function p._defaultString(args)
local compressedArgs = TableTools.compressSparseArray(args)
if #compressedArgs == 0 then return '' end
return compressedArgs[1]
end
p.defaultString = makeInvokeFunc('_defaultString')
function p._appendToString(args)
local str = args[1]
local suffix = args[2]
if str then
return tostring(str) .. tostring(suffix or '')
end
return ''
end
p.appendToString = makeInvokeFunc('_appendToString')
function p._prependToString(args)
local str = args[1]
local prefix = args[2]
if str then
return tostring(prefix or '') .. tostring(str)
end
return ''
end
p.prependToString = makeInvokeFunc('_prependToString')
function p._encloseString(args)
return p._prependToString({p._emptyToNil({p._appendToString({args[1], args[3]})}), args[2]})
end
p.encloseString = makeInvokeFunc('_encloseString')
function p._stripNamespace(args)
s,_ = p._substringAfter({args[1],':'})
return s
end
p.stripNamespace = makeInvokeFunc('_stripNamespace')
-- Determină dacă o secvență de text conține o legătură spre un articol anume.
function p._findLinkByTitle(args)
local str = args[1]:gsub('_', ' ')
local pattern = '%[%[%s*' .. p._trim({(args[2] or ''):gsub('_', ' ')}):gsub('([+*?%-%(%)%%%.])', '%%%1') .. '%s*[%]|]'
if str then
return str:find(pattern, 1, false) or 0
end
return 0
end
p.findLinkByTitle = makeInvokeFunc('_findLinkByTitle')
function p._firstValue(args)
local compactedArgs = TableTools.compressSparseArray(args)
return #compactedArgs > 0 and compactedArgs[1] or ''
end
p.firstValue = makeInvokeFunc('_firstValue')
return p
ijb8i5ov3qd448dwsh03aa2zd3fofkb
Module:Wd
828
3321
36508
2025-12-15T17:34:36Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Original module located at [[:en:Module:Wd]] and [[:en:Module:Wd/i18n]]. require("strict") local p = {} local arg = ... local i18n local function loadI18n(aliasesP, frame) local title if frame then -- current module invoked by page/template, get its title from frame title = frame:getTitle() else -- current module included by other module, get its title from ... title = arg end if not i18n then i18n = require(title .. "/i18n")....'
36508
Scribunto
text/plain
-- Original module located at [[:en:Module:Wd]] and [[:en:Module:Wd/i18n]].
require("strict")
local p = {}
local arg = ...
local i18n
local function loadI18n(aliasesP, frame)
local title
if frame then
-- current module invoked by page/template, get its title from frame
title = frame:getTitle()
else
-- current module included by other module, get its title from ...
title = arg
end
if not i18n then
i18n = require(title .. "/i18n").init(aliasesP)
end
end
p.claimCommands = {
property = "property",
properties = "properties",
qualifier = "qualifier",
qualifiers = "qualifiers",
reference = "reference",
references = "references"
}
p.generalCommands = {
label = "label",
title = "title",
description = "description",
alias = "alias",
aliases = "aliases",
badge = "badge",
badges = "badges"
}
p.flags = {
linked = "linked",
short = "short",
raw = "raw",
multilanguage = "multilanguage",
unit = "unit",
-------------
preferred = "preferred",
normal = "normal",
deprecated = "deprecated",
best = "best",
future = "future",
current = "current",
former = "former",
edit = "edit",
editAtEnd = "edit@end",
mdy = "mdy",
single = "single",
sourced = "sourced"
}
p.args = {
eid = "eid",
page = "page",
date = "date"
}
local aliasesP = {
coord = "P625",
-----------------------
image = "P18",
author = "P50",
authorNameString = "P2093",
publisher = "P123",
importedFrom = "P143",
statedIn = "P248",
pages = "P304",
language = "P407",
hasPart = "P527",
publicationDate = "P577",
startTime = "P580",
endTime = "P582",
chapter = "P792",
retrieved = "P813",
referenceURL = "P854",
sectionVerseOrParagraph = "P958",
archiveURL = "P1065",
title = "P1476",
formatterURL = "P1630",
quote = "P1683",
shortName = "P1813",
definingFormula = "P2534",
archiveDate = "P2960",
inferredFrom = "P3452",
typeOfReference = "P3865",
column = "P3903"
}
local aliasesQ = {
percentage = "Q11229",
prolepticJulianCalendar = "Q1985786",
citeWeb = "Q5637226",
citeQ = "Q22321052"
}
local parameters = {
property = "%p",
qualifier = "%q",
reference = "%r",
alias = "%a",
badge = "%b",
separator = "%s",
general = "%x"
}
local formats = {
property = "%p[%s][%r]",
qualifier = "%q[%s][%r]",
reference = "%r",
propertyWithQualifier = "%p[ <span style=\"font-size:85\\%\">(%q)</span>][%s][%r]",
alias = "%a[%s]",
badge = "%b[%s]"
}
local hookNames = { -- {level_1, level_2}
[parameters.property] = {"getProperty"},
[parameters.reference] = {"getReferences", "getReference"},
[parameters.qualifier] = {"getAllQualifiers"},
[parameters.qualifier.."\\d"] = {"getQualifiers", "getQualifier"},
[parameters.alias] = {"getAlias"},
[parameters.badge] = {"getBadge"}
}
-- default value objects, should NOT be mutated but instead copied
local defaultSeparators = {
["sep"] = {" "},
["sep%s"] = {","},
["sep%q"] = {"; "},
["sep%q\\d"] = {", "},
["sep%r"] = nil, -- none
["punc"] = nil -- none
}
local rankTable = {
["preferred"] = 1,
["normal"] = 2,
["deprecated"] = 3
}
local function replaceAlias(id)
if aliasesP[id] then
id = aliasesP[id]
end
return id
end
local function errorText(code, param)
local text = i18n["errors"][code]
if param then text = mw.ustring.gsub(text, "$1", param) end
return text
end
local function throwError(errorMessage, param)
error(errorText(errorMessage, param))
end
local function replaceDecimalMark(num)
return mw.ustring.gsub(num, "[.]", i18n['numeric']['decimal-mark'], 1)
end
local function padZeros(num, numDigits)
local numZeros
local negative = false
if num < 0 then
negative = true
num = num * -1
end
num = tostring(num)
numZeros = numDigits - num:len()
for _ = 1, numZeros do
num = "0"..num
end
if negative then
num = "-"..num
end
return num
end
local function replaceSpecialChar(chr)
if chr == '_' then
-- replace underscores with spaces
return ' '
else
return chr
end
end
local function replaceSpecialChars(str)
local chr
local esc = false
local strOut = ""
for i = 1, #str do
chr = str:sub(i,i)
if not esc then
if chr == '\\' then
esc = true
else
strOut = strOut .. replaceSpecialChar(chr)
end
else
strOut = strOut .. chr
esc = false
end
end
return strOut
end
local function buildWikilink(target, label)
if not label or target == label then
return "[[" .. target .. "]]"
else
return "[[" .. target .. "|" .. label .. "]]"
end
end
-- used to make frame.args mutable, to replace #frame.args (which is always 0)
-- with the actual amount and to simply copy tables
local function copyTable(tIn)
if not tIn then
return nil
end
local tOut = {}
for i, v in pairs(tIn) do
tOut[i] = v
end
return tOut
end
-- used to merge output arrays together;
-- note that it currently mutates the first input array
local function mergeArrays(a1, a2)
for i = 1, #a2 do
a1[#a1 + 1] = a2[i]
end
return a1
end
local function split(str, del)
local out = {}
local i, j = str:find(del)
if i and j then
out[1] = str:sub(1, i - 1)
out[2] = str:sub(j + 1)
else
out[1] = str
end
return out
end
local function parseWikidataURL(url)
local id
if url:match('^http[s]?://') then
id = split(url, "Q")
if id[2] then
return "Q" .. id[2]
end
end
return nil
end
local function parseDate(dateStr, precision)
precision = precision or "d"
local i, j, index, ptr
local parts = {nil, nil, nil}
if dateStr == nil then
return parts[1], parts[2], parts[3] -- year, month, day
end
-- 'T' for snak values, '/' for outputs with '/Julian' attached
i, j = dateStr:find("[T/]")
if i then
dateStr = dateStr:sub(1, i-1)
end
local from = 1
if dateStr:sub(1,1) == "-" then
-- this is a negative number, look further ahead
from = 2
end
index = 1
ptr = 1
i, j = dateStr:find("-", from)
if i then
-- year
parts[index] = tonumber(mw.ustring.gsub(dateStr:sub(ptr, i-1), "^\+(.+)$", "%1"), 10) -- remove '+' sign (explicitly give base 10 to prevent error)
if parts[index] == -0 then
parts[index] = tonumber("0") -- for some reason, 'parts[index] = 0' may actually store '-0', so parse from string instead
end
if precision == "y" then
-- we're done
return parts[1], parts[2], parts[3] -- year, month, day
end
index = index + 1
ptr = i + 1
i, j = dateStr:find("-", ptr)
if i then
-- month
parts[index] = tonumber(dateStr:sub(ptr, i-1), 10)
if precision == "m" then
-- we're done
return parts[1], parts[2], parts[3] -- year, month, day
end
index = index + 1
ptr = i + 1
end
end
if dateStr:sub(ptr) ~= "" then
-- day if we have month, month if we have year, or year
parts[index] = tonumber(dateStr:sub(ptr), 10)
end
return parts[1], parts[2], parts[3] -- year, month, day
end
local function datePrecedesDate(aY, aM, aD, bY, bM, bD)
if aY == nil or bY == nil then
return nil
end
aM = aM or 1
aD = aD or 1
bM = bM or 1
bD = bD or 1
if aY < bY then
return true
end
if aY > bY then
return false
end
if aM < bM then
return true
end
if aM > bM then
return false
end
if aD < bD then
return true
end
return false
end
local function getHookName(param, index)
if hookNames[param] then
return hookNames[param][index]
elseif param:len() > 2 then
return hookNames[param:sub(1, 2).."\\d"][index]
else
return nil
end
end
local function alwaysTrue()
return true
end
-- The following function parses a format string.
--
-- The example below shows how a parsed string is structured in memory.
-- Variables other than 'str' and 'child' are left out for clarity's sake.
--
-- Example:
-- "A %p B [%s[%q1]] C [%r] D"
--
-- Structure:
-- [
-- {
-- str = "A "
-- },
-- {
-- str = "%p"
-- },
-- {
-- str = " B ",
-- child =
-- [
-- {
-- str = "%s",
-- child =
-- [
-- {
-- str = "%q1"
-- }
-- ]
-- }
-- ]
-- },
-- {
-- str = " C ",
-- child =
-- [
-- {
-- str = "%r"
-- }
-- ]
-- },
-- {
-- str = " D"
-- }
-- ]
--
local function parseFormat(str)
local chr, esc, param, root, cur, prev, new
local params = {}
local function newObject(array)
local obj = {} -- new object
obj.str = ""
array[#array + 1] = obj -- array{object}
obj.parent = array
return obj
end
local function endParam()
if param > 0 then
if cur.str ~= "" then
cur.str = "%"..cur.str
cur.param = true
params[cur.str] = true
cur.parent.req[cur.str] = true
prev = cur
cur = newObject(cur.parent)
end
param = 0
end
end
root = {} -- array
root.req = {}
cur = newObject(root)
prev = nil
esc = false
param = 0
for i = 1, #str do
chr = str:sub(i,i)
if not esc then
if chr == '\\' then
endParam()
esc = true
elseif chr == '%' then
endParam()
if cur.str ~= "" then
cur = newObject(cur.parent)
end
param = 2
elseif chr == '[' then
endParam()
if prev and cur.str == "" then
table.remove(cur.parent)
cur = prev
end
cur.child = {} -- new array
cur.child.req = {}
cur.child.parent = cur
cur = newObject(cur.child)
elseif chr == ']' then
endParam()
if cur.parent.parent then
new = newObject(cur.parent.parent.parent)
if cur.str == "" then
table.remove(cur.parent)
end
cur = new
end
else
if param > 1 then
param = param - 1
elseif param == 1 then
if not chr:match('%d') then
endParam()
end
end
cur.str = cur.str .. replaceSpecialChar(chr)
end
else
cur.str = cur.str .. chr
esc = false
end
prev = nil
end
endParam()
-- make sure that at least one required parameter has been defined
if not next(root.req) then
throwError("missing-required-parameter")
end
-- make sure that the separator parameter "%s" is not amongst the required parameters
if root.req[parameters.separator] then
throwError("extra-required-parameter", parameters.separator)
end
return root, params
end
local function sortOnRank(claims)
local rankPos
local ranks = {{}, {}, {}, {}} -- preferred, normal, deprecated, (default)
local sorted = {}
for _, v in ipairs(claims) do
rankPos = rankTable[v.rank] or 4
ranks[rankPos][#ranks[rankPos] + 1] = v
end
sorted = ranks[1]
sorted = mergeArrays(sorted, ranks[2])
sorted = mergeArrays(sorted, ranks[3])
return sorted
end
local Config = {}
-- allows for recursive calls
function Config:new()
local cfg = {}
setmetatable(cfg, self)
self.__index = self
cfg.separators = {
-- single value objects wrapped in arrays so that we can pass by reference
["sep"] = {copyTable(defaultSeparators["sep"])},
["sep%s"] = {copyTable(defaultSeparators["sep%s"])},
["sep%q"] = {copyTable(defaultSeparators["sep%q"])},
["sep%r"] = {copyTable(defaultSeparators["sep%r"])},
["punc"] = {copyTable(defaultSeparators["punc"])}
}
cfg.entity = nil
cfg.entityID = nil
cfg.propertyID = nil
cfg.propertyValue = nil
cfg.qualifierIDs = {}
cfg.qualifierIDsAndValues = {}
cfg.bestRank = true
cfg.ranks = {true, true, false} -- preferred = true, normal = true, deprecated = false
cfg.foundRank = #cfg.ranks
cfg.flagBest = false
cfg.flagRank = false
cfg.periods = {true, true, true} -- future = true, current = true, former = true
cfg.flagPeriod = false
cfg.atDate = {parseDate(os.date('!%Y-%m-%d'))} -- today as {year, month, day}
cfg.mdyDate = false
cfg.singleClaim = false
cfg.sourcedOnly = false
cfg.editable = false
cfg.editAtEnd = false
cfg.inSitelinks = false
cfg.langCode = mw.language.getContentLanguage().code
cfg.langName = mw.language.fetchLanguageName(cfg.langCode, cfg.langCode)
cfg.langObj = mw.language.new(cfg.langCode)
cfg.siteID = mw.wikibase.getGlobalSiteId()
cfg.states = {}
cfg.states.qualifiersCount = 0
cfg.curState = nil
cfg.prefetchedRefs = nil
return cfg
end
local State = {}
function State:new(cfg, type)
local stt = {}
setmetatable(stt, self)
self.__index = self
stt.conf = cfg
stt.type = type
stt.results = {}
stt.parsedFormat = {}
stt.separator = {}
stt.movSeparator = {}
stt.puncMark = {}
stt.linked = false
stt.rawValue = false
stt.shortName = false
stt.anyLanguage = false
stt.unitOnly = false
stt.singleValue = false
return stt
end
-- if id == nil then item connected to current page is used
function Config:getLabel(id, raw, link, short)
local label = nil
local prefix, title= "", nil
if not id then
id = mw.wikibase.getEntityIdForCurrentPage()
if not id then
return ""
end
end
id = id:upper() -- just to be sure
if raw then
-- check if given id actually exists
if mw.wikibase.isValidEntityId(id) and mw.wikibase.entityExists(id) then
label = id
end
prefix, title = "d:Special:EntityPage/", label -- may be nil
else
-- try short name first if requested
if short then
label = p._property{aliasesP.shortName, [p.args.eid] = id} -- get short name
if label == "" then
label = nil
end
end
-- get label
if not label then
label = mw.wikibase.getLabelByLang(id, self.langCode) -- XXX: should use fallback labels?
end
end
if not label then
label = ""
elseif link then
-- build a link if requested
if not title then
if id:sub(1,1) == "Q" then
title = mw.wikibase.getSitelink(id)
elseif id:sub(1,1) == "P" then
-- properties have no sitelink, link to Wikidata instead
prefix, title = "d:Special:EntityPage/", id
end
end
label = mw.text.nowiki(label) -- escape raw label text so it cannot be wikitext markup
if title then
label = buildWikilink(prefix .. title, label)
end
end
return label
end
function Config:getEditIcon()
local value = ""
local prefix = ""
local front = " "
local back = ""
if self.entityID:sub(1,1) == "P" then
prefix = "Property:"
end
if self.editAtEnd then
front = '<span style="float:'
if self.langObj:isRTL() then
front = front .. 'left'
else
front = front .. 'right'
end
front = front .. '">'
back = '</span>'
end
value = "[[File:OOjs UI icon edit-ltr-progressive.svg|frameless|text-top|10px|alt=" .. i18n['info']['edit-on-wikidata'] .. "|link=https://www.wikidata.org/wiki/" .. prefix .. self.entityID .. "?uselang=" .. self.langCode
if self.propertyID then
value = value .. "#" .. self.propertyID
elseif self.inSitelinks then
value = value .. "#sitelinks-wikipedia"
end
value = value .. "|" .. i18n['info']['edit-on-wikidata'] .. "]]"
return front .. value .. back
end
-- used to create the final output string when it's all done, so that for references the
-- function extensionTag("ref", ...) is only called when they really ended up in the final output
function Config:concatValues(valuesArray)
local outString = ""
local j, skip
for i = 1, #valuesArray do
-- check if this is a reference
if valuesArray[i].refHash then
j = i - 1
skip = false
-- skip this reference if it is part of a continuous row of references that already contains the exact same reference
while valuesArray[j] and valuesArray[j].refHash do
if valuesArray[i].refHash == valuesArray[j].refHash then
skip = true
break
end
j = j - 1
end
if not skip then
-- add <ref> tag with the reference's hash as its name (to deduplicate references)
outString = outString .. mw.getCurrentFrame():extensionTag("ref", valuesArray[i][1], {name = valuesArray[i].refHash})
end
else
outString = outString .. valuesArray[i][1]
end
end
return outString
end
function Config:convertUnit(unit, raw, link, short, unitOnly)
local space = " "
local label = ""
local itemID
if unit == "" or unit == "1" then
return nil
end
if unitOnly then
space = ""
end
itemID = parseWikidataURL(unit)
if itemID then
if itemID == aliasesQ.percentage then
return "%"
else
label = self:getLabel(itemID, raw, link, short)
if label ~= "" then
return space .. label
end
end
end
return ""
end
function State:getValue(snak)
return self.conf:getValue(snak, self.rawValue, self.linked, self.shortName, self.anyLanguage, self.unitOnly, false, self.type:sub(1,2))
end
function Config:getValue(snak, raw, link, short, anyLang, unitOnly, noSpecial, type)
if snak.snaktype == 'value' then
local datatype = snak.datavalue.type
local subtype = snak.datatype
local datavalue = snak.datavalue.value
if datatype == 'string' then
if subtype == 'url' and link then
-- create link explicitly
if raw then
-- will render as a linked number like [1]
return "[" .. datavalue .. "]"
else
return "[" .. datavalue .. " " .. datavalue .. "]"
end
elseif subtype == 'commonsMedia' then
if link then
return buildWikilink("c:File:" .. datavalue, datavalue)
elseif not raw then
return "[[File:" .. datavalue .. "]]"
else
return datavalue
end
elseif subtype == 'geo-shape' and link then
return buildWikilink("c:" .. datavalue, datavalue)
elseif subtype == 'math' and not raw then
local attribute = nil
if (type == parameters.property or (type == parameters.qualifier and self.propertyID == aliasesP.hasPart)) and snak.property == aliasesP.definingFormula then
attribute = {qid = self.entityID}
end
return mw.getCurrentFrame():extensionTag("math", datavalue, attribute)
elseif subtype == 'external-id' and link then
local url = p._property{aliasesP.formatterURL, [p.args.eid] = snak.property} -- get formatter URL
if url ~= "" then
url = mw.ustring.gsub(url, "$1", datavalue)
return "[" .. url .. " " .. datavalue .. "]"
else
return datavalue
end
else
return datavalue
end
elseif datatype == 'monolingualtext' then
if anyLang or datavalue['language'] == self.langCode then
return datavalue['text']
else
return nil
end
elseif datatype == 'quantity' then
local value = ""
local unit
if not unitOnly then
-- get value and strip + signs from front
value = mw.ustring.gsub(datavalue['amount'], "^\+(.+)$", "%1")
if raw then
return value
end
-- replace decimal mark based on locale
value = replaceDecimalMark(value)
-- add delimiters for readability
value = i18n.addDelimiters(value)
end
unit = self:convertUnit(datavalue['unit'], raw, link, short, unitOnly)
if unit then
value = value .. unit
end
return value
elseif datatype == 'time' then
local y, m, d, p, yDiv, yRound, yFull, value, calendarID, dateStr
local yFactor = 1
local sign = 1
local prefix = ""
local suffix = ""
local mayAddCalendar = false
local calendar = ""
local precision = datavalue['precision']
if precision == 11 then
p = "d"
elseif precision == 10 then
p = "m"
else
p = "y"
yFactor = 10^(9-precision)
end
y, m, d = parseDate(datavalue['time'], p)
if y < 0 then
sign = -1
y = y * sign
end
-- if precision is tens/hundreds/thousands/millions/billions of years
if precision <= 8 then
yDiv = y / yFactor
-- if precision is tens/hundreds/thousands of years
if precision >= 6 then
mayAddCalendar = true
if precision <= 7 then
-- round centuries/millenniums up (e.g. 20th century or 3rd millennium)
yRound = math.ceil(yDiv)
if not raw then
if precision == 6 then
suffix = i18n['datetime']['suffixes']['millennium']
else
suffix = i18n['datetime']['suffixes']['century']
end
suffix = i18n.getOrdinalSuffix(yRound) .. suffix
else
-- if not verbose, take the first year of the century/millennium
-- (e.g. 1901 for 20th century or 2001 for 3rd millennium)
yRound = (yRound - 1) * yFactor + 1
end
else
-- precision == 8
-- round decades down (e.g. 2010s)
yRound = math.floor(yDiv) * yFactor
if not raw then
prefix = i18n['datetime']['prefixes']['decade-period']
suffix = i18n['datetime']['suffixes']['decade-period']
end
end
if raw and sign < 0 then
-- if BCE then compensate for "counting backwards"
-- (e.g. -2019 for 2010s BCE, -2000 for 20th century BCE or -3000 for 3rd millennium BCE)
yRound = yRound + yFactor - 1
end
else
local yReFactor, yReDiv, yReRound
-- round to nearest for tens of thousands of years or more
yRound = math.floor(yDiv + 0.5)
if yRound == 0 then
if precision <= 2 and y ~= 0 then
yReFactor = 1e6
yReDiv = y / yReFactor
yReRound = math.floor(yReDiv + 0.5)
if yReDiv == yReRound then
-- change precision to millions of years only if we have a whole number of them
precision = 3
yFactor = yReFactor
yRound = yReRound
end
end
if yRound == 0 then
-- otherwise, take the unrounded (original) number of years
precision = 5
yFactor = 1
yRound = y
mayAddCalendar = true
end
end
if precision >= 1 and y ~= 0 then
yFull = yRound * yFactor
yReFactor = 1e9
yReDiv = yFull / yReFactor
yReRound = math.floor(yReDiv + 0.5)
if yReDiv == yReRound then
-- change precision to billions of years if we're in that range
precision = 0
yFactor = yReFactor
yRound = yReRound
else
yReFactor = 1e6
yReDiv = yFull / yReFactor
yReRound = math.floor(yReDiv + 0.5)
if yReDiv == yReRound then
-- change precision to millions of years if we're in that range
precision = 3
yFactor = yReFactor
yRound = yReRound
end
end
end
if not raw then
if precision == 3 then
suffix = i18n['datetime']['suffixes']['million-years']
elseif precision == 0 then
suffix = i18n['datetime']['suffixes']['billion-years']
else
yRound = yRound * yFactor
if yRound == 1 then
suffix = i18n['datetime']['suffixes']['year']
else
suffix = i18n['datetime']['suffixes']['years']
end
end
else
yRound = yRound * yFactor
end
end
else
yRound = y
mayAddCalendar = true
end
if mayAddCalendar then
calendarID = parseWikidataURL(datavalue['calendarmodel'])
if calendarID and calendarID == aliasesQ.prolepticJulianCalendar then
if not raw then
if link then
calendar = " ("..buildWikilink(i18n['datetime']['julian-calendar'], i18n['datetime']['julian'])..")"
else
calendar = " ("..i18n['datetime']['julian']..")"
end
else
calendar = "/"..i18n['datetime']['julian']
end
end
end
if not raw then
local ce = nil
if sign < 0 then
ce = i18n['datetime']['BCE']
elseif precision <= 5 then
ce = i18n['datetime']['CE']
end
if ce then
if link then
ce = buildWikilink(i18n['datetime']['common-era'], ce)
end
suffix = suffix .. " " .. ce
end
value = tostring(yRound)
if m then
dateStr = self.langObj:formatDate("F", "1-"..m.."-1")
if d then
if self.mdyDate then
dateStr = dateStr .. " " .. d .. ","
else
dateStr = d .. " " .. dateStr
end
end
value = dateStr .. " " .. value
end
value = prefix .. value .. suffix .. calendar
else
value = padZeros(yRound * sign, 4)
if m then
value = value .. "-" .. padZeros(m, 2)
if d then
value = value .. "-" .. padZeros(d, 2)
end
end
value = value .. calendar
end
return value
elseif datatype == 'globecoordinate' then
-- logic from https://github.com/DataValues/Geo (v4.0.1)
local precision, unitsPerDegree, numDigits, strFormat, value, globe
local latitude, latConv, latValue, latLink
local longitude, lonConv, lonValue, lonLink
local latDirection, latDirectionN, latDirectionS, latDirectionEN
local lonDirection, lonDirectionE, lonDirectionW, lonDirectionEN
local degSymbol, minSymbol, secSymbol, separator
local latDegrees = nil
local latMinutes = nil
local latSeconds = nil
local lonDegrees = nil
local lonMinutes = nil
local lonSeconds = nil
local latDegSym = ""
local latMinSym = ""
local latSecSym = ""
local lonDegSym = ""
local lonMinSym = ""
local lonSecSym = ""
local latDirectionEN_N = "N"
local latDirectionEN_S = "S"
local lonDirectionEN_E = "E"
local lonDirectionEN_W = "W"
if not raw then
latDirectionN = i18n['coord']['latitude-north']
latDirectionS = i18n['coord']['latitude-south']
lonDirectionE = i18n['coord']['longitude-east']
lonDirectionW = i18n['coord']['longitude-west']
degSymbol = i18n['coord']['degrees']
minSymbol = i18n['coord']['minutes']
secSymbol = i18n['coord']['seconds']
separator = i18n['coord']['separator']
else
latDirectionN = latDirectionEN_N
latDirectionS = latDirectionEN_S
lonDirectionE = lonDirectionEN_E
lonDirectionW = lonDirectionEN_W
degSymbol = "/"
minSymbol = "/"
secSymbol = "/"
separator = "/"
end
latitude = datavalue['latitude']
longitude = datavalue['longitude']
if latitude < 0 then
latDirection = latDirectionS
latDirectionEN = latDirectionEN_S
latitude = math.abs(latitude)
else
latDirection = latDirectionN
latDirectionEN = latDirectionEN_N
end
if longitude < 0 then
lonDirection = lonDirectionW
lonDirectionEN = lonDirectionEN_W
longitude = math.abs(longitude)
else
lonDirection = lonDirectionE
lonDirectionEN = lonDirectionEN_E
end
precision = datavalue['precision']
if not precision or precision <= 0 then
precision = 1 / 3600 -- precision not set (correctly), set to arcsecond
end
-- remove insignificant detail
latitude = math.floor(latitude / precision + 0.5) * precision
longitude = math.floor(longitude / precision + 0.5) * precision
if precision >= 1 - (1 / 60) and precision < 1 then
precision = 1
elseif precision >= (1 / 60) - (1 / 3600) and precision < (1 / 60) then
precision = 1 / 60
end
if precision >= 1 then
unitsPerDegree = 1
elseif precision >= (1 / 60) then
unitsPerDegree = 60
else
unitsPerDegree = 3600
end
numDigits = math.ceil(-math.log10(unitsPerDegree * precision))
if numDigits <= 0 then
numDigits = tonumber("0") -- for some reason, 'numDigits = 0' may actually store '-0', so parse from string instead
end
strFormat = "%." .. numDigits .. "f"
if precision >= 1 then
latDegrees = strFormat:format(latitude)
lonDegrees = strFormat:format(longitude)
if not raw then
latDegSym = replaceDecimalMark(latDegrees) .. degSymbol
lonDegSym = replaceDecimalMark(lonDegrees) .. degSymbol
else
latDegSym = latDegrees .. degSymbol
lonDegSym = lonDegrees .. degSymbol
end
else
latConv = math.floor(latitude * unitsPerDegree * 10^numDigits + 0.5) / 10^numDigits
lonConv = math.floor(longitude * unitsPerDegree * 10^numDigits + 0.5) / 10^numDigits
if precision >= (1 / 60) then
latMinutes = latConv
lonMinutes = lonConv
else
latSeconds = latConv
lonSeconds = lonConv
latMinutes = math.floor(latSeconds / 60)
lonMinutes = math.floor(lonSeconds / 60)
latSeconds = strFormat:format(latSeconds - (latMinutes * 60))
lonSeconds = strFormat:format(lonSeconds - (lonMinutes * 60))
if not raw then
latSecSym = replaceDecimalMark(latSeconds) .. secSymbol
lonSecSym = replaceDecimalMark(lonSeconds) .. secSymbol
else
latSecSym = latSeconds .. secSymbol
lonSecSym = lonSeconds .. secSymbol
end
end
latDegrees = math.floor(latMinutes / 60)
lonDegrees = math.floor(lonMinutes / 60)
latDegSym = latDegrees .. degSymbol
lonDegSym = lonDegrees .. degSymbol
latMinutes = latMinutes - (latDegrees * 60)
lonMinutes = lonMinutes - (lonDegrees * 60)
if precision >= (1 / 60) then
latMinutes = strFormat:format(latMinutes)
lonMinutes = strFormat:format(lonMinutes)
if not raw then
latMinSym = replaceDecimalMark(latMinutes) .. minSymbol
lonMinSym = replaceDecimalMark(lonMinutes) .. minSymbol
else
latMinSym = latMinutes .. minSymbol
lonMinSym = lonMinutes .. minSymbol
end
else
latMinSym = latMinutes .. minSymbol
lonMinSym = lonMinutes .. minSymbol
end
end
latValue = latDegSym .. latMinSym .. latSecSym .. latDirection
lonValue = lonDegSym .. lonMinSym .. lonSecSym .. lonDirection
value = latValue .. separator .. lonValue
if link then
globe = parseWikidataURL(datavalue['globe'])
if globe then
globe = mw.wikibase.getLabelByLang(globe, "en"):lower()
else
globe = "earth"
end
latLink = table.concat({latDegrees, latMinutes, latSeconds}, "_")
lonLink = table.concat({lonDegrees, lonMinutes, lonSeconds}, "_")
value = "[https://geohack.toolforge.org/geohack.php?language="..self.langCode.."¶ms="..latLink.."_"..latDirectionEN.."_"..lonLink.."_"..lonDirectionEN.."_globe:"..globe.." "..value.."]"
end
return value
elseif datatype == 'wikibase-entityid' then
local label
local itemID = datavalue['numeric-id']
if subtype == 'wikibase-item' then
itemID = "Q" .. itemID
elseif subtype == 'wikibase-property' then
itemID = "P" .. itemID
else
return '<strong class="error">' .. errorText('unknown-data-type', subtype) .. '</strong>'
end
label = self:getLabel(itemID, raw, link, short)
if label == "" then
label = nil
end
return label
else
return '<strong class="error">' .. errorText('unknown-data-type', datatype) .. '</strong>'
end
elseif snak.snaktype == 'somevalue' and not noSpecial then
if raw then
return " " -- single space represents 'somevalue'
else
return i18n['values']['unknown']
end
elseif snak.snaktype == 'novalue' and not noSpecial then
if raw then
return "" -- empty string represents 'novalue'
else
return i18n['values']['none']
end
else
return nil
end
end
function Config:getSingleRawQualifier(claim, qualifierID)
local qualifiers
if claim.qualifiers then qualifiers = claim.qualifiers[qualifierID] end
if qualifiers and qualifiers[1] then
return self:getValue(qualifiers[1], true) -- raw = true
else
return nil
end
end
function Config:snakEqualsValue(snak, value)
local snakValue = self:getValue(snak, true) -- raw = true
if snakValue and snak.snaktype == 'value' and snak.datavalue.type == 'wikibase-entityid' then value = value:upper() end
return snakValue == value
end
function Config:setRank(rank)
local rankPos
if rank == p.flags.best then
self.bestRank = true
self.flagBest = true -- mark that 'best' flag was given
return
end
if rank:sub(1,9) == p.flags.preferred then
rankPos = 1
elseif rank:sub(1,6) == p.flags.normal then
rankPos = 2
elseif rank:sub(1,10) == p.flags.deprecated then
rankPos = 3
else
return
end
-- one of the rank flags was given, check if another one was given before
if not self.flagRank then
self.ranks = {false, false, false} -- no other rank flag given before, so unset ranks
self.bestRank = self.flagBest -- unsets bestRank only if 'best' flag was not given before
self.flagRank = true -- mark that a rank flag was given
end
if rank:sub(-1) == "+" then
for i = rankPos, 1, -1 do
self.ranks[i] = true
end
elseif rank:sub(-1) == "-" then
for i = rankPos, #self.ranks do
self.ranks[i] = true
end
else
self.ranks[rankPos] = true
end
end
function Config:setPeriod(period)
local periodPos
if period == p.flags.future then
periodPos = 1
elseif period == p.flags.current then
periodPos = 2
elseif period == p.flags.former then
periodPos = 3
else
return
end
-- one of the period flags was given, check if another one was given before
if not self.flagPeriod then
self.periods = {false, false, false} -- no other period flag given before, so unset periods
self.flagPeriod = true -- mark that a period flag was given
end
self.periods[periodPos] = true
end
function Config:qualifierMatches(claim, id, value)
local qualifiers
if claim.qualifiers then qualifiers = claim.qualifiers[id] end
if qualifiers then
for _, v in pairs(qualifiers) do
if self:snakEqualsValue(v, value) then
return true
end
end
elseif value == "" then
-- if the qualifier is not present then treat it the same as the special value 'novalue'
return true
end
return false
end
function Config:rankMatches(rankPos)
if self.bestRank then
return (self.ranks[rankPos] and self.foundRank >= rankPos)
else
return self.ranks[rankPos]
end
end
function Config:timeMatches(claim)
local startTime = nil
local startTimeY = nil
local startTimeM = nil
local startTimeD = nil
local endTime = nil
local endTimeY = nil
local endTimeM = nil
local endTimeD = nil
if self.periods[1] and self.periods[2] and self.periods[3] then
-- any time
return true
end
startTime = self:getSingleRawQualifier(claim, aliasesP.startTime)
if startTime and startTime ~= "" and startTime ~= " " then
startTimeY, startTimeM, startTimeD = parseDate(startTime)
end
endTime = self:getSingleRawQualifier(claim, aliasesP.endTime)
if endTime and endTime ~= "" and endTime ~= " " then
endTimeY, endTimeM, endTimeD = parseDate(endTime)
end
if startTimeY ~= nil and endTimeY ~= nil and datePrecedesDate(endTimeY, endTimeM, endTimeD, startTimeY, startTimeM, startTimeD) then
-- invalidate end time if it precedes start time
endTimeY = nil
endTimeM = nil
endTimeD = nil
end
if self.periods[1] then
-- future
if startTimeY and datePrecedesDate(self.atDate[1], self.atDate[2], self.atDate[3], startTimeY, startTimeM, startTimeD) then
return true
end
end
if self.periods[2] then
-- current
if (startTimeY == nil or not datePrecedesDate(self.atDate[1], self.atDate[2], self.atDate[3], startTimeY, startTimeM, startTimeD)) and
(endTimeY == nil or datePrecedesDate(self.atDate[1], self.atDate[2], self.atDate[3], endTimeY, endTimeM, endTimeD)) then
return true
end
end
if self.periods[3] then
-- former
if endTimeY and not datePrecedesDate(self.atDate[1], self.atDate[2], self.atDate[3], endTimeY, endTimeM, endTimeD) then
return true
end
end
return false
end
function Config:processFlag(flag)
if not flag then
return false
end
if flag == p.flags.linked then
self.curState.linked = true
return true
elseif flag == p.flags.raw then
self.curState.rawValue = true
if self.curState == self.states[parameters.reference] then
-- raw reference values end with periods and require a separator (other than none)
self.separators["sep%r"][1] = {" "}
end
return true
elseif flag == p.flags.short then
self.curState.shortName = true
return true
elseif flag == p.flags.multilanguage then
self.curState.anyLanguage = true
return true
elseif flag == p.flags.unit then
self.curState.unitOnly = true
return true
elseif flag == p.flags.mdy then
self.mdyDate = true
return true
elseif flag == p.flags.single then
self.singleClaim = true
return true
elseif flag == p.flags.sourced then
self.sourcedOnly = true
return true
elseif flag == p.flags.edit then
self.editable = true
return true
elseif flag == p.flags.editAtEnd then
self.editable = true
self.editAtEnd = true
return true
elseif flag == p.flags.best or flag:match('^'..p.flags.preferred..'[+-]?$') or flag:match('^'..p.flags.normal..'[+-]?$') or flag:match('^'..p.flags.deprecated..'[+-]?$') then
self:setRank(flag)
return true
elseif flag == p.flags.future or flag == p.flags.current or flag == p.flags.former then
self:setPeriod(flag)
return true
elseif flag == "" then
-- ignore empty flags and carry on
return true
else
return false
end
end
function Config:processFlagOrCommand(flag)
local param = ""
if not flag then
return false
end
if flag == p.claimCommands.property or flag == p.claimCommands.properties then
param = parameters.property
elseif flag == p.claimCommands.qualifier or flag == p.claimCommands.qualifiers then
self.states.qualifiersCount = self.states.qualifiersCount + 1
param = parameters.qualifier .. self.states.qualifiersCount
self.separators["sep"..param] = {copyTable(defaultSeparators["sep%q\\d"])}
elseif flag == p.claimCommands.reference or flag == p.claimCommands.references then
param = parameters.reference
else
return self:processFlag(flag)
end
if self.states[param] then
return false
end
-- create a new state for each command
self.states[param] = State:new(self, param)
-- use "%x" as the general parameter name
self.states[param].parsedFormat = parseFormat(parameters.general) -- will be overwritten for param=="%p"
-- set the separator
self.states[param].separator = self.separators["sep"..param] -- will be nil for param=="%p", which will be set separately
if flag == p.claimCommands.property or flag == p.claimCommands.qualifier or flag == p.claimCommands.reference then
self.states[param].singleValue = true
end
self.curState = self.states[param]
return true
end
function Config:processSeparators(args)
local sep
for i, v in pairs(self.separators) do
if args[i] then
sep = replaceSpecialChars(args[i])
if sep ~= "" then
self.separators[i][1] = {sep}
else
self.separators[i][1] = nil
end
end
end
end
function Config:setFormatAndSeparators(state, parsedFormat)
state.parsedFormat = parsedFormat
state.separator = self.separators["sep"]
state.movSeparator = self.separators["sep"..parameters.separator]
state.puncMark = self.separators["punc"]
end
-- determines if a claim has references by prefetching them from the claim using getReferences,
-- which applies some filtering that determines if a reference is actually returned,
-- and caches the references for later use
function State:isSourced(claim)
self.conf.prefetchedRefs = self:getReferences(claim)
return (#self.conf.prefetchedRefs > 0)
end
function State:resetCaches()
-- any prefetched references of the previous claim must not be used
self.conf.prefetchedRefs = nil
end
function State:claimMatches(claim)
local matches, rankPos
-- first of all, reset any cached values used for the previous claim
self:resetCaches()
-- if a property value was given, check if it matches the claim's property value
if self.conf.propertyValue then
matches = self.conf:snakEqualsValue(claim.mainsnak, self.conf.propertyValue)
else
matches = true
end
-- if any qualifier values were given, check if each matches one of the claim's qualifier values
for i, v in pairs(self.conf.qualifierIDsAndValues) do
matches = (matches and self.conf:qualifierMatches(claim, i, v))
end
-- check if the claim's rank and time period match
rankPos = rankTable[claim.rank] or 4
matches = (matches and self.conf:rankMatches(rankPos) and self.conf:timeMatches(claim))
-- if only claims with references must be returned, check if this one has any
if self.conf.sourcedOnly then
matches = (matches and self:isSourced(claim)) -- prefetches and caches references
end
return matches, rankPos
end
function State:out()
local result -- collection of arrays with value objects
local valuesArray -- array with value objects
local sep = nil -- value object
local out = {} -- array with value objects
local function walk(formatTable, result)
local valuesArray = {} -- array with value objects
for i, v in pairs(formatTable.req) do
if not result[i] or not result[i][1] then
-- we've got no result for a parameter that is required on this level,
-- so skip this level (and its children) by returning an empty result
return {}
end
end
for _, v in ipairs(formatTable) do
if v.param then
valuesArray = mergeArrays(valuesArray, result[v.str])
elseif v.str ~= "" then
valuesArray[#valuesArray + 1] = {v.str}
end
if v.child then
valuesArray = mergeArrays(valuesArray, walk(v.child, result))
end
end
return valuesArray
end
-- iterate through the results from back to front, so that we know when to add separators
for i = #self.results, 1, -1 do
result = self.results[i]
-- if there is already some output, then add the separators
if #out > 0 then
sep = self.separator[1] -- fixed separator
result[parameters.separator] = {self.movSeparator[1]} -- movable separator
else
sep = nil
result[parameters.separator] = {self.puncMark[1]} -- optional punctuation mark
end
valuesArray = walk(self.parsedFormat, result)
if #valuesArray > 0 then
if sep then
valuesArray[#valuesArray + 1] = sep
end
out = mergeArrays(valuesArray, out)
end
end
-- reset state before next iteration
self.results = {}
return out
end
-- level 1 hook
function State:getProperty(claim)
local value = {self:getValue(claim.mainsnak)} -- create one value object
if #value > 0 then
return {value} -- wrap the value object in an array and return it
else
return {} -- return empty array if there was no value
end
end
-- level 1 hook
function State:getQualifiers(claim, param)
local qualifiers
if claim.qualifiers then qualifiers = claim.qualifiers[self.conf.qualifierIDs[param]] end
if qualifiers then
-- iterate through claim's qualifier statements to collect their values;
-- return array with multiple value objects
return self.conf.states[param]:iterate(qualifiers, {[parameters.general] = hookNames[parameters.qualifier.."\\d"][2], count = 1}) -- pass qualifier state with level 2 hook
else
return {} -- return empty array
end
end
-- level 2 hook
function State:getQualifier(snak)
local value = {self:getValue(snak)} -- create one value object
if #value > 0 then
return {value} -- wrap the value object in an array and return it
else
return {} -- return empty array if there was no value
end
end
-- level 1 hook
function State:getAllQualifiers(claim, param, result, hooks)
local out = {} -- array with value objects
local sep = self.conf.separators["sep"..parameters.qualifier][1] -- value object
-- iterate through the output of the separate "qualifier(s)" commands
for i = 1, self.conf.states.qualifiersCount do
-- if a hook has not been called yet, call it now
if not result[parameters.qualifier..i] then
self:callHook(parameters.qualifier..i, hooks, claim, result)
end
-- if there is output for this particular "qualifier(s)" command, then add it
if result[parameters.qualifier..i] and result[parameters.qualifier..i][1] then
-- if there is already some output, then add the separator
if #out > 0 and sep then
out[#out + 1] = sep
end
out = mergeArrays(out, result[parameters.qualifier..i])
end
end
return out
end
-- level 1 hook
function State:getReferences(claim)
if self.conf.prefetchedRefs then
-- return references that have been prefetched by isSourced
return self.conf.prefetchedRefs
end
if claim.references then
-- iterate through claim's reference statements to collect their values;
-- return array with multiple value objects
return self.conf.states[parameters.reference]:iterate(claim.references, {[parameters.general] = hookNames[parameters.reference][2], count = 1}) -- pass reference state with level 2 hook
else
return {} -- return empty array
end
end
-- level 2 hook
function State:getReference(statement)
local key, citeWeb, citeQ, label
local params = {}
local citeParams = {['web'] = {}, ['q'] = {}}
local citeMismatch = {}
local useCite = nil
local useParams = nil
local value = ""
local ref = {}
local referenceEmpty = true -- will be set to false if at least one parameter is left unremoved
local numAuthorParameters = 0
local numAuthorNameStringParameters = 0
local version = 2 -- increment this each time the below logic is changed to avoid conflict errors
if statement.snaks then
-- don't include "imported from", which is added by a bot
if statement.snaks[aliasesP.importedFrom] then
statement.snaks[aliasesP.importedFrom] = nil
end
-- don't include "inferred from", which is added by a bot
if statement.snaks[aliasesP.inferredFrom] then
statement.snaks[aliasesP.inferredFrom] = nil
end
-- don't include "type of reference"
if statement.snaks[aliasesP.typeOfReference] then
statement.snaks[aliasesP.typeOfReference] = nil
end
-- don't include "image" to prevent littering
if statement.snaks[aliasesP.image] then
statement.snaks[aliasesP.image] = nil
end
-- don't include "language" if it is equal to the local one
if self:getReferenceDetail(statement.snaks, aliasesP.language) == self.conf.langName then
statement.snaks[aliasesP.language] = nil
end
-- retrieve all the parameters
for i in pairs(statement.snaks) do
label = ""
-- multiple authors may be given
if i == aliasesP.author or i == aliasesP.authorNameString then
params[i] = self:getReferenceDetails(statement.snaks, i, false, self.linked, true) -- link = true/false, anyLang = true
else
params[i] = {self:getReferenceDetail(statement.snaks, i, false, (self.linked or (i == aliasesP.statedIn)) and (statement.snaks[i][1].datatype ~= 'url'), true)} -- link = true/false, anyLang = true
end
if #params[i] == 0 then
params[i] = nil
else
referenceEmpty = false
if statement.snaks[i][1].datatype == 'external-id' then
key = "external-id"
label = self.conf:getLabel(i)
if label ~= "" then
label = label .. " "
end
else
key = i
end
-- add the parameter to each matching type of citation
for j in pairs(citeParams) do
-- do so if there was no mismatch with a previous parameter
if not citeMismatch[j] then
-- check if this parameter is not mismatching itself
if i18n['cite'][j][key] then
-- continue if an option is available in the corresponding cite template
if i18n['cite'][j][key] ~= "" then
-- handle non-author properties (and author properties ("author" and "author name string"), if they don't use the same template parameter)
if (i ~= aliasesP.author and i ~= aliasesP.authorNameString) or (i18n['cite'][j][aliasesP.author] ~= i18n['cite'][j][aliasesP.authorNameString]) then
citeParams[j][i18n['cite'][j][key]] = label .. params[i][1]
-- to avoid problems with non-author multiple parameters (if existent), the following old code is retained
for k=2, #params[i] do
citeParams[j][i18n['cite'][j][key]..k] = label .. params[i][k]
end
-- handle "author" and "author name string" specially if they use the same template parameter
elseif i == aliasesP.author or i == aliasesP.authorNameString then
if params[aliasesP.author] ~= nil then
numAuthorParameters = #params[aliasesP.author]
else
numAuthorParameters = 0
end
if params[aliasesP.authorNameString] ~= nil then
numAuthorNameStringParameters = #params[aliasesP.authorNameString]
else
numAuthorNameStringParameters = 0
end
-- execute only if both "author" and "author name string" satisfy this condition: the property is both in params and in statement.snaks or it is neither in params nor in statement.snaks
-- reason: parameters are added to params each iteration of the loop, not before the loop
if ((statement.snaks[aliasesP.author] == nil) == (numAuthorParameters == 0)) and ((statement.snaks[aliasesP.authorNameString] == nil) == (numAuthorNameStringParameters == 0)) then
for k=1, numAuthorParameters + numAuthorNameStringParameters do
if k <= numAuthorParameters then -- now handling the authors from the "author" property
citeParams[j][i18n['cite'][j][aliasesP.author]..k] = label .. params[aliasesP.author][k]
else -- now handling the authors from "author name string"
citeParams[j][i18n['cite'][j][aliasesP.authorNameString]..k] = label .. params[aliasesP.authorNameString][k - numAuthorParameters]
end
end
end
end
end
else
citeMismatch[j] = true
end
end
end
end
end
-- get title of general template for citing web references
citeWeb = split(mw.wikibase.getSitelink(aliasesQ.citeWeb) or "", ":")[2] -- split off namespace from front
-- get title of template that expands stated-in references into citations
citeQ = split(mw.wikibase.getSitelink(aliasesQ.citeQ) or "", ":")[2] -- split off namespace from front
-- (1) use the general template for citing web references if there is a match and if at least both "reference URL" and "title" are present
if citeWeb and not citeMismatch['web'] and citeParams['web'][i18n['cite']['web'][aliasesP.referenceURL]] and citeParams['web'][i18n['cite']['web'][aliasesP.title]] then
useCite = citeWeb
useParams = citeParams['web']
-- (2) use the template that expands stated-in references into citations if there is a match and if at least "stated in" is present
elseif citeQ and not citeMismatch['q'] and citeParams['q'][i18n['cite']['q'][aliasesP.statedIn]] then
-- we need the raw "stated in" Q-identifier for the this template
citeParams['q'][i18n['cite']['q'][aliasesP.statedIn]] = self:getReferenceDetail(statement.snaks, aliasesP.statedIn, true) -- raw = true
useCite = citeQ
useParams = citeParams['q']
end
if useCite and useParams then
-- if this module is being substituted then build a regular template call, otherwise expand the template
if mw.isSubsting() then
for i, v in pairs(useParams) do
value = value .. "|" .. i .. "=" .. v
end
value = "{{" .. useCite .. value .. "}}"
else
value = mw.getCurrentFrame():expandTemplate{title=useCite, args=useParams}
end
-- (3) if the citation couldn't be displayed using Cite web or Cite Q, but has properties other than the removed ones, throw an error
elseif not referenceEmpty then
value = "<span style=\"color: crimson\">" .. errorText("malformed-reference") .. "</span>"
end
if value ~= "" then
value = {value} -- create one value object
if not self.rawValue then
-- this should become a <ref> tag, so save the reference's hash for later
value.refHash = "wikidata-" .. statement.hash .. "-v" .. (tonumber(i18n['cite']['version']) + version)
end
ref = {value} -- wrap the value object in an array
end
end
return ref
end
-- gets a detail of one particular type for a reference
function State:getReferenceDetail(snaks, dType, raw, link, anyLang)
local switchLang = anyLang
local value = nil
if not snaks[dType] then
return nil
end
-- if anyLang, first try the local language and otherwise any language
repeat
for _, v in ipairs(snaks[dType]) do
value = self.conf:getValue(v, raw, link, false, anyLang and not switchLang, false, true) -- noSpecial = true
if value then
break
end
end
if value or not anyLang then
break
end
switchLang = not switchLang
until anyLang and switchLang
return value
end
-- gets the details of one particular type for a reference
function State:getReferenceDetails(snaks, dType, raw, link, anyLang)
local values = {}
if not snaks[dType] then
return {}
end
for _, v in ipairs(snaks[dType]) do
-- if nil is returned then it will not be added to the table
values[#values + 1] = self.conf:getValue(v, raw, link, false, anyLang, false, true) -- noSpecial = true
end
return values
end
-- level 1 hook
function State:getAlias(object)
local value = object.value
local title = nil
if value and self.linked then
if self.conf.entityID:sub(1,1) == "Q" then
title = mw.wikibase.getSitelink(self.conf.entityID)
elseif self.conf.entityID:sub(1,1) == "P" then
title = "d:Property:" .. self.conf.entityID
end
if title then
value = buildWikilink(title, value)
end
end
value = {value} -- create one value object
if #value > 0 then
return {value} -- wrap the value object in an array and return it
else
return {} -- return empty array if there was no value
end
end
-- level 1 hook
function State:getBadge(value)
value = self.conf:getLabel(value, self.rawValue, self.linked, self.shortName)
if value == "" then
value = nil
end
value = {value} -- create one value object
if #value > 0 then
return {value} -- wrap the value object in an array and return it
else
return {} -- return empty array if there was no value
end
end
function State:callHook(param, hooks, statement, result)
local valuesArray, refHash
-- call a parameter's hook if it has been defined and if it has not been called before
if not result[param] and hooks[param] then
valuesArray = self[hooks[param]](self, statement, param, result, hooks) -- array with value objects
-- add to the result
if #valuesArray > 0 then
result[param] = valuesArray
result.count = result.count + 1
else
result[param] = {} -- an empty array to indicate that we've tried this hook already
return true -- miss == true
end
end
return false
end
-- iterate through claims, claim's qualifiers or claim's references to collect values
function State:iterate(statements, hooks, matchHook)
matchHook = matchHook or alwaysTrue
local matches = false
local rankPos = nil
local result, gotRequired
for _, v in ipairs(statements) do
-- rankPos will be nil for non-claim statements (e.g. qualifiers, references, etc.)
matches, rankPos = matchHook(self, v)
if matches then
result = {count = 0} -- collection of arrays with value objects
local function walk(formatTable)
local miss
for i2, v2 in pairs(formatTable.req) do
-- call a hook, adding its return value to the result
miss = self:callHook(i2, hooks, v, result)
if miss then
-- we miss a required value for this level, so return false
return false
end
if result.count == hooks.count then
-- we're done if all hooks have been called;
-- returning at this point breaks the loop
return true
end
end
for _, v2 in ipairs(formatTable) do
if result.count == hooks.count then
-- we're done if all hooks have been called;
-- returning at this point prevents further childs from being processed
return true
end
if v2.child then
walk(v2.child)
end
end
return true
end
gotRequired = walk(self.parsedFormat)
-- only append the result if we got values for all required parameters on the root level
if gotRequired then
-- if we have a rankPos (only with matchHook() for complete claims), then update the foundRank
if rankPos and self.conf.foundRank > rankPos then
self.conf.foundRank = rankPos
end
-- append the result
self.results[#self.results + 1] = result
-- break if we only need a single value
if self.singleValue then
break
end
end
end
end
return self:out()
end
local function getEntityId(arg, eid, page, allowOmitPropPrefix)
local id = nil
local prop = nil
if arg then
if arg:sub(1,1) == ":" then
page = arg
eid = nil
elseif arg:sub(1,1):upper() == "Q" or arg:sub(1,9):lower() == "property:" or allowOmitPropPrefix then
eid = arg
page = nil
else
prop = arg
end
end
if eid then
if eid:sub(1,9):lower() == "property:" then
id = replaceAlias(mw.text.trim(eid:sub(10)))
if id:sub(1,1):upper() ~= "P" then
id = ""
end
else
id = replaceAlias(eid)
end
elseif page then
if page:sub(1,1) == ":" then
page = mw.text.trim(page:sub(2))
end
id = mw.wikibase.getEntityIdForTitle(page) or ""
end
if not id then
id = mw.wikibase.getEntityIdForCurrentPage() or ""
end
id = id:upper()
if not mw.wikibase.isValidEntityId(id) then
id = ""
end
return id, prop
end
local function nextArg(args)
local arg = args[args.pointer]
if arg then
args.pointer = args.pointer + 1
return mw.text.trim(arg)
else
return nil
end
end
local function claimCommand(args, funcName)
local cfg = Config:new()
cfg:processFlagOrCommand(funcName) -- process first command (== function name)
local lastArg, parsedFormat, formatParams, claims, value
local hooks = {count = 0}
-- set the date if given;
-- must come BEFORE processing the flags
if args[p.args.date] then
cfg.atDate = {parseDate(args[p.args.date])}
cfg.periods = {false, true, false} -- change default time constraint to 'current'
end
-- process flags and commands
repeat
lastArg = nextArg(args)
until not cfg:processFlagOrCommand(lastArg)
-- get the entity ID from either the positional argument, the eid argument or the page argument
cfg.entityID, cfg.propertyID = getEntityId(lastArg, args[p.args.eid], args[p.args.page])
if cfg.entityID == "" then
return "" -- we cannot continue without a valid entity ID
end
cfg.entity = mw.wikibase.getEntity(cfg.entityID)
if not cfg.propertyID then
cfg.propertyID = nextArg(args)
end
cfg.propertyID = replaceAlias(cfg.propertyID)
if not cfg.entity or not cfg.propertyID then
return "" -- we cannot continue without an entity or a property ID
end
cfg.propertyID = cfg.propertyID:upper()
if not cfg.entity.claims or not cfg.entity.claims[cfg.propertyID] then
return "" -- there is no use to continue without any claims
end
claims = cfg.entity.claims[cfg.propertyID]
if cfg.states.qualifiersCount > 0 then
-- do further processing if "qualifier(s)" command was given
if #args - args.pointer + 1 > cfg.states.qualifiersCount then
-- claim ID or literal value has been given
cfg.propertyValue = nextArg(args)
end
for i = 1, cfg.states.qualifiersCount do
-- check if given qualifier ID is an alias and add it
cfg.qualifierIDs[parameters.qualifier..i] = replaceAlias(nextArg(args) or ""):upper()
end
elseif cfg.states[parameters.reference] then
-- do further processing if "reference(s)" command was given
cfg.propertyValue = nextArg(args)
end
-- check for special property value 'somevalue' or 'novalue'
if cfg.propertyValue then
cfg.propertyValue = replaceSpecialChars(cfg.propertyValue)
if cfg.propertyValue ~= "" and mw.text.trim(cfg.propertyValue) == "" then
cfg.propertyValue = " " -- single space represents 'somevalue', whereas empty string represents 'novalue'
else
cfg.propertyValue = mw.text.trim(cfg.propertyValue)
end
end
-- parse the desired format, or choose an appropriate format
if args["format"] then
parsedFormat, formatParams = parseFormat(args["format"])
elseif cfg.states.qualifiersCount > 0 then -- "qualifier(s)" command given
if cfg.states[parameters.property] then -- "propert(y|ies)" command given
parsedFormat, formatParams = parseFormat(formats.propertyWithQualifier)
else
parsedFormat, formatParams = parseFormat(formats.qualifier)
end
elseif cfg.states[parameters.property] then -- "propert(y|ies)" command given
parsedFormat, formatParams = parseFormat(formats.property)
else -- "reference(s)" command given
parsedFormat, formatParams = parseFormat(formats.reference)
end
-- if a "qualifier(s)" command and no "propert(y|ies)" command has been given, make the movable separator a semicolon
if cfg.states.qualifiersCount > 0 and not cfg.states[parameters.property] then
cfg.separators["sep"..parameters.separator][1] = {";"}
end
-- if only "reference(s)" has been given, set the default separator to none (except when raw)
if cfg.states[parameters.reference] and not cfg.states[parameters.property] and cfg.states.qualifiersCount == 0
and not cfg.states[parameters.reference].rawValue then
cfg.separators["sep"][1] = nil
end
-- if exactly one "qualifier(s)" command has been given, make "sep%q" point to "sep%q1" to make them equivalent
if cfg.states.qualifiersCount == 1 then
cfg.separators["sep"..parameters.qualifier] = cfg.separators["sep"..parameters.qualifier.."1"]
end
-- process overridden separator values;
-- must come AFTER tweaking the default separators
cfg:processSeparators(args)
-- define the hooks that should be called (getProperty, getQualifiers, getReferences);
-- only define a hook if both its command ("propert(y|ies)", "reference(s)", "qualifier(s)") and its parameter ("%p", "%r", "%q1", "%q2", "%q3") have been given
for i, v in pairs(cfg.states) do
-- e.g. 'formatParams["%q1"] or formatParams["%q"]' to define hook even if "%q1" was not defined to be able to build a complete value for "%q"
if formatParams[i] or formatParams[i:sub(1, 2)] then
hooks[i] = getHookName(i, 1)
hooks.count = hooks.count + 1
end
end
-- the "%q" parameter is not attached to a state, but is a collection of the results of multiple states (attached to "%q1", "%q2", "%q3", ...);
-- so if this parameter is given then this hook must be defined separately, but only if at least one "qualifier(s)" command has been given
if formatParams[parameters.qualifier] and cfg.states.qualifiersCount > 0 then
hooks[parameters.qualifier] = getHookName(parameters.qualifier, 1)
hooks.count = hooks.count + 1
end
-- create a state for "properties" if it doesn't exist yet, which will be used as a base configuration for each claim iteration;
-- must come AFTER defining the hooks
if not cfg.states[parameters.property] then
cfg.states[parameters.property] = State:new(cfg, parameters.property)
-- if the "single" flag has been given then this state should be equivalent to "property" (singular)
if cfg.singleClaim then
cfg.states[parameters.property].singleValue = true
end
end
-- if the "sourced" flag has been given then create a state for "reference" if it doesn't exist yet, using default values,
-- which must exist in order to be able to determine if a claim has any references;
-- must come AFTER defining the hooks
if cfg.sourcedOnly and not cfg.states[parameters.reference] then
cfg:processFlagOrCommand(p.claimCommands.reference) -- use singular "reference" to minimize overhead
end
-- set the parsed format and the separators (and optional punctuation mark);
-- must come AFTER creating the additonal states
cfg:setFormatAndSeparators(cfg.states[parameters.property], parsedFormat)
-- process qualifier matching values, analogous to cfg.propertyValue
for i, v in pairs(args) do
i = tostring(i)
if i:match('^[Pp]%d+$') or aliasesP[i] then
v = replaceSpecialChars(v)
-- check for special qualifier value 'somevalue'
if v ~= "" and mw.text.trim(v) == "" then
v = " " -- single space represents 'somevalue'
end
cfg.qualifierIDsAndValues[replaceAlias(i):upper()] = v
end
end
-- first sort the claims on rank to pre-define the order of output (preferred first, then normal, then deprecated)
claims = sortOnRank(claims)
-- then iterate through the claims to collect values
value = cfg:concatValues(cfg.states[parameters.property]:iterate(claims, hooks, State.claimMatches)) -- pass property state with level 1 hooks and matchHook
-- if desired, add a clickable icon that may be used to edit the returned values on Wikidata
if cfg.editable and value ~= "" then
value = value .. cfg:getEditIcon()
end
return value
end
local function generalCommand(args, funcName)
local cfg = Config:new()
cfg.curState = State:new(cfg)
local lastArg
local value = nil
repeat
lastArg = nextArg(args)
until not cfg:processFlag(lastArg)
-- get the entity ID from either the positional argument, the eid argument or the page argument
cfg.entityID = getEntityId(lastArg, args[p.args.eid], args[p.args.page], true)
if cfg.entityID == "" or not mw.wikibase.entityExists(cfg.entityID) then
return "" -- we cannot continue without an entity
end
-- serve according to the given command
if funcName == p.generalCommands.label then
value = cfg:getLabel(cfg.entityID, cfg.curState.rawValue, cfg.curState.linked, cfg.curState.shortName)
elseif funcName == p.generalCommands.title then
cfg.inSitelinks = true
if cfg.entityID:sub(1,1) == "Q" then
value = mw.wikibase.getSitelink(cfg.entityID)
end
if cfg.curState.linked and value then
value = buildWikilink(value)
end
elseif funcName == p.generalCommands.description then
value = mw.wikibase.getDescription(cfg.entityID)
else
local parsedFormat, formatParams
local hooks = {count = 0}
cfg.entity = mw.wikibase.getEntity(cfg.entityID)
if funcName == p.generalCommands.alias or funcName == p.generalCommands.badge then
cfg.curState.singleValue = true
end
if funcName == p.generalCommands.alias or funcName == p.generalCommands.aliases then
if not cfg.entity.aliases or not cfg.entity.aliases[cfg.langCode] then
return "" -- there is no use to continue without any aliasses
end
local aliases = cfg.entity.aliases[cfg.langCode]
-- parse the desired format, or parse the default aliases format
if args["format"] then
parsedFormat, formatParams = parseFormat(args["format"])
else
parsedFormat, formatParams = parseFormat(formats.alias)
end
-- process overridden separator values;
-- must come AFTER tweaking the default separators
cfg:processSeparators(args)
-- define the hook that should be called (getAlias);
-- only define the hook if the parameter ("%a") has been given
if formatParams[parameters.alias] then
hooks[parameters.alias] = getHookName(parameters.alias, 1)
hooks.count = hooks.count + 1
end
-- set the parsed format and the separators (and optional punctuation mark)
cfg:setFormatAndSeparators(cfg.curState, parsedFormat)
-- iterate to collect values
value = cfg:concatValues(cfg.curState:iterate(aliases, hooks))
elseif funcName == p.generalCommands.badge or funcName == p.generalCommands.badges then
if not cfg.entity.sitelinks or not cfg.entity.sitelinks[cfg.siteID] or not cfg.entity.sitelinks[cfg.siteID].badges then
return "" -- there is no use to continue without any badges
end
local badges = cfg.entity.sitelinks[cfg.siteID].badges
cfg.inSitelinks = true
-- parse the desired format, or parse the default aliases format
if args["format"] then
parsedFormat, formatParams = parseFormat(args["format"])
else
parsedFormat, formatParams = parseFormat(formats.badge)
end
-- process overridden separator values;
-- must come AFTER tweaking the default separators
cfg:processSeparators(args)
-- define the hook that should be called (getBadge);
-- only define the hook if the parameter ("%b") has been given
if formatParams[parameters.badge] then
hooks[parameters.badge] = getHookName(parameters.badge, 1)
hooks.count = hooks.count + 1
end
-- set the parsed format and the separators (and optional punctuation mark)
cfg:setFormatAndSeparators(cfg.curState, parsedFormat)
-- iterate to collect values
value = cfg:concatValues(cfg.curState:iterate(badges, hooks))
end
end
value = value or ""
if cfg.editable and value ~= "" then
-- if desired, add a clickable icon that may be used to edit the returned value on Wikidata
value = value .. cfg:getEditIcon()
end
return value
end
-- modules that include this module should call the functions with an underscore prepended, e.g.: p._property(args)
local function establishCommands(commandList, commandFunc)
for _, commandName in pairs(commandList) do
local function wikitextWrapper(frame)
local args = copyTable(frame.args)
args.pointer = 1
loadI18n(aliasesP, frame)
return commandFunc(args, commandName)
end
p[commandName] = wikitextWrapper
local function luaWrapper(args)
args = copyTable(args)
args.pointer = 1
loadI18n(aliasesP)
return commandFunc(args, commandName)
end
p["_" .. commandName] = luaWrapper
end
end
establishCommands(p.claimCommands, claimCommand)
establishCommands(p.generalCommands, generalCommand)
-- main function that is supposed to be used by wrapper templates
function p.main(frame)
if not mw.wikibase then return nil end
local f, args
loadI18n(aliasesP, frame)
-- get the parent frame to take the arguments that were passed to the wrapper template
frame = frame:getParent() or frame
if not frame.args[1] then
throwError("no-function-specified")
end
f = mw.text.trim(frame.args[1])
if f == "main" then
throwError("main-called-twice")
end
assert(p["_"..f], errorText('no-such-function', f))
-- copy arguments from immutable to mutable table
args = copyTable(frame.args)
-- remove the function name from the list
table.remove(args, 1)
return p["_"..f](args)
end
return p
dmx757zjxwjs3gyqisdta3qnyngdqd1
Module:Wdentity
828
3322
36509
2025-12-15T17:35:26Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'object = {}; object.label = function(frame) local id = frame.args[1] local lbl = mw.wikibase.label(id) return lbl end object.description = function(frame) local id = frame.args[1] local lbl = mw.wikibase.description(id) return lbl end return object'
36509
Scribunto
text/plain
object = {};
object.label = function(frame)
local id = frame.args[1]
local lbl = mw.wikibase.label(id)
return lbl
end
object.description = function(frame)
local id = frame.args[1]
local lbl = mw.wikibase.description(id)
return lbl
end
return object
lu7kmh96ozs1tdkc9icgz4q73vlz5pn
Module:WDL
828
3323
36510
2025-12-15T17:36:12Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require('strict') local getArgs = require('Module:Arguments').getArgs local roundAndPad = require('Module:Decimals')._main local p = {} local function total(frame, played, won, drawn, lost, category) if played == '-' or played == '—' then return '—' elseif not played then if not won and not drawn and not lost then return '' end return frame:expandTemplate{title = 'Number table sorting', args = { (won or 0) + (drawn or 0) + (lost...'
36510
Scribunto
text/plain
require('strict')
local getArgs = require('Module:Arguments').getArgs
local roundAndPad = require('Module:Decimals')._main
local p = {}
local function total(frame, played, won, drawn, lost, category)
if played == '-' or played == '—' then
return '—'
elseif not played then
if not won and not drawn and not lost then
return ''
end
return frame:expandTemplate{title = 'Number table sorting', args = { (won or 0) + (drawn or 0) + (lost or 0) }}
elseif tonumber(played) ~= (won or 0) + (drawn or 0) + (lost or 0) then
return '<span class="error" style="font-size:100%"><abbr title="GP not equal to W + D + L">error</abbr>' .. (category or '') .. '</span>'
else
return frame:expandTemplate{title = 'Number table sorting', args = { played }}
end
end
local function displayWinPercent(frame, winPercent, decimals)
local retval = ''
if winPercent < 10 then
retval = '<span style="visibility:hidden;color:transparent;">0</span>'
end
retval = retval .. frame:expandTemplate{title = 'Number table sorting', args = { roundAndPad(winPercent, decimals or 2) }}
if winPercent >= 100 then -- XXX: Should >= be ==? This should never be over 100, but that's what the original template had
return retval .. '<span style="visibility:hidden;color:transparent;">0</span>'
else
return retval
end
end
local function pct(frame, played, won, drawn, lost, decimals)
if played == '-' or played == '—' then
return '—'
elseif not played then
if not won and not drawn and not lost then
return ''
elseif (won or 0) + (drawn or 0) + (lost or 0) <= 0 then
return '<span style="display:none">!</span>—'
end
return displayWinPercent(frame, 100 * (won or 1) / ((won or 1) + (drawn or 0) + (lost or 0)), decimals) -- XXX: Why is 1 used in the numerator instead of 0 if won isn't set? It's not like that in the case where played is set. It makes sense in the denominator to avoid a divide by zero
elseif tonumber(played) <= 0 then
return '<span style="display:none">!</span>—'
else
return displayWinPercent(frame, 100 * (won or 0) / played, decimals)
end
end
function p.main(frame)
local args = getArgs(frame)
local tableprefix = string.format('| style="%stext-align:%s" |', args.total and 'font-weight:bold;background:#efefef;' or '', args.align or 'center')
local retval = tableprefix .. total(frame, args[1], args[2], args[3], args[4], args.demospace and '' or '[[Category:WDL error]]') .. '\n'
retval = retval .. tableprefix .. frame:expandTemplate{title = 'Number table sorting', args = { args[2] }} .. '\n'
retval = retval .. tableprefix .. frame:expandTemplate{title = 'Number table sorting', args = { args[3] }} .. '\n'
retval = retval .. tableprefix .. frame:expandTemplate{title = 'Number table sorting', args = { args[4] }} .. '\n'
if args['for'] then
retval = retval .. tableprefix .. frame:expandTemplate{title = 'Number table sorting', args = { args['for'] }} .. '\n'
end
if args.against then
retval = retval .. tableprefix .. frame:expandTemplate{title = 'Number table sorting', args = { args.against }} .. '\n'
end
if args.diff == 'yes' then
if tonumber(args['for']) and tonumber(args.against) then
retval = retval .. tableprefix .. string.format('%+d\n', args['for'] - args.against)
else
retval = retval .. tableprefix .. '<span style="display:none">!</span>—\n'
end
end
return retval .. tableprefix .. pct(frame, args[1], args[2], args[3], args[4], args.decimals)
end
return p
6ay5kehzsfot6sk64f9rye822xygtad
Module:Decimals
828
3324
36511
2025-12-15T17:36:58Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require('strict') local p = {} function p._main(n, d) local num = tonumber(n) if not num then error('Unable to convert "' .. tostring(n) .. '" to a number') end local decimals = tonumber(d) if not decimals then error('Unable to convert "' .. tostring(d) .. '" to a number') end local maxDecimals = 14 - math.floor(math.log10(num)) -- to allow a maximum of 15 significant figures, which is the highest guaranteed correct with doubles if de...'
36511
Scribunto
text/plain
require('strict')
local p = {}
function p._main(n, d)
local num = tonumber(n)
if not num then
error('Unable to convert "' .. tostring(n) .. '" to a number')
end
local decimals = tonumber(d)
if not decimals then
error('Unable to convert "' .. tostring(d) .. '" to a number')
end
local maxDecimals = 14 - math.floor(math.log10(num)) -- to allow a maximum of 15 significant figures, which is the highest guaranteed correct with doubles
if decimals > maxDecimals then decimals = maxDecimals end
local mult = 10^decimals
num = math.floor(num * mult + 0.5) / mult
if decimals < 0 then
return tostring(num)
else
return string.format('%.' .. decimals .. 'f', num)
end
end
function p.main(frame)
local args, pargs = frame.args, frame:getParent().args
return p._main(mw.ext.ParserFunctions.expr(args[1] or pargs[1]), mw.ext.ParserFunctions.expr(args[2] or pargs[2]))
end
return p
o8kb2pqvfkm8gpsa3s6wv581sqgnkjv
Module:Wd/i18n
828
3325
36512
2025-12-15T17:37:59Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- The values and functions in this submodule should be localized per wiki. local p = {} function p.init(aliasesP) p = { ["errors"] = { ["unknown-data-type"] = "Unknown or unsupported datatype '$1'.", ["missing-required-parameter"] = "No required parameters defined, needing at least one", ["extra-required-parameter"] = "Parameter '$1' must be defined as optional", ["no-function-specified"] = "You must specify a func...'
36512
Scribunto
text/plain
-- The values and functions in this submodule should be localized per wiki.
local p = {}
function p.init(aliasesP)
p = {
["errors"] = {
["unknown-data-type"] = "Unknown or unsupported datatype '$1'.",
["missing-required-parameter"] = "No required parameters defined, needing at least one",
["extra-required-parameter"] = "Parameter '$1' must be defined as optional",
["no-function-specified"] = "You must specify a function to call", -- equal to the standard module error message
["main-called-twice"] = 'The function "main" cannot be called twice',
["no-such-function"] = 'The function "$1" does not exist', -- equal to the standard module error message
["malformed-reference"] = "Error: Unable to display the reference properly. See [[Module:wd/doc#References|the documentation]] for details."
},
["info"] = {
["edit-on-wikidata"] = "Edit this on Wikidata"
},
["numeric"] = {
["decimal-mark"] = ".",
["delimiter"] = ","
},
["datetime"] = {
["prefixes"] = {
["decade-period"] = ""
},
["suffixes"] = {
["decade-period"] = "s",
["millennium"] = " millennium",
["century"] = " century",
["million-years"] = " million years",
["billion-years"] = " billion years",
["year"] = " year",
["years"] = " years"
},
["julian-calendar"] = "Julian calendar", -- linked page title
["julian"] = "Julian",
["BCE"] = "BCE",
["CE"] = "CE",
["common-era"] = "Common Era" -- linked page title
},
["coord"] = {
["latitude-north"] = "N",
["latitude-south"] = "S",
["longitude-east"] = "E",
["longitude-west"] = "W",
["degrees"] = "°",
["minutes"] = "'",
["seconds"] = '"',
["separator"] = ", "
},
["values"] = {
["unknown"] = "unknown",
["none"] = "none"
},
["cite"] = {
["version"] = "3", -- increment this each time the below parameters are changed to avoid conflict errors
["web"] = {
-- <= left side: all allowed reference properties for *web page sources* per https://www.wikidata.org/wiki/Help:Sources
-- => right side: corresponding parameter names in (equivalent of) [[:en:Template:Cite web]] (if non-existent, keep empty i.e. "")
[aliasesP.statedIn] = "website",
[aliasesP.referenceURL] = "url",
[aliasesP.publicationDate] = "date",
[aliasesP.retrieved] = "access-date",
[aliasesP.title] = "title",
[aliasesP.archiveURL] = "archive-url",
[aliasesP.archiveDate] = "archive-date",
[aliasesP.language] = "language",
[aliasesP.author] = "author", -- existence of author1, author2, author3, etc. is assumed
[aliasesP.authorNameString] = "author",
[aliasesP.publisher] = "publisher",
[aliasesP.quote] = "quote",
[aliasesP.pages] = "pages" -- extra option
},
["q"] = {
-- <= left side: all allowed reference properties for *sources other than web pages* per https://www.wikidata.org/wiki/Help:Sources
-- => right side: corresponding parameter names in (equivalent of) [[:en:Template:Cite Q]] (if non-existent, keep empty i.e. "")
[aliasesP.statedIn] = "1",
[aliasesP.pages] = "pages",
[aliasesP.column] = "at",
[aliasesP.chapter] = "chapter",
[aliasesP.sectionVerseOrParagraph] = "section",
["external-id"] = "id", -- used for any type of database property ID
[aliasesP.title] = "title",
[aliasesP.publicationDate] = "date",
[aliasesP.retrieved] = "access-date"
}
}
}
p.getOrdinalSuffix = function(num)
if tostring(num):sub(-2,-2) == '1' then
return "th" -- 10th, 11th, 12th, 13th, ... 19th
end
num = tostring(num):sub(-1)
if num == '1' then
return "st"
elseif num == '2' then
return "nd"
elseif num == '3' then
return "rd"
else
return "th"
end
end
p.addDelimiters = function(n)
local left, num, right = string.match(n, "^([^%d]*%d)(%d*)(.-)$")
if left and num and right then
return left .. (num:reverse():gsub("(%d%d%d)", "%1" .. p['numeric']['delimiter']):reverse()) .. right
else
return n
end
end
return p
end
return p
delp2h80l8nqa22xb63mor10yq2z7ld
Module:WikidataIBNew
828
3326
36513
2025-12-15T17:40:38Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Version: 2023-07-10 -- Module to implement use of a blacklist and whitelist for infobox fields -- Can take a named parameter |qid which is the Wikidata ID for the article -- if not supplied, it will use the Wikidata ID associated with the current page. -- Fields in blacklist are never to be displayed, i.e. module must return nil in all circumstances -- Fields in whitelist return local value if it exists or the Wikidata value otherwise -- The nam...'
36513
Scribunto
text/plain
-- Version: 2023-07-10
-- Module to implement use of a blacklist and whitelist for infobox fields
-- Can take a named parameter |qid which is the Wikidata ID for the article
-- if not supplied, it will use the Wikidata ID associated with the current page.
-- Fields in blacklist are never to be displayed, i.e. module must return nil in all circumstances
-- Fields in whitelist return local value if it exists or the Wikidata value otherwise
-- The name of the field that this function is called from is passed in named parameter |name
-- The name is compulsory when blacklist or whitelist is used,
-- so the module returns nil if it is not supplied.
-- blacklist is passed in named parameter |suppressfields (or |spf)
-- whitelist is passed in named parameter |fetchwikidata (or |fwd)
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
--
-- The following, taken from https://www.mediawiki.org/wiki/Wikibase/DataModel#Dates_and_times,
-- is needed to use Module:Complex date which seemingly requires date precision as a string.
-- It would work better if only the authors of the mediawiki page could spell 'millennium'.
local dp = {
[6] = "millennium",
[7] = "century",
[8] = "decade",
[9] = "year",
[10] = "month",
[11] = "day",
}
local i18n =
{
["errors"] =
{
["property-not-found"] = "Property not found.",
["No property supplied"] = "No property supplied",
["entity-not-found"] = "Wikidata entity not found.",
["unknown-claim-type"] = "Unknown claim type.",
["unknown-entity-type"] = "Unknown entity type.",
["qualifier-not-found"] = "Qualifier not found.",
["site-not-found"] = "Wikimedia project not found.",
["labels-not-found"] = "No labels found.",
["descriptions-not-found"] = "No descriptions found.",
["aliases-not-found"] = "No aliases found.",
["unknown-datetime-format"] = "Unknown datetime format.",
["local-article-not-found"] = "Article is available on Wikidata, but not on Wikipedia",
["dab-page"] = " (dab)",
},
["months"] =
{
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"
},
["century"] = "century",
["BC"] = "BC",
["BCE"] = "BCE",
["ordinal"] =
{
[1] = "st",
[2] = "nd",
[3] = "rd",
["default"] = "th"
},
["filespace"] = "File",
["Unknown"] = "Unknown",
["NaN"] = "Not a number",
-- set the following to the name of a tracking category,
-- e.g. "[[Category:Articles with missing Wikidata information]]", or "" to disable:
["missinginfocat"] = "[[Category:Articles with missing Wikidata information]]",
["editonwikidata"] = "Edit this on Wikidata",
["latestdatequalifier"] = function (date) return "before " .. date end,
-- some languages, e.g. Bosnian use a period as a suffix after each number in a date
["datenumbersuffix"] = "",
["list separator"] = ", ",
["multipliers"] = {
[0] = "",
[3] = " thousand",
[6] = " million",
[9] = " billion",
[12] = " trillion",
}
}
-- This allows an internationisation module to override the above table
if 'en' ~= mw.getContentLanguage():getCode() then
require("Module:i18n").loadI18n("Module:WikidataIB/i18n", i18n)
end
-- This piece of html implements a collapsible container. Check the classes exist on your wiki.
local collapsediv = '<div class="mw-collapsible mw-collapsed" style="width:100%; overflow:auto;" data-expandtext="{{int:show}}" data-collapsetext="{{int:hide}}">'
-- Some items should not be linked.
-- Each wiki can create a list of those in Module:WikidataIB/nolinks
-- It should return a table called itemsindex, containing true for each item not to be linked
local donotlink = {}
local nolinks_exists, nolinks = pcall(mw.loadData, "Module:WikidataIB/nolinks")
if nolinks_exists then
donotlink = nolinks.itemsindex
end
-- To satisfy Wikipedia:Manual of Style/Titles, certain types of items are italicised, and others are quoted.
-- The submodule [[Module:WikidataIB/titleformats]] lists the entity-ids used in 'instance of' (P31),
-- which allows this module to identify the values that should be formatted.
-- WikidataIB/titleformats exports a table p.formats, which is indexed by entity-id, and contains the value " or ''
local formats = {}
local titleformats_exists, titleformats = pcall(mw.loadData, "Module:WikidataIB/titleformats")
if titleformats_exists then
formats = titleformats.formats
end
-------------------------------------------------------------------------------
-- Private functions
-------------------------------------------------------------------------------
--
-------------------------------------------------------------------------------
-- makeOrdinal needs to be internationalised along with the above:
-- takes cardinal number as a numeric and returns the ordinal as a string
-- we need three exceptions in English for 1st, 2nd, 3rd, 21st, .. 31st, etc.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local makeOrdinal = function(cardinal)
local ordsuffix = i18n.ordinal.default
if cardinal % 10 == 1 then
ordsuffix = i18n.ordinal[1]
elseif cardinal % 10 == 2 then
ordsuffix = i18n.ordinal[2]
elseif cardinal % 10 == 3 then
ordsuffix = i18n.ordinal[3]
end
-- In English, 1, 21, 31, etc. use 'st', but 11, 111, etc. use 'th'
-- similarly for 12 and 13, etc.
if (cardinal % 100 == 11) or (cardinal % 100 == 12) or (cardinal % 100 == 13) then
ordsuffix = i18n.ordinal.default
end
return tostring(cardinal) .. ordsuffix
end
-------------------------------------------------------------------------------
-- findLang takes a "langcode" parameter if supplied and valid
-- otherwise it tries to create it from the user's set language ({{int:lang}})
-- failing that it uses the wiki's content language.
-- It returns a language object
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local findLang = function(langcode)
local langobj
langcode = mw.text.trim(langcode or "")
if mw.language.isKnownLanguageTag(langcode) then
langobj = mw.language.new( langcode )
else
langcode = mw.getCurrentFrame():callParserFunction('int', {'lang'})
if mw.language.isKnownLanguageTag(langcode) then
langobj = mw.language.new( langcode )
else
langobj = mw.language.getContentLanguage()
end
end
return langobj
end
-------------------------------------------------------------------------------
-- _getItemLangCode takes a qid parameter (using the current page's qid if blank)
-- If the item for that qid has property country (P17) it looks at the first preferred value
-- If the country has an official language (P37), it looks at the first preferred value
-- If that official language has a language code (P424), it returns the first preferred value
-- Otherwise it returns nothing.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local _getItemLangCode = function(qid)
qid = mw.text.trim(qid or ""):upper()
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return end
local prop17 = mw.wikibase.getBestStatements(qid, "P17")[1]
if not prop17 or prop17.mainsnak.snaktype ~= "value" then return end
local qid17 = prop17.mainsnak.datavalue.value.id
local prop37 = mw.wikibase.getBestStatements(qid17, "P37")[1]
if not prop37 or prop37.mainsnak.snaktype ~= "value" then return end
local qid37 = prop37.mainsnak.datavalue.value.id
local prop424 = mw.wikibase.getBestStatements(qid37, "P424")[1]
if not prop424 or prop424.mainsnak.snaktype ~= "value" then return end
return prop424.mainsnak.datavalue.value
end
-------------------------------------------------------------------------------
-- roundto takes a number (x)
-- and returns it rounded to (sf) significant figures
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local roundto = function(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 it's integral, cast to an integer:
if x == math.floor(x) then x = math.floor(x) end
return x
end
-------------------------------------------------------------------------------
-- decimalToDMS takes a decimal degrees (x) with precision (p)
-- and returns degrees/minutes/seconds according to the precision
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local decimalToDMS = function(x, p)
-- if p is not supplied, use a precision around 0.1 seconds
if not tonumber(p) then p = 1e-4 end
local d = math.floor(x)
local ms = (x - d) * 60
if p > 0.5 then -- precision is > 1/2 a degree
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 -- precision is > 1/2 a minute
if s > 30 then m = m +1 end
s = 0
elseif p > 0.00014 then -- precision is > 1/2 a second
s = math.floor(s + 0.5)
elseif p > 0.000014 then -- precision is > 1/20 second
s = math.floor(10 * s + 0.5) / 10
elseif p > 0.0000014 then -- precision is > 1/200 second
s = math.floor(100 * s + 0.5) / 100
else -- cap it at 3 dec places for now
s = math.floor(1000 * s + 0.5) / 1000
end
return d, m, s
end
-------------------------------------------------------------------------------
-- decimalPrecision takes a decimal (x) with precision (p)
-- and returns x rounded approximately to the given precision
-- precision should be between 1 and 1e-6, preferably a power of 10.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local decimalPrecision = function(x, p)
local s = 1
if x < 0 then
x = -x
s = -1
end
-- if p is not supplied, pick an arbitrary precision
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 it's integral, cast to an integer:
if x == math.floor(x) then x = math.floor(x) end
-- if it's less than 1e-4, it will be in exponent form, so return a string with 6dp
-- 9e-5 becomes 0.000090
if math.abs(x) < 1e-4 then x = string.format("%f", x) end
return x
end
-------------------------------------------------------------------------------
-- formatDate takes a datetime of the usual format from mw.wikibase.entity:formatPropertyValues
-- like "1 August 30 BCE" as parameter 1
-- and formats it according to the df (date format) and bc parameters
-- df = ["dmy" / "mdy" / "y"] default will be "dmy"
-- bc = ["BC" / "BCE"] default will be "BCE"
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local format_Date = function(datetime, dateformat, bc)
local datetime = datetime or "1 August 30 BCE" -- in case of nil value
-- chop off multiple vales and/or any hours, mins, etc.
-- keep anything before punctuation - we just want a single date:
local dateval = string.match( datetime, "[%w ]+")
local dateformat = string.lower(dateformat or "dmy") -- default to dmy
local bc = string.upper(bc or "") -- can't use nil for bc
-- we only want to accept two possibilities: BC or default to BCE
if bc == "BC" then
bc = " " .. i18n["BC"] -- prepend a non-breaking space.
else
bc = " " .. i18n["BCE"]
end
local postchrist = true -- start by assuming no BCE
local dateparts = {}
for word in string.gmatch(dateval, "%w+") do
if word == "BCE" or word == "BC" then -- *** internationalise later ***
postchrist = false
else
-- we'll keep the parts that are not 'BCE' in a table
dateparts[#dateparts + 1] = word
end
end
if postchrist then bc = "" end -- set AD dates to no suffix *** internationalise later ***
local sep = " " -- separator is nbsp
local fdate = table.concat(dateparts, sep) -- set formatted date to same order as input
-- if we have day month year, check dateformat
if #dateparts == 3 then
if dateformat == "y" then
fdate = dateparts[3]
elseif dateformat == "mdy" then
fdate = dateparts[2] .. sep .. dateparts[1] .. "," .. sep .. dateparts[3]
end
elseif #dateparts == 2 and dateformat == "y" then
fdate = dateparts[2]
end
return fdate .. bc
end
-------------------------------------------------------------------------------
-- dateFormat is the handler for properties that are of type "time"
-- It takes timestamp, precision (6 to 11 per mediawiki), dateformat (y/dmy/mdy), BC format (BC/BCE),
-- a plaindate switch (yes/no/adj) to en/disable "sourcing circumstances"/use adjectival form,
-- any qualifiers for the property, the language, and any adjective to use like 'before'.
-- It passes the date through the "complex date" function
-- and returns a string with the internatonalised date formatted according to preferences.
-------------------------------------------------------------------------------
-- Dependencies: findLang(); cdate(); dp[]
-------------------------------------------------------------------------------
local dateFormat = function(timestamp, dprec, df, bcf, pd, qualifiers, lang, adj, model)
-- output formatting according to preferences (y/dmy/mdy/ymd)
df = (df or ""):lower()
-- if ymd is required, return the part of the timestamp in YYYY-MM-DD form
-- but apply Year zero#Astronomers fix: 1 BC = 0000; 2 BC = -0001; etc.
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
-- A year can be stored like this: "+1872-00-00T00:00:00Z",
-- which is processed here as if it were the day before "+1872-01-01T00:00:00Z",
-- and that's the last day of 1871, so the year is wrong.
-- So fix the month 0, day 0 timestamp to become 1 January instead:
timestamp = timestamp:gsub("%-00%-00T", "-01-01T")
-- just in case date precision is missing
dprec = dprec or 11
-- override more precise dates if required dateformat is year alone:
if df == "y" and dprec > 9 then dprec = 9 end
-- complex date only deals with precisions from 6 to 11, so clip range
dprec = dprec>11 and 11 or dprec
dprec = dprec<6 and 6 or dprec
-- BC format is "BC" or "BCE"
bcf = (bcf or ""):upper()
-- plaindate only needs the first letter (y/n/a)
pd = (pd or ""):sub(1,1):lower()
if pd == "" or pd == "n" or pd == "f" or pd == "0" then pd = false end
-- in case language isn't passed
lang = lang or findLang().code
-- set adj as empty if nil
adj = adj or ""
-- extract the day, month, year from the timestamp
local bc = timestamp:sub(1, 1)=="-" and "BC" or ""
local year, month, day = timestamp:match("[+-](%d*)-(%d*)-(%d*)T")
local iso = tonumber(year) -- if year is missing, let it throw an error
-- this will adjust the date format to be compatible with cdate
-- possible formats are Y, YY, YYY0, YYYY, YYYY-MM, YYYY-MM-DD
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
-- add "circa" (Q5727902) from "sourcing circumstances" (P1480)
local sc = not pd 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
-- deal with Julian dates:
-- no point in saying that dates before 1582 are Julian - they are by default
-- doesn't make sense for dates less precise than year
-- we can suppress it by setting |plaindate, e.g. for use in constructing categories.
local calendarmodel = ""
if tonumber(year) > 1582
and dprec > 8
and not pd
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 pd 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 pd == "a" then
fdate = fdate:gsub(' century', '-century')
end
return fdate
end
-------------------------------------------------------------------------------
-- parseParam takes a (string) parameter, e.g. from the list of frame arguments,
-- and makes "false", "no", and "0" into the (boolean) false
-- it makes the empty string and nil into the (boolean) value passed as default
-- allowing the parameter to be true or false by default.
-- It returns a boolean.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local parseParam = function(param, default)
if type(param) == "boolean" then param = tostring(param) end
if param and param ~= "" then
param = param:lower()
if (param == "false") or (param:sub(1,1) == "n") or (param == "0") then
return false
else
return true
end
else
return default
end
end
-------------------------------------------------------------------------------
-- _getSitelink takes the qid of a Wikidata entity passed as |qid=
-- It takes an optional parameter |wiki= to determine which wiki is to be checked for a sitelink
-- If the parameter is blank, then it uses the local wiki.
-- If there is a sitelink to an article available, it returns the plain text link to the article
-- If there is no sitelink, it returns nil.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local _getSitelink = function(qid, wiki)
qid = (qid or ""):upper()
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return nil end
wiki = wiki or ""
local sitelink
if wiki == "" then
sitelink = mw.wikibase.getSitelink(qid)
else
sitelink = mw.wikibase.getSitelink(qid, wiki)
end
return sitelink
end
-------------------------------------------------------------------------------
-- _getCommonslink takes an optional qid of a Wikidata entity passed as |qid=
-- It returns one of the following in order of preference:
-- the Commons sitelink of the Wikidata entity - but not if onlycat=true and it's not a category;
-- the Commons sitelink of the topic's main category of the Wikidata entity;
-- the Commons category of the Wikidata entity - unless fallback=false.
-------------------------------------------------------------------------------
-- Dependencies: _getSitelink(); parseParam()
-------------------------------------------------------------------------------
local _getCommonslink = function(qid, onlycat, fallback)
qid = (qid or ""):upper()
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return nil end
onlycat = parseParam(onlycat, false)
if fallback == "" then fallback = nil end
local sitelink = _getSitelink(qid, "commonswiki")
if onlycat and sitelink and sitelink:sub(1,9) ~= "Category:" then sitelink = nil end
if not sitelink then
-- check for topic's main category
local prop910 = mw.wikibase.getBestStatements(qid, "P910")[1]
if prop910 then
local tmcid = prop910.mainsnak.datavalue and prop910.mainsnak.datavalue.value.id
sitelink = _getSitelink(tmcid, "commonswiki")
end
if not sitelink then
-- check for list's main category
local prop1754 = mw.wikibase.getBestStatements(qid, "P1754")[1]
if prop1754 then
local tmcid = prop1754.mainsnak.datavalue and prop1754.mainsnak.datavalue.value.id
sitelink = _getSitelink(tmcid, "commonswiki")
end
end
end
if not sitelink and fallback then
-- check for Commons category (string value)
local prop373 = mw.wikibase.getBestStatements(qid, "P373")[1]
if prop373 then
sitelink = prop373.mainsnak.datavalue and prop373.mainsnak.datavalue.value
if sitelink then sitelink = "Category:" .. sitelink end
end
end
return sitelink
end
-------------------------------------------------------------------------------
-- The label in a Wikidata item is subject to vulnerabilities
-- that an attacker might try to exploit.
-- It needs to be 'sanitised' by removing any wikitext before use.
-- If it doesn't exist, return the id for the item
-- a second (boolean) value is also returned, value is true when the label exists
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local labelOrId = function(id, lang)
if lang == "default" then lang = findLang().code end
local label
if lang then
label = mw.wikibase.getLabelByLang(id, lang)
else
label = mw.wikibase.getLabel(id)
end
if label then
return mw.text.nowiki(label), true
else
return id, false
end
end
-------------------------------------------------------------------------------
-- linkedItem takes an entity-id and returns a string, linked if possible.
-- This is the handler for "wikibase-item". Preferences:
-- 1. Display linked disambiguated sitelink if it exists
-- 2. Display linked label if it is a redirect
-- 3. TBA: Display an inter-language link for the label if it exists other than in default language
-- 4. Display unlinked label if it exists
-- 5. Display entity-id for now to indicate a label could be provided
-- dtxt is text to be used instead of label, or nil.
-- shortname is boolean switch to use P1813 (short name) instead of label if true.
-- lang is the current language code.
-- uselbl is boolean switch to force display of the label instead of the sitelink (default: false)
-- linkredir is boolean switch to allow linking to a redirect (default: false)
-- formatvalue is boolean switch to allow formatting as italics or quoted (default: false)
-------------------------------------------------------------------------------
-- Dependencies: labelOrId(); donotlink[]
-------------------------------------------------------------------------------
local linkedItem = function(id, args)
local lprefix = (args.lp or args.lprefix or args.linkprefix or ""):gsub('"', '') -- toughen against nil values passed
local lpostfix = (args.lpostfix or ""):gsub('"', '')
local prefix = (args.prefix or ""):gsub('"', '')
local postfix = (args.postfix or ""):gsub('"', '')
local dtxt = args.dtxt
local shortname = args.shortname or args.sn
local lang = args.lang or "en" -- fallback to default if missing
local uselbl = args.uselabel or args.uselbl
uselbl = parseParam(uselbl, false)
local linkredir = args.linkredir
linkredir = parseParam(linkredir, false)
local formatvalue = args.formatvalue or args.fv
formatvalue = parseParam(formatvalue, false)
-- see if item might need italics or quotes
local fmt = ""
if next(formats) and formatvalue then
for k, v in ipairs( mw.wikibase.getBestStatements(id, "P31") ) do
if v.mainsnak.datavalue and formats[v.mainsnak.datavalue.value.id] then
fmt = formats[v.mainsnak.datavalue.value.id]
break -- pick the first match
end
end
end
local disp
local sitelink = mw.wikibase.getSitelink(id)
local label, islabel
if dtxt then
label, islabel = dtxt, true
elseif shortname then
-- see if there is a shortname in our language, and set label to it
for k, v in ipairs( mw.wikibase.getBestStatements(id, "P1813") ) do
if v.mainsnak.datavalue.value.language == lang then
label, islabel = v.mainsnak.datavalue.value.text, true
break
end -- test for language match
end -- loop through values of short name
-- if we have no label set, then there was no shortname available
if not islabel then
label, islabel = labelOrId(id)
shortname = false
end
else
label, islabel = labelOrId(id)
end
if mw.site.siteName ~= "Wikimedia Commons" then
if sitelink then
if not (dtxt or shortname) then
-- if sitelink and label are the same except for case, no need to process further
if sitelink:lower() ~= label:lower() then
-- strip any namespace or dab from the sitelink
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 -- that prefix is a valid namespace, so remove it
slink = sitelink:sub(pos+1)
end
end
-- remove stuff after commas or inside parentheses - ie. dabs
slink = slink:gsub("%s%(.+%)$", ""):gsub(",.+$", "")
-- if uselbl is false, use sitelink instead of label
if not uselbl then
-- use slink as display, preserving label case - find("^%u") is true for 1st char uppercase
if label:find("^%u") then
label = slink:gsub("^(%l)", string.upper)
else
label = slink:gsub("^(%u)", string.lower)
end
end
end
end
if donotlink[label] then
disp = prefix .. fmt .. label .. fmt .. postfix
else
disp = "[[" .. lprefix .. sitelink .. lpostfix .. "|" .. prefix .. fmt .. label .. fmt .. postfix .. "]]"
end
elseif islabel then
-- no sitelink, label exists, so check if a redirect with that title exists, if linkredir is true
-- display plain label by default
disp = prefix .. fmt .. label .. fmt .. postfix
if linkredir then
local artitle = mw.title.new(label, 0) -- only nil if label has invalid chars
if not donotlink[label] and artitle and artitle.redirectTarget then
-- there's a redirect with the same title as the label, so let's link to that
disp = "[[".. lprefix .. label .. lpostfix .. "|" .. prefix .. fmt .. label .. fmt .. postfix .. "]]"
end
end -- test if article title exists as redirect on current Wiki
else
-- no sitelink and no label, so return whatever was returned from labelOrId for now
-- add tracking category [[Category:Articles with missing Wikidata information]]
-- for enwiki, just return the tracking category
if mw.wikibase.getGlobalSiteId() == "enwiki" then
disp = i18n.missinginfocat
else
disp = prefix .. label .. postfix .. i18n.missinginfocat
end
end
else
local ccat = mw.wikibase.getBestStatements(id, "P373")[1]
if ccat and ccat.mainsnak.datavalue then
ccat = ccat.mainsnak.datavalue.value
disp = "[[" .. lprefix .. "Category:" .. ccat .. lpostfix .. "|" .. prefix .. label .. postfix .. "]]"
elseif sitelink then
-- this asumes that if a sitelink exists, then a label also exists
disp = "[[" .. lprefix .. sitelink .. lpostfix .. "|" .. prefix .. label .. postfix .. "]]"
else
-- no sitelink and no Commons cat, so return label from labelOrId for now
disp = prefix .. label .. postfix
end
end
return disp
end
-------------------------------------------------------------------------------
-- sourced takes a table representing a statement that may or may not have references
-- it looks for a reference sourced to something not containing the word "wikipedia"
-- it returns a boolean = true if it finds a sourced reference.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local sourced = function(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
-------------------------------------------------------------------------------
-- setRanks takes a flag (parameter passed) that requests the values to return
-- "b[est]" returns preferred if available, otherwise normal
-- "p[referred]" returns preferred
-- "n[ormal]" returns normal
-- "d[eprecated]" returns deprecated
-- multiple values are allowed, e.g. "preferred normal" (which is the default)
-- "best" will override the other flags, and set p and n
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local setRanks = function(rank)
rank = (rank or ""):lower()
-- if nothing passed, return preferred and normal
-- if rank == "" then rank = "p n" end
local ranks = {}
for w in string.gmatch(rank, "%a+") do
w = w:sub(1,1)
if w == "b" or w == "p" or w == "n" or w == "d" then
ranks[w] = true
end
end
-- check if "best" is requested or no ranks requested; and if so, set preferred and normal
if ranks.b or not next(ranks) then
ranks.p = true
ranks.n = true
end
return ranks
end
-------------------------------------------------------------------------------
-- parseInput processes the Q-id , the blacklist and the whitelist
-- if an input parameter is supplied, it returns that and ends the call.
-- it returns (1) either the qid or nil indicating whether or not the call should continue
-- and (2) a table containing all of the statements for the propertyID and relevant Qid
-- if "best" ranks are requested, it returns those instead of all non-deprecated ranks
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
local parseInput = function(frame, input_parm, property_id)
-- There may be a local parameter supplied, if it's blank, set it to nil
input_parm = mw.text.trim(input_parm or "")
if input_parm == "" then input_parm = nil end
-- return nil if Wikidata is not available
if not mw.wikibase then return false, input_parm end
local args = frame.args
-- can take a named parameter |qid which is the Wikidata ID for the article.
-- if it's not supplied, use the id for the current page
local qid = args.qid or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
-- if there's no Wikidata item for the current page return nil
if not qid then return false, input_parm end
-- The blacklist is passed in named parameter |suppressfields
local blacklist = args.suppressfields or args.spf or ""
-- The whitelist is passed in named parameter |fetchwikidata
local whitelist = args.fetchwikidata or args.fwd or ""
if whitelist == "" then whitelist = "NONE" end
-- The name of the field that this function is called from is passed in named parameter |name
local fieldname = args.name or ""
if blacklist ~= "" then
-- The name is compulsory when blacklist is used, so return nil if it is not supplied
if fieldname == "" then return false, nil end
-- If this field is on the blacklist, then return nil
if blacklist:find(fieldname) then return false, nil end
end
-- If we got this far then we're not on the blacklist
-- The blacklist overrides any locally supplied parameter as well
-- If a non-blank input parameter was supplied return it
if input_parm then return false, input_parm end
-- We can filter out non-valid properties
if property_id:sub(1,1):upper() ~="P" or property_id == "P0" then return false, nil end
-- Otherwise see if this field is on the whitelist:
-- needs a bit more logic because find will return its second value = 0 if fieldname is ""
-- but nil if fieldname not found on whitelist
local _, found = whitelist:find(fieldname)
found = ((found or 0) > 0)
if whitelist ~= 'ALL' and (whitelist:upper() == "NONE" or not found) then
return false, nil
end
-- See what's on Wikidata (the call always returns a table, but it may be empty):
local props = {}
if args.reqranks.b then
props = mw.wikibase.getBestStatements(qid, property_id)
else
props = mw.wikibase.getAllStatements(qid, property_id)
end
if props[1] then
return qid, props
end
-- no property on Wikidata
return false, nil
end
-------------------------------------------------------------------------------
-- createicon assembles the "Edit at Wikidata" pen icon.
-- It returns a wikitext string inside a span class="penicon"
-- if entityID is nil or empty, the ID associated with current page is used
-- langcode and propertyID may be nil or empty
-------------------------------------------------------------------------------
-- Dependencies: i18n[];
-------------------------------------------------------------------------------
local createicon = function(langcode, entityID, propertyID)
langcode = langcode or ""
if not entityID or entityID == "" then entityID= mw.wikibase.getEntityIdForCurrentPage() end
propertyID = propertyID or ""
local icon = " <span class='penicon autoconfirmed-show'>[["
-- " <span data-bridge-edit-flow='overwrite' class='penicon'>[[" -> enable Wikidata Bridge
.. i18n["filespace"]
.. ":OOjs UI icon edit-ltr-progressive.svg |frameless |text-top |10px |alt="
.. i18n["editonwikidata"]
.. "|link=https://www.wikidata.org/wiki/" .. entityID
if langcode ~= "" then icon = icon .. "?uselang=" .. langcode end
if propertyID ~= "" then icon = icon .. "#" .. propertyID end
icon = icon .. "|" .. i18n["editonwikidata"] .. "]]</span>"
return icon
end
-------------------------------------------------------------------------------
-- assembleoutput takes the sequence table containing the property values
-- and formats it according to switches given. It returns a string or nil.
-- It uses the entityID (and optionally propertyID) to create a link in the pen icon.
-------------------------------------------------------------------------------
-- Dependencies: parseParam();
-------------------------------------------------------------------------------
local assembleoutput = function(out, args, entityID, propertyID)
-- sorted is a boolean passed to enable sorting of the values returned
-- if nothing or an empty string is passed set it false
-- if "false" or "no" or "0" is passed set it false
local sorted = parseParam(args.sorted, false)
-- noicon is a boolean passed to suppress the trailing "edit at Wikidata" icon
-- for use when the value is processed further by the infobox
-- if nothing or an empty string is passed set it false
-- if "false" or "no" or "0" is passed set it false
local noic = parseParam(args.noicon, false)
-- list is the name of a template that a list of multiple values is passed through
-- examples include "hlist" and "ubl"
-- setting it to "prose" produces something like "1, 2, 3, and 4"
local list = args.list or ""
-- sep is a string that is used to separate multiple returned values
-- if nothing or an empty string is passed set it to the default
-- any double-quotes " are stripped out, so that spaces may be passed
-- e.g. |sep=" - "
local sepdefault = i18n["list separator"]
local separator = args.sep or ""
separator = string.gsub(separator, '"', '')
if separator == "" then
separator = sepdefault
end
-- collapse is a number that determines the maximum number of returned values
-- before the output is collapsed.
-- Zero or not a number result in no collapsing (default becomes 0).
local collapse = tonumber(args.collapse) or 0
-- replacetext (rt) is a string that is returned instead of any non-empty Wikidata value
-- this is useful for tracking and debugging
local replacetext = mw.text.trim(args.rt or args.replacetext or "")
-- if there's anything to return, then return a list
-- comma-separated by default, but may be specified by the sep parameter
-- optionally specify a hlist or ubl or a prose list, etc.
local strout
if #out > 0 then
if sorted then table.sort(out) end
-- if there's something to display and a pen icon is wanted, add it the end of the last value
local hasdisplay = false
for i, v in ipairs(out) do
if v ~= i18n.missinginfocat then
hasdisplay = true
break
end
end
if not noic and hasdisplay then
out[#out] = out[#out] .. createicon(args.langobj.code, entityID, propertyID)
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
if collapse >0 and #out > collapse then
strout = collapsediv .. strout .. "</div>"
end
else
strout = nil -- no items had valid reference
end
if replacetext ~= "" and strout then strout = replacetext end
return strout
end
-------------------------------------------------------------------------------
-- rendersnak takes a table (propval) containing the information stored on one property value
-- and returns the value as a string and its language if monolingual text.
-- It handles data of type:
-- wikibase-item
-- time
-- string, url, commonsMedia, external-id
-- quantity
-- globe-coordinate
-- monolingualtext
-- It also requires linked, the link/pre/postfixes, uabbr, and the arguments passed from frame.
-- The optional filter parameter allows quantities to be be filtered by unit Qid.
-------------------------------------------------------------------------------
-- Dependencies: parseParam(); labelOrId(); i18n[]; dateFormat();
-- roundto(); decimalPrecision(); decimalToDMS(); linkedItem();
-------------------------------------------------------------------------------
local rendersnak = function(propval, args, linked, lpre, lpost, pre, post, uabbr, filter)
lpre = lpre or ""
lpost = lpost or ""
pre = pre or ""
post = post or ""
args.lang = args.lang or findLang().code
-- allow values to display a fixed text instead of label
local dtxt = args.displaytext or args.dt
if dtxt == "" then dtxt = nil end
-- switch to use display of short name (P1813) instead of label
local shortname = args.shortname or args.sn
shortname = parseParam(shortname, false)
local snak = propval.mainsnak or propval
local dtype = snak.datatype
local dv = snak.datavalue
dv = dv and dv.value
-- value and monolingual text language code returned
local val, mlt
if propval.rank and not args.reqranks[propval.rank:sub(1, 1)] then
-- val is nil: value has a rank that isn't requested
------------------------------------
elseif snak.snaktype == "somevalue" then -- value is unknown
val = i18n["Unknown"]
------------------------------------
elseif snak.snaktype == "novalue" then -- value is none
-- val = "No value" -- don't return anything
------------------------------------
elseif dtype == "wikibase-item" then -- data type is a wikibase item:
-- it's wiki-linked value, so output as link if enabled and possible
local qnumber = dv.id
if linked then
val = linkedItem(qnumber, args)
else -- no link wanted so check for display-text, otherwise test for lang code
local label, islabel
if dtxt then
label = dtxt
else
label, islabel = labelOrId(qnumber)
local langlabel = mw.wikibase.getLabelByLang(qnumber, args.lang)
if langlabel then
label = mw.text.nowiki( langlabel )
end
end
val = pre .. label .. post
end -- test for link required
------------------------------------
elseif dtype == "time" then -- data type is time:
-- time is in timestamp format
-- date precision is integer per mediawiki
-- output formatting according to preferences (y/dmy/mdy)
-- BC format as BC or BCE
-- plaindate is passed to disable looking for "sourcing cirumstances"
-- or to set the adjectival form
-- qualifiers (if any) is a nested table or nil
-- lang is given, or user language, or site language
--
-- Here we can check whether args.df has a value
-- If not, use code from Module:Sandbox/RexxS/Getdateformat to set it from templates like {{Use mdy dates}}
val = dateFormat(dv.time, dv.precision, args.df, args.bc, args.pd, propval.qualifiers, args.lang, "", dv.calendarmodel)
------------------------------------
-- data types which are strings:
elseif dtype == "commonsMedia" or dtype == "external-id" or dtype == "string" or dtype == "url" then
-- commonsMedia or external-id or string or url
-- all have mainsnak.datavalue.value as string
if (lpre == "" or lpre == ":") and lpost == "" then
-- don't link if no linkpre/postfix or linkprefix is just ":"
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 -- check for link requested (i.e. either linkprefix or linkpostfix exists)
------------------------------------
-- data types which are quantities:
elseif dtype == "quantity" then
-- quantities have mainsnak.datavalue.value.amount and mainsnak.datavalue.value.unit
-- the unit is of the form http://www.wikidata.org/entity/Q829073
--
-- implement a switch to turn on/off numerical formatting later
local fnum = true
--
-- a switch to turn on/off conversions - only for en-wiki
local conv = parseParam(args.conv or args.convert, false)
-- if we have conversions, we won't have formatted numbers or scales
if conv then
uabbr = true
fnum = false
args.scale = "0"
end
--
-- a switch to turn on/off showing units, default is true
local showunits = parseParam(args.su or args.showunits, true)
--
-- convert amount to a number
local amount = tonumber(dv.amount) or i18n["NaN"]
--
-- scale factor for millions, billions, etc.
local sc = tostring(args.scale or ""):sub(1,1):lower()
local scale
if sc == "a" then
-- automatic scaling
if amount > 1e15 then
scale = 12
elseif amount > 1e12 then
scale = 9
elseif amount > 1e9 then
scale = 6
elseif amount > 1e6 then
scale = 3
else
scale = 0
end
else
scale = tonumber(args.scale) or 0
if scale < 0 or scale > 12 then scale = 0 end
scale = math.floor(scale/3) * 3
end
local factor = 10^scale
amount = amount / factor
-- ranges:
local range = ""
-- check if upper and/or lower bounds are given and significant
local upb = tonumber(dv.upperBound)
local lowb = tonumber(dv.lowerBound)
if upb and lowb then
-- differences rounded to 2 sig fig:
local posdif = roundto(upb - amount, 2) / factor
local negdif = roundto(amount - lowb, 2) / factor
upb, lowb = amount + posdif, amount - negdif
-- round scaled numbers to integers or 4 sig fig
if (scale > 0 or sc == "a") then
if amount < 1e4 then
amount = roundto(amount, 4)
else
amount = math.floor(amount + 0.5)
end
end
if fnum then amount = args.langobj:formatNum( amount ) end
if posdif ~= negdif then
-- non-symmetrical
range = " +" .. posdif .. " -" .. negdif
elseif posdif ~= 0 then
-- symmetrical and non-zero
range = " ±" .. posdif
else
-- otherwise range is zero, so leave it as ""
end
else
-- round scaled numbers to integers or 4 sig fig
if (scale > 0 or sc == "a") then
if amount < 1e4 then
amount = roundto(amount, 4)
else
amount = math.floor(amount + 0.5)
end
end
if fnum then amount = args.langobj:formatNum( amount ) end
end
-- unit names and symbols:
-- extract the qid in the form 'Qnnn' from the value.unit url
-- and then fetch the label from that - or symbol if unitabbr is true
local unit = ""
local usep = ""
local usym = ""
local unitqid = string.match( dv.unit, "(Q%d+)" )
if filter and unitqid ~= filter then return nil end
if unitqid and showunits then
local uname = mw.wikibase.getLabelByLang(unitqid, args.lang) or ""
if uname ~= "" then usep, unit = " ", uname end
if uabbr then
-- see if there's a unit symbol (P5061)
local unitsymbols = mw.wikibase.getBestStatements(unitqid, "P5061")
-- construct fallback table, add local lang and multiple languages
local fbtbl = mw.language.getFallbacksFor( args.lang )
table.insert( fbtbl, 1, args.lang )
table.insert( fbtbl, 1, "mul" )
local found = false
for idx1, us in ipairs(unitsymbols) do
for idx2, fblang in ipairs(fbtbl) do
if us.mainsnak.datavalue.value.language == fblang then
usym = us.mainsnak.datavalue.value.text
found = true
break
end
if found then break end
end -- loop through fallback table
end -- loop through values of P5061
if found then usep, unit = " ", usym end
end
end
-- format display:
if conv then
if range == "" then
val = mw.getCurrentFrame():expandTemplate{title = "cvt", args = {amount, unit}}
else
val = mw.getCurrentFrame():expandTemplate{title = "cvt", args = {lowb, "to", upb, unit}}
end
elseif unit == "$" or unit == "£" then
val = unit .. amount .. range .. i18n.multipliers[scale]
else
val = amount .. range .. i18n.multipliers[scale] .. usep .. unit
end
------------------------------------
-- datatypes which are global coordinates:
elseif dtype == "globe-coordinate" then
-- 'display' parameter defaults to "inline, title" *** unused for now ***
-- local disp = args.display or ""
-- if disp == "" then disp = "inline, title" end
--
-- format parameter switches from deg/min/sec to decimal degrees
-- default is deg/min/sec -- decimal degrees needs |format = dec
local form = (args.format or ""):lower():sub(1,3)
if form ~= "dec" then form = "dms" end -- not needed for now
--
-- show parameter allows just the latitude, or just the longitude, or both
-- to be returned as a signed decimal, ignoring the format parameter.
local show = (args.show or ""):lower()
if show ~= "longlat" then show = show:sub(1,3) end
--
local lat, long, prec = dv.latitude, dv.longitude, dv.precision
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 = "N"
local ew = "E"
if lat < 0 then
ns = "S"
lat = - lat
end
if long < 0 then
ew = "W"
long = - long
end
if form == "dec" then
lat = decimalPrecision(lat, prec)
long = decimalPrecision(long, prec)
val = lat .. "°" .. ns .. " " .. long .. "°" .. ew
else
local latdeg, latmin, latsec = decimalToDMS(lat, prec)
local longdeg, longmin, longsec = decimalToDMS(long, prec)
if latsec == 0 and longsec == 0 then
if latmin == 0 and longmin == 0 then
val = latdeg .. "°" .. ns .. " " .. longdeg .. "°" .. ew
else
val = latdeg .. "°" .. latmin .. "′" .. ns .. " "
val = val .. longdeg .. "°".. longmin .. "′" .. ew
end
else
val = latdeg .. "°" .. latmin .. "′" .. latsec .. "″" .. ns .. " "
val = val .. longdeg .. "°" .. longmin .. "′" .. longsec .. "″" .. ew
end
end
end
------------------------------------
elseif dtype == "monolingualtext" then -- data type is Monolingual text:
-- has mainsnak.datavalue.value as a table containing language/text pairs
-- collect all the values in 'out' and languages in 'mlt' and process them later
val = pre .. dv.text .. post
mlt = dv.language
------------------------------------
else
-- some other data type so write a specific handler
val = "unknown data type: " .. dtype
end -- of datatype/unknown value/sourced check
return val, mlt
end
-------------------------------------------------------------------------------
-- propertyvalueandquals takes a property object, the arguments passed from frame,
-- and a qualifier propertyID.
-- It returns a sequence (table) of values representing the values of that property
-- and qualifiers that match the qualifierID if supplied.
-------------------------------------------------------------------------------
-- Dependencies: parseParam(); sourced(); labelOrId(); i18n.latestdatequalifier(); format_Date();
-- makeOrdinal(); roundto(); decimalPrecision(); decimalToDMS(); assembleoutput();
-------------------------------------------------------------------------------
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 or args.osd, true)
-- 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 lprefix = (args.linkprefix or args.lp 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 lprefix
-- 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 wdl = parseParam(args.wdlinks or args.wdl, 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 uabbr = parseParam(args.unitabbr or args.uabbr, 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 or args.qo, 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
-- pd (plain date) is a string: yes/true/1 | no/false/0 | adj
-- to disable/enable "sourcing cirumstances" or use adjectival form for the plain date
local pd = args.plaindate or args.pd or "no"
args.pd = pd
-- allow qualifiers to have a different date format; default to year unless qualsonly is set
args.qdf = args.qdf or args.qualifierdateformat or args.df or (not qualsonly and "y")
local lang = args.lang or findLang().code
-- 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 = {
["osd"] = "false",
["linked"] = tostring(linked),
["prefix"] = args.qprefix,
["postfix"] = args.qpostfix,
["linkprefix"] = args.qlinkprefix or args.qlp,
["linkpostfix"] = args.qlinkpostfix,
["wdl"] = "false",
["unitabbr"] = tostring(uabbr),
["maxvals"] = 0,
["sorted"] = tostring(args.qsorted),
["noicon"] = "true",
["list"] = args.qlist,
["sep"] = qsep,
["langobj"] = args.langobj,
["lang"] = args.langobj.code,
["df"] = args.qdf,
["sn"] = parseParam(args.qsn or 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
local datatype = objproperty[1].datatype or 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, lprefix, lpostfix, prefix, postfix, uabbr)
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.qdf, args.bc, pd, "", 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.qdf, args.bc, pd, "", 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
-------------------------------------------------------------------------------
-- Common code for p.getValueByQual and p.getValueByLang
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; assembleoutput;
-------------------------------------------------------------------------------
local _getvaluebyqual = function(frame, qualID, checkvalue)
-- The property ID that will have a qualifier is the first unnamed parameter
local propertyID = mw.text.trim(frame.args[1] or "")
if propertyID == "" then return "no property supplied" end
if qualID == "" then return "no qualifier supplied" end
-- onlysourced is a boolean passed to return property values
-- only when property values are sourced to something other than Wikipedia
-- if nothing or an empty string is passed set it true
-- if "false" or "no" or 0 is passed set it false
local onlysrc = parseParam(frame.args.onlysourced or frame.args.osd, true)
-- set the requested ranks flags
frame.args.reqranks = setRanks(frame.args.rank)
-- set a language object and code in the frame.args table
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
local args = frame.args
-- check for locally supplied parameter in second unnamed parameter
-- success means no local parameter and the property exists
local qid, props = parseInput(frame, args[2], propertyID)
local linked = parseParam(args.linked, true)
local lpre = (args.linkprefix or args.lp or ""):gsub('"', '')
local lpost = (args.linkpostfix or ""):gsub('"', '')
local pre = (args.prefix or ""):gsub('"', '')
local post = (args.postfix or ""):gsub('"', '')
local uabbr = parseParam(args.unitabbr or args.uabbr, false)
local filter = (args.unit or ""):upper()
local maxvals = tonumber(args.maxvals) or 0
if filter == "" then filter = nil end
if qid then
local out = {}
-- Scan through the values of the property
-- we want something like property is "pronunciation audio (P443)" in propertyID
-- with a qualifier like "language of work or name (P407)" in qualID
-- whose value has the required ID, like "British English (Q7979)", in qval
for k1, v1 in ipairs(props) do
if v1.mainsnak.snaktype == "value" then
-- check if it has the right qualifier
local v1q = v1.qualifiers
if v1q and v1q[qualID] then
if onlysrc == false or sourced(v1) then
-- if we've got this far, we have a (sourced) claim with qualifiers
-- so see if matches the required value
-- We'll only deal with wikibase-items and strings for now
if v1q[qualID][1].datatype == "wikibase-item" then
if checkvalue(v1q[qualID][1].datavalue.value.id) then
out[#out + 1] = rendersnak(v1, args, linked, lpre, lpost, pre, post, uabbr, filter)
end
elseif v1q[qualID][1].datatype == "string" then
if checkvalue(v1q[qualID][1].datavalue.value) then
out[#out + 1] = rendersnak(v1, args, linked, lpre, lpost, pre, post, uabbr, filter)
end
end
end -- of check for sourced
end -- of check for matching required value and has qualifiers
else
return nil
end -- of check for string
if maxvals > 0 and #out >= maxvals then break end
end -- of loop through values of propertyID
return assembleoutput(out, frame.args, qid, propertyID)
else
return props -- either local parameter or nothing
end -- of test for success
return nil
end
-------------------------------------------------------------------------------
-- _location takes Q-id and follows P276 (location)
-- or P131 (located in the administrative territorial entity) or P706 (located on terrain feature)
-- from the initial item to higher level territories/locations until it reaches the highest.
-- An optional boolean, 'first', determines whether the first item is returned (default: false).
-- An optional boolean 'skip' toggles the display to skip to the last item (default: false).
-- It returns a table containing the locations - linked where possible, except for the highest.
-------------------------------------------------------------------------------
-- Dependencies: findLang(); labelOrId(); linkedItem
-------------------------------------------------------------------------------
local _location = function(qid, first, skip)
first = parseParam(first, false)
skip = parseParam(skip, false)
local locs = {"P276", "P131", "P706"}
local out = {}
local langcode = findLang():getCode()
local finished = false
local count = 0
local prevqid = "Q0"
repeat
local prop
for i1, v1 in ipairs(locs) do
local proptbl = mw.wikibase.getBestStatements(qid, v1)
if #proptbl > 1 then
-- there is more than one higher location
local prevP131, prevP131id
if prevqid ~= "Q0" then
prevP131 = mw.wikibase.getBestStatements(prevqid, "P131")[1]
prevP131id = prevP131
and prevP131.mainsnak.datavalue
and prevP131.mainsnak.datavalue.value.id
end
for i2, v2 in ipairs(proptbl) do
local parttbl = v2.qualifiers and v2.qualifiers.P518
if parttbl then
-- this higher location has qualifier 'applies to part' (P518)
for i3, v3 in ipairs(parttbl) do
if v3.snaktype == "value" and v3.datavalue.value.id == prevqid then
-- it has a value equal to the previous location
prop = proptbl[i2]
break
end -- of test for matching last location
end -- of loop through values of 'applies to part'
else
-- there's no qualifier 'applies to part' (P518)
-- so check if the previous location had a P131 that matches this alternate
if qid == prevP131id then
prop = proptbl[i2]
break
end -- of test for matching previous P131
end
end -- of loop through parent locations
-- fallback to second value if match not found
prop = prop or proptbl[2]
elseif #proptbl > 0 then
prop = proptbl[1]
end
if prop then break end
end
-- check if it's an instance of (P31) a country (Q6256) or sovereign state (Q3624078)
-- and terminate the chain if it is
local inst = mw.wikibase.getAllStatements(qid, "P31")
if #inst > 0 then
for k, v in ipairs(inst) do
local instid = v.mainsnak.datavalue and v.mainsnak.datavalue.value.id
-- stop if it's a country (or a country within the United Kingdom if skip is true)
if instid == "Q6256" or instid == "Q3624078" or (skip and instid == "Q3336843") then
prop = nil -- this will ensure this is treated as top-level location
break
end
end
end
-- get the name of this location and update qid to point to the parent location
if prop and prop.mainsnak.datavalue then
if not skip or count == 0 then
local args = { lprefix = ":" }
out[#out+1] = linkedItem(qid, args) -- get a linked value if we can
end
qid, prevqid = prop.mainsnak.datavalue.value.id, qid
else
-- This is top-level location, so get short name except when this is the first item
-- Use full label if there's no short name or this is the first item
local prop1813 = mw.wikibase.getAllStatements(qid, "P1813")
-- if there's a short name and this isn't the only item
if prop1813[1] and (#out > 0)then
local shortname
-- short name is monolingual text, so look for match to the local language
-- choose the shortest 'short name' in that language
for k, v in pairs(prop1813) do
if v.mainsnak.datavalue.value.language == langcode then
local name = v.mainsnak.datavalue.value.text
if (not shortname) or (#name < #shortname) then
shortname = name
end
end
end
-- add the shortname if one is found, fallback to the label
-- but skip it if it's "USA"
if shortname ~= "USA" then
out[#out+1] = shortname or labelOrId(qid)
else
if skip then out[#out+1] = "US" end
end
else
-- no shortname, so just add the label
local loc = labelOrId(qid)
-- exceptions go here:
if loc == "United States of America" then
out[#out+1] = "United States"
else
out[#out+1] = loc
end
end
finished = true
end
count = count + 1
until finished or count >= 10 -- limit to 10 levels to avoid infinite loops
-- remove the first location if not required
if not first then table.remove(out, 1) end
-- we might have duplicate text for consecutive locations, so remove them
if #out > 2 then
local plain = {}
for i, v in ipairs(out) do
-- strip any links
plain[i] = v:gsub("^%[%[[^|]*|", ""):gsub("]]$", "")
end
local idx = 2
repeat
if plain[idx] == plain[idx-1] then
-- duplicate found
local removeidx = 0
if (plain[idx] ~= out[idx]) and (plain[idx-1] == out[idx-1]) then
-- only second one is linked, so drop the first
removeidx = idx - 1
elseif (plain[idx] == out[idx]) and (plain[idx-1] ~= out[idx-1]) then
-- only first one is linked, so drop the second
removeidx = idx
else
-- pick one
removeidx = idx - (os.time()%2)
end
table.remove(out, removeidx)
table.remove(plain, removeidx)
else
idx = idx +1
end
until idx >= #out
end
return out
end
-------------------------------------------------------------------------------
-- _getsumofparts scans the property 'has part' (P527) for values matching a list.
-- The list (args.vlist) consists of a string of Qids separated by spaces or any usual punctuation.
-- If the matched values have a qualifer 'quantity' (P1114), those quantites are summed.
-- The sum is returned as a number (i.e. 0 if none)
-- a table of arguments is supplied implementing the usual parameters.
-------------------------------------------------------------------------------
-- Dependencies: setRanks; parseParam; parseInput; sourced; assembleoutput;
-------------------------------------------------------------------------------
local _getsumofparts = function(args)
local vallist = (args.vlist or ""):upper()
if vallist == "" then return end
args.reqranks = setRanks(args.rank)
local f = {}
f.args = args
local qid, props = parseInput(f, "", "P527")
if not qid then return 0 end
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local sum = 0
for k1, v1 in ipairs(props) do
if (onlysrc == false or sourced(v1))
and v1.mainsnak.snaktype == "value"
and v1.mainsnak.datavalue.type == "wikibase-entityid"
and vallist:match( v1.mainsnak.datavalue.value.id )
and v1.qualifiers
then
local quals = v1.qualifiers["P1114"]
if quals then
for k2, v2 in ipairs(quals) do
sum = sum + v2.datavalue.value.amount
end
end
end
end
return sum
end
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-- Public functions
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-- _getValue makes the functionality of getValue available to other modules
-------------------------------------------------------------------------------
-- Dependencies: setRanks; parseInput; propertyvalueandquals; assembleoutput; parseParam; sourced;
-- labelOrId; i18n.latestdatequalifier; format_Date; makeOrdinal; roundto; decimalPrecision; decimalToDMS;
-------------------------------------------------------------------------------
p._getValue = function(args)
-- parameter sets for commonly used groups of parameters
local paraset = tonumber(args.ps or args.parameterset or 0)
if paraset == 1 then
-- a common setting
args.rank = "best"
args.fetchwikidata = "ALL"
args.onlysourced = "no"
args.noicon = "true"
elseif paraset == 2 then
-- equivalent to raw
args.rank = "best"
args.fetchwikidata = "ALL"
args.onlysourced = "no"
args.noicon = "true"
args.linked = "no"
args.pd = "true"
elseif paraset == 3 then
-- third set goes here
end
-- implement eid parameter
local eid = args.eid
if eid == "" then
return nil
elseif eid then
args.qid = eid
end
local propertyID = mw.text.trim(args[1] or "")
args.reqranks = setRanks(args.rank)
-- replacetext (rt) is a string that is returned instead of any non-empty Wikidata value
-- this is useful for tracking and debugging, so we set fetchwikidata=ALL to fill the whitelist
local replacetext = mw.text.trim(args.rt or args.replacetext or "")
if replacetext ~= "" then
args.fetchwikidata = "ALL"
end
local f = {}
f.args = args
local entityid, props = parseInput(f, f.args[2], propertyID)
if not entityid then
return props -- either the input parameter or nothing
end
-- qual is a string containing the property ID of the qualifier(s) to be returned
-- if qual == "ALL" then all qualifiers returned
-- if qual == "DATES" then qualifiers P580 (start time) and P582 (end time) returned
-- if nothing or an empty string is passed set it nil -> no qualifiers returned
local qualID = mw.text.trim(args.qual or ""):upper()
if qualID == "" then qualID = nil end
-- set a language object and code in the args table
args.langobj = findLang(args.lang)
args.lang = args.langobj.code
-- table 'out' stores the return value(s):
local out = propertyvalueandquals(props, args, qualID)
-- format the table of values and return it as a string:
return assembleoutput(out, args, entityid, propertyID)
end
-------------------------------------------------------------------------------
-- getValue is used to get the value(s) of a property
-- The property ID is passed as the first unnamed parameter and is required.
-- A locally supplied parameter may optionaly be supplied as the second unnamed parameter.
-- The function will now also return qualifiers if parameter qual is supplied
-------------------------------------------------------------------------------
-- Dependencies: _getValue; setRanks; parseInput; propertyvalueandquals; assembleoutput; parseParam; sourced;
-- labelOrId; i18n.latestdatequalifier; format_Date; makeOrdinal; roundto; decimalPrecision; decimalToDMS;
-------------------------------------------------------------------------------
p.getValue = function(frame)
local args= frame.args
if not args[1] then
args = frame:getParent().args
if not args[1] then return i18n.errors["No property supplied"] end
end
return p._getValue(args)
end
-------------------------------------------------------------------------------
-- getPreferredValue is used to get a value,
-- (or a comma separated list of them if multiple values exist).
-- If preferred ranks are set, it will return those values, otherwise values with normal ranks
-- now redundant to getValue with |rank=best
-------------------------------------------------------------------------------
-- Dependencies: p.getValue; setRanks; parseInput; propertyvalueandquals; assembleoutput;
-- parseParam; sourced; labelOrId; i18n.latestdatequalifier; format_Date;
-- makeOrdinal; roundto; decimalPrecision; decimalToDMS;
-------------------------------------------------------------------------------
p.getPreferredValue = function(frame)
frame.args.rank = "best"
return p.getValue(frame)
end
-------------------------------------------------------------------------------
-- getCoords is used to get coordinates for display in an infobox
-- whitelist and blacklist are implemented
-- optional 'display' parameter is allowed, defaults to nil - was "inline, title"
-------------------------------------------------------------------------------
-- Dependencies: setRanks(); parseInput(); decimalPrecision();
-------------------------------------------------------------------------------
p.getCoords = function(frame)
local propertyID = "P625"
-- if there is a 'display' parameter supplied, use it
-- otherwise default to nothing
local disp = frame.args.display or ""
if disp == "" then
disp = nil -- default to not supplying display parameter, was "inline, title"
end
-- there may be a format parameter to switch from deg/min/sec to decimal degrees
-- default is deg/min/sec
-- decimal degrees needs |format = dec
local form = (frame.args.format or ""):lower():sub(1,3)
if form ~= "dec" then
form = "dms"
end
-- just deal with best values
frame.args.reqranks = setRanks("best")
local qid, props = parseInput(frame, frame.args[1], propertyID)
if not qid then
return props -- either local parameter or nothing
else
local dv = props[1].mainsnak.datavalue.value
local lat, long, prec = dv.latitude, dv.longitude, dv.precision
lat = decimalPrecision(lat, prec)
long = decimalPrecision(long, prec)
local lat_long = { lat, long }
lat_long["display"] = disp
lat_long["format"] = form
-- invoke template Coord with the values stored in the table
return frame:expandTemplate{title = 'coord', args = lat_long}
end
end
-------------------------------------------------------------------------------
-- getQualifierValue is used to get a formatted value of a qualifier
--
-- The call needs: a property (the unnamed parameter or 1=)
-- a target value for that property (pval=)
-- a qualifier for that target value (qual=)
-- The usual whitelisting and blacklisting of the property is implemented
-- The boolean onlysourced= parameter can be set to return nothing
-- when the property is unsourced (or only sourced to Wikipedia)
-------------------------------------------------------------------------------
-- Dependencies: parseParam(); setRanks(); parseInput(); sourced();
-- propertyvalueandquals(); assembleoutput();
-- labelOrId(); i18n.latestdatequalifier(); format_Date();
-- findLang(); makeOrdinal(); roundto(); decimalPrecision(); decimalToDMS();
-------------------------------------------------------------------------------
p.getQualifierValue = function(frame)
-- The property ID that will have a qualifier is the first unnamed parameter
local propertyID = mw.text.trim(frame.args[1] or "")
-- The value of the property we want to match whose qualifier value is to be returned
-- is passed in named parameter |pval=
local propvalue = frame.args.pval
-- The property ID of the qualifier
-- whose value is to be returned is passed in named parameter |qual=
local qualifierID = frame.args.qual
-- A filter can be set like this: filter=P642==Q22674854
local filter, fprop, fval
local ftable = mw.text.split(frame.args.filter or "", "==")
if ftable[2] then
fprop = mw.text.trim(ftable[1])
fval = mw.text.trim(ftable[2])
filter = true
end
-- onlysourced is a boolean passed to return qualifiers
-- only when property values are sourced to something other than Wikipedia
-- if nothing or an empty string is passed set it true
-- if "false" or "no" or 0 is passed set it false
local onlysrc = parseParam(frame.args.onlysourced or frame.args.osd, true)
-- set a language object and language code in the frame.args table
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
-- set the requested ranks flags
frame.args.reqranks = setRanks(frame.args.rank)
-- check for locally supplied parameter in second unnamed parameter
-- success means no local parameter and the property exists
local qid, props = parseInput(frame, frame.args[2], propertyID)
if qid then
local out = {}
-- Scan through the values of the property
-- we want something like property is P793, significant event (in propertyID)
-- whose value is something like Q385378, construction (in propvalue)
-- then we can return the value(s) of a qualifier such as P580, start time (in qualifierID)
for k1, v1 in pairs(props) do
if v1.mainsnak.snaktype == "value" and v1.mainsnak.datavalue.type == "wikibase-entityid" then
-- It's a wiki-linked value, so check if it's the target (in propvalue) and if it has qualifiers
if v1.mainsnak.datavalue.value.id == propvalue and v1.qualifiers then
if onlysrc == false or sourced(v1) then
-- if we've got this far, we have a (sourced) claim with qualifiers
-- which matches the target, so apply the filter and find the value(s) of the qualifier we want
if not filter or (v1.qualifiers[fprop] and v1.qualifiers[fprop][1].datavalue.value.id == fval) then
local quals = v1.qualifiers[qualifierID]
if quals then
-- can't reference qualifer, so set onlysourced = "no" (args are strings, not boolean)
local qargs = frame.args
qargs.onlysourced = "no"
local vals = propertyvalueandquals(quals, qargs, qid)
for k, v in ipairs(vals) do
out[#out + 1] = v
end
end
end
end -- of check for sourced
end -- of check for matching required value and has qualifiers
end -- of check for wikibase entity
end -- of loop through values of propertyID
return assembleoutput(out, frame.args, qid, propertyID)
else
return props -- either local parameter or nothing
end -- of test for success
return nil
end
-------------------------------------------------------------------------------
-- getSumOfParts scans the property 'has part' (P527) for values matching a list.
-- The list is passed in parameter vlist.
-- It consists of a string of Qids separated by spaces or any usual punctuation.
-- If the matched values have a qualifier 'quantity' (P1114), those quantities are summed.
-- The sum is returned as a number or nothing if zero.
-------------------------------------------------------------------------------
-- Dependencies: _getsumofparts;
-------------------------------------------------------------------------------
p.getSumOfParts = function(frame)
local sum = _getsumofparts(frame.args)
if sum == 0 then return end
return sum
end
-------------------------------------------------------------------------------
-- getValueByQual gets the value of a property which has a qualifier with a given entity value
-- The call needs:
-- a property ID (the unnamed parameter or 1=Pxxx)
-- the ID of a qualifier for that property (qualID=Pyyy)
-- either the Wikibase-entity ID of a value for that qualifier (qvalue=Qzzz)
-- or a string value for that qualifier (qvalue=abc123)
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-------------------------------------------------------------------------------
-- Dependencies: _getvaluebyqual; parseParam; setRanks; parseInput; sourced;
-- assembleoutput;
-------------------------------------------------------------------------------
p.getValueByQual = function(frame)
local qualID = frame.args.qualID
-- The Q-id of the value for the qualifier we want to match is in named parameter |qvalue=
local qval = frame.args.qvalue or ""
if qval == "" then return "no qualifier value supplied" end
local function checkQID(id)
return id == qval
end
return _getvaluebyqual(frame, qualID, checkQID)
end
-------------------------------------------------------------------------------
-- getValueByLang gets the value of a property which has a qualifier P407
-- ("language of work or name") whose value has the given language code
-- The call needs:
-- a property ID (the unnamed parameter or 1=Pxxx)
-- the MediaWiki language code to match the language (lang=xx[-yy])
-- (if no code is supplied, it uses the default language)
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-------------------------------------------------------------------------------
-- Dependencies: _getvaluebyqual; parseParam; setRanks; parseInput; sourced; assembleoutput;
-------------------------------------------------------------------------------
p.getValueByLang = function(frame)
-- The language code for the qualifier we want to match is in named parameter |lang=
local langcode = findLang(frame.args.lang).code
local function checkLanguage(id)
-- id should represent a language like "British English (Q7979)"
-- it should have string property "Wikimedia language code (P424)"
-- qlcode will be a table:
local qlcode = mw.wikibase.getBestStatements(id, "P424")
if (#qlcode > 0) and (qlcode[1].mainsnak.datavalue.value == langcode) then
return true
end
end
return _getvaluebyqual(frame, "P407", checkLanguage)
end
-------------------------------------------------------------------------------
-- getValueByRefSource gets the value of a property which has a reference "stated in" (P248)
-- whose value has the given entity-ID.
-- The call needs:
-- a property ID (the unnamed parameter or 1=Pxxx)
-- the entity ID of a value to match where the reference is stated in (match=Qzzz)
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p.getValueByRefSource = function(frame)
-- The property ID that we want to check is the first unnamed parameter
local propertyID = mw.text.trim(frame.args[1] or ""):upper()
if propertyID == "" then return "no property supplied" end
-- The Q-id of the value we want to match is in named parameter |qvalue=
local qval = (frame.args.match or ""):upper()
if qval == "" then qval = "Q21540096" end
local unit = (frame.args.unit or ""):upper()
if unit == "" then unit = "Q4917" end
local onlysrc = parseParam(frame.args.onlysourced or frame.args.osd, true)
-- set the requested ranks flags
frame.args.reqranks = setRanks(frame.args.rank)
-- set a language object and code in the frame.args table
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
local linked = parseParam(frame.args.linked, true)
local uabbr = parseParam(frame.args.uabbr or frame.args.unitabbr, false)
-- qid not nil means no local parameter and the property exists
local qid, props = parseInput(frame, frame.args[2], propertyID)
if qid then
local out = {}
local mlt= {}
for k1, v1 in ipairs(props) do
if onlysrc == false or sourced(v1) then
if v1.references then
for k2, v2 in ipairs(v1.references) do
if v2.snaks.P248 then
for k3, v3 in ipairs(v2.snaks.P248) do
if v3.datavalue.value.id == qval then
out[#out+1], mlt[#out+1] = rendersnak(v1, frame.args, linked, "", "", "", "", uabbr, unit)
if not mlt[#out] then
-- we only need one match per property value
-- unless datatype was monolingual text
break
end
end -- of test for match
end -- of loop through values "stated in"
end -- of test that "stated in" exists
end -- of loop through references
end -- of test that references exist
end -- of test for sourced
end -- of loop through values of propertyID
if #mlt > 0 then
local langcode = frame.args.lang
langcode = mw.text.split( langcode, '-', true )[1]
local fbtbl = mw.language.getFallbacksFor( langcode )
table.insert( fbtbl, 1, langcode )
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 assembleoutput(out, frame.args, qid, propertyID)
else
return props -- no property or local parameter supplied
end -- of test for success
end
-------------------------------------------------------------------------------
-- getPropertyIDs takes most of the usual parameters.
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented.
-- It returns the Entity-IDs (Qids) of the values of a property if it is a Wikibase-Entity.
-- Otherwise it returns nothing.
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p._getPropertyIDs = function(args)
args.reqranks = setRanks(args.rank)
args.langobj = findLang(args.lang)
args.lang = args.langobj.code
-- change default for noicon to true
args.noicon = tostring(parseParam(args.noicon or "", true))
local f = {}
f.args = args
local pid = mw.text.trim(args[1] or ""):upper()
-- get the qid and table of claims for the property, or nothing and the local value passed
local qid, props = parseInput(f, args[2], pid)
if not qid then return props end
if not props[1] then return nil end
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local maxvals = tonumber(args.maxvals) or 0
local out = {}
for i, v in ipairs(props) do
local snak = v.mainsnak
if ( snak.datatype == "wikibase-item" )
and ( v.rank and args.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 assembleoutput(out, args, qid, pid)
end
p.getPropertyIDs = function(frame)
local args = frame.args
return p._getPropertyIDs(args)
end
-------------------------------------------------------------------------------
-- getQualifierIDs takes most of the usual parameters.
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented.
-- It takes a property-id as the first unnamed parameter, and an optional parameter qlist
-- which is a list of qualifier property-ids to search for (default is "ALL")
-- It returns the Entity-IDs (Qids) of the values of a property if it is a Wikibase-Entity.
-- Otherwise it returns nothing.
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p.getQualifierIDs = function(frame)
local args = frame.args
args.reqranks = setRanks(args.rank)
args.langobj = findLang(args.lang)
args.lang = args.langobj.code
-- change default for noicon to true
args.noicon = tostring(parseParam(args.noicon or "", true))
local f = {}
f.args = args
local pid = mw.text.trim(args[1] or ""):upper()
-- get the qid and table of claims for the property, or nothing and the local value passed
local qid, props = parseInput(f, args[2], pid)
if not qid then return props end
if not props[1] then return nil end
-- get the other parameters
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local maxvals = tonumber(args.maxvals) or 0
local qlist = args.qlist or ""
if qlist == "" then qlist = "ALL" end
qlist = qlist:gsub("[%p%s]+", " ") .. " "
local out = {}
for i, v in ipairs(props) do
local snak = v.mainsnak
if ( v.rank and args.reqranks[v.rank:sub(1, 1)] )
and ( snak.snaktype == "value" )
and ( sourced(v) or not onlysrc )
then
if v.qualifiers then
for k1, v1 in pairs(v.qualifiers) do
if qlist == "ALL " or qlist:match(k1 .. " ") then
for i2, v2 in ipairs(v1) do
if v2.datatype == "wikibase-item" and v2.snaktype == "value" then
out[#out+1] = v2.datavalue.value.id
end -- of test that id exists
end -- of loop through qualifier values
end -- of test for kq in qlist
end -- of loop through qualifiers
end -- of test for qualifiers
end -- of test for rank value, sourced, and value exists
if maxvals > 0 and #out >= maxvals then break end
end -- of loop through property values
return assembleoutput(out, args, qid, pid)
end
-------------------------------------------------------------------------------
-- getPropOfProp takes two propertyIDs: prop1 and prop2 (as well as the usual parameters)
-- If the value(s) of prop1 are of type "wikibase-item" then it returns the value(s) of prop2
-- of each of those wikibase-items.
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p._getPropOfProp = function(args)
-- parameter sets for commonly used groups of parameters
local paraset = tonumber(args.ps or args.parameterset or 0)
if paraset == 1 then
-- a common setting
args.rank = "best"
args.fetchwikidata = "ALL"
args.onlysourced = "no"
args.noicon = "true"
elseif paraset == 2 then
-- equivalent to raw
args.rank = "best"
args.fetchwikidata = "ALL"
args.onlysourced = "no"
args.noicon = "true"
args.linked = "no"
args.pd = "true"
elseif paraset == 3 then
-- third set goes here
end
args.reqranks = setRanks(args.rank)
args.langobj = findLang(args.lang)
args.lang = args.langobj.code
local pid1 = args.prop1 or args.pid1 or ""
local pid2 = args.prop2 or args.pid2 or ""
if pid1 == "" or pid2 == "" then return nil end
local f = {}
f.args = args
local qid1, statements1 = parseInput(f, args[1], pid1)
-- parseInput nulls empty args[1] and returns args[1] if nothing on Wikidata
if not qid1 then return statements1 end
-- otherwise it returns the qid and a table for the statement
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local maxvals = tonumber(args.maxvals) or 0
local qualID = mw.text.trim(args.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = {}
for k, v in ipairs(statements1) do
if not onlysrc or sourced(v) then
local snak = v.mainsnak
if snak.datatype == "wikibase-item" and snak.snaktype == "value" then
local qid2 = snak.datavalue.value.id
local statements2 = {}
if args.reqranks.b then
statements2 = mw.wikibase.getBestStatements(qid2, pid2)
else
statements2 = mw.wikibase.getAllStatements(qid2, pid2)
end
if statements2[1] then
local out2 = propertyvalueandquals(statements2, args, qualID)
out[#out+1] = assembleoutput(out2, args, qid2, pid2)
end
end -- of test for valid property1 value
end -- of test for sourced
if maxvals > 0 and #out >= maxvals then break end
end -- of loop through values of property1
return assembleoutput(out, args, qid1, pid1)
end
p.getPropOfProp = function(frame)
local args= frame.args
if not args.prop1 and not args.pid1 then
args = frame:getParent().args
if not args.prop1 and not args.pid1 then return i18n.errors["No property supplied"] end
end
return p._getPropOfProp(args)
end
-------------------------------------------------------------------------------
-- getAwardCat takes most of the usual parameters. If the item has values of P166 (award received),
-- then it examines each of those awards for P2517 (category for recipients of this award).
-- If it exists, it returns the corresponding category,
-- with the item's P734 (family name) as sort key, or no sort key if there is no family name.
-- The sort key may be overridden by the parameter |sortkey (alias |sk).
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p.getAwardCat = function(frame)
frame.args.reqranks = setRanks(frame.args.rank)
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
local args = frame.args
args.sep = " "
local pid1 = args.prop1 or "P166"
local pid2 = args.prop2 or "P2517"
if pid1 == "" or pid2 == "" then return nil end
-- locally supplied value:
local localval = mw.text.trim(args[1] or "")
local qid1, statements1 = parseInput(frame, localval, pid1)
if not qid1 then return localval end
-- linkprefix (strip quotes)
local lp = (args.linkprefix or args.lp or ""):gsub('"', '')
-- sort key (strip quotes, hyphens and periods):
local sk = (args.sortkey or args.sk or ""):gsub('["-.]', '')
-- family name:
local famname = ""
if sk == "" then
local p734 = mw.wikibase.getBestStatements(qid1, "P734")[1]
local p734id = p734 and p734.mainsnak.snaktype == "value" and p734.mainsnak.datavalue.value.id or ""
famname = mw.wikibase.getSitelink(p734id) or ""
-- strip namespace and disambigation
local pos = famname:find(":") or 0
famname = famname:sub(pos+1):gsub("%s%(.+%)$", "")
if famname == "" then
local lbl = mw.wikibase.getLabel(p734id)
famname = lbl and mw.text.nowiki(lbl) or ""
end
end
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local maxvals = tonumber(args.maxvals) or 0
local qualID = mw.text.trim(args.qual or ""):upper()
if qualID == "" then qualID = nil end
local out = {}
for k, v in ipairs(statements1) do
if not onlysrc or sourced(v) then
local snak = v.mainsnak
if snak.datatype == "wikibase-item" and snak.snaktype == "value" then
local qid2 = snak.datavalue.value.id
local statements2 = {}
if args.reqranks.b then
statements2 = mw.wikibase.getBestStatements(qid2, pid2)
else
statements2 = mw.wikibase.getAllStatements(qid2, pid2)
end
if statements2[1] and statements2[1].mainsnak.snaktype == "value" then
local qid3 = statements2[1].mainsnak.datavalue.value.id
local sitelink = mw.wikibase.getSitelink(qid3)
-- if there's no local sitelink, create the sitelink from English label
if not sitelink then
local lbl = mw.wikibase.getLabelByLang(qid3, "en")
if lbl then
if lbl:sub(1,9) == "Category:" then
sitelink = mw.text.nowiki(lbl)
else
sitelink = "Category:" .. mw.text.nowiki(lbl)
end
end
end
if sitelink then
if sk ~= "" then
out[#out+1] = "[[" .. lp .. sitelink .. "|" .. sk .. "]]"
elseif famname ~= "" then
out[#out+1] = "[[" .. lp .. sitelink .. "|" .. famname .. "]]"
else
out[#out+1] = "[[" .. lp .. sitelink .. "]]"
end -- of check for sort keys
end -- of test for sitelink
end -- of test for category
end -- of test for wikibase item has a value
end -- of test for sourced
if maxvals > 0 and #out >= maxvals then break end
end -- of loop through values of property1
return assembleoutput(out, args, qid1, pid1)
end
-------------------------------------------------------------------------------
-- getIntersectCat takes most of the usual parameters.
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented
-- It takes two properties, |prop1 and |prop2 (e.g. occupation and country of citizenship)
-- Each property's value is a wiki-base entity
-- For each value of the first parameter (ranks implemented) it fetches the value's main category
-- and then each value of the second parameter (possibly substituting a simpler description)
-- then it returns all of the categories representing the intersection of those properties,
-- (e.g. Category:Actors from Canada). A joining term may be supplied (e.g. |join=from).
-- The item's P734 (family name) is the sort key, or no sort key if there is no family name.
-- The sort key may be overridden by the parameter |sortkey (alias |sk).
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced; propertyvalueandquals assembleoutput;
-------------------------------------------------------------------------------
p.getIntersectCat = function(frame)
frame.args.reqranks = setRanks(frame.args.rank)
frame.args.langobj = findLang(frame.args.lang)
frame.args.lang = frame.args.langobj.code
local args = frame.args
args.sep = " "
args.linked = "no"
local pid1 = args.prop1 or "P106"
local pid2 = args.prop2 or "P27"
if pid1 == "" or pid2 == "" then return nil end
local qid, statements1 = parseInput(frame, "", pid1)
if not qid then return nil end
local qid, statements2 = parseInput(frame, "", pid2)
if not qid then return nil end
-- topics like countries may have different names in categories from their label in Wikidata
local subs_exists, subs = pcall(mw.loadData, "Module:WikidataIB/subs")
local join = args.join or ""
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local maxvals = tonumber(args.maxvals) or 0
-- linkprefix (strip quotes)
local lp = (args.linkprefix or args.lp or ""):gsub('"', '')
-- sort key (strip quotes, hyphens and periods):
local sk = (args.sortkey or args.sk or ""):gsub('["-.]', '')
-- family name:
local famname = ""
if sk == "" then
local p734 = mw.wikibase.getBestStatements(qid, "P734")[1]
local p734id = p734 and p734.mainsnak.snaktype == "value" and p734.mainsnak.datavalue.value.id or ""
famname = mw.wikibase.getSitelink(p734id) or ""
-- strip namespace and disambigation
local pos = famname:find(":") or 0
famname = famname:sub(pos+1):gsub("%s%(.+%)$", "")
if famname == "" then
local lbl = mw.wikibase.getLabel(p734id)
famname = lbl and mw.text.nowiki(lbl) or ""
end
end
local cat1 = {}
for k, v in ipairs(statements1) do
if not onlysrc or sourced(v) then
-- get the ID representing the value of the property
local pvalID = (v.mainsnak.snaktype == "value") and v.mainsnak.datavalue.value.id
if pvalID then
-- get the topic's main category (P910) for that entity
local p910 = mw.wikibase.getBestStatements(pvalID, "P910")[1]
if p910 and p910.mainsnak.snaktype == "value" then
local tmcID = p910.mainsnak.datavalue.value.id
-- use sitelink or the English label for the cat
local cat = mw.wikibase.getSitelink(tmcID)
if not cat then
local lbl = mw.wikibase.getLabelByLang(tmcID, "en")
if lbl then
if lbl:sub(1,9) == "Category:" then
cat = mw.text.nowiki(lbl)
else
cat = "Category:" .. mw.text.nowiki(lbl)
end
end
end
cat1[#cat1+1] = cat
end -- of test for topic's main category exists
end -- of test for property has vaild value
end -- of test for sourced
if maxvals > 0 and #cat1 >= maxvals then break end
end
local cat2 = {}
for k, v in ipairs(statements2) do
if not onlysrc or sourced(v) then
local cat = rendersnak(v, args)
if subs[cat] then cat = subs[cat] end
cat2[#cat2+1] = cat
end
if maxvals > 0 and #cat2 >= maxvals then break end
end
local out = {}
for k1, v1 in ipairs(cat1) do
for k2, v2 in ipairs(cat2) do
if sk ~= "" then
out[#out+1] = "[[" .. lp .. v1 .. " " .. join .. " " .. v2 .. "|" .. sk .. "]]"
elseif famname ~= "" then
out[#out+1] = "[[" .. lp .. v1 .. " " .. join .. " " .. v2 .. "|" .. famname .. "]]"
else
out[#out+1] = "[[" .. lp .. v1 .. " " .. join .. " " .. v2 .. "]]"
end -- of check for sort keys
end
end
args.noicon = "true"
return assembleoutput(out, args, qid, pid1)
end
-------------------------------------------------------------------------------
-- qualsToTable takes most of the usual parameters.
-- The usual whitelisting, blacklisting, onlysourced, etc. are implemented.
-- A qid may be given, and the first unnamed parameter is the property ID, which is of type wikibase item.
-- It takes a list of qualifier property IDs as |quals=
-- For a given qid and property, it creates the rows of an html table,
-- each row being a value of the property (optionally only if the property matches the value in |pval= )
-- each cell being the first value of the qualifier corresponding to the list in |quals
-------------------------------------------------------------------------------
-- Dependencies: parseParam; setRanks; parseInput; sourced;
-------------------------------------------------------------------------------
p.qualsToTable = function(frame)
local args = frame.args
local quals = args.quals or ""
if quals == "" then return "" end
args.reqranks = setRanks(args.rank)
local propertyID = mw.text.trim(args[1] or "")
local f = {}
f.args = args
local entityid, props = parseInput(f, "", propertyID)
if not entityid then return "" end
args.langobj = findLang(args.lang)
args.lang = args.langobj.code
local pval = args.pval or ""
local qplist = mw.text.split(quals, "%p") -- split at punctuation and make a sequential table
for i, v in ipairs(qplist) do
qplist[i] = mw.text.trim(v):upper() -- remove whitespace and capitalise
end
local col1 = args.firstcol or ""
if col1 ~= "" then
col1 = col1 .. "</td><td>"
end
local emptycell = args.emptycell or " "
-- construct a 2-D array of qualifier values in qvals
local qvals = {}
for i, v in ipairs(props) do
local skip = false
if pval ~= "" then
local pid = v.mainsnak.datavalue and v.mainsnak.datavalue.value.id
if pid ~= pval then skip = true end
end
if not skip then
local qval = {}
local vqualifiers = v.qualifiers or {}
-- go through list of wanted qualifier properties
for i1, v1 in ipairs(qplist) do
-- check for that property ID in the statement's qualifiers
local qv, qtype
if vqualifiers[v1] then
qtype = vqualifiers[v1][1].datatype
if qtype == "time" then
if vqualifiers[v1][1].snaktype == "value" then
qv = mw.wikibase.renderSnak(vqualifiers[v1][1])
qv = frame:expandTemplate{title="dts", args={qv}}
else
qv = "?"
end
elseif qtype == "url" then
if vqualifiers[v1][1].snaktype == "value" then
qv = mw.wikibase.renderSnak(vqualifiers[v1][1])
local display = mw.ustring.match( mw.uri.decode(qv, "WIKI"), "([%w ]+)$" )
if display then
qv = "[" .. qv .. " " .. display .. "]"
end
end
else
qv = mw.wikibase.formatValue(vqualifiers[v1][1])
end
end
-- record either the value or a placeholder
qval[i1] = qv or emptycell
end -- of loop through list of qualifiers
-- add the list of qualifier values as a "row" in the main list
qvals[#qvals+1] = qval
end
end -- of for each value loop
local out = {}
for i, v in ipairs(qvals) do
out[i] = "<tr><td>" .. col1 .. table.concat(qvals[i], "</td><td>") .. "</td></tr>"
end
return table.concat(out, "\n")
end
-------------------------------------------------------------------------------
-- getGlobe takes an optional qid of a Wikidata entity passed as |qid=
-- otherwise it uses the linked item for the current page.
-- If returns the Qid of the globe used in P625 (coordinate location),
-- or nil if there isn't one.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getGlobe = function(frame)
local qid = frame.args.qid or frame.args[1] or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
local coords = mw.wikibase.getBestStatements(qid, "P625")[1]
local globeid
if coords and coords.mainsnak.snaktype == "value" then
globeid = coords.mainsnak.datavalue.value.globe:match("(Q%d+)")
end
return globeid
end
-------------------------------------------------------------------------------
-- getCommonsLink takes an optional qid of a Wikidata entity passed as |qid=
-- It returns one of the following in order of preference:
-- the Commons sitelink of the linked Wikidata item;
-- the Commons sitelink of the topic's main category of the linked Wikidata item;
-------------------------------------------------------------------------------
-- Dependencies: _getCommonslink(); _getSitelink(); parseParam()
-------------------------------------------------------------------------------
p.getCommonsLink = function(frame)
local oc = frame.args.onlycat or frame.args.onlycategories
local fb = parseParam(frame.args.fallback or frame.args.fb, true)
return _getCommonslink(frame.args.qid, oc, fb)
end
-------------------------------------------------------------------------------
-- getSitelink takes the qid of a Wikidata entity passed as |qid=
-- It takes an optional parameter |wiki= to determine which wiki is to be checked for a sitelink
-- If the parameter is blank, then it uses the local wiki.
-- If there is a sitelink to an article available, it returns the plain text link to the article
-- If there is no sitelink, it returns nil.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getSiteLink = function(frame)
return _getSitelink(frame.args.qid, frame.args.wiki or mw.text.trim(frame.args[1] or ""))
end
-------------------------------------------------------------------------------
-- getLink has the qid of a Wikidata entity passed as the first unnamed parameter or as |qid=
-- If there is a sitelink to an article on the local Wiki, it returns a link to the article
-- with the Wikidata label as the displayed text.
-- If there is no sitelink, it returns the label as plain text.
-- If there is no label in the local language, it displays the qid instead.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getLink = function(frame)
local itemID = mw.text.trim(frame.args[1] or frame.args.qid or "")
if itemID == "" then return end
local sitelink = mw.wikibase.getSitelink(itemID)
local label = labelOrId(itemID)
if sitelink then
return "[[:" .. sitelink .. "|" .. label .. "]]"
else
return label
end
end
-------------------------------------------------------------------------------
-- getLabel has the qid of a Wikidata entity passed as the first unnamed parameter or as |qid=
-- It returns the Wikidata label for the local language as plain text.
-- If there is no label in the local language, it displays the qid instead.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getLabel = function(frame)
local itemID = mw.text.trim(frame.args[1] or frame.args.qid or "")
if itemID == "" then return end
local lang = frame.args.lang or ""
if lang == "" then lang = nil end
local label = labelOrId(itemID, lang)
return label
end
-------------------------------------------------------------------------------
-- label has the qid of a Wikidata entity passed as the first unnamed parameter or as |qid=
-- if no qid is supplied, it uses the qid associated with the current page.
-- It returns the Wikidata label for the local language as plain text.
-- If there is no label in the local language, it returns nil.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.label = function(frame)
local qid = mw.text.trim(frame.args[1] or frame.args.qid or "")
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return end
local lang = frame.args.lang or ""
if lang == "" then lang = nil end
local label, success = labelOrId(qid, lang)
if success then return label end
end
-------------------------------------------------------------------------------
-- getAT (Article Title)
-- has the qid of a Wikidata entity passed as the first unnamed parameter or as |qid=
-- If there is a sitelink to an article on the local Wiki, it returns the sitelink as plain text.
-- If there is no sitelink or qid supplied, it returns nothing.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getAT = function(frame)
local itemID = mw.text.trim(frame.args[1] or frame.args.qid or "")
if itemID == "" then return end
return mw.wikibase.getSitelink(itemID)
end
-------------------------------------------------------------------------------
-- getDescription has the qid of a Wikidata entity passed as |qid=
-- (it defaults to the associated qid of the current article if omitted)
-- and a local parameter passed as the first unnamed parameter.
-- Any local parameter passed (other than "Wikidata" or "none") becomes the return value.
-- It returns the article description for the Wikidata entity if the local parameter is "Wikidata".
-- Nothing is returned if the description doesn't exist or "none" is passed as the local parameter.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getDescription = function(frame)
local desc = mw.text.trim(frame.args[1] or "")
local itemID = mw.text.trim(frame.args.qid or "")
if itemID == "" then itemID = nil end
if desc:lower() == 'wikidata' then
return mw.wikibase.getDescription(itemID)
elseif desc:lower() == 'none' then
return nil
else
return desc
end
end
-------------------------------------------------------------------------------
-- getAliases has the qid of a Wikidata entity passed as |qid=
-- (it defaults to the associated qid of the current article if omitted)
-- and a local parameter passed as the first unnamed parameter.
-- It implements blacklisting and whitelisting with a field name of "alias" by default.
-- Any local parameter passed becomes the return value.
-- Otherwise it returns the aliases for the Wikidata entity with the usual list options.
-- Nothing is returned if the aliases do not exist.
-------------------------------------------------------------------------------
-- Dependencies: findLang(); assembleoutput()
-------------------------------------------------------------------------------
p.getAliases = function(frame)
local args = frame.args
local fieldname = args.name or ""
if fieldname == "" then fieldname = "alias" end
local blacklist = args.suppressfields or args.spf or ""
if blacklist:find(fieldname) then return nil end
local localval = mw.text.trim(args[1] or "")
if localval ~= "" then return localval end
local whitelist = args.fetchwikidata or args.fwd or ""
if whitelist == "" then whitelist = "NONE" end
if not (whitelist == 'ALL' or whitelist:find(fieldname)) then return nil end
local qid = args.qid or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid or not mw.wikibase.entityExists(qid) then return nil end
local aliases = mw.wikibase.getEntity(qid).aliases
if not aliases then return nil end
args.langobj = findLang(args.lang)
local langcode = args.langobj.code
args.lang = langcode
local out = {}
for k1, v1 in pairs(aliases) do
if v1[1].language == langcode then
for k1, v2 in ipairs(v1) do
out[#out+1] = v2.value
end
break
end
end
return assembleoutput(out, args, qid)
end
-------------------------------------------------------------------------------
-- pageId returns the page id (entity ID, Qnnn) of the current page
-- returns nothing if the page is not connected to Wikidata
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.pageId = function(frame)
return mw.wikibase.getEntityIdForCurrentPage()
end
-------------------------------------------------------------------------------
-- formatDate is a wrapper to export the private function format_Date
-------------------------------------------------------------------------------
-- Dependencies: format_Date();
-------------------------------------------------------------------------------
p.formatDate = function(frame)
return format_Date(frame.args[1], frame.args.df, frame.args.bc)
end
-------------------------------------------------------------------------------
-- location is a wrapper to export the private function _location
-- it takes the entity-id as qid or the first unnamed parameter
-- optional boolean parameter first toggles the display of the first item
-- optional boolean parameter skip toggles the display to skip to the last item
-- parameter debug=<y/n> (default 'n') adds error msg if not a location
-------------------------------------------------------------------------------
-- Dependencies: _location();
-------------------------------------------------------------------------------
p.location = function(frame)
local debug = (frame.args.debug or ""):sub(1, 1):lower()
if debug == "" then debug = "n" end
local qid = mw.text.trim(frame.args.qid or frame.args[1] or ""):upper()
if qid == "" then qid=mw.wikibase.getEntityIdForCurrentPage() end
if not qid then
if debug ~= "n" then
return i18n.errors["entity-not-found"]
else
return nil
end
end
local first = mw.text.trim(frame.args.first or "")
local skip = mw.text.trim(frame.args.skip or "")
return table.concat( _location(qid, first, skip), ", " )
end
-------------------------------------------------------------------------------
-- checkBlacklist implements a test to check whether a named field is allowed
-- returns true if the field is not blacklisted (i.e. allowed)
-- returns false if the field is blacklisted (i.e. disallowed)
-- {{#if:{{#invoke:WikidataIB |checkBlacklist |name=Joe |suppressfields=Dave; Joe; Fred}} | not blacklisted | blacklisted}}
-- displays "blacklisted"
-- {{#if:{{#invoke:WikidataIB |checkBlacklist |name=Jim |suppressfields=Dave; Joe; Fred}} | not blacklisted | blacklisted}}
-- displays "not blacklisted"
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.checkBlacklist = function(frame)
local blacklist = frame.args.suppressfields or frame.args.spf or ""
local fieldname = frame.args.name or ""
if blacklist ~= "" and fieldname ~= "" then
if blacklist:find(fieldname) then
return false
else
return true
end
else
-- one of the fields is missing: let's call that "not on the list"
return true
end
end
-------------------------------------------------------------------------------
-- emptyor returns nil if its first unnamed argument is just punctuation, whitespace or html tags
-- otherwise it returns the argument unchanged (including leading/trailing space).
-- If the argument may contain "=", then it must be called explicitly:
-- |1=arg
-- (In that case, leading and trailing spaces are trimmed)
-- It finds use in infoboxes where it can replace tests like:
-- {{#if: {{#invoke:WikidatIB |getvalue |P99 |fwd=ALL}} | <span class="xxx">{{#invoke:WikidatIB |getvalue |P99 |fwd=ALL}}</span> | }}
-- with a form that uses just a single call to Wikidata:
-- {{#invoke |WikidataIB |emptyor |1= <span class="xxx">{{#invoke:WikidataIB |getvalue |P99 |fwd=ALL}}</span> }}
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.emptyor = function(frame)
local s = frame.args[1] or ""
if s == "" then return nil end
local sx = s:gsub("%s", ""):gsub("<[^>]*>", ""):gsub("%p", "")
if sx == "" then
return nil
else
return s
end
end
-------------------------------------------------------------------------------
-- labelorid is a public function to expose the output of labelOrId()
-- Pass the Q-number as |qid= or as an unnamed parameter.
-- It returns the Wikidata label for that entity or the qid if no label exists.
-------------------------------------------------------------------------------
-- Dependencies: labelOrId
-------------------------------------------------------------------------------
p.labelorid = function(frame)
return (labelOrId(frame.args.qid or frame.args[1]))
end
-------------------------------------------------------------------------------
-- getLang returns the MediaWiki language code of the current content.
-- If optional parameter |style=full, it returns the language name.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getLang = function(frame)
local style = (frame.args.style or ""):lower()
local langcode = mw.language.getContentLanguage().code
if style == "full" then
return mw.language.fetchLanguageName( langcode )
end
return langcode
end
-------------------------------------------------------------------------------
-- getItemLangCode takes a qid parameter (using the current page's qid if blank)
-- If the item for that qid has property country (P17) it looks at the first preferred value
-- If the country has an official language (P37), it looks at the first preferred value
-- If that official language has a language code (P424), it returns the first preferred value
-- Otherwise it returns nothing.
-------------------------------------------------------------------------------
-- Dependencies: _getItemLangCode()
-------------------------------------------------------------------------------
p.getItemLangCode = function(frame)
return _getItemLangCode(frame.args.qid or frame.args[1])
end
-------------------------------------------------------------------------------
-- findLanguage exports the local findLang() function
-- It takes an optional language code and returns, in order of preference:
-- the code if a known language;
-- the user's language, if set;
-- the server's content language.
-------------------------------------------------------------------------------
-- Dependencies: findLang
-------------------------------------------------------------------------------
p.findLanguage = function(frame)
return findLang(frame.args.lang or frame.args[1]).code
end
-------------------------------------------------------------------------------
-- getQid returns the qid, if supplied
-- failing that, the Wikidata entity ID of the "category's main topic (P301)", if it exists
-- failing that, the Wikidata entity ID associated with the current page, if it exists
-- otherwise, nothing
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getQid = function(frame)
local qid = (frame.args.qid or ""):upper()
-- check if a qid was passed; if so, return it:
if qid ~= "" then return qid end
-- check if there's a "category's main topic (P301)":
qid = mw.wikibase.getEntityIdForCurrentPage()
if qid then
local prop301 = mw.wikibase.getBestStatements(qid, "P301")
if prop301[1] then
local mctid = prop301[1].mainsnak.datavalue.value.id
if mctid then return mctid end
end
end
-- otherwise return the page qid (if any)
return qid
end
-------------------------------------------------------------------------------
-- followQid takes four optional parameters: qid, props, list and all.
-- If qid is not given, it uses the qid for the connected page
-- or returns nil if there isn't one.
-- props is a list of properties, separated by punctuation.
-- If props is given, the Wikidata item for the qid is examined for each property in turn.
-- If that property contains a value that is another Wikibase-item, that item's qid is returned,
-- and the search terminates, unless |all=y when all of the qids are returned, separated by spaces.
-- If |list= is set to a template, the qids are passed as arguments to the template.
-- If props is not given, the qid is returned.
-------------------------------------------------------------------------------
-- Dependencies: parseParam()
-------------------------------------------------------------------------------
p._followQid = function(args)
local qid = (args.qid or ""):upper()
local all = parseParam(args.all, false)
local list = args.list or ""
if list == "" then list = nil end
if qid == "" then
qid = mw.wikibase.getEntityIdForCurrentPage()
end
if not qid then return nil end
local out = {}
local props = (args.props or ""):upper()
if props ~= "" then
for p in mw.text.gsplit(props, "%p") do -- split at punctuation and iterate
p = mw.text.trim(p)
for i, v in ipairs( mw.wikibase.getBestStatements(qid, p) ) do
local linkedid = v.mainsnak.datavalue and v.mainsnak.datavalue.value.id
if linkedid then
if all then
out[#out+1] = linkedid
else
return linkedid
end -- test for all or just the first one found
end -- test for value exists for that property
end -- loop through values of property to follow
end -- loop through list of properties to follow
end
if #out > 0 then
local ret = ""
if list then
ret = mw.getCurrentFrame():expandTemplate{title = list, args = out}
else
ret = table.concat(out, " ")
end
return ret
else
return qid
end
end
p.followQid = function(frame)
return p._followQid(frame.args)
end
-------------------------------------------------------------------------------
-- globalSiteID returns the globalSiteID for the current wiki
-- e.g. returns "enwiki" for the English Wikipedia, "enwikisource" for English Wikisource, etc.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.globalSiteID = function(frame)
return mw.wikibase.getGlobalSiteId()
end
-------------------------------------------------------------------------------
-- siteID returns the root of the globalSiteID
-- e.g. "en" for "enwiki", "enwikisource", etc.
-- treats "en-gb" as "en", etc.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.siteID = function(frame)
local txtlang = frame:callParserFunction('int', {'lang'}) or ""
-- This deals with specific exceptions: be-tarask -> be-x-old
if txtlang == "be-tarask" then
return "be_x_old"
end
local pos = txtlang:find("-")
local ret = ""
if pos then
ret = txtlang:sub(1, pos-1)
else
ret = txtlang
end
return ret
end
-------------------------------------------------------------------------------
-- projID returns the code used to link to the reader's language's project
-- e.g "en" for [[:en:WikidataIB]]
-- treats "en-gb" as "en", etc.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.projID = function(frame)
local txtlang = frame:callParserFunction('int', {'lang'}) or ""
-- This deals with specific exceptions: be-tarask -> be-x-old
if txtlang == "be-tarask" then
return "be-x-old"
end
local pos = txtlang:find("-")
local ret = ""
if pos then
ret = txtlang:sub(1, pos-1)
else
ret = txtlang
end
return ret
end
-------------------------------------------------------------------------------
-- formatNumber formats a number according to the the supplied language code ("|lang=")
-- or the default language if not supplied.
-- The number is the first unnamed parameter or "|num="
-------------------------------------------------------------------------------
-- Dependencies: findLang()
-------------------------------------------------------------------------------
p.formatNumber = function(frame)
local lang
local num = tonumber(frame.args[1] or frame.args.num) or 0
lang = findLang(frame.args.lang)
return lang:formatNum( num )
end
-------------------------------------------------------------------------------
-- examine dumps the property (the unnamed parameter or pid)
-- from the item given by the parameter 'qid' (or the other unnamed parameter)
-- or from the item corresponding to the current page if qid is not supplied.
-- e.g. {{#invoke:WikidataIB |examine |pid=P26 |qid=Q42}}
-- or {{#invoke:WikidataIB |examine |P26 |Q42}} or any combination of these
-- or {{#invoke:WikidataIB |examine |P26}} for the current page.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.examine = function( frame )
local args
if frame.args[1] or frame.args.pid or frame.args.qid then
args = frame.args
else
args = frame:getParent().args
end
local par = {}
local pid = (args.pid or ""):upper()
local qid = (args.qid or ""):upper()
par[1] = mw.text.trim( args[1] or "" ):upper()
par[2] = mw.text.trim( args[2] or "" ):upper()
table.sort(par)
if par[2]:sub(1,1) == "P" then par[1], par[2] = par[2], par[1] end
if pid == "" then pid = par[1] end
if qid == "" then qid = par[2] end
local q1 = qid:sub(1,1)
if pid:sub(1,1) ~= "P" then return "No property supplied" end
if q1 ~= "Q" and q1 ~= "M" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return "No item for this page" end
return "<pre>" .. mw.dumpObject( mw.wikibase.getAllStatements( qid, pid ) ) .. "</pre>"
end
-------------------------------------------------------------------------------
-- checkvalue looks for 'val' as a wikibase-item value of a property (the unnamed parameter or pid)
-- from the item given by the parameter 'qid'
-- or from the Wikidata item associated with the current page if qid is not supplied.
-- It only checks ranks that are requested (preferred and normal by default)
-- If property is not supplied, then P31 (instance of) is assumed.
-- It returns val if found or nothing if not found.
-- e.g. {{#invoke:WikidataIB |checkvalue |val=Q5 |pid=P31 |qid=Q42}}
-- or {{#invoke:WikidataIB |checkvalue |val=Q5 |P31 |qid=Q42}}
-- or {{#invoke:WikidataIB |checkvalue |val=Q5 |qid=Q42}}
-- or {{#invoke:WikidataIB |checkvalue |val=Q5 |P31}} for the current page.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.checkvalue = function( frame )
local args
if frame.args.val then
args = frame.args
else
args = frame:getParent().args
end
local val = args.val
if not val then return nil end
local pid = mw.text.trim(args.pid or args[1] or "P31"):upper()
local qid = (args.qid or ""):upper()
if pid:sub(1,1) ~= "P" then return nil end
if qid:sub(1,1) ~= "Q" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return nil end
local ranks = setRanks(args.rank)
local stats = {}
if ranks.b then
stats = mw.wikibase.getBestStatements(qid, pid)
else
stats = mw.wikibase.getAllStatements( qid, pid )
end
if not stats[1] then return nil end
if stats[1].mainsnak.datatype == "wikibase-item" then
for k, v in pairs( stats ) do
local ms = v.mainsnak
if ranks[v.rank:sub(1,1)] and ms.snaktype == "value" and ms.datavalue.value.id == val then
return val
end
end
end
return nil
end
-------------------------------------------------------------------------------
-- url2 takes a parameter url= that is a proper url and formats it for use in an infobox.
-- If no parameter is supplied, it returns nothing.
-- This is the equivalent of Template:URL
-- but it keeps the "edit at Wikidata" pen icon out of the microformat.
-- Usually it will take its url parameter directly from a Wikidata call:
-- e.g. {{#invoke:WikidataIB |url2 |url={{wdib |P856 |qid=Q23317 |fwd=ALL |osd=no}} }}
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.url2 = function(frame)
local txt = frame.args.url or ""
if txt == "" then return nil end
-- extract any icon
local url, icon = txt:match("(.+) (.+)")
-- make sure there's at least a space at the end
url = (url or txt) .. " "
icon = icon or ""
-- extract any protocol like https://
local prot = url:match("(https*://).+[ \"\']")
-- extract address
local addr = ""
if prot then
addr = url:match("https*://(.+)[ \"\']") or " "
else
prot = "//"
addr = url:match("[^%p%s]+%.(.+)[ \"\']") or " "
end
-- strip trailing / from end of domain-only url and add <wbr/> before . and /
local disp, n = addr:gsub( "^([^/]+)/$", "%1" ):gsub("%/", "<wbr/>/"):gsub("%.", "<wbr/>.")
return '<span class="url">[' .. prot .. addr .. " " .. disp .. "]</span> " .. icon
end
-------------------------------------------------------------------------------
-- getWebsite fetches the Official website (P856) and formats it for use in an infobox.
-- This is similar to Template:Official website but with a url displayed,
-- and it adds the "edit at Wikidata" pen icon beyond the microformat if enabled.
-- A local value will override the Wikidata value. "NONE" returns nothing.
-- e.g. {{#invoke:WikidataIB |getWebsite |qid= |noicon= |lang= |url= }}
-------------------------------------------------------------------------------
-- Dependencies: findLang(); parseParam();
-------------------------------------------------------------------------------
p.getWebsite = function(frame)
local url = frame.args.url or ""
if url:upper() == "NONE" then return nil end
local urls = {}
local quals = {}
local qid = frame.args.qid or ""
if url and url ~= "" then
urls[1] = url
else
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return nil end
local prop856 = mw.wikibase.getBestStatements(qid, "P856")
for k, v in pairs(prop856) do
if v.mainsnak.snaktype == "value" then
urls[#urls+1] = v.mainsnak.datavalue.value
if v.qualifiers and v.qualifiers["P1065"] then
-- just take the first archive url (P1065)
local au = v.qualifiers["P1065"][1]
if au.snaktype == "value" then
quals[#urls] = au.datavalue.value
end -- test for archive url having a value
end -- test for qualifers
end -- test for website having a value
end -- loop through website(s)
end
if #urls == 0 then return nil end
local out = {}
for i, u in ipairs(urls) do
local link = quals[i] or u
local prot, addr = u:match("(http[s]*://)(.+)")
addr = addr or u
local disp, n = addr:gsub("%.", "<wbr/>%.")
out[#out+1] = '<span class="url">[' .. link .. " " .. disp .. "]</span>"
end
local langcode = findLang(frame.args.lang).code
local noicon = parseParam(frame.args.noicon, false)
if url == "" and not noicon then
out[#out] = out[#out] .. createicon(langcode, qid, "P856")
end
local ret = ""
if #out > 1 then
ret = mw.getCurrentFrame():expandTemplate{title = "ubl", args = out}
else
ret = out[1]
end
return ret
end
-------------------------------------------------------------------------------
-- getAllLabels fetches the set of labels and formats it for display as wikitext.
-- It takes a parameter 'qid' for arbitrary access, otherwise it uses the current page.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getAllLabels = function(frame)
local args = frame.args or frame:getParent().args or {}
local qid = args.qid or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid or not mw.wikibase.entityExists(qid) then return i18n["entity-not-found"] end
local labels = mw.wikibase.getEntity(qid).labels
if not labels then return i18n["labels-not-found"] end
local out = {}
for k, v in pairs(labels) do
out[#out+1] = v.value .. " (" .. v.language .. ")"
end
return table.concat(out, "; ")
end
-------------------------------------------------------------------------------
-- getAllDescriptions fetches the set of descriptions and formats it for display as wikitext.
-- It takes a parameter 'qid' for arbitrary access, otherwise it uses the current page.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getAllDescriptions = function(frame)
local args = frame.args or frame:getParent().args or {}
local qid = args.qid or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid or not mw.wikibase.entityExists(qid) then return i18n["entity-not-found"] end
local descriptions = mw.wikibase.getEntity(qid).descriptions
if not descriptions then return i18n["descriptions-not-found"] end
local out = {}
for k, v in pairs(descriptions) do
out[#out+1] = v.value .. " (" .. v.language .. ")"
end
return table.concat(out, "; ")
end
-------------------------------------------------------------------------------
-- getAllAliases fetches the set of aliases and formats it for display as wikitext.
-- It takes a parameter 'qid' for arbitrary access, otherwise it uses the current page.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.getAllAliases = function(frame)
local args = frame.args or frame:getParent().args or {}
local qid = args.qid or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid or not mw.wikibase.entityExists(qid) then return i18n["entity-not-found"] end
local aliases = mw.wikibase.getEntity(qid).aliases
if not aliases then return i18n["aliases-not-found"] end
local out = {}
for k1, v1 in pairs(aliases) do
local lang = v1[1].language
local val = {}
for k1, v2 in ipairs(v1) do
val[#val+1] = v2.value
end
out[#out+1] = table.concat(val, ", ") .. " (" .. lang .. ")"
end
return table.concat(out, "; ")
end
-------------------------------------------------------------------------------
-- showNoLinks displays the article titles that should not be linked.
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
p.showNoLinks = function(frame)
local out = {}
for k, v in pairs(donotlink) do
out[#out+1] = k
end
table.sort( out )
return table.concat(out, "; ")
end
-------------------------------------------------------------------------------
-- checkValidity checks whether the first unnamed parameter represents a valid entity-id,
-- that is, something like Q1235 or P123.
-- It returns the strings "true" or "false".
-- Change false to nil to return "true" or "" (easier to test with #if:).
-------------------------------------------------------------------------------
-- Dependencies: none
-------------------------------------------------------------------------------
function p.checkValidity(frame)
local id = mw.text.trim(frame.args[1] or "")
if mw.wikibase.isValidEntityId(id) then
return true
else
return false
end
end
-------------------------------------------------------------------------------
-- getEntityFromTitle returns the Entity-ID (Q-number) for a given title.
-- Modification of Module:ResolveEntityId
-- The title is the first unnamed parameter.
-- The site parameter determines the site/language for the title. Defaults to current wiki.
-- The showdab parameter determines whether dab pages should return the Q-number or nil. Defaults to true.
-- Returns the Q-number or nil if it does not exist.
-------------------------------------------------------------------------------
-- Dependencies: parseParam
-------------------------------------------------------------------------------
function p.getEntityFromTitle(frame)
local args=frame.args
if not args[1] then args=frame:getParent().args end
if not args[1] then return nil end
local title = mw.text.trim(args[1])
local site = args.site or ""
local showdab = parseParam(args.showdab, true)
local qid = mw.wikibase.getEntityIdForTitle(title, site)
if qid then
local prop31 = mw.wikibase.getBestStatements(qid, "P31")[1]
if not showdab and prop31 and prop31.mainsnak.datavalue.value.id == "Q4167410" then
return nil
else
return qid
end
end
end
-------------------------------------------------------------------------------
-- getDatePrecision returns the number representing the precision of the first best date value
-- for the given property.
-- It takes the qid and property ID
-- The meanings are given at https://www.mediawiki.org/wiki/Wikibase/DataModel#Dates_and_times
-- 0 = 1 billion years .. 6 = millennium, 7 = century, 8 = decade, 9 = year, 10 = month, 11 = day
-- Returns 0 (or the second unnamed parameter) if the Wikidata does not exist.
-------------------------------------------------------------------------------
-- Dependencies: parseParam; sourced;
-------------------------------------------------------------------------------
function p.getDatePrecision(frame)
local args=frame.args
if not args[1] then args=frame:getParent().args end
local default = tonumber(args[2] or args.default) or 0
local prop = mw.text.trim(args[1] or "")
if prop == "" then return default end
local qid = args.qid or ""
if qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
if not qid then return default end
local onlysrc = parseParam(args.onlysourced or args.osd, true)
local stat = mw.wikibase.getBestStatements(qid, prop)
for i, v in ipairs(stat) do
local prec = (onlysrc == false or sourced(v))
and v.mainsnak.datavalue
and v.mainsnak.datavalue.value
and v.mainsnak.datavalue.value.precision
if prec then return prec end
end
return default
end
return p
-------------------------------------------------------------------------------
-- List of exported functions
-------------------------------------------------------------------------------
--[[
_getValue
getValue
getPreferredValue
getCoords
getQualifierValue
getSumOfParts
getValueByQual
getValueByLang
getValueByRefSource
getPropertyIDs
getQualifierIDs
getPropOfProp
getAwardCat
getIntersectCat
getGlobe
getCommonsLink
getSiteLink
getLink
getLabel
label
getAT
getDescription
getAliases
pageId
formatDate
location
checkBlacklist
emptyor
labelorid
getLang
getItemLangCode
findLanguage
getQID
followQid
globalSiteID
siteID
projID
formatNumber
examine
checkvalue
url2
getWebsite
getAllLabels
getAllDescriptions
getAllAliases
showNoLinks
checkValidity
getEntityFromTitle
getDatePrecision
--]]
-------------------------------------------------------------------------------
o26pvdzoveksr04pobp213ncnrqerd6
Module:Wikidata/Sorters
828
3327
36514
2025-12-15T17:42:53Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local ValueTypeToDefaultMethod = { ['monolingualtext'] = 'alpha', ['quantity'] = 'number', ['string'] = 'alpha', ['time'] = 'time', ['wikibase-entityid'] = 'alpha', } p.Sorters = {} setmetatable(p.Sorters, { __index = function(t, key) t[key] = require('Module:Wikidata/Sorters/' .. key) return t[key] end }) local function resolveResult(result, inverted) if mat...'
36514
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local ValueTypeToDefaultMethod = {
['monolingualtext'] = 'alpha',
['quantity'] = 'number',
['string'] = 'alpha',
['time'] = 'time',
['wikibase-entityid'] = 'alpha',
}
p.Sorters = {}
setmetatable(p.Sorters, {
__index = function(t, key)
t[key] = require('Module:Wikidata/Sorters/' .. key)
return t[key]
end
})
local function resolveResult(result, inverted)
if math.abs(result) > 1 then
return result < 0
else
return (result < 0) ~= (inverted or false)
end
end
local function compareIncomplete(first, second)
if first then
return -2
end
if second then
return 2
end
return 0
end
local function getDefaultMethodForSnak(snak)
local valueType = lib.datatypeToValueType[snak.datatype]
return ValueTypeToDefaultMethod[valueType]
end
local function getCallbackForQualifiers(method)
return function(first, second)
local sorter = p.Sorters[method]
if not (sorter.mayCompareSnak(first) and sorter.mayCompareSnak(second)) then
return error(lib.formatError('invalid-sort', method))
end
local first_complete = sorter.isCompleteSnak(first)
local second_complete = sorter.isCompleteSnak(second)
if not (first_complete and second_complete) then
return compareIncomplete(first_complete, second_complete)
end
return sorter.compareSnaks(first, second)
end
end
local function defaultCallbackForQualifiers(first, second)
local default = getDefaultMethodForSnak(first)
return getCallbackForQualifiers(default)(first, second)
end
local function getQualifierToCompare(statement, prop)
local qualifiers = statement.qualifiers and statement.qualifiers[mw.ustring.upper(prop)]
if qualifiers then
qualifiers = mw.clone(qualifiers)
if #qualifiers > 1 then
table.sort(qualifiers, function(first, second)
return resolveResult(defaultCallbackForQualifiers(first, second))
end)
end
return qualifiers[1]
end
return nil
end
local function getCallbackForStatements(method)
return function(first, second)
local sorter = p.Sorters[method]
if not (sorter.mayCompareStatement(first) and sorter.mayCompareStatement(second)) then
return error(lib.formatError('invalid-sort', method))
end
local first_complete = sorter.isCompleteStatement(first)
local second_complete = sorter.isCompleteStatement(second)
if not (first_complete and second_complete) then
return compareIncomplete(first_complete, second_complete)
end
return sorter.compareStatements(first, second)
end
end
local function resolveMethodForStatements(method)
if method == 'default' then
return function(first, second)
local default = getDefaultMethodForSnak(first.mainsnak)
return getCallbackForStatements(default)(first, second)
end
elseif lib.isPropertyId(method) then
return function(first, second)
local first_qualifier = getQualifierToCompare(first, method)
local second_qualifier = getQualifierToCompare(second, method)
if not (first_qualifier and second_qualifier) then
return compareIncomplete(not not first_qualifier, not not second_qualifier)
end
local default = getDefaultMethodForSnak(first_qualifier)
return getCallbackForQualifiers(default)(first_qualifier, second_qualifier)
end
end
return getCallbackForStatements(method)
end
function p.sortStatements(statements, options)
local methods = lib.textToTable(options.sort)
local inverted = lib.IsOptionTrue(options, 'invert')
local cache = {}
table.sort(statements, function(first, second)
local result
for _, method in ipairs(methods) do
if not cache[method] then
cache[method] = resolveMethodForStatements(method)
end
result = cache[method](first, second)
if result ~= 0 then
return resolveResult(result, inverted)
end
end
return false
end)
end
local function resolveMethodForQualifiers(method)
if method == 'default' then
return defaultCallbackForQualifiers
end
return getCallbackForQualifiers(method)
end
function p.sortQualifiers(qualifiers, options)
local methods = lib.textToTable(options.sort)
local inverted = lib.IsOptionTrue(options, 'invert')
local cache = {}
table.sort(qualifiers, function(first, second)
local result
for _, method in ipairs(methods) do
if not cache[method] then
cache[method] = resolveMethodForQualifiers(method)
end
result = cache[method](first, second)
if result ~= 0 then
return resolveResult(result, inverted)
end
end
return false
end)
end
return p
t59d5mlcxnnnxizl3wbs25ur74uccfi
Module:Wikidata/lib
828
3328
36515
2025-12-15T17:43:52Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "Module:No globals" local p = { common = require "Module:Functions", props = { begin = { 'P569', 'P580' }, ending = { 'P570', 'P582' }, lang = { 'P364', 'P407' }, point = { 'P571', 'P577', 'P585' }, }, datatypeToValueType = { ['commonsMedia'] = 'string', ['external-id'] = 'string', ['geo-shape'] = 'string', ['globe-coordinate'] = 'globecoordinate', ['math'] = 'string', ['monolingualtext'] = 'monolingualtext', ['...'
36515
Scribunto
text/plain
--require "Module:No globals"
local p = {
common = require "Module:Functions",
props = {
begin = { 'P569', 'P580' },
ending = { 'P570', 'P582' },
lang = { 'P364', 'P407' },
point = { 'P571', 'P577', 'P585' },
},
datatypeToValueType = {
['commonsMedia'] = 'string',
['external-id'] = 'string',
['geo-shape'] = 'string',
['globe-coordinate'] = 'globecoordinate',
['math'] = 'string',
['monolingualtext'] = 'monolingualtext',
['quantity'] = 'quantity',
['string'] = 'string',
['tabular-data'] = 'string',
['time'] = 'time',
['url'] = 'string',
['wikibase-item'] = 'wikibase-entityid',
['wikibase-property'] = 'wikibase-entityid',
},
}
local i18n = mw.loadData("Module:Wikidata/i18n")
function p.addWdClass(str)
return '<span class="wddata">' .. str .. '</span>'
end
function p.category(key, ...)
local Category = require 'Module:Category'
local title = mw.title.getCurrentTitle()
if i18n.categories[key] ~= '-' then
return Category.makeCategory(mw.ustring.format(i18n.categories[key], ...), '0,14', title.text)
else
return ''
end
end
function p.formatDateRange(snaks, options)
local options = mw.clone(options)
local Y = require('Module:Time').PRECISION.YEAR
--if options.isQualifier == true then
options.precision = options.precision or Y
--end
local Formatters = require 'Module:Wikidata/Formatters'
local begin, begin_raw, ending, ending_raw
if snaks.begin then
begin_raw = Formatters.getRawValue(snaks.begin, options)
end
if snaks.ending then
ending_raw = Formatters.getRawValue(snaks.ending, options)
end
if begin_raw and begin_raw ~= 'novalue' then
begin = Formatters.formatRawValue(begin_raw, 'time', options)
end
if ending_raw and ending_raw ~= 'novalue' then
ending = Formatters.formatRawValue(ending_raw, 'time', options)
end
if not begin then
if not ending then
return ''
end
return mw.ustring.format(i18n.date['end'], ending)
end
if not ending then
return mw.ustring.format(i18n.date['start'], begin)
end
local precision = options.precision or Y
local begin_precision = math.min(precision, begin_raw.precision or Y)
local ending_precision = math.min(precision, ending_raw.precision or Y)
local top = math.min(begin_raw.precision or Y, ending_raw.precision or Y)
while begin == ending and precision < top do
precision = precision + 1
options.precision = precision
begin = Formatters.formatRawValue(begin_raw, 'time', options)
begin_precision = precision
ending = Formatters.formatRawValue(ending_raw, 'time', options)
ending_precision = precision
end
if begin == ending then
return begin
end
local connector = ' – '
if begin_precision == Y and ending_precision == Y then
connector = '–'
end
return table.concat( { begin, ending }, connector )
end
function p.formatError(key, ...)
return mw.ustring.format(i18n.errors[key], ...)
end
function p.formatFromPattern(str, pattern)
return mw.ustring.gsub(pattern, '$1', str) .. '' --Hack to get only the first result of the function
end
function p.formatTextInLanguage(text, language)
return mw.text.tag('span', { lang = language }, text)
end
-- @deprecated
function p.getEntityIdFromValue(value)
local entityType = value['entity-type']
if entityType == 'item' then
return 'Q' .. value['numeric-id']
elseif entityType == 'property' then
return 'P' .. value['numeric-id']
else
return error(p.formatError('unknown-entity-type', entityType))
end
end
function p.getItemIdFromURI(uri)
return mw.ustring.match(uri, '(Q%d+)')
end
function p.getLabelInLanguage(entityId, langs)
langs = p.textToTable(langs)
local label, lang = mw.wikibase.getLabelWithLang(entityId)
if label then
for _, lg in ipairs(langs) do
if lg == lang then
return label, lang
end
end
end
return nil, nil
end
function p.getLinkWhenNonexistingLabel(entityId)
local ImageFormatter = require 'Module:ImageFormatter'
return ImageFormatter.makeImage('Wikidata-edit.svg', {
description = i18n['missing-label'],
link = 'd:' .. entityId,
size = '27x17px'
}) .. '<code>[[d:' .. entityId .. '|' .. entityId .. ']]</code>' .. p.category('missing-label')
end
function p.IsOptionTrue(options, key)
if options[key] then
if tostring(options[key]) == 'true' or tostring(options[key]) == 'yes' or tostring(options[key]) == '1' then
return true
end
end
return false
end
function p.isPropertyId(value)
return mw.ustring.match(value, '^[Pp][1-9]%d-$') and true
end
function p.IsSnakValue(snak)
return snak.snaktype == 'value'
end
function p.raiseInvalidDatatype(method, allowed, provided)
if type(allowed) ~= 'table' then
allowed = { allowed }
end
return p.formatError('invalid-datatype2', method, mw.text.listToText(allowed, '“, „', '“ nebo „'), provided)
end
function p.simpleCompare(first, second)
if first == second then
return 0
end
if first < second then
return -1
else
return 1
end
end
function p.textToTable(something, options)
if type(something) ~= "table" then
local options = options or {}
local split_pattern = options.split_pattern or "%s*,%s*"
something = mw.text.split(something, split_pattern)
end
return p.common.cleanArgs(something)
end
return p
f0d19viwzrahbzngd4m6czhdrqauuz4
Module:Functions
828
3329
36516
2025-12-15T17:44:42Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "Module:No globals" local p = {} -- Změní první písmeno řetězce na velké -- @param řetězec -- @return řetězec function p.firstToUpper(str) return mw.ustring.upper(mw.ustring.sub(str, 1, 1)) .. mw.ustring.sub(str, 2) end -- Odstraní z tabulky prázdné parametry -- @param tabulka -- @return tabulka function p.cleanArgs(args) local cleanArgs = {} for key, value in pairs(args) do if type(value) == 'string' then local...'
36516
Scribunto
text/plain
--require "Module:No globals"
local p = {}
-- Změní první písmeno řetězce na velké
-- @param řetězec
-- @return řetězec
function p.firstToUpper(str)
return mw.ustring.upper(mw.ustring.sub(str, 1, 1)) .. mw.ustring.sub(str, 2)
end
-- Odstraní z tabulky prázdné parametry
-- @param tabulka
-- @return tabulka
function p.cleanArgs(args)
local cleanArgs = {}
for key, value in pairs(args) do
if type(value) == 'string' then
local value = mw.text.trim(value)
if value ~= '' then
cleanArgs[key] = value
end
elseif type(value) == 'table' then
if not p.isTableEmpty(value) then
cleanArgs[key] = value
end
else
cleanArgs[key] = value
end
end
return cleanArgs
end
-- Rozhodne, zda je tabulka prázdná (má žádné nebo prázdné parametry)
-- @param tabulka
-- @return bool
function p.isTableEmpty(Table)
for key, value in pairs(Table) do
if type(value) == 'table' then
if not p.isTableEmpty(value) then
return false
end
elseif type(value) == 'string' then
if mw.text.trim(value) ~= '' then
return false
end
else
return false
end
end
return true
end
return p
s72f1vx9gpgdquo2ej4adozfs14ht7h
Module:Category
828
3330
36517
2025-12-15T17:46:24Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local function checkNamespace(namespace) if not namespace or namespace == '' then namespace = 0 end if type(namespace) == 'string' then namespace = mw.text.split(namespace, ',') elseif type(namespace) ~= 'table' then namespace = { namespace } end local namespace_map = mw.site.namespaces local title = mw.title.getCurrentTitle() for _, namespace in ipairs(namespace) do if tonumber(namespace) then...'
36517
Scribunto
text/plain
--require "strict"
local p = {}
local function checkNamespace(namespace)
if not namespace or namespace == '' then
namespace = 0
end
if type(namespace) == 'string' then
namespace = mw.text.split(namespace, ',')
elseif type(namespace) ~= 'table' then
namespace = { namespace }
end
local namespace_map = mw.site.namespaces
local title = mw.title.getCurrentTitle()
for _, namespace in ipairs(namespace) do
if tonumber(namespace) then
if title.namespace == tonumber(namespace) then
return true
end
end
local namespace_data = namespace_map[namespace]
if namespace_data then
if title.namespace == namespace_data.id then
return true
end
end
end
return false
end
function p.makeCategory(catname, namespace, key)
if not catname or catname == '' then
return ''
end
if not checkNamespace(namespace) then
return ''
end
if key and key ~= '' then
return "[[Κατηγορίαν:" .. catname .. "|" .. key .. "]]"
else
return "[[Κατηγορίαν:" .. catname .. "]]"
end
end
function p.fromTemplate(frame)
local parent = frame:getParent()
local params = parent.args
return p.makeCategory(params[1], params[2], params[3])
end
return p
luhkaorlwaa3b81ihi58mxhv774zhc7
Module:Category handler
828
3331
36518
2025-12-15T17:47:50Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-------------------------------------------------------------------------------- -- -- -- CATEGORY HANDLER -- -- -- -- This module implements the {{category handler}} template in Lua, -- -- with a few improvements: all namespaces...'
36518
Scribunto
text/plain
--------------------------------------------------------------------------------
-- --
-- CATEGORY HANDLER --
-- --
-- This module implements the {{category handler}} template in Lua, --
-- with a few improvements: all namespaces and all namespace aliases --
-- are supported, and namespace names are detected automatically for --
-- the local wiki. This module requires [[Module:Namespace detect]] --
-- and [[Module:Yesno]] to be available on the local wiki. It can be --
-- configured for different wikis by altering the values in --
-- [[Module:Category handler/config]], and pages can be blacklisted --
-- from categorisation by using [[Module:Category handler/blacklist]]. --
-- --
--------------------------------------------------------------------------------
-- Load required modules
local yesno = require('Module:Yesno')
-- Lazily load things we don't always need
local mShared, mappings
local p = {}
--------------------------------------------------------------------------------
-- Helper functions
--------------------------------------------------------------------------------
local function trimWhitespace(s, removeBlanks)
if type(s) ~= 'string' then
return s
end
s = s:match('^%s*(.-)%s*$')
if removeBlanks then
if s ~= '' then
return s
else
return nil
end
else
return s
end
end
--------------------------------------------------------------------------------
-- CategoryHandler class
--------------------------------------------------------------------------------
local CategoryHandler = {}
CategoryHandler.__index = CategoryHandler
function CategoryHandler.new(data, args)
local obj = setmetatable({ _data = data, _args = args }, CategoryHandler)
-- Set the title object
do
local pagename = obj:parameter('demopage')
local success, titleObj
if pagename then
success, titleObj = pcall(mw.title.new, pagename)
end
if success and titleObj then
obj.title = titleObj
if titleObj == mw.title.getCurrentTitle() then
obj._usesCurrentTitle = true
end
else
obj.title = mw.title.getCurrentTitle()
obj._usesCurrentTitle = true
end
end
-- Set suppression parameter values
for _, key in ipairs{'nocat', 'categories'} do
local value = obj:parameter(key)
value = trimWhitespace(value, true)
obj['_' .. key] = yesno(value)
end
do
local subpage = obj:parameter('subpage')
local category2 = obj:parameter('category2')
if type(subpage) == 'string' then
subpage = mw.ustring.lower(subpage)
end
if type(category2) == 'string' then
subpage = mw.ustring.lower(category2)
end
obj._subpage = trimWhitespace(subpage, true)
obj._category2 = trimWhitespace(category2) -- don't remove blank values
end
return obj
end
function CategoryHandler:parameter(key)
local parameterNames = self._data.parameters[key]
local pntype = type(parameterNames)
if pntype == 'string' or pntype == 'number' then
return self._args[parameterNames]
elseif pntype == 'table' then
for _, name in ipairs(parameterNames) do
local value = self._args[name]
if value ~= nil then
return value
end
end
return nil
else
error(string.format(
'invalid config key "%s"',
tostring(key)
), 2)
end
end
function CategoryHandler:isSuppressedByArguments()
return
-- See if a category suppression argument has been set.
self._nocat == true
or self._categories == false
or (
self._category2
and self._category2 ~= self._data.category2Yes
and self._category2 ~= self._data.category2Negative
)
-- Check whether we are on a subpage, and see if categories are
-- suppressed based on our subpage status.
or self._subpage == self._data.subpageNo and self.title.isSubpage
or self._subpage == self._data.subpageOnly and not self.title.isSubpage
end
function CategoryHandler:shouldSkipBlacklistCheck()
-- Check whether the category suppression arguments indicate we
-- should skip the blacklist check.
return self._nocat == false
or self._categories == true
or self._category2 == self._data.category2Yes
end
function CategoryHandler:matchesBlacklist()
if self._usesCurrentTitle then
return self._data.currentTitleMatchesBlacklist
else
mShared = mShared or require('Module:Category handler/shared')
return mShared.matchesBlacklist(
self.title.prefixedText,
mw.loadData('Module:Category handler/blacklist')
)
end
end
function CategoryHandler:isSuppressed()
-- Find if categories are suppressed by either the arguments or by
-- matching the blacklist.
return self:isSuppressedByArguments()
or not self:shouldSkipBlacklistCheck() and self:matchesBlacklist()
end
function CategoryHandler:getNamespaceParameters()
if self._usesCurrentTitle then
return self._data.currentTitleNamespaceParameters
else
if not mappings then
mShared = mShared or require('Module:Category handler/shared')
mappings = mShared.getParamMappings(true) -- gets mappings with mw.loadData
end
return mShared.getNamespaceParameters(
self.title,
mappings
)
end
end
function CategoryHandler:namespaceParametersExist()
-- Find whether any namespace parameters have been specified.
-- We use the order "all" --> namespace params --> "other" as this is what
-- the old template did.
if self:parameter('all') then
return true
end
if not mappings then
mShared = mShared or require('Module:Category handler/shared')
mappings = mShared.getParamMappings(true) -- gets mappings with mw.loadData
end
for ns, params in pairs(mappings) do
for i, param in ipairs(params) do
if self._args[param] then
return true
end
end
end
if self:parameter('other') then
return true
end
return false
end
function CategoryHandler:getCategories()
local params = self:getNamespaceParameters()
local nsCategory
for i, param in ipairs(params) do
local value = self._args[param]
if value ~= nil then
nsCategory = value
break
end
end
if nsCategory ~= nil or self:namespaceParametersExist() then
-- Namespace parameters exist - advanced usage.
if nsCategory == nil then
nsCategory = self:parameter('other')
end
local ret = {self:parameter('all')}
local numParam = tonumber(nsCategory)
if numParam and numParam >= 1 and math.floor(numParam) == numParam then
-- nsCategory is an integer
ret[#ret + 1] = self._args[numParam]
else
ret[#ret + 1] = nsCategory
end
if #ret < 1 then
return nil
else
return table.concat(ret)
end
elseif self._data.defaultNamespaces[self.title.namespace] then
-- Namespace parameters don't exist, simple usage.
return self._args[1]
end
return nil
end
--------------------------------------------------------------------------------
-- Exports
--------------------------------------------------------------------------------
local p = {}
function p._exportClasses()
-- Used for testing purposes.
return {
CategoryHandler = CategoryHandler
}
end
function p._main(args, data)
data = data or mw.loadData('Module:Category handler/data')
local handler = CategoryHandler.new(data, args)
if handler:isSuppressed() then
return nil
end
return handler:getCategories()
end
function p.main(frame, data)
data = data or mw.loadData('Module:Category handler/data')
local args = require('Module:Arguments').getArgs(frame, {
wrappers = data.wrappers,
valueFunc = function (k, v)
v = trimWhitespace(v)
if type(k) == 'number' then
if v ~= '' then
return v
else
return nil
end
else
return v
end
end
})
return p._main(args, data)
end
return p
letwavu3yvlayfzew66uuwixmwebq5b
Module:Namespace detect/data
828
3332
36519
2025-12-15T17:49:00Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-------------------------------------------------------------------------------- -- Namespace detect data -- -- This module holds data for [[Module:Namespace detect]] to be loaded per -- -- page, rather than per #invoke, for performance reasons. -- -------------------------------------------------------------------------------- local cfg = require('Module:Namespace detect/c...'
36519
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Namespace detect data --
-- This module holds data for [[Module:Namespace detect]] to be loaded per --
-- page, rather than per #invoke, for performance reasons. --
--------------------------------------------------------------------------------
local cfg = require('Module:Namespace detect/config')
local function addKey(t, key, defaultKey)
if key ~= defaultKey then
t[#t + 1] = key
end
end
-- Get a table of parameters to query for each default parameter name.
-- This allows wikis to customise parameter names in the cfg table while
-- ensuring that default parameter names will always work. The cfg table
-- values can be added as a string, or as an array of strings.
local defaultKeys = {
'main',
'talk',
'other',
'subjectns',
'demospace',
'demopage'
}
local argKeys = {}
for i, defaultKey in ipairs(defaultKeys) do
argKeys[defaultKey] = {defaultKey}
end
for defaultKey, t in pairs(argKeys) do
local cfgValue = cfg[defaultKey]
local cfgValueType = type(cfgValue)
if cfgValueType == 'string' then
addKey(t, cfgValue, defaultKey)
elseif cfgValueType == 'table' then
for i, key in ipairs(cfgValue) do
addKey(t, key, defaultKey)
end
end
cfg[defaultKey] = nil -- Free the cfg value as we don't need it any more.
end
local function getParamMappings()
--[[
-- Returns a table of how parameter names map to namespace names. The keys
-- are the actual namespace names, in lower case, and the values are the
-- possible parameter names for that namespace, also in lower case. The
-- table entries are structured like this:
-- {
-- [''] = {'main'},
-- ['wikipedia'] = {'wikipedia', 'project', 'wp'},
-- ...
-- }
--]]
local mappings = {}
local mainNsName = mw.site.subjectNamespaces[0].name
mainNsName = mw.ustring.lower(mainNsName)
mappings[mainNsName] = mw.clone(argKeys.main)
mappings['talk'] = mw.clone(argKeys.talk)
for nsid, ns in pairs(mw.site.subjectNamespaces) do
if nsid ~= 0 then -- Exclude main namespace.
local nsname = mw.ustring.lower(ns.name)
local canonicalName = mw.ustring.lower(ns.canonicalName)
mappings[nsname] = {nsname}
if canonicalName ~= nsname then
table.insert(mappings[nsname], canonicalName)
end
for _, alias in ipairs(ns.aliases) do
table.insert(mappings[nsname], mw.ustring.lower(alias))
end
end
end
return mappings
end
return {
argKeys = argKeys,
cfg = cfg,
mappings = getParamMappings()
}
ojp6d3pc8mql5nufaqdg576c9so3479
Module:Namespace detect/config
828
3333
36520
2025-12-15T17:49:50Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-------------------------------------------------------------------------------- -- Namespace detect configuration data -- -- -- -- This module stores configuration data for Module:Namespace detect. Here -- -- you can localise the module to your wiki's language. -- --...'
36520
Scribunto
text/plain
--------------------------------------------------------------------------------
-- Namespace detect configuration data --
-- --
-- This module stores configuration data for Module:Namespace detect. Here --
-- you can localise the module to your wiki's language. --
-- --
-- To activate a configuration item, you need to uncomment it. This means --
-- that you need to remove the text "-- " at the start of the line. --
--------------------------------------------------------------------------------
local cfg = {} -- Don't edit this line.
--------------------------------------------------------------------------------
-- Parameter names --
-- These configuration items specify custom parameter names. Values added --
-- here will work in addition to the default English parameter names. --
-- To add one extra name, you can use this format: --
-- --
-- cfg.foo = 'parameter name' --
-- --
-- To add multiple names, you can use this format: --
-- --
-- cfg.foo = {'parameter name 1', 'parameter name 2', 'parameter name 3'} --
--------------------------------------------------------------------------------
---- This parameter displays content for the main namespace:
-- cfg.main = 'main'
---- This parameter displays in talk namespaces:
-- cfg.talk = 'talk'
---- This parameter displays content for "other" namespaces (namespaces for which
---- parameters have not been specified):
-- cfg.other = 'other'
---- This parameter makes talk pages behave as though they are the corresponding
---- subject namespace. Note that this parameter is used with [[Module:Yesno]].
---- Edit that module to change the default values of "yes", "no", etc.
-- cfg.subjectns = 'subjectns'
---- This parameter sets a demonstration namespace:
-- cfg.demospace = 'demospace'
---- This parameter sets a specific page to compare:
cfg.demopage = 'page'
--------------------------------------------------------------------------------
-- Table configuration --
-- These configuration items allow customisation of the "table" function, --
-- used to generate a table of possible parameters in the module --
-- documentation. --
--------------------------------------------------------------------------------
---- The header for the namespace column in the wikitable containing the list of
---- possible subject-space parameters.
-- cfg.wikitableNamespaceHeader = 'Namespace'
---- The header for the wikitable containing the list of possible subject-space
---- parameters.
-- cfg.wikitableAliasesHeader = 'Aliases'
--------------------------------------------------------------------------------
-- End of configuration data --
--------------------------------------------------------------------------------
return cfg -- Don't edit this line.
1o6ozz56i8q0xgyl6xa41n2v7kelhli
Module:Namespace detect
828
3334
36521
2025-12-15T17:50:48Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ -------------------------------------------------------------------------------- -- -- -- NAMESPACE DETECT -- -- -- -- This module implements the {{namespace detect}} template in Lua, with a -- -- few improvements: all namespaces and al...'
36521
Scribunto
text/plain
--[[
--------------------------------------------------------------------------------
-- --
-- NAMESPACE DETECT --
-- --
-- This module implements the {{namespace detect}} template in Lua, with a --
-- few improvements: all namespaces and all namespace aliases are supported, --
-- and namespace names are detected automatically for the local wiki. The --
-- module can also use the corresponding subject namespace value if it is --
-- used on a talk page. Parameter names can be configured for different wikis --
-- by altering the values in the "cfg" table in --
-- Module:Namespace detect/config. --
-- --
--------------------------------------------------------------------------------
--]]
local data = mw.loadData('Module:Namespace detect/data')
local argKeys = data.argKeys
local cfg = data.cfg
local mappings = data.mappings
local yesno = require('Module:Yesno')
local mArguments -- Lazily initialise Module:Arguments
local mTableTools -- Lazily initilalise Module:TableTools
local ustringLower = mw.ustring.lower
local p = {}
local function fetchValue(t1, t2)
-- Fetches a value from the table t1 for the first key in array t2 where
-- a non-nil value of t1 exists.
for i, key in ipairs(t2) do
local value = t1[key]
if value ~= nil then
return value
end
end
return nil
end
local function equalsArrayValue(t, value)
-- Returns true if value equals a value in the array t. Otherwise
-- returns false.
for i, arrayValue in ipairs(t) do
if value == arrayValue then
return true
end
end
return false
end
function p.getPageObject(page)
-- Get the page object, passing the function through pcall in case of
-- errors, e.g. being over the expensive function count limit.
if page then
local success, pageObject = pcall(mw.title.new, page)
if success then
return pageObject
else
return nil
end
else
return mw.title.getCurrentTitle()
end
end
-- Provided for backward compatibility with other modules
function p.getParamMappings()
return mappings
end
local function getNamespace(args)
-- This function gets the namespace name from the page object.
local page = fetchValue(args, argKeys.demopage)
if page == '' then
page = nil
end
local demospace = fetchValue(args, argKeys.demospace)
if demospace == '' then
demospace = nil
end
local subjectns = fetchValue(args, argKeys.subjectns)
local ret
if demospace then
-- Handle "demospace = main" properly.
if equalsArrayValue(argKeys.main, ustringLower(demospace)) then
ret = mw.site.namespaces[0].name
else
ret = demospace
end
else
local pageObject = p.getPageObject(page)
if pageObject then
if pageObject.isTalkPage then
-- Get the subject namespace if the option is set,
-- otherwise use "talk".
if yesno(subjectns) then
ret = mw.site.namespaces[pageObject.namespace].subject.name
else
ret = 'talk'
end
else
ret = pageObject.nsText
end
else
return nil -- return nil if the page object doesn't exist.
end
end
ret = ret:gsub('_', ' ')
return ustringLower(ret)
end
function p._main(args)
-- Check the parameters stored in the mappings table for any matches.
local namespace = getNamespace(args) or 'other' -- "other" avoids nil table keys
local params = mappings[namespace] or {}
local ret = fetchValue(args, params)
--[[
-- If there were no matches, return parameters for other namespaces.
-- This happens if there was no text specified for the namespace that
-- was detected or if the demospace parameter is not a valid
-- namespace. Note that the parameter for the detected namespace must be
-- completely absent for this to happen, not merely blank.
--]]
if ret == nil then
ret = fetchValue(args, argKeys.other)
end
return ret
end
function p.main(frame)
mArguments = require('Module:Arguments')
local args = mArguments.getArgs(frame, {removeBlanks = false})
local ret = p._main(args)
return ret or ''
end
function p.table(frame)
--[[
-- Create a wikitable of all subject namespace parameters, for
-- documentation purposes. The talk parameter is optional, in case it
-- needs to be excluded in the documentation.
--]]
-- Load modules and initialise variables.
mTableTools = require('Module:TableTools')
local namespaces = mw.site.namespaces
local cfg = data.cfg
local useTalk = type(frame) == 'table'
and type(frame.args) == 'table'
and yesno(frame.args.talk) -- Whether to use the talk parameter.
-- Get the header names.
local function checkValue(value, default)
if type(value) == 'string' then
return value
else
return default
end
end
local nsHeader = checkValue(cfg.wikitableNamespaceHeader, 'Namespace')
local aliasesHeader = checkValue(cfg.wikitableAliasesHeader, 'Aliases')
-- Put the namespaces in order.
local mappingsOrdered = {}
for nsname, params in pairs(mappings) do
if useTalk or nsname ~= 'talk' then
local nsid = namespaces[nsname].id
-- Add 1, as the array must start with 1; nsid 0 would be lost otherwise.
nsid = nsid + 1
mappingsOrdered[nsid] = params
end
end
mappingsOrdered = mTableTools.compressSparseArray(mappingsOrdered)
-- Build the table.
local ret = '{| class="wikitable"'
.. '\n|-'
.. '\n! ' .. nsHeader
.. '\n! ' .. aliasesHeader
for i, params in ipairs(mappingsOrdered) do
for j, param in ipairs(params) do
if j == 1 then
ret = ret .. '\n|-'
.. '\n| <code>' .. param .. '</code>'
.. '\n| '
elseif j == 2 then
ret = ret .. '<code>' .. param .. '</code>'
else
ret = ret .. ', <code>' .. param .. '</code>'
end
end
end
ret = ret .. '\n|-'
.. '\n|}'
return ret
end
return p
j7kygz1y56jpz4doq0m2c6x1td5d8ar
Πρότυπον:Tlf
10
3335
36522
2025-12-15T17:51:33Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<span style="white-space:nowrap;">{{{{#if:{{{1|}}}|{{{1}}}| tlf|...}}<!-- -->{{#ifeq:{{{2|x}}}|{{{2|}}}| |{{{2}}} | }}<!-- -->{{#ifeq:{{{3|x}}}|{{{3|}}}| |{{{3}}} | }}<!-- -->{{#ifeq:{{{4|x}}}|{{{4|}}}| |{{{4}}} | }}<!-- -->{{#ifeq:{{{5|x}}}|{{{5|}}}| |{{{5}}} | }}<!-- -->{{#ifeq:{{{6|x}}}|{{{6|}}}| |{{{6}}} | }}<!-- -->{{#ifeq:{{{7|x}}}|{{{7|}}}| |{{{7}}} | }}<!-- -->{{#ifeq:{{{8|x}}}|{{{8|}}}| |{{...'
36522
wikitext
text/x-wiki
<span style="white-space:nowrap;">{{{{#if:{{{1|}}}|{{{1}}}| tlf|...}}<!--
-->{{#ifeq:{{{2|x}}}|{{{2|}}}| |{{{2}}} | }}<!--
-->{{#ifeq:{{{3|x}}}|{{{3|}}}| |{{{3}}} | }}<!--
-->{{#ifeq:{{{4|x}}}|{{{4|}}}| |{{{4}}} | }}<!--
-->{{#ifeq:{{{5|x}}}|{{{5|}}}| |{{{5}}} | }}<!--
-->{{#ifeq:{{{6|x}}}|{{{6|}}}| |{{{6}}} | }}<!--
-->{{#ifeq:{{{7|x}}}|{{{7|}}}| |{{{7}}} | }}<!--
-->{{#ifeq:{{{8|x}}}|{{{8|}}}| |{{{8}}} | }}<!--
-->{{#ifeq:{{{9|x}}}|{{{9|}}}| |{{{9}}} | }}<!--
-->}}</span><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc sub-page, not here! -->
</noinclude>
gr6hv9nl65h8wg9cys21al44xhaneou
Πρότυπον:Ombox
10
3336
36523
2025-12-15T17:52:19Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:Message box|ombox}}<noinclude>{{Τεκμηρίωση προτύπου}}</noinclude>'
36523
wikitext
text/x-wiki
{{#invoke:Message box|ombox}}<noinclude>{{Τεκμηρίωση προτύπου}}</noinclude>
fh0jvmiiub1jjbm0s4rg0gn2k2knyss
Πρότυπον:Module rating
10
3337
36525
2025-12-15T17:55:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{Module other|{{ombox | type = notice | image = {{#switch: {{{1|}}} | pre-alpha | prealpha | pa = [[File:Ambox warning blue construction.svg|40x40px|link=]] | alpha | a = [[File:Greek lc alpha icon.svg|26x26px|link=]] | beta | b = [[File:Greek lc beta icon.svg|40x40px|link=]] | release | r | general | g = [[File:Green check.svg|40x40px|link=]] | protected | protect | p = File:Padlock-{...'
36525
wikitext
text/x-wiki
{{Module other|{{ombox
| type = notice
| image = {{#switch: {{{1|}}}
| pre-alpha | prealpha | pa = [[File:Ambox warning blue construction.svg|40x40px|link=]]
| alpha | a = [[File:Greek lc alpha icon.svg|26x26px|link=]]
| beta | b = [[File:Greek lc beta icon.svg|40x40px|link=]]
| release | r | general | g = [[File:Green check.svg|40x40px|link=]]
| protected | protect | p = [[File:Padlock-{{#switch:{{#invoke:Effective protection level|edit|{{#switch:{{SUBPAGENAME}}|doc|sandbox={{FULLBASEPAGENAME}}|{{FULLPAGENAME}}}}}}|autoconfirmed=silver|accountcreator|templateeditor=pink|red}}.svg|40x40px|link=]]
}}
| style =
| textstyle =
| text = {{#switch: {{{1|}}}
| pre-alpha | prealpha | pa = This module is rated as [[:Category:Modules in pre-alpha development|pre-alpha]]. It is unfinished, and may or may not be in active development. It should not be used from article namespace pages. Modules remain pre-alpha until the original editor (or someone who takes one over if it is abandoned for some time) is satisfied with the basic structure.<!--
-->{{#switch: {{SUBPAGENAME}}|doc|sandbox=<!-- No category for /doc or /sandbox subpages -->
| {{#ifeq: {{{nocat|}}} | true | <!-- No category if user sets nocat=true --> | [[Κατηγορίαν:Modules σε στάδιο pre-alpha development|{{PAGENAME}}]] }}
}}
| alpha | a = This module is rated as [[:Category:Modules σε στάδιο alpha|alpha]]. It is ready for third party input, and may be used on a few pages to see if problems arise, but should be watched. Suggestions for new features or changes in their input and output mechanisms are welcome.<!--
-->{{#switch: {{SUBPAGENAME}}|doc|sandbox=<!-- No category for /doc or /sandbox subpages -->
| {{#ifeq: {{{nocat|}}} | true | <!-- No category if user sets nocat=true --> | [[Κατηγορίαν:Modules σε στάδιο alpha|{{PAGENAME}}]] }}
}}
| beta | b = This module is rated as [[:Category:Modules in beta|beta]], and is ready for widespread use. It is still new and should be used with some caution to ensure the results are as expected.<!--
-->{{#switch: {{SUBPAGENAME}}|doc|sandbox=<!-- No category for /doc or /sandbox subpages -->
| {{#ifeq: {{{nocat|}}} | true | <!-- No category if user sets nocat=true --> | [[Κατηγορίαν:Modules σε στάδιο beta|{{PAGENAME}}]] }}
}}
| release | r | general | g = This module is rated as [[:Category:Modules for general use|ready for general use]]. It has reached a mature form and is thought to be bug-free and ready for use wherever appropriate. It is ready to mention on help pages and other Wikipedia resources as an option for new users to learn. To reduce server load and bad output, it should be improved by [[WP:TESTCASES|sandbox testing]] rather than repeated trial-and-error editing.<!--
-->{{#switch: {{SUBPAGENAME}}|doc|sandbox=<!-- No category for /doc or /sandbox subpages -->
| {{#ifeq: {{{nocat|}}} | true | <!-- No category if user sets nocat=true --> | [[Category:Modules for general use|{{PAGENAME}}]] }}
}}
| protected | protect | p = This module is [[:Category:Modules subject to page protection|subject to page protection]]. It is a [[Wikipedia:High-risk templates|highly visible module]] in use by a very large number of pages, or is [[WP:SUBST|substituted]] very frequently. Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is [[WP:PROTECT|protected]] from editing.<!--
-->{{#switch: {{SUBPAGENAME}}|doc|sandbox=<!-- No category for /doc or /sandbox subpages -->
| {{#ifeq: {{{nocat|}}} | true | <!-- No category if user sets nocat=true --> | [[Category:Modules subject to page protection|{{PAGENAME}}]] }}
}}
| #default = {{error|Module rating is invalid or not specified.}}
}}
}}|{{error|This template should be placed in the Module namespace.}}|demospace={{{demospace|<noinclude>module</noinclude>}}}}}<noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage, and interwikis go in Wikidata. -->
</noinclude>
lv6qgw9wo3b2jouosguc1fyphh2p9t7
Πρότυπον:Module other
10
3338
36526
2025-12-15T17:56:19Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#switch: <!--If no or empty "demospace" parameter then detect namespace--> {{#if:{{{demospace|}}} | {{lc: {{{demospace}}} }} <!--Use lower case "demospace"--> | {{#ifeq:{{NAMESPACE}}|{{ns:Module}} | module | other }} }} | module = {{{1|}}} | other | #default = {{{2|}}} }}<!--End switch--><noinclude> {{documentation}} <!-- Add categories to the /doc subpage, not here! --> </noinclude>'
36526
wikitext
text/x-wiki
{{#switch:
<!--If no or empty "demospace" parameter then detect namespace-->
{{#if:{{{demospace|}}}
| {{lc: {{{demospace}}} }} <!--Use lower case "demospace"-->
| {{#ifeq:{{NAMESPACE}}|{{ns:Module}}
| module
| other
}}
}}
| module = {{{1|}}}
| other
| #default = {{{2|}}}
}}<!--End switch--><noinclude>
{{documentation}}
<!-- Add categories to the /doc subpage, not here! -->
</noinclude>
9db98vx09purrfch7wguurzjgqz7u93
Module:Category handler/data
828
3339
36527
2025-12-15T17:57:20Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module assembles data to be passed to [[Module:Category handler]] using -- mw.loadData. This includes the configuration data and whether the current -- page matches the title blacklist. local data = require('Module:Category handler/config') local mShared = require('Module:Category handler/shared') local blacklist = require('Module:Category handler/blacklist') local title = mw.title.getCurrentTitle() data.currentTitleMatchesBlacklist = mSh...'
36527
Scribunto
text/plain
-- This module assembles data to be passed to [[Module:Category handler]] using
-- mw.loadData. This includes the configuration data and whether the current
-- page matches the title blacklist.
local data = require('Module:Category handler/config')
local mShared = require('Module:Category handler/shared')
local blacklist = require('Module:Category handler/blacklist')
local title = mw.title.getCurrentTitle()
data.currentTitleMatchesBlacklist = mShared.matchesBlacklist(
title.prefixedText,
blacklist
)
data.currentTitleNamespaceParameters = mShared.getNamespaceParameters(
title,
mShared.getParamMappings()
)
return data
k26mwixuaeijisfddb0sxkg82iux8v4
Module:Category handler/blacklist
828
3340
36528
2025-12-15T17:58:10Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module contains the blacklist used by [[Module:Category handler]]. -- Pages that match Lua patterns in this list will not be categorised unless -- categorisation is explicitly requested. return { '^Main Page$', -- don't categorise the main page. -- Don't categorise the following pages or their subpages. -- "%f[/\0]" matches if the next character is "/" or the end of the string. '^Wikipedia:Cascade%-protected items%f[/\0]'...'
36528
Scribunto
text/plain
-- This module contains the blacklist used by [[Module:Category handler]].
-- Pages that match Lua patterns in this list will not be categorised unless
-- categorisation is explicitly requested.
return {
'^Main Page$', -- don't categorise the main page.
-- Don't categorise the following pages or their subpages.
-- "%f[/\0]" matches if the next character is "/" or the end of the string.
'^Wikipedia:Cascade%-protected items%f[/\0]',
'^User:UBX%f[/\0]', -- The userbox "template" space.
'^User talk:UBX%f[/\0]',
-- Don't categorise subpages of these pages, but allow
-- categorisation of the base page.
'^Wikipedia:Template messages/.*$',
'/[aA]rchive' -- Don't categorise archives.
}
ne8sdldor304iu81gnqa05p401j3exc
Module:Category handler/shared
828
3341
36529
2025-12-15T17:58:58Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module contains shared functions used by [[Module:Category handler]] -- and its submodules. local p = {} function p.matchesBlacklist(page, blacklist) for i, pattern in ipairs(blacklist) do local match = mw.ustring.match(page, pattern) if match then return true end end return false end function p.getParamMappings(useLoadData) local dataPage = 'Module:Namespace detect/data' if useLoadData then return mw.loadData(dataPage).m...'
36529
Scribunto
text/plain
-- This module contains shared functions used by [[Module:Category handler]]
-- and its submodules.
local p = {}
function p.matchesBlacklist(page, blacklist)
for i, pattern in ipairs(blacklist) do
local match = mw.ustring.match(page, pattern)
if match then
return true
end
end
return false
end
function p.getParamMappings(useLoadData)
local dataPage = 'Module:Namespace detect/data'
if useLoadData then
return mw.loadData(dataPage).mappings
else
return require(dataPage).mappings
end
end
function p.getNamespaceParameters(titleObj, mappings)
-- We don't use title.nsText for the namespace name because it adds
-- underscores.
local mappingsKey
if titleObj.isTalkPage then
mappingsKey = 'talk'
else
mappingsKey = mw.site.namespaces[titleObj.namespace].name
end
mappingsKey = mw.ustring.lower(mappingsKey)
return mappings[mappingsKey] or {}
end
return p
omlsnhudxz6juptvtxz7ns97jutbzc5
Module:Category handler/config
828
3342
36530
2025-12-15T17:59:45Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-------------------------------------------------------------------------------- -- [[Module:Category handler]] configuration data -- -- Language-specific parameter names and values can be set here. -- -- For blacklist config, see [[Module:Category handler/blacklist]]. -- -------------------------------------------------------------------------------- local cfg = {} -- Don't edit this line. -----...'
36530
Scribunto
text/plain
--------------------------------------------------------------------------------
-- [[Module:Category handler]] configuration data --
-- Language-specific parameter names and values can be set here. --
-- For blacklist config, see [[Module:Category handler/blacklist]]. --
--------------------------------------------------------------------------------
local cfg = {} -- Don't edit this line.
--------------------------------------------------------------------------------
-- Start configuration data --
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
-- Parameter names --
-- These configuration items specify custom parameter names. --
-- To add one extra name, you can use this format: --
-- --
-- foo = 'parameter name', --
-- --
-- To add multiple names, you can use this format: --
-- --
-- foo = {'parameter name 1', 'parameter name 2', 'parameter name 3'}, --
--------------------------------------------------------------------------------
cfg.parameters = {
-- The nocat and categories parameter suppress
-- categorisation. They are used with Module:Yesno, and work as follows:
--
-- cfg.nocat:
-- Result of yesno() Effect
-- true Categorisation is suppressed
-- false Categorisation is allowed, and
-- the blacklist check is skipped
-- nil Categorisation is allowed
--
-- cfg.categories:
-- Result of yesno() Effect
-- true Categorisation is allowed, and
-- the blacklist check is skipped
-- false Categorisation is suppressed
-- nil Categorisation is allowed
nocat = 'nocat',
categories = 'categories',
-- The parameter name for the legacy "category2" parameter. This skips the
-- blacklist if set to the cfg.category2Yes value, and suppresses
-- categorisation if present but equal to anything other than
-- cfg.category2Yes or cfg.category2Negative.
category2 = 'category2',
-- cfg.subpage is the parameter name to specify how to behave on subpages.
subpage = 'subpage',
-- The parameter for data to return in all namespaces.
all = 'all',
-- The parameter name for data to return if no data is specified for the
-- namespace that is detected.
other = 'other',
-- The parameter name used to specify a page other than the current page;
-- used for testing and demonstration.
demopage = 'page',
}
--------------------------------------------------------------------------------
-- Parameter values --
-- These are set values that can be used with certain parameters. Only one --
-- value can be specified, like this: --
-- --
-- cfg.foo = 'value name' -- --
--------------------------------------------------------------------------------
-- The following settings are used with the cfg.category2 parameter. Setting
-- cfg.category2 to cfg.category2Yes skips the blacklist, and if cfg.category2
-- is present but equal to anything other than cfg.category2Yes or
-- cfg.category2Negative then it supresses cateogrisation.
cfg.category2Yes = 'yes'
cfg.category2Negative = '¬'
-- The following settings are used with the cfg.subpage parameter.
-- cfg.subpageNo is the value to specify to not categorise on subpages;
-- cfg.subpageOnly is the value to specify to only categorise on subpages.
cfg.subpageNo = 'no'
cfg.subpageOnly = 'only'
--------------------------------------------------------------------------------
-- Default namespaces --
-- This is a table of namespaces to categorise by default. The keys are the --
-- namespace numbers. --
--------------------------------------------------------------------------------
cfg.defaultNamespaces = {
[ 0] = true, -- main
[ 6] = true, -- file
[ 12] = true, -- help
[ 14] = true, -- category
[100] = true, -- portal
[108] = true, -- book
}
--------------------------------------------------------------------------------
-- Wrappers --
-- This is a wrapper template or a list of wrapper templates to be passed to --
-- [[Module:Arguments]]. --
--------------------------------------------------------------------------------
cfg.wrappers = 'Template:Category handler'
--------------------------------------------------------------------------------
-- End configuration data --
--------------------------------------------------------------------------------
return cfg -- Don't edit this line.
6ga9hbq2pdwalsvx68i53dmbr421rq5
Module:Wikidata/Formatters
828
3343
36531
2025-12-15T18:01:37Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} p.Formatters = {} setmetatable(p.Formatters, { __index = function(t, key) t[key] = require('Module:Wikidata/Formatters/' .. key) return t[key] end }) local lib = require 'Module:Wikidata/lib' local function formatSpecial(snaktype, options) local i18n = mw.loadData('Module:Wikidata/i18n') return options[snaktype] or i18n[snaktype] -- todo: přeložit pomocí hlášení end function p.getRawValue(snak, opt...'
36531
Scribunto
text/plain
--require "strict"
local p = {}
p.Formatters = {}
setmetatable(p.Formatters, {
__index = function(t, key)
t[key] = require('Module:Wikidata/Formatters/' .. key)
return t[key]
end
})
local lib = require 'Module:Wikidata/lib'
local function formatSpecial(snaktype, options)
local i18n = mw.loadData('Module:Wikidata/i18n')
return options[snaktype] or i18n[snaktype] -- todo: přeložit pomocí hlášení
end
function p.getRawValue(snak, options)
if snak.snaktype == 'somevalue' or snak.snaktype == 'novalue' then
return snak.snaktype
elseif snak.snaktype ~= 'value' then
return error(lib.formatError('unknown-snak-type', snak.snaktype))
end
return p.Formatters[snak.datavalue.type].getRawValue(snak.datavalue.value, options or {})
end
function p.formatRawValue(value, formatter, options)
options = options or {}
if value == 'somevalue' or value == 'novalue' then
return formatSpecial(value, options)
else
return p.Formatters[formatter].formatRawValue(value, options)
end
end
function p.getFormattedValue(snak, options)
if snak.snaktype == 'somevalue' or snak.snaktype == 'novalue' then
return formatSpecial(snak.snaktype, options)
elseif snak.snaktype ~= 'value' then
return error(lib.formatError('unknown-snak-type', snak.snaktype))
end
local formatter = options['value-formatter'] or snak.datavalue.type
return p.Formatters[formatter].formatValue(snak.datavalue.value, options)
end
return p
5hoty9ojai8xouazri4qqv2r947fh00
Module:Wikidata/Filterers
828
3344
36532
2025-12-15T18:02:29Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "Module:No globals" local p = {} local lib = require 'Module:Wikidata/lib' local function in_array(value, array) for _, val in ipairs(array) do if val == value then return true end end return false end local function checkLimit(array, limit) local limit = limit and tonumber(limit) if limit then return #array >= limit end return true end local function applyLimit(array, limit) local limit = limit and tonumber(limit)...'
36532
Scribunto
text/plain
--require "Module:No globals"
local p = {}
local lib = require 'Module:Wikidata/lib'
local function in_array(value, array)
for _, val in ipairs(array) do
if val == value then
return true
end
end
return false
end
local function checkLimit(array, limit)
local limit = limit and tonumber(limit)
if limit then
return #array >= limit
end
return true
end
local function applyLimit(array, limit)
local limit = limit and tonumber(limit)
while limit and #array > limit do
table.remove(array)
end
end
local function IsInLanguage(snak, langs)
local langs = lib.textToTable(langs)
if snak.datatype ~= 'monolingualtext' then
return error(lib.raiseInvalidDatatype('IsInLanguage', snak.datatype, 'monolingualtext'))
else
return lib.IsSnakValue(snak) and in_array(snak.datavalue.value.language, langs)
end
end
local function filterSnaktype(snak, somevalue, novalue)
local snaktype = snak.snaktype
if snaktype == 'somevalue' then
return somevalue or false
elseif snaktype == 'novalue' then
return novalue or false
end
return lib.IsSnakValue(snak)
end
local function filterBySnaktype(statement, somevalue, novalue)
return filterSnaktype(statement.mainsnak, somevalue, novalue)
end
local function hasSnakTarget(snak, target)
local Formatters = require 'Module:Wikidata/Formatters'
return tostring(Formatters.getRawValue(snak)) == target
end
local function filterHasTarget(statement, target)
return hasSnakTarget(statement.mainsnak, target)
end
local function filterHasQualifier(statement, prop, value)
if statement.qualifiers then
prop = prop:upper()
for _, snak in ipairs(statement.qualifiers[prop] or {}) do
if not value or hasSnakTarget(snak, value) then
return true
end
end
end
return false
end
local function filterHasRanks(statement, ranks)
return in_array(statement.rank, ranks)
end
local function filterHasReferences(statement, options)
if statement.references then
if #p.filterReferences(statement.references, options) > 0 then
return true
end
end
return false
end
local function filterSnakHasLabel(snak)
local datatype = snak.datatype
if datatype ~= 'wikibase-item' and datatype ~= 'wikibase-property' then
return error(lib.raiseInvalidDatatype('filterSnakHasLabel', datatype, { 'wikibase-item', 'wikibase-property' }))
end
if lib.IsSnakValue(snak) then
local langs = { 'cs', 'el', 'en' }
local Formatters = require 'Module:Wikidata/Formatters'
if lib.getLabelInLanguage(Formatters.getRawValue(snak), langs) then
return true
end
end
return false
end
local function filterHasLabel(statement)
return filterSnakHasLabel(statement.mainsnak)
end
local function filterItemIsInstance(statement, options)
local datatype = statement.mainsnak.datatype
if datatype ~= 'wikibase-item' and datatype ~= 'wikibase-property' then
return error(lib.raiseInvalidDatatype('filterItemIsInstance', datatype, { 'wikibase-item', 'wikibase-property' }))
end
if lib.IsSnakValue(statement.mainsnak) then
local Module = require 'Module:Wikidata/Tree'
local Formatters = require 'Module:Wikidata/Formatters'
local item = Formatters.getRawValue(statement.mainsnak)
if Module.IsInstance(item, options) then
return true
end
end
return false
end
local function filterMainsnakInLanguage(statement, withlang)
return IsInLanguage(statement.mainsnak, withlang)
end
local function filterMainsnakHasUnit(statement, unit)
local datatype = statement.mainsnak.datatype
if datatype ~= 'quantity' then
return error(lib.raiseInvalidDatatype('filterItemIsInstance', datatype, { 'quantity' }))
end
return lib.IsSnakValue(statement.mainsnak) and lib.getItemIdFromURI(statement.mainsnak.datavalue.value.unit) == unit
end
local function filter(array, callback, ...)
local i = #array
while i > 0 do
if not callback(array[i], ...) then
table.remove(array, i)
end
i = i - 1
end
end
local function getValuesFromQualifiers(qualifiers)
local Values = {}
local Formatters = require 'Module:Wikidata/Formatters'
for key, array in pairs(lib.props) do
for _, prop in ipairs(array) do
for _, snak in ipairs(qualifiers[prop] or {}) do
if lib.IsSnakValue(snak) then
Values[key] = Formatters.getRawValue(snak)
break
end
end
end
end
return Values
end
function p.filterStatementsFromEntity(entity, options)
if not options.property or options.property == '' then
return error(lib.formatError('param-not-provided', 'property'))
end
if not entity or not entity.claims then
return {}
end
local property = mw.ustring.upper(options.property)
local statements = mw.clone(entity.claims[property])
if not statements then
return {}
end
p.filterStatements(statements, options)
return statements
end
function p.filterStatements(statements, options)
local options = lib.common.cleanArgs(options)
-- apply filter by rank
local rank = options.rank or "valid"
if rank ~= "all" then
if rank == "valid" or rank == "best" then
filter(statements, filterHasRanks, { "normal", "preferred" })
if rank == "best" and #statements > 0 then
for _, statement in ipairs(statements) do
if statement.rank == "preferred" then
filter(statements, filterHasRanks, { "preferred" })
break
end
end
end
else
filter(statements, filterHasRanks, { rank })
end
if #statements == 0 then return end
end
-- apply filter by source
if options.ref then
filter(statements, filterHasReferences, options)
if #statements == 0 then return end
end
-- apply filter by snak type
filter(statements, filterBySnaktype, options.somevalue and true, options.novalue and true)
if #statements == 0 then return end
-- apply filter by target value
if options.withtarget then
filter(statements, filterHasTarget, options.withtarget)
if #statements == 0 then return end
end
-- apply filter by qualifier property
if options.withqualifier then
filter(statements, filterHasQualifier, options.withqualifier, options.withqualifiervalue)
if #statements == 0 then return end
end
-- apply filter by language
if options.withlang then
filter(statements, filterMainsnakInLanguage, options.withlang)
if #statements == 0 then return end
end
-- apply filter by unit
if options.withunit then
filter(statements, filterMainsnakHasUnit, options.withunit)
if #statements == 0 then return end
end
-- apply filter by time
if options.date then
local date
local Time = require 'Module:Time'
if type(options.date) == 'table' then
date = options.date
elseif options.date == '#now' then
date = Time.new(os.date('!*t'))
else
date = Time.newFromIso8601(options.date)
end
if not date then
return error(lib.formatError('invalid-date', tostring(options.date)))
end
local oldStatements = mw.clone(statements)
while #statements > 0 do table.remove(statements) end
for _, statement in ipairs(oldStatements) do
local Values = getValuesFromQualifiers(statement.qualifiers or {})
if Values.point then
if date == Values.point then
filter(statements, function(st)
local val = getValuesFromQualifiers(st.qualifiers).point
if val then
return val == Values.point
end
return true
end)
table.insert(statements, statement)
elseif Values.point < date then
if #statements == 0 then
table.insert(statements, statement)
else
local same, ins
for _, st in ipairs(statements) do
local val = getValuesFromQualifiers(st.qualifiers).point
if val then
if date == Values.point then
same = true
break
end
if val == Values.point or val < Values.point then
ins = true
end
end
end
if ins and not same then
filter(statements, function(st)
local val = getValuesFromQualifiers(st.qualifiers).point
return not val or val == Values.point
end)
table.insert(statements, statement)
end
end
end
else
if Values.begin then
if Values.begin < date then
if not Values.ending then
table.insert(statements, statement)
elseif date < Values.ending then
table.insert(statements, statement)
end
end
elseif Values.ending then
if date < Values.ending then
if not Values.begin then
table.insert(statements, statement)
elseif Values.begin < date then
table.insert(statements, statement)
end
end
end
end
end
if #statements == 0 then return end
end
if lib.IsOptionTrue(options, 'withlabel') then
filter(statements, filterHasLabel)
if #statements == 0 then return end
end
-- apply filter by class
if options.instance then
filter(statements, filterItemIsInstance, options)
if #statements == 0 then return end
end
-- sort statements if needed
if options.sort then -- patří to sem?
local Sorters = require 'Module:Wikidata/Sorters'
Sorters.sortStatements(statements, options)
end
-- apply filter by limit
applyLimit(statements, options.limit)
end
function p.filterQualifiers(qualifiers, options)
local options = lib.common.cleanArgs(options)
filter(qualifiers, filterSnaktype, options['qualifiers somevalue'] and true, options['qualifiers novalue'] and true)
if #qualifiers == 0 then return end
if options['qualifiers withlang'] then
filter(qualifiers, IsInLanguage, options['qualifiers withlang'])
if #qualifiers == 0 then return end
end
if lib.IsOptionTrue(options, 'qualifiers withlabel') then
filter(qualifiers, filterSnakHasLabel)
if #qualifiers == 0 then return end
end
if options['qualifiers class'] then
--[[ todo
local datatype = Qualifiers[math.random(#Qualifiers)].datatype
if datatype == 'wikibase-item' or datatype == 'wikibase-property' then
oldQualifiers, Qualifiers = Qualifiers, {}
local Module = require 'Module:Wikidata/Tree'
local Formatters = require 'Module:Wikidata/Formatters'
for _, snak in ipairs(oldQualifiers) do
if lib.IsSnakValue(snak) then
local item = Formatters.getRawValue(snak)
if Module.IsInTree(item, options['qualifiers class'], 'P279', 20, {}) then
table.insert(Qualifiers, snak)
end
end
end
if #Qualifiers == 0 then return {} end
else
return error(lib.raiseInvalidDatatype('inClass', datatype, { 'wikibase-item', 'wikibase-property' }))
end
]]--
end
if options['qualifiers sort'] then
local Sorters = require 'Module:Wikidata/Sorters'
Sorters.sortQualifiers(qualifiers, options)
end
applyLimit(qualifiers, options['qualifiers limit'])
end
function p.filterReferences(references, options)
local options = lib.common.cleanArgs(options)
if options.ref == '#any' then
-- @deprecated
return references
end
local oldReferences, References = references, {}
if options.ref == 'valid' then
local map = (require 'Module:Wikidata/cite').props
for _, ref in ipairs(oldReferences) do
for _, props in pairs(map) do
for _, prop in ipairs(props) do
if ref.snaks[prop] then
table.insert(References, ref)
end
end
end
end
end
if options.min_ref and not checkLimit(References, options.min_ref) then
return {}
end
-- @deprecated
return References
end
return p
2nvza40ini20v6cmhhpqnxd98oe7luy
Module:WikidataWD
828
3345
36533
2025-12-15T18:03:15Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--script that retrieves basic data stored in Wikidata, for the datamodel, see https://www.mediawiki.org/wiki/Extension:Wikibase_Client/Lua local p = {} local linguistic = require('Module:Linguistic') --local formatDate = require('Module:Complex date') only loaded when needed to save memory in large pages like Wikidata:List of properties/all local convertlangcode = mw.loadData('Module:Dictionary/lang codes') local formatNum = require('Module:Format...'
36533
Scribunto
text/plain
--script that retrieves basic data stored in Wikidata, for the datamodel, see https://www.mediawiki.org/wiki/Extension:Wikibase_Client/Lua
local p = {}
local linguistic = require('Module:Linguistic')
--local formatDate = require('Module:Complex date') only loaded when needed to save memory in large pages like Wikidata:List of properties/all
local convertlangcode = mw.loadData('Module:Dictionary/lang codes')
local formatNum = require('Module:Formatnum')
local fb = require('Module:Fallback')
local i18nmessages = mw.loadData('Module:i18n/wikidata')
-- Wiki-specific parameters
local defaultlang = 'el' -- mw.getCurrentFrame():preprocess("{{int:lang}}")
local defaultlink = 'wikidata'
local function i18n(str, lang)
local message = i18nmessages[str]
if type(message) == 'str' then
return message
end
return fb._langSwitch(message, lang or defaultlang)
end
local function formatError( key, text )
return error(i18n(key) .. (text or ''))
end
local function addtrackingcat(prop, cat)
if not prop and not cat then
return error("no property provided")
end
if not cat then
cat = i18nmessages.trackingcat .. '/' .. string.upper(prop)
end
return '[[Category:' .. cat .. ']]'
end
local function removeblanks(args)
local a = 1
for i, j in pairs(args) do -- does not work ??
if (j == '') or (j == '-') then args[i] = nil end
end
return args
end
local function formatTheUnknown() -- voir si on peut accorder/adapter l'usage de "inconnu"
return i18n('somevalue')
end
local function samevalue(snak, target)
if snak.snaktype == 'value' and p.getRawvalue(snak) == target then
return true
end
end
local function showlang(statement, str) -- TODO (not yet in proper format)
--adds a lang indication at the start of the string, based on data in statement
local mainsnak = statement.mainsnak
if mainsnak.snaktype ~= 'value' then
return str
end
local langlist = {}
if mainsnak.datavalue.type == 'monolingualtext' then
langlist = {mainsnak.datavalue.value.language}
elseif (statement.qualifiers) and (statement.qualifiers.P407) then
for i, j in pairs( statement.qualifiers.P407 ) do
if j.snaktype == 'value' then
local val = convertlangcode[j.datavalue.value['numeric-id']]
table.insert(langlist, val)
end
end
end
if #langlist == 0 then
return str
else
return '('.. table.concat(langlist) .. ')' .. str
end
end
function p.getEntity( val )
if type(val) == 'table' then
return val
end
return mw.wikibase.getEntityObject(val)
end
-- DATE FUNCTIONS
local function splitTimestamp(timestamp, calendar)
local pattern = "(%W)(%d+)%-(%d+)%-(%d+)"
local era, year, month, day = timestamp:match(pattern)
if calendar == 'julian' then
--todo year, month, day = formatdate.gregorianToJulian( era .. year, month, day )
end
return {day = day, month = month, year = year, era = era, timestamp = timestamp, type = 'dateobject'}
end
local function rangeobject(begin, ending, params)
local timestamp
if begin then
timestamp = begin.timestamp
elseif ending then
timestamp = ending.timestamp
end
return {begin = begin, ending = ending, timestamp = timestamp, type = 'rangeobject'}
end
local function dateobject(orig, params) -- transforme un snak en un nouvel objet utilisable par Module:Date complexe
if not params then
params = {}
end
local newobj = splitTimestamp(orig.time, orig.calendar) -- initalise l'object en mettant la valeur des dates
newobj.precision = params.precision or orig.precision
newobj.type = 'dateobject'
return newobj
end
local function formatDatepoint(obj, params) -- TO IMPROVE
local formatDate = require('Module:Complex date')
if not obj then
return nil
end
local lang = params.lang or defaultlang
local precision = obj.precision
if params.precision and (params.precision < obj.precision) then -- if we don't want to show the value to its full detail
precision = params.precision
end
if precision >= 11 then
return formatDate.complex_date{args={date1 = obj.year .. '-' .. obj.month .. '-' .. obj.day, lang= lang}}
elseif precision == 10 then
return formatDate.complex_date{args={date1 = obj.year .. '-' .. obj.month, lang= lang}}
elseif precision == 9 then
return formatDate.complex_date{args={date1 = tostring(obj.year), lang= lang}}
elseif precision == 8 then
return formatDate.complex_date{args={date1 = string.sub(tostring(obj.year), 1, 3) .. '0', lang = lang, precision = 'decade'}}
elseif precision == 7 then
return formatDate.complex_date{args={date1 = string.sub(tostring(obj.year + 100), 1, 2), lang = lang, precision = 'century'}}
end
end
local function formatDaterange(obj, params) --TODO
local begin = formatDatepoint(obj.begin, params) or ''
local ending = formatDatepoint(obj.ending, params) or ''
return begin .. '-' .. ending
end
local function objecttotext(obj, params)
if obj.type == 'dateobject' then
return formatDatepoint(obj, params)
elseif obj.type == 'rangeobject' then
return formatDaterange(obj, params)
end
end
local function tableToText(values, params) -- takes a list of already formatted values and make them a text
if not values then
return nil
end
return linguistic.conj( values, params.lang or defaultlang, params.conjtype)--linguistic.conj( values, params.lang, params.conjtype )
end
function p.getDate(obj)
--[[
returns an object containing a timestamp for easy sorting, and other data
possible types of object:
dateobject
{timestamp = string, year = number, month = number, day = number, calendar = string}
rangeobject
{timestamp = string, begin = dateobject, ending = dateobject}
]]--
if not obj then
return nil
end
if type(obj) == 'string' then
obj = p.getEntity(obj)
end
-- if obj is a statement with date, get it
if obj.mainsnak and type(obj.mainsnak.datatype) == 'time' and (obj.mainsnak.datavalue.value) then
return dateobject(obj.mainsnak.datavalue.value.time)
end
-- else preload relevant data
local qualifs = obj.qualifiers -- when obj is a statement, look in qualifiers
local claims = obj.claims -- when obj is an item, look in claims
local pointprop = {'P585', 'P571'} -- dates corresponding to a punctual fact
local beginprop = {'P580', 'P569'} -- start date, birth date == start of a date range
local endingprop = {'P582', 'P570'}
local function getval(prop)
local val
if claims and claims[prop] and claims[prop][1].mainsnak.snaktype == 'value' then
val = claims[prop][1].mainsnak.datavalue.value
elseif qualifs and qualifs[prop] and qualifs[prop][1].snaktype == 'value' then
val = qualifs[prop][1].datavalue.value
end
if val then
return dateobject(val)
end
end
for i, prop in pairs(pointprop) do
local val = getval(prop)
if val then return val end
end
--if no date has not been found, look for startdate or enddate
local begin, ending
for i, prop in pairs(beginprop) do
begin = getval(prop)
if begin then
break
end
end
for i, prop in pairs(endingprop) do
ending = getval(prop)
if ending then
break
end
end
if (begin or ending) then
return rangeobject(begin, ending)
end
end
function p.getFormattedDate(statement, params)
local datetable = p.getDate(statement)
if not datetable then
return nil
end
return objecttotext(datetable, params)
end
local function hastargetvalue(claim, target)
if target == nil then
return true
end
return samevalue(claim.mainsnak, target)
end
local function hasrank(claim, target)
if target == 'valid' then
return hasrank(claim, 'preferred') or hasrank(claim, 'normal')
end
if claim.rank == target then
return true
end
return false
end
local function bestranked(claims)
if not claims then
return nil
end
local preferred, normal = {}, {}
for i, j in pairs(claims) do
if j.rank == 'preferred' then
table.insert(preferred, j)
elseif j.rank == 'normal' then
table.insert(normal, j)
end
end
if #preferred > 0 then
return preferred
else
return normal
end
end
local function hasqualifier(claim, qualifier, qualifiervalues)
qualifier = string.upper(qualifier)
if not qualifier then -- si aucun qualificatif est demandé, ça passe
return true
end
if not claim.qualifiers or not claim.qualifiers[qualifier] then
return false
end
if type(qualifiervalues) == 'string' then
qualifiervalues = {qualifiervalues}
end
if (not qualifiervalues) or (qualifiervalues == {}) then
return true -- si aucune valeur spécifique n'est exigée
end
for i, j in pairs(claim.qualifiers[qualifier]) do
for k, l in pairs(qualifiervalues) do
if p.getRawvalue(j) == l then
return true
end
end
end
return false
end
local function hassource(statement, source, sourceproperty)
if not statement.references then
return false
end
sourceproperty = string.upper(sourceproperty or 'P248')
local sourcevalue = string.upper(source or '')
for i, ref in pairs(statement.references) do
for prop, content in pairs(ref.snaks) do
if prop == sourceproperty then
if sourcevalue == '' then
return true
else
for j, k in pairs(content) do
if p.getRawvalue(k) == source then
return true
end
end
end
end
end
end
end
local function hasdate(statement)
local dateprops = {'P580', 'P585', 'P582'}
if not statement.qualifiers then
return false
end
for i, prop in pairs(dateprops) do
if statement.qualifiers[prop] then
return true
end
end
return false
end
local function isinlanguage(snak, lang) -- ne fonctionne que pour les monolingualtext / étendre aux autres types en utilisant les qualifiers ?
if snak.snaktype == 'value' and snak.datavalue.type == 'monolingualtext' and snak.datavalue.value.language == lang then
return true
end
return false
end
local function isSpecial(snak)
if snak.snaktype == 'value' then
return false
end
return true
end
local function numval(claims, numval) -- retourn les numval premières valeurs de la table claims
local numval = tonumber(numval) or 0 -- raise a error if numval is not a positive integer ?
if #claims <= numval then
return claims
end
local newclaims = {}
while #newclaims < numval do
table.insert(newclaims, claims[#newclaims + 1])
end
return newclaims
end
function p.comparedate(a, b) -- returns true if a is earlier than B or if a has a date but not b
if a and b then
return a.timestamp < b.timestamp
elseif a then
return true
end
end
function p.chronosort(objs, inverted)
table.sort(objs, function(a,b)
local timeA = p.getDate(a)
local timeB = p.getDate(b)
if inverted then
return p.comparedate(timeB, timeA)
else
return p.comparedate(timeA, timeB)
end
end
)
return objs
end
function p.sortclaims(claims, sorttype)
if sorttype == 'chronological' then
return p.chronosort(claims)
elseif sorttype == 'inverted' then
return p.chronosort(claims, true)
elseif type(sorttype) == 'function' then
table.sort(claims, sorttype)
return claims
end
return claims
end
function p.getRawvalue(snak)
return p.getDatavalue(snak, {displayformat = 'raw'})
end
function p.showentity(entity, lang)
if not entity then
return nil
end
if type(entity) == 'string' then
entity = p.getEntity(entity)
end
if not entity or not entity.type then
return formatError('entity-not-found')
end
label = p._getLabel(entity, lang)
local id = entity.id
if entity.type == 'property' then
link = 'Property:' .. id
else
link = id
end
return '[[' .. link .. '|' .. label .. ']] <small>(' .. id ..')</small>'
end
function p.getDatavalue(snak, params)
if not params then
params = {}
end
local displayformat = params.displayformat
if snak.snaktype ~= 'value' then
return nil
end
local datatype = snak.datavalue.type
local value = snak.datavalue.value
if datatype == 'wikibase-entityid' then
local prefix = 'Q'
if snak.datavalue.value["entity-type"] == 'property' then
prefix = 'P'
end
local id = prefix .. tostring(value['numeric-id'])
if displayformat == 'raw' then
return id
elseif displayformat == 'wikidatastyle' then
return p.showentity(id, params.lang)
elseif type(displayformat) == 'function' then
return displayformat(snak, params)
else
return p.formatEntity(id, params)
end
elseif datatype == 'string' then
if params.displayformat == 'weblink' then
return require('Module:Weblink').makelink(value, params.showntext)
elseif params.urlpattern then
value = '[' .. mw.ustring.gsub(params.urlpattern, '$1', value) .. ' ' .. (params.text or value) .. ']'
end
return value
elseif datatype == 'time' then -- format example: +00000001809-02-12T00:00:00Z
if displayformat == 'raw' then
return value.time
else
return objecttotext(dateobject(value), params)
end
elseif datatype == 'globecoordinate' then
-- retourne une table avec clés latitude, longitude, précision et globe à formater par un autre module (à changer ?)
value.globe = require('Module:Wikidata/Globes')[value.globe] -- transforme l'ID du globe en nom anglais utilisable par geohack
if displayformat == 'latitude' then
return value.latitude
elseif displayformat == 'longitude' then
return value.longitude
else
return value -- note : les coordonnées Wikidata peuvent être utilisée depuis Module:Coordinates. Faut-il aussi autoriser à appeler Module:Coordiantes ici ?
end
elseif datatype == 'quantity' then -- todo : gérer les paramètre précision
if displayformat == 'raw' then
return value.amount
else
return formatNum.formatNum(value.amount)
end
elseif datatype == 'monolingualtext' then
return '<span lang="' .. value.language .. '">' .. value.text .. '</span>'
else
return formatError( 'unknown-datavalue-type', datatype )
end
end
local function getMultipleClaims(args)
local newargs = args
local claims = {}
for i, j in pairs(args.property) do
newargs.property = j
local newclaims = p.getClaims(args)
if newclaims then
for k, l in pairs(newclaims) do
table.insert(claims, l)
end
end
end
return claims
end
function p.getClaims( args ) -- returns a table of the claims matching some conditions given in args
args = removeblanks(args)
if not args.property then
return formatError( 'property-param-not-provided' )
end
if type(args.property) == 'table' then
return getMultipleClaims(args)
end
--Get entity
if args.item then -- synonyms
args.entity = args.item
end
local entity = args.entity
if type(entity) ~= 'table' then
entity = p.getEntity( args.entity )
end
if (not entity) or (not entity.claims) then
return nil
end
local property = string.upper(args.property)
if not entity.claims[property] then
return nil
end
if not args.rank then
args.rank = 'best'
end
local claims = {}
-- ~= '' lorsque le paramètre est écrit mais laissé blanc dans une fonction frame
for i, statement in pairs(entity.claims[property]) do
if
(
not args.excludespecial
or
not (isSpecial(statement.mainsnak))
)
and
(
not args.targetvalue
or
hastargetvalue(statement, args.targetvalue)
)
and
(
not args.qualifier
or
hasqualifier(statement, args.qualifier, args.qualifiervalues or args.qualifiervalue)
)
and
(
not args.withsource or args.withsource == '-'
or
hassource(statement, args.withsource, args.sourceproperty)
)
and
(
not args.isinlanguage
or
isinlanguage(statement.mainsnak, args.isinlanguage)
)
and
(
args.rank == 'best' -- rank == best est traité à a fin
or
hasrank(statement, args.rank)
)
then
table.insert(claims, statement)
end
end
if #claims == 0 then
return nil
end
if args.rank == 'best' then
claims = bestranked(claims)
end
if args.sorttype then
claims = p.sortclaims(claims, args.sorttype)
end
if args.numval then
return numval(claims, args.numval)
end
return claims
end
function p.formatClaimList(claims, args)
if not claims then
return nil
end
for i, j in pairs(claims) do
claims[i] = p.formatStatement(j, args)
end
return claims
end
function p.stringTable(args) -- like getClaims, but get a list of string rather than a list of snaks, for easier manipulation
local claims = p.getClaims(args)
return p.formatClaimList(claims, args)
end
local function getQualifiers(statement, qualifs, params)
if not statement.qualifiers then
return nil
end
local vals = {}
for i, j in pairs(qualifs) do
j = string.upper(j)
if statement.qualifiers[j] then
for k, l in pairs(statement.qualifiers[j]) do
table.insert(vals, l)
end
end
end
if #vals == 0 then
return nil
end
return vals
end
function p.getFormattedQualifiers(statement, qualifs, params)
if not params then params = {} end
local qualiftable = getQualifiers(statement, qualifs)
if not qualiftable then
return nil
end
for i, j in pairs(qualiftable) do
qualiftable[i] = p.formatSnak(j, params)
end
return linguistic.conj(qualiftable, params.lang or defaultlang)
end
function p.formatStatement( statement, args )
if not statement.type or statement.type ~= 'statement' then
return formatError( 'unknown-claim-type', statement.type )
end
if not args then args = {} end
local lang = args.lang or defaultlang
local str = p.formatSnak( statement.mainsnak, args )
if args.showlang == true then
str = showlang(statement, str)
end
if args.showqualifiers then
local qualifs = args.showqualifiers
if type(qualifs) == 'string' then
qualifs = mw.text.split(qualifs, ',')
end
local foundvalues = p.getFormattedQualifiers(statement, qualifs, args)
if foundvalues then
if args.delimiter then
str = str .. args.delimiter .. foundvalues
else
str = str .. linguistic.inparentheses(foundvalues, lang)
end
end
end
if args.showdate then -- when "showdate and p.chronosort are both set, date retrieval is performed twice
local timedata = p.getDate(statement)
if timedata then
local formatteddate = objecttotext(timedata, args)
formatteddate = linguistic.inparentheses(formatteddate, lang)
str = str .. '<small>' .. formatteddate ..'</small>'
end
end
if args.showsource and statement.references then
local sourcestring = ''
for i, ref in pairs(statement.references) do
if ref.snaks.P248 then
for j, source in pairs(ref.snaks.P248) do
if source.snaktype == 'value' then
local page
if ref.snaks.P304 and ref.snaks.P304[1].snaktype == 'value' then
page = ref.snaks.P304[1].datavalue.value
end
local s = require('Module:Cite').citeitem('Q' .. source.datavalue.value['numeric-id'], lang, page)
s = mw.getCurrentFrame():extensionTag( 'ref', s )
sourcestring = sourcestring .. s
end
end
elseif ref.snaks.P854 and ref.snaks.P854[1].snaktype == 'value' then
s = mw.getCurrentFrame():extensionTag( 'ref', formatLink(ref.snaks.P854[1].datavalue.value))
sourcestring = sourcestring .. s
end
end
str = str .. sourcestring
end
return str
end
function p.formatSnak( snak, params )
if not args then args = {} end -- pour faciliter l'appel depuis d'autres modules
if snak.snaktype == 'value' then
return p.getDatavalue( snak, params)
elseif snak.snaktype == 'somevalue' then
return formatTheUnknown()
elseif snak.snaktype == 'novalue' then
return i18n('novalue') --todo
else
return formatError( 'unknown-snak-type', snak.snaktype )
end
end
local function defaultlabel(entity, lang, displayformat) -- label when no label is available
if displayformat == 'id' then
return entity.id
end
return i18n('no-label', lang)
end
function p._getLabel(entity, lang, default)
local label
if not entity then
return nil
end
if type(entity) ~= 'table' then
entity = p.getEntity(entity)
end
if (not entity) or (not entity.labels) then
return defaultlabel(entity, lang, default)
end
for i, lg in pairs(fb.fblist(lang or defaultlang)) do
if entity.labels[lg] then
return entity.labels[lg].value
end
end
return defaultlabel(entity, lang, default)
end
function p._getDescription(entity, lang)
if type(entity) ~= 'table' then
entity = p.getEntity(entity)
end
local descriptions = entity.descriptions
if not descriptions then
return i18n('no description')
end
if descriptions[lang] then
return descriptions[lang].value
end
local langlist = fb.fblist(lang) -- list of fallback languages in no label in the desired language
for i, j in pairs (langlist) do
if descriptions[j] then
return descriptions[j].value
end
end
return i18n('no description')
end
local function wikipedialink(entity, lang)
local link = entity:getSitelink(lang .. 'wiki')
if link then
return ':' .. lang .. ':' .. link
end
end
local function getLink(entity, typelink, lang)
if not typelink then
return nil
end
if not lang then
lang = defaultlang
end
if typelink == '-' then
return nil
elseif typelink == 'wikidata' then
if entity.type == 'property' then
return ':d:P:' .. entity.id
else
return 'd:' .. entity.id
end
elseif typelink == 'wikipedia' then
return wikipedialink(entity, lang)
elseif typelink == 'anywikipedia' then
local fallbacklist = fb.fblist(lang)
for i, lg in pairs(fallbacklist) do
link = getwikipedialink(entity, lg)
if link then return link end
end
end
end
local function formattedLabel(label, entity, args)
if not args then args = {} end
local link = getLink(entity, args.link, args.lang)
if not link then
link = getLink(entity, defaultlink, args.lang)
end
if not link then
return label
else
return '[[' .. link .. '|' .. label .. ']]'
end
end
function p.getmainid(claim)
if claim and claim.mainsnak.snaktype == 'value' then
return 'Q' .. claim.mainsnak.datavalue.value['numeric-id']
end
end
function p.formatEntity( entity, args )
if not entity then
return nil
end
if not args then args = {} end
if type(entity) == 'string' then
entity = p.getEntity(entity)
end
local label = p._getLabel(entity, args.lang)
if not label then
label = entity.id
end
return formattedLabel(label, entity, args)
end
function p.getLabel(frame) -- simple for simple templates like {{Q|}}}
local args = frame.args
local entity = args.entity
local lang = lang
if args.lang and args.lang ~= '' then
lang = args.lang
end
if string.sub(entity, 1, 10) == 'Property:P' then
entity = string.sub(entity, 10)
elseif (string.sub(entity, 1, 1) ~= 'P' and string.sub(entity, 1, 1) ~= 'Q') or (not tonumber(string.sub(entity, 2))) then
return i18n('invalid-id')
end
if not args.link or args.link == '' then -- by default: no link
args.link = '-'
end
if args.link == '-' then
return p._getLabel(entity, lang) or i18n('invalid-id')
else
lang = lang
return p.formatEntity(entity, args)
end
end
function p._formatStatements( args )--Format statements and concat them cleanly
if args.value == '-' then
return nil
end
--If a value is already set, use it
if args.value and args.value ~= '' then
return args.value
end
local valuetable = p.stringTable(args)
return tableToText(valuetable, args)
end
function p.showQualifier( args )
local qualifs = args.qualifiers or args.qualifier
if type(qualifs) == 'string' then
qualifs = mw.text.split(qualifs, ',')
end
if not qualifs then
return formatError( 'property-param-not-provided' )
end
local claims = p.getClaims(args)
if not claims then
return nil
end
local str = ''
for i, j in pairs(claims) do
local new = p.getFormattedQualifiers(j, qualifs, args) or ''
str = str .. new
end
return str
end
function p._formatAndCat(args)
local val = p._formatStatements( args )
if val then
return val .. addtrackingcat(args.property)
end
end
function p.getTheDate(args)
local claims = p.getClaims(args)
if not claims then
return nil
end
local formattedvalues = {}
for i, j in pairs(claims) do
table.insert(formattedvalues, p.getFormattedDate(j))
end
local val = linguistic.conj(formattedvalues)
if val and args.addcat == true then
return val .. addtrackingcat(args.property)
else
return val
end
end
---FONCTIONS depuis le FRAME
function p.getaDate(frame)
return p.getTheDate(frame.args)
end
function p.getQualifier( frame )
return p.showQualifier(frame.args)
end
function p.getDescription(frame) -- simple for simple templates like {{Q|}}}
local entity = frame.args.entity
if frame.args.lang then
lang = frame.args.lang
end
return p._getDescription(entity, lang) or i18n('invalid-id')
end
function p.formatStatements( args )
return p._formatStatements( args)
end
function p.formatStatementsE(frame)
local args = {}
if frame == mw.getCurrentFrame() then
args = frame:getParent().args -- paramètres du modèle appelant (est-ce vraiment une bonne idée ?)
for k, v in pairs(frame.args) do
args[k] = v
end
else
args = frame
end
return p._formatStatements( args )
end
function p.formatAndCat(frame)
local args = {}
if frame == mw.getCurrentFrame() then
args = frame:getParent().args -- paramètres du modèle appelant (est-ce vraiment une bonne idée ?)
for k, v in pairs(frame.args) do
args[k] = v
end
else
args = frame
end
return p._formatAndCat( args )
end
function p.getEntityFromId(id)
return p.getEntity(id)
end
return p
5xyzpl4jasuix4ji6kzq4tgdltqb6d6
Module:Linguistic
828
3346
36534
2025-12-15T18:05:26Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- some simple internationalization that can be called by other modules local p = {} local f = require('Module:Fallback') local i18n = mw.loadData('Module:I18n/linguistic') local function getText(msg, lang) return f._langSwitch(i18n[msg], lang) end local vowels = 'aeiouyąăẵằẳặȃắâẫấầẩậãäǟāáàȁǎảẚåǻḁạǡæǣǽĕȇêễếềểệḙẽḛëēḕéḗèȅěẻẹęȩḝǝĭȋîĩḭïḯīíìȉǐỉịįı...'
36534
Scribunto
text/plain
-- some simple internationalization that can be called by other modules
local p = {}
local f = require('Module:Fallback')
local i18n = mw.loadData('Module:I18n/linguistic')
local function getText(msg, lang)
return f._langSwitch(i18n[msg], lang)
end
local vowels = 'aeiouyąăẵằẳặȃắâẫấầẩậãäǟāáàȁǎảẚåǻḁạǡæǣǽĕȇêễếềểệḙẽḛëēḕéḗèȅěẻẹęȩḝǝĭȋîĩḭïḯīíìȉǐỉịįıŏȏôỗốồổộõṏṍöōṑóṓòȍǒỏọǫǭơỡớờởợøǿŭȗûṷũṻṹṵüǖǘǜǚṳūúùȕǔủůụųưữứừửựŷỹÿȳýỳỷẙỵ'
local function wordor(lang)
return getText('or_conj', lang)
end
local function comma(lang)
return getText("comma", lang)
end
local function citation_comma(lang)
return getText("citation_comma", lang)
end
function p.fullstop(lang)
return getText("full_stop", lang)
end
function p.colon(lang)
return getText("colon", lang)
end
local function wordand(lang)
return getText("and_conj", lang)
end
local function wordsep(lang) -- default separator between words
return getText("word_separator", lang)
end
local function isin(str, pattern)
return str and pattern and mw.ustring.find(str, pattern, 1, true)
end
local function langisin(str, lang)
return isin(str, lang .. ' ') -- space is necessary to avoid false positives like zh in zh-hans
end
local function processgender(str)
local t = {
f = 'feminine',
fem = 'feminine',
feminine = 'feminine',
m = 'masculine',
masc = 'masculine',
masculine = 'masculine',
n = 'neutral',
neutral = 'neutral',
}
return t[str] or 'masculine'
end
local function processnumber(str)
if str == 'p' or str == 'plural' then
return 'plural'
else
return 'singular'
end
end
function p.vowelfirst(str)
return str and isin(vowels, str[1])
end
function p.inparentheses(str, lang)
--todo: define language with exotic parentheses
if str == '' then
return str
else
return ' (' .. str .. ')'
-- needs internationalization.
-- Needs leading space in English because as some languages do not use it, it is part of the formatting
end
end
function p.of(word, lang, raw, gender, number, determiner) -- rough translation of "of" in various languages
-- note that the cases when on "of" is employed varies a lot among languages, so it is more prudent to call this from lang specific function only
if not raw then
raw = word
end
gender = processgender(gender)
number = processnumber(number)
-- raw is the string without the Wikiformatting so that it correctly analyses the string that is [[:fr:Italie|Italie]] -> 'italie'
-- any way to automate this ?
-- todo: ca to replace Template:Of/ca
if lang == 'fr' then
if number == 'plural' then
return 'des ' .. word
elseif p.vowelfirst(raw) then
return 'de l\'' .. word
elseif gender == 'feminine' then
return 'de la ' .. word
elseif derterminer then
return 'du ' .. word
else
return 'de ' .. word
end
end
return raw
end
function p.noungroup(noun, adj, lang)
if not noun or noun == '' then
return nil -- not '' so that it is not counted as a string by mw.listToText
end
if not adj or adj == '' then
return noun
end
-- adjective before the noun
if langisin('cs de de-at de-ch en en-ca en-gb pl sk zh zh-cn zh-hans zh-hant zh-my zh-sg zh-tw ', lang) then
return adj .. wordsep(lang) .. noun
-- adjective after the noun
elseif langisin('fr fr-ca es it') then
return noun .. wordsep(lang) .. adj
else
return noun .. p.inparentheses(adj, lang)
end
end
function p.conj(args, lang, conjtype)
if not args then
return nil
end
local newargs = {}
for i, j in pairs(args) do
if type(j) ~= 'nil' then
table.insert(newargs, j)
end
end
args = newargs
if #args == 0 then
return nil
end
if conjtype == 'comma' then
return mw.text.listToText(args, comma(lang), comma(lang))
elseif conjtype == 'citation_comma' then
return mw.text.listToText(args, citation_comma(lang), citation_comma(lang))
elseif conjtype == 'or' then
return mw.text.listToText(args, comma(lang), wordor(lang) .. wordsep(lang))
elseif conjtype == 'explicit or' then -- adds "or" betwen all words when the context can be confusing
return mw.text.listToText(args, wordor(lang) .. wordsep(lang), wordor(lang) .. wordsep(lang))
elseif conjtype then
return mw.text.listToText(args, conjtype, conjtype)
else
return mw.text.listToText(args, comma(lang), wordand(lang) .. wordsep(lang))
end
end
return p
7zvttc4ndlh7zchawdp4kl17wi4550c
Module:Dictionary/lang codes
828
3347
36535
2025-12-15T18:06:18Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- correspondance élément Wikidata/code langue wikidata. Basé sur http://wdq.wmflabs.org/api?q=CLAIM[424]%20and%20claim[31:34770]4] --[[ pour les mises à jour, sur un wikidata avec "arbitrary access : si la liste est trop longue (timeouterror), faire en plusieurs fois local wikidata = require('Module:Wikidata').formatStatements function p.update(frame) local s = '' local wikidata =require('Module:Wikidata') loca list == copiercoller ici...'
36535
Scribunto
text/plain
-- correspondance élément Wikidata/code langue wikidata. Basé sur http://wdq.wmflabs.org/api?q=CLAIM[424]%20and%20claim[31:34770]4]
--[[ pour les mises à jour, sur un wikidata avec "arbitrary access
: si la liste est trop longue (timeouterror), faire en plusieurs fois
local wikidata = require('Module:Wikidata').formatStatements
function p.update(frame)
local s = ''
local wikidata =require('Module:Wikidata')
loca list == copiercoller ici
for i, j in pairs(list) do
j = tostring(j)
local item = mw.wikibase.getEntityObject('Q' ..j)
local val = wikidata._formatStatements{property = 'P424', item = item, lang='fr'} or '-'
s = s .. '['.. j .. .. ']' " = '" .. val .. "',<br />"
end
return s end
return p
]]--
return {
[150] = 'fr',
[188] = 'de',
[397] = 'la',
[652] = 'it',
[809] = 'pl',
[1321] = 'es',
[1568] = 'hi',
[1571] = 'mr',
[1617] = 'ur',
[1860] = 'en',
[5111] = 'ab',
[5137] = 'gu',
[5146] = 'pt',
[5287] = 'ja',
[5885] = 'ta',
[6654] = 'hr',
[7411] = 'nl',
[7737] = 'ru',
[7838] = 'sw',
[7913] = 'ro',
[7918] = 'bg',
[7930] = 'mg',
[8097] = 'te',
[8108] = 'ka',
[8641] = 'yi',
[8748] = 'sq',
[8752] = 'eu',
[8765] = 'an',
[8785] = 'hy',
[8798] = 'uk',
[9027] = 'sv',
[9035] = 'da',
[9043] = 'no',
[9051] = 'lb',
[9056] = 'cs',
[9058] = 'sk',
[9063] = 'sl',
[9067] = 'hu',
[9072] = 'et',
[9078] = 'lv',
[9083] = 'lt',
[9091] = 'be',
[9142] = 'ga',
[9166] = 'mt',
[9168] = 'fa',
[9176] = 'ko',
[9186] = 'zh-yue',
[9199] = 'vi',
[9205] = 'km',
[9211] = 'lo',
[9217] = 'th',
[9228] = 'my',
[9237] = 'ms',
[9240] = 'id',
[9246] = 'mn',
[9252] = 'kk',
[9255] = 'ky',
[9260] = 'tg',
[9264] = 'uz',
[9267] = 'tk',
[9288] = 'he',
[9292] = 'az',
[9296] = 'mk',
[9299] = 'sr',
[9301] = 'sh',
[9303] = 'bs',
[9307] = 'gl',
[9309] = 'cy',
[9314] = 'gd',
[9610] = 'bn',
[10179] = 'zu',
[12107] = 'br',
[12175] = 'gv',
[13199] = 'rm',
[13201] = 'rmy',
[13216] = 'za',
[13218] = 'xh',
[13238] = 'udm',
[13248] = 'hsb',
[13263] = 'ug',
[13267] = 'si',
[13275] = 'so',
[13286] = 'dsb',
[13300] = 'nah',
[13307] = 'na',
[13310] = 'nv',
[13324] = 'min',
[13330] = 'mwl',
[13343] = 'mdf',
[13356] = 'mzn',
[13359] = 'xmf',
[13389] = 'ba',
[14185] = 'oc',
[14196] = 'af',
[14549] = 'sco',
[15085] = 'pms',
[15087] = 'frp',
[21117] = 'esu',
[22711] = 'pdc',
[23014] = 'pfl',
[25258] = 'fo',
[25285] = 'tt',
[25289] = 'kw',
[25355] = 'kl',
[26245] = 'rue',
[27154] = 'stq',
[27175] = 'fy',
[27183] = 'ik',
[27683] = 'ace',
[27811] = 'aa',
[28026] = 'ak',
[28224] = 'frr',
[28244] = 'am',
[28602] = 'arc',
[29316] = 'roa-rup',
[29401] = 'as',
[29507] = 'ast',
[29561] = 'av',
[29921] = 'iu',
[29952] = 'myv',
[30005] = 'ee',
[30007] = 'ext',
[30319] = 'szl',
[31746] = 'lez',
[32656] = 'dv',
[32704] = 've',
[32724] = 'vec',
[32747] = 'vep',
[32762] = 'fiu-vro',
[32979] = 'cho',
[33025] = 'bej',
[33081] = 'dz',
[33111] = 'co',
[33120] = 'bxr',
[33190] = 'bug',
[33219] = 'map-bms',
[33239] = 'ceb',
[33243] = 'bm',
[33265] = 'chy',
[33268] = 'bh',
[33273] = 'ny',
[33281] = 'cbk-zam',
[33287] = 'gaa',
[33291] = 'fon',
[33295] = 'fj',
[33315] = 'hz',
[33348] = 'cv',
[33350] = 'ce',
[33357] = 'crh',
[33388] = 'chr',
[33390] = 'cr',
[33441] = 'fur',
[33454] = 'ff',
[33457] = 'gag',
[33475] = 'gan',
[33491] = 'ht',
[33549] = 'jv',
[33552] = 'ks',
[33569] = 'haw',
[33578] = 'ig',
[33617] = 'ho',
[33634] = 'xal',
[33657] = 'glk',
[33673] = 'kn',
[33690] = 'csb',
[33714] = 'krc',
[33720] = 'krj',
[33754] = 'lmo',
[33786] = 'sid',
[33810] = 'or',
[33823] = 'ne',
[33845] = 'nap',
[33850] = 'nrm',
[33856] = 'pap',
[33864] = 'om',
[33947] = 'se',
[33954] = 'sg',
[33968] = 'os',
[33973] = 'scn',
[33976] = 'sc',
[33979] = 'new',
[33989] = 'srn',
[33997] = 'sd',
[34002] = 'su',
[34004] = 'sn',
[34011] = 'sm',
[34015] = 'crs',
[34055] = 'tvl',
[34057] = 'tl',
[34094] = 'to',
[34119] = 'tyv',
[34125] = 'tet',
[34128] = 'ty',
[34137] = 'tn',
[34138] = 'tum',
[34147] = 'vls',
[34208] = 'wbl',
[34247] = 'yai',
[34257] = 'wo',
[34271] = 'bo',
[34279] = 'war',
[34290] = 'wuu',
[34311] = 'yo',
[34340] = 'st',
[35224] = 'io',
[35225] = 'peo',
[35452] = 'bi',
[35722] = 'got',
[35850] = 'ie',
[35853] = 'kab',
[35876] = 'gn',
[35934] = 'ia',
[35936] = 'ilo',
[35978] = 'hil',
[36094] = 'kr',
[36106] = 'lij',
[36126] = 'kv',
[36196] = 'lad',
[36212] = 'ltg',
[36217] = 'ln',
[36236] = 'ml',
[36280] = 'mh',
[36368] = 'ku',
[36451] = 'mi',
[36495] = 'zh-min-nan',
[36510] = 'el',
[36554] = 'pih',
[36727] = 'pi',
[36738] = 'nov',
[36811] = 'ckb',
[36850] = 'tw',
[36986] = 'vo',
[37059] = 'bpy',
[42365] = 'ang',
[46728] = 'hif',
[56475] = 'ha',
[58635] = 'pa',
[58680] = 'ps',
[102172] = 'li',
[146803] = 'lfn',
[213434] = 'bat-smg',
[237409] = 'zea',
[242648] = 'eml',
[516137] = 'nds-nl',
[523014] = 'mus',
[1389492] = 'pnb',
[1405077] = 'kj',
}
tnva4k3g396a298kfbwtzopptk44ru2
Module:Wikidata
828
3348
36536
2025-12-15T18:07:35Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "Module:No globals" local p = {} local lib = require 'Module:Wikidata/lib' local i18n = mw.loadData('Module:Wikidata/i18n') local getArgs = (require 'Module:Arguments').getArgs local function getEntityIdFromStatements(statements) for _, statement in ipairs(statements) do if lib.IsSnakValue(statement.mainsnak) then if statement.mainsnak.datavalue.type ~= 'wikibase-entityid' then return error(lib.raiseInvalidDatatype('getEntit...'
36536
Scribunto
text/plain
--require "Module:No globals"
local p = {}
local lib = require 'Module:Wikidata/lib'
local i18n = mw.loadData('Module:Wikidata/i18n')
local getArgs = (require 'Module:Arguments').getArgs
local function getEntityIdFromStatements(statements)
for _, statement in ipairs(statements) do
if lib.IsSnakValue(statement.mainsnak) then
if statement.mainsnak.datavalue.type ~= 'wikibase-entityid' then
return error(lib.raiseInvalidDatatype('getEntityIdFromStatements',
statement.mainsnak.datatype, {'wikibase-item', 'wikibase-property'}))
end
local Formatters = require 'Module:Wikidata/Formatters'
return Formatters.getRawValue(statement.mainsnak)
end
end
return nil
end
local function getEntityIdFromEntity(entity, prop)
local prop = mw.ustring.upper(prop)
local statements = entity:getBestStatements(prop)
return getEntityIdFromStatements(statements)
end
local function getEntityIdFromId(id, prop)
local prop = mw.ustring.upper(prop)
local statements = mw.wikibase.getBestStatements(id, prop)
return getEntityIdFromStatements(statements)
end
local function getIdFromTitle(titleString)
local title = mw.title.new(titleString)
while title do
local id = mw.wikibase.getEntityIdForTitle(title.prefixedText)
if id then
return id
end
title = title.redirectTarget
end
return nil
end
local function findEntityId(options)
local id
if options.entity and type(options.entity) == 'table' then
id = options.entity.id
end
if not id and options.page then
id = getIdFromTitle(options.page)
if not id then
return nil
end
end
if not id then
id = options.id or p.getCurrentId()
end
if id and options.of then
id = getEntityIdFromId(id, options.of)
end
return id
end
local function findEntity(options)
local entity
if options.entity and type(options.entity) == 'table' then
entity = options.entity
end
if not entity then
if options.id then
local id = options.id:upper()
entity = mw.wikibase.getEntity(id)
if entity and entity.id ~= id then
mw.log(id .. ' je přesměrování na ' .. entity.id)
end
else
if options.page then
local id = getIdFromTitle(options.page)
if id then
entity = mw.wikibase.getEntity(id)
end
else
entity = mw.wikibase.getEntity()
end
end
end
if options.of then
if entity then
local id = getEntityIdFromEntity(entity, options.of)
if id then
return mw.wikibase.getEntity(id)
end
end
return nil
end
return entity
end
local function getSitelink(options)
local id = findEntityId(options)
if not id then
return nil
end
local site = options.site or options[1]
local sitelink = mw.wikibase.sitelink(id, site)
if not sitelink then
return nil
end
if options.pattern then
sitelink = lib.formatFromPattern(sitelink, options.pattern)
end
if lib.IsOptionTrue(options, 'addclass') then
sitelink = lib.addWdClass(sitelink)
end
return sitelink
end
local function formatStatement(statement, options)
if not statement.type or statement.type ~= 'statement' then
return error(lib.formatError('unknown-claim-type', statement.type or '[neznámý]'))
end
local Filterers = require 'Module:Wikidata/Filterers'
local Formatters = require 'Module:Wikidata/Formatters'
local mainsnak = Formatters.getFormattedValue(statement.mainsnak, options)
if options.isQualifier == true then
return mainsnak
end
local qualifiers, targetdata, references
if statement.qualifiers and options.showqualifier then
local PropList = lib.textToTable(options.showqualifier)
local Snaks = {}
for _, property in ipairs(PropList) do
local Values = {}
local property = mw.ustring.upper(property)
local format_options = {
autoformat = true,
isQualifier = true,
label = 'short',
precision = options['qualifiers precision'] or 9,
property = property
}
if statement.qualifiers[property] then
local Qualifiers = mw.clone(statement.qualifiers[property])
Filterers.filterQualifiers(Qualifiers, options)
for _, snak in ipairs(Qualifiers) do
if lib.IsSnakValue(snak) then
table.insert(Values, Formatters.getFormattedValue(snak, {}))
end
end
elseif property == 'TIME' then
local Data = {}
-- todo: factor out
for key, array in pairs(lib.props) do
for _, prop in ipairs(array) do
for _, snak in ipairs(statement.qualifiers[prop] or {}) do
Data[key] = snak
break
end
end
end
if Data.begin or Data.ending then
table.insert(Values, lib.formatDateRange(Data, format_options))
end
end
if #Values > 0 then
table.insert(Snaks, mw.text.listToText(Values))
end
end
if #Snaks > 0 then
qualifiers = table.concat(Snaks, options['qualifiers separator'] or i18n['qualifiers separator'])
end
end
if not qualifiers and options.showtargetdata then
local entity
if lib.IsSnakValue(statement.mainsnak) then
if statement.mainsnak.datavalue.type == 'wikibase-entityid' then
entity = mw.wikibase.getEntity(Formatters.getRawValue(statement.mainsnak))
else
return error(lib.formatError('invalid-datatype', statement.mainsnak.property, statement.mainsnak.datatype, 'wikibase-item/wikibase-property'))
end
end
if entity then
local PropList = lib.textToTable(options.showtargetdata)
local date
local rank = 'best'
if options.targetdate then
if lib.isPropertyId(options.targetdate) then
date = p.getRawValueFromLua{ entity = options.entity, property = options.targetdate }
else
date = options.targetdate
end
if date then
rank = 'valid'
end
end
local options = {
addclass = false,
autoformat = true,
date = date,
entity = entity,
isQualifier = true,
label = 'short',
precision = 9,
rank = rank,
sort = {'date'},
}
local Snaks = {}
for _, property in ipairs(PropList) do
local result
if mw.ustring.lower(property) == 'time' then
local Data = {}
for key, array in pairs(lib.props) do
for _, prop in ipairs(array) do
options.property = prop
local Statements = Filterers.filterStatementsFromEntity(entity, options)
for _, statement in ipairs(Statements) do
Data[key] = statement.mainsnak
break
end
end
end
if Data.begin or Data.ending then
result = lib.formatDateRange(Data, options)
end
else
options.property = property
result = p.formatStatementsFromLua(options)
end
if result then
table.insert(Snaks, result)
end
end
if #Snaks > 0 then
targetdata = table.concat(Snaks, '; ')
end
end
end
if statement.references and lib.IsOptionTrue(options, 'showsource') then
local Module = require 'Module:Wikidata/cite'
references = Module.formatReferences(statement.references, options)
end
if qualifiers or targetdata then
if options.delimiter then
mainsnak = mainsnak .. options.delimiter .. (qualifiers or targetdata)
else
mainsnak = mainsnak .. ' (' .. (qualifiers or targetdata) .. ')'
end
end
if references and references ~= '' then
return mainsnak .. references .. lib.category('references')
end
return mainsnak
end
local function formatStatements(statements, options)
local formattedStatements = {}
for _, statement in ipairs(statements) do
if not statement.type or statement.type ~= 'statement' then
return error(lib.formatError('unknown-claim-type', statement.type or '[neznámý]')) -- fixme: i18n
end
local formatted = formatStatement(statement, options)
local add = true
for _, fmt in ipairs(formattedStatements) do
if formatted == fmt then
add = false
break
end
end
if add then -- not in_array
table.insert(formattedStatements, formatted)
end
end
return formattedStatements
end
local function getStatements(id, options)
if not id then
return {}
end
local statements = mw.wikibase.getAllStatements(id, options.property:upper())
local Filterers = require 'Module:Wikidata/Filterers'
Filterers.filterStatements(statements, options)
return statements
end
local function prepareShowMore(options)
if options.limit and lib.IsOptionTrue(options, 'showmore') then
options.limit = options.limit + 1
return true
end
return false
end
local function handleShowMore(values, limit, add_more)
if add_more then
if #values == limit then
table.remove(values)
else
add_more = false
end
end
return add_more
end
local function makeList(values, options, add_more)
if add_more then
table.insert(values, mw.ustring.format(i18n['more-on-Wikidata'], options.id, options.property))
end
return mw.text.listToText(values, options.separator, options.conjunction)
end
local function getFormattedStatements(options)
local value = options.value
if value then
if value == '' and lib.IsOptionTrue(options, 'over') then
value = nil
end
if value and not lib.IsOptionTrue(options, 'compare') then
return value
end
end
--Get entity
local options = lib.common.cleanArgs(options)
options.limit = tonumber(options.limit) --TODO default?
local add_more = false
if not lib.IsOptionTrue(options, 'compare') then
add_more = prepareShowMore(options)
end
local id = findEntityId(options)
local statements = getStatements(id, options)
options.property = mw.ustring.upper(options.property)
if value then
local compare = require 'Module:Wikidata/compare'
local marked, category = compare.compareValues(value, statements, {
catbase = options.catbase,
property = options.of or options.property
})
if tostring(options.addclass) ~= 'false' and marked then
value = marked
end
if lib.IsOptionTrue(options, 'addcat') and category then
return value .. category
end
return value
end
if #statements == 0 then return nil end
add_more = handleShowMore(statements, options.limit, add_more)
options.id = id
-- Format statements and concat them cleanly
local formattedStatements = formatStatements(statements, options)
value = makeList(formattedStatements, options, add_more)
if lib.IsOptionTrue(options, 'addlink') then
value = mw.ustring.format('%s <sup class="wd-link">([[d:%s#%s|e]])</sup>', value, id, options.property)
end
if lib.IsOptionTrue(options, 'addcat') then
value = value .. lib.category('used-property', options.property)
end
if tostring(options.addclass) ~= 'false' then
return lib.addWdClass(value)
end
return value
end
local function getRawValue(options)
if options.rank ~= 'best' and options.rank ~= 'preferred' then
local byRank = mw.ustring.match(options.sort or '', 'rank') and true
options.sort = lib.textToTable(options.sort or '')
if not byRank then
table.insert(options.sort, 1, 'rank')
end
end
for _, statement in ipairs(p.getStatements(options)) do
local Formatters = require 'Module:Wikidata/Formatters'
return Formatters.getRawValue(statement.mainsnak, options)
end
return nil
end
local function getQualifiers(args)
if not args.qualifier then
return error(lib.formatError('param-not-provided', 'qualifier'))
end
local all_qualifiers = {}
for _, statement in ipairs(p.getStatements(args)) do
if statement.qualifiers then
local qualifiers = mw.clone(statement.qualifiers[mw.ustring.upper(args.qualifier)] or {})
local Filterers = require 'Module:Wikidata/Filterers'
Filterers.filterQualifiers(qualifiers, args)
for _, q in ipairs(qualifiers) do
table.insert(all_qualifiers, q)
end
end
if not lib.IsOptionTrue(args, 'all') then
return all_qualifiers
end
end
return all_qualifiers
end
----- API pro šablony -----
function p.dumpWikidataEntity(frame)
local args = getArgs(frame, { removeBlanks = true })
return mw.dumpObject( mw.wikibase.getEntity( args.id ) )
end
function p.getBadges(frame)
local args = getArgs(frame, { removeBlanks = true })
local site = args.site
if not site then
return error(lib.formatError('param-not-provided', 'site'))
end
local entity = findEntity(args)
local Badges = {}
if entity and entity.sitelinks and entity.sitelinks[site] then
local Formatters = require 'Module:Wikidata/Formatters'
for _, badge in ipairs(entity.sitelinks[site].badges) do
table.insert(Badges, Formatters.formatRawValue(badge, 'wikibase-entityid'))
end
end
return table.concat( Badges, ', ' )
end
function p.getLabel(frame)
local args = getArgs(frame, { removeBlanks = true })
local id = findEntityId(args)
if not id then
return nil
end
local lang = args.lang
local code = mw.language.getContentLanguage():getCode()
if not lang or lang == code then
local label, _ = lib.getLabelInLanguage(id, { code })
if label and lib.IsOptionTrue(args, 'addclass') then
label = lib.addWdClass(label)
end
return label
end
local entity = mw.wikibase.getEntity(id)
if entity and entity.labels and entity.labels[lang] then
local label = entity.labels[lang].value
if label and lib.IsOptionTrue(args, 'addclass') then
label = lib.addWdClass(label)
end
return label
end
return nil
end
function p.getDescription(frame)
local args = getArgs(frame, { removeBlanks = true })
local id = findEntityId(args)
if not id then
return nil
end
local lang = args.lang
if not lang or lang == mw.language.getContentLanguage():getCode() then
local description = mw.wikibase.description(id)
if description and lib.IsOptionTrue(args, 'addclass') then
description = lib.addWdClass(description)
end
return description
end
local entity = mw.wikibase.getEntity(id)
if entity and entity.descriptions and entity.descriptions[lang] then
local description = entity.descriptions[lang].value
if description and lib.IsOptionTrue(args, 'addclass') then
description = lib.addWdClass(description)
end
return description
end
return nil
end
function p.getAliases(frame)
local args = getArgs(frame, {
removeBlanks = true,
frameOnly = true,
})
local lang = args.lang
local entity = findEntity(args)
if not lang then
lang = mw.language.getContentLanguage():getCode()
end
if not entity or not entity.aliases or not entity.aliases[lang] then
return nil
end
args.limit = tonumber(args.limit)
local add_more = prepareShowMore(args)
local Aliases = {}
for i, alias in ipairs(entity.aliases[lang]) do
if not args.limit or i <= args.limit then
table.insert(Aliases, alias.value)
else break end
end
add_more = handleShowMore(Aliases, args.limit, add_more)
local list = makeList(Aliases, args, add_more)
return lib.addWdClass(list)
end
function p.getId(frame)
local args = getArgs(frame, {
removeBlanks = true,
frameOnly = false,
parentFirst = false
})
if not args[1] then
return mw.wikibase.getEntityIdForCurrentPage()
end
for _, titleString in ipairs(args) do
local id = getIdFromTitle(titleString)
if id then
return id
end
end
return nil
end
function p.getSitelink(frame)
return getSitelink(getArgs(frame, {
removeBlanks = true,
frameOnly = true,
}))
end
function p.formatStatements(frame)
local args = getArgs(frame, {
removeBlanks = false, -- todo
frameOnly = true,
})
local parent_args = getArgs(frame:getParent(), { removeBlanks = true })
local add
if parent_args.item and not args.id then
args.id = parent_args.item
add = lib.category('arbitrary-data')
end
local value = getFormattedStatements(args)
if add and value then
return value .. add
end
return value
end
function p.formatStatementsFromTemplate(frame)
local args = getArgs(frame, {
frameOnly = false,
parentOnly = false,
parentFirst = false,
})
return getFormattedStatements(args)
end
function p.getCount(frame)
local args = getArgs(frame, {
removeBlanks = true,
frameOnly = true,
})
args.limit = nil
return #p.getStatements(args)
end
function p.getRawValue(frame)
return getRawValue(getArgs(frame, {
removeBlanks = true,
frameOnly = true,
}))
end
function p.getQualifier(frame)
local args = getArgs(frame, {
removeBlanks = true,
frameOnly = true,
})
args.limit = tonumber(args.limit)
local add_more = prepareShowMore(args)
local limit = args.limit
args.limit = 1
args.isQualifier = true
if not args['qualifiers limit'] then
args['qualifiers limit'] = limit
end
local qualifiers = getQualifiers(args)
if #qualifiers == 0 then
return nil
end
add_more = handleShowMore(qualifiers, limit, add_more)
local Formatters = require 'Module:Wikidata/Formatters'
local formattedQualifiers = {}
for _, qualifier in ipairs(qualifiers) do
table.insert(formattedQualifiers, Formatters.getFormattedValue(qualifier, args))
end
local value = makeList(formattedQualifiers, args, add_more)
return lib.addWdClass(value)
end
function p.getRawQualifier(frame)
local args = getArgs(frame, {
removeBlanks = true,
frameOnly = true,
})
local limit = args.limit and tonumber(args.limit)
args.limit = 1
for _, qualifier in ipairs(getQualifiers(args)) do
local Formatters = require 'Module:Wikidata/Formatters'
return Formatters.getRawValue(qualifier)
end
return nil
end
function p.formatEntity(frame)
local args = getArgs(frame, {
removeBlanks = true,
frameOnly = true,
})
args.id = args.id or p.getCurrentId()
if args.id then
local Formatters = require 'Module:Wikidata/Formatters'
return Formatters.formatRawValue(args.id, 'wikibase-entityid', args)
end
return nil
end
function p.compareStatements(frame)
local args = getArgs(frame, {
removeBlanks = true,
frameOnly = true,
})
if not args.value then
return nil
end
local statements = p.getStatements(args)
local compare = require 'Module:Wikidata/compare'
return compare.compareValues(args.value, statements, args)
end
----- API pro moduly -----
p.getCurrentId = mw.wikibase.getEntityIdForCurrentPage
function p.formatStatementsFromLua(options)
return getFormattedStatements(options)
end
function p.getSitelinkFromLua(options)
return getSitelink(options or {})
end
function p.getStatements(args)
local id = findEntityId(args)
return getStatements(id, args)
end
function p.getRawValueFromLua(options)
return getRawValue(options)
end
p.formatStatementsTable = formatStatements
return p
1xzhlf3gvix2oedaxpijf2kn2g3r2fx
Module:Wikidata/cite
828
3349
36537
2025-12-15T18:08:43Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' p.props = { accessdate = { 'P813' }, archivedate = { 'P2960' }, archiveurl = { 'P1065' }, author = { 'P50' }, date = { 'P577' }, editor = { 'P90' }, ilustration = { 'P110' }, lang = { 'P364', 'P407' }, pages = { 'P304' }, place = { 'P291' }, publisher = { 'P123' }, title = { 'P1476' }, type = { 'P31' }, url = { 'P854', 'P953' }, work = { 'P248' }, isbn13 =...'
36537
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
p.props = {
accessdate = { 'P813' },
archivedate = { 'P2960' },
archiveurl = { 'P1065' },
author = { 'P50' },
date = { 'P577' },
editor = { 'P90' },
ilustration = { 'P110' },
lang = { 'P364', 'P407' },
pages = { 'P304' },
place = { 'P291' },
publisher = { 'P123' },
title = { 'P1476' },
type = { 'P31' },
url = { 'P854', 'P953' },
work = { 'P248' },
isbn13 = { 'P212' },
isbn10 = { 'P957' },
}
local function dataToContent(data)
if data.wikipedia then
return '';
end
local content = {}
local Formatters = require 'Module:Wikidata/Formatters'
if data.author then
local authors = {}
for _, snak in ipairs(data.author) do
table.insert(authors, Formatters.getFormattedValue(snak, {}))
end
table.insert(content, table.concat(authors, ', ') .. ':')
end
if data.title then
local title = Formatters.getFormattedValue(data.title[1], {})
if data.archiveurl then
title = Formatters.getFormattedValue(data.archiveurl[1], { ['value-formatter'] = 'url', text = '«' .. title .. '»' }) .. '.'
elseif data.url then
title = Formatters.getFormattedValue(data.url[1], { ['value-formatter'] = 'url', text = '«' .. title .. '»' }) .. '.'
elseif data.work then
local id = Formatters.getRawValue(data.work[1])
title = '[[' .. (mw.wikibase.sitelink(id) or ('d:' .. id)) .. '|«' .. title .. '»]]'
end
table.insert(content, title)
end
if data.lang then
local langs = {}
for _, lang in ipairs(data.lang) do
table.insert(langs, Formatters.getFormattedValue(lang, {}))
end
table.insert(content, '(' .. table.concat(langs, ', ') .. ')')
end
if data.work and (not data.title or data.archiveurl or data.url) then
local title = Formatters.getFormattedValue(data.work[1], {})
table.insert(content, mw.ustring.format("''%s''.", title))
end
if data.publisher then
local publishers = {}
for _, snak in ipairs(data.publisher) do
table.insert(publishers, Formatters.getFormattedValue(snak, {}))
end
table.insert(content, table.concat(publishers, ', ') .. '.')
end
if data.place then
local places = {}
for _, snak in ipairs(data.place) do
table.insert(places, Formatters.getFormattedValue(snak, {}))
end
table.insert(content, table.concat(places, ', ') .. '.')
end
if data.date then
local date = Formatters.getFormattedValue(data.date[1], {}) .. '.'
table.insert(content, date)
end
if not data.title and data.url then
local url = Formatters.getFormattedValue(data.url[1], { ['value-formatter'] = 'url' }) .. '.'
table.insert(content, url)
elseif data.external then
local url = Formatters.getFormattedValue(data.external[1], { autoformat = true, property = data.external[1].property }) .. '.'
table.insert(content, url)
end
if data.archivedate and data.url and data.archiveurl then
local url = Formatters.getFormattedValue(data.url[1], { ['value-formatter'] = 'url', text = 'το πρωτότυπο' })
local date = Formatters.getFormattedValue(data.archivedate[1], {})
table.insert(content, mw.ustring.format('Αρχειοθετήθηκε από %s στις %s.', url, date))
end
if data.accessdate and data.accessdate[1].datavalue.value.time ~= "+42400-00-00T00:00:00Z" then
local date = Formatters.getFormattedValue(data.accessdate[1], {})
table.insert(content, mw.ustring.format('Ανακτήθηκε στις %s.', date))
end
if data.pages then
--local pages = Formatters.getFormattedValue(data.pages[1], { pattern = 'σελ. $1.'})
local pages = mw.ustring.format('σελ. %s.', Formatters.getRawValue(data.pages[1], {}))
table.insert(content, pages)
end
if data.isbn13 then
local isbn13 = mw.ustring.format('ISBN-13 %s', Formatters.getFormattedValue(data.isbn13[1],
{ pattern = '[[Special:BookSources/$1|$1]].' }))
table.insert(content, isbn13)
end
if data.isbn10 then
local isbn10 = mw.ustring.format('ISBN-10 %s', Formatters.getFormattedValue(data.isbn10[1],
{ pattern = '[[Special:BookSources/$1|$1]].' }))
table.insert(content, isbn10)
end
return table.concat(content, ' ')
end
local function dataFromItem(id, data)
local entity = mw.wikibase.getEntity(id)
if entity.claims["P31"] then
for _, statement in ipairs(entity.claims["P31"]) do
if statement.mainsnak and statement.mainsnak.datavalue and statement.mainsnak.datavalue.value and statement.mainsnak.datavalue.value.id == 'Q10876391' then -- no references to wikipedia please
data.wikipedia = true;
return;
end
end
end
for key, props in pairs(p.props) do
if not data[key] then
data[key] = {}
for _, prop in ipairs(props) do
for _, statement in ipairs(mw.wikibase.getBestStatements(id, prop)) do
if lib.IsSnakValue(statement.mainsnak) then
table.insert(data[key], statement.mainsnak)
end
end
if #data[key] > 0 then
break
end
end
if #data[key] == 0 then
data[key] = nil
end
end
end
end
function p.formatReferences(references, options)
local frame = mw.getCurrentFrame()
local valid_refs = {}
local limit = tonumber(options.max_ref) or 3
local Formatters = require 'Module:Wikidata/Formatters'
for _, ref in ipairs(references) do
local data = {}
for key, props in pairs(p.props) do
data[key] = {}
for _, prop in ipairs(props) do
if ref.snaks[prop] then
for _, snak in ipairs(ref.snaks[prop]) do
if snak.snaktype == 'value' then
table.insert(data[key], snak)
end
end
end
if #data[key] > 0 then
break
end
end
if #data[key] == 0 then
data[key] = nil
end
end
for prop, snaks in pairs(ref.snaks) do
if snaks[1].datatype == 'external-id' or prop == 'P627' then --fixme
data.external = { snaks[1] }
break
end
end
if data.work then -- P248
local id = Formatters.getRawValue(data.work[1])
dataFromItem(id, data)
end
local ref_content = dataToContent(data)
if ref_content ~= '' then
table.insert(valid_refs, frame:extensionTag('ref', ref_content, { name = ref.hash }))
end
if limit and #valid_refs == limit then
break
end
end
return table.concat(valid_refs)
end
return p
be078ho137hujzubww6nvo1abagordn
Module:Wikidata/Globes
828
3350
36538
2025-12-15T18:09:38Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { -- maps Wikidata items used in coordinate-types properties of Wikidat to globe names as used by geohack ['http://www.wikidata.org/entity/Q3343'] = 'ariel', ['http://www.wikidata.org/entity/Q3134'] = 'callisto', ['http://www.wikidata.org/entity/Q596'] = 'ceres', ['http://www.wikidata.org/entity/Q6604'] = 'charon', ['http://www.wikidata.org/entity/Q7548'] = 'deimos', ['http://www.wikidata.org/entity/Q15040'] = 'dione', ['http://www.wi...'
36538
Scribunto
text/plain
return { -- maps Wikidata items used in coordinate-types properties of Wikidat to globe names as used by geohack
['http://www.wikidata.org/entity/Q3343'] = 'ariel',
['http://www.wikidata.org/entity/Q3134'] = 'callisto',
['http://www.wikidata.org/entity/Q596'] = 'ceres',
['http://www.wikidata.org/entity/Q6604'] = 'charon',
['http://www.wikidata.org/entity/Q7548'] = 'deimos',
['http://www.wikidata.org/entity/Q15040'] = 'dione',
['http://www.wikidata.org/entity/Q2'] = 'earth',
['http://www.wikidata.org/entity/Q3303'] = 'enceladus',
['http://www.wikidata.org/entity/Q3143'] = 'europa',
['http://www.wikidata.org/entity/Q3169'] = 'ganymede',
['http://www.wikidata.org/entity/Q15037'] = 'hyperion',
['http://www.wikidata.org/entity/Q17958'] = 'iapetus',
['http://www.wikidata.org/entity/Q3123'] = 'io',
['http://www.wikidata.org/entity/Q319'] = 'jupiter',
['http://www.wikidata.org/entity/Q111'] = 'mars',
['http://www.wikidata.org/entity/Q308'] = 'mercury',
['http://www.wikidata.org/entity/Q15034'] = 'mimas',
['http://www.wikidata.org/entity/Q3352'] = 'miranda',
['http://www.wikidata.org/entity/Q405'] = 'moon',
['http://www.wikidata.org/entity/Q332'] = 'neptune',
['http://www.wikidata.org/entity/Q3332'] = 'oberon',
['http://www.wikidata.org/entity/Q7547'] = 'phobos',
['http://www.wikidata.org/entity/Q17975'] = 'phoebe',
['http://www.wikidata.org/entity/Q339'] = 'pluto',
['http://www.wikidata.org/entity/Q15050'] ='rhea',
['http://www.wikidata.org/entity/Q193'] = 'saturn',
['http://www.wikidata.org/entity/Q15047'] = 'tethys',
['http://www.wikidata.org/entity/Q2565'] = 'titan',
['http://www.wikidata.org/entity/Q3322'] = 'titania',
['http://www.wikidata.org/entity/Q3359'] = 'triton',
['http://www.wikidata.org/entity/Q3338'] = 'umbriel',
['http://www.wikidata.org/entity/Q324'] = 'uranus',
['http://www.wikidata.org/entity/Q313'] = 'venus',
['http://www.wikidata.org/entity/Q3030'] ='vesta',
}
5hz2xvquh7buhx7tjgmpbgohshkv73c
Module:Formatnum
828
3351
36539
2025-12-15T18:11:16Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module is intended to replace the functionality of Template:Formatnum and related templates. local p = {} function p.main(frame) local args = frame:getParent().args local prec = args.prec or '' local sep = args.sep or '' local number = args[1] or args.number or '' local lang = args[2] or args.lang or '' -- validate the language parameter within MediaWiki's caller frame if lang == "arabic-indic" then -...'
36539
Scribunto
text/plain
-- This module is intended to replace the functionality of Template:Formatnum and related templates.
local p = {}
function p.main(frame)
local args = frame:getParent().args
local prec = args.prec or ''
local sep = args.sep or ''
local number = args[1] or args.number or ''
local lang = args[2] or args.lang or ''
-- validate the language parameter within MediaWiki's caller frame
if lang == "arabic-indic" then -- only for compatibility ("arabic-indic" is not a SupportedLanguage)
lang = "fa" -- better support than "ks"
elseif lang == '' or not mw.language.isSupportedLanguage(lang) then
-- Note that 'SupportedLanguages' are not necessarily 'BuiltinValidCodes', and so they are not necessarily
-- 'KnownLanguages' (with a language name defined at least in the default localisation of the local wiki).
-- But they all are ValidLanguageCodes (suitable as Wiki subpages or identifiers: no slash, colon, HTML tags, or entities)
-- In addition, they do not contain any capital letter in order to be unique in page titles (restriction inexistant in BCP47),
-- but they may violate the standard format of BCP47 language tags for specific needs in MediaWiki.
-- Empty/unspecified and unsupported languages are treated here in Commons using the user's language,
-- instead of the local 'ContentLanguage' of the Wiki.
lang = frame:preprocess("{{int:lang}}") or ''
end
return p.formatNum(number, lang, prec, sep ~= '')
end
local digit = { -- substitution of decimal digits for languages not supported by mw.language:formatNum() in core Lua libraries for MediaWiki
["ml-old"] = { '൦', '൧', '൨', '൩', '൪', '൫', '൬', '൭', '൮', '൯' },
["mn"] = { '᠐', '᠑', '᠒', '᠓', '᠔', '᠕', '᠖', '᠗', '᠘', '᠙'},
["ta"] = { '௦', '௧', '௨', '௩', '௪', '௫', '௬', '௭', '௮', '௯'},
["te"] = { '౦', '౧', '౨', '౩', '౪', '౫', '౬', '౭', '౮', '౯'},
["th"] = { '๐', '๑', '๒', '๓', '๔', '๕', '๖', '๗', '๘', '๙'}
}
function p.formatNum(number, lang, prec, compact)
-- Do not alter the specified value when it is not a valid number, return it as is
local value = tonumber(number)
if value == nil then
return number
end
-- Basic ASCII-only formatting (without paddings)
number = tostring(value)
-- Check the presence of an exponent (incorrectly managed in mw.language:FormatNum() and even forgotten due to an internal bug, e.g. in Hindi)
local exponent
local pos = string.find(number, '[Ee]')
if pos ~= nil then
exponent = string.sub(number, pos + 1, string.len(number))
number = string.sub(number, 1, pos - 1)
else
exponent = ''
end
-- Check the minimum precision requested
prec = tonumber(prec) -- nil if not specified as a true number
if prec ~= nil then
prec = math.floor(prec)
if prec < 0 then
prec = nil -- discard an incorrect precision (not a positive integer)
elseif prec > 14 then
prec = 14 -- maximum precision supported by tostring(number)
end
end
-- Preprocess the minimum precision in the ASCII string
local dot
if (prec or 0) > 0 then
pos = string.find(number, '.', 1, true) -- plain search, no regexp
if pos ~= nil then
prec = pos + prec - string.len(number) -- effective number of trailing decimals to add or remove
dot = '' -- already present
else
dot = '.' -- must be added
end
else
dot = '' -- don't add dot
prec = 0 -- don't alter the precision
end
if lang ~= nil and mw.language.isKnownLanguageTag(lang) == true then
-- Convert number to localized digits, decimal separator, and group separators
local language = mw.getLanguage(lang)
if compact then
number = language:formatNum(tonumber(number), { noCommafy = 'y' }) -- caveat: can load localized resources for up to 20 languages
else
number = language:formatNum(tonumber(number)) -- caveat: can load localized resources for up to 20 languages
end
-- Postprocessing the precision
if prec > 0 then
local zero = language:formatNum(0)
number = number .. dot .. mw.ustring.rep(zero, prec)
elseif prec < 0 then
-- TODO: rounding of last decimal; here only truncate decimals in excess
number = mw.ustring.sub(number, 1, mw.ustring.len(number) + prec)
end
-- Append the localized base-10 exponent without grouping separators (there's no reliable way to detect a localized leading symbol 'E')
if exponent ~= '' then
number = number .. 'E' .. mw.ustring.gsub(language:formatNum(tonumber(exponent)), groupsep, '')
end
else -- not localized, ASCII only
-- Postprocessing the precision
if prec > 0 then
number = number .. dot .. mw.string.rep('0', prec)
elseif prec < 0 then
-- TODO: rounding of last decimal; here only truncate decimals in excess
number = mw.string.sub(number, 1, mw.string.len(number) + prec)
end
-- Append the base-10 exponent
if exponent ~= '' then
number = number .. 'E' .. exponent
end
end
-- Special cases for substitution of ASCII digits (missing support in Lua core libraries for some languages)
if digit[lang] then
for i, v in ipairs(digit[lang]) do
number = mw.ustring.gsub(number, tostring(i - 1), v)
end
end
return number
end
return p
gqeu01tcefnpphumfndz99dx5qz274m
Module:Fallback
828
3352
36540
2025-12-15T18:12:17Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.fblist(lang) -- list the full fallback chain from a language to en local fbtable = mw.language.getFallbacksFor(lang) table.insert(fbtable, 1, lang) table.insert(fbtable, 'message') table.insert(fbtable, 'default') return fbtable end function p._langSwitch(args, lang) -- args: table of translations -- Return error if there is not default and no English version -- otherwise returns the message in the most appropriate,...'
36540
Scribunto
text/plain
local p = {}
function p.fblist(lang) -- list the full fallback chain from a language to en
local fbtable = mw.language.getFallbacksFor(lang)
table.insert(fbtable, 1, lang)
table.insert(fbtable, 'message')
table.insert(fbtable, 'default')
return fbtable
end
function p._langSwitch(args, lang) -- args: table of translations
-- Return error if there is not default and no English version
-- otherwise returns the message in the most appropriate, plus the lang code as a second value
if not args.en and not args.default and not args.message and args.nocat ~= '1' then
return error("langSwitch error: no default")
end
-- get language (either stated one or user's default language)
if not lang then
return '<strong class="error">LangSwitch Error: no lang</strong>' -- must become proper error
end
-- get the list of acceptable language (lang + those in lang's fallback chain) and check their content
for i, j in ipairs(p.fblist(lang)) do
if args[j] then
if args[j] == '~' then return nil, j end
if j == 'message' then return tostring(mw.message.new(args[j]):inLanguage(lang)) end -- if this is an interface message
if args[j] ~= '' then return args[j], j end
end
end
return nil
end
function p.langSwitch(frame) -- version to be used from wikitext
local args = frame.args
-- if no expected args provided than check parent template/module args
if not args.en and not args.default and not args.nocat then
args = frame:getParent().args
end
local lang
if args.lang and args.lang ~= '' then
lang = args.lang
args.lang = nil
else -- get user's chosen language
lang = frame:preprocess( "{{int:lang}}" )
end
local str, language = p._langSwitch(args, lang)
return str -- get the first value of the langSwitch, (the text) not the second (the language)
end
function p.fallbackpage(base, lang, formatting)
local languages = p.fblist(lang)
for i, lng in ipairs(languages) do
if mw.title.new(base .. '/' .. lng).exists then
if formatting == 'table' then
return {base .. '/' .. lng, lng} -- returns name of the page + name of the language
else
return base .. '/' .. lng -- returns only the page
end
end
end
return base
end
function p.autotranslate(frame) -- logic for [[template:Autotranslate]]
local args = frame.args
if not args.lang or args.lang == '' then
args.lang = frame:preprocess( "{{int:lang}}" ) -- get user's chosen language
end
-- find base page
local base = args.base
if not base or base == '' then
return '<strong class="error">Base page not provided for autotranslate</strong>'
end
if string.sub(base, 2, 9) ~= 'emplate:' then
base = 'Template:' .. base -- base provided without 'Template:' part
end
-- find base template language subpage
local page = p.fallbackpage(base, args.lang) --
if (not page and base ~= args.base) then
-- try the original args.base string. This case is only needed if base is not in template namespace
page = p.fallbackpage(args.base, args.lang)
end
if not page then
return string.format('<strong class="error">no fallback page found for autotranslate (base=[[%s]], lang=%s)</strong>', args.base, args.lang)
end
-- repack args in a standard table
local newargs = {}
for field, value in pairs(args) do
if field ~= 'base' then
newargs[field] = value
end
end
-- Transclude {{page |....}} with template arguments the same as the ones passed to {{autotranslate}} template.
return frame:expandTemplate{ title = page, args = newargs }
end
function p.translate(page, key, lang) --translate data stored in a module
if type(page) == 'string' then -- if the requested translation table is not yet loaded
page = require('Module:' .. page)
end
local val
if page[key] then
val = page[key]
elseif page.keys and page.keys[key] then-- key 'keys" is an index of all keys, including redirects, see [[Module:i18n/datatype]]
val = page.keys[key]
end
if not val then
return '<' .. key .. '>'
end
return p._langSwitch(val, lang)
end
function p.translatelua(frame)
local lang = frame.args.lang
local page = require('Module:' .. mw.text.trim(frame.args[1])) -- page should only contain a simple of translations
if not lang or mw.text.trim(lang) == '' then
lang = frame:preprocess( "{{int:lang}}" )
end
if frame.args[2] then
page = page[mw.text.trim(frame.args[2])]
end
return p._langSwitch(page, lang)
end
function p.runTests()
local toFallbackTest = require('Module:Fallback/tests/fallbacks')
local result = true
mw.log('Testing fallback chains')
for i, t in ipairs(toFallbackTest) do
local fbtbl = table.concat(p.fblist(t.initial), ', ')
local expected = table.concat(t.expected, ', ')
local ret = (fbtbl == expected)
mw.log(i, ret and 'passed' or 'FAILED', t.initial, (not ret) and ('FAILED\nis >>' .. fbtbl .. '<<\nbut should be >>' .. expected .. '<<\n') or '')
result = result and ret
end
return result
end
function p.showTemplateArguments(frame)
-- list all input arguments of the template that calls "{{#invoke:Fallback|showTemplateArguments}}"
local str = ''
for name, value in pairs( frame:getParent().args ) do
if str == '' then
str = string.format('%s=%s', name, value) -- argument #1
else
str = string.format('%s, %s=%s', str, name, value) -- the rest
end
end
return str
end
return p
gp7q42tyueayf2mqs6ll62uwu7gt2gi
Module:Weblink
828
3353
36541
2025-12-15T18:13:04Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.makelink(url, showntext) if (not url) or (url == "-") then return nil end --I validation de l'url (paramètre URL) url = mw.text.trim(url) -- II texte à afficher (paramètre "showntext") --- valeur spéciale : aucun texte if showntext == "-" then return url end --- laissé vide : texte basé sur l'URL if not showntext then if mw.ustring.sub(url, 1, 1) == "[" then return url end local sub12 = mw...'
36541
Scribunto
text/plain
local p = {}
function p.makelink(url, showntext)
if (not url) or (url == "-") then
return nil
end
--I validation de l'url (paramètre URL)
url = mw.text.trim(url)
-- II texte à afficher (paramètre "showntext")
--- valeur spéciale : aucun texte
if showntext == "-" then
return url
end
--- laissé vide : texte basé sur l'URL
if not showntext then
if mw.ustring.sub(url, 1, 1) == "[" then
return url
end
local sub12 = mw.ustring.sub(url, 1, 12)
if sub12 == '<span class=' or sub12 == '<cite class=' or sub12 == '<abbr class=' then
-- résultat produit par [[modèle:URL]], [[modèle:Lien web]], [[modèle:Site officiel]], ou [[modèle:en]]
return url
end
local space = mw.ustring.find(url, ' ') -- si le nom du site est passé par mégarde dans l'URL, le séparer
if space then
local full = url
url = mw.ustring.sub(full, 1, space - 1)
showntext = mw.ustring.sub(full, space + 1)
else
showntext = string.gsub( url, 'https?://', '')
---- remove trailing slash
if string.sub(showntext, #showntext, #showntext) == '/' then
showntext = string.sub(showntext, 1, #showntext - 1)
end
end
end
return '[' .. url .. ' ' .. showntext .. ']'
end
function p.makelinks(stringlist, separator)
if not type(stringlist) == table then
return error('stringlist should be table')
end
if not separator then
separator = '<br />'
end
for i, j in pairs(stringlist) do
stringlist[i] = p.makelink(j)
end
return table.concat(stringlist, separator)
end
return p
h8hu7tj43qbcjfv37a971a8216a8pve
Module:Cite
828
3354
36542
2025-12-15T18:14:07Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Creates a timeline for an item based on various properties local p = {} local wikidata = require('Module:Wikidata') local linguistic = require('Module:Linguistic') local fb = require('Module:Fallback') local function formatpage(page, lang) -- same text for singular and plural, most of the time, they can be distinguished by the presence of a "-" but that does not always work, see Q11927173 if not page then return nil end return fb._langSw...'
36542
Scribunto
text/plain
-- Creates a timeline for an item based on various properties
local p = {}
local wikidata = require('Module:Wikidata')
local linguistic = require('Module:Linguistic')
local fb = require('Module:Fallback')
local function formatpage(page, lang)
-- same text for singular and plural, most of the time, they can be distinguished by the presence of a "-" but that does not always work, see Q11927173
if not page then
return nil
end
return fb._langSwitch({ -- singular
de = 'S. ' .. page,
en = 'p. ' .. page,
fr = 'p. ' .. page,
nb = 's. ' .. page,
nn = 's. ' .. page,
}, lang)
end
local function getauthor(item, lang)
return wikidata.formatStatements{entity=item, property = 'P50', lang=lang}
end
local function getISBN(item, lang)
local ISBN = wikidata.formatStatements{entity = item, property = 'P212', lang=lang, numval = 1}
if ISBN then
return 'ISBN ' ..ISBN
end
end
local function getLink(item, lang)
local links = wikidata.formatStatements{entity = item, property = 'P854', numval = 1, lang=lang}
if links then
return fb._langSwitch({
de = '[' .. links .. ' online]',
en = '[' .. links .. ' read online]',
fr = '[' .. links .. ' lire en ligne]',
nb = '[' .. links .. ' les online]',
nn = '[' .. links .. ' les online]',
}, lang)
end
end
local function getVolume(item, lang)
local volume = wikidata.formatStatements{entity = item, property = 'P478', numval = 1, lang=lang}
if volume then
return fb._langSwitch({
de = 'Band ' .. volume,
en = 'vol. ' .. volume,
}, lang)
end
end
local function getDoi(item, lang)
local doi = wikidata.formatStatements({entity=item, property = 'P356', numval = 1, lang=lang}) -- what to do if several value
if not doi then
return nil
end
return '<small>' .. 'doi: [http://dx.doi.org/' .. doi .. ' ' .. doi .. ']' .. '</small>' -- needs i18n ?
end
local function getPmid(item, lang)
local pmid = wikidata.formatStatements({entity=item, property = 'P698', numval = 1, lang=lang}) -- what to do if several values
if not pmid then
return nil
end
return '<small> PubMed ID: [https://www.ncbi.nlm.nih.gov/pubmed/?term=' .. pmid .. ' ' .. pmid .. '] </small>' -- needs i18n ?
end
local function getPmcid(item, lang)
local pmcid = wikidata.formatStatements({entity=item, property = 'P932', numval = 1, lang=lang}) -- what to do if several values
if not pmcid then
return nil
end
return '<small> PubMed Central ID: [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC?term=' .. pmcid .. ' ' .. pmcid .. '] </small>' -- needs i18n ?
end
local function getEditor(item, lang)
local editortable = wikidata.getClaims({entity=item, property='P98'})
if not editortable then
return nil
end
local editor = wikidata.formatStatements({entity=item, property='P98', lang=lang}) -- should have a "formatClaims" function to avoid double work
if #editortable > 1 then return
fb._langSwitch({ --plural
de = editor .. ' (Hrsg.)',
en = editor .. ' (eds.)',
nb = editor .. ' (red.)',
nn = editor .. ' (red.)',
}, lang)
else
return fb._langSwitch({ -- singular
de = editor .. ' (Hrsg.)',
en = editor .. ' (ed.)',
nb = editor .. ' (red.)',
nn = editor .. ' (red.)',
}, lang)
end
end
local function getedition(item, lang)
local ednumber = wikidata.formatStatements({entity=item, property = 'P393', lang=lang, numval = 1})
if not ednumber then
return nil
end
local ord = require('Module:Ordinal')._ordinal
return fb._langSwitch({
de = ednumber .. '. Auflage',
en = ord{ednumber, lang = 'en'} .. ' edition',
fr = ord{ednumber, lang = 'fr'} .. ' édition',
nb = ord{ednumber, lang = 'nb'} .. ' utgave',
nn = ord{ednumber, lang = 'nn'} .. ' utgave',
}, lang)
end
local function getarticletitle(item, lang)
local title = wikidata.formatStatements({entity=item, property = 'P1476', lang=lang}) or wikidata.formatStatements({entity=item, property = 'P357', lang=lang})
if not title then
return '[[' .. item.id .. ']] (no title property provided!)'
end
return fb._langSwitch({
de = '„' .. '[[' .. item.id .. '|' .. title .. ']]' .. '“',
en = '"' .. '[[' .. item.id .. '|' .. title .. ']]' .. '"',
fr = '«' ..'[[' .. item.id .. '|' .. title .. ']]' .. '»',
nb = '«' ..'[[' .. item.id .. '|' .. title .. ']]' .. '»',
nn = '«' ..'[[' .. item.id .. '|' .. title .. ']]' .. '»',
} , lang)
end
local function getbooktitle(item, lang)-- needs i18n some languages do not use this format
local title = wikidata.formatStatements({entity=item, property = 'P1476', lang=lang}) or wikidata.formatStatements({entity=item, property = 'P357', lang=lang})
if not title then
return '[[' .. item.id .. ']] (no title property provided!)'
end
return '<i>' .. '[[' .. item.id .. '|' .. title .. ']]' .. '</i>'
end
local function getissue(item, lang)
return wikidata.formatStatements({entity=item, property = 'P433', lang=lang})
end
local function getpublisher(item, lang)
return wikidata.formatStatements({entity=item, property = 'P123', lang=lang})
end
local function getpublishdate(item, lang)
return wikidata.formatStatements({entity=item, property = 'P577', lang=lang})
end
local function geturl(item, lang)
return wikidata.formatStatements({entity=item, property = 'P854', lang=lang})
end
local function getlicense(item, lang)
return wikidata.formatStatements{entity=item, property = 'P275', lang=lang}
end
local function getjournal(item, lang) -- get the title property rather than the label
local journal = wikidata.getClaims({entity = item, property = 'P1433', exlcudespecial = true})
if not journal then
return nil
end
if #journal > 1 then
return "error, source has too much publishing info"
end
local journaltitle
local journalid = 'Q' .. journal[1].mainsnak.datavalue.value["numeric-id"]
-- find higher work (if any; for example [[Q19302303]])
local journallink = wikidata.formatStatements({item = journalid , property = 'P1433', lang=lang})
if journallink then
return journallink
else
journaltitle = wikidata._getLabel(journalid)
return '<i>[[' .. journalid .. '|' .. journaltitle .. ']]</i>'
end
end
local function citebook(item, lang, page)
local publishdate = getpublishdate(item, lang)
local author = getauthor(item, lang)
local editor = getEditor(item, lang)
local title = getbooktitle(item, lang)
local publisher = getpublisher(item, lang)
local edition = getedition(item, lang)
local isbn = getISBN(item, lang)
local doi = getDoi(item, lang)
local pmid = getPmid(item, lang)
local pmid = getPmcid(item, lang)
local link = getLink(item, lang)
local volume = getVolume(item, lang)
local pagenumber = formatpage(page, lang)
local license = getlicense(item, lang)
local fields = {}
table.insert(fields, author)
table.insert(fields, editor)
table.insert(fields, title)
table.insert(fields, edition)
table.insert(fields, volume)
table.insert(fields, publisher)
table.insert(fields, publishdate)
table.insert(fields, pagenumber)
table.insert(fields, isbn)
table.insert(fields, doi)
table.insert(fields, pmid)
table.insert(fields, pmcid)
table.insert(fields, link)
table.insert(fields, license)
return linguistic.conj(fields, lang, "citation_comma")
end
local function citearticle(item, lang, page)
local author = getauthor(item, lang)
local title = getarticletitle(item, lang)
local publisher = getpublisher(item, lang)
local publishdate = getpublishdate(item, lang)
local pagenumber = formatpage(page, lang)
local journal = getjournal(item, lang)
local issue = getissue(item, lang)
local publishdate = getpublishdate(item, lang)
local doi = getDoi(item, lang)
local pmid = getPmid(item, lang)
local pmid = getPmcid(item, lang)
local link = getLink(item, lang)
local volume = getVolume(item, lang)
local pagenumber = formatpage(page, lang)
local license = getlicense(item, lang)
local fields = {}
table.insert(fields, author)
table.insert(fields, title)
table.insert(fields, publisher)
table.insert(fields, journal)
table.insert(fields, volume)
table.insert(fields, issue)
table.insert(fields, publishdate)
table.insert(fields, pagenumber)
table.insert(fields, doi)
table.insert(fields, pmid)
table.insert(fields, pmcid)
table.insert(fields, link)
table.insert(fields, license)
return linguistic.conj(fields, lang, "citation_comma")
end
function p.citeitem(item, lang, page)
if not item then return nil end
if type(item) == 'string' then
item = mw.wikibase.getEntityObject(item)
end
if not item then
return "invalid item id"
end
if wikidata.getClaims({entity = item, property = 'P1433'}) then -- if item has "edition of" is a book, else an article, needs a better solution
return citearticle(item, lang, page)
else
mw.log('Citing as book')
return citebook(item, lang, page)
end
end
function p.cite(frame)
local lang = frame.args.lang
if not lang or lang == '' then
lang = frame:preprocess('{{int:lang}}')
end
local page = frame.args.page
if page == '' then
page = nil
end
return p.citeitem(frame.args.item, lang, page)
end
function p.reflist(frame)
local list = mw.text.split( frame.args[1], ' ')
local lang = frame.args.lang
if not lang or lang == '' then
lang = frame:preprocess('{{int:lang}}')
end
local str = ''
for i, j in pairs(list) do
str = str .. '<li> ' .. p.citeitem(mw.text.trim(j),lang) .. '</li>'
end
return str
end
return p
cxknj6sn58ediclx0ti29g0ax7mqhyw
Module:Wikidata/I18n
828
3355
36543
2025-12-15T18:15:47Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { -- Messages d'erreurs ["property-param-not-provided"] = "paramètre 'property' manquant", ["qualifier-param-not-provided"] = "paramètre 'qualifier' manquant", ["entity-param-not-provided"] = "paramètre 'entity' manquant", ["entity-not-found"] = "entité non trouvée", ["unknown-claim-type"] = "type d'affirmation inconnu", ["unknown-snak-typeg"] = "unknown snak type", ["unknown-datavalue-type"] = "unknown datavalue type.", ["unkno...'
36543
Scribunto
text/plain
return {
-- Messages d'erreurs
["property-param-not-provided"] = "paramètre 'property' manquant",
["qualifier-param-not-provided"] = "paramètre 'qualifier' manquant",
["entity-param-not-provided"] = "paramètre 'entity' manquant",
["entity-not-found"] = "entité non trouvée",
["unknown-claim-type"] = "type d'affirmation inconnu",
["unknown-snak-typeg"] = "unknown snak type",
["unknown-datavalue-type"] = "unknown datavalue type.",
["unknown-entity-type"] = "unknown entity type",
["invalid-id"] = "identifiant inconnu",
["invalid-datatype"] = "type de données inconnu",
["invalid-linktype"] = "type de lien inconnu",
-- Autres messages
["no-label"] = "pas de libellé",
['no description'] = "pas description",
["novalue"] = "-",
["somevalue"] = "inconnu",
["sometime"] = "date inconnue",
['to translate'] = 'Page utilisant des données de Wikidata à traduire',
["trackingcat"] = 'Page utilisant $1',
['see-wikidata-value'] = "Voir et modifier les données sur Wikidata", -- lien vers des valeurs sur une propriété Wikidata
['see-wikidata'] = "Voir l'élément Wikidata correspondant", -- utilisé sur les liens Wikidata par défaut en l'absence de lien interne disponible
['see-another-project'] = "Article sur $1",
['see-another-language'] = "Article sur Wikipédia en $1",
['activate-query'] = "<div class='par wikidata'></div>" -- activates an on-demand-only query
}
okg5acrc8xun9oahm2b4ecjmmwzhcuz
Module:Infobox/Fonctions
828
3356
36544
2025-12-15T18:16:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Fonctions communes à diverses infobox local wikidata = require 'Module:Interface Wikidata'.fromLua local coordfunctions = require 'Module:Infobox/Fonctions/Géolocalisation' local lang = mw.language.new('fr') local p = {} function p.onlytitle(icon, style) local title = localdata['nom'] or wikidata.getLabel(item) or mw.title.getCurrentTitle().text return { type = 'title', value = function() return title end, icon = icon, style = s...'
36544
Scribunto
text/plain
-- Fonctions communes à diverses infobox
local wikidata = require 'Module:Interface Wikidata'.fromLua
local coordfunctions = require 'Module:Infobox/Fonctions/Géolocalisation'
local lang = mw.language.new('fr')
local p = {}
function p.onlytitle(icon, style)
local title = localdata['nom'] or wikidata.getLabel(item) or mw.title.getCurrentTitle().text
return {
type = 'title',
value = function() return title end,
icon = icon,
style = style,
}
end
function p.title(icon, style)
local title = localdata['nom'] or wikidata.getLabel(item) or mw.title.getCurrentTitle().text
local subtitle = localdata['nom local']
local subtitleclaims = wikidata.getClaims({item=item, property = 'P1448'} or {})
if (not subtitle) and subtitleclaims then
subtitle = ''
local dones = {}
local langspan = require('Module:Langue').langue
for i, j in pairs(subtitleclaims) do
local text, textlang
if j.mainsnak.snaktype then
text, textlang = j.mainsnak.datavalue.value.text, j.mainsnak.datavalue.value.language
end
if mw.ustring.lower(text) ~= mw.ustring.lower(title) and not dones[text] then
subtitle = subtitle .. langspan{textlang, text} .. '<br />'
dones[text] = true
end
end
if subtitle == '' then
subtitle = nil
end
end
return {
type = 'title',
value = function() return title end,
subtitle = function() return subtitle end,
icon = icon,
style = style,
}
end
function p.mainimage(cat, defaultimage, size)
return {
type = 'images',
imageparameters = {'image'},
defaultimages = defaultimage,
defaultimagelink = 'Aide:Insérer une image',
-- defaultimagesize = '100px',
sizeparameter = 'taille image',
defaultsize = size,
maintenancecat =
function(localdata, item, params)
if cat and (cat ~= '-') then
return cat
else
return 'Article à illustrer'
end
end,
captionparameter = 'légende',
defaultcaption = function() return defaultcaption end,
property = 'P18',
numval = 1,
}
end
function p.logo(size)
return {
type = 'images',
imageparameters = {'logo'},
-- defaultimage = {},
-- maintenancecat =
captionparameter = 'légende logo',
property = 'P154',
defaultupright = '0.8',
sizeparameter = 'taillelogo',
numval = 1,
}
end
-- Liens externes
function p.website() --texte libre [http://example.org example.org] ou url seule
local function getLinks(item)
return wikidata.getClaims {property='P856', entity = item}
end
return {
type = 'mixed',
label = 'Site web',
wikidatalabel = function()
local links = getLinks(item)
if links and #links > 1 then
return 'Sites web'
end
return 'Site web'
end,
wikidata = function()
local claims = getLinks(item)
return wikidata.formatAndCat{entity = item, claims = claims, displayformat = 'weblink', conjtype = '<br />', property = 'P856'}
end,
value = function(localdata)
local website = localdata['site web'] or localdata['site_web'] or localdata['site officiel']
if website then
if (string.sub(website, 1, 4) == 'http') and (not string.find(website, ' ')) then -- if website is url
return require("Module:Weblink").makelink(website)
else
return website
end
elseif localdata['url'] then
return require("Module:Weblink").makelink(localdata['url'])
end
end
}
end
-- Pays
function p.country(default)
return coordfunctions.country(default)
end
return p
6ap9uwcf3nlmn6pqsda40von9osr23r
Module:Time
828
3357
36545
2025-12-15T18:26:09Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require "strict" local Time = {} --[[ Check if a value is a number in the given range @param mixed value @param number min @param number max @return boolean ]]-- local function validateNumberInRange( value, min, max ) return type( value ) == 'number' and value >= min and value <= max end --Internal functions --[[ Validate a time defintion @param table definition data @return boolean ]]-- local function validate( definition ) --Validate...'
36545
Scribunto
text/plain
require "strict"
local Time = {}
--[[
Check if a value is a number in the given range
@param mixed value
@param number min
@param number max
@return boolean
]]--
local function validateNumberInRange( value, min, max )
return type( value ) == 'number' and value >= min and value <= max
end
--Internal functions
--[[
Validate a time defintion
@param table definition data
@return boolean
]]--
local function validate( definition )
--Validate constantes
if not Time.knowsPrecision( definition.precision ) or ( definition.calendar ~= Time.CALENDAR.GREGORIAN and definition.calendar ~= Time.CALENDAR.JULIAN ) then
return false
end
--Validate year
if not (type( definition.year ) == 'number' or (definition.year == nil and precision == Time.PRECISION.DAY)) then
return false
end
if definition.precision <= Time.PRECISION.YEAR then
return true
end
--Validate month
if not validateNumberInRange( definition.month, 1, 12 ) then
return false
end
if definition.precision <= Time.PRECISION.MONTH then
return true
end
--Validate day
if not validateNumberInRange( definition.day, 1, 31 ) then
return false
end
if definition.precision <= Time.PRECISION.DAY then
return true
end
--Validate hour
if not validateNumberInRange( definition.hour, 0, 23 ) then
return false
end
if definition.precision <= Time.PRECISION.HOUR then
return true
end
--Validate minute
if not validateNumberInRange( definition.minute, 0, 59 ) then
return false
end
if definition.precision <= Time.PRECISION.MINUTE then
return true
end
--Validate second
if not validateNumberInRange( definition.second, 0, 60 ) then
return false
end
return true
end
--[[
Try to find the relevant precision for a time definition
@param table time definition
@return number the precision
]]--
local function guessPrecision( definition )
if definition.month == nil then
return Time.PRECISION.YEAR
elseif definition.day == nil then
return Time.PRECISION.MONTH
elseif definition.hour == nil then
return Time.PRECISION.DAY
elseif definition.minute == nil then
return Time.PRECISION.HOUR
elseif definition.second == nil then
return Time.PRECISION.MINUTE
else
return Time.PRECISION.SECOND
end
end
--[[
Try to find the relevant calendar for a time definition
@param table time definition
@return string the calendar name
]]--
local function guessCalendar( definition )
if definition.year ~= nil and definition.year < 1583 and definition.precision > Time.PRECISION.MONTH then
return Time.CALENDAR.JULIAN
else
return Time.CALENDAR.GREGORIAN
end
end
--[[
Parse an ISO 8601 string and return it as a time definition
@param string iso the iso datetime
@param boolean withoutRecurrence concider date in the format XX-XX as year-month and not month-day
@return table
]]--
local function parseIso8601( iso, withoutRecurrence )
local definition = {}
--Split date and time
iso = mw.text.trim( iso:upper() )
local beginMatch, endMatch, date, time, offset = iso:find( '([%+%-]?[%d%-]+)[T ]?([%d%.:]*)([Z%+%-]?[%d:]*)' )
if beginMatch ~= 1 or endMatch ~= iso:len() then --iso is not a valid ISO string
return {}
end
--date
if date ~= nil then
local isBC = false
if date:sub( 1, 1 ) == '-' then
isBC = true
date = date:sub( 2, date:len() )
end
local parts = mw.text.split( date, '-' )
if not withoutRecurrence and table.maxn( parts ) == 2 and parts[1]:len() == 2 then
--MM-DD case
definition.month = tonumber( parts[1] )
definition.day = tonumber( parts[2] )
else
if isBC then
definition.year = -1 * tonumber( parts[1] ) - 1 --Years BC are counted since 0 and not -1
else
definition.year = tonumber( parts[1] )
end
definition.month = tonumber( parts[2] )
definition.day = tonumber( parts[3] )
end
end
--time
if time ~= nil then
local parts = mw.text.split( time, ':' )
definition.hour = tonumber( parts[1] )
definition.minute = tonumber( parts[2] )
definition.second = tonumber( parts[3] )
end
--ofset
if offset ~= nil then
if offset == 'Z' then
definition.utcoffset = '+00:00'
else
definition.utcoffset = offset
end
end
return definition
end
--[[
Format UTC offset for ISO output
@param string offset UTC offset
@return string UTC offset for ISO
]]--
local function formatUtcOffsetForIso( offset )
if offset == '+00:00' then
return 'Z'
else
return offset
end
end
--[[
Prepend as mutch as needed the character c to the string str in order to to have a string of length length
@param mixed str
@param string c
@param number length
@return string
]]--
local function prepend(str, c, length)
str = tostring( str )
while str:len() < length do
str = c .. str
end
return str
end
local function eq(t1, t2)
return not (t1 < t2 or t2 < t1)
end
local function lt(t1, t2)
if t1.calendar ~= t2.calendar then
-- ...
end
if t1.year ~= t2.year then
return t1.year < t2.year
end
if t1.month ~= t2.month then
return t1.month < t2.month
end
return t1.day < t2.day
end
--Public interface
--[[
Build a new Time
@param table definition definition of the time
@return Time|nil
]]--
function Time.new( definition )
--Default values
if definition.precision == nil then
definition.precision = guessPrecision( definition )
end
if definition.calendar == nil then
definition.calendar = guessCalendar( definition )
end
if not validate( definition ) then
return nil
end
local time = {
year = definition.year or nil,
month = definition.month or 1,
day = definition.day or 1,
hour = definition.hour or 0,
minute = definition.minute or 0,
second = definition.second or 0,
utcoffset = definition.utcoffset or '+00:00',
calendar = definition.calendar or Time.CALENDAR.GREGORIAN,
precision = definition.precision or 0
}
setmetatable( time, {
__index = Time,
__lt = lt,
__eq = eq,
__tostring = function( self ) return self:toString() end
} )
return time
end
--[[
Build a new Time from an ISO 8601 datetime
@param string iso the time as ISO string
@param boolean withoutRecurrence concider date in the format XX-XX as year-month and not month-day
@return Time|nil
]]--
function Time.newFromIso8601( iso, withoutRecurrence )
return Time.new( parseIso8601( iso, withoutRecurrence ) )
end
--[[
Build a new Time from a Wikidata time value
@param table wikidataValue the time as represented by Wikidata
@return Time|nil
]]--
function Time.newFromWikidataValue( wikidataValue )
local definition = parseIso8601( wikidataValue.time )
definition.precision = wikidataValue.precision
if wikidataValue.calendarmodel == 'http://www.wikidata.org/entity/Q1985727' then
definition.calendar = Time.CALENDAR.GREGORIAN
elseif wikidataValue.calendarmodel == 'http://www.wikidata.org/entity/Q1985786' then
definition.calendar = Time.CALENDAR.JULIAN
else
return nil
end
return Time.new( definition )
end
--[[
Return a Time as a ISO 8601 string
@return string
]]--
function Time:toIso8601()
local iso = ''
if self.year ~= nil then
if self.year < 0 then
--Years BC are counted since 0 and not -1
iso = '-' .. prepend( -1 * self.year - 1, '0', 4 )
else
iso = prepend( self.year, '0', 4 )
end
end
--month
if self.precision < Time.PRECISION.MONTH then
return iso
end
if self.iso ~= '' then
iso = iso .. '-'
end
iso = iso .. prepend( self.month, '0', 2 )
--day
if self.precision < Time.PRECISION.DAY then
return iso
end
iso = iso .. '-' .. prepend( self.day, '0', 2 )
--hour
if self.precision < Time.PRECISION.HOUR then
return iso
end
iso = iso .. 'T' .. prepend( self.hour, '0', 2 )
--minute
if self.precision < Time.PRECISION.MINUTE then
return iso .. formatUtcOffsetForIso( self.utcoffset )
end
iso = iso .. ':' .. prepend( self.minute, '0', 2 )
--second
if self.precision < Time.PRECISION.SECOND then
return iso .. formatUtcOffsetForIso( self.utcoffset )
end
return iso .. ':' .. prepend( self.second, '0', 2 ) .. formatUtcOffsetForIso( self.utcoffset )
end
--[[
Return a Time as a string
@param mw.language|string|nil language to use. By default the content language.
@return string
]]--
function Time:toString( language )
if language == nil then
language = mw.language.getContentLanguage()
elseif type( language ) == 'string' then
language = mw.language.new( language )
end
--return language:formatDate( 'r', self:toIso8601() )
return self:toIso8601()
--TODO: improve
end
--[[
Return a Time in HTMl (with a <time> node)
@param mw.language|string|nil language to use. By default the content language.
@param table|nil attributes table of attributes to add to the <time> node.
@return string
]]--
function Time:toHtml( language, attributes )
if attributes == nil then
attributes = {}
end
attributes['datetime'] = self:toIso8601()
return mw.text.tag( 'time', attributes, self:toString( language ) )
end
--[[
All possible precisions for a Time (same ids as Wikibase)
]]--
Time.PRECISION = {
GY = 0, --Gigayear
MY100 = 1, --100 Megayears
MY10 = 2, --10 Megayears
MY = 3, --Megayear
KY100 = 4, --100 Kiloyears
KY10 = 5, --10 Kiloyears
KY = 6, --Kiloyear
YEAR100 = 7, --100 years
YEAR10 = 8, --10 years
YEAR = 9,
MONTH = 10,
DAY = 11,
HOUR = 12,
MINUTE = 13,
SECOND = 14
}
--[[
Check if the precision is known
@param number precision ID
@return boolean
]]--
function Time.knowsPrecision( precision )
for _, id in pairs( Time.PRECISION ) do
if id == precision then
return true
end
end
return false
end
--[[
Supported calendar models
]]--
Time.CALENDAR = {
GREGORIAN = 'Gregorian',
JULIAN = 'Julian'
}
return Time
eegjk81jpllb5m7rz6kpoffmbcxwqz6
Module:Wikidata/Récup
828
3358
36546
2025-12-15T18:27:19Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local datequalifiers = {'P585', 'P571', 'P580', 'P582'} local basic = require "Module:Wikibase" local function severalProperties(args) local newargs = args for i, j in pairs(args.property) do newargs.property = j local claims = p.getClaims(newargs) if claims then return claims end end end function notSpecial(claim) return basic.isValue(claim.mainsnak) end local function hastargetvalue(claim, target) return basic.get...'
36546
Scribunto
text/plain
local p = {}
local datequalifiers = {'P585', 'P571', 'P580', 'P582'}
local basic = require "Module:Wikibase"
local function severalProperties(args)
local newargs = args
for i, j in pairs(args.property) do
newargs.property = j
local claims = p.getClaims(newargs)
if claims then
return claims
end
end
end
function notSpecial(claim)
return basic.isValue(claim.mainsnak)
end
local function hastargetvalue(claim, target)
return basic.getMainId(claim) == target
end
local function bestranked(claims)
if not claims then
return nil
end
local preferred, normal = {}, {}
for i, j in pairs(claims) do
if j.rank == 'preferred' then
table.insert(preferred, j)
elseif j.rank == 'normal' then
table.insert(normal, j)
end
end
if #preferred > 0 then
return preferred
else
return normal
end
end
local function withrank(claims, target)
if target == 'best' then
return bestranked(claims)
end
local newclaims = {}
for pos, claim in pairs(claims) do
if target == 'valid' then
if claim.rank ~= 'deprecated' then
table.insert(newclaims, claim)
end
elseif claim.rank == target then
table.insert(newclaims, claim)
end
end
return newclaims
end
local function hasqualifier(claim, qualifier, qualifiervalues)
local claimqualifs = claim.qualifiers
if (not claimqualifs) or not(claimqualifs[qualifier]) then
return false
end
if (not qualifiervalues) or (qualifiervalues == {}) then
return true -- si aucune valeur spécifique n'est exigée, c'est bon
end
if type(qualifiervalues) == 'string' then
qualifiervalues = {qualifiervalues}
end
for i, j in pairs(claim.qualifiers[qualifier]) do
local val = basic.getId(j)
for k, l in pairs(qualifiervalues) do
if l == val then
return true
end
end
end
return false
end
local function hassource(claim, targetsource, sourceproperty)
sourceproperty = sourceproperty or 'P248'
if not claim.references or not claim.references[sourceproperty] then
return false
end
if not targetsource then -- si toutes les sources sont valides, du moment qu'elles utilisent sourceproperty
return true
end
for _, source in pairs(claim.references[sourceproperty]) do
if basic.getId(source) == targetsource then
return true
end
end
return true
end
local function hasdate(claim)
local claimqualifs = claims.qualifiers
if not claimqualifs then
return false
end
for _, qualif in pairs(claimqualifs) do
if claimsqualifs[qualif] and claimsqualifs[qualif][1].snaktype == 'value' then
return true
end
end
return false
end
local function isinlanguage(snak, lang) -- ne fonctionne que pour les monolingualtext / étendre aux autres types en utilisant les qualifiers ?
if basic.isSpecial(snak) then
return false
end
if snak.datavalue.type == 'monolingualtext' and snak.datavalue.value.language == lang then
return true
end
return false
end
local function firstvals(claims, numval) -- retourn les numval premières valeurs de la table claims
local numval = tonumber(numval) or 0 -- raise a error if numval is not a positive integer ?
if not claims then
return nil
end
if #claims <= numval then
return claims
end
local newclaims = {}
while #newclaims < numval do
table.insert(newclaims, claims[#newclaims + 1])
end
return newclaims
end
local function chronosort(claims, inverted)
local function getTimestamp(claim)
local claimqualifs = claim.qualifiers
if not claimqualifs then
return nil
end
for _, qualif in pairs(datequalifiers) do
local vals = claimqualifs[qualif]
if vals and basic.isValue(vals[1]) then
return basic.getValue(vals[1]).time
end
end
end
table.sort(claims, function(a,b)
local timeA = getTimestamp(a) or ''
local timeB = getTimestamp(b) or ''
if inverted then
return timeA > timeB
else
return timeB > timeA
end
end
)
return claims
end
function p.sortclaims(claims, sorttype)
if not claims then
return nil
end
if sorttype == 'chronological' then
return chronosort(claims)
elseif sorttype == 'inverted' then
return chronosort(claims, true)
elseif type(sorttype) == 'function' then
table.sort(claims, sorttype)
return claims
end
return claims
end
function p.getClaims( args ) -- returns a table of the claims matching some conditions given in args
if args.claims then -- if claims have already been set, return them
return args.claims
end
if not args.property then
return error( 'property-param-not-provided' )
end
if type(args.property) == 'table' then
return severalProperties(args)
end
--Get entity
local entity = args.entity
if type(entity) ~= 'table' then
entity = mw.wikibase.getEntityObject( args.entity )
end
if (not entity) or (not entity.claims) then
return nil
end
local property = string.upper(args.property)
if not entity.claims[property] then
return nil
end
local claims = entity.claims[property]
if not claims then
return nil
end
-- ~= '' lorsque le paramètre est écrit mais laissé blanc dans une fonction frame
local filters = { -- liste des arguments déclenchat un filtre des données
--[numéro] = {param déclenche, fonction à utiliser, paramètres à utiliser}
[1] = {
'targetvalue',
hastargetvalue,
{'targetvalue'}
},
[3] = {
'qualifier',
hasqualifier,
{'qualifier', 'qualifiervalue'}
},
[4] = {
'source',
hassource,
{'source', 'sourceproperty'}
},
[5] = {
'withdate',
hasdate,
{},
},
[6] = {
'excludespecial',
notSpecial,
{},
},
}
for i, filter in pairs(filters) do
if args[filter[1]] then
local newclaims = {}
local filterfun = filter[2]
local filterarg1, filterarg2, filterarg3 = args[filter[3][1]], args[filter[3][2]], args[filter[3][3]]
for pos, claim in pairs(claims) do
if filterfun(claim, filterarg1, filterarg2, fiterarg3) == true then
table.insert(newclaims, claim)
end
end
claims = newclaims
end
end
claims = withrank(claims, args.rank or 'best')
if args.sorttype then
claims = p.sortclaims(claims, args.sorttype)
end
if args.numval then
claims = firstvals(claims, args.numval)
end
return claims
end
return p
j1muumnn60h8hjbp2h74ezpn2hethjw
Module:Wikibase
828
3359
36547
2025-12-15T18:28:14Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '---------- Module:Wikibase ---------------- require('strict') local p = {} -- Return the entity ID of the item linked to the current page. function p.id(frame) if not mw.wikibase then return "no mw.wikibase" end return mw.wikibase.getEntityIdForCurrentPage() or "no entity" end -- Return the URL of an entity given its entity ID -- or the item linked to the current page if no argument is provided. function p.wdurl(frame) return mw.wikibase.ge...'
36547
Scribunto
text/plain
---------- Module:Wikibase ----------------
require('strict')
local p = {}
-- Return the entity ID of the item linked to the current page.
function p.id(frame)
if not mw.wikibase then
return "no mw.wikibase"
end
return mw.wikibase.getEntityIdForCurrentPage() or "no entity"
end
-- Return the URL of an entity given its entity ID
-- or the item linked to the current page if no argument is provided.
function p.wdurl(frame)
return mw.wikibase.getEntityUrl(frame.args[1] and mw.text.trim(frame.args[1])) -- defaults to entity URL of the item linked to the current page
end
-- Return the label of an entity given its entity ID
-- or the item linked to the current page if no argument is provided.
function p.label(frame)
return mw.wikibase.getLabel(frame.args[1] and mw.text.trim(frame.args[1])) -- defaults to label of the item linked to the current page
end
-- Return the description of an entity given its entity ID
-- or the item linked to the current page if no argument is provided.
function p.description(frame)
return mw.wikibase.getDescription(frame.args[1] and mw.text.trim(frame.args[1])) -- defaults to description of the item linked to the current page
end
-- Return the local title of an item given its entity ID
-- or the item linked to the current page if no argument is provided.
function p.page(frame)
local qid = frame.args[1] and mw.text.trim(frame.args[1])
if not qid or qid == '' then
qid = mw.wikibase.getEntityIdForCurrentPage() -- default the item connected to the current page
end
return mw.wikibase.getSitelink(qid or '') -- requires one string arg
end
-- Return the data type of a property given its entity ID.
function p.datatype(frame)
local prop = mw.wikibase.getEntity(frame.args[1] and mw.text.trim(frame.args[1]):upper():gsub('PROPERTY:P', 'P')) -- trim and remove any "Property:" prefix
return prop and prop.datatype
end
return p
8y9vxlwc9zc3ajhmjw2av1llzhbmbee
Module:Authority control
828
3360
36548
2025-12-15T18:39:15Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require('strict') local function getCatForId( id ) local title = mw.title.getCurrentTitle() local namespace = title.namespace if namespace == 0 then return '[[Category:Λήμματα Βικιπαίδειας με αναγνωριστικά ' .. id .. ']]' elseif namespace == 2 and not title.isSubpage then return '[[Category:Σελίδες χρηστών με αναγνωριστικά ' .. id .. ']]' else...'
36548
Scribunto
text/plain
require('strict')
local function getCatForId( id )
local title = mw.title.getCurrentTitle()
local namespace = title.namespace
if namespace == 0 then
return '[[Category:Λήμματα Βικιπαίδειας με αναγνωριστικά ' .. id .. ']]'
elseif namespace == 2 and not title.isSubpage then
return '[[Category:Σελίδες χρηστών με αναγνωριστικά ' .. id .. ']]'
else
return '[[Category:Διάφορες σελίδες με αναγνωριστικά ' .. id .. ']]'
end
end
local function viafLink( id )
if not string.match( id, '^%d+$' ) then
return false
end
return '[https://viaf.org/viaf/' .. id .. ' ' .. id .. ']' .. getCatForId( 'VIAF' )
end
local function EURLink( id )
return '[http://data.europeana.eu/' .. id .. ' ' .. id .. ']' .. getCatForId( 'Europeana' )
end
local function AAIDLink( id )
return '[https://opac.academyofathens.gr/cgi-bin/koha/opac-authoritiesdetail.pl?authid=' .. id .. ' ' .. id .. ']' .. getCatForId( 'ΑΑID' )
end
local function NLGIDLink( id )
return '[https://catalogue.nlg.gr/cgi-bin/koha/opac-authoritiesdetail.pl?authid=' .. id .. ' ' .. id .. ']' .. getCatForId( 'EBE' )
end
local function BNeditionLink( id )
return '[http://www.biblionet.gr/main.asp?page=showbook&bookid=' .. id .. ' ' .. id .. ']' .. getCatForId( 'BiblioNet' )
end
local function BNpersonLink( id )
return '<strong>[https://biblionet.gr/%CF%80%CF%81%CE%BF%CF%83%CF%89%CF%80%CE%BF/?personid=' .. id .. ' ' .. id .. ']</strong>' .. getCatForId( 'BiblioNet' )
end
local function BNpublisherLink( id )
return '[http://www.biblionet.gr/com/' .. id .. ' ' .. id .. ']'.. getCatForId( 'BiblioNet' )
end
local function kulturnavLink( id )
return '[http://kulturnav.org/language/en/' .. id .. ' id]'
end
local function sikartLink( id )
return '[http://www.sikart.ch/KuenstlerInnen.aspx?id=' .. id .. '&lng=en ' .. id .. ']'
end
local function tlsLink( id )
local id2 = mw.ustring.gsub(id, '%s', function(s) return mw.uri.encode(s, 'WIKI') end)
return '[http://tls.theaterwissenschaft.ch/wiki/' .. id2 .. ' ' .. id .. ']'
end
local function ciniiLink( id )
return '[http://ci.nii.ac.jp/author/' .. id .. '?l=en ' .. id .. ']'
end
local function bneLink( id )
return '[https://datos.bne.es/entidad/' .. id .. '.html ' .. id .. ']'
end
local function uscongressLink( id )
return '[http://bioguide.congress.gov/scripts/biodisplay.pl?index=' .. id .. ' ' .. id .. ']'
end
local function narapersonLink( id )
return '[http://research.archives.gov/person/' .. id .. ' ' .. id .. ']'
end
local function naraorganizationLink( id )
return '[http://research.archives.gov/organization/' .. id .. ' ' .. id .. ']'
end
local function botanistLink( id )
local id2 = mw.ustring.gsub(id, '%s', function(s) return mw.uri.encode(s, 'PATH') end)
return '[http://www.ipni.org/ipni/advAuthorSearch.do?find_abbreviation=' .. id2 .. ' ' .. id .. ']'
end
local function mgpLink( id )
-- TODO Implement some sanity checking regex
return '[http://www.genealogy.ams.org/id.php?id=' .. id .. ' ' .. id .. ']'
end
local function rslLink( id )
-- TODO Implement some sanity checking regex
return '[http://aleph.rsl.ru/F?func=find-b&find_code=SYS&adjacent=Y&local_base=RSL11&request=' .. id .. '&CON_LNG=ENG ' .. id .. ']'
end
local function leonoreLink( id )
if not string.match( id, '^%d+$' ) then
return false
end
return '[https://www.leonore.archives-nationales.culture.gouv.fr/ui/notice/' .. id .. ' ' .. id .. ']'
end
local function sbnLink( id )
if not string.match( id, '^%u%u[%d%u]%u%d%d%d%d%d%d$' ) then
return false
end
return '[https://opac.sbn.it/nome/' .. id .. ' ' .. id .. ']'
end
local function nkcLink( id )
return '[http://aleph.nkp.cz/F/?func=find-c&local_base=aut&ccl_term=ica=' .. id .. '&CON_LNG=ENG ' .. id .. ']'
end
local function nclLink( id )
if not string.match( id, '^%d+$' ) then
return false
end
return '[http://aleweb.ncl.edu.tw/F/?func=accref&acc_sequence=' .. id .. '&CON_LNG=ENG ' .. id .. ']'
end
local function ndlLink( id )
return '[http://id.ndl.go.jp/auth/ndlna/' .. id .. ' ' .. id .. ']'
end
local function sudocLink( id )
if not string.match( id, '^%d%d%d%d%d%d%d%d[%dxX]$' ) then
return false
end
return '[http://www.idref.fr/' .. id .. ' ' .. id .. ']'
end
local function hlsLink( id )
if not string.match( id, '^%d+$' ) then
return false
end
return '[http://www.hls-dhs-dss.ch/textes/f/F' .. id .. '.php ' .. id .. ']'
end
local function lirLink( id )
if not string.match( id, '^%d+$' ) then
return false
end
return '[http://www.e-lir.ch/e-LIR___Lexicon.' .. id .. '.450.0.html ' .. id .. ']'
end
local function splitLccn( id )
if id:match( '^%l%l?%l?%d%d%d%d%d%d%d%d%d?%d?$' ) then
id = id:gsub( '^(%l+)(%d+)(%d%d%d%d%d%d)$', '%1/%2/%3' )
end
if id:match( '^%l%l?%l?/%d%d%d?%d?/%d+$' ) then
return mw.text.split( id, '/' )
end
return false
end
local function append(str, c, length)
while str:len() < length do
str = c .. str
end
return str
end
local function lccnLink( id )
local parts = splitLccn( id )
if not parts then
return false
end
local lccnType = parts[1] ~= 'sh' and 'names' or 'subjects'
id = parts[1] .. parts[2] .. append( parts[3], '0', 6 )
return '[http://id.loc.gov/authorities/' .. lccnType .. '/' .. id .. ' ' .. id .. ']' .. getCatForId( 'LCCN' )
end
local function mbLink( id )
-- TODO Implement some sanity checking regex
return '[//musicbrainz.org/artist/' .. id .. ' ' .. id .. ']' .. getCatForId( 'MusicBrainz' )
end
--Returns the ISNI check digit isni must be a string where the 15 first elements are digits
local function getIsniCheckDigit( isni )
local total = 0
for i = 1, 15 do
local digit = isni:byte( i ) - 48 --Get integer value
total = (total + digit) * 2
end
local remainder = total % 11
local result = (12 - remainder) % 11
if result == 10 then
return "X"
end
return tostring( result )
end
--Validate ISNI (and ORCID) and retuns it as a 16 characters string or returns false if it's invalid
--See http://support.orcid.org/knowledgebase/articles/116780-structure-of-the-orcid-identifier
local function validateIsni( id )
id = id:gsub( '[ %-]', '' ):upper()
if not id:match( '^%d%d%d%d%d%d%d%d%d%d%d%d%d%d%d[%dX]$' ) then
return false
end
if getIsniCheckDigit( id ) ~= string.char( id:byte( 16 ) ) then
return false
end
return id
end
local function isniLink( id )
id = validateIsni( id )
if not id then
return false
end
return '[http://isni.org/' .. id .. ' ' .. id:sub( 1, 4 ) .. ' ' .. id:sub( 5, 8 ) .. ' ' .. id:sub( 9, 12 ) .. ' ' .. id:sub( 13, 16 ) .. ']' .. getCatForId( 'ISNI' )
end
local function orcidLink( id )
id = validateIsni( id )
if not id then
return false
end
id = id:sub( 1, 4 ) .. '-' .. id:sub( 5, 8 ) .. '-' .. id:sub( 9, 12 ) .. '-' .. id:sub( 13, 16 )
return '[http://orcid.org/' .. id .. ' ' .. id .. ']' .. getCatForId( 'ORCID' )
end
local function gndLink( id )
return '[http://d-nb.info/gnd/' .. id .. ' ' .. id .. ']' .. getCatForId( 'GND' )
end
local function selibrLink( id )
if not string.match( id, '^%d+$' ) then
return false
end
return '[//libris.kb.se/auth/' .. id .. ' ' .. id .. ']' .. getCatForId( 'SELIBR' )
end
local function bnfLink( id )
--Add cb prefix if it has been removed
if not string.match( id, '^cb.+$' ) then
id = 'cb' .. id
end
return '[http://catalogue.bnf.fr/ark:/12148/' .. id .. ' ' .. id .. '] [http://data.bnf.fr/ark:/12148/' .. id .. ' (data)]' .. getCatForId( 'BNF' )
end
local function bpnLink( id )
if not string.match( id, '^%d+$' ) then
return false
end
return '[http://www.biografischportaal.nl/en/persoon/' .. id .. ' ' .. id .. ']' .. getCatForId( 'BPN' )
end
local function ridLink( id )
return '[http://www.researcherid.com/rid/' .. id .. ' ' .. id .. ']' .. getCatForId( 'RID' )
end
local function bibsysLink( id )
return '[https://authority.bibsys.no/authority/rest/authorities/html/' .. id .. ' ' .. id .. ']' .. getCatForId( 'BIBSYS' )
end
local function ulanLink( id )
return '[//www.getty.edu/vow/ULANFullDisplay?find=&role=&nation=&subjectid=' .. id .. ' ' .. id .. ']' .. getCatForId( 'ULAN' )
end
local function nlaLink( id )
return '[//nla.gov.au/anbd.aut-an' .. id .. ' ' .. id .. ']' .. getCatForId( 'NLA' )
end
local function rkdartistsLink( id )
return '[https://rkd.nl/en/explore/artists/' .. id .. ' ' .. id .. ']' .. getCatForId( 'RKDartists' )
end
local function worldCatEntitiesLink(id)
return '[https://entities.oclc.org/worldcat/entity/' .. id .. '.html ' .. id .. ']' .. getCatForId('WorldCat')
end
local function getIdsFromWikidata( item, property )
local ids = {}
if not item.claims[property] then
return ids
end
for _, statement in pairs( item.claims[property] ) do
if statement.mainsnak.datavalue then
table.insert( ids, statement.mainsnak.datavalue.value )
end
end
return ids
end
local function matchesWikidataRequirements( item, reqs )
for _, group in pairs( reqs ) do
local property = 'p' .. group[1]
local qid = group[2]
if item.claims[property] ~= nil then
for _, statement in pairs ( item.claims[property] ) do
if statement.mainsnak.datavalue ~= nil then
if statement.mainsnak.datavalue.value['numeric-id'] == qid then
return true
end
end
end
end
end
return false
end
local function createRow( id, label, rawValue, link, withUid )
if link then
if withUid then
return '* ' .. label .. ' <span class="uid">' .. link .. '</span>\n'
else
return '* ' .. label .. ' ' .. link .. '\n'
end
else
return '* <span class="error">The ' .. id .. ' id ' .. rawValue .. ' is not valid.</span>[[Category:Wikipedia articles with faulty authority control identifiers (' .. id .. ')]]\n'
end
end
--In this order: name of the parameter, label, propertyId in Wikidata, formatting function
local conf = {
{ 'WorldCat', '<strong>[[WorldCat]]</strong>', 10832, worldCatEntitiesLink },
{ 'VIAF', '<strong>[[Virtual International Authority File|VIAF]]</strong>', 214, viafLink },
{ 'EUR', '<strong>[[Europeana]]</strong>', 7704, EURLink },
{ 'NLG', '<strong>[[Εθνική Βιβλιοθήκη της Ελλάδος|ΕΒΕ]]</strong>', 3348, NLGIDLink },
{ 'AAID', '<strong>[[Βιβλιοθήκη της Ακαδημίας Αθηνών|AA]]</strong>', 10141, AAIDLink },
{ 'BNed', '<strong>[[BiblioNet]]</strong>', 2187, BNeditionLink },
{ 'BNper', '<strong>[[BiblioNet]]</strong>', 2188, BNpersonLink },
{ 'BNpub', '<strong>[[BiblioNet]]</strong>', 2189, BNpublisherLink },
{ 'LCCN', '<strong>[[Library of Congress Control Number|LCCN]]</strong>', 244, lccnLink },
{ 'ISNI', '<strong>[[International Standard Name Identifier|ISNI]]</strong>', 213, isniLink },
{ 'ORCID', '<strong>[[ORCID]]</strong>', 496, orcidLink },
{ 'GND', '<strong>[[Integrated Authority File|GND]]</strong>', 227, gndLink },
{ 'SELIBR', '<strong>[[LIBRIS|SELIBR]]</strong>', 906, selibrLink },
{ 'SUDOC', '<strong>[[Système universitaire de documentation|SUDOC]]</strong>', 269, sudocLink },
{ 'BNF', '<strong>[[Bibliothèque nationale de France|BNF]]</strong>', 268, bnfLink },
{ 'BPN', '<strong>[[Biografisch Portaal|BPN]]</strong>', 651, bpnLink },
{ 'RID', '<strong>[[ResearcherID]]</strong>', 1053, ridLink },
{ 'BIBSYS', '<strong>[[BIBSYS]]</strong>', 1015, bibsysLink },
{ 'ULAN', '<strong>[[Union List of Artist Names|ULAN]]</strong>', 245, ulanLink },
{ 'HDS', '<strong>[[Historical Dictionary of Switzerland|HDS]]</strong>', 902, hlsLink },
{ 'LIR', '<strong>[[Historical Dictionary of Switzerland#Lexicon_Istoric_Retic|LIR]]</strong>', 886, lirLink },
{ 'MBA', '<strong>[[MusicBrainz]]</strong>', 434, mbLink },
{ 'MGP', '<strong>[[Mathematics Genealogy Project|MGP]]</strong>', 549, mgpLink },
{ 'NLA', '<strong>[[Εθνική Βιβλιοθήκη της Αυστραλίας|NLA]]</strong>', 409, nlaLink },
{ 'NDL', '<strong>[[National Diet Library|NDL]]</strong>', 349, ndlLink },
{ 'NCL', '<strong>[[Εθνική Κεντρική Βιβλιοθήκη|NCL]]</strong>', 1048, nclLink },
{ 'NKC', '<strong>[[National Library of the Czech Republic|NKC]]</strong>', 691, nkcLink },
{ 'Léonore', '<strong>[[Βάση δεδομένων Léonore|Léonore]]</strong>', 11152, leonoreLink },
{ 'SBN', '<strong>[[Istituto Centrale per il Catalogo Unico|ICCU]]</strong>', 396, sbnLink },
{ 'RLS', '<strong>[[Ρωσική Κρατική Βιβλιοθήκη|ΡΚΒ]]</strong>', 947, rslLink },
{ 'Botanist', '<strong>[[Author citation (botany)|Botanist]]</strong>', 428, botanistLink },
{ 'NARA-person', '<strong>[[National Archives and Records Administration|NARA]]</strong>', 1222, narapersonLink },
{ 'NARA-organization', '<strong>[[National Archives and Records Administration|NARA]]</strong>', 1223, naraorganizationLink },
{ 'USCongress', '<strong>[[Βιογραφικός Κατάλογος του Κογκρέσου των Ηνωμένων Πολιτειών|US Congress]]</strong>', 1157, uscongressLink },
{ 'BNE', '<strong>[[Εθνική Βιβλιοθήκη της Ισπανίας|BNE]]</strong>', 950, bneLink },
{ 'CINII', '<strong>[[CiNii]]</strong>', 271, ciniiLink },
{ 'TLS', '<strong>[[Theaterlexikon der Schweiz|TLS]]</strong>', 1362, tlsLink },
{ 'SIKART', '<strong>[[SIKART]]</strong>', 781, sikartLink },
{ 'KULTURNAV', '<strong>[[KulturNav]]</strong>', 1248, kulturnavLink },
{ 'RKDartists', '<strong>[[Ολλανδικό Ινστιτούτο Ιστορίας της Τέχνης|RKD]]</strong>', 650, rkdartistsLink },
}
-- Check that the Wikidata item has this property-->value before adding it
local reqs = {}
local p = {}
function p.authorityControl( frame )
local parentArgs = {}
--Create rows
local elements = {}
--Wikidata fallback if requested
local item = mw.wikibase.getEntityObject()
if item ~= nil and item.claims ~= nil then
for _, params in pairs( conf ) do
if params[3] ~= 0 then
local val = parentArgs[params[1]]
if not val or val == '' then
local canUseWikidata = nil
if reqs[params[1]] ~= nil then
canUseWikidata = matchesWikidataRequirements( item, reqs[params[1]] )
else
canUseWikidata = true
end
if canUseWikidata then
local wikidataIds = getIdsFromWikidata( item, 'P' .. params[3] )
if wikidataIds[1] then
parentArgs[params[1]] = wikidataIds[1]
end
end
end
end
end
end
--Configured rows
local rct = 0
for k, params in pairs( conf ) do
local val = parentArgs[params[1]]
if val and val ~= '' then
table.insert( elements, createRow( params[1], params[2] .. ':', val, params[4]( val ), true ) )
rct = rct + 1
end
end
local Navbox = require('Module:Navbox')
local elementscats = ''
if rct > 13 then
elementscats = '[[Category:AC με ' .. rct .. ' στοιχεία]]'
end
if #elements ~= 0 then
return Navbox._navbox( {
name = 'Authority control',
bodyclass = 'hlist',
group1 = '[[Κατάλογος καθιερωμένων όρων|Καθιερωμένοι όροι]]' .. elementscats,
list1 = table.concat( elements )
} )
else
return ""
end
end
return p
j95gxhpwazwudq1b3rvf1mw92fwukuf
Πρότυπον:Authority control
10
3361
36549
2025-12-15T18:40:34Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:Authority control|authorityControl}}<noinclude>{{Documentation}}</noinclude>'
36549
wikitext
text/x-wiki
{{#invoke:Authority control|authorityControl}}<noinclude>{{Documentation}}</noinclude>
isthlbrkfx9ym5x8bt3z1q64h2szw74
Module:Navbox/configuration
828
3362
36550
2025-12-15T18:41:51Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { aria_label = 'Navbox', nowrap_item = '%s<span class="nowrap">%s</span>', templatestyles = mw.getCurrentFrame():extensionTag{ name = 'templatestyles', args = { src = 'Module:Navbox/styles.css' } }, hlist_templatestyles = 'Hlist/styles.css', plainlist_templatestyles = 'Plainlist/styles.css', -- do not localize marker table marker = { oddeven = '\127_ODDEVEN_\127', restart = '\127_ODDEVEN0_\127', regex = '\127_ODDEVEN(%d?)_\12...'
36550
Scribunto
text/plain
return {
aria_label = 'Navbox',
nowrap_item = '%s<span class="nowrap">%s</span>',
templatestyles = mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Module:Navbox/styles.css' }
},
hlist_templatestyles = 'Hlist/styles.css',
plainlist_templatestyles = 'Plainlist/styles.css',
-- do not localize marker table
marker = {
oddeven = '\127_ODDEVEN_\127',
restart = '\127_ODDEVEN0_\127',
regex = '\127_ODDEVEN(%d?)_\127'
},
category = {
orphan = '[[Category:Navbox orphans]]',
horizontal_lists = 'Navigational boxes without horizontal lists',
background_colors = 'Navboxes using background colours',
illegible = 'Potentially illegible navboxes',
borders = 'Navboxes using borders',
},
keyword = {
border_subgroup = 'subgroup',
border_child = 'child',
border_none = 'none',
evenodd_swap = 'swap',
navbar_off = 'off',
navbar_plain = 'plain',
nocat_false = 'false',
nowrapitems_yes = 'yes',
orphan_yes = 'yes',
state_collapsed = 'collapsed',
state_off = 'off',
state_plain = 'plain',
subgroups = {'subgroup', 'child', ''},
subpage_doc = 'doc',
subpage_sandbox = 'sandbox',
subpage_testcases = 'testcases',
tracking_no = 'no'
},
class = {
autocollapse = 'autocollapse',
collapsible = 'mw-collapsible',
collapsed = 'mw-collapsed',
-- Warning
navbox = 'navbox', -- WMF currently hides 'navbox' from mobile,
-- so you probably shouldn't change the navbox class.
navbox_abovebelow = 'navbox-abovebelow',
navbox_group = 'navbox-group',
navbox_image = 'navbox-image',
navbox_inner = 'navbox-inner',
navbox_list = 'navbox-list',
navbox_list_with_group = 'navbox-list-with-group',
navbox_part = 'navbox-', -- do not l10n
navbox_styles = 'navbox-styles',
navbox_subgroup = 'navbox-subgroup',
navbox_title = 'navbox-title', -- l10n only if you change pattern.navbox_title below
navbox_odd_part = 'odd', -- do not l10n
navbox_even_part = 'even', -- do not l10n
nomobile = 'nomobile',
nowraplinks = 'nowraplinks',
noviewer = 'noviewer' -- used to remove images from MediaViewer
},
pattern = {
listnum = '^list(%d+)$',
class = 'class',
sandbox = '/sandbox$',
navbox = 'Template:Navbox',
nowrap = '^<span class="nowrap">',
style = 'style$',
navbox_title = '<th[^>]*"navbox%-title"',
hlist = 'hlist',
plainlist = 'plainlist',
},
arg = {
above = 'above',
aboveclass = 'aboveclass',
abovestyle = 'abovestyle',
basestyle = 'basestyle',
bodyclass = 'bodyclass',
bodystyle = 'bodystyle',
border = 'border',
below = 'below',
belowclass = 'belowclass',
belowstyle = 'belowstyle',
evenodd = 'evenodd',
evenstyle = 'evenstyle',
group1 = 'group1',
group2 = 'group2',
group_and_num = 'group%d',
groupstyle_and_num = 'group%dstyle',
groupclass = 'groupclass',
groupstyle = 'groupstyle',
groupwidth = 'groupwidth',
innerstyle = 'innerstyle',
image = 'image',
imageclass = 'imageclass',
imageleft = 'imageleft',
imageleftstyle = 'imageleftstyle',
imagestyle = 'imagestyle',
list_and_num = 'list%d',
listclass_and_num = 'list%dclass',
liststyle_and_num = 'list%dstyle',
list1padding = 'list1padding',
listclass = 'listclass',
listpadding = 'listpadding',
liststyle = 'liststyle',
name = 'name',
navbar = 'navbar',
navboxclass = 'navboxclass',
nocat = 'nocat',
nowrapitems = 'nowrapitems',
oddstyle = 'oddstyle',
orphan = 'orphan',
state = 'state',
style = 'style',
templatestyles = 'templatestyles',
child_templatestyles = 'child templatestyles',
title = 'title',
titleclass = 'titleclass',
titlestyle = 'titlestyle',
tracking = 'tracking'
},
-- names of navbar arguments
navbar = {
name = 1,
fontstyle = 'fontstyle',
mini = 'mini'
}
}
6q6d0bhb0etao102qsgcjuaeigpugtk
Module:Navbox top and bottom
828
3363
36551
2025-12-15T18:42:38Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This implements {{navbox top}} and {{navbox bottom}} local p = {} local function build_navbox(parentArgs, list) local args = {} for argName, value in pairs(parentArgs) do if value ~= '' then if type(argName) == 'string' then args[argName] = value end end end args['bodystyle'] = 'display:table;' .. (args['bodystyle'] or '') args['list1padding'] = '0' args['list1style']...'
36551
Scribunto
text/plain
-- This implements {{navbox top}} and {{navbox bottom}}
local p = {}
local function build_navbox(parentArgs, list)
local args = {}
for argName, value in pairs(parentArgs) do
if value ~= '' then
if type(argName) == 'string' then
args[argName] = value
end
end
end
args['bodystyle'] = 'display:table;' .. (args['bodystyle'] or '')
args['list1padding'] = '0'
args['list1style'] = 'border-width:0;'
args['list1'] = list
-- Note Navbox.navbox() has a kludge to order the parent frame's args
-- into a specific order. For now, this is omitted from this module.
local Navbox = require('Module:Navbox')
return Navbox._navbox(args)
end
function p.top(frame)
local args = frame:getParent().args
local parts = mw.text.split(build_navbox(args, '<ADD LIST HERE>'), '<ADD LIST HERE>')
return parts[1]
end
function p.bottom(frame)
local args = frame:getParent().args
local parts = mw.text.split(build_navbox(args, '<ADD LIST HERE>'), '<ADD LIST HERE>')
return parts[2]
end
return p
k4u6pww6woolztix1exofx2t2yk7vf6
Module:Navbox/styles.css
828
3364
36552
2025-12-15T18:43:32Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '/* {{pp|small=y}} */ .navbox { box-sizing: border-box; border: 1px solid #a2a9b1; width: 100%; clear: both; font-size: 88%; text-align: center; padding: 1px; margin: 1em auto 0; /* Prevent preceding content from clinging to navboxes */ } .navbox .navbox { margin-top: 0; /* No top margin for nested navboxes */ } .navbox + .navbox, /* TODO: remove first line after transclusions have updated */ .navbox + .navbox-styles + .navbox { margin-t...'
36552
sanitized-css
text/css
/* {{pp|small=y}} */
.navbox {
box-sizing: border-box;
border: 1px solid #a2a9b1;
width: 100%;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
margin: 1em auto 0; /* Prevent preceding content from clinging to navboxes */
}
.navbox .navbox {
margin-top: 0; /* No top margin for nested navboxes */
}
.navbox + .navbox, /* TODO: remove first line after transclusions have updated */
.navbox + .navbox-styles + .navbox {
margin-top: -1px; /* Single pixel border between adjacent navboxes */
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox-group,
.navbox-title,
.navbox-abovebelow {
padding: 0.25em 1em;
line-height: 1.5em;
text-align: center;
}
.navbox-group {
white-space: nowrap;
/* @noflip */
text-align: right;
}
.navbox,
.navbox-subgroup {
background-color: #fdfdfd;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
}
.navbox-list-with-group {
text-align: left;
border-left-width: 2px;
border-left-style: solid;
}
/* cell spacing for navbox cells */
/* Borders above 2nd, 3rd, etc. rows */
/* TODO: figure out how to replace tr as structure;
* with div structure it should be just a matter of first-child */
tr + tr > .navbox-abovebelow,
tr + tr > .navbox-group,
tr + tr > .navbox-image,
tr + tr > .navbox-list {
border-top: 2px solid #fdfdfd; /* Must match background color */
}
.navbox-title {
background-color: #ccf; /* Level 1 color */
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
background-color: #ddf; /* Level 2 color */
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
background-color: #e6e6ff; /* Level 3 color */
}
.navbox-even {
background-color: #f7f7f7;
}
.navbox-odd {
background-color: transparent;
}
/* TODO: figure out how to remove reliance on td as structure */
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
padding: 0.125em 0;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
/** T367463 */
body.skin--responsive .navbox-image img {
max-width: none !important;
}
@media print {
body.ns-0 .navbox {
display: none !important;
}
}
fg3ep7u2ikj39r86m5x2aj17kpqgies
Module:Navbox
828
3365
36553
2025-12-15T18:44:57Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require('strict') local p = {} local cfg = mw.loadData('Module:Navbox/configuration') local inArray = require("Module:TableTools").inArray local getArgs -- lazily initialized local format = string.format function p._navbox(args) local function striped(wikitext, border) -- Return wikitext with markers replaced for odd/even striping. -- Child (subgroup) navboxes are flagged with a category that is removed -- by parent navboxes. The result is...'
36553
Scribunto
text/plain
require('strict')
local p = {}
local cfg = mw.loadData('Module:Navbox/configuration')
local inArray = require("Module:TableTools").inArray
local getArgs -- lazily initialized
local format = string.format
function p._navbox(args)
local function striped(wikitext, border)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = cfg.category.orphan
if border == cfg.keyword.border_subgroup and args[cfg.arg.orphan] ~= cfg.keyword.orphan_yes then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = cfg.class.navbox_odd_part, cfg.class.navbox_even_part
if args[cfg.arg.evenodd] then
if args[cfg.arg.evenodd] == cfg.keyword.evenodd_swap then
first, second = second, first
else
first = args[cfg.arg.evenodd]
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(cfg.marker.regex, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == cfg.keyword.nowrapitems_yes then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match(cfg.pattern.nowrap) then
line = format(cfg.nowrap_item, prefix, content)
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function has_navbar()
return args[cfg.arg.navbar] ~= cfg.keyword.navbar_off
and args[cfg.arg.navbar] ~= cfg.keyword.navbar_plain
and (
args[cfg.arg.name]
or mw.getCurrentFrame():getParent():getTitle():gsub(cfg.pattern.sandbox, '')
~= cfg.pattern.navbox
)
end
-- extract text color from css, which is the only permitted inline CSS for the navbar
local function extract_color(css_str)
-- return nil because navbar takes its argument into mw.html which handles
-- nil gracefully, removing the associated style attribute
return mw.ustring.match(';' .. css_str .. ';', '.*;%s*([Cc][Oo][Ll][Oo][Rr]%s*:%s*.-)%s*;') or nil
end
local function renderNavBar(titleCell)
if has_navbar() then
local navbar = require('Module:Navbar')._navbar
titleCell:wikitext(navbar{
[cfg.navbar.name] = args[cfg.arg.name],
[cfg.navbar.mini] = 1,
[cfg.navbar.fontstyle] = extract_color(
(args[cfg.arg.basestyle] or '') .. ';' .. (args[cfg.arg.titlestyle] or '')
)
})
end
end
local function renderTitleRow(tbl)
if not args[cfg.arg.title] then return end
local titleRow = tbl:tag('tr')
local titleCell = titleRow:tag('th'):attr('scope', 'col')
local titleColspan = 2
if args[cfg.arg.imageleft] then titleColspan = titleColspan + 1 end
if args[cfg.arg.image] then titleColspan = titleColspan + 1 end
titleCell
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.titlestyle])
:addClass(cfg.class.navbox_title)
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args[cfg.arg.title]))
:addClass(args[cfg.arg.titleclass])
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args[cfg.arg.title]))
end
local function getAboveBelowColspan()
local ret = 2
if args[cfg.arg.imageleft] then ret = ret + 1 end
if args[cfg.arg.image] then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args[cfg.arg.above] then return end
tbl:tag('tr')
:tag('td')
:addClass(cfg.class.navbox_abovebelow)
:addClass(args[cfg.arg.aboveclass])
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.abovestyle])
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', (not args[cfg.arg.title]) and mw.uri.anchorEncode(args[cfg.arg.above]) or nil)
:wikitext(processItem(args[cfg.arg.above], args[cfg.arg.nowrapitems]))
end
local function renderBelowRow(tbl)
if not args[cfg.arg.below] then return end
tbl:tag('tr')
:tag('td')
:addClass(cfg.class.navbox_abovebelow)
:addClass(args[cfg.arg.belowclass])
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.belowstyle])
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args[cfg.arg.below], args[cfg.arg.nowrapitems]))
end
local function renderListRow(tbl, index, listnum, listnums_size)
local row = tbl:tag('tr')
if index == 1 and args[cfg.arg.imageleft] then
row
:tag('td')
:addClass(cfg.class.noviewer)
:addClass(cfg.class.navbox_image)
:addClass(args[cfg.arg.imageclass])
:css('width', '1px') -- Minimize width
:css('padding', '0 2px 0 0')
:cssText(args[cfg.arg.imageleftstyle])
:attr('rowspan', listnums_size)
:tag('div')
:wikitext(processItem(args[cfg.arg.imageleft]))
end
local group_and_num = format(cfg.arg.group_and_num, listnum)
local groupstyle_and_num = format(cfg.arg.groupstyle_and_num, listnum)
if args[group_and_num] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group2]) then
groupCell
:attr('id', mw.uri.anchorEncode(args[cfg.arg.group1]))
end
groupCell
:attr('scope', 'row')
:addClass(cfg.class.navbox_group)
:addClass(args[cfg.arg.groupclass])
:cssText(args[cfg.arg.basestyle])
-- If groupwidth not specified, minimize width
:css('width', args[cfg.arg.groupwidth] or '1%')
groupCell
:cssText(args[cfg.arg.groupstyle])
:cssText(args[groupstyle_and_num])
:wikitext(args[group_and_num])
end
local listCell = row:tag('td')
if args[group_and_num] then
listCell
:addClass(cfg.class.navbox_list_with_group)
else
listCell:attr('colspan', 2)
end
if not args[cfg.arg.groupwidth] then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args[cfg.arg.oddstyle]
else
rowstyle = args[cfg.arg.evenstyle]
end
local list_and_num = format(cfg.arg.list_and_num, listnum)
local listText = args[list_and_num]
if inArray(cfg.keyword.subgroups, listText) then
local childArgs = {
[cfg.arg.border] = cfg.keyword.border_subgroup,
[cfg.arg.navbar] = cfg.keyword.navbar_plain
}
local hasChildArgs = false
for k, v in pairs(args) do
k = tostring(k)
for _, w in ipairs(cfg.keyword.subgroups) do
w = w .. listnum .. "_"
if (#k > #w) and (k:sub(1, #w) == w) then
childArgs[k:sub(#w + 1)] = v
hasChildArgs = true
end
end
end
listText = hasChildArgs and p._navbox(childArgs) or listText
end
local oddEven = cfg.marker.oddeven
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find(cfg.pattern.navbox_title) and cfg.marker.restart or cfg.class.navbox_odd_part
end
local liststyle_and_num = format(cfg.arg.liststyle_and_num, listnum)
local listclass_and_num = format(cfg.arg.listclass_and_num, listnum)
listCell
:css('padding', '0')
:cssText(args[cfg.arg.liststyle])
:cssText(rowstyle)
:cssText(args[liststyle_and_num])
:addClass(cfg.class.navbox_list)
:addClass(cfg.class.navbox_part .. oddEven)
:addClass(args[cfg.arg.listclass])
:addClass(args[listclass_and_num])
:tag('div')
:css('padding',
(index == 1 and args[cfg.arg.list1padding]) or args[cfg.arg.listpadding] or '0 0.25em'
)
:wikitext(processItem(listText, args[cfg.arg.nowrapitems]))
if index == 1 and args[cfg.arg.image] then
row
:tag('td')
:addClass(cfg.class.noviewer)
:addClass(cfg.class.navbox_image)
:addClass(args[cfg.arg.imageclass])
:css('width', '1px') -- Minimize width
:css('padding', '0 0 0 2px')
:cssText(args[cfg.arg.imagestyle])
:attr('rowspan', listnums_size)
:tag('div')
:wikitext(processItem(args[cfg.arg.image]))
end
end
local function has_list_class(htmlclass)
local patterns = {
'^' .. htmlclass .. '$',
'%s' .. htmlclass .. '$',
'^' .. htmlclass .. '%s',
'%s' .. htmlclass .. '%s'
}
for arg, _ in pairs(args) do
if type(arg) == 'string' and mw.ustring.find(arg, cfg.pattern.class) then
for _, pattern in ipairs(patterns) do
if mw.ustring.find(args[arg] or '', pattern) then
return true
end
end
end
end
return false
end
-- there are a lot of list classes in the wild, so we add their TemplateStyles
local function add_list_styles()
local frame = mw.getCurrentFrame()
local function add_list_templatestyles(htmlclass, templatestyles)
if has_list_class(htmlclass) then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
else
return ''
end
end
local hlist_styles = add_list_templatestyles('hlist', cfg.hlist_templatestyles)
local plainlist_styles = add_list_templatestyles('plainlist', cfg.plainlist_templatestyles)
-- a second workaround for [[phab:T303378]]
-- when that issue is fixed, we can actually use has_navbar not to emit the
-- tag here if we want
if has_navbar() and hlist_styles == '' then
hlist_styles = frame:extensionTag{
name = 'templatestyles', args = { src = cfg.hlist_templatestyles }
}
end
-- hlist -> plainlist is best-effort to preserve old Common.css ordering.
-- this ordering is not a guarantee because most navboxes will emit only
-- one of these classes [hlist_note]
return hlist_styles .. plainlist_styles
end
local function needsHorizontalLists(border)
if border == cfg.keyword.border_subgroup or args[cfg.arg.tracking] == cfg.keyword.tracking_no then
return false
end
return not has_list_class(cfg.pattern.hlist) and not has_list_class(cfg.pattern.plainlist)
end
local function hasBackgroundColors()
for _, key in ipairs({cfg.arg.titlestyle, cfg.arg.groupstyle,
cfg.arg.basestyle, cfg.arg.abovestyle, cfg.arg.belowstyle}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
return false
end
local function hasBorders()
for _, key in ipairs({cfg.arg.groupstyle, cfg.arg.basestyle,
cfg.arg.abovestyle, cfg.arg.belowstyle}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
return false
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match(cfg.pattern.style) then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories(border)
local cats = {}
if needsHorizontalLists(border) then table.insert(cats, cfg.category.horizontal_lists) end
if hasBackgroundColors() then table.insert(cats, cfg.category.background_colors) end
if isIllegible() then table.insert(cats, cfg.category.illegible) end
if hasBorders() then table.insert(cats, cfg.category.borders) end
return cats
end
local function renderTrackingCategories(builder, border)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == cfg.keyword.subpage_doc or subpage == cfg.keyword.subpage_sandbox
or subpage == cfg.keyword.subpage_testcases then return end
for _, cat in ipairs(getTrackingCategories(border)) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
local function renderMainTable(border, listnums)
local tbl = mw.html.create('table')
:addClass(cfg.class.nowraplinks)
:addClass(args[cfg.arg.bodyclass])
local state = args[cfg.arg.state]
if args[cfg.arg.title] and state ~= cfg.keyword.state_plain and state ~= cfg.keyword.state_off then
if state == cfg.keyword.state_collapsed then
state = cfg.class.collapsed
end
tbl
:addClass(cfg.class.collapsible)
:addClass(state or cfg.class.autocollapse)
end
tbl:css('border-spacing', 0)
if border == cfg.keyword.border_subgroup or border == cfg.keyword.border_none then
tbl
:addClass(cfg.class.navbox_subgroup)
:cssText(args[cfg.arg.bodystyle])
:cssText(args[cfg.arg.style])
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass(cfg.class.navbox_inner)
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args[cfg.arg.innerstyle])
renderTitleRow(tbl)
renderAboveRow(tbl)
local listnums_size = #listnums
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum, listnums_size)
end
renderBelowRow(tbl)
return tbl
end
local function add_navbox_styles(hiding_templatestyles)
local frame = mw.getCurrentFrame()
-- This is a lambda so that it doesn't need the frame as a parameter
local function add_user_styles(templatestyles)
if templatestyles and templatestyles ~= '' then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
end
return ''
end
-- get templatestyles. load base from config so that Lua only needs to do
-- the work once of parser tag expansion
local base_templatestyles = cfg.templatestyles
local templatestyles = add_user_styles(args[cfg.arg.templatestyles])
local child_templatestyles = add_user_styles(args[cfg.arg.child_templatestyles])
-- The 'navbox-styles' div exists to wrap the styles to work around T200206
-- more elegantly. Instead of combinatorial rules, this ends up being linear
-- number of CSS rules.
return mw.html.create('div')
:addClass(cfg.class.navbox_styles)
:wikitext(
add_list_styles() .. -- see [hlist_note] applied to 'before base_templatestyles'
base_templatestyles ..
templatestyles ..
child_templatestyles ..
table.concat(hiding_templatestyles)
)
:done()
end
-- work around [[phab:T303378]]
-- for each arg: find all the templatestyles strip markers, insert them into a
-- table. then remove all templatestyles markers from the arg
local function move_hiding_templatestyles(args)
local gfind = string.gfind
local gsub = string.gsub
local templatestyles_markers = {}
local strip_marker_pattern = '(\127[^\127]*UNIQ%-%-templatestyles%-%x+%-QINU[^\127]*\127)'
for k, arg in pairs(args) do
for marker in gfind(arg, strip_marker_pattern) do
table.insert(templatestyles_markers, marker)
end
args[k] = gsub(arg, strip_marker_pattern, '')
end
return templatestyles_markers
end
local hiding_templatestyles = move_hiding_templatestyles(args)
local listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match(cfg.pattern.listnum)
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
local border = mw.text.trim(args[cfg.arg.border] or args[1] or '')
if border == cfg.keyword.border_child then
border = cfg.keyword.border_subgroup
end
-- render the main body of the navbox
local tbl = renderMainTable(border, listnums)
local res = mw.html.create()
-- render the appropriate wrapper for the navbox, based on the border param
if border == cfg.keyword.border_none then
res:node(add_navbox_styles(hiding_templatestyles))
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args[cfg.arg.title] or args[cfg.arg.above] or (args[cfg.arg.group1]
and not args[cfg.arg.group2]) then
nav:attr(
'aria-labelledby',
mw.uri.anchorEncode(
args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group1]
)
)
else
nav:attr('aria-label', cfg.aria_label)
end
elseif border == cfg.keyword.border_subgroup then
-- We assume that this navbox is being rendered in a list cell of a
-- parent navbox, and is therefore inside a div with padding:0em 0.25em.
-- We start with a </div> to avoid the padding being applied, and at the
-- end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
res:node(add_navbox_styles(hiding_templatestyles))
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass(cfg.class.navbox)
:addClass(args[cfg.arg.navboxclass])
:cssText(args[cfg.arg.bodystyle])
:cssText(args[cfg.arg.style])
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args[cfg.arg.title] or args[cfg.arg.above]
or (args[cfg.arg.group1] and not args[cfg.arg.group2]) then
nav:attr(
'aria-labelledby',
mw.uri.anchorEncode(args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group1])
)
else
nav:attr('aria-label', cfg.aria_label)
end
end
if (args[cfg.arg.nocat] or cfg.keyword.nocat_false):lower() == cfg.keyword.nocat_false then
renderTrackingCategories(res, border)
end
return striped(tostring(res), border)
end
function p.navbox(frame)
local function readArgs(args, prefix)
-- Read the arguments in the order they'll be output in, to make references
-- number in the right order.
local _
_ = args[prefix .. cfg.arg.title]
_ = args[prefix .. cfg.arg.above]
-- Limit this to 20 as covering 'most' cases (that's a SWAG) and because
-- iterator approach won't work here
for i = 1, 20 do
_ = args[prefix .. format(cfg.arg.group_and_num, i)]
if inArray(cfg.keyword.subgroups, args[prefix .. format(cfg.arg.list_and_num, i)]) then
for _, v in ipairs(cfg.keyword.subgroups) do
readArgs(args, prefix .. v .. i .. "_")
end
end
end
_ = args[prefix .. cfg.arg.below]
end
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
local args = getArgs(frame, {
wrappers = {
'Template:Navbox','Πρότυπον:Πλαίσιο πλοήγησης'
}
})
readArgs(args, "")
return p._navbox(args)
end
return p
976v5mtyjzw8aizdvn5c1enw203y0ft
Πρότυπον:Hlist/styles.css
10
3366
36554
2025-12-15T18:47:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '/* * hlist styles are defined in core and Minerva and differ in Minerva. The * current definitions here (2023-01-01) are sufficient to override Minerva * without use of the hlist-separated class. The most problematic styles were * related to margin, padding, and the bullet. Check files listed at * [[MediaWiki talk:Common.css/to do#hlist-separated]] */ /* * TODO: When the majority of readership supports it (or some beautiful world * in whic...'
36554
sanitized-css
text/css
/*
* hlist styles are defined in core and Minerva and differ in Minerva. The
* current definitions here (2023-01-01) are sufficient to override Minerva
* without use of the hlist-separated class. The most problematic styles were
* related to margin, padding, and the bullet. Check files listed at
* [[MediaWiki talk:Common.css/to do#hlist-separated]]
*/
/*
* TODO: When the majority of readership supports it (or some beautiful world
* in which grade C support is above the minimum threshold), use :is()
*/
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
padding: 0;
}
/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
/*
* don't trust the note that says margin doesn't work with inline
* removing margin: 0 makes dds have margins again
* We also want to reset margin-right in Minerva
*/
margin: 0;
display: inline;
}
/* Display requested top-level lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
/* Display nested lists inline */
.hlist dl dl,
.hlist dl ol,
.hlist dl ul,
.hlist ol dl,
.hlist ol ol,
.hlist ol ul,
.hlist ul dl,
.hlist ul ol,
.hlist ul ul {
display: inline;
}
/* Hide empty list items */
.hlist .mw-empty-li {
display: none;
}
/* TODO: :not() can maybe be used here to remove the later rule. naive test
* seems to work. more testing needed. like so:
*.hlist dt:not(:last-child)::after {
* content: ": ";
*}
*.hlist dd:not(:last-child)::after,
*.hlist li:not(:last-child)::after {
* content: " · ";
* font-weight: bold;
*}
*/
/* Generate interpuncts */
.hlist dt::after {
content: ": ";
}
.hlist dd::after,
.hlist li::after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child::after,
.hlist dt:last-child::after,
.hlist li:last-child::after {
content: none;
}
/* Add parentheses around nested lists */
.hlist dd dd:first-child::before,
.hlist dd dt:first-child::before,
.hlist dd li:first-child::before,
.hlist dt dd:first-child::before,
.hlist dt dt:first-child::before,
.hlist dt li:first-child::before,
.hlist li dd:first-child::before,
.hlist li dt:first-child::before,
.hlist li li:first-child::before {
content: " (";
font-weight: normal;
}
.hlist dd dd:last-child::after,
.hlist dd dt:last-child::after,
.hlist dd li:last-child::after,
.hlist dt dd:last-child::after,
.hlist dt dt:last-child::after,
.hlist dt li:last-child::after,
.hlist li dd:last-child::after,
.hlist li dt:last-child::after,
.hlist li li:last-child::after {
content: ")";
font-weight: normal;
}
/* Put ordinals in front of ordered list items */
.hlist ol {
counter-reset: listitem;
}
.hlist ol > li {
counter-increment: listitem;
}
.hlist ol > li::before {
content: " " counter(listitem) "\a0";
}
.hlist dd ol > li:first-child::before,
.hlist dt ol > li:first-child::before,
.hlist li ol > li:first-child::before {
content: " (" counter(listitem) "\a0";
}
k88feadhqtt87k5tlkeeh17apsyjbpa
Πρότυπον:Hlist
10
3367
36555
2025-12-15T18:48:14Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{<includeonly>safesubst:</includeonly>#invoke:list|horizontal}}<noinclude> {{documentation}} <!-- Categories go on the /doc subpage, and interwikis go on Wikidata. --> </noinclude>'
36555
wikitext
text/x-wiki
{{<includeonly>safesubst:</includeonly>#invoke:list|horizontal}}<noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
</noinclude>
ihcdy525o8nnmq114czc48dpk6pnojd
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά WorldCat
14
3368
36556
2025-12-15T18:50:09Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} {{κενή κατηγορία}} [[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]'
36556
wikitext
text/x-wiki
{{hiddencat}}
{{κενή κατηγορία}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
r1j6z8dphw4qttuc2b9ddjx8d71nfuo
Πρότυπον:Κενή κατηγορία
10
3369
36559
36558
2025-12-15T18:52:20Z
Εὐθυμένης
2777
36559
wikitext
text/x-wiki
{{#invoke:message box|cmbox
|style = background:#FAF0BE; border:1px solid #aaa; margin: 4px 10%;
|image = [[Αρχείον:Note icon.svg|link=|40px]]
|text = '''Προς Διαχειριστές: Mη διαγράφετε αυτήν την κατηγορία ακόμα και αν είναι κενή!'''<br/> Η κατηγορία αυτή μπορεί να είναι κενή περιστασιακά ή ακόμη και τον περισσότερο καιρό. {{{1|}}}
<includeonly>{{#ifeq: {{lc:{{{nocat|false}}}}}|false|{{Single namespace|category}}|<!-- Category suppressed -->}}<includeonly>[[Κατηγορίαν:Κατηγορίες που δεν διαγράφονται ακόμα και αν είναι κενές|{{PAGENAME}}]]</includeonly>
}}<noinclude>
{{τεκμηρίωση προτύπου}}
</noinclude>
g66m3713ky5g5146vy4phlhs8e4mmim
Πρότυπον:Single namespace
10
3370
36560
2025-12-15T18:53:18Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{{{{1}}} other|{{#if:{{{2|}}}|{{{2}}}}}|{{Incorrect namespace|{{{1}}}}}}}<noinclude> {{Documentation}} </noinclude>'
36560
wikitext
text/x-wiki
{{{{{1}}} other|{{#if:{{{2|}}}|{{{2}}}}}|{{Incorrect namespace|{{{1}}}}}}}<noinclude>
{{Documentation}}
</noinclude>
4y5lg5z8ek0o0h0vbe5tkebme05ee0z
Πρότυπον:Incorrect namespace
10
3371
36561
2025-12-15T18:54:24Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#ifeq:{{NAMESPACE}}|Πρότυπον||{{#ifeq:{{SUBPAGENAME}}|πρόχειρο||{{#ifeq:{{SUBPAGENAME}}|testcases||{{#ifeq:{{FULLPAGENAME}}|Βοήθειαν:Πρόχειρο||</includeonly>{{Mbox | type = content | text = {{Error|Το παραπάνω πρότυπο θα έπρεπε να ενσωματώνεται μόνο στον ονοματοχώρο ''{{{1}}}''.}} }}<includeonly>{{#ifeq:{{lc:{{{nocat|false}}}}}|false| |<!-- Cat...'
36561
wikitext
text/x-wiki
<includeonly>{{#ifeq:{{NAMESPACE}}|Πρότυπον||{{#ifeq:{{SUBPAGENAME}}|πρόχειρο||{{#ifeq:{{SUBPAGENAME}}|testcases||{{#ifeq:{{FULLPAGENAME}}|Βοήθειαν:Πρόχειρο||</includeonly>{{Mbox
| type = content
| text = {{Error|Το παραπάνω πρότυπο θα έπρεπε να ενσωματώνεται μόνο στον ονοματοχώρο ''{{{1}}}''.}}
}}<includeonly>{{#ifeq:{{lc:{{{nocat|false}}}}}|false| |<!-- Category suppressed -->}}}}}}}}}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
h0l9uf5m9z48abx57je2e2mu4u618xa
Πρότυπον:Mbox
10
3372
36562
2025-12-15T18:55:47Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{ {{namespace detect | demospace = {{{demospace|}}} | main = Πλαίσιον μηνύματος | talk = Πλαίσιον μηνύματος | file = Πλαίσιον μηνύματος | category = Πλαίσιον μηνύματος | other = Πλαίσιον μηνύματος }} | type = {{{type|}}} | image = {{{image|}}} | imageright = {{{imageright|}}} | style = {{{style|}}} | textstyle...'
36562
wikitext
text/x-wiki
{{
{{namespace detect
| demospace = {{{demospace|}}}
| main = Πλαίσιον μηνύματος
| talk = Πλαίσιον μηνύματος
| file = Πλαίσιον μηνύματος
| category = Πλαίσιον μηνύματος
| other = Πλαίσιον μηνύματος
}}
| type = {{{type|}}}
| image = {{{image|}}}
| imageright = {{{imageright|}}}
| style = {{{style|}}}
| textstyle = {{{textstyle|}}}
| text = {{{text}}}
| small = {{{small|}}}
| smallimage = {{{smallimage|}}}
| smallimageright = {{{smallimageright|}}}
| smalltext = {{{smalltext|}}}
}}<noinclude>
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{NAMESPACE]]
</noinclude>
mzr55gz26dpvmhjl04gm39kkqaf09r5
Πρότυπον:Namespace detect
10
3373
36563
2025-12-15T18:57:02Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#switch: {{lc: <!--Lower case the result--> <!--If no or empty "demospace" parameter then detect namespace--> {{#if:{{{demospace|}}} | {{{demospace}}} | {{#if:{{{page|}}} | <!--Detect the namespace in the "page" parameter--> {{#ifeq:{{NAMESPACE:{{{page}}} }}|{{TALKSPACE:{{{page}}} }} | talk | {{SUBJECTSPACE:{{{page}}} }} }} | <!--No "demospace" or "page" parameters, so...'
36563
wikitext
text/x-wiki
{{#switch:
{{lc: <!--Lower case the result-->
<!--If no or empty "demospace" parameter then detect namespace-->
{{#if:{{{demospace|}}}
| {{{demospace}}}
| {{#if:{{{page|}}}
| <!--Detect the namespace in the "page" parameter-->
{{#ifeq:{{NAMESPACE:{{{page}}} }}|{{TALKSPACE:{{{page}}} }}
| talk
| {{SUBJECTSPACE:{{{page}}} }}
}}
| <!--No "demospace" or "page" parameters, so detect actual namespace-->
{{#ifeq:{{NAMESPACE}}|{{TALKSPACE}}
| talk
| {{SUBJECTSPACE}}
}}
}}
}}
}}
<!-- Only one of the lines below will be executed -->
<!-- Respecting empty parameters on purpose -->
| main <!--"demospace=main" or {{SUBJECTSPACE}}={{ns:0}}=""-->
| = {{{main| {{{other|}}} }}}
| talk = {{{talk| {{{other|}}} }}}
| user = {{{user| {{{other|}}} }}}
| wikipedia = {{{wikipedia| {{{other|}}} }}}
| file
| image = {{{file| {{{image| {{{other|}}} }}} }}}
| mediawiki = {{{mediawiki| {{{other|}}} }}}
| template = {{{template| {{{other|}}} }}}
| help = {{{help| {{{other|}}} }}}
| category = {{{category| {{{other|}}} }}}
| portal = {{{portal| {{{other|}}} }}}
| book = {{{book| {{{other|}}} }}}
| other
| #default = {{{other|}}} <!--"demospace=other" or a new namespace-->
}}<!--End switch--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
k2auzofayktm0oitr1kmv3dz91ydyp4
Πρότυπον:Πλαίσιον μηνύματος
10
3374
36564
2025-12-15T18:57:59Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:Message box|ombox}}<noinclude>{{Τεκμηρίωση προτύπου}}</noinclude>'
36564
wikitext
text/x-wiki
{{#invoke:Message box|ombox}}<noinclude>{{Τεκμηρίωση προτύπου}}</noinclude>
fh0jvmiiub1jjbm0s4rg0gn2k2knyss
Module:Show Path Items
828
3375
36565
2025-12-15T18:59:36Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local path = require "Module:Wikidata/Chemin" local p = {} local item_rendering_template = "WD Q" local property_rendering_template = "WD P" p.format_list_path_items = function(start, path_str , frame, max) max = tonumber(max) or 10 local path_obj = path.PropertyPath:new(path_str) local res = "" local i = 0 if path_obj.node then local it = path_obj:iterate(start) for elem in it do i = i + 1 if i > max then break end...'
36565
Scribunto
text/plain
local path = require "Module:Wikidata/Chemin"
local p = {}
local item_rendering_template = "WD Q"
local property_rendering_template = "WD P"
p.format_list_path_items = function(start, path_str , frame, max)
max = tonumber(max) or 10
local path_obj = path.PropertyPath:new(path_str)
local res = ""
local i = 0
if path_obj.node then
local it = path_obj:iterate(start)
for elem in it do
i = i + 1
if i > max then
break
end
local template = nil
if elem:has_an_item() then
template = item_rendering_template
elseif elem:has_a_property() then
template = property_rendering_template
end
if template then
res = res .. "* " .. frame:expandTemplate{
title = template,
args = {
[1] = elem:entity_value()
}
} .. "\n"
else
res = res .. "* " .. mw.wikibase.formatValue(elem:snak()) .. "\n"
end
end
if i == max + 1 then
res = res .. "* ...(?)"
end
else
res = res .. "parse error !!!!"
end
return res
end
function table.slice(tbl, first, last, step)
local sliced = {}
for i = first or 1, last or #tbl, step or 1 do
sliced[#sliced+1] = tbl[i]
end
return sliced
end
p.slice = table.slice
local function count_args(table)
local nargs = 0
for num, _ in ipairs(table) do
nargs = num
end
return nargs
end
p.show_path_items = function(frame)
frame = frame:getParent()
local start = frame.args[1]
local bound
local nargs = count_args(frame.args)
if tonumber(frame.args[nargs]) then
max = tonumber(frame.args[nargs])
bound = nargs - 1
else
bound = nargs
end
local slice = table.slice(frame.args, 2, bound)
local path_str = table.concat(slice, "|")
return p.format_list_path_items(start, path_str, frame, max)
end
return p
5r4i5ggi55pygq91tl8vy128zvk1kac
Module:FIFARankingMax
828
3376
36566
2025-12-15T19:01:26Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local i18n = { ["errors"] = { ["entity-not-found"] = "Wikidata entity not found.", ["claims-not-found"] = "Wikidata entity has no claims.", ["property-not-found"] = "", ["unknown-claim-type"] = "Unknown claim type.", ["unknown-entity-type"] = "Unknown entity type.", ["qualifier-not-found"] = "Qualifier not found.", ["site-not-found"] = "Wikimedia project not found.", ["unknown-datetime-format"] = "Unknown datetime fo...'
36566
Scribunto
text/plain
local p = {}
local i18n =
{
["errors"] =
{
["entity-not-found"] = "Wikidata entity not found.",
["claims-not-found"] = "Wikidata entity has no claims.",
["property-not-found"] = "",
["unknown-claim-type"] = "Unknown claim type.",
["unknown-entity-type"] = "Unknown entity type.",
["qualifier-not-found"] = "Qualifier not found.",
["site-not-found"] = "Wikimedia project not found.",
["unknown-datetime-format"] = "Unknown datetime format.",
["ranks-not-found"] = "No ranks found."
},
["months"] =
{
"Ιανουαρίου", "Φεβρουαρίου", "Μαρτίου", "Απριλίου", "Μαΐου", "Ιουνίου", "Ιουλίου", "Αυγούστου", "Σεπτεμβρίου", "Οκτωβρίου", "Νοεμβρίου", "Δεκεμβρίου"
}
}
function p.main(frame)
-- allow us to see all values if debugging - set dbg=true as parameter
dbug = frame.args.dbg or false
-- see if a qid was supplied for arbitrary access; make empty string into nil
local qid = mw.text.trim(frame.args.qid or "")
if qid and (#qid == 0) then qid = nil end
local entity = mw.wikibase.getEntity(qid)
if not entity then return i18n.errors["entity-not-found"] end
if not entity.claims then return i18n.errors["claims-not-found"] end
local props = entity.claims['P1352']
if not props then return i18n.errors["property-not-found"] end
local rank = {}
local timestamp = {}
for k, v in pairs(props) do
if v.qualifiers and v.qualifiers["P585"] and v.qualifiers["P459"] then
if v.qualifiers["P459"][1].datavalue.value.id == "Q180825" then
rank[#rank + 1] = v.mainsnak.datavalue.value.amount
timestamp[#rank] = v.qualifiers["P585"][1].datavalue.value.time
end
end
end
if rank then
local ts = ""
local imax = 0
for i, v in ipairs(timestamp) do
if v > ts then
ts = v
imax = i
end
end
local lastdate = tonumber(ts:sub(10, 11)) .. " " .. i18n.months[tonumber(ts:sub(7, 8))] .. " " .. tonumber(ts:sub(2, 5))
local lastrank = tonumber(rank[imax])
if dbug then
return table.concat(rank, ", ") .. "<br>" .. table.concat(timestamp, ", ") .. "<br>Latest = " .. lastdate .. " rank is " .. lastrank
else
return lastrank .. " (" .. lastdate .. ")"
end
else
return i18n.errors["ranks-not-found"]
end
end
return p
6wraoc6dwgw1iiscri1wdqwwt4raein
Module:ShortDate
828
3377
36567
2025-12-15T19:04:11Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local function Set(list) local set = {} for _, l in ipairs(list) do set[l] = true end return set end -- οι ιδιότητες με τύπο δεδομένων time https://www.wikidata.org/wiki/Category:Properties_with_time-datatype local timeProps = Set{'P569', 'P570', 'P571', 'P574', 'P575', 'P576', 'P577', 'P578', 'P580', 'P582', 'P585', 'P606', 'P619', 'P620', 'P621', 'P622', 'P729', 'P730', 'P...'
36567
Scribunto
text/plain
local p = {}
local function Set(list)
local set = {}
for _, l in ipairs(list) do set[l] = true end
return set
end
-- οι ιδιότητες με τύπο δεδομένων time https://www.wikidata.org/wiki/Category:Properties_with_time-datatype
local timeProps = Set{'P569', 'P570', 'P571', 'P574', 'P575', 'P576', 'P577', 'P578', 'P580', 'P582', 'P585', 'P606', 'P619', 'P620', 'P621', 'P622',
'P729', 'P730', 'P746', 'P813', 'P1191', 'P1249', 'P1317', 'P1319', 'P1326', 'P1619', 'P1636', 'P1734', 'P2031', 'P2032',
'P2285', 'P2310', 'P2311', 'P2669', 'P2754', 'P2913', 'P2960'}
function p.get(frame)
local args = {}
if frame == mw.getCurrentFrame() then
args = frame:getParent().args
for k, v in pairs(frame.args) do
args[k] = v
end
else
args = frame
end
return p._get(args)
end
function p._get(args)
local wd = require('Module:Wikidata')
if not timeProps[args.property] then
return error('Η ιδιότητα ' .. args.property .. ' δεν βρίσκεται στη λίστα αποδεκτών ιδιοτήτων')
end
local claims = wd.getClaims(args)
if not claims then
return nil
end
date = wd.getDate(claims[1])
return date.day .. '/' .. date.month .. '/' .. date.year
end
return p
j5k9cxd9cuhklu5paougnxpfvlr13d1
Module:LocationAndCountry
828
3378
36583
2025-12-15T19:10:02Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- will display a wikidata property representing a location, followed by a comma and the name of the country, both with wikilinks -- the first argument specifies the parameter to be displayed -- the second argument specifies the entity ID -- the third argument specifies a timestamp showing the moment in time for which the country is to be identified -- the fourth argument specifies the maximum number of values to be processed (default 1) -- the fif...'
36583
Scribunto
text/plain
-- will display a wikidata property representing a location, followed by a comma and the name of the country, both with wikilinks
-- the first argument specifies the parameter to be displayed
-- the second argument specifies the entity ID
-- the third argument specifies a timestamp showing the moment in time for which the country is to be identified
-- the fourth argument specifies the maximum number of values to be processed (default 1)
-- the fifth argument specifies the separator to use when displaying multiple values
local getArgs = require('Module:Arguments').getArgs
local wikidata = require('Module:Wikidata')
local StringUtils = require('Module:StringUtils')
local GregorianDate = require('Module:GregorianDate')
local Date = require('Module:Date')
local TableTools = require('Module:TableTools')
local appendToString = StringUtils._appendToString
local emptyToNil = StringUtils._emptyToNil
local ESCALATABLE_LOCATION_ENTITIES = { -- if this is one of the types of the location from Wikidata, then we skip and escalate it to the administrative unit
'Q16917', --hospital
'Q1059324', -- university hospital
'Q702842', --municipal arrondissement (France)
'Q15921300', --sector of Bucharest
}
local ADMIN_UNIT_ATTRACTOR_ENTITIES = { -- if this is one of the types of the location from Wikidata, then we also pull in the administrative unit
'Q532', -- village
'Q659103', -- commune of Romania
}
local p = {}
local function extractGregorianDateFromSnak(snak, hms)
local afterDate = wikidata.extractDateFromClaim(snak)
local afterDateGregorian = GregorianDate.convertToGregorianIfInInterval(afterDate)
afterDateGregorian.hour = hms[1]
afterDateGregorian.min = hms[2]
afterDateGregorian.sec = hms[3]
after = tonumber(mw.language.getContentLanguage():formatDate('U', os.date('%d %B %Y %H:%M:%S', os.time(afterDateGregorian)), nil))
return after
end
local function getShortOrOfficialNameRetrieverClosure(ts)
return function(object)
if not object then return nil end -- just to be safe: this callback should only be called with existing objects
local correspondingShortNameClaim = wikidata.findClaimForTimestamp(object.id, 'P1813', ts)
if correspondingShortNameClaim then return correspondingShortNameClaim.mainsnak.datavalue.value.text end
local correspondingOfficialNameClaim = wikidata.findClaimForTimestamp(object.id, 'P1448', ts)
if ts and correspondingOfficialNameClaim then return correspondingOfficialNameClaim.mainsnak.datavalue.value.text end
end
end
local function getOfficialNameRetrieverClosure(ts)
return function(object)
if not object then return nil end -- just to be safe: this callback should only be called with existing objects
local correspondingOfficialNameClaim = wikidata.findClaimForTimestamp(object.id, 'P1448', ts)
if ts and correspondingOfficialNameClaim then return correspondingOfficialNameClaim.mainsnak.datavalue.value.text end
end
end
local function getShortNameRetrieverClosure(ts)
return function(object)
if not object then return nil end -- just to be safe: this callback should only be called with existing objects
local correspondingShortNameClaim = wikidata.findClaimForTimestamp(object.id, 'P1813', ts)
if correspondingShortNameClaim then return correspondingShortNameClaim.mainsnak.datavalue.value.text end
end
end
local function getAdminUnitForTimestamp(locationId, ts)
local unitClaim = wikidata.findClaimForTimestamp(locationId, 'P131', ts)
if unitClaim and unitClaim.mainsnak and unitClaim.mainsnak.snaktype == 'value' then
return unitClaim.mainsnak.datavalue.value.id
else
local unitId = wikidata.loadOneValueInChain({locationId, 'P131', 'raw'})
if unitId and mw.ustring.len(unitId) > 0 then
return unitId
end
end
return nil
end
p.displayFromParams = function(param, entity, timestamp, maxvalues, separator)
if param == nil then return '' end
local claims = nil
local workingEntityId = nil
if type(entity) == 'table' then
workingEntityId = entity.id
claims = entity:getBestStatements(param)
else
workingEntityId = entity
if not workingEntityId then workingEntityId = mw.wikibase.getEntityIdForCurrentPage() end
if type(entity) == 'number' then workingEntityId = 'Q' .. tostring(entity) end
if workingEntityId == nil then return '' end
claims = mw.wikibase.getBestStatements(workingEntityId, param)
end
local ts = nil
if timestamp then
if type(timestamp) == 'string' and mw.ustring.gmatch(timestamp, 'P%d+') then
local wdDates = wikidata.findDateValues(timestamp, workingEntityId)
if wdDates and 0 < #wdDates then
local wdDateIdx = 1
while wdDateIdx <= #wdDates and (wdDates[wdDateIdx].claim.type ~= 'statement' or wdDates[wdDateIdx].claim.mainsnak.snaktype ~= 'value') do
wdDateIdx = wdDateIdx + 1
end
if wdDateIdx <= #wdDates and (wdDates[wdDateIdx].claim.type == 'statement' and wdDates[wdDateIdx].claim.mainsnak.snaktype == 'value') then
wdDates[wdDateIdx] = GregorianDate.convertToGregorianIfInInterval(wdDates[wdDateIdx])
ts = wdDates[wdDateIdx]
end
end
end
if ts == nil and type(timestamp) == 'string' then
ts = DateUtils.parseYear(timestamp)
elseif ts == nil and type(timestamp) == 'table' and timestamp.year then
ts = timestamp
end
end
local valueList = {}
local valueCount = 0
if claims and 0 < #claims then
for claimIdx, actualClaim in pairs(claims) do
valueCount = valueCount + 1
local locationEntitiesIds = {}
local locationNames = {}
local skipActualLocation = false
if actualClaim.mainsnak and actualClaim.mainsnak.snaktype == 'value' and actualClaim.mainsnak.datavalue.type == 'wikibase-entityid' then
local locationEntityId = actualClaim.mainsnak.datavalue.value.id
local seekAdminUnit
repeat
seekAdminUnit = false
repeat
skipActualLocation = false
--what is this location?
local locationInstanceOfClaims = mw.wikibase.getBestStatements(locationEntityId, 'P31')
if locationInstanceOfClaims then for _,eachInstOfClaim in ipairs(locationInstanceOfClaims) do
if eachInstOfClaim.mainsnak and eachInstOfClaim.mainsnak.snaktype == 'value' and eachInstOfClaim.mainsnak.datavalue.type == 'wikibase-entityid' then
mw.logObject(eachInstOfClaim.mainsnak.datavalue.value.id, '[LocationAndCountry] location is a')
if TableTools.contains(ESCALATABLE_LOCATION_ENTITIES, eachInstOfClaim.mainsnak.datavalue.value.id) then --escalatable?
skipActualLocation = true
end
if TableTools.contains(ADMIN_UNIT_ATTRACTOR_ENTITIES, eachInstOfClaim.mainsnak.datavalue.value.id) then --do we also pull the admin unit?
seekAdminUnit = true
end
end
end end -- end for end if
if skipActualLocation then
locationEntityId = getAdminUnitForTimestamp(locationEntityId, ts)
else
table.insert(locationEntitiesIds, locationEntityId)
locationNames[locationEntityId] = wikidata.findLinkToItemWithCallback(locationEntityId, false, getOfficialNameRetrieverClosure(ts))
end
until not skipActualLocation
--attempt to also load administrative unit, but only if present as a qualifier
local unitQualifier = actualClaim.qualifiers and actualClaim.qualifiers['P131'] and actualClaim.qualifiers['P131'][1]
if unitQualifier and unitQualifier.snaktype == 'value' then
table.insert(locationEntitiesIds, unitQualifier.datavalue.value.id)
locationNames[unitQualifier.datavalue.value.id] = wikidata.findLinkToItemWithCallback(unitQualifier.datavalue.value.id, false, getShortOrOfficialNameRetrieverClosure(ts))
seekAdminUnit = false
end
--... or something happened that we have to look for it
if seekAdminUnit then
local adminUnitId = getAdminUnitForTimestamp(locationEntityId, ts)
if adminUnitId then
table.insert(locationEntitiesIds, adminUnitId)
locationEntityId = adminUnitId
else
seekAdminUnit = false
end
end
until not seekAdminUnit
-- attempt to identify country in the qualifier first, but if it's not, go to the entity
local countryQualifier = actualClaim.qualifiers and actualClaim.qualifiers['P17'] and actualClaim.qualifiers['P17'][1]
local countryId = nil
if countryQualifier and countryQualifier.snaktype == 'value' then
table.insert(locationEntitiesIds, countryQualifier.datavalue.value.id)
locationNames[countryQualifier.datavalue.value.id] = wikidata.findLinkToItemWithCallback(countryQualifier.datavalue.value.id, false, getShortOrOfficialNameRetrieverClosure(ts))
else
local countryClaim = nil
countryClaim = wikidata.findClaimForTimestamp(locationEntityId, 'P17', ts)
if countryClaim and countryClaim.mainsnak and countryClaim.mainsnak.snaktype == 'value' then
countryId = countryClaim.mainsnak.datavalue.value.id
table.insert(locationEntitiesIds, countryId)
elseif not countryClaim then
countryId = wikidata.loadOneValueInChain({locationEntityId, 'P17', 'raw'})
if countryId and mw.ustring.len(countryId) > 0 then
table.insert(locationEntitiesIds, countryId)
end
end
end
locationEntitiesIds = TableTools.removeDuplicates(locationEntitiesIds)
local locationNamesList = {}
for _,eachLocationId in ipairs(locationEntitiesIds) do
if not locationNames[eachLocationId] then
locationNames[eachLocationId] = wikidata.findLinkToItemWithCallback(eachLocationId, false, getShortNameRetrieverClosure(ts))
end
table.insert(locationNamesList, locationNames[eachLocationId])
end
if 0 < #locationNamesList then
table.insert(
valueList,
appendToString({
emptyToNil({table.concat(locationNamesList, ', ')}),
wikidata.outputReferences(actualClaim)
})
)
end
end
end
end
if #valueList == 0 then return '' end
if separator == nil then separator = '; ' end
if maxvalues > #valueList then maxvalues = #valueList end
return table.concat(valueList, separator, 1, maxvalues)
end
p.displayFromArgs = function(args)
local param = nil
local entity = nil
local timestamp = nil
local maxvalues = 1
local separator = '; '
if args[1] or args['param'] then
param = args[1] or args['param']
end
if args[2] or args['entityId'] then
entity = args[2] or args['entityId']
end
if args[3] or args['timestamp'] then
timestamp = args[3] or args['timestamp']
end
if args[4] or args['maxvalues'] then
maxvalues = tonumber(args[4] or args['maxvalues'])
end
if args[5] or args['separator'] then
separator = args[5] or args['separator']
end
return p.displayFromParams(param, entity, timestamp, maxvalues, separator)
end
p.displayFromFrame = function(frame)
local args = getArgs(frame, { frameOnly = true })
return p.displayFromArgs(args)
end
p.displayFromParentFrame = function(frame)
local args = getArgs(frame, { parentOnly = true})
return p.displayFromArgs(args)
end
return p
g28x9rce0fkastyhyabi7lghv5ivxlx
Module:GregorianDate
828
3379
36584
2025-12-15T19:17:08Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local Date = require('Module:Date') local getArgs = require('Module:Arguments').getArgs local data = mw.loadData('Module:GregorianDate/data') local compareDates = function(date1, date2) if date1.year < date2.year then return 1 end if date2.year < date1.year then return -1 end if date1.month < date2.month then return 1 end if date2.month < date1.month then return -1 end if date1.day < date2.day then return 1 end if date2.day <...'
36584
Scribunto
text/plain
local p = {}
local Date = require('Module:Date')
local getArgs = require('Module:Arguments').getArgs
local data = mw.loadData('Module:GregorianDate/data')
local compareDates = function(date1, date2)
if date1.year < date2.year then return 1 end
if date2.year < date1.year then return -1 end
if date1.month < date2.month then return 1 end
if date2.month < date1.month then return -1 end
if date1.day < date2.day then return 1 end
if date2.day < date1.day then return -1 end
return 0
end
local initialOffset = -3
local limitDates = data.limitDates
local julianDateOfGregorianStart = data.julianDateOfGregorianStart
p.julianToGregorian = function(indate)
if indate.calendarmodel ~= 'http://www.wikidata.org/entity/Q1985786' and indate.calendarmodel ~= 'http://www.wikidata.org/entity/Q11184'
and indate.calendar ~= 'julian' then
return indate
end
local offset = initialOffset
local limitDateIdx = 1
while limitDateIdx < data.limitDatesSize and compareDates(limitDates[limitDateIdx], indate) >= 0 do
limitDateIdx = limitDateIdx + 1
offset = offset + 1
end
local outputDate = DateUtils.addDaysToDate(indate, offset)
outputDate.calendar = 'gregorian'
outputDate.calendarmodel = 'http://www.wikidata.org/entity/Q1985727'
return outputDate
end
local function extractDateFromFrame(frame)
local outdate = {}
local frameargs = getArgs(frame)
outdate.year = tonumber(frameargs[1] or frameargs['year'] or 1)
outdate.month = tonumber(frameargs[2] or frameargs['month'] or 1)
outdate.day = tonumber(frameargs[3] or frameargs['day'] or 1)
outdate.precision = 8
if frameargs[1] or frameargs['year'] then
if frameargs[2] or frameargs['month'] then
if frameargs[3] or frameargs['day'] then
outdate.precision = outdate.precision + 1
end
outdate.precision = outdate.precision + 1
end
outdate.precision = outdate.precision + 1
end
outdate.calendar = mw.ustring.lower(mw.text.trim(frameargs['calendar'] or 'gregorian'))
return outdate
end
p.julianToGregorianFromFrame = function(frame)
local indate = extractDateFromFrame(frame)
indate.calendar = 'julian'
return DateUtils.formatDate(p.julianToGregorian(indate))
end
p.convertToGregorianIfInInterval = function(indate)
local outdate = indate
if compareDates(julianDateOfGregorianStart, indate) >= 0 then
outdate = p.julianToGregorian(indate)
end
return outdate
end
p.displayDualDateIfInInterval = function(indate, link, dateFormat)
local outdate = p.convertToGregorianIfInInterval(indate)
local gregoriandate = compareDates(julianDateOfGregorianStart, indate) < 0 and p.julianToGregorian(indate) or outdate
local linkstat = { old = false, new = false }
if (type(link) == 'boolean') and link or link == 'both' or link == 'ambele' then
linkstat.old = true
linkstat.new = true
elseif link == 'old' then
linkstat.old = true
elseif link == 'new' then
linkstat.new = true
end
local fullDate
if outdate.year ~= indate.year then
fullDate = DateUtils.formatDate(indate, linkstat.old, true, dateFormat) .. '/' .. DateUtils.formatDate(outdate, linkstat.new, true, dateFormat)
elseif outdate.month ~= indate.month then
fullDate = DateUtils.formatDate(indate, linkstat.old, true, dateFormat or linkstat.old and '[[j F]]' or 'j F') .. '/' .. DateUtils.formatDate(outdate, linkstat.new, true, dateFormat)
elseif outdate.day ~= indate.day then
fullDate = DateUtils.formatDate(indate, linkstat.old, true, dateFormat or linkstat.old and '[[j F|j]]' or 'j') .. '/' .. DateUtils.formatDate(outdate, linkstat.new, true, dateFormat)
else
fullDate = DateUtils.formatDate(outdate, linkstat.new or linkstat.old, true, dateFormat)
end
return indate.precision >= 11 and DateUtils.surroundWithTimeTag(fullDate, gregoriandate) or fullDate
end
p.displayDualDateIfInIntervalFromFrame = function(frame)
local indate = extractDateFromFrame(frame)
local args = getArgs(frame)
indate.calendar = indate.calendar or (frame.args['julian'] and 'julian' or 'gregorian')
local link = args['link']
local argslink = args['link']
if argslink == 'yes' or argslink == 'y' or argslink == 'da' or argslink == 'true' or argslink == 'd' then link = 'both' end
local dateFormat = args['format'] or args['date_format'] or args['dateFormat']
return p.displayDualDateIfInInterval(indate, link, dateFormat)
end
return p
85sjaex59neqo7zlquswlo6rzuwnupq
Module:GregorianDate/data
828
3380
36585
2025-12-15T19:18:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local limitDates = { {year = 4, month = 3, day = 3, calendar = 'julian' }, {year = 100, month = 3, day = 2, calendar = 'julian' }, {year = 200, month = 3, day = 1, calendar = 'julian' }, {year = 300, month = 2, day = 29, calendar = 'julian' }, {year = 500, month = 2, day = 28, calendar = 'julian' }, {year = 600, month = 2, day = 27, calendar = 'julian' }, {year = 700, month = 2, day = 26, calendar = 'julian' }, {year = 900, month = 2, day =...'
36585
Scribunto
text/plain
local limitDates = {
{year = 4, month = 3, day = 3, calendar = 'julian' },
{year = 100, month = 3, day = 2, calendar = 'julian' },
{year = 200, month = 3, day = 1, calendar = 'julian' },
{year = 300, month = 2, day = 29, calendar = 'julian' },
{year = 500, month = 2, day = 28, calendar = 'julian' },
{year = 600, month = 2, day = 27, calendar = 'julian' },
{year = 700, month = 2, day = 26, calendar = 'julian' },
{year = 900, month = 2, day = 25, calendar = 'julian' },
{year = 1000, month = 2, day = 24, calendar = 'julian' },
{year = 1100, month = 2, day = 23, calendar = 'julian' },
{year = 1300, month = 2, day = 22, calendar = 'julian' },
{year = 1400, month = 2, day = 21, calendar = 'julian' },
{year = 1500, month = 2, day = 20, calendar = 'julian' },
{year = 1700, month = 2, day = 19, calendar = 'julian' },
{year = 1800, month = 2, day = 18, calendar = 'julian' },
{year = 1900, month = 2, day = 17, calendar = 'julian' },
{year = 2100, month = 2, day = 16, calendar = 'julian' },
{year = 2200, month = 2, day = 15, calendar = 'julian' },
{year = 2300, month = 2, day = 14, calendar = 'julian' }
}
return {
limitDates = limitDates,
limitDatesSize = 19,
julianDateOfGregorianStart = {year = 1582, month = 10, day = 5}
}
6b0fg12fpv7bgmmkuutopa6c97430kr
Module:FIFARanking
828
3381
36586
2025-12-15T19:21:02Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local lang = mw.getContentLanguage() local i18n = { ["errors"] = { ["entity-not-found"] = "Wikidata entity not found.", ["claims-not-found"] = "Wikidata entity has no claims.", ["property-not-found"] = "", ["unknown-claim-type"] = "Unknown claim type.", ["unknown-entity-type"] = "Unknown entity type.", ["qualifier-not-found"] = "Qualifier not found.", ["site-not-found"] = "Wikimedia project not found.", ["unknown-date...'
36586
Scribunto
text/plain
local p = {}
local lang = mw.getContentLanguage()
local i18n =
{
["errors"] =
{
["entity-not-found"] = "Wikidata entity not found.",
["claims-not-found"] = "Wikidata entity has no claims.",
["property-not-found"] = "",
["unknown-claim-type"] = "Unknown claim type.",
["unknown-entity-type"] = "Unknown entity type.",
["qualifier-not-found"] = "Qualifier not found.",
["site-not-found"] = "Wikimedia project not found.",
["unknown-datetime-format"] = "Unknown datetime format.",
["ranks-not-found"] = ""
},
}
local function stripToNil(text)
-- If text is a non-empty string, return its trimmed content.
-- Otherwise, return nothing (text is an empty string or is not a string).
if type(text) == 'string' then
return text:match('(%S.-)%s*$')
end
end
-- returns year, month, day from timestamp resembling ISO 8601
-- see member time at https://www.wikidata.org/wiki/Special:ListDatatypes#time
local function _timeToYMD(dateStr)
return dateStr:match('([+-].*)-(.*)-(.*)T')
end
-- Return e.g. "3 Οκτωβρίου 2017" given "+2017-10-03T00:00:00Z" on [elwiki]
local function dateText(timestamp)
return lang:formatDate('j F Y', timestamp)
end
-- Checks whether time string is within given number of seconds
-- see also https://www.wikidata.org/wiki/Special:ListDatatypes#time → [time]
local function _dateIsRecent(dateStr, seconds)
-- match year, month, day fields
local y, m, d = _timeToYMD(dateStr)
-- default 126230400 seconds (4 years) as suggested by
-- https://en.wikipedia.org/wiki/Wikipedia_talk:Lua#Module_help_(2)
local delta = seconds or 126230400
return os.time() - os.time({year = y, month = m, day = d}) < delta
end
local function getRankings(qid)
-- Return table of all rankings or nil if none found.
-- Each entry is a table { RANK, TIMESTAMP } where RANK is a number.
local rankings = {}
local props = mw.wikibase.getBestStatements(qid, 'P1352')
local hasRecentRanking = false
if not props then return nil end
for _, v in pairs(props) do
if v.qualifiers and v.qualifiers["P585"] and v.qualifiers["P459"] then
if v.qualifiers["P459"][1].datavalue.value.id == "Q180825" then
rankings[#rankings + 1] = {
tonumber(v.mainsnak.datavalue.value.amount), -- rank number or nil
v.qualifiers["P585"][1].datavalue.value.time -- timestamp
}
if _dateIsRecent(rankings[#rankings][2]) then
hasRecentRanking = true
end
end
end
end
if hasRecentRanking and next(rankings) then -- if table rank is not empty
return rankings
end
return nil
end
function p.main(frame)
local args = frame.args
-- see if a qid was supplied for arbitrary access
local qid = args.qid
if qid == nil or qid == "" then qid = mw.wikibase.getEntityIdForCurrentPage() end
local rankings = getRankings(qid)
if not rankings then return i18n.errors["ranks-not-found"] end
-- For best and worst, second item should be a table of timestamps.
local rankCurrent = { 0, "" } -- ranking/timestamp of entry with most-recent (largest) timestamp
local rankBest = { 1e6, "" } -- ranking/timestamp of entry with best (smallest) ranking
local rankWorst = { 0, "" } -- ranking/timestamp of entry with worst (largest) ranking
for i, v in ipairs(rankings) do
if v[2] > rankCurrent[2] then
rankCurrent = v
end
if v[1] < rankBest[1] then
rankBest = v
end
if v[1] > rankWorst[1] then
rankWorst = v
end
end
local rankWanted
local want = stripToNil(args[1])
if want == 'max' then
rankWanted = rankBest
elseif want == 'min' then
rankWanted = rankWorst
else
rankWanted = rankCurrent
end
local function text(r)
return r[1] .. " (" .. dateText(r[2]) .. ")"
end
if stripToNil(args.dbg) then -- show all values for debugging if have parameter dbg=anything
local lines = {}
for _, v in ipairs(rankings) do
lines[#lines + 1] = text(v) .. "<br>"
end
return table.concat(lines) .. "Wanted = " .. text(rankWanted)
end
return text(rankWanted)
end
return p
po8j37g3izlbwpbba45luly0t6ssg5d
Module:Dictionnaire Wikidata/Codes langue
828
3382
36587
2025-12-15T19:22:09Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ correspondance élément Wikidata/code langue wikidata en SPARQL : https://w.wiki/4MTp SELECT DISTINCT ?result WHERE { { ?item wdt:P31/wdt:P279* wd:Q34770 . BIND(xsd:integer(SUBSTR(STR(?item), 33)) AS ?id). ?item wdt:P424 ?langue. BIND(CONCAT("[", SUBSTR(STR(?item), 33),"] = '", ?langue, "',") AS ?result). } UNION { ?item wdt:P31/wdt:P279* wd:Q25295 . BIND(xsd:integer(SUBSTR(STR(?item), 33)) AS ?id). ?item...'
36587
Scribunto
text/plain
--[[
correspondance élément Wikidata/code langue wikidata en SPARQL : https://w.wiki/4MTp
SELECT DISTINCT ?result WHERE {
{
?item wdt:P31/wdt:P279* wd:Q34770 .
BIND(xsd:integer(SUBSTR(STR(?item), 33)) AS ?id).
?item wdt:P424 ?langue.
BIND(CONCAT("[", SUBSTR(STR(?item), 33),"] = '", ?langue, "',") AS ?result).
}
UNION
{
?item wdt:P31/wdt:P279* wd:Q25295 .
BIND(xsd:integer(SUBSTR(STR(?item), 33)) AS ?id).
?item wdt:P424 ?langue.
BIND(CONCAT("[", SUBSTR(STR(?item), 33),"] = '", ?langue, "',") AS ?result).
}
}
ORDER BY ASC(?id)
]]--
return {
[143] = 'eo',
[150] = 'fr',
[188] = 'de',
[256] = 'tr',
[294] = 'is',
[397] = 'la',
[652] = 'it',
[809] = 'pl',
[1321] = 'es',
[1412] = 'fi',
[1568] = 'hi',
[1571] = 'mr',
[1617] = 'ur',
[1860] = 'en',
[4627] = 'ay',
[5111] = 'ab',
[5137] = 'gu',
[5146] = 'pt',
[5218] = 'qu',
[5287] = 'ja',
[5885] = 'ta',
[6654] = 'hr',
[7026] = 'ca',
[7411] = 'nl',
[7737] = 'ru',
[7838] = 'sw',
[7850] = 'zh',
[7913] = 'ro',
[7918] = 'bg',
[7930] = 'mg',
[7976] = 'en-us',
[8097] = 'te',
[8108] = 'ka',
[8641] = 'yi',
[8748] = 'sq',
[8752] = 'eu',
[8765] = 'an',
[8773] = 'akl',
[8785] = 'hy',
[8786] = 'gsw-fr',
[8798] = 'uk',
[8821] = 'cnr',
[9027] = 'sv',
[9035] = 'da',
[9043] = 'no',
[9051] = 'lb',
[9056] = 'cs',
[9058] = 'sk',
[9063] = 'sl',
[9067] = 'hu',
[9072] = 'et',
[9078] = 'lv',
[9083] = 'lt',
[9091] = 'be',
[9129] = 'el',
[9142] = 'ga',
[9166] = 'mt',
[9168] = 'fa',
[9176] = 'ko',
[9186] = 'zh-yue',
[9199] = 'vi',
[9205] = 'km',
[9211] = 'lo',
[9217] = 'th',
[9228] = 'my',
[9237] = 'ms',
[9240] = 'id',
[9246] = 'mn',
[9252] = 'kk',
[9255] = 'ky',
[9260] = 'tg',
[9264] = 'uz',
[9267] = 'tk',
[9288] = 'he',
[9292] = 'az',
[9296] = 'mk',
[9299] = 'sr',
[9301] = 'sh',
[9303] = 'bs',
[9307] = 'gl',
[9309] = 'cy',
[9314] = 'gd',
[9610] = 'bn',
[10134] = 'tlh',
[10179] = 'zu',
[10188] = 'zun',
[10199] = 'diq',
[11059] = 'sa',
[12107] = 'br',
[12175] = 'gv',
[13198] = 'rcf',
[13199] = 'rm',
[13201] = 'rmy',
[13216] = 'za',
[13218] = 'xh',
[13238] = 'udm',
[13248] = 'hsb',
[13263] = 'ug',
[13267] = 'si',
[13271] = 'sms',
[13275] = 'so',
[13286] = 'dsb',
[13293] = 'sma',
[13300] = 'nah',
[13307] = 'na',
[13310] = 'nv',
[13321] = 'mic',
[13324] = 'min',
[13330] = 'mwl',
[13343] = 'mdf',
[13349] = 'mnw',
[13351] = 'moe',
[13356] = 'mzn',
[13357] = 'fit',
[13358] = 'ruq',
[13359] = 'xmf',
[13365] = 'mwv',
[13389] = 'ba',
[13955] = 'ar',
[14185] = 'oc',
[14196] = 'af',
[14549] = 'sco',
[14759] = 'ase',
[15085] = 'pms',
[15087] = 'frp',
[18784] = 'ko-kp',
[18795] = 'ko-kr',
[20822] = 'ttm',
[21117] = 'esu',
[22711] = 'pdc',
[23014] = 'pfl',
[25164] = 'nn',
[25167] = 'nb',
[25258] = 'fo',
[25285] = 'tt',
[25289] = 'kw',
[25355] = 'kl',
[25433] = 'nds',
[26245] = 'rue',
[27154] = 'stq',
[27175] = 'fy',
[27183] = 'ik',
[27480] = 'eya',
[27567] = 'abq',
[27683] = 'ace',
[27776] = 'ady',
[27792] = 'tli',
[27811] = 'aa',
[28026] = 'ak',
[28224] = 'frr',
[28244] = 'am',
[28304] = 'koy',
[28378] = 'anp',
[28427] = 'cal',
[28535] = 'clc',
[28602] = 'arc',
[29316] = 'rup',
[29401] = 'as',
[29507] = 'ast',
[29540] = 'bar',
[29561] = 'av',
[29579] = 'awa',
[29919] = 'arz',
[29921] = 'iu',
[29952] = 'myv',
[30005] = 'ee',
[30007] = 'ext',
[30319] = 'szl',
[30898] = 'gil',
[31746] = 'lez',
[32145] = 'ksh',
[32238] = 'dag',
[32332] = 'dar',
[32656] = 'dv',
[32704] = 've',
[32724] = 'vec',
[32747] = 'vep',
[32762] = 'fiu-vro',
[32858] = 'vot',
[32952] = 'ccp',
[32979] = 'cho',
[33000] = 'bfi',
[33013] = 'dua',
[33017] = 'bbc',
[33025] = 'bej',
[33060] = 'bla',
[33070] = 'ban',
[33081] = 'dz',
[33111] = 'co',
[33120] = 'bxr',
[33151] = 'bjn',
[33170] = 'ckt',
[33173] = 'ctg',
[33190] = 'bug',
[33202] = 'brh',
[33205] = 'bfq',
[33219] = 'map-bms',
[33223] = 'brx',
[33239] = 'ceb',
[33243] = 'bm',
[33251] = 'cu',
[33262] = 'ch',
[33265] = 'chy',
[33268] = 'bh',
[33270] = 'hoc',
[33273] = 'ny',
[33274] = 'shy',
[33281] = 'cbk-zam',
[33282] = 'gsg',
[33287] = 'gaa',
[33291] = 'fon',
[33295] = 'fj',
[33303] = 'hai',
[33315] = 'hz',
[33348] = 'cv',
[33350] = 'ce',
[33357] = 'crh',
[33368] = 'lg',
[33375] = 'hak',
[33388] = 'chr',
[33390] = 'cr',
[33434] = 'kut',
[33441] = 'fur',
[33454] = 'ff',
[33457] = 'gag',
[33462] = 'smn',
[33475] = 'gan',
[33491] = 'ht',
[33509] = 'inh',
[33522] = 'kbd',
[33537] = 'lkt',
[33538] = 'syc',
[33541] = 'kaa',
[33549] = 'jv',
[33552] = 'ks',
[33557] = 'krl',
[33569] = 'haw',
[33573] = 'rw',
[33575] = 'kjh',
[33578] = 'ig',
[33583] = 'rn',
[33584] = 'kha',
[33587] = 'ki',
[33617] = 'ho',
[33628] = 'loz',
[33634] = 'xal',
[33638] = 'mnc',
[33656] = 'sjd',
[33657] = 'glk',
[33661] = 'mfe',
[33673] = 'kn',
[33690] = 'csb',
[33698] = 'liv',
[33702] = 'kg',
[33714] = 'krc',
[33720] = 'krj',
[33730] = 'arn',
[33754] = 'lmo',
[33786] = 'sid',
[33790] = 'niu',
[33810] = 'or',
[33823] = 'ne',
[33845] = 'nap',
[33850] = 'nrm',
[33856] = 'pap',
[33864] = 'om',
[33868] = 'mni',
[33871] = 'nog',
[33875] = 'oj',
[33879] = 'pag',
[33890] = 'nso',
[33900] = 'ng',
[33902] = 'skr',
[33947] = 'se',
[33954] = 'sg',
[33965] = 'sat',
[33968] = 'os',
[33973] = 'scn',
[33976] = 'sc',
[33979] = 'new',
[33989] = 'srn',
[33997] = 'sd',
[34002] = 'su',
[34004] = 'sn',
[34011] = 'sm',
[34014] = 'ss',
[34015] = 'crs',
[34024] = 'pcd',
[34029] = 'yap',
[34040] = 'tru',
[34055] = 'tvl',
[34057] = 'tl',
[34094] = 'to',
[34119] = 'tyv',
[34124] = 'ti',
[34125] = 'tet',
[34128] = 'ty',
[34137] = 'tn',
[34138] = 'tum',
[34142] = 'tsg',
[34152] = 'shi',
[34159] = 'tpi',
[34174] = 'rif',
[34179] = 'ydg',
[34208] = 'wbl',
[34219] = 'wa',
[34233] = 'ryu',
[34235] = 'ii',
[34247] = 'yai',
[34251] = 'tcy',
[34257] = 'wo',
[34271] = 'bo',
[34279] = 'war',
[34290] = 'wuu',
[34299] = 'sah',
[34311] = 'yo',
[34318] = 'tly',
[34327] = 'ts',
[34333] = 'yrl',
[34340] = 'st',
[34737] = 'agq',
[34806] = 'bss',
[34988] = 'otk',
[35115] = 'cak',
[35132] = 'ami',
[35173] = 'chn',
[35218] = 'goh',
[35222] = 'fro',
[35224] = 'io',
[35225] = 'peo',
[35452] = 'bi',
[35475] = 'kbp',
[35497] = 'grc',
[35499] = 'cu',
[35501] = 'prg',
[35505] = 'non',
[35527] = 'dlm',
[35655] = 'ses',
[35667] = 'gez',
[35704] = 'krx',
[35722] = 'got',
[35726] = 'ett',
[35744] = 'kri',
[35761] = 'nxm',
[35850] = 'ie',
[35853] = 'kab',
[35876] = 'gn',
[35934] = 'ia',
[35936] = 'ilo',
[35939] = 'jam',
[35963] = 'kea',
[35978] = 'hil',
[36094] = 'kr',
[36106] = 'lij',
[36109] = 'mai',
[36121] = 'pam',
[36126] = 'kv',
[36147] = 'lus',
[36155] = 'cop',
[36163] = 'ku',
[36196] = 'lad',
[36202] = 'lld',
[36206] = 'lbe',
[36209] = 'kum',
[36212] = 'ltg',
[36213] = 'mad',
[36217] = 'ln',
[36236] = 'ml',
[36280] = 'mh',
[36323] = 'pko',
[36350] = 'jbo',
[36368] = 'ku',
[36387] = 'gkm',
[36392] = 'mo',
[36395] = 'enm',
[36435] = 'uun',
[36451] = 'mi',
[36452] = 'yrk',
[36455] = 'cdo',
[36459] = 'nui',
[36494] = 'quc',
[36495] = 'nan',
[36495] = 'zh-min-nan',
[36510] = 'el',
[36554] = 'pih',
[36583] = 'sei',
[36584] = 'olo',
[36656] = 'sjt',
[36699] = 'pis',
[36727] = 'pi',
[36730] = 'ota',
[36738] = 'nov',
[36745] = 'rar',
[36748] = 'pnt',
[36785] = 'nr',
[36811] = 'ckb',
[36850] = 'tw',
[36943] = 'wal',
[36979] = 'wls',
[36986] = 'vo',
[37041] = 'lzh',
[37059] = 'bpy',
[42365] = 'ang',
[44676] = 'en-ca',
[46728] = 'hif',
[49232] = 'dru',
[49741] = 'tzm',
[56240] = 'aeb',
[56314] = 'sje',
[56318] = 'koi',
[56322] = 'smj',
[56383] = 'qya',
[56410] = 'ksw',
[56415] = 'sju',
[56426] = 'ary',
[56428] = 'nrf-gg',
[56430] = 'nrf-je',
[56437] = 'sjn',
[56466] = 'din',
[56475] = 'ha',
[56482] = 'shn',
[56483] = 'lki',
[56485] = 'wym',
[56499] = 'arq',
[56505] = 'bnn',
[56508] = 'sou',
[56509] = 'adx',
[56547] = 'umu',
[56583] = 'cpx',
[56590] = 'atj',
[56601] = 'khg',
[58635] = 'pa',
[58680] = 'ps',
[100103] = 'vls',
[102172] = 'li',
[131339] = 'gsw',
[146803] = 'lfn',
[152965] = 'sli',
[165795] = 'fkv',
[172244] = 'xnb',
[178440] = 'fa-af',
[180945] = 'hyw',
[181037] = 'aln',
[197936] = 'abe',
[213434] = 'bat-smg',
[216286] = 'bsk',
[237409] = 'zea',
[242648] = 'eml',
[254950] = 'ovd',
[257829] = 'bqi',
[262828] = 'zh-tw',
[304049] = 'hrx',
[306626] = 'de-at',
[387066] = 'gsw',
[497345] = 'vmf',
[505674] = 'gml',
[516137] = 'nds-nl',
[523014] = 'mus',
[535958] = 'xpu',
[565110] = 'nod',
[584983] = 'lag',
[615660] = 'mui',
[676492] = 'ssf',
[688873] = 'rm-rumgr',
[715755] = 'pwn',
[715766] = 'tay',
[716599] = 'sxr',
[716604] = 'fos',
[716615] = 'bzg',
[716627] = 'ckv',
[716647] = 'byq',
[716681] = 'tsu',
[716686] = 'trv',
[716690] = 'pyu',
[716695] = 'xsy',
[718269] = 'szy',
[837985] = 'gmh',
[845441] = 'sdc',
[891085] = 'guc',
[938216] = 'khw',
[1057898] = 'egl',
[1063911] = 'tzl',
[1066787] = 'uzs',
[1160372] = 'lzz',
[1194341] = 'ru-sib',
[1340322] = 'jut',
[1363072] = 'gcr',
[1366643] = 'de-ch',
[1377116] = 'avk',
[1389492] = 'pnb',
[1405077] = 'kj',
[1420587] = 'nn-hognorsk',
[1473289] = 'frm',
[1496597] = 'sdh',
[1641543] = 'rgn',
[1704302] = 'nsk',
[1740805] = 'qug',
[1751432] = 'pdt',
[1776032] = 'mrj',
[1815020] = 'akz',
[1975271] = 'tvx',
[1982248] = 'hbo',
[1991779] = 'alt',
[2093214] = 'rmf',
[2094884] = 'ppu',
[2393095] = 'ood',
[2407831] = 'nia',
[2417210] = 'mis-x-Q2417210',
[2501174] = 'gor',
[2600085] = 'osa',
[2779411] = 'kae',
[2880037] = 'bdr',
[2891049] = 'btm',
[2937525] = 'cps',
[2982063] = 'pjt',
[3006280] = 'gcf',
[3027953] = 'srq',
[3083213] = 'frc',
[3111668] = 'guw',
[3124354] = 'abs',
[3241618] = 'rkt',
[3250286] = 'cnh',
[3287253] = 'sjm',
[3306265] = 'ins',
[3436689] = 'bzs',
[3449805] = 'azb',
[3450749] = 'rki',
[3906614] = 'mhr',
[3912765] = 'kcg',
[3915357] = 'fuf',
[3915769] = 'jax',
[4175893] = 'mrh',
[4380827] = 'zh-tw',
[4418344] = 'sty',
[5045611] = 'rmc',
[5317225] = 'dtp',
[5330390] = 'kjp',
[5575236] = 'gom',
[6023868] = 'kiu',
[7033959] = 'zh-yue',
[7049771] = 'nys',
[7598268] = 'zgh',
[7689158] = 'tvn',
[10729616] = 'aoc',
[11159532] = 'tsk',
[12473446] = 'pmy',
[12633026] = 'bto',
[12634001] = 'bcc',
[12642195] = 'crl',
[12645561] = 'bgn',
[12952626] = 'kbg',
[12952748] = 'luz',
[12953315] = 'yav',
[13414913] = 'zh-hans',
[16116629] = 'bxr',
[18130932] = 'zh-hant',
[18415595] = 'dty',
[18546266] = 'nqo',
[19933293] = 'lrc',
[21161942] = 'sr-ec',
[21161949] = 'sr-el',
[21480034] = 'en-simple',
[21480034] = 'simple',
[21480034] = 'en-x-simple',
[22282914] = 'und',
[22338135] = 'ug-arab',
[22338145] = 'ug-latn',
[24841726] = 'zh-cn',
[31091048] = 'tce',
[53979341] = 'ja-hira',
[53979342] = 'ja-kana',
[53979345] = 'ja-hrkt',
[53979504] = 'ja-hani',
[64427343] = 'es-formal',
[64427347] = 'hu-formal',
[64427349] = 'kk-cn',
[64427350] = 'kk-kz',
[64427352] = 'kk-tr',
[64427356] = 'nl-informal',
[64427357] = 'zh-mo',
[65455884] = 'rwr',
}
6oow0oxijip9x3eoy5n2hknneutyt64
Module:Dictionnaire Wikidata/Codes langue/inversé
828
3383
36588
2025-12-15T19:23:04Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ correspondance élément Wikidata/code langue wikidata en SPARQL : https://w.wiki/4MU2 SELECT DISTINCT ?result WHERE { { ?item wdt:P31/wdt:P279* wd:Q34770 . BIND(xsd:integer(SUBSTR(STR(?item), 33)) AS ?id). ?item wdt:P424 ?langue. BIND(CONCAT("['", ?langue,"'] = '", SUBSTR(STR(?item), 32), "',") AS ?result). } UNION { ?item wdt:P31/wdt:P279* wd:Q25295 . BIND(xsd:integer(SUBSTR(STR(?item), 33)) AS ?id). ?ite...'
36588
Scribunto
text/plain
--[[
correspondance élément Wikidata/code langue wikidata en SPARQL : https://w.wiki/4MU2
SELECT DISTINCT ?result WHERE {
{
?item wdt:P31/wdt:P279* wd:Q34770 .
BIND(xsd:integer(SUBSTR(STR(?item), 33)) AS ?id).
?item wdt:P424 ?langue.
BIND(CONCAT("['", ?langue,"'] = '", SUBSTR(STR(?item), 32), "',") AS ?result).
}
UNION
{
?item wdt:P31/wdt:P279* wd:Q25295 .
BIND(xsd:integer(SUBSTR(STR(?item), 33)) AS ?id).
?item wdt:P424 ?langue.
BIND(CONCAT("['", ?langue,"'] = '", SUBSTR(STR(?item), 32), "',") AS ?result).
}
}
ORDER BY ASC(?id)
]]--
return {
['eo'] = 'Q143',
['fr'] = 'Q150',
['de'] = 'Q188',
['tr'] = 'Q256',
['is'] = 'Q294',
['la'] = 'Q397',
['it'] = 'Q652',
['pl'] = 'Q809',
['es'] = 'Q1321',
['fi'] = 'Q1412',
['hi'] = 'Q1568',
['mr'] = 'Q1571',
['ur'] = 'Q1617',
['en'] = 'Q1860',
['ay'] = 'Q4627',
['ab'] = 'Q5111',
['gu'] = 'Q5137',
['pt'] = 'Q5146',
['qu'] = 'Q5218',
['ja'] = 'Q5287',
['ta'] = 'Q5885',
['hr'] = 'Q6654',
['ca'] = 'Q7026',
['nl'] = 'Q7411',
['ru'] = 'Q7737',
['sw'] = 'Q7838',
['zh'] = 'Q7850',
['ro'] = 'Q7913',
['bg'] = 'Q7918',
['mg'] = 'Q7930',
['en-us'] = 'Q7976',
['te'] = 'Q8097',
['ka'] = 'Q8108',
['yi'] = 'Q8641',
['sq'] = 'Q8748',
['eu'] = 'Q8752',
['an'] = 'Q8765',
['akl'] = 'Q8773',
['hy'] = 'Q8785',
['gsw-fr'] = 'Q8786',
['uk'] = 'Q8798',
['cnr'] = 'Q8821',
['sv'] = 'Q9027',
['da'] = 'Q9035',
['no'] = 'Q9043',
['lb'] = 'Q9051',
['cs'] = 'Q9056',
['sk'] = 'Q9058',
['sl'] = 'Q9063',
['hu'] = 'Q9067',
['et'] = 'Q9072',
['lv'] = 'Q9078',
['lt'] = 'Q9083',
['be'] = 'Q9091',
['el'] = 'Q9129',
['ga'] = 'Q9142',
['mt'] = 'Q9166',
['fa'] = 'Q9168',
['ko'] = 'Q9176',
['zh-yue'] = 'Q9186',
['vi'] = 'Q9199',
['km'] = 'Q9205',
['lo'] = 'Q9211',
['th'] = 'Q9217',
['my'] = 'Q9228',
['ms'] = 'Q9237',
['id'] = 'Q9240',
['mn'] = 'Q9246',
['kk'] = 'Q9252',
['ky'] = 'Q9255',
['tg'] = 'Q9260',
['uz'] = 'Q9264',
['tk'] = 'Q9267',
['he'] = 'Q9288',
['az'] = 'Q9292',
['mk'] = 'Q9296',
['sr'] = 'Q9299',
['sh'] = 'Q9301',
['bs'] = 'Q9303',
['gl'] = 'Q9307',
['cy'] = 'Q9309',
['gd'] = 'Q9314',
['bn'] = 'Q9610',
['tlh'] = 'Q10134',
['zu'] = 'Q10179',
['zun'] = 'Q10188',
['diq'] = 'Q10199',
['sa'] = 'Q11059',
['br'] = 'Q12107',
['gv'] = 'Q12175',
['rcf'] = 'Q13198',
['rm'] = 'Q13199',
['rmy'] = 'Q13201',
['za'] = 'Q13216',
['xh'] = 'Q13218',
['udm'] = 'Q13238',
['hsb'] = 'Q13248',
['ug'] = 'Q13263',
['si'] = 'Q13267',
['sms'] = 'Q13271',
['so'] = 'Q13275',
['dsb'] = 'Q13286',
['sma'] = 'Q13293',
['nah'] = 'Q13300',
['na'] = 'Q13307',
['nv'] = 'Q13310',
['mic'] = 'Q13321',
['min'] = 'Q13324',
['mwl'] = 'Q13330',
['mdf'] = 'Q13343',
['mnw'] = 'Q13349',
['moe'] = 'Q13351',
['mzn'] = 'Q13356',
['fit'] = 'Q13357',
['ruq'] = 'Q13358',
['xmf'] = 'Q13359',
['mwv'] = 'Q13365',
['ba'] = 'Q13389',
['ar'] = 'Q13955',
['oc'] = 'Q14185',
['af'] = 'Q14196',
['sco'] = 'Q14549',
['ase'] = 'Q14759',
['pms'] = 'Q15085',
['frp'] = 'Q15087',
['ko-kp'] = 'Q18784',
['ko-kr'] = 'Q18795',
['ttm'] = 'Q20822',
['esu'] = 'Q21117',
['pdc'] = 'Q22711',
['pfl'] = 'Q23014',
['nn'] = 'Q25164',
['nb'] = 'Q25167',
['fo'] = 'Q25258',
['tt'] = 'Q25285',
['kw'] = 'Q25289',
['kl'] = 'Q25355',
['nds'] = 'Q25433',
['rue'] = 'Q26245',
['stq'] = 'Q27154',
['fy'] = 'Q27175',
['ik'] = 'Q27183',
['eya'] = 'Q27480',
['abq'] = 'Q27567',
['ace'] = 'Q27683',
['ady'] = 'Q27776',
['tli'] = 'Q27792',
['aa'] = 'Q27811',
['ak'] = 'Q28026',
['frr'] = 'Q28224',
['am'] = 'Q28244',
['koy'] = 'Q28304',
['anp'] = 'Q28378',
['cal'] = 'Q28427',
['clc'] = 'Q28535',
['arc'] = 'Q28602',
['rup'] = 'Q29316',
['as'] = 'Q29401',
['ast'] = 'Q29507',
['bar'] = 'Q29540',
['av'] = 'Q29561',
['awa'] = 'Q29579',
['arz'] = 'Q29919',
['iu'] = 'Q29921',
['myv'] = 'Q29952',
['ee'] = 'Q30005',
['ext'] = 'Q30007',
['szl'] = 'Q30319',
['gil'] = 'Q30898',
['lez'] = 'Q31746',
['ksh'] = 'Q32145',
['dag'] = 'Q32238',
['dar'] = 'Q32332',
['dv'] = 'Q32656',
['ve'] = 'Q32704',
['vec'] = 'Q32724',
['vep'] = 'Q32747',
['fiu-vro'] = 'Q32762',
['vot'] = 'Q32858',
['ccp'] = 'Q32952',
['cho'] = 'Q32979',
['bfi'] = 'Q33000',
['dua'] = 'Q33013',
['bbc'] = 'Q33017',
['bej'] = 'Q33025',
['bla'] = 'Q33060',
['ban'] = 'Q33070',
['dz'] = 'Q33081',
['co'] = 'Q33111',
['bxr'] = 'Q33120',
['bjn'] = 'Q33151',
['ckt'] = 'Q33170',
['ctg'] = 'Q33173',
['bug'] = 'Q33190',
['brh'] = 'Q33202',
['bfq'] = 'Q33205',
['map-bms'] = 'Q33219',
['brx'] = 'Q33223',
['ceb'] = 'Q33239',
['bm'] = 'Q33243',
['cu'] = 'Q33251',
['ch'] = 'Q33262',
['chy'] = 'Q33265',
['bh'] = 'Q33268',
['hoc'] = 'Q33270',
['ny'] = 'Q33273',
['shy'] = 'Q33274',
['cbk-zam'] = 'Q33281',
['gsg'] = 'Q33282',
['gaa'] = 'Q33287',
['fon'] = 'Q33291',
['fj'] = 'Q33295',
['hai'] = 'Q33303',
['hz'] = 'Q33315',
['cv'] = 'Q33348',
['ce'] = 'Q33350',
['crh'] = 'Q33357',
['lg'] = 'Q33368',
['hak'] = 'Q33375',
['chr'] = 'Q33388',
['cr'] = 'Q33390',
['kut'] = 'Q33434',
['fur'] = 'Q33441',
['ff'] = 'Q33454',
['gag'] = 'Q33457',
['smn'] = 'Q33462',
['gan'] = 'Q33475',
['ht'] = 'Q33491',
['inh'] = 'Q33509',
['kbd'] = 'Q33522',
['lkt'] = 'Q33537',
['syc'] = 'Q33538',
['kaa'] = 'Q33541',
['jv'] = 'Q33549',
['ks'] = 'Q33552',
['krl'] = 'Q33557',
['haw'] = 'Q33569',
['rw'] = 'Q33573',
['kjh'] = 'Q33575',
['ig'] = 'Q33578',
['rn'] = 'Q33583',
['kha'] = 'Q33584',
['ki'] = 'Q33587',
['ho'] = 'Q33617',
['loz'] = 'Q33628',
['xal'] = 'Q33634',
['mnc'] = 'Q33638',
['sjd'] = 'Q33656',
['glk'] = 'Q33657',
['mfe'] = 'Q33661',
['kn'] = 'Q33673',
['csb'] = 'Q33690',
['liv'] = 'Q33698',
['kg'] = 'Q33702',
['krc'] = 'Q33714',
['krj'] = 'Q33720',
['arn'] = 'Q33730',
['lmo'] = 'Q33754',
['sid'] = 'Q33786',
['niu'] = 'Q33790',
['or'] = 'Q33810',
['ne'] = 'Q33823',
['nap'] = 'Q33845',
['nrm'] = 'Q33850',
['pap'] = 'Q33856',
['om'] = 'Q33864',
['mni'] = 'Q33868',
['nog'] = 'Q33871',
['oj'] = 'Q33875',
['pag'] = 'Q33879',
['nso'] = 'Q33890',
['ng'] = 'Q33900',
['skr'] = 'Q33902',
['se'] = 'Q33947',
['sg'] = 'Q33954',
['sat'] = 'Q33965',
['os'] = 'Q33968',
['scn'] = 'Q33973',
['sc'] = 'Q33976',
['new'] = 'Q33979',
['srn'] = 'Q33989',
['sd'] = 'Q33997',
['su'] = 'Q34002',
['sn'] = 'Q34004',
['sm'] = 'Q34011',
['ss'] = 'Q34014',
['crs'] = 'Q34015',
['pcd'] = 'Q34024',
['yap'] = 'Q34029',
['tru'] = 'Q34040',
['tvl'] = 'Q34055',
['tl'] = 'Q34057',
['to'] = 'Q34094',
['tyv'] = 'Q34119',
['ti'] = 'Q34124',
['tet'] = 'Q34125',
['ty'] = 'Q34128',
['tn'] = 'Q34137',
['tum'] = 'Q34138',
['tsg'] = 'Q34142',
['shi'] = 'Q34152',
['tpi'] = 'Q34159',
['rif'] = 'Q34174',
['ydg'] = 'Q34179',
['wbl'] = 'Q34208',
['wa'] = 'Q34219',
['ryu'] = 'Q34233',
['ii'] = 'Q34235',
['yai'] = 'Q34247',
['tcy'] = 'Q34251',
['wo'] = 'Q34257',
['bo'] = 'Q34271',
['war'] = 'Q34279',
['wuu'] = 'Q34290',
['sah'] = 'Q34299',
['yo'] = 'Q34311',
['tly'] = 'Q34318',
['ts'] = 'Q34327',
['yrl'] = 'Q34333',
['st'] = 'Q34340',
['agq'] = 'Q34737',
['bss'] = 'Q34806',
['otk'] = 'Q34988',
['cak'] = 'Q35115',
['ami'] = 'Q35132',
['chn'] = 'Q35173',
['goh'] = 'Q35218',
['fro'] = 'Q35222',
['io'] = 'Q35224',
['peo'] = 'Q35225',
['bi'] = 'Q35452',
['kbp'] = 'Q35475',
['grc'] = 'Q35497',
['cu'] = 'Q35499',
['prg'] = 'Q35501',
['non'] = 'Q35505',
['dlm'] = 'Q35527',
['ses'] = 'Q35655',
['gez'] = 'Q35667',
['krx'] = 'Q35704',
['got'] = 'Q35722',
['ett'] = 'Q35726',
['kri'] = 'Q35744',
['nxm'] = 'Q35761',
['ie'] = 'Q35850',
['kab'] = 'Q35853',
['gn'] = 'Q35876',
['ia'] = 'Q35934',
['ilo'] = 'Q35936',
['jam'] = 'Q35939',
['kea'] = 'Q35963',
['hil'] = 'Q35978',
['kr'] = 'Q36094',
['lij'] = 'Q36106',
['mai'] = 'Q36109',
['pam'] = 'Q36121',
['kv'] = 'Q36126',
['lus'] = 'Q36147',
['cop'] = 'Q36155',
['ku'] = 'Q36163',
['lad'] = 'Q36196',
['lld'] = 'Q36202',
['lbe'] = 'Q36206',
['kum'] = 'Q36209',
['ltg'] = 'Q36212',
['mad'] = 'Q36213',
['ln'] = 'Q36217',
['ml'] = 'Q36236',
['mh'] = 'Q36280',
['pko'] = 'Q36323',
['jbo'] = 'Q36350',
['ku'] = 'Q36368',
['gkm'] = 'Q36387',
['mo'] = 'Q36392',
['enm'] = 'Q36395',
['uun'] = 'Q36435',
['mi'] = 'Q36451',
['yrk'] = 'Q36452',
['cdo'] = 'Q36455',
['nui'] = 'Q36459',
['quc'] = 'Q36494',
['nan'] = 'Q36495',
['zh-min-nan'] = 'Q36495',
['el'] = 'Q36510',
['pih'] = 'Q36554',
['sei'] = 'Q36583',
['olo'] = 'Q36584',
['sjt'] = 'Q36656',
['pis'] = 'Q36699',
['pi'] = 'Q36727',
['ota'] = 'Q36730',
['nov'] = 'Q36738',
['rar'] = 'Q36745',
['pnt'] = 'Q36748',
['nr'] = 'Q36785',
['ckb'] = 'Q36811',
['tw'] = 'Q36850',
['wal'] = 'Q36943',
['wls'] = 'Q36979',
['vo'] = 'Q36986',
['lzh'] = 'Q37041',
['bpy'] = 'Q37059',
['ang'] = 'Q42365',
['en-ca'] = 'Q44676',
['hif'] = 'Q46728',
['dru'] = 'Q49232',
['tzm'] = 'Q49741',
['aeb'] = 'Q56240',
['sje'] = 'Q56314',
['koi'] = 'Q56318',
['smj'] = 'Q56322',
['qya'] = 'Q56383',
['ksw'] = 'Q56410',
['sju'] = 'Q56415',
['ary'] = 'Q56426',
['nrf-gg'] = 'Q56428',
['nrf-je'] = 'Q56430',
['sjn'] = 'Q56437',
['din'] = 'Q56466',
['ha'] = 'Q56475',
['shn'] = 'Q56482',
['lki'] = 'Q56483',
['wym'] = 'Q56485',
['arq'] = 'Q56499',
['bnn'] = 'Q56505',
['sou'] = 'Q56508',
['adx'] = 'Q56509',
['umu'] = 'Q56547',
['cpx'] = 'Q56583',
['atj'] = 'Q56590',
['khg'] = 'Q56601',
['pa'] = 'Q58635',
['ps'] = 'Q58680',
['vls'] = 'Q100103',
['li'] = 'Q102172',
['gsw'] = 'Q131339',
['lfn'] = 'Q146803',
['sli'] = 'Q152965',
['fkv'] = 'Q165795',
['xnb'] = 'Q172244',
['fa-af'] = 'Q178440',
['hyw'] = 'Q180945',
['aln'] = 'Q181037',
['abe'] = 'Q197936',
['bat-smg'] = 'Q213434',
['bsk'] = 'Q216286',
['zea'] = 'Q237409',
['eml'] = 'Q242648',
['ovd'] = 'Q254950',
['bqi'] = 'Q257829',
['zh-tw'] = 'Q262828',
['hrx'] = 'Q304049',
['de-at'] = 'Q306626',
['gsw'] = 'Q387066',
['vmf'] = 'Q497345',
['gml'] = 'Q505674',
['nds-nl'] = 'Q516137',
['mus'] = 'Q523014',
['xpu'] = 'Q535958',
['nod'] = 'Q565110',
['lag'] = 'Q584983',
['mui'] = 'Q615660',
['ssf'] = 'Q676492',
['rm-rumgr'] = 'Q688873',
['pwn'] = 'Q715755',
['tay'] = 'Q715766',
['sxr'] = 'Q716599',
['fos'] = 'Q716604',
['bzg'] = 'Q716615',
['ckv'] = 'Q716627',
['byq'] = 'Q716647',
['tsu'] = 'Q716681',
['trv'] = 'Q716686',
['pyu'] = 'Q716690',
['xsy'] = 'Q716695',
['szy'] = 'Q718269',
['gmh'] = 'Q837985',
['sdc'] = 'Q845441',
['guc'] = 'Q891085',
['khw'] = 'Q938216',
['egl'] = 'Q1057898',
['tzl'] = 'Q1063911',
['uzs'] = 'Q1066787',
['lzz'] = 'Q1160372',
['ru-sib'] = 'Q1194341',
['jut'] = 'Q1340322',
['gcr'] = 'Q1363072',
['de-ch'] = 'Q1366643',
['avk'] = 'Q1377116',
['pnb'] = 'Q1389492',
['kj'] = 'Q1405077',
['nn-hognorsk'] = 'Q1420587',
['frm'] = 'Q1473289',
['sdh'] = 'Q1496597',
['rgn'] = 'Q1641543',
['nsk'] = 'Q1704302',
['qug'] = 'Q1740805',
['pdt'] = 'Q1751432',
['mrj'] = 'Q1776032',
['akz'] = 'Q1815020',
['tvx'] = 'Q1975271',
['hbo'] = 'Q1982248',
['alt'] = 'Q1991779',
['rmf'] = 'Q2093214',
['ppu'] = 'Q2094884',
['ood'] = 'Q2393095',
['nia'] = 'Q2407831',
['mis-x-Q2417210'] = 'Q2417210',
['gor'] = 'Q2501174',
['osa'] = 'Q2600085',
['kae'] = 'Q2779411',
['bdr'] = 'Q2880037',
['btm'] = 'Q2891049',
['cps'] = 'Q2937525',
['pjt'] = 'Q2982063',
['gcf'] = 'Q3006280',
['srq'] = 'Q3027953',
['frc'] = 'Q3083213',
['guw'] = 'Q3111668',
['abs'] = 'Q3124354',
['rkt'] = 'Q3241618',
['cnh'] = 'Q3250286',
['sjm'] = 'Q3287253',
['ins'] = 'Q3306265',
['bzs'] = 'Q3436689',
['azb'] = 'Q3449805',
['rki'] = 'Q3450749',
['mhr'] = 'Q3906614',
['kcg'] = 'Q3912765',
['fuf'] = 'Q3915357',
['jax'] = 'Q3915769',
['mrh'] = 'Q4175893',
['zh-tw'] = 'Q4380827',
['sty'] = 'Q4418344',
['rmc'] = 'Q5045611',
['dtp'] = 'Q5317225',
['kjp'] = 'Q5330390',
['gom'] = 'Q5575236',
['kiu'] = 'Q6023868',
['zh-yue'] = 'Q7033959',
['nys'] = 'Q7049771',
['zgh'] = 'Q7598268',
['tvn'] = 'Q7689158',
['aoc'] = 'Q10729616',
['tsk'] = 'Q11159532',
['pmy'] = 'Q12473446',
['bto'] = 'Q12633026',
['bcc'] = 'Q12634001',
['crl'] = 'Q12642195',
['bgn'] = 'Q12645561',
['kbg'] = 'Q12952626',
['luz'] = 'Q12952748',
['yav'] = 'Q12953315',
['zh-hans'] = 'Q13414913',
['bxr'] = 'Q16116629',
['zh-hant'] = 'Q18130932',
['dty'] = 'Q18415595',
['nqo'] = 'Q18546266',
['lrc'] = 'Q19933293',
['sr-ec'] = 'Q21161942',
['sr-el'] = 'Q21161949',
['en-simple'] = 'Q21480034',
['simple'] = 'Q21480034',
['en-x-simple'] = 'Q21480034',
['und'] = 'Q22282914',
['ug-arab'] = 'Q22338135',
['ug-latn'] = 'Q22338145',
['zh-cn'] = 'Q24841726',
['tce'] = 'Q31091048',
['ja-hira'] = 'Q53979341',
['ja-kana'] = 'Q53979342',
['ja-hrkt'] = 'Q53979345',
['ja-hani'] = 'Q53979504',
['es-formal'] = 'Q64427343',
['hu-formal'] = 'Q64427347',
['kk-cn'] = 'Q64427349',
['kk-kz'] = 'Q64427350',
['kk-tr'] = 'Q64427352',
['nl-informal'] = 'Q64427356',
['zh-mo'] = 'Q64427357',
['rwr'] = 'Q65455884',
}
2q1s2lkr389bunuvefmjb3yvnn8zcei
Module:Sitelink
828
3384
36589
2025-12-15T19:23:50Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'my_object = {}; my_object.wikisource = function( frame ) local entity = mw.wikibase.getEntityObject(id) local str = entity:getSitelink('elwikisource') return str end my_object.wikiquote = function( frame ) local id = frame.args[1] local entity = mw.wikibase.getEntityObject(id) local str = entity:getSitelink('elwikiquote') return str end my_object.wikidata = function( frame ) local str = mw.wikibase.sitelink(item.id...'
36589
Scribunto
text/plain
my_object = {};
my_object.wikisource = function( frame )
local entity = mw.wikibase.getEntityObject(id)
local str = entity:getSitelink('elwikisource')
return str
end
my_object.wikiquote = function( frame )
local id = frame.args[1]
local entity = mw.wikibase.getEntityObject(id)
local str = entity:getSitelink('elwikiquote')
return str
end
my_object.wikidata = function( frame )
local str = mw.wikibase.sitelink(item.id)
return str
end
return my_object
73wv9h3hm28qjjk8ewn2uqojgxaisk8
Module:Bases
828
3385
36590
2025-12-15T19:24:41Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local wikidata = require "Module:Wikidata" function p.main(frame) -- Récupération des paramètres, soit ceux passés par le modèle, -- soit ceux passés au modèle local id = frame.args.id local name = frame.args.name local headername = frame.args.headername local noarchive= frame.args.noarchive if frame.getParent then id = frame:getParent().args.id or id end -- Chargement des données de la base souhaitée local base...'
36590
Scribunto
text/plain
local p = {}
local wikidata = require "Module:Wikidata"
function p.main(frame)
-- Récupération des paramètres, soit ceux passés par le modèle,
-- soit ceux passés au modèle
local id = frame.args.id
local name = frame.args.name
local headername = frame.args.headername
local noarchive= frame.args.noarchive
if frame.getParent then
id = frame:getParent().args.id or id
end
-- Chargement des données de la base souhaitée
local bases = require("Module:Bases/" .. name)
-- Récupération des propriétés wikidata de l'entité sélectionné
local entity = mw.wikibase.getEntityObject(id)
if not entity then
return "[[Catégorie:Page utilisant le modèle Bases " .. name .. " inactif]]"
end
-- Pour chaque base dans notre liste, on vérifie si notre entité la possède
-- si c'est le cas, on formate et ajoute un lien vers elle dans une liste
local vals = {}
for i, base in pairs(bases) do
local val = wikidata.formatStatements{entity = entity, text = base[1], property = base[2], urlpattern = base[3], numval = 1, addcat = true, qualifier = 'P407', qualifiervalue = 'Q150', value = frame:getParent().args[base[1]]} or wikidata.formatStatements{entity = entity, text = base[1], property = base[2], urlpattern = base[3], numval = 1, addcat = true, value = frame:getParent().args[base[1]]}
if val then
table.insert(vals, val)
end
end
-- On catégorise si l'entité ne possède aucune des bases listés
if #vals == 0 then
return "[[Catégorie:Page utilisant le modèle Bases " .. name .. " inactif]]"
end
-- Ajout du label si l'id wikidata a été précisé manuellement
local entityInfo = ''
if id and entity then --Has "entity" parameter, Wikidata item was found
local label = entity:getLabel()
if label then
entityInfo = ' (pour [[' .. label .. ']])'
end
end
-- Concaténation des liens et formatage final
local header = ''
if #vals > 1 then
header = "Πηγές σχετιζόμενες " .. headername .. entityInfo .. " : "
else
header = "Πηγή σχετιζόμενη " .. headername .. entityInfo .. " : "
end
local footer = ''
-- Ajout de la class noarchive
if noarchive then
header = header .. "<span class=\"noarchive\">"
footer = "</span>"
end
-- Ajout des catégories qui vont bien
local categories = "[[Catégorie:Page pointant vers des bases externes]] [[Catégorie:Page pointant vers des bases relatives " .. headername .. "]]"
return wikidata.addLinkBack(header .. table.concat( vals, ' • ' ) .. footer , entity, "identifiers" ) .. categories -- lien vers la section approriété de Wikidata
end
return p
tuag99k90wh5rlnoonfcb9q61248ikf
Module:Επίσημος ιστότοπος
828
3386
36591
2025-12-15T19:26:02Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local makeUrl = require('Module:URL')._url local p = {} -- Wrapper for pcall which returns nil on failure. local function quickPcall(func) local success, result = pcall(func) if success then return result end end -- Gets the rank for a Wikidata property table. Returns 1, 0 or -1, in -- order of rank. local function getRank(prop) local rank = prop.rank if rank == 'preferred' then return 1 elseif rank == 'normal' then return 0 elseif...'
36591
Scribunto
text/plain
local makeUrl = require('Module:URL')._url
local p = {}
-- Wrapper for pcall which returns nil on failure.
local function quickPcall(func)
local success, result = pcall(func)
if success then
return result
end
end
-- Gets the rank for a Wikidata property table. Returns 1, 0 or -1, in
-- order of rank.
local function getRank(prop)
local rank = prop.rank
if rank == 'preferred' then
return 1
elseif rank == 'normal' then
return 0
elseif rank == 'deprecated' then
return -1
else
-- No rank or undefined rank is treated as "normal".
return 0
end
end
-- Finds whether a Wikidata property is qualified as being in English.
local function isEnglish(prop)
local ret = quickPcall(function ()
for i, lang in ipairs(prop.qualifiers.P407) do
if lang.datavalue.value['numeric-id'] == 1860 then
return true
end
end
return false
end)
return ret == true
end
-- Fetches the official website URL from Wikidata.
local fetchWikidataUrl
fetchWikidataUrl = function()
-- Get objects for all official sites on Wikidata.
local websites = quickPcall(function ()
return mw.wikibase.getAllStatements(mw.wikibase.getEntityIdForCurrentPage(), 'P856')
end)
-- Clone the objects in case other code needs them in their original order.
websites = websites and mw.clone(websites) or {}
-- Add the table index to the objects in case it is needed in the sort.
for i, website in ipairs(websites) do
website._index = i
end
-- Sort the websites, first by highest rank, and then by websites in the
-- English language, then by the website's original position in the
-- property list. When we are done, get the URL from the highest-sorted
-- object.
table.sort(websites, function(ws1, ws2)
local r1 = getRank(ws1)
local r2 = getRank(ws2)
if r1 ~= r2 then
return r1 > r2
end
local e1 = isEnglish(ws1)
local e2 = isEnglish(ws2)
if e1 ~= e2 then
return e1
end
return ws1._index < ws2._index
end)
local url = quickPcall(function ()
return websites[1].mainsnak.datavalue.value
end)
-- Cache the result so that we only do the heavy lifting once per #invoke.
fetchWikidataUrl = function ()
return url
end
return url
end
-- Render the URL link, plus other visible output.
local function renderUrl(options)
if not options.url and not options.wikidataurl then
local qid = mw.wikibase.getEntityIdForCurrentPage()
local result = '<strong class="error">' ..
'No URL found. Please specify a URL here or add one to Wikidata.' ..
'</strong>'
if qid then
result = result.. ' [[File:OOjs UI icon edit-ltr-progressive.svg |frameless |text-top |10px |alt=Edit this at Wikidata |link=https://www.wikidata.org/wiki/' .. qid .. '#P856|Edit this at Wikidata]]'
end
return result
end
local ret = {}
ret[#ret + 1] = string.format(
'<span class="official-website">%s</span>',
makeUrl(options.url or options.wikidataurl, options.display)
)
if options.wikidataurl and not options.url then
local qid = mw.wikibase.getEntityIdForCurrentPage()
if qid then
ret[#ret + 1] = '[[File:OOjs UI icon edit-ltr-progressive.svg |frameless |text-top |10px |alt=Edit this at Wikidata |link=https://www.wikidata.org/wiki/' .. qid .. '#P856|Edit this at Wikidata]]'
end
end
return table.concat(ret, ' ')
end
-- Render the tracking category.
local function renderTrackingCategory(url, wikidataurl)
if mw.title.getCurrentTitle().namespace ~= 0 then
return ''
end
local category
if not url and not wikidataurl then
category = 'Official website missing URL'
elseif not url and wikidataurl then
return ''
elseif url and wikidataurl then
if url:gsub('/%s*$', '') ~= wikidataurl:gsub('/%s*$', '') then
category = 'Official website different in Wikidata and Wikipedia'
end
else
category = 'Official website not in Wikidata'
end
return category and string.format('[[Category:%s]]', category) or ''
end
function p._main(args)
local url = args[1] or args.URL or args.url
local wikidataurl = fetchWikidataUrl()
local formattedUrl = renderUrl{
url = url,
wikidataurl = wikidataurl,
display = args[2] or args.name or 'Official website'
}
return formattedUrl .. renderTrackingCategory(url, wikidataurl)
end
function p.main(frame)
local args = require('Module:Arguments').getArgs(frame, {
wrappers = 'Πρότυπον:Επίσημος ιστότοπος'
})
return p._main(args)
end
return p
2u3x00i7j457k5e5mrq02r3zxszixnj
Module:URL
828
3387
36592
2025-12-15T19:27:00Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- -- This module implements {{URL}} local p = {} local function trim(s) return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1")) end local function safeUri(s) local success, uri = pcall(function() return mw.uri.new(s) end) if success then return uri end end function p._url(url, text) url = trim(url or '') text = trim(text or '') if url == '' then if text == '' then return mw.getCurrentFrame():expandTemplate{ title = 'tlx', args =...'
36592
Scribunto
text/plain
--
-- This module implements {{URL}}
local p = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function safeUri(s)
local success, uri = pcall(function()
return mw.uri.new(s)
end)
if success then
return uri
end
end
function p._url(url, text)
url = trim(url or '')
text = trim(text or '')
if url == '' then
if text == '' then
return mw.getCurrentFrame():expandTemplate{ title = 'tlx', args = { 'URL', "''example.com''", "''optional display text''" } }
else
return text
end
end
-- If the URL contains any unencoded spaces, encode them, because MediaWiki will otherwise interpret a space as the end of the URL.
url = mw.ustring.gsub(url, '%s', function(s) return mw.uri.encode(s, 'PATH') end)
-- If there is an empty query string or fragment id, remove it as it will cause mw.uri.new to throw an error
url = mw.ustring.gsub(url, '#$', '')
url = mw.ustring.gsub(url, '%?$', '')
-- If it's an HTTP[S] URL without the double slash, fix it.
url = mw.ustring.gsub(url, '^[Hh][Tt][Tt][Pp]([Ss]?):(/?)([^/])', 'http%1://%3')
-- Handle URLs from Wikidata of the format http://
url = mw.ustring.gsub(url, '^[Hh][Tt][Tt][Pp]([Ss]?)://', 'http%1://')
local uri = safeUri(url)
-- Handle URL's without a protocol and URL's that are protocol-relative,
-- e.g. www.example.com/foo or www.example.com:8080/foo, and //www.example.com/foo
if uri and (not uri.protocol or (uri.protocol and not uri.host)) and url:sub(1, 2) ~= '//' then
url = 'http://' .. url
uri = safeUri(url)
end
if text == '' then
if uri then
if uri.path == '/' then uri.path = '' end
local port = ''
if uri.port then port = ':' .. uri.port end
text = mw.ustring.lower(uri.host or '') .. port .. (uri.relativePath or '')
-- Add <wbr> before _/.-# sequences
text = mw.ustring.gsub(text,"(/+)","<wbr/>%1") -- This entry MUST be the first. "<wbr/>" has a "/" in it, you know.
text = mw.ustring.gsub(text,"(%.+)","<wbr/>%1")
-- text = mw.ustring.gsub(text,"(%-+)","<wbr/>%1") -- DISABLED for now
text = mw.ustring.gsub(text,"(%#+)","<wbr/>%1")
text = mw.ustring.gsub(text,"(_+)","<wbr/>%1")
else -- URL is badly-formed, so just display whatever was passed in
text = url
end
end
return mw.ustring.format('<span class="url">[%s %s]</span>', url, text)
end
local function extractUrl(args)
for name, val in pairs(args) do
local url = name .. "=" .. val;
url = mw.ustring.gsub(url, '^[Hh][Tt][Tt][Pp]([Ss]?):(/?)([^/])', 'http%1://%3')
local uri = safeUri(url);
if uri and uri.host then
return url
end
end
end
function p.url(frame)
local templateArgs = frame.args
local parentArgs = frame:getParent().args
local url = templateArgs[1] or parentArgs[1] or ''
local text = templateArgs[2] or parentArgs[2]
if not text then
url = url or extractUrl(templateArgs) or extractUrl(parentArgs);
end
text = text or ''
return p._url(url, text)
end
return p
rinabsfwuna1sld0j4665lemudm713w
Πρότυπον:Επίσημος ιστότοπος
10
3388
36593
2025-12-15T19:29:18Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<span class="official website">{{URL|1={{{1|{{{URL|{{#property:P856}}}}}}}}|2={{{2|{{{name|{{#switch:{{{s}}}|y=Επίσημη ιστοσελίδα|yes=Επίσημη ιστοσελίδα|Επίσημον ιστοτόπον}}}}}}}}}}</span>{{#ifeq:{{{format}}}|flash|{{link note|note=Requires [[Adobe Flash Player]]}}}}{{#if:{{{1|{{{URL|{{#property:P856}}}}}}}}|{{#if:{{{mobile|}}}|({{URL|1={{{mobile}}}|2=Κινητό}})}}}}<noinclude> Κατηγορ...'
36593
wikitext
text/x-wiki
<span class="official website">{{URL|1={{{1|{{{URL|{{#property:P856}}}}}}}}|2={{{2|{{{name|{{#switch:{{{s}}}|y=Επίσημη ιστοσελίδα|yes=Επίσημη ιστοσελίδα|Επίσημον ιστοτόπον}}}}}}}}}}</span>{{#ifeq:{{{format}}}|flash|{{link note|note=Requires [[Adobe Flash Player]]}}}}{{#if:{{{1|{{{URL|{{#property:P856}}}}}}}}|{{#if:{{{mobile|}}}|({{URL|1={{{mobile}}}|2=Κινητό}})}}}}<noinclude>
[[Κατηγορίαν:Πρότυπα που αντλούν δεδομένα από Wikidata]]
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας]]
</noinclude>
1dje02ljq4qvde1yt8x7ohx8lbrl0vy
Πρότυπον:URL
10
3389
36594
2025-12-15T19:30:06Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#if:{{{1|}}}|<!-- --><span class="url"><!-- -->{{#ifeq:{{#titleparts:{{lc:x{{{1|}}}}}|1|1}}|{{lc:x{{{1|}}}}}|<!-- work-around when titleparts doesn't accept the URL and returns the full string without a capital: don't attempt to transform the displayed URL -->[{{#if:1|{{{1|}}}}} {{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}|{{#if:1|{{{1|}}}}}}}]<!-- These "#if:1" pseudo-tests (always true) allow trimming leading spaces in their text...'
36594
wikitext
text/x-wiki
<includeonly>{{#if:{{{1|}}}|<!--
--><span class="url"><!--
-->{{#ifeq:{{#titleparts:{{lc:x{{{1|}}}}}|1|1}}|{{lc:x{{{1|}}}}}|<!-- work-around when titleparts doesn't accept the URL and returns the full string without a capital: don't attempt to transform the displayed URL
-->[{{#if:1|{{{1|}}}}} {{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}|{{#if:1|{{{1|}}}}}}}]<!-- These "#if:1" pseudo-tests (always true) allow trimming leading spaces in their text parameter
-->|<!--
-->{{#switch:{{lc:{{#titleparts:{{{1|}}}|2}}}}
|https:/
|http:/
|ftp:/=<!-- Matches https:/ or http:/ or ftp:/
-->[{{#if:1|{{{1|}}}}} <!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}}
-->{{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}| <!-- This #if:1 allows trimming leading spaces in the specified display text : {{{2|}}}
-->{{lc:<!-- domain name in lowercase
-->{{#titleparts:{{{1|}}}|1|3}}<!--
-->}}<!--
-->{{#if:{{#titleparts:{{{1|}}}||4}}<!-- rest of the path
-->|/{{#titleparts:{{{1|}}}||4}}<!--
-->}}<!--
-->}}<!--
-->]<!--
-->|#default=<!-- Not https:/ or http:/ or ftp:/
-->[http://{{#if:1|{{{1|}}}}} <!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}}
-->{{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}| <!-- This #if:1 allows trimming leading spaces in the specified display text : {{{2|}}}
-->{{lc:<!-- domain name in lowercase
-->{{#titleparts:{{{1|}}}|1|1}}<!--
-->}}<!--
-->{{#if:{{#titleparts:{{{1|}}}||2}}<!-- rest of the path
-->|/{{#titleparts:{{{1|}}}||2}}<!--
-->}}<!--
-->}}<!--
-->]<!--
-->}}<!--
-->}}<!--
--></span><!--
-->|<!--
-->{{#if:{{{2|}}}|{{{2|}}}|<!--
-->{{tlx|URL|''example.com''|''optional display text''}}<!--
-->}}<!--
-->}}</includeonly><noinclude>{{documentation}}</noinclude>
ql8mnvfjovhdscbiu30icydanv1nr6y
Κατηγορίαν:Πρότυπα που αντλούν δεδομένα από Wikidata
14
3390
36595
2025-12-15T19:31:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πρότυπα|*]] [[Κατηγορίαν:Wikidata]]'
36595
wikitext
text/x-wiki
[[Κατηγορίαν:Πρότυπα|*]]
[[Κατηγορίαν:Wikidata]]
ktniicjn27o2nyd58513ib1gnjdx06m
Κατηγορίαν:Wikidata
14
3391
36596
2025-12-15T19:32:19Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{Commonscat|Wikidata}} [[Κατηγορίαν:Διαχείριση Βικιπαίδειας]]'
36596
wikitext
text/x-wiki
{{Commonscat|Wikidata}}
[[Κατηγορίαν:Διαχείριση Βικιπαίδειας]]
0j2bkdrn0w38mqbqcdav1lh2tn5s9gm
Module:Υπό-Συνομοσπονδία
828
3392
36597
2025-12-15T19:33:18Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.main() local wikidata = require('Module:WikidataOld') local owner = wikidata._formatStatements{ property='P127', rank='valid', displayformat='raw', numval=1 } if not owner then return nil end local id local entity = wikidata.getEntity(owner) for i, conf in ipairs{ 'Q375033', 'Q2019450', 'Q633389', 'Q297590', 'Q17047664', 'Q846598', 'Q1375117', 'Q1154453', 'Q168360', 'Q427061', 'Q1352284', 'Q169333', 'Q2299353', '...'
36597
Scribunto
text/plain
local p = {}
function p.main()
local wikidata = require('Module:WikidataOld')
local owner = wikidata._formatStatements{ property='P127', rank='valid', displayformat='raw', numval=1 }
if not owner then
return nil
end
local id
local entity = wikidata.getEntity(owner)
for i, conf in ipairs{ 'Q375033', 'Q2019450', 'Q633389', 'Q297590', 'Q17047664', 'Q846598', 'Q1375117', 'Q1154453', 'Q168360', 'Q427061', 'Q1352284', 'Q169333', 'Q2299353', 'Q1137026' } do
id = wikidata._formatStatements{ item=entity, property='P463', rank='valid', displayformat='raw', numval=1, targetvalue=conf }
if id then
break
end
end
if not id then
return nil
end
local sitelink = mw.wikibase.sitelink(id)
local label = mw.wikibase.label(id)
if sitelink and label and (sitelink ~= label) then
return "[["..sitelink.."|"..label.."]]"
elseif sitelink then
return "[["..sitelink.."]]"
elseif label then
return "[[d:" .. id .. "|" .. label .. "]]"
else
return "[[d:" .. id .. "|" .. id .. "]]"
end
return id
end
return p
fc65ae8w6nimpuuojzi2982rft5mr86
Module:Συνομοσπονδία
828
3393
36598
2025-12-15T19:34:20Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.main() local wikidata = require('Module:WikidataOld') local owner = wikidata._formatStatements{ property='P127', rank='valid', displayformat='raw', numval=1 } if not owner then return nil end local id local entity = wikidata.getEntity(owner) for i, conf in ipairs{ 'Q35572', 'Q83276', 'Q168360', 'Q160549', 'Q58733', 'Q180344' } do id = wikidata._formatStatements{ item=entity, property='P463', rank='valid', displ...'
36598
Scribunto
text/plain
local p = {}
function p.main()
local wikidata = require('Module:WikidataOld')
local owner = wikidata._formatStatements{ property='P127', rank='valid', displayformat='raw', numval=1 }
if not owner then
return nil
end
local id
local entity = wikidata.getEntity(owner)
for i, conf in ipairs{ 'Q35572', 'Q83276', 'Q168360', 'Q160549', 'Q58733', 'Q180344' } do
id = wikidata._formatStatements{ item=entity, property='P463', rank='valid', displayformat='raw', numval=1, targetvalue=conf }
if id then
break
end
end
if not id then
return nil
end
local sitelink = mw.wikibase.sitelink(id)
local label = mw.wikibase.label(id)
if sitelink and label and (sitelink ~= label) then
return "[["..sitelink.."|"..label.."]]"
elseif sitelink then
return "[["..sitelink.."]]"
elseif label then
return "[[d:" .. id .. "|" .. label .. "]]"
else
return "[[d:" .. id .. "|" .. id .. "]]"
end
return id
end
return p
hhb747suczzsyxxki0yw8k67oc33lnc
Module:Infobox/Localdata
828
3394
36599
2025-12-15T19:35:07Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local localdata = {} local wikidata = require('Module:Wikidata/Outils') local frame = mw.getCurrentFrame() local modulename = frame.args.nom local parent = frame:getParent() or frame local templatename = parent:getTitle() -- au cas où il soit différent du nom du module local params = parent.args -- fill-up global variable localdata using params for i, j in pairs(params) do if j and mw.text.trim(j) ~= '' then -- empty parameters are ignored...'
36599
Scribunto
text/plain
local localdata = {}
local wikidata = require('Module:Wikidata/Outils')
local frame = mw.getCurrentFrame()
local modulename = frame.args.nom
local parent = frame:getParent() or frame
local templatename = parent:getTitle() -- au cas où il soit différent du nom du module
local params = parent.args
-- fill-up global variable localdata using params
for i, j in pairs(params) do
if j and mw.text.trim(j) ~= '' then -- empty parameters are ignored
localdata[i] = j
end
end
localdata.templatename = templatename
localdata.modulename = modulename
-- load wikidata item:
localdata.item = wikidata.getEntity(localdata.wikidata)
return localdata
5wrcwax2s4sw02jryc53cu455luhpwl
Module:Biodata
828
3395
36600
2025-12-15T19:36:27Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local getArgs = require('Module:Arguments').getArgs local wikidata = require('Module:Wikidata') local lc = require('Module:LocationAndCountry') local join = require('Module:Separated entries')._main local StringUtils = require('Module:StringUtils') local GregorianDate = require('Module:GregorianDate') local Date = require('Module:Date') local function processDateDateRefAndPlace(iDate, iDateRefs, iPlace, prefix) local out = '' if not...'
36600
Scribunto
text/plain
local p = {}
local getArgs = require('Module:Arguments').getArgs
local wikidata = require('Module:Wikidata')
local lc = require('Module:LocationAndCountry')
local join = require('Module:Separated entries')._main
local StringUtils = require('Module:StringUtils')
local GregorianDate = require('Module:GregorianDate')
local Date = require('Module:Date')
local function processDateDateRefAndPlace(iDate, iDateRefs, iPlace, prefix)
local out = ''
if not StringUtils.__isEmpty(iDate) or not StringUtils.__isEmpty(iPlaced) then
out = out .. prefix
end
if not StringUtils.__isEmpty(iDate) then
out = out .. iDate
if StringUtils.__isEmpty(iPlace) and not StringUtils.__isEmpty(iDateRefs) then
out = out .. iDateRefs
end
end
if not StringUtils.__isEmpty(iPlace) then
out = out .. ',' .. (not StringUtils.__isEmpty(iDateRefs) and iDateRefs or '') .. ' ' .. iPlace
end
if out == '' then return nil end
return out
end
p.fromParams = function(birthDate, birthDateRefs, birthPlace, deathDate, deathDateRefs, deathPlace, deathIntro)
local birthInfo = processDateDateRefAndPlace(birthDate, birthDateRefs, birthPlace, 'n. ')
local deathInfo = processDateDateRefAndPlace(deathDate, deathDateRefs, deathPlace, deathIntro or 'd. ')
return join({birthInfo, deathInfo, separator = mw.text.decode(' – ', true)})
end
p.fromArray = function(args)
local birthDate = args[1]
local birthDateRefs = nil
local wikidataBDate = nil
local birthTs = nil
local deathTs = nil
local q = args['q']
if not args[1] then
wikidataBDate = wikidata.findDateValues('P569', q)
if wikidataBDate and wikidataBDate[1] then
birthDate = GregorianDate.displayDualDateIfInInterval(wikidataBDate[1], true)
birthDateRefs = wikidata.outputReferences(wikidataBDate[1].claim)
birthTs = DateUtils.parseWikidataDate(wikidataBDate[1].claim.mainsnak.datavalue.value.time, wikidataBDate[1].claim.mainsnak.datavalue.value.precision)
else
birthDate = "[[Κατηγορίαν:Άγνωστο έτος γεννήσεως]] ?"
end
end
local birthPlace = args[2] or lc.displayFromParams('P19', q, birthTs or 'P569', 1, nil)
local deathDate = args[3]
local deathIntro = 'd. '
if not args[3] then
local wikidataDDate = wikidata.findDateValues('P570', q)
if wikidataDDate then
for _,eachDateCandidate in ipairs(wikidataDDate) do
if eachDateCandidate and eachDateCandidate.claim.mainsnak.snaktype == 'value' then
deathDate = GregorianDate.displayDualDateIfInInterval(eachDateCandidate, true)
deathDateRefs = wikidata.outputReferences(eachDateCandidate.claim)
deathTs = DateUtils.parseWikidataDate(eachDateCandidate.claim.mainsnak.datavalue.value.time, eachDateCandidate.claim.mainsnak.datavalue.value.precision)
break
elseif eachDateCandidate.claim.mainsnak.snaktype == 'somevalue' then
deathDate = "[[Κατηγορίαν:Άγνωστο έτος θανάτου]] ?"
break
end
end
end
if not deathDate then
local wikidataDisappDate = wikidata.findDateValues('P746', q)
if wikidataDisappDate then
for _,eachDateCandidate in ipairs(wikidataDisappDate) do
if eachDateCandidate and eachDateCandidate.claim.mainsnak.snaktype == 'value' then
mw.logObject(eachDateCandidate, '[Biodata] disapp date')
deathDate = GregorianDate.displayDualDateIfInInterval(eachDateCandidate, true)
deathDateRefs = wikidata.outputReferences(eachDateCandidate.claim)
deathTs = DateUtils.parseWikidataDate(eachDateCandidate.claim.mainsnak.datavalue.value.time, eachDateCandidate.claim.mainsnak.datavalue.value.precision)
deathIntro = 'disp. '
break
end
end
end
end
if not deathDate and wikidataDDate and wikidataDDate[1] and wikidataDDate[1].year < (os.date("*t").year - 120) then
deathDate = "[[Κατηγορίαν:Άγνωστο έτος θανάτου]] ?"
end
end
local deathPlace = args[4] or lc.displayFromParams('P20', q, deathTs or 'P570', 1, nil)
return p.fromParams(birthDate, birthDateRefs, birthPlace, deathDate, deathDateRefs, deathPlace, deathIntro)
end
p.fromFrame = function(frame)
local args = getArgs(frame)
return p.fromArray(args)
end
return p
kzc68x9su86ehosq2vgwmg9g50pnj83
Module:Separated entries
828
3396
36601
2025-12-15T19:37:33Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module takes positional parameters as input and concatenates them with -- an optional separator. The final separator (the "conjunction") can be -- specified independently, enabling natural-language lists like -- "foo, bar, baz and qux". local compressSparseArray = require('Module:TableTools').compressSparseArray local p = {} function p._main(args) local separator = args.separator -- Decode (convert to Unicode) HTML escape sequences, su...'
36601
Scribunto
text/plain
-- This module takes positional parameters as input and concatenates them with
-- an optional separator. The final separator (the "conjunction") can be
-- specified independently, enabling natural-language lists like
-- "foo, bar, baz and qux".
local compressSparseArray = require('Module:TableTools').compressSparseArray
local p = {}
function p._main(args)
local separator = args.separator
-- Decode (convert to Unicode) HTML escape sequences, such as " " for space.
and mw.text.decode(args.separator) or ''
local conjunction = args.conjunction and mw.text.decode(args.conjunction) or separator
-- Discard named parameters.
local values = compressSparseArray(args)
return mw.text.listToText(values, separator, conjunction)
end
local function makeInvokeFunction(separator, conjunction)
return function (frame)
local args = require('Module:Arguments').getArgs(frame)
args.separator = separator or args.separator
args.conjunction = conjunction or args.conjunction
return p._main(args)
end
end
p.main = makeInvokeFunction()
p.br = makeInvokeFunction('<br />')
p.comma = makeInvokeFunction(mw.message.new('comma-separator'):plain())
return p
llc3d3c78nhgnxk4nekr2o428a8k5qt
Module:Commons link
828
3397
36602
2025-12-15T19:38:38Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require('strict') -- Module to find commons galleries and categories based on wikidata entries local getArgs = require('Module:Arguments').getArgs local yesNo = require('Module:Yesno') local generateWarning = require('Module:If preview')._warning local p = {} -- Check if string is a valid QID -- Argument: QID to check -- Returns: valid (bool) local function _validQID(qid) return qid and mw.ustring.find(qid,"^[Qq]%d+$") end -- Check if string is...'
36602
Scribunto
text/plain
require('strict')
-- Module to find commons galleries and categories based on wikidata entries
local getArgs = require('Module:Arguments').getArgs
local yesNo = require('Module:Yesno')
local generateWarning = require('Module:If preview')._warning
local p = {}
-- Check if string is a valid QID
-- Argument: QID to check
-- Returns: valid (bool)
local function _validQID(qid)
return qid and mw.ustring.find(qid,"^[Qq]%d+$")
end
-- Check if string is a valid wikidata property string
-- Argument: property string to check
-- Returns: valid (bool)
local function _validProp(prop)
return prop and mw.ustring.find(prop,"^[Pp]%d+$")
end
local function _lcfirst(s)
return mw.ustring.lower(mw.ustring.sub(s,1,1))..mw.ustring.sub(s,2)
end
-- Format displayed linktext
-- Arguments:
-- s = string to display
-- formatting = formatting table:
-- formatting.linktext = if defined, override s
-- formatting.lcfirst = lower case the first letter in display
-- formatting.bold = whether to bold the display
-- formatting.italic = whether to italicize the display
-- formatting.nowrap = set nowrapping
-- Returns:
-- formatted string
local function _formatResult(s, formatting)
local resultVal = formatting.linktext or s
if formatting.lcfirst then
resultVal = _lcfirst(resultVal)
end
local style = ""
if formatting.italic then style = "font-style:italic; " end
if formatting.bold then style = style.."font-weight:bold; " end
if formatting.nowrap then style = style.."white-space:nowrap; " end
if style ~= "" then
resultVal = '<span style="'..mw.text.trim(style)..'">'..resultVal..'</span>'
end
return resultVal
end
-- Get title, namespace, and QID for current page
-- Arguments:
-- qid = testing only: get title of alternative page with QID=qid
-- nsQid = whether to return the ns of the qid page or current
-- Returns:
-- title, namespace (string), qid of current page (or test page)
local function _getTitleQID(qid,nsQid)
local titleObject = mw.title.getCurrentTitle()
-- look up qid for current page (if not testing)
local nsText = mw.ustring.gsub(titleObject.nsText,"_"," ")
if not _validQID(qid) then
qid = mw.wikibase.getEntityIdForCurrentPage()
return titleObject.text, nsText, qid
end
-- testing-only path: given a qid, determine title
-- always use namespace from current page (to suppress tracking cat)
qid = qid:upper()
local title = mw.wikibase.getSitelink(qid) or ""
-- strip any namespace from sitelink
local firstColon = mw.ustring.find(title,':',1,true)
local qidNsText = ""
if firstColon then
qidNsText = mw.ustring.sub(title,1,firstColon-1)
title = mw.ustring.sub(title,firstColon+1)
end
if nsQid then
return title, qidNsText, qid
end
return title, nsText, qid
end
-- Lookup Commons gallery in Wikidata
-- Arguments:
-- qid = QID of current article
-- fetch = whether to lookup Commons sitelink (bool)
-- commonsSitelink = default value for Commons sitelink
-- Returns:
-- categoryLink = name of Commons category, nil if nothing is found
-- consistent = multiple wikidata fields are examined: are they consistent?
-- commonsSitelink = commons sitelink for current article
local function _lookupGallery(qid,fetch,commonsSitelink)
if not _validQID(qid) then
return nil, true, nil
end
qid = qid:upper()
local galleryLink = nil
local consistent = true
-- look up commons sitelink for article, use if not category
if fetch then
commonsSitelink = mw.wikibase.getSitelink(qid,"commonswiki") or commonsSitelink
end
if commonsSitelink and mw.ustring.sub(commonsSitelink,1,9) ~= "Category:" then
galleryLink = commonsSitelink
end
-- P935 is the "commons gallery" property for this article
local P935 = mw.wikibase.getBestStatements(qid, "P935")[1]
if P935 and P935.mainsnak.datavalue then
local gallery = P935.mainsnak.datavalue.value
if galleryLink and galleryLink ~= gallery then
consistent = false
else
galleryLink = gallery
end
end
return galleryLink, consistent, commonsSitelink
end
-- Find fallback category by looking up Commons sitelink of different page
-- Arguments:
-- qid = QID for current article
-- property = property that refers to other article whose sitelink to return
-- Returns: either category-stripped name of article, or nil
local function _lookupFallback(qid,property)
if not _validQID(qid) or not _validProp(property) then
return nil
end
qid = qid:upper()
property = property:upper()
-- If property exists on current article, get value (other article qid)
local value = mw.wikibase.getBestStatements(qid, property)[1]
if value and value.mainsnak.datavalue and value.mainsnak.datavalue.value.id then
-- Look up Commons sitelink of other article
local sitelink = mw.wikibase.getSitelink(value.mainsnak.datavalue.value.id,"commonswiki")
-- Check to see if it starts with "Category:". If so, strip it and return
if sitelink and mw.ustring.sub(sitelink,1,9) == "Category:" then
return mw.ustring.sub(sitelink,10)
end
end
return nil
end
-- Find Commons category by looking in wikidata
-- Arguments:
-- qid = QID of current article
-- fetch = whether to lookup Commons sitelink (bool)
-- commonsSitelink = default value for Commons sitelink
-- Returns:
-- categoryLink = name of Commons category, nil if nothing is found
-- consistent = multiple wikidata fields are examined: are they consistent?
-- commonsSitelink = commons sitelink for current article
local function _lookupCategory(qid, fetch, commonsSitelink)
if not _validQID(qid) then
return nil, true, nil
end
qid = qid:upper()
local categoryLink = nil
local consistent = true
-- look up commons sitelink for article, use if starts with "Category:"
if fetch then
commonsSitelink = mw.wikibase.getSitelink(qid,"commonswiki") or commonsSitelink
end
if commonsSitelink and mw.ustring.sub(commonsSitelink,1,9) == "Category:" then
categoryLink = mw.ustring.sub(commonsSitelink,10)
end
-- P910 is the "topic's main category". Look for commons sitelink there
local fallback = _lookupFallback(qid,"P910")
if fallback then
if categoryLink and categoryLink ~= fallback then
consistent = false
qid = nil
else
categoryLink = fallback
end
end
-- P1754 is the "list's main category". Look for commons sitelink there
fallback = _lookupFallback(qid,"P1754")
if fallback then
if categoryLink and categoryLink ~= fallback then
consistent = false
qid = nil
else
categoryLink = fallback
end
end
-- P373 is the "commons category" property for this article. This is
-- a low-quality field, so should only be used as a last resort.
if categoryLink == nil and _validQID(qid) then
local P373 = mw.wikibase.getBestStatements(qid, "P373")[1]
if P373 and P373.mainsnak.datavalue then
categoryLink = P373.mainsnak.datavalue.value
consistent = true -- P373 is never used if anything else is available
end
end
return categoryLink, consistent, commonsSitelink
end
-- Does the article have a Commons gallery, and is it consistent?
-- Arguments:
-- qid = QID to lookup in wikidata (for testing only)
-- Returns:
-- filename at Commons, bool: is wikidata consistent for this article?
function p._hasGalleryConsistent(qid)
local wp_title, wp_ns
wp_title, wp_ns, qid = _getTitleQID(qid)
return _lookupGallery(qid,true)
end
-- Does the article have a corresponding Commons gallery?
-- Arguments:
-- qid = QID to lookup in wikidata (for testing only)
-- Returns:
-- filename at Commons if so, false if not
function p._hasGallery(qid)
local galleryLink, consistent = p._hasGalleryConsistent(qid)
return consistent and galleryLink
end
-- Does the article have a Commons category? Is wikidata consistent for that?
-- Arguments:
-- qid = QID to lookup in wikidata (for testing only)
-- prefix = whether to add "Category:" to return string (default true)
-- Returns:
-- filename at Commons, bool: consistent
function p._hasCategoryConsistent(qid,prefix)
if prefix == nil then
prefix = true
end
local wp_title, wp_ns
wp_title, wp_ns, qid = _getTitleQID(qid)
local categoryLink, consistent = _lookupCategory(qid,true)
if categoryLink and prefix then
categoryLink = "Category:"..categoryLink
end
return categoryLink, consistent
end
-- Does the article have a corresponding Commons category?
-- Arguments:
-- qid = QID to lookup in wikidata (for testing only)
-- prefix = whether to add "Category:" to return string (default true)
-- Returns:
-- filename at Commons if so, blank if not
function p._hasCategory(qid,prefix)
local categoryLink, consistent = p._hasCategoryConsistent(qid,prefix)
return consistent and categoryLink
end
-- Create Commons link corresponding to current article
-- Arguments:
-- namespace = namespace in Commons ("" for galleries)
-- default = use as Commons link, don't access wikidata
-- search = string to search for
-- fallback = string to search for if wikidata fails
-- formatting = formatting parameters
-- qid = QID to lookup in wikidata (for testing only)
-- Returns:
-- formatted wikilink to Commons in specified namespace
function p._getCommons(namespace,default,search,fallback,formatting,qid)
local nsColon
if not namespace or namespace == "" then
nsColon = ""
else
nsColon = namespace..":"
end
if default then
return "[[Commons:"..nsColon..default.."|".._formatResult(default,formatting).."]]"
end
if search then
return "[[Commons:Special:Search/"..nsColon..search.."|".._formatResult(search,formatting).."]]"
end
local wp_title, wp_ns
wp_title, wp_ns, qid = _getTitleQID(qid)
local commonsLink = nil
local consistent = true
if nsColon == "" then
commonsLink, consistent = _lookupGallery(qid,true)
elseif namespace:lower() == "category" then
commonsLink, consistent = _lookupCategory(qid,true)
end
-- use wikidata if consistent
if commonsLink and consistent then
return "[[Commons:"..nsColon..commonsLink.."|".._formatResult(commonsLink,formatting).."]]"
end
-- if not consistent, fall back to search and add to tracking cat
-- construct default result (which searches for title)
local searchResult = "[[Commons:Special:Search/"..nsColon..(fallback or wp_title)
.."|".._formatResult(fallback or wp_title,formatting).."]]"
if not consistent and wp_ns == "" then
local friendlyNS
if nsColon == "" then
friendlyNS = "gallery"
else
friendlyNS = namespace:lower()
end
searchResult = searchResult.."[[Category:Inconsistent wikidata for Commons "..friendlyNS.."]]"
end
return searchResult
end
-- Returns "best" Commons link: first look for gallery, then try category
-- Arguments:
-- default = use as Commons link, don't access wikidata
-- search = string to search for
-- fallback = string to search for if wikidata lookup fails
-- formatting = formatting parameters
-- qid = QID to lookup in wikidata (for testing only)
-- Returns:
-- formatted wikilink to Commons "best" landing page
function p._getGalleryOrCategory(default, search, fallback, formatting, qid)
if default then
return "[[Commons:"..default.."|".._formatResult(default,formatting).."]]"
end
if search then
return "[[Commons:Special:Search/"..search.."|".._formatResult(search,formatting).."]]"
end
local wp_title, wp_ns
wp_title, wp_ns, qid = _getTitleQID(qid)
local trackingCats = ""
local galleryLink, consistent, commonsSitelink = _lookupGallery(qid,true)
-- use wikidata if either sitelink or P935 exist, and they both agree
if galleryLink and consistent then
return "[[Commons:"..galleryLink.."|".._formatResult(galleryLink,formatting).."]]"
end
if not consistent and wp_ns == "" then
trackingCats = "[[Category:Inconsistent wikidata for Commons gallery]]"
end
-- if gallery is not good, fall back looking for category
local categoryLink
categoryLink, consistent = _lookupCategory(qid,false,commonsSitelink)
if categoryLink and consistent then
return "[[Commons:Category:"..categoryLink.."|".._formatResult(categoryLink,formatting).."]]"..trackingCats
end
if not consistent and wp_ns == "" then
trackingCats = trackingCats.."[[Category:Inconsistent wikidata for Commons category]]"
end
-- return search result looking for title as last attempt
return "[[Commons:Special:Search/" .. (fallback or wp_title) ..
"|" .. _formatResult(fallback or wp_title,formatting) .. "]]" .. trackingCats
end
-- Return link(s) Commons gallery, or category, or both from wikidata
-- Arguments:
-- defaultGallery = default gallery link to use, instead of wikidata
-- defaultCategory = default category link to use, instead of wikidata
-- categoryText = if both gallery and category, text to use in category link ("category" by default)
-- oneSearch = only emit one search result
-- formatting = formatting parameters
-- qid = qid of page to lookup in wikidata (testing only)
function p._getGalleryAndCategory(defaultGallery, defaultCategory,
categoryText, oneSearch, formatting, qid
)
local wp_title, wp_ns
wp_title, wp_ns, qid = _getTitleQID(qid)
categoryText = categoryText or "category"
local trackingCats = ""
local galleryLink, galleryConsistent
local commonsSitelink = nil
if defaultGallery then
galleryLink = defaultGallery
galleryConsistent = true
else
galleryLink, galleryConsistent, commonsSitelink = _lookupGallery(qid,true)
end
local galleryGood = galleryLink and galleryConsistent
if not galleryConsistent and wp_ns == "" then
trackingCats = "[[Category:Inconsistent wikidata for Commons gallery]]"
end
local categoryLink, categoryConsistent
if defaultCategory then
categoryLink = defaultCategory
categoryConsistent = true
else
categoryLink, categoryConsistent = _lookupCategory(qid,defaultGallery,commonsSitelink)
end
local categoryGood = categoryLink and categoryConsistent
if not categoryConsistent and wp_ns == "" then
trackingCats = trackingCats.."[[Category:Inconsistent wikidata for Commons category]]"
end
local firstLink
-- construct default result (which searches for title)
local searchResult = "[[Commons:Special:Search/"..wp_title.."|".._formatResult(wp_title,formatting).."]]"
if not oneSearch then
searchResult = searchResult.." ([[Commons:Special:Search/Category:"..wp_title.."|"..categoryText.."]])"
end
local linkText = nil
if galleryGood then
firstLink = galleryLink
linkText = galleryLink
elseif categoryGood then
firstLink = "Category:"..categoryLink
linkText = categoryLink
else
return searchResult..trackingCats
end
local resultVal = "[[Commons:"..firstLink.."|".._formatResult(linkText,formatting).."]]"
if galleryGood and categoryGood then
resultVal = resultVal.." ([[Commons:Category:"..categoryLink.."|"..categoryText.."]])"
end
return resultVal..trackingCats
end
-- Compare two titles with their namespaces stripped
local function titleMatch(s1,s2)
s1 = s1 or ""
s2 = s2 or ""
s1 = mw.ustring.gsub(s1,"^[^:]+:","")
s2 = mw.ustring.gsub(s2,"^[^:]+:","")
return s1 == s2
end
local galleryTrackingCats = {
commons_link_on_wikidata = '[[Category:Commons link is on Wikidata]]',
commons_link_defined_as_pagename = '[[Category:Commons link is defined as the pagename]]',
commons_link_locally_defined = '[[Category:Commons link is locally defined]]',
commons_link_from_wikidata = '[[Category:Commons link from Wikidata]]',
commons_link_is_pagename = '[[Category:Commons link is the pagename]]',
inconsistent = '[[Category:Inconsistent wikidata for Commons gallery]]'
}
local categoryTrackingCats = {
commons_link_on_wikidata = '[[Category:Commons category link is on Wikidata]]',
commons_link_defined_as_pagename = '[[Category:Commons category link is defined as the pagename]]',
commons_link_locally_defined = '[[Category:Commons category link is locally defined]]',
commons_link_from_wikidata = '[[Category:Commons category link from Wikidata]]',
commons_link_is_pagename = '[[Category:Commons category link is the pagename]]',
inconsistent = '[[Category:Inconsistent wikidata for Commons category]]'
}
local function selectTrackingCat(trackingCats,wikidata,consistent,default,title)
if not consistent then
return trackingCats.inconsistent
end
if default then
-- construct warning message
if default == wikidata then
return trackingCats.commons_link_on_wikidata
end
local warning = ""
if wikidata then
warning = generateWarning({
"Commons link does not match Wikidata – [[Template:Commons_category#Resolving_discrepancies|please check]]"
})
end
if titleMatch(default,title) then
return trackingCats.commons_link_defined_as_pagename .. warning
end
return trackingCats.commons_link_locally_defined .. warning
end
if wikidata then
return trackingCats.commons_link_from_wikidata
end
return trackingCats.commons_link_is_pagename
end
-- Figure out tracking categories and editor warnings
-- Arguments:
-- default = Commons link argument passed to template
-- fetchGallery = whether to fetch a gallery from Wikidata
-- fetchCategory = whether to fetch a category from Wikidata
-- qid = force a qid for testing
-- Returns:
-- tracking category and possible user warning
--
-- Note: the logic for the tracking is quite different than the logic
-- for generating Commons links (above). Thus, it is separated into another
-- function for code clarity and maintainability. This should not seriously
-- affect performance: server time is dominated by fetching wikidata entities,
-- and those entities should be cached and shared between the Commons generating
-- code and this tracking code.
function p._tracking(default, fetchGallery, fetchCategory, qid)
local title, wp_ns, wp_qid = _getTitleQID(qid,true)
if wp_ns ~= "" then
title = wp_ns..":"..title
end
-- only track if test or namespace=article or namespace=category
if not (qid or wp_ns == "" or wp_ns == "Category") then
return ""
end
-- determine title and namespace of wikidata and wp article
local wikidata = nil
local consistent = nil
-- Tracking code works for all 4 cases of states of fetchGallery/Category
-- fetchGallery takes precedence
if fetchGallery then
wikidata, consistent = p._hasGalleryConsistent(qid)
if default or not fetchCategory or (consistent and wikidata) then
return selectTrackingCat(galleryTrackingCats,wikidata,consistent,
default,title)
end
end
if fetchCategory then
local cat_wikidata, cat_consistent = p._hasCategoryConsistent(qid,true)
if not fetchGallery or (cat_consistent and cat_wikidata) then
return selectTrackingCat(categoryTrackingCats,cat_wikidata,
cat_consistent,default,title)
end
return selectTrackingCat(galleryTrackingCats,wikidata,consistent,
default,title)
end
return "" -- nothing fetched, nothing tracked
end
local function _createFormatting(args)
local formatting = {}
formatting.linktext = args.linktext
formatting.lcfirst = yesNo(args.lcfirst)
formatting.bold = yesNo(args.bold)
formatting.italic = yesNo(args.italic)
formatting.nowrap = yesNo(args.nowrap)
return formatting
end
-- Testing-only entry point for _getTitleQID
function p.getTitleQID(frame)
local args = getArgs(frame,{frameOnly=true,parentOnly=false,parentFirst=false})
local text, ns, qid = _getTitleQID(args[1],args[2])
return text..","..ns..","..(qid or "nil")
end
-- Testing-only entry point for _lookupFallback
function p.lookupFallback(frame)
local args = getArgs(frame,{frameOnly=true,parentOnly=false,parentFirst=false})
local fallback = _lookupFallback(args[1],args[2])
return fallback or "nil"
end
-- Find the Commons gallery page associated with article
function p.getGallery(frame)
local args = getArgs(frame,{frameOnly=true,parentOnly=false,parentFirst=false})
return p._getCommons("",args[1],args.search,args.fallback,_createFormatting(args),args.qid)
end
-- Find the Commons category page associated with article
function p.getCategory(frame)
local args = getArgs(frame,{frameOnly=true,parentOnly=false,parentFirst=false})
local retval = p._getCommons("Category", args[1],
args.search, args.fallback, _createFormatting(args), args.qid
)
if args.tracking then
local default = nil
if args[1] then
default = "Category:"..args[1]
end
retval = retval..p._tracking(default, false, true, args.qid)
end
return retval
end
function p.getGalleryOrCategory(frame)
local args = getArgs(frame,{frameOnly=true,parentOnly=false,parentFirst=false})
local retval = p._getGalleryOrCategory(
args[1], args.search, args.fallback, _createFormatting(args), args.qid
)
if args.tracking then
retval = retval..p._tracking(args[1],true,true,args.qid)
end
return retval
end
function p.hasGallery(frame)
local args = getArgs(frame,{frameOnly=true,parentOnly=false,parentFirst=false})
return p._hasGallery(args.qid) or ""
end
function p.hasCategory(frame)
local args = getArgs(frame,{frameOnly=true,parentOnly=false,parentFirst=false})
return p._hasCategory(args.qid) or ""
end
function p.hasGalleryOrCategory(frame)
local args = getArgs(frame,{frameOnly=true,parentOnly=false,parentFirst=false})
return p._hasGallery(args.qid) or p._hasCategory(args.qid) or ""
end
function p.getGalleryAndCategory(frame)
local args = getArgs(frame,{frameOnly=true,parentOnly=false,parentFirst=false})
return p._getGalleryAndCategory(args[1], args[2],
args.categoryText, args.oneSearch, _createFormatting(args), args.qid)
end
function p.tracking(frame)
local args = getArgs(frame,{frameOnly=true,parentOnly=false,parentFirst=false})
return p._tracking(args[1], args.fetchGallery, args.fetchCategory, args.qid)
end
return p
c0s58ps5rin0efzvudu2ppwoadseuva
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά VIAF
14
3398
36604
2025-12-15T19:40:04Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} [[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]'
36604
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
de8k88nxnjbq51i7qjh9e7201rfjkw5
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων
14
3399
36605
2025-12-15T19:41:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} [[Κατηγορίαν:Κατηγορίες ανίχνευσης]]'
36605
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Κατηγορίες ανίχνευσης]]
5hsrbyg2owudxfnhq3vn49ajsma9jwo
Κατηγορίαν:Κατηγορίες ανίχνευσης
14
3400
36606
2025-12-15T19:41:58Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '[[Κατηγορίαν:Διαχείριση Βικιπαίδειας]]'
36606
wikitext
text/x-wiki
[[Κατηγορίαν:Διαχείριση Βικιπαίδειας]]
fgjtbb4va2sciz6zxjlkqtj82sjimsi
Κατηγορίαν:Κρυμμέν κατηγορίας
14
3401
36608
36607
2025-12-15T19:43:49Z
Εὐθυμένης
2777
36608
wikitext
text/x-wiki
{{DEFAULTSORT:Κρυμμεν κατηγοριας}}
{{hiddencat}}
{{CategoryTOC}}
[[Κατηγορίαν:Διαχείριση Βικιπαίδειας|κρυμμεν κατηγοριας]]
f6qrhwjpep6t1oqxik3lpjoxwg5qur0
Πρότυπον:CategoryTOC
10
3402
36609
2025-12-15T19:44:39Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{| role="navigation" border="0" align="center" class="plainlinks" |- | align="center" | '''Ευρετήριο:''' | align="center" | [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Α}} Α] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Β}} Β] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Γ}} Γ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Δ}} Δ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ε}} Ε] [{{...'
36609
wikitext
text/x-wiki
{| role="navigation" border="0" align="center" class="plainlinks"
|-
| align="center" | '''Ευρετήριο:'''
| align="center" | [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Α}} Α] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Β}} Β] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Γ}} Γ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Δ}} Δ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ε}} Ε] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ζ}} Ζ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Η}} Η] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Θ}} Θ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ι}} Ι] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Κ}} Κ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Λ}} Λ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Μ}} Μ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ν}} Ν] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ξ}} Ξ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ο}} Ο] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Π}} Π] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ρ}} Ρ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Σ}} Σ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Τ}} Τ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Υ}} Υ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Φ}} Φ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Χ}} Χ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ψ}} Ψ] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Ω}} Ω]
|-
| align="center" | [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}}} Αρχή]
| align="center" | [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=A}} A] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=B}} B] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=C}} C] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=D}} D] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=E}} E] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=F}} F] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=G}} G] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=H}} H] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=I}} I] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=J}} J] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=K}} K] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=L}} L] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=M}} M] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=N}} N] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=O}} O] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=P}} P] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Q}} Q] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=R}} R] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=S}} S] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=T}} T] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=U}} U] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=V}} V] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=W}} W] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=X}} X] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Y}} Y] [{{SERVER}}{{localurl:{{NAMESPACE}}:{{PAGENAME}}|from=Z}} Z]
|}<noinclude>
{{documentation | content =
== Χρήση ==
Αυτό το πρότυπο προσθέτει έναν [[Πίνακας περιεχομένων|πίνακα περιεχομένων]] (TOC) σε μια [[Βικιπαίδεια:Κατηγοριοποίηση|σελίδα κατηγορίας]]. Θα πρέπει να προστίθεται ''μόνο σε σελίδες κατηγοριών και δεν πρέπει να χρησιμοποιείται για κατηγορίες που περιέχουν λιγότερες από 200 σελίδες''.
== TemplateData ==
{{TemplateData header}}
<templatedata>
{
"params": {},
"description": "Προσθέτει έναν πίνακα περιεχομένων (TOC) σε μια σελίδα κατηγορίας.",
"format": "inline"
}
</templatedata>}}
[[Κατηγορίαν:Πρότυπα κατηγοριών|{{PAGENAME}}]]
</noinclude>
hzu1djbfqjv2nzuzkj54k5flwze1v1i
Module:Βασική ημερομηνία
828
3403
36610
2025-12-15T19:55:31Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- en développement (à éventuellement généraliser et intégrer dans Module:Wikidata) local wikidata = require( 'Module:Wikidata') local formatdate = require( 'Module:Date') local h = require( 'Module:Wikidata/Dates') local p = {} function p.test(frame) return h.keydate(frame.args['event']) end function p.keydate(frame) -- should be possible to provide a list of "fallback" events event = string.upper(frame.args[1])-- to do: make it possible...'
36610
Scribunto
text/plain
-- en développement (à éventuellement généraliser et intégrer dans Module:Wikidata)
local wikidata = require( 'Module:Wikidata')
local formatdate = require( 'Module:Date')
local h = require( 'Module:Wikidata/Dates')
local p = {}
function p.test(frame)
return h.keydate(frame.args['event'])
end
function p.keydate(frame) -- should be possible to provide a list of "fallback" events
event = string.upper(frame.args[1])-- to do: make it possible to provide a list of "fallback" events
claims = wikidata.getClaims({property = 'p793', targetvalue = event})
if not claims then
return nil
end
datetable = {}
for i, j in pairs(claims) do
if j.qualifiers then
if j.qualifiers['p585'] then --property:date
for k, l in pairs(j.qualifiers['p585']) do
table.insert(datetable, {id= wikidata.getDatavalue(l, 'raw'), value = wikidata.getDatavalue(l)})
end
elseif j.qualifiers['p580'] then --property:date de début
if j.qualifiers['p582'] then -- if start date and end date in the same claim, they must be unique
table.insert(datetable, {id= wikidata.getDatavalue(j.qualifiers['p580'][0], 'raw'), value = wikidata.getDatavalue(j.qualifiers['p580'][0]) .. '-' .. wikidata.getDatavalue(j.qualifiers['p582'][0])})
else
for k, l in pairs(j.qualifiers['p580']) do
table.insert(datetable, {id= wikidata.getDatavalue(l, 'raw'), value = 'à partir de : ' .. wikidata.getDatavalue(l)})
end
end
elseif j.qualifiers['p582'] then --property:date de fin
for k, l in pairs(j.qualifiers['p582']) do
table.insert(datetable, {id= wikidata.getDatavalue(l, 'raw'), value = 'jusqu\'à ' .. wikidata.getDatavalue(l)})
end
end
end
end
datetext = ''
table.sort(datetable, function(a,b) return a.id < b.id end)
finaltable = {}
for i, j in pairs(datetable) do
table.insert(finaltable, j.value)
end
return mw.text.listToText(finaltable)
end
return p
tick4qcz2jy654zydyocjth8nmn6zex
Module:Wikidata/getData
828
3404
36611
2025-12-15T19:56:30Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local datequalifiers = {'P585', 'P571', 'P580', 'P582'} local wd = require "Module:Wikidata" -- local datemod = require "Module:Date complexe" local tools = require "Module:Tools" local function notSpecial(claim) return not(wd.isSpecial(claim.mainsnak)) end local function hastargetvalue(claim, targets) -- retourne true si la valeur est dans la liste des target, ou si c'est une valeur spéciale filtrée séparément par excludespecial...'
36611
Scribunto
text/plain
local p = {}
local datequalifiers = {'P585', 'P571', 'P580', 'P582'}
local wd = require "Module:Wikidata"
-- local datemod = require "Module:Date complexe"
local tools = require "Module:Tools"
local function notSpecial(claim)
return not(wd.isSpecial(claim.mainsnak))
end
local function hastargetvalue(claim, targets) -- retourne true si la valeur est dans la liste des target, ou si c'est une valeur spéciale filtrée séparément par excludespecial
local id = wd.getMainId(claim)
local targets = tools.splitStr(targets)
return wd.isHere(targets, id) or wd.isSpecial(claim.mainsnak)
end
local function excludevalues(claim, values) -- true si la valeur n'est pas dans la liste, ou si c'est une valeur spéciale (filtrée à part par excludespecial)
return wd.isSpecial(claim.mainsnak) or not ( hastargetvalue(claim, values) )
end
local function bestranked(claims)
if not claims then
return nil
end
local preferred, normal = {}, {}
for i, j in pairs(claims) do
if j.rank == 'preferred' then
table.insert(preferred, j)
elseif j.rank == 'normal' then
table.insert(normal, j)
end
end
if #preferred > 0 then
return preferred
else
return normal
end
end
local function withrank(claims, target)
if target == 'best' then
return bestranked(claims)
end
local newclaims = {}
for pos, claim in pairs(claims) do
if target == 'valid' then
if claim.rank ~= 'deprecated' then
table.insert(newclaims, claim)
end
elseif claim.rank == target then
table.insert(newclaims, claim)
end
end
return newclaims
end
function p.hasqualifier(claim, acceptedqualifs, acceptedvals, excludequalifiervalues)
local claimqualifs = claim.qualifiers
if (not claimqualifs) then
return false
end
acceptedqualifs = wd.splitStr(acceptedqualifs)
acceptedvals = wd.splitStr( acceptedvals)
local function ok(qualif) -- vérification pour un qualificatif individuel
if not claimqualifs[qualif] then
return false
end
if not (acceptedvals) then -- si aucune valeur spécifique n'est demandée, OK
return true
end
for i, wanted in pairs(acceptedvals) do
for j, actual in pairs(claimqualifs[qualif]) do
if wd.getId(actual) == wanted then
return true
end
end
end
end
for i, qualif in pairs(acceptedqualifs) do
if ok(qualif) then
return true
end
end
return false
end
local function hassource(claim, targetsource, sourceproperty)
sourceproperty = sourceproperty or 'P248'
if not claim.references or not claim.references[sourceproperty] then
return false
end
if not targetsource then -- si toutes les sources sont valides, du moment qu'elles utilisent sourceproperty
return true
end
targetsource = tools.splitStr(targetsource)
for _, source in pairs(claim.references[sourceproperty]) do
local s = wd.getId(source)
for i, target in pairs(targetsource) do
if s == target then return true end
end
end
return true
end
local function excludequalifier(claim, qualifier, qualifiervalues)
return not p.hasqualifier(claim, qualifier, qualifiervalues)
end
local function hasdate(claim)
local claimqualifs = claims.qualifiers
if not claimqualifs then
return false
end
for _, qualif in pairs(claimqualifs) do
if claimsqualifs[qualif] and claimsqualifs[qualif][1].snaktype == 'value' then
return true
end
end
return false
end
local function haslink(claim, site, lang)
if not(wd.isValue(claim.mainsnak)) then -- ne pas supprimer les valeurs spéciales, il y a une fonction dédiée pour ça
return true
end
local id = wd.getMainId(claim)
local link = wd.siteLink(id, site, lang)
if link then
return true
end
end
local function isinlanguage(claim, lang) -- ne fonctionne que pour les monolingualtext / étendre aux autres types en utilisant les qualifiers ?
local snak = claim.mainsnak
if tools.isSpecial(snak) then
return false
end
if snak.datavalue.type == 'monolingualtext' and snak.datavalue.value.language == lang then
return true
end
return false
end
local function firstvals(claims, numval) -- retourn les numval premières valeurs de la table claims
local numval = tonumber(numval) or 0 -- raise a error if numval is not a positive integer ?
if not claims then
return nil
end
while (#claims > numval) do
table.remove(claims)
end
return claims
end
local function valinQualif(claim, qualifs)
local claimqualifs = claim.qualifiers
if not claimqualifs then
return nil
end
for i, qualif in pairs(qualifs) do
local vals = claimqualifs[qualif]
if vals and wd.isValue(vals[1]) then
return wd.getValue(vals[1]).time
end
end
end
local function chronosort(claims, inverted)
table.sort(
claims,
function(a,b)
local timeA = valinQualif(a, datequalifiers) or ''
local timeB = valinQualif(b, datequalifiers) or ''
if inverted then
return timeA > timeB -- marche sauf pour les dates < 10 000 av-JC utiliser datemod.before produit un bug
else
return timeB > timeA
end
end
)
return claims
end
local function atDate(claim, mydate)
local newclaims = {}
local mindate = valinQualif(claim, {'P580'})
local maxdate = valinQualif(claim, {'P582'})
if datemod.before(mydate, mindate) and datemod.before(maxdate, mydate) then
return true
end
end
local function check(claim, condition)
if type(condition) == 'function' then -- cas standard
return condition(claim)
end
local msg = "args.condition should be a function"
return error(msg)
end
function p.sortclaims(claims, sorttype)
if not claims then
return nil
end
if sorttype == 'chronological' then
return chronosort(claims)
elseif sorttype == 'inverted' then
return chronosort(claims, true)
elseif type(sorttype) == 'function' then
table.sort(claims, sorttype)
return claims
end
return claims
end
function p.filterClaims(claims, args) --retire de la tables de claims celles qui sont éliminés par un des filters de la table des filters
local function filter(condition, filterfunction, funargs)
if not args[condition] then
return
end
for i = #claims, 1, -1 do
if not( filterfunction(claims[i], args[funargs[1]], args[funargs[2]], args[funargs[3]]) ) then
table.remove(claims, i)
end
end
end
filter('targetvalue', hastargetvalue, {'targetvalue'} )
filter('isinlang', isinlanguage, {'isinlang'} )
filter('atdate', atDate, {'atdate'} )
filter('qualifier', p.hasqualifier, {'qualifier', 'qualifiervalue'} )
filter('excludequalifier', excludequalifier, {'excludequalifier', 'excludequalifiervalue'} )
filter('source', hassource, {'source', 'sourceproperty'} )
filter('withdate', hasdate, {} )
filter('excludespecial', notSpecial, {} )
filter('excludevalues', excludevalues, {'excludevalues'})
filter('withlink', haslink, {'withlink', 'linklang'} )
filter('condition', check, {'condition'})
claims = withrank(claims, args.rank or 'best')
if args.sorttype then
claims = p.sortclaims(claims, args.sorttype)
end
if #claims == 0 then
return nil
end
if args.numval then
claims = firstvals(claims, args.numval)
end
return claims
end
function p.loadEntity(entity, cache)
if type(entity) ~= 'table' then
if cache then
if not cache[entity] then
cache[entity] = mw.wikibase.getEntity(entity)
mw.log("cached")
end
return cache[entity]
else
return mw.wikibase.getEntity(entity)
end
else
return entity
end
end
function p.getClaims( args ) -- returns a table of the claims matching some conditions given in args
if args.claims then -- if claims have already been set, return them
return args.claims
end
local properties = tools.splitStr(args.property)
if not properties then
return error( 'property-param-not-provided' )
end
--Get entity
local entity = args.entity
entity = p.loadEntity(args.entity, args.cache)
if (not entity) or (not entity.claims) then
return nil
end
local claims = {}
for i, prop in pairs(properties) do
prop = string.upper(prop)
for j, claim in pairs(entity.claims[prop] or {}) do
table.insert(claims, claim)
end
end
if (#claims == 0) then
return nil
end
return p.filterClaims(claims, args)
end
return p
te71jrvl7j9bqf7cypj3j4abaheqxei
Module:WikidataFR
828
3405
36612
2025-12-15T19:57:36Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--script that retrieves basic data stored in Wikidata, for the datamodel, see https://www.mediawiki.org/wiki/Extension:Wikibase_Client/Lua local p = {} local linguistic = require('Module:Linguistique') local dates = require('Module:Wikidata/Dates') local langmodule = require('Module:Langue') local convertlangcode = require('Module:Dictionnaire Wikidata/Codes langue') local formatText = require('Module:Format') lang = 'el' -- peut-être écrasé pa...'
36612
Scribunto
text/plain
--script that retrieves basic data stored in Wikidata, for the datamodel, see https://www.mediawiki.org/wiki/Extension:Wikibase_Client/Lua
local p = {}
local linguistic = require('Module:Linguistique')
local dates = require('Module:Wikidata/Dates')
local langmodule = require('Module:Langue')
local convertlangcode = require('Module:Dictionnaire Wikidata/Codes langue')
local formatText = require('Module:Format')
lang = 'el' -- peut-être écrasé par args.lang
local i18n = {
["errors"] = {
["property-param-not-provided"] = "property parameter missing",
["qualifier-param-not-provided"] = "qualifier parameter missing",
["entity-not-found"] = "entity not found",
["unknown-claim-type"] = "unknown claim type",
["unknown-snak-typeg"] = "unknown snak type",
["unknown-datavalue-type"] = "unknown datavalue type.",
["unknown-entity-type"] = "unknown entity type",
["invalid-id"] = "invalid ID",
},
["no-label"] = "χωρίς ετικέτα",
['no description'] = "χωρίς περιγραφή",
["novalue"] = "-",
["somevalue"] = "άγνωστο",
['to translate'] = 'Σελίδα που χρησιμοποιεί δεδομένα των Wikidata που χρειάζονται μετάφραση',
["trackingcat"] = 'Σελίδα που χρησιμοποιεί δεδομένα των Wikidata'
}
local function formatError( key )
return error(i18n.errors[key])
end
function p.addtrackingcat(prop, cat) -- doit parfois être appelé par d'autres modules
if not prop and not cat then
return error("no property provided")
end
if not cat then
cat = i18n.trackingcat .. '/' .. string.upper(prop)
end
return '[[Category:' .. cat .. ']]'
end
local function removeblanks(args)
for i, j in pairs(args) do
if j == '' then args[i] = nil end
end
return args
end
local function formatTheUnknown() -- voir si on peut accorder/adapter l'usage de "inconnu"
return i18n.somevalue
end
local function samevalue(snak, target)
if snak.snaktype == 'value' and p.getRawvalue(snak) == target then
return true
end
end
local function showlang(statement) -- retourne le code langue entre paranthèse avant la valeur (par exemple pour les biblios et liens externes)
local mainsnak = statement.mainsnak
if mainsnak.snaktype ~= 'value' then
return nil
end
local langlist = {}
if mainsnak.datavalue.type == 'monolingualtext' then
langlist = {mainsnak.datavalue.value.language}
elseif (not statement.qualifiers) or (not statement.qualifiers.P407) then
return
else
for i, j in pairs( statement.qualifiers.P407 ) do
if j.snaktype == 'value' then
local val = convertlangcode[j.datavalue.value['numeric-id']]
table.insert(langlist, val)
end
end
end
if (#langlist > 1) or (#langlist == 1 and langlist[1] ~= 'el') then -- si c'est en français, pas besoin de le dire
return langmodule.indicationMultilingue(langlist)
end
end
local function getEntity( val )
if type(val) == 'table' then
return val
end
return mw.wikibase.getEntityObject(val)
end
local function formattable(statements, params) -- transform a table of claims into a table of formatted values
for i, j in pairs(statements) do
j = p.formatStatement(j, params)
end
return statements
end
local function tableToText(values, params) -- takes a list of already formatted values and make them a text
if not values then
return nil
end
return linguistic.quickconj( values, params.conjtype)--linguistic.conj( values, params.lang, params.conjtype )
end
function p.getDate(statement)
--[[
returns an object containing a timestamp for easy sorting, and other data
2 types of object
dateobject
{timestamp = string, year = number, month = number, day = number, calendar = string}
rangeobject
{timestamp = string, begin = dateobject, ending = dateobject}
]]--
local q = statement.qualifiers
if not q or not (q.P585 or q.P580 or q.P582) then
return nil
end
-- si p585 : dateobject
if q.P585 and q.P585[1].snaktype == 'value' then -- P585: punctual date
return dates.dateobject(q.P585[1].datavalue.value)
end
-- si p580 ou P582 : rangeobject avec une date de début et/ou une date de fin
if q.P582 and q.P582[1].snaktype == 'value' then
ending = dates.dateobject(q.P582[1].datavalue.value)
end
if q.P580 and q.P580[1].snaktype == 'value' then
begin = dates.dateobject(q.P580[1].datavalue.value)
end
return dates.rangeobject(begin, ending)
end
function p.getFormattedDate(statement, params)
local datetable = p.getDate(statement)
if not datetable then
return nil
end
return dates.objecttotext(datetable, params)
end
local function hastargetvalue(claim, target)
if target == nil then
return true
end
return samevalue(claim.mainsnak, target)
end
local function hasrank(claim, target)
if target == 'valid' then
return hasrank(claim, 'preferred') or hasrank(claim, 'normal')
end
if claim.rank == target then
return true
end
return false
end
local function bestranked(claims)
if not claims then
return nil
end
local preferred, normal = {}, {}
for i, j in pairs(claims) do
if j.rank == 'preferred' then
table.insert(preferred, j)
elseif j.rank == 'normal' then
table.insert(normal, j)
end
end
if #preferred > 0 then
return preferred
else
return normal
end
end
local function hasqualifier(claim, qualifier, qualifiervalues)
qualifier = string.upper(qualifier)
if not qualifier then -- si aucun qualificatif est demandé, ça passe
return true
end
if not claim.qualifiers or not claim.qualifiers[qualifier] then
return false
end
if (not qualifiervalues) or (qualifiervalues == {}) then
return true -- si aucune valeur spécifique n'est exigée
end
if type(qualifiervalues) == 'string' then
qualifiervalues = {qualifiervalues}
end
for i, j in pairs(claim.qualifiers[qualifier]) do
local val = p.getRawvalue(j)
for k, l in pairs(qualifiervalues) do
if l == val then
return true
end
end
end
return false
end
local function hassource(statement, source, sourceproperty)
sourceproperty = string.upper(sourceproperty or 'P248')
local sourcevalue = string.upper(source or '')
if not statement.references or not statement.references[sourceproperty] then
return false
end
if not source then -- si toutes les sources sont valides, du moment qu'elles utilisent sourceproperty
return true
end
for i, j in pairs(statement.references[sourceproperty]) do
if p.getRawvalue(j) == source then
return true
end
end
return true
end
local function hasdate(statement)
if statement.qualifiers and (statement.qualifiers['P585'] or statement.qualifiers['P580'] or statement.qualifiers['P582']) then
return true
end
return false
end
local function isinlanguage(snak, lang) -- ne fonctionne que pour les monolingualtext / étendre aux autres types en utilisant les qualifiers ?
if snak.snaktype == 'value' and snak.datavalue.type == 'monolingualtext' and snak.datavalue.value.language == lang then
return true
end
return false
end
local function isSpecial(snak)
if snak.snaktype == 'value' then
return false
end
return true
end
local function numval(claims, numval) -- retourn les numval premières valeurs de la table claims
local numval = tonumber(numval) or 0 -- raise a error if numval is not a positive integer ?
if #claims <= numval then
return claims
end
local newclaims = {}
while #newclaims < numval do
table.insert(newclaims, claims[#newclaims + 1])
end
return newclaims
end
local function comparedate(a, b) -- returns true if a is earlier than B or if a has a date but not b
if a and b then
return a.timestamp < b.timestamp
elseif a then
return true
end
end
local function chronosort(claims, inverted)
table.sort(claims, function(a,b)
local timeA = p.getDate(a)
local timeB = p.getDate(b)
if inverted then
return comparedate(timeB, timeA)
else
return comparedate(timeA, timeB)
end
end
)
return claims
end
function p.sortclaims(claims, sorttype)
if sorttype == 'chronological' then
return chronosort(claims)
elseif sorttype == 'inverted' then
return chronosort(claims, true)
elseif type(sorttype) == 'function' then
table.sort(claims, sorttype)
return claims
end
return claims
end
function p.getRawvalue(snak)
return p.getDatavalue(snak, {format = 'raw'})
end
function p.getDatavalue(snak, params)
if not params then
params = {}
end
local formatting = params.formatting
local speciallabels = params.speciallabels -- parfois on a besoin de faire une liste d'éléments pour lequel le libellé doit être changé, pas très pratique d'utiliser une fonction pour ça
if snak.snaktype ~= 'value' then
return nil
end
local datatype = snak.datavalue.type
local value = snak.datavalue.value
local displayformat = params.format or params.displayformat -- params.format is deprecated
if datatype == 'wikibase-entityid' then
if displayformat == 'raw' then
return "Q" .. tostring(value['numeric-id'])
elseif speciallabels and speciallabels['Q' .. value['numeric-id']] then
return speciallabels['Q' .. value['numeric-id']]
elseif type(displayformat) == 'function' then
return displayformat(snak, params)
else
return p.formatEntity('Q' .. value['numeric-id'], params)
end
elseif datatype == 'string' then
if params.displayformat == 'weblink' then
return require('Module:Weblink').makelink(value, params.showntext)
elseif params.urlpattern then
value = '[' .. mw.ustring.gsub(params.urlpattern, '$1', value) .. ' ' .. (params.text or value) .. ']'
end
return value
elseif datatype == 'time' then -- format example: +00000001809-02-12T00:00:00Z
local precision = params.precision -- degré de précision à afficher ('day', 'month', 'year'), inférieur ou égal à value.precision
if displayformat == 'raw' then
return value.time
else
return dates.objecttotext(dates.dateobject(value, {precision = precision}), {linktopic = params.linktopic})
end
elseif datatype == 'globecoordinate' then
-- retourne une table avec clés latitude, longitude, précision et globe à formater par un autre module (à changer ?)
value.globe = require('Module:Wikidata/Globes')[value.globe] -- transforme l'ID du globe en nom anglais utilisable par geohack
if formatting == 'latitude' then
return value.latitude
elseif formatting == 'longitude' then
return value.longitude
else
return value -- note : les coordonnées Wikidata peuvent être utilisée depuis Module:Coordinates. Faut-il aussi autoriser à appeler Module:Coordiantes ici ?
end
elseif datatype == 'quantity' then -- todo : gérer les paramètre précision
if displayformat == 'raw' then
return value.amount
else
local str = string.sub(value.amount,2) --
return formatText.do_formatnum({str})
end
elseif datatype == 'monolingualtext' then
return langmodule.langue({value.language, value.text})
else
return formatError('unknown-datavalue-type' )
end
end
local function getMultipleClaims(args)
local newargs = args
local claims = {}
for i, j in pairs(args.property) do
newargs.property = j
local newclaims = p.getClaims(args)
for k, l in pairs(newclaims) do
table.insert(claims, l)
end
end
return claims
end
function p.getClaims( args ) -- returns a table of the claims matching some conditions given in args
args = removeblanks(args)
if args.claims then -- if claims have already been set, return them
return args.claims
end
if not args.property then
return formatError( 'property-param-not-provided' )
end
if type(args.property) == 'table' then
return getMultipleClaims(args)
end
--Get entity
if args.item then args.entity = args.item end -- synonyms
local entity = args.entity
if type(entity) ~= 'table' then
entity = getEntity( args.entity )
end
if (not entity) or (not entity.claims) then
return nil
end
local property = string.upper(args.property)
if not entity.claims[property] then
return nil
end
if not args.rank then
args.rank = 'best'
end
local claims = {}
-- ~= '' lorsque le paramètre est écrit mais laissé blanc dans une fonction frame
for i, statement in pairs(entity.claims[property]) do
if
(
not args.excludespecial
or
not (isSpecial(statement.mainsnak))
)
and
(
not args.targetvalue
or
hastargetvalue(statement, args.targetvalue)
)
and
(
not args.qualifier
or
hasqualifier(statement, args.qualifier, args.qualifiervalue or args.qualifiervalues)
)
and
(
not args.source
or
hassource(statement, args.source, args.sourceproperty)
)
and
not args.isinlanguage
or
isinlanguage(statement.mainsnak, args.isinlanguage)
and
args.rank == 'best' -- rank == best est traité à a fin
or
hasrank(statement, rank)
then
table.insert(claims, statement)
end
end
if #claims == 0 then
return nil
end
if args.rank == 'best' then
claims = bestranked(claims)
end
if args.sorttype then
claims = p.sortclaims(claims, args.sorttype)
end
if args.numval then
return numval(claims, args.numval)
end
return claims
end
function p.formatClaimList(claims, args)
if not claims then
return nil
end
for i, j in pairs(claims) do
claims[i] = p.formatStatement(j, args)
end
return claims
end
function p.stringTable(args) -- like getClaims, but get a list of string rather than a list of snaks, for easier manipulation
local claims = p.getClaims(args)
return p.formatClaimList(claims, args)
end
local function getQualifiers(statement, qualifs, params)
if not statement.qualifiers then
return nil
end
local vals = {}
for i, j in pairs(qualifs) do
if statement.qualifiers[j] then
for k, l in pairs(statement.qualifiers[j]) do
table.insert(vals, l)
end
end
end
if #vals == 0 then
return nil
end
return vals
end
function p.getFormattedQualifiers(statement, qualifs, params)
if not params then params = {} end
local qualiftable = getQualifiers(statement, qualifs)
if not qualiftable then
return nil
end
for i, j in pairs(qualiftable) do
qualiftable[i] = p.formatSnak(j, params)
end
return linguistic.conj(qualiftable)
end
function p.formatStatement( statement, args )
if not args then args = {} end
if not statement.type or statement.type ~= 'statement' then
return formatError( 'unknown-claim-type' )
end
local str = p.formatSnak( statement.mainsnak, args )
if args.showlang == true then
str = (showlang(statement) or '') .. str
end
if args.showqualifiers then
local qualifs = args.showqualifiers
if type(qualifs) == 'string' then
qualifs = mw.text.split(qualifs, ',')
end
local foundvalues = p.getFormattedQualifiers(statement, qualifs, args)
if foundvalues then
str = str .. linguistic.inparentheses(foundvalues, lang)
end
end
if args.showdate then -- when "showdate and chronosort are both set, date retrieval is performed twice
local timedata = p.getDate(statement)
if timedata then
local formatteddate = dates.objecttotext(timedata, args)
formattteddate = linguistic.inparentheses(formatteddate, lang)
str = str .. '<small>' .. formattteddate ..'</small>'
end
end
if args.showsource and statement.references then --[[needs abritrary access
local sourcestring = ''
for i, ref in pairs(statement.references) do
if ref.snaks.P248 then
for j, source in pairs(ref.snaks.P248) do
if source.snaktype == 'value' then
local page
if ref.snaks.P304 and ref.snaks.P304[1].snaktype == 'value' then
page = ref.snaks.P304[1].datavalue.value
end
local s = require('Module:Cite/sandbox').citeitem('Q' .. source.datavalue.value['numeric-id'], lang, page)
s = mw.getCurrentFrame():extensionTag( 'ref', s )
sourcestring = sourcestring .. s
end
end
elseif ref.snaks.P854 and ref.snaks.P854[1].snaktype == 'value' then
s = mw.getCurrentFrame():extensionTag( 'ref', formatLink(ref.snaks.P854[1].datavalue.value))
sourcestring = sourcestring .. s
end
end
str = str .. sourcestring ]]--
end
return str
end
function p.formatSnak( snak, params )
if not args then args = {} end -- pour faciliter l'appel depuis d'autres modules
if snak.snaktype == 'somevalue' then
return formatTheUnknown()
elseif snak.snaktype == 'novalue' then
return i18n['novalue'] --todo
elseif snak.snaktype == 'value' then
return p.getDatavalue( snak, params)
else
return formatError( 'unknown-snak-type' )
end
end
function p._getLabel(entity, default, inlanguage)
local label
if not entity then
return nil
end
if inlanguage then -- cherche dans l'élément complet s'il est déjà chargé, ou s'il faut une libellé non-français, inacessible par mw.wikibase.label
entity = getEntity(entity)
end
if type(entity) == 'table' then
if entity and entity.labels and entity.labels[lang] then
label = entity.labels[lang].value
end
else
label = mw.wikibase.label(entity)
end
if label then
return label
end
if default == 'nolabel' then
return i18n['no-label']
end
return entity.id
end
function p._getDescription(entity, lang)
if type(entity) ~= 'table' then
entity = getEntity(entity)
end
if not entity.descriptions then
return i18n['no description']
end
local descriptions = entity.descriptions
if not descriptions then
return nil
end
if descriptions[lang] then
return descriptions[lang].value
end
local fblist = require('Module:Fallback').fblist(lang) -- list of fallback languages in no label in the desired language
for i, j in pairs (mw.language.getFallbacksFor(lang)) do
if descriptions.lang then
return descriptions[lang].value
end
end
if default == 'nolabel' then
return i18n['no-label']
end
return entity.id
end
local function formattedLabel(label, entity, args)
if not args then
args = {}
end
if args.link== '-' then
return label
end
local link = mw.wikibase.sitelink( entity )
if not link then
link = 'd:' .. entity
end
return '<span class="wddata">[[' .. link .. '|' .. label .. ']]</span>'
end
function p.getid(snak)
if snak.snaktype == 'value' then
return 'Q' .. snak.datavalue.value['numeric-id']
end
end
function p.getmainid(claim)
if claim then
return p.getid(claim.mainsnak)
end
end
function p.formatEntity( entity, args )
local label = p._getLabel(entity, lang)
if not label then
label = entity
return formattedLabel(label, entity, args) .. '[[Category:' .. i18n['to translate'] .. ']]'
end
return formattedLabel(label, entity, args)
end
function p.getLabel(frame) -- simple for simple templates like {{Q|}}}
local args = frame.args
local entity = args.entity
local lang = lang
if args.lang and args.lang ~= '' then
lang = args.lang
end
if string.sub(entity, 1, 10) == 'Property:P' then
entity = string.sub(entity, 10)
elseif (string.sub(entity, 1, 1) ~= 'P' and string.sub(entity, 1, 1) ~= 'Q') or (not tonumber(string.sub(entity, 2))) then
return i18n.errors['invalid-id']
end
if not args.link or args.link == '' then -- by default: no link
args.link = '-'
end
if args.link == '-' then
return p._getLabel(entity, lang) or i18n.errors['invalid-id']
else
lang = lang
return p.formatEntity(entity, args)
end
end
function p.addLinkback(str, entity, property)
local id = entity
if not id then return
error('no entity provided')
end
if type(id) == 'table' then
id = entity.id
end
return str .. ' ' .. tostring(mw.html.create('span'):wikitext('<small><small><small>[[d:' .. id .. '#' .. property .. '|+/-]]</small></small></small>'))
end
function p._formatStatements( args )--Format statement and concat them cleanly
if args.value == '-' then
return nil
end
--If a value is already set, use it
if args.value and args.value ~= '' then
return args.value
end
args.entity = args.entity or args.item
if (type(args.entity) == 'string') or (not args.entity) then
args.entity = getEntity(entity)
end
local valuetable = p.stringTable(args)
local valuestr = tableToText(valuetable, args)
if valuestr and args.linkback then
valuestr = p.addLinkback(valuestr, args.entity, args.property)
end
return valuestr
end
function p.showQualifier( args )
local qualifs = args.qualifiers or args.qualifier
if type(qualifs) == 'string' then
qualifs = mw.text.split(qualifs, ',')
end
if not qualifs then
return formatError( 'property-param-not-provided' )
end
local claims = p.getClaims(args)
if not claims then
return nil
end
local str = ''
for i, j in pairs(claims) do
local new = p.getFormattedQualifiers(j, qualifs, args) or ''
str = str .. new
end
return str
end
function p._formatAndCat(args)
if not args then
return nil
end
args.linkback = args.linkback or true
local val = p._formatStatements( args )
if val then
return val .. p.addtrackingcat(args.property)
end
end
function p.getTheDate(args)
local claims = p.getClaims(args)
if not claims then
return nil
end
local formattedvalues = {}
for i, j in pairs(claims) do
table.insert(formattedvalues, p.getFormattedDate(j))
end
local val = linguistic.conj(formattedvalues)
if not val then
return nil
end
if args.addcat == true then
val = val .. p.addtrackingcat(args.property)
end
val = p.addLinkback(val, args.entity, args.property)
return val
end
---FONCTIONS depuis le FRAME
function p.getaDate(frame)
return p.getTheDate(frame.args)
end
function p.getQualifier( frame )
return p.showQualifier(frame.args)
end
function p.getDescription(frame) -- simple for simple templates like {{Q|}}}
local entity = frame.args.entity
if frame.args.lang then
lang = frame.args.lang
end
if (string.sub(entity, 1, 1) ~= 'P' and string.sub(entity, 1, 1) ~= 'Q') or (not tonumber(string.sub(entity, 2))) then
return i18n.errors['invalid-id']
end
return p._getDescription(entity, lang) or i18n.errors['invalid-id']
end
function p.numOfClaims(frame)
local claims = p.getClaims(frame.args)
if claims then
return #claims
else
return 0
end
end
function p.formatStatements( frame )
local args = {}
if frame == mw.getCurrentFrame() then
args = frame:getParent().args -- paramètres du modèle appelant (est-ce vraiment une bonne idée ?)
for k, v in pairs(frame.args) do
args[k] = v
end
else
args = frame
end
return p._formatStatements( args )
end
function p.formatAndCat(frame)
local args = {}
if frame == mw.getCurrentFrame() then
args = frame:getParent().args -- paramètres du modèle appelant (est-ce vraiment une bonne idée ?)
for k, v in pairs(frame.args) do
args[k] = v
end
else
args = frame
end
return p._formatAndCat( args )
end
return p
meckqbx6yxb22yfp8zy9bcs0hjj3zct
Module:WikidataOld
828
3406
36613
2025-12-15T19:58:36Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--script that retrieves basic data stored in Wikidata, for the datamodel, see https://www.mediawiki.org/wiki/Extension:Wikibase_Client/Lua local p = {} local linguistic = require('Module:Linguistic') --local formatDate = require('Module:Complex date') only loaded when needed to save memory in large pages like Wikidata:List of properties/all local fb = require('Module:Fallback') local i18nmessages = mw.loadData('Module:i18n/wikidata') -- Wiki-spe...'
36613
Scribunto
text/plain
--script that retrieves basic data stored in Wikidata, for the datamodel, see https://www.mediawiki.org/wiki/Extension:Wikibase_Client/Lua
local p = {}
local linguistic = require('Module:Linguistic')
--local formatDate = require('Module:Complex date') only loaded when needed to save memory in large pages like Wikidata:List of properties/all
local fb = require('Module:Fallback')
local i18nmessages = mw.loadData('Module:i18n/wikidata')
-- Wiki-specific parameters
local defaultlang = mw.getCurrentFrame():preprocess("{{int:lang}}")
local defaultlink = 'wikidata'
local function i18n(str, lang)
local message = i18nmessages[str]
if type(message) == 'string' then
return message
end
return fb._langSwitch(message, lang or defaultlang)
end
local function formatError( key, text )
return error(i18n(key) .. (text or ''))
end
local function addTrackingCat(prop, cat)
if not prop and not cat then
return error("no property provided")
end
if not cat then
cat = i18nmessages.trackingcat .. '/' .. string.upper(prop)
end
return '[[Category:' .. cat .. ']]'
end
local function removeBlanks(args)
for i, j in pairs(args) do -- does not work ??
if (j == '') or (j == '-') then args[i] = nil end
end
return args
end
local function formatTheUnknown() -- voir si on peut accorder/adapter l'usage de "inconnu"
return i18n('somevalue')
end
local function isSpecial(snak)
return snak.snaktype ~= 'value'
end
local function sameValue(snak, target)
return not isSpecial(snak) and p.getRawvalue(snak) == target
end
local function showLang(statement, str) -- TODO (not yet in proper format)
--adds a lang indication at the start of the string, based on data in statement
local mainsnak = statement.mainsnak
if isSpecial(mainsnak) then
return str
end
local langlist = {}
if mainsnak.datavalue.type == 'monolingualtext' then
langlist = {mainsnak.datavalue.value.language}
elseif statement.qualifiers and statement.qualifiers.P407 then
local convertlangcode = mw.loadData('Module:Dictionary/lang codes')
for i, j in pairs( statement.qualifiers.P407 ) do
if not isSpecial(j) then
local val = convertlangcode[j.datavalue.value['numeric-id']]
table.insert(langlist, val)
end
end
end
if #langlist == 0 then
return str
else
return '('.. table.concat(langlist) .. ')' .. str
end
end
function p.getEntity( val )
if type(val) == 'table' then
return val
end
return mw.wikibase.getEntityObject(val)
end
-- DATE FUNCTIONS
local function splitTimestamp(timestamp, calendar)
local pattern = "(%W)(%d+)%-(%d+)%-(%d+)"
local era, year, month, day = timestamp:match(pattern)
if calendar == 'julian' then
--todo year, month, day = formatdate.gregorianToJulian( era .. year, month, day )
end
return {day = day, month = month, year = year, era = era, timestamp = timestamp, type = 'dateobject'}
end
local function rangeObject(begin, ending)
local timestamp
if begin then
timestamp = begin.timestamp
elseif ending then
timestamp = ending.timestamp
end
return {begin = begin, ending = ending, timestamp = timestamp, type = 'rangeobject'}
end
local function dateObject(orig, params) -- transforme un snak en un nouvel objet utilisable par Module:Date complexe
if not params then
params = {}
end
local newobj = splitTimestamp(orig.time, orig.calendar) -- initalise l'object en mettant la valeur des dates
newobj.precision = params.precision or orig.precision
newobj.type = 'dateobject'
return newobj
end
local function formatDatepoint(obj, params) -- TO IMPROVE
if not obj then
return nil
end
local era = obj.era == '-' and 'bc' or ''
local formatDate = require('Module:Complex date')
local lang = params.lang or defaultlang
local precision = math.min(obj.precision, params.precision or 15) -- if we don't want to show the value to its full detail
if precision >= 11 then
return formatDate.complex_date{args={date1 = obj.year .. '-' .. obj.month .. '-' .. obj.day, lang= lang, era1 = era}}
elseif precision == 10 then
return formatDate.complex_date{args={date1 = obj.year .. '-' .. obj.month, lang= lang, era1 = era}}
elseif precision == 9 then
return formatDate.complex_date{args={date1 = tostring(obj.year), lang= lang, era1 = era}}
elseif precision == 8 then
return formatDate.complex_date{args={date1 = string.sub(tostring(obj.year), 1, 3) .. '0', lang = lang, precision = 'decade', era1 = era}}
elseif precision == 7 then
return formatDate.complex_date{args={date1 = tostring(obj.year / 100), lang = lang, precision = 'century', era1 = era}}
end
return nil
end
local function formatDaterange(obj, params) --TODO
local begin = formatDatepoint(obj.begin, params) or ''
local ending = formatDatepoint(obj.ending, params) or ''
return begin .. '-' .. ending
end
local function objectToText(obj, params)
if obj.type == 'dateobject' then
return formatDatepoint(obj, params)
elseif obj.type == 'rangeobject' then
return formatDaterange(obj, params)
end
return nil
end
local function tableToText(values, params) -- takes a list of already formatted values and make them a text
if not values then
return nil
end
return linguistic.conj(values, params.lang or defaultlang, params.conjtype)--linguistic.conj( values, params.lang, params.conjtype )
end
function p.getDate(obj)
--[[
returns an object containing a timestamp for easy sorting, and other data
possible types of object:
dateobject
{timestamp = string, year = number, month = number, day = number, calendar = string}
rangeobject
{timestamp = string, begin = dateobject, ending = dateobject}
]]--
if not obj then
return nil
end
if type(obj) == 'string' then
obj = p.getEntity(obj)
end
-- if obj is a statement with date, get it
if obj.mainsnak and not isSpecial(obj.mainsnak) and obj.mainsnak.datatype == 'time' then
return dateObject(obj.mainsnak.datavalue.value)
end
-- else preload relevant data
local qualifs = obj.qualifiers -- when obj is a statement, look in qualifiers
local claims = obj.claims -- when obj is an item, look in claims
local pointprop = {'P585', 'P571'} -- dates corresponding to a punctual fact
local beginprop = {'P580', 'P569'} -- start date, birth date == start of a date range
local endingprop = {'P582', 'P570'}
local function getval(prop)
local val
if claims and claims[prop] and not isSpecial(claims[prop][1].mainsnak) then
val = claims[prop][1].mainsnak.datavalue.value
elseif qualifs and qualifs[prop] and not isSpecial(qualifs[prop][1]) then
val = qualifs[prop][1].datavalue.value
end
if val then
return dateObject(val)
end
return nil
end
for i, prop in pairs(pointprop) do
local val = getval(prop)
if val then return val end
end
--if no date has not been found, look for startdate or enddate
local begin, ending
for i, prop in pairs(beginprop) do
begin = getval(prop)
if begin then
break
end
end
for i, prop in pairs(endingprop) do
ending = getval(prop)
if ending then
break
end
end
if begin or ending then
return rangeObject(begin, ending)
end
return nil
end
function p.getFormattedDate(statement, params)
local datetable = p.getDate(statement)
if not datetable then
return nil
end
return objectToText(datetable, params)
end
local function hasTargetValue(claim, target)
if target == nil then
return true
end
return sameValue(claim.mainsnak, target)
end
local function hasRank(claim, target)
if target == 'valid' then
return hasRank(claim, 'preferred') or hasRank(claim, 'normal')
else
return claim.rank == target
end
end
local function bestRanked(claims)
if not claims then
return nil
end
local preferred, normal = {}, {}
for i, j in pairs(claims) do
if j.rank == 'preferred' then
table.insert(preferred, j)
elseif j.rank == 'normal' then
table.insert(normal, j)
end
end
if #preferred > 0 then
return preferred
else
return normal
end
end
local function hasQualifier(claim, qualifier, qualifiervalues)
if not qualifier then -- si aucun qualificatif est demandé, ça passe
return true
end
qualifier = string.upper(qualifier)
if not claim.qualifiers or not claim.qualifiers[qualifier] then
return false
end
if type(qualifiervalues) == 'string' then
qualifiervalues = mw.text.split(qualifiervalues, ',')
end
if (not qualifiervalues) or (qualifiervalues == {}) then
return true -- si aucune valeur spécifique n'est exigée
end
for i, j in pairs(claim.qualifiers[qualifier]) do
for k, l in pairs(qualifiervalues) do
if p.getRawvalue(j) == l then
return true
end
end
end
return false
end
local function hasSource(statement, source, sourceproperty)
if not statement.references then
return false
end
sourceproperty = string.upper(sourceproperty or 'P248')
local sourcevalue = string.upper(source or '')
for i, ref in pairs(statement.references) do
for prop, content in pairs(ref.snaks) do
if prop == sourceproperty then
if sourcevalue == '' then
return true
else
for j, k in pairs(content) do
if p.getRawvalue(k) == source then
return true
end
end
end
end
end
end
return false
end
local function hasDate(statement)
if not statement.qualifiers then
return false
end
local dateprops = {'P580', 'P585', 'P582'}
for i, prop in pairs(dateprops) do
if statement.qualifiers[prop] then
return true
end
end
return false
end
local function isInLanguage(snak, lang) -- ne fonctionne que pour les monolingualtext / étendre aux autres types en utilisant les qualifiers ?
return not isSpecial(snak) and snak.datavalue.type == 'monolingualtext' and snak.datavalue.value.language == lang
end
local function numval(claims, numval) -- retourn les numval premières valeurs de la table claims
local numval = tonumber(numval) or 0 -- raise a error if numval is not a positive integer ?
if #claims <= numval then
return claims
end
local newclaims = {}
while #newclaims < numval do
table.insert(newclaims, claims[#newclaims + 1])
end
return newclaims
end
function p.comparedate(a, b) -- returns true if a is earlier than B or if a has a date but not b
if a and b then
return a.timestamp < b.timestamp
elseif a then
return true
end
return false
end
function p.chronosort(objs, inverted)
table.sort(objs, function(a, b)
local timeA = p.getDate(a)
local timeB = p.getDate(b)
if inverted then
return p.comparedate(timeB, timeA)
else
return p.comparedate(timeA, timeB)
end
end)
return objs
end
function p.sortclaims(claims, sorttype)
if type(sorttype) == 'function' then
table.sort(claims, sorttype)
elseif sorttype == 'chronological' then
return p.chronosort(claims)
elseif sorttype == 'inverted' then
return p.chronosort(claims, true)
end
return claims
end
function p.getRawvalue(snak)
return p.getDatavalue(snak, {displayformat = 'raw'})
end
function p.showentity(entity, lang)
if not entity then
return nil
end
if type(entity) == 'string' then
entity = p.getEntity(entity)
end
if not entity or not entity.type then
return formatError('entity-not-found')
end
local label = p._getLabel(entity, lang)
local id = entity.id
local link = id
if entity.type == 'property' then
link = 'Property:' .. link
end
return '[[' .. link .. '|' .. label .. ']] <small>(' .. id .. ')</small>'
end
local function wikipediaLink(entity, lang)
local link = entity:getSitelink(lang .. 'wiki')
if link then
return ':' .. lang .. ':' .. link
end
return nil
end
local function getLink(entity, typelink, lang)
if not typelink or typelink == '-' then
return nil
end
if not lang then
lang = defaultlang
end
if typelink == 'wikidata' then
if entity.type == 'property' then
return 'd:P:' .. entity.id
else
return 'd:' .. entity.id
end
elseif typelink == 'wikipedia' then
return wikipediaLink(entity, lang)
elseif typelink == 'anywikipedia' then
local fallbacklist = fb.fblist(lang)
for i, lg in pairs(fallbacklist) do
link = wikipediaLink(entity, lg)
if link then return link end
end
end
return nil
end
local function formattedLabel(label, entity, args)
if not args then args = {} end
local link = getLink(entity, args.link, args.lang)
if not link then
link = getLink(entity, defaultlink, args.lang)
end
if not link then
return label
else
return '[[' .. link .. '|' .. label .. ']]'
end
end
function p.getDatavalue(snak, params)
if isSpecial(snak) then
return nil
end
if not params then
params = {}
end
local displayformat = params.displayformat
local datatype = snak.datavalue.type
local value = snak.datavalue.value
if datatype == 'wikibase-entityid' then
if type(displayformat) == 'function' then
return displayformat(snak, params)
end
local prefix = 'Q'
if snak.datavalue.value["entity-type"] == 'property' then
prefix = 'P'
end
local id = prefix .. tostring(value['numeric-id'])
if displayformat == 'raw' then
return id
elseif displayformat == 'wikidatastyle' then
return p.showentity(id, params.lang)
else
return p.formatEntity(id, params)
end
elseif datatype == 'string' then
local showntext = params.showntext
if displayformat == 'weblink' then
if showntext then
return '[' .. value .. ' ' .. showntext .. ']'
else
return value
end
end
if snak.datatype == 'math' and displayformat ~= 'raw' then
value = mw.getCurrentFrame():extensionTag('math', value)
end
if params.urlpattern then
value = '[' .. mw.ustring.gsub(mw.ustring.gsub(params.urlpattern, '$1', value), ' ', '%%20') .. ' ' .. (showntext or value) .. ']'
end
return value
elseif datatype == 'time' then -- format example: +00000001809-02-12T00:00:00Z
if displayformat == 'raw' then
return value.time
else
return objectToText(dateObject(value), params)
end
elseif datatype == 'globecoordinate' then
-- retourne une table avec clés latitude, longitude, précision et globe à formater par un autre module (à changer ?)
if displayformat == 'latitude' then
return value.latitude
elseif displayformat == 'longitude' then
return value.longitude
elseif displayformat == 'qualifier' then
local coord = require 'Module:Coordinates'
value.globe = require('Module:Wikidata/Globes')[value.globe]
value.precision = nil
return coord._coord(value)
else
value.globe = require('Module:Wikidata/Globes')[value.globe] -- transforme l'ID du globe en nom anglais utilisable par geohack
return value -- note : les coordonnées Wikidata peuvent être utilisée depuis Module:Coordinates. Faut-il aussi autoriser à appeler Module:Coordiantes ici ?
end
elseif datatype == 'quantity' then -- todo : gérer les paramètre précision
if displayformat == 'raw' then
return tonumber(value.amount)
else
local formatNum = require 'Module:Formatnum'
local number = formatNum.formatNum(value.amount)
local unit = mw.ustring.match(value.unit, '(Q%d+)')
if unit then
local symbol = p._formatStatements{
entity = unit, property = 'P558', qualifier = 'P282', qualifiervalues = {'Q8229'}
}
if symbol and symbol ~= '' then
number = number .. ' ' .. formattedLabel(symbol, p.getEntity(unit), {link='wikipedia'})
else
number = number .. ' ' .. p.formatEntity(unit, params)
end
end
return number
end
elseif datatype == 'monolingualtext' then
return '<span lang="' .. value.language .. '">' .. value.text .. '</span>'
else
return formatError( 'unknown-datavalue-type', datatype )
end
end
local function getMultipleClaims(args)
local newargs = args
local claims = {}
for i, j in pairs(args.property) do
newargs.property = j
local newclaims = p.getClaims(args)
if newclaims then
for k, l in pairs(newclaims) do
table.insert(claims, l)
end
end
end
return claims
end
function p.getClaims( args ) -- returns a table of the claims matching some conditions given in args
args = removeBlanks(args)
if not args.property then
return formatError( 'property-param-not-provided' )
end
if type(args.property) == 'table' then
return getMultipleClaims(args)
end
--Get entity
if args.item then -- synonyms
args.entity = args.item
end
local entity = args.entity
if type(entity) ~= 'table' then
entity = p.getEntity(entity)
end
local property = string.upper(args.property)
if not entity or not entity.claims or not entity.claims[property] then
return nil
end
if entity.claims and
entity.claims.P21 and
entity.claims.P21[1] and
entity.claims.P21[1].mainsnak and
entity.claims.P21[1].mainsnak.datatype == 'wikibase-item' and
(entity.claims.P21[1].mainsnak.datavalue.value["numeric-id"] == 6581072 or
entity.claims.P21[1].mainsnak.datavalue.value["numeric-id"] == 1052281) then
args.female = true
end
if not args.rank then
args.rank = 'best'
end
local claims = {}
-- ~= '' lorsque le paramètre est écrit mais laissé blanc dans une fonction frame
for i, statement in pairs(entity.claims[property]) do
if
(
not args.excludespecial
or
not (isSpecial(statement.mainsnak))
)
and
(
not args.targetvalue
or
hasTargetValue(statement, args.targetvalue)
)
and
(
not args.qualifier
or
hasQualifier(statement, args.qualifier, args.qualifiervalues or args.qualifiervalue)
)
and
(
not args.withsource or args.withsource == '-'
or
hasSource(statement, args.withsource, args.sourceproperty)
)
and
(
not args.isinlanguage
or
isInLanguage(statement.mainsnak, args.isinlanguage)
)
and
(
args.rank == 'best' -- rank == best est traité à a fin
or
hasRank(statement, args.rank)
)
then
table.insert(claims, statement)
end
end
if #claims == 0 then
return nil
end
if args.rank == 'best' then
claims = bestRanked(claims)
end
if args.sorttype then
claims = p.sortclaims(claims, args.sorttype)
end
if args.numval then
return numval(claims, args.numval)
end
return claims
end
function p.formatClaimList(claims, args)
if not claims then
return nil
end
for i, j in pairs(claims) do
claims[i] = p.formatStatement(j, args)
end
return claims
end
function p.stringTable(args) -- like getClaims, but get a list of string rather than a list of snaks, for easier manipulation
local claims = p.getClaims(args)
return p.formatClaimList(claims, args)
end
local function getQualifiers(statement, qualifs, params)
if not statement.qualifiers then
return nil
end
local vals = {}
for i, j in pairs(qualifs) do
j = string.upper(j)
if statement.qualifiers[j] then
local inserted = false
if statement.qualifiers[j][1].datatype == 'monolingualtext' then
local in_preferred_lang
for _, language in pairs(fb.fblist(params.lang or defaultlang)) do
for _, snak in pairs(statement.qualifiers[j]) do
if isInLanguage(snak, language) then
in_preferred_lang = snak
break
end
end
if in_preferred_lang then
break
end
end
if in_preferred_lang then
table.insert(vals, in_preferred_lang)
inserted = true
end
end
if not inserted then
for _, snak in pairs(statement.qualifiers[j]) do
table.insert(vals, snak)
end
end
end
end
if #vals == 0 then
return nil
end
return vals
end
function p.getFormattedQualifiers(statement, qualifs, params)
if not params then params = {} end
local qualiftable = getQualifiers(statement, qualifs, params)
if not qualiftable then
return nil
end
for i, j in pairs(qualiftable) do
local params = params
if j.datatype == 'globe-coordinate' then
params.displayformat = 'qualifier'
end
qualiftable[i] = p.formatSnak(j, params)
end
return linguistic.conj(qualiftable, params.lang or defaultlang, params.qualifconjtype or '')
end
function p.formatStatement( statement, args )
if not statement.type or statement.type ~= 'statement' then
return formatError( 'unknown-claim-type', statement.type )
end
if not args then args = {} end
local lang = args.lang or defaultlang
local str = p.formatSnak( statement.mainsnak, args )
if tostring( args.showlang ) == 'true' then
str = showLang(statement, str)
end
local qualifs = args.showqualifiers
if qualifs then
if type(qualifs) == 'string' then
qualifs = mw.text.split(qualifs, ',')
end
local foundvalues = p.getFormattedQualifiers(statement, qualifs, args)
if foundvalues then
if args.delimiter then
str = str .. args.delimiter .. foundvalues
else
str = str .. linguistic.inparentheses(foundvalues, lang)
end
end
end
if args.showdate then -- when "showdate and p.chronosort are both set, date retrieval is performed twice
local timedata = p.getDate(statement)
if timedata then
local formatteddate = objectToText(timedata, args)
formatteddate = linguistic.inparentheses(formatteddate, lang)
str = str .. '<small>' .. formatteddate ..'</small>'
end
end
if args.showsource and statement.references then
local cite = require 'Module:Wikidata/citeold'
str = str .. cite.formatReferences(statement.references, {})
end
return str
end
function p.formatSnak(snak, params)
--local params = params or {} pour faciliter l'appel depuis d'autres modules
if snak.snaktype == 'value' then
return p.getDatavalue(snak, params)
elseif snak.snaktype == 'somevalue' then
return formatTheUnknown()
elseif snak.snaktype == 'novalue' then
return i18n('novalue') --todo
else
return formatError( 'unknown-snak-type', snak.snaktype )
end
end
local function defaultLabel(entity, lang, displayformat) -- label when no label is available
if entity and displayformat == 'id' then
return entity.id
end
return i18n('no-label', lang)
end
function p._getLabel(entity, lang, default)
if not entity then
return nil
end
if type(entity) ~= 'table' then
entity = p.getEntity(entity)
end
if entity and entity.labels then
for i, lg in pairs(fb.fblist(lang or defaultlang)) do
if entity.labels[lg] then
return entity.labels[lg].value
end
end
end
return defaultLabel(entity, lang, default)
end
function p._getDescription(entity, lang)
if not entity then
return i18n('no description')
end
if type(entity) ~= 'table' then
entity = p.getEntity(entity)
end
local descriptions = entity.descriptions
if not descriptions then
return i18n('no description')
end
if descriptions[lang] then
return descriptions[lang].value
end
local langlist = fb.fblist(lang or defaultlang) -- list of fallback languages if no label in the desired language
for i, lg in pairs(langlist) do
if descriptions[lg] then
return descriptions[lg].value
end
end
return i18n('no description')
end
function p.getmainid(claim)
if claim and not isSpecial(claim.mainsnak) then
return 'Q' .. claim.mainsnak.datavalue.value['numeric-id']
end
return nil
end
function p.formatEntity( entity, args )
if not entity then
return nil
end
if not args then args = {} end
if type(entity) == 'string' then
entity = p.getEntity(entity)
end
local femalelabel = nil
if args.female and entity.claims and entity.claims.P2521 then
for _, statement in pairs(entity.claims.P2521) do
if(isInLanguage(statement.mainsnak, args.lang or defaultlang)) then
femalelabel = statement.mainsnak.datavalue.value.text
break
end
end
end
local label
if (femalelabel) then
label = femalelabel
else
label = p._getLabel(entity, args.lang)
end
if not label then
label = entity.id
end
return formattedLabel(label, entity, args)
end
function p.getLabel(frame) -- simple for simple templates like {{Q|}}}
local args = frame.args
local entity = args.entity
local lang = args.lang
if lang == '' then
lang = defaultlang
end
if string.sub(entity, 1, 10) == 'Property:P' then
entity = string.sub(entity, 10)
elseif (string.sub(entity, 1, 1) ~= 'P' and string.sub(entity, 1, 1) ~= 'Q') or (not tonumber(string.sub(entity, 2))) then
return i18n('invalid-id')
end
if not args.link or args.link == '' then -- by default: no link
args.link = '-'
end
if args.link == '-' then
return p._getLabel(entity, lang) or i18n('invalid-id')
else
return p.formatEntity(entity, args)
end
end
function p._formatStatements( args )--Format statements and concat them cleanly
if args.value == '-' then
return nil
end
--If a value is already set, use it
if args.value and args.value ~= '' then
return args.value
end
local valuetable = p.stringTable(args)
return tableToText(valuetable, args)
end
function p.showQualifier( args )
local qualifs = args.qualifiers or args.qualifier
if type(qualifs) == 'string' then
qualifs = mw.text.split(qualifs, ',')
end
if not qualifs then
return formatError( 'property-param-not-provided' )
end
local claims = p.getClaims(args)
if not claims then
return nil
end
local str = ''
for i, j in pairs(claims) do
local new = p.getFormattedQualifiers(j, qualifs, args) or ''
str = str .. new
end
return str
end
function p._formatAndCat(args)
local val = p._formatStatements(args)
if val then
return val .. addTrackingCat(args.property)
end
return nil
end
function p.getTheDate(args)
local claims = p.getClaims(args)
if not claims then
return nil
end
local formattedvalues = {}
for i, j in pairs(claims) do
table.insert(formattedvalues, p.getFormattedDate(j))
end
local val = linguistic.conj(formattedvalues)
if val and args.addcat == true then
return val .. addTrackingCat(args.property)
else
return val
end
end
---FONCTIONS depuis le FRAME
function p.getaDate(frame)
return p.getTheDate(frame.args)
end
function p.getQualifier(frame)
return p.showQualifier(frame.args)
end
function p.getDescription(frame) -- simple for simple templates like {{Q|}}}
local entity = frame.args.entity
local lang = frame.args.lang
return p._getDescription(entity, lang) or i18n('invalid-id')
end
function p.formatStatements( args )
return p._formatStatements( args )
end
function p.formatStatementsE(frame)
local args = {}
if frame == mw.getCurrentFrame() then
args = frame:getParent().args -- paramètres du modèle appelant (est-ce vraiment une bonne idée ?)
for k, v in pairs(frame.args) do
args[k] = v
end
else
args = frame
end
return p._formatStatements( args )
end
function p.formatAndCat(frame)
local args = {}
if frame == mw.getCurrentFrame() then
args = frame:getParent().args -- paramètres du modèle appelant (est-ce vraiment une bonne idée ?)
for k, v in pairs(frame.args) do
args[k] = v
end
else
args = frame
end
return p._formatAndCat( args )
end
function p.getEntityFromId(id)
return p.getEntity(id)
end
-- returns the page id (Q...) of the current page or nothing of the page is not connected to Wikidata
function p.pageId(frame)
local entity = mw.wikibase.getEntityObject()
if not entity then return nil else return entity.id end
end
-- This is used to get a value, or a comma separated list of them if multiple values exist
p.getValue = function(frame)
local propertyID = mw.text.trim(frame.args[1] or "")
local input_parm = mw.text.trim(frame.args[2] or "")
if input_parm == "FETCH_WIKIDATA" then
local entity = mw.wikibase.getEntityObject()
local claims
if entity and entity.claims then
claims = entity.claims[propertyID]
end
if claims then
-- if wiki-linked value output as link if possible
if (claims[1] and claims[1].mainsnak.snaktype == "value" and claims[1].mainsnak.datavalue.type == "wikibase-entityid") then
local out = {}
for k, v in pairs(claims) do
local sitelink = mw.wikibase.sitelink("Q" .. v.mainsnak.datavalue.value["numeric-id"])
local label = mw.wikibase.label("Q" .. v.mainsnak.datavalue.value["numeric-id"])
if label == nil then label = "Q" .. v.mainsnak.datavalue.value["numeric-id"] end
if sitelink then
out[#out + 1] = "[[" .. sitelink .. "|" .. label .. "]]"
else
out[#out + 1] = "[[:d:Q" .. v.mainsnak.datavalue.value["numeric-id"] .. "|" .. label .. "]]<abbr title='" .. i18n["errors"]["local-article-not-found"] .. "'>[*]</abbr>"
end
end
return table.concat(out, ", ")
else
-- just return best values
return entity:formatPropertyValues(propertyID).value
end
else
return ""
end
else
return input_parm
end
end
return p
61y9f3fevbqxvdzvdrk78fxg3twyzyp
Module:Wikidata/Formatters/time/testcases
828
3407
36614
2025-12-15T20:00:12Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local myModule = require 'Module:Wikidata/Formatters/time' local Time = require 'Module:Time' local ScribuntoUnit = require 'Module:ScribuntoUnit' local suite = ScribuntoUnit:new() function suite:testYearDifference() local provider = { { '1890-01-09', '1938-12-25', 48 }, { '1890-01-09', '1990-01-09', 100 }, { '1890-01-09', '1938-12', 48 }, { '1890-01-09', '1938-01', 47, '47–48' }, { '1890-01-09', '1938', 47, '47–48'...'
36614
Scribunto
text/plain
local myModule = require 'Module:Wikidata/Formatters/time'
local Time = require 'Module:Time'
local ScribuntoUnit = require 'Module:ScribuntoUnit'
local suite = ScribuntoUnit:new()
function suite:testYearDifference()
local provider = {
{ '1890-01-09', '1938-12-25', 48 },
{ '1890-01-09', '1990-01-09', 100 },
{ '1890-01-09', '1938-12', 48 },
{ '1890-01-09', '1938-01', 47, '47–48' },
{ '1890-01-09', '1938', 47, '47–48' },
{ '1890-01', '1938-12-25', 48 },
{ '1890-12', '1938-12-25', 47, '47–48' },
{ '1890-01', '1938-12', 48 },
{ '1890-12', '1938-12', 47, '47–48' },
{ '1890-01', '1938', 47, '47–48' },
{ '1890', '1938-12-25', 47, '47–48' },
{ '1890', '1938-12', 47, '47–48' },
{ '1890', '1938', 47, '47–48' },
}
for _, dates in ipairs(provider) do
local sooner = Time.newFromIso8601(dates[1])
local later = Time.newFromIso8601(dates[2])
local num_age, display_age = myModule.yearDifference(sooner, later)
self:assertEquals(dates[3], num_age)
self:assertEquals(dates[4] or dates[3], display_age)
end
end
function suite:testJulianToGregorian()
local provider = {
{
gregorian = '1582-10-15',
julian = '1582-10-05'
},
{
gregorian = '1582-11-10',
julian = '1582-10-31'
},
{
gregorian = '1583-01-09',
julian = '1582-12-30'
},
{
gregorian = '1583-01-09',
julian = '1582-12-30'
},
{
gregorian = '1583-03-09',
julian = '1583-02-27'
},
{
gregorian = '1584-03-08',
julian = '1584-02-27'
},
{
gregorian = '1600-03-08',
julian = '1600-02-27'
},
{
gregorian = '1700-02-28',
julian = '1700-02-18'
},
{
gregorian = '1700-03-01',
julian = '1700-02-19'
},
{
gregorian = '1700-03-10',
julian = '1700-02-28'
},
{
gregorian = '1700-03-11',
julian = '1700-02-29'
},
}
for _, data in ipairs(provider) do
local julian = Time.newFromIso8601(data.julian)
local gregorian = Time.newFromIso8601(data.gregorian)
julian.calendar = julian.CALENDAR.JULIAN
gregorian.calendar = julian.CALENDAR.GREGORIAN
self:assertEquals(gregorian, myModule.julianToGregorian(julian))
end
end
function suite:testFormatRawValue()
local provider = {
{
iso = '1890-01-09',
formatted = '[[9. leden|9. ledna]] [[1890]]'
},
{
iso = '1890-01-09',
formatted = '9. ledna 1890',
options = { nolink = true }
},
{
iso = '123',
formatted = '[[123]]'
},
{
iso = '123',
formatted = '123',
options = { nolink = true }
},
{
iso = '-123',
formatted = '[[123 př. n. l.|123 př. n. l.]]'
},
{
iso = '-123',
formatted = '123 př. n. l.',
options = { nolink = true }
},
{
iso = '1890-01-09',
formatted = '[[1890]]',
options = { precision = 9 }
},
{
iso = '1890',
formatted = '[[1890]]',
options = { precision = 10 }
},
{
iso = '1890',
precision = 8,
formatted = 'Desetiletí od 1890'
},
{
iso = '1890',
formatted = '[[19. století|19. století]]',
options = { precision = 7 }
},
{
iso = '1900',
precision = 7,
formatted = '[[19. století|19. století]]'
},
}
for _, data in ipairs(provider) do
local timevalue = Time.newFromIso8601(data.iso)
if data.precision then
timevalue.precision = data.precision
end
local options = data.options or {}
self:assertEquals(data.formatted, myModule.formatRawValue(timevalue, options))
end
end
return suite
k6ob19w5epspo55kjynhjeio1u0axws
Module:WikidataCA
828
3408
36615
2025-12-15T20:01:31Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local wiki = { langcode = mw.language.getContentLanguage().code } ----------------------------------------------------------------------------- -- internationalisation at [[Module:Wikidata/i18n]] local i18n = { ["errors"] = { ["property-not-found"] = "Property not found.", ["entity-not-found"] = "Wikidata entity not found.", ["unknown-claim-type"] = "Unknown claim type.", ["unknown-entity-type"] = "Unknown entity type.",...'
36615
Scribunto
text/plain
local p = {}
local wiki =
{
langcode = mw.language.getContentLanguage().code
}
-----------------------------------------------------------------------------
-- internationalisation at [[Module:Wikidata/i18n]]
local i18n = {
["errors"] = {
["property-not-found"] = "Property not found.",
["entity-not-found"] = "Wikidata entity not found.",
["unknown-claim-type"] = "Unknown claim type.",
["unknown-entity-type"] = "Unknown entity type.",
["qualifier-not-found"] = "Qualifier not found.",
["site-not-found"] = "Wikimedia project not found.",
["unknown-datetime-format"] = "Unknown datetime format.",
["local-article-not-found"] = "Article is not yet available in this wiki.",
['not-from-content-page'] = "Do not invoke from content page. Use a template or use a module subpage like /sandbox for testing ."
},
["datetime"] =
{
-- $1 is a placeholder for the actual number
[0] = "$1 billion years", -- precision: billion years
[1] = "$100 million years", -- precision: hundred million years
[2] = "$10 million years", -- precision: ten million years
[3] = "$1 million years", -- precision: million years
[4] = "$100,000 years", -- precision: hundred thousand years
[5] = "$10,000 years", -- precision: ten thousand years
[6] = "$1 millennium", -- precision: millennium
[7] = "$1 century", -- precision: century
[8] = "$1s", -- precision: decade
-- the following use the format of #time parser function
[9] = "Y", -- precision: year,
[10] = "F Y", -- precision: month
[11] = "F j, Y", -- precision: day
[12] = "F j, Y ga", -- precision: hour
[13] = "F j, Y g:ia", -- precision: minute
[14] = "F j, Y g:i:sa", -- precision: second
["beforenow"] = "$1 BCE", -- how to format negative numbers for precisions 0 to 5
["afternow"] = "$1 CE", -- how to format positive numbers for precisions 0 to 5
["bc"] = '$1 "BCE"', -- how print negative years
["ad"] = "$1", -- how print positive years
["bc-addon"] = " BC", -- suffix for negative dates
["ad-addon"] = "" -- suffix for 1st century AD dates
},
["monolingualtext"] = '<span lang="%language">%text</span>',
["warnDump"] = "[[Categoria:Funció Dump del mòdul Wikidata]]"
}
local cases = {} -- functions for local grammatical cases defined at [[Module:Wikidata/i18n]]
----------------------------------------------------------------------------
-- module local functions
-- Credit to http://stackoverflow.com/a/1283608/2644759
-- cc-by-sa 3.0
local function tableMerge(t1, t2)
for k,v in pairs(t2) do
if type(v) == "table" then
if type(t1[k] or false) == "table" then
tableMerge(t1[k] or {}, t2[k] or {})
else
t1[k] = v
end
else
t1[k] = v
end
end
return t1
end
local function loadI18n()
local exist, res = pcall(require, "Module:Wikidata/i18n")
if exist and next(res) ~= nil then
tableMerge(i18n, res.i18n)
cases = res.cases
end
end
--loadI18n()
local function case(word, localcase)
if word == nil or word == '' or cases[localcase] == nil then
return word
end
return cases[localcase](word)
end
local function expandBraces(text)
if text == nil then return text end
if type(text) ~= "string" then
text = tostring(text)
end
for braces in mw.ustring.gmatch(text, "{{(.-)}}") do
local parts = mw.text.split(braces, "|")
local title = parts[1]
local parameters = {}
for i = 2, #parts do
if mw.ustring.find(parts[i], "=") then
local subparts = mw.text.split(parts[i], "=")
parameters[subparts[1]] = subparts[2]
else
table.insert(parameters, parts[i])
end
end
local braces_expanded
if mw.ustring.find(title, ":") then
braces_expanded = mw.getCurrentFrame():callParserFunction{name=title, args=parameters}
else
braces_expanded = mw.getCurrentFrame():expandTemplate{title=title, args=parameters}
end
text = mw.ustring.gsub(text, "{{" .. title .. ".-}}", braces_expanded)
end
return text
end
local function printDatavalueString(data, parameter)
if parameter == 'weblink' then
return '[' .. data .. ' ' .. mw.text.split(data, '//' )[2] .. ']'
elseif mw.ustring.find((parameter or ''), '$1', 1, true) then -- formatting = a pattern
return expandBraces(mw.ustring.gsub(parameter, '$1', data))
else
return data
end
end
local function printDatavalueCoordinate(data, parameter)
if parameter == 'latitude' then
return data.latitude
elseif parameter == 'longitude' then
return data.longitude
elseif parameter == 'dimension' then
return data.dimension
else --default formatting='globe'
if data.globe == '' or data.globe == nil or data.globe == 'http://www.wikidata.org/entity/Q2' then
return 'earth'
else
local globenum = mw.text.split(data.globe, 'entity/')[2] -- http://www.wikidata.org/wiki/Q2
local globetable = mw.loadData('Module:Mapa cos celeste/dades')
for _, globe in pairs(globetable.maps) do
if globe.wikidata == globenum then
return globe.coord_globe
end
end
return globenum
end
end
end
local function printDatavalueQuantity(data, parameter)
-- exemples: 277±1 Centímetre, 1,94 metre
local amount = data.amount
amount = mw.ustring.gsub(amount, "%+", "")
local sortkey = string.format("%09d", amount)
local lang = mw.language.new(wiki.langcode)
amount = lang:formatNum(tonumber(amount))
-- This is used to get the unit name for a numeric value
local suffix = ""
if parameter == "unit" or parameter == "unitcode" then
-- get the url for the unit entry on Wikidata:
local unitID = data.unit
-- and just return the last bit from "Q" to the end (which is the QID):
unitID = mw.ustring.sub(unitID, mw.ustring.find(unitID, "Q"), -1)
if mw.ustring.sub(unitID, 1, 1) == "Q" then
local unit_label = mw.wikibase.label(unitID)
suffix = " " .. require("Module:Wikidata/Units").getUnit(amount, unit_label, unitID, parameter == "unitcode")
end
end
return amount .. suffix, sortkey
end
local function printDatavalueTime(data, parameter)
-- Dates and times are stored in ISO 8601 format
local timestamp = data.time
local sortkey = timestamp
local addon = ""
-- check for negative date, ex. "-0027-01-16T00:00:00Z"
if string.sub(timestamp, 1, 1) == '-' then
timestamp = '+' .. string.sub(timestamp, 2)
addon = i18n.datetime["bc-addon"]
elseif string.sub(timestamp, 2, 3) == '00' then
addon = i18n.datetime["ad-addon"]
end
local function d(f, t)
return mw.language.new(wiki.langcode):formatDate(f, t or timestamp) .. addon
end
local precision = data.precision or 11
local intyear = tonumber(mw.ustring.match(timestamp, "^\+?%d+"))
local ret = ""
-- precision is 10000 years or more
if precision <= 5 then
local factor = 10 ^ ((5 - precision) + 4)
local y2 = math.ceil(math.abs(intyear) / factor)
local relative = mw.ustring.gsub(i18n.datetime[precision], "$1", tostring(y2))
if addon == i18n.datetime["bc-addon"] then
-- negative date
ret = mw.ustring.gsub(i18n.datetime.beforenow, "$1", relative)
else
ret = mw.ustring.gsub(i18n.datetime.afternow, "$1", relative)
end
-- precision is millennia, centuries or decades
elseif precision == 6 then
local card = math.floor((intyear - 1) / 1000) + 1
if mw.ustring.find(i18n.datetime[6], "$1") then
ret = mw.ustring.gsub(i18n.datetime[6], "$1", tostring(card)) .. addon
else
ret = d(i18n.datetime[6], string.format("%04d", tostring(card)))
end
elseif precision == 7 then
local card = math.floor((math.abs(intyear) - 1) / 100) + 1
if mw.ustring.find(i18n.datetime[7], "$1") then
ret = mw.ustring.gsub(i18n.datetime[7], "$1", tostring(card)) .. addon
else
ret = d(i18n.datetime[7], string.format("%04d", tostring(card)))
end
elseif precision == 8 then
local card = math.floor(math.abs(intyear) / 10) * 10
ret = mw.ustring.gsub(i18n.datetime[8], "$1", tostring(card)) .. addon
-- precision is year
elseif parameter == 'Y' or precision == 9 then
ret = tostring(intyear) .. addon
-- precision is month
elseif precision == 10 then
timestamp = timestamp .. " + 1 day" -- formatDate yyyy-mm-00 returns the previous month
ret, _ = string.gsub(d(i18n.datetime[10]), " 0+", " ") -- supress leading zeros in year
elseif parameter then
ret, _ = string.gsub(d(parameter), "([ %[])0+", "%1") -- supress leading zeros in year optionally linked
else
ret, _ = string.gsub(d(i18n.datetime[11]), " 0+", " ")
end
return ret, sortkey
end
local function printDatavalueEntity(data, parameters)
local entityId = "Q" .. tostring(data['numeric-id'])
local label = mw.wikibase.label(entityId)
local sitelink = mw.wikibase.sitelink(entityId)
local parameter = parameters.formatting
local labelcase = label or sitelink
if parameters.case then
labelcase = case(labelcase, parameters.case)
end
if parameter == 'raw' then
return entityId, entityId
elseif parameter == 'label' then
return (labelcase or entityId), (labelcase or entityId)
elseif parameter == 'sitelink' then
return (sitelink or 'wikidata:' .. entityId), (sitelink or entityId)
elseif mw.ustring.find((parameter or ''), '$1', 1, true) then -- formatting = a pattern
local ret = mw.ustring.gsub(parameter, '$1', labelcase or entityId)
ret = expandBraces(ret)
return ret, labelcase or entityId
else
if sitelink then
return '[[' .. sitelink .. '|' .. labelcase .. ']]', labelcase
elseif label and parameter == 'internallink' then
return '[[' .. label .. '|' .. labelcase .. ']]', labelcase
else
return '[[wikidata:' .. entityId .. '|' .. (labelcase or entityId) .. ']]', labelcase or entityId
end
end
end
local function printDatavalueMonolingualText(data, parameter)
-- data fields: language [string], text [string]
local result = nil
if parameter == "language" or parameter == "text" then
result = data[parameter]
elseif parameter then
if data["language"] == wiki.langcode then
result = data["text"]
end
else
result = mw.ustring.gsub(mw.ustring.gsub(i18n.monolingualtext, "%%language", data["language"]), "%%text", data["text"])
end
return result
end
local function printDatatypeMath(data)
return mw.getCurrentFrame():callParserFunction('#tag:math', data)
end
local function printError(key)
return '<span class="error">' .. i18n.errors[key] .. '</span>'
end
local function findClaims(entity, property)
if not property or not entity or not entity.claims then return end
if mw.ustring.match(property, "^P%d+$") then
-- if the property is given by an id (P..) access the claim list by this id
return entity.claims[property]
else
property = mw.wikibase.resolvePropertyId(property)
if not property then return end
return entity.claims[property]
end
end
local function getSnakValue(snak, parameters)
local parameter = parameters.formatting
if snak.snaktype == 'value' then
-- call the respective snak parser
if snak.datatype == 'math' then
return printDatatypeMath(snak.datavalue.value)
elseif snak.datavalue.type == "string" then
return printDatavalueString(snak.datavalue.value, parameter)
elseif snak.datavalue.type == "globecoordinate" then
return printDatavalueCoordinate(snak.datavalue.value, parameter)
elseif snak.datavalue.type == "quantity" then
return printDatavalueQuantity(snak.datavalue.value, parameter)
elseif snak.datavalue.type == "time" then
return printDatavalueTime(snak.datavalue.value, parameter)
elseif snak.datavalue.type == 'wikibase-entityid' then
return printDatavalueEntity(snak.datavalue.value, parameters)
elseif snak.datavalue.type == 'monolingualtext' then
return printDatavalueMonolingualText(snak.datavalue.value, parameter)
end
end
return mw.wikibase.renderSnak(snak)
end
local function getQualifierSnak(claim, qualifierId, parameters)
-- a "snak" is Wikidata terminology for a typed key/value pair
-- a claim consists of a main snak holding the main information of this claim,
-- as well as a list of attribute snaks and a list of references snaks
if qualifierId then
-- search the attribute snak with the given qualifier as key
if claim.qualifiers then
local qualifier = claim.qualifiers[qualifierId]
if qualifier then
-- iterate over monolingualtext qualifiers to get local language
for idx in pairs(qualifier) do
if qualifier[idx].datavalue and qualifier[idx].datavalue.value and qualifier[idx].datavalue.value.language then
if qualifier[idx].datavalue.value.language == wiki.langcode then
return qualifier[idx]
end
end
end
if parameters.list then
return qualifier
else
return qualifier[1]
end
end
end
return nil, printError("qualifier-not-found")
else
-- otherwise return the main snak
return claim.mainsnak
end
end
local function getValueOfClaim(claim, qualifierId, parameters)
local error
local snak
snak, error = getQualifierSnak(claim, qualifierId, parameters)
if not snak then
return nil, nil, error
elseif snak[1] then -- a multi qualifier
local result = {}
local sortkey = {}
for idx in pairs(snak) do
result[#result + 1], sortkey[#sortkey + 1] = getSnakValue(snak[idx], parameters)
end
return mw.text.listToText(result, parameters.qseparator, parameters.qconjunction), sortkey[1]
else -- a property or a qualifier
return getSnakValue(snak, parameters)
end
end
-- Return the site link (for the current site) for a given data item.
function p.getSiteLink(frame)
if frame.args[1] == nil then
entity = mw.wikibase.getEntityObject()
if not entity then
return nil
end
id = entity.id
else
id = frame.args[1]
end
return mw.wikibase.sitelink(id)
end
-- A la consola de depuració useu: =p._debug({item="Q...", property="P...", ...})
function p._debug(args)
return p._main(args)
end
function p.claim(frame)
if mw.title.new(frame:getParent():getTitle()).isContentPage and not mw.title.new(frame:getTitle()).isSubpage then
-- invoked from a content page and not invoking a module subpage
if frame.args["showerrors"] then
return printError("not-from-content-page")
else
return frame.args.default
end
end
return p._main(frame.args)
end
function p._main(args)
--If a value is already set, use it
if args.value and args.value ~= '' then
return args.value
end
-- arguments
local property = args["property"] or ""
local id = args["item"]; if id == "" then id = nil end
local idgender = args["itemgender"]
if idgender and not string.match(idgender, "^Q%d+$") then -- id malformed, maybe "unknown value"
idgender = nil
end
local qualifierId = {}
qualifierId[1] = args["qualifier"]
for i = 2, 9 do
qualifierId[i] = args["qualifier" .. i]
end
local parameter = args["formatting"] or ''; if parameter == "" then parameter = nil end
local case = args.case
local list = args["list"] or true; if list == "false" then list = false end
local sorting = args.tablesort
local separator = args.separator
local conjunction = args.conjunction or args.separator
local rowformat = args.rowformat
local showerrors = args["showerrors"]
local default = args["default"]
property = property:gsub("^p(%d)", "P%1")
if qualifierId[1] then qualifierId[1] = qualifierId[1]:gsub("^p(%d)", "P%1") end
local parameters = {["formatting"] = parameter, ["list"] = list, ["sorting"] = sorting, ["case"] = case,
["separator"] = separator, ["conjunction"] = conjunction, ["qseparator"] = separator, ["qconjunction"] = conjunction}
local preformat = ""
local postformat = ""
if parameters.formatting == "table" then
parameters.separator = parameters.separator or "<br />"
parameters.conjunction = parameters.conjunction or "<br />"
parameters.qseparator = ", "
parameters.qconjunction = ", "
if not rowformat then
rowformat = "$0 ($1"
for i = 2, 9 do
if qualifierId[i] then
rowformat = rowformat .. ", $" .. i
end
end
rowformat = rowformat .. ")"
elseif mw.ustring.find(rowformat, "^[*#]") then
parameters.separator = "</li><li>"
parameters.conjunction = "</li><li>"
if mw.ustring.match(rowformat, "^[*#]") == "*" then
preformat = "<ul><li>"
postformat = "</li></ul>"
else
preformat = "<ol><li>"
postformat = "</li></ol>"
end
rowformat = mw.ustring.gsub(rowformat, "^[*#] ?", "")
end
end
if default then showerrors = nil end
-- get wikidata entity
local entity = mw.wikibase.getEntityObject(id)
if not entity then
if showerrors then return printError("entity-not-found") else return default end
end
-- fetch the first claim of satisfying the given property
local claims = findClaims(entity, property)
if not claims or not claims[1] then
if showerrors then return printError("property-not-found") else return default end
end
-- find feminine case if gender is requested
if parameters.case == "gender" or idgender then
local genderEntity = idgender and mw.wikibase.getEntityObject(idgender) or entity
local genderClaims = genderEntity.claims["P21"]
if genderClaims then
local genderId = getValueOfClaim(genderClaims[1], nil, {["formatting"]="raw"})
if genderId == "Q6581072" or genderId == "Q1052281" then -- female or transgender female
parameters.case = (parameters.case == "infoboxlabel") and "labelfeminine" or "feminine"
end
end
end
-- get initial sort indices
local sortindices = {}
for idx in pairs(claims) do
sortindices[#sortindices + 1] = idx
end
-- sort by claim rank
local comparator = function(a, b)
local rankmap = { deprecated = 2, normal = 1, preferred = 0 }
local ranka = rankmap[claims[a].rank or "normal"] .. string.format("%08d", a)
local rankb = rankmap[claims[b].rank or "normal"] .. string.format("%08d", b)
return ranka < rankb
end
table.sort(sortindices, comparator)
local result
local error
if parameters.list or parameters.formatting == "table" then
-- iterate over all elements and return their value (if existing)
local value, valueq
local sortkey, sortkeyq
local values = {}
local sortkeys = {}
local firstrank = parameters.list == "firstrank" and claims[sortindices[1]].rank or ''
for idx in pairs(claims) do
local claim = claims[sortindices[idx]]
if firstrank ~= '' and firstrank ~= claim.rank then
break
end
values[#values + 1] = {}
sortkeys[#sortkeys + 1] = {}
if parameters.formatting == "table" then
local params = mw.clone(parameters)
params.formatting = args["colformat0"]
value, sortkey, error = getValueOfClaim(claim, nil, params)
for i, qual in ipairs(qualifierId) do
params.formatting = args["colformat" .. i]
valueq, sortkeyq, _ = getValueOfClaim(claim, qual, params)
values[#values]["col" .. i] = valueq
sortkeys[#sortkeys]["col" .. i] = sortkeyq or valueq
end
else
value, sortkey, error = getValueOfClaim(claim, qualifierId[1], parameters)
end
if not value and showerrors then value = error end
values[#values]["col0"] = value
sortkeys[#sortkeys]["col0"] = sortkey or value
end
-- sort and format results
sortindices = {}
for idx in pairs(values) do
sortindices[#sortindices + 1] = idx
end
if parameters.sorting then
local comparator = function(a, b)
valuea = sortkeys[a]["col" .. parameters.sorting] or ''
valueb = sortkeys[b]["col" .. parameters.sorting] or ''
return valuea < valueb
end
table.sort(sortindices, comparator)
end
result = {}
for idx in pairs(values) do
local valuerow = values[sortindices[idx]]
value = valuerow["col0"]
if parameters.formatting == "table" then
value = mw.ustring.gsub(rowformat, "$0", value)
for i, _ in ipairs(qualifierId) do
valueq = valuerow["col" .. i]
if args["rowsubformat" .. i] and valueq then
valueq = mw.ustring.gsub(args["rowsubformat" .. i], "$" .. i, valueq)
end
value = mw.ustring.gsub(value, "$" .. i, valueq or '')
end
end
value = expandBraces(value)
result[#result + 1] = value
end
result = preformat .. mw.text.listToText(result, parameters.separator, parameters.conjunction) .. postformat
else
-- return first element
local claim = claims[sortindices[1]]
result, _, error = getValueOfClaim(claim, qualifierId[1], parameters)
end
if result then return result else
if showerrors then return error else return default end
end
end
-- This is used to get the TA98 (Terminologia Anatomica first edition 1998) values like 'A01.1.00.005' (property P1323)
-- which are then linked to http://www.unifr.ch/ifaa/Public/EntryPage/TA98%20Tree/Entity%20TA98%20EN/01.1.00.005%20Entity%20TA98%20EN.htm
-- uses the newer mw.wikibase calls instead of directly using the snaks
-- formatPropertyValues returns a table with the P1323 values concatenated with ", " so we have to split them out into a table in order to construct the return string
p.getTAValue = function(frame)
local ent = mw.wikibase.getEntityObject()
local props = ent:formatPropertyValues('P1323')
local out = {}
local t = {}
for k, v in pairs(props) do
if k == 'value' then
t = mw.text.split( v, ", ")
for k2, v2 in pairs(t) do
out[#out + 1] = "[http://www.unifr.ch/ifaa/Public/EntryPage/TA98%20Tree/Entity%20TA98%20EN/" .. string.sub(v2, 2) .. "%20Entity%20TA98%20EN.htm " .. v2 .. "]"
end
end
end
local ret = table.concat(out, "<br> ")
if #ret == 0 then
ret = "Invalid TA"
end
return ret
end
-- look into entity object
function p.ViewSomething(frame)
local f = (frame.args[1] or frame.args.item) and frame or frame:getParent()
local id = f.args.item
if id and (#id == 0) then
id = nil
end
local data = mw.wikibase.getEntityObject(id)
if not data then
return nil
end
local i = 1
while true do
local index = f.args[i]
if not index then
if type(data) == "table" then
return frame:extensionTag('syntaxhighlight', mw.text.jsonEncode(data, mw.text.JSON_PRETTY), {lang = 'json'})
else
return tostring(data)
end
end
data = data[index] or data[tonumber(index)]
if not data then
return
end
i = i + 1
end
end
-- Dump data tree structure
-- From pl:Module:Wikidane, by User:Paweł Ziemian
-- Funció pensada com a eina d'ajuda en previsualització.
function p.Dump(frame)
local data = mw.wikibase.getEntityObject()
if not data then
return i18n.warnDump
end
local f = frame.args[1] and frame or frame:getParent()
local i = 1
while true do
local index = f.args[i]
if not index then
return frame:extensionTag('syntaxhighlight', mw.dumpObject(data), {lang = 'json'}) .. i18n.warnDump
end
data = data[index] or data[tonumber(index)]
if not data then
return i18n.warnDump
end
i = i + 1
end
end
-- Look into entity object
-- From pl:Module:Wikidane, function V, by User:Paweł Ziemian
function p.getEntityFromTree(frame)
local data = mw.wikibase.getEntityObject()
if not data then
return nil
end
local f = frame.args[1] and frame or frame:getParent()
local i = 1
while true do
local index = f.args[i]
if not index then
return tostring(data)
end
data = data[index] or data[tonumber(index)]
if not data then
return
end
i = i + 1
end
end
-- getParentValues: returns a property value with its instance label fetching a recursive tree
local function uc_first(word)
return mw.ustring.upper(mw.ustring.sub(word, 1, 1)) .. mw.ustring.sub(word, 2)
end
local function getPropertyValue(id, property, parameter)
local entity = mw.wikibase.getEntityObject(id)
if not (entity and entity.claims) then return end
local claims = entity.claims[property]
if not claims then return end
-- get initial sort indices
local sortindices = {}
for idx in pairs(claims) do
sortindices[#sortindices + 1] = idx
end
-- sort by claim rank
local comparator = function(a, b)
local rankmap = { deprecated = 2, normal = 1, preferred = 0 }
local ranka = rankmap[claims[a].rank or "normal"] .. string.format("%08d", a)
local rankb = rankmap[claims[b].rank or "normal"] .. string.format("%08d", b)
return ranka < rankb
end
table.sort(sortindices, comparator)
local snak = claims[sortindices[1]].mainsnak
local entityId
local result = '-' -- default for 'no value'
if snak.datavalue then
entityId = "Q" .. tostring(snak.datavalue.value['numeric-id'])
result, _ = getSnakValue(snak, {formatting=parameter})
end
return entityId, result
end
function p.getParentValues(frame)
local args = frame.args
local id = args["item"]; if id == "" then id = nil end
local propertySup = args["property"]; if (propertySup == nil or propertySup == "") then propertySup = "P131" end --administrative entity
local propertyLabel = args["label"]; if (propertyLabel == nil or propertyLabel == "") then propertyLabel = "P31" end --instance
local propertyLink = args["valuetext"]; if propertyLink == "" then propertyLink = nil end --internallink
local upto = args["upto"]; if upto == "" then upto = nil end
local labelShow = args["labelshow"]; if labelShow == "" then labelShow = nil end
local rowformat = args["rowformat"]; if (rowformat == nil or rowformat == "") then rowformat = "$0 = $1" end
local separator = args["separator"]; if (separator == nil or separator == "") then separator = "<br />" end
local sorting = args["sorting"]; if sorting == "" then sorting = nil end
local lastlabel = uc_first(upto or '')
local maxloop = tonumber(upto) or (lastlabel == '' and 10 or 50)
local labelFilter = {}
if labelShow then
for i, v in ipairs(mw.text.split(labelShow, "/")) do
labelFilter[uc_first(v)] = true
end
end
local result = {}
local label, link, linktext
for iter = 1, maxloop do
local label, link
id, link = getPropertyValue(id, propertySup, "internallink")
if id then
_, label = getPropertyValue(id, propertyLabel, "label")
if label and link then
if propertyLink then
_, linktext = getPropertyValue(id, propertyLink, "label")
if linktext then
link = mw.ustring.gsub(link, "%[%[(.*)%|.+%]%]", "[[%1|" .. linktext .. "]]")
end
end
label = case(label, "infoboxlabel")
if labelShow == nil or labelFilter[label] then
result[#result + 1] = {label, link}
end
if label == lastlabel then
break
end
else
break
end
else
break
end
end
local ret = {}
local first = 1
local last = #result
local iter = 1
if sorting == "-1" then first = #result; last = 1; iter = -1 end
for i = first, last, iter do
local rowtext = mw.ustring.gsub(rowformat, "$[01]", {["$0"] = result[i][1], ["$1"] = result[i][2]})
ret[#ret +1] = expandBraces(rowtext)
end
return mw.text.listToText(ret, separator, separator)
end
function p.linkWithParentLabel(frame)
local args = {}
for k, v in pairs(frame.args) do -- metatable
args[k] = v
end
args.list = "false"
args.formatting = "internallink"
local link = p._main(args) -- get internal link of property/qualifier
args.formatting = "raw"
args.item = p._main(args) -- get item of property/qualifier
args.property = args.parent
args.qualifier = nil
args.formatting = "label"
local link_label = p._main(args) -- get label of parent property
if link_label then
link = mw.ustring.gsub(link or '', "%[%[(.*)%|.+%]%]", "[[%1|" .. link_label .. "]]")
end
return link
end
return p
q8eaqay8y06rjy2norg17xv547rd7cx
Module:Wikidata/datum/testcases
828
3409
36616
2025-12-15T20:02:31Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local myModule = require 'Module:Wikidata/datum' local Time = require 'Module:Time' local ScribuntoUnit = require 'Module:ScribuntoUnit' local suite = ScribuntoUnit:new() function suite:testYearDifference() local provider = { { '1890-01-09', '1938-12-25', 48 }, { '1890-01-09', '1990-01-09', 100 }, { '1890-01-09', '1938-12', 48 }, { '1890-01-09', '1938-01', 47, '47–48' }, { '1890-01-09', '1938', 47, '47–48' }, { '18...'
36616
Scribunto
text/plain
local myModule = require 'Module:Wikidata/datum'
local Time = require 'Module:Time'
local ScribuntoUnit = require 'Module:ScribuntoUnit'
local suite = ScribuntoUnit:new()
function suite:testYearDifference()
local provider = {
{ '1890-01-09', '1938-12-25', 48 },
{ '1890-01-09', '1990-01-09', 100 },
{ '1890-01-09', '1938-12', 48 },
{ '1890-01-09', '1938-01', 47, '47–48' },
{ '1890-01-09', '1938', 47, '47–48' },
{ '1890-01', '1938-12-25', 48 },
{ '1890-12', '1938-12-25', 47, '47–48' },
{ '1890-01', '1938-12', 48 },
{ '1890-12', '1938-12', 47, '47–48' },
{ '1890-01', '1938', 47, '47–48' },
{ '1890', '1938-12-25', 47, '47–48' },
{ '1890', '1938-12', 47, '47–48' },
{ '1890', '1938', 47, '47–48' },
}
for _, dates in ipairs(provider) do
local sooner = Time.newFromIso8601(dates[1])
local later = Time.newFromIso8601(dates[2])
local num_age, display_age = myModule.yearDifference(sooner, later)
self:assertEquals(dates[3], num_age)
self:assertEquals(dates[4] or dates[3], display_age)
end
end
function suite:testJulianToGregorian()
local provider = {
{
gregorian = '1582-10-15',
julian = '1582-10-05'
},
{
gregorian = '1582-11-10',
julian = '1582-10-31'
},
{
gregorian = '1583-01-09',
julian = '1582-12-30'
},
{
gregorian = '1583-01-09',
julian = '1582-12-30'
},
{
gregorian = '1583-03-09',
julian = '1583-02-27'
},
{
gregorian = '1584-03-08',
julian = '1584-02-27'
},
{
gregorian = '1600-03-08',
julian = '1600-02-27'
},
{
gregorian = '1700-02-28',
julian = '1700-02-18'
},
{
gregorian = '1700-03-01',
julian = '1700-02-19'
},
{
gregorian = '1700-03-10',
julian = '1700-02-28'
},
{
gregorian = '1700-03-11',
julian = '1700-02-29'
},
}
for _, data in ipairs(provider) do
local julian = Time.newFromIso8601(data.julian)
local gregorian = Time.newFromIso8601(data.gregorian)
julian.calendar = julian.CALENDAR.JULIAN
gregorian.calendar = julian.CALENDAR.GREGORIAN
self:assertEquals(gregorian, myModule.julianToGregorian(julian))
end
end
function suite:testFormatTimevalue()
local provider = {
{
iso = '1890-01-09',
formatted = '[[9. leden|9. ledna]] [[1890]]'
},
{
iso = '1890-01-09',
formatted = '9. ledna 1890',
options = { nolink = true }
},
{
iso = '123',
formatted = '[[123]]'
},
{
iso = '123',
formatted = '123',
options = { nolink = true }
},
{
iso = '-123',
formatted = '[[123 př. n. l.|123 př. n. l.]]'
},
{
iso = '-123',
formatted = '123 př. n. l.',
options = { nolink = true }
},
{
iso = '1890-01-09',
formatted = '[[1890]]',
options = { precision = 9 }
},
{
iso = '1890',
formatted = '[[1890]]',
options = { precision = 10 }
},
{
iso = '1890',
precision = 8,
formatted = 'Desetiletí od 1890'
},
{
iso = '1890',
formatted = '[[19. století|19. století]]',
options = { precision = 7 }
},
{
iso = '1900',
precision = 7,
formatted = '[[19. století|19. století]]'
},
}
for _, data in ipairs(provider) do
local timevalue = Time.newFromIso8601(data.iso)
if data.precision then
timevalue.precision = data.precision
end
local options = data.options or {}
self:assertEquals(data.formatted, myModule.formatTimevalue(timevalue, options))
end
end
return suite
kdmj15f9xcmjp8vgiuub4iir2mb213u
Module:Wikidata/Formatters/quantity/testcases
828
3410
36617
2025-12-15T20:03:29Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local myModule = require 'Module:Wikidata/Formatters/quantity' local builder = require 'Module:Wikidata/build' local ScribuntoUnit = require 'Module:ScribuntoUnit' local suite = ScribuntoUnit:new() function suite:testGetRawValue() for _, val in ipairs{ -1, 0, 0.5, 1 } do local value = builder.buildValueFromDatatype{ datatype = 'quantity', value = val } self:assertEquals(val, myModule.getRawValue(value, {})) end end function suite:te...'
36617
Scribunto
text/plain
local myModule = require 'Module:Wikidata/Formatters/quantity'
local builder = require 'Module:Wikidata/build'
local ScribuntoUnit = require 'Module:ScribuntoUnit'
local suite = ScribuntoUnit:new()
function suite:testGetRawValue()
for _, val in ipairs{ -1, 0, 0.5, 1 } do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
value = val
}
self:assertEquals(val, myModule.getRawValue(value, {}))
end
end
function suite:testGetRawValueConvertUnit()
local provider = {
{
amount = 3,
expected = 3000,
tounit = 'Q11573', -- metre
unit = 'Q828224' -- kilometre
},
{
amount = 1000,
expected = 1609344,
tounit = 'Q11573', -- metre
unit = 'Q253276' -- mile
},
{
amount = 123,
expected = 123,
tounit = 'Q11573', -- metre
unit = 'Q11570' -- kilogram
},
{
amount = 1,
expected = 1000000,
tounit = 'Q174789', -- millimetre
unit = 'Q828224' -- kilometre
},
}
for _, data in ipairs(provider) do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
value = data.amount,
unit = data.unit,
}
local options = { unit = data.tounit }
self:assertEquals(data.expected, myModule.getRawValue(value, options))
end
end
function suite:testFormatRawValue()
local provider = {
{
value = 1,
expected = '1'
},
{
value = 0,
expected = '0'
},
{
value = -1,
expected = '−1'
},
{
value = 1.5,
expected = '1,5'
},
{
value = 12345678,
expected = '12 345 678'
},
{
value = 1.234567,
expected = '1,234 567'
},
{
value = -1234.5678,
expected = '−1 234,567 8'
},
}
for _, data in ipairs(provider) do
self:assertEquals(data.expected, myModule.formatRawValue(data.value, {}))
end
end
function suite:testFormatValue()
for _, val in ipairs{ -1, math.pi, 1234 } do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
value = val,
}
self:assertEquals(
myModule.formatRawValue(val, {}),
myModule.formatValue(value, {})
)
end
end
function suite:testFormatValueWithMargin()
for _, diff in ipairs{ 0, 1, 2.5, false } do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
diff = diff or nil,
value = 10,
}
if diff then
self:assertEquals(
'10±' .. myModule.formatRawValue(diff, {}),
myModule.formatValue(value, { showmargin = true })
)
else
self:assertEquals('10', myModule.formatValue(value, {}))
end
end
end
function suite:testFormatValueWithUnit()
for _, unit in ipairs{ 'Q11573', 'Q11570', 'Q199', false } do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
unit = unit or nil,
value = 10,
}
local result = myModule.formatValue(value, {})
if not unit or unit == 'Q199' then
self:assertEquals('10', result)
else
self:assertStringContains('^10 %[%[', result)
self:assertStringContains('%]%]$', result)
end
end
end
function suite:testFormatValueWithUnitConverted()
local provider = {
{
amount = 3,
convert = true,
expected = 3000,
tounit = 'Q11573', -- metre
unit = 'Q828224' -- kilometre
},
{
amount = 1000,
convert = true,
expected = 1609344,
tounit = 'Q11573', -- metre
unit = 'Q253276' -- mile
},
{
amount = 123,
convert = false,
expected = 123,
tounit = 'Q11573', -- metre
unit = 'Q11570' -- kilogram
},
}
for _, data in ipairs(provider) do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
unit = data.unit,
value = data.amount,
}
local result = myModule.formatValue(value, { unit = data.tounit })
if data.convert then
self:assertStringContains(
myModule.formatRawValue(data.expected) .. ' [[' .. mw.wikibase.sitelink(data.tounit) .. '|',
result,
true
)
else
self:assertStringContains(
myModule.formatRawValue(data.amount) .. ' [[' .. mw.wikibase.sitelink(data.unit) .. '|',
result,
true
)
end
end
end
function suite:testFormatValueSuppressUnit()
for _, unit in ipairs{ 'Q11573', 'Q11570' } do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
unit = unit,
value = 1,
}
local result = myModule.formatValue(value, { showunit = false })
self:assertNotStringContains('[[', result, true)
self:assertNotStringContains(']]', result, true)
end
end
return suite
iicocq9n8e88ku7iva1tmru5tnxg2gi
Module:Wikidata/Formatters/wikibase-entityid/testcases
828
3411
36618
2025-12-15T20:04:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local myModule = require 'Module:Wikidata/Formatters/wikibase-entityid' local builder = require 'Module:Wikidata/build' local ScribuntoUnit = require 'Module:ScribuntoUnit' local suite = ScribuntoUnit:new() function suite:testGetRawValue() local value = builder.buildValueFromDatatype{ datatype = 'wikibase-item', value = 1085 } self:assertEquals('Q1085', myModule.getRawValue(value, {})) self:assertEquals(1085, myModule.getRawValue(value, { numer...'
36618
Scribunto
text/plain
local myModule = require 'Module:Wikidata/Formatters/wikibase-entityid'
local builder = require 'Module:Wikidata/build'
local ScribuntoUnit = require 'Module:ScribuntoUnit'
local suite = ScribuntoUnit:new()
function suite:testGetRawValue()
local value = builder.buildValueFromDatatype{ datatype = 'wikibase-item', value = 1085 }
self:assertEquals('Q1085', myModule.getRawValue(value, {}))
self:assertEquals(1085, myModule.getRawValue(value, { numeric = true }))
local value = builder.buildValueFromDatatype{ datatype = 'wikibase-property', value = 1 }
self:assertEquals('P1', myModule.getRawValue(value, {}))
self:assertEquals(1, myModule.getRawValue(value, { numeric = true }))
end
function suite:testFormatValue()
local options = {}
local value = builder.buildValueFromDatatype{ datatype = 'wikibase-item', value = 1085 }
for _, numeric in ipairs{ false, true } do
options.numeric = numeric
self:assertEquals(
myModule.formatEntityId('Q1085', options),
myModule.formatValue(value, options)
)
end
end
function suite:testFormatEntityId()
self:assertEquals( '[[Praha|Praha]]', myModule.formatEntityId( 'Q1085' ) )
self:assertEquals( mw.wikibase.label( 'Q4115189' ), myModule.formatEntityId( 'Q4115189' ) )
self:assertEquals(
myModule.getLinkWhenNonexistingLabel( 'Q6' ), -- neexistující položka
myModule.formatEntityId( 'Q6' )
)
end
function suite:testFormatEntityGender()
local options = { label = 'gender' }
local value = 'Q36180'
options.id = 'Q157970' -- Božena Němcová (žena)
self:assertStringContains( 'spisovatelka', myModule.formatEntityId( value, options ), true )
self:assertStringContains( '[[Spisovatel|', myModule.formatEntityId( value, options ), true )
options.id = 'Q155855' -- Karel Čapek (muž)
self:assertNotStringContains( 'spisovatelka', myModule.formatEntityId( value, options ), true )
self:assertStringContains( 'spisovatel', myModule.formatEntityId( value, options ), true )
self:assertStringContains( '[[Spisovatel|', myModule.formatEntityId( value, options ), true )
options.id = 'Q1085' -- Praha (eh?)
self:assertNotStringContains( 'spisovatelka', myModule.formatEntityId( value, options ), true )
self:assertStringContains( 'spisovatel', myModule.formatEntityId( value, options ), true )
self:assertStringContains( '[[Spisovatel|', myModule.formatEntityId( value, options ), true )
end
function suite:testGetLinkWhenNonexistingLabel()
self:assertStringContains( 'Q6', myModule.getLinkWhenNonexistingLabel( 'Q6' ), true )
end
function suite:testFormatUnit()
local options = { label = 'unitsymbol' }
self:assertEquals('[[Metr|m]]', myModule.formatEntityId('Q11573', options))
self:assertEquals(myModule.formatEntityId('Q1085', {}), myModule.formatEntityId('Q1085', options))
end
return suite
j0nbhvw1l17g2b9h7br8trai4p0nehf
Module:Wikidata/compare
828
3412
36619
2025-12-15T20:04:47Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' -- @const local br_split = '%s*<[^<>%w]-br[^<>%w]->%s*' local function in_array(value, array) for _, val in ipairs(array) do if val == value then return true end end return false end local function stripBrackets(text) return mw.ustring.gsub(text, '%s*%([^%)]+%)', '') end local function markValue(value, as, options) return '<span class="wd-' .. as .. '">' .....'
36619
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
-- @const
local br_split = '%s*<[^<>%w]-br[^<>%w]->%s*'
local function in_array(value, array)
for _, val in ipairs(array) do
if val == value then
return true
end
end
return false
end
local function stripBrackets(text)
return mw.ustring.gsub(text, '%s*%([^%)]+%)', '')
end
local function markValue(value, as, options)
return '<span class="wd-' .. as .. '">' .. value .. '</span>',
lib.category(as, options.catbase or ('Vlastnost ' .. options.property))
end
function p.compareValues(value, Statements, options)
if value == '' then
return nil, nil
end
local title = mw.title.getCurrentTitle()
if title.namespace ~= 0 and title.namespace ~= 14 then
return nil, nil
end
if #Statements == 0 then
return markValue(value, 'not', options)
end
local datatype = Statements[math.random(#Statements)].mainsnak.datatype
local temp_value = mw.ustring.gsub(value, '<([a-z]+)%f[^%w][^>]->.-</%1>%s*', '')
if datatype == "commonsMedia" or datatype == "string" then
for _, statement in ipairs(Statements) do
if lib.IsSnakValue(statement.mainsnak) then
local temp_value = stripBrackets(temp_value)
if tostring(statement.mainsnak.datavalue.value) == tostring(temp_value) then --TODO: normalizing
return markValue(value, 'same', options)
end
end
end
return markValue(value, 'diff', options)
elseif datatype == "monolingualtext" then
for _, statement in ipairs(Statements) do
if lib.IsSnakValue(statement.mainsnak) then
if statement.mainsnak.datavalue.value.text == mw.text.strip(temp_value) then
return markValue(value, 'same', options)
end
end
end
return markValue(value, 'diff', options)
elseif datatype == "quantity" then
if mw.ustring.match(temp_value, '%d+') then
for number in mw.ustring.gmatch(value, '(%-?%d+)') do
for _, statement in ipairs(Statements) do
if lib.IsSnakValue(statement.mainsnak) then
local lowerBound = tonumber(statement.mainsnak.datavalue.value.lowerBound)
local upperBound = tonumber(statement.mainsnak.datavalue.value.upperBound)
number = tonumber(number)
if number >= lowerBound and number <= upperBound then
return markValue(value, 'same', options)
end
end
end
break -- only the first one
end
end
return markValue(value, 'diff', options)
elseif datatype == "time" then
temp_value = mw.ustring.gsub(temp_value, '%[%[%s*([^|%]]+)%s*[^%]]*%]%]', '%1')
temp_value = stripBrackets(mw.ustring.lower(temp_value))
local Time = require 'Module:Time'
local Months = {
["leden"] = 1, ["ledna"] = 1,
["únor"] = 2, ["února"] = 2,
["březen"] = 3, ["března"] = 3,
["duben"] = 4, ["dubna"] = 4,
["květen"] = 5, ["května"] = 5,
["červen"] = 6, ["června"] = 6,
["červenec"] = 7, ["července"] = 7,
["srpen"] = 8, ["srpna"] = 8,
["září"] = 9,
["říjen"] = 10, ["října"] = 10,
["listopad"] = 11, ["listopadu"] = 11,
["prosinec"] = 12, ["prosince"] = 12
}
for _, statement in ipairs(Statements) do
if lib.IsSnakValue(statement.mainsnak) then
local timevalue = Time.newFromWikidataValue(statement.mainsnak.datavalue.value)
if timevalue then
for parsed in mw.text.gsplit(temp_value, br_split) do
parsed = mw.ustring.sub(parsed, 1, mw.ustring.match(parsed, '%d?%d%d()%d') or -1)
local parsedTable = {}
for _, value in ipairs(mw.text.split(parsed, '[^%w]+')) do
if tonumber(value) then
table.insert(parsedTable, tonumber(value))
else
if Months[value] then
table.insert(parsedTable, 2, Months[value])
else
parsedTable = {}
break
end
end
end
local Table
if #parsedTable == 1 then
Table = Time.new{
year = parsedTable[1]
}
elseif #parsedTable == 2 then
Table = Time.new{
year = parsedTable[1],
month = parsedTable[2]
}
elseif #parsedTable == 3 then
Table = Time.new{
year = math.max(parsedTable[1], parsedTable[3]),
month = parsedTable[2],
day = math.min(parsedTable[1], parsedTable[3])
}
end
if not Table then
mw.log('Nepodařilo se zanalyzovat datum ' .. parsed)
else
if timevalue == Table then
return markValue(value, 'same', options)
end
end
end
end
end
end
return markValue(value, 'diff', options)
elseif datatype == "url" then
if not mw.ustring.match(temp_value, 'https?://') then
return markValue(value, 'diff', options)
end
local WDValues = {}
for _, statement in ipairs(Statements) do
if lib.IsSnakValue(statement.mainsnak) then
table.insert(WDValues, statement.mainsnak.datavalue.value)
end
end
for url in mw.ustring.gmatch(temp_value, '(https?://[^%[%]%s]+)') do
if not in_array(url, WDValues) then
return markValue(value, 'diff', options)
end
end
return markValue(value, 'same', options)
elseif datatype == "wikibase-item" then
local WDValues, parsedValues = {}, {}
for _, statement in ipairs(Statements) do
if lib.IsSnakValue(statement.mainsnak) then
local id = lib.getEntityIdFromValue(statement.mainsnak.datavalue.value)
local value = mw.wikibase.sitelink(id) or mw.wikibase.label(id)
if value then
table.insert(WDValues, lib.common.firstToUpper(value))
end
end
end
local link_match = '%[%[[^%]%[]-%]%]'
local link_target = '%[%[%s*([^|%]]-)%s*[|%]]'
if mw.ustring.match(temp_value, br_split) then
for value in mw.text.gsplit(temp_value, br_split) do
local value = stripBrackets(value)
if mw.ustring.match(value, link_match) then
for page in mw.ustring.gmatch(value, link_target) do
table.insert(parsedValues, lib.common.firstToUpper(page))
end
else
table.insert(parsedValues, mw.text.trim(value))
end
end
elseif mw.ustring.match(temp_value, link_match) then
for value in mw.ustring.gmatch(temp_value, link_target) do
table.insert(parsedValues, lib.common.firstToUpper(value))
end
else
table.insert(parsedValues, mw.text.trim(temp_value))
end
if #parsedValues == 0 then
return markValue(value, 'diff', options)
end
for _, parsed in ipairs(parsedValues) do
if not in_array(parsed, WDValues) then
return markValue(value, 'diff', options)
end
end
return markValue(value, 'same', options)
end
--elseif datatype == "globecoordinate" then
--elseif datatype == "wikibase-property" then
return nil, nil
end
function p.compareValuesFromOptions(value, options)
local entity = mw.wikibase.getEntity(options.id)
local Filterers = require 'Module:Wikidata/Filterers'
local Statements = Filterers.filterStatementsFromEntity(entity, options)
return p.compareValues(value, Statements, options)
end
function p.compare(frame)
local args = frame.args
local value = args.value
local _, category = p.compareValuesFromOptions(value, { property = args.property, catbase = args.catbase })
return category
end
return p
q4vs4ixp3gm07tdpbqvjerrc3tiv1n5
Module:Uses Wikidata
828
3413
36620
2025-12-15T20:05:37Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.usesProperty(frame) local args = frame.getParent(frame).args or nil if mw.text.trim(args[1] or '') == '' then args = frame.args end local result = '' local ii = 1 while true do local p_num = mw.text.trim(args[ii] or '') if p_num ~= '' then local label = mw.wikibase.getLabel(p_num) or "NO LABEL" result = result .. "<ul><li>[[File:Disc Plain blue dark.svg|middle|4px|link=]] <b><i>[[d:Property talk:" .. p_num...'
36620
Scribunto
text/plain
local p = {}
function p.usesProperty(frame)
local args = frame.getParent(frame).args or nil
if mw.text.trim(args[1] or '') == '' then
args = frame.args
end
local result = ''
local ii = 1
while true do
local p_num = mw.text.trim(args[ii] or '')
if p_num ~= '' then
local label = mw.wikibase.getLabel(p_num) or "NO LABEL"
result = result .. "<ul><li>[[File:Disc Plain blue dark.svg|middle|4px|link=]] <b><i>[[d:Property talk:" .. p_num .. "|" .. label .. " (" .. string.upper(p_num) .. ")]]</i></b> (see <span class='plainlinks'>[https://query.wikidata.org/#SELECT%20%3FWikiData_item_%20%3FWikiData_item_Label%20%3Fvalue%20%3FvalueLabel%20%3FGreek_WikiPedia_article%0A%7B%0A%09%3FWikiData_item_%20wdt%3A" .. p_num .. "%20%3Fvalue%20.%0A%09OPTIONAL%20%7B%3FGreek_WikiPedia_article%20schema%3Aabout%20%3FWikiData_item_%3B%20schema%3AisPartOf%20%3Chttps%3A%2F%2Fel.wikipedia.org%2F%3E%20.%7D%0A%09SERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22el%22%20%20%7D%20%0A%7D%0ALIMIT%201000 χρήσεις]</span>)</li></ul>"
ii = ii + 1
else break
end
end
return result
end
function p.tuProperty(frame)
local parent = frame.getParent(frame)
local result = ''
local ii = 1
while true do
local p_num = mw.text.trim(parent.args[ii] or '')
if p_num ~= '' then
local label = mw.wikibase.getLabel(p_num) or "NO LABEL"
result = result .. "<ul><li><span style='font-size:90%;line-height:1;'>●</span> <b>[[d:Property:" .. p_num .. "|" .. label .. "]]</b> <span style='font-size:90%;'>([[d:Property talk:" .. string.upper(p_num) .. "|" .. p_num .. "]])</span></li></ul>"
ii = ii + 1
else break
end
end
return result
end
return p
azx0k3vtekv2eab7sqd9p4jvy7rf2cy
Module:Wikidata/Tree
828
3414
36621
2025-12-15T20:06:32Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local lib = require 'Module:Wikidata/lib' p.instance_prop = 'P31' p.abovetaxa_prop = 'P171' p.class_prop = 'P279' function p.GoInTree(item, prop, level, holder, callback) if level == 0 then return holder end local entity = mw.wikibase.getEntity(item) local Statements = entity:getBestStatements(prop) for i, statement in pairs(Statements) do local new_holder, ok = callback(holder, Statements, i) if ok and lib.IsSnakValue(st...'
36621
Scribunto
text/plain
local p = {}
local lib = require 'Module:Wikidata/lib'
p.instance_prop = 'P31'
p.abovetaxa_prop = 'P171'
p.class_prop = 'P279'
function p.GoInTree(item, prop, level, holder, callback)
if level == 0 then
return holder
end
local entity = mw.wikibase.getEntity(item)
local Statements = entity:getBestStatements(prop)
for i, statement in pairs(Statements) do
local new_holder, ok = callback(holder, Statements, i)
if ok and lib.IsSnakValue(statement.mainsnak) then
local item = lib.getEntityIdFromValue(statement.mainsnak.datavalue.value)
return p.GoInTree(item, prop, level - 1, new_holder, callback)
end
end
return holder
end
function p.IsInTree(item, root, prop, level, item_cache)
if item == root then
return true
end
if level == 0 then
return false
end
local entity = mw.wikibase.getEntity(item)
local Statements = entity:getBestStatements(prop)
for _, statement in pairs(Statements) do
if lib.IsSnakValue(statement.mainsnak) then
local item = lib.getEntityIdFromValue(statement.mainsnak.datavalue.value)
if not item_cache[item] then
item_cache[item] = item
if p.IsInTree(item, root, prop, level - 1, item_cache) then
return true
end
end
end
end
return false
end
function p.IsInstance(item, options)
local Classes = lib.textToTable(options.instance:upper())
local entity = mw.wikibase.getEntity(item)
local Statements = entity:getBestStatements(p.instance_prop)
local level = tonumber(options.level) or 10
for _, class in pairs(Classes) do
for _, statement in pairs(Statements) do
if lib.IsSnakValue(statement.mainsnak) then
local item = lib.getEntityIdFromValue(statement.mainsnak.datavalue.value)
if p.IsInTree(item, class, p.class_prop, level, {}) then
return true
end
end
end
end
return false
end
return p
fhmcpf2efuhxyi4nfa1f8id2yn4lvg0
Module:ScoreWikidata
828
3415
36622
2025-12-15T20:07:20Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με ' local p = {} function p.wikidata(frame) local entity = mw.wikibase.getEntity(frame.args[1]) local snak = entity['claims']['P577'] return p end return p'
36622
Scribunto
text/plain
local p = {}
function p.wikidata(frame)
local entity = mw.wikibase.getEntity(frame.args[1])
local snak = entity['claims']['P577']
return p
end
return p
5vmosmt8gi2r7emiml3b09zexbnmf8p
Module:Wikidata/Filterers/testcases
828
3416
36623
2025-12-15T20:08:05Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local myModule = require 'Module:Wikidata/Filterers' local builder = require 'Module:Wikidata/build' local ScribuntoUnit = require 'Module:ScribuntoUnit' local suite = ScribuntoUnit:new() function suite:testFilterByDate() self:assertTrue(false) end function suite:testFilterByRank() local provider = {} for _, rank in ipairs({ 'deprecated', 'preferred', 'normal', 'normal', 'deprecated', 'preferred' }) do table.insert(provider, builder.buildSta...'
36623
Scribunto
text/plain
local myModule = require 'Module:Wikidata/Filterers'
local builder = require 'Module:Wikidata/build'
local ScribuntoUnit = require 'Module:ScribuntoUnit'
local suite = ScribuntoUnit:new()
function suite:testFilterByDate()
self:assertTrue(false)
end
function suite:testFilterByRank()
local provider = {}
for _, rank in ipairs({ 'deprecated', 'preferred', 'normal', 'normal', 'deprecated', 'preferred' }) do
table.insert(provider, builder.buildStatement{ rank = rank, datatype = 'string', value = rank })
end
for rank, length in ipairs({ all = 6, [false] = 4, preferred = 2, normal = 2, deprecated = 2, valid = 4, best = 2 }) do
local statements = mw.clone(provider)
myModule.filterStatements(statements, { rank = rank or nil })
self:assertEquals(length, #statements)
end
end
function suite:testFilterByLanguage()
local provider = {}
for _, lang in ipairs({ 'el', 'cs', 'en', 'de', 'cs', 'xyz' }) do
table.insert(provider, builder.buildStatement{ datatype = 'monolingualtext', lang = lang, value = 'foo' })
end
table.insert(provider, 3, builder.buildStatement{ datatype = 'monolingualtext', snaktype = 'somevalue' })
for lang, length in pairs({ el = 2, en = 1, sk = 0 }) do
local statements = mw.clone(provider)
myModule.filterStatements(statements, { rank = 'all', somevalue = true, withlang = lang })
self:assertEquals(length, #statements)
end
end
function suite:testFilterHasReferences()
self:assertTrue(false)
end
function suite:testFilterHasTarget()
local provider = {}
for i = 1, 2 do
for j = i, 2 do
table.insert(provider, builder.buildStatement{ datatype = 'wikibase-item', value = i })
end
end
for id, length in pairs({ Q1 = 2, Q2 = 1, Q3 = 0 }) do
local statements = mw.clone(provider)
myModule.filterStatements(statements, { withtarget = id })
self:assertEquals(length, #statements)
end
end
function suite:testFilterHasQualifier()
local provider = {}
for i = 1, 3 do
local statement = builder.buildStatement{ datatype = 'wikibase-item', value = i }
statement.qualifiers = {}
for j = 1, i do
statement.qualifiers['P' .. j] = {
builder.buildSnak{ datatype = 'wikibase-item', value = j }
}
end
table.insert(provider, statement)
end
for prop, length in pairs({ P1 = 3, P2 = 2, P3 = 1, P4 = 0 }) do
local statements = mw.clone(provider)
myModule.filterStatements(statements, { withqualifier = prop })
self:assertEquals(length, #statements)
end
end
function suite:testFilterHasQualifier_WithValue()
local provider = {}
for i = 1, 3 do
local statement = builder.buildStatement{ datatype = 'wikibase-item', value = i }
statement.qualifiers = {
P1 = {}
}
for j = 1, i do
table.insert(statement.qualifiers.P1, builder.buildSnak{ datatype = 'wikibase-item', value = j })
end
table.insert(provider, statement)
end
for id = 1, 4 do
local statements = mw.clone(provider)
local val = mw.ustring.format('Q%s', id)
myModule.filterStatements(statements, { withqualifier = 'P1', withqualifiervalue = val })
self:assertEquals(4 - id, #statements)
end
end
function suite:testFilterItemHasLabel()
local provider = {}
for snak, value in pairs({ value = 6, value = 1085, novalue = false }) do
table.insert(provider, builder.buildStatement{ datatype = 'wikibase-item', snaktype = snak, value = value })
end
local statements = mw.clone(provider)
myModule.filterStatements(statements, { withlabel = true })
self:assertEquals(1, #statements)
end
function suite:testFilterBySnaktype()
local provider = {
{
expected = 2,
opts = {},
},
{
expected = 3,
opts = { novalue = true },
},
{
expected = 3,
opts = { somevalue = true },
},
{
expected = 4,
opts = { somevalue = true, novalue = true },
},
}
local statements = {}
for _, snaktype in ipairs{ 'somevalue', 'novalue' } do
table.insert(statements, builder.buildStatement{ datatype = 'wikibase-item', snaktype = snaktype })
end
for i = 1, 2 do
table.insert(statements, 2, builder.buildStatement{ datatype = 'wikibase-item', value = i })
end
for _, data in ipairs(provider) do
local _statements = mw.clone(statements)
myModule.filterStatements(_statements, data.opts)
self:assertEquals(data.expected, #_statements)
end
end
return suite
b5ax68fqq3vckhohmust0j1x9b3r0uj
Module:Wikidata/Formatters/testcases
828
3417
36624
2025-12-15T20:08:49Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local myModule = require 'Module:Wikidata/Formatters/quantity' local builder = require 'Module:Wikidata/build' local ScribuntoUnit = require 'Module:ScribuntoUnit' local suite = ScribuntoUnit:new() function suite:testGetRawValue() for _, val in ipairs{ -1, 0, 0.5, 1 } do local value = builder.buildValueFromDatatype{ datatype = 'quantity', value = val } self:assertEquals(val, myModule.getRawValue(value, {})) end end function suite:te...'
36624
Scribunto
text/plain
local myModule = require 'Module:Wikidata/Formatters/quantity'
local builder = require 'Module:Wikidata/build'
local ScribuntoUnit = require 'Module:ScribuntoUnit'
local suite = ScribuntoUnit:new()
function suite:testGetRawValue()
for _, val in ipairs{ -1, 0, 0.5, 1 } do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
value = val
}
self:assertEquals(val, myModule.getRawValue(value, {}))
end
end
function suite:testGetRawValueConvertUnit()
local provider = {
{
amount = 3,
expected = 3000,
tounit = 'Q11573', -- metre
unit = 'Q828224' -- kilometre
},
{
amount = 1000,
expected = 1609344,
tounit = 'Q11573', -- metre
unit = 'Q253276' -- mile
},
{
amount = 123,
expected = 123,
tounit = 'Q11573', -- metre
unit = 'Q11570' -- kilogram
},
{
amount = 1,
expected = 1000000,
tounit = 'Q174789', -- millimetre
unit = 'Q828224' -- kilometre
},
}
for _, data in ipairs(provider) do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
value = data.amount,
unit = data.unit,
}
local options = { unit = data.tounit }
self:assertEquals(data.expected, myModule.getRawValue(value, options))
end
end
function suite:testFormatRawValue()
local provider = {
{
value = 1,
expected = '1'
},
{
value = 0,
expected = '0'
},
{
value = -1,
expected = '−1'
},
{
value = 1.5,
expected = '1,5'
},
{
value = 12345678,
expected = '12 345 678'
},
{
value = 1.234567,
expected = '1,234 567'
},
{
value = -1234.5678,
expected = '−1 234,567 8'
},
}
for _, data in ipairs(provider) do
self:assertEquals(data.expected, myModule.formatRawValue(data.value, {}))
end
end
function suite:testFormatValue()
for _, val in ipairs{ -1, math.pi, 1234 } do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
value = val,
}
self:assertEquals(
myModule.formatRawValue(val, {}),
myModule.formatValue(value, {})
)
end
end
function suite:testFormatValueWithMargin()
for _, diff in ipairs{ 0, 1, 2.5, false } do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
diff = diff or nil,
value = 10,
}
if diff then
self:assertEquals(
'10±' .. myModule.formatRawValue(diff, {}),
myModule.formatValue(value, { showmargin = true })
)
else
self:assertEquals('10', myModule.formatValue(value, {}))
end
end
end
function suite:testFormatValueWithUnit()
for _, unit in ipairs{ 'Q11573', 'Q11570', 'Q199', false } do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
unit = unit or nil,
value = 10,
}
local result = myModule.formatValue(value, {})
if not unit or unit == 'Q199' then
self:assertEquals('10', result)
else
self:assertStringContains('^10 %[%[', result)
self:assertStringContains('%]%]$', result)
end
end
end
function suite:testFormatValueWithUnitConverted()
local provider = {
{
amount = 3,
convert = true,
expected = 3000,
tounit = 'Q11573', -- metre
unit = 'Q828224' -- kilometre
},
{
amount = 1000,
convert = true,
expected = 1609344,
tounit = 'Q11573', -- metre
unit = 'Q253276' -- mile
},
{
amount = 123,
convert = false,
expected = 123,
tounit = 'Q11573', -- metre
unit = 'Q11570' -- kilogram
},
}
for _, data in ipairs(provider) do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
unit = data.unit,
value = data.amount,
}
local result = myModule.formatValue(value, { unit = data.tounit })
if data.convert then
self:assertStringContains(
myModule.formatRawValue(data.expected) .. ' [[' .. mw.wikibase.sitelink(data.tounit) .. '|',
result,
true
)
else
self:assertStringContains(
myModule.formatRawValue(data.amount) .. ' [[' .. mw.wikibase.sitelink(data.unit) .. '|',
result,
true
)
end
end
end
function suite:testFormatValueSuppressUnit()
for _, unit in ipairs{ 'Q11573', 'Q11570' } do
local value = builder.buildValueFromDatatype{
datatype = 'quantity',
unit = unit,
value = 1,
}
local result = myModule.formatValue(value, { showunit = false })
self:assertNotStringContains('[[', result, true)
self:assertNotStringContains(']]', result, true)
end
end
return suite
iicocq9n8e88ku7iva1tmru5tnxg2gi
Module:Convert/wikidata/data
828
3418
36625
2025-12-15T20:09:29Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ Cache of Wikidata information with units for Module:Convert. The codes should rarely change, and using a cache means that changing a unit at Wikidata will not cause lots of converts in articles to break. For a unit known to convert, the unit here must have: label = Wikidata label for unit (used only when listing units) ucode = unit code for input to convert (there are no optional fields because convert handles everything) For a unit not k...'
36625
Scribunto
text/plain
--[[ Cache of Wikidata information with units for Module:Convert.
The codes should rarely change, and using a cache means that changing a
unit at Wikidata will not cause lots of converts in articles to break.
For a unit known to convert, the unit here must have:
label = Wikidata label for unit (used only when listing units)
ucode = unit code for input to convert
(there are no optional fields because convert handles everything)
For a unit not known to convert, the unit here must have:
label = Wikidata label for unit (used only when listing units)
(no ucode field)
_ucode = unit code for input to convert, and the
symbol used to display the unit when abbr=on
(convert will use the specified fields to display the unit,
and will not attempt to do a conversion)
For a unit not known to convert, the unit here may have:
name1 = singular name used to display the unit when abbr=off
name2 = plural name used to display the unit when abbr=off
link = name of article that unit will be linked to when lk=on
si = key for the SI base unit, if any
The base unit for each SI unit here must have:
symbol = symbol used to display the base unit when abbr=on
name1 = singular name of base unit used to display the unit when abbr=off
(if name1 is not given, symbol will be used, but an SI unit should have a name)
The base unit for each SI unit here may have:
name2 = plural name of base unit used to display the unit when abbr=off
link = name of article that unit will be linked to when lk=on
(applies for all SI units using this base, where the
SI unit does not define its own link field)
If name1 is not specified, the symbol is used for the name.
If name2 is not specified, a plural name is formed by appending 's' to name1.
If link is not specified, name1 is used for the link.
SI units are assumed to be simple items like V (volt) where 'mV' would
cause convert to insert:
'm' before the base symbol 'V' to make 'mV', if abbr=on
'milli' before the base name 'volt' to make 'millivolt', if abbr=off
A unit like "square meter" would not work because it needs an SI prefix
inserted before "meter" rather than at the beginning of the name.
Items that should not be used with convert as no precise unit is implied:
Q11247037 ton generic (cannot use)
Q178413 gallon generic
Q130964 calorie dubious (ambiguous, should not use)
Q216658 bushel dubious
Q420266 fluid ounce dubious
]]
local wikidata_units = {
-- Following are SI base units.
A = {
symbol = 'A',
name1 = 'ampere',
},
F = {
symbol = 'F',
name1 = 'faraday',
},
H = {
symbol = 'H',
name1 = 'henry',
},
V = {
symbol = 'V',
name1 = 'volt',
},
-- Following are aliases to convert unit codes, used with "input=<value><space><unit>".
kilograms = {
ucode = 'kg',
},
-- Following are SI units not known to convert, used with "input=<value><space><unit>".
kV = {
ucode = 'kV',
si = 'V',
},
mV = {
ucode = 'mV',
si = 'V',
},
-- Following are Wikidata units.
Q131255 = {
label = 'farad',
_ucode = 'F',
si = 'F',
},
Q163354 = {
label = 'henry',
_ucode = 'H',
si = 'H',
},
Q1916026 = {
label = 'microvolt',
_ucode = 'uV',
si = 'V',
},
Q193933 = {
label = 'dioptre',
name1 = 'dioptre',
_ucode = 'dpt',
},
Q212120 = {
label = 'ampere-hour',
name1 = 'ampere-hour',
_ucode = 'A⋅h',
},
Q2448803 = {
label = 'millivolt',
_ucode = 'mV',
si = 'V',
},
Q2451296 = {
label = 'microfarad',
_ucode = 'uF',
si = 'F',
},
Q2490574 = {
label = 'milliampere',
_ucode = 'mA',
si = 'A',
},
Q25250 = {
label = 'volt',
_ucode = 'V',
si = 'V',
},
Q25272 = {
label = 'ampere',
_ucode = 'A',
si = 'A',
},
Q2553708 = {
label = 'megavolt',
_ucode = 'MV',
si = 'V',
},
Q2554092 = {
label = 'kilovolt',
_ucode = 'kV',
si = 'V',
},
Q2636421 = {
label = 'nanohenry',
_ucode = 'nH',
si = 'H',
},
Q2679083 = {
label = 'microhenry',
_ucode = 'uH',
si = 'H',
},
Q2682463 = {
label = 'nanofarad',
_ucode = 'nF',
si = 'F',
},
Q2756030 = {
label = 'picofarad',
_ucode = 'pF',
si = 'F',
},
Q2793566 = {
label = 'gigavolt',
_ucode = 'GV',
si = 'V',
},
Q2924137 = {
label = 'millihenry',
_ucode = 'mH',
si = 'H',
},
Q3117809 = {
label = 'microampere',
_ucode = 'uA',
si = 'A',
},
Q33680 = {
label = 'radian',
name1 = 'radian',
_ucode = 'rad',
},
Q4456994 = {
label = 'millifarad',
_ucode = 'mF',
si = 'F',
},
Q47083 = {
label = 'ohm',
name1 = 'ohm',
_ucode = 'Ω',
},
Q483261 = {
label = 'atomic mass unit',
name1 = 'atomic mass unit',
_ucode = 'u',
},
Q550341 = {
label = 'volt-ampere',
name1 = 'volt-ampere',
_ucode = 'VA',
},
Q100995 = {
label = 'pound',
ucode = 'lb',
},
Q1022113 = {
label = 'cubic centimetre',
ucode = 'cc',
},
Q102573 = {
label = 'becquerel',
ucode = 'Bq',
},
Q103246 = {
label = 'sievert',
ucode = 'Sv',
},
Q1050958 = {
label = 'inch of mercury',
ucode = 'inHg',
},
Q1051665 = {
label = 'metre per second squared',
ucode = 'm/s2',
},
Q1052397 = {
label = 'rad',
ucode = 'rad',
},
Q1054140 = {
label = 'megametre',
ucode = 'Mm',
},
Q1057069 = {
label = 'hectogram',
ucode = 'hg',
},
Q1063786 = {
label = 'square inch',
ucode = 'sqin',
},
Q1092296 = {
label = 'annum',
ucode = 'year',
},
Q11570 = {
label = 'kilogram',
ucode = 'kg',
},
Q11573 = {
label = 'metre',
ucode = 'm',
},
Q11574 = {
label = 'second',
ucode = 's',
},
Q11579 = {
label = 'kelvin',
ucode = 'K',
},
Q11582 = {
label = 'liter',
ucode = 'liter',
},
Q1165588 = {
label = 'rod',
ucode = 'rod',
},
Q1165799 = {
label = 'thou',
ucode = 'thou',
},
Q11776930 = {
label = 'megagram',
ucode = 'Mg',
},
Q11929860 = {
label = 'kiloparsec',
ucode = 'kpc',
},
Q1194225 = {
label = 'pound-force',
ucode = 'lbf',
},
Q12129 = {
label = 'parsec',
ucode = 'pc',
},
Q12438 = {
label = 'newton',
ucode = 'N',
},
Q1255620 = {
label = 'dram',
ucode = 'drachm',
},
Q12874593 = {
label = 'watt-hour',
ucode = 'W.h',
},
Q128822 = {
label = 'knot',
ucode = 'kn',
},
Q1374438 = {
label = 'kilosecond',
ucode = 'ks',
},
Q1377051 = {
label = 'gigasecond',
ucode = 'Gs',
},
Q14754979 = {
label = 'zettagram',
ucode = 'Zg',
},
Q14786969 = {
label = 'megajoule',
ucode = 'MJ',
},
Q14787261 = {
label = 'megawatt hour',
ucode = 'MW.h',
},
Q1550511 = {
label = 'square yard',
ucode = 'sqyd',
},
Q160857 = {
label = 'horsepower',
ucode = 'hp',
},
Q1628990 = {
label = 'horsepower-hour',
ucode = 'hph',
},
Q163343 = {
label = 'tesla',
ucode = 'T',
},
Q1645498 = {
label = 'microgram',
ucode = 'ug',
},
Q17087835 = {
label = 'cuerda',
ucode = 'cda',
},
Q174728 = {
label = 'centimetre',
ucode = 'cm',
},
Q174789 = {
label = 'millimetre',
ucode = 'mm',
},
Q175821 = {
label = 'micrometre',
ucode = 'um',
},
Q1770733 = {
label = 'teragram',
ucode = 'Tg',
},
Q1772386 = {
label = 'decigram',
ucode = 'dg',
},
Q177493 = {
label = 'gauss',
ucode = 'G',
},
Q1777507 = {
label = 'femtosecond',
ucode = 'fs',
},
Q177974 = {
label = 'atmosphere',
ucode = 'atm',
},
Q178674 = {
label = 'nanometre',
ucode = 'nm',
},
Q180154 = {
label = 'kilometre per hour',
ucode = 'km/h',
},
Q180892 = {
label = 'solar mass',
ucode = 'solar mass',
},
Q1811 = {
label = 'astronomical unit',
ucode = 'au',
},
Q1815100 = {
label = 'centiliter',
ucode = 'cl',
},
Q182098 = {
label = 'kilowatt hour',
ucode = 'kW.h',
},
Q1823150 = {
label = 'microwatt',
ucode = 'uW',
},
Q182429 = {
label = 'metre per second',
ucode = 'm/s',
},
Q1826195 = {
label = 'deciliter',
ucode = 'dl',
},
Q185078 = {
label = 'are',
ucode = 'a',
},
Q185153 = {
label = 'erg',
ucode = 'erg',
},
Q185648 = {
label = 'torr',
ucode = 'Torr',
},
Q190095 = {
label = 'gray',
ucode = 'Gy',
},
Q191118 = {
label = 'tonne',
ucode = 'tonne',
},
Q1913097 = {
label = 'femtogram',
ucode = 'fg',
},
Q192274 = {
label = 'picometre',
ucode = 'pm',
},
Q1972579 = {
label = 'poundal',
ucode = 'pdl',
},
Q200323 = {
label = 'decimetre',
ucode = 'dm',
},
Q201933 = {
label = 'dyne',
ucode = 'dyn',
},
Q2029519 = {
label = 'hectoliter',
ucode = 'hl',
},
Q2051195 = {
label = 'gigawatt hour',
ucode = 'GW.h',
},
Q207488 = {
label = 'Rankine scale',
ucode = 'R',
},
Q208788 = {
label = 'femtometre',
ucode = 'fm',
},
Q2101 = {
label = 'elementary charge',
ucode = 'e',
},
Q21014455 = {
label = 'metre per minute',
ucode = 'm/min',
},
Q21062777 = {
label = 'megapascal',
ucode = 'MPa',
},
Q21064807 = {
label = 'kilopascal',
ucode = 'kPa',
},
Q211256 = {
label = 'miles per hour',
ucode = 'mph',
},
Q21178489 = {
label = 'barrels per day',
ucode = 'oilbbl/d',
},
Q2143992 = {
label = 'kilohertz',
ucode = 'kHz',
},
Q21467992 = {
label = 'cubic foot per second',
ucode = 'cuft/s',
},
Q215571 = {
label = 'newton metre',
ucode = 'Nm',
},
Q216795 = {
label = 'dunam',
ucode = 'dunam',
},
Q216880 = {
label = 'kilogram-force',
ucode = 'kgf',
},
Q18413919 = {
label = 'centimetre per second',
ucode = 'cm/s',
},
Q218593 = {
label = 'inch',
ucode = 'in',
},
Q2282891 = {
label = 'microliter',
ucode = 'ul',
},
Q2282906 = {
label = 'nanogram',
ucode = 'ng',
},
Q229354 = {
label = 'curie',
ucode = 'Ci',
},
Q232291 = {
label = 'square mile',
ucode = 'sqmi',
},
Q2332346 = {
label = 'milliliter',
ucode = 'ml',
},
Q23387 = {
label = 'week',
ucode = 'week',
},
Q23823681 = {
label = 'terawatt',
ucode = 'TW',
},
Q23925410 = {
label = 'gallon',
ucode = 'impgal',
},
Q23925413 = {
label = 'gallon',
ucode = 'USgal',
},
Q2438073 = {
label = 'attogram',
ucode = 'ag',
},
Q2474258 = {
label = 'millisievert',
ucode = 'mSv',
},
Q2483628 = {
label = 'attosecond',
ucode = 'as',
},
Q2489298 = {
label = 'square centimetre',
ucode = 'cm2',
},
Q2518569 = {
label = 'nanosievert',
ucode = 'nSv',
},
Q25235 = {
label = 'hour',
ucode = 'h',
},
Q25236 = {
label = 'watt',
ucode = 'W',
},
Q25267 = {
label = 'degree Celsius',
ucode = 'C',
},
Q25269 = {
label = 'joule',
ucode = 'J',
},
Q253276 = {
label = 'mile',
ucode = 'mi',
},
Q25343 = {
label = 'square metre',
ucode = 'm2',
},
Q25406 = {
label = 'coulomb',
ucode = 'coulomb',
},
Q25517 = {
label = 'cubic metre',
ucode = 'm3',
},
Q260126 = {
label = 'Roentgen equivalent man',
ucode = 'rem',
},
Q2612219 = {
label = 'petagram',
ucode = 'Pg',
},
Q2619500 = {
label = 'Foe',
ucode = 'foe',
},
Q2637946 = {
label = 'decaliter',
ucode = 'dal',
},
Q2655272 = {
label = 'exagram',
ucode = 'Eg',
},
Q2691798 = {
label = 'centigram',
ucode = 'cg',
},
Q2739114 = {
label = 'microsievert',
ucode = 'uSv',
},
Q2799294 = {
label = 'gigagram',
ucode = 'Gg',
},
Q3013059 = {
label = 'kiloannum',
ucode = 'millennium',
},
Q305896 = {
label = 'dots per inch',
ucode = 'dpi',
},
Q3207456 = {
label = 'milliwatt',
ucode = 'mW',
},
Q3221356 = {
label = 'yoctometre',
ucode = 'ym',
},
Q3239557 = {
label = 'picogram',
ucode = 'pg',
},
Q3241121 = {
label = 'milligram',
ucode = 'mg',
},
Q3267417 = {
label = 'terametre',
ucode = 'Tm',
},
Q3270676 = {
label = 'zeptometre',
ucode = 'zm',
},
Q3276763 = {
label = 'gigahertz',
ucode = 'GHz',
},
Q3277907 = {
label = 'exametre',
ucode = 'Em',
},
Q3277915 = {
label = 'zettametre',
ucode = 'Zm',
},
Q3277919 = {
label = 'petametre',
ucode = 'Pm',
},
Q3312063 = {
label = 'femtoliter',
ucode = 'fl',
},
Q3320608 = {
label = 'kilowatt',
ucode = 'kW',
},
Q3332822 = {
label = 'megaton',
ucode = 'Mt(TNT)',
},
Q35852 = {
label = 'hectare',
ucode = 'ha',
},
Q3675550 = {
label = 'cubic millimetre',
ucode = 'mm3',
},
Q3710 = {
label = 'foot',
ucode = 'ft',
},
Q3773454 = {
label = 'megaparsec',
ucode = 'Mpc',
},
Q3902688 = {
label = 'picoliter',
ucode = 'pl',
},
Q3902709 = {
label = 'picosecond',
ucode = 'ps',
},
Q39369 = {
label = 'hertz',
ucode = 'Hz',
},
Q3972226 = {
label = 'kiloliter',
ucode = 'kl',
},
Q4068266 = {
label = "apothecaries' drachm",
ucode = 'drachm',
},
Q41803 = {
label = 'gram',
ucode = 'g',
},
Q4220561 = {
label = 'kilometer per second',
ucode = 'km/s',
},
Q42289 = {
label = 'degree Fahrenheit',
ucode = 'F',
},
Q4243638 = {
label = 'cubic kilometre',
ucode = 'km3',
},
Q44395 = {
label = 'pascal',
ucode = 'Pa',
},
Q48013 = {
label = 'ounce',
ucode = 'oz',
},
Q482798 = {
label = 'yard',
ucode = 'yd',
},
Q4989854 = {
label = 'kilojoule',
ucode = 'kJ',
},
Q4992853 = {
label = 'kiloton',
ucode = 'kt(TNT)',
},
Q5139563 = {
label = 'hectopascal',
ucode = 'hPa',
},
Q5151 = {
label = 'month',
ucode = 'month',
},
Q531 = {
label = 'light-year',
ucode = 'ly',
},
Q5465723 = {
label = 'foot-poundal',
ucode = 'ftpdl',
},
Q573 = {
label = 'day',
ucode = 'd',
},
Q577 = {
label = 'year',
ucode = 'year',
},
Q5879479 = {
label = 'gigawatt',
ucode = 'GW',
},
Q6003257 = {
label = 'attometre',
ucode = 'am',
},
Q613726 = {
label = 'yottagram',
ucode = 'Yg',
},
Q6170164 = {
label = 'yoctogram',
ucode = 'yg',
},
Q667419 = {
label = 'long ton',
ucode = 'LT',
},
Q673166 = {
label = 'gravity of Earth',
ucode = 'g0',
},
Q693944 = {
label = 'grain',
ucode = 'gr',
},
Q6982035 = {
label = 'megawatt',
ucode = 'MW',
},
Q712226 = {
label = 'square kilometre',
ucode = 'km2',
},
Q723733 = {
label = 'millisecond',
ucode = 'ms',
},
Q732454 = {
label = 'Ma',
ucode = 'Myr',
},
Q732707 = {
label = 'megahertz',
ucode = 'MHz',
},
Q752079 = {
label = 'gross register ton',
ucode = 'grt',
},
Q752197 = {
label = 'kilojoule per mole',
ucode = 'kJ/mol',
},
Q7727 = {
label = 'minute',
ucode = 'min',
},
Q794261 = {
label = 'cubic metre per second',
ucode = 'm3/s',
},
Q809678 = {
label = 'barye',
ucode = 'Ba',
},
Q81292 = {
label = 'acre',
ucode = 'acre',
},
Q81454 = {
label = 'ångström',
ucode = 'angstrom',
},
Q828224 = {
label = 'kilometre',
ucode = 'km',
},
Q83327 = {
label = 'electronvolt',
ucode = 'eV',
},
Q838801 = {
label = 'nanosecond',
ucode = 'ns',
},
Q842015 = {
label = 'microsecond',
ucode = 'us',
},
Q844211 = {
label = 'kilogram per cubic metre',
ucode = 'kg/m3',
},
Q844338 = {
label = 'hectometre',
ucode = 'hm',
},
Q844976 = {
label = 'oersted',
ucode = 'Oe',
},
Q848856 = {
label = 'decametre',
ucode = 'dam',
},
Q854546 = {
label = 'gigametre',
ucode = 'Gm',
},
Q857027 = {
label = 'square foot',
ucode = 'sqft',
},
Q9048643 = {
label = 'nanoliter',
ucode = 'nl',
},
Q93318 = {
label = 'nautical mile',
ucode = 'nmi',
},
}
return { wikidata_units = wikidata_units }
e106ma36jajkh7r76vkd8vvo5tf1usx
Module:Wikidata/Formatters/string
828
3419
36626
2025-12-15T20:10:18Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local function findPattern(property) local Statements = mw.wikibase.getBestStatements(property:upper(), 'P1630') for _, statement in ipairs(Statements) do if lib.IsSnakValue(statement.mainsnak) then return statement.mainsnak.datavalue.value end end return nil end function p.getRawValue(value, options) return value end function p.formatValue(value, options) i...'
36626
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local function findPattern(property)
local Statements = mw.wikibase.getBestStatements(property:upper(), 'P1630')
for _, statement in ipairs(Statements) do
if lib.IsSnakValue(statement.mainsnak) then
return statement.mainsnak.datavalue.value
end
end
return nil
end
function p.getRawValue(value, options)
return value
end
function p.formatValue(value, options)
if options.pattern then
return lib.formatFromPattern(value, options.pattern)
elseif lib.IsOptionTrue(options, 'autoformat') then
local pattern = findPattern(options.property)
if pattern then
return lib.formatFromPattern(value, mw.ustring.format('[%s %s]', pattern, options.text or '$1'))
end
end
return value
end
p.formatRawValue = p.formatValue
return p
10cx9yrwkaqp2yeym0gm6g0vdkadlg7
Module:Wikidata/Formatters/time
828
3420
36627
2025-12-15T20:11:26Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local i18n = mw.loadData('Module:Wikidata/i18n') -- todo: move to lib function p.yearDifference(sooner, later) local age = later.year - sooner.year if sooner.precision > 10 then if later.precision > 10 then if sooner.month > later.month then age = age - 1 elseif sooner.month == later.month and sooner.day > later.day then age = age - 1 end return age...'
36627
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local i18n = mw.loadData('Module:Wikidata/i18n')
-- todo: move to lib
function p.yearDifference(sooner, later)
local age = later.year - sooner.year
if sooner.precision > 10 then
if later.precision > 10 then
if sooner.month > later.month then
age = age - 1
elseif sooner.month == later.month and sooner.day > later.day then
age = age - 1
end
return age, age
elseif later.precision == 10 then
if sooner.month == later.month then
return age - 1, age - 1 .. '–' .. age
end
if sooner.month > later.month then
age = age - 1
end
return age, age
end
elseif sooner.precision == 10 then
if later.precision > 9 then
if sooner.month == later.month then
return age - 1, age - 1 .. '–' .. age
end
if sooner.month > later.month then
age = age - 1
end
return age, age
end
end
return age - 1, age - 1 .. '–' .. age
end
-- todo: move to lib
function p.julianToGregorian(timevalue)
-- https://en.wikipedia.org/wiki/Gregorian_calendar#Difference_between_Gregorian_and_Julian_calendar_dates
local year = timevalue.year
local diff = math.floor(year / 100) - math.floor(year / 400) - 2
if year % 100 == 0 and year % 400 ~= 0 then
if timevalue.month == 2 and 30 - timevalue.day > diff then
diff = diff - 1
end
end
local feb_days
if year % 4 == 0 then
feb_days = 29
else
feb_days = 28
end
local days = { 31, feb_days, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }
local newvalue = mw.clone(timevalue)
newvalue.calendar = newvalue.CALENDAR.GREGORIAN
newvalue.day = newvalue.day + diff
if newvalue.day > days[newvalue.month] then
newvalue.day = newvalue.day - days[newvalue.month]
newvalue.month = newvalue.month + 1
if newvalue.month > 12 then
newvalue.month = 1
newvalue.year = newvalue.year + 1
end
end
return newvalue
end
local function stripZero(date, lang, timevalue)
-- odstraň nuly na začátku (rok < 1000 a > -1000)
local year
if timevalue.year > 0 then
year = math.abs(timevalue.year)
else
year = math.abs(timevalue.year) - 1
end
return mw.ustring.gsub(
date,
lang:formatNum(0) .. '+(' .. lang:formatNum(year, { noCommafy = true }) .. ')',
'%1'
)
end
function p.getRawValue(value, options)
local Time = require 'Module:Time'
return Time.newFromWikidataValue(value)
end
function p.formatRawValue(timevalue, options)
local lang = mw.getContentLanguage()
local precision = math.min(timevalue.precision, options.precision or timevalue.precision)
local timestring = tostring(timevalue)
local linked_app = ''
if not lib.IsOptionTrue(options, 'nolink') then
linked_app = '-linked'
end
local BCE_app = ''
if timevalue.year < 0 then
timestring = mw.ustring.sub(timestring, 2)
BCE_app = '-BCE'
end
local newstring
local map = {
[timevalue.PRECISION.KY] = 'millenium',
[timevalue.PRECISION.YEAR100] = 'century',
[timevalue.PRECISION.YEAR10] = 'decade',
[timevalue.PRECISION.YEAR] = 'year',
[timevalue.PRECISION.MONTH] = 'year-month',
[timevalue.PRECISION.DAY] = 'year-month-day',
}
if precision >= timevalue.PRECISION.YEAR then
local key = map[math.min(precision, timevalue.PRECISION.DAY)] .. BCE_app
local pattern = i18n.date[key .. linked_app] or i18n.date[key]
if precision > timevalue.PRECISION.MONTH
and timevalue.calendar == timevalue.CALENDAR.JULIAN
and timevalue > timevalue.newFromIso8601('1582-10-04')
then
local newvalue = p.julianToGregorian(timevalue)
local jul_pattern
if newvalue.year ~= timevalue.year then
jul_pattern = i18n.date['year-month-day']
elseif newvalue.month ~= timevalue.month then
jul_pattern = i18n.date['month-day']
else
jul_pattern = i18n.date.day
end
if newvalue.month == 2 and newvalue.day == 29 then
if year % 100 == 0 and year % 400 ~= 0 then
timevalue.year = 2000 -- hack to force formatting 29th February
end
end
newstring = mw.ustring.format('%s%s / %s%s',
stripZero(lang:formatDate(jul_pattern, timestring), lang, timevalue),
i18n.date.julian,
stripZero(lang:formatDate(pattern, tostring(newvalue)), lang, newvalue),
i18n.date.gregorian)
else
newstring = stripZero(lang:formatDate(pattern, timestring), lang, timevalue)
end
elseif precision >= timevalue.PRECISION.KY then
local key = map[precision] .. BCE_app
local coef = 10 ^ (9 - precision)
local number = math.floor(math.abs(timevalue.year) / coef)
if precision == timevalue.PRECISION.YEAR100 then
if timevalue.year % 100 > 0 and BCE_app == '' then
number = number + 1
end
elseif precision == timevalue.PRECISION.YEAR10 then
number = number * coef
end
newstring = mw.getCurrentFrame():preprocess(
mw.message.newRawMessage(i18n.date[key .. linked_app] or i18n.date[key])
:params(lang:formatNum(number, { noCommafy = true }))
:plain()
)
else
-- TODO
newstring = timestring
end
return newstring
end
function p.formatValue(value, options)
local timevalue = p.getRawValue(value, options)
local formatted = p.formatRawValue(timevalue, options)
if lib.IsOptionTrue(options, 'birthdate') and timevalue.precision >= timevalue.PRECISION.YEAR then
if #mw.wikibase.getBestStatements(options.id, 'P570') == 0 then
local Time = require 'Module:Time'
local age, age_text = p.yearDifference(timevalue, Time.new(os.date('!*t')))
formatted = mw.ustring.format('%s (%s)', formatted,
mw.getCurrentFrame():preprocess(
mw.message.newRawMessage(i18n.date.age)
:params(age_text)
:numParams(age)
:plain()
)
)
if age >= 100 then
formatted = formatted .. lib.category('centenarians-living')
elseif age < 0 then
formatted = formatted .. lib.category('failed-age-computing')
end
end
elseif lib.IsOptionTrue(options, 'deathdate') and timevalue.precision >= timevalue.PRECISION.YEAR then
local birthvalue
for _, statement in ipairs(mw.wikibase.getBestStatements(options.id, 'P569')) do
if lib.IsSnakValue(statement.mainsnak) then
local Formatters = require 'Module:Wikidata/Formatters'
birthvalue = Formatters.getRawValue(statement.mainsnak)
break
end
end
if birthvalue and birthvalue.precision >= birthvalue.PRECISION.YEAR then
local age, age_text = p.yearDifference(birthvalue, timevalue)
formatted = mw.ustring.format('%s (%s)', formatted,
mw.getCurrentFrame():preprocess(
mw.message.newRawMessage(i18n.date['in-the-age'])
:params(age_text)
:numParams(age)
:plain()
)
)
if age >= 100 then
formatted = formatted .. lib.category('centenarians')
end
end
end
return formatted
end
return p
ok3i3s5tz5n79rvlzwtrd2fe7vpu0cf
Module:Wikidata/Sorters/alpha/testcases
828
3421
36628
2025-12-15T20:12:15Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local myModule = require 'Module:Wikidata/Sorters/alpha' local builder = require 'Module:Wikidata/build' local ScribuntoUnit = require 'Module:ScribuntoUnit' local suite = ScribuntoUnit:new() function suite:testMayCompare() local provider = { { datatype = 'monolingualtext', expected = true, value = 'xxx' }, { datatype = 'string', expected = true, value = 'xxx' }, { datatype = 'quantity', expected = false, valu...'
36628
Scribunto
text/plain
local myModule = require 'Module:Wikidata/Sorters/alpha'
local builder = require 'Module:Wikidata/build'
local ScribuntoUnit = require 'Module:ScribuntoUnit'
local suite = ScribuntoUnit:new()
function suite:testMayCompare()
local provider = {
{
datatype = 'monolingualtext',
expected = true,
value = 'xxx'
},
{
datatype = 'string',
expected = true,
value = 'xxx'
},
{
datatype = 'quantity',
expected = false,
value = 1
},
{
datatype = 'wikibase-item',
expected = true,
value = 1
},
}
for _, data in ipairs(provider) do
local statement = builder.buildStatement{
datatype = data.datatype,
value = data.value
}
local snak = builder.buildSnak{
datatype = data.datatype,
value = data.value
}
self:assertEquals(data.expected, myModule.mayCompareStatement(statement))
self:assertEquals(data.expected, myModule.mayCompareSnak(snak))
end
end
function suite:testIsComplete()
local provider = {
{
args = { snaktype = 'novalue' },
expected = false
},
{
args = { snaktype = 'somevalue' },
expected = false
},
{
args = { datatype = 'string', value = 'xxx' },
expected = true
},
{
args = { datatype = 'monolingualtext', value = 'xxx' },
expected = true
},
{
args = { datatype = 'wikibase-item', value = 213 }, -- Česko
expected = true
},
{
args = { datatype = 'wikibase-item', value = 6 }, -- neexistující položka
expected = false
},
}
for _, data in ipairs(provider) do
local statement = builder.buildStatement(data.args)
local snak = builder.buildSnak(data.args)
self:assertEquals(data.expected, myModule.isCompleteStatement(statement))
self:assertEquals(data.expected, myModule.isCompleteSnak(snak))
end
end
function suite:testCompare()
local provider = {
{
datatype = 'string',
values = {
{ 'bar', 'xxx', -1 },
{ 'xxx', 'xxx', 0 },
{ 'xxx', 'bar', 1 },
}
},
{
datatype = 'monolingualtext',
values = {
{ 'bar', 'xxx', -1 },
{ 'xxx', 'xxx', 0 },
{ 'xxx', 'bar', 1 },
}
},
{
datatype = 'wikibase-item',
values = {
{ 213, 214, -1 }, -- Česko, Slovensko
{ 213, 213, 0 },
{ 214, 213, 1 },
}
},
}
for _, data in ipairs(provider) do
for _, line in ipairs(data.values) do
local first = builder.buildStatement{ datatype = data.datatype, value = line[1] }
local second = builder.buildStatement{ datatype = data.datatype, value = line[2] }
self:assertEquals(line[3], myModule.compareStatements(first, second))
end
for _, line in ipairs(data.values) do
local first = builder.buildSnak{ datatype = data.datatype, value = line[1] }
local second = builder.buildSnak{ datatype = data.datatype, value = line[2] }
self:assertEquals(line[3], myModule.compareSnaks(first, second))
end
end
end
return suite
h7bw9nylidronzpxb572gr5gxcq2eog
Module:Convert/wikidata
828
3422
36629
2025-12-15T20:13:09Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Functions to access Wikidata for Module:Convert. local Collection = {} Collection.__index = Collection do function Collection:add(item) if item ~= nil then self.n = self.n + 1 self[self.n] = item end end function Collection:join(sep) return table.concat(self, sep) end function Collection:remove(pos) if self.n > 0 and (pos == nil or (0 < pos and pos <= self.n)) then self.n = self.n - 1 return table.remove(self, pos) en...'
36629
Scribunto
text/plain
-- Functions to access Wikidata for Module:Convert.
local Collection = {}
Collection.__index = Collection
do
function Collection:add(item)
if item ~= nil then
self.n = self.n + 1
self[self.n] = item
end
end
function Collection:join(sep)
return table.concat(self, sep)
end
function Collection:remove(pos)
if self.n > 0 and (pos == nil or (0 < pos and pos <= self.n)) then
self.n = self.n - 1
return table.remove(self, pos)
end
end
function Collection:sort(comp)
table.sort(self, comp)
end
function Collection.new()
return setmetatable({n = 0}, Collection)
end
end
local function strip_to_nil(text)
-- If text is a non-empty string, return its trimmed content,
-- otherwise return nothing (empty string or not a string).
if type(text) == 'string' then
return text:match('(%S.-)%s*$')
end
end
local function frequency_unit(value, unit_table)
-- For use when converting m to Hz.
-- Return true, s where s = name of unit's default output unit,
-- or return false, t where t is an error message table.
-- However, for simplicity a valid result is always returned.
local unit
if unit_table._symbol == 'm' then
-- c = speed of light in a vacuum = 299792458 m/s
-- frequency = c / wavelength
local w = value * (unit_table.scale or 1)
local f = 299792458 / w -- if w == 0, f = math.huge which works here
if f >= 1e12 then
unit = 'THz'
elseif f >= 1e9 then
unit = 'GHz'
elseif f >= 1e6 then
unit = 'MHz'
elseif f >= 1e3 then
unit = 'kHz'
else
unit = 'Hz'
end
end
return true, unit or 'Hz'
end
local function wavelength_unit(value, unit_table)
-- Like frequency_unit but for use when converting Hz to m.
local unit
if unit_table._symbol == 'Hz' then
-- Using 0.9993 rather than 1 avoids rounding which would give results
-- like converting 300 MHz to 100 cm instead of 1 m.
local w = 1 / (value * (unit_table.scale or 1)) -- Hz scale is inverted
if w >= 0.9993e6 then
unit = 'Mm'
elseif w >= 0.9993e3 then
unit = 'km'
elseif w >= 0.9993 then
unit = 'm'
elseif w >= 0.9993e-2 then
unit = 'cm'
elseif w >= 0.9993e-3 then
unit = 'mm'
else
unit = 'um'
end
end
return true, unit or 'm'
end
local specials = {
frequency = { frequency_unit },
wavelength = { wavelength_unit },
--------------------------------------------------------------------------------
-- Following is a removed experiment to show two values as a range
-- using '-' as the separator.
-- frequencyrange = { frequency_unit, '-' },
-- wavelengthrange = { wavelength_unit, '-' },
}
local function make_unit(units, parms, uid)
-- Return a unit code for convert or nil if unit unknown.
-- If necessary, add a dummy unit to parms so convert will use it
-- for the input without attempting a conversion since nothing
-- useful is available (for example, with unit volt).
local unit = units[uid]
if type(unit) ~= 'table' then
return nil
end
local ucode = unit.ucode
if ucode and not unit.si then
return ucode -- a unit known to convert
end
parms.opt_ignore_error = true
ucode = ucode or unit._ucode -- must be a non-empty string
local ukey, utable
if unit.si then
local base = units[unit.si]
ukey = base.symbol -- must be a non-empty string
local n1 = base.name1
local n2 = base.name2
if not n1 then
n1 = ukey
n2 = n2 or n1 -- do not append 's'
end
utable = {
_symbol = ukey,
_name1 = n1,
_name2 = n2,
link = unit.link or base.link,
utype = n1,
prefixes = 1,
}
else
ukey = ucode
utable = {
symbol = ucode, -- must be a non-empty string
name1 = unit.name1, -- if nil, uses symbol
name2 = unit.name2, -- if nil, uses name1..'s'
link = unit.link, -- if nil, uses name1
utype = unit.name1 or ucode,
}
end
utable.scale = 1
utable.default = ''
utable.defkey = ''
utable.linkey = ''
utable.bad_mcode = ''
parms.unittable = { [ukey] = utable }
return ucode
end
local function matches_qualifier(statement, qual)
-- Return:
-- false, nil : if statement does not match specification
-- true, nil : if matches, and statement has no qualifier
-- true, sq : if matches, where sq is the statement's qualifier
-- A match means that no qualifier was specified (qual == nil), or that
-- the statement has a qualifier matching the specification.
-- If a match occurs, the caller needs the statement's qualifier (if any)
-- so statements that duplicate the qualifier are not used, after the first.
-- Then, if convert is showing all values for a property such as the diameter
-- of a telescope's mirror (diameters of primary and secondary mirrors), it
-- will not show alternative values that could in principle be present for the
-- same item (telescope) and property (diameter) and qualifier (primary/secondary).
local target = (statement.qualifiers or {}).P518 -- P518 is "applies to part"
if type(target) == 'table' then
for _, q in ipairs(target) do
if type(q) == 'table' then
local value = (q.datavalue or {}).value
if value then
if qual == nil or qual == value.id then
return true, value.id
end
end
end
end
end
if qual == nil then
return true, nil -- only occurs if statement has no qualifier
end
return false, nil -- statement's qualifier is not relevant because statement will be skipped
end
local function get_statements(parms, pid)
-- Get specified item and return a list of tables with each statement for property pid.
-- Each table is of form {statqual=sq, stmt=statement} where sq = statement qualifier (nil if none).
-- Statements are in Wikidata's order except that those with preferred rank
-- are first, then normal rank. Any other rank is ignored.
local stored = {} -- qualifiers of statements that are first for the qualifier, and will be returned
local qid = strip_to_nil(parms.qid) -- nil for current page's item, or an item id (expensive)
local qual = strip_to_nil(parms.qual) -- nil or id of wanted P518 (applies to part) item in qualifiers
local result = Collection.new()
local entity = mw.wikibase.getEntity(qid)
if type(entity) == 'table' then
local statements = (entity.claims or {})[pid]
if type(statements) == 'table' then
for _, rank in ipairs({ 'preferred', 'normal' }) do
for _, statement in ipairs(statements) do
if type(statement) == 'table' and rank == statement.rank then
local is_match, statqual = matches_qualifier(statement, qual)
if is_match then
result:add({ statqual = statqual, stmt = statement })
end
end
end
end
end
end
return result
end
local function input_from_property(tdata, parms, pid)
-- Given that pid is a Wikidata property identifier like 'P123',
-- return a collection of {amount, ucode} pairs (two strings)
-- for each matching item/property, or return nothing.
--------------------------------------------------------------------------------
-- There appear to be few restrictions on how Wikidata is organized so it is
-- very likely that any decision a module makes about how to handle data
-- will be wrong for some cases at some time. This meets current requirements.
-- For each qualifier (or if no qualifier), if there are any preferred
-- statements, use them and ignore any normal statements.
-- For each qualifier, for the preferred statements if any, or for
-- the normal statements (but not both):
-- * Accept each statement if it has no qualifier (this will not occur
-- if qual=x is specified because other code already ensures that in that
-- case, only statements with a qualifier matching x are considered).
-- * Ignore any statements after the first if it has a qualifier.
-- The rationale is that for the diameter at [[South Pole Telescope]], want
-- convert to show the diameters for both the primary and secondary mirrors
-- if the convert does not specify which diameter is wanted.
-- However, if convert is given the wanted qualifier, only one value
-- (_the_ diameter) is wanted. For simplicity/consistency, that is also done
-- even if no qual=x is specified. Unclear what should happen.
-- For the wavelength at [[Nançay Radio Telescope]], want to show all three
-- values, and the values have no qualifiers.
--------------------------------------------------------------------------------
local result = Collection.new()
local done = {}
local skip_normal
for _, t in ipairs(get_statements(parms, pid)) do
local statement = t.stmt
if statement.mainsnak and statement.mainsnak.datatype == 'quantity' then
local value = (statement.mainsnak.datavalue or {}).value
if value then
local amount = value.amount
if amount then
amount = tostring(amount) -- in case amount is ever a number
if amount:sub(1, 1) == '+' then
amount = amount:sub(2)
end
local unit = value.unit
if type(unit) == 'string' then
unit = unit:match('Q%d+$') -- unit item id is at end of URL
local ucode = make_unit(tdata.wikidata_units, parms, unit)
if ucode then
local skip
if t.statqual then
if done[t.statqual] then
skip = true
else
done[t.statqual] = true
end
else
if statement.rank == 'preferred' then
skip_normal = true
elseif skip_normal then
skip = true
end
end
if not skip then
result:add({ amount, ucode })
end
end
end
end
end
end
end
return result
end
local function input_from_text(tdata, parms, text, insert2)
-- Given string should be of form "<value><space><unit>" or
-- "<value1><space>ft<space><value2><space>in" for a special case (feet and inches).
-- Return true if values/units were extracted and inserted, or return nothing.
text = text:gsub(' ', ' '):gsub('%s+', ' ')
local pos = text:find(' ', 1, true)
if pos then
-- Leave checking of value to convert which can handle fractions.
local value = text:sub(1, pos - 1)
local uid = text:sub(pos + 1)
if uid:sub(1, 3) == 'ft ' and uid:sub(-3) == ' in' then
-- Special case for enwiki to allow {{convert|input=5 ft 10+1/2 in}}
insert2(uid:sub(4, -4), 'in')
insert2(value, 'ft')
else
insert2(value, make_unit(tdata.wikidata_units, parms, uid) or uid)
end
return true
end
end
local function adjustparameters(tdata, parms, index)
-- For Module:Convert, adjust parms (a table of {{convert}} parameters).
-- Return true if successful or return false, t where t is an error message table.
-- This is intended mainly for use in infoboxes where the input might be
-- <value><space><unit> or
-- <wikidata-property-id>
-- If successful, insert values and units in parms, before given index.
local text = parms.input -- should be a trimmed, non-empty string
local pid = text:match('^P%d+$')
local sep = ','
local special = specials[parms[index]]
if special then
parms.out_unit = special[1]
sep = special[2] or sep
table.remove(parms, index)
end
local function quit()
return false, pid and { 'cvt_no_output' } or { 'cvt_bad_input', text }
end
local function insert2(first, second)
table.insert(parms, index, second)
table.insert(parms, index, first)
end
if pid then
parms.input_text = '' -- output an empty string if an error occurs
local result = input_from_property(tdata, parms, pid)
if result.n == 0 then
return quit()
end
local ucode
for i, t in ipairs(result) do
-- Convert requires each input unit to be identical.
if i == 1 then
ucode = t[2]
elseif ucode ~= t[2] then
return quit()
end
end
local item = ucode
if item == parms[index] then
-- Remove specified output unit if it is the same as the Wikidata unit.
-- For example, {{convert|input=P2044|km}} with property "12 km".
table.remove(parms, index)
end
for i = result.n, 1, -1 do
insert2(result[i][1], item)
item = sep
end
return true
else
if input_from_text(tdata, parms, text, insert2) then
return true
end
end
return quit()
end
--------------------------------------------------------------------------------
--- List units and check syntax of definitions ---------------------------------
--------------------------------------------------------------------------------
local specifications = {
-- seq = sequence in which fields are displayed
base = {
title = 'SI base units',
fields = {
symbol = { seq = 2, mandatory = true },
name1 = { seq = 3, mandatory = true },
name2 = { seq = 4 },
link = { seq = 5 },
},
noteseq = 6,
header = '{| class="wikitable"\n!si !!symbol !!name1 !!name2 !!link !!note',
item = '|-\n|%s ||%s ||%s ||%s ||%s ||%s',
footer = '|}',
},
alias = {
title = 'Aliases for convert',
fields = {
ucode = { seq = 2, mandatory = true },
si = { seq = 3 },
},
noteseq = 4,
header = '{| class="wikitable"\n!alias !!ucode !!base !!note',
item = '|-\n|%s ||%s ||%s ||%s',
footer = '|}',
},
known = {
title = 'Units known to convert',
fields = {
ucode = { seq = 2, mandatory = true },
label = { seq = 3, mandatory = true },
},
noteseq = 4,
header = '{| class="wikitable"\n!qid !!ucode !!label !!note',
item = '|-\n|%s ||%s ||%s ||%s',
footer = '|}',
},
unknown = {
title = 'Units not known to convert',
fields = {
_ucode = { seq = 2, mandatory = true },
si = { seq = 3 },
name1 = { seq = 4 },
name2 = { seq = 5 },
link = { seq = 6 },
label = { seq = 7, mandatory = true },
},
noteseq = 8,
header = '{| class="wikitable"\n!qid !!_ucode !!base !!name1 !!name2 !!link !!label !!note',
item = '|-\n|%s ||%s ||%s ||%s ||%s ||%s ||%s ||%s',
footer = '|}',
},
}
local function listunits(tdata, ulookup)
-- For Module:Convert, make wikitext to list the built-in Wikidata units.
-- Return true, wikitext if successful or return false, t where t is an
-- error message table. Currently, an error return never occurs.
-- The syntax of each unit definition is checked and a note is added if
-- a problem is detected.
local function safe_cells(t)
-- This is not currently needed, but in case definitions ever use wikitext
-- like '[[kilogram|kg]]', escape the text so it works in a table cell.
local result = {}
for i, v in ipairs(t) do
if v:find('|', 1, true) then
v = v:gsub('(%[%[[^%[%]]-)|(.-%]%])', '%1\0%2') -- replace pipe in piped link with a zero byte
v = v:gsub('|', '|') -- escape '|'
v = v:gsub('%z', '|') -- restore pipe in piped link
end
result[i] = v:gsub('{', '{') -- escape '{'
end
return unpack(result)
end
local wdunits = tdata.wikidata_units
local speckeys = { 'base', 'alias', 'unknown', 'known' }
for _, sid in ipairs(speckeys) do
specifications[sid].units = Collection.new()
end
local keys = Collection.new()
for k, v in pairs(wdunits) do
keys:add(k)
end
table.sort(keys)
local note_count = 0
for _, key in ipairs(keys) do
local unit = wdunits[key]
local ktext, sid
if key:match('^Q%d+$') then
ktext = '[[d:' .. key .. '|' .. key .. ']]'
if unit.ucode then
sid = 'known'
else
sid = 'unknown'
end
elseif unit.ucode then
ktext = key
sid = 'alias'
else
ktext = key
sid = 'base'
end
local result = { ktext }
local spec = specifications[sid]
local fields = spec.fields
local note = Collection.new()
for k, v in pairs(unit) do
if fields[k] then
local seq = fields[k].seq
if result[seq] then
note:add('duplicate ' .. k) -- cannot happen since keys are unique
else
result[seq] = v
end
else
note:add('invalid ' .. k)
end
end
for k, v in pairs(fields) do
local value = result[v.seq]
if value then
if k == 'si' and not wdunits[value] then
note:add('need si ' .. value)
end
if k == 'label' then
local wdl = mw.wikibase.label(key)
if wdl ~= value then
note:add('label changed to ' .. tostring(wdl))
end
end
else
result[v.seq] = ''
if v.mandatory then
note:add('missing ' .. k)
end
end
end
local text
if note.n > 0 then
note_count = note_count + 1
text = '*' .. note:join('<br />')
end
result[spec.noteseq] = text or ''
spec.units:add(result)
end
local results = Collection.new()
if note_count > 0 then
local text = note_count .. (note_count == 1 and ' note' or ' notes')
results:add("'''Search for * to see " .. text .. "'''\n")
end
for _, sid in ipairs(speckeys) do
local spec = specifications[sid]
results:add("'''" .. spec.title .. "'''")
results:add(spec.header)
local fmt = spec.item
for _, unit in ipairs(spec.units) do
results:add(string.format(fmt, safe_cells(unit)))
end
results:add(spec.footer)
end
return true, results:join('\n')
end
return { _adjustparameters = adjustparameters, _listunits = listunits }
cbjlitwg2d452xor7js5w3upat8z762
Πρότυπον:Fr
10
3423
36924
36908
2025-12-16T12:20:56Z
Εὐθυμένης
2777
36924
wikitext
text/x-wiki
{{γλώσσα2|Γαλλικά|γαλλικήν τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Γαλλικα]]
<!--interwiki-->
</noinclude>
dly7acxi9k1p1owq9cn8tmoonys45ry
Πρότυπον:Γλώσσα2
10
3424
36920
36910
2025-12-16T12:14:33Z
Εὐθυμένης
2777
36920
wikitext
text/x-wiki
<abbr class="abbr" style="font-family: sans-serif; -font-size:small; color: --color-subtle; text-decoration:none;" title="Κείμενον γραμμένον σ' {{{2}}}">({{{1}}})</abbr><noinclude>
{{documentation}}
</noinclude>
pfo1yutiktqj9kajwqghjgudp8p0jav
Κατηγορίαν:Πρότυπα γλωσσών κειμένων
14
3425
36633
2025-12-15T20:23:46Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|Γλωσσων κειμενων]]'
36633
wikitext
text/x-wiki
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|Γλωσσων κειμενων]]
cq6jiawf7l1oao7mren3v4j2p5f9lkk
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά Europeana
14
3426
36635
2025-12-15T20:26:35Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} [[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]'
36635
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
de8k88nxnjbq51i7qjh9e7201rfjkw5
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά LCCN
14
3427
36637
2025-12-15T20:28:22Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} {{Category TOC}} [[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]'
36637
wikitext
text/x-wiki
{{hiddencat}}
{{Category TOC}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
hy8x4wz5rnxp16w4h2qki9nqhe3a1s3
Κατηγορίαν:AC με 18 στοιχεία
14
3428
36638
2025-12-15T20:29:27Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} [[Κατηγορίαν:Κατηγορίες ανίχνευσης Wikidata]]'
36638
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Κατηγορίες ανίχνευσης Wikidata]]
2wcofuo5v024ofum1g02xsdyepbfopm
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά ISNI
14
3429
36639
2025-12-15T20:30:36Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} [[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]'
36639
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
de8k88nxnjbq51i7qjh9e7201rfjkw5
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά GND
14
3430
36641
36640
2025-12-15T20:31:59Z
Εὐθυμένης
2777
36641
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
de8k88nxnjbq51i7qjh9e7201rfjkw5
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά BNF
14
3431
36642
2025-12-15T20:32:45Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} [[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]'
36642
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
de8k88nxnjbq51i7qjh9e7201rfjkw5
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά BIBSYS
14
3432
36644
36643
2025-12-15T20:34:10Z
Εὐθυμένης
2777
36644
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
de8k88nxnjbq51i7qjh9e7201rfjkw5
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά NLA
14
3433
36645
2025-12-15T20:34:47Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} [[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]'
36645
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
de8k88nxnjbq51i7qjh9e7201rfjkw5
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά EBE
14
3434
36646
2025-12-15T20:36:10Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} [[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]'
36646
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
de8k88nxnjbq51i7qjh9e7201rfjkw5
Κατηγορίαν:Σελίδες που χρησιμοποιούν μαγικούς συνδέσμους ISBN
14
3435
36647
2025-12-15T20:36:59Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{Κενή κατηγορία}} {{hidden category}} [[Κατηγορίαν:Κατηγορίες ανίχνευσης]]'
36647
wikitext
text/x-wiki
{{Κενή κατηγορία}}
{{hidden category}}
[[Κατηγορίαν:Κατηγορίες ανίχνευσης]]
t889g7yavy1bw0ewyofo22y26twqg3b
Πρότυπον:Hidden category
10
3436
36648
2025-12-15T20:38:02Z
Εὐθυμένης
2777
Ανακατεύθυνση στη σελίδα [[Πρότυπον:Hiddencat]]
36648
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Hiddencat]]
3gct1p5zokb6nrk44lg17e4qrjh69qk
Κατηγορίαν:Κατηγορίες που δεν διαγράφονται ακόμα και αν είναι κενές
14
3437
36649
2025-12-15T20:39:00Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{CategoryTOC}} {{hiddencat}} {{κενή κατηγορία}} [[Κατηγορίαν:Διαχείριση Βικιπαίδειας|κρυμμεν κατηγοριας]]'
36649
wikitext
text/x-wiki
{{CategoryTOC}}
{{hiddencat}}
{{κενή κατηγορία}}
[[Κατηγορίαν:Διαχείριση Βικιπαίδειας|κρυμμεν κατηγοριας]]
2c7f9laad4yxqigjzb2n8kwym9ji37o
Πρότυπον:Category other
10
3438
36650
2025-12-15T21:14:45Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#switch: <!--If no or empty "demospace" parameter then detect namespace--> {{#if:{{{demospace|}}} | {{lc: {{{demospace}}} }} <!--Use lower case "demospace"--> | {{#ifeq:{{NAMESPACE}}|{{ns:Κατηγορίαν}} | category | other }} }} | category = {{{1|}}} | other | #default = {{{2|}}} }}<!--End switch--><noinclude> {{documentation}} <!-- Add categories and interwikis to the /doc subpage, not here! --> </noinclude>'
36650
wikitext
text/x-wiki
{{#switch:
<!--If no or empty "demospace" parameter then detect namespace-->
{{#if:{{{demospace|}}}
| {{lc: {{{demospace}}} }} <!--Use lower case "demospace"-->
| {{#ifeq:{{NAMESPACE}}|{{ns:Κατηγορίαν}}
| category
| other
}}
}}
| category = {{{1|}}}
| other
| #default = {{{2|}}}
}}<!--End switch--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
emmh5lotn4i6tkzt9aar67tdacx1gw0
Πρότυπον:Tr
10
3439
36933
36909
2025-12-16T12:26:11Z
Εὐθυμένης
2777
36933
wikitext
text/x-wiki
{{γλώσσα2|Τουρκικά|τουρκικήν τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Τουρκικα]]
<!--interwiki-->
</noinclude>
oro3ar64ukkhf0xnre76hrcdowsbx2p
Module:Wikidata/Sorters/testcases
828
3440
36655
2025-12-15T21:23:10Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local builder = require 'Module:Wikidata/build' local ScribuntoUnit = require 'Module:ScribuntoUnit' local suite = ScribuntoUnit:new() local simpleCompare = (require 'Module:Wikidata/lib').simpleCompare function suite:testSortStatements() local provider = { { invert = false, statements = { 2, 1, 4, 3 }, expected = { 1, 2, 3, 4 }, }, { invert = true, statements = { 2, 1, 2, 3 }, expected = { 3, 2, 2, 1 }, }, { inver...'
36655
Scribunto
text/plain
local builder = require 'Module:Wikidata/build'
local ScribuntoUnit = require 'Module:ScribuntoUnit'
local suite = ScribuntoUnit:new()
local simpleCompare = (require 'Module:Wikidata/lib').simpleCompare
function suite:testSortStatements()
local provider = {
{
invert = false,
statements = { 2, 1, 4, 3 },
expected = { 1, 2, 3, 4 },
},
{
invert = true,
statements = { 2, 1, 2, 3 },
expected = { 3, 2, 2, 1 },
},
{
invert = false,
statements = { 2, 'incomplete', 1, 3 },
expected = { 1, 2, 3, 'incomplete' },
},
{
invert = false,
statements = { 2, 'incomplete', 'incomplete', 1, 3 },
expected = { 1, 2, 3, 'incomplete', 'incomplete' },
},
{
invert = true,
statements = { 2, 'incomplete', 1, 3 },
expected = { 3, 2, 1, 'incomplete' },
},
}
local myModule = require 'Module:Wikidata/Sorters'
myModule.Sorters.xxx = {
isCompleteStatement = function(st)
return st ~= 'incomplete'
end,
mayCompareStatement = function(st)
return true
end,
compareStatements = simpleCompare
}
for _, data in ipairs(provider) do
local statements = data.statements
myModule.sortStatements(statements, { sort = { 'xxx' }, invert = data.invert })
self:assertDeepEquals(data.expected, statements)
end
end
function suite:testSortStatementsMultipleSorters()
local provider = {
{
invert = false,
statements = {
{ 2, 0 },
{ 1, 0 },
{ 2, 1 },
{ 1, 1 },
},
expected = {
{ 1, 0 },
{ 1, 1 },
{ 2, 0 },
{ 2, 1 }
},
},
{
invert = true,
statements = {
{ 2, 0 },
{ 1, 0 },
{ 2, 1 },
{ 1, 1 },
},
expected = {
{ 2, 1 },
{ 2, 0 },
{ 1, 1 },
{ 1, 0 }
},
},
{
invert = false,
statements = {
{ 2, 0 },
{ 1, 0 },
{ 'incomplete', 2 },
{ 1, 1 },
},
expected = {
{ 1, 0 },
{ 1, 1 },
{ 2, 0 },
{ 'incomplete', 2 }
},
},
{
invert = true,
statements = {
{ 2, 0 },
{ 1, 0 },
{ 'incomplete', 2 },
{ 1, 1 },
},
expected = {
{ 2, 0 },
{ 1, 1 },
{ 1, 0 },
{ 'incomplete', 2 }
},
},
{
invert = false,
statements = {
{ 1, 1 },
{ 1, 'incomplete' },
{ 'incomplete', 'incomplete' },
{ 1, 0 },
{ 'incomplete', 2 },
{ 'incomplete', 0 },
},
expected = {
{ 1, 0 },
{ 1, 1 },
{ 1, 'incomplete' },
{ 'incomplete', 0 },
{ 'incomplete', 2 },
{ 'incomplete', 'incomplete' }
},
},
}
local myModule = require 'Module:Wikidata/Sorters'
myModule.Sorters.xxx = {
isCompleteStatement = function(st)
return st[1] ~= 'incomplete'
end,
mayCompareStatement = function(st)
return true
end,
compareStatements = function(first, second)
return simpleCompare(first[1], second[1])
end
}
myModule.Sorters.yyy = {
isCompleteStatement = function(st)
return st[2] ~= 'incomplete'
end,
mayCompareStatement = function(st)
return true
end,
compareStatements = function(first, second)
return simpleCompare(first[2], second[2])
end
}
for _, data in ipairs(provider) do
local statements = data.statements
myModule.sortStatements(statements, { sort = { 'xxx', 'yyy' }, invert = data.invert })
self:assertDeepEquals(data.expected, statements)
end
end
function suite:testSortStatementsDefaultSorter()
local provider = {
{
datatype = 'string',
expected = 'alpha',
values = { 'a', 'b' }
},
{
datatype = 'monolingualtext',
expected = 'alpha',
values = { 'a', 'b' }
},
{
datatype = 'time',
expected = 'time',
values = { '1999', '2000' }
},
{
datatype = 'quantity',
expected = 'number',
values = { 1, 2 }
}
}
local myModule = require 'Module:Wikidata/Sorters'
for _, data in ipairs(provider) do
local called = false
myModule.Sorters[data.expected] = {
isCompleteStatement = function(st)
return true
end,
mayCompareStatement = function(st)
return true
end,
compareStatements = function(first, second)
called = true
return simpleCompare(first.sortBy, second.sortBy)
end
}
local statements = {}
for _, value in ipairs(data.values) do
local statement = builder.buildStatement{
datatype = data.datatype,
value = value
}
statement.sortBy = value
table.insert(statements, statement)
end
myModule.sortStatements(statements, { sort = { 'default' } })
self:assertTrue(called)
end
end
local function buildStatementWithQualifiers(prop, datatype, values)
local statement = {}
for _, value in ipairs(values) do
if value then
if not statement.qualifiers then
statement.qualifiers = {
[prop] = {}
}
statement.value = value
end
local snak = builder.buildSnak{
datatype = datatype,
value = value
}
snak.value = value
table.insert(statement.qualifiers[prop], snak)
end
end
return statement
end
function suite:testSortStatementsByQualifier()
local provider = {
{
qualifier = 'P1',
datatype = 'quantity',
expected = 'number',
values = { 2, 3, 1 },
ordered = { 1, 2, 3 }
},
{
qualifier = 'P2',
datatype = 'string',
expected = 'alpha',
values = { 'c', false, 'a' },
ordered = { 'a', 'c', false }
},
}
local myModule = require 'Module:Wikidata/Sorters'
for _, data in ipairs(provider) do
local called = false
myModule.Sorters[data.expected] = {
mayCompareSnak = function()
return true
end,
isCompleteSnak = function()
return true
end,
compareSnaks = function(first, second)
called = true
return simpleCompare(first.value, second.value)
end
}
local statements = {}
for _, value in ipairs(data.values) do
table.insert(statements, buildStatementWithQualifiers(data.qualifier, data.datatype, { value }))
end
local expected = {}
for _, value in ipairs(data.ordered) do
table.insert(expected, buildStatementWithQualifiers(data.qualifier, data.datatype, { value }))
end
myModule.sortStatements(statements, { sort = { data.qualifier } })
self:assertTrue(called)
self:assertDeepEquals(expected, statements)
end
end
function suite:testSortStatementsByQualifierHavingMultipleValues()
local provider = {
{
qualifier = 'P1',
datatype = 'quantity',
expected = 'number',
values = {
{ 2, 3 },
{ 3, 4 },
{ 1, 1 }
},
ordered = {
{ 1, 1 },
{ 2, 3 },
{ 3, 4 }
}
},
{
qualifier = 'P2',
datatype = 'string',
expected = 'alpha',
values = {
{ 'b', 'c' },
{},
{ 'c' },
{ 'a' }
},
ordered = {
{ 'a' },
{ 'b', 'c' },
{ 'c' },
{}
}
},
}
local myModule = require 'Module:Wikidata/Sorters'
for _, data in ipairs(provider) do
local called = false
myModule.Sorters[data.expected] = {
mayCompareSnak = function()
return true
end,
isCompleteSnak = function()
return true
end,
compareSnaks = function(first, second)
called = true
return simpleCompare(first.value, second.value)
end
}
local statements = {}
for _, values in ipairs(data.values) do
table.insert(statements, buildStatementWithQualifiers(data.qualifier, data.datatype, values))
end
local expected = {}
for _, values in ipairs(data.ordered) do
table.insert(expected, buildStatementWithQualifiers(data.qualifier, data.datatype, values))
end
myModule.sortStatements(statements, { sort = { data.qualifier } })
self:assertTrue(called)
self:assertDeepEquals(expected, statements)
end
end
function suite:testSortQualifiers()
self:assertTrue(false)
end
--[[
local function buildStatementFromSnaktype(snaktype, rank)
return builder.buildStatement{
datatype = 'wikibase-item',
snaktype = snaktype,
rank = rank
}
end
local function buildStatementFromEntityId(entityId, rank)
return builder.buildStatement{
datatype = 'wikibase-item',
rank = rank,
value = entityId
}
end
function suite:testSortByDatePoint()
local statements, expected = {}, {}
for _, date in ipairs({ '2001', false, '2002', false, '2000', '2003' }) do
local statement = buildStatementFromEntityId(2)
if date then
statement.qualifiers = {
P585 = {
builder.buildSnak{ datatype = 'time', value = date }
}
}
end
table.insert(statements, statement)
end
for _, date in ipairs({ '2000', '2001', '2002', '2003', false, false }) do
local statement = buildStatementFromEntityId(2)
if date then
statement.qualifiers = {
P585 = {
builder.buildSnak{ datatype = 'time', value = date }
}
}
end
table.insert(expected, statement)
end
myModule.sortStatements(statements, { sort = 'date' })
self:assertDeepEquals(expected, statements)
end
function suite:testSortByDateRangeStart()
local statements, expected = {}, {}
for _, start in ipairs({ '2002', false, '2001', '2003', false, '2000' }) do
local statement = buildStatementFromEntityId(5)
if start then
statement.qualifiers = {
P580 = {
builder.buildSnak{ datatype = 'time', value = start }
}
}
end
table.insert(statements, statement)
end
for _, start in ipairs({ '2000', '2001', '2002', '2003', false, false }) do
local statement = buildStatementFromEntityId(5)
if start then
statement.qualifiers = {
P580 = {
builder.buildSnak{ datatype = 'time', value = start }
}
}
end
table.insert(expected, statement)
end
myModule.sortStatements(statements, { sort = 'date' })
self:assertDeepEquals(expected, statements)
end
function suite:testSortByDateRangeEnd()
local statements, expected = {}, {}
for _, ending in ipairs({ '2002', false, '2001', '2003', false, '2000' }) do
local statement = buildStatementFromEntityId(5)
if ending then
statement.qualifiers = {
P582 = {
builder.buildSnak{ datatype = 'time', value = ending }
}
}
end
table.insert(statements, statement)
end
for _, ending in ipairs({ '2000', '2001', '2002', '2003', false, false }) do
local statement = buildStatementFromEntityId(5)
if ending then
statement.qualifiers = {
P582 = {
builder.buildSnak{ datatype = 'time', value = ending }
}
}
end
table.insert(expected, statement)
end
myModule.sortStatements(statements, { sort = 'date' })
self:assertDeepEquals(expected, statements)
end
function suite:testSortByDateRangeMixed()
local statements, expected = {}, {}
for _, range in ipairs({ '2002-', false, '2001-2005', '2002-2004', '-2003', false, '-2000', '2004-', '-2002' }) do
local statement = buildStatementFromEntityId(5)
if range then
local parts = mw.text.split( range, '-' )
statement.qualifiers = {}
if parts[1] ~= '' then
statement.qualifiers.P580 = {
builder.buildSnak{ datatype = 'time', value = parts[1] }
}
end
if parts[2] ~= '' then
statement.qualifiers.P582 = {
builder.buildSnak{ datatype = 'time', value = parts[2] }
}
end
end
table.insert(statements, statement)
end
for _, range in ipairs({ '-2000', '2001-2005', '-2002', '2002-2004', '2002-', '-2003', '2004-', false, false }) do
local statement = buildStatementFromEntityId(5)
if range then
local parts = mw.text.split( range, '-' )
statement.qualifiers = {}
if parts[1] ~= '' then
statement.qualifiers.P580 = {
builder.buildSnak{ datatype = 'time', value = parts[1] }
}
end
if parts[2] ~= '' then
statement.qualifiers.P582 = {
builder.buildSnak{ datatype = 'time', value = parts[2] }
}
end
end
table.insert(expected, statement)
end
myModule.sortStatements(statements, { sort = 'date' })
self:assertDeepEquals(expected, statements)
end
function suite:testSortByRank()
local statements, expected = {}, {}
for _, rank in ipairs({ 'deprecated', 'preferred', 'normal', 'deprecated', 'preferred', 'normal' }) do
table.insert(statements, buildStatementFromEntityId(1, rank))
end
for _, rank in ipairs({ 'preferred', 'preferred', 'normal', 'normal', 'deprecated', 'deprecated' }) do
table.insert(expected, buildStatementFromEntityId(1, rank))
end
myModule.sortStatements(statements, { sort = 'rank' })
self:assertDeepEquals(expected, statements)
end
function suite:testSortBySnaktype()
local statements, expected = {}, {}
for _, snak in ipairs({ 'somevalue', 'novalue', 'somevalue' }) do
table.insert(statements, buildStatementFromSnaktype(snak))
end
table.insert(statements, 3, buildStatementFromEntityId(1))
for _, snak in ipairs({ 'somevalue', 'somevalue', 'novalue' }) do
table.insert(expected, buildStatementFromSnaktype(snak))
end
table.insert(expected, 1, buildStatementFromEntityId(1))
myModule.sortStatements(statements, { sort = 'snaktype' })
self:assertDeepEquals(expected, statements)
end
function suite:testSortHasLabel()
local statements, expected = {}, {}
for _, id in ipairs({ 6, 1, 1, 6, 6, 1 }) do
table.insert(statements, buildStatementFromEntityId(id))
end
for _, id in ipairs({ 1, 1, 1, 6, 6, 6 }) do
table.insert(expected, buildStatementFromEntityId(id))
end
myModule.sortStatements(statements, { sort = 'hasLabel' })
self:assertDeepEquals(expected, statements)
end
]]--
return suite
95ettzv26anb1ulzrc2ryawia2m9so5
Module:Wikidata/Formatters/wikibase-entityid
828
3441
36656
2025-12-15T21:24:06Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require 'strict' local p = {} local lib = require 'Module:Wikidata/lib' local i18n = mw.loadData('Module:Wikidata/i18n') local function constructLink(label, link, lang) if link then if label then if lang and lang ~= i18n.lang then return mw.ustring.format('<span lang="%s">[[%s|%s]]</span>', lang, link, label) else return '[[' .. link .. '|' .. label .. ']]' end else return '[[' .. link .. ']]' end end if label then...'
36656
Scribunto
text/plain
--require 'strict'
local p = {}
local lib = require 'Module:Wikidata/lib'
local i18n = mw.loadData('Module:Wikidata/i18n')
local function constructLink(label, link, lang)
if link then
if label then
if lang and lang ~= i18n.lang then
return mw.ustring.format('<span lang="%s">[[%s|%s]]</span>', lang, link, label)
else
return '[[' .. link .. '|' .. label .. ']]'
end
else
return '[[' .. link .. ']]'
end
end
if label then
if lang and lang ~= i18n.lang then
return mw.ustring.format('<span lang="%s">%s</span>', lang, label)
else
return label
end
end
return nil
end
-- @deprecated
p.getLinkWhenNonexistingLabel = lib.getLinkWhenNonexistingLabel
-- @deprecated
function p.formatEntityWithGender(value, options)
options.label = 'gender'
return p.formatValue(value, options)
end
local function getLabel(entityId, options)
local label, lang
local Module = require 'Module:Wikidata'
--if options.label and lib.isPropertyId(options.label) then
if options.label == 'short' then
label = Module.formatStatementsFromLua{
addclass = false,
id = entityId,
limit = 1,
property = 'P1813',
rank = 'valid',
sort = {'rank'},
withlang = {i18n.lang, 'mul'},
}
elseif options.label == 'gender' then
local gender = Module.getRawValueFromLua{
id = options.id,
property = 'P21'
}
if gender == 'Q6581072' then
label, lang = Module.formatStatementsFromLua{
addclass = false,
id = entityId,
limit = 1,
property = 'P2521',
rank = 'valid',
sort = {'rank'},
withlang = i18n.lang,
}, i18n.lang
end
elseif options.label == 'unitsymbol' then
label = Module.getRawValueFromLua{
id = entityId,
property = 'P5061',
withlang = i18n.lang
}
end
if not label then
if options.withlang then
label, lang = mw.wikibase.getLabelByLang(entityId, options.withlang), options.withlang
else
label, lang = mw.wikibase.getLabelWithLang(entityId)
end
if label then
label = mw.text.nowiki(label)
end
end
return label, lang
end
local function getSitelink(entityId, options)
if not lib.IsOptionTrue(options, 'nolink') then
return mw.wikibase.sitelink(entityId) or ('d:' .. entityId)
end
return nil
end
function p.formatEntityId(entityId, options)
local options = options or {}
local label, lang = getLabel(entityId, options)
local link = getSitelink(entityId, options)
return constructLink(label, link, lang) or lib.getLinkWhenNonexistingLabel(entityId)
end
function p.getRawValue(value, options)
if lib.IsOptionTrue(options or {}, 'numeric') then
return value['numeric-id']
end
return value.id
end
p.formatRawValue = p.formatEntityId
function p.formatValue(value, options)
return p.formatEntityId(p.getRawValue(value, {}), options)
end
return p
kdodkaswc50kroizi0apx6yypph1ssz
Module:Wikidata/Sorters/snaktype
828
3442
36657
2025-12-15T21:25:07Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local snaktypeToNumber = { value = -1, somevalue = 0, novalue = 1, } function p.isCompleteStatement(statement) return true end function p.mayCompareStatement(statement) return true end local function getNumber(statement) return snaktypeToNumber[statement.snaktype] end function p.compareStatements(first, second) return lib.simpleCompare(getNumber(first), getNumber...'
36657
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local snaktypeToNumber = {
value = -1,
somevalue = 0,
novalue = 1,
}
function p.isCompleteStatement(statement)
return true
end
function p.mayCompareStatement(statement)
return true
end
local function getNumber(statement)
return snaktypeToNumber[statement.snaktype]
end
function p.compareStatements(first, second)
return lib.simpleCompare(getNumber(first), getNumber(second))
end
return p
jcruooxvhi369q4uyafjx2s6cp9gan2
Module:Wikidata/Sorters/rank
828
3443
36658
2025-12-15T21:25:59Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local rankToNumber = { preferred = -1, normal = 0, deprecated = 1, } function p.isCompleteStatement(statement) return true end function p.mayCompareStatement(statement) return true end local function getNumber(statement) return rankToNumber[statement.rank] end function p.compareStatements(first, second) return lib.simpleCompare(getNumber(first), getNumber(second)...'
36658
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local rankToNumber = {
preferred = -1,
normal = 0,
deprecated = 1,
}
function p.isCompleteStatement(statement)
return true
end
function p.mayCompareStatement(statement)
return true
end
local function getNumber(statement)
return rankToNumber[statement.rank]
end
function p.compareStatements(first, second)
return lib.simpleCompare(getNumber(first), getNumber(second))
end
return p
3769c28zi6h0f5otuiwbvt5cj1q1ypi
Module:Wikidata/Formatters/scale
828
3444
36659
2025-12-15T21:26:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local QuantityFormatter = require('Module:Wikidata/Formatters').Formatters.quantity local function formatScale(value) return mw.ustring.format('1:%s', value) end function p.getRawValue(value, options) return formatScale(QuantityFormatter.getRawValue(value, options)) end function p.formatValue(value, options) return formatScale(QuantityFormatter.formatValue(value, options)) end return p'
36659
Scribunto
text/plain
local p = {}
local QuantityFormatter = require('Module:Wikidata/Formatters').Formatters.quantity
local function formatScale(value)
return mw.ustring.format('1:%s', value)
end
function p.getRawValue(value, options)
return formatScale(QuantityFormatter.getRawValue(value, options))
end
function p.formatValue(value, options)
return formatScale(QuantityFormatter.formatValue(value, options))
end
return p
d230292ahcbzkh29xfdxyw42tgmwk6i
Module:Wikidata/datum
828
3445
36660
2025-12-15T21:27:40Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local i18n = mw.loadData("Module:Wikidata/i18n") -- todo: move to lib function p.yearDifference(sooner, later) local age = later.year - sooner.year --[[ pravděpodobně chybně, prozatím skryto if age % 4 == 0 and (age % 100 ~= 0 or age % 400 == 0) then age = math.floor(age/4) end ]]-- if sooner.precision > 10 then if later.precision > 10 then if sooner.month >...'
36660
Scribunto
text/plain
require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local i18n = mw.loadData("Module:Wikidata/i18n")
-- todo: move to lib
function p.yearDifference(sooner, later)
local age = later.year - sooner.year
--[[ pravděpodobně chybně, prozatím skryto
if age % 4 == 0 and (age % 100 ~= 0 or age % 400 == 0) then
age = math.floor(age/4)
end
]]--
if sooner.precision > 10 then
if later.precision > 10 then
if sooner.month > later.month then
age = age - 1
elseif sooner.month == later.month and sooner.day > later.day then
age = age - 1
end
return age, age
elseif later.precision == 10 then
if sooner.month == later.month then
return age - 1, age - 1 .. '–' .. age
end
if sooner.month > later.month then
age = age - 1
end
return age, age
end
elseif sooner.precision == 10 then
if later.precision > 9 then
if sooner.month == later.month then
return age - 1, age - 1 .. '–' .. age
end
if sooner.month > later.month then
age = age - 1
end
return age, age
end
end
return age - 1, age - 1 .. '–' .. age
end
--[[
local function julGregDifference(timevalue)
-- todo: Lua
return tonumber(mw.getCurrentFrame():expandTemplate{
title = 'JULGREGDATUM/AnzahlTage',
args = { timevalue.month, timevalue.year }
})
end
]]
-- todo: move to lib
function p.julianToGregorian(timevalue)
-- https://en.wikipedia.org/wiki/Gregorian_calendar#Difference_between_Gregorian_and_Julian_calendar_dates
local year = timevalue.year
local diff = math.floor(year / 100) - math.floor(year / 400) - 2
if year % 100 == 0 and year % 400 ~= 0 then
if timevalue.month == 2 and 30 - timevalue.day > diff then
diff = diff - 1
end
end
local feb_days
if year % 4 == 0 then
feb_days = 29
else
feb_days = 28
end
local days = { 31, feb_days, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }
local newvalue = mw.clone(timevalue)
newvalue.calendar = newvalue.CALENDAR.GREGORIAN
newvalue.day = newvalue.day + diff
if newvalue.day > days[newvalue.month] then
newvalue.day = newvalue.day - days[newvalue.month]
newvalue.month = newvalue.month + 1
if newvalue.month > 12 then
newvalue.month = 1
newvalue.year = newvalue.year + 1
end
end
return newvalue
end
local function stripZero(date, lang, timevalue)
-- odstraň nuly na začátku (rok < 1000 a > -1000)
local year
if timevalue.year > 0 then
year = math.abs(timevalue.year)
else
year = math.abs(timevalue.year) - 1
end
return mw.ustring.gsub(
date,
lang:formatNum(0) .. '+(' .. lang:formatNum(year, { noCommafy = true }) .. ')',
'%1'
)
end
function p.formatTimevalue(timevalue, options)
local lang = mw.getContentLanguage()
local precision = math.min(timevalue.precision, options.precision or timevalue.precision)
local timestring = tostring(timevalue)
local linked_app = ''
if not lib.IsOptionTrue(options, 'nolink') then
linked_app = '-linked'
end
local BCE_app = ''
if timevalue.year < 0 then
timestring = mw.ustring.sub(timestring, 2)
BCE_app = '-BCE'
end
local newstring
local map = {
[timevalue.PRECISION.KY] = 'millenium',
[timevalue.PRECISION.YEAR100] = 'century',
[timevalue.PRECISION.YEAR10] = 'decade',
[timevalue.PRECISION.YEAR] = 'year',
[timevalue.PRECISION.MONTH] = 'year-month',
[timevalue.PRECISION.DAY] = 'year-month-day',
}
if precision >= timevalue.PRECISION.YEAR then
local key = map[math.min(precision, timevalue.PRECISION.DAY)] .. BCE_app
local pattern = i18n.date[key .. linked_app] or i18n.date[key]
if precision > timevalue.PRECISION.MONTH
and timevalue.calendar == timevalue.CALENDAR.JULIAN
and timevalue > timevalue.newFromIso8601('1582-10-04')
then
local newvalue = p.julianToGregorian(timevalue)
local jul_pattern
if newvalue.year ~= timevalue.year then
jul_pattern = i18n.date['year-month-day']
elseif newvalue.month ~= timevalue.month then
jul_pattern = i18n.date['month-day']
else
jul_pattern = i18n.date.day
end
if newvalue.month == 2 and newvalue.day == 29 then
if year % 100 == 0 and year % 400 ~= 0 then
timevalue.year = 2000 -- hack to force formatting 29th February
end
end
newstring = mw.ustring.format('%s%s / %s%s',
stripZero(lang:formatDate(jul_pattern, timestring), lang, timevalue),
i18n.date.julian,
stripZero(lang:formatDate(pattern, tostring(newvalue)), lang, newvalue),
i18n.date.gregorian)
else
newstring = stripZero(lang:formatDate(pattern, timestring), lang, timevalue)
end
elseif precision >= timevalue.PRECISION.KY then
local key = map[precision] .. BCE_app
local coef = 10 ^ (9 - precision)
local number = math.floor(math.abs(timevalue.year) / coef)
if precision == timevalue.PRECISION.YEAR100 then
if timevalue.year % 100 > 0 then
number = number + 1
end
elseif precision == timevalue.PRECISION.YEAR10 then
number = number * coef
end
newstring = mw.getCurrentFrame():preprocess(
mw.message.newRawMessage(i18n.date[key .. linked_app] or i18n.date[key])
:params(lang:formatNum(number, { noCommafy = true }))
:plain()
)
else
-- TODO
newstring = timestring
end
return newstring
end
p.formatDateFromTimevalue = p.formatTimevalue
-- @deprecated
function p.AreDatesSame(first, second, strict)
return first == second
end
function p.getRawValue(value, options)
local Time = require 'Module:Time'
return Time.newFromWikidataValue(value)
end
function p.formatValue(value, options)
local timevalue = p.getRawValue(value, options)
local formatted = p.formatTimevalue(timevalue, options)
if lib.IsOptionTrue(options, 'birthdate') and timevalue.precision >= timevalue.PRECISION.YEAR then
if #mw.wikibase.getBestStatements(options.id, 'P570') == 0 then
local Time = require 'Module:Time'
local age, age_text = p.yearDifference(timevalue, Time.new(os.date('!*t')))
formatted = mw.ustring.format('%s (%s)', formatted,
mw.getCurrentFrame():preprocess(
mw.message.newRawMessage(i18n.date.age)
:params(age_text)
:numParams(age)
:plain()
)
)
if age >= 100 then
formatted = formatted .. lib.category('centenarians-living')
elseif age < 0 then
formatted = formatted .. lib.category('failed-age-computing')
end
end
elseif lib.IsOptionTrue(options, 'deathdate') and timevalue.precision >= timevalue.PRECISION.YEAR then
local birthvalue
for _, statement in ipairs(mw.wikibase.getBestStatements(options.id, 'P569')) do
if lib.IsSnakValue(statement.mainsnak) then
local Formatters = require 'Module:Wikidata/Formatters'
birthvalue = Formatters.getRawValue(statement.mainsnak)
break
end
end
if birthvalue and birthvalue.precision >= birthvalue.PRECISION.YEAR then
local age, age_text = p.yearDifference(birthvalue, timevalue)
formatted = mw.ustring.format('%s (%s)', formatted,
mw.getCurrentFrame():preprocess(
mw.message.newRawMessage(i18n.date['in-the-age'])
:params(age_text)
:numParams(age)
:plain()
)
)
if age >= 100 then
formatted = formatted .. lib.category('centenarians')
end
end
end
return formatted
end
p.formatRawValue = p.formatTimevalue
return p
8dyiwggo8be0kyxtm7ei82a3varlxmp
Πρότυπον:Formatnum
10
3446
36661
2025-12-15T21:28:43Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{{{{♥|safesubst:}}}#invoke:Formatnum|main}}<noinclude>{{Documentation}}</noinclude>'
36661
wikitext
text/x-wiki
{{{{{♥|safesubst:}}}#invoke:Formatnum|main}}<noinclude>{{Documentation}}</noinclude>
sk8f60c7u28vzfp9xdratckrz19x717
Module:WikidataCheck
828
3447
36662
2025-12-15T21:30:10Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.wikidatacheck(frame) local pframe = frame:getParent() local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself local args = pframe.args -- the arguments passed TO the template, in the wikitext that transcludes the template local property = config.property local value = config.value or "" local catbase = config.category local namespaces = confi...'
36662
Scribunto
text/plain
local p = {}
function p.wikidatacheck(frame)
local pframe = frame:getParent()
local config = frame.args -- the arguments passed BY the template, in the wikitext of the template itself
local args = pframe.args -- the arguments passed TO the template, in the wikitext that transcludes the template
local property = config.property
local value = config.value or ""
local catbase = config.category
local namespaces = config.namespaces
local ok = false -- one-way flag to check if we're in a good namespace
local ns = mw.title.getCurrentTitle().namespace
for v in mw.text.gsplit( namespaces, ",", true) do
if tonumber(v) == ns then
ok = true
end
end
if not ok then -- not in one of the approved namespaces
return ""
end
local entity = mw.wikibase.getEntityObject()
if not entity then -- no Wikidata item
return "[[Κατηγορίαν:" .. catbase .. " που δεν περιλαμβάνεται στα Wikidata]]"
end
if value == "" then
return nil -- Using Wikidata
end
local claims = entity.claims or {}
local hasProp = claims[property]
if not hasProp then -- no claim of that property
return "[[Κατηγορίαν:" .. catbase .. " που δεν περιλαμβάνεται στα Wikidata]]" -- bad. Bot needs to add the property
end
for i, v in ipairs(hasProp) do -- Now we try to iterate over all possible values?
propValue = v.mainsnak.datavalue.value
if propValue == value then
return "[[Κατηγορίαν:" .. catbase .. " ίδια με τα Wikidata]]" -- yay!
end
end
return "[[Κατηγορίαν:" .. catbase .. " διαφορετική από τα Wikidata]]" -- needs human review :(
end
return p
n9zg0wv0ql37t3lkuw6tfavfty2fi54
Module:Wikidata/Sorters/haslabel
828
3448
36663
2025-12-15T21:31:10Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local Formatters = require 'Module:Wikidata/Formatters' local cache = {} local function getLabel(value) if not cache[value] then cache[value] = mw.wikibase.label(value) or false end return cache[value] or nil end local function hasLabel(snak) return lib.IsSnakValue(snak) and getLabel(Formatters.getRawValue(snak)) and true end function p.isCompleteSnak(snak) return...'
36663
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local Formatters = require 'Module:Wikidata/Formatters'
local cache = {}
local function getLabel(value)
if not cache[value] then
cache[value] = mw.wikibase.label(value) or false
end
return cache[value] or nil
end
local function hasLabel(snak)
return lib.IsSnakValue(snak) and getLabel(Formatters.getRawValue(snak)) and true
end
function p.isCompleteSnak(snak)
return true
end
function p.isCompleteStatement(statement)
return p.isCompleteSnak(statement.mainsnak)
end
function p.mayCompareSnak(snak)
return lib.datatypeToValueType[snak.datatype] == 'wikibase-entityid'
end
function p.mayCompareStatement(statement)
return p.mayCompareSnak(statement.mainsnak)
end
function p.compareSnaks(first, second)
local first_has_label = hasLabel(first)
local second_has_label = hasLabel(second)
if first_has_label == second_has_label then
return 0
elseif first_has_label then
return -1
else
return 1
end
end
function p.compareStatements(first, second)
return p.compareSnaks(first.mainsnak, second.mainsnak)
end
return p
k9kt2sg7wfvtmvrvf90mj17p9xkbu35
Module:Wikidata/Formatters/globecoordinate
828
3449
36664
2025-12-15T21:32:07Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} function p.getRawValue(value, options) local lib = require 'Module:Wikidata/lib' if not options.field then return error(lib.formatError('param-not-provided', 'field')) elseif options.field == 'latitude' or options.field == 'longitude' or options.field == 'precision' or options.field == 'globe' then return value[options.field] else return error(lib.formatError('invalid-field', options.field)) end end fun...'
36664
Scribunto
text/plain
--require "strict"
local p = {}
function p.getRawValue(value, options)
local lib = require 'Module:Wikidata/lib'
if not options.field then
return error(lib.formatError('param-not-provided', 'field'))
elseif options.field == 'latitude' or options.field == 'longitude' or options.field == 'precision' or options.field == 'globe' then
return value[options.field]
else
return error(lib.formatError('invalid-field', options.field))
end
end
function p.formatValue(value, options)
--local GlobeCoordinate = require 'Module:GlobeCoordinate'
--local _value = GlobeCoordinate.newFromWikidataValue(value)
local Coord = require 'Module:Souřadnice'
local args = {
value.latitude,
value.longitude,
}
setmetatable(args, { __index = options })
return Coord._renderCoordinates(args, mw.getCurrentFrame())
end
return p
nyeribqqntfg9w36yr9i7acg4yw1fcl
Module:Wikidata/Population
828
3450
36665
2025-12-15T21:33:09Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local WDS = require('Module:WikidataSelectors'); local p = {}; local DEFAULT_COLUMNS = 4; local DEFAULT_WIDTH = 700; local DEFAULT_HEIGHT = 300; local COLLAPSE_IF_ROWS_MORE_THAN = 11; local TABLE_COLLAPSIBLE_HEADER = "Бахархойн статистика %s — %s"; local TABLE_COLUMN_HEADER_YEAR = "Шо"; local TABLE_COLUMN_HEADER_POPULATION = "Бахархой"; local function deepcopy(orig) local orig_type = type(orig) local copy...'
36665
Scribunto
text/plain
local WDS = require('Module:WikidataSelectors');
local p = {};
local DEFAULT_COLUMNS = 4;
local DEFAULT_WIDTH = 700;
local DEFAULT_HEIGHT = 300;
local COLLAPSE_IF_ROWS_MORE_THAN = 11;
local TABLE_COLLAPSIBLE_HEADER = "Бахархойн статистика %s — %s";
local TABLE_COLUMN_HEADER_YEAR = "Шо";
local TABLE_COLUMN_HEADER_POPULATION = "Бахархой";
local function deepcopy(orig)
local orig_type = type(orig)
local copy
if orig_type == 'table' then
copy = {}
for orig_key, orig_value in next, orig, nil do
copy[deepcopy(orig_key)] = deepcopy(orig_value)
end
setmetatable(copy, deepcopy(getmetatable(orig)))
else -- number, string, boolean, etc
copy = orig
end
return copy
end
local function formatPopulationPropertyImpl( context, options )
if ( not context ) then error( 'context not specified' ); end;
if ( not options ) then error( 'options not specified' ); end;
if ( not options.entity ) then error( 'options.entity missing' ); end;
local claims = context.selectClaims( options, options.property );
if (claims == nil) then
return nil --TODO error?
end
for i, j in ipairs(claims) do
if ( not j.qualifiers.P585[1]) then return nil end --проверка на наличие момента времени
end
local comparator = function(o1, o2)
local t1 = context.parseTimeFromSnak( o1.qualifiers.P585[1] );
local t2 = context.parseTimeFromSnak( o2.qualifiers.P585[1] );
return t1 < t2;
end
table.sort( claims, comparator )
return claims;
end
-- тестирование не работает
-- =p.formatProperty(mw.getCurrentFrame():newChild{title="Модуль:Wikidata",args={["property-module"]="Wikidata/Population",["property-function"]="formatPopulationPropertyForGraph",["claim-module"]="Wikidata/Population",["claim-function"]="formatPopulationClaimForGraph",["property"]="p1082[p585][rank:preferred,rank:normal]",["datatype"]="quantity",}}:newChild{title="Модуль:Wikidata/Population"}:newChild{title="Сереседа-де-ла-Сьерра"})
function p.formatPopulationPropertyForGraph( context, options )
local claims = formatPopulationPropertyImpl( context, options );
-- Обход всех заявлений утверждения и с накоплением оформленых предпочтительных
-- заявлений в таблице
local formattedClaims = {}
local years = {}
local count = 0;
local csv = 'year,month,day,population';
if ( not claims ) then
return '';
end
for i, claim in ipairs(claims) do
-- уточняем даты: для года до середины, для месяца до 15-го числа
local p585Value = claim.qualifiers.P585[1].datavalue.value;
local p585Precision = p585Value.precision;
local p585Time = p585Value.time;
if ( p585Precision == 10 ) then
-- Set 15-th day of month
p585Time = mw.ustring.gsub(p585Time, "\-[0-9]+T", "-15T");
elseif ( p585Precision == 9 ) then
-- Set to 1-st of July
p585Time = mw.ustring.gsub(p585Time, "\-[0-9]+\-[0-9]+T", "-07-01T");
end
local year, month, day = mw.ustring.gmatch( p585Time, "(\-?[0-9]+)\-([0-9]+)\-([0-9]+)T" )(1);
if not years[ year ] then
years[ year ] = true;
local value
if not claim.mainsnak.datavalue then value = ""
else value = string.gsub( claim.mainsnak.datavalue.value.amount, '^%+', '' ) end
local line = year .. ',' .. month .. ',' .. day .. ',' .. value;
csv = csv .. '\\n' .. line;
count = count + 1;
end
end
if ( count == 0 ) then
return '';
end
local graphData = '{ "version": 2, "width": ' .. DEFAULT_WIDTH .. ', "height": ' .. DEFAULT_HEIGHT .. ', "data": [ { "name": "table", "values": "';
graphData = graphData .. csv;
graphData = graphData .. '","format": { "parse": {"year": "integer", "month": "integer", "day": "integer", "population": "integer"}, "type": "csv" },'
graphData = graphData .. '"transform": [{ "type": "formula", "field": "date", "expr": "datetime(datum.year,datum.month-1,datum.day)" }] } ],';
graphData = graphData .. '"scales": [{ "name": "x", "type": "time", "range": "width", "nice": "year", "domain": {"data": "table", "field": "date"} },';
graphData = graphData .. '{ "name": "y", "type": "linear", "range": "height", "domain": {"data": "table", "field": "population"} } ],';
graphData = graphData .. '"axes": [ {"type": "x", "scale": "x", "ticks": 10}, {"type": "y", "scale": "y", "ticks": 5, "grid": true, "orient": "right", "format": "d"} ],';
graphData = graphData .. '"marks": [{ "type": "area", "from": {"data": "table"}, "properties": { "enter": {';
graphData = graphData .. '"x": {"scale": "x", "field": "date"}, "y": {"scale": "y", "value": 0}, "y2": {"scale": "y", "field": "population"}, ';
graphData = graphData .. '"fill": {"value": "#99B2CC"}, "fillOpacity": {"value": 0.35}, "interpolate": {"value": "monotone"}}}},';
graphData = graphData .. '{ "type": "line", "from": {"data": "table"}, "properties": { "enter": {';
graphData = graphData .. '"x": {"scale": "x", "field": "date"}, "y": {"scale": "y", "field": "population"},';
graphData = graphData .. '"stroke": {"value": "#99B2CC"}, "strokeWidth": {"value": 3}, "interpolate": {"value": "monotone"}}}},';
graphData = graphData .. '{"type": "symbol","from": {"data": "table"},"properties": {"enter": {';
graphData = graphData .. '"x": {"scale": "x", "field": "date"},"y": {"scale": "y", "field": "population"},"stroke": {"value": "#99B2CC"},"fill": {"value": "#fff"},"size": {"value": 10}}}}]}';
local result = options.frame:extensionTag( 'graph', graphData );
local columns = options.columns or DEFAULT_COLUMNS;
local perColumn = math.ceil( count / columns );
if ( perColumn > COLLAPSE_IF_ROWS_MORE_THAN ) then
return result;
else
-- side-by-side display
return '<div style="display: inline-block; vertical-align: bottom;">' .. result .. '</div>';
end
end
function p.formatPopulationClaimForGraph( context, options, statement )
local time = context.parseTimeFromSnak( statement.qualifiers.P585[1] );
local value = string.gsub( statement.mainsnak.datavalue.value.amount, '^%+', '' );
return os.date("*t", time / 1000).year .. ',' .. value;
end
function p.formatPopulationPropertyForTable( context, options )
local claims = formatPopulationPropertyImpl( context, options );
-- Обход всех заявлений утверждения и с накоплением оформленых предпочтительных
-- заявлений в таблице
local formattedClaims = {}
local years = {}
local firstTime = false;
local lastTime = '';
local count = 0;
if ( not claims ) then
return '';
end
for i, claim in ipairs( claims ) do
-- обрезаем выводимую дату до года
local timeQualifier = claim.qualifiers.P585[1];
if ( timeQualifier.datavalue.value.precision > 9 ) then
timeQualifier = deepcopy( timeQualifier );
timeQualifier.datavalue.value.precision = 9;
end
local year = string.sub( timeQualifier.datavalue.value.time, 2, 5 );
if not years[ year ] then
years[ year ] = true;
local time = context.formatSnak( options, timeQualifier );
local value = context.formatSnak( options, claim.mainsnak );
if ( not firstTime ) then firstTime = time end;
lastTime = time;
local line = '\n|-\n! ' .. time
line = line .. '\n| style="text-align: right; border-right: none; padding-right: 0;" | ' .. ( value or "" );
line = line .. '\n| style="text-align: left; border-left: none; padding-left: 0;" | '
if options.references then
line = line .. context.formatRefs( options, claim );
end
table.insert( formattedClaims, line )
count = count + 1;
end
end
if ( count == 0 ) then
return '';
end
local columns = options.columns or DEFAULT_COLUMNS;
if ( count <= columns ) then
local out = '{| class="wikitable" \n|-\n! ' .. TABLE_COLUMN_HEADER_YEAR .. ' !! colspan=2 | ' .. TABLE_COLUMN_HEADER_POPULATION .. '\n|-';
for i, formattedClaim in ipairs(formattedClaims) do
out = out .. '\n' .. formattedClaim;
end
out = out .. '\n|}';
return out;
end
local out = '';
local perColumn = math.ceil( count / columns );
if ( perColumn > COLLAPSE_IF_ROWS_MORE_THAN ) then
local caption = mw.ustring.format( TABLE_COLLAPSIBLE_HEADER, firstTime, lastTime );
out = out .. '{| class="collapsible collapsed" |\n';
out = out .. '! ' .. caption .. '\n';
out = out .. '|-\n';
out = out .. '| class="ts-wikidata-population-table" |';
else
out = out .. '<div class="ts-wikidata-population-table">';
end
for i, formattedClaim in ipairs(formattedClaims) do
if ( i % perColumn == 1 ) then
out = out .. '\n{| class="wikitable" \n|-\n! ' .. TABLE_COLUMN_HEADER_YEAR .. ' !! colspan=2 | ' .. TABLE_COLUMN_HEADER_POPULATION .. '\n|-';
end
out = out .. '\n' .. formattedClaim;
if ( i % perColumn == 0 ) then
out = out .. '\n|}';
end
end
if ( count % perColumn ~= 0 ) then
out = out .. '\n|}';
end
if ( perColumn > COLLAPSE_IF_ROWS_MORE_THAN ) then
out = out .. '\n|}';
else
out = out .. '\n</div>';
end
return out
end
return p;
gtqltgbijxelqrxmgv622jox4a0tz9j
Module:Wikidata/Dates
828
3451
36666
2025-12-15T21:34:16Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- sert à récupérer des données usuelles sur Wikidata (les fonctions élémentaires pour l'extraction des données se fait sur Module:Wikidata -- ce module peut-être appelé par Module:InfoboxBuilder/Helpers qui les met en infobox local p = {} local formatDate = require "Module:Date complexe" local function splitTimestamp(timestamp, calendar) local era, year, month, day era = string.sub(timestamp, 1, 1) year = tonumber(string.sub(timestamp...'
36666
Scribunto
text/plain
-- sert à récupérer des données usuelles sur Wikidata (les fonctions élémentaires pour l'extraction des données se fait sur Module:Wikidata
-- ce module peut-être appelé par Module:InfoboxBuilder/Helpers qui les met en infobox
local p = {}
local formatDate = require "Module:Date complexe"
local function splitTimestamp(timestamp, calendar)
local era, year, month, day
era = string.sub(timestamp, 1, 1)
year = tonumber(string.sub(timestamp, 9, 12))
month = tonumber(string.sub(timestamp, 14, 15))
day = tonumber(string.sub(timestamp, 17, 18))
if calendar == 'julian' then
year, month, day = formatdate.gregorianToJulian( era .. year, month, day )
end
return {day = day, month = month, year = year, era = era, timestamp = timestamp, type = 'dateobject'}
end
function p.rangeobject(begin, ending, params)
local timestamp
if begin then
timestamp = begin.timestamp
else
timestamp = ending.timestamp
end
return {begin = begin, ending = ending, timestamp = timestamp, type = 'rangeobject'}
end
function p.dateobject(orig, params) -- transforme un snak en un nouvel objet utilisable par Module:Date complexe
if not params then
params = {}
end
local newobj = splitTimestamp(orig.time, orig.calendar) -- initalise l'object en mettant la valeur des dates
newobj.precision = params.precision or orig.precision
newobj.type = 'dateobject'
return newobj
end
function p.objecttotext(obj, params)
if obj.type == 'dateobject' then
return formatDate.simplestring(obj, params)
elseif obj.type == 'rangeobject' then
return formatDate.daterange(obj.begin, obj.ending, params)
end
end
return p
r4ww9iz5584zpt0w0etyb6bklqbbger
Module:Wikidata/Formatters/monolingualtext
828
3452
36667
2025-12-15T21:35:12Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local function formatValue(text, language, showlang) local formatted = lib.formatTextInLanguage(text, language) if showlang then local frame = mw.getCurrentFrame() local i18n = mw.loadData('Module:Wikidata/i18n') return mw.ustring.format('%s (%s)', formatted, frame:callParserFunction('#language', language, i18n.lang)) else return formatted end end function...'
36667
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local function formatValue(text, language, showlang)
local formatted = lib.formatTextInLanguage(text, language)
if showlang then
local frame = mw.getCurrentFrame()
local i18n = mw.loadData('Module:Wikidata/i18n')
return mw.ustring.format('%s (%s)',
formatted, frame:callParserFunction('#language', language, i18n.lang))
else
return formatted
end
end
function p.getRawValue(value, options)
return value.text
end
function p.formatRawValue(value, options)
return formatValue(value, options.language, lib.IsOptionTrue(options, 'showlang'))
end
function p.formatValue(value, options)
return formatValue(value.text, value.language, lib.IsOptionTrue(options, 'showlang'))
end
return p
jv1d173fmwqiworeqlo4xhf1n0i0vpo
Module:Wikidata/Sorters/quantity
828
3453
36668
2025-12-15T21:36:01Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' p.isCompleteSnak = lib.IsSnakValue function p.isCompleteStatement(statement) return p.isCompleteSnak(statement.mainsnak) end function p.mayCompareSnak(snak) return lib.datatypeToValueType[snak.datatype] == 'quantity' end function p.mayCompareStatement(statement) return p.mayCompareSnak(statement.mainsnak) end local function getValue(snak) local Formatters = require...'
36668
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
p.isCompleteSnak = lib.IsSnakValue
function p.isCompleteStatement(statement)
return p.isCompleteSnak(statement.mainsnak)
end
function p.mayCompareSnak(snak)
return lib.datatypeToValueType[snak.datatype] == 'quantity'
end
function p.mayCompareStatement(statement)
return p.mayCompareSnak(statement.mainsnak)
end
local function getValue(snak)
local Formatters = require 'Module:Wikidata/Formatters'
return Formatters.getRawValue(snak)
end
function p.compareSnaks(first, second)
return lib.simpleCompare(getValue(first), getValue(second))
end
function p.compareStatements(first, second)
return p.compareSnaks(first.mainsnak, second.mainsnak)
end
return p
3acr86a98gwoumfs2hhz2dbpujo9jfu
Module:Wikidata/Sorters/time
828
3454
36669
2025-12-15T21:36:53Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' p.isCompleteSnak = lib.IsSnakValue function p.isCompleteStatement(statement) return p.isCompleteSnak(statement.mainsnak) end function p.mayCompareSnak(snak) return lib.datatypeToValueType[snak.datatype] == 'time' end function p.mayCompareStatement(statement) return p.mayCompareSnak(statement.mainsnak) end function p.compareSnaks(first, second) local Formatters = re...'
36669
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
p.isCompleteSnak = lib.IsSnakValue
function p.isCompleteStatement(statement)
return p.isCompleteSnak(statement.mainsnak)
end
function p.mayCompareSnak(snak)
return lib.datatypeToValueType[snak.datatype] == 'time'
end
function p.mayCompareStatement(statement)
return p.mayCompareSnak(statement.mainsnak)
end
function p.compareSnaks(first, second)
local Formatters = require 'Module:Wikidata/Formatters'
return lib.simpleCompare(Formatters.getRawValue(first), Formatters.getRawValue(second))
end
function p.compareStatements(first, second)
return p.compareSnaks(first.mainsnak, second.mainsnak)
end
return p
gabiyx1ezxjavi8u550f0hlcp9dc5h1
Module:Wikidata/Sorters/alpha
828
3455
36670
2025-12-15T21:37:49Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local Collation = require 'Module:Collation' local Formatters = require 'Module:Wikidata/Formatters' local cache = {} local function getLabel(value) if not cache[value] then cache[value] = mw.wikibase.label(value) or false end return cache[value] or nil end local function getValue(snak) local value = Formatters.getRawValue(snak) if snak.datavalue.type == 'wikibase-...'
36670
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local Collation = require 'Module:Collation'
local Formatters = require 'Module:Wikidata/Formatters'
local cache = {}
local function getLabel(value)
if not cache[value] then
cache[value] = mw.wikibase.label(value) or false
end
return cache[value] or nil
end
local function getValue(snak)
local value = Formatters.getRawValue(snak)
if snak.datavalue.type == 'wikibase-entityid' then
return getLabel(value)
end
return value
end
function p.isCompleteSnak(snak)
return lib.IsSnakValue(snak) and (
snak.datavalue.type == 'string' or
snak.datavalue.type == 'monolingualtext' or
((getValue(snak) and true) or false)
)
end
function p.isCompleteStatement(statement)
return p.isCompleteSnak(statement.mainsnak)
end
function p.mayCompareSnak(snak)
local valueType = lib.datatypeToValueType[snak.datatype]
return valueType == 'monolingualtext' or valueType == 'string' or valueType == 'wikibase-entityid'
end
function p.mayCompareStatement(statement)
return p.mayCompareSnak(statement.mainsnak)
end
function p.compareSnaks(first, second)
return Collation.compare(getValue(first), getValue(second))
end
function p.compareStatements(first, second)
return p.compareSnaks(first.mainsnak, second.mainsnak)
end
return p
b1o8emdnrj4iwb2gx4oq7xzzz5p5n8z
Module:Collation
828
3456
36671
2025-12-15T21:38:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- @brief -- Collation for cs (Czech) language. -- -- @author -- [[meta:User:Danny B.]] local _module = {} ---------------------------------------- --[[ Zde je možno editovat Prosíme, zachovávejte formát a správné abecední pořadí. Formát: { sekundární abeceda, primární abeceda }, Pořadí: ČSN 97 6030 https://cs.wikipedia.org/wiki/Abecedn%C3%AD_%C5%99azen%C3%AD#.C4.8Ce.C5.A1tina --]] _module.alphabet = { { " ", "...'
36671
Scribunto
text/plain
-- @brief
-- Collation for cs (Czech) language.
--
-- @author
-- [[meta:User:Danny B.]]
local _module = {}
----------------------------------------
--[[
Zde je možno editovat
Prosíme, zachovávejte formát a správné abecední pořadí.
Formát:
{ sekundární abeceda, primární abeceda },
Pořadí:
ČSN 97 6030
https://cs.wikipedia.org/wiki/Abecedn%C3%AD_%C5%99azen%C3%AD#.C4.8Ce.C5.A1tina
--]]
_module.alphabet = {
{ " ", " " },
{ "-", "-" },
{ "a", "a" },
{ "á", "a" },
{ "å", "a" },
{ "ä", "a" },
{ "b", "b" },
{ "c", "c" },
{ "č", "č" },
{ "d", "d" },
{ "ď", "d" },
{ "e", "e" },
{ "é", "e" },
{ "ě", "e" },
{ "f", "f" },
{ "g", "g" },
{ "h", "h" },
{ "ch", "ch" },
{ "i", "i" },
{ "í", "i" },
{ "j", "j" },
{ "k", "k" },
{ "l", "l" },
{ "m", "m" },
{ "n", "n" },
{ "ň", "n" },
{ "o", "o" },
{ "ó", "o" },
{ "p", "p" },
{ "q", "q" },
{ "r", "r" },
{ "ř", "ř" },
{ "s", "s" },
{ "š", "š" },
{ "t", "t" },
{ "ť", "t" },
{ "u", "u" },
{ "ú", "u" },
{ "ů", "u" },
{ "ü", "u" },
{ "v", "v" },
{ "w", "w" },
{ "x", "x" },
{ "y", "y" },
{ "ý", "y" },
{ "z", "z" },
{ "ž", "ž" },
{ "0", "0" },
{ "1", "1" },
{ "2", "2" },
{ "3", "3" },
{ "4", "4" },
{ "5", "5" },
{ "6", "6" },
{ "7", "7" },
{ "8", "8" },
{ "9", "9" },
{ "'", "'" }
}
--[[
Konec možnosti editace
--]]
-- Pomocné tabulky
local primaryAlphabet = {}
local secondaryAlphabet = {}
-- Inicializace pomocných tabulek
for i, letter in ipairs( _module.alphabet ) do
secondaryAlphabet[letter[1]] = i
primaryAlphabet[letter[1]] = secondaryAlphabet[letter[2]]
end
local function charAt( str, pos )
return mw.ustring.sub( str, pos, pos )
end
local function getChar( str, pos, alphabet )
local newpos = pos
local char = charAt( str, newpos )
while char ~= "" and not alphabet[char] do
newpos = newpos + 1
char = charAt( str, newpos )
end
if ( char == "c" and charAt( str, newpos + 1 ) == "h" ) then
char = "ch"
newpos = newpos + 1
end
return char, newpos + 1
end
-- @brief
-- Compare two strings by given alphabet.
--
-- @param
-- String left First string
-- String right Second string
-- table alphabet Table of order of chars
-- @return
-- -1 if left < right
-- 0 if left = right
-- 1 if left > right
local function compareByAlphabet( strLeft, strRight, alphabet )
local iLeft = 1
local iRight = 1
local charLeft = ""
local charRight = ""
repeat
charLeft, iLeft = getChar( strLeft, iLeft, alphabet );
charRight, iRight = getChar( strRight, iRight, alphabet );
if charLeft ~= "" or charRight ~= "" then
if charLeft == "" then
return -1
elseif charRight == "" then
return 1
elseif alphabet[charLeft] > alphabet[charRight] then
return 1
elseif alphabet[charLeft] < alphabet[charRight] then
return -1
end
end
until ( charLeft == "" or charRight == "" )
return 0
end
-- @brief
-- Compare two strings.
--
-- @param
-- String left First string
-- String right Second string
-- @return
-- -1 if left < right
-- 0 if left = right
-- 1 if left > right
function _module.compare( left, right )
local output
local strLeft = mw.ustring.lower( left )
local strRight = mw.ustring.lower( right )
if strLeft == strRight then
return 0
end
output = compareByAlphabet( strLeft, strRight, primaryAlphabet )
if output == 0 then
return compareByAlphabet( strLeft, strRight, secondaryAlphabet )
else
return output
end
end
-- @brief
-- Compare two strings for table.sort().
--
-- @param
-- String left First string
-- String right Second string
-- @return
-- boolean true if left < right
-- boolean false if left >= right
function _module.sortCompare( left, right )
return _module.compare( left, right ) < 0
end
----------------------------------------
return _module
t62tnjx5i4dcqzv6mdoil3060n2y0bh
Module:Wikidata/build
828
3457
36672
2025-12-15T21:39:41Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local lib = require 'Module:Wikidata/lib' p.datatypes = {} for dt in pairs(lib.datatypeToValueType) do table.insert(p.datatypes, dt) end function p.randomDatatype() return p.datatypes[math.floor(math.random(#p.datatypes))] end function p.randomLanguage() local langs = mw.language.fetchLanguageNames() local codes = {} for key in pairs( langs ) do table.insert( codes, key ) end return codes[math.floor(math.random(#codes))] e...'
36672
Scribunto
text/plain
local p = {}
local lib = require 'Module:Wikidata/lib'
p.datatypes = {}
for dt in pairs(lib.datatypeToValueType) do
table.insert(p.datatypes, dt)
end
function p.randomDatatype()
return p.datatypes[math.floor(math.random(#p.datatypes))]
end
function p.randomLanguage()
local langs = mw.language.fetchLanguageNames()
local codes = {}
for key in pairs( langs ) do
table.insert( codes, key )
end
return codes[math.floor(math.random(#codes))]
end
local function buildAmount( number )
return ( number < 0 and tostring( number ) ) or '+' .. tostring( number )
end
function p.buildValueFromDatatype( args )
if lib.datatypeToValueType[args.datatype] == "string" then
return args.value
elseif args.datatype == "quantity" then
if type( args.value ) == "table" then
return args.value
elseif type( args.value ) == "number" then
return {
amount = buildAmount( args.value ),
lowerBound = args.diff and buildAmount( args.value - args.diff ),
unit = args.unit and mw.ustring.format( 'http://www.wikidata.org/entity/%s', args.unit ) or "1",
upperBound = args.diff and buildAmount( args.value + args.diff )
}
end
elseif args.datatype == "wikibase-item" or args.datatype == "wikibase-property" then
local value = {
['entity-type'] = mw.text.split( args.datatype, '-', true )[2],
['numeric-id'] = args.value,
}
value.id = lib.getEntityIdFromValue(value)
return value
elseif args.datatype == "time" then
local obj = require('Module:Time').newFromIso8601( args.value )
local precision = obj.precision
obj.precision = 14
return {
after = 0,
before = 0,
calendarmodel = "http://www.wikidata.org/entity/Q1985727",
precision = precision,
time = obj:toIso8601(),
timezone = 0,
}
elseif args.datatype == "monolingualtext" then
return {
language = args.lang or p.randomLanguage(),
text = args.value
}
end
return error()
end
function p.buildSnak( args )
if not args.snaktype or args.snaktype == "value" then
return {
datatype = args.datatype or error('Missing datatype'),
datavalue = {
type = lib.datatypeToValueType[args.datatype] or error('Invalid datatype'),
value = p.buildValueFromDatatype( args )
},
snaktype = "value"
}
else
return {
datatype = args.datatype,
snaktype = args.snaktype
}
end
end
function p.buildStatement( args )
return {
mainsnak = p.buildSnak( args ),
rank = args.rank or 'normal',
type = 'statement',
--qualifiers = {},
--references = {},
}
end
return p
689y6r0u2as9ah81ibbp6zvm71mmg7q
Module:EditAtWikidata
828
3458
36673
2025-12-15T21:40:59Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Module to display an icon with a tooltip such as "Edit this at Wikidata" -- Icon will be linked to the Wikidata entry for the article where this is placed. -- This message is only displayed if a local_parameter is not supplied -- i.e. when called from a template, it can be coded not to display the message -- when a local parameter is in use, preventing the value form Wikidata being fetched. -- The qid of a Wikidata entry can optionally be suppl...'
36673
Scribunto
text/plain
-- Module to display an icon with a tooltip such as "Edit this at Wikidata"
-- Icon will be linked to the Wikidata entry for the article where this is placed.
-- This message is only displayed if a local_parameter is not supplied
-- i.e. when called from a template, it can be coded not to display the message
-- when a local parameter is in use, preventing the value form Wikidata being fetched.
-- The qid of a Wikidata entry can optionally be supplied for testing outside the article.
-- Usage:
-- {{#invoke:EditAtWikidata|showMessage|local_parameter}}
-- {{#invoke:EditAtWikidata|showMessage|qid=<ArticleID|local_parameter}}
local p = {}
local i18n =
{
["message"] = "Επεξεργασία στα Wikidata"
}
p.showMessage = function(frame)
-- There may be a local parameter supplied, if it's blank, set it to nil
local local_parm = mw.text.trim(frame.args[1] or "")
if local_parm and (#local_parm == 0) then local_parm = nil end
-- If there is a local parameter used, we don't want to display the message
if local_parm then return nil end
-- Can take a named parameter |qid which is the Wikidata ID for the article.
-- This will not normally be used except for testing outside the article.
local qid = frame.args.qid
if qid and (#qid == 0) then qid = nil end
-- The module can take a parameter pid=
-- which will create a link to that property in the Wikidata entry for the article
local propertyID = mw.text.trim(frame.args.pid or "")
-- Get the object containing all the claims for the article
local entity = mw.wikibase.getEntityObject(qid)
if entity then
local thisQid
if qid then thisQid = qid else thisQid = entity.id end
local icon
if propertyID then
icon = " [[File:Blue pencil.svg |frameless |text-top |10px |alt=" .. i18n.message .. " |link=https://www.wikidata.org/wiki/" .. thisQid .. "#" .. propertyID .. "|" .. i18n.message .. "]]"
else
icon = " [[File:Blue pencil.svg |frameless |text-top |10px |alt=" .. i18n.message .. " |link=https://www.wikidata.org/wiki/" .. thisQid .. "|" .. i18n.message .. "]]"
end
return icon
end
end
return p
hb84q7jds490oit8s4sanx1q8tip9vc
Module:Wikidata-n
828
3459
36674
2025-12-15T21:41:54Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- returns the page id (Q...) of the current page, or nil if the page is not connected to Wikidata local p = {} function p.pageId(frame) return mw.wikibase.getEntityIdForCurrentPage() end return p'
36674
Scribunto
text/plain
-- returns the page id (Q...) of the current page, or nil if the page is not connected to Wikidata
local p = {}
function p.pageId(frame)
return mw.wikibase.getEntityIdForCurrentPage()
end
return p
sker9xz1uw8rakd7rtjy7fceaen7v0j
Module:Wikidata/Formatters/quantity
828
3460
36675
2025-12-15T21:43:06Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local function formatUnit(entityId) local Formatters = require 'Module:Wikidata/Formatters' return Formatters.formatRawValue(entityId, 'wikibase-entityid', { label = 'unitsymbol' }) end function p.formatNumber(number) local integer, fractional local prefix = '' if number < 0 then number = -number prefix = '−' end number = tostring(number) if mw.ustring.find(...'
36675
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local function formatUnit(entityId)
local Formatters = require 'Module:Wikidata/Formatters'
return Formatters.formatRawValue(entityId, 'wikibase-entityid', { label = 'unitsymbol' })
end
function p.formatNumber(number)
local integer, fractional
local prefix = ''
if number < 0 then
number = -number
prefix = '−'
end
number = tostring(number)
if mw.ustring.find(number, '%.') then
integer, fractional = mw.ustring.match(number, '^(.+)%.(.+)$')
else
integer = number
end
local length = mw.ustring.len(integer)
local i = length % 3
if i == 0 then
i = 3
end
local formatted_num = mw.ustring.sub(integer, 1, i)
while i < length do
formatted_num = formatted_num .. '.' .. mw.ustring.sub(integer, i + 1, i + 3)
i = i + 3
end
if fractional then
local length = mw.ustring.len(fractional)
local i = 3
formatted_num = formatted_num .. ',' .. mw.ustring.sub(fractional, 1, 3)
while i < length do
formatted_num = formatted_num .. '' .. mw.ustring.sub(fractional, i + 1, i + 3)
i = i + 3
end
end
return prefix .. formatted_num
end
local function getUnitAndCoef(unit, options)
local entityId = lib.getItemIdFromURI(unit)
if not entityId or entityId == 'Q199' then
return nil, 1
end
local coef
if options.unit and entityId ~= options.unit then
local WD = require 'Module:Wikidata'
coef = WD.getRawValueFromLua{
id = entityId,
property = 'P2370',
withunit = options.unit,
limit = 1
} or WD.getRawValueFromLua{
id = entityId,
property = 'P2442',
withunit = options.unit,
limit = 1
}
if coef then
entityId = options.unit
end
end
return entityId, coef or 1
end
function p.getRawValue(value, options)
local _, coef = getUnitAndCoef(value.unit, options)
return tonumber(value.amount) * coef
end
function p.formatRawValue(value, options)
return p.formatNumber(value)
end
function p.formatValue(value, options)
local unit, coef = getUnitAndCoef(value.unit, options)
local amount = tonumber(value.amount) * coef
local rawamount = amount
local margin
if lib.IsOptionTrue(options, 'showmargin') then
if value.upperBound then
margin = tonumber(value.upperBound) * coef - amount
end
end
amount = p.formatNumber(amount)
if margin then
amount = amount .. '±' .. p.formatNumber(margin)
end
if tostring(options.showunit) ~= 'false' then
if unit then
mw.logObject(unit)
if unit == 'Q7727' then
return amount .. ' ' .. (tonumber(rawamount) > 1 and 'λεπτά' or 'λεπτό')
elseif unit == 'Q11570' then
return amount .. ' ' .. (tonumber(rawamount) > 1 and 'κιλά' or 'κιλό')
elseif unit == 'Q11573' then
return amount .. ' ' .. (tonumber(rawamount) > 1 and 'μέτρα' or 'μέτρο')
elseif unit == 'Q174728' then
return amount .. ' ' .. (tonumber(rawamount) > 1 and 'εκατοστά' or 'εκατοστό')
end
return amount .. ' ' .. formatUnit(unit) .. '[[Κατηγορίαν:Σελίδες που τραβάνε ετικέτες μονάδων μέτρησης με το Module:Wikidata]]'
end
end
return amount
end
return p
n1tnhyqc820466kda0w4r4x88b1p5t4
Module:Interface Wikidata
828
3461
36676
2025-12-15T21:44:02Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local d = require 'Module:Wikidata' -- fonctions ne pouvant être appelées que depuis un autre module p.fromLua = { -- manipulation d'une liste d'affirmations getClaims = d.getClaims, stringTable = d.stringTable, tableToText = d.tableToText, formatStatements = d.formatStatements, formatQualifiers = d.showQualifier, formatAndCat = d.formatAndCat, wikidataDate = d.wikidataDate, addLinkback = d.addLinkBack, addtrackingcat =...'
36676
Scribunto
text/plain
local p = {}
local d = require 'Module:Wikidata'
-- fonctions ne pouvant être appelées que depuis un autre module
p.fromLua = {
-- manipulation d'une liste d'affirmations
getClaims = d.getClaims,
stringTable = d.stringTable,
tableToText = d.tableToText,
formatStatements = d.formatStatements,
formatQualifiers = d.showQualifier,
formatAndCat = d.formatAndCat,
wikidataDate = d.wikidataDate,
addLinkback = d.addLinkBack,
addtrackingcat = d.addTrackingCat,
-- manipulation d'une affirmation individelle
getmainid = d.getMainId,
formatStatement = d.formatStatement,
statementDate = d.getFormattedDate, -- récupère la date des qualificatifs
getFormattedQualifiers = d.getFormattedQualifiers,
getQualifiers = d.getQualifiers,
getReferences = d.getReferences,
-- manipulation de snaks
getid = d.getId,
formatSnak = d.formatSnak,
-- utilisation de qids
getEntity = d.getEntity,
formatEntity = d.formatEntity,
getLink = d.siteLink,
getLabel = d.getLabel, --getLabel est plus simple que formatEntity
-- utilisation des propriétés transitives
isInstance = d.isInstance,
isSubclass = d.isSubclass,
addVals = d.addVals,
transitiveVals = d.transitiveVals,
inTransitiveVals = d.inTransitiveVals,
findVal = d.findVal,
-- gestion des dates
mainDate = d.mainDate,
getDate = d.getTheDate,
keyDate = d.keyDate,
-- Fonctions diverses
translate = d.translate,
Dump = d.Dump,
}
-- Fonctions frame pour usage depuis le Wikitexte (avec parfois des options pour gérer des données moins propres
local function cleanargs(args)
local newargs = {}
for k, v in pairs(args) do
if v ~= '' then
--[[ possibilité de passer des booléen, convertion des valeur "true", "false" en booleen lua
(sinon le module lua ne prend pas en compte "excludespecial"
qui est "true" par défaut et considère toute chaîne comme vraie)
--]]
if v == "true" then
newargs[k] = true
elseif v == "false" then
newargs[k] = false
else
newargs[k] = v
end
end
end
return newargs
end
function p.formatStatements( frame ) -- pour Modèle:Wikidata
local args = {}
if frame == mw.getCurrentFrame() then
args = cleanargs(frame.args) -- paramètres en dur du code de Modèle:Wikidata
for k, v in pairs(cleanargs(frame:getParent().args)) do
-- chargement des paramètres de l'appel au modèle,
-- pour permettre la surcharge des paramètres par défaut dans "Modèle:Wikidata"
args[k] = v
end
else
args = frame
end
if args.blockers and args.blockers ~= '' then return args.value end
return p.fromLua.formatStatements( args )
end
function p.addLinkBack( frame )
local args = cleanargs(frame.args)
if args[1] and args[1]:match"%S" then
return d.addLinkBack( '', args.entity, mw.text.trim( args[1] ) )
end
end
function p.formatEntity(frame)
local args = cleanargs(frame.args)
local entity = args.entity or args[1]
return d.formatEntity(entity, args)
end
function p.formatAndCat(frame)
local args = cleanargs(frame.args)
return d.formatAndCat(args)
end
function p.getLabel(frame)
local args = cleanargs(frame.args)
local item = args[1]
local lang = args[2] or "fr"
return d.getLabel(item, lang)
end
function p.mainDate(frame)
return d.mainDate(frame.args['entity'])
end
function p.Dump(frame)
return d.Dump(frame.args[1])
end
function p.formatQualifiers(frame)
local args = frame.args
return d.formatQualifiers(args)
end
function p.getDescription(frame) -- fonction simpliste, mais bon, les descriptions Wikidata, c'est pas non plus super utile
return mw.wikibase.description(frame.args[1])
end
function p.getLink(frame)
local args = frame.args
local link, proj, lang = p.fromLua.getLink(args[1], args[2], args[3])
return link
end
function p.translate(frame)
return d.translate(frame.args[1])
end
function p.findVal(frame)
local args = frame.args
return d.findVal(args.source, args.target, args.property, args.recursion, args.instancedepth)
end
function p.transitiveVals(frame)
local args = frame.args
return d.transitiveVals(args.item, args, args.maxdepth, args.maxnodes, args.stopval, true)
end
return p
ezl0yyww1hq9i2p4hemaq84m3iwftg1
Module:Wikidata/Outils
828
3462
36677
2025-12-15T21:45:00Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--Fonctions élémentaires de gestion des snaks Wikidata local p = {} p.i18n = require "Module:Wikidata/I18n" function p.snaktype(snak) return snak.snaktype end function p.isSpecial(snak) return (snak.snaktype ~= 'value') end function p.isValue(snak) return (snak.snaktype == 'value') end function p.getId(snak) if p.isValue(snak) then return 'Q' .. snak.datavalue.value['numeric-id'] end end function p.getMainId(claim) return p.getId(cl...'
36677
Scribunto
text/plain
--Fonctions élémentaires de gestion des snaks Wikidata
local p = {}
p.i18n = require "Module:Wikidata/I18n"
function p.snaktype(snak)
return snak.snaktype
end
function p.isSpecial(snak)
return (snak.snaktype ~= 'value')
end
function p.isValue(snak)
return (snak.snaktype == 'value')
end
function p.getId(snak)
if p.isValue(snak) then
return 'Q' .. snak.datavalue.value['numeric-id']
end
end
function p.getMainId(claim)
return p.getId(claim.mainsnak)
end
function p.EntityId(entity)
if type(entity) == 'string' then
return entity
end
return entity.id
end
function p.getValue(snak)
return snak.datavalue.value
end
function p.formatError( key )
return error(i18n[key] or key)
end
function p.addcat(cat, sortkey)
if sortkey then
return '[[Category:' .. cat .. '|' .. (sortkey or '') .. ']]'
end
return '[[Category:' .. cat .. ']]'
end
function p.getEntity( val )
if type(val) == 'table' then
return val
end
return mw.wikibase.getEntityObject(val)
end
function p.alreadyHere(searchset, val)
for i, j in pairs(searchset) do
if val == j then
return true
end
end
return false
end
-- add new values to a list, avoiding duplicates
function p.addnewvalues(old, new)
if not new then
return old
end
for _, j in pairs(new) do
if not p.alreadyHere(old, j) then
table.insert(old, j)
end
end
return old
end
return p
bad7i81ij7wi1aozrgvtaz7bads8x1p
Module:Wikidata/config
828
3463
36678
2025-12-15T21:47:15Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Property configuration for Wikidata module return { global = { separator = ', ', conjunction = ', ', }, presets = { ['catonly'] = { datatype = 'wikibase-item', conjunction = '', invisible = true, ['value-module'] = 'Wikidata/item', ['value-function'] = 'formatCategoryOnly', references = '', category = 'P910', }, ['country'] = { ['claim-module'] = 'Wikidata/Places', ['claim-function'] = 'formatCount...'
36678
Scribunto
text/plain
-- Property configuration for Wikidata module
return {
global = {
separator = ', ',
conjunction = ', ',
},
presets = {
['catonly'] = {
datatype = 'wikibase-item',
conjunction = '',
invisible = true,
['value-module'] = 'Wikidata/item',
['value-function'] = 'formatCategoryOnly',
references = '',
category = 'P910',
},
['country'] = {
['claim-module'] = 'Wikidata/Places',
['claim-function'] = 'formatCountryClaimWithFlag',
before = '<ul><li>',
separator = '</li><li>',
conjunction = '</li><li>',
after = '</li></ul>',
},
['from-to'] = {
['property-module'] = 'Wikidata/date',
['property-function'] = 'formatDateIntervalProperty',
},
['link'] = {
['value-module'] = 'Wikidata/link',
['value-function'] = 'fromModule',
},
['list'] = {
before = '<ul><li>',
separator = '</li><li>',
conjunction = '</li><li>',
after = '</li></ul>',
},
['name'] = {
monolingualLangTemplate = 'lang',
separator = '<br>',
conjunction = '<br>',
},
['place'] = {
['claim-module'] = 'Wikidata/Places',
['claim-function'] = 'formatPlaceWithQualifiers',
before = '<ul><li>',
separator = '</li><li>',
conjunction = '</li><li>',
after = '</li></ul>',
},
['quantity (date)'] = {
before = '<ul><li>',
separator = '</li><li>',
conjunction = '</li><li>',
after = '</li></ul>',
qualifier = 'P585',
},
},
datatypes = {
commonsMedia = {
limit = 1,
references = false,
size = '274x400px',
separator = '<br>',
conjunction = '<br>',
somevalue = '',
['value-module'] = 'Wikidata/media',
['value-function'] = 'formatCommonsMediaValue',
},
['external-id'] = {
references = false,
},
['globe-coordinate'] = {
limit = 1,
references = false,
},
url = {
separator = '<br>',
conjunction = '<br>',
references = false,
['value-module'] = 'Wikidata/url',
['value-function'] = 'formatUrlValue',
},
quantity = {
siConversion = true
}
},
properties = {
P6 = { datatype = 'wikibase-item', },
P17 = {
datatype = 'wikibase-item',
preset = 'country',
},
P18 = {
datatype = 'commonsMedia',
fixdouble = true,
},
P19 = {
datatype = 'wikibase-item',
preset = 'place',
separator = ',</li><li>',
conjunction = ' йа </li><li>',
},
P20 = {
datatype = 'wikibase-item',
preset = 'place',
separator = ',</li><li>',
conjunction = ' йа </li><li>',
},
P22 = {
datatype = 'wikibase-item',
conjunction = ' йа '
},
P25 = {
datatype = 'wikibase-item',
conjunction = ' йа '
},
P26 = { datatype = 'wikibase-item', },
P27 = {
datatype = 'wikibase-item',
preset = 'country',
},
P31 = {
datatype = 'wikibase-item',
references = false,
},
P37 = { datatype = 'wikibase-item', },
P39 = {
['claim-module'] = 'Wikidata/positions',
['claim-function'] = 'formatPositionClaim',
separator = '',
conjunction = '',
allowTables = true,
},
P40 = { datatype = 'wikibase-item', },
P41 = {
datatype = 'commonsMedia',
size = '150x200px',
},
P53 = {
datatype = 'wikibase-item',
category = 'P910',
},
P54 = {
category = 'P6112',
},
P57 = {
datatype = 'wikibase-item',
preset = 'list',
},
P58 = {
datatype = 'wikibase-item',
preset = 'list',
},
P59 = {
datatype = 'wikibase-item',
category = 'P910',
references = false,
},
P69 = {
datatype = 'wikibase-item',
preset = 'list',
category = 'P3876',
qualifier = 'P582',
},
P94 = {
datatype = 'commonsMedia',
size = '100x200px',
},
P86 = {
datatype = 'wikibase-item',
preset = 'list',
},
P101 = { datatype = 'wikibase-item', },
P102 = {
datatype = 'wikibase-item',
preset = 'list',
qualifier = 'P582',
category = 'P6365',
},
P103 = { datatype = 'wikibase-item', },
P106 = {
datatype = 'wikibase-item',
['claim-module'] = 'Wikidata/item',
['claim-function'] = 'formatEntityWithGenderClaim',
conjunction = ', ',
},
P108 = {
datatype = 'wikibase-item',
preset = 'list',
category = 'P4195',
},
P109 = {
datatype = 'commonsMedia',
size = '150x150px',
alt = 'Автографан сурт',
},
P117 = {
datatype = 'commonsMedia',
size = '290x300px',
alt = 'Химин структуран сурт',
},
P119 = {
datatype = 'wikibase-item',
preset = 'place',
thisLocationOnly = 'true',
},
P131 = { datatype = 'wikibase-item', },
P140 = {
datatype = 'wikibase-item',
},
P154 = {
size = '220x80px',
alt = 'Логотипан сурт',
},
P159 = {
preset = 'place',
},
P161 = {
preset = 'list',
},
P162 = {
preset = 'list',
},
P163 = { datatype = 'wikibase-item', },
P166 = {
datatype = 'wikibase-item',
['property-module'] = 'Wikidata/Medals',
['property-function'] = 'formatProperty',
['value-module'] = 'Wikidata/Medals',
['value-function'] = 'formatValue',
before = '<div style="text-align:justify">',
after = '</div>',
separator = ' ',
conjunction = ' ',
references = false,
allowTables = true,
},
P190 = { datatype = 'wikibase-item', },
P212 = {
preset = 'link',
},
P225 = {
preset = 'list',
['claim-module'] = 'Wikidata/Biology',
['claim-function'] = 'formatTaxonNameClaim',
},
P237 = { datatype = 'wikibase-item', },
P241 = { datatype = 'wikibase-item', },
P242 = {
datatype = 'commonsMedia',
size = '300x300px',
},
P247 = {
formatter = 'https://nssdc.gsfc.nasa.gov/nmc/spacecraft/display.action?id=$1',
},
P267 = {
preset = 'link',
},
P276 = {
preset = 'place',
},
P281 = { datatype = 'string', },
P286 = {
preset = 'list',
},
P296 = {
formatter = 'http://osm.sbin.ru/esr/esr:$1',
},
P301 = {
rawArticle = true,
},
P344 = {
preset = 'list',
},
P345 = {
preset = 'link',
},
P348 = {
preset = 'list',
['property-module'] = 'Wikidata/Software',
['property-function'] = 'formatVersionProperty',
},
P361 = { datatype = 'wikibase-item', },
P373 = {
datatype = 'string',
['value-module'] = 'Wikidata/media',
['value-function'] = 'formatCommonsCategory',
limit = 1,
},
P374 = { datatype = 'external-id', },
P395 = { datatype = 'string', },
P407 = { datatype = 'wikibase-item', },
P410 = { datatype = 'wikibase-item', },
P412 = {
datatype = 'wikibase-item',
category = 'P910',
},
P413 = {
datatype = 'wikibase-item',
['claim-module'] = 'Wikidata/item',
['claim-function'] = 'formatEntityWithGenderClaim',
conjunction = ', ',
category = 'P910',
},
P414 = {
['claim-module'] = 'Wikidata/item',
['claim-function'] = 'applyDefaultTemplate',
},
P421 = { datatype = 'wikibase-item', },
P473 = { datatype = 'string', },
P495 = {
preset = 'country',
},
P505 = {
preset = 'list',
},
P512 = {
datatype = 'wikibase-item',
['property-module'] = 'Wikidata/P512',
['property-function'] = 'formatAcademicDegree',
},
P527 = {
preset = 'list',
},
P528 = {
references = false,
qualifier = 'P972',
},
P551 = {
preset = 'place',
},
P569 = {
datatype = 'time',
['claim-module'] = 'Wikidata/date',
['claim-function'] = 'formatDateOfBirthClaim',
},
P570 = {
datatype = 'time',
['claim-module'] = 'Wikidata/date',
['claim-function'] = 'formatDateOfDeathClaim',
},
P571 = { datatype = 'time', },
P576 = { datatype = 'time', },
P598 = { datatype = 'wikibase-item', },
P607 = {
datatype = 'wikibase-item',
preset = 'list',
},
P625 = { datatype = 'globe-coordinate', },
P669 = {
qualifier = 'P670',
},
P685 = {
formatter = 'https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info&id=$1',
},
P721 = {
preset = 'link',
},
P764 = {
preset = 'link',
},
P803 = { datatype = 'wikibase-item', },
P856 = { datatype = 'url', },
P881 = {
novalue = 'нет',
category = 'P910',
},
P884 = {
preset = 'link',
},
P915 = {
category = 'P1740',
},
P957 = {
preset = 'link',
},
P972 = {
preset = 'catonly',
},
P1077 = {
preset = 'link',
},
P1082 = {
datatype = 'quantity',
preset = 'quantity (date)',
unit = 'стаг',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator'
},
P1098 = {
datatype = 'quantity',
preset = 'quantity (date)',
unit = 'стаг',
},
P1120 = {
datatype = 'quantity',
preset = 'quantity (date)',
unit = 'стаг',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator'
},
P1128 = {
datatype = 'quantity',
preset = 'quantity (date)',
unit = 'стаг',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator'
},
P1114 = {
datatype = 'quantity',
qualifier = 'P585',
},
P1174 = {
datatype = 'quantity',
preset = 'quantity (date)',
unit = 'стаг',
},
P1195 = {
['value-module'] = 'Wikidata/Software',
['value-function'] = 'formatExtension',
conjunction = ' йа ',
},
P1215 = {
datatype = 'quantity',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatVisualMagnitude'
},
P1246 = {
preset = 'link',
},
P1249 = { datatype = 'time', },
P1376 = { datatype = 'wikibase-item', },
P1402 = {
preset = 'link',
},
P1448 = {
datatype = 'monolingualtext',
preset = 'name',
},
P1458 = {
datatype = 'quantity',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatColorIndex'
},
P1464 = { datatype = 'wikibase-item', },
P1476 = {
preset = 'name',
},
P1477 = {
datatype = 'monolingualtext',
preset = 'name',
},
P1532 = {
preset = 'country',
rank = '[rank:normal, rank:preferred]',
},
P1543 = {
datatype = 'commonsMedia',
},
P1559 = {
datatype = 'monolingualtext',
preset = 'name',
},
P1603 = {
datatype = 'quantity',
preset = 'quantity (date)',
unit = 'стаг',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator'
},
P1621 = {
size = '300x300px',
},
P1692 = {
preset = 'link',
},
P1705 = {
datatype = 'monolingualtext',
preset = 'name',
},
P1753 = {
rowArticle = true,
},
P1809 = {
preset = 'list',
},
P1846 = {
datatype = 'commonsMedia',
fixdouble = true,
},
P2031 = {
preset = 'from-to',
to = 'P2032',
within = 'P570',
},
P2043 = {
datatype = 'quantity',
preset = 'quantity (date)',
},
P2044 = { datatype = 'quantity', },
P2046 = {
datatype = 'quantity',
preset = 'quantity (date)',
siConversion = false,
},
P2047 = {
siConversion = false,
},
P2048 = {
conjunction = ' или ',
},
P2060 = {
siConversion = false,
},
P2097 = {
siConversion = false,
},
P2120 = {
siConversion = false,
},
P2137 = {
preset = 'quantity (date)',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator',
countByThousands = true,
},
P2139 = {
preset = 'quantity (date)',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator',
countByThousands = true,
},
P2146 = {
siConversion = false,
},
P2214 = {
siConversion = false
},
P2226 = {
preset = 'quantity (date)',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator',
countByThousands = true,
},
P2257 = {
siConversion = false
},
P2295 = {
preset = 'quantity (date)',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator',
countByThousands = true,
},
P2324 = {
datatype = 'quantity',
preset = 'quantity (date)',
unit = 'стаг'
},
P2403 = {
preset = 'quantity (date)',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator',
countByThousands = true,
},
P2425 = {
alt = 'Орденан планкин сурт',
},
P2583 = {
siConversion = false,
},
P2597 = {
preset = 'catonly',
},
P2650 = { datatype = 'wikibase-item', },
P2789 = {
preset = 'list',
},
P2896 = {
siConversion = false,
},
P2910 = {
size = '100x80px',
},
P3083 = {
formatter = 'http://simbad.u-strasbg.fr/simbad/sim-id?Ident=$1',
},
P3086 = {
siConversion = false,
},
P3362 = {
preset = 'quantity (date)',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator',
countByThousands = true,
},
P4614 = {
category = 'P1200',
},
P5348 = {
siConversion = false,
},
P6257 = {
['value-module'] = 'Wikidata/number',
['value-function'] = 'formatRA',
},
P6258 = {
['value-module'] = 'Wikidata/number',
['value-function'] = 'formatDMS',
},
P6259 = {
['references'] = false,
},
P7584 = {
siConversion = false,
},
P8010 = {
datatype = 'quantity',
preset = 'quantity (date)',
unit = 'стаг',
['property-module'] = 'Wikidata/number',
['property-function'] = 'formatPropertyWithMostRecentClaimAndIndicator'
},
P8224 = {
alt = 'Молекуляран моделин сурт',
},
},
categories = {
['links-to-entities-with-missing-label'] = 'Википеди:Викихаамаш чохь элементаш тӀе куьг доцу хьажоргаш йолу йаззамаш',
['links-to-entities-with-wikibase-error'] = 'Википеди:Викихаамаш лелош йолу скриптийн гӀалаташ долу агӀонаш',
['links-to-entities-with-missing-local-language-label'] = 'Википеди:Викихаамаш чохь элементаш тӀе нохчийн куьг доцу хьажоргаш йолу йаззамаш',
['media-contains-local-caption'] = 'Википеди:Викихаамашкара суьртан локалан куьг',
['media-contains-markup'] = 'Википеди:Суьртийн кепан вики-билгало йолу йаззамаш',
['media-contains-local-double'] = 'Википеди:Йаззман чохь а, кепан тӀехь а цхьатерра суьрташ долу йаззамаш',
['value-contains-table'] = 'Википеди:Кеп тӀехь таблицин диллар долу йаззамаш',
},
errors = {
['property-param-not-provided'] = 'Башхаллин параметр ца йелла',
['entity-not-found'] = 'МаьӀна ца карийна.',
['unknown-claim-type'] = 'ДӀахьедаран тайпа ца девза.',
['unknown-snak-type'] = 'Снэкан тайпа ца девза.',
['unknown-datavalue-type'] = 'Хаамийн маьӀнин тайпа ца девза.',
['unknown-entity-type'] = 'МаьӀнийн тайпа ца девза.',
['unknown-property-module'] = 'Аша хӀотто йеза property-module а, property-function а.',
['unknown-claim-module'] = 'Аша хӀотто йеза claim-module а, claim-function а.',
['unknown-value-module'] = 'Аша хӀотто йеза value-module а, value-function а.',
['property-module-not-found'] = 'МаьӀна гойту модуль ца карийна',
['property-function-not-found'] = 'МаьӀна гойту функци ца карийна',
['claim-module-not-found'] = 'ЧӀагӀдар гойту модуль ца карийна.',
['claim-function-not-found'] = 'ЧӀагӀдар гойту функци ца карийна.',
['value-module-not-found'] = 'МаьӀна гойту модуль ца карийна.',
['value-function-not-found'] = 'МаьӀна гойту функци ца карийна.',
},
i18n = {
somevalue = "''хууш дац''",
novalue = '',
-- Хьостан хьал
Q5727902 = 'гергга ',
Q18122778 = '<span style="border-bottom: 1px dotted; cursor: help;" title="тарлун">тардол.</span> ',
Q30230067 = 'тарло ',
Q52834024 = '<span style="border-bottom: 1px dotted; cursor: help;" title="кӀезга"><</span> ',
Q54418095 = '<span style="border-bottom: 1px dotted; cursor: help;" title="сов">></span> ',
thousandPowers = {'', ' эз.', ' млн', ' млрд', ' трлн'},
},
deprecatedSources = {
Q36578 = true, -- Gemeinsame Normdatei
Q63056 = true, -- Find a Grave
Q212256 = true, -- АиФ
Q523660 = true, -- International Music Score Library Project by https://ru.wikipedia.org/?diff=107090748
Q1798125 = true, -- LIBRIS
Q15222191 = true, -- BNF
Q15241312 = true, -- Freebase
Q25328680 = true, -- Prabook
Q29861311 = true, -- SNAC
Q86999151 = true, -- WeChangEd
},
};
7vywkkc02bayvz6c99z65wwoevkea71
Module:Wikidata/citeold
828
3464
36679
2025-12-15T21:50:14Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local Wikidata = require 'Module:WikidataOld' p.props = { accessdate = { 'P813' }, archivedate = { 'P2960' }, archiveurl = { 'P1065' }, author = { 'P50' }, date = { 'P577' }, editor = { 'P90' }, ilustration = { 'P110' }, lang = { 'P364', 'P407' }, pages = { 'P304' }, place = { 'P291' }, publisher = { 'P123' }, title = { 'P1476' }, type = { 'P31' }, url = { 'P854', 'P953' }, work = { 'P248' }, } loc...'
36679
Scribunto
text/plain
--require "strict"
local p = {}
local Wikidata = require 'Module:WikidataOld'
p.props = {
accessdate = { 'P813' },
archivedate = { 'P2960' },
archiveurl = { 'P1065' },
author = { 'P50' },
date = { 'P577' },
editor = { 'P90' },
ilustration = { 'P110' },
lang = { 'P364', 'P407' },
pages = { 'P304' },
place = { 'P291' },
publisher = { 'P123' },
title = { 'P1476' },
type = { 'P31' },
url = { 'P854', 'P953' },
work = { 'P248' },
}
local function dataToContent(data)
local content = {}
if data.author then
local authors = {}
for _, snak in ipairs(data.author) do
table.insert(authors, Wikidata.getDatavalue(snak, { link = 'wikipedia' }))
end
table.insert(content, table.concat(authors, ', ') .. ':')
end
if data.title then
local title = Wikidata.getDatavalue(data.title[1], {})
if data.archiveurl then
title = Wikidata.getDatavalue(data.archiveurl[1], { displayformat = 'weblink', showntext = '«' .. title .. '»' }) .. '.'
elseif data.url then
title = Wikidata.getDatavalue(data.url[1], { displayformat = 'weblink', showntext = '«' .. title .. '»' }) .. '.'
elseif data.work then
local function displayformat(snak, params)
local id = snak.datavalue.value.id
return '[[' .. (mw.wikibase.sitelink(id) or ('d:' .. id)) .. '|«' .. title .. '»]]'
end
title = Wikidata.getDatavalue(data.work[1], { displayformat = displayformat })
end
table.insert(content, title)
end
if data.lang then
local langs = {}
local displayformat = function(snak, params)
local id = snak.datavalue.value.id
return mw.wikibase.label(id)
end
for _, lang in ipairs(data.lang) do
table.insert(langs, Wikidata.getDatavalue(lang, { link = 'wikipedia' }))
end
table.insert(content, '(' .. table.concat(langs, ', ') .. ')')
end
if data.work and (not data.title or data.archiveurl or data.url) then
local title = Wikidata.getDatavalue(data.work[1], { link = 'wikipedia' })
table.insert(content, mw.ustring.format("''%s''.", title))
end
if data.publisher then
local publishers = {}
for _, snak in ipairs(data.publisher) do
table.insert(publishers, Wikidata.getDatavalue(snak, { link = 'wikipedia' }))
end
table.insert(content, table.concat(publishers, ', ') .. '.')
end
if data.place then
local places = {}
for _, snak in ipairs(data.place) do
table.insert(places, Wikidata.getDatavalue(snak, { link = 'wikipedia' }))
end
table.insert(content, table.concat(places, ', ') .. '.')
end
if data.date then
local date = Wikidata.getDatavalue(data.date[1], { type = 'dateobject' }) .. '.'
table.insert(content, date)
end
if not data.title and data.url then
local url = Wikidata.getDatavalue(data.url[1], { displayformat = 'weblink' }) .. '.'
table.insert(content, url)
elseif data.external then
local url = Wikidata.getDatavalue(data.external[1], {
urlpattern = p._formatStatements{ id = data.external[1].property, property = 'P1630', displayformat = 'raw' }
}) .. '.'
table.insert(content, url)
end
if data.archivedate and data.url and data.archiveurl then
local url = Wikidata.getDatavalue(data.url[1], { displayformat = 'weblink', showntext = 'το πρωτότυπο' })
local date = Wikidata.getDatavalue(data.archivedate[1], { type = 'dateobject' })
table.insert(content, mw.ustring.format('Αρχειοθετήθηκε από %s στις %s.', url, date))
end
if data.accessdate then
local date = Wikidata.getDatavalue(data.accessdate[1], { type = 'dateobject' })
table.insert(content, mw.ustring.format('Ανακτήθηκε στις %s.', date))
end
return table.concat(content, ' ')
end
local function dataFromItem(id, data)
local entity = mw.wikibase.getEntity(id)
if entity and entity.claims then
for key, props in pairs(p.props) do
if not data[key] then
data[key] = {}
for _, prop in ipairs(props) do
if entity.claims[prop] then
for _, statement in ipairs(entity.claims[prop]) do
if statement.mainsnak.snaktype == 'value' then
table.insert(data[key], statement.mainsnak)
end
end
end
if #data[key] > 0 then
break
end
end
if #data[key] == 0 then
data[key] = nil
end
end
end
end
end
function p.formatReferences(references, options)
local frame = mw.getCurrentFrame()
local valid_refs = {}
local limit = tonumber(options.max_ref)
for _, ref in ipairs(references) do
local data = {}
for key, props in pairs(p.props) do
data[key] = {}
for _, prop in ipairs(props) do
if ref.snaks[prop] then
for _, snak in ipairs(ref.snaks[prop]) do
if snak.snaktype == 'value' then
table.insert(data[key], snak)
end
end
end
if #data[key] > 0 then
break
end
end
if #data[key] == 0 then
data[key] = nil
end
end
for prop, snaks in pairs(ref.snaks) do
if snaks[1].datatype == 'external-id' or prop == 'P627' then --fixme
data.external = { snaks[1] }
break
end
end
if data.work then -- P248
local id = Wikidata.getRawvalue(data.work[1])
dataFromItem(id, data)
end
local ref_content = dataToContent(data)
if ref_content ~= '' then
table.insert(valid_refs, frame:extensionTag('ref', ref_content, { name = ref.hash }))
end
if limit and #valid_refs == limit then
break
end
end
return table.concat(valid_refs)
end
return p
263on7bl6v30n1eqlyklv7y9sd0jgkm
Module:Wikidata/citetest
828
3465
36680
2025-12-15T21:51:02Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require 'strict' local p = {} local Wikidata = require 'Module:Wikidata' p.props = { accessdate = { 'P813' }, archivedate = { 'P2960' }, archiveurl = { 'P1065' }, author = { 'P50' }, date = { 'P577' }, editor = { 'P90' }, ilustration = { 'P110' }, lang = { 'P364', 'P407' }, pages = { 'P304' }, place = { 'P291' }, publisher = { 'P123' }, title = { 'P1476' }, type = { 'P31' }, url = { 'P854', 'P953' }, work = { 'P248' }, } local...'
36680
Scribunto
text/plain
--require 'strict'
local p = {}
local Wikidata = require 'Module:Wikidata'
p.props = {
accessdate = { 'P813' },
archivedate = { 'P2960' },
archiveurl = { 'P1065' },
author = { 'P50' },
date = { 'P577' },
editor = { 'P90' },
ilustration = { 'P110' },
lang = { 'P364', 'P407' },
pages = { 'P304' },
place = { 'P291' },
publisher = { 'P123' },
title = { 'P1476' },
type = { 'P31' },
url = { 'P854', 'P953' },
work = { 'P248' },
}
local function dataToContent(data)
local content = {}
if data.author then
local authors = {}
for _, snak in ipairs(data.author) do
table.insert(authors, Wikidata.getDatavalue(snak, { link = 'wikipedia' }))
end
table.insert(content, table.concat(authors, ', ') .. ':')
end
if data.title then
local title = Wikidata.getDatavalue(data.title[1], {})
if data.archiveurl then
title = Wikidata.getDatavalue(data.archiveurl[1], { displayformat = 'weblink', showntext = '«' .. title .. '»' }) .. '.'
elseif data.url then
title = Wikidata.getDatavalue(data.url[1], { displayformat = 'weblink', showntext = '«' .. title .. '»' }) .. '.'
elseif data.work then
local function displayformat(snak, params)
local id = snak.datavalue.value.id
return '[[' .. (mw.wikibase.sitelink(id) or ('d:' .. id)) .. '|«' .. title .. '»]]'
end
title = Wikidata.getDatavalue(data.work[1], { displayformat = displayformat })
end
table.insert(content, title)
end
if data.lang then
local langs = {}
local displayformat = function(snak, params)
local id = snak.datavalue.value.id
return mw.wikibase.label(id)
end
for _, lang in ipairs(data.lang) do
table.insert(langs, Wikidata.getDatavalue(lang, { link = 'wikipedia' }))
end
table.insert(content, '(' .. table.concat(langs, ', ') .. ')')
end
if data.work and (not data.title or data.archiveurl or data.url) then
local title = Wikidata.getDatavalue(data.work[1], { link = 'wikipedia' })
table.insert(content, mw.ustring.format("''%s''.", title))
end
if data.publisher then
local publishers = {}
for _, snak in ipairs(data.publisher) do
table.insert(publishers, Wikidata.getDatavalue(snak, { link = 'wikipedia' }))
end
table.insert(content, table.concat(publishers, ', ') .. '.')
end
if data.place then
local places = {}
for _, snak in ipairs(data.place) do
table.insert(places, Wikidata.getDatavalue(snak, { link = 'wikipedia' }))
end
table.insert(content, table.concat(places, ', ') .. '.')
end
if data.date then
local date = Wikidata.getDatavalue(data.date[1], { type = 'dateobject' }) .. '.'
table.insert(content, date)
end
if not data.title and data.url then
local url = Wikidata.getDatavalue(data.url[1], { displayformat = 'weblink' }) .. '.'
table.insert(content, url)
elseif data.external then
local url = Wikidata.getDatavalue(data.external[1], {
urlpattern = p._formatStatements{ id = data.external[1].property, property = 'P1630', displayformat = 'raw' }
}) .. '.'
table.insert(content, url)
end
if data.archivedate and data.url and data.archiveurl then
local url = Wikidata.getDatavalue(data.url[1], { displayformat = 'weblink', showntext = 'το πρωτότυπο' })
local date = Wikidata.getDatavalue(data.archivedate[1], { type = 'dateobject' })
table.insert(content, mw.ustring.format('Αρχειοθετήθηκε από %s στις %s.', url, date))
end
if data.accessdate then
local date = Wikidata.getDatavalue(data.accessdate[1], { type = 'dateobject' })
table.insert(content, mw.ustring.format('Ανακτήθηκε στις %s.', date))
end
return table.concat(content, ' ')
end
local function dataFromItem(id, data)
local entity = mw.wikibase.getEntity(id)
if entity and entity.claims then
for key, props in pairs(p.props) do
if not data[key] then
data[key] = {}
for _, prop in ipairs(props) do
if entity.claims[prop] then
for _, statement in ipairs(entity.claims[prop]) do
if statement.mainsnak.snaktype == 'value' then
table.insert(data[key], statement.mainsnak)
end
end
end
if #data[key] > 0 then
break
end
end
if #data[key] == 0 then
data[key] = nil
end
end
end
end
end
function p.formatReferences(references, options)
local frame = mw.getCurrentFrame()
local valid_refs = {}
local limit = tonumber(options.max_ref)
for _, ref in ipairs(references) do
local data = {}
for key, props in pairs(p.props) do
data[key] = {}
for _, prop in ipairs(props) do
if ref.snaks[prop] then
for _, snak in ipairs(ref.snaks[prop]) do
if snak.snaktype == 'value' then
table.insert(data[key], snak)
end
end
end
if #data[key] > 0 then
break
end
end
if #data[key] == 0 then
data[key] = nil
end
end
for prop, snaks in pairs(ref.snaks) do
if snaks[1].datatype == 'external-id' or prop == 'P627' then --fixme
data.external = { snaks[1] }
break
end
end
if data.work then -- P248
local id = Wikidata.getRawvalue(data.work[1])
dataFromItem(id, data)
end
local ref_content = dataToContent(data)
if ref_content ~= '' then
table.insert(valid_refs, frame:extensionTag('ref', ref_content, { name = ref.hash }))
end
if limit and #valid_refs == limit then
break
end
end
return table.concat(valid_refs)
end
return p
4sxqku2jqfbnnvomsuoeocnlrdqwcrd
Module:NUMBEROF
828
3466
36681
2025-12-15T21:54:38Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local aliases = { wikidata = 'www.wikidata', meta = 'meta.wikimedia', commons = 'commons.wikimedia', foundation = 'foundation.wikimedia', wikimania = 'wikimania.wikimedia', wikitech = 'wikitech.wikimedia', } local function trimArg(arg, i) arg = mw.text.trim(arg or '') if arg == '' then if i then error('Parameter ' .. i .. ' is missing. See template documentation') end return nil end return mw.ustring.lower(arg) end local functi...'
36681
Scribunto
text/plain
local aliases = {
wikidata = 'www.wikidata',
meta = 'meta.wikimedia',
commons = 'commons.wikimedia',
foundation = 'foundation.wikimedia',
wikimania = 'wikimania.wikimedia',
wikitech = 'wikitech.wikimedia',
}
local function trimArg(arg, i)
arg = mw.text.trim(arg or '')
if arg == '' then
if i then
error('Parameter ' .. i .. ' is missing. See template documentation')
end
return nil
end
return mw.ustring.lower(arg)
end
local function getValue(stats, action, map)
if action == 'depth' then
-- https://meta.wikimedia.org/wiki/Wikipedia_article_depth
-- This gives silly results if, for example, the number of articles is small.
local n = { 'articles', 'edits', 'pages' }
if map then
for i, v in ipairs(n) do
n[i] = map[v]
end
end
for i, v in ipairs(n) do
n[i] = stats[v] or 0
end
local articles, edits, pages = n[1], n[2], n[3]
if pages == 0 or articles == 0 then
return 0
end
return math.floor((edits/pages) * ((pages - articles)/articles)^2)
end
if map then
action = map[action]
end
return stats[action]
end
local function getIfLocal(site, action)
-- If wanted site is the local site where module is running,
-- return numberof result for given action, or nil.
-- This is faster than reading the cached table, and gives the current value.
local localSite = string.match(mw.site.server, '.*//(.*)%.org$') -- examples: 'af.wikipedia', 'commons.wikimedia'
if site == localSite then
if action == 'activeusers' then
action = 'activeUsers'
end
return getValue(mw.site.stats, action)
end
end
local function main(frame)
local metaWords = { active = true, closed = true, languages = true, }
local args = frame:getParent().args
local action = trimArg(args[1], 1) -- activeusers, admins, articles, edits, files, pages, users, depth, active, closed, languages
if action:sub(1, 8) == 'numberof' then -- numberofX is an alias for X
action = trimArg(action:sub(9), 1)
end
local wantMeta = metaWords[action]
local site = trimArg(args[2], 2)
site = aliases[site] or site
if not wantMeta and not site:find('.', 1, true) then
-- site is like "af" or "af.wikipedia" or "af.wikiquote" etc., including "total"
site = site .. '.wikipedia'
end
local wantComma = trimArg(args[3]) -- nil for no commas in output; "N" or anything nonblank inserts commas
local result
if wantMeta then
local data = mw.loadData('Module:NUMBEROF/meta')
local nrActive = data.nrActive[site]
local nrClosed = data.nrClosed[site]
if nrActive or nrClosed then
-- If either is set, site is valid but there may not be an entry for both active and closed.
nrActive = nrActive or 0
nrClosed = nrClosed or 0
if action == 'active' then
result = nrActive
elseif action == 'closed' then
result = nrClosed
elseif action == 'languages' then
result = nrActive + nrClosed
end
end
else
result = getIfLocal(site, action)
if not result then
local data = mw.loadData('Module:NUMBEROF/data')
local map = data.map
data = data.data
result = data[site]
if result then
result = getValue(result, action, map)
end
end
end
if result then
if wantComma then
result = mw.language.getContentLanguage():formatNum(result)
end
return result -- number or formatted string
end
return -1
end
local function rank(frame)
-- Rank sites in a specified sister project by their number of articles.
local args = frame:getParent().args
local parm = trimArg(args[1], 1) -- a number like 12 or a site name like "af" (not "af.wikipedia")
local base = trimArg(args[2]) or 'wikipedia' -- base of full site name like "wikipedia" or "wikiquote"
local wantComma = trimArg(args[3])
local data = mw.loadData('Module:NUMBEROF/' .. (base == 'wikipedia' and 'rank' or 'other'))
data = data[base]
if data then
local result
parm = tonumber(parm) or parm
if type(parm) == 'number' then
result = data.rankByIndex[parm]
else
result = data.rankBySite[parm]
if result and wantComma then
result = mw.getContentLanguage():formatNum(result)
end
end
if result then
return result -- number or string
end
end
return -1
end
return {
main = main,
rank = rank,
}
b7kq2q6w2u9d3c5xfmmytwdls32ce7y
Module:Citation/CS1/Configuration
828
3467
36682
2025-12-15T22:02:00Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με ' local citation_config = {}; -- override <code>...</code> styling to remove color, border, and padding. <code> css is specified here: -- https://git.wikimedia.org/blob/mediawiki%2Fcore.git/69cd73811f7aadd093050dbf20ed70ef0b42a713/skins%2Fcommon%2FcommonElements.css#L199 local code_style="color:inherit; border:inherit; padding:inherit;"; --[[--------------------------< U N C A T E G O R I Z E D _ N A M E S P A C E S >-----------------------------...'
36682
Scribunto
text/plain
local citation_config = {};
-- override <code>...</code> styling to remove color, border, and padding. <code> css is specified here:
-- https://git.wikimedia.org/blob/mediawiki%2Fcore.git/69cd73811f7aadd093050dbf20ed70ef0b42a713/skins%2Fcommon%2FcommonElements.css#L199
local code_style="color:inherit; border:inherit; padding:inherit;";
--[[--------------------------< U N C A T E G O R I Z E D _ N A M E S P A C E S >------------------------------
List of namespaces that should not be included in citation error categories. Same as setting notracking = true by default
Note: Namespace names should use underscores instead of spaces.
]]
local uncategorized_namespaces = { 'Χρήστης', 'Συζήτηση', 'Συζήτηση_χρήστη', 'Συζήτηση_Βικιπαίδειας', 'Συζήτηση_αρχείο', 'Συζήτηση_προτύπου', 'Help_talk', 'Category_talk', 'Portal_talk', 'Book_talk', 'Education_Program_talk', 'Module_talk', 'MediaWiki_talk' };
local uncategorized_subpages = {'/[Ss]andbox', '/[Tt]estcases', '/[Ππ]ρόχειρο', '/[Αα]μμοδοχείο'}; -- list of Lua patterns found in page names of pages we should not categorize
--[[--------------------------< M E S S A G E S >--------------------------------------------------------------
Translation table
The following contains fixed text that may be output as part of a citation.
This is separated from the main body to aid in future translations of this
module.
]]
local messages = {
['agency'] = '$1 $2', -- $1 is sepc, $2 is agency
['archived-dead'] = 'Αρχειοθετήθηκε $1 στις $2',
['archived-live'] = '$1 από το πρωτότυπο στις $2',
['archived-missing'] = 'Αρχειοθετήθηκε από το πρωτότυπο$1 στις $2',
['archived'] = 'Αρχειοθετήθηκε',
['by'] = 'By', -- contributions to authored works: introduction, foreword, afterword
['cartography'] = 'Χαρτογράφηση από $1',
['editor'] = 'επιμ.',
['editors'] = 'επιμ.',
['edition'] = '($1 έκδοση)',
['episode'] = 'Επεισόδιο $1',
['et al'] = 'και άλλοι.',
['in'] = 'Στο:', -- edited works
['inactive'] = 'inactive',
['inset'] = '$1 inset',
['interview'] = 'Συνέντευξη με $1',
['lay summary'] = 'Lay summary',
['newsgroup'] = '[[Usenet newsgroup|Newsgroup]]: $1',
['original'] = 'από το πρωτότυπο',
['published'] = ' (δημοσιεύτηκε $1)',
['retrieved'] = 'Ανακτήθηκε στις $1',
['season'] = 'Σεζόν $1',
['section'] = '§ $1',
['sections'] = '§§ $1',
['series'] = 'Series $1',
['translated'] = 'Μτφρ. $1',
['type'] = ' ($1)', -- for titletype
['written'] = 'Written at $1',
['vol'] = '$1 Vol. $2', -- $1 is sepc; bold journal style volume is in presentation{}
['vol-no'] = '$1 Vol. $2 no. $3', -- sepc, volume, issue
['issue'] = '$1 No. $2', -- $1 is sepc
['j-vol'] = '$1 $2', -- sepc, volume; bold journal volume is in presentation{}
['j-issue'] = ' ($1)',
['nopp'] = '$1 $2'; -- page(s) without prefix; $1 is sepc
['p-prefix'] = "$1 σελ. $2", -- $1 is sepc
['pp-prefix'] = "$1 σελίδες $2", -- $1 is sepc
['j-page(s)'] = ': $1', -- same for page and pages
['sheet'] = '$1 Sheet $2', -- $1 is sepc
['sheets'] = '$1 Sheets $2', -- $1 is sepc
['j-sheet'] = ': Sheet $1',
['j-sheets'] = ': Sheets $1',
['subscription'] = '<span style="font-size:90%; color:#555">(Απαιτείται συνδρομή (<span title="Ο ιστότοπος απαιτεί συνδρομή επί πληρωμή για πρόσβαση σε αυτή τη σελίδα." style="border-bottom:1px dotted;cursor:help">help</span>))</span>' ..
'[[Κατηγορία:Σελίδες που περιλαμβάνουν συνδέσμους σε συνδρομητικό περιεχόμενο]]',
['registration']='<span style="font-size:90%; color:#555">(Απαιτείται εγγραφή (<span title="Ο ιστότοπος απαιτεί εγγραφή για πρόσβαση σε αυτή τη σελίδα." style="border-bottom:1px dotted;cursor:help">help</span>))</span>' ..
'[[Κατηγορία:Σελίδες που περιλαμβάνουν πηγές ή παραπομπές με συνδέσμους σε σελίδες που απαιτούν εγγραφή]]',
['language'] = '(στα $1)',
['via'] = " – μέσω $1",
['event'] = 'Συμβαίνει στα',
['minutes'] = 'λεπτά σε',
['parameter-separator'] = ', ',
['parameter-final-separator'] = ' και ',
['parameter-pair-separator'] = ' και ',
-- Determines the location of the help page
['help page link'] = 'Βοήθεια:Σφάλματα παραπομπών CS1',
['help page label'] = 'βοήθεια',
-- Internal errors (should only occur if configuration is bad)
['undefined_error'] = 'Called with an undefined error condition',
['unknown_manual_ID'] = 'Unrecognized manual ID mode',
['unknown_ID_mode'] = 'Unrecognized ID mode',
['unknown_argument_map'] = 'Argument map not defined for this variable',
['bare_url_no_origin'] = 'Bare url found but origin indicator is nil or empty',
}
--[[--------------------------< P R E S E N T A T I O N >------------------------------------------------------
Fixed presentation markup. Originally part of citation_config.messages it has been moved into its own, more semantically
correct place.
]]
local presentation =
{
-- Error output
-- .error class is specified at https://git.wikimedia.org/blob/mediawiki%2Fcore.git/9553bd02a5595da05c184f7521721fb1b79b3935/skins%2Fcommon%2Fshared.css#L538
-- .citation-comment class is specified at Help:CS1_errors#Controlling_error_message_display
['hidden-error'] = '<span style="display:none;font-size:100%" class="error citation-comment">$1</span>',
['visible-error'] = '<span style="font-size:100%" class="error citation-comment">$1</span>',
['accessdate'] = '<span class="reference-accessdate">$1$2</span>', -- to allow editors to hide accessdate using personal css
['bdi'] = '<bdi$1>$2</bdi>', -- bidirectional isolation used with |script-title= and the like
['cite'] = '<cite class="$1">$2</cite>'; -- |ref= not set so no id="..." attribute
['cite-id'] = '<cite id="$1" class="$2">$3</cite>'; -- for use when |ref= is set
['format'] = ' <span style="font-size:85%;">($1)</span>', -- for |format=, |chapter-format=, etc
-- various access levels, for |access=, |doi-access=, |arxiv=, ...
-- narrow no-break space   may work better than nowrap css. Or not? browser support?
['access-signal'] = '<span class="plainlinks">$1 $2</span>', -- external link with appropriate lock icon
['free'] = '[[File:Lock-green.svg|9px|link=|alt=Ελεύθερα προσβάσιμο|Ελεύθερα προσβάσιμο]]',
['registration'] = '[[File:Lock-blue-alt-2.svg|9px|link=|alt=Απαιτείται δωρεάν εγγραφή|Απαιτείται δωρεάν εγγραφή]]',
['limited'] = '[[File:Lock-gray-alt-2.svg|9px|link=|alt=Δωρεάν πρόσβαση υπoκείμενη σε περιορισμένη δοκιμή, συνήθως απαιτείται συνδρομή|Δωρεάν πρόσβαση υπoκείμενη σε περιορισμένη δοκιμή, συνήθως απαιτείται συνδρομή]]',
['subscription'] = '[[File:Lock-red-alt-2.svg|9px|link=|alt=Απαιτείται συνδρομή επί πληρωμή|Απαιτείται συνδρομή επί πληρωμή]]',
['italic-title'] = "''$1''",
['kern-left'] = '<span style="padding-left:0.2em;">$1</span>$2', -- spacing to use when title contains leading single or double quote mark
['kern-right'] = '$1<span style="padding-right:0.2em;">$2</span>', -- spacing to use when title contains trailing single or double quote mark
-- these for simple wikilinked titles [["text]], [[text"]] and [["text"]]
-- span wraps entire wikilink
['kern-wl-left'] = '<span style="padding-left:0.2em;">$1</span>', -- when title contains leading single or double quote mark
['kern-wl-right'] = '<span style="padding-right:0.2em;">$1</span>', -- when title contains trailing single or double quote mark
['kern-wl-both'] = '<span style="padding-left:0.2em;padding-right:0.2em;">$1</span>', -- when title contains leading and trailing single or double quote marks
['nowrap1'] = '<span class="nowrap">$1</span>', -- for nowrapping an item: <span ...>yyyy-mm-dd</span>
['nowrap2'] = '<span class="nowrap">$1</span> $2', -- for nowrapping portions of an item: <span ...>dd mmmm</span> yyyy (note white space)
['ocins'] = '<span title="$1" class="Z3988"><span style="display:none;"> </span></span>', -- Note: Using display: none on the COinS span breaks some clients
['parameter'] = '<code style="'..code_style..'">|$1=</code>',
['ps_cs1'] = '.'; -- cs1 style postscript (terminal) character
['ps_cs2'] = ''; -- cs2 style postscript (terminal) character (empty string)
['quoted-text'] = '<q>$1</q>', -- for wrapping |quote= content
['quoted-title'] = '«$1»',
['sep_cs1'] = '.', -- cs1 element separator
['sep_cs2'] = ',', -- cs2 separator
['sep_nl'] = '·', -- cs1|2 style name-list separator between authors is a semicolon
['sep_name'] = ', ', -- cs1|2 style last/first separator is <comma><space>
['sep_nl_vanc'] = ',', -- Vancouver style name-list separator between authors is a comma
['sep_name_vanc'] = ' ', -- Vancouver style last/first separator is a space
['trans-italic-title'] = "[''$1'']",
['trans-quoted-title'] = "[$1]",
['vol-bold'] = '$1 <b>$2</b>', -- sepc, volume; for bold journal cites; for other cites ['vol'] in messages{}
}
--[[--------------------------< A L I A S E S >----------------------------------------------------------------
Aliases table for commonly passed parameters
]]
local aliases = {
['AccessDate'] = {'access-date', 'accessdate'},
['Agency'] = 'agency',
['AirDate'] = {'air-date', 'airdate'},
['ArchiveDate'] = {'archive-date', 'archivedate'},
['ArchiveFormat'] = 'archive-format',
['ArchiveURL'] = {'archive-url', 'archiveurl'},
['ASINTLD'] = {'ASIN-TLD', 'asin-tld'},
['At'] = 'at',
['Authors'] = {'authors', 'people', 'host', 'credits', 'συγγραφείς'},
['BookTitle'] = {'book-title', 'booktitle'},
['Cartography'] = 'cartography',
['Chapter'] = {'chapter', 'contribution', 'entry', 'article', 'section', 'κεφάλαιο', 'άρθρο', 'λήμμα'},
['ChapterFormat'] = {'chapter-format', 'contribution-format', 'entry-format', 'article-format', 'section-format'};
['ChapterURL'] = {'chapter-url', 'chapterurl', 'contribution-url', 'contributionurl', 'entry-url', 'article-url', 'section-url', 'sectionurl'},
['ChapterUrlAccess'] = {'chapter-url-access', 'contribution-url-access', 'entry-url-access', 'article-url-access', 'section-url-access'},
['Class'] = 'class', -- cite arxiv and arxiv identifiers
['Collaboration'] = 'collaboration',
['Conference'] = {'conference', 'event'},
['ConferenceFormat'] = {'conference-format', 'event-format'},
['ConferenceURL'] = {'conference-url', 'conferenceurl', 'event-url', 'eventurl'},
['Contribution'] = 'contribution', -- introduction, foreword, afterword, etc; required when |contributor= set
['Date'] = {'date', 'ημερομηνία'},
-- ['DeadURL'] = {'dead-url', 'deadurl'},
['Degree'] = 'degree',
['DF'] = 'df',
['DisplayAuthors'] = {'display-authors', 'displayauthors'},
['DisplayEditors'] = {'display-editors', 'displayeditors'},
['Docket'] = 'docket',
['DoiBroken'] = {'doi-broken', 'doi-broken-date', 'doi-inactive-date'},
['Edition'] = {'edition', 'Edition', 'έκδοση'},
['Editors'] = {'editors', 'επιμελητές'},
['Embargo'] = 'embargo',
['Encyclopedia'] = {'encyclopedia', 'encyclopaedia', 'εγκυκλοπαίδεια'}, -- this one only used by citation
['Episode'] = 'episode', -- cite serial only TODO: make available to cite episode?
['Format'] = 'format',
['ID'] = {'id', 'ID'},
['IgnoreISBN'] = {'ignore-isbn-error', 'ignoreisbnerror'},
['Inset'] = 'inset',
['Issue'] = {'issue', 'number', 'τεύχος'},
['Interviewers'] = 'interviewers',
['Language'] = {'language', 'in', 'γλώσσα'},
['LastAuthorAmp'] = {'last-author-amp', 'lastauthoramp'},
['LayDate'] = {'lay-date', 'laydate'},
['LayFormat'] = 'lay-format',
['LaySource'] = {'lay-source', 'laysource'},
['LayURL'] = {'lay-url', 'lay-summary', 'layurl', 'laysummary'},
['MailingList'] = {'mailinglist', 'mailing-list'}, -- cite mailing list only
['Map'] = 'map', -- cite map only
['MapFormat'] = 'map-format', -- cite map only
['MapURL'] = {'mapurl', 'map-url'}, -- cite map only
['MessageID'] = 'message-id',
['Minutes'] = 'minutes',
['Mode'] = 'mode',
['NameListFormat'] = 'name-list-format',
['Network'] = 'network',
['NoPP'] = {'no-pp', 'nopp'},
['NoTracking'] = {'template-doc-demo', 'no-cat', 'nocat',
'no-tracking', 'notracking'},
['Number'] = 'number', -- this case only for cite techreport
['OrigYear'] = {'orig-year', 'origyear', 'πρώτη-έκδοση'},
['Others'] = {'others', 'interviewer', 'interviewers', 'λοιποί', 'λοιπά'},
['Page'] = {'p', 'page', 'σ', 'σελίδα'},
['Pages'] = {'pp', 'pages', 'σσ', 'σελίδες'},
['Periodical'] = {'journal', 'newspaper', 'magazine', 'work',
'website', 'periodical', 'encyclopedia', 'encyclopaedia', 'dictionary', 'mailinglist', 'περιοδικό', 'εγκυκλοπαίδεια', 'επιθεώρηση', 'λεξικό', 'εφημερίδα', 'ιστοχώρος'},
['Place'] = {'place', 'location','τόπος'},
['PostScript'] = 'postscript',
['PublicationDate'] = {'publicationdate', 'publication-date'},
['PublicationPlace'] = {'publication-place', 'publicationplace', 'τόπος-έκδοσης'},
['PublisherName'] = {'publisher', 'distributor', 'institution', 'newsgroup', 'εκδότης'},
['Quote'] = {'quote', 'quotation', 'απόσπασμα'},
['Ref'] = 'ref',
['RegistrationRequired'] = 'registration',
['Scale'] = 'scale',
['ScriptChapter'] = 'script-chapter',
['ScriptTitle'] = 'script-title',
['Section'] = 'section',
['Season'] = 'season',
['Sections'] = 'sections', -- cite map only
['Series'] = {'series', 'version', 'σειρά'},
['SeriesSeparator'] = 'series-separator',
['SeriesLink'] = {'series-link', 'serieslink'},
['SeriesNumber'] = {'series-number', 'series-no', 'seriesnumber', 'seriesno'},
['Sheet'] = 'sheet', -- cite map only
['Sheets'] = 'sheets', -- cite map only
['Station'] = 'station',
['SubscriptionRequired'] = 'subscription',
['Time'] = 'time',
['TimeCaption'] = {'time-caption', 'timecaption'},
['Title'] = {'title', 'τίτλος'},
['TitleLink'] = {'title-link', 'episode-link', 'titlelink', 'episodelink'},
['TitleNote'] = 'department',
['TitleType'] = {'type', 'medium'},
['TransChapter'] = 'trans-chapter',
['TransMap'] = 'trans-map', -- cite map only
['Transcript'] = 'transcript',
['TranscriptFormat'] = 'transcript-format',
['TranscriptURL'] = {'transcript-url', 'transcripturl'},
['TransTitle'] = {'trans-title', 'trans_title'},
['URL'] = {'url', 'URL'},
['UrlAccess'] = {'url-access'},
['UrlStatus'] = {'url-status', 'dead-url', 'deadurl'}, -- TODO: remove 'dead-url', 'deadurl'
['Vauthors'] = 'vauthors',
['Veditors'] = 'veditors',
['Via'] = 'via',
['Volume'] = {'volume', 'τόμος'},
['Year'] = {'year', 'έτος'},
['AuthorList-First'] = {"first#", "given#", "author-first#", "author#-first", "όνομα#"},
['AuthorList-Last'] = {"last#", "author#", "surname#", "author-last#", "author#-last", "subject#", "επώνυμο#", "συγγραφέας#"},
['AuthorList-Link'] = {"authorlink#", "author-link#", "author#-link", "subjectlink#", "author#link", "subject-link#", "subject#-link", "subject#link", "λήμμα-συγγραφέα#"},
['AuthorList-Mask'] = {"author-mask#", "authormask#", "author#mask", "author#-mask"},
['ContributorList-First'] = {'contributor-first#', 'contributor#-first', 'contributor-given#', 'contributor#-given'},
['ContributorList-Last'] = {'contributor#', 'contributor-last#', 'contributor#-last', 'contributor-surname#', 'contributor#-surname'},
['ContributorList-Link'] = {'contributor-link#', 'contributor#-link'},
['ContributorList-Mask'] = {'contributor-mask#', 'contributor#-mask'},
['EditorList-First'] = {"editor-first#", "editor#-first", "editor-given#", "editor#-given", "όνομα-επιμελητή#"},
['EditorList-Last'] = {"editor#", "editor-last#", "editor#-last", "editor-surname#", "editor#-surname", "επιμελητής#", "επώνυμο-επιμελητή#"},
['EditorList-Link'] = {"editor-link#", "editor#-link", "editorlink#", "editor#link", "λήμμα-επιμελητή#"},
['EditorList-Mask'] = {"editor-mask#", "editor#-mask", "editormask#", "editor#mask"},
['InterviewerList-First'] = {'interviewer-first#', 'interviewer#-first'},
['InterviewerList-Last'] = {'interviewer#', 'interviewer-last#', 'interviewer#-last'},
['InterviewerList-Link'] = {'interviewer-link#', 'interviewer#-link'},
['InterviewerList-Mask'] = {'interviewer-mask#', 'interviewer#-mask'},
['TranslatorList-First'] = {'translator-first#', 'translator#-first', 'translator-given#', 'translator#-given', 'όνομα-μεταφραστή#'},
['TranslatorList-Last'] = {'translator#', 'translator-last#', 'translator#-last', 'translator-surname#', 'translator#-surname', 'μεταφραστής#', 'επώνυμο-μεταφραστή#'},
['TranslatorList-Link'] = {'translator-link#', 'translator#-link', 'λήμμα-μεταφραστή#'},
['TranslatorList-Mask'] = {'translator-mask#', 'translator#-mask'},
}
--[[--------------------------< S P E C I A L C A S E T R A N S L A T I O N S >----------------------------
This table is primarily here to support internationalization. Translations in this table are used, for example,
when an error message, category name, etc is extracted from the English alias key. There may be other cases where
this translation table may be useful.
]]
local special_case_translation = {
['AuthorList'] = "authors list", -- these for multiple names maint categories
['ContributorList'] = "contributors list",
['EditorList'] = "editors list",
['InterviewerList'] = "interviewers list",
['TranslatorList'] = "translators list",
['authors'] = "authors", -- used in get_display_authors_editors()
['editors'] = "editors",
}
--[[--------------------------< D E F A U L T S >--------------------------------------------------------------
Default parameter values
TODO: keep this? Only one default?
]]
local defaults = {
['UrlStatus'] = 'dead',
}
--[[--------------------------< D A T E _ N A M E S >----------------------------------------------------------
This table of tables lists local language date names and fallback English date names. The code in Date_validation
will look first in the local table for valid date names. If date names are not found in the local table, the code
will look in the English table.
Because citations can be copied to the local wiki from en.wiki, the English is required when the date-name translation
function date_name_xlate() is used.
In these tables, season numbering is defined by ISO DIS 8601:2016 part 2 §4.7 'Divisions of a year'. The standard
defines various divisions using numbers 21-41. cs1|2 only supports generic seasons. ISO DIS 8601:2016 does support
the distinction between north and south hemispere seasons but cs1|2 has no way to make that distinction.
The standard does not address 'named' dates so, for the purposes of cs1|2, Christmas is defined here as 99, which
should be out of the ISO DIS 8601:2016 range of uses for a while.
]]
local date_names = {
['en'] = { -- English
['long'] = {['January']=1, ['February']=2, ['March']=3, ['April']=4, ['May']=5, ['June']=6, ['July']=7, ['August']=8, ['September']=9, ['October']=10, ['November']=11, ['December']=12};
['short'] = {['Jan']=1, ['Feb']=2, ['Mar']=3, ['Apr']=4, ['May']=5, ['Jun']=6, ['Jul']=7, ['Aug']=8, ['Sep']=9, ['Oct']=10, ['Nov']=11, ['Dec']=12};
['season'] = {['Winter']=24, ['Spring']=21, ['Summer']=22, ['Fall']=23, ['Autumn']=23};
['named'] = {['Christmas']=99};
},
['local'] = { -- replace these English date names with the local language equivalents
['long'] = {['Ιανουάριος']=1, ['Φεβρουάριος']=2, ['Μάρτιος']=3, ['Απρίλιος']=4, ['Μάιος']=5, ['Ιούνιος']=6, ['Ιούλιος']=7, ['Αύγουστος']=8, ['Σεπτέμβριος']=9, ['Οκτώβριος']=10, ['Νοέμβριος']=11, ['Δεκέμβριος']=12,
['Ιανουαρίου']=1, ['Φεβρουαρίου']=2, ['Μαρτίου']=3, ['Απριλίου']=4, ['Μαΐου']=5, ['Ιουνίου']=6, ['Ιουλίου']=7, ['Αυγούστου']=8, ['Σεπτεμβρίου']=9, ['Οκτωβρίου']=10, ['Νοεμβρίου']=11, ['Δεκεμβρίου']=12};
['short'] = {['Ιαν.']=1, ['Φεβ.']=2, ['Μαρ.']=3, ['Απρ.']=4, ['Μαϊ.']=5, ['Ιουν.']=6, ['Ιουλ.']=7, ['Αυγ.']=8, ['Σεπ.']=9, ['Οκτ.']=10, ['Νοε.']=11, ['Δεκ.']=12};
['season'] = {['Χειμώνας']=24, ['Άνοιξη']=21, ['Καλοκαίρι']=22, ['Φθινόπωρο']=23};
['named'] = {['Χριστούγεννα']=99};
},
['local_digits'] = {['0'] = '0', ['1'] = '1', ['2'] = '2', ['3'] = '3', ['4'] = '4', ['5'] = '5', ['6'] = '6', ['7'] = '7', ['8'] = '8', ['9'] = '9'}; -- used to convert local language digits to Western 0-9
['xlate_digits'] = {};
}
for ld, ed in pairs (date_names.local_digits) do -- make a digit translation table for simple date translation from en to local language using local_digits table
date_names.xlate_digits [ed] = ld; -- en digit becomes index with local digit as the value
end
--[[--------------------------< V O L U M E , I S S U E , P A G E S >----------------------------------------
These tables hold cite class values (from the template invocation) and identify those templates that support
|volume=, |issue=, and |page(s)= parameters. Cite conference and cite map require further qualification which
is handled in the main module.
]]
local templates_using_volume = {'citation', 'audio-visual', 'book', 'conference', 'encyclopaedia', 'interview', 'journal', 'magazine', 'map', 'news', 'report', 'techreport', 'thesis'}
local templates_using_issue = {'citation', 'conference', 'episode', 'interview', 'journal', 'magazine', 'map', 'news'}
local templates_not_using_page = {'audio-visual', 'episode', 'mailinglist', 'newsgroup', 'podcast', 'serial', 'sign', 'speech'}
--[[--------------------------< K E Y W O R D S >--------------------------------------------------------------
This table holds keywords for those parameters that have defined sets of acceptible keywords.
]]
local keywords = {
['yes_true_y'] = {'yes', 'true', 'y'}, -- ignore-isbn-error, last-author-amp, no-tracking, nopp, registration, subscription
-- ['deadurl'] = {'yes', 'true', 'y', 'no', 'unfit', 'usurped', 'unfit no archive', 'usurped no archive'}, -- hidden 2016-04-10; see Help_talk:Citation_Style_1#Recycled_urls
['deadurl'] = {'yes', 'true', 'y', 'no', 'unfit', 'usurped', 'bot: unknown'},
['mode'] = {'cs1', 'cs2', 'mla'},
['name-list-format'] = {'vanc'},
['contribution'] = {'afterword', 'foreword', 'introduction', 'preface'}, -- generic contribution titles that are rendered unquoted in the 'chapter' position
['date-format'] = {'dmy', 'dmy-all', 'mdy', 'mdy-all', 'ymd', 'ymd-all'},
['url-access'] = {'subscription', 'limited', 'registration'}, -- access level of a URL (subscription required, limited access, free registration required), free to read by default
['url-status'] = {'dead', 'live', 'unfit', 'usurped', 'bot: unknown'}, -- replacement for |dead-url=
['id-access'] = {'free'}, -- access level of an identifier (free to read), subscription required (or no full text) by default
}
--[[--------------------------< S T R I P M A R K E R S >------------------------------------------------------
Common pattern definition location for stripmarkers so that we don't have to go hunting for them if (when)
MediaWiki changes their form.
]]
local stripmarkers = {
['any'] = '\127[^\127]*UNIQ%-%-(%a+)%-[%a%d]+%-QINU[^\127]*\127', -- capture returns name of stripmarker
['math'] = '\127[^\127]*UNIQ%-%-math%-[%a%d]+%-QINU[^\127]*\127' -- math stripmarkers used in coins_cleanup() and coins_replace_math_stripmarker()
}
--[[--------------------------< I N V I S I B L E _ C H A R A C T E R S >--------------------------------------
This table holds non-printing or invisible characters indexed either by name or by Unicode group. Values are decimal
representations of UTF-8 codes. The table is organized as a table of tables because the lua pairs keyword returns
table data in an arbitrary order. Here, we want to process the table from top to bottom because the entries at
the top of the table are also found in the ranges specified by the entries at the bottom of the table.
This list contains patterns for templates like {{'}} which isn't an error but transcludes characters that are
invisible. These kinds of patterns must be recognized by the functions that use this list.
Also here is a pattern that recognizes stripmarkers that begin and end with the delete characters. The nowiki
stripmarker is not an error but some others are because the parameter values that include them become part of the
template's metadata before stripmarker replacement.
]]
local invisible_chars = {
{'replacement', '\239\191\189'}, -- U+FFFD, EF BF BD
{'zero width joiner', '\226\128\141'}, -- U+200D, E2 80 8D
{'zero width space', '\226\128\139'}, -- U+200B, E2 80 8B
{'hair space', '\226\128\138'}, -- U+200A, E2 80 8A
{'soft hyphen', '\194\173'}, -- U+00AD, C2 AD
{'horizontal tab', '\009'}, -- U+0009 (HT), 09
{'line feed', '\010'}, -- U+000A (LF), 0A
{'carriage return', '\013'}, -- U+000D (CR), 0D
{'stripmarker', stripmarkers.any}, -- stripmarker; may or may not be an error; capture returns the stripmaker type
{'delete', '\127'}, -- U+007F (DEL), 7F; must be done after stripmarker test
{'C0 control', '[\000-\008\011\012\014-\031]'}, -- U+0000–U+001F (NULL–US), 00–1F (except HT, LF, CR (09, 0A, 0D))
{'C1 control', '[\194\128-\194\159]'}, -- U+0080–U+009F (XXX–APC), C2 80 – C2 9F
-- {'Specials', '[\239\191\185-\239\191\191]'}, -- U+FFF9-U+FFFF, EF BF B9 – EF BF BF
-- {'Private use area', '[\238\128\128-\239\163\191]'}, -- U+E000–U+F8FF, EE 80 80 – EF A3 BF
-- {'Supplementary Private Use Area-A', '[\243\176\128\128-\243\191\191\189]'}, -- U+F0000–U+FFFFD, F3 B0 80 80 – F3 BF BF BD
-- {'Supplementary Private Use Area-B', '[\244\128\128\128-\244\143\191\189]'}, -- U+100000–U+10FFFD, F4 80 80 80 – F4 8F BF BD
}
-- Indic script makes use of zero width joiner as a character modifier so zwj characters must be left in. This
-- pattern covers all of the unicode characters for these languages:
-- Devanagari 0900–097F – https://unicode.org/charts/PDF/U0900.pdf
-- Devanagari extended A8E0–A8FF – https://unicode.org/charts/PDF/UA8E0.pdf
-- Bengali 0980–09FF – https://unicode.org/charts/PDF/U0980.pdf
-- Gurmukhi 0A00–0A7F – https://unicode.org/charts/PDF/U0A00.pdf
-- Gujarati 0A80–0AFF – https://unicode.org/charts/PDF/U0A80.pdf
-- Oriya 0B00–0B7F – https://unicode.org/charts/PDF/U0B00.pdf
-- Tamil 0B80–0BFF – https://unicode.org/charts/PDF/U0B80.pdf
-- Telugu 0C00–0C7F – https://unicode.org/charts/PDF/U0C00.pdf
-- Kannada 0C80–0CFF – https://unicode.org/charts/PDF/U0C80.pdf
-- Malayalam 0D00–0D7F – https://unicode.org/charts/PDF/U0D00.pdf
-- plus the not-necessarily Indic scripts for Sinhala and Burmese:
-- Sinhala 0D80-0DFF - https://unicode.org/charts/PDF/U0D80.pdf
-- Myanmar 1000-109F - https://unicode.org/charts/PDF/U1000.pdf
-- Myanmar extended A AA60-AA7F - https://unicode.org/charts/PDF/UAA60.pdf
-- Myanmar extended B A9E0-A9FF - https://unicode.org/charts/PDF/UA9E0.pdf
-- the pattern is used by has_invisible_chars() and coins_cleanup()
-- TODO: find a better place for this?
local indic_script = '[\224\164\128-\224\181\191\224\163\160-\224\183\191\225\128\128-\225\130\159\234\167\160-\234\167\191\234\169\160-\234\169\191]';
--[[--------------------------< L A N G U A G E S >------------------------------------------------------------
This table is used to hold ISO 639-1 two-character language codes that apply only to |script-title= and |script-chapter=
]]
local script_lang_codes = {
'am', 'ar', 'be', 'bg', 'bn', 'bs', 'dv', 'el', 'fa', -- ISO 639-1 codes only for |script-title= and |script-chapter=
'gu', 'he', 'hy', 'ja', 'ka', 'kn', 'ko', 'ku',
'mk', 'ml', 'mn', 'mr', 'my', 'ps', 'ru', 'sd',
'sr', 'tg', 'th', 'uk', 'ug', 'ur', 'yi', 'zh'
};
--[[--------------------------< L A N G U A G E R E M A P P I N G >------------------------------------------
These tables hold language information that is different (correct) from MediaWiki's definitions
]]
local lang_code_remap = { -- used for |language= and |script-title= / |script-chapter=
['bh'] = 'Μπιχάρι', -- MediaWiki uses 'bh' as a subdomain name for Bhojpuri wWikipedia: bh.wikipedia.org
['cnr'] = 'Μαυροβουνιακά', -- 'new' 639 code that MediaWiki does not yet understand
}
local lang_name_remap = { -- used for |language=
['bihari'] = {'Μπιχάρι', 'bh'}, -- MediaWiki replaces 'Bihari' with 'Bhojpuri' so 'Bihari' cannot be found
['bhojpuri'] = {'Bhojpuri', 'bho'}, -- MediaWiki uses 'bh' as a subdomain name for Bhojpuri wWikipedia: bh.wikipedia.org
['montenegrin'] = {'Μαυροβουνιακά', 'cnr'}, -- 'new' 639 code that MediaWiki does not yet understand
}
--[[--------------------------< M A I N T E N A N C E _ C A T E G O R I E S >----------------------------------
Here we name maintenance categories to be used in maintenance messages.
]]
local maint_cats = {
['ASIN'] = 'CS1 maint: ASIN uses ISBN',
['authors'] = 'CS1 maint: Uses authors parameter',
['bot:_unknown'] = 'CS1 maint: BOT: original-url status unknown',
['date_format'] = 'CS1 maint: Μορφή ημερομηνίας',
['date_year'] = 'CS1 maint: Ημερομηνία και έτος',
['disp_auth_ed'] = 'CS1 maint: display-$1', -- $1 is authors or editors; gets value from special_case_translation table
['editors'] = 'CS1 maint: Uses editors parameter',
['embargo'] = 'CS1 maint: PMC embargo expired',
['english'] = 'CS1 maint: English language specified',
['etal'] = 'CS1 maint: Explicit use of et al.',
['extra_text'] = 'CS1 maint: Extra text',
['extra_text_names'] = 'CS1 maint: Extra text: $1', -- $1 is <name>s list; gets value from special_case_translation table
['ignore_isbn_err'] = 'CS1 maint: Ignored ISBN errors',
['interviewers'] = 'CS1 maint: Uses interviewers parameter',
['missing_pipe'] = 'CS1 maint: Missing pipe',
['mult_names'] = 'CS1 maint: Πολλαπλές ονομασίες: $1', -- $1 is <name>s list; gets value from special_case_translation table
['pmc_format'] = 'CS1 maint: PMC format',
['unfit'] = 'CS1 maint: Unfit url',
['unknown_lang'] = 'CS1 maint: Μη αναγνωρίσιμη γλώσσα',
['untitled'] = 'CS1 maint: Untitled periodical',
}
--[[--------------------------< P R O P E R T I E S _ C A T E G O R I E S >------------------------------------
Here we name properties categories
]]
local prop_cats = {
['foreign_lang_source'] = 'Σελίδες με πηγές CS1 στα $1 ($2)', -- |language= categories; $1 is language name, $2 is ISO639-1 code
['foreign_lang_source_2'] = 'CS1 foreign language sources (ISO 639-2)|$1', -- |language= category; a cat for ISO639-2 languages; $1 is the ISO 639-2 code
['script'] = 'CS1 uses foreign language script', -- when language specified by |script-title=xx: doesn't have its own category
['script_with_name'] = 'CS1 uses $1-language script ($2)', -- |script-title=xx: has matching category; $1 is language name, $2 is ISO639-1 code
['jul_greg_uncertainty'] = 'CS1: Julian–Gregorian uncertainty', -- probably temporary cat to identify scope of template with dates 1 October 1582 – 1 January 1926
}
--[[--------------------------< T I T L E _ T Y P E S >--------------------------------------------------------
Here we map a template's CitationClass to TitleType (default values for |type= parameter)
]]
local title_types = {
['AV-media-notes'] = 'Σημειώσεις πολυμέσου',
['interview'] = 'Συνέντευξη',
['mailinglist'] = 'Mailing list',
['map'] = 'Χάρτης',
['podcast'] = 'Podcast',
['pressrelease'] = 'Δελτίο Τύπου',
['report'] = 'Έκθεση',
['techreport'] = 'Τεχνική αναφορά',
['thesis'] = 'Διδακτορική διατριβή',
}
--[[--------------------------< E R R O R _ C O N D I T I O N S >----------------------------------------------
Error condition table
The following contains a list of IDs for various error conditions defined in the code. For each ID, we specify a
text message to display, an error category to include, and whether the error message should be wrapped as a hidden comment.
Anchor changes require identical changes to matching anchor in Help:CS1 errors
]]
local error_conditions = {
accessdate_missing_url = {
message = '<code style="'..code_style..'">Η παράμετρος |access-date=</code> χρειάζεται <code style="'..code_style..'">|url=</code>',
anchor = 'accessdate_missing_url',
category = 'Σελίδες που περιέχουν παραπομπές με accessdate χωρίς URL',
hidden = false },
archive_missing_date = {
message = '<code style="'..code_style..'">|archive-url=</code> requires <code style="'..code_style..'">|archive-date=</code>',
anchor = 'archive_missing_date',
category = 'Pages with archiveurl citation errors',
hidden = false },
archive_missing_url = {
message = '<code style="'..code_style..'">|archive-url=</code> requires <code style="'..code_style..'">|url=</code>',
anchor = 'archive_missing_url',
category = 'Pages with archiveurl citation errors',
hidden = false },
archive_url = {
message = '<code style="'..code_style..'">|archive-url=</code> is malformed: $1',
anchor = 'archive_url',
category = 'Pages with archiveurl citation errors',
hidden = false },
arxiv_missing = {
message = '<code style="'..code_style..'">|arxiv=</code> required',
anchor = 'arxiv_missing',
category = ' Σφάλματα CS1: arXiv', -- same as bad arxiv
hidden = false },
arxiv_params_not_supported = {
message = 'Unsupported parameter(s) in cite arXiv',
anchor = 'arxiv_params_not_supported',
category = ' Σφάλματα CS1: arXiv', -- same as bad arxiv
hidden = false },
bad_arxiv = {
message = 'Check <code style="'..code_style..'">|arxiv=</code> value',
anchor = 'bad_arxiv',
category = ' Σφάλματα CS1: arXiv',
hidden = false },
bad_asin = {
message = 'Check <code style="'..code_style..'">|asin=</code> value',
anchor = 'bad_asin',
category =' Σφάλματα CS1: ASIN',
hidden = false },
bad_bibcode = {
message = 'Check <code style="'..code_style..'">|bibcode=</code> $1',
anchor = 'bad_bibcode',
category = ' Σφάλματα CS1: bibcode',
hidden = false },
bad_biorxiv = {
message = 'Check <code style="'..code_style..'">|biorxiv=</code> value',
anchor = 'bad_biorxiv',
category = ' Σφάλματα CS1: bioRxiv',
hidden = false },
bad_citeseerx = {
message = 'Check <code style="'..code_style..'">|citeseerx=</code> value',
anchor = 'bad_citeseerx',
category = ' Σφάλματα CS1: citeseerx',
hidden = false },
bad_date = {
message = 'Ελέγξτε τις τιμές ημερομηνίας στο: <code style="'..code_style..'">$1</code>',
anchor = 'bad_date',
category = 'Σφάλματα CS1: ημερομηνίες',
hidden = false },
bad_doi = {
message = 'Check <code style="'..code_style..'">|doi=</code> value',
anchor = 'bad_doi',
category = ' Σφάλματα CS1: DOI',
hidden = false },
bad_hdl = {
message = 'Check <code style="'..code_style..'">|hdl=</code> value',
anchor = 'bad_hdl',
category = ' Σφάλματα CS1: HDL',
hidden = false },
bad_isbn = {
message = 'Check <code style="'..code_style..'">|isbn=</code> value: $1',
anchor = 'bad_isbn',
category = ' Σφάλματα CS1: ISBN',
hidden = false },
bad_ismn = {
message = 'Check <code style="'..code_style..'">|ismn=</code> value',
anchor = 'bad_ismn',
category = ' Σφάλματα CS1: ISMN',
hidden = false },
bad_issn = {
message = 'Check <code style="'..code_style..'">|$1issn=</code> value',
anchor = 'bad_issn',
category = ' Σφάλματα CS1: ISSN',
hidden = false },
bad_jfm = {
message = 'Check <code style="'..code_style..'">|jfm=</code> value',
anchor = 'bad_jfm',
category = ' Σφάλματα CS1: JFM',
hidden = false },
bad_lccn = {
message = 'Check <code style="'..code_style..'">|lccn=</code> value',
anchor = 'bad_lccn',
category = ' Σφάλματα CS1: LCCN',
hidden = false },
bad_usenet_id = {
message = 'Check <code style="'..code_style..'">|message-id=</code> value',
anchor = 'bad_message_id',
category = ' Σφάλματα CS1: message-id',
hidden = false },
bad_mr = {
message = 'Check <code style="'..code_style..'">|mr=</code> value',
anchor = 'bad_mr',
category = ' Σφάλματα CS1: MR',
hidden = false },
bad_ol = {
message = 'Check <code style="'..code_style..'">|ol=</code> value',
anchor = 'bad_ol',
category = ' Σφάλματα CS1: OL',
hidden = false },
bad_paramlink = { -- for |title-link=, |author/editor/translator-link=, |series-link=, |episode-link=
message = 'Check <code style="'..code_style..'">|$1=</code> value',
anchor = 'bad_paramlink',
category = ' Σφάλματα CS1: parameter link',
hidden = false },
bad_pmc = {
message = 'Check <code style="'..code_style..'">|pmc=</code> value',
anchor = 'bad_pmc',
category = ' Σφάλματα CS1: PMC',
hidden = false },
bad_pmid = {
message = 'Check <code style="'..code_style..'">|pmid=</code> value',
anchor = 'bad_pmid',
category = ' Σφάλματα CS1: PMID',
hidden = false },
bad_oclc = {
message = 'Check <code style="'..code_style..'">|oclc=</code> value',
anchor = 'bad_oclc',
category = ' Σφάλματα CS1: OCLC',
hidden = false },
bad_ssrn = {
message = 'Check <code style="'..code_style..'">|ssrn=</code> value',
anchor = 'bad_ssrn',
category = ' Σφάλματα CS1: SSRN',
hidden = false },
bad_url = {
message = 'Check $1 value',
anchor = 'bad_url',
category = 'Pages with URL errors',
hidden = false },
bad_zbl = {
message = 'Check <code style="'..code_style..'">|zbl=</code> value',
anchor = 'bad_zbl',
category = ' Σφάλματα CS1: ZBL',
hidden = false },
bare_url_missing_title = {
message = '$1 missing title',
anchor = 'bare_url_missing_title',
category = 'Pages with citations having bare URLs',
hidden = false },
biorxiv_missing = {
message = '<code style="'..code_style..'">|biorxiv=</code> required',
anchor = 'biorxiv_missing',
category = ' Σφάλματα CS1: bioRxiv', -- same as bad bioRxiv
hidden = false },
chapter_ignored = {
message = '<code style="'..code_style..'">|$1=</code> ignored',
anchor = 'chapter_ignored',
category = ' Σφάλματα CS1: chapter ignored',
hidden = false },
citation_missing_title = {
message = 'Missing or empty <code style="'..code_style..'">|$1=</code>',
anchor = 'citation_missing_title',
category = 'Σελίδες με παραπομπές χωρίς τίτλο',
hidden = false },
citeseerx_missing = {
message = '<code style="'..code_style..'">|citeseerx=</code> required',
anchor = 'citeseerx_missing',
category = ' Σφάλματα CS1: citeseerx', -- same as bad citeseerx
hidden = false },
cite_web_url = { -- this error applies to cite web and to cite podcast
message = 'H παράμετρος <code style="'..code_style..'">|url=</code> είναι κενή ή απουσιάζει',
anchor = 'cite_web_url',
category = 'Σελίδες που περιέχουν διαδικτυακές παραπομπές χωρίς URL',
hidden = false },
contributor_ignored = {
message = '<code style="'..code_style..'">|contributor=</code> ignored',
anchor = 'contributor_ignored',
category = ' Σφάλματα CS1: contributor',
hidden = false },
contributor_missing_required_param = {
message = '<code style="'..code_style..'">|contributor=</code> requires <code style="'..code_style..'">|$1=</code>',
anchor = 'contributor_missing_required_param',
category = 'Σφάλματα CS1: contributor',
hidden = false },
deprecated_params = {
message = 'Cite uses deprecated parameter <code style="'..code_style..'">|$1=</code>',
anchor = 'deprecated_params',
category = 'Σφάλματα CS1: deprecated parameters',
hidden = false },
empty_citation = {
message = 'Empty citation',
anchor = 'empty_citation',
category = 'Σελίδες με κενές παραπομπές',
hidden = false },
first_missing_last = {
message = '<code style="'..code_style..'">|first$2=</code> missing <code style="'..code_style..'">|last$2=</code> in $1',
anchor = 'first_missing_last',
category = 'Σφάλματα CS1: χωρίς συγγραφέα ή επιμελητή',
hidden = false },
format_missing_url = {
message = '<code style="'..code_style..'">|$1=</code> requires <code style="'..code_style..'">|$2=</code>',
anchor = 'format_missing_url',
category = 'Pages using citations with format and no URL',
hidden = true },
invalid_param_val = {
message = 'Invalid <code style="'..code_style..'">|$1=$2</code>',
anchor = 'invalid_param_val',
category = 'Σφάλματα CS1: invalid parameter value',
hidden = false },
invisible_char = {
message = '$1 in $2 at position $3',
anchor = 'invisible_char',
category = ' Σφάλματα CS1: invisible characters',
hidden = false },
missing_name = {
message = 'Missing <code style="'..code_style..'">|last$2=</code> in $1',
anchor = 'missing_name',
category = ' Σφάλματα CS1: missing author or editor',
hidden = false },
param_access_requires_param = {
message = '<code style="'..code_style..'">|$1-access=</code> requires <code style="'..code_style..'">|$1=</code>',
anchor = 'param_access_requires_param',
category = ' Σφάλματα CS1: param-access',
hidden = false },
param_has_ext_link = {
message = 'Εξωτερικός σύνδεσμος στο <code style="'..code_style..'">$1</code>',
anchor = 'param_has_ext_link',
category = 'Σφάλματα CS1: εξωτερικοί σύνδεσμοι',
hidden = false },
parameter_ignored = {
message = 'Unknown parameter <code style="'..code_style..'">|$1=</code> ignored',
anchor = 'parameter_ignored',
category = 'Pages with citations using unsupported parameters',
hidden = false },
parameter_ignored_suggest = {
message = 'Unknown parameter <code style="'..code_style..'">|$1=</code> ignored (<code style="'..code_style..'">|$2=</code> suggested)',
anchor = 'parameter_ignored_suggest',
category = 'Pages with citations using unsupported parameters',
hidden = false },
redundant_parameters = {
message = 'More than one of $1 specified',
anchor = 'redundant_parameters',
category = 'Pages with citations having redundant parameters',
hidden = false },
text_ignored = {
message = 'Text "$1" ignored',
anchor = 'text_ignored',
category = 'Pages with citations using unnamed parameters',
hidden = false },
trans_missing_title = {
message = '<code style="'..code_style..'">|trans-$1=</code> requires <code style="'..code_style..'">|$1=</code>',
anchor = 'trans_missing_title',
category = ' Σφάλματα CS1: translated title',
hidden = false },
vancouver = {
message = 'Vancouver style error: $1',
anchor = 'vancouver',
category = 'Σφάλματα CS1: Vancouver style',
hidden = false },
wikilink_in_url = {
message = 'URL–wikilink conflict', -- uses ndash
anchor = 'wikilink_in_url',
category = ' Σφάλματα CS1: URL–wikilink conflict', -- uses ndash
hidden = false },
}
--[[--------------------------< I D _ H A N D L E R S >--------------------------------------------------------
The following contains a list of values for various defined identifiers. For each identifier we specify a
variety of information necessary to properly render the identifier in the citation.
parameters: a list of parameter aliases for this identifier
link: Wikipedia article name
q: wikidata q number for the identifier
label: the alternate name to apply to link
mode: 'manual' when there is a specific function in the code to handle the identifier;
'external' for identifiers that link outside of Wikipedia;
prefix: the first part of a url that will be concatenated with a second part which usually contains the identifier
encode: true if uri should be percent encoded; otherwise false
COinS: identifier link or keyword for use in COinS:
for identifiers registered at info-uri.info use: info:....
for identifiers that have COinS keywords, use the keyword: rft.isbn, rft.issn, rft.eissn
for others make a url using the value in prefix, use the keyword: pre (not checked; any text other than 'info' or 'rft' works here)
set to nil to leave the identifier out of the COinS
separator: character or text between label and the identifier in the rendered citation
access: use this parameter to set the access level for all instances of this identifier.
the value must be a valid access level for an identifier (see ['id-access'] in this file).
custom_access: to enable custom access level for an identifier, set this parameter
to the parameter that should control it (normally 'id-access')
]]
local id_handlers = {
['ARXIV'] = {
parameters = {'arxiv', 'eprint'},
link = 'arXiv',
q = 'Q118398',
label = 'arXiv',
mode = 'manual',
prefix = '//arxiv.org/abs/', -- protocol relative tested 2013-09-04
encode = false,
COinS = 'info:arxiv',
separator = ':',
access = 'free', -- free to read
},
['ASIN'] = {
parameters = { 'asin', 'ASIN' },
link = 'Amazon Standard Identification Number',
q = 'Q1753278',
label = 'ASIN',
mode = 'manual',
prefix = '//www.amazon.',
COinS = nil, -- no COinS for this id (needs thinking on implementation because |asin-tld=)
separator = ' ',
encode = false;
},
['BIBCODE'] = {
parameters = {'bibcode'},
link = 'Bibcode',
q = 'Q25754',
label = 'Bibcode',
mode = 'manual',
prefix = 'http://adsabs.harvard.edu/abs/',
encode = false,
COinS = 'info:bibcode',
separator = ':',
custom_access = 'bibcode-access',
},
['BIORXIV'] = {
parameters = {'biorxiv'},
link = 'bioRxiv',
q = 'Q19835482',
label = 'bioRxiv',
mode = 'manual',
prefix = '//doi.org/10.1101/',
COinS = 'pre', -- use prefix value
access = 'free', -- free to read
encode = true,
separator = ' ',
},
['CITESEERX'] = {
parameters = {'citeseerx'},
link = 'CiteSeerX',
q = 'Q2715061',
label = 'CiteSeerX',
mode = 'manual', -- manual for custom validation of the "doi"
prefix = '//citeseerx.ist.psu.edu/viewdoc/summary?doi=',
COinS = 'pre', -- use prefix value
access = 'free', -- free to read
encode = true,
separator = ' ',
},
['DOI'] = {
parameters = { 'doi', 'DOI' },
link = 'Ψηφιακό αναγνωριστικό αντικειμένου',
q = 'Q25670',
label = 'doi',
mode = 'manual',
prefix = '//doi.org/',
COinS = 'info:doi',
separator = ':',
encode = true,
custom_access = 'doi-access',
},
['EISSN'] = {
parameters = {'eissn', 'EISSN'},
link = 'International_Standard_Serial_Number#Electronic_ISSN',
q = 'Q46339674',
label = 'eISSN',
mode = 'manual',
prefix = '//www.worldcat.org/issn/',
COinS = 'rft.eissn',
encode = false,
separator = ' ',
},
['HDL'] = {
parameters = { 'hdl', 'HDL' },
link = 'Handle System',
q = 'Q3126718',
label = 'hdl',
mode = 'manual',
prefix = '//hdl.handle.net/',
COinS = 'info:hdl',
separator = ':',
encode = true,
custom_access = 'hdl-access',
},
['ISBN'] = {
parameters = {'isbn', 'ISBN', 'isbn13', 'ISBN13'},
link = 'Διεθνής πρότυπος αριθμός βιβλίου',
q = 'Q33057',
label = 'ISBN',
mode = 'manual',
prefix = 'Special:BookSources/',
COinS = 'rft.isbn',
separator = ' ',
},
['ISMN'] = {
parameters = {'ismn', 'ISMN'},
link = 'International Standard Music Number',
q = 'Q1666938',
label = 'ISMN',
mode = 'manual',
prefix = '', -- not currently used;
COinS = 'nil', -- nil because we can't use pre or rft or info:
separator = ' ',
},
['ISSN'] = {
parameters = {'issn', 'ISSN'},
link = 'International Standard Serial Number',
q = 'Q131276',
label = 'ISSN',
mode = 'manual',
prefix = '//www.worldcat.org/issn/',
COinS = 'rft.issn',
encode = false,
separator = ' ',
},
['JFM'] = {
parameters = {'jfm', 'JFM'},
link = 'Jahrbuch über die Fortschritte der Mathematik',
q = '',
label = 'JFM',
mode = 'manual',
prefix = '//zbmath.org/?format=complete&q=an:',
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
},
['JSTOR'] = {
parameters = {'jstor', 'JSTOR'},
link = 'JSTOR',
q = 'Q1420342',
label = 'JSTOR',
mode = 'external',
prefix = '//www.jstor.org/stable/', -- protocol relative tested 2013-09-04
COinS = 'pre', -- use prefix value
encode = false,
separator = ' ',
custom_access = 'jstor-access',
},
['LCCN'] = {
parameters = {'LCCN', 'lccn'},
link = 'Library of Congress Control Number',
q = 'Q620946',
label = 'LCCN',
mode = 'manual',
prefix = '//lccn.loc.gov/', -- protocol relative tested 2015-12-28
COinS = 'info:lccn', -- use prefix value
encode = false,
separator = ' ',
},
['MR'] = {
parameters = {'MR', 'mr'},
link = 'Mathematical Reviews',
q = 'Q211172',
label = 'MR',
mode = 'manual',
prefix = '//www.ams.org/mathscinet-getitem?mr=', -- protocol relative tested 2013-09-04
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
},
['OCLC'] = {
parameters = {'OCLC', 'oclc'},
link = 'OCLC',
q = 'Q190593',
label = 'OCLC',
mode = 'manual',
prefix = '//www.worldcat.org/oclc/',
COinS = 'info:oclcnum',
encode = true,
separator = ' ',
},
['OL'] = {
parameters = { 'ol', 'OL' },
link = 'Open Library',
q = 'Q1201876',
label = 'OL',
mode = 'manual',
prefix = '//openlibrary.org/',
COinS = nil, -- no COinS for this id (needs thinking on implementation because /authors/books/works/OL)
separator = ' ',
encode = true,
custom_access = 'ol-access',
},
['OSTI'] = {
parameters = {'OSTI', 'osti'},
link = 'Office of Scientific and Technical Information',
q = 'Q2015776',
label = 'OSTI',
mode = 'external',
prefix = '//www.osti.gov/energycitations/product.biblio.jsp?osti_id=', -- protocol relative tested 2013-09-04
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
custom_access = 'osti-access',
},
['PMC'] = {
parameters = {'PMC', 'pmc'},
link = 'PubMed Central',
q = 'Q229883',
label = 'PMC',
mode = 'manual',
prefix = '//www.ncbi.nlm.nih.gov/pmc/articles/PMC',
suffix = " ",
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
access = 'free', -- free to read
},
['PMID'] = {
parameters = {'PMID', 'pmid'},
link = 'PubMed Identifier',
q = '',
label = 'PMID',
mode = 'manual',
prefix = '//www.ncbi.nlm.nih.gov/pubmed/',
COinS = 'info:pmid',
encode = false,
separator = ' ',
},
['RFC'] = {
parameters = {'RFC', 'rfc'},
link = 'Request for Comments',
q = 'Q212971',
label = 'RFC',
mode = 'external',
prefix = '//tools.ietf.org/html/rfc',
COinS = 'pre', -- use prefix value
encode = false,
separator = ' ',
access = 'free', -- free to read
},
['SSRN'] = {
parameters = {'SSRN', 'ssrn'},
link = 'Social Science Research Network',
q = 'Q7550801',
label = 'SSRN',
mode = 'manual',
prefix = '//ssrn.com/abstract=', -- protocol relative tested 2013-09-04
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
access = 'free', -- always free to read
},
['USENETID'] = {
parameters = {'message-id'},
link = 'Usenet',
q = 'Q193162',
label = 'Usenet:',
mode = 'manual',
prefix = 'news:',
encode = false,
COinS = 'pre', -- use prefix value
separator = ' ',
},
['ZBL'] = {
parameters = {'ZBL', 'zbl'},
link = 'Zentralblatt MATH',
q = 'Q190269',
label = 'Zbl',
mode = 'manual',
prefix = '//zbmath.org/?format=complete&q=an:',
COinS = 'pre', -- use prefix value
encode = true,
separator = ' ',
},
}
return {
aliases = aliases,
special_case_translation = special_case_translation,
defaults = defaults,
date_names = date_names,
error_conditions = error_conditions,
id_handlers = id_handlers,
keywords = keywords,
stripmarkers=stripmarkers,
invisible_chars = invisible_chars,
indic_script = indic_script,
maint_cats = maint_cats,
messages = messages,
presentation = presentation,
prop_cats = prop_cats,
script_lang_codes = script_lang_codes,
lang_code_remap = lang_code_remap,
lang_name_remap = lang_name_remap,
title_types = title_types,
uncategorized_namespaces = uncategorized_namespaces,
uncategorized_subpages = uncategorized_subpages,
templates_using_volume = templates_using_volume,
templates_using_issue = templates_using_issue,
templates_not_using_page = templates_not_using_page,
}
2os9ae25sh21xagyoko5umyxbzy4o5p
Module:Citation/CS1/Suggestions
828
3468
36683
2025-12-15T22:03:46Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--Please insert new suggestions in alphabetical order --The form is ['incorrect'] = 'correct', suggestions = { ['accessmonth'] = 'access-date', -- no longer supported by us, but still by citation templates mirrored in foreign WPs; can be emulated using 'access-date' ['accesso'] = 'access-date', -- Italian ['accessyear'] = 'access-date', -- no longer supported by us, but still by citation templates mirrored in foreign WPs; can be emulated using...'
36683
Scribunto
text/plain
--Please insert new suggestions in alphabetical order
--The form is ['incorrect'] = 'correct',
suggestions = {
['accessmonth'] = 'access-date', -- no longer supported by us, but still by citation templates mirrored in foreign WPs; can be emulated using 'access-date'
['accesso'] = 'access-date', -- Italian
['accessyear'] = 'access-date', -- no longer supported by us, but still by citation templates mirrored in foreign WPs; can be emulated using 'access-date'
['address'] = 'location',
['année'] = 'year', -- French
['año'] = 'year',
['año-original'] = 'orig-year',
['añoacceso'] = 'access-date', -- Spanish
['annoaccesso'] = 'access-date', --Italian
['annodiaccesso'] = 'access-date', --Italian
['apellido'] = 'last', -- Spanish
['archiv-datum'] = 'archive-date', -- German
['archive date'] = 'archive-date',
['archiv-url'] = 'archive-url', -- German
['archive url'] = 'archive-url', -- Spanish
['artist'] = 'others',
['auflage'] = 'edition', -- German
['auteur'] = 'author', -- French
['auther'] = 'author',
['author link'] = 'author-link', -- Polish
['author link2'] = 'author2-link', -- Polish
['autor'] = 'authors', -- German (singular and plural)
['autore'] = 'author', -- Italian
['autthor'] = 'author',
['band'] = 'volume', -- German
['chapter_title'] = 'chapter',
['cita'] = 'quote', -- Spanish
['citazione'] = 'quote', -- Italian
['coauthor'] = 'author',
['coauthors'] = 'author',
['coautores'] = 'author', -- Spanish
['coautori'] = 'author', -- Italian
['cognome'] = 'last', -- Italian
['consulté le'] = 'access-date', -- French
['czasopismo'] = 'journal', -- Polish
['data'] = 'date', -- Polish, Italian
['dataarchivio'] = 'archive-date', -- Italian
['data dostępu'] = 'access-date', -- Polish
['datum'] = 'date', -- German
['deadlink'] = 'dead-url',
['distributor'] = 'publisher',
['dnb'] = 'id', -- German (as 'id={{DNB-IDN|...}}') (not yet supported by us directly)
['éditeur'] = 'editor', -- French
['editon'] = 'edition',
['editoin'] = 'edition',
['editorial'] = 'publisher',
['en ligne le'] = 'archive-date', -- French
['encyclopædia'] = 'encyclopedia',
['enlaceautor'] = 'author-link', -- Spanish
['fecha'] = 'date', -- Spanish
['fechaacceso'] = 'access-date', -- Spanish
['fechaarchivo'] = 'archive-date', -- Spanish
['filetype'] = 'format',
['first 1'] = 'first1',
['foramt'] = 'format',
['formato'] = 'format', -- Spanish, Italian, Polish
['frist'] = 'first',
['herausgeber'] = 'editors', -- German (singular and plural)
['idioma'] = 'language', -- Spanish, Italian
['imię'] = 'first', -- Polish
['isbnistformalfalsch'] = 'ignore-isbn-error', -- German
['isnb'] = 'isbn',
['jahr'] = 'year', -- German
['kapitel'] = 'chapter', -- German
-- ['kommentar'] = 'comment', -- German (not yet supported by us)
['lang'] = 'language',
['langauge'] = 'language',
['langue'] = 'language', -- French
['last 1'] = 'last1',
['lieu'] = 'location', -- French
['lingua'] = 'language', -- Italian
['lire en ligne'] = 'url', -- French
['lizenznummer'] = 'id', -- German (as 'id=License ...')
['loaction'] = 'location',
['locatoin'] = 'location',
['lugar'] = 'location', -- Spanish
['miejsce'] = 'location', -- Polish
['miesiąc'] = 'date', -- Polish
['mois'] = 'date', -- French
['monat'] = 'date', -- German
-- ['name'] = 'author', -- 'name' is often erroneously used for 'title' and 'work' as well, so no suggestion is better than a wrong suggestion
['nazwisko'] = 'last', -- Polish
['nespaper'] = 'newspaper',
['newpaper'] = 'newspaper',
['news'] = 'newspaper',
['nom'] = 'last', -- French
['nom1'] = 'last1', -- French
['nombre'] = 'first', -- Spanish
['nome'] = 'first', -- Italian
['nummer'] = 'number', -- German
['obra'] = 'work', -- Spanish
['odpowiedzialność'] = 'agency', -- Polish
['offline'] = 'dead-url', -- German
['online'] = 'url', -- German (not a direct replacement, but can be emulated)
['opublikowany'] = 'agency', -- Polish
['opera'] = 'work', -- Italian
['origdate'] = 'orig-year',
['originaljahr'] = 'orig-year', -- German
['originalort'] = 'location', -- German (if 'ort' is specified at the same time, the latter should be put in 'publication-place')
['originalsprache'] = 'language', -- German
['originaltitel'] = 'title', -- German (if 'originaltitel' is specified, any possible contents of 'title' should be put in 'trans-title')
['ort'] = 'location', -- German
['other'] = 'others',
['oznaczenie'] = 'agency', -- Polish
['pagees'] = 'pages',
['página'] = 'page', -- Spanish, Italian
['páginas'] = 'pages', -- Spanish, Italian
['passage'] = 'pages', -- French
['pagina'] = 'pages', -- Italian
['pagine'] = 'pages', -- Italian
['périodique'] = 'publisher', -- French
['plublisher'] = 'publisher',
['pmcid'] = 'pmc',
['praca'] = 'work', -- Polish
['prénom'] = 'first', -- French
['prénom1'] = 'first1', -- French
['ps'] = 'postscript',
['pub'] = 'publisher',
['pulbication-place'] = 'publication-place',
['reihe'] = 'series', -- German
['retrieved'] = 'access-date',
['rok'] = 'date', -- Polish
['sammelwerk'] = 'work', -- German
['seiten'] = 'pages', -- German
['seria'] = 'series', -- Polish
['série'] = 'work', -- French *RECHECK*
['service'] = 'agency',
['sitioweb'] = 'website', --Spanish
['stron'] = 'page', -- Polish
['strony'] = 'pages', -- Polish
['spalten'] = 'at', -- German (not a direct replacement, but can be emulated)
['sprache'] = 'language', -- German
['suscripción'] = 'subscription', -- Spanish, Polish
['tag'] = 'date', -- German
['tile'] = 'title',
['tite'] = 'title',
['titel'] = 'title', -- German
['titel-p'] = 'title', -- German ('postscript=none' should be added as well)
['titelerg'] = 'contribution', -- German (not a direct replacement, but can be emulated)
['titolo'] = 'title', -- Spanish, Italian
['titre'] = 'title', -- French
['títle'] = 'title',
['título'] = 'title', -- Spanish
['transchapter'] = 'trans-chapter',
['translator'] = 'others',
['transtitle'] = 'trans-title',
['typ'] = 'author-mask', -- German (not a direct replacement, but the only valid argument 'typ=wl' can be emulated using 'author-mask')
['tytuł'] = 'title', -- Polish
['ubicación'] = 'location', -- Spanish
['urlarchivo'] = 'archive-url', -- Spanish
['urlarchivio'] = 'archive-url', -- Italian
['urn'] = 'id', -- German (as 'id={{URN|...}}') (not yet supported by us directly)
['übersetzer'] = 'translator', -- German (singular and plural)
['verlag'] = 'publisher', -- German
['vol'] = 'volume',
['volumen'] = 'volume', -- Spanish
['werk'] = 'work', -- German
['werkerg'] = 'contribution', -- German (not a direct replacement, but can be emulated)
['wkautore'] = 'author-link', -- Italian
['wolumin'] = 'volume', -- Polish
['wydanie'] = 'number', -- Polish
['wydawca'] = 'publisher', -- French
['zaprezentowany'] = 'publisher', -- French
['zdb'] = 'id', -- German (as 'id={{ZDB|...}}') (not yet supported by us directly)
['zitat'] = 'quote', -- German
['zugriff'] = 'access-date', -- German
}
--[[--------------------------< P A T T E R N S >--------------------------------------------------------------
Here we use Lua patterns to make suggestions. The form is ['pattern'] = 'correct',
Lua patterns are not regex though they are similar. The escape character is '%', not '\'. For more information about
lua patterns, see: Extension:Scribunto/Lua_reference_manual#Patterns
Patterns should probably always include the '^' and '$' anchor assertions to prevent a partial match from incorrectly
suggesting the wrong parameter name. For instance, the pattern 'a[utho]+r' matches 'author' in the no-longer-supported
parameter |author-separator= so the code suggests '|author='; the same pattern also matches the no-longer-supported
parameter |separator= (returning 'ator') so again, the code suggests '|author='.
One capture is supported, typically the enumerator from an enumerated parameter (the '6' in |author6=, etc.) The value from the
capture replaces $1 in the 'correct' value.
]]
local patterns = {
['^ac+es+ ?d?a?t?e?$'] = 'access-date',
['^a[utho]+r$'] = 'author',
['^a[utho]+r(%d+)$'] = 'author$1', -- enumerated
['^pu[blish]+ers?$'] = 'publisher',
}
return {suggestions = suggestions, patterns=patterns};
js6xozslbdgyigcumx6taxh33cortcl
Module:Citation/CS1/Whitelist
828
3469
36684
2025-12-15T22:04:45Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με ' --[[--------------------------< P A R A M E T E R S N O T S U P P O R T E D >------------------------------ This is a list of parameters that once were but now are no longer supported: ['albumlink'] = nil, -- unique alias of titlelink used by old cite AV media notes ['albumtype'] = nil, -- controled inappropriate functionality in the old cite AV media notes ['artist'] = nil, -- unique alias of others used by old cite AV media notes...'
36684
Scribunto
text/plain
--[[--------------------------< P A R A M E T E R S N O T S U P P O R T E D >------------------------------
This is a list of parameters that once were but now are no longer supported:
['albumlink'] = nil, -- unique alias of titlelink used by old cite AV media notes
['albumtype'] = nil, -- controled inappropriate functionality in the old cite AV media notes
['artist'] = nil, -- unique alias of others used by old cite AV media notes
['ARXIV'] = nil, -- not an initialization
['Author'] = nil, -- non-standard capitalization
['authorformat'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['author-format'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['author-name-separator'] = nil,-- primarily used to support Vancouver format which functionality now part of name-list-format
['author-separator'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['began'] = nil, -- module handles date ranges; cite episode and cite series
['BIBCODE'] = nil, -- not an initialization
['callsign'] = nil, -- cite interview removed
['call-sign'] = nil, -- cite interview removed
['chapterlink'] = nil, -- if ever necessary to link to a chapter article, |chapter= can be wikilinked
['chapter-link'] = nil, --
['city'] = nil, -- cite interview removed
['coauthor'] = nil, -- redundant to |authorn=; not made part of metadata
['coauthors'] = nil, -- redundant to |authorn=; not made part of metadata
['cointerviewers'] = nil, -- unique alias of others used by old cite interview
['day'] = nil, -- deprecated in {{citation/core}} and somehow undeprecated in Module:Citation/CS1 and now finally removed
['director'] = nil, -- unique alias of author used by old cite DVD-notes
['doi_brokendate'] = nil, -- alias of doi-broken-date
['doi_inactivedate'] = nil, -- alias of doi-inactive-date
['DoiBroken'] = nil, -- not used, non-standard captialization
['Editor'] = nil, -- non-standard capitalization
['editorformat'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['EditorSurname'] = nil, -- non-standard capitalization
['editor-format'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['EditorGiven'] = nil, -- non-standard capitalization
['editor-name-separator'] = nil,-- primarily used to support Vancouver format which functionality now part of name-list-format
['editor-separator'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['Embargo'] = nil, -- not used, non-standard capitalization
['ended'] = nil, -- module handles date ranges; cite episode and cite series
['month'] = nil, -- functionality supported by |date=
['name-separator'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
['notestitle'] = nil, -- unique alias of chapter used by old cite AV media notes
['PPrefix'] = nil, -- non-standard capitalization
['PPPrefix'] = nil, -- not used, non-standard capitalization
['pp-prefix'] = nil, -- not used, not documented
['p-prefix'] = nil, -- not used, not documented
['program'] = nil, -- cite interview removed
['publisherid'] = nil, -- unique alias of id used by old cite AV media notes and old cite DVD-notes
['Ref'] = nil, -- non-standard capitalization
['separator'] = nil, -- this functionality now provided by |mode=
['template doc demo'] = nil, -- alias of template doc demo
['titleyear'] = nil, -- unique alias of origyear used by old cite DVD-notes
['trans_chapter'] = nil, -- alias of trans-chapter
['trans_title'] = nil, -- alias of trans-title
['Author#'] = nil, -- non-standard capitalization
['authors#'] = nil, -- no need for multiple lists of author names
['Editor#'] = nil, -- non-standard capitalization
['editors#'] = nil, -- no need for multiple lists of editor names
['EditorGiven#'] = nil, -- non-standard capitalization
['EditorSurname#'] = nil, -- non-standard capitalization
]]
--[[--------------------------< S U P P O R T E D P A R A M E T E R S >--------------------------------------
Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
true - these parameters are valid and supported parameters
false - these parameters are deprecated but still supported
nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
]]
local whitelist = {}
local basic_arguments = {
['accessdate'] = true,
['access-date'] = true,
['agency'] = true,
['airdate'] = true,
['air-date'] = true,
['archivedate'] = true,
['archive-date'] = true,
['archive-format'] = true,
['archiveurl'] = true,
['archive-url'] = true,
['article'] = true,
['arxiv'] = true,
['asin'] = true,
['ASIN'] = true,
['asin-tld'] = true,
['ASIN-TLD'] = true,
['at'] = true,
['author'] = true,
['author-first'] = true,
['author-last'] = true,
['authorlink'] = true,
['author-link'] = true,
['authormask'] = true,
['author-mask'] = true,
['authors'] = true,
['bibcode'] = true,
['bibcode-access'] = true,
['biorxiv'] = true,
['booktitle'] = true,
['book-title'] = true,
['cartography'] = true,
['chapter'] = true,
['chapter-format'] = true,
['chapterurl'] = true,
['chapter-url'] = true,
['chapter-url-access'] = true,
['citeseerx'] = true,
['class'] = true, -- cite arxiv and arxiv identifiers
['collaboration'] = true,
['conference'] = true,
['conference-format'] = true,
['conferenceurl'] = true,
['conference-url'] = true,
['contribution'] = true,
['contribution-format'] = true,
['contributionurl'] = true,
['contribution-url'] = true,
['contributor'] = true,
['contributor-first'] = true,
['contributor-last'] = true,
['contributor-given'] = true,
['contributor-surname'] = true,
['contributor-link'] = true,
['contributor-mask'] = true,
['credits'] = true, -- cite episode, cite serial
['date'] = true,
['deadurl'] = true,
['dead-url'] = true,
['degree'] = true,
['department'] = true,
['df'] = true,
['dictionary'] = true,
['displayauthors'] = true,
['display-authors'] = true,
['displayeditors'] = true,
['display-editors'] = true,
['docket'] = true,
['doi'] = true,
['DOI'] = true,
['doi-access'] = true,
['doi-broken'] = true,
['doi-broken-date'] = true,
['doi-inactive-date'] = true,
['edition'] = true,
['editor'] = true,
['editor-first'] = true,
['editor-given'] = true,
['editor-last'] = true,
['editorlink'] = true,
['editor-link'] = true,
['editormask'] = true,
['editor-mask'] = true,
['editors'] = true,
['editor-surname'] = true,
['eissn'] = true,
['EISSN'] = true,
['embargo'] = true,
['encyclopaedia'] = true,
['encyclopedia'] = true,
['entry'] = true,
['episode'] = true, -- cite serial only TODO: make available to cite episode?
['episodelink'] = true, -- cite episode and cite serial
['episode-link'] = true, -- cite episode and cite serial
['eprint'] = true, -- cite arxiv and arxiv identifiers
['event'] = true,
['event-format'] = true,
['eventurl'] = true,
['event-url'] = true,
['first'] = true,
['format'] = true,
['given'] = true,
['hdl'] = true,
['HDL'] = true,
['hdl-access'] = true,
['host'] = true,
['id'] = true,
['ID'] = true,
['ignoreisbnerror'] = true,
['ignore-isbn-error'] = true,
['in'] = true,
['inset'] = true,
['institution'] = true,
['interviewer'] = true,
['interviewer-first'] = true,
['interviewer-last'] = true,
['interviewerlink'] = true,
['interviewer-link'] = true,
['interviewermask'] = true,
['interviewer-mask'] = true,
['interviewers'] = true,
['isbn'] = true,
['ISBN'] = true,
['isbn13'] = true,
['ISBN13'] = true,
['ismn'] = true,
['ISMN'] = true,
['issn'] = true,
['ISSN'] = true,
['issue'] = true,
['jfm'] = true,
['JFM'] = true,
['journal'] = true,
['jstor'] = true,
['JSTOR'] = true,
['jstor-access'] = true,
['language'] = true,
['last'] = true,
['lastauthoramp'] = true,
['last-author-amp'] = true,
['laydate'] = true,
['lay-date'] = true,
['laysource'] = true,
['lay-source'] = true,
['laysummary'] = true,
['lay-summary'] = true,
['lay-format'] = true,
['layurl'] = true,
['lay-url'] = true,
['lccn'] = true,
['LCCN'] = true,
['location'] = true,
['magazine'] = true,
['mailinglist'] = true, -- cite mailing list only
['mailing-list'] = true, -- cite mailing list only
['map'] = true, -- cite map only
['map-format'] = true, -- cite map only
['mapurl'] = true, -- cite map only
['map-url'] = true, -- cite map only
['medium'] = true,
['message-id'] = true, -- cite newsgroup
['minutes'] = true,
['mode'] = true,
['mr'] = true,
['MR'] = true,
['name-list-format'] = true,
['network'] = true,
['newsgroup'] = true,
['newspaper'] = true,
['nocat'] = true,
['no-cat'] = true,
['nopp'] = true,
['no-pp'] = true,
['notracking'] = true,
['no-tracking'] = true,
['number'] = true,
['oclc'] = true,
['OCLC'] = true,
['ol'] = true,
['OL'] = true,
['ol-access'] = true,
['origyear'] = true,
['orig-year'] = true,
['osti'] = true,
['OSTI'] = true,
['osti-access'] = true,
['others'] = true,
['p'] = true,
['page'] = true,
['pages'] = true,
['people'] = true,
['periodical'] = true,
['place'] = true,
['pmc'] = true,
['PMC'] = true,
['pmid'] = true,
['PMID'] = true,
['postscript'] = true,
['pp'] = true,
['publicationdate'] = true,
['publication-date'] = true,
['publicationplace'] = true,
['publication-place'] = true,
['publisher'] = true,
['quotation'] = true,
['quote'] = true,
['ref'] = true,
['registration'] = true,
['rfc'] = true,
['RFC'] = true,
['scale'] = true,
['script-chapter'] = true,
['script-title'] = true,
['season'] = true,
['section'] = true,
['section-format'] = true,
['sections'] = true, -- cite map only
['sectionurl'] = true,
['section-url'] = true,
['series'] = true,
['serieslink'] = true,
['series-link'] = true,
['seriesno'] = true,
['series-no'] = true,
['seriesnumber'] = true,
['series-number'] = true,
['series-separator'] = true,
['sheet'] = true, -- cite map only
['sheets'] = true, -- cite map only
['ssrn'] = true,
['SSRN'] = true,
['station'] = true,
['subject'] = true,
['subjectlink'] = true,
['subject-link'] = true,
['subscription'] = true,
['surname'] = true,
['template-doc-demo'] = true,
['time'] = true,
['timecaption'] = true,
['time-caption'] = true,
['title'] = true,
['titlelink'] = true,
['title-link'] = true,
['trans-chapter'] = true,
['trans-map'] = true,
['transcript'] = true,
['transcript-format'] = true,
['transcripturl'] = true,
['transcript-url'] = true,
['trans-title'] = true,
['translator'] = true,
['translator-first'] = true,
['translator-last'] = true,
['translator-given'] = true,
['translator-surname'] = true,
['translator-link'] = true,
['translator-mask'] = true,
['type'] = true,
['url'] = true,
['URL'] = true,
['url-access'] = true,
['url-status'] = true,
['vauthors'] = true,
['veditors'] = true,
['version'] = true,
['via'] = true,
['volume'] = true,
['website'] = true,
['work'] = true,
['year'] = true,
['zbl'] = true,
['ZBL'] = true,
['άρθρο'] = true,
['γλώσσα'] = true,
['εγκυκλοπαίδεια'] = true,
['έκδοση'] = true,
['εκδότης'] = true,
['επιμελητές'] = true,
['επιμελητής'] = true,
['έτος'] = true,
['επώνυμο'] = true,
['εφημερίδα'] = true,
['ημερομηνία'] = true,
['ιστοχώρος'] = true,
['κεφάλαιο'] = true,
['λεξικό'] = true,
['λήμμα'] = true,
['λήμμα-επιμελητή'] = true,
['λήμμα-μεταφραστή'] = true,
['λήμμα-συγγραφέα'] = true,
['λοιπά'] = true,
['λοιποί'] = true,
['μεταφραστής'] = true,
['όνομα'] = true,
['περιοδικό'] = true,
['πρώτη-έκδοση'] = true,
['σ'] = true,
['σειρά'] = true,
['σελίδα'] = true,
['σελίδες'] = true,
['σσ'] = true,
['συγγραφέας'] = true,
['συγγραφείς'] = true,
['τεύχος'] = true,
['τίτλος'] = true,
['τόμος'] = true,
['τόπος-έκδοσης'] = true,
['trans_title'] = true, --προσωρινά, μέχρι να αντικατασταθεί με bot (2018-09-30)
}
local numbered_arguments = {
['author#'] = true,
['author-first#'] = true,
['author#-first'] = true,
['author-last#'] = true,
['author#-last'] = true,
['author-link#'] = true,
['author#link'] = true,
['author#-link'] = true,
['authorlink#'] = true,
['author-mask#'] = true,
['author#mask'] = true,
['author#-mask'] = true,
['authormask#'] = true,
['contributor#'] = true,
['contributor-first#'] = true,
['contributor#-first'] = true,
['contributor-last#'] = true,
['contributor#-last'] = true,
['contributor-given#'] = true,
['contributor#-given'] = true,
['contributor-surname#'] = true,
['contributor#-surname'] = true,
['contributor-link#'] = true,
['contributor#-link'] = true,
['contributor-mask#'] = true,
['contributor#-mask'] = true,
['editor#'] = true,
['editor-first#'] = true,
['editor#-first'] = true,
['editor#-given'] = true,
['editor-given#'] = true,
['editor-last#'] = true,
['editor#-last'] = true,
['editor-link#'] = true,
['editor#link'] = true,
['editor#-link'] = true,
['editorlink#'] = true,
['editor-mask#'] = true,
['editor#mask'] = true,
['editor#-mask'] = true,
['editormask#'] = true,
['editor#-surname'] = true,
['editor-surname#'] = true,
['first#'] = true,
['given#'] = true,
['interviewer#'] = true,
['interviewer-first#'] = true,
['interviewer#-first'] = true,
['interviewer-last#'] = true,
['interviewer#-last'] = true,
['interviewer-link#'] = true,
['interviewer#-link'] = true,
['interviewer-mask#'] = true,
['interviewer#-mask'] = true,
['last#'] = true,
['subject#'] = true,
['subject-link#'] = true,
['subject#link'] = true,
['subject#-link'] = true,
['subjectlink#'] = true,
['surname#'] = true,
['translator#'] = true,
['translator-first#'] = true,
['translator#-first'] = true,
['translator-last#'] = true,
['translator#-last'] = true,
['translator-given#'] = true,
['translator#-given'] = true,
['translator-surname#'] = true,
['translator#-surname'] = true,
['translator-link#'] = true,
['translator#-link'] = true,
['translator-mask#'] = true,
['translator#-mask'] = true,
['επιμελητής#'] = true,
['επώνυμο#'] = true,
['επώνυμο-επιμελητή#'] = true,
['λήμμα-επιμελητή#'] = true,
['λήμμα-μεταφραστή#'] = true,
['λήμμα-συγγραφέα#'] = true,
['μεταφραστής#'] = true,
['όνομα#'] = true,
['όνομα-επιμελητή#'] = true,
['συγγραφέας#'] = true,
}
--[[--------------------------< C I T E A R X I V S U P P O R T E D P A R A M E T E R S >----------------
This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
parameters provided in a cite arxiv template. This method might be expanded to other templates being considered.
Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
true - these parameters are valid and supported parameters
false - these parameters are deprecated but still supported
nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
]]
--[[
This is a list of parameters that once were but now are no longer supported:
['ARXIV'] = nil, -- not an initialization
['version'] = nil, -- this is the cite arxiv parameter; |version= still supported by other cs1|2 templates
]]
local arxiv_basic_arguments = {
['arxiv'] = true,
['class'] = true, -- cite arxiv and arxiv identifiers
['eprint'] = true, -- cite arxiv and arxiv identifiers
}
--[[--------------------------< C I T E B I O R X I V S U P P O R T E D P A R A M E T E R S >------------
This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
parameters provided in a cite biorxiv template. This method might be expanded to other templates being considered.
Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
true - these parameters are valid and supported parameters
false - these parameters are deprecated but still supported
nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
]]
local biorxiv_basic_arguments = {
['biorxiv'] = true,
}
--[[--------------------------< C I T E C I T E S E E R X S U P P O R T E D P A R A M E T E R S >--------
This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
parameters provided in a cite citeseerx template. This method might be expanded to other templates being considered.
Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
true - these parameters are valid and supported parameters
false - these parameters are deprecated but still supported
nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
]]
local citeseerx_basic_arguments = {
['citeseerx'] = true,
}
--[[--------------------------< L I M I T E D S U P P O R T E D P A R A M E T E R S >----------------------
This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
parameters provided in a cite arxiv, cite biorxiv, or cite citeseerx templates. These parameters are common to
all three templates
Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
true - these parameters are valid and supported parameters
false - these parameters are deprecated but still supported
nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
]]
local limited_basic_arguments = {
['at'] = true,
['author'] = true,
['author-first'] = true,
['author-last'] = true,
['authorlink'] = true,
['author-link'] = true,
['authormask'] = true,
['author-mask'] = true,
['authors'] = true,
['collaboration'] = true,
['date'] = true,
['df'] = true,
['display-authors'] = true,
['first'] = true,
['given'] = true,
['language'] = true,
['last'] = true,
['lastauthoramp'] = true,
['last-author-amp'] = true,
['mode'] = true,
['name-list-format'] = true,
['nocat'] = true,
['no-cat'] = true,
['notracking'] = true,
['no-tracking'] = true,
['p'] = true,
['page'] = true,
['pages'] = true,
['postscript'] = true,
['pp'] = true,
['quotation'] = true,
['quote'] = true,
['ref'] = true,
['surname'] = true,
['template-doc-demo'] = true,
['title'] = true,
['url'] = true,
['URL'] = true,
['vauthors'] = true,
['year'] = true,
}
local limited_numbered_arguments = {
['author#'] = true,
['author-first#'] = true,
['author#-first'] = true,
['author-last#'] = true,
['author#-last'] = true,
['author-link#'] = true,
['author#link'] = true,
['author#-link'] = true,
['authorlink#'] = true,
['author-mask#'] = true,
['author#mask'] = true,
['author#-mask'] = true,
['authormask#'] = true,
['first#'] = true,
['given#'] = true,
['last#'] = true,
['surname#'] = true,
}
return {
basic_arguments = basic_arguments,
numbered_arguments = numbered_arguments,
limited_basic_arguments = limited_basic_arguments,
limited_numbered_arguments = limited_numbered_arguments,
arxiv_basic_arguments = arxiv_basic_arguments,
biorxiv_basic_arguments = biorxiv_basic_arguments,
citeseerx_basic_arguments = citeseerx_basic_arguments
};
fo9at35sttcmpjtl73hnb11tiyf68s3
Module:Citation/CS1/COinS
828
3470
36685
2025-12-15T22:05:37Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με ' local coins = {}; --[[--------------------------< F O R W A R D D E C L A R A T I O N S >-------------------------------------- ]] local is_set, in_array, remove_wiki_link; -- functions in Module:Citation/CS1/Utilities local cfg; -- table of configuration tables that are defined in Module:Citation/CS1/Configuration --[[--------------------------< S T R I P _ A P O S T R O P H E _ M A R K U P >----------------------...'
36685
Scribunto
text/plain
local coins = {};
--[[--------------------------< F O R W A R D D E C L A R A T I O N S >--------------------------------------
]]
local is_set, in_array, remove_wiki_link; -- functions in Module:Citation/CS1/Utilities
local cfg; -- table of configuration tables that are defined in Module:Citation/CS1/Configuration
--[[--------------------------< S T R I P _ A P O S T R O P H E _ M A R K U P >--------------------------------
Strip wiki italic and bold markup from argument so that it doesn't contaminate COinS metadata.
This function strips common patterns of apostrophe markup. We presume that editors who have taken the time to
markup a title have, as a result, provided valid markup. When they don't, some single apostrophes are left behind.
]]
local function strip_apostrophe_markup (argument)
if not is_set (argument) then return argument; end
if argument:find ( "''", 1, true ) == nil then -- Is there at least one double apostrophe? If not, exit.
return argument;
end
while true do
if argument:find ( "'''''", 1, true ) then -- bold italic (5)
argument=argument:gsub("%'%'%'%'%'", ""); -- remove all instances of it
elseif argument:find ( "''''", 1, true ) then -- italic start and end without content (4)
argument=argument:gsub("%'%'%'%'", "");
elseif argument:find ( "'''", 1, true ) then -- bold (3)
argument=argument:gsub("%'%'%'", "");
elseif argument:find ( "''", 1, true ) then -- italic (2)
argument=argument:gsub("%'%'", "");
else
break;
end
end
return argument; -- done
end
--[[--------------------------< M A K E _ C O I N S _ T I T L E >----------------------------------------------
Makes a title for COinS from Title and / or ScriptTitle (or any other name-script pairs)
Apostrophe markup (bold, italics) is stripped from each value so that the COinS metadata isn't corrupted with strings
of %27%27...
]]
local function make_coins_title (title, script)
if is_set (title) then
title = strip_apostrophe_markup (title); -- strip any apostrophe markup
else
title=''; -- if not set, make sure title is an empty string
end
if is_set (script) then
script = script:gsub ('^%l%l%s*:%s*', ''); -- remove language prefix if present (script value may now be empty string)
script = strip_apostrophe_markup (script); -- strip any apostrophe markup
else
script=''; -- if not set, make sure script is an empty string
end
if is_set (title) and is_set (script) then
script = ' ' .. script; -- add a space before we concatenate
end
return title .. script; -- return the concatenation
end
--[[--------------------------< E S C A P E _ L U A _ M A G I C _ C H A R S >----------------------------------
Returns a string where all of lua's magic characters have been escaped. This is important because functions like
string.gsub() treat their pattern and replace strings as patterns, not literal strings.
]]
local function escape_lua_magic_chars (argument)
argument = argument:gsub("%%", "%%%%"); -- replace % with %%
argument = argument:gsub("([%^%$%(%)%.%[%]%*%+%-%?])", "%%%1"); -- replace all other lua magic pattern characters
return argument;
end
--[[--------------------------< G E T _ C O I N S _ P A G E S >------------------------------------------------
Extract page numbers from external wikilinks in any of the |page=, |pages=, or |at= parameters for use in COinS.
]]
local function get_coins_pages (pages)
local pattern;
if not is_set (pages) then return pages; end -- if no page numbers then we're done
while true do
pattern = pages:match("%[(%w*:?//[^ ]+%s+)[%w%d].*%]"); -- pattern is the opening bracket, the url and following space(s): "[url "
if nil == pattern then break; end -- no more urls
pattern = escape_lua_magic_chars (pattern); -- pattern is not a literal string; escape lua's magic pattern characters
pages = pages:gsub(pattern, ""); -- remove as many instances of pattern as possible
end
pages = pages:gsub("[%[%]]", ""); -- remove the brackets
pages = pages:gsub("–", "-" ); -- replace endashes with hyphens
pages = pages:gsub("&%w+;", "-" ); -- and replace html entities (– etc.) with hyphens; do we need to replace numerical entities like   and the like?
return pages;
end
--[=[-------------------------< C O I N S _ R E P L A C E _ M A T H _ S T R I P M A R K E R >------------------
There are three options for math markup rendering that depend on the editor's math preference settings. These
settings are at [[Special:Preferences#mw-prefsection-rendering]] and are
PNG images
TeX source
MathML with SVG or PNG fallback
All three are heavy with html and css which doesn't belong in the metadata.
Without this function, the metadata saved in the raw wikitext contained the rendering determined by the settings
of the last editor to save the page.
This function gets the rendered form of an equation according to the editor's preference before the page is saved. It
then searches the rendering for the text equivalent of the rendered equation and replaces the rendering with that so
that the page is saved without extraneous html/css markup and with a reasonably readable text form of the equation.
When a replacement is made, this function returns true and the value with replacement; otherwise false and the intital
value. To replace multipe equations it is necesary to call this function from within a loop.
]=]
local function coins_replace_math_stripmarker (value)
local stripmarker = cfg.stripmarkers['math'];
local rendering = value:match (stripmarker); -- is there a math stripmarker
if not rendering then -- when value doesn't have a math stripmarker, abandon this test
return false, value;
end
rendering = mw.text.unstripNoWiki (rendering); -- convert stripmarker into rendered value (or nil? ''? when math render error)
if rendering:match ('alt="[^"]+"') then -- if PNG math option
rendering = rendering:match ('alt="([^"]+)"'); -- extract just the math text
elseif rendering:match ('$%s+.+%s+%$') then -- if TeX math option; $ is legit character that is escapes as \$
rendering = rendering:match ('$%s+(.+)%s+%$') -- extract just the math text
elseif rendering:match ('<annotation[^>]+>.+</annotation>') then -- if MathML math option
rendering = rendering:match ('<annotation[^>]+>(.+)</annotation>') -- extract just the math text
else
return false, value; -- had math stripmarker but not one of the three defined forms
end
return true, value:gsub (stripmarker, rendering, 1);
end
--[[--------------------------< C O I N S _ C L E A N U P >----------------------------------------------------
Cleanup parameter values for the metadata by removing or replacing invisible characters and certain html entities.
2015-12-10: there is a bug in mw.text.unstripNoWiki (). It replaces math stripmarkers with the appropriate content
when it shouldn't. See https://phabricator.wikimedia.org/T121085 and Wikipedia_talk:Lua#stripmarkers_and_mw.text.unstripNoWiki.28.29
TODO: move the replacement patterns and replacement values into a table in /Configuration similar to the invisible
characters table?
]]
local function coins_cleanup (value)
local replaced = true; -- default state to get the do loop running
while replaced do -- loop until all math stripmarkers replaced
replaced, value = coins_replace_math_stripmarker (value); -- replace math stripmarker with text representation of the equation
end
value = value:gsub (cfg.stripmarkers['math'], "MATH RENDER ERROR"); -- one or more couldn't be replaced; insert vague error message
value = mw.text.unstripNoWiki (value); -- replace nowiki stripmarkers with their content
value = value:gsub ('<span class="nowrap" style="padding%-left:0%.1em;">'(s?)</span>', "'%1"); -- replace {{'}} or {{'s}} with simple apostrophe or apostrophe-s
value = value:gsub (' ', ' '); -- replace entity with plain space
value = value:gsub ('\226\128\138', ' '); -- replace hair space with plain space
if not mw.ustring.find (value, cfg.indic_script) then -- don't remove zero width joiner characters from indic script
value = value:gsub ('‍', ''); -- remove ‍ entities
value = mw.ustring.gsub (value, '[\226\128\141\226\128\139\194\173]', ''); -- remove zero-width joiner, zero-width space, soft hyphen
end
value = value:gsub ('[\009\010\013]', ' '); -- replace horizontal tab, line feed, carriage return with plain space
return value;
end
--[[--------------------------< C O I N S >--------------------------------------------------------------------
COinS metadata (see <http://ocoins.info/>) allows automated tools to parse the citation information.
]]
local function COinS(data, class)
if 'table' ~= type(data) or nil == next(data) then
return '';
end
for k, v in pairs (data) do -- spin through all of the metadata parameter values
if 'ID_list' ~= k and 'Authors' ~= k then -- except the ID_list and Author tables (author nowiki stripmarker done when Author table processed)
data[k] = coins_cleanup (v);
end
end
local ctx_ver = "Z39.88-2004";
-- treat table strictly as an array with only set values.
local OCinSoutput = setmetatable( {}, {
__newindex = function(self, key, value)
if is_set(value) then
rawset( self, #self+1, table.concat{ key, '=', mw.uri.encode( remove_wiki_link( value ) ) } );
end
end
});
if in_array (class, {'arxiv', 'biorxiv', 'citeseerx', 'journal', 'news'}) or (in_array (class, {'conference', 'interview', 'map', 'press release', 'web'}) and is_set(data.Periodical)) or
('citation' == class and is_set(data.Periodical) and not is_set (data.Encyclopedia)) then
OCinSoutput.rft_val_fmt = "info:ofi/fmt:kev:mtx:journal"; -- journal metadata identifier
if in_array (class, {'arxiv', 'biorxiv', 'citeseerx'}) then -- set genre according to the type of citation template we are rendering
OCinSoutput["rft.genre"] = "preprint"; -- cite arxiv, cite biorxiv, cite citeseerx
elseif 'conference' == class then
OCinSoutput["rft.genre"] = "conference"; -- cite conference (when Periodical set)
elseif 'web' == class then
OCinSoutput["rft.genre"] = "unknown"; -- cite web (when Periodical set)
else
OCinSoutput["rft.genre"] = "article"; -- journal and other 'periodical' articles
end
OCinSoutput["rft.jtitle"] = data.Periodical; -- journal only
OCinSoutput["rft.atitle"] = data.Title; -- 'periodical' article titles
-- these used only for periodicals
OCinSoutput["rft.ssn"] = data.Season; -- keywords: winter, spring, summer, fall
OCinSoutput["rft.chron"] = data.Chron; -- free-form date components
OCinSoutput["rft.volume"] = data.Volume; -- does not apply to books
OCinSoutput["rft.issue"] = data.Issue;
OCinSoutput["rft.pages"] = data.Pages; -- also used in book metadata
elseif 'thesis' ~= class then -- all others except cite thesis are treated as 'book' metadata; genre distinguishes
OCinSoutput.rft_val_fmt = "info:ofi/fmt:kev:mtx:book"; -- book metadata identifier
if 'report' == class or 'techreport' == class then -- cite report and cite techreport
OCinSoutput["rft.genre"] = "report";
elseif 'conference' == class then -- cite conference when Periodical not set
OCinSoutput["rft.genre"] = "conference";
OCinSoutput["rft.atitle"] = data.Chapter; -- conference paper as chapter in proceedings (book)
elseif in_array (class, {'book', 'citation', 'encyclopaedia', 'interview', 'map'}) then
if is_set (data.Chapter) then
OCinSoutput["rft.genre"] = "bookitem";
OCinSoutput["rft.atitle"] = data.Chapter; -- book chapter, encyclopedia article, interview in a book, or map title
else
if 'map' == class or 'interview' == class then
OCinSoutput["rft.genre"] = 'unknown'; -- standalone map or interview
else
OCinSoutput["rft.genre"] = 'book'; -- book and encyclopedia
end
end
else --{'audio-visual', 'AV-media-notes', 'DVD-notes', 'episode', 'interview', 'mailinglist', 'map', 'newsgroup', 'podcast', 'press release', 'serial', 'sign', 'speech', 'web'}
OCinSoutput["rft.genre"] = "unknown";
end
OCinSoutput["rft.btitle"] = data.Title; -- book only
OCinSoutput["rft.place"] = data.PublicationPlace; -- book only
OCinSoutput["rft.series"] = data.Series; -- book only
OCinSoutput["rft.pages"] = data.Pages; -- book, journal
OCinSoutput["rft.edition"] = data.Edition; -- book only
OCinSoutput["rft.pub"] = data.PublisherName; -- book and dissertation
else -- cite thesis
OCinSoutput.rft_val_fmt = "info:ofi/fmt:kev:mtx:dissertation"; -- dissertation metadata identifier
OCinSoutput["rft.title"] = data.Title; -- dissertation (also patent but that is not yet supported)
OCinSoutput["rft.degree"] = data.Degree; -- dissertation only
OCinSoutput['rft.inst'] = data.PublisherName; -- book and dissertation
end
-- and now common parameters (as much as possible)
OCinSoutput["rft.date"] = data.Date; -- book, journal, dissertation
for k, v in pairs( data.ID_list ) do -- what to do about these? For now assume that they are common to all?
-- if k == 'ISBN' then v = clean_isbn( v ) end
if k == 'ISBN' then v = v:gsub( "[^-0-9X]", "" ); end
local id = cfg.id_handlers[k].COinS;
if string.sub( id or "", 1, 4 ) == 'info' then -- for ids that are in the info:registry
OCinSoutput["rft_id"] = table.concat{ id, "/", v };
elseif string.sub (id or "", 1, 3 ) == 'rft' then -- for isbn, issn, eissn, etc that have defined COinS keywords
OCinSoutput[ id ] = v;
elseif id then -- when cfg.id_handlers[k].COinS is not nil
OCinSoutput["rft_id"] = table.concat{ cfg.id_handlers[k].prefix, v }; -- others; provide a url
end
end
--[[
for k, v in pairs( data.ID_list ) do -- what to do about these? For now assume that they are common to all?
local id, value = cfg.id_handlers[k].COinS;
if k == 'ISBN' then value = clean_isbn( v ); else value = v; end
if string.sub( id or "", 1, 4 ) == 'info' then
OCinSoutput["rft_id"] = table.concat{ id, "/", v };
else
OCinSoutput[ id ] = value;
end
end
]]
local last, first;
for k, v in ipairs( data.Authors ) do
last, first = coins_cleanup (v.last), coins_cleanup (v.first or ''); -- replace any nowiki strip markers, non-printing or invisible characers
if k == 1 then -- for the first author name only
if is_set(last) and is_set(first) then -- set these COinS values if |first= and |last= specify the first author name
OCinSoutput["rft.aulast"] = last; -- book, journal, dissertation
OCinSoutput["rft.aufirst"] = first; -- book, journal, dissertation
elseif is_set(last) then
OCinSoutput["rft.au"] = last; -- book, journal, dissertation -- otherwise use this form for the first name
end
else -- for all other authors
if is_set(last) and is_set(first) then
OCinSoutput["rft.au"] = table.concat{ last, ", ", first }; -- book, journal, dissertation
elseif is_set(last) then
OCinSoutput["rft.au"] = last; -- book, journal, dissertation
end
end
end
OCinSoutput.rft_id = data.URL;
OCinSoutput.rfr_id = table.concat{ "info:sid/", mw.site.server:match( "[^/]*$" ), ":", data.RawPage };
OCinSoutput = setmetatable( OCinSoutput, nil );
-- sort with version string always first, and combine.
--table.sort( OCinSoutput );
table.insert( OCinSoutput, 1, "ctx_ver=" .. ctx_ver ); -- such as "Z39.88-2004"
return table.concat(OCinSoutput, "&");
end
--[[--------------------------< S E T _ S E L E C T E D _ M O D U L E S >--------------------------------------
Sets local cfg table and imported functions table to same (live or sandbox) as that used by the other modules.
]]
local function set_selected_modules (cfg_table_ptr, utilities_page_ptr)
cfg = cfg_table_ptr;
is_set = utilities_page_ptr.is_set; -- import functions from select Module:Citation/CS1/Utilities module
in_array = utilities_page_ptr.in_array;
remove_wiki_link = utilities_page_ptr.remove_wiki_link;
end
return {
make_coins_title = make_coins_title,
get_coins_pages = get_coins_pages,
COinS = COinS,
set_selected_modules = set_selected_modules,
}
coep8us87urtrppcmr74si4z4ldv4gs
Module:Citation/CS1
828
3471
36686
2025-12-15T22:06:51Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με ' local cs1 ={}; --[[--------------------------< F O R W A R D D E C L A R A T I O N S >-------------------------------------- ]] local dates, year_date_check, reformat_dates, date_hyphen_to_dash, -- functions in Module:Citation/CS1/Date_validation date_name_xlate local is_set, in_array, substitute, error_comment, set_error, select_one, -- functions in Module:Citation/CS1/Utilities add_maint_cat, wrap_style, safe_for_italics, is_wikilink,...'
36686
Scribunto
text/plain
local cs1 ={};
--[[--------------------------< F O R W A R D D E C L A R A T I O N S >--------------------------------------
]]
local dates, year_date_check, reformat_dates, date_hyphen_to_dash, -- functions in Module:Citation/CS1/Date_validation
date_name_xlate
local is_set, in_array, substitute, error_comment, set_error, select_one, -- functions in Module:Citation/CS1/Utilities
add_maint_cat, wrap_style, safe_for_italics, is_wikilink, make_wikilink;
local z ={}; -- tables in Module:Citation/CS1/Utilities
local extract_ids, extract_id_access_levels, build_id_list, is_embargoed; -- functions in Module:Citation/CS1/Identifiers
local make_coins_title, get_coins_pages, COinS; -- functions in Module:Citation/CS1/COinS
local cfg = {}; -- table of configuration tables that are defined in Module:Citation/CS1/Configuration
local whitelist = {}; -- table of tables listing valid template parameter names; defined in Module:Citation/CS1/Whitelist
--[[--------------------------< P A G E S C O P E V A R I A B L E S >--------------------------------------
delare variables here that have page-wide scope that are not brought in from other modules; thatare created here
and used here
]]
local added_deprecated_cat; -- boolean flag so that the category is added only once
local added_prop_cats = {}; -- list of property categories that have been added to z.properties_cats
local added_vanc_errs; -- boolean flag so we only emit one Vancouver error / category
local Frame; -- holds the module's frame table
--[[--------------------------< F I R S T _ S E T >------------------------------------------------------------
Locates and returns the first set value in a table of values where the order established in the table,
left-to-right (or top-to-bottom), is the order in which the values are evaluated. Returns nil if none are set.
This version replaces the original 'for _, val in pairs do' and a similar version that used ipairs. With the pairs
version the order of evaluation could not be guaranteed. With the ipairs version, a nil value would terminate
the for-loop before it reached the actual end of the list.
]]
local function first_set (list, count)
local i = 1;
while i <= count do -- loop through all items in list
if is_set( list[i] ) then
return list[i]; -- return the first set list member
end
i = i + 1; -- point to next
end
end
--[[--------------------------< A D D _ P R O P _ C A T >--------------------------------------------------------
Adds a category to z.properties_cats using names from the configuration file with additional text if any.
foreign_lang_source and foreign_lang_source_2 keys have a language code appended to them so that multiple languages
may be categorized but multiples of the same language are not categorized.
added_prop_cats is a table declared in page scope variables above
]]
local function add_prop_cat (key, arguments)
if not added_prop_cats [key] then
added_prop_cats [key] = true; -- note that we've added this category
key = key:gsub ('(foreign_lang_source_?2?)%a%a%a?', '%1'); -- strip lang code from keyname
table.insert( z.properties_cats, substitute (cfg.prop_cats [key], arguments)); -- make name then add to table
end
end
--[[--------------------------< A D D _ V A N C _ E R R O R >----------------------------------------------------
Adds a single Vancouver system error message to the template's output regardless of how many error actually exist.
To prevent duplication, added_vanc_errs is nil until an error message is emitted.
added_vanc_errs is a boolean declared in page scope variables above
]]
local function add_vanc_error (source)
if not added_vanc_errs then
added_vanc_errs = true; -- note that we've added this category
table.insert( z.message_tail, { set_error( 'vancouver', {source}, true ) } );
end
end
--[[--------------------------< I S _ S C H E M E >------------------------------------------------------------
does this thing that purports to be a uri scheme seem to be a valid scheme? The scheme is checked to see if it
is in agreement with http://tools.ietf.org/html/std66#section-3.1 which says:
Scheme names consist of a sequence of characters beginning with a
letter and followed by any combination of letters, digits, plus
("+"), period ("."), or hyphen ("-").
returns true if it does, else false
]]
local function is_scheme (scheme)
return scheme and scheme:match ('^%a[%a%d%+%.%-]*:'); -- true if scheme is set and matches the pattern
end
--[=[-------------------------< I S _ D O M A I N _ N A M E >--------------------------------------------------
Does this thing that purports to be a domain name seem to be a valid domain name?
Syntax defined here: http://tools.ietf.org/html/rfc1034#section-3.5
BNF defined here: https://tools.ietf.org/html/rfc4234
Single character names are generally reserved; see https://tools.ietf.org/html/draft-ietf-dnsind-iana-dns-01#page-15;
see also [[Single-letter second-level domain]]
list of tlds: https://www.iana.org/domains/root/db
rfc952 (modified by rfc 1123) requires the first and last character of a hostname to be a letter or a digit. Between
the first and last characters the name may use letters, digits, and the hyphen.
Also allowed are IPv4 addresses. IPv6 not supported
domain is expected to be stripped of any path so that the last character in the last character of the tld. tld
is two or more alpha characters. Any preceding '//' (from splitting a url with a scheme) will be stripped
here. Perhaps not necessary but retained incase it is necessary for IPv4 dot decimal.
There are several tests:
the first character of the whole domain name including subdomains must be a letter or a digit
internationalized domain name (ascii characters with .xn-- ASCII Compatible Encoding (ACE) prefix xn-- in the tld) see https://tools.ietf.org/html/rfc3490
single-letter/digit second-level domains in the .org and .cash TLDs
q, x, and z SL domains in the .com TLD
i and q SL domains in the .net TLD
single-letter SL domains in the ccTLDs (where the ccTLD is two letters)
two-character SL domains in gTLDs (where the gTLD is two or more letters)
three-plus-character SL domains in gTLDs (where the gTLD is two or more letters)
IPv4 dot-decimal address format; TLD not allowed
returns true if domain appears to be a proper name and tld or IPv4 address, else false
]=]
local function is_domain_name (domain)
if not domain then
return false; -- if not set, abandon
end
domain = domain:gsub ('^//', ''); -- strip '//' from domain name if present; done here so we only have to do it once
if not domain:match ('^[%a%d]') then -- first character must be letter or digit
return false;
end
-- Do most common case first
if domain:match ('%f[%a%d][%a%d][%a%d%-]+[%a%d]%.%a%a+$') then -- three or more character hostname.hostname or hostname.tld
return true;
elseif domain:match ('%f[%a%d][%a%d][%a%d%-]+[%a%d]%.xn%-%-[%a%d]+$') then -- internationalized domain name with ACE prefix
return true;
elseif domain:match ('%f[%a%d][%a%d]%.cash$') then -- one character/digit .cash hostname
return true;
elseif domain:match ('%f[%a%d][%a%d]%.org$') then -- one character/digit .org hostname
return true;
elseif domain:match ('%f[%a][qxz]%.com$') then -- assigned one character .com hostname (x.com times out 2015-12-10)
return true;
elseif domain:match ('%f[%a][iq]%.net$') then -- assigned one character .net hostname (q.net registered but not active 2015-12-10)
return true;
elseif domain:match ('%f[%a%d][%a%d]%.%a%a$') then -- one character hostname and cctld (2 chars)
return true;
elseif domain:match ('%f[%a%d][%a%d][%a%d]%.%a%a+$') then -- two character hostname and tld
return true;
elseif domain:match ('^%d%d?%d?%.%d%d?%d?%.%d%d?%d?%.%d%d?%d?') then -- IPv4 address
return true;
else
return false;
end
end
--[[--------------------------< I S _ U R L >------------------------------------------------------------------
returns true if the scheme and domain parts of a url appear to be a valid url; else false.
This function is the last step in the validation process. This function is separate because there are cases that
are not covered by split_url(), for example is_parameter_ext_wikilink() which is looking for bracketted external
wikilinks.
]]
local function is_url (scheme, domain)
if is_set (scheme) then -- if scheme is set check it and domain
return is_scheme (scheme) and is_domain_name (domain);
else
return is_domain_name (domain); -- scheme not set when url is protocol relative
end
end
--[[--------------------------< S P L I T _ U R L >------------------------------------------------------------
Split a url into a scheme, authority indicator, and domain.
First remove Fully Qualified Domain Name terminator (a dot following tld) (if any) and any path(/), query(?) or fragment(#).
If protocol relative url, return nil scheme and domain else return nil for both scheme and domain.
When not protocol relative, get scheme, authority indicator, and domain. If there is an authority indicator (one
or more '/' characters immediately following the scheme's colon), make sure that there are only 2.
Strip off any port and path;
]]
local function split_url (url_str)
local scheme, authority, domain;
url_str = url_str:gsub ('([%a%d])%.?[/%?#].*$', '%1'); -- strip FQDN terminator and path(/), query(?), fragment (#) (the capture prevents false replacement of '//')
if url_str:match ('^//%S*') then -- if there is what appears to be a protocol relative url
domain = url_str:match ('^//(%S*)')
elseif url_str:match ('%S-:/*%S+') then -- if there is what appears to be a scheme, optional authority indicator, and domain name
scheme, authority, domain = url_str:match ('(%S-:)(/*)(%S+)'); -- extract the scheme, authority indicator, and domain portions
authority = authority:gsub ('//', '', 1); -- replace place 1 pair of '/' with nothing;
if is_set(authority) then -- if anything left (1 or 3+ '/' where authority should be) then
return scheme; -- return scheme only making domain nil which will cause an error message
end
domain = domain:gsub ('(%a):%d+', '%1'); -- strip port number if present
end
return scheme, domain;
end
--[[--------------------------< L I N K _ P A R A M _ O K >---------------------------------------------------
checks the content of |title-link=, |series-link=, |author-link= etc for properly formatted content: no wikilinks, no urls
Link parameters are to hold the title of a wikipedia article so none of the WP:TITLESPECIALCHARACTERS are allowed:
# < > [ ] | { } _
except the underscore which is used as a space in wiki urls and # which is used for section links
returns false when the value contains any of these characters.
When there are no illegal characters, this function returns TRUE if value DOES NOT appear to be a valid url (the
|<param>-link= parameter is ok); else false when value appears to be a valid url (the |<param>-link= parameter is NOT ok).
]]
local function link_param_ok (value)
local scheme, domain;
if value:find ('[<>%[%]|{}]') then -- if any prohibited characters
return false;
end
scheme, domain = split_url (value); -- get scheme or nil and domain or nil from url;
return not is_url (scheme, domain); -- return true if value DOES NOT appear to be a valid url
end
--[[--------------------------< L I N K _ T I T L E _ O K >---------------------------------------------------
Use link_param_ok() to validate |<param>-link= value and its matching |<title>= value.
|<title>= may be wikilinked but not when |<param>-link= has a value. This function emits an error message when
that condition exists
]]
local function link_title_ok (link, lorig, title, torig)
local orig;
if is_set (link) then -- don't bother if <param>-link doesn't have a value
if not link_param_ok (link) then -- check |<param>-link= markup
orig = lorig; -- identify the failing link parameter
elseif title:find ('%[%[') then -- check |title= for wikilink markup
orig = torig; -- identify the failing |title= parameter
end
end
if is_set (orig) then
table.insert( z.message_tail, { set_error( 'bad_paramlink', orig)}); -- url or wikilink in |title= with |title-link=;
end
end
--[[--------------------------< C H E C K _ U R L >------------------------------------------------------------
Determines whether a URL string appears to be valid.
First we test for space characters. If any are found, return false. Then split the url into scheme and domain
portions, or for protocol relative (//example.com) urls, just the domain. Use is_url() to validate the two
portions of the url. If both are valid, or for protocol relative if domain is valid, return true, else false.
Because it is different from a standard url, and because this module used external_link() to make external links
that work for standard and news: links, we validate newsgroup names here. The specification for a newsgroup name
is at https://tools.ietf.org/html/rfc5536#section-3.1.4
]]
local function check_url( url_str )
if nil == url_str:match ("^%S+$") then -- if there are any spaces in |url=value it can't be a proper url
return false;
end
local scheme, domain;
scheme, domain = split_url (url_str); -- get scheme or nil and domain or nil from url;
if 'news:' == scheme then -- special case for newsgroups
return domain:match('^[%a%d%+%-_]+%.[%a%d%+%-_%.]*[%a%d%+%-_]$');
end
return is_url (scheme, domain); -- return true if value appears to be a valid url
end
--[=[-------------------------< I S _ P A R A M E T E R _ E X T _ W I K I L I N K >----------------------------
Return true if a parameter value has a string that begins and ends with square brackets [ and ] and the first
non-space characters following the opening bracket appear to be a url. The test will also find external wikilinks
that use protocol relative urls. Also finds bare urls.
The frontier pattern prevents a match on interwiki links which are similar to scheme:path urls. The tests that
find bracketed urls are required because the parameters that call this test (currently |title=, |chapter=, |work=,
and |publisher=) may have wikilinks and there are articles or redirects like '//Hus' so, while uncommon, |title=[[//Hus]]
is possible as might be [[en://Hus]].
]=]
local function is_parameter_ext_wikilink (value)
local scheme, domain;
if value:match ('%f[%[]%[%a%S*:%S+.*%]') then -- if ext wikilink with scheme and domain: [xxxx://yyyyy.zzz]
scheme, domain = split_url (value:match ('%f[%[]%[(%a%S*:%S+).*%]'));
elseif value:match ('%f[%[]%[//%S+.*%]') then -- if protocol relative ext wikilink: [//yyyyy.zzz]
scheme, domain = split_url (value:match ('%f[%[]%[(//%S+).*%]'));
elseif value:match ('%a%S*:%S+') then -- if bare url with scheme; may have leading or trailing plain text
scheme, domain = split_url (value:match ('(%a%S*:%S+)'));
elseif value:match ('//%S+') then -- if protocol relative bare url: //yyyyy.zzz; may have leading or trailing plain text
scheme, domain = split_url (value:match ('(//%S+)')); -- what is left should be the domain
else
return false; -- didn't find anything that is obviously a url
end
return is_url (scheme, domain); -- return true if value appears to be a valid url
end
--[[-------------------------< C H E C K _ F O R _ U R L >-----------------------------------------------------
loop through a list of parameters and their values. Look at the value and if it has an external link, emit an error message.
]]
local function check_for_url (parameter_list)
local error_message = '';
for k, v in pairs (parameter_list) do -- for each parameter in the list
if is_parameter_ext_wikilink (v) then -- look at the value; if there is a url add an error message
if is_set(error_message) then -- once we've added the first portion of the error message ...
error_message=error_message .. ", "; -- ... add a comma space separator
end
error_message=error_message .. "|" .. k .. "="; -- add the failed parameter
end
end
if is_set (error_message) then -- done looping, if there is an error message, display it
table.insert( z.message_tail, { set_error( 'param_has_ext_link', {error_message}, true ) } );
end
end
--[[--------------------------< S A F E _ F O R _ U R L >------------------------------------------------------
Escape sequences for content that will be used for URL descriptions
]]
local function safe_for_url( str )
if str:match( "%[%[.-%]%]" ) ~= nil then
table.insert( z.message_tail, { set_error( 'wikilink_in_url', {}, true ) } );
end
return str:gsub( '[%[%]\n]', {
['['] = '[',
[']'] = ']',
['\n'] = ' ' } );
end
--[[--------------------------< E X T E R N A L _ L I N K >----------------------------------------------------
Format an external link with error checking
]]
local function external_link( URL, label, source, access)
local error_str = "";
local domain;
local path;
local base_url;
if not is_set( label ) then
label = URL;
if is_set( source ) then
error_str = set_error( 'bare_url_missing_title', { wrap_style ('parameter', source) }, false, " " );
else
error( cfg.messages["bare_url_no_origin"] );
end
end
if not check_url( URL ) then
error_str = set_error( 'bad_url', {wrap_style ('parameter', source)}, false, " " ) .. error_str;
end
domain, path = URL:match ('^([/%.%-%+:%a%d]+)([/%?#].*)$'); -- split the url into scheme plus domain and path
if path then -- if there is a path portion
path = path:gsub ('[%[%]]', {['[']='%5b',[']']='%5d'}); -- replace '[' and ']' with their percent encoded values
URL=domain..path; -- and reassemble
end
if is_set (access) then -- access level (subscription, registration, limited)
label = safe_for_url (label); -- replace square brackets and newlines
base_url = table.concat ( -- assemble external link with access signal
{
'<span class="plainlinks">[', -- opening css and url markup
URL, -- the url
' ', -- the required space
label,
'<span style="padding-left:0.15em">', -- signal spacing css
cfg.presentation[access], -- the appropriate icon
'</span>', -- close signal spacing span
']</span>' -- close url markup and plain links span
});
else
base_url = table.concat({ "[", URL, " ", safe_for_url( label ), "]" }); -- no signal markup
end
return table.concat({ base_url, error_str });
end
--[[--------------------------< D E P R E C A T E D _ P A R A M E T E R >--------------------------------------
Categorize and emit an error message when the citation contains one or more deprecated parameters. The function includes the
offending parameter name to the error message. Only one error message is emitted regardless of the number of deprecated
parameters in the citation.
added_deprecated_cat is a boolean declared in page scope variables above
]]
local function deprecated_parameter(name)
if not added_deprecated_cat then
added_deprecated_cat = true; -- note that we've added this category
table.insert( z.message_tail, { set_error( 'deprecated_params', {name}, true ) } ); -- add error message
end
end
--[=[-------------------------< K E R N _ Q U O T E S >--------------------------------------------------------
Apply kerning to open the space between the quote mark provided by the Module and a leading or trailing quote
mark contained in a |title= or |chapter= parameter's value.
This function will positive kern either single or double quotes:
"'Unkerned title with leading and trailing single quote marks'"
" 'Kerned title with leading and trailing single quote marks' " (in real life the kerning isn't as wide as this example)
Double single quotes (italic or bold wikimarkup) are not kerned.
Replaces unicode quotemarks in plain text or in the label portion of a [[L|D]] style wikilink with typewriter
quote marks regardless of the need for kerning. Unicode quote marks are not replaced in simple [[D]] wikilinks.
Call this function for chapter titles, for website titles, etc; not for book titles.
]=]
local function kern_quotes (str)
local cap='';
local cap2='';
local wl_type, label, link;
wl_type, label, link = is_wikilink (str); -- wl_type is: 0, no wl (text in label variable); 1, [[D]]; 2, [[L|D]]
if 1 == wl_type then -- [[D]] simple wikilink with or without quote marks
if mw.ustring.match (str, '%[%[[\"“”\'‘’].+[\"“”\'‘’]%]%]') then -- leading and trailing quote marks
str = substitute (cfg.presentation['kern-wl-both'], str);
elseif mw.ustring.match (str, '%[%[[\"“”\'‘’].+%]%]') then -- leading quote marks
str = substitute (cfg.presentation['kern-wl-left'], str);
elseif mw.ustring.match (str, '%[%[.+[\"“”\'‘’]%]%]') then -- trailing quote marks
str = substitute (cfg.presentation['kern-wl-right'], str);
end
else -- plain text or [[L|D]]; text in label variable
label= mw.ustring.gsub (label, '[“”]', '\"'); -- replace “” (U+201C & U+201D) with " (typewriter double quote mark)
label= mw.ustring.gsub (label, '[‘’]', '\''); -- replace ‘’ (U+2018 & U+2019) with ' (typewriter single quote mark)
cap, cap2 = mw.ustring.match (label, "^([\"\'])([^\'].+)"); -- match leading double or single quote but not doubled single quotes (italic markup)
if is_set (cap) then
label = substitute (cfg.presentation['kern-left'], {cap, cap2});
end
cap, cap2 = mw.ustring.match (label, "^(.+[^\'])([\"\'])$") -- match trailing double or single quote but not doubled single quotes (italic markup)
if is_set (cap) then
label = substitute (cfg.presentation['kern-right'], {cap, cap2});
end
if 2 == wl_type then
str = make_wikilink (link, label); -- reassemble the wikilink
else
str = label;
end
end
return str;
end
--[[--------------------------< F O R M A T _ S C R I P T _ V A L U E >----------------------------------------
|script-title= holds title parameters that are not written in Latin based scripts: Chinese, Japanese, Arabic, Hebrew, etc. These scripts should
not be italicized and may be written right-to-left. The value supplied by |script-title= is concatenated onto Title after Title has been wrapped
in italic markup.
Regardless of language, all values provided by |script-title= are wrapped in <bdi>...</bdi> tags to isolate rtl languages from the English left to right.
|script-title= provides a unique feature. The value in |script-title= may be prefixed with a two-character ISO639-1 language code and a colon:
|script-title=ja:*** *** (where * represents a Japanese character)
Spaces between the two-character code and the colon and the colon and the first script character are allowed:
|script-title=ja : *** ***
|script-title=ja: *** ***
|script-title=ja :*** ***
Spaces preceding the prefix are allowed: |script-title = ja:*** ***
The prefix is checked for validity. If it is a valid ISO639-1 language code, the lang attribute (lang="ja") is added to the <bdi> tag so that browsers can
know the language the tag contains. This may help the browser render the script more correctly. If the prefix is invalid, the lang attribute
is not added. At this time there is no error message for this condition.
Supports |script-title= and |script-chapter=
TODO: error messages when prefix is invalid ISO639-1 code; when script_value has prefix but no script;
]]
local function format_script_value (script_value)
local lang=''; -- initialize to empty string
local name;
if script_value:match('^%l%l%s*:') then -- if first 3 non-space characters are script language prefix
lang = script_value:match('^(%l%l)%s*:%s*%S.*'); -- get the language prefix or nil if there is no script
if not is_set (lang) then
return ''; -- script_value was just the prefix so return empty string
end
-- if we get this far we have prefix and script
name = cfg.lang_code_remap[lang] or mw.language.fetchLanguageName( lang, "en" ); -- get language name so that we can use it to categorize
if is_set (name) then -- is prefix a proper ISO 639-1 language code?
script_value = script_value:gsub ('^%l%l%s*:%s*', ''); -- strip prefix from script
-- is prefix one of these language codes?
if in_array (lang, cfg.script_lang_codes) then
add_prop_cat ('script_with_name', {name, lang})
else
add_prop_cat ('script')
end
lang = ' lang="' .. lang .. '" '; -- convert prefix into a lang attribute
else
lang = ''; -- invalid so set lang to empty string
end
end
script_value = substitute (cfg.presentation['bdi'], {lang, script_value}); -- isolate in case script is rtl
return script_value;
end
--[[--------------------------< S C R I P T _ C O N C A T E N A T E >------------------------------------------
Initially for |title= and |script-title=, this function concatenates those two parameter values after the script value has been
wrapped in <bdi> tags.
]]
local function script_concatenate (title, script)
if is_set (script) then
script = format_script_value (script); -- <bdi> tags, lang atribute, categorization, etc; returns empty string on error
if is_set (script) then
title = title .. ' ' .. script; -- concatenate title and script title
end
end
return title;
end
--[[--------------------------< W R A P _ M S G >--------------------------------------------------------------
Applies additional message text to various parameter values. Supplied string is wrapped using a message_list
configuration taking one argument. Supports lower case text for {{citation}} templates. Additional text taken
from citation_config.messages - the reason this function is similar to but separate from wrap_style().
]]
local function wrap_msg (key, str, lower)
if not is_set( str ) then
return "";
end
if true == lower then
local msg;
msg = cfg.messages[key]:lower(); -- set the message to lower case before
return substitute( msg, str ); -- including template text
else
return substitute( cfg.messages[key], str );
end
end
--[[--------------------------< F O R M A T _ C H A P T E R _ T I T L E >--------------------------------------
Format the four chapter parameters: |script-chapter=, |chapter=, |trans-chapter=, and |chapter-url= into a single Chapter meta-
parameter (chapter_url_source used for error messages).
]]
local function format_chapter_title (scriptchapter, chapter, transchapter, chapterurl, chapter_url_source, no_quotes, access)
local chapter_error = '';
if not is_set (chapter) then
chapter = ''; -- to be safe for concatenation
else
if false == no_quotes then
chapter = kern_quotes (chapter); -- if necessary, separate chapter title's leading and trailing quote marks from Module provided quote marks
chapter = wrap_style ('quoted-title', chapter);
end
end
chapter = script_concatenate (chapter, scriptchapter) -- <bdi> tags, lang atribute, categorization, etc; must be done after title is wrapped
if is_set (chapterurl) then
chapter = external_link (chapterurl, chapter, chapter_url_source, access); -- adds bare_url_missing_title error if appropriate
end
if is_set (transchapter) then
transchapter = wrap_style ('trans-quoted-title', transchapter);
if is_set (chapter) then
chapter = chapter .. ' ' .. transchapter;
else -- here when transchapter without chapter or script-chapter
chapter = transchapter; --
chapter_error = ' ' .. set_error ('trans_missing_title', {'chapter'});
end
end
-- if is_set (chapterurl) then
-- chapter = external_link (chapterurl, chapter, chapter_url_source, access); -- adds bare_url_missing_title error if appropriate
-- end
return chapter .. chapter_error;
end
--[[--------------------------< H A S _ I N V I S I B L E _ C H A R S >----------------------------------------
This function searches a parameter's value for nonprintable or invisible characters. The search stops at the
first match.
This function will detect the visible replacement character when it is part of the wikisource.
Detects but ignores nowiki and math stripmarkers. Also detects other named stripmarkers (gallery, math, pre, ref)
and identifies them with a slightly different error message. See also coins_cleanup().
Detects but ignores the character pattern that results from the transclusion of {{'}} templates.
Output of this function is an error message that identifies the character or the Unicode group, or the stripmarker
that was detected along with its position (or, for multi-byte characters, the position of its first byte) in the
parameter value.
]]
local function has_invisible_chars (param, v)
local position = ''; -- position of invisible char or starting position of stripmarker
local dummy; -- end of matching string; not used but required to hold end position when a capture is returned
local capture; -- used by stripmarker detection to hold name of the stripmarker
local i=1;
local stripmarker, apostrophe;
capture = string.match (v, '[%w%p ]*'); -- Test for values that are simple ASCII text and bypass other tests if true
if capture == v then -- if same there are no unicode characters
return;
end
while cfg.invisible_chars[i] do
local char=cfg.invisible_chars[i][1] -- the character or group name
local pattern=cfg.invisible_chars[i][2] -- the pattern used to find it
position, dummy, capture = mw.ustring.find (v, pattern) -- see if the parameter value contains characters that match the pattern
if position and (char == 'zero width joiner') then -- if we found a zero width joiner character
if mw.ustring.find (v, cfg.indic_script) then -- its ok if one of the indic scripts
position = nil; -- unset position
end
end
if position then
if 'nowiki' == capture or 'math' == capture then -- nowiki, math stripmarker (not an error condition)
stripmarker = true; -- set a flag
elseif true == stripmarker and 'delete' == char then -- because stripmakers begin and end with the delete char, assume that we've found one end of a stripmarker
position = nil; -- unset
else
local err_msg;
if capture then
err_msg = capture .. ' ' .. char;
else
err_msg = char .. ' ' .. 'character';
end
table.insert( z.message_tail, { set_error( 'invisible_char', {err_msg, wrap_style ('parameter', param), position}, true ) } ); -- add error message
return; -- and done with this parameter
end
end
i=i+1; -- bump our index
end
end
--[[--------------------------< A R G U M E N T _ W R A P P E R >----------------------------------------------
Argument wrapper. This function provides support for argument mapping defined in the configuration file so that
multiple names can be transparently aliased to single internal variable.
]]
local function argument_wrapper( args )
local origin = {};
return setmetatable({
ORIGIN = function( self, k )
local dummy = self[k]; --force the variable to be loaded.
return origin[k];
end
},
{
__index = function ( tbl, k )
if origin[k] ~= nil then
return nil;
end
local args, list, v = args, cfg.aliases[k];
if type( list ) == 'table' then
v, origin[k] = select_one( args, list, 'redundant_parameters' );
if origin[k] == nil then
origin[k] = ''; -- Empty string, not nil
end
elseif list ~= nil then
v, origin[k] = args[list], list;
else
-- maybe let through instead of raising an error?
-- v, origin[k] = args[k], k;
error( cfg.messages['unknown_argument_map'] );
end
-- Empty strings, not nil;
if v == nil then
v = cfg.defaults[k] or '';
origin[k] = '';
end
tbl = rawset( tbl, k, v );
return v;
end,
});
end
--[[--------------------------< V A L I D A T E >--------------------------------------------------------------
Looks for a parameter's name in one of several whitelists.
Parameters in the whitelist can have three values:
true - active, supported parameters
false - deprecated, supported parameters
nil - unsupported parameters
]]
local function validate( name, cite_class )
local name = tostring( name );
local state;
if in_array (cite_class, {'arxiv', 'biorxiv', 'citeseerx'}) then -- limited parameter sets allowed for these templates
state = whitelist.limited_basic_arguments[ name ];
if true == state then return true; end -- valid actively supported parameter
if false == state then
deprecated_parameter (name); -- parameter is deprecated but still supported
return true;
end
if 'arxiv' == cite_class then -- basic parameters unique to these templates
state = whitelist.arxiv_basic_arguments[name];
end
if 'biorxiv' == cite_class then
state = whitelist.biorxiv_basic_arguments[name];
end
if 'citeseerx' == cite_class then
state = whitelist.citeseerx_basic_arguments[name];
end
if true == state then return true; end -- valid actively supported parameter
if false == state then
deprecated_parameter (name); -- parameter is deprecated but still supported
return true;
end
-- limited enumerated parameters list
name = name:gsub("%d+", "#" ); -- replace digit(s) with # (last25 becomes last#) (mw.ustring because non-Western 'local' digits)
state = whitelist.limited_numbered_arguments[ name ];
if true == state then return true; end -- valid actively supported parameter
if false == state then
deprecated_parameter (name); -- parameter is deprecated but still supported
return true;
end
return false; -- not supported because not found or name is set to nil
end -- end limited parameter-set templates
state = whitelist.basic_arguments[ name ]; -- all other templates; all normal parameters allowed
if true == state then return true; end -- valid actively supported parameter
if false == state then
deprecated_parameter (name); -- parameter is deprecated but still supported
return true;
end
-- all enumerated parameters allowed
name = name:gsub("%d+", "#" ); -- replace digit(s) with # (last25 becomes last#) (mw.ustring because non-Western 'local' digits)
state = whitelist.numbered_arguments[ name ];
if true == state then return true; end -- valid actively supported parameter
if false == state then
deprecated_parameter (name); -- parameter is deprecated but still supported
return true;
end
return false; -- not supported because not found or name is set to nil
end
--[[--------------------------< N O W R A P _ D A T E >--------------------------------------------------------
When date is YYYY-MM-DD format wrap in nowrap span: <span ...>YYYY-MM-DD</span>. When date is DD MMMM YYYY or is
MMMM DD, YYYY then wrap in nowrap span: <span ...>DD MMMM</span> YYYY or <span ...>MMMM DD,</span> YYYY
DOES NOT yet support MMMM YYYY or any of the date ranges.
]]
local function nowrap_date (date)
local cap='';
local cap2='';
if date:match("^%d%d%d%d%-%d%d%-%d%d$") then
date = substitute (cfg.presentation['nowrap1'], date);
elseif date:match("^%a+%s*%d%d?,%s+%d%d%d%d$") or date:match ("^%d%d?%s*%a+%s+%d%d%d%d$") then
cap, cap2 = string.match (date, "^(.*)%s+(%d%d%d%d)$");
date = substitute (cfg.presentation['nowrap2'], {cap, cap2});
end
return date;
end
--[[--------------------------< S E T _ T I T L E T Y P E >----------------------------------------------------
This function sets default title types (equivalent to the citation including |type=<default value>) for those templates that have defaults.
Also handles the special case where it is desirable to omit the title type from the rendered citation (|type=none).
]]
local function set_titletype (cite_class, title_type)
if is_set(title_type) then
if "none" == title_type then
title_type = ""; -- if |type=none then type parameter not displayed
end
return title_type; -- if |type= has been set to any other value use that value
end
return cfg.title_types [cite_class] or ''; -- set template's default title type; else empty string for concatenation
end
--[[--------------------------< H Y P H E N _ T O _ D A S H >--------------------------------------------------
Converts a hyphen to a dash
]]
local function hyphen_to_dash( str )
if not is_set(str) or str:match( "[%[%]{}<>]" ) ~= nil then
return str;
end
return str:gsub( '-', '–' );
end
--[[--------------------------< S A F E _ J O I N >------------------------------------------------------------
Joins a sequence of strings together while checking for duplicate separation characters.
]]
local function safe_join( tbl, duplicate_char )
local f = {}; -- create a function table appropriate to type of 'dupicate character'
if 1 == #duplicate_char then -- for single byte ascii characters use the string library functions
f.gsub=string.gsub
f.match=string.match
f.sub=string.sub
else -- for multi-byte characters use the ustring library functions
f.gsub=mw.ustring.gsub
f.match=mw.ustring.match
f.sub=mw.ustring.sub
end
local str = ''; -- the output string
local comp = ''; -- what does 'comp' mean?
local end_chr = '';
local trim;
for _, value in ipairs( tbl ) do
if value == nil then value = ''; end
if str == '' then -- if output string is empty
str = value; -- assign value to it (first time through the loop)
elseif value ~= '' then
if value:sub(1,1) == '<' then -- Special case of values enclosed in spans and other markup.
comp = value:gsub( "%b<>", "" ); -- remove html markup (<span>string</span> -> string)
else
comp = value;
end
-- typically duplicate_char is sepc
if f.sub(comp, 1,1) == duplicate_char then -- is first character same as duplicate_char? why test first character?
-- Because individual string segments often (always?) begin with terminal punct for the
-- preceding segment: 'First element' .. 'sepc next element' .. etc?
trim = false;
end_chr = f.sub(str, -1,-1); -- get the last character of the output string
-- str = str .. "<HERE(enchr=" .. end_chr.. ")" -- debug stuff?
if end_chr == duplicate_char then -- if same as separator
str = f.sub(str, 1,-2); -- remove it
elseif end_chr == "'" then -- if it might be wikimarkup
if f.sub(str, -3,-1) == duplicate_char .. "''" then -- if last three chars of str are sepc''
str = f.sub(str, 1, -4) .. "''"; -- remove them and add back ''
elseif f.sub(str, -5,-1) == duplicate_char .. "]]''" then -- if last five chars of str are sepc]]''
trim = true; -- why? why do this and next differently from previous?
elseif f.sub(str, -4,-1) == duplicate_char .. "]''" then -- if last four chars of str are sepc]''
trim = true; -- same question
end
elseif end_chr == "]" then -- if it might be wikimarkup
if f.sub(str, -3,-1) == duplicate_char .. "]]" then -- if last three chars of str are sepc]] wikilink
trim = true;
elseif f.sub(str, -3,-1) == duplicate_char .. '"]' then -- if last three chars of str are sepc"] quoted external link
trim = true;
elseif f.sub(str, -2,-1) == duplicate_char .. "]" then -- if last two chars of str are sepc] external link
trim = true;
elseif f.sub(str, -4,-1) == duplicate_char .. "'']" then -- normal case when |url=something & |title=Title.
trim = true;
end
elseif end_chr == " " then -- if last char of output string is a space
if f.sub(str, -2,-1) == duplicate_char .. " " then -- if last two chars of str are <sepc><space>
str = f.sub(str, 1,-3); -- remove them both
end
end
if trim then
if value ~= comp then -- value does not equal comp when value contains html markup
local dup2 = duplicate_char;
if f.match(dup2, "%A" ) then dup2 = "%" .. dup2; end -- if duplicate_char not a letter then escape it
value = f.gsub(value, "(%b<>)" .. dup2, "%1", 1 ) -- remove duplicate_char if it follows html markup
else
value = f.sub(value, 2, -1 ); -- remove duplicate_char when it is first character
end
end
end
str = str .. value; --add it to the output string
end
end
return str;
end
--[[--------------------------< I S _ S U F F I X >------------------------------------------------------------
returns true is suffix is properly formed Jr, Sr, or ordinal in the range 2–9. Puncutation not allowed.
]]
local function is_suffix (suffix)
if in_array (suffix, {'Jr', 'Sr', '2nd', '3rd'}) or suffix:match ('^%dth$') then
return true;
end
return false;
end
--[[--------------------------< I S _ G O O D _ V A N C _ N A M E >--------------------------------------------
For Vancouver Style, author/editor names are supposed to be rendered in Latin (read ASCII) characters. When a name
uses characters that contain diacritical marks, those characters are to converted to the corresponding Latin character.
When a name is written using a non-Latin alphabet or logogram, that name is to be transliterated into Latin characters.
These things are not currently possible in this module so are left to the editor to do.
This test allows |first= and |last= names to contain any of the letters defined in the four Unicode Latin character sets
[http://www.unicode.org/charts/PDF/U0000.pdf C0 Controls and Basic Latin] 0041–005A, 0061–007A
[http://www.unicode.org/charts/PDF/U0080.pdf C1 Controls and Latin-1 Supplement] 00C0–00D6, 00D8–00F6, 00F8–00FF
[http://www.unicode.org/charts/PDF/U0100.pdf Latin Extended-A] 0100–017F
[http://www.unicode.org/charts/PDF/U0180.pdf Latin Extended-B] 0180–01BF, 01C4–024F
|lastn= also allowed to contain hyphens, spaces, and apostrophes. (http://www.ncbi.nlm.nih.gov/books/NBK7271/box/A35029/)
|firstn= also allowed to contain hyphens, spaces, apostrophes, and periods
This original test:
if nil == mw.ustring.find (last, "^[A-Za-zÀ-ÖØ-öø-ƿDŽ-ɏ%-%s%']*$") or nil == mw.ustring.find (first, "^[A-Za-zÀ-ÖØ-öø-ƿDŽ-ɏ%-%s%'%.]+[2-6%a]*$") then
was written ouside of the code editor and pasted here because the code editor gets confused between character insertion point and cursor position.
The test has been rewritten to use decimal character escape sequence for the individual bytes of the unicode characters so that it is not necessary
to use an external editor to maintain this code.
\195\128-\195\150 – À-Ö (U+00C0–U+00D6 – C0 controls)
\195\152-\195\182 – Ø-ö (U+00D8-U+00F6 – C0 controls)
\195\184-\198\191 – ø-ƿ (U+00F8-U+01BF – C0 controls, Latin extended A & B)
\199\132-\201\143 – DŽ-ɏ (U+01C4-U+024F – Latin extended B)
]]
local function is_good_vanc_name (last, first)
local first, suffix = first:match ('(.-),?%s*([%dJS][%drndth]+)%.?$') or first; -- if first has something that looks like a generational suffix, get it
if is_set (suffix) then
if not is_suffix (suffix) then
add_vanc_error ('suffix');
return false; -- not a name with an appropriate suffix
end
end
if nil == mw.ustring.find (last, "^[A-Za-z\195\128-\195\150\195\152-\195\182\195\184-\198\191\199\132-\201\143%-%s%']*$") or
nil == mw.ustring.find (first, "^[A-Za-z\195\128-\195\150\195\152-\195\182\195\184-\198\191\199\132-\201\143%-%s%'%.]*$") then
add_vanc_error ('non-Latin character');
return false; -- not a string of latin characters; Vancouver requires Romanization
end;
return true;
end
--[[--------------------------< R E D U C E _ T O _ I N I T I A L S >------------------------------------------
Attempts to convert names to initials in support of |name-list-format=vanc.
Names in |firstn= may be separated by spaces or hyphens, or for initials, a period. See http://www.ncbi.nlm.nih.gov/books/NBK7271/box/A35062/.
Vancouver style requires family rank designations (Jr, II, III, etc) to be rendered as Jr, 2nd, 3rd, etc. See http://www.ncbi.nlm.nih.gov/books/NBK7271/box/A35085/.
This code only accepts and understands generational suffix in the Vancouver format because Roman numerals look like, and can be mistaken for, initials.
This function uses ustring functions because firstname initials may be any of the unicode Latin characters accepted by is_good_vanc_name ().
]]
local function reduce_to_initials(first)
local name, suffix = mw.ustring.match(first, "^(%u+) ([%dJS][%drndth]+)$");
if not name then -- if not initials and a suffix
name = mw.ustring.match(first, "^(%u+)$"); -- is it just intials?
end
if name then -- if first is initials with or without suffix
if 3 > mw.ustring.len (name) then -- if one or two initials
if suffix then -- if there is a suffix
if is_suffix (suffix) then -- is it legitimate?
return first; -- one or two initials and a valid suffix so nothing to do
else
add_vanc_error ('suffix'); -- one or two initials with invalid suffix so error message
return first; -- and return first unmolested
end
else
return first; -- one or two initials without suffix; nothing to do
end
end
end -- if here then name has 3 or more uppercase letters so treat them as a word
local initials, names = {}, {}; -- tables to hold name parts and initials
local i = 1; -- counter for number of initials
names = mw.text.split (first, '[%s,]+'); -- split into a table of names and possible suffix
while names[i] do -- loop through the table
if 1 < i and names[i]:match ('[%dJS][%drndth]+%.?$') then -- if not the first name, and looks like a suffix (may have trailing dot)
names[i] = names[i]:gsub ('%.', ''); -- remove terminal dot if present
if is_suffix (names[i]) then -- if a legitimate suffix
table.insert (initials, ' ' .. names[i]); -- add a separator space, insert at end of initials table
break; -- and done because suffix must fall at the end of a name
end -- no error message if not a suffix; possibly because of Romanization
end
if 3 > i then
table.insert (initials, mw.ustring.sub(names[i],1,1)); -- insert the intial at end of initials table
end
i = i+1; -- bump the counter
end
return table.concat(initials) -- Vancouver format does not include spaces.
end
--[[--------------------------< L I S T _ P E O P L E >-------------------------------------------------------
Formats a list of people (e.g. authors / editors)
]]
local function list_people(control, people, etal)
local sep;
local namesep;
local format = control.format
local maximum = control.maximum
local lastauthoramp = control.lastauthoramp;
local text = {}
if 'vanc' == format then -- Vancouver-like author/editor name styling?
sep = cfg.presentation['sep_nl_vanc']; -- name-list separator between authors is a comma
namesep = cfg.presentation['sep_name_vanc']; -- last/first separator is a space
else
sep = cfg.presentation['sep_nl']; -- name-list separator between authors is a semicolon
namesep = cfg.presentation['sep_name']; -- last/first separator is <comma><space>
end
if sep:sub(-1,-1) ~= " " then sep = sep .. " " end
if is_set (maximum) and maximum < 1 then return "", 0; end -- returned 0 is for EditorCount; not used for authors
for i,person in ipairs(people) do
if is_set(person.last) then
local mask = person.mask
local one
local sep_one = sep;
if is_set (maximum) and i > maximum then
etal = true;
break;
elseif (mask ~= nil) then
local n = tonumber(mask)
if (n ~= nil) then
one = string.rep("—",n)
else
one = mask;
sep_one = " ";
end
else
one = person.last
local first = person.first
if is_set(first) then
if ( "vanc" == format ) then -- if vancouver format
one = one:gsub ('%.', ''); -- remove periods from surnames (http://www.ncbi.nlm.nih.gov/books/NBK7271/box/A35029/)
if not person.corporate and is_good_vanc_name (one, first) then -- and name is all Latin characters; corporate authors not tested
first = reduce_to_initials(first) -- attempt to convert first name(s) to initials
end
end
one = one .. namesep .. first;
end
if is_set(person.link) and person.link ~= control.page_name then
one = make_wikilink (person.link, one); -- link author/editor if this page is not the author's/editor's page
end
end
table.insert( text, one )
table.insert( text, sep_one )
end
end
local count = #text / 2; -- (number of names + number of separators) divided by 2
if count > 0 then
if count > 1 and is_set(lastauthoramp) and not etal then
text[#text-2] = " & "; -- replace last separator with ampersand text
end
text[#text] = nil; -- erase the last separator
end
local result = table.concat(text) -- construct list
if etal and is_set (result) then -- etal may be set by |display-authors=etal but we might not have a last-first list
result = result .. sep .. ' ' .. cfg.messages['et al']; -- we've go a last-first list and etal so add et al.
end
return result, count
end
--[[--------------------------< A N C H O R _ I D >------------------------------------------------------------
Generates a CITEREF anchor ID if we have at least one name or a date. Otherwise returns an empty string.
namelist is one of the contributor-, author-, or editor-name lists chosen in that order. year is Year or anchor_year.
]]
local function anchor_id (namelist, year)
local names={}; -- a table for the one to four names and year
for i,v in ipairs (namelist) do -- loop through the list and take up to the first four last names
names[i] = v.last
if i == 4 then break end -- if four then done
end
table.insert (names, year); -- add the year at the end
local id = table.concat(names); -- concatenate names and year for CITEREF id
if is_set (id) then -- if concatenation is not an empty string
return "CITEREF" .. id; -- add the CITEREF portion
else
return ''; -- return an empty string; no reason to include CITEREF id in this citation
end
end
--[[--------------------------< N A M E _ H A S _ E T A L >----------------------------------------------------
Evaluates the content of author and editor name parameters for variations on the theme of et al. If found,
the et al. is removed, a flag is set to true and the function returns the modified name and the flag.
This function never sets the flag to false but returns it's previous state because it may have been set by
previous passes through this function or by the parameters |display-authors=etal or |display-editors=etal
]]
local function name_has_etal (name, etal, nocat)
if is_set (name) then -- name can be nil in which case just return
local etal_pattern = "[;,]? *[\"']*%f[%a][Ee][Tt] *[Aa][Ll][%.\"']*$" -- variations on the 'et al' theme
local others_pattern = "[;,]? *%f[%a]and [Oo]thers"; -- and alternate to et al.
if name:match (etal_pattern) then -- variants on et al.
name = name:gsub (etal_pattern, ''); -- if found, remove
etal = true; -- set flag (may have been set previously here or by |display-authors=etal)
if not nocat then -- no categorization for |vauthors=
add_maint_cat ('etal'); -- and add a category if not already added
end
elseif name:match (others_pattern) then -- if not 'et al.', then 'and others'?
name = name:gsub (others_pattern, ''); -- if found, remove
etal = true; -- set flag (may have been set previously here or by |display-authors=etal)
if not nocat then -- no categorization for |vauthors=
add_maint_cat ('etal'); -- and add a category if not already added
end
end
end
return name, etal; --
end
--[[--------------------------< N A M E _ H A S _ E D _ M A R K U P >------------------------------------------
Evaluates the content of author and editor parameters for extranious editor annotations: ed, ed., eds, (Ed.), etc.
These annotation do not belong in author parameters and are redundant in editor parameters. If found, the function
adds the editor markup maintenance category.
]]
local function name_has_ed_markup (name, list_name)
local _, pattern;
local patterns = { -- these patterns match annotations at end of name
'%f[%(%[][%(%[]%s*[Ee][Dd][Ss]?%.?%s*[%)%]]?$', -- (ed) or (eds): leading '(', case insensitive 'ed', optional 's', '.' and/or ')'
'[,%.%s]%f[e]eds?%.?$', -- ed or eds: without '('or ')'; case sensitive (ED could be initials Ed could be name)
'%f[%(%[][%(%[]%s*[Ee][Dd][Ii][Tt][Oo][Rr][Ss]?%.?%s*[%)%]]?$', -- (editor) or (editors): leading '(', case insensitive, optional '.' and/or ')'
'[,%.%s]%f[Ee][Ee][Dd][Ii][Tt][Oo][Rr][Ss]?%.?$', -- editor or editors: without '('or ')'; case insensitive
-- these patterns match annotations at beginning of name
'^eds?[%.,;]', -- ed. or eds.: lower case only, optional 's', requires '.'
'^[%(%[]%s*[Ee][Dd][Ss]?%.?%s*[%)%]]', -- (ed) or (eds): also sqare brackets, case insensitive, optional 's', '.'
'^[%(%[]?%s*[Ee][Dd][Ii][Tt][Oo][Rr][Ss]?%A', -- (editor or (editors: also sq brackets, case insensitive, optional brackets, 's'
'^[%(%[]?%s*[Ee][Dd][Ii][Tt][Ee][Dd]%A', -- (edited: also sq brackets, case insensitive, optional brackets
}
if is_set (name) then
for _, pattern in ipairs (patterns) do -- spin through patterns table and
if name:match (pattern) then
add_maint_cat ('extra_text_names', cfg.special_case_translation [list_name]); -- add a maint cat for this template
break;
end
end
end
return name; -- and done
end
--[[--------------------------< N A M E _ H A S _ M U L T _ N A M E S >----------------------------------------
Evaluates the content of author and editor (surnames only) parameters for multiple names. Multiple names are
indicated if there is more than one comma and or semicolon. If found, the function adds the multiple name
(author or editor) maintenance category.
]]
local function name_has_mult_names (name, list_name)
local count, _;
if is_set (name) then
_, count = name:gsub ('[;,]', ''); -- count the number of separator-like characters
if 1 < count then -- param could be |author= or |editor= so one separator character is acceptable
add_maint_cat ('mult_names', cfg.special_case_translation [list_name]); -- more than one separator indicates multiple names so add a maint cat for this template
end
end
return name; -- and done
end
--[[--------------------------< N A M E _ C H E C K S >--------------------------------------------------------
This function calls various name checking functions used to validate the content of the various name-holding
parameters.
]]
local function name_checks (last, first, list_name)
if is_set (last) then
if last:match ('^%(%(.*%)%)$') then -- if wrapped in doubled parentheses, accept as written
last = last:match ('^%(%((.*)%)%)$'); -- strip parens
else
last = name_has_mult_names (last, list_name); -- check for multiple names in the parameter (last only)
last = name_has_ed_markup (last, list_name); -- check for extraneous 'editor' annotation
end
end
if is_set (first) then
if first:match ('^%(%(.*%)%)$') then -- if wrapped in doubled parentheses, accept as written
first = first:match ('^%(%((.*)%)%)$'); -- strip parens
else
first = name_has_ed_markup (first, list_name); -- check for extraneous 'editor' annotation
end
end
return last, first; -- done
end
--[[--------------------------< E X T R A C T _ N A M E S >----------------------------------------------------
Gets name list from the input arguments
Searches through args in sequential order to find |lastn= and |firstn= parameters (or their aliases), and their matching link and mask parameters.
Stops searching when both |lastn= and |firstn= are not found in args after two sequential attempts: found |last1=, |last2=, and |last3= but doesn't
find |last4= and |last5= then the search is done.
This function emits an error message when there is a |firstn= without a matching |lastn=. When there are 'holes' in the list of last names, |last1= and |last3=
are present but |last2= is missing, an error message is emitted. |lastn= is not required to have a matching |firstn=.
When an author or editor parameter contains some form of 'et al.', the 'et al.' is stripped from the parameter and a flag (etal) returned
that will cause list_people() to add the static 'et al.' text from Module:Citation/CS1/Configuration. This keeps 'et al.' out of the
template's metadata. When this occurs, the page is added to a maintenance category.
]]
local function extract_names(args, list_name)
local names = {}; -- table of names
local last; -- individual name components
local first;
local link;
local mask;
local i = 1; -- loop counter/indexer
local n = 1; -- output table indexer
local count = 0; -- used to count the number of times we haven't found a |last= (or alias for authors, |editor-last or alias for editors)
local etal=false; -- return value set to true when we find some form of et al. in an author parameter
local err_msg_list_name = list_name:match ("(%w+)List") .. 's list'; -- modify AuthorList or EditorList for use in error messages if necessary
while true do
last = select_one( args, cfg.aliases[list_name .. '-Last'], 'redundant_parameters', i ); -- search through args for name components beginning at 1
first = select_one( args, cfg.aliases[list_name .. '-First'], 'redundant_parameters', i );
link = select_one( args, cfg.aliases[list_name .. '-Link'], 'redundant_parameters', i );
mask = select_one( args, cfg.aliases[list_name .. '-Mask'], 'redundant_parameters', i );
last, etal = name_has_etal (last, etal, false); -- find and remove variations on et al.
first, etal = name_has_etal (first, etal, false); -- find and remove variations on et al.
last, first= name_checks (last, first, list_name); -- multiple names, extraneous annotation, etc checks
if first and not last then -- if there is a firstn without a matching lastn
table.insert( z.message_tail, { set_error( 'first_missing_last', {err_msg_list_name, i}, true ) } ); -- add this error message
elseif not first and not last then -- if both firstn and lastn aren't found, are we done?
count = count + 1; -- number of times we haven't found last and first
if 2 <= count then -- two missing names and we give up
break; -- normal exit or there is a two-name hole in the list; can't tell which
end
else -- we have last with or without a first
link_title_ok (link, list_name:match ("(%w+)List"):lower() .. '-link' .. i, last, list_name:match ("(%w+)List"):lower() .. '-last' .. i); -- check for improper wikimarkup
names[n] = {last = last, first = first, link = link, mask = mask, corporate=false}; -- add this name to our names list (corporate for |vauthors= only)
n = n + 1; -- point to next location in the names table
if 1 == count then -- if the previous name was missing
table.insert( z.message_tail, { set_error( 'missing_name', {err_msg_list_name, i-1}, true ) } ); -- add this error message
end
count = 0; -- reset the counter, we're looking for two consecutive missing names
end
i = i + 1; -- point to next args location
end
return names, etal; -- all done, return our list of names
end
--[[--------------------------< G E T _ I S O 6 3 9 _ C O D E >------------------------------------------------
Validates language names provided in |language= parameter if not an ISO639-1 or 639-2 code.
Returns the language name and associated two- or three-character code. Because case of the source may be incorrect
or different from the case that WikiMedia uses, the name comparisons are done in lower case and when a match is
found, the Wikimedia version (assumed to be correct) is returned along with the code. When there is no match, we
return the original language name string.
mw.language.fetchLanguageNames(<local wiki language>, 'all') returns a list of languages that in some cases may include
extensions. For example, code 'cbk-zam' and its associated name 'Chavacano de Zamboanga' (MediaWiki does not support
code 'cbk' or name 'Chavacano'. Most (all?) of these languages are not used a 'language' codes per se, rather they
are used as sub-domain names: cbk-zam.wikipedia.org. These names can be found (for the time being) at
https://phabricator.wikimedia.org/diffusion/ECLD/browse/master/LocalNames/LocalNamesEn.php
Names but that are included in the list will be found if that name is provided in the |language= parameter. For example,
if |language=Chavacano de Zamboanga, that name will be found with the associated code 'cbk-zam'. When names are found
and the associated code is not two or three characters, this function returns only the Wikimedia language name.
Adapted from code taken from Module:Check ISO 639-1.
]]
local function get_iso639_code (lang, this_wiki_code)
if cfg.lang_name_remap[lang:lower()] then -- if there is a remapped name (because MediaWiki uses something that we don't think is correct)
return cfg.lang_name_remap[lang:lower()][1], cfg.lang_name_remap[lang:lower()][2]; -- for this language 'name', return a possibly new name and appropriate code
end
local languages = mw.language.fetchLanguageNames(this_wiki_code, 'all') -- get a list of language names known to Wikimedia
-- ('all' is required for North Ndebele, South Ndebele, and Ojibwa)
local langlc = mw.ustring.lower(lang); -- lower case version for comparisons
for code, name in pairs(languages) do -- scan the list to see if we can find our language
if langlc == mw.ustring.lower(name) then
if 2 ~= code:len() and 3 ~= code:len() then -- two- or three-character codes only; extensions not supported
return name; -- so return the name but not the code
end
return name, code; -- found it, return name to ensure proper capitalization and the the code
end
end
return lang; -- not valid language; return language in original case and nil for the code
end
--[[--------------------------< L A N G U A G E _ P A R A M E T E R >------------------------------------------
Gets language name from a provided two- or three-character ISO 639 code. If a code is recognized by MediaWiki,
use the returned name; if not, then use the value that was provided with the language parameter.
When |language= contains a recognized language (either code or name), the page is assigned to the category for
that code: Category:Norwegian-language sources (no). For valid three-character code languages, the page is assigned
to the single category for '639-2' codes: Category:CS1 ISO 639-2 language sources.
Languages that are the same as the local wiki are not categorized. MediaWiki does not recognize three-character
equivalents of two-character codes: code 'ar' is recognized bit code 'ara' is not.
This function supports multiple languages in the form |language=nb, French, th where the language names or codes are
separated from each other by commas.
]]
local function language_parameter (lang)
local code; -- the two- or three-character language code
local name; -- the language name
local language_list = {}; -- table of language names to be rendered
local names_table = {}; -- table made from the value assigned to |language=
local this_wiki = mw.getContentLanguage(); -- get a language object for this wiki
local this_wiki_code = this_wiki:getCode() -- get this wiki's language code
local this_wiki_name = mw.language.fetchLanguageName(this_wiki_code, this_wiki_code); -- get this wiki's language name
names_table = mw.text.split (lang, '%s*,%s*'); -- names should be a comma separated list
for _, lang in ipairs (names_table) do -- reuse lang
if lang:match ('^%a%a%-') then -- strip ietf language tags from code; TODO: is there a need to support 3-char with tag?
lang = lang:match ('(%a%a)%-') -- keep only 639-1 code portion to lang; TODO: do something with 3166 alpha 2 country code?
end
if 2 == lang:len() or 3 == lang:len() then -- if two-or three-character code
name = mw.language.fetchLanguageName( lang:lower(), this_wiki_code); -- get language name if |language= is a proper code
if not is_set (name) then
name = cfg.lang_code_remap[lang]; -- not supported by MediaWiki; is it in remap?
end
end
if is_set (name) then -- if |language= specified a valid code
code = lang:lower(); -- save it
else
name, code = get_iso639_code (lang, this_wiki_code); -- attempt to get code from name (assign name here so that we are sure of proper capitalization)
end
if is_set (code) then -- only 2- or 3-character codes
name = cfg.lang_code_remap[code] or name; -- override wikimedia when they misuse language codes/names
if this_wiki_code ~= code then -- when the language is not the same as this wiki's language
if 2 == code:len() then -- and is a two-character code
add_prop_cat ('foreign_lang_source' .. code, {name, code}) -- categorize it
else -- or is a recognized language (but has a three-character code)
add_prop_cat ('foreign_lang_source_2' .. code, {code}) -- categorize it differently TODO: support mutliple three-character code categories per cs1|2 template
end
end
else
add_maint_cat ('unknown_lang'); -- add maint category if not already added
end
table.insert (language_list, name);
name = ''; -- so we can reuse it
end
code = #language_list -- reuse code as number of languages in the list
if 2 >= code then
name = table.concat (language_list, ' και ') -- insert '<space>και<space>' between two language names
elseif 2 < code then
language_list[code] = 'και ' .. language_list[code]; -- prepend last name with 'και<space>'
name = table.concat (language_list, ', ') -- and concatenate with ',<space>' separators
end
if this_wiki_name == name then
return ''; -- if one language and that language is this wiki's return an empty string (no annotation)
end
return (" " .. wrap_msg ('language', name)); -- otherwise wrap with '(in ...)'
--[[ TODO: should only return blank or name rather than full list
so we can clean up the bunched parenthetical elements Language, Type, Format
]]
end
--[[--------------------------< S E T _ C S 1 _ S T Y L E >----------------------------------------------------
Set style settings for CS1 citation templates. Returns separator and postscript settings
At en.wiki, for cs1:
ps gets: '.'
sep gets: '.'
]]
local function set_cs1_style (ps)
if not is_set (ps) then -- unless explicitely set to something
ps = cfg.presentation['ps_cs1']; -- terminate the rendered citation
end
return cfg.presentation['sep_cs1'], ps; -- element separator
end
--[[--------------------------< S E T _ C S 2 _ S T Y L E >----------------------------------------------------
Set style settings for CS2 citation templates. Returns separator, postscript, ref settings
At en.wiki, for cs2:
ps gets: '' (empty string - no terminal punctuation)
sep gets: ','
]]
local function set_cs2_style (ps, ref)
if not is_set (ps) then -- if |postscript= has not been set, set cs2 default
ps = cfg.presentation['ps_cs2']; -- terminate the rendered citation
end
if not is_set (ref) then -- if |ref= is not set
ref = "harv"; -- set default |ref=harv
end
return cfg.presentation['sep_cs2'], ps, ref; -- element separator
end
--[[--------------------------< G E T _ S E T T I N G S _ F R O M _ C I T E _ C L A S S >----------------------
When |mode= is not set or when its value is invalid, use config.CitationClass and parameter values to establish
rendered style.
]]
local function get_settings_from_cite_class (ps, ref, cite_class)
local sep;
if (cite_class == "citation") then -- for citation templates (CS2)
sep, ps, ref = set_cs2_style (ps, ref);
else -- not a citation template so CS1
sep, ps = set_cs1_style (ps);
end
return sep, ps, ref -- return them all
end
--[[--------------------------< S E T _ S T Y L E >------------------------------------------------------------
Establish basic style settings to be used when rendering the citation. Uses |mode= if set and valid or uses
config.CitationClass from the template's #invoke: to establish style.
]]
local function set_style (mode, ps, ref, cite_class)
local sep;
if 'cs2' == mode then -- if this template is to be rendered in CS2 (citation) style
sep, ps, ref = set_cs2_style (ps, ref);
elseif 'cs1' == mode then -- if this template is to be rendered in CS1 (cite xxx) style
sep, ps = set_cs1_style (ps);
else -- anything but cs1 or cs2
sep, ps, ref = get_settings_from_cite_class (ps, ref, cite_class); -- get settings based on the template's CitationClass
end
if 'none' == ps:lower() then -- if assigned value is 'none' then
ps = ''; -- set to empty string
end
return sep, ps, ref
end
--[=[-------------------------< I S _ P D F >------------------------------------------------------------------
Determines if a url has the file extension that is one of the pdf file extensions used by [[MediaWiki:Common.css]] when
applying the pdf icon to external links.
returns true if file extension is one of the recognized extensions, else false
]=]
local function is_pdf (url)
return url:match ('%.pdf$') or url:match ('%.PDF$') or url:match ('%.pdf[%?#]') or url:match ('%.PDF[%?#]');
end
--[[--------------------------< S T Y L E _ F O R M A T >------------------------------------------------------
Applies css style to |format=, |chapter-format=, etc. Also emits an error message if the format parameter does
not have a matching url parameter. If the format parameter is not set and the url contains a file extension that
is recognized as a pdf document by MediaWiki's commons.css, this code will set the format parameter to (PDF) with
the appropriate styling.
]]
local function style_format (format, url, fmt_param, url_param)
if is_set (format) then
format = wrap_style ('format', format); -- add leading space, parentheses, resize
if not is_set (url) then
format = format .. set_error( 'format_missing_url', {fmt_param, url_param} ); -- add an error message
end
elseif is_pdf (url) then -- format is not set so if url is a pdf file then
format = wrap_style ('format', 'PDF'); -- set format to pdf
else
format = ''; -- empty string for concatenation
end
return format;
end
--[[--------------------------< G E T _ D I S P L A Y _ A U T H O R S _ E D I T O R S >------------------------
Returns a number that defines the number of names displayed for author and editor name lists and a boolean flag
to indicate when et al. should be appended to the name list.
When the value assigned to |display-xxxxors= is a number greater than or equal to zero, return the number and
the previous state of the 'etal' flag (false by default but may have been set to true if the name list contains
some variant of the text 'et al.').
When the value assigned to |display-xxxxors= is the keyword 'etal', return a number that is one greater than the
number of authors in the list and set the 'etal' flag true. This will cause the list_people() to display all of
the names in the name list followed by 'et al.'
In all other cases, returns nil and the previous state of the 'etal' flag.
inputs:
max: A['DisplayAuthors'] or A['DisplayEditors']; a number or some flavor of etal
count: #a or #e
list_name: 'authors' or 'editors'
etal: author_etal or editor_etal
]]
local function get_display_authors_editors (max, count, list_name, etal)
if is_set (max) then
if 'etal' == max:lower():gsub("[ '%.]", '') then -- the :gsub() portion makes 'etal' from a variety of 'et al.' spellings and stylings
max = count + 1; -- number of authors + 1 so display all author name plus et al.
etal = true; -- overrides value set by extract_names()
elseif max:match ('^%d+$') then -- if is a string of numbers
max = tonumber (max); -- make it a number
if max >= count then -- if |display-xxxxors= value greater than or equal to number of authors/editors
add_maint_cat ('disp_auth_ed', cfg.special_case_translation [list_name]);
end
else -- not a valid keyword or number
table.insert( z.message_tail, { set_error( 'invalid_param_val', {'display-' .. list_name, max}, true ) } ); -- add error message
max = nil; -- unset; as if |display-xxxxors= had not been set
end
end
return max, etal;
end
--[[--------------------------< E X T R A _ T E X T _ I N _ P A G E _ C H E C K >------------------------------
Adds page to Category:CS1 maint: extra text if |page= or |pages= has what appears to be some form of p. or pp.
abbreviation in the first characters of the parameter content.
check Page and Pages for extraneous p, p., pp, and pp. at start of parameter value:
good pattern: '^P[^%.P%l]' matches when |page(s)= begins PX or P# but not Px where x and X are letters and # is a dgiit
bad pattern: '^[Pp][Pp]' matches matches when |page(s)= begins pp or pP or Pp or PP
]]
local function extra_text_in_page_check (page)
local good_pattern = '^P[^%.Pp]'; -- ok to begin with uppercase P: P7 (pg 7 of section P) but not p123 (page 123) TODO: add Gg for PG or Pg?
local bad_pattern = '^[Pp]?[Pp]%.?[ %d]';
if not page:match (good_pattern) and (page:match (bad_pattern) or page:match ('^[Pp]ages?')) then
add_maint_cat ('extra_text');
end
end
--[=[-------------------------< G E T _ V _ N A M E _ T A B L E >----------------------------------------------
split apart a |vauthors= or |veditors= parameter. This function allows for corporate names, wrapped in doubled
parentheses to also have commas; in the old version of the code, the doubled parnetheses were included in the
rendered citation and in the metadata. Individual author names may be wikilinked
|vauthors=Jones AB, [[E. B. White|White EB]], ((Black, Brown, and Co.))
]=]
local function get_v_name_table (vparam, output_table, output_link_table)
local name_table = mw.text.split(vparam, "%s*,%s*"); -- names are separated by commas
local wl_type, label, link; -- wl_type not used here; just a place holder
local i = 1;
while name_table[i] do
if name_table[i]:match ('^%(%(.*[^%)][^%)]$') then -- first segment of corporate with one or more commas; this segment has the opening doubled parens
local name = name_table[i];
i=i+1; -- bump indexer to next segment
while name_table[i] do
name = name .. ', ' .. name_table[i]; -- concatenate with previous segments
if name_table[i]:match ('^.*%)%)$') then -- if this table member has the closing doubled parens
break; -- and done reassembling so
end
i=i+1; -- bump indexer
end
table.insert (output_table, name); -- and add corporate name to the output table
table.insert (output_link_table, ''); -- no wikilink
else
wl_type, label, link = is_wikilink (name_table[i]); -- wl_type is: 0, no wl (text in label variable); 1, [[D]]; 2, [[L|D]]
table.insert (output_table, label); -- add this name
if 1 == wl_type then
table.insert (output_link_table, label); -- simple wikilink [[D]]
else
table.insert (output_link_table, link); -- no wikilink or [[L|D]]; add this link if there is one, else empty string
end
end
i = i+1;
end
return output_table;
end
--[[--------------------------< P A R S E _ V A U T H O R S _ V E D I T O R S >--------------------------------
This function extracts author / editor names from |vauthors= or |veditors= and finds matching |xxxxor-maskn= and
|xxxxor-linkn= in args. It then returns a table of assembled names just as extract_names() does.
Author / editor names in |vauthors= or |veditors= must be in Vancouver system style. Corporate or institutional names
may sometimes be required and because such names will often fail the is_good_vanc_name() and other format compliance
tests, are wrapped in doubled paranethese ((corporate name)) to suppress the format tests.
Supports generational suffixes Jr, 2nd, 3rd, 4th–6th.
This function sets the vancouver error when a reqired comma is missing and when there is a space between an author's initials.
]]
local function parse_vauthors_veditors (args, vparam, list_name)
local names = {}; -- table of names assembled from |vauthors=, |author-maskn=, |author-linkn=
local v_name_table = {};
local v_link_table = {}; -- when name is wikilinked, targets go in this table
local etal = false; -- return value set to true when we find some form of et al. vauthors parameter
local last, first, link, mask, suffix;
local corporate = false;
vparam, etal = name_has_etal (vparam, etal, true); -- find and remove variations on et al. do not categorize (do it here because et al. might have a period)
v_name_table = get_v_name_table (vparam, v_name_table, v_link_table); -- names are separated by commas
for i, v_name in ipairs(v_name_table) do
if v_name:match ('^%(%(.+%)%)$') then -- corporate authors are wrapped in doubled parentheses to supress vanc formatting and error detection
first = ''; -- set to empty string for concatenation and because it may have been set for previous author/editor
last = v_name:match ('^%(%((.+)%)%)$') -- remove doubled parntheses
corporate = true; -- flag used in list_people()
elseif string.find(v_name, "%s") then
if v_name:find('[;%.]') then -- look for commonly occurring punctuation characters;
add_vanc_error ('punctuation');
end
local lastfirstTable = {}
lastfirstTable = mw.text.split(v_name, "%s")
first = table.remove(lastfirstTable); -- removes and returns value of last element in table which should be author intials
if is_suffix (first) then -- if a valid suffix
suffix = first -- save it as a suffix and
first = table.remove(lastfirstTable); -- get what should be the initials from the table
end -- no suffix error message here because letter combination may be result of Romanization; check for digits?
last = table.concat(lastfirstTable, " ") -- returns a string that is the concatenation of all other names that are not initials
if mw.ustring.match (last, '%a+%s+%u+%s+%a+') then
add_vanc_error ('missing comma'); -- matches last II last; the case when a comma is missing
end
if mw.ustring.match (v_name, ' %u %u$') then -- this test is in the wrong place TODO: move or replace with a more appropriate test
add_vanc_error ('name'); -- matches a space between two intiials
end
else
first = ''; -- set to empty string for concatenation and because it may have been set for previous author/editor
last = v_name; -- last name or single corporate name? Doesn't support multiword corporate names? do we need this?
end
if is_set (first) then
if not mw.ustring.match (first, "^%u?%u$") then -- first shall contain one or two upper-case letters, nothing else
add_vanc_error ('initials'); -- too many initials; mixed case initials (which may be ok Romanization); hyphenated initials
end
is_good_vanc_name (last, first); -- check first and last before restoring the suffix which may have a non-Latin digit
if is_set (suffix) then
first = first .. ' ' .. suffix; -- if there was a suffix concatenate with the initials
suffix = ''; -- unset so we don't add this suffix to all subsequent names
end
else
if not corporate then
is_good_vanc_name (last, '');
end
end
link = select_one( args, cfg.aliases[list_name .. '-Link'], 'redundant_parameters', i ) or v_link_table[i];
mask = select_one( args, cfg.aliases[list_name .. '-Mask'], 'redundant_parameters', i );
names[i] = {last = last, first = first, link = link, mask = mask, corporate=corporate}; -- add this assembled name to our names list
end
return names, etal; -- all done, return our list of names
end
--[[--------------------------< S E L E C T _ A U T H O R _ E D I T O R _ S O U R C E >------------------------
Select one of |authors=, |authorn= / |lastn / firstn=, or |vauthors= as the source of the author name list or
select one of |editors=, |editorn= / editor-lastn= / |editor-firstn= or |veditors= as the source of the editor name list.
Only one of these appropriate three will be used. The hierarchy is: |authorn= (and aliases) highest and |authors= lowest and
similarly, |editorn= (and aliases) highest and |editors= lowest
When looking for |authorn= / |editorn= parameters, test |xxxxor1= and |xxxxor2= (and all of their aliases); stops after the second
test which mimicks the test used in extract_names() when looking for a hole in the author name list. There may be a better
way to do this, I just haven't discovered what that way is.
Emits an error message when more than one xxxxor name source is provided.
In this function, vxxxxors = vauthors or veditors; xxxxors = authors or editors as appropriate.
]]
local function select_author_editor_source (vxxxxors, xxxxors, args, list_name)
local lastfirst = false;
if select_one( args, cfg.aliases[list_name .. '-Last'], 'none', 1 ) or -- do this twice incase we have a |first1= without a |last1=; this ...
select_one( args, cfg.aliases[list_name .. '-First'], 'none', 1 ) or -- ... also catches the case where |first= is used with |vauthors=
select_one( args, cfg.aliases[list_name .. '-Last'], 'none', 2 ) or
select_one( args, cfg.aliases[list_name .. '-First'], 'none', 2 ) then
lastfirst=true;
end
if (is_set (vxxxxors) and true == lastfirst) or -- these are the three error conditions
(is_set (vxxxxors) and is_set (xxxxors)) or
(true == lastfirst and is_set (xxxxors)) then
local err_name;
if 'AuthorList' == list_name then -- figure out which name should be used in error message
err_name = 'author';
else
err_name = 'editor';
end
table.insert( z.message_tail, { set_error( 'redundant_parameters',
{err_name .. '-name-list parameters'}, true ) } ); -- add error message
end
if true == lastfirst then return 1 end; -- return a number indicating which author name source to use
if is_set (vxxxxors) then return 2 end;
if is_set (xxxxors) then return 3 end;
return 1; -- no authors so return 1; this allows missing author name test to run in case there is a first without last
end
--[[--------------------------< I S _ V A L I D _ P A R A M E T E R _ V A L U E >------------------------------
This function is used to validate a parameter's assigned value for those parameters that have only a limited number
of allowable values (yes, y, true, no, etc). When the parameter value has not been assigned a value (missing or empty
in the source template) the function returns true. If the parameter value is one of the list of allowed values returns
true; else, emits an error message and returns false.
]]
local function is_valid_parameter_value (value, name, possible)
if not is_set (value) then
return true; -- an empty parameter is ok
elseif in_array(value:lower(), possible) then
return true;
else
table.insert( z.message_tail, { set_error( 'invalid_param_val', {name, value}, true ) } ); -- not an allowed value so add error message
return false
end
end
--[[--------------------------< T E R M I N A T E _ N A M E _ L I S T >----------------------------------------
This function terminates a name list (author, contributor, editor) with a separator character (sepc) and a space
when the last character is not a sepc character or when the last three characters are not sepc followed by two
closing square brackets (close of a wikilink). When either of these is true, the name_list is terminated with a
single space character.
]]
local function terminate_name_list (name_list, sepc)
if (string.sub (name_list,-3,-1) == sepc .. '. ') then -- if already properly terminated
return name_list; -- just return the name list
elseif (string.sub (name_list,-1,-1) == sepc) or (string.sub (name_list,-3,-1) == sepc .. ']]') then -- if last name in list ends with sepc char
return name_list .. " "; -- don't add another
else
return name_list .. sepc .. ' '; -- otherwise terninate the name list
end
end
--[[-------------------------< F O R M A T _ V O L U M E _ I S S U E >----------------------------------------
returns the concatenation of the formatted volume and issue parameters as a single string; or formatted volume
or formatted issue, or an empty string if neither are set.
]]
local function format_volume_issue (volume, issue, cite_class, origin, sepc, lower)
if not is_set (volume) and not is_set (issue) then
return '';
end
if 'magazine' == cite_class or (in_array (cite_class, {'citation', 'map'}) and 'magazine' == origin) then
if is_set (volume) and is_set (issue) then
return wrap_msg ('vol-no', {sepc, volume, issue}, lower);
elseif is_set (volume) then
return wrap_msg ('vol', {sepc, volume}, lower);
else
return wrap_msg ('issue', {sepc, issue}, lower);
end
end
local vol = '';
if is_set (volume) then
if (4 < mw.ustring.len(volume)) then
vol = substitute (cfg.messages['j-vol'], {sepc, volume});
else
vol = substitute (cfg.presentation['vol-bold'], {sepc, hyphen_to_dash(volume)});
end
end
if is_set (issue) then
return vol .. substitute (cfg.messages['j-issue'], issue);
end
return vol;
end
--[[-------------------------< F O R M A T _ P A G E S _ S H E E T S >-----------------------------------------
adds static text to one of |page(s)= or |sheet(s)= values and returns it with all of the others set to empty strings.
The return order is:
page, pages, sheet, sheets
Singular has priority over plural when both are provided.
]]
local function format_pages_sheets (page, pages, sheet, sheets, cite_class, origin, sepc, nopp, lower)
if 'map' == cite_class then -- only cite map supports sheet(s) as in-source locators
if is_set (sheet) then
if 'journal' == origin then
return '', '', wrap_msg ('j-sheet', sheet, lower), '';
else
return '', '', wrap_msg ('sheet', {sepc, sheet}, lower), '';
end
elseif is_set (sheets) then
if 'journal' == origin then
return '', '', '', wrap_msg ('j-sheets', sheets, lower);
else
return '', '', '', wrap_msg ('sheets', {sepc, sheets}, lower);
end
end
end
local is_journal = 'journal' == cite_class or (in_array (cite_class, {'citation', 'map', 'interview'}) and 'journal' == origin);
if is_set (page) then
if is_journal then
return substitute (cfg.messages['j-page(s)'], page), '', '', '';
elseif not nopp then
return substitute (cfg.messages['p-prefix'], {sepc, page}), '', '', '';
else
return substitute (cfg.messages['nopp'], {sepc, page}), '', '', '';
end
elseif is_set(pages) then
if is_journal then
return substitute (cfg.messages['j-page(s)'], pages), '', '', '';
elseif tonumber(pages) ~= nil and not nopp then -- if pages is only digits, assume a single page number
return '', substitute (cfg.messages['p-prefix'], {sepc, pages}), '', '';
elseif not nopp then
return '', substitute (cfg.messages['pp-prefix'], {sepc, pages}), '', '';
else
return '', substitute (cfg.messages['nopp'], {sepc, pages}), '', '';
end
end
return '', '', '', ''; -- return empty strings
end
--[=[-------------------------< A R C H I V E _ U R L _ C H E C K >--------------------------------------------
Check archive.org urls to make sure they at least look like they are pointing at valid archives and not to the
save snapshot url or to calendar pages. When the archive url is 'https://web.archive.org/save/' (or http://...)
archive.org saves a snapshot of the target page in the url. That is something that Wikipedia should not allow
unwitting readers to do.
When the archive.org url does not have a complete timestamp, archive.org chooses a snapshot according to its own
algorithm or provides a calendar 'search' result. [[WP:ELNO]] discourages links to search results.
This function looks at the value assigned to |archive-url= and returns empty strings for |archive-url= and
|archive-date= and an error message when:
|archive-url= holds an archive.org save command url
|archive-url= is an archive.org url that does not have a complete timestamp (YYYYMMDDhhmmss 14 digits) in the
correct place
otherwise returns |archive-url= and |archive-date=
There are two mostly compatible archive.org urls:
//web.archive.org/<timestamp>... -- the old form
//web.archive.org/web/<timestamp>... -- the new form
The old form does not support or map to the new form when it contains a display flag. There are four identified flags
('id_', 'js_', 'cs_', 'im_') but since archive.org ignores others following the same form (two letters and an underscore)
we don't check for these specific flags but we do check the form.
This function supports a preview mode. When the article is rendered in preview mode, this funct may return a modified
archive url:
for save command errors, return undated wildcard (/*/)
for timestamp errors when the timestamp has a wildcard, return the url unmodified
for timestamp errors when the timestamp does not have a wildcard, return with timestamp limited to six digits plus wildcard (/yyyymm*/)
]=]
local function archive_url_check (url, date)
local err_msg = ''; -- start with the error message empty
local path, timestamp, flag; -- portions of the archive.or url
if (not url:match('//web%.archive%.org/')) and (not url:match('//liveweb%.archive%.org/')) then -- also deprecated liveweb Wayback machine url
return url, date; -- not an archive.org archive, return ArchiveURL and ArchiveDate
end
if url:match('//web%.archive%.org/save/') then -- if a save command url, we don't want to allow saving of the target page
err_msg = 'save command';
url = url:gsub ('(//web%.archive%.org)/save/', '%1/*/', 1); -- for preview mode: modify ArchiveURL
elseif url:match('//liveweb%.archive%.org/') then
err_msg = 'liveweb';
else
path, timestamp, flag = url:match('//web%.archive%.org/([^%d]*)(%d+)([^/]*)/'); -- split out some of the url parts for evaluation
if not is_set(timestamp) or 14 ~= timestamp:len() then -- path and flag optional, must have 14-digit timestamp here
err_msg = 'timestamp';
if '*' ~= flag then
url=url:gsub ('(//web%.archive%.org/[^%d]*%d?%d?%d?%d?%d?%d?)[^/]*', '%1*', 1) -- for preview, modify ts to be yearmo* max (0-6 digits plus splat)
end
elseif is_set(path) and 'web/' ~= path then -- older archive urls do not have the extra 'web/' path element
err_msg = 'path';
elseif is_set (flag) and not is_set (path) then -- flag not allowed with the old form url (without the 'web/' path element)
err_msg = 'flag';
elseif is_set (flag) and not flag:match ('%a%a_') then -- flag if present must be two alpha characters and underscore (requires 'web/' path element)
err_msg = 'flag';
else
return url, date; -- return archiveURL and ArchiveDate
end
end
-- if here, something not right so
table.insert( z.message_tail, { set_error( 'archive_url', {err_msg}, true ) } ); -- add error message and
if is_set (Frame:preprocess('{{REVISIONID}}')) then
return '', ''; -- return empty strings for archiveURL and ArchiveDate
else
return url, date; -- preview mode so return archiveURL and ArchiveDate
end
end
--[[--------------------------< M I S S I N G _ P I P E _ C H E C K >------------------------------------------
Look at the contents of a parameter. If the content has a string of characters and digits followed by an equal
sign, compare the alphanumeric string to the list of cs1|2 parameters. If found, then the string is possibly a
parameter that is missing its pipe:
{{cite ... |title=Title access-date=2016-03-17}}
cs1|2 shares some parameter names with xml/html atributes: class=, title=, etc. To prevent false positives xml/html
tags are removed before the search.
If a missing pipe is detected, this function adds the missing pipe maintenance category.
]]
local function missing_pipe_check (value)
local capture;
value = value:gsub ('%b<>', ''); -- remove xml/html tags because attributes: class=, title=, etc
capture = value:match ('%s+(%a[%a%d]+)%s*=') or value:match ('^(%a[%a%d]+)%s*='); -- find and categorize parameters with possible missing pipes
if capture and validate (capture) then -- if the capture is a valid parameter name
add_maint_cat ('missing_pipe');
end
end
--[[--------------------------< C I T A T I O N 0 >------------------------------------------------------------
This is the main function doing the majority of the citation formatting.
]]
local function citation0( config, args)
--[[
Load Input Parameters
The argument_wrapper facilitates the mapping of multiple aliases to single internal variable.
]]
local A = argument_wrapper( args );
local i
-- Pick out the relevant fields from the arguments. Different citation templates
-- define different field names for the same underlying things.
-- set default parameter values defined by |mode= parameter.
local Mode = A['Mode'];
if not is_valid_parameter_value (Mode, 'mode', cfg.keywords['mode']) then
Mode = '';
end
local author_etal;
local a = {}; -- authors list from |lastn= / |firstn= pairs or |vauthors=
local Authors;
local NameListFormat = A['NameListFormat'];
local Collaboration = A['Collaboration'];
do -- to limit scope of selected
local selected = select_author_editor_source (A['Vauthors'], A['Authors'], args, 'AuthorList');
if 1 == selected then
a, author_etal = extract_names (args, 'AuthorList'); -- fetch author list from |authorn= / |lastn= / |firstn=, |author-linkn=, and |author-maskn=
elseif 2 == selected then
NameListFormat = 'vanc'; -- override whatever |name-list-format= might be
a, author_etal = parse_vauthors_veditors (args, args.vauthors, 'AuthorList'); -- fetch author list from |vauthors=, |author-linkn=, and |author-maskn=
elseif 3 == selected then
Authors = A['Authors']; -- use content of |authors=
if 'authors' == A:ORIGIN('Authors') then -- but add a maint cat if the parameter is |authors=
add_maint_cat ('authors'); -- because use of this parameter is discouraged; what to do about the aliases is a TODO:
end
end
if is_set (Collaboration) then
author_etal = true; -- so that |display-authors=etal not required
end
end
local Others = A['Others'];
local editor_etal;
local e = {}; -- editors list from |editor-lastn= / |editor-firstn= pairs or |veditors=
local Editors;
do -- to limit scope of selected
local selected = select_author_editor_source (A['Veditors'], A['Editors'], args, 'EditorList');
if 1 == selected then
e, editor_etal = extract_names (args, 'EditorList'); -- fetch editor list from |editorn= / |editor-lastn= / |editor-firstn=, |editor-linkn=, and |editor-maskn=
elseif 2 == selected then
NameListFormat = 'vanc'; -- override whatever |name-list-format= might be
e, editor_etal = parse_vauthors_veditors (args, args.veditors, 'EditorList'); -- fetch editor list from |veditors=, |editor-linkn=, and |editor-maskn=
elseif 3 == selected then
Editors = A['Editors']; -- use content of |editors=
add_maint_cat ('editors'); -- but add a maint cat because use of this parameter is discouraged
end
end
local t = {}; -- translators list from |translator-lastn= / translator-firstn= pairs
local Translators; -- assembled translators name list
t = extract_names (args, 'TranslatorList'); -- fetch translator list from |translatorn= / |translator-lastn=, -firstn=, -linkn=, -maskn=
local interviewers_list = {};
local Interviewers = A['Interviewers']
if is_set (Interviewers) then -- add a maint cat if the |interviewers= is used
add_maint_cat ('interviewers'); -- because use of this parameter is discouraged
else
interviewers_list = extract_names (args, 'InterviewerList'); -- else, process preferred interviewers parameters
end
local c = {}; -- contributors list from |contributor-lastn= / contributor-firstn= pairs
local Contributors; -- assembled contributors name list
local Contribution = A['Contribution'];
if in_array(config.CitationClass, {"book","citation"}) and not is_set(A['Periodical']) then -- |contributor= and |contribution= only supported in book cites
c = extract_names (args, 'ContributorList'); -- fetch contributor list from |contributorn= / |contributor-lastn=, -firstn=, -linkn=, -maskn=
if 0 < #c then
if not is_set (Contribution) then -- |contributor= requires |contribution=
table.insert( z.message_tail, { set_error( 'contributor_missing_required_param', 'contribution')}); -- add missing contribution error message
c = {}; -- blank the contributors' table; it is used as a flag later
end
if 0 == #a then -- |contributor= requires |author=
table.insert( z.message_tail, { set_error( 'contributor_missing_required_param', 'author')}); -- add missing author error message
c = {}; -- blank the contributors' table; it is used as a flag later
end
end
else -- if not a book cite
if select_one (args, cfg.aliases['ContributorList-Last'], 'redundant_parameters', 1 ) then -- are there contributor name list parameters?
table.insert( z.message_tail, { set_error( 'contributor_ignored')}); -- add contributor ignored error message
end
Contribution = nil; -- unset
end
if not is_valid_parameter_value (NameListFormat, 'name-list-format', cfg.keywords['name-list-format']) then -- only accepted value for this parameter is 'vanc'
NameListFormat = ''; -- anything else, set to empty string
end
local Year = A['Year'];
local PublicationDate = A['PublicationDate'];
local OrigYear = A['OrigYear'];
local Date = A['Date'];
local LayDate = A['LayDate'];
------------------------------------------------- Get title data
local Title = A['Title'];
local ScriptTitle = A['ScriptTitle'];
local BookTitle = A['BookTitle'];
local Conference = A['Conference'];
local TransTitle = A['TransTitle'];
local TitleNote = A['TitleNote'];
local TitleLink = A['TitleLink'];
link_title_ok (TitleLink, A:ORIGIN ('TitleLink'), Title, 'title'); -- check for wikimarkup in |title-link= or wikimarkup in |title= when |title-link= is set
local Chapter = A['Chapter'];
local ScriptChapter = A['ScriptChapter'];
local ChapterLink -- = A['ChapterLink']; -- deprecated as a parameter but still used internally by cite episode
local TransChapter = A['TransChapter'];
local TitleType = A['TitleType'];
local Degree = A['Degree'];
local Docket = A['Docket'];
local ArchiveFormat = A['ArchiveFormat'];
local ArchiveDate;
local ArchiveURL;
ArchiveURL, ArchiveDate = archive_url_check (A['ArchiveURL'], A['ArchiveDate'])
local UrlStatus = A['UrlStatus'];
if 'url-status' == A:ORIGIN ('UrlStatus') then -- interim: TODO: this line goes away
if not is_valid_parameter_value (UrlStatus, 'url-status', cfg.keywords ['url-status']) then -- set in config.defaults to 'dead'
UrlStatus = ''; -- anything else, set to empty string
end -- interim: TODO: this line goes away
elseif is_set (A:ORIGIN ('UrlStatus')) then -- interim: while both |dead-url= and |url-status= allowed use separate keyword lists; TODO: remove this section
if not is_valid_parameter_value (UrlStatus, A:ORIGIN ('UrlStatus'), cfg.keywords ['deadurl']) then -- interim: assume |dead-url=; use those keywords; TODO: this line goes away
UrlStatus = ''; -- anything else, set to empty string; interim: TODO: this line goes away
end -- interim: TODO: this line goes away
end -- interim: TODO: this line goes away
if in_array (UrlStatus, {'yes', 'true', 'y'}) then -- TODO: remove this whole thing when |dead-url=[yes|no] parameters removed from articles
UrlStatus = 'dead';
elseif 'no' == UrlStatus then
UrlStatus = 'live';
end
local URL = A['URL']
local URLorigin = A:ORIGIN('URL'); -- get name of parameter that holds URL
local ChapterURL = A['ChapterURL'];
local ChapterURLorigin = A:ORIGIN('ChapterURL'); -- get name of parameter that holds ChapterURL
local ConferenceFormat = A['ConferenceFormat'];
local ConferenceURL = A['ConferenceURL'];
local ConferenceURLorigin = A:ORIGIN('ConferenceURL'); -- get name of parameter that holds ConferenceURL
local Periodical = A['Periodical'];
local Periodical_origin = A:ORIGIN('Periodical'); -- get the name of the periodical parameter
local Series = A['Series'];
local Volume;
local Issue;
local Page;
local Pages;
local At;
if in_array (config.CitationClass, cfg.templates_using_volume) then
Volume = A['Volume'];
end
-- conference & map books do not support issue
if in_array (config.CitationClass, cfg.templates_using_issue) and not (in_array (config.CitationClass, {'conference', 'map'}) and not is_set (Periodical))then
Issue = A['Issue'];
end
local Position = '';
if not in_array (config.CitationClass, cfg.templates_not_using_page) then
Page = A['Page'];
Pages = hyphen_to_dash( A['Pages'] );
At = A['At'];
end
local Edition = A['Edition'];
local PublicationPlace = A['PublicationPlace']
local Place = A['Place'];
local PublisherName = A['PublisherName'];
local RegistrationRequired = A['RegistrationRequired'];
if not is_valid_parameter_value (RegistrationRequired, 'registration', cfg.keywords ['yes_true_y']) then
RegistrationRequired=nil;
end
local SubscriptionRequired = A['SubscriptionRequired'];
if not is_valid_parameter_value (SubscriptionRequired, 'subscription', cfg.keywords ['yes_true_y']) then
SubscriptionRequired=nil;
end
local UrlAccess = A['UrlAccess'];
if not is_valid_parameter_value (UrlAccess, 'url-access', cfg.keywords ['url-access']) then
UrlAccess = nil;
end
if not is_set(URL) and is_set(UrlAccess) then
UrlAccess = nil;
table.insert( z.message_tail, { set_error( 'param_access_requires_param', {'url'}, true ) } );
end
if is_set (UrlAccess) and is_set (SubscriptionRequired) then -- while not aliases, these are much the same so if both are set
table.insert( z.message_tail, { set_error( 'redundant_parameters', {wrap_style ('parameter', 'url-access') .. ' and ' .. wrap_style ('parameter', 'subscription')}, true ) } ); -- add error message
SubscriptionRequired = nil; -- unset; prefer |access= over |subscription=
end
if is_set (UrlAccess) and is_set (RegistrationRequired) then -- these are not the same but contradictory so if both are set
table.insert( z.message_tail, { set_error( 'redundant_parameters', {wrap_style ('parameter', 'url-access') .. ' and ' .. wrap_style ('parameter', 'registration')}, true ) } ); -- add error message
RegistrationRequired = nil; -- unset; prefer |access= over |registration=
end
local ChapterUrlAccess = A['ChapterUrlAccess'];
if not is_valid_parameter_value (ChapterUrlAccess, 'chapter-url-access', cfg.keywords ['url-access']) then -- same as url-access
ChapterUrlAccess = nil;
end
if not is_set(ChapterURL) and is_set(ChapterUrlAccess) then
ChapterUrlAccess = nil;
table.insert( z.message_tail, { set_error( 'param_access_requires_param', {'chapter-url'}, true ) } );
end
local Via = A['Via'];
local AccessDate = A['AccessDate'];
local Agency = A['Agency'];
local Language = A['Language'];
local Format = A['Format'];
local ChapterFormat = A['ChapterFormat'];
local DoiBroken = A['DoiBroken'];
local ID = A['ID'];
local ASINTLD = A['ASINTLD'];
local IgnoreISBN = A['IgnoreISBN'];
if not is_valid_parameter_value (IgnoreISBN, 'ignore-isbn-error', cfg.keywords ['yes_true_y']) then
IgnoreISBN = nil; -- anything else, set to empty string
end
local Embargo = A['Embargo'];
local Class = A['Class']; -- arxiv class identifier
local ID_list = extract_ids( args );
local ID_access_levels = extract_id_access_levels( args, ID_list );
local Quote = A['Quote'];
local LayFormat = A['LayFormat'];
local LayURL = A['LayURL'];
local LaySource = A['LaySource'];
local Transcript = A['Transcript'];
local TranscriptFormat = A['TranscriptFormat'];
local TranscriptURL = A['TranscriptURL']
local TranscriptURLorigin = A:ORIGIN('TranscriptURL'); -- get name of parameter that holds TranscriptURL
local LastAuthorAmp = A['LastAuthorAmp'];
if not is_valid_parameter_value (LastAuthorAmp, 'last-author-amp', cfg.keywords ['yes_true_y']) then
LastAuthorAmp = nil; -- set to empty string
end
local no_tracking_cats = A['NoTracking'];
if not is_valid_parameter_value (no_tracking_cats, 'no-tracking', cfg.keywords ['yes_true_y']) then
no_tracking_cats = nil; -- set to empty string
end
--local variables that are not cs1 parameters
local use_lowercase; -- controls capitalization of certain static text
local this_page = mw.title.getCurrentTitle(); -- also used for COinS and for language
local anchor_year; -- used in the CITEREF identifier
local COinS_date = {}; -- holds date info extracted from |date= for the COinS metadata by Module:Date verification
local DF = is_set(A['DF']) and A['DF'] or 'dmy-all'; -- date format set in cs1|2 template
if not is_valid_parameter_value (DF, 'df', cfg.keywords['date-format']) then -- validate reformatting keyword
DF = ''; -- not valid, set to empty string
end
local sepc; -- separator between citation elements for CS1 a period, for CS2, a comma
local PostScript;
local Ref;
sepc, PostScript, Ref = set_style (Mode:lower(), A['PostScript'], A['Ref'], config.CitationClass);
use_lowercase = ( sepc == ',' ); -- used to control capitalization for certain static text
--check this page to see if it is in one of the namespaces that cs1 is not supposed to add to the error categories
if not is_set (no_tracking_cats) then -- ignore if we are already not going to categorize this page
if in_array (this_page.nsText, cfg.uncategorized_namespaces) then
no_tracking_cats = "true"; -- set no_tracking_cats
end
for _,v in ipairs (cfg.uncategorized_subpages) do -- cycle through page name patterns
if this_page.text:match (v) then -- test page name against each pattern
no_tracking_cats = "true"; -- set no_tracking_cats
break; -- bail out if one is found
end
end
end
-- check for extra |page=, |pages= or |at= parameters. (also sheet and sheets while we're at it)
select_one( args, {'page', 'p', 'pp', 'pages', 'at', 'sheet', 'sheets'}, 'redundant_parameters' ); -- this is a dummy call simply to get the error message and category
local NoPP = A['NoPP']
if is_set (NoPP) and is_valid_parameter_value (NoPP, 'nopp', cfg.keywords ['yes_true_y']) then
NoPP = true;
else
NoPP = nil; -- unset, used as a flag later
end
if is_set(Page) then
if is_set(Pages) or is_set(At) then
Pages = ''; -- unset the others
At = '';
end
extra_text_in_page_check (Page); -- add this page to maint cat if |page= value begins with what looks like p. or pp.
elseif is_set(Pages) then
if is_set(At) then
At = ''; -- unset
end
extra_text_in_page_check (Pages); -- add this page to maint cat if |pages= value begins with what looks like p. or pp.
end
-- both |publication-place= and |place= (|location=) allowed if different
if not is_set(PublicationPlace) and is_set(Place) then
PublicationPlace = Place; -- promote |place= (|location=) to |publication-place
end
if PublicationPlace == Place then Place = ''; end -- don't need both if they are the same
--[[
Parameter remapping for cite encyclopedia:
When the citation has these parameters:
|encyclopedia and |title then map |title to |article and |encyclopedia to |title
|encyclopedia and |article then map |encyclopedia to |title
|encyclopedia then map |encyclopedia to |title
|trans-title maps to |trans-chapter when |title is re-mapped
|url maps to |chapterurl when |title is remapped
All other combinations of |encyclopedia, |title, and |article are not modified
]]
local Encyclopedia = A['Encyclopedia'];
if ( config.CitationClass == "encyclopaedia" ) or ( config.CitationClass == "citation" and is_set (Encyclopedia)) then -- test code for citation
if is_set(Periodical) then -- Periodical is set when |encyclopedia is set
if is_set(Title) or is_set (ScriptTitle) then
if not is_set(Chapter) then
Chapter = Title; -- |encyclopedia and |title are set so map |title to |article and |encyclopedia to |title
ScriptChapter = ScriptTitle;
TransChapter = TransTitle;
ChapterURL = URL;
ChapterUrlAccess = UrlAccess;
if not is_set (ChapterURL) and is_set (TitleLink) then
Chapter = make_wikilink (TitleLink, Chapter);
end
Title = Periodical;
ChapterFormat = Format;
Periodical = ''; -- redundant so unset
TransTitle = '';
URL = '';
Format = '';
TitleLink = '';
ScriptTitle = '';
end
else -- |title not set
Title = Periodical; -- |encyclopedia set and |article set or not set so map |encyclopedia to |title
Periodical = ''; -- redundant so unset
end
end
end
-- Special case for cite techreport.
if (config.CitationClass == "techreport") then -- special case for cite techreport
if is_set(A['Number']) then -- cite techreport uses 'number', which other citations alias to 'issue'
if not is_set(ID) then -- can we use ID for the "number"?
ID = A['Number']; -- yes, use it
else -- ID has a value so emit error message
table.insert( z.message_tail, { set_error('redundant_parameters', {wrap_style ('parameter', 'id') .. ' and ' .. wrap_style ('parameter', 'number')}, true )});
end
end
end
-- special case for cite mailing list
if (config.CitationClass == "mailinglist") then
Periodical = A ['MailingList'];
elseif 'mailinglist' == A:ORIGIN('Periodical') then
Periodical = ''; -- unset because mailing list is only used for cite mailing list
end
-- Account for the oddity that is {{cite conference}}, before generation of COinS data.
if 'conference' == config.CitationClass then
if is_set(BookTitle) then
Chapter = Title;
-- ChapterLink = TitleLink; -- |chapterlink= is deprecated
ChapterURL = URL;
ChapterUrlAccess = UrlAccess;
ChapterURLorigin = URLorigin;
URLorigin = '';
ChapterFormat = Format;
TransChapter = TransTitle;
Title = BookTitle;
Format = '';
-- TitleLink = '';
TransTitle = '';
URL = '';
end
elseif 'speech' ~= config.CitationClass then
Conference = ''; -- not cite conference or cite speech so make sure this is empty string
end
-- cite map oddities
local Cartography = "";
local Scale = "";
local Sheet = A['Sheet'] or '';
local Sheets = A['Sheets'] or '';
if config.CitationClass == "map" then
Chapter = A['Map'];
ChapterURL = A['MapURL'];
ChapterUrlAccess = UrlAccess;
TransChapter = A['TransMap'];
ChapterURLorigin = A:ORIGIN('MapURL');
ChapterFormat = A['MapFormat'];
Cartography = A['Cartography'];
if is_set( Cartography ) then
Cartography = sepc .. " " .. wrap_msg ('cartography', Cartography, use_lowercase);
end
Scale = A['Scale'];
if is_set( Scale ) then
Scale = sepc .. " " .. Scale;
end
end
-- Account for the oddities that are {{cite episode}} and {{cite serial}}, before generation of COinS data.
if 'episode' == config.CitationClass or 'serial' == config.CitationClass then
local AirDate = A['AirDate'];
local SeriesLink = A['SeriesLink'];
link_title_ok (SeriesLink, A:ORIGIN ('SeriesLink'), Series, 'series'); -- check for wikimarkup in |series-link= or wikimarkup in |series= when |series-link= is set
local Network = A['Network'];
local Station = A['Station'];
local s, n = {}, {};
-- do common parameters first
if is_set(Network) then table.insert(n, Network); end
if is_set(Station) then table.insert(n, Station); end
ID = table.concat(n, sepc .. ' ');
if not is_set (Date) and is_set (AirDate) then -- promote airdate to date
Date = AirDate;
end
if 'episode' == config.CitationClass then -- handle the oddities that are strictly {{cite episode}}
local Season = A['Season'];
local SeriesNumber = A['SeriesNumber'];
if is_set (Season) and is_set (SeriesNumber) then -- these are mutually exclusive so if both are set
table.insert( z.message_tail, { set_error( 'redundant_parameters', {wrap_style ('parameter', 'season') .. ' and ' .. wrap_style ('parameter', 'seriesno')}, true ) } ); -- add error message
SeriesNumber = ''; -- unset; prefer |season= over |seriesno=
end
-- assemble a table of parts concatenated later into Series
if is_set(Season) then table.insert(s, wrap_msg ('season', Season, use_lowercase)); end
if is_set(SeriesNumber) then table.insert(s, wrap_msg ('series', SeriesNumber, use_lowercase)); end
if is_set(Issue) then table.insert(s, wrap_msg ('episode', Issue, use_lowercase)); end
Issue = ''; -- unset because this is not a unique parameter
Chapter = Title; -- promote title parameters to chapter
ScriptChapter = ScriptTitle;
ChapterLink = TitleLink; -- alias episodelink
TransChapter = TransTitle;
ChapterURL = URL;
ChapterUrlAccess = UrlAccess;
ChapterURLorigin = A:ORIGIN('URL');
Title = Series; -- promote series to title
TitleLink = SeriesLink;
Series = table.concat(s, sepc .. ' '); -- this is concatenation of season, seriesno, episode number
if is_set (ChapterLink) and not is_set (ChapterURL) then -- link but not URL
Chapter = make_wikilink (ChapterLink, Chapter);
elseif is_set (ChapterLink) and is_set (ChapterURL) then -- if both are set, URL links episode;
Series = make_wikilink (ChapterLink, Series);
end
URL = ''; -- unset
TransTitle = '';
ScriptTitle = '';
else -- now oddities that are cite serial
Issue = ''; -- unset because this parameter no longer supported by the citation/core version of cite serial
Chapter = A['Episode']; -- TODO: make |episode= available to cite episode someday?
if is_set (Series) and is_set (SeriesLink) then
Series = make_wikilink (SeriesLink, Series);
end
Series = wrap_style ('italic-title', Series); -- series is italicized
end
end
-- end of {{cite episode}} stuff
-- Account for the oddities that are {{cite arxiv}}, {{cite biorxiv}}, {{cite citeseerx}}, before generation of COinS data.
do
if in_array (config.CitationClass, {'arxiv', 'biorxiv', 'citeseerx'}) then
if not is_set (ID_list[config.CitationClass:upper()]) then -- |arxiv= or |eprint= required for cite arxiv; |biorxiv= & |citeseerx= required for their templates
table.insert( z.message_tail, { set_error( config.CitationClass .. '_missing', {}, true ) } ); -- add error message
end
if 'arxiv' == config.CitationClass then
Periodical = 'arXiv'; -- set to arXiv for COinS; after that, must be set to empty string
end
if 'biorxiv' == config.CitationClass then
Periodical = 'bioRxiv'; -- set to bioRxiv for COinS; after that, must be set to empty string
end
if 'citeseerx' == config.CitationClass then
Periodical = 'CiteSeerX'; -- set to CiteSeerX for COinS; after that, must be set to empty string
end
end
end
-- handle type parameter for those CS1 citations that have default values
if in_array(config.CitationClass, {"AV-media-notes", "interview", "mailinglist", "map", "podcast", "pressrelease", "report", "techreport", "thesis"}) then
TitleType = set_titletype (config.CitationClass, TitleType);
if is_set(Degree) and "Thesis" == TitleType then -- special case for cite thesis
TitleType = Degree .. ' ' .. cfg.title_types ['thesis']:lower();
end
end
if is_set(TitleType) then -- if type parameter is specified
TitleType = substitute( cfg.messages['type'], TitleType); -- display it in parentheses
-- TODO: Hack on TitleType to fix bunched parentheses problem
end
-- legacy: promote PublicationDate to Date if neither Date nor Year are set.
local Date_origin; -- to hold the name of parameter promoted to Date; required for date error messaging
if not is_set (Date) then
Date = Year; -- promote Year to Date
Year = nil; -- make nil so Year as empty string isn't used for CITEREF
if not is_set (Date) and is_set(PublicationDate) then -- use PublicationDate when |date= and |year= are not set
Date = PublicationDate; -- promote PublicationDate to Date
PublicationDate = ''; -- unset, no longer needed
Date_origin = A:ORIGIN('PublicationDate'); -- save the name of the promoted parameter
else
Date_origin = A:ORIGIN('Year'); -- save the name of the promoted parameter
end
else
Date_origin = A:ORIGIN('Date'); -- not a promotion; name required for error messaging
end
if PublicationDate == Date then PublicationDate = ''; end -- if PublicationDate is same as Date, don't display in rendered citation
--[[
Go test all of the date-holding parameters for valid MOS:DATE format and make sure that dates are real dates. This must be done before we do COinS because here is where
we get the date used in the metadata.
Date validation supporting code is in Module:Citation/CS1/Date_validation
]]
do -- create defined block to contain local variables error_message, date_parameters_list, mismatch
local error_message = '';
-- AirDate has been promoted to Date so not necessary to check it
-- local date_parameters_list = {['access-date']=AccessDate, ['archive-date']=ArchiveDate, ['date']=Date, ['doi-broken-date']=DoiBroken,
-- ['embargo']=Embargo, ['lay-date']=LayDate, ['publication-date']=PublicationDate, ['year']=Year};
local date_parameters_list = {
['access-date'] = {val=AccessDate, name=A:ORIGIN ('AccessDate')},
['archive-date'] = {val=ArchiveDate, name=A:ORIGIN ('ArchiveDate')},
['date'] = {val=Date, name=Date_origin},
['doi-broken-date'] = {val=DoiBroken, name=A:ORIGIN ('DoiBroken')},
['embargo'] = {val=Embargo, name=A:ORIGIN ('Embargo')},
['lay-date'] = {val=LayDate, name=A:ORIGIN ('LayDate')},
['publication-date'] ={val=PublicationDate, name=A:ORIGIN ('PublicationDate')},
['year'] = {val=Year, name=A:ORIGIN ('Year')},
};
anchor_year, Embargo, error_message = dates(date_parameters_list, COinS_date);
-- start temporary Julian / Gregorian calendar uncertainty categorization
if COinS_date.inter_cal_cat then
add_prop_cat ('jul_greg_uncertainty');
end
-- end temporary Julian / Gregorian calendar uncertainty categorization
if is_set (Year) and is_set (Date) then -- both |date= and |year= not normally needed;
local mismatch = year_date_check (Year, Date)
if 0 == mismatch then -- |year= does not match a year-value in |date=
if is_set (error_message) then -- if there is already an error message
error_message = error_message .. ', '; -- tack on this additional message
end
error_message = error_message .. '|year= / |date= mismatch';
elseif 1 == mismatch then -- |year= matches year-value in |date=
add_maint_cat ('date_year');
end
end
if not is_set(error_message) then -- error free dates only
local modified = false; -- flag
if is_set (DF) then -- if we need to reformat dates
modified = reformat_dates (date_parameters_list, DF, false); -- reformat to DF format, use long month names if appropriate
end
if true == date_hyphen_to_dash (date_parameters_list) then -- convert hyphens to dashes where appropriate
modified = true;
add_maint_cat ('date_format'); -- hyphens were converted so add maint category
end
-- for those wikis that can and want to have English date names translated to the local language,
-- uncomment these three lines. Not supported by en.wiki (for obvious reasons)
-- set date_name_xlate() second argument to true to translate English digits to local digits (will translate ymd dates)
if date_name_xlate (date_parameters_list, false) then
modified = true;
end
if modified then -- if the date_parameters_list values were modified
AccessDate = date_parameters_list['access-date'].val; -- overwrite date holding parameters with modified values
ArchiveDate = date_parameters_list['archive-date'].val;
Date = date_parameters_list['date'].val;
DoiBroken = date_parameters_list['doi-broken-date'].val;
LayDate = date_parameters_list['lay-date'].val;
PublicationDate = date_parameters_list['publication-date'].val;
end
else
table.insert( z.message_tail, { set_error( 'bad_date', {error_message}, true ) } ); -- add this error message
end
end -- end of do
-- Account for the oddity that is {{cite journal}} with |pmc= set and |url= not set. Do this after date check but before COInS.
-- Here we unset Embargo if PMC not embargoed (|embargo= not set in the citation) or if the embargo time has expired. Otherwise, holds embargo date
Embargo = is_embargoed (Embargo);
if config.CitationClass == "journal" and not is_set(URL) and is_set(ID_list['PMC']) then
if not is_set (Embargo) then -- if not embargoed or embargo has expired
URL=cfg.id_handlers['PMC'].prefix .. ID_list['PMC']; -- set url to be the same as the PMC external link if not embargoed
URLorigin = cfg.id_handlers['PMC'].parameters[1]; -- set URLorigin to parameter name for use in error message if citation is missing a |title=
if is_set(AccessDate) then -- access date requires |url=; pmc created url is not |url=
table.insert( z.message_tail, { set_error( 'accessdate_missing_url', {}, true ) } );
AccessDate = ''; -- unset
end
end
end
-- At this point fields may be nil if they weren't specified in the template use. We can use that fact.
-- Test if citation has no title
if not is_set(Title) and
not is_set(TransTitle) and
not is_set(ScriptTitle) then
if 'episode' == config.CitationClass then -- special case for cite episode; TODO: is there a better way to do this?
table.insert( z.message_tail, { set_error( 'citation_missing_title', {'series'}, true ) } );
else
table.insert( z.message_tail, { set_error( 'citation_missing_title', {'title'}, true ) } );
end
end
if 'none' == Title and in_array (config.CitationClass, {'journal', 'citation'}) and is_set (Periodical) and 'journal' == A:ORIGIN('Periodical') then -- special case for journal cites
Title = ''; -- set title to empty string
add_maint_cat ('untitled');
end
check_for_url ({ -- add error message when any of these parameters contains a URL
['title']=Title,
[A:ORIGIN('Chapter')]=Chapter,
[A:ORIGIN('Periodical')]=Periodical,
[A:ORIGIN('PublisherName')] = PublisherName
});
-- COinS metadata (see <http://ocoins.info/>) for automated parsing of citation information.
-- handle the oddity that is cite encyclopedia and {{citation |encyclopedia=something}}. Here we presume that
-- when Periodical, Title, and Chapter are all set, then Periodical is the book (encyclopedia) title, Title
-- is the article title, and Chapter is a section within the article. So, we remap
local coins_chapter = Chapter; -- default assuming that remapping not required
local coins_title = Title; -- et tu
if 'encyclopaedia' == config.CitationClass or ('citation' == config.CitationClass and is_set (Encyclopedia)) then
if is_set (Chapter) and is_set (Title) and is_set (Periodical) then -- if all are used then
coins_chapter = Title; -- remap
coins_title = Periodical;
end
end
local coins_author = a; -- default for coins rft.au
if 0 < #c then -- but if contributor list
coins_author = c; -- use that instead
end
-- this is the function call to COinS()
local OCinSoutput = COinS({
['Periodical'] = Periodical,
['Encyclopedia'] = Encyclopedia,
['Chapter'] = make_coins_title (coins_chapter, ScriptChapter), -- Chapter and ScriptChapter stripped of bold / italic wikimarkup
['Degree'] = Degree; -- cite thesis only
['Title'] = make_coins_title (coins_title, ScriptTitle), -- Title and ScriptTitle stripped of bold / italic wikimarkup
['PublicationPlace'] = PublicationPlace,
['Date'] = COinS_date.rftdate, -- COinS_date has correctly formatted date if Date is valid;
['Season'] = COinS_date.rftssn,
['Chron'] = COinS_date.rftchron or (not COinS_date.rftdate and Date) or '', -- chron but if not set and invalid date format use Date; keep this last bit?
['Series'] = Series,
['Volume'] = Volume,
['Issue'] = Issue,
['Pages'] = get_coins_pages (first_set ({Sheet, Sheets, Page, Pages, At}, 5)), -- pages stripped of external links
['Edition'] = Edition,
['PublisherName'] = PublisherName,
['URL'] = first_set ({ChapterURL, URL}, 2),
['Authors'] = coins_author,
['ID_list'] = ID_list,
['RawPage'] = this_page.prefixedText,
}, config.CitationClass);
-- Account for the oddities that are {{cite arxiv}}, {{cite biorxiv}}, and {{cite citeseerx}} AFTER generation of COinS data.
if in_array (config.CitationClass, {'arxiv', 'biorxiv', 'citeseerx'}) then -- we have set rft.jtitle in COinS to arXiv, bioRxiv, or CiteSeerX now unset so it isn't displayed
Periodical = ''; -- periodical not allowed in these templates; if article has been published, use cite journal
end
-- special case for cite newsgroup. Do this after COinS because we are modifying Publishername to include some static text
if 'newsgroup' == config.CitationClass then
if is_set (PublisherName) then
PublisherName = substitute (cfg.messages['newsgroup'], external_link( 'news:' .. PublisherName, PublisherName, A:ORIGIN('PublisherName'), nil ));
end
end
-- Now perform various field substitutions.
-- We also add leading spaces and surrounding markup and punctuation to the
-- various parts of the citation, but only when they are non-nil.
local EditorCount; -- used only for choosing {ed.) or (eds.) annotation at end of editor name-list
do
local last_first_list;
local control = {
format = NameListFormat, -- empty string or 'vanc'
maximum = nil, -- as if display-authors or display-editors not set
lastauthoramp = LastAuthorAmp,
page_name = this_page.text, -- get current page name so that we don't wikilink to it via editorlinkn
mode = Mode
};
do -- do editor name list first because the now unsupported coauthors used to modify control table
control.maximum , editor_etal = get_display_authors_editors (A['DisplayEditors'], #e, 'editors', editor_etal);
last_first_list, EditorCount = list_people(control, e, editor_etal);
if is_set (Editors) then
if editor_etal then
Editors = Editors .. ' ' .. cfg.messages['et al']; -- add et al. to editors parameter beause |display-editors=etal
EditorCount = 2; -- with et al., |editors= is multiple names; spoof to display (eds.) annotation
else
EditorCount = 2; -- we don't know but assume |editors= is multiple names; spoof to display (eds.) annotation
end
else
Editors = last_first_list; -- either an author name list or an empty string
end
if 1 == EditorCount and (true == editor_etal or 1 < #e) then -- only one editor displayed but includes etal then
EditorCount = 2; -- spoof to display (eds.) annotation
end
end
do -- now do interviewers
control.maximum = #interviewers_list; -- number of interviewerss
Interviewers = list_people(control, interviewers_list, false); -- et al not currently supported
end
do -- now do translators
control.maximum = #t; -- number of translators
Translators = list_people(control, t, false); -- et al not currently supported
end
do -- now do contributors
control.maximum = #c; -- number of contributors
Contributors = list_people(control, c, false); -- et al not currently supported
end
do -- now do authors
control.maximum , author_etal = get_display_authors_editors (A['DisplayAuthors'], #a, 'authors', author_etal);
last_first_list = list_people(control, a, author_etal);
if is_set (Authors) then
Authors, author_etal = name_has_etal (Authors, author_etal, false); -- find and remove variations on et al.
if author_etal then
Authors = Authors .. ' ' .. cfg.messages['et al']; -- add et al. to authors parameter
end
else
Authors = last_first_list; -- either an author name list or an empty string
end
end -- end of do
if is_set (Authors) and is_set (Collaboration) then
Authors = Authors .. ' (' .. Collaboration .. ')'; -- add collaboration after et al.
end
end
-- apply |[xx-]format= styling; at the end, these parameters hold correctly styled format annotation,
-- an error message if the associated url is not set, or an empty string for concatenation
ArchiveFormat = style_format (ArchiveFormat, ArchiveURL, 'archive-format', 'archive-url');
ConferenceFormat = style_format (ConferenceFormat, ConferenceURL, 'conference-format', 'conference-url');
Format = style_format (Format, URL, 'format', 'url');
LayFormat = style_format (LayFormat, LayURL, 'lay-format', 'lay-url');
TranscriptFormat = style_format (TranscriptFormat, TranscriptURL, 'transcript-format', 'transcripturl');
-- special case for chapter format so no error message or cat when chapter not supported
if not (in_array(config.CitationClass, {'web', 'news', 'journal', 'magazine', 'pressrelease', 'podcast', 'newsgroup', 'arxiv', 'biorxiv', 'citeseerx'}) or
('citation' == config.CitationClass and is_set (Periodical) and not is_set (Encyclopedia))) then
ChapterFormat = style_format (ChapterFormat, ChapterURL, 'chapter-format', 'chapter-url');
end
if not is_set(URL) then
if in_array(config.CitationClass, {"web","podcast", "mailinglist"}) then -- |url= required for cite web, cite podcast, and cite mailinglist
table.insert( z.message_tail, { set_error( 'cite_web_url', {}, true ) } );
end
-- do we have |accessdate= without either |url= or |chapter-url=?
if is_set(AccessDate) and not is_set(ChapterURL)then -- ChapterURL may be set when URL is not set;
table.insert( z.message_tail, { set_error( 'accessdate_missing_url', {}, true ) } );
AccessDate = '';
end
end
local OriginalURL, OriginalURLorigin, OriginalFormat, OriginalAccess;
-- DeadURL = DeadURL:lower(); -- used later when assembling archived text
UrlStatus = UrlStatus:lower(); -- used later when assembling archived text
if is_set( ArchiveURL ) then
if is_set (ChapterURL) then -- if chapter-url is set apply archive url to it
OriginalURL = ChapterURL; -- save copy of source chapter's url for archive text
OriginalURLorigin = ChapterURLorigin; -- name of chapter-url parameter for error messages
OriginalFormat = ChapterFormat; -- and original |chapter-format=
-- if 'no' ~= DeadURL then
if 'live' ~= UrlStatus then
ChapterURL = ArchiveURL -- swap-in the archive's url
ChapterURLorigin = A:ORIGIN('ArchiveURL') -- name of archive-url parameter for error messages
ChapterFormat = ArchiveFormat or ''; -- swap in archive's format
ChapterUrlAccess = nil; -- restricted access levels do not make sense for archived urls
end
elseif is_set (URL) then
OriginalURL = URL; -- save copy of original source URL
OriginalURLorigin = URLorigin; -- name of url parameter for error messages
OriginalFormat = Format; -- and original |format=
OriginalAccess = UrlAccess;
-- if 'no' ~= DeadURL then -- if URL set then archive-url applies to it
if 'live' ~= UrlStatus then -- if URL set then archive-url applies to it
URL = ArchiveURL -- swap-in the archive's url
URLorigin = A:ORIGIN('ArchiveURL') -- name of archive url parameter for error messages
Format = ArchiveFormat or ''; -- swap in archive's format
UrlAccess = nil; -- restricted access levels do not make sense for archived urls
end
end
end
if in_array(config.CitationClass, {'web','news','journal', 'magazine', 'pressrelease', 'podcast', 'newsgroup', 'arxiv', 'biorxiv', 'citeseerx'}) or -- if any of the 'periodical' cites except encyclopedia
('citation' == config.CitationClass and is_set (Periodical) and not is_set (Encyclopedia)) then
local chap_param;
if is_set (Chapter) then -- get a parameter name from one of these chapter related meta-parameters
chap_param = A:ORIGIN ('Chapter')
elseif is_set (TransChapter) then
chap_param = A:ORIGIN ('TransChapter')
elseif is_set (ChapterURL) then
chap_param = A:ORIGIN ('ChapterURL')
elseif is_set (ScriptChapter) then
chap_param = A:ORIGIN ('ScriptChapter')
else is_set (ChapterFormat)
chap_param = A:ORIGIN ('ChapterFormat')
end
if is_set (chap_param) then -- if we found one
table.insert( z.message_tail, { set_error( 'chapter_ignored', {chap_param}, true ) } ); -- add error message
Chapter = ''; -- and set them to empty string to be safe with concatenation
TransChapter = '';
ChapterURL = '';
ScriptChapter = '';
ChapterFormat = '';
end
else -- otherwise, format chapter / article title
local no_quotes = false; -- default assume that we will be quoting the chapter parameter value
if is_set (Contribution) and 0 < #c then -- if this is a contribution with contributor(s)
if in_array (Contribution:lower(), cfg.keywords.contribution) then -- and a generic contribution title
no_quotes = true; -- then render it unquoted
end
end
Chapter = format_chapter_title (ScriptChapter, Chapter, TransChapter, ChapterURL, ChapterURLorigin, no_quotes, ChapterUrlAccess); -- Contribution is also in Chapter
if is_set (Chapter) then
Chapter = Chapter .. ChapterFormat ;
if 'map' == config.CitationClass and is_set (TitleType) then
Chapter = Chapter .. ' ' .. TitleType; -- map annotation here; not after title
end
Chapter = Chapter.. sepc .. ' ';
elseif is_set (ChapterFormat) then -- |chapter= not set but |chapter-format= is so ...
Chapter = ChapterFormat .. sepc .. ' '; -- ... ChapterFormat has error message, we want to see it
end
end
-- Format main title.
if '...' == Title:sub (-3) then -- if elipsis is the last three characters of |title=
Title = mw.ustring.gsub (Title, '(%.%.%.)%.+$', '%1'); -- limit the number of dots to three
elseif not mw.ustring.find (Title, '%.%s*%a%.') then -- end of title is not a 'dot-(optional space-)letter-dot' initialism
Title = mw.ustring.gsub(Title, '%'..sepc..'$', ''); -- remove any trailing separator character
end
if is_set(TitleLink) and is_set(Title) then
Title = make_wikilink (TitleLink, Title);
end
if in_array(config.CitationClass, {'web', 'news', 'journal', 'magazine', 'pressrelease', 'podcast', 'newsgroup', 'mailinglist', 'interview', 'arxiv', 'biorxiv', 'citeseerx'}) or
('citation' == config.CitationClass and is_set (Periodical) and not is_set (Encyclopedia)) or
('map' == config.CitationClass and is_set (Periodical)) then -- special case for cite map when the map is in a periodical treat as an article
Title = kern_quotes (Title); -- if necessary, separate title's leading and trailing quote marks from Module provided quote marks
Title = wrap_style ('quoted-title', Title);
Title = script_concatenate (Title, ScriptTitle); -- <bdi> tags, lang atribute, categorization, etc; must be done after title is wrapped
TransTitle= wrap_style ('trans-quoted-title', TransTitle );
elseif 'report' == config.CitationClass then -- no styling for cite report
Title = script_concatenate (Title, ScriptTitle); -- <bdi> tags, lang atribute, categorization, etc; must be done after title is wrapped
TransTitle= wrap_style ('trans-quoted-title', TransTitle ); -- for cite report, use this form for trans-title
else
Title = wrap_style ('italic-title', Title);
Title = script_concatenate (Title, ScriptTitle); -- <bdi> tags, lang atribute, categorization, etc; must be done after title is wrapped
TransTitle = wrap_style ('trans-italic-title', TransTitle);
end
local TransError = "";
if is_set(TransTitle) then
if is_set(Title) then
TransTitle = " " .. TransTitle;
else
TransError = " " .. set_error( 'trans_missing_title', {'title'} );
end
end
if is_set(Title) then
if not is_set(TitleLink) and is_set(URL) then
Title = external_link( URL, Title, URLorigin, UrlAccess ) .. TransTitle .. TransError .. Format;
URL = ''; -- unset these because no longer needed
Format = "";
else
Title = Title .. TransTitle .. TransError;
end
else
Title = TransTitle .. TransError;
end
if is_set(Place) then
Place = " " .. wrap_msg ('written', Place, use_lowercase) .. sepc .. " ";
end
if is_set (Conference) then
if is_set (ConferenceURL) then
Conference = external_link( ConferenceURL, Conference, ConferenceURLorigin, nil );
end
Conference = sepc .. " " .. Conference .. ConferenceFormat;
elseif is_set(ConferenceURL) then
Conference = sepc .. " " .. external_link( ConferenceURL, nil, ConferenceURLorigin, nil );
end
if not is_set(Position) then
local Minutes = A['Minutes'];
local Time = A['Time'];
if is_set(Minutes) then
if is_set (Time) then
table.insert( z.message_tail, { set_error( 'redundant_parameters', {wrap_style ('parameter', 'minutes') .. ' and ' .. wrap_style ('parameter', 'time')}, true ) } );
end
Position = " " .. Minutes .. " " .. cfg.messages['minutes'];
else
if is_set(Time) then
local TimeCaption = A['TimeCaption']
if not is_set(TimeCaption) then
TimeCaption = cfg.messages['event'];
if sepc ~= '.' then
TimeCaption = TimeCaption:lower();
end
end
Position = " " .. TimeCaption .. " " .. Time;
end
end
else
Position = " " .. Position;
At = '';
end
Page, Pages, Sheet, Sheets = format_pages_sheets (Page, Pages, Sheet, Sheets, config.CitationClass, Periodical_origin, sepc, NoPP, use_lowercase);
At = is_set(At) and (sepc .. " " .. At) or "";
Position = is_set(Position) and (sepc .. " " .. Position) or "";
if config.CitationClass == 'map' then
local Section = A['Section'];
local Sections = A['Sections'];
local Inset = A['Inset'];
if is_set( Inset ) then
Inset = sepc .. " " .. wrap_msg ('inset', Inset, use_lowercase);
end
if is_set( Sections ) then
Section = sepc .. " " .. wrap_msg ('sections', Sections, use_lowercase);
elseif is_set( Section ) then
Section = sepc .. " " .. wrap_msg ('section', Section, use_lowercase);
end
At = At .. Inset .. Section;
end
if is_set (Language) then
Language = language_parameter (Language); -- format, categories, name from ISO639-1, etc
else
Language=""; -- language not specified so make sure this is an empty string;
--[[ TODO: need to extract the wrap_msg from language_parameter
so that we can solve parentheses bunching problem with Format/Language/TitleType
]]
end
Others = is_set(Others) and (sepc .. " " .. Others) or "";
if is_set (Translators) then
Others = safe_join ({sepc .. ' ', wrap_msg ('translated', Translators, use_lowercase), Others}, sepc);
end
if is_set (Interviewers) then
Others = safe_join ({sepc .. ' ', wrap_msg ('interview', Interviewers, use_lowercase), Others}, sepc);
end
TitleNote = is_set(TitleNote) and (sepc .. " " .. TitleNote) or "";
if is_set (Edition) then
if Edition:match ('%f[%a][Ee]d%.?$') or Edition:match ('%f[%a][Ee]dition$') then
add_maint_cat ('extra_text', 'edition');
end
Edition = " " .. wrap_msg ('edition', Edition);
else
Edition = '';
end
Series = is_set(Series) and (sepc .. " " .. Series) or "";
OrigYear = is_set(OrigYear) and (" [" .. OrigYear .. "]") or ""; -- TODO: presentation
Agency = is_set(Agency) and (sepc .. " " .. Agency) or "";
Volume = format_volume_issue (Volume, Issue, config.CitationClass, Periodical_origin, sepc, use_lowercase);
------------------------------------ totally unrelated data
if is_set(Via) then
Via = " " .. wrap_msg ('via', Via);
end
--[[
Subscription implies paywall; Registration does not. If both are used in a citation, the subscription required link
note is displayed. There are no error messages for this condition.
]]
if is_set (SubscriptionRequired) then
SubscriptionRequired = sepc .. " " .. cfg.messages['subscription']; -- subscription required message
elseif is_set (RegistrationRequired) then
SubscriptionRequired = sepc .. " " .. cfg.messages['registration']; -- registration required message
else
SubscriptionRequired = ''; -- either or both might be set to something other than yes true y
end
if is_set(AccessDate) then
local retrv_text = " " .. cfg.messages['retrieved']
AccessDate = nowrap_date (AccessDate); -- wrap in nowrap span if date in appropriate format
if (sepc ~= ".") then retrv_text = retrv_text:lower() end -- if mode is cs2, lower case
AccessDate = substitute (retrv_text, AccessDate); -- add retrieved text
AccessDate = substitute (cfg.presentation['accessdate'], {sepc, AccessDate}); -- allow editors to hide accessdates
end
if is_set(ID) then ID = sepc .." ".. ID; end
if "thesis" == config.CitationClass and is_set(Docket) then
ID = sepc .." Docket ".. Docket .. ID;
end
if "report" == config.CitationClass and is_set(Docket) then -- for cite report when |docket= is set
ID = sepc .. ' ' .. Docket; -- overwrite ID even if |id= is set
end
ID_list = build_id_list( ID_list, {IdAccessLevels=ID_access_levels, DoiBroken = DoiBroken, ASINTLD = ASINTLD, IgnoreISBN = IgnoreISBN, Embargo=Embargo, Class = Class} );
if is_set(URL) then
URL = " " .. external_link( URL, nil, URLorigin, UrlAccess );
end
if is_set(Quote) then
if Quote:sub(1,1) == '"' and Quote:sub(-1,-1) == '"' then -- if first and last characters of quote are quote marks
Quote = Quote:sub(2,-2); -- strip them off
end
Quote = sepc .." " .. wrap_style ('quoted-text', Quote ); -- wrap in <q>...</q> tags
PostScript = ""; -- cs1|2 does not supply terminal punctuation when |quote= is set
end
local Archived
if is_set(ArchiveURL) then
if not is_set(ArchiveDate) then
ArchiveDate = set_error('archive_missing_date');
end
if "live" == UrlStatus then
local arch_text = cfg.messages['archived'];
if sepc ~= "." then arch_text = arch_text:lower() end
Archived = sepc .. " " .. substitute( cfg.messages['archived-live'],
{ external_link( ArchiveURL, arch_text, A:ORIGIN('ArchiveURL'), nil ) .. ArchiveFormat, ArchiveDate } );
if not is_set(OriginalURL) then
Archived = Archived .. " " .. set_error('archive_missing_url');
end
elseif is_set(OriginalURL) then -- UrlStatus is empty, 'dead', 'unfit', 'usurped', 'bot: unknown'
local arch_text = cfg.messages['archived-dead'];
if sepc ~= "." then arch_text = arch_text:lower() end
if in_array (UrlStatus, {'unfit', 'usurped', 'bot: unknown'}) then
Archived = sepc .. " " .. 'Αρχειοθετήθηκε από το πρωτότυπο στις ' .. ArchiveDate; -- format already styled
if 'bot: unknown' == UrlStatus then
add_maint_cat ('bot:_unknown'); -- and add a category if not already added
else
add_maint_cat ('unfit'); -- and add a category if not already added
end
else -- UrlStatus is empty, 'dead'
Archived = sepc .. " " .. substitute( arch_text,
{ external_link( OriginalURL, cfg.messages['original'], OriginalURLorigin, OriginalAccess ) .. OriginalFormat, ArchiveDate } ); -- format already styled
end
else
local arch_text = cfg.messages['archived-missing'];
if sepc ~= "." then arch_text = arch_text:lower() end
Archived = sepc .. " " .. substitute( arch_text,
{ set_error('archive_missing_url'), ArchiveDate } );
end
elseif is_set (ArchiveFormat) then
Archived = ArchiveFormat; -- if set and ArchiveURL not set ArchiveFormat has error message
else
Archived = ""
end
local Lay = '';
if is_set(LayURL) then
if is_set(LayDate) then LayDate = " (" .. LayDate .. ")" end
if is_set(LaySource) then
LaySource = " – ''" .. safe_for_italics(LaySource) .. "''";
else
LaySource = "";
end
if sepc == '.' then
Lay = sepc .. " " .. external_link( LayURL, cfg.messages['lay summary'], A:ORIGIN('LayURL'), nil ) .. LayFormat .. LaySource .. LayDate
else
Lay = sepc .. " " .. external_link( LayURL, cfg.messages['lay summary']:lower(), A:ORIGIN('LayURL'), nil ) .. LayFormat .. LaySource .. LayDate
end
elseif is_set (LayFormat) then -- Test if |lay-format= is given without giving a |lay-url=
Lay = sepc .. LayFormat; -- if set and LayURL not set, then LayFormat has error message
end
if is_set(Transcript) then
if is_set(TranscriptURL) then
Transcript = external_link( TranscriptURL, Transcript, TranscriptURLorigin, nil );
end
Transcript = sepc .. ' ' .. Transcript .. TranscriptFormat;
elseif is_set(TranscriptURL) then
Transcript = external_link( TranscriptURL, nil, TranscriptURLorigin, nil );
end
local Publisher;
if is_set(PublicationDate) then
PublicationDate = wrap_msg ('published', PublicationDate);
end
if is_set(PublisherName) then
if is_set(PublicationPlace) then
Publisher = sepc .. " " .. PublicationPlace .. ": " .. PublisherName .. PublicationDate;
else
Publisher = sepc .. " " .. PublisherName .. PublicationDate;
end
elseif is_set(PublicationPlace) then
Publisher= sepc .. " " .. PublicationPlace .. PublicationDate;
else
Publisher = PublicationDate;
end
-- Several of the above rely upon detecting this as nil, so do it last.
if is_set(Periodical) then
if is_set(Title) or is_set(TitleNote) then
Periodical = sepc .. " " .. wrap_style ('italic-title', Periodical)
else
Periodical = wrap_style ('italic-title', Periodical)
end
end
--[[
Handle the oddity that is cite speech. This code overrides whatever may be the value assigned to TitleNote (through |department=) and forces it to be " (Speech)" so that
the annotation directly follows the |title= parameter value in the citation rather than the |event= parameter value (if provided).
]]
if "speech" == config.CitationClass then -- cite speech only
TitleNote = " (Speech)"; -- annotate the citation
if is_set (Periodical) then -- if Periodical, perhaps because of an included |website= or |journal= parameter
if is_set (Conference) then -- and if |event= is set
Conference = Conference .. sepc .. " "; -- then add appropriate punctuation to the end of the Conference variable before rendering
end
end
end
-- Piece all bits together at last. Here, all should be non-nil.
-- We build things this way because it is more efficient in LUA
-- not to keep reassigning to the same string variable over and over.
local tcommon;
local tcommon2; -- used for book cite when |contributor= is set
if in_array(config.CitationClass, {"journal","citation"}) and is_set(Periodical) then
if is_set(Others) then Others = safe_join ({Others, sepc .. " "}, sepc) end -- add terminal punctuation & space; check for dup sepc; TODO why do we need to do this here?
tcommon = safe_join( {Others, Title, TitleNote, Conference, Periodical, Format, TitleType, Series, Language, Edition, Publisher, Agency, Volume}, sepc );
elseif in_array(config.CitationClass, {"book","citation"}) and not is_set(Periodical) then -- special cases for book cites
if is_set (Contributors) then -- when we are citing foreword, preface, introduction, etc
tcommon = safe_join( {Title, TitleNote}, sepc ); -- author and other stuff will come after this and before tcommon2
tcommon2 = safe_join( {Conference, Periodical, Format, TitleType, Series, Language, Volume, Others, Edition, Publisher, Agency}, sepc );
else
tcommon = safe_join( {Title, TitleNote, Conference, Periodical, Format, TitleType, Series, Language, Volume, Others, Edition, Publisher, Agency}, sepc );
end
elseif 'map' == config.CitationClass then -- special cases for cite map
if is_set (Chapter) then -- map in a book; TitleType is part of Chapter
tcommon = safe_join( {Title, Format, Edition, Scale, Series, Language, Cartography, Others, Publisher, Volume}, sepc );
elseif is_set (Periodical) then -- map in a periodical
tcommon = safe_join( {Title, TitleType, Format, Periodical, Scale, Series, Language, Cartography, Others, Publisher, Volume}, sepc );
else -- a sheet or stand-alone map
tcommon = safe_join( {Title, TitleType, Format, Edition, Scale, Series, Language, Cartography, Others, Publisher}, sepc );
end
elseif 'episode' == config.CitationClass then -- special case for cite episode
tcommon = safe_join( {Title, TitleNote, TitleType, Series, Transcript, Language, Edition, Publisher}, sepc );
else -- all other CS1 templates
tcommon = safe_join( {Title, TitleNote, Conference, Periodical, Format, TitleType, Series, Language,
Volume, Others, Edition, Publisher, Agency}, sepc );
end
if #ID_list > 0 then
ID_list = safe_join( { sepc .. " ", table.concat( ID_list, sepc .. " " ), ID }, sepc );
else
ID_list = ID;
end
local idcommon = safe_join( { ID_list, URL, Archived, AccessDate, Via, SubscriptionRequired, Lay, Quote }, sepc );
local text;
local pgtext = Position .. Sheet .. Sheets .. Page .. Pages .. At;
if is_set(Date) then
if is_set (Authors) or is_set (Editors) then -- date follows authors or editors when authors not set
Date = " (" .. Date ..")" .. OrigYear .. sepc .. " "; -- in paranetheses
else -- neither of authors and editors set
if (string.sub(tcommon,-1,-1) == sepc) then -- if the last character of tcommon is sepc
Date = " " .. Date .. OrigYear; -- Date does not begin with sepc
else
Date = sepc .. " " .. Date .. OrigYear; -- Date begins with sepc
end
end
end
if is_set(Authors) then
if (not is_set (Date)) then -- when date is set it's in parentheses; no Authors termination
Authors = terminate_name_list (Authors, sepc); -- when no date, terminate with 0 or 1 sepc and a space
end
if is_set(Editors) then
local in_text = " ";
local post_text = "";
if is_set(Chapter) and 0 == #c then
in_text = in_text .. cfg.messages['in'] .. " "
if (sepc ~= '.') then
in_text = in_text:lower() -- lowercase for cs2
end
end
if EditorCount <= 1 then
post_text = ", " .. cfg.messages['editor'];
else
post_text = ", " .. cfg.messages['editors'];
end
Editors = terminate_name_list (in_text .. Editors .. post_text, sepc); -- terminate with 0 or 1 sepc and a space
end
if is_set (Contributors) then -- book cite and we're citing the intro, preface, etc
local by_text = sepc .. ' ' .. cfg.messages['by'] .. ' ';
if (sepc ~= '.') then by_text = by_text:lower() end -- lowercase for cs2
Authors = by_text .. Authors; -- author follows title so tweak it here
if is_set (Editors) and is_set (Date) then -- when Editors make sure that Authors gets terminated
Authors = terminate_name_list (Authors, sepc); -- terminate with 0 or 1 sepc and a space
end
if (not is_set (Date)) then -- when date is set it's in parentheses; no Contributors termination
Contributors = terminate_name_list (Contributors, sepc); -- terminate with 0 or 1 sepc and a space
end
text = safe_join( {Contributors, Date, Chapter, tcommon, Authors, Place, Editors, tcommon2, pgtext, idcommon }, sepc );
else
text = safe_join( {Authors, Date, Chapter, Place, Editors, tcommon, pgtext, idcommon }, sepc );
end
elseif is_set(Editors) then
if is_set(Date) then
if EditorCount <= 1 then
Editors = Editors .. ", " .. cfg.messages['editor'];
else
Editors = Editors .. ", " .. cfg.messages['editors'];
end
else
if EditorCount <= 1 then
Editors = Editors .. " (" .. cfg.messages['editor'] .. ")" .. sepc .. " "
else
Editors = Editors .. " (" .. cfg.messages['editors'] .. ")" .. sepc .. " "
end
end
text = safe_join( {Editors, Date, Chapter, Place, tcommon, pgtext, idcommon}, sepc );
else
if in_array(config.CitationClass, {"journal","citation"}) and is_set(Periodical) then
text = safe_join( {Chapter, Place, tcommon, pgtext, Date, idcommon}, sepc );
else
text = safe_join( {Chapter, Place, tcommon, Date, pgtext, idcommon}, sepc );
end
end
if is_set(PostScript) and PostScript ~= sepc then
text = safe_join( {text, sepc}, sepc ); --Deals with italics, spaces, etc.
text = text:sub(1,-sepc:len()-1);
end
text = safe_join( {text, PostScript}, sepc );
-- Now enclose the whole thing in a <cite/> element
local options = {};
if is_set(config.CitationClass) and config.CitationClass ~= "citation" then
options.class = config.CitationClass;
options.class = "citation " .. config.CitationClass; -- class=citation required for blue highlight when used with |ref=
else
options.class = "citation";
end
if is_set(Ref) and Ref:lower() ~= "none" then -- set reference anchor if appropriate
local id = Ref
if ('harv' == Ref ) then
local namelist = {}; -- holds selected contributor, author, editor name list
local year = first_set ({Year, anchor_year}, 2); -- Year first for legacy citations and for YMD dates that require disambiguation
if #c > 0 then -- if there is a contributor list
namelist = c; -- select it
elseif #a > 0 then -- or an author list
namelist = a;
elseif #e > 0 then -- or an editor list
namelist = e;
end
if #namelist > 0 then -- if there are names in namelist
id = anchor_id (namelist, year); -- go make the CITEREF anchor
else
id = ''; -- unset
end
end
options.id = id;
end
if string.len(text:gsub("<span[^>/]*>(.-)</span>", "%1"):gsub("%b<>","")) <= 2 then -- remove <span> tags and other html-like markup; then get length of what remains
z.error_categories = {};
text = set_error('empty_citation');
z.message_tail = {};
end
local render = {}; -- here we collect the final bits for concatenation into the rendered citation
if is_set(options.id) then -- here we wrap the rendered citation in <cite ...>...</cite> tags
table.insert (render, substitute (cfg.presentation['cite-id'], {mw.uri.anchorEncode(options.id), mw.text.nowiki(options.class), text})); -- when |ref= is set
else
table.insert (render, substitute (cfg.presentation['cite'], {mw.text.nowiki(options.class), text})); -- all other cases
end
table.insert (render, substitute (cfg.presentation['ocins'], {OCinSoutput})); -- append metadata to the citation
if #z.message_tail ~= 0 then
table.insert (render, ' ');
for i,v in ipairs( z.message_tail ) do
if is_set(v[1]) then
if i == #z.message_tail then
table.insert (render, error_comment( v[1], v[2] ));
else
table.insert (render, error_comment( v[1] .. "; ", v[2] ));
end
end
end
end
if #z.maintenance_cats ~= 0 then
table.insert (render, '<span class="citation-comment cs1-maint nomobile noprint">');
for _, v in ipairs( z.maintenance_cats ) do -- append maintenance categories
table.insert (render, v);
table.insert (render, ' (');
table.insert (render, make_wikilink (':Category:' .. v, 'link'));
table.insert (render, ') ');
end
table.insert (render, '</span>');
end
no_tracking_cats = no_tracking_cats:lower();
if in_array(no_tracking_cats, {"", "no", "false", "n"}) then
for _, v in ipairs( z.error_categories ) do
table.insert (render, make_wikilink ('Category:' .. v));
end
for _, v in ipairs( z.maintenance_cats ) do -- append maintenance categories
table.insert (render, make_wikilink ('Category:' .. v));
end
for _, v in ipairs( z.properties_cats ) do -- append properties categories
table.insert (render, make_wikilink ('Category:' .. v));
end
end
return table.concat (render);
end
--[[--------------------------< C S 1 . C I T A T I O N >------------------------------------------------------
This is used by templates such as {{cite book}} to create the actual citation text.
]]
function cs1.citation(frame)
Frame = frame; -- save a copy incase we need to display an error message in preview mode
local pframe = frame:getParent()
local validation, utilities, identifiers, metadata;
if nil ~= string.find (frame:getTitle(), 'sandbox', 1, true) then -- did the {{#invoke:}} use sandbox version?
cfg = mw.loadData ('Module:Citation/CS1/Configuration/sandbox'); -- load sandbox versions of support modules
whitelist = mw.loadData ('Module:Citation/CS1/Whitelist/sandbox');
utilities = require ('Module:Citation/CS1/Utilities/sandbox');
validation = require ('Module:Citation/CS1/Date_validation/sandbox');
identifiers = require ('Module:Citation/CS1/Identifiers/sandbox');
metadata = require ('Module:Citation/CS1/COinS/sandbox');
else -- otherwise
cfg = mw.loadData ('Module:Citation/CS1/Configuration'); -- load live versions of support modules
whitelist = mw.loadData ('Module:Citation/CS1/Whitelist');
utilities = require ('Module:Citation/CS1/Utilities');
validation = require ('Module:Citation/CS1/Date_validation');
identifiers = require ('Module:Citation/CS1/Identifiers');
metadata = require ('Module:Citation/CS1/COinS');
end
utilities.set_selected_modules (cfg); -- so that functions in Utilities can see the cfg tables
identifiers.set_selected_modules (cfg, utilities); -- so that functions in Identifiers can see the selected cfg tables and selected Utilities module
validation.set_selected_modules (cfg, utilities); -- so that functions in Date validataion can see selected cfg tables and the selected Utilities module
metadata.set_selected_modules (cfg, utilities); -- so that functions in COinS can see the selected cfg tables and selected Utilities module
dates = validation.dates; -- imported functions from Module:Citation/CS1/Date validation
year_date_check = validation.year_date_check;
reformat_dates = validation.reformat_dates;
date_hyphen_to_dash = validation.date_hyphen_to_dash;
date_name_xlate = validation.date_name_xlate;
is_set = utilities.is_set; -- imported functions from Module:Citation/CS1/Utilities
in_array = utilities.in_array;
substitute = utilities.substitute;
error_comment = utilities.error_comment;
set_error = utilities.set_error;
select_one = utilities.select_one;
add_maint_cat = utilities.add_maint_cat;
wrap_style = utilities.wrap_style;
safe_for_italics = utilities.safe_for_italics;
is_wikilink = utilities.is_wikilink;
make_wikilink = utilities.make_wikilink;
z = utilities.z; -- table of error and category tables in Module:Citation/CS1/Utilities
extract_ids = identifiers.extract_ids; -- imported functions from Module:Citation/CS1/Identifiers
build_id_list = identifiers.build_id_list;
is_embargoed = identifiers.is_embargoed;
extract_id_access_levels = identifiers.extract_id_access_levels;
make_coins_title = metadata.make_coins_title; -- imported functions from Module:Citation/CS1/COinS
get_coins_pages = metadata.get_coins_pages;
COinS = metadata.COinS;
local args = {}; -- table where we store all of the template's arguments
local suggestions = {}; -- table where we store suggestions if we need to loadData them
local error_text, error_state;
local config = {}; -- table to store parameters from the module {{#invoke:}}
for k, v in pairs( frame.args ) do
config[k] = v;
-- args[k] = v; -- debug tool that allows us to render a citation from module {{#invoke:}}
end
local capture; -- the single supported capture when matching unknown parameters using patterns
for k, v in pairs( pframe.args ) do
if v ~= '' then
if ('string' == type (k)) then
k = mw.ustring.gsub (k, '%d', cfg.date_names.local_digits); -- for enumerated parameters, translate 'local' digits to Western 0-9
end
if not validate( k, config.CitationClass ) then
error_text = "";
if type( k ) ~= 'string' then
-- Exclude empty numbered parameters
if v:match("%S+") ~= nil then
error_text, error_state = set_error( 'text_ignored', {v}, true );
end
elseif validate( k:lower(), config.CitationClass ) then
error_text, error_state = set_error( 'parameter_ignored_suggest', {k, k:lower()}, true );
else
if nil == suggestions.suggestions then -- if this table is nil then we need to load it
if nil ~= string.find (frame:getTitle(), 'sandbox', 1, true) then -- did the {{#invoke:}} use sandbox version?
suggestions = mw.loadData( 'Module:Citation/CS1/Suggestions/sandbox' ); -- use the sandbox version
else
suggestions = mw.loadData( 'Module:Citation/CS1/Suggestions' ); -- use the live version
end
end
for pattern, param in pairs (suggestions.patterns) do -- loop through the patterns to see if we can suggest a proper parameter
capture = k:match (pattern); -- the whole match if no caputre in pattern else the capture if a match
if capture then -- if the pattern matches
param = substitute( param, capture ); -- add the capture to the suggested parameter (typically the enumerator)
error_text, error_state = set_error( 'parameter_ignored_suggest', {k, param}, true ); -- set the error message
end
end
if not is_set (error_text) then -- couldn't match with a pattern, is there an expicit suggestion?
if suggestions.suggestions[ k:lower() ] ~= nil then
error_text, error_state = set_error( 'parameter_ignored_suggest', {k, suggestions.suggestions[ k:lower() ]}, true );
else
error_text, error_state = set_error( 'parameter_ignored', {k}, true );
v = ''; -- unset value assigned to unrecognized parameters (this for the limited parameter lists)
end
end
end
if error_text ~= '' then
table.insert( z.message_tail, {error_text, error_state} );
end
end
missing_pipe_check (v); -- do we think that there is a parameter that is missing a pipe?
-- TODO: is this the best place for this translation?
args[k] = v;
elseif args[k] ~= nil or (k == 'postscript') then -- here when v is empty string
args[k] = v; -- why do we do this? we don't support 'empty' parameters
end
end
for k, v in pairs( args ) do
if 'string' == type (k) then -- don't evaluate positional parameters
has_invisible_chars (k, v);
end
end
return table.concat({
frame:extensionTag ('templatestyles', '', {src='Module:Citation/CS1/styles.css'}),
citation0( config, args)
});
end
return cs1;
p7mmzg09jdv0aofghr1fdbfq70tbkyt
Module:Citation/CS1/Utilities
828
3472
36687
2025-12-15T22:07:50Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local u = {} local z = { error_categories = {}; -- for categorizing citations that contain errors error_ids = {}; message_tail = {}; maintenance_cats = {}; -- for categorizing citations that aren't erroneous per se, but could use a little work properties_cats = {}; -- for categorizing citations based on certain properties, language of source for instance }; --[[--------------------------< F O R W A R D...'
36687
Scribunto
text/plain
local u = {}
local z = {
error_categories = {}; -- for categorizing citations that contain errors
error_ids = {};
message_tail = {};
maintenance_cats = {}; -- for categorizing citations that aren't erroneous per se, but could use a little work
properties_cats = {}; -- for categorizing citations based on certain properties, language of source for instance
};
--[[--------------------------< F O R W A R D D E C L A R A T I O N S >--------------------------------------
]]
local cfg; -- table of tables imported from selected Module:Citation/CS1/Configuration
--[[--------------------------< I S _ S E T >------------------------------------------------------------------
Returns true if argument is set; false otherwise. Argument is 'set' when it exists (not nil) or when it is not an empty string.
]]
local function is_set( var )
return not (var == nil or var == '');
end
--[[--------------------------< I N _ A R R A Y >--------------------------------------------------------------
Whether needle is in haystack
]]
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
--[[--------------------------< S U B S T I T U T E >----------------------------------------------------------
Populates numbered arguments in a message string using an argument table.
]]
local function substitute( msg, args )
return args and mw.message.newRawMessage( msg, args ):plain() or msg;
end
--[[--------------------------< E R R O R _ C O M M E N T >----------------------------------------------------
Wraps error messages with css markup according to the state of hidden.
]]
local function error_comment( content, hidden )
return substitute( hidden and cfg.presentation['hidden-error'] or cfg.presentation['visible-error'], content );
end
--[=[-------------------------< M A K E _ W I K I L I N K >----------------------------------------------------
Makes a wikilink; when bot link and display text is provided, returns a wikilink in the form [[L|D]]; if only
link is provided, returns a wikilink in the form [[L]]; if neither are provided or link is omitted, returns an
empty string.
]=]
local function make_wikilink (link, display)
if is_set (link) then
if is_set (display) then
return table.concat ({'[[', link, '|', display, ']]'});
else
return table.concat ({'[[', link, ']]'});
end
else
return '';
end
end
--[[--------------------------< S E T _ E R R O R >--------------------------------------------------------------
Sets an error condition and returns the appropriate error message. The actual placement of the error message in the output is
the responsibility of the calling function.
]]
local function set_error( error_id, arguments, raw, prefix, suffix )
local error_state = cfg.error_conditions[ error_id ];
prefix = prefix or "";
suffix = suffix or "";
if error_state == nil then
error( cfg.messages['undefined_error'] ); -- because missing error handler in Module:Citation/CS1/Configuration
elseif is_set( error_state.category ) then
table.insert( z.error_categories, error_state.category );
end
local message = substitute( error_state.message, arguments );
message = table.concat (
{
message,
' (',
make_wikilink (
table.concat (
{
cfg.messages['help page link'],
'#',
error_state.anchor
}),
cfg.messages['help page label']),
')'
});
-- message = table.concat ({message, ' (', substitute (cfg.presentation['wikilink'],
-- {cfg.messages['help page link'] .. '#' .. error_state.anchor, cfg.messages['help page label']}), ')'});
-- message = message .. " ([[" .. cfg.messages['help page link'] ..
-- "#" .. error_state.anchor .. "|" ..
-- cfg.messages['help page label'] .. "]])";
z.error_ids[ error_id ] = true;
if in_array( error_id, { 'bare_url_missing_title', 'trans_missing_title' } )
and z.error_ids['citation_missing_title'] then
return '', false;
end
message = table.concat({ prefix, message, suffix });
if raw == true then
return message, error_state.hidden;
end
return error_comment( message, error_state.hidden );
end
--[[-------------------------< I S _ A L I A S _ U S E D >-----------------------------------------------------
This function is used by select_one() to determine if one of a list of alias parameters is in the argument list
provided by the template.
Input:
args – pointer to the arguments table from calling template
alias – one of the list of possible aliases in the aliases lists from Module:Citation/CS1/Configuration
index – for enumerated parameters, identifies which one
enumerated – true/false flag used choose how enumerated aliases are examined
value – value associated with an alias that has previously been selected; nil if not yet selected
selected – the alias that has previously been selected; nil if not yet selected
error_list – list of aliases that are duplicates of the alias already selected
Returns:
value – value associated with alias we selected or that was previously selected or nil if an alias not yet selected
selected – the alias we selected or the alias that was previously selected or nil if an alias not yet selected
]]
local function is_alias_used (args, alias, index, enumerated, value, selected, error_list)
if enumerated then -- is this a test for an enumerated parameters?
alias = alias:gsub ('#', index); -- replace '#' with the value in index
else
alias = alias:gsub ('#', ''); -- remove '#' if it exists
end
if is_set(args[alias]) then -- alias is in the template's argument list
if value ~= nil and selected ~= alias then -- if we have already selected one of the aliases
local skip;
for _, v in ipairs(error_list) do -- spin through the error list to see if we've added this alias
if v == alias then
skip = true;
break; -- has been added so stop looking
end
end
if not skip then -- has not been added so
table.insert( error_list, alias ); -- add error alias to the error list
end
else
value = args[alias]; -- not yet selected an alias, so select this one
selected = alias;
end
end
return value, selected; -- return newly selected alias, or previously selected alias
end
--[[--------------------------< A D D _ M A I N T _ C A T >------------------------------------------------------
Adds a category to z.maintenance_cats using names from the configuration file with additional text if any.
To prevent duplication, the added_maint_cats table lists the categories by key that have been added to z.maintenance_cats.
]]
local added_maint_cats = {} -- list of maintenance categories that have been added to z.maintenance_cats
local function add_maint_cat (key, arguments)
if not added_maint_cats [key] then
added_maint_cats [key] = true; -- note that we've added this category
table.insert( z.maintenance_cats, substitute (cfg.maint_cats [key], arguments)); -- make name then add to table
end
end
--[[--------------------------< S A F E _ F O R _ I T A L I C S >----------------------------------------------
Protects a string that will be wrapped in wiki italic markup '' ... ''
Note: We cannot use <i> for italics, as the expected behavior for italics specified by ''...'' in the title is that
they will be inverted (i.e. unitalicized) in the resulting references. In addition, <i> and '' tend to interact
poorly under Mediawiki's HTML tidy.
]]
local function safe_for_italics( str )
if not is_set(str) then
return str;
else
if str:sub(1,1) == "'" then str = "<span></span>" .. str; end
if str:sub(-1,-1) == "'" then str = str .. "<span></span>"; end
-- Remove newlines as they break italics.
return str:gsub( '\n', ' ' );
end
end
--[[--------------------------< W R A P _ S T Y L E >----------------------------------------------------------
Applies styling to various parameters. Supplied string is wrapped using a message_list configuration taking one
argument; protects italic styled parameters. Additional text taken from citation_config.presentation - the reason
this function is similar to but separate from wrap_msg().
]]
local function wrap_style (key, str)
if not is_set( str ) then
return "";
elseif in_array( key, { 'italic-title', 'trans-italic-title' } ) then
str = safe_for_italics( str );
end
return substitute( cfg.presentation[key], {str} );
end
--[[--------------------------< S E L E C T _ O N E >----------------------------------------------------------
Chooses one matching parameter from a list of parameters to consider. The list of parameters to consider is just
names. For parameters that may be enumerated, the position of the numerator in the parameter name is identified
by the '#' so |author-last1= and |author1-last= are represented as 'author-last#' and 'author#-last'.
Because enumerated parameter |<param>1= is an alias of |<param>= we must test for both possibilities.
Generates an error if more than one match is present.
]]
local function select_one( args, aliases_list, error_condition, index )
local value = nil; -- the value assigned to the selected parameter
local selected = ''; -- the name of the parameter we have chosen
local error_list = {};
if index ~= nil then index = tostring(index); end
for _, alias in ipairs( aliases_list ) do -- for each alias in the aliases list
if alias:match ('#') then -- if this alias can be enumerated
if '1' == index then -- when index is 1 test for enumerated and non-enumerated aliases
value, selected = is_alias_used (args, alias, index, false, value, selected, error_list); -- first test for non-enumerated alias
end
value, selected = is_alias_used (args, alias, index, true, value, selected, error_list); -- test for enumerated alias
else
value, selected = is_alias_used (args, alias, index, false, value, selected, error_list); --test for non-enumerated alias
end
end
if #error_list > 0 and 'none' ~= error_condition then -- for cases where this code is used outside of extract_names()
local error_str = "";
for _, k in ipairs( error_list ) do
if error_str ~= "" then error_str = error_str .. cfg.messages['parameter-separator'] end
error_str = error_str .. wrap_style ('parameter', k);
end
if #error_list > 1 then
error_str = error_str .. cfg.messages['parameter-final-separator'];
else
error_str = error_str .. cfg.messages['parameter-pair-separator'];
end
error_str = error_str .. wrap_style ('parameter', selected);
table.insert( z.message_tail, { set_error( error_condition, {error_str}, true ) } );
end
return value, selected;
end
--[=[-------------------------< R E M O V E _ W I K I _ L I N K >----------------------------------------------
Gets the display text from a wikilink like [[A|B]] or [[B]] gives B
The str:gsub() returns either A|B froma [[A|B]] or B from [[B]] or B from B (no wikilink markup).
In l(), l:gsub() removes the link and pipe (if they exist); the second :gsub() trims white space from the label
if str was wrapped in wikilink markup. Presumably, this is because without wikimarkup in str, there is no match
in the initial gsub, the replacement function l() doesn't get called.
]=]
local function remove_wiki_link (str)
return (str:gsub( "%[%[([^%[%]]*)%]%]", function(l)
return l:gsub( "^[^|]*|(.*)$", "%1" ):gsub("^%s*(.-)%s*$", "%1");
end));
end
--[=[-------------------------< I S _ W I K I L I N K >--------------------------------------------------------
Determines if str is a wikilink, extracts, and returns the the wikilink type, link text, and display text parts.
If str is a complex wikilink ([[L|D]]):
returns wl_type 2 and D and L from [[L|D]];
if str is a simple wikilink ([[D]])
returns wl_type 1 and D from [[D]] and L as empty string;
if not a wikilink:
returns wl_type 0, str as D, and L as empty string.
trims leading and trailing white space and pipes from L and D ([[L|]] and [[|D]] are accepted by MediaWiki and
treated like [[D]]; while [[|D|]] is not accepted by MediaWiki, here, we accept it and return D without the pipes).
]=]
local function is_wikilink (str)
local D, L
local wl_type = 2; -- assume that str is a complex wikilink [[L|D]]
L, D = str:match ('%[%[([^|]+)|([^%]]+)%]%]'); -- get L and D from [[L|D]]
if not is_set (D) then -- if no separate link
D = str:match ('%[%[([^%]]*)|*%]%]'); -- get D from [[D]]
wl_type = 1;
end
if not is_set (D) then -- no wikilink markup
D = str; -- return the string as D
wl_type = 0; -- but say that it is not a wikilink
end
D = mw.text.trim (D, '%s|'); -- trim white space and pipe characters
L = L and mw.text.trim (L, '%s|');
return wl_type, D, L or '';
end
--[[--------------------------< S E T _ S E L E C T E D _ M O D U L E S >--------------------------------------
Sets local cfg table to same (live or sandbox) as that used by the other modules.
]]
local function set_selected_modules (cfg_table_ptr)
cfg = cfg_table_ptr;
end
return { -- return exported functions and tables
is_set = is_set,
in_array = in_array,
substitute = substitute,
error_comment = error_comment,
set_error = set_error,
select_one = select_one,
add_maint_cat = add_maint_cat,
wrap_style = wrap_style,
safe_for_italics = safe_for_italics,
remove_wiki_link = remove_wiki_link,
is_wikilink = is_wikilink,
make_wikilink = make_wikilink,
set_selected_modules = set_selected_modules,
z = z,
}
paqzmjiy0g42xcm0br82k5z9jczlnm6
Module:Citation/CS1/Identifiers
828
3473
36688
2025-12-15T22:08:43Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με ' local identifiers = {}; --[[--------------------------< F O R W A R D D E C L A R A T I O N S >-------------------------------------- ]] local is_set, in_array, set_error, select_one, add_maint_cat, substitute, make_wikilink; -- functions in Module:Citation/CS1/Utilities local z; -- table of tables defined in Module:Citation/CS1/Utilities local cfg; -- table of configuration tables that are defined in Modul...'
36688
Scribunto
text/plain
local identifiers = {};
--[[--------------------------< F O R W A R D D E C L A R A T I O N S >--------------------------------------
]]
local is_set, in_array, set_error, select_one, add_maint_cat, substitute, make_wikilink; -- functions in Module:Citation/CS1/Utilities
local z; -- table of tables defined in Module:Citation/CS1/Utilities
local cfg; -- table of configuration tables that are defined in Module:Citation/CS1/Configuration
--============================<< H E L P E R F U N C T I O N S >>============================================
--[[--------------------------< E X T E R N A L _ L I N K _ I D >----------------------------------------------
Formats a wiki style external link
]]
local function external_link_id(options)
local url_string = options.id;
local ext_link;
if options.encode == true or options.encode == nil then
url_string = mw.uri.encode( url_string );
if 'doi' == options.label then -- 2018-07-02 doi.org stopped accepting urls with url encoded '/' (%2F)
url_string = url_string:gsub ('%%2F', '/'); -- special case for doi; undo url-encoded slashes
end
end
ext_link = mw.ustring.format ('[%s%s%s %s]', options.prefix, url_string, options.suffix or "", mw.text.nowiki(options.id));
if is_set(options.access) then
ext_link = substitute (cfg.presentation['access-signal'], {ext_link, cfg.presentation[options.access]}); -- add the free-to-read / paywall lock
end
return table.concat ({
make_wikilink (options.link, options.label),
options.separator or ' ',
ext_link
});
end
--[[--------------------------< I N T E R N A L _ L I N K _ I D >----------------------------------------------
Formats a wiki style internal link
]]
local function internal_link_id(options)
return table.concat (
{
make_wikilink (options.link, options.label),
options.separator or ' ',
make_wikilink (
table.concat (
{
options.prefix,
options.id,
options.suffix or ''
}),
mw.text.nowiki (options.id)
);
});
end
--[[--------------------------< I S _ E M B A R G O E D >------------------------------------------------------
Determines if a PMC identifier's online version is embargoed. Compares the date in |embargo= against today's date. If embargo date is
in the future, returns the content of |embargo=; otherwise, returns and empty string because the embargo has expired or because
|embargo= was not set in this cite.
]]
local function is_embargoed (embargo)
if is_set (embargo) then
local lang = mw.getContentLanguage();
local good1, embargo_date, good2, todays_date;
good1, embargo_date = pcall( lang.formatDate, lang, 'U', embargo );
good2, todays_date = pcall( lang.formatDate, lang, 'U' );
if good1 and good2 then -- if embargo date and today's date are good dates
if tonumber( embargo_date ) >= tonumber( todays_date ) then -- is embargo date is in the future?
return embargo; -- still embargoed
else
add_maint_cat ('embargo')
return ''; -- unset because embargo has expired
end
end
end
return ''; -- |embargo= not set return empty string
end
--[[--------------------------< IS _ V A L I D _ I S X N >-----------------------------------------------------
ISBN-10 and ISSN validator code calculates checksum across all isbn/issn digits including the check digit.
ISBN-13 is checked in isbn().
If the number is valid the result will be 0. Before calling this function, issbn/issn must be checked for length
and stripped of dashes, spaces and other non-isxn characters.
]]
local function is_valid_isxn (isxn_str, len)
local temp = 0;
isxn_str = { isxn_str:byte(1, len) }; -- make a table of byte values '0' → 0x30 .. '9' → 0x39, 'X' → 0x58
len = len+1; -- adjust to be a loop counter
for i, v in ipairs( isxn_str ) do -- loop through all of the bytes and calculate the checksum
if v == string.byte( "X" ) then -- if checkdigit is X (compares the byte value of 'X' which is 0x58)
temp = temp + 10*( len - i ); -- it represents 10 decimal
else
temp = temp + tonumber( string.char(v) )*(len-i);
end
end
return temp % 11 == 0; -- returns true if calculation result is zero
end
--[[--------------------------< IS _ V A L I D _ I S X N _ 1 3 >-----------------------------------------------
ISBN-13 and ISMN validator code calculates checksum across all 13 isbn/ismn digits including the check digit.
If the number is valid, the result will be 0. Before calling this function, isbn-13/ismn must be checked for length
and stripped of dashes, spaces and other non-isxn-13 characters.
]]
local function is_valid_isxn_13 (isxn_str)
local temp=0;
isxn_str = { isxn_str:byte(1, 13) }; -- make a table of byte values '0' → 0x30 .. '9' → 0x39
for i, v in ipairs( isxn_str ) do
temp = temp + (3 - 2*(i % 2)) * tonumber( string.char(v) ); -- multiply odd index digits by 1, even index digits by 3 and sum; includes check digit
end
return temp % 10 == 0; -- sum modulo 10 is zero when isbn-13/ismn is correct
end
--[[--------------------------< N O R M A L I Z E _ L C C N >--------------------------------------------------
lccn normalization (http://www.loc.gov/marc/lccn-namespace.html#normalization)
1. Remove all blanks.
2. If there is a forward slash (/) in the string, remove it, and remove all characters to the right of the forward slash.
3. If there is a hyphen in the string:
a. Remove it.
b. Inspect the substring following (to the right of) the (removed) hyphen. Then (and assuming that steps 1 and 2 have been carried out):
1. All these characters should be digits, and there should be six or less. (not done in this function)
2. If the length of the substring is less than 6, left-fill the substring with zeroes until the length is six.
Returns a normalized lccn for lccn() to validate. There is no error checking (step 3.b.1) performed in this function.
]]
local function normalize_lccn (lccn)
lccn = lccn:gsub ("%s", ""); -- 1. strip whitespace
if nil ~= string.find (lccn,'/') then
lccn = lccn:match ("(.-)/"); -- 2. remove forward slash and all character to the right of it
end
local prefix
local suffix
prefix, suffix = lccn:match ("(.+)%-(.+)"); -- 3.a remove hyphen by splitting the string into prefix and suffix
if nil ~= suffix then -- if there was a hyphen
suffix=string.rep("0", 6-string.len (suffix)) .. suffix; -- 3.b.2 left fill the suffix with 0s if suffix length less than 6
lccn=prefix..suffix; -- reassemble the lccn
end
return lccn;
end
--============================<< I D E N T I F I E R F U N C T I O N S >>====================================
--[[--------------------------< A R X I V >--------------------------------------------------------------------
See: http://arxiv.org/help/arxiv_identifier
format and error check arXiv identifier. There are three valid forms of the identifier:
the first form, valid only between date codes 9108 and 0703 is:
arXiv:<archive>.<class>/<date code><number><version>
where:
<archive> is a string of alpha characters - may be hyphenated; no other punctuation
<class> is a string of alpha characters - may be hyphenated; no other punctuation
<date code> is four digits in the form YYMM where YY is the last two digits of the four-digit year and MM is the month number January = 01
first digit of YY for this form can only 9 and 0
<number> is a three-digit number
<version> is a 1 or more digit number preceded with a lowercase v; no spaces (undocumented)
the second form, valid from April 2007 through December 2014 is:
arXiv:<date code>.<number><version>
where:
<date code> is four digits in the form YYMM where YY is the last two digits of the four-digit year and MM is the month number January = 01
<number> is a four-digit number
<version> is a 1 or more digit number preceded with a lowercase v; no spaces
the third form, valid from January 2015 is:
arXiv:<date code>.<number><version>
where:
<date code> and <version> are as defined for 0704-1412
<number> is a five-digit number
]]
local function arxiv (id, class)
local handler = cfg.id_handlers['ARXIV'];
local year, month, version;
local err_cat = '';
local text;
if id:match("^%a[%a%.%-]+/[90]%d[01]%d%d%d%d$") or id:match("^%a[%a%.%-]+/[90]%d[01]%d%d%d%dv%d+$") then -- test for the 9108-0703 format w/ & w/o version
year, month = id:match("^%a[%a%.%-]+/([90]%d)([01]%d)%d%d%d[v%d]*$");
year = tonumber(year);
month = tonumber(month);
if ((not (90 < year or 8 > year)) or (1 > month or 12 < month)) or -- if invalid year or invalid month
((91 == year and 7 > month) or (7 == year and 3 < month)) then -- if years ok, are starting and ending months ok?
err_cat = ' ' .. set_error( 'bad_arxiv' ); -- set error message
end
elseif id:match("^%d%d[01]%d%.%d%d%d%d$") or id:match("^%d%d[01]%d%.%d%d%d%dv%d+$") then -- test for the 0704-1412 w/ & w/o version
year, month = id:match("^(%d%d)([01]%d)%.%d%d%d%d[v%d]*$");
year = tonumber(year);
month = tonumber(month);
if ((7 > year) or (14 < year) or (1 > month or 12 < month)) or -- is year invalid or is month invalid? (doesn't test for future years)
((7 == year) and (4 > month)) then --or -- when year is 07, is month invalid (before April)?
err_cat = ' ' .. set_error( 'bad_arxiv' ); -- set error message
end
elseif id:match("^%d%d[01]%d%.%d%d%d%d%d$") or id:match("^%d%d[01]%d%.%d%d%d%d%dv%d+$") then -- test for the 1501- format w/ & w/o version
year, month = id:match("^(%d%d)([01]%d)%.%d%d%d%d%d[v%d]*$");
year = tonumber(year);
month = tonumber(month);
if ((15 > year) or (1 > month or 12 < month)) then -- is year invalid or is month invalid? (doesn't test for future years)
err_cat = ' ' .. set_error( 'bad_arxiv' ); -- set error message
end
else
err_cat = ' ' .. set_error( 'bad_arxiv' ); -- arXiv id doesn't match any format
end
text = external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode, access=handler.access}) .. err_cat;
if is_set (class) then
class = ' [[' .. '//arxiv.org/archive/' .. class .. ' ' .. class .. ']]'; -- external link within square brackets, not wikilink
else
class = ''; -- empty string for concatenation
end
return text .. class;
end
--[[--------------------------< B I B C O D E >--------------------------------------------------------------------
Validates (sort of) and formats a bibcode id.
Format for bibcodes is specified here: http://adsabs.harvard.edu/abs_doc/help_pages/data.html#bibcodes
But, this: 2015arXiv151206696F is apparently valid so apparently, the only things that really matter are length, 19 characters
and first four digits must be a year. This function makes these tests:
length must be 19 characters
characters in position
1–4 must be digits and must represent a year in the range of 1000 – next year
5 must be a letter
6 must be letter, ampersand, or dot (ampersand cannot directly precede a dot; &. )
7–8 must be letter, digit, ampersand, or dot (ampersand cannot directly precede a dot; &. )
9–18 must be letter, digit, or dot
19 must be a letter or dot
]]
local function bibcode (id, access)
local handler = cfg.id_handlers['BIBCODE'];
local err_type;
local year;
local text = external_link_id({link=handler.link, label=handler.label,
prefix=handler.prefix, id=id, separator=handler.separator, encode=handler.encode,
access=access});
if 19 ~= id:len() then
err_type = 'length';
else
year = id:match ("^(%d%d%d%d)[%a][%a&%.][%a&%.%d][%a&%.%d][%a%d%.]+[%a%.]$") --
if not year then -- if nil then no pattern match
err_type = 'value'; -- so value error
else
local next_year = tonumber(os.date ('%Y'))+1; -- get the current year as a number and add one for next year
year = tonumber (year); -- convert year portion of bibcode to a number
if (1000 > year) or (year > next_year) then
err_type = 'year'; -- year out of bounds
end
if id:find('&%.') then
err_type = 'journal'; -- journal abbreviation must not have '&.' (if it does its missing a letter)
end
end
end
if is_set (err_type) then -- if there was an error detected
text = text .. ' ' .. set_error( 'bad_bibcode', {err_type});
end
return text;
end
--[[--------------------------< B I O R X I V >-----------------------------------------------------------------
Format bioRxiv id and do simple error checking. BiorXiv ids are exactly 6 digits.
The bioRxiv id is the number following the last slash in the bioRxiv-issued DOI:
https://doi.org/10.1101/078733 -> 078733
]]
local function biorxiv(id)
local handler = cfg.id_handlers['BIORXIV'];
local err_cat = ''; -- presume that bioRxiv id is valid
if nil == id:match("^%d%d%d%d%d%d$") then -- if bioRxiv id has anything but six digits
err_cat = ' ' .. set_error( 'bad_biorxiv'); -- set an error message
end
return external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator,
encode=handler.encode, access=handler.access}) .. err_cat;
end
--[[--------------------------< C I T E S E E R X >------------------------------------------------------------
CiteSeerX use their own notion of "doi" (not to be confused with the identifiers resolved via doi.org).
The description of the structure of this identifier can be found at Help_talk:Citation_Style_1/Archive_26#CiteSeerX_id_structure
]]
local function citeseerx (id)
local handler = cfg.id_handlers['CITESEERX'];
local matched;
local text = external_link_id({link=handler.link, label=handler.label,
prefix=handler.prefix, id=id, separator=handler.separator, encode=handler.encode,
access=handler.access});
matched = id:match ("^10%.1%.1%.[1-9]%d?%d?%d?%.[1-9]%d?%d?%d?$");
if not matched then
text = text .. ' ' .. set_error( 'bad_citeseerx' );
end
return text;
end
--[[--------------------------< D O I >------------------------------------------------------------------------
Formats a DOI and checks for DOI errors.
DOI names contain two parts: prefix and suffix separated by a forward slash.
Prefix: directory indicator '10.' followed by a registrant code
Suffix: character string of any length chosen by the registrant
This function checks a DOI name for: prefix/suffix. If the doi name contains spaces or endashes, or, if it ends
with a period or a comma, this function will emit a bad_doi error message.
DOI names are case-insensitive and can incorporate any printable Unicode characters so the test for spaces, endash,
and terminal punctuation may not be technically correct but it appears, that in practice these characters are rarely
if ever used in doi names.
]]
local function doi(id, inactive, access)
local cat = ""
local handler = cfg.id_handlers['DOI'];
local text;
if is_set(inactive) then
local inactive_year = inactive:match("%d%d%d%d") or ''; -- try to get the year portion from the inactive date
if is_set(inactive_year) then
table.insert( z.error_categories, "Pages with DOIs inactive since " .. inactive_year );
else
table.insert( z.error_categories, "Pages with inactive DOIs" ); -- when inactive doesn't contain a recognizable year
end
inactive = " (" .. cfg.messages['inactive'] .. " " .. inactive .. ")"
end
text = external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode, access=access}) .. (inactive or '')
if nil == id:match("^10%.[^%s–]-/[^%s–]-[^%.,]$") then -- doi must begin with '10.', must contain a fwd slash, must not contain spaces or endashes, and must not end with period or comma
cat = ' ' .. set_error( 'bad_doi' );
end
return text .. cat
end
--[[--------------------------< H D L >------------------------------------------------------------------------
Formats an HDL with minor error checking.
HDL names contain two parts: prefix and suffix separated by a forward slash.
Prefix: character string using any character in the UCS-2 character set except '/'
Suffix: character string of any length using any character in the UCS-2 character set chosen by the registrant
This function checks a HDL name for: prefix/suffix. If the HDL name contains spaces, endashes, or, if it ends
with a period or a comma, this function will emit a bad_hdl error message.
HDL names are case-insensitive and can incorporate any printable Unicode characters so the test for endashes and
terminal punctuation may not be technically correct but it appears, that in practice these characters are rarely
if ever used in HDLs.
]]
local function hdl(id, access)
local handler = cfg.id_handlers['HDL'];
local text = external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode, access=access})
if nil == id:match("^[^%s–]-/[^%s–]-[^%.,]$") then -- hdl must contain a fwd slash, must not contain spaces, endashes, and must not end with period or comma
text = text .. ' ' .. set_error( 'bad_hdl' );
end
return text;
end
--[[--------------------------< I S B N >----------------------------------------------------------------------
Determines whether an ISBN string is valid
]]
local function isbn( isbn_str )
if nil ~= isbn_str:match("[^%s-0-9X]") then
return false, 'invalid character'; -- fail if isbn_str contains anything but digits, hyphens, or the uppercase X
end
isbn_str = isbn_str:gsub( "-", "" ):gsub( " ", "" ); -- remove hyphens and spaces
local len = isbn_str:len();
if len ~= 10 and len ~= 13 then
return false, 'length'; -- fail if incorrect length
end
if len == 10 then
if isbn_str:match( "^%d*X?$" ) == nil then -- fail if isbn_str has 'X' anywhere but last position
return false, 'invalid form';
end
return is_valid_isxn(isbn_str, 10), 'checksum';
else
if isbn_str:match( "^%d+$" ) == nil then
return false, 'invalid character'; -- fail if isbn13 is not all digits
end
if isbn_str:match( "^97[89]%d*$" ) == nil then
return false, 'invalid prefix'; -- fail when isbn13 does not begin with 978 or 979
end
return is_valid_isxn_13 (isbn_str), 'checksum';
end
end
--[[--------------------------< A M A Z O N >------------------------------------------------------------------
Formats a link to Amazon. Do simple error checking: asin must be mix of 10 numeric or uppercase alpha
characters. If a mix, first character must be uppercase alpha; if all numeric, asins must be 10-digit
isbn. If 10-digit isbn, add a maintenance category so a bot or awb script can replace |asin= with |isbn=.
Error message if not 10 characters, if not isbn10, if mixed and first character is a digit.
This function is positioned here because it calls isbn()
]]
local function asin(id, domain)
local err_cat = ""
if not id:match("^[%d%u][%d%u][%d%u][%d%u][%d%u][%d%u][%d%u][%d%u][%d%u][%d%u]$") then
err_cat = ' ' .. set_error ('bad_asin'); -- asin is not a mix of 10 uppercase alpha and numeric characters
else
if id:match("^%d%d%d%d%d%d%d%d%d[%dX]$") then -- if 10-digit numeric (or 9 digits with terminal X)
if isbn( id ) then -- see if asin value is isbn10
add_maint_cat ('ASIN');
elseif not is_set (err_cat) then
err_cat = ' ' .. set_error ('bad_asin'); -- asin is not isbn10
end
elseif not id:match("^%u[%d%u]+$") then
err_cat = ' ' .. set_error ('bad_asin'); -- asin doesn't begin with uppercase alpha
end
end
if not is_set(domain) then
domain = "com";
elseif in_array (domain, {'jp', 'uk'}) then -- Japan, United Kingdom
domain = "co." .. domain;
elseif in_array (domain, {'au', 'br', 'mx'}) then -- Australia, Brazil, Mexico
domain = "com." .. domain;
end
local handler = cfg.id_handlers['ASIN'];
return external_link_id({link=handler.link,
label=handler.label, prefix=handler.prefix .. domain .. "/dp/",
id=id, encode=handler.encode, separator = handler.separator}) .. err_cat;
end
--[[--------------------------< I S M N >----------------------------------------------------------------------
Determines whether an ISMN string is valid. Similar to isbn-13, ismn is 13 digits begining 979-0-... and uses the
same check digit calculations. See http://www.ismn-international.org/download/Web_ISMN_Users_Manual_2008-6.pdf
section 2, pages 9–12.
]]
local function ismn (id)
local handler = cfg.id_handlers['ISMN'];
local text;
local valid_ismn = true;
local id_copy;
id_copy = id; -- save a copy because this testing is destructive
id=id:gsub( "[%s-–]", "" ); -- strip spaces, hyphens, and endashes from the ismn
if 13 ~= id:len() or id:match( "^9790%d*$" ) == nil then -- ismn must be 13 digits and begin 9790
valid_ismn = false;
else
valid_ismn=is_valid_isxn_13 (id); -- validate ismn
end
-- text = internal_link_id({link = handler.link, label = handler.label, -- use this (or external version) when there is some place to link to
-- prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode})
text = table.concat (
{
make_wikilink (handler.link, handler.label),
handler.separator,
id_copy
}); -- because no place to link to yet
if false == valid_ismn then
text = text .. ' ' .. set_error( 'bad_ismn' ) -- add an error message if the ismn is invalid
end
return text;
end
--[[--------------------------< I S S N >----------------------------------------------------------------------
Validate and format an issn. This code fixes the case where an editor has included an ISSN in the citation but
has separated the two groups of four digits with a space. When that condition occurred, the resulting link looked
like this:
|issn=0819 4327 gives: [http://www.worldcat.org/issn/0819 4327 0819 4327] -- can't have spaces in an external link
This code now prevents that by inserting a hyphen at the issn midpoint. It also validates the issn for length
and makes sure that the checkdigit agrees with the calculated value. Incorrect length (8 digits), characters
other than 0-9 and X, or checkdigit / calculated value mismatch will all cause a check issn error message. The
issn is always displayed with a hyphen, even if the issn was given as a single group of 8 digits.
]]
local function issn(id, e)
local issn_copy = id; -- save a copy of unadulterated issn; use this version for display if issn does not validate
local handler;
local text;
local valid_issn = true;
if e then
handler = cfg.id_handlers['EISSN'];
else
handler = cfg.id_handlers['ISSN'];
end
id=id:gsub( "[%s-–]", "" ); -- strip spaces, hyphens, and endashes from the issn
if 8 ~= id:len() or nil == id:match( "^%d*X?$" ) then -- validate the issn: 8 digits long, containing only 0-9 or X in the last position
valid_issn=false; -- wrong length or improper character
else
valid_issn=is_valid_isxn(id, 8); -- validate issn
end
if true == valid_issn then
id = string.sub( id, 1, 4 ) .. "-" .. string.sub( id, 5 ); -- if valid, display correctly formatted version
else
id = issn_copy; -- if not valid, use the show the invalid issn with error message
end
text = external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode})
if false == valid_issn then
text = text .. ' ' .. set_error( 'bad_issn', e and 'e' or '' ) -- add an error message if the issn is invalid
end
return text
end
--[[--------------------------< J F M >-----------------------------------------------------------------------
A numerical identifier in the form nn.nnnn.nn
]]
local function jfm (id)
local handler = cfg.id_handlers['JFM'];
local id_num;
local err_cat = '';
id_num = id:match ('^[Jj][Ff][Mm](.*)$'); -- identifier with jfm prefix; extract identifier
if is_set (id_num) then
add_maint_cat ('jfm_format');
else -- plain number without mr prefix
id_num = id; -- if here id does not have prefix
end
if id_num and id_num:match('^%d%d%.%d%d%d%d%.%d%d$') then
id = id_num; -- jfm matches pattern
else
err_cat = ' ' .. set_error( 'bad_jfm' ); -- set an error message
end
return external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode}) .. err_cat;
end
--[[--------------------------< L C C N >----------------------------------------------------------------------
Format LCCN link and do simple error checking. LCCN is a character string 8-12 characters long. The length of
the LCCN dictates the character type of the first 1-3 characters; the rightmost eight are always digits.
http://info-uri.info/registry/OAIHandler?verb=GetRecord&metadataPrefix=reg&identifier=info:lccn/
length = 8 then all digits
length = 9 then lccn[1] is lower case alpha
length = 10 then lccn[1] and lccn[2] are both lower case alpha or both digits
length = 11 then lccn[1] is lower case alpha, lccn[2] and lccn[3] are both lower case alpha or both digits
length = 12 then lccn[1] and lccn[2] are both lower case alpha
]]
local function lccn(lccn)
local handler = cfg.id_handlers['LCCN'];
local err_cat = ''; -- presume that LCCN is valid
local id = lccn; -- local copy of the lccn
id = normalize_lccn (id); -- get canonical form (no whitespace, hyphens, forward slashes)
local len = id:len(); -- get the length of the lccn
if 8 == len then
if id:match("[^%d]") then -- if LCCN has anything but digits (nil if only digits)
err_cat = ' ' .. set_error( 'bad_lccn' ); -- set an error message
end
elseif 9 == len then -- LCCN should be adddddddd
if nil == id:match("%l%d%d%d%d%d%d%d%d") then -- does it match our pattern?
err_cat = ' ' .. set_error( 'bad_lccn' ); -- set an error message
end
elseif 10 == len then -- LCCN should be aadddddddd or dddddddddd
if id:match("[^%d]") then -- if LCCN has anything but digits (nil if only digits) ...
if nil == id:match("^%l%l%d%d%d%d%d%d%d%d") then -- ... see if it matches our pattern
err_cat = ' ' .. set_error( 'bad_lccn' ); -- no match, set an error message
end
end
elseif 11 == len then -- LCCN should be aaadddddddd or adddddddddd
if not (id:match("^%l%l%l%d%d%d%d%d%d%d%d") or id:match("^%l%d%d%d%d%d%d%d%d%d%d")) then -- see if it matches one of our patterns
err_cat = ' ' .. set_error( 'bad_lccn' ); -- no match, set an error message
end
elseif 12 == len then -- LCCN should be aadddddddddd
if not id:match("^%l%l%d%d%d%d%d%d%d%d%d%d") then -- see if it matches our pattern
err_cat = ' ' .. set_error( 'bad_lccn' ); -- no match, set an error message
end
else
err_cat = ' ' .. set_error( 'bad_lccn' ); -- wrong length, set an error message
end
if not is_set (err_cat) and nil ~= lccn:find ('%s') then
err_cat = ' ' .. set_error( 'bad_lccn' ); -- lccn contains a space, set an error message
end
return external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=lccn,separator=handler.separator, encode=handler.encode}) .. err_cat;
end
--[[--------------------------< M R >--------------------------------------------------------------------------
A seven digit number; if not seven digits, zero-fill leading digits to make seven digits.
]]
local function mr (id)
local handler = cfg.id_handlers['MR'];
local id_num;
local id_len;
local err_cat = '';
id_num = id:match ('^[Mm][Rr](%d+)$'); -- identifier with mr prefix
if is_set (id_num) then
add_maint_cat ('mr_format');
else -- plain number without mr prefix
id_num = id:match ('^%d+$'); -- if here id is all digits
end
id_len = id_num and id_num:len() or 0;
if (7 >= id_len) and (0 ~= id_len) then
id = string.rep ('0', 7-id_len ) .. id_num; -- zero-fill leading digits
else
err_cat = ' ' .. set_error( 'bad_mr' ); -- set an error message
end
return external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode}) .. err_cat;
end
--[[--------------------------< O C L C >----------------------------------------------------------------------
Validate and format an oclc id. https://www.oclc.org/batchload/controlnumber.en.html
]]
local function oclc (id)
local handler = cfg.id_handlers['OCLC'];
local number;
local err_msg = ''; -- empty string for concatenation
if id:match('^ocm%d%d%d%d%d%d%d%d$') then -- ocm prefix and 8 digits; 001 field (12 characters)
number = id:match('ocm(%d+)'); -- get the number
elseif id:match('^ocn%d%d%d%d%d%d%d%d%d$') then -- ocn prefix and 9 digits; 001 field (12 characters)
number = id:match('ocn(%d+)'); -- get the number
elseif id:match('^on%d%d%d%d%d%d%d%d%d%d+$') then -- on prefix and 10 or more digits; 001 field (12 characters)
number = id:match('^on(%d%d%d%d%d%d%d%d%d%d+)$'); -- get the number
elseif id:match('^%(OCoLC%)[1-9]%d*$') then -- (OCoLC) prefix and variable number digits; no leading zeros; 035 field
number = id:match('%(OCoLC%)([1-9]%d*)'); -- get the number
if 9 < number:len() then
number = nil; -- contrain to 1 to 9 digits; change this when oclc issues 10-digit numbers
end
elseif id:match('^%d+$') then -- no prefix
number = id; -- get the number
if 10 < number:len() then
number = nil; -- contrain to 1 to 10 digits; change this when oclc issues 11-digit numbers
end
end
if number then -- proper format
id = number; -- exclude prefix, if any, from external link
else
err_msg = ' ' .. set_error( 'bad_oclc' ) -- add an error message if the id is malformed
end
local text = external_link_id({link=handler.link, label=handler.label,
prefix=handler.prefix, id=id, separator=handler.separator, encode=handler.encode}) .. err_msg;
return text;
end
--[[--------------------------< O P E N L I B R A R Y >--------------------------------------------------------
Formats an OpenLibrary link, and checks for associated errors.
]]
local function openlibrary(id, access)
local code;
local handler = cfg.id_handlers['OL'];
local ident;
ident, code = id:gsub('^OL', ''):match("^(%d+([AMW]))$"); -- optional OL prefix followed immediately by digits followed by 'A', 'M', or 'W'; remove OL prefix
if not is_set (ident) then -- if malformed return an error
return external_link_id({link=handler.link, label=handler.label,
prefix=handler.prefix .. 'OL',
id=id, separator=handler.separator, encode = handler.encode,
access = access}) .. ' ' .. set_error( 'bad_ol' );
end
id = ident; -- use ident without the optional OL prefix (it has been removed)
if ( code == "A" ) then
return external_link_id({link=handler.link, label=handler.label,
prefix=handler.prefix .. 'authors/OL',
id=id, separator=handler.separator, encode = handler.encode,
access = access})
end
if ( code == "M" ) then
return external_link_id({link=handler.link, label=handler.label,
prefix=handler.prefix .. 'books/OL',
id=id, separator=handler.separator, encode = handler.encode,
access = access})
end
if ( code == "W" ) then
return external_link_id({link=handler.link, label=handler.label,
prefix=handler.prefix .. 'works/OL',
id=id, separator=handler.separator, encode = handler.encode,
access = access})
end
end
--[[--------------------------< P M C >------------------------------------------------------------------------
Format a PMC, do simple error checking, and check for embargoed articles.
The embargo parameter takes a date for a value. If the embargo date is in the future the PMC identifier will not
be linked to the article. If the embargo date is today or in the past, or if it is empty or omitted, then the
PMC identifier is linked to the article through the link at cfg.id_handlers['PMC'].prefix.
PMC embargo date testing is done in function is_embargoed () which is called earlier because when the citation
has |pmc=<value> but does not have a |url= then |title= is linked with the PMC link. Function is_embargoed ()
returns the embargo date if the PMC article is still embargoed, otherwise it returns an empty string.
PMCs are sequential numbers beginning at 1 and counting up. This code checks the PMC to see that it contains only digits and is less
than test_limit; the value in local variable test_limit will need to be updated periodically as more PMCs are issued.
]]
local function pmc(id, embargo)
local test_limit = 6500000; -- update this value as PMCs approach
local handler = cfg.id_handlers['PMC'];
local err_cat = ''; -- presume that PMC is valid
local id_num;
local text;
id_num = id:match ('^[Pp][Mm][Cc](%d+)$'); -- identifier with pmc prefix
if is_set (id_num) then
add_maint_cat ('pmc_format');
else -- plain number without pmc prefix
id_num = id:match ('^%d+$'); -- if here id is all digits
end
if is_set (id_num) then -- id_num has a value so test it
id_num = tonumber(id_num); -- convert id_num to a number for range testing
if 1 > id_num or test_limit < id_num then -- if PMC is outside test limit boundaries
err_cat = ' ' .. set_error( 'bad_pmc' ); -- set an error message
else
id = tostring (id_num); -- make sure id is a string
end
else -- when id format incorrect
err_cat = ' ' .. set_error( 'bad_pmc' ); -- set an error message
end
if is_set (embargo) then -- is PMC is still embargoed?
text = table.concat ( -- still embargoed so no external link
{
make_wikilink (handler.link, handler.label),
handler.separator,
id,
err_cat
});
else
text = external_link_id({link = handler.link, label = handler.label, -- no embargo date or embargo has expired, ok to link to article
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode, access=handler.access}) .. err_cat;
end
return text;
end
--[[--------------------------< P M I D >----------------------------------------------------------------------
Format PMID and do simple error checking. PMIDs are sequential numbers beginning at 1 and counting up. This
code checks the PMID to see that it contains only digits and is less than test_limit; the value in local variable
test_limit will need to be updated periodically as more PMIDs are issued.
]]
local function pmid(id)
local test_limit = 32000000; -- update this value as PMIDs approach
local handler = cfg.id_handlers['PMID'];
local err_cat = ''; -- presume that PMID is valid
if id:match("[^%d]") then -- if PMID has anything but digits
err_cat = ' ' .. set_error( 'bad_pmid' ); -- set an error message
else -- PMID is only digits
local id_num = tonumber(id); -- convert id to a number for range testing
if 1 > id_num or test_limit < id_num then -- if PMID is outside test limit boundaries
err_cat = ' ' .. set_error( 'bad_pmid' ); -- set an error message
end
end
return external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode}) .. err_cat;
end
--[[--------------------------< S S R N >----------------------------------------------------------------------
Format an ssrn, do simple error checking
SSRNs are sequential numbers beginning at 100? and counting up. This code checks the ssrn to see that it is
only digits and is greater than 99 and less than test_limit; the value in local variable test_limit will need
to be updated periodically as more SSRNs are issued.
]]
local function ssrn (id)
local test_limit = 3500000; -- update this value as SSRNs approach
local handler = cfg.id_handlers['SSRN'];
local err_cat = ''; -- presume that SSRN is valid
local id_num;
local text;
id_num = id:match ('^%d+$'); -- id must be all digits
if is_set (id_num) then -- id_num has a value so test it
id_num = tonumber(id_num); -- convert id_num to a number for range testing
if 100 > id_num or test_limit < id_num then -- if SSRN is outside test limit boundaries
err_cat = ' ' .. set_error( 'bad_ssrn' ); -- set an error message
end
else -- when id format incorrect
err_cat = ' ' .. set_error( 'bad_ssrn' ); -- set an error message
end
text = external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode, access=handler.access}) .. err_cat;
return text;
end
--[[--------------------------< U S E N E T _ I D >------------------------------------------------------------
Validate and format a usenet message id. Simple error checking, looks for 'id-left@id-right' not enclosed in
'<' and/or '>' angle brackets.
]]
local function usenet_id (id)
local handler = cfg.id_handlers['USENETID'];
local text = external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode})
if not id:match('^.+@.+$') or not id:match('^[^<].*[^>]$')then -- doesn't have '@' or has one or first or last character is '< or '>'
text = text .. ' ' .. set_error( 'bad_usenet_id' ) -- add an error message if the message id is invalid
end
return text
end
--[[--------------------------< Z B L >-----------------------------------------------------------------------
A numerical identifier in the form nnnn.nnnnn - leading zeros in the first quartet optional
]]
local function zbl (id)
local handler = cfg.id_handlers['ZBL'];
local id_num;
local err_cat = '';
id_num = id:match ('^[Zz][Bb][Ll](.*)$'); -- identifier with zbl prefix; extract identifier
if is_set (id_num) then
add_maint_cat ('zbl_format');
else -- plain number without zbl prefix
id_num = id; -- if here id does not have prefix
end
if id_num:match('^%d?%d?%d?%d%.%d%d%d%d%d$') then
id = id_num; -- id matches pattern
else
err_cat = ' ' .. set_error( 'bad_zbl' ); -- set an error message
end
return external_link_id({link = handler.link, label = handler.label,
prefix=handler.prefix,id=id,separator=handler.separator, encode=handler.encode}) .. err_cat;
end
--============================<< I N T E R F A C E F U N C T I O N S >>==========================================
--[[--------------------------< B U I L D _ I D _ L I S T >--------------------------------------------------------
Takes a table of IDs created by extract_ids() and turns it into a table of formatted ID outputs.
inputs:
id_list – table of identifiers built by extract_ids()
options – table of various template parameter values used to modify some manually handled identifiers
]]
local function build_id_list( id_list, options )
local new_list, handler = {};
local function fallback(k) return { __index = function(t,i) return cfg.id_handlers[k][i] end } end;
for k, v in pairs( id_list ) do -- k is uc identifier name as index to cfg.id_handlers; e.g. cfg.id_handlers['ISBN'], v is a table
-- fallback to read-only cfg
handler = setmetatable( { ['id'] = v, ['access'] = options.IdAccessLevels[k] }, fallback(k) );
if handler.mode == 'external' then
table.insert( new_list, {handler.label, external_link_id( handler ) } );
elseif handler.mode == 'internal' then
table.insert( new_list, {handler.label, internal_link_id( handler ) } );
elseif handler.mode ~= 'manual' then
error( cfg.messages['unknown_ID_mode'] );
elseif k == 'ARXIV' then
table.insert( new_list, {handler.label, arxiv( v, options.Class ) } );
elseif k == 'ASIN' then
table.insert( new_list, {handler.label, asin( v, options.ASINTLD ) } );
elseif k == 'BIBCODE' then
table.insert( new_list, {handler.label, bibcode( v, handler.access ) } );
elseif k == 'BIORXIV' then
table.insert( new_list, {handler.label, biorxiv( v ) } );
elseif k == 'BNF' then
table.insert( new_list, {handler.label, bnf( v ) } );
elseif k == 'CITESEERX' then
table.insert( new_list, {handler.label, citeseerx( v ) } );
elseif k == 'DOI' then
table.insert( new_list, {handler.label, doi( v, options.DoiBroken, handler.access ) } );
elseif k == 'EISSN' then
table.insert( new_list, {handler.label, issn( v, true ) } ); -- true distinguishes eissn from issn
elseif k == 'HDL' then
table.insert( new_list, {handler.label, hdl( v, handler.access ) } );
elseif k == 'ISBN' then
local ISBN = internal_link_id( handler );
local check;
local err_type = '';
check, err_type = isbn( v );
if not check then
if is_set(options.IgnoreISBN) then -- ISBN is invalid; if |ignore-isbn-error= set
add_maint_cat ('ignore_isbn_err'); -- ad a maint category
else
ISBN = ISBN .. set_error( 'bad_isbn', {err_type}, false, " ", "" ); -- else display an error message
end
elseif is_set(options.IgnoreISBN) then -- ISBN is OK; if |ignore-isbn-error= set
add_maint_cat ('ignore_isbn_err'); -- because |ignore-isbn-error= unnecessary
end
table.insert( new_list, {handler.label, ISBN } );
elseif k == 'ISMN' then
table.insert( new_list, {handler.label, ismn( v ) } );
elseif k == 'ISSN' then
table.insert( new_list, {handler.label, issn( v ) } );
elseif k == 'JFM' then
table.insert( new_list, {handler.label, jfm( v ) } );
elseif k == 'LCCN' then
table.insert( new_list, {handler.label, lccn( v ) } );
elseif k == 'MR' then
table.insert( new_list, {handler.label, mr( v ) } );
elseif k == 'OCLC' then
table.insert( new_list, {handler.label, oclc( v ) } );
elseif k == 'OL' or k == 'OLA' then
table.insert( new_list, {handler.label, openlibrary( v, handler.access ) } );
elseif k == 'PMC' then
table.insert( new_list, {handler.label, pmc( v, options.Embargo ) } );
elseif k == 'PMID' then
table.insert( new_list, {handler.label, pmid( v ) } );
elseif k == 'SSRN' then
table.insert( new_list, {handler.label, ssrn( v ) } );
elseif k == 'USENETID' then
table.insert( new_list, {handler.label, usenet_id( v ) } );
elseif k == 'ZBL' then
table.insert( new_list, {handler.label, zbl( v ) } );
else
error( cfg.messages['unknown_manual_ID'] );
end
end
local function comp( a, b ) -- used in following table.sort()
return a[1]:lower() < b[1]:lower();
end
table.sort( new_list, comp );
for k, v in ipairs( new_list ) do
new_list[k] = v[2];
end
return new_list;
end
--[[--------------------------< E X T R A C T _ I D S >------------------------------------------------------------
Populates ID table from arguments using configuration settings. Loops through cfg.id_handlers and searches args for
any of the parameters listed in each cfg.id_handlers['...'].parameters. If found, adds the parameter and value to
the identifier list. Emits redundant error message is more than one alias exists in args
]]
local function extract_ids( args )
local id_list = {}; -- list of identifiers found in args
for k, v in pairs( cfg.id_handlers ) do -- k is uc identifier name as index to cfg.id_handlers; e.g. cfg.id_handlers['ISBN'], v is a table
v = select_one( args, v.parameters, 'redundant_parameters' ); -- v.parameters is a table of aliases for k; here we pick one from args if present
if is_set(v) then id_list[k] = v; end -- if found in args, add identifier to our list
end
return id_list;
end
--[[--------------------------< E X T R A C T _ I D _ A C C E S S _ L E V E L S >--------------------------------------
Fetches custom id access levels from arguments using configuration settings.
Parameters which have a predefined access level (e.g. arxiv) do not use this
function as they are directly rendered as free without using an additional parameter.
]]
local function extract_id_access_levels( args, id_list )
local id_accesses_list = {};
for k, v in pairs( cfg.id_handlers ) do
local access_param = v.custom_access;
local k_lower = string.lower(k);
if is_set(access_param) then
local access_level = args[access_param];
if is_set(access_level) then
if not in_array (access_level:lower(), cfg.keywords['id-access']) then
table.insert( z.message_tail, { set_error( 'invalid_param_val', {access_param, access_level}, true ) } );
access_level = nil;
end
if not is_set(id_list[k]) then
table.insert( z.message_tail, { set_error( 'param_access_requires_param', {k_lower}, true ) } );
end
if is_set(access_level) then
access_level = access_level:lower();
end
id_accesses_list[k] = access_level;
end
end
end
return id_accesses_list;
end
--[[--------------------------< S E T _ S E L E C T E D _ M O D U L E S >--------------------------------------
Sets local cfg table and imported functions table to same (live or sandbox) as that used by the other modules.
]]
local function set_selected_modules (cfg_table_ptr, utilities_page_ptr)
cfg = cfg_table_ptr;
is_set = utilities_page_ptr.is_set; -- import functions from select Module:Citation/CS1/Utilities module
in_array = utilities_page_ptr.in_array;
set_error = utilities_page_ptr.set_error;
select_one = utilities_page_ptr.select_one;
add_maint_cat = utilities_page_ptr.add_maint_cat;
substitute = utilities_page_ptr.substitute;
make_wikilink = utilities_page_ptr.make_wikilink;
z = utilities_page_ptr.z; -- table of tables in Module:Citation/CS1/Utilities
end
return {
build_id_list = build_id_list,
extract_ids = extract_ids,
extract_id_access_levels = extract_id_access_levels,
is_embargoed = is_embargoed;
set_selected_modules = set_selected_modules;
}
gztdrg6k84nb3sma8iwdm34c78z5eom
Module:Citation/CS1/styles.css
828
3474
36689
2025-12-15T22:09:33Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '/*-------------------------< O V E R R I D E S >----------------------------- cs1|2 references are wrapped in <cite>...</cite> tags. Some wikis have not chosen to override the generic user agent italic styling as en.wiki has. This (untested) styling should override the user agent default when cs1|2 templates are rendered. Similarly, some languages use different quotation punctuation so that setting is also made available here. */ cite.citation...'
36689
sanitized-css
text/css
/*-------------------------< O V E R R I D E S >-----------------------------
cs1|2 references are wrapped in <cite>...</cite> tags. Some wikis have not
chosen to override the generic user agent italic styling as en.wiki has. This
(untested) styling should override the user agent default when cs1|2 templates
are rendered.
Similarly, some languages use different quotation punctuation so that setting
is also made available here.
*/
cite.citation {
/* Reset italic styling set by user agent (only for cs1|2 templates; the
reason for the .citation qualifier) */
font-style: inherit;
}
q { /* Πρώτα ελληνικά εισαγωγικά για <q> */
quotes: '«' '»' '"' '"' "'" "'";
}
/*------------< C O M M O N P R E S E N T A T I O N >----------------------
<code>...</code> style override: mediawiki's css definition is specified here:
https://git.wikimedia.org/blob/mediawiki%2Fcore.git/69cd73811f7aadd093050dbf20ed70ef0b42a713/skins%2Fcommon%2FcommonElements.css#L199
*/
code.cs1-code {
/* preserve font but remove other <code> styling; used in error messages */
color: inherit;
background: inherit;
border: inherit; /* code editor doesn't like inherit with border?
https://www.w3.org/wiki/CSS/Properties/border
suggests that inherit is ok */
padding: inherit;
}
/*-----------------< A C C E S S I C O N S T Y L E >--------------------*/
.cs1-lock-free a {
background: url(//upload.wikimedia.org/wikipedia/commons/thumb/6/65/Lock-green.svg/9px-Lock-green.svg.png) no-repeat;
background-position: right .1em center;
}
.cs1-lock-limited a,
.cs1-lock-registration a {
background: url(//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Lock-gray-alt-2.svg/9px-Lock-gray-alt-2.svg.png) no-repeat;
background-position: right .1em center;
}
.cs1-lock-subscription a {
background: url(//upload.wikimedia.org/wikipedia/commons/thumb/a/aa/Lock-red-alt-2.svg/9px-Lock-red-alt-2.svg.png) no-repeat;
background-position: right .1em center;
}
/*------------------< C S 1 / C O N F I G U R A T I O N >-------------------*/
.cs1-subscription,
.cs1-registration {
color: #555;
}
.cs1-subscription span,
.cs1-registration span {
border-bottom: 1px dotted;
cursor: help;
}
/* Errors and maintenance */
code.cs1-code {
/* <code>...</code> style override: mediawiki's css definition is specified here:
https://git.wikimedia.org/blob/mediawiki%2Fcore.git/
69cd73811f7aadd093050dbf20ed70ef0b42a713/skins%2Fcommon%2FcommonElements.css#L199
*/
color: inherit;
background: inherit;
border: none; /* this maybe can be inherit. MDN says yes, code editor says no */
padding: inherit;
}
.cs1-hidden-error {
display: none;
font-size: 100%;
}
.cs1-visible-error {
font-size: 100%;
}
.cs1-maint {
display: none;
color: #33aa33;
margin-left: 0.3em;
}
/* Set small text size in one place. 0.95 (here) * 0.9 (from references list) is
~0.85, which is the lower bound for size for accessibility. Old styling for this
was just 0.85. We could write the rule so that when this template is inside
references/reflist, only then does it multiply by 0.95; else multiply by 0.85 */
.cs1-subscription,
.cs1-registration,
.cs1-format {
font-size: 95%;
}
.cs1-kern-left,
.cs1-kern-wl-left {
padding-left: 0.2em;
}
.cs1-kern-right,
.cs1-kern-wl-right {
padding-right: 0.2em;
}
s0it8kagctkcdvztvisoldtpir4mhj4
Module:Citation/CS1/Date validation
828
3475
36690
2025-12-15T22:10:15Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με ' local p = {} --[[--------------------------< F O R W A R D D E C L A R A T I O N S >-------------------------------------- ]] local is_set, in_array; -- imported functions from selected Module:Citation/CS1/Utilities local cfg; -- table of tables imported from slected Module:Citation/CS1/Configuration --[=[-------------------------< I S _ V A L I D _ A C C E S S D A T E >----------------------------------------...'
36690
Scribunto
text/plain
local p = {}
--[[--------------------------< F O R W A R D D E C L A R A T I O N S >--------------------------------------
]]
local is_set, in_array; -- imported functions from selected Module:Citation/CS1/Utilities
local cfg; -- table of tables imported from slected Module:Citation/CS1/Configuration
--[=[-------------------------< I S _ V A L I D _ A C C E S S D A T E >----------------------------------------
returns true if:
Wikipedia start date <= accessdate < today + 2 days
Wikipedia start date is 2001-01-15T00:00:00 UTC which is 979516800 seconds after 1970-01-01T00:00:00 UTC (the start of Unix time)
accessdate is the date provided in |accessdate= at time 00:00:00 UTC
today is the current date at time 00:00:00 UTC plus 48 hours
if today is 2015-01-01T00:00:00 then
adding 24 hours gives 2015-01-02T00:00:00 – one second more than today
adding 24 hours gives 2015-01-03T00:00:00 – one second more than tomorrow
This function does not work if it is fed month names for languages other than English. Wikimedia #time: parser
apparently doesn't understand non-Engish date month names. This function will always return false when the date
contains a non-English month name because good1 is false after the call to lang.formatDate(). To get around that
call this function with YYYY-MM-DD format dates.
]=]
local function is_valid_accessdate (accessdate)
local lang = mw.getContentLanguage();
local good1, good2;
local access_ts, tomorrow_ts; -- to hold unix time stamps representing the dates
good1, access_ts = pcall( lang.formatDate, lang, 'U', accessdate ); -- convert accessdate value to unix timesatmp
good2, tomorrow_ts = pcall( lang.formatDate, lang, 'U', 'today + 2 days' ); -- today midnight + 2 days is one second more than all day tomorrow
if good1 and good2 then -- lang.formatDate() returns a timestamp in the local script which which tonumber() may not understand
access_ts = tonumber (access_ts) or lang:parseFormattedNumber (access_ts); -- convert to numbers for the comparison;
tomorrow_ts = tonumber (tomorrow_ts) or lang:parseFormattedNumber (tomorrow_ts);
else
return false; -- one or both failed to convert to unix time stamp
end
if 979516800 <= access_ts and access_ts < tomorrow_ts then -- Wikipedia start date <= accessdate < tomorrow's date
return true;
else
return false; -- accessdate out of range
end
end
--[[--------------------------< G E T _ M O N T H _ N U M B E R >----------------------------------------------
returns a number according to the month in a date: 1 for January, etc. Capitalization and spelling must be correct. If not a valid month, returns 0
]]
local function get_month_number (month)
return cfg.date_names['local'].long[month] or cfg.date_names['local'].short[month] or -- look for local names first
cfg.date_names['en'].long[month] or cfg.date_names['en'].short[month] or -- failing that, look for English names
0; -- not a recognized month name
end
--[[--------------------------< I S _ V A L I D _ E M B A R G O _ D A T E >------------------------------------
returns true and date value if that value has proper dmy, mdy, ymd format.
returns false and 9999 (embargoed forever) when date value is not proper format; assumes that when |embargo= is
set, the editor intended to embargo a pmc but |embargo= does not hold a single date.
]]
local function is_valid_embargo_date (v)
if v:match ('^%d%d%d%d%-%d%d%-%d%d$') or -- ymd
v:match ('^%d%d?%s+%a+%s+%d%d%d%d$') or -- dmy
v:match ('^%a+%s+%d%d?%s*,%s*%d%d%d%d$') then -- mdy
return true, v;
end
return false, '9999'; -- if here not good date so return false and set embargo date to long time in future
end
--[[--------------------------< G E T _ S E A S O N _ N U M B E R >--------------------------------------------
returns a number according to the sequence of seasons in a year: 1 for Winter, etc. Capitalization and spelling must be correct. If not a valid season, returns 0
Uses ISO DIS 8601 2016 part 2 §4.7 Divisions of a year for hemishpere-independent seasons:
21-24 = Spring, Summer, Autumn, Winter, independent of “Hemisphere”
These additional divisions not currently supported:
25-28 = Spring - Northern Hemisphere, Summer- Northern Hemisphere, Autumn - Northern Hemisphere, Winter - Northern Hemisphere
29-32 = Spring – Southern Hemisphere, Summer– Southern Hemisphere, Autumn – Southern Hemisphere, Winter - Southern Hemisphere
33-36 = Quarter 1, Quarter 2, Quarter 3, Quarter 4 (3 months each)
37-39 = Quadrimester 1, Quadrimester 2, Quadrimester 3 (4 months each)
40-41 = Semestral 1, Semestral-2 (6 months each)
]]
local function get_season_number (season)
return cfg.date_names['local'].season[season] or -- look for local names first
cfg.date_names['en'].season[season] or -- failing that, look for English names
0; -- not a recognized season name
end
--[[--------------------------< I S _ P R O P E R _ N A M E >--------------------------------------------------
returns a non-zero number if date contains a recognized proper name. Capitalization and spelling must be correct.
]]
local function is_proper_name (name)
return cfg.date_names['local'].named[name] or -- look for local names dates first
cfg.date_names['en'].named[name] or -- failing that, look for English names
0; -- not a recognized named date
end
--[[--------------------------< I S _ V A L I D _ M O N T H _ O R _ S E A S O N >------------------------------
--returns true if month or season is valid (properly spelled, capitalized, abbreviated)
]]
local function is_valid_month_or_season (month_season)
if 0 == get_month_number (month_season) then -- if month text isn't one of the twelve months, might be a season
if 0 == get_season_number (month_season) then -- not a month, is it a season?
return false; -- return false not a month or one of the five seasons
end
end
return true;
end
--[[--------------------------< I S _ V A L I D _ Y E A R >----------------------------------------------------
Function gets current year from the server and compares it to year from a citation parameter. Years more than one year in the future are not acceptable.
]]
local year_limit;
local function is_valid_year(year)
if not is_set(year_limit) then
year_limit = tonumber(os.date("%Y"))+1; -- global variable so we only have to fetch it once
end
return tonumber(year) <= year_limit; -- false if year is in the future more than one year
end
--[[--------------------------< I S _ V A L I D _ D A T E >----------------------------------------------------
Returns true if day is less than or equal to the number of days in month and year is no farther into the future
than next year; else returns false.
Assumes Julian calendar prior to year 1582 and Gregorian calendar thereafter. Accounts for Julian calendar leap
years before 1582 and Gregorian leap years after 1582. Where the two calendars overlap (1582 to approximately
1923) dates are assumed to be Gregorian.
]]
local function is_valid_date (year, month, day)
local days_in_month = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
local month_length;
if not is_valid_year(year) then -- no farther into the future than next year
return false;
end
month = tonumber(month); -- required for YYYY-MM-DD dates
if (2==month) then -- if February
month_length = 28; -- then 28 days unless
if 1582 > tonumber(year) then -- Julian calendar
if 0==(year%4) then
month_length = 29;
end
else -- Gregorian calendar
if (0==(year%4) and (0~=(year%100) or 0==(year%400))) then -- is a leap year?
month_length = 29; -- if leap year then 29 days in February
end
end
else
month_length=days_in_month[month];
end
if tonumber (day) > month_length then
return false;
end
return true;
end
--[[--------------------------< I S _ V A L I D _ M O N T H _ R A N G E _ S T Y L E >--------------------------
Months in a range are expected to have the same style: Jan–Mar or October–December but not February–Mar or Jul–August.
There is a special test for May because it can be either short or long form.
Returns true when style for both months is the same
]]
local function is_valid_month_range_style (month1, month2)
local len1 = month1:len();
local len2 = month2:len();
if len1 == len2 then
return true; -- both months are short form so return true
elseif 'May' == month1 or 'May'== month2 then
return true; -- both months are long form so return true
elseif 3 == len1 or 3 == len2 then
return false; -- months are mixed form so return false
else
return true; -- both months are long form so return true
end
end
--[[--------------------------< I S _ V A L I D _ M O N T H _ S E A S O N _ R A N G E >------------------------
Check a pair of months or seasons to see if both are valid members of a month or season pair.
Month pairs are expected to be left to right, earliest to latest in time.
All season ranges are accepted as valid because there are publishers out there who have published a Summer–Spring YYYY issue so ... ok
]]
local function is_valid_month_season_range(range_start, range_end)
local range_start_number = get_month_number (range_start);
local range_end_number;
if 0 == range_start_number then -- is this a month range?
range_start_number = get_season_number (range_start); -- not a month; is it a season? get start season number
range_end_number = get_season_number (range_end); -- get end season number
if (0 ~= range_start_number) and (0 ~= range_end_number) then
return true; -- any season pairing is accepted
end
return false; -- range_start and/or range_end is not a season
end
-- here when range_start is a month
range_end_number = get_month_number (range_end); -- get end month number
if range_start_number < range_end_number then -- range_start is a month; does range_start precede range_end?
if is_valid_month_range_style (range_start, range_end) then -- do months have the same style?
return true; -- proper order and same style
end
end
return false; -- range_start month number is greater than or equal to range end number; or range end isn't a month
end
--[[--------------------------< M A K E _ C O I N S _ D A T E >------------------------------------------------
This function receives a table of date parts for one or two dates and an empty table reference declared in
Module:Citation/CS1. The function is called only for |date= parameters and only if the |date=<value> is
determined to be a valid date format. The question of what to do with invalid date formats is not answered here.
The date parts in the input table are converted to an ISO 8601 conforming date string:
single whole dates: yyyy-mm-dd
month and year dates: yyyy-mm
year dates: yyyy
ranges: yyyy-mm-dd/yyyy-mm-dd
yyyy-mm/yyyy-mm
yyyy/yyyy
Dates in the Julian calendar are reduced to year or year/year so that we don't have to do calendar conversion from
Julian to Proleptic Gregorian.
The input table has:
year, year2 – always present; if before 1582, ignore months and days if present
month, month2 – 0 if not provided, 1-12 for months, 21-24 for seasons; 99 Christmas
day, day2 – 0 if not provided, 1-31 for days
the output table receives:
rftdate: an IS8601 formatted date
rftchron: a free-form version of the date, usually without year which is in rftdate (season ranges and propername dates)
rftssn: one of four season keywords: winter, spring, summer, fall (lowercase)
]]
local function make_COinS_date (input, tCOinS_date)
local date; -- one date or first date in a range
local date2 = ''; -- end of range date
-- start temporary Julian / Gregorian calendar uncertainty detection
local year = tonumber(input.year); -- this temporary code to determine the extent of sources dated to the Julian/Gregorian
local month = tonumber(input.month); -- interstice 1 October 1582 – 1 January 1926
local day = tonumber (input.day);
if (0 ~= day) and -- day must have a value for this to be a whole date
(((1582 == year) and (10 <= month) and (12 >= month)) or -- any whole 1582 date from 1 october to 31 December or
((1926 == year) and (1 == month) and (1 == input.day)) or -- 1 January 1926 or
((1582 < year) and (1925 >= year))) then -- any date 1 January 1583 – 31 December 1925
tCOinS_date.inter_cal_cat = true; -- set category flag true
end
-- end temporary Julian / Gergorian calendar uncertainty detection
if 1582 > tonumber(input.year) or 20 < tonumber(input.month) then -- Julian calendar or season so &rft.date gets year only
date = input.year;
if 0 ~= input.year2 and input.year ~= input.year2 then -- if a range, only the second year portion when not the same as range start year
date = string.format ('%.4d/%.4d', tonumber(input.year), tonumber(input.year2)) -- assemble the date range
end
if 20 < tonumber(input.month) then -- if season or propername date
local season = {[24]='winter', [21]='spring', [22]='summer', [23]='fall', [99]='Christmas'}; -- seasons lowercase, no autumn; proper names use title case
if 0 == input.month2 then -- single season date
if 30 <tonumber(input.month) then
tCOinS_date.rftchron = season[input.month]; -- proper name dates
else
tCOinS_date.rftssn = season[input.month]; -- seasons
end
else -- season range with a second season specified
if input.year ~= input.year2 then -- season year – season year range or season year–year
tCOinS_date.rftssn = season[input.month]; -- start of range season; keep this?
if 0~= input.month2 then
tCOinS_date.rftchron = string.format ('%s %s – %s %s', season[input.month], input.year, season[input.month2], input.year2);
end
else -- season–season year range
tCOinS_date.rftssn = season[input.month]; -- start of range season; keep this?
tCOinS_date.rftchron = season[input.month] .. '–' .. season[input.month2]; -- season–season year range
end
end
end
tCOinS_date.rftdate = date;
return; -- done
end
if 0 ~= input.day then
date = string.format ('%s-%.2d-%.2d', input.year, tonumber(input.month), tonumber(input.day)); -- whole date
elseif 0 ~= input.month then
date = string.format ('%s-%.2d', input.year, tonumber(input.month)); -- year and month
else
date = string.format ('%s', input.year); -- just year
end
if 0 ~= input.year2 then
if 0 ~= input.day2 then
date2 = string.format ('/%s-%.2d-%.2d', input.year2, tonumber(input.month2), tonumber(input.day2)); -- whole date
elseif 0 ~= input.month2 then
date2 = string.format ('/%s-%.2d', input.year2, tonumber(input.month2)); -- year and month
else
date2 = string.format ('/%s', input.year2); -- just year
end
end
tCOinS_date.rftdate = date .. date2; -- date2 has the '/' separator
return;
end
--[[--------------------------< C H E C K _ D A T E >----------------------------------------------------------
Check date format to see that it is one of the formats approved by WP:DATESNO or WP:DATERANGE. Exception: only
allowed range separator is endash. Additionally, check the date to see that it is a real date: no 31 in 30-day
months; no 29 February when not a leap year. Months, both long-form and three character abbreviations, and seasons
must be spelled correctly. Future years beyond next year are not allowed.
If the date fails the format tests, this function returns false and does not return values for anchor_year and
COinS_date. When this happens, the date parameter is used in the COinS metadata and the CITEREF identifier gets
its year from the year parameter if present otherwise CITEREF does not get a date value.
Inputs:
date_string - date string from date-holding parameters (date, year, accessdate, embargo, archivedate, etc.)
Returns:
false if date string is not a real date; else
true, anchor_year, COinS_date
anchor_year can be used in CITEREF anchors
COinS_date is ISO 8601 format date; see make_COInS_date()
]]
local function check_date (date_string, tCOinS_date, test_accessdate)
local year; -- assume that year2, months, and days are not used;
local year2=0; -- second year in a year range
local month=0;
local month2=0; -- second month in a month range
local day=0;
local day2=0; -- second day in a day range
local anchor_year;
local coins_date;
if date_string:match("^%d%d%d%d%-%d%d%-%d%d$") then -- year-initial numerical year month day format
year, month, day=string.match(date_string, "(%d%d%d%d)%-(%d%d)%-(%d%d)");
if 12 < tonumber(month) or 1 > tonumber(month) or 1582 > tonumber(year) or 0 == tonumber(day) then return false; end -- month or day number not valid or not Gregorian calendar
anchor_year = year;
elseif mw.ustring.match(date_string, "^%D- +[1-9]%d?, +[1-9]%d%d%d%a?$") then -- month-initial: month day, year
month, day, anchor_year, year=mw.ustring.match(date_string, "(%D-) +(%d%d?),%s*((%d%d%d%d?)%a?)");
month = get_month_number (month);
if 0 == month then return false; end -- return false if month text isn't one of the twelve months
elseif mw.ustring.match(date_string, "^%D- +[1-9]%d?[%-–][1-9]%d?, +[1-9]%d%d%d%a?$") then -- month-initial day range: month day–day, year; days are separated by endash
month, day, day2, anchor_year, year=mw.ustring.match(date_string, "(%D-) +(%d%d?)[%-–](%d%d?), +((%d%d%d%d)%a?)");
if tonumber(day) >= tonumber(day2) then return false; end -- date range order is left to right: earlier to later; dates may not be the same;
month = get_month_number (month);
if 0 == month then return false; end -- return false if month text isn't one of the twelve months
month2=month; -- for metadata
year2=year;
elseif mw.ustring.match(date_string, "^[1-9]%d? +%D- +[1-9]%d%d%d%a?$") then -- day-initial: day month year
day, month, anchor_year, year=mw.ustring.match(date_string, "(%d%d*)%s*(%D-) +((%d%d%d%d?)%a?)");
month = get_month_number (month);
if 0 == month then return false; end -- return false if month text isn't one of the twelve months
elseif mw.ustring.match(date_string, "^[1-9]%d?[%-–][1-9]%d? +%D- +[1-9]%d%d%d%a?$") then -- day-range-initial: day–day month year; days are separated by endash
day, day2, month, anchor_year, year=mw.ustring.match(date_string, "(%d%d?)[%-–](%d%d?) +(%D-) +((%d%d%d%d)%a?)");
if tonumber(day) >= tonumber(day2) then return false; end -- date range order is left to right: earlier to later; dates may not be the same;
month = get_month_number (month);
if 0 == month then return false; end -- return false if month text isn't one of the twelve months
month2=month; -- for metadata
year2=year;
elseif mw.ustring.match(date_string, "^[1-9]%d? +%D- +[%-–] +[1-9]%d? +%D- +[1-9]%d%d%d%a?$") then -- day initial month-day-range: day month - day month year; uses spaced endash
day, month, day2, month2, anchor_year, year=mw.ustring.match(date_string, "(%d%d?) +(%D-) +[%-–] +(%d%d?) +(%D-) +((%d%d%d%d)%a?)");
if (not is_valid_month_season_range(month, month2)) or not is_valid_year(year) then return false; end -- date range order is left to right: earlier to later;
month = get_month_number (month); -- for metadata
month2 = get_month_number (month2);
year2=year;
elseif mw.ustring.match(date_string, "^%D- +[1-9]%d? +[%-–] +%D- +[1-9]%d?, +[1-9]%d%d%d%a?$") then -- month initial month-day-range: month day – month day, year; uses spaced endash
month, day, month2, day2, anchor_year, year=mw.ustring.match(date_string, "(%D-) +(%d%d?) +[%-–] +(%D-) +(%d%d?), +((%d%d%d%d)%a?)");
if (not is_valid_month_season_range(month, month2)) or not is_valid_year(year) then return false; end
month = get_month_number (month); -- for metadata
month2 = get_month_number (month2);
year2=year;
elseif mw.ustring.match(date_string, "^[1-9]%d? +%D- +[1-9]%d%d%d +[%-–] +[1-9]%d? +%D- +[1-9]%d%d%d%a?$") then -- day initial month-day-year-range: day month year - day month year; uses spaced endash
day, month, year, day2, month2, anchor_year, year2=mw.ustring.match(date_string, "(%d%d?) +(%D-) +(%d%d%d%d) +[%-–] +(%d%d?) +(%D-) +((%d%d%d%d)%a?)");
if tonumber(year2) <= tonumber(year) then return false; end -- must be sequential years, left to right, earlier to later
if not is_valid_year(year2) or not is_valid_month_range_style(month, month2) then return false; end -- year2 no more than one year in the future; months same style
month = get_month_number (month); -- for metadata
month2 = get_month_number (month2);
elseif mw.ustring.match(date_string, "^%D- +[1-9]%d?, +[1-9]%d%d%d +[%-–] +%D- +[1-9]%d?, +[1-9]%d%d%d%a?$") then -- month initial month-day-year-range: month day, year – month day, year; uses spaced endash
month, day, year, month2, day2, anchor_year, year2=mw.ustring.match(date_string, "(%D-) +(%d%d?), +(%d%d%d%d) +[%-–] +(%D-) +(%d%d?), +((%d%d%d%d)%a?)");
if tonumber(year2) <= tonumber(year) then return false; end -- must be sequential years, left to right, earlier to later
if not is_valid_year(year2) or not is_valid_month_range_style(month, month2) then return false; end -- year2 no more than one year in the future; months same style
month = get_month_number (month); -- for metadata
month2 = get_month_number (month2);
elseif mw.ustring.match(date_string, "^%D- +[1-9]%d%d%d[%-–]%d%d%a?$") then -- special case Winter/Summer year-year (YYYY-YY); year separated with unspaced endash
local century;
month, year, century, anchor_year, year2=mw.ustring.match(date_string, "(%D-) +((%d%d)%d%d)[%-–]((%d%d)%a?)");
if 'Winter' ~= month and 'Summer' ~= month then return false end; -- 'month' can only be Winter or Summer
anchor_year=year..'–'..anchor_year; -- assemble anchor_year from both years
year2 = century..year2; -- add the century to year2 for comparisons
if 1 ~= tonumber(year2) - tonumber(year) then return false; end -- must be sequential years, left to right, earlier to later
if not is_valid_year(year2) then return false; end -- no year farther in the future than next year
month = get_season_number (month);
elseif mw.ustring.match(date_string, "^%D- +[1-9]%d%d%d[%-–][1-9]%d%d%d%a?$") then -- special case Winter/Summer year-year; year separated with unspaced endash
month, year, anchor_year, year2=mw.ustring.match(date_string, "(%D-) +(%d%d%d%d)[%-–]((%d%d%d%d)%a?)");
if 'Winter' ~= month and 'Summer' ~= month then return false end; -- 'month' can only be Winter or Summer
anchor_year=year..'–'..anchor_year; -- assemble anchor_year from both years
if 1 ~= tonumber(year2) - tonumber(year) then return false; end -- must be sequential years, left to right, earlier to later
if not is_valid_year(year2) then return false; end -- no year farther in the future than next year
month = get_season_number (month); -- for metadata
elseif mw.ustring.match(date_string, "^%D- +[1-9]%d%d%d +[%-–] +%D- +[1-9]%d%d%d%a?$") then -- month/season year - month/season year; separated by spaced endash
month, year, month2, anchor_year, year2=mw.ustring.match(date_string, "(%D-) +(%d%d%d%d) +[%-–] +(%D-) +((%d%d%d%d)%a?)");
anchor_year=year..'–'..anchor_year; -- assemble anchor_year from both years
if tonumber(year) >= tonumber(year2) then return false; end -- left to right, earlier to later, not the same
if not is_valid_year(year2) then return false; end -- no year farther in the future than next year
if 0 ~= get_month_number(month) and 0 ~= get_month_number(month2) and is_valid_month_range_style(month, month2) then -- both must be month year, same month style
month = get_month_number(month);
month2 = get_month_number(month2);
elseif 0 ~= get_season_number(month) and 0 ~= get_season_number(month2) then -- both must be or season year, not mixed
month = get_season_number(month);
month2 = get_season_number(month2);
else
return false;
end
elseif mw.ustring.match(date_string, "^%D-[%-–]%D- +[1-9]%d%d%d%a?$") then -- month/season range year; months separated by endash
month, month2, anchor_year, year=mw.ustring.match(date_string, "(%D-)[%-–](%D-)%s*((%d%d%d%d)%a?)");
if (not is_valid_month_season_range(month, month2)) or (not is_valid_year(year)) then return false; end
if 0 ~= get_month_number(month) then -- determined to be a valid range so just check this one to know if month or season
month = get_month_number(month);
month2 = get_month_number(month2);
else
month = get_season_number(month);
month2 = get_season_number(month2);
end
year2=year;
elseif mw.ustring.match(date_string, "^%D- +%d%d%d%d%a?$") then -- month/season year or proper-name year
month, anchor_year, year=mw.ustring.match(date_string, "(%D-)%s*((%d%d%d%d)%a?)");
if not is_valid_year(year) then return false; end
if not is_valid_month_or_season (month) and 0 == is_proper_name (month) then return false; end
if 0 ~= get_month_number(month) then -- determined to be a valid range so just check this one to know if month or season
month = get_month_number(month);
elseif 0 ~= get_season_number(month) then
month = get_season_number(month);
else
month = is_proper_name (month); -- must be proper name; not supported in COinS
end
elseif mw.ustring.match(date_string, "^[1-9]%d%d%d?[%-–][1-9]%d%d%d?%a?$") then -- Year range: YYY-YYY or YYY-YYYY or YYYY–YYYY; separated by unspaced endash; 100-9999
year, anchor_year, year2=mw.ustring.match(date_string, "(%d%d%d%d?)[%-–]((%d%d%d%d?)%a?)");
anchor_year=year..'–'..anchor_year; -- assemble anchor year from both years
if tonumber(year) >= tonumber(year2) then return false; end -- left to right, earlier to later, not the same
if not is_valid_year(year2) then return false; end -- no year farther in the future than next year
elseif mw.ustring.match(date_string, "^[1-9]%d%d%d[%-–]%d%d%a?$") then -- Year range: YYYY–YY; separated by unspaced endash
local century;
year, century, anchor_year, year2=mw.ustring.match(date_string, "((%d%d)%d%d)[%-–]((%d%d)%a?)");
anchor_year=year..'–'..anchor_year; -- assemble anchor year from both years
if 13 > tonumber(year2) then return false; end -- don't allow 2003-05 which might be May 2003
year2 = century..year2; -- add the century to year2 for comparisons
if tonumber(year) >= tonumber(year2) then return false; end -- left to right, earlier to later, not the same
if not is_valid_year(year2) then return false; end -- no year farther in the future than next year
elseif mw.ustring.match(date_string, "^[1-9]%d%d%d?%a?$") then -- year; here accept either YYY or YYYY
anchor_year, year=mw.ustring.match(date_string, "((%d%d%d%d?)%a?)");
if false == is_valid_year(year) then
return false;
end
else
return false; -- date format not one of the MOS:DATE approved formats
end
if test_accessdate then -- test accessdate here because we have numerical date parts
if 0 ~= year and 0 ~= month and 0 ~= day and -- all parts of a single date required
0 == year2 and 0 == month2 and 0 == day2 then -- none of these; accessdate must not be a range
if not is_valid_accessdate (year..'-'..month..'-'..day) then
return false; -- return false when accessdate out of bounds
end
else
return false; -- return false when accessdate is a range of two dates
end
end
local result=true; -- check whole dates for validity; assume true because not all dates will go through this test
if 0 ~= year and 0 ~= month and 0 ~= day and 0 == year2 and 0 == month2 and 0 == day2 then -- YMD (simple whole date)
result=is_valid_date(year,month,day);
elseif 0 ~= year and 0 ~= month and 0 ~= day and 0 == year2 and 0 == month2 and 0 ~= day2 then -- YMD-d (day range)
result=is_valid_date(year,month,day);
result=result and is_valid_date(year,month,day2);
elseif 0 ~= year and 0 ~= month and 0 ~= day and 0 == year2 and 0 ~= month2 and 0 ~= day2 then -- YMD-md (day month range)
result=is_valid_date(year,month,day);
result=result and is_valid_date(year,month2,day2);
elseif 0 ~= year and 0 ~= month and 0 ~= day and 0 ~= year2 and 0 ~= month2 and 0 ~= day2 then -- YMD-ymd (day month year range)
result=is_valid_date(year,month,day);
result=result and is_valid_date(year2,month2,day2);
end
if false == result then return false; end
if nil ~= tCOinS_date then -- this table only passed into this function when testing |date= parameter values
make_COinS_date ({year=year, month=month, day=day, year2=year2, month2=month2, day2=day2}, tCOinS_date); -- make an ISO 8601 date string for COinS
end
return true, anchor_year; -- format is good and date string represents a real date
end
--[[--------------------------< D A T E S >--------------------------------------------------------------------
Cycle the date-holding parameters in passed table date_parameters_list through check_date() to check compliance with MOS:DATE. For all valid dates, check_date() returns
true. The |date= parameter test is unique, it is the only date holding parameter from which values for anchor_year (used in CITEREF identifiers) and COinS_date (used in
the COinS metadata) are derived. The |date= parameter is the only date-holding parameter that is allowed to contain the no-date keywords "n.d." or "nd" (without quotes).
Unlike most error messages created in this module, only one error message is created by this function. Because all of the date holding parameters are processed serially,
a single error message is created as the dates are tested.
]]
local function dates(date_parameters_list, tCOinS_date)
local anchor_year; -- will return as nil if the date being tested is not |date=
local COinS_date; -- will return as nil if the date being tested is not |date=
local embargo_date; -- if embargo date is a good dmy, mdy, ymd date then holds original value else reset to 9999
local error_message = "";
local good_date = false;
for k, v in pairs(date_parameters_list) do -- for each date-holding parameter in the list
if is_set(v.val) then -- if the parameter has a value
v.val = mw.ustring.gsub (v.val, '%d', cfg.date_names.local_digits); -- translate 'local' digits to Western 0-9
if v.val:match("^c%. [1-9]%d%d%d?%a?$") then -- special case for c. year or with or without CITEREF disambiguator - only |date= and |year=
local year = v.val:match("c%. ([1-9]%d%d%d?)%a?"); -- get the year portion so it can be tested
if 'date'==k then
anchor_year, COinS_date = v.val:match("((c%. [1-9]%d%d%d?)%a?)"); -- anchor year and COinS_date only from |date= parameter
good_date = is_valid_year(year);
elseif 'year'==k then
good_date = is_valid_year(year);
end
elseif 'date'==k then -- if the parameter is |date=
if v.val:match("^n%.d%.%a?$") then -- if |date=n.d. with or without a CITEREF disambiguator
good_date, anchor_year, COinS_date = true, v.val:match("((n%.d%.)%a?)"); --"n.d."; no error when date parameter is set to no date
elseif v.val:match("^nd%a?$") then -- if |date=nd with or without a CITEREF disambiguator
good_date, anchor_year, COinS_date = true, v.val:match("((nd)%a?)"); --"nd"; no error when date parameter is set to no date
else
good_date, anchor_year, COinS_date = check_date (v.val, tCOinS_date); -- go test the date
end
elseif 'year'==k then -- if the parameter is |year= it should hold only a year value
if v.val:match("^[1-9]%d%d%d?%a?$") then -- if |year= 3 or 4 digits only with or without a CITEREF disambiguator
good_date, anchor_year, COinS_date = true, v.val:match("((%d+)%a?)");
end
elseif 'access-date'==k then -- if the parameter is |date=
good_date = check_date (v.val, nil, true); -- go test the date; nil is a placeholder; true is the test_accessdate flag
elseif 'embargo'==k then -- if the parameter is |embargo=
good_date = check_date (v.val); -- go test the date
if true == good_date then -- if the date is a valid date
good_date, embargo_date = is_valid_embargo_date (v.val); -- is |embargo= date a single dmy, mdy, or ymd formatted date? yes:returns embargo; no: returns 9999
end
else -- any other date-holding parameter
good_date = check_date (v.val); -- go test the date
end
if false==good_date then -- assemble one error message so we don't add the tracking category multiple times
if is_set(error_message) then -- once we've added the first portion of the error message ...
error_message=error_message .. ", "; -- ... add a comma space separator
end
error_message=error_message .. "|" .. v.name .. "="; -- add the failed parameter
end
end
end
return anchor_year, embargo_date, error_message; -- and done
end
--[[--------------------------< Y E A R _ D A T E _ C H E C K >------------------------------------------------
Compare the value provided in |year= with the year value(s) provided in |date=. This function returns a numeric value:
0 - year value does not match the year value in date
1 - (default) year value matches the year value in date or one of the year values when date contains two years
2 - year value matches the year value in date when date is in the form YYYY-MM-DD and year is disambiguated (|year=YYYYx)
]]
local function year_date_check (year_string, date_string)
local year;
local date1;
local date2;
local result = 1; -- result of the test; assume that the test passes
year = year_string:match ('(%d%d%d%d?)');
if date_string:match ('%d%d%d%d%-%d%d%-%d%d') and year_string:match ('%d%d%d%d%a') then --special case where both date and year are required YYYY-MM-DD and YYYYx
date1 = date_string:match ('(%d%d%d%d)');
year = year_string:match ('(%d%d%d%d)');
if year ~= date1 then
result = 0; -- years don't match
else
result = 2; -- years match; but because disambiguated, don't add to maint cat
end
elseif date_string:match ("%d%d%d%d?.-%d%d%d%d?") then -- any of the standard range formats of date with two three- or four-digit years
date1, date2 = date_string:match ("(%d%d%d%d?).-(%d%d%d%d?)");
if year ~= date1 and year ~= date2 then
result = 0;
end
elseif mw.ustring.match(date_string, "%d%d%d%d[%-–]%d%d") then -- YYYY-YY date ranges
local century;
date1, century, date2 = mw.ustring.match(date_string, "((%d%d)%d%d)[%-–]+(%d%d)");
date2 = century..date2; -- convert YY to YYYY
if year ~= date1 and year ~= date2 then
result = 0;
end
elseif date_string:match ("%d%d%d%d?") then -- any of the standard formats of date with one year
date1 = date_string:match ("(%d%d%d%d?)");
if year ~= date1 then
result = 0;
end
else
result = 0; -- no recognizable year in date
end
return result;
end
--[[-------------------------< R E F O R M A T T A B L E S >------------------------------------------------
These table are used exclusively for reformatting dates
]]
local source_patterns = { -- this table holds patterns that match allowed date formats used to extract date components
['dmy'] = '^(%d%d?)%s+(%a+)%s+(%d%d%d%d)$',
['mdy'] = '^(%a+)%s+(%d%d?),%s+(%d%d%d%d)$',
['ymd'] = '^(%d%d%d%d)%-(%d%d)-(%d%d)$',
}
local short_formats = { -- this table holds format strings used by os.date() for short month names
['dmy'] = '%e %b %Y',
['mdy'] = '%b %e, %Y',
['ymd'] = '%F',
}
local long_formats = { -- this table holds format strings used by os.date() for long month names
['dmy'] = '%e %B %Y',
['mdy'] = '%B %e, %Y',
['ymd'] = '%F',
}
--[[-------------------------< G E T _ D M Y _ D A T E _ P A R T S >------------------------------------------
extracts year, month and day from DMY formatted date, places them in the source_date table, and returns.
]]
local function get_dmy_date_parts (date, source_date)
source_date.day, source_date.month, source_date.year = date:match (source_patterns['dmy']); -- get date components as strings
source_date.month = get_month_number (source_date.month); -- get month number
end
--[[-------------------------< G E T _ M D Y _ D A T E _ P A R T S >------------------------------------------
extracts year, month and day from MDY formatted date, places them in the source_date table, and returns.
]]
local function get_mdy_date_parts (date, source_date)
source_date.month, source_date.day, source_date.year = date:match (source_patterns['mdy']); -- get date components as strings
source_date.month = get_month_number (source_date.month); -- get month number
end
--[[-------------------------< G E T _ Y M D _ D A T E _ P A R T S >------------------------------------------
extracts year, month and day from YMD formatted date, places them in the source_date table, and returns.
]]
local function get_ymd_date_parts (date, source_date)
source_date.year, source_date.month, source_date.day = date:match (source_patterns['ymd']); -- get date components as strings
end
--[[-------------------------< R E F O R M A T _ D A T E S >--------------------------------------------------
Reformats existing dates into the format specified by format and short.
format is one of several keywords: dmy, dmy-all, mdy, mdy-all, ymd, ymd-all. The all version includes access- and
archive-dates; otherwise these dates are not reformatted
Date ranges, season dates, proper name dates are not currently supported.
For i18n: This code works only at en.wiki because os.date() doesn't support any languages other than English.
mw.getContentLanguage():formatDate() will work at non-English wikis only when the date format is yyyy-mm-dd. This is
the same issue that plagues is_valid_accessdate()
It is possible that a solution like that written for ht:Module:Citation/CS1/Date_validation date_name_xlate() could be applied to this problem
]]
local function reformat_dates (date_parameters_list, format, short)
local all = false; -- set to false to skip access- and archive-dates
local result = false;
local format_str;
local source_date = {};
if format:match('%a+%-all') then
format = format:match('(%a+)%-all'); -- extract the format
all = true; -- set to true to format access- and archive-dates
end
for param_name, param_val in pairs (date_parameters_list) do -- for each date-holding parameter in the list
if is_set (param_val.val) then -- if the parameter has a value
if not (not all and in_array (param_name, {'access-date', 'archive-date'})) then -- skip access- or archive-date unless format is xxx-all; yeah, ugly; TODO: find a better way
for source, pattern in pairs (source_patterns) do
if param_val.val:match (pattern) then
if 'ymd' == source then
get_ymd_date_parts (param_val.val, source_date); -- get the date parts into the source_date table
elseif 'dmy' == source then
get_dmy_date_parts (param_val.val, source_date); -- get the date parts into the source_date table
elseif 'mdy' == source then
get_mdy_date_parts (param_val.val, source_date); -- get the date parts into the source_date table
end
if 'ymd' == format and 1582 > tonumber(source_date.year) then -- ymd format dates not allowed before 1582
return false; -- abandon reformatting
end
if short then
format_str = short_formats[format];
else
format_str = long_formats[format];
end
-- convert date and save;
date_parameters_list[param_name].val = mw.text.trim (os.date (format_str, os.time(source_date))); -- strip leading space when single digit day and %e is first format
result = true;
end -- if
end -- for
end -- if
end -- if
end -- for
return result; -- declare result and done
end
--[[--------------------------< D A T E _ H Y P H E N _ T O _ D A S H >----------------------------------------
Loops through the list of date-holding parameters and converts any hyphen to an ndash. Not called if the cs1|2
template has any date errors.
Modifies the date_parameters_list and returns true if hyphens are replaced, else returns false.
]]
local function date_hyphen_to_dash (date_parameters_list)
local result = false;
local n;
for param_name, param_val in pairs(date_parameters_list) do -- for each date-holding parameter in the list
if is_set (param_val.val) then
if not mw.ustring.match (param_val.val, '%d%d%d%d%-%d%d%-%d%d') then -- for those that are not ymd dates (ustring because here digits may not be western)
param_val.val, n = param_val.val:gsub ('%-', '–'); -- replace any hyphen with ndash
if 0 ~= n then
date_parameters_list[param_name].val = param_val.val; -- update the list
result = true;
end
end
end
end
return result; -- so we know if any hyphens were replaced
end
--[[-------------------------< D A T E _ N A M E _ X L A T E >------------------------------------------------
Attempts to translate English month names to local-language month names using names supplied by MediaWiki's
date parser function. This is simple name-for-name replacement and may not work for all languages.
if xlat_dig is true, this function will also translate western (English) digits to the local language's digits.
This will also translate ymd dates.
]]
local function date_name_xlate (date_parameters_list, xlt_dig)
local xlate;
local mode; -- long or short month names
local modified = false;
local date;
for param_name, param_val in pairs(date_parameters_list) do -- for each date-holding parameter in the list
if is_set(param_val.val) then -- if the parameter has a value
date = param_val.val;
for month in mw.ustring.gmatch (date, '%a+') do -- iterate through all dates in the date (single date or date range)
if cfg.date_names.en.long[month] then
mode = 'xg'; -- English name is long so use long local name
elseif cfg.date_names.en.short[month] then
mode = 'M'; -- English name is short so use short local name
else
mode = nil; -- not an English month name; could be local language month name or an English season name
end
if mode then -- might be a season
xlate = mw.getContentLanguage():formatDate(mode, '1' .. month); -- translate the month name to this local language
date = mw.ustring.gsub (date, month, xlate); -- replace the English with the translation
date_parameters_list[param_name].val = date; -- save the translated date
modified = true;
end
end
if xlt_dig then -- shall we also translate digits?
date = date:gsub ('%d', cfg.date_names.xlate_digits); -- translate digits from western to 'local digits'
date_parameters_list[param_name].val = date; -- save the translated date
modified = true;
end
end
end
return modified;
end
--[[--------------------------< S E T _ S E L E C T E D _ M O D U L E S >--------------------------------------
Sets local imported functions table to same (live or sandbox) as that used by the other modules.
]]
local function set_selected_modules (cfg_table_ptr, utilities_page_ptr)
is_set = utilities_page_ptr.is_set; -- import functions from selected Module:Citation/CS1/Utilities module
in_array = utilities_page_ptr.in_array; -- import functions from selected Module:Citation/CS1/Utilities module
cfg = cfg_table_ptr; -- import tables from selected Module:Citation/CS1/Configuration
end
return { -- return exported functions
dates = dates,
year_date_check = year_date_check,
reformat_dates = reformat_dates,
date_hyphen_to_dash = date_hyphen_to_dash,
date_name_xlate = date_name_xlate,
set_selected_modules = set_selected_modules
}
h4heovbtxt3l5avrlglpk553cytouth
Module:Graph:Population history
828
3476
36691
2025-12-15T22:11:30Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local getArgs = require('Module:Arguments').getArgs local args = {} local p = {} local property = 'P1082' local json = { version = 2, width = 600, height = 300, data = { { name = "table", values = {} } }, scales = { { name = "x", type = "linear", domain = { data = "table", field= "x" }, range = "width", zero = false, nice = true }, { name = "y", range = "height", nice = true, domain = { data = "ta...'
36691
Scribunto
text/plain
local getArgs = require('Module:Arguments').getArgs
local args = {}
local p = {}
local property = 'P1082'
local json = {
version = 2,
width = 600, height = 300,
data = {
{
name = "table",
values = {}
}
},
scales = {
{
name = "x",
type = "linear",
domain = { data = "table", field= "x" },
range = "width",
zero = false,
nice = true
},
{
name = "y",
range = "height",
nice = true,
domain = { data = "table", field = "y" }
}
},
axes = {
{ type = "x", scale = "x", tickcount = 20, format = "d", grid = true },
{ type = "y", scale = "y", format = "2d", grid = true }
},
marks = {
{
type = "line",
from = { data = "table" },
properties = {
enter = {
x = { scale = "x", field = "x" },
y = { scale = "y", field = "y" },
strokeWidth = { value = 5 },
stroke = { value = "steelblue" }
}
}
}
}
}
if args["labels"] then
table.insert(json["marks"],
{
type = "text",
from = { data = "table" },
properties = {
enter = {
x = { scale = "x", field = "x" },
y = { scale = "y", field = "y" },
fill = { value = "#000" },
align = { value = "left" },
baseline = { value = "top" },
dy = { value = -13 },
text = { field = "y" }
}
}
}
)
end
local function getStatements(id)
local entity = mw.wikibase.getEntity()
if not entity then
return nil
end
if not entity.claims or not entity.claims[property] then
return nil
end
local statements = entity.claims[property]
return statements
end
local function prepareStatements(statements)
local numbers_raw = {}
local function processStatement(i, statement)
local snak = statement.mainsnak
if not snak or snak.snaktype ~= 'value' then
statements[i] = nil
return;
end
local n = tonumber(snak.datavalue.value.amount)
local d = nil
if statement.qualifiers and statement.qualifiers.P585 then -- dátum
d = require('Module:Time').newFromWikidataValue(statement.qualifiers.P585[1].datavalue.value)
end
if d and d.year then
statements[i] = { d.year, n }
numbers_raw[d.year] = n
return;
else
statements[i] = nil
return;
end
end
for n, statement in pairs(statements) do
processStatement(n, statement)
end
local dates = {}
for d, v in pairs(statements) do
table.insert(dates, v[1])
end
if #dates < 1 then
return nil
end
table.sort(dates)
local numbers = {}
for n, v in pairs(dates) do
table.insert(numbers, { v, numbers_raw[v] } )
end
return numbers
end
local function drawGraph(data)
for _, v in pairs(data) do
local d, n = v[1], v[2]
table.insert(json.data[1].values, { x = d, y = n })
end
return tostring(mw.html.create("div"):css("display", "inline-block"):wikitext(mw.getCurrentFrame():extensionTag("graph", mw.text.jsonEncode(json))))
end
function p.main(frame)
if type(frame) ~= 'table' then
args = { id = frame }
else
args = getArgs(frame)
end
local statements = getStatements(args.id)
if type(statements) ~= 'table' then
return ''
end
statements = prepareStatements(statements)
if type(statements) ~= 'table' then
return ''
end
return drawGraph(statements)
end
return p
craa55woeqg5pk5h75wttsvkrgn9t1q
Module:Internet Archive
828
3477
36692
2025-12-15T22:13:08Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--[[ For functions related to Internet Archive Notes: 1. Internet Archive runs Lucene search engine 2. Program flowchart: Break name down into number of words Build a base URL based on number of words (1,2,3,4,5+), use of sopt=t switch, and availability of birth-death dates If any words contain extended-ascii characters append extra code for wildcards based on sopt=t or tx return finished URL 3. Lucene h...'
36692
Scribunto
text/plain
--[[
For functions related to Internet Archive
Notes:
1. Internet Archive runs Lucene search engine
2. Program flowchart:
Break name down into number of words
Build a base URL based on number of words (1,2,3,4,5+), use of sopt=t switch, and availability of birth-death dates
If any words contain extended-ascii characters
append extra code for wildcards based on sopt=t or tx
return finished URL
3. Lucene has a number of known issues to be aware of
A. Names with accented letters (é) - aka extended ascii - are problematic. There are records on IA in which the accent has been
dropped thus é is e in the record. Thus a search strategy has to use wildcards in place of extended ascii characters. The "?"
wildcard does not work correctly on Lucene and thus recommend "*". Wildcards severely slow down search times and after about
5 or 8 wildcards it may even time out. Thus, only use wildcards in a single expression within a search string. The
function p.ia_deaccent will return é = e, so it's possible to search on an "anglicized" version of the name as well using wildcards.
B. Extended ascii doesn't work correctly if 1. not surrounded in quotes and 2. search string contains numbers and/or wildcards
somewhere in it and 3. multiple () statements. The extended ascii character becomes interpreted as ascii eg. é -> é
Try for example : (Évariste Régis Huc) OR (Évariste Régis Huc 1813-1860) OR (É. R. Huc) OR (É. R. Huc 1813-1860) OR (Évariste R. Huc) OR (Évariste R. Huc 1813-1860) OR (Évariste Huc) OR (Évariste Huc 1813-1860)
C. B can be nullified by enclosing the string in quotes, but this creates a literal string and many permutations must be searched
on ("John Smith" OR "Smith, John" etc). For names longer than 2 words it could exceed URL limits. URLs are limited to about 2000
characters to account for most browsers (IE is 2083). Thus, strategies used are a balance between possibilities
and URL length.
]]
local p = {}
--[[
For Template:Internet Archive author
]]
function p.author(frame)
local pframe = frame:getParent()
local args = pframe.args
local tname = "Internet Archive author" -- name of calling template. Change if template rename.
local name = nil -- article name (default: current page name)
local dname = nil -- display name (default: current page name)
local sname = nil -- search name (default: current page name)
local sopt = nil -- search options (default: nil)
local byabout = "Έργα της/του ή για την/τον"
local tagline = "στο [[Internet Archive]]"
local urlhead = "//archive.org/search.php?query="
local mydate = "" -- birth-death date
--- Determine name
name = trimArg(args.name) -- When using template outside main article space, the 'name' parameter is required (not optional)
if not name then
name = mw.title.getCurrentTitle().text
end
dname = mw.ustring.gsub(name,'%s+%([^%(]-%)$', '') -- Remove the final disambig parentheses
sname = dname
if trimArg(args.sname) then
sname = trimArg(args.sname)
end
if trimArg(args.dname) then
dname = trimArg(args.dname)
end
--- Determine search option
sopt = trimArg(args.sopt)
if sopt then
sopt = mw.ustring.lower(sopt)
if sopt == "tight" then sopt = "t" end
if sopt == "tightx" then sopt = "tx" end
if sopt ~= "t" and sopt ~= "tx" then sopt = "unknown" end
end
--- Determine tagline
if trimArg(args.coda) then
tagline = tagline .. " " .. trimArg(args.coda)
end
--- Custom search. Do early to avoid unnecessary processing.
if trimArg(args.search) then
local search = p.ia_url_encode(trimArg(args.search))
return "[" .. urlhead .. search .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
-- Determine media string
local media = p.mediaTypes(args.media)
if media == "" then
mediaclose = ""
else
mediaclose = "%29"
end
-- Determine date of birth and death
local temp = mw.text.split(p.bdDate(args.birth, args.death, name), " ")
local birth = temp[1]
local death = temp[2]
if birth == "Error" or death == "Error" then
return "Error in [[:Template:"..tname.."]]: [[" ..name.. "]] doesn't exist."
end
--- Split sname into words and count words
local N = mw.text.split(sname, " ")
local l, count = mw.ustring.gsub(sname, "%S+", "")
if count == 0 then
return "Error in [[:Template:"..tname.."]]: Zero-word name."
end
--- Date string
if birth ~= "none" and death ~= "none" then
if p.ia_extendedascii(N[count]) == 1 then
mydate = "%20OR%20%28%22"..birth.."-"..death.."%22%20AND%20%28%22"..N[count].."%22%20OR%20"..p.ia_deaccent(N[count]) .."%29%29"
else
mydate = "%20OR%20%28%22"..birth.."-"..death.."%22%20AND%20"..N[count].."%29"
end
end
--[[
Format URL
]]
if count == 1 then
local myurl = p.oneWord(sname)
if p.ia_extendedascii(sname) == 1 then
if sopt == "tx" then
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if sopt == "t" then
local plainname = p.ia_deaccent(sname)
local A1 = "%20OR%20%22"..plainname
myurl = myurl .. A1 .. "%22"
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if p.wildcrazycheck(N, count) == 1 then
local myurl = p.wildcrazyfix(N, count)
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
local wild = "%20OR%20" .. p.ia_url_encode(p.ia_extendedascii2wildcard(sname))
return "[" .. urlhead .. media .. myurl .. wild .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
else
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
end
if count == 2 then
local myurl = p.twoWords(N, sopt)
if p.ia_extendedascii(sname) == 1 then
if sopt == "tx" then
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if sopt == "t" then
local plainname = p.ia_deaccent(sname)
local PN = mw.text.split(plainname, " ")
-- Last, First
local A1 = "%20OR%20%22"..PN[2].."%2C%20"..PN[1]
-- First Last
local A2 = "%22%20OR%20%22"..PN[1].."%20"..PN[2]
myurl = myurl .. A1 .. A2 .. "%22"
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if p.wildcrazycheck(N, count) == 1 then
local myurl = p.wildcrazyfix(N, count)
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
local wild = "%20OR%20" .. p.ia_url_encode(p.ia_extendedascii2wildcard(sname))
return "[" .. urlhead .. media .. myurl .. wild .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if count == 3 then
local myurl = p.threeWords(N, sopt)
if p.ia_extendedascii(sname) == 1 then
if sopt == "tx" then
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if sopt == "t" then
local FIRST = 1
local MIDDLE = 2
local LAST = 3
local plainname = p.ia_deaccent(sname)
local PN = mw.text.split(plainname, " ")
local firstinitialp = p.firstLetter(PN[FIRST])
local middleinitialp = p.firstLetter(PN[MIDDLE])
-- First Middle Last
local A1 = "%20OR%20%22"..PN[FIRST].."%20"..PN[MIDDLE].."%20"..PN[LAST]
-- Last, First Middle
local A2 = "%22%20OR%20%22"..PN[LAST].."%2C%20"..PN[FIRST].."%20"..PN[MIDDLE]
-- Last, First M.
local A3 = "%22%20OR%20%22"..PN[LAST].."%2C%20"..PN[FIRST].."%20"..middleinitialp.."%2E"
-- Last, F. M.
local A4 = "%22%20OR%20%22"..PN[LAST].."%2C%20"..firstinitialp..".%20"..middleinitialp.."%2E"
local ALL = A1 .. A2 .. A3 .. A4 .. "%22"
myurl = myurl .. ALL
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if p.wildcrazycheck(N, count) == 1 then
local myurl = p.wildcrazyfix(N, count)
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
local wild = "%20OR%20" .. p.ia_url_encode(p.ia_extendedascii2wildcard(sname))
return "[" .. urlhead .. media .. myurl .. wild .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if count == 4 then
local myurl = p.fourWords(N, sopt)
if p.ia_extendedascii(sname) == 1 then
if sopt == "tx" then
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if sopt == "t" then
local FIRST = 1
local SECOND = 2
local THIRD = 3
local LAST = 4
local plainname = p.ia_deaccent(sname)
local PN = mw.text.split(plainname, " ")
local firstinitialp = p.firstLetter(PN[FIRST])
local secondinitialp = p.firstLetter(PN[SECOND])
local thirdinitialp = p.firstLetter(PN[THIRD])
-- Last, First Second Third
local A1 = "%20OR%20%22"..PN[LAST].."%2C%20"..PN[FIRST].."%20"..PN[SECOND].."%20"..PN[THIRD]
-- First Second Third Last
local A2 = "%22%20OR%20%22"..PN[FIRST].."%20"..PN[SECOND].."%20"..PN[THIRD].."%20"..PN[LAST]
-- Last, F. S. T.
local A3 = "%22%20OR%20%22"..PN[LAST].."%2C%20"..firstinitialp.."%2E%20"..secondinitialp.."%2E%20"..thirdinitialp.."%2E"
local ALL = A1 .. A2 .. A3 .. "%22"
myurl = myurl .. ALL
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if p.wildcrazycheck(N, count) == 1 then
local myurl = p.wildcrazyfix(N, count)
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
local wild = "%20OR%20" .. p.ia_url_encode(p.ia_extendedascii2wildcard(sname))
return "[" .. urlhead .. media .. myurl .. wild .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if count > 4 then
local myurl = "%28" .. p.ia_url_encode(sname)
if p.ia_extendedascii(sname) == 1 then
if sopt == "tx" then
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if sopt == "t" then
local plainname = p.ia_deaccent(sname)
local A1 = "%29%20OR%20%28"..p.ia_url_encode(plainname)
myurl = myurl .. A1
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
if p.wildcrazycheck(N, count) == 1 then
local myurl = p.wildcrazyfix(N, count)
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
local wild = "%29%20OR%20%28" .. p.ia_url_encode(p.ia_extendedascii2wildcard(sname))
return "[" .. urlhead .. media .. myurl .. wild .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
else
return "[" .. urlhead .. media .. myurl .. "%29" .. mydate .. mediaclose .. " " .. byabout .. " " .. dname .. "] " .. tagline
end
end
return "Unknown error (1). Please check documentation for [[Template:"..tname.."]]"
end
-- Lucene returns too many false positives if first or last character in a word is "*" wildcard ie. accented letter
-- Build special search in these cases.
function p.wildcrazyfix(N, count)
--- Split along "-" and use only first word ie. John-Taylor-Smith becomes John
local NF = mw.text.split(N[1], "-")
local NL = mw.text.split(N[count], "-")
-- ..but use full name for 1-word names
if count == 1 then
NF[1] = N[1]
NL[1] = N[1]
end
-- ((Fïrst OR First) AND (Lást OR Last))
return "%28%28%22" .. NF[1] .. "%22%20OR%20" .. p.ia_deaccent(NF[1]) .. "%29%20AND%20%28%22" .. NL[1] .. "%22%20OR%20" .. p.ia_deaccent(NL[1]) .. "%29"
end
-- Return 1 if the first or last character in any word within name N is extended ascii
function p.wildcrazycheck(N, count)
local i = 0
while i < count do
i = i + 1
local firstl = N[i]:byte(1)
local lastl = N[i]:byte(N[i]:len())
if (firstl < 32 or firstl > 126) then return 1 end
if (lastl < 32 or lastl > 126) then return 1 end
end
return 0
end
function p.oneWord(sname)
local nameurl = p.ia_url_encode(sname)
local A1 = "%28subject%3A%22"..nameurl
local A2 = "%22%20OR%20creator%3A%22"..nameurl
local A3 = "%22%20OR%20description%3A%22"..nameurl
local A4 = "%22%20OR%20title%3A%22"..nameurl
return A1 .. A2 .. A3 .. A4 .. "%22"
end
function p.twoWords(N, sopt)
local FIRST = 1
local LAST = 2
local firstinitial = p.firstLetter(N[FIRST])
-- Last, First
local S1 = "%28subject%3A%22"..N[LAST].."%2C%20"..N[FIRST]
-- First Last
local S2 = "%22%20OR%20subject%3A%22"..N[FIRST].."%20"..N[LAST]
local SALL = S1..S2
-- Last, First
local C1 = "%22%20OR%20creator%3A%22"..N[LAST].."%2C%20"..N[FIRST]
-- First Last
local C2 = "%22%20OR%20creator%3A%22"..N[FIRST].."%20"..N[LAST]
local CALL = C1..C2
-- First Last
local T1 = "%22%20OR%20title%3A%22"..N[FIRST].."%20"..N[LAST]
local TALL = T1
-- Last, First
local D1 = "%22%20OR%20description%3A%22"..N[LAST].."%2C%20"..N[FIRST]
-- First Last
local D2 = "%22%20OR%20description%3A%22"..N[FIRST].."%20"..N[LAST]
local DALL = D1..D2
if sopt == "t" or sopt == "tx" then
return SALL .. CALL .. TALL .. DALL .. "%22"
else
-- Last, F.
local C3 = "%22%20OR%20creator%3A%22"..N[LAST].."%2C%20"..firstinitial.."%2E"
local CALL = CALL..C3
return SALL .. CALL .. TALL .. DALL .. "%22"
end
end
function p.threeWords(N, sopt)
-- CAUTION: The following is near the max 2000 character URL limit for most browsers when using long names
-- such as "René-Nicolas Dufriche Desgenettes".
local FIRST = 1
local MIDDLE = 2
local LAST = 3
local firstinitial = p.firstLetter(N[FIRST])
local middleinitial = p.firstLetter(N[MIDDLE])
-- Last, First Middle
local S1 = "%28subject%3A%22"..N[LAST].."%2C%20"..N[FIRST].."%20"..N[MIDDLE]
-- Last, First M.
local S2 = "%22%20OR%20subject%3A%22"..N[LAST].."%2C%20"..N[FIRST].."%20"..middleinitial.."%2E"
-- Last, F. M.
local S3 = "%22%20OR%20subject%3A%22"..N[LAST].."%2C%20"..firstinitial.."%2E%20"..middleinitial.."%2E"
-- First Middle Last
local S4 = "%22%20OR%20subject%3A%22"..N[FIRST].."%20"..N[MIDDLE].."%20"..N[LAST]
-- First M. Last
local S5 = "%22%20OR%20subject%3A%22"..N[FIRST].."%20"..middleinitial.."%2E%20"..N[LAST]
-- F. M. Last
local S6 = "%22%20OR%20subject%3A%22"..firstinitial.."%2E%20"..middleinitial.."%2E%20"..N[LAST]
local SALL = S1..S2..S3..S4..S5..S6
-- First Middle Last
local C1 = "%22%20OR%20creator%3A%22"..N[FIRST].."%20"..N[MIDDLE].."%20"..N[LAST]
-- First M. Last
local C2 = "%22%20OR%20creator%3A%22"..N[FIRST].."%20"..middleinitial.."%2E%20"..N[LAST]
-- F. M. Last
local C3 = "%22%20OR%20creator%3A%22"..firstinitial.."%2E%20"..middleinitial.."%2E%20"..N[LAST]
-- F. Middle Last
local C4 = "%22%20OR%20creator%3A%22"..firstinitial.."%2E%20"..N[MIDDLE].."%20"..N[LAST]
-- Last, First Middle
local C5 = "%22%20OR%20creator%3A%22"..N[LAST].."%2C%20"..N[FIRST].."%20"..N[MIDDLE]
-- Last, First M.
local C6 = "%22%20OR%20creator%3A%22"..N[LAST].."%2C%20"..N[FIRST].."%20"..middleinitial.."%2E"
-- Last, F. M.
local C7 = "%22%20OR%20creator%3A%22"..N[LAST].."%2C%20"..firstinitial.."%2E%20"..middleinitial.."%2E"
-- Last, F. M.
local C8 = "%22%20OR%20creator%3A%22"..N[LAST].."%2C%20"..firstinitial.."%2E%20"..N[MIDDLE]
local CALL = C1..C2..C3..C4..C5..C6..C7..C8
-- First Middle Last
local T1 = "%22%20OR%20title%3A%22"..N[FIRST].."%20"..N[MIDDLE].."%20"..N[LAST]
-- First M. Last
local T2 = "%22%20OR%20title%3A%22"..N[FIRST].."%20"..middleinitial.."%2E%20"..N[LAST]
-- F. M. Last
local T3 = "%22%20OR%20title%3A%22"..firstinitial.."%2E%20"..middleinitial.."%2E%20"..N[LAST]
local TALL = T1..T2..T3
-- First Middle Last
local D1 = "%22%20OR%20description%3A%22"..N[FIRST].."%20"..N[MIDDLE].."%20"..N[LAST]
-- First M. Last
local D2 = "%22%20OR%20description%3A%22"..N[FIRST].."%20"..middleinitial.."%2E%20"..N[LAST]
-- F. M. Last
local D3 = "%22%20OR%20description%3A%22"..firstinitial.."%2E%20"..middleinitial.."%2E%20"..N[LAST]
-- Last, First Middle
local D4 = "%22%20OR%20description%3A%22"..N[LAST].."%2C%20"..N[FIRST].."%20"..N[MIDDLE]
-- Last, First M.
local D5 = "%22%20OR%20description%3A%22"..N[LAST].."%2C%20"..N[FIRST].."%20"..middleinitial.."%2E"
local DALL = D1..D2..D3..D4..D5
if sopt == "t" or sopt == "tx" then
return SALL .. CALL .. TALL .. DALL .. "%22"
else
-- Last, First
local S7 = "%22%20OR%20subject%3A%22"..N[LAST].."%2C%20"..N[FIRST]
-- First Last
local S8 = "%22%20OR%20subject%3A%22"..N[FIRST].."%20"..N[LAST]
local SALL = SALL..S7..S8
-- First Last
local C9 = "%22%20OR%20creator%3A%22"..N[FIRST].."%20"..N[LAST]
-- Last, First
local C10 = "%22%20OR%20creator%3A%22"..N[LAST].."%2C%20"..N[FIRST]
local CALL = CALL..C9..C10
-- First Last
local T4 = "%22%20OR%20title%3A%22"..N[FIRST].."%20"..N[LAST]
local TALL = TALL..T4
-- First Last
local D6 = "%22%20OR%20description%3A%22"..N[FIRST].."%20"..N[LAST]
-- Last, First
local D7 = "%22%20OR%20description%3A%22"..N[LAST].."%2C%20"..N[FIRST]
local DALL = DALL..D6..D7
return SALL .. CALL .. TALL .. DALL .. "%22"
end
end
function p.fourWords(N, sopt)
local FIRST = 1
local SECOND = 2
local THIRD = 3
local LAST = 4
local firstinitial = p.firstLetter(N[FIRST])
local secondinitial = p.firstLetter(N[SECOND])
local thirdinitial = p.firstLetter(N[THIRD])
if sopt == "t" or sopt == "tx" then
-- Last, First Second Third
local S1 = "%28subject%3A%22"..N[LAST].."%2C%20"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD]
-- First Second Third Last
local S2 = "%22%20OR%20subject%3A%22"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD].."%20"..N[LAST]
-- Last, First Second Third
local C1 = "%22%20OR%20creator%3A%22"..N[LAST].."%2C%20"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD]
-- First Second Third Last
local C2 = "%22%20OR%20creator%3A%22"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD].."%20"..N[LAST]
-- First Second Third Last
local T1 = "%22%20OR%20title%3A%22"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD].."%20"..N[LAST]
-- First Second Third Last
local D1 = "%22%20OR%20description%3A%22"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD].."%20"..N[LAST]
return S1..S2..C1..C2..T1..D1.."%22"
end
-- Last, First Second Third
local S1 = "%28subject%3A%22"..N[LAST].."%2C%20"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD]
-- First Second Third Last
local S2 = "%22%20OR%20subject%3A%22"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD].."%20"..N[LAST]
-- Last, First Second Third
local C1 = "%22%20OR%20creator%3A%22"..N[LAST].."%2C%20"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD]
-- First Second Third Last
local C2 = "%22%20OR%20creator%3A%22"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD].."%20"..N[LAST]
-- Last, F. S. T.
local C3 = "%22%20OR%20creator%3A%22"..N[LAST].."%2C%20"..firstinitial.."%2E%20"..secondinitial.."%2E%20"..thirdinitial.."%2E"
-- First Second Third Last
local T1 = "%22%20OR%20title%3A%22"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD].."%20"..N[LAST]
-- First Second Third Last
local D1 = "%22%20OR%20description%3A%22"..N[FIRST].."%20"..N[SECOND].."%20"..N[THIRD].."%20"..N[LAST]
return S1..S2..C1..C2..C3..T1..D1.."%22"
end
function trimArg(arg)
if arg == "" or arg == nil then
return nil
else
return mw.text.trim(arg)
end
end
function p.mediaTypes(argsmedia)
local media = ""
if argsmedia ~="" and argsmedia ~=nil then
local medialist = mw.text.split(mw.text.trim(argsmedia), " ")
local al, acount = mw.ustring.gsub(mw.text.trim(argsmedia), "%S+", "")
local i = 0
repeat -- the following could be condensed but repetitive for clarity
i = i + 1
if(mw.ustring.lower(medialist[i]) == "text" or mw.ustring.lower(medialist[i]) == "texts") then
if(i == 1) then
media = media .. p.ia_url_encode("(mediatype:texts")
else
media = media .. p.ia_url_encode(" OR mediatype:texts")
end
end
if(mw.ustring.lower(medialist[i]) == "audio") then
if(i == 1) then
media = media .. p.ia_url_encode("(mediatype:audio")
else
media = media .. p.ia_url_encode(" OR mediatype:audio")
end
end
if(mw.ustring.lower(medialist[i]) == "video") then
if(i == 1) then
media = media .. p.ia_url_encode("(mediatype:video")
else
media = media .. p.ia_url_encode(" OR mediatype:video")
end
end
until i == acount
if media ~= nil then
media = media .. ")%20AND%20%28"
else
media = ""
end
else
media = ""
end
return media
end
-- Alt way to get b/d dates via getContent()
function p.bdDateAlt(argsbirth, argsdeath, name)
local pagetext = nil
local birth = "none"
local death = "none"
-- Load the page
local t = mw.title.new(name)
if(t.exists) then
pagetext = t:getContent()
end
if pagetext == nil then
return "Error"
end
-- Remove false positives
pagetext = mw.ustring.gsub( mw.ustring.gsub(pagetext, "<!--.--->", ""), "<nowiki>.-</nowiki>", "")
-- "Category:1900 births"
if argsbirth == "" or argsbirth == nil then
local birthcheck = mw.ustring.match(pagetext, "%[%[%s-[Cc]ategory:%s-%d+%.?%d*%s-births%s-%]%]" )
if birthcheck ~= nil then
birth = mw.ustring.match(birthcheck, "%d+%.?%d*")
else
birth = "none"
end
else
birth = mw.text.trim(argsbirth)
end
-- "Category:2000 deaths"
if argsdeath == "" or argsdeath == nil then
local deathcheck = mw.ustring.match(pagetext, "%[%[%s-[Cc]ategory:%s-%d+%.?%d*%s-deaths%s-%]%]" )
if deathcheck ~= nil then
death = mw.ustring.match(deathcheck, "%d+%.?%d*")
else
death = "none"
end
else
death = mw.text.trim(argsdeath)
end
return birth .. " " .. death
end
-- Get b/d dates via Wikidata.
--
function p.bdDate(argsbirth, argsdeath, name)
local pagetext = nil
local birth = "none"
local death = "none"
entity = mw.wikibase.getEntityObject()
if not entity or not entity.claims then
-- Alternative if template not on a page in mainspace. This is needed since Wikidata can only be retrieved
-- for the article where the template is located.
return p.bdDateAlt(argsbirth, argsdeath, name)
end
-- Note: The below uses formatPropertyValues() to get and format the date from Wikidata.
-- For an alternative method, see sandbox revision dated 5:58 am, 15 October 2014
if argsbirth == "" or argsbirth == nil then
local birthtable = entity:formatPropertyValues( 'P569' )
local birthsplit = mw.text.split(birthtable["value"], " ")
local l, count = mw.ustring.gsub(birthtable["value"], "%S+", "")
if count > 0 then
if string.find(birthsplit[count], "^%d") then
birth = birthsplit[count]
elseif string.find(birthsplit[count], "BCE") then
birth = birthsplit[count - 1]
elseif string.find(birthsplit[count], "BC") then
birth = birthsplit[count - 1]
elseif string.find(birthsplit[count], "AD") then
birth = birthsplit[count - 1]
end
end
else
birth = mw.text.trim(argsbirth)
end
if argsdeath == "" or argsdeath == nil then
local deathtable = entity:formatPropertyValues( 'P570' )
local deathsplit = mw.text.split(deathtable["value"], " ")
local l, count = mw.ustring.gsub(deathtable["value"], "%S+", "")
if count > 0 then
if string.find(deathsplit[count], "^%d") then
death = deathsplit[count]
elseif string.find(deathsplit[count], "BCE") then
death = deathsplit[count - 1]
elseif string.find(deathsplit[count], "BC") then
death = deathsplit[count - 1]
elseif string.find(deathsplit[count], "AD") then
death = deathsplit[count - 1]
end
end
else
death = mw.text.trim(argsdeath)
end
if birth == "none" and death == "none" then
-- Alternative if Wikidata is missing data
-- return p.bdDateAlt(name)
return birth .. " " .. death
else
return birth .. " " .. death
end
end
--- URL-encode a string
--- http://lua-users.org/wiki/StringRecipes
---
function p.ia_url_encode(str)
if (str) then
str = mw.ustring.gsub (str, "\n", "\r\n")
str = mw.ustring.gsub (str, "([^%w %-%_%.%~])",
function (c) return mw.ustring.format ("%%%02X", string.byte(c)) end)
str = mw.ustring.gsub (str, " ", "+")
end
return str
end
-- Does str contain extended ascii? 1 = yes
function p.ia_extendedascii(str)
for i = 1, str:len() do
if (str:byte(i) >= 32 and str:byte(i) <= 126) and str:byte(i) ~= 39 then -- 39 = '
--do nothing
else
return 1
end
end
return 0
end
-- UTF-8 aware replacement for string.sub() which doesn't support UTF-8.
-- Note: Using instead of mw.ustring.sub() which I suspect(?) might be cause of intermittent error, and faster here for first-letter job.
-- Source: prapin @ Stack Overflow http://stackoverflow.com/questions/13235091/extract-the-first-letter-of-a-utf-8-string-with-lua
function p.firstLetter(str)
return str:match("[%z\1-\127\194-\244][\128-\191]*")
end
-- Replace all extended ascii characters with wildcard '*'
function p.ia_extendedascii2wildcard(str)
local s = ""
local j = 0
local k = 0
for i = 1, str:len() do
k = str:byte(i)
if k >= 32 and k <= 126 then
-- For list of Lucene special characters needing to be escaped:
-- http://lucene.apache.org/core/4_10_0/queryparser/org/apache/lucene/queryparser/classic/package-summary.html#Escaping_Special_Characters
-- We only worry about - (45) and " (34) since the others are unlikely to appear in a proper name.
-- Also ' (39) since it is sometimes the extended character ’
if k == 45 or k == 34 or k == 39 then
s = s .. "*"
else
s = s .. str:sub(i,i)
end
else
if j == 1 then
s = s .. "*"
j = 2
end
if j == 0 then j = 1 end
if j == 2 then j = 0 end
end
end
return s
end
-- Replace accented letters with non-accented equivalent letters
-- Note: this is not a complete list of all possible accented letters. Rather it is
-- all of the accented letters found in the first 10,000 names which are using
-- the Internet Archive author template.
function p.ia_deaccent(str)
local s = str
s = mw.ustring.gsub(s, "á", "a")
s = mw.ustring.gsub(s, "a︡", "a")
s = mw.ustring.gsub(s, "Á", "A")
s = mw.ustring.gsub(s, "ă", "a")
s = mw.ustring.gsub(s, "â", "a")
s = mw.ustring.gsub(s, "æ", "ae")
s = mw.ustring.gsub(s, "Æ", "AE")
s = mw.ustring.gsub(s, "à", "a")
s = mw.ustring.gsub(s, "ā", "a")
s = mw.ustring.gsub(s, "Ā", "A")
s = mw.ustring.gsub(s, "ą", "a")
s = mw.ustring.gsub(s, "å", "a")
s = mw.ustring.gsub(s, "Å", "A")
s = mw.ustring.gsub(s, "ã", "a")
s = mw.ustring.gsub(s, "ä", "a")
s = mw.ustring.gsub(s, "Ä", "A")
s = mw.ustring.gsub(s, "β", "B")
s = mw.ustring.gsub(s, "ć", "c")
s = mw.ustring.gsub(s, "č", "c")
s = mw.ustring.gsub(s, "Č", "C")
s = mw.ustring.gsub(s, "ç", "c")
s = mw.ustring.gsub(s, "Ç", "C")
s = mw.ustring.gsub(s, "ĉ", "c")
s = mw.ustring.gsub(s, "ď", "d")
s = mw.ustring.gsub(s, "đ", "d")
s = mw.ustring.gsub(s, "é", "e")
s = mw.ustring.gsub(s, "É", "E")
s = mw.ustring.gsub(s, "ě", "e")
s = mw.ustring.gsub(s, "ê", "e")
s = mw.ustring.gsub(s, "è", "e")
s = mw.ustring.gsub(s, "È", "E")
s = mw.ustring.gsub(s, "ε", "e")
s = mw.ustring.gsub(s, "ē", "e")
s = mw.ustring.gsub(s, "Ē", "E")
s = mw.ustring.gsub(s, "ę", "e")
s = mw.ustring.gsub(s, "ð", "e")
s = mw.ustring.gsub(s, "ë", "e")
s = mw.ustring.gsub(s, "Ë", "E")
s = mw.ustring.gsub(s, "γ", "Y")
s = mw.ustring.gsub(s, "ħ", "h")
s = mw.ustring.gsub(s, "i︠a︡", "ia")
s = mw.ustring.gsub(s, "í", "i")
s = mw.ustring.gsub(s, "i︠", "i")
s = mw.ustring.gsub(s, "ĭ", "i")
s = mw.ustring.gsub(s, "Í", "I")
s = mw.ustring.gsub(s, "î", "i")
s = mw.ustring.gsub(s, "Î", "I")
s = mw.ustring.gsub(s, "ì", "i")
s = mw.ustring.gsub(s, "ī", "i")
s = mw.ustring.gsub(s, "ł", "i")
s = mw.ustring.gsub(s, "ï", "i")
s = mw.ustring.gsub(s, "Ï", "I")
s = mw.ustring.gsub(s, "ĺ", "I")
s = mw.ustring.gsub(s, "Ĺ", "L")
s = mw.ustring.gsub(s, "μ", "u")
s = mw.ustring.gsub(s, "µ", "u")
s = mw.ustring.gsub(s, "ń", "n")
s = mw.ustring.gsub(s, "ň", "n")
s = mw.ustring.gsub(s, "ņ", "n")
s = mw.ustring.gsub(s, "ñ", "n")
s = mw.ustring.gsub(s, "Ñ", "N")
s = mw.ustring.gsub(s, "ó", "o")
s = mw.ustring.gsub(s, "Ó", "O")
s = mw.ustring.gsub(s, "ô", "o")
s = mw.ustring.gsub(s, "œ", "oe")
s = mw.ustring.gsub(s, "ò", "o")
s = mw.ustring.gsub(s, "ō", "o")
s = mw.ustring.gsub(s, "ø", "o")
s = mw.ustring.gsub(s, "Ø", "o")
s = mw.ustring.gsub(s, "õ", "o")
s = mw.ustring.gsub(s, "ö", "o")
s = mw.ustring.gsub(s, "ő", "o")
s = mw.ustring.gsub(s, "Ö", "O")
s = mw.ustring.gsub(s, "φ", "o")
s = mw.ustring.gsub(s, "ŕ", "r")
s = mw.ustring.gsub(s, "ř", "r")
s = mw.ustring.gsub(s, "Ř", "R")
s = mw.ustring.gsub(s, "ś", "s")
s = mw.ustring.gsub(s, "Ś", "S")
s = mw.ustring.gsub(s, "š", "s")
s = mw.ustring.gsub(s, "ṣ", "s")
s = mw.ustring.gsub(s, "Š", "S")
s = mw.ustring.gsub(s, "ş", "s")
s = mw.ustring.gsub(s, "Ş", "S")
s = mw.ustring.gsub(s, "ŝ", "s")
s = mw.ustring.gsub(s, "σ", "s")
s = mw.ustring.gsub(s, "ť", "t")
s = mw.ustring.gsub(s, "ţ", "t")
s = mw.ustring.gsub(s, "τ", "t")
s = mw.ustring.gsub(s, "þ", "p")
s = mw.ustring.gsub(s, "Þ", "p")
s = mw.ustring.gsub(s, "ú", "u")
s = mw.ustring.gsub(s, "Ú", "U")
s = mw.ustring.gsub(s, "û", "u")
s = mw.ustring.gsub(s, "ù", "u")
s = mw.ustring.gsub(s, "ū", "u")
s = mw.ustring.gsub(s, "ů", "u")
s = mw.ustring.gsub(s, "ü", "u")
s = mw.ustring.gsub(s, "Ü", "U")
s = mw.ustring.gsub(s, "ŵ", "w")
s = mw.ustring.gsub(s, "ý", "y")
s = mw.ustring.gsub(s, "ŷ", "y")
s = mw.ustring.gsub(s, "¥", "y")
s = mw.ustring.gsub(s, "ÿ", "y")
s = mw.ustring.gsub(s, "Ÿ", "Y")
s = mw.ustring.gsub(s, "ź", "z")
s = mw.ustring.gsub(s, "Ž", "Z")
s = mw.ustring.gsub(s, "ž", "z")
s = mw.ustring.gsub(s, "ż", "z")
s = mw.ustring.gsub(s, "Ż", "Z")
return s
end
return p
79dnqn5265ln5wurlpsjejmmx08evgj
Module:Convert
828
3478
36693
2025-12-15T22:14:45Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Convert a value from one unit of measurement to another. -- Example: {{convert|123|lb|kg}} --> 123 pounds (56 kg) -- See [[:en:Template:Convert/Transwiki guide]] if copying to another wiki. local MINUS = '−' -- Unicode U+2212 MINUS SIGN (UTF-8: e2 88 92) local abs = math.abs local floor = math.floor local format = string.format local log10 = math.log10 local ustring = mw.ustring local ulen = ustring.len local usub = ustring.sub -- Configura...'
36693
Scribunto
text/plain
-- Convert a value from one unit of measurement to another.
-- Example: {{convert|123|lb|kg}} --> 123 pounds (56 kg)
-- See [[:en:Template:Convert/Transwiki guide]] if copying to another wiki.
local MINUS = '−' -- Unicode U+2212 MINUS SIGN (UTF-8: e2 88 92)
local abs = math.abs
local floor = math.floor
local format = string.format
local log10 = math.log10
local ustring = mw.ustring
local ulen = ustring.len
local usub = ustring.sub
-- Configuration options to keep magic values in one location.
-- Conversion data and message text are defined in separate modules.
local config, maxsigfig
local numdot = ',' -- must be '.' or ',' or a character which works in a regex
local numsep, numsep_remove, numsep_remove2
local data_code, all_units
local text_code
local varname -- can be a code to use variable names that depend on value
local from_en_table -- to translate an output string of en digits to local language
local to_en_table -- to translate an input string of digits in local language to en
-- Use translation_table in convert/text to change the following.
local en_default -- true uses lang=en unless convert has lang=local or local digits
local group_method = 3 -- code for how many digits are in a group
local per_word = 'per' -- for units like "liters per kilometer"
local plural_suffix = 's' -- only other useful value is probably '' to disable plural unit names
local omitsep -- true to omit separator before local symbol/name
-- All units should be defined in the data module. However, to cater for quick changes
-- and experiments, any unknown unit is looked up in an extra data module, if it exists.
-- That module would be transcluded in only a small number of pages, so there should be
-- little server overhead from making changes, and changes should propagate quickly.
local extra_module -- name of module with extra units
local extra_units -- nil or table of extra units from extra_module
-- Some options in the invoking template can set variables used later in the module.
local currency_text -- for a user-defined currency symbol: {{convert|12|$/ha|$=€}} (euro replaces dollar)
local function from_en(text)
-- Input is a string representing a number in en digits with '.' decimal mark,
-- without digit grouping (which is done just after calling this).
-- Return the translation of the string with numdot and digits in local language.
if numdot ~= '.' then
text = text:gsub('%.', numdot)
end
if from_en_table then
text = text:gsub('%d', from_en_table)
end
return text
end
local function to_en(text)
-- Input is a string representing a number in the local language with
-- an optional numdot decimal mark and numsep digit grouping.
-- Return the translation of the string with '.' mark and en digits,
-- and no separators (they have to be removed here to handle cases like
-- numsep = '.' and numdot = ',' with input "1.234.567,8").
if to_en_table then
text = ustring.gsub(text, '%d', to_en_table)
end
if numsep_remove then
text = text:gsub(numsep_remove, '')
end
if numsep_remove2 then
text = text:gsub(numsep_remove2, '')
end
if numdot ~= '.' then
text = text:gsub(numdot, '.')
end
return text
end
local function decimal_mark(text)
-- Return ',' if text probably is using comma for decimal mark, or has no decimal mark.
-- Return '.' if text probably is using dot for decimal mark.
-- Otherwise return nothing (decimal mark not known).
if not text:find('[.,]') then return ',' end
text = text:gsub('^%-', ''):gsub('%+%d+/%d+$', ''):gsub('[Ee]%-?%d+$', '')
local decimal =
text:match('^0?([.,])%d+$') or
text:match('%d([.,])%d?%d?$') or
text:match('%d([.,])%d%d%d%d+$')
if decimal then return decimal end
if text:match('%.%d+%.') then return ',' end
if text:match('%,%d+,') then return '.' end
end
local add_warning, with_separator -- forward declarations
local function to_en_with_check(text, parms)
-- Version of to_en() for a wiki using numdot = ',' and numsep = '.' to check
-- text (an input number as a string) which might have been copied from enwiki.
-- For example, in '1.234' the '.' could be a decimal mark or a group separator.
-- From viwiki.
if to_en_table then
text = ustring.gsub(text, '%d', to_en_table)
end
if decimal_mark(text) == '.' then
local original = text
text = text:gsub(',', '') -- for example, interpret "1,234.5" as an enwiki value
if parms then
add_warning(parms, 0, 'cvt_enwiki_num', original, with_separator({}, text))
end
else
if numsep_remove then
text = text:gsub(numsep_remove, '')
end
if numsep_remove2 then
text = text:gsub(numsep_remove2, '')
end
if numdot ~= '.' then
text = text:gsub(numdot, '.')
end
end
return text
end
local function omit_separator(id)
-- Return true if there should be no separator before id (a unit symbol or name).
-- For zhwiki, there should be no separator if id uses local characters.
-- The following kludge should be a sufficient test.
if omitsep then
if id:sub(1, 2) == '-{' then -- for "-{...}-" content language variant
return true
end
if id:byte() > 127 then
local first = usub(id, 1, 1)
if first ~= 'Å' and first ~= '°' and first ~= 'µ' then
return true
end
end
end
return id:sub(1, 1) == '/' -- no separator before units like "/ha"
end
local spell_module -- name of module that can spell numbers
local speller -- function from that module to handle spelling (set if needed)
local wikidata_module, wikidata_data_module -- names of Wikidata modules
local wikidata_code, wikidata_data -- exported tables from those modules (set if needed)
local function set_config(args)
-- Set configuration options from template #invoke or defaults.
config = args
maxsigfig = config.maxsigfig or 14 -- maximum number of significant figures
local data_module, text_module
local sandbox = config.sandbox and ('/' .. config.sandbox) or ''
data_module = "Module:Convert/data" .. sandbox
text_module = "Module:Convert/text" .. sandbox
extra_module = "Module:Convert/extra" .. sandbox
wikidata_module = "Module:Convert/wikidata" .. sandbox
wikidata_data_module = "Module:Convert/wikidata/data" .. sandbox
spell_module = "Module:ConvertNumeric"
data_code = mw.loadData(data_module)
text_code = mw.loadData(text_module)
all_units = data_code.all_units
local translation = text_code.translation_table
if translation then
numdot = translation.numdot
numsep = translation.numsep
if numdot == ',' and numsep == '.' then
if text_code.all_messages.cvt_enwiki_num then
to_en = to_en_with_check
end
end
if translation.group then
group_method = translation.group
end
if translation.per_word then
per_word = translation.per_word
end
if translation.plural_suffix then
plural_suffix = translation.plural_suffix
end
varname = translation.varname
from_en_table = translation.from_en
local use_workaround = true
if use_workaround then
-- 2013-07-05 workaround bug by making a copy of the required table.
-- mw.ustring.gsub fails with a table (to_en_table) as the replacement,
-- if the table is accessed via mw.loadData.
local source = translation.to_en
if source then
to_en_table = {}
for k, v in pairs(source) do
to_en_table[k] = v
end
end
else
to_en_table = translation.to_en
end
if translation.lang == 'en default' then
en_default = true -- for hiwiki
end
omitsep = translation.omitsep -- for zhwiki
end
numdot = config.numdot or numdot or '.' -- decimal mark before fractional digits
numsep = config.numsep or numsep or ',' -- group separator for numbers
-- numsep should be ',' or '.' or '' or ' ' or a Unicode character.
-- numsep_remove must work in a regex to identify separators to be removed.
if numsep ~= '' then
numsep_remove = (numsep == '.') and '%.' or numsep
end
if numsep ~= ',' and numdot ~= ',' then
numsep_remove2 = ',' -- so numbers copied from enwiki will work
end
end
local function collection()
-- Return a table to hold items.
return {
n = 0,
add = function (self, item)
self.n = self.n + 1
self[self.n] = item
end,
}
end
local function divide(numerator, denominator)
-- Return integers quotient, remainder resulting from dividing the two
-- given numbers, which should be unsigned integers.
local quotient, remainder = floor(numerator / denominator), numerator % denominator
if not (0 <= remainder and remainder < denominator) then
-- Floating point limits may need this, as in {{convert|160.02|Ym|ydftin}}.
remainder = 0
end
return quotient, remainder
end
local function split(text, delimiter)
-- Return a numbered table with fields from splitting text.
-- The delimiter is used in a regex without escaping (for example, '.' would fail).
-- Each field has any leading/trailing whitespace removed.
local t = {}
text = text .. delimiter -- to get last item
for item in text:gmatch('%s*(.-)%s*' .. delimiter) do
table.insert(t, item)
end
return t
end
local function strip(text)
-- If text is a string, return its content with no leading/trailing
-- whitespace. Otherwise return nil (a nil argument gives a nil result).
if type(text) == 'string' then
return text:match("^%s*(.-)%s*$")
end
end
local function table_len(t)
-- Return length (<100) of a numbered table to replace #t which is
-- documented to not work if t is accessed via mw.loadData().
for i = 1, 100 do
if t[i] == nil then
return i - 1
end
end
end
local function wanted_category(catkey, catsort, want_warning)
-- Return message category if it is wanted in current namespace,
-- otherwise return ''.
local cat
local title = mw.title.getCurrentTitle()
if title then
local nsdefault = '0' -- default namespace: '0' = article; '0,10' = article and template
local namespace = title.namespace
for _, v in ipairs(split(config.nscat or nsdefault, ',')) do
if namespace == tonumber(v) then
cat = text_code.all_categories[want_warning and 'warning' or catkey]
if catsort and catsort ~= '' and cat:sub(-2) == ']]' then
cat = cat:sub(1, -3) .. '|' .. mw.text.nowiki(usub(catsort, 1, 20)) .. ']]'
end
break
end
end
end
return cat or ''
end
local function message(parms, mcode, is_warning)
-- Return wikitext for an error message, including category if specified
-- for the message type.
-- mcode = numbered table specifying the message:
-- mcode[1] = 'cvt_xxx' (string used as a key to get message info)
-- mcode[2] = 'parm1' (string to replace '$1' if any in message)
-- mcode[3] = 'parm2' (string to replace '$2' if any in message)
-- mcode[4] = 'parm3' (string to replace '$3' if any in message)
local msg
if type(mcode) == 'table' then
if mcode[1] == 'cvt_no_output' then
-- Some errors should cause convert to output an empty string,
-- for example, for an optional field in an infobox.
return ''
end
msg = text_code.all_messages[mcode[1]]
end
parms.have_problem = true
local function subparm(fmt, ...)
local rep = {}
for i, v in ipairs({...}) do
rep['$' .. i] = v
end
return (fmt:gsub('$%d+', rep))
end
if msg then
local parts = {}
local regex, replace = msg.regex, msg.replace
for i = 1, 3 do
local limit = 40
local s = mcode[i + 1]
if s then
if regex and replace then
s = s:gsub(regex, replace)
limit = nil -- allow long "should be" messages
end
-- Escape user input so it does not break the message.
-- To avoid tags (like {{convert|1<math>23</math>|m}}) breaking
-- the mouseover title, any strip marker starting with char(127) is
-- replaced with '...' (text not needing i18n).
local append
local pos = s:find(string.char(127), 1, true)
if pos then
append = '...'
s = s:sub(1, pos - 1)
end
if limit and ulen(s) > limit then
s = usub(s, 1, limit)
append = '...'
end
s = mw.text.nowiki(s) .. (append or '')
else
s = '?'
end
parts['$' .. i] = s
end
local function ispreview()
-- Return true if a prominent message should be shown.
if parms.test == 'preview' or parms.test == 'nopreview' then
-- For testing, can preview a real message or simulate a preview
-- when running automated tests.
return parms.test == 'preview'
end
local success, revid = pcall(function ()
return (parms.frame):preprocess('{{REVISIONID}}') end)
return success and (revid == '')
end
local want_warning = is_warning and
not config.warnings and -- show unobtrusive warnings if config.warnings not configured
not msg.nowarn -- but use msg settings, not standard warning, if specified
local title = string.gsub(msg[1] or 'Missing message', '$%d+', parts)
local text = want_warning and '*' or msg[2] or 'Missing message'
local cat = wanted_category(msg[3], mcode[2], want_warning)
local anchor = msg[4] or ''
local fmtkey = ispreview() and 'cvt_format_preview' or
(want_warning and 'cvt_format2' or msg.format or 'cvt_format')
local fmt = text_code.all_messages[fmtkey] or 'convert: bug'
return subparm(fmt, title:gsub('"', '"'), text, cat, anchor)
end
return 'Convert internal error: unknown message'
end
function add_warning(parms, level, key, text1, text2) -- for forward declaration above
-- If enabled, add a warning that will be displayed after the convert result.
-- A higher level is more verbose: more kinds of warnings are displayed.
-- To reduce output noise, only the first warning is displayed.
if level <= (tonumber(config.warnings) or 1) then
if parms.warnings == nil then
parms.warnings = message(parms, { key, text1, text2 }, true)
end
end
end
local function spell_number(parms, inout, number, numerator, denominator)
-- Return result of spelling (number, numerator, denominator), or
-- return nil if spelling is not available or not supported for given text.
-- Examples (each value must be a string or nil):
-- number numerator denominator output
-- ------ --------- ----------- -------------------
-- "1.23" nil nil one point two three
-- "1" "2" "3" one and two thirds
-- nil "2" "3" two thirds
if not speller then
local function get_speller(module)
return require(module).spell_number
end
local success
success, speller = pcall(get_speller, spell_module)
if not success or type(speller) ~= 'function' then
add_warning(parms, 1, 'cvt_no_spell', 'spell')
return nil
end
end
local case
if parms.spell_upper == inout then
case = true
parms.spell_upper = nil -- only uppercase first word in a multiple unit
end
local sp = not parms.opt_sp_us
local adj = parms.opt_adjectival
return speller(number, numerator, denominator, case, sp, adj)
end
------------------------------------------------------------------------
-- BEGIN: Code required only for built-in units.
-- LATER: If need much more code, move to another module to simplify this module.
local function speed_of_sound(altitude)
-- This is for the Mach built-in unit of speed.
-- Return speed of sound in metres per second at given altitude in feet.
-- If no altitude given, use default (zero altitude = sea level).
-- Table gives speed of sound in miles per hour at various altitudes:
-- altitude = -17,499 to 302,499 feet
-- mach_table[a + 4] = s where
-- a = (altitude / 5000) rounded to nearest integer (-3 to 60)
-- s = speed of sound (mph) at that altitude
-- LATER: Should calculate result from an interpolation between the next
-- lower and higher altitudes in table, rather than rounding to nearest.
-- From: http://www.aerospaceweb.org/question/atmosphere/q0112.shtml
local mach_table = { -- a =
799.5, 787.0, 774.2, 761.207051, -- -3 to 0
748.0, 734.6, 721.0, 707.0, 692.8, 678.3, 663.5, 660.1, 660.1, 660.1, -- 1 to 10
660.1, 660.1, 660.1, 662.0, 664.3, 666.5, 668.9, 671.1, 673.4, 675.6, -- 11 to 20
677.9, 683.7, 689.9, 696.0, 702.1, 708.1, 714.0, 719.9, 725.8, 731.6, -- 21 to 30
737.3, 737.7, 737.7, 736.2, 730.5, 724.6, 718.8, 712.9, 707.0, 701.1, -- 31 to 40
695.0, 688.9, 682.8, 676.6, 670.4, 664.1, 657.8, 652.9, 648.3, 643.7, -- 41 to 50
639.1, 634.4, 629.6, 624.8, 620.0, 615.2, 613.2, 613.2, 613.2, 613.5, -- 51 to 60
}
altitude = altitude or 0
local a = (altitude < 0) and -altitude or altitude
a = floor(a / 5000 + 0.5)
if altitude < 0 then
a = -a
end
if a < -3 then
a = -3
elseif a > 60 then
a = 60
end
return mach_table[a + 4] * 0.44704 -- mph converted to m/s
end
-- END: Code required only for built-in units.
------------------------------------------------------------------------
local function get_range(word)
-- Return a range (string or table) corresponding to word (like "to"),
-- or return nil if not a range word.
local ranges = text_code.ranges
return ranges.types[word] or ranges.types[ranges.aliases[word]]
end
local function check_mismatch(unit1, unit2)
-- If unit1 cannot be converted to unit2, return an error message table.
-- This allows conversion between units of the same type, and between
-- Nm (normally torque) and ftlb (energy), as in gun-related articles.
-- This works because Nm is the base unit (scale = 1) for both the
-- primary type (torque), and the alternate type (energy, where Nm = J).
-- A match occurs if the primary types are the same, or if unit1 matches
-- the alternate type of unit2, and vice versa. That provides a whitelist
-- of which conversions are permitted between normally incompatible types.
if unit1.utype == unit2.utype or
(unit1.utype == unit2.alttype and unit1.alttype == unit2.utype) then
return nil
end
return { 'cvt_mismatch', unit1.utype, unit2.utype }
end
local function override_from(out_table, in_table, fields)
-- Copy the specified fields from in_table to out_table, but do not
-- copy nil fields (keep any corresponding field in out_table).
for _, field in ipairs(fields) do
if in_table[field] then
out_table[field] = in_table[field]
end
end
end
local function shallow_copy(t)
-- Return a shallow copy of table t.
-- Do not need the features and overhead of the Scribunto mw.clone().
local result = {}
for k, v in pairs(t) do
result[k] = v
end
return result
end
local unit_mt = {
-- Metatable to get missing values for a unit that does not accept SI prefixes.
-- Warning: The boolean value 'false' is returned for any missing field
-- so __index is not called twice for the same field in a given unit.
__index = function (self, key)
local value
if key == 'name1' or key == 'sym_us' then
value = self.symbol
elseif key == 'name2' then
value = self.name1 .. plural_suffix
elseif key == 'name1_us' then
value = self.name1
if not rawget(self, 'name2_us') then
-- If name1_us is 'foot', do not make name2_us by appending plural_suffix.
self.name2_us = self.name2
end
elseif key == 'name2_us' then
local raw1_us = rawget(self, 'name1_us')
if raw1_us then
value = raw1_us .. plural_suffix
else
value = self.name2
end
elseif key == 'link' then
value = self.name1
else
value = false
end
rawset(self, key, value)
return value
end
}
local function prefixed_name(unit, name, index)
-- Return unit name with SI prefix inserted at correct position.
-- index = 1 (name1), 2 (name2), 3 (name1_us), 4 (name2_us).
-- The position is a byte (not character) index, so use Lua's sub().
local pos = rawget(unit, 'prefix_position')
if type(pos) == 'string' then
pos = tonumber(split(pos, ',')[index])
end
if pos then
return name:sub(1, pos - 1) .. unit.si_name .. name:sub(pos)
end
return unit.si_name .. name
end
local unit_prefixed_mt = {
-- Metatable to get missing values for a unit that accepts SI prefixes.
-- Before use, fields si_name, si_prefix must be defined.
-- The unit must define _symbol, _name1 and
-- may define _sym_us, _name1_us, _name2_us
-- (_sym_us, _name2_us may be defined for a language using sp=us
-- to refer to a variant unrelated to U.S. units).
__index = function (self, key)
local value
if key == 'symbol' then
value = self.si_prefix .. self._symbol
elseif key == 'sym_us' then
value = rawget(self, '_sym_us')
if value then
value = self.si_prefix .. value
else
value = self.symbol
end
elseif key == 'name1' then
value = prefixed_name(self, self._name1, 1)
elseif key == 'name2' then
value = rawget(self, '_name2')
if value then
value = prefixed_name(self, value, 2)
else
value = self.name1 .. plural_suffix
end
elseif key == 'name1_us' then
value = rawget(self, '_name1_us')
if value then
value = prefixed_name(self, value, 3)
else
value = self.name1
end
elseif key == 'name2_us' then
value = rawget(self, '_name2_us')
if value then
value = prefixed_name(self, value, 4)
elseif rawget(self, '_name1_us') then
value = self.name1_us .. plural_suffix
else
value = self.name2
end
elseif key == 'link' then
value = self.name1
else
value = false
end
rawset(self, key, value)
return value
end
}
local unit_per_mt = {
-- Metatable to get values for a per unit of form "x/y".
-- This is never called to determine a unit name or link because per units
-- are handled as a special case.
-- Similarly, the default output is handled elsewhere, and for a symbol
-- this is only called from get_default() for default_exceptions.
__index = function (self, key)
local value
if key == 'symbol' then
local per = self.per
local unit1, unit2 = per[1], per[2]
if unit1 then
value = unit1[key] .. '/' .. unit2[key]
else
value = '/' .. unit2[key]
end
elseif key == 'sym_us' then
value = self.symbol
elseif key == 'scale' then
local per = self.per
local unit1, unit2 = per[1], per[2]
value = (unit1 and unit1.scale or 1) * self.scalemultiplier / unit2.scale
else
value = false
end
rawset(self, key, value)
return value
end
}
local function make_per(unitcode, unit_table, ulookup)
-- Return true, t where t is a per unit with unit codes expanded to unit tables,
-- or return false, t where t is an error message table.
local result = {
unitcode = unitcode,
utype = unit_table.utype,
per = {}
}
override_from(result, unit_table, { 'invert', 'iscomplex', 'default', 'link', 'symbol', 'symlink' })
result.symbol_raw = (result.symbol or false) -- to distinguish between a defined exception and a metatable calculation
local prefix
for i, v in ipairs(unit_table.per) do
if i == 1 and v == '' then
-- First unit symbol can be empty; that gives a nil first unit table.
elseif i == 1 and text_code.currency[v] then
prefix = currency_text or v
else
local success, t = ulookup(v)
if not success then return false, t end
result.per[i] = t
end
end
local multiplier = unit_table.multiplier
if not result.utype then
-- Creating an automatic per unit.
local unit1 = result.per[1]
local utype = (unit1 and unit1.utype or prefix or '') .. '/' .. result.per[2].utype
local t = data_code.per_unit_fixups[utype]
if t then
if type(t) == 'table' then
utype = t.utype or utype
result.link = result.link or t.link
multiplier = multiplier or t.multiplier
else
utype = t
end
end
result.utype = utype
end
result.scalemultiplier = multiplier or 1
result.vprefix = prefix or false -- set to non-nil to avoid calling __index
return true, setmetatable(result, unit_per_mt)
end
local function lookup(parms, unitcode, what, utable, fails, depth)
-- Return true, t where t is a copy of the unit's converter table,
-- or return false, t where t is an error message table.
-- Parameter 'what' determines whether combination units are accepted:
-- 'no_combination' : single unit only
-- 'any_combination' : single unit or combination or output multiple
-- 'only_multiple' : single unit or output multiple only
-- Parameter unitcode is a symbol (like 'g'), with an optional SI prefix (like 'kg').
-- If, for example, 'kg' is in this table, that entry is used;
-- otherwise the prefix ('k') is applied to the base unit ('g').
-- If unitcode is a known combination code (and if allowed by what),
-- a table of output multiple unit tables is included in the result.
-- For compatibility with the old template, an underscore in a unitcode is
-- replaced with a space so usage like {{convert|350|board_feet}} works.
-- Wikignomes may also put two spaces or " " in combinations, so
-- replace underscore, " ", and multiple spaces with a single space.
utable = utable or parms.unittable or all_units
fails = fails or {}
depth = depth and depth + 1 or 1
if depth > 9 then
-- There are ways to mistakenly define units which result in infinite
-- recursion when lookup() is called. That gives a long delay and very
-- confusing error messages, so the depth parameter is used as a guard.
return false, { 'cvt_lookup', unitcode }
end
if unitcode == nil or unitcode == '' then
return false, { 'cvt_no_unit' }
end
unitcode = unitcode:gsub('_', ' '):gsub(' ', ' '):gsub(' +', ' ')
local function call_make_per(t)
return make_per(unitcode, t,
function (ucode) return lookup(parms, ucode, 'no_combination', utable, fails, depth) end
)
end
local t = utable[unitcode]
if t then
if t.shouldbe then
return false, { 'cvt_should_be', t.shouldbe }
end
if t.sp_us then
parms.opt_sp_us = true
end
local target = t.target -- nil, or unitcode is an alias for this target
if target then
local success, result = lookup(parms, target, what, utable, fails, depth)
if not success then return false, result end
override_from(result, t, { 'customary', 'default', 'link', 'symbol', 'symlink' })
local multiplier = t.multiplier
if multiplier then
result.multiplier = tostring(multiplier)
result.scale = result.scale * multiplier
end
return true, result
end
if t.per then
return call_make_per(t)
end
local combo = t.combination -- nil or a table of unitcodes
if combo then
local multiple = t.multiple
if what == 'no_combination' or (what == 'only_multiple' and not multiple) then
return false, { 'cvt_bad_unit', unitcode }
end
-- Recursively create a combination table containing the
-- converter table of each unitcode.
local result = { utype = t.utype, multiple = multiple, combination = {} }
local cvt = result.combination
for i, v in ipairs(combo) do
local success, t = lookup(parms, v, multiple and 'no_combination' or 'only_multiple', utable, fails, depth)
if not success then return false, t end
cvt[i] = t
end
return true, result
end
local result = shallow_copy(t)
result.unitcode = unitcode
if result.prefixes then
result.si_name = ''
result.si_prefix = ''
return true, setmetatable(result, unit_prefixed_mt)
end
return true, setmetatable(result, unit_mt)
end
local SIprefixes = text_code.SIprefixes
for plen = SIprefixes[1] or 2, 1, -1 do
-- Look for an SI prefix; should never occur with an alias.
-- Check for longer prefix first ('dam' is decametre).
-- SIprefixes[1] = prefix maximum #characters (as seen by mw.ustring.sub).
local prefix = usub(unitcode, 1, plen)
local si = SIprefixes[prefix]
if si then
local t = utable[usub(unitcode, plen+1)]
if t and t.prefixes then
local result = shallow_copy(t)
result.unitcode = unitcode
result.si_name = parms.opt_sp_us and si.name_us or si.name
result.si_prefix = si.prefix or prefix
result.scale = t.scale * 10 ^ (si.exponent * t.prefixes)
return true, setmetatable(result, unit_prefixed_mt)
end
end
end
-- Accept user-defined combinations like "acre+m2+ha" or "acre m2 ha" for output.
-- If '+' is used, each unit code can include a space, and any error is fatal.
-- If ' ' is used and if each space-separated word is a unit code, it is a combo,
-- but errors are not fatal so the unit code can be looked up as an extra unit.
local err_is_fatal
local combo = collection()
if unitcode:find('+', 1, true) then
err_is_fatal = true
for item in (unitcode .. '+'):gmatch('%s*(.-)%s*%+') do
if item ~= '' then
combo:add(item)
end
end
elseif unitcode:find('%s') then
for item in unitcode:gmatch('%S+') do
combo:add(item)
end
end
if combo.n > 1 then
local function lookup_combo()
if what == 'no_combination' or what == 'only_multiple' then
return false, { 'cvt_bad_unit', unitcode }
end
local result = { combination = {} }
local cvt = result.combination
for i, v in ipairs(combo) do
local success, t = lookup(parms, v, 'only_multiple', utable, fails, depth)
if not success then return false, t end
if i == 1 then
result.utype = t.utype
else
local mismatch = check_mismatch(result, t)
if mismatch then
return false, mismatch
end
end
cvt[i] = t
end
return true, result
end
local success, result = lookup_combo()
if success or err_is_fatal then
return success, result
end
end
-- Accept any unit with an engineering notation prefix like "e6cuft"
-- (million cubic feet), but not chained prefixes like "e3e6cuft",
-- and not if the unit is a combination or multiple,
-- and not if the unit has an offset or is a built-in.
-- Only en digits are accepted.
local exponent, baseunit = unitcode:match('^e(%d+)(.*)')
if exponent then
local engscale = text_code.eng_scales[exponent]
if engscale then
local success, result = lookup(parms, baseunit, 'no_combination', utable, fails, depth)
if success and not (result.offset or result.builtin or result.engscale) then
result.unitcode = unitcode -- 'e6cuft' not 'cuft'
result.defkey = unitcode -- key to lookup default exception
result.engscale = engscale
result.scale = result.scale * 10 ^ tonumber(exponent)
return true, result
end
end
end
-- Look for x/y; split on right-most slash to get scale correct (x/y/z is x/y per z).
local top, bottom = unitcode:match('^(.-)/([^/]+)$')
if top and not unitcode:find('e%d') then
-- If valid, create an automatic per unit for an "x/y" unit code.
-- The unitcode must not include extraneous spaces.
-- Engineering notation (apart from at start and which has been stripped before here),
-- is not supported so do not make a per unit if find text like 'e3' in unitcode.
local success, result = call_make_per({ per = {top, bottom} })
if success then
return true, result
end
end
if not parms.opt_ignore_error and not get_range(unitcode) then
-- Want the "what links here" list for the extra_module to show only cases
-- where an extra unit is used, so do not require it if invoked from {{val}}
-- or if looking up a range word which cannot be a unit.
if not extra_units then
local success, extra = pcall(function () return require(extra_module).extra_units end)
if success and type(extra) == 'table' then
extra_units = extra
end
end
if extra_units then
-- A unit in one data table might refer to a unit in the other table, so
-- switch between them, relying on fails or depth to terminate loops.
if not fails[unitcode] then
fails[unitcode] = true
local other = (utable == all_units) and extra_units or all_units
local success, result = lookup(parms, unitcode, what, other, fails, depth)
if success then
return true, result
end
end
end
end
if to_en_table then
-- At fawiki it is common to translate all digits so a unit like "km2" becomes "km۲".
local en_code = ustring.gsub(unitcode, '%d', to_en_table)
if en_code ~= unitcode then
return lookup(parms, en_code, what, utable, fails, depth)
end
end
return false, { 'cvt_unknown', unitcode }
end
local function valid_number(num)
-- Return true if num is a valid number.
-- In Scribunto (different from some standard Lua), when expressed as a string,
-- overflow or other problems are indicated with text like "inf" or "nan"
-- which are regarded as invalid here (each contains "n").
if type(num) == 'number' and tostring(num):find('n', 1, true) == nil then
return true
end
end
local function hyphenated(name, parts)
-- Return a hyphenated form of given name (for adjectival usage).
-- The name may be linked and the target of the link must not be changed.
-- Hypothetical examples:
-- [[long ton|ton]] → [[long ton|ton]] (no change)
-- [[tonne|long ton]] → [[tonne|long-ton]]
-- [[metric ton|long ton]] → [[metric ton|long-ton]]
-- [[long ton]] → [[long ton|long-ton]]
-- Input can also have multiple links in a single name like:
-- [[United States customary units|U.S.]] [[US gallon|gallon]]
-- [[mile]]s per [[United States customary units|U.S.]] [[quart]]
-- [[long ton]]s per [[short ton]]
-- Assume that links cannot be nested (never like "[[abc[[def]]ghi]]").
-- This uses a simple and efficient procedure that works for most cases.
-- Some units (if used) would require more, and can later think about
-- adding a method to handle exceptions.
-- The procedure is to replace each space with a hyphen, but
-- not a space after ')' [for "(pre-1954 US) nautical mile"], and
-- not spaces immediately before '(' or in '(...)' [for cases like
-- "British thermal unit (ISO)" and "Calorie (International Steam Table)"].
if name:find(' ', 1, true) then
if parts then
local pos
if name:sub(1, 1) == '(' then
pos = name:find(')', 1, true)
if pos then
return name:sub(1, pos+1) .. name:sub(pos+2):gsub(' ', '-')
end
elseif name:sub(-1) == ')' then
pos = name:find('(', 1, true)
if pos then
return name:sub(1, pos-2):gsub(' ', '-') .. name:sub(pos-1)
end
end
return name:gsub(' ', '-')
end
parts = collection()
for before, item, after in name:gmatch('([^[]*)(%[%[[^[]*%]%])([^[]*)') do
if item:find(' ', 1, true) then
local prefix
local plen = item:find('|', 1, true)
if plen then
prefix = item:sub(1, plen)
item = item:sub(plen + 1, -3)
else
prefix = item:sub(1, -3) .. '|'
item = item:sub(3, -3)
end
item = prefix .. hyphenated(item, parts) .. ']]'
end
parts:add(before:gsub(' ', '-') .. item .. after:gsub(' ', '-'))
end
if parts.n == 0 then
-- No link like "[[...]]" was found in the original name.
parts:add(hyphenated(name, parts))
end
return table.concat(parts)
end
return name
end
local function hyphenated_maybe(parms, want_name, sep, id, inout)
-- Return s, f where
-- s = id, possibly modified
-- f = true if hyphenated
-- Possible modifications: hyphenate; prepend '-'; append mid text.
if id == nil or id == '' then
return ''
end
local mid = (inout == (parms.opt_flip and 'out' or 'in')) and parms.mid or ''
if want_name then
if parms.opt_adjectival then
return '-' .. hyphenated(id) .. mid, true
end
if parms.opt_add_s and id:sub(-1) ~= 's' then
id = id .. 's' -- for nowiki
end
end
return sep .. id .. mid
end
local function use_minus(text)
-- Return text with Unicode minus instead of '-', if present.
if text:sub(1, 1) == '-' then
return MINUS .. text:sub(2)
end
return text
end
local function digit_groups(parms, text, method)
-- Return a numbered table of groups of digits (left-to-right, in local language).
-- Parameter method is a number or nil:
-- 3 for 3-digit grouping (default), or
-- 2 for 3-then-2 grouping (only for digits before decimal mark).
local len_right
local len_left = text:find('.', 1, true)
if len_left then
len_right = #text - len_left
len_left = len_left - 1
else
len_left = #text
end
local twos = method == 2 and len_left > 5
local groups = collection()
local run = len_left
local n
if run < 4 or (run == 4 and parms.opt_comma5) then
if parms.opt_gaps then
n = run
else
n = #text
end
elseif twos then
n = run % 2 == 0 and 1 or 2
else
n = run % 3 == 0 and 3 or run % 3
end
while run > 0 do
groups:add(n)
run = run - n
n = (twos and run > 3) and 2 or 3
end
if len_right then
if groups.n == 0 then
groups:add(0)
end
if parms.opt_gaps and len_right > 3 then
local want4 = not parms.opt_gaps3 -- true gives no gap before trailing single digit
local isfirst = true
run = len_right
while run > 0 do
n = (want4 and run == 4) and 4 or (run > 3 and 3 or run)
if isfirst then
isfirst = false
groups[groups.n] = groups[groups.n] + 1 + n
else
groups:add(n)
end
run = run - n
end
else
groups[groups.n] = groups[groups.n] + 1 + len_right
end
end
local pos = 1
for i, length in ipairs(groups) do
groups[i] = from_en(text:sub(pos, pos + length - 1))
pos = pos + length
end
return groups
end
function with_separator(parms, text) -- for forward declaration above
-- Input text is a number in en digits with optional '.' decimal mark.
-- Return an equivalent, formatted for display:
-- with a custom decimal mark instead of '.', if wanted
-- with thousand separators inserted, if wanted
-- digits in local language
-- The given text is like '123' or '123.' or '12345.6789'.
-- The text has no sign (caller inserts that later, if necessary).
-- When using gaps, they are inserted before and after the decimal mark.
-- Separators are inserted only before the decimal mark.
-- A trailing dot (as in '123.') is removed because their use appears to
-- be accidental, and such a number should be shown as '123' or '123.0'.
-- It is useful for convert to suppress the dot so, for example, '4000.'
-- is a simple way of indicating that all the digits are significant.
if text:sub(-1) == '.' then
text = text:sub(1, -2)
end
if #text < 4 or parms.opt_nocomma or numsep == '' then
return from_en(text)
end
local groups = digit_groups(parms, text, group_method)
if parms.opt_gaps then
if groups.n <= 1 then
return groups[1] or ''
end
local nowrap = '<span style="white-space: nowrap">'
local gap = '<span style="margin-left: 0.25em">'
local close = '</span>'
return nowrap .. groups[1] .. gap .. table.concat(groups, close .. gap, 2, groups.n) .. close .. close
end
return table.concat(groups, numsep)
end
-- An input value like 1.23e12 is displayed using scientific notation (1.23×10¹²).
-- That also makes the output use scientific notation, except for small values.
-- In addition, very small or very large output values use scientific notation.
-- Use format(fmtpower, significand, '10', exponent) where each argument is a string.
local fmtpower = '%s<span style="margin:0 .15em 0 .25em">×</span>%s<sup>%s</sup>'
local function with_exponent(parms, show, exponent)
-- Return wikitext to display the implied value in scientific notation.
-- Input uses en digits; output uses digits in local language.
return format(fmtpower, with_separator(parms, show), from_en('10'), use_minus(from_en(tostring(exponent))))
end
local function make_sigfig(value, sigfig)
-- Return show, exponent that are equivalent to the result of
-- converting the number 'value' (where value >= 0) to a string,
-- rounded to 'sigfig' significant figures.
-- The returned items are:
-- show: a string of digits; no sign and no dot;
-- there is an implied dot before show.
-- exponent: a number (an integer) to shift the implied dot.
-- Resulting value = tonumber('.' .. show) * 10^exponent.
-- Examples:
-- make_sigfig(23.456, 3) returns '235', 2 (.235 * 10^2).
-- make_sigfig(0.0023456, 3) returns '235', -2 (.235 * 10^-2).
-- make_sigfig(0, 3) returns '000', 1 (.000 * 10^1).
if sigfig <= 0 then
sigfig = 1
elseif sigfig > maxsigfig then
sigfig = maxsigfig
end
if value == 0 then
return string.rep('0', sigfig), 1
end
local exp, fracpart = math.modf(log10(value))
if fracpart >= 0 then
fracpart = fracpart - 1
exp = exp + 1
end
local digits = format('%.0f', 10^(fracpart + sigfig))
if #digits > sigfig then
-- Overflow (for sigfig=3: like 0.9999 rounding to "1000"; need "100").
digits = digits:sub(1, sigfig)
exp = exp + 1
end
assert(#digits == sigfig, 'Bug: rounded number has wrong length')
return digits, exp
end
-- Fraction output format.
local fracfmt = {
{ -- Like {{frac}} (fraction slash).
-- 1/2 : sign, numerator, denominator
-- 1+2/3 : signed_wholenumber, numerator, denominator
'<span class="frac nowrap">%s<sup>%s</sup>⁄<sub>%s</sub></span>',
'<span class="frac nowrap">%s<span class="visualhide"> </span><sup>%s</sup>⁄<sub>%s</sub></span>',
},
{ -- Like {{sfrac}} (fraction horizontal bar).
-- 1//2 : sign, numerator, denominator (sign should probably be before the fraction, but then it can wrap, and html is already too long)
-- 1+2//3 : signed_wholenumber, numerator, denominator
'<span class="sfrac nowrap" style="display:inline-block; vertical-align:-0.5em; font-size:85%%; text-align:center;"><span style="display:block; line-height:1em; padding:0 0.1em;">%s%s</span><span class="visualhide">/</span><span style="display:block; line-height:1em; padding:0 0.1em; border-top:1px solid;">%s</span></span>',
'<span class="sfrac nowrap">%s<span class="visualhide"> </span><span style="display:inline-block; vertical-align:-0.5em; font-size:85%%; text-align:center;"><span style="display:block; line-height:1em; padding:0 0.1em;">%s</span><span class="visualhide">/</span><span style="display:block; line-height:1em; padding:0 0.1em; border-top:1px solid;">%s</span></span></span>',
},
}
local function format_fraction(parms, inout, negative, wholestr, numstr, denstr, do_spell, style)
-- Return wikitext for a fraction, possibly spelled.
-- Inputs use en digits and have no sign; output uses digits in local language.
local wikitext
if not style then
style = parms.opt_fraction_horizontal and 2 or 1
end
if wholestr == '' then
wholestr = nil
end
if wholestr then
local decorated = with_separator(parms, wholestr)
if negative then
decorated = MINUS .. decorated
end
local fmt = fracfmt[style][2]
wikitext = format(fmt, decorated, from_en(numstr), from_en(denstr))
else
local sign = negative and MINUS or ''
wikitext = format(fracfmt[style][1], sign, from_en(numstr), from_en(denstr))
end
if do_spell then
if negative then
if wholestr then
wholestr = '-' .. wholestr
else
numstr = '-' .. numstr
end
end
wikitext = spell_number(parms, inout, wholestr, numstr, denstr) or wikitext
end
return wikitext
end
local function format_number(parms, show, exponent, isnegative)
-- Parameter show is a string or a table containing strings.
-- Each string is a formatted number in en digits and optional '.' decimal mark.
-- A table represents a fraction: integer, numerator, denominator;
-- if a table is given, exponent must be nil.
-- Return t where t is a table with fields:
-- show = wikitext formatted to display implied value
-- (digits in local language)
-- is_scientific = true if show uses scientific notation
-- clean = unformatted show (possibly adjusted and with inserted '.')
-- (en digits)
-- sign = '' or MINUS
-- exponent = exponent (possibly adjusted)
-- The clean and exponent fields can be used to calculate the
-- rounded absolute value, if needed.
--
-- The value implied by the arguments is found from:
-- exponent is nil; and
-- show is a string of digits (no sign), with an optional dot;
-- show = '123.4' is value 123.4, '1234' is value 1234.0;
-- or:
-- exponent is an integer indicating where dot should be;
-- show is a string of digits (no sign and no dot);
-- there is an implied dot before show;
-- show does not start with '0';
-- show = '1234', exponent = 3 is value 0.1234*10^3 = 123.4.
--
-- The formatted result:
-- * Is for an output value and is spelled if wanted and possible.
-- * Includes a Unicode minus if isnegative and not spelled.
-- * Uses a custom decimal mark, if wanted.
-- * Has digits grouped where necessary, if wanted.
-- * Uses scientific notation if requested, or for very small or large values
-- (which forces result to not be spelled).
-- * Has no more than maxsigfig significant digits
-- (same as old template and {{#expr}}).
local xhi, xlo -- these control when scientific notation (exponent) is used
if parms.opt_scientific then
xhi, xlo = 4, 2 -- default for output if input uses e-notation
elseif parms.opt_scientific_always then
xhi, xlo = 0, 0 -- always use scientific notation (experimental)
else
xhi, xlo = 10, 4 -- default
end
local sign = isnegative and MINUS or ''
local maxlen = maxsigfig
local tfrac
if type(show) == 'table' then
tfrac = show
show = tfrac.wholestr
assert(exponent == nil, 'Bug: exponent given with fraction')
end
if not tfrac and not exponent then
local integer, dot, decimals = show:match('^(%d*)(%.?)(.*)')
if integer == '0' or integer == '' then
local zeros, figs = decimals:match('^(0*)([^0]?.*)')
if #figs == 0 then
if #zeros > maxlen then
show = '0.' .. zeros:sub(1, maxlen)
end
elseif #zeros >= xlo then
show = figs
exponent = -#zeros
elseif #figs > maxlen then
show = '0.' .. zeros .. figs:sub(1, maxlen)
end
elseif #integer >= xhi then
show = integer .. decimals
exponent = #integer
else
maxlen = maxlen + #dot
if #show > maxlen then
show = show:sub(1, maxlen)
end
end
end
if exponent then
local function zeros(n)
return string.rep('0', n)
end
if #show > maxlen then
show = show:sub(1, maxlen)
end
if exponent > xhi or exponent <= -xlo or (exponent == xhi and show ~= '1' .. zeros(xhi - 1)) then
-- When xhi, xlo = 10, 4 (the default), scientific notation is used if the
-- rounded value satisfies: value >= 1e9 or value < 1e-4 (1e9 = 0.1e10),
-- except if show is '1000000000' (1e9), for example:
-- {{convert|1000000000|m|m|sigfig=10}} → 1,000,000,000 metres (1,000,000,000 m)
local significand
if #show > 1 then
significand = show:sub(1, 1) .. '.' .. show:sub(2)
else
significand = show
end
return {
clean = '.' .. show,
exponent = exponent,
sign = sign,
show = sign .. with_exponent(parms, significand, exponent-1),
is_scientific = true,
}
end
if exponent >= #show then
show = show .. zeros(exponent - #show) -- result has no dot
elseif exponent <= 0 then
show = '0.' .. zeros(-exponent) .. show
else
show = show:sub(1, exponent) .. '.' .. show:sub(exponent+1)
end
end
local formatted_show
if tfrac then
show = tostring(tfrac.value) -- to set clean in returned table
formatted_show = format_fraction(parms, 'out', isnegative, tfrac.wholestr, tfrac.numstr, tfrac.denstr, parms.opt_spell_out)
else
if isnegative and show:match('^0.?0*$') then
sign = '' -- don't show minus if result is negative but rounds to zero
end
formatted_show = sign .. with_separator(parms, show)
if parms.opt_spell_out then
formatted_show = spell_number(parms, 'out', sign .. show) or formatted_show
end
end
return {
clean = show,
sign = sign,
show = formatted_show,
is_scientific = false, -- to avoid calling __index
}
end
local function extract_fraction(parms, text, negative)
-- If text represents a fraction, return
-- value, altvalue, show, denominator
-- where
-- value is a number (value of the fraction in argument text)
-- altvalue is an alternate interpretation of any fraction for the hands
-- unit where "12.1+3/4" means 12 hands 1.75 inches
-- show is a string (formatted text for display of an input value,
-- and is spelled if wanted and possible)
-- denominator is value of the denominator in the fraction
-- Otherwise, return nil.
-- Input uses en digits and '.' decimal mark (input has been translated).
-- Output uses digits in local language and local decimal mark, if any.
------------------------------------------------------------------------
-- Originally this function accepted x+y/z where x, y, z were any valid
-- numbers, possibly with a sign. For example '1.23e+2+1.2/2.4' = 123.5,
-- and '2-3/8' = 1.625. However, such usages were found to be errors or
-- misunderstandings, so since August 2014 the following restrictions apply:
-- x (if present) is an integer or has a single digit after decimal mark
-- y and z are unsigned integers
-- e-notation is not accepted
-- The overall number can start with '+' or '-' (so '12+3/4' and '+12+3/4'
-- and '-12-3/4' are valid).
-- Any leading negative sign is removed by the caller, so only inputs
-- like the following are accepted here (may have whitespace):
-- negative = false false true (there was a leading '-')
-- text = '2/3' '+2/3' '2/3'
-- text = '1+2/3' '+1+2/3' '1-2/3'
-- text = '12.3+1/2' '+12.3+1/2' '12.3-1/2'
-- Values like '12.3+1/2' are accepted, but are intended only for use
-- with the hands unit (not worth adding code to enforce that).
------------------------------------------------------------------------
local leading_plus, prefix, numstr, slashes, denstr =
text:match('^%s*(%+?)%s*(.-)%s*(%d+)%s*(/+)%s*(%d+)%s*$')
if not leading_plus then
-- Accept a single U+2044 fraction slash because that may be pasted.
leading_plus, prefix, numstr, denstr =
text:match('^%s*(%+?)%s*(.-)%s*(%d+)%s*⁄%s*(%d+)%s*$')
slashes = '/'
end
local numerator = tonumber(numstr)
local denominator = tonumber(denstr)
if numerator == nil or denominator == nil or (negative and leading_plus ~= '') then
return nil
end
local whole, wholestr
if prefix == '' then
wholestr = ''
whole = 0
else
-- Any prefix must be like '12+' or '12-' (whole number and fraction sign);
-- '12.3+' and '12.3-' are also accepted (single digit after decimal point)
-- because '12.3+1/2 hands' is valid (12 hands 3½ inches).
local num1, num2, frac_sign = prefix:match('^(%d+)(%.?%d?)%s*([+%-])$')
if num1 == nil then return nil end
if num2 == '' then -- num2 must be '' or like '.1' but not '.' or '.12'
wholestr = num1
else
if #num2 ~= 2 then return nil end
wholestr = num1 .. num2
end
if frac_sign ~= (negative and '-' or '+') then return nil end
whole = tonumber(wholestr)
if whole == nil then return nil end
end
local value = whole + numerator / denominator
if not valid_number(value) then return nil end
local altvalue = whole + numerator / (denominator * 10)
local style = #slashes -- kludge: 1 or 2 slashes can be used to select style
if style > 2 then style = 2 end
local wikitext = format_fraction(parms, 'in', negative, leading_plus .. wholestr, numstr, denstr, parms.opt_spell_in, style)
return value, altvalue, wikitext, denominator
end
local function extract_number(parms, text, another, no_fraction)
-- Return true, info if can extract a number from text,
-- where info is a table with the result,
-- or return false, t where t is an error message table.
-- Input can use en digits or digits in local language and can
-- have references at the end. Accepting references is intended
-- for use in infoboxes with a field for a value passed to convert.
-- Parameter another = true if the expected value is not the first.
-- Before processing, the input text is cleaned:
-- * Any thousand separators (valid or not) are removed.
-- * Any sign is replaced with '-' (if negative) or '' (otherwise).
-- That replaces Unicode minus with '-'.
-- If successful, the returned info table contains named fields:
-- value = a valid number
-- altvalue = a valid number, usually same as value but different
-- if fraction used (for hands unit)
-- singular = true if value is 1 or -1 (to use singular form of units)
-- clean = cleaned text with any separators and sign removed
-- (en digits and '.' decimal mark)
-- show = text formatted for output, possibly with ref strip markers
-- (digits in local language and custom decimal mark)
-- The resulting show:
-- * Is for an input value and is spelled if wanted and possible.
-- * Has a rounded value, if wanted.
-- * Has digits grouped where necessary, if wanted.
-- * If negative, a Unicode minus is used; otherwise the sign is
-- '+' (if the input text used '+'), or is '' (if no sign in input).
text = strip(text or '')
local reference
local pos = text:find('\127', 1, true)
if pos then
local before = text:sub(1, pos - 1)
local remainder = text:sub(pos)
local refs = {}
while #remainder > 0 do
local ref, spaces
ref, spaces, remainder = remainder:match('^(\127[^\127]*UNIQ[^\127]*%-ref[^\127]*\127)(%s*)(.*)')
if ref then
table.insert(refs, ref)
else
refs = {}
break
end
end
if #refs > 0 then
text = strip(before)
reference = table.concat(refs)
end
end
local clean = to_en(text, parms)
if clean == '' then
return false, { another and 'cvt_no_num2' or 'cvt_no_num' }
end
local isnegative, propersign = false, '' -- most common case
local singular, show, denominator
local value = tonumber(clean)
local altvalue
if value then
local sign = clean:sub(1, 1)
if sign == '+' or sign == '-' then
propersign = (sign == '+') and '+' or MINUS
clean = clean:sub(2)
end
if value < 0 then
isnegative = true
value = -value
end
else
local valstr
for _, prefix in ipairs({ '-', MINUS, '−' }) do
-- Including '-' sets isnegative in case input is a fraction like '-2-3/4'.
local plen = #prefix
if clean:sub(1, plen) == prefix then
valstr = clean:sub(plen + 1)
if valstr:match('^%s') then -- "- 1" is invalid but "-1 - 1/2" is ok
return false, { 'cvt_bad_num', text }
end
break
end
end
if valstr then
isnegative = true
propersign = MINUS
clean = valstr
value = tonumber(clean)
end
if value == nil then
if not no_fraction then
value, altvalue, show, denominator = extract_fraction(parms, clean, isnegative)
end
if value == nil then
return false, { 'cvt_bad_num', text }
end
if value <= 1 then
singular = true -- for example, "½ mile" or "one half mile" (singular unit)
end
end
end
if not valid_number(value) then -- for example, "1e310" may overflow
return false, { 'cvt_invalid_num' }
end
if show == nil then
-- clean is a non-empty string with no spaces, and does not represent a fraction,
-- and value = tonumber(clean) is a number >= 0.
-- If the input uses e-notation, show will be displayed using a power of ten, but
-- we use the number as given so it might not be normalized scientific notation.
-- The input value is spelled if specified so any e-notation is ignored;
-- that allows input like 2e6 to be spelled as "two million" which works
-- because the spell module converts '2e6' to '2000000' before spelling.
local function rounded(value, default, exponent)
local precision = parms.opt_ri
if precision then
local fmt = '%.' .. format('%d', precision) .. 'f'
local result = fmt:format(tonumber(value) + 2e-14) -- fudge for some common cases of bad rounding
if not exponent then
singular = (tonumber(result) == 1)
end
return result
end
return default
end
singular = (value == 1)
local scientific
local significand, exponent = clean:match('^([%d.]+)[Ee]([+%-]?%d+)')
if significand then
show = with_exponent(parms, rounded(significand, significand, exponent), exponent)
scientific = true
else
show = with_separator(parms, rounded(value, clean))
end
show = propersign .. show
if parms.opt_spell_in then
show = spell_number(parms, 'in', propersign .. rounded(value, clean)) or show
scientific = false
end
if scientific then
parms.opt_scientific = true
end
end
if isnegative and (value ~= 0) then
value = -value
altvalue = -(altvalue or value)
end
return true, {
value = value,
altvalue = altvalue or value,
singular = singular,
clean = clean,
show = show .. (reference or ''),
denominator = denominator,
}
end
local function get_number(text)
-- Return v, f where:
-- v = nil (text is not a number)
-- or
-- v = value of text (text is a number)
-- f = true if value is an integer
-- Input can use en digits or digits in local language,
-- but no separators, no Unicode minus, and no fraction.
if text then
local number = tonumber(to_en(text))
if number then
local _, fracpart = math.modf(number)
return number, (fracpart == 0)
end
end
end
local function gcd(a, b)
-- Return the greatest common denominator for the given values,
-- which are known to be positive integers.
if a > b then
a, b = b, a
end
if a <= 0 then
return b
end
local r = b % a
if r <= 0 then
return a
end
if r == 1 then
return 1
end
return gcd(r, a)
end
local function fraction_table(value, denominator)
-- Return value as a string or a table:
-- * If result is a string, there is no fraction, and the result
-- is value formatted as a string of en digits.
-- * If result is a table, it represents a fraction with named fields:
-- wholestr, numstr, denstr (strings of en digits for integer, numerator, denominator).
-- The result is rounded to the nearest multiple of (1/denominator).
-- If the multiple is zero, no fraction is included.
-- No fraction is included if value is very large as the fraction would
-- be unhelpful, particularly if scientific notation is required.
-- Input value is a non-negative number.
-- Input denominator is a positive integer for the desired fraction.
if value <= 0 then
return '0'
end
if denominator <= 0 or value > 1e8 then
return format('%.2f', value)
end
local integer, decimals = math.modf(value)
local numerator = floor((decimals * denominator) +
0.5 + 2e-14) -- add fudge for some common cases of bad rounding
if numerator >= denominator then
integer = integer + 1
numerator = 0
end
local wholestr = tostring(integer)
if numerator > 0 then
local div = gcd(numerator, denominator)
if div > 1 then
numerator = numerator / div
denominator = denominator / div
end
return {
wholestr = (integer > 0) and wholestr or '',
numstr = tostring(numerator),
denstr = tostring(denominator),
value = value,
}
end
return wholestr
end
local function preunits(count, preunit1, preunit2)
-- If count is 1:
-- ignore preunit2
-- return p1
-- else:
-- preunit1 is used for preunit2 if the latter is empty
-- return p1, p2
-- where:
-- p1 is text to insert before the input unit
-- p2 is text to insert before the output unit
-- p1 or p2 may be nil to mean "no preunit"
-- Using '+' gives output like "5+ feet" (no space before, but space after).
local function withspace(text, wantboth)
-- Return text with space before and, if wantboth, after.
-- However, no space is added if there is a space or ' ' or '-'
-- at that position ('-' is for adjectival text).
-- There is also no space if text starts with '&'
-- (e.g. '°' would display a degree symbol with no preceding space).
local char = text:sub(1, 1)
if char == '&' then
return text -- an html entity can be used to specify the exact display
end
if not (char == ' ' or char == '-' or char == '+') then
text = ' ' .. text
end
if wantboth then
char = text:sub(-1, -1)
if not (char == ' ' or char == '-' or text:sub(-6, -1) == ' ') then
text = text .. ' '
end
end
return text
end
local PLUS = '+ '
preunit1 = preunit1 or ''
local trim1 = strip(preunit1)
if count == 1 then
if trim1 == '' then
return nil
end
if trim1 == '+' then
return PLUS
end
return withspace(preunit1, true)
end
preunit1 = withspace(preunit1)
preunit2 = preunit2 or ''
local trim2 = strip(preunit2)
if trim1 == '+' then
if trim2 == '' or trim2 == '+' then
return PLUS, PLUS
end
preunit1 = PLUS
end
if trim2 == '' then
if trim1 == '' then
return nil, nil
end
preunit2 = preunit1
elseif trim2 == '+' then
preunit2 = PLUS
elseif trim2 == ' ' then -- trick to make preunit2 empty
preunit2 = nil
else
preunit2 = withspace(preunit2)
end
return preunit1, preunit2
end
local function range_text(range, want_name, parms, before, after, inout)
-- Return before .. rtext .. after
-- where rtext is the text that separates two values in a range.
local rtext, adj_text, exception
if type(range) == 'table' then
-- Table must specify range text for ('off' and 'on') or ('input' and 'output'),
-- and may specify range text for 'adj=on',
-- and may specify exception = true.
rtext = range[want_name and 'off' or 'on'] or
range[((inout == 'in') == (parms.opt_flip == true)) and 'output' or 'input']
adj_text = range['adj']
exception = range['exception']
else
rtext = range
end
if parms.opt_adjectival then
if want_name or (exception and parms.abbr_org == 'on') then
rtext = adj_text or rtext:gsub(' ', '-'):gsub(' ', '-')
end
end
if rtext == '–' and after:sub(1, #MINUS) == MINUS then
rtext = ' – '
end
return before .. rtext .. after
end
local function get_composite(parms, iparm, in_unit_table)
-- Look for a composite input unit. For example, {{convert|1|yd|2|ft|3|in}}
-- would result in a call to this function with
-- iparm = 3 (parms[iparm] = "2", just after the first unit)
-- in_unit_table = (unit table for "yd"; contains value 1 for number of yards)
-- Return true, iparm, unit where
-- iparm = index just after the composite units (7 in above example)
-- unit = composite unit table holding all input units,
-- or return true if no composite unit is present in parms,
-- or return false, t where t is an error message table.
local default, subinfo
local composite_units, count = { in_unit_table }, 1
local fixups = {}
local total = in_unit_table.valinfo[1].value
local subunit = in_unit_table
while subunit.subdivs do -- subdivs is nil or a table of allowed subdivisions
local subcode = strip(parms[iparm+1])
local subdiv = subunit.subdivs[subcode] or subunit.subdivs[(all_units[subcode] or {}).target]
if not subdiv then
break
end
local success
success, subunit = lookup(parms, subcode, 'no_combination')
if not success then return false, subunit end -- should never occur
success, subinfo = extract_number(parms, parms[iparm])
if not success then return false, subinfo end
iparm = iparm + 2
subunit.inout = 'in'
subunit.valinfo = { subinfo }
-- Recalculate total as a number of subdivisions.
-- subdiv[1] = number of subdivisions per previous unit (integer > 1).
total = total * subdiv[1] + subinfo.value
if not default then -- set by the first subdiv with a default defined
default = subdiv.default
end
count = count + 1
composite_units[count] = subunit
if subdiv.unit or subdiv.name then
fixups[count] = { unit = subdiv.unit, name = subdiv.name, valinfo = subunit.valinfo }
end
end
if count == 1 then
return true -- no error and no composite unit
end
for i, fixup in pairs(fixups) do
local unit = fixup.unit
local name = fixup.name
if not unit or (count > 2 and name) then
composite_units[i].fixed_name = name
else
local success, alternate = lookup(parms, unit, 'no_combination')
if not success then return false, alternate end -- should never occur
alternate.inout = 'in'
alternate.valinfo = fixup.valinfo
composite_units[i] = alternate
end
end
return true, iparm, {
utype = in_unit_table.utype,
scale = subunit.scale, -- scale of last (least significant) unit
valinfo = { { value = total, clean = subinfo.clean, denominator = subinfo.denominator } },
composite = composite_units,
default = default or in_unit_table.default
}
end
local function translate_parms(parms, kv_pairs)
-- Update fields in parms by translating each key:value in kv_pairs to terms
-- used by this module (may involve translating from local language to English).
-- Also, checks are performed which may display warnings, if enabled.
-- Return true if successful or return false, t where t is an error message table.
currency_text = nil -- local testing can hold module in memory; must clear globals
local accept_any_text = {
input = true,
qid = true,
qual = true,
stylein = true,
styleout = true,
tracking = true,
}
if kv_pairs.adj and kv_pairs.sing then
-- For enwiki (before translation), warn if attempt to use adj and sing
-- as the latter is a deprecated alias for the former.
if kv_pairs.adj ~= kv_pairs.sing and kv_pairs.sing ~= '' then
add_warning(parms, 1, 'cvt_unknown_option', 'sing=' .. kv_pairs.sing)
end
kv_pairs.sing = nil
end
kv_pairs.comma = kv_pairs.comma or config.comma -- for plwiki who want default comma=5
for loc_name, loc_value in pairs(kv_pairs) do
local en_name = text_code.en_option_name[loc_name]
if en_name then
local en_value
if en_name == '$' or en_name == 'frac' or en_name == 'sigfig' then
if loc_value == '' then
add_warning(parms, 2, 'cvt_empty_option', loc_name)
elseif en_name == '$' then
-- Value should be a single character like "€" for the euro currency symbol, but anything is accepted.
currency_text = (loc_value == 'euro') and '€' or loc_value
else
local minimum
local number, is_integer = get_number(loc_value)
if en_name == 'frac' then
minimum = 2
if number and number < 0 then
parms.opt_fraction_horizontal = true
number = -number
end
else
minimum = 1
end
if number and is_integer and number >= minimum then
en_value = number
else
add_warning(parms, 1, (en_name == 'frac' and 'cvt_bad_frac' or 'cvt_bad_sigfig'), loc_name .. '=' .. loc_value)
end
end
elseif accept_any_text[en_name] then
en_value = loc_value ~= '' and loc_value or nil -- accept non-empty user text with no validation
if en_name == 'input' then
-- May have something like {{convert|input=}} (empty input) if source is an infobox
-- with optional fields. In that case, want to output nothing rather than an error.
parms.input_text = loc_value -- keep input because parms.input is nil if loc_value == ''
end
else
en_value = text_code.en_option_value[en_name][loc_value]
if en_value and en_value:sub(-1) == '?' then
en_value = en_value:sub(1, -2)
add_warning(parms, -1, 'cvt_deprecated', loc_name .. '=' .. loc_value)
end
if en_value == nil then
if loc_value == '' then
add_warning(parms, 2, 'cvt_empty_option', loc_name)
else
add_warning(parms, 1, 'cvt_unknown_option', loc_name .. '=' .. loc_value)
end
elseif en_value == '' then
en_value = nil -- an ignored option like adj=off
elseif type(en_value) == 'string' and en_value:sub(1, 4) == 'opt_' then
for _, v in ipairs(split(en_value, ',')) do
local lhs, rhs = v:match('^(.-)=(.+)$')
if rhs then
parms[lhs] = tonumber(rhs) or rhs
else
parms[v] = true
end
end
en_value = nil
end
end
parms[en_name] = en_value
else
add_warning(parms, 1, 'cvt_unknown_option', loc_name .. '=' .. loc_value)
end
end
local abbr_entered = parms.abbr
local cfg_abbr = config.abbr
if cfg_abbr then
-- Don't warn if invalid because every convert would show that warning.
if cfg_abbr == 'on always' then
parms.abbr = 'on'
elseif cfg_abbr == 'off always' then
parms.abbr = 'off'
elseif parms.abbr == nil then
if cfg_abbr == 'on default' then
parms.abbr = 'on'
elseif cfg_abbr == 'off default' then
parms.abbr = 'off'
end
end
end
if parms.abbr then
if parms.abbr == 'unit' then
parms.abbr = 'on'
parms.number_word = true
end
parms.abbr_org = parms.abbr -- original abbr, before any flip
elseif parms.opt_hand_hh then
parms.abbr_org = 'on'
parms.abbr = 'on'
else
parms.abbr = 'out' -- default is to abbreviate output only (use symbol, not name)
end
if parms.opt_order_out then
-- Disable options that do not work in a useful way with order=out.
parms.opt_flip = nil -- override adj=flip
parms.opt_spell_in = nil
parms.opt_spell_out = nil
parms.opt_spell_upper = nil
end
if parms.opt_spell_out and not abbr_entered then
parms.abbr = 'off' -- should show unit name when spelling the output value
end
if parms.opt_flip then
local function swap_in_out(option)
local value = parms[option]
if value == 'in' then
parms[option] = 'out'
elseif value == 'out' then
parms[option] = 'in'
end
end
swap_in_out('abbr')
swap_in_out('lk')
if parms.opt_spell_in and not parms.opt_spell_out then
-- For simplicity, and because it does not appear to be needed,
-- user cannot set an option to spell the output only.
parms.opt_spell_in = nil
parms.opt_spell_out = true
end
end
if parms.opt_spell_upper then
parms.spell_upper = parms.opt_flip and 'out' or 'in'
end
if parms.opt_table or parms.opt_tablecen then
if abbr_entered == nil and parms.lk == nil then
parms.opt_values = true
end
parms.table_align = parms.opt_table and 'right' or 'center'
end
if parms.table_align or parms.opt_sortable_on then
parms.need_table_or_sort = true
end
local disp_joins = text_code.disp_joins
local default_joins = disp_joins['b']
parms.join_between = default_joins[3] or '; '
local disp = parms.disp
if disp == nil then -- special case for the most common setting
parms.joins = default_joins
elseif disp == 'x' then
-- Later, parms.joins is set from the input parameters.
else
-- Old template does this.
local abbr = parms.abbr
if disp == 'slash' then
if abbr_entered == nil then
disp = 'slash-nbsp'
elseif abbr == 'in' or abbr == 'out' then
disp = 'slash-sp'
else
disp = 'slash-nosp'
end
elseif disp == 'sqbr' then
if abbr == 'on' then
disp = 'sqbr-nbsp'
else
disp = 'sqbr-sp'
end
end
parms.joins = disp_joins[disp] or default_joins
parms.join_between = parms.joins[3] or parms.join_between
parms.wantname = parms.joins.wantname
end
if (en_default and not parms.opt_lang_local and (parms[1] or ''):find('%d')) or parms.opt_lang_en then
from_en_table = nil
end
if en_default and from_en_table then
-- For hiwiki: localized symbol/name is defined with the US symbol/name field,
-- and is used if output uses localized numbers.
parms.opt_sp_us = true
end
return true
end
local function get_values(parms)
-- If successful, update parms and return true, v, i where
-- v = table of input values
-- i = index to next entry in parms after those processed here
-- or return false, t where t is an error message table.
local valinfo = collection() -- numbered table of input values
local range = collection() -- numbered table of range items (having, for example, 2 range items requires 3 input values)
local had_nocomma -- true if removed "nocomma" kludge from second parameter (like "tonocomma")
local parm2 = strip(parms[2])
if parm2 and parm2:sub(-7, -1) == 'nocomma' then
parms[2] = strip(parm2:sub(1, -8))
parms.opt_nocomma = true
had_nocomma = true
end
local function extractor(i)
-- If the parameter is not a value, try unpacking it as a range ("1-23" for "1 to 23").
-- However, "-1-2/3" is a negative fraction (-1⅔), so it must be extracted first.
-- Do not unpack a parameter if it is like "3-1/2" which is sometimes incorrectly
-- used instead of "3+1/2" (and which should not be interpreted as "3 to ½").
-- Unpacked items are inserted into the parms table.
-- The tail recursion allows combinations like "1x2 to 3x4".
local valstr = strip(parms[i]) -- trim so any '-' as a negative sign will be at start
local success, result = extract_number(parms, valstr, i > 1)
if not success and valstr and i < 20 then -- check i to limit abuse
local lhs, sep, rhs = valstr:match('^(%S+)%s+(%S+)%s+(%S.*)')
if lhs and not (sep == '-' and rhs:match('/')) then
if sep:find('%d') then
return success, result -- to reject {{convert|1 234 567|m}} with a decent message (en only)
end
parms[i] = rhs
table.insert(parms, i, sep)
table.insert(parms, i, lhs)
return extractor(i)
end
if not valstr:match('%-.*/') then
for _, sep in ipairs(text_code.ranges.words) do
local start, stop = valstr:find(sep, 2, true) -- start at 2 to skip any negative sign for range '-'
if start then
parms[i] = valstr:sub(stop + 1)
table.insert(parms, i, sep)
table.insert(parms, i, valstr:sub(1, start - 1))
return extractor(i)
end
end
end
end
return success, result
end
local i = 1
local is_change
while true do
local success, info = extractor(i) -- need to set parms.opt_nocomma before calling this
if not success then return false, info end
i = i + 1
if is_change then
info.is_change = true -- value is after "±" and so is a change (significant for range like {{convert|5|±|5|°C}})
is_change = nil
end
valinfo:add(info)
local range_item = get_range(strip(parms[i]))
if not range_item then
break
end
i = i + 1
range:add(range_item)
if type(range_item) == 'table' then
-- For range "x", if append unit to some values, append it to all.
parms.in_range_x = parms.in_range_x or range_item.in_range_x
parms.out_range_x = parms.out_range_x or range_item.out_range_x
parms.abbr_range_x = parms.abbr_range_x or range_item.abbr_range_x
is_change = range_item.is_range_change
end
end
if range.n > 0 then
if range.n > 30 then -- limit abuse, although 4 is a more likely upper limit
return false, { 'cvt_invalid_num' } -- misleading message but it will do
end
parms.range = range
elseif had_nocomma then
return false, { 'cvt_unknown', parm2 }
end
return true, valinfo, i
end
local function simple_get_values(parms)
-- If input is like "{{convert|valid_value|valid_unit|...}}",
-- return true, i, in_unit, in_unit_table
-- i = index in parms of what follows valid_unit, if anything.
-- The valid_value is not negative and does not use a fraction, and
-- no options requiring further processing of the input are used.
-- Otherwise, return nothing or return false, parm1 for caller to interpret.
-- Testing shows this function is successful for 96% of converts in articles,
-- and that on average it speeds up converts by 8%.
local clean = to_en(strip(parms[1] or ''), parms)
if parms.opt_ri or parms.opt_spell_in or #clean > 10 or not clean:match('^[0-9.]+$') then
return false, clean
end
local value = tonumber(clean)
if not value then return end
local info = {
value = value,
altvalue = value,
singular = (value == 1),
clean = clean,
show = with_separator(parms, clean),
}
local in_unit = strip(parms[2])
local success, in_unit_table = lookup(parms, in_unit, 'no_combination')
if not success then return end
in_unit_table.valinfo = { info }
return true, 3, in_unit, in_unit_table
end
local function wikidata_call(parms, operation, ...)
-- Return true, s where s is the result of a Wikidata operation,
-- or return false, t where t is an error message table.
local function worker(...)
wikidata_code = wikidata_code or require(wikidata_module)
wikidata_data = wikidata_data or mw.loadData(wikidata_data_module)
return wikidata_code[operation](wikidata_data, ...)
end
local success, status, result = pcall(worker, ...)
if success then
return status, result
end
if parms.opt_sortable_debug then
-- Use debug=yes to crash if an error while accessing Wikidata.
error('Error accessing Wikidata: ' .. status, 0)
end
return false, { 'cvt_wd_fail' }
end
local function get_parms(parms, args)
-- If successful, update parms and return true, unit where
-- parms is a table of all arguments passed to the template
-- converted to named arguments, and
-- unit is the input unit table;
-- or return false, t where t is an error message table.
-- For special processing (not a convert), can also return
-- true, wikitext where wikitext is the final result.
-- The returned input unit table may be for a fake unit using the specified
-- unit code as the symbol and name, and with bad_mcode = message code table.
-- MediaWiki removes leading and trailing whitespace from the values of
-- named arguments. However, the values of numbered arguments include any
-- whitespace entered in the template, and whitespace is used by some
-- parameters (example: the numbered parameters associated with "disp=x").
local kv_pairs = {} -- table of input key:value pairs where key is a name; needed because cannot iterate parms and add new fields to it
for k, v in pairs(args) do
if type(k) == 'number' or k == 'test' then -- parameter "test" is reserved for testing and is not translated
parms[k] = v
else
kv_pairs[k] = v
end
end
if parms.test == 'wikidata' then
local ulookup = function (ucode)
-- Use empty table for parms so it does not accumulate results when used repeatedly.
return lookup({}, ucode, 'no_combination')
end
return wikidata_call(parms, '_listunits', ulookup)
end
local success, msg = translate_parms(parms, kv_pairs)
if not success then return false, msg end
if parms.input then
success, msg = wikidata_call(parms, '_adjustparameters', parms, 1)
if not success then return false, msg end
end
local success, i, in_unit, in_unit_table = simple_get_values(parms)
if not success then
if type(i) == 'string' and i:match('^NNN+$') then
-- Some infoboxes have examples like {{convert|NNN|m}} (3 or more "N").
-- Output an empty string for these.
return false, { 'cvt_no_output' }
end
local valinfo
success, valinfo, i = get_values(parms)
if not success then return false, valinfo end
in_unit = strip(parms[i])
i = i + 1
success, in_unit_table = lookup(parms, in_unit, 'no_combination')
if not success then
in_unit = in_unit or ''
if parms.opt_ignore_error then -- display given unit code with no error (for use with {{val}})
in_unit_table = '' -- suppress error message and prevent processing of output unit
end
in_unit_table = setmetatable({
symbol = in_unit, name2 = in_unit, utype = in_unit,
scale = 1, default = '', defkey = '', linkey = '',
bad_mcode = in_unit_table }, unit_mt)
end
in_unit_table.valinfo = valinfo
end
if parms.test == 'msg' then
-- Am testing the messages produced when no output unit is specified, and
-- the input unit has a missing or invalid default.
-- Set two units for testing that.
-- LATER: Remove this code.
if in_unit == 'chain' then
in_unit_table.default = nil -- no default
elseif in_unit == 'rd' then
in_unit_table.default = "ft!X!m" -- an invalid expression
end
end
in_unit_table.inout = 'in' -- this is an input unit
if not parms.range then
local success, inext, composite_unit = get_composite(parms, i, in_unit_table)
if not success then return false, inext end
if composite_unit then
in_unit_table = composite_unit
i = inext
end
end
if in_unit_table.builtin == 'mach' then
-- As with old template, a number following Mach as the input unit is the altitude,
-- and there is no way to specify an altitude for the output unit.
-- Could put more code in this function to get any output unit and check for
-- an altitude following that unit.
local success, info = extract_number(parms, parms[i], false, true)
if success then
i = i + 1
in_unit_table.altitude = info.value
end
end
local word = strip(parms[i])
i = i + 1
local precision, is_bad_precision
local function set_precision(text)
local number, is_integer = get_number(text)
if number then
if is_integer then
precision = number
else
precision = text
is_bad_precision = true
end
return true -- text was used for precision, good or bad
end
end
if word and not set_precision(word) then
parms.out_unit = parms.out_unit or word
if set_precision(strip(parms[i])) then
i = i + 1
end
end
if parms.opt_adj_mid then
word = parms[i]
i = i + 1
if word then -- mid-text words
if word:sub(1, 1) == '-' then
parms.mid = word
else
parms.mid = ' ' .. word
end
end
end
if parms.opt_one_preunit then
parms[parms.opt_flip and 'preunit2' or 'preunit1'] = preunits(1, parms[i])
i = i + 1
end
if parms.disp == 'x' then
-- Following is reasonably compatible with the old template.
local first = parms[i] or ''
local second = parms[i+1] or ''
i = i + 2
if strip(first) == '' then -- user can enter ' ' rather than ' ' to avoid the default
first = ' [ ' .. first
second = ' ]' .. second
end
parms.joins = { first, second }
elseif parms.opt_two_preunits then
local p1, p2 = preunits(2, parms[i], parms[i+1])
i = i + 2
if parms.preunit1 then
-- To simplify documentation, allow unlikely use of adj=pre with disp=preunit
-- (however, an output unit must be specified with adj=pre and with disp=preunit).
parms.preunit1 = parms.preunit1 .. p1
parms.preunit2 = p2
else
parms.preunit1, parms.preunit2 = p1, p2
end
end
if precision == nil then
if set_precision(strip(parms[i])) then
i = i + 1
end
end
if is_bad_precision then
add_warning(parms, 1, 'cvt_bad_prec', precision)
else
parms.precision = precision
end
for j = i, i + 3 do
local parm = parms[j] -- warn if find a non-empty extraneous parameter
if parm and parm:match('%S') then
add_warning(parms, 1, 'cvt_unknown_option', parm)
break
end
end
return true, in_unit_table
end
local function record_default_precision(parms, out_current, precision)
-- If necessary, adjust parameters and return a possibly adjusted precision.
-- When converting a range of values where a default precision is required,
-- that default is calculated for each value because the result sometimes
-- depends on the precise input and output values. This function may cause
-- the entire convert process to be repeated in order to ensure that the
-- same default precision is used for each individual convert.
-- If that were not done, a range like 1000 to 1000.4 may give poor results
-- because the first output could be heavily rounded, while the second is not.
-- For range 1000.4 to 1000, this function can give the second convert the
-- same default precision that was used for the first.
if not parms.opt_round_each then
local maxdef = out_current.max_default_precision
if maxdef then
if maxdef < precision then
parms.do_convert_again = true
out_current.max_default_precision = precision
else
precision = out_current.max_default_precision
end
else
out_current.max_default_precision = precision
end
end
return precision
end
local function default_precision(parms, invalue, inclean, denominator, outvalue, in_current, out_current, extra)
-- Return a default value for precision (an integer like 2, 0, -2).
-- If denominator is not nil, it is the value of the denominator in inclean.
-- Code follows procedures used in old template.
local fudge = 1e-14 -- {{Order of magnitude}} adds this, so we do too
local prec, minprec, adjust
local subunit_ignore_trailing_zero
local subunit_more_precision -- kludge for "in" used in input like "|2|ft|6|in"
local composite = in_current.composite
if composite then
subunit_ignore_trailing_zero = true -- input "|2|st|10|lb" has precision 0, not -1
if composite[#composite].exception == 'subunit_more_precision' then
subunit_more_precision = true -- do not use standard precision with input like "|2|ft|6|in"
end
end
if denominator and denominator > 0 then
prec = math.max(log10(denominator), 1)
else
-- Count digits after decimal mark, handling cases like '12.345e6'.
local exponent
local integer, dot, decimals, expstr = inclean:match('^(%d*)(%.?)(%d*)(.*)')
local e = expstr:sub(1, 1)
if e == 'e' or e == 'E' then
exponent = tonumber(expstr:sub(2))
end
if dot == '' then
prec = subunit_ignore_trailing_zero and 0 or -integer:match('0*$'):len()
else
prec = #decimals
end
if exponent then
-- So '1230' and '1.23e3' both give prec = -1, and '0.00123' and '1.23e-3' give 5.
prec = prec - exponent
end
end
if in_current.istemperature and out_current.istemperature then
-- Converting between common temperatures (°C, °F, °R, K); not keVT.
-- Kelvin value can be almost zero, or small but negative due to precision problems.
-- Also, an input value like -300 C (below absolute zero) gives negative kelvins.
-- Calculate minimum precision from absolute value.
adjust = 0
local kelvin = abs((invalue - in_current.offset) * in_current.scale)
if kelvin < 1e-8 then -- assume nonzero due to input or calculation precision problem
minprec = 2
else
minprec = 2 - floor(log10(kelvin) + fudge) -- 3 sigfigs in kelvin
end
else
if invalue == 0 or outvalue <= 0 then
-- We are never called with a negative outvalue, but it might be zero.
-- This is special-cased to avoid calculation exceptions.
return record_default_precision(parms, out_current, 0)
end
if out_current.exception == 'integer_more_precision' and floor(invalue) == invalue then
-- With certain output units that sometimes give poor results
-- with default rounding, use more precision when the input
-- value is equal to an integer. An example of a poor result
-- is when input 50 gives a smaller output than input 49.5.
-- Experiment shows this helps, but it does not eliminate all
-- surprises because it is not clear whether "50" should be
-- interpreted as "from 45 to 55" or "from 49.5 to 50.5".
adjust = -log10(in_current.scale)
elseif subunit_more_precision then
-- Conversion like "{{convert|6|ft|1|in|cm}}" (where subunit is "in")
-- has a non-standard adjust value, to give more output precision.
adjust = log10(out_current.scale) + 2
else
adjust = log10(abs(invalue / outvalue))
end
adjust = adjust + log10(2)
-- Ensure that the output has at least two significant figures.
minprec = 1 - floor(log10(outvalue) + fudge)
end
if extra then
adjust = extra.adjust or adjust
minprec = extra.minprec or minprec
end
return record_default_precision(parms, out_current, math.max(floor(prec + adjust), minprec))
end
local function convert(parms, invalue, info, in_current, out_current)
-- Convert given input value from one unit to another.
-- Return output_value (a number) if a simple convert, or
-- return f, t where
-- f = true, t = table of information with results, or
-- f = false, t = error message table.
local inscale = in_current.scale
local outscale = out_current.scale
if not in_current.iscomplex and not out_current.iscomplex then
return invalue * (inscale / outscale) -- minimize overhead for most common case
end
if in_current.invert or out_current.invert then
-- Inverted units, such as inverse length, inverse time, or
-- fuel efficiency. Built-in units do not have invert set.
if (in_current.invert or 1) * (out_current.invert or 1) < 0 then
return 1 / (invalue * inscale * outscale)
end
return invalue * (inscale / outscale)
elseif in_current.offset then
-- Temperature (there are no built-ins for this type of unit).
if info.is_change then
return invalue * (inscale / outscale)
end
return (invalue - in_current.offset) * (inscale / outscale) + out_current.offset
else
-- Built-in unit.
local in_builtin = in_current.builtin
local out_builtin = out_current.builtin
if in_builtin and out_builtin then
if in_builtin == out_builtin then
return invalue
end
-- There are no cases (yet) where need to convert from one
-- built-in unit to another, so this should never occur.
return false, { 'cvt_bug_convert' }
end
if in_builtin == 'mach' or out_builtin == 'mach' then
local adjust
if in_builtin == 'mach' then
inscale = speed_of_sound(in_current.altitude)
adjust = outscale / 0.1
else
outscale = speed_of_sound(out_current.altitude)
adjust = 0.1 / inscale
end
return true, {
outvalue = invalue * (inscale / outscale),
adjust = log10(adjust) + log10(2),
}
elseif in_builtin == 'hand' then
-- 1 hand = 4 inches; 1.2 hands = 6 inches.
-- Decimals of a hand are only defined for the first digit, and
-- the first fractional digit should be a number of inches (1, 2 or 3).
-- However, this code interprets the entire fractional part as the number
-- of inches / 10 (so 1.75 inches would be 0.175 hands).
-- A value like 12.3 hands is exactly 12*4 + 3 inches; base default precision on that.
local integer, fracpart = math.modf(invalue)
local inch_value = 4 * integer + 10 * fracpart -- equivalent number of inches
local factor = inscale / outscale
if factor == 4 then
-- Am converting to inches: show exact result, and use "inches" not "in" by default.
if parms.abbr_org == nil then
out_current.usename = true
end
local show = format('%g', abs(inch_value)) -- show and clean are unsigned
if not show:find('e', 1, true) then
return true, {
invalue = inch_value,
outvalue = inch_value,
clean = show,
show = show,
}
end
end
local outvalue = (integer + 2.5 * fracpart) * factor
local fracstr = info.clean:match('%.(.*)') or ''
local fmt
if fracstr == '' then
fmt = '%.0f'
else
fmt = '%.' .. format('%d', #fracstr - 1) .. 'f'
end
return true, {
invalue = inch_value,
clean = format(fmt, inch_value),
outvalue = outvalue,
minprec = 0,
}
end
end
return false, { 'cvt_bug_convert' } -- should never occur
end
local function user_style(parms, i)
-- Return text for a user-specified style for a table cell, or '' if none,
-- given i = 1 (input style) or 2 (output style).
local style = parms[(i == 1) and 'stylein' or 'styleout']
if style then
style = style:gsub('"', '')
if style ~= '' then
if style:sub(-1) ~= ';' then
style = style .. ';'
end
return style
end
end
return ''
end
local function make_table_or_sort(parms, invalue, info, in_current, scaled_top)
-- Set options to handle output for a table or a sort key, or both.
-- The text sort key is based on the value resulting from converting
-- the input to a fake base unit with scale = 1, and other properties
-- required for a conversion derived from the input unit.
-- For other modules, return the sort key in a hidden span element, and
-- the scaled value used to generate the sort key.
-- If scaled_top is set, it is the scaled value of the numerator of a per unit
-- to be combined with this unit (the denominator) to make the sort key.
-- Scaling only works with units that convert with a factor (not temperature).
local sortkey, scaled_value
if parms.opt_sortable_on then
local base = { -- a fake unit with enough fields for a valid convert
scale = 1,
invert = in_current.invert and 1,
iscomplex = in_current.iscomplex,
offset = in_current.offset and 0,
}
local outvalue, extra = convert(parms, invalue, info, in_current, base)
if extra then
outvalue = extra.outvalue
end
if in_current.istemperature then
-- Have converted to kelvin; assume numbers close to zero have a
-- rounding error and should be zero.
if abs(outvalue) < 1e-12 then
outvalue = 0
end
end
if scaled_top and outvalue ~= 0 then
outvalue = scaled_top / outvalue
end
scaled_value = outvalue
if not valid_number(outvalue) then
if outvalue < 0 then
sortkey = '1000000000000000000'
else
sortkey = '9000000000000000000'
end
elseif outvalue == 0 then
sortkey = '5000000000000000000'
else
local mag = floor(log10(abs(outvalue)) + 1e-14)
local prefix
if outvalue > 0 then
prefix = 7000 + mag
else
prefix = 2999 - mag
outvalue = outvalue + 10^(mag+1)
end
sortkey = format('%d', prefix) .. format('%015.0f', floor(outvalue * 10^(14-mag)))
end
end
local sortspan
if sortkey and not parms.table_align then
sortspan = parms.opt_sortable_debug and
'<span data-sort-value="' .. sortkey .. '♠"><span style="border:1px solid">' .. sortkey .. '♠</span></span>' or
'<span data-sort-value="' .. sortkey .. '♠"></span>'
parms.join_before = sortspan
end
if parms.table_align then
local sort
if sortkey then
sort = ' data-sort-value="' .. sortkey .. '"'
if parms.opt_sortable_debug then
parms.join_before = '<span style="border:1px solid">' .. sortkey .. '</span>'
end
else
sort = ''
end
local style = 'style="text-align:' .. parms.table_align .. ';'
local joins = {}
for i = 1, 2 do
joins[i] = (i == 1 and '' or '\n|') .. style .. user_style(parms, i) .. '"' .. sort .. '|'
end
parms.table_joins = joins
end
return sortspan, scaled_value
end
local cvt_to_hand
local function cvtround(parms, info, in_current, out_current)
-- Return true, t where t is a table with the conversion results; fields:
-- show = rounded, formatted string with the result of converting value in info,
-- using the rounding specified in parms.
-- singular = true if result (after rounding and ignoring any negative sign)
-- is "1", or like "1.00", or is a fraction with value < 1;
-- (and more fields shown below, and a calculated 'absvalue' field).
-- or return false, t where t is an error message table.
-- Input info.clean uses en digits (it has been translated, if necessary).
-- Output show uses en or non-en digits as appropriate, or can be spelled.
if out_current.builtin == 'hand' then
return cvt_to_hand(parms, info, in_current, out_current)
end
local invalue = in_current.builtin == 'hand' and info.altvalue or info.value
local outvalue, extra = convert(parms, invalue, info, in_current, out_current)
if parms.need_table_or_sort then
parms.need_table_or_sort = nil -- process using first input value only
make_table_or_sort(parms, invalue, info, in_current)
end
if extra then
if not outvalue then return false, extra end
invalue = extra.invalue or invalue
outvalue = extra.outvalue
end
if not valid_number(outvalue) then
return false, { 'cvt_invalid_num' }
end
local isnegative
if outvalue < 0 then
isnegative = true
outvalue = -outvalue
end
local precision, show, exponent
local denominator = out_current.frac
if denominator then
show = fraction_table(outvalue, denominator)
else
precision = parms.precision
if not precision then
if parms.sigfig then
show, exponent = make_sigfig(outvalue, parms.sigfig)
elseif parms.opt_round then
local n = parms.opt_round
if n == 0.5 then
local integer, fracpart = math.modf(floor(2 * outvalue + 0.5) / 2)
if fracpart == 0 then
show = format('%.0f', integer)
else
show = format('%.1f', integer + fracpart)
end
else
show = format('%.0f', floor((outvalue / n) + 0.5) * n)
end
else
local inclean = info.clean
if extra then
inclean = extra.clean or inclean
show = extra.show
end
if not show then
precision = default_precision(parms, invalue, inclean, info.denominator, outvalue, in_current, out_current, extra)
end
end
end
end
if precision then
if precision >= 0 then
local fudge
if precision <= 8 then
-- Add a fudge to handle common cases of bad rounding due to inability
-- to precisely represent some values. This makes the following work:
-- {{convert|-100.1|C|K}} and {{convert|5555000|um|m|2}}.
-- Old template uses #expr round, which invokes PHP round().
-- LATER: Investigate how PHP round() works.
fudge = 2e-14
else
fudge = 0
end
local fmt = '%.' .. format('%d', precision) .. 'f'
local success
success, show = pcall(format, fmt, outvalue + fudge)
if not success then
return false, { 'cvt_big_prec', tostring(precision) }
end
else
precision = -precision -- #digits to zero (in addition to any digits after dot)
local shift = 10 ^ precision
show = format('%.0f', outvalue/shift)
if show ~= '0' then
exponent = #show + precision
end
end
end
local t = format_number(parms, show, exponent, isnegative)
if type(show) == 'string' then
-- Set singular using match because on some systems 0.99999999999999999 is 1.0.
if exponent then
t.singular = (exponent == 1 and show:match('^10*$'))
else
t.singular = (show == '1' or show:match('^1%.0*$'))
end
else
t.fraction_table = show
t.singular = (outvalue <= 1) -- cannot have 'fraction == 1', but if it were possible it would be singular
end
t.raw_absvalue = outvalue -- absolute value before rounding
return true, setmetatable(t, {
__index = function (self, key)
if key == 'absvalue' then
-- Calculate absolute value after rounding, if needed.
local clean, exponent = rawget(self, 'clean'), rawget(self, 'exponent')
local value = tonumber(clean) -- absolute value (any negative sign has been ignored)
if exponent then
value = value * 10^exponent
end
rawset(self, key, value)
return value
end
end })
end
function cvt_to_hand(parms, info, in_current, out_current)
-- Convert input to hands, inches.
-- Return true, t where t is a table with the conversion results;
-- or return false, t where t is an error message table.
if parms.abbr_org == nil then
out_current.usename = true -- default is to show name not symbol
end
local precision = parms.precision
local frac = out_current.frac
if not frac and precision and precision > 1 then
frac = (precision == 2) and 2 or 4
end
local out_next = out_current.out_next
if out_next then
-- Use magic knowledge to determine whether the next unit is inches without requiring i18n.
-- The following ensures that when the output combination "hand in" is used, the inches
-- value is rounded to match the hands value. Also, displaying say "61½" instead of 61.5
-- is better as 61.5 implies the value is not 61.4.
if out_next.exception == 'subunit_more_precision' then
out_next.frac = frac
end
end
-- Convert to inches; calculate hands from that.
local dummy_unit_table = { scale = out_current.scale / 4, frac = frac }
local success, outinfo = cvtround(parms, info, in_current, dummy_unit_table)
if not success then return false, outinfo end
local tfrac = outinfo.fraction_table
local inches = outinfo.raw_absvalue
if tfrac then
inches = floor(inches) -- integer part only; fraction added later
else
inches = floor(inches + 0.5) -- a hands measurement never shows decimals of an inch
end
local hands, inches = divide(inches, 4)
outinfo.absvalue = hands + inches/4 -- supposed to be the absolute rounded value, but this is close enough
local inchstr = tostring(inches) -- '0', '1', '2' or '3'
if precision and precision <= 0 then -- using negative or 0 for precision rounds to nearest hand
hands = floor(outinfo.raw_absvalue/4 + 0.5)
inchstr = ''
elseif tfrac then
-- Always show an integer before fraction (like "15.0½") because "15½" means 15-and-a-half hands.
inchstr = numdot .. format_fraction(parms, 'out', false, inchstr, tfrac.numstr, tfrac.denstr)
else
inchstr = numdot .. from_en(inchstr)
end
outinfo.show = outinfo.sign .. with_separator(parms, format('%.0f', hands)) .. inchstr
return true, outinfo
end
local function evaluate_condition(value, condition)
-- Return true or false from applying a conditional expression to value,
-- or throw an error if invalid.
-- A very limited set of expressions is supported:
-- v < 9
-- v * 9 < 9
-- where
-- 'v' is replaced with value
-- 9 is any number (as defined by Lua tonumber)
-- only en digits are accepted
-- '<' can also be '<=' or '>' or '>='
-- In addition, the following form is supported:
-- LHS and RHS
-- where
-- LHS, RHS = any of above expressions.
local function compare(value, text)
local arithop, factor, compop, limit = text:match('^%s*v%s*([*]?)(.-)([<>]=?)(.*)$')
if arithop == nil then
error('Invalid default expression', 0)
elseif arithop == '*' then
factor = tonumber(factor)
if factor == nil then
error('Invalid default expression', 0)
end
value = value * factor
end
limit = tonumber(limit)
if limit == nil then
error('Invalid default expression', 0)
end
if compop == '<' then
return value < limit
elseif compop == '<=' then
return value <= limit
elseif compop == '>' then
return value > limit
elseif compop == '>=' then
return value >= limit
end
error('Invalid default expression', 0) -- should not occur
end
local lhs, rhs = condition:match('^(.-%W)and(%W.*)')
if lhs == nil then
return compare(value, condition)
end
return compare(value, lhs) and compare(value, rhs)
end
local function get_default(value, unit_table)
-- Return true, s where s = name of unit's default output unit,
-- or return false, t where t is an error message table.
-- Some units have a default that depends on the input value
-- (the first value if a range of values is used).
-- If '!' is in the default, the first bang-delimited field is an
-- expression that uses 'v' to represent the input value.
-- Example: 'v < 120 ! small ! big ! suffix' (suffix is optional)
-- evaluates 'v < 120' as a boolean with result
-- 'smallsuffix' if (value < 120), or 'bigsuffix' otherwise.
-- Input must use en digits and '.' decimal mark.
local default = data_code.default_exceptions[unit_table.defkey or unit_table.symbol] or unit_table.default
if not default then
local per = unit_table.per
if per then
local function a_default(v, u)
local success, ucode = get_default(v, u)
if not success then
return '?' -- an unlikely error has occurred; will cause lookup of default to fail
end
-- Attempt to use only the first unit if a combination or output multiple.
-- This is not bulletproof but should work for most cases.
-- Where it does not work, the convert will need to specify the wanted output unit.
local t = all_units[ucode]
if t then
local combo = t.combination
if combo then
-- For a multiple like ftin, the "first" unit (ft) is last in the combination.
local i = t.multiple and table_len(combo) or 1
ucode = combo[i]
end
else
-- Try for an automatically generated combination.
local item = ucode:match('^(.-)%+') or ucode:match('^(%S+)%s')
if all_units[item] then
return item
end
end
return ucode
end
local unit1, unit2 = per[1], per[2]
local def1 = (unit1 and a_default(value, unit1) or unit_table.vprefix or '')
local def2 = a_default(1, unit2) -- 1 because per unit of denominator
return true, def1 .. '/' .. def2
end
return false, { 'cvt_no_default', unit_table.symbol }
end
if default:find('!', 1, true) == nil then
return true, default
end
local t = split(default, '!')
if #t == 3 or #t == 4 then
local success, result = pcall(evaluate_condition, value, t[1])
if success then
default = result and t[2] or t[3]
if #t == 4 then
default = default .. t[4]
end
return true, default
end
end
return false, { 'cvt_bad_default', unit_table.symbol }
end
local linked_pages -- to record linked pages so will not link to the same page more than once
local function unlink(unit_table)
-- Forget that the given unit has previously been linked (if it has).
-- That is needed when processing a range of inputs or outputs when an id
-- for the first range value may have been evaluated, but only an id for
-- the last value is displayed, and that id may need to be linked.
linked_pages[unit_table.unitcode or unit_table] = nil
end
local function make_link(link, id, unit_table)
-- Return wikilink "[[link|id]]", possibly abbreviated as in examples:
-- [[Mile|mile]] --> [[mile]]
-- [[Mile|miles]] --> [[mile]]s
-- However, just id is returned if:
-- * no link given (so caller does not need to check if a link was defined); or
-- * link has previously been used during the current convert (to avoid overlinking).
local link_key
if unit_table then
link_key = unit_table.unitcode or unit_table
else
link_key = link
end
if not link or link == '' or linked_pages[link_key] then
return id
end
linked_pages[link_key] = true
-- Following only works for language en, but it should be safe on other wikis,
-- and overhead of doing it generally does not seem worthwhile.
local l = link:sub(1, 1):lower() .. link:sub(2)
if link == id or l == id then
return '[[' .. id .. ']]'
elseif link .. 's' == id or l .. 's' == id then
return '[[' .. id:sub(1, -2) .. ']]s'
else
return '[[' .. link .. '|' .. id .. ']]'
end
end
local function variable_name(clean, unit_table)
-- For slwiki, a unit name depends on the value.
-- Parameter clean is the unsigned rounded value in en digits, as a string.
-- Value Source Example for "m"
-- integer 1: name1 meter (also is the name of the unit)
-- integer 2: var{1} metra
-- integer 3 and 4: var{2} metri
-- integer else: var{3} metrov (0 and 5 or more)
-- real/fraction: var{4} metra
-- var{i} means the i'th field in unit_table.varname if it exists and has
-- an i'th field, otherwise name2.
-- Fields are separated with "!" and are not empty.
-- A field for a unit using an SI prefix has the prefix name inserted,
-- replacing '#' if found, or before the field otherwise.
local vname
if clean == '1' then
vname = unit_table.name1
elseif unit_table.varname then
local i
if clean == '2' then
i = 1
elseif clean == '3' or clean == '4' then
i = 2
elseif clean:find('.', 1, true) then
i = 4
else
i = 3
end
if i > 1 and varname == 'pl' then
i = i - 1
end
vname = split(unit_table.varname, '!')[i]
end
if vname then
local si_name = rawget(unit_table, 'si_name') or ''
local pos = vname:find('#', 1, true)
if pos then
vname = vname:sub(1, pos - 1) .. si_name .. vname:sub(pos + 1)
else
vname = si_name .. vname
end
return vname
end
return unit_table.name2
end
local function linked_id(parms, unit_table, key_id, want_link, clean)
-- Return final unit id (symbol or name), optionally with a wikilink,
-- and update unit_table.sep if required.
-- key_id is one of: 'symbol', 'sym_us', 'name1', 'name1_us', 'name2', 'name2_us'.
local abbr_on = (key_id == 'symbol' or key_id == 'sym_us')
if abbr_on and want_link then
local symlink = rawget(unit_table, 'symlink')
if symlink then
return symlink -- for exceptions that have the linked symbol built-in
end
end
local multiplier = rawget(unit_table, 'multiplier')
local per = unit_table.per
if per then
local paren1, paren2 = '', '' -- possible parentheses around bottom unit
local unit1 = per[1] -- top unit_table, or nil
local unit2 = per[2] -- bottom unit_table
if abbr_on then
if not unit1 then
unit_table.sep = '' -- no separator in "$2/acre"
end
if not want_link then
local symbol = unit_table.symbol_raw
if symbol then
return symbol -- for exceptions that have the symbol built-in
end
end
if (unit2.symbol):find('⋅', 1, true) then
paren1, paren2 = '(', ')'
end
end
local key_id2 -- unit2 is always singular
if key_id == 'name2' then
key_id2 = 'name1'
elseif key_id == 'name2_us' then
key_id2 = 'name1_us'
else
key_id2 = key_id
end
local result
if abbr_on then
result = '/'
elseif omitsep then
result = per_word
elseif unit1 then
result = ' ' .. per_word .. ' '
else
result = per_word .. ' '
end
if want_link and unit_table.link then
if abbr_on or not varname then
result = (unit1 and linked_id(parms, unit1, key_id, false, clean) or '') .. result .. linked_id(parms, unit2, key_id2, false, '1')
else
result = (unit1 and variable_name(clean, unit1) or '') .. result .. variable_name('1', unit2)
end
if omit_separator(result) then
unit_table.sep = ''
end
return make_link(unit_table.link, result, unit_table)
end
if unit1 then
result = linked_id(parms, unit1, key_id, want_link, clean) .. result
if unit1.sep then
unit_table.sep = unit1.sep
end
elseif omitsep then
unit_table.sep = ''
end
return result .. paren1 .. linked_id(parms, unit2, key_id2, want_link, '1') .. paren2
end
if multiplier then
-- A multiplier (like "100" in "100km") forces the unit to be plural.
multiplier = from_en(multiplier)
if not omitsep then
multiplier = multiplier .. (abbr_on and ' ' or ' ')
end
if not abbr_on then
if key_id == 'name1' then
key_id = 'name2'
elseif key_id == 'name1_us' then
key_id = 'name2_us'
end
end
else
multiplier = ''
end
local id = unit_table.fixed_name or ((varname and not abbr_on) and variable_name(clean, unit_table) or unit_table[key_id])
if omit_separator(id) then
unit_table.sep = ''
end
if want_link then
local link = data_code.link_exceptions[unit_table.linkey or unit_table.symbol] or unit_table.link
if link then
local before = ''
local i = unit_table.customary
if i == 1 and parms.opt_sp_us then
i = 2 -- show "U.S." not "US"
end
if i == 3 and abbr_on then
i = 4 -- abbreviate "imperial" to "imp"
end
local customary = text_code.customary_units[i]
if customary then
-- LATER: This works for language en only, but it's esoteric so ignore for now.
local pertext
if id:sub(1, 1) == '/' then
-- Want unit "/USgal" to display as "/U.S. gal", not "U.S. /gal".
pertext = '/'
id = id:sub(2)
elseif id:sub(1, 4) == 'per ' then
-- Similarly want "per U.S. gallon", not "U.S. per gallon" (but in practice this is unlikely to be used).
pertext = 'per '
id = id:sub(5)
else
pertext = ''
end
-- Omit any "US"/"U.S."/"imp"/"imperial" from start of id since that will be inserted.
local removes = (i < 3) and { 'US ', 'US ', 'U.S. ', 'U.S. ' } or { 'imp ', 'imp ', 'imperial ' }
for _, prefix in ipairs(removes) do
local plen = #prefix
if id:sub(1, plen) == prefix then
id = id:sub(plen + 1)
break
end
end
before = pertext .. make_link(customary.link, customary[1]) .. ' '
end
id = before .. make_link(link, id, unit_table)
end
end
return multiplier .. id
end
local function make_id(parms, which, unit_table)
-- Return id, f where
-- id = unit name or symbol, possibly modified
-- f = true if id is a name, or false if id is a symbol
-- using the value for index 'which', and for 'in' or 'out' (unit_table.inout).
-- Result is '' if no symbol/name is to be used.
-- In addition, set unit_table.sep = ' ' or ' ' or ''
-- (the separator that caller will normally insert before the id).
if parms.opt_values then
unit_table.sep = ''
return ''
end
local inout = unit_table.inout
local info = unit_table.valinfo[which]
local abbr_org = parms.abbr_org
local adjectival = parms.opt_adjectival
local lk = parms.lk
local want_link = (lk == 'on' or lk == inout)
local usename = unit_table.usename
local singular = info.singular
local want_name
if usename then
want_name = true
else
if abbr_org == nil then
if parms.wantname then
want_name = true
end
if unit_table.usesymbol then
want_name = false
end
end
if want_name == nil then
local abbr = parms.abbr
if abbr == 'on' or abbr == inout or (abbr == 'mos' and inout == 'out') then
want_name = false
else
want_name = true
end
end
end
local key
if want_name then
if lk == nil and unit_table.builtin == 'hand' then
want_link = true
end
if parms.opt_use_nbsp then
unit_table.sep = ' '
else
unit_table.sep = ' '
end
if parms.opt_singular then
local value
if inout == 'in' then
value = info.value
else
value = info.absvalue
end
if value then -- some unusual units do not always set value field
value = abs(value)
singular = (0 < value and value < 1.0001)
end
end
if unit_table.engscale then
-- engscale: so "|1|e3kg" gives "1 thousand kilograms" (plural)
singular = false
end
key = (adjectival or singular) and 'name1' or 'name2'
if parms.opt_sp_us then
key = key .. '_us'
end
else
if unit_table.builtin == 'hand' then
if parms.opt_hand_hh then
unit_table.symbol = 'hh' -- LATER: might want i18n applied to this
end
end
unit_table.sep = ' '
key = parms.opt_sp_us and 'sym_us' or 'symbol'
end
return linked_id(parms, unit_table, key, want_link, info.clean), want_name
end
local function decorate_value(parms, unit_table, which, number_word)
-- If needed, update unit_table so values will be shown with extra information.
-- For consistency with the old template (but different from fmtpower),
-- the style to display powers of 10 includes "display:none" to allow some
-- browsers to copy, for example, "10³" as "10^3", rather than as "103".
local info
local engscale = unit_table.engscale
local prefix = unit_table.vprefix
if engscale or prefix then
info = unit_table.valinfo[which]
if info.decorated then
return -- do not redecorate if repeating convert
end
info.decorated = true
if engscale then
local inout = unit_table.inout
local abbr = parms.abbr
if (abbr == 'on' or abbr == inout) and not parms.number_word then
info.show = info.show ..
'<span style="margin-left:0.2em">×<span style="margin-left:0.1em">' ..
from_en('10') ..
'</span></span><s style="display:none">^</s><sup>' ..
from_en(tostring(engscale.exponent)) .. '</sup>'
elseif number_word then
local number_id
local lk = parms.lk
if lk == 'on' or lk == inout then
number_id = make_link(engscale.link, engscale[1])
else
number_id = engscale[1]
end
-- WP:NUMERAL recommends " " in values like "12 million".
info.show = info.show .. (parms.opt_adjectival and '-' or ' ') .. number_id
end
end
if prefix then
info.show = prefix .. info.show
end
end
end
local function process_input(parms, in_current)
-- Processing required once per conversion.
-- Return block of text to represent input (value/unit).
if parms.opt_output_only or parms.opt_output_number_only or parms.opt_output_unit_only then
parms.joins = { '', '' }
return ''
end
local first_unit
local composite = in_current.composite -- nil or table of units
if composite then
first_unit = composite[1]
else
first_unit = in_current
end
local id1, want_name = make_id(parms, 1, first_unit)
local sep = first_unit.sep -- separator between value and unit, set by make_id
local preunit = parms.preunit1
if preunit then
sep = '' -- any separator is included in preunit
else
preunit = ''
end
if parms.opt_input_unit_only then
parms.joins = { '', '' }
if composite then
local parts = { id1 }
for i, unit in ipairs(composite) do
if i > 1 then
table.insert(parts, (make_id(parms, 1, unit)))
end
end
id1 = table.concat(parts, ' ')
end
if want_name and parms.opt_adjectival then
return preunit .. hyphenated(id1)
end
return preunit .. id1
end
if parms.opt_also_symbol and not composite and not parms.opt_flip then
local join1 = parms.joins[1]
if join1 == ' (' or join1 == ' [' then
parms.joins = { ' [' .. first_unit[parms.opt_sp_us and 'sym_us' or 'symbol'] .. ']' .. join1 , parms.joins[2] }
end
end
if in_current.builtin == 'mach' and first_unit.sep ~= '' then -- '' means omitsep with non-enwiki name
local prefix = id1 .. ' '
local range = parms.range
local valinfo = first_unit.valinfo
local result = prefix .. valinfo[1].show
if range then
-- For simplicity and because more not needed, handle one range item only.
local prefix2 = make_id(parms, 2, first_unit) .. ' '
result = range_text(range[1], want_name, parms, result, prefix2 .. valinfo[2].show, 'in')
end
return preunit .. result
end
if composite then
-- Simplify: assume there is no range, and no decoration.
local mid = (not parms.opt_flip) and parms.mid or ''
local sep1 = ' '
local sep2 = ' '
if parms.opt_adjectival and want_name then
sep1 = '-'
sep2 = '-'
end
if omitsep and sep == '' then
-- Testing the id of the most significant unit should be sufficient.
sep1 = ''
sep2 = ''
end
local parts = { first_unit.valinfo[1].show .. sep1 .. id1 }
for i, unit in ipairs(composite) do
if i > 1 then
table.insert(parts, unit.valinfo[1].show .. sep1 .. (make_id(parms, 1, unit)))
end
end
return table.concat(parts, sep2) .. mid
end
local add_unit = (parms.abbr == 'mos') or
parms[parms.opt_flip and 'out_range_x' or 'in_range_x'] or
(not want_name and parms.abbr_range_x)
local range = parms.range
if range and not add_unit then
unlink(first_unit)
end
local id = range and make_id(parms, range.n + 1, first_unit) or id1
local extra, was_hyphenated = hyphenated_maybe(parms, want_name, sep, id, 'in')
if was_hyphenated then
add_unit = false
end
local result
local valinfo = first_unit.valinfo
if range then
for i = 0, range.n do
local number_word
if i == range.n then
add_unit = false
number_word = true
end
decorate_value(parms, first_unit, i+1, number_word)
local show = valinfo[i+1].show
if add_unit then
show = show .. first_unit.sep .. (i == 0 and id1 or make_id(parms, i+1, first_unit))
end
if i == 0 then
result = show
else
result = range_text(range[i], want_name, parms, result, show, 'in')
end
end
else
decorate_value(parms, first_unit, 1, true)
result = valinfo[1].show
end
return result .. preunit .. extra
end
local function process_one_output(parms, out_current)
-- Processing required for each output unit.
-- Return block of text to represent output (value/unit).
local inout = out_current.inout -- normally 'out' but can be 'in' for order=out
local id1, want_name = make_id(parms, 1, out_current)
local sep = out_current.sep -- set by make_id
local preunit = parms.preunit2
if preunit then
sep = '' -- any separator is included in preunit
else
preunit = ''
end
if parms.opt_output_unit_only then
if want_name and parms.opt_adjectival then
return preunit .. hyphenated(id1)
end
return preunit .. id1
end
if out_current.builtin == 'mach' and out_current.sep ~= '' then -- '' means omitsep with non-enwiki name
local prefix = id1 .. ' '
local range = parms.range
local valinfo = out_current.valinfo
local result = prefix .. valinfo[1].show
if range then
-- For simplicity and because more not needed, handle one range item only.
result = range_text(range[1], want_name, parms, result, prefix .. valinfo[2].show, inout)
end
return preunit .. result
end
local add_unit = (parms[parms.opt_flip and 'in_range_x' or 'out_range_x'] or
(not want_name and parms.abbr_range_x)) and
not parms.opt_output_number_only
local range = parms.range
if range and not add_unit then
unlink(out_current)
end
local id = range and make_id(parms, range.n + 1, out_current) or id1
local extra, was_hyphenated = hyphenated_maybe(parms, want_name, sep, id, inout)
if was_hyphenated then
add_unit = false
end
local result
local valinfo = out_current.valinfo
if range then
for i = 0, range.n do
local number_word
if i == range.n then
add_unit = false
number_word = true
end
decorate_value(parms, out_current, i+1, number_word)
local show = valinfo[i+1].show
if add_unit then
show = show .. out_current.sep .. (i == 0 and id1 or make_id(parms, i+1, out_current))
end
if i == 0 then
result = show
else
result = range_text(range[i], want_name, parms, result, show, inout)
end
end
else
decorate_value(parms, out_current, 1, true)
result = valinfo[1].show
end
if parms.opt_output_number_only then
return result
end
return result .. preunit .. extra
end
local function make_output_single(parms, in_unit_table, out_unit_table)
-- Return true, item where item = wikitext of the conversion result
-- for a single output (which is not a combination or a multiple);
-- or return false, t where t is an error message table.
if parms.opt_order_out and in_unit_table.unitcode == out_unit_table.unitcode then
out_unit_table.valinfo = in_unit_table.valinfo
else
out_unit_table.valinfo = collection()
for _, v in ipairs(in_unit_table.valinfo) do
local success, info = cvtround(parms, v, in_unit_table, out_unit_table)
if not success then return false, info end
out_unit_table.valinfo:add(info)
end
end
return true, process_one_output(parms, out_unit_table)
end
local function make_output_multiple(parms, in_unit_table, out_unit_table)
-- Return true, item where item = wikitext of the conversion result
-- for an output which is a multiple (like 'ftin');
-- or return false, t where t is an error message table.
local inout = out_unit_table.inout -- normally 'out' but can be 'in' for order=out
local multiple = out_unit_table.multiple -- table of scaling factors (will not be nil)
local combos = out_unit_table.combination -- table of unit tables (will not be nil)
local abbr = parms.abbr
local abbr_org = parms.abbr_org
local disp = parms.disp
local want_name = (abbr_org == nil and (disp == 'or' or disp == 'slash')) or
not (abbr == 'on' or abbr == inout or abbr == 'mos')
local want_link = (parms.lk == 'on' or parms.lk == inout)
local mid = parms.opt_flip and parms.mid or ''
local sep1 = ' '
local sep2 = ' '
if parms.opt_adjectival and want_name then
sep1 = '-'
sep2 = '-'
end
local do_spell = parms.opt_spell_out
parms.opt_spell_out = nil -- so the call to cvtround does not spell the value
local function make_result(info, isfirst)
local fmt, outvalue, sign
local results = {}
for i = 1, #combos do
local tfrac, thisvalue, strforce
local out_current = combos[i]
out_current.inout = inout
local scale = multiple[i]
if i == 1 then -- least significant unit ('in' from 'ftin')
local decimals
out_current.frac = out_unit_table.frac
local success, outinfo = cvtround(parms, info, in_unit_table, out_current)
if not success then return false, outinfo end
if isfirst then
out_unit_table.valinfo = { outinfo } -- in case output value of first least significant unit is needed
end
sign = outinfo.sign
tfrac = outinfo.fraction_table
if outinfo.is_scientific then
strforce = outinfo.show
decimals = ''
elseif tfrac then
decimals = ''
else
local show = outinfo.show -- number as a string in local language
local p1, p2 = show:find(numdot, 1, true)
decimals = p1 and show:sub(p2 + 1) or '' -- text after numdot, if any
end
fmt = '%.' .. ulen(decimals) .. 'f' -- to reproduce precision
if decimals == '' then
if tfrac then
outvalue = floor(outinfo.raw_absvalue) -- integer part only; fraction added later
else
outvalue = floor(outinfo.raw_absvalue + 0.5) -- keep all integer digits of least significant unit
end
else
outvalue = outinfo.absvalue
end
end
if scale then
outvalue, thisvalue = divide(outvalue, scale)
else
thisvalue = outvalue
end
local id
if want_name then
if varname then
local clean
if strforce or tfrac then
clean = '.1' -- dummy value to force name for floating point
else
clean = format(fmt, thisvalue)
end
id = variable_name(clean, out_current)
else
local key = 'name2'
if parms.opt_adjectival then
key = 'name1'
elseif tfrac then
if thisvalue == 0 then
key = 'name1'
end
elseif parms.opt_singular then
if 0 < thisvalue and thisvalue < 1.0001 then
key = 'name1'
end
else
if thisvalue == 1 then
key = 'name1'
end
end
id = out_current[key]
end
else
id = out_current['symbol']
end
if i == 1 and omit_separator(id) then
-- Testing the id of the least significant unit should be sufficient.
sep1 = ''
sep2 = ''
end
if want_link then
local link = out_current.link
if link then
id = make_link(link, id, out_current)
end
end
local strval
local spell_inout = (i == #combos or outvalue == 0) and inout or '' -- trick so the last value processed (first displayed) has uppercase, if requested
if strforce and outvalue == 0 then
sign = '' -- any sign is in strforce
strval = strforce -- show small values in scientific notation; will only use least significant unit
elseif tfrac then
local wholestr = (thisvalue > 0) and tostring(thisvalue) or nil
strval = format_fraction(parms, spell_inout, false, wholestr, tfrac.numstr, tfrac.denstr, do_spell)
else
strval = (thisvalue == 0) and from_en('0') or with_separator(parms, format(fmt, thisvalue))
if do_spell then
strval = spell_number(parms, spell_inout, strval) or strval
end
end
table.insert(results, strval .. sep1 .. id)
if outvalue == 0 then
break
end
fmt = '%.0f' -- only least significant unit can have a non-integral value
end
local reversed, count = {}, #results
for i = 1, count do
reversed[i] = results[count + 1 - i]
end
return true, sign .. table.concat(reversed, sep2)
end
local valinfo = in_unit_table.valinfo
local success, result = make_result(valinfo[1], true)
if not success then return false, result end
local range = parms.range
if range then
for i = 1, range.n do
local success, result2 = make_result(valinfo[i+1])
if not success then return false, result2 end
result = range_text(range[i], want_name, parms, result, result2, inout)
end
end
return true, result .. mid
end
local function process(parms, in_unit_table, out_unit_table)
-- Return true, s, outunit where s = final wikitext result,
-- or return false, t where t is an error message table.
linked_pages = {}
local success, bad_output
local bad_input_mcode = in_unit_table.bad_mcode -- nil if input unit is a valid convert unit
local out_unit = parms.out_unit
if out_unit == nil or out_unit == '' or type(out_unit) == 'function' then
if bad_input_mcode or parms.opt_input_unit_only then
bad_output = ''
else
local getdef = type(out_unit) == 'function' and out_unit or get_default
success, out_unit = getdef(in_unit_table.valinfo[1].value, in_unit_table)
parms.out_unit = out_unit
if not success then
bad_output = out_unit
end
end
end
if not bad_output and not out_unit_table then
success, out_unit_table = lookup(parms, out_unit, 'any_combination')
if success then
local mismatch = check_mismatch(in_unit_table, out_unit_table)
if mismatch then
bad_output = mismatch
end
else
bad_output = out_unit_table
end
end
local lhs, rhs
local flipped = parms.opt_flip and not bad_input_mcode
if bad_output then
rhs = (bad_output == '') and '' or message(parms, bad_output)
elseif parms.opt_input_unit_only then
rhs = ''
else
local combos -- nil (for 'ft' or 'ftin'), or table of unit tables (for 'm ft')
if not out_unit_table.multiple then -- nil/false ('ft' or 'm ft'), or table of factors ('ftin')
combos = out_unit_table.combination
end
local frac = parms.frac -- nil or denominator of fraction for output values
if frac then
-- Apply fraction to the unit (if only one), or to non-SI units (if a combination),
-- except that if a precision is also specified, the fraction only applies to
-- the hand unit; that allows the following result:
-- {{convert|156|cm|in hand|1|frac=2}} → 156 centimetres (61.4 in; 15.1½ hands)
-- However, the following is handled elsewhere as a special case:
-- {{convert|156|cm|hand in|1|frac=2}} → 156 centimetres (15.1½ hands; 61½ in)
if combos then
local precision = parms.precision
for _, unit in ipairs(combos) do
if unit.builtin == 'hand' or (not precision and not unit.prefixes) then
unit.frac = frac
end
end
else
out_unit_table.frac = frac
end
end
local outputs = {}
local imax = combos and #combos or 1 -- 1 (single unit) or number of unit tables
if imax == 1 then
parms.opt_order_out = nil -- only useful with an output combination
end
if not flipped and not parms.opt_order_out then
-- Process left side first so any duplicate links (from lk=on) are suppressed
-- on right. Example: {{convert|28|e9pc|e9ly|abbr=off|lk=on}}
lhs = process_input(parms, in_unit_table)
end
for i = 1, imax do
local success, item
local out_current = combos and combos[i] or out_unit_table
out_current.inout = 'out'
if i == 1 then
if imax > 1 and out_current.builtin == 'hand' then
out_current.out_next = combos[2] -- built-in hand can influence next unit in a combination
end
if parms.opt_order_out then
out_current.inout = 'in'
end
end
if out_current.multiple then
success, item = make_output_multiple(parms, in_unit_table, out_current)
else
success, item = make_output_single(parms, in_unit_table, out_current)
end
if not success then return false, item end
outputs[i] = item
end
if parms.opt_order_out then
lhs = outputs[1]
table.remove(outputs, 1)
end
local sep = parms.table_joins and parms.table_joins[2] or parms.join_between
rhs = table.concat(outputs, sep)
end
if flipped or not lhs then
local input = process_input(parms, in_unit_table)
if flipped then
lhs = rhs
rhs = input
else
lhs = input
end
end
if parms.join_before then
lhs = parms.join_before .. lhs
end
local wikitext
if bad_input_mcode then
if bad_input_mcode == '' then
wikitext = lhs
else
wikitext = lhs .. message(parms, bad_input_mcode)
end
elseif parms.table_joins then
wikitext = parms.table_joins[1] .. lhs .. parms.table_joins[2] .. rhs
else
wikitext = lhs .. parms.joins[1] .. rhs .. parms.joins[2]
end
if parms.warnings and not bad_input_mcode then
wikitext = wikitext .. parms.warnings
end
return true, wikitext, out_unit_table
end
local function main_convert(frame)
-- Do convert, and if needed, do it again with higher default precision.
local parms = { frame = frame } -- will hold template arguments, after translation
set_config(frame.args)
local success, result = get_parms(parms, frame:getParent().args)
if success then
if type(result) ~= 'table' then
return tostring(result)
end
local in_unit_table = result
local out_unit_table
for _ = 1, 2 do -- use counter so cannot get stuck repeating convert
success, result, out_unit_table = process(parms, in_unit_table, out_unit_table)
if success and parms.do_convert_again then
parms.do_convert_again = false
else
break
end
end
end
-- If input=x gives a problem, the result should be just the user input
-- (if x is a property like P123 it has been replaced with '').
-- An unknown input unit would display the input and an error message
-- with success == true at this point.
-- Also, can have success == false with a message that outputs an empty string.
if parms.input_text then
if success and not parms.have_problem then
return result
end
local cat
if parms.tracking then
-- Add a tracking category using the given text as the category sort key.
-- There is currently only one type of tracking, but in principle multiple
-- items could be tracked, using different sort keys for convenience.
cat = wanted_category('tracking', parms.tracking)
end
return parms.input_text .. (cat or '')
end
return success and result or message(parms, result)
end
local function _unit(unitcode, options)
-- Helper function for Module:Val to look up a unit.
-- Parameter unitcode must be a string to identify the wanted unit.
-- Parameter options must be nil or a table with optional fields:
-- value = number (for sort key; default value is 1)
-- scaled_top = nil for a normal unit, or a number for a unit which is
-- the denominator of a per unit (for sort key)
-- si = { 'symbol', 'link' }
-- (a table with two strings) to make an SI unit
-- that will be used for the look up
-- link = true if result should be [[linked]]
-- sort = 'on' or 'debug' if result should include a sort key in a
-- span element ('debug' makes the key visible)
-- name = true for the name of the unit instead of the symbol
-- us = true for the US spelling of the unit, if any
-- Return nil if unitcode is not a non-empty string.
-- Otherwise return a table with fields:
-- text = requested symbol or name of unit, optionally linked
-- scaled_value = input value adjusted by unit scale; used for sort key
-- sortspan = span element with sort key like that provided by {{ntsh}},
-- calculated from the result of converting value
-- to a base unit with scale 1.
-- unknown = true if the unitcode was not known
unitcode = strip(unitcode)
if unitcode == nil or unitcode == '' then
return nil
end
set_config({})
linked_pages = {}
options = options or {}
local parms = {
abbr = options.name and 'off' or 'on',
lk = options.link and 'on' or nil,
opt_sp_us = options.us and true or nil,
opt_ignore_error = true, -- do not add pages using this function to 'what links here' for Module:Convert/extra
opt_sortable_on = options.sort == 'on' or options.sort == 'debug',
opt_sortable_debug = options.sort == 'debug',
}
if options.si then
-- Make a dummy table of units (just one unit) for lookup to use.
-- This makes lookup recognize any SI prefix in the unitcode.
local symbol = options.si[1] or '?'
parms.unittable = { [symbol] = {
_name1 = symbol,
_name2 = symbol,
_symbol = symbol,
utype = symbol,
scale = symbol == 'g' and 0.001 or 1,
prefixes = 1,
default = symbol,
link = options.si[2],
}}
end
local success, unit_table = lookup(parms, unitcode, 'no_combination')
if not success then
unit_table = setmetatable({
symbol = unitcode, name2 = unitcode, utype = unitcode,
scale = 1, default = '', defkey = '', linkey = '' }, unit_mt)
end
local value = tonumber(options.value) or 1
local clean = tostring(abs(value))
local info = {
value = value,
altvalue = value,
singular = (clean == '1'),
clean = clean,
show = clean,
}
unit_table.inout = 'in'
unit_table.valinfo = { info }
local sortspan, scaled_value
if options.sort then
sortspan, scaled_value = make_table_or_sort(parms, value, info, unit_table, options.scaled_top)
end
return {
text = make_id(parms, 1, unit_table),
sortspan = sortspan,
scaled_value = scaled_value,
unknown = not success and true or nil,
}
end
return { convert = main_convert, _unit = _unit }
rpuanoknhx2zl3fz1qtuepzi19bh9t7
Module:ConvertNumeric
828
3479
36694
2025-12-15T22:16:30Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Module for converting between different representations of numbers. See talk page for user documentation. -- For unit tests see: [[Module:ConvertNumeric/testcases]] -- When editing, preview with: Module_talk:ConvertNumeric/testcases -- First edit [[Module:ConvertNumeric/sandbox]] and preview with Module_talk:ConvertNumeric/sandbox/testcases local ones_position = { [0] = 'μηδέν', [1] = 'ένα', [2] = 'δύο', [3] = 'τρία', [4] =...'
36694
Scribunto
text/plain
-- Module for converting between different representations of numbers. See talk page for user documentation.
-- For unit tests see: [[Module:ConvertNumeric/testcases]]
-- When editing, preview with: Module_talk:ConvertNumeric/testcases
-- First edit [[Module:ConvertNumeric/sandbox]] and preview with Module_talk:ConvertNumeric/sandbox/testcases
local ones_position = {
[0] = 'μηδέν',
[1] = 'ένα',
[2] = 'δύο',
[3] = 'τρία',
[4] = 'τέσσερα',
[5] = 'πέντε',
[6] = 'έξι',
[7] = 'επτά',
[8] = 'οκτώ',
[9] = 'εννέα',
[10] = 'δέκα',
[11] = 'έντεκα',
[12] = 'δώδεκα',
[13] = 'δεκατρία',
[14] = 'δεκατέσσερα',
[15] = 'δεκαπέντε',
[16] = 'δεκαέξι',
[17] = 'δεκαεπτά',
[18] = 'δεκαοκτώ',
[19] = 'δεκαεννέα'
}
local ones_position_ord = {
[0] = 'ουδένα',
[1] = 'πρώτο',
[2] = 'δεύτερο',
[3] = 'τρίτο',
[4] = 'τέταρτο',
[5] = 'πέμπτο',
[6] = 'έκτο',
[7] = 'έβδομο',
[8] = 'όγδοο',
[9] = 'ένατο',
[10] = 'δέκατο',
[11] = 'εντέκατο',
[12] = 'δωδέκατο',
[13] = 'δεκατοτρίτο',
[14] = 'δεκατοτέταρτο',
[15] = 'δεκατοπέμπτο',
[16] = 'δεκατοέκτο',
[17] = 'δεκατοέβδομο',
[18] = 'δεκατοόγδοο',
[19] = 'δεκατοένατο'
}
local ones_position_plural = {
[0] = 'μηδενικά',
[1] = 'άσοι',
[2] = 'δυάρια',
[3] = 'τριάρια',
[4] = 'τεσσάρια',
[5] = 'πεντάρια',
[6] = 'εξάρια',
[7] = 'επτάρια',
[8] = 'οκτάρια',
[9] = 'εννιάρια',
[10] = 'δεκάρια',
[11] = 'εντεκάρια',
[12] = 'δωδεκάρια',
[13] = 'δεκατριάρια',
[14] = 'δεκατεσσάρια',
[15] = 'δεκαπεντάρια',
[16] = 'δεκαεξάρια',
[17] = 'δεκαεπτάρια',
[18] = 'δεκαοκτάρια',
[19] = 'δεκαεννιάρια'
}
local tens_position = {
[2] = 'εικοσι',
[3] = 'τριαντα',
[4] = 'σαραντα',
[5] = 'πενηντα',
[6] = 'εξηντα',
[7] = 'εβδομηντα',
[8] = 'ογδοντα',
[9] = 'ενενηντα'
}
local tens_position_ord = {
[2] = 'εικοστό',
[3] = 'τριακοστό',
[4] = 'τεσσαρακοστό',
[5] = 'πεντηκοστό',
[6] = 'εξηκοστό',
[7] = 'εβδομηκοστό',
[8] = 'ογδοηκοστό',
[9] = 'ενενηκοστό'
}
local tens_position_plural = {
[2] = 'twenties',
[3] = 'thirties',
[4] = 'forties',
[5] = 'fifties',
[6] = 'sixties',
[7] = 'seventies',
[8] = 'eighties',
[9] = 'nineties'
}
local groups = {
[1] = 'χίλια',
[2] = 'εκατομμύριο',
[3] = 'δισεκατομμύριο',
[4] = 'τρισεκατομμύριο',
[5] = 'τετράκις εκατομμύριο',
[6] = 'πεντάκις εκατομμύριο',
[7] = 'εξάκις εκατομμύριο',
[8] = 'επτάκις εκατομμύριο',
[9] = 'οκτάκις εκατομμύριο',
[10] = 'εννεάκις εκατομμύριο',
[11] = 'δεκάκις εκατομμύριο',
[12] = 'εντεκάκις εκατομμύριο',
[13] = 'δωδεκάκις εκατομμύριο',
[14] = 'δεκατριάκις εκατομμύριο',
[15] = 'δεκατεσσεράκις εκατομμύριο',
[16] = 'δεκαπεντάκις εκατομμύριο',
[17] = 'δεκαεξάκις εκατομμύριο',
[18] = 'δεκαεπτάκις εκατομμύριο',
[19] = 'δεκαοκτάκις εκατομμύριο',
[20] = 'δεκαεννεάκις εκατομμύριο',
[21] = 'εικοσάκις εκατομμύριο',
[22] = 'εικοσιδυάκις εκατομμύριο',
[23] = 'εικοσιτριάκις εκατομμύριο',
[24] = 'εικοσιτεσσεράκις εκατομμύριο',
[25] = 'εικοσιπεντάκις εκατομμύριο',
[26] = 'εικοσιεξάκις εκατομμύριο',
[27] = 'εικοσιεπτάκις εκατομμύριο',
[28] = 'εικοσιοκτάκις εκατομμύριο',
[29] = 'εικοσιεννεάκις εκατομμύριο',
[30] = 'τριαντάκις εκατομμύριο',
[31] = 'τριανταενάκις εκατομμύριο',
[32] = 'τριανταδυάκις εκατομμύριο',
[33] = 'τριαντατριάκις εκατομμύριο',
[34] = 'τριαντατεσσεράκις εκατομμύριο',
[35] = 'τριανταπεντάκις εκατομμύριο',
[36] = 'τριανταεξάκις εκατομμύριο',
[37] = 'τριανταεπτάκις εκατομμύριο',
[38] = 'τριανταοκτάκις εκατομμύριο',
[39] = 'τριανταεννεάκις εκατομμύριο',
[40] = 'σαραντάκις εκατομμύριο',
[41] = 'σαρανταενάκις εκατομμύριο',
[51] = 'πενηνταενάκις εκατομμύριο',
[61] = 'εξηνταενάκις εκατομμύριο',
[71] = 'εβδομηνταενάκις εκατομμύριο',
[81] = 'ογδονταενάκις εκατομμύριο',
[91] = 'ενενηνταενάκις εκατομμύριο',
[101] = 'εκατονενάκις εκατομμύριο',
[102] = 'εκατονδυάκις εκατομμύριο',
[103] = 'εκατοντριάκις εκατομμύριο',
[104] = 'εκατοντεσσεράκις εκατομμύριο',
[111] = 'εκατονεντεκάκις εκατομμύριο',
[112] = 'εκατονδωδεκάκις εκατομμύριο',
[121] = 'εκατονεικοσιενάκις εκατομμύριο',
[122] = 'εκατονεικοσιδυάκις εκατομμύριο',
[131] = 'εκατοντριανταενάκις εκατομμύριο',
[141] = 'εκατονσαρανταενάκις εκατομμύριο',
[151] = 'εκατονπενηνταενάκις εκατομμύριο',
[161] = 'εκατονεξηνταενάκις εκατομμύριο',
[171] = 'εκατονεβδομηνταενάκις εκατομμύριο',
[181] = 'εκατονογδονταενάκις εκατομμύριο',
[191] = 'εκατονενενηνταενάκις εκατομμύριο',
[201] = 'διακοσιαεναενάκις εκατομμύριο',
[301] = 'τριακοσιαενάκις εκατομμύριο',
[401] = 'τετρακοσιαενάκις εκατομμύριο',
[501] = 'πεντακοσιαενάκις εκατομμύριο',
[601] = 'εξακοσιαενάκις εκατομμύριο',
[701] = 'επτακοσιαενάκις εκατομμύριο',
[801] = 'οκτακοσιαενάκις εκατομμύριο',
[901] = 'εννιακοσιαενάκις εκατομμύριο',
[1001] = 'μυριοεκατομμύριο',
}
local roman_numerals = {
I = 1,
V = 5,
X = 10,
L = 50,
C = 100,
D = 500,
M = 1000
}
-- Η μετατροπή σε ελληνικούς αριθμούς είναι στο Module:Greek
-- (To Module:Roman είναι πιο αξιόπιστο) Converts a given valid roman numeral (and some invalid roman numerals) to a number. Returns -1, errorstring on error
local function roman_to_numeral(roman)
if type(roman) ~= "string" then return -1, "roman numeral not a string" end
local rev = roman:reverse()
local raising = true
local last = 0
local result = 0
for i = 1, #rev do
local c = rev:sub(i, i)
local next = roman_numerals[c]
if next == nil then return -1, "roman numeral contains illegal character " .. c end
if next > last then
result = result + next
raising = true
elseif next < last then
result = result - next
raising = false
elseif raising then
result = result + next
else
result = result - next
end
last = next
end
return result
end
-- Converts a given integer between 0 and 100 to English text (e.g. 47 -> forty-seven)
local function numeral_to_english_less_100(num, ordinal, plural, zero)
local terminal_ones, terminal_tens
if ordinal then
terminal_ones = ones_position_ord
terminal_tens = tens_position_ord
elseif plural then
terminal_ones = ones_position_plural
terminal_tens = tens_position_plural
else
terminal_ones = ones_position
terminal_tens = tens_position
end
if num == 0 and zero ~= nil then
return zero
elseif num < 20 then
return terminal_ones[num]
elseif num % 10 == 0 then
return terminal_tens[num / 10]
else
return tens_position[math.floor(num / 10)] .. '-' .. terminal_ones[num % 10]
end
end
local function standard_suffix(ordinal, plural)
if ordinal then return 'ο' end
if plural then return 'α' end
return ''
end
-- Converts a given integer (in string form) between 0 and 1000 to English text (e.g. 47 -> forty-seven)
local function numeral_to_english_less_1000(num, use_and, ordinal, plural, zero)
num = tonumber(num)
if num < 100 then
return numeral_to_english_less_100(num, ordinal, plural, zero)
elseif num % 100 == 0 then
return ' εκατο' .. standard_suffix(ordinal, plural)
else
return ' εκατόν ' .. (use_and and 'και ' or '') .. numeral_to_english_less_100(num % 100, ordinal, plural, zero)
end
end
-- Converts a number expressed as a string in scientific notation to a string in standard decimal notation
-- e.g. 1.23E5 -> 123000, 1.23E-5 = .0000123. Conversion is exact, no rounding is performed.
local function scientific_notation_to_decimal(num)
local exponent, subs = num:gsub("^%-?%d*%.?%d*%-?[Ee]([+%-]?%d+)$", "%1")
if subs == 0 then return num end -- Input not in scientific notation, just return unmodified
exponent = tonumber(exponent)
local negative = num:find("^%-")
local _, decimal_pos = num:find("%.")
-- Mantissa will consist of all decimal digits with no decimal point
local mantissa = num:gsub("^%-?(%d*)%.?(%d*)%-?[Ee][+%-]?%d+$", "%1%2")
if negative and decimal_pos then decimal_pos = decimal_pos - 1 end
if not decimal_pos then decimal_pos = #mantissa + 1 end
local prev_len = #num
-- Remove leading zeros unless decimal point is in first position
while decimal_pos > 1 and mantissa:sub(1,1) == '0' do
mantissa = mantissa:sub(2)
decimal_pos = decimal_pos - 1
end
-- Shift decimal point right for exponent > 0
while exponent > 0 do
decimal_pos = decimal_pos + 1
exponent = exponent - 1
if decimal_pos > #mantissa + 1 then mantissa = mantissa .. '0' end
-- Remove leading zeros unless decimal point is in first position
while decimal_pos > 1 and mantissa:sub(1,1) == '0' do
mantissa = mantissa:sub(2)
decimal_pos = decimal_pos - 1
end
end
-- Shift decimal point left for exponent < 0
while exponent < 0 do
if decimal_pos == 1 then
mantissa = '0' .. mantissa
else
decimal_pos = decimal_pos - 1
end
exponent = exponent + 1
end
-- Insert decimal point in correct position and return
return (negative and '-' or '') .. mantissa:sub(1, decimal_pos - 1) .. '.' .. mantissa:sub(decimal_pos)
end
-- Rounds a number to the nearest integer (NOT USED)
local function round_num(x)
if x%1 >= 0.5 then
return math.ceil(x)
else
return math.floor(x)
end
end
-- Rounds a number to the nearest two-word number (round = up, down, or "on" for round to nearest)
-- Numbers with two digits before the decimal will be rounded to an integer as specified by round.
-- Larger numbers will be rounded to a number with only one nonzero digit in front and all other digits zero.
-- Negative sign is preserved and does not count towards word limit.
local function round_for_english(num, round)
-- If an integer with at most two digits, just return
if num:find("^%-?%d?%d%.?$") then return num end
local negative = num:find("^%-")
if negative then
-- We're rounding magnitude so flip it
if round == 'up' then round = 'down' elseif round == 'down' then round = 'up' end
end
-- If at most two digits before decimal, round to integer and return
local _, _, small_int, trailing_digits, round_digit = num:find("^%-?(%d?%d?)%.((%d)%d*)$")
if small_int then
local small_int_len = #small_int
if small_int == '' then small_int = '0' end
if (round == 'up' and trailing_digits:find('[1-9]')) or (round == 'on' and tonumber(round_digit) >= 5) then
small_int = tostring(tonumber(small_int) + 1)
end
return (negative and '-' or '') .. small_int
end
-- When rounding up, any number with > 1 nonzero digit will round up (e.g. 1000000.001 rounds up to 2000000)
local nonzero_digits = 0
for digit in num:gfind("[1-9]") do
nonzero_digits = nonzero_digits + 1
end
num = num:gsub("%.%d*$", "") -- Remove decimal part
-- Second digit used to determine which way to round lead digit
local _, _, lead_digit, round_digit, round_digit_2, rest = num:find("^%-?(%d)(%d)(%d)(%d*)$")
if tonumber(lead_digit .. round_digit) < 20 and (1 + #rest) % 3 == 0 then
-- In English numbers < 20 are one word so put 2 digits in lead and round based on 3rd
lead_digit = lead_digit .. round_digit
round_digit = round_digit_2
else
rest = round_digit_2 .. rest
end
if (round == 'up' and nonzero_digits > 1) or (round == 'on' and tonumber(round_digit) >= 5) then
lead_digit = tostring(tonumber(lead_digit) + 1)
end
-- All digits but lead digit will turn to zero
rest = rest:gsub("%d", "0")
return (negative and '-' or '') .. lead_digit .. '0' .. rest
end
local denominators = {
[2] = { 'μισό', plural = 'μισά' },
[3] = { 'τρίτο' },
[4] = { 'τέταρτο', us = 'τέταρτο' },
[5] = { 'πέμπτο' },
[6] = { 'έκτο' },
[8] = { 'όγδοο' },
[9] = { 'ένατο' },
[10] = { 'δέκατο' },
[16] = { 'δεκατοέκτο' },
}
-- Return status, fraction where:
-- status is a string:
-- "finished" if there is a fraction with no whole number;
-- "ok" if fraction is empty or valid;
-- "unsupported" if bad fraction;
-- fraction is a string giving (numerator / denominator) as English text, or is "".
-- Only unsigned fractions with a very limited range of values are supported,
-- except that if whole is empty, the numerator can use "-" to indicate negative.
-- whole (string or nil): nil or "" if no number before the fraction
-- numerator (string or nil): numerator, if any (default = 1 if a denominator is given)
-- denominator (string or nil): denominator, if any
-- sp_us (boolean): true if sp=us
-- negative_word (string): word to use for negative sign, if whole is empty
-- use_one (boolean): false: 2+1/2 → "two and a half"; true: "two and one-half"
local function fraction_to_english(whole, numerator, denominator, sp_us, negative_word, use_one)
if numerator or denominator then
local finished = (whole == nil or whole == '')
local sign = ''
if numerator then
if finished and numerator:sub(1, 1) == '-' then
numerator = numerator:sub(2)
sign = negative_word .. ' '
end
else
numerator = '1'
end
if not numerator:match('^%d+$') or not denominator or not denominator:match('^%d+$') then
return 'unsupported', ''
end
numerator = tonumber(numerator)
denominator = tonumber(denominator)
local dendata = denominators[denominator]
if not (dendata and 1 <= numerator and numerator <= 99) then
return 'unsupported', ''
end
local numstr, denstr
local sep = '-'
if numerator == 1 then
denstr = sp_us and dendata.us or dendata[1]
if finished or use_one then
numstr = 'one'
elseif denstr:match('^[aeiou]') then
numstr = 'an'
sep = ' '
else
numstr = 'a'
sep = ' '
end
else
numstr = numeral_to_english_less_100(numerator)
denstr = dendata.plural
if not denstr then
denstr = (sp_us and dendata.us or dendata[1]) .. 's'
end
end
if finished then
return 'finished', sign .. numstr .. sep .. denstr
end
return 'ok', ' and ' .. numstr .. sep .. denstr
end
return 'ok', ''
end
-- Takes a decimal number and converts it to English text.
-- Return nil if a fraction cannot be converted (only some numbers are supported for fractions).
-- num (string or nil): the number to convert.
-- Can be an arbitrarily large decimal, such as "-123456789123456789.345", and
-- can use scientific notation (e.g. "1.23E5").
-- May fail for very large numbers not listed in "groups" such as "1E4000".
-- num is nil if there is no whole number before a fraction.
-- numerator (string or nil): numerator of fraction (nil if no fraction)
-- denominator (string or nil): denominator of fraction (nil if no fraction)
-- capitalize (boolean): whether to capitalize the result (e.g. 'One' instead of 'one')
-- use_and (boolean): whether to use the word 'and' between tens/ones place and higher places
-- hyphenate (boolean): whether to hyphenate all words in the result, useful for use as an adjective
-- ordinal (boolean): whether to produce an ordinal (e.g. 'first' instead of 'one')
-- plural (boolean): whether to pluralize the resulting number
-- links: nil: do not add any links; 'on': link "billion" and larger to Orders of magnitude article;
-- any other text: list of numbers to link (e.g. "billion,quadrillion")
-- negative_word: word to use for negative sign (typically 'negative' or 'minus'; nil to use default)
-- round: nil or '': no rounding; 'on': round to nearest two-word number; 'up'/'down': round up/down to two-word number
-- zero: word to use for value '0' (nil to use default)
-- use_one (boolean): false: 2+1/2 → "two and a half"; true: "two and one-half"
local function _numeral_to_english(num, numerator, denominator, capitalize, use_and, hyphenate, ordinal, plural, links, negative_word, round, zero, use_one)
if not negative_word then
if use_and then
-- TODO Should 'minus' be used when do not have sp=us?
-- If so, need to update testcases, and need to fix "minus zero".
-- negative_word = 'minus'
negative_word = 'negative'
else
negative_word = 'negative'
end
end
local status, fraction_text = fraction_to_english(num, numerator, denominator, not use_and, negative_word, use_one)
if status == 'unsupported' then
return nil
end
if status == 'finished' then
-- Input is a fraction with no whole number.
-- Hack to avoid executing stuff that depends on num being a number.
local s = fraction_text
if hyphenate then s = s:gsub("%s", "-") end
if capitalize then s = s:gsub("^%l", string.upper) end
return s
end
num = scientific_notation_to_decimal(num)
if round and round ~= '' then
if round ~= 'on' and round ~= 'up' and round ~= 'down' then
error("Invalid rounding mode")
end
num = round_for_english(num, round)
end
-- Separate into negative sign, num (digits before decimal), decimal_places (digits after decimal)
local MINUS = '−' -- Unicode U+2212 MINUS SIGN (may be in values from [[Module:Convert]])
if num:sub(1, #MINUS) == MINUS then
num = '-' .. num:sub(#MINUS + 1) -- replace MINUS with '-'
elseif num:sub(1, 1) == '+' then
num = num:sub(2) -- ignore any '+'
end
local negative = num:find("^%-")
local decimal_places, subs = num:gsub("^%-?%d*%.(%d+)$", "%1")
if subs == 0 then decimal_places = nil end
num, subs = num:gsub("^%-?(%d*)%.?%d*$", "%1")
if num == '' and decimal_places then num = '0' end
if subs == 0 or num == '' then error("Invalid decimal numeral") end
-- For each group of 3 digits except the last one, print with appropriate group name (e.g. million)
local s = ''
while #num > 3 do
if s ~= '' then s = s .. ' ' end
local group_num = math.floor((#num - 1) / 3)
local group = groups[group_num]
local group_digits = #num - group_num*3
s = s .. numeral_to_english_less_1000(num:sub(1, group_digits), false, false, false, zero) .. ' '
if links and (((links == 'on' and group_num >= 3) or links:find(group)) and group_num <= 13) then
s = s .. '[[Orders_of_magnitude_(numbers)#10' .. group_num*3 .. '|' .. group .. ']]'
else
s = s .. group
end
num = num:sub(1 + group_digits)
num = num:gsub("^0*", "") -- Trim leading zeros
end
-- Handle final three digits of integer part
if s ~= '' and num ~= '' then
if #num <= 2 and use_and then
s = s .. ' and '
else
s = s .. ' '
end
end
if s == '' or num ~= '' then
s = s .. numeral_to_english_less_1000(num, use_and, ordinal, plural, zero)
elseif ordinal or plural then
-- Round numbers like "one million" take standard suffixes for ordinal/plural
s = s .. standard_suffix(ordinal, plural)
end
-- For decimal places (if any) output "point" followed by spelling out digit by digit
if decimal_places then
s = s .. ' point'
for i = 1, #decimal_places do
s = s .. ' ' .. ones_position[tonumber(decimal_places:sub(i,i))]
end
end
s = s:gsub("^%s*(.-)%s*$", "%1") -- Trim whitespace
if ordinal and plural then s = s .. 's' end -- s suffix works for all ordinals
if negative and s ~= zero then s = negative_word .. ' ' .. s end
s = s:gsub("negative zero", "zero")
s = s .. fraction_text
if hyphenate then s = s:gsub("%s", "-") end
if capitalize then s = s:gsub("^%l", string.upper) end
return s
end
local p = { -- functions that can be called from another module
roman_to_numeral = roman_to_numeral,
spell_number = _numeral_to_english,
}
function p.numeral_to_english(frame)
local args = frame.args
local num = args[1]
num = num:gsub("^%s*(.-)%s*$", "%1") -- Trim whitespace
num = num:gsub(",", "") -- Remove commas
if num ~= '' then -- a fraction may have an empty whole number
if not num:find("^%-?%d*%.?%d*%-?[Ee]?[+%-]?%d*$") then
-- Input not in a valid format, try to pass it through #expr to see
-- if that produces a number (e.g. "3 + 5" will become "8").
num = frame:preprocess('{{#expr: ' .. num .. '}}')
end
end
-- Pass args from frame to helper function
return _numeral_to_english(
num,
args['numerator'],
args['denominator'],
args['case'] == 'U' or args['case'] == 'u',
args['sp'] ~= 'us',
args['adj'] == 'on',
args['ord'] == 'on',
args['pl'] == 'on',
args['lk'],
args['negative'],
args['round'],
args['zero'],
args['one'] == 'one' -- experiment: using '|one=one' makes fraction 2+1/2 give "two and one-half" instead of "two and a half"
) or ''
end
---- recursive function for p.decToHex
local function decToHexDigit(dec)
local dig = {"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"}
local div = math.floor(dec/16)
local mod = dec-(16*div)
if div >= 1 then return decToHexDigit(div)..dig[mod+1] else return dig[mod+1] end
end -- I think this is supposed to be done with a tail call but first I want something that works at all
---- finds all the decimal numbers in the input text and hexes each of them
function p.decToHex(frame)
local args=frame.args
local parent=frame.getParent(frame)
local pargs={}
if parent then pargs=parent.args end
local text=args[1] or pargs[1] or ""
local minlength=args.minlength or pargs.minlength or 1
minlength=tonumber(minlength)
local prowl=mw.ustring.gmatch(text,"(.-)(%d+)")
local output=""
repeat
local chaff,dec=prowl()
if not(dec) then break end
local hex=decToHexDigit(dec)
while (mw.ustring.len(hex)<minlength) do hex="0"..hex end
output=output..chaff..hex
until false
local chaff=mw.ustring.match(text,"(%D+)$") or ""
return output..chaff
end
return p
o8cxolm1ws5i73xo1hrcoporir4knpj
Πρότυπον:Commonscat-inline
10
3480
36695
2025-12-15T22:26:00Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{sister-inline |short={{{short|}}} |project=commonscat |list={{{list|}}} |extratext={{{extratext|}}} |links= [[commons:Category:{{{1|{{#property:P373}}}}} | {{{2|{{{1|{{#property:P373}}}}}}}}]]<!-- -->}}<noinclude> {{documentation | content = Το πρότυπο δημιουργήθηκε για περιπτώσεις όπου δεν υπάρχει αρκετός ή κατάλληλος χώρος ώστε να χωρέσει καλαίσθητ...'
36695
wikitext
text/x-wiki
{{sister-inline
|short={{{short|}}}
|project=commonscat
|list={{{list|}}}
|extratext={{{extratext|}}}
|links= [[commons:Category:{{{1|{{#property:P373}}}}} | {{{2|{{{1|{{#property:P373}}}}}}}}]]<!--
-->}}<noinclude>
{{documentation | content =
Το πρότυπο δημιουργήθηκε για περιπτώσεις όπου δεν υπάρχει αρκετός ή κατάλληλος χώρος ώστε να χωρέσει καλαίσθητα το πρότυπο {{tl|Commons category}}
== TemplateData ==
<templatedata>
{
"params": {
"1": {
"label": "Τίτλος κατηγορίας στα Commons",
"description": "O τίτλος της κατηγορίας στο Wikimedia Commons. Αν παραληφθεί λαμβάνεται μέσω Wikidata.",
"type": "string",
"suggested": true
},
"2": {
"label": "Τίτλος που θέλουμε να φαίνεται εναλλακτικά",
"description": "Υπέρβαση του τίτλου.",
"type": "string"
}
},
"format": "inline",
"description": "Σύνδεσμος προς μια κατηγορία στα Wikimedia Commons. (Αν δεν συμπληρωθούν οι παράμετροι, η πληροφορία αντλείται από τα Wikidata.)"
}
</templatedata>
}}
<!-- Κατηγορίες ΑΝ χρειάζεται -->
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]</noinclude>
521mlj7gjhaq4exzt2wq4sr8no3djk9
Διονύσιος Λαυράγκας
0
3481
36906
36700
2025-12-16T10:32:15Z
Εὐθυμένης
2777
/* Εξτερικοί σύνδεσμοι */
36906
wikitext
text/x-wiki
Ο '''Διονύσιος Λαυράγκας''' (17 Οκτώβρι 1860 - 18 Ιούλι 1941) έτον [[Ελλάδα|Έλλενας]] συνθέτης, ο οποίος ανήκει σην λεγομένην Επτανησιακήν μουσικήν Σχολήν, αν και πολλοί ατόν κατατάσσουν και σην εθνικήν μουσικήν σχολήν.<ref name="a728">{{el}} {{cite web | url=https://www.in.gr/2023/07/18/stories/dionysios-layragkas-enas-apo-tous-skapaneis-tis-ellinikis-ethnikis-mousikis-sxolis/ | last1=Στεργιόπουλος | first1=Βαγγέλης | title=Διονύσιος Λαυράγκας: Η ιστορία του ελληνικού μελοδράματος | website=[[in.gr]] | date=2023-07-18 | access-date=2025-12-15}}</ref> Ο Δ. Λαυράγκας θεωρείται ο θεμελιωτής τη Ελληνικού μελοδράματος.<ref name="a728"/>
Το συνθετικόν ατ' το έργον απετέλεσαν κυρίως συμφωνικήν μουσικήν, μελοδράματα καθώς και τραγωδίας, ιδίως καντάδες.<ref name="a728"/> Έγραψεν έργα, για βιολίν, πιάνον, καθολικήν λειτουργίαν και άσματα θείας λειτουργίας.<ref name="a728"/> Θεωρείται επίσης από τους πρώτους συνθέτας που σ' ατ'νων τα έργα ενσωμάτωσαν στοιχεία ελληνικής δημοτικής μουσικής.<ref name="a728"/>
== Παραπομπές ==
<references />
== Συνδέζμ' σα εξ μερέαν ==
* {{commonscat-inline}}
{{authority control}}
{{DEFAULTSORT:Λαυραγκας, Διονυσιος}}
[[Κατηγορίαν:Ελλενικόν ιστορίαν]]
f5cnhqp6aoe3k7dcw1q4e308j3y75a2
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά ΑΑID
14
3482
36697
2025-12-15T22:31:43Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} [[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]'
36697
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
de8k88nxnjbq51i7qjh9e7201rfjkw5
Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά MusicBrainz
14
3483
36698
2025-12-15T22:32:30Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{hiddencat}} [[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]'
36698
wikitext
text/x-wiki
{{hiddencat}}
[[Κατηγορίαν:Λήμματα Βικιπαίδειας με αναγνωριστικά καθιερωμένων όρων και βάσεων δεδομένων]]
de8k88nxnjbq51i7qjh9e7201rfjkw5
Πρότυπον:El
10
3484
36926
36907
2025-12-16T12:22:19Z
Εὐθυμένης
2777
36926
wikitext
text/x-wiki
{{γλώσσα2|Ελλενικά|ελλενικόν τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Ελλενικα]]
<!--interwiki-->
</noinclude>
90ygq3sttlam4uur2k30vl88dca0q1h
Πρότυπον:Cite journal
10
3485
36704
2025-12-15T22:38:58Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{Citation/core |Citation type=Journal |AuthorMask = {{{author-mask|{{{authormask|}}}}}} |Surname1 = {{{last|{{{surname|{{{last1|{{{surname1|{{{author1|{{{author|{{{authors|{{{επώνυμο|{{{συγγραφέας|{{{επώνυμο1|{{{συγγραφέας1|{{{συγγραφείς|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} |Surname2 = {{{last2|{{{surname2|{{{author2|{{{coauthor|{{{coauthors|{{{συγγραφέας2|{{{επώνυμο2|}}}}}}}}}}}...'
36704
wikitext
text/x-wiki
{{Citation/core
|Citation type=Journal
|AuthorMask = {{{author-mask|{{{authormask|}}}}}}
|Surname1 = {{{last|{{{surname|{{{last1|{{{surname1|{{{author1|{{{author|{{{authors|{{{επώνυμο|{{{συγγραφέας|{{{επώνυμο1|{{{συγγραφέας1|{{{συγγραφείς|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
|Surname2 = {{{last2|{{{surname2|{{{author2|{{{coauthor|{{{coauthors|{{{συγγραφέας2|{{{επώνυμο2|}}}}}}}}}}}}}}}}}}}}}
|Surname3 = {{{last3|{{{surname3|{{{author3|{{{συγγραφέας3|{{{επώνυμο3|}}}}}}}}}}}}}}}
|Surname4 = {{{last4|{{{surname4|{{{author4|{{{συγγραφέας4|{{{επώνυμο4|}}}}}}}}}}}}}}}
|Surname5 = {{{last5|{{{surname5|{{{author5|{{{συγγραφέας5|{{{επώνυμο5|}}}}}}}}}}}}}}}
|Surname6 = {{{last6|{{{surname6|{{{author6|{{{συγγραφέας6|{{{επώνυμο6|}}}}}}}}}}}}}}}
|Surname7 = {{{last7|{{{surname7|{{{author7|{{{συγγραφέας7|{{{επώνυμο7|}}}}}}}}}}}}}}}
|Surname8 = {{{last8|{{{surname8|{{{author8|{{{συγγραφέας8|{{{επώνυμο8|}}}}}}}}}}}}}}}
|Surname9 = {{{last9|{{{surname9|{{{author9|{{{συγγραφέας9|{{{επώνυμο9|}}}}}}}}}}}}}}}
|Surname10 = {{{last10|{{{surname10|{{{author10|{{{συγγραφέας10|{{{επώνυμο10|}}}}}}}}}}}}}}}
|Given1 = {{{first1|{{{given1|{{{first|{{{given|{{{όνομα|{{{όνομα1|}}}}}}}}}}}}}}}}}}
|Given2 = {{{first2|{{{given2|{{{όνομα2|}}}}}}}}}
|Given3 = {{{first3|{{{given3|{{{όνομα3|}}}}}}}}}
|Given4 = {{{first4|{{{given4|{{{όνομα4|}}}}}}}}}
|Given5 = {{{first5|{{{given5|{{{όνομα5|}}}}}}}}}
|Given6 = {{{first6|{{{given6|{{{όνομα6|}}}}}}}}}
|Given7 = {{{first7|{{{given7|{{{όνομα7|}}}}}}}}}
|Given8 = {{{first8|{{{given8|{{{όνομα8|}}}}}}}}}
|Given9 = {{{first9|{{{given9|{{{όνομα9|}}}}}}}}}
|Given10 = {{{first10|{{{given10|{{{όνομα10|}}}}}}}}}
|Authorlink1 = {{{author-link|{{{author1-link|{{{authorlink|{{{authorlink1|{{{λήμμα-συγγραφέα|{{{λήμμα-συγγραφέα1|}}}}}}}}}}}}}}}}}}
|Authorlink2 = {{{author2-link|{{{authorlink2|{{{λήμμα-συγγραφέα2|}}}}}}}}}
|Authorlink3 = {{{author3-link|{{{authorlink3|{{{λήμμα-συγγραφέα3|}}}}}}}}}
|Authorlink4 = {{{author4-link|{{{authorlink4|{{{λήμμα-συγγραφέα4|}}}}}}}}}
|Authorlink5 = {{{author5-link|{{{authorlink5|{{{λήμμα-συγγραφέα5|}}}}}}}}}
|Authorlink6 = {{{author6-link|{{{authorlink6|{{{λήμμα-συγγραφέα6|}}}}}}}}}
|Authorlink7 = {{{author7-link|{{{authorlink7|{{{λήμμα-συγγραφέα7|}}}}}}}}}
|Authorlink8 = {{{author8-link|{{{authorlink8|{{{λήμμα-συγγραφέα8|}}}}}}}}}
|Authorlink9 = {{{author9-link|{{{authorlink9|{{{λήμμα-συγγραφέα9|}}}}}}}}}
|Authorlink10 = {{{author10-link|{{{authorlink10|{{{λήμμα-συγγραφέα10|}}}}}}}}}
|Coauthors = {{{coauthor|{{{coauthors|}}}}}}
|Year={{{year|{{{έτος|{{ <!-- attempt to derive year from date, if possible -->
#if: {{{date|}}}
|{{
#iferror:{{#time:Y|{{{date|}}} }}
|{{#iferror:{{#time:Y|{{{publication-date|einval}}} }}||{{#time:Y|{{{publication-date|}}} }}}}
|{{#time:Y|{{{date|}}} }}
}}
|{{{publication-date|}}} <!-- last resort -->
}}
}}}
}}}
|Date = {{#if:{{{date|}}}|{{{date}}}|{{{day|}}} {{{month|{{{μήνας|}}}}}} {{{year|{{{publication-date|{{{έτος|}}}}}}}}}}}
|Title={{{title|{{{τίτλος|}}}}}}
|TransTitle={{{trans_title|}}}
|URL={{#if:{{{archiveurl|}}}|{{{archiveurl}}}|{{{url|}}}}}
|Series={{{series|{{{version|{{{σειρά|}}}}}}}}}
|Periodical = {{{journal|{{{periodical|{{{magazine|{{{work|{{{περιοδικό|{{{επιθεώρηση|}}}}}}}}}}}}}}}}}}
|Volume = {{{volume|{{{τόμος|}}}}}}
|Issue = {{{issue|{{{number|{{{τεύχος|}}}}}}}}}
|At = {{
#if: {{{journal|{{{periodical|{{{magazine|{{{work|{{{περιοδικό|{{{επιθεώρηση|}}}}}}}}}}}}}}}}}}
|{{{pages|{{{page|{{{at|}}}}}}}}}
|{{
#if: {{{page|}}}
|σελ. {{{page}}}
|{{
#if: {{{pages|}}}
|σελ. {{{pages}}}
|{{{at|}}}
}}
}}
}}
|IncludedWorkTitle = {{{chapter|{{{contribution|{{{κεφάλαιο|}}}}}}}}}
|IncludedWorkURL = {{{chapter-url|{{{chapterurl|{{{contribution-url|}}}}}}}}}
|Edition = {{{edition|{{{έκδοση|}}}}}}
|Place = {{{place|{{{location|}}}}}}
|PublicationPlace = {{{publication-place|{{{place|{{{location|{{{τόπος|{{{τόπος-έκδοσης|}}}}}}}}}}}}}}}
|Publisher = {{{publisher|{{{εκδότης|}}}}}}
|PublicationDate = {{{publication-date|}}}
|EditorSurname1 = {{{editor-last|{{{editor-surname|{{{editor1-last|{{{editor1-surname|{{{editor|{{{editors|{{{επιμελητής|{{{επιμελητής1|{{{επώνυμο-επιμελητή|{{{επώνυμο-επιμελητή1|}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
|EditorSurname2 = {{{editor2-last|{{{editor2-surname|{{{επιμελητής2|{{{επώνυμο-επιμελητή2|}}}}}}}}}}}}
|EditorSurname3 = {{{editor3-last|{{{editor3-surname|{{{επιμελητής3|{{{επώνυμο-επιμελητή3|}}}}}}}}}}}}
|EditorSurname4 = {{{editor4-last|{{{editor4-surname|{{{επιμελητής4|{{{επώνυμο-επιμελητή4|}}}}}}}}}}}}
|EditorGiven1 = {{{editor-first|{{{editor-given|{{{editor1-first|{{{editor1-given|{{{όνομα-επιμελητή|{{{όνομα-επιμελητή1|}}}}}}}}}}}}}}}}}}
|EditorGiven2={{{editor2-first|{{{editor2-given|{{{όνομα-επιμελητή2|}}}}}}}}}
|EditorGiven3={{{editor3-first|{{{editor3-given|{{{όνομα-επιμελητή3|}}}}}}}}}
|EditorGiven4={{{editor4-first|{{{editor4-given|{{{όνομα-επιμελητή4|}}}}}}}}}
|Editorlink1={{{editor-link|{{{editor1-link|{{{λήμμα-επιμελητή|{{{λήμμα-επιμελητή1|}}}}}}}}}}}}
|Editorlink2={{{editor2-link|{{{λήμμα-επιμελητή2|}}}}}}
|Editorlink3={{{editor3-link|{{{λήμμα-επιμελητή3|}}}}}}
|Editorlink4={{{editor4-link|{{{λήμμα-επιμελητή4|}}}}}}
|Other = {{{others|{{{λοιποί|{{{λοιπά|}}}}}}}}}
|language = {{{language|{{{στα|{{{γλώσσα|}}}}}}}}}
|format = {{{format|}}}
|ID={{{id|{{{ID|}}}}}}
|ISBN={{{isbn|{{{ISBN|}}}}}}
|ISSN={{{issn|{{{ISSN|}}}}}}
|OCLC={{{oclc|{{{OCLC|}}}}}}
|PMID={{{pmid|{{{PMID|}}}}}}
|PMC={{{pmc|{{{PMC|}}}}}}
|Embargo={{{pmc-embargo-date|1010-10-10}}}
|Bibcode={{{bibcode|}}}
|MR={{{mr|{{{MR|}}}}}}
|ZBL={{{zbl|{{{ZBL|}}}}}}
|DOI={{{doi|{{{DOI|}}}}}}
|DoiBroken={{{doi_brokendate|}}}
|AccessDate={{{access-date|{{{accessdate|}}}}}}
|OriginalURL={{{url|}}}
|ArchiveURL={{{archiveurl|}}}
|ArchiveDate={{{archivedate|}}}
|laysource = {{{laysource|}}}
|laysummary = {{{laysummary|}}}
|laydate = {{{laydate|}}}
|quote = {{{quote|{{{απόσπασμα|}}}}}}
|Ref={{{ref|}}}
|Sep = {{#ifeq:{{{separator|{{{seperator}}} }}}|;|;|{{{separator|{{{seperator|.}}} }}} }}
|PS = {{{postscript|.}}}
|AuthorSep = {{#ifeq:{{{author-separator|}}}|;|;|{{{author-separator|;}}}}} 
|NameSep = {{{author-name-separator|,}}} 
|Trunc = {{#if:{{{display-authors|}}}|{{{display-authors}}}|8}}
|amp = {{{use ampersand before last author|}}}
}}<noinclude>{{Τεκμηρίωση προτύπου}}</noinclude>
ikgu6sqfyczgc70r71benwv8awdsuaa
Πρότυπον:Citation/core
10
3486
36705
2025-12-15T22:40:01Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<span class="citation {{{Citation class|{{{Citation type|}}}}}}" {{ #switch:{{{Ref|}}} ||none = |#default = id="{{anchorencode:{{{Ref}}}}}" |harv = {{#if:{{{Surname1|}}}{{{EditorSurname1|}}} |id="CITEREF{{anchorencode:{{#if:{{{Surname1|}}} |{{{Surname1}}}{{{Surname2|}}}{{{Surname3|}}}{{{Surname4|}}} |{{{EditorSurname1|}}}{{{EditorSurname2|}}}{{{EditorSurname3|}}}{{{EditorSurname4|}}} }}{{{Year|{{{Date|}}}}}}}}" }} }}>{...'
36705
wikitext
text/x-wiki
<span class="citation {{{Citation class|{{{Citation type|}}}}}}"
{{
#switch:{{{Ref|}}}
||none =
|#default = id="{{anchorencode:{{{Ref}}}}}"
|harv = {{#if:{{{Surname1|}}}{{{EditorSurname1|}}}
|id="CITEREF{{anchorencode:{{#if:{{{Surname1|}}}
|{{{Surname1}}}{{{Surname2|}}}{{{Surname3|}}}{{{Surname4|}}}
|{{{EditorSurname1|}}}{{{EditorSurname2|}}}{{{EditorSurname3|}}}{{{EditorSurname4|}}}
}}{{{Year|{{{Date|}}}}}}}}"
}}
}}>{{
<!--============ Author or editor and date ============-->
#if:{{{Surname1|}}}
|{{
#if: {{{AuthorMask|}}}
|{{
#iferror: {{ #expr: 1*{{{AuthorMask}}} }}
|{{{AuthorMask}}}
|<del>{{loop|{{{AuthorMask}}}|2= }}</del>
}}
|{{
#if: {{{Authorlink1|}}}
|[[{{{Authorlink1}}} |{{{Surname1}}}{{
#if: {{{Given1|}}}
|{{{NameSep|, }}}{{{Given1}}}
}}]]
|{{{Surname1}}}{{
#if: {{{Given1|}}}
|{{{NameSep|, }}}{{{Given1}}}
}}
}}
}}{{
#if: {{{Surname2|}}}
|{{#ifexpr:{{{Trunc|8}}}<2
| ''και άλλοι''.
|{{
#iferror: {{ #expr: 1*0.0{{{AuthorMask|}}} }}
| <!-- then punctuation should be included in AuthorMask -->
|{{
#if: {{{Surname3|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}
}}{{
#if: {{{Authorlink2|}}}
|[[{{{Authorlink2}}} |{{{Surname2}}}{{
#if: {{{Given2|}}}
|{{{NameSep|, }}}{{{Given2}}}
}}]]
|{{{Surname2}}}{{
#if: {{{Given2|}}}
|{{{NameSep|, }}}{{{Given2}}}
}}
}}{{
#if: {{{Surname3|}}}
|{{#ifexpr:{{{Trunc|8}}}<3
| ''και άλλοι''.
|{{
#if: {{{Surname4|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Authorlink3|}}}
|[[{{{Authorlink3}}} |{{{Surname3}}}{{
#if: {{{Given3|}}}
|{{{NameSep|, }}}{{{Given3}}}
}}]]
|{{{Surname3}}}{{
#if: {{{Given3|}}}
|{{{NameSep|, }}}{{{Given3}}}
}}
}}{{
#if:{{{Surname4|}}}
|{{#ifexpr:{{{Trunc|8}}}<4
| ''και άλλοι''.
|{{
#if: {{{Surname5|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Authorlink4|}}}
|[[{{{Authorlink4}}} |{{{Surname4}}}{{
#if: {{{Given4|}}}
|{{{NameSep|, }}}{{{Given4}}}
}}]]
|{{{Surname4}}}{{
#if: {{{Given4|}}}
|{{{NameSep|, }}}{{{Given4}}}
}}
}}{{
#if:{{{Surname5|}}}
|{{#ifexpr:{{{Trunc|8}}}<5
| ''και άλλοι''.
|{{
#if: {{{Surname6|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Authorlink5|}}}
|[[{{{Authorlink5}}} |{{{Surname5}}}{{
#if: {{{Given5|}}}
|{{{NameSep|, }}}{{{Given5}}}
}}]]
|{{{Surname5}}}{{
#if: {{{Given5|}}}
|{{{NameSep|, }}}{{{Given5}}}
}}
}}{{
#if:{{{Surname6|}}}
|{{#ifexpr:{{{Trunc|8}}}<6
| ''και άλλοι''.
|{{
#if: {{{Surname7|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Authorlink6|}}}
|[[{{{Authorlink6}}} |{{{Surname6}}}{{
#if: {{{Given6|}}}
|{{{NameSep|, }}}{{{Given6}}}
}}]]
|{{{Surname6}}}{{
#if: {{{Given6|}}}
|{{{NameSep|, }}}{{{Given6}}}
}}
}}{{
#if:{{{Surname7|}}}
|{{#ifexpr:{{{Trunc|8}}}<7
| ''και άλλοι''.
|{{
#if: {{{Surname8|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Authorlink7|}}}
|[[{{{Authorlink7}}} |{{{Surname7}}}{{
#if: {{{Given7|}}}
|{{{NameSep|, }}}{{{Given7}}}
}}]]
|{{{Surname7}}}{{
#if: {{{Given7|}}}
|{{{NameSep|, }}}{{{Given7}}}
}}
}}{{
#if:{{{Surname8|}}}
|{{#ifexpr:{{{Trunc|8}}}<8
| ''και άλλοι''.
|{{
#if: {{{Surname9|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Authorlink8|}}}
|[[{{{Authorlink8}}} |{{{Surname8}}}{{
#if: {{{Given8|}}}
|{{{NameSep|, }}}{{{Given8}}}
}}]]
|{{{Surname8}}}{{
#if: {{{Given8|}}}
|{{{NameSep|, }}}{{{Given8}}}
}}
}}{{
#if:{{{Surname9|}}}
| ''και άλλοι''.
}}
}}
}}
}}
}}
}}
}}
}}
}}
}}
}}
}}
}}
}}
}}{{
#if: {{{Date|}}}
| ({{{Date}}}){{
#if:{{{YearNote|}}}
| [{{{YearNote}}}]
}}
}}
|{{<!-- ============== No author: display editors first == -->
#if: {{{EditorSurname1|}}}
|{{
#if: {{{Editorlink1|}}}
|[[{{{Editorlink1}}} |{{{EditorSurname1}}}{{
#if: {{{EditorGiven1|}}}
|, {{{EditorGiven1}}}
}}]]
|{{{EditorSurname1}}}{{
#if: {{{EditorGiven1|}}}
|, {{{EditorGiven1}}}
}}
}}{{
#if: {{{EditorSurname2|}}}
|{{
#if: {{{EditorSurname3|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Editorlink2|}}}
|[[{{{Editorlink2}}} |{{{EditorSurname2}}}{{
#if: {{{EditorGiven2|}}}
|, {{{EditorGiven2}}}
}}]]
|{{{EditorSurname2}}}{{
#if: {{{EditorGiven2|}}}
|, {{{EditorGiven2}}}
}}
}}{{
#if: {{{EditorSurname3|}}}
|{{
#if: {{{EditorSurname4|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Editorlink3|}}}
|[[{{{Editorlink3}}} |{{{EditorSurname3}}}{{
#if: {{{EditorGiven3|}}}
|, {{{EditorGiven3}}}
}}]]
|{{{EditorSurname3}}}{{
#if: {{{EditorGiven3|}}}
|, {{{EditorGiven3}}}
}}
}}{{
#if:{{{EditorSurname4|}}}
| και άλλοι.
}}
}}
}}, επιμ.{{#ifeq:{{{Sep|,}}}|.||.}}{{
#if: {{{Date|}}}
| ({{{Date}}}){{
#if:{{{YearNote|}}}
| [{{{YearNote}}}]
}}
}}
}}
}}{{
<!--============ Title of included work ============-->
#if: {{{IncludedWorkTitle|}}}{{#if:{{{Periodical|}}}||{{#if:{{{TransItalic|}}}||{{{TransTitle|}}}}}}}
|{{
#if:{{{Surname1|}}}{{{EditorSurname1|}}}
|{{{Sep|,}}} 
}}{{Citation/make link
| 1={{
#if: {{{IncludedWorkURL|}}}
|{{{IncludedWorkURL}}}
|{{
#if: {{{URL|}}}
|{{{URL}}}
<!-- Only link URL if to a free full text - as at PubMedCentral (PMC)-->
|{{#ifexpr:{{#time: U}} > {{#time: U | {{{Embargo|2001-10-10}}} }}
|{{
#if: {{{PMC|}}}
|http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{PMC}}}
}}
}}
}}
}}
| 2={{
#if: {{{Periodical|}}}
|''<nowiki />{{{IncludedWorkTitle}}}<nowiki />''
|«{{{IncludedWorkTitle|}}}{{
#if: {{{TransTitle|}}}
|{{
#if: {{{IncludedWorkTitle|}}}
| 
}}[{{{TransTitle}}}]
}}»
}}
}}
}}{{
<!--============ Place (if different than PublicationPlace) ============-->
#if: {{{Place|}}}
|{{
#ifeq: {{{Place|}}} | {{{PublicationPlace|}}}
|
|{{
#if: {{{Surname1|}}}{{{EditorSurname1|}}}{{{IncludedWorkTitle|}}}
|{{{Sep|,}}} written at {{{Place}}}
}}
}}
}}{{
<!--============ Editor of compilation ============-->
#if: {{{EditorSurname1|}}}
|{{
#if: {{{Surname1|}}}
|{{{Sep|,}}} {{
#if: {{{IncludedWorkTitle|}}}
|{{#ifeq:{{{Sep|}}}|.|Σ|σ}}το: 
}}{{
#if: {{{Editorlink1|}}}
|[[{{{Editorlink1}}} |{{{EditorSurname1}}}{{
#if: {{{EditorGiven1|}}}
|, {{{EditorGiven1}}}
}}]]
|{{{EditorSurname1}}}{{
#if: {{{EditorGiven1|}}}
|, {{{EditorGiven1}}}
}}}}{{
#if: {{{EditorSurname2|}}}
|{{
#if: {{{EditorSurname3|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Editorlink2|}}}
|[[{{{Editorlink2}}}|{{{EditorSurname2}}}{{
#if: {{{EditorGiven2|}}}
|, {{{EditorGiven2}}}
}}]]
|{{{EditorSurname2}}}{{
#if: {{{EditorGiven2|}}}
|, {{{EditorGiven2}}}
}}
}}{{
#if: {{{EditorSurname3|}}}
|{{
#if: {{{EditorSurname4|}}}
|; 
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Editorlink3|}}}
|[[{{{Editorlink3}}}|{{{EditorSurname3}}}{{
#if: {{{EditorGiven3|}}}
|, {{{EditorGiven3}}}
}}]]
|{{{EditorSurname3}}}{{
#if: {{{EditorGiven3|}}}
|, {{{EditorGiven3}}}
}}
}}{{
#if:{{{EditorSurname4|}}}
| και άλλοι
}}
}}
}}, επιμ{{#ifeq:{{{Sep|,}}}|.||.}}
}}
}}{{
<!--============ Μεταφραστής ============-->
#if: {{{TranslatorSurname1|}}}
|{{
#if: {{{Surname1|}}}
|{{{Sep|,}}} {{
#if: {{{IncludedWorkTitle|}}}
|{{#ifeq:{{{Sep|}}}|.|Σ|σ}}το: 
}}{{
#if: {{{Translatorlink1|}}}
|[[{{{Translatorlink1}}} |{{{TranslatorSurname1}}}{{
#if: {{{TranslatorGiven1|}}}
|, {{{TranslatorGiven1}}}
}}]]
|{{{TranslatorSurname1}}}[[Κατηγορία:Σελίδες με χρήση παραμέτρου μεταφραστή στο cite book]]{{
#if: {{{TranslatorGiven1|}}}
|, {{{TranslatorGiven1}}}
}}}}{{
#if: {{{TranslatorSurname2|}}}
|{{
#if: {{{TranslatorSurname3|}}}
|{{{AuthorSep|; }}}
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Translatorlink2|}}}
|[[{{{Translatorlink2}}}|{{{TranslatorSurname2}}}{{
#if: {{{TranslatorGiven2|}}}
|, {{{TranslatorGiven2}}}
}}]]
|{{{TranslatorSurname2}}}{{
#if: {{{TranslatorGiven2|}}}
|, {{{TranslatorGiven2}}}
}}
}}{{
#if: {{{TranslatorSurname3|}}}
|{{
#if: {{{TranslatorSurname4|}}}
|; 
|{{#if:{{{amp|}}}| & |{{{AuthorSep|; }}}}}
}}{{
#if: {{{Translatorlink3|}}}
|[[{{{Translatorlink3}}}|{{{TranslatorSurname3}}}{{
#if: {{{TranslatorGiven3|}}}
|, {{{TranslatorGiven3}}}
}}]]
|{{{TranslatorSurname3}}}{{
#if: {{{TranslatorGiven3|}}}
|, {{{TranslatorGiven3}}}
}}
}}{{
#if:{{{TranslatorSurname4|}}}
| και άλλοι
}}
}}
}}, μετάφραση{{#ifeq:{{{Sep|,}}}|.||.}}
}}
}}{{
<!--============ Periodicals ============-->
#if: {{{Periodical|}}}
|{{
#if: {{{Other|}}}
|{{{Sep|,}}} {{{Other|}}}
}}{{
#if: {{{Surname1|}}}{{{EditorSurname1|}}}{{{IncludedWorkTitle|}}}
|{{{Sep|,}}} }}{{
#if: {{{Title|}}}{{{TransTitle|}}}
|{{Citation/make link
| 1={{
#if: {{{IncludedWorkTitle|}}}
|{{
#if: {{{IncludedWorkURL|}}}
|{{
#if: {{{URL|}}}
|{{{URL}}}
|{{
#ifexpr: {{#time: U}} > {{#time: U | {{{Embargo|2001-10-10}}} }} | {{
#if: {{{PMC|}}}
| http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{PMC}}}
}}
}}
}}
}}
|{{
#if: {{{URL|}}}
|{{{URL}}}
|{{#ifexpr:{{#time: U}} > {{#time: U | {{{Embargo|2001-10-10}}} }} |{{
#if: {{{PMC|}}}
| http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{PMC}}}
}}
}}
}}
}}
| 2=«{{{Title}}}{{
#if: {{{TransTitle|}}}
|{{
#if: {{{Title|}}}
| 
}}[{{{TransTitle}}}]
}}»
}}{{
#if: {{{TitleNote|}}}
|{{{Sep|,}}} {{{TitleNote}}}
}}
}}
}}{{
#if: {{{language|}}}
|{{#switch:{{lc:{{{language|}}}}}|el|el-gr|el-cy=|en|en-gb|en-us= (στα αγγλικά)|fr|fr-fr= (στα γαλλικά)|de|de-de= (στα γερμανικά)|#default= (στα {{{language}}})}}
}}{{
#if: {{{format|}}}
| ({{{format}}})
}}{{
#if: {{{Periodical|}}}
|{{
#if:{{{IncludedWorkTitle|}}}{{{Title|}}}{{{TransTitle|}}}
|{{{Sep|,}}} 
}}''<nowiki />{{{Periodical}}}<nowiki />''{{
#if: {{{Series|}}}
|{{{Sep|,}}} {{{Series}}}
}}{{
#if: {{{PublicationPlace|}}}
|{{
#if: {{{Publisher|}}}
| ({{{PublicationPlace}}}<nowiki>: </nowiki>{{{Publisher}}})
| ({{{PublicationPlace}}})
}}
|{{
#if: {{{Publisher|}}}
| ({{{Publisher}}})
}}
}}{{
#if: {{{Volume|}}}
| '''<nowiki />{{{Volume}}}<nowiki />'''{{
#if: {{{Issue|}}}
| ({{{Issue}}})
}}
|{{
#if: {{{Issue|}}}
| ({{{Issue}}})
}}
}}{{
#if: {{{At|}}}
|<nowiki>: </nowiki> {{{At}}}
}}
|{{
<!--============ Anything else with a title, including books ============-->
#if: {{{Title|}}}{{{TransItalic|}}}
|{{
#if: {{{Surname1|}}}{{{EditorSurname1|}}}{{{IncludedWorkTitle|}}}{{{Periodical|}}}
|{{{Sep|,}}}
}} {{Citation/make link
| 1={{
#if: {{{IncludedWorkTitle|}}}
|{{
#if: {{{IncludedWorkURL|}}}
|{{
#if: {{{URL|}}}
|{{{URL}}}
|{{#ifexpr:{{#time: U}} > {{#time: U | {{{Embargo|2001-10-10}}} }}|{{
#if: {{{PMC|}}}
| http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{PMC}}}
}}}}
}}
}}
|{{
#if: {{{URL|}}}
|{{{URL}}}
|{{#ifexpr:{{#time: U}} > {{#time: U | {{{Embargo|2001-10-10}}} }}|{{
#if: {{{PMC|}}}
| http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{PMC}}}
}}}}
}}
}}
| 2=''<nowiki />{{{Title|}}}{{
#if:{{{TransItalic|}}}| [{{{TransItalic}}}]
}}<nowiki />''
}}
}}{{
#if: {{{TitleType|}}}
| ({{{TitleType}}})
}}{{
#if: {{{Series|}}}
|{{{Sep|,}}} {{{Series}}}
}}{{
#if: {{{Volume|}}}
|{{{Sep|,}}} '''<nowiki />{{{Volume}}}<nowiki />'''
}}{{
#if: {{{Other|}}}
|{{{Sep|,}}} {{{Other|}}}
}}{{
#if: {{{Edition|}}}
| ({{{Edition}}} έκδοση)
}}{{
#if: {{{PublicationPlace|}}}
|{{{Sep|,}}} {{{PublicationPlace}}}
}}{{
#if: {{{Publisher|}}}
|{{
#if: {{{PublicationPlace|}}}
|<nowiki>:</nowiki>
|{{{Sep|,}}}
}} {{{Publisher}}}
}}
}}{{
<!--============ Date (if no author/editor) ============-->
#if: {{{Surname1|}}}{{{EditorSurname1|}}}
|
|{{
#if: {{{Date|}}}
|{{{Sep|,}}} {{{Date}}}{{
#if:{{{YearNote|}}}
| [{{{YearNote}}}]
}}
}}
}}{{
<!--============ Publication date ============-->
#if: {{{PublicationDate|}}}
|{{
#ifeq: {{{PublicationDate|}}} | {{{Date|}}}
|
|{{
#if: {{{EditorSurname1|}}}
|{{
#if: {{{Surname1|}}}
|{{{Sep|,}}} {{{PublicationDate}}}
| (δημοσιεύθηκε {{{PublicationDate}}})
}}
|{{
#if: {{{Periodical|}}}
|{{{Sep|,}}} {{{PublicationDate}}}
| (δημοσιεύθηκε {{{PublicationDate}}})
}}
}}
}}
}}{{
<!--============ Page within included work ============-->
#if: {{{Periodical|}}}
|
|{{
#if: {{{At|}}}
|, {{{At}}}
}}
}}{{
<!--===============DOI================-->
#if:{{{DOI|}}}
|{{{Sep|,}}} [[Digital object identifier|doi]]:{{#if: {{{DoiBroken|}}}
| {{#tag:nowiki|{{{DOI}}}}} (inactive {{{DoiBroken|}}}) {{#ifeq: {{NAMESPACE}} | {{ns:0}} | [[Κατηγορία:Pages with DOIs broken since {{#time: Y | {{{DoiBroken|}}} }}]] }}
| <span class="neverexpand">[http://dx.doi.org/{{urlencode:{{{DOI}}}}} {{#tag:nowiki|{{{DOI}}}}}]</span>
}}
}}{{
<!--============ Misc. Identifier ============-->
#if: {{{ID|}}}
|{{
#if: {{{Surname1|}}}{{{EditorSurname1|}}}{{{IncludedWorkTitle|}}}{{{Periodical|}}}{{{Title|}}}{{{TransItalic|}}}
|{{{Sep|,}}} {{{ID}}}
|{{{ID}}}
}}
}}{{
<!--============ ISBN ============-->
#if: {{{ISBN|}}}
|{{{Sep|,}}} [[Διεθνής πρότυπος αριθμός βιβλίου|ISBN]] [[Special:BookSources/{{{ISBN}}}|{{{ISBN}}}]]
}}{{
<!--============ ISSN ============-->
#if: {{{ISSN|}}}
|{{{Sep|,}}} [[International Standard Serial Number|ISSN]] [http://worldcat.org/issn/{{{ISSN}}} {{{ISSN}}}]
}}{{
<!--============ OCLC ============-->
#if: {{{OCLC|}}}
|{{{Sep|,}}} [[Online Computer Library Center|OCLC]] [http://worldcat.org/oclc/{{urlencode:{{{OCLC}}}}} {{{OCLC}}}]
}}{{
<!--============ LCCN ============-->
#if: {{{LCCN|}}}
|{{{Sep|,}}} [[Library of Congress Control Number|LCCN]] [http://lccn.loc.gov/{{urlencode:{{{LCCN}}}}} {{{LCCN}}}]
}}{{
<!--============ PMID ============-->
#if: {{{PMID|}}}
|{{{Sep|,}}} [[PubMed Identifier|PMID]] [http://www.ncbi.nlm.nih.gov/pubmed/{{{PMID}}} {{{PMID}}}]
}}{{
<!--============ PMC ============-->
#if: {{{PMC|}}}
|{{
#if: {{{URL|}}}
|{{{Sep|,}}} [[PubMed Central|PMC]] [http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pmcentrez&artid={{{PMC}}} {{{PMC}}}]
}}
}}{{
<!--============ BIBCODE ============-->
#if: {{{Bibcode|}}}
|{{{Sep|,}}} [[Bibcode]]: [http://adsabs.harvard.edu/abs/{{{Bibcode}}} {{{Bibcode}}}]
}}{{
<!--============ MR ============-->
#if: {{{MR|}}}
|{{{Sep|,}}} {{MathSciNet|id={{{MR}}}}}
}}{{
<!--============ ZBL ============-->
#if: {{{ZBL|}}}
|{{{Sep|,}}} {{Zbl|{{{ZBL}}}}}
}}{{
<!--============ Archive data, etc ===========-->
#if: {{{Archive|}}}
|{{{Sep|,}}} {{{Archive}}}[[Κατηγορία:Pages using deprecated citation archive parameters]]
|{{
#if:{{{ArchiveURL|}}}{{{ArchiveDate|}}}
|{{{Sep|,}}} {{#ifeq:{{{Sep}}}|.|Α|α}}ρχειοθετήθηκε{{
#if:{{{OriginalURL|}}}{{{IncludedWorkURL|}}}
|{{#if:{{{ArchiveURL|}}}| από {{Citation/make link|{{{OriginalURL|{{{IncludedWorkURL|}}}}}}|το πρωτότυπο}}}}
}}{{
#if:{{{ArchiveDate|}}}
| στις {{{ArchiveDate}}}
}}{{
#if:{{#if:{{{ArchiveURL|}}}||A}}{{#if:{{{OriginalURL|}}}{{{IncludedWorkURL|}}}||B}}{{#if:{{{ArchiveDate|}}}||C}}
|. {{citation error
|Αν ορίσετε <code>|{{#if:{{{ArchiveURL|}}}|archiveurl|archivedate}}=</code>, πρέπει {{#if:{{{OriginalURL|}}}{{{IncludedWorkURL|}}}| επίσης να ορίσετε <code>|{{#if:{{{ArchiveURL|}}}|archivedate|archiveurl}}=</code>|πρώτα να ορίσετε <code>|url=</code>}}}}
}}
}}
}}{{
<!--============ URL and AccessDate ============-->
#if: {{{URL|}}}{{{IncludedWorkURL|}}}
|{{
#if: {{{Title|}}}{{{IncludedWorkTitle|}}}{{{TransTitle|}}}
|<span class="printonly">{{{Sep|,}}} {{
#if: {{{IncludedWorkURL|}}}
|{{{IncludedWorkURL}}}
|{{{URL}}}
}}</span>
|{{{Sep|,}}} {{
#if: {{{IncludedWorkURL|}}}
|{{{IncludedWorkURL}}}
|{{{URL}}}
}}
}}{{
#if: {{{AccessDate|}}}
| <span class="reference-accessdate">{{#ifeq:{{{Sep|,}}}|,|, α|. Α}}νακτήθηκε στις {{{AccessDate}}}</span>
}}
}}{{#if:{{{laysummary|}}}
|{{{Sep|,}}} [{{{laysummary}}} Lay summary]{{#if: {{{laysource|}}}| – ''<nowiki />{{{laysource}}}<nowiki />''}}
}}{{#if:{{{laydate|}}}
|  ({{{laydate}}})
}}{{#if:{{{quote|}}}
|{{{Sep|,}}} ''«{{{quote}}}»''
}}{{{PS|}}}</span><!--
=== This is a COinS tag (http://ocoins.info), which allows automated tools to parse the citation information: ===
--><span
class="Z3988"
title="ctx_ver=Z39.88-2004&rft_val_fmt={{urlencode:info:ofi/fmt:kev:mtx:}}{{
#if: {{{Periodical|}}}
|journal&rft.genre=article&rft.atitle={{urlencode:{{{Title|}}}}}&rft.jtitle={{urlencode:{{{Periodical|}}}}}
|book{{
#if: {{{IncludedWorkTitle|}}}
|&rft.genre=bookitem&rft.btitle={{urlencode:{{{IncludedWorkTitle|}}}}}&rft.atitle={{urlencode:{{{Title|}}}}}
|&rft.genre=book&rft.btitle={{urlencode:{{{Title|}}}}}
}}
}}{{
#if: {{{Surname1|}}} |&rft.aulast={{urlencode:{{{Surname1}}}}}{{
#if: {{{Given1|}}} |&rft.aufirst={{urlencode:{{{Given1}}}}}
}}
}}{{
#if: {{{Surname1|}}} |&rft.au={{urlencode:{{{Surname1}}}}}{{
#if: {{{Given1|}}} |{{urlencode:{{{NameSep|, }}}{{{Given1}}}}}
}}
}}{{
#if: {{{Surname2|}}} |&rft.au={{urlencode:{{{Surname2}}}}}{{
#if: {{{Given2|}}} |{{urlencode:{{{NameSep|, }}}{{{Given2}}}}}
}}
}}{{
#if: {{{Surname3|}}} |&rft.au={{urlencode:{{{Surname3}}}}}{{
#if: {{{Given3|}}} |{{urlencode:{{{NameSep|, }}}{{{Given3}}}}}
}}
}}{{
#if: {{{Surname4|}}} |&rft.au={{urlencode:{{{Surname4}}}}}{{
#if: {{{Given4|}}} |{{urlencode:{{{NameSep|, }}}{{{Given4}}}}}
}}
}}{{
#if: {{{Surname5|}}} |&rft.au={{urlencode:{{{Surname5}}}}}{{
#if: {{{Given5|}}} |{{urlencode:{{{NameSep|, }}}{{{Given5}}}}}
}}
}}{{
#if: {{{Surname6|}}} |&rft.au={{urlencode:{{{Surname6}}}}}{{
#if: {{{Given6|}}} |{{urlencode:{{{NameSep|, }}}{{{Given6}}}}}
}}
}}{{
#if: {{{Surname7|}}} |&rft.au={{urlencode:{{{Surname7}}}}}{{
#if: {{{Given7|}}} |{{urlencode:{{{NameSep|, }}}{{{Given7}}}}}
}}
}}{{
#if: {{{Surname8|}}} |&rft.au={{urlencode:{{{Surname8}}}}}{{
#if: {{{Given8|}}} |{{urlencode:{{{NameSep|, }}}{{{Given8}}}}}
}}
}}{{
#if: {{{Surname9|}}} |&rft.au={{urlencode:{{{Surname9}}}}}{{
#if: {{{Given9|}}} |{{urlencode:{{{NameSep|, }}}{{{Given9}}}}}
}}
}}{{
#if: {{{Date|}}} |&rft.date={{urlencode:{{{Date}}}}}
}}{{
#if: {{{Series|}}} |&rft.series={{urlencode:{{{Series}}}}}
}}{{
#if: {{{Volume|}}} |&rft.volume={{urlencode:{{{Volume}}}}}
}}{{
#if: {{{Issue|}}} |&rft.issue={{urlencode:{{{Issue}}}}}
}}{{
#if: {{{At|}}} |&rft.pages={{urlencode:{{{At}}}}}
}}{{
#if: {{{Edition|}}} |&rft.edition={{urlencode:{{{Edition}}}}}
}}{{
#if: {{{PublicationPlace|}}}{{{Place|}}} |&rft.place={{urlencode:{{{PublicationPlace|{{{Place}}}}}}}}
}}{{
#if: {{{Publisher|}}} |&rft.pub={{urlencode:{{{Publisher}}}}}
}}{{
#if: {{{DOI|}}} |&rft_id=info:doi/{{urlencode:{{{DOI}}}}}
}}{{
#if: {{{PMID|}}} |&rft_id=info:pmid/{{urlencode:{{{PMID}}}}}
}}{{
#if: {{{Bibcode|}}} |&rft_id=info:bibcode/{{urlencode:{{{Bibcode}}}}}
}}{{
#if: {{{OCLC|}}} |&rft_id=info:oclcnum/{{urlencode:{{{OCLC}}}}}
}}{{
#if: {{{ISBN|}}} |&rft.isbn={{urlencode:{{{ISBN}}}}}
}}{{
#if: {{{ISSN|}}} |&rft.issn={{urlencode:{{{ISSN}}}}}
}}{{
#if: {{{URL|}}}{{{IncludedWorkURL|}}} |&rft_id={{urlencode:{{{URL|{{{IncludedWorkURL|}}}}}}}}
}}&rfr_id=info:sid/el.wikipedia.org:{{FULLPAGENAMEE}}"><span style="display: none;"> </span></span><noinclude>
{{documentation}}
</noinclude>
sxxqqfvammeshgr1gmcc2wixpqc78k3
Πρότυπον:Citation/make link
10
3487
36706
2025-12-15T22:41:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#if:{{{1|}}} |[{{{1}}} {{{2}}}] |{{{2}}} }}<noinclude><!-- Code notes (here so that people /read/ it) 1. Parameter #2 is always nonempty when called from {{Citation/core}}. 2. It's up to {{Citation/core}} to stop italicized "'foo' & 'bar'" from becoming "'''foo' & 'bar'''". Citation/core does this by having a <nowiki></nowiki> at both beginning and end of the call to this template. Since this is only needed once, it's more...'
36706
wikitext
text/x-wiki
{{#if:{{{1|}}}
|[{{{1}}} {{{2}}}]
|{{{2}}}
}}<noinclude><!--
Code notes (here so that people /read/ it)
1. Parameter #2 is always nonempty when called from {{Citation/core}}.
2. It's up to {{Citation/core}} to stop italicized "'foo' & 'bar'" from becoming
"'''foo' & 'bar'''". Citation/core does this by having a <nowiki></nowiki>
at both beginning and end of the call to this template. Since this is only
needed once, it's more efficient to do it in {{Citation/core}} than here.
-->{{documentation}}</noinclude>
kpq1iofpfn0fdo5bshpu1vjve3ehx2d
Πρότυπον:Citation Style documentation/usage
10
3488
36708
2025-12-15T22:45:37Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'Copy a blank version to use. All parameter names must be in lowercase. Use the "|" (pipe) character between each parameter. Delete unused parameters to avoid clutter in the edit window. Some samples may include the current date. If the date is not current, then {{purge|purge}} the page.'
36708
wikitext
text/x-wiki
Copy a blank version to use. All parameter names must be in lowercase. Use the "|" (pipe) character between each parameter. Delete unused parameters to avoid clutter in the edit window. Some samples may include the current date. If the date is not current, then {{purge|purge}} the page.
r9871arvco4xk4omc11y1i8p2fiufou
Πρότυπον:Citation Style documentation/usage full
10
3489
36709
2025-12-15T22:46:31Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{| class="wikitable" style="width: 100%" |+ Full parameter set in horizontal format |- style="vertical-align:top;" |'
36709
wikitext
text/x-wiki
{| class="wikitable" style="width: 100%"
|+ Full parameter set in horizontal format
|- style="vertical-align:top;"
|
ibig78ze0cv5pm1gtveggipwk9so1ba
Πρότυπον:Citation Style documentation
10
3490
36710
2025-12-15T22:47:16Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{Citation Style documentation/{{{1|}}} |aliases={{{aliases|}}} |aliases2={{{aliases2|}}} |type_default={{{type_default|}}} |title_format={{{title_format|}}} |title_title={{{title_title|}}} |contributor={{{contributor|}}} |coauthors={{{coauthors|}}} |date2={{{date2|}}} |others={{{others|}}} |cs2={{{cs2|}}} |lua={{{lua|}}} |map={{{map|}}} |pmc={{{pmc|}}} |work={{{work|}}} |department={{{department|}}} |began={{{began|}}} |link={{{link|}...'
36710
wikitext
text/x-wiki
<includeonly>{{Citation Style documentation/{{{1|}}}
|aliases={{{aliases|}}}
|aliases2={{{aliases2|}}}
|type_default={{{type_default|}}}
|title_format={{{title_format|}}}
|title_title={{{title_title|}}}
|contributor={{{contributor|}}}
|coauthors={{{coauthors|}}}
|date2={{{date2|}}}
|others={{{others|}}}
|cs2={{{cs2|}}}
|lua={{{lua|}}}
|map={{{map|}}}
|pmc={{{pmc|}}}
|work={{{work|}}}
|department={{{department|}}}
|began={{{began|}}}
|link={{{link|}}}
|2={{{2|}}}
|3={{{3|}}}
}}</includeonly><noinclude>
{{documentation}}
</noinclude>
jxezmdrak0tney4v5yk2wz62a1rj81r
Module:Convert/text
828
3491
36711
2025-12-15T22:48:06Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Text used by Module:Convert for enwiki. -- This is a separate module to simplify translation for use on another wiki. -- See [[:en:Template:Convert/Transwiki guide]] if copying to another wiki. -- Some units accept an SI prefix before the unit code, such as "kg" for kilogram. local SIprefixes = { -- The prefix field is what the prefix should be, if different from the prefix used. ['Y'] = { exponent = 24, name = 'yotta', }, [...'
36711
Scribunto
text/plain
-- Text used by Module:Convert for enwiki.
-- This is a separate module to simplify translation for use on another wiki.
-- See [[:en:Template:Convert/Transwiki guide]] if copying to another wiki.
-- Some units accept an SI prefix before the unit code, such as "kg" for kilogram.
local SIprefixes = {
-- The prefix field is what the prefix should be, if different from the prefix used.
['Y'] = { exponent = 24, name = 'yotta', },
['Z'] = { exponent = 21, name = 'zetta', },
['E'] = { exponent = 18, name = 'exa' , },
['P'] = { exponent = 15, name = 'peta' , },
['T'] = { exponent = 12, name = 'tera' , },
['G'] = { exponent = 9, name = 'giga' , },
['M'] = { exponent = 6, name = 'mega' , },
['k'] = { exponent = 3, name = 'kilo' , },
['h'] = { exponent = 2, name = 'hecto', },
['da']= { exponent = 1, name = 'deca' , name_us = 'deka' },
['d'] = { exponent = -1, name = 'deci' , },
['c'] = { exponent = -2, name = 'centi', },
['m'] = { exponent = -3, name = 'milli', },
['μ'] = { exponent = -6, name = 'micro', }, -- key = 'GREEK SMALL LETTER MU' (U+03BC) utf-8 CE BC
['µ'] = { exponent = -6, name = 'micro', prefix = 'μ' }, -- key = 'MICRO SIGN' (U+00B5) utf-8 C2 B5
['u'] = { exponent = -6, name = 'micro', prefix = 'μ' }, -- not an SI prefix, but allow for people typing this
['n'] = { exponent = -9, name = 'nano' , },
['p'] = { exponent =-12, name = 'pico' , },
['f'] = { exponent =-15, name = 'femto', },
['a'] = { exponent =-18, name = 'atto' , },
['z'] = { exponent =-21, name = 'zepto', },
['y'] = { exponent =-24, name = 'yocto', },
}
-- Some units can be qualified with one of the following prefixes, when linked.
local customary_units = {
{ "US", link = "United States customary units" },
{ "U.S.", link = "United States customary units" },
{ "imperial", link = "Imperial units" },
{ "imp", link = "Imperial units" },
}
-- Names when using engineering notation (a prefix of "eN" where N is a number; example "e6km").
-- key = { "name", link = "article title", exponent = numeric_key_value }
-- If lk=on and link is defined, the name of the number will appear as a link.
local eng_scales = {
["3"] = { "thousand", exponent = 3 },
["6"] = { "million", exponent = 6 },
["9"] = { "billion", link = "1000000000 (number)", exponent = 9 },
["12"] = { "trillion", link = "1000000000000 (number)", exponent = 12 },
["15"] = { "quadrillion", link = "1000000000000000 (number)", exponent = 15 },
}
local all_categories = {
unit = "[[Category:Convert errors]]",
option = "[[Category:Convert errors]]",
warning = '[[Category:Convert invalid options]]',
tracking = '[[Category:Convert tracking]]',
}
-- For some error messages, the following puts the wanted style around
-- each unit code marked like '...%{ft%}...'.
local unitcode_regex = '%%([{}])'
local unitcode_replace = { ['{'] = '"', ['}'] = '"' } -- no longer need the more elaborate substitute used before 2013-09-28
-- All messages that may be displayed if a problem occurs.
local all_messages = {
-- Message format string: $1=title, $2=text, $3=category, $4=anchor.
-- Each displayed message starts with "Convert:" so can easily locate by searching article.
cvt_format = '<sup class="noprint Inline-Template" style="white-space:nowrap;">[<i>[[Help:Convert messages#$4|<span title="Convert: $1">convert: $2</span>]]</i>]</sup>$3<span class="error"></span>',
cvt_format2 = '<sup class="noprint Inline-Template" style="white-space:nowrap;">[[Help:Convert messages#$4|<span title="Convert: $1">$2</span>]]</sup>$3<span class="error"></span>',
cvt_format_preview = '<strong class="error">Error in convert: $1 [[Help:Convert messages#$4|(help)]]</strong>$3',
-- Each of following messages is a table:
-- { [1] = 'title', -- mouseover title text
-- [2] = 'text', -- link text displayed in article
-- [3] = 'category key', -- key to lookup category in all_categories
-- [4] = 'anchor', -- anchor for link to relevant section on help page
-- regex = gsub_regex,
-- replace = gsub_table,
-- } Mouseover title text Link text CatKey Anchor
cvt_bad_input = { 'input "$1" must be a number and unit' , 'invalid input' , 'option', 'invalid_input' },
cvt_bad_num = { 'Value "$1" must be a number' , 'invalid number' , 'option', 'invalid_number' },
cvt_big_prec = { 'Precision "$1" is too large' , 'precision too large' , 'option', 'precision_too_large' },
cvt_invalid_num = { 'Number has overflowed' , 'number overflow' , 'option', 'number_overflow' },
cvt_no_num = { 'Needs the number to be converted' , 'needs a number' , 'option', 'needs_number' },
cvt_no_num2 = { 'Needs another number for a range' , 'needs another number', 'option', 'needs_another_number' },
cvt_bad_frac = { '"$1" needs an integer above 1' , 'invalid fraction' , 'option', 'invalid_fraction' },
cvt_bad_prec = { 'Precision "$1" must be an integer' , 'invalid precision' , 'option', 'invalid_precision' },
cvt_bad_sigfig = { '"$1" needs a positive integer' , 'invalid sigfig' , 'option', 'invalid_sigfig' },
cvt_empty_option = { 'Ignored empty option "$1"' , 'empty option' , 'option', 'empty_option' },
cvt_deprecated = { 'Option "$1" is deprecated' , '*' , 'option', 'deprecated_option', format = 'cvt_format2', nowarn = true },
cvt_no_spell = { 'Spelling is not available' , 'bug, ask for help' , 'option', 'ask_for_help' },
cvt_unknown_option = { 'Ignored invalid option "$1"' , 'invalid option' , 'option', 'invalid_option' },
cvt_wd_fail = { 'Unable to access Wikidata' , 'wikidata problem' , 'option', 'wikidata_problem' },
cvt_bad_default = { 'Unit "$1" has an invalid default' , 'bug, ask for help' , 'unit' , 'ask_for_help' },
cvt_bad_unit = { 'Unit "$1" is invalid here' , 'unit invalid here' , 'unit' , 'unit_invalid_here' },
cvt_no_default = { 'Unit "$1" has no default output unit' , 'bug, ask for help' , 'unit' , 'ask_for_help' },
cvt_no_unit = { 'Needs name of unit' , 'needs unit name' , 'unit' , 'needs_unit_name' },
cvt_unknown = { 'Unit name "$1" is not known' , 'unknown unit' , 'unit' , 'unknown_unit' },
cvt_should_be = { '$1' , 'ambiguous unit' , 'unit' , 'ambiguous_unit', regex = unitcode_regex, replace = unitcode_replace },
cvt_mismatch = { 'Cannot convert "$1" to "$2"' , 'unit mismatch' , 'unit' , 'unit_mismatch' },
cvt_bug_convert = { 'Bug: Cannot convert between specified units', 'bug, ask for help' , 'unit' , 'ask_for_help' },
cvt_lookup = { 'Unit "$1" is incorrectly defined' , 'bug, ask for help' , 'unit' , 'ask_for_help' },
}
-- Text to join input value/unit with output value/unit.
local disp_joins = {
-- [1]=before output, [2]=after output, [3]=between outputs in a combination; default "; "
-- [wantname] gives default abbr=off
["or"] = { " or " , "" , " or ", wantname = true },
["sqbr-sp"] = { " [" , "]" },
["sqbr-nbsp"] = { " [" , "]" },
["comma"] = { ", " , "" , ", " },
["slash-sp"] = { " / " , "" , wantname = true },
["slash-nbsp"] = { " / ", "" , wantname = true },
["slash-nosp"] = { "/" , "" , wantname = true },
["b"] = { " (" , ")" },
["(or)"] = { " (" , ")", " or " },
["br"] = { "<br />" , "" , wantname = true },
["br()"] = { "<br />(" , ")", wantname = true },
}
-- Text to separate values in a range.
local range_types = {
-- Specifying a table requires either:
-- * "off" and "on" values (for "abbr=off" and "abbr=on"), or
-- * "input" and "output" values (for LHS and RHS);
-- other fields are optional.
-- When "adj=on|abbr=off" applies, spaces in range text are replaced with hyphens.
-- With "exception = true", that also occurs with "adj=on|abbr=on".
-- If "adj" is defined here, that text (unchanged) is used with "adj=on".
["+"] = " + ",
[","] = ", ",
[", and"] = ", and ",
[", or"] = ", or ",
["by"] = " by ",
["-"] = "–",
["to about"] = " to about ",
["and"] = { off = " and ", on = " and ", exception = true },
["and(-)"] = { input = " and ", output = "–" },
["or"] = { off = " or " , on = " or " , exception = true },
["to"] = { off = " to " , on = " to " , exception = true },
["to(-)"] = { input = " to ", output = "–" },
["+/-"] = { off = " ± ", on = " ± ", adj = " ± ", is_range_change = true },
["by(x)"] = { input = " by ", output = " × ", out_range_x = true },
["x"] = { off = " by ", on = " × ", abbr_range_x = true },
["xx"] = " × ",
["*"] = "×",
["/"] = " / ", -- for a table of high/low temperatures with {{convert|83|/|63|F|disp=br()|abbr=values}}
}
local range_aliases = {
-- ["alternative name for a range"] = "standard range name"
["–"] = "-",
["–"] = "-",
["×"] = "x",
["×"] = "x",
["±"] = "+/-",
["±"] = "+/-",
}
-- Convert accepts range text delimited with whitespace, for example, {{convert|1 to 2|ft}}.
-- In addition, the following "words" are accepted without spaces, for example, {{convert|1-2|ft}}.
-- Words must be in correct order for searching, for example, 'x' after 'xx'.
local range_words = { '-', '–', 'xx', 'x', '*' }
local ranges = {
types = range_types,
aliases = range_aliases,
words = range_words,
}
-- Valid option names.
local en_option_name = {
-- ["local text for option name"] = "en name used in this module"
["$"] = "$",
["abbr"] = "abbr",
["adj"] = "adj",
["comma"] = "comma",
["debug"] = "debug",
["disp"] = "disp",
["frac"] = "frac",
["input"] = "input",
["lang"] = "lang",
["lk"] = "lk",
["order"] = "order",
["qid"] = "qid",
["qual"] = "qual",
["qualifier"] = "qual",
["round"] = "round",
["sigfig"] = "sigfig",
["sing"] = "adj", -- "sing" is an old alias for "adj"
["sortable"] = "sortable",
["sp"] = "sp",
["spell"] = "spell",
["stylein"] = "stylein",
["styleout"] = "styleout",
["tracking"] = "tracking",
}
-- Valid option values.
-- Convention: parms.opt_xxx refers to an option that is set here
-- (not intended to be set by the template which invokes this module).
-- Example: At enwiki, "abbr" includes:
-- ["comma"] = "opt_nocomma"
-- As a result, if the template uses abbr=comma, Module:Convert sets:
-- parms["opt_nocomma"] = true
-- parms["abbr"] = nil
-- Therefore parms.abbr will be nil, or will have one of the listed values
-- that do not start with "opt_".
-- An option value of form "xxx?" is the same as "xxx" but shows the input as deprecated.
local en_option_value = {
-- $=x is handled as a special case: x should be a currency symbol that will be used instead of "$"
["abbr"] = {
-- ["local text for option value"] = "en value used in this module"
["def"] = "", -- ignored (some wrapper templates call convert with "abbr=def" to mean "default abbreviation")
["h"] = "on", -- abbr=on + use "h" for hand unit (default)
["hh"] = "opt_hand_hh", -- abbr=on + use "hh" for hand unit
["in"] = "in", -- use symbol for LHS unit
["none"] = "off", -- old name for "off"
["off"] = "off", -- use name for all units
["on"] = "on", -- use symbol for all units
["out"] = "out", -- use symbol for RHS unit (default)
["unit"] = "unit", -- abbr=on but abbreviate units only: e6km → million km (not ×10⁶ km)
["values"] = "opt_values", -- show only input and output numbers, not units
["~"] = "opt_also_symbol", -- show input unit symbol as well as name
},
["adj"] = {
["mid"] = "opt_adjectival, opt_adj_mid", -- adj=on with user-specified text after input unit (between input and output)
["off"] = "", -- ignored (off is the default)
["on"] = "opt_adjectival", -- unit name is singular and hyphenated
["pre"] = "opt_one_preunit", -- user-specified text before input unit
["ri0"] = "opt_ri=0", -- round input with precision = 0
["ri1"] = "opt_ri=1", -- round input with precision = 1
["ri2"] = "opt_ri=2", -- round input with precision = 2
["ri3"] = "opt_ri=3", -- round input with precision = 3
},
["comma"] = {
["5"] = "opt_comma5", -- only use numsep grouping if 5 or more digits
["gaps"] = "opt_gaps", -- use gaps, not numsep, to separate groups of digits
["gaps3"] = "opt_gaps, opt_gaps3", -- group only in threes rather than default of no gap before a single digit after decimal mark
["off"] = "opt_nocomma", -- no numsep in input or output numbers
},
["debug"] = {
["yes"] = "opt_sortable_debug", -- make the normally hidden sort key visible
},
["disp"] = {
["5"] = "opt_round=5?", -- round output value to nearest 5
["b"] = "b", -- join: '(...)'
["(or)"] = "(or)", -- join: '(...)' with 'or' between outputs in a combination
["br"] = "br", -- join: '<br />'
["br()"] = "br()", -- join: '<br />(...)'
["comma"] = "comma", -- join: ','
["flip"] = "opt_flip", -- reverse order of input/output
["number"] = "opt_output_number_only", -- display output value (not input, and not output symbol/name)
["or"] = "or", -- join: 'or'
["out"] = "opt_output_only",
["output number only"] = "opt_output_number_only",
["output only"] = "opt_output_only",
["preunit"] = "opt_two_preunits", -- user-specified text before input and output units
["sqbr"] = "sqbr", -- join: '[...]'
["table"] = "opt_table", -- output is suitable for a table cell with align="right"
["tablecen"] = "opt_tablecen", -- output is suitable for a table cell with align="center"
["unit"] = "opt_input_unit_only", -- display input symbol/name (not output, and not input value)
["unit or text"] = "opt_input_unit_only, opt_ignore_error", -- display input symbol/name, or given unit code if not known
["unit2"] = "opt_output_unit_only",
["x"] = "x", -- join: <first>...<second> (user-specified text)
},
-- frac=x is handled as a special case: x must be an integer (possibly in local language) = 2 or more
-- input=x is handled as a special case: x should be <value><space><unitcode> or <wikidata-property-id>
["lang"] = { -- language for output digits (both en and local digits are always accepted for input)
["en"] = "opt_lang_en", -- use en digits for numbers, regardless of local language
["local"] = "opt_lang_local", -- use local digits for numbers (default, although config can change default to en)
},
["lk"] = {
["in"] = "in", -- link LHS unit name or symbol
["off"] = "off", -- do not link: same as default except for hand unit
["on"] = "on", -- link all unit names or symbols (but not twice for the same unit)
["out"] = "out", -- link RHS unit name or symbol
},
["order"] = {
["flip"] = "opt_flip", -- reverse order of input/output
["out"] = "opt_order_out", -- do not show input; instead, use order in output combination, with the first output shown as the input
},
-- qid=x is handled as a special case: x should be a Wikidata Q item identifier.
-- qual=x is handled as a special case: x should be a Wikidata Q item identifier.
["round"] = {
["0.5"] = "opt_round=0.5", -- round output value to nearest 0.5
["5"] = "opt_round=5", -- round output value to nearest 5
["10"] = "opt_round=10", -- round output value to nearest 10 (same as but clearer than "|-1")
["25"] = "opt_round=25", -- round output value to nearest 25
["50"] = "opt_round=50", -- round output value to nearest 50
["each"] = "opt_round_each", -- using default precision in a range, round each output separately (default uses highest precision of each item in range)
},
-- sigfig=x is handled as a special case: x must be an integer (possibly in local language) = 1 or more
["sortable"] = {
["off"] = "", -- ignored (off is the default)
["on"] = "opt_sortable_on", -- output sort key for use in a sortable table, based on value from converting to a standard base unit
["debug"] = "opt_sortable_on, opt_sortable_debug", -- |sortable=debug is the same as |sortable=on|debug=yes
},
["sp"] = {
["us"] = "opt_sp_us", -- use U.S. spelling (like "meter" instead of default "metre")
},
["spell"] = { -- only English spelling is supported; not scientific notation; only some fractions
["in"] = "opt_spell_in", -- spell input value in words
["In"] = "opt_spell_in, opt_spell_upper", -- spell input value in words with first letter uppercase
["on"] = "opt_spell_in, opt_spell_out", -- spell input and output values in words
["On"] = "opt_spell_in, opt_spell_out, opt_spell_upper", -- same, with first letter of first word in result uppercase
},
-- stylein=x is handled as a special case: x can be any text
-- styleout=x is handled as a special case: x can be any text
-- tracking=x is handled as a special case: x can be any text
}
return {
SIprefixes = SIprefixes,
all_categories = all_categories,
all_messages = all_messages,
currency = { ['$'] = true, ['£'] = true, ['€'] = true, ['₱'] = true, ['₽'] = true, ['¥'] = true },
customary_units = customary_units,
disp_joins = disp_joins,
en_option_name = en_option_name,
en_option_value = en_option_value,
eng_scales = eng_scales,
ranges = ranges,
}
dhmh4lgsbtokaerxu3h0dg11g442lbk
Module:Convert/data
828
3492
36712
2025-12-15T22:49:09Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Conversion data used by [[Module:Convert]] which uses mw.loadData() for -- read-only access to this module so that it is loaded only once per page. -- See [[:en:Template:Convert/Transwiki guide]] if copying to another wiki. -- -- These data tables follow: -- all_units all properties for a unit, including default output -- default_exceptions exceptions for default output ('kg' and 'g' have different defaults) -- link_exceptions...'
36712
Scribunto
text/plain
-- Conversion data used by [[Module:Convert]] which uses mw.loadData() for
-- read-only access to this module so that it is loaded only once per page.
-- See [[:en:Template:Convert/Transwiki guide]] if copying to another wiki.
--
-- These data tables follow:
-- all_units all properties for a unit, including default output
-- default_exceptions exceptions for default output ('kg' and 'g' have different defaults)
-- link_exceptions exceptions for links ('kg' and 'g' have different links)
--
-- These tables are generated by a script which reads the wikitext of a page that
-- documents the required properties of each unit; see [[:en:Module:Convert/doc]].
---------------------------------------------------------------------------
-- Do not change the data in this table because it is created by running --
-- a script that reads the wikitext from a wiki page (see note above). --
---------------------------------------------------------------------------
local all_units = {
["Gy"] = {
_name1 = "gray",
_symbol = "Gy",
utype = "absorbed radiation dose",
scale = 1,
prefixes = 1,
default = "rad",
link = "Gray (unit)",
},
["rad"] = {
_name1 = "rad",
_symbol = "rad",
utype = "absorbed radiation dose",
scale = 0.01,
prefixes = 1,
default = "Gy",
link = "Rad (unit)",
},
["cm/s2"] = {
name1 = "centimetre per second squared",
name1_us = "centimeter per second squared",
name2 = "centimetres per second squared",
name2_us = "centimeters per second squared",
symbol = "cm/s<sup>2</sup>",
utype = "acceleration",
scale = 0.01,
default = "ft/s2",
link = "Gal (unit)",
},
["ft/s2"] = {
name1 = "foot per second squared",
name2 = "feet per second squared",
symbol = "ft/s<sup>2</sup>",
utype = "acceleration",
scale = 0.3048,
default = "m/s2",
},
["g0"] = {
name1 = "standard gravity",
name2 = "standard gravities",
symbol = "''g<sub>0</sub>''",
utype = "acceleration",
scale = 9.80665,
default = "m/s2",
},
["km/hs"] = {
name1 = "kilometre per hour per second",
name1_us = "kilometer per hour per second",
name2 = "kilometres per hour per second",
name2_us = "kilometers per hour per second",
symbol = "km/(h⋅s)",
utype = "acceleration",
scale = 0.27777777777777779,
default = "mph/s",
link = "Acceleration",
},
["km/s2"] = {
name1 = "kilometre per second squared",
name1_us = "kilometer per second squared",
name2 = "kilometres per second squared",
name2_us = "kilometers per second squared",
symbol = "km/s<sup>2</sup>",
utype = "acceleration",
scale = 1000,
default = "mph/s",
link = "Acceleration",
},
["m/s2"] = {
name1 = "metre per second squared",
name1_us = "meter per second squared",
name2 = "metres per second squared",
name2_us = "meters per second squared",
symbol = "m/s<sup>2</sup>",
utype = "acceleration",
scale = 1,
default = "ft/s2",
},
["mph/s"] = {
name1 = "mile per hour per second",
name2 = "miles per hour per second",
symbol = "mph/s",
utype = "acceleration",
scale = 0.44704,
default = "km/hs",
link = "Acceleration",
},
["km/h/s"] = {
target = "km/hs",
},
["standard gravity"] = {
target = "g0",
},
["1000sqft"] = {
name1 = "thousand square feet",
name2 = "thousand square feet",
symbol = "1000 sq ft",
utype = "area",
scale = 92.90304,
default = "m2",
link = "Square foot",
},
["a"] = {
_name1 = "are",
_symbol = "a",
utype = "area",
scale = 100,
prefixes = 1,
default = "sqft",
link = "Hectare#Are",
},
["acre"] = {
symbol = "acre",
usename = 1,
utype = "area",
scale = 4046.8564224,
default = "ha",
subdivs = { ["rood"] = { 4, default = "ha" }, ["sqperch"] = { 160, default = "ha" } },
},
["acre-sing"] = {
target = "acre",
},
["arpent"] = {
symbol = "arpent",
usename = 1,
utype = "area",
scale = 3418.89,
default = "ha",
},
["cda"] = {
name1 = "cuerda",
symbol = "cda",
utype = "area",
scale = 3930.395625,
default = "ha acre",
},
["daa"] = {
name1 = "decare",
symbol = "daa",
utype = "area",
scale = 1000,
default = "km2 sqmi",
},
["dunam"] = {
symbol = "dunam",
usename = 1,
utype = "area",
scale = 1000,
default = "km2 sqmi",
},
["dunum"] = {
symbol = "dunum",
usename = 1,
utype = "area",
scale = 1000,
default = "km2 sqmi",
link = "Dunam",
},
["ha"] = {
name1 = "hectare",
symbol = "ha",
utype = "area",
scale = 10000,
default = "acre",
},
["hectare"] = {
name1 = "hectare",
symbol = "ha",
usename = 1,
utype = "area",
scale = 10000,
default = "acre",
},
["Irish acre"] = {
name1 = "Irish acre",
symbol = "Irish acres",
utype = "area",
scale = 6555.2385024,
default = "ha",
link = "Acre (Irish)",
},
["m2"] = {
_name1 = "square metre",
_name1_us= "square meter",
_symbol = "m<sup>2</sup>",
prefix_position= 8,
utype = "area",
scale = 1,
prefixes = 2,
default = "sqft",
link = "Square metre",
},
["pondemaat"] = {
name1 = "pondemaat",
name2 = "pondemaat",
symbol = "pond",
utype = "area",
scale = 3674.363358816,
default = "m2",
link = ":nl:pondemaat",
},
["pyeong"] = {
name2 = "pyeong",
symbol = "pyeong",
usename = 1,
utype = "area",
scale = 3.3057851239669422,
default = "m2",
},
["rai"] = {
name2 = "rai",
symbol = "rai",
utype = "area",
scale = 1600,
default = "m2",
link = "Rai (unit)",
},
["rood"] = {
symbol = "rood",
usename = 1,
utype = "area",
scale = 1011.7141056,
default = "sqft m2",
subdivs = { ["sqperch"] = { 40, default = "m2" } },
link = "Rood (unit)",
},
["sqfoot"] = {
name1 = "square foot",
name2 = "square foot",
symbol = "sq ft",
utype = "area",
scale = 0.09290304,
default = "m2",
},
["sqft"] = {
name1 = "square foot",
name2 = "square feet",
symbol = "sq ft",
utype = "area",
scale = 0.09290304,
default = "m2",
},
["sqin"] = {
name1 = "square inch",
name2 = "square inches",
symbol = "sq in",
utype = "area",
scale = 0.00064516,
default = "cm2",
},
["sqmi"] = {
name1 = "square mile",
symbol = "sq mi",
utype = "area",
scale = 2589988.110336,
default = "km2",
},
["sqnmi"] = {
name1 = "square nautical mile",
symbol = "sq nmi",
utype = "area",
scale = 3429904,
default = "km2 sqmi",
link = "Nautical mile",
},
["sqperch"] = {
name2 = "perches",
symbol = "perch",
usename = 1,
utype = "area",
scale = 25.29285264,
default = "m2",
link = "Perch (unit)#Area",
},
["sqverst"] = {
symbol = "square verst",
usename = 1,
utype = "area",
scale = 1138062.24,
default = "km2 sqmi",
link = "Verst",
},
["sqyd"] = {
name1 = "square yard",
symbol = "sq yd",
utype = "area",
scale = 0.83612736,
default = "m2",
},
["tsubo"] = {
name2 = "tsubo",
symbol = "tsubo",
usename = 1,
utype = "area",
scale = 3.3057851239669422,
default = "m2",
link = "Japanese units of measurement#Area",
},
["acres"] = {
target = "acre",
},
["are"] = {
target = "a",
},
["decare"] = {
target = "daa",
},
["foot2"] = {
target = "sqfoot",
},
["ft2"] = {
target = "sqft",
},
["in2"] = {
target = "sqin",
symbol = "in<sup>2</sup>",
},
["km²"] = {
target = "km2",
},
["mi2"] = {
target = "sqmi",
},
["million acre"] = {
target = "e6acre",
},
["million acres"] = {
target = "e6acre",
},
["million hectares"] = {
target = "e6ha",
},
["m²"] = {
target = "m2",
},
["nmi2"] = {
target = "sqnmi",
},
["pond"] = {
target = "pondemaat",
},
["sq arp"] = {
target = "arpent",
},
["sqkm"] = {
target = "km2",
},
["sqm"] = {
target = "m2",
},
["square verst"] = {
target = "sqverst",
},
["verst2"] = {
target = "sqverst",
},
["yd2"] = {
target = "sqyd",
},
["m2/ha"] = {
name1 = "square metre per hectare",
name1_us = "square meter per hectare",
name2 = "square metres per hectare",
name2_us = "square meters per hectare",
symbol = "m<sup>2</sup>/ha",
utype = "area per unit area",
scale = 0.0001,
default = "sqft/acre",
link = "Basal area",
},
["sqft/acre"] = {
name1 = "square foot per acre",
name2 = "square feet per acre",
symbol = "sq ft/acre",
utype = "area per unit area",
scale = 2.295684113865932e-5,
default = "m2/ha",
link = "Basal area",
},
["cent"] = {
name1 = "cent",
symbol = "¢",
utype = "cent",
scale = 1,
default = "cent",
link = "Cent (currency)",
},
["¢"] = {
target = "cent",
},
["A.h"] = {
name1 = "ampere hour",
symbol = "A⋅h",
utype = "charge",
scale = 3600,
default = "coulomb",
},
["coulomb"] = {
_name1 = "coulomb",
_symbol = "C",
utype = "charge",
scale = 1,
prefixes = 1,
default = "e",
link = "Coulomb",
},
["e"] = {
name1 = "elementary charge",
symbol = "''e''",
utype = "charge",
scale = 1.602176487e-19,
default = "coulomb",
},
["g-mol"] = {
name1 = "gram-mole",
symbol = "g‑mol",
utype = "chemical amount",
scale = 1,
default = "lbmol",
link = "Mole (unit)",
},
["gmol"] = {
name1 = "gram-mole",
symbol = "gmol",
utype = "chemical amount",
scale = 1,
default = "lbmol",
link = "Mole (unit)",
},
["kmol"] = {
name1 = "kilomole",
symbol = "kmol",
utype = "chemical amount",
scale = 1000,
default = "lbmol",
link = "Mole (unit)",
},
["lb-mol"] = {
name1 = "pound-mole",
symbol = "lb‑mol",
utype = "chemical amount",
scale = 453.59237,
default = "mol",
link = "Mole (unit)#Other units called \"mole\"",
},
["lbmol"] = {
name1 = "pound-mole",
symbol = "lbmol",
utype = "chemical amount",
scale = 453.59237,
default = "mol",
link = "Mole (unit)#Other units called \"mole\"",
},
["mol"] = {
name1 = "mole",
symbol = "mol",
utype = "chemical amount",
scale = 1,
default = "lbmol",
link = "Mole (unit)",
},
["kgCO2/L"] = {
name1 = "kilogram per litre",
name1_us = "kilogram per liter",
name2 = "kilograms per litre",
name2_us = "kilograms per liter",
symbol = "kg(CO<sub>2</sub>)/L",
utype = "co2 per unit volume",
scale = 1000,
default = "lbCO2/USgal",
link = "Exhaust gas",
},
["lbCO2/USgal"] = {
name1 = "pound per US gallon",
name2 = "pounds per US gallon",
symbol = "lbCO2/US gal",
utype = "co2 per unit volume",
scale = 119.82642731689663,
default = "kgCO2/L",
link = "Exhaust gas",
},
["oz/lb"] = {
per = { "oz", "lb" },
utype = "concentration",
default = "mg/kg",
},
["mg/kg"] = {
per = { "mg", "kg" },
utype = "concentration",
default = "oz/lb",
},
["g/dm3"] = {
name1 = "gram per cubic decimetre",
name1_us = "gram per cubic decimeter",
name2 = "grams per cubic decimetre",
name2_us = "grams per cubic decimeter",
symbol = "g/dm<sup>3</sup>",
utype = "density",
scale = 1,
default = "kg/m3",
link = "Density",
},
["g/L"] = {
name1 = "gram per litre",
name1_us = "gram per liter",
name2 = "grams per litre",
name2_us = "grams per liter",
symbol = "g/L",
utype = "density",
scale = 1,
default = "lb/cuin",
link = "Density",
},
["g/mL"] = {
name1 = "gram per millilitre",
name1_us = "gram per milliliter",
name2 = "grams per millilitre",
name2_us = "grams per milliliter",
symbol = "g/mL",
utype = "density",
scale = 1000,
default = "lb/cuin",
link = "Density",
},
["g/ml"] = {
name1 = "gram per millilitre",
name1_us = "gram per milliliter",
name2 = "grams per millilitre",
name2_us = "grams per milliliter",
symbol = "g/ml",
utype = "density",
scale = 1000,
default = "lb/cuin",
link = "Density",
},
["kg/dm3"] = {
name1 = "kilogram per cubic decimetre",
name1_us = "kilogram per cubic decimeter",
name2 = "kilograms per cubic decimetre",
name2_us = "kilograms per cubic decimeter",
symbol = "kg/dm<sup>3</sup>",
utype = "density",
scale = 1000,
default = "lb/cuft",
link = "Density",
},
["kg/L"] = {
name1 = "kilogram per litre",
name1_us = "kilogram per liter",
name2 = "kilograms per litre",
name2_us = "kilograms per liter",
symbol = "kg/L",
utype = "density",
scale = 1000,
default = "lb/USgal",
link = "Density",
},
["kg/l"] = {
name1 = "kilogram per litre",
name1_us = "kilogram per liter",
name2 = "kilograms per litre",
name2_us = "kilograms per liter",
symbol = "kg/l",
utype = "density",
scale = 1000,
default = "lb/USgal",
link = "Density",
},
["kg/m3"] = {
name1 = "kilogram per cubic metre",
name1_us = "kilogram per cubic meter",
name2 = "kilograms per cubic metre",
name2_us = "kilograms per cubic meter",
symbol = "kg/m<sup>3</sup>",
utype = "density",
scale = 1,
default = "lb/cuyd",
link = "Density",
},
["lb/cuft"] = {
name1 = "pound per cubic foot",
name2 = "pounds per cubic foot",
symbol = "lb/cu ft",
utype = "density",
scale = 16.018463373960142,
default = "g/cm3",
link = "Density",
},
["lb/cuin"] = {
name1 = "pound per cubic inch",
name2 = "pounds per cubic inch",
symbol = "lb/cu in",
utype = "density",
scale = 27679.904710203122,
default = "g/cm3",
link = "Density",
},
["lb/cuyd"] = {
name1 = "pound per cubic yard",
name2 = "pounds per cubic yard",
symbol = "lb/cu yd",
utype = "density",
scale = 0.5932764212577829,
default = "kg/m3",
link = "Density",
},
["lb/impgal"] = {
name1 = "pound per imperial gallon",
name2 = "pounds per imperial gallon",
symbol = "lb/imp gal",
utype = "density",
scale = 99.776372663101697,
default = "kg/L",
link = "Density",
},
["lb/in3"] = {
name1 = "pound per cubic inch",
name2 = "pounds per cubic inch",
symbol = "lb/cu in",
utype = "density",
scale = 27679.904710203122,
default = "g/cm3",
link = "Density",
},
["lb/U.S.gal"] = {
name1 = "pound per U.S. gallon",
name2 = "pounds per U.S. gallon",
symbol = "lb/U.S. gal",
utype = "density",
scale = 119.82642731689663,
default = "kg/L",
link = "Density",
},
["lb/USbu"] = {
name1 = "pound per US bushel",
name2 = "pounds per US bushel",
symbol = "lb/US bu",
utype = "density",
scale = 12.871859780974471,
default = "kg/m3",
link = "Bushel",
},
["lb/USgal"] = {
name1 = "pound per US gallon",
name2 = "pounds per US gallon",
symbol = "lb/US gal",
utype = "density",
scale = 119.82642731689663,
default = "kg/L",
link = "Density",
},
["lbm/cuin"] = {
name1 = "pound mass per cubic inch",
name2 = "pounds mass per cubic inch",
symbol = "lbm/cu in",
utype = "density",
scale = 27679.904710203122,
default = "g/cm3",
link = "Density",
},
["mg/L"] = {
name1 = "milligram per litre",
name1_us = "milligram per liter",
name2 = "milligrams per litre",
name2_us = "milligrams per liter",
symbol = "mg/L",
utype = "density",
scale = 0.001,
default = "lb/cuin",
link = "Density",
},
["oz/cuin"] = {
name1 = "ounce per cubic inch",
name2 = "ounces per cubic inch",
symbol = "oz/cu in",
utype = "density",
scale = 1729.9940443876951,
default = "g/cm3",
link = "Density",
},
["g/cm3"] = {
per = { "g", "cm3" },
utype = "density",
default = "lb/cuin",
},
["g/m3"] = {
per = { "g", "m3" },
utype = "density",
default = "lb/cuyd",
link = "Density",
},
["Mg/m3"] = {
per = { "Mg", "m3" },
utype = "density",
default = "lb/cuft",
},
["mg/l"] = {
per = { "mg", "l" },
utype = "density",
default = "oz/cuin",
},
["μg/dL"] = {
per = { "μg", "dL" },
utype = "density",
default = "lb/cuin",
},
["μg/l"] = {
per = { "μg", "l" },
utype = "density",
default = "oz/cuin",
},
["lb/ft3"] = {
target = "lb/cuft",
},
["lb/yd3"] = {
target = "lb/cuyd",
},
["lbm/in3"] = {
target = "lbm/cuin",
},
["mcg/dL"] = {
target = "μg/dL",
},
["oz/in3"] = {
target = "oz/cuin",
},
["ug/dL"] = {
target = "μg/dL",
},
["ug/l"] = {
target = "μg/l",
},
["B.O.T.U."] = {
name1 = "Board of Trade Unit",
symbol = "B.O.T.U.",
utype = "energy",
scale = 3600000,
default = "MJ",
link = "Watt-hour",
},
["bboe"] = {
name1 = "barrel of oil equivalent",
name2 = "barrels of oil equivalent",
symbol = "bboe",
utype = "energy",
scale = 6117863200,
default = "GJ",
},
["BOE"] = {
name1 = "barrel of oil equivalent",
name2 = "barrels of oil equivalent",
symbol = "BOE",
utype = "energy",
scale = 6117863200,
default = "GJ",
},
["BTU"] = {
name1 = "British thermal unit",
symbol = "BTU",
utype = "energy",
scale = 1055.05585262,
default = "kJ",
},
["Btu"] = {
name1 = "British thermal unit",
symbol = "Btu",
utype = "energy",
scale = 1055.05585262,
default = "kJ",
},
["BTU-39F"] = {
name1 = "British thermal unit (39°F)",
name2 = "British thermal units (39°F)",
symbol = "BTU<sub>39°F</sub>",
utype = "energy",
scale = 1059.67,
default = "kJ",
link = "British thermal unit",
},
["Btu-39F"] = {
name1 = "British thermal unit (39°F)",
name2 = "British thermal units (39°F)",
symbol = "Btu<sub>39°F</sub>",
utype = "energy",
scale = 1059.67,
default = "kJ",
link = "British thermal unit",
},
["BTU-59F"] = {
name1 = "British thermal unit (59°F)",
name2 = "British thermal units (59°F)",
symbol = "BTU<sub>59°F</sub>",
utype = "energy",
scale = 1054.804,
default = "kJ",
link = "British thermal unit",
},
["Btu-59F"] = {
name1 = "British thermal unit (59°F)",
name2 = "British thermal units (59°F)",
symbol = "Btu<sub>59°F</sub>",
utype = "energy",
scale = 1054.804,
default = "kJ",
link = "British thermal unit",
},
["BTU-60F"] = {
name1 = "British thermal unit (60°F)",
name2 = "British thermal units (60°F)",
symbol = "BTU<sub>60°F</sub>",
utype = "energy",
scale = 1054.68,
default = "kJ",
link = "British thermal unit",
},
["Btu-60F"] = {
name1 = "British thermal unit (60°F)",
name2 = "British thermal units (60°F)",
symbol = "Btu<sub>60°F</sub>",
utype = "energy",
scale = 1054.68,
default = "kJ",
link = "British thermal unit",
},
["BTU-63F"] = {
name1 = "British thermal unit (63°F)",
name2 = "British thermal units (63°F)",
symbol = "BTU<sub>63°F</sub>",
utype = "energy",
scale = 1054.6,
default = "kJ",
link = "British thermal unit",
},
["Btu-63F"] = {
name1 = "British thermal unit (63°F)",
name2 = "British thermal units (63°F)",
symbol = "Btu<sub>63°F</sub>",
utype = "energy",
scale = 1054.6,
default = "kJ",
link = "British thermal unit",
},
["BTU-ISO"] = {
name1 = "British thermal unit (ISO)",
name2 = "British thermal units (ISO)",
symbol = "BTU<sub>ISO</sub>",
utype = "energy",
scale = 1055.056,
default = "kJ",
link = "British thermal unit",
},
["Btu-ISO"] = {
target = "BTU-ISO",
},
["BTU-IT"] = {
name1 = "British thermal unit (IT)",
name2 = "British thermal units (IT)",
symbol = "BTU<sub>IT</sub>",
utype = "energy",
scale = 1055.05585262,
default = "kJ",
link = "British thermal unit",
},
["Btu-IT"] = {
name1 = "British thermal unit (IT)",
name2 = "British thermal units (IT)",
symbol = "Btu<sub>IT</sub>",
utype = "energy",
scale = 1055.05585262,
default = "kJ",
link = "British thermal unit",
},
["BTU-mean"] = {
name1 = "British thermal unit (mean)",
name2 = "British thermal units (mean)",
symbol = "BTU<sub>mean</sub>",
utype = "energy",
scale = 1055.87,
default = "kJ",
link = "British thermal unit",
},
["Btu-mean"] = {
name1 = "British thermal unit (mean)",
name2 = "British thermal units (mean)",
symbol = "Btu<sub>mean</sub>",
utype = "energy",
scale = 1055.87,
default = "kJ",
link = "British thermal unit",
},
["BTU-th"] = {
name1 = "British thermal unit (thermochemical)",
name2 = "British thermal units (thermochemical)",
symbol = "BTU<sub>th</sub>",
utype = "energy",
scale = 1054.35026444,
default = "kJ",
link = "British thermal unit",
},
["Btu-th"] = {
name1 = "British thermal unit (thermochemical)",
name2 = "British thermal units (thermochemical)",
symbol = "Btu<sub>th</sub>",
utype = "energy",
scale = 1054.35026444,
default = "kJ",
link = "British thermal unit",
},
["Cal"] = {
name1 = "calorie",
symbol = "Cal",
utype = "energy",
scale = 4184,
default = "kJ",
},
["cal"] = {
name1 = "calorie",
symbol = "cal",
utype = "energy",
scale = 4.184,
default = "J",
},
["Cal-15"] = {
name1 = "Calorie (15°C)",
name2 = "Calories (15°C)",
symbol = "Cal<sub>15</sub>",
utype = "energy",
scale = 4185.8,
default = "kJ",
link = "Calorie",
},
["cal-15"] = {
name1 = "calorie (15°C)",
name2 = "calories (15°C)",
symbol = "cal<sub>15</sub>",
utype = "energy",
scale = 4.1858,
default = "J",
link = "Calorie",
},
["Cal-IT"] = {
name1 = "Calorie (International Steam Table)",
name2 = "Calories (International Steam Table)",
symbol = "Cal<sub>IT</sub>",
utype = "energy",
scale = 4186.8,
default = "kJ",
link = "Calorie",
},
["cal-IT"] = {
name1 = "calorie (International Steam Table)",
name2 = "calories (International Steam Table)",
symbol = "cal<sub>IT</sub>",
utype = "energy",
scale = 4.1868,
default = "J",
link = "Calorie",
},
["Cal-th"] = {
name1 = "Calorie (thermochemical)",
name2 = "Calories (thermochemical)",
symbol = "Cal<sub>th</sub>",
utype = "energy",
scale = 4184,
default = "kJ",
link = "Calorie",
},
["cal-th"] = {
name1 = "calorie (thermochemical)",
name2 = "calories (thermochemical)",
symbol = "cal<sub>th</sub>",
utype = "energy",
scale = 4.184,
default = "J",
link = "Calorie",
},
["ccatm"] = {
name1 = "cubic centimetre-atmosphere",
name1_us = "cubic centimeter-atmosphere",
symbol = "cc⋅atm",
utype = "energy",
scale = 0.101325,
default = "mJ",
link = "Atmosphere (unit)",
},
["CHU-IT"] = {
name1 = "Celsius heat unit (International Table)",
name2 = "Celsius heat units (International Table)",
symbol = "CHU<sub>IT</sub>",
utype = "energy",
scale = 1899.100534716,
default = "kJ",
link = "Conversion of units#Energy",
},
["cm3atm"] = {
name1 = "cubic centimetre-atmosphere",
name1_us = "cubic centimeter-atmosphere",
symbol = "cm<sup>3</sup>⋅atm",
utype = "energy",
scale = 0.101325,
default = "mJ",
link = "Atmosphere (unit)",
},
["cufootatm"] = {
name1 = "cubic foot of atmosphere",
name2 = "cubic foot of atmosphere",
symbol = "cu ft atm",
utype = "energy",
scale = 2869.2044809344,
default = "kJ",
link = "Atmosphere (unit)",
},
["cufootnaturalgas"] = {
name1 = "cubic foot of natural gas",
name2 = "cubic foot of natural gas",
symbol = "cuftnaturalgas",
usename = 1,
utype = "energy",
scale = 1055055.85262,
default = "MJ",
link = "Conversion of units#Energy",
},
["cuftatm"] = {
name1 = "cubic foot of atmosphere",
name2 = "cubic feet of atmosphere",
symbol = "cu ft atm",
utype = "energy",
scale = 2869.2044809344,
default = "kJ",
link = "Atmosphere (unit)",
},
["cuftnaturalgas"] = {
name1 = "cubic foot of natural gas",
name2 = "cubic feet of natural gas",
symbol = "cuftnaturalgas",
usename = 1,
utype = "energy",
scale = 1055055.85262,
default = "MJ",
link = "Conversion of units#Energy",
},
["cuydatm"] = {
name1 = "cubic yard of atmosphere",
name2 = "cubic yards of atmosphere",
symbol = "cu yd atm",
utype = "energy",
scale = 77468.5209852288,
default = "kJ",
link = "Atmosphere (unit)",
},
["Eh"] = {
name1 = "Hartree",
symbol = "''E''<sub>h</sub>",
utype = "energy",
scale = 4.35974417e-18,
default = "eV",
},
["erg"] = {
symbol = "erg",
utype = "energy",
scale = 0.0000001,
default = "μJ",
},
["eV"] = {
name1 = "electronvolt",
symbol = "eV",
utype = "energy",
scale = 1.602176487e-19,
default = "aJ",
},
["feV"] = {
name1 = "femtoelectronvolt",
symbol = "feV",
utype = "energy",
scale = 1.602176487e-34,
default = "yJ",
link = "Electronvolt",
},
["foe"] = {
symbol = "foe",
utype = "energy",
scale = 1e44,
default = "YJ",
link = "Foe (unit)",
},
["ftlb"] = {
name1 = "foot-pound",
symbol = "ft⋅lb",
utype = "energy",
alttype = "torque",
scale = 1.3558179483314004,
default = "J",
link = "Foot-pound (energy)",
},
["ftlb-f"] = {
name1 = "foot-pound force",
name2 = "foot-pounds force",
symbol = "ft⋅lb<sub>f</sub>",
utype = "energy",
alttype = "torque",
scale = 1.3558179483314004,
default = "J",
link = "Foot-pound (energy)",
},
["ftlbf"] = {
name1 = "foot-pound force",
name2 = "foot-pounds force",
symbol = "ft⋅lbf",
utype = "energy",
alttype = "torque",
scale = 1.3558179483314004,
default = "J",
link = "Foot-pound (energy)",
},
["ftpdl"] = {
name1 = "foot-poundal",
symbol = "ft⋅pdl",
utype = "energy",
scale = 0.0421401100938048,
default = "J",
},
["GeV"] = {
name1 = "gigaelectronvolt",
symbol = "GeV",
utype = "energy",
scale = 1.602176487e-10,
default = "nJ",
link = "Electronvolt",
},
["GLatm"] = {
name1 = "gigalitre-atmosphere",
name1_us = "gigaliter-atmosphere",
symbol = "GL⋅atm",
utype = "energy",
scale = 101325000000,
default = "GJ",
link = "Atmosphere (unit)",
},
["Glatm"] = {
name1 = "gigalitre-atmosphere",
name1_us = "gigaliter-atmosphere",
symbol = "Gl⋅atm",
utype = "energy",
scale = 101325000000,
default = "GJ",
link = "Atmosphere (unit)",
},
["gTNT"] = {
name2 = "grams of TNT",
symbol = "gram of TNT",
usename = 1,
utype = "energy",
scale = 4184,
default = "kJ",
link = "TNT equivalent",
},
["Gtoe"] = {
name1 = "gigatonne of oil equivalent",
name2 = "gigatonnes of oil equivalent",
symbol = "Gtoe",
utype = "energy",
scale = 4.1868e19,
default = "EJ",
link = "Tonne of oil equivalent",
},
["GtonTNT"] = {
name2 = "gigatons of TNT",
symbol = "gigaton of TNT",
usename = 1,
utype = "energy",
scale = 4.184e18,
default = "EJ",
link = "TNT equivalent",
},
["GtTNT"] = {
name2 = "gigatonnes of TNT",
symbol = "gigatonne of TNT",
usename = 1,
utype = "energy",
scale = 4.184e18,
default = "EJ",
link = "TNT equivalent",
},
["GW.h"] = {
name1 = "gigawatt-hour",
symbol = "GW⋅h",
utype = "energy",
scale = 3.6e12,
default = "TJ",
link = "Watt-hour",
},
["GWh"] = {
name1 = "gigawatt-hour",
symbol = "GWh",
utype = "energy",
scale = 3.6e12,
default = "TJ",
link = "Watt-hour",
},
["hph"] = {
name1 = "horsepower-hour",
symbol = "hp⋅h",
utype = "energy",
scale = 2684519.537696172792,
default = "kWh",
link = "Horsepower",
},
["impgalatm"] = {
name1 = "imperial gallon-atmosphere",
symbol = "imp gal⋅atm",
utype = "energy",
scale = 460.63256925,
default = "J",
link = "Atmosphere (unit)",
},
["inlb"] = {
name1 = "inch-pound",
symbol = "in⋅lb",
utype = "energy",
alttype = "torque",
scale = 0.1129848290276167,
default = "mJ",
link = "Foot-pound (energy)",
},
["inlb-f"] = {
name1 = "inch-pound force",
name2 = "inch-pounds force",
symbol = "in⋅lb<sub>f</sub>",
utype = "energy",
alttype = "torque",
scale = 0.1129848290276167,
default = "mJ",
link = "Foot-pound (energy)",
},
["inlbf"] = {
name1 = "inch-pound force",
name2 = "inch-pounds force",
symbol = "in⋅lbf",
utype = "energy",
alttype = "torque",
scale = 0.1129848290276167,
default = "mJ",
link = "Foot-pound (energy)",
},
["inoz-f"] = {
name1 = "inch-ounce force",
name2 = "inch-ounces force",
symbol = "in⋅oz<sub>f</sub>",
utype = "energy",
alttype = "torque",
scale = 0.00706155181422604375,
default = "mJ",
link = "Foot-pound (energy)",
},
["inozf"] = {
name1 = "inch-ounce force",
name2 = "inch-ounces force",
symbol = "in⋅ozf",
utype = "energy",
alttype = "torque",
scale = 0.00706155181422604375,
default = "mJ",
link = "Foot-pound (energy)",
},
["J"] = {
_name1 = "joule",
_symbol = "J",
utype = "energy",
scale = 1,
prefixes = 1,
default = "cal",
link = "Joule",
},
["kBOE"] = {
name1 = "kilo barrel of oil equivalent",
name2 = "kilo barrels of oil equivalent",
symbol = "kBOE",
utype = "energy",
scale = 6.1178632e12,
default = "TJ",
link = "Barrel of oil equivalent",
},
["kcal"] = {
name1 = "kilocalorie",
symbol = "kcal",
utype = "energy",
scale = 4184,
default = "kJ",
link = "Calorie",
},
["kcal-15"] = {
name1 = "kilocalorie (15°C)",
name2 = "kilocalories (15°C)",
symbol = "kcal<sub>15</sub>",
utype = "energy",
scale = 4185.8,
default = "kJ",
link = "Calorie",
},
["kcal-IT"] = {
name1 = "kilocalorie (International Steam Table)",
name2 = "kilocalories (International Steam Table)",
symbol = "kcal<sub>IT</sub>",
utype = "energy",
scale = 4186.8,
default = "kJ",
link = "Calorie",
},
["kcal-th"] = {
name1 = "kilocalorie (thermochemical)",
name2 = "kilocalories (thermochemical)",
symbol = "kcal<sub>th</sub>",
utype = "energy",
scale = 4184,
default = "kJ",
link = "Calorie",
},
["kerg"] = {
name1 = "kiloerg",
symbol = "kerg",
utype = "energy",
scale = 0.0001,
default = "mJ",
link = "Erg",
},
["keV"] = {
name1 = "kiloelectronvolt",
symbol = "keV",
utype = "energy",
scale = 1.602176487e-16,
default = "fJ",
link = "Electronvolt",
},
["kgTNT"] = {
name2 = "kilograms of TNT",
symbol = "kilogram of TNT",
usename = 1,
utype = "energy",
scale = 4184000,
default = "MJ",
link = "TNT equivalent",
},
["kLatm"] = {
name1 = "kilolitre-atmosphere",
name1_us = "kiloliter-atmosphere",
symbol = "kL⋅atm",
utype = "energy",
scale = 101325,
default = "kJ",
link = "Atmosphere (unit)",
},
["klatm"] = {
name1 = "kilolitre-atmosphere",
name1_us = "kiloliter-atmosphere",
symbol = "kl⋅atm",
utype = "energy",
scale = 101325,
default = "kJ",
link = "Atmosphere (unit)",
},
["kt(TNT)"] = {
name1 = "kilotonne",
name1_us = "kiloton",
symbol = "kt",
utype = "energy",
scale = 4.184e12,
default = "TJ",
link = "TNT equivalent",
},
["ktoe"] = {
name1 = "kilotonne of oil equivalent",
name2 = "kilotonnes of oil equivalent",
symbol = "ktoe",
utype = "energy",
scale = 4.1868e13,
default = "TJ",
link = "Tonne of oil equivalent",
},
["ktonTNT"] = {
name1 = "kiloton of TNT",
name2 = "kilotons of TNT",
symbol = "kt",
utype = "energy",
scale = 4.184e12,
default = "TJ",
link = "TNT equivalent",
},
["ktTNT"] = {
name2 = "kilotonnes of TNT",
symbol = "kilotonne of TNT",
usename = 1,
utype = "energy",
scale = 4.184e12,
default = "TJ",
link = "TNT equivalent",
},
["kW.h"] = {
name1 = "kilowatt-hour",
symbol = "kW⋅h",
utype = "energy",
scale = 3600000,
default = "MJ",
link = "Watt-hour",
},
["kWh"] = {
name1 = "kilowatt-hour",
symbol = "kWh",
utype = "energy",
scale = 3600000,
default = "MJ",
link = "Watt-hour",
},
["Latm"] = {
name1 = "litre-atmosphere",
name1_us = "liter-atmosphere",
symbol = "L⋅atm",
utype = "energy",
scale = 101.325,
default = "J",
link = "Atmosphere (unit)",
},
["latm"] = {
name1 = "litre-atmosphere",
name1_us = "liter-atmosphere",
symbol = "l⋅atm",
utype = "energy",
scale = 101.325,
default = "J",
link = "Atmosphere (unit)",
},
["m3atm"] = {
name1 = "cubic metre-atmosphere",
name1_us = "cubic meter-atmosphere",
symbol = "m<sup>3</sup>⋅atm",
utype = "energy",
scale = 101325,
default = "kJ",
link = "Atmosphere (unit)",
},
["Mcal"] = {
name1 = "megacalorie",
symbol = "Mcal",
utype = "energy",
scale = 4184000,
default = "MJ",
link = "Calorie",
},
["mcal"] = {
name1 = "millicalorie",
symbol = "mcal",
utype = "energy",
scale = 0.004184,
default = "mJ",
link = "Calorie",
},
["Mcal-15"] = {
name1 = "megacalorie (15°C)",
name2 = "megacalories (15°C)",
symbol = "Mcal<sub>15</sub>",
utype = "energy",
scale = 4185800,
default = "MJ",
link = "Calorie",
},
["mcal-15"] = {
name1 = "millicalorie (15°C)",
name2 = "millicalories (15°C)",
symbol = "mcal<sub>15</sub>",
utype = "energy",
scale = 0.0041858,
default = "mJ",
link = "Calorie",
},
["Mcal-IT"] = {
name1 = "megacalorie (International Steam Table)",
name2 = "megacalories (International Steam Table)",
symbol = "Mcal<sub>IT</sub>",
utype = "energy",
scale = 4186800,
default = "MJ",
link = "Calorie",
},
["mcal-IT"] = {
name1 = "millicalorie (International Steam Table)",
name2 = "millicalories (International Steam Table)",
symbol = "mcal<sub>IT</sub>",
utype = "energy",
scale = 0.0041868,
default = "mJ",
link = "Calorie",
},
["Mcal-th"] = {
name1 = "megacalorie (thermochemical)",
name2 = "megacalories (thermochemical)",
symbol = "Mcal<sub>th</sub>",
utype = "energy",
scale = 4184000,
default = "MJ",
link = "Calorie",
},
["mcal-th"] = {
name1 = "millicalorie (thermochemical)",
name2 = "millicalories (thermochemical)",
symbol = "mcal<sub>th</sub>",
utype = "energy",
scale = 0.004184,
default = "mJ",
link = "Calorie",
},
["Merg"] = {
name1 = "megaerg",
symbol = "Merg",
utype = "energy",
scale = 0.1,
default = "J",
link = "Erg",
},
["merg"] = {
name1 = "millierg",
symbol = "merg",
utype = "energy",
scale = 0.0000000001,
default = "μJ",
link = "Erg",
},
["MeV"] = {
name1 = "megaelectronvolt",
symbol = "MeV",
utype = "energy",
scale = 1.602176487e-13,
default = "pJ",
link = "Electronvolt",
},
["meV"] = {
name1 = "millielectronvolt",
symbol = "meV",
utype = "energy",
scale = 1.602176487e-22,
default = "zJ",
link = "Electronvolt",
},
["MLatm"] = {
name1 = "megalitre-atmosphere",
name1_us = "megaliter-atmosphere",
symbol = "ML⋅atm",
utype = "energy",
scale = 101325000,
default = "MJ",
link = "Atmosphere (unit)",
},
["Mlatm"] = {
name1 = "megalitre-atmosphere",
name1_us = "megaliter-atmosphere",
symbol = "Ml⋅atm",
utype = "energy",
scale = 101325000,
default = "MJ",
link = "Atmosphere (unit)",
},
["mLatm"] = {
name1 = "millilitre-atmosphere",
name1_us = "milliliter-atmosphere",
symbol = "L⋅atm",
utype = "energy",
scale = 0.101325,
default = "mJ",
link = "Atmosphere (unit)",
},
["mlatm"] = {
name1 = "millilitre-atmosphere",
name1_us = "milliliter-atmosphere",
symbol = "l⋅atm",
utype = "energy",
scale = 0.101325,
default = "mJ",
link = "Atmosphere (unit)",
},
["MMBtu"] = {
name1 = "million British thermal units",
name2 = "million British thermal units",
symbol = "MMBtu",
utype = "energy",
scale = 1055055852.62,
default = "GJ",
link = "British thermal unit",
},
["Mt(TNT)"] = {
name1 = "megatonne",
name1_us = "megaton",
symbol = "Mt",
utype = "energy",
scale = 4.184e15,
default = "PJ",
link = "TNT equivalent",
},
["Mtoe"] = {
name1 = "megatonne of oil equivalent",
name2 = "megatonnes of oil equivalent",
symbol = "Mtoe",
utype = "energy",
scale = 4.1868e16,
default = "PJ",
link = "Tonne of oil equivalent",
},
["MtonTNT"] = {
name1 = "megaton of TNT",
name2 = "megatons of TNT",
symbol = "Mt",
utype = "energy",
scale = 4.184e15,
default = "PJ",
link = "TNT equivalent",
},
["mtonTNT"] = {
name2 = "millitons of TNT",
symbol = "milliton of TNT",
usename = 1,
utype = "energy",
scale = 4184000,
default = "MJ",
link = "TNT equivalent",
},
["MtTNT"] = {
name2 = "megatonnes of TNT",
symbol = "megatonne of TNT",
usename = 1,
utype = "energy",
scale = 4.184e15,
default = "PJ",
link = "TNT equivalent",
},
["mtTNT"] = {
name2 = "millitonnes of TNT",
symbol = "millitonne of TNT",
usename = 1,
utype = "energy",
scale = 4184000,
default = "MJ",
link = "TNT equivalent",
},
["MW.h"] = {
name1 = "megawatt-hour",
symbol = "MW⋅h",
utype = "energy",
scale = 3600000000,
default = "GJ",
link = "Watt-hour",
},
["mW.h"] = {
name1 = "milliwatt-hour",
symbol = "mW⋅h",
utype = "energy",
scale = 3.6,
default = "J",
link = "Watt-hour",
},
["MWh"] = {
name1 = "megawatt-hour",
symbol = "MWh",
utype = "energy",
scale = 3600000000,
default = "GJ",
link = "Watt-hour",
},
["mWh"] = {
name1 = "milliwatt-hour",
symbol = "mWh",
utype = "energy",
scale = 3.6,
default = "J",
link = "Watt-hour",
},
["neV"] = {
name1 = "nanoelectronvolt",
symbol = "neV",
utype = "energy",
scale = 1.602176487e-28,
default = "yJ",
link = "Electronvolt",
},
["PeV"] = {
name1 = "petaelectronvolt",
symbol = "PeV",
utype = "energy",
scale = 0.0001602176487,
default = "mJ",
link = "Electronvolt",
},
["peV"] = {
name1 = "picoelectronvolt",
symbol = "peV",
utype = "energy",
scale = 1.602176487e-31,
default = "yJ",
link = "Electronvolt",
},
["PSh"] = {
name1 = "Pferdestärkenstunde",
symbol = "PSh",
utype = "energy",
scale = 2647795.5,
default = "kWh",
},
["quad"] = {
name1 = "quadrillion British thermal units",
name2 = "quadrillion British thermal units",
symbol = "quad",
utype = "energy",
scale = 1.054804e18,
default = "EJ",
link = "Quad (unit)",
},
["Ry"] = {
name1 = "rydberg",
symbol = "Ry",
utype = "energy",
scale = 2.1798741e-18,
default = "eV",
link = "Rydberg constant",
},
["scc"] = {
name1 = "standard cubic centimetre",
name1_us = "standard cubic centimeter",
symbol = "scc",
utype = "energy",
scale = 0.101325,
default = "mJ",
link = "Atmosphere (unit)",
},
["scf"] = {
name1 = "standard cubic foot",
name2 = "standard cubic feet",
symbol = "scf",
utype = "energy",
scale = 2869.2044809344,
default = "kJ",
link = "Atmosphere (unit)",
},
["scfoot"] = {
name1 = "standard cubic foot",
name2 = "standard cubic foot",
symbol = "scf",
utype = "energy",
scale = 2869.2044809344,
default = "kJ",
link = "Atmosphere (unit)",
},
["scy"] = {
name1 = "standard cubic yard",
symbol = "scy",
utype = "energy",
scale = 77468.5209852288,
default = "kJ",
link = "Atmosphere (unit)",
},
["sl"] = {
name1 = "standard litre",
name1_us = "standard liter",
symbol = "sl",
utype = "energy",
scale = 101.325,
default = "J",
link = "Atmosphere (unit)",
},
["t(TNT)"] = {
name1 = "tonne",
name1_us = "ton",
symbol = "t",
utype = "energy",
scale = 4184000000,
default = "GJ",
link = "TNT equivalent",
},
["TeV"] = {
name1 = "teraelectronvolt",
symbol = "TeV",
utype = "energy",
scale = 1.602176487e-7,
default = "μJ",
link = "Electronvolt",
},
["th"] = {
name1 = "thermie",
symbol = "th",
utype = "energy",
scale = 4186800,
default = "MJ",
link = "Conversion of units#Energy",
},
["thm-EC"] = {
name1 = "therm (EC)",
name2 = "therms (EC)",
symbol = "thm (EC)",
utype = "energy",
scale = 105506000,
default = "MJ",
link = "Therm",
},
["thm-UK"] = {
name1 = "therm (UK)",
name2 = "therms (UK)",
symbol = "thm (UK)",
utype = "energy",
scale = 105505585.257348,
default = "MJ",
link = "Therm",
},
["thm-US"] = {
name1 = "therm (US)",
name1_us = "therm (U.S.)",
name2 = "therms (US)",
name2_us = "therms (U.S.)",
symbol = "thm (US)",
sym_us = "thm (U.S.)",
utype = "energy",
scale = 105480400,
default = "MJ",
link = "Therm",
},
["toe"] = {
name1 = "tonne of oil equivalent",
name2 = "tonnes of oil equivalent",
symbol = "toe",
utype = "energy",
scale = 41868000000,
default = "GJ",
},
["tonTNT"] = {
name2 = "tons of TNT",
symbol = "ton of TNT",
usename = 1,
utype = "energy",
scale = 4184000000,
default = "GJ",
link = "TNT equivalent",
},
["tTNT"] = {
name2 = "tonnes of TNT",
symbol = "tonne of TNT",
usename = 1,
utype = "energy",
scale = 4184000000,
default = "GJ",
link = "TNT equivalent",
},
["TtonTNT"] = {
name2 = "teratons of TNT",
symbol = "teraton of TNT",
usename = 1,
utype = "energy",
scale = 4.184e21,
default = "ZJ",
link = "TNT equivalent",
},
["TtTNT"] = {
name2 = "teratonnes of TNT",
symbol = "teratonne of TNT",
usename = 1,
utype = "energy",
scale = 4.184e21,
default = "ZJ",
link = "TNT equivalent",
},
["TW.h"] = {
name1 = "terawatt-hour",
symbol = "TW⋅h",
utype = "energy",
scale = 3.6e15,
default = "PJ",
link = "Watt-hour",
},
["TWh"] = {
name1 = "terawatt-hour",
symbol = "TWh",
utype = "energy",
scale = 3.6e15,
default = "PJ",
link = "Watt-hour",
},
["USgalatm"] = {
name1 = "US gallon-atmosphere",
name1_us = "U.S. gallon-atmosphere",
symbol = "US gal⋅atm",
sym_us = "U.S. gal⋅atm",
utype = "energy",
scale = 383.5568490138,
default = "J",
link = "Atmosphere (unit)",
},
["W.h"] = {
name1 = "watt-hour",
symbol = "W⋅h",
utype = "energy",
scale = 3600,
default = "kJ",
},
["Wh"] = {
name1 = "watt-hour",
symbol = "Wh",
utype = "energy",
scale = 3600,
default = "kJ",
},
["μerg"] = {
name1 = "microerg",
symbol = "μerg",
utype = "energy",
scale = 1e-13,
default = "nJ",
link = "Erg",
},
["μeV"] = {
name1 = "microelectronvolt",
symbol = "μeV",
utype = "energy",
scale = 1.602176487e-25,
default = "yJ",
link = "Electronvolt",
},
["μW.h"] = {
name1 = "microwatt-hour",
symbol = "μW⋅h",
utype = "energy",
scale = 0.0036,
default = "mJ",
link = "Watt-hour",
},
["μWh"] = {
name1 = "microwatt-hour",
symbol = "μWh",
utype = "energy",
scale = 0.0036,
default = "mJ",
link = "Watt-hour",
},
["-kW.h"] = {
target = "kW.h",
link = "Kilowatt hour",
},
["btu"] = {
target = "BTU",
},
["Calorie"] = {
target = "Cal",
},
["ft.lbf"] = {
target = "ftlbf",
},
["ft·lbf"] = {
target = "ftlbf",
},
["g-cal-15"] = {
target = "cal-15",
},
["g-cal-IT"] = {
target = "cal-IT",
},
["g-cal-th"] = {
target = "cal-th",
},
["g-kcal-15"] = {
target = "kcal-15",
},
["g-kcal-IT"] = {
target = "kcal-IT",
},
["g-kcal-th"] = {
target = "kcal-th",
},
["g-Mcal-15"] = {
target = "Mcal-15",
},
["g-mcal-15"] = {
target = "mcal-15",
},
["g-Mcal-IT"] = {
target = "Mcal-IT",
},
["g-mcal-IT"] = {
target = "mcal-IT",
},
["g-Mcal-th"] = {
target = "Mcal-th",
},
["g-mcal-th"] = {
target = "mcal-th",
},
["GW-h"] = {
target = "GW.h",
},
["GW·h"] = {
target = "GW.h",
},
["Hartree"] = {
target = "Eh",
},
["hp.h"] = {
target = "hph",
},
["in.lb-f"] = {
target = "inlb-f",
},
["in.lbf"] = {
target = "inlbf",
},
["in.oz-f"] = {
target = "inoz-f",
},
["in.ozf"] = {
target = "inozf",
},
["kbboe"] = {
target = "kBOE",
symbol = "kbboe",
},
["kg-cal-15"] = {
target = "Cal-15",
},
["kg-cal-IT"] = {
target = "Cal-IT",
},
["kg-cal-th"] = {
target = "Cal-th",
},
["kW-h"] = {
target = "kW.h",
},
["kW·h"] = {
target = "kW.h",
},
["MW-h"] = {
target = "MW.h",
},
["mW-h"] = {
target = "mW.h",
},
["MW·h"] = {
target = "MW.h",
},
["TW-h"] = {
target = "TW.h",
},
["U.S.galatm"] = {
target = "USgalatm",
sp_us = true,
},
["uerg"] = {
target = "μerg",
},
["ueV"] = {
target = "μeV",
},
["usgalatm"] = {
target = "USgalatm",
},
["uW-h"] = {
target = "μW.h",
},
["uW.h"] = {
target = "μW.h",
},
["uWh"] = {
target = "μWh",
},
["W-h"] = {
target = "W.h",
},
["eVpar"] = {
_name1 = "electronvolt",
_symbol = "eV",
utype = "energy per chemical amount",
scale = 96485.329522144166,
prefixes = 1,
default = "kcal/mol",
link = "Electronvolt",
},
["kcal/mol"] = {
per = { "kcal", "mol" },
utype = "energy per chemical amount",
default = "kJ/mol",
link = "Kilocalorie per mole",
},
["kJ/mol"] = {
per = { "kJ", "mol" },
utype = "energy per chemical amount",
default = "kcal/mol",
link = "Joule per mole",
},
["kWh/100 km"] = {
name1 = "kilowatt-hour per 100 kilometres",
name1_us = "kilowatt-hour per 100 kilometers",
name2 = "kilowatt-hours per 100 kilometres",
name2_us = "kilowatt-hours per 100 kilometers",
symbol = "kW⋅h/100 km",
utype = "energy per unit length",
scale = 36,
default = "MJ/km kWh/mi",
link = "Watt-hour",
},
["kWh/100 mi"] = {
name1 = "kilowatt-hour per 100 miles",
name2 = "kilowatt-hours per 100 miles",
symbol = "kW⋅h/100 mi",
utype = "energy per unit length",
scale = 22.3694,
default = "mpge",
link = "Miles per gallon gasoline equivalent",
},
["MJ/100 km"] = {
name1 = "megajoule per 100 kilometres",
name1_us = "megajoule per 100 kilometers",
name2 = "megajoules per 100 kilometres",
name2_us = "megajoules per 100 kilometers",
symbol = "MJ/100 km",
utype = "energy per unit length",
scale = 10,
default = "BTU/mi",
link = "British thermal unit",
},
["mpge"] = {
name1 = "mile per gallon gasoline equivalent",
name2 = "miles per gallon gasoline equivalent",
symbol = "mpg‑e",
utype = "energy per unit length",
scale = 13e-6,
invert = -1,
iscomplex= true,
default = "kWh/100 mi",
link = "Miles per gallon gasoline equivalent",
},
["BTU/mi"] = {
per = { "BTU", "mi" },
utype = "energy per unit length",
default = "v > 1525 ! M ! k ! J/km",
},
["kJ/km"] = {
per = { "kJ", "km" },
utype = "energy per unit length",
default = "BTU/mi",
},
["kWh/km"] = {
per = { "-kW.h", "km" },
utype = "energy per unit length",
default = "MJ/km kWh/mi",
},
["kWh/mi"] = {
per = { "-kW.h", "mi" },
utype = "energy per unit length",
default = "kWh/km MJ/km",
},
["MJ/km"] = {
per = { "MJ", "km" },
utype = "energy per unit length",
default = "BTU/mi",
},
["mpg-e"] = {
target = "mpge",
},
["BTU/lb"] = {
name1 = "British thermal unit per pound",
name2 = "British thermal units per pound",
symbol = "BTU/lb",
utype = "energy per unit mass",
scale = 429.92261414790346,
default = "kJ/kg",
link = "British thermal unit",
},
["cal/g"] = {
name1 = "calorie per gram",
name2 = "calories per gram",
symbol = "cal/g",
utype = "energy per unit mass",
scale = 4184,
default = "J/g",
},
["GJ/kg"] = {
name1 = "gigajoule per kilogram",
name2 = "gigajoules per kilogram",
symbol = "GJ/kg",
utype = "energy per unit mass",
scale = 1e9,
default = "ktTNT/t",
link = "Specific energy",
},
["J/g"] = {
name1 = "joule per gram",
name2 = "joules per gram",
symbol = "J/g",
utype = "energy per unit mass",
scale = 1000,
default = "kcal/g",
link = "Specific energy",
},
["kcal/g"] = {
name1 = "kilocalorie per gram",
name2 = "kilocalories per gram",
symbol = "kcal/g",
utype = "energy per unit mass",
scale = 4184000,
default = "kJ/g",
},
["kJ/g"] = {
name1 = "kilojoule per gram",
name2 = "kilojoules per gram",
symbol = "kJ/g",
utype = "energy per unit mass",
scale = 1000000,
default = "kcal/g",
link = "Specific energy",
},
["kJ/kg"] = {
name1 = "kilojoule per kilogram",
name2 = "kilojoules per kilogram",
symbol = "kJ/kg",
utype = "energy per unit mass",
scale = 1000,
default = "BTU/lb",
link = "Specific energy",
},
["ktonTNT/MT"] = {
name2 = "kilotons of TNT per metric ton",
symbol = "kiloton of TNT per metric ton",
usename = 1,
utype = "energy per unit mass",
scale = 4184000000,
default = "GJ/kg",
link = "TNT equivalent",
},
["ktTNT/t"] = {
name2 = "kilotonnes of TNT per tonne",
symbol = "kilotonne of TNT per tonne",
usename = 1,
utype = "energy per unit mass",
scale = 4184000000,
default = "GJ/kg",
link = "TNT equivalent",
},
["MtonTNT/MT"] = {
name2 = "megatons of TNT per metric ton",
symbol = "megaton of TNT per metric ton",
usename = 1,
utype = "energy per unit mass",
scale = 4.184e12,
default = "TJ/kg",
link = "TNT equivalent",
},
["MtTNT/MT"] = {
name2 = "megatonnes of TNT per tonne",
symbol = "megatonne of TNT per tonne",
usename = 1,
utype = "energy per unit mass",
scale = 4.184e12,
default = "TJ/kg",
link = "TNT equivalent",
},
["TJ/kg"] = {
name1 = "terajoule per kilogram",
name2 = "terajoules per kilogram",
symbol = "TJ/kg",
utype = "energy per unit mass",
scale = 1e12,
default = "MtTNT/MT",
link = "Specific energy",
},
["Cal/g"] = {
per = { "Cal", "g" },
utype = "energy per unit mass",
default = "kJ/g",
},
["BTU/cuft"] = {
per = { "BTU", "cuft" },
utype = "energy per unit volume",
default = "kJ/L",
},
["Cal/12USoz(mL)serve"] = {
per = { "Cal", "-12USoz(mL)serve" },
utype = "energy per unit volume",
default = "kJ/L",
},
["Cal/12USoz(ml)serve"] = {
per = { "Cal", "-12USoz(ml)serve" },
utype = "energy per unit volume",
default = "kJ/l",
},
["Cal/12USozserve"] = {
per = { "Cal", "-12USozserve" },
utype = "energy per unit volume",
default = "kJ/L",
},
["Cal/USoz"] = {
per = { "Cal", "USoz" },
utype = "energy per unit volume",
default = "kJ/ml",
},
["kJ/L"] = {
per = { "kJ", "L" },
utype = "energy per unit volume",
default = "BTU/cuft",
},
["kJ/l"] = {
per = { "kJ", "l" },
utype = "energy per unit volume",
default = "BTU/cuft",
},
["kJ/ml"] = {
per = { "kJ", "ml" },
utype = "energy per unit volume",
default = "Cal/USoz",
},
["MJ/m3"] = {
per = { "MJ", "m3" },
utype = "energy per unit volume",
default = "BTU/cuft",
},
["Sv"] = {
_name1 = "sievert",
_symbol = "Sv",
utype = "equivalent radiation dose",
scale = 1,
prefixes = 1,
default = "rem",
link = "Sievert",
},
["rem"] = {
_name1 = "rem",
_symbol = "rem",
utype = "equivalent radiation dose",
scale = 0.01,
prefixes = 1,
default = "Sv",
link = "Roentgen equivalent man",
},
["g/km"] = {
name1 = "gram per kilometre",
name1_us = "gram per kilometer",
name2 = "grams per kilometre",
name2_us = "grams per kilometer",
symbol = "g/km",
utype = "exhaust emission",
scale = 1e-6,
default = "oz/mi",
link = "Exhaust gas",
},
["g/mi"] = {
name1 = "gram per mile",
name2 = "grams per mile",
symbol = "g/mi",
utype = "exhaust emission",
scale = 6.2137119223733397e-7,
default = "g/km",
link = "Exhaust gas",
},
["gCO2/km"] = {
name1 = "gram of CO<sub>2</sub> per kilometre",
name1_us = "gram of CO<sub>2</sub> per kilometer",
name2 = "grams of CO<sub>2</sub> per kilometre",
name2_us = "grams of CO<sub>2</sub> per kilometer",
symbol = "g(CO<sub>2</sub>)/km",
utype = "exhaust emission",
scale = 1e-6,
default = "ozCO2/mi",
link = "Exhaust gas",
},
["gCO2/mi"] = {
name1 = "gram of CO<sub>2</sub> per mile",
name2 = "grams of CO<sub>2</sub> per mile",
symbol = "g(CO<sub>2</sub>)/mi",
utype = "exhaust emission",
scale = 6.2137119223733397e-7,
default = "gCO2/km",
link = "Exhaust gas",
},
["kg/km"] = {
name1 = "kilogram per kilometre",
name1_us = "kilogram per kilometer",
name2 = "kilograms per kilometre",
name2_us = "kilograms per kilometer",
symbol = "kg/km",
utype = "exhaust emission",
scale = 0.001,
default = "lb/mi",
link = "Exhaust gas",
},
["kgCO2/km"] = {
name1 = "kilogram of CO<sub>2</sub> per kilometre",
name1_us = "kilogram of CO<sub>2</sub> per kilometer",
name2 = "kilograms of CO<sub>2</sub> per kilometre",
name2_us = "kilograms of CO<sub>2</sub> per kilometer",
symbol = "kg(CO<sub>2</sub>)/km",
utype = "exhaust emission",
scale = 0.001,
default = "lbCO2/mi",
link = "Exhaust gas",
},
["lb/mi"] = {
name1 = "pound per mile",
name2 = "pounds per mile",
symbol = "lb/mi",
utype = "exhaust emission",
scale = 0.00028184923173665794,
default = "kg/km",
link = "Exhaust gas",
},
["lbCO2/mi"] = {
name1 = "pound of CO<sub>2</sub> per mile",
name2 = "pounds of CO<sub>2</sub> per mile",
symbol = "lb(CO<sub>2</sub>)/mi",
utype = "exhaust emission",
scale = 0.00028184923173665794,
default = "kgCO2/km",
link = "Exhaust gas",
},
["oz/mi"] = {
name1 = "ounce per mile",
name2 = "ounces per mile",
symbol = "oz/mi",
utype = "exhaust emission",
scale = 1.7615576983541121e-5,
default = "g/km",
link = "Exhaust gas",
},
["ozCO2/mi"] = {
name1 = "ounce of CO<sub>2</sub> per mile",
name2 = "ounces of CO<sub>2</sub> per mile",
symbol = "oz(CO<sub>2</sub>)/mi",
utype = "exhaust emission",
scale = 1.7615576983541121e-5,
default = "gCO2/km",
link = "Exhaust gas",
},
["cuft/a"] = {
name1 = "cubic foot per annum",
name2 = "cubic feet per annum",
symbol = "cu ft/a",
utype = "flow",
scale = 8.9730672142368242e-10,
default = "m3/a",
link = "Cubic foot per second",
},
["cuft/d"] = {
name1 = "cubic foot per day",
name2 = "cubic feet per day",
symbol = "cu ft/d",
utype = "flow",
scale = 3.2774128000000003e-7,
default = "m3/d",
link = "Cubic foot per second",
},
["cuft/h"] = {
name1 = "cubic foot per hour",
name2 = "cubic feet per hour",
symbol = "cu ft/h",
utype = "flow",
scale = 7.8657907200000004e-6,
default = "m3/h",
link = "Cubic foot per second",
},
["cuft/min"] = {
name1 = "cubic foot per minute",
name2 = "cubic feet per minute",
symbol = "cu ft/min",
utype = "flow",
scale = 0.00047194744319999999,
default = "m3/min",
link = "Cubic foot#cubic foot per second",
},
["cuft/s"] = {
name1 = "cubic foot per second",
name2 = "cubic feet per second",
symbol = "cu ft/s",
utype = "flow",
scale = 28316846592e-12,
default = "m3/s",
},
["cumi/a"] = {
name1 = "cubic mile per annum",
name2 = "cubic miles per annum",
symbol = "cu mi/a",
utype = "flow",
scale = 132.08171170940057,
default = "km3/a",
link = "Cubic foot per second",
},
["cuyd/h"] = {
name1 = "cubic yard per hour",
name2 = "cubic yards per hour",
symbol = "cuyd/h",
utype = "flow",
scale = 0.00021237634944000001,
default = "m3/h",
link = "Cubic foot per minute",
},
["cuyd/s"] = {
name1 = "cubic yard per second",
name2 = "cubic yards per second",
symbol = "cu yd/s",
utype = "flow",
scale = 0.76455485798400002,
default = "m3/s",
},
["Goilbbl/a"] = {
name1 = "billion barrels per year",
name2 = "billion barrels per year",
symbol = "Gbbl/a",
utype = "flow",
scale = 5.0380033629933836,
default = "v * 1.58987294928 < 10 ! e6 ! e9 ! m3/a",
link = "Barrel per day",
},
["impgal/h"] = {
name1 = "imperial gallon per hour",
name2 = "imperial gallons per hour",
symbol = "imp gal/h",
utype = "flow",
scale = 1.2628027777777779e-6,
default = "m3/h",
link = "Gallon",
},
["impgal/min"] = {
name1 = "imperial gallon per minute",
name2 = "imperial gallons per minute",
symbol = "imp gal/min",
utype = "flow",
scale = 7.5768166666666671e-5,
default = "m3/s",
link = "Gallon",
},
["impgal/s"] = {
name1 = "imperial gallon per second",
name2 = "imperial gallons per second",
symbol = "impgal/s",
utype = "flow",
scale = 0.00454609,
default = "m3/s",
link = "Imperial gallons per second",
},
["km3/a"] = {
name1 = "cubic kilometre per annum",
name1_us = "cubic kilometer per annum",
name2 = "cubic kilometres per annum",
name2_us = "cubic kilometers per annum",
symbol = "km<sup>3</sup>/a",
utype = "flow",
scale = 31.68808781402895,
default = "cumi/a",
link = "Cubic metre per second",
},
["km3/d"] = {
name1 = "cubic kilometre per day",
name1_us = "cubic kilometer per day",
name2 = "cubic kilometres per day",
name2_us = "cubic kilometers per day",
symbol = "km<sup>3</sup>/d",
utype = "flow",
scale = 11574.074074074075,
default = "cuft/d",
link = "Cubic metre per second",
},
["koilbbl/a"] = {
name1 = "thousand barrels per year",
name2 = "thousand barrels per year",
symbol = "kbbl/a",
utype = "flow",
scale = 5.0380033629933841e-6,
default = "v * 1.58987294928 < 10 ! ! e3 ! m3/a",
link = "Barrel per day",
},
["koilbbl/d"] = {
name1 = "thousand barrels per day",
name2 = "thousand barrels per day",
symbol = "kbbl/d",
utype = "flow",
scale = 0.0018401307283333335,
default = "v * 1.58987294928 < 10 ! ! e3 ! m3/d",
link = "Barrel per day",
},
["L/h"] = {
name1 = "litre per hour",
name1_us = "liter per hour",
name2 = "litres per hour",
name2_us = "liters per hour",
symbol = "L/h",
utype = "flow",
scale = 2.7777777777777776e-7,
default = "impgal/h USgal/h",
link = "Cubic metre per second",
},
["L/min"] = {
name1 = "litre per minute",
name1_us = "liter per minute",
name2 = "litres per minute",
name2_us = "liters per minute",
symbol = "L/min",
utype = "flow",
scale = 1.6666666666666667e-5,
default = "impgal/min USgal/min",
link = "Cubic metre per second",
},
["L/s"] = {
name1 = "litre per second",
name1_us = "liter per second",
name2 = "litres per second",
name2_us = "liters per second",
symbol = "L/s",
utype = "flow",
scale = 0.001,
default = "cuft/s",
link = "Cubic metre per second",
},
["m3/a"] = {
name1 = "cubic metre per annum",
name1_us = "cubic meter per annum",
name2 = "cubic metres per annum",
name2_us = "cubic meters per annum",
symbol = "m<sup>3</sup>/a",
utype = "flow",
scale = 3.1688087814028947e-8,
default = "cuft/a",
link = "Cubic metre per second",
},
["m3/d"] = {
name1 = "cubic metre per day",
name1_us = "cubic meter per day",
name2 = "cubic metres per day",
name2_us = "cubic meters per day",
symbol = "m<sup>3</sup>/d",
utype = "flow",
scale = 1.1574074074074073e-5,
default = "cuft/d",
link = "Cubic metre per second",
},
["m3/h"] = {
name1 = "cubic metre per hour",
name1_us = "cubic meter per hour",
name2 = "cubic metres per hour",
name2_us = "cubic meters per hour",
symbol = "m<sup>3</sup>/h",
utype = "flow",
scale = 0.00027777777777777778,
default = "cuft/h",
link = "Cubic metre per second",
},
["m3/min"] = {
name1 = "cubic metre per minute",
name1_us = "cubic meter per minute",
name2 = "cubic metres per minute",
name2_us = "cubic meters per minute",
symbol = "m<sup>3</sup>/min",
utype = "flow",
scale = 0.016666666666666666,
default = "cuft/min",
link = "Cubic metre per second",
},
["m3/s"] = {
name1 = "cubic metre per second",
name1_us = "cubic meter per second",
name2 = "cubic metres per second",
name2_us = "cubic meters per second",
symbol = "m<sup>3</sup>/s",
utype = "flow",
scale = 1,
default = "cuft/s",
},
["Moilbbl/a"] = {
name1 = "million barrels per year",
name2 = "million barrels per year",
symbol = "Mbbl/a",
utype = "flow",
scale = 0.0050380033629933837,
default = "v * 1.58987294928 < 10 ! e3 ! e6 ! m3/a",
link = "Barrel per day",
},
["Moilbbl/d"] = {
name1 = "million barrels per day",
name2 = "million barrels per day",
symbol = "Mbbl/d",
utype = "flow",
scale = 1.8401307283333335,
default = "v * 1.58987294928 < 10 ! e3 ! e6 ! m3/d",
link = "Barrel per day",
},
["oilbbl/a"] = {
name1 = "barrel per year",
name2 = "barrels per year",
symbol = "bbl/a",
utype = "flow",
scale = 5.0380033629933841e-9,
default = "m3/a",
link = "Barrel per day",
},
["oilbbl/d"] = {
name1 = "barrel per day",
name2 = "barrels per day",
symbol = "bbl/d",
utype = "flow",
scale = 1.8401307283333336e-6,
default = "m3/d",
},
["Toilbbl/a"] = {
name1 = "trillion barrels per year",
name2 = "trillion barrels per year",
symbol = "Tbbl/a",
utype = "flow",
scale = 5038.0033629933832,
default = "v * 1.58987294928 < 10 ! e9 ! e12 ! m3/a",
link = "Barrel per day",
},
["U.S.gal/d"] = {
name1 = "U.S. gallon per day",
name2 = "U.S. gallons per day",
symbol = "U.S. gal/d",
utype = "flow",
scale = 4.3812636388888893e-8,
default = "m3/s",
customary= 1,
},
["U.S.gal/h"] = {
name1 = "gallon per hour",
name2 = "gallons per hour",
symbol = "gal/h",
utype = "flow",
scale = 1.0515032733333334e-6,
default = "m3/h",
link = "Gallon",
customary= 2,
},
["U.S.gal/min"] = {
name1 = "U.S. gallon per minute",
name2 = "U.S. gallons per minute",
symbol = "U.S. gal/min",
utype = "flow",
scale = 6.3090196400000003e-5,
default = "m3/s",
link = "Gallon",
},
["USgal/a"] = {
name1 = "US gallon per year",
name2 = "US gallons per year",
symbol = "US gal/a",
utype = "flow",
scale = 1.1995246102365199e-10,
default = "m3/s",
},
["USgal/d"] = {
name1 = "US gallon per day",
name2 = "US gallons per day",
symbol = "US gal/d",
utype = "flow",
scale = 4.3812636388888893e-8,
default = "m3/s",
},
["USgal/h"] = {
name1 = "gallon per hour",
name2 = "gallons per hour",
symbol = "gal/h",
utype = "flow",
scale = 1.0515032733333334e-6,
default = "m3/h",
link = "Gallon",
customary= 1,
},
["USgal/min"] = {
name1 = "US gallon per minute",
name2 = "US gallons per minute",
symbol = "US gal/min",
utype = "flow",
scale = 6.3090196400000003e-5,
default = "m3/s",
link = "Gallon",
},
["USgal/s"] = {
name1 = "US gallon per second",
name1_us = "U.S. gallon per second",
name2 = "US gallons per second",
name2_us = "U.S. gallons per second",
symbol = "USgal/s",
utype = "flow",
scale = 0.003785411784,
default = "m3/s",
link = "US gallons per second",
},
["ft3/a"] = {
target = "cuft/a",
},
["ft3/d"] = {
target = "cuft/d",
},
["ft3/h"] = {
target = "cuft/h",
},
["ft3/s"] = {
target = "cuft/s",
},
["Gcuft/a"] = {
target = "e9cuft/a",
},
["Gcuft/d"] = {
target = "e9cuft/d",
},
["kcuft/a"] = {
target = "e3cuft/a",
},
["kcuft/d"] = {
target = "e3cuft/d",
},
["kcuft/s"] = {
target = "e3cuft/s",
},
["Mcuft/a"] = {
target = "e6cuft/a",
},
["Mcuft/d"] = {
target = "e6cuft/d",
},
["Mcuft/s"] = {
target = "e6cuft/s",
},
["m³/s"] = {
target = "m3/s",
},
["Tcuft/a"] = {
target = "e12cuft/a",
},
["Tcuft/d"] = {
target = "e12cuft/d",
},
["u.s.gal/min"] = {
target = "U.S.gal/min",
},
["usgal/min"] = {
target = "USgal/min",
},
["-LTf"] = {
name1 = "long ton-force",
name2 = "long tons-force",
symbol = "LTf",
utype = "force",
scale = 9964.01641818352,
default = "kN",
},
["-STf"] = {
name1 = "short ton-force",
name2 = "short tons-force",
symbol = "STf",
utype = "force",
scale = 8896.443230521,
default = "kN",
},
["dyn"] = {
name1 = "dyne",
symbol = "dyn",
utype = "force",
scale = 0.00001,
default = "gr-f",
},
["g-f"] = {
name1 = "gram-force",
name2 = "grams-force",
symbol = "g<sub>f</sub>",
utype = "force",
scale = 0.00980665,
default = "mN oz-f",
link = "Kilogram-force",
},
["gf"] = {
name1 = "gram-force",
name2 = "grams-force",
symbol = "gf",
utype = "force",
scale = 0.00980665,
default = "mN ozf",
link = "Kilogram-force",
},
["gr-f"] = {
name1 = "grain-force",
name2 = "grains-force",
symbol = "gr<sub>f</sub>",
utype = "force",
scale = 0.0006354602307515,
default = "μN",
link = "Pound (force)",
},
["grf"] = {
name1 = "grain-force",
name2 = "grains-force",
symbol = "grf",
utype = "force",
scale = 0.0006354602307515,
default = "μN",
link = "Pound (force)",
},
["kdyn"] = {
name1 = "kilodyne",
symbol = "kdyn",
utype = "force",
scale = 0.01,
default = "oz-f",
link = "Dyne",
},
["kg-f"] = {
name1 = "kilogram-force",
name2 = "kilograms-force",
symbol = "kg<sub>f</sub>",
utype = "force",
scale = 9.80665,
default = "N lb-f",
},
["kgf"] = {
name1 = "kilogram-force",
name2 = "kilograms-force",
symbol = "kgf",
utype = "force",
scale = 9.80665,
default = "N lbf",
},
["kp"] = {
name1 = "kilopond",
symbol = "kp",
utype = "force",
scale = 9.80665,
default = "N lb-f",
link = "Kilogram-force",
},
["L/T-f"] = {
name1 = "long ton-force",
name2 = "long tons-force",
symbol = "L/T<sub>f</sub>",
utype = "force",
scale = 9964.01641818352,
default = "kN",
},
["L/Tf"] = {
name1 = "long ton-force",
name2 = "long tons-force",
symbol = "L/Tf",
utype = "force",
scale = 9964.01641818352,
default = "kN",
},
["lb-f"] = {
name1 = "pound-force",
name2 = "pounds-force",
symbol = "lb<sub>f</sub>",
utype = "force",
scale = 4.4482216152605,
default = "N",
link = "Pound (force)",
},
["lbf"] = {
name1 = "pound-force",
name2 = "pounds-force",
symbol = "lbf",
utype = "force",
scale = 4.4482216152605,
default = "N",
link = "Pound (force)",
},
["lb(f)"] = {
name1 = "pound",
symbol = "lb",
utype = "force",
scale = 4.4482216152605,
default = "N",
link = "Pound (force)",
},
["LT-f"] = {
name1 = "long ton-force",
name2 = "long tons-force",
symbol = "LT<sub>f</sub>",
utype = "force",
scale = 9964.01641818352,
default = "kN",
},
["LTf"] = {
name1 = "long ton-force",
name2 = "long tons-force",
symbol = "LTf",
usename = 1,
utype = "force",
scale = 9964.01641818352,
default = "kN",
},
["Mdyn"] = {
name1 = "megadyne",
symbol = "Mdyn",
utype = "force",
scale = 10,
default = "lb-f",
link = "Dyne",
},
["mdyn"] = {
name1 = "millidyne",
symbol = "mdyn",
utype = "force",
scale = 0.00000001,
default = "gr-f",
link = "Dyne",
},
["mg-f"] = {
name1 = "milligram-force",
name2 = "milligrams-force",
symbol = "mg<sub>f</sub>",
utype = "force",
scale = 0.00000980665,
default = "μN gr-f",
link = "Kilogram-force",
},
["mgf"] = {
name1 = "milligram-force",
name2 = "milligrams-force",
symbol = "mgf",
utype = "force",
scale = 0.00000980665,
default = "μN grf",
link = "Kilogram-force",
},
["Mp"] = {
name1 = "megapond",
symbol = "Mp",
utype = "force",
scale = 9806.65,
default = "kN LT-f ST-f",
link = "Kilogram-force",
},
["mp"] = {
name1 = "millipond",
symbol = "mp",
utype = "force",
scale = 0.00000980665,
default = "μN gr-f",
link = "Kilogram-force",
},
["N"] = {
_name1 = "newton",
_symbol = "N",
utype = "force",
scale = 1,
prefixes = 1,
default = "lb-f",
link = "Newton (unit)",
},
["oz-f"] = {
name1 = "ounce-force",
name2 = "ounces-force",
symbol = "oz<sub>f</sub>",
utype = "force",
scale = 0.2780138203095378125,
default = "mN",
link = "Pound (force)",
},
["ozf"] = {
name1 = "ounce-force",
name2 = "ounces-force",
symbol = "ozf",
utype = "force",
scale = 0.2780138203095378125,
default = "mN",
link = "Pound (force)",
},
["p"] = {
name1 = "pond",
symbol = "p",
utype = "force",
scale = 0.00980665,
default = "mN oz-f",
link = "Kilogram-force",
},
["pdl"] = {
name1 = "poundal",
symbol = "pdl",
utype = "force",
scale = 0.138254954376,
default = "N",
},
["S/T-f"] = {
name1 = "short ton-force",
name2 = "short tons-force",
symbol = "S/T<sub>f</sub>",
utype = "force",
scale = 8896.443230521,
default = "kN",
},
["S/Tf"] = {
name1 = "short ton-force",
name2 = "short tons-force",
symbol = "S/Tf",
utype = "force",
scale = 8896.443230521,
default = "kN",
},
["ST-f"] = {
name1 = "short ton-force",
name2 = "short tons-force",
symbol = "ST<sub>f</sub>",
utype = "force",
scale = 8896.443230521,
default = "kN",
},
["STf"] = {
name1 = "short ton-force",
name2 = "short tons-force",
symbol = "STf",
usename = 1,
utype = "force",
scale = 8896.443230521,
default = "kN",
},
["t-f"] = {
name1 = "tonne-force",
name2 = "tonnes-force",
symbol = "t<sub>f</sub>",
utype = "force",
scale = 9806.65,
default = "kN LT-f ST-f",
link = "Ton-force#Tonne-force",
},
["tf"] = {
name1 = "tonne-force",
name2 = "tonnes-force",
symbol = "tf",
utype = "force",
scale = 9806.65,
default = "kN LTf STf",
link = "Ton-force#Tonne-force",
},
["dyne"] = {
target = "dyn",
},
["newtons"] = {
target = "N",
},
["poundal"] = {
target = "pdl",
},
["tonne-force"] = {
target = "tf",
},
["impgal/mi"] = {
per = { "@impgal", "mi" },
utype = "fuel efficiency",
invert = 1,
iscomplex= true,
default = "l/km USgal/mi",
},
["km/L"] = {
per = { "km", "L" },
utype = "fuel efficiency",
invert = -1,
iscomplex= true,
default = "mpgimp mpgus",
},
["km/l"] = {
per = { "km", "l" },
utype = "fuel efficiency",
invert = -1,
iscomplex= true,
default = "mpgimp mpgus",
},
["L/100 km"] = {
per = { "L", "100km" },
utype = "fuel efficiency",
invert = 1,
iscomplex= true,
default = "mpgimp mpgus",
symlink = "[[Fuel economy in automobiles#Units of measure|L/100 km]]",
},
["l/100 km"] = {
per = { "l", "100km" },
utype = "fuel efficiency",
invert = 1,
iscomplex= true,
default = "mpgimp mpgus",
symlink = "[[Fuel economy in automobiles#Units of measure|l/100 km]]",
},
["L/km"] = {
per = { "L", "km" },
utype = "fuel efficiency",
invert = 1,
iscomplex= true,
default = "mpgimp mpgus",
},
["l/km"] = {
per = { "l", "km" },
utype = "fuel efficiency",
invert = 1,
iscomplex= true,
default = "mpgimp mpgus",
},
["mi/impqt"] = {
per = { "mi", "impqt" },
utype = "fuel efficiency",
invert = -1,
iscomplex= true,
default = "km/L",
},
["mi/U.S.qt"] = {
per = { "mi", "U.S.qt" },
utype = "fuel efficiency",
invert = -1,
iscomplex= true,
default = "km/L",
},
["mi/USqt"] = {
per = { "mi", "USqt" },
utype = "fuel efficiency",
invert = -1,
iscomplex= true,
default = "km/L",
},
["mi/usqt"] = {
per = { "mi", "usqt" },
utype = "fuel efficiency",
invert = -1,
iscomplex= true,
default = "km/L",
},
["mpgimp"] = {
per = { "mi", "@impgal" },
symbol = "mpg<sub>‑imp</sub>",
utype = "fuel efficiency",
invert = -1,
iscomplex= true,
default = "L/100 km+mpgus",
symlink = "[[Fuel economy in automobiles#Units of measure|mpg]]<sub>‑[[Imperial units|imp]]</sub>",
},
["mpgus"] = {
per = { "mi", "+USgal" },
symbol = "mpg<sub>‑US</sub>",
utype = "fuel efficiency",
invert = -1,
iscomplex= true,
default = "L/100 km+mpgimp",
symlink = "[[Fuel economy in automobiles#Units of measure|mpg]]<sub>‑[[United States customary units|US]]</sub>",
},
["U.S.gal/mi"] = {
per = { "*U.S.gal", "mi" },
sp_us = true,
utype = "fuel efficiency",
invert = 1,
iscomplex= true,
default = "l/km impgal/mi",
},
["usgal/mi"] = {
per = { "+USgal", "mi" },
utype = "fuel efficiency",
invert = 1,
iscomplex= true,
default = "l/km impgal/mi",
},
["L/100km"] = {
target = "L/100 km",
},
["l/100km"] = {
target = "l/100 km",
},
["mpg"] = {
shouldbe = "Use %{mpgus%} for miles per US gallon or %{mpgimp%} for miles per imperial gallon (not %{mpg%})",
},
["mpgU.S."] = {
target = "mpgus",
symbol = "mpg<sub>‑U.S.</sub>",
sp_us = true,
symlink = "[[Fuel economy in automobiles#Units of measure|mpg]]<sub>‑[[United States customary units|U.S.]]</sub>",
},
["mpgu.s."] = {
target = "mpgus",
symbol = "mpg<sub>‑U.S.</sub>",
sp_us = true,
symlink = "[[Fuel economy in automobiles#Units of measure|mpg]]<sub>‑[[United States customary units|U.S.]]</sub>",
},
["mpgUS"] = {
target = "mpgus",
},
["USgal/mi"] = {
target = "usgal/mi",
},
["kPa/m"] = {
per = { "kPa", "-m-frac" },
utype = "fracture gradient",
default = "psi/ft",
},
["psi/ft"] = {
per = { "psi", "-ft-frac" },
utype = "fracture gradient",
default = "kPa/m",
},
["cm/km"] = {
name1 = "centimetre per kilometre",
name1_us = "centimeter per kilometer",
name2 = "centimetres per kilometre",
name2_us = "centimeters per kilometer",
symbol = "cm/km",
utype = "gradient",
scale = 0.00001,
default = "ft/mi",
link = "Grade (slope)",
},
["ft/mi"] = {
name1 = "foot per mile",
name2 = "feet per mile",
symbol = "ft/mi",
utype = "gradient",
scale = 0.00018939393939393939,
default = "v < 5.28 ! c ! ! m/km",
link = "Grade (slope)",
},
["ft/nmi"] = {
name1 = "foot per nautical mile",
name2 = "feet per nautical mile",
symbol = "ft/nmi",
utype = "gradient",
scale = 0.00016457883369330455,
default = "v < 6.076 ! c ! ! m/km",
link = "Grade (slope)",
},
["in/ft"] = {
name1 = "inch per foot",
name2 = "inches per foot",
symbol = "in/ft",
utype = "gradient",
scale = 0.083333333333333329,
default = "mm/m",
link = "Grade (slope)",
},
["in/mi"] = {
name1 = "inch per mile",
name2 = "inches per mile",
symbol = "in/mi",
utype = "gradient",
scale = 1.5782828282828283e-5,
default = "v < 0.6336 ! m ! c ! m/km",
link = "Grade (slope)",
},
["m/km"] = {
name1 = "metre per kilometre",
name1_us = "meter per kilometer",
name2 = "metres per kilometre",
name2_us = "meters per kilometer",
symbol = "m/km",
utype = "gradient",
scale = 0.001,
default = "ft/mi",
link = "Grade (slope)",
},
["mm/km"] = {
name1 = "millimetre per kilometre",
name1_us = "millimeter per kilometer",
name2 = "millimetres per kilometre",
name2_us = "millimeters per kilometer",
symbol = "mm/km",
utype = "gradient",
scale = 0.000001,
default = "in/mi",
link = "Grade (slope)",
},
["mm/m"] = {
name1 = "millimetre per metre",
name1_us = "millimeter per meter",
name2 = "millimetres per metre",
name2_us = "millimeters per meter",
symbol = "mm/m",
utype = "gradient",
scale = 0.001,
default = "in/ft",
link = "Grade (slope)",
},
["admi"] = {
name1 = "admiralty mile",
symbol = "nmi (admiralty)",
utype = "length",
scale = 1853.184,
default = "km mi",
link = "Nautical mile",
},
["AU"] = {
name1 = "astronomical unit",
symbol = "AU",
utype = "length",
scale = 149597870700,
default = "km mi",
},
["Brnmi"] = {
name1 = "British nautical mile",
symbol = "(Brit) nmi",
utype = "length",
scale = 1853.184,
default = "km mi",
link = "Nautical mile",
},
["bu"] = {
name2 = "bu",
symbol = "bu",
usename = 1,
utype = "length",
scale = 0.0030303030303030303,
default = "mm",
link = "Japanese units of measurement#Length",
},
["ch"] = {
name1 = "chain",
symbol = "ch",
utype = "length",
scale = 20.1168,
default = "ft m",
subdivs = { ["ft"] = { 66, default = "m" }, ["yd"] = { 22, default = "m" } },
link = "Chain (unit)",
},
["chlk"] = {
name1 = "[[Chain (unit)|chain]]",
symbol = "[[Chain (unit)|ch]]",
utype = "length",
scale = 20.1168,
default = "ft m",
link = "",
},
["chain"] = {
symbol = "chain",
usename = 1,
utype = "length",
scale = 20.1168,
default = "ft m",
subdivs = { ["ft"] = { 66, default = "m" }, ["yd"] = { 22, default = "m" } },
link = "Chain (unit)",
},
["chainlk"] = {
symbol = "[[Chain (unit)|chain]]",
usename = 1,
utype = "length",
scale = 20.1168,
default = "ft m",
link = "",
},
["dpcm"] = {
name2 = "dot/cm",
symbol = "dot/cm",
utype = "length",
scale = 100,
invert = -1,
iscomplex= true,
default = "dpi",
link = "Dots per inch",
},
["dpi"] = {
name2 = "DPI",
symbol = "DPI",
utype = "length",
scale = 39.370078740157481,
invert = -1,
iscomplex= true,
default = "pitch",
link = "Dots per inch",
},
["fathom"] = {
symbol = "fathom",
usename = 1,
utype = "length",
scale = 1.8288,
default = "ft m",
},
["foot"] = {
name1 = "foot",
name2 = "foot",
symbol = "ft",
utype = "length",
scale = 0.3048,
default = "m",
subdivs = { ["in"] = { 12, default = "m" } },
link = "Foot (unit)",
},
["ft"] = {
name1 = "foot",
name2 = "feet",
symbol = "ft",
utype = "length",
scale = 0.3048,
exception= "integer_more_precision",
default = "m",
subdivs = { ["in"] = { 12, default = "m" } },
link = "Foot (unit)",
},
["furlong"] = {
symbol = "furlong",
usename = 1,
utype = "length",
scale = 201.168,
default = "ft m",
},
["Gly"] = {
name1 = "gigalight-year",
symbol = "Gly",
utype = "length",
scale = 9.4607304725808e24,
default = "Mpc",
link = "Light-year#Definitions",
},
["Gpc"] = {
name1 = "gigaparsec",
symbol = "Gpc",
utype = "length",
scale = 3.0856775814671916e25,
default = "Gly",
link = "Parsec#Megaparsecs and gigaparsecs",
},
["hand"] = {
name1 = "hand",
symbol = "h",
utype = "length",
builtin = "hand",
scale = 0.1016,
iscomplex= true,
default = "in cm",
link = "Hand (unit)",
},
["in"] = {
name1 = "inch",
name2 = "inches",
symbol = "in",
utype = "length",
scale = 0.0254,
exception= "subunit_more_precision",
default = "mm",
},
["inabbreviated"] = {
name2 = "in",
symbol = "in",
utype = "length",
scale = 0.0254,
default = "mm",
link = "Inch",
},
["kly"] = {
name1 = "kilolight-year",
symbol = "kly",
utype = "length",
scale = 9.4607304725808e18,
default = "pc",
link = "Light-year#Definitions",
},
["kpc"] = {
name1 = "kiloparsec",
symbol = "kpc",
utype = "length",
scale = 3.0856775814671916e19,
default = "kly",
link = "Parsec#Parsecs and kiloparsecs",
},
["LD"] = {
name1 = "lunar distance",
symbol = "LD",
utype = "length",
scale = 384403000,
default = "km mi",
link = "Lunar distance (astronomy)",
},
["league"] = {
symbol = "league",
usename = 1,
utype = "length",
scale = 4828.032,
default = "km",
link = "League (unit)",
},
["ly"] = {
name1 = "light-year",
symbol = "ly",
utype = "length",
scale = 9.4607304725808e15,
default = "AU",
},
["m"] = {
_name1 = "metre",
_name1_us= "meter",
_symbol = "m",
utype = "length",
scale = 1,
prefixes = 1,
default = "v > 0 and v < 3 ! ftin ! ft",
link = "Metre",
},
["mi"] = {
name1 = "mile",
symbol = "mi",
utype = "length",
scale = 1609.344,
default = "km",
subdivs = { ["ch"] = { 80, default = "km" }, ["chlk"] = { 80, default = "km" }, ["chain"] = { 80, default = "km" }, ["chainlk"] = { 80, default = "km" }, ["ft"] = { 5280, default = "km" }, ["furlong"] = { 8, default = "km" }, ["yd"] = { 1760, default = "km" } },
},
["mil"] = {
symbol = "mil",
usename = 1,
utype = "length",
scale = 0.0000254,
default = "mm",
link = "Thousandth of an inch",
},
["Mly"] = {
name1 = "megalight-year",
symbol = "Mly",
utype = "length",
scale = 9.4607304725808e21,
default = "kpc",
link = "Light-year#Definitions",
},
["Mpc"] = {
name1 = "megaparsec",
symbol = "Mpc",
utype = "length",
scale = 3.0856775814671916e22,
default = "Mly",
link = "Parsec#Megaparsecs and gigaparsecs",
},
["NM"] = {
name1 = "nautical mile",
symbol = "NM",
utype = "length",
scale = 1852,
default = "km mi",
},
["nmi"] = {
name1 = "nautical mile",
symbol = "nmi",
utype = "length",
scale = 1852,
default = "km mi",
},
["oldUKnmi"] = {
name1 = "nautical mile",
symbol = "nmi",
utype = "length",
scale = 1853.184,
default = "km mi",
},
["oldUSnmi"] = {
name1 = "nautical mile",
symbol = "nmi",
utype = "length",
scale = 1853.24496,
default = "km mi",
},
["pc"] = {
name1 = "parsec",
symbol = "pc",
utype = "length",
scale = 3.0856775814671916e16,
default = "ly",
},
["perch"] = {
name2 = "perches",
symbol = "perch",
usename = 1,
utype = "length",
scale = 5.0292,
default = "ft m",
link = "Rod (unit)",
},
["pitch"] = {
name2 = "μm",
symbol = "μm",
utype = "length",
scale = 1e-6,
default = "dpi",
defkey = "pitch",
linkey = "pitch",
link = "Dots per inch",
},
["pole"] = {
symbol = "pole",
usename = 1,
utype = "length",
scale = 5.0292,
default = "ft m",
link = "Rod (unit)",
},
["pre1954U.S.nmi"] = {
name1 = "(pre-1954 U.S.) nautical mile",
symbol = "(pre‑1954 U.S.) nmi",
utype = "length",
scale = 1853.24496,
default = "km mi",
link = "Nautical mile",
},
["pre1954USnmi"] = {
name1 = "(pre-1954 US) nautical mile",
name1_us = "(pre-1954 U.S.) nautical mile",
symbol = "(pre‑1954 US) nmi",
sym_us = "(pre‑1954 U.S.) nmi",
utype = "length",
scale = 1853.24496,
default = "km mi",
link = "Nautical mile",
},
["rd"] = {
name1 = "rod",
symbol = "rd",
utype = "length",
scale = 5.0292,
default = "ft m",
link = "Rod (unit)",
},
["royal cubit"] = {
name1 = "royal cubit",
symbol = "cu",
utype = "length",
scale = 0.524,
default = "mm",
},
["rtkm"] = {
name1 = "route kilometre",
name1_us = "route kilometer",
symbol = "km",
utype = "length",
scale = 1000,
default = "mi",
link = "Kilometre",
},
["rtmi"] = {
name1 = "route mile",
symbol = "mi",
utype = "length",
scale = 1609.344,
default = "km",
link = "Mile",
},
["shaku"] = {
name2 = "shaku",
symbol = "shaku",
usename = 1,
utype = "length",
scale = 0.30303030303030304,
default = "m",
link = "Shaku (unit)",
},
["sm"] = {
name1 = "smoot",
symbol = "sm",
utype = "length",
scale = 1.70180,
default = "m",
link = "Smoot (unit)",
},
["smi"] = {
name1 = "statute mile",
symbol = "mi",
utype = "length",
scale = 1609.344,
default = "km",
subdivs = { ["chain"] = { 80, default = "km" } },
},
["solar radius"] = {
name1 = "solar radius",
name2 = "solar radii",
symbol = "''R''<sub>☉</sub>",
utype = "length",
scale = 695700e3,
default = "km",
},
["sun"] = {
name2 = "sun",
symbol = "sun",
usename = 1,
utype = "length",
scale = 0.030303030303030304,
default = "mm",
link = "Japanese units of measurement#Length",
},
["thou"] = {
name2 = "thou",
symbol = "thou",
usename = 1,
utype = "length",
scale = 0.0000254,
default = "mm",
link = "Thousandth of an inch",
},
["verst"] = {
symbol = "verst",
usename = 1,
utype = "length",
scale = 1066.8,
default = "km mi",
},
["yd"] = {
name1 = "yard",
symbol = "yd",
utype = "length",
scale = 0.9144,
default = "m",
subdivs = { ["ft"] = { 3, default = "m" } },
},
["μin"] = {
name1 = "microinch",
name2 = "microinches",
symbol = "μin",
utype = "length",
scale = 0.0000000254,
default = "nm",
link = "SI prefix#Non-metric units",
},
["Å"] = {
name1 = "ångström",
symbol = "Å",
utype = "length",
scale = 0.0000000001,
default = "in",
},
["Hz"] = {
_name1 = "hertz",
_name2 = "hertz",
_symbol = "Hz",
utype = "length",
scale = 3.3356409519815204e-9,
invert = -1,
iscomplex= true,
prefixes = 1,
default = "m",
link = "Hertz",
},
["-ft-frac"] = {
target = "ft",
link = "Fracture gradient",
},
["-in-stiff"] = {
target = "in",
link = "Stiffness",
},
["-m-frac"] = {
target = "m",
link = "Fracture gradient",
},
["-m-stiff"] = {
target = "m",
link = "Stiffness",
},
["100km"] = {
target = "km",
multiplier= 100,
},
["admiralty nmi"] = {
target = "oldUKnmi",
},
["angstrom"] = {
target = "Å",
},
["au"] = {
target = "AU",
symbol = "au",
},
["feet"] = {
target = "ft",
},
["hands"] = {
target = "hand",
},
["inch"] = {
target = "in",
},
["light-year"] = {
target = "ly",
},
["meter"] = {
target = "m",
sp_us = true,
},
["meters"] = {
target = "m",
sp_us = true,
},
["metre"] = {
target = "m",
},
["metres"] = {
target = "m",
},
["micrometre"] = {
target = "μm",
},
["micron"] = {
target = "μm",
default = "μin",
},
["mile"] = {
target = "mi",
},
["miles"] = {
target = "mi",
},
["parsec"] = {
target = "pc",
},
["rod"] = {
target = "rd",
},
["smoot"] = {
target = "sm",
},
["uin"] = {
target = "μin",
},
["yard"] = {
target = "yd",
},
["yards"] = {
target = "yd",
},
["yds"] = {
target = "yd",
},
["dtex"] = {
name1 = "decitex",
name2 = "decitex",
symbol = "dtex",
utype = "linear density",
scale = 1e-7,
default = "lb/yd",
link = "Units of textile measurement#Tex",
},
["kg/cm"] = {
name1 = "kilogram per centimetre",
name1_us = "kilogram per centimeter",
name2 = "kilograms per centimetre",
name2_us = "kilograms per centimeter",
symbol = "kg/cm",
utype = "linear density",
scale = 100,
default = "lb/yd",
link = "Linear density",
},
["kg/m"] = {
name1 = "kilogram per metre",
name1_us = "kilogram per meter",
name2 = "kilograms per metre",
name2_us = "kilograms per meter",
symbol = "kg/m",
utype = "linear density",
scale = 1,
default = "lb/yd",
link = "Linear density",
},
["lb/ft"] = {
name1 = "pound per foot",
name2 = "pounds per foot",
symbol = "lb/ft",
utype = "linear density",
scale = 1.4881639435695539,
default = "kg/m",
link = "Linear density",
},
["lb/yd"] = {
name1 = "pound per yard",
name2 = "pounds per yard",
symbol = "lb/yd",
utype = "linear density",
scale = 0.49605464785651798,
default = "kg/m",
link = "Linear density",
},
["G"] = {
_name1 = "gauss",
_name2 = "gauss",
_symbol = "G",
utype = "magnetic field strength",
scale = 0.0001,
prefixes = 1,
default = "T",
link = "Gauss (unit)",
},
["T"] = {
_name1 = "tesla",
_symbol = "T",
utype = "magnetic field strength",
scale = 1,
prefixes = 1,
default = "G",
link = "Tesla (unit)",
},
["A/m"] = {
name1 = "ampere per metre",
name1_us = "ampere per meter",
name2 = "amperes per metre",
name2_us = "amperes per meter",
symbol = "A/m",
utype = "magnetizing field",
scale = 1,
default = "Oe",
link = "Magnetic field#Units",
},
["kA/m"] = {
name1 = "kiloampere per metre",
name1_us = "kiloampere per meter",
name2 = "kiloamperes per metre",
name2_us = "kiloamperes per meter",
symbol = "kA/m",
utype = "magnetizing field",
scale = 1000,
default = "kOe",
link = "Magnetic field#Units",
},
["MA/m"] = {
name1 = "megaampere per metre",
name1_us = "megaampere per meter",
name2 = "megaamperes per metre",
name2_us = "megaamperes per meter",
symbol = "MA/m",
utype = "magnetizing field",
scale = 1e6,
default = "kOe",
link = "Magnetic field#Units",
},
["Oe"] = {
_name1 = "oersted",
_symbol = "Oe",
utype = "magnetizing field",
scale = 79.5774715,
prefixes = 1,
default = "kA/m",
link = "Oersted",
},
["-Lcwt"] = {
name1 = "hundredweight",
name2 = "hundredweight",
symbol = "cwt",
utype = "mass",
scale = 50.80234544,
default = "lb",
},
["-Scwt"] = {
name1 = "hundredweight",
name2 = "hundredweight",
symbol = "cwt",
utype = "mass",
scale = 45.359237,
default = "lb",
},
["-ST"] = {
name1 = "short ton",
symbol = "ST",
utype = "mass",
scale = 907.18474,
default = "t",
},
["carat"] = {
symbol = "carat",
usename = 1,
utype = "mass",
scale = 0.0002,
default = "g",
link = "Carat (mass)",
},
["drachm"] = {
name1_us = "dram",
symbol = "drachm",
usename = 1,
utype = "mass",
scale = 0.001771845195,
default = "g",
link = "Dram (unit)",
},
["dram"] = {
target = "drachm",
},
["dwt"] = {
name1 = "pennyweight",
symbol = "dwt",
utype = "mass",
scale = 0.00155517384,
default = "oz g",
},
["DWton"] = {
symbol = "deadweight ton",
usename = 1,
utype = "mass",
scale = 1016.0469088,
default = "DWtonne",
link = "Tonnage",
},
["DWtonne"] = {
symbol = "deadweight tonne",
usename = 1,
utype = "mass",
scale = 1000,
default = "DWton",
link = "Tonnage",
},
["g"] = {
_name1 = "gram",
_symbol = "g",
utype = "mass",
scale = 0.001,
prefixes = 1,
default = "oz",
link = "Gram",
},
["gr"] = {
name1 = "grain",
symbol = "gr",
utype = "mass",
scale = 0.00006479891,
default = "g",
link = "Grain (unit)",
},
["Gt"] = {
name1 = "gigatonne",
symbol = "Gt",
utype = "mass",
scale = 1000000000000,
default = "LT ST",
link = "Tonne",
},
["impgalh2o"] = {
name1 = "imperial gallon of water",
name2 = "imperial gallons of water",
symbol = "imp gal H<sub>2</sub>O",
utype = "mass",
scale = 4.5359236999999499,
default = "lb kg",
link = "Imperial gallon",
},
["kt"] = {
name1 = "kilotonne",
symbol = "kt",
utype = "mass",
scale = 1000000,
default = "LT ST",
link = "Tonne",
},
["lb"] = {
name1 = "pound",
symbol = "lb",
utype = "mass",
scale = 0.45359237,
exception= "integer_more_precision",
default = "kg",
subdivs = { ["oz"] = { 16, default = "kg" } },
link = "Pound (mass)",
},
["Lcwt"] = {
name1 = "long hundredweight",
name2 = "long hundredweight",
symbol = "Lcwt",
usename = 1,
utype = "mass",
scale = 50.80234544,
default = "lb",
subdivs = { ["qtr"] = { 4, default = "kg" }, ["st"] = { 8, default = "kg" } },
link = "Hundredweight",
},
["long cwt"] = {
name1 = "long hundredweight",
name2 = "long hundredweight",
symbol = "long cwt",
utype = "mass",
scale = 50.80234544,
default = "lb kg",
subdivs = { ["qtr"] = { 4, default = "kg" } },
link = "Hundredweight",
},
["long qtr"] = {
name1 = "long quarter",
symbol = "long qtr",
utype = "mass",
scale = 12.70058636,
default = "lb kg",
link = "Avoirdupois",
},
["LT"] = {
symbol = "long ton",
usename = 1,
utype = "mass",
scale = 1016.0469088,
default = "t",
subdivs = { ["Lcwt"] = { 20, default = "t", unit = "-Lcwt" } },
},
["lt"] = {
name1 = "long ton",
symbol = "LT",
utype = "mass",
scale = 1016.0469088,
default = "t",
subdivs = { ["Lcwt"] = { 20, default = "t", unit = "-Lcwt" } },
},
["metric ton"] = {
symbol = "metric ton",
usename = 1,
utype = "mass",
scale = 1000,
default = "long ton",
link = "Tonne",
},
["MT"] = {
name1 = "metric ton",
symbol = "t",
utype = "mass",
scale = 1000,
default = "LT ST",
link = "Tonne",
},
["Mt"] = {
name1 = "megatonne",
symbol = "Mt",
utype = "mass",
scale = 1000000000,
default = "LT ST",
link = "Tonne",
},
["oz"] = {
name1 = "ounce",
symbol = "oz",
utype = "mass",
scale = 0.028349523125,
default = "g",
},
["ozt"] = {
name1 = "troy ounce",
symbol = "ozt",
utype = "mass",
scale = 0.0311034768,
default = "oz g",
},
["pdr"] = {
name1 = "pounder",
symbol = "pdr",
utype = "mass",
scale = 0.45359237,
default = "kg",
link = "Pound (mass)",
},
["qtr"] = {
name1 = "quarter",
symbol = "qtr",
utype = "mass",
scale = 12.70058636,
default = "lb kg",
subdivs = { ["lb"] = { 28, default = "kg" } },
link = "Avoirdupois",
},
["Scwt"] = {
name1 = "short hundredweight",
name2 = "short hundredweight",
symbol = "Scwt",
usename = 1,
utype = "mass",
scale = 45.359237,
default = "lb",
link = "Hundredweight",
},
["short cwt"] = {
name1 = "short hundredweight",
name2 = "short hundredweight",
symbol = "short cwt",
utype = "mass",
scale = 45.359237,
default = "lb kg",
link = "Hundredweight",
},
["short qtr"] = {
name1 = "short quarter",
symbol = "short qtr",
utype = "mass",
scale = 11.33980925,
default = "lb kg",
link = "Avoirdupois",
},
["ST"] = {
symbol = "short ton",
usename = 1,
utype = "mass",
scale = 907.18474,
default = "t",
subdivs = { ["Scwt"] = { 20, default = "t", unit = "-Scwt" } },
},
["shtn"] = {
name1 = "short ton",
symbol = "sh tn",
utype = "mass",
scale = 907.18474,
default = "t",
},
["shton"] = {
symbol = "ton",
usename = 1,
utype = "mass",
scale = 907.18474,
default = "t",
},
["solar mass"] = {
name1 = "solar mass",
name2 = "solar masses",
symbol = "''M''<sub>☉</sub>",
utype = "mass",
scale = 1.98855e30,
default = "kg",
},
["st"] = {
name1 = "stone",
name2 = "stone",
symbol = "st",
utype = "mass",
scale = 6.35029318,
default = "lb kg",
subdivs = { ["lb"] = { 14, default = "kg lb" } },
link = "Stone (unit)",
},
["t"] = {
name1 = "tonne",
name1_us = "metric ton",
symbol = "t",
utype = "mass",
scale = 1000,
default = "LT ST",
},
["tonne"] = {
name1 = "tonne",
name1_us = "metric ton",
symbol = "t",
utype = "mass",
scale = 1000,
default = "shton",
},
["troy pound"] = {
symbol = "troy pound",
usename = 1,
utype = "mass",
scale = 0.3732417216,
default = "lb kg",
link = "Troy weight",
},
["usgalh2o"] = {
name1 = "US gallon of water",
name1_us = "U.S. gallon of water",
name2 = "US gallons of water",
name2_us = "U.S. gallons of water",
symbol = "US gal H<sub>2</sub>O",
utype = "mass",
scale = 3.7776215836051126,
default = "lb kg",
link = "United States customary units#Fluid volume",
},
["viss"] = {
name2 = "viss",
symbol = "viss",
utype = "mass",
scale = 1.632932532,
default = "kg",
link = "Myanmar units of measurement#Mass",
},
["billion tonne"] = {
target = "e9t",
},
["kilogram"] = {
target = "kg",
},
["kilotonne"] = {
target = "kt",
},
["lbs"] = {
target = "lb",
},
["lbt"] = {
target = "troy pound",
},
["lcwt"] = {
target = "Lcwt",
},
["long ton"] = {
target = "LT",
},
["mcg"] = {
target = "μg",
},
["million tonne"] = {
target = "e6t",
},
["scwt"] = {
target = "Scwt",
},
["short ton"] = {
target = "ST",
},
["stone"] = {
target = "st",
},
["thousand tonne"] = {
target = "e3t",
},
["tonnes"] = {
target = "t",
},
["kg/kW"] = {
name1 = "kilogram per kilowatt",
name2 = "kilograms per kilowatt",
symbol = "kg/kW",
utype = "mass per unit power",
scale = 0.001,
default = "lb/hp",
link = "Kilowatt",
},
["lb/hp"] = {
name1 = "pound per horsepower",
name2 = "pounds per horsepower",
symbol = "lb/hp",
utype = "mass per unit power",
scale = 0.00060827738784176115,
default = "kg/kW",
link = "Horsepower",
},
["kg/h"] = {
per = { "kg", "h" },
utype = "mass per unit time",
default = "lb/h",
},
["lb/h"] = {
per = { "lb", "h" },
utype = "mass per unit time",
default = "kg/h",
},
["g-mol/d"] = {
name1 = "gram-mole per day",
name2 = "gram-moles per day",
symbol = "g‑mol/d",
utype = "molar rate",
scale = 1.1574074074074073e-5,
default = "μmol/s",
link = "Mole (unit)",
},
["g-mol/h"] = {
name1 = "gram-mole per hour",
name2 = "gram-moles per hour",
symbol = "g‑mol/h",
utype = "molar rate",
scale = 0.00027777777777777778,
default = "mmol/s",
link = "Mole (unit)",
},
["g-mol/min"] = {
name1 = "gram-mole per minute",
name2 = "gram-moles per minute",
symbol = "g‑mol/min",
utype = "molar rate",
scale = 0.016666666666666666,
default = "g-mol/s",
link = "Mole (unit)",
},
["g-mol/s"] = {
name1 = "gram-mole per second",
name2 = "gram-moles per second",
symbol = "g‑mol/s",
utype = "molar rate",
scale = 1,
default = "lb-mol/min",
link = "Mole (unit)",
},
["gmol/d"] = {
name1 = "gram-mole per day",
name2 = "gram-moles per day",
symbol = "gmol/d",
utype = "molar rate",
scale = 1.1574074074074073e-5,
default = "μmol/s",
link = "Mole (unit)",
},
["gmol/h"] = {
name1 = "gram-mole per hour",
name2 = "gram-moles per hour",
symbol = "gmol/h",
utype = "molar rate",
scale = 0.00027777777777777778,
default = "mmol/s",
link = "Mole (unit)",
},
["gmol/min"] = {
name1 = "gram-mole per minute",
name2 = "gram-moles per minute",
symbol = "gmol/min",
utype = "molar rate",
scale = 0.016666666666666666,
default = "gmol/s",
link = "Mole (unit)",
},
["gmol/s"] = {
name1 = "gram-mole per second",
name2 = "gram-moles per second",
symbol = "gmol/s",
utype = "molar rate",
scale = 1,
default = "lbmol/min",
link = "Mole (unit)",
},
["kmol/d"] = {
name1 = "kilomole per day",
name2 = "kilomoles per day",
symbol = "kmol/d",
utype = "molar rate",
scale = 0.011574074074074073,
default = "mmol/s",
link = "Mole (unit)",
},
["kmol/h"] = {
name1 = "kilomole per hour",
name2 = "kilomoles per hour",
symbol = "kmol/h",
utype = "molar rate",
scale = 0.27777777777777779,
default = "mol/s",
link = "Mole (unit)",
},
["kmol/min"] = {
name1 = "kilomole per minute",
name2 = "kilomoles per minute",
symbol = "kmol/min",
utype = "molar rate",
scale = 16.666666666666668,
default = "mol/s",
link = "Kilomole (unit)",
},
["kmol/s"] = {
name1 = "kilomole per second",
name2 = "kilomoles per second",
symbol = "kmol/s",
utype = "molar rate",
scale = 1000,
default = "lb-mol/s",
link = "Mole (unit)",
},
["lb-mol/d"] = {
name1 = "pound-mole per day",
name2 = "pound-moles per day",
symbol = "lb‑mol/d",
utype = "molar rate",
scale = 0.0052499116898148141,
default = "mmol/s",
link = "Mole (unit)#Other units called \"mole\"",
},
["lb-mol/h"] = {
name1 = "pound-mole per hour",
name2 = "pound-moles per hour",
symbol = "lb‑mol/h",
utype = "molar rate",
scale = 0.12599788055555555,
default = "mol/s",
link = "Mole (unit)#Other units called \"mole\"",
},
["lb-mol/min"] = {
name1 = "pound-mole per minute",
name2 = "pound-moles per minute",
symbol = "lb‑mol/min",
utype = "molar rate",
scale = 7.5598728333333334,
default = "mol/s",
link = "Mole (unit)#Other units called \"mole\"",
},
["lb-mol/s"] = {
name1 = "pound-mole per second",
name2 = "pound-moles per second",
symbol = "lb‑mol/s",
utype = "molar rate",
scale = 453.59237,
default = "kmol/s",
link = "Mole (unit)#Other units called \"mole\"",
},
["lbmol/d"] = {
name1 = "pound-mole per day",
name2 = "pound-moles per day",
symbol = "lbmol/d",
utype = "molar rate",
scale = 0.0052499116898148141,
default = "mmol/s",
link = "Mole (unit)#Other units called \"mole\"",
},
["lbmol/h"] = {
name1 = "pound-mole per hour",
name2 = "pound-moles per hour",
symbol = "lbmol/h",
utype = "molar rate",
scale = 0.12599788055555555,
default = "mol/s",
link = "Mole (unit)#Other units called \"mole\"",
},
["lbmol/min"] = {
name1 = "pound-mole per minute",
name2 = "pound-moles per minute",
symbol = "lbmol/min",
utype = "molar rate",
scale = 7.5598728333333334,
default = "mol/s",
link = "Mole (unit)#Other units called \"mole\"",
},
["lbmol/s"] = {
name1 = "pound-mole per second",
name2 = "pound-moles per second",
symbol = "lbmol/s",
utype = "molar rate",
scale = 453.59237,
default = "kmol/s",
link = "Mole (unit)#Other units called \"mole\"",
},
["mmol/s"] = {
name1 = "millimole per second",
name2 = "millimoles per second",
symbol = "mmol/s",
utype = "molar rate",
scale = 0.001,
default = "lb-mol/d",
link = "Mole (unit)",
},
["mol/d"] = {
name1 = "mole per day",
name2 = "moles per day",
symbol = "mol/d",
utype = "molar rate",
scale = 1.1574074074074073e-5,
default = "μmol/s",
link = "Mole (unit)",
},
["mol/h"] = {
name1 = "mole per hour",
name2 = "moles per hour",
symbol = "mol/h",
utype = "molar rate",
scale = 0.00027777777777777778,
default = "mmol/s",
link = "Mole (unit)",
},
["mol/min"] = {
name1 = "mole per minute",
name2 = "moles per minute",
symbol = "mol/min",
utype = "molar rate",
scale = 0.016666666666666666,
default = "mol/s",
link = "Mole (unit)",
},
["mol/s"] = {
name1 = "mole per second",
name2 = "moles per second",
symbol = "mol/s",
utype = "molar rate",
scale = 1,
default = "lb-mol/min",
link = "Mole (unit)",
},
["μmol/s"] = {
name1 = "micromole per second",
name2 = "micromoles per second",
symbol = "μmol/s",
utype = "molar rate",
scale = 0.000001,
default = "lb-mol/d",
link = "Mole (unit)",
},
["umol/s"] = {
target = "μmol/s",
},
["/acre"] = {
name1 = "per acre",
name2 = "per acre",
symbol = "/acre",
utype = "per unit area",
scale = 0.00024710538146716532,
default = "/ha",
link = "Acre",
},
["/ha"] = {
name1 = "per hectare",
name2 = "per hectare",
symbol = "/ha",
utype = "per unit area",
scale = 100e-6,
default = "/acre",
link = "Hectare",
},
["/sqcm"] = {
name1 = "per square centimetre",
name1_us = "per square centimeter",
name2 = "per square centimetre",
name2_us = "per square centimeter",
symbol = "/cm<sup>2</sup>",
utype = "per unit area",
scale = 1e4,
default = "/sqin",
link = "Square centimetre",
},
["/sqin"] = {
name1 = "per square inch",
name2 = "per square inch",
symbol = "/in<sup>2</sup>",
utype = "per unit area",
scale = 1550.0031000062002,
default = "/sqcm",
link = "Square inch",
},
["/sqkm"] = {
name1 = "per square kilometre",
name1_us = "per square kilometer",
name2 = "per square kilometre",
name2_us = "per square kilometer",
symbol = "/km<sup>2</sup>",
utype = "per unit area",
scale = 1e-6,
default = "/sqmi",
link = "Square kilometre",
},
["/sqmi"] = {
name1 = "per square mile",
name2 = "per square mile",
symbol = "/sq mi",
utype = "per unit area",
scale = 3.8610215854244582e-7,
default = "/sqkm",
link = "Square mile",
},
["PD/acre"] = {
name1 = "inhabitant per acre",
name2 = "inhabitants per acre",
symbol = "/acre",
utype = "per unit area",
scale = 0.00024710538146716532,
default = "PD/ha",
link = "Acre",
},
["PD/ha"] = {
name1 = "inhabitant per hectare",
name2 = "inhabitants per hectare",
symbol = "/ha",
utype = "per unit area",
scale = 100e-6,
default = "PD/acre",
link = "Hectare",
},
["PD/sqkm"] = {
name1 = "inhabitant per square kilometre",
name1_us = "inhabitant per square kilometer",
name2 = "inhabitants per square kilometre",
name2_us = "inhabitants per square kilometer",
symbol = "/km<sup>2</sup>",
utype = "per unit area",
scale = 1e-6,
default = "PD/sqmi",
link = "Square kilometre",
},
["PD/sqmi"] = {
name1 = "inhabitant per square mile",
name2 = "inhabitants per square mile",
symbol = "/sq mi",
utype = "per unit area",
scale = 3.8610215854244582e-7,
default = "PD/sqkm",
link = "Square mile",
},
["/cm2"] = {
target = "/sqcm",
},
["/in2"] = {
target = "/sqin",
},
["/km2"] = {
target = "/sqkm",
},
["pd/acre"] = {
target = "PD/acre",
},
["pd/ha"] = {
target = "PD/ha",
},
["PD/km2"] = {
target = "PD/sqkm",
},
["pd/km2"] = {
target = "PD/sqkm",
},
["PD/km²"] = {
target = "PD/sqkm",
},
["pd/sqkm"] = {
target = "PD/sqkm",
},
["pd/sqmi"] = {
target = "PD/sqmi",
},
["/l"] = {
name1 = "per litre",
name1_us = "per liter",
name2 = "per litre",
name2_us = "per liter",
symbol = "/l",
utype = "per unit volume",
scale = 1000,
default = "/usgal",
link = "Litre",
},
["/USgal"] = {
name1 = "per gallon",
name2 = "per gallon",
symbol = "/gal",
utype = "per unit volume",
scale = 264.172052,
default = "/l",
link = "US gallon",
customary= 2,
},
["/usgal"] = {
target = "/USgal",
},
["bhp"] = {
name1 = "brake horsepower",
name2 = "brake horsepower",
symbol = "bhp",
utype = "power",
scale = 745.69987158227022,
default = "kW",
link = "Horsepower#Brake horsepower",
},
["Cal/d"] = {
name1 = "large calorie per day",
name2 = "large calories per day",
symbol = "Cal/d",
utype = "power",
scale = 0.048425925925925928,
default = "kJ/d",
link = "Calorie",
},
["Cal/h"] = {
name1 = "large calorie per hour",
name2 = "large calories per hour",
symbol = "Cal/h",
utype = "power",
scale = 1.1622222222222223,
default = "kJ/h",
link = "Calorie",
},
["cal/h"] = {
name1 = "calorie per hour",
name2 = "calories per hour",
symbol = "cal/h",
utype = "power",
scale = 0.0011622222222222223,
default = "W",
link = "Calorie",
},
["CV"] = {
name1 = "metric horsepower",
name2 = "metric horsepower",
symbol = "CV",
utype = "power",
scale = 735.49875,
default = "kW",
},
["hk"] = {
name1 = "metric horsepower",
name2 = "metric horsepower",
symbol = "hk",
utype = "power",
scale = 735.49875,
default = "kW",
},
["hp"] = {
name1 = "horsepower",
name2 = "horsepower",
symbol = "hp",
utype = "power",
scale = 745.69987158227022,
default = "kW",
},
["hp-electric"] = {
name1 = "electric horsepower",
name2 = "electric horsepower",
symbol = "hp",
utype = "power",
scale = 746,
default = "kW",
link = "Horsepower#Electrical horsepower",
},
["hp-electrical"] = {
name1 = "electrical horsepower",
name2 = "electrical horsepower",
symbol = "hp",
utype = "power",
scale = 746,
default = "kW",
link = "Horsepower#Electrical horsepower",
},
["hp-metric"] = {
name1 = "metric horsepower",
name2 = "metric horsepower",
symbol = "hp",
utype = "power",
scale = 735.49875,
default = "kW",
},
["ihp"] = {
name1 = "indicated horsepower",
name2 = "indicated horsepower",
symbol = "ihp",
utype = "power",
scale = 745.69987158227022,
default = "kW",
link = "Horsepower#Indicated horsepower",
},
["kcal/h"] = {
name1 = "kilocalorie per hour",
name2 = "kilocalories per hour",
symbol = "kcal/h",
utype = "power",
scale = 1.1622222222222223,
default = "kW",
link = "Calorie",
},
["kJ/d"] = {
name1 = "kilojoule per day",
name2 = "kilojoules per day",
symbol = "kJ/d",
utype = "power",
scale = 0.011574074074074073,
default = "Cal/d",
link = "Kilojoule",
},
["kJ/h"] = {
name1 = "kilojoule per hour",
name2 = "kilojoules per hour",
symbol = "kJ/h",
utype = "power",
scale = 0.27777777777777779,
default = "W",
link = "Kilojoule",
},
["PS"] = {
name1 = "metric horsepower",
name2 = "metric horsepower",
symbol = "PS",
utype = "power",
scale = 735.49875,
default = "kW",
},
["shp"] = {
name1 = "shaft horsepower",
name2 = "shaft horsepower",
symbol = "shp",
utype = "power",
scale = 745.69987158227022,
default = "kW",
link = "Horsepower#Shaft horsepower",
},
["W"] = {
_name1 = "watt",
_symbol = "W",
utype = "power",
scale = 1,
prefixes = 1,
default = "hp",
link = "Watt",
},
["BTU/h"] = {
per = { "BTU", "h" },
utype = "power",
default = "W",
},
["Btu/h"] = {
per = { "Btu", "h" },
utype = "power",
default = "W",
},
["BHP"] = {
target = "bhp",
},
["btu/h"] = {
target = "BTU/h",
},
["HP"] = {
target = "hp",
},
["Hp"] = {
target = "hp",
},
["hp-mechanical"] = {
target = "hp",
},
["IHP"] = {
target = "ihp",
},
["SHP"] = {
target = "shp",
},
["whp"] = {
target = "hp",
},
["hp/lb"] = {
name1 = "horsepower per pound",
name2 = "horsepower per pound",
symbol = "hp/lb",
utype = "power per unit mass",
scale = 1643.986806,
default = "kW/kg",
link = "Power-to-weight ratio",
},
["hp/LT"] = {
name1 = "horsepower per long ton",
name2 = "horsepower per long ton",
symbol = "hp/LT",
utype = "power per unit mass",
scale = 0.73392268125000004,
default = "kW/t",
link = "Power-to-weight ratio",
},
["hp/ST"] = {
name1 = "horsepower per short ton",
name2 = "horsepower per short ton",
symbol = "hp/ST",
utype = "power per unit mass",
scale = 0.821993403,
default = "kW/t",
link = "Power-to-weight ratio",
},
["hp/t"] = {
name1 = "horsepower per tonne",
name2 = "horsepower per tonne",
symbol = "hp/t",
utype = "power per unit mass",
scale = 0.74569987158227022,
default = "kW/t",
link = "Power-to-weight ratio",
},
["kW/kg"] = {
name1 = "kilowatt per kilogram",
name2 = "kilowatts per kilogram",
symbol = "kW/kg",
utype = "power per unit mass",
scale = 1000,
default = "hp/lb",
link = "Power-to-weight ratio",
},
["kW/t"] = {
name1 = "kilowatt per tonne",
name2 = "kilowatts per tonne",
symbol = "kW/t",
utype = "power per unit mass",
scale = 1,
default = "PS/t",
link = "Power-to-weight ratio",
},
["PS/t"] = {
name1 = "metric horsepower per tonne",
name2 = "metric horsepower per tonne",
symbol = "PS/t",
utype = "power per unit mass",
scale = 0.73549875,
default = "kW/t",
link = "Power-to-weight ratio",
},
["shp/lb"] = {
name1 = "shaft horsepower per pound",
name2 = "shaft horsepower per pound",
symbol = "shp/lb",
utype = "power per unit mass",
scale = 1643.986806,
default = "kW/kg",
link = "Power-to-weight ratio",
},
["hp/tonne"] = {
target = "hp/t",
symbol = "hp/tonne",
default = "kW/tonne",
},
["kW/tonne"] = {
target = "kW/t",
symbol = "kW/tonne",
},
["-lb/in2"] = {
name1 = "pound per square inch",
name2 = "pounds per square inch",
symbol = "lb/in<sup>2</sup>",
utype = "pressure",
scale = 6894.7572931683608,
default = "kPa kgf/cm2",
link = "Pounds per square inch",
},
["atm"] = {
name1 = "standard atmosphere",
symbol = "atm",
utype = "pressure",
scale = 101325,
default = "kPa",
link = "Atmosphere (unit)",
},
["Ba"] = {
name1 = "barye",
symbol = "Ba",
utype = "pressure",
scale = 0.1,
default = "Pa",
},
["bar"] = {
symbol = "bar",
utype = "pressure",
scale = 100000,
default = "kPa",
link = "Bar (unit)",
},
["dbar"] = {
name1 = "decibar",
symbol = "dbar",
utype = "pressure",
scale = 10000,
default = "kPa",
link = "Bar (unit)",
},
["inHg"] = {
name1 = "inch of mercury",
name2 = "inches of mercury",
symbol = "inHg",
utype = "pressure",
scale = 3386.388640341,
default = "kPa",
},
["kBa"] = {
name1 = "kilobarye",
symbol = "kBa",
utype = "pressure",
scale = 100,
default = "hPa",
link = "Barye",
},
["kg-f/cm2"] = {
name1 = "kilogram-force per square centimetre",
name1_us = "kilogram-force per square centimeter",
name2 = "kilograms-force per square centimetre",
name2_us = "kilograms-force per square centimeter",
symbol = "kg<sub>f</sub>/cm<sup>2</sup>",
utype = "pressure",
scale = 98066.5,
default = "psi",
link = "Kilogram-force",
},
["kg/cm2"] = {
name1 = "kilogram per square centimetre",
name1_us = "kilogram per square centimeter",
name2 = "kilograms per square centimetre",
name2_us = "kilograms per square centimeter",
symbol = "kg/cm<sup>2</sup>",
utype = "pressure",
scale = 98066.5,
default = "psi",
link = "Kilogram-force",
},
["kgf/cm2"] = {
name1 = "kilogram-force per square centimetre",
name1_us = "kilogram-force per square centimeter",
name2 = "kilograms-force per square centimetre",
name2_us = "kilograms-force per square centimeter",
symbol = "kgf/cm<sup>2</sup>",
utype = "pressure",
scale = 98066.5,
default = "psi",
link = "Kilogram-force",
},
["ksi"] = {
name1 = "kilopound per square inch",
name2 = "kilopounds per square inch",
symbol = "ksi",
utype = "pressure",
scale = 6894757.2931683613,
default = "MPa",
link = "Pounds per square inch",
},
["lbf/in2"] = {
name1 = "pound-force per square inch",
name2 = "pounds-force per square inch",
symbol = "lbf/in<sup>2</sup>",
utype = "pressure",
scale = 6894.7572931683608,
default = "kPa kgf/cm2",
link = "Pounds-force per square inch",
},
["mb"] = {
name1 = "millibar",
symbol = "mb",
utype = "pressure",
scale = 100,
default = "hPa",
link = "Bar (unit)",
},
["mbar"] = {
name1 = "millibar",
symbol = "mbar",
utype = "pressure",
scale = 100,
default = "hPa",
link = "Bar (unit)",
},
["mmHg"] = {
name1 = "millimetre of mercury",
name1_us = "millimeter of mercury",
name2 = "millimetres of mercury",
name2_us = "millimeters of mercury",
symbol = "mmHg",
utype = "pressure",
scale = 133.322387415,
default = "kPa",
link = "Millimeter of mercury",
},
["Pa"] = {
_name1 = "pascal",
_symbol = "Pa",
utype = "pressure",
scale = 1,
prefixes = 1,
default = "psi",
link = "Pascal (unit)",
},
["psf"] = {
name1 = "pound per square foot",
name2 = "pounds per square foot",
symbol = "psf",
utype = "pressure",
scale = 47.880258980335839,
default = "kPa",
link = "Pounds per square inch",
},
["psi"] = {
name1 = "pound per square inch",
name2 = "pounds per square inch",
symbol = "psi",
utype = "pressure",
scale = 6894.7572931683608,
default = "kPa",
link = "Pounds per square inch",
},
["Torr"] = {
name1 = "torr",
symbol = "Torr",
utype = "pressure",
scale = 133.32236842105263,
default = "kPa",
},
["N/cm2"] = {
per = { "N", "cm2" },
utype = "pressure",
default = "psi",
},
["N/m2"] = {
per = { "N", "m2" },
utype = "pressure",
default = "psi",
},
["g/cm2"] = {
per = { "g", "cm2" },
utype = "pressure",
default = "lb/sqft",
multiplier= 9.80665,
},
["g/m2"] = {
per = { "g", "m2" },
utype = "pressure",
default = "lb/sqft",
multiplier= 9.80665,
},
["kg/ha"] = {
per = { "kg", "ha" },
utype = "pressure",
default = "lb/acre",
multiplier= 9.80665,
},
["kg/m2"] = {
per = { "kg", "m2" },
utype = "pressure",
default = "lb/sqft",
multiplier= 9.80665,
},
["lb/1000sqft"] = {
per = { "lb", "1000sqft" },
utype = "pressure",
default = "g/m2",
multiplier= 9.80665,
},
["lb/acre"] = {
per = { "lb", "acre" },
utype = "pressure",
default = "kg/ha",
multiplier= 9.80665,
},
["lb/sqft"] = {
per = { "lb", "sqft" },
utype = "pressure",
default = "kg/m2",
multiplier= 9.80665,
},
["lb/sqyd"] = {
per = { "lb", "sqyd" },
utype = "pressure",
default = "kg/m2",
multiplier= 9.80665,
},
["LT/acre"] = {
per = { "LT", "acre" },
utype = "pressure",
default = "t/ha",
multiplier= 9.80665,
},
["MT/ha"] = {
per = { "MT", "ha" },
utype = "pressure",
default = "LT/acre ST/acre",
multiplier= 9.80665,
},
["oz/sqft"] = {
per = { "oz", "sqft" },
utype = "pressure",
default = "g/m2",
multiplier= 9.80665,
},
["oz/sqyd"] = {
per = { "oz", "sqyd" },
utype = "pressure",
default = "g/m2",
multiplier= 9.80665,
},
["ST/acre"] = {
per = { "ST", "acre" },
utype = "pressure",
default = "t/ha",
multiplier= 9.80665,
},
["t/ha"] = {
per = { "t", "ha" },
utype = "pressure",
default = "LT/acre ST/acre",
multiplier= 9.80665,
},
["tonne/acre"] = {
per = { "tonne", "acre" },
utype = "pressure",
default = "tonne/ha",
multiplier= 9.80665,
},
["tonne/ha"] = {
per = { "tonne", "ha" },
utype = "pressure",
default = "tonne/acre",
multiplier= 9.80665,
},
["kgfpsqcm"] = {
target = "kgf/cm2",
},
["kgpsqcm"] = {
target = "kg/cm2",
},
["kN/m2"] = {
target = "kPa",
},
["lb/in2"] = {
target = "lbf/in2",
},
["torr"] = {
target = "Torr",
},
["Bq"] = {
_name1 = "becquerel",
_symbol = "Bq",
utype = "radioactivity",
scale = 1,
prefixes = 1,
default = "pCi",
link = "Becquerel",
},
["Ci"] = {
_name1 = "curie",
_symbol = "Ci",
utype = "radioactivity",
scale = 3.7e10,
prefixes = 1,
default = "GBq",
link = "Curie",
},
["Rd"] = {
_name1 = "rutherford",
_symbol = "Rd",
utype = "radioactivity",
scale = 1e6,
prefixes = 1,
default = "MBq",
link = "Rutherford (unit)",
},
["cm/h"] = {
name1 = "centimetre per hour",
name1_us = "centimeter per hour",
name2 = "centimetres per hour",
name2_us = "centimeters per hour",
symbol = "cm/h",
utype = "speed",
scale = 2.7777777777777775e-6,
default = "in/h",
link = "Metre per second",
},
["cm/s"] = {
name1 = "centimetre per second",
name1_us = "centimeter per second",
name2 = "centimetres per second",
name2_us = "centimeters per second",
symbol = "cm/s",
utype = "speed",
scale = 0.01,
default = "in/s",
link = "Metre per second",
},
["cm/year"] = {
name1 = "centimetre per year",
name1_us = "centimeter per year",
name2 = "centimetres per year",
name2_us = "centimeters per year",
symbol = "cm/year",
utype = "speed",
scale = 3.168873850681143e-10,
default = "in/year",
link = "Orders of magnitude (speed)",
},
["foot/s"] = {
name1 = "foot per second",
name2 = "foot per second",
symbol = "ft/s",
utype = "speed",
scale = 0.3048,
default = "m/s",
},
["ft/min"] = {
name1 = "foot per minute",
name2 = "feet per minute",
symbol = "ft/min",
utype = "speed",
scale = 0.00508,
default = "m/min",
link = "Feet per second",
},
["ft/s"] = {
name1 = "foot per second",
name2 = "feet per second",
symbol = "ft/s",
utype = "speed",
scale = 0.3048,
default = "m/s",
link = "Feet per second",
},
["furlong per fortnight"] = {
name2 = "furlongs per fortnight",
symbol = "furlong per fortnight",
usename = 1,
utype = "speed",
scale = 0.00016630952380952381,
default = "km/h mph",
link = "FFF system",
},
["in/h"] = {
name1 = "inch per hour",
name2 = "inches per hour",
symbol = "in/h",
utype = "speed",
scale = 7.0555555555555559e-6,
default = "cm/h",
link = "Inch",
},
["in/s"] = {
name1 = "inch per second",
name2 = "inches per second",
symbol = "in/s",
utype = "speed",
scale = 0.0254,
default = "cm/s",
link = "Inch",
},
["in/year"] = {
name1 = "inch per year",
name2 = "inches per year",
symbol = "in/year",
utype = "speed",
scale = 8.0489395807301024e-10,
default = "cm/year",
link = "Orders of magnitude (speed)",
},
["isp"] = {
name1 = "second",
symbol = "s",
utype = "speed",
scale = 9.80665,
default = "km/s",
link = "Specific impulse",
},
["km/d"] = {
name1 = "kilometre per day",
name1_us = "kilometer per day",
name2 = "kilometres per day",
name2_us = "kilometers per day",
symbol = "km/d",
utype = "speed",
scale = 1.1574074074074074e-2,
default = "mi/d",
link = "Orders of magnitude (speed)",
},
["km/h"] = {
name1 = "kilometre per hour",
name1_us = "kilometer per hour",
name2 = "kilometres per hour",
name2_us = "kilometers per hour",
symbol = "km/h",
utype = "speed",
scale = 0.27777777777777779,
default = "mph",
link = "Kilometres per hour",
},
["km/s"] = {
name1 = "kilometre per second",
name1_us = "kilometer per second",
name2 = "kilometres per second",
name2_us = "kilometers per second",
symbol = "km/s",
utype = "speed",
scale = 1000,
default = "mi/s",
link = "Metre per second",
},
["kn"] = {
name1 = "knot",
symbol = "kn",
utype = "speed",
scale = 0.51444444444444448,
default = "km/h mph",
link = "Knot (unit)",
},
["kNs/kg"] = {
name2 = "kN‑s/kg",
symbol = "kN‑s/kg",
utype = "speed",
scale = 1000,
default = "isp",
link = "Specific impulse",
},
["m/min"] = {
name1 = "metre per minute",
name1_us = "meter per minute",
name2 = "metres per minute",
name2_us = "meters per minute",
symbol = "m/min",
utype = "speed",
scale = 0.016666666666666666,
default = "ft/min",
link = "Metre per second",
},
["m/s"] = {
name1 = "metre per second",
name1_us = "meter per second",
name2 = "metres per second",
name2_us = "meters per second",
symbol = "m/s",
utype = "speed",
scale = 1,
default = "ft/s",
},
["Mach"] = {
name2 = "Mach",
symbol = "Mach",
utype = "speed",
builtin = "mach",
scale = 0,
iscomplex= true,
default = "km/h mph",
link = "Mach number",
},
["mi/d"] = {
name1 = "mile per day",
name2 = "miles per day",
symbol = "mi/d",
utype = "speed",
scale = 1.8626666666666667e-2,
default = "km/d",
link = "Orders of magnitude (speed)",
},
["mi/s"] = {
name1 = "mile per second",
name2 = "miles per second",
symbol = "mi/s",
utype = "speed",
scale = 1609.344,
default = "km/s",
link = "Mile",
},
["mm/h"] = {
name1 = "millimetre per hour",
name1_us = "millimeter per hour",
name2 = "millimetres per hour",
name2_us = "millimeters per hour",
symbol = "mm/h",
utype = "speed",
scale = 2.7777777777777781e-7,
default = "in/h",
link = "Metre per second",
},
["mph"] = {
name1 = "mile per hour",
name2 = "miles per hour",
symbol = "mph",
utype = "speed",
scale = 0.44704,
default = "km/h",
link = "Miles per hour",
},
["Ns/kg"] = {
name2 = "N‑s/kg",
symbol = "N‑s/kg",
utype = "speed",
scale = 1,
default = "isp",
link = "Specific impulse",
},
["si tsfc"] = {
name2 = "g/(kN⋅s)",
symbol = "g/(kN⋅s)",
utype = "speed",
scale = 9.9999628621379242e-7,
invert = -1,
iscomplex= true,
default = "tsfc",
link = "Thrust specific fuel consumption",
},
["tsfc"] = {
name2 = "lb/(lbf⋅h)",
symbol = "lb/(lbf⋅h)",
utype = "speed",
scale = 2.832545036049801e-5,
invert = -1,
iscomplex= true,
default = "si tsfc",
link = "Thrust specific fuel consumption",
},
["cm/y"] = {
target = "cm/year",
},
["cm/yr"] = {
target = "cm/year",
},
["in/y"] = {
target = "in/year",
},
["in/yr"] = {
target = "in/year",
},
["knot"] = {
target = "kn",
},
["knots"] = {
target = "kn",
},
["kph"] = {
target = "km/h",
},
["mi/h"] = {
target = "mph",
},
["mm/s"] = {
per = { "mm", "s" },
utype = "speed",
default = "in/s",
link = "Metre per second",
},
["C"] = {
name1 = "degree Celsius",
name2 = "degrees Celsius",
symbol = "°C",
usesymbol= 1,
utype = "temperature",
scale = 1,
offset = -273.15,
iscomplex= true,
istemperature= true,
default = "F",
link = "Celsius",
},
["F"] = {
name1 = "degree Fahrenheit",
name2 = "degrees Fahrenheit",
symbol = "°F",
usesymbol= 1,
utype = "temperature",
scale = 0.55555555555555558,
offset = 32-273.15*(9/5),
iscomplex= true,
istemperature= true,
default = "C",
link = "Fahrenheit",
},
["K"] = {
_name1 = "kelvin",
_symbol = "K",
usesymbol= 1,
utype = "temperature",
scale = 1,
offset = 0,
iscomplex= true,
istemperature= true,
prefixes = 1,
default = "C F",
link = "Kelvin",
},
["keVT"] = {
name1 = "kiloelectronvolt",
symbol = "keV",
utype = "temperature",
scale = 11.604505e6,
offset = 0,
iscomplex= true,
default = "MK",
link = "Electronvolt",
},
["R"] = {
name1 = "degree Rankine",
name2 = "degrees Rankine",
symbol = "°R",
usesymbol= 1,
utype = "temperature",
scale = 0.55555555555555558,
offset = 0,
iscomplex= true,
istemperature= true,
default = "K F C",
link = "Rankine scale",
},
["Celsius"] = {
target = "C",
},
["°C"] = {
target = "C",
},
["°F"] = {
target = "F",
},
["°R"] = {
target = "R",
},
["C-change"] = {
name1 = "degree Celsius change",
name2 = "degrees Celsius change",
symbol = "°C",
usesymbol= 1,
utype = "temperature change",
scale = 1,
default = "F-change",
link = "Celsius",
},
["F-change"] = {
name1 = "degree Fahrenheit change",
name2 = "degrees Fahrenheit change",
symbol = "°F",
usesymbol= 1,
utype = "temperature change",
scale = 0.55555555555555558,
default = "C-change",
link = "Fahrenheit",
},
["K-change"] = {
name1 = "kelvin change",
name2 = "kelvins change",
symbol = "K",
usesymbol= 1,
utype = "temperature change",
scale = 1,
default = "F-change",
link = "Kelvin",
},
["°C-change"] = {
target = "C-change",
},
["°F-change"] = {
target = "F-change",
},
["century"] = {
name1 = "century",
name2 = "centuries",
symbol = "ha",
utype = "time",
scale = 3155760000,
default = "Gs",
},
["d"] = {
name1 = "day",
symbol = "d",
utype = "time",
scale = 86400,
default = "ks",
},
["decade"] = {
name1 = "decade",
symbol = "daa",
utype = "time",
scale = 315576000,
default = "Ms",
},
["dog year"] = {
name1 = "dog year",
symbol = "dog yr",
utype = "time",
scale = 220903200,
default = "years",
link = "List of unusual units of measurement#Dog year",
},
["fortnight"] = {
symbol = "fortnight",
usename = 1,
utype = "time",
scale = 1209600,
default = "week",
},
["h"] = {
name1 = "hour",
symbol = "h",
utype = "time",
scale = 3600,
default = "ks",
},
["long billion year"] = {
name1 = "billion years",
name2 = "billion years",
symbol = "Ta",
utype = "time",
scale = 31557600000000000000,
default = "Es",
link = "Annum",
},
["millennium"] = {
name1 = "millennium",
name2 = "millennia",
symbol = "ka",
utype = "time",
scale = 31557600000,
default = "Gs",
},
["milliard year"] = {
name1 = "milliard years",
name2 = "milliard years",
symbol = "Ga",
utype = "time",
scale = 31557600000000000,
default = "Ps",
link = "Annum",
},
["million year"] = {
name1 = "million years",
name2 = "million years",
symbol = "Ma",
utype = "time",
scale = 31557600000000,
default = "Ts",
link = "Annum",
},
["min"] = {
name1 = "minute",
symbol = "min",
utype = "time",
scale = 60,
default = "s",
},
["month"] = {
symbol = "month",
usename = 1,
utype = "time",
scale = 2629800,
default = "Ms",
},
["months"] = {
name1 = "month",
symbol = "mo",
utype = "time",
scale = 2629800,
default = "year",
},
["s"] = {
_name1 = "second",
_symbol = "s",
utype = "time",
scale = 1,
prefixes = 1,
default = "min",
link = "Second",
},
["short billion year"] = {
name1 = "billion years",
name2 = "billion years",
symbol = "Ga",
utype = "time",
scale = 31557600000000000,
default = "Ps",
link = "Annum",
},
["short trillion year"] = {
name1 = "trillion years",
name2 = "trillion years",
symbol = "Ta",
utype = "time",
scale = 31557600000000000000,
default = "Es",
link = "Annum",
},
["thousand million year"] = {
name1 = "thousand million years",
name2 = "thousand million years",
symbol = "Ga",
utype = "time",
scale = 31557600000000000,
default = "Ps",
link = "Annum",
},
["wk"] = {
symbol = "week",
usename = 1,
utype = "time",
scale = 604800,
default = "Ms",
},
["year"] = {
name1 = "year",
symbol = "a",
utype = "time",
scale = 31557600,
default = "Ms",
link = "Annum",
},
["years"] = {
name1 = "year",
symbol = "yr",
utype = "time",
scale = 31557600,
default = "Ms",
link = "Annum",
},
["byr"] = {
target = "short billion year",
},
["day"] = {
target = "d",
},
["days"] = {
target = "d",
},
["dog yr"] = {
target = "dog year",
},
["Gyr"] = {
target = "thousand million year",
},
["hour"] = {
target = "h",
},
["hours"] = {
target = "h",
},
["kMyr"] = {
target = "thousand million year",
},
["kmyr"] = {
target = "thousand million year",
},
["kyr"] = {
target = "millennium",
},
["long byr"] = {
target = "long billion year",
},
["minute"] = {
target = "min",
},
["minutes"] = {
target = "min",
},
["mth"] = {
target = "month",
},
["Myr"] = {
target = "million year",
},
["myr"] = {
target = "million year",
},
["second"] = {
target = "s",
},
["seconds"] = {
target = "s",
},
["tmyr"] = {
target = "thousand million year",
},
["tryr"] = {
target = "short trillion year",
},
["tyr"] = {
target = "millennium",
},
["week"] = {
target = "wk",
},
["weeks"] = {
target = "wk",
},
["yr"] = {
target = "year",
},
["kg.m"] = {
name1 = "kilogram metre",
name1_us = "kilogram meter",
symbol = "kg⋅m",
utype = "torque",
scale = 9.80665,
default = "Nm lbft",
link = "Kilogram metre (torque)",
},
["kgf.m"] = {
name1 = "kilogram force-metre",
name1_us = "kilogram force-meter",
symbol = "kgf⋅m",
utype = "torque",
scale = 9.80665,
default = "Nm lbfft",
link = "Kilogram metre (torque)",
},
["kgm"] = {
name1 = "kilogram metre",
name1_us = "kilogram meter",
symbol = "kg⋅m",
utype = "torque",
scale = 9.80665,
default = "Nm lbfft",
link = "Kilogram metre (torque)",
},
["lb-fft"] = {
name1 = "pound force-foot",
name2 = "pound force-feet",
symbol = "ft⋅lb<sub>f</sub>",
utype = "torque",
scale = 1.3558179483314004,
default = "Nm",
link = "Pound-foot (torque)",
},
["lb.ft"] = {
name1 = "pound force-foot",
name2 = "pound force-feet",
symbol = "lb⋅ft",
utype = "torque",
scale = 1.3558179483314004,
default = "Nm",
link = "Pound-foot (torque)",
},
["lb.in"] = {
name1 = "pound force-inch",
symbol = "lb⋅in",
utype = "torque",
scale = 0.1129848290276167,
default = "mN.m",
link = "Pound-foot (torque)",
},
["lbfft"] = {
name1 = "pound force-foot",
name2 = "pound force-feet",
symbol = "lbf⋅ft",
utype = "torque",
scale = 1.3558179483314004,
default = "Nm",
link = "Pound-foot (torque)",
},
["lbft"] = {
name1 = "pound-foot",
name2 = "pound-feet",
symbol = "lb⋅ft",
utype = "torque",
scale = 1.3558179483314004,
default = "Nm",
link = "Pound-foot (torque)",
},
["m.kg-f"] = {
name1 = "metre kilogram-force",
name1_us = "meter kilogram-force",
name2 = "metre kilograms-force",
name2_us = "meter kilograms-force",
symbol = "m⋅kg<sub>f</sub>",
utype = "torque",
scale = 9.80665,
default = "Nm lbfft",
link = "Kilogram metre (torque)",
},
["m.kgf"] = {
name1 = "metre kilogram-force",
name1_us = "meter kilogram-force",
name2 = "metre kilograms-force",
name2_us = "meter kilograms-force",
symbol = "m⋅kgf",
utype = "torque",
scale = 9.80665,
default = "Nm lbfft",
link = "Kilogram metre (torque)",
},
["mN.m"] = {
name1 = "millinewton metre",
name1_us = "millinewton meter",
symbol = "mN⋅m",
utype = "torque",
scale = 0.001,
default = "lb.in",
link = "Newton metre",
},
["Nm"] = {
_name1 = "newton metre",
_name1_us= "newton meter",
_symbol = "N⋅m",
utype = "torque",
alttype = "energy",
scale = 1,
prefixes = 1,
default = "lbfft",
link = "Newton metre",
},
["kN/m"] = {
per = { "kN", "-m-stiff" },
utype = "torque",
default = "lbf/in",
},
["lbf/in"] = {
per = { "lbf", "-in-stiff" },
utype = "torque",
default = "kN/m",
},
["lb-f.ft"] = {
target = "lb-fft",
},
["lbf.ft"] = {
target = "lbfft",
},
["lbf·ft"] = {
target = "lbfft",
},
["lb·ft"] = {
target = "lb.ft",
},
["mkg-f"] = {
target = "m.kg-f",
},
["mkgf"] = {
target = "m.kgf",
},
["N.m"] = {
target = "Nm",
},
["N·m"] = {
target = "Nm",
},
["-12USoz(mL)serve"] = {
name1_us = "12 U.S. fl oz (355 mL) serving",
symbol = "12 US fl oz (355 mL) serving",
sym_us = "12 U.S. fl oz (355 mL) serving",
utype = "volume",
scale = 0.00035488235475000004,
default = "mL",
link = "Beverage can#Standard sizes",
},
["-12USoz(ml)serve"] = {
name1_us = "12 U.S. fl oz (355 ml) serving",
symbol = "12 US fl oz (355 ml) serving",
sym_us = "12 U.S. fl oz (355 ml) serving",
utype = "volume",
scale = 0.00035488235475000004,
default = "ml",
link = "Beverage can#Standard sizes",
},
["-12USozserve"] = {
name1_us = "12 U.S. fl oz serving",
symbol = "12 US fl oz serving",
sym_us = "12 U.S. fl oz serving",
utype = "volume",
scale = 0.00035488235475000004,
default = "mL",
link = "Beverage can#Standard sizes",
},
["acre foot"] = {
name1 = "acre foot",
name2 = "acre foot",
symbol = "acre⋅ft",
utype = "volume",
scale = 1233.48183754752,
default = "m3",
},
["acre ft"] = {
name1 = "acre foot",
name2 = "acre feet",
symbol = "acre⋅ft",
utype = "volume",
scale = 1233.48183754752,
default = "m3",
},
["AUtbsp"] = {
name1 = "Australian tablespoon",
symbol = "AU tbsp",
utype = "volume",
scale = 0.000020,
default = "ml",
},
["Bcuft"] = {
name1 = "billion cubic foot",
name2 = "billion cubic feet",
symbol = "billion cu ft",
utype = "volume",
scale = 28316846.592,
default = "Gl",
link = "Cubic foot",
},
["bdft"] = {
name1 = "board foot",
name2 = "board feet",
symbol = "bd ft",
utype = "volume",
scale = 0.0023597372167,
default = "m3",
},
["board feet"] = {
name2 = "board feet",
symbol = "board foot",
usename = 1,
utype = "volume",
scale = 0.0023597372167,
default = "m3",
},
["board foot"] = {
name2 = "board foot",
symbol = "board foot",
usename = 1,
utype = "volume",
scale = 0.0023597372167,
default = "m3",
},
["cc"] = {
name1 = "cubic centimetre",
name1_us = "cubic centimeter",
symbol = "cc",
utype = "volume",
scale = 0.000001,
default = "cuin",
},
["CID"] = {
name1 = "cubic inch",
name2 = "cubic inches",
symbol = "cu in",
utype = "volume",
scale = 0.000016387064,
default = "cc",
link = "Cubic inch#Engine displacement",
},
["cord"] = {
symbol = "cord",
utype = "volume",
scale = 3.624556363776,
default = "m3",
link = "Cord (unit)",
},
["cufoot"] = {
name1 = "cubic foot",
name2 = "cubic foot",
symbol = "cu ft",
utype = "volume",
scale = 0.028316846592,
default = "m3",
},
["cuft"] = {
name1 = "cubic foot",
name2 = "cubic feet",
symbol = "cu ft",
utype = "volume",
scale = 0.028316846592,
default = "m3",
},
["cuin"] = {
name1 = "cubic inch",
name2 = "cubic inches",
symbol = "cu in",
utype = "volume",
scale = 0.000016387064,
default = "cm3",
},
["cumi"] = {
name1 = "cubic mile",
symbol = "cu mi",
utype = "volume",
scale = 4168181825.440579584,
default = "km3",
},
["cuyd"] = {
name1 = "cubic yard",
symbol = "cu yd",
utype = "volume",
scale = 0.764554857984,
default = "m3",
},
["firkin"] = {
symbol = "firkin",
usename = 1,
utype = "volume",
scale = 0.04091481,
default = "l impgal USgal",
link = "Firkin (unit)",
},
["foot3"] = {
target = "cufoot",
},
["Goilbbl"] = {
name1 = "billion barrels",
name2 = "billion barrels",
symbol = "Gbbl",
utype = "volume",
scale = 158987294.928,
default = "v * 1.58987294928 < 10 ! e6 ! e9 ! m3",
link = "Barrel (unit)#Oil barrel",
},
["gr water"] = {
name1 = "grains water",
name2 = "grains water",
symbol = "gr H<sub>2</sub>O",
utype = "volume",
scale = 0.00000006479891,
default = "cm3",
link = "Grain (unit)",
},
["grt"] = {
name1 = "gross register ton",
symbol = "grt",
utype = "volume",
scale = 2.8316846592,
default = "m3",
link = "Gross register tonnage",
},
["impbbl"] = {
name1 = "imperial barrel",
symbol = "imp bbl",
utype = "volume",
scale = 0.16365924,
default = "l impgal USgal",
link = "Barrel (unit)",
},
["impbsh"] = {
name1 = "imperial bushel",
symbol = "imp bsh",
utype = "volume",
scale = 0.03636872,
default = "l impgal USdrygal",
},
["impbu"] = {
name1 = "imperial bushel",
symbol = "imp bu",
utype = "volume",
scale = 0.03636872,
default = "m3",
},
["impgal"] = {
name1 = "imperial gallon",
symbol = "imp gal",
utype = "volume",
scale = 0.00454609,
default = "l USgal",
},
["impgi"] = {
name1 = "gill",
symbol = "gi",
utype = "volume",
scale = 0.0001420653125,
default = "ml USoz",
link = "Gill (unit)",
},
["impkenning"] = {
name1 = "imperial kenning",
symbol = "kenning",
utype = "volume",
scale = 0.01818436,
default = "l USdrygal",
link = "Kenning (unit)",
},
["impoz"] = {
name1 = "imperial fluid ounce",
symbol = "imp fl oz",
utype = "volume",
scale = 0.0000284130625,
default = "ml USoz",
},
["imppk"] = {
name1 = "imperial peck",
symbol = "pk",
utype = "volume",
scale = 0.00909218,
default = "l USdrygal",
link = "Peck",
},
["imppt"] = {
name1 = "imperial pint",
symbol = "imp pt",
utype = "volume",
scale = 0.00056826125,
default = "l",
},
["impqt"] = {
name1 = "imperial quart",
symbol = "imp qt",
utype = "volume",
scale = 0.0011365225,
default = "ml USoz",
customary= 3,
},
["kilderkin"] = {
symbol = "kilderkin",
usename = 1,
utype = "volume",
scale = 0.08182962,
default = "l impgal USgal",
},
["koilbbl"] = {
name1 = "thousand barrels",
name2 = "thousand barrels",
symbol = "kbbl",
utype = "volume",
scale = 158.987294928,
default = "v * 1.58987294928 < 10 ! ! e3 ! m3",
link = "Barrel (unit)#Oil barrel",
},
["L"] = {
_name1 = "litre",
_name1_us= "liter",
_symbol = "L",
utype = "volume",
scale = 0.001,
prefixes = 1,
default = "impgal USgal",
link = "Litre",
},
["l"] = {
_name1 = "litre",
_name1_us= "liter",
_symbol = "l",
utype = "volume",
scale = 0.001,
prefixes = 1,
default = "impgal USgal",
link = "Litre",
},
["m3"] = {
_name1 = "cubic metre",
_name1_us= "cubic meter",
_symbol = "m<sup>3</sup>",
prefix_position= 7,
utype = "volume",
scale = 1,
prefixes = 3,
default = "cuft",
link = "Cubic metre",
},
["Mbbl"] = {
name1 = "thousand barrels",
name2 = "thousand barrels",
symbol = "Mbbl",
utype = "volume",
scale = 158.987294928,
default = "v * 1.58987294928 < 10 ! e3 ! ! m3",
link = "Barrel (unit)#Oil barrel",
},
["MMoilbbl"] = {
name1 = "million barrels",
name2 = "million barrels",
symbol = "MMbbl",
utype = "volume",
scale = 158987.294928,
default = "v * 1.58987294928 < 10 ! e3 ! e6 ! m3",
link = "Barrel (unit)#Oil barrel",
},
["Moilbbl"] = {
name1 = "million barrels",
name2 = "million barrels",
symbol = "Mbbl",
utype = "volume",
scale = 158987.294928,
default = "v * 1.58987294928 < 10 ! e3 ! e6 ! m3",
link = "Barrel (unit)#Oil barrel",
},
["MTON"] = {
name1 = "measurement ton",
symbol = "MTON",
utype = "volume",
scale = 1.13267386368,
default = "m3",
},
["MUSgal"] = {
name1 = "million US gallons",
name1_us = "million U.S. gallons",
name2 = "million US gallons",
name2_us = "million U.S. gallons",
symbol = "million US gal",
sym_us = "million U.S. gal",
utype = "volume",
scale = 3785.411784,
default = "Ml",
link = "US gallon",
},
["oilbbl"] = {
name1 = "barrel",
symbol = "bbl",
utype = "volume",
scale = 0.158987294928,
default = "m3",
link = "Barrel (unit)#Oil barrel",
},
["stere"] = {
symbol = "stere",
usename = 1,
utype = "volume",
scale = 1,
default = "cuft",
},
["Toilbbl"] = {
name1 = "trillion barrels",
name2 = "trillion barrels",
symbol = "Tbbl",
utype = "volume",
scale = 158987294928,
default = "v * 1.58987294928 < 10 ! e9 ! e12 ! m3",
link = "Barrel (unit)#Oil barrel",
},
["USbbl"] = {
name1 = "US barrel",
name1_us = "U.S. barrel",
symbol = "US bbl",
sym_us = "U.S. bbl",
utype = "volume",
scale = 0.119240471196,
default = "l USgal impgal",
link = "Barrel (unit)",
},
["USbeerbbl"] = {
name1 = "US beer barrel",
name1_us = "U.S. beer barrel",
symbol = "US bbl",
sym_us = "U.S. bbl",
utype = "volume",
scale = 0.117347765304,
default = "l USgal impgal",
link = "Barrel (unit)",
},
["USbsh"] = {
name1 = "US bushel",
name1_us = "U.S. bushel",
symbol = "US bsh",
sym_us = "U.S. bsh",
utype = "volume",
scale = 0.03523907016688,
default = "l USdrygal impgal",
link = "Bushel",
},
["USbu"] = {
name1 = "US bushel",
name1_us = "U.S. bushel",
symbol = "US bu",
sym_us = "U.S. bu",
utype = "volume",
scale = 0.03523907016688,
default = "l USdrygal impgal",
link = "Bushel",
},
["USdrybbl"] = {
name1 = "US dry barrel",
name1_us = "U.S. dry barrel",
symbol = "US dry bbl",
sym_us = "U.S. dry bbl",
utype = "volume",
scale = 0.11562819898508,
default = "m3",
link = "Barrel (unit)",
},
["USdrygal"] = {
name1 = "US dry gallon",
name1_us = "U.S. dry gallon",
symbol = "US dry gal",
sym_us = "U.S. dry gal",
utype = "volume",
scale = 0.00440488377086,
default = "l",
link = "Gallon",
},
["USdrypt"] = {
name1 = "US dry pint",
name1_us = "U.S. dry pint",
symbol = "US dry pt",
sym_us = "U.S. dry pt",
utype = "volume",
scale = 0.0005506104713575,
default = "ml",
link = "Pint",
},
["USdryqt"] = {
name1 = "US dry quart",
name1_us = "U.S. dry quart",
symbol = "US dry qt",
sym_us = "U.S. dry qt",
utype = "volume",
scale = 0.001101220942715,
default = "ml",
link = "Quart",
},
["USflgal"] = {
name1 = "US gallon",
name1_us = "U.S. gallon",
symbol = "US fl gal",
sym_us = "U.S. fl gal",
utype = "volume",
scale = 0.003785411784,
default = "l impgal",
link = "Gallon",
},
["USgal"] = {
name1 = "US gallon",
name1_us = "U.S. gallon",
symbol = "US gal",
sym_us = "U.S. gal",
utype = "volume",
scale = 0.003785411784,
default = "l impgal",
},
["USgi"] = {
name1 = "gill",
symbol = "gi",
utype = "volume",
scale = 0.0001182941183,
default = "ml impoz",
link = "Gill (unit)",
},
["USkenning"] = {
name1 = "US kenning",
name1_us = "U.S. kenning",
symbol = "US kenning",
sym_us = "U.S. kenning",
utype = "volume",
scale = 0.01761953508344,
default = "l impgal",
link = "Kenning (unit)",
},
["USmin"] = {
name1 = "US minim",
name1_us = "U.S. minim",
symbol = "US min",
sym_us = "U.S. min",
utype = "volume",
scale = 0.000000061611519921875,
default = "ml",
link = "Minim (unit)",
},
["USoz"] = {
name1 = "US fluid ounce",
name1_us = "U.S. fluid ounce",
symbol = "US fl oz",
sym_us = "U.S. fl oz",
utype = "volume",
scale = 0.0000295735295625,
default = "ml",
},
["USpk"] = {
name1 = "US peck",
name1_us = "U.S. peck",
symbol = "US pk",
sym_us = "U.S. pk",
utype = "volume",
scale = 0.00880976754172,
default = "l impgal",
link = "Peck",
},
["USpt"] = {
name1 = "US pint",
name1_us = "U.S. pint",
symbol = "US pt",
sym_us = "U.S. pt",
utype = "volume",
scale = 0.000473176473,
default = "l imppt",
link = "Pint",
},
["USqt"] = {
name1 = "US quart",
name1_us = "U.S. quart",
symbol = "US qt",
sym_us = "U.S. qt",
utype = "volume",
scale = 0.000946352946,
default = "ml",
link = "Quart",
customary= 1,
},
["USquart"] = {
name1 = "US quart",
name1_us = "U.S. quart",
symbol = "US qt",
sym_us = "U.S. qt",
utype = "volume",
scale = 0.000946352946,
default = "ml impoz",
link = "Quart",
},
["UStbsp"] = {
name1 = "US tablespoon",
name1_us = "U.S. tablespoon",
symbol = "US tbsp",
sym_us = "U.S. tbsp",
utype = "volume",
scale = 1.4786764781250001e-5,
default = "ml",
},
["winecase"] = {
symbol = "case",
usename = 1,
utype = "volume",
scale = 0.009,
default = "l",
link = "Case (goods)",
},
["*U.S.drygal"] = {
target = "USdrygal",
sp_us = true,
customary= 2,
},
["*U.S.gal"] = {
target = "USgal",
sp_us = true,
default = "L impgal",
customary= 2,
},
["+USdrygal"] = {
target = "USdrygal",
customary= 1,
},
["+usfloz"] = {
target = "USoz",
link = "Fluid ounce",
customary= 1,
},
["+USgal"] = {
target = "USgal",
customary= 1,
},
["+USoz"] = {
target = "USoz",
customary= 1,
},
["@impgal"] = {
target = "impgal",
link = "Gallon",
customary= 3,
},
["acre feet"] = {
target = "acre ft",
},
["acre-feet"] = {
target = "acre ft",
},
["acre-ft"] = {
target = "acre ft",
},
["acre.foot"] = {
target = "acre foot",
},
["acre.ft"] = {
target = "acre ft",
},
["acre·ft"] = {
target = "acre ft",
},
["bushels"] = {
target = "USbsh",
},
["cid"] = {
target = "CID",
},
["ft3"] = {
target = "cuft",
},
["gal"] = {
target = "USgal",
},
["gallon"] = {
shouldbe = "Use %{USgal%} for US gallons or %{impgal%} for imperial gallons (not %{gallon%})",
},
["gallons"] = {
shouldbe = "Use %{USgal%} for US gallons or %{impgal%} for imperial gallons (not %{gallons%})",
},
["Gcuft"] = {
target = "e9cuft",
},
["impfloz"] = {
target = "impoz",
},
["Impgal"] = {
target = "impgal",
},
["in3"] = {
target = "cuin",
symbol = "in<sup>3</sup>",
},
["kcuft"] = {
target = "e3cuft",
},
["kcum"] = {
target = "e3m3",
},
["km³"] = {
target = "km3",
},
["liter"] = {
target = "L",
sp_us = true,
},
["liters"] = {
target = "L",
sp_us = true,
},
["litre"] = {
target = "L",
},
["litres"] = {
target = "L",
},
["Mcuft"] = {
target = "e6cuft",
},
["Mcum"] = {
target = "e6m3",
},
["Mft3"] = {
target = "e6cuft",
},
["mi3"] = {
target = "cumi",
},
["m³"] = {
target = "m3",
},
["Pcuft"] = {
target = "e15cuft",
},
["pt"] = {
shouldbe = "Use %{USpt%} for US pints or %{imppt%} for imperial pints (not %{pt%})",
},
["qt"] = {
shouldbe = "Use %{USqt%} for US quarts or %{impqt%} for imperial quarts (not %{qt%})",
},
["Tcuft"] = {
target = "e12cuft",
},
["Tft3"] = {
target = "e12cuft",
},
["U.S.bbl"] = {
target = "USbbl",
sp_us = true,
default = "l U.S.gal impgal",
},
["U.S.beerbbl"] = {
target = "USbeerbbl",
sp_us = true,
default = "l U.S.gal impgal",
},
["U.S.bsh"] = {
target = "USbsh",
sp_us = true,
default = "l U.S.drygal impgal",
},
["U.S.bu"] = {
target = "USbu",
sp_us = true,
default = "l U.S.drygal impgal",
},
["U.S.drybbl"] = {
target = "USdrybbl",
sp_us = true,
},
["U.S.drygal"] = {
target = "USdrygal",
sp_us = true,
},
["U.S.drypt"] = {
target = "USdrypt",
sp_us = true,
},
["U.S.dryqt"] = {
target = "USdryqt",
sp_us = true,
},
["U.S.flgal"] = {
target = "USflgal",
sp_us = true,
},
["U.S.floz"] = {
target = "USoz",
sp_us = true,
},
["U.S.gal"] = {
target = "USgal",
sp_us = true,
default = "L impgal",
link = "U.S. gallon",
},
["u.s.gal"] = {
target = "USgal",
sp_us = true,
default = "L impgal",
link = "U.S. gallon",
},
["U.S.gi"] = {
target = "USgi",
sp_us = true,
},
["U.S.kenning"] = {
target = "USkenning",
sp_us = true,
},
["U.S.oz"] = {
target = "USoz",
sp_us = true,
},
["U.S.pk"] = {
target = "USpk",
sp_us = true,
},
["U.S.pt"] = {
target = "USpt",
sp_us = true,
},
["U.S.qt"] = {
target = "USqt",
sp_us = true,
default = "L impqt",
customary= 2,
},
["usbbl"] = {
target = "USbbl",
},
["usbeerbbl"] = {
target = "USbeerbbl",
},
["usbsh"] = {
target = "USbsh",
},
["usbu"] = {
target = "USbu",
},
["usdrybbl"] = {
target = "USdrybbl",
},
["usdrygal"] = {
target = "USdrygal",
},
["usdrypt"] = {
target = "USdrypt",
},
["usdryqt"] = {
target = "USdryqt",
},
["USfloz"] = {
target = "USoz",
},
["usfloz"] = {
target = "USoz",
},
["USGAL"] = {
target = "USgal",
},
["usgal"] = {
target = "USgal",
},
["usgi"] = {
target = "USgi",
},
["uskenning"] = {
target = "USkenning",
},
["usoz"] = {
target = "USoz",
},
["uspk"] = {
target = "USpk",
},
["uspt"] = {
target = "USpt",
},
["usqt"] = {
target = "USqt",
},
["yd3"] = {
target = "cuyd",
},
["cuft/sqmi"] = {
per = { "cuft", "sqmi" },
utype = "volume per unit area",
default = "m3/km2",
},
["m3/ha"] = {
name1 = "cubic metre per hectare",
name1_us = "cubic meter per hectare",
name2 = "cubic metres per hectare",
name2_us = "cubic meters per hectare",
symbol = "m<sup>3</sup>/ha",
utype = "volume per unit area",
scale = 0.0001,
default = "USbu/acre",
link = "Hectare",
},
["m3/km2"] = {
per = { "m3", "km2" },
utype = "volume per unit area",
default = "cuft/sqmi",
},
["U.S.gal/acre"] = {
per = { "U.S.gal", "acre" },
utype = "volume per unit area",
default = "m3/km2",
},
["USbu/acre"] = {
name2 = "US bushels per acre",
symbol = "US bushel per acre",
usename = 1,
utype = "volume per unit area",
scale = 8.7077638761350888e-6,
default = "m3/ha",
link = "Bushel",
},
["USgal/acre"] = {
per = { "USgal", "acre" },
utype = "volume per unit area",
default = "m3/km2",
},
["cuyd/mi"] = {
per = { "cuyd", "mi" },
utype = "volume per unit length",
default = "m3/km",
},
["m3/km"] = {
per = { "m3", "km" },
utype = "volume per unit length",
default = "cuyd/mi",
},
["mich"] = {
combination= { "ch", "mi" },
multiple = { 80 },
utype = "length",
},
["michlk"] = {
combination= { "chlk", "mi" },
multiple = { 80 },
utype = "length",
},
["michainlk"] = {
combination= { "chainlk", "mi" },
multiple = { 80 },
utype = "length",
},
["miydftin"] = {
combination= { "in", "ft", "yd", "mi" },
multiple = { 12, 3, 1760 },
utype = "length",
},
["mift"] = {
combination= { "ft", "mi" },
multiple = { 5280 },
utype = "length",
},
["ydftin"] = {
combination= { "in", "ft", "yd" },
multiple = { 12, 3 },
utype = "length",
},
["ydft"] = {
combination= { "ft", "yd" },
multiple = { 3 },
utype = "length",
},
["ftin"] = {
combination= { "in", "ft" },
multiple = { 12 },
utype = "length",
},
["footin"] = {
combination= { "in", "foot" },
multiple = { 12 },
utype = "length",
},
["handin"] = {
combination= { "in", "hand" },
multiple = { 4 },
utype = "length",
},
["lboz"] = {
combination= { "oz", "lb" },
multiple = { 16 },
utype = "mass",
},
["stlb"] = {
combination= { "lb", "st" },
multiple = { 14 },
utype = "mass",
},
["stlboz"] = {
combination= { "oz", "lb", "st" },
multiple = { 16, 14 },
utype = "mass",
},
["st and lb"] = {
combination= { "lb", "st" },
multiple = { 14 },
utype = "mass",
},
["GN LTf"] = {
combination= { "GN", "-LTf" },
utype = "force",
},
["GN LTf STf"] = {
combination= { "GN", "-LTf", "-STf" },
utype = "force",
},
["GN STf"] = {
combination= { "GN", "-STf" },
utype = "force",
},
["GN STf LTf"] = {
combination= { "GN", "-STf", "-LTf" },
utype = "force",
},
["kN LTf"] = {
combination= { "kN", "-LTf" },
utype = "force",
},
["kN LTf STf"] = {
combination= { "kN", "-LTf", "-STf" },
utype = "force",
},
["kN STf"] = {
combination= { "kN", "-STf" },
utype = "force",
},
["kN STf LTf"] = {
combination= { "kN", "-STf", "-LTf" },
utype = "force",
},
["LTf STf"] = {
combination= { "-LTf", "-STf" },
utype = "force",
},
["MN LTf"] = {
combination= { "MN", "-LTf" },
utype = "force",
},
["MN LTf STf"] = {
combination= { "MN", "-LTf", "-STf" },
utype = "force",
},
["MN STf"] = {
combination= { "MN", "-STf" },
utype = "force",
},
["MN STf LTf"] = {
combination= { "MN", "-STf", "-LTf" },
utype = "force",
},
["STf LTf"] = {
combination= { "-STf", "-LTf" },
utype = "force",
},
["L/100 km mpgimp"] = {
combination= { "L/100 km", "mpgimp" },
utype = "fuel efficiency",
},
["l/100 km mpgimp"] = {
combination= { "l/100 km", "mpgimp" },
utype = "fuel efficiency",
},
["L/100 km mpgUS"] = {
combination= { "L/100 km", "mpgus" },
utype = "fuel efficiency",
},
["L/100 km mpgus"] = {
combination= { "L/100 km", "mpgus" },
utype = "fuel efficiency",
},
["l/100 km mpgus"] = {
combination= { "l/100 km", "mpgus" },
utype = "fuel efficiency",
},
["mpgimp L/100 km"] = {
combination= { "mpgimp", "L/100 km" },
utype = "fuel efficiency",
},
["LT ST t"] = {
combination= { "lt", "-ST", "t" },
utype = "mass",
},
["LT t ST"] = {
combination= { "lt", "t", "-ST" },
utype = "mass",
},
["ST LT t"] = {
combination= { "-ST", "lt", "t" },
utype = "mass",
},
["ST t LT"] = {
combination= { "-ST", "t", "lt" },
utype = "mass",
},
["t LT ST"] = {
combination= { "t", "lt", "-ST" },
utype = "mass",
},
["ton"] = {
combination= { "LT", "ST" },
utype = "mass",
},
["kPa kg/cm2"] = {
combination= { "kPa", "kgf/cm2" },
utype = "pressure",
},
["kPa lb/in2"] = {
combination= { "kPa", "-lb/in2" },
utype = "pressure",
},
["floz"] = {
combination= { "impoz", "USoz" },
utype = "volume",
},
}
---------------------------------------------------------------------------
-- Do not change the data in this table because it is created by running --
-- a script that reads the wikitext from a wiki page (see note above). --
---------------------------------------------------------------------------
local default_exceptions = {
-- Prefixed units with a default different from that of the base unit.
-- Each key item is a prefixed symbol (unitcode for engineering notation).
["cm<sup>2</sup>"] = "sqin",
["dm<sup>2</sup>"] = "sqin",
["e3acre"] = "km2",
["e3m2"] = "e6sqft",
["e6acre"] = "km2",
["e6ha"] = "e6acre",
["e6km2"] = "e6sqmi",
["e6m2"] = "e6sqft",
["e6sqft"] = "v * 9.290304 < 100 ! e3 ! e6 ! m2",
["e6sqmi"] = "e6km2",
["hm<sup>2</sup>"] = "acre",
["km<sup>2</sup>"] = "sqmi",
["mm<sup>2</sup>"] = "sqin",
["aJ"] = "eV",
["e3BTU"] = "MJ",
["e6BTU"] = "GJ",
["EJ"] = "kWh",
["fJ"] = "keV",
["GJ"] = "kWh",
["MJ"] = "kWh",
["PJ"] = "kWh",
["pJ"] = "MeV",
["TJ"] = "kWh",
["YJ"] = "kWh",
["yJ"] = "μeV",
["ZJ"] = "kWh",
["zJ"] = "meV",
["e12cuft/a"] = "v * 2.8316846592 < 100 ! e9 ! e12 ! m3/a",
["e12cuft/d"] = "v * 2.8316846592 < 100 ! e9 ! e12 ! m3/d",
["e12m3/a"] = "Tcuft/a",
["e12m3/d"] = "Tcuft/d",
["e3cuft/a"] = "v * 2.8316846592 < 100 ! ! e3 ! m3/a",
["e3cuft/d"] = "v * 2.8316846592 < 100 ! ! e3 ! m3/d",
["e3cuft/s"] = "v * 2.8316846592 < 100 ! ! e3 ! m3/s",
["e3m3/a"] = "v < 28.316846592 ! k ! M ! cuft/a",
["e3m3/d"] = "v < 28.316846592 ! k ! M ! cuft/d",
["e3m3/s"] = "v < 28.316846592 ! k ! M ! cuft/s",
["e3USgal/a"] = "v * 3.785411784 < 1000 ! ! e3 ! m3/a",
["e6cuft/a"] = "v * 2.8316846592 < 100 ! e3 ! e6 ! m3/a",
["e6cuft/d"] = "v * 2.8316846592 < 100 ! e3 ! e6 ! m3/d",
["e6cuft/s"] = "v * 2.8316846592 < 100 ! e3 ! e6 ! m3/s",
["e6m3/a"] = "v < 28.316846592 ! M ! G ! cuft/a",
["e6m3/d"] = "v < 28.316846592 ! M ! G ! cuft/d",
["e6m3/s"] = "v < 28.316846592 ! e6 ! e9 ! cuft/s",
["e6USgal/a"] = "v * 3.785411784 < 1000 ! e3 ! e6 ! m3/a",
["e9cuft/a"] = "m3/a",
["e9cuft/d"] = "v * 2.8316846592 < 100 ! e6 ! e9 ! m3/d",
["e9m3/a"] = "v < 28.316846592 ! G ! T ! cuft/a",
["e9m3/d"] = "v < 28.316846592 ! G ! T ! cuft/d",
["e9m3/s"] = "v < 28.316846592 ! e9 ! e12 ! cuft/s",
["e9USgal/a"] = "v * 3.785411784 < 1000 ! e6 ! e9 ! m3/a",
["e9USgal/s"] = "v * 3.785411784 < 1000 ! e6 ! e9 ! m3/s",
["nN"] = "gr-f",
["μN"] = "gr-f",
["mN"] = "oz-f",
["am"] = "in",
["cm"] = "in",
["dam"] = "ft",
["dm"] = "in",
["e12km"] = "e12mi",
["e12mi"] = "e12km",
["e3AU"] = "ly",
["e3km"] = "e3mi",
["e3mi"] = "e3km",
["e6km"] = "e6mi",
["e6mi"] = "e6km",
["e9km"] = "AU",
["e9mi"] = "e9km",
["Em"] = "mi",
["fm"] = "in",
["Gm"] = "mi",
["hm"] = "ft",
["km"] = "mi",
["mm"] = "in",
["Mm"] = "mi",
["nm"] = "in",
["Pm"] = "mi",
["pm"] = "in",
["Tm"] = "mi",
["Ym"] = "mi",
["ym"] = "in",
["Zm"] = "mi",
["zm"] = "in",
["μm"] = "in",
["e12lb"] = "v * 4.5359237 < 10 ! Mt ! Gt",
["e3lb"] = "v * 4.5359237 < 10 ! kg ! t",
["e3ozt"] = "v * 0.311034768 < 10 ! kg ! t",
["e3t"] = "LT ST",
["e6carat"] = "t",
["e6lb"] = "v * 4.5359237 < 10 ! t ! kilotonne",
["e6ozt"] = "lb kg",
["e6ST"] = "Mt",
["e6t"] = "LT ST",
["e9lb"] = "v * 4.5359237 < 10 ! kilotonne ! Mt",
["e9t"] = "LT ST",
["Gg"] = "lb",
["kg"] = "lb",
["mg"] = "gr",
["Mg"] = "LT ST",
["ng"] = "gr",
["μg"] = "gr",
["mBq"] = "fCi",
["kBq"] = "nCi",
["MBq"] = "μCi",
["GBq"] = "mCi",
["TBq"] = "Ci",
["PBq"] = "kCi",
["EBq"] = "kCi",
["fCi"] = "mBq",
["pCi"] = "Bq",
["nCi"] = "Bq",
["μCi"] = "kBq",
["mCi"] = "MBq",
["kCi"] = "TBq",
["MCi"] = "PBq",
["ns"] = "μs",
["μs"] = "ms",
["ms"] = "s",
["ks"] = "h",
["Ms"] = "week",
["Gs"] = "decade",
["Ts"] = "millennium",
["Ps"] = "million year",
["Es"] = "thousand million year",
["MK"] = "keVT",
["cL"] = "impoz usoz",
["cl"] = "impoz usoz",
["cm<sup>3</sup>"] = "cuin",
["dL"] = "impoz usoz",
["dl"] = "impoz usoz",
["mm<sup>3</sup>"] = "cuin",
["dm<sup>3</sup>"] = "cuin",
["e12cuft"] = "v * 2.8316846592 < 100 ! e9 ! e12 ! m3",
["e12impgal"] = "v * 4.54609 < 1000 ! T ! P ! l",
["e12m3"] = "v < 28.316846592 ! T ! P ! cuft",
["e12U.S.gal"] = "v * 3.785411784 < 1000 ! T ! P ! l",
["e12USgal"] = "v * 3.785411784 < 1000 ! T ! P ! l",
["e15cuft"] = "v * 2.8316846592 < 100 ! e12 ! e15 ! m3",
["e15m3"] = "Pcuft",
["e3bdft"] = "v * 0.23597372167 < 100 ! e3 ! e6 ! m3",
["e3cuft"] = "v * 2.8316846592 < 100 ! ! e3 ! m3",
["e3impgal"] = "v * 4.54609 < 1000 ! k ! M ! l",
["e3m3"] = "v < 28.316846592 ! k ! M ! cuft",
["e3U.S.gal"] = "v * 3.785411784 < 1000 ! k ! M ! l",
["e3USgal"] = "v * 3.785411784 < 1000 ! k ! M ! l",
["e6bdft"] = "v * 0.23597372167 < 100 ! e3 ! e6 ! m3",
["e6cuft"] = "v * 2.8316846592 < 100 ! e3 ! e6 ! m3",
["e6cuyd"] = "v * 7.64554857984 < 10 ! e3 ! e6 ! m3",
["e6impgal"] = "v * 4.54609 < 1000 ! M ! G ! l",
["e6L"] = "USgal",
["e6m3"] = "v < 28.316846592 ! M ! G ! cuft",
["e6U.S.gal"] = "v * 3.785411784 < 1000 ! M ! G ! l",
["e6USgal"] = "v * 3.785411784 < 1000 ! M ! G ! l",
["e9bdft"] = "v * 0.23597372167 < 100 ! e6 ! e9 ! m3",
["e9cuft"] = "v * 2.8316846592 < 100 ! e6 ! e9 ! m3",
["e9impgal"] = "v * 4.54609 < 1000 ! G ! T ! l",
["e9m3"] = "v < 28.316846592 ! G ! T ! cuft",
["e9U.S.gal"] = "v * 3.785411784 < 1000 ! G ! T ! l",
["e9USgal"] = "v * 3.785411784 < 1000 ! G ! T ! l",
["GL"] = "cuft",
["Gl"] = "cuft",
["kL"] = "cuft",
["kl"] = "cuft",
["km<sup>3</sup>"] = "cumi",
["mL"] = "impoz usoz",
["ml"] = "impoz usoz",
["Ml"] = "v < 28.316846592 ! e3 ! e6 ! cuft",
["ML"] = "v < 28.316846592 ! e3 ! e6 ! cuft",
["TL"] = "cumi",
["Tl"] = "cumi",
["μL"] = "cuin",
["μl"] = "cuin",
}
---------------------------------------------------------------------------
-- Do not change the data in this table because it is created by running --
-- a script that reads the wikitext from a wiki page (see note above). --
---------------------------------------------------------------------------
local link_exceptions = {
-- Prefixed units with a linked article different from that of the base unit.
-- Each key item is a prefixed symbol (not unitcode).
["mm<sup>2</sup>"] = "Square millimetre",
["cm<sup>2</sup>"] = "Square centimetre",
["dm<sup>2</sup>"] = "Square decimetre",
["km<sup>2</sup>"] = "Square kilometre",
["kJ"] = "Kilojoule",
["MJ"] = "Megajoule",
["fm"] = "Femtometre",
["pm"] = "Picometre",
["nm"] = "Nanometre",
["μm"] = "Micrometre",
["mm"] = "Millimetre",
["cm"] = "Centimetre",
["dm"] = "Decimetre",
["dam"] = "Decametre",
["hm"] = "Hectometre",
["km"] = "Kilometre",
["Mm"] = "Megametre",
["Gm"] = "Gigametre",
["Tm"] = "Terametre",
["Pm"] = "Petametre",
["Em"] = "Exametre",
["Zm"] = "Zettametre",
["Ym"] = "Yottametre",
["μg"] = "Microgram",
["mg"] = "Milligram",
["kg"] = "Kilogram",
["Mg"] = "Tonne",
["yW"] = "Yoctowatt",
["zW"] = "Zeptowatt",
["aW"] = "Attowatt",
["fW"] = "Femtowatt",
["pW"] = "Picowatt",
["nW"] = "Nanowatt",
["μW"] = "Microwatt",
["mW"] = "Milliwatt",
["kW"] = "Kilowatt",
["MW"] = "Megawatt",
["GW"] = "Gigawatt",
["TW"] = "Terawatt",
["PW"] = "Petawatt",
["EW"] = "Exawatt",
["ZW"] = "Zettawatt",
["YW"] = "Yottawatt",
["as"] = "Attosecond",
["fs"] = "Femtosecond",
["ps"] = "Picosecond",
["ns"] = "Nanosecond",
["μs"] = "Microsecond",
["ms"] = "Millisecond",
["ks"] = "Kilosecond",
["Ms"] = "Megasecond",
["Gs"] = "Gigasecond",
["Ts"] = "Terasecond",
["Ps"] = "Petasecond",
["Es"] = "Exasecond",
["Zs"] = "Zettasecond",
["Ys"] = "Yottasecond",
["mm<sup>3</sup>"] = "Cubic millimetre",
["cm<sup>3</sup>"] = "Cubic centimetre",
["dm<sup>3</sup>"] = "Cubic decimetre",
["dam<sup>3</sup>"] = "Cubic decametre",
["km<sup>3</sup>"] = "Cubic kilometre",
["μL"] = "Microlitre",
["μl"] = "Microlitre",
["mL"] = "Millilitre",
["ml"] = "Millilitre",
["cL"] = "Centilitre",
["cl"] = "Centilitre",
["dL"] = "Decilitre",
["dl"] = "Decilitre",
["daL"] = "Decalitre",
["dal"] = "Decalitre",
["hL"] = "Hectolitre",
["hl"] = "Hectolitre",
["kL"] = "Kilolitre",
["kl"] = "Kilolitre",
["ML"] = "Megalitre",
["Ml"] = "Megalitre",
["GL"] = "Gigalitre",
["Gl"] = "Gigalitre",
["TL"] = "Teralitre",
["Tl"] = "Teralitre",
["PL"] = "Petalitre",
["Pl"] = "Petalitre",
}
---------------------------------------------------------------------------
-- Do not change the data in this table because it is created by running --
-- a script that reads the wikitext from a wiki page (see note above). --
---------------------------------------------------------------------------
local per_unit_fixups = {
-- Automatically created per units of form "x/y" may have their unit type
-- changed, for example, "length/time" is changed to "speed".
-- Other adjustments can also be specified.
["/area"] = "per unit area",
["/volume"] = "per unit volume",
["area/area"] = "area per unit area",
["energy/length"] = "energy per unit length",
["energy/mass"] = "energy per unit mass",
["energy/time"] = { utype = "power", link = "Power (physics)" },
["energy/volume"] = "energy per unit volume",
["force/area"] = { utype = "pressure", link = "Pressure" },
["length/length"] = { utype = "gradient", link = "Grade (slope)" },
["length/time"] = { utype = "speed", link = "Speed" },
["length/time/time"] = { utype = "acceleration", link = "Acceleration" },
["mass/area"] = { utype = "pressure", multiplier = 9.80665 },
["mass/length"] = "linear density",
["mass/mass"] = "concentration",
["mass/power"] = "mass per unit power",
["mass/time"] = "mass per unit time",
["mass/volume"] = { utype = "density", link = "Density" },
["power/mass"] = "power per unit mass",
["power/volume"] = { link = "Power density" },
["pressure/length"] = "fracture gradient",
["speed/time"] = { utype = "acceleration", link = "Acceleration" },
["volume/area"] = "volume per unit area",
["volume/length"] = "volume per unit length",
["volume/time"] = "flow",
}
return {
all_units = all_units,
default_exceptions = default_exceptions,
link_exceptions = link_exceptions,
per_unit_fixups = per_unit_fixups,
}
6wzcf8j5sxao123sxexk5xtzh9rc3oo
Module:ConvertDigits
828
3493
36713
2025-12-15T22:49:55Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Convert numerical digits to braille, morse, sign lang, and any other stuff that is based on simple substitution, nice and clean with no extra fluff. Does not handle negative numbers (treated as positive) or decimals and fractions. -- Gts@el wiki, Aug. 2017 local p = {} -- Greek braille symbols local braille = { [1] = '⠁', [2] = '⠃', [3] = '⠉', [4] = '⠙', [5] = '⠑', [6] = '⠓', [7] = '⠛', [8] = '⠓', [9] = '⠊',...'
36713
Scribunto
text/plain
-- Convert numerical digits to braille, morse, sign lang, and any other stuff that is based on simple substitution, nice and clean with no extra fluff. Does not handle negative numbers (treated as positive) or decimals and fractions.
-- Gts@el wiki, Aug. 2017
local p = {}
-- Greek braille symbols
local braille = {
[1] = '⠁',
[2] = '⠃',
[3] = '⠉',
[4] = '⠙',
[5] = '⠑',
[6] = '⠓',
[7] = '⠛',
[8] = '⠓',
[9] = '⠊',
[0] = '⠚',
}
-- international morse
local morse = {
[1] = '·−−−−',
[2] = '··−−−',
[3] = '···−−',
[4] = '····−',
[5] = '·····',
[6] = '−····',
[7] = '−−···',
[8] = '−−−··',
[9] = '−−−−·',
[0] = '−−−−−',
}
local function substitute_numeral(numeral, table, spacing)
local result = ''
if type(tonumber(numeral)) == 'number' and tonumber(numeral) <= 99999999999999 then
local numeral = tostring(math.abs(math.floor(numeral)))
for digit in numeral:gmatch"." do
-- convention based on images for sign language
if table == 'sign' then
result = result .. '[[Αρχείο:Greek sign language No' .. digit .. '.jpg|40px]]'
else
result = result .. spacing .. table[tonumber(digit)]
end
end
end
return result
end
function p.to_braille(frame)
local prefix = '⠼'
result = substitute_numeral(frame.args[1], braille, '')
if result ~= '' then result = prefix .. result end
return result
end
function p.to_morse(frame)
result = substitute_numeral(frame.args[1], morse, ' ')
return result
end
function p.to_sign(frame)
return substitute_numeral(frame.args[1], 'sign', '')
end
return p
-- =p.to_sign{args={3454}}
791uvlu6svfd86ja83jfkebmlz4xkre
Module:ConvertBase
828
3494
36714
2025-12-15T22:50:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- alternative to BaseConvert module. Can convert from any base between 1-36 to decimal, and from decimal to any base between 1-64. Does not support fractions, or negative numbers (abs'd to positive). -- Gts@el wiki, Sep. 2017 local p = {} local function tableMerge(t1, t2) for k,v in ipairs(t2) do table.insert(t1, v) end return t1 end local function convertbase(n, fromBase, toBase) -- usual case scenarios if n >...'
36714
Scribunto
text/plain
-- alternative to BaseConvert module. Can convert from any base between 1-36 to decimal, and from decimal to any base between 1-64. Does not support fractions, or negative numbers (abs'd to positive).
-- Gts@el wiki, Sep. 2017
local p = {}
local function tableMerge(t1, t2)
for k,v in ipairs(t2) do
table.insert(t1, v)
end
return t1
end
local function convertbase(n, fromBase, toBase)
-- usual case scenarios
if n >= 0 and n <=9 and
fromBase == 10 and
toBase > 9 and
(toBase ~= 32 or toBase ~= 64) -- 32 and 64 base start with numerals instead of letters
then return n
elseif fromBase < 37 and
toBase == 10
then return tonumber(n, fromBase) -- simply using internal Lua functionality (up to 36)
end
local digitPositions = {}
while n > 0 do
if toBase == 1 then
table.insert(digitPositions, 1)
n = n - 1
else
table.insert(digitPositions, tonumber(n % toBase)) -- digit's position in the toBase numbering system
n = math.floor(n / toBase)
end
end
local digitValues = {}
local numerals = {}
for i = 0, 9 do table.insert(numerals, i) end
local letters = {}
for ascii = 65, 90 do table.insert(letters, string.char(ascii)) end -- uppercase letters
for ascii = 97, 122 do table.insert(letters, string.char(ascii)) end -- lowercase letters
local symbols = {}
table.insert(symbols, '+') -- 63rd digit
table.insert(symbols, '-') -- 64th digit
if toBase == 32 or toBase == 64 then
tableMerge(digitValues, letters)
tableMerge(digitValues, numerals)
else
tableMerge(digitValues, numerals)
tableMerge(digitValues, letters)
end
tableMerge(digitValues, symbols)
local result = ''
for digit, value in pairs(digitPositions) do
result = tostring(digitValues[value+1]) .. result
end
return result
end
function p.convert(frame)
local args = frame.args
local number = args.number ~= nil and tonumber(args.number) or 0
local fromBase = args.fromBase ~= nil and tonumber(args.fromBase) or 10
local toBase = args.toBase ~= nil and tonumber(args.toBase) or 10
local showRadix = args.showRadix ~= nil and tonumber(args.showRadix) or 0
if number == 0 then
return '0<sub>' .. tostring(toBase)
end
if fromBase > 36 or toBase > 64 then
result = 'Σφάλμα: οι αποδεκτές τιμές για βάση είναι 1 έως 64, και την βάση εκκίνησης από 1 έως 36'
else
number = math.abs(math.floor(number))
fromBase = math.abs(math.floor(fromBase))
toBase = math.abs(math.floor(toBase))
result = convertbase(number, fromBase, toBase)
if showRadix == 1 then
result = tostring(result) .. '<sub>' .. tostring(toBase) .. '</sub>'
end
end
return result
end
return p
o8brjy5la76i486o95qr6jbx8nnrnfi
Module:LinksCounter
828
3495
36715
2025-12-15T22:53:11Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Counts wiki links within a wiki article. Supports returning total number of links, blue, red, or a list of red, blue, total, along with blue to red percentage -- Gts-tg@el wiki, Sep. 2017 local p = {} -- turn line to list -- params: line (string), delimiter (string) -- return list local function explode(line, delimiter, specialCharacters) local links = {} local chars = { [":"]=true, ["."]=true, ["«"]=true, ["{"]=true, ["<"]=true,...'
36715
Scribunto
text/plain
-- Counts wiki links within a wiki article. Supports returning total number of links, blue, red, or a list of red, blue, total, along with blue to red percentage
-- Gts-tg@el wiki, Sep. 2017
local p = {}
-- turn line to list
-- params: line (string), delimiter (string)
-- return list
local function explode(line, delimiter, specialCharacters)
local links = {}
local chars = {
[":"]=true,
["."]=true,
["«"]=true,
["{"]=true,
["<"]=true,
["#"]=true
}
local ignore = false
local regex = '[^' .. delimiter .. ']+'
for link in string.gmatch(line, regex) do -- get all content within [ ]
for schar,value in pairs(chars) do -- clean up non links
if (schar == specialCharacters) == false and -- need to regex for multiple characters
string.match(link, "%" .. schar) ~= nil
then
ignore = true
break
end
end
if ignore == false then
link = mw.ustring.gsub(link, '[%[%]]', '') -- remove [[ ]], will be added later if requested
links[#links+1] = link
end
end
return links
end
-- merge lists
-- params: l1 (list), l2 (list)
-- return list
local function listJoin(l1, l2)
for i=1,#l2 do
l1[#l1+1] = l2[i]
end
return l1
end
-- get wikilinks from text
-- params: text (string)
-- return list
local function getLinks(text, specialCharacters)
local links = ''
local result = {}
local cleaned = nil
for line in string.gmatch(text,'[^\r\n]+') do
links = string.match(line, "%[%[.*%]%]") -- cleanup line from anything not in [[ ]]
if links ~= nil then
links = mw.ustring.gsub(links, '%]%].-%[%[', ']]~[[') -- remove non link text, ~ is used as delimiter for lines where more than one link exists
links = mw.ustring.gsub(links, '%|.-%]%]', ']]') -- remove custom title i.e. [[title|custom title]]
result = listJoin(result, explode(links, '~', specialCharacters))
end
end
return result
end
-- count links
-- params: articleTitle (string), linkType (string), showLinks (int)
-- return string
local function counter(articleTitle, linkType, showLinks, specialCharacters)
if articleTitle == '' then return -1 end
local article = mw.title.new(articleTitle)
local content = article:getContent()
if content == nil then return -1 end
local links = getLinks(content, specialCharacters)
local str = ''
if linkType ~= 'total' or showLinks == 1 then
local blue = 0
for i=1, #links do
-- using mw.wikibase.getEntityIdForTitle(links[i]) (wikidata entry existing) first as it's much faster and saves a few hundred calls
-- using getContent as a fallback to see if article exists, do not use id or exists method as they query the DB and are counted as ''expensive'' and fail after a few hundreds
if mw.wikibase.getEntityIdForTitle(links[i]) or
mw.title.new(links[i],0):getContent() then
blue = blue + 1
if linkType == 'red' then
links[i] = ''
end
else
if linkType == 'blue' then
links[i] = ''
end
end
end
local red = #links - blue
if linkType == 'red' then
str = red
elseif linkType == 'blue' then
str = blue
elseif linkType == 'percentage' then
str = tostring(math.floor((#links-red)/#links * 100))
end
if showLinks == 1 then
str = 'Σύνολο: ' .. #links .. ', Μπλέ: ' .. blue .. ', Κόκκινοι: ' .. tostring(red) .. '\n' .. '*[[' .. table.concat(links,']]\n*[[') .. ']]'
str = string.gsub(str, '%*%[%[%]%]\n', '')
end
else
str = #links
end
return str
end
-- main
-- params: frame (object)
-- return string
function p.count(frame)
local result = ''
local articleTitle = frame.args['article'] or ''
local linkType = frame.args['type']
local showLinks = tonumber(frame.args['showlinks']) or 0
local specialCharacters = frame.args['characters'] or nil
-- i18n
local linkTypes = {
['κόκκινοι'] = 'red',
['μπλε'] = 'blue',
['σύνολο'] = 'total',
['ποσοστό'] = 'percentage',
}
linkType = linkTypes[linkType]
if linkType == nil then showLinks = 1 end
result = counter(articleTitle, linkType, showLinks, specialCharacters)
if result == -1 then result = 'Δεν βρέθηκε σελίδα με τίτλο ' .. articleTitle end
return result
end
return p
-- =p.count{args={['article'] = ''}}
m50xfh8k3ugy1dp0tpbat7k44vd49e9
Module:Location map
828
3496
36716
2025-12-15T22:54:07Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require('Module:No globals') local p = {} local getArgs = require('Module:Arguments').getArgs local function round(n, decimals) local pow = 10^(decimals or 0) return math.floor(n * pow + 0.5) / pow end function p.getMapParams(map, frame) if not map then error('The name of the location map definition to use must be specified', 2) end local moduletitle = mw.title.new('Module:Location map/data/' .. map) if not moduletitle then error(stri...'
36716
Scribunto
text/plain
require('Module:No globals')
local p = {}
local getArgs = require('Module:Arguments').getArgs
local function round(n, decimals)
local pow = 10^(decimals or 0)
return math.floor(n * pow + 0.5) / pow
end
function p.getMapParams(map, frame)
if not map then
error('The name of the location map definition to use must be specified', 2)
end
local moduletitle = mw.title.new('Module:Location map/data/' .. map)
if not moduletitle then
error(string.format('%q is not a valid name for a location map definition', map), 2)
elseif moduletitle.exists then
local mapData = mw.loadData('Module:Location map/data/' .. map)
return function(name, params)
if name == nil then
return 'Module:Location map/data/' .. map
elseif mapData[name] == nil then
return ''
elseif params then
return mw.message.newRawMessage(tostring(mapData[name]), unpack(params)):plain()
else
return mapData[name]
end
end
elseif mw.title.new('Template:Location map ' .. map).exists then
local cache = {}
if type(frame) ~= 'table' or type(frame.expandTemplate) ~= 'function' then
error('A frame must be provided when using a legacy location map')
end
return function(name, params)
if params then
return frame:expandTemplate{title = 'Location map ' .. map, args = { name, unpack(params) }}
else
if name == nil then
return 'Template:Location map ' .. map
elseif cache[name] == nil then
cache[name] = frame:expandTemplate{title = 'Location map ' .. map, args = { name }}
end
return cache[name]
end
end
else
error('Δεν μπόρεσε να βρεθεί ο ορισμός του ζητούμενου locations map. Ούτε "Module:Location map/data/' .. map .. '" ούτε "Template:Location map ' .. map .. '" υπάρχει', 2)
end
end
function p.data(frame, args, map)
if not args then
args = getArgs(frame, {frameOnly = true})
end
if not map then
map = p.getMapParams(args[1], frame)
end
local params = {}
for k,v in ipairs(args) do
if k > 2 then
params[k-2] = v
end
end
return map(args[2], #params ~= 0 and params)
end
local hemisphereMultipliers = {
longitude = { W = -1, w = -1, E = 1, e = 1 },
latitude = { S = -1, s = -1, N = 1, n = 1 }
}
local function decdeg(degrees, minutes, seconds, hemisphere, decimal, direction)
if decimal then
if degrees then
error('Decimal and DMS degrees cannot both be provided for ' .. direction, 2)
elseif minutes then
error('Minutes can only be provided with DMS degrees for ' .. direction, 2)
elseif seconds then
error('Seconds can only be provided with DMS degrees for ' .. direction, 2)
elseif hemisphere then
error('A hemisphere can only be provided with DMS degrees for ' .. direction, 2)
end
local retval = tonumber(decimal)
if retval then
return retval
end
error('The value "' .. decimal .. '" provided for ' .. direction .. ' is not valid', 2)
elseif seconds and not minutes then
error('Seconds were provided for ' .. direction .. ' without minutes also being provided', 2)
elseif not degrees then
if minutes then
error('Minutes were provided for ' .. direction .. ' without degrees also being provided', 2)
elseif hemisphere then
error('A hemisphere was provided for ' .. direction .. ' without degrees also being provided', 2)
end
return nil
end
decimal = tonumber(degrees)
if not decimal then
error('The degree value "' .. degrees .. '" provided for ' .. direction .. ' is not valid', 2)
elseif minutes and not tonumber(minutes) then
error('The minute value "' .. minutes .. '" provided for ' .. direction .. ' is not valid', 2)
elseif seconds and not tonumber(seconds) then
error('The second value "' .. seconds .. '" provided for ' .. direction .. ' is not valid', 2)
end
decimal = decimal + (minutes or 0)/60 + (seconds or 0)/3600
if hemisphere then
local multiplier = hemisphereMultipliers[direction][hemisphere]
if not multiplier then
error('The hemisphere "' .. hemisphere .. '" provided for ' .. direction .. ' is not valid', 2)
end
decimal = decimal * multiplier
end
return decimal
end
-- Finds a parameter in a transclusion of {{Coord}}.
local function coord2text(para,coord) -- this should be changed for languages which do not use Arabic numerals or the degree sign
local result = mw.text.split(mw.ustring.match(coord,'%-?[%.%d]+°[NS] %-?[%.%d]+°[EW]') or '', '[ °]')
if para == 'longitude' then result = {result[3], result[4]} end
if not tonumber(result[1]) or not result[2] then return error('Malformed coordinates value', 2) end
return tonumber(result[1]) * hemisphereMultipliers[para][result[2]]
end
-- effectively make removeBlanks false for caption and maplink, and true for everything else
-- if useWikidata is present but blank, convert it to false instead of nil
-- p.top, p.bottom, and their callers need to use this
function p.valueFunc(key, value)
if value then
value = mw.text.trim(value)
end
if value ~= '' or key == 'caption' or key == 'maplink' then
return value
elseif key == 'useWikidata' then
return false
end
end
local function getContainerImage(args, map)
if args.AlternativeMap then
return args.AlternativeMap
elseif args.relief and map('image1') ~= '' then
return map('image1')
else
return map('image')
end
end
function p.top(frame, args, map)
if not args then
args = getArgs(frame, {frameOnly = true, valueFunc = p.valueFunc})
end
if not map then
map = p.getMapParams(args[1], frame)
end
local width
local default_as_number = tonumber(mw.ustring.match(tostring(args.default_width),"%d*"))
if not args.width then
width = round((default_as_number or 240) * (tonumber(map('defaultscale')) or 1))
elseif mw.ustring.sub(args.width, -2) == 'px' then
width = mw.ustring.sub(args.width, 1, -3)
else
width = args.width
end
local width_as_number = tonumber(mw.ustring.match(tostring(width),"%d*")) or 0;
if width_as_number == 0 then
-- check to see if width is junk. If it is, then use default calculation
width = round((default_as_number or 240) * (tonumber(map('defaultscale')) or 1))
width_as_number = tonumber(mw.ustring.match(tostring(width),"%d*")) or 0;
end
if args.max_width ~= "" and args.max_width ~= nil then
-- check to see if width bigger than max_width
local max_as_number = tonumber(mw.ustring.match(args.max_width,"%d*")) or 0;
if width_as_number>max_as_number and max_as_number>0 then
width = args.max_width;
end
end
local retval = frame:extensionTag{name = 'templatestyles', args = {src = 'Template:Location map/styles.css'}}
if args.float == 'center' then
retval = retval .. '<div class="center">'
end
if args.caption and args.caption ~= '' and args.border ~= 'infobox' then
retval = retval .. '<div class="locmap noviewer thumb '
if args.float == '"left"' or args.float == 'left' then
retval = retval .. 'tleft'
elseif args.float == '"center"' or args.float == 'center' or args.float == '"none"' or args.float == 'none' then
retval = retval .. 'tnone'
else
retval = retval .. 'tright'
end
retval = retval .. '"><div class="thumbinner" style="width:' .. (width + 2) .. 'px'
if args.border == 'none' then
retval = retval .. ';border:none'
elseif args.border then
retval = retval .. ';border-color:' .. args.border
end
retval = retval .. '"><div style="position:relative;width:' .. width .. 'px' .. (args.border ~= 'none' and ';border:1px solid lightgray">' or '">')
else
retval = retval .. '<div class="locmap noviewer" style="width:' .. width .. 'px;'
if args.float == '"left"' or args.float == 'left' then
retval = retval .. 'float:left;clear:left'
elseif args.float == '"center"' or args.float == 'center' then
retval = retval .. 'float:none;clear:both;margin-left:auto;margin-right:auto'
elseif args.float == '"none"' or args.float == 'none' then
retval = retval .. 'float:none;clear:none'
else
retval = retval .. 'float:right;clear:right'
end
retval = retval .. '"><div style="width:' .. width .. 'px;padding:0"><div style="position:relative;width:' .. width .. 'px">'
end
local image = getContainerImage(args, map)
local currentTitle = mw.title.getCurrentTitle()
retval = string.format(
'%s[[File:%s|%spx|%s%s]]',
retval,
image,
width,
args.alt or ((args.label or currentTitle.text) .. ' is located in ' .. map('name')),
args.maplink and ('|link=' .. args.maplink) or ''
)
if args.caption and args.caption ~= '' then
if (currentTitle.namespace == 0) and mw.ustring.find(args.caption, '##') then
retval = retval .. '[[Category:Pages using location map with a double number sign in the caption]]'
end
end
if args.overlay_image then
return retval .. '<div style="position:absolute;top:0;left:0">[[File:' .. args.overlay_image .. '|' .. width .. 'px]]</div>'
else
return retval
end
end
function p.bottom(frame, args, map)
if not args then
args = getArgs(frame, {frameOnly = true, valueFunc = p.valueFunc})
end
if not map then
map = p.getMapParams(args[1], frame)
end
local retval = '</div>'
local currentTitle = mw.title.getCurrentTitle()
if not args.caption or args.border == 'infobox' then
if args.border then
retval = retval .. '<div style="padding-top:0.2em">'
else
retval = retval .. '<div style="font-size:91%;padding-top:3px">'
end
retval = retval
.. (args.caption or (args.label or currentTitle.text) .. ' (' .. map('name') .. ')')
.. '</div>'
elseif args.caption ~= '' then
-- This is not the pipe trick. We're creating a link with no text on purpose, so that CSS can give us a nice image
retval = retval .. '<div class="thumbcaption"><div class="magnify">[[:File:' .. getContainerImage(args, map) .. '| ]]</div>' .. args.caption .. '</div>'
end
if args.switcherLabel then
retval = retval .. '<span class="switcher-label" style="display:none">' .. args.switcherLabel .. '</span>'
elseif args.autoSwitcherLabel then
retval = retval .. '<span class="switcher-label" style="display:none">Εμφάνιση χάρτη ' .. map('name') .. '</span>'
end
retval = retval .. '</div></div>'
if args.caption_undefined then
mw.log('Removed parameter caption_undefined used.')
local parent = frame:getParent()
if parent then
mw.log('Parent is ' .. parent:getTitle())
end
mw.logObject(args, 'args')
if currentTitle.namespace == 0 then
retval = retval .. '[[Category:Location maps with removed parameters|caption_undefined]]'
end
end
if map('skew') ~= '' or map('lat_skew') ~= '' or map('crosses180') ~= '' or map('type') ~= '' then
mw.log('Removed parameter used in map definition ' .. map())
if currentTitle.namespace == 0 then
local key = (map('skew') ~= '' and 'skew' or '') ..
(map('lat_skew') ~= '' and 'lat_skew' or '') ..
(map('crosses180') ~= '' and 'crosses180' or '') ..
(map('type') ~= '' and 'type' or '')
retval = retval .. '[[Category:Location maps with removed parameters|' .. key .. ' ]]'
end
end
if string.find(map('name'), '|', 1, true) then
mw.log('Pipe used in name of map definition ' .. map())
if currentTitle.namespace == 0 then
retval = retval .. '[[Category:Location maps with a name containing a pipe]]'
end
end
if args.float == 'center' then
retval = retval .. '</div>'
end
return retval
end
local function markOuterDiv(x, y, imageDiv, labelDiv)
return mw.html.create('div')
:addClass('od')
:cssText('top:' .. round(y, 3) .. '%;left:' .. round(x, 3) .. '%')
:node(imageDiv)
:node(labelDiv)
end
local function markImageDiv(mark, marksize, label, link, alt, title)
local builder = mw.html.create('div')
:addClass('id')
:cssText('left:-' .. round(marksize / 2) .. 'px;top:-' .. round(marksize / 2) .. 'px')
:attr('title', title)
if marksize ~= 0 then
builder:wikitext(string.format(
'[[File:%s|%dx%dpx|%s|link=%s%s]]',
mark,
marksize,
marksize,
label,
link,
alt and ('|alt=' .. alt) or ''
))
end
return builder
end
local function markLabelDiv(label, label_size, label_width, position, background, x, marksize)
if tonumber(label_size) == 0 then
return mw.html.create('div'):addClass('l0'):wikitext(label)
end
local builder = mw.html.create('div')
:cssText('font-size:' .. label_size .. '%;width:' .. label_width .. 'em')
local distance = round(marksize / 2 + 1)
if position == 'top' then -- specified top
builder:addClass('pv'):cssText('bottom:' .. distance .. 'px;left:' .. (-label_width / 2) .. 'em')
elseif position == 'bottom' then -- specified bottom
builder:addClass('pv'):cssText('top:' .. distance .. 'px;left:' .. (-label_width / 2) .. 'em')
elseif position == 'left' or (tonumber(x) > 70 and position ~= 'right') then -- specified left or autodetected to left
builder:addClass('pl'):cssText('right:' .. distance .. 'px')
else -- specified right or autodetected to right
builder:addClass('pr'):cssText('left:' .. distance .. 'px')
end
builder = builder:tag('div')
:wikitext(label)
if background then
builder:cssText('background-color:' .. background)
end
return builder:done()
end
local function getX(longitude, left, right)
local width = (right - left) % 360
if width == 0 then
width = 360
end
local distanceFromLeft = (longitude - left) % 360
-- the distance needed past the map to the right equals distanceFromLeft - width. the distance needed past the map to the left equals 360 - distanceFromLeft. to minimize page stretching, go whichever way is shorter
if distanceFromLeft - width / 2 >= 180 then
distanceFromLeft = distanceFromLeft - 360
end
return 100 * distanceFromLeft / width
end
local function getY(latitude, top, bottom)
return 100 * (top - latitude) / (top - bottom)
end
function p.mark(frame, args, map)
if not args then
args = getArgs(frame, {wrappers = 'Template:Location map~'})
end
local mapnames = {}
if not map then
if args[1] then
map = {}
for mapname in mw.text.gsplit(args[1], '#', true) do
map[#map + 1] = p.getMapParams(mw.ustring.gsub(mapname, '^%s*(.-)%s*$', '%1'), frame)
mapnames[#mapnames + 1] = mapname
end
if #map == 1 then map = map[1] end
else
map = p.getMapParams('World', frame)
args[1] = 'World'
end
end
if type(map) == 'table' then
local outputs = {}
local oldargs = args[1]
for k,v in ipairs(map) do
args[1] = mapnames[k]
outputs[k] = tostring(p.mark(frame, args, v))
end
args[1] = oldargs
return table.concat(outputs, '#PlaceList#') .. '#PlaceList#'
end
local x, y, longitude, latitude
longitude = decdeg(args.lon_deg, args.lon_min, args.lon_sec, args.lon_dir, args.long, 'longitude')
latitude = decdeg(args.lat_deg, args.lat_min, args.lat_sec, args.lat_dir, args.lat, 'latitude')
if args.excludefrom then
-- If this mark is to be excluded from certain maps entirely (useful in the context of multiple maps)
for exclusionmap in mw.text.gsplit(args.excludefrom, '#', true) do
-- Check if this map is excluded. If so, return an empty string.
if args[1] == exclusionmap then
return ''
end
end
end
local builder = mw.html.create()
local currentTitle = mw.title.getCurrentTitle()
if args.coordinates then
-- Temporarily removed to facilitate infobox conversion. See [[Wikipedia:Coordinates in infoboxes]]
-- if longitude or latitude then
-- error('Coordinates from [[Module:Coordinates]] and individual coordinates cannot both be provided')
-- end
longitude = coord2text('longitude', args.coordinates)
latitude = coord2text('latitude', args.coordinates)
elseif not longitude and not latitude and args.useWikidata then
-- If they didn't provide either coordinate, try Wikidata. If they provided one but not the other, don't.
local entity = mw.wikibase.getEntity()
if entity and entity.claims and entity.claims.P625 and entity.claims.P625[1].mainsnak.snaktype == 'value' then
local value = entity.claims.P625[1].mainsnak.datavalue.value
longitude, latitude = value.longitude, value.latitude
end
if args.link and (currentTitle.namespace == 0) then
builder:wikitext('[[Category:Location maps with linked markers with coordinates from Wikidata]]')
end
end
if not longitude then
error('No value was provided for longitude')
elseif not latitude then
error('No value was provided for latitude')
end
if currentTitle.namespace > 0 then
if (not args.lon_deg) ~= (not args.lat_deg) then
builder:wikitext('[[Category:Location maps with different longitude and latitude precisions|Degrees]]')
elseif (not args.lon_min) ~= (not args.lat_min) then
builder:wikitext('[[Category:Location maps with different longitude and latitude precisions|Minutes]]')
elseif (not args.lon_sec) ~= (not args.lat_sec) then
builder:wikitext('[[Category:Location maps with different longitude and latitude precisions|Seconds]]')
elseif (not args.lon_dir) ~= (not args.lat_dir) then
builder:wikitext('[[Category:Location maps with different longitude and latitude precisions|Hemisphere]]')
elseif (not args.long) ~= (not args.lat) then
builder:wikitext('[[Category:Location maps with different longitude and latitude precisions|Decimal]]')
end
end
if args.skew or args.lon_shift or args.markhigh then
mw.log('Removed parameter used in invocation.')
local parent = frame:getParent()
if parent then
mw.log('Parent is ' .. parent:getTitle())
end
mw.logObject(args, 'args')
if currentTitle.namespace == 0 then
local key = (args.skew and 'skew' or '') ..
(args.lon_shift and 'lon_shift' or '') ..
(args.markhigh and 'markhigh' or '')
builder:wikitext('[[Category:Location maps with removed parameters|' .. key ..' ]]')
end
end
if map('x') ~= '' then
x = tonumber(mw.ext.ParserFunctions.expr(map('x', { latitude, longitude })))
else
x = tonumber(getX(longitude, map('left'), map('right')))
end
if map('y') ~= '' then
y = tonumber(mw.ext.ParserFunctions.expr(map('y', { latitude, longitude })))
else
y = tonumber(getY(latitude, map('top'), map('bottom')))
end
if (x < 0 or x > 100 or y < 0 or y > 100) and not args.outside then
mw.log('Mark placed outside map boundaries without outside flag set. x = ' .. x .. ', y = ' .. y)
local parent = frame:getParent()
if parent then
mw.log('Parent is ' .. parent:getTitle())
end
mw.logObject(args, 'args')
if currentTitle.namespace == 0 then
local key = currentTitle.prefixedText
builder:wikitext('[[Category:Location maps with marks outside map and outside parameter not set|' .. key .. ' ]]')
end
end
local mark = args.mark or map('mark')
if mark == '' then
mark = 'Red pog.svg'
end
local marksize = tonumber(args.marksize) or tonumber(map('marksize')) or 8
local imageDiv = markImageDiv(mark, marksize, args.label or mw.title.getCurrentTitle().text, args.link or '', args.alt, args[2])
local labelDiv
if args.label and args.position ~= 'none' then
labelDiv = markLabelDiv(args.label, args.label_size or 91, args.label_width or 6, args.position, args.background, x, marksize)
end
return builder:node(markOuterDiv(x, y, imageDiv, labelDiv))
end
local function switcherSeparate(s)
if s == nil then return {} end
local retval = {}
for i in string.gmatch(s .. '#', '([^#]*)#') do
i = mw.text.trim(i)
retval[#retval + 1] = (i ~= '' and i)
end
return retval
end
function p.main(frame, args, map)
local caption_list = {}
if not args then
args = getArgs(frame, {wrappers = 'Template:Location map', valueFunc = p.valueFunc})
end
if args.useWikidata == nil then
args.useWikidata = true
end
if not map then
if args[1] then
map = {}
for mapname in string.gmatch(args[1], '[^#]+') do
map[#map + 1] = p.getMapParams(mw.ustring.gsub(mapname, '^%s*(.-)%s*$', '%1'), frame)
end
if args['caption'] then
if args['caption'] == "" then
while #caption_list < #map do
caption_list[#caption_list + 1] = args['caption']
end
else
for caption in mw.text.gsplit(args['caption'], '##', true) do
caption_list[#caption_list + 1] = caption
end
end
end
if #map == 1 then map = map[1] end
else
map = p.getMapParams('World', frame)
end
end
if type(map) == 'table' then
local altmaps = switcherSeparate(args.AlternativeMap)
if #altmaps > #map then
error(string.format('%d AlternativeMaps were provided, but only %d maps were provided', #altmaps, #map))
end
local overlays = switcherSeparate(args.overlay_image)
if #overlays > #map then
error(string.format('%d overlay_images were provided, but only %d maps were provided', #overlays, #map))
end
if #caption_list > #map then
error(string.format('%d captions were provided, but only %d maps were provided', #caption_list, #map))
end
local outputs = {}
args.autoSwitcherLabel = true
for k,v in ipairs(map) do
args.AlternativeMap = altmaps[k]
args.overlay_image = overlays[k]
args.caption = caption_list[k]
outputs[k] = p.main(frame, args, v)
end
return '<div class="switcher-container">' .. table.concat(outputs) .. '</div>'
else
return p.top(frame, args, map) .. tostring( p.mark(frame, args, map) ) .. p.bottom(frame, args, map)
end
end
return p
e86emiyftqixrn5no2vdtka2seihk0i
Module:Location map/data/Τουρκία
828
3497
36717
2025-12-15T22:55:51Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { name = 'Τουρκία', top = 42.5, bottom = 35.5, left = 25.4, right = 45.0, image = 'Turkey adm location map.svg', image1 = 'Turkey relief location map.jpg' }'
36717
Scribunto
text/plain
return {
name = 'Τουρκία',
top = 42.5,
bottom = 35.5,
left = 25.4,
right = 45.0,
image = 'Turkey adm location map.svg',
image1 = 'Turkey relief location map.jpg'
}
ftx24qm41dn78yo091ublev1rm0jc5q
Module:Location map/data/Κύπρος
828
3498
36718
2025-12-15T22:56:40Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { name = 'Cyprus', top = 35.8, bottom = 34.4, left = 32.1, right = 34.8, image = 'Cyprus location map.svg', image1 = 'Cyprus relief location map.jpg' }'
36718
Scribunto
text/plain
return {
name = 'Cyprus',
top = 35.8,
bottom = 34.4,
left = 32.1,
right = 34.8,
image = 'Cyprus location map.svg',
image1 = 'Cyprus relief location map.jpg'
}
j5ehnkycgtvspdffgmx4tgt1tq6jt45
Module:Location map/data/Ρωσία
828
3499
36719
2025-12-15T22:57:35Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { name = 'Ρωσία', x = '50.0 + 71.51617284504452 * ((1.6671750744677123-($1 * pi / 180)) * sin(0.807990549171814 * ($2 + ($2<0)*360 - 100) * pi / 180))', y = '50.0 + 1.8540031397174255 * 71.51617284504452 * 0.20267660928013187 - 1.8540031397174255 * 71.51617284504452 * (0.7246972783907744 - (1.6671750744677123-($1 *pi / 180)) * cos(0.807990549171814 * ($2 + ($2<0)*360 - 100) * pi / 180))', image = 'Russia edcp location map.svg', ima...'
36719
Scribunto
text/plain
return {
name = 'Ρωσία',
x = '50.0 + 71.51617284504452 * ((1.6671750744677123-($1 * pi / 180)) * sin(0.807990549171814 * ($2 + ($2<0)*360 - 100) * pi / 180))',
y = '50.0 + 1.8540031397174255 * 71.51617284504452 * 0.20267660928013187 - 1.8540031397174255 * 71.51617284504452 * (0.7246972783907744 - (1.6671750744677123-($1 *pi / 180)) * cos(0.807990549171814 * ($2 + ($2<0)*360 - 100) * pi / 180))',
image = 'Russia edcp location map.svg',
image1 = 'Russia edcp relief location map.jpg'
}
bo2p910y261tkpg5o0co66gnzu2ncol
Module:Location map/data/Γαλλία
828
3500
36720
2025-12-15T22:58:22Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { name = 'Γαλλία', top = 51.5, bottom = 41.0, left = -5.8, right = 10.0, image = 'France location map-Regions and departements-2016.svg', image1 = 'France relief location map.jpg' }'
36720
Scribunto
text/plain
return {
name = 'Γαλλία',
top = 51.5,
bottom = 41.0,
left = -5.8,
right = 10.0,
image = 'France location map-Regions and departements-2016.svg',
image1 = 'France relief location map.jpg'
}
f8lp0f1twhund8o14p4yzin5fpqjus4
Module:Location map/data/Ελλάδα
828
3501
36721
2025-12-15T22:59:11Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { name = 'Greece', top = 42.0, bottom = 34.6, left = 19.1, right = 29.9, image = 'Greece location map.svg', image1 = 'Greece relief location map.jpg' }'
36721
Scribunto
text/plain
return {
name = 'Greece',
top = 42.0,
bottom = 34.6,
left = 19.1,
right = 29.9,
image = 'Greece location map.svg',
image1 = 'Greece relief location map.jpg'
}
7ul2hl356klg7qepqsm1qztd95d5uqb
Module:Location map/data/Ουκρανία
828
3502
36722
2025-12-15T23:00:08Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { name = 'Ουκρανία', top = 52.7, bottom = 44.1, left = 21.5, right = 40.7, image = 'Ukraine administrative locations map, improved.svg', image1 = 'Ukraine relief location map.jpg' }'
36722
Scribunto
text/plain
return {
name = 'Ουκρανία',
top = 52.7,
bottom = 44.1,
left = 21.5,
right = 40.7,
image = 'Ukraine administrative locations map, improved.svg',
image1 = 'Ukraine relief location map.jpg'
}
djfi4suhui1ro9c7c6abnen6i01z0bv
Module:Cite Q
828
3503
36724
36723
2025-12-15T23:02:17Z
Εὐθυμένης
2777
(By [[meta:Indic-TechCom/Tools|FindAndReplace]])
36724
Scribunto
text/plain
-- Version: 2021-10-19
local p = {}
require('strict')
local wdib = require('Module:WikidataIBNew')
local getValue = wdib._getValue
local getPropOfProp = wdib._getPropOfProp
local followQid = wdib._followQid
local getPropertyIDs = wdib._getPropertyIDs
local i18n = {
["unknown-author"] = mw.wikibase.getLabel("Q4233718"):gsub("^%l", mw.ustring.upper),
["unknown-author-trackingcat"] = "[[Κατηγορίαν:Cite Q - άγνωστος συγγραφέας]]",
["ordinal"] = {
[1] = "st",
[2] = "nd",
[3] = "rd",
["default"] = "th"
},
["months"] = {
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"
},
}
-------------------------------------------------------------------------------
-- makeOrdinal needs to be internationalised along with the above i18n
-- takes cardinal number as a numeric and returns the ordinal as a string
-- we need three exceptions in English for 1st, 2nd, 3rd, 21st, .. 31st, etc.
-------------------------------------------------------------------------------
p.makeOrdinal = function(cardinal)
local card = tonumber(cardinal)
if not card then return cardinal end
local ordsuffix = i18n.ordinal.default
if card % 10 == 1 then
ordsuffix = i18n.ordinal[1]
elseif card % 10 == 2 then
ordsuffix = i18n.ordinal[2]
elseif card % 10 == 3 then
ordsuffix = i18n.ordinal[3]
end
-- In English, 1, 21, 31, etc. use 'st', but 11, 111, etc. use 'th'
-- similarly for 12 and 13, etc.
if (card % 100 == 11) or (card % 100 == 12) or (card % 100 == 13) then
ordsuffix = i18n.ordinal.default
end
return card .. ordsuffix
end
-- Table of simple properties that can be fetched in roughly the same way:
-- id = PXXX
-- maxvals = maximum number of multiple values (0 for all)
-- linked = "no" suppresses linking
-- populate_from_journal = true/false determines whether to look in a journal where the source is published
-- rank = "best", "preferred", normal, etc. determines how Wikidata ranks are treated
-- others = true - the value for the property goes to "others" section
local simple_properties = {
publisher = {id = "P123", maxvals = 1},
oclc = {id = "P243", maxvals = 1},
['publication-place'] = {id = "P291", maxvals = 0, linked = 'no'}, -- publication place (don't put into |place=; is treated specially in {{citation}} if both are given)
doi = {id = "P356", maxvals = 1}, -- take care of |doi-broken-date= (WD "reason for deprecation"/"stated as") and |doi-access= (WD "access status")?
issue = {id = "P433", maxvals = 0, populate_from_journal = true}, -- distinguish from |number= ("P1545"?) if both are given (still blocked by {{citation}}, but will be supported in the future)
pmid = {id = "P698", maxvals = 1},
-- gbooks = {id = "P675", maxvals = 1}, -- to be added to {{citation}}
-- ia = {id = "P724", maxvals = 1}, -- to be added to {{citation}}
arxiv = {id = "P818", maxvals = 1},
bibcode = {id = "P819", maxvals = 1}, -- take care of |bibcode-access=?
jstor = {id = "P888", maxvals = 1}, -- take care of |jstor-access=?
mr = {id = "P889", maxvals = 1},
rfc = {id = "P892", maxvals = 1},
zbl = {id = "P894", maxvals = 1},
ssrn = {id = "P893", maxvals = 1},
place = {id = "P1071", maxvals = 0, linked = 'no'}, -- written-at place
-- ['total-pages'] = {id = "P1104", maxvals = 0, linked = 'no'}, -- to be added to {{citation}} / COinS &rft.tpages=
-- coden = {id = "P1159", maxvals = 1}, -- to be added to {{citation}} / COinS &rft.coden=
s2cid = {id = "P8299", maxvals = 1}, -- take care of |s2cid-access=?
pmc = {id = "P932", maxvals = 1}, -- take care of |pmc-embargo-date= (WD "reason for deprecation")?
lccn = {id = "P1144", maxvals = 1},
hdl = {id = "P1184", maxvals = 1}, -- take care of |hdl-access=?
ismn = {id = "P1208", maxvals = 1},
journal = {id = "P1433", maxvals = 1},
citeseerx = {id = "P3784", maxvals = 1},
osti = {id = "P3894", maxvals = 1}, -- take care of |osti-access=?
biorxiv = {id = "P3951", maxvals = 1},
asin = {id = "P5749", maxvals = 1}, -- What about |asin-tld=? (WD examples resolve to .com at present, but may change)
-- ['catalog-number'] = {id = "P528", maxvals = 0}, -- to be added to {{citation}} / COinS &rft.artnum=
isbn = {id = "P212", maxvals = 1, populate_from_journal = true}, -- ISBN 13
issn = {id = "P236", maxvals = 1, populate_from_journal = true}, -- distinguish from |eissn= for electronic issues?
-- jfm = {id = "P?", maxvals = 1}, -- Jahrbuch über die Fortschritte der Mathematik (not Zbl)
-- sbn = {id = "P?", maxvals = 1}, -- Standard Book Number (predecessor of ISBN, not ICCU)
-- message-id = {id = "P?", maxvals = 1}, -- Usenet message ID
chapter = {id = "P792", maxvals = 1},
['publication-date'] = {id = "P577", maxvals = 1, populate_from_journal = true}, -- publication date (don't use |date=; is treated specially in {{citation}} if both are given.)
series = {id = "P179", maxvals = 1, populate_from_journal = true},
version = {id = "P348", maxvals = 0},
edition = {id = "P393", maxvals = 0},
volume = {id = "P478", maxvals = 0, populate_from_journal = true},
-- part = {id = "P1545"?, maxvals = 0}, -- to be added to {{citation}} / COinS &rft.part=
title = {id = "P1476", rank="p n"},
-- url = {id = "P953", maxvals = 1}, -- deal with this along with archive-url
pages = {id = "P304", maxvals = 0, populate_from_journal = true},
at = {id = "P958", maxvals = 0, populate_from_journal = true}, -- also incorporate lines (P7421) and columns (P3903) into this (cite map also supports |section=)
-- sheets = {id = "P7416", maxvals = 0, populate_from_journal = true},
-- interviewer = {id = "P?", maxvals = 0}, -- does **not** go to "others" section! Multiple interviewers should be n-enumerated
illustrator = {id = "P110", maxvals = 10, others = true}, -- goes to "others" section
-- foreword and afterword, when contributions to another author's work, are contributions so belong in |contribution=;
-- the writer's name goes in |contributor=; requires |title= and |author=
-- However, this might need to add support for multiple contributors and their roles to {{citation}}, see Help_talk:Citation_Style_1#Others
-- foreword = {id = "P2679", maxvals = 10, others = true}, -- goes to "others" section
-- afterword = {id = "P2680", maxvals = 10, others = true}, -- goes to "others" section
composer = {id = "P86", maxvals = 10, others = true}, -- goes to "others" section
animator = {id = "P6942", maxvals = 10, others = true}, -- goes to "others" section
director = {id = "P57", maxvals = 10, others = true}, -- goes to "others" section
screenwriter = {id = "P58", maxvals = 10, others = true}, -- goes to "others" section
signatory = {id = "P1891", maxvals = 10, others = true}, -- goes to "others" section
presenter = {id = "P371", maxvals = 10, others = true}, -- goes to "others" section
performer = {id = "P175", maxvals = 10, others = true}, -- goes to "others" section
}
--[[--------------------------< I S _ S E T >--------------------------------------------------------------
Returns true if argument is set; false otherwise. Argument is 'set' when it exists (not nil) or when it is not an empty string.
]]
local function is_set( var )
return not (var == nil or var == '')
end
--[[--------------------------< I N _ A R R A Y >--------------------------------------------------------------
Whether needle is in haystack (taken from Module:Citation/CS1/Utilities)
]]
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
--[[--------------------------< A C C E P T _ V A L U E >-------------------------------------------------------
Accept WD value by framing in ((...)) if param_val is equal to keyword; else pass-through WD value as is.
]]
local function accept_value( param_val, wd_val )
local val = param_val
if val then
if in_array (val, {'accept', '))((', ':d:'}) then
val = '((' .. wd_val .. '))'
elseif '((accept))' == val then
val = 'accept'
elseif '(())(())' == val then
val = '))(('
elseif '((:d:))' == val then
val = ':d:'
else
val = wd_val
end
end
return val
end
-- function to fetch a value to display
local function makelink(v, out, link, maxpos, wdl)
local label
if v.mainsnak.snaktype == "value" then
if v.mainsnak.datatype == "wikibase-item" then
local qnumber = v.mainsnak.datavalue.value.id
local sitelink = mw.wikibase.getSitelink(qnumber)
if qnumber == "Q2818964" then sitelink = nil end -- suppress link to "Various authors"
if v.qualifiers and v.qualifiers.P1932 then
label = v.qualifiers.P1932[1].datavalue.value
else
label = mw.wikibase.getLabel(qnumber)
if label then
label = mw.text.nowiki(label)
else
label = qnumber -- should add tracking category
end
end
local position = maxpos + 1 -- Default to 'next' author.
-- use P1545 (series ordinal) instead of default position.
if v["qualifiers"] and v.qualifiers["P1545"] and v.qualifiers["P1545"][1] then
position = tonumber(v.qualifiers["P1545"][1].datavalue.value)
end
maxpos = math.max(maxpos, position)
if sitelink then
-- just the plain name,
-- but keep a record of the links, using the same index
out[position] = label
link[position] = sitelink
else
if wdl then
-- show that there's a Wikidata entry available
out[position] = "[[:d:Q" .. v.mainsnak.datavalue.value["numeric-id"] .. "|" .. label .. "]] <span title='" .. i18n["errors"]["local-article-not-found"] .. "'>[[File:Wikidata-logo.svg|16px|alt=|link=]]</span>"
else
-- no Wikidata links wanted, so just give the plain label
out[position] = label
end
end
elseif v.mainsnak.datatype == "string" then
local position = maxpos + 1 -- Default to 'next' author.
-- use P1545 (series ordinal) instead of default position.
if v["qualifiers"] and v.qualifiers["P1545"] and v.qualifiers["P1545"][1] then
position = tonumber(v.qualifiers["P1545"][1].datavalue.value)
end
maxpos = math.max(maxpos, position)
out[position] = v.mainsnak.datavalue.value
else
-- not a wikibase-item or a string!
end
else
-- code here if we want to return something when author is "unknown"
if v.qualifiers and v.qualifiers.P1932 then
label = v.qualifiers.P1932[1].datavalue.value
else
label = i18n["unknown-author"] .. (i18n["unknown-author-trackingcat"] or "")
end
maxpos = maxpos + 1
out[maxpos] = label
end
return maxpos
end
--[=[-------------------------< G E T _ N A M E _ L I S T >----------------------------------------------------
get_name_list -- adapted from getAuthors code taken from Module:RexxS
arguments:
nl_type - type of name list to fetch: nl_type = 'author' for authors; 'editor' for editors; 'translator' for translators
args - pointer to the parameter arguments table from the template call
qid - value from |qid= parameter; the Q-id of the source (book, etc.) in qid
wdl - value from the |wdl= parameter; a Boolean passed to enable links to Wikidata when no article exists
returns nothing; modifies the args table
]=]
local function get_name_list (nl_type, args, qid, wdl)
local propertyID = "P50"
local fallbackID = "P2093" -- author name string
if nl_type =="author" then
propertyID = 'P50' -- for authors
fallbackID = 'P2093' -- author-string
elseif nl_type =="editor" then
propertyID = 'P5769' -- "editor-in-chief"
fallbackID = 'P98' -- for editors - So-called "fallbacks" are actually a second set of properties processed
-- TBD. Take book series editors into account as well (if they have a separate P code as well)?
elseif nl_type == "translator" then
propertyID = 'P655' -- for translators
fallbackID = nil
-- elseif 'contributor' == nl_type then
-- f.e. author of forewords (P2679) and afterwords (P2680); requires |contribution=, |title= and |author=
-- propertyID = 'P' -- for contributors
-- fallbackID = nil
else
return -- not specified so return
end
-- wdl is a Boolean passed to enable links to Wikidata when no article exists
-- if "false" or "no" or "0" is passed set it false
-- if nothing or an empty string is passed set it false
if wdl and (#wdl > 0) then
wdl = wdl:lower()
wdl = in_array (wdl, {"false", "no", "0"})
else
-- wdl is empty, so
wdl = false
end
local props = nil
local fallback = nil
if mw.wikibase.entityExists(qid) then
props = mw.wikibase.getAllStatements(qid, propertyID)
if props and fallbackID then
fallback = mw.wikibase.getAllStatements(qid, fallbackID)
end
end
-- Make sure it actually has at least one of the properties requested
if not (props and props[1]) and not (fallback and fallback[1]) then
return nil
end
-- So now we have something to return:
-- table 'out' is going to store the names(s):
-- and table 'link' will store any links to the name's article
local out = {}
local link = {}
local maxpos = 0
if props and props[1] then
for k, v in pairs(props) do
maxpos = makelink(v, out, link, maxpos, wdl)
end
end
if fallback and fallback[1] then
-- second properties
for k, v in pairs(fallback) do
maxpos = makelink(v, out, link, maxpos, wdl)
end
end
-- if there's anything to return, then insert the additions in the template arguments table
-- in the form |author1=firstname secondname |author2= ...
-- Renumber, in case we have inconsistent numbering
local keys = {}
for k, v in pairs(out) do
keys[#keys + 1] = k
end
table.sort(keys) -- as they might be out of order
for i, k in ipairs(keys) do
out[k] = out[k]:gsub (''', '\''); -- prevent cs1|2 multiple names categorization; replace html entity with the actual character
mw.log(i .. " " .. k .. " " .. (out[k]))
if args[nl_type .. i] then -- name gets overwritten
-- pull corresponding -link only if overwritten name is same as WD name
if link[k] and (args[nl_type .. i] == out[k]) then
args[nl_type .. '-link' .. i] = args[nl_type .. '-link' .. i] or link[k] -- author-linkn or editor-linkn
end
else -- name does not get overwritten, so pull name from WD
args[nl_type .. i] = out[k]
if link[k] then
args[nl_type .. '-link' .. i] = args[nl_type .. '-link' .. i] or link[k] -- author-linkn or editor-linkn
end
end
end
end
-- gets language codes used for a monolingual text property as a table
function p._getLangOfProp(qid, pid)
if not pid then return {} end
local out = {}
local props = mw.wikibase.getAllStatements(qid, pid)
for i, v in ipairs(props) do
if v.mainsnak.datatype == "monolingualtext" and v.mainsnak.datavalue then
out[#out + 1] = v.mainsnak.datavalue.value.language
end
end
return out
end
function p.getLangOfProp(frame)
local pid = frame.args.pid or mw.text.trim(frame.args[1] or "")
if pid == "" then return end
local qid = frame.args.qid
if qid == "" then qid = nil end
return table.concat(p._getLangOfProp(qid, pid), ", ")
end
-- gets the language codes of a Wikidata entry as a table
local function _lang_code(qid)
local lc = getPropOfProp( {qid = qid, prop1 = "P407", prop2 = "P424", ps = 1} )
if lc then return mw.text.split( lc, "[, ]+" ) end
lc = getPropOfProp( {qid = qid, prop1 = "P407", prop2 = "P218", ps = 1} )
if lc then return mw.text.split( lc, "[, ]+" ) end
return p._getLangOfProp(qid, "P1476")
end
function p.lang_code(frame)
return table.concat(_lang_code(frame.args.qid or mw.text.trim(frame.args[1] or "")), ", ")
end
-- export for debug
function p.getPropOfProp(frame)
return getPropOfProp(frame.args)
end
-- wraps a string in nowiki unless disable flag is set
local function wrap_nowiki(str, disable)
if disable then return str or '' end
return mw.text.nowiki(str or '')
end
-- sort sequence table whose values are key-value pairs by key
local function comp_key(a, b)
return a[1] < b[1]
end
-- sort sequence table whose values are key-value pairs by value
local function comp_val(a, b)
return a[2] < b[2]
end
--[[-------------------------< C I T E _ Q >------------------------------------------------------------------
Takes standard CS1|2 template parameters and passes all to {{citation}}. If neither of |author= and |author1=
are set, calls get_authors() to try to get an author name-list from Wikidata. The result is passed to
{{citation}} for rendering.
--]]
function p._cite_q (citeq_args)
local frame = mw.getCurrentFrame()
-- parameters that don't get passed to Citation
local expand = citeq_args.expand -- when set to anything, causes {{cite q}} to render <code><nowiki>{{citation|...}}</nowiki></code>
local qid = citeq_args.qid or citeq_args[1]
local wdl = citeq_args.wdl
local template = citeq_args.template
citeq_args.expand = nil
citeq_args[1] = nil
citeq_args.qid = nil
citeq_args.wdl = nil
citeq_args.template = nil
-- if title supplied, flag to not read html title
local titleforced = (citeq_args.title ~= nil)
local oth = {}
-- put the language codes into a sequential table langcodes[]
local langcodes = {}
if citeq_args.language then
-- check these are a supported language codes
for lc in mw.text.gsplit( citeq_args.language, "[, ]+", false ) do
langcodes[#langcodes+1] = mw.language.isSupportedLanguage(citeq_args.language) and citeq_args.language
end
end
if not langcodes[1] then
-- try to find language of work
langcodes = _lang_code(qid)
end
if not langcodes[1] then
-- try fallback to journal's language
local journal_qid = followQid({qid = qid, props = "P1433"})
langcodes = journal_qid and _lang_code(journal_qid)
end
citeq_args.language = citeq_args.language or table.concat(langcodes, ", ")
-- loop through list of simple properties and get their values in citeq_args
for name, data in pairs(simple_properties) do
citeq_args[name] = getValue( {data.id, fwd = "ALL", osd = "no", noicon = "true", qid = qid, maxvals = data.maxvals, linked = data.linked, rank = data.rank or "best", citeq_args[name] } )
if data.populate_from_journal then
local publishedin = getValue( {"P1433", ps = 1, qid = qid, maxvals = 0, citeq_args[name], qual = data.id, qualsonly = 'yes'} )
citeq_args[name] = publishedin or getPropOfProp({qid = qid, prop1 = "P1433", prop2 = data.id, maxvals = data.maxvals, ps = 1})
end
if citeq_args[name] and citeq_args[name]:find('[[Κατηγορίαν:Λήμμα με ελλειπή στοιχεία αντικειμένου Wikidata]]', 1, true) then
-- try fallback to work's native language
citeq_args[name] = getValue( {data.id, ps = 1, qid = qid, maxvals = data.maxvals, linked = "no", lang = langcodes[1] } )
if citeq_args[name]:find('^Q%d+$') then -- qid was returned
-- try fallback to qid's native language
local qid_languages = _lang_code(citeq_args[name])
citeq_args[name] = getValue( {data.id, ps = 1, qid = qid, maxvals = data.maxvals, linked = "no", lang = qid_languages[1] } )
if citeq_args[name]:find('^Q%d+$') then -- qid was returned again
citeq_args[name] = nil
else
-- record the language found if no lang specified
citeq_args.language = citeq_args.language or qid_languages[1]
end
end
end
if data.others then
oth[#oth + 1] = citeq_args[name] and (name:gsub("^%l", string.upper) .. ": " .. citeq_args[name])
citeq_args[name] = nil
end
end
citeq_args.others = citeq_args.others or table.concat(oth, ". ")
if citeq_args.others == "" then
citeq_args.others = nil
end
citeq_args.journal = citeq_args.journal and citeq_args.journal:gsub("^''", ""):gsub("''$", ""):gsub("|''", "|"):gsub("'']]", "]]")
citeq_args.ol = (getValue( {"P648", ps = 1, qid = qid, maxvals = 1, citeq_args.ol } ) or ''):gsub("^OL(.+)$", "%1")
if citeq_args.ol == "" then
citeq_args.ol = nil
end
-- TBD. Take care of |ol-access=?
citeq_args.biorxiv = citeq_args.biorxiv and ("10.1101/" .. citeq_args.biorxiv)
citeq_args.isbn = getValue( {"P957", ps = 1, qid = qid, maxvals = 1, rank="best", citeq_args.isbn } ) -- try ISBN 10 (only one value accepted)
-- if url then see if there's an archive: citeq_args.url
local url
if not citeq_args.url then
for i, pr in ipairs( {"P953", "P856", "P2699"} ) do
url = getValue( {pr, ps = 1, qid = qid, maxvals = 1, qual="P1065" } )
if url then
citeq_args.url = mw.text.split( url, " (", true )[1]
local arcurl = mw.ustring.match( url, " %((.*)%)" ) -- when there is an archive url, <url> holds: url<space>(archive url); here extract the archive url if present
if arcurl then
local arcy, arcm, arcd = arcurl:match("(20%d%d)%p?(%d%d)%p?(%d%d)")
if arcy and arcm and arcd then
citeq_args["archive-url"] = arcurl
citeq_args["archive-date"] = tonumber(arcd) .. " " .. i18n.months[tonumber(arcm)] .. " " .. arcy
end
end
break
end
end
end
if citeq_args.publisher == "Unknown" then -- look for "stated as" (P1932)
local stated_as = getValue( {"P123", ps = 1, qid = qid, maxvals = 1, qual="P1932", qo="y"} )
if stated_as then citeq_args.publisher = stated_as end
end
if not titleforced then
-- Handle subtitle.
if citeq_args.title then
local subtitle = mw.wikibase.getBestStatements (qid, 'P1680');
if 0 ~= #subtitle then
subtitle = subtitle[1].mainsnak.datavalue.value.text;
citeq_args.title = citeq_args.title .. ": " .. subtitle
end
end
local htmltitle = getValue( {"P1476", qual = "P6833", ps = 1, qid = qid, maxvals = 1, qo = "y"} )
if htmltitle then
citeq_args.title = htmltitle:gsub("</?i>", "''")
else
local title_display = citeq_args.title
or mw.wikibase.getLabel(qid)
or (langcodes[1] and mw.wikibase.getLabelByLang(qid, langcodes[1]))
or ("No label or title -- debug: " .. qid)
if citeq_args.url then
citeq_args.title = wrap_nowiki(title_display)
else
local slink = mw.wikibase.getSitelink(qid)
local slink_flag = false
local wrap_title = ''
local wslink = false
if not slink then
-- See if we have wikisource
if not citeq_args.url then
local wikisource_sitelink = mw.wikibase.getSitelink(qid, "enwikisource") or nil
if wikisource_sitelink then
slink = ':s:'..wikisource_sitelink
wslink = true
end
end
end
if citeq_args.title then
if slink then
wrap_title = wrap_nowiki(citeq_args.title)
slink_flag = true
else
citeq_args.title = wrap_nowiki(citeq_args.title)
end
else
if slink and not wslink then
if slink:lower() == title_display:lower() then
citeq_args.title = '[[' .. slink .. ']]'
else
wrap_title = wrap_nowiki(slink:gsub("%s%(.+%)$", ""):gsub(",.+$", ""))
slink_flag = true
end
elseif wslink then
wrap_title = wrap_nowiki(title_display)
slink_flag = true
else
citeq_args.title = wrap_nowiki(title_display)
end
end
if slink_flag then
if slink == wrap_title and not wslink then -- direct link
citeq_args.title = '[[' .. slink .. ']]'
else -- piped link
citeq_args.title = '[[' .. slink .. '|' .. wrap_title .. ']]'
end
end
end
end
end
-- TBD: incorporate |at, |sheets= and |sheet= here as well
-- Sort out what should happen if several of them are given at the same time
if citeq_args.page or citeq_args.p then -- let single take precedence over multiple
citeq_args.pages = nil
citeq_args.pp = nil
end
if citeq_args.pages then
local _, count = string.gsub(citeq_args.pages, "[,;%s]%d+", "")
if count == 1 then
citeq_args.page = citeq_args.pages
citeq_args.pages = nil
end
end
if is_set (qid) then
if not is_set (citeq_args.author) and not is_set (citeq_args.author1)
and not is_set (citeq_args.subject) and not is_set (citeq_args.subject1)
and not is_set (citeq_args.host) and not is_set (citeq_args.host1)
and not is_set (citeq_args.last) and not is_set (citeq_args.last1)
and not is_set (citeq_args.surname) and not is_set (citeq_args.surname1)
and not is_set (citeq_args['author-last']) and not is_set (citeq_args['author-last1']) and not is_set (citeq_args['author1-last'])
and not is_set (citeq_args['author-surname']) and not is_set (citeq_args['author-surname1']) and not is_set (citeq_args['author1-surname1']) then -- if neither are set, try to get authors from Wikidata
get_name_list ('author', citeq_args, qid, wdl) -- modify citeq_args table with authors from Wikidata
end
if not is_set (citeq_args.editor) and not is_set (citeq_args.editor1)
and not is_set (citeq_args['editor-last']) and not is_set (citeq_args['editor-last1']) and not is_set (citeq_args['editor1-last'])
and not is_set (citeq_args['editor-surname']) and not is_set (citeq_args['editor-surname1']) and not is_set (citeq_args['editor1-surname']) then -- if neither are set, try to get editors from Wikidata
get_name_list ('editor', citeq_args, qid, wdl) -- modify citeq_args table with editors from Wikidata
end
if not is_set (citeq_args.translator) and not is_set (citeq_args.translator1)
and not is_set (citeq_args['translator-last']) and not is_set (citeq_args['translator-last1']) and not is_set (citeq_args['translator1-last'])
and not is_set (citeq_args['translator-surname']) and not is_set (citeq_args['translator-surname1']) and not is_set (citeq_args['translator1-surname']) then -- if neither are set, try to get translators from Wikidata
get_name_list ('translator', citeq_args, qid, wdl) -- modify citeq_args table with translators from Wikidata
end
end
for k, v in pairs(citeq_args) do
if in_array (v, {'(())', 'unset', 'ignore'}) or 'string' ~= type(k) then -- empty accept-as-is-written (()) markup to indicate an empty/unused parameter value, other ((...)) markups are deliberately passed down to {{citation}}
citeq_args[k] = nil
elseif in_array (v, {'((unset))', '((ignore))'}) then -- strip off markup for free-text values clashing with local keywords
citeq_args[k] = 'unset'
end
end
local author_count = 0
for k, v in pairs(citeq_args) do
if k:find("^author%d+$") then
author_count = author_count + 1
end
end
if author_count > 8 then -- convention in astronomy journals, optional mode for this?
if 'all' == citeq_args['display-authors'] then
citeq_args['display-authors'] = nil; -- unset because no longer needed
else
citeq_args['display-authors'] = citeq_args['display-authors'] or 3 -- limit to three displayed names
end
end
local editor_count = 0
for k, v in pairs(citeq_args) do
if k:find("^editor%d+$") then
editor_count = editor_count + 1
end
end
if editor_count > 8 then -- convention in astronomy journals, optional mode for this?
if 'all' == citeq_args['display-editors'] then
citeq_args['display-editors'] = nil; -- unset because no longer needed
else
citeq_args['display-editors'] = citeq_args['display-editors'] or 3 -- limit to three displayed names
end
end
-- change edition to ordinal if it's set and numeric
citeq_args.edition = citeq_args.edition and p.makeOrdinal(citeq_args.edition)
-- code to make a guess what template to use from the supplied parameters
-- (first draft for proof-of-concept)
if citeq_args.isbn then
template = template or "book"
citeq_args.asin = nil -- suppress ASIN if ISBN exists
elseif citeq_args.journal then
template = template or "journal"
elseif citeq_args.website then
template = template or "web"
end
-- template is CS1 designator: journal, web, news, etc.
if template then
-- citeq_args.mode = citeq_args.mode or "cs1" -- a cs1 template already knows that it is cs1 so this line is superfluous
template = "Cite " .. template
else
-- citeq_args.mode = citeq_args.mode or "cs2" -- a cs2 template already knows that it is cs2 so this line is superfluous
template = "Citation"
end
-- |id= could hold more than one identifier pulled from Wikidata not supported by {{citation}}, right now only add our qid to the list
local list_sep = '. '
if citeq_args.mode ~= 'cs1' then
list_sep = ', '
end
local id = '[[Wikidata]] [[:d:' .. qid .. '|' .. qid .. ']]' -- go through "WDQ (identifier)" redirect to reduce clutter in "What links here" and improve reverse lookup. Keep in sync with {{QID}}.
local old_id = citeq_args.id
if wdl then -- show WD logo
id = id .. '[[File:Wikidata-logo.svg|16px|alt=|link=]]' -- possibly replace by WD edit icon?
end
if is_set (old_id) then
citeq_args.id = old_id .. list_sep .. id -- append to user-specified contents
else
citeq_args.id = id
end
-- clean up any blank parameters
for k, v in pairs(citeq_args) do
if v == "" then citeq_args[k] = nil end
end
-- if |expand=<anything>, write a nowiki'd version to see what the {{citation}} template call looks like
if expand then
local expand_args = { "{{" .. template } -- init with citation template
if expand == "self" then
citeq_args.id = old_id -- restore original |id= parameter
expand_args = { "{{cite Q|" .. qid } -- expand to itself
end
-- make a sortable table and sort it by param name
local sorttable = {}
for param, val in pairs (citeq_args) do
table.insert(sorttable, {param, val})
end
table.sort(sorttable, comp_key)
-- add contents to expand_args
for idx, val in ipairs(sorttable) do
table.insert(expand_args, val[1] .. '=' .. val[2])
end
-- make the nowiki'd string and done
return "<code>" .. table.concat (expand_args, ' |') .. "}}</code>"
end
local erratumid = getPropertyIDs( { "P2507", qid = qid, fwd = "ALL", osd = "no", rank = "best", maxvals = 1 } )
if erratumid then
erratumid = " [[d:" .. erratumid .. "|(erratum)]]" .. "[[Κατηγορίαν:Cite Q - αναφορά σε έργο με λάθος]]"
else
erratumid = ""
end
local opt_cat = ''
if getValue( {"P5824", ps = 1, qid = qid} ) then
opt_cat = '[[Κατηγορίαν:Cite Q - αναφορά σε έργο που έχει ανακληθεί]]<!-- retracted -->'
end
if getValue( {"P1366", ps = 1, qid = qid} ) then
opt_cat = opt_cat .. '[[Κατηγορίαν:Cite Q - αναφορά σε έργο που έχει αντικατασταθεί]]<!-- replaced -->'
end
return frame:expandTemplate{title = template, args = citeq_args} .. erratumid .. opt_cat -- render the template
end
function p.cite_q (frame)
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= "" then args[k] = v end
end
for k, v in pairs(frame.args) do
if v ~= "" then args[k] = v end
end
args.qid = args.qid or args[1] or ""
if args.qid == "" then return nil end
args[1] = nil
local citesep = (args.citesep or "")
if citesep == "" then citesep = ", " end
citesep = citesep:gsub('"', '') -- strip double quotes after setting default to allow |citesep="" as a blank separator
args.citesep = nil
local tag = args.tag or ""
if tag == "" then tag = nil end
args.tag = nil
local list = args.list or ""
if list == "" then list = nil end
args.list = nil
args.language = args.language or args.lang
args.lang = nil
local cites = {}
for q in args.qid:gmatch("Q%d+") do
-- make a new copy of the arguments
local newargs = {}
for k, v in pairs(args) do
if k ~= "qid" then
newargs[k] = v
end
end
newargs.qid = q
if tag == "ref" then
cites[#cites + 1] = frame:callParserFunction{ name = "#tag:ref", args = { p._cite_q(newargs), name = q } }
-- expand like this: args = { p._cite_q(newargs), name = 'foo', group = 'bar' }
else
cites[#cites + 1] = p._cite_q(newargs)
end
end
if list then
return frame:expandTemplate{ title = list, args = cites }
else
return table.concat(cites, citesep)
end
end
return p
8z1ihbnzakd88260zeos586tgddq8jw
Module:WikidataSelectors
828
3504
36725
2025-12-15T23:40:28Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local i18n = { ["errors"] = { ["rank-not-valid"] = "Некорретное значение приоритета (rank)", ["cant-parse-condition"] = "Не удалось разобрать условие" } } local validRanks = { 'best', 'preferred', 'normal', 'deprecated' } --[[ Internal function for error message Input: key in errors table Output: error message ]] local function throwError( key ) error(...'
36725
Scribunto
text/plain
local i18n = {
["errors"] = {
["rank-not-valid"] = "Некорретное значение приоритета (rank)",
["cant-parse-condition"] = "Не удалось разобрать условие"
}
}
local validRanks = {
'best',
'preferred',
'normal',
'deprecated'
}
--[[
Internal function for error message
Input: key in errors table
Output: error message
]]
local function throwError( key )
error( i18n.errors[key] )
end
local p = {}
--[[
Main function for parse selectors and filter statements
Input: statements table, selector string
Output: filtered statements table
]]
function p.filter( allClaims, propertySelector )
propertySelector = mw.text.trim( propertySelector )
-- Get property ID from selector
local propertyId = mw.ustring.match( propertySelector, '^[Pp]%d+' )
if not propertyId then
propertyId = ''
end
local initPos = #propertyId + 1
propertyId = string.upper( propertyId )
if ( not allClaims ) then
return nil
end
local allPropertyClaims = allClaims[propertyId]
if ( not allPropertyClaims ) then
return nil
end
-- Gathering rules
local rules = p.matchSelectors( propertySelector, initPos )
-- If there is no rank filter, than default rank is 'best'
local isRanked = false
for i, subRules in ipairs( rules ) do
for j, rule in ipairs( subRules ) do
if rule['type'] == 'rank' then
isRanked = true
break
end
end
end
if not isRanked then
table.insert( rules, 1, { { type = 'rank', value = 'best' } } )
end
-- Execute rules
allPropertyClaims = p.applyRules( allPropertyClaims, rules )
return allPropertyClaims
end
--[[
Match and gather selector rules
Input: string with selectors rules, start position
Output: rules table
]]
function p.matchSelectors( selectorsString, initPos )
local rules = {}
local rawRulePattern = '^%s*%[%s*[^%[%]]+%s*%]%s*'
local rulePattern = '^%s*%[%s*([^%[%]]+)%s*%]%s*$'
if not initPos then
initPos = 1
end
local rawRule = mw.ustring.match( selectorsString, rawRulePattern, initPos )
while rawRule do
initPos = initPos + #rawRule
rule = mw.ustring.match( rawRule, rulePattern )
rule = mw.text.trim( rule )
local subRules = mw.text.split( rule, '%s*,%s*' )
local commands = {}
local comm
for i, subRule in ipairs( subRules ) do
local isInversed = false
if mw.ustring.match( subRule, '^!' ) then
isInversed = true
subRule = mw.ustring.match( subRule, '^!%s*(.+)$' )
end
-- p123[1]
if mw.ustring.match( subRule, '^%d+$' ) then
table.insert( commands, {
type = 'position',
value = subRule,
inversed = isInversed
} )
-- p123[rank:preferred]
elseif mw.ustring.match( subRule, '^rank%s*:%s*(%a+)$' ) then
rank = mw.ustring.match( subRule, '^rank%s*:%s*(%a+)$' )
table.insert( commands, {
type = 'rank',
value = rank,
inversed = isInversed
} )
-- p123[language:xx]
elseif mw.ustring.match( subRule, '^language%s*:%s*([%a%-]+)$' ) then
value = mw.ustring.match( subRule, '^language%s*:%s*([%a%-]+)$' )
table.insert( commands, {
type = 'language',
value = value,
inversed = isInversed
} )
-- p123[language!:xx]
elseif mw.ustring.match( subRule, '^language%s*!:%s*([%a%-]+)$' ) then
value = mw.ustring.match( subRule, '^language%s*!:%s*([%a%-]+)$' )
table.insert( commands, {
type = 'language',
value = value,
inversed = not isInversed
} )
-- p123[unit:q789]
elseif mw.ustring.match( subRule, '^unit%s*:%s*[^%[%],:]+$' ) then
value = mw.ustring.match( subRule, ':%s*([^%[%],:]+)$' )
table.insert( commands, {
type = 'unit',
value = value,
inversed = isInversed
} )
-- p123[unit!:q789]
elseif mw.ustring.match( subRule, '^unit%s*!:%s*[^%[%],:]+$' ) then
value = mw.ustring.match( subRule, '!:%s*([^%[%],:]+)$' )
table.insert( commands, {
type = 'unit',
value = value,
inversed = not isInversed
} )
-- p123[p456]
elseif mw.ustring.match( subRule, '^[Pp]%d+$' ) then
qualifier = mw.ustring.match( subRule, '^[Pp]%d+' )
table.insert( commands, {
type = 'qualifier',
qualifier = qualifier,
value = nil,
inversed = isInversed
} )
-- p123[p456:q789]
elseif mw.ustring.match( subRule, '^[Pp]%d+%s*:%s*[^%[%],:]+$' ) then
qualifier = mw.ustring.match( subRule, '^([Pp]%d+)%s*:?' )
value = mw.ustring.match( subRule, ':%s*([^%[%],:]+)$' )
table.insert( commands, {
type = 'qualifier',
qualifier = qualifier,
value = value,
inversed = isInversed
} )
-- p123[p456!:q789]
elseif mw.ustring.match( subRule, '^[Pp]%d+%s*!:%s*[^%[%],:]+$' ) then
qualifier = mw.ustring.match( subRule, '^([Pp]%d+)%s*!:?' )
value = mw.ustring.match( subRule, '!:%s*([^%[%],:]+)$' )
table.insert( commands, {
type = 'qualifier',
qualifier = qualifier,
value = value,
inversed = not isInversed
} )
-- p123[q456]
elseif mw.ustring.match( subRule, '^[Qq]%d+$' ) then
value = mw.ustring.match( subRule, '^[Qq]%d+' )
table.insert( commands, {
type = 'value',
value = value,
inversed = isInversed
} )
else
throwError( 'cant-parse-condition' )
end
end
if #commands then
table.insert( rules, commands )
end
rawRule = mw.ustring.match( selectorsString, rawRulePattern, initPos )
end
return rules
end
--[[
Intercept statements with selector rules
Input: statements table, selector rules
Output: filtered statements table
]]
function p.applyRules( claims, rules )
for i, subRules in ipairs( rules ) do
local newClaims = {}
for j, rule in ipairs( subRules ) do
if rule['type'] == 'rank' then
table.insert( newClaims, p.filterByRank( claims, rule['value'], rule['inversed'] ) )
elseif rule['type'] == 'language' then
table.insert( newClaims, p.filterByLanguage( claims, rule['value'], rule['inversed'] ) )
elseif rule['type'] == 'unit' then
table.insert( newClaims, p.filterByUnit( claims, rule['value'], rule['inversed'] ) )
elseif rule['type'] == 'position' then
table.insert( newClaims, p.filterByPosition( claims, rule['value'], rule['inversed'] ) )
elseif rule['type'] == 'qualifier' then
table.insert( newClaims, p.filterByQualifier( claims, rule['qualifier'], rule['value'], rule['inversed'] ) )
elseif rule['type'] == 'value' then
table.insert( newClaims, p.filterByValue( claims, rule['value'], rule['inversed'] ) )
end
end
claims = {}
--[[
Merge all claims
TODO: It's not good
]]
for j, newSubClaims in ipairs( newClaims ) do
for k, newClaim in ipairs( newSubClaims ) do
local isNew = true
for l, oldClaim in ipairs( claims ) do
if oldClaim['id'] == newClaim['id'] then
isNew = false
break
end
end
if isNew then
table.insert( claims, newClaim )
end
end
end
end
return claims
end
--[[
Filter statements by rank
Input: claims table, rank value, inversion
Output: filtered statements table
]]
function p.filterByRank( claims, rank, inversed )
if not inversed then
inversed = false
end
if not rank then
rank = 'best'
end
-- Check if rank value is valid
local isValidRank = false
for i, validRank in ipairs( validRanks ) do
if rank == validRank then
isValidRank = true
break
end
end
if not isValidRank then
throwError( 'rank-not-valid' )
end
-- Find the best rank
if rank == 'best' then
rank = 'normal' -- default rank (don't use deprecated even if it's no more claims)
-- If we have at least one preferred rank, mark it as best
for i, statement in pairs( claims ) do
if (statement.rank == 'preferred') then
rank = 'preferred'
break
end
end
end
local resultClaims = {};
for i, statement in pairs( claims ) do
if ( statement.rank == rank ) ~= inversed then
table.insert( resultClaims, statement )
end
end
return resultClaims
end
--[[
Filter statements by language of value
Input: claims table, language, inversion
Output: filtered statements table
]]
function p.filterByLanguage( claims, language, inversed )
if not inversed then
inversed = false
end
local resultClaims = {}
local mulStatement = {}
for i, statement in ipairs( claims ) do
isMatchLanguage = false
if statement['mainsnak']
and statement['mainsnak']['datavalue']
and statement['mainsnak']['datavalue']['value']
and statement['mainsnak']['datavalue']['value']['language'] then
if statement['mainsnak']['datavalue']['value']['language'] == language then
isMatchLanguage = true
end
if statement['mainsnak']['datavalue']['value']['language'] == 'mul' then
mulStatement = statement
end
end
if isMatchLanguage ~= inversed then
table.insert( resultClaims, statement )
end
end
if next(resultClaims) == nil and next(mulStatement) ~= nil then
-- if specific language is not found, but there is Q20923490 value
table.insert( resultClaims, mulStatement )
end
return resultClaims
end
--[[
Filter statements by unit of value
Input: claims table, unit, inversion
Output: filtered statements table
]]
function p.filterByUnit( claims, unit, inversed )
if not inversed then
inversed = false
end
unit = 'http://www.wikidata.org/entity/' .. string.upper( unit )
local resultClaims = {}
for i, statement in ipairs( claims ) do
isMatchUnit = false
mw.log(statement['mainsnak']['datavalue']['value']['unit'])
if statement['mainsnak']
and statement['mainsnak']['datavalue']
and statement['mainsnak']['datavalue']['value']
and statement['mainsnak']['datavalue']['value']['unit']
and statement['mainsnak']['datavalue']['value']['unit'] == unit then
isMatchUnit = true
end
if isMatchUnit ~= inversed then
table.insert( resultClaims, statement )
break
end
end
return resultClaims
end
--[[
Filter statements by position
Input: claims table, position, inversion
Output: filtered statements table
]]
function p.filterByPosition( claims, position, inversed )
if not inversed then
inversed = false
end
local resultClaims = {};
for statementPosition, statement in ipairs( claims ) do
if ( statementPosition == tonumber( position ) ) ~= inversed then
table.insert( resultClaims, statement )
break
end
end
return resultClaims
end
--[[
Filter statements by qualifier existance or it's value
Input: claims table, ID of qualifier's property, qualifier's value, inversion
Output: filtered statements table
]]
function p.filterByQualifier( claims, qualifierId, value, inversed )
if not inversed then
inversed = false
end
qualifierId = string.upper( qualifierId )
local resultClaims = {}
for i, statement in ipairs( claims ) do
if statement['qualifiers'] and statement['qualifiers'][qualifierId] then
if value == nil then
if ( #statement['qualifiers'][qualifierId] > 0 ) ~= inversed then
table.insert( resultClaims, statement )
end
else
local isQualifierFound = false
for j, qualifier in ipairs( statement['qualifiers'][qualifierId] ) do
if qualifier['datavalue'] then
local qualifierValue = qualifier['datavalue']['value']
if qualifier['datavalue']['type'] == 'wikibase-entityid' then
qualifierValue = qualifierValue.id
value = string.upper( value )
end
if qualifierValue == value then
isQualifierFound = true
break
end
end
end
if isQualifierFound ~= inversed then
table.insert( resultClaims, statement )
end
end
elseif inversed then
table.insert( resultClaims, statement )
end
end
return resultClaims
end
--[[
Filter statements by it's values
Input: claims table, value, inversion
Output: filtered statements table
]]
function p.filterByValue( claims, value, inversed )
inversed = inversed or false
local resultClaims = {}
for i, statement in ipairs( claims ) do
local statementValue
if statement['mainsnak']
and statement['mainsnak']['datavalue']
and statement['mainsnak']['datavalue']['type']
then
statementValue = statement['mainsnak']['datavalue']['value']
if statement['mainsnak']['datavalue']['type'] == 'wikibase-entityid' then
statementValue = statementValue.id
value = string.upper( value )
end
end
if ( statementValue == value ) ~= inversed then
table.insert( resultClaims, statement )
end
end
return resultClaims
end
return p
dgs7leacxawrx1vnd3gcolpau5uo2zp
Module:WLink
828
3505
36726
2025-12-15T23:42:30Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local WLink = { suite = "WLink", serial = "2016-10-05" }; --[=[ ansiPercent() formatURL() getArticleBase() getBaseTitle() getExtension() getFile() getFragment() getLanguage() getNamespace() getPlain() getProject() getTarget() getTargetPage() getTitle() getWeblink() isBracketedLink() isBracketedURL() isCategorization() isExternalLink() isInterlanguage() isInterwiki() isMedia() isTitledLink() isValidLink() isWikilink() wikilink() fai...'
36726
Scribunto
text/plain
local WLink = { suite = "WLink",
serial = "2016-10-05" };
--[=[
ansiPercent()
formatURL()
getArticleBase()
getBaseTitle()
getExtension()
getFile()
getFragment()
getLanguage()
getNamespace()
getPlain()
getProject()
getTarget()
getTargetPage()
getTitle()
getWeblink()
isBracketedLink()
isBracketedURL()
isCategorization()
isExternalLink()
isInterlanguage()
isInterwiki()
isMedia()
isTitledLink()
isValidLink()
isWikilink()
wikilink()
failsafe()
]=]
-- local globals
local URLutil = false;
local utilURL = function ()
-- Attach URLutil library module
-- Postcondition:
-- Returns table, with URLutil library
-- Throws error, if not available
if not URLutil then
local lucky, util = pcall( require, "Module:URLutil" );
if lucky then
if type( util ) == "table" then
URLutil = util.URLutil();
end
util = "library URLutil invalid";
end
if type( URLutil ) ~= "table" then
error( util, 0 );
end
end
return URLutil;
end -- utilURL()
local contentExtlink = function ( attempt )
-- Retrieve span of external link between brackets
-- Precondition:
-- attempt -- string, with presumable link
-- the first char is expected to be "["
-- Postcondition:
-- Returns string, number, number
-- string including whitespace
-- number with index of relevant "["
-- number with index after relevant "]"
-- false if nothing found
local r1 = false;
local r2 = false;
local r3 = attempt:find( "]", 2, true );
if r3 then
local s = attempt:sub( 2, r3 - 1 );
local i = s:find( "[", 1, true );
if i then
r1 = s:sub( i + 1 );
r2 = i;
else
r1 = s;
r2 = 1;
end
else
r3 = false;
end
return r1, r2, r3;
end -- contentExtlink()
local contentWikilink = function ( attempt )
-- Retrieve span of wikilink between brackets
-- Precondition:
-- attempt -- string, with presumable link
-- the first two chars are expected to be "[["
-- Postcondition:
-- Returns string, number, number
-- string including whitespace
-- number with index of relevant "[["
-- number with index after relevant "]]"
-- false if nothing found
local r1 = false;
local r2 = false;
local r3 = attempt:find( "]]", 3, true );
if r3 then
local s = attempt:sub( 3, r3 - 1 );
local i = s:find( "[[", 1, true );
if i then
r1 = s:sub( i + 2 );
r2 = i;
else
r1 = s;
r2 = 1;
end
end
return r1, r2, r3;
end -- contentWikilink()
local extractExtlink = function ( attempt )
-- Retrieve external link
-- Precondition:
-- attempt -- string, with presumable link
-- the first char is expected to be "["
-- Postcondition:
-- Returns string, string
-- first with target and title
-- second result false if not titled
-- false if nothing found
local r1 = false;
local r2 = false;
local s = contentExtlink( attempt );
if s then
local i = s:find( "%s", 1 );
if i then
r1 = s:sub( 1, i - 1 );
r2 = mw.text.trim( s:sub( i + 1 ) );
if r2 == "" then
r2 = false;
end
else
r1 = s;
end
if r1 then
r1 = mw.text.trim( r1 );
if r1 == "" or
not utilURL().isResourceURL( r1 ) then
r1 = false;
end
end
if not r1 then
r2 = false;
end
end
return r1, r2;
end -- extractExtlink()
local extractWikilink = function ( attempt )
-- Retrieve wikilink
-- Precondition:
-- attempt -- string, with presumable link
-- the first two chars are expected to be "[["
-- Postcondition:
-- Returns string, string
-- first with target
-- second result title, or false if not piped
-- false if nothing found
local r1 = false;
local r2 = false;
local s = contentWikilink( attempt );
if s then
local i = s:find( "|", 1, true );
if i then
r1 = s:sub( 1, i - 1 );
r2 = s:sub( i + 1 );
else
r1 = s;
end
r1 = mw.text.trim( r1 );
if r1 == "" then
r1 = false;
else
r1 = r1:gsub( "_", " " )
:gsub( " ", " " )
:gsub( " ", " " )
:gsub( " ", " " )
:gsub( " ", " " )
:gsub( " +", " " );
r1 = mw.text.decode( r1 );
end
end
return r1, r2;
end -- extractWikilink()
local prefix = function ( ask, ahead )
-- Interprete prefix of language or project type
-- Precondition:
-- ask -- string, with presumable prefix
-- ahead -- true, if first segment
-- Postcondition:
-- Returns string,string or nil
-- first string one of "lead", "lang", "project"
-- second string is formatted value
-- type is one of "lead", "lang", "project"
-- nil if nothing found
local r1, r2;
local prefixes = { b = true,
c = "commons",
d = true,
commons = true,
m = "meta",
mediawiki = "mw",
mw = true,
meta = true,
n = true,
q = true,
s = true,
simple = false,
v = true,
voy = true,
w = true,
wikibooks = "b",
wikidata = "d",
wikinews = "n",
wikipedia = "w",
wikiquote = "q",
wikisource = "s",
wikiversity = "v",
wikivoyage = "voy",
wikt = true,
wiktionary = "wikt"
};
local s = mw.text.trim( ask );
if s == "" then
if ahead then
r1 = "lead";
r2 = true;
end
else
local p;
s = s:lower();
p = prefixes[ s ];
if p == true then
r1 = "project";
r2 = s;
elseif p then
r1 = "project";
r2 = p;
elseif p == false then
r1 = "lang";
r2 = s;
elseif s:match( "^%l%l%l?$" )
and mw.language.isSupportedLanguage( s ) then
r1 = "lang";
r2 = s;
end
end
return r1, r2;
end -- prefix()
local target = function ( attempt, lonely )
-- Retrieve first target (wikilink or URL), or entire string
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- lonely -- remove fragment, if true
-- Postcondition:
-- Returns string, number
-- string, with detected link target, or entire
-- number, with number of brackets, if found, or 2
local r1, r2 = WLink.getTarget( attempt );
if not r1 then
r1 = mw.text.trim( attempt );
r2 = 2;
end
if lonely then
local i = r1:find( "#", 1, true );
if i == 1 then
r1 = "";
elseif i then
r1 = r1:sub( 1, i - 1 );
end
end
return r1, r2;
end -- target()
function WLink.ansiPercent( attempt, alter )
-- Convert string by ANSI encoding rather than UTF-8 encoding
-- Precondition:
-- attempt -- string, with presumable ANSI characters
-- alter -- string or nil, to use for spaces instead of %20
-- Postcondition:
-- Returns string, encoded
local k, s;
local r = attempt;
if alter then
r = r:gsub( " ", alter );
end
for i = mw.ustring.len( r ), 1, -1 do
k = mw.ustring.codepoint( r, i, i );
if k <= 32 or k > 126 then
if k > 255 then
s = mw.ustring.sub( r, i, i );
if k > 2047 then
s = string.format( "%%%2X%%%2X%%%2X",
s:byte( 1, 1 ),
s:byte( 2, 2 ),
s:byte( 3, 3 ) );
else
s = string.format( "%%%2X%%%2X",
s:byte( 1, 1 ),
s:byte( 2, 2 ) );
end
else
s = string.format( "%%%2X", k );
end
r = string.format( "%s%s%s",
mw.ustring.sub( r, 1, i - 1 ),
s,
mw.ustring.sub( r, i + 1 ) );
end
end -- for --i
r = mw.ustring.gsub(r, '^%*', '%%2A')
return r;
end -- WLink.ansiPercent()
function WLink.formatURL( adjust )
-- Create bracketed link, if not yet
-- Precondition:
-- adjust -- string, with URL or domain/path or bracketed link
-- Postcondition:
-- Returns string, with bracketed link
-- false on invalid format
local r;
if type( adjust ) == "string" then
if WLink.isBracketedLink( adjust ) then
r = adjust;
else
local url = mw.text.trim( adjust );
local host;
utilURL();
host = URLutil.getHost( adjust );
if not host then
url = "http://" .. adjust;
host = URLutil.getHost( url );
end
if host then
local path = URLutil.getRelativePath( url );
local show;
if path == "/" then
if not url:match( "/$" ) then
url = url .. "/";
end
show = host;
else
local i = path:find( "#" );
if i then
path = path:sub( 1, i - 1 );
end
show = host .. path;
end
r = string.format( "[%s %s]", url, show );
else
r = adjust;
end
end
else
r = false;
end
return r;
end -- WLink.formatURL()
function WLink.getArticleBase( attempt )
-- Retrieve generic article title, no fragment nor brackets
-- Precondition:
-- attempt -- string, with wikilink or page title
-- current page title, if missing
-- Postcondition:
-- Returns string, with identified lemma, or all
-- false on invalid format
local r;
if attempt then
local m;
r, m = target( attempt, true );
if m ~= 2 then
r = false;
end
else
r = mw.title.getCurrentTitle().text;
end
if r then
local sub = r:match( "^(.*%S) *%(.+%)$" );
if sub then
r = sub;
end
end
return r;
end -- WLink.getArticleBase()
function WLink.getBaseTitle( attempt )
-- Retrieve last segment in subpage, no fragment
-- Precondition:
-- attempt -- string, with wikilink or page title
-- Postcondition:
-- Returns string, with identified segment, or all
local r;
local s, m = target( attempt, true );
if m == 2 then
local sub = s:match( "/([^/]+)$" );
if sub then
r = sub;
else
r = s;
end
else
r = false;
end
return r;
end -- WLink.getBaseTitle()
function WLink.getExtension( attempt )
-- Retrieve media extension
-- Precondition:
-- attempt -- string, with wikilink (media link) or page title
-- if URL, PDF may be detected
-- Postcondition:
-- Returns string, with detected downcased media type
-- false if no extension found
local r = false;
local s, m = target( attempt );
if m == 2 then
s = s:match( "%.(%a+)$" );
if s then
r = s:lower();
end
elseif s:upper():match( "[%./](PDF)%W?" ) then
r = "pdf";
end
return r;
end -- WLink.getExtension()
function WLink.getFile( attempt )
-- Retrieve media page identifier
-- Precondition:
-- attempt -- string, with wikilink (media link) or page title
-- Postcondition:
-- Returns string, with detected file title
-- no namespace nor project
-- false if no file found
local r = false;
local s, m = target( attempt );
if m == 2 then
local slow = ":" .. s:lower();
local find = function ( a )
local seek = string.format( ":%s:().+%%.%%a+$",
a:lower() );
local join = slow:find( seek );
local ret;
if join then
ret = s:sub( join + #a + 1 );
end
return ret;
end;
r = find( "file" );
if not r then
local trsl = mw.site.namespaces[6];
r = find( trsl.name );
if not r then
trsl = trsl.aliases;
for k, v in pairs( trsl ) do
r = find( v );
if r then
break; -- for k, v
end
end -- for k, v
end
end
end
return r;
end -- WLink.getFile()
function WLink.getFragment( attempt )
-- Retrieve fragment
-- Precondition:
-- attempt -- string, with presumable fragment
-- Postcondition:
-- Returns string, with detected fragment
-- false if no address found
local r = false;
local s, m = target( attempt );
if s then
local i = s:find( "#", 1, true );
if i then
if i > 1 then
s = s:sub( i - 1 );
i = 2;
end
if s:find( "&#", 1, true ) then
s = mw.text.decode( s );
i = s:find( "#", 1, true );
if not i then
s = "";
i = 0;
end
end
s = s:sub( i + 1 );
r = mw.text.trim( s );
if r == "" then
r = false;
elseif m == 2 then
r = r:gsub( "%.(%x%x)", "%%%1" )
:gsub( "_", " " );
r = mw.uri.decode( r, "PATH" );
end
end
end
return r;
end -- WLink.getFragment()
function WLink.getLanguage( attempt )
-- Retrieve language project identifier
-- Precondition:
-- attempt -- string, with wikilink or page title
-- Postcondition:
-- Returns string, with detected downcased language identifier
-- false if no project language found
local r = false;
local s, m = WLink.getTarget( attempt );
if m == 2 then
local w = WLink.wikilink( s );
if w and w.lang then
r = w.lang;
end
end
return r;
end -- WLink.getLanguage()
function WLink.getNamespace( attempt )
-- Retrieve namespace number
-- Precondition:
-- attempt -- string, with wikilink or page title
-- Postcondition:
-- Returns number, of detected namespace
-- false if no namespace found
local r = false;
local s, m = WLink.getTarget( attempt );
if m == 2 then
local w = WLink.wikilink( s );
if w and not w.lang and not w.project and w.ns then
r = w.ns;
end
end
return r;
end -- WLink.getNamespace()
function WLink.getPlain( attempt )
-- Retrieve text with all links replaced by link titles
-- Precondition:
-- attempt -- string, with wikitext
-- Postcondition:
-- Returns string, with modified wikitext without links
local r = attempt;
local i = 1;
local j, k, n, lean, s, shift, space, suffix;
while ( true ) do
j = r:find( "[", i, true );
if j then
suffix = r:sub( j );
i = j + 1;
lean = ( r:byte( i, i ) == 91 );
if lean then
s, k, n = contentWikilink( suffix );
else
s, k, n = contentExtlink( suffix );
end
if s then
if k > 1 then
n = n - k;
i = j + k;
j = i - 1;
suffix = r:sub( j );
end
if lean then
s, shift = extractWikilink( suffix );
if s then
space = s:match( "^([^:]+):" );
if space then
space = mw.site.namespaces[ space ];
if space then
space = space.id;
end
end
if space == 6 or space == 14 then
shift = "";
elseif not shift then
shift = s;
end
else
s = "";
shift = "";
end
else
s, shift = extractExtlink( suffix );
if not s then
s = "";
end
if not shift then
shift = "";
end
i = i - 1;
end
if j > 1 then
s = r:sub( 1, j - 1 );
else
s = "";
end
r = string.format( "%s%s%s",
s, shift, r:sub( n + i ) );
i = i + #shift;
else
break; -- while true
end
else
break; -- while true
end
end -- while true
return r;
end -- WLink.getPlain()
function WLink.getProject( attempt )
-- Retrieve wikifarm project identifier
-- Precondition:
-- attempt -- string, with wikilink or page title
-- Postcondition:
-- Returns string, with detected downcased project identifier
-- false if no project identifier found
local r = false;
local s, m = WLink.getTarget( attempt );
if m == 2 then
local w = WLink.wikilink( s );
if w and w.project then
r = w.project;
end
end
return r;
end -- WLink.getProject()
function WLink.getTarget( attempt )
-- Retrieve first target (wikilink or URL)
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns string, number
-- string, with first detected link target
-- number, with number of brackets, if found
-- false if nothing found
local r1 = false;
local r2 = false;
local i = attempt:find( "[", 1, true );
if i then
local m;
r1 = attempt:sub( i );
if r1:byte( 2, 2 ) == 91 then
m = 2;
r1 = extractWikilink( r1 );
else
m = 1;
r1 = extractExtlink( r1 );
end
if r1 then
r2 = m;
end
else
r1 = attempt:match( "%A?([hf]t?tps?://%S+)%s?" );
if r1 then
if utilURL().isResourceURL( r1 ) then
r2 = 0;
else
r1 = false;
end
else
r1 = false;
end
end
return r1, r2;
end -- WLink.getTarget()
function WLink.getTargetPage( attempt )
-- Retrieve first target page (page name or URL of page)
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns string, with first detected linked page
-- false if nothing found
local r1, r2 = WLink.getTarget( attempt );
if r1 then
local i = r1:find( "#", 1, true );
if i then
if i == 1 then
r1 = false;
else
r1 = mw.text.trim( r1:sub( 1, i - 1 ) );
end
end
end
return r1, r2;
end -- WLink.getTargetPage()
function WLink.getTitle( attempt )
-- Retrieve first link title (wikilink or URL), or wikilink target
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns string, with first detected link target
-- false if nothing found
local r = false;
local i = attempt:find( "[", 1, true );
if i then
local s1, s2;
r = attempt:sub( i );
if r:byte( 2, 2 ) == 91 then
s1, s2 = extractWikilink( r );
if s2 then
r = s2;
else
r = s1;
end
else
s1, r = extractExtlink( r );
end
end
return r;
end -- WLink.getTitle()
function WLink.getWeblink( attempt, anURLutil )
-- Retrieve bracketed link from resource URL
-- Precondition:
-- attempt -- string, with URL, or something different
-- anURLutil -- library module object, or nil
-- Postcondition:
-- Returns string, with first detected link target
-- false if nothing found
local second = ".ac.co.go.gv.or.";
local r;
if type( anURLutil ) == "table" then
URLutil = anURLutil;
else
utilURL();
end
if URLutil.isResourceURL( attempt ) then
local site = URLutil.getAuthority( attempt );
local show;
if #attempt == #site then
site = site .. "/";
end
show = URLutil.getTop3domain( "//" .. site );
if show then
local scan = "[%./](%a+)(%.%l%l%.)(%a+)$";
local search = "." .. show;
local s1, s2, s3 = search:match( scan );
if s2 then
if not second:find( s2, 1, true ) then
show = string.format( "%s.%s", s2, s3 );
end
else
show = false;
end
end
if not show then
show = URLutil.getTop2domain( "//" .. site );
if not show then
show = URLutil.getHost( "//" .. site );
end
end
r = string.format( "[%s %s]", attempt, show );
else
r = attempt;
end
return r;
end -- WLink.getWeblink()
function WLink.isBracketedLink( attempt )
-- Does attempt match a bracketed link?
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns boolean
local r = false;
local i = attempt:find( "[", 1, true );
if i then
local s = attempt:sub( i );
if s:byte( 2, 2 ) == 91 then
s = extractWikilink( s );
else
s = extractExtlink( s );
end
if s then
r = true;
end
end
return r;
end -- WLink.isBracketedLink()
function WLink.isBracketedURL( attempt )
-- Does attempt match a bracketed URL?
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns boolean
local s, r = WLink.getTarget( attempt );
return ( r == 1 );
end -- WLink.isBracketedURL()
function WLink.isCategorization( attempt )
-- Does attempt match a categorization?
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns boolean
local r = false;
local s, m = WLink.getTarget( attempt );
if m == 2 then
local w = WLink.wikilink( s );
if w and w.ns == 14
and not ( w.lead or w.lang or w.project )
and w.title ~= "" then
r = true;
end
end
return r;
end -- WLink.isCategorization()
function WLink.isExternalLink( attempt )
-- Does attempt match an external link?
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns boolean
local s, r = WLink.getTarget( attempt );
if r then
r = ( r < 2 );
end
return r;
end -- WLink.isExternalLink()
function WLink.isInterlanguage( attempt )
-- Does attempt match an interlanguage link?
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns boolean
local r = false;
local s, m = WLink.getTarget( attempt );
if m == 2 then
local w = WLink.wikilink( s );
if w and w.lang and not w.project and not w.lead
and w.title ~= "" then
r = true;
end
end
return r;
end -- WLink.isInterlanguage()
function WLink.isInterwiki( attempt )
-- Does attempt match an interwiki link within wikifarm?
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns boolean
local r = false;
local s, m = WLink.getTarget( attempt );
if m == 2 then
local w = WLink.wikilink( s );
if w and ( w.lang or w.project ) and w.title ~= "" then
r = true;
end
end
return r;
end -- WLink.isInterwiki()
function WLink.isMedia( attempt )
-- Does attempt match a media translusion?
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns boolean
local r = false;
local s, m = WLink.getTarget( attempt );
if m == 2 then
local w = WLink.wikilink( s );
if w and w.ns == 6
and not ( w.lead or w.lang or w.project )
and w.title ~= ""
and WLink.getExtension( w.title ) then
r = true;
end
end
return r;
end -- WLink.isMedia()
function WLink.isTitledLink( attempt )
-- Does attempt match a titled link?
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns boolean
local r = false;
local i = attempt:find( "[", 1, true );
if i then
local c, n;
local s = attempt:sub( i );
if s:byte( 2, 2 ) == 91 then
n = s:find( "%]%]", 5 );
c = "|";
else
n = s:find( "%]", 8 );
c = "%s%S";
end
if n then
local m = s:find( c, 2 );
if m and m + 1 < n and WLink.getTarget( attempt ) then
r = true;
end
end
end
return r;
end -- WLink.isTitledLink()
function WLink.isValidLink( attempt )
-- Does attempt match a link?
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns boolean
local s, r = WLink.getTarget( attempt );
if r then
r = true;
end
return r;
end -- WLink.isValidLink()
function WLink.isWikilink( attempt )
-- Does attempt match a wikilink?
-- Precondition:
-- attempt -- string, with presumable link somewhere
-- Postcondition:
-- Returns boolean
local s, m = WLink.getTarget( attempt );
return ( m == 2 );
end -- WLink.isWikilink()
function WLink.wikilink( attempt )
-- Retrieve wikilink components
-- Precondition:
-- attempt -- string, with presumable link
-- expected to be enclosed in "[[" "]]"
-- else wikilink
-- Postcondition:
-- Returns table or false
-- table of assignments with { type, value}
-- type is one of "lead",
-- "project", "lang",
-- "ns", "space", "title"
-- false if nothing found
local s = contentWikilink( attempt );
local got, n, r;
if not s then
s = attempt;
end
i = s:find( "|", 1, true );
if i then
s = s:sub( 1, i - 1 );
end
got = mw.text.split( s, ":" );
n = table.maxn( got );
if n == 1 then
r = { title = mw.text.trim( s ) };
else
local j, k, o, v;
r = { title = "" };
if n > 4 then
k = 4;
else
k = n - 1;
end
j = k;
for i = 1, j do
s = mw.text.trim( got[ i ] );
if s ~= "" then
o = mw.site.namespaces[ mw.text.trim( got[ i ] ) ];
if o then
r.ns = o.id;
r.space = o.name;
k = i + 1;
j = i - 1;
break; -- for i
end
end
end -- for i
for i = 1, j do
o, v = prefix( got[ i ], ( i == 1 ) );
if o then
if r[ o ] then
k = i;
break; -- for i
else
r[ o ] = v;
end
else
k = i;
break; -- for i
end
end -- for i
for i = k, n do
r.title = r.title .. got[ i ];
if i < n then
r.title = r.title .. ":";
end
end -- for i
end
if r.lead and
( r.project or not r.title or
( not r.lang and r.ns ~= 6 and r.ns ~= 14 ) ) then
r.lead = false;
end
return r;
end -- WLink.wikilink()
function WLink.failsafe( assert )
-- Retrieve versioning and check for compliance
-- Precondition:
-- assert -- string, with required version, or false
-- Postcondition:
-- Returns string with appropriate version, or false
local r;
if assert and assert > WLink.serial then
r = false;
else
r = WLink.serial;
end
return r
end -- WLink.failsafe()
local function Template( frame, action, leave, lone )
-- Run actual code from template transclusion
-- Precondition:
-- frame -- object
-- action -- string, with function name
-- leave -- true: keep whitespace around
-- lone -- true: permit call without parameters
-- Postcondition:
-- Return string; might be error message
local lucky = true;
local s = false;
local r = false;
local space;
for k, v in pairs( frame.args ) do
if k == 1 then
if leave then
s = v;
else
s = mw.text.trim( v );
end
elseif action == "ansiPercent" and k == "space" then
if v ~= "" then
space = v;
end
elseif k ~= "template" then
lucky = false;
if r then
r = r .. "|";
else
r = "Unknown parameter: ";
end
r = string.format( "%s%s=", r, k );
end
end -- for k, v
if lucky then
if s or lone then
lucky, r = pcall( WLink[ action ], s, space );
else
r = "Parameter missing";
lucky = false;
end
end
if lucky then
if type( r ) == "boolean" then
if r then
r = "1";
else
r = "";
end
end
else
r = string.format( "<span class=\"error\">%s</span>", r );
end
return r;
end -- Template()
-- Export
local p = { };
p.ansiPercent = function ( frame )
return Template( frame, "ansiPercent" );
end
p.formatURL = function ( frame )
return Template( frame, "formatURL" );
end
p.getArticleBase = function ( frame )
return Template( frame, "getArticleBase", false, true );
end
p.getBaseTitle = function ( frame )
return Template( frame, "getBaseTitle" );
end
p.getExtension = function ( frame )
return Template( frame, "getExtension" );
end
p.getFile = function ( frame )
return Template( frame, "getFile" );
end
p.getFragment = function ( frame )
return Template( frame, "getFragment" );
end
p.getInterwiki = function ( frame )
return Template( frame, "getInterwiki" );
end
p.getLanguage = function ( frame )
return Template( frame, "getLanguage" );
end
p.getNamespace = function ( frame )
return tostring( Template( frame, "getNamespace" ) );
end
p.getPlain = function ( frame )
return Template( frame, "getPlain" );
end
p.getProject = function ( frame )
return Template( frame, "getProject" );
end
p.getTarget = function ( frame )
return Template( frame, "getTarget" );
end
p.getTargetPage = function ( frame )
return Template( frame, "getTargetPage" );
end
p.getTitle = function ( frame )
return Template( frame, "getTitle" );
end
p.getWeblink = function ( frame )
return Template( frame, "getWeblink" );
end
p.isBracketedLink = function ( frame )
return Template( frame, "isBracketedLink" );
end
p.isBracketedURL = function ( frame )
return Template( frame, "isBracketedURL" );
end
p.isCategorization = function ( frame )
return Template( frame, "isCategorization" );
end
p.isExternalLink = function ( frame )
return Template( frame, "isExternalLink" );
end
p.isInterlanguage = function ( frame )
return Template( frame, "isInterlanguage" );
end
p.isInterwiki = function ( frame )
return Template( frame, "isInterwiki" );
end
p.isMedia = function ( frame )
return Template( frame, "isMedia" );
end
p.isTitledLink = function ( frame )
return Template( frame, "isTitledLink" );
end
p.isValidLink = function ( frame )
return Template( frame, "isValidLink" );
end
p.isWeblink = function ( frame )
return Template( frame, "isWeblink" );
end
p.isWikilink = function ( frame )
return Template( frame, "isWikilink" );
end
p.failsafe = function ( frame )
local since = frame.args[ 1 ];
if since then
since = mw.text.trim( since );
if since == "" then
since = false;
end
end
return WLink.failsafe( since ) or "";
end
p.WLink = function ()
return WLink;
end
return p;
4xyd3jqsdiw96i7n63edlmcldwdl0cf
Module:Date
828
3506
36727
2025-12-15T23:43:41Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Date functions for use by other modules. -- I18N and time zones are not supported. local MINUS = '−' -- Unicode U+2212 MINUS SIGN local floor = math.floor local Date, DateDiff, diffmt -- forward declarations local uniq = { 'unique identifier' } local function is_date(t) -- The system used to make a date read-only means there is no unique -- metatable that is conveniently accessible to check. return type(t) == 'table' and t._id == uniq...'
36727
Scribunto
text/plain
-- Date functions for use by other modules.
-- I18N and time zones are not supported.
local MINUS = '−' -- Unicode U+2212 MINUS SIGN
local floor = math.floor
local Date, DateDiff, diffmt -- forward declarations
local uniq = { 'unique identifier' }
local function is_date(t)
-- The system used to make a date read-only means there is no unique
-- metatable that is conveniently accessible to check.
return type(t) == 'table' and t._id == uniq
end
local function is_diff(t)
return type(t) == 'table' and getmetatable(t) == diffmt
end
local function _list_join(list, sep)
return table.concat(list, sep)
end
local function collection()
-- Return a table to hold items.
return {
n = 0,
add = function (self, item)
self.n = self.n + 1
self[self.n] = item
end,
join = _list_join,
}
end
local function strip_to_nil(text)
-- If text is a string, return its trimmed content, or nil if empty.
-- Otherwise return text (convenient when Date fields are provided from
-- another module which may pass a string, a number, or another type).
if type(text) == 'string' then
text = text:match('(%S.-)%s*$')
end
return text
end
local function is_leap_year(year, calname)
-- Return true if year is a leap year.
if calname == 'Julian' then
return year % 4 == 0
end
return (year % 4 == 0 and year % 100 ~= 0) or year % 400 == 0
end
local function days_in_month(year, month, calname)
-- Return number of days (1..31) in given month (1..12).
if month == 2 and is_leap_year(year, calname) then
return 29
end
return ({ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 })[month]
end
local function h_m_s(time)
-- Return hour, minute, second extracted from fraction of a day.
time = floor(time * 24 * 3600 + 0.5) -- number of seconds
local second = time % 60
time = floor(time / 60)
return floor(time / 60), time % 60, second
end
local function hms(date)
-- Return fraction of a day from date's time, where (0 <= fraction < 1)
-- if the values are valid, but could be anything if outside range.
return (date.hour + (date.minute + date.second / 60) / 60) / 24
end
local function julian_date(date)
-- Return jd, jdz from a Julian or Gregorian calendar date where
-- jd = Julian date and its fractional part is zero at noon
-- jdz = same, but assume time is 00:00:00 if no time given
-- http://www.tondering.dk/claus/cal/julperiod.php#formula
-- Testing shows this works for all dates from year -9999 to 9999!
-- JDN 0 is the 24-hour period starting at noon UTC on Monday
-- 1 January 4713 BC = (-4712, 1, 1) Julian calendar
-- 24 November 4714 BC = (-4713, 11, 24) Gregorian calendar
local offset
local a = floor((14 - date.month)/12)
local y = date.year + 4800 - a
if date.calendar == 'Julian' then
offset = floor(y/4) - 32083
else
offset = floor(y/4) - floor(y/100) + floor(y/400) - 32045
end
local m = date.month + 12*a - 3
local jd = date.day + floor((153*m + 2)/5) + 365*y + offset
if date.hastime then
jd = jd + hms(date) - 0.5
return jd, jd
end
return jd, jd - 0.5
end
local function set_date_from_jd(date)
-- Set the fields of table date from its Julian date field.
-- Return true if date is valid.
-- http://www.tondering.dk/claus/cal/julperiod.php#formula
-- This handles the proleptic Julian and Gregorian calendars.
-- Negative Julian dates are not defined but they work.
local calname = date.calendar
local low, high -- min/max limits for date ranges −9999-01-01 to 9999-12-31
if calname == 'Gregorian' then
low, high = -1930999.5, 5373484.49999
elseif calname == 'Julian' then
low, high = -1931076.5, 5373557.49999
else
return
end
local jd = date.jd
if not (type(jd) == 'number' and low <= jd and jd <= high) then
return
end
local jdn = floor(jd)
if date.hastime then
local time = jd - jdn -- 0 <= time < 1
if time >= 0.5 then -- if at or after midnight of next day
jdn = jdn + 1
time = time - 0.5
else
time = time + 0.5
end
date.hour, date.minute, date.second = h_m_s(time)
else
date.second = 0
date.minute = 0
date.hour = 0
end
local b, c
if calname == 'Julian' then
b = 0
c = jdn + 32082
else -- Gregorian
local a = jdn + 32044
b = floor((4*a + 3)/146097)
c = a - floor(146097*b/4)
end
local d = floor((4*c + 3)/1461)
local e = c - floor(1461*d/4)
local m = floor((5*e + 2)/153)
date.day = e - floor((153*m + 2)/5) + 1
date.month = m + 3 - 12*floor(m/10)
date.year = 100*b + d - 4800 + floor(m/10)
return true
end
local function fix_numbers(numbers, y, m, d, H, M, S, partial, hastime, calendar)
-- Put the result of normalizing the given values in table numbers.
-- The result will have valid m, d values if y is valid; caller checks y.
-- The logic of PHP mktime is followed where m or d can be zero to mean
-- the previous unit, and -1 is the one before that, etc.
-- Positive values carry forward.
local date
if not (1 <= m and m <= 12) then
date = Date(y, 1, 1)
if not date then return end
date = date + ((m - 1) .. 'm')
y, m = date.year, date.month
end
local days_hms
if not partial then
if hastime and H and M and S then
if not (0 <= H and H <= 23 and
0 <= M and M <= 59 and
0 <= S and S <= 59) then
days_hms = hms({ hour = H, minute = M, second = S })
end
end
if days_hms or not (1 <= d and d <= days_in_month(y, m, calendar)) then
date = date or Date(y, m, 1)
if not date then return end
date = date + (d - 1 + (days_hms or 0))
y, m, d = date.year, date.month, date.day
if days_hms then
H, M, S = date.hour, date.minute, date.second
end
end
end
numbers.year = y
numbers.month = m
numbers.day = d
if days_hms then
-- Don't set H unless it was valid because a valid H will set hastime.
numbers.hour = H
numbers.minute = M
numbers.second = S
end
end
local function set_date_from_numbers(date, numbers, options)
-- Set the fields of table date from numeric values.
-- Return true if date is valid.
if type(numbers) ~= 'table' then
return
end
local y = numbers.year or date.year
local m = numbers.month or date.month
local d = numbers.day or date.day
local H = numbers.hour
local M = numbers.minute or date.minute or 0
local S = numbers.second or date.second or 0
local need_fix
if y and m and d then
date.partial = nil
if not (-9999 <= y and y <= 9999 and
1 <= m and m <= 12 and
1 <= d and d <= days_in_month(y, m, date.calendar)) then
if not date.want_fix then
return
end
need_fix = true
end
elseif y and date.partial then
if d or not (-9999 <= y and y <= 9999) then
return
end
if m and not (1 <= m and m <= 12) then
if not date.want_fix then
return
end
need_fix = true
end
else
return
end
if date.partial then
H = nil -- ignore any time
M = nil
S = nil
else
if H then
-- It is not possible to set M or S without also setting H.
date.hastime = true
else
H = 0
end
if not (0 <= H and H <= 23 and
0 <= M and M <= 59 and
0 <= S and S <= 59) then
if date.want_fix then
need_fix = true
else
return
end
end
end
date.want_fix = nil
if need_fix then
fix_numbers(numbers, y, m, d, H, M, S, date.partial, date.hastime, date.calendar)
return set_date_from_numbers(date, numbers, options)
end
date.year = y -- -9999 to 9999 ('n BC' → year = 1 - n)
date.month = m -- 1 to 12 (may be nil if partial)
date.day = d -- 1 to 31 (* = nil if partial)
date.hour = H -- 0 to 59 (*)
date.minute = M -- 0 to 59 (*)
date.second = S -- 0 to 59 (*)
if type(options) == 'table' then
for _, k in ipairs({ 'am', 'era', 'format' }) do
if options[k] then
date.options[k] = options[k]
end
end
end
return true
end
local function make_option_table(options1, options2)
-- If options1 is a string, return a table with its settings, or
-- if it is a table, use its settings.
-- Missing options are set from table options2 or defaults.
-- If a default is used, a flag is set so caller knows the value was not intentionally set.
-- Valid option settings are:
-- am: 'am', 'a.m.', 'AM', 'A.M.'
-- 'pm', 'p.m.', 'PM', 'P.M.' (each has same meaning as corresponding item above)
-- era: 'BCMINUS', 'BCNEGATIVE', 'BC', 'B.C.', 'BCE', 'B.C.E.', 'AD', 'A.D.', 'CE', 'C.E.'
-- Option am = 'am' does not mean the hour is AM; it means 'am' or 'pm' is used, depending on the hour,
-- and am = 'pm' has the same meaning.
-- Similarly, era = 'BC' means 'BC' is used if year <= 0.
-- BCMINUS displays a MINUS if year < 0 and the display format does not include %{era}.
-- BCNEGATIVE is similar but displays a hyphen.
local result = { bydefault = {} }
if type(options1) == 'table' then
result.am = options1.am
result.era = options1.era
elseif type(options1) == 'string' then
-- Example: 'am:AM era:BC' or 'am=AM era=BC'.
for item in options1:gmatch('%S+') do
local lhs, rhs = item:match('^(%w+)[:=](.+)$')
if lhs then
result[lhs] = rhs
end
end
end
options2 = type(options2) == 'table' and options2 or {}
local defaults = { am = 'am', era = 'BC' }
for k, v in pairs(defaults) do
if not result[k] then
if options2[k] then
result[k] = options2[k]
else
result[k] = v
result.bydefault[k] = true
end
end
end
return result
end
local ampm_options = {
-- lhs = input text accepted as an am/pm option
-- rhs = code used internally
['am'] = 'am',
['AM'] = 'AM',
['a.m.'] = 'a.m.',
['A.M.'] = 'A.M.',
['pm'] = 'am', -- same as am
['PM'] = 'AM',
['p.m.'] = 'a.m.',
['P.M.'] = 'A.M.',
}
local era_text = {
-- Text for displaying an era with a positive year (after adjusting
-- by replacing year with 1 - year if date.year <= 0).
-- options.era = { year<=0 , year>0 }
['BCMINUS'] = { 'BC' , '' , isbc = true, sign = MINUS },
['BCNEGATIVE'] = { 'BC' , '' , isbc = true, sign = '-' },
['BC'] = { 'BC' , '' , isbc = true },
['B.C.'] = { 'B.C.' , '' , isbc = true },
['BCE'] = { 'BCE' , '' , isbc = true },
['B.C.E.'] = { 'B.C.E.', '' , isbc = true },
['AD'] = { 'BC' , 'AD' },
['A.D.'] = { 'B.C.' , 'A.D.' },
['CE'] = { 'BCE' , 'CE' },
['C.E.'] = { 'B.C.E.', 'C.E.' },
}
local function get_era_for_year(era, year)
return (era_text[era] or era_text['BC'])[year > 0 and 2 or 1] or ''
end
local function strftime(date, format, options)
-- Return date formatted as a string using codes similar to those
-- in the C strftime library function.
local sformat = string.format
local shortcuts = {
['%c'] = '%-I:%M %p %-d %B %-Y %{era}', -- date and time: 2:30 pm 1 April 2016
['%x'] = '%-d %B %-Y %{era}', -- date: 1 April 2016
['%X'] = '%-I:%M %p', -- time: 2:30 pm
}
if shortcuts[format] then
format = shortcuts[format]
end
local codes = {
a = { field = 'dayabbr' },
A = { field = 'dayname' },
b = { field = 'monthabbr' },
B = { field = 'monthname' },
u = { fmt = '%d' , field = 'dowiso' },
w = { fmt = '%d' , field = 'dow' },
d = { fmt = '%02d', fmt2 = '%d', field = 'day' },
m = { fmt = '%02d', fmt2 = '%d', field = 'month' },
Y = { fmt = '%04d', fmt2 = '%d', field = 'year' },
H = { fmt = '%02d', fmt2 = '%d', field = 'hour' },
M = { fmt = '%02d', fmt2 = '%d', field = 'minute' },
S = { fmt = '%02d', fmt2 = '%d', field = 'second' },
j = { fmt = '%03d', fmt2 = '%d', field = 'dayofyear' },
I = { fmt = '%02d', fmt2 = '%d', field = 'hour', special = 'hour12' },
p = { field = 'hour', special = 'am' },
}
options = make_option_table(options, date.options)
local amopt = options.am
local eraopt = options.era
local function replace_code(spaces, modifier, id)
local code = codes[id]
if code then
local fmt = code.fmt
if modifier == '-' and code.fmt2 then
fmt = code.fmt2
end
local value = date[code.field]
if not value then
return nil -- an undefined field in a partial date
end
local special = code.special
if special then
if special == 'hour12' then
value = value % 12
value = value == 0 and 12 or value
elseif special == 'am' then
local ap = ({
['a.m.'] = { 'a.m.', 'p.m.' },
['AM'] = { 'AM', 'PM' },
['A.M.'] = { 'A.M.', 'P.M.' },
})[ampm_options[amopt]] or { 'am', 'pm' }
return (spaces == '' and '' or ' ') .. (value < 12 and ap[1] or ap[2])
end
end
if code.field == 'year' then
local sign = (era_text[eraopt] or {}).sign
if not sign or format:find('%{era}', 1, true) then
sign = ''
if value <= 0 then
value = 1 - value
end
else
if value >= 0 then
sign = ''
else
value = -value
end
end
return spaces .. sign .. sformat(fmt, value)
end
return spaces .. (fmt and sformat(fmt, value) or value)
end
end
local function replace_property(spaces, id)
if id == 'era' then
-- Special case so can use local era option.
local result = get_era_for_year(eraopt, date.year)
if result == '' then
return ''
end
return (spaces == '' and '' or ' ') .. result
end
local result = date[id]
if type(result) == 'string' then
return spaces .. result
end
if type(result) == 'number' then
return spaces .. tostring(result)
end
if type(result) == 'boolean' then
return spaces .. (result and '1' or '0')
end
-- This occurs if id is an undefined field in a partial date, or is the name of a function.
return nil
end
local PERCENT = '\127PERCENT\127'
return (format
:gsub('%%%%', PERCENT)
:gsub('(%s*)%%{(%w+)}', replace_property)
:gsub('(%s*)%%(%-?)(%a)', replace_code)
:gsub(PERCENT, '%%')
)
end
local function _date_text(date, fmt, options)
-- Return a formatted string representing the given date.
if not is_date(date) then
error('date:text: need a date (use "date:text()" with a colon)', 2)
end
if type(fmt) == 'string' and fmt:match('%S') then
if fmt:find('%', 1, true) then
return strftime(date, fmt, options)
end
elseif date.partial then
fmt = date.month and 'my' or 'y'
else
fmt = 'dmy'
if date.hastime then
fmt = (date.second > 0 and 'hms ' or 'hm ') .. fmt
end
end
local function bad_format()
-- For consistency with other format processing, return given format
-- (or cleaned format if original was not a string) if invalid.
return mw.text.nowiki(fmt)
end
if date.partial then
-- Ignore days in standard formats like 'ymd'.
if fmt == 'ym' or fmt == 'ymd' then
fmt = date.month and '%Y-%m %{era}' or '%Y %{era}'
elseif fmt == 'my' or fmt == 'dmy' or fmt == 'mdy' then
fmt = date.month and '%B %-Y %{era}' or '%-Y %{era}'
elseif fmt == 'y' then
fmt = date.month and '%-Y %{era}' or '%-Y %{era}'
else
return bad_format()
end
return strftime(date, fmt, options)
end
local function hm_fmt()
local plain = make_option_table(options, date.options).bydefault.am
return plain and '%H:%M' or '%-I:%M %p'
end
local need_time = date.hastime
local t = collection()
for item in fmt:gmatch('%S+') do
local f
if item == 'hm' then
f = hm_fmt()
need_time = false
elseif item == 'hms' then
f = '%H:%M:%S'
need_time = false
elseif item == 'ymd' then
f = '%Y-%m-%d %{era}'
elseif item == 'mdy' then
f = '%B %-d, %-Y %{era}'
elseif item == 'dmy' then
f = '%-d %B %-Y %{era}'
else
return bad_format()
end
t:add(f)
end
fmt = t:join(' ')
if need_time then
fmt = hm_fmt() .. ' ' .. fmt
end
return strftime(date, fmt, options)
end
local day_info = {
-- 0=Sun to 6=Sat
[0] = { 'Sun', 'Sunday' },
{ 'Mon', 'Monday' },
{ 'Tue', 'Tuesday' },
{ 'Wed', 'Wednesday' },
{ 'Thu', 'Thursday' },
{ 'Fri', 'Friday' },
{ 'Sat', 'Saturday' },
}
local month_info = {
-- 1=Jan to 12=Dec
{ 'Jan', 'January' },
{ 'Feb', 'February' },
{ 'Mar', 'March' },
{ 'Apr', 'April' },
{ 'May', 'May' },
{ 'Jun', 'June' },
{ 'Jul', 'July' },
{ 'Aug', 'August' },
{ 'Sep', 'September' },
{ 'Oct', 'October' },
{ 'Nov', 'November' },
{ 'Dec', 'December' },
}
local function name_to_number(text, translate)
if type(text) == 'string' then
return translate[text:lower()]
end
end
local function day_number(text)
return name_to_number(text, {
sun = 0, sunday = 0,
mon = 1, monday = 1,
tue = 2, tuesday = 2,
wed = 3, wednesday = 3,
thu = 4, thursday = 4,
fri = 5, friday = 5,
sat = 6, saturday = 6,
})
end
local function month_number(text)
return name_to_number(text, {
jan = 1, january = 1,
feb = 2, february = 2,
mar = 3, march = 3,
apr = 4, april = 4,
may = 5,
jun = 6, june = 6,
jul = 7, july = 7,
aug = 8, august = 8,
sep = 9, september = 9, sept = 9,
oct = 10, october = 10,
nov = 11, november = 11,
dec = 12, december = 12,
})
end
local function _list_text(list, fmt)
-- Return a list of formatted strings from a list of dates.
if not type(list) == 'table' then
error('date:list:text: need "list:text()" with a colon', 2)
end
local result = { join = _list_join }
for i, date in ipairs(list) do
result[i] = date:text(fmt)
end
return result
end
local function _date_list(date, spec)
-- Return a possibly empty numbered table of dates meeting the specification.
-- Dates in the list are in ascending order (oldest date first).
-- The spec should be a string of form "<count> <day> <op>"
-- where each item is optional and
-- count = number of items wanted in list
-- day = abbreviation or name such as Mon or Monday
-- op = >, >=, <, <= (default is > meaning after date)
-- If no count is given, the list is for the specified days in date's month.
-- The default day is date's day.
-- The spec can also be a positive or negative number:
-- -5 is equivalent to '5 <'
-- 5 is equivalent to '5' which is '5 >'
if not is_date(date) then
error('date:list: need a date (use "date:list()" with a colon)', 2)
end
local list = { text = _list_text }
if date.partial then
return list
end
local count, offset, operation
local ops = {
['>='] = { before = false, include = true },
['>'] = { before = false, include = false },
['<='] = { before = true , include = true },
['<'] = { before = true , include = false },
}
if spec then
if type(spec) == 'number' then
count = floor(spec + 0.5)
if count < 0 then
count = -count
operation = ops['<']
end
elseif type(spec) == 'string' then
local num, day, op = spec:match('^%s*(%d*)%s*(%a*)%s*([<>=]*)%s*$')
if not num then
return list
end
if num ~= '' then
count = tonumber(num)
end
if day ~= '' then
local dow = day_number(day:gsub('[sS]$', '')) -- accept plural days
if not dow then
return list
end
offset = dow - date.dow
end
operation = ops[op]
else
return list
end
end
offset = offset or 0
operation = operation or ops['>']
local datefrom, dayfirst, daylast
if operation.before then
if offset > 0 or (offset == 0 and not operation.include) then
offset = offset - 7
end
if count then
if count > 1 then
offset = offset - 7*(count - 1)
end
datefrom = date + offset
else
daylast = date.day + offset
dayfirst = daylast % 7
if dayfirst == 0 then
dayfirst = 7
end
end
else
if offset < 0 or (offset == 0 and not operation.include) then
offset = offset + 7
end
if count then
datefrom = date + offset
else
dayfirst = date.day + offset
daylast = date.monthdays
end
end
if not count then
if daylast < dayfirst then
return list
end
count = floor((daylast - dayfirst)/7) + 1
datefrom = Date(date, {day = dayfirst})
end
for i = 1, count do
if not datefrom then break end -- exceeds date limits
list[i] = datefrom
datefrom = datefrom + 7
end
return list
end
-- A table to get the current date/time (UTC), but only if needed.
local current = setmetatable({}, {
__index = function (self, key)
local d = os.date('!*t')
self.year = d.year
self.month = d.month
self.day = d.day
self.hour = d.hour
self.minute = d.min
self.second = d.sec
return rawget(self, key)
end })
local function extract_date(newdate, text)
-- Parse the date/time in text and return n, o where
-- n = table of numbers with date/time fields
-- o = table of options for AM/PM or AD/BC or format, if any
-- or return nothing if date is known to be invalid.
-- Caller determines if the values in n are valid.
-- A year must be positive ('1' to '9999'); use 'BC' for BC.
-- In a y-m-d string, the year must be four digits to avoid ambiguity
-- ('0001' to '9999'). The only way to enter year <= 0 is by specifying
-- the date as three numeric parameters like ymd Date(-1, 1, 1).
-- Dates of form d/m/y, m/d/y, y/m/d are rejected as potentially ambiguous.
local date, options = {}, {}
if text:sub(-1) == 'Z' then
-- Extract date/time from a Wikidata timestamp.
-- The year can be 1 to 16 digits but this module handles 1 to 4 digits only.
-- Examples: '+2016-06-21T14:30:00Z', '-0000000180-00-00T00:00:00Z'.
local sign, y, m, d, H, M, S = text:match('^([+%-])(%d+)%-(%d%d)%-(%d%d)T(%d%d):(%d%d):(%d%d)Z$')
if sign then
y = tonumber(y)
if sign == '-' and y > 0 then
y = -y
end
if y <= 0 then
options.era = 'BCE'
end
date.year = y
m = tonumber(m)
d = tonumber(d)
H = tonumber(H)
M = tonumber(M)
S = tonumber(S)
if m == 0 then
newdate.partial = true
return date, options
end
date.month = m
if d == 0 then
newdate.partial = true
return date, options
end
date.day = d
if H > 0 or M > 0 or S > 0 then
date.hour = H
date.minute = M
date.second = S
end
return date, options
end
return
end
local function extract_ymd(item)
-- Called when no day or month has been set.
local y, m, d = item:match('^(%d%d%d%d)%-(%w+)%-(%d%d?)$')
if y then
if date.year then
return
end
if m:match('^%d%d?$') then
m = tonumber(m)
else
m = month_number(m)
end
if m then
date.year = tonumber(y)
date.month = m
date.day = tonumber(d)
return true
end
end
end
local function extract_day_or_year(item)
-- Called when a day would be valid, or
-- when a year would be valid if no year has been set and partial is set.
local number, suffix = item:match('^(%d%d?%d?%d?)(.*)$')
if number then
local n = tonumber(number)
if #number <= 2 and n <= 31 then
suffix = suffix:lower()
if suffix == '' or suffix == 'st' or suffix == 'nd' or suffix == 'rd' or suffix == 'th' then
date.day = n
return true
end
elseif suffix == '' and newdate.partial and not date.year then
date.year = n
return true
end
end
end
local function extract_month(item)
-- A month must be given as a name or abbreviation; a number could be ambiguous.
local m = month_number(item)
if m then
date.month = m
return true
end
end
local function extract_time(item)
local h, m, s = item:match('^(%d%d?):(%d%d)(:?%d*)$')
if date.hour or not h then
return
end
if s ~= '' then
s = s:match('^:(%d%d)$')
if not s then
return
end
end
date.hour = tonumber(h)
date.minute = tonumber(m)
date.second = tonumber(s) -- nil if empty string
return true
end
local item_count = 0
local index_time
local function set_ampm(item)
local H = date.hour
if H and not options.am and index_time + 1 == item_count then
options.am = ampm_options[item] -- caller checked this is not nil
if item:match('^[Aa]') then
if not (1 <= H and H <= 12) then
return
end
if H == 12 then
date.hour = 0
end
else
if not (1 <= H and H <= 23) then
return
end
if H <= 11 then
date.hour = H + 12
end
end
return true
end
end
for item in text:gsub(',', ' '):gsub(' ', ' '):gmatch('%S+') do
item_count = item_count + 1
if era_text[item] then
-- Era is accepted in peculiar places.
if options.era then
return
end
options.era = item
elseif ampm_options[item] then
if not set_ampm(item) then
return
end
elseif item:find(':', 1, true) then
if not extract_time(item) then
return
end
index_time = item_count
elseif date.day and date.month then
if date.year then
return -- should be nothing more so item is invalid
end
if not item:match('^(%d%d?%d?%d?)$') then
return
end
date.year = tonumber(item)
elseif date.day then
if not extract_month(item) then
return
end
elseif date.month then
if not extract_day_or_year(item) then
return
end
elseif extract_month(item) then
options.format = 'mdy'
elseif extract_ymd(item) then
options.format = 'ymd'
elseif extract_day_or_year(item) then
if date.day then
options.format = 'dmy'
end
else
return
end
end
if not date.year or date.year == 0 then
return
end
local era = era_text[options.era]
if era and era.isbc then
date.year = 1 - date.year
end
return date, options
end
local function autofill(date1, date2)
-- Fill any missing month or day in each date using the
-- corresponding component from the other date, if present,
-- or with 1 if both dates are missing the month or day.
-- This gives a good result for calculating the difference
-- between two partial dates when no range is wanted.
-- Return filled date1, date2 (two full dates).
local function filled(a, b)
local fillmonth, fillday
if not a.month then
fillmonth = b.month or 1
end
if not a.day then
fillday = b.day or 1
end
if fillmonth or fillday then -- need to create a new date
if (fillmonth or a.month) == 2 and (fillday or a.day) == 29 then
-- Avoid invalid date, for example with {{age|2013|29 Feb 2016}} or {{age|Feb 2013|29 Jan 2015}}.
if not is_leap_year(a.year, a.calendar) then
fillday = 28
end
end
a = Date(a, { month = fillmonth, day = fillday })
end
return a
end
return filled(date1, date2), filled(date2, date1)
end
local function date_add_sub(lhs, rhs, is_sub)
-- Return a new date from calculating (lhs + rhs) or (lhs - rhs),
-- or return nothing if invalid.
-- The result is nil if the calculated date exceeds allowable limits.
-- Caller ensures that lhs is a date; its properties are copied for the new date.
if lhs.partial then
-- Adding to a partial is not supported.
-- Can subtract a date or partial from a partial, but this is not called for that.
return
end
local function is_prefix(text, word, minlen)
local n = #text
return (minlen or 1) <= n and n <= #word and text == word:sub(1, n)
end
local function do_days(n)
local forcetime, jd
if floor(n) == n then
jd = lhs.jd
else
forcetime = not lhs.hastime
jd = lhs.jdz
end
jd = jd + (is_sub and -n or n)
if forcetime then
jd = tostring(jd)
if not jd:find('.', 1, true) then
jd = jd .. '.0'
end
end
return Date(lhs, 'juliandate', jd)
end
if type(rhs) == 'number' then
-- Add/subtract days, including fractional days.
return do_days(rhs)
end
if type(rhs) == 'string' then
-- rhs is a single component like '26m' or '26 months' (with optional sign).
-- Fractions like '3.25d' are accepted for the units which are handled as days.
local sign, numstr, id = rhs:match('^%s*([+-]?)([%d%.]+)%s*(%a+)$')
if sign then
if sign == '-' then
is_sub = not (is_sub and true or false)
end
local y, m, days
local num = tonumber(numstr)
if not num then
return
end
id = id:lower()
if is_prefix(id, 'years') then
y = num
m = 0
elseif is_prefix(id, 'months') then
y = floor(num / 12)
m = num % 12
elseif is_prefix(id, 'weeks') then
days = num * 7
elseif is_prefix(id, 'days') then
days = num
elseif is_prefix(id, 'hours') then
days = num / 24
elseif is_prefix(id, 'minutes', 3) then
days = num / (24 * 60)
elseif is_prefix(id, 'seconds') then
days = num / (24 * 3600)
else
return
end
if days then
return do_days(days)
end
if numstr:find('.', 1, true) then
return
end
if is_sub then
y = -y
m = -m
end
assert(-11 <= m and m <= 11)
y = lhs.year + y
m = lhs.month + m
if m > 12 then
y = y + 1
m = m - 12
elseif m < 1 then
y = y - 1
m = m + 12
end
local d = math.min(lhs.day, days_in_month(y, m, lhs.calendar))
return Date(lhs, y, m, d)
end
end
if is_diff(rhs) then
local days = rhs.age_days
if (is_sub or false) ~= (rhs.isnegative or false) then
days = -days
end
return lhs + days
end
end
local full_date_only = {
dayabbr = true,
dayname = true,
dow = true,
dayofweek = true,
dowiso = true,
dayofweekiso = true,
dayofyear = true,
gsd = true,
juliandate = true,
jd = true,
jdz = true,
jdnoon = true,
}
-- Metatable for a date's calculated fields.
local datemt = {
__index = function (self, key)
if rawget(self, 'partial') then
if full_date_only[key] then return end
if key == 'monthabbr' or key == 'monthdays' or key == 'monthname' then
if not self.month then return end
end
end
local value
if key == 'dayabbr' then
value = day_info[self.dow][1]
elseif key == 'dayname' then
value = day_info[self.dow][2]
elseif key == 'dow' then
value = (self.jdnoon + 1) % 7 -- day-of-week 0=Sun to 6=Sat
elseif key == 'dayofweek' then
value = self.dow
elseif key == 'dowiso' then
value = (self.jdnoon % 7) + 1 -- ISO day-of-week 1=Mon to 7=Sun
elseif key == 'dayofweekiso' then
value = self.dowiso
elseif key == 'dayofyear' then
local first = Date(self.year, 1, 1, self.calendar).jdnoon
value = self.jdnoon - first + 1 -- day-of-year 1 to 366
elseif key == 'era' then
-- Era text (never a negative sign) from year and options.
value = get_era_for_year(self.options.era, self.year)
elseif key == 'format' then
value = self.options.format or 'dmy'
elseif key == 'gsd' then
-- GSD = 1 from 00:00:00 to 23:59:59 on 1 January 1 AD Gregorian calendar,
-- which is from jd 1721425.5 to 1721426.49999.
value = floor(self.jd - 1721424.5)
elseif key == 'juliandate' or key == 'jd' or key == 'jdz' then
local jd, jdz = julian_date(self)
rawset(self, 'juliandate', jd)
rawset(self, 'jd', jd)
rawset(self, 'jdz', jdz)
return key == 'jdz' and jdz or jd
elseif key == 'jdnoon' then
-- Julian date at noon (an integer) on the calendar day when jd occurs.
value = floor(self.jd + 0.5)
elseif key == 'isleapyear' then
value = is_leap_year(self.year, self.calendar)
elseif key == 'monthabbr' then
value = month_info[self.month][1]
elseif key == 'monthdays' then
value = days_in_month(self.year, self.month, self.calendar)
elseif key == 'monthname' then
value = month_info[self.month][2]
end
if value ~= nil then
rawset(self, key, value)
return value
end
end,
}
-- Date operators.
local function mt_date_add(lhs, rhs)
if not is_date(lhs) then
lhs, rhs = rhs, lhs -- put date on left (it must be a date for this to have been called)
end
return date_add_sub(lhs, rhs)
end
local function mt_date_sub(lhs, rhs)
if is_date(lhs) then
if is_date(rhs) then
return DateDiff(lhs, rhs)
end
return date_add_sub(lhs, rhs, true)
end
end
local function mt_date_concat(lhs, rhs)
return tostring(lhs) .. tostring(rhs)
end
local function mt_date_tostring(self)
return self:text()
end
local function mt_date_eq(lhs, rhs)
-- Return true if dates identify same date/time where, for example,
-- Date(-4712, 1, 1, 'Julian') == Date(-4713, 11, 24, 'Gregorian') is true.
-- This is called only if lhs and rhs have the same type and the same metamethod.
if lhs.partial or rhs.partial then
-- One date is partial; the other is a partial or a full date.
-- The months may both be nil, but must be the same.
return lhs.year == rhs.year and lhs.month == rhs.month and lhs.calendar == rhs.calendar
end
return lhs.jdz == rhs.jdz
end
local function mt_date_lt(lhs, rhs)
-- Return true if lhs < rhs, for example,
-- Date('1 Jan 2016') < Date('06:00 1 Jan 2016') is true.
-- This is called only if lhs and rhs have the same type and the same metamethod.
if lhs.partial or rhs.partial then
-- One date is partial; the other is a partial or a full date.
if lhs.calendar ~= rhs.calendar then
return lhs.calendar == 'Julian'
end
if lhs.partial then
lhs = lhs.partial.first
end
if rhs.partial then
rhs = rhs.partial.first
end
end
return lhs.jdz < rhs.jdz
end
--[[ Examples of syntax to construct a date:
Date(y, m, d, 'julian') default calendar is 'gregorian'
Date(y, m, d, H, M, S, 'julian')
Date('juliandate', jd, 'julian') if jd contains "." text output includes H:M:S
Date('currentdate')
Date('currentdatetime')
Date('1 April 1995', 'julian') parse date from text
Date('1 April 1995 AD', 'julian') using an era sets a flag to do the same for output
Date('04:30:59 1 April 1995', 'julian')
Date(date) copy of an existing date
Date(date, t) same, updated with y,m,d,H,M,S fields from table t
Date(t) date with y,m,d,H,M,S fields from table t
]]
function Date(...) -- for forward declaration above
-- Return a table holding a date assuming a uniform calendar always applies
-- (proleptic Gregorian calendar or proleptic Julian calendar), or
-- return nothing if date is invalid.
-- A partial date has a valid year, however its month may be nil, and
-- its day and time fields are nil.
-- Field partial is set to false (if a full date) or a table (if a partial date).
local calendars = { julian = 'Julian', gregorian = 'Gregorian' }
local newdate = {
_id = uniq,
calendar = 'Gregorian', -- default is Gregorian calendar
hastime = false, -- true if input sets a time
hour = 0, -- always set hour/minute/second so don't have to handle nil
minute = 0,
second = 0,
options = {},
list = _date_list,
subtract = function (self, rhs, options)
return DateDiff(self, rhs, options)
end,
text = _date_text,
}
local argtype, datetext, is_copy, jd_number, tnums
local numindex = 0
local numfields = { 'year', 'month', 'day', 'hour', 'minute', 'second' }
local numbers = {}
for _, v in ipairs({...}) do
v = strip_to_nil(v)
local vlower = type(v) == 'string' and v:lower() or nil
if v == nil then
-- Ignore empty arguments after stripping so modules can directly pass template parameters.
elseif calendars[vlower] then
newdate.calendar = calendars[vlower]
elseif vlower == 'partial' then
newdate.partial = true
elseif vlower == 'fix' then
newdate.want_fix = true
elseif is_date(v) then
-- Copy existing date (items can be overridden by other arguments).
if is_copy or tnums then
return
end
is_copy = true
newdate.calendar = v.calendar
newdate.partial = v.partial
newdate.hastime = v.hastime
newdate.options = v.options
newdate.year = v.year
newdate.month = v.month
newdate.day = v.day
newdate.hour = v.hour
newdate.minute = v.minute
newdate.second = v.second
elseif type(v) == 'table' then
if tnums then
return
end
tnums = {}
local tfields = { year=1, month=1, day=1, hour=2, minute=2, second=2 }
for tk, tv in pairs(v) do
if tfields[tk] then
tnums[tk] = tonumber(tv)
end
if tfields[tk] == 2 then
newdate.hastime = true
end
end
else
local num = tonumber(v)
if not num and argtype == 'setdate' and numindex == 1 then
num = month_number(v)
end
if num then
if not argtype then
argtype = 'setdate'
end
if argtype == 'setdate' and numindex < 6 then
numindex = numindex + 1
numbers[numfields[numindex]] = num
elseif argtype == 'juliandate' and not jd_number then
jd_number = num
if type(v) == 'string' then
if v:find('.', 1, true) then
newdate.hastime = true
end
elseif num ~= floor(num) then
-- The given value was a number. The time will be used
-- if the fractional part is nonzero.
newdate.hastime = true
end
else
return
end
elseif argtype then
return
elseif type(v) == 'string' then
if v == 'currentdate' or v == 'currentdatetime' or v == 'juliandate' then
argtype = v
else
argtype = 'datetext'
datetext = v
end
else
return
end
end
end
if argtype == 'datetext' then
if tnums or not set_date_from_numbers(newdate, extract_date(newdate, datetext)) then
return
end
elseif argtype == 'juliandate' then
newdate.partial = nil
newdate.jd = jd_number
if not set_date_from_jd(newdate) then
return
end
elseif argtype == 'currentdate' or argtype == 'currentdatetime' then
newdate.partial = nil
newdate.year = current.year
newdate.month = current.month
newdate.day = current.day
if argtype == 'currentdatetime' then
newdate.hour = current.hour
newdate.minute = current.minute
newdate.second = current.second
newdate.hastime = true
end
newdate.calendar = 'Gregorian' -- ignore any given calendar name
elseif argtype == 'setdate' then
if tnums or not set_date_from_numbers(newdate, numbers) then
return
end
elseif not (is_copy or tnums) then
return
end
if tnums then
newdate.jd = nil -- force recalculation in case jd was set before changes from tnums
if not set_date_from_numbers(newdate, tnums) then
return
end
end
if newdate.partial then
local year = newdate.year
local month = newdate.month
local first = Date(year, month or 1, 1, newdate.calendar)
month = month or 12
local last = Date(year, month, days_in_month(year, month), newdate.calendar)
newdate.partial = { first = first, last = last }
else
newdate.partial = false -- avoid index lookup
end
setmetatable(newdate, datemt)
local readonly = {}
local mt = {
__index = newdate,
__newindex = function(t, k, v) error('date.' .. tostring(k) .. ' is read-only', 2) end,
__add = mt_date_add,
__sub = mt_date_sub,
__concat = mt_date_concat,
__tostring = mt_date_tostring,
__eq = mt_date_eq,
__lt = mt_date_lt,
}
return setmetatable(readonly, mt)
end
local function _diff_age(diff, code, options)
-- Return a tuple of integer values from diff as specified by code, except that
-- each integer may be a list of two integers for a diff with a partial date, or
-- return nil if the code is not supported.
-- If want round, the least significant unit is rounded to nearest whole unit.
-- For a duration, an extra day is added.
local wantround, wantduration, wantrange
if type(options) == 'table' then
wantround = options.round
wantduration = options.duration
wantrange = options.range
else
wantround = options
end
if not is_diff(diff) then
local f = wantduration and 'duration' or 'age'
error(f .. ': need a date difference (use "diff:' .. f .. '()" with a colon)', 2)
end
if diff.partial then
-- Ignore wantround, wantduration.
local function choose(v)
if type(v) == 'table' then
if not wantrange or v[1] == v[2] then
-- Example: Date('partial', 2005) - Date('partial', 2001) gives
-- diff.years = { 3, 4 } to show the range of possible results.
-- If do not want a range, choose the second value as more expected.
return v[2]
end
end
return v
end
if code == 'ym' or code == 'ymd' then
if not wantrange and diff.iszero then
-- This avoids an unexpected result such as
-- Date('partial', 2001) - Date('partial', 2001)
-- giving diff = { years = 0, months = { 0, 11 } }
-- which would be reported as 0 years and 11 months.
return 0, 0
end
return choose(diff.partial.years), choose(diff.partial.months)
end
if code == 'y' then
return choose(diff.partial.years)
end
if code == 'm' or code == 'w' or code == 'd' then
return choose({ diff.partial.mindiff:age(code), diff.partial.maxdiff:age(code) })
end
return nil
end
local extra_days = wantduration and 1 or 0
if code == 'wd' or code == 'w' or code == 'd' then
local offset = wantround and 0.5 or 0
local days = diff.age_days + extra_days
if code == 'wd' or code == 'd' then
days = floor(days + offset)
if code == 'd' then
return days
end
return floor(days/7), days % 7
end
return floor(days/7 + offset)
end
local H, M, S = diff.hours, diff.minutes, diff.seconds
if code == 'dh' or code == 'dhm' or code == 'dhms' or code == 'h' or code == 'hm' or code == 'hms' then
local days = floor(diff.age_days + extra_days)
local inc_hour
if wantround then
if code == 'dh' or code == 'h' then
if M >= 30 then
inc_hour = true
end
elseif code == 'dhm' or code == 'hm' then
if S >= 30 then
M = M + 1
if M >= 60 then
M = 0
inc_hour = true
end
end
else
-- Nothing needed because S is an integer.
end
if inc_hour then
H = H + 1
if H >= 24 then
H = 0
days = days + 1
end
end
end
if code == 'dh' or code == 'dhm' or code == 'dhms' then
if code == 'dh' then
return days, H
elseif code == 'dhm' then
return days, H, M
else
return days, H, M, S
end
end
local hours = days * 24 + H
if code == 'h' then
return hours
elseif code == 'hm' then
return hours, M
end
return hours, M, S
end
if wantround then
local inc_hour
if code == 'ymdh' or code == 'ymwdh' then
if M >= 30 then
inc_hour = true
end
elseif code == 'ymdhm' or code == 'ymwdhm' then
if S >= 30 then
M = M + 1
if M >= 60 then
M = 0
inc_hour = true
end
end
elseif code == 'ymd' or code == 'ymwd' or code == 'yd' or code == 'md' then
if H >= 12 then
extra_days = extra_days + 1
end
end
if inc_hour then
H = H + 1
if H >= 24 then
H = 0
extra_days = extra_days + 1
end
end
end
local y, m, d = diff.years, diff.months, diff.days
if extra_days > 0 then
d = d + extra_days
if d > 28 or code == 'yd' then
-- Recalculate in case have passed a month.
diff = diff.date1 + extra_days - diff.date2
y, m, d = diff.years, diff.months, diff.days
end
end
if code == 'ymd' then
return y, m, d
elseif code == 'yd' then
if y > 0 then
-- It is known that diff.date1 > diff.date2.
diff = diff.date1 - (diff.date2 + (y .. 'y'))
end
return y, floor(diff.age_days)
elseif code == 'md' then
return y * 12 + m, d
elseif code == 'ym' or code == 'm' then
if wantround then
if d >= 16 then
m = m + 1
if m >= 12 then
m = 0
y = y + 1
end
end
end
if code == 'ym' then
return y, m
end
return y * 12 + m
elseif code == 'ymw' then
local weeks = floor(d/7)
if wantround then
local days = d % 7
if days > 3 or (days == 3 and H >= 12) then
weeks = weeks + 1
end
end
return y, m, weeks
elseif code == 'ymwd' then
return y, m, floor(d/7), d % 7
elseif code == 'ymdh' then
return y, m, d, H
elseif code == 'ymwdh' then
return y, m, floor(d/7), d % 7, H
elseif code == 'ymdhm' then
return y, m, d, H, M
elseif code == 'ymwdhm' then
return y, m, floor(d/7), d % 7, H, M
end
if code == 'y' then
if wantround and m >= 6 then
y = y + 1
end
return y
end
return nil
end
local function _diff_duration(diff, code, options)
if type(options) ~= 'table' then
options = { round = options }
end
options.duration = true
return _diff_age(diff, code, options)
end
-- Metatable for some operations on date differences.
diffmt = { -- for forward declaration above
__concat = function (lhs, rhs)
return tostring(lhs) .. tostring(rhs)
end,
__tostring = function (self)
return tostring(self.age_days)
end,
__index = function (self, key)
local value
if key == 'age_days' then
if rawget(self, 'partial') then
local function jdz(date)
return (date.partial and date.partial.first or date).jdz
end
value = jdz(self.date1) - jdz(self.date2)
else
value = self.date1.jdz - self.date2.jdz
end
end
if value ~= nil then
rawset(self, key, value)
return value
end
end,
}
function DateDiff(date1, date2, options) -- for forward declaration above
-- Return a table with the difference between two dates (date1 - date2).
-- The difference is negative if date1 is older than date2.
-- Return nothing if invalid.
-- If d = date1 - date2 then
-- date1 = date2 + d
-- If date1 >= date2 and the dates have no H:M:S time specified then
-- date1 = date2 + (d.years..'y') + (d.months..'m') + d.days
-- where the larger time units are added first.
-- The result of Date(2015,1,x) + '1m' is Date(2015,2,28) for
-- x = 28, 29, 30, 31. That means, for example,
-- d = Date(2015,3,3) - Date(2015,1,31)
-- gives d.years, d.months, d.days = 0, 1, 3 (excluding date1).
if not (is_date(date1) and is_date(date2) and date1.calendar == date2.calendar) then
return
end
local wantfill
if type(options) == 'table' then
wantfill = options.fill
end
local isnegative = false
local iszero = false
if date1 < date2 then
isnegative = true
date1, date2 = date2, date1
elseif date1 == date2 then
iszero = true
end
-- It is known that date1 >= date2 (period is from date2 to date1).
if date1.partial or date2.partial then
-- Two partial dates might have timelines:
---------------------A=================B--- date1 is from A to B inclusive
--------C=======D-------------------------- date2 is from C to D inclusive
-- date1 > date2 iff A > C (date1.partial.first > date2.partial.first)
-- The periods can overlap ('April 2001' - '2001'):
-------------A===B------------------------- A=2001-04-01 B=2001-04-30
--------C=====================D------------ C=2001-01-01 D=2001-12-31
if wantfill then
date1, date2 = autofill(date1, date2)
else
local function zdiff(date1, date2)
local diff = date1 - date2
if diff.isnegative then
return date1 - date1 -- a valid diff in case we call its methods
end
return diff
end
local function getdate(date, which)
return date.partial and date.partial[which] or date
end
local maxdiff = zdiff(getdate(date1, 'last'), getdate(date2, 'first'))
local mindiff = zdiff(getdate(date1, 'first'), getdate(date2, 'last'))
local years, months
if maxdiff.years == mindiff.years then
years = maxdiff.years
if maxdiff.months == mindiff.months then
months = maxdiff.months
else
months = { mindiff.months, maxdiff.months }
end
else
years = { mindiff.years, maxdiff.years }
end
return setmetatable({
date1 = date1,
date2 = date2,
partial = {
years = years,
months = months,
maxdiff = maxdiff,
mindiff = mindiff,
},
isnegative = isnegative,
iszero = iszero,
age = _diff_age,
duration = _diff_duration,
}, diffmt)
end
end
local y1, m1 = date1.year, date1.month
local y2, m2 = date2.year, date2.month
local years = y1 - y2
local months = m1 - m2
local d1 = date1.day + hms(date1)
local d2 = date2.day + hms(date2)
local days, time
if d1 >= d2 then
days = d1 - d2
else
months = months - 1
-- Get days in previous month (before the "to" date) given December has 31 days.
local dpm = m1 > 1 and days_in_month(y1, m1 - 1, date1.calendar) or 31
if d2 >= dpm then
days = d1 - hms(date2)
else
days = dpm - d2 + d1
end
end
if months < 0 then
years = years - 1
months = months + 12
end
days, time = math.modf(days)
local H, M, S = h_m_s(time)
return setmetatable({
date1 = date1,
date2 = date2,
partial = false, -- avoid index lookup
years = years,
months = months,
days = days,
hours = H,
minutes = M,
seconds = S,
isnegative = isnegative,
iszero = iszero,
age = _diff_age,
duration = _diff_duration,
}, diffmt)
end
return {
_current = current,
_Date = Date,
_days_in_month = days_in_month,
}
l9afwtlrbun48614hnx9n633ci3101z
Πρότυπον:Πλαίσιον πληροφοριών
10
3507
36728
2025-12-15T23:48:31Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:Infobox|infobox}}<noinclude> {{Τεκμηρίωση προτύπου}} </noinclude>'
36728
wikitext
text/x-wiki
{{#invoke:Infobox|infobox}}<noinclude>
{{Τεκμηρίωση προτύπου}}
</noinclude>
14mqywm5a2ekcggpbg9hspkvzw0w6us
Πρότυπο:Shortcut/styles.css
0
3508
36730
36729
2025-12-15T23:50:55Z
Εὐθυμένης
2777
36730
wikitext
text/x-wiki
{{delete|by mistake}}
.module-shortcutboxplain {
float: right;
margin: 0 0 0 1em;
border: 1px solid var(--border-color-base);
background: var(--background-color-interactive);
padding: 0.3em 0.6em 0.2em 0.6em;
text-align: center;
font-size: 85%;
}
.module-shortcutboxleft {
float: left;
margin: 0 1em 0 0;
}
.module-shortcutlist {
display: inline-block;
border-bottom: 1px solid #aaa;
margin-bottom: 0.2em;
}
.module-shortcutboxplain > ul {
font-weight: bold;
}
.module-shortcutanchordiv {
position: relative;
top: -3em;
}
li .module-shortcutanchordiv {
float: right; /* IE/Edge in list items */
}
.mbox-imageright .module-shortcutboxplain {
padding: 0.4em 1em 0.4em 1em;
line-height: 1.3;
margin: 0;
}
1b3evuyky2ua1jhyra67bdpnfwo0pr0
Πρότυπον:Συντόμευσον
10
3509
36732
36731
2025-12-15T23:53:31Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπον:Shortcut]] στην [[Πρότυπον:Συντόμευσον]]
36731
wikitext
text/x-wiki
<includeonly>{{#invoke:Shortcut|main}}</includeonly><noinclude>
{{Documentation}}
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
</noinclude>
fa1ozc4hw96tsqw03qm0nxfwxuwl7wj
Πρότυπον:Shortcut
10
3510
36733
2025-12-15T23:53:31Z
Εὐθυμένης
2777
Ο Εὐθυμένης μετακίνησε τη σελίδα [[Πρότυπον:Shortcut]] στην [[Πρότυπον:Συντόμευσον]]
36733
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Συντόμευσον]]
j8zvh43nq4mampp9cr582dad05bckkt
Κατηγορίαν:Πολιτείας τη Γαλλίας
14
3511
36903
2025-12-16T10:24:48Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '[[Κατηγορίαν:Πολιτείας|Γαλλια]] [[Κατηγορίαν:Γαλλία]]'
36903
wikitext
text/x-wiki
[[Κατηγορίαν:Πολιτείας|Γαλλια]]
[[Κατηγορίαν:Γαλλία]]
a801fuwfc2il8ins3smj1bc4fabnieu
Πρότυπον:It
10
3512
36929
36911
2025-12-16T12:25:21Z
Εὐθυμένης
2777
36929
wikitext
text/x-wiki
{{γλώσσα2|Ιταλικά|ιταλικήν τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Ιταλικα]]
<!--interwiki-->
</noinclude>
ro3vw6qtmirsoy9jmbdgypdpv7v48cg
Πρότυπον:Ja
10
3513
36927
36912
2025-12-16T12:23:08Z
Εὐθυμένης
2777
36927
wikitext
text/x-wiki
{{γλώσσα2|Ιαπωνικά|ιαπωνικήν τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Ιαπωνικα]]
<!--interwiki-->
</noinclude>
nut4214j0vusqariiv7opzmz9gqzz4f
Πρότυπον:De
10
3514
36925
36913
2025-12-16T12:21:54Z
Εὐθυμένης
2777
36925
wikitext
text/x-wiki
{{γλώσσα2|Γερμανικά|γερμανικήν τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Γερμανικα]]
<!--interwiki-->
</noinclude>
3y8pns9m0upigdg2i6x9hp76ggc9p8s
Πρότυπον:Pt
10
3515
36931
36914
2025-12-16T12:25:46Z
Εὐθυμένης
2777
36931
wikitext
text/x-wiki
{{γλώσσα2|Πορτογαλικά|πορτογαλικήν τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Πορτογαλικα]]
<!--interwiki-->
</noinclude>
7sxdwpn8dt3b60zs930u2e2qdorhd4g
Πρότυπον:Es
10
3516
36928
36915
2025-12-16T12:23:52Z
Εὐθυμένης
2777
36928
wikitext
text/x-wiki
{{γλώσσα2|Ισπανικά|ισπανικήν τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Ισπανικα]]
<!--interwiki-->
</noinclude>
0e0u4i2kqo63idv5houz00jxpebxo90
Πρότυπον:Uk
10
3517
36930
36916
2025-12-16T12:25:34Z
Εὐθυμένης
2777
36930
wikitext
text/x-wiki
{{γλώσσα2|Ουκρανικά|ουκρανικήν τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Ουκρανικα]]
<!--interwiki-->
</noinclude>
t4qzfjns21mt3w8zw4835oezdie1dpf
Πρότυπον:Ru
10
3518
36936
36934
2025-12-16T12:31:32Z
Εὐθυμένης
2777
36936
wikitext
text/x-wiki
{{γλώσσα2|Ρούσικα|ρούσικην τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Ρουσικα]]
<!--interwiki-->
</noinclude>
qk3vaa6l60h1uaiaog7n46ww9dqmmkz
Πρότυπον:Bg
10
3519
36922
36921
2025-12-16T12:16:13Z
Εὐθυμένης
2777
36922
wikitext
text/x-wiki
{{γλώσσα2|Βουλγάρ'κα|βουλγάρ'κα τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Βουλγαρκα]]
<!--interwiki-->
</noinclude>
og5rgdc7dyufz6dtijg21i2tjyvzzkz
Πρότυπον:En
10
3520
36923
36919
2025-12-16T12:17:57Z
Εὐθυμένης
2777
36923
wikitext
text/x-wiki
{{γλώσσα2|Εγγλέζικα|εγγλέζικα τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Εγγλεζικα]]
<!--interwiki-->
</noinclude>
2x9vkl504c2m47v6yjocllvrppv7ip4
Πρότυπον:He
10
3521
36935
2025-12-16T12:30:27Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{γλώσσα2|Εβραίικα|εβραίικην τη λαλίαν}}<noinclude> [[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Εβραιικα]] <!--interwiki--> </noinclude>'
36935
wikitext
text/x-wiki
{{γλώσσα2|Εβραίικα|εβραίικην τη λαλίαν}}<noinclude>
[[Κατηγορίαν:Πρότυπα γλωσσών κειμένων|Εβραιικα]]
<!--interwiki-->
</noinclude>
45kan41qjopl509x6vqt3f3cnqa5m1k
Πρότυπον:Wikidata list end
10
3522
36937
2025-12-16T13:13:32Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly><div class="nomobile noprint" style='margin-top:5px;border-top:3px solid #2F74D0;font-size:8pt'>Τέλος αυτόματα δημιουργημένου καταλόγου.</div></includeonly><noinclude> Αυτό το πρότυπο σημαδεύει το "τέλος" μιας {{tl|Wikidata list}}. [[Κατηγορίαν:Πρότυπα Wikidata]] </noinclude>'
36937
wikitext
text/x-wiki
<includeonly><div class="nomobile noprint" style='margin-top:5px;border-top:3px solid #2F74D0;font-size:8pt'>Τέλος αυτόματα δημιουργημένου καταλόγου.</div></includeonly><noinclude>
Αυτό το πρότυπο σημαδεύει το "τέλος" μιας {{tl|Wikidata list}}.
[[Κατηγορίαν:Πρότυπα Wikidata]]
</noinclude>
c8rdzucn2bbhoum0p03dy1z4ym7qwuq
Πρότυπον:Wikidata list
10
3523
36938
2025-12-16T13:14:32Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#ifeq:{{NAMESPACE}}|{{ns:0}}|[[Κατηγορίαν:Λήμματα με αυτόματο κατάλογο από τα Wikidata]]}} <div class="nomobile noprint" style='margin-bottom:5px;border-bottom:3px solid #2F74D0;font-size:8pt'> <div style='float:right'>[https://tools.wmflabs.org/listeria/index.php?action=update&lang={{CONTENTLANG}}&page={{FULLPAGENAMEE}} Άμεση ενημέρωση καταλόγου]</div> Αυτός ο κα...'
36938
wikitext
text/x-wiki
<includeonly>{{#ifeq:{{NAMESPACE}}|{{ns:0}}|[[Κατηγορίαν:Λήμματα με αυτόματο κατάλογο από τα Wikidata]]}}
<div class="nomobile noprint" style='margin-bottom:5px;border-bottom:3px solid #2F74D0;font-size:8pt'>
<div style='float:right'>[https://tools.wmflabs.org/listeria/index.php?action=update&lang={{CONTENTLANG}}&page={{FULLPAGENAMEE}} Άμεση ενημέρωση καταλόγου]</div>
Αυτός ο κατάλογος ενημερώνεται περιοδικά με μηχανικό τρόπο από ένα [https://tools.wmflabs.org/listeria/ bot]. Επεξεργασίες σε αυτό τον κατάλογο από χρήστες με το συνηθισμένο «χειροκίνητο» τρόπο θα αναιρεθούν με την επόμενη ανανέωση από το bot!
{{#if:{{{sparql|}}}|<!--
-->[https://query.wikidata.org/#{{urlencode:{{{sparql}}}|PATH}} WQS] {{!}} <!--
-->[https://petscan.wmflabs.org/?sparql={{urlencode:{{{sparql}}}|PATH}}&doit= PetScan] {{!}} <!--
--> [http://yasgui.org/#query=PREFIX%20wikibase%3A%20%3Chttp%3A%2F%2Fwikiba.se%2Fontology%23%3E%0APREFIX%20wd%3A%20%3Chttp%3A%2F%2Fwww.wikidata.org%2Fentity%2F%3E%20%0APREFIX%20wdt%3A%20%3Chttp%3A%2F%2Fwww.wikidata.org%2Fprop%2Fdirect%2F%3E%0APREFIX%20rdfs%3A%20%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0APREFIX%20p%3A%20%3Chttp%3A%2F%2Fwww.wikidata.org%2Fprop%2F%3E%0APREFIX%20q%3A%20%3Chttp%3A%2F%2Fwww.wikidata.org%2Fprop%2Fqualifier%2F%3E%0APREFIX%20v%3A%20%3Chttp%3A%2F%2Fwww.wikidata.org%2Fprop%2Fstatement%2F%3E%0APREFIX%20pr%3A%20%3Chttp%3A%2F%2Fwww.wikidata.org%2Fprop%2Freference%2F%3E%0APREFIX%20prov%3A%20%3Chttp%3A%2F%2Fwww.w3.org%2Fns%2Fprov%23%3E%20%0APREFIX%20psv%3A%20%3Chttp%3A%2F%2Fwww.wikidata.org%2Fprop%2Fstatement%2Fvalue%2F%3E%0A%0A{{urlencode:{{{sparql}}}}}&contentTypeConstruct=text%2Fturtle&contentTypeSelect=application%2Fsparql-results%2Bjson&endpoint=https%3A%2F%2Fquery.wikidata.org%2Fsparql&requestMethod=GET&tabTitle=Query&headers=%7B%7D&outputFormat=table YASGUI] {{!}} <!--
--> [https://tools.wmflabs.org/fist/wdfist/index.html?sparql={{urlencode:{{{sparql}}}|PATH}} Βρείτε εικόνες]
}}</div></includeonly><noinclude>
{{documentation}}
</noinclude>
0hkv6mn4ilzf9rpcdgw5wgje97ftqrp
Πρότυπον:Wikidata
10
3524
36939
2025-12-16T13:15:36Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{safesubst:#invoke:Wikidata|formatStatementsFromTemplate|property={{{1|}}}|catbase={{{1}}}}}</includeonly><noinclude> {{Documentation}} </noinclude>'
36939
wikitext
text/x-wiki
<includeonly>{{safesubst:#invoke:Wikidata|formatStatementsFromTemplate|property={{{1|}}}|catbase={{{1}}}}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
3oxxqa7rcvwziki8horm3ylqun4yk7y
Πρότυπον:Wikidataimage
10
3525
36940
2025-12-16T13:16:58Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:Wikidata|getRawValue|property={{{1}}}|rank=best|limit=1}}<noinclude> {{documentation | content = <templatedata> { "params": { "1": { "label": "Ιδιότητα/Property", "example": "P18", "type": "string", "required": true } }, "description": "Επιστρέφει μόνο το όνομα αρχείου που ορίζεται σε κάποιο property του σχετικού αντικειμένου Wikidata", "f...'
36940
wikitext
text/x-wiki
{{#invoke:Wikidata|getRawValue|property={{{1}}}|rank=best|limit=1}}<noinclude>
{{documentation | content =
<templatedata>
{
"params": {
"1": {
"label": "Ιδιότητα/Property",
"example": "P18",
"type": "string",
"required": true
}
},
"description": "Επιστρέφει μόνο το όνομα αρχείου που ορίζεται σε κάποιο property του σχετικού αντικειμένου Wikidata",
"format": "inline"
}
</templatedata>
}}
<!-- Κατηγορίες ΑΝ χρειάζεται -->
</noinclude>
bwbmdq9gnmwpxocf9x6ratjn077e1ci
Πρότυπον:Infobox settlement/columns
10
3526
36941
2025-12-16T13:18:19Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<table style="width:100%; background:none;"> <tr>{{#if:{{{0|}}} |<!-- if 0 -->{{#if:{{{1|}}}{{{2|}}}{{{3|}}}{{{4|}}}{{{5|}}} |<!-- if 0 and (1 or 2 or 3 or 4 or 5) --><td><table style="width:100%; background:none;"> {{#if:{{{1|}}} |<tr><td style="vertical-align:middle; text-align:center;">{{{1|}}}</td></tr> }}{{#if:{{{2|}}} |<tr><td style="vertical-align:middle; text-align:center;">{{{2|}}}</td></tr> }}{{#if:{{{3|}}} |<tr><td style="vertical-ali...'
36941
wikitext
text/x-wiki
<table style="width:100%; background:none;">
<tr>{{#if:{{{0|}}}
|<!-- if 0
-->{{#if:{{{1|}}}{{{2|}}}{{{3|}}}{{{4|}}}{{{5|}}}
|<!-- if 0 and (1 or 2 or 3 or 4 or 5)
--><td><table style="width:100%; background:none;">
{{#if:{{{1|}}}
|<tr><td style="vertical-align:middle; text-align:center;">{{{1|}}}</td></tr>
}}{{#if:{{{2|}}}
|<tr><td style="vertical-align:middle; text-align:center;">{{{2|}}}</td></tr>
}}{{#if:{{{3|}}}
|<tr><td style="vertical-align:middle; text-align:center;">{{{3|}}}</td></tr>
}}{{#if:{{{4|}}}
|<tr><td style="vertical-align:middle; text-align:center;">{{{4|}}}</td></tr>
}}{{#if:{{{5|}}}
|<tr><td style="vertical-align:middle; text-align:center;">{{{5|}}}</td></tr>
}}</table></td>
}}<td style="vertical-align:top;text-align:center;">{{{0|}}}</td>
|<!-- if not 0
-->{{#ifexpr:({{#if:{{{1|}}}|1|0}}+{{#if:{{{2|}}}|1|0}}+{{#if:{{{3|}}}|1|0}}+{{#if:{{{4|}}}|1|0}}) > 2
|<!-- if more than two images
-->{{#if:{{{1|}}}
|<td style="vertical-align:middle; text-align:center;" {{#if:{{{2|}}}||colspan=2}}>{{{1|}}}</td>
}}{{#if:{{{2|}}}
|<td style="vertical-align:middle; text-align:center;" {{#if:{{{1|}}}||colspan=2}}>{{{2|}}}</td>
}}</tr><tr>{{#if:{{{3|}}}
|<td style="vertical-align:middle; text-align:center;" {{#if:{{{4|}}}||colspan=2}}>{{{3|}}}</td>
}}{{#if:{{{4| }}}
|<td style="vertical-align:middle; text-align:center;" {{#if:{{{3|}}}||colspan=2}}>{{{4|}}}</td>
}}
|<!-- if two or fewer images
-->{{#if:{{{1|}}}
|<td style="vertical-align:middle; text-align:center;">{{{1|}}}</td>
}}{{#if:{{{2|}}}
|<td style="vertical-align:middle; text-align:center;">{{{2|}}}</td>
}}{{#if:{{{3|}}}
|<td style="vertical-align:middle; text-align:center;">{{{3|}}}</td>
}}{{#if:{{{4| }}}
|<td style="vertical-align:middle; text-align:center;">{{{4|}}}</td>
}}{{#if:{{{5| }}}
|<td style="vertical-align:middle; text-align:center;">{{{5|}}}</td>
}}
}}
}}</tr></table><noinclude>
{{documentation}}
</noinclude>
8v5e6uagps1mngr4d9ei863p06ob2ae
Πρότυπον:Navbar
10
3527
36942
2025-12-16T13:19:22Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly><span class="plainlinks navbar noprint" style="{{#if:{{{nodiv|}}}||display:block;}}background:none; padding:0; font-weight:normal;{{{fontstyle|}}}; font-size:xx-small; {{{style|}}}"><!-- -->{{#if:{{{mini|}}}{{{plain|}}}|<!--nothing-->|<!--else: -->Αυτό το πλαίσιο: }}<!-- -->{{#if:{{{brackets|}}}|[}}<!-- -->{{transclude|{{{1}}}}}|<span title="Προβολή αυτού του προτύπου" style="{{{fontstyle|}...'
36942
wikitext
text/x-wiki
<includeonly><span class="plainlinks navbar noprint" style="{{#if:{{{nodiv|}}}||display:block;}}background:none; padding:0; font-weight:normal;{{{fontstyle|}}}; font-size:xx-small; {{{style|}}}"><!--
-->{{#if:{{{mini|}}}{{{plain|}}}|<!--nothing-->|<!--else:
-->Αυτό το πλαίσιο: }}<!--
-->{{#if:{{{brackets|}}}|[}}<!--
-->[[{{transclude|{{{1}}}}}|<span title="Προβολή αυτού του προτύπου" style="{{{fontstyle|}}}"><!--
-->{{#if:{{{mini|}}}|π|π}}</span>]]<!--
--> <span style="font-size:80%;">•</span> [[{{TALKPAGENAME:{{transclude|{{{1}}}}}}}|<span title="Συζήτηση για αυτό το πρότυπο" style="{{{fontstyle|}}}">{{#if:{{{mini|}}}|σ|σ}}</span>]]<!--
-->{{#if:{{{noedit|}}}|<!--nothing-->|<!--else:
--> <span style="font-size:80%;">•</span> [{{fullurl:{{transclude|{{{1}}}}}|action=edit}}<span title="Επεξεργασία αυτού του προτύπου" style="{{{fontstyle|}}};">{{#if:{{{mini|}}}|ε|ε}}</span>]<!--
-->}}<!--
-->{{#if:{{{brackets|}}}|]}}
</span></includeonly><noinclude>[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]</noinclude>
qzdohovx208mb5ivewii2aili5b2rdc
Πρότυπον:Transclude
10
3528
36943
2025-12-16T13:20:22Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#switch: {{NAMESPACE: {{{1}}} }} |#default = {{FULLPAGENAME: {{{1}}} }} <!-- the namespace was specified eg "User:Foo" "Template:Foo", "Category:Foo" --> |{{ns:0}} = <!-- we have either ":Foo" (mainspace) or "Foo" (a template) --> {{#ifeq: {{First character|{{{1|}}}}}|: |{{PAGENAME: {{{1}}} }} <!-- leading colon, eg ":Foo", so we want the article --> |Template:{{{1}}} <!-- no leading colon, eg "Foo", so we want the template -->...'
36943
wikitext
text/x-wiki
{{#switch: {{NAMESPACE: {{{1}}} }}
|#default = {{FULLPAGENAME: {{{1}}} }} <!-- the namespace was specified eg "User:Foo" "Template:Foo", "Category:Foo" -->
|{{ns:0}} = <!-- we have either ":Foo" (mainspace) or "Foo" (a template) -->
{{#ifeq: {{First character|{{{1|}}}}}|:
|{{PAGENAME: {{{1}}} }} <!-- leading colon, eg ":Foo", so we want the article -->
|Template:{{{1}}} <!-- no leading colon, eg "Foo", so we want the template -->
}}
}}<noinclude>
{{documentation}}
[[Κατηγορίαν:Πρότυπα Βικιπαίδειας|{{PAGENAME}}]]
</noinclude>
sz4t0n9wikcpje7wjtlomdg7jwk0arl
Module:ΕλληνικήΕτικέτα
828
3529
36944
2025-12-16T13:21:50Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.getLabel(frame) local label, lang = mw.wikibase.getLabelWithLang() if lang == 'el' then return label end return frame:preprocess('{{FULLPAGENAME}}') end return p'
36944
Scribunto
text/plain
local p = {}
function p.getLabel(frame)
local label, lang = mw.wikibase.getLabelWithLang()
if lang == 'el' then
return label
end
return frame:preprocess('{{FULLPAGENAME}}')
end
return p
8vsz5j9x4oajxi6jo54t9woo61oskzs
Module:Check for unknown parameters
828
3530
36945
2025-12-16T13:22:57Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- This module may be used to compare the arguments passed to the parent -- with a list of arguments, returning a specified result if an argument is -- not on the list local p = {} local function trim(s) return s:match('^%s*(.-)%s*$') end local function isnotempty(s) return s and trim(s) ~= '' end function p.check (frame) local args = frame.args local pargs = frame:getParent().args local ignoreblank = isnotempty(frame.args['ignoreblank'])...'
36945
Scribunto
text/plain
-- This module may be used to compare the arguments passed to the parent
-- with a list of arguments, returning a specified result if an argument is
-- not on the list
local p = {}
local function trim(s)
return s:match('^%s*(.-)%s*$')
end
local function isnotempty(s)
return s and trim(s) ~= ''
end
function p.check (frame)
local args = frame.args
local pargs = frame:getParent().args
local ignoreblank = isnotempty(frame.args['ignoreblank'])
local showblankpos = isnotempty(frame.args['showblankpositional'])
local knownargs = {}
local unknown = frame.args['unknown'] or 'Found _VALUE_, '
local preview = frame.args['preview']
local values = {}
local res = {}
local regexps = {}
-- create the list of known args, regular expressions, and the return string
for k, v in pairs(args) do
if type(k) == 'number' then
v = trim(v)
knownargs[v] = 1
elseif k:find('^regexp[1-9][0-9]*$') then
table.insert(regexps, '^' .. v .. '$')
end
end
if isnotempty(preview) then
preview = '<div class="hatnote" style="color:red"><strong>Προειδοποίηση:</strong> ' .. preview .. ' (αυτό το μήνυμα εμφανίζεται μόνο στην προεπισκόπηση).</div>'
elseif preview == nil then
preview = unknown
end
-- loop over the parent args, and make sure they are on the list
for k, v in pairs(pargs) do
if type(k) == 'string' and knownargs[k] == nil then
local knownflag = false
for i, regexp in ipairs(regexps) do
if mw.ustring.match(k, regexp) then
knownflag = true
break
end
end
if not knownflag and ( not ignoreblank or isnotempty(v) ) then
k = mw.ustring.gsub(k, '[^%w\-_ ]', '?')
table.insert(values, k)
end
elseif type(k) == 'number' and
knownargs[tostring(k)] == nil and
( showblankpos or isnotempty(v) )
then
local vlen = mw.ustring.len(v)
v = mw.ustring.sub(v, 1, (vlen < 25) and vlen or 25)
v = mw.ustring.gsub(v, '[^%w\-_ ]', '?')
table.insert(values, k .. ' = ' .. v .. ((vlen >= 25) and ' ...' or ''))
end
end
-- add resuls to the output tables
if #values > 0 then
if frame:preprocess( "{{REVISIONID}}" ) == "" then
unknown = preview
end
for k, v in pairs(values) do
if v == '' then
-- Fix odd bug for | = which gets stripped to the empty string and
-- breaks category links
v = ' '
end
local r = unknown:gsub('_VALUE_', v)
table.insert(res, r)
end
end
return table.concat(res)
end
return p
tabmrt2ixzenctckvi1ep88iu273v09
Πρότυπον:Both
10
3531
36946
2025-12-16T13:23:56Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#if:{{{1|}}}|{{#if:{{{2|}}}|1}}}}<noinclude> {{documentation}} </noinclude>'
36946
wikitext
text/x-wiki
{{#if:{{{1|}}}|{{#if:{{{2|}}}|1}}}}<noinclude>
{{documentation}}
</noinclude>
i47oohqipwf7wo7gvfqydm384eronbs
Πρότυπον:First character
10
3532
36947
2025-12-16T13:24:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{Str left|{{{1|}}}|1}}</includeonly><noinclude> {{Documentation}} <noinclude>'
36947
wikitext
text/x-wiki
<includeonly>{{Str left|{{{1|}}}|1}}</includeonly><noinclude>
{{Documentation}}
<noinclude>
gewt2k24jlgqhj8mp4n6dzooaibgwv4
Πρότυπον:Πολιτείαν
10
3533
36948
2025-12-16T13:27:25Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:check for unknown parameters|check |unknown= |preview=άγνωστη παράμετρος "_VALUE_" |Πολιτείαν|πολιτείαν|Όνομα|Ονομασία|όνομα|ονομασία|τύπος διοικητικής διαίρεσης|επίσημη ονομασία|image|Εικόνα|εικόνα|εικόνα1|image_size|πλάτος_εικόνας|image_φupright|alt|Λεζάντα|λεζάντα εικόνας|εικόνα...'
36948
wikitext
text/x-wiki
{{#invoke:check for unknown parameters|check
|unknown=
|preview=άγνωστη παράμετρος "_VALUE_"
|Πολιτείαν|πολιτείαν|Όνομα|Ονομασία|όνομα|ονομασία|τύπος διοικητικής διαίρεσης|επίσημη ονομασία|image|Εικόνα|εικόνα|εικόνα1|image_size|πλάτος_εικόνας|image_φupright|alt|Λεζάντα|λεζάντα εικόνας|εικόνα χάρτη τοποθεσίας|πλάτος εικόνας χάρτη τοποθεσίας|λεζάντα εικόνα χάρτη τοποθεσίας|Σημαία|σημαία|Σφραγίδα|σφραγίδα|Ασπίδα|ασπίδα|Έμβλημα|έμβλημα|pushpin_map_narrow|pushpin_map|Πλάτος Σημαίας|πλάτος_σημαίας|border|σύνορο|Σύνορο|Άρθρο Σημαίας|λεζάντα_σημαίας|Πλάτος Σφραγίδας|πλάτος_σφραγίδας|Άρθρο Σφραγίδας|λεζάντα_σφραγίδας|Πλάτος Ασπίδας|πλάτος_ασπίδας|Άρθρο Ασπίδας|λήμμα_ασπίδας|Πλάτος Εμβλήματος|πλάτος_εμβλήματος|Άρθρο Εμβλήματος|λήμμα_εμβλήματος|Ψευδώνυμο|παρατσούκλι|Σύνθημα|σύνθημα|Ύμνος|ύμνος|Πλάτος|πλάτος|AlternativeMap|Μήκος|μήκος|pushpin_map_caption|map_caption|Χάρτης τοποθεσίας|χάρτης τοποθεσίας|σημάδι χάρτη τοποθεσίας|μέγεθος σημαδιού χάρτη τοποθεσίας|alt χάρτη τοποθεσίας|mapzoom|Χώρα1|χώρα1|Χώρα|χώρα|πολιτεία|Περιφέρεια1|Περιφέρεια|Νομός1|Νομός|Δήμος1|Δήμος|διοικητική μονάδα|γεωγραφική περιοχή|Ιδρύθηκε|ιδρύθηκε|Κατοικήθηκε|κατοικήθηκε|Ενσωματώθηκε|αναγνωρίστηκε|εκτελεστικό σώμα|επικεφαλής ανώτατου διοικητικού οργάνου|Σώμα Διοίκησης|θέση του επικεφαλής της εκτελεστικής εξουσίας|Δήμαρχος|μέλος|Έκταση|έκταση|Υψόμετρο|υψόμετρο|Πληθυσμός|πληθυσμός|Απογραφή|απογραφή|noref|γεωγραφικός κωδικός|ΤαχυδρομικόςΚωδικός|ταχυδρομικός κώδικας|ΤηλεφωνικόςΚωδικός|ζώνη ώρας|Ιστοσελίδα|ιστοσελίδα|website|σημειώσεις|below}}{{#if: {{{πληθυσμός|}}}|[[Κατηγορίαν:Πρότυπον πολιτείαν με παράμετρο πληθυσμός]]}}
{{Πλαίσιον πληροφοριών
| bodyclass = vcard
| bodystyle = width:23.55em
| headerstyle = text-align:left; font-size:1.05em
| labelstyle = font-size:1.05em;
| datastyle = font-size:1.05em;
| abovestyle = font-size:1.3em; white-space:nowrap; padding:0.28em 0.4em
| above = {{{Πολιτείαν|{{{Όνομα|{{{Ονομασία|{{{όνομα|{{{ονομασία|{{#invoke:ΕλληνικήΕτικέτα|getLabel}} }}} }}} }}} }}} }}} <!--
{{infobox|child=yes|decat=yes
| headerstyle = font-size:1.05em; padding:0.3em 0.4em
| subheaderstyle = background-color:#cddeff; font-weight:bold; font-size:1.05em; padding:0.25em 0.4em
| subheader = {{#if: {{{τύπος διοικητικής διαίρεσης|{{Wikidata|P31|rank=best|addcat=true|separator=<br />|conjunction=<br />}}}}} |{{{τύπος διοικητικής διαίρεσης|{{Wikidata|P31|rank=best|addcat=true|separator=<br />|conjunction=<br />}}}}} }}
| rowclass1 = mergedtoprow
| header1 = {{#if: {{{επίσημη ονομασία|{{Wikidata|P1448|rank=best|addcat=true|withlang=el}}}}} |Επίσημον όνομα: {{{επίσημη ονομασία|{{Wikidata|P1448|rank=best|addcat=true|withlang=el}}}}} }}
}} -->
| image = {{#invoke:InfoboxImage|InfoboxImage|image={{{image|{{{Εικόνα|{{{εικόνα|{{{εικόνα1|{{Wikidataimage|P18|addcat=true}}}}}}}}}}}}}}|size={{{image_size|{{{πλάτος_εικόνας|250px}}}}}}|sizedefault=frameless|upright={{{image_upright|1}}}|alt={{{alt|}}}|suppressplaceholder=yes}}
| caption = {{{Λεζάντα|{{{λεζάντα εικόνας|{{#invoke:Wikidata|getQualifier|qualifier=P2096|property=P18|withtarget={{{image|{{Wikidataimage|P18|addcat=true}}}}}|qualifiers withlang=el}}}}}}}}
<!-- ***Σημαία, Σφραγίδα, Ασπίδα και Έμβλημα*** -->
| rowclass1 = mergedtoprow
| class1 = maptable
| data1 = {{#if:{{{Σημαία|{{{σημαία|{{Wikidataimage|P41|addcat=true}}}}}}}}{{{Σφραγίδα|{{{σφραγίδα|{{Wikidataimage|P158|addcat=true}}}}}}}}{{{Ασπίδα|{{{ασπίδα|{{Wikidataimage|P4004|addcat=true}}}}}}}}{{{Έμβλημα|{{{έμβλημα|{{Wikidataimage|P94|addcat=true}}}}}}}}{{both|{{{pushpin_map_narrow|}}}|{{{pushpin_map|}}}}}
|{{Infobox settlement/columns
| 1 = {{#invoke:InfoboxImage|InfoboxImage|image={{{Σημαία|{{{σημαία|{{Wikidataimage|P41|addcat=true}}}}}}}}|size={{{Πλάτος Σημαίας|{{{πλάτος_σημαίας|125px}}}}}}|sizedefault=frameless|upright={{{image_upright|1}}}|alt={{{alt|}}}|border={{{border|{{{σύνορο|{{{Σύνορο|yes}}}}}}}}}|suppressplaceholder=no}} {{#if:{{{Σημαία|{{{σημαία|{{Wikidataimage|P41|addcat=true}}}}}}}}|<br /><small>{{{Άρθρο Σημαίας|{{{λεζάντα_σημαίας|Σημαία}}}}}}</small> }}
| 2 = {{#invoke:InfoboxImage|InfoboxImage|image={{{Σφραγίδα|{{{σφραγίδα|{{Wikidataimage|P158|addcat=true}}}}}}}}|size={{{Πλάτος Σφραγίδας|{{{πλάτος_σφραγίδας|85px}}}}}}|sizedefault=frameless|upright={{{image_upright|1}}}|alt={{{alt|}}}|suppressplaceholder=no}} {{#if:{{{Σφραγίδα|{{{σφραγίδα|{{Wikidataimage|P158|addcat=true}}}}}}}}|<br /><small>{{{Άρθρο Σφραγίδας|{{{λεζάντα_σφραγίδας|Σφραγίδα}}}}}}</small> }}
| 3 = {{#invoke:InfoboxImage|InfoboxImage|image={{{Ασπίδα|{{{ασπίδα|{{Wikidataimage|P4004|addcat=true}}}}}}}}|size={{{Πλάτος Ασπίδας|{{{πλάτος_ασπίδας|85px}}}}}}|sizedefault=frameless|upright={{{image_upright|1}}}|alt={{{alt|}}}|suppressplaceholder=no}} {{#if:{{{Ασπίδα|{{{ασπίδα|{{Wikidataimage|P4004|addcat=true}}}}}}}}|<br /><small>{{{Άρθρο Ασπίδας|{{{λήμμα_ασπίδας|Ασπίδα}}}}}}</small> }}
| 4 = {{#invoke:InfoboxImage|InfoboxImage|image={{{Έμβλημα|{{{έμβλημα|{{Wikidataimage|P94|addcat=true}}}}}}}}|size={{{Πλάτος Εμβλήματος|{{{πλάτος_εμβλήματος|85px}}}}}}|sizedefault=frameless|upright={{{image_upright|1}}}|alt={{{alt|}}}|suppressplaceholder=no}} {{#if:{{{Έμβλημα|{{{έμβλημα|{{Wikidataimage|P94|addcat=true}}}}}}}}|<br /><small>{{{Άρθρο Εμβλήματος|{{{λήμμα_εμβλήματος|Έμβλημα}}}}}}</small> }} }}
}}
<!-- ***Ψευδώνυμο*** -->
| rowclass2 = mergedtoprow
| data2 = {{#if:{{{Ψευδώνυμο|{{{παρατσούκλι|{{Wikidata|P1449|rank=best|showsource=true|addcat=true}}}}}}}}|Παρωνύμιον: <span class="nickname">{{{Ψευδώνυμο|{{{παρατσούκλι|{{Wikidata|P1449|rank=best|showsource=true|addcat=true}}}}}}}}</span>}}
<!-- ***Σύνθημα*** -->
| rowclass3 = {{#if:{{{Ψευδώνυμο|{{{παρατσούκλι|{{Wikidata|P1449}}}}}}}}|mergedrow |mergedtoprow}}
| data3 = {{#if:{{{Σύνθημα|{{{σύνθημα|{{Wikidata|P1451|rank=best|showsource=true|addcat=true}}}}}}}}|Ρητό: {{{Σύνθημα|{{{σύνθημα|{{Wikidata|P1451|rank=best|showsource=true|addcat=true}}}}}}}} }}
<!-- ***Ύμνος*** -->
| rowclass4 = {{#if:{{{Σύνθημα|{{{σύνθημα|{{Wikidata|P1451}}}}}}}}|mergedrow |mergedtoprow}}
| data4 = {{#if:{{{Ύμνος|{{{ύμνος|{{Wikidata|P85|rank=best|showsource=true|addcat=true}}}}}}}}|Ύμνος: {{{Ύμνος|{{{ύμνος|{{Wikidata|P85|rank=best|showsource=true|addcat=true}}}}}}}} }}
<!-- ***Χάρτες*** -->
| rowclass5 = mergedtoprow
| class5 = maptable
| data5 = {{#if: {{{Πλάτος|{{{πλάτος|}}}}}}|
{{Location map|{{{pushpin_map|}}}
|AlternativeMap= {{{AlternativeMap|}}}
|label= {{{Πολιτείαν|{{{πολιτείαν|{{{όνομα|}}}}}}}}}
|lat= {{{Πλάτος|{{{πλάτος|}}}}}}
|long= {{{Μήκος|{{{μήκος|}}}}}}
|caption =
|width= 250
|float= center
}}{{#if:{{{pushpin_map_caption|}}}|<small>{{{pushpin_map_caption}}}</small>|{{#if:{{{map_caption|}}}|<small>{{{map_caption}}}</small>}} }}
|{{#if:{{#property:P625}}|
{{Location map | {{{Χάρτης τοποθεσίας|{{{χάρτης τοποθεσίας|{{#property:P17}}}}}}}}
|label = {{{όνομα|{{#invoke:ΕλληνικήΕτικέτα|getLabel}} }}}
|lat_deg = {{#invoke:Wikidata|getRawValue|property=P625|field=latitude|addcat=true}}
|lon_deg = {{#invoke:Wikidata|getRawValue|property=P625|field=longitude|addcat=true}}
|width = 250
|float = center
|mark = {{{σημάδι χάρτη τοποθεσίας|}}}
|marksize = {{{μέγεθος σημαδιού χάρτη τοποθεσίας|}}}
|alt = {{{alt χάρτη τοποθεσίας|Τοποθεσία στο χάρτη}}}
}}
{{#tag:maplink|{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {
"title": "{{{Πολιτείαν|{{{Όνομα|{{{Ονομασία|{{{όνομα|{{{ονομασία|{{#invoke:ΕλληνικήΕτικέτα|getLabel}} }}} }}} }}} }}} }}}",
"marker-symbol": "town",
"marker-size": "medium",
"marker-color": "#B80000"
},
"geometry": {
"type": "Point",
"coordinates": [{{#invoke:Wikidata|getRawValue|property=P625|field=longitude}}, {{#invoke:Wikidata|getRawValue|property=P625|field=latitude}}]
}
}
]
}|zoom={{{mapzoom|12}}}|latitude={{#invoke:Wikidata|getRawValue|property=P625|field=latitude}}|longitude={{#invoke:Wikidata|getRawValue|property=P625|field=longitude}} }} }} }}
| data6 = {{#invoke:InfoboxImage|InfoboxImage|image={{{image|{{{εικόνα χάρτη τοποθεσίας|{{Wikidataimage|P242}}}}}}}}|size={{{image_size|{{{πλάτος εικόνας χάρτη τοποθεσίας|250px}}}}}}|sizedefault=frameless|upright={{{image_upright|1}}}|alt={{{alt|}}}|suppressplaceholder=yes}} {{{λεζάντα εικόνα χάρτη τοποθεσίας|{{#invoke:Wikidata|getQualifier|qualifier=P2096|property=P242|withtarget={{{image|{{Wikidataimage|P242|addcat=true}}}}}|qualifiers withlang=el}}}}}
<!-- ***Υποδιαιρέσεις*** -->
| rowclass14 = mergedtoprow
| label14 = {{{Χώρα1|{{{χώρα1|[[Κατάλογος χωρών|Χώρα]]}}}}}}
| data14 = {{{Χώρα|{{{χώρα|{{Wikidata|P17|rank=best|showsource=true|addcat=true}}}}}}}}
| rowclass15 = mergedrow
| label15 = {{{Πολιτεία1|Πολιτεία}}}
| data15 = {{{πολιτεία|}}}
| rowclass16 = mergedrow
| label16 = {{{Περιφέρεια1|Περιφέρεια}}}
| data16 = {{{Περιφέρεια|}}}
| rowclass17 = mergedrow
| label17 = {{{Νομός1|Νομός}}}
| data17 = {{{Νομός|}}}
| rowclass18 = mergedrow
| label18 = {{{Δήμος1|Δήμος}}}
| data18 = {{{Δήμος|}}}
| rowclass19 = mergedrow
| label19 = Διοικητικήν υπαγωγήν
| data19 = {{{διοικητική μονάδα|{{Wikidata|P131|sort=P580|invert=true|limit=1|showsource=true|addcat=true|rank=best}}}}}
| rowclass20 = mergedrow
| label20 = Γεωγραφικήν υπαγωγήν
| data20 = {{{γεωγραφική περιοχή|{{Wikidata|P706|rank=best|showsource=true|addcat=true}}}}}
<!--***Ίδρυση*** -->
| rowclass24 = mergedtoprow
| label24 = Ίδρυσιν
| data24 = {{{Ιδρύθηκε|{{{ιδρύθηκε|{{Wikidata|P571|rank=best|showsource=true|addcat=true}}}}}}}}
| rowclass25 = mergedrow
| label25 = Κατοίκισιν
| data25 = {{{Κατοικήθηκε|{{{κατοικήθηκε|}}}}}}
| rowclass26 = mergedrow
| label26 = Αναγνώρισιν
| data26 = {{{Ενσωματώθηκε|{{{αναγνωρίστηκε|}}}}}}
<!--***Προστάτης*** -->
| rowclass27 = mergedtoprow
| label27 = Προστάτης
| data27 = {{{Προστάτης|{{{προστάτης|{{Wikidata|P417|rank=best|showsource=true|addcat=true}}}}}}}}
<!-- ***Τύπος Διοίκησης και Ηγέτης*** -->
| rowclass29 = mergedtoprow
| header29 = {{#if:{{{εκτελεστικό σώμα|{{Wikidata|P208}}}}}{{{επικεφαλής ανώτατου διοικητικού οργάνου|{{Wikidata|P6}}}}}|Διοίκηση }}
<!-- ***Διοίκηση*** -->
| rowclass31 = mergedrow
| label31 = • Σώμα
| class31 = agent
| data31 = {{{Σώμα Διοίκησης|{{{εκτελεστικό σώμα|{{Wikidata|P208|rank=best|showsource=true|addcat=true}}}}}}}}
| rowclass32 = mergedrow
| label32 = • {{#if:{{{θέση του επικεφαλής της εκτελεστικής εξουσίας|{{Wikidata|P1313}}}}}|{{{θέση του επικεφαλής της εκτελεστικής εξουσίας|{{Wikidata|P1313|rank=best|showsource=true|addcat=true}}}}}|Δημάρχων}}
| data32 = {{{Δήμαρχος|{{{επικεφαλής ανώτατου διοικητικού οργάνου|{{Wikidata|P6|rank=best|showqualifier=time|showsource=true|addcat=true}}}}}}}}
| rowclass33 = mergedrow
| label33 = • Μέλος τού/της
| class33 = agent
| data33 = {{{μέλος|{{Wikidata|P463|rank=best|showsource=true|addcat=true|separator=<br />|conjunction=<br />}}}}}
<!-- ***Γεωγραφικά χαρακτηριστικά*** -->
<!-- ***Έκταση*** -->
| rowclass34 = mergedtoprow
| label34 = Έκτασις
| data34 = {{#if:{{{Έκταση|{{{έκταση|{{Wikidata|P2046|rank=best|showqualifier=no|showsource=true|}}}}}}}}|{{{Έκταση|{{{έκταση|{{Wikidata|P2046|rank=best|showqualifier=no|showsource=true|addcat=true}}}}}}}}}}
<!-- ***Υψόμετρο*** -->
| rowclass35 = mergedtoprow
| label35 = Υψόμετρον
| data35 = {{#if:{{{Υψόμετρο|{{{υψόμετρο|{{Wikidata|P2044|rank=best|showsource=true|addcat=true}}}}}}}}| {{{Υψόμετρο|{{{υψόμετρο|{{Wikidata|P2044|rank=best|showsource=true|addcat=true}}}}}|{{Wikidata|P2044|rank=best|showsource=true|addcat=true}}}}}}}
<!-- ***Πληθυσμός*** -->
| rowclass36 = mergedtoprow
| label36 = Πληθυσμόν
| data36 = {{#if:{{{Πληθυσμός|}}}|{{{Πληθυσμός}}}{{#if:{{{απογραφή|}}}| <small>({{{απογραφή}}})</small>}} | {{{Πληθυσμός|{{Wikidata|P1082|showqualifier=P585|rank=best|sort=P585|invert=true|limit=1|showsource={{#if:{{{noref|}}}||true}}|qualifiers precision=9|addcat=true}}}}} }}
<!-- ***Γεωγραφικός κωδικός*** -->
| rowclass37 = mergedtoprow
| label37 = Γεωγραφικόν κωδικόν
| data37 = {{{γεωγραφικός κωδικός|}}}
<!-- ***Ταχυδρομικός κώδικας*** -->
| rowclass38 = mergedtoprow
| label38 = [[Ταχυδρομικόν κωδικόν|Ταχ. κωδ.]]
| data38 = {{{ΤαχυδρομικόςΚωδικός|{{{ταχυδρομικός κώδικας|{{Wikidata|P281|rank=best|showsource=true|addcat=true}}}}}}}}
<!-- ***Τηλεφωνικός κωδικός*** -->
| rowclass39 = mergedtoprow
| label39 = [[Τηλεφωνικόν σχέδιον αριθμοδότησης|Τηλ. κωδ.]]
| data39 = {{{ΤηλεφωνικόςΚωδικός|{{Wikidata|P473|rank=best|showsource=true}}}}}
<!-- ***Ζώνη ώρας*** -->
| rowclass41 = mergedtoprow
| label41 = [[Ζώνην ώρας]]
| data41 = {{{ζώνη ώρας|{{Wikidata|P421|rank=best|showqualifier=p1264|addcat=true|separator=<br />|conjunction=<br />}}}}}
<!-- ***Ιστοσελίδα*** -->
| rowclass42 = mergedtoprow
| label42 = Ιστότοπον
| data42 = {{#if:{{{Ιστοσελίδα|{{{ιστοσελίδα|{{{website|{{#property:P856}}}}}}}}}}}|{{{Ιστοσελίδα|{{{ιστοσελίδα|{{{website|{{Επίσημος ιστότοπος|{{#invoke:Wikidata|getRawValue|property=P856|addcat=true}}}}}}}}}}}}}}}
| data70 = {{#if:{{{σημειώσεις|}}}|'''Σημειώσεις'''<div style="line-height:1.2em;">{{{σημειώσεις}}}</div>}}
| data71 = {{#if:{{#property:P373}} | {{icon|commons}} {{Wikidata|P373|pattern=[[commons:category:$1|Σχετικά πολυμέσα]]|addcat=true}} }}
| data72 = {{{footnotes|{{{υποσημειώσεις|}}}}}}
| below = {{{below|[//www.wikidata.org/wiki/Special:ItemByTitle?site=elwiki&uselang=el&page={{PAGENAMEE}} δεδομένα] ({{navbar|Πολιτείαν|mini=true|nodiv=true|style=font-size:75%;}}) }}}
| belowclass = plainlinks noprint
| belowstyle = text-align:right; font-size:90%;
}}<noinclude>
</noinclude>
qdffu94zjd938tqqeer0k534b9vktnh
Πρότυπον:Collapsible list
10
3534
36949
2025-12-16T13:29:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="mw-collapsible {{#if:{{{expand|}}}||mw-collapsed}}" style="{{#if:{{{frame_style|}}}{{{framestyle|}}} |{{{frame_style|}}}{{{framestyle|}}} |border:none; padding:0;}}"> <div class="" style="{{#if:{{{title_style|}}}{{{titlestyle|}}} |{{{title_style|}}}{{{titlestyle|}}} |background:transparent;" align="left}}"><!-- -->{{#if:{{{title|}}} |{{{title|}}} |'''Λίστα'''}}<!-- --></div> <div class="mw-collapsible-content" style="...'
36949
wikitext
text/x-wiki
<div class="mw-collapsible {{#if:{{{expand|}}}||mw-collapsed}}" style="{{#if:{{{frame_style|}}}{{{framestyle|}}} |{{{frame_style|}}}{{{framestyle|}}} |border:none; padding:0;}}">
<div class="" style="{{#if:{{{title_style|}}}{{{titlestyle|}}} |{{{title_style|}}}{{{titlestyle|}}} |background:transparent;" align="left}}"><!--
-->{{#if:{{{title|}}} |{{{title|}}} |'''Λίστα'''}}<!--
--></div>
<div class="mw-collapsible-content" style="{{#if:{{{list_style|}}}{{{liststyle|}}} |{{{list_style|}}}{{{liststyle|}}} |text-align:left;}}"><!--
-->{{#if:{{{1|}}} |{{{1|}}} }}<!--
-->{{#if:{{{2|}}} |<br />{{{2|}}} }}<!--
-->{{#if:{{{3|}}} |<br />{{{3|}}} }}<!--
-->{{#if:{{{4|}}} |<br />{{{4|}}} }}<!--
-->{{#if:{{{5|}}} |<br />{{{5|}}} }}<!--
-->{{#if:{{{6|}}} |<br />{{{6|}}} }}<!--
-->{{#if:{{{7|}}} |<br />{{{7|}}} }}<!--
-->{{#if:{{{8|}}} |<br />{{{8|}}} }}<!--
-->{{#if:{{{9|}}} |<br />{{{9|}}} }}<!--
-->{{#if:{{{10|}}} |<br />{{{10|}}} }}<!--
-->{{#if:{{{11|}}} |<br />{{{11|}}} }}<!--
-->{{#if:{{{12|}}} |<br />{{{12|}}} }}<!--
-->{{#if:{{{13|}}} |<br />{{{13|}}} }}<!--
-->{{#if:{{{14|}}} |<br />{{{14|}}} }}<!--
-->{{#if:{{{15|}}} |<br />{{{15|}}} }}<!--
-->{{#if:{{{16|}}} |<br />{{{16|}}} }}<!--
-->{{#if:{{{17|}}} |<br />{{{17|}}} }}<!--
-->{{#if:{{{18|}}} |<br />{{{18|}}} }}<!--
-->{{#if:{{{19|}}} |<br />{{{19|}}} }}<!--
-->{{#if:{{{20|}}} |<br />{{{20|}}} }}<!--
-->{{#if:{{{21|}}} |<br />{{{21|}}} }}<!--
-->{{#if:{{{22|}}} |<br />{{{22|}}} }}<!--
-->{{#if:{{{23|}}} |<br />{{{23|}}} }}<!--
-->{{#if:{{{24|}}} |<br />{{{24|}}} }}<!--
-->{{#if:{{{25|}}} |<br />{{{25|}}} }}<!--
-->{{#if:{{{26|}}} |<br />{{{26|}}} }}<!--
-->{{#if:{{{27|}}} |<br />{{{27|}}} }}<!--
-->{{#if:{{{28|}}} |<br />{{{28|}}} }}<!--
-->{{#if:{{{29|}}} |<br />{{{29|}}} }}<!--
-->{{#if:{{{30|}}} |<br />{{{30|}}} }}<!--
-->{{#if:{{{31|}}} |<br />{{{31|}}} }}<!--
-->{{#if:{{{32|}}} |<br />{{{32|}}} }}<!--
-->{{#if:{{{33|}}} |<br />{{{33|}}} }}<!--
-->{{#if:{{{34|}}} |<br />{{{34|}}} }}<!--
-->{{#if:{{{35|}}} |<br />{{{35|}}} }}<!--
-->{{#if:{{{36|}}} |<br />{{{36|}}} }}<!--
-->{{#if:{{{37|}}} |<br />{{{37|}}} }}<!--
-->{{#if:{{{38|}}} |<br />{{{38|}}} }}<!--
-->{{#if:{{{39|}}} |<br />{{{39|}}} }}<!--
-->{{#if:{{{40|}}} |<br />{{{40|}}} }}<!--
-->{{#if:{{{41|}}} |<br />{{{41|}}} }}<!--
-->{{#if:{{{42|}}} |<br />{{{42|}}} }}<!--
-->{{#if:{{{43|}}} |<br />{{{43|}}} }}<!--
-->{{#if:{{{44|}}} |<br />{{{44|}}} }}<!--
-->{{#if:{{{45|}}} |<br />{{{45|}}} }}<!--
-->{{#if:{{{46|}}} |<br />{{{46|}}} }}<!--
-->{{#if:{{{47|}}} |<br />{{{47|}}} }}<!--
-->{{#if:{{{48|}}} |<br />{{{48|}}} }}<!--
-->{{#if:{{{49|}}} |<br />{{{49|}}} }}<!--
-->{{#if:{{{50|}}} |<br />{{{50|}}} }}<!--
--></div>
</div><noinclude>
{{Τεκμηρίωση προτύπου}}
</noinclude>
lhbev68c7dhoy7k1oxmlgf8zssd4kg2
Πρότυπον:Location map
10
3535
36951
2025-12-16T13:33:23Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{location map+ | {{{1|World}}} | border = {{{border|}}} | alt = {{{alt|}}} | caption_undefined = {{#ifeq: {{{caption|+}}} | {{{caption|-}}} || defined }} | caption = {{{caption|}}} | label = {{{label|}}} | float = {{{float|}}} | width = {{{width|}}} | relief= {{{relief|}}} | AlternativeMap = {{{AlternativeMap|}}} | overlay_image = {{{overlay_image|}}} | places = {{Location map~ | {{{1|World}}} | label = {{{label|}}} | label_size...'
36951
wikitext
text/x-wiki
<includeonly>{{location map+
| {{{1|World}}}
| border = {{{border|}}}
| alt = {{{alt|}}}
| caption_undefined = {{#ifeq: {{{caption|+}}} | {{{caption|-}}} || defined }}
| caption = {{{caption|}}}
| label = {{{label|}}}
| float = {{{float|}}}
| width = {{{width|}}}
| relief= {{{relief|}}}
| AlternativeMap = {{{AlternativeMap|}}}
| overlay_image = {{{overlay_image|}}}
| places = {{Location map~
| {{{1|World}}}
| label = {{{label|}}}
| label_size = {{{label_size|}}}
| label_width = {{{label_width|}}}
| mark = {{{mark|}}}
| marksize = {{{marksize|}}}
| alt = {{{alt|}}}
| position = {{{position|}}}
| background = {{{background|}}}
| link = {{{link|}}}
| lat_dir = {{{lat_dir|}}}
| lat_deg = {{{lat_deg|}}}
| lat_min = {{{lat_min|}}}
| lat_sec = {{{lat_sec|}}}
| lon_deg = {{{lon_deg|}}}
| lon_min = {{{lon_min|}}}
| lon_sec = {{{lon_sec|}}}
| lon_dir = {{{lon_dir|}}}
| lat = {{{lat|}}}
| long = {{{long|}}}
| coordinates = {{{coordinates|}}}
}}
}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
cmi03pz6y08ww47q6jgnxa7t2pfylw3
Πρότυπον:Location map+
10
3536
36952
2025-12-16T13:34:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#invoke:Location map/multi|container}}</includeonly><noinclude>{{documentation}}</noinclude>'
36952
wikitext
text/x-wiki
<includeonly>{{#invoke:Location map/multi|container}}</includeonly><noinclude>{{documentation}}</noinclude>
cshtxc3nnd9lycyakwliacrbcdvid4y
Πρότυπον:Top icon
10
3537
36953
2025-12-16T13:36:00Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly><nowiki /><!-- This nowiki tag helps prevent whitespace at the top of articles. -->{{#tag:indicator |[[File:{{{image|{{{imagename|}}}}}}|class=notpageimage|{{#if:{{{width|}}}|{{{width}}}|20}}x{{#if:{{{height|}}}|{{{height}}}|20}}px |{{#if:{{{link|{{{wikilink|}}}}}}|link={{{link|{{{wikilink}}}}}}}} |{{#if:{{{alt|}}}|alt={{{alt}}}}} |{{{text|{{{description|}}}}}}]] |name = {{#if:{{{sortkey|}}}|{{{sortkey}}}-}}{{#if:{{{name|}}}|{{{name...'
36953
wikitext
text/x-wiki
<includeonly><nowiki /><!-- This nowiki tag helps prevent whitespace at the top of articles. -->{{#tag:indicator
|[[File:{{{image|{{{imagename|}}}}}}|class=notpageimage|{{#if:{{{width|}}}|{{{width}}}|20}}x{{#if:{{{height|}}}|{{{height}}}|20}}px
|{{#if:{{{link|{{{wikilink|}}}}}}|link={{{link|{{{wikilink}}}}}}}}
|{{#if:{{{alt|}}}|alt={{{alt}}}}}
|{{{text|{{{description|}}}}}}]]
|name = {{#if:{{{sortkey|}}}|{{{sortkey}}}-}}{{#if:{{{name|}}}|{{{name}}}|{{#if:{{{id|}}}|{{{id}}}|{{{image|{{{imagename|}}}}}}}}}}
}}{{Category handler
|user = {{{usercat|}}}
|main = {{{maincat|}}}
|subpage = {{{subpage|no}}}
|nocat = {{{nocat|}}}
}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
fghbfef651v3q88mgqzh1qdjyglhm82
Πρότυπον:Category handler
10
3538
36954
2025-12-16T13:36:55Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:Category handler|main}}<noinclude> {{documentation}} <!-- Add categories to the /doc subpage, and interwikis to Wikidata. --> </noinclude>'
36954
wikitext
text/x-wiki
{{#invoke:Category handler|main}}<noinclude>
{{documentation}}
<!-- Add categories to the /doc subpage, and interwikis to Wikidata. -->
</noinclude>
og6fhyj2ssd4fmzpqzuodk12q3cms0z
Module:Location map/multi
828
3539
36955
2025-12-16T13:42:35Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'require('strict') local p = {} local getArgs = require('Module:Arguments').getArgs local locmap = require('Module:Location map') function p.container(frame, args, map) if not args then args = getArgs(frame, {wrappers = 'Template:Location map+', valueFunc = locmap.valueFunc}) end if not map then map = locmap.getMapParams(args[1], frame) end return locmap.top(frame, args, map) .. (args.places and args.places:gsub('%s*\n%s*', '') or '') .....'
36955
Scribunto
text/plain
require('strict')
local p = {}
local getArgs = require('Module:Arguments').getArgs
local locmap = require('Module:Location map')
function p.container(frame, args, map)
if not args then
args = getArgs(frame, {wrappers = 'Template:Location map+', valueFunc = locmap.valueFunc})
end
if not map then
map = locmap.getMapParams(args[1], frame)
end
return locmap.top(frame, args, map) .. (args.places and args.places:gsub('%s*\n%s*', '') or '') .. locmap.bottom(frame, args, map)
end
local function manyMakeArgs(fullArgs, n)
if n == 1 then
return {
lat = fullArgs.lat1 or fullArgs.lat,
long = fullArgs.long1 or fullArgs.long,
coordinates = fullArgs.coordinates1 or fullArgs.coordinates,
lat_deg = fullArgs.lat1_deg or fullArgs.lat_deg,
lat_min = fullArgs.lat1_min or fullArgs.lat_min,
lat_sec = fullArgs.lat1_sec or fullArgs.lat_sec,
lat_dir = fullArgs.lat1_dir or fullArgs.lat_dir,
lon_deg = fullArgs.lon1_deg or fullArgs.lon_deg,
lon_min = fullArgs.lon1_min or fullArgs.lon_min,
lon_sec = fullArgs.lon1_sec or fullArgs.lon_sec,
lon_dir = fullArgs.lon1_dir or fullArgs.lon_dir,
mark = fullArgs.mark1 or fullArgs.mark,
marksize = fullArgs.mark1size or fullArgs.marksize,
link = fullArgs.link1 or fullArgs.link,
label = fullArgs.label1 or fullArgs.label,
label_size = fullArgs.label1_size or fullArgs.label_size,
position = fullArgs.position1 or fullArgs.pos1 or fullArgs.position or fullArgs.pos,
background = fullArgs.background1 or fullArgs.bg1 or fullArgs.background or fullArgs.bg
}
else
return {
lat = fullArgs['lat' .. n],
long = fullArgs['long' .. n],
coordinates = fullArgs['coordinates' .. n],
lat_deg = fullArgs['lat' .. n .. '_deg'],
lat_min = fullArgs['lat' .. n .. '_min'],
lat_sec = fullArgs['lat' .. n .. '_sec'],
lat_dir = fullArgs['lat' .. n .. '_dir'],
lon_deg = fullArgs['lon' .. n .. '_deg'],
lon_min = fullArgs['lon' .. n .. '_min'],
lon_sec = fullArgs['lon' .. n .. '_sec'],
lon_dir = fullArgs['lon' .. n .. '_dir'],
outside = fullArgs['outside' .. n],
mark = fullArgs['mark' .. n],
marksize = fullArgs['mark' .. n .. 'size'],
link = fullArgs['link' .. n],
label = fullArgs['label' .. n],
label_size = fullArgs['label' .. n .. '_size'],
position = fullArgs['position' .. n] or fullArgs['pos' .. n],
background = fullArgs['background' .. n] or fullArgs['bg' .. n]
}
end
end
function p.many(frame, args, map)
if not args then
args = getArgs(frame, {wrappers = 'Template:Location map many', valueFunc = locmap.valueFunc})
end
if not args[1] then
args[1] = 'World'
end
if not map then
map = {}
for mapname in string.gmatch(args[1], '[^#]+') do
map[#map + 1] = locmap.getMapParams(mapname, frame)
end
if #map ~= 1 then
local outputs = {}
args.autoSwitcherLabel = true
for k,v in ipairs(map) do
outputs[k] = p.many(frame, args, v)
end
return '<div class="switcher-container">' .. table.concat(outputs) .. '</div>'
end
map = map[1]
end
local marks = {}
local markhigh
if args.markhigh then
mw.log('Removed parameter markhigh used.')
local parent = frame:getParent()
if parent then
mw.log('Parent is ' .. parent:getTitle())
end
mw.logObject(args, 'args')
markhigh = true
end
for k, v in pairs(args) do -- @todo change to uargs once we have that
if v then
if string.sub(k, -4) == '_deg' then
k = string.sub(k, 1, -5)
end
if string.sub(k, 1, 3) == 'lat' then
k = tonumber(string.sub(k, 4))
if k then
table.insert(marks, k)
end
elseif string.sub(k, 1, 11) == 'coordinates' then
k = tonumber(string.sub(k, 12))
if k then
table.insert(marks,k)
end
end
end
end
table.sort(marks)
if marks[1] ~= 1 and (args.lat or args.lat_deg or args.coordinates) then
table.insert(marks, 1, 1)
end
local body = ''
for _, v in ipairs(marks) do
-- don't try to consolidate this into the above loop. ordering of elements from pairs() is unspecified
body = body .. tostring( locmap.mark(frame, manyMakeArgs(args, v), map) )
if args['mark' .. v .. 'high'] then
mw.log('Removed parameter mark' .. v .. 'high used.')
local parent = frame:getParent()
if parent then
mw.log('Parent is ' .. parent:getTitle())
end
mw.logObject(args, 'args')
markhigh = true
end
end
args.label = nil -- there is no global label
return locmap.top(frame, args, map) .. body .. locmap.bottom(frame, args, map) .. (markhigh and '[[Category:Location maps with possible errors|Page using removed parameter]]' or '')
end
function p.load(frame, args, map)
if not args then
args = getArgs(frame, {frameOnly = true})
end
local dataModule = mw.loadData(frame.args[1])
if not map then
map = {}
for mapname in string.gmatch(dataModule.containerArgs[1], '[^#]+') do
map[#map + 1] = locmap.getMapParams(mapname, frame)
end
if #map ~= 1 then
local outputs = {}
args.autoSwitcherLabel = true
for k,v in ipairs(map) do
outputs[k] = p.load(frame, args, v)
end
return '<div class="switcher-container">' .. table.concat(outputs) .. '</div>'
end
map = map[1]
end
local marks = {}
if dataModule.marks then
for k,markArgs in ipairs(dataModule.marks) do
marks[k] = tostring(locmap.mark(frame, markArgs, map))
end
end
if dataModule.secondaryModules then
for _,modname in ipairs(dataModule.secondaryModules) do
for _,markArgs in ipairs(mw.loadData(modname).marks) do
marks[#marks + 1] = tostring(locmap.mark(frame, markArgs, map))
end
end
end
return locmap.top(frame, dataModule.containerArgs, map) .. table.concat(marks) .. locmap.bottom(frame, dataModule.containerArgs, map)
end
return p
hvyclt43lr85tnw4izln3q85ts2y2i6
Πρότυπον:Location map/styles.css
10
3540
36956
2025-12-16T13:44:02Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '.locmap .od { position: absolute; } .locmap .id { position: absolute; line-height: 0; } .locmap .l0 { font-size: 0; position: absolute; } .locmap .pv { line-height: 110%; position: absolute; text-align: center; } .locmap .pl { line-height: 110%; position: absolute; top: -0.75em; text-align: right; } .locmap .pr { line-height: 110%; position: absolute; top: -0.75em; text-align: left; } .locmap .pv > div { display: inline; pad...'
36956
sanitized-css
text/css
.locmap .od {
position: absolute;
}
.locmap .id {
position: absolute;
line-height: 0;
}
.locmap .l0 {
font-size: 0;
position: absolute;
}
.locmap .pv {
line-height: 110%;
position: absolute;
text-align: center;
}
.locmap .pl {
line-height: 110%;
position: absolute;
top: -0.75em;
text-align: right;
}
.locmap .pr {
line-height: 110%;
position: absolute;
top: -0.75em;
text-align: left;
}
.locmap .pv > div {
display: inline;
padding: 1px;
}
.locmap .pl > div {
display: inline; /* inline does not impact floated elements */
padding: 1px;
float: right;
}
.locmap .pr > div {
display: inline; /* inline does not impact floated elements */
padding: 1px;
float: left;
}
/* Dark mode theme: */
@media screen {
html.skin-theme-clientpref-night .od,
html.skin-theme-clientpref-night .od .pv > div,
html.skin-theme-clientpref-night .od .pl > div,
html.skin-theme-clientpref-night .od .pr > div {
/* Use !important to override any infobox rules */
background: #fff !important;
color: #000 !important;
}
html.skin-theme-clientpref-night .locmap {
filter: grayscale(0.6);
}
/* Special handling for maps inside infoboxes
* [[Module talk:Location map#Map label background bug in dark mode]]
*/
html.skin-theme-clientpref-night .infobox-full-data .locmap div {
background: transparent !important;
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .locmap {
filter: grayscale(0.6);
}
html.skin-theme-clientpref-os .od,
html.skin-theme-clientpref-os .od .pv > div,
html.skin-theme-clientpref-os .od .pl > div,
html.skin-theme-clientpref-os .od .pr > div {
/* Use !important to override any infobox rules */
background: white !important;
color: #000 !important;
}
html.skin-theme-clientpref-os .infobox-full-data .locmap div {
background: transparent !important;
}
}
idh7txxvu2xq51q6qikguru7bmfx39b
Πρότυπον:Location map~
10
3541
36957
2025-12-16T13:44:59Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#invoke:Location map|mark}}</includeonly><noinclude> {{Documentation}} </noinclude>'
36957
wikitext
text/x-wiki
<includeonly>{{#invoke:Location map|mark}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
1lw8zlt59mztp7ojo9dt06oixklle0p
Module:Location map/data/Greece
828
3542
36958
2025-12-16T13:46:23Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'return { name = 'Greece', top = 42.0, bottom = 34.6, left = 19.1, right = 29.9, image = 'Greece location map.svg', image1 = 'Greece relief location map.jpg' }'
36958
Scribunto
text/plain
return {
name = 'Greece',
top = 42.0,
bottom = 34.6,
left = 19.1,
right = 29.9,
image = 'Greece location map.svg',
image1 = 'Greece relief location map.jpg'
}
7ul2hl356klg7qepqsm1qztd95d5uqb
Πρότυπον:Icon
10
3543
36959
2025-12-16T13:47:01Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'File:{{#switch:{{lc:{{{class|{{{1|}}}}}}}} |fa = Featured article star.svg {{!}} Featured article |far = Cscr-star piece.png {{!}} Featured article review |farc = Cscr-star piece.png {{!}} Featured article removal candidate |ffa|dfa = Featured article star - cross.svg {{!}} Former featured article |fac|fan = Cscr-candidate.svg...'
36959
wikitext
text/x-wiki
[[File:{{#switch:{{lc:{{{class|{{{1|}}}}}}}}
|fa = Featured article star.svg {{!}} Featured article
|far = Cscr-star piece.png {{!}} Featured article review
|farc = Cscr-star piece.png {{!}} Featured article removal candidate
|ffa|dfa = Featured article star - cross.svg {{!}} Former featured article
|fac|fan = Cscr-candidate.svg {{!}} Featured article candidate
|ffac|nofa = Featured article star - cross.svg {{!}} Failed featured article candidate
|fl = Featured article star.svg {{!}} Featured list
|flrc|flr = Cscr-star piece.png {{!}} Featured list removal candidate
|ffl|dfl = Cscr-featured-strike.svg {{!}} Former featured list
|flc|fln = Cscr-candidate.svg {{!}} Featured list candidate
|fflc|nofl = Cscr-former.svg {{!}} Failed featured list candidate
|a = Symbol a class.svg {{!}} A-Class article
|dac|daa = Symbol unsupport A vote.svg {{!}} Demoted A-Class article
|acc|acn|aac = A candidate.svg {{!}} A-Class article candidate
|noac|faac = Symbol unsupport A vote.svg {{!}} Failed A-Class article candidate
|ga = Symbol support vote.svg {{!}} Good article
|gar = GA Candidate Neutral vote(ChaosNil).svg {{!}} Good article reassessment
|dga = Symbol unsupport vote.svg {{!}} Delisted good article
|gan|gac = GA candidate.svg {{!}} Good article nominee
|ga2 = Symbol neutral vote.svg {{!}} Good article, 2nd opinion
|gah = Symbol wait.svg {{!}} Good article on hold
|fgan|noga|gaf|gf = Symbol oppose vote.svg {{!}} Failed good article nominee
|fp = Cscr-featured.svg {{!}} Featured picture
|ffp = Cscr-former.svg {{!}} Former featured picture
|vp = ENWP VP Logo.svg {{!}} Valued picture
|vpc = Valued pics 1.svg {{!}} Valued picture candidate
|fs = Cscr-featured.svg {{!}} Featured sound
|ffs = Cscr-former.svg {{!}} Former featured sound
|fsc = Cscr-candidate.svg {{!}} Featured sound candidate
|fpo = Cscr-featured.svg {{!}} Featured portal
|fpor = Cscr-star piece.png {{!}} Featured portal review
|ffpo = Featured article star - cross.svg {{!}} Former featured portal
|fpoc = Cscr-candidate.svg {{!}} Featured portal candidate
|ft = Cscr-featuredtopic.svg {{!}} Featured topic
|ftrc = Cscr-star piece.png {{!}} Featured topic removal candidate
|fft|dft = DFT candidate_cluster.svg {{!}} Former featured topic
|ftc|ftn = FT candidate cluster.svg {{!}} Featured topic candidate
|gt = Support cluster.svg {{!}} Good topic
|gtrc = Symbol unsupport vote.svg {{!}} Good topic removal candidate
|gtc|gtn = GA candidate cluster.svg {{!}} Good topic candidate
|bplus|b+ = Symbol bplus class.svg {{!}} Bplus-Class article
|b = Symbol b class.svg {{!}} B-Class article
|br|bcr = Bclass-checklist.svg {{!}} B-Class review
|c = Symbol c class.svg {{!}} C-Class article
|start = Symbol start class.svg {{!}} Start-Class article
|stub = Symbol stub class.svg {{!}} Stub-Class article
|list|comparison= Symbol list class.svg {{!}} List-Class article
|no = Crystal button cancel.svg {{!}} Unknown-Class article
|book = Symbol book class2.svg {{!}} Wikipedia book
|cat|categ|category
|κατηγορία = Folder Hexagonal Icon.svg {{!}} Κατηγορία
|dab|disamb
|disambig|disambiguation
|αποσαφήνιση = Symbol dab class.svg {{!}} Σελίδα αποσαφήνισης
|image|file = Video-x-generic.svg {{!}} Αρχείο
|portal = Portal-puzzle.svg {{!}} Πύλη
|project = Symbol information vote.svg {{!}} Σελίδα εγχειρήματος
|red|redir|redirect
|ανακατεύθυνση = Symbol redirect vote2.svg {{!}} Ανακατεύθυνση
|temp|templ
|template = Symbol template class.svg {{!}} Πρότυπο
|na = Symbol neutral vote.svg {{!}} Μη λήμμα
|aa = Yes check.svg {{!}} Audited article of limited subject matter
|da = Symbol oppose vote.svg {{!}} Demoted article
|dyk = Symbol question.svg {{!}} Did You Know?
|dyk2 = DYK questionmark icon.svg {{!}} Did You Know?
|pr = Nuvola apps kedit.svg {{!}} Peer review
|ppr = Nuvola apps kedit.svg {{!}} Portal peer review
|q|question = Symbol question.svg {{!}} Question
|qi = Quality images logo.svg {{!}} Quality image on Wikimedia Commons
|vi = Valued image seal.svg {{!}} Valued image on Wikimedia Commons
|tfa = Wikipedia-logo.svg {{!}} Today's Featured Article
|itn = Globe current.svg {{!}} In The News
|otd = Nuvola apps date.svg {{!}} On This Day
|wikiproject = People icon.svg {{!}} WikiProject
|wikipedia = Wikipedia-logo.svg {{!}} Wikipedia page
|commons = Commons-logo.svg {{!}} Commons page
|wikiquote = Wikiquote-logo.svg {{!}} Wikiquote page
|wikiversity = Wikiversity-logo.svg {{!}} Wikiversity page
|wikibooks = Wikibooks-logo.svg {{!}} Wikibooks page
|wikisource = Wikisource-logo.svg {{!}} Wikisource page
|wiktionary = Wiktionary-logo.svg {{!}} Wiktionary page
|wikinews = Wikinews-logo.svg {{!}} Wikinews page
|wikispecies = Wikispecies-logo.svg {{!}} Wikispecies page
|wikidata = Wikidata-logo.svg {{!}} Wikidata page
|wikivoyage = Wikivoyage-logo.svg {{!}} Wikivoyage page
|meta = Wikimedia Community Logo.svg {{!}} Meta-wiki page
|four = Four Award.svg {{!}} Four Award
|million = Million award logo.svg {{!}} Million Award
|#default = Symbol question.svg
}}|{{{size|16x16px}}}|link=]]<noinclude>
{{documentation}}
</noinclude>
5zlt8iyv4nb5o2om6bi7cq94u6p2y9c
Module:Wikidata/Formatters/empty
828
3544
36960
2025-12-16T13:49:32Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} function p.formatValue() return "" end p.formatRawValue = p.formatValue p.getRawValue = p.formatValue return p'
36960
Scribunto
text/plain
--require "strict"
local p = {}
function p.formatValue()
return ""
end
p.formatRawValue = p.formatValue
p.getRawValue = p.formatValue
return p
0li7cu3moc9cbpria6wgwl9bv5bbf9n
Module:Wikidata/Formatters/rating
828
3545
36961
2025-12-16T13:50:26Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.formatValue(value, options) local ImageFormatter = require 'Module:ImageFormatter' return ImageFormatter.makeImage(value, { alt = mw.wikibase.label(options.id), description = mw.wikibase.label(options.id) or mw.wikibase.label(options.of), link = mw.wikibase.sitelink(options.link) or ('d:' .. options.link), size = '25px' }) end return p'
36961
Scribunto
text/plain
local p = {}
function p.formatValue(value, options)
local ImageFormatter = require 'Module:ImageFormatter'
return ImageFormatter.makeImage(value, {
alt = mw.wikibase.label(options.id),
description = mw.wikibase.label(options.id) or mw.wikibase.label(options.of),
link = mw.wikibase.sitelink(options.link) or ('d:' .. options.link),
size = '25px'
})
end
return p
58fyre2d121a3mmz4550wz92kbnathq
Module:Wikidata/Formatters/url
828
3546
36962
2025-12-16T13:52:30Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} function p.formatValue(value, options) local URL = require 'Module:URL' return URL._url(value, options.text) end return p'
36962
Scribunto
text/plain
local p = {}
function p.formatValue(value, options)
local URL = require 'Module:URL'
return URL._url(value, options.text)
end
return p
6tqzjgbynvn6pt1uqv0g53ryyakij9v
Module:Wikidata/Formatters/round
828
3547
36963
2025-12-16T13:55:00Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local formatNumber = p.formatNumber local function roundToOneDecimal(value) local int, fract = math.modf(value) local fract_times_ten = fract * 10 if fract_times_ten - math.floor(fract_times_ten) < 0.5 then return int + math.floor(fract_times_ten) / 10 else return int + math.ceil(fract_times_ten) / 10 end end function p.formatNumber(value) local factor = 1 if value < 0 then value = -value factor = -factor end if va...'
36963
Scribunto
text/plain
local p = {}
local formatNumber = p.formatNumber
local function roundToOneDecimal(value)
local int, fract = math.modf(value)
local fract_times_ten = fract * 10
if fract_times_ten - math.floor(fract_times_ten) < 0.5 then
return int + math.floor(fract_times_ten) / 10
else
return int + math.ceil(fract_times_ten) / 10
end
end
function p.formatNumber(value)
local factor = 1
if value < 0 then
value = -value
factor = -factor
end
if value > 10^6 and value < 10^9 then
return mw.ustring.format('%s mil.', formatNumber(factor * roundToOneDecimal(value / 10^6)))
elseif value > 10^9 and value < 10^12 then
return mw.ustring.format('%s mld.', formatNumber(factor * roundToOneDecimal(value / 10^9)))
else
return formatNumber(factor * value)
end
end
return p
25i1fqsr4cu9ey6y2kxrgy34l0wljoa
Module:Wikidata/Formatters/approx
828
3548
36964
2025-12-16T13:55:58Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με 'local p = {} local formatNumber = p.formatNumber local function roundToHundreds(value) local remainder = value % 100 if remainder < 50 then return math.floor(value / 100) * 100 else return math.ceil(value / 100) * 100 end end function p.formatNumber(value) if value > 1000 and value < 10000 then return mw.ustring.format('přibližně %s', formatNumber(roundToHundreds(value))) elseif value > 10000 and value < 1000000 then return mw.u...'
36964
Scribunto
text/plain
local p = {}
local formatNumber = p.formatNumber
local function roundToHundreds(value)
local remainder = value % 100
if remainder < 50 then
return math.floor(value / 100) * 100
else
return math.ceil(value / 100) * 100
end
end
function p.formatNumber(value)
if value > 1000 and value < 10000 then
return mw.ustring.format('přibližně %s', formatNumber(roundToHundreds(value)))
elseif value > 10000 and value < 1000000 then
return mw.ustring.format('přes %s tisíc', formatNumber(math.floor(value / 1000)))
else
return formatNumber(value)
end
end
return p
5r8ulmbxtenc9wuqlmr21zlcbimv6oa
Πρότυπον:Infobox3cols
10
3549
36965
2025-12-16T13:57:30Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<table class="infobox {{{bodyclass|}}}" cellspacing="5" style="{{#ifeq:{{{child|}}}|yes|padding:0;border:none; margin:auto;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent;|width: 22em; text-align: left; font-size: 88%; line-height: 1.5em;}} {{{bodystyle|}}}"><!-- Caption -->{{#if:{{{title|}}}|<caption class="{{{titleclass|}}}" style="font-size:{{#ifeq:{{{child|}}}|yes|100%|125%}}; font-weight: bold; {{{...'
36965
wikitext
text/x-wiki
<table class="infobox {{{bodyclass|}}}" cellspacing="5" style="{{#ifeq:{{{child|}}}|yes|padding:0;border:none; margin:auto;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent;|width: 22em; text-align: left; font-size: 88%; line-height: 1.5em;}} {{{bodystyle|}}}"><!--
Caption
-->{{#if:{{{title|}}}|<caption class="{{{titleclass|}}}" style="font-size:{{#ifeq:{{{child|}}}|yes|100%|125%}}; font-weight: bold; {{{titlestyle|}}}">{{{title}}}</caption>}}<!--
Header
-->{{#if:{{{above|}}}|{{Infobox3cols/row
|header={{{above}}} |headerstyle=text-align:center; font-size:125%; font-weight:bold; {{{abovestyle|}}}
|class={{{aboveclass|}}} |rowclass={{{aboverowclass|}}}
}} }}<!--
Subheader1
-->{{#if:{{{subheader|}}}|{{Infobox3cols/row
|data={{{subheader}}} |datastyle={{{subheaderstyle|}}}
|class={{{subheaderclass|}}} |rowclass={{{subheaderrowclass1|}}}
}} }}<!--
Subheader2
-->{{#if:{{{subheader2|}}}|{{Infobox3cols/row
|data={{{subheader2}}} |datastyle={{{subheaderstyle|}}}
|class={{{subheaderclass|}}} |rowclass={{{subheaderrowclass2|}}}
}} }}<!--
Image1
-->{{#if:{{{image|{{{image1|}}}}}}|{{Infobox3cols/row
|data={{{image|{{{image1}}} }}}{{#if:{{{caption|{{{caption1|}}}}}}|<br /><span style="{{{captionstyle|}}}">{{{caption|{{{caption1}}}}}}</span>}} |datastyle={{{imagestyle|}}}
|class={{{imageclass|}}} |rowclass={{{imagerowclass1|}}}
}} }}<!--
Image2
-->{{#if:{{{image2|}}}|{{Infobox3cols/row
|data={{{image2}}}{{#if:{{{caption2|}}}|<br /><span style="{{{captionstyle|}}}">{{{caption2|}}}</span>}} |datastyle={{{imagestyle|}}}
|class={{{imageclass|}}} |rowclass={{{imagerowclass2|}}}
}} }}<!--
Row 0
-->{{ infobox3cols/row
| header = {{{header0|}}} | headerstyle = {{{headerstyle|}}}
| label = {{{label0|}}} | labelstyle = {{{labelstyle|}}}
| data = {{{data0|}}} | datastyle = {{{datastyle|}}}
| dataa = {{{data0a|}}} | datastylea = {{{datastylea|}}}
| datab = {{{data0b|}}} | datastyleb = {{{datastyleb|}}}
| datac = {{{data0c|}}} | datastylec = {{{datastylec|}}}
| class = {{{class0|}}} | rowclass = {{{rowclass0|}}}
| multidatastyle = {{{multidatastyle|}}}
}}<!--
Row 1
-->{{ infobox3cols/row
| header = {{{header1|}}} | headerstyle = {{{headerstyle|}}}
| label = {{{label1|}}} | labelstyle = {{{labelstyle|}}}
| data = {{{data1|}}} | datastyle = {{{datastyle|}}}
| dataa = {{{data1a|}}} | datastylea = {{{datastylea|}}}
| datab = {{{data1b|}}} | datastyleb = {{{datastyleb|}}}
| datac = {{{data1c|}}} | datastylec = {{{datastylec|}}}
| class = {{{class1|}}} | rowclass = {{{rowclass1|}}}
| multidatastyle = {{{multidatastyle|}}}
}}<!--
Row 2
-->{{#if:{{{header2|}}}|<tr class="{{{rowclass2|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header2|}}}</th></tr>| {{#if:{{{label2|}}}|{{#if:{{{data2|}}}|<tr class="{{{rowclass2|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label2|}}}</th><td colspan="3" class="{{{class2|}}}" style="{{{datastyle|}}}">{{{data2|}}}</td></tr>|{{#if:{{{data2a|}}}{{{data2b|}}}|<tr class="{{{rowclass2|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label2|}}}</th><td class="{{{class2a|}}}" style="{{{datastylea|}}}">{{{data2a|}}}</td><td class="{{{class2b|}}}" style="{{{datastyleb|}}}">{{{data2b|}}}</td><td class="{{{class2c|}}}" style="{{{datastylec|}}}">{{{data2c|}}}</td></tr>}}}}| {{#if:{{{data2|}}}|<tr class="{{{rowclass2|}}}"><td colspan="4" class="{{{class2|}}}" style="text-align:center; {{{datastyle|}}}">{{{data2|}}}</td></tr>}} }} }}<!--
Row 3
-->{{#if:{{{header3|}}}|<tr class="{{{rowclass3|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header3|}}}</th></tr>| {{#if:{{{label3|}}}|{{#if:{{{data3|}}}|<tr class="{{{rowclass3|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label3|}}}</th><td colspan="3" class="{{{class3|}}}" style="{{{datastyle|}}}">{{{data3|}}}</td></tr>|{{#if:{{{data3a|}}}{{{data3b|}}}|<tr class="{{{rowclass3|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label3|}}}</th><td class="{{{class3a|}}}" style="{{{datastylea|}}}">{{{data3a|}}}</td><td class="{{{class3b|}}}" style="{{{datastyleb|}}}">{{{data3b|}}}</td><td class="{{{class3c|}}}" style="{{{datastylec|}}}">{{{data3c|}}}</td></tr>}}}}| {{#if:{{{data3|}}}|<tr class="{{{rowclass3|}}}"><td colspan="4" class="{{{class3|}}}" style="text-align:center; {{{datastyle|}}}">{{{data3|}}}</td></tr>}} }} }}<!--
Row 4
-->{{#if:{{{header4|}}}|<tr class="{{{rowclass4|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header4|}}}</th></tr>| {{#if:{{{label4|}}}|{{#if:{{{data4|}}}|<tr class="{{{rowclass4|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label4|}}}</th><td colspan="3" class="{{{class4|}}}" style="{{{datastyle|}}}">{{{data4|}}}</td></tr>|{{#if:{{{data4a|}}}{{{data4b|}}}|<tr class="{{{rowclass4|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label4|}}}</th><td class="{{{class4a|}}}" style="{{{datastylea|}}}">{{{data4a|}}}</td><td class="{{{class4b|}}}" style="{{{datastyleb|}}}">{{{data4b|}}}</td><td class="{{{class4c|}}}" style="{{{datastylec|}}}">{{{data4c|}}}</td></tr>}}}}| {{#if:{{{data4|}}}|<tr class="{{{rowclass4|}}}"><td colspan="4" class="{{{class4|}}}" style="text-align:center; {{{datastyle|}}}">{{{data4|}}}</td></tr>}} }} }}<!--
Row 5
-->{{#if:{{{header5|}}}|<tr class="{{{rowclass5|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header5|}}}</th></tr>| {{#if:{{{label5|}}}|{{#if:{{{data5|}}}|<tr class="{{{rowclass5|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label5|}}}</th><td colspan="3" class="{{{class5|}}}" style="{{{datastyle|}}}">{{{data5|}}}</td></tr>|{{#if:{{{data5a|}}}{{{data5b|}}}|<tr class="{{{rowclass5|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label5|}}}</th><td class="{{{class5a|}}}" style="{{{datastylea|}}}">{{{data5a|}}}</td><td class="{{{class5b|}}}" style="{{{datastyleb|}}}">{{{data5b|}}}</td><td class="{{{class5c|}}}" style="{{{datastylec|}}}">{{{data5c|}}}</td></tr>}}}}| {{#if:{{{data5|}}}|<tr class="{{{rowclass5|}}}"><td colspan="4" class="{{{class5|}}}" style="text-align:center; {{{datastyle|}}}">{{{data5|}}}</td></tr>}} }} }}<!--
Row 6
-->{{#if:{{{header6|}}}|<tr class="{{{rowclass6|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header6|}}}</th></tr>| {{#if:{{{label6|}}}|{{#if:{{{data6|}}}|<tr class="{{{rowclass6|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label6|}}}</th><td colspan="3" class="{{{class6|}}}" style="{{{datastyle|}}}">{{{data6|}}}</td></tr>|{{#if:{{{data6a|}}}{{{data6b|}}}|<tr class="{{{rowclass6|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label6|}}}</th><td class="{{{class6a|}}}" style="{{{datastylea|}}}">{{{data6a|}}}</td><td class="{{{class6b|}}}" style="{{{datastyleb|}}}">{{{data6b|}}}</td><td class="{{{class6c|}}}" style="{{{datastylec|}}}">{{{data6c|}}}</td></tr>}}}}| {{#if:{{{data6|}}}|<tr class="{{{rowclass6|}}}"><td colspan="4" class="{{{class6|}}}" style="text-align:center; {{{datastyle|}}}">{{{data6|}}}</td></tr>}} }} }}<!--
Row 7
-->{{#if:{{{header7|}}}|<tr class="{{{rowclass7|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header7|}}}</th></tr>| {{#if:{{{label7|}}}|{{#if:{{{data7|}}}|<tr class="{{{rowclass7|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label7|}}}</th><td colspan="3" class="{{{class7|}}}" style="{{{datastyle|}}}">{{{data7|}}}</td></tr>|{{#if:{{{data7a|}}}{{{data7b|}}}|<tr class="{{{rowclass7|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label7|}}}</th><td class="{{{class7a|}}}" style="{{{datastylea|}}}">{{{data7a|}}}</td><td class="{{{class7b|}}}" style="{{{datastyleb|}}}">{{{data7b|}}}</td><td class="{{{class7c|}}}" style="{{{datastylec|}}}">{{{data7c|}}}</td></tr>}}}}| {{#if:{{{data7|}}}|<tr class="{{{rowclass7|}}}"><td colspan="4" class="{{{class7|}}}" style="text-align:center; {{{datastyle|}}}">{{{data7|}}}</td></tr>}} }} }}<!--
Row 8
-->{{#if:{{{header8|}}}|<tr class="{{{rowclass8|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header8|}}}</th></tr>| {{#if:{{{label8|}}}|{{#if:{{{data8|}}}|<tr class="{{{rowclass8|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label8|}}}</th><td colspan="3" class="{{{class8|}}}" style="{{{datastyle|}}}">{{{data8|}}}</td></tr>|{{#if:{{{data8a|}}}{{{data8b|}}}|<tr class="{{{rowclass8|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label8|}}}</th><td class="{{{class8a|}}}" style="{{{datastylea|}}}">{{{data8a|}}}</td><td class="{{{class8b|}}}" style="{{{datastyleb|}}}">{{{data8b|}}}</td><td class="{{{class8c|}}}" style="{{{datastylec|}}}">{{{data8c|}}}</td></tr>}}}}| {{#if:{{{data8|}}}|<tr class="{{{rowclass8|}}}"><td colspan="4" class="{{{class8|}}}" style="text-align:center; {{{datastyle|}}}">{{{data8|}}}</td></tr>}} }} }}<!--
Row 9
-->{{#if:{{{header9|}}}|<tr class="{{{rowclass9|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header9|}}}</th></tr>| {{#if:{{{label9|}}}|{{#if:{{{data9|}}}|<tr class="{{{rowclass9|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label9|}}}</th><td colspan="3" class="{{{class9|}}}" style="{{{datastyle|}}}">{{{data9|}}}</td></tr>|{{#if:{{{data9a|}}}{{{data9b|}}}|<tr class="{{{rowclass9|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label9|}}}</th><td class="{{{class9a|}}}" style="{{{datastylea|}}}">{{{data9a|}}}</td><td class="{{{class9b|}}}" style="{{{datastyleb|}}}">{{{data9b|}}}</td><td class="{{{class9c|}}}" style="{{{datastylec|}}}">{{{data9c|}}}</td></tr>}}}}| {{#if:{{{data9|}}}|<tr class="{{{rowclass9|}}}"><td colspan="4" class="{{{class9|}}}" style="text-align:center; {{{datastyle|}}}">{{{data9|}}}</td></tr>}} }} }}<!--
Row 10
-->{{#if:{{{header10|}}}|<tr class="{{{rowclass10|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header10|}}}</th></tr>| {{#if:{{{label10|}}}|{{#if:{{{data10|}}}|<tr class="{{{rowclass10|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label10|}}}</th><td colspan="3" class="{{{class10|}}}" style="{{{datastyle|}}}">{{{data10|}}}</td></tr>|{{#if:{{{data10a|}}}{{{data10b|}}}|<tr class="{{{rowclass10|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label10|}}}</th><td class="{{{class10a|}}}" style="{{{datastylea|}}}">{{{data10a|}}}</td><td class="{{{class10b|}}}" style="{{{datastyleb|}}}">{{{data10b|}}}</td><td class="{{{class10c|}}}" style="{{{datastylec|}}}">{{{data10c|}}}</td></tr>}}}}| {{#if:{{{data10|}}}|<tr class="{{{rowclass10|}}}"><td colspan="4" class="{{{class10|}}}" style="text-align:center; {{{datastyle|}}}">{{{data10|}}}</td></tr>}} }} }}<!--
Row 11
-->{{#if:{{{header11|}}}|<tr class="{{{rowclass11|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header11|}}}</th></tr>| {{#if:{{{label11|}}}|{{#if:{{{data11|}}}|<tr class="{{{rowclass11|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label11|}}}</th><td colspan="3" class="{{{class11|}}}" style="{{{datastyle|}}}">{{{data11|}}}</td></tr>|{{#if:{{{data11a|}}}{{{data11b|}}}|<tr class="{{{rowclass11|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label11|}}}</th><td class="{{{class11a|}}}" style="{{{datastylea|}}}">{{{data11a|}}}</td><td class="{{{class11b|}}}" style="{{{datastyleb|}}}">{{{data11b|}}}</td><td class="{{{class11c|}}}" style="{{{datastylec|}}}">{{{data11c|}}}</td></tr>}}}}| {{#if:{{{data11|}}}|<tr class="{{{rowclass11|}}}"><td colspan="4" class="{{{class11|}}}" style="text-align:center; {{{datastyle|}}}">{{{data11|}}}</td></tr>}} }} }}<!--
Row 12
-->{{#if:{{{header12|}}}|<tr class="{{{rowclass12|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header12|}}}</th></tr>| {{#if:{{{label12|}}}|{{#if:{{{data12|}}}|<tr class="{{{rowclass12|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label12|}}}</th><td colspan="3" class="{{{class12|}}}" style="{{{datastyle|}}}">{{{data12|}}}</td></tr>|{{#if:{{{data12a|}}}{{{data12b|}}}|<tr class="{{{rowclass12|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label12|}}}</th><td class="{{{class12a|}}}" style="{{{datastylea|}}}">{{{data12a|}}}</td><td class="{{{class12b|}}}" style="{{{datastyleb|}}}">{{{data12b|}}}</td><td class="{{{class12c|}}}" style="{{{datastylec|}}}">{{{data12c|}}}</td></tr>}}}}| {{#if:{{{data12|}}}|<tr class="{{{rowclass12|}}}"><td colspan="4" class="{{{class12|}}}" style="text-align:center; {{{datastyle|}}}">{{{data12|}}}</td></tr>}} }} }}<!--
Row 13
-->{{#if:{{{header13|}}}|<tr class="{{{rowclass13|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header13|}}}</th></tr>| {{#if:{{{label13|}}}|{{#if:{{{data13|}}}|<tr class="{{{rowclass13|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label13|}}}</th><td colspan="3" class="{{{class13|}}}" style="{{{datastyle|}}}">{{{data13|}}}</td></tr>|{{#if:{{{data13a|}}}{{{data13b|}}}|<tr class="{{{rowclass13|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label13|}}}</th><td class="{{{class13a|}}}" style="{{{datastylea|}}}">{{{data13a|}}}</td><td class="{{{class13b|}}}" style="{{{datastyleb|}}}">{{{data13b|}}}</td><td class="{{{class13c|}}}" style="{{{datastylec|}}}">{{{data13c|}}}</td></tr>}}}}| {{#if:{{{data13|}}}|<tr class="{{{rowclass13|}}}"><td colspan="4" class="{{{class13|}}}" style="text-align:center; {{{datastyle|}}}">{{{data13|}}}</td></tr>}} }} }}<!--
Row 14
-->{{#if:{{{header14|}}}|<tr class="{{{rowclass14|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header14|}}}</th></tr>| {{#if:{{{label14|}}}|{{#if:{{{data14|}}}|<tr class="{{{rowclass14|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label14|}}}</th><td colspan="3" class="{{{class14|}}}" style="{{{datastyle|}}}">{{{data14|}}}</td></tr>|{{#if:{{{data14a|}}}{{{data14b|}}}|<tr class="{{{rowclass14|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label14|}}}</th><td class="{{{class14a|}}}" style="{{{datastylea|}}}">{{{data14a|}}}</td><td class="{{{class14b|}}}" style="{{{datastyleb|}}}">{{{data14b|}}}</td><td class="{{{class14c|}}}" style="{{{datastylec|}}}">{{{data14c|}}}</td></tr>}}}}| {{#if:{{{data14|}}}|<tr class="{{{rowclass14|}}}"><td colspan="4" class="{{{class14|}}}" style="text-align:center; {{{datastyle|}}}">{{{data14|}}}</td></tr>}} }} }}<!--
Row 15
-->{{#if:{{{header15|}}}|<tr class="{{{rowclass15|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header15|}}}</th></tr>| {{#if:{{{label15|}}}|{{#if:{{{data15|}}}|<tr class="{{{rowclass15|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label15|}}}</th><td colspan="3" class="{{{class15|}}}" style="{{{datastyle|}}}">{{{data15|}}}</td></tr>|{{#if:{{{data15a|}}}{{{data15b|}}}|<tr class="{{{rowclass15|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label15|}}}</th><td class="{{{class15a|}}}" style="{{{datastylea|}}}">{{{data15a|}}}</td><td class="{{{class15b|}}}" style="{{{datastyleb|}}}">{{{data15b|}}}</td><td class="{{{class15c|}}}" style="{{{datastylec|}}}">{{{data15c|}}}</td></tr>}}}}| {{#if:{{{data15|}}}|<tr class="{{{rowclass15|}}}"><td colspan="4" class="{{{class15|}}}" style="text-align:center; {{{datastyle|}}}">{{{data15|}}}</td></tr>}} }} }}<!--
Row 16
-->{{#if:{{{header16|}}}|<tr class="{{{rowclass16|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header16|}}}</th></tr>| {{#if:{{{label16|}}}|{{#if:{{{data16|}}}|<tr class="{{{rowclass16|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label16|}}}</th><td colspan="3" class="{{{class16|}}}" style="{{{datastyle|}}}">{{{data16|}}}</td></tr>|{{#if:{{{data16a|}}}{{{data16b|}}}|<tr class="{{{rowclass16|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label16|}}}</th><td class="{{{class16a|}}}" style="{{{datastylea|}}}">{{{data16a|}}}</td><td class="{{{class16b|}}}" style="{{{datastyleb|}}}">{{{data16b|}}}</td><td class="{{{class16c|}}}" style="{{{datastylec|}}}">{{{data16c|}}}</td></tr>}}}}| {{#if:{{{data16|}}}|<tr class="{{{rowclass16|}}}"><td colspan="4" class="{{{class16|}}}" style="text-align:center; {{{datastyle|}}}">{{{data16|}}}</td></tr>}} }} }}<!--
Row 17
-->{{#if:{{{header17|}}}|<tr class="{{{rowclass17|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header17|}}}</th></tr>| {{#if:{{{label17|}}}|{{#if:{{{data17|}}}|<tr class="{{{rowclass17|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label17|}}}</th><td colspan="3" class="{{{class17|}}}" style="{{{datastyle|}}}">{{{data17|}}}</td></tr>|{{#if:{{{data17a|}}}{{{data17b|}}}|<tr class="{{{rowclass17|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label17|}}}</th><td class="{{{class17a|}}}" style="{{{datastylea|}}}">{{{data17a|}}}</td><td class="{{{class17b|}}}" style="{{{datastyleb|}}}">{{{data17b|}}}</td><td class="{{{class17c|}}}" style="{{{datastylec|}}}">{{{data17c|}}}</td></tr>}}}}| {{#if:{{{data17|}}}|<tr class="{{{rowclass17|}}}"><td colspan="4" class="{{{class17|}}}" style="text-align:center; {{{datastyle|}}}">{{{data17|}}}</td></tr>}} }} }}<!--
Row 18
-->{{#if:{{{header18|}}}|<tr class="{{{rowclass18|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header18|}}}</th></tr>| {{#if:{{{label18|}}}|{{#if:{{{data18|}}}|<tr class="{{{rowclass18|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label18|}}}</th><td colspan="3" class="{{{class18|}}}" style="{{{datastyle|}}}">{{{data18|}}}</td></tr>|{{#if:{{{data18a|}}}{{{data18b|}}}|<tr class="{{{rowclass18|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label18|}}}</th><td class="{{{class18a|}}}" style="{{{datastylea|}}}">{{{data18a|}}}</td><td class="{{{class18b|}}}" style="{{{datastyleb|}}}">{{{data18b|}}}</td><td class="{{{class18c|}}}" style="{{{datastylec|}}}">{{{data18c|}}}</td></tr>}}}}| {{#if:{{{data18|}}}|<tr class="{{{rowclass18|}}}"><td colspan="4" class="{{{class18|}}}" style="text-align:center; {{{datastyle|}}}">{{{data18|}}}</td></tr>}} }} }}<!--
Row 19
-->{{#if:{{{header19|}}}|<tr class="{{{rowclass19|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header19|}}}</th></tr>| {{#if:{{{label19|}}}|{{#if:{{{data19|}}}|<tr class="{{{rowclass19|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label19|}}}</th><td colspan="3" class="{{{class19|}}}" style="{{{datastyle|}}}">{{{data19|}}}</td></tr>|{{#if:{{{data19a|}}}{{{data19b|}}}|<tr class="{{{rowclass19|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label19|}}}</th><td class="{{{class19a|}}}" style="{{{datastylea|}}}">{{{data19a|}}}</td><td class="{{{class19b|}}}" style="{{{datastyleb|}}}">{{{data19b|}}}</td><td class="{{{class19c|}}}" style="{{{datastylec|}}}">{{{data19c|}}}</td></tr>}}}}| {{#if:{{{data19|}}}|<tr class="{{{rowclass19|}}}"><td colspan="4" class="{{{class19|}}}" style="text-align:center; {{{datastyle|}}}">{{{data19|}}}</td></tr>}} }} }}<!--
Row 20
-->{{#if:{{{header20|}}}|<tr class="{{{rowclass20|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header20|}}}</th></tr>| {{#if:{{{label20|}}}|{{#if:{{{data20|}}}|<tr class="{{{rowclass20|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label20|}}}</th><td colspan="3" class="{{{class20|}}}" style="{{{datastyle|}}}">{{{data20|}}}</td></tr>|{{#if:{{{data20a|}}}{{{data20b|}}}|<tr class="{{{rowclass20|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label20|}}}</th><td class="{{{class20a|}}}" style="{{{datastylea|}}}">{{{data20a|}}}</td><td class="{{{class20b|}}}" style="{{{datastyleb|}}}">{{{data20b|}}}</td><td class="{{{class20c|}}}" style="{{{datastylec|}}}">{{{data20c|}}}</td></tr>}}}}| {{#if:{{{data20|}}}|<tr class="{{{rowclass20|}}}"><td colspan="4" class="{{{class20|}}}" style="text-align:center; {{{datastyle|}}}">{{{data20|}}}</td></tr>}} }} }}<!--
Row 21
-->{{#if:{{{header21|}}}|<tr class="{{{rowclass21|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header21|}}}</th></tr>| {{#if:{{{label21|}}}|{{#if:{{{data21|}}}|<tr class="{{{rowclass21|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label21|}}}</th><td colspan="3" class="{{{class21|}}}" style="{{{datastyle|}}}">{{{data21|}}}</td></tr>|{{#if:{{{data21a|}}}{{{data21b|}}}|<tr class="{{{rowclass21|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label21|}}}</th><td class="{{{class21a|}}}" style="{{{datastylea|}}}">{{{data21a|}}}</td><td class="{{{class21b|}}}" style="{{{datastyleb|}}}">{{{data21b|}}}</td><td class="{{{class21c|}}}" style="{{{datastylec|}}}">{{{data21c|}}}</td></tr>}}}}| {{#if:{{{data21|}}}|<tr class="{{{rowclass21|}}}"><td colspan="4" class="{{{class21|}}}" style="text-align:center; {{{datastyle|}}}">{{{data21|}}}</td></tr>}} }} }}<!--
Row 22
-->{{#if:{{{header22|}}}|<tr class="{{{rowclass22|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header22|}}}</th></tr>| {{#if:{{{label22|}}}|{{#if:{{{data22|}}}|<tr class="{{{rowclass22|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label22|}}}</th><td colspan="3" class="{{{class22|}}}" style="{{{datastyle|}}}">{{{data22|}}}</td></tr>|{{#if:{{{data22a|}}}{{{data22b|}}}|<tr class="{{{rowclass22|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label22|}}}</th><td class="{{{class22a|}}}" style="{{{datastylea|}}}">{{{data22a|}}}</td><td class="{{{class22b|}}}" style="{{{datastyleb|}}}">{{{data22b|}}}</td><td class="{{{class22c|}}}" style="{{{datastylec|}}}">{{{data22c|}}}</td></tr>}}}}| {{#if:{{{data22|}}}|<tr class="{{{rowclass22|}}}"><td colspan="4" class="{{{class22|}}}" style="text-align:center; {{{datastyle|}}}">{{{data22|}}}</td></tr>}} }} }}<!--
Row 23
-->{{#if:{{{header23|}}}|<tr class="{{{rowclass23|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header23|}}}</th></tr>| {{#if:{{{label23|}}}|{{#if:{{{data23|}}}|<tr class="{{{rowclass23|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label23|}}}</th><td colspan="3" class="{{{class23|}}}" style="{{{datastyle|}}}">{{{data23|}}}</td></tr>|{{#if:{{{data23a|}}}{{{data23b|}}}|<tr class="{{{rowclass23|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label23|}}}</th><td class="{{{class23a|}}}" style="{{{datastylea|}}}">{{{data23a|}}}</td><td class="{{{class23b|}}}" style="{{{datastyleb|}}}">{{{data23b|}}}</td><td class="{{{class23c|}}}" style="{{{datastylec|}}}">{{{data23c|}}}</td></tr>}}}}| {{#if:{{{data23|}}}|<tr class="{{{rowclass23|}}}"><td colspan="4" class="{{{class23|}}}" style="text-align:center; {{{datastyle|}}}">{{{data23|}}}</td></tr>}} }} }}<!--
Row 24
-->{{#if:{{{header24|}}}|<tr class="{{{rowclass24|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header24|}}}</th></tr>| {{#if:{{{label24|}}}|{{#if:{{{data24|}}}|<tr class="{{{rowclass24|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label24|}}}</th><td colspan="3" class="{{{class24|}}}" style="{{{datastyle|}}}">{{{data24|}}}</td></tr>|{{#if:{{{data24a|}}}{{{data24b|}}}|<tr class="{{{rowclass24|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label24|}}}</th><td class="{{{class24a|}}}" style="{{{datastylea|}}}">{{{data24a|}}}</td><td class="{{{class24b|}}}" style="{{{datastyleb|}}}">{{{data24b|}}}</td><td class="{{{class24c|}}}" style="{{{datastylec|}}}">{{{data24c|}}}</td></tr>}}}}| {{#if:{{{data24|}}}|<tr class="{{{rowclass24|}}}"><td colspan="4" class="{{{class24|}}}" style="text-align:center; {{{datastyle|}}}">{{{data24|}}}</td></tr>}} }} }}<!--
Row 25
-->{{#if:{{{header25|}}}|<tr class="{{{rowclass25|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header25|}}}</th></tr>| {{#if:{{{label25|}}}|{{#if:{{{data25|}}}|<tr class="{{{rowclass25|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label25|}}}</th><td colspan="3" class="{{{class25|}}}" style="{{{datastyle|}}}">{{{data25|}}}</td></tr>|{{#if:{{{data25a|}}}{{{data25b|}}}|<tr class="{{{rowclass25|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label25|}}}</th><td class="{{{class25a|}}}" style="{{{datastylea|}}}">{{{data25a|}}}</td><td class="{{{class25b|}}}" style="{{{datastyleb|}}}">{{{data25b|}}}</td><td class="{{{class25c|}}}" style="{{{datastylec|}}}">{{{data25c|}}}</td></tr>}}}}| {{#if:{{{data25|}}}|<tr class="{{{rowclass25|}}}"><td colspan="4" class="{{{class25|}}}" style="text-align:center; {{{datastyle|}}}">{{{data25|}}}</td></tr>}} }} }}<!--
Row 26
-->{{#if:{{{header26|}}}|<tr class="{{{rowclass26|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header26|}}}</th></tr>| {{#if:{{{label26|}}}|{{#if:{{{data26|}}}|<tr class="{{{rowclass26|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label26|}}}</th><td colspan="3" class="{{{class26|}}}" style="{{{datastyle|}}}">{{{data26|}}}</td></tr>|{{#if:{{{data26a|}}}{{{data26b|}}}|<tr class="{{{rowclass26|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label26|}}}</th><td class="{{{class26a|}}}" style="{{{datastylea|}}}">{{{data26a|}}}</td><td class="{{{class26b|}}}" style="{{{datastyleb|}}}">{{{data26b|}}}</td><td class="{{{class26c|}}}" style="{{{datastylec|}}}">{{{data26c|}}}</td></tr>}}}}| {{#if:{{{data26|}}}|<tr class="{{{rowclass26|}}}"><td colspan="4" class="{{{class26|}}}" style="text-align:center; {{{datastyle|}}}">{{{data26|}}}</td></tr>}} }} }}<!--
Row 27
-->{{#if:{{{header27|}}}|<tr class="{{{rowclass27|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header27|}}}</th></tr>| {{#if:{{{label27|}}}|{{#if:{{{data27|}}}|<tr class="{{{rowclass27|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label27|}}}</th><td colspan="3" class="{{{class27|}}}" style="{{{datastyle|}}}">{{{data27|}}}</td></tr>|{{#if:{{{data27a|}}}{{{data27b|}}}|<tr class="{{{rowclass27|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label27|}}}</th><td class="{{{class27a|}}}" style="{{{datastylea|}}}">{{{data27a|}}}</td><td class="{{{class27b|}}}" style="{{{datastyleb|}}}">{{{data27b|}}}</td><td class="{{{class27c|}}}" style="{{{datastylec|}}}">{{{data27c|}}}</td></tr>}}}}| {{#if:{{{data27|}}}|<tr class="{{{rowclass27|}}}"><td colspan="4" class="{{{class27|}}}" style="text-align:center; {{{datastyle|}}}">{{{data27|}}}</td></tr>}} }} }}<!--
Row 28
-->{{#if:{{{header28|}}}|<tr class="{{{rowclass28|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header28|}}}</th></tr>| {{#if:{{{label28|}}}|{{#if:{{{data28|}}}|<tr class="{{{rowclass28|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label28|}}}</th><td colspan="3" class="{{{class28|}}}" style="{{{datastyle|}}}">{{{data28|}}}</td></tr>|{{#if:{{{data28a|}}}{{{data28b|}}}|<tr class="{{{rowclass28|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label28|}}}</th><td class="{{{class28a|}}}" style="{{{datastylea|}}}">{{{data28a|}}}</td><td class="{{{class28b|}}}" style="{{{datastyleb|}}}">{{{data28b|}}}</td><td class="{{{class28c|}}}" style="{{{datastylec|}}}">{{{data28c|}}}</td></tr>}}}}| {{#if:{{{data28|}}}|<tr class="{{{rowclass28|}}}"><td colspan="4" class="{{{class28|}}}" style="text-align:center; {{{datastyle|}}}">{{{data28|}}}</td></tr>}} }} }}<!--
Row 29
-->{{#if:{{{header29|}}}|<tr class="{{{rowclass29|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header29|}}}</th></tr>| {{#if:{{{label29|}}}|{{#if:{{{data29|}}}|<tr class="{{{rowclass29|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label29|}}}</th><td colspan="3" class="{{{class29|}}}" style="{{{datastyle|}}}">{{{data29|}}}</td></tr>|{{#if:{{{data29a|}}}{{{data29b|}}}|<tr class="{{{rowclass29|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label29|}}}</th><td class="{{{class29a|}}}" style="{{{datastylea|}}}">{{{data29a|}}}</td><td class="{{{class29b|}}}" style="{{{datastyleb|}}}">{{{data29b|}}}</td><td class="{{{class29c|}}}" style="{{{datastylec|}}}">{{{data29c|}}}</td></tr>}}}}| {{#if:{{{data29|}}}|<tr class="{{{rowclass29|}}}"><td colspan="4" class="{{{class29|}}}" style="text-align:center; {{{datastyle|}}}">{{{data29|}}}</td></tr>}} }} }}<!--
Row 30
-->{{#if:{{{header30|}}}|<tr class="{{{rowclass30|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header30|}}}</th></tr>| {{#if:{{{label30|}}}|{{#if:{{{data30|}}}|<tr class="{{{rowclass30|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label30|}}}</th><td colspan="3" class="{{{class30|}}}" style="{{{datastyle|}}}">{{{data30|}}}</td></tr>|{{#if:{{{data30a|}}}{{{data30b|}}}|<tr class="{{{rowclass30|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label30|}}}</th><td class="{{{class30a|}}}" style="{{{datastylea|}}}">{{{data30a|}}}</td><td class="{{{class30b|}}}" style="{{{datastyleb|}}}">{{{data30b|}}}</td><td class="{{{class30c|}}}" style="{{{datastylec|}}}">{{{data30c|}}}</td></tr>}}}}| {{#if:{{{data30|}}}|<tr class="{{{rowclass30|}}}"><td colspan="4" class="{{{class30|}}}" style="text-align:center; {{{datastyle|}}}">{{{data30|}}}</td></tr>}} }} }}<!--
Row 31
-->{{#if:{{{header31|}}}|<tr class="{{{rowclass31|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header31|}}}</th></tr>| {{#if:{{{label31|}}}|{{#if:{{{data31|}}}|<tr class="{{{rowclass31|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label31|}}}</th><td colspan="3" class="{{{class31|}}}" style="{{{datastyle|}}}">{{{data31|}}}</td></tr>|{{#if:{{{data31a|}}}{{{data31b|}}}|<tr class="{{{rowclass31|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label31|}}}</th><td class="{{{class31a|}}}" style="{{{datastylea|}}}">{{{data31a|}}}</td><td class="{{{class31b|}}}" style="{{{datastyleb|}}}">{{{data31b|}}}</td><td class="{{{class31c|}}}" style="{{{datastylec|}}}">{{{data31c|}}}</td></tr>}}}}| {{#if:{{{data31|}}}|<tr class="{{{rowclass31|}}}"><td colspan="4" class="{{{class31|}}}" style="text-align:center; {{{datastyle|}}}">{{{data31|}}}</td></tr>}} }} }}<!--
Row 32
-->{{#if:{{{header32|}}}|<tr class="{{{rowclass32|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header32|}}}</th></tr>| {{#if:{{{label32|}}}|{{#if:{{{data32|}}}|<tr class="{{{rowclass32|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label32|}}}</th><td colspan="3" class="{{{class32|}}}" style="{{{datastyle|}}}">{{{data32|}}}</td></tr>|{{#if:{{{data32a|}}}{{{data32b|}}}|<tr class="{{{rowclass32|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label32|}}}</th><td class="{{{class32a|}}}" style="{{{datastylea|}}}">{{{data32a|}}}</td><td class="{{{class32b|}}}" style="{{{datastyleb|}}}">{{{data32b|}}}</td><td class="{{{class32c|}}}" style="{{{datastylec|}}}">{{{data32c|}}}</td></tr>}}}}| {{#if:{{{data32|}}}|<tr class="{{{rowclass32|}}}"><td colspan="4" class="{{{class32|}}}" style="text-align:center; {{{datastyle|}}}">{{{data32|}}}</td></tr>}} }} }}<!--
Row 33
-->{{#if:{{{header33|}}}|<tr class="{{{rowclass33|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header33|}}}</th></tr>| {{#if:{{{label33|}}}|{{#if:{{{data33|}}}|<tr class="{{{rowclass33|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label33|}}}</th><td colspan="3" class="{{{class33|}}}" style="{{{datastyle|}}}">{{{data33|}}}</td></tr>|{{#if:{{{data33a|}}}{{{data33b|}}}|<tr class="{{{rowclass33|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label33|}}}</th><td class="{{{class33a|}}}" style="{{{datastylea|}}}">{{{data33a|}}}</td><td class="{{{class33b|}}}" style="{{{datastyleb|}}}">{{{data33b|}}}</td><td class="{{{class33c|}}}" style="{{{datastylec|}}}">{{{data33c|}}}</td></tr>}}}}| {{#if:{{{data33|}}}|<tr class="{{{rowclass33|}}}"><td colspan="4" class="{{{class33|}}}" style="text-align:center; {{{datastyle|}}}">{{{data33|}}}</td></tr>}} }} }}<!--
Row 34
-->{{#if:{{{header34|}}}|<tr class="{{{rowclass34|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header34|}}}</th></tr>| {{#if:{{{label34|}}}|{{#if:{{{data34|}}}|<tr class="{{{rowclass34|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label34|}}}</th><td colspan="3" class="{{{class34|}}}" style="{{{datastyle|}}}">{{{data34|}}}</td></tr>|{{#if:{{{data34a|}}}{{{data34b|}}}|<tr class="{{{rowclass34|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label34|}}}</th><td class="{{{class34a|}}}" style="{{{datastylea|}}}">{{{data34a|}}}</td><td class="{{{class34b|}}}" style="{{{datastyleb|}}}">{{{data34b|}}}</td><td class="{{{class34c|}}}" style="{{{datastylec|}}}">{{{data34c|}}}</td></tr>}}}}| {{#if:{{{data34|}}}|<tr class="{{{rowclass34|}}}"><td colspan="4" class="{{{class34|}}}" style="text-align:center; {{{datastyle|}}}">{{{data34|}}}</td></tr>}} }} }}<!--
Row 35
-->{{#if:{{{header35|}}}|<tr class="{{{rowclass35|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header35|}}}</th></tr>| {{#if:{{{label35|}}}|{{#if:{{{data35|}}}|<tr class="{{{rowclass35|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label35|}}}</th><td colspan="3" class="{{{class35|}}}" style="{{{datastyle|}}}">{{{data35|}}}</td></tr>|{{#if:{{{data35a|}}}{{{data35b|}}}|<tr class="{{{rowclass35|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label35|}}}</th><td class="{{{class35a|}}}" style="{{{datastylea|}}}">{{{data35a|}}}</td><td class="{{{class35b|}}}" style="{{{datastyleb|}}}">{{{data35b|}}}</td><td class="{{{class35c|}}}" style="{{{datastylec|}}}">{{{data35c|}}}</td></tr>}}}}| {{#if:{{{data35|}}}|<tr class="{{{rowclass35|}}}"><td colspan="4" class="{{{class35|}}}" style="text-align:center; {{{datastyle|}}}">{{{data35|}}}</td></tr>}} }} }}<!--
Row 36
-->{{#if:{{{header36|}}}|<tr class="{{{rowclass36|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header36|}}}</th></tr>| {{#if:{{{label36|}}}|{{#if:{{{data36|}}}|<tr class="{{{rowclass36|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label36|}}}</th><td colspan="3" class="{{{class36|}}}" style="{{{datastyle|}}}">{{{data36|}}}</td></tr>|{{#if:{{{data36a|}}}{{{data36b|}}}|<tr class="{{{rowclass36|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label36|}}}</th><td class="{{{class36a|}}}" style="{{{datastylea|}}}">{{{data36a|}}}</td><td class="{{{class36b|}}}" style="{{{datastyleb|}}}">{{{data36b|}}}</td><td class="{{{class36c|}}}" style="{{{datastylec|}}}">{{{data36c|}}}</td></tr>}}}}| {{#if:{{{data36|}}}|<tr class="{{{rowclass36|}}}"><td colspan="4" class="{{{class36|}}}" style="text-align:center; {{{datastyle|}}}">{{{data36|}}}</td></tr>}} }} }}<!--
Row 37
-->{{#if:{{{header37|}}}|<tr class="{{{rowclass37|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header37|}}}</th></tr>| {{#if:{{{label37|}}}|{{#if:{{{data37|}}}|<tr class="{{{rowclass37|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label37|}}}</th><td colspan="3" class="{{{class37|}}}" style="{{{datastyle|}}}">{{{data37|}}}</td></tr>|{{#if:{{{data37a|}}}{{{data37b|}}}|<tr class="{{{rowclass37|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label37|}}}</th><td class="{{{class37a|}}}" style="{{{datastylea|}}}">{{{data37a|}}}</td><td class="{{{class37b|}}}" style="{{{datastyleb|}}}">{{{data37b|}}}</td><td class="{{{class37c|}}}" style="{{{datastylec|}}}">{{{data37c|}}}</td></tr>}}}}| {{#if:{{{data37|}}}|<tr class="{{{rowclass37|}}}"><td colspan="4" class="{{{class37|}}}" style="text-align:center; {{{datastyle|}}}">{{{data37|}}}</td></tr>}} }} }}<!--
Row 38
-->{{#if:{{{header38|}}}|<tr class="{{{rowclass38|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header38|}}}</th></tr>| {{#if:{{{label38|}}}|{{#if:{{{data38|}}}|<tr class="{{{rowclass38|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label38|}}}</th><td colspan="3" class="{{{class38|}}}" style="{{{datastyle|}}}">{{{data38|}}}</td></tr>|{{#if:{{{data38a|}}}{{{data38b|}}}|<tr class="{{{rowclass38|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label38|}}}</th><td class="{{{class38a|}}}" style="{{{datastylea|}}}">{{{data38a|}}}</td><td class="{{{class38b|}}}" style="{{{datastyleb|}}}">{{{data38b|}}}</td><td class="{{{class38c|}}}" style="{{{datastylec|}}}">{{{data38c|}}}</td></tr>}}}}| {{#if:{{{data38|}}}|<tr class="{{{rowclass38|}}}"><td colspan="4" class="{{{class38|}}}" style="text-align:center; {{{datastyle|}}}">{{{data38|}}}</td></tr>}} }} }}<!--
Row 39
-->{{#if:{{{header39|}}}|<tr class="{{{rowclass39|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header39|}}}</th></tr>| {{#if:{{{label39|}}}|{{#if:{{{data39|}}}|<tr class="{{{rowclass39|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label39|}}}</th><td colspan="3" class="{{{class39|}}}" style="{{{datastyle|}}}">{{{data39|}}}</td></tr>|{{#if:{{{data39a|}}}{{{data39b|}}}|<tr class="{{{rowclass39|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label39|}}}</th><td class="{{{class39a|}}}" style="{{{datastylea|}}}">{{{data39a|}}}</td><td class="{{{class39b|}}}" style="{{{datastyleb|}}}">{{{data39b|}}}</td><td class="{{{class39c|}}}" style="{{{datastylec|}}}">{{{data39c|}}}</td></tr>}}}}| {{#if:{{{data39|}}}|<tr class="{{{rowclass39|}}}"><td colspan="4" class="{{{class39|}}}" style="text-align:center; {{{datastyle|}}}">{{{data39|}}}</td></tr>}} }} }}<!--
Row 40
-->{{#if:{{{header40|}}}|<tr class="{{{rowclass40|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header40|}}}</th></tr>| {{#if:{{{label40|}}}|{{#if:{{{data40|}}}|<tr class="{{{rowclass40|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label40|}}}</th><td colspan="3" class="{{{class40|}}}" style="{{{datastyle|}}}">{{{data40|}}}</td></tr>|{{#if:{{{data40a|}}}{{{data40b|}}}|<tr class="{{{rowclass40|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label40|}}}</th><td class="{{{class40a|}}}" style="{{{datastylea|}}}">{{{data40a|}}}</td><td class="{{{class40b|}}}" style="{{{datastyleb|}}}">{{{data40b|}}}</td><td class="{{{class40c|}}}" style="{{{datastylec|}}}">{{{data40c|}}}</td></tr>}}}}| {{#if:{{{data40|}}}|<tr class="{{{rowclass40|}}}"><td colspan="4" class="{{{class40|}}}" style="text-align:center; {{{datastyle|}}}">{{{data40|}}}</td></tr>}} }} }}<!--
Row 41
-->{{#if:{{{header41|}}}|<tr class="{{{rowclass41|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header41|}}}</th></tr>| {{#if:{{{label41|}}}|{{#if:{{{data41|}}}|<tr class="{{{rowclass41|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label41|}}}</th><td colspan="3" class="{{{class41|}}}" style="{{{datastyle|}}}">{{{data41|}}}</td></tr>|{{#if:{{{data41a|}}}{{{data41b|}}}|<tr class="{{{rowclass41|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label41|}}}</th><td class="{{{class41a|}}}" style="{{{datastylea|}}}">{{{data41a|}}}</td><td class="{{{class41b|}}}" style="{{{datastyleb|}}}">{{{data41b|}}}</td><td class="{{{class41c|}}}" style="{{{datastylec|}}}">{{{data41c|}}}</td></tr>}}}}| {{#if:{{{data41|}}}|<tr class="{{{rowclass41|}}}"><td colspan="4" class="{{{class41|}}}" style="text-align:center; {{{datastyle|}}}">{{{data41|}}}</td></tr>}} }} }}<!--
Row 42
-->{{#if:{{{header42|}}}|<tr class="{{{rowclass42|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header42|}}}</th></tr>| {{#if:{{{label42|}}}|{{#if:{{{data42|}}}|<tr class="{{{rowclass42|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label42|}}}</th><td colspan="3" class="{{{class42|}}}" style="{{{datastyle|}}}">{{{data42|}}}</td></tr>|{{#if:{{{data42a|}}}{{{data42b|}}}|<tr class="{{{rowclass42|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label42|}}}</th><td class="{{{class42a|}}}" style="{{{datastylea|}}}">{{{data42a|}}}</td><td class="{{{class42b|}}}" style="{{{datastyleb|}}}">{{{data42b|}}}</td><td class="{{{class42c|}}}" style="{{{datastylec|}}}">{{{data42c|}}}</td></tr>}}}}| {{#if:{{{data42|}}}|<tr class="{{{rowclass42|}}}"><td colspan="4" class="{{{class42|}}}" style="text-align:center; {{{datastyle|}}}">{{{data42|}}}</td></tr>}} }} }}<!--
Row 43
-->{{#if:{{{header43|}}}|<tr class="{{{rowclass43|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header43|}}}</th></tr>| {{#if:{{{label43|}}}|{{#if:{{{data43|}}}|<tr class="{{{rowclass43|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label43|}}}</th><td colspan="3" class="{{{class43|}}}" style="{{{datastyle|}}}">{{{data43|}}}</td></tr>|{{#if:{{{data43a|}}}{{{data43b|}}}|<tr class="{{{rowclass43|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label43|}}}</th><td class="{{{class43a|}}}" style="{{{datastylea|}}}">{{{data43a|}}}</td><td class="{{{class43b|}}}" style="{{{datastyleb|}}}">{{{data43b|}}}</td><td class="{{{class43c|}}}" style="{{{datastylec|}}}">{{{data43c|}}}</td></tr>}}}}| {{#if:{{{data43|}}}|<tr class="{{{rowclass43|}}}"><td colspan="4" class="{{{class43|}}}" style="text-align:center; {{{datastyle|}}}">{{{data43|}}}</td></tr>}} }} }}<!--
Row 44
-->{{#if:{{{header44|}}}|<tr class="{{{rowclass44|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header44|}}}</th></tr>| {{#if:{{{label44|}}}|{{#if:{{{data44|}}}|<tr class="{{{rowclass44|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label44|}}}</th><td colspan="3" class="{{{class44|}}}" style="{{{datastyle|}}}">{{{data44|}}}</td></tr>|{{#if:{{{data44a|}}}{{{data44b|}}}|<tr class="{{{rowclass44|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label44|}}}</th><td class="{{{class44a|}}}" style="{{{datastylea|}}}">{{{data44a|}}}</td><td class="{{{class44b|}}}" style="{{{datastyleb|}}}">{{{data44b|}}}</td><td class="{{{class44c|}}}" style="{{{datastylec|}}}">{{{data44c|}}}</td></tr>}}}}| {{#if:{{{data44|}}}|<tr class="{{{rowclass44|}}}"><td colspan="4" class="{{{class44|}}}" style="text-align:center; {{{datastyle|}}}">{{{data44|}}}</td></tr>}} }} }}<!--
Row 45
-->{{#if:{{{header45|}}}|<tr class="{{{rowclass45|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header45|}}}</th></tr>| {{#if:{{{label45|}}}|{{#if:{{{data45|}}}|<tr class="{{{rowclass45|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label45|}}}</th><td colspan="3" class="{{{class45|}}}" style="{{{datastyle|}}}">{{{data45|}}}</td></tr>|{{#if:{{{data45a|}}}{{{data45b|}}}|<tr class="{{{rowclass45|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label45|}}}</th><td class="{{{class45a|}}}" style="{{{datastylea|}}}">{{{data45a|}}}</td><td class="{{{class45b|}}}" style="{{{datastyleb|}}}">{{{data45b|}}}</td><td class="{{{class45c|}}}" style="{{{datastylec|}}}">{{{data45c|}}}</td></tr>}}}}| {{#if:{{{data45|}}}|<tr class="{{{rowclass45|}}}"><td colspan="4" class="{{{class45|}}}" style="text-align:center; {{{datastyle|}}}">{{{data45|}}}</td></tr>}} }} }}<!--
Row 46
-->{{#if:{{{header46|}}}|<tr class="{{{rowclass46|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header46|}}}</th></tr>| {{#if:{{{label46|}}}|{{#if:{{{data46|}}}|<tr class="{{{rowclass46|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label46|}}}</th><td colspan="3" class="{{{class46|}}}" style="{{{datastyle|}}}">{{{data46|}}}</td></tr>|{{#if:{{{data46a|}}}{{{data46b|}}}|<tr class="{{{rowclass46|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label46|}}}</th><td class="{{{class46a|}}}" style="{{{datastylea|}}}">{{{data46a|}}}</td><td class="{{{class46b|}}}" style="{{{datastyleb|}}}">{{{data46b|}}}</td><td class="{{{class46c|}}}" style="{{{datastylec|}}}">{{{data46c|}}}</td></tr>}}}}| {{#if:{{{data46|}}}|<tr class="{{{rowclass46|}}}"><td colspan="4" class="{{{class46|}}}" style="text-align:center; {{{datastyle|}}}">{{{data46|}}}</td></tr>}} }} }}<!--
Row 47
-->{{#if:{{{header47|}}}|<tr class="{{{rowclass47|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header47|}}}</th></tr>| {{#if:{{{label47|}}}|{{#if:{{{data47|}}}|<tr class="{{{rowclass47|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label47|}}}</th><td colspan="3" class="{{{class47|}}}" style="{{{datastyle|}}}">{{{data47|}}}</td></tr>|{{#if:{{{data47a|}}}{{{data47b|}}}|<tr class="{{{rowclass47|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label47|}}}</th><td class="{{{class47a|}}}" style="{{{datastylea|}}}">{{{data47a|}}}</td><td class="{{{class47b|}}}" style="{{{datastyleb|}}}">{{{data47b|}}}</td><td class="{{{class47c|}}}" style="{{{datastylec|}}}">{{{data47c|}}}</td></tr>}}}}| {{#if:{{{data47|}}}|<tr class="{{{rowclass47|}}}"><td colspan="4" class="{{{class47|}}}" style="text-align:center; {{{datastyle|}}}">{{{data47|}}}</td></tr>}} }} }}<!--
Row 48
-->{{#if:{{{header48|}}}|<tr class="{{{rowclass48|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header48|}}}</th></tr>| {{#if:{{{label48|}}}|{{#if:{{{data48|}}}|<tr class="{{{rowclass48|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label48|}}}</th><td colspan="3" class="{{{class48|}}}" style="{{{datastyle|}}}">{{{data48|}}}</td></tr>|{{#if:{{{data48a|}}}{{{data48b|}}}|<tr class="{{{rowclass48|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label48|}}}</th><td class="{{{class48a|}}}" style="{{{datastylea|}}}">{{{data48a|}}}</td><td class="{{{class48b|}}}" style="{{{datastyleb|}}}">{{{data48b|}}}</td><td class="{{{class48c|}}}" style="{{{datastylec|}}}">{{{data48c|}}}</td></tr>}}}}| {{#if:{{{data48|}}}|<tr class="{{{rowclass48|}}}"><td colspan="4" class="{{{class48|}}}" style="text-align:center; {{{datastyle|}}}">{{{data48|}}}</td></tr>}} }} }}<!--
Row 49
-->{{#if:{{{header49|}}}|<tr class="{{{rowclass49|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header49|}}}</th></tr>| {{#if:{{{label49|}}}|{{#if:{{{data49|}}}|<tr class="{{{rowclass49|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label49|}}}</th><td colspan="3" class="{{{class49|}}}" style="{{{datastyle|}}}">{{{data49|}}}</td></tr>|{{#if:{{{data49a|}}}{{{data49b|}}}|<tr class="{{{rowclass49|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label49|}}}</th><td class="{{{class49a|}}}" style="{{{datastylea|}}}">{{{data49a|}}}</td><td class="{{{class49b|}}}" style="{{{datastyleb|}}}">{{{data49b|}}}</td><td class="{{{class49c|}}}" style="{{{datastylec|}}}">{{{data49c|}}}</td></tr>}}}}| {{#if:{{{data49|}}}|<tr class="{{{rowclass49|}}}"><td colspan="4" class="{{{class49|}}}" style="text-align:center; {{{datastyle|}}}">{{{data49|}}}</td></tr>}} }} }}<!--
Row 50
-->{{#if:{{{header50|}}}|<tr class="{{{rowclass50|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header50|}}}</th></tr>| {{#if:{{{label50|}}}|{{#if:{{{data50|}}}|<tr class="{{{rowclass50|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label50|}}}</th><td colspan="3" class="{{{class50|}}}" style="{{{datastyle|}}}">{{{data50|}}}</td></tr>|{{#if:{{{data50a|}}}{{{data50b|}}}|<tr class="{{{rowclass50|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label50|}}}</th><td class="{{{class50a|}}}" style="{{{datastylea|}}}">{{{data50a|}}}</td><td class="{{{class50b|}}}" style="{{{datastyleb|}}}">{{{data50b|}}}</td><td class="{{{class50c|}}}" style="{{{datastylec|}}}">{{{data50c|}}}</td></tr>}}}}| {{#if:{{{data50|}}}|<tr class="{{{rowclass50|}}}"><td colspan="4" class="{{{class50|}}}" style="text-align:center; {{{datastyle|}}}">{{{data50|}}}</td></tr>}} }} }}<!--
Row 51
-->{{#if:{{{header51|}}}|<tr class="{{{rowclass51|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header51|}}}</th></tr>| {{#if:{{{label51|}}}|{{#if:{{{data51|}}}|<tr class="{{{rowclass51|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label51|}}}</th><td colspan="3" class="{{{class51|}}}" style="{{{datastyle|}}}">{{{data51|}}}</td></tr>|{{#if:{{{data51a|}}}{{{data51b|}}}|<tr class="{{{rowclass51|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label51|}}}</th><td class="{{{class51a|}}}" style="{{{datastylea|}}}">{{{data51a|}}}</td><td class="{{{class51b|}}}" style="{{{datastyleb|}}}">{{{data51b|}}}</td><td class="{{{class51c|}}}" style="{{{datastylec|}}}">{{{data51c|}}}</td></tr>}}}}| {{#if:{{{data51|}}}|<tr class="{{{rowclass51|}}}"><td colspan="4" class="{{{class51|}}}" style="text-align:center; {{{datastyle|}}}">{{{data51|}}}</td></tr>}} }} }}<!--
Row 52
-->{{#if:{{{header52|}}}|<tr class="{{{rowclass52|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header52|}}}</th></tr>| {{#if:{{{label52|}}}|{{#if:{{{data52|}}}|<tr class="{{{rowclass52|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label52|}}}</th><td colspan="3" class="{{{class52|}}}" style="{{{datastyle|}}}">{{{data52|}}}</td></tr>|{{#if:{{{data52a|}}}{{{data52b|}}}|<tr class="{{{rowclass52|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label52|}}}</th><td class="{{{class52a|}}}" style="{{{datastylea|}}}">{{{data52a|}}}</td><td class="{{{class52b|}}}" style="{{{datastyleb|}}}">{{{data52b|}}}</td><td class="{{{class52c|}}}" style="{{{datastylec|}}}">{{{data52c|}}}</td></tr>}}}}| {{#if:{{{data52|}}}|<tr class="{{{rowclass52|}}}"><td colspan="4" class="{{{class52|}}}" style="text-align:center; {{{datastyle|}}}">{{{data52|}}}</td></tr>}} }} }}<!--
Row 53
-->{{#if:{{{header53|}}}|<tr class="{{{rowclass53|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header53|}}}</th></tr>| {{#if:{{{label53|}}}|{{#if:{{{data53|}}}|<tr class="{{{rowclass53|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label53|}}}</th><td colspan="3" class="{{{class53|}}}" style="{{{datastyle|}}}">{{{data53|}}}</td></tr>|{{#if:{{{data53a|}}}{{{data53b|}}}|<tr class="{{{rowclass53|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label53|}}}</th><td class="{{{class53a|}}}" style="{{{datastylea|}}}">{{{data53a|}}}</td><td class="{{{class53b|}}}" style="{{{datastyleb|}}}">{{{data53b|}}}</td><td class="{{{class53c|}}}" style="{{{datastylec|}}}">{{{data53c|}}}</td></tr>}}}}| {{#if:{{{data53|}}}|<tr class="{{{rowclass53|}}}"><td colspan="4" class="{{{class53|}}}" style="text-align:center; {{{datastyle|}}}">{{{data53|}}}</td></tr>}} }} }}<!--
Row 54
-->{{#if:{{{header54|}}}|<tr class="{{{rowclass54|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header54|}}}</th></tr>| {{#if:{{{label54|}}}|{{#if:{{{data54|}}}|<tr class="{{{rowclass54|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label54|}}}</th><td colspan="3" class="{{{class54|}}}" style="{{{datastyle|}}}">{{{data54|}}}</td></tr>|{{#if:{{{data54a|}}}{{{data54b|}}}|<tr class="{{{rowclass54|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label54|}}}</th><td class="{{{class54a|}}}" style="{{{datastylea|}}}">{{{data54a|}}}</td><td class="{{{class54b|}}}" style="{{{datastyleb|}}}">{{{data54b|}}}</td><td class="{{{class54c|}}}" style="{{{datastylec|}}}">{{{data54c|}}}</td></tr>}}}}| {{#if:{{{data54|}}}|<tr class="{{{rowclass54|}}}"><td colspan="4" class="{{{class54|}}}" style="text-align:center; {{{datastyle|}}}">{{{data54|}}}</td></tr>}} }} }}<!--
Row 55
-->{{#if:{{{header55|}}}|<tr class="{{{rowclass55|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header55|}}}</th></tr>| {{#if:{{{label55|}}}|{{#if:{{{data55|}}}|<tr class="{{{rowclass55|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label55|}}}</th><td colspan="3" class="{{{class55|}}}" style="{{{datastyle|}}}">{{{data55|}}}</td></tr>|{{#if:{{{data55a|}}}{{{data55b|}}}|<tr class="{{{rowclass55|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label55|}}}</th><td class="{{{class55a|}}}" style="{{{datastylea|}}}">{{{data55a|}}}</td><td class="{{{class55b|}}}" style="{{{datastyleb|}}}">{{{data55b|}}}</td><td class="{{{class55c|}}}" style="{{{datastylec|}}}">{{{data55c|}}}</td></tr>}}}}| {{#if:{{{data55|}}}|<tr class="{{{rowclass55|}}}"><td colspan="4" class="{{{class55|}}}" style="text-align:center; {{{datastyle|}}}">{{{data55|}}}</td></tr>}} }} }}<!--
Row 56
-->{{#if:{{{header56|}}}|<tr class="{{{rowclass56|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header56|}}}</th></tr>| {{#if:{{{label56|}}}|{{#if:{{{data56|}}}|<tr class="{{{rowclass56|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label56|}}}</th><td colspan="3" class="{{{class56|}}}" style="{{{datastyle|}}}">{{{data56|}}}</td></tr>|{{#if:{{{data56a|}}}{{{data56b|}}}|<tr class="{{{rowclass56|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label56|}}}</th><td class="{{{class56a|}}}" style="{{{datastylea|}}}">{{{data56a|}}}</td><td class="{{{class56b|}}}" style="{{{datastyleb|}}}">{{{data56b|}}}</td><td class="{{{class56c|}}}" style="{{{datastylec|}}}">{{{data56c|}}}</td></tr>}}}}| {{#if:{{{data56|}}}|<tr class="{{{rowclass56|}}}"><td colspan="4" class="{{{class56|}}}" style="text-align:center; {{{datastyle|}}}">{{{data56|}}}</td></tr>}} }} }}<!--
Row 57
-->{{#if:{{{header57|}}}|<tr class="{{{rowclass57|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header57|}}}</th></tr>| {{#if:{{{label57|}}}|{{#if:{{{data57|}}}|<tr class="{{{rowclass57|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label57|}}}</th><td colspan="3" class="{{{class57|}}}" style="{{{datastyle|}}}">{{{data57|}}}</td></tr>|{{#if:{{{data57a|}}}{{{data57b|}}}|<tr class="{{{rowclass57|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label57|}}}</th><td class="{{{class57a|}}}" style="{{{datastylea|}}}">{{{data57a|}}}</td><td class="{{{class57b|}}}" style="{{{datastyleb|}}}">{{{data57b|}}}</td><td class="{{{class57c|}}}" style="{{{datastylec|}}}">{{{data57c|}}}</td></tr>}}}}| {{#if:{{{data57|}}}|<tr class="{{{rowclass57|}}}"><td colspan="4" class="{{{class57|}}}" style="text-align:center; {{{datastyle|}}}">{{{data57|}}}</td></tr>}} }} }}<!--
Row 58
-->{{#if:{{{header58|}}}|<tr class="{{{rowclass58|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header58|}}}</th></tr>| {{#if:{{{label58|}}}|{{#if:{{{data58|}}}|<tr class="{{{rowclass58|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label58|}}}</th><td colspan="3" class="{{{class58|}}}" style="{{{datastyle|}}}">{{{data58|}}}</td></tr>|{{#if:{{{data58a|}}}{{{data58b|}}}|<tr class="{{{rowclass58|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label58|}}}</th><td class="{{{class58a|}}}" style="{{{datastylea|}}}">{{{data58a|}}}</td><td class="{{{class58b|}}}" style="{{{datastyleb|}}}">{{{data58b|}}}</td><td class="{{{class58c|}}}" style="{{{datastylec|}}}">{{{data58c|}}}</td></tr>}}}}| {{#if:{{{data58|}}}|<tr class="{{{rowclass58|}}}"><td colspan="4" class="{{{class58|}}}" style="text-align:center; {{{datastyle|}}}">{{{data58|}}}</td></tr>}} }} }}<!--
Row 59
-->{{#if:{{{header59|}}}|<tr class="{{{rowclass59|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header59|}}}</th></tr>| {{#if:{{{label59|}}}|{{#if:{{{data59|}}}|<tr class="{{{rowclass59|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label59|}}}</th><td colspan="3" class="{{{class59|}}}" style="{{{datastyle|}}}">{{{data59|}}}</td></tr>|{{#if:{{{data59a|}}}{{{data59b|}}}|<tr class="{{{rowclass59|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label59|}}}</th><td class="{{{class59a|}}}" style="{{{datastylea|}}}">{{{data59a|}}}</td><td class="{{{class59b|}}}" style="{{{datastyleb|}}}">{{{data59b|}}}</td><td class="{{{class59c|}}}" style="{{{datastylec|}}}">{{{data59c|}}}</td></tr>}}}}| {{#if:{{{data59|}}}|<tr class="{{{rowclass59|}}}"><td colspan="4" class="{{{class59|}}}" style="text-align:center; {{{datastyle|}}}">{{{data59|}}}</td></tr>}} }} }}<!--
Row 60
-->{{#if:{{{header60|}}}|<tr class="{{{rowclass60|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header60|}}}</th></tr>| {{#if:{{{label60|}}}|{{#if:{{{data60|}}}|<tr class="{{{rowclass60|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label60|}}}</th><td colspan="3" class="{{{class60|}}}" style="{{{datastyle|}}}">{{{data60|}}}</td></tr>|{{#if:{{{data60a|}}}{{{data60b|}}}|<tr class="{{{rowclass60|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label60|}}}</th><td class="{{{class60a|}}}" style="{{{datastylea|}}}">{{{data60a|}}}</td><td class="{{{class60b|}}}" style="{{{datastyleb|}}}">{{{data60b|}}}</td><td class="{{{class60c|}}}" style="{{{datastylec|}}}">{{{data60c|}}}</td></tr>}}}}| {{#if:{{{data60|}}}|<tr class="{{{rowclass60|}}}"><td colspan="4" class="{{{class60|}}}" style="text-align:center; {{{datastyle|}}}">{{{data60|}}}</td></tr>}} }} }}<!--
Row 61
-->{{#if:{{{header61|}}}|<tr class="{{{rowclass61|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header61|}}}</th></tr>| {{#if:{{{label61|}}}|{{#if:{{{data61|}}}|<tr class="{{{rowclass61|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label61|}}}</th><td colspan="3" class="{{{class61|}}}" style="{{{datastyle|}}}">{{{data61|}}}</td></tr>|{{#if:{{{data61a|}}}{{{data61b|}}}|<tr class="{{{rowclass61|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label61|}}}</th><td class="{{{class61a|}}}" style="{{{datastylea|}}}">{{{data61a|}}}</td><td class="{{{class61b|}}}" style="{{{datastyleb|}}}">{{{data61b|}}}</td><td class="{{{class61c|}}}" style="{{{datastylec|}}}">{{{data61c|}}}</td></tr>}}}}| {{#if:{{{data61|}}}|<tr class="{{{rowclass61|}}}"><td colspan="4" class="{{{class61|}}}" style="text-align:center; {{{datastyle|}}}">{{{data61|}}}</td></tr>}} }} }}<!--
Row 62
-->{{#if:{{{header62|}}}|<tr class="{{{rowclass62|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header62|}}}</th></tr>| {{#if:{{{label62|}}}|{{#if:{{{data62|}}}|<tr class="{{{rowclass62|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label62|}}}</th><td colspan="3" class="{{{class62|}}}" style="{{{datastyle|}}}">{{{data62|}}}</td></tr>|{{#if:{{{data62a|}}}{{{data62b|}}}|<tr class="{{{rowclass62|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label62|}}}</th><td class="{{{class62a|}}}" style="{{{datastylea|}}}">{{{data62a|}}}</td><td class="{{{class62b|}}}" style="{{{datastyleb|}}}">{{{data62b|}}}</td><td class="{{{class62c|}}}" style="{{{datastylec|}}}">{{{data62c|}}}</td></tr>}}}}| {{#if:{{{data62|}}}|<tr class="{{{rowclass62|}}}"><td colspan="4" class="{{{class62|}}}" style="text-align:center; {{{datastyle|}}}">{{{data62|}}}</td></tr>}} }} }}<!--
Row 63
-->{{#if:{{{header63|}}}|<tr class="{{{rowclass63|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header63|}}}</th></tr>| {{#if:{{{label63|}}}|{{#if:{{{data63|}}}|<tr class="{{{rowclass63|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label63|}}}</th><td colspan="3" class="{{{class63|}}}" style="{{{datastyle|}}}">{{{data63|}}}</td></tr>|{{#if:{{{data63a|}}}{{{data63b|}}}|<tr class="{{{rowclass63|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label63|}}}</th><td class="{{{class63a|}}}" style="{{{datastylea|}}}">{{{data63a|}}}</td><td class="{{{class63b|}}}" style="{{{datastyleb|}}}">{{{data63b|}}}</td><td class="{{{class63c|}}}" style="{{{datastylec|}}}">{{{data63c|}}}</td></tr>}}}}| {{#if:{{{data63|}}}|<tr class="{{{rowclass63|}}}"><td colspan="4" class="{{{class63|}}}" style="text-align:center; {{{datastyle|}}}">{{{data63|}}}</td></tr>}} }} }}<!--
Row 64
-->{{#if:{{{header64|}}}|<tr class="{{{rowclass64|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header64|}}}</th></tr>| {{#if:{{{label64|}}}|{{#if:{{{data64|}}}|<tr class="{{{rowclass64|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label64|}}}</th><td colspan="3" class="{{{class64|}}}" style="{{{datastyle|}}}">{{{data64|}}}</td></tr>|{{#if:{{{data64a|}}}{{{data64b|}}}|<tr class="{{{rowclass64|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label64|}}}</th><td class="{{{class64a|}}}" style="{{{datastylea|}}}">{{{data64a|}}}</td><td class="{{{class64b|}}}" style="{{{datastyleb|}}}">{{{data64b|}}}</td><td class="{{{class64c|}}}" style="{{{datastylec|}}}">{{{data64c|}}}</td></tr>}}}}| {{#if:{{{data64|}}}|<tr class="{{{rowclass64|}}}"><td colspan="4" class="{{{class64|}}}" style="text-align:center; {{{datastyle|}}}">{{{data64|}}}</td></tr>}} }} }}<!--
Row 65
-->{{#if:{{{header65|}}}|<tr class="{{{rowclass65|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header65|}}}</th></tr>| {{#if:{{{label65|}}}|{{#if:{{{data65|}}}|<tr class="{{{rowclass65|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label65|}}}</th><td colspan="3" class="{{{class65|}}}" style="{{{datastyle|}}}">{{{data65|}}}</td></tr>|{{#if:{{{data65a|}}}{{{data65b|}}}|<tr class="{{{rowclass65|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label65|}}}</th><td class="{{{class65a|}}}" style="{{{datastylea|}}}">{{{data65a|}}}</td><td class="{{{class65b|}}}" style="{{{datastyleb|}}}">{{{data65b|}}}</td><td class="{{{class65c|}}}" style="{{{datastylec|}}}">{{{data65c|}}}</td></tr>}}}}| {{#if:{{{data65|}}}|<tr class="{{{rowclass65|}}}"><td colspan="4" class="{{{class65|}}}" style="text-align:center; {{{datastyle|}}}">{{{data65|}}}</td></tr>}} }} }}<!--
Row 66
-->{{#if:{{{header66|}}}|<tr class="{{{rowclass66|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header66|}}}</th></tr>| {{#if:{{{label66|}}}|{{#if:{{{data66|}}}|<tr class="{{{rowclass66|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label66|}}}</th><td colspan="3" class="{{{class66|}}}" style="{{{datastyle|}}}">{{{data66|}}}</td></tr>|{{#if:{{{data66a|}}}{{{data66b|}}}|<tr class="{{{rowclass66|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label66|}}}</th><td class="{{{class66a|}}}" style="{{{datastylea|}}}">{{{data66a|}}}</td><td class="{{{class66b|}}}" style="{{{datastyleb|}}}">{{{data66b|}}}</td><td class="{{{class66c|}}}" style="{{{datastylec|}}}">{{{data66c|}}}</td></tr>}}}}| {{#if:{{{data66|}}}|<tr class="{{{rowclass66|}}}"><td colspan="4" class="{{{class66|}}}" style="text-align:center; {{{datastyle|}}}">{{{data66|}}}</td></tr>}} }} }}<!--
Row 67
-->{{#if:{{{header67|}}}|<tr class="{{{rowclass67|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header67|}}}</th></tr>| {{#if:{{{label67|}}}|{{#if:{{{data67|}}}|<tr class="{{{rowclass67|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label67|}}}</th><td colspan="3" class="{{{class67|}}}" style="{{{datastyle|}}}">{{{data67|}}}</td></tr>|{{#if:{{{data67a|}}}{{{data67b|}}}|<tr class="{{{rowclass67|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label67|}}}</th><td class="{{{class67a|}}}" style="{{{datastylea|}}}">{{{data67a|}}}</td><td class="{{{class67b|}}}" style="{{{datastyleb|}}}">{{{data67b|}}}</td><td class="{{{class67c|}}}" style="{{{datastylec|}}}">{{{data67c|}}}</td></tr>}}}}| {{#if:{{{data67|}}}|<tr class="{{{rowclass67|}}}"><td colspan="4" class="{{{class67|}}}" style="text-align:center; {{{datastyle|}}}">{{{data67|}}}</td></tr>}} }} }}<!--
Row 68
-->{{#if:{{{header68|}}}|<tr class="{{{rowclass68|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header68|}}}</th></tr>| {{#if:{{{label68|}}}|{{#if:{{{data68|}}}|<tr class="{{{rowclass68|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label68|}}}</th><td colspan="3" class="{{{class68|}}}" style="{{{datastyle|}}}">{{{data68|}}}</td></tr>|{{#if:{{{data68a|}}}{{{data68b|}}}|<tr class="{{{rowclass68|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label68|}}}</th><td class="{{{class68a|}}}" style="{{{datastylea|}}}">{{{data68a|}}}</td><td class="{{{class68b|}}}" style="{{{datastyleb|}}}">{{{data68b|}}}</td><td class="{{{class68c|}}}" style="{{{datastylec|}}}">{{{data68c|}}}</td></tr>}}}}| {{#if:{{{data68|}}}|<tr class="{{{rowclass68|}}}"><td colspan="4" class="{{{class68|}}}" style="text-align:center; {{{datastyle|}}}">{{{data68|}}}</td></tr>}} }} }}<!--
Row 69
-->{{#if:{{{header69|}}}|<tr class="{{{rowclass69|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header69|}}}</th></tr>| {{#if:{{{label69|}}}|{{#if:{{{data69|}}}|<tr class="{{{rowclass69|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label69|}}}</th><td colspan="3" class="{{{class69|}}}" style="{{{datastyle|}}}">{{{data69|}}}</td></tr>|{{#if:{{{data69a|}}}{{{data69b|}}}|<tr class="{{{rowclass69|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label69|}}}</th><td class="{{{class69a|}}}" style="{{{datastylea|}}}">{{{data69a|}}}</td><td class="{{{class69b|}}}" style="{{{datastyleb|}}}">{{{data69b|}}}</td><td class="{{{class69c|}}}" style="{{{datastylec|}}}">{{{data69c|}}}</td></tr>}}}}| {{#if:{{{data69|}}}|<tr class="{{{rowclass69|}}}"><td colspan="4" class="{{{class69|}}}" style="text-align:center; {{{datastyle|}}}">{{{data69|}}}</td></tr>}} }} }}<!--
Row 70
-->{{#if:{{{header70|}}}|<tr class="{{{rowclass70|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header70|}}}</th></tr>| {{#if:{{{label70|}}}|{{#if:{{{data70|}}}|<tr class="{{{rowclass70|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label70|}}}</th><td colspan="3" class="{{{class70|}}}" style="{{{datastyle|}}}">{{{data70|}}}</td></tr>|{{#if:{{{data70a|}}}{{{data70b|}}}|<tr class="{{{rowclass70|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label70|}}}</th><td class="{{{class70a|}}}" style="{{{datastylea|}}}">{{{data70a|}}}</td><td class="{{{class70b|}}}" style="{{{datastyleb|}}}">{{{data70b|}}}</td><td class="{{{class70c|}}}" style="{{{datastylec|}}}">{{{data70c|}}}</td></tr>}}}}| {{#if:{{{data70|}}}|<tr class="{{{rowclass70|}}}"><td colspan="4" class="{{{class70|}}}" style="text-align:center; {{{datastyle|}}}">{{{data70|}}}</td></tr>}} }} }}<!--
Row 71
-->{{#if:{{{header71|}}}|<tr class="{{{rowclass71|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header71|}}}</th></tr>| {{#if:{{{label71|}}}|{{#if:{{{data71|}}}|<tr class="{{{rowclass71|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label71|}}}</th><td colspan="3" class="{{{class71|}}}" style="{{{datastyle|}}}">{{{data71|}}}</td></tr>|{{#if:{{{data71a|}}}{{{data71b|}}}|<tr class="{{{rowclass71|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label71|}}}</th><td class="{{{class71a|}}}" style="{{{datastylea|}}}">{{{data71a|}}}</td><td class="{{{class71b|}}}" style="{{{datastyleb|}}}">{{{data71b|}}}</td><td class="{{{class71c|}}}" style="{{{datastylec|}}}">{{{data71c|}}}</td></tr>}}}}| {{#if:{{{data71|}}}|<tr class="{{{rowclass71|}}}"><td colspan="4" class="{{{class71|}}}" style="text-align:center; {{{datastyle|}}}">{{{data71|}}}</td></tr>}} }} }}<!--
Row 72
-->{{#if:{{{header72|}}}|<tr class="{{{rowclass72|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header72|}}}</th></tr>| {{#if:{{{label72|}}}|{{#if:{{{data72|}}}|<tr class="{{{rowclass72|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label72|}}}</th><td colspan="3" class="{{{class72|}}}" style="{{{datastyle|}}}">{{{data72|}}}</td></tr>|{{#if:{{{data72a|}}}{{{data72b|}}}|<tr class="{{{rowclass72|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label72|}}}</th><td class="{{{class72a|}}}" style="{{{datastylea|}}}">{{{data72a|}}}</td><td class="{{{class72b|}}}" style="{{{datastyleb|}}}">{{{data72b|}}}</td><td class="{{{class72c|}}}" style="{{{datastylec|}}}">{{{data72c|}}}</td></tr>}}}}| {{#if:{{{data72|}}}|<tr class="{{{rowclass72|}}}"><td colspan="4" class="{{{class72|}}}" style="text-align:center; {{{datastyle|}}}">{{{data72|}}}</td></tr>}} }} }}<!--
Row 73
-->{{#if:{{{header73|}}}|<tr class="{{{rowclass73|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header73|}}}</th></tr>| {{#if:{{{label73|}}}|{{#if:{{{data73|}}}|<tr class="{{{rowclass73|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label73|}}}</th><td colspan="3" class="{{{class73|}}}" style="{{{datastyle|}}}">{{{data73|}}}</td></tr>|{{#if:{{{data73a|}}}{{{data73b|}}}|<tr class="{{{rowclass73|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label73|}}}</th><td class="{{{class73a|}}}" style="{{{datastylea|}}}">{{{data73a|}}}</td><td class="{{{class73b|}}}" style="{{{datastyleb|}}}">{{{data73b|}}}</td><td class="{{{class73c|}}}" style="{{{datastylec|}}}">{{{data73c|}}}</td></tr>}}}}| {{#if:{{{data73|}}}|<tr class="{{{rowclass73|}}}"><td colspan="4" class="{{{class73|}}}" style="text-align:center; {{{datastyle|}}}">{{{data73|}}}</td></tr>}} }} }}<!--
Row 74
-->{{#if:{{{header74|}}}|<tr class="{{{rowclass74|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header74|}}}</th></tr>| {{#if:{{{label74|}}}|{{#if:{{{data74|}}}|<tr class="{{{rowclass74|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label74|}}}</th><td colspan="3" class="{{{class74|}}}" style="{{{datastyle|}}}">{{{data74|}}}</td></tr>|{{#if:{{{data74a|}}}{{{data74b|}}}|<tr class="{{{rowclass74|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label74|}}}</th><td class="{{{class74a|}}}" style="{{{datastylea|}}}">{{{data74a|}}}</td><td class="{{{class74b|}}}" style="{{{datastyleb|}}}">{{{data74b|}}}</td><td class="{{{class74c|}}}" style="{{{datastylec|}}}">{{{data74c|}}}</td></tr>}}}}| {{#if:{{{data74|}}}|<tr class="{{{rowclass74|}}}"><td colspan="4" class="{{{class74|}}}" style="text-align:center; {{{datastyle|}}}">{{{data74|}}}</td></tr>}} }} }}<!--
Row 75
-->{{#if:{{{header75|}}}|<tr class="{{{rowclass75|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header75|}}}</th></tr>| {{#if:{{{label75|}}}|{{#if:{{{data75|}}}|<tr class="{{{rowclass75|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label75|}}}</th><td colspan="3" class="{{{class75|}}}" style="{{{datastyle|}}}">{{{data75|}}}</td></tr>|{{#if:{{{data75a|}}}{{{data75b|}}}|<tr class="{{{rowclass75|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label75|}}}</th><td class="{{{class75a|}}}" style="{{{datastylea|}}}">{{{data75a|}}}</td><td class="{{{class75b|}}}" style="{{{datastyleb|}}}">{{{data75b|}}}</td><td class="{{{class75c|}}}" style="{{{datastylec|}}}">{{{data75c|}}}</td></tr>}}}}| {{#if:{{{data75|}}}|<tr class="{{{rowclass75|}}}"><td colspan="4" class="{{{class75|}}}" style="text-align:center; {{{datastyle|}}}">{{{data75|}}}</td></tr>}} }} }}<!--
Row 76
-->{{#if:{{{header76|}}}|<tr class="{{{rowclass76|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header76|}}}</th></tr>| {{#if:{{{label76|}}}|{{#if:{{{data76|}}}|<tr class="{{{rowclass76|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label76|}}}</th><td colspan="3" class="{{{class76|}}}" style="{{{datastyle|}}}">{{{data76|}}}</td></tr>|{{#if:{{{data76a|}}}{{{data76b|}}}|<tr class="{{{rowclass76|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label76|}}}</th><td class="{{{class76a|}}}" style="{{{datastylea|}}}">{{{data76a|}}}</td><td class="{{{class76b|}}}" style="{{{datastyleb|}}}">{{{data76b|}}}</td><td class="{{{class76c|}}}" style="{{{datastylec|}}}">{{{data76c|}}}</td></tr>}}}}| {{#if:{{{data76|}}}|<tr class="{{{rowclass76|}}}"><td colspan="4" class="{{{class76|}}}" style="text-align:center; {{{datastyle|}}}">{{{data76|}}}</td></tr>}} }} }}<!--
Row 77
-->{{#if:{{{header77|}}}|<tr class="{{{rowclass77|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header77|}}}</th></tr>| {{#if:{{{label77|}}}|{{#if:{{{data77|}}}|<tr class="{{{rowclass77|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label77|}}}</th><td colspan="3" class="{{{class77|}}}" style="{{{datastyle|}}}">{{{data77|}}}</td></tr>|{{#if:{{{data77a|}}}{{{data77b|}}}|<tr class="{{{rowclass77|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label77|}}}</th><td class="{{{class77a|}}}" style="{{{datastylea|}}}">{{{data77a|}}}</td><td class="{{{class77b|}}}" style="{{{datastyleb|}}}">{{{data77b|}}}</td><td class="{{{class77c|}}}" style="{{{datastylec|}}}">{{{data77c|}}}</td></tr>}}}}| {{#if:{{{data77|}}}|<tr class="{{{rowclass77|}}}"><td colspan="4" class="{{{class77|}}}" style="text-align:center; {{{datastyle|}}}">{{{data77|}}}</td></tr>}} }} }}<!--
Row 78
-->{{#if:{{{header78|}}}|<tr class="{{{rowclass78|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header78|}}}</th></tr>| {{#if:{{{label78|}}}|{{#if:{{{data78|}}}|<tr class="{{{rowclass78|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label78|}}}</th><td colspan="3" class="{{{class78|}}}" style="{{{datastyle|}}}">{{{data78|}}}</td></tr>|{{#if:{{{data78a|}}}{{{data78b|}}}|<tr class="{{{rowclass78|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label78|}}}</th><td class="{{{class78a|}}}" style="{{{datastylea|}}}">{{{data78a|}}}</td><td class="{{{class78b|}}}" style="{{{datastyleb|}}}">{{{data78b|}}}</td><td class="{{{class78c|}}}" style="{{{datastylec|}}}">{{{data78c|}}}</td></tr>}}}}| {{#if:{{{data78|}}}|<tr class="{{{rowclass78|}}}"><td colspan="4" class="{{{class78|}}}" style="text-align:center; {{{datastyle|}}}">{{{data78|}}}</td></tr>}} }} }}<!--
Row 79
-->{{#if:{{{header79|}}}|<tr class="{{{rowclass79|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header79|}}}</th></tr>| {{#if:{{{label79|}}}|{{#if:{{{data79|}}}|<tr class="{{{rowclass79|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label79|}}}</th><td colspan="3" class="{{{class79|}}}" style="{{{datastyle|}}}">{{{data79|}}}</td></tr>|{{#if:{{{data79a|}}}{{{data79b|}}}|<tr class="{{{rowclass79|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label79|}}}</th><td class="{{{class79a|}}}" style="{{{datastylea|}}}">{{{data79a|}}}</td><td class="{{{class79b|}}}" style="{{{datastyleb|}}}">{{{data79b|}}}</td><td class="{{{class79c|}}}" style="{{{datastylec|}}}">{{{data79c|}}}</td></tr>}}}}| {{#if:{{{data79|}}}|<tr class="{{{rowclass79|}}}"><td colspan="4" class="{{{class79|}}}" style="text-align:center; {{{datastyle|}}}">{{{data79|}}}</td></tr>}} }} }}<!--
Row 80
-->{{#if:{{{header80|}}}|<tr class="{{{rowclass80|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header80|}}}</th></tr>| {{#if:{{{label80|}}}|{{#if:{{{data80|}}}|<tr class="{{{rowclass80|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label80|}}}</th><td colspan="3" class="{{{class80|}}}" style="{{{datastyle|}}}">{{{data80|}}}</td></tr>|{{#if:{{{data80a|}}}{{{data80b|}}}|<tr class="{{{rowclass80|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label80|}}}</th><td class="{{{class80a|}}}" style="{{{datastylea|}}}">{{{data80a|}}}</td><td class="{{{class80b|}}}" style="{{{datastyleb|}}}">{{{data80b|}}}</td><td class="{{{class80c|}}}" style="{{{datastylec|}}}">{{{data80c|}}}</td></tr>}}}}| {{#if:{{{data80|}}}|<tr class="{{{rowclass80|}}}"><td colspan="4" class="{{{class80|}}}" style="text-align:center; {{{datastyle|}}}">{{{data80|}}}</td></tr>}} }} }}<!--
Row 81
-->{{#if:{{{header81|}}}|<tr class="{{{rowclass81|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header81|}}}</th></tr>| {{#if:{{{label81|}}}|{{#if:{{{data81|}}}|<tr class="{{{rowclass81|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label81|}}}</th><td colspan="3" class="{{{class81|}}}" style="{{{datastyle|}}}">{{{data81|}}}</td></tr>|{{#if:{{{data81a|}}}{{{data81b|}}}|<tr class="{{{rowclass81|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label81|}}}</th><td class="{{{class81a|}}}" style="{{{datastylea|}}}">{{{data81a|}}}</td><td class="{{{class81b|}}}" style="{{{datastyleb|}}}">{{{data81b|}}}</td><td class="{{{class81c|}}}" style="{{{datastylec|}}}">{{{data81c|}}}</td></tr>}}}}| {{#if:{{{data81|}}}|<tr class="{{{rowclass81|}}}"><td colspan="4" class="{{{class81|}}}" style="text-align:center; {{{datastyle|}}}">{{{data81|}}}</td></tr>}} }} }}<!--
Row 82
-->{{#if:{{{header82|}}}|<tr class="{{{rowclass82|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header82|}}}</th></tr>| {{#if:{{{label82|}}}|{{#if:{{{data82|}}}|<tr class="{{{rowclass82|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label82|}}}</th><td colspan="3" class="{{{class82|}}}" style="{{{datastyle|}}}">{{{data82|}}}</td></tr>|{{#if:{{{data82a|}}}{{{data82b|}}}|<tr class="{{{rowclass82|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label82|}}}</th><td class="{{{class82a|}}}" style="{{{datastylea|}}}">{{{data82a|}}}</td><td class="{{{class82b|}}}" style="{{{datastyleb|}}}">{{{data82b|}}}</td><td class="{{{class82c|}}}" style="{{{datastylec|}}}">{{{data82c|}}}</td></tr>}}}}| {{#if:{{{data82|}}}|<tr class="{{{rowclass82|}}}"><td colspan="4" class="{{{class82|}}}" style="text-align:center; {{{datastyle|}}}">{{{data82|}}}</td></tr>}} }} }}<!--
Row 83
-->{{#if:{{{header83|}}}|<tr class="{{{rowclass83|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header83|}}}</th></tr>| {{#if:{{{label83|}}}|{{#if:{{{data83|}}}|<tr class="{{{rowclass83|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label83|}}}</th><td colspan="3" class="{{{class83|}}}" style="{{{datastyle|}}}">{{{data83|}}}</td></tr>|{{#if:{{{data83a|}}}{{{data83b|}}}|<tr class="{{{rowclass83|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label83|}}}</th><td class="{{{class83a|}}}" style="{{{datastylea|}}}">{{{data83a|}}}</td><td class="{{{class83b|}}}" style="{{{datastyleb|}}}">{{{data83b|}}}</td><td class="{{{class83c|}}}" style="{{{datastylec|}}}">{{{data83c|}}}</td></tr>}}}}| {{#if:{{{data83|}}}|<tr class="{{{rowclass83|}}}"><td colspan="4" class="{{{class83|}}}" style="text-align:center; {{{datastyle|}}}">{{{data83|}}}</td></tr>}} }} }}<!--
Row 84
-->{{#if:{{{header84|}}}|<tr class="{{{rowclass84|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header84|}}}</th></tr>| {{#if:{{{label84|}}}|{{#if:{{{data84|}}}|<tr class="{{{rowclass84|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label84|}}}</th><td colspan="3" class="{{{class84|}}}" style="{{{datastyle|}}}">{{{data84|}}}</td></tr>|{{#if:{{{data84a|}}}{{{data84b|}}}|<tr class="{{{rowclass84|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label84|}}}</th><td class="{{{class84a|}}}" style="{{{datastylea|}}}">{{{data84a|}}}</td><td class="{{{class84b|}}}" style="{{{datastyleb|}}}">{{{data84b|}}}</td><td class="{{{class84c|}}}" style="{{{datastylec|}}}">{{{data84c|}}}</td></tr>}}}}| {{#if:{{{data84|}}}|<tr class="{{{rowclass84|}}}"><td colspan="4" class="{{{class84|}}}" style="text-align:center; {{{datastyle|}}}">{{{data84|}}}</td></tr>}} }} }}<!--
Row 85
-->{{#if:{{{header85|}}}|<tr class="{{{rowclass85|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header85|}}}</th></tr>| {{#if:{{{label85|}}}|{{#if:{{{data85|}}}|<tr class="{{{rowclass85|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label85|}}}</th><td colspan="3" class="{{{class85|}}}" style="{{{datastyle|}}}">{{{data85|}}}</td></tr>|{{#if:{{{data85a|}}}{{{data85b|}}}|<tr class="{{{rowclass85|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label85|}}}</th><td class="{{{class85a|}}}" style="{{{datastylea|}}}">{{{data85a|}}}</td><td class="{{{class85b|}}}" style="{{{datastyleb|}}}">{{{data85b|}}}</td><td class="{{{class85c|}}}" style="{{{datastylec|}}}">{{{data85c|}}}</td></tr>}}}}| {{#if:{{{data85|}}}|<tr class="{{{rowclass85|}}}"><td colspan="4" class="{{{class85|}}}" style="text-align:center; {{{datastyle|}}}">{{{data85|}}}</td></tr>}} }} }}<!--
Row 86
-->{{#if:{{{header86|}}}|<tr class="{{{rowclass86|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header86|}}}</th></tr>| {{#if:{{{label86|}}}|{{#if:{{{data86|}}}|<tr class="{{{rowclass86|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label86|}}}</th><td colspan="3" class="{{{class86|}}}" style="{{{datastyle|}}}">{{{data86|}}}</td></tr>|{{#if:{{{data86a|}}}{{{data86b|}}}|<tr class="{{{rowclass86|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label86|}}}</th><td class="{{{class86a|}}}" style="{{{datastylea|}}}">{{{data86a|}}}</td><td class="{{{class86b|}}}" style="{{{datastyleb|}}}">{{{data86b|}}}</td><td class="{{{class86c|}}}" style="{{{datastylec|}}}">{{{data86c|}}}</td></tr>}}}}| {{#if:{{{data86|}}}|<tr class="{{{rowclass86|}}}"><td colspan="4" class="{{{class86|}}}" style="text-align:center; {{{datastyle|}}}">{{{data86|}}}</td></tr>}} }} }}<!--
Row 87
-->{{#if:{{{header87|}}}|<tr class="{{{rowclass87|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header87|}}}</th></tr>| {{#if:{{{label87|}}}|{{#if:{{{data87|}}}|<tr class="{{{rowclass87|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label87|}}}</th><td colspan="3" class="{{{class87|}}}" style="{{{datastyle|}}}">{{{data87|}}}</td></tr>|{{#if:{{{data87a|}}}{{{data87b|}}}|<tr class="{{{rowclass87|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label87|}}}</th><td class="{{{class87a|}}}" style="{{{datastylea|}}}">{{{data87a|}}}</td><td class="{{{class87b|}}}" style="{{{datastyleb|}}}">{{{data87b|}}}</td><td class="{{{class87c|}}}" style="{{{datastylec|}}}">{{{data87c|}}}</td></tr>}}}}| {{#if:{{{data87|}}}|<tr class="{{{rowclass87|}}}"><td colspan="4" class="{{{class87|}}}" style="text-align:center; {{{datastyle|}}}">{{{data87|}}}</td></tr>}} }} }}<!--
Row 88
-->{{#if:{{{header88|}}}|<tr class="{{{rowclass88|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header88|}}}</th></tr>| {{#if:{{{label88|}}}|{{#if:{{{data88|}}}|<tr class="{{{rowclass88|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label88|}}}</th><td colspan="3" class="{{{class88|}}}" style="{{{datastyle|}}}">{{{data88|}}}</td></tr>|{{#if:{{{data88a|}}}{{{data88b|}}}|<tr class="{{{rowclass88|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label88|}}}</th><td class="{{{class88a|}}}" style="{{{datastylea|}}}">{{{data88a|}}}</td><td class="{{{class88b|}}}" style="{{{datastyleb|}}}">{{{data88b|}}}</td><td class="{{{class88c|}}}" style="{{{datastylec|}}}">{{{data88c|}}}</td></tr>}}}}| {{#if:{{{data88|}}}|<tr class="{{{rowclass88|}}}"><td colspan="4" class="{{{class88|}}}" style="text-align:center; {{{datastyle|}}}">{{{data88|}}}</td></tr>}} }} }}<!--
Row 89
-->{{#if:{{{header89|}}}|<tr class="{{{rowclass89|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header89|}}}</th></tr>| {{#if:{{{label89|}}}|{{#if:{{{data89|}}}|<tr class="{{{rowclass89|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label89|}}}</th><td colspan="3" class="{{{class89|}}}" style="{{{datastyle|}}}">{{{data89|}}}</td></tr>|{{#if:{{{data89a|}}}{{{data89b|}}}|<tr class="{{{rowclass89|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label89|}}}</th><td class="{{{class89a|}}}" style="{{{datastylea|}}}">{{{data89a|}}}</td><td class="{{{class89b|}}}" style="{{{datastyleb|}}}">{{{data89b|}}}</td><td class="{{{class89c|}}}" style="{{{datastylec|}}}">{{{data89c|}}}</td></tr>}}}}| {{#if:{{{data89|}}}|<tr class="{{{rowclass89|}}}"><td colspan="4" class="{{{class89|}}}" style="text-align:center; {{{datastyle|}}}">{{{data89|}}}</td></tr>}} }} }}<!--
Row 90
-->{{#if:{{{header90|}}}|<tr class="{{{rowclass90|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header90|}}}</th></tr>| {{#if:{{{label90|}}}|{{#if:{{{data90|}}}|<tr class="{{{rowclass90|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label90|}}}</th><td colspan="3" class="{{{class90|}}}" style="{{{datastyle|}}}">{{{data90|}}}</td></tr>|{{#if:{{{data90a|}}}{{{data90b|}}}|<tr class="{{{rowclass90|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label90|}}}</th><td class="{{{class90a|}}}" style="{{{datastylea|}}}">{{{data90a|}}}</td><td class="{{{class90b|}}}" style="{{{datastyleb|}}}">{{{data90b|}}}</td><td class="{{{class90c|}}}" style="{{{datastylec|}}}">{{{data90c|}}}</td></tr>}}}}| {{#if:{{{data90|}}}|<tr class="{{{rowclass90|}}}"><td colspan="4" class="{{{class90|}}}" style="text-align:center; {{{datastyle|}}}">{{{data90|}}}</td></tr>}} }} }}<!--
Row 91
-->{{#if:{{{header91|}}}|<tr class="{{{rowclass91|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header91|}}}</th></tr>| {{#if:{{{label91|}}}|{{#if:{{{data91|}}}|<tr class="{{{rowclass91|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label91|}}}</th><td colspan="3" class="{{{class91|}}}" style="{{{datastyle|}}}">{{{data91|}}}</td></tr>|{{#if:{{{data91a|}}}{{{data91b|}}}|<tr class="{{{rowclass91|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label91|}}}</th><td class="{{{class91a|}}}" style="{{{datastylea|}}}">{{{data91a|}}}</td><td class="{{{class91b|}}}" style="{{{datastyleb|}}}">{{{data91b|}}}</td><td class="{{{class91c|}}}" style="{{{datastylec|}}}">{{{data91c|}}}</td></tr>}}}}| {{#if:{{{data91|}}}|<tr class="{{{rowclass91|}}}"><td colspan="4" class="{{{class91|}}}" style="text-align:center; {{{datastyle|}}}">{{{data91|}}}</td></tr>}} }} }}<!--
Row 92
-->{{#if:{{{header92|}}}|<tr class="{{{rowclass92|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header92|}}}</th></tr>| {{#if:{{{label92|}}}|{{#if:{{{data92|}}}|<tr class="{{{rowclass92|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label92|}}}</th><td colspan="3" class="{{{class92|}}}" style="{{{datastyle|}}}">{{{data92|}}}</td></tr>|{{#if:{{{data92a|}}}{{{data92b|}}}|<tr class="{{{rowclass92|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label92|}}}</th><td class="{{{class92a|}}}" style="{{{datastylea|}}}">{{{data92a|}}}</td><td class="{{{class92b|}}}" style="{{{datastyleb|}}}">{{{data92b|}}}</td><td class="{{{class92c|}}}" style="{{{datastylec|}}}">{{{data92c|}}}</td></tr>}}}}| {{#if:{{{data92|}}}|<tr class="{{{rowclass92|}}}"><td colspan="4" class="{{{class92|}}}" style="text-align:center; {{{datastyle|}}}">{{{data92|}}}</td></tr>}} }} }}<!--
Row 93
-->{{#if:{{{header93|}}}|<tr class="{{{rowclass93|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header93|}}}</th></tr>| {{#if:{{{label93|}}}|{{#if:{{{data93|}}}|<tr class="{{{rowclass93|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label93|}}}</th><td colspan="3" class="{{{class93|}}}" style="{{{datastyle|}}}">{{{data93|}}}</td></tr>|{{#if:{{{data93a|}}}{{{data93b|}}}|<tr class="{{{rowclass93|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label93|}}}</th><td class="{{{class93a|}}}" style="{{{datastylea|}}}">{{{data93a|}}}</td><td class="{{{class93b|}}}" style="{{{datastyleb|}}}">{{{data93b|}}}</td><td class="{{{class93c|}}}" style="{{{datastylec|}}}">{{{data93c|}}}</td></tr>}}}}| {{#if:{{{data93|}}}|<tr class="{{{rowclass93|}}}"><td colspan="4" class="{{{class93|}}}" style="text-align:center; {{{datastyle|}}}">{{{data93|}}}</td></tr>}} }} }}<!--
Row 94
-->{{#if:{{{header94|}}}|<tr class="{{{rowclass94|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header94|}}}</th></tr>| {{#if:{{{label94|}}}|{{#if:{{{data94|}}}|<tr class="{{{rowclass94|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label94|}}}</th><td colspan="3" class="{{{class94|}}}" style="{{{datastyle|}}}">{{{data94|}}}</td></tr>|{{#if:{{{data94a|}}}{{{data94b|}}}|<tr class="{{{rowclass94|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label94|}}}</th><td class="{{{class94a|}}}" style="{{{datastylea|}}}">{{{data94a|}}}</td><td class="{{{class94b|}}}" style="{{{datastyleb|}}}">{{{data94b|}}}</td><td class="{{{class94c|}}}" style="{{{datastylec|}}}">{{{data94c|}}}</td></tr>}}}}| {{#if:{{{data94|}}}|<tr class="{{{rowclass94|}}}"><td colspan="4" class="{{{class94|}}}" style="text-align:center; {{{datastyle|}}}">{{{data94|}}}</td></tr>}} }} }}<!--
Row 95
-->{{#if:{{{header95|}}}|<tr class="{{{rowclass95|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header95|}}}</th></tr>| {{#if:{{{label95|}}}|{{#if:{{{data95|}}}|<tr class="{{{rowclass95|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label95|}}}</th><td colspan="3" class="{{{class95|}}}" style="{{{datastyle|}}}">{{{data95|}}}</td></tr>|{{#if:{{{data95a|}}}{{{data95b|}}}|<tr class="{{{rowclass95|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label95|}}}</th><td class="{{{class95a|}}}" style="{{{datastylea|}}}">{{{data95a|}}}</td><td class="{{{class95b|}}}" style="{{{datastyleb|}}}">{{{data95b|}}}</td><td class="{{{class95c|}}}" style="{{{datastylec|}}}">{{{data95c|}}}</td></tr>}}}}| {{#if:{{{data95|}}}|<tr class="{{{rowclass95|}}}"><td colspan="4" class="{{{class95|}}}" style="text-align:center; {{{datastyle|}}}">{{{data95|}}}</td></tr>}} }} }}<!--
Row 96
-->{{#if:{{{header96|}}}|<tr class="{{{rowclass96|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header96|}}}</th></tr>| {{#if:{{{label96|}}}|{{#if:{{{data96|}}}|<tr class="{{{rowclass96|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label96|}}}</th><td colspan="3" class="{{{class96|}}}" style="{{{datastyle|}}}">{{{data96|}}}</td></tr>|{{#if:{{{data96a|}}}{{{data96b|}}}|<tr class="{{{rowclass96|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label96|}}}</th><td class="{{{class96a|}}}" style="{{{datastylea|}}}">{{{data96a|}}}</td><td class="{{{class96b|}}}" style="{{{datastyleb|}}}">{{{data96b|}}}</td><td class="{{{class96c|}}}" style="{{{datastylec|}}}">{{{data96c|}}}</td></tr>}}}}| {{#if:{{{data96|}}}|<tr class="{{{rowclass96|}}}"><td colspan="4" class="{{{class96|}}}" style="text-align:center; {{{datastyle|}}}">{{{data96|}}}</td></tr>}} }} }}<!--
Row 97
-->{{#if:{{{header97|}}}|<tr class="{{{rowclass97|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header97|}}}</th></tr>| {{#if:{{{label97|}}}|{{#if:{{{data97|}}}|<tr class="{{{rowclass97|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label97|}}}</th><td colspan="3" class="{{{class97|}}}" style="{{{datastyle|}}}">{{{data97|}}}</td></tr>|{{#if:{{{data97a|}}}{{{data97b|}}}|<tr class="{{{rowclass97|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label97|}}}</th><td class="{{{class97a|}}}" style="{{{datastylea|}}}">{{{data97a|}}}</td><td class="{{{class97b|}}}" style="{{{datastyleb|}}}">{{{data97b|}}}</td><td class="{{{class97c|}}}" style="{{{datastylec|}}}">{{{data97c|}}}</td></tr>}}}}| {{#if:{{{data97|}}}|<tr class="{{{rowclass97|}}}"><td colspan="4" class="{{{class97|}}}" style="text-align:center; {{{datastyle|}}}">{{{data97|}}}</td></tr>}} }} }}<!--
Row 98
-->{{#if:{{{header98|}}}|<tr class="{{{rowclass98|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header98|}}}</th></tr>| {{#if:{{{label98|}}}|{{#if:{{{data98|}}}|<tr class="{{{rowclass98|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label98|}}}</th><td colspan="3" class="{{{class98|}}}" style="{{{datastyle|}}}">{{{data98|}}}</td></tr>|{{#if:{{{data98a|}}}{{{data98b|}}}|<tr class="{{{rowclass98|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label98|}}}</th><td class="{{{class98a|}}}" style="{{{datastylea|}}}">{{{data98a|}}}</td><td class="{{{class98b|}}}" style="{{{datastyleb|}}}">{{{data98b|}}}</td><td class="{{{class98c|}}}" style="{{{datastylec|}}}">{{{data98c|}}}</td></tr>}}}}| {{#if:{{{data98|}}}|<tr class="{{{rowclass98|}}}"><td colspan="4" class="{{{class98|}}}" style="text-align:center; {{{datastyle|}}}">{{{data98|}}}</td></tr>}} }} }}<!--
Row 99
-->{{#if:{{{header99|}}}|<tr class="{{{rowclass99|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header99|}}}</th></tr>| {{#if:{{{label99|}}}|{{#if:{{{data99|}}}|<tr class="{{{rowclass99|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label99|}}}</th><td colspan="3" class="{{{class99|}}}" style="{{{datastyle|}}}">{{{data99|}}}</td></tr>|{{#if:{{{data99a|}}}{{{data99b|}}}|<tr class="{{{rowclass99|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label99|}}}</th><td class="{{{class99a|}}}" style="{{{datastylea|}}}">{{{data99a|}}}</td><td class="{{{class99b|}}}" style="{{{datastyleb|}}}">{{{data99b|}}}</td><td class="{{{class99c|}}}" style="{{{datastylec|}}}">{{{data99c|}}}</td></tr>}}}}| {{#if:{{{data99|}}}|<tr class="{{{rowclass99|}}}"><td colspan="4" class="{{{class99|}}}" style="text-align:center; {{{datastyle|}}}">{{{data99|}}}</td></tr>}} }} }}<!--
Row 100
-->{{#if:{{{header100|}}}|<tr class="{{{rowclass100|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header100|}}}</th></tr>| {{#if:{{{label100|}}}|{{#if:{{{data100|}}}|<tr class="{{{rowclass100|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label100|}}}</th><td colspan="3" class="{{{class100|}}}" style="{{{datastyle|}}}">{{{data100|}}}</td></tr>|{{#if:{{{data100a|}}}{{{data100b|}}}|<tr class="{{{rowclass100|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label100|}}}</th><td class="{{{class100a|}}}" style="{{{datastylea|}}}">{{{data100a|}}}</td><td class="{{{class100b|}}}" style="{{{datastyleb|}}}">{{{data100b|}}}</td><td class="{{{class100c|}}}" style="{{{datastylec|}}}">{{{data100c|}}}</td></tr>}}}}| {{#if:{{{data100|}}}|<tr class="{{{rowclass100|}}}"><td colspan="4" class="{{{class100|}}}" style="text-align:center; {{{datastyle|}}}">{{{data100|}}}</td></tr>}} }} }}<!--
Row 101
-->{{#if:{{{header101|}}}|<tr class="{{{rowclass101|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header101|}}}</th></tr>| {{#if:{{{label101|}}}|{{#if:{{{data101|}}}|<tr class="{{{rowclass101|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label101|}}}</th><td colspan="3" class="{{{class101|}}}" style="{{{datastyle|}}}">{{{data101|}}}</td></tr>|{{#if:{{{data101a|}}}{{{data101b|}}}|<tr class="{{{rowclass101|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label101|}}}</th><td class="{{{class101a|}}}" style="{{{datastylea|}}}">{{{data101a|}}}</td><td class="{{{class101b|}}}" style="{{{datastyleb|}}}">{{{data101b|}}}</td><td class="{{{class101c|}}}" style="{{{datastylec|}}}">{{{data101c|}}}</td></tr>}}}}| {{#if:{{{data101|}}}|<tr class="{{{rowclass101|}}}"><td colspan="4" class="{{{class101|}}}" style="text-align:center; {{{datastyle|}}}">{{{data101|}}}</td></tr>}} }} }}<!--
Row 102
-->{{#if:{{{header102|}}}|<tr class="{{{rowclass102|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header102|}}}</th></tr>| {{#if:{{{label102|}}}|{{#if:{{{data102|}}}|<tr class="{{{rowclass102|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label102|}}}</th><td colspan="3" class="{{{class102|}}}" style="{{{datastyle|}}}">{{{data102|}}}</td></tr>|{{#if:{{{data102a|}}}{{{data102b|}}}|<tr class="{{{rowclass102|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label102|}}}</th><td class="{{{class102a|}}}" style="{{{datastylea|}}}">{{{data102a|}}}</td><td class="{{{class102b|}}}" style="{{{datastyleb|}}}">{{{data102b|}}}</td><td class="{{{class102c|}}}" style="{{{datastylec|}}}">{{{data102c|}}}</td></tr>}}}}| {{#if:{{{data102|}}}|<tr class="{{{rowclass102|}}}"><td colspan="4" class="{{{class102|}}}" style="text-align:center; {{{datastyle|}}}">{{{data102|}}}</td></tr>}} }} }}<!--
Row 103
-->{{#if:{{{header103|}}}|<tr class="{{{rowclass103|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header103|}}}</th></tr>| {{#if:{{{label103|}}}|{{#if:{{{data103|}}}|<tr class="{{{rowclass103|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label103|}}}</th><td colspan="3" class="{{{class103|}}}" style="{{{datastyle|}}}">{{{data103|}}}</td></tr>|{{#if:{{{data103a|}}}{{{data103b|}}}|<tr class="{{{rowclass103|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label103|}}}</th><td class="{{{class103a|}}}" style="{{{datastylea|}}}">{{{data103a|}}}</td><td class="{{{class103b|}}}" style="{{{datastyleb|}}}">{{{data103b|}}}</td><td class="{{{class103c|}}}" style="{{{datastylec|}}}">{{{data103c|}}}</td></tr>}}}}| {{#if:{{{data103|}}}|<tr class="{{{rowclass103|}}}"><td colspan="4" class="{{{class103|}}}" style="text-align:center; {{{datastyle|}}}">{{{data103|}}}</td></tr>}} }} }}<!--
Row 104
-->{{#if:{{{header104|}}}|<tr class="{{{rowclass104|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header104|}}}</th></tr>| {{#if:{{{label104|}}}|{{#if:{{{data104|}}}|<tr class="{{{rowclass104|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label104|}}}</th><td colspan="3" class="{{{class104|}}}" style="{{{datastyle|}}}">{{{data104|}}}</td></tr>|{{#if:{{{data104a|}}}{{{data104b|}}}|<tr class="{{{rowclass104|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label104|}}}</th><td class="{{{class104a|}}}" style="{{{datastylea|}}}">{{{data104a|}}}</td><td class="{{{class104b|}}}" style="{{{datastyleb|}}}">{{{data104b|}}}</td><td class="{{{class104c|}}}" style="{{{datastylec|}}}">{{{data104c|}}}</td></tr>}}}}| {{#if:{{{data104|}}}|<tr class="{{{rowclass104|}}}"><td colspan="4" class="{{{class104|}}}" style="text-align:center; {{{datastyle|}}}">{{{data104|}}}</td></tr>}} }} }}<!--
Row 105
-->{{#if:{{{header105|}}}|<tr class="{{{rowclass105|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header105|}}}</th></tr>| {{#if:{{{label105|}}}|{{#if:{{{data105|}}}|<tr class="{{{rowclass105|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label105|}}}</th><td colspan="3" class="{{{class105|}}}" style="{{{datastyle|}}}">{{{data105|}}}</td></tr>|{{#if:{{{data105a|}}}{{{data105b|}}}|<tr class="{{{rowclass105|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label105|}}}</th><td class="{{{class105a|}}}" style="{{{datastylea|}}}">{{{data105a|}}}</td><td class="{{{class105b|}}}" style="{{{datastyleb|}}}">{{{data105b|}}}</td><td class="{{{class105c|}}}" style="{{{datastylec|}}}">{{{data105c|}}}</td></tr>}}}}| {{#if:{{{data105|}}}|<tr class="{{{rowclass105|}}}"><td colspan="4" class="{{{class105|}}}" style="text-align:center; {{{datastyle|}}}">{{{data105|}}}</td></tr>}} }} }}<!--
Row 106
-->{{#if:{{{header106|}}}|<tr class="{{{rowclass106|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header106|}}}</th></tr>| {{#if:{{{label106|}}}|{{#if:{{{data106|}}}|<tr class="{{{rowclass106|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label106|}}}</th><td colspan="3" class="{{{class106|}}}" style="{{{datastyle|}}}">{{{data106|}}}</td></tr>|{{#if:{{{data106a|}}}{{{data106b|}}}|<tr class="{{{rowclass106|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label106|}}}</th><td class="{{{class106a|}}}" style="{{{datastylea|}}}">{{{data106a|}}}</td><td class="{{{class106b|}}}" style="{{{datastyleb|}}}">{{{data106b|}}}</td><td class="{{{class106c|}}}" style="{{{datastylec|}}}">{{{data106c|}}}</td></tr>}}}}| {{#if:{{{data106|}}}|<tr class="{{{rowclass106|}}}"><td colspan="4" class="{{{class106|}}}" style="text-align:center; {{{datastyle|}}}">{{{data106|}}}</td></tr>}} }} }}<!--
Row 107
-->{{#if:{{{header107|}}}|<tr class="{{{rowclass107|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header107|}}}</th></tr>| {{#if:{{{label107|}}}|{{#if:{{{data107|}}}|<tr class="{{{rowclass107|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label107|}}}</th><td colspan="3" class="{{{class107|}}}" style="{{{datastyle|}}}">{{{data107|}}}</td></tr>|{{#if:{{{data107a|}}}{{{data107b|}}}|<tr class="{{{rowclass107|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label107|}}}</th><td class="{{{class107a|}}}" style="{{{datastylea|}}}">{{{data107a|}}}</td><td class="{{{class107b|}}}" style="{{{datastyleb|}}}">{{{data107b|}}}</td><td class="{{{class107c|}}}" style="{{{datastylec|}}}">{{{data107c|}}}</td></tr>}}}}| {{#if:{{{data107|}}}|<tr class="{{{rowclass107|}}}"><td colspan="4" class="{{{class107|}}}" style="text-align:center; {{{datastyle|}}}">{{{data107|}}}</td></tr>}} }} }}<!--
Row 108
-->{{#if:{{{header108|}}}|<tr class="{{{rowclass108|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header108|}}}</th></tr>| {{#if:{{{label108|}}}|{{#if:{{{data108|}}}|<tr class="{{{rowclass108|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label108|}}}</th><td colspan="3" class="{{{class108|}}}" style="{{{datastyle|}}}">{{{data108|}}}</td></tr>|{{#if:{{{data108a|}}}{{{data108b|}}}|<tr class="{{{rowclass108|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label108|}}}</th><td class="{{{class108a|}}}" style="{{{datastylea|}}}">{{{data108a|}}}</td><td class="{{{class108b|}}}" style="{{{datastyleb|}}}">{{{data108b|}}}</td><td class="{{{class108c|}}}" style="{{{datastylec|}}}">{{{data108c|}}}</td></tr>}}}}| {{#if:{{{data108|}}}|<tr class="{{{rowclass108|}}}"><td colspan="4" class="{{{class108|}}}" style="text-align:center; {{{datastyle|}}}">{{{data108|}}}</td></tr>}} }} }}<!--
Row 109
-->{{#if:{{{header109|}}}|<tr class="{{{rowclass109|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header109|}}}</th></tr>| {{#if:{{{label109|}}}|{{#if:{{{data109|}}}|<tr class="{{{rowclass109|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label109|}}}</th><td colspan="3" class="{{{class109|}}}" style="{{{datastyle|}}}">{{{data109|}}}</td></tr>|{{#if:{{{data109a|}}}{{{data109b|}}}|<tr class="{{{rowclass109|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label109|}}}</th><td class="{{{class109a|}}}" style="{{{datastylea|}}}">{{{data109a|}}}</td><td class="{{{class109b|}}}" style="{{{datastyleb|}}}">{{{data109b|}}}</td><td class="{{{class109c|}}}" style="{{{datastylec|}}}">{{{data109c|}}}</td></tr>}}}}| {{#if:{{{data109|}}}|<tr class="{{{rowclass109|}}}"><td colspan="4" class="{{{class109|}}}" style="text-align:center; {{{datastyle|}}}">{{{data109|}}}</td></tr>}} }} }}<!--
Row 110
-->{{#if:{{{header110|}}}|<tr class="{{{rowclass110|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header110|}}}</th></tr>| {{#if:{{{label110|}}}|{{#if:{{{data110|}}}|<tr class="{{{rowclass110|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label110|}}}</th><td colspan="3" class="{{{class110|}}}" style="{{{datastyle|}}}">{{{data110|}}}</td></tr>|{{#if:{{{data110a|}}}{{{data110b|}}}|<tr class="{{{rowclass110|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label110|}}}</th><td class="{{{class110a|}}}" style="{{{datastylea|}}}">{{{data110a|}}}</td><td class="{{{class110b|}}}" style="{{{datastyleb|}}}">{{{data110b|}}}</td><td class="{{{class110c|}}}" style="{{{datastylec|}}}">{{{data110c|}}}</td></tr>}}}}| {{#if:{{{data110|}}}|<tr class="{{{rowclass110|}}}"><td colspan="4" class="{{{class110|}}}" style="text-align:center; {{{datastyle|}}}">{{{data110|}}}</td></tr>}} }} }}<!--
Row 111
-->{{#if:{{{header111|}}}|<tr class="{{{rowclass111|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header111|}}}</th></tr>| {{#if:{{{label111|}}}|{{#if:{{{data111|}}}|<tr class="{{{rowclass111|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label111|}}}</th><td colspan="3" class="{{{class111|}}}" style="{{{datastyle|}}}">{{{data111|}}}</td></tr>|{{#if:{{{data111a|}}}{{{data111b|}}}|<tr class="{{{rowclass111|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label111|}}}</th><td class="{{{class111a|}}}" style="{{{datastylea|}}}">{{{data111a|}}}</td><td class="{{{class111b|}}}" style="{{{datastyleb|}}}">{{{data111b|}}}</td><td class="{{{class111c|}}}" style="{{{datastylec|}}}">{{{data111c|}}}</td></tr>}}}}| {{#if:{{{data111|}}}|<tr class="{{{rowclass111|}}}"><td colspan="4" class="{{{class111|}}}" style="text-align:center; {{{datastyle|}}}">{{{data111|}}}</td></tr>}} }} }}<!--
Row 112
-->{{#if:{{{header112|}}}|<tr class="{{{rowclass112|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header112|}}}</th></tr>| {{#if:{{{label112|}}}|{{#if:{{{data112|}}}|<tr class="{{{rowclass112|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label112|}}}</th><td colspan="3" class="{{{class112|}}}" style="{{{datastyle|}}}">{{{data112|}}}</td></tr>|{{#if:{{{data112a|}}}{{{data112b|}}}|<tr class="{{{rowclass112|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label112|}}}</th><td class="{{{class112a|}}}" style="{{{datastylea|}}}">{{{data112a|}}}</td><td class="{{{class112b|}}}" style="{{{datastyleb|}}}">{{{data112b|}}}</td><td class="{{{class112c|}}}" style="{{{datastylec|}}}">{{{data112c|}}}</td></tr>}}}}| {{#if:{{{data112|}}}|<tr class="{{{rowclass112|}}}"><td colspan="4" class="{{{class112|}}}" style="text-align:center; {{{datastyle|}}}">{{{data112|}}}</td></tr>}} }} }}<!--
Row 113
-->{{#if:{{{header113|}}}|<tr class="{{{rowclass113|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header113|}}}</th></tr>| {{#if:{{{label113|}}}|{{#if:{{{data113|}}}|<tr class="{{{rowclass113|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label113|}}}</th><td colspan="3" class="{{{class113|}}}" style="{{{datastyle|}}}">{{{data113|}}}</td></tr>|{{#if:{{{data113a|}}}{{{data113b|}}}|<tr class="{{{rowclass113|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label113|}}}</th><td class="{{{class113a|}}}" style="{{{datastylea|}}}">{{{data113a|}}}</td><td class="{{{class113b|}}}" style="{{{datastyleb|}}}">{{{data113b|}}}</td><td class="{{{class113c|}}}" style="{{{datastylec|}}}">{{{data113c|}}}</td></tr>}}}}| {{#if:{{{data113|}}}|<tr class="{{{rowclass113|}}}"><td colspan="4" class="{{{class113|}}}" style="text-align:center; {{{datastyle|}}}">{{{data113|}}}</td></tr>}} }} }}<!--
Row 114
-->{{#if:{{{header114|}}}|<tr class="{{{rowclass114|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header114|}}}</th></tr>| {{#if:{{{label114|}}}|{{#if:{{{data114|}}}|<tr class="{{{rowclass114|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label114|}}}</th><td colspan="3" class="{{{class114|}}}" style="{{{datastyle|}}}">{{{data114|}}}</td></tr>|{{#if:{{{data114a|}}}{{{data114b|}}}|<tr class="{{{rowclass114|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label114|}}}</th><td class="{{{class114a|}}}" style="{{{datastylea|}}}">{{{data114a|}}}</td><td class="{{{class114b|}}}" style="{{{datastyleb|}}}">{{{data114b|}}}</td><td class="{{{class114c|}}}" style="{{{datastylec|}}}">{{{data114c|}}}</td></tr>}}}}| {{#if:{{{data114|}}}|<tr class="{{{rowclass114|}}}"><td colspan="4" class="{{{class114|}}}" style="text-align:center; {{{datastyle|}}}">{{{data114|}}}</td></tr>}} }} }}<!--
Row 115
-->{{#if:{{{header115|}}}|<tr class="{{{rowclass115|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header115|}}}</th></tr>| {{#if:{{{label115|}}}|{{#if:{{{data115|}}}|<tr class="{{{rowclass115|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label115|}}}</th><td colspan="3" class="{{{class115|}}}" style="{{{datastyle|}}}">{{{data115|}}}</td></tr>|{{#if:{{{data115a|}}}{{{data115b|}}}|<tr class="{{{rowclass115|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label115|}}}</th><td class="{{{class115a|}}}" style="{{{datastylea|}}}">{{{data115a|}}}</td><td class="{{{class115b|}}}" style="{{{datastyleb|}}}">{{{data115b|}}}</td><td class="{{{class115c|}}}" style="{{{datastylec|}}}">{{{data115c|}}}</td></tr>}}}}| {{#if:{{{data115|}}}|<tr class="{{{rowclass115|}}}"><td colspan="4" class="{{{class115|}}}" style="text-align:center; {{{datastyle|}}}">{{{data115|}}}</td></tr>}} }} }}<!--
Row 116
-->{{#if:{{{header116|}}}|<tr class="{{{rowclass116|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header116|}}}</th></tr>| {{#if:{{{label116|}}}|{{#if:{{{data116|}}}|<tr class="{{{rowclass116|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label116|}}}</th><td colspan="3" class="{{{class116|}}}" style="{{{datastyle|}}}">{{{data116|}}}</td></tr>|{{#if:{{{data116a|}}}{{{data116b|}}}|<tr class="{{{rowclass116|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label116|}}}</th><td class="{{{class116a|}}}" style="{{{datastylea|}}}">{{{data116a|}}}</td><td class="{{{class116b|}}}" style="{{{datastyleb|}}}">{{{data116b|}}}</td><td class="{{{class116c|}}}" style="{{{datastylec|}}}">{{{data116c|}}}</td></tr>}}}}| {{#if:{{{data116|}}}|<tr class="{{{rowclass116|}}}"><td colspan="4" class="{{{class116|}}}" style="text-align:center; {{{datastyle|}}}">{{{data116|}}}</td></tr>}} }} }}<!--
Row 117
-->{{#if:{{{header117|}}}|<tr class="{{{rowclass117|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header117|}}}</th></tr>| {{#if:{{{label117|}}}|{{#if:{{{data117|}}}|<tr class="{{{rowclass117|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label117|}}}</th><td colspan="3" class="{{{class117|}}}" style="{{{datastyle|}}}">{{{data117|}}}</td></tr>|{{#if:{{{data117a|}}}{{{data117b|}}}|<tr class="{{{rowclass117|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label117|}}}</th><td class="{{{class117a|}}}" style="{{{datastylea|}}}">{{{data117a|}}}</td><td class="{{{class117b|}}}" style="{{{datastyleb|}}}">{{{data117b|}}}</td><td class="{{{class117c|}}}" style="{{{datastylec|}}}">{{{data117c|}}}</td></tr>}}}}| {{#if:{{{data117|}}}|<tr class="{{{rowclass117|}}}"><td colspan="4" class="{{{class117|}}}" style="text-align:center; {{{datastyle|}}}">{{{data117|}}}</td></tr>}} }} }}<!--
Row 118
-->{{#if:{{{header118|}}}|<tr class="{{{rowclass118|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header118|}}}</th></tr>| {{#if:{{{label118|}}}|{{#if:{{{data118|}}}|<tr class="{{{rowclass118|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label118|}}}</th><td colspan="3" class="{{{class118|}}}" style="{{{datastyle|}}}">{{{data118|}}}</td></tr>|{{#if:{{{data118a|}}}{{{data118b|}}}|<tr class="{{{rowclass118|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label118|}}}</th><td class="{{{class118a|}}}" style="{{{datastylea|}}}">{{{data118a|}}}</td><td class="{{{class118b|}}}" style="{{{datastyleb|}}}">{{{data118b|}}}</td><td class="{{{class118c|}}}" style="{{{datastylec|}}}">{{{data118c|}}}</td></tr>}}}}| {{#if:{{{data118|}}}|<tr class="{{{rowclass118|}}}"><td colspan="4" class="{{{class118|}}}" style="text-align:center; {{{datastyle|}}}">{{{data118|}}}</td></tr>}} }} }}<!--
Row 119
-->{{#if:{{{header119|}}}|<tr class="{{{rowclass119|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header119|}}}</th></tr>| {{#if:{{{label119|}}}|{{#if:{{{data119|}}}|<tr class="{{{rowclass119|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label119|}}}</th><td colspan="3" class="{{{class119|}}}" style="{{{datastyle|}}}">{{{data119|}}}</td></tr>|{{#if:{{{data119a|}}}{{{data119b|}}}|<tr class="{{{rowclass119|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label119|}}}</th><td class="{{{class119a|}}}" style="{{{datastylea|}}}">{{{data119a|}}}</td><td class="{{{class119b|}}}" style="{{{datastyleb|}}}">{{{data119b|}}}</td><td class="{{{class119c|}}}" style="{{{datastylec|}}}">{{{data119c|}}}</td></tr>}}}}| {{#if:{{{data119|}}}|<tr class="{{{rowclass119|}}}"><td colspan="4" class="{{{class119|}}}" style="text-align:center; {{{datastyle|}}}">{{{data119|}}}</td></tr>}} }} }}<!--
Row 120
-->{{#if:{{{header120|}}}|<tr class="{{{rowclass120|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header120|}}}</th></tr>| {{#if:{{{label120|}}}|{{#if:{{{data120|}}}|<tr class="{{{rowclass120|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label120|}}}</th><td colspan="3" class="{{{class120|}}}" style="{{{datastyle|}}}">{{{data120|}}}</td></tr>|{{#if:{{{data120a|}}}{{{data120b|}}}|<tr class="{{{rowclass120|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label120|}}}</th><td class="{{{class120a|}}}" style="{{{datastylea|}}}">{{{data120a|}}}</td><td class="{{{class120b|}}}" style="{{{datastyleb|}}}">{{{data120b|}}}</td><td class="{{{class120c|}}}" style="{{{datastylec|}}}">{{{data120c|}}}</td></tr>}}}}| {{#if:{{{data120|}}}|<tr class="{{{rowclass120|}}}"><td colspan="4" class="{{{class120|}}}" style="text-align:center; {{{datastyle|}}}">{{{data120|}}}</td></tr>}} }} }}<!--
Row 121
-->{{#if:{{{header121|}}}|<tr class="{{{rowclass121|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header121|}}}</th></tr>| {{#if:{{{label121|}}}|{{#if:{{{data121|}}}|<tr class="{{{rowclass121|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label121|}}}</th><td colspan="3" class="{{{class121|}}}" style="{{{datastyle|}}}">{{{data121|}}}</td></tr>|{{#if:{{{data121a|}}}{{{data121b|}}}|<tr class="{{{rowclass121|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label121|}}}</th><td class="{{{class121a|}}}" style="{{{datastylea|}}}">{{{data121a|}}}</td><td class="{{{class121b|}}}" style="{{{datastyleb|}}}">{{{data121b|}}}</td><td class="{{{class121c|}}}" style="{{{datastylec|}}}">{{{data121c|}}}</td></tr>}}}}| {{#if:{{{data121|}}}|<tr class="{{{rowclass121|}}}"><td colspan="4" class="{{{class121|}}}" style="text-align:center; {{{datastyle|}}}">{{{data121|}}}</td></tr>}} }} }}<!--
Row 122
-->{{#if:{{{header122|}}}|<tr class="{{{rowclass122|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header122|}}}</th></tr>| {{#if:{{{label122|}}}|{{#if:{{{data122|}}}|<tr class="{{{rowclass122|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label122|}}}</th><td colspan="3" class="{{{class122|}}}" style="{{{datastyle|}}}">{{{data122|}}}</td></tr>|{{#if:{{{data122a|}}}{{{data122b|}}}|<tr class="{{{rowclass122|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label122|}}}</th><td class="{{{class122a|}}}" style="{{{datastylea|}}}">{{{data122a|}}}</td><td class="{{{class122b|}}}" style="{{{datastyleb|}}}">{{{data122b|}}}</td><td class="{{{class122c|}}}" style="{{{datastylec|}}}">{{{data122c|}}}</td></tr>}}}}| {{#if:{{{data122|}}}|<tr class="{{{rowclass122|}}}"><td colspan="4" class="{{{class122|}}}" style="text-align:center; {{{datastyle|}}}">{{{data122|}}}</td></tr>}} }} }}<!--
Row 123
-->{{#if:{{{header123|}}}|<tr class="{{{rowclass123|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header123|}}}</th></tr>| {{#if:{{{label123|}}}|{{#if:{{{data123|}}}|<tr class="{{{rowclass123|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label123|}}}</th><td colspan="3" class="{{{class123|}}}" style="{{{datastyle|}}}">{{{data123|}}}</td></tr>|{{#if:{{{data123a|}}}{{{data123b|}}}|<tr class="{{{rowclass123|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label123|}}}</th><td class="{{{class123a|}}}" style="{{{datastylea|}}}">{{{data123a|}}}</td><td class="{{{class123b|}}}" style="{{{datastyleb|}}}">{{{data123b|}}}</td><td class="{{{class123c|}}}" style="{{{datastylec|}}}">{{{data123c|}}}</td></tr>}}}}| {{#if:{{{data123|}}}|<tr class="{{{rowclass123|}}}"><td colspan="4" class="{{{class123|}}}" style="text-align:center; {{{datastyle|}}}">{{{data123|}}}</td></tr>}} }} }}<!--
Row 124
-->{{#if:{{{header124|}}}|<tr class="{{{rowclass124|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header124|}}}</th></tr>| {{#if:{{{label124|}}}|{{#if:{{{data124|}}}|<tr class="{{{rowclass124|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label124|}}}</th><td colspan="3" class="{{{class124|}}}" style="{{{datastyle|}}}">{{{data124|}}}</td></tr>|{{#if:{{{data124a|}}}{{{data124b|}}}|<tr class="{{{rowclass124|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label124|}}}</th><td class="{{{class124a|}}}" style="{{{datastylea|}}}">{{{data124a|}}}</td><td class="{{{class124b|}}}" style="{{{datastyleb|}}}">{{{data124b|}}}</td><td class="{{{class124c|}}}" style="{{{datastylec|}}}">{{{data124c|}}}</td></tr>}}}}| {{#if:{{{data124|}}}|<tr class="{{{rowclass124|}}}"><td colspan="4" class="{{{class124|}}}" style="text-align:center; {{{datastyle|}}}">{{{data124|}}}</td></tr>}} }} }}<!--
Row 125
-->{{#if:{{{header125|}}}|<tr class="{{{rowclass125|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header125|}}}</th></tr>| {{#if:{{{label125|}}}|{{#if:{{{data125|}}}|<tr class="{{{rowclass125|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label125|}}}</th><td colspan="3" class="{{{class125|}}}" style="{{{datastyle|}}}">{{{data125|}}}</td></tr>|{{#if:{{{data125a|}}}{{{data125b|}}}|<tr class="{{{rowclass125|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label125|}}}</th><td class="{{{class125a|}}}" style="{{{datastylea|}}}">{{{data125a|}}}</td><td class="{{{class125b|}}}" style="{{{datastyleb|}}}">{{{data125b|}}}</td><td class="{{{class125c|}}}" style="{{{datastylec|}}}">{{{data125c|}}}</td></tr>}}}}| {{#if:{{{data125|}}}|<tr class="{{{rowclass125|}}}"><td colspan="4" class="{{{class125|}}}" style="text-align:center; {{{datastyle|}}}">{{{data125|}}}</td></tr>}} }} }}<!--
Row 126
-->{{#if:{{{header126|}}}|<tr class="{{{rowclass126|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header126|}}}</th></tr>| {{#if:{{{label126|}}}|{{#if:{{{data126|}}}|<tr class="{{{rowclass126|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label126|}}}</th><td colspan="3" class="{{{class126|}}}" style="{{{datastyle|}}}">{{{data126|}}}</td></tr>|{{#if:{{{data126a|}}}{{{data126b|}}}|<tr class="{{{rowclass126|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label126|}}}</th><td class="{{{class126a|}}}" style="{{{datastylea|}}}">{{{data126a|}}}</td><td class="{{{class126b|}}}" style="{{{datastyleb|}}}">{{{data126b|}}}</td><td class="{{{class126c|}}}" style="{{{datastylec|}}}">{{{data126c|}}}</td></tr>}}}}| {{#if:{{{data126|}}}|<tr class="{{{rowclass126|}}}"><td colspan="4" class="{{{class126|}}}" style="text-align:center; {{{datastyle|}}}">{{{data126|}}}</td></tr>}} }} }}<!--
Row 127
-->{{#if:{{{header127|}}}|<tr class="{{{rowclass127|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header127|}}}</th></tr>| {{#if:{{{label127|}}}|{{#if:{{{data127|}}}|<tr class="{{{rowclass127|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label127|}}}</th><td colspan="3" class="{{{class127|}}}" style="{{{datastyle|}}}">{{{data127|}}}</td></tr>|{{#if:{{{data127a|}}}{{{data127b|}}}|<tr class="{{{rowclass127|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label127|}}}</th><td class="{{{class127a|}}}" style="{{{datastylea|}}}">{{{data127a|}}}</td><td class="{{{class127b|}}}" style="{{{datastyleb|}}}">{{{data127b|}}}</td><td class="{{{class127c|}}}" style="{{{datastylec|}}}">{{{data127c|}}}</td></tr>}}}}| {{#if:{{{data127|}}}|<tr class="{{{rowclass127|}}}"><td colspan="4" class="{{{class127|}}}" style="text-align:center; {{{datastyle|}}}">{{{data127|}}}</td></tr>}} }} }}<!--
Row 128
-->{{#if:{{{header128|}}}|<tr class="{{{rowclass128|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header128|}}}</th></tr>| {{#if:{{{label128|}}}|{{#if:{{{data128|}}}|<tr class="{{{rowclass128|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label128|}}}</th><td colspan="3" class="{{{class128|}}}" style="{{{datastyle|}}}">{{{data128|}}}</td></tr>|{{#if:{{{data128a|}}}{{{data128b|}}}|<tr class="{{{rowclass128|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label128|}}}</th><td class="{{{class128a|}}}" style="{{{datastylea|}}}">{{{data128a|}}}</td><td class="{{{class128b|}}}" style="{{{datastyleb|}}}">{{{data128b|}}}</td><td class="{{{class128c|}}}" style="{{{datastylec|}}}">{{{data128c|}}}</td></tr>}}}}| {{#if:{{{data128|}}}|<tr class="{{{rowclass128|}}}"><td colspan="4" class="{{{class128|}}}" style="text-align:center; {{{datastyle|}}}">{{{data128|}}}</td></tr>}} }} }}<!--
Row 129
-->{{#if:{{{header129|}}}|<tr class="{{{rowclass129|}}}"><th colspan="4" scope="col" style="text-align:center; {{{headerstyle|}}}">{{{header129|}}}</th></tr>| {{#if:{{{label129|}}}|{{#if:{{{data129|}}}|<tr class="{{{rowclass129|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label129|}}}</th><td colspan="3" class="{{{class129|}}}" style="{{{datastyle|}}}">{{{data129|}}}</td></tr>|{{#if:{{{data129a|}}}{{{data129b|}}}|<tr class="{{{rowclass129|}}}" style="{{{multidatastyle|}}}"><th scope="row" style="{{{labelstyle|}}}">{{{label129|}}}</th><td class="{{{class129a|}}}" style="{{{datastylea|}}}">{{{data129a|}}}</td><td class="{{{class129b|}}}" style="{{{datastyleb|}}}">{{{data129b|}}}</td><td class="{{{class129c|}}}" style="{{{datastylec|}}}">{{{data129c|}}}</td></tr>}}}}| {{#if:{{{data129|}}}|<tr class="{{{rowclass129|}}}"><td colspan="4" class="{{{class129|}}}" style="text-align:center; {{{datastyle|}}}">{{{data129|}}}</td></tr>}} }} }}<!--
Below
-->{{#if:{{{below|}}}|{{Infobox3cols/row
|data={{{below}}} |datastyle={{{belowstyle|}}}
|class={{{belowclass|}}} |rowclass={{{belowrowclass|}}}
}} }}<!--
Navbar
-->{{#if:{{{name|}}}|{{Infobox3cols/row
|data={{navbar|{{{name}}} }}
}} }}
</table><!--
--><noinclude>
{{documentation}}
</noinclude>
kmvq9myamldtqhimh5myqiqtav8o8og
Πρότυπον:Infobox3cols/row
10
3550
36966
2025-12-16T13:58:18Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#if:{{{header|}}} |<tr class="{{{rowclass|}}}"><th colspan="4" style="text-align:center; {{{headerstyle|}}}">{{{header|}}}</th></tr> |{{#if:{{{label|}}} |{{#if:{{{data|}}} |<tr class="{{{rowclass|}}}"><th style="{{{labelstyle|}}}">{{{label|}}}</th> <td colspan="3" class="{{{class|}}}" style="{{{datastyle|}}}">{{{data|}}}</td></tr> |{{#if:{{{dataa|}}}{{{datab|}}} |<tr class="{{{rowclass1|}}}" style="{{{multidatastyle|}}}"><th style...'
36966
wikitext
text/x-wiki
{{#if:{{{header|}}}
|<tr class="{{{rowclass|}}}"><th colspan="4" style="text-align:center; {{{headerstyle|}}}">{{{header|}}}</th></tr>
|{{#if:{{{label|}}}
|{{#if:{{{data|}}}
|<tr class="{{{rowclass|}}}"><th style="{{{labelstyle|}}}">{{{label|}}}</th>
<td colspan="3" class="{{{class|}}}" style="{{{datastyle|}}}">{{{data|}}}</td></tr>
|{{#if:{{{dataa|}}}{{{datab|}}}
|<tr class="{{{rowclass1|}}}" style="{{{multidatastyle|}}}"><th style="{{{labelstyle|}}}">{{{label|}}}</th>
<td class="{{{classa|}}}" style="{{{datastylea|}}}">{{{dataa|}}}</td>
<td class="{{{classb|}}}" style="{{{datastyleb|}}}">{{{datab|}}}</td>
<td class="{{{classc|}}}" style="{{{datastylec|}}}">{{{datac|}}}</td></tr>
}}
}}
|{{#if:{{{data|}}}
|<tr class="{{{rowclass|}}}"><td colspan="4" class="{{{class|}}}" style="text-align:center; {{{datastyle|}}}">{{{data|}}}</td></tr>
}}
}}
}}<noinclude>{{documentation}}</noinclude>
a5u0lnlacxjiq5ne8xhbctdpxvfpkyf
Πρότυπον:Infobox
10
3551
36967
2025-12-16T14:00:40Z
Εὐθυμένης
2777
Ανακατεύθυνση στη σελίδα [[Πρότυπον:Πλαίσιον πληροφοριών]]
36967
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ[[Πρότυπον:Πλαίσιον πληροφοριών]]
bh3jgzbtso44xv4exsylqxppk2nb3ph
Πρότυπον:Πληροφορίες
10
3552
36968
2025-12-16T14:02:52Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#invoke:Infobox|infobox}}<includeonly>{{template other|{{#ifeq:{{PAGENAME}}|Infobox||{{#ifeq:{{str left|{{SUBPAGENAME}}|7}}|Infobox|[[Category:Infobox templates|{{remove first word|{{SUBPAGENAME}}}}]]}}}}|}}</includeonly><noinclude> {{documentation}} <!-- Categories go in the /doc subpage, and interwikis go in Wikidata. --> </noinclude>'
36968
wikitext
text/x-wiki
{{#invoke:Infobox|infobox}}<includeonly>{{template other|{{#ifeq:{{PAGENAME}}|Infobox||{{#ifeq:{{str left|{{SUBPAGENAME}}|7}}|Infobox|[[Category:Infobox templates|{{remove first word|{{SUBPAGENAME}}}}]]}}}}|}}</includeonly><noinclude>
{{documentation}}
<!-- Categories go in the /doc subpage, and interwikis go in Wikidata. -->
</noinclude>
f4hgwrnr11ahhwyo266vcd10dpi92pe
Module:Wikidata/Sorters/date
828
3553
36969
2025-12-16T14:03:47Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '--require "strict" local p = {} local lib = require 'Module:Wikidata/lib' local Formatters = require 'Module:Wikidata/Formatters' local function getValues(qualifiers) local Values = {} if qualifiers then for key, array in pairs(lib.props) do for _, prop in ipairs(array) do for _, snak in ipairs(qualifiers[prop] or {}) do if lib.IsSnakValue(snak) then Values[key] = Formatters.getRawValue(snak) break end end...'
36969
Scribunto
text/plain
--require "strict"
local p = {}
local lib = require 'Module:Wikidata/lib'
local Formatters = require 'Module:Wikidata/Formatters'
local function getValues(qualifiers)
local Values = {}
if qualifiers then
for key, array in pairs(lib.props) do
for _, prop in ipairs(array) do
for _, snak in ipairs(qualifiers[prop] or {}) do
if lib.IsSnakValue(snak) then
Values[key] = Formatters.getRawValue(snak)
break
end
end
end
end
end
return Values
end
function p.isCompleteStatement(statement)
local Values = getValues(statement.qualifiers)
return (Values.begin or Values.ending) and true
end
function p.mayCompareStatement(statement)
return true
end
function p.compareStatements(first, second)
local FirstValues = getValues(first.qualifiers)
local SecondValues = getValues(second.qualifiers)
if FirstValues.begin and SecondValues.begin then
if FirstValues.begin ~= SecondValues.begin then
return lib.simpleCompare(FirstValues.begin, SecondValues.begin)
end
if FirstValues.ending and SecondValues.ending then
return lib.simpleCompare(FirstValues.ending, SecondValues.ending)
end
if FirstValues.ending then
return -1
elseif SecondValues.ending then
return 1
else
return 0
end
end
if FirstValues.ending and SecondValues.ending then
if FirstValues.ending == SecondValues.ending then
if FirstValues.begin then
return 1
elseif SecondValues.begin then
return -1
else
return 0
end
end
end
if FirstValues.begin and SecondValues.ending then
return lib.simpleCompare(FirstValues.begin, SecondValues.ending)
end
if FirstValues.ending and SecondValues.begin then
if FirstValues.ending > SecondValues.begin then
return 1
else
return -1
end
end
return lib.simpleCompare(FirstValues.ending, SecondValues.ending)
end
return p
8jpos59zwywyigcvre6yx3jykydhq6d
18 Απρίλτ
0
3554
37134
36989
2025-12-16T18:27:13Z
Εὐθυμένης
2777
37134
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[17 Απρίλτ]] | [[18 Απρίλτ]] | [[19 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''18 τ' Απρίλτ''' εν τ' 108ον ημέρα τη χρονίας (109ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 257 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[18 Μαρτί]] - [[18 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0108]]
ppozr4hw703r6zhftgioi9g4c4cziw5
15 Απρίλτ
0
3555
37131
36974
2025-12-16T18:26:21Z
Εὐθυμένης
2777
37131
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[14 Απρίλτ]] | [[15 Απρίλτ]] | [[16 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''15 τ' Απρίλτ''' εν τ' 105ον ημέρα τη χρονίας (106ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 260 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[15 Μαρτί]] - [[15 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0105]]
3ljmzmk9zd8sxhsrtyw5egdd84119fm
14 Απρίλτ
0
3556
37130
36976
2025-12-16T18:26:05Z
Εὐθυμένης
2777
37130
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[13 Απρίλτ]] | [[14 Απρίλτ]] | [[15 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''14 τ' Απρίλτ''' εν τ' 104ον ημέρα τη χρονίας (105ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 261 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[14 Μαρτί]] - [[14 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0104]]
r9jdpn1vq8p53bab2lcx6re49h96sh2
13 Απρίλτ
0
3557
37129
36977
2025-12-16T18:25:51Z
Εὐθυμένης
2777
37129
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[12 Απρίλτ]] | [[13 Απρίλτ]] | [[14 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''13 τ' Απρίλτ''' εν τ' 103ον ημέρα τη χρονίας (104ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 262 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[13 Μαρτί]] - [[13 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0103]]
s2hh5bq6il4t719443q97i3rb6akvez
12 Απρίλτ
0
3558
37128
36978
2025-12-16T18:25:35Z
Εὐθυμένης
2777
37128
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[11 Απρίλτ]] | [[12 Απρίλτ]] | [[13 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''12 τ' Απρίλτ''' εν τ' 102ον ημέρα τη χρονίας (103ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 263 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[12 Μαρτί]] - [[12 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0102]]
fl2kuliodfwxph4qdtrjtqu5t7owao0
11 Απρίλτ
0
3559
37127
36979
2025-12-16T18:25:19Z
Εὐθυμένης
2777
37127
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[10 Απρίλτ]] | [[11 Απρίλτ]] | [[12 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''11 τ' Απρίλτ''' εν τ' 101ον ημέρα τη χρονίας (102ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 264 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[11 Μαρτί]] - [[11 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0101]]
6racwgn68kpl4f9ehwrl1ba9cszwwef
10 Απρίλτ
0
3560
37126
36980
2025-12-16T18:25:02Z
Εὐθυμένης
2777
37126
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[9 Απρίλτ]] | [[10 Απρίλτ]] | [[11 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''10 τ' Απρίλτ''' εν τ' 100ον ημέρα τη χρονίας (101ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 265 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[10 Μαρτί]] - [[10 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0100]]
ik6y7nzgvqhjzv2czk4g2n8td9pzogp
9 Απρίλτ
0
3561
37125
36981
2025-12-16T18:24:44Z
Εὐθυμένης
2777
37125
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[8 Απρίλτ]] | [[9 Απρίλτ]] | [[10 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''9 τ' Απρίλτ''' εν τ' 99ον ημέρα τη χρονίας (100ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 266 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[9 Μαρτί]] - [[9 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0099]]
7x0djwbnhveryueykvqd8tje04srglo
8 Απρίλτ
0
3562
37124
36982
2025-12-16T18:24:29Z
Εὐθυμένης
2777
37124
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[7 Απρίλτ]] | [[8 Απρίλτ]] | [[9 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''8 τ' Απρίλτ''' εν τ' 98ον ημέρα τη χρονίας (99ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 267 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[8 Μαρτί]] - [[8 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0098]]
5du5d7o5po4q6w1dk83o8yw51mwmj9s
19 Απρίλτ
0
3563
37135
36990
2025-12-16T18:27:29Z
Εὐθυμένης
2777
37135
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[18 Απρίλτ]] | [[19 Απρίλτ]] | [[20 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''19 τ' Απρίλτ''' εν τ' 109ον ημέρα τη χρονίας (110ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 256 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[19 Μαρτί]] - [[19 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0110]]
mmwkh4k1gqlgi5s8dg78r31c3ivpu33
20 Απρίλτ
0
3564
37136
36991
2025-12-16T18:27:46Z
Εὐθυμένης
2777
37136
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[19 Απρίλτ]] | [[20 Απρίλτ]] | [[21 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''20 τ' Απρίλτ''' εν τ' 110ον ημέρα τη χρονίας (111ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 255 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[20 Μαρτί]] - [[20 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0110]]
0jp8bleyv38mn0hkx9ho5r1jrar5z1h
21 Απρίλτ
0
3565
37137
36992
2025-12-16T18:28:15Z
Εὐθυμένης
2777
37137
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[20 Απρίλτ]] | [[21 Απρίλτ]] | [[22 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''21 τ' Απρίλτ''' εν τ' 111ον ημέρα τη χρονίας (112ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 254 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[21 Μαρτί]] - [[21 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0111]]
466yuj2h0gkr4yu1cpbvwxwvhf54tgr
22 Απρίλτ
0
3566
37138
36993
2025-12-16T18:28:43Z
Εὐθυμένης
2777
37138
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[21 Απρίλτ]] | [[22 Απρίλτ]] | [[23 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''22 τ' Απρίλτ''' εν τ' 112ον ημέρα τη χρονίας (113ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 253 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[22 Μαρτί]] - [[22 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0112]]
c3m6fu8axhnq7h1sappwj3wbrka8dp0
23 Απρίλτ
0
3567
37139
36994
2025-12-16T18:28:58Z
Εὐθυμένης
2777
37139
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[22 Απρίλτ]] | [[23 Απρίλτ]] | [[24 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''23 τ' Απρίλτ''' εν τ' 113ον ημέρα τη χρονίας (114ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 258 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[23 Μαρτί]] - [[23 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0113]]
iz7law0evrovqqdxqxzskexxdqn6z1x
24 Απρίλτ
0
3568
37140
36996
2025-12-16T18:29:15Z
Εὐθυμένης
2777
37140
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[23 Απρίλτ]] | [[24 Απρίλτ]] | [[25 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''24 τ' Απρίλτ''' εν τ' 114ον ημέρα τη χρονίας (115ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 251 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[24 Μαρτί]] - [[24 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0114]]
3njr399nmh5qag3xwzbfctxrapaomf5
25 Απρίλτ
0
3569
37141
36999
2025-12-16T18:29:30Z
Εὐθυμένης
2777
37141
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[24 Απρίλτ]] | [[25 Απρίλτ]] | [[26 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''25 τ' Απρίλτ''' εν τ' 115ον ημέρα τη χρονίας (116ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 250 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[25 Μαρτί]] - [[25 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0115]]
6c77yeum46cw8l3lfxcjcvjwvvq9mk8
26 Απρίλτ
0
3570
37142
37000
2025-12-16T18:29:45Z
Εὐθυμένης
2777
37142
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[25 Απρίλτ]] | [[26 Απρίλτ]] | [[27 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''26 τ' Απρίλτ''' εν τ' 116ον ημέρα τη χρονίας (117ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 249 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[26 Μαρτί]] - [[26 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0116]]
2s6lck9k2thuiqsnvdqp19er8u6qctg
27 Απρίλτ
0
3571
37143
37001
2025-12-16T18:29:59Z
Εὐθυμένης
2777
37143
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[26 Απρίλτ]] | [[27 Απρίλτ]] | [[28 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''27 τ' Απρίλτ''' εν τ' 117ον ημέρα τη χρονίας (118ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 248 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[27 Μαρτί]] - [[27 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0117]]
78z0lwzr9d88q39umg35w23dirp4ap4
28 Απρίλτ
0
3572
37144
37002
2025-12-16T18:30:23Z
Εὐθυμένης
2777
37144
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[27 Απρίλτ]] | [[28 Απρίλτ]] | [[29 Απρίλτ]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''28 τ' Απρίλτ''' εν τ' 118ον ημέρα τη χρονίας (119ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 247 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[28 Μαρτί]] - [[28 Καλομηνά]]
{{Πρότυπον:Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0118]]
5utxa7sy68bk1u4sls4hwditeyza8yi
30 Απρίλτ
0
3573
37147
37146
2025-12-16T18:34:01Z
Εὐθυμένης
2777
37147
wikitext
text/x-wiki
<div class="center">[[Κούντουρος]] | [[Μαρτς]] | '''[[Απρίλτς]]''' | [[Καλομηνάς]] | [[Κερασινός]]</div>
<div class="center">[[29 Απρίλτ]] | [[30 Απρίλτ]] | [[1 Καλομηνά]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|4}}
Η '''30 τ' Απρίλτ''' εν τ' 120ον ημέρα τη χρονίας (121ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 245 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[30 Μαρτί]] - [[30 Καλομηνά]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0120]]
7emnjcano0e49b8icgudb6rfscn095n
Πρότυπον:ΗμερολόγιοΣεΠίνακα
10
3574
37010
2025-12-16T17:41:12Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#invoke: Ημερολόγια | πίνακαςμήνα}}</includeonly><noinclude>{{Τεκμηρίωση προτύπου}}</noinclude>'
37010
wikitext
text/x-wiki
<includeonly>{{#invoke: Ημερολόγια | πίνακαςμήνα}}</includeonly><noinclude>{{Τεκμηρίωση προτύπου}}</noinclude>
rqu0jz5r95p34vluc7dxc2f93et5bv2
Module:Ημερολόγια
828
3575
37015
37012
2025-12-16T18:02:40Z
Εὐθυμένης
2777
37015
Scribunto
text/plain
p ={}
local df = require("Module:DateFunctions")
--επιστρέφει το κείμενο σε div με σφάλμα
--και εντάσσει τη σελίδα σε κατηγορία με σφάλματα
errorhere = function(errstring)
return '<div class="error">' .. errstring .. '</div>[[Κατηγορίαν:Σελίδες με σφάλματα στο ημερολόγιο]]'
end
--επιστρέφει true αν είναι αλφαριθμητικό και έχει έστω και έναν χαρακτήρα
exeikati = function(onearg)
if onearg == nil then
return false
end
if type(onearg) == 'string' then
return (mw.ustring.len(onearg) > 0)
else
return false
end
end
monthtable = function (poiosmhnas)
local currentdays = {}
local tmpnum = 0
local monthnum = tonumber(poiosmhnas)
local monthname = df['μήνες'][monthnum]['όνομα']
local monthg = df['μήνες'][monthnum]['γεν']
local etos = os.date('*t').year
local firstday = df.get_day_of_week (1, monthnum, etos)
if firstday == 7 then
firstday = 1
else
firstday = firstday + 1
end
local monthdays = df['μήνες'][monthnum]['ημ']
--φέρνει 29 για το φλεβάρη από το: Module:DateFunctions
if monthnum == 2 and (not df.isleapyear(etos)) then monthdays = 28 end
for xcounter = 1,7 do
if firstday > xcounter then
currentdays[xcounter] = '|colspan="1"| '
else
tmpnum = (xcounter - firstday + 1)
currentdays[xcounter] = '| [[' .. tmpnum .. ' ' .. monthg .. '|' .. tmpnum ..']]'
end
end
for xcounter = 8,28 do
tmpnum = (xcounter - firstday + 1)
currentdays[xcounter] = '| [[' .. tmpnum .. ' ' .. monthg .. '|' .. tmpnum ..']]'
end
for xcounter = 29,35 do
if monthdays + firstday > xcounter then
tmpnum = (xcounter - firstday + 1)
currentdays[xcounter] = '| [[' .. tmpnum .. ' ' .. monthg .. '|' .. tmpnum ..']]'
else
currentdays[xcounter] = '|colspan="1"| '
end
end
newtable = [=[{| style="float:right; margin-left: 1em; text-align:center; background-color:#f9f9f9; border:1px solid #aaaaaa;font-size:90%;"
|- style="background:#ccccff;"
|colspan="7"|'''[[]=] .. monthname .. [=[]]'''
|- style="background:#ccccff;"
|width="14%"| Κερ.
|width="14%"| Δευτ.
|width="14%"| Τρ.
|width="14%"| Τετ.
|width="14%"| Πέφ.
|width="14%"| Παρ.
|width="14%"| Σάβ.
|-]=]
local daytoshow = 0
for ycounter = 1,5 do
for xcounter = 1,7 do
--if ycounter < 2 then
--daytoshow = xcounter
--else
daytoshow = (((ycounter - 1 ) * 7) + xcounter)
--mw.log(type(daytoshow))
newtable = newtable .. '\n' .. currentdays[daytoshow] .. '\n'
end
newtable = newtable .. '\n' .. '|-'
--αν έχει 28 ημέρες και τις έχεις ήδη δείξει βγες
if (monthdays + firstday) < 29 and (daytoshow > 27) then break end
end
newtable = newtable .. [=[
|colspan="7"|
|- style="background:#ccccff"
|colspan="7"| [[]=] .. etos .. ']]\n' .. [=[
|}]=]
return newtable
end
--συνάρτηση που δίνει τον πίνακα του μήνα (με το τρέχον έτος του server)
p['πίνακαςμήνα'] = function (frame)
local lemmaargs = frame:getParent().args
if lemmaargs[1] == nil then return errorhere('Δεν δόθηκε η παράμετρος μήνας!') end
return frame:preprocess(monthtable(lemmaargs[1]))
end
--συνάρτηση που δίνει τις ημέρες του μήνα (με το τρέχον έτος του server)
--σε σειρά οριζόντια
p['πίνακαςημερώνμήνα'] = function (frame)
local lemmaargs = frame:getParent().args
if lemmaargs[1] == nil then return errorhere('Δεν δόθηκε η παράμετρος μήνας!') end
local etos = os.date('*t').year
local monthnum = tonumber(poiosmhnas)
local monthname = df['μήνες'][monthnum]['όνομα']
local monthgen = df['μήνες'][monthnum]['γεν']
local monthdays = df['μήνες'][monthnum]['ημ']
-- αν δεν τις βάζουμε όλες του φλεβάρη...
--if monthnum == 2 and df.isleapyear(etos) then monthdays = 29 end
local oneline = '<center>'
for xcounter = 1, monthdays do
oneline = oneline .. ' [[' .. xcounter .. ' ' .. monthgen .. '|' .. xcounter .. ']] '
if monthdays > xcounter then oneline = oneline .. '|' end
end
oneline = oneline .. '</center>'
return frame:preprocess(oneline)
end
p['5μήνες'] = function (frame)
local lemmaargs = frame:getParent().args
if lemmaargs['μ'] == nil then return errorhere('Δεν δόθηκε η παράμετρος μήνας!') end
local output = '<center>'
local month = tonumber(lemmaargs['μ'])
firstmonth = month-3
for xcounter = 1,2 do
output = output .. '[[' .. df.getmonthname(df.realmonthnum(firstmonth + xcounter)) .. ']] | '
end
output = output .. '<b>[[' .. df.getmonthname(df.realmonthnum(firstmonth + 3)) .. ']]</b>'
for xcounter = 4,5 do
output = output .. ' | [[' .. df.getmonthname(df.realmonthnum(firstmonth + xcounter)) .. ']]'
end
output = output .. '</center>'
return frame:preprocess(output)
end
--###############################
--το σκεπτικό είναι να μετατρέπουμε σε ακέραιο αριθμό το έτος.
--Το πρόβλημα είναι ότι στους υπολογισμούς προκύπτουν και έτη μηδέν.
--Αυτά δεν μπορούν απλά να μετατραπούν σε έτος 1 μ.Χ. ή 1 π.Χ.
--(Θα πρέπει να γνωρίζουμε αν προήλθαν από πρόσθεση ή αφαίρεση)
--Μάλλον καλύτερη προσέγγιση είναι:
--Αντιστοιχούμε όλα τα έτη μ.Χ. στον αντίστοιχο ακέραιο αριθμό
--και τα έτη π.Χ. σε αρνητικό στον οποίο προσθέτουμε 1
--Έτσι έχουμε
--(..., 235 π.Χ., ..., 3 π.Χ., 2 π.Χ, 1 π.Χ.)
--(..., -234, ..., -2, -1, 0)
--για τα υπόλοιπα (δεκαετίες, αιώνες, χιλιετίες)
--χρησιμοποιούμε ένα οποιοδήποτε πραγματικό έτος τους
--για να πάρουμε την ονομασία τους
centurystring = function(etosasnum)
--αν είναι αρνητικός αριθμός
--τα έτη 0 μέχρι -99 είναι στον 1ο π.Χ. αιώνα
--αυτό το παίρνουμε επειδή μετατρέπονται σε 100 μέχρι 199
if etosasnum < 1 then
return tostring(math.floor((100+math.abs(etosasnum))/100)) .. 'ος αιώνας π.Χ.'
end
--αλλιώς προσθέτουμε 99
--ώστε τα έτη 1 μέχρι 100
--να μας δώσουν 100 μέχρι 199
return tostring(math.floor((etosasnum+99)/100)) .. 'ος αιώνας'
end
decadestring = function(etosasnum)
--ας μην έχουμε δεκαετίες π.Χ. για την ώρα
--για αυτές θα χρειαστεί άλλη προσέγγιση αφού πρέπει να περιλμβάνουν 2 έτη στον τίτλο
--ας τις περιορίσουμε επίσης στο διάστημα 1700 μέχρι τώρα
if etosasnum < 1 then return nil end
return tostring(10 * math.floor(etosasnum/10) )
end
yearstring = function(etosasnum)
if etosasnum < 1 then
return tostring(math.abs(etosasnum) + 1) .. ' π.Χ.'
end
return tostring(etosasnum)
end
--[=[Δοκιμές στη κονσόλα αποσφαλμάτωσης (debug console) στο κάτω μέρος
με
=p.aiones(1)
=p.aiones(1999)
=p.aiones(0) --δηλαδή 1 π.Χ.
κλπ.
]=]
p.aiones = function(etosasnum)
local output = '[[' .. centurystring(etosasnum - 200) .. '|◄]]'
output = output .. ' [[' .. centurystring(etosasnum - 100) .. ']]'
output = output .. ' [[' .. centurystring(etosasnum) .. ']]'
local tempstr = centurystring(etosasnum + 100)
--ΠΡΟΣΟΧΗ!! expensive!!
--ίσως να ελέγχουμε αν είναι μετά από τώρα και να μην το εμφανίζουμε
--θεωρώντας ότι δεν θα υπάρχει
if mw.title.new(tempstr).exists then
output = output .. ' [[' .. tempstr .. ']]'
tempstr = centurystring(etosasnum + 200)
--ΠΡΟΣΟΧΗ!! expensive!!
if mw.title.new(tempstr).exists then
output = output .. ' [[' .. tempstr .. '|►]]'
end
end
return output
end
--[=[Δοκιμές στη κονσόλα αποσφαλμάτωσης (debug console) στο κάτω μέρος
με
=p.dekaeties(1)
=p.dekaeties(1999)
=p.dekaeties(0) --δηλαδή 1 π.Χ. --εεε... χμμμμ... Όχι ακόμα!
κλπ.
]=]
p.dekaeties = function(etosasnum)
--Πρέπει να αποφασιστεί τι θα κάνουμε
--1. Να ελέγχουμε αν υπάρχει (expensive)
--2. Να το βάζουμε έτσι κι αλλιώς (θα έχει κόκκινα που μπορεί κάποιος χρήστης να τα δημιουργήσει μόνο και μόνο επειδή έκανε κλικ)
--3. Να έχουμε ένα όριο προς τα πίσω πριν από το οποίο δεν θα δημιουργήσουμε δεκαετίες (υπάρχουν όμως ήδη ακόμα και π.Χ.)
--Η τρέχουσα προσέγγιση είναι η 2
--Για την ώρα δεν επιστρέφει πριν το 30 μ.Χ.
if etosasnum < 30 then return nil end
local output = '[[Δεκαετία ' .. decadestring(etosasnum - 20) .. '|◄]]'
output = output .. ' [[Δεκαετία ' .. decadestring(etosasnum - 10) .. ']]'
output = output .. ' [[Δεκαετία ' .. decadestring(etosasnum) .. ']]'
local tempstr = 'Δεκαετία ' .. decadestring(etosasnum + 10)
--ΠΡΟΣΟΧΗ!! expensive!!
--ίσως να ελέγχουμε αν είναι μετά από τώρα και να μην το εμφανίζουμε
--θεωρώντας ότι δεν θα υπάρχει
if mw.title.new(tempstr).exists then
output = output .. ' [[Δεκαετία ' .. tempstr .. ']]'
tempstr = 'Δεκαετία ' .. decadestring(etosasnum + 20)
--ΠΡΟΣΟΧΗ!! expensive!!
if mw.title.new(tempstr).exists then
output = output .. ' [[Δεκαετία ' .. tempstr .. '|►]]'
end
end
return output
end
--[=[Δοκιμές στη κονσόλα αποσφαλμάτωσης (debug console) στο κάτω μέρος
με
=p.eth(1)
=p.eth(1999)
=p.eth(0) --δηλαδή 1 π.Χ.
κλπ.
]=]
p.eth = function(etosasnum)
local output = '[[' .. yearstring(etosasnum - 10) .. '|◄◄]]'
output = output .. ' [[' .. yearstring(etosasnum - 5) .. '|◄]]'
output = output .. ' [[' .. yearstring(etosasnum - 4) .. ']]'
output = output .. ' [[' .. yearstring(etosasnum - 3) .. ']]'
output = output .. ' [[' .. yearstring(etosasnum - 2) .. ']]'
output = output .. ' [[' .. yearstring(etosasnum - 1) .. ']]'
output = output .. ' [[' .. yearstring(etosasnum) .. ']]'
local tempstr = yearstring(etosasnum + 1)
--ΠΡΟΣΟΧΗ!! expensive!!
--καλύτερα ίσως να ελέγχουμε αν είναι μετά από σήμερα και να μην το εμφανίζουμε
--θεωρώντας ότι δεν θα υπάρχει
if mw.title.new(tempstr).exists then
output = output .. ' [[' .. tempstr .. ']]'
tempstr = yearstring(etosasnum + 2)
--ΠΡΟΣΟΧΗ!! expensive!!
if mw.title.new(tempstr).exists then
output = output .. ' [[' .. tempstr .. ']]'
tempstr = yearstring(etosasnum + 3)
--ΠΡΟΣΟΧΗ!! expensive!!
if mw.title.new(tempstr).exists then
output = output .. ' [[' .. tempstr .. ']]'
tempstr = yearstring(etosasnum + 4)
--ΠΡΟΣΟΧΗ!! expensive!!
if mw.title.new(tempstr).exists then
output = output .. ' [[' .. tempstr .. ']]'
tempstr = yearstring(etosasnum + 5)
--ΠΡΟΣΟΧΗ!! expensive!!
if mw.title.new(tempstr).exists then
output = output .. ' [[' .. tempstr .. '|►]]'
tempstr = yearstring(etosasnum + 10)
--ΠΡΟΣΟΧΗ!! expensive!!
if mw.title.new(tempstr).exists then
output = output .. ' [[' .. tempstr .. '|►►]]'
end
end
end
end
end
end
return output
end
--για χρήση στο πρότυπο έτος και έτος π.Χ.
--εμπεριέχει και την κατηγορία
--δεν εμφανίζει σωστά το div
p['πρότυποέτος'] = function (frame)
PAGENAME = mw.title.getCurrentTitle().text
--αν έχει π.Χ. να το αφαιρούμε και να γίνει αρνητικός αριθμός
local startx, stopx
startx, stopx = mw.ustring.find(PAGENAME, ' π.Χ.')
if startx == nil then
etosasnum = tonumber(PAGENAME)
--αν έχει στον τίτλο το π.Χ.
--τον μετατρέπω σε αρνητικό +1
--το 1 π.Χ. θα γίνει 0, το 2 π.Χ. θα γίνει -1
else
etosasnum = 1-tonumber(mw.ustring.sub(PAGENAME,1,startx-1))
end
--δεν επεξεργάζεται το <div> με preprocess
local output = ''
output = p.aiones(etosasnum)
--η "εδώ" προσέγγιση είναι να μην εμφανίζονται δεκαετίες πριν το 1900
--(ίσως να γίνεται έλεγχος για το αν υπάρχουν αλλά είναι expensive!!!-)
--Επίσης μπορεί να αφαιρεθεί εξ ολοκλήρου η εμφάνιση των δεκαετιών
--Αν χρειαστεί μπορούμε να τις προσθέσουμε στο πινακάκι
--if etosasnum >= 1900 then
--output = output .. '<br/>' .. p.dekaeties(etosasnum)
--end
output = output .. '<br/>' .. p.eth(etosasnum)
--Κατηγορία χ αιώνας
--output = output .. ' [[Κατηγορία:' .. centurystring(etosasnum) .. '|#' .. mw.ustring.format(etosasnum,'%5d') .. ']]'
local preprocessed = frame:preprocess(output)
local boiled = '<div class="metadata" style="border: 1px solid #ccd2d9; background: white; padding: 0.5em 1em 0.5em 1em; text-align: center;">'
boiled = boiled .. preprocessed .. '</div> [[Κατηγορία:' .. centurystring(etosasnum) .. '|#' .. mw.ustring.format(etosasnum,'%5d') .. ']]'
return boiled
--return frame:preprocess(output)
end
--###############################
return p
qukbgq0pnfuds4dt253zk453vlgns5t
Module:DateFunctions
828
3576
37013
2025-12-16T17:56:36Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '-- Διάφορες ημερολογιακές συναρτήσεις p = {} --επιστρέφει το κείμενο σε div με σφάλμα --και εντάσσει τη σελίδα σε κατηγορία με σφάλματα errorhere = function(errstring) return '<div class="error">' .. errstring .. '</div>[[Κατηγορίαν:Σελίδες με σφάλματα στο ημερολόγιο]]' end --επιστρέφει true α...'
37013
Scribunto
text/plain
-- Διάφορες ημερολογιακές συναρτήσεις
p = {}
--επιστρέφει το κείμενο σε div με σφάλμα
--και εντάσσει τη σελίδα σε κατηγορία με σφάλματα
errorhere = function(errstring)
return '<div class="error">' .. errstring .. '</div>[[Κατηγορίαν:Σελίδες με σφάλματα στο ημερολόγιο]]'
end
--επιστρέφει true αν είναι αλφαριθμητικό και έχει έστω και έναν χαρακτήρα
exeikati = function(onearg)
if onearg == nil then
return false
end
if type(onearg) == 'string' then
return (mw.ustring.len(onearg) > 0)
else
return false
end
end
-- RiciLake comments:
-- It would be better to create the days_in_month table outside the
-- function, like this (using % so it only works in Lua 5.1)
--επιστρέφει το αν είναι δίσεκτο έτος
p.isleapyear = function(poioetos)
return poioetos % 4 == 0 and (poioetos % 100 ~= 0 or poioetos % 400 == 0)
end
--επιστρέφει τις ημέρες που έχει ο μήνας
----(μήνας και έτος ακέραιοι αριθμοί)
p.getdaysinmonth = function(poiosmhnas, poioetos)
if poiosmhnas == 2 and p.isleapyear(poioetos) then
return 29
else
return p['μήνες'][poiosmhnas]['ημ']
end
end
--επιστρέφει το μήνα (ο μήνας σε ακέραιο) στην ονομαστική πτώση
p.getmonthname = function(poiosmhnas)
return p['μήνες'][poiosmhnas]['όνομα']
end
--επιστρέφει το μήνα (ο μήνας σε ακέραιο) στη γενική πτώση
p.getmonthgen = function(poiosmhnas)
return p['μήνες'][poiosmhnas]['γεν']
end
--πίνακας με τα στοιχεία των μηνών
p['μήνες'] = { {['όνομα'] = 'Καλαντάρτς', ['γεν'] = 'Καλανταρί', ['συντμ'] = {'ΚΑΛ','ΚΑΛ.',}, ['ημ'] = 31},
{['όνομα'] = 'Κούντουρος', ['γεν'] = 'Κούντουρονος',['συντμ'] = {'ΚΟΥ','ΚΟΥ.',}, ['ημ'] = 29},
{['όνομα'] = 'Μαρτς', ['γεν'] = 'Μαρτί',['συντμ'] = {'ΜΑΡ','ΜΑΡ.',}, ['ημ'] = 31},
{['όνομα'] = 'Απρίλτς', ['γεν'] = 'Απρίλτ',['συντμ'] = {'ΑΠΡ','ΑΠΡ.',}, ['ημ'] = 30},
{['όνομα'] = 'Καλομηνάς', ['γεν'] = 'Καλομηνά',['συντμ'] = {'ΚΑΛ','ΚΑΛ.','ΚΑΛΑ','ΚΑΛΑ.',}, ['ημ'] = 31},
{['όνομα'] = 'Κερασινός', ['γεν'] = 'Κερασινού',['συντμ'] = {'ΚΕΡ','ΚΕΡ.','ΚΕΡΑ','ΚΕΡΑ.',}, ['ημ'] = 30},
{['όνομα'] = 'Χορτοθέρτς', ['γεν'] = 'Χορτοθέρτ',['συντμ'] = {'ΧΟΡ','ΧΟΡ.','ΧΟΡΤ','ΧΟΡΤ.',}, ['ημ'] = 31},
{['όνομα'] = 'Αλωνάρτς', ['γεν'] = 'Αλωναρί',['συντμ'] = {'ΑΛΩ','ΑΛΩ.',}, ['ημ'] = 31},
{['όνομα'] = 'Σταυρίτες', ['γεν'] = 'Σταυρί',['συντμ'] = {'ΣΤΑ','ΣΤΑ.',}, ['ημ'] = 30},
{['όνομα'] = 'Τρυγομηνάς', ['γεν'] = 'Τρυγομηνά',['συντμ'] = {'ΤΡΥ','ΤΡΥ.',}, ['ημ'] = 31},
{['όνομα'] = 'Αεργίτες', ['γεν'] = 'Αεργί',['συντμ'] = {'ΑΕΡ','ΑΕΡ.',}, ['ημ'] = 30},
{['όνομα'] = 'Χριστουγεννάρτς', ['γεν'] = 'Χριστουγενναρί',['συντμ'] = {'ΧΡΙ','ΧΡΙ.',}, ['ημ'] = 31},
}
--επιστρέφει τον αριθμό του μήνα από το όνομα ή τη σύντμηση
--από τον πίνακα
p['μήναςαποόνομα'] = function(month)
if type(month) ~= "string" then
return nil
end
local m = mw.ustring.upper( mw.text.trim(month) )
for i = 1, 12 do
if p['μήνες'][i]['όνομα'] == month then return i end
if p['μήνες'][i]['γεν'] == month then return i end
local j = 1
--για όσο υπάρχει σύντμηση για τον μήνα
while p['μήνες'][i]['συντμ'][j] ~= nil do
if p['μήνες'][i]['συντμ'][j] == m then
return i
end
j = j + 1
end
end
-- αφού δεν βρέθηκε ως εδώ επιστρέφει αυτόματα το nil
end
--πίνακας με τα ονόματα των ημερών
p['ημέρες'] = { 'Δευτέραν', 'Τρίτ', 'Τετράδ', 'Πέφτ', 'Παρασκευήν', 'Σάββαν', 'Κερεκήν'}
--επιστρέφει το ποια μέρα της εβδομάδας είναι (ακέραιος, Δευτέραν=1) αν δοθεί η ημερομηνία
-- returns the day of week (integer)
-- Compatible with Lua 5.0 and 5.1.
-- from sam_lie
p.get_day_of_week = function(dd, mm, yy)
-- local days = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" }
-- local days = { 7, 1, 2, 3, 4, 5, 6 }
local mmx = mm
if (mm == 1) then mmx = 13; yy = yy-1 end
if (mm == 2) then mmx = 14; yy = yy-1 end
local val8 = dd + (mmx*2) + math.floor(((mmx+1)*3)/5) + yy + math.floor(yy/4) - math.floor(yy/100) + math.floor(yy/400) + 2
local val9 = math.floor(val8/7)
local dw = val8-(val9*7)
if (dw < 2 ) then
dw = dw + 6
else
dw =dw - 1
end
-- return dw, days[dw]
-- return days[dw]
return dw
end
--επιστρέφει ένα σωστό αριθμό από το 1 μέχρι το 12
--για την περίπτωση που έχουμε ξεπεράσει (κυκλικά)
--το πάνω ή το κάτω όριο
--(μία φορά μόνο, δηλαδή από 13-23 ή από -11 μέχρι 0)
p.realmonthnum = function(monthnum)
if monthnum > 12 then return monthnum - 12 end
if monthnum < 1 then return monthnum + 12 end
return monthnum
end
return p
o1wplsdkwrk2brc9b55m4xzfw2edqpb
1 Χριστουγενναρί
0
3577
37334
37326
2025-12-16T20:20:26Z
Εὐθυμένης
2777
37334
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[30 Αεργί]] | [[1 Χριστουγενναρί]] | [[2 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''1 τη Χριστουγενναρί''' εν το 335ον ημέρα τη χρονίας (336ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 30 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[1 Αεργί]] - [[1 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0335]]
lm66pn727e6przxfwfwr3002a0le97w
2 Χριστουγενναρί
0
3578
37333
37327
2025-12-16T20:20:14Z
Εὐθυμένης
2777
37333
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[1 Χριστουγενναρί]] | [[2 Χριστουγενναρί]] | [[3 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''2 τη Χριστουγενναρί''' εν το 336ον ημέρα τη χρονίας (337ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 29 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[2 Αεργί]] - [[2 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0336]]
161xgcgdzl01illulla0ngri5hianpk
3 Χριστουγενναρί
0
3579
37332
37328
2025-12-16T20:20:02Z
Εὐθυμένης
2777
37332
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[2 Χριστουγενναρί]] | [[3 Χριστουγενναρί]] | [[4 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''3 τη Χριστουγενναρί''' εν το 337ον ημέρα τη χρονίας (338ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 28 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[3 Αεργί]] - [[3 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0337]]
cxbn4a770cykno4chr28v7z9c0sxovz
4 Χριστουγενναρί
0
3580
37331
37330
2025-12-16T20:19:51Z
Εὐθυμένης
2777
37331
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[3 Χριστουγενναρί]] | [[4 Χριστουγενναρί]] | [[5 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''4 τη Χριστουγενναρί''' εν το 338ον ημέρα τη χρονίας (339ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 27 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[4 Αεργί]] - [[4 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0338]]
ks6r5l188bhbixi1k0g0i0ace97h4nd
5 Χριστουγενναρί
0
3581
37335
2025-12-16T20:22:01Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[4 Χριστουγενναρί]] | [[5 Χριστουγενναρί]] | [[6 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''5 τη Χριστουγενναρί''' εν το 339ον ημέρα τη χρονίας (...'
37335
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[4 Χριστουγενναρί]] | [[5 Χριστουγενναρί]] | [[6 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''5 τη Χριστουγενναρί''' εν το 339ον ημέρα τη χρονίας (340ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 26 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[5 Αεργί]] - [[5 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0339]]
0bs413vbrzvsuac5v297f2p5v6bbre7
6 Χριστουγενναρί
0
3582
37336
2025-12-16T20:23:27Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[5 Χριστουγενναρί]] | [[6 Χριστουγενναρί]] | [[7 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''6 τη Χριστουγενναρί''' εν το 340ον ημέρα τη χρονίας (...'
37336
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[5 Χριστουγενναρί]] | [[6 Χριστουγενναρί]] | [[7 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''6 τη Χριστουγενναρί''' εν το 340ον ημέρα τη χρονίας (341ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 25 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[6 Αεργί]] - [[6 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0340]]
e8zaewld9v02crt876k8vhbok1yf607
7 Χριστουγενναρί
0
3583
37337
2025-12-16T20:25:07Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[6 Χριστουγενναρί]] | [[7 Χριστουγενναρί]] | [[8 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''7 τη Χριστουγενναρί''' εν το 341ον ημέρα τη χρονίας (...'
37337
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[6 Χριστουγενναρί]] | [[7 Χριστουγενναρί]] | [[8 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''7 τη Χριστουγενναρί''' εν το 341ον ημέρα τη χρονίας (342ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 24 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[7 Αεργί]] - [[7 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0342]]
1us4srphpzp4xfumkfk6thkeqrc89wd
8 Χριστουγενναρί
0
3584
37338
2025-12-16T20:26:27Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[7 Χριστουγενναρί]] | [[8 Χριστουγενναρί]] | [[9 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''8 τη Χριστουγενναρί''' εν το 342ον ημέρα τη χρονίας (...'
37338
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[7 Χριστουγενναρί]] | [[8 Χριστουγενναρί]] | [[9 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''8 τη Χριστουγενναρί''' εν το 342ον ημέρα τη χρονίας (343ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 23 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[8 Αεργί]] - [[8 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0342]]
46qktc959xxhunevbfribazzojmmawi
9 Χριστουγενναρί
0
3585
37339
2025-12-16T20:28:49Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[8 Χριστουγενναρί]] | [[9 Χριστουγενναρί]] | [[10 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''9 τη Χριστουγενναρί''' εν το 343ον ημέρα τη χρονίας...'
37339
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[8 Χριστουγενναρί]] | [[9 Χριστουγενναρί]] | [[10 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''9 τη Χριστουγενναρί''' εν το 343ον ημέρα τη χρονίας (344ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 22 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[9 Αεργί]] - [[9 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0343]]
ol5a155sxvcl5lrh0ke34vtv14vtcda
10 Χριστουγενναρί
0
3586
37341
37340
2025-12-16T20:31:09Z
Εὐθυμένης
2777
37341
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[9 Χριστουγενναρί]] | [[10 Χριστουγενναρί]] | [[11 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''10 τη Χριστουγενναρί''' εν το 344ον ημέρα τη χρονίας (345ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 21 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[10 Αεργί]] - [[10 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0344]]
01upmxx66eddqxs0cussr1wnk15qy5r
11 Χριστουγενναρί
0
3587
37342
2025-12-16T20:36:26Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[10 Χριστουγενναρί]] | [[11 Χριστουγενναρί]] | [[12 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''11 τη Χριστουγενναρί''' εν το 345ον ημέρα τη χρονία...'
37342
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[10 Χριστουγενναρί]] | [[11 Χριστουγενναρί]] | [[12 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''11 τη Χριστουγενναρί''' εν το 345ον ημέρα τη χρονίας (346ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 20 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[11 Αεργί]] - [[11 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0345]]
3wqnd9wslyit8vb60v39xjzqtgj3o9i
12 Χριστουγενναρί
0
3588
37343
2025-12-16T20:37:51Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[11 Χριστουγενναρί]] | [[12 Χριστουγενναρί]] | [[13 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''12 τη Χριστουγενναρί''' εν το 346ον ημέρα τη χρονία...'
37343
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[11 Χριστουγενναρί]] | [[12 Χριστουγενναρί]] | [[13 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''12 τη Χριστουγενναρί''' εν το 346ον ημέρα τη χρονίας (347ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 19 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[12 Αεργί]] - [[12 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0346]]
7atmgo8vkgfxvvx7bjh03tk260dc1lq
13 Χριστουγενναρί
0
3589
37344
2025-12-16T20:39:01Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[12 Χριστουγενναρί]] | [[13 Χριστουγενναρί]] | [[14 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''13 τη Χριστουγενναρί''' εν το 347ον ημέρα τη χρονία...'
37344
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[12 Χριστουγενναρί]] | [[13 Χριστουγενναρί]] | [[14 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''13 τη Χριστουγενναρί''' εν το 347ον ημέρα τη χρονίας (348ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 18 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[13 Αεργί]] - [[13 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0347]]
0s9ssngj4w5unkssg86z3h1s39350ut
14 Χριστουγενναρί
0
3590
37345
2025-12-16T20:40:19Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[13 Χριστουγενναρί]] | [[14 Χριστουγενναρί]] | [[15 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''14 τη Χριστουγενναρί''' εν το 348ον ημέρα τη χρονία...'
37345
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[13 Χριστουγενναρί]] | [[14 Χριστουγενναρί]] | [[15 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''14 τη Χριστουγενναρί''' εν το 348ον ημέρα τη χρονίας (349ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 17 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[14 Αεργί]] - [[14 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0348]]
dqory4n588tmfugco2jpylaxp83gx4o
15 Χριστουγενναρί
0
3591
37346
2025-12-16T20:41:46Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[14 Χριστουγενναρί]] | [[15 Χριστουγενναρί]] | [[16 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''15 τη Χριστουγενναρί''' εν το 349ον ημέρα τη χρονία...'
37346
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[14 Χριστουγενναρί]] | [[15 Χριστουγενναρί]] | [[16 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''15 τη Χριστουγενναρί''' εν το 349ον ημέρα τη χρονίας (350ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 16 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[15 Αεργί]] - [[15 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0349]]
06jg2mpwc83rnycm9fjheks769npsro
16 Χριστουγενναρί
0
3592
37347
2025-12-16T20:43:25Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div> <div class="center">[[15 Χριστουγενναρί]] | [[16 Χριστουγενναρί]] | [[17 Χριστουγενναρί]]</div> ---- {{ΗμερολόγιοΣεΠίνακα|12}} Η '''16 τη Χριστουγενναρί''' εν το 350ον ημέρα τη χρονία...'
37347
wikitext
text/x-wiki
<div class="center">[[Τρυγομηνάς]] | [[Αεργίτες]] | '''[[Χριστουγεννάρτς]]''' | [[Καλαντάρτς]] | [[Κούντουρος]]</div>
<div class="center">[[15 Χριστουγενναρί]] | [[16 Χριστουγενναρί]] | [[17 Χριστουγενναρί]]</div>
----
{{ΗμερολόγιοΣεΠίνακα|12}}
Η '''16 τη Χριστουγενναρί''' εν το 350ον ημέρα τη χρονίας (351ον ημέρα σο δίσεκτον τη χρονίαν), άμον ντο λεει εμάς το [[Γρηγοριανόν ημερολόγιον]]. Επέμναν άλλα 15 ημέρας για να τελούτεν η χρονία.
== Ατά ντ' εγένταν ==
== Εγεννέθαν ==
== Αποθάναν ==
== Έξεργος ==
'''Τερέστεν πα:'''
* [[16 Αεργί]] - [[16 Καλανταρί]]
{{Μήνας}}
[[Κατηγορίαν:Ημέρας τη χρονίας|0350]]
fkhoczy1s0ruv30suyxi3fqkibob9ll
Πρότυπον:Soft redirect
10
3593
37350
2025-12-17T11:34:58Z
Minorax
7522
Ανακατεύθυνση στη σελίδα [[Πρότυπον:Softredirect]]
37350
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Template:Softredirect]]
if9nj9367thal86cwt0ysx8fge84rhm
Κατηγορίαν:User bew
14
3594
37352
2025-12-17T11:35:20Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
37352
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Betawi.
6nrwtlpf14bs6bev4cj9wgb56qj03p1
Κατηγορίαν:User bjn
14
3595
37353
2025-12-17T11:35:20Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
37353
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Banjar.
i93fh4nu51quahs5e7eyc9lsdogvjui
Κατηγορίαν:User jv
14
3596
37354
2025-12-17T11:35:20Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
37354
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Ιαβανικά.
899nn2rnkvu6bm1xy2im8vqcjncb18b
Κατηγορίαν:User ms
14
3597
37355
2025-12-17T11:35:20Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
37355
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Μαλαισιανά.
7lw4ls0d2ixcahqz0ppznmvk647a45t
Κατηγορίαν:User sw
14
3598
37357
2025-12-17T11:35:44Z
Babel AutoCreate
5960
Αυτόματα εγέντον η σελίδα κατηγορίας [[Project:Βαβέλ|Βαβέλ]]
37357
wikitext
text/x-wiki
Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν Σουαχίλι.
g74kysfvtk7y4mwngj3tpb6k8vn9alk
Κατηγορία:Βαβέλ - Χρήστες ανά γλώσσα
0
3599
37359
2025-12-17T11:36:07Z
Minorax
7522
Ανακατεύθυνση στη σελίδα [[Κατηγορίαν:Βαβέλ]]
37359
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Κατηγορίαν:Βαβέλ]]
fes542wnr0ae5xhwmwnv46pxl27mdn5
Πρότυπον:Ref
10
3601
37364
2025-12-20T11:47:29Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<sup class="reference plainlinks nourlexpansion" {{#ifeq:{{{noid}}}|noid||id="ref_{{{1}}}"}}>{{#if:{{{2|}}}|[[#endnote_{{{1}}}|{{{2}}}]]|[{{fullurl:{{FULLPAGENAME}}}}#endnote_{{anchorencode:{{{1|}}}}}]}}</sup><noinclude> === Απλό παράδειγμα === {| class=wikitable !Άρθρο !Κώδικας |- |<pre> Κείμενο που χρειάζεται υποσημείωση.{{ref|a|1}} ==Σημειώσεις== : {{note|a}...'
37364
wikitext
text/x-wiki
<sup class="reference plainlinks nourlexpansion" {{#ifeq:{{{noid}}}|noid||id="ref_{{{1}}}"}}>{{#if:{{{2|}}}|[[#endnote_{{{1}}}|{{{2}}}]]|[{{fullurl:{{FULLPAGENAME}}}}#endnote_{{anchorencode:{{{1|}}}}}]}}</sup><noinclude>
=== Απλό παράδειγμα ===
{| class=wikitable
!Άρθρο
!Κώδικας
|-
|<pre>
Κείμενο που χρειάζεται υποσημείωση.{{ref|a|1}}
==Σημειώσεις==
: {{note|a}} Σώμα υποσημείωσης.
</pre>
|{{quotation|
Κείμενο που χρειάζεται υποσημείωση.{{ref|a|1}}
{{ντεμέκ κεφαλίδα|Σημειώσεις}}
: {{note|a}}Σώμα υποσημείωσης.
|}
[[Κατηγορίαν:Πρότυπα Βιβλιογραφίας|{{PAGENAME}}]]
</noinclude>
raqkcgejrzlmp40njqw6f5bziomwsrn
Πρότυπον:Main other
10
3602
37365
2025-12-20T11:48:57Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#switch: <!--If no or empty "demospace" parameter then detect namespace--> {{#if:{{{demospace|}}} | {{lc: {{{demospace}}} }} <!--Use lower case "demospace"--> | {{#ifeq:{{NAMESPACE}}|{{ns:0}} | main | other }} }} | main = {{{1|}}} | other | #default = {{{2|}}} }}<noinclude> {{documentation}} <!-- Add categories to the /doc subpage; interwikis go to Wikidata, thank you! --> </noinclude>'
37365
wikitext
text/x-wiki
{{#switch:
<!--If no or empty "demospace" parameter then detect namespace-->
{{#if:{{{demospace|}}}
| {{lc: {{{demospace}}} }} <!--Use lower case "demospace"-->
| {{#ifeq:{{NAMESPACE}}|{{ns:0}}
| main
| other
}}
}}
| main = {{{1|}}}
| other
| #default = {{{2|}}}
}}<noinclude>
{{documentation}}
<!-- Add categories to the /doc subpage; interwikis go to Wikidata, thank you! -->
</noinclude>
fqcj40f1ojeitvtz4m2eefrp1ymhi6o
Πρότυπον:Tlc
10
3603
37367
2025-12-20T11:52:09Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<span class="nowrap"><code>{{{{#if:{{{1|}}}|{{{1}}}| tlc|...}}<!-- -->{{#ifeq:{{{2|x}}}|{{{2|}}}| |{{{2}}} | }}<!-- -->{{#ifeq:{{{3|x}}}|{{{3|}}}| |{{{3}}} | }}<!-- -->{{#ifeq:{{{4|x}}}|{{{4|}}}| |{{{4}}} | }}<!-- -->{{#ifeq:{{{5|x}}}|{{{5|}}}| |{{{5}}} | }}<!-- -->{{#ifeq:{{{6|x}}}|{{{6|}}}| |{{{6}}} | }}<!-- -->{{#ifeq:{{{7|x}}}|{{{7|}}}| |{{{7}}} | }}<!-- -->{{#ifeq:{{{8|x}}}|{{{8|}}}| |{{{8}}} |...'
37367
wikitext
text/x-wiki
<span class="nowrap"><code>{{{{#if:{{{1|}}}|{{{1}}}| tlc|...}}<!--
-->{{#ifeq:{{{2|x}}}|{{{2|}}}| |{{{2}}} | }}<!--
-->{{#ifeq:{{{3|x}}}|{{{3|}}}| |{{{3}}} | }}<!--
-->{{#ifeq:{{{4|x}}}|{{{4|}}}| |{{{4}}} | }}<!--
-->{{#ifeq:{{{5|x}}}|{{{5|}}}| |{{{5}}} | }}<!--
-->{{#ifeq:{{{6|x}}}|{{{6|}}}| |{{{6}}} | }}<!--
-->{{#ifeq:{{{7|x}}}|{{{7|}}}| |{{{7}}} | }}<!--
-->{{#ifeq:{{{8|x}}}|{{{8|}}}| |{{{8}}} | }}<!--
-->{{#ifeq:{{{9|x}}}|{{{9|}}}| |{{{9}}} | }}<!--
-->}}</code></span><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
hvz0y5fmfypqrh6hpdtjucpttl59h70
Πρότυπον:Var
10
3604
37368
2025-12-20T11:53:03Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<var {{#if:{{{class|}}}|class="{{{class}}}"}} {{#if:{{{id|}}}|id="{{{id}}}"}} {{#if:{{{style|}}}|style="{{{style}}}"}} {{#if:{{{lang|}}}|lang="{{{lang}}}" xml:lang="{{{lang}}}"}} {{#if:{{{title|}}}|title="{{{title}}}"}}>{{{1}}}</var><noinclude> <!--Categories and interwikis go near the bottom of the /doc page.--> {{Documentation}} </noinclude>'
37368
wikitext
text/x-wiki
<var {{#if:{{{class|}}}|class="{{{class}}}"}} {{#if:{{{id|}}}|id="{{{id}}}"}} {{#if:{{{style|}}}|style="{{{style}}}"}} {{#if:{{{lang|}}}|lang="{{{lang}}}" xml:lang="{{{lang}}}"}} {{#if:{{{title|}}}|title="{{{title}}}"}}>{{{1}}}</var><noinclude>
<!--Categories and interwikis go near the bottom of the /doc page.-->
{{Documentation}}
</noinclude>
7pxpni8exwl8p3m3nfxw4yh4tq7fdtp
Πρότυπον:Note
10
3605
37369
2025-12-20T11:54:23Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<span class="citation wikicite" id="endnote_{{{1}}}"><b>[[#ref_{{{1}}}|^{{{2|}}}]]</b>{{#if:{{{3|}}}| {{{3|}}}}}</span> <noinclude> [[Κατηγορίαν:Πρότυπα Βιβλιογραφίας|{{PAGENAME}}]] </noinclude>'
37369
wikitext
text/x-wiki
<span class="citation wikicite" id="endnote_{{{1}}}"><b>[[#ref_{{{1}}}|^{{{2|}}}]]</b>{{#if:{{{3|}}}| {{{3|}}}}}</span> <noinclude>
[[Κατηγορίαν:Πρότυπα Βιβλιογραφίας|{{PAGENAME}}]]
</noinclude>
ohqx4db1hgbi0phwisimfjfsyuub6cd
Πρότυπον:Ντεμέκ κεφαλίδα
10
3606
37370
2025-12-20T11:55:42Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{main other |1={{error|Σύμφωνα με [[MOS:ACCESS#Επικεφαλίδες]] ψευδείς επικεφαλίδες δεν πρέπει να χρησιμοποιούνται σε λήμματα.}}[[Category:Σελίδες με πρότυπα σε λάθος ονοματοχώρο]] |2=<div style="color: #000000; background: none; overflow: hidden; page-break-after: avoid; {{#switch: {{{level|{{{sub|}}}}}} | 1 = font-size: 1.8em; font-famil...'
37370
wikitext
text/x-wiki
{{main other
|1={{error|Σύμφωνα με [[MOS:ACCESS#Επικεφαλίδες]] ψευδείς επικεφαλίδες δεν πρέπει να χρησιμοποιούνται σε λήμματα.}}[[Category:Σελίδες με πρότυπα σε λάθος ονοματοχώρο]]
|2=<div style="color: #000000; background: none; overflow: hidden; page-break-after: avoid; {{#switch: {{{level|{{{sub|}}}}}}
| 1 = font-size: 1.8em; font-family: 'Linux Libertine',Georgia,Times,serif; margin-top: 1em; margin-bottom: 0.25em; line-height: 1.3; padding: 0; border-bottom: 1px solid #AAAAAA;
| 2 | #default = font-size: 1.5em; font-family: 'Linux Libertine',Georgia,Times,serif; margin-top: 1em; margin-bottom: 0.25em; line-height: 1.3; padding: 0; border-bottom: 1px solid #AAAAAA;
| 3 = font-size: 1.17em; font-weight: bold; margin-top: 0.3em; margin-bottom: 0; line-height: 1.6; padding-top: 0.5em; padding-bottom: 0;
| 4 = font-size: 100%; font-weight: bold; margin-top: 0.3em; margin-bottom: 0; line-height: 1.6; padding-top: 0.5em; padding-bottom: 0;
| 5 = font-size: 100%; font-weight: bold; margin-top: 0.3em; margin-bottom: 0; line-height: 1.6; padding-top: 0.5em; padding-bottom: 0;
| 6 = font-size: 100%; font-weight: bold; margin-top: 0.3em; margin-bottom: 0; line-height: 1.6; padding-top: 0.5em; padding-bottom: 0;
}}">{{{1|Ενότητα}}}</div>}}<noinclude>
{{documentation|content=
{{ombox|type=content|text=Μην χρησιμοποιείτε αυτό το πρότυπο σε λήμματα. Δείτε [[MOS:ACCESS#Επικεφαλίδες]]}}
{{template shortcut|fake heading}}
== Χρήση ==
Αυτό το πρότυπο χρησιμοποιείται για τη δημιουργία παραδειγμάτων σήμανσης κεφαλίδας wiki σε σελίδες βοήθειας και σε παρόμοιες σελίδες και [[MOS:ACCESS#Επικεφαλίδες|ΔΕΝ πρέπει να χρησιμοποιείται σε λήμματα]]. Οι ψεύτικες επικεφαλίδες δεν εμφανίζονται στον πίνακα περιεχομένων. Είναι σχεδιασμένες ώστε να εμφανίζονται όπως τα προεπιλεγμένα στυλ επικεφαλίδων στο Vector skin και δεν θα επηρεάζονται από προσαρμοσμένα [[Cascading Style Sheets|CSS]] ή skins.
== Παράμετροι ==
* {{para|level}} ή {{para|sub}} είναι ο αριθμός επιπέδου: οι έγκυρες τιμές είναι από 1 έως 6. Η προεπιλογή είναι 2 (ισοδύναμο με μια <code><nowiki>== Κύρια επικεφαλίδα ==</nowiki></code> (το επίπεδο 1 ισοδυναμεί με τίτλο σελίδας).
* Μια παράμετρος χωρίς όνομα (η οποία μπορεί επίσης να καθοριστεί ως {{para|1}}) χρησιμοποιείται για τον τίτλο της ενότητας.
== Παράδειγμα ==
{{markup
|<nowiki>
{{ντεμέκ κεφαλίδα|sub=1|Κεφαλίδα 1}}
{{ντεμέκ κεφαλίδα|sub=2|Κεφαλίδα 2}}
{{ντεμέκ κεφαλίδα|sub=3|Κεφαλίδα 3}}
{{ντεμέκ κεφαλίδα|sub=4|Κεφαλίδα 4}}
{{ντεμέκ κεφαλίδα|sub=5|Κεφαλίδα 5}}
{{ντεμέκ κεφαλίδα|sub=6|Κεφαλίδα 6}}
</nowiki>|
{{ντεμέκ κεφαλίδα|sub=1|Κεφαλίδα 1}}
{{ντεμέκ κεφαλίδα|sub=2|Κεφαλίδα 2}}
{{ντεμέκ κεφαλίδα|sub=3|Κεφαλίδα 3}}
{{ντεμέκ κεφαλίδα|sub=4|Κεφαλίδα 4}}
{{ντεμέκ κεφαλίδα|sub=5|Κεφαλίδα 5}}
{{ντεμέκ κεφαλίδα|sub=6|Κεφαλίδα 6}}
}}
== TemplateData ==
<templatedata>
{
"params": {
"1": {
"label": "Κείμενο κεφαλίδας",
"example": "Κάποιο όνομα ενότητας",
"type": "string",
"required": true
},
"sub": {
"aliases": [
"level"
],
"label": "Επίπεδο",
"description": "Επίπεδο επικεφαλίδας",
"example": "2",
"type": "number",
"suggestedvalues": [
"2",
"3",
"4",
"5",
"6",
"1"
],
"default": "2",
"suggested": true
}
},
"format": "inline",
"description": "Δημιουργία παραδειγμάτων σήμανσης κεφαλίδας wiki σε σελίδες βοήθειας και σε παρόμοιες σελίδες. ΔΕΝ πρέπει να χρησιμοποιείται σε λήμματα. "
}
</templatedata>
}}
<!-- Categories go on the /doc subpage and interwikis go on Wikidata. -->
</noinclude>
5xyn8rim7s2yoh4q7fo75gokmfe4tip
Πρότυπον:Refbegin
10
3607
37371
2025-12-20T11:57:16Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly><div class="refbegin <!-- -->{{#if: {{{normalfont|}}} | refbegin-100 }} <!-- -->{{#if: {{{1|}}} | columns {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }} | references-column-width | references-column-count references-column-count-{{#if:1|{{{1}}}}} }} | {{#if: {{{colwidth|}}} | references-column-width }} }}" style="<!-- -->{{#if: {{{1|}}} | {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }} | {{column-width|{{#i...'
37371
wikitext
text/x-wiki
<includeonly><div class="refbegin <!--
-->{{#if: {{{normalfont|}}}
| refbegin-100 }} <!--
-->{{#if: {{{1|}}}
| columns {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }}
| references-column-width
| references-column-count references-column-count-{{#if:1|{{{1}}}}} }}
| {{#if: {{{colwidth|}}}
| references-column-width }} }}" style="<!--
-->{{#if: {{{1|}}}
| {{#iferror: {{#ifexpr: {{{1|1}}} > 1 }}
| {{column-width|{{#if:1|{{{1}}}}}}}
| {{column-count|{{#if:1|{{{1}}}}}}} }}
| {{#if: {{{colwidth|}}}
| {{column-width|{{{colwidth}}}}} }} }}"><!--
-->{{#if: {{{indent|}}}
| <dl style="text-indent: -{{{indentsize|3.2}}}em;">}}<!--
-->{{#if: {{{normalfont|}}}
| [[Κατηγορίαν:Σελίδες που χρησιμοποιούν το refbegin με παράμετρο normalfont]]}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
2tt57bj7v0pab88o0h11lkdb1ez235y
Πρότυπον:Refend
10
3608
37372
2025-12-20T11:58:04Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly></dl></div></includeonly><noinclude>{{τεκμηρίωση προτύπου}}</noinclude>'
37372
wikitext
text/x-wiki
<includeonly></dl></div></includeonly><noinclude>{{τεκμηρίωση προτύπου}}</noinclude>
afx4jwhkeiskjbti6t1llnbkmzxvht7
Πρότυπον:Refn
10
3609
37373
2025-12-20T11:58:46Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#if:{{{name|}}}|{{#tag:ref|{{{1|}}}|name={{{name|}}}|group={{{group|}}}}}|{{#tag:ref|{{{1|}}}|group={{{group|}}}}}}}</includeonly><noinclude>{{documentation}}</noinclude>'
37373
wikitext
text/x-wiki
<includeonly>{{#if:{{{name|}}}|{{#tag:ref|{{{1|}}}|name={{{name|}}}|group={{{group|}}}}}|{{#tag:ref|{{{1|}}}|group={{{group|}}}}}}}</includeonly><noinclude>{{documentation}}</noinclude>
2a2eeavz2199wauqxgzsd7yejztz72x
Πρότυπον:Efn
10
3610
37374
2025-12-20T11:59:41Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#if:{{{name|}}} |{{#tag:ref|{{{1|{{{reference|{{{content|{{{text|}}}}}}}}}}}}|name={{{name|}}}|group={{#switch: {{{group|}}} | note | upper-alpha | upper-roman | lower-alpha | lower-greek | lower-roman = {{{group|}}} | #default = lower-greek }} }} |{{#tag:ref|{{{1|{{{reference|{{{content|{{{text|}}}}}}}}}}}}|group={{#switch: {{{group|}}} | note | upper-alpha | upper-roman | lower-alph...'
37374
wikitext
text/x-wiki
<includeonly>{{#if:{{{name|}}}
|{{#tag:ref|{{{1|{{{reference|{{{content|{{{text|}}}}}}}}}}}}|name={{{name|}}}|group={{#switch: {{{group|}}}
| note
| upper-alpha
| upper-roman
| lower-alpha
| lower-greek
| lower-roman = {{{group|}}}
| #default = lower-greek
}}
}}
|{{#tag:ref|{{{1|{{{reference|{{{content|{{{text|}}}}}}}}}}}}|group={{#switch: {{{group|}}}
| note
| upper-alpha
| upper-roman
| lower-alpha
| lower-greek
| lower-roman = {{{group|}}}
| #default = lower-greek
}}
}}
}}</includeonly><noinclude>
{{τεκμηρίωση προτύπου}}
</noinclude>
39dqosvqkggzaqynnn1je2bd314nok8
Πρότυπον:Sfn
10
3611
37375
2025-12-20T12:00:44Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly>{{#invoke:Footnotes|sfn}}</includeonly><noinclude>{{Τεκμηρίωση προτύπου}}<templatedata> { "params": { "1": { "label": "Επίθετο συγγραφέα", "type": "content", "required": true }, "2": { "label": "Χρονολογία", "description": "Χρόνος (ή δεύτερος συγγραφέας)", "type": "string", "required": true }, "p": { "label": "σελίδα(ες)",...'
37375
wikitext
text/x-wiki
<includeonly>{{#invoke:Footnotes|sfn}}</includeonly><noinclude>{{Τεκμηρίωση προτύπου}}<templatedata>
{
"params": {
"1": {
"label": "Επίθετο συγγραφέα",
"type": "content",
"required": true
},
"2": {
"label": "Χρονολογία",
"description": "Χρόνος (ή δεύτερος συγγραφέας)",
"type": "string",
"required": true
},
"p": {
"label": "σελίδα(ες)",
"description": "Αριθμός σελίδας/σελίδων",
"type": "string",
"suggested": true
}
},
"description": "Δημιουργεί παραπομπή σε βιβλίο",
"paramOrder": [
"1",
"2",
"p"
]
}
</templatedata></noinclude>
tjiccfbnyk6nj42hqb2odm5bojltgkk
Πρότυπον:Talk other
10
3612
37392
2025-12-20T13:44:18Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#switch: <!--If no or empty "demospace" parameter then detect namespace--> {{#if:{{{demospace|}}} | {{lc: {{{demospace}}} }} <!--Use lower case "demospace"--> | {{#ifeq:{{NAMESPACE}}|{{TALKSPACE}} | talk | other }} }} | talk = {{{1|}}} | other | #default = {{{2|}}} }}<!--End switch--><noinclude> {{τεκμηρίωση προτύπου}} <!-- Add categories and interwikis to the /doc subpage, not here! --> </noinclude>'
37392
wikitext
text/x-wiki
{{#switch:
<!--If no or empty "demospace" parameter then detect namespace-->
{{#if:{{{demospace|}}}
| {{lc: {{{demospace}}} }} <!--Use lower case "demospace"-->
| {{#ifeq:{{NAMESPACE}}|{{TALKSPACE}}
| talk
| other
}}
}}
| talk = {{{1|}}}
| other
| #default = {{{2|}}}
}}<!--End switch--><noinclude>
{{τεκμηρίωση προτύπου}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
ste43e1ecy8mlzl94zfdid4gme73fes
Πρότυπον:TemplatePAGENAME
10
3613
37393
2025-12-20T13:46:21Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '{{#ifexist:{{#rel2abs:./τεκμηρίωση}}|{{PAGENAME}}|{{BASEPAGENAME}}}}<noinclude> {{τεκμηρίωση προτύπου}} </noinclude>'
37393
wikitext
text/x-wiki
{{#ifexist:{{#rel2abs:./τεκμηρίωση}}|{{PAGENAME}}|{{BASEPAGENAME}}}}<noinclude>
{{τεκμηρίωση προτύπου}}
</noinclude>
j2w70lq8e83rcn1medykwramt0x8iaf
Πρότυπον:Template example row
10
3614
37394
2025-12-20T13:47:12Z
Εὐθυμένης
2777
Καινούρεον σελίδαν με '<includeonly><tr><td><code>{{{{TemplatePAGENAME}}<!-- -->{{#if:{{{1|}}}||{{{1}}}}}<!-- -->{{#if:{{{2|}}}||{{{2}}}}}<!-- -->{{#if:{{{3|}}}||{{{3}}}}}<!-- -->{{#if:{{{4|}}}||{{{4}}}}}<!-- -->{{#if:{{{5|}}}||{{{5}}}}}<!-- -->{{#if:{{{6|}}}||{{{6}}}}}<!-- -->{{#if:{{{7|}}}||{{{7}}}}}<!-- -->{{#if:{{{8|}}}||{{{8}}}}}<!-- -->{{#if:{{{9|}}}||{{{9}}}}}<!-- -->}}</code></td><td> {{#if:{{{9|}}}...'
37394
wikitext
text/x-wiki
<includeonly><tr><td><code>{{{{TemplatePAGENAME}}<!--
-->{{#if:{{{1|}}}||{{{1}}}}}<!--
-->{{#if:{{{2|}}}||{{{2}}}}}<!--
-->{{#if:{{{3|}}}||{{{3}}}}}<!--
-->{{#if:{{{4|}}}||{{{4}}}}}<!--
-->{{#if:{{{5|}}}||{{{5}}}}}<!--
-->{{#if:{{{6|}}}||{{{6}}}}}<!--
-->{{#if:{{{7|}}}||{{{7}}}}}<!--
-->{{#if:{{{8|}}}||{{{8}}}}}<!--
-->{{#if:{{{9|}}}||{{{9}}}}}<!--
-->}}</code></td><td>
{{#if:{{{9|}}}|{{{{TemplatePAGENAME}}|{{{1}}}|{{{2}}}|{{{3}}}|{{{4}}}|{{{5}}}|{{{6}}}|{{{7}}}|{{{8}}}|{{{9}}}}}|
{{#if:{{{8|}}}|{{{{TemplatePAGENAME}}|{{{1}}}|{{{2}}}|{{{3}}}|{{{4}}}|{{{5}}}|{{{6}}}|{{{7}}}|{{{8}}}}}|
{{#if:{{{7|}}}|{{{{TemplatePAGENAME}}|{{{1}}}|{{{2}}}|{{{3}}}|{{{4}}}|{{{5}}}|{{{6}}}|{{{7}}}}}|
{{#if:{{{6|}}}|{{{{TemplatePAGENAME}}|{{{1}}}|{{{2}}}|{{{3}}}|{{{4}}}|{{{5}}}|{{{6}}}}}|
{{#if:{{{5|}}}|{{{{TemplatePAGENAME}}|{{{1}}}|{{{2}}}|{{{3}}}|{{{4}}}|{{{5}}}}}|
{{#if:{{{4|}}}|{{{{TemplatePAGENAME}}|{{{1}}}|{{{2}}}|{{{3}}}|{{{4}}}}}|
{{#if:{{{3|}}}|{{{{TemplatePAGENAME}}|{{{1}}}|{{{2}}}|{{{3}}}}}|
{{#if:{{{2|}}}|{{{{TemplatePAGENAME}}|{{{1}}}|{{{2}}}}}|
{{#if:{{{1|}}}|{{{{TemplatePAGENAME}}|{{{1}}}}}|
{{ {{TemplatePAGENAME}} }}
}}}}}}}}}}}}}}}}}}
</td>{{#if:{{{notes|}}}|<td>{{{notes}}}</td>}}</tr></includeonly><noinclude>
{{τεκμηρίωση προτύπου}}
</noinclude>
twh684x1c3ee3m8d5mi19988cyfndx6
Σ' άλλα γλώσσας
0
3615
37408
2025-12-30T21:58:38Z
Таёжный лес
10003
Ο Таёжный лес μετακίνησε τη σελίδα [[Σ' άλλα γλώσσας]] στην [[Πρότυπον:Σ' άλλα γλώσσας]]
37408
wikitext
text/x-wiki
#ΑΝΑΚΑΤΕΥΘΥΝΣΗ [[Πρότυπον:Σ' άλλα γλώσσας]]
kz6wjl6csdked87lv2x26oa0jm1k746