리눅스에서 한국어 설정이 잘 된 경우 사용자의 home 디렉토리 아래에 있는 8개의 표준 폴더(바탕화면, 문서, 다운로드, 음악, 사진, 공개, 서식, 비디오)의 이름 또한 한글로 설정된다. 그냥 사용하기에는 별 문제가 없지만, 터미널을 자주 사용하면서 해당 폴더들로의 접근이 필요한 경우 한/영 변환을 해주어야 하는데, 이게 좀 귀찮다. 해서 폴더 이름들을 영문으로 변환하는 방법을 검색해보니……

출처 : http://wiki.kldp.org/wiki.php/DebianInstallationQuickNote#s-3.6

한글명 → 영문명 변경시

$ export LANG=C; xdg-user-dirs-gtk-update


영문명 → 한글명 복원시

$ echo “C” > ~/.config/user-dirs.locale
$ export LANG=ko_KR.utf8; xdg-user-dirs-gtk-update


※ 위에서, export LANG=C 명령이 사용된 이후에는 터미널에서 한글 표시가 되지 않으므로, 폴더 이름들 변경한 이후에 아래 명령으로 원래의 터미널 locale로 돌려놓아야 함.

$ export LANG=ko_KR.utf8


[EDIT] Ubuntu 12.04 LTS 정식릴리즈에서는 위 내용만으로 변경이 가능하므로 아래 내용은 무시해도 좋음.



Trouble :

위와 같은 방법으로 일반적인 환경의 리눅스에서는 쉽게 변경이 가능하나, 유독 Ubuntu Unity 환경에서만 위 명령이 제대로 동작하지 않는 경향이 있는 듯 하다. 수많은 경우의 수를 두고서 테스트 해본 결과는, 시스템 locale이 바뀌어야 한다는 것.


Shooting :

해서 다음과 같은 방법으로 변경하니 잘 적용이 되었다.

<변경전 폴더들 이름>

시스템 설정 → 언어 → 우선순위 언어를 English 로 변경.
로그아웃 → 재 로그인

재 로그인 후 다음과 같은 창이 뜨는데, 여기서 Don’t ask me this againUncheck 상태로 두고, Update Names 버튼을 클릭해서 폴더명을 전부 영어로 변경해준다.

변경한 후 폴더들을 보면 다음과 같은데, ‘사진’ 폴더와 ‘Pictures’ 폴더가 공존하는 것은, ‘사진’ 폴더에 사용자가 저장한 파일이 있기 때문에 제거되지 않고 남아있는 것. 하지만 시스템에서 사용되는 폴더는 ‘Pictures’ 으로 지정된 상태이다. 즉, 이름 변경하는 방식이 기존 언어의 폴더들을 삭제하고 변경된 언어로 사용자 폴더를 생성한 후 시스템에서 이를 사용하도록 설정되는 듯 하다. 제대로 변경을 완료하려면 ‘사진’ 폴더의 내용물들을 모두 ‘Pictures’ 폴더로 옮기고 ‘사진’ 폴더는 삭제해야 한다. (다른 폴더들에 데이터가 있었다면 마찬가지 방식으로 ‘한글명’ 폴더들을 삭제해야 함)

기존 언어로 된 폴더들을 위 그림과 같이 정리한 후, 다시……

System Settings → Language Support → 우선순위 언어를 ‘한국어’로 변경.
여기서 아래쪽에 한글입력기도 자신이 사용하는 것으로 지정.
(ibus 사용시 Unity 2D에서는 별 문제가 없었는데, Unity 3D에서는 한글 띄어쓰기 문제가 발생해서 결국에는 인기쟁이 nabi 한글입력기를 사용하게 됨. 현재는 해결되어 사용에 문제가 없음.)

로그아웃 → 재 로그인 

재로그인하면 이번에는 영문으로 된 표준 폴더 이름들을 한글로 변경하겠느냐는 창이 뜨는데, 이번에는 ‘다시 묻지 않기’를 Check 하고, ‘예전 이름 유지’ 버튼을 클릭해서 설정을 마무리 한다.

좌측 메뉴의 ‘내 폴더’와 ‘바탕 화면’은 여전히 유지되고 있지만 신경쓰지 않아도 되고, 우측의 실제 표준 폴더들의 이름은 ‘한국어’ 환경에서도 영문으로 설정되어 있는 것을 확인할 수 있다.

여기서 ‘다시 묻지 않기’를 체크하게 되면 ~/.config/user-dirs.locale 파일이 제거되고, 이후부터는 시스템 언어를 변경하고 재 로그인해도 위의 창이 뜨지 않는다. 따라서, 표준 폴더의 표시 언어를 다시 변경하고 싶을 때에는……

$ echo “변경전(현재)언어” > ~/.config/user-dirs.locale

위 명령으로 locale 파일을 먼저 만들어 준 후에 위의 방법과 마찬가지로 시스템 locale을 변경하고 재 로그인하는 과정을 진행하면 된다. (변경전언어 = C 또는 ko_KR 또는 en_US 등이 올 수 있다)

사실, 위 과정들을 종합해보면...
사용자가 직접 변경할 언어의 폴더들을 만들고, 데이터 옮기고, user-dirs.dirs 파일과 user-dirs.locale 파일들 적절히 설정하는 등으로 하면 동일한 과정이 되지 않을까 하는 생각이 들기는 하는데, 다만 한가지 위에서 처음에 설명한 시스템 locale 변경 방식과 동일하게 설정이 되려면, ‘책갈피’는 수동으로 변경작업을 해주어야 할 것으로 보인다. 사실 이 글을 쓰기 전에는 수동으로 변경 시 책갈피가 꼬여버리는 현상이 있어서 시스템 locale 변경 방식을 생각하게 되었는데, 쓰는 도중에 보니 ‘책갈피 편집’이라는 메뉴가 따로 있더라는… (하지만, 해보지는 않았음~ ^^;)

단, 수동으로 작업 할 경우 설정이 잘못되면 모든 폴더들의 위치가 home 디렉토리로 지정되는 불상사가 발생할 수 있으니 주의~!!! (이 경우도 설정을 다시 잘만 해주면 원래대로 돌릴 수는 있음)

어쨌든, xdg-user-dirs-gtk-update 명령이 제대로 먹지 않아서 발생하는 문제는 해결~!!



Posted by MorningT