panel-dictionary
KDE Plasma 4 Extensions
Score 67%
Description:

Panel-dictionary is a dictionary plasmoid in the spirit of KDE 3's kdict panel applet. It gives you a text box in the panel in which you can type a word and get its definition in a dialog.

Panel-dictionary gives you a choice of backends, each with different capabilities.
[li]Plasma dict dataengine[/li]
[li]Command line dict client[/li]
[li]Python-dictclient[/li]

Using the command line dict-client, it will use whatever you've set up in ~/.dictrc or /etc/dictd/dict.conf. Using the python-dictclient, you can specify a server to use.

This is my first plasmoid, written in Python; it probably needs a lot of work!

KNOWN ISSUES:
[li] dict dataengine backend is just lacking. Not really much I can do about this.[/li]
[li]background sizing issues when moved from the panel[/li]
[li]Unicode only works with the dict client backend[/li]

If you want to contribute, you can check out the code at github:
https://github.com/alandmoore/panel-dictionary-plasmoid
Last changelog:

7 years ago

Version 0.3.2 2009-12-25
[li]Added option to force definitions black-on-white.[/li]
[li]Fixed Unicode support for dict-client backend (only) -- thanks kozakmamay
Version 0.3.1 2009-08-31
[li]Fixed sizing issue when used in panel[/li]
Version 0.3 2009-08-27
[li]Redesigned definition view with a tabbed interface[/li]
[li]Matched words can be clicked to look them up[/li]
[li]Removed useless blank context menu in combobox[/li]
Version 0.2 2009-08-25
[li]Appearance configuration allows changing size of combobox and color of text[/li]
[li]Improvements to output of dict commandline backend[/li]
[li]dict command line backend allows server setting[/li]
[li]added icons to config dialog[/li]

Version 0.1.1 - 2009-08-23
[li]Fixed focus bug (thanks emdek!!!)[/li]

Version 0.1 - 2009-08-21

[li]First release[/li]

gravy

8 years ago

Unicode (UTF-8) output is broken http://img136.imageshack.us/img136/3834/90375194.png

Report

C

admoore

8 years ago

What backend are you using?

Report

gravy

8 years ago

dict client
dict 1.11.1/rf on Linux 2.6.29-tuxonice-r3
dictd on localhost and dictd.xdsl.by give same result
python-2.6

Report

kozakmamay

7 years ago

Change line 183 of main.py from
line = defs.pop(0);
to
line = unicode(defs.pop(0), "utf-8")

Report

C

admoore

7 years ago

Thanks for the suggestion, I tried this but it doesn't seem to fix the problem. Did it work for you? The plasmoid still give me:

UnicodeEncodeError: 'ascii' codec can't encode character u'\xdf' in position 14: ordinal not in range(128)

Not sure where or why this is happening.

Report

C

admoore

7 years ago

wait, never mind; adding it to line 178 as well fixes unicode for the dict client backend.

Unicode still crashes the python-dict backend, it looks like a shortcoming of the library itself.

Report

downdiagonal

8 years ago

I've written a small python module that gets definitions using Google's "define: word" feature. You might find it useful.

http://pastebin.com/f53f35361

Report

C

admoore

8 years ago

Thanks for the info, I'll consider it.

Report

Emdek

8 years ago

Quote:combo box has a hard time acquiring and keeping focus when in the panel, especially when there is a maximized application on screen.

You could try mine method to give it (embedded line edit) focus, you can find it in Run Command applet.
I'm not sure if it is easy to port it to Python, but you can at least try. ;-)

Report

C

admoore

8 years ago

Thanks! I looked a lot at the RunCommand source, but I couldn't figure out exactly what what going on there. Did you just basically have to custom-build the combobox?

I'll dig into it a little more and see if I can understand it.

Report

Emdek

8 years ago

No (this if ror other reason), look at focusWidget() method. ;-)

Report

C

admoore

8 years ago

Thanks. I checked it out, and read your post to plasma-devel, but I am not sure I get what's going on yet.

Where does the scene() method come from (what class/library)? I couldn't find it in the API reference.

Report

C

admoore

8 years ago

Ok, actually after some digging I managed to get your function ported to python, and (yay!) it works! ... sort of.

It only gives focus to the widget if I click the area AROUND the combobox widget. If there was a signal that I could connect when the combobox is clicked, that would work. But according to all I can find, there isn't :-(.

Short of subclassing QlineEdit and overriding its mousePressEvent, I'm not sure what else to do.

Report

Emdek

8 years ago

There is no event filter available in bindings?

Report

C

admoore

8 years ago

erm... maybe. I'll have to look into that. I'm pretty new to this API.

Report

7 years ago

Version 0.3.2 2009-12-25
[li]Added option to force definitions black-on-white.[/li]
[li]Fixed Unicode support for dict-client backend (only) -- thanks kozakmamay
Version 0.3.1 2009-08-31
[li]Fixed sizing issue when used in panel[/li]
Version 0.3 2009-08-27
[li]Redesigned definition view with a tabbed interface[/li]
[li]Matched words can be clicked to look them up[/li]
[li]Removed useless blank context menu in combobox[/li]
Version 0.2 2009-08-25
[li]Appearance configuration allows changing size of combobox and color of text[/li]
[li]Improvements to output of dict commandline backend[/li]
[li]dict command line backend allows server setting[/li]
[li]added icons to config dialog[/li]

Version 0.1.1 - 2009-08-23
[li]Fixed focus bug (thanks emdek!!!)[/li]

Version 0.1 - 2009-08-21

[li]First release[/li]

File (click to download) Version Description Filetype Packagetype License Downloads Date Filesize OCS-Install DL
Details
version
0.3.2
updated Nov 09 2010
added Aug 22 2009
downloads today
0
page views today 0