diff options
author | Sebastian Reichel <sre@ring0.de> | 2018-06-28 21:35:23 +0200 |
---|---|---|
committer | Sebastian Reichel <sre@ring0.de> | 2018-06-29 00:55:02 +0200 |
commit | 8e60fa48a8535da9eaa34ef35b5040c2eb68fc3b (patch) | |
tree | a19bdf74637b225eed75fdc084805c09df43c426 /src/pdf-stock | |
parent | fb75ceb1c5a415cc6667043b1123e42586b1d9b1 (diff) | |
download | serial-barcode-scanner-8e60fa48a8535da9eaa34ef35b5040c2eb68fc3b.tar.bz2 |
all: I18N support
This adds I18N support using standard gettext system together
with an initial German translation. This can be used to search
locales in some directory:
Intl.bindtextdomain("shopsystem", "/home/sre/src/serial-barcode-scanner");
And this can be used to switch language at runtime:
Intl.setlocale(LocaleCategory.ALL, "");
Diffstat (limited to 'src/pdf-stock')
-rw-r--r-- | src/pdf-stock/Makefile | 4 | ||||
-rw-r--r-- | src/pdf-stock/main.vala | 11 | ||||
-rw-r--r-- | src/pdf-stock/test.vala | 6 |
3 files changed, 13 insertions, 8 deletions
diff --git a/src/pdf-stock/Makefile b/src/pdf-stock/Makefile index 2c8be58..c310c65 100644 --- a/src/pdf-stock/Makefile +++ b/src/pdf-stock/Makefile @@ -6,10 +6,10 @@ all: pdf-stock @echo > /dev/null pdf-stock: main.vala pdf-stock.vala ../database/db-interface.vala ../price.vapi ../../libcairobarcode/libcairobarcode.vapi - ${VALAC} -X -w ${LIBCAIROBARCODE} -o $@ --pkg cairo --pkg pangocairo --pkg gio-2.0 --pkg posix $^ + ${VALAC} -X -D'GETTEXT_PACKAGE="shopsystem"' -X -w ${LIBCAIROBARCODE} -o $@ --pkg cairo --pkg pangocairo --pkg gio-2.0 --pkg posix $^ test: test.vala pdf-stock-interface.vala - ${VALAC} -X -w -o $@ --pkg gio-2.0 $^ + ${VALAC} -X -D'GETTEXT_PACKAGE="shopsystem"' -X -w -o $@ --pkg gio-2.0 $^ run: pdf-stock LD_LIBRARY_PATH=../../libcairobarcode ./pdf-stock diff --git a/src/pdf-stock/main.vala b/src/pdf-stock/main.vala index 49613f4..10aef60 100644 --- a/src/pdf-stock/main.vala +++ b/src/pdf-stock/main.vala @@ -14,23 +14,26 @@ */ public static int main(string[] args) { + Intl.setlocale(LocaleCategory.ALL, ""); + Intl.textdomain("shopsystem"); + Bus.own_name( BusType.SYSTEM, "io.mainframe.shopsystem.StockPDF", BusNameOwnerFlags.NONE, - on_bus_aquired, + on_bus_acquired, () => {}, - () => stderr.printf("Could not aquire name\n")); + () => stderr.printf(_("Could not acquire name\n"))); new MainLoop().run(); return 0; } -void on_bus_aquired(DBusConnection conn) { +void on_bus_acquired(DBusConnection conn) { try { conn.register_object("/io/mainframe/shopsystem/stockpdf", new StockPDF()); } catch(IOError e) { - stderr.printf("Could not register service\n"); + stderr.printf(_("Could not register service\n")); } } diff --git a/src/pdf-stock/test.vala b/src/pdf-stock/test.vala index cc3da4f..2e35f9c 100644 --- a/src/pdf-stock/test.vala +++ b/src/pdf-stock/test.vala @@ -19,9 +19,11 @@ public static int main(string args[]) { var pdfdata = stock.generate(); FileUtils.set_contents("test.pdf", (string) pdfdata, pdfdata.length); } catch(IOError e) { - error("IOError: %s", e.message); + error(_("IO Error: %s"), e.message); } catch(FileError e) { - error("FileError: %s", e.message); + error(_("File Error: %s"), e.message); + } catch(DBusError e) { + error(_("DBus Error: %s"), e.message); } return 0; |