Free Pascal и Unicode

Обсуждаем вопросы продвижения Linux в школах, делимся опытом, рассказываем об успехах, просим помощи

Модератор: Модераторы разделов

Аватара пользователя
Сергей Ирюпин
Сообщения: 81
ОС: Windows/Linux
Контактная информация:

Free Pascal и Unicode

Сообщение Сергей Ирюпин »

Возможно, этот вопрос был бы уместнее в разделах "Программы", но решил-таки задать его в этом разделе, так как он связан непосредственно со школой.

Заканчиваем донастройку Linux-класса в одной из школ. Ставим Xubuntu (процессоры слабенькие, 128 Мб ОЗУ). Всплыла следующая проблема: Free Pascal (как замена виндузового Turbo Pascal) прекрасно работает с латинскими буквами (в комментариях и текстовых строках), но при попытке ввода русских букв выводит по 2 странных символа на одно нажатие. Как понимаю, это потому что Unicode (2 байта на букву).

Вопрос: как это побороть?

Варианты: "Free Pascal в топку" - не принимаются. Нужен именно он - fp
Спасибо сказали:
Аватара пользователя
Alexx2000
Сообщения: 27
ОС: Mandriva 2010.0
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Alexx2000 »

На www.freepascal.ru не заходили, можно попробовать задать вопрос там.
Спасибо сказали:
Аватара пользователя
Сергей Ирюпин
Сообщения: 81
ОС: Windows/Linux
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Сергей Ирюпин »

Уважаемый, я ищу ответ на вопрос, а не список мест, где мне могут ответить на вопрос. Адреса freepascal.ru и freepascal.org мне уже известны.
Спасибо сказали:
Аватара пользователя
Portnov
Модератор
Сообщения: 1786
Статус: Матёрый линуксоид
ОС: Debian testing/unstable
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Portnov »

Блин, была эта проблема, помню что решил, но не помню как :(
Решением какой-то похожей проблемы (тоже что-то было с русскими буквами) оказалось - запускать fp не в иксовом терминале, а непосредственно в консоли (ctrl-alt-f1). М.б. и вам поможет.
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Спасибо сказали:
Аватара пользователя
Tirion
Сообщения: 55
ОС: Edubuntu 7.10 Gutsy Gibbon
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Tirion »

А в чём пишите? В редакторе Geany под Ubuntu можно устанавливать кодировку программы. У меня всё работает корректно. В Lazarus нужно по-моему включать кодировку в текст программы. Какой конкретно не помню, похоже было и в Delphi.
Спасибо сказали:
Аватара пользователя
Liksys
Сообщения: 2910

Re: Free Pascal и Unicode

Сообщение Liksys »

Сергей Ирюпин писал(а):
24.09.2007 16:20
Уважаемый, я ищу ответ на вопрос, а не список мест, где мне могут ответить на вопрос. Адреса freepascal.ru и freepascal.org мне уже известны.

Уважаемый, а помоему было бы вполне логично спросить именно там, поскольку там специализированный ресурс и процентно больше знающих людей на эту тему :angry:
Спасибо сказали:
Аватара пользователя
Сергей Ирюпин
Сообщения: 81
ОС: Windows/Linux
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Сергей Ирюпин »

Tirion писал(а):
25.09.2007 21:04
А в чём пишите?

В стандартном текстовом IDE, которые запускается в консоли.
Спасибо сказали:
Аватара пользователя
Tirion
Сообщения: 55
ОС: Edubuntu 7.10 Gutsy Gibbon
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Tirion »

Сергей Ирюпин писал(а):
26.09.2007 10:03
Tirion писал(а):
25.09.2007 21:04
А в чём пишите?

В стандартном текстовом IDE, которые запускается в консоли.

А если в Geany и выставить кодировку в настройках?
Спасибо сказали:
Аватара пользователя
HAW
Сообщения: 1328
ОС: ALT 4.1branch

Re: Free Pascal и Unicode

Сообщение HAW »

хочется вывести в чисто поле,
поставить лицом к стенке
и выстрелить в лоб,
что бы поняли!!!
Спасибо сказали:
Sfunx
Сообщения: 47

Re: Free Pascal и Unicode

Сообщение Sfunx »

Сергей Ирюпин писал(а):
26.09.2007 10:03
Tirion писал(а):
25.09.2007 21:04
А в чём пишите?

В стандартном текстовом IDE, которые запускается в консоли.


Если работаете в KDE, то попробуйте в эмуляторе терминала konsole выставить однобайтовую кодировку - например koi8. Тогда при запуске fpc-ide в этом эмуляторе терминала он будет работать именно с этой кодировкой.
Спасибо сказали:
Аватара пользователя
akdengi
Сообщения: 4244

Re: Free Pascal и Unicode

Сообщение akdengi »

сли работаете в KDE, то попробуйте в эмуляторе терминала konsole выставить однобайтовую кодировку - например koi8. Тогда при запуске fpc-ide в этом эмуляторе терминала он будет работать именно с этой кодировкой.


Читаем мануал - IDE не поддерживает 16 битовые кодировки и koi-8r. То бишь только инглиш.
Меня тут снова нет :P
Спасибо сказали:
Аватара пользователя
Сергей Ирюпин
Сообщения: 81
ОС: Windows/Linux
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Сергей Ирюпин »

Sfunx писал(а):
27.09.2007 13:14
Если работаете в KDE...

А если - в XFCE?

Читаем мануал - IDE не поддерживает 16 битовые кодировки и koi-8r.

Windows версия Free Pascal прекрасно работает с cp1251.

То есть, задача лишь в том, чтобы запустить терминал с cp1251.
И как это сделать?
Спасибо сказали:
Sfunx
Сообщения: 47

Re: Free Pascal и Unicode

Сообщение Sfunx »

Сейчас проверил. точно - не работает и koi8.

Может его просто как-нибудь пересобрать надо ?
Спасибо сказали:
Аватара пользователя
akdengi
Сообщения: 4244

Re: Free Pascal и Unicode

Сообщение akdengi »

1 метод - извращенный - ставим Wine ---> >FP for WIN --> и запускаем wineconsole c:\путь\fp.exe
2 метод - пишем проги в Kdevelop выбрав язык Паскаль для проекта
3 метод - НЕ ИСПОЛЬЗУЕМ русские буквы - только транслитерацию :)

