The tables below shows which areas of the PostgreSQL source are prepared for translation, and the progress of those translations. The numbers are percents of translated messages. By following the links, you can download freshly baked PO files that are merged up against the latest program sources. No PostgreSQL source tree is needed for translation work.
The highlighted boxes are the files that have a sufficient fraction of strings translated to be considered for release. Files that are 100% translated are specially highlighted. All other files will not be part of the PostgreSQL release.
The grey numbers are translations that do not exist yet, but where this web site has initialized the translations files for you with data from the existing translations for the same language.
You can work in several branches. Please see the status information below and follow the announcements on the mailing list (subscribe) about when a branch is about to be released.
Other information: contributor/translator information (wiki)
Last update:
Last update:
| af | cs | de | el | es | fa | fr | he | hr | hu | id | it | ja | ka | ko | nb | nl | pl | pt_BR | ro | ru | sk | sl | sv | ta | tr | uk | vi | zh_CN | zh_TW | 30 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ecpg (132 strings) |
91 | 100 | 97 | 100 | 100 | 2 | 3 | 1 | 9 | 97 | 100 | 100 | 100 | 1 | 1 | 85 | 97 | 7 | 100 | 9 | 3 | 100 | 1 | 88 | 100 | 87 | 93 | 97 | 18 (96) | ||
| ecpglib (33 strings) |
96 | 96 | 96 | 96 | 96 | 96 | 100 | 96 | 96 | 96 | 96 | 96 | 100 | 96 | 96 | 96 | 96 | 96 | 18 (96) | ||||||||||||
| initdb (209 strings) |
64 | 100 | 86 | 99 | 99 | 31 | 4 | 14 | 80 | 100 | 99 | 99 | 3 | 5 | 31 | 84 | 19 | 100 | 11 | 14 | 100 | 16 | 61 | 99 | 32 | 95 | 86 | 23 (69) | |||
| libpq (404 strings) |
2 | 12 | 100 | 69 | 99 | 99 | 11 | 2 | 3 | 14 | 100 | 99 | 88 | 2 | 11 | 69 | 100 | 2 | 5 | 100 | 7 | 11 | 99 | 1 | 13 | 68 | 24 (49) | ||||
| pg_amcheck (121 strings) |
26 | 100 | 80 | 98 | 1 | 98 | 14 | 4 | 1 | 9 | 80 | 98 | 98 | 98 | 5 | 2 | 22 | 33 | 12 | 100 | 12 | 9 | 100 | 6 | 24 | 98 | 8 | 72 | 80 | 13 (92) | |
| pg_archivecleanup (32 strings) |
3 | 56 | 100 | 65 | 93 | 3 | 93 | 12 | 3 | 3 | 12 | 65 | 93 | 93 | 93 | 12 | 6 | 15 | 65 | 12 | 100 | 15 | 15 | 100 | 9 | 50 | 93 | 15 | 84 | 65 | 18 (74) |
| pg_basebackup (509 strings) |
46 | 100 | 63 | 98 | 99 | 10 | 1 | 4 | 62 | 100 | 98 | 95 | 2 | 1 | 10 | 9 | 1 | 100 | 4 | 3 | 100 | 1 | 44 | 98 | 12 | 47 | 62 | 20 (62) | |||
| pg_checksums (77 strings) |
1 | 59 | 100 | 68 | 97 | 1 | 97 | 9 | 6 | 1 | 19 | 68 | 97 | 97 | 97 | 6 | 7 | 29 | 68 | 22 | 100 | 18 | 15 | 100 | 6 | 50 | 97 | 9 | 61 | 68 | 16 (82) |
| pg_combinebackup (182 strings) |
22 | 100 | 50 | 98 | 98 | 4 | 3 | 1 | 14 | 53 | 100 | 98 | 97 | 3 | 4 | 19 | 30 | 10 | 100 | 12 | 9 | 100 | 3 | 24 | 97 | 5 | 53 | 52 | 9 (98) | ||
| pg_config (48 strings) |
2 | 77 | 100 | 85 | 95 | 4 | 95 | 70 | 6 | 6 | 14 | 79 | 91 | 95 | 95 | 58 | 6 | 70 | 85 | 66 | 100 | 10 | 25 | 100 | 60 | 70 | 95 | 70 | 95 | 85 | 23 (80) |
| pg_controldata (101 strings) |
1 | 85 | 100 | 86 | 98 | 18 | 98 | 9 | 3 | 17 | 9 | 86 | 98 | 98 | 98 | 18 | 5 | 68 | 86 | 38 | 100 | 20 | 21 | 100 | 30 | 72 | 98 | 69 | 85 | 86 | 25 (70) |
| pg_ctl (161 strings) |
82 | 100 | 85 | 98 | 1 | 98 | 63 | 1 | 1 | 6 | 84 | 100 | 98 | 98 | 4 | 3 | 70 | 85 | 23 | 100 | 3 | 22 | 100 | 37 | 72 | 98 | 13 | 81 | 85 | 22 (76) | |
| pg_dump (584 strings) |
66 | 99 | 82 | 98 | 99 | 19 | 1 | 4 | 75 | 100 | 98 | 97 | 3 | 1 | 18 | 17 | 5 | 99 | 4 | 5 | 100 | 1 | 64 | 98 | 3 | 69 | 81 | 22 (63) | |||
| pg_resetwal (139 strings) |
62 | 100 | 72 | 98 | 7 | 98 | 5 | 5 | 6 | 10 | 72 | 98 | 98 | 97 | 6 | 4 | 33 | 72 | 16 | 100 | 7 | 7 | 100 | 12 | 61 | 98 | 28 | 70 | 64 | 23 (62) | |
| pg_rewind (209 strings) |
63 | 100 | 85 | 95 | 95 | 2 | 4 | 1 | 15 | 80 | 100 | 95 | 95 | 4 | 7 | 15 | 15 | 11 | 100 | 13 | 7 | 100 | 1 | 56 | 95 | 3 | 71 | 85 | 17 (79) | ||
| pg_test_fsync (39 strings) |
2 | 56 | 100 | 87 | 94 | 2 | 94 | 5 | 2 | 2 | 7 | 87 | 89 | 94 | 94 | 5 | 2 | 48 | 87 | 2 | 100 | 5 | 5 | 100 | 2 | 53 | 94 | 56 | 58 | 87 | 18 (82) |
| pg_test_timing (17 strings) |
5 | 52 | 100 | 70 | 82 | 11 | 88 | 29 | 5 | 5 | 17 | 70 | 100 | 82 | 82 | 17 | 11 | 47 | 70 | 17 | 100 | 17 | 17 | 100 | 17 | 52 | 82 | 52 | 70 | 70 | 18 (76) |
| pg_upgrade (346 strings) |
23 | 99 | 8 | 98 | 98 | 3 | 2 | 1 | 5 | 27 | 100 | 98 | 98 | 2 | 1 | 12 | 8 | 3 | 99 | 4 | 3 | 100 | 1 | 19 | 98 | 3 | 25 | 67 | 15 (70) | ||
| pg_verifybackup (165 strings) |
19 | 100 | 54 | 96 | 98 | 2 | 3 | 1 | 11 | 52 | 96 | 96 | 96 | 2 | 3 | 13 | 27 | 6 | 100 | 6 | 4 | 100 | 1 | 18 | 96 | 3 | 49 | 54 | 13 (83) | ||
| pg_waldump (111 strings) |
31 | 100 | 85 | 98 | 1 | 98 | 6 | 5 | 1 | 13 | 70 | 90 | 98 | 98 | 6 | 5 | 10 | 48 | 14 | 100 | 16 | 9 | 100 | 3 | 25 | 98 | 18 | 31 | 85 | 18 (71) | |
| pg_walsummary (32 strings) |
3 | 53 | 100 | 68 | 93 | 3 | 93 | 18 | 12 | 3 | 31 | 71 | 93 | 93 | 93 | 15 | 12 | 43 | 71 | 37 | 100 | 37 | 31 | 100 | 15 | 50 | 93 | 18 | 50 | 68 | 10 (90) |
| pgscripts (237 strings) |
72 | 99 | 89 | 98 | 1 | 98 | 51 | 2 | 1 | 5 | 83 | 100 | 98 | 98 | 4 | 1 | 54 | 83 | 35 | 99 | 19 | 19 | 100 | 29 | 69 | 98 | 8 | 79 | 34 | 22 (72) | |
| plperl (43 strings) |
93 | 97 | 95 | 97 | 2 | 97 | 2 | 4 | 2 | 9 | 95 | 95 | 97 | 97 | 2 | 90 | 95 | 74 | 97 | 6 | 2 | 100 | 2 | 93 | 97 | 90 | 93 | 95 | 19 (94) | ||
| plpgsql (174 strings) |
1 | 93 | 99 | 97 | 99 | 99 | 4 | 1 | 10 | 97 | 99 | 99 | 99 | 1 | 1 | 83 | 97 | 71 | 99 | 8 | 2 | 100 | 91 | 99 | 87 | 93 | 70 | 19 (93) | |||
| plpython (87 strings) |
97 | 100 | 98 | 98 | 1 | 98 | 1 | 1 | 1 | 4 | 97 | 100 | 98 | 98 | 1 | 90 | 97 | 60 | 100 | 4 | 1 | 100 | 1 | 97 | 98 | 96 | 98 | 98 | 19 (95) | ||
| pltcl (20 strings) |
80 | 100 | 85 | 100 | 5 | 100 | 5 | 5 | 5 | 15 | 85 | 100 | 100 | 100 | 5 | 75 | 85 | 20 | 100 | 10 | 5 | 100 | 5 | 80 | 100 | 75 | 95 | 85 | 19 (87) | ||
| postgres (6466 strings) |
1 | 2 | 99 | 3 | 93 | 77 | 9 | 44 | 80 | 100 | 80 | 98 | 1 | 3 | 55 | 76 | 3 | 99 | 16 | 3 | 100 | 59 | 99 | 67 | 37 | 23 (56) | |||||
| psql (1424 strings) |
80 | 99 | 88 | 99 | 12 | 99 | 60 | 4 | 1 | 86 | 99 | 99 | 99 | 5 | 60 | 88 | 14 | 99 | 12 | 13 | 100 | 67 | 99 | 47 | 82 | 86 | 25 (67) | ||||
| 28 | 2 (1) | 23 (66) | 28 (99) | 24 (81) | 28 (96) | 2 (15) | 28 (96) | 8 (39) | 2 (5) | 3 (9) | 1 (44) | 26 (75) | 28 (97) | 28 (96) | 28 (96) | 7 (13) | 1 (3) | 23 (49) | 23 (72) | 14 (31) | 28 (99) | 9 (10) | 10 (13) | 28 (100) | 7 (27) | 24 (62) | 28 (96) | 15 (60) | 27 (71) | 26 (76) | 529 (76) |
Last update:
Last update:
Last update:
Last update:
| af | cs | de | el | es | fa | fr | he | hr | hu | id | it | ja | ko | nb | nl | pl | pt_BR | ro | ru | sk | sl | sv | ta | tr | uk | vi | zh_CN | zh_TW | 29 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ecpg (129 strings) |
95 | 100 | 100 | 100 | 100 | 3 | 3 | 1 | 10 | 91 | 100 | 95 | 2 | 1 | 95 | 88 | 8 | 100 | 11 | 5 | 100 | 2 | 92 | 100 | 91 | 98 | 84 | 17 (95) | ||
| ecpglib (33 strings) |
96 | 96 | 96 | 96 | 100 | 96 | 100 | 96 | 96 | 96 | 96 | 100 | 96 | 96 | 96 | 96 | 16 (96) | |||||||||||||
| initdb (175 strings) |
96 | 100 | 98 | 98 | 1 | 100 | 47 | 5 | 1 | 17 | 48 | 100 | 96 | 5 | 6 | 69 | 43 | 29 | 100 | 17 | 21 | 100 | 23 | 90 | 98 | 48 | 98 | 29 | 22 (70) | |
| libpq (263 strings) |
19 | 85 | 100 | 97 | 99 | 100 | 65 | 17 | 1 | 2 | 73 | 100 | 85 | 17 | 72 | 61 | 1 | 100 | 19 | 28 | 100 | 38 | 75 | 99 | 1 | 95 | 47 | 23 (69) | ||
| pg_amcheck (95 strings) |
24 | 100 | 100 | 100 | 2 | 100 | 13 | 2 | 1 | 4 | 15 | 97 | 26 | 5 | 1 | 92 | 15 | 9 | 100 | 9 | 7 | 100 | 8 | 23 | 100 | 5 | 97 | 11 | 10 (98) | |
| pg_archivecleanup (26 strings) |
100 | 100 | 100 | 100 | 3 | 100 | 11 | 7 | 23 | 100 | 100 | 11 | 7 | 42 | 23 | 15 | 100 | 15 | 15 | 100 | 11 | 92 | 100 | 42 | 100 | 15 | 14 (91) | |||
| pg_basebackup (271 strings) |
97 | 100 | 99 | 99 | 1 | 100 | 20 | 2 | 1 | 7 | 26 | 100 | 97 | 4 | 2 | 35 | 18 | 2 | 100 | 8 | 5 | 100 | 2 | 92 | 99 | 25 | 98 | 9 | 18 (72) | |
| pg_checksums (55 strings) |
98 | 100 | 100 | 100 | 1 | 100 | 10 | 3 | 10 | 21 | 100 | 98 | 7 | 3 | 27 | 21 | 18 | 100 | 10 | 10 | 100 | 9 | 85 | 100 | 9 | 100 | 18 | 13 (92) | ||
| pg_config (43 strings) |
97 | 100 | 100 | 100 | 2 | 100 | 83 | 6 | 4 | 18 | 83 | 100 | 97 | 69 | 9 | 83 | 83 | 79 | 100 | 11 | 32 | 100 | 72 | 83 | 100 | 83 | 100 | 79 | 22 (87) | |
| pg_controldata (92 strings) |
1 | 100 | 100 | 100 | 100 | 22 | 100 | 9 | 3 | 20 | 8 | 84 | 100 | 100 | 22 | 6 | 78 | 77 | 45 | 100 | 25 | 26 | 100 | 35 | 84 | 100 | 79 | 100 | 45 | 24 (72) |
| pg_ctl (161 strings) |
98 | 100 | 98 | 98 | 1 | 100 | 78 | 1 | 1 | 8 | 82 | 100 | 98 | 6 | 4 | 83 | 74 | 27 | 100 | 3 | 26 | 100 | 44 | 82 | 98 | 15 | 98 | 57 | 21 (78) | |
| pg_dump (523 strings) |
92 | 99 | 98 | 99 | 100 | 23 | 1 | 4 | 24 | 100 | 92 | 4 | 1 | 27 | 22 | 6 | 99 | 5 | 6 | 100 | 2 | 88 | 99 | 3 | 95 | 8 | 21 (61) | |||
| pg_resetwal (117 strings) |
86 | 100 | 100 | 100 | 9 | 100 | 3 | 5 | 10 | 8 | 100 | 86 | 11 | 3 | 55 | 43 | 23 | 100 | 11 | 11 | 100 | 17 | 82 | 100 | 29 | 100 | 23 | 21 (64) | ||
| pg_rewind (188 strings) |
84 | 100 | 95 | 95 | 1 | 100 | 3 | 5 | 2 | 15 | 25 | 100 | 73 | 4 | 7 | 44 | 23 | 13 | 100 | 13 | 7 | 100 | 2 | 72 | 95 | 3 | 94 | 18 | 15 (80) | |
| pg_test_fsync (25 strings) |
96 | 100 | 100 | 100 | 4 | 100 | 4 | 4 | 4 | 100 | 96 | 4 | 4 | 88 | 4 | 4 | 100 | 4 | 4 | 100 | 4 | 92 | 100 | 96 | 100 | 4 | 14 (97) | |||
| pg_test_timing (13 strings) |
69 | 100 | 92 | 92 | 7 | 100 | 23 | 7 | 23 | 100 | 69 | 15 | 7 | 61 | 30 | 15 | 100 | 15 | 15 | 100 | 15 | 69 | 92 | 69 | 92 | 23 | 14 (86) | |||
| pg_upgrade (288 strings) |
90 | 100 | 3 | 100 | 1 | 100 | 3 | 1 | 1 | 1 | 4 | 100 | 89 | 2 | 38 | 4 | 2 | 100 | 2 | 2 | 100 | 2 | 80 | 100 | 2 | 97 | 3 | 12 (91) | ||
| pg_verifybackup (100 strings) |
1 | 20 | 100 | 98 | 98 | 2 | 100 | 5 | 5 | 3 | 26 | 27 | 98 | 89 | 4 | 5 | 32 | 26 | 9 | 100 | 8 | 7 | 100 | 3 | 17 | 98 | 5 | 98 | 10 | 11 (91) |
| pg_waldump (77 strings) |
66 | 100 | 100 | 100 | 1 | 100 | 7 | 6 | 1 | 6 | 44 | 66 | 54 | 6 | 3 | 19 | 41 | 14 | 100 | 14 | 7 | 100 | 3 | 54 | 100 | 32 | 66 | 15 | 14 (75) | |
| pgscripts (217 strings) |
89 | 100 | 98 | 99 | 1 | 100 | 58 | 1 | 2 | 61 | 99 | 89 | 4 | 61 | 61 | 38 | 100 | 21 | 21 | 100 | 33 | 85 | 99 | 9 | 97 | 38 | 21 (73) | |||
| plperl (42 strings) |
97 | 97 | 97 | 97 | 2 | 100 | 2 | 4 | 2 | 9 | 95 | 97 | 97 | 2 | 95 | 92 | 78 | 97 | 9 | 2 | 100 | 2 | 97 | 97 | 95 | 97 | 73 | 18 (94) | ||
| plpgsql (172 strings) |
1 | 95 | 98 | 98 | 98 | 100 | 4 | 1 | 8 | 90 | 98 (E) | 95 | 1 | 1 | 85 (E) | 85 | 72 | 98 | 6 | 2 | 100 | 93 (E) | 98 | 89 | 94 | 71 | 18 (92) | |||
| plpython (87 strings) |
97 | 100 | 97 | 98 | 1 | 100 | 1 | 1 | 1 | 4 | 96 | 100 | 97 | 1 | 90 | 85 | 60 | 100 | 4 | 1 | 100 | 1 | 97 | 98 | 96 | 97 | 51 | 18 (92) | ||
| pltcl (19 strings) |
89 | 100 | 89 | 100 | 5 | 100 | 5 | 5 | 5 | 10 | 84 | 100 | 89 | 5 | 84 | 36 | 26 | 100 | 10 | 5 | 100 | 5 | 89 | 100 | 84 | 89 | 26 | 18 (82) | ||
| postgres (5625 strings) |
1 | 2 | 99 | 3 | 99 | 99 | 11 | 57 | 82 | 100 | 84 | 2 | 4 | 72 | 61 | 4 | 99 | 20 | 4 | 100 | 76 | 99 | 86 | 47 | 22 (59) | |||||
| psql (1290 strings) |
96 | 99 | 99 | 99 | 14 | 100 | 71 | 5 | 1 | 80 | 100 | 87 | 6 | 73 | 67 | 17 | 99 | 14 | 15 | 100 | 1 | 80 | 99 | 54 | 98 | 53 | 24 (67) | |||
| 26 | 2 (10) | 23 (91) | 26 (99) | 24 (97) | 26 (98) | 2 (18) | 26 (99) | 8 (55) | 2 (14) | 3 (11) | 1 (57) | 17 (71) | 26 (98) | 25 (89) | 7 (18) | 1 (4) | 26 (65) | 18 (61) | 14 (36) | 26 (99) | 9 (15) | 10 (19) | 26 (100) | 7 (37) | 24 (84) | 26 (98) | 15 (71) | 26 (95) | 15 (48) | 461 (80) |