git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: gitk: 'j' and 'k' keyboard shortcuts backward
       [not found] <CA+Jd1rFzOOxL+-JVeovTiOwM5cmyyis65Y1+xiDmG=tkJ3b2Xw@mail.gmail.com>
@ 2011-09-19 16:49 ` Jonathan Nieder
  2011-09-19 17:11   ` Josh Triplett
                     ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Jonathan Nieder @ 2011-09-19 16:49 UTC (permalink / raw)
  To: Clemens Buchacher
  Cc: Josh Triplett, Pat Thoyts, Robert Suetterlin, Paul Mackerras, git

(+cc: Josh and upstream)
Hi,

Clemens Buchacher wrote:

> The key bindings are not related to vi. See Help -> Key
> bindings in gitk:
>
> k    Move down one commit
> j    Go back in history list
>
> I know this has confused me too. But I don't think it's worth changing,
> unless you can think of a solution that would confuse neither vi nor non-vi
> users.

Eh, I think it's worth changing and that the non-vi users are probably
just using arrow keys. :)  The commit that introduced those key
bindings says:

| commit 6e2dda35
| Author: Robert Suetterlin <robert@mpe.mpg.de>
| Date:   Thu Sep 22 10:07:36 2005 +1000
|
|     [PATCH] Add new keybindings
|
|     This adds several new keybindings to allow history and selectline
|     navigation.  I basically added Opera-like history traversal, as well
|     as left-right-cursor history traversal and vi-like motion commands.
|
|     Signed-off-by: Robert Suetterlin <robert@mpe.mpg.de>
|     Signed-off-by: Paul Mackerras <paulus@samba.org>

How about this patch?

-- >8 --
Subject: gitk: Make vi-style keybindings more vi-like

When commit 6e2dda35 (Add new keybindings, 2005-09-22) added vi-style
keybindings to gitk (an excellent idea!), instead of adopting the
usual "hjkl = left, down, up, right" bindings used by less, vi, rogue,
and many other programs, it used "ijkl = up, left, down, right" to
mimic the inverted-T formation of the arrow keys on a qwerty keyboard,
in the style of Lode runner.  So using 'j' and 'k' to scroll through
commits produces utterly confusing results to the vi user, as 'k'
moves down and 'j' moves to the previous commit.

Luckily most non-vi-users are probably using an alternate set of keys
(cursor keys or z/x + n/p) anyway.  Switch to the expected vi/nethack
convention.

Requested-by: Josh Triplett <josh@joshtriplett.org>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
---
 gitk     |   12 ++++++------
 po/de.po |   12 ++++++------
 po/es.po |   12 ++++++------
 po/fr.po |   12 ++++++------
 po/hu.po |   12 ++++++------
 po/it.po |   12 ++++++------
 po/ja.po |   12 ++++++------
 po/ru.po |   12 ++++++------
 po/sv.po |   12 ++++++------
 9 files changed, 54 insertions(+), 54 deletions(-)

