文字コード総合スレ Part12

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001デフォルトの名無しさん
垢版 |
2018/12/16(日) 12:38:15.61ID:VlX3xGEw
Windows NTは初代からUnicodeがネイティブの文字コードです。cp932ではありません。
プログラマーなら一度は煩わされたことのある文字コードについてのスレ。
UTF-8、Shift_JIS、JIS、EUC、Unicode、UCS、サロゲートペア、コードポイント、文字コード判定、
合成文字、ソート、TRON、外字コード、その他について語り合いましょう。
各言語での文字列の扱いについての質問もOKです。
基本マッターリ、ささ、茶でもどうぞ。

■過去スレ
文字コード総合スレ part1 http://pc11.2ch.net/test/read.cgi/tech/1031028205/
文字コード総合スレ part2 http://pc11.2ch.net/test/read.cgi/tech/1143375639/
文字コード総合スレ part3 http://pc11.2ch.net/test/read.cgi/tech/1180250376/
文字コード総合スレ part4 http://pc11.2ch.net/test/read.cgi/tech/1228052369/
 (スレ再利用)UnicodeとUTF-8の違いは? http://pc12.2ch.net/test/read.cgi/tech/1177930957/
 (隔離スレ)UnicodeとUTF-8の違いは? その2 http://pc12.2ch.net/test/read.cgi/tech/1274937437/
文字コード総合スレ part5 http://pc12.2ch.net/test/read.cgi/tech/1236529563/
文字コード総合スレ part6 http://hibari.2ch.net/test/read.cgi/tech/1278923059/
文字コード総合スレ part7 http://toro.2ch.net/test/read.cgi/tech/1306595564/
文字コード総合スレ part8 http://peace.2ch.net/test/read.cgi/tech/1354248962/
文字コード総合スレ part9 http://peace.2ch.net/test/read.cgi/tech/1401301779/
文字コード総合スレ Part10 http://mevius.2ch.net/test/read.cgi/tech/1444822140/
文字コード総合スレ Part11 https://mevius.5ch.net/test/read.cgi/tech/1516629503/
0844デフォルトの名無しさん
垢版 |
2020/02/04(火) 21:29:49.71ID:t1/0lpTx
絵文字ってここにどう書き込めばいいんです?
☸️


専ブラでは絵文字として読めるがWebブラウザー(Chrome/旧Edge/IE11@Win10)で見ても◆◆状態でうまく表示されない…
0847デフォルトの名無しさん
垢版 |
2020/02/05(水) 10:23:19.19ID:MS9bo9CR
固定フォントのターミナルのような環境である文字のフォントの幅が全幅か半幅か判別する確実な方法ってありますか?
Unicode前提です
Unicode的にアジアンなんとかというドキュメントでそれに触れられているのを見つけましたが
結局のところ使用されているフォントで決まるような気がします
となるとCLIアプリが表示する前に判別する方法はないような
表示したあとならターミナルにカーソル位置問い合わせればわかりそうだと思いましたが
0849デフォルトの名無しさん
垢版 |
2020/02/05(水) 16:23:36.59ID:2rKdW1Ec
てすと
0850デフォルトの名無しさん
垢版 |
2020/02/05(水) 16:24:56.28ID:2rKdW1Ec
>>844
うちのChromeはちゃんと出てる
ffでも問題なし
0851デフォルトの名無しさん
垢版 |
2020/02/05(水) 16:28:36.97ID:2rKdW1Ec
>>847
前にpythonで書いたときは
unicodedata.east_asian_width()
使ったと思う
Win32APIだと表示前に文字列全体の描画幅を求める方法があったと思う
0853デフォルトの名無しさん
垢版 |
2020/02/05(水) 18:34:07.02ID:qBm/0cTb
>>847

・Unicodeでは文字幅は 0(結合文字)、1(いわゆる半角)、2(いわゆる全角)、1か2(曖昧幅) のいずれかに決まっている
・1か2になるのはαや☆などであり、東アジアの環境で2、それ以外で1

