Поддерживает ли gnome-терминал кодовые страницы DOS? - PullRequest
3 голосов
/ 01 апреля 2011

В моей C-программе мне пришлось поменять свои символы рисования юникода в экранированные символы для кодовой страницы DOS 437, чтобы она работала в командной строке Windows. Можно ли изменить кодовую страницу gnome-терминала для правильного отображения этих символов при нативной компиляции программы для linux?

Спасибо.

Ответы [ 2 ]

4 голосов
/ 01 апреля 2011

С https://nethackwiki.com/wiki/IBMgraphics

Текущий терминал gnome не имеет настройки для кодовой страницы 437, но он поддерживает другие кодовые страницы, которые эквивалентны для целей NetHack, такие как 862 (иврит).

Чтобы установить кодовую страницу 862 на терминале gnome:

  • Выберите Терминал-> Установить кодировку символов-> Добавить или удалить.
  • В панели наслева выберите строку с описанием иврита и кодировкой IBM862.
  • Щелкните стрелку вправо между двумя панелями.
  • Нажмите Закрыть.

Вышеуказанные шаги необходимо выполнить только один раз в течение срока службы установки Gnome.После этого достаточно:

  • Выбрать терминал, Задать кодировку символов, а затем иврит (IBM862).

Следует отметить, что текущий шрифт gnome-терминала по умолчанию в Ubuntu Jaunty полностью поддерживает DECgraphics, если в качестве значения eight_bit_tty установлено значение false.

0 голосов
/ 01 апреля 2011

Если вам нужны эти символы, вы должны использовать их правильные значения кодовой точки Unicode и вывести их как UTF-8.Или, если вы предпочитаете, вы можете вывести их в виде широких символов и позволить системе локали стандартной библиотеки позаботиться о преобразовании их в UTF-8 или другую «нативную» кодировку, выбранную пользователем (которая может быть даже CP437, хотя яникогда не видел настройки системы, которая плохо ...).

...