공지) CleanArchiver 원 개발자분인 INAJIMA Daisuke님과 연락이 되어서 지금까지 수정한 내용을 모두 원래 공식 CleanArchiver 프로젝트에 전달했습니다. 단 개발자분과 저의 구현상 의견차이가 있어서 이곳에 올리는 수정한 버전과는 기능상 차이가 있으니 참고하세요.  개발자님의 홈페이지

참고) 2010.4.22 일자로 올라온 알집 8.0 공개용 버전에서 zip 파일 압축 해제시 위 기능을 지원하도록 추가했네요. 알집 8.0 버전 이상을 쓰시는 분은 맥의 기본 압축 프로그램으로 압축을 하였더라도 알집으로 압축을 풀어주시면 되겠습니다. 

참고2) 2011.5.10 추가로 '압축시대' 프로그램을 제작한 키플러 님의 새로운 압축 프로그램 '반디집'을 통해서도 압축을 풀 수 있다고 합니다. 아래 SkyKIDS 덧글 인용.
 

CleanArchiver 3.1.b2

 맥에서 한글 등의 풀어쓰기로 저장되는 파일명이 있는 파일들을 압축하고 윈도우나 리눅스에서 풀면 글자가 깨어져 보이는 것을 해결하기 위한 오토메이터 버전을 예전에 올렸더랬습니다.

이번에는 기존에 있던 프로그램들을 가지고 보다 쉽게 압축하기 위한 프로그램을 만들어 올려 봅니다.

 사용법은 간단합니다. 압축할 파일이나 폴더를 하나이상 고른 후 프로그램 아이콘이나 프로그램창에 떨어뜨리면 됩니다. 사용자가 원하는 선택사항을 맞춰놓고 기본값을 저장해 놓으면 나중에 파일을 떨어뜨릴때 설정한 값으로 바로 압축을 합니다.

   윈도우나 리눅스 사용자에게 전달 할 때 사용할 압축 형식은 zip과 7zip 두가지가 가능합니다. 이 때 .7z은 '윈도우 호환 파일이름 사용' 옵션을 체크하고 압축하면 됩니다. .zip의 경우 한글윈도우에서 한글파일이름을 위해서는 인코딩 설정에 'CP949'를 입력하거나 드랍다운메뉴를 열어 고르면 됩니다.
 rar의 경우는 개발자가 상용 프로그램으로 소스를 공개하지 않기 때문에 개발자 지원이 있지 않는한 풀어쓰기 글자로만 압축가능합니다. 그런 이유로 맥에서 압축한 rar 파일을 윈도우에서 압축해제시에는 자매품인 7-zip 수정버전 혹은 Namo님의 HangulJasoFixer.exe 을 사용하세요.

 다른 언어의 윈도우 사용자와의 호환성을 위해서 zip 압축을 하려면 외국 윈도우에서 압축시 사용하는 코드페이지를 아래 목록에서 참고 후'CP949'대신 원하는 윈도우 코드페이지를 골라서 압축하면 됩니다. 목록은 택스트박스에 풍선 도움말로 나타납니다. 그리고 지정한 코드페이지로 변경이 되지 않는 문자는 유니코드로 저장이 됩니다.윈도우 기본 압축 프로그램과 같은 유니코드를 지원하지 못하는 압축 프로그램으로 열어보면 유니코드로 저장된 파일을 제외하고는 보이게 됩니다. 7zip은 유니코드를 기본적으로 사용하기 때문에 그런 고민을 하지 않아도 되므로 여러 언어를 동시에 압축하기 위해서는 zip대신 7zip을 이용하기를 추천합니다.

 참고사항으로 zip의 분할압축은 pkzip의 Application note의 split 표준 권고안을 구현하는 압축 프로그램(Winzip, v3zip등)에서만 압축해제가 됩니다. 그리고 프로그램의 인코딩을 지정하는 곳에는 드랍박스에 나타나는 목록 이외에도 실제 iconv 에서 지정가능한 인코딩명이면 아무것이나 가능합니다.

다른 추천 프로그램으로 마우스 오른쪽 버튼을 눌러서 기본 압축 프로그램처럼 사용을 하려면 FinderPop 을 추천합니다. 스노우 레퍼드 사용자를 위해서 서비스 메뉴를 통한 압축을 할 수 있게 만들어 놓았습니다. 그리고 이 프로그램은 압축만 하기 때문에 압축해제는 The Unarchiver를 추천하며 압축 파일의 손상복구를 위한 정보 생성을 위해서는  MacPAR deluxe 를 추천합니다.

  • CP437 - 영어
  • CP737 - 그리스어
  • CP775 - 발트어
  • CP850 - Multlingual 라틴문자 I
  • CP852 - 라틴문자 II
  • CP855 - 키릴어
  • CP857 - 터키어
  • CP858 - Multlingual 라틴문자 I + Euro symbol
  • CP860 - 포르투갈어
  • CP861 - 아이슬란드어
  • CP862 - 히브리어
  • CP863 - 프랑스어(캐나다)
  • CP864 - 아랍어
  • CP865 - 북유럽어
  • CP866 - 러시아어
  • CP869 - 현대 그리스어 
  • CP874 - 태국어
  • CP932 - 일본어, Shift-JIS와 비슷함
  • CP936 - 간화자 중국어(중국, 싱가폴)
  • CP949 - 한국어
  • CP950 - 정체자 중국어(대만, 홍콩)