P.S. Сегодня посмотрю FP 2.2 - в нем обещали исправить :)
Меня тут снова нет :P
Спасибо сказали:
Sfunx
Сообщения: 47

Re: Free Pascal и Unicode

Сообщение Sfunx »

akdengi писал(а):
27.09.2007 23:24
1 метод - извращенный - ставим Wine ---> >FP for WIN --> и запускаем wineconsole c:\путь\fp.exe
2 метод - пишем проги в Kdevelop выбрав язык Паскаль для проекта
3 метод - НЕ ИСПОЛЬЗУЕМ русские буквы - только транслитерацию :)

P.S. Сегодня посмотрю FP 2.2 - в нем обещали исправить :)



Вот ещ... Метод 4. Самый практичный. Используем редактор mc. На расширение *.pas вешаем скрипт, который запускает fpc и собирает указанный файл. Ну или в меню по F2.

Я, лично, когда с fpc возился именно так делал. Правда паскаль по роду деятельности мне никак не нужен, поэтому забросил.
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian
Контактная информация:

Re: Free Pascal и Unicode

Сообщение diesel »

а метод "пускать IDE в локали KOI8-R" почему не катит?
Спасибо сказали:
Аватара пользователя
akdengi
Сообщения: 4244

Re: Free Pascal и Unicode

Сообщение akdengi »

а метод "пускать IDE в локали KOI8-R" почему не катит?


Поэтому:

Код: Выделить всё

 Note: KOI8-R/KOI8-U fonts have all required characters,  but  the  line
       drawing  characters are not in the right positions. We may support this
       in the future, but currently do not.


В 2.2 не исправили, зато заработала мыша в Konsole :) Сегодня попробую подменить кодировку на cp1251 как в Lazarus.
Меня тут снова нет :P
Спасибо сказали:
Аватара пользователя
Сергей Ирюпин
Сообщения: 81
ОС: Windows/Linux
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Сергей Ирюпин »

