반응형


Windows에서는 한글 깨짐 현상이 덜 하다던데 Mac에서는 한글 깨짐현상에 대한 글이 자주 보인다.

Mac에서 발견된 한글 인코딩 문제로는 크게 세가지가 있다.


1. R edit 내 한글 인코딩

==> Mac 터미널 기본 어플에서 아래와 같은 명령어를 수행하면 한글 인코딩 설정이 되어 한글이 깨지지 않는다.

defaults write org.R-project.R force.LANG ko_KR.UTF-8



2. R에서 사용하는 그래프 라이브러리 사용 시 한글 깨짐

R 인코딩도 utf-8로 맞추어놨는데 뭐가 문제인지 아래와 같이 Quartz의 한글이 'ㅁ'로 깨져서 보이는 현상이 있다.




## 1. 터미널에 접속해서 .Rprofile 파일을 찾는다.

1
2
$touch ~/.Rprofile
$ open ~/.Rprofile
cs



## 2. .Profile 파일에 아래 내용을 추가한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
setHook(packageEvent("grDevices""onLoad"),
        function(...){
        if(capabilities("aqua"))
            grDevices::quartzFonts(
              sans =grDevices::quartzFont(rep("AppleGothic",4)),
              serif=grDevices::quartzFont(rep("AppleMyungjo",4)))
        grDevices::pdf.options(family="Korea1")
        grDevices::ps.options(family="Korea1")
        }
)
attach(NULL, name = "KoreaEnv")
assign("familyset_hook",
       function() {
            macfontdevs=c("quartz","quartz_off_screen")
            devname=strsplit(names(dev.cur()),":")[[1L]][1]
            if (capabilities("aqua"&&
                devname %in% macfontdevs)
                    par(family="sans")
       },
       pos="KoreaEnv")
setHook("plot.new", get("familyset_hook", pos="KoreaEnv"))
setHook("persp", get("familyset_hook", pos="KoreaEnv"))
 
cs



위 코드 긁어서 .Rprofile에 붙여넣으면 된당


## 적용 후 결과값!!!


3. 웹 크롤링으로 소스코드를 가져왔을 경우 한글 깨짐

이 경우가 참 답답한데.. 웹 크롤링으로 코딩된 부분을 제외하고 text 값만 가져오면 한글 인코딩 깨짐 현상이 없으나,

소스코드 모두 가져오는 경우 한글이 깨져서 보이는 현상이 있다..

왜 이런 현상이 발생하는지 구글링 해봐도 검색어가 적합하지 않은지 원하는 답을 찾기가 어려웠다.

과제 마감일이 얼마 남지 않아서 급한대로 윈도우에서 R을 설치하고 실행해봤더니

위 세 가지의 인코딩 설정을 하지 않고도 엄청 잘되더라^^ㅋ...

Mac-R-한글 이 세가지의 조합이 똥망인듯..

결국 윈도우에서 과제를 마무리하고 제출했다.



반응형