· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Emacs Session Management

세션 관리

작업 버퍼 관리

Emacs에서 작업을 하던 도중 다음 날 다시 emacs로 어떤 파일을 편집했는지 기억이 가물 가물할 때가 많습니다. 작업 파일이 1~2개라면 큰 문제가 없으나 10개 이상 넘어가면 기억해 내는 것도 힘듭니다.

이럴 때 편리한 기능이 기대했던 것처럼 emacs에서 역시 기본으로 제공됩니다.
  • 먼저 ~/.emacs 환경 파일에 다음을 추가합니다.
(add-to-list 'desktop-globals-to-save 'file-name-history)  
(setq history-length 250)

;; emacs 21.3.50 이전 사용자
(desktop-load-default)
(desktop-read)
(setq desktop-enable t)

;; emacs 21.3.50 이상 사용자
(desktop-save-mode 1)
(desktop-read)
  • emacs를 실행합니다.
  • emacs에서 "M-x desktop-save"를 실행합니다.
    • "destop-save"명령에서 파일명을 지정하지 않으면 현재 디렉토리에 ".emacs.desktop"파일이 생성됩니다.
    • "desktop-save"명령은 버퍼 목록을 저장하는 파일을 생성하는 목적 외에 더이상 사용할 필요가 없습니다.
  • 이제 작업하려는 파일 몇가지를 열어 본 후 emacs를 종료합니다.
    • 종료할 때마다 자동으로 desktop-save가 실행되면서 작업 목록을 저장합니다.
  • 다시 emacs를 실행합니다.
이제 기존 작업 파일이 자동으로 열려 있는 것을 볼 수 있습니다.

emacs를 빠르게 시작하려면 작업 버퍼 목록을 자동으로 가져오지 않도록 "emacs --no-desktop"으로 실행합니다.

버퍼 목록 파일이 저장되지 않은 디렉토리에서 emacs를 시작한다면 버퍼 목록을 가져올 수 없습니다.

그외 몇가지 명령이 지원됩니다.
  • 작업 버퍼 관리 파일을 지우고 싶다면 "desktop-remove"를 사용합니다.
  • "*Messages*"버퍼를 제외한 모든 버퍼를 닫고 싶다면 "desktop-clear"를 사용합니다.
자세한 내용과 옵션은 [http]http://www.emacswiki.org/cgi-bin/wiki/DeskTop를 참고하기 바랍니다.

윈도우/프레임 상태 저장/복구

작업 버퍼 관리 만으로 만족할 순 없습니다.

언제나 emacs를 시작할 때마다 같은 크기 모습으로 윈도우는 하나만 열린 모습을 보게됩니다. X-window에서 작업한다면 여러 윈도우들과 프레임을 사용하던 마지막 작업 모습 그대로 복구하고 싶다는 생각을 자주 하게 됩니다.

운 없게도 기본 emacs에서 제공하는 패키지는 이런 기능을 제공하지 않습니다.

그러나 역시 불편의 발명의 어머니라고 했던가요. 누군가 이미 만들어 놓았습니다.

다음 두 파일을 다운받아 적절한 장소에 설치합니다. 설치 방법과 설정은 두 lisp 파일 상단에 자세하게 설명되어 있습니다.

데비안, 우분투 사용자라면 windows-el 패키지를 설치만으로 모든 작업 완료입니다.

emacs 에서 "C-c C-w C-r"키를 입력하거나 "win-resume-menu"를 실행하시면 윈도우 상태 저장/복구 메뉴를 볼 수 있습니다.

명령어를 입력하기 귀찮으시면 메뉴>Buffers>Windows 항목에서 원하는 기능을 선택하면 됩니다.

기타

세션 관리에 대한 자세한 정보나 같은 기능을 제공하는 프로그램들을 보려면 다음 사이트를 참고하기 바랍니다. 끝 -- bootmeta 작성



ID
Password
Join
Troglodytism does not necessarily imply a low cultural level.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2007-04-23 00:59:36
Processing time 0.0056 sec