summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2007-06-28 21:28:36 -0700
committerJunio C Hamano <gitster@pobox.com>2007-06-28 21:28:36 -0700
commitb8336519450fdedc8f9cafebc73f7a0226e34e1f (patch)
treea2a46314951b7acb2b8f489fe61d43b1572214ee
parentb69ba460bb0710b2af8a20b4b0d62233f29401ec (diff)
parent7e508eb1a2efce72be1651a35ab3150bfa3c88d6 (diff)
downloadgit-b8336519450fdedc8f9cafebc73f7a0226e34e1f.tar.gz
Merge branch 'maint' of git://repo.or.cz/git-gui into maint
* 'maint' of git://repo.or.cz/git-gui: git-gui: Don't require a .pvcsrc to create Tools/Migrate menu hack git-gui: Don't nice git blame on MSYS as nice is not supported git-gui: Don't require $DISPLAY just to get --version git-gui: Bind Tab/Shift-Tab to cycle between panes in blame git-gui: Correctly install to /usr/bin on Cygwin
-rw-r--r--git-gui/Makefile10
-rwxr-xr-xgit-gui/git-gui.sh16
-rw-r--r--git-gui/lib/blame.tcl12
3 files changed, 26 insertions, 12 deletions
diff --git a/git-gui/Makefile b/git-gui/Makefile
index 3de0de1a23..ab550fc6a7 100644
--- a/git-gui/Makefile
+++ b/git-gui/Makefile
@@ -7,6 +7,8 @@ GIT-VERSION-FILE: .FORCE-GIT-VERSION-FILE
@$(SHELL_PATH) ./GIT-VERSION-GEN
-include GIT-VERSION-FILE
+uname_O := $(shell sh -c 'uname -o 2>/dev/null || echo not')
+
SCRIPT_SH = git-gui.sh
GITGUI_BUILT_INS = git-citool
ALL_PROGRAMS = $(GITGUI_BUILT_INS) $(patsubst %.sh,%,$(SCRIPT_SH))
@@ -58,11 +60,15 @@ exedir_SQ = $(subst ','\'',$(exedir))
$(patsubst %.sh,%,$(SCRIPT_SH)) : % : %.sh
$(QUIET_GEN)rm -f $@ $@+ && \
+ GITGUI_RELATIVE= && \
if test '$(exedir_SQ)' = '$(libdir_SQ)'; then \
- GITGUI_RELATIVE=1; \
+ if test "$(uname_O)" = Cygwin; \
+ then GITGUI_RELATIVE= ; \
+ else GITGUI_RELATIVE=1; \
+ fi; \
fi && \
sed -e '1s|#!.*/sh|#!$(SHELL_PATH_SQ)|' \
- -e 's|^exec wish "$$0"|exec $(subst |,'\|',$(TCLTK_PATH_SQ)) "$$0"|' \
+ -e 's|^ exec wish "$$0"| exec $(subst |,'\|',$(TCLTK_PATH_SQ)) "$$0"|' \
-e 's/@@GITGUI_VERSION@@/$(GITGUI_VERSION)/g' \
-e 's|@@GITGUI_RELATIVE@@|'$$GITGUI_RELATIVE'|' \
-e $$GITGUI_RELATIVE's|@@GITGUI_LIBDIR@@|$(libdir_SQ)|' \
diff --git a/git-gui/git-gui.sh b/git-gui/git-gui.sh
index 97de595f27..4fbc408c4d 100755
--- a/git-gui/git-gui.sh
+++ b/git-gui/git-gui.sh
@@ -1,6 +1,12 @@
#!/bin/sh
# Tcl ignores the next line -*- tcl -*- \
-exec wish "$0" -- "$@"
+ if test "z$*" = zversion \
+ || test "z$*" = z--version; \
+ then \
+ echo 'git-gui version @@GITGUI_VERSION@@'; \
+ exit; \
+ fi; \
+ exec wish "$0" -- "$@"
set appvers {@@GITGUI_VERSION@@}
set copyright {
@@ -271,11 +277,6 @@ proc tk_optionMenu {w varName args} {
##
## version check
-if {{--version} eq $argv || {version} eq $argv} {
- puts "git-gui version $appvers"
- exit
-}
-
set req_maj 1
set req_min 5
@@ -1544,8 +1545,7 @@ if {[is_MacOSX]} {
# -- Tools Menu
#
- if {[file exists /usr/local/miga/lib/gui-miga]
- && [file exists .pvcsrc]} {
+ if {[is_Cygwin] && [file exists /usr/local/miga/lib/gui-miga]} {
proc do_miga {} {
global ui_status_value
if {![lock_index update]} return
diff --git a/git-gui/lib/blame.tcl b/git-gui/lib/blame.tcl
index 139171d39e..b523654815 100644
--- a/git-gui/lib/blame.tcl
+++ b/git-gui/lib/blame.tcl
@@ -272,6 +272,8 @@ constructor new {i_commit i_path} {
set cursorW %W
tk_popup $w.ctxm %X %Y
"
+ bind $i <Shift-Tab> "[list focus $w_cviewer];break"
+ bind $i <Tab> "[list focus $w_cviewer];break"
}
foreach i [concat $w_columns $w_cviewer] {
@@ -287,8 +289,10 @@ constructor new {i_commit i_path} {
bind $i <Control-Key-f> {catch {%W yview scroll 1 pages};break}
}
+ bind $w_cviewer <Shift-Tab> "[list focus $w_file];break"
+ bind $w_cviewer <Tab> "[list focus $w_file];break"
bind $w_cviewer <Button-1> [list focus $w_cviewer]
- bind $top <Visibility> [list focus $top]
+ bind $w_file <Visibility> [list focus $w_file]
grid configure $w.header -sticky ew
grid configure $w.file_pane -sticky nsew
@@ -483,7 +487,11 @@ method _read_file {fd jump} {
} ifdeleted { catch {close $fd} }
method _exec_blame {cur_w cur_d options cur_s} {
- set cmd [list nice git blame]
+ set cmd [list]
+ if {![is_Windows] || [is_Cygwin]} {
+ lappend cmd nice
+ }
+ lappend cmd git blame
set cmd [concat $cmd $options]
lappend cmd --incremental
if {$commit eq {}} {