R은 리습계열의 방언에서 출발했다는 이야기가 있습니다. 그래서 인지 정말 놀라울 정도로 이맥스(Emacs)와 잘붙습니다. 게다가 이맥스(Emacs) 와 잘 붙을 수 있게 해주는 모듈이 요즘 빅데이타 의 붐을 타고 계속해서 업데이트 되고 있습니다. 


ESS (Emacs Speaks Statistics) 는 참으로 멋진 줄임말이죠? 이 패키지 모듈을 쓰면 이맥스 상에서 완벽하게 R 과 함게 동작시킬 수가 있습니다. 다만 항상 이런것을 이용할 때의 문제점이 있습니다. 바로 인코딩 문제죠 한글을 입력하면 상태창에서 한글이 완벽하게 깨집니다. 방법은 간단합니다. 


.emacs 파일에 다음과 같은 부분을 추가해주면 됩니다. 




(add-hook 'ess-R-post-run-hook

          (lambda () (set-buffer-process-coding-system

                       'utf-8-unix 'utf-8-unix)))


그리고 이맥스를 재시작하면 깔끔하게 해결이 됩니다. 


추가로 library 명령을 써서 패키지를 로딩하고 나면 한글이 깨지는 경우가 발생합니다. 골치가 아프죠. -ㅅ- 저 같은 경우에는 


library(sqldf) 


를 쓰는 경우에 발생했습니다.  몇군데를 알아봤지만 이게 버그인건지 이맥스 자체의 문제인지는 알아보기 힘들더군요. 단지 interactive R 상에서 


Sys.setlocale ("LC_ALL", "ko_KR.UTF-8")


를 실행해주니 다시 돌아오더군요. 


Emacs 상에서 파일의 인코딩을 (주로 Euc-kr 과 Utf-8 사이의 변경) 변경하는 방법에 관한 이야기 입니다. 

언젠가는 정리해야지 마음만 먹고 있다가 결국 정리하게 되는군요.

File Dired 모드 (C-xC-f 를 누르고 미니버퍼에 디렉토리에 보이는 상태에서 C-d 누르면 됨) 에서 다음에 불러들일 커맨드를 그 파일이 저장되어 있는 인코딩으로 지정해준다. (만약 파일이 euc-kr 로 저장되어 있다면)
 

 C-x RET c <RET> euc-kr 



이렇게 입력하고 다음에 불러들일 파일을 <RET> 을 입력해서 불러들이면 위에 지정한 인코딩(Euc-kr) 으로 파일을 불러들입니다. 

 

        C-x RET f <RET> utf-8 


이렇게 입력하면 지금 불려져 있는 파일을 인코딩을 변경하여 저장하라는 명령입니다. 현재 euc-kr 로 불러들인 파일을 utf-8 으로 저장하겠군요.  


 

+ Recent posts