It is annoying that the copy mode key table (or any other key table)
will suppress root key table bindings. So change to always check the
root table if no binding is found in the current table (whether it be
the prefix table from pressing the prefix or the copy mode table from a
pane).

A root key binding can be blocked by binding the key to a command that
does nothing (like send-keys with no arguments).

Problem reported by Thomas Sattler.
2 files changed
tree: 614ddae6f0480b71170df4072cc5b83959772b73
  1. Makefile
  2. alerts.c
  3. arguments.c
  4. attributes.c
  5. cfg.c
  6. client.c
  7. cmd-attach-session.c
  8. cmd-bind-key.c
  9. cmd-break-pane.c
  10. cmd-capture-pane.c
  11. cmd-choose-buffer.c
  12. cmd-choose-client.c
  13. cmd-choose-tree.c
  14. cmd-command-prompt.c
  15. cmd-confirm-before.c
  16. cmd-copy-mode.c
  17. cmd-detach-client.c
  18. cmd-display-message.c
  19. cmd-display-panes.c
  20. cmd-find-window.c
  21. cmd-find.c
  22. cmd-has-session.c
  23. cmd-if-shell.c
  24. cmd-join-pane.c
  25. cmd-kill-pane.c
  26. cmd-kill-server.c
  27. cmd-kill-session.c
  28. cmd-kill-window.c
  29. cmd-list-buffers.c
  30. cmd-list-clients.c
  31. cmd-list-keys.c
  32. cmd-list-panes.c
  33. cmd-list-sessions.c
  34. cmd-list-windows.c
  35. cmd-list.c
  36. cmd-load-buffer.c
  37. cmd-lock-server.c
  38. cmd-move-window.c
  39. cmd-new-session.c
  40. cmd-new-window.c
  41. cmd-paste-buffer.c
  42. cmd-pipe-pane.c
  43. cmd-queue.c
  44. cmd-refresh-client.c
  45. cmd-rename-session.c
  46. cmd-rename-window.c
  47. cmd-resize-pane.c
  48. cmd-respawn-pane.c
  49. cmd-respawn-window.c
  50. cmd-rotate-window.c
  51. cmd-run-shell.c
  52. cmd-save-buffer.c
  53. cmd-select-layout.c
  54. cmd-select-pane.c
  55. cmd-select-window.c
  56. cmd-send-keys.c
  57. cmd-send-prefix.c
  58. cmd-set-buffer.c
  59. cmd-set-environment.c
  60. cmd-set-hook.c
  61. cmd-set-option.c
  62. cmd-show-buffer.c
  63. cmd-show-environment.c
  64. cmd-show-messages.c
  65. cmd-show-options.c
  66. cmd-source-file.c
  67. cmd-split-window.c
  68. cmd-string.c
  69. cmd-swap-pane.c
  70. cmd-swap-window.c
  71. cmd-switch-client.c
  72. cmd-unbind-key.c
  73. cmd-wait-for.c
  74. cmd.c
  75. colour.c
  76. control-notify.c
  77. control.c
  78. environ.c
  79. format.c
  80. grid-view.c
  81. grid.c
  82. hooks.c
  83. input-keys.c
  84. input.c
  85. job.c
  86. key-bindings.c
  87. key-string.c
  88. layout-custom.c
  89. layout-set.c
  90. layout.c
  91. log.c
  92. mode-key.c
  93. names.c
  94. notify.c
  95. options-table.c
  96. options.c
  97. paste.c
  98. proc.c
  99. procname.c
  100. resize.c
  101. screen-redraw.c
  102. screen-write.c
  103. screen.c
  104. server-client.c
  105. server-fn.c
  106. server.c
  107. session.c
  108. signal.c
  109. status.c
  110. style.c
  111. tmux.1
  112. tmux.c
  113. tmux.h
  114. tty-acs.c
  115. tty-keys.c
  116. tty-term.c
  117. tty.c
  118. utf8.c
  119. window-choose.c
  120. window-clock.c
  121. window-copy.c
  122. window.c
  123. xmalloc.c
  124. xmalloc.h
  125. xterm-keys.c