Guide to Translating www.gnu.org Web Pages
General Guide
- Before doing anything, read both
- the Guidelines for GNU Web Site Volunteers,
- the FSF HTML Style Sheet, http://www.gnu.org/server/fsf-html-style-sheet.html
- After reading this page, refer to the Translations Underway list, and check if there is already a team formed for the language you want to translate to. If not, contact web-translators@gnu.org, and ask if you can start a new team for your language.
Two-letter Language Codes
- RFC 1766 describes what two-letter language codes are allowed. ISO 639 gives the two-letter language codes in it's 2nd column. Later versions of RFC 1766 and ISO 639 may exist.
- If ISO 639 does not have a code, do some research and find out the right one to use. ISO 3166 gives the codes for countries. Language and country codes do not have to be the same. It is a mistake to assume a country code can be substituted for a language code - unless you verify it against a standard.
What to Translate
- Documents should be converted together with their "glue pages", such as home.html and philosophy/philosophy.html.
- Don't translate anything under these directories:
/software/
- We leave that area up to each maintainer. But if you want to help a maintainer do translations, ask hir (him or her).
/brave-gnu-world/
- Here's how to help translate Brave GNU World.
- When translating "GNU's Not Unix," please ensure that the translation remains recursive. If a recursive translation cannot be conceived, use the following format: "GNU's Not Unix" (GNU är inte Unix).
Translating the home page
- The translated homepage must include the full list of
translations via SSI.
The required SSI tag looks like this:<!--#include file="translations.include" -->
- If you provide a new home page translation you must update the
translations.include
file. The file is stored in the GNU webservers root directory.
Linking Other Documents
- All links are relative to the web server root, meaning that they should link to, for example, /software/software.html and not just software.html.
- Link should be made pointing to a translated page if it exists, else made pointing to the English original. You should NOT make links that depend upon content negotiation. One reason is that they will fail on mirror servers that do not do content negotiation.
Translations into Other Languages
- The top and bottom of all translations (including the English original) should contain links to other translations of the document when such exists. See the http://www.gnu.org/boilerplate.html for an example on how to do this.
Filenames
- Translations should be named
PAGENAME.LG.html
whereLG
is the two-letter language code. For example, a German translation of home.html should be namedhome.de.html
. - There exists a symlink
index.html
pointing to some other fileother.html
. Create a symlink namedindex.LG.html
pointing to the correct translationother.LG.html
.
Tools to Help Translators
- A file
TAGS.LG
in directory~www/html/
lists all the HTML files translated into language LG. These files allow one to search or query replace all of the HTML files for a language code LG. See these instructions for more information.
Keeping Translations Current
- For all translations to be kept current, you should subscribe to the www-commits mailing list. Then you will get sent one email for each page that is modified in cvs (for the www module). The traffic is around 4-5 mails per day, more on weekends. It's suggested that you save all such email and burst through them about once a week to make sure the translations are current.
Translations Underway
The two-letter language code is followed by the name of the language, and the name and e-mail address of the translation team leader.Translation Teams:
??
- This place is reserved for your name, when you form a translation team for another language.!!
- Contact the Translation Managers at <web-translators@gnu.org> if you would like to form a Translation Team and be listed as the translation team lead for your language.ar
- Arabic (Hossam Hossny, Engy Hussein, Jalal Noureddine, free arabic translation, Arabic translation team)az
- Azerbaijani (Igrar Huseynov)bg
- Bulgarian (Yavor Doganov, Bulgarian translation team)bn
- Bengali (Khandakar Mujahidul Islam, Bengali translation team)bs
- Bosnianca
- Catalan (Miquel Puigpelat, Catalan translation team)cs
- Czech (Martin Kysela, Czech translation team)da
- Danish (Erik Gravgaard, Danish translation team)de
- German (Richard Steuer, German Translation Team)el
- Greek (Kasabalis Athanasios, Greek translation team)eo
- Esperanto (Ludovic Courtès, Esperanto translation team)es
- Spanish (Antonio Regidor García, Xavier Reina, Miguel Vazquez Gocobachi and Franco Iacomella; Spanish translation team)fa
- Farsi/Persian (A. E. Some`eh, Farsi/Persian translation team)fi
- Finnish (Ville, Finnish translation team)fr
- French (Yann Le Bris, Jerome Dominguez, French translation team, TradGnu at APRIL)gl
- Galicianhe
- Hebrew (Oren Maurer, Hebrew translation team)hr
- Croatianhu
- Hungarianid
- Indonesian (Rahmat M. Samik-Ibrahim – Indonesian translation team)it
- Italian (Italian translation team, <thegnuproject@softwarelibero.it> - mailing list, subscribe first)ja
- Japanese (Masayuki Hatta)ko
- Korean (Song Chang-hun, <chsong@gnu.org>)ku
- Kurdish (Abdullah Ulas, Kurdish translation team)ml
- Malayalam (Vivek Varghese Cherian, Malayalam translation team)nl
- Dutch (Tom Uijldert, Dutch translation team)nn
- Norwegian Nynorsknb
- Norwegian Bokmål (Andreas Tolfsen, Norwegian Bokmål translation team)pl
- Polish (Wojciech Kotwica <wkotwica@post.pl>, Polish translation team)pt
- Portuguese (Fernando Lozano <fernando@lozano.eti.br>, Portuguese translation team)ro
- Romanian (Laurentiu Buzdugan, Romanian translation team)ru
- Russian (Anatoly A. Kazantsev, Russian translation team)sl
- Sloveniansq
- Albanian (Besnik Bleta, Albanian translation team)sr
- Serbian (Strahinya Radich, Serbian translation team)sv
- Swedish (Pål Brattberg <brattberg@gmail.com>)ta
- Tamil (Sri Ramadoss, Tamil translation team)tl
- Tagalog (Jonathan, Green Crescent Translations)tr
- Turkish (Ali Servet Donmez, Turkish translation team)uk
- Ukrainian (Evgeniy Sudyr, Ukrainian translation team)vi
- Vietnamesezh-cn
- Simplified Chinese (Cai Wenliang, Chinese Translation Team)zh-tw
- Traditional Chinese (Cai Wenliang, Chinese Translation Team)
en
- English
Final Notes
If you translate a page for www.gnu.org, please insert the following tag, in the<HEAD>...</HEAD>
(or <head>
for xhtml) section. Where
web-translators-es@gnu.org
is the forwarding address
for your translations team:
<link rev="translated" href="mailto:web-translators-es@gnu.org" />