私はemacsで次の関数を定義しています-
(defun web2py-server ()
(interactive)
(shell-command "cd /opt/web2py; python /opt/web2py/web2py.py &"))
上記はemacsに新しいバッファを作成します。ウィンドウに「abc」という名前を設定するにはどうすればよいですか。
ありがとう、ムルタザ
を呼び出すことでインタラクティブに行うことができますM-x rename-buffer
。または、関数に名前を追加することもできます。
(defun web2py-server ()
(interactive)
(shell-command "cd /opt/web2py; python /opt/web2py/web2py.py &")
(rename-buffer "abc"))
編集:
start-process
継続的でインタラクティブなプロセスが必要な場合は、の代わりに使用する方がよい場合がありますshell-command
。これにより、プロセスの開始時に出力バッファーを指定できます。そうでなければ、モリッツの答えは私のオリジナルよりも良く見えます。shell-command
start-processに関心がある場合は、行を次のように置き換えることから始めることができます。
(let ((default-directory "/opt/web2py"))
(start-process "my-server" "abc" "python" "/opt/web2py/web2py.py")
そのために、shell-command
の 2 番目のパラメータを使用します。OUPTUT-BUFFER
(defun web2py-server ()
(interactive)
(shell-command "cd /opt/web2py; python /opt/web2py/web2py.py &"
(get-buffer-create "abc")))