diff --git a/gitk b/gitk
index 1b0e09a5..ac3fb7d4 100755
--- a/gitk
+++ b/gitk
@@ -2411,9 +2411,9 @@ proc makewindow {} {
     bindkey n "selnextline 1"
     bindkey z "goback"
     bindkey x "goforw"
-    bindkey i "selnextline -1"
-    bindkey k "selnextline 1"
-    bindkey j "goback"
+    bindkey k "selnextline -1"
+    bindkey j "selnextline 1"
+    bindkey h "goback"
     bindkey l "goforw"
     bindkey b prevfile
     bindkey d "$ctext yview scroll 18 units"
@@ -2822,9 +2822,9 @@ proc keys {} {
 [mc "<%s-W>		Close window" $M1T]
 [mc "<Home>		Move to first commit"]
 [mc "<End>		Move to last commit"]
-[mc "<Up>, p, i	Move up one commit"]
-[mc "<Down>, n, k	Move down one commit"]
-[mc "<Left>, z, j	Go back in history list"]
+[mc "<Up>, p, k	Move up one commit"]
+[mc "<Down>, n, j	Move down one commit"]
+[mc "<Left>, z, h	Go back in history list"]
 [mc "<Right>, x, l	Go forward in history list"]
 [mc "<PageUp>	Move up one page in commit list"]
 [mc "<PageDown>	Move down one page in commit list"]
diff --git a/po/de.po b/po/de.po
index bd194a3d..e4cf661a 100644
--- a/po/de.po
+++ b/po/de.po
@@ -371,16 +371,16 @@ msgid "<End>\t\tMove to last commit"
 msgstr "<Ende>\t\tZur ältesten Version springen"
 
 #: gitk:2819
-msgid "<Up>, p, i\tMove up one commit"
-msgstr "<Hoch>, p, i\tNächste neuere Version"
+msgid "<Up>, p, k\tMove up one commit"
+msgstr "<Hoch>, p, k\tNächste neuere Version"
 
 #: gitk:2820
-msgid "<Down>, n, k\tMove down one commit"
-msgstr "<Runter>, n, k\tNächste ältere Version"
+msgid "<Down>, n, j\tMove down one commit"
+msgstr "<Runter>, n, j\tNächste ältere Version"
 
 #: gitk:2821
-msgid "<Left>, z, j\tGo back in history list"
-msgstr "<Links>, z, j\tEine Version zurückgehen"
+msgid "<Left>, z, h\tGo back in history list"
+msgstr "<Links>, z, h\tEine Version zurückgehen"
 
 #: gitk:2822
 msgid "<Right>, x, l\tGo forward in history list"
diff --git a/po/es.po b/po/es.po
index 0471dd06..9c8bcd29 100644
--- a/po/es.po
+++ b/po/es.po
@@ -319,16 +319,16 @@ msgid "<End>\t\tMove to last commit"
 msgstr "<End>\t\tIr a la última revisión"
 
 #: gitk:2522
-msgid "<Up>, p, i\tMove up one commit"
-msgstr "<Up>, p, i\tSubir una revisión"
+msgid "<Up>, p, k\tMove up one commit"
+msgstr "<Up>, p, k\tSubir una revisión"
 
 #: gitk:2523
-msgid "<Down>, n, k\tMove down one commit"
-msgstr "<Down>, n, k\tBajar una revisión"
+msgid "<Down>, n, j\tMove down one commit"
+msgstr "<Down>, n, j\tBajar una revisión"
 
 #: gitk:2524
-msgid "<Left>, z, j\tGo back in history list"
-msgstr "<Left>, z, j\tRetroceder en la historia"
+msgid "<Left>, z, h\tGo back in history list"
+msgstr "<Left>, z, h\tRetroceder en la historia"
 
 #: gitk:2525
 msgid "<Right>, x, l\tGo forward in history list"
diff --git a/po/fr.po b/po/fr.po
index 5370ddc3..ff476191 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -372,16 +372,16 @@ msgid "<End>\t\tMove to last commit"
 msgstr "<Fin>\t\tAller au dernier commit"
 
 #: gitk:2691
-msgid "<Up>, p, i\tMove up one commit"
-msgstr "<Haut>, p, i\t Aller au commit suivant"
+msgid "<Up>, p, k\tMove up one commit"
+msgstr "<Haut>, p, k\t Aller au commit suivant"
 
 #: gitk:2692
-msgid "<Down>, n, k\tMove down one commit"
-msgstr "<Bas>, n, k\t Aller au commit précédent"
+msgid "<Down>, n, j\tMove down one commit"
+msgstr "<Bas>, n, j\t Aller au commit précédent"
 
 #: gitk:2693
-msgid "<Left>, z, j\tGo back in history list"
-msgstr "<Gauche>, z, j\tReculer dans l'historique"
+msgid "<Left>, z, h\tGo back in history list"
+msgstr "<Gauche>, z, h\tReculer dans l'historique"
 
 #: gitk:2694
 msgid "<Right>, x, l\tGo forward in history list"
diff --git a/po/hu.po b/po/hu.po
index 7262b610..af0ddda2 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -370,16 +370,16 @@ msgid "<End>\t\tMove to last commit"
 msgstr "<Ende>\t\tUtolsó commithoz"
 
 #: gitk:2816
-msgid "<Up>, p, i\tMove up one commit"
-msgstr "<Hoch>, p, i\tEgy committal feljebb"
+msgid "<Up>, p, k\tMove up one commit"
+msgstr "<Hoch>, p, k\tEgy committal feljebb"
 
 #: gitk:2817
-msgid "<Down>, n, k\tMove down one commit"
-msgstr "<Runter>, n, k\tEgy committal lejjebb"
+msgid "<Down>, n, j\tMove down one commit"
+msgstr "<Runter>, n, j\tEgy committal lejjebb"
 
 #: gitk:2818
-msgid "<Left>, z, j\tGo back in history list"
-msgstr "<Links>, z, j\tVissza a history listába"
+msgid "<Left>, z, h\tGo back in history list"
+msgstr "<Links>, z, h\tVissza a history listába"
 
 #: gitk:2819
 msgid "<Right>, x, l\tGo forward in history list"
diff --git a/po/it.po b/po/it.po
index a730d63a..5f562109 100644
--- a/po/it.po
+++ b/po/it.po
@@ -372,16 +372,16 @@ msgid "<End>\t\tMove to last commit"
 msgstr "<End>\t\tVai all'ultima revisione"
 
 #: gitk:2819
-msgid "<Up>, p, i\tMove up one commit"
-msgstr "<Su>, p, i\tVai più in alto di una revisione"
+msgid "<Up>, p, k\tMove up one commit"
+msgstr "<Su>, p, k\tVai più in alto di una revisione"
 
 #: gitk:2820
-msgid "<Down>, n, k\tMove down one commit"
-msgstr "<Giù>, n, k\tVai più in basso di una revisione"
+msgid "<Down>, n, j\tMove down one commit"
+msgstr "<Giù>, n, j\tVai più in basso di una revisione"
 
 #: gitk:2821
-msgid "<Left>, z, j\tGo back in history list"
-msgstr "<Sinistra>, z, j\tTorna indietro nella cronologia"
+msgid "<Left>, z, h\tGo back in history list"
+msgstr "<Sinistra>, z, h\tTorna indietro nella cronologia"
 
 #: gitk:2822
 msgid "<Right>, x, l\tGo forward in history list"
diff --git a/po/ja.po b/po/ja.po
index 4f470516..249ec150 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -372,16 +372,16 @@ msgid "<End>\t\tMove to last commit"
 msgstr "<End>\t\t最後のコミットに移動"
 
 #: gitk:2693
-msgid "<Up>, p, i\tMove up one commit"
-msgstr "<Up>, p, i\t一つ上のコミットに移動"
+msgid "<Up>, p, k\tMove up one commit"
+msgstr "<Up>, p, k\t一つ上のコミットに移動"
 
 #: gitk:2694
-msgid "<Down>, n, k\tMove down one commit"
-msgstr "<Down>, n, k\t一つ下のコミットに移動"
+msgid "<Down>, n, j\tMove down one commit"
+msgstr "<Down>, n, j\t一つ下のコミットに移動"
 
 #: gitk:2695
-msgid "<Left>, z, j\tGo back in history list"
-msgstr "<Left>, z, j\t履歴の前に戻る"
+msgid "<Left>, z, h\tGo back in history list"
+msgstr "<Left>, z, h\t履歴の前に戻る"
 
 #: gitk:2696
 msgid "<Right>, x, l\tGo forward in history list"
diff --git a/po/ru.po b/po/ru.po
index c3d0285b..e7e6e9ef 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -350,16 +350,16 @@ msgid "<End>\t\tMove to last commit"
 msgstr "<End>\t\tПерейти к последнему состоянию"
 
 #: gitk:2646
-msgid "<Up>, p, i\tMove up one commit"
-msgstr "<Up>, p, i\tПерейти к следующему состоянию"
+msgid "<Up>, p, k\tMove up one commit"
+msgstr "<Up>, p, k\tПерейти к следующему состоянию"
 
 #: gitk:2647
-msgid "<Down>, n, k\tMove down one commit"
-msgstr "<Down>, n, k\tПерейти к предыдущему состоянию"
+msgid "<Down>, n, j\tMove down one commit"
+msgstr "<Down>, n, j\tПерейти к предыдущему состоянию"
 
 #: gitk:2648
-msgid "<Left>, z, j\tGo back in history list"
-msgstr "<Left>, z, j\tПоказать ранее посещённое состояние"
+msgid "<Left>, z, h\tGo back in history list"
+msgstr "<Left>, z, h\tПоказать ранее посещённое состояние"
 
 #: gitk:2649
 msgid "<Right>, x, l\tGo forward in history list"
diff --git a/po/sv.po b/po/sv.po
index 386763ad..8bd72f3d 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -371,16 +371,16 @@ msgid "<End>\t\tMove to last commit"
 msgstr "<End>\t\tGå till sista incheckning"
 
 #: gitk:2819
-msgid "<Up>, p, i\tMove up one commit"
-msgstr "<Upp>, p, i\tGå en incheckning upp"
+msgid "<Up>, p, k\tMove up one commit"
+msgstr "<Upp>, p, k\tGå en incheckning upp"
 
 #: gitk:2820
-msgid "<Down>, n, k\tMove down one commit"
-msgstr "<Ned>, n, k\tGå en incheckning ned"
+msgid "<Down>, n, j\tMove down one commit"
+msgstr "<Ned>, n, j\tGå en incheckning ned"
 
 #: gitk:2821
-msgid "<Left>, z, j\tGo back in history list"
-msgstr "<Vänster>, z, j\tGå bakåt i historiken"
+msgid "<Left>, z, h\tGo back in history list"
+msgstr "<Vänster>, z, h\tGå bakåt i historiken"
 
 #: gitk:2822
 msgid "<Right>, x, l\tGo forward in history list"
-- 
1.7.7.rc1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: gitk: 'j' and 'k' keyboard shortcuts backward
  2011-09-19 16:49 ` gitk: 'j' and 'k' keyboard shortcuts backward Jonathan Nieder
@ 2011-09-19 17:11   ` Josh Triplett
  2011-09-19 18:04   ` Clemens Buchacher
  2011-10-08  7:04   ` Paul Mackerras
  2 siblings, 0 replies; 5+ messages in thread
From: Josh Triplett @ 2011-09-19 17:11 UTC (permalink / raw)
  To: Jonathan Nieder
  Cc: Clemens Buchacher, Pat Thoyts, Robert Suetterlin, Paul Mackerras,
	git

On Mon, Sep 19, 2011 at 11:49:50AM -0500, Jonathan Nieder wrote:
> How about this patch?
> 
> -- >8 --
> Subject: gitk: Make vi-style keybindings more vi-like
> 
> When commit 6e2dda35 (Add new keybindings, 2005-09-22) added vi-style
> keybindings to gitk (an excellent idea!), instead of adopting the
> usual "hjkl = left, down, up, right" bindings used by less, vi, rogue,
> and many other programs, it used "ijkl = up, left, down, right" to
> mimic the inverted-T formation of the arrow keys on a qwerty keyboard,
> in the style of Lode runner.  So using 'j' and 'k' to scroll through
> commits produces utterly confusing results to the vi user, as 'k'
> moves down and 'j' moves to the previous commit.
> 
> Luckily most non-vi-users are probably using an alternate set of keys
> (cursor keys or z/x + n/p) anyway.  Switch to the expected vi/nethack
> convention.
> 
> Requested-by: Josh Triplett <josh@joshtriplett.org>
> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

This looks perfect to me.

Reviewed-by: Josh Triplett <josh@joshtriplett.org>

Thanks!

- Josh Triplett

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: gitk: 'j' and 'k' keyboard shortcuts backward
  2011-09-19 16:49 ` gitk: 'j' and 'k' keyboard shortcuts backward Jonathan Nieder
  2011-09-19 17:11   ` Josh Triplett
@ 2011-09-19 18:04   ` Clemens Buchacher
  2011-09-19 22:05     ` Klaus Robert Suetterlin
  2011-10-08  7:04   ` Paul Mackerras
  2 siblings, 1 reply; 5+ messages in thread
From: Clemens Buchacher @ 2011-09-19 18:04 UTC (permalink / raw)
  To: Jonathan Nieder
  Cc: Josh Triplett, Pat Thoyts, Robert Suetterlin, Paul Mackerras, git

On Mon, Sep 19, 2011 at 11:49:50AM -0500, Jonathan Nieder wrote:
> 
> How about this patch?
> 
> -- >8 --
> Subject: gitk: Make vi-style keybindings more vi-like

Fine by me.

Clemens

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: gitk: 'j' and 'k' keyboard shortcuts backward
  2011-09-19 18:04   ` Clemens Buchacher
@ 2011-09-19 22:05     ` Klaus Robert Suetterlin
  0 siblings, 0 replies; 5+ messages in thread
From: Klaus Robert Suetterlin @ 2011-09-19 22:05 UTC (permalink / raw)
  To: Clemens Buchacher
  Cc: Jonathan Nieder, Josh Triplett, Pat Thoyts, Paul Mackerras,
	git@vger.kernel.org

Fine with me, too.

--Robert S.



Am 19.09.2011 um 20:04 schrieb Clemens Buchacher <drizzd@aon.at>:

> On Mon, Sep 19, 2011 at 11:49:50AM -0500, Jonathan Nieder wrote:
>> 
>> How about this patch?
>> 
>> -- >8 --
>> Subject: gitk: Make vi-style keybindings more vi-like
> 
> Fine by me.
> 
> Clemens

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: gitk: 'j' and 'k' keyboard shortcuts backward
  2011-09-19 16:49 ` gitk: 'j' and 'k' keyboard shortcuts backward Jonathan Nieder
  2011-09-19 17:11   ` Josh Triplett
  2011-09-19 18:04   ` Clemens Buchacher
@ 2011-10-08  7:04   ` Paul Mackerras
  2 siblings, 0 replies; 5+ messages in thread
From: Paul Mackerras @ 2011-10-08  7:04 UTC (permalink / raw)
  To: Jonathan Nieder
  Cc: Clemens Buchacher, Josh Triplett, Pat Thoyts, Robert Suetterlin,
	git

On Mon, Sep 19, 2011 at 11:49:50AM -0500, Jonathan Nieder wrote:

> How about this patch?
> 
> -- >8 --
> Subject: gitk: Make vi-style keybindings more vi-like

Thanks, applied, minus the .po file updates.  The translaters seem to
prefer that I leave the .po file updates to them.

Paul.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2011-10-08  8:04 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <CA+Jd1rFzOOxL+-JVeovTiOwM5cmyyis65Y1+xiDmG=tkJ3b2Xw@mail.gmail.com>
2011-09-19 16:49 ` gitk: 'j' and 'k' keyboard shortcuts backward Jonathan Nieder
2011-09-19 17:11   ` Josh Triplett
2011-09-19 18:04   ` Clemens Buchacher
2011-09-19 22:05     ` Klaus Robert Suetterlin
2011-10-08  7:04   ` Paul Mackerras

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).