Unicode文字の挿入にAltコードを使用できなくなりました


10

いくつかのアプリケーションで、しばらくの間、省略記号8230 のAltコードを使用してきました。数日前に機能し&なくなり、(テンキーで)+ + + +を押すと表示されなくなりました。これは、デスクトップとラップトップの両方で発生しました(使用する場所)。どちらもコードページ850の64ビットWin-7で動作し、最近WindowsとOpera 12を更新した可能性があります。Alt8230Fn

このインプットメソッドが無効なった理由は何でしょうか、またどのようにして元に戻すことができますか?

ところで、Alt+ 0+ 1+ 3+ 3が機能することがわかりました。また、Alt+ 8+ 2+ 3+ 0はワードパッドまたはMsWord10でも機能しますが、OperaやNotepad ++では機能しません。文字コードは挿入前に256に変換されます。


シンプルで直感的な組み合わせで省略記号を入力できるので、WinComposeを試してみることを勧めします。[Alt] [.] [.]
sam hocevar 2016年


@LưuVĩnhPhúcいいえ、それはまったく別の質問です。8230は16進数ではなく省略記号の10進文字コードであることに注意してください。
Bergi

回答:


6

私の知る限りでは、Alt nnnn(nnnn decimal> 255)メソッドはリッチエディット機能であるため、ワードパッドやMS Wordなどの選択したプログラムでのみ機能します。他のプログラムでは、入力された数値nnnnは256を法として減じられ、0 ... 255の範囲の数値が生成され、使用中のコードページに従って解釈されます。

Cf. キーボードを介してUnicode文字挿入する方法 いくつかの代替方法について説明しています。残念ながら、Alt + xxxx(16進数のxxxx、たとえば「…」の場合はAlt + 2026)メソッドはデフォルトで無効になっているようで、Windowsレジストリを変更して許可する必要があります。UnicodeInputユーティリティに加えて、名前によるUnicode入力もありますが、これらのメソッドは、Altメソッドほど高速タイピングには便利ではありません。


ありがとう、それは正しい方向のようです。どうやらOpera 12はこのRichEdit機能を削除したようです。どういうわけか手動で再度有効にできますか、それともバグレポートを作成する必要がありますか?
Bergi、

1
+1他のプログラムでは、文字値はmod 256であるというあなたの発言は、まさにメモ帳で観察した動作です。
ニコールハミルトン

4

AltコードとUnicode文字は漠然と関連しているだけであり、(ほとんどの場合)それらの処理方法を決定するのは各アプリケーション次第です。そのため、アプリやアプリのバージョンなどによって異なる場合があります。

基本的には、フォントやユーザー入力ではなく、文字エンコーディングとコードページに関するものです。

ASCIIのAltコードは0〜255(8ビットコードページ)のみです。多くのプログラム(およびOS)は、256でラップすることにより、ユーザーが入力したより大きな数を処理します。

256 = 0、257 = 1など

したがって、ALT + 8230を入力することは、実際にはALT + 38(8230/256 = 32.1484375。256 * 32 = 8192. 8230-8192 = 38)を入力することと同じです。これは、ASCII文字「&」です-プログラムがインターセプトして、 MS Wordのように、それを「適切な」Unicodeコードに置き換えるか、別のコードページ(つまり、Unicode)を使用して置き換えます。

Windowsは、「Windows-1252」コードページ(とにかく英語)と呼ばれるMSDOS 8ビットコードページ(850)の拡張バージョンを使用します。ただし、これは、Unicodeコードページを完全にサポートしていないOSのレガシー部分にのみ使用されます。

これらが、さまざまなOSやアプリケーション、およびWindows自体のさまざまな部分でさまざまな結果を簡単に確認できる理由です。

控えめに言っても混乱する問題です。:)

Alt-0133が(Windowsコードページの)省略記号の "公式" Windows拡張ALTコードであると確信しているので、これを使用することで、より一貫した運が得られるでしょう。

ここにいくつかの関連情報があります。


有益なリンクをありがとう。私は問題を検索するときに混乱する違いがあることをすでに見ました:-)
Bergi

1

U + 8230は省略ではなく、漢字の軍艦です。なぜそのコードで省略記号が表示されたのかはわかりませんが、133は実際には正しいコードポイントです。

8230の省略記号がどこにあるのでしょうか。おそらくそれは、前回のアップデート以降に修正されたOperaのバグでした。「複数のアプリケーション」にある場合は、フォントまたはキーボードのレイアウト/地域の設定などにバグがあった可能性があります(明らかなものや合理的なものは何も頭に浮かびません。そのため、正当な設定ではなくバグであったに違いありません)。

(何らかの理由で)正しいコードポイントを使用する代わりに本当に間違ったコードポイントを使用する必要がある場合は、Authotkeyなどを使用して、コードまたはシーケンスを受け入れ、必要なものを出力するスクリプトを作成できます。 。

あなたは必ず、あなたが入ることができたことAlt+ Numpad-8+ Numpad-0+ Numpad-2+ Numpad-3?一部のプログラムは独自にサポートする場合がありますが、Windowsはデフォルトでそのような高いUnicodeコードポイントを受け入れません。ただし、16進法を使用できます:Alt+ Numpad-++ 2+ 0+ 2+ 6


8230は16進数2026の10進数であり、実際には省略記号です。fileformat.info/info/unicode/char/2026/index.htm Alt + 8230は、Win7 x64の一部のアプリ(Outlookの新しいメッセージなど)では機能しますが、他のアプリ(メモ帳など)では機能しません。
ニコールハミルトン

8230U + 2026省略記号)の10進文字コードです。+または0接頭辞を使用したことはなく、Altそのまま押し続けて4桁の10進文字コードを入力しました。質問で述べたように、これはまだWordでうまく機能します。
ベルギ

はい、きっとうまくいきましたが、私のお気に入りのアプリケーションでしか機能しなかったと思います:-/ Hexエントリは現在有効ではなく、yield なので、私は0133
Bergi

> 16進エントリ​​は現在有効になってい ません多分そうではありませんが、私が言ったように、Windowsはデフォルトで8000以上のコードポイント(10進数)を受け入れないため、それを有効にすることができます。16進法の使用はWindowsの設定なので、すべてのアプリケーション(少なくともUnicode編集ボックスをサポートするすべてのアプリケーション)で機能します。
Synetech

0

たぶん、現在のフォントはそのような上位のUnicode文字をサポートしていません。フォントを「Arial」に変更して、再試行してください。

これをワードパッドでテストすると、Alt + 8 + 2 + 3 + 0はArialに対しては機能しますが、他の一部のフォントに対しては機能しません。


1
いいえ、フォントはそれらの表示をサポートしています。また、フォントがインプットメソッドに影響を与えることが許可されているとは思いません。
Bergi、
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.