calibre - en to ms translation catalogue (56 entries)

en: Function mode for Search & replace in the Editor
ms: Mod Fungsi untuk Gelintar & Ganti di dalam Penyunting

en: The :guilabel:`Search & replace` tool in the editor support a *function mode*. In this mode, you can combine regular expressions (see :doc:`regexp`) with arbitrarily powerful Python functions to do all sorts of advanced text processing.
ms: Alat Gelintar & Ganti dalam penyunting menyokong *mod fungsi*. Dalam mod ini, anda boleh gabungkan ungkapan nalar (rujuk :doc:`regexp`) dengan fungsi hebat Python secara arbitrari untuk membuat semua bentuk pemprosesan teks lanjutan.

en: Techniques for using function mode and the syntax will be described by means of examples, showing you how to create functions to perform progressively more complex tasks.
ms: Teknik penggunaan mod fungsi dan sintaks akan dijelaskan bersama-sama dengan contoh, memudahkan penjelasan bagaimana hendak cipta fungsi yang dapat melakukan tugas yang lebih kompleks.

en: Automatically fixing the case of headings in the document
ms: Membaiki huruf (case) tajuk dokumen secara automatik

en: Here, we will leverage one of the builtin functions in the editor to automatically change the case of all text inside heading tags to title case::
ms: Di sini, kita akan guna salah satu fungsi terbina-dalam di dalam penyunting untuk mengubah huruf semua teks dalam tag tajuk menjadi title case iaitu huruf besar pertama dalam setiap perkataan::

en: Your first custom function - smartening hyphens
ms: Fungsi suai pertama anda - hypen pintar

en: The real power of function mode comes from being able to create your own functions to process text in arbitrary ways. The Smarten Punctuation tool in the editor leaves individual hyphens alone, so you can use the this function to replace them with em-dashes.
ms: Kehebatan mod fungsi sebenarnya berasal dari keupayaan mencipta fungsi anda sendiri untuk memproses teks mengikut kehendak sendiri. Alat Tanda Baca Pintar di dalam penyunting membolehkan tanda sempang ditinggalkan, supaya anda boleh guna fungsi ini untuk menggantikannya dengan tanda sengkang-em.

en: To create a new function, simply click the :guilabel:`Create/edit` button to create a new function and copy the Python code from below.
ms: Untuk mencipta satu fungsi baharu, hanya klik butang :guilabel:`Cipta/sunting` untuk mencipta satu fungsi baharu dan salin kod Python dari bawah.

en: Use this function with the find regular expression::
ms: Guna fungsi ini dengan ungkapan nalar find::

en: And it will replace all hyphens with em-dashes, but only in actual text and not inside HTML tag definitions.
ms: Dan ia akan gantikan semua tanda sengkang dengan sengkang-em, tetapi hanya dalam teks sebenar dan tidak di dalam takrifan tag HTML/

en: The power of function mode - using a spelling dictionary to fix mis-hyphenated words
ms: Kehebatan mod fungsi - menggunakan kamus ejaan untuk baiki perkataan tertinggal-sempang

en: Often, e-books created from scans of printed books contain mis-hyphenated words -- words that were split at the end of the line on the printed page. We will write a simple function to automatically find and fix such words.
ms: Biasanya, e-buku dicipta dari imbasan buku bercetak yang menganfungi perkataan tertinggal-sempang -- perkataan yang mana dipisah pada akhir baris pada halaman bercetak. Kami akan hasilkan fungsi ringkas untuk cari dan baiki perkataan tersebut secara automatik.

en: Use this function with the same find expression as before, namely::
ms: Guna fungsi ini dengan ungkapan find yang sama sebelum ini, iaitu::

en: And it will magically fix all mis-hyphenated words in the text of the book. The main trick is to use one of the useful extra arguments to the replace function, ``dictionaries``.  This refers to the dictionaries the editor itself uses to spell check text in the book. What this function does is look for words separated by a hyphen, remove the hyphen and check if the dictionary recognizes the composite word, if it does, the original words are replaced by the hyphen free composite word.
ms: Dan ia akan membaiki secara magik semua perkataan yang tiada-sempang dalam teks buku. Caranya adalah guna salah satu argumen tambahan untuk menggantikan fungsi, ``dictionaries``.  Ini merujuk pada kamus penyunting itu sendiri menggunakan semakan ejaan teks di dalam buku tersebut. Fungsi ini mencari perkataan yang diasing dengan tanda sempang, buang tanda sempang tersebut dan periksa jika kamus mengenalpasti perkataan komposit itu, jika ada, perkataan asal akan digantikan dengan perkataan yang tidak menggunakan tanda sempang tersebut.

