From d4b0ccd931cc29f35e8f8493445af27ea72ed03e Mon Sep 17 00:00:00 2001 From: "Shawn O. Pearce" Date: Sat, 1 Sep 2007 22:22:42 -0400 Subject: [PATCH] git-gui: Initialize Tcl's msgcat library for internationalization Tcl's msgcat library and corresponding mc procedure can locate a translated string for any user message, provided that it is first given a directory where the *.msg files are located containing the translations. During installation we will place the translations in lib/msgs/, so we need to inform msgcat of this location once we determine it during startup. Our source code tree however will store all of the translations within the po/ directory, so we need to special case this variant. Signed-off-by: Shawn O. Pearce --- git-gui.sh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/git-gui.sh b/git-gui.sh index 4ea6e91b01..486d36ee19 100755 --- a/git-gui.sh +++ b/git-gui.sh @@ -51,8 +51,12 @@ set oguirel {@@GITGUI_RELATIVE@@} if {$oguirel eq {1}} { set oguilib [file dirname [file dirname [file normalize $argv0]]] set oguilib [file join $oguilib share git-gui lib] + set oguimsg [file join $oguilib msgs] } elseif {[string match @@* $oguirel]} { set oguilib [file join [file dirname [file normalize $argv0]] lib] + set oguimsg [file join [file dirname [file normalize $argv0]] po] +} else { + set oguimsg [file join $oguilib msgs] } unset oguirel @@ -74,6 +78,16 @@ if {![catch {set _verbose $env(GITGUI_VERBOSE)}]} { } } +###################################################################### +## +## Internationalization (i18n) through msgcat and gettext. See +## http://www.gnu.org/software/gettext/manual/html_node/Tcl.html + +package require msgcat +namespace import ::msgcat::mc +::msgcat::mcload $oguimsg +unset oguimsg + ###################################################################### ## ## read only globals