Quantcast

MacVim and $PATH

classic Classic list List threaded Threaded
15 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

MacVim and $PATH

Wes Baker
I know folks have talked about this before, how MacVim's $PATH
variable and the terminal's $PATH variable are different. One fix was
a Preference in the Advanced tab that seems to have been made a
default now and removed. The $PATH variables seem close now, but the
order is different and that's become a problem when using ctags.

Mac has a version of ctags installed at /usr/bin/ctags and I have a
version installed in homebrew at /usr/local/bin/ctags. When I do a
which ctags in the Terminal I get the right ctags since it /usr/local/
bin occurs first in my $PATH variable, but in MacVim (since it's
using /etc/paths) it prefers /usr/bin and goes with the old decrepit
version of ctags.

I've attempted to find a fix by manually changing the path in
the .vimrc, but that hasn't done anything. Is there any other way
around this?

Thanks
Wes

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Ben Schmidt
I don't think this should be a problem these days.

My $PATH is the same in MacVim and Terminal, and I didn't notice a
change when I upgraded from 10.4.x to 10.6.x either (so I didn't even
know about /etc/paths until I read your email, and everything has been
working fine).

So...how are you setting your $PATH for Terminal? Are you using your
default login shell or something else in Terminal?

Ben.



On 17/02/11 9:20 AM, Wes Baker wrote:

> I know folks have talked about this before, how MacVim's $PATH
> variable and the terminal's $PATH variable are different. One fix was
> a Preference in the Advanced tab that seems to have been made a
> default now and removed. The $PATH variables seem close now, but the
> order is different and that's become a problem when using ctags.
>
> Mac has a version of ctags installed at /usr/bin/ctags and I have a
> version installed in homebrew at /usr/local/bin/ctags. When I do a
> which ctags in the Terminal I get the right ctags since it /usr/local/
> bin occurs first in my $PATH variable, but in MacVim (since it's
> using /etc/paths) it prefers /usr/bin and goes with the old decrepit
> version of ctags.
>
> I've attempted to find a fix by manually changing the path in
> the .vimrc, but that hasn't done anything. Is there any other way
> around this?
>
> Thanks
> Wes
>

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Wes Baker
Ben,

I'm using zsh and I'm using oh-my-zsh to set everything. As part of
the package, I have this line:

    export PATH=/usr/local/Cellar/python/2.7.1/bin:/usr/local/bin:
$PATH

When in the terminal and I echo $PATH, I get this (edited to make it a
bit more readable):

    /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
    /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
    /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
    /Users/wes/.rvm/bin:
    /usr/local/Cellar/python/2.7.1/bin:
    /usr/local/bin:
    /usr/bin:/bin:
    /usr/sbin:/sbin:
    /usr/local/bin:
    /usr/X11/bin

When in MacVim (using mvim) and I type !echo $PATH, I get this:

    /usr/bin:
    /bin:
    /usr/sbin:
    /sbin:
    /usr/local/bin:
    /usr/X11/bin:
    /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
    /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
    /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
    /Users/wes/.rvm/bin:/usr/local/Cellar/python/2.7.1/bin

Then for a bit of added fun, when opening MacVim from the Applications
folder, I get this:

    /usr/bin:
    /bin:
    /usr/sbin:
    /sbin:
    /usr/local/bin:
    /usr/X11/bin

Why the differences between everything?

Wes

On Feb 16, 8:04 pm, Ben Schmidt <[hidden email]> wrote:

> I don't think this should be a problem these days.
>
> My $PATH is the same in MacVim and Terminal, and I didn't notice a
> change when I upgraded from 10.4.x to 10.6.x either (so I didn't even
> know about /etc/paths until I read your email, and everything has been
> working fine).
>
> So...how are you setting your $PATH for Terminal? Are you using your
> default login shell or something else in Terminal?
>
> Ben.
>
> On 17/02/11 9:20 AM, Wes Baker wrote:
>
>
>
> > I know folks have talked about this before, how MacVim's $PATH
> > variable and the terminal's $PATH variable are different. One fix was
> > a Preference in the Advanced tab that seems to have been made a
> > default now and removed. The $PATH variables seem close now, but the
> > order is different and that's become a problem when using ctags.
>
> > Mac has a version of ctags installed at /usr/bin/ctags and I have a
> > version installed in homebrew at /usr/local/bin/ctags. When I do a
> > which ctags in the Terminal I get the right ctags since it /usr/local/
> > bin occurs first in my $PATH variable, but in MacVim (since it's
> > using /etc/paths) it prefers /usr/bin and goes with the old decrepit
> > version of ctags.
>
> > I've attempted to find a fix by manually changing the path in
> > the .vimrc, but that hasn't done anything. Is there any other way
> > around this?
>
> > Thanks
> > Wes

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Israel Chauca Fuentes

