디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

[정보글] 이맥스 개종 가이드 (vim 신도 환영) - 1

커헠갤로그로 이동합니다. 2017.06.25 18:43:44
조회 5353 추천 16 댓글 21
														


viewimage.php?id=3dafdf21f7d335ab67b1d1&no=29bcc427b28b77a16fb3dab004c86b6fdc843afe757eec57bd7102ec3efadaa9e434adee09548247f638ccde35296147d4c28624d80424516517ddc338




viewimage.php?id=3dafdf21f7d335ab67b1d1&no=29bcc427b28b77a16fb3dab004c86b6fdc843afe757eec57bd7102ec3efadaa9e434adee09548247f638ccde35296147d4c0de2e8b0722573917c7dd38




"이맥스는 사용자와 함께 진화하는 에디터다"

- 야이미친



<이맥스 개종 가이드>


이맥스는 처음에 접근 장벽이 매우 높은걸로 유명합니다

vim 과 다르게 이맥스를 쓰는 사람들은 이맥스 세팅하느라 바빠서 초보용 강좌를 안 쓰거든요

(저도 방금전까지 세팅하다가 오늘 세팅은 충분히 한 것 같아서 글 쓰는 중...)


일단 많은  vim 사용자들은 자기가 대체 왜 이맥스를 써야되는지 묻습니다.

이 강좌를 보면.. 대강 알게 될듯...?


하여튼 이 튜토리얼은 이맥스 시작 과정에서 알아야될 것들을 다룹니다.



먼저 이맥스를 설치합시다.

이맥스는 vim과는 다르게  커맨드라인 에디터가 아닙니다.

gui 에디터고요, 따라서 커맨드라인을 사용하지 않아도 됩니다.


현재 윈도우, 리눅스, OSX 모두 이맥스가 지원하고 있고 윈도우 이맥스도 쓸만한데 대신 고생을 조금 더 합니다

(우지챠는 윈도우 이맥스 출신임...)


순정 이맥스를 처음 설치하면 (현재 메이저 버전이 25)


아래와 같은 화면을 볼 수 있습니다



viewimage.php?id=3dafdf21f7d335ab67b1d1&no=29bcc427b28b77a16fb3dab004c86b6fdc843afe757eec57bd7102ec3efadaa9e434adee09548247f638ccde35296147d4c4d22bde5070543617c7dd38


그리고 대다수의 사람들은 여기서 접습니다.

저도 처음에 이맥스 시도 했을 때 여기서 접었어요...

시발 뭐가 뭔지 알아야지

파일도 못 열겠으니 원;;



그래서 대다수의 사람들은 여기서부터 이맥스 공식 홈페이지로 갑니다


그리고 vim 경험이 있는 사람들은 단축키가 전부라는 것을 알고서 단축키를 외우기 시작합니다



viewimage.php?id=3dafdf21f7d335ab67b1d1&no=29bcc427b28b77a16fb3dab004c86b6fdc843afe757eec57bd7102ec3efadaa9e434adee09548247f638ccde35296147d4c48279d95777536517c7dd38



결론부터 얘기하면, 외우지 마세요


예전에 야이미친 형님한테 "이맥스 단축키랑 vim 단축키랑 비교하면 어떤가요?"


라고 질문했다가 이맥스 단축키들을 그대로 쓰는건 멍청한 짓이라고 비교를 못한다고 쿠사리 먹었습니다


네 외우지 마세요


그래도 저는 순정 단축키를 몇개 쓰고 있는데, 대강 소개를 하겠습니다.


이맥스에서 C-x 이런식으로 나와있는거는 대강 Ctrl + x 라는 뜻이고,


C-x b 라는거는 Ctrl + x 누른 다음에 b 를 누르라는 뜻입니다.


M-x 에서 M 은 메타키라고 해서, 예전에 이맥스 전용 키보드 (스페이스 캐댓 키보드)의 레거시인데,


오늘날 키보드에서 Alt 키입니다.



이맥스에서는 그래서 컨트롤과 알트키, 그리고 나머지 키들의 조합 + 그 다음에 누르는 키 의 조합으로 단축키들이 이루어져 있습니다.


제가 현재 사용하고 있는 것들은,


C-x C-f 

파일 탐색


C-x C-c

이맥스 종료


C-x C-s

현재 버퍼(문서) 저장


C-x b

버퍼 목록 띄우기


C-x 3

화면 양쪽으로 분할

(vim 에서 vsplit)


C-x 2

화면 위 아래로 분할

(vim에서 split)


C-x 0

현재 창 닫기 (닫기만 하는거지 버퍼를 죽이는건 아닙니다. 나중에 따로 설명함)


M-x

명령 입력하기


이 정도인듯



이맥스에 관해서 알아둬야될 간단한 이론들을 소개하자면,


