LINUX.ORG.RU

Выпущены XNeur и gXNeur версии 0.9.8!

 , ,


0

0

X Neural Switcher (xneur) — программа для автоматического переключения между раскладками клавиатуры для X Window System.

Данная программа является автоматическим переключателем клавиатуры. Т.е. при наборе текста, если он набирается на неверном языке, xneur автоматически (или по запросу) переключит язык на нужный. Принцип работы программы аналогичен Punto Switcher.

В общей сложности, программа поддерживает девятнадцать языков, в том числе русский, английский, украинский и белорусский. Программа в фоновом режиме анализирует вводимые пользователем символы и, если их последовательность не характерна для текущего языка, переключает раскладку и переписывает последнее слово.

Список изменений:

  • Автоматическое определение раскладок клавиатуры, установленых в системе.
  • Новые опции для устранения проблем при коррекции уже набранного слова (не переключать раскладку автоматически, если пользователь произвел какие-либо действия с набранным словом).
  • Добавлена библиотека libxneur и заголовочные файлы к ней. Теперь любая внешняя программа может использовать функционал xneur. Например, вы можете сделать плагин для pidgin или qutim, определяющий, в нужной ли раскладке написал сообщение собеседник.
  • Добавлена поддержка грузинского языка.
  • В gxneur добавлены новые флажки, даже для неиспользуемых в xneur языков. А если флажка для какого-то языка нет, то gxneur отобразит двубуквенное обозначение языка.
  • В gxneur улучшена интеграция в систему - исправлено поведение в трее, добавлен набор значков логотипа и .desktop файл запуска.
  • Исправлены ошибки. Улучшена стабильность работы.

Обращаю внимание, ОБЯЗАТЕЛЬНО ставьте пакет aspell для вашего языка (обычно, aspell-ru, aspell-uk и т.д.) - качество улучшится значительно.

Скачать архивы с программами можно на сайте xneur.ru

Кроме того, выпущена новая версия программы X Cursor Flag, предназначенной для отображения флага раскладки рядом с курсором.

Скачать можно здесь.

Для демонстрации возможностей новой библиотеки libxneur сделана программа xneurchecker 0.1. Так же ее можно использовать для организации консольного конвеера, если в нем нужно определить язык набранного текста. Например,

crew@crew-laptop:~$ xneurchecker Ghbdtn! Вот ghbvth работы чтугксруслук
Привет! Вот пример работы xneurchecker

Взять программу можно здесь.

>>> Подробности



Проверено: boombick ()
Ответ на: комментарий от Crew

Так. Пошли отзывы. Собрал. Собралось. Работает. Даже текст исправляет. А вот окно preference'ов в gXNeur'е не отрисовывается. Я смотрю у вас есть api для плагинов. Где его можно поглядеть?

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

gxneur собирали, ставили? В трее икона флага появилась?

Я ваще бухой, интересно, мой пятилетний вброс на линуховый вентилятор, сделает что-то для программы..

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

> Можно сделать, но подчеркивание сделать нельзя, так как я не могу получить координаты писчего курсора и размера шрифта. Т.е. универсальный проверятель сделать я не могу - видимо, знаний не хватает.

с помощью gtk- и qt-immodules как раз можно, сам о таком подумывал ;) с xim тоже можно, но только пока текст находится в preedit-состоянии. а SCIM как-то умудряется вытаскивать selection в preedit, причём средствами xim, насколько я понял, но просмотрев по диагонали протокол xim я так и не понял, как ему это удаётся…

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

Вот как раз preedit и нужно. Я просто на самом низком уровне ловлю клавиши. Ниже толоько через INT212 перывание.

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

Установил. Не помогло. Нашёл ещё один неприятный аспект: вывод символов тормозится страшным образом. Причём если слово длинное то начинается адский ад.

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

Хм. Хотелось как раз таки опять же обойтись иксом, дабы не было отдельного подчёркивания для gtk приложений, отдельного для qt, а всякие прочие тулкиты вообще курят.

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

Пробуйте отключить все, что связано онлайн определением. Скорее всего, тормоза вызваны невозможностью работать входящие сигналы.

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

