chatty.github.io/localization.html
tduva 03cf19d1dd Update index, localization info
- Switch standalone download to fixed version
- Add note about 8u161/162
- Improve localization info and add notes about the export process and editing the English original file
2018-02-23 20:36:14 +01:00

149 lines
6.5 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<title>Translate Chatty - Chatty - Twitch Chat Client</title>
<link rel="icon" href="icons2.ico" type="image/x-icon" />
<style type="text/css">
body {
font-size: 1em;
font-family: Arial, sans-serif;
background-color: #EEE;
}
#content {
margin: auto;
width: 1000px;
background-color: #FFF;
padding: 30px;
border: 1px solid #DDD;
clear:both;
}
li {
margin: 5px;
}
h1 {
display: inline;
}
h2 {
font-size: 1.1em;
}
h3 {
font-size: 0.9em;
}
#menu {
display: inline;
}
#menu li {
display: inline;
}
#ago {
display: inline;
font-weight: bold;
color: Firebrick;
border: 0px solid #333;
float: right;
}
#top {
width: 1000px;
margin: auto;
text-align: right;
margin-top: 10px;
}
#bottom {
width: 1000px;
margin: auto;
text-align: center;
margin-top: 10px;
}
#project {
float: right;
padding-bottom: 10px;
}
#twitter {
float:right;
padding-right: 25px;
}
#youtube {
float:right;
padding-right: 25px;
}
#flattr {
float:left;
}
dt {
margin-top: 8px;
margin-bottom: 2px;
}
.new {
font-size: 0.75em;
font-style: italic;
background-color: #FFFF77;
}
</style>
</head>
</head>
<body>
<div id="top">
<div id="project"><a href="https://github.com/chatty/chatty">GitHub</a></div>
<div id="youtube"><a href="https://youtube.com/chattyclient">YouTube Channel</a></div>
<div id="twitter"><a href="https://twitter.com/ChattyClient"><img src="twitter.png" /></a></div>
</div>
<div id="content">
<h1><img src="icons2.png" style="margin-bottom: -5px;padding-right: 7px;" />Translate Chatty <span style="font-size:0.7em"><a href="index.html">to main page</a></span></h1>
<p>Parts of Chatty can be translated into different languages, and you can help!</p>
<h2>Getting started</h2>
<p><a href="https://poeditor.com/join/project/1Lld6f5Swi">Join the localization project</a> and tell me the account name you used so I can approve it. The best way is via <a href="https://discord.gg/WTuqGeJ">#localization on Discord</a>, but you can also <a href="mailto:chattyclient@gmail.com">send a mail</a>. If the language you want to work on hasn't been added yet, tell me.</p>
<p>Remember that you can also join languages that have already been completely translated, since future Chatty updates will likely also require more or updated translations. This is especially true now, since still not all GUI parts have been added for localization yet.</p>
<p>Note that not everything can be translated yet, and the help pages probably won't be at all, since it would be too much work to keep updated. My goal for now is to make the basic functions of the program more comfortable to use for people who don't speak English as their first language.</p>
<h2>Translation Guidelines</h2>
<ul>
<li>You don't have to translate everything. If there is no good translation for something, just keep it in English (this especially applies if the English term is commonly used in that language and better fitting).</li>
<li>Strings that aren't translated will automatically fallback to English, so please don't just copy the English strings to fill translations, unless the English string <em>is</em> the translation (see previous point).</li>
<li>If you're translating a term specific to Twitch or Streaming, try to use the "official" translation from the Twitch website.</li>
<li>Try to be consistent within each language, for example check other translations for already used terms.</li>
<li>Try to replicate things like strings ending with a colon (e.g. <code>Language:</code>) or HTML codes.</li>
<li>In some cases (like button labels) it can be important that the translated text is not too long, so it may be necessary to rephrase things.</li>
<li>Translations that are marked as <a href="https://poeditor.com/kb/fuzzy-translations">Fuzzy</a> should be reviewed again, usually because the original string has changed and the translation may have to be updated. You can filter and order by Fuzzy strings. If you are satisfied that the translation is correct, you can remove the Fuzzy flag.</li>
</ul>
<h3>Questions / Discussion</h3>
<ul>
<li>The <a href="https://poeditor.com/kb/using-the-comment-system">comments</a> for a specific translation item sometimes give additional hints about the string and can be used for basic discussion.</li>
<li>Another (probably better) place to discuss things is <a href="https://discord.gg/WTuqGeJ">#localization on Discord</a>.</li>
</ul>
<h3>Replacements</h3>
<p>Something like <code>{0}</code> in a string is replaced with a certain value, for example in <code>Join #{0}</code> the <code>{0}</code> is replaced with the stream name (e.g. resulting in <code>Join #joshimuz</code>).</p>
<p>Replacements use the <a href="https://docs.oracle.com/javase/8/docs/api/java/text/MessageFormat.html">MessageFormat</a> class, you can read that documentation if you're interested, although mostly it's enough to just stick close to the template. One important thing is that any single quotes need to be escaped with a single quote (e.g. <code>Can''t join ''{0}''</code>).</p>
<p>The more advanced <code>choice</code> pattern is commonly used for plurals: <code>Join {0,choice,1#|1&lt;{0} }{0,choice,1#channel|1&lt;channels}</code>. In this example there are two separate choice patterns (<code>{0,choice,&lt;choices&gt;}</code>), both using the first parameter (<code>0</code>), which contains the number of channels:</p>
<ul>
<li>The first one <code>{0,choice,1#|1&lt;{0} }</code> outputs the number and a space (<code>{0} </code>) only if it's greater than one.</li>
<li>In the second one the choices are "<code>1#channel</code>" and "<code>1&lt;channels</code>", meaning if the parameter is 1 it will be replaced with "channel", if it's 1 or greater it will be replaced with "channels" (the plural). In this case the number should never be 0, so that's not a consideration.</li>
</ul>
<h2>After Translation</h2>
<p>Translations are commited to the repository by myself, since the files have to be converted into the format I want (e.g. proper structure and order of items). The process is mostly automated. It also adds the names of contributors to each language at the top of the file (if you want to be excluded from that or want to appear with a different name, let me know).</p>
<h2>Other</h2>
<p>Changes of the <a href="https://github.com/chatty/chatty/blob/master/src/chatty/lang/Strings.properties">original English strings</a> have to be done via GitHub (the normal way via Pull Requests).</p>
</div>
</body>
</html>