Jonas Häggqvist | 31ca70b | 2010-01-31 00:44:07 +0000 | [diff] [blame] | 1 | {include file="header.tpl" title=$title rss="rss.php"} |
| 2 | |
| 3 | <h1>Rockbox translations</h1> |
| 4 | |
| 5 | <p> |
| 6 | On this page you can see the current status of the various Rockbox translations. |
| 7 | Ideally, all languages below should be at 100%. In reality though, this is not |
| 8 | the case. You can help remedy this situation by clicking on the name of a |
| 9 | language you speak and help translate Rockbox all within the comfort of your |
| 10 | webbrowser. Alternatively, you can go to <a |
Solomon Peachy | 5c91bbb | 2020-05-21 20:59:25 -0400 | [diff] [blame] | 11 | href="//www.rockbox.org/twiki/bin/view/Main/LangFiles">this page</a> in the |
Jonas Häggqvist | 31ca70b | 2010-01-31 00:44:07 +0000 | [diff] [blame] | 12 | Rockbox wiki, which will tell you how to update languages the more manual, but |
| 13 | possibly slightly safer way. |
| 14 | </p> |
Solomon Peachy | 5c91bbb | 2020-05-21 20:59:25 -0400 | [diff] [blame] | 15 | <p>You can also find some stats about <a href="//translate.rockbox.org/whichfont.php">font coverage</a>.</p> |
Solomon Peachy | a7f2dca | 2020-07-14 08:31:11 -0400 | [diff] [blame] | 16 | <p><em>Note that the Rockbox Utility is translated separately, please see the |
| 17 | <a href="//www.rockbox.org/wiki/Main/RockboxUtilityDevelopment#How_to_Translate">Rockbox Utility Development</a> page on the wiki.</em></p> |
Jonas Häggqvist | 31ca70b | 2010-01-31 00:44:07 +0000 | [diff] [blame] | 18 | |
| 19 | <h2>Current translation status</h2> |
| 20 | <ul> |
| 21 | {foreach from=$summary key=k item=v} |
| 22 | <li>{$v} {$k} translations |
| 23 | {if $k=="good"}(>95% translated){/if} |
| 24 | {if $k=="normal"}(>50% translated){/if} |
| 25 | {if $k=="bad"}(<50% translated){/if} |
| 26 | </li> |
| 27 | {/foreach} |
| 28 | </ul> |
| 29 | |
| 30 | <table> |
| 31 | <thead> |
| 32 | <tr> |
| 33 | <td colspan='4'>Language</td> |
| 34 | <td>Last update</td> |
| 35 | <td>Progress</td> |
Solomon Peachy | b61343c | 2020-07-27 15:59:47 -0400 | [diff] [blame^] | 36 | <td>Missing phrases</td> |
Jonas Häggqvist | 31ca70b | 2010-01-31 00:44:07 +0000 | [diff] [blame] | 37 | <td>Changed description</td> |
| 38 | <td>Changed source</td> |
Solomon Peachy | b61343c | 2020-07-27 15:59:47 -0400 | [diff] [blame^] | 39 | <td>Missing translation</td> |
| 40 | <td>Missing voice</td> |
| 41 | <td>Same as English</td> |
Jonas Häggqvist | 31ca70b | 2010-01-31 00:44:07 +0000 | [diff] [blame] | 42 | </tr> |
| 43 | </thead> |
| 44 | {foreach from=$langstats key=langfile item=language} |
| 45 | {if $language.percentage == 100} |
| 46 | {assign var='rowclass' value='good'} |
| 47 | {elseif $language.percentage < 50} |
| 48 | {assign var='rowclass' value='poor'} |
| 49 | {else} |
| 50 | {assign var='rowclass' value=''} |
| 51 | {/if} |
| 52 | <tr class="{$rowclass}"> |
| 53 | <td> |
| 54 | <img class="flagthumb" src="flags/22/{$language.flag}.png" /> |
| 55 | </td> |
| 56 | <td> |
Solomon Peachy | be29be1 | 2020-04-10 16:39:41 -0400 | [diff] [blame] | 57 | {if $langfile != 'english'} |
Jonas Häggqvist | 31ca70b | 2010-01-31 00:44:07 +0000 | [diff] [blame] | 58 | <a href='problems.php?lang={$langfile}'><img style='border: none' src='warning.gif' width='16' height='16' /></a> |
Solomon Peachy | be29be1 | 2020-04-10 16:39:41 -0400 | [diff] [blame] | 59 | {/if} |
Jonas Häggqvist | 31ca70b | 2010-01-31 00:44:07 +0000 | [diff] [blame] | 60 | </td> |
| 61 | <td> |
| 62 | {if file_exists('graphs/$langfile')} |
| 63 | <a href='graphs/{$langfile}.png'><img style='border: none' src='graph.png' width='16' height='16' /></a> |
| 64 | {/if} |
| 65 | </td> |
| 66 | <td> |
Solomon Peachy | b61343c | 2020-07-27 15:59:47 -0400 | [diff] [blame^] | 67 | {if $language.percentage == 100 && $language.desc == 0 && $language.source == 0 && $language.dest == 0 && $language.voice == 0} |
Jonas Häggqvist | 31ca70b | 2010-01-31 00:44:07 +0000 | [diff] [blame] | 68 | {$language.name} |
| 69 | {else} |
| 70 | <a href='edit.php?lang={$langfile}'>{$language.name}</a> |
| 71 | {/if} |
| 72 | </td> |
| 73 | <td> |
Solomon Peachy | 18b7141 | 2020-07-08 21:11:27 -0400 | [diff] [blame] | 74 | <a href='//git.rockbox.org/cgit/rockbox.git/commit/?id={$language.last_update_rev}' title='{$language.last_update|date_format:"%c"}'> |
Jonas Häggqvist | 31ca70b | 2010-01-31 00:44:07 +0000 | [diff] [blame] | 75 | {$language.last_update|simple_timesince} |
| 76 | </a> |
| 77 | </td> |
| 78 | <td><img title='{$language.percentage|string_format:"%.2f%%"}' src='graph.php?p={$language.percentage|string_format:"%.2f"}' /></td> |
| 79 | </td> |
| 80 | <td>{$language.missing}</td> |
| 81 | <td>{$language.desc}</td> |
| 82 | <td>{$language.source}</td> |
Solomon Peachy | b61343c | 2020-07-27 15:59:47 -0400 | [diff] [blame^] | 83 | <td>{$language.dest}</td> |
| 84 | <td>{$language.voice}</td> |
| 85 | <td>{$language.voicedup + $language.destdup}</td> |
Jonas Häggqvist | 31ca70b | 2010-01-31 00:44:07 +0000 | [diff] [blame] | 86 | </tr> |
| 87 | {/foreach} |
| 88 | </table> |
| 89 | |
| 90 | <h2>Perform automated cleanup</h2> |
| 91 | <p>Using the form below, it's possible to perform automated cleanups of a |
| 92 | translation. Be aware though, that this might produce unwanted results in some |
| 93 | cases, so you're required to check the results rather than blindly trusting |
| 94 | them.</p> |
| 95 | |
| 96 | <form action="fixlang.php" method="GET"> |
| 97 | <table> |
| 98 | <tr> |
| 99 | <td>Language</td> |
| 100 | <td> |
| 101 | <select name="lang"> |
| 102 | {foreach from=$languages item=language key=langfile} |
| 103 | {if $langfile != 'upload'} |
| 104 | <option value='{$langfile}'>{$language.name}</option> |
| 105 | {/if} |
| 106 | {/foreach} |
| 107 | </select> |
| 108 | </td> |
| 109 | </tr> |
| 110 | <tr> |
| 111 | <td> |
| 112 | <label for='voice' title='Copy translation to voice for phrases where string and voice are the same in the English language file'>Copy voice strings</label> |
| 113 | </td> |
| 114 | <td> |
| 115 | <input type='checkbox' id='voice', name='voice' title='Copy translation to voice for phrases where string and voice are the same in the English language file' /> |
| 116 | </td> |
| 117 | </tr> |
| 118 | <tr> |
| 119 | <td> |
| 120 | <label for='empty' title='Make empty and "none" strings match the English language file'>Fix empty strings</label> |
| 121 | </td> |
| 122 | <td> |
| 123 | <input type='checkbox' id='empty', name='empty' title='Make empty and "none" strings match the English language file' /> |
| 124 | </td> |
| 125 | </tr> |
| 126 | <tr> |
| 127 | <td> |
| 128 | <label for='sort' title='Sort phrases in the same order as the English language file'>Sort in English order</label> |
| 129 | </td> |
| 130 | <td> |
| 131 | <input type='checkbox' id='sort', name='sort' title='Sort phrases in the same order as the English language file' /> |
| 132 | </td> |
| 133 | </tr> |
| 134 | <tr> |
| 135 | <td> |
| 136 | <label for='sendfile' title='Prompt to save the result on disk'>Save result as file</label> |
| 137 | </td> |
| 138 | <td> |
| 139 | <input type='checkbox' id='sendfile', name='sendfile' title='Prompt to save the result on disk' /> |
| 140 | </td> |
| 141 | </tr> |
| 142 | <tr> |
| 143 | <td align="right" colspan="2"><input type="submit" /></td> |
| 144 | </tr> |
| 145 | </table> |
| 146 | </form> |
| 147 | |
| 148 | </table> |
| 149 | |
| 150 | {include file="footer.tpl"} |