バッファの移動

id:yagiey:20080409で紹介した.emacs.elの設定でずっとやってきたけど、C-cSで*scheme*バッファに移動するのがウザく感じるようになってきた。
Schemeやるときはscheme-modeにした*scratch*バッファでC-xC-eしてばっかりなので、*scheme*バッファに移動されても、結局C-x oで再度バッファに戻ることになるんだよなぁ。


ってことで、emacs-lispはまったく分からんけど、該当個所と思しきコードを眺めてみると、

(defun scheme-other-window ()
  "Run scheme on other window"
  (interactive)
  (switch-to-buffer-other-window
   (get-buffer-create "*scheme*"))
  (run-scheme gosh-program-name))

の中の、switch-to-buffer-other-windowが臭いような希ガス
推測では、

(get-buffer-create "*scheme*")

でgoshを走らせるバッファ作って、

(switch-to-butter-other-window さっき作った*scheme*バッファ)

で移動しているように見えるから、switch-to-buffer-other-windowで囲まないようにしてみた。

(defun scheme-other-window ()
  "Run scheme on other window"
  (interactive)
  (get-buffer-create "*scheme*")
  (run-scheme gosh-program-name))

こんなん。
ウィンドウが分割されなくなった。(`ェ´)ピャー
ウィンドウは分割するけど、移動はしてほしくないだけなのね。くっそー。

追記 2008/02/28

はてダを徘徊していたら、同じこと言ってる人がいた。
...って、頻繁にコメントしてくれるSaitoAtsushiさんじゃないですか。
ということで、以下も非常に参考になります。
id:SaitoAtsushi:20081021:1224614106