В Втр, 24/02/2009 в 17:56 +0300, Victor Wagner пишет: > On 2009.02.24 at 18:35:32 +0700, marouder wrote: > > > > #!/bin/sh > > > env > /tmp/antiword.$$.env > > > locale charmap >> /tmp/antiword.$$.env > > > exec antiword "$@" > > > > > > и по мере индексирования смотреть в появляющиеся файлики > > > /tmp/antiword.NNNNN.log > > > > Проделал, как рекомендовали, в /tmp/antiword...есть строки > > ... > > LINGUAS=ru_RU.UTF-8 > > LANG=C > ~~~~~~~~~ > Вот тут-то он и прячется. antiword, как и положено честному консольному > приложению, скорее всего реагирует на LC_ALL, если её нет, то на > LC_CTYPE, если её нет, то на LANG. А LINGUAS и GDB_LANG ему пофиг. > > странно в /etc/environment задано: > > LANG="ru_RU.UTF-8" > > Это - для интерактивных логинов (и то, по-моему уже не для всех). > А демонам оно не указ. > > > и от имени пользователя $ env $LANG выдает ru_RU.UTF-8 > > Получается, что фильтр отрабатывает немного с другой локалью? > > Угу. Немного. C. > > > У процесса-потомка beagled меняется локаль? > > Можно посмотреть какая локаль у самого beagled. В /proc/<pid beagled>/environ > И если там она тоже C или вообще отстутствует, попробовать её явным > образом выставить в том скрипте, откуда он запускается. > > Либо можно оставить в качестве индексилки вордовых файлов скрипт, > выкинув оттуда сохранение логов и добавив вместо него принудительное > выставление LANG > > #!/bin/sh > LANG=ru_RU.UTF-8 exec antiword "$@" > Спасибо, добавление в /etc/environment переменных LC_CTYPE и LC_ALL решило проблему.
С ув., [email protected] -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

