Wikipedia:WikiProjek Penukar Tulisan/Perkembangan teknikal
Berikut merupakan pendokumenan berkaitan perkembangan teknikal penukar tulisan untuk sesuatu bahasa. Laman ini akan ditambah lebih banyak bahagian untuk penukar tulisan bahasa lain jika terdapat keperluan.
Perancangan jangka masa panjang
sunting- Menyempurnakan segala fungsi penukar tulisan bahasa Melayu supaya sama ada menjadikan alat penukar tulisan ini gajet bawah ruang nama MediaWiki, atau sehingga boleh diintergrasikan dengan LanguageConverter (penukar tulisan legasi), atau digantikan dengan penukar tulisan MediaWiki generasi baharu (pautan).
- Menambah lebih banyak pilihan penukaran tulisan bahasa Melayu, bukan setakat ms dan ms-arab semata-mata.
- Membina penukar tulisan untuk bahasa-bahasa lain yang menggunakan dua atau lebih banyak jenis sistem tulisan, contohnya seperti bahasa Melayu Kelantan-Pattani.
- Membina penukar antara dialek, contohnya seperti penukar dialek Melaka-Selangor-Johor.
Penukar tulisan bahasa Melayu
suntingSekitar tahun 2013, pengguna Algazel telah memperkenalkan penukar tulisan Rumi-Jawi yang dibangun oleh pengguna Kurniasan di laman WikiProjek Jawi, namun disebabkan sudah lama tidak diselenggara (kali terakhir diselenggara pada 3 April 2015), maka kod penukar tulisan itu ada potensi untuk mempunyai hutang teknikal yang agak berat. Hal ini jelas apabila penukar tulisan tersebut berfungsi dengan kelajuan penukaran tulisan yang agak perlahan, serta kamus Javascript yang tersimpan pada laman ruang nama Pengguna: juga tidak dapat menampung kosa kata padanan Rumi-Jawi yang semakin lama semakin banyak.
Selain daripada usaha oleh pengguna Kurniasan, terdapat juga pengguna aktif di Wikipedia Bahasa Melayu yang mencari alternatif lain. Antaranya adalah seperti meminta bantuan daripada pasukan LanguageConverter untuk membangun penukar tulisan untuk bahasa Melayu, namun kelihatannya seperti tiada kemajuan selama lebih daripada 4 tahun. Pada 13 Julai 2024 juga terdapat pengguna yang membangun kod Templat:Multiscript untuk mewujudkan versi alternatif rencana tulisan Jawi, namun pada masa yang sama terdapat pengguna yang menyatakan kerisauan pada laman perbincangan berpusat (Kedai Kopi Wikipedia Bahasa Melayu) akan penggunaan templat ini disebabkan pelbagai aspek seperti kekurangan sukarelawan aktif untuk memantau penciptaan rencana dalam tulisan Jawi serta kekurangan tenaga mahir untuk mengawal selia kualiti rencana bertulisan Jawi. Terdapat juga pengguna yang pernah membangun perisian "WikiJawi" di Toolforge, namun disebabkan masalah teknikal perisian ini terpaksa ditutup, dan pada tahun 2024 terdapat permintaan daripada pengguna Wikipedia Bahasa Melayu untuk mengambil alih semula perisian WikiJawi ini, namun tidak ada sebarang respons buat masa ini.
Disebabkan terdapat desakan serta kekhuatiran tiadanya kemajuan dari segi perkembangan penukar tulisan terutamanya untuk bahasa Melayu, maka terdapat usaha percubaan untuk membina alat penukar tulisan, sehingga wujudnya empat jenis prototaip penukar tulisan, yang masing-masing dikenali sebagai jenis Aksara, jenis Kamus, jenis Hibrid dan jenis Wikidata. Tujuan kewujudan empat jenis prototaip ini adalah untuk menguji keupayaan penukaran sistem tulisan itu berjalan, dan perbandingan antara keempat-empat jenis alat penukar adalah seperti pada Jadual 1 berikut:
Jenis Aksara (ilham daripada LanguageConverter) | Jenis Kamus (ilham daripada penukar tulisan Kurniasan) | Jenis Hibrid | Jenis Wikidata | |
---|---|---|---|---|
Prinsip pemetaan | Huruf-demi-huruf | Kata-demi-kata, data perkamusan diambil secara langsung daripada fail kamus Javascript di Github | Kamus kosa kata tetapi menyimpan dalam bentuk perantara titik kod (codepoint) huruf-nombor, kemudian pemetaan perantara-ke-huruf
Contohnya: ejaan Rumi “ayam” > bentuk perantara “A1Y0M0” > ejaan Jawi “ايم”. |
Menukar tulisan kata-demi-kata, data perkamusan diambil secara langsung daripada Wikidata melalui Sistem Khidmat Kueri Wikidata (WDQS) |
Keutamaan penukaran | Tidak ada, sebab pertukaran dilakukan secara langsung | Ada, (1) Kosa kata kamus; (2) Imbuhan awalan dan akhiran | Ada, (1) Kosa kata kamus; (2) Imbuhan awalan dan akhiran; (3) Semua huruf rumi individu yang belum ditukar | Ada (1) Semua bentuk nombor matematik dengan titik angka perpuluhan dan koma pemisah ribuan perlu kekal seperti sedia ada; (2) Bentuk frasa melalui JSON janaan WDQS; (3) Kata mengandungi tanda apostrof melalui JSON janaan WDQS; (4) Bentuk kata mengandungi sempang melalui JSON janaan WDQS; (5) Semua kata tunggal lain melalui JSON janaan WDQS tanpa mengira kedudukan tanda baca; (6) Peraturan khas untuk "ke" dan "di" (7) Penukaran tanda baca melalui penukar tulisan itu sendiri. Hal ini supaya mengelakkan tanda-tanda yang menunjukkan nilai angka nombor matematik ditukar. |
Kelajuan penukaran | Sangat pantas | Sangat perlahan | Perlahan | Pantas |
Ketepatan penukaran | Rendah | Tinggi | Sederhana, bergantung sama ada kosa kata itu telah ada dalam fail kamus Javascript atau tidak. | Sepatutnya tinggi, tetapi bergantung kepada ketepatan data perkamusan di Wikidata. |
Keupayaan penukaran imbuhan awalan dan akhiran | Tidak ada | Ada | Ada | Tidak ada - semua bentuk berimbuhan disimpan secara langsung dalam unit “bentuk leksem” (lexical forms) di Wikidata. |
Kelajuan memproses imbuhan awalan dan akhiran | Tiada kaitan | Perlahan | Perlahan | Tiada kaitan. |
Keupayaan membuang aksara jarak (whitespace character) apabila bentuk tunggal "ke" dan "di" bertemu dengan perkataan seterusnya | Tidak dikemas kini untuk mengendalinya | Boleh hanya sekiranya perkataan seterusnya itu tidak berpautan. Kalau ke/di tidak berpautan tetapi perkataan seterusnya itu berpautan, maka tidak boleh. | ||
Keupayaan penukaran tanda baca | Secara rawak | Keutamaan kepada data perkamusan dahulu, kemudian secara rawak | Keutamaan kepada data perkamusan dahulu, kemudian secara rawak | Keutamaan melalui penukar tulisan dahulu, kemudian secara rawak |
Kegoyahan keselamatan | Rendah | Tinggi, kerana pengaksesan fail kamus Javascript secara langsung daripada Github | Rendah, kerana pengaksesan data perkamusan melalui fail JSON janaan WDQS | |
Reka bentuk antara muka penukar | Tidak ada piawai, dan tidak bersesuaian dengan paparan mod gelap | Mengikut piawai yang ditetapkan oleh Panduan Gaya Reka Bentuk Codex untuk Wikimedia dan mesra paparan mod gelap | ||
Paparan mudah alih (rupa Minerva Neue) | Tidak ada | Sudah ada, rujuk laman ini. |
Dalam kesemua jenis prototaip ini, jenis Wikidata diberi keutamaan disebabkan data perkamusan yang tersimpan di Wikidata boleh dimuat jauh lebih pantas berbanding penukar tulisan jenis Kamus dan jenis Hibrid, serta kesahihan data yang sentiasa boleh disemak semula dari masa-ke-masa oleh komuniti pengguna Wikidata. Prinsip di sebalik penukar tulisan jenis Wikidata ini adalah dengan menggunakan WDQS untuk menjana hasil kueri data perkamusan dalam format JSON, kemudian penukaran tulisan dibuat mengikut keutamaan.
Penukar tulisan jenis Wikidata ini bukanlah bermaksud ia sempurna sama sekali. Berbanding penukar tulisan Kurniasan, penukar tulisan ini tidak dapat menganalisis morfologi awalan dan akhiran yang ada pada sesuatu kata. Namun fungsi analisis morfologi ini sebenarnya memakan memori untuk memproses, dan hal ini telah digantikan dengan penambahan bentuk ejaan leksem secara langsung ke dalam data perkamusan Wikidata yang lebih stabil secara teknikalnya.
Keempat-empat prototaip model penukar tulisan pada Jadual 2 serta model penukar tulisan yang dibina oleh Kurniasan mempunyai kekangan yang sama seperti berikut:
Masalah | Cadangan penyelesaian |
---|---|
Penukaran sehala (hanya daripada ms ke ms-arab) | Penukaran ini boleh menjadi dwihala apabila penukar tulisan ini diterapkan ke dalam LanguageConverter. |
Tidak boleh mengendali homograf | Boleh cuba diselesaikan apabila penukar tulisan ini diterapkan ke dalam LanguageConverter. |
Tidak boleh mewujudkan bentuk hamzah tiga suku | Kekangan sistem. Terdapat cadangan supaya Yayasan Wikimedia mengusahakan penamabahan hamzah tiga suku ke dalam sistem Unicode, tetapi masih dalam proses perbincangan. Boleh juga cuba untuk guna Templat:Hamzahtigasuku namun terdapat kekangan untuk menggantikannya melalui Javascript. |
Kekurangan upaya untuk mentransliterasi mesej sistem Wikipedia daripada bentuk ms ke ms-arab | Boleh cuba diselesaikan apabila penukar tulisan ini diterapkan ke dalam LanguageConverter.
Buat masa sekarang pilihan bahasa mesej sistem Wikipedia sudah ada pada penukar jenis Wikidata tetapi terpisah (dalam bentuk "Penukar antara muka") dengan pilihan "Penukar tulisan". |
Paparan UI tidak dapat berubah konfigurasi kiri-ke-kanan (LTR) menjadi kanan-ke-kiri (RTL) | Boleh cuba diselesaikan apabila penukar tulisan ini diterapkan ke dalam LanguageConverter.
Buat masa sekarang fungsi konfigurasi LTR ke RTL untuk antara muka (bergabung dengan fungsi perubahan mesej sistem Wikipedia pada "Penukar antara muka") sudah ada pada penukar jenis Wikidata tetapi terpisah dengan fungsi konfigurasi LTR ke RTL untuk tajuk dan teks kandungan rencana utama (bergabung dengan "Penukar tulisan"). |
Pengecualian penukaran huruf-ke-huruf sebab kesamaran dari segi prinsip padanan inisialisme dan abjad tunggal | Perlu perbincangan lanjut untuk penyelesaian. |
Penggunaan peranti mudah alih (seperti telefon pintar atau komputer tablet) | Versi mudah alih sudah ada untuk penukar jenis Wikidata, tetapi masih belum ada untuk aplikasi Wikipedia (yang muat turun melalui Google App Store atau Apple App Store). |
Walaupun begitu, penukar tulisan jenis Wikidata ini mempunyai potensi yang lebih besar berbanding kesemua model penukar tulisan yang dikaji untuk menampung pertukaran variasi antara dialek, dengan syarat variasi tersebut mempunyai kerangka tatabahasa yang sama dengan bahasa sasaran yakni bahasa Melayu.