[過去ログ] SDLスレ (987レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
685(4): 名前は開発中のものです。 [] 04/12/24 01:04:03 ID:D6kFgiLi(1/2) AAS
Ruby/SDL で、スクリプトを UTF-8 で書くと、文字化けを起こしてしまいます。
たとえば、SDL::WM.set_caption の引数、つまり窓のタイトルが文字化けします。
$KCODE の設定を確認したのですが、文字化けの原因にはなってませんでした。
SDL 側に正しい文字コードを認識させる方法はないのでしょうか。
686: 685 [] 04/12/24 03:50:56 ID:D6kFgiLi(2/2) AAS
Uconv使って無理やり解決させました(引数の部分だけSJISに変換)が、なんかすっきりしません。
687(1): 名前は開発中のものです。 [sage] 04/12/25 15:48:19 ID:jmQKZrGb(1) AAS
>>685
書いてないけど日本語でってことかな、多分
Rubyはさっぱりだけど、タイトルの文字化けはOS(というかWindowシステム?)の問題では?
多分SDLはもらった文字列をそのままOS(というかWindowシステム?)のキャプション表示に渡してるだけだろうから
SDLが文字コードを認識できたとしても何も解決できないと思われ
キャプションに日本語を表示させるのをあきらめるしかないのでは?
あとは表示させる文字列をSJISのファイルにして、それをロードしてそのままわたせば
変換の必要はなくなると思うけど
688(1): 名前は開発中のものです。 [sage] 04/12/25 23:37:26 ID:A/zeU39x(1/2) AAS
>>685
SDL 本体自体は、そもそも多言語化を意識してないもんなあ。
外部リンク[c]:www.libsdl.org
Windows
外部リンク[c]:www.libsdl.org
X11
ちょっとよく見てないんだけど、X11 版は内部で UTF-8 を使ってるように見える。勘違いかな。
ただ Windows は確実にほったらかしだね。これじゃマルチバイト文字は通らない。
Ruby/SDL のことはわからないけど、すっきりした解決策は無いと思うよ。
本家にパッチ送るって手もあるけどね。
690: 685 [sage] 04/12/26 00:25:42 ID:7MVm4DuB(1) AAS
ご返答ありがとうございます。
>>687
> 書いてないけど日本語でってことかな、多分
そうです。書き忘れました。すみません。
マルチバイト文字の部分だけ文字化けしました。ASCII文字は大丈夫でした。
> 多分SDLはもらった文字列をそのままOS(というかWindowシステム?)のキャプション表示に渡してるだけだろうから
> SDLが文字コードを認識できたとしても何も解決できないと思われ
そうなのですか。残念です。
SDLが、OSを意識することなくアプリケーションを組めるライブラリであるなら、
OSのデフォルトの文字コードも意識する必要はないのかな、と思っていました。
>>688=>>689689(1): 名前は開発中のものです。 [sage] 04/12/25 23:52:50 ID:A/zeU39x(2/2) AAS
> ただ Windows は確実にほったらかしだね。これじゃマルチバイト文字は通らない。
ごめん、これ間違い。
マルチバイト文字が通らないんじゃなくて、UTF-8 が通らない。
アプリケーション本体のソースで Unicode 統一とかやってんだったら、
プリプロセッサで分けて Windows の場合は WideCharToMultiByte 使うとか、
X11 で通らなかった場合は iconv で nl_langinfo(CODESET) に変換するとか、
そういう対処する以外無いと思う。なんか SDL 使ってる気が薄れるけど。
もしくはタイトル部分は ASCII で開き直るとか。
> ちょっとよく見てないんだけど、X11 版は内部で UTF-8 を使ってるように見える。勘違いかな。
> ただ Windows は確実にほったらかしだね。これじゃマルチバイト文字は通らない。
URLありがとうございます。
ソースを見てもさっぱりですが、マルチバイト文字関連は手薄である、と解釈してよいのですね。
> プリプロセッサで分けて Windows の場合は WideCharToMultiByte 使うとか、
> X11 で通らなかった場合は iconv で nl_langinfo(CODESET) に変換するとか、
まだ僕の技術が未熟なもんで、何がなにやらさっぱりわかりませんが…
OS毎になにかいろいろ変える必要があるのですね。
> もしくはタイトル部分は ASCII で開き直るとか。
一番簡単な解決策ですね。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.022s