Hello.

This patch by me and Alexander Hirsch makes tmux accept C-j everywhere
Enter/C-M is accepted, as seems customary in Unix:

--- src/usr.bin/tmux/mode-key.c
+++ src/usr.bin/tmux/mode-key.c
@@ -153,6 +153,7 @@
        { '\025' /* C-u */,         0, MODEKEYEDIT_DELETELINE },
        { '\027' /* C-w */,         0, MODEKEYEDIT_DELETEWORD },
        { '\033' /* Escape */,      0, MODEKEYEDIT_SWITCHMODE },
+       { '\n',                     0, MODEKEYEDIT_ENTER },
        { '\r',                     0, MODEKEYEDIT_ENTER },
        { KEYC_BSPACE,              0, MODEKEYEDIT_BACKSPACE },
        { KEYC_DC,                  0, MODEKEYEDIT_DELETE },
@@ -176,6 +177,7 @@
        { 'X',                      1, MODEKEYEDIT_BACKSPACE },
        { '\003' /* C-c */,         1, MODEKEYEDIT_CANCEL },
        { '\010' /* C-h */,         1, MODEKEYEDIT_BACKSPACE },
+       { '\n',                     1, MODEKEYEDIT_ENTER },
        { '\r',                     1, MODEKEYEDIT_ENTER },
        { '^',                      1, MODEKEYEDIT_STARTOFLINE },
        { 'a',                      1, MODEKEYEDIT_SWITCHMODEAPPEND },
@@ -219,6 +221,7 @@
        { '\005' /* C-e */,         0, MODEKEYCHOICE_SCROLLDOWN },
        { '\006' /* C-f */,         0, MODEKEYCHOICE_PAGEDOWN },
        { '\031' /* C-y */,         0, MODEKEYCHOICE_SCROLLUP },
+       { '\n',                     0, MODEKEYCHOICE_CHOOSE },
        { '\r',                     0, MODEKEYCHOICE_CHOOSE },
        { 'j',                      0, MODEKEYCHOICE_DOWN },
        { 'k',                      0, MODEKEYCHOICE_UP },
@@ -281,6 +284,7 @@
        { '\025' /* C-u */,         0, MODEKEYCOPY_HALFPAGEUP },
        { '\031' /* C-y */,         0, MODEKEYCOPY_SCROLLUP },
        { '\033' /* Escape */,      0, MODEKEYCOPY_CLEARSELECTION },
+       { '\n',                     0, MODEKEYCOPY_COPYSELECTION },
        { '\r',                     0, MODEKEYCOPY_COPYSELECTION },
        { '^',                      0, MODEKEYCOPY_BACKTOINDENTATION },
        { 'b',                      0, MODEKEYCOPY_PREVIOUSWORD },
@@ -329,6 +333,7 @@
        { '\027' /* C-w */,         0, MODEKEYEDIT_DELETEWORD },
        { '\031' /* C-y */,         0, MODEKEYEDIT_PASTE },
        { '\033' /* Escape */,      0, MODEKEYEDIT_CANCEL },
+       { '\n',                     0, MODEKEYEDIT_ENTER },
        { '\r',                     0, MODEKEYEDIT_ENTER },
        { 'b' | KEYC_ESCAPE,        0, MODEKEYEDIT_PREVIOUSWORD },
        { 'f' | KEYC_ESCAPE,        0, MODEKEYEDIT_NEXTWORDEND },
@@ -363,6 +368,7 @@
        { '\020' /* C-p */,         0, MODEKEYCHOICE_UP },
        { '\026' /* C-v */,         0, MODEKEYCHOICE_PAGEDOWN },
        { '\033' /* Escape */,      0, MODEKEYCHOICE_CANCEL },
+       { '\n',                     0, MODEKEYCHOICE_CHOOSE },
        { '\r',                     0, MODEKEYCHOICE_CHOOSE },
        { 'q',                      0, MODEKEYCHOICE_CANCEL },
        { 'v' | KEYC_ESCAPE,        0, MODEKEYCHOICE_PAGEUP },

-- 
Simon Nicolussi, <si...@sinic.name>
http://www.sinic.name/

Reply via email to