If you don't use any scope/export options with set and fish finds an
existing variable with the specified name, it assumes you'll want to change
that. If you do use a scope option like -g, fish will create a global PATH
alongside the universal PATH. And as it is a new variable created without
the -x flag, it will not be exported. So that's why PATH doesn't change. I'm
not sure why it works on a login shell though.
Jan
On Wed, Mar 31, 2010 at 05:51, David Frascone <[email protected]> wrote:
> That fixed it!
>
> Actually, I removed the flag all together. I'm not sure why it's not
> needed at all -- must be some special case with setting PATH
>
> Thanks a lot! now I can get back to piddling!
>
> -Dave
>
>
> On Tue, Mar 30, 2010 at 11:41 PM, [email protected] <[email protected]
> > wrote:
>
>> path should be set with -U, not -g afaiw.
>>
>> David Frascone wrote:
>>
>>
>> Ok . . I'm trying to take the plunge, and I'm running into some
>> strangnesses that I can't explain. So, I did a chsh to change my login
>> shell to fish. And, when I first log in, things work really strangely.
>> type, whereis, and a few other scripts do not function properly. BUT -- if
>> I then exec, or shell fish again, they do.
>>
>> And, my path is set completely differently. Ok -- so -- that could just
>> be some weird login -vs- interactive shell setting. I get that. But,
>> here's the really strange part. In my home directory's config.fish, I have
>> this snippet:
>>
>> if [ -d ~/bin ]
>> echo "PATH before: " $PATH
>> set -g PATH $PATH ~/bin
>> echo "PATH after: " $PATH
>> end
>>
>>
>> So, if my ~/bin exists, it will be appended to the path. For the login
>> shell, this works. For all other shells, the code executes, but the path
>> does NOT change -- WTF?!?!?!
>>
>> Here's what it looks like when I start with a login shell, then manually
>> run fish (even though "type" can't find it, it's still in the path at
>> /usr/local/bin/fish -- as shown by the executable "type"). WTF am I doing
>> wrong?
>>
>> Last login: Tue Mar 30 23:17:41 on ttys009
>> /usr/local/share/fish/config.fish: /usr/bin /bin /usr/sbin /sbin
>> /usr/local/bin /usr/X11/bin
>> /usr/local/etc/fish/config.fish: /usr/bin /bin /usr/sbin /sbin
>> /usr/local/bin /usr/X11/bin
>> PATH before: /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/X11/bin
>> PATH after: /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/X11/bin
>> /Users/codemonkey/bin
>> ~/.config/fish/config.fish: /usr/bin /bin /usr/sbin /sbin /usr/local/bin
>> /usr/X11/bin /Users/codemonkey/bin
>> Welcome to fish, the friendly interactive shell
>> Type help for instructions on how to use fish
>> codemon...@daves-mbp ~> # We're in the login shell now
>> codemon...@daves-mbp ~> echo $PATH
>> /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/X11/bin
>> /Users/codemonkey/bin
>> codemon...@daves-mbp ~> type fish
>> type: Could not find 'fish'
>> codemon...@daves-mbp ~> /usr/bin/type fish
>> fish is /usr/local/bin/fish
>> codemon...@daves-mbp ~> echo $version
>> 1.23.1.2
>> codemon...@daves-mbp ~> fish
>> /usr/local/share/fish/config.fish: /bin /usr/bin /usr/local/bin
>> /usr/local/etc/fish/config.fish: /bin /usr/bin /usr/local/bin
>> PATH before: /bin /usr/bin /usr/local/bin
>> PATH after: /bin /usr/bin /usr/local/bin
>> ~/.config/fish/config.fish: /bin /usr/bin /usr/local/bin
>> Welcome to fish, the friendly interactive shell
>> Type help for instructions on how to use fish
>> codemon...@daves-mbp ~> echo $version
>> 1.23.1.2
>> codemon...@daves-mbp ~> type fish
>> fish is /usr/local/bin/fish
>> codemon...@daves-mbp ~> path
>> fish: Unknown command 'path'
>> codemon...@daves-mbp ~> echo $PATH
>> /bin /usr/bin /usr/local/bin
>> codemon...@daves-mbp ~> exit
>>
>> Goodbye
>>
>> codemon...@daves-mbp ~>
>>
>>
>> ------------------------------
>>
>> ------------------------------------------------------------------------------
>> Download Intel® Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during
>> beta.http://p.sf.net/sfu/intel-sw-dev
>>
>> ------------------------------
>>
>> _______________________________________________
>> Fish-users mailing
>> [email protected]https://lists.sourceforge.net/lists/listinfo/fish-users
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Download Intel® Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during beta.
>> http://p.sf.net/sfu/intel-sw-dev
>> _______________________________________________
>> Fish-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/fish-users
>>
>>
>
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Fish-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/fish-users
>
>
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Fish-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/fish-users