LINUX.ORG.RU

Словарь для консоли

 ,


1

5

Написал для своих нужд, но может кому пригодится)
Словарь носит чудное название maggot-dict (не спрашивайте почему)
Умеет:

  • Bash completion
  • Цветастый вывод
  • Написан на питоне без каких либо зависимостей (совместим с python 3)
  • Поддерживает словари в формате Dict (.dict|.idx) Lingvo (.dsl)

Для счастливых обладателй арчлинукс ставится также просто как

yaourt maggot-dict-git
Живет Здесь!

>>> Просмотр (1600x1200, 334 Kb)



Проверено: JB ()

Сдесь

Здесь. Уж немного граммар-наци, вредно не будет :)

Словарь

Ну по скрину очень хорошо выглядит, потом пощупаю. Долго писал?

Solace ★★ ()

Что касается скрина, то третьегном традиционно ужасен =[

neocrust ★★★★★ ()

поделись шрифтом из терминала

e1nste1n ★★★★★ ()

выглядит как цветной sdcv кстати лингво словари пиратить не хорошо :)

frozenix ★★★ ()

У вас там в ридми ошибка Futures - Features

RevenantX ★★★★ ()

Неплохо. Но, имхо, нужны не оболочки словарей и словари отдельно, а нужен хорошо подогнанный законченный продукт. Оболочек и словарей для линукс дохрена. А вот хорошо сделанного продукта нет.

hibou ★★★★★ ()

Кстати, кто не знает, для консольного клиента dict есть раскрашивающий скрипт colorit.

hibou ★★★★★ ()

Slipknot fan детектед. :)

renya ★★★★★ ()

Мм, красиво. Поставлю себе из AUR, спасибо!

//Кто там про пиратство опять заикается, у меня например есть «родной» диск с лингвой. Поэтому я буду пользоваться лингвовскими словарями и near bird.

Hoodoo ★★★★★ ()
Ответ на: комментарий от RevenantX

У вас там в ридми ошибка Futures - Features

Поправил спасибо.

pasl ()

Композиция неплохая. Вы дизайнер?

ms-dos32 ()
Ответ на: комментарий от Hoodoo

умоляю, скажите что она стоила около 100 грв. а не 25 грв. :)

frozenix ★★★ ()
Ответ на: комментарий от frozenix

Я же говорю, родной, а не «сто протрояненных варезов в одном».

Hoodoo ★★★★★ ()

Поддерживает словори

словори

Розенталя, похоже, не поддерживает...

CrashTestDummy ()

Выглядит хорошо, на неделе посмотрю.

radg ★★★★ ()

Название никак с «Гнездами Химер» не связано?)

wingear ★★★★ ()
Ответ на: комментарий от wingear

Про pep8 ничего не слышал, да?

Слышал, но не согласен)

.jpg ты нас за людей уже не держишь?

не поместилось ...

Название никак с «Гнездами Химер» не связано?)

неа

pasl ()
[np@np-work maggot-dict]$ maggot-dict-cli more                   
[dict] [00:00:02.5] Smirnitsky (Ru-En) 53200
[dict] [00:00:00.0] Smirnitsky Abbreviations (Ru-En) 400
[dict] [00:00:06.1] Apresyan (En-Ru) 117400
[dict] [00:00:00.0] Apresyan (En-Ru) Abbreviations 300
Traceback (most recent call last):
  File "/usr/local/bin/maggot-dict-cli", line 65, in <module>
    Application (main, 'maggot-dict-cli')
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/pretzel/app.py", line 36, in __init__
    self.Run ()
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/pretzel/app.py", line 62, in Run
    main_result = self.main (self)
  File "/usr/local/bin/maggot-dict-cli", line 35, in main
    for name, entry in dct [word]:
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/dictionary.py", line 200, in __iter__
    yield provider.Name, provider [desc]
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/providers/dsl.py", line 92, in __getitem__
    return DslEntry (self.decode (self.stream.read (size)) [0].strip ())
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/providers/dsl.py", line 186, in __init__
    if node.name.startswith (name):
AttributeError: 'NoneType' object has no attribute 'startswith'
[np@np-work maggot-dict]$ 
Puzan ★★★★ ()

Как можно терпеть такую вырвиглазную обоину?

Pakostnik ★★★ ()
Ответ на: комментарий от Puzan

У меня со втором питоном, вообще словари не подхватились.

kitar ★★★★★ ()
Ответ на: комментарий от kitar

У меня со втором питоном, вообще словари не подхватились.

А куда словари положил? и можно ls этой папочки?

pasl ()
Ответ на: комментарий от pasl

А куда словари положил?

В $HOME/.local/share/maggot-dict

Уже удалил, могу дать ls ~/.stardict/

kitar ★★★★★ ()
Ответ на: комментарий от pasl

В пайп не выводит:

[np@np-work maggot-dict]$ maggot-dict-cli master | more
Traceback (most recent call last):
  File "/usr/local/bin/maggot-dict-cli", line 65, in <module>
[============================== Apresyan (En-Ru) ==============================]
    Application (main, 'maggot-dict-cli')
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/pretzel/app.py", line 36, in __init__
    self.Run ()
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/pretzel/app.py", line 62, in Run
    main_result = self.main (self)
  File "/usr/local/bin/maggot-dict-cli", line 38, in main
    entry.ToConsole (console)
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/providers/dsl.py", line 262, in ToConsole
    node_walk (self.root)
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/providers/dsl.py", line 260, in node_walk
    console.Write (child)
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/console.py", line 55, in Write
    self.stream.write (data)
UnicodeEncodeError: 'ascii' codec can't encode character u'\u0251' in position 4: ordinal not in range(128)
1.
[np@np-work maggot-dict]$ 

Puzan ★★★★ ()
Ответ на: комментарий от Puzan

Даешь консольные версии на lua, perl, haskel... А на православном С никак? На крайняк С++ ...

zh_v68 ()

sudo cast neocrust

Все понравилось, кроме значков и вытянутых терминалов.

Jayrome ★★★★★ ()

Что-то не работает

[15:20] ~ % ls .local/share/maggot-dict/            
Mueller7GPL.dict.dz  Mueller7GPL.idx  Mueller7GPL.ifo
[15:20] ~ % maggot-dict-cli example
[maggot-dict-cli] [error] word 'example' was not found
Psych218 ★★★★★ ()
Ответ на: комментарий от Psych218

Надо разжать Mueller7GPL.dict.dz. А вообще, автору на заметку. Надо бы предусмотреть использование сжатых словарей.

Puzan ★★★★ ()
Ответ на: комментарий от pasl

Частично. Пайп работает, но вылазит ошибка:

...
    11. 1) спец. модель (для формы); оригинал, образец
--More--Traceback (most recent call last):
  File "/usr/local/bin/maggot-dict-cli", line 69, in <module>
    Application (main, 'maggot-dict-cli')
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/pretzel/app.py", line 36, in __init__
    self.Run ()
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/pretzel/app.py", line 62, in Run
    main_result = self.main (self)
  File "/usr/local/bin/maggot-dict-cli", line 42, in main
    entry.ToConsole (console)
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/providers/dictionary.py", line 117, in ToConsole
    console.Write (self.data)
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/console.py", line 55, in Write
    self.stream.write (data)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 9-18: ordinal not in range(128)
    2) первый оригинал (в звукозаписи; тж. master sound-track)
    12. руководство (вид издания)
♦ like master like man — посл. у хорошего хозяина и работники хороши; ≈ каков поп, таков и приход
2. [`mɑ:stə] a
      1. главный, старший
...

Puzan ★★★★ ()
Ответ на: комментарий от Puzan

Частично. Пайп работает, но вылазит ошибка

а теперь?)

Надо бы предусмотреть использование сжатых словарей.

возможно добавлю

pasl ()
Ответ на: комментарий от pasl

Эммм. Уже боюсь спрашивать... Он с русского переводит?

[np@np-work maggot-dict]$ maggot-dict-cli счастье
Traceback (most recent call last):
  File "/usr/local/bin/maggot-dict-cli", line 69, in <module>
    Application (main, 'maggot-dict-cli')
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/pretzel/app.py", line 36, in __init__
    self.Run ()
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/pretzel/app.py", line 62, in Run
    main_result = self.main (self)
  File "/usr/local/bin/maggot-dict-cli", line 39, in main
    for name, entry in dct [word]:
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/dictionary.py", line 108, in __getitem__
    return Entry (self, word, self.index [word])
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/pretzel/udb/bptree.py", line 300, in __getitem__
    return self.Get (key)
  File "/usr/local/lib/python2.7/dist-packages/MaggotDict/pretzel/udb/bptree.py", line 29, in Get
    node = desc2node (node.children [bisect (node.keys, key)])
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd1 in position 0: ordinal not in range(128)
[np@np-work maggot-dict]$ 

Puzan ★★★★ ()
Ответ на: комментарий от Puzan

преводит, но видимо не доконца) сейчас посмотрим что там. Это какие-то фишки питона 2-ого просто все тестилось на трьетьем.

pasl ()
Ответ на: комментарий от Puzan

Эммм. Уже боюсь спрашивать... Он с русского переводит?

Попробуй еще раз)

pasl ()
Ответ на: комментарий от pasl

Осталось запилисть пакет для убунты ;)

Программа хорошая, буду юзать.

Puzan ★★★★ ()

Какой монитор у тебя?
У меня DELL 2007FP (1600x1200).

pacify ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.