・wcwidthで調べるとその値を返すが、曖昧幅への対応がどうなっているかは分からない
・linuxのglibcは、データを自分で修正しない限り曖昧幅は1扱い(LANG=ja_JP.eucJPすれば2にはなる)

・CLIでのカーソル位置はカーネルのttyドライバが担当しており、そもそもフォン卜の情報を持っていない
・linuxカーネルでは全ての文字が(全角も)幅1扱い
・行編集もtty担当なので、catをそのまま実行して全角文字を入力後backspaceするとカーソルがずれる
・多くのシェルはwcwidthで入力/削除された文字やプロンプトに表示する文字の幅を調べ、必要に応じてカーソルを移動させる

・ターミナルはwcwidthまたは同等の独自関数(曖昧幅の設定ができることが多い)で文字幅を調べて、実際に表示させる
・等幅フォントでも曖昧幅の文字がどちらで実装されているかそれぞれ異なる上、ターミナルはフォントの文字幅情報を使わないことが多い(プロポーショナルでないことのみ確認)
・↑により、文字が重なったり変な隙間ができたりすることがある
・一部のターミナルはwcwidthの結果に従うように文字を潰したり引きのばしたりして表示する(minttyとか)

・アプリ(シェルとか)、ライブラリ(ncursesとか)、端末マルチプレクサ(tmuxとか)、端末エミュレータ、カーネル(tty)、フォント全てで想定する幅がそろっていないとうまく動かない
・日本語フォントの多くは曖昧幅2なので、linuxのCLIではαや☆がおかしくなることが多い(wcwidthが1を返すせい)