On Feb 16, 2011, at 8:52 PM, Wes Baker wrote:

> Ben,
>
> I'm using zsh and I'm using oh-my-zsh to set everything. As part of
> the package, I have this line:
>
>    export PATH=/usr/local/Cellar/python/2.7.1/bin:/usr/local/bin:
> $PATH

I had to set the path in ~/.zprofile to make it work on MacVim. Then I just check in ~/.zshrc if the path is already set.

> When in the terminal and I echo $PATH, I get this (edited to make it a
> bit more readable):
>
>    /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
>    /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
>    /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
>    /Users/wes/.rvm/bin:
>    /usr/local/Cellar/python/2.7.1/bin:
>    /usr/local/bin:
>    /usr/bin:/bin:
>    /usr/sbin:/sbin:
>    /usr/local/bin:
>    /usr/X11/bin
>
> When in MacVim (using mvim) and I type !echo $PATH, I get this:
>
>    /usr/bin:
>    /bin:
>    /usr/sbin:
>    /sbin:
>    /usr/local/bin:
>    /usr/X11/bin:
>    /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
>    /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
>    /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
>    /Users/wes/.rvm/bin:/usr/local/Cellar/python/2.7.1/bin
>
> Then for a bit of added fun, when opening MacVim from the Applications
> folder, I get this:
>
>    /usr/bin:
>    /bin:
>    /usr/sbin:
>    /sbin:
>    /usr/local/bin:
>    /usr/X11/bin
>
> Why the differences between everything?
>
> Wes
>
> On Feb 16, 8:04 pm, Ben Schmidt <[hidden email]> wrote:
>> I don't think this should be a problem these days.
>>
>> My $PATH is the same in MacVim and Terminal, and I didn't notice a
>> change when I upgraded from 10.4.x to 10.6.x either (so I didn't even
>> know about /etc/paths until I read your email, and everything has been
>> working fine).
>>
>> So...how are you setting your $PATH for Terminal? Are you using your
>> default login shell or something else in Terminal?
>>
>> Ben.
>>
>> On 17/02/11 9:20 AM, Wes Baker wrote:
>>
>>
>>
>>> I know folks have talked about this before, how MacVim's $PATH
>>> variable and the terminal's $PATH variable are different. One fix was
>>> a Preference in the Advanced tab that seems to have been made a
>>> default now and removed. The $PATH variables seem close now, but the
>>> order is different and that's become a problem when using ctags.
>>
>>> Mac has a version of ctags installed at /usr/bin/ctags and I have a
>>> version installed in homebrew at /usr/local/bin/ctags. When I do a
>>> which ctags in the Terminal I get the right ctags since it /usr/local/
>>> bin occurs first in my $PATH variable, but in MacVim (since it's
>>> using /etc/paths) it prefers /usr/bin and goes with the old decrepit
>>> version of ctags.
>>
>>> I've attempted to find a fix by manually changing the path in
>>> the .vimrc, but that hasn't done anything. Is there any other way
>>> around this?
>>
>>> Thanks
>>> Wes
>
> --
> You received this message from the "vim_mac" maillist.
> Do not top-post! Type your reply below the text you are replying to.
> For more information, visit http://www.vim.org/maillist.php

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Wes Baker
Israel,

That seems to get the paths into the application, but they're still at
the end of the $PATH string, so I'm still getting the wrong version of
ctags. Thanks for your help though!

Wes

On Feb 16, 9:56 pm, "Israel Chauca F." <[hidden email]>
wrote:

