Emacs 설치 및 사용법

 

CentOS7 기준 설치 방법

  • 매우 간단하다. 아래 명령어 실행.
    $ yum install emacs
    

Kali Linux에서 설치가 안 될 시

  • /etc/apt/sources.list 파일에 아래 코드를 추가한다.
    deb http://http.kali.org/kali kali-rolling main contrib non-free
    # For source package access, uncomment the following line
    # deb-src http://http.kali.org/kali kali-rolling main contrib non-free
    deb http://http.kali.org/kali sana main non-free contrib
    deb http://security.kali.org/kali-security sana/updates main contrib non-free
    # For source package access, uncomment the following line
    # deb-src http://http.kali.org/kali sana main non-free contrib
    # deb-src http://security.kali.org/kali-security sana/updates main contrib non-free
    deb http://old.kali.org/kali moto main non-free contrib
    # For source package access, uncomment the following line
    # deb-src http://old.kali.org/kali moto main non-free contrib
    
  • 이후 pat-get update를 해주고 다시 설치를 시도해보면 된다. apt-get install emacs


튜토리얼 따라하기

Ctrl+h를 누르고 t를 누른다. 앞으로 C-h t라는 형식으로 표기 할 것이다. M은 ALT를 의미한다.

이동

  • 화면 이동: C-v(다음 화면), M-v(이전 화면), C-l(커서를 페이지의 앞, 중간, 마지막으로 이동)
  • 커서 이동: C-p(previous, 위), C-n(next, 아래, C-b(back, 왼쪽), C-f(forward, 오른쪽)
  • 문자 단위 커서 이동: M-b(왼쪽), M-f(오른쪽)
  • 줄의 시작, 끝으로 이동: C-a, C-e
  • 문장의 시작, 끝으로 이동: M-a, M-e
  • 문서 시작, 끝으로 이동: M-<, M->
  • 영역 선택(vim visual mode와 동일): C-@ or C-SPC를 친 후 커서 이동.
  • 특정 n 라인으로 이동: A-x goto-line n

기본 작동

  • 종료: C-x C-c
  • 명령어 반복: C-u 횟수 명령어 (ex, C-u 10 C-n : 10줄 아래로 이동)
  • undo: C-/, C-x u, C-_
    • C-x는 보통 특별한 명령어를 부르는 명령어다.
  • redo: C-g C-/, C-g C-_
  • 파일 저장: C-x C-s
    • y: 현재 버퍼 저장, 남은 버퍼들에 대해서도 묻기.
    • n: 현재 버퍼 저장 x, 남은 버퍼들에 대해서도 묻기.
    • !: 현재 버퍼 저장, 다른 묻기 x.
    • q: 저장 없이 종료.
    • .: Save this buffer, then exit save-some-buffers without even asking about other buffers.
    • C-r: View the buffer that you are currently being asked about. When you exit View mode, you get back to save-some-buffers, which asks the question again.
    • d: Diff the buffer against its corresponding file, so you can see what changes you would be saving. This calls the command diff-buffer-with-file (see Comparing Files).
    • C-h: 도움말 창 보기.
  • 파일 다른 이름으로 저장: C-x C-w
  • 임시로 emacs 나가기: C-z
  • 나간 상태에서 다시 들어오기: fg, %emacs

삭제

  • 한 글자씩 지우기: <Delete>(back space), del, C-d
  • 한 단어씩 지우기: M-d, M-<Delete>
  • 한 줄씩 지우기: C-k, M-k
  • 잘라내기: (영역 선택 C-SPC) C-w
  • 복사: (영역 선택 C-SPC) M-w

삽입

  • 붙여넣기: C-y (y는 yank의 줄임말로 잡아 당기다의 의미)
    • C-y를 한 후 M-y를 하면 이전에 오려내기 했던 것들의 히스토리를 볼 수 있다. 거기서 원하는 것을 선택 후 엔터 치면 붙여넣기 완료.
  • 커서 이동 없이 빈 줄 삽입: C-o
  • 커서를 아래로 이동 후 빈 줄 삽입: C-j

buffer 사용하기

  • 파일 찾기: C-x C-f
  • 버퍼 리스트: C-x C-b
  • 버퍼 리스트 중에서 파일 변경: C-x b 후 움직이고 <Return>(엔터)
  • 버퍼 닫기: C-x k
  • 임시 저장된 파일로 파일 복구: M-x recover-this-file <Return>

Shell 이용하기

  • 간단한 쉘 명령: M-!, ESC-!

프레임

  • 상하로 프레임 분리: C-x 2
  • 프레임 상 하 크기 조절: C-x ^,
  • 좌우로 프레임 분리: C-x 3
  • 프레임 좌 우 크기 조절: C-x {, C-x } (보통 C-u와 조합하여 사용)
  • 프레임 크기 일정하게 만들기: C-x +
  • 현재 프레임만 남기고 하나의 창으로 만들기: C-x 1
  • 프레임 이동: C-x o

기타

  • 커서 이후 모든 글 바꾸기: M-x 하고 repl s<TAB><Return>.
  • 임시 저장 파일로 파일 복구 시키기: M-x recover-file<Return>

Mode Line 설명

-UUk:**--F1 TUTORIAL.ko 63% L685 (Fundamental)------------------------

  • 파일이름과 현재 위치, Line number수가 있고 FUndamental은 현재 Major Mode를 의미한다.
  • Major Mode에는 Lips mode, Text mode, Java mode, C mode 등이 있다.
  • Minor Mode에는 auto-fill-mode,
  • **는 파일이 수정되었을때 표시되는 것이고 —-로 되어 있으면 파일이 원본 상태라는 의미이다.
  • Mode 변경: M-x text-mode
  • Mode manual 보기: C-h m

단락 조절

  • window 문장 길이 제한 설정: C-x f
  • 서로 다른 단락 길이를 하나로 붙이기: M-q

찾기

  • 검색 명령: C-s(다음 방향으로 검색), C-r(이전 방향으로 검색)
  • 현재 커서 뒤 단어 검색: C-s C-w
  • 단어 검색: M-s
  • 단어 찾아 바꾸기: M-x replace-string<Return>, M-%

마크

  • 한 문단 마크지정: A-h, C-sp A-h
  • 마크 지정 후 주석 처리:

디렉토리 모드

  • 디렉토리 모드 진입: C-x d