2017-09-07 23:02:11 +02:00
|
|
|
|
# How to translate publiccode.eu
|
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
Translating the publiccode.eu website isn't really hard but may be a bit
|
|
|
|
|
different from what you worked with before. Before starting, please read the
|
|
|
|
|
[README.md](https://git.fsfe.org/pmpc/website/src/master/README.md) file which
|
|
|
|
|
will give you an overview of how this website is structured and built.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
|
|
|
|
## Preparations
|
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
You should already have cloned the Git repository to your computer and be
|
|
|
|
|
familiar with working with Git. You find the necessary instructions and links
|
|
|
|
|
to tutorials in the aforementioned README file. Don't be afraid: you don't have
|
|
|
|
|
to be a programmer to get Git working for you :)
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
|
|
|
|
What you should have:
|
|
|
|
|
|
|
|
|
|
- An account on git.fsfe.org
|
2017-09-08 12:07:54 +02:00
|
|
|
|
- Know how to clone, pull, commit, and push with Git (read the [general
|
|
|
|
|
Git guides](https://wiki.fsfe.org/TechDocs/Git) and/or the [typical
|
|
|
|
|
Git
|
|
|
|
|
workflow](https://wiki.fsfe.org/TechDocs/Mainpage/Editing#Edit_and_push_files_to_the_website))
|
2017-09-07 23:02:11 +02:00
|
|
|
|
- Optional: Hugo installed on your computer
|
|
|
|
|
- Optional: The ability to run Bash scripts from command line
|
|
|
|
|
|
2017-09-08 11:15:17 +02:00
|
|
|
|
To be able to push your files to the git repository (i.e., `git push`), please
|
|
|
|
|
ask @max.mehl for write access. This workflow will soon be changed so that you
|
|
|
|
|
do not need write access, but the documentation on that is not yet complete.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
|
|
|
|
## Translatable files
|
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
There are a few locations where you find translatable files. All of them are
|
|
|
|
|
inside the `site/` directory
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
|
|
|
|
### Content/
|
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
In `content/` are the sub-pages like [/privacy](https://publiccode.eu/privacy).
|
|
|
|
|
All files are written in the [Markdown
|
|
|
|
|
syntax](https://en.wikipedia.org/wiki/Markdown) which is very easy to learn and
|
|
|
|
|
much more comfortable to write and translate than HTML.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
In all files you'll find a *header* which starts and ends with `---` (three
|
|
|
|
|
dashes). In this header, all you have to translate is the `title:` value which
|
|
|
|
|
defines the title and headline of the page. The other values like `type` and
|
|
|
|
|
`layout` stay the same over all languages.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
The majority of the file is just text with very little markdown syntax. You
|
|
|
|
|
should keep markup like `**`, `>`, `[fs]`, or `{{< fsdefinition >}}`. For
|
|
|
|
|
hyperlinks like `[TEXT](http://link)`, please only translate the content inside
|
|
|
|
|
the quare brackets (TEXT), the link has to stay the same obviously.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
|
|
|
|
### data/share/
|
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
In `data/share/en/`, `data/share/it/` and so on there are tiny *.yaml* files
|
|
|
|
|
for each share service we're offering (e.g. GNU Social or Diaspora).
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
There are only a few strings to translate. `titleBefore` is the text in front
|
|
|
|
|
of the service's name, `titleAfter` the one behind. You can fill both fields to
|
|
|
|
|
translate it. In English, this may be *Share on XYZ*, in German it is *Auf XYZ
|
|
|
|
|
teilen*. There's also `customText` sometimes where you can find instructions
|
|
|
|
|
how to translate it.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
|
|
|
|
### languages/
|
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
Here you find one larger file for each language – e.g. `strings.en.toml` for
|
|
|
|
|
English, `strings.de.toml` for German.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
If your language isn't present, copy the file `strings.XY.toml.sample` and
|
|
|
|
|
rename it according to your two-letter language code. Then open it and
|
|
|
|
|
translate all strings you find (there are only a few marked which you cannot
|
|
|
|
|
translate).
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
Some strings contain the Markdown links you already know (`[TEXT](LINK)`).
|
|
|
|
|
Again, please just translate the TEXT part, not the LINK.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
At some occasions you'll find a variable like `$INDS`. Leave them as is, they
|
|
|
|
|
will automatically replaced by numbers or similar auto-generated content.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
Regarding the campaign name *Public Money, Public Code*. In the past we haven't
|
|
|
|
|
made good experiences with translating such campaign names. All our graphics,
|
|
|
|
|
logos, and other communication is using this brand. So if you can, just stick
|
|
|
|
|
to the English term.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
|
|
|
|
|
2017-09-08 12:07:54 +02:00
|
|
|
|
## Where to upload the translations?
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
2017-09-08 12:07:54 +02:00
|
|
|
|
**Before submitting** the translations you can test them locally if you
|
|
|
|
|
have Hugo installed and are able to execute Bash scripts on your command
|
|
|
|
|
line. Please refer to [build section in
|
|
|
|
|
README.me](https://git.fsfe.org/pmpc/website/src/master/README.md#build)
|
|
|
|
|
for instructions.
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
2017-09-08 12:07:54 +02:00
|
|
|
|
You're welcome to work with the Git repository to upload your
|
|
|
|
|
translations. If you feel confident enough with Git, please open a pull
|
|
|
|
|
request of a separate branch in this repository or your fork. @max.mehl
|
|
|
|
|
can help you if you have questions or lack permissions.
|
|
|
|
|
|
|
|
|
|
For Git, there are three ways which are explained in the aforementioned
|
|
|
|
|
build README section:
|
|
|
|
|
1. Git Pull Requests from your repository forks
|
|
|
|
|
2. Git pushes to the central master branch (requires write access)
|
|
|
|
|
3. Edit the files directly in the git.fsfe.org web interface (requires
|
|
|
|
|
write access)
|
2017-09-07 23:02:11 +02:00
|
|
|
|
|
2017-09-07 23:08:56 +02:00
|
|
|
|
If you are unsure, you can also send the translations to [FSFE's translators
|
|
|
|
|
list](https://lists.fsfe.org/mailman/listinfo/translators) to let them
|
|
|
|
|
proofread by other speakers of your language.
|