P.S.
 좀 더 섬세한 설정을 하시기 원하는 분은 '추가 압축 옵션'에 압축 프로그램별 커맨드라인 옵션을 스페이스를 띄워서 넣어주시면 됩니다. 가령 7zip의 solid 압축을 해제하려면 '-ms=off' 옵션을, 멀티코어를 이용해 압축시간을 많이 줄일 수 있는 LZMA2알고리즘을 사용하려면 '-m0=LZMA2' 옵션을 주면 됩니다. 이외에도 파워유저들의 사용을 위해 나머지 옵션은 내장된 압축프로그램에 -h 옵션을 주고 터미널에서 살펴보거나 info-zip , 7zip 홈페이지에 있는 온라인 매뉴얼을 참고하세요.

 zip에 인코딩 문제를 지원하기위해 추가한 옵션으로는 -EN=? 과 -UN=NFC 가 있고 7za에는 -nfc 옵션이 있습니다. -EN=? 는 압축시 파일명을 물음표에 적은 윈도우 코드페이지로 변환해서 압축합니다. -UN=NFC 는 유니코드 파일명을 유지하기는 하되 맥 이외의 운영체제에서 주로 사용하는 NFC로 정규화해서 저장합니다. 7zip의 -nfc 도 zip의 -UN=NFC 와 동일한 역할을 합니다.

 ClealArchive 프로그램 안에 zip과 7za 커맨드라인 유틸리티가 들어있습니다. 인코딩 처리 패치가 모든 기능에 구현이 된 것이 아니기 때문에 새로 압축을 할 때만 압축이 잘 되고 기존의 압축한 파일을 업데이트하거나 삭제등의 기능을 사용하면 제대로 작동되지 않을수 있습니다. 그래서 내부에 있는 커맨드라인 툴을 따로 빼서 사용하시려는 분은 이점을 꼭 참고하시기 바랍니다. info-zip , 7zip 개발자에게 인코딩변경에 대한 수정의견을 전달했지만 그리 좋은 답변이 오지 않아서 fork를 하게 되었습니다. rar개발자에게도 전달했으나 중요한 사항이라고 생각하지는 않아서 언제 공식 지원이 될지는 미지수 입니다.

 7za에 대한 한가지 참고사항으로 터미널에서 압축 대상파일을 전달할 때 한글과 같은 풀어쓰기가 되는 유니코드 파일명을 전달하면 파일을 찾지 못합니다. 이는 CleanArchiver가 호출할때는 풀어쓰기(NFD)형식으로 파일명이 전달되지만 터미널에서 사용자가 언어 입력기로 입력한 문자열은 NFC형식이기 때문입니다. 

위 프로그램을 만드는데 사용한 오픈소스들은 아래와 같습니다.
  1. CleanArchiver
  2. Info-zip
  3. p7zip
  4. Apple's CFUniCharPrecompose() , vfs_utfconv.c (실제 파일은 Open Darwin의 xnu 패키지에서 받을 수 있습니다.)
  5. libiconv
수정한 소스들을 올리려니 온라인 리파지토리가 없어서 요청하면 모두 올려드리겠습니다. : )

<업데이트 내역>
2009.09.22
zip에서 암호를 지정해도 압축되지 않던 경우를 제대로 작동하게 수정했습니다.
zip 분할압축시 압축자체가 실행되지 않던 문제를 해결했습니다.
rar 압축형식을 추가했습니다. ( 단 윈도우/리눅스 호환 파일명 지원은 지원하지 않습니다.)

2009.09.23
외국 사용자를 고려해 윈도우 호환 파일명 사용 옵션에 인코딩을 지정할 수 있게 택스트 필드를 추가했습니다.

2009.10.22
압축 포멧별 설정 상태를 저장해서 사용가능합니다.
압축이 끝나면 Growl로 결과를 알려줍니다.
업데이트를 자동으로 할 수 있게 Spakle을 추가했습니다.
( 하지만 아직 구글코드나 소스포지에 올리지 않아서 작동되지는 않습니다.)
zip 포멧으로 윈도우 호환 파일명 압축시 지정한 인코딩으로 변경되지 않으면 해당 파일명을 유니코드로 저장해줍니다.
( 이렇게 압축된 파일의 경우 Winzip, 7zip, winrar, v3zip 에서 잘 풀립니다. 단 v3zip는 U+10000의 유니코드 글자를 표준 UTF-8로 처리하지 않아서 제대로 풀어주지 못합니다. 99.99% 사용하지 않는 글자들이니 평소 사용에는 지장이 없을껍니다. 안랩에는 버그리포트를 한 상태입니다.)