akdengi писал(а):
27.09.2007 23:24
1 метод - извращенный - ставим Wine ---> >FP for WIN --> и запускаем wineconsole c:\путь\fp.exe

Хм... Такое в голову не приходило даже... Попробую. Но хотелось бы чего-то более естественного :)

2 метод - пишем проги в Kdevelop выбрав язык Паскаль для проекта

Не годится, поскольку - XFCE.

3 метод - НЕ ИСПОЛЬЗУЕМ русские буквы - только транслитерацию :)

Тоже вариант, но какой-то... оппортунистический...

Sfunx писал(а):
28.09.2007 06:22
Метод 4. Самый практичный. Используем редактор mc. На расширение *.pas вешаем скрипт, который запускает fpc и собирает указанный файл. Ну или в меню по F2.

Не годится совершенно. Вся ценность IDE - это возможность отладки, пошагового исполнения. Что немаловажно для учебного процесса.

Ну а если запускать IDE в локали cp1251?
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian
Контактная информация:

Re: Free Pascal и Unicode

Сообщение diesel »

Сергей Ирюпин писал(а):
28.09.2007 08:55
Ну а если запускать IDE в локали cp1251?

ни с KOI8-R, ни с CP1251 ниче не получается :( как-то криво эта IDE сделана, мягко говоря.
Спасибо сказали:
Sfunx
Сообщения: 47

Re: Free Pascal и Unicode

Сообщение Sfunx »

порылся я вчера в коде этой ИДЕ.

Там вместо функций isalpha() isnum() и иже с ними используется тупо заданные на паскале set of...

Вообще дело скорее всего в выводе, а не в вводе - есть у меня такое подозрение. Если до чего дельного докопаюсь - скажу.
Спасибо сказали:
Flaming
Сообщения: 2579

Re: Free Pascal и Unicode

Сообщение Flaming »

Ну что, проблема решена?
Она всё ещё актуальна!
Спасибо сказали:
Аватара пользователя
Tirion
Сообщения: 55
ОС: Edubuntu 7.10 Gutsy Gibbon
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Tirion »

Сергей Ирюпин писал(а):
28.09.2007 08:55
akdengi писал(а):
27.09.2007 23:24
1 метод - извращенный - ставим Wine ---> >FP for WIN --> и запускаем wineconsole c:\путь\fp.exe

Хм... Такое в голову не приходило даже... Попробую. Но хотелось бы чего-то более естественного :)

2 метод - пишем проги в Kdevelop выбрав язык Паскаль для проекта

Не годится, поскольку - XFCE.

3 метод - НЕ ИСПОЛЬЗУЕМ русские буквы - только транслитерацию :)

Тоже вариант, но какой-то... оппортунистический...

Sfunx писал(а):
28.09.2007 06:22
Метод 4. Самый практичный. Используем редактор mc. На расширение *.pas вешаем скрипт, который запускает fpc и собирает указанный файл. Ну или в меню по F2.

Не годится совершенно. Вся ценность IDE - это возможность отладки, пошагового исполнения. Что немаловажно для учебного процесса.

Ну а если запускать IDE в локали cp1251?


Сергей, а чем вас Geany не устроил?
1. Под GTK
2. Никаких проблем с кодировкой, по крайней мере в gterminal.
3. Настраиваемая
4. Полностью русифицированная.

Зачем вам нативная IDE?

Flaming
Тебе такой же совет, только вместо gterminal в настройках укажи системный путь к Konsole.
Спасибо сказали:
Аватара пользователя
Evgueni
Сообщения: 599
ОС: Ubuntu ☹
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Evgueni »

Сергей Ирюпин писал(а):
28.09.2007 08:55
Не годится совершенно. Вся ценность IDE - это возможность отладки, пошагового исполнения. Что немаловажно для учебного процесса.
Есть ещё один возможный путь: emacs+make Наверняка там всё это предусмотрено :)

