마우스로 더블 클릭하는 미니 사전

좋은 프로그램, 한글화 파일, 그외 유용한 자료들

Moderator: Dry8r3aD

cogniti

Re: 마우스로 더블 클릭하는 미니 사전

Post by cogniti » 2010/09/13 Mon 3:46 pm

추후 여유가 있을 때 안정화, 리펙토링, 기능 추가할 생각입니다.

[size=150:26vsrs4c][b:26vsrs4c]minidict-htmlview.txt[/b:26vsrs4c][/size:26vsrs4c]
실행방법 참고
mv minidict-htmlview.txt minidict.rb
viewtopic.php?p=64653#p64653

바뀐 점
* def display --> display_html 이름 바꿈
* 마우스 드래그할 때 발생하는 과도한 owner-change 이벤트 무시
- 사전 서버로 과도한 접속 방지와 프로그램의 응답성을 개선하기 위함
- BUTTON_MOTION_MASK 를 체크해야 되는데 방법을 몰라서 0.5초 이내에 발생한 이벤트 무시

[size=150:26vsrs4c][b:26vsrs4c]minidict-textview.txt[/b:26vsrs4c][/size:26vsrs4c]

실행방법

ruby1.8.x, 1.9.x 모두에서 작동합니다.
ruby, libgtk2-ruby 가 안 깔려 있다면 루비를 설치해야 합니다.

$ sudo install ruby
$ sudo install libgtk2-ruby

.rb 파일이 올라가지 않아서 .txt 확장자로 올려니,
파일명을 .rb 로 바꾸어준 후 실행하세요.

$ mv minidict-textview.txt minidict.rb
$ ruby minidict.rb
또는
$ chmod +x minidict.rb
$ ./minidict


바뀐 점

* Gtk::HtmlDocument --> Gtk::TextBuffer 교체
* Gtk::HtmlView --> Gtk::TextView 교체
* def display --> display_txt 교체
* 마우스 드래그할 때 발생하는 과도한 owner-change 이벤트 무시
- 사전 서버로 과도한 접속 방지와 프로그램의 응답성을 개선하기 위함
- BUTTON_MOTION_MASK 를 체크해야 되는데 방법을 몰라서 0.5초 이내에 발생한 이벤트 무시

[b:26vsrs4c]따라서 사전창에 있는 내용을 복사한 후 다른 창에 붙여넣기할 수 있습니다.[/b:26vsrs4c]
이것 때문에 HtmlView 을 TextView 로 교체했습니다.

xdeui
Posts: 3
Joined: 2010/09/11 Sat 1:29 pm

Re: 마우스로 더블 클릭하는 미니 사전

Post by xdeui » 2010/09/13 Mon 8:19 pm

dbm이나 pstore 써서 사전쿼리 결과를 저장하고 있는건 어떤가요?

cogniti

Re: 마우스로 더블 클릭하는 미니 사전

Post by cogniti » 2010/09/13 Mon 9:48 pm

pstore 보다는 범용적인 (g)dbm으로 저장하는 거 찬성입니다.
그렇게 하면 서버 부하(load)를 낮추거나 인터넷이 안 되는 도서관 등에서 복습할 때 도움이 될 것 같습니다.

단, 저장된 db 배포 금지 조항, 보증 안 함(no warranty) 조항, 쿼리 결과에 powered by google 같은 조항 들어가면 법적으로 큰 문제는 생기지 않을 것 같습니다. 구글 크롬 확장으로 나온 사전도 있으니까요.
참고 링크 https://chrome.google.com/extensions/de ... mcjbcpofhd

그리고 복수형 명사, 또는 동사 3인칭 등의 경우를 고려해야 합니다.
예를 들어 기본명+s 의 형태로 query 날리면 결과가 오는 단어가 있고 오지 않는 단어가 있습니다.
그 문제는 http://english.rubyforge.org/ 이걸로 해결이 될 것 같습니다만, 해당 gem을 테스트 해보지는 않았습니다.

