]>
Commit | Line | Data |
---|---|---|
8d7b6807 DJ |
1 | [[translation]] |
2 | Translating {pve} | |
3 | ----------------- | |
4 | ifdef::wiki[] | |
5 | :pve-toplevel: | |
6 | endif::wiki[] | |
7 | ||
8 | ||
06fd1d0f DW |
9 | |
10 | The {pve} user interface is in English by default. However, thanks to the | |
11 | contributions of the community, translations to other languages are also available. | |
12 | We welcome any support in adding new languages, translating the latest features, and | |
13 | improving incomplete or inconsistent translations. | |
14 | ||
15 | We use https://www.gnu.org/software/gettext/[gettext] for the management of the | |
16 | translation files. Tools like https://poedit.net/[Poedit] offer a nice user | |
17 | interface to edit the translation files, but you can use whatever editor you're | |
18 | comfortable with. No programming knowledge is required for translating. | |
19 | ||
6dc16cda | 20 | [[i18n_with_git]] |
06fd1d0f DW |
21 | Translating with git |
22 | ~~~~~~~~~~~~~~~~~~~~ | |
8d7b6807 | 23 | |
e63e47fb AL |
24 | The language files are available as a |
25 | https://git.proxmox.com/?p=proxmox-i18n.git[git repository]. If you are familiar | |
26 | with git, please contribute according to our | |
27 | {webwiki-url}Developer_Documentation[Developer Documentation]. | |
8d7b6807 | 28 | |
06fd1d0f DW |
29 | You can create a new translation by doing the following (replace <LANG> with the |
30 | language ID): | |
31 | ||
32 | # git clone git://git.proxmox.com/git/proxmox-i18n.git | |
33 | # cd proxmox-i18n | |
34 | # make init-<LANG>.po | |
35 | ||
36 | Or you can edit an existing translation, using the editor of your choice: | |
37 | ||
38 | # poedit <LANG>.po | |
39 | ||
40 | ||
6dc16cda | 41 | [[i18n_without_git]] |
06fd1d0f DW |
42 | Translating without git |
43 | ~~~~~~~~~~~~~~~~~~~~~~~ | |
44 | ||
45 | Even if you are not familiar with git, you can help translate {pve}. | |
46 | To start, you can download the language files | |
47 | https://git.proxmox.com/?p=proxmox-i18n.git;a=tree[here]. Find the | |
48 | language you want to improve, then right click on the "raw" link of this language | |
49 | file and select 'Save Link As...'. Make your changes to the file, and then | |
50 | send your final translation directly to office(at)proxmox.com, together with a | |
e63e47fb AL |
51 | signed |
52 | {webwiki-url}Developer_Documentation#Software_License_and_Copyright[contributor license agreement]. | |
8d7b6807 | 53 | |
06fd1d0f DW |
54 | |
55 | Testing the Translation | |
56 | ~~~~~~~~~~~~~~~~~~~~~~~ | |
57 | ||
58 | In order for the translation to be used in {pve}, you must first translate | |
59 | the `.po` file into a `.js` file. You can do this by invoking the following script, | |
60 | which is located in the same repository: | |
61 | ||
62 | # ./po2js.pl -t pve xx.po >pve-lang-xx.js | |
63 | ||
64 | The resulting file `pve-lang-xx.js` can then be copied to the directory | |
65 | `/usr/share/pve-i18n`, on your proxmox server, in order to test it out. | |
66 | ||
67 | Alternatively, you can build a deb package by running the following command from | |
68 | the root of the repository: | |
69 | ||
70 | # make deb | |
71 | ||
72 | IMPORTANT: For either of these methods to work, you need to have the following | |
73 | perl packages installed on your system. For Debian/Ubuntu: | |
74 | ||
75 | # apt-get install perl liblocale-po-perl libjson-perl | |
76 | ||
77 | ||
78 | Sending the Translation | |
79 | ~~~~~~~~~~~~~~~~~~~~~~~ | |
80 | You can send the finished translation (`.po` file) to the Proxmox team at the address | |
3a433e9b | 81 | office(at)proxmox.com, along with a signed contributor license agreement. |
06fd1d0f | 82 | Alternatively, if you have some developer experience, you can send it as a |
65eb814d TL |
83 | patch to the {pve} development mailing list. See |
84 | {webwiki-url}Developer_Documentation[Developer Documentation]. |