App-Greple-xlate

 view release on metacpan or  search on metacpan

i18n/src/xlate.deepl-ID.pod  view on Meta::CPAN

    pandoc-embedz --standalone report-template.EN.md \
                  -c case-123.yaml -o report-123.EN.md < /dev/null

Untuk tanda-tanda inline, menyediakan konfigurasi definisi makro akan membuat templat terjemahan yang sama menampilkan nama asli atau versi yang disunting:

    # macros.yaml           # macros-redacted.yaml
    preamble: |             preamble: |
      {% macro person(name) %}{{ name }}{% endmacro %}
                              {% macro person(name) %}(関係者){% endmacro %}

Kecualikan blok embedz dari terjemahan jika dokumen mengandungnya:

    --exclude '^```embedz\n(?s:.*?)^```\n'

=head1 OPTIONS

=over 7

=item B<--xlate>

=item B<--xlate-color>

=item B<--xlate-fold>

=item B<--xlate-fold-width>=I<n> (Default: 70)

Memanggil proses penerjemahan untuk setiap area yang cocok.

Tanpa opsi ini, B<greple> berperilaku sebagai perintah pencarian biasa. Jadi, Anda dapat memeriksa bagian mana dari file yang akan menjadi subjek terjemahan sebelum memanggil pekerjaan yang sebenarnya.

Hasil perintah akan keluar ke standar, jadi alihkan ke file jika perlu, atau pertimbangkan untuk menggunakan modul L<App::Greple::update>.

Opsi B<--xlate> memanggil opsi B<--xlate-color> dengan opsi B<--color=never>.

Dengan opsi B<--xlate-fold>, teks yang dikonversi akan dilipat dengan lebar yang ditentukan. Lebar default adalah 70 dan dapat diatur dengan opsi B<--xlate-fold-width>. Empat kolom dicadangkan untuk operasi run-in, sehingga setiap baris dapat menampu...

=item B<--xlate-engine>=I<engine>

Menentukan mesin terjemahan yang akan digunakan.

Pada saat ini, mesin berikut ini tersedia

=over 2

=item * B<gpt5>: gpt-5.5 (via the C<llm> command)

=item * B<deepl>: DeepL API (via the C<deepl> command)

=item * B<gpt3>: gpt-3.5-turbo (legacy, via the C<gpty> command)

=item * B<gpt4o>: gpt-4o-mini (legacy, via the C<gpty> command)

=back

Modul mesin dicari terlebih dahulu di ruang nama backend (C<llm>, lalu C<gpty>), kemudian langsung di bawah C<App::Greple::xlate>. Jadi, C<gpt5> memuat C<App::Greple::xlate::llm::gpt5> yang memanggil perintah C<llm>, sedangkan C<gpt4o> menggunakan C<...

=item B<--xlate-labor>

=item B<--xlabor>

Alih-alih memanggil mesin penerjemah, Anda diharapkan untuk bekerja. Setelah menyiapkan teks yang akan diterjemahkan, teks tersebut disalin ke clipboard. Anda diharapkan untuk menempelkannya ke formulir, menyalin hasilnya ke clipboard, dan menekan re...

=item B<--xlate-to> (Default: C<EN-US>)

Tentukan bahasa target. Mesin LLM menerima nama atau kode bahasa apa pun yang dipahami model; hal ini akan disisipkan ke dalam prompt terjemahan. Anda dapat melihat bahasa yang tersedia melalui perintah C<deepl languages> saat menggunakan mesin B<Dee...

=item B<--xlate-from> (Default: C<ORIGINAL>)

Label yang digunakan untuk teks asli dalam format keluaran C<conflict>, C<colon>, dan C<ifdef>. Dengan mesin B<DeepL>, nilai non-default juga diteruskan sebagai bahasa sumber.

=item B<--xlate-format>=I<format> (Default: C<conflict>)

Tentukan format output untuk teks asli dan terjemahan.

Format berikut ini selain C<xtxt> mengasumsikan bahwa bagian yang akan diterjemahkan adalah kumpulan baris. Pada kenyataannya, dimungkinkan untuk menerjemahkan hanya sebagian dari sebuah baris, tetapi menentukan format selain C<xtxt> tidak akan mengh...

=over 4

=item B<conflict>, B<cm>

Teks asli dan teks yang dikonversi dicetak dalam format penanda konflik L<git(1)>.

    <<<<<<< ORIGINAL
    original text
    =======
    translated Japanese text
    >>>>>>> JA

Anda dapat memulihkan file asli dengan perintah L<sed(1)> berikutnya.

    sed -e '/^<<<<<<< /d' -e '/^=======$/,/^>>>>>>> /d'

=item B<colon>, I<:::::::>

Teks asli dan terjemahan ditampilkan dalam gaya wadah khusus penurunan harga.

    ::::::: ORIGINAL
    original text
    :::::::
    ::::::: JA
    translated Japanese text
    :::::::

Teks di atas akan diterjemahkan ke dalam HTML berikut ini.

    <div class="ORIGINAL">
    original text
    </div>
    <div class="JA">
    translated Japanese text
    </div>

Jumlah titik dua adalah 7 secara default. Jika Anda menentukan urutan titik dua seperti C<:::::>, ini digunakan sebagai pengganti 7 titik dua.

=item B<ifdef>

Teks asli dan teks yang dikonversi dicetak dalam format L<cpp(1)> C<#ifdef>.

    #ifdef ORIGINAL
    original text
    #endif
    #ifdef JA
    translated Japanese text
    #endif

Anda hanya dapat mengambil teks bahasa Jepang dengan perintah B<unifdef>:

    unifdef -UORIGINAL -DJA foo.ja.pm

=item B<space>

=item B<space+>