일단 이맥스는 Lisp 기반입니다.


Emacs Lisp 라고 해서 Lisp의 한 방언을 스크립트 언어로 사용하고 있고,


사실 이맥스는 Emacs Lisp 가상 머신 위에서 돌아감


그래서 사실상 VM 과 비슷한 느낌이라고 보셔도 됩니다.


그렇다보니까 vim 같은 정적인 텍스트 에디터와는 다르게 굉장히 다이나믹한 환경이고,


우스겟소리로 "이맥스 유저들은 이맥스 운영체제와 리눅스라는 시스템 라이브러리를 사용한다"


라고 합니다.




실제로 이맥스는 apt-get 이나 pacman 처럼 전용 패키지 매니저를 사용하고 있습니다.


vim에서 plugin 이라고 하는걸 이맥스에서는 package 라고 부르는데,


package 들은 결국에는 그냥 스크립트 파일이고, vim 처럼 따로 랭귀지 서버 같은걸 돌리는 경우도 꽤 있습니다.




이맥스는 처음 키면, 리눅스는 ~/.emacs.d, 윈도우에서는 유저/.emacs.d/


에서 예전에는 .emacs 파일이였나 이걸 로드하고,


요즘은 init.el 이라는 파일이 있으면 그걸 로드합니다.


vim의 .vimrc 파일이랑 똑같은 개념이고요,


이맥스는 처음 키면 무조건 저 파일을 로드합니다.


그니까 일단 이맥스를 시작했으면 ~/.emacs.d/init.el 파일을 만듭시다.


그 다음에 아마 .emacs.d/elpa/ 경로에 있는 파일들을 읽는걸로 기억하는데,


여기는 패키지 매니저로 다운 받은 파일들이 들어가는 곳입니다. 




스크립트 파일을 읽으면 그게 Elisp 인터프리터에 올라가게 되고,


그 스크립트의 내용을 사용할 수 있습니다.


이맥스에서는 설정을 다른 방법으로 사용하지 않고 전부 Elisp 로 진행하게 됩니다.


다음 편에서 어떻게 하는지 보여드리도록 하고,


모든 기능들은 결국에는 Elisp 함수기 때문에,


M-x 로 명령어를 입력하면 사실 Elisp 함수를 호출하는거임


그래서 이맥스에서 하는 모든 행위들, 설정, 스크립트 작성 등등은 리습 프로그래밍임




하여튼 이맥스를 잘 쓰기 위해서는 이러한 이맥스 생태계를 이해하고 있어야됨


이걸 이해하면 잘 쓸 수 있음





다음 편에 계속

추천 비추천

16

