Translating WackoWiki

This guide is about translating WackoWiki to another language.


WackoWikiĹs userinterface can be configured to use any language by setting the appropriate option. Have a look in the lang directory to see which languages are available. To translate WackoWiki to your own language, copy the lang/en directory to a new one named after your ISO language code.


1. Supported Languages


# User Documentation Localization Repository Charset Abbr. Maintainer
1 Deutsch Deutsch iso-8859-1 de WikiAdmin
2 English English? iso-8859-1 en
3 Spanish ((!/es )) iso-8859-1 es KlePy
4 French Franšais iso-8859-1 fr Didier Spaier
5 Polski Polski? iso-8859-2 pl
6 Portugues ((!/pt )) iso-8859-1 pt
7 Russain ((!/ru )) windows-1251 ru DrFreeman
8Bulgarian Bulgarian? windows-1251 bg
9 Italian ((!/it )) iso-8859-1 it
10 Danish Danish iso-8859-1 da
11 Estonian((!/et )) windows-1257 et
12 Hungarian Hungarian((!/hu )) iso-8859-2 hu
13 Dutch ((!/nl )) iso-8859-1 nl
14 Greek Ελληνικά iso-8859-7 el EvaggelosBalaskas

Important: Please note that we have not verified those translations. If you believe that a translation is false or misleading, please contact us.

2. Message sets

2.1. Locations

Message sets can be found under the following locations:


Repo: https://bitbucket.org/wackowiki/wackowiki-dev/src/tip/

  • wacko/
    • js/lang/
    • lang/
    • setup/lang/
    • theme/yourtheme/lang/

2.2. To Localize

Please check your language files whether the following message sets have yet to be translated into your language.

2.2.1. Main


/lang

  1. lang/wacko.en.php – default language file

2.2.2. Installer


/setup/lang

  1. setup/lang/installer.en.php ľ default language file
  2. setup/lang/inserts.en.php

2.2.3. Admin panel


admin/ap.en.php ľ default language file

  1. admin/lang/

2.2.4. JavaScript


/js/lang

  1. js/lang/wikiedit.en.js ľ default language file

3. Documentation


Core pages to translate

  1. Features [source?]
  2. Requirements [source?]
  3. Installation [source?]
  4. Configuration
  5. Content-Security-Policy (CSP)
  6. Formatting
  7. Actions
  8. Access Control Lists
  9. WikiConcept
  10. WackoWiki Concept
  11. Marking (Wacko Formatter)

4. Help to improve translation

Don't see your native language here? Is a translation incomplete or improper?


If your ability in English is sufficient to produce high-quality translations of English texts in a formal style, you can volunteer to translate WackoWiki.


Forum: Translation

  • you want to start a new translation or continue an existing one and you want to avoid duplicating your work with someone else
  • you're looking for other people who want to work with you on translating
  • you're having technical questions about tools, the source tree, the meaning of terms, etc.

5. Tools

  • sync message sets in all language files based on default file (en)
    1. https://bitbucket.org/wackowik[..]er=file-view-default
    • add/delete to english, run # relang wacko.en.php wacko.??.php and all set & done
    • /*
       * ./relang.php wacko.en.php wacko.bg.php wacko.da.php wacko.de.php wacko.el.php wacko.es.php wacko.et.php wacko.fr.php wacko.hu.php \
       * 			wacko.it.php wacko.nl.php wacko.pl.php wacko.pt.php wacko.ru.php
       *
       * all changes in en.php (first file) will be moved to other files.
       * all deletions will be made.
       * all additions will be made.
       * all reordering will be made (but values remain localized if already was)
       * incl. comments! :)
       *
       * no need to sync ALL languages manually - just edit english and push changes to other langs
       * (new messages will be english, though, and if translation is available but you change %1 or other
       * formatting - be aware: it is better to remove it, resync to other langs, than add new, resync again.
       * translation would be lost, though)
       *
       * you can massively rename resource names, without losing available localizations:
       * use meta-comment in parent (first in cmd line) file:
      	// RENAME OldTag NewTag
      	'NewTag' => ...
       * e.g. resource himself must be manually renamed in parent
       * after running 'relang wacko.en.php wacko.??.php' then - RENAME comment will be stripped from .en. too
       *
       * enjoy! /sts
       *
       *//// NB /*...*/ comments in language files not supported!

In *nix systems, use the WHICH command to show the location of the php binary executable. This is the path to use as the first line in your php shell script file.


# which php
/usr/local/bin/php


cd /yourpathto/repo/community/devel


php ./relang.php /yourpathto/repo/wacko.en.php wacko.bg.php wacko.da.php wacko.de.php wacko.el.php wacko.es.php wacko.et.php wacko.fr.php wacko.hu.php wacko.it.php wacko.nl.php wacko.pl.php wacko.pt.php wacko.ru.php


no var in /home/user/workspace/dev/wacko/lang/wacko.en.php

FIXED diff --git a/community/devel/relang.php b/community/devel/relang.php
--- a/community/devel/relang.php
+++ b/community/devel/relang.php
@@ -57,7 +57,7 @@
 	$contents = trim($contents);
 
 	$parent = 0;
-	if (!preg_match('/\$([\w_]+)\s*=\s*array\s*\(/', $contents, $match))
+	if (!preg_match('/\$([\w_]+)\s*=\s*\[/', $contents, $match))
 	{
 		if (!$defvar) die("no var in $fname\n");
 		$var = $defvar;


php ./relang.php /home/user/workspace/dev/wacko/admin/lang/ap.en.php /home/user/workspace/dev/wacko/admin/lang/ap.bg.php

dupe messages in /home/user/workspace/dev/wacko/admin/lang/ap.en.php

Complains about a dupe set but in another sub array


6. Suggestions

  1. /Users/DidierSpaier/ProposedSpecificationsForLanguagesHolding