Страница 1 из 3

Кодировка в окне ide

СообщениеДобавлено: 19.09.2011 00:12:17
kirill
Прошу прощения. Воспользовался поиском но так и не решил проблему.

Есть FAR 2.x. Из него сделал привязку для расширения pas по запуску fp. Когда пишу текст по-русски в ide (fp) он сохраняется в досовской кодировке (cp866). При этом весь текст в консоле выводится в cp1251 (виндовой ansi кодировке). Встроенным редактором фара переделываю кодировку файла в cp1251. Если в фаре делаю chcp 1251 и после этого вызываю free pascal для файла, то текст отображается уже корректно в ide и в консоле красиво все выглядит, но псевдографика заменяется на "некрасивые символы".

Кто как корректно настраивал Free Pascal IDE для корректной работы с русским языком. Надо сделать для школы (зоопарк машин разнобразный, начиная с win2000 до Win7). Сейчас игрался на WinXP Pro Rus и FP 2.4.4.

Re: Кодировка в окне ide

СообщениеДобавлено: 19.09.2011 01:42:31
Little_Roo
Не совсем понятно, какой IDE и, главное, зачем?
Сам в школе работаю, и проблем с Lazarus не было и нет, за исключением периодического обновления оного...
А зоопарк...так это ж не критично - целерон 366, 128 метров мозга :oops: , ХР - и для решения почти всех школьных задач хватает

Re: Кодировка в окне ide

СообщениеДобавлено: 19.09.2011 03:09:58
Vadim
Наверное, речь идёт о текстовой IDE. :)
Если вопрос упирается именно в псевдографику, то единственная кодировка, которая поддерживает псевдографику в винде - это cp866. Будет cp866 - будет и псевдографика. ;)

Re: Кодировка в окне ide

СообщениеДобавлено: 19.09.2011 20:33:31
kirill
Да, спасибо, Вадим.. Имелась ввиду именно текстовая ide.

А что все уже перешли на lazarus и никто в консоле не учит программировать?

Re: Кодировка в окне ide

СообщениеДобавлено: 19.09.2011 20:56:18
Little_Roo
kirill писал(а):А что все уже перешли на lazarus и никто в консоле не учит программировать?

Так ведь время не стоит на месте - появляются новые технологии, и с ними - новые возможности.
Я очень не уверен, хотя могу и ошибаться, что Вы учите своих учеников командам DOS

А вот по поводу Lazarus... Пользую и хлопот нет...
У меня 11-классники, и те, что выбрали ЕГЭ, и обычные - сначала КОНСОЛЬНАЯ программа, а затем - кнопкотоптание и мышкотаскание :D
Зачем изобретать (даже не велосипед, а самокат) - в консоли ВСЕ навыки можно отточить...

Да простят Великие обычного препода в школе...

Re: Кодировка в окне ide

СообщениеДобавлено: 20.09.2011 02:57:45
Vadim
kirill писал(а):А что все уже перешли на lazarus и никто в консоле не учит программировать?

У Lazarus есть преимущество - выпадающая подсказка кода.

Re: Кодировка в окне ide

СообщениеДобавлено: 20.09.2011 07:32:13
sign
kirill писал(а):А что все уже перешли на lazarus и никто в консоле не учит программировать?

А зачем?

Re: Кодировка в окне ide

СообщениеДобавлено: 20.09.2011 08:25:26
kirill
Vadim писал(а): Lazarus есть преимущество - выпадающая подсказка кода.

А во FP вроде тоже есть. Я когда писал program - половину ввела иде.
sign писал(а):А зачем?

Вы еще скажите, что и assembler знать не обязательно. Зачем его в университете преподают?! Хотя бы потому что программа сверху написана на изучение паскаля, а не Delphi. Т.к. другие разновидности паскаля или поклются с миром (VP) а другие морально и физически устарели (TP, BP), то изучаем на лучшем и единственном представителе своего класса.

Re: Кодировка в окне ide

СообщениеДобавлено: 20.09.2011 10:40:02
Mr.Smart
kirill, вы не путайте среднее образование с профессиональным.

Re: Кодировка в окне ide

СообщениеДобавлено: 20.09.2011 10:41:54
Oleg_D
Little_Roo писал(а):Не совсем понятно, какой IDE и, главное, зачем?

Зачем зубрить таблицу умножения, если калькулятор под рукой? Зачем география, если извозчик знает дорогу? – из этой серии.
Delphi-подобные графические системы изначально задуманы для облегчения жизни инженеров, ученых и других НЕпрофессионалов в программировании. И отлично справляются с этим. Но десктопом жизнь не ограничивается, есть много других задач. Сейчас на работу приходят мальчики-мышатники, не ведающие о существовании каких-то там битов, байтов, тестовых файлов и прочей «фигни» - жалкое зрелище! А те, кто будут взрощены на шарпе? Которые всерьез полагают, что числа – это всегда объекты. Где я им найду объекты в микроконтроллере?
С азов надо начинать, с азов!

