はじめに
普段はzshとipythonを使っている
- シェルスクリプトをよく書く
- ちょっと凝ったことをしようとすると結局pythonで書いてsubprocess.runする
- 関数にしておいてipythonからimportする
- ちょっとした計算も電卓よりipython
なんかPython製のShellがあるらしい
もしかして最高ですか?
(参考)
環境
- macOS Mojave
- homebrew
xonshの設定
- $HOME/.xonshrcに書く
- zsh上からxonshを起動しているのでPATHの設定とかは引き継がれている様子
mac用のエイリアス(GNU版の方を普段使っている)
aliases['ls'] = ['gls', '--color=always']
cdしたらls(これができなかったら窓から放り投げる)
@events.on_chdir
def auto_ls(olddir, newdir, **kw):
ls
関数のデコレータとして記述できるのが神だと思った。
bash, zsh, fishでも同等の設定を使用してきたが今までで一番しっくりくる。
プロンプト(2行にするのが好み)
$PROMPT = "[@{BOLD_YELLOW}{hostname}{NO_COLOR}:{INTENSE_BLUE}{cwd}{NO_COLOR}]\n {prompt_end} "
numpyをimportしたい
$ /usr/local/Cellar/xonsh/0.8.3/libexec/bin/pip3 install numpy
homebrewでインストールした自分の環境だと上記のパスにpipが存在した
後は今のところデフォルトの設定で割と満足している