Ez a modul urdu nyelvű szöveg átírására szolgál.

Ezt a modult lehetőleg nem kellene közvetlenül más sablonokból vagy modulokból hívni. Sablonból az {{xlit}}(?) segédsablon, modulból pedig a Module:languages#Language:transliterate metódus használandó.

Függvények

szerkesztés
tr(text, lang, sc)
Átírja a text szöveg sc kódú írásrendszerrel írott és lang nyelvű részét. Ha az átírás sikertelen, nilt ad vissza.

Background

szerkesztés

THIS WILL REQUIRE DIACRITICS (USED CORRECTLY), Diacritics can be found at http://udb.gov.pk (which is NOT always correct). This should work correctly for majority of the work, although is still in progress.

Read #Usage notes for tips on how to use the module correctly:

Usage notes

szerkesztés
  1. All consonants must be paired to a vowel (a, i, u, ā, e, ī, o, ū) or a sukoon/jazm. Or else the module will return NIL (blank).
  2. Alif MUST be paired to either a consonant or a vowel, or the module will return NIL.
    if paired to a vowel, the alif will represent the vowel. If paired to a consonant, alif will represent "ā". If an initial alif is not paired to a vowel, the module will return nill.
    compare the pairings نا‎, اَن‎, اُن‎, and اِن‎.
  3. Whenever there are two adjacent semivowels, the first semivowel will become the consonant and the second will be the vowel. To reverse that order, simply put a sukoon on the second semivowel.
    baṛī ye (e, ai) and choṭī ye (ī, y) are distinguished medically using diacritics. However in the final position choṭī ye is always -ī (since choṭī ye cannot be "y" in the final position), and a final baṛī ye defaults to -ē but can become -ai with a preceding zabar.
    If, for some reason, a final choṭī ye needs to be a "y", put a sukoon on it.
  4. Noon ghunna ـن٘ـ/ـں generally represents a nasal vowel. The only exceptions being when a nasal vowel isn't possible (in Urdu), such as before b, bh, j, jh, g, gh, ḍh, dh, th, q (and before kh, ṭh, ṭ and ph, unless the nasal vowel is ā, ī, or ū). Since it is impossible for a nasal vowel to appear before these sounds, the module will return an assimilated nasal.
    1. If a nasal vowel is not desired, use a sukoon to return a regular noon.
    2. If ghunna is occurring after ā, ī, or ū but needs to assimilate with ph or kh, the assimilation must be manually entered. Since unlike all other vowels, ā, ī, and ū can actually be nasalized before these letters. For all consonants not mentioned, nasal assimilation can be predicted with only a jazm/sukoon (if it even occurs).
      • Noon ghunna assimilating with "k" is not as common in Urdu as it is in Hindi, it mainly appears in english loanwords (and only at the end of a word). In which case the assimilation can be predicted with a sukoon/jazm. This assimilation should disappear if the word is inflected. Compare بَینْک‎ to بَین٘کوں
  5. The aspirate 'he' (i.e. do-chashme-he, ھ) does NOT need ANY DIACRITICS in ANY CIRCUMSTANCES, all diacritics should either go on the previous letter or on the following letter.
    The module will work regardless but based on common practice putting a vowel on the aspirate ھ would be inappropriate.
  6. The Tashdeed/Shadda works with another diacritic, as well as alone
  7. The Sukoon/Jazm diacritic is required for consonant clusters, or else the module will return NIL
  1. require an initial alif to be paired to a vowel (either a diacritic or vao/ye). needed to prevent false positives
  2. support for al- assimilation in Arabic loanwords.
    • how will we distinguish an initial al- in non arabic words? This is probably impossible and might not happen.
  3. DIFFERENCE BETWEEN ṇ, ṅ, ñ AND n .
  4. Detect when transliteration is needed and when not (i.e. if diacritics are present/needed or not)
  5. izafa/ezafe support
  6. Revert the module to transliterate initial "ای" as 'ē'
  7. اَللہ = sort out ہ + khari zabar diacritic
  8. transliteration detection often gives false positives

Test Urdu:

تَرْکِ تَعَلُقّات پِہ رویا نَہ تُو نَہ مَیں لیکِن یِہ کْیا کَہ چَین سے سویا نَہ تُو نَہ مَیں

وُہ ہَمْسَفَر تھا مَگَر اُس سے ہَمْنَوَائی نَہ تھی کَہ دُھوپ چھاؤں کا عالَم رَہا جُدائی نَہ تھی

عَداوَتیں تِھیں، تَغافُل تھا رَنْجِشیں تِھیں مَگَر بِچَھڑْنے والے میں سَب کُچھ تھا بے وَفائی نَہ تھی

کاجَل ڈالو کُرْکُرا سُرْمَہ سَہا نَہ جائے جِن نَین میں پِی بَسے دُوجا کَون سَمائے؟

بِچَھڑْتے وَقْت اُن آن٘کھوں میں تھی ہَماری غَزَل غَزَل تھی وُہ جو کِسی کو کَبھی سُنائی نَہ تھی

