안녕하세요. 제가 평소에 맥을 사용하면서 겪은 큰 불편 중 하나는 바로 Safari에서 파일을 다운로드할 때 한글 파일명이 깨지는 문제였습니다.
가령 아래와 같이 파일명에 한글이 포함된 경우(영문과 숫자, 기호는 정상 표기), 파일을 다운로드하면 파일명이 정체불명의 기호로 표기되는 식입니다.
- 원래 파일명: "9주차 필기자료.hwp"
- 다운로드된 파일명: "9주차 í기ìë£.hwp"
검색을 돌려보니 크롬에서는 문제가 없는데 Safari에서만 문제가 발생하는 것 같았습니다.
아마도 사이트 개발자가 파일 인코딩과 관련해 헤더를 제대로 써주지 않은 경우, Safari에서 파일 인코딩을 깐깐하게 인식해서 발생하는 문제로 보입니다. 비슷한 문제제기가 예전부터 있었는데 Apple에서는 신경 쓰지 않는 듯하네요.
제 학교 전자강의 사이트에서도 동일한 문제가 발생하는데, 문제는 다운로드 받는 파일이 많으니 아주 신경 쓰이더라고요.
그래서 문제 해결법을 한창 찾다가 드디어 찾아내서 올립니다. 아래 내용을 따라갔을 때 실제 이용 화면은 아래와 같습니다.
1. homebrew 설치
패키지 관리자인 homebrew를 설치해 주세요.
참고로 M1 사용자분들은 설치 후에 나타나는 메시지와 같이 아래의 코드를 추가로 입력해야 정상적으로 사용할 수 있습니다.
echo 'export PATH="/opt/homebrew/bin:$PATH"' >> ~/.zshrc
2. convmv 설치
convmv는 파일명의 인코딩을 수정해주는 프로그램입니다. (파일명을 바꿔준다는 점에서 파일 내용 자체의 인코딩을 바꿔주는 iconv와는 차이가 있습니다.)
homebrew를 설치하신 경우 아래와 같은 코드를 터미널에 입력해서 설치할 수 있습니다.
brew install convmv
3. Automator를 이용한 자동화 만들기
위와 같은 상태에서는 매번 번거롭게 터미널을 이용해야 하기 때문에, 자동화 파일을 하나 만들어주는 것이 좋습니다. (제가 이미 만들어둔 것도 아래에 올려둡니다.)
자동화 파일은 Automator를 이용해 ‘빠른 동작’을 선택해서 아래의 스크린샷처럼 만듭니다. (각각의 옵션에 주의해 주세요. ① 현재 수신하는 작업흐름, ② 선택 항목 위치, ③ 통과 입력)
그런데 본인이 사용하는 맥의 종류에 따라서 경로가 달라집니다. 이건 아래의 코드를 참조하세요.
Intel Mac의 경우:
for i in "$@"; do /usr/local/bin/convmv -f utf-8 -t iso-8859-1 --notest "$i" done
Apple Silicon을 탑재한 Mac의 경우:
for i in "$@"; do /opt/homebrew/bin/convmv -f utf-8 -t iso-8859-1 --notest "$i" done
이후 위의 메뉴에서 파일 → 저장을 눌러주면 자동으로 기본 위치(~/Library/Services)에 등록이 됩니다. 이때 이름은 편하신 걸로 만들면 되는데, 저는 "한글명 깨짐 수정"으로 했습니다.
4. Finder 우측 메뉴 등록하기
시스템 환경설정 → 확장 프로그램 → Finder(빠른 동작 및 미리보기 패널)로 이동해서, 본인이 만든 자동화 항목을 체크합니다.
이제 모두 완료되었습니다. 맨 위의 예처럼, 수정하려는 파일을 우클릭하고 빠른 동작에서 해당 항목을 클릭하면 자동으로 변환이 됩니다.
이것은 여러 파일에 대해서도 모두 작동하기 때문에, 여러 파일을 한꺼번에 선택하고 바꿔도 됩니다.
하지만 이 모든 걸 따라하는 게 귀찮으신 분이 있겠죠? 그래서 2번(homebrew 설치 후 convmv까지 설치)까지 완료하신 분들을 위해 파일을 올려 둡니다. 아래 링크를 눌러서 파일을 다운로드 받으시면 됩니다.
다운로드 후 파일을 열면 빠른 동작을 설치하겠냐는 메시지가 뜹니다. 설치를 누른 후, 바로 4번부터 진행하시면 됩니다.
참고로…
- 맥에서는 정상적으로 보이는 파일이 윈도에서 자음모음이 분리되는 문제(가령 맥에서는 ‘한글’이 파일명인데 윈도에서는 ‘ㅎㅏㄴㄱㅡㄹ’로 분리됨)는 유사한데 다른 부분이 있습니다. 이와 관련해서는 이미 해결책을 올려두신 분들이 있는 것 같아 다루지는 않았습니다.(콜라맛홍삼 님 답글 참조)
- 브라우저 인코딩을 유니코드로 설정해도 계속 발생하는 문제입니다. 사족으로 (파일이 아니라) 오래된 웹페이지에서 위와 마찬가지로 한글 표기가 깨진다면, 임시로 Safari 환경설정 → 고급에서 인코딩을 한국어(Windows, DOS)로 바꿔주고 해당 페이지를 다시 로드하면 제대로 보입니다. 물론 해당 페이지만 보고 다시 설정을 유니코드로 바꿔주는 것도 잊지 마세요!
학교 다운로드는 괜찬은데 업로드할 때 자소 분리되서..
저는 저희 학교가 저 문제가 나타나도 아마 학교에 요청핮 않을까.. 싶습니다
전 왜인지 windows, dos 로 되어있네요 ㅋ
https://gluebyte.notion.site/gluebyte/dd5f9ee76f61431cbb7471989def8ed9
+ 11.11 되는 파일도 있고 안 되는 파일도 있네요 ㅠㅠ