emacs 시작시 스피드 바 로딩


3

우분투 12.04에서 emacs 23.3.1을 사용합니다. 스피드 바를 설치했습니다. emacs init 파일은 다음과 같습니다 :

 ;;; Emacs Load Path
 (setq load-path (cons "~/emacs-config" load-path))

 ;; speedbar in the same frame
 (require 'sr-speedbar)
 (load "~/emacs-config/sr-speedbar")

emacs-config에는 sr-speedbar.el이 있습니다. 로드시 오류 메시지가 표시되지 않습니다. 그러나로드시 스피드 바가 시작되지 않습니다. emacs를 시작할 때마다 sr-speedbar-open을 Mx해야합니다.

또한 버퍼 모드에서 항상 sr-speedbar를 시작하는 방법이 있습니까? 지금은 파일 모드이므로 현재 파일의 디렉토리 목록을 보여줍니다.


아마 당신은 내가 당신을 대가로 도울 수 있도록 몇 가지 것들을 더 잘 이해하도록 도울 수 있습니다. C-h m스피드 바 버퍼에 입력 할 때 표시되는 정보에 따르면 'speedbar.el'에 정의 된 스피드 바 모드 : 디렉토리 및 태그 표시를 관리하기위한 주요 모드입니다. . 내가 실수하지 않으면 버퍼는 다른 주요 모드가있을 때 다른 버퍼와 독립적으로 실행되는 별도의 동물입니다. "시작할 때 별도의 스피드 바 버퍼를 활성화하려면 어떻게해야합니까?" 그렇다면 다음 파일 (speedbar)에서 다음 과 같은 간단한 것이있을 것입니다..emacs(require..)
lawlist

기능은 시작시로드시기를 세밀하게 제어, 거기에 일반적으로 사용 고리 3 개는 - before-init-hook, after-init-hook하고 emacs-startup-hook. 저는 개인적으로 좋아합니다 emacs-startup-hook– 예를 들어,(add-hook 'emacs-startup-hook (lambda () (function-one) (function-two) (setq ...) (message "hello-world") ))
법률가

1
감사합니다. 내 질문은 "동일한 이맥스 창에서 스피드 바 버퍼를 활성화하는 방법"입니다. .emacs에 (스피드 바)를 추가하면 스피드 바와 이맥스에 대한 두 개의 다른 창이 나타납니다. 두 번째 응답은 훨씬 명확 해졌습니다. (speedbar) 대신에 (sr-speedbar-open) 그렇게하면 스피드 바가 동일한 창에 표시됩니다. .emacs에 추가 (sr-speedbar-open)라고 말하면 응답 할 수 있다면 정답으로 받아 들일 수 있습니다. 도와 주셔서 감사합니다
doon

답변:


3

한 가지 방법은 추가하는 것입니다 (sr-speedbar-open).emacs코드의 라인 아래 파일 (load "~/emacs-config/sr-speedbar").

두 번째 방법은 after-init-hook또는 내부를 사용하여 후크 내부의 항목을 실행하기 전에 emacs-startup-hook전체 .emacs파일을로드 할 수 있도록하는 것 입니다. 다음 방법을 사용하여 후크에 추가 기능 또는 설정을 추가 할 수 있습니다.

(add-hook 'emacs-startup-hook (lambda ()
  (sr-speedbar-open)
  ))
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.