Сам нашёл ошибку в логах. gXNeur ищет файлы в /usr/local/share ну и так далее, хотя я собирал с prefix'ом /usr. А тормозит вывод в том плане, что если зажать клавишу, а потом её отпустить вывод будет продолжаться какое-то время. Если прибить демон, этого не происходит.

KblCb ★★★★★
()

Наконец-то! Автор, человеческое спасибо за новость.

Собрал через yaourt из svn.

Simm
()

>crew@crew-laptop:~$ xneurchecker Ghbdtn! Вот ghbvth работы чтугксруслук

Привет! Вот пример работы xneurchecker

ЧТУГКСРУСЛУК! классное название чекера :)

Deleted
()

недавно в связи с использованием lxde вместо гнома поставил x/gneur на eeepc 701.

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

Программа несколько глючит в терминале и вообще исправление работает не всегда, но все равно весьма помогает в наборе.

Спасибо автору. Хочется предложить несколько улучшений.

1) положить в тарбол спек-файл. тогда рпм можно будет собирать прямо из тарбола. 2) исправить окно настроек, чтобы оно влезало в экран 800x480 или около того. Сейчас оно доаольно бестолково не влезает.

AVL2 ★★★★★
()

собрал, gxneur сегфолтится при переключении языка с eng на rus. Да и вообще xneur определяет автоматом только одну раскладку (английскую). + При запуске gxneur в трее bmpanel2 появляется слева от значка пустое место, как будто там еще что-то должно быть.

Как это все исправить? :)

P.S все собирал с дефолтными опциями... настройки раскладок рулятся в xorg.conf.

Nomer_Uno
()

НЕ НУЖНО

Винпузячные свисто-перделки для калек, кои когда пишут смотрят на клавиатуру. Здесь вам не там!! Здесь суровые мужчины по дефолту владеют слепым десятипальцевым, что бы набирать километровые ключи в консоли.

Pavel_7c0
()

кстати, кто-нибудь объяснит мне, почему в портежах этой софтины нет?

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

В целом абсолютно ненужная программа.

anonymous
()

А можно спросить, оно уже правильно перекодирует слеш? Автоматической переключалкой не пользуюсь, а по клавише — удобно. Но так и не смог понять почему при двойном перекодировании в фаирфоксе «http://» в предыдущих версиях получалось «http:..».

anonymous
()

ума не приложу как этим пользоваться.

splinter ★★★★★
()

А нет ли к-нить библиотечки, чтобы релиазовать эту фитчу в отдельной программе?

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

Список изменений:
Добавлена библиотека libxneur и заголовочные файлы к ней. Теперь любая внешняя программа может использовать функционал xneur. Например, вы можете сделать плагин для pidgin или qutim, определяющий, в нужной ли раскладке написал сообщение собеседник.

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

упс недопрочитал. Так они еще и мысли читать умеют, неужели уже и libastral интегрировали?

Fredy
()

а можно просто фичу - исправлять слово без переключения раскладки?

zyoung
()

а без трея она работать умеет? в не автоматическом режиме софтина весьма православна

thunar ★★★★★
()

Я тоже автомат выключил, а в целом да, бывает полезна.

MikeB ★★★★
()

1. Умеет ли оно запоминать раскладки для каждого окна?
2. Возможно ли использование только ручного режима с исправлением по хоткею?
3. Нормально ли ручное переключение отработает в адресной строке браузера?
4. Работает ли в консоли?
5. Насколько оно жаднее до ресурсов чем xxkb?
6. Не получится ли, что вместо ускорения работы, я буду тратить время на борьбу с переключалкой?

kernelpanic ★★★★★
()

> плагин для pidgin или qutim

нужно

поддержка грузинского языка

не нужно, пусть мучаются

в целом - пока стопицот пользователей не скажут, что Punto Switcher сосет, ставить не буду.

QUANTUM
()

HРаботаеаеет... Но в браузере как-то странно, вdjnвот я специально не исправляю то, что оно в моём сообщении начудило - как пример

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

> Вот выпил разраб водочки 0.7. Поговорить захотелось. Жена спит. А я ищу отзывы о программе...

Говорить с отзывами о софтине на лоре? Мощно ;)

По теме: в прошлой версии обещали для этой что-то типа замены макросов, — на — по пробелу и т.д. Я джва года жду такую фичу. Оно появилось? :)

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

> 1. Умеет ли оно запоминать раскладки для каждого окна?

