sh -c 'env HOME=$(mktemp -d) fish'
fish version installed (fish --version):
Fedora 24 (64-bit) / GNOME Terminal 3.20.2
I'm writing a simple script that uses the read command to get info from the user before continuing. Every time the script runs, when it gets to the first read line, it prints the $fish_greeting, which I find a little distracting.
The only workaround I've been able to figure out is to set fish_greeting to an empty string -- however, even when I use set --local, that seems to permanently remove the fish greeting for all future sessions, not just when running the script. Some users of my script may not like that.
Here's an example script that consistently prints the fish greeting when it reaches the read line.
echo "What's your name?"
echo "Hello, $name!"
This is #1401.
It looks like the fix for it in e1f623f is no longer present.
Only show greeting on interactive login sessions
Only show fish greeting for interactive logins
This is a regression introduced by 834ebef
Bolster with a check for only login sessions too -- hopefully makes it
less annooying on subshells in general.
Wow, that was fast. Thanks!
This got reverted as 88688d0
There was some thrashing here. I reverted all the way back to d252704
Looks like it was a little too fast :)
Aye ye ye: more like "trashing":.. I literally thought origin on that Windows machine I was using git on (without fish handy) was my remote but it was fish-shell (I normally make it
I was trying to essentially stash the commit log and break __fish_config_interactive such that I wouldn't forget about actually testing that one with fish available when I got home. I even pushed a second time when it didn't seem to take. I didn't realize for a while that it was actually to fish-shell/master. I'm sorry!
Ah, that makes sense. No harm done.
Only do fish_greeting if interactive
Even if __fish_config_interactive, it can be shown when a script
Fixes #3261, #1401.