I sometimes need the `<prefix>[hjkl]` bindings over `C-[hjkl]` (e.g. vim
insert mode). Then it is nice to have them repeatable when navigating to
a pane further away.
Only scroll 5 lines instead of a full page when entering copy-mode
through the wheel as a full page was too disorienting.
TODO: Pass `WheelUpPane` after entering copy-mode instead of redundantly
executing it's bound command.
Somehow neither of the following worked:
send -XM WheelUpPane
send -X WheelUpPane
`copy-mode -e` annoyed me, as it happened sometimes that I would hold
down `C-d` to scroll down, only to close the shell and pane when
reaching the bottom.
But in principal I do like the idea of it and missed the feature when
reaching the bottom by using the scroll wheel.
Change the `WheelDownPane` in copy-mode to exit when the bottom is
reached.
In tmux version 3.2 all style options were changed to string
options, making them support formats.[^1]
From that version on, use the pane-borders as indicator for the
{copy,sync}-mode instead of the prefix_highlight plugin.
Keep the pure style fallback, as Ubuntu 20.4 for example still only
ships with version 3.0a.
[^1]: https://github.com/tmux/tmux/commit/f03b61131b34079
- Invert the prefix_highlight colors so that it is less obtrusive.
- Use `brightred` for the background of the sync-mode indicator.
This way the prefix, copy-mode and sync-mode indicators are visually
differentiable.
Add a 'resize mode' that behaves similar to the one in my i3 config.
When pressing the binding `<prefix>r`, a new key-table is selected that
allows resizing with `hjkl` as well as choosing the different layouts
directly over the number row.
Do not exit automatically the copy-mode when reaching the bottom. This
was especially annoying/dangerous when holding `C-d` down to scroll to
the bottom.
Wrap lines at 80 columns where appropriate and I had the energy to think
about how/where to wrap.
There are still lines longer than that, which I plan to wrap in the
future. But that is enough for now.
Enter copy-mode and scroll one page up directly with PageUp without the
need of the prefix. This binding exists per default already in the
prefix keytable.
[vim-tmux-navigator][1]:
> Seamless navigation between tmux panes and vim splits
Add the hybrid vim/tmux plugin `vim-tmux-navigator` to switch between
tmux panes and vim splits with `C-[hjkl]`.
Add vim-tmux-navigator as a submodule in tmux/plugins and create a
symlink from vim/pack/plugins/start.
Get rid of similar switching keymappings in the vim and tmux configs.
[1]: https://github.com/christoomey/vim-tmux-navigator
Change all styles that used yellow to brightyellow and use 'default'
instead of black as background where appropriate to not mess up a
transparent terminal background.
[renumber-windows][1]:
> If on, when a window is closed in a session, automatically renumber
> the other windows in numerical order. This respects the base-index
> option if it has been set. If off, do not renumber the windows.
[1]: tmux(1)
Instead of putting the window id and name in filled rounded "boxes" with
the help of Unicode characters, display simply the text on neutral
background and change only the foreground. This makes the status line
more minimal while also "supporting" terminals without a patched
Nerd-font.