Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Операционные системы > Linux (Ubuntu, Debian, Red Hat, CentOS, Mint)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.07.2016, 22:24   #1
v4567
Пользователь
 
Регистрация: 06.07.2008
Сообщений: 91
По умолчанию не работает aspell, ispell

В системе установлены два пакета aspell и ispell с русскими словарями, но проверить файл не получается.
Создал текстовый файл в кодировке utf8, первую строку написал на английском, вторую состоящую из одного слова "акно" на русском, третью снова на английском.
Запускаю:
Код:
ispell -d ru ~/txt.txt
или
Код:
ispell -d ru-yo ~/txt.txt
или
Код:
aspell --lang=ru -c ~/txt.txt
или
Код:
 aspell --lang=ru-yo -c ~/txt.txt
файл открывается для проверке и выделение стоит на английском слове, нажимаю "i" для пропуска, что бы перейти к строке с русским словом и переходит не на вторую строку с русским словом, а на третью с английским. Русские слова игнорирует.
Если создать файл только с одним русским словом, то после этих команд просто вылетает обратно в командную строку.
Вот выводы следующих команд:
Код:
aspell dump dicts
en
en-variant_0
en-variant_1
en-variant_2
en-w_accents
en-wo_accents
en_CA
en_CA-w_accents
en_CA-wo_accents
en_GB
en_GB-ise
en_GB-ise-w_accents
en_GB-ise-wo_accents
en_GB-ize
en_GB-ize-w_accents
en_GB-ize-wo_accents
en_GB-w_accents
en_GB-wo_accents
en_US
en_US-w_accents
en_US-wo_accents
he
ru
ru-ye
ru-yeyo
ru-yo

locale
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
Код:
aspell config
[spoiler]
# conf (string)
# главный конфигурационный файл
# default: aspell.conf

# conf-dir (string)
# местонахождение главного конфигурационного файла
# default: /etc

# data-dir (string)
# местонахождение файлов языковых данных
# default: <prefix:lib/aspell-0.60> = /usr/lib/aspell-0.60

# dict-alias (список)
# создание алиасов словаря

# dict-dir (string)
# местонахождение главного списка слов
# default: <data-dir> = /usr/lib/aspell-0.60

# encoding (string)
# ожидаемая кодировка данных
# default: !encoding = UTF-8

# filter (список)
# добавление или удаление фильтра

# filter-path (список)
# пути для поиска фильтров aspell

# mode (string)
# режим фильтра
# default: url
# extra-dicts (список)
# дополнительные используемые словари

# home-dir (string)
# местонахождение личных файлов
# default: <$HOME|./> = /root

# ignore (integer)
# игнорирование слов <= n символов
# default: 1

# ignore-case (boolean)
# игнорирование регистра при проверке слов
# default: false

# ignore-repl (boolean)
# игнорирование команд для сохранения заменяемых пар
# default: false

и т.д.

[/spoiler]

По команде:
Код:
aspell -l ru-yo dump master | aspell -l ru expand | tr ' ' '\n' > aspell_dump-ru-yo.txt
создаётся файл размерам 27 Мбайт со множеством русских слов.

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

Если кто знает в чём причина, помогите пожалуйста.
За помощь заранее благодарен!
v4567 вне форума Ответить с цитированием
Старый 28.07.2016, 01:36   #2
pompiduskus
юзер как все
Участник клуба
 
Аватар для pompiduskus
 
Регистрация: 10.01.2012
Сообщений: 1,586
По умолчанию

Это странно ! А что за OS ?

У меня Debian, Whezzy, все работает !

Код:

aspell -l ru -c text.txt
Код:
toor@tr:/tmp$ cat text.txt
В системе установлены два пакета аспелл и испелл с русскими словарями, но проверить файл не получается.
Создал текстовый файл в кодировке utf8, первую строку написал на английском, вторую состоящую из одного слова "акно" на русском, третью снова на английском.
Запускаю:
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
pompiduskus вне форума Ответить с цитированием
Старый 29.07.2016, 15:26   #3
v4567
Пользователь
 
Регистрация: 06.07.2008
Сообщений: 91
По умолчанию

