terminal操作に慣れている人がWindows上でデータ分析を際に、
linuxやmacosとなるべく同じような感覚で
python, R, atomを使用するための環境を作る手順のメモです。

terminalにはMSYS2, minttyを利用して、
terminalからpython, jupyter, Rを起動できるように、
また、atomをatom ./スタイルで起動できるように設定していきます。

このエントリでは、以下流れで環境をセットアップします。

  • MSYS2とminttyをセットアップ
  • anaconda, atom, R のセットアップ
  • terminalからpython, jupyter, Rを起動できるように設定
  • terminalからatomを起動できるように設定
  • その他、設定しておくと便利そうなこと

以下の過去エントリとも内容かぶっていますが、
必要に応じて、こちらも参考にしてください。

Windowsからgit&sshを利用するためのterminalセットアップ手順(MSYS2)
http://takemikami.com/2016/10/03/WindowsgitsshterminalMSYS2.html

このエントリで作成する.bash_profileは、
以下のgithubリポジトリにもpushしています。
https://github.com/takemikami/dotfiles/blob/master/.bash_profile-msys2
# 最新状態では変更が加わっているかもしれないですが、

MSYS2とminttyをセットアップ

以下のサイトから、MSYS2のインストーラーをダウンロードし実行します。

MSYS2 installer
http://msys2.github.io/

anaconda, atom, R のセットアップ

以下のサイトから、各アプリケーションのインストーラーをダウンロードし実行します。

Anaconda
https://www.continuum.io/downloads

The Comprehensive R Archive Network
https://cran.r-project.org/

Atom
https://atom.io/

terminalからpython, jupyter, Rを起動できるように設定

msys2のterminalからpython等を対話モードで起動しようとするとすぐに終了してしまうので、
winptyをインストールして、winpty経由で起動するように設定しておきます。

以下のコマンドでwinptyをインストールします。

pacman -S winpty

~/.bash_profileなどに以下のように、
各コマンドへのパスと、winpty経由で起動するようにaliasをつけておきます。

export ANACONDA_HOME=$HOMEDRIVE$HOMEPATH/Anaconda3
r_rev=`ls "$PROGRAMFILES/R" | head -1`
export R_HOME=$PROGRAMFILES/R/$r_rev
export PATH=$ANACONDA_HOME/Scripts:$ANACONDA_HOME:$R_HOME/bin:$PATH

alias python="winpty python"
alias ipython="winpty ipython"
alias jupyter="winpty jupyter"
alias r="winpty r"

Rで文字化けするので、対策としてLANGも設定しておきます。

export LANG=C

terminalからatomを起動できるように設定

個人的に、atomを使う時は、
作業ディレクトリに移動してatom ./として起動することが多いので。
この方法で起動できるように仕込みます。

~/.bash_profileなどに以下のように、
atomを起動する際に、cmd.exeでatom.cmdを実行するように設定しておきます。

alias atom="run_atom $@"

run_atom() {
  atom_home=$HOMEDRIVE$HOMEPATH/AppData/Local/atom
  atom_rev=`ls $atom_home | grep -e "^app-" | head -1`
  cmd /C "$atom_home/$atom_rev/resources/cli/atom.cmd $*"
}

その他、設定しておくと便利そうなこと

その他、CapsLockをCtrlに置き換えるなどもしておくと、terminalが使いやすくなると思います。

Windows 7 で Caps LockキーをCtrlキーに変換する「Ctrl2cap」(※追記あり) | ソフトアンテナブログ
http://www.softantenna.com/wp/windows/ctrl2cap/

以上で、pythonやRをterminalで扱えるようになります。
pythonやRで追加のライブラリなどを使おうとすると、
Windowsでは使えないケースも多くLinux上で作業することになる場合が多いですが、
基本的なことを試すために、手元のWindowsマシンに環境構築しておいてもよいかと思います。