文字コード総合スレ part15 (470レス)
上下前次1-新
110: 2024/12/04(水)23:36 ID:9B20CEFA(1) AAS
SJISとして不正なバイト列は含まれないはず
111(3): 2024/12/05(木)16:18 ID:riH9D2sC(1) AAS
ファイル名がユニコードだと、
例えば2つのファイル名が同一かどうかの判定は、2つのユニコード列が同一かどうかの
判定をしなくてはならない。この場合の同一とはなんだろう。めんどくさい
112: 2024/12/05(木)16:59 ID:jrS77sb5(1/2) AAS
>>111
「ユニコード列」みたいな曖昧な用語で考えると曖昧な結果にしかならなんわな
113(2): 2024/12/05(木)17:16 ID:jrS77sb5(2/2) AAS
「ファイル名」という用語に限ってもOSごとに異なる意味をもち、「バイト列/コードポイント表現」(Linux/Windows)と「 unicode 正規化表現」(MacOS)のどっちのやり方もあるし unicode の正規化には複数の種類がある
114: 2024/12/05(木)19:21 ID:f+d6ZP2R(1/2) AAS
>>103
ネットはJISもあるから、そう簡単な話ではない。
EメールだとまだJISが主流。
115: 2024/12/05(木)19:22 ID:f+d6ZP2R(2/2) AAS
>>113
Macのせいで記号や改行コードの解釈がめちゃくちゃになった。
116: 2024/12/05(木)22:25 ID:Kc+yIq6Q(1) AAS
>>111はあえて雑に書いてあるんだが(めんどくさいからw)
>>113は「曖昧じゃない」んだ?
117: 2024/12/05(木)23:11 ID:+y5lu+gF(1) AAS
見苦しいぞ
118(2): 2024/12/06(金)10:53 ID:zw4qy2EX(1) AAS
ハンカクカタカナ.txtと
ハンカクカタカナ.txtは
区別されると困るか区別して欲しいかは個人の好みだな
119: 2024/12/06(金)11:15 ID:kzR0LSsc(1) AAS
>>111,118
主観と好みの問題だから、現状がそれを孕んでいるかどうか心配ならNKFCで突合チェックしたら良いだけかな
120: 2024/12/06(金)13:01 ID:tlsLperd(1) AAS
>>118
自分はまったく別物だろうという考えだが、逆にそれを同じと思う人がいるというのに驚きだ
121(2): 2024/12/06(金)14:57 ID:PqgirqmV(1/4) AAS
MacOS/iOS だと OS 的にファイル名はNFD強制なのでその2つ区別できないのが普通だな
Macユーザーは「半角カナはファイル名には使えない」という言い方してることが多いけど
122(1): 2024/12/06(金)15:08 ID:teqNcVuG(1) AAS
Windowsは大文字小文字の区別を付けないのがデフォルトなんだけど、
WSL内からアクセスする兼ね合いで区別設定できる(fsutil)
>>121
Macにも同様の理由でNFD強制解除の設定があるのでは?
123: 2024/12/06(金)17:09 ID:PqgirqmV(2/4) AAS
>>122
強制解除とかはなかったと思うが古い HFS+ と違って新しい APFS では論理的には書き込み可能なはず
一方でライブラリで、ファイルオープンする時にファイル名が強制的にNFD変換されるので通常のプログラムでは全部NFDになるのは避けられない
124(1): 2024/12/06(金)20:10 ID:77CvoLMD(1) AAS
Macが一番遅れているのは意外だな
> Mac で NAS (SMB) のファイルが見えない問題を Unicode 正規化方式を変えて解決
> Unicode 正規化方式として NFD を採用しているのは Mac なのに,SMB (NAS) を介してみると当の Mac だけがそういったファイルを認識できない(ことがある)というのはなんとも皮肉な結果ですね...。
125: 2024/12/06(金)21:07 ID:PqgirqmV(3/4) AAS
>>124
Mac はローカルファイルは NFD (っぽい独自仕様)で正規化されてる前提で、リモートのSMBの先は NFC (っぽい独自仕様)で正規化されている前提で動作するという謎仕様なので
Lunux は基本的に正規化されずに全部別の文字扱いで unicode の全文字が使える
Windows も基本的には正規化を前提にしていないが独自仕様の使えない文字がある
126: 2024/12/06(金)21:22 ID:XSDLieo6(1) AAS
わかりやすいようにたとえで説明するとさ、
オマエんちに人を招待したら、土足のまま上がってきた
オマエはイラっとするんじゃね? はいオマエ遅れてる〜
127: 2024/12/06(金)21:35 ID:PqgirqmV(4/4) AAS
服装カジュアルな場所でも常にスーツ着てきてスーツ着てないやつは家族だろうと友人だろうと全員無視するのが Mac 仕草
その上、自宅用と訪問用に別の種類のスーツを使い分けてて同じ種類のスーツ着てないと相手してくれない
128(1): 2024/12/07(土)10:53 ID:+zec5U9G(1) AAS
UnicodeはUnicodeで様々な言語の様々な表現ができるようにするなかで一意性についても
用途や目的によって方法は異なるとしているわけで、そもそもファイルをファイル名で特定するという
昔ながらのやり方との齟齬が出てきているのかもね。
使うなら使うでファイルシステムに用いる正規化ルールなどを定めなければならないんだろう。
129: 2024/12/07(土)11:21 ID:RCmjilK5(1) AAS
同一性やコロケーション問題として
path-win-ntfs、path-linux-ext4のようにunicodeでpath-localeを定めてicu実装されたら良いのにと思った事はあったけど、
それで他の方法が駆逐されるわけじゃなく新たなバリエーションを増やすだけだから、今は余計な事するなと思うよ
130: 2024/12/07(土)11:21 ID:prVW7qhX(1/3) AAS
>>128
ファイル名はOS的には単なる識別子なのでバイト列一致で良い
それを文字コードと絡めて正規化しようとするのがそもそもの間違い
バイト列をどのように解釈するかは別のレイヤーの問題
131(1): 2024/12/07(土)11:44 ID:3wlpERVS(1) AAS
FSとしてならそれでいい
OSをどの層までとするかでも変わってくるけど
マウント時に変換かけてOS間の相互運用気にしてほしい
ネットワーク透過考えるとパスはURIで扱いたいしね
132: 2024/12/07(土)13:08 ID:prVW7qhX(2/3) AAS
>>131
基本的にはアプリ側のライブラリ層でやるべきこと
OS標準ライブラリかユーザ追加ライブラリかはOSの思想によるし Linux とかだとOS標準ライブラリという考え方は縁遠いけど
マウントの時にファイルシステムで文字コード変換するのも否定しないけど、あくまで代替手段なので、固定ではなくオプションや設定で利用者で任意に変更できるべきもの
133: 2024/12/07(土)14:01 ID:8ekNK8XT(1) AAS
>他の方法が駆逐されるわけじゃなく新たなバリエーションを増やすだけ
ほんそれ
134: 2024/12/07(土)14:17 ID:Zwl6oBBL(1) AAS
まずはMacを駆逐しよう
135: 2024/12/07(土)16:00 ID:2Ddhf3xH(1) AAS
Mac で日本語を駆逐でいいんじゃね?
136(2): 2024/12/07(土)21:42 ID:1sWZyE4C(1) AAS
ファイル名にはASCIIにある文字しか使わないようにすれば解決
137: 2024/12/07(土)21:44 ID:prVW7qhX(3/3) AAS
>>136
ASCII のバックスラッシュが円記号になってしまう OS がるらしい
138(1): 2024/12/08(日)03:07 ID:h9KuPnHR(1) AAS
>>136
じゃあまずはASCII以外でここに書き込むのやめろよ
139: 2024/12/08(日)04:05 ID:Xxla/ZnP(1) AAS
>>138
ここにファイル名を書いてる人あまりいないと思うんだけど?
上下前次1-新書関写板覧索設栞歴
あと 331 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.012s