> On Feb 16, 2011, at 8:52 PM, Wes Baker wrote:
>
> > Ben,
>
> > I'm using zsh and I'm using oh-my-zsh to set everything. As part of
> > the package, I have this line:
>
> >    export PATH=/usr/local/Cellar/python/2.7.1/bin:/usr/local/bin:
> > $PATH
>
> I had to set the path in ~/.zprofile to make it work on MacVim. Then I just check in ~/.zshrc if the path is already set.
>
>
>
> > When in the terminal and I echo $PATH, I get this (edited to make it a
> > bit more readable):
>
> >    /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
> >    /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
> >    /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
> >    /Users/wes/.rvm/bin:
> >    /usr/local/Cellar/python/2.7.1/bin:
> >    /usr/local/bin:
> >    /usr/bin:/bin:
> >    /usr/sbin:/sbin:
> >    /usr/local/bin:
> >    /usr/X11/bin
>
> > When in MacVim (using mvim) and I type !echo $PATH, I get this:
>
> >    /usr/bin:
> >    /bin:
> >    /usr/sbin:
> >    /sbin:
> >    /usr/local/bin:
> >    /usr/X11/bin:
> >    /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
> >    /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
> >    /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
> >    /Users/wes/.rvm/bin:/usr/local/Cellar/python/2.7.1/bin
>
> > Then for a bit of added fun, when opening MacVim from the Applications
> > folder, I get this:
>
> >    /usr/bin:
> >    /bin:
> >    /usr/sbin:
> >    /sbin:
> >    /usr/local/bin:
> >    /usr/X11/bin
>
> > Why the differences between everything?
>
> > Wes
>
> > On Feb 16, 8:04 pm, Ben Schmidt <[hidden email]> wrote:
> >> I don't think this should be a problem these days.
>
> >> My $PATH is the same in MacVim and Terminal, and I didn't notice a
> >> change when I upgraded from 10.4.x to 10.6.x either (so I didn't even
> >> know about /etc/paths until I read your email, and everything has been
> >> working fine).
>
> >> So...how are you setting your $PATH for Terminal? Are you using your
> >> default login shell or something else in Terminal?
>
> >> Ben.
>
> >> On 17/02/11 9:20 AM, Wes Baker wrote:
>
> >>> I know folks have talked about this before, how MacVim's $PATH
> >>> variable and the terminal's $PATH variable are different. One fix was
> >>> a Preference in the Advanced tab that seems to have been made a
> >>> default now and removed. The $PATH variables seem close now, but the
> >>> order is different and that's become a problem when using ctags.
>
> >>> Mac has a version of ctags installed at /usr/bin/ctags and I have a
> >>> version installed in homebrew at /usr/local/bin/ctags. When I do a
> >>> which ctags in the Terminal I get the right ctags since it /usr/local/
> >>> bin occurs first in my $PATH variable, but in MacVim (since it's
> >>> using /etc/paths) it prefers /usr/bin and goes with the old decrepit
> >>> version of ctags.
>
> >>> I've attempted to find a fix by manually changing the path in
> >>> the .vimrc, but that hasn't done anything. Is there any other way
> >>> around this?
>
> >>> Thanks
> >>> Wes
>
> > --
> > You received this message from the "vim_mac" maillist.
> > Do not top-post! Type your reply below the text you are replying to.
> > For more information, visithttp://www.vim.org/maillist.php

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Björn Winckler
On Feb 17, 2011, at 4:02 AM, Wes Baker wrote:

> On Feb 16, 9:56 pm, "Israel Chauca F." <[hidden email]>
> wrote:
>> On Feb 16, 2011, at 8:52 PM, Wes Baker wrote:
>>
>>> Ben,
>>
>>> I'm using zsh and I'm using oh-my-zsh to set everything. As part of
>>> the package, I have this line:
>>
>>>    export PATH=/usr/local/Cellar/python/2.7.1/bin:/usr/local/bin:
>>> $PATH
>>
>> I had to set the path in ~/.zprofile to make it work on MacVim. Then I just check in ~/.zshrc if the path is already set.
>>
>>
>>
>>> When in the terminal and I echo $PATH, I get this (edited to make it a
>>> bit more readable):
>>
>>>    /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
>>>    /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
>>>    /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
>>>    /Users/wes/.rvm/bin:
>>>    /usr/local/Cellar/python/2.7.1/bin:
>>>    /usr/local/bin:
>>>    /usr/bin:/bin:
>>>    /usr/sbin:/sbin:
>>>    /usr/local/bin:
>>>    /usr/X11/bin
>>
>>> When in MacVim (using mvim) and I type !echo $PATH, I get this:
>>
>>>    /usr/bin:
>>>    /bin:
>>>    /usr/sbin:
>>>    /sbin:
>>>    /usr/local/bin:
>>>    /usr/X11/bin:
>>>    /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
>>>    /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
>>>    /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
>>>    /Users/wes/.rvm/bin:/usr/local/Cellar/python/2.7.1/bin
>>
>>> Then for a bit of added fun, when opening MacVim from the Applications
>>> folder, I get this:
>>
>>>    /usr/bin:
>>>    /bin:
>>>    /usr/sbin:
>>>    /sbin:
>>>    /usr/local/bin:
>>>    /usr/X11/bin
>>
>>> Why the differences between everything?
>>
>>> Wes
>>
>>> On Feb 16, 8:04 pm, Ben Schmidt <[hidden email]> wrote:
>>>> I don't think this should be a problem these days.
>>
>>>> My $PATH is the same in MacVim and Terminal, and I didn't notice a
>>>> change when I upgraded from 10.4.x to 10.6.x either (so I didn't even
>>>> know about /etc/paths until I read your email, and everything has been
>>>> working fine).
>>
>>>> So...how are you setting your $PATH for Terminal? Are you using your
>>>> default login shell or something else in Terminal?
>>
>>>> Ben.
>>
>>>> On 17/02/11 9:20 AM, Wes Baker wrote:
>>
>>>>> I know folks have talked about this before, how MacVim's $PATH
>>>>> variable and the terminal's $PATH variable are different. One fix was
>>>>> a Preference in the Advanced tab that seems to have been made a
>>>>> default now and removed. The $PATH variables seem close now, but the
>>>>> order is different and that's become a problem when using ctags.
>>
>>>>> Mac has a version of ctags installed at /usr/bin/ctags and I have a
>>>>> version installed in homebrew at /usr/local/bin/ctags. When I do a
>>>>> which ctags in the Terminal I get the right ctags since it /usr/local/
>>>>> bin occurs first in my $PATH variable, but in MacVim (since it's
>>>>> using /etc/paths) it prefers /usr/bin and goes with the old decrepit
>>>>> version of ctags.
>>
>>>>> I've attempted to find a fix by manually changing the path in
>>>>> the .vimrc, but that hasn't done anything. Is there any other way
>>>>> around this?
>>
>>>>> Thanks
>>>>> Wes
>
> Israel,
>
> That seems to get the paths into the application, but they're still at
> the end of the $PATH string, so I'm still getting the wrong version of
> ctags. Thanks for your help though!

