이맥스를 사용하다 보면 수많은 버퍼를 열게 된다. 버퍼를 열 때 현재 버퍼 위치에 새 버퍼를 열 때도 있고 다른 위치에 버퍼를 열 때도 있다. 다른 위치에 버퍼를 열 때, 원래 그 위치에 있던 버퍼는 보이지 않게 된다. 그런데 종종 어떤 버퍼는 다른 버퍼에 의해 가려지지 않고 화면에 계속 표시되면 좋겠다는 생각을 한다. 예를 들어 레퍼런스 버퍼나 REPL 혹은 인터프리터 버퍼 등은 프로그램을 짜면서 계속 이용하기 때문에 다른 버퍼에 가려지면 매우 귀찮다. 이 때 유용하게 사용할 수 있는 게 아래 링크에 나와있는 sticky buffer mode이다.
-
(define-minor-mode sticky-buffer-mode
-
"Make the current window always display this buffer."
-
nil " sticky" nil
-
(set-window-dedicated-p (selected-window) sticky-buffer-mode))
이 코드를 .emacs에 넣고 고정시키기를 원하는 버퍼에서 M-x sticky-buffer-mode를 입력하면 해당 버퍼가 붙박이 버퍼가 된다.