・Unicodeを作った西洋人は馬鹿だから、罫線素片の幅も曖昧で、ncursesがバグる
・絵文字は文字幅1だが、フォン卜の多くは2で実装されているのでおかしくなる
0855デフォルトの名無しさん
垢版 |
2020/02/05(水) 23:12:39.17ID:zWcxLf4u
>>853
あざす
やっぱり混沌としてるのですね
とりあえず一度ターミナルの中を追ってみようかな
0858デフォルトの名無しさん
垢版 |
2020/02/08(土) 17:47:47.28ID:hv0txQ7A
Unicodeの時代に今更だけど、
シフトJISの第2バイトがA0〜FFでなく
40〜FCにしたのは何でだろう
0863デフォルトの名無しさん
垢版 |
2020/02/09(日) 19:30:21.11ID:tCetl5aZ
シフトJISはもう少し工夫すれば
JISコードの変換式もより簡単にでき
2バイト目もASCII領域を使わずにダメ文字も発生せず
補助漢字も全て入れられた
0865デフォルトの名無しさん
垢版 |
2020/02/10(月) 16:27:01.61ID:TGcYvj29
EUCで良かったんよ
0867◆QZaw55cn4c
垢版 |
2020/02/10(月) 21:20:39.00ID:3bnN/FFY
>>863
あのスペースの狭さでは、それは無理だったのでは?
どうするのがよかったのですか?具体的にいってみてよ
0868デフォルトの名無しさん
垢版 |
2020/02/11(火) 08:36:25.76ID:K5Jxm44G
非漢字_:[81-98] [80-9F]
第1水準:[80-9F] [A1-FE]
第2水準:[E0-FF] [A1-FE],[E0-EB] [80-9F]
補助漢字:[A0-DD] [A1-FE],[A4-C1] [80-9F]
補助漢字は半角カナと排他利用
0869◆QZaw55cn4c
垢版 |
2020/02/11(火) 17:40:51.63ID:Sh/x76Zj
>>868
それは結局半角カナを潰しただけのことでは?
0870デフォルトの名無しさん
垢版 |
2020/02/11(火) 18:51:44.66ID:K5Jxm44G
>>869
補助漢字6000字近くを使えるというメリットがあれば
半角カナをフェードアウトするには十分な機会になっただろう
補助漢字(JIS X 0212)が制定されたのは1990年だから
その翌年の1991年に発売されたMS-DOS 5.0あたりで
KANA ON/OFFコマンドを追加し、半角カナ/補助漢字の切り替えが出来れば
従来のテキストファイルの読み込みなども対応できる
0871◆QZaw55cn4c
垢版 |
2020/02/11(火) 19:27:04.32ID:Sh/x76Zj
>>870
文字コードのマップ切り替えはコンテンツ側で指示するべきことであって、OS/アプリ側で切り替えて対応するとか、発想が変だとおもいますね
0872デフォルトの名無しさん
垢版 |
2020/02/12(水) 01:19:59.31ID:l8Pmdafn
いっその事1byte=32bitにすればサロゲートペアもBOMも要らなくなるし多バイト文字という概念もなくなる
0875デフォルトの名無しさん
垢版 |
2020/02/12(水) 10:06:52.88ID:a1w2Xqz0
1文字=64bitやろ
0877デフォルトの名無しさん
垢版 |
2020/02/12(水) 13:32:59.34ID:yKNbCROk
👽 全宇宙の未知なる知的生命体の使用言語を網羅しなきゃならないのだから可変長は必須
0878デフォルトの名無しさん
垢版 |
2020/02/12(水) 20:36:54.81ID:ytylQgpT
>>876
え、じゃあイギリスの旗はさらにそれにスコットランド分とアイルランド分が追加されるの
0884デフォルトの名無しさん
垢版 |
2020/02/14(金) 14:22:25.49ID:WtuYdkw5
MSやAppleだって訳判らんことするときもある
0885デフォルトの名無しさん
垢版 |
2020/02/14(金) 14:26:10.19ID:MCgyW5To
実行ファイルがテキストとデータで構成されるように、絵文字表現もテキストとデータを組み合わせた文法が出てきそう。
0886デフォルトの名無しさん
垢版 |
2020/02/14(金) 17:14:21.07ID:CPLKNT1n
顔文字より正規表現のためのメタ文字とかあったほうが良いのにね。
まあGoogleじゃ無理か。
0890デフォルトの名無しさん
垢版 |
2020/02/15(土) 05:28:54.23ID:uhBKJdO0
規格名:JIS X 0215
文字数:15000字超(非漢字:1700字超,漢字:13300字超)
区点域:0〜127区,0〜127点(最大16384字収納)
通 称:いちごJIS
0891デフォルトの名無しさん
垢版 |
2020/02/21(金) 14:33:03.02ID:MAyK0RyJ
https://twitter.com/akinomyoga/status/1230127240806985728

修正の入った Cygwin 3.1.4 のリリースノートが来て、見てみたら @cjksingle という不穏な locale が発明されてる。
何かと思ったら「CJK文字も全て半角にすれば文字幅問題解決じゃん」という欧米人(東欧系?)の思いつきで、これは新しい悪夢なのでは…。mintty は仕事が早すぎ
https://gitlab.freedesktop.org/terminal-wg/specifications/issues/9#note_406682

因みにこの東欧人を追うともっと面白い(?)ものが。。漢字や絵文字が行末に収まらない時は左半分はその行に右半分は次の行に表示するのが合理的だと Windows Terminal に赴いて主張してる。
曰く、殆どの漢字は偏(へん)と旁(つくり)から成るので分断しても意味を失わないとか…
https://github.com/microsoft/terminal/issues/4345#issuecomment-578434025
https://twitter.com/5chan_nel (5ch newer account)
0892デフォルトの名無しさん
垢版 |
2020/02/21(金) 15:07:53.93ID:5cQWFY2c





