Главная Облако тегов     Подписка на ленту обновлений (RSS) XMPP (Jabber) совместимые службы мгновенных сообщений. К примеру Google Talk, Gizmo, jabber.org Пишите письма О сайте
Вы находитесь здесь: Заметки экспериментатора » Lazarus IDE
Translations of this page:

Lazarus IDE

Lazarus это Delphi-подобная среда разработки для FreePascal.

Информацию о Lazarus и FreePascal на русском языке Вы можете найти по адресу http://freepascal.ru/

Русский язык в [K]Ubuntu

:!: Этот же алгоритм подходит и для Debian.

При запуске Lazarus в Kubuntu я столкнулся с проблемой русского языка. Виной тут, видимо тот факт, что локаль Kubuntu по умолчанию UTF-8, а GTK1.2 который используется для реализации графического интерфейса эту локаль не воспринимает.

Самое логичное решение пересобрать Lazarus с использованием GTK2 или QT (в библиотеке LCL уже есть интерфейсы для этих библиотек) на данный момент не подходит - эти интерфейсы ещё не стабильны. Так при сборке с GTK2 Lazarus заработал и даже я мог использовать русский текст, но не особо приглядываясь видно, что интерфейс весь трещит по швам. Собрать рабочую версию с использованием QT мне так и не удалось.

Ну что же, раз гора не идёт к Магомеду, то Магомед идёт к горе. Подойдём с другого боку и предоставим лазарю однобайтную кодировку которую он поймёт. К примеру CP1251.

В Kubuntu по умолчанию не предусмотрено локали с такой кодировкой, значит следует её добавить:

# localedef -c -i ru_RU -f cp1251 ru_RU.cp1251

Теперь можно запускать IDE

$ LANG="ru_RU.cp1251" startlazarus

Понятно, что каждый раз набирать такую конструкцию не удобно, так что можно создать скрипт для запуска лазаря:

~/bin/startlazarus

#!/bin/sh
 
export LANG="ru_RU.cp1251"
/usr/local/bin/startlazarus

О русификации см. так же »Проблемы русификации в Linux»

Настройка шрифта

Для полного счастья, следует настроить шрифт для gtk-1 приложений. Это можно сделать с помощью приложения »gtk-theme-switch» или в ручную прописать шрифт в »~/.gtkrc».

~/.gtkrc

...
style "user-font"
{
  font="-rfx-helvetica-medium-r-normal-*-10-*-*-*-p-*-microsoft-cp1251"
}
widget_class "*" style "user-font"
...
Как видно, я использую шрифт »helvetica (rfx)». Из испробованных мной он наиболее хорошо смотрится и имеет кодировку cp1251.

Ivan A-R 11.10.2006 16:51

Дискуссия

Dmitry, 2007/09/27 06:58

Очень своевременная статья. Большое спасибо. Через терминал я запустил Lazarus, но как создать файл запуска и настройка шрифтов - млжно поподробнее? Пожалуйста, я только начинаю работать в Linux. У меня ubuntu

Ivan A-R, 2007/09/27 10:51

Не совсем понял, какой файл запуска нужен?

Drongo, 2007/09/27 11:45

И опять вин кодировка…. юзаем УТФ и не лодно быть проблем. А летше всего учите матчасть.

Ivan A-R, 2007/09/27 21:25

Чукча не читатель, чукча писатель? В заметке написано, почему не utf

jakshi, 2007/09/28 15:53

В заметке неправильно написано что GTK1.2 не воспринимает локаль UTF8. У меня на фирме многие используют lazarus именно с локалью utf8. Проблема отображения UTF8 в gtk1.2 кроеться, насколько знаю, в ошибке в x.org с русской локалью, которая (ошибка) переходит из версии к версии. Для ubuntu есть готовое решение (поищите на форумах ubuntu). Так же есть описание исправления этой проблемы на wiki gentoo (в HOWTO о руссификации под utf8). Я использую centos 5, потому собрал исправленые версии gtk1.2 (в нем нужно исправить файл gtkrc.ru и симлинки на него, указав подходящие шрифты) и x.org в rpm. Проблемы с отображением для локали utf8 пропадают не только в lazarus но и в других gtk1.2 приложениях (например xmms).

Ivan A-R, 2007/09/28 21:45

Когда статья писалась, решения не было. Сейчас проверил, Debian Etch работает с одной правкой в /etc/gtk/gtkrc.utf-8 (нужно выставить существующий шрифт).

Alex, 2009/03/31 21:13

А можно где-нить внутри lazarus задать кодировку по-умолчанию, ну чтобы скажем MEMO не с utf работало, а с ANSII???

Alex, 2009/03/31 21:13

А можно где-нить внутри lazarus задать кодировку по-умолчанию, ну чтобы скажем MEMO не с utf работало, а с ANSII???

Enter your comment (wiki syntax is allowed):
Краткая справка
  • **полужирный**
  • //курсив//
  • > цитата
  • [[http://link | Заголовок ссылки]]
Больше о синтаксисе...
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии:CC Attribution-Noncommercial-Share Alike 3.0 Unported
lazarus-in-linux.txt · Последние изменения: 2007/11/08 17:23 От plumbum