Я на Mac под управлением MacOS Mojave. Я запускаю Iterm2 для терминала и рыбы версии 3.0.0. Я также использую pipenv для управления своим локальным развитием.
У меня есть проблема, когда я активирую Python Virtual Env через >pipenv shell
, виртуальный путь Env вставляется в середину списка PATH после /usr/local/bin
который на Mac, где Homebrew устанавливает двоичные файлы. Поэтому также виртуальный env активируется, когда я набираю >which python
, я получаю питона из системы, а не виртуальный env, как я ожидал.
пример
Путь до виртуальной активации env с помощью команды оболочки pipenv
PATH=/Users/napo/bin:/Users/napo/.local/bin:/Users/napo/.cargo/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/share/dotnet:~/.dotnet/tools:/usr/local/sbin:/usr/local/opt/python@2/bin
Путь после виртуальной активации env с помощью команды оболочки pipenv
PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/share/dotnet:~/.dotnet/tools:/Users/napo/.local/share/virtualenvs/learn-gXU4lJPg/bin:/usr/local/Cellar/pipenv/2018.11.26/libexec/tools:/Users/napo/bin:/Users/napo/.local/bin:/Users/napo/.cargo/bin:/usr/local/sbin:/usr/local/opt/python@2/bin
Помимо проблемы с дубликатами записей путей, можно видеть, что /Users/napo/.local/share/virtualenvs/learn-gXU4lJPg/bin
был размещен где-то посередине этого списка.
Я буду очень благодарен за исправление. Ниже мой текущий полный config.fish
if status --is-login
# Homebrew
set -x HOMEBREW_INSTALL_CLEANUP 1
# Golang
set -gx GOPATH ~/go/
# Don't write bytecode, Python!
set -x PYTHONDONTWRITEBYTECODE 1
set -x PIPENV_SHELL_FANCY 1
set -x PIPENV_MAX_SUBPROCESS 64
set -x EDITOR nvim
set -gx OSTYPE macOS
set -gx WORKON_HOME /Users/napo/.local/share/virtualenvs
# android sdk
set -gx ANDROID_NDK_HOME /usr/local/share/android-ndk
set -gx ANDROID_SDK_ROOT /usr/local/share/android-sdk
# Make fzf respect .gitignore using fd command
set -gx FZF_DEFAULT_COMMAND 'rg --files'
# Now fzf (w/o pipe) will use fd instead of find
# To apply the command to CTRL-T as well
set -gx FZF_CTRL_T_COMMAND $FZF_DEFAULT_COMMAND
set -gx VIMCONFIG ~/.config/nvim
set -gx VIMDATA ~/.local/share/nvim
set -gx VISUAL nvim
# PATHS
set -gx PATH /Users/napo/bin /Users/napo/.local/bin /Users/napo/.cargo/bin $PATH
set -gx PATH $PATH /usr/local/sbin /usr/local/opt/python@2/bin
neofetch
end
# Use personal aliases
if test -e "$HOME/.config/fish/path.fish"
source ~/.config/fish/path.fish
end
if test -e "$HOME/.config/fish/aliases.fish"
source ~/.config/fish/aliases.fish
end
if test -e "$HOME/.config/fish/chpwd.fish"
source ~/.config/fish/chpwd.fish
end
if test -e "$HOME/.config/fish/functions.fish"
source ~/.config/fish/functions.fish
end
# for things not checked into git.
if test -e "$HOME/.extra.fish"
source ~/.extra.fish
end
# Prefer GB English and use UTF-8
set -x LC_ALL en_GB.UTF-8
set -x LANG en_GB
set -g theme_nerd_fonts yes
set -g theme_show_exit_status yes
# Allow 256 colors in iTerm2 for pretty vim colors
#set -gx TERM xterm-256color
set -gx CLICOLOR 1
# better ls colors
eval (gdircolors --c-shell $HOME/dircolors)
# Remove fish greeting
set fish_greeting
# highlighting inside manpages and elsewhere
set -gx LESS_TERMCAP_mb \e'[01;31m' # begin blinking
set -gx LESS_TERMCAP_md \e'[01;38;5;74m' # begin bold
set -gx LESS_TERMCAP_me \e'[0m' # end mode
set -gx LESS_TERMCAP_se \e'[0m' # end standout-mode
set -gx LESS_TERMCAP_so \e'[38;5;246m' # begin standout-mode - info box
set -gx LESS_TERMCAP_ue \e'[0m' # end underline
set -gx LESS_TERMCAP_us \e'[04;38;5;146m' # begin underline
# jump config
status --is-interactive
and source (jump shell |psub)
# direnv config
eval (direnv hook fish)
Спасибо