6

В Windows, при вводе символов с помощью ALT+nnn, какая кодировка используется? А при вводе символов с ALT+0nnn какая кодировка используется? И как эти ответы зависят от языка Windows и настроек метода ввода, если таковые имеются? И всегда ли так, что коды повторяются после 255?

Я нашел несколько веб-сайтов с информацией, которая сбивает с толку, устарела, возможно, зависит от языка или просто неверна. И несмотря на то, что это хорошо известная и широко используемая функция Windows, я не могу найти какой-либо разумной официальной документации по ней.

1 ответ1

4

Я считаю, что эти сочетания клавиш зависят от библиотек, используемых конкретными программами, такими как Word, Excel и Notepad. Ссылки на коды символов Alt на сайте microsoft.com всегда находятся в контексте определенного приложения или набора.

Символ, полученный в результате Alt+nnn, не должен зависеть от какого-либо IME, но должен учитывать параметры документа, приложения или языка Windows, которые определяют кодовую страницу по умолчанию, используемую в настоящее время.

Microsoft более ловко использует такие термины, как ASCII и ANSI, документация Alt+nnn отражает это.

Вот небольшой эксперимент в командной строке на Vista

c:\>chcp 437
Active code page: 437
c:\>rem alt+224 α
c:\>rem alt+0224 à

c:\>chcp 869
Active code page: 869
c:\>rem alt+224 ζ
c:\>rem alt+0224 à
c:\>rem alt 0137 ‰

После добавления греческой раскладки клавиатуры на панели управления и выбора греческого языка из языковой панели, эксперимент в WordPad показал, что ALt+0224 затем выдает ΰ из кодовой страницы 1253 (современный греческий язык), а Alt+224 выдает Σ (хотя у меня нет) t обнаружил, какая кодовая страница DOS/OEM подразумевает)

Из чего я могу сделать вывод, что

  • Alt+nnn всегда является текущей кодовой страницей DOS (также называемой OEM)
  • Alt+0nnn всегда текущая кодовая страница Windows
  • вышесказанное отличается
  • языковая панель может быть использована для их изменения.

По крайней мере, для программ, которые я пробовал.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .