デフォルトの Perl モード (Emacs 23.1.1 に付属のモード) で Emacs の Perl ファイルまたはバッファーを編集しているとします。
完全なファイル (またはバッファー) を Perl インタープリターに直接送信し、結果を (別のバッファーで) 見る方法はありますか?
下位の perl プロセスを実行し、それらと対話するためのサード パーティ モードがあります (例: inf-perl.el
) が、emacs 23.1.1 には何も含まれていません。
しかし、perl でバッファを実行する簡単な方法は、shell-command-on-region
. たとえば、この関数はバッファーで perl を実行し、出力を というバッファーに表示します*Perl Output*
。
(defun perl-on-buffer ()
(interactive)
(shell-command-on-region (point-min) (point-max) "perl" "*Perl Output*")
(display-buffer "*Perl Output*"))
perl バッファで実行するM-x perl-on-bufferか、次のようにキーにバインドします。
(eval-after-load 'perl-mode
'(define-key perl-mode-map (kbd "C-c C-c") 'perl-on-buffer))
別のオプションは、コンパイル コマンドとしてcompile
/recompile
を使用することです。perl <filename>
これは、バッファの内容ではなくファイルの内容に対して機能し、( ) でエラーをナビゲートできるという利点があります。C-x `
next-error