Skip to content

Commit 59f40ce

Browse files
committed
Merge 'gitk' into HEAD
2 parents d40c45a + c04a31b commit 59f40ce

File tree

1 file changed

+44
-34
lines changed

1 file changed

+44
-34
lines changed

gitk-git/gitk

Lines changed: 44 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -2234,7 +2234,7 @@ proc makewindow {} {
22342234
global headctxmenu progresscanv progressitem progresscoords statusw
22352235
global fprogitem fprogcoord lastprogupdate progupdatepending
22362236
global rprogitem rprogcoord rownumsel numcommits
2237-
global have_tk85 use_ttk NS
2237+
global have_tk85 have_tk86 use_ttk NS
22382238
global git_version
22392239
global worddiff
22402240
@@ -2732,8 +2732,13 @@ proc makewindow {} {
27322732
bind . <Key-Down> "selnextline 1"
27332733
bind . <Shift-Key-Up> "dofind -1 0"
27342734
bind . <Shift-Key-Down> "dofind 1 0"
2735-
bindkey <Key-Right> "goforw"
2736-
bindkey <Key-Left> "goback"
2735+
if {$have_tk86} {
2736+
bindkey <<NextChar>> "goforw"
2737+
bindkey <<PrevChar>> "goback"
2738+
} else {
2739+
bindkey <Key-Right> "goforw"
2740+
bindkey <Key-Left> "goback"
2741+
}
27372742
bind . <Key-Prior> "selnextpage -1"
27382743
bind . <Key-Next> "selnextpage 1"
27392744
bind . <$M1B-Home> "allcanvs yview moveto 0.0"
@@ -7847,7 +7852,7 @@ proc gettreeline {gtf id} {
78477852
if {[string index $fname 0] eq "\""} {
78487853
set fname [lindex $fname 0]
78497854
}
7850-
set fname [encoding convertfrom $fname]
7855+
set fname [encoding convertfrom utf-8 $fname]
78517856
lappend treefilelist($id) $fname
78527857
}
78537858
if {![eof $gtf]} {
@@ -8109,7 +8114,7 @@ proc gettreediffline {gdtf ids} {
81098114
if {[string index $file 0] eq "\""} {
81108115
set file [lindex $file 0]
81118116
}
8112-
set file [encoding convertfrom $file]
8117+
set file [encoding convertfrom utf-8 $file]
81138118
if {$file ne [lindex $treediff end]} {
81148119
lappend treediff $file
81158120
lappend sublist $file
@@ -8254,7 +8259,7 @@ proc makediffhdr {fname ids} {
82548259
global ctext curdiffstart treediffs diffencoding
82558260
global ctext_file_names jump_to_here targetline diffline
82568261
8257-
set fname [encoding convertfrom $fname]
8262+
set fname [encoding convertfrom utf-8 $fname]
82588263
set diffencoding [get_path_encoding $fname]
82598264
set i [lsearch -exact $treediffs($ids) $fname]
82608265
if {$i >= 0} {
@@ -8316,7 +8321,7 @@ proc parseblobdiffline {ids line} {
83168321
83178322
if {![string compare -length 5 "diff " $line]} {
83188323
if {![regexp {^diff (--cc|--git) } $line m type]} {
8319-
set line [encoding convertfrom $line]
8324+
set line [encoding convertfrom utf-8 $line]
83208325
$ctext insert end "$line\n" hunksep
83218326
continue
83228327
}
@@ -8365,7 +8370,7 @@ proc parseblobdiffline {ids line} {
83658370
makediffhdr $fname $ids
83668371
83678372
} elseif {![string compare -length 16 "* Unmerged path " $line]} {
8368-
set fname [encoding convertfrom [string range $line 16 end]]
8373+
set fname [encoding convertfrom utf-8 [string range $line 16 end]]
83698374
$ctext insert end "\n"
83708375
set curdiffstart [$ctext index "end - 1c"]
83718376
lappend ctext_file_names $fname
@@ -8418,7 +8423,7 @@ proc parseblobdiffline {ids line} {
84188423
if {[string index $fname 0] eq "\""} {
84198424
set fname [lindex $fname 0]
84208425
}
8421-
set fname [encoding convertfrom $fname]
8426+
set fname [encoding convertfrom utf-8 $fname]
84228427
set i [lsearch -exact $treediffs($ids) $fname]
84238428
if {$i >= 0} {
84248429
setinlist difffilestart $i $curdiffstart
@@ -8437,6 +8442,7 @@ proc parseblobdiffline {ids line} {
84378442
set diffinhdr 0
84388443
return
84398444
}
8445+
set line [encoding convertfrom utf-8 $line]
84408446
$ctext insert end "$line\n" filesep
84418447
84428448
} else {
@@ -10195,7 +10201,7 @@ proc showrefs {} {
1019510201
text $top.list -background $bgcolor -foreground $fgcolor \
1019610202
-selectbackground $selectbgcolor -font mainfont \
1019710203
-xscrollcommand "$top.xsb set" -yscrollcommand "$top.ysb set" \
10198-
-width 30 -height 20 -cursor $maincursor \
10204+
-width 60 -height 20 -cursor $maincursor \
1019910205
-spacing1 1 -spacing3 1 -state disabled
1020010206
$top.list tag configure highlight -background $selectbgcolor
1020110207
if {![lsearch -exact $bglist $top.list]} {
@@ -12405,7 +12411,7 @@ proc cache_gitattr {attr pathlist} {
1240512411
foreach row [split $rlist "\n"] {
1240612412
if {[regexp "(.*): $attr: (.*)" $row m path value]} {
1240712413
if {[string index $path 0] eq "\""} {
12408-
set path [encoding convertfrom [lindex $path 0]]
12414+
set path [encoding convertfrom utf-8 [lindex $path 0]]
1240912415
}
1241012416
set path_attr_cache($attr,$path) $value
1241112417
}
@@ -12435,7 +12441,6 @@ if { [info exists ::env(GITK_MSGSDIR)] } {
1243512441
set gitk_prefix [file dirname [file dirname [file normalize $argv0]]]
1243612442
set gitk_libdir [file join $gitk_prefix share gitk lib]
1243712443
set gitk_msgsdir [file join $gitk_libdir msgs]
12438-
unset gitk_prefix
1243912444
}
1244012445
1244112446
## Internationalization (i18n) through msgcat and gettext. See
@@ -12734,6 +12739,7 @@ set nullid2 "0000000000000000000000000000000000000001"
1273412739
set nullfile "/dev/null"
1273512740
1273612741
set have_tk85 [expr {[package vcompare $tk_version "8.5"] >= 0}]
12742+
set have_tk86 [expr {[package vcompare $tk_version "8.6"] >= 0}]
1273712743
if {![info exists have_ttk]} {
1273812744
set have_ttk [llength [info commands ::ttk::style]]
1273912745
}
@@ -12798,28 +12804,32 @@ if {[expr {[exec git rev-parse --is-inside-work-tree] == "true"}]} {
1279812804
set worktree [gitworktree]
1279912805
setcoords
1280012806
makewindow
12801-
catch {
12802-
image create photo gitlogo -width 16 -height 16
12803-
12804-
image create photo gitlogominus -width 4 -height 2
12805-
gitlogominus put #C00000 -to 0 0 4 2
12806-
gitlogo copy gitlogominus -to 1 5
12807-
gitlogo copy gitlogominus -to 6 5
12808-
gitlogo copy gitlogominus -to 11 5
12809-
image delete gitlogominus
12810-
12811-
image create photo gitlogoplus -width 4 -height 4
12812-
gitlogoplus put #008000 -to 1 0 3 4
12813-
gitlogoplus put #008000 -to 0 1 4 3
12814-
gitlogo copy gitlogoplus -to 1 9
12815-
gitlogo copy gitlogoplus -to 6 9
12816-
gitlogo copy gitlogoplus -to 11 9
12817-
image delete gitlogoplus
12818-
12819-
image create photo gitlogo32 -width 32 -height 32
12820-
gitlogo32 copy gitlogo -zoom 2 2
12821-
12822-
wm iconphoto . -default gitlogo gitlogo32
12807+
if {$::tcl_platform(platform) eq {windows} && [file exists $gitk_prefix/etc/git.ico]} {
12808+
wm iconbitmap . -default $gitk_prefix/etc/git.ico
12809+
} else {
12810+
catch {
12811+
image create photo gitlogo -width 16 -height 16
12812+
12813+
image create photo gitlogominus -width 4 -height 2
12814+
gitlogominus put #C00000 -to 0 0 4 2
12815+
gitlogo copy gitlogominus -to 1 5
12816+
gitlogo copy gitlogominus -to 6 5
12817+
gitlogo copy gitlogominus -to 11 5
12818+
image delete gitlogominus
12819+
12820+
image create photo gitlogoplus -width 4 -height 4
12821+
gitlogoplus put #008000 -to 1 0 3 4
12822+
gitlogoplus put #008000 -to 0 1 4 3
12823+
gitlogo copy gitlogoplus -to 1 9
12824+
gitlogo copy gitlogoplus -to 6 9
12825+
gitlogo copy gitlogoplus -to 11 9
12826+
image delete gitlogoplus
12827+
12828+
image create photo gitlogo32 -width 32 -height 32
12829+
gitlogo32 copy gitlogo -zoom 2 2
12830+
12831+
wm iconphoto . -default gitlogo gitlogo32
12832+
}
1282312833
}
1282412834
# wait for the window to become visible
1282512835
tkwait visibility .

0 commit comments

Comments
 (0)