0893デフォルトの名無しさん
垢版 |
2020/02/21(金) 20:47:45.26ID:cxQoHGS6
半角と全角の区別付かなくなると困るから元の半角文字はさらに半分で表示したらどうかな
0898デフォルトの名無しさん
垢版 |
2020/03/02(月) 17:38:15.13ID:glnmwhpK
最近は倍角とか4倍角とか聴かなくなったな
0900デフォルトの名無しさん
垢版 |
2020/03/07(土) 18:02:03.37ID:8MkGFgNt
外字というと丸囲みの数字が@〜S以外にもほしくて
21以降も外字で作ってしまっていた事務所を思い出す

何度かPCを入れ替えるうちに使わなくなり、忘れ去られ、
久々に古い文書を引っ張り出して来たら謎の文字化けで外字の存在が発覚
外字が何故かSから始まってたり途中に別の字が挟まってたりしてもはや解読作業
0903デフォルトの名無しさん
垢版 |
2020/03/09(月) 05:26:10.28ID:z9inAChS
(0)とか黒丸の小文字英字とか白丸のンとか黒丸の仮名とかは
Unicodeですら未だに無いんだよな...
0905デフォルトの名無しさん
垢版 |
2020/03/09(月) 14:20:33.44ID:o76Az6W+
わいせつだって文字情報じゃないか!
それともなにか君は辞書から陰茎とか陰核という単語を削除せよというのか!
0907デフォルトの名無しさん
垢版 |
2020/03/09(月) 17:52:27.97ID:T4gz2l9R
>>903
◎と字形が同じとかで一緒にされそう

あと将棋の駒(上下とか白黒)も欲しいとか言ってた人?
0914デフォルトの名無しさん
垢版 |
2020/03/10(火) 12:18:50.37ID:QGyf5BSI
アレはUNICODEが16ビットだったときの産物だからなー

囲み付き文字は合字でなんぼでも表示できるんじゃなかったのか?
黒字に白抜きはないか。
0921デフォルトの名無しさん
垢版 |
2020/03/13(金) 22:24:02.25ID:4HcCQorc
あれ、もうUnicode 13.0.0出たの?
改訂するのは確か毎年6月ねって決めたんじゃ……と思ったら去年から3月だった。
0922デフォルトの名無しさん
垢版 |
2020/03/14(土) 04:49:42.78ID:vXPyxgSI
Win10は頻繁にバージョンアップしてるけど、
使ってるUnicodeは2015年に出た8.0のままなんだよな...
0923デフォルトの名無しさん
垢版 |
2020/03/14(土) 05:08:58.28ID:3vkWqFOe
そーそー
新しいフォント入れてもリンクが効かんという...
全部入りフォント作るにゃ16bitの壁
0926デフォルトの名無しさん
垢版 |
2020/04/09(木) 14:28:17.94ID:+HIZu5X+
Unicode 14.0 Delayed for 6 Months
http://blog.unicode.org/2020/04/unicode-140-delayed-for-6-months.html

Due to COVID-19, the Unicode Consortium has decided to postpone the release of version 14.0 of the Unicode Standard by 6 months, from March to September of 2021.
This delay will also impact related specifications and data, such as new emoji characters.

This announcement does not affect the new emoji included in Unicode Standard version 13.0 announced on March 10, 2020.
0932デフォルトの名無しさん
垢版 |
2020/04/11(土) 06:13:53.13ID:AQJyoftj
外人が絵文字大好きなのは勝手だけど、既存コードの部分もちゃんとして欲しい
0934デフォルトの名無しさん
垢版 |
2020/04/18(土) 12:50:14.52ID:VYQrLT4k
最近出来た細菌の絵文字・・・
0943デフォルトの名無しさん
垢版 |
2020/06/20(土) 20:24:55.95ID:vzEBoOvQ
>>891
超遅レスだが、全角半角問題の亡霊が絵文字とかで再燃してる感じ?

そっか絵文字ってサロゲートの領域のやつ以外にVSを使ってるのもあるのか。面倒だな。

>>897
Unicodeには公式定義があるでしょ

話は違うが、外人は絵文字をEmotional Iconかなんかの略だと思ってる感があって
そこはどうなんだという。
レス数が900を超えています。1000を超えると表示できなくなるよ。