2012-05-22 193 views
4

我目前正在使用emacs進行編程。我在我的.emacs中定義了一個函數,它保存了我所有的工作,並執行解釋器在當前打開的shell緩衝區中運行我的工作。通常我會編輯一個或多個框架,並在不同的框架中打開shell。我遇到的問題是當我運行我的保存和執行功能時,一切都保存了,但shell緩衝區顯示在我正在編輯的幀中。所以我有兩個框架顯示shell緩衝區,我看不到我剛剛編輯的源代碼。通常當我編程時,我會立刻想將代碼的輸出與我剛剛編寫的代碼進行比較。這有點煩人,必須切換回我的代碼緩衝區,然後到另一個shell緩衝區的末尾查看輸出,同時引用剛寫入的代碼。你可以看到我的函數現在是相當原始的,只需重新執行shell中最近使用的命令即可。Emacs在不同的框架中切換到緩衝區

我知道Emacs具有切換到不同幀的緩衝區的功能,因爲ido緩衝切換器代碼可以實現這一點。有人有什麼指示我需要取代我的呼叫切換到緩衝區以獲得所需的效果?

關心Giles。

回答

3

交易所

(switch-to-buffer "*shell*") 

(switch-to-buffer-other-window "*shell*") 

這將強制兩個窗口布局與之前的左側緩衝區,並在右側殼緩衝。
編輯:如果您使用的是多框架佈局,而不是一個多窗口佈局,可以使用

(switch-to-buffer-other-frame "*shell*") 
+0

謝謝。切換到緩衝區其他幀的作品。 –

1

您還可以使用​​稍後將讓你自定義究竟如何,其行爲,例如通過display-buffer-reuse-framedisplay-buffer-alistspecial-display-regexp

相關問題