Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| doc:translation:weblate [2021/03/14 22:11] – Add `Translation based on Automatic Suggestions` section DaniloBaio | doc:translation:weblate [2023/06/24 16:38] (current) – Link with books/fdp-primer DaniloBaio | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Translate FreeBSD on Weblate ====== | ====== Translate FreeBSD on Weblate ====== | ||
| - | ===== Introduction ===== | + | See [[https://docs.freebsd.org/ |
| - | + | ||
| - | This article describes some basic steps on how to join the translators team of %%FreeBSD%%, | + | |
| - | It's focused on the translation part, if you are interested in more details about the documents structure, see the book " | + | |
| - | + | ||
| - | [[https://weblate.org/en/|Weblate]] is an open source software web-based focused on localization, | + | |
| - | + | ||
| - | ===== How to become a FreeBSD translator ===== | + | |
| - | + | ||
| - | Simple steps to start translating articles and books of the %%FreeBSD%% Documentation Project, you can see the original documents on https:// | + | |
| - | + | ||
| - | * Create an account, with an email address or with your Github login. | + | |
| - | + | ||
| - | * Subscribe to the [[https:// | + | |
| - | + | ||
| - | * Introduce Yourself and ask to join on some language team. (If the language team does not exist, ask for creating it, you could be the coordinator). | + | |
| - | + | ||
| - | * Login to Weblate with your new account. | + | |
| - | + | ||
| - | * Find your language team and choose an initial document to translate. | + | |
| - | + | ||
| - | Your self-introduction is important. It raises your chances to be approved for write access. You may also want to create a Bugzilla account to submit the translations after finishing a document. | + | |
| - | + | ||
| - | All translation files and translated documents need to follow [[https:// | + | |
| - | + | ||
| - | ===== Introduce Yourself ===== | + | |
| - | + | ||
| - | Make a short self-introduction to the mailing list freebsd-translators you have subscribed. The purpose of this is to allow a language coordinator to grant access to you, so you will be able to translate on Weblate | + | |
| - | + | ||
| - | Following is an example of how such an email could look like. | + | |
| - | + | ||
| - | < | + | |
| - | Subject | + | |
| - | + | ||
| - | Self-Introduction: | + | |
| - | + | ||
| - | Body | + | |
| - | + | ||
| - | Name: Your name (use preferred name) | + | |
| - | Location: City, country (optional) | + | |
| - | Login: username or email (essential) | + | |
| - | Language: Language to translate (essential) | + | |
| - | Profession or student status: (optional) | + | |
| - | About You: (free format - your info which you feel comfortable to share with others: company, school, other affiliation, | + | |
| - | You and the FreeBSD Project: (free format: other FreeBSD projects you would be interested, anything you'd like to do, comments, etc.) | + | |
| - | </ | + | |
| - | + | ||
| - | The %%FreeBSD%% Project is a very visible and transparent project, which means that its mailing lists are archived and mirrored in many places on the internet outside of our control. Please use caution when sharing personal information with %%FreeBSD%% on a mailing list, because it is not possible for us to remove any postings from the wider Internet universe after they are sent. | + | |
| - | + | ||
| - | ===== Login to Weblate ===== | + | |
| - | + | ||
| - | Open https:// | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | You can use your username, email address or your Github account to login. | + | |
| - | + | ||
| - | User profile contains your preferences, | + | |
| - | + | ||
| - | On our -dev instance, commits will be sent to this [[https:// | + | |
| - | once a day. | + | |
| - | + | ||
| - | ===== Find your language team and join in ===== | + | |
| - | + | ||
| - | Click Project, choose " | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | Note that already exists some languages and translated documents in tree[1]. | + | |
| - | + | ||
| - | If your language is not using Weblate, you need to get in touch with the language coordinator[2]. | + | |
| - | + | ||
| - | 1 - https:// | + | |
| - | + | ||
| - | 2 - https:// | + | |
| - | + | ||
| - | ===== Translating online on Weblate ===== | + | |
| - | + | ||
| - | This is the easiest way to translate documents, after a coordinator or administrator give you access to the language, the save button will be enabled and you can start translating. | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | Weblate has a set of links lead to actual translation. The translation is further divided into individual checks, like Untranslated or Needing review. If the whole document is translated, without error, All translations is still available. Alternatively you can use the search field to find a specific string or term. You can see more info about translations in the official Weblate | + | |
| - | [[https:// | + | |
| - | + | ||
| - | ===== Translating offline ===== | + | |
| - | + | ||
| - | If you are familiar with PO Gettext and would like to make offline translation, | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | ===== Translation based on Automatic Suggestions ===== | + | |
| - | + | ||
| - | For Languages that were using Weblate before the migration to Hugo/ | + | |
| - | There is an open issue to automate this, more details in the Status section. | + | |
| - | + | ||
| - | This is a feature from Weblate that uses the Translation Memory generated by the other components and projects on the same server. | + | |
| - | As we have the old project on the same server, similar strings will match. | + | |
| - | + | ||
| - | Strings that match 100/100 in similarity can be copied and saved directly, the other strings will need minor adjusts at least. | + | |
| - | + | ||
| - | Some examples: | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | With the migration to Hugo/ | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | Links: | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | ===== Proofreading and Weblate Quality Checks ===== | + | |
| - | + | ||
| - | When you click on Project/ | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | In this example, | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | It often appreciated to see the translated strings in their final context in order to do the proofreading more easily. Please refer to the next section to do so. | + | |
| - | + | ||
| - | ===== Building the Translated Document ===== | + | |
| - | + | ||
| - | The translations are built daily and they are available on https:// | + | |
| - | + | ||
| - | {{doc/ | + | |
| - | + | ||
| - | To build it locally, you can follow these steps for documents that are already in the %%FreeBSD%% Doc tree: | + | |
| - | + | ||
| - | < | + | |
| - | $ svn checkout https:// | + | |
| - | $ cd doc/ | + | |
| - | $ cp / | + | |
| - | $ make tran | + | |
| - | $ DOCDIR=/ | + | |
| - | </ | + | |
| - | + | ||
| - | For documents or languages that are not present in the %%FreeBSD%% Doc tree, other steps will be necessary, it can be easy when just adding a new document to an existing language or it can be more complicated when it's a new language. | + | |
| - | + | ||
| - | ===== Submitting Translations ===== | + | |
| - | + | ||
| - | In the book %%FreeBSD%% Documentation Project Primer for New Contributors there is a chapter | + | |
| - | [[https:// | + | |
| - | + | ||
| - | After committing translations to the offcial doc tree, all translators' | + | |
| - | + | ||
| - | if you have any questions, you can always ask on freebsd-translators mailing list. | + | |
| ===== Status ===== | ===== Status ===== | ||
| - | After the migration of the Website and Documentation to Hugo and [[/AsciiDoctor|AsciiDoctor]] | + | After the migration of the Website and Documentation to Hugo and %%AsciiDoctor%% was necessary to lock the Weblate project to convert the current workflow to the new format. |
| ^ Item ^ Responsible ^ Status ^ Note ^ | ^ Item ^ Responsible ^ Status ^ Note ^ | ||
| - | | Weblate project for Documentation | [[/ | + | | Weblate project for Documentation | [[/ |
| | Weblate Project for Website | [[/ | | Weblate Project for Website | [[/ | ||
| - | | Reopen Weblate | [[/ | + | | Reopen Weblate | [[/ |
| | Weblate %%FreeBSD%% addon or Admin command | [[/ | | Weblate %%FreeBSD%% addon or Admin command | [[/ | ||
| | Add more resources to current VM | [[/ | | Add more resources to current VM | [[/ | ||
| Line 171: | Line 19: | ||
| | Translate .toml files | | | We can't translate them right now, migrate to .adoc is a way. | | | Translate .toml files | | | We can't translate them right now, migrate to .adoc is a way. | | ||
| | Language directories | | | Hugo don't follow the standard pt_BR, it uses pt-br. Handle it in the scripts. | | | Language directories | | | Hugo don't follow the standard pt_BR, it uses pt-br. Handle it in the scripts. | | ||
| - | | New variables in the translations | | | Example of variables just in the translated documents, [[https:// | + | | New variables in the translations | | | Example of variables just in the translated documents, [[https:// |
| - | | Re Enable Jenkins CI for translations | | | | | + | | Use language variable in includes | | | Examples: [[https:// |
| - | | Weblate Automatic Translation | | | This is optional, will save time for Languages that were using Weblate before. Basically, we need to write a Django script or addon to find strings with translation suggestion 100/100 and copy that. The addon for Automatic | + | | po4a: Lines with ' |
| + | | po4a: Add YAML description string to .po files | [[/ | ||
| + | | Re Enable Jenkins CI for translations | [[/ | ||
| + | | Weblate Automatic Translation | [[/ | ||
| + | | po4a: Fix YAML Front Matter / tags and trademarks | - | - | More details on [[Doc/Translation/ | ||
| + | | po4a: Do not work properly with tables and callouts | - | - | More details | ||
| ===== FAQ (Frequently Asked Questions) ===== | ===== FAQ (Frequently Asked Questions) ===== | ||