はじめに
WSL2のUbuntuにpyenvとVimキーバインディングでダークなJupyter Notebookを導入したので備忘録として手順を纏めます。
導入環境
- Windows 10 バージョン 20H2 (OS ビルド 19042.508)
- Ubuntu 20.04 LTS on WSL 2
penvインストール
パッケージ一覧の更新、パッケージを更新する。
sudo apt update
sudo apt upgrade
上記実行後、WSLを再ログインしてから下記パッケージをインストールし、再ログインする。
sudo apt install -y build-essential
sudo apt install -y libffi-dev
sudo apt install -y libssl-dev
sudo apt install -y zlib1g-dev
sudo apt install -y liblzma-dev
sudo apt install -y libbz2-dev libreadline-dev libsqlite3-dev
pyenvをインストールし、bashrcに環境変数を追記する。
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc
動作確認として最新のpython3系stable版をインストールしてみる。
# インストール可能なバージョンを確認する。
pyenv install --list
# pythonインストール(本手順では3.8.5)
pyenv install 3.8.5
# 上記バージョンに切り替える
pyenv global 3.8.5
# バージョン確認
python --version
pipインストール
Jupyter Notebookの前にpipをインストールする。
sudo apt install python3-pip
# バージョン確認
pip --version
Jupyter Notebookインストール
Jupyter Notebookをインストールする。
sudo -H apt install jupyter-notebook
起動確認する。
jupyter notebook
ブラウザで下記URLのアクセス確認する。
ログインのパスワードを設定する。
jupyter notebook --generate-config
jupyter notebook password
Vimキーバインド設定
Jupyter Notebook拡張機能管理パッケージNbextensionsをインストールする。
pip install jupyter_contrib_nbextensions
Nbextensionsのjavascript, cssをインストールする。
jupyter contrib nbextension install --user
拡張機能配置用ディレクトリを作成しカレントディレクトリにする。
mkdir -p $(jupyter --data-dir)/nbextensions
cd $(jupyter --data-dir)/nbextensions
vimバインディングパッケージをgitクローンする。
git clone https://github.com/lambdalisue/jupyter-vim-binding vim_binding
jupyter nbextension enable vim_binding/vim_binding
Jupyter Notebookを起動し、以下が表示されていれば利用可能。
- Nbextensionタブが表示されていること。
- Nbextensionの一覧にVim bindingが表示されていること。
Jupyter Notebookダークモード設定
Jupyter Notebookを停止した状態で色やフォントを変更するためのパッケージjupyterthemesをインストールする。
pip install jupyterthemes
ダークな感じになるように設定する。
jt -t chesterish -T -f roboto -fs 9 -tf merriserif -tfs 11 -nf ptsans -nfs 11 -dfs 8 -ofs 8
キーバインドをVimにする場合は挿入モード、コマンドモードの表示がダークになる設定をする。
cat <<EOL >> ~/.jupyter/custom/custom.css
.edit_mode .cell.selected .CodeMirror-focused.cm-fat-cursor {
background-color: #000000 !important;
}
.edit_mode .cell.selected .CodeMirror-focused:not(.cm-fat-cursor) {
background-color: #000000 !important;
}
div.CodeMirror-dialog.CodeMirror-dialog-bottom {
background: #000000 !important;
}
EOL
参考文献
ほぼ下記のQiita記事を参考にし、自身の備忘録として纏めさせて頂きました。ありがとうございました。