2009.10.30
CleanArchiver 원 개발자이신 INAJIMA Daisuke님과 연락이 되어서 지금까지 수정한 내용을 모두 원래 공식 CleanArchiver 프로젝트에 전달했습니다.

2009.11.22 버전 3.0b1
서비스 메뉴를 통한 압축을 할 수 있게 했습니다.
실행을 위해 요구되는 OS X의 최소 버전을 10.4로 수정했습니다.  Intel, PPC에서 모두 실행됩니다.
편의를 위한 메뉴와 일부 옵션이름을 수정하였습니다.
원 개발자분의 업데이트 링크를 사용하여 나중에 업데이트를 자동으로 할 수 있게 해놓았습니다.
(단 윈 개발자분과 제가 만든 프로그램의 기능 차이가 있습니다.)

2009.12.07 버전 3.1b2
압축 프로그램의 32 & 64bit를 구분해 실행합니다. 64비트로 압축시 20%정도 성능향상이 있습니다.
일부 압축 형식에서 파일이름 암호화, 솔리드압축 등의 옵션이 추가되었습니다.
dmg파일의 암호지정, 압축률 지정이 가능합니다.
분할압축, zip에서 인코딩지정 메뉴가 바뀌었습니다.
Posted by trip2me

Trackback address :: http://trip2me.tistory.com/trackback/56 관련글 쓰기

  1. Subject: 윈도우에서 깨지지 않도록 맥에서 압축하기

    Tracked from 거꾸로보는세상 2010.06.05 12:35  Delete

    윈도우에서 깨지지 않도록 맥에서 압축하기

