pipenvめも

前提

  • どっかにプロジェクト用のディレクトリを掘っておく
  • とりあえず今回は~/foo-bar-py としておく
    • mkdir ~/foo-bar-py
    • cd ~/foo-bar-py

install

  • brew install pipenv

ope

プロジェクトの初期化

  • pipenv install --python 3.7.3
    • こんな失敗したら、pyenvがなんかおかしいので、pyenv install 3.7.3 && pyenv local 3.7.3 しておくといいかも。
⠴ Creating virtual environment...Using base prefix '/usr/local/Cellar/python/3.7.3/Frameworks/Python.framework/Versions/3.7'
New python executable in /Users/xxx/.local/share/virtualenvs/xxx-XoFfHCVs/bin/python3.7
Not overwriting existing python script /Users/xxx/.local/share/virtualenvs/xxx-XoFfHCVs/bin/python (you must use /Users/xxx/.local/share/virtualenvs/xxx-XoFfHCVs/bin/python3.7)
Installing setuptools, pip, wheel...
done.
Running virtualenv with interpreter /usr/local/bin/python3
  • 初期化の際、pipenv installをそのまま実行すると、仮想環境が~/.local/share/virtualenvs/ に作成される
  • それではだいたい具合が悪いので、指定する方法がある

  • $WORKON_HOMEで仮想環境の親ディレクトリを指定

  • export WORKON_HOME=~/foo-bar-py/.venv && pipenv install --python 3.7.3

実行結果

$ tree -a -L 1
.
├── .venv
├── Pipfile
└── Pipfile.lock
  • その他
    • export PIPENV_VENV_IN_PROJECT=1 プロジェクト直下に仮想環境つくる(ただし、プロジェクト直下を判定しているのはPipfileが置かれている場所)
    • $VIRTUAL_ENV すでにある仮想環境を使う。

参考

Pipenvを使ったPython開発まとめ - Qiita

pipenv で任意の場所の仮想環境を使う - Qiita

インスタンスで使うGithubのDeploy Key向けのssh key 生成メモ

2019年改めて

鍵生成

# -Nでパスフレーズなし(非推奨)
ssh-keygen -t rsa -b 4096 -f .ssh/id_rsa -N "" -C "for-ec2-instance"

鍵登録

インスタンスに配置

注意

認証は通っているのにGitでGitHubリモートリポジトリにアクセスすると Permission denied になる問題の原因 - noraworld devlog

nvim + python

LSP

Pythonのパス解決問題を解消し、pyls(Python Language Server)を導入した on NeoVim - Qiita

Language Server Protocolを使ってvimでpython入力補完 - Qiita

TODO

  • rubocop的な
  • pydoc開くやつ

ALE

ALE(on NeoVim)でPythonコードを楽に整形する - Qiita

other

Mac で Neovim をPython の開発環境にする | Mastering Python

Pythonの開発環境を整える(Neovim + Pyenv + Pipenv) - DevLog