スキップしてメイン コンテンツに移動

投稿

1月, 2024の投稿を表示しています

pipenv の zsh 補完

Django の開発中の不満の一つが pipenv run の補完だ。 zsh は補完が凄いと聞いていたのに bash から移行してストレスが増えた。 bash はとりあえずファイルがそこにあればいつでも補完が効く。 pipenv run python と打った後にはカレントの manage.py が補完できる。 それに対して、zsh の補完はもっと inteligent で文脈を理解するのだが、何の指定もない文脈では何も補完できない。 本当に使えない。 まあお気づきかと思うが、zsh が使えないというより設定ファイルが酷い、という話、のはずだ。 調査 まずは状況を確認しよう。 Mac の homebrew で pipenv を入れていて、シェルは zsh。 .zshrc で補完の設定は最低限のものだけ。 autoload -Uz compinit && compinit zstyle ':completion:*' completer _complete _ignored _files .zshrc pipenv の補完設定は /usr/local/share/zsh/site-functions/_pipenv にあるが、これは /usr/local/Cellar/pipenv/2023.11.15/share/zsh/site-functions/_pipenv へのシンボリックリンクだ。 homebrew がこの設定ファイルをどこから持ってきているかというと、pipenv.rb の中で次の補助関数で生成している。 generate_completions_from_executable(libexec/"bin/pipenv", shells: [:fish, :zsh], shell_parameter_format: :click) pipenv.rb generate_completions_from_executable は、formula.rb に定義がある。 shell_param...

2023年の読書

読書メーターの記録 によるとマンガを入れて78冊。 まあ去年と大差ない。 印象に残っているのは 「紋章学入門」「神田神保町書肆街考」という厚めのちくま学芸文庫、 「運動しても痩せないのはなぜか」 辺り。 数学では「グレブナー基底と代数多様体入門」は良い本だった。表現論の本には手を出して挫折、を繰り返していた感じ。 マンガでは継続して読んでいた「プリニウス」「重版出来」「ダンジョン飯」が完結したし、「フットボールネーション」や「アルテ」はそろそろ終わりそうな雰囲気になってきたので、この先は読む量がだんだん減りそう…いや「ぼっち・ざ・ろっく!」とか読み始めてしまったし、そんなことはないか。 YouTube きっかけは「冬虫夏草ハンドブック」があった。うごめ紀という生物系のチャンネルで紹介されていたもの。