diff options
author | Shawn O. Pearce <spearce@spearce.org> | 2007-09-02 01:58:29 (GMT) |
---|---|---|
committer | Shawn O. Pearce <spearce@spearce.org> | 2007-09-02 01:58:29 (GMT) |
commit | fc703c209d415fe20ad5551465b5b68b8ab8b046 (patch) | |
tree | fac5252eeb50c936f4ca26f82aaca25bf5420fe8 /git-gui.sh | |
parent | c80d25dbce759a8483ffc1f085fdf4cd63cf9f05 (diff) | |
download | git-fc703c209d415fe20ad5551465b5b68b8ab8b046.zip git-fc703c209d415fe20ad5551465b5b68b8ab8b046.tar.gz git-fc703c209d415fe20ad5551465b5b68b8ab8b046.tar.bz2 |
git-gui: Locate the library directory early during startup
To support a localized version of git-gui we need to locate the
library directory early so we can initialize Tcl's msgcat package
to load translated messages from. This needs to occur before we
declare our git-version proc so that errors related to locating
git or assessing its version can be reported to the end-user in
their preferred language. However we have to keep the library
loading until after git-version has been declared, otherwise we
will fail to start git-gui if we are using a fake tclIndex that
was generated by our Makefile.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Diffstat (limited to 'git-gui.sh')
-rwxr-xr-x | git-gui.sh | 25 |
1 files changed, 15 insertions, 10 deletions
@@ -44,6 +44,20 @@ if {[catch {package require Tcl 8.4} err] ###################################################################### ## +## locate our library + +set oguilib {@@GITGUI_LIBDIR@@} +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] +} elseif {[string match @@* $oguirel]} { + set oguilib [file join [file dirname [file normalize $argv0]] lib] +} +unset oguirel + +###################################################################### +## ## enable verbose loading? if {![catch {set _verbose $env(GITGUI_VERBOSE)}]} { @@ -595,15 +609,6 @@ You are using [git-version]: ## ## configure our library -set oguilib {@@GITGUI_LIBDIR@@} -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] -} elseif {[string match @@* $oguirel]} { - set oguilib [file join [file dirname [file normalize $argv0]] lib] -} - set idx [file join $oguilib tclIndex] if {[catch {set fd [open $idx r]} err]} { catch {wm withdraw .} @@ -637,7 +642,7 @@ if {$idx ne {}} { } else { set auto_path [concat [list $oguilib] $auto_path] } -unset -nocomplain oguirel idx fd +unset -nocomplain idx fd ###################################################################### ## |