DB 저장은 단순한 기능이지만, 시간이 좀 걸릴 듯 합니다.
일도 해야 되고, 공부도 해야 되고, 자이언트도 봐야 되니...ㅋㅋㅋ

cogniti

Re: 마우스로 더블 클릭하는 미니 사전

Post by cogniti » 2010/09/15 Wed 12:32 am

http://english.rubyforge.org/ 를 간단히 테스트 해봤는데 적용하기는 어려울 것 같습니다.
gdbm을 이용하여 저장 기능 추가했습니다.
사용하는데 큰 불편은 없을 것 같습니다.
오늘 자이언트는 정말 재미있었습니다. ㅋㅋㅋ

바뀐 점
* gdbm을 사용하여 cache.db에 저장
* MiniDictView 로 GUI를 분리

atto
Posts: 265
Joined: 2009/11/01 Sun 8:58 pm

Re: 마우스로 더블 클릭하는 미니 사전

Post by atto » 2010/09/15 Wed 10:22 am

[quote="cogniti":3krkhlba]http://english.rubyforge.org/ 를 간단히 테스트 해봤는데 적용하기는 어려울 것 같습니다.
gdbm을 이용하여 저장 기능 추가했습니다.
사용하는데 큰 불편은 없을 것 같습니다.
오늘 자이언트는 정말 재미있었습니다. ㅋㅋㅋ

바뀐 점
* gdbm을 사용하여 cache.db에 저장
* MiniDictView 로 GUI를 분리[/quote:3krkhlba]
우선 새로 바뀐 gdbm때문에 libgdbm-ruby1.8 패키지를 추가로 설치해줘야 하는군요.
그리고 제 경우 실행하면 자꾸 이런 에러메시지와 함께 죽습니다.
[code:3krkhlba]./minidict.rb:53: warning: multiple values for a block parameter (2 for 1)
from ./minidict.rb:142
./minidict.rb:54: undefined method `wait_for_text' for #<Array:0xb74db284>
from ./minidict.rb:142:in `call'
from ./minidict.rb:142:in `main'
from ./minidict.rb:142
[/code:3krkhlba]
가열차게 또 평화롭게
Better Than Yesterday

cogniti

Re: 마우스로 더블 클릭하는 미니 사전

Post by cogniti » 2010/09/17 Fri 12:43 pm

바뀐 점
* 1.8.x 에서 안 되는 버그 수정
* UI 개선
* 20100916 버전에서 0.5초 체크 오류 수정

cogniti

Re: 마우스로 더블 클릭하는 미니 사전

Post by cogniti » 2010/09/20 Mon 11:24 am

github에 넣었습니다.
http://github.com/cogniti/minidict

akuna
Posts: 636
Joined: 2009/04/15 Wed 3:32 pm

Re: 마우스로 더블 클릭하는 미니 사전

Post by akuna » 2010/09/21 Tue 12:08 am

안되네요... :oops:

ruby 1.8 설치했구요.
죽 따라 했지요.

다운로드한 폴더에서
$ ruby minidict.rb 했더니
minidict.rb:11:in `require': no such file to load -- gdbm (LoadError)
from minidict.rb:11
이런 에러 메세지가 나오구요.

$ sudo chmod +x minidict.rb
$ ./minidict
했는데
bash: ./minidict: No such file or directory
이런 에러 메세지가 나옵니다.

뭐가 문제일까요?


akuna
Posts: 636
Joined: 2009/04/15 Wed 3:32 pm

Re: 마우스로 더블 클릭하는 미니 사전

Post by akuna » 2010/09/21 Tue 2:33 pm

libgdbm-ruby 까지 설치하니까 됩니다.
사전이 귀엽네요.

사용해 보니
간단하게 보이게 하려고 하는 목적인지
아니면 다른 이유에서인지
구글 영한 사전의 원본과는 다르네요.
품사 표시도 없어서
원본이 더 알아보기가 편합니다.

터미널에서 실행하는게 귀찮아서 패널에 추가해 놨습니다.
이 글타래 보고 ruby 에 관심이 많아졌는데
한글 자료가 많이 없네요.

잘 쓸께요~ :P

Post Reply