My impression of this is that you are setting the PATH both in your zsh and the bash rc files, but in different order.

I suggest you try setting the user default MMLoginShellCommand, e.g.

$ defaults write org.vim.MacVim MMLoginShellCommand "/usr/local/zsh"

swap the path for wherever your zsh binary resides.  Then quit and restart MacVim.  Do you see any changes?  (You should make sure your SHELL environment variable also points to the same shell, or is empty.)  Try reading through ":h macvim-login-shell" and see if that is of any help.

Björn

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Ben Schmidt
In reply to this post by Wes Baker
My guess is that something strange is going on with bash (which is used
to execute mvim via its #!/bin/sh opening line) and zsh. Possibly the
'path_helper' that is executed in /etc/profile is messing things up.

Also, have you set your login shell using chsh? If not, perhaps bash is
also being used by MacVim to start new processes with the New Window
command.

Perhaps the simplest solution would be to set your path both in
.zprofile and .profile. As I only use bash, I just have my path set in
.profile and everything seems to work.

Ben.



On 17/02/11 2:02 PM, Wes Baker wrote:

> Israel,
>
> That seems to get the paths into the application, but they're still at
> the end of the $PATH string, so I'm still getting the wrong version of
> ctags. Thanks for your help though!
>
> Wes
>
> On Feb 16, 9:56 pm, "Israel Chauca F."<[hidden email]>
> wrote:
>> On Feb 16, 2011, at 8:52 PM, Wes Baker wrote:
>>
>>> Ben,
>>
>>> I'm using zsh and I'm using oh-my-zsh to set everything. As part of
>>> the package, I have this line:
>>
>>>     export PATH=/usr/local/Cellar/python/2.7.1/bin:/usr/local/bin:
>>> $PATH
>>
>> I had to set the path in ~/.zprofile to make it work on MacVim. Then I just check in ~/.zshrc if the path is already set.
>>
>>
>>
>>> When in the terminal and I echo $PATH, I get this (edited to make it a
>>> bit more readable):
>>
>>>     /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
>>>     /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
>>>     /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
>>>     /Users/wes/.rvm/bin:
>>>     /usr/local/Cellar/python/2.7.1/bin:
>>>     /usr/local/bin:
>>>     /usr/bin:/bin:
>>>     /usr/sbin:/sbin:
>>>     /usr/local/bin:
>>>     /usr/X11/bin
>>
>>> When in MacVim (using mvim) and I type !echo $PATH, I get this:
>>
>>>     /usr/bin:
>>>     /bin:
>>>     /usr/sbin:
>>>     /sbin:
>>>     /usr/local/bin:
>>>     /usr/X11/bin:
>>>     /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
>>>     /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
>>>     /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
>>>     /Users/wes/.rvm/bin:/usr/local/Cellar/python/2.7.1/bin
>>
>>> Then for a bit of added fun, when opening MacVim from the Applications
>>> folder, I get this:
>>
>>>     /usr/bin:
>>>     /bin:
>>>     /usr/sbin:
>>>     /sbin:
>>>     /usr/local/bin:
>>>     /usr/X11/bin
>>
>>> Why the differences between everything?
>>
>>> Wes
>>
>>> On Feb 16, 8:04 pm, Ben Schmidt<[hidden email]>  wrote:
>>>> I don't think this should be a problem these days.
>>
>>>> My $PATH is the same in MacVim and Terminal, and I didn't notice a
>>>> change when I upgraded from 10.4.x to 10.6.x either (so I didn't even
>>>> know about /etc/paths until I read your email, and everything has been
>>>> working fine).
>>
>>>> So...how are you setting your $PATH for Terminal? Are you using your
>>>> default login shell or something else in Terminal?
>>
>>>> Ben.
>>
>>>> On 17/02/11 9:20 AM, Wes Baker wrote:
>>
>>>>> I know folks have talked about this before, how MacVim's $PATH
>>>>> variable and the terminal's $PATH variable are different. One fix was
>>>>> a Preference in the Advanced tab that seems to have been made a
>>>>> default now and removed. The $PATH variables seem close now, but the
>>>>> order is different and that's become a problem when using ctags.
>>
>>>>> Mac has a version of ctags installed at /usr/bin/ctags and I have a
>>>>> version installed in homebrew at /usr/local/bin/ctags. When I do a
>>>>> which ctags in the Terminal I get the right ctags since it /usr/local/
>>>>> bin occurs first in my $PATH variable, but in MacVim (since it's
>>>>> using /etc/paths) it prefers /usr/bin and goes with the old decrepit
>>>>> version of ctags.
>>
>>>>> I've attempted to find a fix by manually changing the path in
>>>>> the .vimrc, but that hasn't done anything. Is there any other way
>>>>> around this?
>>
>>>>> Thanks
>>>>> Wes
>>
>>> --
>>> You received this message from the "vim_mac" maillist.
>>> Do not top-post! Type your reply below the text you are replying to.
>>> For more information, visithttp://www.vim.org/maillist.php
>

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Wes Baker
Bjorn and Ben,

I'm now only setting the $PATH in .profile and .zprofile and I've also
set MMLoginShellCommand for MacVim and I'm still having the same exact
problem.

I changed my shell in the Accounts Preference Pane, which I'm assuming
used chsh, but I'm not too sure.

Any other ideas?

Wes

On Feb 17, 5:07 am, Ben Schmidt <[hidden email]> wrote:

> My guess is that something strange is going on with bash (which is used
> to execute mvim via its #!/bin/sh opening line) and zsh. Possibly the
> 'path_helper' that is executed in /etc/profile is messing things up.
>
> Also, have you set your login shell using chsh? If not, perhaps bash is
> also being used by MacVim to start new processes with the New Window
> command.
>
> Perhaps the simplest solution would be to set your path both in
> .zprofile and .profile. As I only use bash, I just have my path set in
> .profile and everything seems to work.
>
> Ben.
>
> On 17/02/11 2:02 PM, Wes Baker wrote:
>
>
>
> > Israel,
>
> > That seems to get the paths into the application, but they're still at
> > the end of the $PATH string, so I'm still getting the wrong version of
> > ctags. Thanks for your help though!
>
> > Wes
>
> > On Feb 16, 9:56 pm, "Israel Chauca F."<[hidden email]>
> > wrote:
> >> On Feb 16, 2011, at 8:52 PM, Wes Baker wrote:
>
> >>> Ben,
>
> >>> I'm using zsh and I'm using oh-my-zsh to set everything. As part of
> >>> the package, I have this line:
>
> >>>     export PATH=/usr/local/Cellar/python/2.7.1/bin:/usr/local/bin:
> >>> $PATH
>
> >> I had to set the path in ~/.zprofile to make it work on MacVim. Then I just check in ~/.zshrc if the path is already set.
>
> >>> When in the terminal and I echo $PATH, I get this (edited to make it a
> >>> bit more readable):
>
> >>>     /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
> >>>     /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
> >>>     /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
> >>>     /Users/wes/.rvm/bin:
> >>>     /usr/local/Cellar/python/2.7.1/bin:
> >>>     /usr/local/bin:
> >>>     /usr/bin:/bin:
> >>>     /usr/sbin:/sbin:
> >>>     /usr/local/bin:
> >>>     /usr/X11/bin
>
> >>> When in MacVim (using mvim) and I type !echo $PATH, I get this:
>
> >>>     /usr/bin:
> >>>     /bin:
> >>>     /usr/sbin:
> >>>     /sbin:
> >>>     /usr/local/bin:
> >>>     /usr/X11/bin:
> >>>     /Users/wes/.rvm/gems/ruby-1.9.2-p136/bin:
> >>>     /Users/wes/.rvm/gems/ruby-1.9.2-p136@global/bin:
> >>>     /Users/wes/.rvm/rubies/ruby-1.9.2-p136/bin:
> >>>     /Users/wes/.rvm/bin:/usr/local/Cellar/python/2.7.1/bin
>
> >>> Then for a bit of added fun, when opening MacVim from the Applications
> >>> folder, I get this:
>
> >>>     /usr/bin:
> >>>     /bin:
> >>>     /usr/sbin:
> >>>     /sbin:
> >>>     /usr/local/bin:
> >>>     /usr/X11/bin
>
> >>> Why the differences between everything?
>
> >>> Wes
>
> >>> On Feb 16, 8:04 pm, Ben Schmidt<[hidden email]>  wrote:
> >>>> I don't think this should be a problem these days.
>
> >>>> My $PATH is the same in MacVim and Terminal, and I didn't notice a
> >>>> change when I upgraded from 10.4.x to 10.6.x either (so I didn't even
> >>>> know about /etc/paths until I read your email, and everything has been
> >>>> working fine).
>
> >>>> So...how are you setting your $PATH for Terminal? Are you using your
> >>>> default login shell or something else in Terminal?
>
> >>>> Ben.
>
> >>>> On 17/02/11 9:20 AM, Wes Baker wrote:
>
> >>>>> I know folks have talked about this before, how MacVim's $PATH
> >>>>> variable and the terminal's $PATH variable are different. One fix was
> >>>>> a Preference in the Advanced tab that seems to have been made a
> >>>>> default now and removed. The $PATH variables seem close now, but the
> >>>>> order is different and that's become a problem when using ctags.
>
> >>>>> Mac has a version of ctags installed at /usr/bin/ctags and I have a
> >>>>> version installed in homebrew at /usr/local/bin/ctags. When I do a
> >>>>> which ctags in the Terminal I get the right ctags since it /usr/local/
> >>>>> bin occurs first in my $PATH variable, but in MacVim (since it's
> >>>>> using /etc/paths) it prefers /usr/bin and goes with the old decrepit
> >>>>> version of ctags.
>
> >>>>> I've attempted to find a fix by manually changing the path in
> >>>>> the .vimrc, but that hasn't done anything. Is there any other way
> >>>>> around this?
>
> >>>>> Thanks
> >>>>> Wes
>
> >>> --
> >>> You received this message from the "vim_mac" maillist.
> >>> Do not top-post! Type your reply below the text you are replying to.
> >>> For more information, visithttp://www.vim.org/maillist.php

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Björn Winckler
On Feb 17, 2011, at 1:54 PM, Wes Baker wrote:

> I'm now only setting the $PATH in .profile and .zprofile and I've also
> set MMLoginShellCommand for MacVim and I'm still having the same exact
> problem.
>
> I changed my shell in the Accounts Preference Pane, which I'm assuming
> used chsh, but I'm not too sure.
>
> Any other ideas?

I'm stumped.  Can you try changing your shell back to bash and see if you still have the same problems?

Björn


P.S.  I'd like to remind everybody that the custom is to bottom post on this list, see:

http://groups.google.com/group/vim_use/web/vim-information

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Israel Chauca Fuentes

On Feb 17, 2011, at 12:26 PM, Björn Winckler wrote:

> On Feb 17, 2011, at 1:54 PM, Wes Baker wrote:
>
>> I'm now only setting the $PATH in .profile and .zprofile and I've also
>> set MMLoginShellCommand for MacVim and I'm still having the same exact
>> problem.
>>
>> I changed my shell in the Accounts Preference Pane, which I'm assuming
>> used chsh, but I'm not too sure.
>>
>> Any other ideas?
>
> I'm stumped.  Can you try changing your shell back to bash and see if you still have the same problems?

Coincidentally, today I had some problems involving wrong paths on vim (seems like I hadn't fixed anything after all), so I did some tests with vim, gvim and gvim launched from the terminal, and the paths appear to be created in the following way:

1.- vim:
    :echo $PATH   =>  ($PATH from .zshrc)
    :!echo $PATH  =>  ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zshrc)

2.- gvim:
    :echo $PATH   =>  ($PATH from .zprofile)
    :!echo $PATH  =>  ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zprofile)

3.- gvim from terminal:
    :echo $PATH   =>  ($PATH from .zshrc)
    :!echo $PATH  =>  ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zshrc)

