[Emacs] Speedbar를 메인 윈도우에 넣기: sr-speedbar.el
Emacs의 내장 Speedbar는 별도의 윈도우가 뜨면서 동작한다. 개인적으론 좀 불편하다고 생각되어서 메인 윈도우 안에다 집어넣는 방법을 찾고 있었는데 누군가 이미 비슷한 목적으로 만들어 놓은 것을 찾았다.
sr-speedbar.el은 Speedbar를 Emacs 메인 프레임 속에 띄울 수 있게 해 주는 Emacs 확장이다.
EmacsWiki에 소스코드가 올려져 있기 때문에 auto-install로 쉽게 설치가 가능하다.
설정방법도 단순하다. 위 링크 페이지에도 설명이 되어 있지만 speed-bar를 require 해 둔 후 M-x sr-speedbar-open 을 실행시키면 된다.
개인적으론 약간의 코드를 추가해서 토글 형식으로 사용하도록 해 봤다. 아래는 그 소스코드이다.
sr-speedbar.el은 Speedbar를 Emacs 메인 프레임 속에 띄울 수 있게 해 주는 Emacs 확장이다.
EmacsWiki에 소스코드가 올려져 있기 때문에 auto-install로 쉽게 설치가 가능하다.
설정방법도 단순하다. 위 링크 페이지에도 설명이 되어 있지만 speed-bar를 require 해 둔 후 M-x sr-speedbar-open 을 실행시키면 된다.
개인적으론 약간의 코드를 추가해서 토글 형식으로 사용하도록 해 봤다. 아래는 그 소스코드이다.
(require 'sr-speedbar) ;; speedbar를 창 왼쪽에 띄운다. (setq sr-speedbar-right-side nil) ;; 파일목록 자동 갱신 (setq sr-speedbar-auto-refresh t) ;; speedbar 토글. speedbar가 뜨면 포커스를 speedbar로 이동. (defun my-speedbar () "Toggle sr-speedbar and select" (interactive) (progn (sr-speedbar-toggle) (if (sr-speedbar-exist-p) (sr-speedbar-select-window)))) ;; 단축키 C-x p (global-set-key (kbd "C-x p") 'my-speedbar)이 코드를 실행시킨 후, C-x p 를 누르면 sr-speedbar가 동작하면서 Speedbar가 왼쪽에 프레임이 나눠지면서 뜬다. my-speedbar 함수의 역활은 토글을 하면서 만약 Speedbar 가 떴다면 Speedbar 로 프레임을 이동시키는 것이다. 물론 다시 한번 더 C-x p 를 누르면 Speedbar가 닫힌다.
음........ 색상만 어울리게 잘 조절하면 좋을 것 같다. -_-;;;;;;;;;;;;;;;;
댓글
(defun my-speedbar ()
"Toggle sr-speedbar and select"
(interactive)
(progn
(if (sr-speedbar-exist-p)
(sr-speedbar-select-window)
(sr-speedbar-toggle))))