Make all bold colors (also) bright, since kitty does not render bold
colors in their bright version, but I've gotten used to how this looks.
For the graph I've gotten rid of the boldness and only switched to
bright versions since I think it makes no sense to have different line
weights for the branches (Although I apparently never noticed, so I
can't say that this was misleading in practice).
With the last commit 9c1e3f4679 (git:zsh-autoload: Use relative
scripts/ folder, 2025-09-12), `zsh-autoload.sh` could execute any type
of external script. Rename it to a more generic name.
> If a partial clone filter is provided (see --filter in
> git-rev-list(1)) and --recurse-submodules is used, also apply the
> filter to submodules.
I have never used --filter before, but it sounds as if I want this
enabled in the case that I do.
I had this change sitting around so long that I forgot why exactly I
disabled it, but know that some problem arose from rerere. I think that
even though it is super cool, it brings a sneaky new layer of possible
errors. Maybe I'll re-enable it in the future.
I find typing `git {rebase,merge,...} --{continue,abort}` a bit
annoying, since it is a lot of typing. I have added an alias for `rebase
--continue` (grc), but the problem remained for the other commands.
Add a script that continues or aborts the ongoing process by detecting
it automatically.
When I write commit messages in vim, I often use gwap to format the
message body. This breaks if there is no empty line between the body and
the following "Please enter the commit message for your changes..."
comment.
So, to not always have to add this empty line first, I use a
commit.template file that simply contains one empty line.
In git aliases, shell commands are executed from the top-level directory
of the repo. Because of this, something like `git glog -- file` didn't
work in subdirectories.
Fix this by creating a wrapper script that first changes into
$GIT_PREFIX before executing the script. Since (currently) the only
use-case is to launch the functions in `autoload/git/`, most of the path
could move into the script, making the git config a lot cleaner.
Bring all blocks together and place shorter alias variants behind longer
ones - ignore the shorter ones in the sorting.
Remove the comment above `autosquash` because the command is fairly
descriptive and it is the only comment and I don't really know how to
format the block then (since the comment is at the very top it looks
like it is for the whole block and I don't want to put a newline behind
`autofixup`).
Supported git commands should print their output in columns (e.g.
git-branch).
I am still unsure if I'd like to keep the option to fill rows first. The
default behaviour is columns first and `ls` does this too for example.
But I think that it makes more sense to fill the rows first, especially
with sorting by committerdate to delay the need to scroll as far as
possible.
Instead of matching certain paths relative from the root of the repo,
match them everywhere. I need this for non-git tools that read the
.gitignore file (e.g. fd and rg) to match/ignore the files when called
from a parent directory too. `./repo/.git` would otherwise not be
ignored.
This leads to problems in repositories with multiple remotes that do not
share the same tags. A fetch --all will then fetch and delete a tag at
the same time. Tags are also way less often deleted in my experience so
that an automatic pruning is not necessary.
Ignore the .git directory globally instead of ignoring it manually in
tools like fd and ripgrep.
I feel very dumb for putting all this time into the redefinition of :Rg,
especially since I am currently **much** procrastinating writing my
bachelor thesis.