버퍼

버퍼란 다른 에디터에서 “워크스페이스” 혹은 “문서(도큐멘트)“라고 부르는 것과 굉장히 비슷하다. 버퍼는 텍스트 혹은 이미지를 포함할 수 있다. 대부분의 경우 버퍼의 내용은 파일의 내용에서 오게 된다. - 파일이름을 알기 위해서 ‘C-h v buffer-file-name’ 명령을 사용한다. 이맥스는 ‘find-file’명령어를 실행하기 위해 ‘C-x C-f’ 키를 입력하였을 때, 당신이 원하는 파일을 열고, 그 파일 안의 내용을 그 파일과 같은 이름을 가진 버퍼 안에 집어넣는다. 당신은 이맥스에서 파일을 편집하는 게 아닌 버퍼를 편집한다고 생각하면 된다. 당신이 버퍼를 저장할 때, 변경 사항들이 파일에 반영이 된다. 버퍼는 파일에 없는 내용들도 포함할 수 있다. ‘C-x C-b’ 명령어를 사용해서 버퍼의 목록을 볼수 있다. 그 자신이 버퍼이기도 한 이 리스트는 “BufferList” 라고 불리며, 이 리스트 버퍼는 어떤 파일에도 속해있지 않다. 통상적으로, 별표 ( ‘*’ )를 이름 앞에 붙이고 있는 버퍼는 파일과 연결되어 있지 않다 ( 하지만 그렇다고 버퍼 내용을 파일에 저장할 수 없다는 이야기는 아니다. ) 만약 이맥스를 종료할 때 저장하지 않은 변경 사항이 있으면 이 버퍼들은 저장할거냐고 물어보지 않고 바로 삭제되어버린다. 공백으로 시작되는 이름을 가진 버퍼들은 대부분의 명령에서 무시당한다. 이 버퍼들은 보통의 경우 당신이 보고 싶어하지 않는 내부 버퍼이다. 버퍼는 창에 출력되어 보여진다. 당신은 같은 버퍼를 출력하는 한 개 이상의 창을 열 수 있다. ‘C-x 2’ 명령은 현재 창을 두 개로 나눈다. 이렇게 나누어진 두개의 창은 같은 버퍼를 보여준다.