From: Bernt Hansen Date: Sat, 24 Oct 2009 20:20:40 GMT Subject: [PATCH 2/2] gitk: Provide a default mc function if msgcat is not available 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 --- 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