Hi, The current nextfile() jumps to last hunk, but I think this is not intention, probably, it's forgetting to add "break;". Right? And this patch also adds prevfile(), it jumps to previous hunk. The following part is just my favorite the key-binds, it doesn't matter. + bind . <Control-p> "$ctext yview scroll -1 units" + bind . <Control-n> "$ctext yview scroll 1 units" + bind . <Alt-v> "$ctext yview scroll -1 pages" + bind . <Control-v> "$ctext yview scroll 1 pages" + bindkey P prevfile + bindkey N nextfile What do you think of this? Thanks. -- OGAWA Hirofumi <hirofumi@xxxxxxxxxxxxxxxxxx> Signed-off-by: OGAWA Hirofumi <hirofumi@xxxxxxxxxxxxxxxxxx> --- gitk | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff -puN gitk~gitk-key-emacs gitk --- git/gitk~gitk-key-emacs 2006-09-25 22:31:51.000000000 +0900 +++ git-hirofumi/gitk 2006-09-25 22:31:51.000000000 +0900 @@ -672,6 +672,10 @@ proc makewindow {} { bind . <Control-Key-Down> "allcanvs yview scroll 1 units" bind . <Control-Key-Prior> "allcanvs yview scroll -1 pages" bind . <Control-Key-Next> "allcanvs yview scroll 1 pages" + bind . <Control-p> "$ctext yview scroll -1 units" + bind . <Control-n> "$ctext yview scroll 1 units" + bind . <Alt-v> "$ctext yview scroll -1 pages" + bind . <Control-v> "$ctext yview scroll 1 pages" bindkey <Key-Delete> "$ctext yview scroll -1 pages" bindkey <Key-BackSpace> "$ctext yview scroll -1 pages" bindkey <Key-space> "$ctext yview scroll 1 pages" @@ -690,6 +694,8 @@ proc makewindow {} { bindkey <Key-Return> {findnext 0} bindkey ? findprev bindkey f nextfile + bindkey P prevfile + bindkey N nextfile bind . <Control-q> doquit bind . <Control-f> dofind bind . <Control-g> {findnext 0} @@ -4440,12 +4446,26 @@ proc getblobdiffline {bdf ids} { } } +proc prevfile {} { + global difffilestart ctext + set prev [lindex $difffilestart 0] + set here [$ctext index @0,0] + foreach loc $difffilestart { + if {[$ctext compare $loc >= $here]} { + $ctext yview $prev + break + } + set prev $loc + } +} + proc nextfile {} { global difffilestart ctext set here [$ctext index @0,0] foreach loc $difffilestart { if {[$ctext compare $loc > $here]} { $ctext yview $loc + break } } } _ - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html