Посмотрел на google - быстро ничего не нашёл :( Видимо никто пока не озадачивался или чуть побольше времени надо потратить.
Спасибо сказали:
NIS
Сообщения: 26
ОС: Kubuntu 7.10, OpenSUSE 10.3

Re: Free Pascal и Unicode

Сообщение NIS »

Посмотрел - в кубунту если выставлять различные кодировки не работает
Проблема в выводе - если набрать это по-русски и сохранить - в файле всё нормально по-русски
Попробуйте использовать (как сказали выше) не в эмуляторе терминала, а в консоле нативной (ctrl+alt+f2). Думаю должно помочь.
Вот только в убунте консоль с русским плохо дружит, поэтому /me пошёл гуглить, как это исправить
P.S Мы используем dosemu+borland pascal, т.к во FreePascal для linux пока нет graph, который входит в программу
Спасибо сказали:
yaleks
Сообщения: 2121
Статус: вне статуса
ОС: Gentoo ~

Re: Free Pascal и Unicode

Сообщение yaleks »

NIS писал(а):
04.02.2008 22:49
P.S Мы используем dosemu+borland pascal, т.к во FreePascal для linux пока нет graph, который входит в программу

Модуль GRAPH в FP для Linux есть, но он работает через svgalib, которая не может работать в X11. Можно настроить svgalib и запускать FP в текстовом режиме (без запущенных иксов)

Запускайте в DosEmu FreePascal для DOS и будет у вас всё работать, там даже инициализация модуля проще и возможностей больше.

Ни в какую программу модуль graph не входит, это личное желание учителя его преподавать.
Спасибо сказали:
Аватара пользователя
Portnov
Модератор
Сообщения: 1786
Статус: Матёрый линуксоид
ОС: Debian testing/unstable
Контактная информация:

Re: Free Pascal и Unicode

Сообщение Portnov »

Для графики под иксами можно использовать модуль sdl4freepascal. Это биндинги SDL, там не только графика, но и анимация, звук и пр. мультимедия. В отличие от "модуля graph", который нигде кроме раритетного турбо паскаля под досом не применяется, SDL - современная портируемая библиотека, ее знание ученикам вполне может пригодиться.
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Спасибо сказали:
NIS
Сообщения: 26
ОС: Kubuntu 7.10, OpenSUSE 10.3

Re: Free Pascal и Unicode

Сообщение NIS »

Portnov писал(а):
05.02.2008 09:29
Для графики под иксами можно использовать модуль sdl4freepascal. Это биндинги SDL, там не только графика, но и анимация, звук и пр. мультимедия. В отличие от "модуля graph", который нигде кроме раритетного турбо паскаля под досом не применяется, SDL - современная портируемая библиотека, ее знание ученикам вполне может пригодиться.

Да знаю я это, а ещё лучше использовать C++ и SDL
А теперь это школьникам обьясни, которые graph с 10 функциями еле понимают. Для 90% школьников это абсолютно не интересно, для них главное - получить оценку. Большинство graph забывают через месяц после того, как тема прошла
P.S В svn версии freepascal уже есть реализация graph через SDL
Спасибо сказали:
Flaming
Сообщения: 2579

Re: Free Pascal и Unicode

Сообщение Flaming »

Tirion писал(а):
28.01.2008 19:06
Flaming
Тебе такой же совет, только вместо gterminal в настройках укажи системный путь к Konsole.

Я итак уже неплохо использую kate, удобная штука. Правда, есть парочка неудобств. Ещё пробовал vim - штука удобная, мне понравилась, но её изучать дольше чем сам паскакаль, и привыкать долго. :-D В общем, рекомендую.
Но хотелось бы "родной IDE" Тем более в нём самом в венде русский язык работает, а в линуксе почему-то нет - непорядок!
Спасибо сказали:
Аватара пользователя
HAW
Сообщения: 1328
ОС: ALT 4.1branch

Re: Free Pascal и Unicode

Сообщение HAW »

может gtk1 и шрифты?
хочется вывести в чисто поле,
поставить лицом к стенке
и выстрелить в лоб,
что бы поняли!!!
Спасибо сказали:
Koshkin
Сообщения: 12
ОС: Ubuntu

Re: Free Pascal и Unicode

Сообщение Koshkin »

Про нативную IDE надо забыть - пакость редкостная. Столько глюков - перед учениками в школе было стыдно.

Ставим Geany - и спокойно работаем незагаживая себе мозги ненужными проблемами.
Спасибо сказали:
Ответить