アカウント名:
パスワード:
Autohotkeyとか全く知らんけど、 Altコード [wikipedia.org]で解決するしかないかね? #4216253 [srad.jp]的解決法の方が外乱に強いので個人的には好きだけど。
Send{Raw}の{Raw}が付いてる理由は、{Raw}が無いと、パイプに入って来る{}やら記号でAltキー等のメタキーが効いちゃうとかその辺の理由。多バイト非対応なのは、Send~は内部的に仮想キーコード [microsoft.com]をSendInput [microsoft.com]で送る仕様なんだろうね。この場合、プログラムが人間の代わりにキーボード叩いているだけなので、キーボードに無い文字はそのまま送れない=多バイト不可って事になる。ただし、左Altキー+テンキー(VK_NUMPAD0~9)で文字コードを入力する事で、多バイトもIME抜きで直接入れられる。(前
Altコードを調べていたがOADGで決まってるのとは違うのかいまいちわからなかった。Win10のメモ帳でもユニコードのU+nnnnからF5で変換できたけどそれともなんか違う気がするしちゃんと英語版Wikipedia読もうと思ったけどなんかすごいデカい地震来てドキドキしたので寝る。
Altを押したまま10進数にしたOEMCPの文字コード打ってAlt離すだけ。「あ」と打つなら「Alt押しっぱにして33440って打ってAlt放す」改行なら10か13。現在のマルチバイト文字コードを使う以上、Unicodeや他ロケールにしかない文字は打てないし、Unicode文字列を扱っている状態で変換するには文字コード変換が必要。
「あ」なら12354じゃないのかと思ったがコードポイントじゃなくてCP932なのか。というかアプリケーション毎に違うのか。 [sakura.ne.jp]試してみるとwordpadだと「あ」がAlt+12354だった。
検索してみると英語圏でaltcodeの表を提供するサイトが色々あるんだな。https://altcodeslist.com/ [altcodeslist.com]https://www.alt-codes.net/ [alt-codes.net]https://altcodeunicode.com/ [altcodeunicode.com]IMEが入ってないWindowsを使ってる人はこうやって特殊文字を入力してたのか。
うわ、試したソフトが2つともCP932だったからてっきりOEMCPかと思ったらそうじゃないのか。ソフト側で明示的にAltコード受け入れる処理なんて普通は書かないのだけどどこで分かれるんだろうな・・・なんとなくだけどTranslateMessageやメッセージループを構成するAPIのA/Wの区別に依存しそうではある。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
未知のハックに一心不乱に取り組んだ結果、私は自然の法則を変えてしまった -- あるハッカー
どうしてもSendInputしたいの? (スコア:0)
Autohotkeyとか全く知らんけど、 Altコード [wikipedia.org]で解決するしかないかね?
#4216253 [srad.jp]的解決法の方が外乱に強いので個人的には好きだけど。
Send{Raw}の{Raw}が付いてる理由は、{Raw}が無いと、パイプに入って来る{}やら記号でAltキー等のメタキーが効いちゃうとかその辺の理由。
多バイト非対応なのは、Send~は内部的に仮想キーコード [microsoft.com]をSendInput [microsoft.com]で送る仕様なんだろうね。
この場合、プログラムが人間の代わりにキーボード叩いているだけなので、キーボードに無い文字はそのまま送れない=多バイト不可って事になる。
ただし、左Altキー+テンキー(VK_NUMPAD0~9)で文字コードを入力する事で、多バイトもIME抜きで直接入れられる。(前
Re:どうしてもSendInputしたいの? (スコア:1)
Altコードを調べていたがOADGで決まってるのとは違うのかいまいちわからなかった。
Win10のメモ帳でもユニコードのU+nnnnからF5で変換できたけどそれともなんか違う気がするしちゃんと英語版Wikipedia読もうと思ったけどなんかすごいデカい地震来てドキドキしたので寝る。
Re: (スコア:0)
Altを押したまま10進数にしたOEMCPの文字コード打ってAlt離すだけ。
「あ」と打つなら「Alt押しっぱにして33440って打ってAlt放す」
改行なら10か13。
現在のマルチバイト文字コードを使う以上、Unicodeや他ロケールにしかない文字は打てないし、
Unicode文字列を扱っている状態で変換するには文字コード変換が必要。
Re:どうしてもSendInputしたいの? (スコア:1)
「あ」なら12354じゃないのかと思ったがコードポイントじゃなくてCP932なのか。
というかアプリケーション毎に違うのか。 [sakura.ne.jp]
試してみるとwordpadだと「あ」がAlt+12354だった。
検索してみると英語圏でaltcodeの表を提供するサイトが色々あるんだな。
https://altcodeslist.com/ [altcodeslist.com]
https://www.alt-codes.net/ [alt-codes.net]
https://altcodeunicode.com/ [altcodeunicode.com]
IMEが入ってないWindowsを使ってる人はこうやって特殊文字を入力してたのか。
Re: (スコア:0)
うわ、試したソフトが2つともCP932だったからてっきりOEMCPかと思ったらそうじゃないのか。
ソフト側で明示的にAltコード受け入れる処理なんて普通は書かないのだけどどこで分かれるんだろうな・・・
なんとなくだけどTranslateMessageやメッセージループを構成するAPIのA/Wの区別に依存しそうではある。