Package: fish Version: 2.4.0-1 I am writing a function to change to a directory below the current working directory, and I am hitting a brick wall with fish from Jessie backports (2.2.0-3~bpo8+1) and Stretch (2.4.0-1). The function is as follows (saved as ~/.config/fish/functions/cdb.fish):
function cdb complete -c cd -r -a "(find -type d -name "$argv" -not -path '*/\.*' -prune)"; end So after "funcsave cdb", I try it with a same directory name and it silently exits with no action taken. I debugged to the point that the find command by itself works (returns the directory). After consulting the fish documentation[1], I found out you can test complete commands at the terminal. So I tried again with: complete -c cd -r -a "(find -type d -name "github" -not -path '*/\.*' -prune)" ...still, no action taken. While I was in the documentation, I tried a stock example: complete -x -c su -d "Username" -a "(cat /etc/passwd | cut -d : -f 1)" Even with that, no choices, nothing executed. Running complete without parameters provides a list of saved examples. Running Debian Stretch on my desktop (uname follows below), and Jessie on my laptop. joel@cybaryme ~> uname -a Linux cybaryme 4.9.0-2-amd64 #1 SMP Debian 4.9.18-1 (2017-03-30) x86_64 GNU/Linux Thank you. [1] Two sections below the anchor https://fishshell.com/docs/current/index.html#completion-own -- Cheers, Joel Maxuel "One should strive to achieve, not sit in bitter regret." - Ronan Harris / Mark Jackson