我寫代碼的習(xí)慣是, 經(jīng)常分成上下兩個窗口, 用于對比不同文件的內(nèi)容, 甚至相同文件的上下不同位置的內(nèi)容.
不知道 Emacs 從什么版本開始, scroll-other-window 的默認(rèn)行為變得討厭了, 當(dāng)你對一個文件上下分屏以后, 你用 scroll-other-window 滾動其他窗口的時候, 當(dāng)前窗口的光標(biāo)位置也會隨著滾動.
這樣的默認(rèn)行為討厭的是, 你其實只想看文件的其他部分, 看完在當(dāng)前的位置繼續(xù)寫代碼, 可是 scroll-other-window 在滾動別的窗口的同時, 當(dāng)前正在寫的位置也發(fā)生變化了(因為 scroll-other-window 會更改 current-line 的位置), 滾動完后你不得不再重新去找你剛才寫的位置, 非常非常的煩人.
就這樣一直忍受著, 沒時間搞, 今天終于有空了, 寫了一個新擴展: watch-other-window.el : https://github.com/manateelazycat/watch-other-window
安裝完成以后, 綁定按鍵到下面的命令:
watch-other-window-up
watch-other-window-down
watch-other-window-up-line
watch-other-window-down-line
世界清凈了, 又可以舒服的寫代碼了.