Local Offline Dictionary for Emacs with SDCV

TL;DR

글쓰기 시나리오에서 로컬 사전 구성은 굉장히 중요하다. 다행히 할 수 있다. 충분히 준비했다.

Download

[2023-09-20 Wed 10:47] https://github.com/junghan0611/sdcv-dict-ko

사전 : StarDict dictionary SDCV with Emacs

[2023-06-26 Mon 14:15]

영어사전

http://download.huzheng.org/dict.org/

Mobi Webster's 만 다운 받았다.

Table

| The Collaborative International Dictionary of English | tarball | GPL, 35M, 174222 words | | |-------------------------------------------------------|----------------------------------------------------------------|--------------------------------|---| | WordNet | tarball | GPL, 10.7M, 149535 words | | | Moby Thesaurus II | tarball | GPL, 11M, 30259 words | | | Webster's Revised Unabridged Dictionary (1913) | tarball | GPL, 28M, 160161 words | | | Elements database | tarball | GPL, 18K, 127 words | | | Virtual Entity of Relevant Acronyms | tarball | GPL, 214K, 7117 words | | | Jargon File | tarball | GPL, 668K, 2367 words | | | Free On-Line Dictionary of Computing | tarball | GPL, 2.3M, 13452 words | | | Easton's 1897 Bible Dictionary | tarball | GPL, 1M, 3843 words | | | Hitchcock's Bible Names Dictionary | tarball | GPL, 57K, 2611 words | | | Bouvier's Law Dictionary | tarball | GPL, 2.3M, 6326 words | | | THE DEVIL'S DICTIONARY | tarball | GPL, 176K, 986 words | | | CIA World Factbook 2002 | tarball | GPL, 1.5M, 272 words | | | The CIA World Factbook (1995) | tarball | GPL, 979K, 273 words | | | U.S. Gazetteer (1990) | tarball | GPL, 2.2M, 52991 words | | | U.S. Gazetteer Counties | tarball | GPL, 509K, 10223 words | | | U.S. Gazetteer Places | tarball | GPL, 2.8M, 42620 words | | | U.S. Gazetteer Zip Code Tabulation Areas | tarball | GPL, 2.4M, 33246 words | | | | | | | | Longman Dictionary of Contemporary English | tarball | Free to use, 6.4M, 43052 words | | | Oxford Advanced Learner's Dictionary | tarball | Free to use, 4.7M, 34153 words | | | Collins Cobuild English Dictionary | tarball | Free to use, 5.1M, 34097 words | | | Collins COBUILD Advanced Learner's Dictionary 2006 | tarball | Free to use, 6M, 34159 words | | | Oxford Collocations Dictionary | tarball | Free to use, 2.7M, 8378 words | | | Merrian Webster 10th dictionary | tarball | Free to use, 2.5M, 20517 words | | | The Britannica Concise Encyclopedia | tarball | Free to use, 7M, 24402 words | | | English Thesaurus | tarball | Free to use, 2.2M, 20003 words | | | CMU American English spelling | tarball | GPL, 1M, 105626 words | | | The CMU Pronouncing Dictionary | tarball | GPL, 1.2M, 127012 words | | | English irregular forms | tarball | GPL, 54K, 4690 words | | | English Etymology | tarball | GPL, 1.8M, 18380 words | | | Oxford English Collocation Dictionary | tarball | Free to use, 1.9M, 8338 words | | | eedic | tarball | GPL, 1.4M, 22776 words | |

한글

http://download.huzheng.org/ko/ 이맥스에서 활용은 sdcv 를 이용한다.

스타딕. 영한 사전을 위해서 아래 중에 quick_english-korean

다른 사전들과 무엇이 다른지는 아직 모른다.

| Korean Dic | tarball | Free to use, 8M, 147722 words | |-------------------------|---------------------------------------------------------|---------------------------------| | quick_english-korean | tarball | GPL, 3,5M, 94170 words | | quick_korean-english | tarball | GPL, 7.6M, 49757 words | | Korean-English Dic | tarball | Free to use, 7M, 49757 words | | Hanja(Korean Hanzi) Dic | tarball | Free to use, 2.5M, 124831 words |

리눅스에서는 압축 풀고 파일만 ~/.stardict/dic/ 폴더에 복사해 넣는다. 내가 사용하는 사전이다. 여기에 quick_english-korean 이 보인다.

