From 29c522484c60fd4072385896510f8e77c375823a Mon Sep 17 00:00:00 2001 From: Tobias Jakobs Date: Thu, 7 Jan 2016 22:01:51 +0100 Subject: [PATCH] gettextExample.lua with po and mo files --- contrib/de_DE/LC_MESSAGES/gettextExample.mo | Bin 0 -> 596 bytes contrib/de_DE/LC_MESSAGES/gettextExample.po | 20 ++++++++ contrib/gettextExample.lua | 51 ++++++++++++++++++++ 3 files changed, 71 insertions(+) create mode 100644 contrib/de_DE/LC_MESSAGES/gettextExample.mo create mode 100644 contrib/de_DE/LC_MESSAGES/gettextExample.po create mode 100644 contrib/gettextExample.lua diff --git a/contrib/de_DE/LC_MESSAGES/gettextExample.mo b/contrib/de_DE/LC_MESSAGES/gettextExample.mo new file mode 100644 index 0000000000000000000000000000000000000000..d0ec975e6f221cb53e8f50151df7a29177c861b0 GIT binary patch literal 596 zcmZvZ&u-K(5XJ+7OW@QqhuIs5b(&-mteh^YT3WWS6#>GZ6VhxlWL>=W%J#POL3lmx zyakgiZ7z)TljqaS*q`m+d-r}t9Cw*V%$T{)957v!%tPiq^XEntU#!#3C@P)3pgM@NMtmmcl{FF;TZEQEpr4^4AL8;|C5|0o;Hr3qfh6Q<_FSZy zNMCR&CzGdXmZsb&KG3D=cKJ_VCMWr>Z-G9D%AxTZgLM)ryHx1m4gRo84+o)_$we;@ z+chek)OP(cUZ82W*pjFS*Ai~Egofhtv-6YT5?PYQ$JPWgeAM-ZJ$Lun-)K~(fO>__ zQ<#0KPQ`TS>nwdICr(Ul8)aGv)1?aWSMiz*xt-V2QlkQ7$uxP!m7Nqv=xKvtB_WAR zy>+O?sdZ~F!EAczXL$j;boSW5Xa?DnVwitR*H_jxexZDjH?Lnb|Gq)yMN<#Cxk* literal 0 HcmV?d00001 diff --git a/contrib/de_DE/LC_MESSAGES/gettextExample.po b/contrib/de_DE/LC_MESSAGES/gettextExample.po new file mode 100644 index 0000000..25cd06b --- /dev/null +++ b/contrib/de_DE/LC_MESSAGES/gettextExample.po @@ -0,0 +1,20 @@ +msgid "" +msgstr "" +"Project-Id-Version: Lua gettextTest\n" +"POT-Creation-Date: 2016-01-07 20:33+0100\n" +"PO-Revision-Date: 2016-01-07 21:32+0100\n" +"Last-Translator: Tobias Jakobs \n" +"Language-Team: \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.4\n" +"X-Poedit-Basepath: .\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-KeywordsList: gettext;dgettext:2;dcgettext:2;ngettext:1,2;dngettext:2,3\n" +"X-Poedit-SearchPath-0: .\n" + +#: gettextExample.lua:36 +msgid "Hello World!" +msgstr "Hallo Welt!" diff --git a/contrib/gettextExample.lua b/contrib/gettextExample.lua new file mode 100644 index 0000000..7a90410 --- /dev/null +++ b/contrib/gettextExample.lua @@ -0,0 +1,51 @@ +--[[ + This file is part of darktable, + Copyright 2016 by Tobias Jakobs. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +]] +--[[ +darktable script to show how translations works + +To create a .mo file run: +msgfmt -v gettextExample.po -o gettextExample.mo + +USAGE +* require this script from your main lua file (Add 'require "gettextExample"' to luarc.) +* copy the script to: .config/darktable/lua/ +* copy the gettextExample.mo to .config/darktable/lua/de_DE/LC_MESSAGES + +You need to start darktable with the Lua debug option: darktable -d lua +$LANG must set to: de_DE + +The script run on darktable startup and should output this three lines: + +LUA ERROR Hello World! +LUA ERROR Bild +LUA ERROR Hallo Welt! + +]] +local dt = require "darktable" +dt.configuration.check_version(...,{3,0,0}) + +-- Not translated Text +dt.print_error("Hello World!") + +-- Translate a string using the darktable textdomain +dt.print_error(dt.gettext.gettext("image")) + +-- Tell gettext where to find the .mo file translating messages for a particular domain +dt.gettext.bindtextdomain("gettextExample",".config/darktable/lua/") +-- Translate a string using the specified textdomain +dt.print_error(dt.gettext.dgettext("gettextExample", 'Hello World!'))