en: Note that one limitation of this technique is it will only work for mono-lingual books, because, by default, ``dictionaries.recognized()`` uses the main language of the book.
ms: Perhatian satu kekangan bagi teknik ini adalah ia hanya berfungsi baik dengan buku satu bahasa, kerana, secara lalai, ``dictionaries.recognized()`` menggunakan bahasa utama buku.

en: Auto numbering sections
ms: Seksyen pernomboran automatik

en: Now we will see something a little different. Suppose your HTML file has many sections, each with a heading in an :code:`<h2>` tag that looks like :code:`<h2>Some text</h2>`. You can create a custom function that will automatically number these headings with consecutive section numbers, so that they look like :code:`<h2>1. Some text</h2>`.
ms: Sekarang kita dapati ada beberapa perkara berlainan. Anggaplah fail HTML anda mempunyai banyak seksyen, setiapnya dengan pengepala dengan :code:`<h2>` tag seperti :code:`<h2>Some text</h2>`. Anda boleh hasilkan fungsi suai yang dapat menomborkan pengepala ini dengan nombor seksyen yang berturuan, supaya ia kelihatan seperti :code:`<h2>1. Some text</h2>`.

en: Use it with the find expression::
ms: Guna ia dengan ungkapan cari::

en: Place the cursor at the top of the file and click :guilabel:`Replace all`.
ms: Letak kursor di bahagian atas fail dan klik :guilabel:`Ganti semua`.

en: This function uses another of the useful extra arguments to ``replace()``: the ``number`` argument. When doing a :guilabel:`Replace All` number is automatically incremented for every successive match.
ms: Fungsi ini menggunakan argumen tambahan yang berguna pada ``replace()``: argumen ``number``. Ketika membuat :guilabel:`Replace All` nombor secara automatik ditokok bagi setiap padanan yang berjaya.

en: Another new feature is the use of ``replace.file_order`` -- setting that to ``'spine'`` means that if this search is run on multiple HTML files, the files are processed in the order in which they appear in the book. See :ref:`file_order_replace_all` for details.
ms: Satu fitur baharu lain yang boleh digunakan ialah penggunaan ``replace.file_order`` -- menetapkan ``'spine'`` bermaksud jika gelintar ini dijalankan pada fail HTML berbilang, fail diproses dengan tertib mengikut kemunculannya di dalam buku. Sila rujuk :ref:`file_order_replace_all` untuk perinciannya.

en: Auto create a Table of Contents
ms: Auto jana Senarai Kandungan

en: Finally, lets try something a little more ambitious. Suppose your book has headings in ``h1`` and ``h2`` tags that look like ``<h1 id="someid">Some Text</h1>``. We will auto-generate an HTML Table of Contents based on these headings. Create the custom function below:
ms: Akhir sekali, cuba lakukan yang lebih sukar. Anggap buku anda mempunyai pengepala dengan tag ``h1`` dan ``h2`` seperi ``<h1 id="someid">Some Text</h1>``. Kita akan auto-janakan Senarai Kandungan HTML berdasarkan pengeapala ini. Cipta fungsi suai seperti di bawah:

en: And use it with the find expression::
ms: Guna ia dengan ungkapan cari::

en: Run the search on :guilabel:`All text files` and at the end of the search, a window will popup with "Debug output from your function" which will have the HTML Table of Contents, ready to be pasted into :file:`toc.html`.
ms: Jalankan penggelintaran pada :guilabel:`All text files` dan dipenghujung gelintar, satu tetingkap timbul dengan "Debug output from your function" yang mana akan mempunyai Senarai Kandungan HTML, sedia untuk ditampal ke dalam :file:`toc.html`.

en: Another new feature is the use of ``call_after_last_match`` -- setting that to ``True`` on the ``replace()`` function means that the editor will call ``replace()`` one extra time after all matches have been found. For this extra call, the match object will be ``None``.
ms: Lain-lain fitur baharu yang digunakan ialah ``call_after_last_match`` -- menetapkannya ``True`` pada fungsi ``replace()`` bermaksud penyunting akan memanggil ``replace()`` sekali laig selepas semua padanan telah ditemui. Untuk panggilan ekstra ini, objek padanan akan menjadi ``None``.

