サイトアイコン てくてくぷれいす

俺はPowerShellを脱してxonshを使うぞ!!ジョジョ!!![Windows10 xonsh on bash]

こんにちは,しまさん(@shimasan0x00)です.

私は高専に入ってすぐはWindows PCを使っていたはずなのですが,卒業していたときに手に持っていたのはMacbook Proでした.

大学に移ってからは演習で使うPCはLinuxだったし,研究室のPCはiMacなのでつい最近までWindowsは触ってませんでした.

ですが今年消費税が10%になるということで自宅環境で機械学習したいというのとGameしたいと思って自作Windows PCを組みました.

Core i5(9400F)とRTX2060で自作PCを組んだ話Core i5(9400F)とRTX2060で自作PCを組んだ話をしています.CPUクーラーをプッシュピン方式にすると初心者は大変でした....

そこで久々にWindowsを触ることになります.

シェルがデフォルトでcmd.exe,PowerShellがあったのですがPowerShellの独特のエグミに体がついていけませんでした(好きな人もいると思いますがごめんなさい).

あと,WindowsとPythonの相性が微妙でウッてなりましたね.

結局心が折れてAnacondaを使い,cupyインストールしてhogehogeやってました.

AppleとNvidiaが仲良ければなぁなんて夢を見つつPowerShellを我慢して使ってたのですがどうも我慢してたのは自分が情弱だったからっぽい.

Windowsで使えるターミナルとシェルのまとめWindows で使えるターミナルとシェルをまとめてみた。Windows でも選択肢は意外と多い。ターミナルとシェルの組み合わせで自分好みの環境を構築できるだろう。ター…
Windowsで使えるターミナルとシェルのまとめ – Qiita – Qiita

最近Mac側のシェルをzshからxonsh on zshに変更したときに色々調べたらどうもWindowsでxonsh on bashの構成がいけるらしい.

はじめに これはXonsh Advent Calendar 2018の23日目の記事です。 概要 同カレンダー3日目の記事の終わりでも書いたように、できるだけストレスなくWindowsにXonshを導入する方法について考えてみました。 考えてみた結果、「Git for Windows(GitBash)の上で起動するのが一番カジュアルじゃね?」という結論に達しました。 以下、具体的な準備について書いていきます。 1. Git for Windowsをインストールする とりあえず、コマンドプロンプトよりはシェルの上で使いたいので、シェル環境を導入したいところです。 Windows上で動くシ…
XonshをWindowsで(比較的)お手軽に使ってみる – かーくがかーくよ – かーくがかーくよ

PowerShellの独特の表現から逃げれる&Macで使用しているxonshrcを使える…となればやるしかない!!

環境

スポンサーリンク

Anacondaのインストール

Anaconda is the birthplace of Python data science. We are a movement of data scientists, data-driven enterprises, and open source communities.
Anaconda | The World's Most Popular Data Science Platform – Anaconda

ここからインストーラをダウンロードして,指示に従うだけでokです.

Anacondaをインストールして使えるものについては過去記事を参照ください.

Mac OS X(Mojave)にAnaconda(Python環境)をインストールする方法Mac OS X(Mojave)にAnaconda(Python3.7環境)をインストールする方法を紹介しています.Anacondaをインストールしたら使用可能となるJypyterLab,Jupyter Notebook,Qt Console,Spyder,Glueviz,Orangeについても簡単に紹介をしています....

スポンサーリンク

xonshのインストール

Anacondaを使用している人は以下の2行を実行してしまえば終了です.

conda config --add channels conda-forge
conda install xonsh

xonsh環境の構築

まず,xonshに関してですがやはりばんくしさんのブログは非常に勉強になります.

機械学習とか好きな技術話とかエンジニア的な話とかを書く
xonsh カテゴリーの記事一覧 – Stimulator – Stimulator

xonshのAdvent Calenderもおすすめです(といってもこれもばんくしさんが作成していますが).今年もあるのかな?