고정닉 4

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 며느리, 사위되면 시댁, 처가에 잘할 것 같은 스타 운영자 25/10/13 - -
공지 프로그래밍 갤러리 이용 안내 [96] 운영자 20.09.28 48007 65
2896905 window linux mac 게이츠 토발즈 팀쿡 - 보수 진보 중도 타이밍뒷.통수한방(1.213) 12:27 0 0
2896904 전공자도 모르는 마법이 아니라 기본도 모르는 [4] ㅆㅇㅆ(124.216) 12:17 20 2
2896903 서울30년 넘게살아서 혜택이 도대체뭐지??쥐새끼마냥 실험만 당하고 [8] 타이밍뒷.통수한방(1.213) 11:28 22 0
2896902 혹시 전공자도 모르는 마법같은게 어디 따로 있다고 믿는건가 [2] ㅇㅇ갤로그로 이동합니다. 11:09 32 3
2896901 오늘 출근 안함 ㅋ [1] 루도그담당(118.235) 10:38 40 0
2896900 헤르미온느씨 아침햇살 사진 수정해드렸습니다 [3] 헬마스터갤로그로 이동합니다. 10:37 49 0
2896899 개발자하지마라 [2] ㅇㅇ(59.14) 09:44 63 0
2896898 개발 SM 취업하려면 혹시 사람인에 뭐라고 쳐야 알수있어? 프갤러(122.40) 09:42 20 0
2896897 나는 내가 일하고 싶을때만 일하려고 취업을 거부해! ㅇㅇ(211.234) 09:39 26 2
2896896 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ ♥덩냥이♥갤로그로 이동합니다. 09:29 27 0
2896895 반지의 제왕은 어쩌다 한 번은 봐도 두 번 세 번은 못보겠더라..ㅇㅅㅇ [2] 헤르 미온느갤로그로 이동합니다. 09:16 22 0
2896894 인텔 인공지능 인재교육 (~11/3) 프갤러(121.130) 09:16 34 0
2896893 아침햇살에 빛나는..ㅇㅅㅇ [4] 헤르 미온느갤로그로 이동합니다. 08:18 35 0
2896892 대통령이라면 역사와 외교안보에 있어서는 오른쪽이어야 한다 [2] chironpractor갤로그로 이동합니다. 08:16 44 1
2896890 태연 ㅇㅅㅇ 헤르 미온느갤로그로 이동합니다. 08:15 14 0
2896889 하루 한 번 헤르미온느 찬양 (시즌5) 헤르 미온느갤로그로 이동합니다. 08:14 27 0
2896888 김현지 파묘되자 광주소재 여고에 테러 메일 ㄷㅅㄷ 입틀막? [2] ♥덩냥이♥갤로그로 이동합니다. 08:11 37 0
2896886 김현지 파묘 ㄷㅅㄷ 찢두순 당선무효 될듯 ♥덩냥이♥갤로그로 이동합니다. 08:01 36 0
2896885 진정한 개발자가 되고 싶습니다 [6] 공기역학갤로그로 이동합니다. 07:56 49 0
2896884 특검을 특검하라 [2] chironpractor갤로그로 이동합니다. 07:47 28 0
2896883 cpu랑 메인보드 만들 사람 구합니다. 재현갤로그로 이동합니다. 07:27 23 0
2896882 홍석천 아저씨 드럼통 당하는거 아님? ㄷㅅㄷ [2] ♥덩냥이♥갤로그로 이동합니다. 07:21 45 0
2896881 이제 더 이상 못참겠다. 진짜 저질러야겠다. 프갤러(218.153) 07:21 26 0
2896880 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ ♥덩냥이♥갤로그로 이동합니다. 06:59 28 0
2896877 음기 충전 발명도둑잡기(118.235) 03:34 47 0
2896874 30대 후반 무경력 백수 직업추천 받습니다. [8] 프갤러(121.88) 03:13 130 0
2896870 새벽에 연락와서 이제 일어남. [3] ㅆㅇㅆ(124.216) 02:05 62 0
2896867 나는 클린 아키텍쳐보다 단순 포트 어댑터가 편한듯 [2] ㅆㅇㅆ(124.216) 01:59 47 0
2896861 단순 논문 재현 하는데 왜 이렇게 요구사항이 많은지 [3] ㅆㅇㅆ(124.216) 01:16 72 0
2896860 교수새끼들만 끼면 그냥 일이 복잡해지노 ㅆㅇㅆ(124.216) 01:15 47 0
2896859 미국 핵심산업 안보공급망 확보를 위한 투자가 늘겠구나.. hrin(220.120) 00:55 22 0
2896858 ❤✨☀⭐⚡☘⛩나님 소중합니당⛩☘⚡⭐☀✨❤ ♥덩냥이♥갤로그로 이동합니다. 00:50 56 0
2896856 글로벌 인재 포럼 참가 신청했다 hrin(220.120) 00:47 60 0
2896855 요즘은 웨스턴 디지털이 좋아 보이는구나 hrin(220.120) 00:46 41 0
2896853 재매이햄 부동산 규제 빡세네 [3] hrin(118.235) 00:39 55 1
2896852 코딩테스트가 이제 의미가 있나싶음 [2] 카드캡터체리갤로그로 이동합니다. 00:36 64 0
2896851 정말 화가 난다. 개미만도 못한 스스로가 너무 역겹다. ㅇㅇ(223.39) 00:34 25 0
2896850 모기 느낌.. ♥덩냥이♥갤로그로 이동합니다. 00:24 52 0
2896847 개발 때려치우고 전산직 갈려는데 뭐준비해야하냐? ㅇㅇ(220.77) 00:05 36 0
2896844 카카오 코테는 ㅈ랄맞은 듯 [1] 프갤러(110.13) 10.16 104 0
2896840 반지의 제왕 1편 마져 보는 중 [2] 발명도둑잡기(118.235) 10.16 41 0
2896838 객체지향 딱 알려준다. [1] 프갤러(211.234) 10.16 75 1
2896836 ㅎ2 ㅇㅅㅇ [1] 류류(210.123) 10.16 30 0
2896834 #인의#의리#낭만#검객 ♥덩냥이♥갤로그로 이동합니다. 10.16 28 0
2896833 디시 코드이그나이터 쓰네 프갤러(175.116) 10.16 25 0
2896832 AI 코딩, 내가 환장하는거. 프갤러(59.16) 10.16 39 0
2896831 양질의 일자리 vs 인재들의 생활방식 선호 [4] chironpractor갤로그로 이동합니다. 10.16 59 0
2896830 러스트가 길이고 진리고 생명이다. 프갤러(211.234) 10.16 22 1
2896829 극우 이 이기적인 놈들 나라가 망해도 좋다 이거냐? [2] ♥덩냥이♥갤로그로 이동합니다. 10.16 56 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2