Why the difference between the $PATHs? The second form is what path_helper returns.

The only way to make $HOME/bin to take precedence would be to add the full path to /etc/paths, which doesn't look right.

Is there any way to change this behaviour?

Thanks!
Israel

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Björn Winckler
On Feb 19, 2011, at 2:12 AM, Israel Chauca F. wrote:

> Coincidentally, today I had some problems involving wrong paths on vim (seems like I hadn't fixed anything after all), so I did some tests with vim, gvim and gvim launched from the terminal, and the paths appear to be created in the following way:
>
> 1.- vim:
>    :echo $PATH   =>  ($PATH from .zshrc)
>    :!echo $PATH  =>  ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zshrc)
>
> 2.- gvim:
>    :echo $PATH   =>  ($PATH from .zprofile)
>    :!echo $PATH  =>  ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zprofile)
>
> 3.- gvim from terminal:
>    :echo $PATH   =>  ($PATH from .zshrc)
>    :!echo $PATH  =>  ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zshrc)
>
> Why the difference between the $PATHs? The second form is what path_helper returns.

Out of curiosity I tried this experiment myself but I get the same path in all six cases.  I'm using the default bash shell...

> The only way to make $HOME/bin to take precedence would be to add the full path to /etc/paths, which doesn't look right.
>
> Is there any way to change this behaviour?