en: This was just a demonstration to show you the power of function mode, if you really needed to generate a Table of Contents from headings in your book, you would be better off using the dedicated Table of Contents tool in :guilabel:`Tools->Table of Contents`.
ms: Ini hanyalah demonstrasi untuk menunjukkan kehebatan mod fungsi, jika anda perlu jana Senarai Kandungan dari pengepala dalam buku anda, anda digalakkan guna alat Senarai Kandungan yang disediakan dalam :guilabel:`Alat->Senarai Kandungan`.

en: The API for the function mode
ms: API untuk mod fungsi

en: All function mode functions must be Python functions named replace, with the following signature::
ms: Semua fungsi mod fungsi mestilah fungsi Python yang bernama replace, dengan tandatangan berikut::

en: When a find/replace is run, for every match that is found, the ``replace()`` function will be called, it must return the replacement string for that match. If no replacements are to be done, it should return ``match.group()`` which is the original string. The various arguments to the ``replace()`` function are documented below.
ms: Bila cari/ganti dijalankan, bagi setiap padanan yang ditemui, fungsi ``replace()`` akan dipanggilkan, ia mesti  kembalikan rentetan penggantian untuk padanan tersebut. Jika tiada penggantian dibuat, ia seharusnya kembalikan ``match.group()`` yang mana merupakan rentetan asal. Pelbagai dokumentasi argumen berkenaan fungsi ``replace()`` seperti di bawah.

en: The ``match`` argument
ms: Argumen ``match``

en: The ``number`` argument
ms: Argumen ``number``

en: The ``number`` argument is the number of the current match. When you run :guilabel:`Replace All`, every successive match will cause ``replace()`` to be called with an increasing number. The first match has number 1.
ms: Argumen ``number`` ialah bilangan padanan semasa. Ketika anda menjalankan :guilabel:`Ganti Semua`, setiap padanan yang berjaya akan menyebabkan ``replace()`` diganti dengan bilangan menaik. Padanan pertama mempunyai nilai 1.

en: The ``file_name`` argument
ms: Argumen ``file_name``

en: This is the filename of the file in which the current match was found. When searching inside marked text, the ``file_name`` is empty. The ``file_name`` is in canonical form, a path relative to the root of the book, using ``/`` as the path separator.
ms: Ia merupaakn nama fail bagi fail yang mana padanan semasa ditemui. Ketika menggelintar di dalam teks bertanda, ``file_name`` adalah kosong. ``file_name`` adalah dalam bentuk canonical, iaitu laluan berkaitan dengan root buku, menggunakan ``/`` sebagai pemisah laluan.

en: The ``metadata`` argument
ms: Argumen ``metadata``

en: This represents the metadata of the current book, such as title, authors, language, etc. It is an object of class :class:`calibre.ebooks.metadata.book.base.Metadata`. Useful attributes include, ``title``, ``authors`` (a list of authors) and ``language`` (the language code).
ms: Ia mewakili data meta bagi sesebuah buku, seperti tajuk, pengarang, bahasa, dll. Ia merupakan objek bagi sesebuah kelas :class:`calibre.ebooks.metadata.book.base.Metadata`. Atribut yang berguna termasuklah, ``title``, ``authors`` (senarai pengarang) dan ``language`` (kod bahasa).

en: The ``dictionaries`` argument
ms: Argumen ``dictionaries``

en: This represents the collection of dictionaries used for spell checking the current book. Its most useful method is ``dictionaries.recognized(word)`` which will return ``True`` if the passed in word is recognized by the dictionary for the current book's language.
ms: Ia mewakili koleksi kamus yang digunakan untuk penyemakan ejaan buku semasa. Merupakan kaedah paling berguna iaitu ``dictionaries.recognized(word)`` yang akan kembalikan ``True`` jika perkataan dikenalpasti oleh kamus bagi bahasa buku semasa.

en: The ``data`` argument
ms: Argumen ``data``

en: The ``functions`` argument
ms: Argumen ``functions``

en: The ``functions`` argument gives you access to all other user defined functions. This is useful for code re-use. You can define utility functions in one place and re-use them in all your other functions. For example, suppose you create a function name ``My Function`` like this:
ms: Argumen ``functions`` memberikan anda capaian ke semua lain-lain fungsi ditakrif pengguna. Ia berguna untuk guna-semula kod. Anda boleh takrifkan fungsi utiliti dari satu tempat dan guna-semula ia dalam fungsi yang lain. Sebagai contoh, anggap anda menghasilkan satu fungsi bernama``My Function`` seperti di bawah:

en: Then, in another function, you can access the ``utility()`` function like this:
ms: Oleh itu, dalam fungsi lain, anda boleh boleh mencapai fungsi ``utility()`` seperti ini:

en: You can also use the functions object to store persistent data, that can be re-used by other functions. For example, you could have one function that when run with :guilabel:`Replace All` collects some data and another function that uses it when it is run afterwards. Consider the following two functions:
ms: Anda juga boleh menggunakan objek fungsi untuk menyimpan data tekal, yang boleh diguna-semula oleh fungsi lain. Sebagai contoh, anda boleh mempunyai satu fungsi yang mana bila dijalankan dengan :guilabel:`Ganti Semua` dapat mengutip beberapa data dan lain-lain fungsi yang menggunakannya jika ia dijalankan selepas itu. Pertimbangkan dua fungsi berikut:

en: Debugging your functions
ms: Meyahpepijat fungsi anda

en: You can debug the functions you create by using the standard ``print()`` function from Python. The output of print will be displayed in a popup window after the Find/replace has completed. You saw an example of using ``print()`` to output an entire table of contents above.
ms: Anda boleh menyahpepijat fungsi yang telah dicipta menggunakan fungsi piawai ``print()`` daripada Python. Output print akan dipaparkan dalam tetingkap timbul selepas Find/replace telah selesai. Didapati terdapat contoh penggunaan ``print()`` untuk outputkan keseluruhan jadual kandungan di atas.

en: Choose file order when running on multiple HTML files
ms: Pilih tertib fail bila dijalankan pada fail HTML berbilang

en: When you run a :guilabel:`Replace all` on multiple HTML files, the order in which the files are processes depends on what files you have open for editing. You can force the search to process files in the order in which the appear by setting the ``file_order`` attribute on your function, like this:
ms: Bila anda menjalankan :guilabel:`Ganti semua` pada fail HTML berbilang, tertib fail diproses bergantung pada apakah fail anda telah buka untuk penyuntingan. Anda boleh paksa menggelintar untuk  proses fail mengikut tertib yang muncul berdasarkan tetapan atribut ``file_order`` dalam fungsi anda, seperti berikut:

en: ``file_order`` accepts two values, ``spine`` and ``spine-reverse`` which cause the search to process multiple files in the order they appear in the book, either forwards or backwards, respectively.
ms: ``file_order`` menerima dua nilai, ``spine`` dan ``spine-reverse`` yang menyebabkan gelintar memproses fail berbilang mengikut tertib muncul di dalam buku, sama ada maju atau mengundur.

en: Having your function called an extra time after the last match is found
ms: Menambah masa tambahan ke dalam fungsi anda selepas padanan terakhir ditemui

en: Sometimes, as in the auto generate table of contents example above, it is useful to have your function called an extra time after the last match is found. You can do this by setting the ``call_after_last_match`` attribute on your function, like this:
ms: Dalam senarai kandungan diauto-jana seperti ciontoh di atas, Lebih berguna anda menambah masa tambahan selepas padanan terakhir ditemui. Anda boleh membuatnya dengan menetapkan atribut ``call_after_last_match`` ke dalam fungsi anda, seperti di bawah:

en: Appending the output from the function to marked text
ms: Menambah output dari fungsi ke teks betanda

en: When running search and replace on marked text, it is sometimes useful to append so text to the end of the marked text. You can do that by setting the ``append_final_output_to_marked`` attribute on your function (note that you also need to set ``call_after_last_match``), like this:
ms: Ketika menjalankan gelintar dan ganti pada teks bertanda, kadang kala berguna membuat penambahan di bahagian hujung teksd bertanda. Anda boleh membuatnya dengan menetapkan atribut ``append_final_output_to_marked`` pada fungsi anda (perhatian anda juga perlu tetapkan ``call_after_last_match``), seperti berikut:

en: Suppressing the result dialog when performing searches on marked text
ms: Memaksa dialog keputusan ketika membuat penggelintaran pada teks bertanda

en: You can also suppress the result dialog (which can slow down the repeated application of a search/replace on many blocks of text) by setting the ``suppress_result_dialog`` attribute on your function, like this:
ms: Anda juga memaksa dialog keputusan (yang boleh memperlahankan aplikasi menggelintar/mengganti yang berulang pada kebanyakan blok teks) dengan menetapkan atribut ``suppress_result_dialog`` pada fungsi anda, seperti ini:

en: More examples
ms: Lagi banyak contoh
