Slide 1

Slide 1 text

【PyCon2019】 Python製シェルXonshの紹介 $ M3, inc. $ Machine Learning Engineer $ Shunsuke Kawai ( @vaaaaanquish )

Slide 2

Slide 2 text

$ What’s Xonsh ? ● Japanese:コンシュ ● “Python” + “Shell Script” on Shell ● Made by Python ○ Cross-platform ○ Unix-gazing ○ let’s start:pip install xonsh

Slide 3

Slide 3 text

$ Why Xonsh ? ● Shell Scriptで複雑な処理を行いたくない! ● Pythonが持つライブラリ等の資源、簡易な構文を活用できる Shell環境が欲しい! fish xonsh  POSIX-compatible Python Bourne Shell (sh)

Slide 4

Slide 4 text

$ Settable by Python ● .xonshrc by Python and Shell Script ○ $PROMPT ○ Key binding ○ Completer  … and more ● Override built-in xonsh function by Python

Slide 5

Slide 5 text

$ Use Python property

Slide 6

Slide 6 text

$ Q&A Xonsh Q1 : 既存のshell scriptは読める? A : source_bashコマンドによって概ね使える Q2 : 遅くない? A : Pythonの起動が遅いためxonshの起動は遅い。   動作はマシンスペック次第なので設定の勘所あり。   現在async/await対応中。 Q3 : Pythonがshellに最適な言語なの? A : 最適とは言っていない。   インタプリタ型言語とshell scriptを混合して資源を活用できているshellという立ち位置。 Q4 : 開発状況は? A : 2019/09/13時点で v0.9.11。いくつかのissueを超えて v1.0.0を予定。

Slide 7

Slide 7 text

$ Thank you for listening and Xonsh ● Refernce ○ xonsh document: https://xon.sh/index.html ○ v1.0 Tracking issue: https://github.com/xonsh/xonsh/issues/3234 ○ logo ■ bash : https://github.com/odb/official-bash-logo ■ zsh: http://zsh.sourceforge.net/ ■ fish: https://github.com/laughedelic/fish_logo ■ ipython : https://ipython.org/ ■ jupyter: https://github.com/jupyter/design/tree/master/logos ■ python: https://www.python.org/community/logos/ ○ Scopatz - Interview: https://www.johndcook.com/blog/2015/11/15/xonsh/ ○ Scopatz - PyCon 2016: https://youtu.be/uaje5I22kgE ○ Scopatz - podcast: https://www.podcastinit.com/episode-29-anthony-scopatz-on-xonsh/ ○ Forsyth, Scopatz - Scipy 2019 Tutorial: https://youtu.be/ujo9sbqHFqw