· 톺아보기

PC/모바일

macOS에서 리눅스용 아래아한글 베타 설치하기 (업데이트)

김원철 · · 수정

조회 7,567 · 공감 2 · 댓글 7


macOS 및 기타 환경은 오늘자 최신 버전을 기준으로 합니다.


1. 도커 설치


설치 방법은 여러 가지가 있으니 검색해 보시고, 개인적으로 homebrew를 사용하는 방법을 선호합니다:

brew cask install docker


도커 설치하는 것부터 뭔 소린지 모르겠을 수 있는데, 리눅스 잘 모르는 사람에게는 어려운 것 맞습니다. 누구나 따라할 수 있게 설명하려면 배보다 배꼽이 커질 수 있으므로 대략 생략.


2. XQuartz 설치


리눅스의 GUI 환경인 X11을 맥OS에서 구현할 수 있게 해주는 앱입니다. 역시 homebrew 사용하시면 편합니다:

brew cask install xquartz


3. socat 설치 및 실행


리눅스용 GUI 앱을 실행하면서 화면을 맥으로 쏴주는 커맨드라인 프로그램입니다.

역시 homebrew를 사용하면:

brew install socat


4. 리눅스용 아래아한글 도커 이미지 생성


아래 링크를 보고 따라합니다:

https://hamonikr.org/Free_Board/83229


본문 중 사소한 오류가 있는 듯한데,


sudo docker build --tag test .


요렇게 하지 마시고,


sudo docker build --tag hwp .


요렇게 하세요. 

주의1: 본문에도 나오지만, hwp옆에 스페이스바와 점이 있는 것을 잊지 마세요.

주의2: 도커 이미지만 생성하고 실행 스크립트는 다른 걸 쓰셔야 합니다.


5. socat 실행


터미널을 열어서 아래 명령을 실행합니다:


socat TCP-LISTEN:6000,reuseaddr,fork UNIX-CLIENT:\"$DISPLAY\"


터미널이 계속 실행중인 상태이므로 앞으로 터미널 명령어를 쓰려면 CMD+N으로 새 창을 열어야 합니다. 이거 백그라운드로 실행할 방법이 있지 싶은데 제가 배움이 짧아서 모르겠습니다. 저는 그냥 부팅할 때 시작 프로그램으로 하나 만들어서 등록했습니다.


6. 아래아 한글 실행 스크립트


docker와 xquartz가 실행 중인지 먼저 확인하세요. xquartz는 필요하면 자동으로 실행되는데, 처음에는 그게 안 됐던 것 같기도 하고... 암튼 확실하게 하려면 먼저 실행 중이면 좋아요.


docker run \

    --rm -it -d --name hwp \

    -v $HOME:/home/hwp \

    -e DISPLAY=host.docker.internal:0 \

    -e "GTK_IM_MODULE=nimf" \

    -e "XMODIFIERS=@im=nimf" \

    -e "QT_IM_MODULE=nimf" \

    -e "LANG=ko_KR.UTF-8" \

    -e "LANGUAGE=ko_KR.UTF-8" \

    hwp /opt/hnc/hoffice11/Bin/hwp


이건 스크립트를 보기 편하게 만든 건데, 뭔 소린지 모르겠으면 그냥 터미널 열어서 아래의 한 줄짜리 명령을 실행합니다:


docker run --rm -it -d --name hwp -v $HOME:/home/hwp -e DISPLAY=host.docker.internal:0 -e "GTK_IM_MODULE=nimf" -e "XMODIFIERS=@im=nimf" -e "QT_IM_MODULE=nimf" -e "LANG=ko_KR.UTF-8" -e "LANGUAGE=ko_KR.UTF-8" hwp /opt/hnc/hoffice11/Bin/hwp


여기까지 했으면 아래아한글이 실행되어야 정상입니다.


7. 문제점


1) 한글 입력이 안 됩니다. 한영 전환은 Ctrl+Space 입니다. 그런데 레이아웃이 이상하고 초중종성 조합이 제대로 안 되는 등 실사용 가능하지 않습니다. 나는 세벌식 자판 쓰고 싶은데 어떻게 하는 건지;

메모장에 한글을 입력해서 복붙하는 건 가능합니다. CMD+V가 아닌 Ctrl+V 하셔야 복붙이 되는 점 유의하세요.


