Pass all given arguments to `git worktree add`. This makes it possible
to directly create a new branch with `-b` for example. As the arguments
are not used anywhere else, this should not introduce any parsing
issues.
In interactive commands, allow the user to provide one-letter input with
a single key (i.e., without hitting enter). Currently this is used by
the --patch mode of git-add(1), git-checkout(1), git-restore(1),
git-commit(1), git-reset(1), and git-stash(1). Note that this setting is
silently ignored if portable keystroke input is not available; requires
the Perl module Term::ReadKey.[1]
[1] - git-config(1)
Neovim does not make `has('clipboard')` obsolete. It only simplifies
clipboard support but `has('clipboard')` will still return `0` if no
supported clipboard program is installed.
See `:help clipboard`
Nvim has no direct connection to the system clipboard. Instead it
depends on a |provider| which transparently uses shell commands to
communicate with the system clipboard or any other clipboard
"backend".
and `:help clipboard-tool`
The presence of a working clipboard tool implicitly enables the '+'
and '*' registers. Nvim looks for these clipboard tools, in order of
priority:
- |g:clipboard|
- pbcopy, pbpaste (macOS)
- wl-copy, wl-paste (if $WAYLAND_DISPLAY is set)
- xclip (if $DISPLAY is set)
- xsel (if $DISPLAY is set)
- lemonade (for SSH) https://github.com/pocke/lemonade
- doitclient (for SSH)
http://www.chiark.greenend.org.uk/~sgtatham/doit/
- win32yank (Windows)
- termux (via termux-clipboard-set, termux-clipboard-set)
- tmux (if $TMUX is set)
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.
Update the function to use the current `.git/modules/` structure, by
only using the basename of the path.
I am not sure when this was changed and too lazy right now to find it
out.
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.
Add aliases so that I can type short ssh commands.
This also has the benefit that I can lookup in my own files how the
`Hostname` option is called (I am always unsure if it is not `Host`).
As relative line numbers are only really needed in normal mode and in
the current buffer, disable them in insert mode or when the
buffer/window is not focused.
Fix the issue that the vim config would always be reloaded on save
(jumping to the BOF; another TODO) even in non `*.vim` buffers, after a
vim file was opened once in the session.
Fix this by defining the autocmd only local to the current buffer.
See also :help autocmd-buflocal
Since 5258b5ed4217 ("zsh:funcs:suffix: Support quotes), all special are
escaped anyway (including whitespace), making it unnecessary to quote
the names extra.
While trying to handle whitespace in the suffixes the support for
passing multiple suffixes broke.
This should now support multiple suffixes as well as included
whitespaces.
Find files that end with one of multiple given suffixes.
Usage:
suffix sfx... [-- path...]
`sfx` is given to `find` in the form `-name "*$sfx"`.
`path` is given as starting point to `find`, defaulting to `.`.
I forgot to reindent part of the function after moving the
if (( $+commands[shellcheck] ))
check into the function. Before it was wrapping the function definition.
Move `signoff` out of the 'external' subsection as the script [got
replaced by the native way][1].
Update 'external' subsection's comment as it does not contain only zsh
functions.
[1]: bb21c4df7844 ("git: Replace git-signoff with `rebase --signoff`")