I don't understand these issues but it seems to be related to zsh somehow.

Björn

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Ben Schmidt
In reply to this post by Israel Chauca Fuentes
> Coincidentally, today I had some problems involving wrong paths on vim
> (seems like I hadn't fixed anything after all), so I did some tests
> with vim, gvim and gvim launched from the terminal, and the paths
> appear to be created in the following way:
>
> 1.- vim:
>      :echo $PATH   =>   ($PATH from .zshrc)
>      :!echo $PATH  =>   ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zshrc)
>
> 2.- gvim:
>      :echo $PATH   =>   ($PATH from .zprofile)
>      :!echo $PATH  =>   ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zprofile)
>
> 3.- gvim from terminal:
>      :echo $PATH   =>   ($PATH from .zshrc)
>      :!echo $PATH  =>   ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zshrc)
>
> Why the difference between the $PATHs? The second form is what
> path_helper returns.

Hmm. OK. So when zsh is used by Vim to run external commands we have the
problem. Looks like it's caused by /etc/zshenv, which calls path_helper
for all zsh invocations, not just login shell invocations. That's not
right, really, so it's a bug in how Mac OS X is set up. /etc/zshenv
should be used by a sysadmin to set environment variables that restrict
the shell so that users can't do stuff they shouldn't be allowed to; it
shouldn't be used to set the PATH which is a user-controllable thing
that should be inherited by non-login shells.

