Warum wird [ALT + 224] anstelle von Alpha zurückgegeben?

44808
irikkkkk

Ich bin bei WIN 7. Ich habe festgestellt, dass Windows ANSI verwendet, nicht ASCII. Wenn ich also ALT+ 224tippe, bekomme ich Ó anstelle von α. Um α zu erhalten, muss ich es jedes Mal manuell aus der Windows-Zeichentabelle kopieren, wenn ich es verwenden möchte. Wie Sie sich vorstellen können, wird dies sehr langweilig, wenn ich versuche, attisches Griechisch einzugeben. Gibt es keine Kombination, um α einzugeben? Wenn nicht, gibt es dafür eine Lösung?

6
Möchten Sie Griechisch eingeben? soandos vor 11 Jahren 0
Ich benutze Fenster und bekomme α. cutrightjm vor 11 Jahren 0
Verwenden Sie WIN7? Ich könnte auf Vista oder XP anders gewesen sein. irikkkkk vor 11 Jahren 0
@irikkkkk, welches Betriebssystem verwendest du? soandos vor 11 Jahren 0
@soandros, Windows 7 irikkkkk vor 11 Jahren 0

2 Antworten auf die Frage

6
Dennis

As you have already discovered, the characters resulting from character codes between 0 and 255 depend entirely on the encoding that is used.

Windows doesn't use neither extended ASCII nor ANSI (usually Windows-1252); it actually depends on the application.

For example, Alt + (2, 2, 4) gives on my machine:

  • α in Notepad and on the command prompt.

  • à in Google Chrome's omnibox, but α in its console and this very text area.

  • In Notepad++, a with ANSI, α with UTF-8.

For a more consistent behavior, just use Unicode character codes:

The key combination Alt + (9, 4, 5) – or Alt + (+, 3, B, 1) if you set the registry key HKEY_CURRENT_USER\Control Panel\Input Method\EnableHexNumpad to 1should result in a α in every application that supports that character.

Sadly, that isn't the case:

  • The decimal char code results in in IE's address bar, while the hexadecimal one just beeps.

  • The decimal char code results in in Notepad++ with ANSI and ¦ with UTF-8.

  • The hexadecimal char code results in a in Notepad++ with ANSI and α with UTF-8.

Summary

  1. Set HKEY_CURRENT_USER\Control Panel\Input Method\EnableHexNumpad to 1.

  2. Use Alt + (9, 4, 5) or Alt + (+, 3, B, 1) in applications with full Unicode support.

  3. Fall back to trial and error in applications that lack full Unicode support.

Haben Sie versucht, eine "0" vorzustellen? Ie. "ALT-0224" gibt konsistent (hier) "à" an, aber "ALT-224" gibt "Ó" (Position 224 in der DOS-Westeuropa-Codepage). [Ich habe nicht den hexadezimalen Eintrag festgelegt.] Wie ich es verstehe, erzwingt das Nullpräfix die Interpretation als Unicode-Codepunkt. Richard vor 11 Jahren 0
Die "0" wird verwendet, um ein Unicode-Zeichen anzuzeigen, wenn der Zeichencode mehrdeutig ist. Dieser Code wird nur zwischen "0" und "255" in unseren Codeseiten benötigt (obwohl "0" - "127" immer ** sein wird) ASCII). "[Alt] - 0945" führt zu "±": Da die "0" hier nicht am richtigen Ort ist, wird die Anwendung auf Nicht-Unicode zurückgesetzt und bei "256" umbrochen (dh "256" ist kongruent zu "0") `,` 257` bis `2 'usw.). "±" Char-Code ist "177", wobei "945 = 3 * 256 + 177". Dennis vor 11 Jahren 1
0
Chris

Ich habe eine Lösung gefunden, die für mich funktioniert hat.

Ursprünglich war die "Aktuelle Sprache für Nicht-Unicode-Programme" auf "English (United Kingdom)" auf dem Computer eingestellt Region → Administrative settings. Als ich es jedoch in "English (United States)" geändert habe, wurde der Computer neu gestartet.

Ich habe endlich angefangen, "α" zu bekommen, als ich Alt 224 drückte. Nicht mehr "Ó". Ich habe ein Bild des Einstellungsortes angehängt.

Problem mit Alt 224 behoben