Cygwin 설정

Cygwin 2017.01.11 11:31

Cygwin은 윈도우에서 Linux의 터미널을 쓸 수 있도록 해주는 GNU의 프로그램으로 유명합니다.

다운로드 및 설치는 Cygwin 다운로드 및 설치 (http://zeany.net/15)를 참조하세요.


설치가 완료되면 특별한 설정 없이도 바로 사용할 수 있으나 아주 약간 부족하여 그에 대한 설명을 남깁니다.



1. 화면 크기 조정


기본 화면의 크기는 80x24 정도로 되어 있는데, 작업을 하기에는 좀 답답합니다.

물론 마우스로 윈도우 크기를 조정할 수 있으나 매번 실행마다 하는 것보다 한 번 설정해 놓는 것이 편합니다.


1) 타이틀 부분에서 마우스 오른쪽 버튼을 클릭한 후 Options... 을 클릭합니다.



2) 좌측 메뉴의 Window 선택 후 Columns과 Rows를 원하는 값으로 변경한 후 Save 합니다.



이후 재시작하면 화면 크기가 변경되어 시작하는 것을 볼 수 있습니다.



2. ~/.bashrc 수정


Cygwin은 bash를 shell로 사용하기 때문에 ~/.bashrc를 편집해서 필요한 설정을 할 수 있습니다.

편집을 위해 vi ~/.bashrc 를 실행합니다.


1) alias rm='rm -i'


파일을 지우는 경우 매번 확인을 하는 편이 낫습니다. 기본으로는 확인 없이 지우도록 되어 있는데, 파일이 지워지는 경우 탐색기에서 지우는 것과 달리 휴지통으로 이동하지 않고 바로 사라지기 때문에 복원이 어렵습니다.


2) alias d:='cd /cygdrive/d'


cygwin에서 각각의 드라이브는 /cygdrive 아래 드라이브 이름의 디렉토리로 되어 있습니다.

매번 cd /cygdrive/d 로 찾아가는 것보다는 도스창처럼 d:를 입력했을 때 이동할 수 있도록 설정해 놓는 것이 편리합니다. c:에 대해서도 alias를 설정했으나 사실 cd 를 입력해서 바로 홈디렉토리로 이동하는 것이 개인적으로는 익숙합니다.


3) prompt


Cygwin terminal의 prompt를 수정하려면 PS1 변수를 export 하면 됩니다.

아래는 원래 프롬프트 (사용자@호스트 현재 디렉토리)와 제가 사용하는 프롬프트의 예입니다. (특별한 것은 없이 사용자@호스트가 너무 길어서 대신 제 아이디를 사용합니다.)


# Original

export PS1="\[\e]0;\w\a\]\n\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\n\$ "

# zeany

export PS1="\[\e]0;\w\a\]\n\[\e[32m\]zeany \[\e[33m\]\w\[\e[0m\]\n\$ "


4) CDPATH 설정 


만약 /cygdrive/d/Dev/workspace/tistory라는 디렉토리가 있는 경우 CDPATH에 /cygdrive/d/Dev/workspace 를 추가해 놓으면 cd tistory 명령으로 바로 /cygdrive/d/Dev/workspace/tistory로 이동할 수 있습니다.

 

편집을 마치고 Cygwin terminal을 닫은 후 다시 열거나 source ~/.bashrc 명령으로 설정값들을 로딩할 수 있습니다.



3. 한글이 깨지는 문제


특정 PC에서 한글이 깨지는 문제가 발생했습니다.

이에 대한 해결책으로 타이틀 영역 > 마우스 오른쪽 버튼 > Options... > Text 메뉴에서 Locale을 ko_KR로 Character set은 UTF-8로 설정하고 Save 후 반드시 Cygwin을 재시작하세요. (경험상 Apply로는 제대로 동작하지 않았습니다.)



ko_KR로하면 보통 euc-kr로 Character set을 해주지만 이런 경우 git commit -m "여기에 한글" 을 입력 후 엔터를 치는 경우 Cygwin에서 보일 때 한글이 깨지는 현상이 있었습니다. (Github에서 볼 때는 해당 커멘트의 한글이 제대로 보였습니다.)

  


Cygwin에 신규 패키지를 설치하려면 Cygwin에 신규 패치키 설치 (http://zeany.net/30) 를 참조하세요.




WRITTEN BY
zeany
이젠 기록하지 않으면 기억되지 않아서.. 이것저것 여기에 새겨 보려고 한다..

트랙백  0 , 댓글  0개가 달렸습니다.
secret