Re: Кодировка в окне ide

СообщениеДобавлено: 20.09.2011 11:02:34
Vadim
kirill писал(а):А во FP вроде тоже есть. Я когда писал program - половину ввела иде.

:) Это не то. Слово "program" или "unit" запомнить несложно, а вот Вы попробуйте у переменной какого-нибудь класса запомнить все свойства и методы. В Lazarus'е Вы, поставив точку после такой переменной, увидите выпадающий список со свойствами и методами. В текстовой IDE такого нет.

Re: Кодировка в окне ide

СообщениеДобавлено: 20.09.2011 12:05:53
informat
Лично я за такой подход.
Сначала текстовая IDE. Там меньше наворотов. Начинающие и в ней-то теряются.
Для тех, кто пошёл дальше Lazarus.

Выпадающие подсказки для подготовки к ЕГЭ по информатике навредят. Для тех, кто не в курсе программы на ЕГЭ пишутся НА БУМАГЕ. Ни каких компьютеров не дают.

А для рамочек такой подход.
Обозначаете 8 символов для рамочек (правый, левый, верхний, нижний и уголки) константами. В них присваиваете символы в виде #201.

Re: Кодировка в окне ide

СообщениеДобавлено: 20.09.2011 12:21:36
kirill
Ребят, я не спорю.. Все вы по своему правы. Но есть программа образования против которой пойти не могу. Школьникам надо пройти огонь и воду... А я не могу даже объяснить им на пальцах, почему в паскале не продумали работу с кириллицей из под винды. Редактор в одной кодировке. Запуск программы в другой...

А для рамочек такой подход.
Обозначаете 8 символов для рамочек (правый, левый, верхний, нижний и уголки) константами. В них присваиваете символы в виде #201.

Я имел ввиду рамочку в самой иде... Она коверкается если в FAR'е перевести кодовую страницу консоли на ansi. А в остальном все красиво программируется. Как бы теперь заставить чтобы FP IDE сам переводил консоль в ansi. Не батник же делать.

Re: Кодировка в окне ide

СообщениеДобавлено: 20.09.2011 13:13:26
sign
kirill писал(а):
sign писал(а):А зачем?

Вы еще скажите, что и assembler знать не обязательно. Зачем его в университете преподают?! Хотя бы потому что программа сверху написана на изучение паскаля, а не Delphi. Т.к. другие разновидности паскаля или поклются с миром (VP) а другие морально и физически устарели (TP, BP), то изучаем на лучшем и единственном представителе своего класса.

Так вы ж про консоль, я и подумал, что просто в текстовом редакторе. Затем подаем текст транслятору на вход, ну и т.д.
FP никак не консоль.

Добавлено спустя 12 минут 30 секунд:
kirill писал(а):Ребят, я не спорю.. Все вы по своему правы. Но есть программа образования против которой пойти не могу. Школьникам надо пройти огонь и воду...

А вы им вот этот редактор для написания программ на паскале.
Всё самим помнить, раз, и структуру программы хорошо видно, два. Бесплатная и ставится на раз-два.

Re: Кодировка в окне ide

СообщениеДобавлено: 21.09.2011 12:36:13
informat
kirill писал(а):Ребят, я не спорю.. Все вы по своему правы. Но есть программа образования против которой пойти не могу. Школьникам надо пройти огонь и воду... А я не могу даже объяснить им на пальцах, почему в паскале не продумали работу с кириллицей из под винды. Редактор в одной кодировке. Запуск программы в другой...

А для рамочек такой подход.
Обозначаете 8 символов для рамочек (правый, левый, верхний, нижний и уголки) константами. В них присваиваете символы в виде #201.

Я имел ввиду рамочку в самой иде... Она коверкается если в FAR'е перевести кодовую страницу консоли на ansi. А в остальном все красиво программируется. Как бы теперь заставить чтобы FP IDE сам переводил консоль в ansi. Не батник же делать.


Кажется мы о разных вещах говорим.
1. Школьная программа не запрещает использовать Free Pascal вместо Turbo Pascal. Или даже Lazarus / Delphi.
2. Почему в Turbo Pascal? А почему на старинных паровозах не стоят дизельные двигатели?
Старьё потому что.
А запуск программы делается не в кодировке, а в операционной системе.
Во Free Pascal этой проблемы нет. А выглядит так же как Turbo.
3. Борьба с рамочками - это хорошая и интересная задача для школьников.
Нужно написать функцию конвертер. Пусть называется toAnsi(string). И использовать её в выводе write(toAnsi('Руский текст')).
Все трудности можно превратить в задачи, что будет способствовать более глубокому пониманию.