Иврит (utf8) символы в консоли Windows cmd

3782
epeleg

Ранее я задавал этот вопрос: utf8 на иврите на консоли mysql на debian (через putty на windows).
И мне удалось заставить его работать, запустив mysql с --default-character-set = utf8 и установив putty для отображения utf8.

Теперь мне нужно сделать то же самое, но на сервере Windows. Данные опять те же, но когда я запускаю mysql с параметром --default-character-set = utf8, я вижу многократные символы там, где я должен видеть иврит.

Я думаю, что проблема с настройкой консоли windows cmd, что она не отображает должным образом utf8.

есть идеи ?

1
Я использовал phpmyadmin для тех вещей, где мне нужно увидеть иврит ... epeleg 13 лет назад 0

4 ответа на вопрос

2
Vladislav Vaintroub

Неспособность обрабатывать символы Unicode является известным ограничением клиента командной строки mysql. Он адресован в рабочем журнале № 5331, который превратит его в MySQL5.6 (или в любую следующую версию MySQL). 5.5 уже должен поддерживать более слабую форму i18n (угадывание кодовых страниц консоли, как в Worklog # 1349 ).

просто чтобы уточнить, это означает, что я не имею ничего общего с этим. не можете получить доступ к данным Unicode через командную строку в Windows? epeleg 13 лет назад 0
Не в интерактивном режиме (то есть, пока MySQL5.6 не выйдет). Единственный способ использовать символы Юникода в выпущенной версии - неинтерактивный (наличие текстового файла с запросами, закодированными в utf8 и использование перенаправления файлов, то есть `mysql --default-character-set = utf8 <script.sql`) Vladislav Vaintroub 13 лет назад 1
1
geekosaur

Мой (по общему признанию ограниченный) опыт работы с ивритом в Windows заключается в том, что вам нужна фактическая сборка Windows, локализованная на иврите, чтобы она работала вообще. Например, мне почти всегда приходилось перемещать файлы в Linux, чтобы работать с ними. И даже если вы заставите отображать иврит, многие программы будут воспринимать его как L-to-R вместо R-to-L.

ну, это немного смешно, что я вижу иврит при подключении из моих окон к серверу Linux, но не при разговоре с моей собственной машиной Windows. epeleg 13 лет назад 0
@epeleg: вы используете другое программное обеспечение для подключения к серверу Linux. Эмулятор терминала PuTTY (который сам эмулирует Xterm) гораздо более продвинут, чем встроенная консоль Win32. grawity 13 лет назад 1
0
grawity

Вы можете изменить кодовые страницы с помощью chcpкоманды. Многобайтовая UTF-8 - это кодовая страница 65001, но ее поддержка ненадежна. (Например, я попытался использовать Python с выбранным 65001, и он сразу вылетает на любом выходе.)

  • Убедитесь, что вы используете правильный шрифт тоже.

Если больше ничего не работает, используйте старые кодовые страницы консоли.

Кодовая страница на иврите для консоли («OEM») - chcp 862 ( --default-character-set=cp862), а «ANSI» - chcp 1255 . Убедитесь, что они установлены в разделе « Язык и региональные стандарты» - «Дополнительно» - «Таблицы преобразования кодовой страницы» .

0
pituach

Unfortunately, even if your system supporting the language, the command shell's properties showing only those 2 fonts options (Lucida Console, Raster Font), both do not support Hebrew! using "chcp 862" will not help you yet...

In this case you might need this article, which will help you in a preview step (changing the Registry and adding other fonts to the list)

Source