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