2011년 12월 21일 수요일

Vim으로 git commit 메시지 작성 시 오류

좀 제한적인 환경에서만 발생하는 문제다. 증상부터 이야기 하자면, git commit으로 커밋 메시지를 vi 혹은 vim으로 작성하고 :wq를 통해 커밋을 하려는데 다음과 같은 오류가 발생한다.
error: There was a problem with the editor 'vi'
이 문제의 원인은 vim이 종료코드로 0(정상)이 아닌 1을 반환했기 때문이다. 단순하게 확인하기 위해 vim을 실행시키고 바로 종료시킨 후 echo $? 커맨드로 종료코드를 확인했을 때 0이 아닌 다른 값이 표시된다면 이 문제가 발생 할 수 있다.

2011년 11월 11일 금요일

[Emacs] 현재 라인 잘라내기/복사하기

Emacs에서 현재 커서가 위치하고 있는 라인을 복사하려면 일단 커서를 제일 앞으로 이동(C-a)한 후 영역선택을 켜고(C-SPC) 라인 끝으로 이동(C-e)해서 복사(M-w)하는 복잡한(?) 과정을 거쳐야 한다.

Emacs는 무한확장이 가능하다! 즉, 좀 더 간편히 하기 위해 Emacs의 기능을 수정할 수 있다. 아래 스크립트를 실행시키고 난 뒤에는 영역 선택 없이 M-w 키를 누르면 바로 현재 라인이 복사가 되어 킬링(kill-ring)에 들어간다.

2011년 11월 10일 목요일

[Emacs] Smart Beginning of Line

이클립스 등에서는 Home키를 누르면 커서를 해당 라인의 제일 앞으로 이동하게 되는데, 만약 라인이 들여쓰기가 되어있다면 들여쓰기 된 이후의 위치로 이동하게 된다. 굉장히 단순한 기능이지만 편할 때가 많은데 Emacs의 기본 라인 앞으로 이동하기 키(C-a 등)는 이런 기능이 지원되지 않는다. 그렇다면 이 기능을 만들어 보면 된다. (Emacs 다운 생각 -_-)

2011년 11월 9일 수요일

[Emacs] 바이트컴파일 시 경고 숨기기

Emacs로 elisp 코드를 바이트컴파일 할 때 나오는 경고(Warning)를 숨기려면 다음 설정 코드를 초기화 스크립트(.emacs)에 추가하거나 바이트컴파일 전에 별도로 실행시키면 된다.

2011년 11월 2일 수요일

Tagr: 맥 용 MP3 태그 편집기

예전부터 쓰던 Tags가 어디에 있는지 찾지 못 하다가 발견한 것이 Tagr. 이름이 바뀐 것 같다. 어쨌든 단순히 설명하자면 Mac OS X용 멀티 MP3 파일을 지원하는 ID3 Tag 에디터.

한국 앱스토어 게임 카테고리 등장

[관련 기사] 애플 오늘부터 앱스토어 게임 카테고리 전격개방

몇 일 전 부터 수요일 쯤 게임 카테고리가 개방 될거라는 뉴스가 떠돌더니 정확하게 오늘 한국 애플 앱스토어의 게임 카테고리가 열렸다.

2011년 10월 31일 월요일

[Emacs] shell-command-on-region

shell-command-on-region 함수는 이름 대로 Emacs 버퍼 상의 내용을 특정 쉘 유틸리티로 던져(파이프)서 그 출력을 새로운 버퍼에 출력해 주는 함수다.

UNIX의 철학이 섞여있는 글이 될 것 같다. 윈도우를 선호하는 사용자가 많지만 아직도 구식인 UNIX(혹은 UNIX 클론)가 왜 대단한가에 대해서 한 가지 설득이 가능할지도 모르겠다.

2011년 10월 27일 목요일

[Vim] 탭 키로 자동완성 SuperTab

계속해서 쓰는 Vim 자동완성 플러그인 이야기. 이번엔 SuperTab이라는 물건을 소개한다.

http://www.vim.org/scripts/script.php?script_id=1643

'슈퍼'라는 이름 때문에 뭔가 대단한 것 처럼 보이는데... 뭐 개인적으론 좋은 기능이라고 생각한다. 그냥 타이핑 도중 탭 키를 누르면 자동완성을 해 주거나 등의 기능을 제공한다. 다르게 말하자면, TAB키에 Ctrl-N 키의 기능을 부여하는 단순한 기능이다.