我正在使用 Emacs 和M-xterm
終端。因為我的典型工作流程如下圖所示:
- 編輯一些程式碼
- C-x o到終端緩衝區(或C-x b
term[Enter]
其他東西) - 按鍵Up使用最後一個指令
- 按Enter運行它
- C-x o回去
我想將所有這些(除了第一步......也許)綁定到一個命令,我相信 Emacs 足以做到這一點:-)
因此,命令必須:
- 使用終端轉到緩衝區(也許它根本不應該更改任何窗口,也許它應該垂直分割窗口(如果尚未分割)並使用正確的 sid)
- 運行最後一個命令,運行在那裡
- 返回最後一個緩衝區/螢幕的一部分
謝謝你!我不太習慣 Emacs 腳本系統,我希望有人能幫助我,並且其他人能夠使用答案來改進他的工作流程,因為我相信這是一個非常常見的問題
命令範例:
python manage.py test
python manage.py test stats
python solve.py # for project-euler puzzles :-)
第一個和第二個有時會透過 ssh (在終端機中)運作(我喜歡使用 進行開發vagrant
)
我知道綁定第一個和第三個很容易,但是第二個更改太頻繁 - 我只想“運行最後一個命令”
答案1
答案2
不允許M-x compile
做類似的事嗎?它允許您輸入自訂命令並運行它,然後下次重複此操作...
好吧,互動式命令可能會出現問題(這就是您想要使用術語的原因),也許持久性可重複使用 ssh 連接也會出現問題(但 TRAMP 可以在這裡提供幫助:cd REMOTELOCATION; your_cmd
可以工作)。
因此,至少,您可以查看compile
的原始程式碼來了解如何在這種情況下管理緩衝區以及如何執行命令。