v9.6
Updates
Use search command name as fzf prompt (3666395)
When the search command outputs no results (e.g. Search Git Status in a clean git repo), or if the search command was triggered by accident, it can be especially helpful to describe what is being searched in the fzf prompt to help orient the user.
[Search Directory] simplify code by requiring fd 8.5.0 (#290)
Now that fd 8.5.0 has been out for a while, let's make it the required version and simplify our Search Directory code.
Between 8.3.0 (the previous minimum version) and 8.5.0, here are the relevant changes and their implications on Search Directory
- 8.4.0: Directories are now printed with an additional path separator at the end => we can remove the code that was appending a slash to directories to allow for quick cd because the trailing slash will always be there now. This also means we can remove an entire suite of tests around this feature.
- 8.5.0: No leading ./ prefix for non-interactive results => stop passing in
--strip-cwd-prefix
[Search Directory] Use fd or fdfind unaliased to resolve apparent hang (#282)
A cursory search through GitHub code for "alias fd fdfind" reveals hundreds of pieces of code that aliases fdfind to fd instead of using symlinks (in spite of fd's instructions to symlink instead). And that's just the code that's public! The problem with this is that fish functions buffer their output, so when fd is aliased, Search Directory does not pop open fzf until fd is done outputting files. If Search Directory is triggered in $HOME or some other large directory, then Search Directory appears to hang for several seconds.
We fix this by using the fd binary directly. Since presumably many of fzf.fish users on certain Linux distros have it installed as fdfind, we look for either binaries and use it.
[Search Git Log] never show GPG signature (#287)
When the user has log.showSignature = true
or the repo has showSignature = true
, git log will check the GPG signature of signed commits. If the user does not have the public key for a signed commit, when triggering Search Git Log, raw GPG errors leak into the fzf window. We fix this by always passing --no-show-signature
to the git log call.