맥 윈도우 한글 자소 분리

맥과 윈도우 사용시 한글 자소 분리 현상을 대처하기 위한 방법을 확인하고 적어봄
검색을 통해보면 이런 저런 내용이 있고 정리 함.

한줄로 말하면
맥에서 압축 시 WinArchiver를 써야 하고 윈도우에서 압축 해제 시 반디집을 쓰자

OSX는 NFD(정규화 방식 D)형식 사용
    정준 분해
윈도우는 NFC(정규화 방식 C)형식 사용
    정준 분해한 뒤에 다시 정준 결합

유니코드 정규화 wikipedia
유니코드를 이용한 한글 자모 분리와 결합 devpia

이미 깨져 있는 파일명을 수정할 때

윈도우
    HangulJasoFixer2
        https://namocom.tistory.com/630
        https://github.com/namhokim/HangulJasoFixer2
        .net freamwork 4.0 이후 버전이 설치 되어 있어야 함
        폴더를 선택해서 교정 가능
        HangulJasoFixer2.exe
    nfd2nfc
        https://cholchori.tistory.com/1563
        UI는 없고 간단하게! 실행하면 변환
    Mac to Win
        http://nicejinux.net/bbs/zboard.php?id=lecture&&no=129
        HangulJasoFixer분이 만드셨 던 라이브러리를 가지고 일부 수정
        베이스는 아미도 1.0? 인것 같음

윈도우 외
    convmv
    https://markboy95.blogspot.com/2012/03/nfc-nfd_21.html

OSX
    설치 brew install convmv
    NFC -> OSX(NFD)
        convmv -f utf-8 -t utf-8 --nfd --notest 파일
        convmv -f utf-8 -t utf-8 --nfd -r --notest 폴더
Linux
    Ubuntu
        설치 apt-get insall convmv
    CentOs
        설치 yum install convmv
    OSX(NFD) -> NFC
        convmv -f utf-8 -t utf-8 --nfc --notest 파일
        convmv -f utf-8 -t utf-8 --nfc -r --notest 폴더

압축 할 때  / 압축 풀때
https://groovechance.tistory.com/35
OSX
    WinArchiver Lite
    https://itunes.apple.com/kr/app/winarchiver-lite/id414855915?mt=12
    WinArchiver 실행 후
        Windows Language를 Korean Windows를 확인
            Korean Windows가 아니라면 Settings를 통해서 변경
        드래그 앤 드랍으로 파일을 옮긴 후 Create Zip file
윈도우
    반디집(BandiZip)
    https://kr.bandisoft.com/bandizip/
    압축 파일을 반디집으로 연 후 코드페이지에서 맥OS(UTF-8) 선택 후 압축 해제

데탑은 윈도우이고 노트북은 맥을 사용중


맥에서 원격으로 윈도우에 접근 하거나, 맥북에서 VirtualBox에 설치한 윈도우를 사용할 경우엔 한글 문제가 좀 번거롭다.


윈도우 설치 부터 기본을 Shift + Space로 해 놓으면 문제가 없긴 한데 데탑에선 그냥 한영키로 쓰고 추가로 Shift + Space를 했었으면 좋겠다는 생각을 했었다.


친절하게 어느 분이 만들어 주셨다 :-)


https://gilchris.tistory.com/12


딱 내가 원하던 기능이랄까 ? 기본키는 그대로 두고 추가로 Shift + Space를 추가로 지원 한다.


코드는 여기서 https://github.com/gilchris/ConvenientHanYoung


마지막 버전 다운로드 0.2.2

python 2.x를 사용하다 보면 한글 관련 여러 문제들이 있다.


현재까지 사용해 보면서 문제가 생겼던 내용들은 간단한게 코드로 정리 해본다.


  • 명시적으로 아래 코드가 utf-8임을 알리는 코드
  • 명시적으로 특정 문자열을 인코딩 하기
  • 문자열 인코딩 할 때 인코딩 값 지정 하기
  • url 전송시 인코딩
  • dict 사용 시 한글 처리


python 2.x 대역에서 일반적으로 내용에 한글이 들어갈 때 utf-8처리를 위해선

#-*- coding: utf-8 -*-


코드를 많이 쓰는데.


해당 구문을 넣어도 format, string함수에서 쓰다보면 한글이 제대로 입력 되지 않는 경우가 발생한다.


이런경우 sys를 import해서 인코딩 세팅을 해줘어야 하는데


import sys

reload(sys)

sys.setdefaultencoding('utf-8')



해당 코드를 다 적으면 잘 돌아간다.



Swift에서 url 호출 시 한글이 포함되면 nil이 된다.


url중 한글을 인코딩 하기


var baseUrl = "https://www.google.co.kr/?gws_rd=ssl#newwindow=1&q="

        var query = "한글"

        var encodeQuery = query.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)

        var reuqestUrl = baseUrl +  encodeQuery!


+ Recent posts