본문 바로가기

동인 정보/유틸 관련

VNR 구문분석, 구문검색 사전 설치법 (서버 문닫은 이후)

뒤늦게나마 일어공부를 시작했는데, 친구가 노벨에로게 하나 각잡고 하면 도움된다길래 시작했는데

한자를 전혀모르니.. 좀 지장이 많았음

첨엔 ITH로 매번 모르는한자 복붙해서 넣었었는데, 이것도 한두번이지 사람이 지치더라구요

그래서 옛날에 유행했다던 VNR을 처음 써봤는데...

한자에 요미가나 달아주는건 구문분석 사전, 한자 클릭하면 사전내용 보여주는건 구문검색 사전이 필요한데,

서버가 문닫아서 사전 설치가 안되네 😂

 

하지만 언제나 그렇듯, 결국 예토전생 당하고야 맙니다.


구문분석 사전 설치법

구글링해보니 다행히 구문분석(후리가나를 위한) 사전은 웹에 나돌아댕기는 파일을 경로에맞게 넣어주기만 하면 해결될 문제였음

gall.dcinside.com/mgallery/board/view/?id=yuzusoft&no=11404

 

VNR 용 MeCab UniDic 현대 일본어사전 수동패치 - 유즈 소프트 갤러리

분할압축된 것 하나하나 확장자 바꾸느라 좀 늦었음.이미지 다운받은 뒤에Dictionaries001.jpg -> Dictionaries.7z.001Dictionaries002.jpg -> Dic

gall.dcinside.com

유동형님 고마워용 ^^7

 


구문검색 사전 설치법

문제는 구문검색 사전인데...

이 일본어 사전기능을 사용하기 위해서 필요한것

얘는 뭐 구글 미치도록 뒤져봐도 별 자료가 없더라...

일단 Lingoes 라는 무료사전 프로그램 사이트에 등록된 '네이버 한일사전' 플러그인을 이용한다는 것 까지는 대충 알겠는데..

얘도 대충 경로에 그대로 넣어주면 될까 싶었는데, 아니더라.

이래저래 삽질하다, 마침 VNR이 파이썬이라 코드가 노출되어있고, 아예 깃헙 페이지도 있길래

코드좀 분석해보고 방법을 찾았음.

 

설치방법
1.
먼저 Lingoes 네이버 한일사전 플러그인을 다운로드합니다.
www.lingoes.net/en/dictionary/dict_down.php?id=63332AAFE6159C448748FF073FAA1157

다운링크가 여러개인데 다운로드 되는거 하나만 받으심 됩니다.

파일명은 "Naver Japanese-Korean Dictionary.ld2", 용량은 "11.3MB(11,575KB)"니까 확인하시구요.

 

 

2. 다운받은 사전파일을 VNR 폴더 내 "Caches\tmp"폴더에 넣고, 이름을 "ja-ko.ld2"로 바꿔주세요. (확장명은 동일함)

 

 

3. VNR을 실행하고(이미 실행되어도 괜찮음), "환경설정/다운로드/사전" 탭에서 "네이버 일한사전"을 찾아 설치 버튼을 눌러줍니다.
그럼 에러가 났던 이전과는 다르게,


이렇게 로컬에 위치한 파일을 인식해서, 다운로드를 하지 않고 해당 파일을 가지고 사전파일을 만들기 시작합니다.

사전파일 생성이 끝나면, 자동으로 콘솔창이 닫히고 이렇게 "Caches\Dictionaries\Ligoes" 경로에 "ja-ko.db"파일이 생성됩니다.

이게 VNR에서 사용되는 일본어 구문검색 한일사전입니다.

 

 

4. 사전 기능을 켜고 싶으실 경우, "환경설정/번역/사전" 탭에서 "일본어 사전 선택 - Naver 일·한사전"항목을 체크해주세요. 스크롤 좀 내리면 보입니다.

여기까지 오셨으면 완료입니다.

사전기능 잘 작동합니다( ´∀` )

 


이하, 추후 비슷한 문제가 발생했을때에 도움이 될 지도 모르니,

이 해결방법을 어떻게 찾았는지에 대한 경위를 작성해둡니다.

더보기

일단 설치버튼을 누르면...

처음에 이런 Y/N팝업이 뜬다. Lingoes, ja-ko 이 두개가 키워드
Lingoes가 뭔가하여 대충 검색해보니, 무료 사전 프로그램이더라. 각 언어는 플러그인형식으로 다운받아서 등록하는 듯 했다.

해당 사전 사이트에 가서, 언어팩 검색으로 Japanese-Korean을 검색해보니 딱 하나 나온게 앞서 적어놓았던 링크 네이버 번역사전이었다.
마침 딱 네이버라고 적힌거 보고 아 이파일 쓰는게 맞구나란 직감이 왔다.
(근데 Lingoes라는 프로그램에 대해서는 잘 모르는데, 저작권 괜찮은건가?싶음)

 

다음으론 이런저런 경로에 넣고 시험해봤는데도 테스트를 못해서.. 관둘까 싶다가, 보니까 얘 파이썬으로 코딩되어있으니까 코드 대충 열어보면 실마리가 보이지 않을까 싶었다.

VNR자체가 오픈소스인건지 깃헙에도 올라와있더라

 

여튼 각설하고, 저 설치파일을 누를때에 실행되는 파일은, getlingoes.py였다.

> 62Line 부터 일부 발췌 (getId func): 

def getld(lang): # str -> bool
  url = DICS[lang].get('url') or "http://%s/pub/lingoes/%s.ld2" % (initdefs.DOMAIN_ORG, lang)
  size = DICS[lang]['size']
  path = LD_DIR + '/' + lang + LD_SUFFIX

  dprint("enter: lang = %s, size = %s" % (lang, size))

  from sakurakit import skfileio
  if os.path.exists(path) and skfileio.filesize(path) == size:
    dprint("leave: already downloaded")
    return True

  ok = False
  from sakurakit import sknetio
  with SkProfiler("fetch"):
    if sknetio.getfile(url, path, flush=False): # flush=false to use more memory to reduce disk access
      ok = skfileio.filesize(path) == size
  if not ok and os.path.exists(path):
    skfileio.removefile(path)
  dprint("leave: ok = %s" % ok)
  return ok

처음엔 저 url부분에 다운로드 링크를 강제적으로 박아봤다... 만, 이번엔 ssl관련 문제로 뻗더라.
근데 어차피 파일은 내가 가지고 있으니...
그 아래쪽 코드 보니까, 이미 경로에 파일이 존재하고 있을 경우엔, 다운로드를 진행하지 않는 것으로 확인했다.
바로 dprint(path)로 일단 경로확인.

결과는 Caches/tmp/ja-ko.ld2
그래서 해당 폴더내에 파일을 위치시켜줬더니 잘 되더라~ 라는 이야기

.ld2파일을 내부적으로 .db포맷으로 변환, 저장하여 사용하더라.

.db는 SQL database파일로 보인다.