2) docker와 socat을 먼저 실행하는 걸 스크립트에 통합하면 좋을 텐데, 제가 배움이 짧아서 잘 모르겠습니다.


3) 실행 스크립트를 앱으로 만들어서 hwp 확장자를 연결하면 좋을 텐데, 역시 방법을 모르겠습니다. 스크립트 마지막 줄 뒤에 '$1'을 넣어 봤는데 안 되더라고요. 걍 실행한 다음 불러오기 눌러야 합니다;


※ 업데이트:


1. 아래아한글 단축키 사용


: XQuartz 환경설정에서 "Option keys send Alt_L and Alt_R" 옵션을 체크하시면 아래아한글 단축키를 사용할 수 있습니다.



2. 아래아한글+nimf 환경설정 파일과 맥 환경 파일 분리


: 이것저것 만져보다 보니까 두 가지가 부딛히는 것 같더라고요. 아래아한글 실행 스크립트에서 옵션을 이런 식으로 해주시면 해결됩니다:


docker run \

    --rm -it -d --name hwp \

    -v $HOME/Applications/hnc:/home/hwp \


이렇게 옵션을 주면 아래아한글 관련 각종 환경설정 파일이 로컬 맥의 $HOME/Applications/hnc 디렉토리에 저장됩니다. (폴더를 미리 만들어 주셔야 합니다.)

그리고 아래아한글 문서를 저장하거나 불러올 때 이 디렉토리가 기본값이 됩니다.



3. nimf 환경설정 안 되는 문제 해결


: 아래아한글 도커 이미지를 생성할 때 dbus-x11 패키지를 설정해야 합니다.


Dockerfile 해당 부분 예시:

echo "님프 설치" && \

apt install dbus-x11 && \

apt install -y curl && \


그리고 아래아한글 실행 상태에서 터미널 명령을 이렇게 해주시면 설정창이 뜹니다. 


docker exec -it hwp nimf-settings


dbus-x11 패키지가 설치되지 않으면 설정을 바꾸자마자 원래대로 돌아가 버리니 애초에 도커 이미지 만들 때 이걸 챙겨야 합니다.



4. 한글 키보드 레이아웃 꼬인 문제


: 해결 못했습니다...


우분투 리눅스 데스크탑을 새로 만들어서 거기에 아래아한글 깔아 보니 멀쩡하게 잘만 됩니다. 그런데 맥에서 그 리눅스에 SSH 접속하면 마찬가지로 한글 레이아웃이 꼬입니다. 


댓글 7

  1. 에버리치 · · 공감 3
    한글에서 한글안되는건 너무 치명적이네요 ㅎㅎ
  2. 김원철 ·
    「@주황고양이*hijae*님」
    도커 이미지에 nimf가 포함되어 있습니다. 그런데 한글 입력이 안 되는 듯해서 실행 스크립트에서 해당 부분을 빼버렸습니다. 삭제한 해당 부분:
    -e "GTK_IM_MODULE=nimf" \
    -e "XMODIFIERS=@im=nimf" \
    -e "QT_IM_MODULE=nimf" \
  3. 꼬마신풍 ·
    이렇게 정리까지..!! 한글에서 한글 되는것을 찾아봐야겠네요
  4. *종이상자* ·
    지난번에 쿠분투에 설치했을 때 미처 확인을 못했는데, Qt 기반의 프로그램임에도 불구하고 Gtk 환경에서만 한글 입력이 되는 것 같습니다.
    저의 경우 쿠분투 20.04에 nimf를 설치했는데도 작동하지 않더군요.
  5. NeverEnd ·
    @*종이상자*님 다른곳의 댓글을.보니 한글에 번들된 qt가 입력기와 호환이 안되는 것 처럼 보이더군요.
  6. 김원철 · · 공감 1
    「@주황고양이*hijae*님」
    @꼬마신풍님
    @*종이상자*님
    @NeverEnd님

    제가 한영 전환 단축키를 몰랐었네요. Ctrl+Space 하니까 한글로 바뀝니다. 그런데 레이아웃이 이상하고 초중종성 조합이 제대로 안 되는 등 실사용 가능하지 않습니다. 나는 세벌식 자판 쓰고 싶은데 어떻게 하는 건지;
  7. 꼬마신풍 ·
    @김원철님 좋은 소식과 안좋은 소식이 동시에 오는군요..ㅠ 아쉽습니다..

팁과강좌 최근 글

팁과강좌 목록 더 보기