Since when Vim runs external commands, it's not an interactive shell,
zshrc stuff is not read, and it's not a login shell so zprofile is not
read, so the path cannot really be fixed by these files.

So the path_helper stuff in /etc/zshenv should really needs to be moved
to /etc/zprofile where it belongs. Then it will only affect login
shells, and login is the correct time to set the path. And this still
happens before the ~/.zprofile stuff, so users can change it at login,
and before zshrc stuff, so sysadmin or users can adjust it for
interactive use. This is all how it should work and how vim kinda
assumes it will work.

So

sudo mv /etc/zshenv /etc/zprofile

and I think everything will be good! (Be careful that /etc/zprofile
doesn't already exist. If it does, obviously you need to merge the
contents of zshenv into it, rather than just replacing it.)

Hope this helps. Do let us know the verdict....

Ben.



--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Israel Chauca Fuentes

On Feb 19, 2011, at 8:40 AM, Ben Schmidt wrote:

>> Coincidentally, today I had some problems involving wrong paths on vim
>> (seems like I hadn't fixed anything after all), so I did some tests
>> with vim, gvim and gvim launched from the terminal, and the paths
>> appear to be created in the following way:
>>
>> 1.- vim:
>>     :echo $PATH   =>   ($PATH from .zshrc)
>>     :!echo $PATH  =>   ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zshrc)
>>
>> 2.- gvim:
>>     :echo $PATH   =>   ($PATH from .zprofile)
>>     :!echo $PATH  =>   ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zprofile)
>>
>> 3.- gvim from terminal:
>>     :echo $PATH   =>   ($PATH from .zshrc)
>>     :!echo $PATH  =>   ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zshrc)
>>
>> Why the difference between the $PATHs? The second form is what
>> path_helper returns.
>
> Hmm. OK. So when zsh is used by Vim to run external commands we have the
> problem. Looks like it's caused by /etc/zshenv, which calls path_helper
> for all zsh invocations, not just login shell invocations. That's not
> right, really, so it's a bug in how Mac OS X is set up. /etc/zshenv
> should be used by a sysadmin to set environment variables that restrict
> the shell so that users can't do stuff they shouldn't be allowed to; it
> shouldn't be used to set the PATH which is a user-controllable thing
> that should be inherited by non-login shells.
>
> Since when Vim runs external commands, it's not an interactive shell,
> zshrc stuff is not read, and it's not a login shell so zprofile is not
> read, so the path cannot really be fixed by these files.
>
> So the path_helper stuff in /etc/zshenv should really needs to be moved
> to /etc/zprofile where it belongs. Then it will only affect login
> shells, and login is the correct time to set the path. And this still
> happens before the ~/.zprofile stuff, so users can change it at login,
> and before zshrc stuff, so sysadmin or users can adjust it for
> interactive use. This is all how it should work and how vim kinda
> assumes it will work.
>
> So
>
> sudo mv /etc/zshenv /etc/zprofile
>
> and I think everything will be good! (Be careful that /etc/zprofile
> doesn't already exist. If it does, obviously you need to merge the
> contents of zshenv into it, rather than just replacing it.)
>
> Hope this helps. Do let us know the verdict....