Add a comment

  1. 이전 댓글 더보기
  2. ... 2010.08.09 10:10  Comment address  Modify/Delete  Add comment

    근데요 압축파일 옆에 애플리케이션 폴더 옆에 있는게 뭐죠?

  3. ... 2010.08.09 10:15  Comment address  Modify/Delete  Add comment

    정보 입수 하니까 유닉스 실행 파일이라고 뜨는데

    • Favicon of http://trip2me.tistory.com trip2me 2010.08.11 11:02  Comment address  Modify/Delete

      안녕하세요.

      dmg 이미지 파일을 열어보았을 때 보이는 가장 오른쪽 파일은 CleanArchiver가 설정한 환경설정 파일을 제거하는 쉘 스크립트입니다. 다른 일을 하지는 않습니다.

      내용이 궁금하시면 파일을 택스트 에디터로 열어 보시면 됩니다.

  4. 살라살라 2010.08.28 17:14  Comment address  Modify/Delete  Add comment

    감사하게 잘 사용하고 있습니다~~
    dmg 파일 만들기할 때, 파일들이 들어있는 폴더를 드래그해야만 dmg 파일이 만들어지던데, 그냥 파일 여러개를 드래그해서도 만들 수 있었으면 좋겠습니다..
    마우스 우버튼 콘텍스트 메뉴에도 넣어주시면 더 편리할 거 같습니다..
    마우스 우버튼으로 dmg 파일 만드는 과정중에 볼륨레이블이랑 압축정도를 선택할 수 있으면 더욱 좋겠고요..
    아..빵사드려야하는뎅...ㅋㅋ

    • Favicon of http://trip2me.tistory.com trip2me 2010.08.29 21:01  Comment address  Modify/Delete

      안녕하세요~
      잘 사용해 주신다니 제가 감사할 따름입니다. : )

      제가 요즘은 생계에 시달려서 프로그램을 손 댈 시간이 잘 나지를 않네요 ㅠ_ㅠ;
      소중한 의견을 제때에 반영하지 못해서 죄송합니다. 일단 폴더를 던져 넣어야 압축이 되는 부분은 기존의 원 개발자분이 그렇게 해 놓으셔서 당장 바꾸기는 어려울듯 합니다.

      빵 사주신다고요? 허허~ 말씀만으로도 배가 부르네요~
      즐거운 하루 되세요.

  5. gon. 2010.09.08 10:19  Comment address  Modify/Delete  Add comment

    언제나 감사히 잘 쓰고 있습니다 :)

    그런데 어제 USB 크기에 맞춰 분할압축을 하다보니 분할압축 크기 입력란에 'GB' 단위 입력은 제대로 지원이 안 되는 것 같더군요. 분할압축 크기 입력란에는 예제로 '2 GB' 이런 식으로 'GB' 단위를 써도 되는 것으로 나와있는데 실제 'GB' 단위로 입력하면 분할압축 파일이 거의 무한대(어제 2만 개 이상의 분할파일들을 생성되는 걸 봤습니다;; )로 만들어 집니다. 물론 제대로 압축되어 분할되는 것은 아니지요. 그래서 'MB' 단위로 바꾸어주었더니 제대로 잘 되었습니다.
    7zip, zip, rar 모두 동일한 모습을 보였습니다.

    작업을 FW로 연결된 외장 하드에서 했었는데, 혹 그것 때문은 아니겠지요? ^^

    • Favicon of http://trip2me.tistory.com trip2me 2010.11.17 17:08  Comment address  Modify/Delete

      아 그런가요?
      제가 잘못한 부분이 있나 봅니다.
      지금은 사정상 테스트를 할 수 없는데
      테스트를 할 여건이 되면 확인해서 수정하겠습니다.
      알려주셔서 감사합니다. : )
      즐거운 하루되세요.

  6. Favicon of http://zany.kr 제이니 2010.12.29 10:11  Comment address  Modify/Delete  Add comment

    오~ 압축시 한글 문제 때문에 고민하다가
    검색을 통해 우연히 알게되었는데요.
    정말 잘 되네요 ^^

    CleanArchiver 압축 후, Windows 2003 Server 에 설치된 압집으로
    압축해제했는데 한글 파일명도 그대로 남아있고. 좋네요 ^^b

    좋은 프로그램 배포해주셔서 감사합니다!!

  7. 제이비 2011.04.13 15:46  Comment address  Modify/Delete  Add comment

    한글 문제 때문에 고민이 많았는데 덕분에 해결되었습니다. 좋은 프로그램 감사합니다. 잘 사용하겠습니다.

  8. Favicon of http://blog.skykids.kr/ SkyKiDS 2011.06.09 23:22  Comment address  Modify/Delete  Add comment

    Windows용 무료 프로그램이며, 압축시대를 잇는 반디집도 괜찮을 것 같아요.
    http://apps.bandisoft.com/bandizip/
    (광고하러 온 것은 아닌데...)

    • Favicon of http://trip2me.tistory.com trip2me 2011.05.10 02:22  Comment address  Modify/Delete

      소개 감사합니다.

      덧) 사실 압축시대 개발자님께 제가 부탁을 해서
      normalize Unicode 변환을 하는 부분이 추가 되었죠 : )
      rar개발자는 해당 내용에 조금 시큰둥 하더군요.

      http://trip2me.tistory.com/58
      여기 좀 더 내용이 있습니다.
      즐거운 휴일 되세요.

    • Favicon of http://blog.skykids.kr SkyKiDS 2011.06.09 23:22  Comment address  Modify/Delete

      @trip2me 아~ 반디집의 개발에 도움을 주셨군요? 압축과 관련된 분야에 대해 매우 잘 알고 계신 것 같네요. :)

    • Favicon of http://trip2me.tistory.com trip2me 2011.06.23 16:45  Comment address  Modify/Delete

      아~
      제가 아는건 별로 없고
      그냥 어쩌다가 맥을 쓰다보니
      조합형 유니코드를 쓰는 맥에 관심이 있어서
      그런 사항을 압축시대 개발자님께서 들어주신 겁니다. :)
      답장이 늦어 죄송합니다.

  9. somi 2011.07.04 21:50  Comment address  Modify/Delete  Add comment

    안녕하세요 ^^

    저는 개발자의 꿈을 키우고 있는 학생입니다. 원 개발자님 홈페이지에서 3.0a6 소스를 받아서 공부하던중 막히는 부분이 있어서 혹시 한글관련 작업해주신 소스를 받을 수 있을까 싶어 글을 살짝 남겨봅니다.

  10. Favicon of http://clack.tistory.com Clack 2014.07.31 11:18  Comment address  Modify/Delete  Add comment

    검색을 통해 오늘 처음 설치를 해봤습니다.
    좋은 프로그램 만들어주셔서 감사합니다. ^_^
    처음 설치 후 인코딩값이 빈값으로 되어 있는 상태에서 압축 시도시 압축실패가 되네요
    기본설치시 특정 인코딩값이 기본 선택되어져 있으면 좋을거 같아서 코멘트 적어봅니다.

  11. 림스 2015.08.27 21:28  Comment address  Modify/Delete  Add comment

    안녕하세요
    만들어 주신 프로그램 잘 쓰고 있습니다
    감사합니다
    혹시나 제 댓글을 보실 수 있으실 지 모르겠지만
    아직 소스를 가지고 계시다면 소스를 받을 수 있을까요?
    압축파일 미리보기가 가능하도록 변경하고 싶습니다
    limslee@naver.com 으로 연락 주시면 감사하겠습니다



티스토리 툴바