{"thread":{"id":"28434","subject":"Re: gitk: 'j' and 'k' keyboard shortcuts backward","startedAt":"2011-09-19T16:49:50Z","lastAt":"2011-10-08T07:04:07Z","messageCount":5,"participants":["Jonathan Nieder","Josh Triplett","Clemens Buchacher","Klaus Robert Suetterlin","Paul Mackerras"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"175788","messageId":"20110919164950.GB2861@elie","threadId":"28434","inReplyTo":"CA+Jd1rFzOOxL+-JVeovTiOwM5cmyyis65Y1+xiDmG=tkJ3b2Xw@mail.gmail.com","subject":"Re: gitk: 'j' and 'k' keyboard shortcuts backward","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2011-09-19T16:49:50Z","receivedAt":"2011-09-19T16:49:50Z","isPatch":false,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"(+cc: Josh and upstream)\nHi,\n\nClemens Buchacher wrote:\n\n> The key bindings are not related to vi. See Help -> Key\n> bindings in gitk:\n>\n> k    Move down one commit\n> j    Go back in history list\n>\n> I know this has confused me too. But I don't think it's worth changing,\n> unless you can think of a solution that would confuse neither vi nor non-vi\n> users.\n\nEh, I think it's worth changing and that the non-vi users are probably\njust using arrow keys. :)  The commit that introduced those key\nbindings says:\n\n| commit 6e2dda35\n| Author: Robert Suetterlin <robert@mpe.mpg.de>\n| Date:   Thu Sep 22 10:07:36 2005 +1000\n|\n|     [PATCH] Add new keybindings\n|\n|     This adds several new keybindings to allow history and selectline\n|     navigation.  I basically added Opera-like history traversal, as well\n|     as left-right-cursor history traversal and vi-like motion commands.\n|\n|     Signed-off-by: Robert Suetterlin <robert@mpe.mpg.de>\n|     Signed-off-by: Paul Mackerras <paulus@samba.org>\n\nHow about this patch?\n\n-- >8 --\nSubject: gitk: Make vi-style keybindings more vi-like\n\nWhen commit 6e2dda35 (Add new keybindings, 2005-09-22) added vi-style\nkeybindings to gitk (an excellent idea!), instead of adopting the\nusual \"hjkl = left, down, up, right\" bindings used by less, vi, rogue,\nand many other programs, it used \"ijkl = up, left, down, right\" to\nmimic the inverted-T formation of the arrow keys on a qwerty keyboard,\nin the style of Lode runner.  So using 'j' and 'k' to scroll through\ncommits produces utterly confusing results to the vi user, as 'k'\nmoves down and 'j' moves to the previous commit.\n\nLuckily most non-vi-users are probably using an alternate set of keys\n(cursor keys or z/x + n/p) anyway.  Switch to the expected vi/nethack\nconvention.\n\nRequested-by: Josh Triplett <josh@joshtriplett.org>\nSigned-off-by: Jonathan Nieder <jrnieder@gmail.com>\n---\n gitk     |   12 ++++++------\n po/de.po |   12 ++++++------\n po/es.po |   12 ++++++------\n po/fr.po |   12 ++++++------\n po/hu.po |   12 ++++++------\n po/it.po |   12 ++++++------\n po/ja.po |   12 ++++++------\n po/ru.po |   12 ++++++------\n po/sv.po |   12 ++++++------\n 9 files changed, 54 insertions(+), 54 deletions(-)\n\ndiff --git a/gitk b/gitk\nindex 1b0e09a5..ac3fb7d4 100755\n--- a/gitk\n+++ b/gitk\n@@ -2411,9 +2411,9 @@ proc makewindow {} {\n     bindkey n \"selnextline 1\"\n     bindkey z \"goback\"\n     bindkey x \"goforw\"\n-    bindkey i \"selnextline -1\"\n-    bindkey k \"selnextline 1\"\n-    bindkey j \"goback\"\n+    bindkey k \"selnextline -1\"\n+    bindkey j \"selnextline 1\"\n+    bindkey h \"goback\"\n     bindkey l \"goforw\"\n     bindkey b prevfile\n     bindkey d \"$ctext yview scroll 18 units\"\n@@ -2822,9 +2822,9 @@ proc keys {} {\n [mc \"<%s-W>\t\tClose window\" $M1T]\n [mc \"<Home>\t\tMove to first commit\"]\n [mc \"<End>\t\tMove to last commit\"]\n-[mc \"<Up>, p, i\tMove up one commit\"]\n-[mc \"<Down>, n, k\tMove down one commit\"]\n-[mc \"<Left>, z, j\tGo back in history list\"]\n+[mc \"<Up>, p, k\tMove up one commit\"]\n+[mc \"<Down>, n, j\tMove down one commit\"]\n+[mc \"<Left>, z, h\tGo back in history list\"]\n [mc \"<Right>, x, l\tGo forward in history list\"]\n [mc \"<PageUp>\tMove up one page in commit list\"]\n [mc \"<PageDown>\tMove down one page in commit list\"]\ndiff --git a/po/de.po b/po/de.po\nindex bd194a3d..e4cf661a 100644\n--- a/po/de.po\n+++ b/po/de.po\n@@ -371,16 +371,16 @@ msgid \"<End>\\t\\tMove to last commit\"\n msgstr \"<Ende>\\t\\tZur ältesten Version springen\"\n \n #: gitk:2819\n-msgid \"<Up>, p, i\\tMove up one commit\"\n-msgstr \"<Hoch>, p, i\\tNächste neuere Version\"\n+msgid \"<Up>, p, k\\tMove up one commit\"\n+msgstr \"<Hoch>, p, k\\tNächste neuere Version\"\n \n #: gitk:2820\n-msgid \"<Down>, n, k\\tMove down one commit\"\n-msgstr \"<Runter>, n, k\\tNächste ältere Version\"\n+msgid \"<Down>, n, j\\tMove down one commit\"\n+msgstr \"<Runter>, n, j\\tNächste ältere Version\"\n \n #: gitk:2821\n-msgid \"<Left>, z, j\\tGo back in history list\"\n-msgstr \"<Links>, z, j\\tEine Version zurückgehen\"\n+msgid \"<Left>, z, h\\tGo back in history list\"\n+msgstr \"<Links>, z, h\\tEine Version zurückgehen\"\n \n #: gitk:2822\n msgid \"<Right>, x, l\\tGo forward in history list\"\ndiff --git a/po/es.po b/po/es.po\nindex 0471dd06..9c8bcd29 100644\n--- a/po/es.po\n+++ b/po/es.po\n@@ -319,16 +319,16 @@ msgid \"<End>\\t\\tMove to last commit\"\n msgstr \"<End>\\t\\tIr a la última revisión\"\n \n #: gitk:2522\n-msgid \"<Up>, p, i\\tMove up one commit\"\n-msgstr \"<Up>, p, i\\tSubir una revisión\"\n+msgid \"<Up>, p, k\\tMove up one commit\"\n+msgstr \"<Up>, p, k\\tSubir una revisión\"\n \n #: gitk:2523\n-msgid \"<Down>, n, k\\tMove down one commit\"\n-msgstr \"<Down>, n, k\\tBajar una revisión\"\n+msgid \"<Down>, n, j\\tMove down one commit\"\n+msgstr \"<Down>, n, j\\tBajar una revisión\"\n \n #: gitk:2524\n-msgid \"<Left>, z, j\\tGo back in history list\"\n-msgstr \"<Left>, z, j\\tRetroceder en la historia\"\n+msgid \"<Left>, z, h\\tGo back in history list\"\n+msgstr \"<Left>, z, h\\tRetroceder en la historia\"\n \n #: gitk:2525\n msgid \"<Right>, x, l\\tGo forward in history list\"\ndiff --git a/po/fr.po b/po/fr.po\nindex 5370ddc3..ff476191 100644\n--- a/po/fr.po\n+++ b/po/fr.po\n@@ -372,16 +372,16 @@ msgid \"<End>\\t\\tMove to last commit\"\n msgstr \"<Fin>\\t\\tAller au dernier commit\"\n \n #: gitk:2691\n-msgid \"<Up>, p, i\\tMove up one commit\"\n-msgstr \"<Haut>, p, i\\t Aller au commit suivant\"\n+msgid \"<Up>, p, k\\tMove up one commit\"\n+msgstr \"<Haut>, p, k\\t Aller au commit suivant\"\n \n #: gitk:2692\n-msgid \"<Down>, n, k\\tMove down one commit\"\n-msgstr \"<Bas>, n, k\\t Aller au commit précédent\"\n+msgid \"<Down>, n, j\\tMove down one commit\"\n+msgstr \"<Bas>, n, j\\t Aller au commit précédent\"\n \n #: gitk:2693\n-msgid \"<Left>, z, j\\tGo back in history list\"\n-msgstr \"<Gauche>, z, j\\tReculer dans l'historique\"\n+msgid \"<Left>, z, h\\tGo back in history list\"\n+msgstr \"<Gauche>, z, h\\tReculer dans l'historique\"\n \n #: gitk:2694\n msgid \"<Right>, x, l\\tGo forward in history list\"\ndiff --git a/po/hu.po b/po/hu.po\nindex 7262b610..af0ddda2 100644\n--- a/po/hu.po\n+++ b/po/hu.po\n@@ -370,16 +370,16 @@ msgid \"<End>\\t\\tMove to last commit\"\n msgstr \"<Ende>\\t\\tUtolsó commithoz\"\n \n #: gitk:2816\n-msgid \"<Up>, p, i\\tMove up one commit\"\n-msgstr \"<Hoch>, p, i\\tEgy committal feljebb\"\n+msgid \"<Up>, p, k\\tMove up one commit\"\n+msgstr \"<Hoch>, p, k\\tEgy committal feljebb\"\n \n #: gitk:2817\n-msgid \"<Down>, n, k\\tMove down one commit\"\n-msgstr \"<Runter>, n, k\\tEgy committal lejjebb\"\n+msgid \"<Down>, n, j\\tMove down one commit\"\n+msgstr \"<Runter>, n, j\\tEgy committal lejjebb\"\n \n #: gitk:2818\n-msgid \"<Left>, z, j\\tGo back in history list\"\n-msgstr \"<Links>, z, j\\tVissza a history listába\"\n+msgid \"<Left>, z, h\\tGo back in history list\"\n+msgstr \"<Links>, z, h\\tVissza a history listába\"\n \n #: gitk:2819\n msgid \"<Right>, x, l\\tGo forward in history list\"\ndiff --git a/po/it.po b/po/it.po\nindex a730d63a..5f562109 100644\n--- a/po/it.po\n+++ b/po/it.po\n@@ -372,16 +372,16 @@ msgid \"<End>\\t\\tMove to last commit\"\n msgstr \"<End>\\t\\tVai all'ultima revisione\"\n \n #: gitk:2819\n-msgid \"<Up>, p, i\\tMove up one commit\"\n-msgstr \"<Su>, p, i\\tVai più in alto di una revisione\"\n+msgid \"<Up>, p, k\\tMove up one commit\"\n+msgstr \"<Su>, p, k\\tVai più in alto di una revisione\"\n \n #: gitk:2820\n-msgid \"<Down>, n, k\\tMove down one commit\"\n-msgstr \"<Giù>, n, k\\tVai più in basso di una revisione\"\n+msgid \"<Down>, n, j\\tMove down one commit\"\n+msgstr \"<Giù>, n, j\\tVai più in basso di una revisione\"\n \n #: gitk:2821\n-msgid \"<Left>, z, j\\tGo back in history list\"\n-msgstr \"<Sinistra>, z, j\\tTorna indietro nella cronologia\"\n+msgid \"<Left>, z, h\\tGo back in history list\"\n+msgstr \"<Sinistra>, z, h\\tTorna indietro nella cronologia\"\n \n #: gitk:2822\n msgid \"<Right>, x, l\\tGo forward in history list\"\ndiff --git a/po/ja.po b/po/ja.po\nindex 4f470516..249ec150 100644\n--- a/po/ja.po\n+++ b/po/ja.po\n@@ -372,16 +372,16 @@ msgid \"<End>\\t\\tMove to last commit\"\n msgstr \"<End>\\t\\t最後のコミットに移動\"\n \n #: gitk:2693\n-msgid \"<Up>, p, i\\tMove up one commit\"\n-msgstr \"<Up>, p, i\\t一つ上のコミットに移動\"\n+msgid \"<Up>, p, k\\tMove up one commit\"\n+msgstr \"<Up>, p, k\\t一つ上のコミットに移動\"\n \n #: gitk:2694\n-msgid \"<Down>, n, k\\tMove down one commit\"\n-msgstr \"<Down>, n, k\\t一つ下のコミットに移動\"\n+msgid \"<Down>, n, j\\tMove down one commit\"\n+msgstr \"<Down>, n, j\\t一つ下のコミットに移動\"\n \n #: gitk:2695\n-msgid \"<Left>, z, j\\tGo back in history list\"\n-msgstr \"<Left>, z, j\\t履歴の前に戻る\"\n+msgid \"<Left>, z, h\\tGo back in history list\"\n+msgstr \"<Left>, z, h\\t履歴の前に戻る\"\n \n #: gitk:2696\n msgid \"<Right>, x, l\\tGo forward in history list\"\ndiff --git a/po/ru.po b/po/ru.po\nindex c3d0285b..e7e6e9ef 100644\n--- a/po/ru.po\n+++ b/po/ru.po\n@@ -350,16 +350,16 @@ msgid \"<End>\\t\\tMove to last commit\"\n msgstr \"<End>\\t\\tПерейти к последнему состоянию\"\n \n #: gitk:2646\n-msgid \"<Up>, p, i\\tMove up one commit\"\n-msgstr \"<Up>, p, i\\tПерейти к следующему состоянию\"\n+msgid \"<Up>, p, k\\tMove up one commit\"\n+msgstr \"<Up>, p, k\\tПерейти к следующему состоянию\"\n \n #: gitk:2647\n-msgid \"<Down>, n, k\\tMove down one commit\"\n-msgstr \"<Down>, n, k\\tПерейти к предыдущему состоянию\"\n+msgid \"<Down>, n, j\\tMove down one commit\"\n+msgstr \"<Down>, n, j\\tПерейти к предыдущему состоянию\"\n \n #: gitk:2648\n-msgid \"<Left>, z, j\\tGo back in history list\"\n-msgstr \"<Left>, z, j\\tПоказать ранее посещённое состояние\"\n+msgid \"<Left>, z, h\\tGo back in history list\"\n+msgstr \"<Left>, z, h\\tПоказать ранее посещённое состояние\"\n \n #: gitk:2649\n msgid \"<Right>, x, l\\tGo forward in history list\"\ndiff --git a/po/sv.po b/po/sv.po\nindex 386763ad..8bd72f3d 100644\n--- a/po/sv.po\n+++ b/po/sv.po\n@@ -371,16 +371,16 @@ msgid \"<End>\\t\\tMove to last commit\"\n msgstr \"<End>\\t\\tGå till sista incheckning\"\n \n #: gitk:2819\n-msgid \"<Up>, p, i\\tMove up one commit\"\n-msgstr \"<Upp>, p, i\\tGå en incheckning upp\"\n+msgid \"<Up>, p, k\\tMove up one commit\"\n+msgstr \"<Upp>, p, k\\tGå en incheckning upp\"\n \n #: gitk:2820\n-msgid \"<Down>, n, k\\tMove down one commit\"\n-msgstr \"<Ned>, n, k\\tGå en incheckning ned\"\n+msgid \"<Down>, n, j\\tMove down one commit\"\n+msgstr \"<Ned>, n, j\\tGå en incheckning ned\"\n \n #: gitk:2821\n-msgid \"<Left>, z, j\\tGo back in history list\"\n-msgstr \"<Vänster>, z, j\\tGå bakåt i historiken\"\n+msgid \"<Left>, z, h\\tGo back in history list\"\n+msgstr \"<Vänster>, z, h\\tGå bakåt i historiken\"\n \n #: gitk:2822\n msgid \"<Right>, x, l\\tGo forward in history list\"\n-- \n1.7.7.rc1\n"},{"id":"175790","messageId":"20110919171156.GA1705@leaf","threadId":"28434","inReplyTo":"20110919164950.GB2861@elie","subject":"Re: gitk: 'j' and 'k' keyboard shortcuts backward","fromName":"Josh Triplett","fromEmail":"josh@joshtriplett.org","sentAt":"2011-09-19T17:11:56Z","receivedAt":"2011-09-19T17:11:56Z","isPatch":false,"sender":{"key":"josh@joshtriplett.org","avatar":"https://avatars.githubusercontent.com/u/162737?v=4"},"body":"On Mon, Sep 19, 2011 at 11:49:50AM -0500, Jonathan Nieder wrote:\n> How about this patch?\n> \n> -- >8 --\n> Subject: gitk: Make vi-style keybindings more vi-like\n> \n> When commit 6e2dda35 (Add new keybindings, 2005-09-22) added vi-style\n> keybindings to gitk (an excellent idea!), instead of adopting the\n> usual \"hjkl = left, down, up, right\" bindings used by less, vi, rogue,\n> and many other programs, it used \"ijkl = up, left, down, right\" to\n> mimic the inverted-T formation of the arrow keys on a qwerty keyboard,\n> in the style of Lode runner.  So using 'j' and 'k' to scroll through\n> commits produces utterly confusing results to the vi user, as 'k'\n> moves down and 'j' moves to the previous commit.\n> \n> Luckily most non-vi-users are probably using an alternate set of keys\n> (cursor keys or z/x + n/p) anyway.  Switch to the expected vi/nethack\n> convention.\n> \n> Requested-by: Josh Triplett <josh@joshtriplett.org>\n> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>\n\nThis looks perfect to me.\n\nReviewed-by: Josh Triplett <josh@joshtriplett.org>\n\nThanks!\n\n- Josh Triplett\n"},{"id":"175796","messageId":"20110919180449.GA2677@ecki","threadId":"28434","inReplyTo":"20110919164950.GB2861@elie","subject":"Re: gitk: 'j' and 'k' keyboard shortcuts backward","fromName":"Clemens Buchacher","fromEmail":"drizzd@aon.at","sentAt":"2011-09-19T18:04:49Z","receivedAt":"2011-09-19T18:04:49Z","isPatch":false,"sender":{"key":"drizzd@gmx.net","avatar":"https://avatars.githubusercontent.com/u/59082?v=4"},"body":"On Mon, Sep 19, 2011 at 11:49:50AM -0500, Jonathan Nieder wrote:\n> \n> How about this patch?\n> \n> -- >8 --\n> Subject: gitk: Make vi-style keybindings more vi-like\n\nFine by me.\n\nClemens\n"},{"id":"175822","messageId":"70BFF542-0D85-43AF-9293-AB7988C5AB92@mpe.mpg.de","threadId":"28434","inReplyTo":"20110919180449.GA2677@ecki","subject":"Re: gitk: 'j' and 'k' keyboard shortcuts backward","fromName":"Klaus Robert Suetterlin","fromEmail":"robert@mpe.mpg.de","sentAt":"2011-09-19T22:05:30Z","receivedAt":"2011-09-19T22:05:30Z","isPatch":false,"sender":{"key":"robert@mpe.mpg.de","avatar":null},"body":"Fine with me, too.\n\n--Robert S.\n\n\n\nAm 19.09.2011 um 20:04 schrieb Clemens Buchacher <drizzd@aon.at>:\n\n> On Mon, Sep 19, 2011 at 11:49:50AM -0500, Jonathan Nieder wrote:\n>> \n>> How about this patch?\n>> \n>> -- >8 --\n>> Subject: gitk: Make vi-style keybindings more vi-like\n> \n> Fine by me.\n> \n> Clemens\n"},{"id":"177215","messageId":"20111008070407.GB27056@bloggs.ozlabs.ibm.com","threadId":"28434","inReplyTo":"20110919164950.GB2861@elie","subject":"Re: gitk: 'j' and 'k' keyboard shortcuts backward","fromName":"Paul Mackerras","fromEmail":"paulus@samba.org","sentAt":"2011-10-08T07:04:07Z","receivedAt":"2011-10-08T07:04:07Z","isPatch":false,"sender":{"key":"paulus@samba.org","avatar":"https://avatars.githubusercontent.com/u/1606439?v=4"},"body":"On Mon, Sep 19, 2011 at 11:49:50AM -0500, Jonathan Nieder wrote:\n\n> How about this patch?\n> \n> -- >8 --\n> Subject: gitk: Make vi-style keybindings more vi-like\n\nThanks, applied, minus the .po file updates.  The translaters seem to\nprefer that I leave the .po file updates to them.\n\nPaul.\n"}]}