Quite nice! I modified those files as needed and now Vim picks all my executables from the expected places.

I know this is a Zsh issue, but we have users coming to IRC asking why their commands aren't found. So, maybe a note about this could go on the Troubleshooting section of the FAQ. I know the "other rc-files" section covers this, but it seems that many people (like me) have no idea about /etc/zshenv being there at all, so the problem remains unsolved.

Cheers,
Israel

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Israel Chauca Fuentes
In reply to this post by Ben Schmidt

On Feb 19, 2011, at 8:40 AM, Ben Schmidt wrote:

>> Coincidentally, today I had some problems involving wrong paths on vim
>> (seems like I hadn't fixed anything after all), so I did some tests
>> with vim, gvim and gvim launched from the terminal, and the paths
>> appear to be created in the following way:
>>
>> 1.- vim:
>>     :echo $PATH   =>   ($PATH from .zshrc)
>>     :!echo $PATH  =>   ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zshrc)
>>
>> 2.- gvim:
>>     :echo $PATH   =>   ($PATH from .zprofile)
>>     :!echo $PATH  =>   ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zprofile)
>>
>> 3.- gvim from terminal:
>>     :echo $PATH   =>   ($PATH from .zshrc)
>>     :!echo $PATH  =>   ($PATH from /etc/paths)+($PATHs from /etc/paths.d/*)+($PATH from .zshrc)
>>
>> Why the difference between the $PATHs? The second form is what
>> path_helper returns.
>
> Hmm. OK. So when zsh is used by Vim to run external commands we have the
> problem. Looks like it's caused by /etc/zshenv, which calls path_helper
> for all zsh invocations, not just login shell invocations. That's not
> right, really, so it's a bug in how Mac OS X is set up. /etc/zshenv
> should be used by a sysadmin to set environment variables that restrict
> the shell so that users can't do stuff they shouldn't be allowed to; it
> shouldn't be used to set the PATH which is a user-controllable thing
> that should be inherited by non-login shells.
>
> Since when Vim runs external commands, it's not an interactive shell,
> zshrc stuff is not read, and it's not a login shell so zprofile is not
> read, so the path cannot really be fixed by these files.
>
> So the path_helper stuff in /etc/zshenv should really needs to be moved
> to /etc/zprofile where it belongs. Then it will only affect login
> shells, and login is the correct time to set the path. And this still
> happens before the ~/.zprofile stuff, so users can change it at login,
> and before zshrc stuff, so sysadmin or users can adjust it for
> interactive use. This is all how it should work and how vim kinda
> assumes it will work.
>
> So
>
> sudo mv /etc/zshenv /etc/zprofile
>
> and I think everything will be good! (Be careful that /etc/zprofile
> doesn't already exist. If it does, obviously you need to merge the
> contents of zshenv into it, rather than just replacing it.)
>
> Hope this helps. Do let us know the verdict....

Many thanks, Ben.

Israel

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: MacVim and $PATH

Björn Winckler
In reply to this post by Israel Chauca Fuentes
On Feb 19, 2011, at 8:53 PM, Israel Chauca F. wrote:
>
> I know this is a Zsh issue, but we have users coming to IRC asking why their commands aren't found. So, maybe a note about this could go on the Troubleshooting section of the FAQ. I know the "other rc-files" section covers this, but it seems that many people (like me) have no idea about /etc/zshenv being there at all, so the problem remains unsolved.

Please do add a section to the FAQ [1] -- it is a wiki so anybody can edit it.  I'd do it myself, but as should be quite obvious I don't really get what's going on here so better somebody who does know adds an item.

Björn

[1] https://github.com/b4winckler/macvim/wiki/FAQ

--
You received this message from the "vim_mac" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
Loading...