Федора старая, 11 версии.
v4567 вне форума Ответить с цитированием
Старый 29.07.2016, 15:27   #4
v4567
Пользователь
 
Регистрация: 06.07.2008
Сообщений: 91
По умолчанию

Буквально несколько дней назад работала, так как проверял файл, а сейчас перестало. Вроде никаких изменений не делал в системе.
v4567 вне форума Ответить с цитированием
Старый 20.08.2016, 20:57   #5
v4567
Пользователь
 
Регистрация: 06.07.2008
Сообщений: 91
По умолчанию

Проблему решил. Как говорится нарочно не придумаешь.
После того как разместил тему, несколько дней попытался решить проблему но не получилось. Потом было не до этого. Два дня назад всё таки ради принципа опять вернулся к ней.
У меня есть сервер на котором установлен aspell, проверил на нём и оказалось что всё работает. Посмотрел там версию aspell и она оказалась 0.60.6.1, а у меня была 0.60.6. Думал дело в ней, в общем менял бинарники, библиотеки, словари, локализацию но ничего не помогло, провозился целый день.
На следующий день решил использовать команду:
Код:
strace -xf -eopen -o <файл куда записывать вывод> <команда>
и посмотреть какие файл использует aspell, использует ли он вообще русскоязычные словари.

Немного надо сказать как у меня перестала работать эта проверка орфографии. Её я использую в редакторе mcedit. Как то на linux.org.ru был патч при помощи которого прикручивалась проверка орфографии. Выделяешь слово, потом в меню выбираешь проверку орфографии и если слово написано с ошибкой то появляется менюшка aspell заменить пропустить и т.д. В этой менюшки есть опция добавить и тогда проверяемое слово добавляется как правильно написанное.
Раньше проверка орфографии у меня работала, потом долго я ей не пользовался, и перед тем как возникла проблема мне она опять понадобилась. Я попытался проверить работает она или нет, создал файлик, в первой строчке написал абракадабру на латинице, во втором слово "акно" (правильно окно), в третьей строке опять абракадабру на латинице. Проверяю, всё нормально работает. Потом ещё раз решил проверить, опять создал такой файлик и уже проверка орфографии не работала.
Так вот когда я при помощи команды strace посмотрел к каким файлам обращается aspell то оказалось что он смотрит на фалйы ~/.aspell.ru.prepl и ~/.aspell.ru.pws
Заглянув в файл aspell.ru.pws увмдел там слово "акно"
Оказывается в этот файл заносятся слова которые не надо проверять, то есть они написаны правильно. Удалил это слово и у меня всё заработало.
Что произошло: когда я первый раз проверял, то случайно занёс слово "акно" в этот файл как правильно написанное. При второй проверке я опять создал такой же файлик, первая строка абракадабра на латинице, вторая строка "акно", третья опять абракадабра на латинице, так как "акно" было занесено как правильное то оно и пропускалось при проверке.
При последующих проверках я опять создавал файлики с этим словом "акно". Если бы я написал другое слово, то увидел бы что всё работает.
Вот так вот на ровном месте убил несколько дней если взять в общее время на решение этой проблемы, которой по сути и не было.
v4567 вне форума Ответить с цитированием
Старый 21.08.2016, 04:24   #6
pompiduskus
юзер как все
Участник клуба
 
Аватар для pompiduskus
 
Регистрация: 10.01.2012
Сообщений: 1,586
По умолчанию

Вооо блин Чего только не бывает !
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
pompiduskus вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите разобраться - не работает файл со скриптом. При загрузке из консоли этот же скрипт работает Kazik JavaScript, Ajax 6 27.11.2015 16:09
Не работает анимация. Механизм работает лишь при изменения числа в едит1. Студент ММИ Помощь студентам 1 18.05.2015 07:39
Работа со словарем ispell kireev C++ Builder 0 17.01.2013 22:14
не работает relese версия проги и debug работает тока на моем компе D][mon C# (си шарп) 2 04.05.2012 20:21
Почему программа на С++ не работает с локальным описанием массива, но работает с глобальным? >>STINGER<< Помощь студентам 4 08.03.2011 09:56