
世界的な絵文字の普及によってUTF-8の普及やUTF-16における4バイト文字の扱いが改善される? 40
ストーリー by hylom
マルチバイトを扱う面倒くささを思い知れ 部門より
マルチバイトを扱う面倒くささを思い知れ 部門より
世界的な絵文字の普及によって、UTF-8の普及やUTF-16における4バイト文字の扱いが改善されつつあるという(絵文字がある種のUnicodeバグを世界から一掃しつつある件について)。
そもそも使用する文字が少ない欧米圏では、いわゆる「マルチバイト文字」の扱いに消極的、もしくは理解が足りないという歴史的な問題が存在した。そのためさまざまな文字エンコーディングが開発され、その後世界中のすべての文字を統一したエンコーディングで扱おうとする動きが出たものの、その結果欠点の多いUTF-16というエンコーディングを採用するプログラムや環境が登場したという。UTF-16では1文字を2バイトもしくは4バイトで表現するが、使用頻度の高い文字の多くは2バイトで表現されるため、「1文字=2バイト」を前提に処理を行ってしまうプログラムがあるという。
いっぽう、絵文字は基本的に1文字に4バイトが必要となる。そのため、「1文字=2バイト」を前提としたプログラムでは上手く処理できない。そのため、絵文字の普及によって適切に4バイトの文字を扱えないプログラムが改修されたり、 元々可変長が前提のUTF-8がより普及するのではないかとされている。
うんこ絵文字に (スコア:5, おもしろおかしい)
感謝ですね。うーんこの
Re:うんこ絵文字に (スコア:3)
Re: (スコア:0)
うんこ絵文字だけで記述可能なプログラム言語ができるに1000TOTO
whitespace [wikipedia.org]ぐらいには話題になりそう
Re: (スコア:0)
Uncode
って、既に使われていたのか…クソ!
Re: (スコア:0)
今後カラーうんこやアニメーションうんこが増えるたびに俺たちの苦労が減る
はず
Re:うんこ絵文字に (スコア:1)
その分「政治的に正しいうんこの肌の色」とかが仕様に追加され苦労が増えます
Re: (スコア:0)
あのマキマキを発明した鳥山明先生にイグノーベル賞を
Re: (スコア:0)
とりいかずよし先生は?
文化的勝利を達成しました (スコア:5, 興味深い)
英語圏プログラミング界隈においてデファクトコードの座を占め続けるASCIIを
日本が育てた絵文字という文化的な価値を持って引きずり下ろし
UTF-8で統一できたとしたら、これはある種の快挙ですよね。
実際、非英語圏に属する人間がどれだけ助かるか訴えたところで
英語圏の人達にすれば慣れ親しんだものを捨てて
わざわざ面倒くさいものを選ぶわけもなく。
人を動かすには適切なインセンティブが必要ってことは当然ですが
そのインセンティブに絵文字がなれるなら嬉しいばかりです。
# タイトル元ネタは Civilization です
Re:パロディにツッコミも何だが (スコア:0)
英語圏プログラミング界隈においてデファクトコードの座を占め続けるASCIIを
日本が育てた絵文字という文化的な価値を持って引きずり下ろし
UTF-8で統一できたとしたら、これはある種の快挙ですよね。
ASCIIが一文字1バイト、Kanjiが一文字3バイトというハンディは変らないのに、どこが快挙なものか。
Re: (スコア:0)
Twitterの文字数制限のようなもの
Re: (スコア:0)
漢字は古代のエントロピー符号と見ることができないだろうか??
Re: (スコア:0)
>ASCIIが一文字1バイト、Kanjiが一文字3バイトというハンディは変らないのに、どこが快挙なものか。
その文句は調子こいて2バイトでも収録しきれない数の漢字を作ったいにしえの漢民族と、その尻馬に乗っかって国字までこしらえちゃった我々のご先祖様達に言って下さい。
wcslenの戻り値 (スコア:2)
wcslenの戻り値がlinuxとwindowsで結果が異なるのを何とかしてくれないことには、
どうにもならないと想う
Re:wcslenの戻り値 (スコア:1)
Re: (スコア:0)
こんなの [wandbox.org]。
Linuxではどちらも1ですが、Windowsでは1と2になります。
"sizeof(wchar_t) = 4"なLinuxと、"sizeof(wchar_t
Re:wcslenの戻り値 (スコア:1)
wcslenはサロゲートペアも考慮した文字の数をちゃんと数えてくれるものだと思い込んでいたのですが、実際はwchar_t要素を数えてるだけだったんですね。。勉強になりました。
と、すると、下のコメントにある「UTF-8使えってことだよ」はちょっと的外れですよね
・Windowsも早いとこsizeof(wchar_t)==4にしてくれ > MS もしくは
・サロゲートペアも考慮した文字数数える標準関数用意してくれ >標準化
かな。
Re: (スコア:0)
Linux (というか gcc) でも、wchar_t は2バイトになる環境もある。
wchar_t は実装依存であるうえに wcslen は wchar_t の数を数えるだけで文字数は数えない。
なので「UTF-8」使えってのは、wchar_t 使っておいて、そんな事言い出すなよっていうもっと根源的な話。
Re: (スコア:0)
UTF-8使えってことだよ
ここはemoji👌? (スコア:0)
emoji test 👌
Re: (スコア:0)
OKサインは「」
IMEによって出すにはどうすんだろう
コード番号指定?
一覧からマウスで選択?
Re:ここはemoji👌? (スコア:2, 参考になる)
昨今の日本語IMEなら変換で普通に出てくると思う。
GoogleIMEなら「OK」で「🙆👌🆗」の3候補。
「おーけー」で「👌👍🆗」の3候補。微妙に違うのな。
MS-IMEなら「おーけー」で「👌🆗」の2候補。
アルファベット圏なら、絵文字入力用のソフトとかあるしそういうの使ってるんじゃ?
Re:ここはemoji👌? (スコア:1)
ATOKで「おーけー」は「⭕🆗👌👍🙆」の5候補でした。ちなみに最新版です。
Re: (スコア:0)
ぶっちゃけほとんどサーバサイドでやることはなくてウェブブラウザ側の対応の方が重要な気もするが。
Re: (スコア:0)
ところがサーバーサイドでやらなくていいことをやって文字ぶち壊す人が居たりするので世の中は広い
Re: (スコア:0)
だって昔はEUC-JPやらJISやらShift-JISやらあって、Shift-JISもCP932とMacRomanと微妙に違ったりして、いろいろとひどかったし・・・。
Re: (スコア:0)
シフトJISですか?今でも現役ですよ。
Font (スコア:0)
Fontもまともなものがそろうといいなあ。
Windowsのフォントエンジンやフォントヴューアの不具合で使えないフォントが結構ある。
フォントのフォーマットのバージョンが違うだけかもしれんがな。
IVSとUnicode 10.0にフル対応したVariable FontでSans Serif/Serif/Monospaseの3種類をそろえられるのは、大夫先だろう。
ましてや、フリーかWindows標準添付となるとなおさら・・・
Re: (スコア:0)
CKJ以外なら山ほどあるのにな
Re: (スコア:0)
とりあえず、IPAmj明朝とNotoシリーズでお茶を濁しておいたら?
Re: (スコア:0)
>バージョン
なんだこれw
気にならないのか
Re: (スコア:0)
Variable Fontだと、Windows 10 ver.1709でもOpenType-CFF2なvariable fontには一部しか対応してないぞ。
svg形式のデータを含むフォントについても、Windows 10 ver.1709でも駄目だね。
おかげで、Windowsだと、カラー絵文字系のフォントはWindows添付品しか使えない。
Re: (スコア:0)
>フォントヴューア
MSの表記だと、「Windowsフォント ビューアー」が正しい表記だね。
Re: (スコア:0)
ディスクトップとか言いそうなタイプだと思う
Re: (スコア:0)
Font Viewerだから「ヴューア」というのはむしろMS正規表記より原語に近い表記だろ。
「バージョン」はもう一般名詞化しているからそっちに引きずられるのは仕方ない。
原語をまったく考えていない「ディスクトップ」とは明らかに間違いのレベルが違う。
Re:Font (スコア:2)
お説に文句言うわけではないですが、Vがヴてのはどっから来たんですかね
定まったローマ字表に乗ってましたっけ
ローマ字と言うより発音記号とカナの対応表があればいいのか…
Re:Font (スコア:1)
どちらにしても、明治時代初期には有った表記法だよん。
Re:Font (スコア:1)
ローマ字の文字種は英語アルファベット26文字のサブセット。
その使用目的は日本語のアイウエオ五十音(あるいはいろ四十七字)の換字。
使いどころのない文字については何も決めていないでしょうに。
l,q,vおよびx (なんとか式ローマ字次第でもっと増える)はいわば要らない子。
一方日本では。。。 (スコア:0)
4バイト文字を組み合わせて絵文字を作った
Re:一方日本では。。。 (スコア:1)
走召糸色木亥火暴