Please show me logs from running tmux -vv with this patch applied and running one of the send-keys commands that doesn't work. Send me the tmux-server*.log file created in the current directory.
On Wed, Jun 28, 2017 at 06:15:13AM +0200, Franky Spamschleuder wrote: > Hello Nicholas, > no, this fix doesn'nt work for me. > But I noticed that Alt Keys in Combination with "normal letters" do work. > I also remapped vim like navigation (hjkl) for navigating through the > panes and Alt-i and Alt-o for cycling through the tabs. > So when I configure tmux to send Alt Arrow Keys as Alt-hjkl and > Alt-PageUp/PageDown as Alt-i and Alt-o inside a vim pane I got what I > want. This does not fix the issue but is a good workaround. > Cheers Frank > 2017-06-22 20:47 GMT+02:00 Nicholas Marriott > <[email protected]>: > > Yes special keys sent with send-keys will not have the xterm flag so > they will be the old key style not the xterm key style which vim is > expecting. > > Does this fix it? > > Index: cmd-send-keys.c > =================================================================== > RCS file: /cvs/src/usr.bin/tmux/cmd-send-keys.c,v > retrieving revision 1.41 > diff -u -p -r1.41 cmd-send-keys.c > --- cmd-send-keys.cA A A 10 May 2017 10:46:59 -0000A A A 1.41 > +++ cmd-send-keys.cA A A 22 Jun 2017 18:46:57 -0000 > @@ -64,6 +64,8 @@ cmd_send_keys_inject(struct client *c, s > A A A A struct key_bindingA A A *bd, bd_find; > > A A A A if (wp->mode == NULL || wp->mode->key_table == NULL) { > +A A A A A A A A if (options_get_number(wp->window->options, > "xterm-keys")) > +A A A A A A A A A A A A key |= KEYC_XTERM; > A A A A A A A A window_pane_key(wp, NULL, s, key, NULL); > A A A A A A A A return; > A A A A } > Index: input-keys.c > =================================================================== > RCS file: /cvs/src/usr.bin/tmux/input-keys.c,v > retrieving revision 1.61 > diff -u -p -r1.61 input-keys.c > --- input-keys.cA A A A 12 Jun 2017 07:04:24 -0000A A A 1.61 > +++ input-keys.cA A A A 22 Jun 2017 18:46:57 -0000 > @@ -177,7 +177,7 @@ input_key(struct window_pane *wp, key_co > A A A A A * If this is a normal 7-bit key, just send it, with a > leading escape > A A A A A * if necessary. If it is a UTF-8 key, split it and send > it. > A A A A A */ > -A A A A justkey = (key & ~KEYC_ESCAPE); > +A A A A justkey = (key & ~(KEYC_XTERM|KEYC_ESCAPE)); > A A A A if (justkey <= 0x7f) { > A A A A A A A A if (key & KEYC_ESCAPE) > A A A A A A A A A A A A bufferevent_write(wp->event, "\033", > 1); > Index: window.c > =================================================================== > RCS file: /cvs/src/usr.bin/tmux/window.c,v > retrieving revision 1.198 > diff -u -p -r1.198 window.c > --- window.cA A 4 Jun 2017 09:02:36 -0000A A A A 1.198 > +++ window.cA A 22 Jun 2017 18:46:57 -0000 > @@ -1226,7 +1226,7 @@ window_pane_key(struct window_pane *wp, > A A A A if (wp->mode != NULL) { > A A A A A A A A wp->modelast = time(NULL); > A A A A A A A A if (wp->mode->key != NULL) > -A A A A A A A A A A A A wp->mode->key(wp, c, s, key, m); > +A A A A A A A A A A A A wp->mode->key(wp, c, s, (key & > ~KEYC_XTERM), m); > A A A A A A A A return; > A A A A } > > On Wed, Jun 21, 2017 at 06:43:52AM +0200, Franky Spamschleuder wrote: > >A A Hi Nicholas, > >A A so I got once again some time left to play around and figured out > the > >A A following: > >A A Alt keys does work A as usual, the problem that I have got ist > with the > >A A alt key via tmux send-keyes. As I mentioned I used a script to > switch > >A A inside vim panes and tmux panes with the same key combination. > >A A When I'm inside vim and press alt Arrow key tmux triggers A a > send-key > >A A command which is not recognized correctly anymore like in version > 2.4.A > >A A in .tmux.conf > >A A bind -n M-Up AA A if "[ $(tmux display -p > '#{pane_current_command}') = vim > >A A ]" "send-keys M-Up" "select-pane -U" > >A A bind -n M-Down A if "[ $(tmux display -p > '#{pane_current_command}') = vim > >A A ]" "send-keys M-Down" "select-pane -D" > >A A bind -n M-Left A if "[ $(tmux display -p > '#{pane_current_command}') = vim > >A A ]" "send-keys M-Left" "select-pane -L" > >A A bind -n M-Right if "[ $(tmux display -p > '#{pane_current_command}') = vim > >A A ]" "send-keys M-Right" "select-pane -R" > >A A .vimrc > >A A nnoremap <silent> <A-Up> :call TmuxMove('k')<cr> > >A A noremap <silent> <A-Down> :call TmuxMove('j')<cr> > >A A nnoremap <silent> <A-Left> :call TmuxMove('h')<cr> > >A A nnoremap <silent> <A-Right> :call TmuxMove('l')<cr> > >A A function! TmuxMove(direction) > >A A let wnr = winnr() > >A A silent! execute 'wincmd ' . a:direction > >A A " If the winnr is still the same after we moved, it is the last > pane > >A A if wnr == winnr() > >A A call system('tmux select-pane -' . tr(a:direction, 'hjkl', > 'LDUR')) > >A A end > >A A endfunction > >A A This script is similar toA vim-tmux-navigator and was also > noticed in > >A A issue 907 in the last comment. I hope this information may help > you. > >A A Regards Frank > >A A 2017-05-31 12:37 GMT+02:00 Nicholas Marriott > >A A <[email protected]>: > > > >A A A tmux uses xterm style escape sequences by default now for meta > + arrows, > >A A A you will probably need to tell vim how to understand them. > > > >A A A If it doesn't get them from TERM=tmux then you will need to > configure it > >A A A some other way, ask the vim developers? > > > >A A A On Wed, May 31, 2017 at 11:50:55AM +0200, Franky Spamschleuder > wrote: > >A A A >AA AA Hi Nicholas, > >A A A >AA AA so I tried export term=tmux; vimA > >A A A >AA AA and test it again but it doesen't work. echo &term > inside vim > >A A A shoes tmux > >A A A >AA AA so it should set be A correct. > >A A A >AA AA Regards Frank > >A A A >AA AA 2017-05-31 10:46 GMT+02:00 Nicholas Marriott > >A A A >AA AA <[email protected]>: > >A A A > > >A A A >AA AA AA You will need to configure vim to recognise what > tmux sends > >A A A for these > >A A A >AA AA AA keys. Setting TERM=tmux inside may do this, or > you may need to > >A A A tell it > >A A A >AA AA AA explicitly. > >A A A > > >A A A >AA AA AA On Wed, May 31, 2017 at 10:29:26AM +0200, Franky > Spamschleuder > >A A A wrote: > >A A A >AA AA AA >AAA AAA echo $TERM > >A A A >AA AA AA >AAA AAA screen-256color > >A A A >AA AA AA >AAA AAA 2017-05-31 10:26 GMT+02:00 Nicholas > Marriott > >A A A >AA AA AA >AAA AAA <[email protected]>: > >A A A >AA AA AA > > >A A A >AA AA AA >AAA AAA AAA Do you have TERM=tmux inside tmux > or TERM=screen? > >A A A >AA AA AA > > >A A A >AA AA AA >AAA AAA AAA On Wed, May 31, 2017 at > 10:17:57AM +0200, Franky > >A A A Spamschleuder > >A A A >AA AA AA wrote: > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA the Alt mappings do > not work in vim > >A A A running inside > >A A A >AA AA AA tmux > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA just try the > following: > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA put these to your > vim config: > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA nnoremap <silent> > <A-Up> AAAAA A > >A A A :execute 'wincmd A > >A A A >AA AA AA k'<cr> > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA nnoremap <silent> > <A-Down> A :execute > >A A A 'wincmd j'<cr> > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA nnoremap <silent> > <A-Left> A :execute > >A A A 'wincmd h'<cr> > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA nnoremap <silent> > <A-Right> :execute > >A A A 'wincmd l'<cr> > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA run vim, do a split > and try to switch > >A A A with these > >A A A >AA AA AA bindings through > >A A A >AA AA AA >AAA AAA AAA the > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA windows > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA 2017-05-31 10:11 > GMT+02:00 Nicholas > >A A A Marriott > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA > <[email protected]>: > >A A A >AA AA AA >AAA AAA AAA > > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA Are you saying > the keys don't > >A A A work in tmux > >A A A >AA AA AA itself, or just in > >A A A >AA AA AA >AAA AAA AAA vim inside > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA tmux? > >A A A >AA AA AA >AAA AAA AAA > > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA On Wed, May > 31, 2017 at > >A A A 10:06:33AM +0200, Franky > >A A A >AA AA AA Spamschleuder > >A A A >AA AA AA >AAA AAA AAA wrote: > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > konsole 17.04.1 > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > 2017-05-31 10:04 > >A A A GMT+02:00 Nicholas > >A A A >AA AA AA Marriott > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAA > >A A A <[email protected]>: > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA > > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA What terminal? > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA On 31 May 2017 > >A A A 9:02 am, "'Franky > >A A A >AA AA AA Spamschleuder' > >A A A >AA AA AA >AAA AAA AAA via > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA tmux-users" > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAA > >A A A <[email protected]> > >A A A >AA AA AA wrote: > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA > > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA Hi > >A A A there, > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA I use > >A A A alt arrow keys to > >A A A >AA AA AA navigate inside > >A A A >AA AA AA >AAA AAA AAA windows in vim and > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA the tmux > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA panes. > >A A A Since I updated to > >A A A >AA AA AA tmux 2.5 this does > >A A A >AA AA AA >AAA AAA AAA not work > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA anymore. > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA Has it > >A A A sth. to the with the > >A A A >AA AA AA Issue #907 > >A A A >AA AA AA >AAA AAA AAA mentioned in the > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA changelog? How > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA can I > >A A A fix this problem? > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA Thank > >A A A you > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA Frank > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA > > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA -- > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA You > >A A A received this message > >A A A >AA AA AA because you are > >A A A >AA AA AA >AAA AAA AAA subscribed to the > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA Google > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA Groups > >A A A "tmux-users" group. > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA To > >A A A unsubscribe from this > >A A A >AA AA AA group and stop > >A A A >AA AA AA >AAA AAA AAA receiving emails > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA from it, send > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA an email > >A A A to > >A A A >AA AA AA >AAA AAA AAA > [email protected]. > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA To post > >A A A to this group, send > >A A A >AA AA AA email to > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA > [email protected]. > >A A A >AA AA AA >AAA AAA AAA >AAAA AAAA AAAA >AAAAA AAAAA > AAAAA AAAAA For more > >A A A options, visit > >A A A >AA AA AA >AAA AAA AAA > https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "tmux-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
