elisp
95% elisp(emacs lisp), 5% c code 로 작성 성능 및 동시성이 이슈. interpreter가 싱글 스레드로 작동함
buffer, window, frame
buffer
대부분의 편집기가 file 기반. emacs는 모든 file이 buffer임. 하지만 모든 buffer가 file은 아니다. emacs에서 buffer는 텍스트 편집 그 이상이다.
i/o 등의 작업에도 버퍼가 사용된다. help, scratch, 등등
emacs에서 buffer는 자료구조다.
따라서 실제 파일을 편집하는 것이 아니다. 이를 임시 버퍼로 복사하는 것
window
buffer는 window 안에 표시된다 window is just a tiled portion of the frame
frame
window는 buffer를 보여주기 위한 창. window는 frame으로 묶임.
편집
killing -> cutting yanking -> pasting copying -> saveing to the kill ring
- c+d: 라인 삭제
- undo: C-x u or C-_
mode
majore mode controls how buffers behave. each buffer will always have a major mode
패키지 관리
use-package
Directory Variable
EmacsWiki: Directory Variables