Terminal
ATOM
nyagos

Atomにterm 2パッケージを導入してみた【Windows】

More than 3 years have passed since last update.


Atomにterm 2パッケージを導入してみた【Windows】

Atom上からコンソールを使用したくて方法を探していた。

term2というパッケージがよさ気だが、そのままでは導入することはできなかった。

正直めんどくさいが、はじめだけなので我慢して導入する。

やり方は下記リンクの下の方に書かれていた。

Installing failed because of pty.js on Windows #132

1. Install python 2.7 (make sure it's in path)

2. Install Microsoft Visual Studio 2013 Community Edition (NOT 2015)
3. Add ATOM_DIR\atom\resources\app\apm\bin to path
4. git clone https://github.com/codehotter/atom-term2
5. cd atom-term2
6. apm install
7. run command prompt as administrator, navigate to atom-term2 directory again
8. apm link .

まずは、Python2.7系の最新版をインストールする。

デフォルトではEXEのパスが追加されないので、インストール時に追加されるようにする。

もし選択を忘れても手動で環境変数に追加すればOKだ。

ちなみにインストールパスはどこでもいいが C:\Python27 とした。

次にVisualStudio2013 Community Editionをインストールする。

余計なオプションはいらないのでチェックは全部外す。

それでもかなり時間がかかるので気長に待とう。

その間に他の手順を進めておく。

順番は前後するが、先にgitでリポジトリを取得しておく。

Windows上であればTortoiseGitなどが使いやすい。

https://github.com/codehotter/atom-term2をcloneする。

オプションは特に必要ない。

パスは C:\git\atom-term2 とした。

環境変数にAtomのディレクトリを追加する。

ディレクトリは環境によって変わるので適当に変えてほしい。

C:\Users\[USER_NAME]\AppData\Local\atom\app-1.0.11\resources\app\apm\bin

パスを追加するには下記コマンドでできる。

一時的に追加するだけならsetxの代わりにsetが使える。

(インストール時だけ必要かと思ったら、起動時にも必要だった。setxを使ってください。)

setx /m path "%path%;[追加するディレクトリ]"

node.exeとapmが使えればよいので、上記の代わりにapm入りのnode.jsを入れてもいけるかもしれない。(未確認)

(node.jsに入っているのはnpmです。)

VS2013のインストールを待って、下記コマンドを実行すればterm2がコンパイルできるはずだ。

ちなみに apm link が管理者権限が必要となるので、予め管理者権限で開いておくとよい。

Windowsキーを押して、開いたスタートメニューにcmdと入力し、Ctrl + Shift + Enter で開くと管理者権限で開ける。

Win + R の入力ではできないので注意してほしい。

setx /m path "%path%;C:\Users\[USER_NAME]\AppData\Local\atom\app-1.0.11\resources\app\apm\bin"

cd C:\git\atom-term2
apm install
apm link

Atomを再起動し、パッケージを確認してみると見事term2が導入されているのがわかる。

Alt + Ctrl + T でterm2を開くことができる。

WindowsPowerShellが使えるようになっているのが確認できたと思う。

さて、どうせならシェルも入れ替えてしまおう。

msys2についているbashを使う方法もよいが、ここではNyagosを使う。

Nyagosは.batもUnixコマンドも使用できるので大変便利らしい。

ダウンロードして好きな場所に配置するだけなのも嬉しい。

term2の設定はAtomのConfigに記述すれば反映される。

File > Open Your Config > config.cson と開けるので、下記記述を追加する。

term2:

shellOverride: "cmd.exe"
shellArguments: "/c c:\\dev\\app\\nyagos\\nyagos.exe"
titleTemplate: "Nyagos"

cmd.exe の /c は第二引数のコマンドを実行して終了するオプションだ。

つまりcmd.exeの代わりに好きなシェルを実行させることができる。

\ は \\ とエスケープしておかないと\nで改行と認識されてしまうようなので注意。

これでterm2から簡単にコマンドを打つことができるようになった。

2015/09/17 追記:

Windowsで仮想やCygwinなしでUnixコマンドを使う

単一バイナリのbusyboxもよさげ。Androidなどでも使われているらしい。

2015/09/19 追記:

時間ができたので作業をしようとterm 2を起動しようとしたら以下のようなエラーが出ていた。

term2 0.9.15

pty.js@0.2.13 – The specified procedure could not be found.
C:\git\atom-term2\node_modules\pty.js\build\Release\pty.node

node.exeが見つからないということだろう。

たしかにパスを追加したのは一時的だった。起動時にも必要ということだろう。

パッケージマネージャから一度アンインストールして、setxからやり直した。

PC再起動後もきちんとterm2が起動することを確認できた。

ちなみに設定ファイルはそのまま残っているようでNYAGOSが起動できた。