Why does [ALT+224] return Ó instead of alpha?

8

1

I'm on WIN 7. I found that windows is using ANSI, not ASCII. So when I type ALT + 224 i get Ó, instead of α. To get α I have to manually copy it from the windows character map every time I want to use it. As you can imagine, this gets very tedious when I am trying to type in Attic Greek. Is there no combination to enter α? If not, is there some solution to this?

irikkkkk

Posted 2012-07-15T04:04:09.963

Reputation: 83

Do you want to type in greek? – soandos – 2012-07-15T04:07:35.530

I'm using windows and I get α. – cutrightjm – 2012-07-15T04:09:02.110

Are you using WIN7? I might have been different on vista or xp. – irikkkkk – 2012-07-15T04:13:35.600

@irikkkkk, what OS are you using? – soandos – 2012-07-15T04:41:20.870

@soandros, windows 7 – irikkkkk – 2012-07-15T04:46:08.213

Answers

9

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.

Dennis

Posted 2012-07-15T04:04:09.963

Reputation: 42 934

Have you tried prefixing with a 0? Ie. ALT-0224 gives à consistently (here), but ALT-224 gives Ó (position 224 in DOS-Western Europe code page). [I don't have the hexadecimal entry set.] As I understand it the zero prefix forces interpretation as a Unicode code point. – Richard – 2012-07-15T07:45:59.267

1The 0 is used to indicate a Unicode character when the char code is ambiguous, which is only needed between 0 and 255 with our code pages (although 0 - 127 will always be ASCII). [Alt] - 0945 will result in ±: Since the 0 is out of place here, the application falls back to non-Unicode and wraps at 256 (i.e., 256 is congruent to 0, 257 to 2, etc.). ± char code is 177, where 945 = 3 * 256 + 177. – Dennis – 2012-07-15T12:20:47.780

1

I found a solution that worked for me.

Initially, the "Current language for non-Unicode programs" was set to "English (United Kingdom)" on the computer in Region → Administrative settings; however, when I changed it to "English (United States)" and restarted the computer.

I finally started to get "α" when I hit Alt 224. No more "Ó". I've attached an image of the settings location.

Fixed Alt 224 problem

Chris

Posted 2012-07-15T04:04:09.963

Reputation: 11