Page 1 of 2

Русская локализация

PostPosted: Sat Apr 25, 2009 10:09 am
by Infy
Информация о системе
Code: Select all
$ uname -a
Linux eugene-desktop 2.6.28-11-generic #42-Ubuntu SMP Fri Apr 17 01:57:59 UTC 2009 i686 GNU/Linux


Какие конкретно действия выполняются для того, чтобы вызвать проблему ?
  • Запускаем программу
  • Нажимаем F4
  • На вкладке интерфейс выбираем Язык программы=Русский
  • Перезагружаем программу

Что произошло в результате проделанных действий ?
Язык остался английским.
Если нажать F4, то видим: Язык программы=Русский.

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

После выполнения в папке /locale с исходниками:
Code: Select all
lrelease ru.ts

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

Пользуясь случаем, хочу сказать спасибо за такую чудесную программу. ;)
Лучшего словаря для GNU/Linux я еще не видел. :)

Re: Русская локализация

PostPosted: Sat Apr 25, 2009 11:17 am
by ikm
Спасибо:)

Да, я этот момент и не тестировал. Для себя я всегда делал вручную lrelease goldendict.pro и думал, что make install в случае чего это сам должен сделать, благо в TRANSLATIONS перевод прописан. Но, как выяснилось, он этого все-таки не делает. Ежели кто знает, как это грамотно решается в .pro-файле, отпишитесь, пожалуйста.

Re: Русская локализация

PostPosted: Sat Apr 25, 2009 2:12 pm
by skew
Странно, у меня после этих манипуляций русский язык так и не заработал :-( Вы не могли точне указать какие действия необходимо для этого выполнить?

Linux debian 2.6.29-1-686 #1 SMP Fri Apr 17 14:35:16 UTC 2009 i686 GNU/Linux

Выполнял действия предложенные infy, но к положительному результату это не привело, программа так и осталась на англиском языке. Файл ru.qm копировал даже в каталог с бинарным файлом, но не помогло. Goldendict компилировал из исходников.

Заранее Спасибо!

Re: Русская локализация

PostPosted: Sat Apr 25, 2009 2:17 pm
by ache
У меня тоже не работает (Gentoo Linux). В какой директории программа ищет locale/ru.qm ?

Re: Русская локализация

PostPosted: Sat Apr 25, 2009 6:44 pm
by Infy
По-умолчанию - это каталог /usr/local/share/apps/goldendict/locale.
После действий в первом посте в папке с исходным кодом следует обязательно выполнить:
Code: Select all
qmake-qt4
make clean
make
make install

Если программа компилируется первый раз, то make clean можно опустить.

После этого программа сама скопирует все по нужным папкам.
Если не выполнять make install, то нужно вручную скопировать файл ru.qm в /usr/local/share/apps/goldendict/locale.

Re: Русская локализация

PostPosted: Sat Apr 25, 2009 7:50 pm
by skew
Вот! Теперь всё заработало! Спасибо за решение. Полностью согласен с мнением, что это один из лучших просмотрщиков словарей под linux!

Re: Русская локализация

PostPosted: Wed Apr 29, 2009 9:26 pm
by GArik_
У меня так и не заработало. Файл с переводом лежит в /usr/share/goldendict/locale/ru.qm. Путь к переводу в goldendict.pro перед сборкой менял -- всё равно не находит. И запускать пробовал и из /usr/share/goldendict/, и из /usr/share/goldendict/locale -- никак не находится. Собирал пакет с помощью этого скрипта: http://paste.org.ru/?r9uwzt

Re: Русская локализация

PostPosted: Wed Apr 29, 2009 9:33 pm
by ikm
Возможно, имеет смысл обратиться к автору этого скрипта?

Re: Русская локализация

PostPosted: Wed Apr 29, 2009 10:18 pm
by GArik_
Там ключевые моменты:
Code: Select all
sed -i "s|share/apps/goldendict/locale/|share/goldendict/locale/|g" goldendict.pro

PREFIX=/usr qmake goldendict.pro
make
make install INSTALL_ROOT=$PKG

lrelease locale/*.ts
cp -a locale/*.qm $PKG/usr/share/goldendict/locale

Вроде бы в проекте путь прописан верно. Файл в этой директории лежит. Но приложение перевод не находит вне зависимости от ...

Re: Русская локализация

PostPosted: Wed Apr 29, 2009 10:37 pm
by ikm
Ну что тут еще можно сказать. Выглядит верно. Но раз не работает, значит, что-то всё-таки неверно. Стоит для начала посмотреть, какое значение -DPROGRAM_DATA_DIR передается g++ при компиляции файлов проекта.