path: root/README
blob: 5f4302ce8412b7f35441e069f59c1a129febb3a0 (plain)
  1. Ikiwiki w/ translations
  2. =======================
  3. Ikiwiki[1] is a perl-based wiki compiler.
  4. This is routines to manage translatable parts of Ikiwiki and translations into
  5. the following locales:
  6.  * danish (da) by Jonas Smedegaard <>
  7. Getting the source
  8. ------------------
  9. This README file is available at together with a GIT
  10. repository with source of the translation routines. Pull it like this:
  11.     git clone git://
  12. Installation
  13. ------------
  14. To pull in all translatable and translated parts, do this:
  15.     make
  16. Customizing
  17. -----------
  18. To publish your own forked repository through web, you first need to create a
  19. special public repository that you "push" your changes into from your private
  20. working repository - like this:
  21.     GIT_DIR=public_dir/repository_name.git git --bare init --shared
  22.     chmod +x public_dir/repository_name.git/hooks/post-update
  23. To actually use your newly created public repository created above, you need to
  24. populate it with your current working repository (the --all option is only this
  25. once, not on subsequent pushes) - like this:
  26.     git config remote.origin.url git-reference-to-public-repository
  27.     git push --all
  28. To instead populate your newly created public repository with a multi-branched
  29. local repository, first make a complete clone with all branches setup locally,
  30. and push it all - like this for repository with master and master-da branches:
  31.     git clone git-reference-to-old-public-repository some-temp-dir
  32.     cd some-temp-dir
  33.     git checkout -b master-da origin/master-da
  34.     git config remote.origin.url git-reference-to-public-repository
  35.     git push --all
  36. To resyncronize an older fork of the repository with newer upstream changes, do
  37. like this (skip first command on subsequent updates):
  38.     git remote add ikiwiki git://
  39.     git pull ikiwiki master
  40. Translation
  41. -----------
  42. Some modules (markdown files - template files are not yet supported by po4a) is
  43. translatable through the gettext system using PO files.
  44. To update PO templates for all modules marked as supporting gettext, do this:
  45.     make pot
  46. To update PO files for all supported locales of all supported modules, do this:
  47.     make po
  48. To update all gettext-supported modules based on newer PO files, do this:
  49.     make translations
  50. To initialize new locales, do like this (all on one line):
  51.     make po po-init-modules="module1 module2" po-init-locales="da sv no"
  52. If you want to initialize based on an existing locale rather than the master,
  53. add the origin locale to the above make command similar to this:
  54.     make po [...] po-init-fromlocale=de
  55. To add new modules and locales as gettext supported, add them to *_POMODULES
  56. and *_POLOCALES. Keep them alse in *_MODULES and *_LOCALES to support pulling
  57. final translations without recreating from PO files.
  58. Please beware that the automated po4a process is not perfected yet, so check
  59. the result before use.
  60. ----
  61. References:
  62. [1]