ターミナルからPsychoPyを動かす
先日パソコンを買い換えたのだがそれに合わせてもろもろの環境設定とかも新たに行った。
その一環としてPsychoPyをスタンドアロンのアプリでなく、ターミナルから動かすように設定したので、その流れの覚書。使っているのはMacBookPro13.3 でTouchBarなしのモデルで、OSはHigh Sierra 10.13.3です。
Homebrewを入れる
PsychoPyはPython上で動くものなので、まずPythonを入れないとお話にならない。Macにはデフォルトで2系のPythonが入っているが、PsychoPyとかに使うのはそれとは分けたかったので新たに3系のPythonを入れた。
パッケージ管理ソフトを使うと色々と楽チンということらしいので、そのうちの一つであるHomebrewというものを入れることにする。
入れ方は簡単でHomebrewのサイトよに行くと親切丁寧にコマンドが書いてある。それをコピペしてターミナルに貼り付けるだけで大丈夫。
ちなみに、Homebrewとはそもそも何なのかということについては、次のサイトが詳しい。
3系のPythonを入れる
Homebrewを用いてPythonをインストールする。ターミナルでbrew install python3
と打つだけでインストールされる。簡単。
ターミナルでpython3
と打って、インタラクティブシェルが起動されれば無事にインストールされている。quit()
でインタラクティブシェルが終了する。
pipでPsychoPyをインストール
pipというのはPythonのパッケージ管理用のシステムでPython3をインストールすると勝手に付いてくる。パッケージをいちいちその配布サイトに行かなくとも、コマンドを打つだけでインストールしてくれるスーパー便利ソフトである。3系のPythonのパッケージ管理はpip3 install {package}
で行う。その他のコマンドは先ほどのリンク先を見ると詳しく書いてある。
昔はPsychoPyをpip経由でインストールしても、全ての依存するパッケージが集まらなかったのだが、公式のサイトを見るとver 1.90からpip経由で大丈夫になったようだ。
Using
pip install psychopy
now installs all the necessary dependencies (on either Py2 or Py3)
https://github.com/psychopy/psychopy/releases
ただここでは、3系の方に入れたいのでpip3 install psychopy
と打つ。関連するパッケージをまとめて入れてくれる。わたしがやったときは、パッケージをインストールする権限がうんちゃらかんちゃらでエラーを吐いたのでsudo
を前につける必要があった。
ターミナルから実験プログラムを起動
実験のコードが入っているディレクトリまで移動して、python3 {experiment.py}
で無事に実験が動くはず。
なお、スタンドアローンのPsychoPyだとMonitorCenterというところからモニターについての情報を編集して、そこで設定したモニター名を指定すれば良かったが、ターミナルからだとMonitorCenterは使えない。PsychoPyの公式サイトによれば、そういう場合はpsychopy.monitors
というのを使って諸々を設定しなさいとのことである。
変なメッセージが出た場合
ちなみにわたしの場合、次のような謎のメッセージが出た。
ApplePersistenceIgnoreState: Existing state will not be touched. New state will be written(以下略)
プログラム自体は別に問題なく動作するのだが、毎回出るのはうっとおしいので調べてみると次のページがヒットして、言う通りにしたら変なメッセージは消えた。
何か問題があったらまた戻そうと思う。