# Python Shell「Xonsh」の話をするAdvent Calendar- Xonsh知らなかったけどアドベントカレンダーに向けて使ってみた- Xonsh導入と環境構築- Xonshの便利なAPIの紹介- Xonshの拡張作った- Xonsh上でPythonとsh使って面白い事やった話本当なんでもあり。現状日本語情報が少ない(実質無い)ので、ほんと少しでも書いてくれるだけでハッピー。以下参考情報Doc : http:…
Xonsh Advent Calendar 2018 – Qiita – Qiita

Macだと現状こんな感じです.

xonshrc書くの面倒ならとりあえずばんくしさんのこの記事のrcをコピペするだけで超便利になります.

– はじめに – この記事はXonsh Advent Calendar 2018 – Qiita最終日の記事です。私のxonshrc、業務用のコマンドとか含めると大体1500行くらいあるんでgithubで公開するんじゃなくて一部ずつ切り取ってここで紹介しようかなと思いました。なんか作る時の参考になれば幸いです。 – はじめに – – 基本的な設定 – 環境変数 aliases xontrib – ライブラリ周り – import, xontrib_load時の自動install importの遅延ロード – 認証周り – 1passwordを利用したpassword, one-time-pas…
2018年のxonshrc – Stimulator – Stimulator

注意点

環境Windows 10 64bitPython 3.6.3xonsh: xonsh/0.6.0事象サブプロセスモードの何かしらでで補完を試みると、下記のエラーException …
xonshのタブ補完でなんかエラーになる件 – Qiita – Qiita

以下を追加すればいいらしい(けどWindowsってやっぱり地雷多くない??)

import _locale
_locale._getdefaultlocale = (lambda *args: ['ja_JP', 'utf_8'])

以下のようにls.exeとすればいいみたい(ってやっぱりじら…)

aliases['ls'] = "ls.exe --color=auto"
ひよこエンジニア / Python / JavaScript / Blockchain
Windowsでmakeコマンドを使えるようにする – mktia’s note

私の場合makeコマンドがなかったので上記サイトを参考にインストールしました.

translate-shellはGit Bashを管理者権限で立ち上げてからmakeコマンドでインストールしましょう.

Support for the standard curses module on Windows
windows-curses – PyPI

Windows用にライブラリが用意されているようです.

cursesをインポートしている部分を「windows-curse」に変えましょう.

スポンサーリンク

Git for Windowsのインストール

We bring the awesome Git VCS to Windows
Git for Windows – 

ここからDownloadして,インストールします.

日本語周りのことについて困ったらこのサイトを見ればよさそうです.

追記(2.x): Git for Windows は2015年8月にリリースされた 2.5.0 以降日本語まわりの問題もいくつか改善されているので追記しました。2.x 系では開発ベースも変わり、もはや msysgit ではなくなっ…
Git for Windows で日本語を使いたい – Qiita – Qiita

.bashrcの設定

xonshの設定が終わったら~/.bashrcの末尾に

python -m xonsh

を追加してxonshが起動するようにすればOKです.

※私の環境だと「xonsh」コマンドを実行すると止まってしまうため「ipython」に書き換えて実行させてます.環境変数がうまくいってないのかもです.

とりあえず起動

このlsは先程のls.exe部分を記述していない場合です.color設定を追加する場合にls.exeじゃないといけないみたいですね.

さいごに

ようやくPoerShellから離脱することはできました.

でもどうせWindows固有のあれこれでUNIX系OSでは必要ない対処をしなくてはいけなかったりうまくいかなかったりするんだろうなと思います.

やはり石仮面と矢から逃れることはできないんでしょうね.

p.s.

日本語フォントがあれだったので書いたあとにRicty Diminishedに変えました.

Ricty Diminished — fonts for programming. Contribute to edihbrandon/RictyDiminished development by creating an account on GitHub.
edihbrandon/RictyDiminished – GitHub
モバイルバージョンを終了