All Projects → sentriz → Fish Pipenv

sentriz / Fish Pipenv

Licence: mit
🐟🐍 a fish plugin that automatically activates the pipenv subshell

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to Fish Pipenv

Virtualfish
Fish shell tool for managing Python virtual environments
Stars: ✭ 819 (+381.76%)
Mutual labels:  fish-shell, virtualenv
Packages Main
Primary Oh My Fish package repository.
Stars: ✭ 138 (-18.82%)
Mutual labels:  fish-shell
Angel Ps1
Your fancy shell prompt fed by your guardian angel
Stars: ✭ 60 (-64.71%)
Mutual labels:  fish-shell
Zsh History Substring Search
🐠 ZSH port of Fish history search (up arrow)
Stars: ✭ 1,705 (+902.94%)
Mutual labels:  fish-shell
Build Deep Learning Env With Tensorflow Python Opencv
Tutorial on how to build your own research envirorment for Deep Learning with OpenCV, Python, Tensorfow
Stars: ✭ 66 (-61.18%)
Mutual labels:  virtualenv
Dotfiles
My dotfiles
Stars: ✭ 121 (-28.82%)
Mutual labels:  fish-shell
Breeze
git tool for fish-shell
Stars: ✭ 52 (-69.41%)
Mutual labels:  fish-shell
Dotfiles
📍 My dotfiles for macOS using Fish/Zsh, Neovim, and Tmux
Stars: ✭ 151 (-11.18%)
Mutual labels:  fish-shell
Virtualenv Api
An API for virtualenv/pip
Stars: ✭ 130 (-23.53%)
Mutual labels:  virtualenv
Gitnow
Speed up your Git workflow. 🐠
Stars: ✭ 117 (-31.18%)
Mutual labels:  fish-shell
Fish Bd
Quickly go back to a parent directory up in your current working directory tree. Don't write 'cd ../../..' redundantly, use bd instead.
Stars: ✭ 113 (-33.53%)
Mutual labels:  fish-shell
Nodeenv
Virtual environment for Node.js & integrator with virtualenv
Stars: ✭ 1,297 (+662.94%)
Mutual labels:  virtualenv
Pipenv Pipes
A PipEnv Environment Switcher
Stars: ✭ 122 (-28.24%)
Mutual labels:  virtualenv
Nix Env.fish
Nix environment setup for the fish shell
Stars: ✭ 66 (-61.18%)
Mutual labels:  fish-shell
Sdkman For Fish
Adds support for SDKMAN! to fish
Stars: ✭ 139 (-18.24%)
Mutual labels:  fish-shell
Powerline.fish
Stars: ✭ 55 (-67.65%)
Mutual labels:  fish-shell
Makefile.venv
Seamlessly manage Python virtual environment with a Makefile
Stars: ✭ 114 (-32.94%)
Mutual labels:  virtualenv
Openpogobot
A PokemonGo Python bot - NO LONGER MAINTAINED
Stars: ✭ 120 (-29.41%)
Mutual labels:  virtualenv
Dotfiles
My personal dotfiles.
Stars: ✭ 162 (-4.71%)
Mutual labels:  fish-shell
Pipenv.el
A Pipenv porcelain inside Emacs.
Stars: ✭ 141 (-17.06%)
Mutual labels:  virtualenv

hooks into a change in PWD to automatically launch a Pipenv shell for your Pipenv project

note: this project was previously maintained by @kennethreitz

Installation

With Fisher

fisher install sentriz/fish-pipenv

With Fundle

Add:

fundle plugin "sentriz/fish-pipenv"

to your config.fish (create one if it doesn't exist), reload your shell and run:

fundle install

With Oh My Fish

omf install https://github.com/sentriz/fish-pipenv

Configuration options

Suitable for your ~/.config/fish/config.fish

# set if your term supports `pipenv shell --fancy`
set pipenv_fish_fancy yes

Potential Issues

Mac OS

After installing pipenv, running the $ pipenv command may yield the following error:
Install http://docs.pipenv.org/en/latest/ to use this package.

Reason for the error

The problem is that, the pipenv package rightly could not find the pipenv command. The situation with fish shell is that it executes scripts in the /Users/user/.config/fish/config.d folder before executing config.fish and the pipenv package creates a link in the config.d folder hence it is executed before config.fish.

Now depending on how you installed pipenv or how soon your $PATH is loaded you could be faced with the above error.

Solutions

  1. You could install pipenv with the command $ pip3 install pipenv. Pipenv will then be installed in /usr/local/bin. On some systems the folder /usr/local/bin is added to $PATH by the system which means that it will be available before fish goes fishing for scripts in /Users/user/.config/fish/config.d

  2. Or you could create a file say 000-env.fish (or whatever you want to call it), and place it in /Users/user/.config/fish/config.d. In this file set the path to the folder where pipenv was installed. E.g if pipenv was installed via pipsi, then the command will be something like set -x PATH /Users/user/.local/bin $PATH

    If pipenv was installed via $ pip install pipenv, then note that pip (python2) now puts its executables in /usr/local/opt/python/libexec/bin.

    The 000 preface is to ensure that, that script will be executed first before the others in config.d. You don't have to prefix the file with 000 it is abitrary. Just give it a name that places it at the top of the pile.

  3. Or assuming you also have fish-pyenv you can add a universal variable to your fish_user_paths following mhugbin:

    set -U fish_user_paths ~/.pyenv/shims $fish_user_paths
    

See https://github.com/sentriz/fish-pipenv/issues/1

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].