Difference between revisions of "Translation Introduction"

From ReactOS Wiki
Jump to: navigation, search
m
(Translation of the "Translation" wiki page was fucked up...)
Line 3: Line 3:
 
If you need more help about things, that are not covered by the article, feel free to ask in ReactOS forum ([http://reactos.org/forum General Discussion section of ReactOS Forum]) or in the [http://www.reactos.org/community/irc ReactOS IRC Channels]. You may also send your questions to the translation mailing list ([http://reactos.org/mailman/listinfo/ros-translate ros-translate]) or the development list ([http://reactos.org/mailman/listinfo/ros-dev ros-dev]).
 
If you need more help about things, that are not covered by the article, feel free to ask in ReactOS forum ([http://reactos.org/forum General Discussion section of ReactOS Forum]) or in the [http://www.reactos.org/community/irc ReactOS IRC Channels]. You may also send your questions to the translation mailing list ([http://reactos.org/mailman/listinfo/ros-translate ros-translate]) or the development list ([http://reactos.org/mailman/listinfo/ros-dev ros-dev]).
  
== Primeiros Passos ==
+
== First steps ==
  
Deve confirmar se tem outros tradutores trabalhando na sua linguragem, confirmando na página da [[Translators List]], também poderá contatar estes em [http://www.reactos.org/?page=community_irc IRC].
+
You should check if there are any other translators working on your language by checking the [[List of Translators]] page, you can also try to contact them in [http://www.reactos.org/?page=community_irc IRC].
Se houver outra tradutores listados, deverá contatá-los informando que está interessado em fazer tradução.Também poderá perguntar sobre o estado atual da tradução.
+
If there are other translators listed, you should contact them and tell them you are interested in translating. You could also ask them about the actual translation status.
  
Se a sua linguagem não está listada, esteja a vontade para introduzir a linguagem na pagina da lista [[Translators List]] e introduza seu nome lá também.
+
If your language is not listed, feel free to write the language up in the list on the [[List of Translators]] page and put down your name there.
  
=== Traduções Wine ===
+
=== Wine translations ===
  
Os ficheiros provenientes do Wine ([http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?view=markup list]) deverão ser traduzidos no Wine para serem importados mais tarde.
+
The files coming from Wine ([http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?view=markup list]) should be translated in Wine to have them imported later.
  
Por favor mencione em [http://wiki.winehq.org/SubmittingPatches WineHQ Patch submission guidelines].
+
Please refer to [http://wiki.winehq.org/SubmittingPatches WineHQ Patch submission guidelines].
  
=== Traduzir ReactOS ===
+
=== Translate ReactOS ===
  
==== Onde baixar os ficheiros ====
+
==== Where to download the files ====
  
Os ultimos ficheiros estão disponiveis estão no nosso repositório [[Subversion]] . Confirme que recebe os ficheiros de lá, não de outro de outro lançamentoolhado a que pode estar desatualizada.
+
The latest files are available in our [[Subversion]] repository. Make sure you get the files from there and not from any release since they might be outdated.
Voce pode consultar e baixar os ficheiros a partir do SVN através do nosso [http://svn.reactos.org/svn/reactos/trunk/reactos/ ViewVC].
+
You can browse and download single files from SVN through our [http://svn.reactos.org/svn/reactos/trunk/reactos/ ViewVC].
  
==== Como traduzir os ficheiros ====
+
==== How to translate the files ====
  
Abaixo está um rc-file de exemplo do Controlo de Acesso da Lista de Edição do ReactOS (aclui).
+
Below is an example rc-file from ReactOS Access Control List Editor (aclui).
  
(Anote em poucas linhas algumas coisas menos importantes, do ponto de vista da tradução, terá que ser cortado para caber na formatação desta página)
+
(Note that in a few lines some unimportant things, from a translation point of view, have been cut out to fit the formatting of this page)
  
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
Line 55: Line 55:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
A primeira coisa a fazer é fazer uma copia do ficheiro .rc em inglês, normalmente chamado de en-US.rc, e renomear para o codigo da sua linguagem. Se nao conhece o código da sua linguagem, deia uma vista de olhos  código de 2 letras no fundo de [http://www.w3.org/WAI/ER/IG/ert/iso639.htm ISO-639] (também poderá encontrar a lista de nomes locais pagina MSDN em [http://msdn.microsoft.com/zh-TW/library/dd318693(v=VS.85).aspx]). Compreenda que alguns ficheiros diferem desta lista, por exemplo ficheros provenientes do Wine. Tenha a firme certeza de que a tradução da sua linguagem nao existia antes de ter iniciado a sua tradução.
+
The first thing to do is to make a copy of the english rc-file, usually called en-US.rc, and rename it in your language code. If you do not know the code for your language, take a look at the 2-letter codes in the bottom of [http://www.w3.org/WAI/ER/IG/ert/iso639.htm ISO-639] (you can also find list of locale names on [http://msdn.microsoft.com/zh-TW/library/dd318693(v=VS.85).aspx this MSDN page]). Please note that a few files may differ from this list, for example files originally from Wine. So make sure that a translation of your language does not exist before you start to translate it yourself.
  
Quando tiver copiado o ficheiro é ai que se inicia a tradução atual:
+
When you have copied the file it is just to begin the actual translation:
* Primeiro altere ''LANG_ENGLISH'' para a sua linguagem (Example: ''LANG_SWEDISH''). Dependendo da sua linguagem de localização, também deverá alterar a [[Sublang]] de ''SUBLANG_NEUTRAL'' ou ''SUBLANG_DEFAULT''.
+
* First change ''LANG_ENGLISH'' into your language (Example: ''LANG_SWEDISH''). Depending on your language and location, you might also have to change the [[Sublang]] from ''SUBLANG_NEUTRAL'' or ''SUBLANG_DEFAULT''.
  
* As palavras para tradução estarão entre aspas. No entanto, existem algumas excepções, mas que são normalmente faceis de reconhecer. Por exemplo não deve traduzir "MS Shell Dlg" (o qual é uma fonte, como poderá ver no inicio da linha) ou "SysListView32".
+
* The words to translate are between quotation marks. However, there are some exceptions but often it is pretty easy to see. For example you should not translate "MS Shell Dlg" (which is a font, as you can see in the beginning of the line) or "SysListView32".
  
* Como a maior parte dos recursos de tradução estão agora codificados em UTF-8, por favor guarde seu ficheiro .rc como "'''UTF-8'''".
+
* As most translation resources are now encoded in UTF-8, please save your .rc files as "'''UTF-8'''".
  
* Deixe uma linha final (uma linha em branco) no fim do seu ficheiro rc para facilidade de introdução.
+
* Leave an end of file line (a blank line) at the end of your rc file for ease of building.
  
===== Redimensionando =====
+
===== Resizing =====
  
Se alguns dos campos, etiquetas, etc. são demasiado pequenos para a sua linguagem, poderá redimensiona-los.
+
If some of the fields, labels, etc. are too small for your language, you may resize them.
  
Por exemplo, em:
+
For example, in:
  
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
Line 76: Line 76:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Os números 170, 87, 50, 14 estão para ''LEFT'', ''TOP'', ''WIDTH'', ''HEIGHT''. Então, alterar 50 para 60 resultará num botão premivel maior.
+
The numbers 170, 87, 50, 14 stand for ''LEFT'', ''TOP'', ''WIDTH'', ''HEIGHT''. So, changing 50 to 60 will result in a longer pushbutton.
  
No caso de nao estár a atualizar traduções antigas, terá de editar mais alguns ficheiros.
+
In case you are not updating old translations, you will have to edit some more files.
Em cada pasta de aplicação, DLL, etc., terá que estar um ficheiro com o nome ''rsrc.rc'' ou ''<applicationname>.rc''. Deverá abri-lo e adicionar o patch para o seu ficheiro de linguagem dentro deste.
+
In each application, DLL, etc. folder, there should be a file named either ''rsrc.rc'' or ''<applicationname>.rc''. You shall open it and add the path to your language file in it.
  
=== Carateres comuns ===
+
=== Common Characters ===
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 87: Line 87:
 
! Comment
 
! Comment
 
|-
 
|-
| &  || O e comercial, que se encotra dentro de algumas palavras aceima. Define uma tecla de atalho; a letra que vem depois do e comercial torna-se uma tecla de atalho.
+
| &  || The ampersand, which is inside some words above. It defines a hotkey; the letter which comes after the ampersand becomes a hotkey.
  
Uma tecla de atalho é uma tecla que pode usar para acesso rápido a diferentes menus etc. A tecla de atalho é mostrada a sublinhado.
+
A hotkey is a key you can use to fast access different menus etc. The hotkey is shown with an underline.
 
|-
 
|-
| %  || o simbolo de percentagem é seguido de outro caratere, tal com o <tt>%1</tt> voce vê no ficheiro <tt>.rc</tt> acima. Nao deverá ser alterado pois habitualmente é um texto de ligação ou um valor a ser impresso.
+
| %  || The percent sign is followed by another character, like the <tt>%1</tt> you see in the <tt>.rc</tt> file above. This should not be changed as it is usually a text string or a value being printed.
 
|-
 
|-
| \n || Isto é uma quebra de linha.
+
| \n || This is a line break.
 
|-
 
|-
| /* text */ || Isto é um comentáriod e texto. You may consider leaving the source language text in order to facilitate future work.
+
| /* text */ || This is commented text. You may consider leaving the source language text in order to facilitate future work.
 
|}
 
|}
  
=== Submeta a sua tradução ===
+
=== Submit your translation ===
  
 
To submit your translation, please create a patch file for it and [[File Bugs|file]] a [http://jira.reactos.org/ Jira] Bug report for it.
 
To submit your translation, please create a patch file for it and [[File Bugs|file]] a [http://jira.reactos.org/ Jira] Bug report for it.

Revision as of 14:20, 3 June 2017

The ReactOS team welcomes anyone who wish to contribute by translating. This article is written to help you to get started.

If you need more help about things, that are not covered by the article, feel free to ask in ReactOS forum (General Discussion section of ReactOS Forum) or in the ReactOS IRC Channels. You may also send your questions to the translation mailing list (ros-translate) or the development list (ros-dev).

First steps

You should check if there are any other translators working on your language by checking the List of Translators page, you can also try to contact them in IRC. If there are other translators listed, you should contact them and tell them you are interested in translating. You could also ask them about the actual translation status.

If your language is not listed, feel free to write the language up in the list on the List of Translators page and put down your name there.

Wine translations

The files coming from Wine (list) should be translated in Wine to have them imported later.

Please refer to WineHQ Patch submission guidelines.

Translate ReactOS

Where to download the files

The latest files are available in our Subversion repository. Make sure you get the files from there and not from any release since they might be outdated. You can browse and download single files from SVN through our ViewVC.

How to translate the files

Below is an example rc-file from ReactOS Access Control List Editor (aclui).

(Note that in a few lines some unimportant things, from a translation point of view, have been cut out to fit the formatting of this page)

#include <reactos/resource.h>
#include <defines.h>
#include "resource.h"

LANGUAGE LANG_ENGLISH, SUBLANG_NEUTRAL

IDD_SECPAGE DIALOGEX 0, 0, 227, 215
STYLE WS_CHILD | WS_VISIBLE | WS_CAPTION
CAPTION "Security"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
  LTEXT "&Group or user names:", -1, 7, 7, 105, 8
  CONTROL "", IDC_ACELIST, "SysListView32", LVS_REPORT
  PUSHBUTTON "A&dd...", IDC_ACELIST_ADD, 116, 87, 50, 14
  PUSHBUTTON "&Remove", IDC_ACELIST_REMOVE, 170, 87, 50, 14
  LTEXT "Allow", -1, 135, 107, 32, 8, SS_CENTER
  LTEXT "Deny", -1, 176, 107, 32, 8, SS_CENTER
END

STRINGTABLE DISCARDABLE
{
  IDS_PSP_TITLE "Permissions for %1"
}

The first thing to do is to make a copy of the english rc-file, usually called en-US.rc, and rename it in your language code. If you do not know the code for your language, take a look at the 2-letter codes in the bottom of ISO-639 (you can also find list of locale names on this MSDN page). Please note that a few files may differ from this list, for example files originally from Wine. So make sure that a translation of your language does not exist before you start to translate it yourself.

When you have copied the file it is just to begin the actual translation:

  • First change LANG_ENGLISH into your language (Example: LANG_SWEDISH). Depending on your language and location, you might also have to change the Sublang from SUBLANG_NEUTRAL or SUBLANG_DEFAULT.
  • The words to translate are between quotation marks. However, there are some exceptions but often it is pretty easy to see. For example you should not translate "MS Shell Dlg" (which is a font, as you can see in the beginning of the line) or "SysListView32".
  • As most translation resources are now encoded in UTF-8, please save your .rc files as "UTF-8".
  • Leave an end of file line (a blank line) at the end of your rc file for ease of building.
Resizing

If some of the fields, labels, etc. are too small for your language, you may resize them.

For example, in:

 PUSHBUTTON "&Some text", IDC_ACELIST_REMOVE, 170, 87, 50, 14

The numbers 170, 87, 50, 14 stand for LEFT, TOP, WIDTH, HEIGHT. So, changing 50 to 60 will result in a longer pushbutton.

In case you are not updating old translations, you will have to edit some more files. In each application, DLL, etc. folder, there should be a file named either rsrc.rc or <applicationname>.rc. You shall open it and add the path to your language file in it.

Common Characters

Char Comment
& The ampersand, which is inside some words above. It defines a hotkey; the letter which comes after the ampersand becomes a hotkey.

A hotkey is a key you can use to fast access different menus etc. The hotkey is shown with an underline.

% The percent sign is followed by another character, like the %1 you see in the .rc file above. This should not be changed as it is usually a text string or a value being printed.
\n This is a line break.
/* text */ This is commented text. You may consider leaving the source language text in order to facilitate future work.

Submit your translation

To submit your translation, please create a patch file for it and file a Jira Bug report for it.

Here is a small step-by-step (for TortoiseSVN) guide for doing this:

  1. Right-click on the root folder of ReactOS source folder and click on TortoiseSVN --> Create patch.
  2. Make sure that all your changed files are selected in the appearing dialog and then click on OK. Save the result as a ".patch" file.
  3. Go to Jira, log in and click on Create Issue. Choose "Core ReactOS" as project and "Improvement" as issue type.
  4. Enter a short description in the Summary text box, for example "TRANSLATION: German translation for explorer". In the Description text box enter something similar.
  5. Now, click on the button next to "Attachment" and choose your .patch file.
  6. Click on "Create".

Terminology

You don't have to translate everything exactly the same as Windows. If you believe you can translate something better than Windows, go on! However you are encouraged to keep common terms, like for example the menus in the windows.

Also, Try to keep your translation consistent, i.e. try to not translate the same term differently in different places.

Recommendations

  • Proofreading
By having another member of your translation team proofreading all your translations and giving his/her suggestions, the translation will keep a higher quality.
This idea started in the Swedish translation team, and this is how, we in that team handle it:
  1. Someone translates a file and in our case uploads it to our ftp-server.
  2. Another member of the team proofreads the file and give his/her comments.
  3. The original author makes changes accordingly to the comments if he/she agrees with them.
  4. If there is anything the two members don't agree on, we have a vote by all members.
Of course you don't need to follow these steps but some kind of proofreading is highly recommended.
  • A place to meet and chat
Having a place to meet and chat makes the translation a lot easier. A tip is to use or set up an IRC channel on the freenode network and meet there.

Other Languages