zwd 发表于 2015-12-27 17:16:41

扩展Emacs,方便执行正在编辑的Perl程序

在用Emacs写Perl程序时,有一个快捷键来直接运行正在编写的Perl程序就非常方便了,
将下面的代码加入~/.emacs中,正在编写的Perl程序就可以使用M-o来运行了。


(defun runperl()
"run perl,执行当前缓冲区的Perl程序"
(interactive)
;(save-buffer)
(let ((filename buffer-file-name)
(cmd "")
(oldbuf (current-buffer))
(end (point-max)))
    (if filename
(save-buffer)
      (save-excursion
(setq filename (concat (getenv "tmp") "/temp.pl"))
(set-buffer (create-file-buffer filename))
(insert-buffer-substring oldbuf 1 end)
(write-file filename)
(kill-buffer (current-buffer))))
    (setq cmd (concat "perl -w " filename))
    (message "%s..." cmd)
    (shell-command cmd)))
(global-set-key[(meta o)] 'runperl) ;bind-key alt+o:runperl
页: [1]
查看完整版本: 扩展Emacs,方便执行正在编辑的Perl程序