이렇게 사용하련다. 어느 정도 훌륭한 사전인지는 모르겠다만... 충분하다.

  • stardict-KoreanDic-2.4.2 : 국어 사전
  • stardict-quick_kor-eng-2.4.2/ : 한영
  • stardict-quick_eng-kor-2.4.2/ : 영한
  • stardict-Hanja_KoreanHanzi_Dic-2.4.2 : 한자
/home/junghan/.stardict/dic
jhnuc➜  dic  ᐅ  ls
README.md                             stardict-dictd-web1913-2.4.2
stardict-Hanja_KoreanHanzi_Dic-2.4.2  stardict-merrianwebster-2.4.2
stardict-KoreanDic-2.4.2              stardict-quick_eng-kor-2.4.2
stardict-KoreanEnglishDic-2.4.2       stardict-quick_kor-eng-2.4.2
jhnuc➜  dic  ᐅ  vi README.md
jhnuc➜  dic  ᐅ

SDCV command

[2023-06-27 Tue 17:21] 그래 충분하다. 한글

jhnuc➜  dic  ᐅ  sdcv -l
Dictionary's name   Word count
Kor-Eng Dictionary    49757
Merrian Webster 10th dictionary    20517
Webster's Revised Unabridged Dictionary (1913)    160161
Korean Dic    147722
quick_english-korean    94170
Korean-English Dic    49757
Hanja(Korean Hanzi) Dic    124831
StarDict dictionary    9
jhnuc➜  dic  ᐅ

국립국어원 표준국어대사전

[2023-06-27 Tue 17:14] XML/JSON 엑셀 등 포멧으로 제공된다. 다운 받는다. 그 다음에는?! 어떻게 활용할 수 있을까?

로컬에서 활용하는 방법이 있으면 되겠지 아니라면 그냥 API 로 가져오고

표준국어대사전 - 생산성 앱 활용 팁

kodict 오프라인 국어사전 활용 방안

[2023-07-08 Sat 09:30] https://github.com/Astro36/kodict

우리말샘, 표준국어대사전 xls 포멧

Wordsmithing in Emacs

Wordsmithing in Emacs - Mastering Emacs 위에 정리가 잘되어 있다.

home/junghan.spacemacs.d/spacemacs.<5492>

원문은 아래에 있다. 참고를 더 할 것.

Running your own Dictionary Server

Emacs’s dictionary lookup will, by default, communicate with a third-party server when you ask it to look up a word. I’d rather it didn’t, so I changed it. Here’s how I did this on Ubuntu:

sudo systemctl enable dictd

I had to manually enable the dictionary service daemon, as that is a requirement for this to work.

To make Emacs use your local server instead of a remote one, customize dictionary-server to localhost:

(setq dictionary-server "localhost")

There’s a large range of dictionaries available in Ubuntu/Debian, and I only included the bare essentials above. Of note is gcide, which is a community-maintained version of Webster’s 1913 dictionary. All installed dictionaries are activated and made available to the dictionary server.

DICT 는 RFC 2229 로 설명된 1997 년 DICT 개발 그룹에서 만든 사전 네트워크 프로토콜입니다. 목표는 웹스터 프로토콜을 능가하여 클라이언트가 균일한 인터페이스를 통해 다양한 사전에 액세스할 수 있도록 하는 것입니다

SAMPLE: dict-vera

[2023-01-17 Tue 17:04]

 cd dict-vera
> tree
.
├── control
├── control.tar.xz
├── data.tar.xz
├── debian-binary
├── dict-vera_1%3a1.24-1_all.deb
├── md5sums
├── postinst
├── postrm
└── usr
    └── share
        ├── dictd
        │ ├── vera.dict.dz
        │ └── vera.index
        └── doc
            └── dict-vera
                ├── README
                ├── changelog.Debian.gz
                ├── copyright
                └── dict-vera.changelog-old.gz
5 directories, 14 files

krdict-converted

한국어기초사전 krdict 버전 GitHub - changwoo/krdict-converted: 한국어기초사전 여러가지 포맷 (XDXF)

