[PATCH 2/2] gitk: Provide a default mc function if msgcat is not available
- From
- Bernt Hansen <bernt@norang.ca>
- Date
- Oct 24, 2009, 20:20 UTC
- Message-ID
- <1256415640-10328-3-git-send-email-bernt@norang.ca>
- In-Reply-To
- <1256415640-10328-1-git-send-email-bernt@norang.ca>
Msgcat is available since Tcl 8.1. For really old versions of Tcl provide a default mc that just returns the text untranslated. This allows the Tcl version check to return the error in a window instead of making Tcl abort when attempting to load the msgcat package.
Signed-off-by: Bernt Hansen <bernt@norang.ca> --- I'm not sure if we care about Tcl versions older than 8.1 but this at least shows the error in the window with the [OK] button.
gitk | 13 +++++++++---- 1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/gitk b/gitk index d4cd566..bff891d 100755 --- a/gitk +++ b/gitk @@ -11019,10 +11019,15 @@ if { [info exists ::env(GITK_MSGSDIR)] } { ## 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 -## And eventually load the actual message catalog -::msgcat::mcload $gitk_msgsdir +if {[catch {package require msgcat}]} { + proc mc {arg} { + return $arg + } +} else { + namespace import ::msgcat::mc + ## And eventually load the actual message catalog + ::msgcat::mcload $gitk_msgsdir +} # Check that Tcl/Tk is recent enough if {[catch {package require Tk 8.4} err]} {
-- 1.6.5.1.69.g36942