nixp.ru v3.0

26 ноября 2024,
вторник,
13:43:37 MSK

4 марта 2010, 15:58

Для GNOME создано предугадывание текста по мере набора

6

Жоаким Роша (Joaquim Rocha), разочаровавшись в том, что на Linux-устройстве Nokia N900 используется проприетарное решение для предугадывания текста по мере набора (eZiText), решил реализовать подобное Open Source-решение для GNOME. Результаты работы автор анонсировал в почтовой рассылке gnome-announce.

Поиски свободного движка для предугадывания и автоматического дополнения текста по мере его написания привели разработчика к проекту Presage (ранее он был известен как Soothsayer). Это библиотека, написанная на C++, которая при предугадывании текста учитывает контекст. Например, в случае написания «I m» ею будут предложены не нелогичные варианты вроде «I market» и «I more», а правильные с точки зрения английского языка — например, «I must» и «I mean».

Жоаким написал обертку вокруг Presage на языке Си, которая предоставляет простой API для автоматического дополнения набираемого текста. Затем он создал контекст GTK+ Input Method для контролирования пользовательского ввода в обычных текстовых виджетах GTK+ и воспользовался своей оберткой для обработки поступающего текста. Проект (метод ввода) получил название Predictor Input Method. По мере набора пользователем текста он предлагает различные варианты слов, между которыми можно выбирать. В качестве клавиатурных сочетаний автором предусмотрены:

  • Ctrl+Enter для выбора варианта;
  • Ctrl+Up/Down для скроллинга списка предлагаемых вариантов;
  • Backscape для удаления предшествующего курсору символа и повторного вызова механизма предугадывания;
  • стрелки — для перемещения курсора и отмены вариантов предугадывания.

Исходный код Predictor Input Method доступен на gitorious.org. Он распространяется под лицензией GNU LGPL. Видеодемонстрация Predictor Input Method в работе (на примере текстового редактора gedit) — на vimeo.com.

Постоянная ссылка к новости: http://www.nixp.ru/news/10175.html. Дмитрий Шурупов по материалам JoaquimRocha.com.

fb twitter vk
Антон

Сейчас глянуть видео не могу, но судя по описанию вещь полезная. Даёшь в основной ветке!

no_user

Полезна будет разве что для телефонов или для маленьких детей на PC.

Mogidin

если эту штуку встроить в ось, чтоб ей пользовались текстовые редакторы, браузеры, и пр. то это будет просто супер

Mogidin

посмотрел видео, оказывается это вроде как должно работать. ушёл пробовать)))

LLIAMAH

А по-русски оно предугадывает?

Но для настольного PC и правда сомнительно, быстрее сразу написать «как надо», ИМХО.

Дмитрий Шурупов

Пока нет. Но вот что написал разработчик примерно об этом:

Joaquim Rocha
Suppose you’re creating a mobile phone and you choose a closed solution to provide text prediction for your phone. And then you find out you’re disappointing all your users from country X because that library you’re paying for does not support their language and the library owner is not interested that much in adding it. Now if you’re using an open solution, local communities from many places in the world can add support for their languages and your phone can have a better acceptance in places you hadn’t even imagined. Software that reaches an international audience with different languages is software you want to have open.
источник