Dave Pearson You are right, I have something similar.
But I just solved my problem.
What I didn't know, was how to bypass the abbreviation.
Let's say I have 2 php version:
/usr/local/php/5.4/bin/php and /usr/local/php/7.3/bin/php.
Also, php 7.3 is in my $path.
I have an abbreviation as php for the version 5.4.
So fish will expand all my php commands with the full path to 5.4 I have set up.
But I didn't find how to use the php command in my path because the abbreviation was expanded.
But I just discovered that it's the same as when we use a 'raw' command instead of its alias. Simply by adding a \ before, this will bypass aliases and abbreviations.
So I just can type \php and the php command in my path (the 7.3) will run ;)
cedric simon
Web dev
Great story.
I also use fish (with cygwin) at work when I need the command line, but there is something that bothers me with abbreviations.
I had an abbreviation that expand
phpto<path to php5.4>/phpbut I don't have that binary anymore.With aliases, I know I could work around that so I can call the "real" command.
But I didn't find how to do so with fish. Google or the official docs (abbr command) didn't help.
It's still a good shell.