OSDN Git Service

[tortoisegit/TortoiseGitJp.git] / Languages / translations.txt
1 Translations\r
2 ------------\r
3 \r
4 TortoiseSVN is still in development so translations of all resources is\r
5 also a work 'in progress'.\r
6 \r
7 General\r
8 -------\r
9 The TortoiseSVN project uses gettext PO (portable object) files for its\r
10 translation. PO files are plain text, so you can even translate using a\r
11 normal text editor. The only thing you have to take care of is that the\r
12 editor can handle the UTF-8 charset. There is a wide range of tools out\r
13 there that can handle and manipulate PO files.\r
14 We recommend that you use poEdit (http://poedit.sourceforge.net) on Windows\r
15 or kbabel (http://i18n.kde.org/tools/kbabel/) on Linux.\r
16 \r
17 This description assumes that you use poEdit.\r
18 \r
19 Getting started\r
20 ---------------\r
21 If you want to implement a new language for TortoiseSVN do the following.\r
22 \r
23 1) Use TortoiseSVN (or any other SubVersion client) to check out:\r
24    http://tortoisesvn.tigris.org/svn/tortoisesvn/trunk/Languages/\r
25    (You will get more than one file)\r
26    or point your browser to:\r
27    http://tortoisesvn.tigris.org/svn/tortoisesvn/trunk/Languages/\r
28    right-click on Tortoise.pot and save this file to your local harddisk.\r
29    Tortoise.pot is the portable object template (hence .pot) for the\r
30    translation.\r
31 \r
32 2) Rename Tortoise.pot to Tortoise_xx.po, where xx is your two letter\r
33    ISO-639-1 language code. Look up your language code here:\r
34    http://www.loc.gov/standards/iso639-2/langcodes.html\r
35    If you want to translate into a language that has two different locales\r
36    and you *really* need the second locale, add the two letter ISO-3166\r
37    locale code. If you're not sure about your country code, look here:\r
38    http://www.iso.ch/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html.\r
39    Please keep in mind that we would like to have as few translations as\r
40    possible that cover as many languages as possible. We would not be\r
41    very happy at having to maintain a (de_CH) Swiss German, (de_AT)\r
42    Austrian German and (de_DE) German German translation. :-)\r
43    But if it's necessary like in Chinese, sure go ahead. We are happy with\r
44    simplified (zh_CN) and traditional (zh_TW) Chinese.\r
45 \r
46 3) Now translate what you can using poEdit. If you are not sure with one\r
47    or the other translation, mark it as "fuzzy". You can enter a comment\r
48    in poEdit to give some information about your thoughts to other trans-\r
49    lators.\r
50    If you are not sure about the meaning of the original sentence ask on\r
51    the list.\r
52 \r
53 4) Add a header with '#' comments to the PO file using a normal text edi-\r
54    tor that explains which language you translated and the terminology\r
55    you used, like:\r
56    #\r
57    # German translations for TortoiseSVN\r
58    # This file is distributed under the same license as the subversion package.\r
59    #\r
60    # Translation dictionary:\r
61    #\r
62    # argument     parameter\r
63    # bogus        ungültig\r
64    # checkout     auschecken (denglisch, ich weiß, aber akzeptabel)\r
65    # client       Client, des Client\r
66    # commit       übertragen\r
67    # item         Objekt\r
68    # label        Marke / Markierung\r
69 \r
70 5) Make sure your file is saved in UTF-8 encoding and that it does *not*\r
71    begin with UTF-8 BOMs (Byte Order Marks)\r
72 \r
73 6) Send your Tortoise_xx.po to the mailing list (patches@tortoisesvn.tigris.org).\r
74    or, if you have a Tigris ID (http://www.tigris.org/servlets/Join) and\r
75    request a role in the project\r
76    (http://tortoisesvn.tigris.org/servlets/ProjectMembershipRequest),\r
77    and is granted the role by the project admins, you may commit your\r
78    translations directory to the TortoiseSVN repository.\r
79 \r
80 Adding to an existing translation\r
81 ---------------------------------\r
82 1) Get hold of Tortoise.pot and the Tortoise_xx.po you want to improve\r
83 \r
84 2) Start poEdit with Tortoise_xx.po and select "Update from .pot file"\r
85    from the "Catalog" Menu\r
86 \r
87 3) Select Tortoise.pot and wait until poEdit has finished merging the\r
88    template and the current translation.\r
89 \r
90 4) The untranslated strings (and fuzzy translations) are always at the\r
91    top of the list.\r
92 \r
93 5) Translate what you can and send the resulting PO file back to the\r
94    mailing list (patches@tortoisesvn.tigris.org).\r
95 \r
96 Format your translation\r
97 --------------------------\r
98 Please format your translation before send Tortoise_xx.po to the\r
99 mailing list, or commit to the TortoiseSVN repository. You can do it\r
100 like this:\r
101     $ msgmerge --no-wrap -o Tortoise_xx.po.new Tortoise_xx.po Tortoise.pot\r
102     $ mv -f Tortoise_xx.po.new Tortoise_xx.po\r
103 \r
104 This can minimize the svn diff output, review your translation is easy.\r
105 \r
106 What now?\r
107 ---------\r
108 That's all you have to do. We'll take care of creating the resource dlls\r
109 and installers for the different language packs.\r
110 \r
111 Building your own dlls\r
112 ----------------------\r
113 If you want to test the translations you made yourself, before you release\r
114 them, you need four things:\r
115 \r
116 - The "raw" resource dlls for your version of TortoiseSVN. Other dlls\r
117   won't work. Take a look at:\r
118   http://tortoisesvn.tigris.org/servlets/ProjectDocumentList?folderID=1847\r
119   and pick your language dlls e.g. Languages_1.0.8.zip for TortoiseSVN 1.0.8.\r
120 - The pot file for your version of TortoiseSVN e.g:\r
121   http://tortoisesvn.tigris.org/svn/tortoisesvn/tags/version_1.0.8/...\r
122 - Any po file for your language. Either pick one from tags or the latest\r
123   po file from trunk\r
124 - The ResText utility that is used to insert the data from the po file\r
125   into your resource dlls:\r
126   http://tortoisesvn.tigris.org/files/documents/406/14560/ResText.zip\r
127 \r
128 Once you finished your installation, you run:\r
129 \r
130 restext apply TortoiseProcLang.dll ..\bin\TortoiseProcNNNN.dll Tortoise_CC.po\r
131 restext apply TortoiseMergeLang.dll ..\bin\TortoiseMergeNNNN.dll Tortoise_CC.po\r
132 \r
133 where NNNN is your four digit country code (1031 for germany)\r
134 and CC is your 2 letter country code (de for germany)\r
135 \r
136 You can find the four digit country code at\r
137 http://www.microsoft.com/globaldev/reference/lcid-all.mspx\r
138 under the column LCID dec.\r
139 \r
140 After successfully creating your dlls, copy them into:\r
141 C:\Program Files\TortoiseSVN\Languages\r
142 Now you should be able to select your language from the combobox on the\r
143 TortoiseSVN main setting page.\r