HPC.ru lite - Все форумы
Форум: КПК и смартфоны на Linux: Zaurus, планшеты Nokia, прочее
Тема: Читалка и словарь
Страницы: 1 [2] 3

[Ответить]
jkukka [26.02.2006 17:13] :
Кстати, а может сделать плугинный словарь? Если читалка решила, что пользователь выбрал "перевести это слово-фразу", вызывается у плугина translate(const string& text). Ну, а дальше на выбор -- вызов внешней программы, тултип, чего-изволите.
Mikhail Kostousov [26.02.2006 17:57] :
Я в курсе, но одна из проблем в том, что в библиотеке - поиск слова и получение статьи, а в интерфейсной части - форматирование статьи в удобный словарный вид, который уже отображается.

Я на это и сетовал про слитность zbedic'а... Если разделить zbedic но интерфейс и библиотеку, и использовать эту же самую библиотеку в FBReader - всем будет хорошо.. Проблема лишь в том, что после каждой новой версии ZBedic нужно будет его немножко резать - на интерфейс и библиотеку... Это абсолютно не сложно, и видимо в этом ключ. Но тут же появляется желание, а не использовать ли словари, которые уже дабавленны в ZBedic, тогда в библиотеку должны переместится считывание настроек расположения словарей...
P.S. Ни кто не мешает указывать FB словари из того же места, где лежат словори от ZBedic....
P.P.S. А если сделать нормальную библиотеку перевода из того-же ZBedic его можно потихоньку попытаться встроить еще куда-нибудь. Например в какую-нибудь pdf читалку. Не все же pdf-ки имеют сканированный вид. А в далеком будущем, может быть, какой-нибудь герой портирует нормальный браузер, и можно будет встроить этот браузер интерфейс к переводу...
Mikhail Kostousov [26.02.2006 18:11] :
Плагинность - всегда хорошо. Во первых - можно выбрать по желанию, а во вторых - может появится куча сторонников, которые тут-же примутся писать всякие прибамбасы... Но написать хороший плагинный api, что бы плагины цеплялись, когда пользователю хочется, работали, и все прочее - это гораздо большее усилие... Тем более, когда система изначально не задумывалась как компонентная... Чаще всего плагинность ограничивается тем, что программа изначально знает, что она может иметь то-то и то-то, но если галочка не стоит в нужном месте, то она не будет пытаться найти соответствующую библиотеку и подключить ее. И все это дополнительный код, время и старания автора. Ради галочки "подключить словарь".

Это одно, а второе, не получится ли это все из пушки по воробьям? Интерфейс - "подключить библиотеку" проверить ее наличие, проверить она ли, та ли версия, подключить, добавить в панель настроек настройки библиотеки, еще куда-что добавить... И все из-за того, что бы не качать лишние 30-40кб... Хотя, я очень не уверен, что код который позволит распоряжаться функциональностью программы станет меньше, чем там желанная функциональность.

Да и ведь вопрос был в том, как построить работу со словарем.
geometer [27.02.2006 03:46] :
Плагины должны появиться со временем. Во всяком случае, поддержка разных форматов давно задумана как система плагинов. Они и написаны почти под это. Но дело здорово осложняется двумя вещами.

1) FBReader задумывался как переносимая программа -- он и работает сейчас на разных платформах. Сделать одновременно кроссплатформенность и работу с плагинами -- не совсем тривиальная задача.

2) Делать плагины (для тех же форматов) имеет смысл, если предоставить желающим API для написания плагинов. Этот API должен быть ясным и не особенно меняться от версии к версии. И вот к этому я пока, увы, не готов.

Впрочем, идея сделать поддержку словаря плагинной тоже принимается с интересом. Спасибо.
jkukka [27.02.2006 10:23] :
Хм,
1. dlopen есть везде
2. плагин для формата не должен зависеть от платформы
3. будут кросс-платформенные плугины
DMych [27.02.2006 12:03] :
При чем тут Haali? ИМХО не надо плодить сущности без необходимости. На Завре большинство использует Збедик, поэтому лучше использовать уже имеющиеся на машинке словарные базы (нехилые, кстати, по объему).

Либо, сделать словарь, встроенный в ридер, на порядок лучше Збедика (чтобы все перешли на него).
Gantt [27.02.2006 12:34] :
[quote="DMych] Либо, сделать словарь, встроенный в ридер, на порядок лучше Збедика (чтобы все перешли на него).

К2

Збедик, кстати, не умеет искать в статье
zGremlin [27.02.2006 12:39] :
Поддерживаю, формат bedic'а выглядит оптимальным как по скорости, так и по компрессии (dict-zip здесь совершенно на месте). К слову, формат Sdictionary (насколько я смог понять из его, вообще-то куцеватого, описания) несильно отличается ... нет, конечно отличия есть и даже родство не просматривается, но многие идеи близки.
DMych [27.02.2006 12:49] :
Ну, ты же знаешь, что К2 - проприетарный софт, и при всем моем уважении к Робину, его использование не представляется возможным по идеологическим и религиозным мотивам.

Я в свое время писал об этом аффтару (текущему). Более того, я выслал ему результаты сравнения K2/K9 и Збедика (особенно упирая на достоинства первых, отсутствующие во втором). Но результат пока практически нулевой.
Gantt [27.02.2006 12:52] :
Ну, ты же знаешь, что К2 - проприетарный софт, и при всем моем уважении к Робину, его использование не представляется возможным по идеологическим и религиозным мотивам.

Я в свое время писал об этом аффтару (текущему). Более того, я выслал ему результаты сравнения K2/K9 и Збедика (особенно упирая на достоинства первых, отсутствующие во втором). Но результат пока практически нулевой.

SDict, кстати, умеет - правда, коряво - но все же.

З.Ы. Проверено на нетБуке
[Ответить]
[< Назад]  [Вперед >]