macOS で Atom を使おうとしたら Script パッケージのアップデートが。
適用したらエラーで動かなくなった、なんじゃそりゃ。
バグ報告は上がっているようなので修正を待つとするか。
いや、ぶっちゃけ気に入らない所も多かったし別の手段も考えよう。
せっかくなので自作、も考えたけどアウトプットパネルはどうしよう?
Gedit みたいに標準では付いていないみたいだし、うーん。
もっとシンプルなパッケージを探して参考にしようかなと。
atom-runner というのを試しに入れてみた。
これは別 Pane を使って出力するようだ、なるほど。
そのおかげかパッケージもシンプルで素敵。
てゆーか、コイツは shebang どおりにスクリプトを実行してくれるヤン!
対応言語なんて shebang を書くなら設定不要、拡張子無しもイケる。
何だよ自分で作らなくてもいいジャン、こいつを今度から使うことにする。
ただデフォルトの状態だと何か表示が変、無駄な余白がある。
下側ピッチリに表示させたいんだけど。
Atom-Runner, Moving output pane to right side – support – Atom Discussion
こんなのを見つけた。
試してみると -4 に指定すれば下に出るようになるな。
#pane = panes[panes.length - 1][dirfunc](view) pane = panes[panes.length - 4][dirfunc](view)
それとカレントディレクトリが全部ルート (/) になるんだが。
ファイルの場所を指定するには、新しいペインを表示する前に記憶すりゃいいかも。
run: (selection) -> # add path = atom.workspace.getActivePaneItem()?.buffer?.file?.path @cwd = p.dirname(path) ################################## try '''dir = atom.project.getPaths()[0] || '.' try if not fs.statSync(dir).isDirectory() throw new Error("Bad dir") catch dir = p.dirname(dir) @child = spawn(cmd, args, cwd: dir)''' @child = spawn(cmd, args, {cwd: @cwd})
それと esc を押したら Pane も削除してほしいな。
https://flight-manual.atom.io/api/v1.41.0/Pane/
Pane.destroy() でペインは削除できるようだ。
stopAndClose: -> {pane, view} = @runnerView() pane?.removeItem(view) pane?.destroy() # add @stop(view)
よし後は run:file を F5 に割り付けして。
理想どおりになったけどかなり改造してしまった。
Atom を使う人はプログラマーだからこんな改造はみんなできるよね。