나무위키 MDict

1 개요

나무위키 덤프로 만든 MDict 사전 파일이다. 이것을 이용하면 오프라인으로 위키를 감상할 수 있다. 이미 리그베다 위키의 전성기 무렵부터 만들어져 왔지만, 덤프 블로그가 2013년 문을 닫아서 2012년판이 최신이다.[1]
그러나 2015년 7월 12일 부로 Qewin의 블로그에서 데이터베이스 덤프를 이용해 오프라인 파일이 만들어지기 시작했다.
2016년 1월 경에 개발을 중지하며 변환기 소스를 제외한 파일을 모두 삭제했으나 [2] 개발 재개 계획이 나왔고,[3]7월부터 JSON 에 맞춰 개조한 NamuWiki2HTML 로 변환한 5월 버전이 올라와 있다. 현재 NamuWiki2HTML C버전을 작성 중이라고 한다.
8월 12일(7월 덤프)부터는 제작자가 NamuWiki2HTML만 개발하고 MDict 파일 업로드는 다른 사용자가 하는 방식으로 진행된다.

참고로 블로그에 따르면 덤프가 나오고 나서 3일~2주 후면 변환본이 올라온다고 한다. 새 버전이 나오면 최신 정보를 담고 있으나 크기도 계속 커진다. 처음에는 900MB도 되지 않았으나 이제 1GB를 넘어서고 있다. 참고로 7월분은 1.23GB이다.

2 사용 방법

mdict를 사용해서 윈도우, 안드로이드, iOS, 윈도우 CE 등의 운영체제에서 나무위키를 오프라인으로 볼 수가 있다.

먼저 데이터 파일은 나무위키 mdict 제작자 블로그에서 다운받을 수 있다.
2016년 1월 버전 : 이곳 또는 이곳
2016년 5월 버전 : 이곳 또는 wiki.7979.us - (파일 링크)
2016년 7월 버전 : 여기
2016년 8월 버젼 : 여기

ios는 mdict, 안드로이드는 mdict나 stardict 를 받아 데이터 파일을 폰에 넣으면 되고, pc는 여기서 프로그램을 받아 \doc 에 넣고 동일 경로의 mdict.cfg 파일을 지우고 실행하면 된다.[4]

3 장단점

  • 장점
    • 오프라인으로 나무위키가 가능하다. - 최대의 장점. 데이터가 부족하거나 없으면 아주 유용하다.
    • 배터리가 적게 닳는다. - 데이터를 사용하지 않는다는 가정 하에
  • 단점
    • 원본보다는 밋밋해 보인다. - 간단한 HTML로 변환되어 있다.
    • 데이터가 오래되었다. - 덤프 기준으로 만드는 데다가 오프라인이라서 발생하는 특성. 그래도 거의 매달 나온다.
    • 가끔 html이 깨져 있다.
    • 사진/동영상/음악이 안 나온다. - 덤프에 포함되지 않는다.
    • 인터넷 링크는 표시되지 않는다. - 제작자가 오프라인이라는 이유로 임의로 제외시켰다.
    • 틀린 내용이 있어서 수정하려고 사이트 들어가보면 수정되어 있어서 헛걸음 하게 된다.

4 NamuWiki2HTML

나무위키 덤프를 MDX[5]로 변환하기 위해 만든 프로그램. Github 에 공개했다. 라이선스는 GNU GPL 2판.

4.1 NamuWiki2HTML Python

링크

Python으로 작성되었고, 변환 속도가 느려 Pypy를 쓰는 것을 권장하고 있다. 꼭 Pypy를 쓰도록 하자 Phython27, 2016년 7월 기준 약 5시간이 걸린다. 7월 28일 덤프까지는 이것을 이용해 만들어졌다. 2016년 1월 이후 개발자가 손을 놓으면서 거의 동시에 나무위키 덤프 형식이 JSON으로 바뀌었고, 그래서 6개월간 나무위키 MDict는 나오지 않았다. 7월 경에 JSON에 사용할 수 있도록 개조되었다. 개조 이후 뒷 문서가 잘리는 버그가 있으나, NamuWiki2HTML C버전을 개발하면서 개선을 포기했다. 현재 올라오고 있는 덤프는 NamuWiki2HTML Python 버전을 이용한 것이다.
2016년 1월 26일 기준 덤프를 Python 3.2.5에 호환되는 PyPy3 2.4.0를 활용하여 변환해 본 결과 큰 문제없이 변환 된 것으로 보인다. 다만 구버전의 Mdxbuilder의 경우 김수한무~~돌돌이 문서의 제목이 너무 길어서 mdx 파일로 변환시 오류를 뿜는다.

2016년 1월본 기준 일부 문서들의 각주에 해당 각주가 달린 부분의 뒷부분의 내용이 섞여들어가는 문제가 있는 상태이다. 또 넥서스 5와 5X에서 사용 시 화면을 터치하면 스크롤이 그 문서 맨 위로 강제이동(...)되는 버그가 존재한다.[6]이유는 불명.

4.2 NamuWiki2HTML C

링크

기능은 위와 동일하나 현재 개발 중인 C언어로 작성된 버전. 특이하게도 멀티 스레드로 동작한다. Python 버전보다 변환 속도가 훨씬 빠르다. i3-6100H 노트북 기준으로 2~3분내외로 변환이 가능하다. i5-4690K 4.2GHz 오버클럭 상태에서는 1분 내외를 찍어주기도. 또 다른 특징으로는 디스크 부하가 커서 컴퓨터가 버벅거린다. 작업 관리자를 켜서 디스크 부하를 보면 하드디스크의 읽기/쓰기 최고 속도를 번갈아 찍는 것을 볼 수 있다.
  1. Mustar.kr 저장본 또는 Onedrive 2010년/2012년
  2. 출처 : mdx 변환 2월부터 중단하겠습니다.
  3. 출처 : 나무위키 MDX 변환기를 새로 작성할 지 고민 중입니다.
  4. 사유가 있어 이미지가 포함되거나 최신 버전의 문서가 필요할 때는 페이지 채로 스샷을 찍거나 페이지를 저장하면 된다. 터치위즈 7.0 이상이 탑재된 삼성 갤럭시 는 기본 인터넷 앱에 페이지 저장 기능이 있는데, 이걸 쓰면 글자부터 이미지까지 송두리째 내장 메모리에 저장되어 오프라인에서도 저장된 페이지를 볼 수 있다. 그렇지 않은 기기라도 페이지 저장 기능이 있는 인터넷 앱을 받거나 PC에서 HTML 소스를 카피해 오면 된다. 하지만 이 방법은 사진이 저장되지 않는다.
  5. 정확히는 mdxbuilder에 필요한 파일이다.
  6. mdx뷰어 문제일 가능성이 있다. LG G3에서 mdict 앱을 사용시에는 화면 터치시 스크롤이 문서 위로 이동하는 버그가 있지만, Bluedict 사용시에는 그런 버그가 없다