Умеет.

2. Возможно ли использование только ручного режима с исправлением по хоткею?

Возможно.

3. Нормально ли ручное переключение отработает в адресной строке браузера?

Нет, не нормально.

4. Работает ли в консоли?

Не работает без Иксов.

5. Насколько оно жаднее до ресурсов чем xxkb?

Трудно сравнить две разные программы.

6. Не получится ли, что вместо ускорения работы, я буду тратить время на борьбу с переключалкой

Тут от вас зависит.

Crew
() автор топика
Ответ на: комментарий от anonymous

> По теме: в прошлой версии обещали для этой что-то типа замены макросов, — на — по пробелу и т.д. Я джва года жду такую фичу. Оно появилось? :)

Не появится. Нет такой клавиши «—». Но автозамена есть, только спецсимволы там использовать нельзя.

Crew
() автор топика

Учитесь писать вслепую. Программа не нужна чуть больше, чем совсем.

anonymous
()

kxneur помер окончательно?

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

>> 3. Нормально ли ручное переключение отработает в адресной строке браузера?

Нет, не нормально.


Например, в строке ФФ я набираю дштгчющкпюкг, нажимаю хоткей, данная последовательность в linux.org.ru преобразится?

kernelpanic ★★★★★
()
[LOG] 10:02:26 Встановлено глибину Debug log-журналу
[LOG] 10:02:26 Системные клавиатурные раскладки:    
[LOG] 10:02:26    Неиспользуется группа XKB 'English', раскладка 'arsi', группа '0'
[LOG] 10:02:26 Всего найдено 1 раскладок клавиатуры
…

о_О

#include <stdio.h>
#include <assert.h>
#include <memory.h>
#include <X11/XKBlib.h>

int main() {
        Display *dpy = XOpenDisplay(NULL);
        XkbDescRec desc;
        char *names[XkbNumKbdGroups];
        int i;

        assert(dpy != NULL);
        memset(&desc, 0, sizeof(desc));
        desc.device_spec = XkbUseCoreKbd;
        XkbGetControls(dpy, XkbGroupsWrapMask, &desc);
        XkbGetNames(dpy, XkbGroupNamesMask, &desc);
        XGetAtomNames(dpy, desc.names->groups, desc.ctrls->num_groups, names);
        for (i = 0; i < desc.ctrls->num_groups; ++i)
                printf("%d) %s\n", i, names[i]);

        return 0;
}
$ ./a.out
0) English
1) Russian
2) Ukrainian
3) Japanese
только не говорите, что вы /etc/X11/xorg.conf парсите ;)

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

Я считаю, что это дело вкуса. Лично мне очень не хватало полноценной замены Пунто. Удобно, экономит время. Надеюсь, Xneur сможет со временем стать такой заменой

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

>Если ниспадающий список не вывалится, то да.
А можно поинтересоваться, в чем принципиальная сложность реализации данной фичи, если «Для xneur не важно куда попадут события клавиш. Он старается перехватить их как можно раньше и отправить их измененными дальше»?

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

> Не появится. Нет такой клавиши «—». Но автозамена есть, только спецсимволы там использовать нельзя.

Автозамену в смысле ReplaceAbbreviation видел, но почему нельзя спецсимволы? Тупо выдать строчку из конфига, от самой аббревиатуры до конца строки, так нельзя? Compose вещь хорошая, но тут было бы таки удобнее. В треде о 0.9.7 обсуждали же вроде бы.

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

> Так есть же compose key, неужто неудобно?

Так было бы удобнее, для часто используемых символов. Чуть быстрее, просто пишешь текст как обычно, а — само на — заменяется. Кавычки можно сюда же, еще что-нибудь.

anonymous
()

А я забиндил переключение языка на кнопочку с изображением форточки (слева внизу на клавиатуре).

Переключение производится одной кнопкой, левым мизинцем (печатаю вслепую ибо). Автоматическая переключалка нужна только для нубов которые двумя указательными пальцами печатают глядя на клавиатуру, а так она мешает - пароли например, url, если код какой нить писать то тоже уныло всё, вот лучше бы автор написал нормальный клавиатурный тренажер, такой что бы было интересно (в игровой форме, но не только для детей).

И полезнее гораздо было бы.

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