Commit Graph

307 Commits

Author SHA1 Message Date
9ed2f526da zsh:autoload: Fix loading of symlinked functions
Only plain files were autoloaded because of the glob qualifier. Switch
to no-directories so that symlinks (e.g. git-ssh-and-https) are loaded.
2025-06-19 12:49:01 +02:00
e121743d8a zsh:options: Disable CDABLE_VARS
It annoys me too often (I always see the named directories in the
completion menu and had problems with files/folders with the same name).
2025-06-05 11:45:47 +02:00
e451fbdd22 zsh:options: Set C_PRECEDENCES 2025-06-05 11:45:19 +02:00
5212f2a217 zsh:alias: Add calculator with output in hex
I never used the old hex alias.
2025-06-05 11:42:04 +02:00
04ef69c021 zsh:rationalize-dots: Self-insert when replacing 2025-06-02 11:32:27 +02:00
f2adfbf27d zsh:conf: Set local extendedglob instead of (*)
The * parameter expansion flag was only introduced in zsh-5.9. I
currently use a system that still uses 5.8.1 and thus throws:

    conf:29: error in flags
2025-05-28 13:28:48 +02:00
9a91b464a8 zsh:alias: Add HEAD to gla
`gla` is meant to be `glog --all` without stashes. Add the missing
`HEAD` to be accurate, as it is needed when in detached HEAD.
2025-05-23 15:13:24 +02:00
68e1af0328 zsh:conf: Fix HOME fallback
Actually use `_get_config_dir`'s exit code instead of `local`'s (i.e.
always™ zero). This was broken since always.
2025-05-14 18:17:18 +02:00
4914a94ee9 zsh:conf: Stop opening ~/.config as a fallback
This has been a bug for far too long. The entries `config`, `conf` and
`config.ini` of `CONF_PATTERNS` only make sense when looking outside of
`HOME`.
2025-05-14 18:15:28 +02:00
6d5245a56e zsh:conf: Remove trailing slashes before processing
Previously when the program name had a trailing slash, `conf` would not
find the right file as it would check for filenames that include a slash
(e.g. `prog/rc`). This was especially annoying, since conf's completion
function inserts a slash automatically when subdirectories exists.
2025-05-14 18:08:19 +02:00
b722b9aaec zsh:funcs: Fix non-empty dir filter in bfs/find wrapper
The previous filter would filter out every non-regular file (e.g.
symbolic links).
2025-03-28 16:23:05 +01:00
0cb18dedef zsh:keys:cmd-on-enter: Switch until conditions
The requirement does not need to be executed if the idx wrapped around
already.
2025-03-26 00:51:19 +01:00
a9bd4585aa zsh:keys:cmd-on-enter: Take gs out of rotation
It's a bit annoying, ll is sufficient.
2025-03-26 00:50:25 +01:00
1d2e24cf4d zsh:autoload: Make $d local 2025-03-25 11:07:13 +01:00
2363545489 zsh:autoload: Allow nested directories
As well as wrapper in subdirectories.
2025-03-25 11:07:12 +01:00
cd54c3dfed zsh:autoload: Load wrapper only if command exists 2025-03-25 11:07:12 +01:00
e956b8955e zsh: Remove chpwd-readme hook
The hook was never added since the `functions` array was misspelled. I
fixed that and left it turned on the last few days and absolutely hate
it. No idea why I ever thought that this could be nice.
2025-03-13 14:32:02 +01:00
90b64a8603 zsh:keys: Remove duplicate cd-up definition
I forgot that this was already a thing before d961daf38 ("zsh:keys:
Change one dir up on `^U`") and missed that I only moved the function in
the file instead of creating it (the changes were lying around a bit).
2025-02-19 15:18:05 +01:00
d961daf384 zsh:keys: Change one dir up on ^U 2025-02-19 14:01:24 +01:00
a053efa93e zsh:keys: Mention AUTO_PUSHD for cd-{back,for}ward 2025-02-19 14:01:24 +01:00
d57ee922c9 zsh:funcs: Add find() wrapper analog to bfs()
Only difference is that it places a trailing slash behind (empty)
directory names to differentiate them better. bfs does this already.

TODO: Bring these together into one function that checks $0
2025-02-05 16:53:14 +01:00
ed2b9e760c zsh:bfs(): Make sure that std{out,err} are ttys
When piping its output, I want the normal behaviour.

Also swap the if and else branches for better readability.
2025-02-05 16:53:14 +01:00
f60d25e47c zsh:bfs(): Don't print non-empty dirs by default
I sometimes use find (nowadays bfs) to get an overview of a directory.
In that case I want the output to be as short as possible.
2025-02-05 16:53:13 +01:00
767e5f3019 zsh:rmdir(): Don't change PWD when removing fails 2025-02-05 16:53:13 +01:00
202a0c1437 zsh:alias: Remove mbsync XDG config alias
mbysnc looks for $XDG_CONFIG_HOME/isyncrc
2025-01-30 11:46:11 +01:00
9271350aab zsh:keys: Fix non-existing mapping of vi-kill-word
vi-kill-word does not exist. This change was lying around uncommitted
for ages now.

Fixes: 658797bda2 ("zsh:keys: Use `vi-` variants of navigation binds")
2024-11-06 13:56:27 +01:00
22b774b839 zsh:nameddirs: Unset the right variable 2024-11-05 22:18:09 +01:00
724430979c zsh:nameddirs: Only set ws/ss when they exist 2024-11-05 22:17:40 +01:00
1ffd31d585 zsh:keys: Use (A) flag instead of hack to split LBUFFER
This way better solution using the `(A)` flag was given to me in the
zsh-users mailing list back in 2022 but I forgot to apply it.

See zshexpn(1):

> Convert the substitution into an array expression, even if it
> otherwise would be scalar.

Thanks Mikael!

Link: https://www.zsh.org/mla/users/2022/msg00668.html
2024-10-30 16:19:58 +01:00
4ec1e81873 feh: Use theme configuration file instead of alias 2024-10-22 19:01:45 +02:00
e85f13def7 zsh:alias:feh: Add --start-at flag
I found this in feh's .desktop file and liked the idea:

With `--start-at` feh will load all files from the directory of the
given file and start the filelist at the given one.

This of course breaks easily if I want to pass more flags before the
file argument, but is easily fixed by first specifying the argument to
`--start-at` and continuing with the rest. I also rarely use any flag
besides the one already defined in the alias.
2024-10-22 18:46:14 +02:00
442a1c1bdc zsh:keys: Make ^E work in vicmd too 2024-09-21 01:06:32 +02:00
35422b6fc4 fzf: Use bfs for ALT_C_COMMAND if available 2024-09-21 01:04:44 +02:00
9d756c2748 zsh:alias: Add duration that formats seconds 2024-09-20 16:29:51 +02:00
ae626e9e90 zsh:alias: Change gr alias to git reset
I had multiple occasions where I thought that `gr` would resolve to git
reset. I should switch to using `gri` for a rebase.
2024-07-25 11:52:18 +02:00
ec4bb20625 zsh:alias: Add TODO note to fragile rm condition 2024-05-12 21:00:12 +02:00
f000b53882 zsh:alias: Only add flags to rm, not aliased trash 2024-05-12 20:57:04 +02:00
46da4a617d zsh:alias: Disable CORRECT_ALL for mkdir
It's really annoying if it tries to correct me when I create a new
directory that is named similar to an existing one.

Group together aliases that add a precommand modifier.

Since `mkdir` receives the `-p` flag already via `add_flags` the `md`
alias can directly alias to `mkdir` instead.
2024-05-10 13:22:45 +02:00
6b25a2ce4e zsh:alias: Move add_flags section to the bottom
This way the commands can get aliased in other ways first and then get
their flags added.
2024-05-10 13:17:05 +02:00
19e3fbe7a0 zsh:alias: Update undescriptive comment 2024-04-26 14:05:33 +02:00
2aece4b672 zsh:alias: Add lsd to list all directories 2024-04-26 14:05:29 +02:00
6dd226d305 zsh:diffcmds: Quote only once, for real now 2024-03-24 18:27:41 +01:00
e5593e1c98 zsh:diffcmds: Refactor: make code less redundant
Instead of always operating on `$@` and using complex parameter
substitutions, split `$@` once into two arrays and use those for
everything further.
2024-03-24 18:27:37 +01:00
52e5d1ab4d zsh:diffcmds: Do the quotation only once 2024-03-24 18:16:02 +01:00
09f437a860 zsh:diffcmds: Do not unquote pipes in args list
diffcmds echo foo %% cat -- '|'

is expected to output `foo | cat` and not `foo`.

Fix this by changing the order of the substitution and {,un}quoting.
2024-03-24 17:38:16 +01:00
ee31064286 zsh:diffcmds: Improve comments and example 2024-03-24 17:29:18 +01:00
803b35d3d5 zsh:p10k: Empty the second line of RPROMPT
I often get annoyed when I try to copy the command I typed but the
timestamp is also copied (e.g. with tmux line selection). Move the time
segment to the very right of the first line of RPROMPT which empties the
second line completely.
2024-03-22 10:09:16 +01:00
ed9ed6fd28 zsh:alias: Remove :q -> exit alias
I stopped using it in favor of Ctrl-D and see the downside that I might
close a shell by accident.
2024-03-18 12:05:39 +01:00
7611f37f25 zsh:alias: Add --no-merges to gl
In the flat/non-graph view merge commits are a bit distracting. Still
unsure if I will forget about this and one day wonder why I don't see
merge commits.
2024-02-19 16:02:03 +01:00
11f5a60039 zsh:alias: Pipe --help output into less 2024-01-25 17:45:46 +01:00