Teks asli dan teks yang dikonversi dicetak dipisahkan oleh satu baris kosong. Untuk C<spasi+>, ini juga menghasilkan baris baru setelah teks yang dikonversi.

=item B<xtxt>

Jika formatnya adalah C<xtxt> (teks terjemahan) atau tidak diketahui, hanya teks terjemahan yang dicetak.

=back

=item B<--xlate-maxlen>=I<chars> (Default: 0)

Tentukan panjang maksimum teks yang akan dikirim ke API sekaligus. Nilai default 0 berarti batas yang ditetapkan oleh mesin itu sendiri: untuk layanan akun DeepL gratis, batasnya adalah 128K untuk API (B<--xlate>) dan 5000 untuk antarmuka clipboard (...

=item B<--xlate-maxline>=I<n> (Default: 0)

Tentukan jumlah maksimum baris teks yang akan dikirim ke API sekaligus.

Tetapkan nilai ini ke 1 jika Anda ingin menerjemahkan satu baris dalam satu waktu. Opsi ini lebih diutamakan daripada opsi C<--xlate-maxlen>.

=item B<--xlate-prompt>=I<text>

Tentukan prompt khusus yang akan dikirim ke mesin terjemahan. Opsi ini tersedia untuk mesin LLM (C<gpt3>, C<gpt4o>, C<gpt5>) tetapi tidak untuk DeepL. Anda dapat menyesuaikan perilaku terjemahan dengan memberikan instruksi spesifik kepada model AI. J...

=item B<--xlate-context>=I<text>

Tentukan informasi konteks tambahan yang akan dikirim ke mesin penerjemahan. Opsi ini dapat digunakan beberapa kali untuk memberikan beberapa string konteks. Informasi konteks membantu mesin penerjemah memahami latar belakang dan menghasilkan terjema...

=item B<--xlate-context-window>=I<n>

(Context-aware engines only, e.g. C<gpt5> on the llm backend)
Jumlah blok terjemahan di sekitarnya yang diteruskan sebagai konteks referensi saat menerjemahkan ulang blok yang diubah (default 2). Konteks ini juga mencakup teks sumber mentah di sekitar wilayah yang diubah (judul, struktur daftar, keterangan) dan...

=item B<--xlate-cache-seed>=I<file>

Menginisialisasi cache dokumen baru dari berkas cache dokumen lain. Berguna untuk laporan berkala: menginisialisasi cache edisi baru dengan cache edisi sebelumnya, sehingga paragraf yang tidak diubah tidak diterjemahkan ulang dan paragraf yang diedit...

=item B<--xlate-anonymize>=I<file>

Anonimkan string sensitif sebelum dikirim ke API terjemahan, dan pulihkan kembali dalam hasil keluaran. Berkas kamus memberikan satu entri per item: dalam format JSON (kanonik, dapat dihasilkan oleh mesin)

    [ { "category": "person",  "text": "山田太郎" },
      { "category": "company", "regex": "アクメ(株式会社)?" } ]

atau dalam format baris sederhana (C<category pattern>, C</.../> untuk regex). Setiap item diganti dengan tag kategori seperti C<< <person id=1 /> >>; string yang sama selalu mendapatkan tag yang sama, sehingga model dapat melacak identitas masing-ma...

Kamus dapat dihasilkan oleh alat eksternal — misalnya model lokal yang mengekstrak entitas sensitif:

    llm -m <local-model> \
        -s 'Extract sensitive entities as a JSON array of objects
            with "category" and "text" fields.' \
        < report.md > report.anon.json
    greple -Mxlate --xlate-anonymize=report.anon.json ...

BOM UTF-8 dalam berkas ditoleransi. Nilai dalam format baris front matter hanya boleh disertai komentar penutup pada barisnya sendiri, bukan setelah nilai tersebut.

=item B<--xlate-anonymize-mark>[=I<regex>]

Kumpulkan entri anonimisasi dari tanda-tanda inline di dalam dokumen itu sendiri. Tandai kemunculan pertama seperti C<{{ person("山田太郎") }}> dan setiap kemunculan string tersebut di seluruh dokumen akan dianonimkan. Tanda itu sendiri tetap ada...

Perhatikan bahwa dengan opsi nilai opsional seperti ini, argumen file berikutnya akan dianggap sebagai nilainya: tulis C<--xlate-anonymize-mark=> (dengan C<=> di bagian akhir) saat menggunakan notasi default.

Notasi alternatif dapat dikonfigurasi, misalnya C<< --xlate-anonymize-mark='@@(?<category>[a-z][a-z0-9_]*):(?<text>[^\n]+?)@@' >> untuk tanda bergaya C<@@person:NAME@@>, atau bentuk komentar HTML yang tetap tidak terlihat dalam Markdown yang dirender...

=item B<--xlate-template>[=I<regex>]

Perlakukan ekspresi templat (default: Jinja2 C<{{ ... }}>, C<{% ... %}>, C<{# ... #}>) sebagai penanda tempat yang tidak transparan: instruksikan model untuk menyalinnya tanpa perubahan dan verifikasi, per blok, bahwa respons berisi ekspresi yang per...

Perhatikan bahwa dengan opsi nilai opsional seperti ini, argumen berkas yang mengikuti akan dianggap sebagai nilainya: tulis C<--xlate-template=> (dengan C<=> di bagian akhir) saat menggunakan notasi default.

=item B<--xlate-frontmatter>

Perlakukan blok C<---> ... C<---> sebagai bagian awal YAML: kecualikan dari terjemahan dan dari potongan konteks fase-2, serta tambahkan nilai C<key: value> datarnya ke aturan anonimisasi (kategori C<var>) sebagai jaring pengaman. Jika ada beberapa b...



( run in 4.235 seconds using v1.01-cache-2.11-cpan-9789f410c06 )