Конференция "FreePascal" » Языковая поддержка в Free Pascal
 
  • Ksena © (04.11.07 16:00) [0]
    После установки Free Pascal под WinXP столкнулась с проблемой неполной поддержки украинского языка. В комментариях вместо буквы "і" ставится знак вопроса.
    Под Линуксом (ASPLinux 11) вообще нет даже русского.Хотя тут я допускаю, что в силу своей малоопытности работы с Линуксом не всё сделала правильно.
    Так что прошу совета, уважаемые профи.
  • Мистер Т (04.11.07 17:46) [1]
    1. Под Линуксом скорее всего неверно выбрана кодировка (по умолчанию стоит KOI-8R - русская или KOI-8U - украинская, если не подводит память, но могут быть и CP1251 (многие по привычке после Win именно её ставят), или UTF-8, UTF-16 для юникодовых систем)
    2. В WinXP стоит посмотреть "Окружение -> Настройки редактора -> Дисплей -> Шрифт редактора по умолчанию -> Шрифт редактора.
    По умолчанию стоит Courier New, но стоит попробовать другой с гарантированной поддержкой украинской "i".
  • Dmy (09.11.07 12:46) [2]
    В Windows это не поможет. Проблема в том, что кириллической буквы і просто нет в кодировке 866, которая используется в консоли. (Причём буквы ї и є, ровно как и белорусская ў, имеются). Вообще, нижний ряд этой кодировки различается от реализации к реализации (так, в FreeDOS там есть буква і значок евро ^_^).

    В общем, при вводе текста кириллические буквы переводятся в кириллические, а латинские — в латинские. Но, всвязи с отсутствием кириллической і в кодировке горе-программисты и мелкомягкой корпорации решили не заменять его на латинское i (что, в общем-то, предполагали другие программисты и той же корпорации, когда включали в реалиацию кодировки буквы є, ї, ў), а заменить его на знак вопросика.

    Посему в Windows во всех консольных программах отсутствует поддержка украинского и белорусского языков. Рекомендуется использовать редакторы с графическим интерфейсом.

    Если уж очень хочется, можно использовать латинскую букву i вместо кириллической. Чтобы не мучаться с вводом, можно скачать Keyboar Layout Creator и создать свою собственную раскладку клавиатуры, в которой всё будет так же, как в стандартной украинской/белорусской, но вместо кириллической і будет латинская i. Визуально — разницы никакой (хотя могут возникнуть некоторые сложности с другими вещами).

    Ещё, чисто теоретически, можно написать программу, которая будет перехватывать функци перекодировки из 1251 и уникода в 866 и при наличии кириллической і заменять его латинской только при её отсутствии. Это был бы хороший вариант, но это можно (и, в теории, могло бы несколько замедлить работу системы).

    Вывод: використовуйте програми, які працюють в графічному режимі і все буде добре. Тим більше, стандартний редактор, який встановлюється (FPIDE) з FreePascal, далеко не єдиний, і існує велика кількість інших.

    В Linux же он русский вообще не поддерживает, насколько я понимаю, и не будет в будущее время — для этого нужно достаточно много работы. На freepascal.ru это недавно обсуждали: http://freepascal.ru/forum/viewtopic.php?t=2797&start=0
 
Конференция "FreePascal" » Языковая поддержка в Free Pascal
Есть новые Нет новых   [134427   +38][b:0][p:0]