2015-01-21 55 views
0

当我开始处理我的项目时,我需要运行很多进程。目前,我要推出每道工序以手动方式:Emacs lisp代码打开大量多终端

M-x multi-term RET 
M-x rename-buffer RET *some-name* RET 
cd ~/foo/bar/ 
python ./task.py 

如何写的Emacs Lisp,做以下步骤的代码:

  • 打开新的多期缓冲;
  • 重命名它(我知道标题我想为每个进程硬编码);
  • 运行一个或内部终端两个命令
+0

相关:http://stackoverflow.com/a/17817119/1350992 – 2015-01-21 11:39:54

+1

这不是一个全面的答案,所以我将它添加注释。您可能对['prodigy.el'包](https://github.com/rejeep/prodigy.el)感兴趣,这是一种“从Emacs内部管理外部服务”的工具。 – Chris 2015-01-21 13:57:00

+0

是的,prodigy.el接缝正是我的意思!谢谢。 – 2015-01-22 09:57:44

回答

1

你可以从这个模板开始:

(defun python-erica() 
    (interactive) 
    (let* ((default-directory "~/") 
     (proc (get-buffer-process 
       (ansi-term "/usr/bin/ipython" "erica")))) 
    (term-send-string 
    proc 
    (concat "import sys\n")))) 

您可以更改:

  • 函数名
  • 默认目录
  • python可执行文件
  • 长期缓冲区名
  • 初始命令