Seolah-olah Paratext 8 memiliki masalah dalam memigrasi glosa interlinear jika Anda menggunakan Interlinearizer di versi 7 untuk mengglosa teks menggunakan Yunani Perjanjian Baru sebagai teks model Anda. Seorang pengguna meminta bantuan dalam situasi ini, dan saya melihat bahwa setelah migrasi, kode bahasa di lexicon.xml dan di file glosa per buku adalah “el” sementara kode untuk Yunani PB seharusnya “grc”. (Dalam proyek uji, saya mengglosa beberapa kata dalam bahasa Yunani, lalu memigrasi, dan dalam proyek yang dimigrasi ini, kode untuk Yunani PB menjadi “lbj”, kode untuk bahasa dari India. Saya telah melaporkan masalah ini kepada para pengembang).
Kode bahasa digunakan di tiga tempat dalam data interlinearizer.
- Di dalam file lexicon.xml, di bidang “Gloss Language”. Bidang ini muncul untuk setiap kata yang diberi glosa dalam bahasa tersebut.
- di nama subfolder dan nama file dari file interlinearizer per buku. Misalnya, “interlinearizer_el_MAT.xml” adalah file untuk glosa dalam bahasa “el” untuk Matius.
- Di dalam setiap file per buku, di bidang glossLanguage di baris kedua file.
Bagaimana saya mengetahui bahwa “grc” adalah kode yang benar untuk Yunani PB? Saya mengglosa satu kata di Paratext 8 dengan Yunani sebagai model, menyimpan perubahan tersebut lalu melihat file-filenya.
Maka untuk mengonversi data ini secara manual, saya melakukan:
0) tutup Paratext jika sedang terbuka
-
cari-ganti di lexicon.xml, dan ganti “el” dengan “grc”, misalnya:
<Gloss Language="el">δέ</Gloss>
menjadi
<Gloss Language="grc">δέ</Gloss>
Untuk membatasi perubahan hanya pada kode dan bukan string “el” di dalam kata yang lebih besar, sertakan tanda kutip (tanda kutip ganda lurus) dalam string pencarian dan dalam string penggantian.
2a) ubah nama folder “Interlinear_el” di dalam folder proyek menjadi “Interlinear_grc”. (Jika Anda telah membuat file uji dalam kode yang diinginkan, Anda harus menghapus folder dan file-nya terlebih dahulu).
2b) ubah nama file di dalam folder ini dari "Interlinear_el_[Bookcode].xml menjadi "Interlinear_grc_[Bookcode].xml
-
ubah kode Glosslanguage di baris kedua dari setiap file per buku menjadi kode yang diinginkan. Misalnya
<InterlinearData ScrTextName="MP8" GlossLanguage="el" BookId="MAT">
becomes
<InterlinearData ScrTextName="MP8" GlossLanguage="grc" BookId="MAT">
-
Mulai Paratext dan lihat apakah berhasil.
Saat mengedit file XML, pastikan Anda tidak mengubah kode < atau > atau </ atau />, ini seperti backslash dalam USFM. Jika Anda membuat kesalahan, Paratext mungkin akan menolak lexicon.xml yang Anda edit dan mengubah namanya menjadi lexicon.xmlcorrupt, dan mulai membuat yang baru. Jika Anda menyimpan salinan file lexicon.xml Anda di lokasi lain sebelum mengedit, Anda bisa mengembalikannya jika Anda mengalami masalah ini dan tidak dapat mengidentifikasi apa yang salah di file yang Anda edit.
It seems that Paratext 8 has a problem migrating interlinear glosses if you use the Interlinearizer in 7 to gloss text using the NT Greek as your model text. A user asked for help in this situation, and I saw that after migration, the language code in the lexicon.xml and in the per-book gloss files was “el” while the code for NT greek should be “grc”. (In a test project, I glossed a few words in Greek, then migrated, and in this migrated project, the code for NT Greek became “lbj”, the code for a language from India. I have reported this issue to the developers).
The language code is used in three places in the interlinearizer data.
- Inside the lexicon.xml file, in the “Gloss Language” field. This field occurs for every word that is given a gloss in that language.
- in the subfolder name and the file name of the per-book interlinearizer file. For example, “interlinearizer_el_MAT.xml” is the file for glosses in the “el” language for Matthew.
- Inside each per-book file, in the glossLanguage field in the second line of the file.
How did I find out that “grc” was the right code for NT greek? I glossed one word in Paratext 8 with Greek as the model, saved the change then looked at the files.
So to manually convert this data, I did:
0) close Paratext if it is open
-
a search-replace of lexicon.xml, and replaced “el” with “grc”, for example:
<Gloss Language="el">δέ</Gloss>
becomes
<Gloss Language="grc">δέ</Gloss>
To limit the change just to the codes and not any “el” strings inside a larger word, include the quote marks (straight double quotes) in the search string and in the replace string.
2a) change the name of the “Interlinear_el” folder inside the project folder to “Interlinear_grc”. (If you’ve created a test file in the desired code, you would delete the folder and its file first).
2b) change the file names inside this folder from "Interlinear_el_[Bookcode].xml to "Interlinear_grc_[Bookcode].xml
-
change the Glosslanguage code in the second line of each per-book file to the desired code. For instance
<InterlinearData ScrTextName="MP8" GlossLanguage="el" BookId="MAT">
becomes
<InterlinearData ScrTextName="MP8" GlossLanguage="grc" BookId="MAT">
-
Start Paratext and see if it worked.
When editing the XML files, make sure you don’t change any < or > or </ or /> codes, these are like backslashes in USFM. If you make a mistake, Paratext may reject your edited lexicon.xml and change its name to lexicon.xmlcorrupt, and start creating a new one. If you save a copy of your lexicon.xml file in another location before editing, you could bring that back if you hit this problem and cannot identify what went wrong in your edited file.
Diterjemahkan secara otomatis dari English