term-run 20151228.105(in MELPA)
Run arbitrary command in terminal buffer

概要

Emacsには M-x term というターミナルエミュレータがあります。

そこではzshやirbなどのシェル系コマンドを実行できるのですが、
なぜかプログラムの引数は取ってくれません。

そこで M-x term-run-shell-command
term-mode で任意のシェルコマンドを実行します。

M-x shellM-x eshell は対話的なコマンドも実行できますが、
w3mやalsamixerなどの画面指向のプログラムは実行できません。

zsh をM-x eshellで実行してもzshの本来の操作性が殺されるので、
zshを本領発揮させるには term-mode を使う必要があります。

20150226084217.png
Fig1: M-x term-run-shell-command w3m http://rubikitch.com/

インストール

パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。

(package-initialize)
(setq package-archives
      '(("gnu" . "http://elpa.gnu.org/packages/")
        ("melpa" . "http://melpa.org/packages/")
        ("org" . "http://orgmode.org/elpa/")))

初めてterm-runを使う方は
以下のコマンドを実行します。

M-x package-install term-run

アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。

M-x package-install package-utils (初めてアップグレードする場合のみ)
M-x package-utils-upgrade-by-name term-run


本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。