요약하자면, dict 포멧으로 변경해서 활용 가능하다. 최신 데이터도 있으나 로컬에서 변환해서 만드는게 의미가 있나 싶다. 그냥 함수를 호출해서 사용하는게 빠르겠다. 내가 이게 왜 필요한지를 생각해보자. 자동 완성 또는 사전 검색 호출을 하기 위해서이다.

이맥스에서 한글 사전을 호출하는 방법이 있나? 이것을 찾는게 더 시급하다.

Introduction

[2023-01-17 Tue 17:13]

기본 빌드 과정

아래와 같은 순서로 진행하면 xdxf 포멧이 나온다.

dict 포멧으로 변경

[2023-01-27 Fri 15:47] xdxf 포멧은 GoldenDict 읽을 수 있다. 이맥스는 못읽는다.

즉, 위에 dict-vera 예를 보면 dict.dz 이 필요한거다.

xdxf -> dict 변환 방법을 알야아 한다. 다행히 아래와 같이 하면 된다.

변환 결과 확인

GoldenDict 에 파일을 넣고 확인 및 기존 xdxf 포멧 결과와 비교 한다.

구, 품사 없음 이라는 정보가 변환 과정에서 사라졌다. 이건 위에 변환 파일에 누락된듯 하다. 알고 있으면 된다. 올려주신 분께 감사할 뿐이다.

>

HOLD Dict Server 등록

[2023-01-27 Fri 16:15] 현재 나는 Dict 서버를 로컬에 띄워 놓고 사용하고 있다. 즉, 결과를 서버 설정 파일에 등록을 해주거나 자동 탐색 폴더에 넣어야 한다. 아무튼 이렇게 하면 된다.

HOLD krdict-full

통합 사전 파일을 만들자. 최신 krdict xml 파일을 머지하는 과정이다.

다음과 같이 진행하면 된다. 근데 안된다. 파일에 안쓰는 언어 정보가 너무 많다. 다 삭제를 해야 할 것 같다.

일단 중지!!

  • [ ] upstream 모든 파일로 생성하게 한다.
  • [ ] krdict 최신 파일로 만든다.

[2023-01-27 Fri 16:18]

한-영 변환 사전 -- Freedict

Freedict 을 아십니까? Downloads — FreeDict

아래 사전 목록을 보면 내가 원하는 사전 목록이 있다. 한글은 없다.

위의 krdict 버전의 파일을 여기 툴로 컨버팅하면 필요한 패키지를 생성할 수 있을 것이다. 그러면 한글 사전이 생긴다. 즉 국어 사전이 되겠네?!

내가 원하는 것은 한글 - 영어 사전이 될 것이다. 애매한 구석이 있다. 아무튼.

사전 목록

GitHub - freedict/fd-dictionaries: hand-written dictionaries from the FreeDic...

[2023-01-17 Tue 20:36]

GUI 사전 - GoldenDict

이게 가능하려면?!

[2023-01-18 Wed 11:27]

Install GoldenDict Dictionary on Linux

[2023-09-08 Fri 08:04]

GoldenDict 베스트 온오프라인 사전

[2023-01-20 Fri 06:25]

여기서 남기고자 하는 것은 골든딕은 설치 할만 하다는 것과 패치버전을 설치하라는 말을 남기려고 한다.

패치 버전 AppImage 를 다운 받아라

[2023-01-20 Fri 06:27]

dictd 를 연동하여 오프라인 사전 시스템

;;https://wiki.archlinux.org/title/GoldenDict
Offline dictionary lookup with dictd
 
First dictd must be configured for hosting offline dictionaries. See Hosting Offline Dictionaries.
 
Once the dictionaries have been installed, and dictd has been configured, goldendict can be configured to access the dictd dictionary databases by following these steps:
 
    Press F3 to bring up the "Dictionaries" window.
    Click on the "DICT servers" tab
    Click "Add..."
    Click to put a checkmark under "Enabled"
    Double click under "Address" and type: dict://localhost. Make sure to change localhost if dictd is running on another server.
    And finally click "OK

[2023-01-20 Fri 06:27]

Gnome Dictionary 도 괜찮다.

[2023-01-20 Fri 06:29]

References

[2023-01-27 Fri 15:50]

Screenshot

[2023-09-08 Fri 08:05]

unify 툴팁, 워드레퍼런스, sdcv

caption="<span class="figure-number">Figure 1: unify" width="100%" >

Related-Notes

References