Result:

tark-i ta'aluqqāt pe royā na tū na ma͠i lekin ye kyā ka cain se soyā na tū na ma͠i

vo hamsafar thā magar us se hamnavāī na thī ka dhūp chāõ kā 'ālam rahā judāī na thī

'adāvatẽ thī̃, taġāful thā rañjiśẽ thī̃ magar bichaṛne vāle mẽ sab kuch thā be vafāī na thī

kājal ḍālo kurkurā surma sahā na jāe jin nain mẽ pī base dūjā kaun samāe?

bichaṛte vaqt un ā̃khõ mẽ thī hamārī ġazal ġazal thī vo jo kisī ko kabhī sunāī na thī

Expected:

tark-i ta'aluqqāt pe royā na tū na ma͠i lekin ye kyā ka cain se soyā na tū na ma͠i

vo hamsafar thā magar us se hamnavāī na thī ka dhūp chāõ kā 'ālam rahā judāī na thī

'adāvatẽ thī̃, taġāful thā rañjiśẽ thī̃ magar bichaṛne vāle mẽ sab kuch thā be vafāī na thī

kājal ḍālo kurkurā surma sahā na jāe jin nain mẽ pī base dūjā kaun samāe?

bichaṛte vaqt un ā̃khõ mẽ thī hamārī ġazal ġazal thī vo jo kisī ko kabhī sunāī na thī

Test cases

szerkesztés

4 teszt sikertelen. (frissítés)

Szöveg Várt Tényleges Első eltérés
test_translit_urdu:
  اِیرانِی īrānī īrānī
  ماشاءاَللّٰہ māśā'allāh māśā'allāh
  پَیدائِش paidāiś paidāiś
  بَرْقِیات barqiyāt barqiyāt
  عَقْل 'aql 'aql
  عِزَّت 'izzat 'izzat
  عَین 'ain 'ain
  عالَم 'ālam 'ālam
  عَورَت 'aurat 'aurat
  شُرُوع śurū' śurū'
  اِشْعاع iś'ā' iś'ā'
  تَعَلُّقات ta'alluqāt ta'alluqāt
  تَعَلُّق ta'alluq ta'alluq
  مُتَعَلِّق muta'alliq muta'alliq
  متعلق (nil) (nil) N/A
  عُمْر 'umr 'umr
  دَفْعَہ daf'a daf'a
  بَچَّہ bacca bacca
  قُوَّت quvvat quvvat
  مَۓ عِشْق ma-ye 'iśq ma-ye 'iśq
  شیرِ پَنْجاب śer-i pañjāb śer-i pañjāb
  مَلْکَۂ دُنْیا malka-yi dunyā malka-yi dunyā
  جَمُّوں jammū̃ jammū̃
  آم ām ām
  اِشْتِراکِیَّت iśtirākiyyat iśtirākiyyat
  سِسَکْنا sisaknā sisaknā
  پُل pul pul
  عِیسیٰ 'īsā 'īsā
  اَعْلیٰ a'lā a'lā
  لَفْظ lafz lafz
  حاضِر hāzir hāzir
  بَہورا bahorā bahorā
  نَہِیں nahī̃ nahī̃
  اِشْتِمالِیَت iśtimāliyat iśtimāliyat
  چَوڑا cauṛā cauṛā
  تِھیں thī̃ thī̃
  کُتّا kuttā kuttā
  پَہْلے pahle pahle
  کِھلائی khilāī khilāī
  کھلائی (nil) (nil) N/A
  ٹَھہَرْنا ṭhaharnā ṭhaharnā
  تَیمُور taimūr taimūr
  فَوراً fauran fauran
  کوئے koe koe
  مَنَّتوں mannatõ mannatõ
  گان٘وں gā̃õ gā̃õ
  مَیں ma͠i ma͠i
  آئی āī āī
  مَکَّھن makkhan makkhan
  خُدا xudā xudā
  کَئی kaī kaī
  کُئی kuī kuī
  چائے cāe cāe
  کُھلْواؤ khulvāo khulvāo
  غَدّار ġaddār ġaddār
  بَیٹھو baiṭho baiṭho
  بَطَّخ battax battax
  مُتَّحِدَۂ muttahida-yi muttahida-yi
  ساؤُتھ اَفْرِیقَہ sāuth afrīqa sāuth afrīqa
  کُلِّیَّہ kulliyya kulliyya
  دائِرَۃُ dāiratu dāiratu
  سُورَۃ sūra sūra
  بِلّا billā billā
  دائِرَۃُ الْمَعارِف dāiratu l-ma'ārif dāiratu اlma'ārif 9
  دائِرَۃْ اُلْمَعارِف dāirat ulma'ārif dāirah ulma'ārif 6
  آیَت اُللّٰہ āyat ullāh āyat ullāh
  صَیّاد sayyād saiyād 3
  کہاں (nil) khā̃ N/A