◎正当な理由による書き込みの削除について: 生島英之 とみられる方へ:文字コード総合スレ part14 YouTube動画>1本 ->画像>14枚
動画、画像抽出 ||
この掲示板へ
類似スレ
掲示板一覧 人気スレ 動画人気順
このスレへの固定リンク: http://5chb.net/r/tech/1677826018/ ヒント: 5chスレのurlに http ://xxxx.5chb .net/xxxx のようにb を入れるだけでここでスレ保存、閲覧できます。
Q. UTF-8 に BOM をつけるべきですか? A. Unocode Standard では「付けたければ付けても良いが、付ける必要はないし、付けるのはお勧めしない」と規定されています。
>>1 >Windows NTは初代からUnicodeがネイティブの文字コードです。cp932ではありません。
filesystem の文字コードと system locale についても詳しく
あとファイル名に BOM 必要かどうかも
>>3 訳し方でニュアンスが変わるから根拠となる規格の原文も載せた方が良いぞ
UTF-8, UTF-16, UTF-32 & BOM
https://unicode.org/faq/utf_bom.html 「付けたければ付けても良いが、付ける必要はないし、付けるのはお勧めしない」なんてどこにも書いてないんだが
>>4 Windowsの場合はUnicodeというのはUTF-16LEを示す模様
UTF-16LEはリトルエンディアン固定でBOMは付かないフォーマット
UnicodeといってもUTF-8ではない
>>8 規格に理由は書かれてない。
規格書では趣旨として UTF-8 では Unicode をASCII互換にするための方式みたいな説明してるので、BOM をつけると ASCII互換性が崩れるのが駄目なのかもしれない。違うかもしれない。
すまそ。ここの40ページにUTF-8でBOMが許可されるって書いてあった
https://www.unicode.org/versions/Unicode15.0.0/UnicodeStandard-15.0.pdf Table 2-4. The Seven Unicode Encoding Schemes
Encoding Scheme: UTF-8
Endian Order: N/A
BOM Allowed?: yes
The Unicode® Standard Version 15.0 – Core Specification
https://www.unicode.org/versions/Unicode15.0.0/ch03.pdf When converting between different encoding schemes, extreme care must be taken in handling any initial byte order marks.
For example, if one converted a UTF-16 byte serialization with an initial byte order mark to a UTF-8 byte serialization, thereby converting the byte order mark to <EF BB BF> in the UTF-8 form, the <EF BB BF> would now be ambiguous as to its status as a byte order mark (from its source) or as an initial zero width no break space.
If the UTF-8 byte serialization were then converted to UTF-16BE and the initial <EF BB BF> were converted to <FE FF>, the interpretation of the U+FEFF character would have been modified by the conversion.
This would be nonconformant behavior according to conformance clause C7, because the change between byte serializations would have resulted in modification of the interpretation of the text.
This is one reason why the use of the initial byte sequence <EF BB BF> as a signature on UTF-8 byte sequences is not recommended by the Unicode Standard.
>>10 ASCIIは文字コードで言えば0~127までの文字
UTF-8が使う128~255はASCII互換ではない
128~255を許容するのであれば
BOMもこの範囲に含まれるのでASCII互換
一般に言うASCII互換ってそういう意味じゃねえだろ。
>>13 ここで言われるASCII互換は、ASCII上位互換だな。
今までと同じ入力(ASCII)には同じ出力になることが期待されている。今まで勝手にBOMを付けなかったので、勝手にBOMつけるのはNGくらいの意味。
>>12 「UTF-8 の先頭にある U+FEFF は BOM なのか ZWNBS なのか曖昧なのが、UTF-8 に signature として <FE BB BF> をつけることを推奨しない理由の一つ。」
と書いてあるのか。一つということは他にもあるのか。
>>15 「BOM が不要の場合は先頭の U+FEFF は後方互換性のために ZWNBS として扱う」と規定には書かれいる。
>>18 途中で送ってしまった。
当然途中にある U+FEFF は全て Zero Width Non-Breakable Space (ここで改行禁止くらいの意味)として扱われる。
>>16 ASCIIと同じ出力になるって言うなら
0~127までの文字しか使えないじゃんw
まさか最初さえ同じなら、後ろは違ってもいいとかいう
意味不明な話してるの?
規格がどうであれ、可能な限りBOMをつけるのが最善策。
>>22 とうとう規格無視しろって言い始めた。
オレオレ基準は他所でやれ。技術者どうしの合意は規格を使う。お前に発言する資格はない。
元がASCII → UTF-8 (BOM なし)に変換? → それはただのASCII UTF-8に対応するのであれば 128~255を許容した上で UTF-8の仕様に対応しなければいけない UTF-8に対応するならBOMにも対応しなければいけない それだけのこと
UTF-8という規格に対応するのなら BOMにも対応しろって話だな
>>23 これは規格外をどうするかという話なので、規格の話をしても意味がないぞ
君はエンジニアにむいてない。技術者じゃなくて法律家にでもなれ。
交通事故が起きた時に、人命救助したり、クルマを安全な場所に移動させようとするのが技術者。 交通事故の責任問題ばかり考えるのが法律家。ID:JF7lH/t4は技術者にむいてない。断言する。
>>27 悔しかったら Unicode Standard 書き換えてこいや。もしくは賛同者つのって新しい規格でも作ったら?
規格が不完全でも現実として運用していかなければならないのに、規格を盾に対応を拒否するような技術者はクビだよ
>>29 規格が不完全なら規格を正しく修正するのが技術者の仕事。
お前の主張が正しいなら規格はとっくに直されてる。変更されないのは今の規格が正しいということ。
>>30 そのとおり。誰も問題と思ってないのだからBOM付きはどんどん増える
>>27 つまり文字化けという事故が起きたときに
文字コードを安全に変換できるようにUTF-8のBOMは使われているということか
うわあ時代遅れのBOM強要おじさんがまだ粘着してる このクソくだらない流れいつまで続けるんだ、あほらし
BOMありもなしも規格では許容していて、あとはその仕様の違いを意識せずに混ぜるなというだけの話。 その一方ですべての文字コードをUTF-8 BOMなしに統一すべきだという原理主義者が存在いる構図。
規格に「推奨しない」って書かれているのをどうしても見なかったことにしたい人がいるみたいだな。
>>35 そんなに強く否定してるとこあったっけ
原文どれだ
not recommended ってのは、必要性を十分検討したうえで使えってことだな。
>>37 本体は2.6章にあるよ。12はその理由を説明してる感じみたい。
「お前が○○するぶんには好きにしろ」でいい気がするのだが なんか相手の使い方にそれ以上踏み込んで口を出したくてたまらない人がいるのがエンドレスの原因な気がするのだが
>>40 自分が口出してるという自覚はないのか?
「UTF-8でBOMは許容されている。推奨されていないだけ。」
これが事実だろ
これ以上のことは言わんでいい
推奨されてないものを付けろだの、対応しろだの、規格無視しろだの言うから荒れてる。 つけたきゃ勝手につけろ。他人に勧めるなで終わり。
https://www.unicode.org/versions/Unicode15.0.0/UnicodeStandard-15.0.pdf#page=967 In UTF-8, the BOM corresponds to the byte sequence <EF BB BF>.
Although there are never any questions of byte order with UTF-8 text, this sequence can serve as signature for UTF-8 encoded text where the character set is unmarked.
(中略)
For compatibility with versions of the Unicode Standard prior to Version 3.2, the code point U+FEFF has the word-joining semantics of zero width no-break space when it is not used as a BOM. In new text, these semantics should be encoded by U+2060 word joiner.
See “Line and Word Breaking” in Section 23.2, Layout Controls, for more information.
BOMというのはバイトオーダーマークの略で リトルエンディアンかビッグエンディアンか区別するためのもの UTF-8では必要ない これはWindowsのメモ帳のバグでM$がUTF-8にBOMをつけたのが始まり 仕方ないからUnicodeで許可されてるだけで本来はつけてはいけない
>>44 ついてた時にどうするかが重要なのであって、そこが自由裁量であり経営判断。
Windowsの資産をすべて捨てる決断をするのはカネを払う経営者やユーザーであって技術者ではない。
山茶花(サザンカ)は本来サンザカと読まなければならないのだから、今後はサザンカは受け付けない(キリッ
>>45 お前のようなやつがいるからWindowsはいつまでもShiftJISを使い続けることになる
BOMはUnicodeでは認められていない。禁止すべきものだ。
>>45 入力がBOMつきUTF-8に指定されている場合はBOMとして処理しろ。
入力がBOMなしUTF-8に指定されている場合はZWNBSとして処理しろ。
>>47 推奨されてなくても一応認められてるでしょ
何でそこを捻じ曲げるの
ま、積極的にBOMを使うのが運用として自然だから、BOMをつけるアプリがドンドン増える。 デファクトスタンダード。
>>19 >Zero Width Non-Breakable Space (ここで改行禁止くらいの意味)
何も処理せず読み飛ばせって意味では
>>51 の補足だが
入力に(BOMありかBOMなしかはともかく)
[ZWNBS]AB[ZWNBS]CD
というデータがあれば
出力は
ABCD
になるという意味ね
>>52 先頭は無意味だがそのまま保存する。
途中のはBとCの間で自動改行禁止という指示になる。
# 家(ZWNBS)康 ってしとけば難癖つけらなくて安全だな。
話の途中ですまんのだが
ASCIIって7bitのはずなのに下みたいにどう見ても先頭に0がついて8桁あるのはなんでなんや
https://medium-company.com/ascii%E3%82%B3%E3%83%BC%E3%83%89/ もしかして先頭に0をつけて8bitにしたのがメモ帳とかでは標準の表現方法なんか?
>>54 単に 8bit = 1byte の世界で説明してるからだろう。(最近はそれしかないので、昔は 7bit = 1byte とかもあった)
ハイともイイエともどうとでもとれる書き方なんですんのやろ
大昔は一番上のビットをパリティとして利用していたこともあつたし
JSONではUTF8必須かつBOMを付けてはいけないと明確に定められてるんだな
全てがこのように決まれば文字コードで悩むこと無くなるな
ソース
https://www.rfc-editor.org/rfc/rfc8259.html#section-8.1 JSON text exchanged between systems that are not part of a closed ecosystem
MUST be encoded using UTF-8 [RFC3629].
Implementations MUST NOT add a byte order mark (U+FEFF)
to the beginning of a networked-transmitted JSON text.
>>54 M$がShiftJIS対応のために8bitに変更したんだろ
なんだろな。このど素人が混ざってる感じ ASCII はもともと 1byte に 1文字を入れる設計。 6bit マシンには非対応 7bit マシンにはそのまま入れる 8bit マシンでパリティ不要なら最上位bitにゼロを入れる という設計。最近の機器は全部8bitマシンなので最上位にゼロが入る。 (ISO 2022 拡張とかで変更できるけど)
ShiftJIS対応だけのために8bitに変更とか日本はどんだけ凄いんだよ…
本質がわかってないやつがいるが 論点はBOM禁止という話 M$のバグのために仕様を歪めるな!
将来SJIS(cp932)やそれ以外のcp(cp65001を除く)は全部無くなるんだろうし その頃にはUTF-8にBOM付けるやつは居なくなると想定していて その準備段階として現状UTF-8にBOM付けるべきでないってスタンス 今がんばってBOM付けろって言ってるアホは死ぬまでSJIS浸かってろ
>>67 そのとおり。死ぬまでSJIS浸かってる人は今後もずっと存在し続けるからBOMつけるのが最適解だよ。
MSがWindows12でSJIS(CP932)を異様に扱い難くくするとかの ペナルティが無いと10年後でも平気で残ってそうだ 互換性重視のWindowsが完全にUTF-8で統一なんて20年はかかると予想
>>68 お前にとってはそうなんだろうな。後5年くらいしか生きない老害にとってはそれが最適解。間違いないな。
暴れている人は、最近覚えたCP932という単語ばかり使ってlatin-1の話が出てこないあたり、初心者っぽい。 もうこのスレに書き込まないでくれ。静かに読むだけにしてくれ。
誰か1人が暴れていると書く人は自分が見えていない このスレでは2人がお互い暴れている
暴れてるのはやっぱりUTF-8原理主義者の人だよなあ
原理wって反対の立場ですと表明してるようなもんだが 愉快犯かなにかか
もちろん反対の立場(自由主義)だよ。BOM付けても付けなくてもいいしUTF-8以外のコードも容認する。
>>61 の例のように文字コードは全てUTB8で統一そしてBOMは使用不可が現在進んでいる方向だろう
文字コード問題があるおかげで喰ってる既得権益層にとっては脅威
外部コードが UTF-8 BOM 無しで統一されれば文字コードで悩むやつは少なくなるだろうな Linux はほぼそうなっていて、Mac も頑張っている。Windows はまだこれからだけどMicrosoft はその方向性を技術者向けに発信してる 10年後くらいの新人に「SJIS? 昔そういうのもあったんですね。まだ使ってるんですか?」とか言われそう
過去のソフト・データの資産こそがWindowsの存在意義なんだから、いまさら捨てられる分けがない それがなかったらWindowsである必要がないからな 古すぎて非効率極まりないWin32 APIが結局今も残っているのと同じこと マイクロソフトがいくら頑張ってもこれはどうしようもないことなんだよね もはや誰もメンテしてないDOS時代に作られたツールがひっそりと使われていたりするし 10年後はまだ確実にSJISが残っていると思うよ 20年後はわからないが
過去のデータや文字コードは、そういうのを取り扱うレガシーなアプリケーション (ブラウザなり古いテキストエディタなり)が対応してれば事足りるよね 今後作成するシステムは基本的にすべてBOMなしUTF8で統一、 連携対象となる外部I/Fがあればインターフェース仕様に応じたエンコーディングを採用すればよい CSVなんかはExcelで開くことを考えるとどうしてもBOMありにせざるを得ないだろうけど 普通のプレーンテキストならメモ帳ですらBOMなしUTF8がデフォルトになってもう何年も経ってる以上 あえて今更BOMありを要件にする必要はないだろう
EUC-JPのテキストファイルにお目にかかる機会もほとんどなくなった linuxのデフォルト文字コードがUTF8に変わったのっていつ頃だったっけ iso2022jpもほぼほぼ見なくなったかな メールクライアントやメールサーバでUTF8がデフォルトになってから15年位ってところか sjisが消滅するまでEUCやiso2022jpと同じくらい時間がかかるとすれば やっぱり2030~2040年位になるのかな
>文字コード問題があるおかげで喰ってる既得権益層にとっては脅威 そんなんで食っていけるってどんな仕事だよと思うが、本人は本気で思っていそうだな。
>>81 SMTPはまだ 7bit code が残ってるよね。
UTF-8 もBase64 でエンコードだし
>>83 プロトコルの話なら SMTPUTF8 があるよ。
インターネットの世界だとUTF-8のBOMは「つけるな、解釈するな、さわるな」だから。 20年前にRFC改定されてからはそんな感じ。
>>81 ひと昔前の海外OSSのソースコードやドキュメントはCP1252(latin)が当たり前だったな
いつのまにかUTF8で統一されたように感じるのはなぜだろう
nginxの台頭 当時はこぞってドキュメントを原文で輪読してたとか
なんで?って一瞬思ったけどロシア製だからか koi8?cp1251どっちだとしても非キリル文字圏のwindowsだと辛いね
VS Code と PowerShell でのファイルのエンコードの概要
https://learn.microsoft.com/ja-jp/powershell/scripting/dev-cross-plat/vscode/understanding-file-encoding#choosing-the-right-encoding システムやアプリケーションごとに使用しているエンコードが異なる可能性があります。
・現在、.NET Standard、Web、Linux の世界では、UTF-8 が主流のエンコードです。
・多くの .NET Framework アプリケーションは UTF-16 を使用しています。 歴史的な理由から、これは "Unicode" と呼ばれることもあり、現在では UTF-8 と UTF-16 の両方を含む広範な標準を指しています。
・Windows では、Unicode より前のネイティブ アプリケーションの多くが既定で Windows-1252 を使用し続けています。
BOM はオプションであり、Linux の世界ではそれほど採用されていません。UTF-8 の信頼性の高い規則があらゆるところで使用されているためです。 ほとんどの Linux アプリケーションでは、テキスト入力が UTF-8 でエンコードされていると想定されています。 多くの Linux アプリケーションは BOM を認識して正しく処理しますが、認識しないものもあります。そのため、そのようなアプリケーションで処理されたテキストにアーティファクトが生じます。
したがって:
・主に Windows アプリケーションと Windows PowerShell を使用している場合は、BOM ありの UTF-8 または UTF-16 のようなエンコードをお勧めします。
・複数のプラットフォームにまたがって作業する場合は、BOM ありの UTF-8 をお勧めします。
・主に Linux 関連のコンテキストで作業する場合は、BOM なしの UTF-8 をお勧めします。
・Windows-1252 とラテン-1 は基本的にレガシ エンコードであり、できれば避けてください。 ただし、一部の古い Windows アプリケーションではそれらに依存している可能性があります。
UNIX はパイプで複数のデータストリームが一つになったりするので, データストリームの「先頭」とは何かがはっきりしないよね tar のデータストリームとかどうするんだろうね
そういいながら、結局 PowerShell の新しいバージョンからデフォルトを BOM無しUTF-8 に変更してきたのがマイクロソフト流儀だけどな。 時代の流れは早いお。
>>93 そもそもtarはバイナリだ。テキストファイルじゃねーよw
ファイル名とか入ってるけど,そのファイル名の先頭にBOMつけるの?
Windows技術者「お前ぇぇ、WindowsアプリではBOMつきUTF-8 使えって言ってたじゃん。なんでVScodeやPowerShellの新しいの BOMなしなの?」 MS「BOMつきは昔の話」 俺「......
>>97 Linuxにも対応してるからだろ
ちょっとアホすぎやろ
>>96 BOMはテキストファイルの頭につけるものなの
tarはテキストファイルか?違うだろ。アホすぎ。
へえ tarはただ元のファイルにヘッダをつけてひたすら結合するだけという認識だったんだけど こういうファイルもバイナリファイルって呼ぶべきものなのかな BOMつきテキストファイルならBOMつきのまま無圧縮で格納されちゃうものかと思ってたんだが tar化するときにはファイルの先頭じゃなくなるから除去されちゃうの? で展開するときにはまた自動でBOMがついちゃうの
途中送信しちゃったけど、 もしBOMの付け外しまでフルオートでよしなにやってくれるとしたらtarコマンドって随分と賢いんだね そんなクソめんどくさい考慮せずに済ませるほうがよっぽど楽だろうに
おちつけ 最近の tar は gzip やその他の圧縮なんか対応してたりする賢い tar で便利に使われてるので人によって認識にいろいろ違いが出るのは仕方ない。 もともと tar は tape archiver で、磁気テープにファイルを読み書きするためのツールでバイナリとかテキストとか気にしない。 というか unix 系のツールにはバイナリとテキストを区別しないやつが多い。 「それバイナリやろ」とか、「それテキストやろ」とか言われれも、「何の違いが?」ってなる。
圧縮されていようがいまいがこんな発想が出てくるのはただものではない
>>94 >>97 MicrosoftもBOM無しUTF8へと移行をどんどん進めてるね
Microsoft以外の一般環境だとBOM無しUTF8で統一されてしまったからね
というか、MicrosoftとLinux以外のOSがなくなってしまったんだぜ あとmacOSが残ってるか
そういえば、テキストだけ特別な扱いはしたくないからBOMは入れてくれるなという主張はわからんでもないが とあるそこそこ有名なOSSは逆にストリームの先頭の EF BB BF を強制的に削るという強硬策をとってたな。
今はテキストファイルの話をしてる ストリームの仕様は関係ない話だ
あほだな。テキストのストリームとか言われたら死にそうだな。
UNIXはバイトストリームしかない中古品 C言語もWindows向けと違ってテキストモードとか実装して当然ものすら無いし
Windows の改行コードが 0D0A なのはMSDOS の名残 C言語の \n は1バイトなのだが,これを2バイトでも処理できるように 苦し紛れに作ったモードがテキストモード
Why is the line terminator CR+LF? https://devblogs.microsoft.com/oldnewthing/20040318-00/?p=40193 This protocol dates back to the days of teletypewriters. CR stands for “carriage return” – the CR control character returned the print head (“carriage”) to column 0 without advancing the paper. LF stands for “linefeed” – the LF control character advanced the paper one line without moving the print head. So if you wanted to return the print head to column zero (ready to print the next line) and advance the paper (so it prints on fresh paper), you need both CR and LF. If you go to the various internet protocol documents, such as RFC 0821 (SMTP), RFC 1939 (POP), RFC 2060 (IMAP), or RFC 2616 (HTTP), you’ll see that they all specify CR+LF as the line termination sequence. So the the real question is not “Why do CP/M, MS-DOS, and Win32 use CR+LF as the line terminator?” but rather “Why did other people choose to differ from these standards documents and use some other line terminator?” Unix adopted plain LF as the line termination sequence. If you look at the stty options, you’ll see that the onlcr option specifies whether a LF should be changed into CR+LF. If you get this setting wrong, you get stairstep text, where each line begins where the previous line left off. So even unix, when left in raw mode, requires CR+LF to terminate lines. The implicit CR before LF is a unix invention, probably as an economy, since it saves one byte per line. こんなスレにおるのはほぼオッサンなんだけど キミに学びがあったのならよかった
最後の方の Unix の記述は間違いだな。ちゃんと調査せずに適当な風説を元に回答したようだ。
1) 大昔の teleprinter/teletypewriter では CR+LF で改行にしていた。違うのもあった。 2) それを引き継いでビデオ端末の多くが CR+LF を改行にしていた。違うのもあった。 3) デバイスに直接出力していた古いOSや、OS無しの低機能のシステムではデバイスの多数派に合わせて CR+LF を改行コードにした。 4) Multics ではデバイス・ドライバーで出力先デバイスに合わせて改行処理を変更する機能があるので、デバイスに依存しない抽象化された文字コードを採用することにした。 5) このときに、当時の ISO 646 のドラフトにおいて LF だけで改行とできる規定があったので、それを採用した。 6) unix はこの Multics の仕様を引き継いだ。 #)一方で CP/M はデバイス・ドライバーによる抽象化などの高度な機能は無かったので、CR+LF を改行コードにするしかなかった。MS-DOS および MS-Windows はこの仕様を引き継いだ。
CP/Mのパクリをしなければ改行にCR+LFを採用する必要はなかった まあこのパクリのおかげでCP/M86に勝ったんだけどね
>>120 お前は深く考えてない玩具 Apple II の文字コード継承しただけじゃないか? 正直に白状したまえ。
Macはワンボタンが素晴らしいと思ってるし、画面下にアプリ切り替えバーなんていらないし、UNIXなんてクソだからCRを使った
CRはCarriage Returnで行頭に復帰 改行はしない
読むときは CR(単独) が来ようが CR+LF(連続) が来ようが LF(単独) が来ようが LF として処理する 描くときは LF のみ描き込む これが正しい在り方
LF, CR, LF, LF, LF, CR ときたら何行改行するか問題。 CR+LF 派にこれを突きつけると、 言行がバグる人が多い。CR+LF派は脳に欠陥があるに違いない。
>>127 LRの次がCRだったら無視する(読み飛ばす)
CRの次がLFだったら無視する(読み飛ばす)
で問題なし
LF派:誰に聞いても同じ回答を返す CR+LF派:人によって回答が違う。謎のオレオレ理論を説明しだす CR派:問を無視してアップルへの恨み言を言い始める
CRは先頭位置に戻す
LFは行替え
だから
>>127 は4行改行して先頭位置になる
>>133 本来はそんなんだけど
タイプライターで打つときにそれだと二動作必要になるので
一動作でcr+lfにするようにした
これが混乱の始まりかも
>>133 つまり先頭位置にある時には CR は不要で LF だけで改行すべきで、
毎回 CR+LF を出力している某OSは無駄と言いたいの?
それでは CR+LF 派とは言えないよな?
HTTPプロトコルは改行がCR+LFなのはどうして?
>>136 まじめに答えると、
SMTPなどの既存のプロトコルを参考にしたから。
で、SMTPがCRLFなのは、インターネット以前の汎用機とか使ったメールシステムとの相互接続性に気を使ったから。
実際のHTMLは場所によってLFだけやCRだけの改行も許されていてかなり複雑なんだが。
ほー、ってことはWindowsも そういった互換性を大切にしてたんだな
>>138 まあ、そうだな。
Windows が大事にしたのは MS-DOS との互換性で、
MS-DOS が大事にしたのは CP/M との互換性で、
CP/M は大昔の汎用機と同じくらい古臭い<BS><BS><BS>シンプルな設計だったというだけだな。
UNIXは元々研究用だからね 互換性なんか考えちゃいない だからUNIXはBSD系とSystemV系に分離した 多くのコマンドの互換性がなくなった
>>141 歴史をまったく知らない素人妄想だな。
Multics で導入されたテキストデータの抽象化とか知ってるか?
http2以降はヘッダに改行なくなったんだね、、、
>>141 多くのコマンドの互換性ってたかだかオプションが違うくらい
シェルスクリプトでどのバージョンでも対応できた
>>142 知ってる。お前のターン。
俺を論破してみせろやw
知ってる→実は何もわかってない 知らんのかね→自分が何も知らない どうして、こういう知ったかぶりする小学生みたいんな奴が混ざってるんだろう?
コマンドラインにプログレスバーを出したり 固定レイアウトでリアルタイム更新する画面とか きちんとCRとLFは区別されてるって感じる
BOMは文字コード? ZWNBSは文字コード? CRは文字コード? LFは文字コード?
>>147 俺のこと言ってる?
「知らんだろ」っていうやつは、
自分が知らないことを相手に要求して
揚げ足取ろうとしているだけだから
「知ってる」っていうと相手に大ダメージを与えられる
知ってた?
>>150 無知なやつは恥も知らんなwww
自分が知らないから相手も知らないはずwww
UNIX終了wwやはり正義はWindowsだったwwww
Unix is dead. Long live Unix!
https://www.theregister.com/2023/01/17/unix_is_dead/ Unix というか Linux に徐々に移行でしょ メインフレームやスーパーコンピュータはLinux になっちゃたし
>>153 タイトルすらまともに読めてなくてw
その記事
IBM が Redhat 買ってこれからは Linux を始めとする unix-like の時代。AIX とかの(旧来の) Unix は終わり。
Windows についてはマイクロソフトも WSL を頑張ってるとしか書かれてない。
そもそも文字コードに何の関係が?
>>141 ,153
お前 UTF-8 に BOM つけろ君だろ
教養が感じられないあたりがそっくり
主張が通らなかった、腹いせにスレを荒らすな!
>>156 アホ化。逆だわ
UTF-8にBOMつけるな
あれはMSが歪めた仕様
元々はバグだ
シランなら黙っとれ
このスレは以下で全員が一致している ・文字コードはUTF8で統一 ・UTF8はBOMを付けない
> LinuxやMacでは、ファイル名やメタデータから文字コードを判断することが多いので、BOMは不要です。
これマジ?
BOMって、 UTF16とかじゃないと意味が無いやん?
mac のファイルシステムはリソースフォークを持っているので そこにTextEncoding を格納しておけば良い
>>159 出典を挙げてくれるところが親切だな。そのqiitaどこ?
Windows のファイルシステムは拡張子を持っているので そこが .txt なら BOM 無し UTF-8 を前提にして良い
おいおい Windowsで.txtなんてそれこそ山程CP932のファイルがあるだろう(日本の場合) それらは全て無視かい
>>165 そいつらは将来に備えて .sjt とかにでも改名しとけw
UTF-8を使う俺が困らなければ他人はどうでもいい。
>>167 UTF-8を使う俺=将来のお前
どうせ嫌でも皆がUTF-8を使うことになる
遅いか早いかの違いでしかない
遅いか早いか、まさにそこがポイントだわな。 100年後には確実に死んでいるだろうからといって明日すぐに死んでもいいなんて考える人はまずいない。
あきらめろ!もう勝負はついてしまったんだ 今は粛々と対応を進めるフェーズだ 早く対応するほど傷は浅くてすむぞ
>>166 むしろ新しいほうが.utf8のほうが合理的かと
>>171 あきらめろ。どうせSJISのファイルは無くなるんだ。
何ならSJISのテキスト .txt ファイル今後一切作らなくても生きていける。 UTF-8はそうはいかない。
今日は日曜日なんだぜ。仕事引退したご老人は気づかんかもだが。
C言語でShiftJISからUTF-8に変換するコードをライブラリは使用しないで書いて下さい。 以下はC言語でShiftJISからUTF-8に変換する簡単なコードです。このコードでは、ShiftJISの1バイト目が0x81以上0x9F以下または0xE0以上0xEF以下の場合には2バイト文字、それ以外の場合には1バイト文字として扱います。 #include <stdio.h> void sjis_to_utf8(char *sjis, char *utf8) { unsigned char c1, c2; while (*sjis != '\0') { c1 = *(unsigned char *)sjis++; if (c1 <= 0x7F) { *utf8++ = c1; } else { c2 = *(unsigned char *)sjis++; if ((0x81 <= c1 && c1 <= 0x9F) || (0xE0 <= c1 && c1 <= 0xEF)) { *utf8++ = ((c1 << 8) | c2) + 0x3C00; } else { *utf8++ = c1; sjis--; } } } *utf8 = '\0'; } int main() { char sjis[] = "こんにちは、世界!"; char utf8[100]; sjis_to_utf8(sjis, utf8); printf("%s\n", utf8); return 0; }
ShiftJISって表現だと文字集合定まらないのに回答もらえんだ どんだけクソ記事多いんだよ
>>162 macのリソースフォークとか、知識が化石だな
今は大概のファイルシステムが拡張ファイル属性をサポートするので、そこにメタデータを
記録することが可能
apfs はxattr もresource fork も両方使える named resource fork は無くなってるが
>>175 バッファオーバーフローのチェックがなく不合格
それ以前の問題だろ。
>>175 はChatGPTに作らせたんじゃね?
AIって、コンピュータのくせに自分でトレース実行してバグ無いか確認しないのなw
検算してもその検算が正しいかどうかすら自身が持てないのがchatGPT
WindowsだがExcelもWordも入れてない 自分のHDD/SSDにはSJISで保存されたファイルなんてもうほぼ存在しない
>>185 Mac が定期的にかかる病気。
すぐ治るけど、時間をおいてまた再発する。
Macは日本の野党と同じで世間からの評価が甘いよなあ。 Macが基幹業務で使われてない何よりの証拠でもあるが。
地震ないのに自信たっぷりに回答するのがChatGPT
知らないことは知らない 調査した限りでは存在しない そういう答えのほうがいいのに なんで捏造するんだろうね
そういうのはだいたい、知らないと答えたらひどく怒られた経験があって委縮して育ってしまったんだと思う
自信たっぷりに嘘を答えるから 文系はすぐにだまされるωωω
>>193 ShiftJISならバックスラッシュ誤判定だろうけど、ShiftJISなわけないよな
浅慮すぎるのは置いといて ゲームだし手軽にバイト長固定で処理したかったは十分考えられる
ネットの論調は「ソ」と言ったらSJISバグみたいになってるけど今時ありえるだろうか? もし事実だとしたら旧作からライブラリか何かを移植して流用したのかな?
「ソ」とか「ポ」を含む文字列で壊れる問題、昔はS-JIS絡みで時々見かけたね
XAMPP は、MSYS2 なのか? Windows のsjis(CP932), MySQL, PHP を使っているのかも Ruby on Rails では、日本語のバグを避けるため、 Linux, UTF-8, PostgreSQL しか使わない
>>193 アイディアファクトリー(コンパイルハート)のゲーム開発の求人には、
C/C++, C#, Windows, Unity と書いてある
Unityの文字化けを解消する!
https://qiita.com/kumi0708/items/2f8dd2fc2ccb673ff12b UnityからC#のスクリプトファイルを作成するとUTF-8(BOM無し)になりますが、
VisualStudioはUTF-8(BOM付き)じゃないとコードページを解釈できずにShift-JISになってしまうようです。
WindowsがUTF-16だと知らないのは不思議だな
SwitchとWindowsでBOMなしテキスト使ってると、結構困ったことになるんだよね char:Switch=utf8 Win32=sjis wchar_t:Switch=utf32 Win32=utf16 char16_t/char32_t:対応しているライブラリが少ない
ターゲット固定なのにそんなのある? ネットとか客先とか何くるかわからん状況じゃないんだし
Windows はUTF-16 か。 確か、Ubuntu はUTF-32 とか? たとえLinux 内部で、4バイト文字を使っていたとしても、 Ruby などのウェブ系言語では、UTF-8 前提でモジュールを作るでしょ? CP932 の「表・ソ」などのダメ文字は、数十年前の話
&#xHHHHH; で5桁以上指定出来ないのは HTML のバグ?
Macで古いmp3を取り込んだらID3タグが文字化けしまくり 昔はコード変換のユーティリティとか持ってたけど、どうすべきかな 坂本龍一は言いました「芸術は長く、人生は短し」 音楽ファイルは長く、文字コードは短し
ふと思ったが、令和の令って、手書きでどう書いてます? 「令」の下側の部分、活字だと「つ」に縦棒みたいになってるけど、手書きだとマみたいに書く人は 少なくないと思う。でもこれって中国語の活字体に近い 実はこんなレベルで「統合」漢字ですか?
>>220 今どき手書きしない。
ここ20年くらい住所氏名電話番号くらいしか手書きした覚えないなあ。あとは問診票の体温とかか
>>220 あえて言うと、もともと歴史的には明朝体(印刷用)字体と楷書体(手書き)字体の差なので、手書きの時にマになるのが普通のこと。
「はしご高」とかも本来は楷書体(手書き用)で、明朝体(印刷用)は「くち高」。
この辺の歴史を忘れちゃって別字だ同字だ異字体だと言って混乱してるのが現代人。もともとは単に書体の違い。
昔は詳しくない層はうろおぼえで何となく近い文字を同じ文字と認識してたんだろうけど 今は正確に同じ形を出力できるようになったぶん「なんか違うぞ」と目に留まりやすくなってしまったんだな
悪いのは学校教育。 昔の人は明朝体と楷書体は完全に別物という認識で区別がついてた。本とか新聞とかで見るのが明朝体。手書きは楷書体、戸籍は手書きなので楷書体だった。 ところが明朝体と楷書体の両方の特徴をもった中間の「教科書体」という書体を作って小学校で文字を教えるようになった。このせいで多くの人にとって書体間の差が良く分からなくなってる。 書道とか専門的なことをやれば気付くのだが、普通の人は明朝体と楷書体の違いが理解できない。 というか両方間違いで中間の教科書体が一般的文字と信じてる。そういう現状に合わせるためにフォントの明朝体や楷書体も学校教育文字については教科書体に近づけるようデザインされるようになってる。
日本の明朝体フォントの「令」は珍しく昔ながらの明朝体の字形が残っていて、教科書体(楷書)寄りに改変されてないので、手書きと違う字形になってる。
※1 どうしてもunicodeのCJK総合漢字から新字体と繁体字と簡体字を切り離してリストアップしたかったんです
散々調べて下のそれっぽいコード例を発見するものの、さっぱりで残念
https://qiita.com/Saqoosha/items/927e9d6e77922ad9f08a 膨大にある造語めいた気持ち悪い繁体字と簡体字をPC環境から排除するため、フィルターへそれらのunicodeを登録したいのです
繁体字または簡体字のunicodeリスト、メモ帳などへ抽出したテキストリスト、上記目的を達するのに最適なソフトなど
何かしら情報はないものでしょうか
※2
unicodeを紹介してくださるサイトを、そのまま丸コピして手元へ資料化すれば?と考えるものの著作面で不安
HTTrackというオープンソースのソフトを発見しましたが、古い上にソフトへ通信権限を与える類いのようで、下手なネトゲよりリスク高い
何より資料として閲覧可能になるのは嬉しいものの、繁体字と簡体字を排除する本来の目的に沿わない
↑全てをすっとばして、CJK総合漢字から気持ち悪い繁体字と簡体字のunicodeを抽出する方法、既存のファイルやリストなど、がありましたら解決する話です
アドバイスくださいm(vv)m
unicodeにおけるcjk統合漢字は、一つの意味に対する漢字を〇△□×と横並びさせて、それを終えてから次の意味の漢字へ移行する配列となっています だからこそ〇しか要らないのに4E00から9FF0の中で膨大な△□×という文字のゴミが無作為に溢れてしまうのです しかも支那は性懲りもなく使いもしないゴミ文字を未だに造り続けているので、unicodeは5桁にまで膨れ上がっています(そろそろ整理しろよ!新語を作んなボケが!!使わねー字なら抹消しろ!と) 「漢字」と一括りにするのではなく、そこから真に必要で有用な新字体のみを抽出したい、あるいはフィルター用に新字体以外のゴミunicodeリストを欲しい、と思うのは必然ではないでしょうか そのくらい、今の支那はあらゆる分野で癌と化していますよ^^;
ですよねえ・・・ qiita.com/Saqoosha/items/927e9d6e77922ad9f08aさんの例がまさに自分の環境でも活用可能な案だったのですが、古い上によく分からなくて^^; 日本語に用いられる漢字=新字体は、象形文字状態の造語・当て字ばかりで非文明的な繁体字・簡体字と比較すると、めちゃくちゃ秀逸かつ言語内に上手く纏められているんですよ 集約とも言えます 1949年の内閣すげー!!! それも平仮名や片仮名という3種の文字列を組み合わせて歌を詠んだり、そうした世界屈指の難解な文字文化を経たからこそ、私達の先祖は新字体という完成度の高いものを作れたんでしょう 今現在、支那チョンに使われる言葉の多くは「日本語由来」ですしね・・・ 文字においても漢字なのに新字体が一番最初に確立されている不思議 その史実を虚偽で覆い隠さんと、いつもの共産圏の捏造焼き畑で無駄な簡体字が、延々造られ続け、unicodeを圧迫しているのが昨今の実情です やることなすことGと一緒で美も詫び寂びも無い、ただ増えるだけの癌に等しい存在と価値観が、まさにチャイナの本質ですね^^;
文字コードのことも漢字のことも何も分かってなくて草。 お前は日本語専用フォント使っとけ。
まあ、統合なんてせず、他はどうでもいいから新字体だけは別枠でunicodeに登録してほしかったですね そうすれば、ここからここまで理論で新字体とそうでないゴミ象形オナニー文字とを正負ともに区別出来たんですわ・・・ 他の地域はそれぞれの民族単位で登録されていたり、誤差の範囲内でもきっちり枠が設けられているのに 東アジアの区分だけ何故かごちゃ混ぜで笑えますよ(拡張ABCDとかやってる暇あんなら新字体だけでも別枠にしろ!) unicodeを制定する世界の上層部が、如何にアジア圏をどうでもよく考え、雑に一括りとしているか分かる話ですなw
>>232 2023年になってから取り組んでも無駄だろな
無理やり押し付けて既存のシステムが崩壊し日本はますます貧しくなる
国賊親子だからそうやって日本の国体を壊し、貧困化の延長を謀るのがこいつらの本懐だからな^^; 自分達だけは生かされると思っているのだろうけど、支那の歴史は例外なく相手国で利敵に走った屑を真っ先に親類縁者ひっくるめて惨殺して口封じとした 俺らパンピーやその子孫が絶望の中にいるとき、こいつら当人は他界し、その子孫は既にもがき苦しんだ後っしょ ま、俺らの将来も支那の臓器牧場候補だろうけど、その前に必ずこの国賊達が総じて臓器強奪や人肉食の材料になる点だけ、留飲を下げる要素だろうね
CJK統合漢字
https://ja.wikipedia.org/wiki/CJK%E7%B5%B1%E5%90%88%E6%BC%A2%E5%AD%97 1984年、ISOの文字コード規格委員会 (ISO/TC 97 - SC2) は文字セットの切り替えを行わずに世界中の文字を単一の文字集合として扱える文字コード規格 (ISO 10646) を作成することを決定し、専門のワークグループ (WG2) を設置した。当初、この文字コード規格は16ビットを想定し、その中に日本や中国など各国の漢字コード表をそのまま入れることを想定していた。しかし中国はこの方式では自国で現在策定中の漢字コードが全て入らなくなるとしてこの方針に反対し[要出典]、1989年、各国の漢字コードを統合した漢字集合HCCのアイデアを提案した。
1990年、完成したISO 10646の初版ドラフト (DIS 10646) では、漢字コードは32ビットで表現され、各国の漢字コードはそのまま入れることになった。しかし中国は漢字を各国でばらばらに符号化するのではなく、あくまで統一して扱うことを求めてこのドラフトには当初から反対しており、今後の漢字コードの方針を決めるため、ワークグループはCJK-JRGと呼ばれるグループを別途設置し、そこで引き続き検討することにした。
>>222 なるほどー。
そうすると統合漢字も自然なものに思えてきますね。国や言語毎に字体が違うだけなんだと。
漢字の場合、国・言語ごとの字形の違いは アルファベット書きの単語における国・言語ごとの綴りの違いに近いと思う。 同源の単語であれば他言語の綴りで書かれても一応意味は分かるが、 決してそれが自然だとは思われない。 漢字は統合によって「元の綴りがどうだったか」の情報が残らなくなってしまったので 言語判定をさぼってフォールバックフォント表示を通常運用にしたような環境では 他言語の綴りに化けた文書に頻繁に遭遇することになり違和感が募る。
同じ漢字でも、簡体字って全然読めないよ… 違和感なんてレベルじゃないよ、あれ…
おばあちゃんが書く門の略字体なんかは今の子読めなかったりするね
不思議な漢字と日本語──異体字の謎
https://tenki.jp/suppl/hiroyuki_koga/2015/05/18/3961.html 実は、意味も発音も同じなのに異なった字形の漢字は、紀元前約1600年前に中国で誕生した、漢字の原型である「甲骨文字」からあります。
このことはなにを示しているかというと、異体字は主に手書きの文字だからこそ生まれるということです。手書きであれば、点画が短いとか長いとか、おさえるとか払うとか表現が人によって変わってしまうことは当然ですね。それまで使われていた文字があるときにちょっと異なったふうに書かれて、それが誤字となって消えてしまうのではなく、多くの人がそう書くようになってある程度定着してしまう…しかも前の書き方も生きている…。これが異体字の源泉です。楷書、行書などの漢字のスタイルである「書体」も関係しています。
異体字は人名や地名に多いですね。
地名については、言ってみれば「なまり」のようなものだといってもいいかもしれません。人名であれば、漢字の字形の差が自分の個性のようなものと感じられて「渡邊」と書かれないと、自分ではないような気がする、といったことも起こってきます。
文字は社会のなかで共有されているものですから、自分勝手に書いていいというものではありません。ただ異体字だからといって、「間違っている文字」というわけでもないのです。正字・旧字・本字・俗字…といった区別は、漢字の使われ方を標準化するためにある社会・時代で便宜的に決められた「正しさ」の基準ですから、時代によって変わることもあります。日本でも当用漢字、常用漢字、人名漢字などとしょっちゅう漢字の枠組みが変化していることはご存知でしょう。
現在ではコンピューターや携帯電話などで表示できる漢字の数が飛躍的に増えたことで、この枠組がまた変化しています。時代の変化とともに、そして技術との関係で漢字はどんどん変化するものなのです。
>>238 新字体もいわば簡略字体なわけで、まあ違和感があるかどうかは慣れなのかも
>>239 簡体字だと门ですよね。というわけで昔の世代の方がより簡体字を読める?
中国語での発音が同じという観点で共産党が簡体字を作ったので 日本の老人とは関係ない
簡体字には二種類の起源があって、難しい漢字のかわりに手書きの略字を形を整えて正式採用したものと、めったに使わない漢字を廃止して意味や音の似た別字で置き換えたもの。(民間の手書きでは難しい字を宛て字で置き換えるのがよくある話) 実は日本語でも政府は同じようなことをやってる。「編輯」の「輯」を廃止して別字の「集」にするよう指示したり、「叡智」を別字の「英知」に置き換えたり。 中国(大陸)は日本より徹底的実行しただけ。
>>245 これは「前からどちらも使われていたのが片方に統一された」だったはずで
一般に言われているほどではない
>>246 昔から両方あるけど、違う意味で使い分けられていた。
障碍:じゃまな物があって進められないこと
障害:危害を加えられて進められないこと
当用漢字で碍を害に置き換えたせいで、この2つが衝突した。「妨碍」を「妨害」に統合した関係も似たような感じ。前者は邪魔な物を置いて、後者は傷を負わせて。
碍を害と統合するとか unicode 以上の暴挙。 国語審議会には漢字廃止論者がいたので仕方ないね。
近頃は漢字を使うことをあきらめているケースも多いよね こ線橋とか
>>251 俗説でも何でもないだろうが。
引用されてるやつも、昔から混用があったことを指摘してるだけで、害と碍が統合可能な根拠などどこにも示していない。
難しい漢字や頻度の低い字を同じ音の別の漢字で代用するのは大昔からあった習慣。それこそ甲骨文字の頃からある。
しかしあくまで代用は代用。
戦争で片足を失った。→ 身体を傷つけられているので「障害」でOK 生まれつき目が見えない。→ 誰かに危害を加えられた訳ではないので「障害」はNG 使った例があるかどうかじゃなくて、正しく使われてるかの問題。
>当用漢字で碍を害に置き換えたせいで、 嘘はここだな。 その流れは戦前からあったと。
>>254 昔から混用があったのと、政府が正式に使用を禁止したのでは全然意味が違う。
>当用漢字で碍を害に置き換えたせいで、この2つが衝突した。 せいで衝突したんじゃないな。
>>256 衝突してるじゃん。学識がある人には使い分けができてたのに、使い分けが禁止になってる。
それよりも前から衝突はしてるだろう。 あと当用漢字をそれ以外の「禁止」とするのもまた嘘だろう。 学識がある人はあれと「禁止」は区別がつくから心配には及ばないだろう。
話を戻すと大陸の簡体字も同じやり口。 「機」の略字が「机」なわけではなくて、難しい漢字の「機」を廃止するんで、同じ音の「机」を使ってね。民間の手書きとかなら机って書いて人もいただろみたいなの。
>>258 当用漢字は禁止だよ。公文書、学校教育、新聞などでの使用ができなくなった。
当用漢字が廃止されて、常用漢字の制定で推奨に変わった。
使用が一切認められない「禁止」ではない。 そして「話を戻すと」、せいで衝突したんじゃないな。
当用漢字表
https://www.bunka.go.jp/kokugo_nihongo/sisaku/joho/joho/kakuki/syusen/tosin02/index.html 使用上の注意事項
イ この表の漢字で書きあらわせないことばは,別のことばにかえるか,または,かな書きにする。
ロ 代名詞・副詞・接続詞・感動詞・助動詞・助詞は,なるべくかな書きにする。
ハ 外国(中華民国を除く)の地名・人名は,かな書きにする。
ただし,「米国」「英米」等の用例は,従来の慣習に従ってもさしつかえない。
ニ 外来語は,かな書きにする。
ホ 動植物の名称は,かな書きにする。
ヘ あて字は,かな書きにする。
ト ふりがなは,原則として使わない。
チ 専門用語については,この表を基準として,整理することが望ましい。
原則となる調達基準が制定されてそれ以外が入りにくくなったみたいな話だよね こういうの一言で言えば何なんだろう?「ルール」?
簡略化は一貫性がない場合もあるのな。傳->伝、團->団とか
異体字はその定義があいまいだから、IT技術者の仕様都合でどうにかできる話ではないでしょ
UTF-8をよく見かけるけど 7とか6とかも昔はあったんですか?
8ビットスルーでない経路が絶滅危惧種だし HTTPで無駄にUTF-7なんて使っても知らんいわれるのがオチ つかうにしてもプログラム書かないといけないならBase64のが筋がよさそう
UTF-5のことも忘れないでいてあげるべき
UTF-5 ‐ 通信用語の基礎知識
https://www.wdic.org/w/WDIC/UTF-5 やっぱり色々あるんですね㌧ これからも増える可能性もありそうですねー
・・・ギャグで言ってるつもりなのか本気でそう思ってるのか判断がつかないんで一応補足しとくと 「UTF-#」の#はバージョン番号じゃなくて Unicodeの文字を何ビットで表現するかを意味してる 基本的には16Bitで表現するUTF-16が一番楽 サロゲートペア文字もそうでない文字も同じデータ長として管理するなら32Bit表現のUTF-32がよい だが現状はAsciiと互換性のある8Bit表現のUTF-8が事実上の標準となった UTF-7はデータビット数を8⇒7に減らすことで少しでも通信速度を稼ごうとしてた昔の通信経路向けの規格
>>272 バージョンじゃないんですか、詳しくありがとうございます!
>>272 あんまり知ったかぶりすんな
>「UTF-#」の#はバージョン番号じゃなくて
虚偽、UTF-1 とか UTF-2 はバージョン
> 基本的には16Bitで表現するUTF-16が一番楽
虚偽、(もしくは個人の感想)
> UTF-7はデータビット数を8⇒7に減らすことで少しでも通信速度を稼ごうと
虚偽
>>238 毛沢東文字やね
あれはスパイを発見し易くするために導入された
>>272 >サロゲートペア文字もそうでない文字も同じデータ長として管理するなら32Bit表現のUTF-32がよい
doubt
64bit版g++は、規定のstd::wstringがUTF-32だよ
ペロッ...これは、0xE0100で修飾された異体字!!
見た目じゃなくて成り立ちだから歴史的経緯からIDS化してるんじゃね
簡体字制定時にも過度の正規化に反対する良心的な人もいたみたいだけど…結果は文化継承お構い無しむしろ断絶こそ業績みたいな御用学者に押し切られた?わけで 一旦決まったからはあの面子の国、則天文字やルイセンコ学説宜しく滅ぶまで使い続けるんだろな という訳で今すぐ滅びろ
utf-8が標準だと思ってたけど昨日Excel見たらutf-8じゃなくてビックリした
メモリ上の内部コードはしらんけど xlsxはXMLだからUTF-8じゃない?
お姉さんの可能性あるで 俺もお姉さんだし( ・`ω・´)
>>291 他の人のExcelも今度確認してみるわ
XML は BOMつき UTF-16 も許されてるんじゃなかったっけ? BOM無しなら UTF-8 だったか
excelは昔からさまざまな文字コードに対応してる 高い互換性を維持し続けてる それがMSの強さ こういうところはUnixとかLinuxとかOSSでは 太刀打ちできない
>>296 emacs だってexcel 以上に多種多様な文字コードに対応してるし、linux (glibc)の対応ロケールと文字コードの数は windows より多いぞ。
無知が擁護するとMSの格が下がるのでやめとけ。
>>291 そうだね。実際には階層的になったXMLをzipにしてあるけど
んでXMLの中をよく見るとxlsxを作成したローカルのパスが書かれていたり。キモっ
おっと文字コード関係なかったw
Microsoft が互換性重視とか最近のブラックユーモアは笑えないなぁ ASCII との互換性を切捨てて UTF-16 にしようとして失敗したり 5年以上前のCPUは Windows 11 ではサポートしません、買い替えてくださいとか言い出したり その頃 linux では33年前の CPU の 80486 の互換性はそろそろ切って良いのではという議論をしてた。
2012年頃? Windows10 が最後の Windows バージョンです(キリっ
MSはJIS X 0213:2012のIVSに Wordが早く対応したりしてそれほど悪い印象はない しかしパス名が未だにCP932系なのは何とかならんのか
>>301 ロケール設定とアプリの問題じゃないの?
近年のMSは、昔からの独自仕様での高い互換性よりも、オープンソース&標準準拠を進めているのは良い
>>302 日本ロケールだとNTFSのパス名がShift JIS
>>304 そういうのはコンソールやアプリ側のエンコーディング設定であってな...
UTF16はMBCSと共存しており切り捨てた訳ではない windows11で64bit版だけになるまで16bitアプリも動かせてたわけで そもそもソースレベルでしか互換性を保てないのがLinux Linuxは当初はEUCだったと思うけど当時の日本語対応ソフトが今のUTF8で動くかい?
>>307 あほ? EUC-JPアプリって何?
20年前にコンパイルされたアプリが一切の改変無く、EUC-JP でも、UTF-8 でも SJIS でも動くんだが?
ロケールの切り替えとか知ってる?
>>308 Linuxで20年前にコンパイルしたバイナリが今のLinuxで動く?
冗談はやめてほしい
百歩譲ってロケール切り替えで動くとして今のUTF8前提のアプリと共存出来ないでしょ
Windowsだったら20年前のMBCSのソフトもそのまま動くよ
当然Unicodeのソフトも動く
Ubuntuが32bitCPUのサポートカーをきったのは5年くらい前だっけ
Windows11より速いですね
あとマイクロソフトがMBCS切り捨ててUTF16一本にしようとしたってのは初耳ですが根拠を出してほしい
>>309 技術がないやつは、これだから。
お前の技術が足りないのをOSのせいにしてるだけだな
全部できるぞ。俺が実際使ってるし
Ubuntu で32ビットアプリも動いてるよ
コンパイルしたなら文字コード関係なくそりゃ動くわな。 スクリプト言語なら知らんが。
スクリプト言語のが文字という概念があるから ロケールみて外部入出力ちゃんと取り持ってくれそう 昔のプログラムはバイトストリームで処理してるから問題ないだけで ロケールなんてgettextで文言変わるくらいにしか利用してない
>>309 冗談は辞めてほしい
君が何も知らないのはよく分かった
タイトルに付いていたらあ、クソだなと思うもの 異世界 チート 転生 のんびり 最強 スローライフ 無双 ギルド 追放 スキル おっさん 勇者 魔王 賢者 魔術師 錬金術 聖女 奴隷 悪役令嬢 婚約破棄
遅くとも<title>までにはエンコードを確定できるワードが欲しいね
>>312 > 昔のプログラムはバイトストリームで処理してるから問題ないだけで
> ロケールなんてgettextで文言変わるくらいにしか利用してない
あっさり言ってくれちゃってますが
Ken Thompson大先生の大発明UTF-8以前は
みんな処理系から実行系まで
USC-2対応に書き換えるつもりだったんですよ?
凄く簡単なアイデアだけど着眼点がシャープ
それから商業UNIXのm17nは徹底的なもので
grepなんかも各言語、各文字コード対応だった
昔のプログラムはバイトストリームで処理してるから問題ない? そんなわけないだろ 正規表現の.とかUTF-8の一文字に対応させんといかんから ほとんどのプログラムに修正が必要だぞ 今も修正できてないコマンドはいくらでもある
相手が変なこといってるなと感じたら じぶんが拾えてない情報がないか確認するよねふつう
>>320 お前、もしかして相手が変なことを言っていると感じているのか?
>>317 みんな突っ込まないでくれているけど
USC-2 → UCS-2
>>323 タイポとか誤変換とかに突っ込んでたらきりがないのでわかってるぽいのはスルーで
無理に訂正する必要もないよ
なーんだ、てっきり南カリフォルニア大学ことかと思っちゃった
このスレに来る人はICUを集中治療室とか国際基督教大学とは思わないから安心しろ
UTF-8がASCII互換っていうのはASCII部分のみが互換っていう意味で ASCIIだけを使ってるなら動くってことだよ ASCII以外の漢字部分までASCII互換になるわけがない そもそもASCIIに漢字なんて無いんだから 漢字は別途対応、もちろん漢字だけじゃなくて絵文字とかも含むからね
>>319 正規表現とか使ってなければ問題無いだろう
ほとんどのプログラムに修正が必要は大げさ
昔のプログラムがバイトストリームで処理してると思っているあたりが素人くさい。 MS-DOSの話してるんだろうか?
>>330 ASCII以外の文字を扱う全てのプログラムに修正が必要
>>331 昔も今もバイトストリームだろ
じゃなきゃバックスラッシュと円記号が同一視されるはずがない
>>333 小学生でもそんなこと言わんぞ
「文字コード」って聞いたことあるか?
多バイト文字の処理が念頭にあるんだろうけども 改行含めてASCIIの範囲でマッチできれば成立するプラグラムの方が大半な気がする catやcpなんて文字コードなにそれだし
うん。だからテキスト処理関係のフィルタコマンドだよ grepとかsedとかawkとかtrとかcutとかsortとか そこいらは全部修正が必要
>>336 お前どこのツール使ってるの?
オレの sort とかのツールはちゃんとロカール対応してるけど?
>>329 それは回線にモデルとかISBNとか使ってた頃の遺物だろww
>>337 だからロケールに対応する修正が入ってるから今は動くようになってるんだろ
UTF-8がASCII互換だからって、何も修正しないで動くわけじゃないって話をしてる
>>340 Unix 系はunicodeとか発明される以前の昔からロカールあったろ? お前のは無かったの?
UTF-8 きても対応文字コードが増えた以上の変化はないぞ
>>336 ほとんどのプログラムって言っていたのが随分と対象が減ったな
>>341 昔にロケールなんて概念ねーよw
あったとしてもASCIIしか考慮してないプログラムは
ロケールに対応してない
どうせ今の話しか知らんくせに
やってみたら動いているみたいだから
昔から対応していたみたいの思ってるんだろうけど
これとか読んだら?
GNU Coreutils - Multibyte/unicode support
https://crashcourse.housegordon.org/coreutils-multibyte-support.html 多くの人の努力によってようやくUTF-8に対応しつつあるというのに ASCIIのままのプログラムでUTF-8でも動くとか あーほみたいじゃなくて、あーほ
>>343 unicode や UTF-8 よりロカール機構の方が古いって本当に知らないの?
調べもしないの? 恥ずかしくない?
>>346 古いって知ってるがそれがなにか?
古かったら、対応しなくても動くんですか(笑)
だいたいASCIIにしか対応してないプログラムって言ってんだから ロケールにも対応してないに決まってるだろ 頭悪そうじゃなくて、頭悪い。
>>345 gnu や linux は商用unixの後追いで互換ツール作ってたんだよ。商用unixは皆対応できてた。
こっちとら linux の黎明期に glibc や gnu tool の locale 実装手伝ってたりしたんだが、お前何やったの?
>>349 話をすり替えんな
お前がやった仕事は大したことじゃないんだろ?w
だってASCIIに対応していれば、そのまんま動くんだからな!
俺が何をやったかだって? お前よりすごいことをしていたよ 守秘義務があるから言えないけどなwww
>>348 336の話してるんだが、どこで言ったの? 脳内? ASCII しか対応してないって何時の時代の話? お前何か参加したの?
> ASCII しか対応してないって何時の時代の話? まさか全アメリカ人がUTF-8に目覚めたとでも思ってるのか?w
今もUnicode・UTF-8に非対応で、 本当は一文字なのに三文字とか間違える実装を知らんのだろうな
UTF-8 が来た時には既に locale があった locale に対応していたれば同じバイナリで UTF-8 も扱えたので、UTF-8 に対応するめの改修とかする必要なかった
個々のツールを改修する必要はなくて、OS側のライブラリを改修することで対応するという基本的な考え方が理解できてないんだろうな。
どうやらASCIIしか考慮してないプログラムは そのOS側のライブラリを使ってないということに 思い至らないようだw それともなにか?printfをロケール対応に 仕様変更するきかね?www
UTF-8 が来た時には既に locale があった だがlocale に対応していないプログラムがたくさんあった
>>358 ISO/IEC 9899:1990/Amendment1:1995(C95)の7.9.6.1と7.9.6.3より
printfの仕様はロケール対応では?
%sの代わりに%lsでワイドキャラクタを扱える
>>358 商業UNIXはlibcレベルから各文字コード対応だったんだよ
なんかCの仕様をわかっていない人がいるような Cのプログラムをロケールを利用した国際化対応するには冒頭でsetlocale()を 呼ぶだけでなくて、文字をcharではなくwchar_tで扱い、fgetsの代わりにfgetwsを 使うなどワイドキャラクタ対応のw系関数で文字を処理するに変更するか、printfや scanf系関数で%sの代わりに%lsで扱う Cのユニコード関連の仕様はISO/IEC 9899:2011(C11)で導入され、6.4の\u,\U, u'',U''と 7.27のuchar.hで定義されたchar16_t, char32_tがユニコード関連 これらはロケールやwchar_tとは別概念なはず
>>364 順番とか歴史を理解してる?
国際化するのに locale という仕組みが提案さてて wchar_t が導入され、OS標準ツールは言語や文字コードを切り替えられるようになった
その後に多言語化のために unicode と UTF-8 が出てきて locale 対応しているプログラムは変更なく多言語化できるようになった
比較的最近になって、もう新しいプログラムは unicode だけ対応していれば 十分で locale 対応いらないんじゃね? という大雑把アメリカンな考えが出てきて char32_t みたいな仕組みが作られた
国ごとに仕組み違うし、言語ごとに文字の定義とか違うんだから unicode あっても locale 無くせないんだよ。というアメリカ以外からの当然の反発もあって
今は、真面目に国際化対応が必要なやつは locale, そんなん気にしなくて良いやつは生UTF-32, Windowsと互換性が最重要なら生UTF-16みたいな棲み分けになってる
utf-8になってもロケールは必要だよね 言語や地域ごとに処理を変えないといけないから 例えば同じ文字を使っていても辞書順が違うことがある 発音記号の取り扱いとか それからwchar_t+Unicodeのみで処理する枠組みはうまくいかなかった ASCII文字だけ扱いたい時 Unicode以前旧世界との互換性 を考えると 結局世界はMBCSと付き合わざるを得ない事に納得し wchar_t+Unicodeは速いindexingが必要な内部表現だけで使うことになった
localeに対応しているlessコマンドはsjisファイルも読めるん?
>>367 昔の商業UNIXにlessはなくてmoreだけど
ja_JP.sjis
に設定すれば
Solarisでは2byte目\問題もなかった
もちろん内部的にはMBCS stringとして扱ってる
euc-jpだってMBCSなのだから
ちなみにSolarisの場合はこの辺の処理は
ハードコーディングではなくテーブルドリブンだった
ただこの辺の努力は全て水泡に帰して GNU Linux全盛期に入ったわけだ つまり文字コード対応はutf-8をベースにして 各言語対応は車輪の再発明をしなければならなかったし まだ当時に追いついてもいない
>>369 再発明とかはやってないぞ
普通に gnu tool も昔から locale 対応してるし、今もそう
ただ、まだマイナーなバグや使い難い仕様が一杯残ってるねってだけ。国際化でなくて、特に多言語化のまわりが熟れてない
ユーザーにも一部の開発者にも国際化と多言語化の違いとか、機構と文字コードの違いが良くわかってないやつがいて
本来は「多言語化に問題がある」というべきところを「UTF-8の処理に問題がある」という言い方をしがち
ここでも知らんやつもいるかもしれないので、一応書いておくと 国際化(i18n): 文字コードとか言語とかを切り替えて使えるようにする機構 多言語化(m17n): 一つのテキストの中に複数の言語の文章を含めることができるようにする機構
unicode という規格には (A) 純粋に文字コードを定義している部分。どの文字にどのコードを割り当て、それをどのように符号化するか。UTF-8 は符号化の名前 (B) unicode を使ってどのように多言語化(m17n)を実現するかの部分。標準的な多言語化を提案する。IVSの対応とかはこっち の2つが含まれてる。 今いろいろやってるのは (B) 側の話。UTF-8対応やってるんじゃなくて「多言語化」対応やってる
>>372 それもちょっと違うね
「(A) 純粋に文字コードを定義している部分」にUTF8は全く関係ない
そこでは各文字にコード割り当て定義されていてコードは一意に定まる
一方でUTF8やUTF16などはそのコードのエンコーディングの話であり文字コード割り当てとは独立した全く別の話になるね
>>374 エンコードはコードじゃないという主張の人なの? 珍しいな
>>375 そこは全く異なるのがユニコードの基本
例えば「あ」はコードポイントU+3042と一意に定められている
これはエンコーディング方式に関係なく一意に定まる
エンコーディング方式が増えたり廃止されたりしても影響を受けない
一方でこのコードポイントを扱う時に環境や状況に応じて様々なエンコーディング方式を取ることができる
例えばコードポイントは16bitに収まりきらないので32bitに入れるのがUTF32
「あ」はコードポイントU+3042なのでUTF32だと0x00003042となる
UTF8は8bit前半をascii互換とし8bit後半の不定長列を非asciiに割り当てる
「あ」はコードポイントU+3042なのでUTF8だと0xE3 0x81 0x82となる
このようにコードポイント割り当てとエンコーディングは全く独立した別の分野
>>376 それはISO-2022のフレームワークとさほど大差ない
特にShift JISも含めて考えた場合は
>>376 世間では一般的に
コードポイント(符号位置)+エンコード=文字コード
という認識なんだけどね。言葉の定義の問題なので、ここで議論しても始まらないか
その感覚はないな \uXXXXや数値文字参照で指定する値という認識じゃね? コードポイントそのもの
>>380 世間一般はSJISもEUC-JPもUTF-8も文字コードという認識なんだよ。厳密な言い方とはいえないが、そういもの
コードポイントだけを文字コードと呼ぶやつはかなり特殊、自覚しとけ
character encoding system = encoding method + character set
文字コードポイントとそのエンコーディングの区別ができてやつがいるな 例えばUTF8の0xE3 0x81 0x82を文字コードポイントとは言わない あくまでも文字コードポイントはU+3042であり0xE3 0x81 0x82はUTFでエンコーディングした時のバイト列にすぎない
>>382 + の後ろを coded character set 「符号化文字集合」とした方がより良いな
>>384 codedじゃ誤解しそうな人が出るので
numberedを付けるかどうか迷った
>>385 規格によって用語の意味が違うので難しいところだねインターネットのRFCとかだと正式用語は
code character set + character encoding scheme
それぞれCCSとCESと略されることもある
一般的な日本訳は「符号化文字集合」と「文字符号化方式」かな
>>386 dが抜けた。coded character set ね
>>383 お前は文字コードとエンコードの区別はついているか?
>>393 誰が作っても良い。他人に使ってもらえるかは知らんが
俺用の文字コードを作れば、漏洩して悪意ある他人が見ても文字化けで意味不明ってことか。
-・ ・・- ・-・・ ・-・・ ・--・ ---
macOS上の話ですが、'が’という名前のフォルダを作ってその名前をシェルで見ると % ls | iconv -f utf-8 -t utf-16le | od -x -A n 304b 3099 000a % echo * | iconv -f utf-8 -t utf-16le | od -x -A n 304c 000a あれ、もしかしてシェル (zsh) がUnicodeの合成をしている?
bashでやると元のままでコマンドを外部コマンドにしても変わらないから globがそういう動作なんやね
正確に言うと MacOS の zsh のグロブだな。
>>403 もしかしてmacOS上以外のzshだと挙動が違ったりします?
が、果たしてそれはいい事なんだろうか。小さな親切大きなお世話という気もしないでもない 皆さんご存知macOS上のFSはファイル名がUnicodeの分解形になっているのだが、 上記により、シェル内でワイルドカードを使うとファイル名が合成形で得られる その後、そのファイル名を加工して別のファイルを作ると、合成形でファイルが作られること になる(macOSのUNIXレイヤーではパス名を分解形にすることは強制ではない) 結果、分解形のファイル名と合成形のファイル名がコンタミするではないか、と
>>407 macOS には HFS+ と APFS というのがあってだな。
awkが新しくなる!? 本家AwkがUnicode (UTF-8)とCSV対応に!
https://qiita.com/ko1nksm/items/1a3e711bbd925657f5fd やっぱりUTF-8に対応するにはアプリ側を修正しなきゃいけないって事ね
>>409 そもそも、そういう用途は nawk じゃなくて gawk とか使ってるので今更 nawk が対応したと主張したところで意味無し
nawk は文字とバイトの区別すらついて無かった古典だし。POSIX?それ美味しいの?状態だったのがようやく今頃になって対応始めた感じ。まだ問題だらけなので文字コード区別必要な場面での使用は非推奨。
互換漢字のことを思い出してもいいですか macOSのFinderで神というフォルダーを作ると神に変換される Chrome上で神を検索すると神と神の両方にマッチする Firefox上で神を検索すると神にはマッチしない Firefox上で分解形の神︀で検索すると合成形の神にはマッチしない Mozcで神︀を入力すると分解形がデフォ みんなちがって、みんないい?
おはよう 今起きたけど、UTF-8にBOMつけるか否か?結論は出た?
UTF-8にBOは存在しない ↓ BOMなんて概念が不要 議論も何も無い
>>413 >macOSのFinderで神というフォルダーを作ると神に変換される
このあたり、Appleには素のNFDとは少し違う独自の正規化を使うこだわりが
あったのだと思っていたけど、今は違うのかな?
>>415 元来の用途で使う可能性が無いからこそ新しいより有用な目的を割り当てて使えるのですね
>>415 お前が世間知らずなだけ
エディタでbomありutf8は普通にサポートされてる
当然これは需要があるから
Firefoxの検索は半角カナの同一視もしてくれないからなあ
How can I get WideCharToMultiByte to convert strings encoded in UTF-16BE?
https://devblogs.microsoft.com/oldnewthing/20231005-00/?p=108854 UTB-16BEからShift_JISに変換したいとかいろんな要望があるものだな
>>415 正確には「UTF-8にバイトオーダーの違いはない」だな。
JSONなどBOMを付与して送信してはいけないと明確に規定されていたり BOMを取り扱わない規定やソフトウェアもあるため UTF8ではBOMを付与しないほうが好ましい
JSOINファイルに付けるなとは言ってないみたいよ
>>424 BOMを認識するようシステムコールを改修すればいいだけ
それをしないのはOS開発者の怠慢
>>413 macOS/iOSのSafariではひらがなとカタカナを同一視するという挙動があるようで
みんなちがって、みんないいw
>>425 execve の引数解釈が locale に従うのであれば BOM を付けるべきではない状況に該当すると思う。
BOMなしがいいってのはAsciiしか対応してないレガシーソフトウェアに通したいから? UTF8を意識できてるならBOMのありなしの両対応は簡単だし
>>428 ファイルの接続とか分割にゴミ処理とかしないですむ。自分がいまから出力するのが先頭かどうか不明とかでも問題は起きない
ファイルの先頭とかには別の識別子置きたいアプリもある。先頭BOMが優先して使えるとか思い上がり。
そして何より、世の中すべて UTF-8 で情報交換すべきで、他の文字コードは内部コード以外は認めない。滅べば良いと本気で信じてるので BOM に使いみちなんかない。
だいたい最近の欧米の主張はこんな感じ。
なぁに。1バイトを32bitにしてしまえばエンディアンがどうのなどとつまらない事を考える必要もなくなる。BOMも不要。
いいかげんチマチマと8bitづつ扱うようなケチな精神がいけない。 8bit CPU の事などもう忘れろ。
>>431 文字結合あるからUTF32でも解決しない
結局可変ならUTF8が合理的という考え方もある
>>434 つまり UTF1024 が必要ということだな
ふーん 結局UTF-8にBOMつけるか否か?まだ結論は出てないんだな? じゃあ、今からまた寝るから結論出たら教えて…おやすみ
結論も何も最初から規格上は「つけないことを推奨」。規格を無視するやつらは勝手につけてるだけ。 これ以上何に結論を出せと?
禁止はしてないな。いくつか使用すべきではない状況はあるがそれ以外必要に応じて使ってよい。 まあいずれEUCと同じように淘汰はされていくと思うが。
拡大解釈を結論としちゃうとそりゃ永遠に終わらんよな
文字コードの自動判定でBOMが欲しいんでしょ だったら日本人的には当面ありの方がいいんじゃないの
まじで文字コード判定でBOM必要とするなんてExcel以外にしらんし 他にならって決め打ちか失敗前提で推測する実装にしとけばこんなことにはならなんだ
>>443 今はネット通信もローカルもUTF8を使うのが普通だからBOMは要らない
HTTPやHTMLならそこで文字コード指定できるし
UTF8を使うのが普通だったりエンコーディングを指定できる所ばかりじゃないんだからBOMがあるのは仕方ない
>>444 まさにExcelのためにBOM付けてる
>>445 早くWindowsのシステムロケールが標準でUTF-8になれば良いな
visual studioもbom必要 設定でutf8指定したら不要だけど 外部のソースまでutf8前提になるので踏み切れない
いわゆるWindows PowerShell(5.x系)も、日本語を含むスクリプトの場合は BOM付きUTF-8 で保存する必要がある 文字コード、改行コード(何らかのデミリタ)に関わる問題は果てしなく続く そして、文字数カウント問題も...
>>447 Mac, iPhone も Linux, android も BOM なし UTF8 オンリーで、十分いけてることを考ええると、
UTF8にBOM必要とかいってるやつも、日本語 Windows の system locale が UTF8 なったら手のひら返すだろうね
必要だから使っているだけで、必要なくなったら使わなくなるだけ。 手のひら返すって発想が出るのはこれをなにか派閥争いや宗教的対立ととらえているんだろうな。
みんなうるさいなぁ…全然寝れないじゃん! 結論は出ない…という結論が出てるんだから もうみんな静かにしといて欲しいわ ホントの結論が出たら起こしてねw
UTF-8にBOMは不要だがBOMを要求する出来の悪いアプリが存在するというだけの話 アプリを修正すればいいだけなのに出来の悪い子のためにBOM付きファイルを広めようとするから迷惑がられる
こう、「出来の悪い」とか要らん煽りをちょいちょい挟んでくるのがな
環境のCPのエンコーディングとUTF-8を両対応したくてBOMを導入した設計は偏狭 専用の閉じたデータなら勝手にどうぞだけどCSVファイルだよ 出来が悪いにもほどがある
一応Unicode規格に定められた仕様なわけだがそれを正しく実装しても出来が悪い呼ばわりするわけだな
CSVファイルの一般的書式 (RFC4180 日本語訳)
http://www.kasai.fm/wiki/rfc4180jp CSVファイルにBOM付けるな、なんてどこに書いてあるんだよ
>>457 ABNF表記
そのRFCはメジャーではないし従う必要もないけどね
VC++はコンパイルオプションでBOM無し通るようになったから許す
あ、そうか。UTF-8なのにBOM入りにする理由はコードの自動判別のためか。
>>460 Windows は文字コードの指定がないとシステムロカールに設定されている文字コード(日本語WiIndows11だとCP932=SJIS)という約束になっていて、これを変更せずに UTF−8 を使いたいがための苦肉の策だった(過去形)。
最近はマイクロソフトはこの約束を破棄して標準を UTF−8 にするよう要請してるし、将来システムロケールのデフォルトを UTF−8 に変更することは確実なので、単なる経過措置。
メモ帳のデフォルトの文字コードは、BOM付きUTF-8
>>462 もう今は BOM なしがデフォ
BOM 付にする場合は格納する時に明示的に選ぶ
「UTF8はBOMを付けない」 これでWindows以外は統一されている WindowsでもBOMなしが標準になりつつある 大勢は決した
ExcelがBOM無しCSV/TSVを文字化けせずに読み込んでくれたら解決しそうw 自慢?のcopilot使ってもいいからさっさと解決しろやーw
>>466 今でもシステムロカールを UTF8 に切り替ええると BOM なしで読める。システムのデフォルトを SJIS に設定しているから BOM なしを SJIS とみなしてるだけ。
>>467 今のExcelの挙動の方がOSの設定を反映してて行儀良いとも言える
WindowsがUTF-8で統一されるには、まずはWindowsのシステムロケールの規定値がUTF-8にならないことにはな
>>468 その通りなんだが、マイクロソフト自身がそこを翻して、今後は外部文字コードはシステム設定にかかわらず UTF8 にするようにプログラマー向けのガイドで推奨している。
時代は変わったというやつだな。
General Unicode requirement in INF files
https://learn.microsoft.com/en-us/windows-hardware/drivers/display/general-unicode-requirement INF files should be saved and encoded as Unicode (UTF-16 LE); they must not be ANSI or UTF-8.
話してるのは交換用のデータ そういうレガシーな閉じたデータは困んないし関係ないよ
Microsoft は 、UTF-8 BOM 無しを推奨する理由として「Web アプリや Unix 系の OS が UTF8 BOM 無しなので、文字コード関連のバグを最低限にするためには UTF8 は BOM なしである必要がある」と主張している。 この主張を元に PowerShell とかの基幹アプリもデフォルトを BOM 無しに移行した。 今はもう UTF-8 BOM つきを推奨するメジャー組織は存在しない。
Windows/MS がさっさと間違いを認めれば良いだけ
>>473 マイクロソフトは昔はプログラマ向けにBOMつけることを推奨してたんだよ。ツールとかも勝手にBOMを追加していた。
そもそもユニコード規格で UTF8 のBOMが文字コード判別用として規定されたのもマイクロソフトの主張によるもの。
他の企業とかは反対だったけどMSが強く主張するので、妥協として非推奨という形で規格に取り入れられた。
RFC3629の日本語訳
UTF-8, ISO 10646 を変換したフォーマット
https://www.akanko.net/marimo/data/rfc/rfc3629-jp.txt プロトコルはが常にUTF-8であるなら、そのような場合シグネチャ機能は完全に無駄であるので、そのプロトコルが命令するそれらの原文のプロトコル要素のためのシグネチャとしてU+FEFFの使用を禁止【すべき】(SHOULD)である。
プロトコルは、それらの原文のプロトコル要素、プロトコルの実装が常に適切にメカニズムを使う立場にあることが予測されるとき、そのプロトコルが文字符号識別メカニズムを供給するためのシグネチャとしてのU+FEFFの使用を同じく【禁じるべき】(SHOULD)である。これは、プロトコル要素がそれらの作成時からそれらの適切に分類される伝送の時間まで実装の制御下にきつく維持されるケースであろう。
禁止が不可能、あるいはプロトコルの実装がメカニズムを常に適切に使う立場にないことが予測される時には、プロトコルは、文字符号化識別メカニズムを提供しないそれら原文のプロトコル要素のためのシグネチャとしてU+FEFFの使用を禁じる【べきではない】(SHOULD NOT)。後者2ケースでは、特にプロトコルの実装が、そのような要素を、ファイルシステム、ペイロード(FTPなど)のための符号化識別メカニズムを持たないプロトコル、または文字符号化の適切な識別を保証しない他のプロトコルから得る時のMIME要素(HTTPなど)など、より大きいプロトコル要素で起こりそうだ。
>>472 UTF8のBOM付きは古いローカル環境のファイルを除いて世の中から消滅だね
いずれ消滅はするだろうね。今すぐにではないだろうけど。
以下のウェブページ、ちゃんと表示されます? 自分の環境ではところどころ文字化けが
新JIS漢字で包摂の扱いが変わる文字
https://www.aozora.gr.jp/newJIS-Kanji/gokan_henkou_list.html Shift_JIS-2004にするとemacsでは見れるっぽいな
>>479 ページのデコード(文字コード)の問題っぽいので、現代のブラウザでそれらの文字を正しく表示するのは不可能な気がする
少なくともChromiumにはページの文字コードを指定して読み込む機能はない(かなり前に失われた)
>>481 なるほど
試しにソースをUTF-8に変換してみたら問題ないっぽいので、そこに書かれているような
UCSのコードポイントがないだとか拡張されたフォントが必要だとかそういうのも
昔話くさいですね。関係者の皆様(?)ご苦労様でした
ちなみに当の青空文庫、チラ見すると今でも基本はJIS X 0208/ShiftJISのようで なかなかストイックですな。結局「包摂の扱いが変わ」らなかったのかな
中々に興味深い内容だった
我々の著書はなぜ誤植まみれに?出版業界と標準規格は相容れない世界。【文字ヶョデ2】#95 - YouTube
VIDEO >使わざる終えない こういう誤字ってる香具師をよく観かけた
>>486 流し見したけど、若いなあ。若い視聴者向けにあえて歴史的な部分を嘘で誤魔化したのかもしれないけど。
印刷業界の正字文化も、おおもとはフォントの都合。コンピュターのフォントじゃなくてフォント(物理)。
金属活字は高価なのでマイナーな漢字は種類揃えることができなきて正字しか存在しなかった。それで作家がどんな漢字を手書きで書いてこようが、植字職人が問答無用で正字に直していた。
作家に文句いわれても、これが正しい漢字だとうちは正しい漢字で出版すると言い訳してきたのが伝授されていくうちに文化として定着した。
>>484 元の文書はShift_JISx0213なんですよね。チラ見した感じではリストになさそうなので
単にメニューを追加しただけでは無理そう
さらに今は名前がShift_JIS-2004に変わっているという
ただ、Shift_JIS-2004にしてもIANAには登録されてないようですが
このウェブ文書が書かれたときにはどうやって見ていたのだろう
ブラウザにエンコーディングメニューがあった時代にもShift_JISx0213はなかったような
>>488 昭和期の小説なんて送り仮名すら適当だからなあ
昔はいい加減だったものが編集その他の介入が厳格になってかっちりしたのもありそう
>>491 送り仮名や当て字は昔は作家の作風の一部だったので出版社が勝手にいじるのは厳禁だった。あくまで正字に直すだけ、あとは校正校閲で指摘して作家本人に直すか確認。
最近は出版社どうのこうのの前にかな漢字変換先生が“正しい”送り仮名をつけるし、わざわざ選ばない限り当て字にもならないので差がほぼ消滅した
ワードパッドはプアマンズワードみたいなもんだったから、あらゆる意味で中途半端だった エディタとして基本的なものだけでよかったメモ帳とはわけが違うな
>>493 合成絵文字とか国旗とかは何文字扱いなんだろう?
>>470 NVIDIA Windows 10 (64 bit) Display INF file
普通にUTF-8で草生えた
そういえば、Windowsのレジストリスクリプト、 v.4はANSI v.5はUTF-16LE だったな
「世界の全部の文字は16ビットに収まる。16ビット固定長なら全世界の人が幸せになる。」 マイクロソフトの発想は面白かったんだが前提が間違っていたのでどうにもならないな。 韓国がワガママ言ってハングルだけでBMPの1/5の1万2千字持って行くとか、中国や台湾が漢字を5万字追加してBMPに入らなくなるとか想定できないのが悪い。 絵文字は同情の余地がある。Google がandroid携帯で携帯市場に参入するとかは当時は予想し難いだろう。
想定が甘かったのでなく、もともとISOで32bitで文字を表す規格化が進んでいたけど16bitに収めたい企業のゴリ押しで16bitになったんだよ
>>501 その前の話だよ。ISOとかとの調整以前の動き
ISOの多言語化とは別に、マイクロソフトがIBMと多言語文字コードの研究開発してたの知らずに文句言ってるだけか。
おれは歴史を知ってるふう装っても その上に歴史に基づかない妄想を書いたことは取り消せないよな
https://ja.wikipedia.org/?curid=1999 1984年、ISOの文字コード規格委員会 (ISO/TC 97/SC2) は文字セットの切り替えを行わずに世界中の文字を単一の文字集合として扱える文字コード規格 (ISO 10646) を作成することを決定し、専門の作業グループ (ISO/TC 97/SC 2/WG 2) を設置し、作業を始めていた。1980年代後半にはこの作業グループにおいてさまざまな提案が検討されている。1990年になって出来あがったISO/TC 97/SC 2/WG 2作成のISO 10646の初版ドラフト(DIS 10646#DIS 10646第1版)では、漢字コードは32ビットで表現され、各国の漢字コードはそのまま入れることになった。しかし中国は漢字を各国でばらばらに符号化するのではなく、あくまで統一して扱うことを求めてこのドラフトには当初から反対しており、今後の漢字コードの方針を決めるため、WG 2は CJK-JRG (Joint Research Group) と呼ばれるグループを別途設置し、そこで引き続き検討することにした。
このような公的機関の動きとは別に、1987年頃からXeroxのJoe BeckerとLee Collinsは、後にUnicodeと呼ばれるようになる、世界中の文字を統一して扱える文字コードを開発していた。1989年9月には「Unicode Draft 1」が発表された。ここではその基本方針として、2オクテット(16ビット)固定長で全ての文字を扱えることを目指しており、そのために日本・中国・韓国の漢字を統一することで2万弱の漢字コードを入れ、さらに将来の拡張用に、3万程度の漢字の空き領域が別に用意されていた。
>>506 >しかし中国は漢字を各国でばらばらに符号化するのではなく、あくまで統一して扱うことを求めてこのドラフトには当初から反対
デフォルトで中華フォントを表示させるのに成功した
適当なサンプル
https://qiita.com/kominato_slj/items/bbe0ae1445d8394d95bf デフォでCJKフォントになるのまじで敗北 いちいち手をいれるの面倒なのはわかるけど チラシやオフィス文書で頻繁にみかけるし気分悪い
奴ら平仮名も持ってるから日本語のフォントに来ないってことかな 最初の優先順位はどうやって決まるんだっけ。文字数?
Flutter民「おもちゃアプリで細かい事を言われても困ります」(真顔)
台湾行ったら看板とかでたまにひらがな使ってた。日本でちょっと英語を使うようなノリなのか? ということは台湾のフォントにひらがなが入っていることもあるか 日本語のフォントだって英語が入ってるものなあ
>>513 何故ひらがなに着目するのかな?
ひらがなが台湾に根付いて独自の使用形態に進化していたとしたら別コードを割り当てたら良いと思う
漢字のオフショア版とはレベルが違うのでは
CJK一緒くたにされてるからUnicode用のフォントなら一般的にひらがな入ってる いまとなっては日本だけフォントグリフがローカルで特殊 これであってる?
日本語のテキストに日本語のフォントが使われるには 1) テキストが日本語だと判定されて 2) 日本語にはこのフォントを使うという情報 が必要。だけどこの場合そうなってない で、例えばテキスト中の文字をサポートできるフォントを選ぶ、だけのロジックだと テキストは日本語でも中国や台湾のフォントにも行っちゃう というわけで Flutterのフォントシステムというのは1)と2)はどうなってるんかなと あるいはそれはFlutterが走ってるOSの役割なのかな、とかちょっと気になったのですが
HTMLならlang属性を指定している範囲がその言語 HTMLの英語使用部分にはlang=en 日本語使用部分にはlang=jaを指定する 入れ子も可能で<html lang=ja>と全体を日本語に指定しつつ 一部のパラグラフを<p lang=zh-CN>と中国語簡体字にすることも可能 全くlangが無指定ならunknownとなりそのHTMLを取り扱っている環境に委ねられる HTMLを生成する側はその部分が例えば日本語かどうか認識できるためlang=jaを指定するべきである
Unicode 以前の古い時代の、中国、台湾、韓国の国家規格の文字コードにも平仮名、片仮名は入っていて向こうの MS-DOS とかでも使えてた。 JIS の文字コードにキリル文字(ロシアの文字)とか入ってるのと同じようなもんだ。
当然、大昔の中国フォントや韓国フォントにも平仮名や片仮名がはいっている
>>515 Flutter民「日本だけフォントグリフがローカルで特殊」(迫真)
例えばロシアの人もキリル文字に日本語フォントが使われてしまいコレジャナイ感を 感じることがあったりするんだろうか (日本語フォントに入っているのは全角文字とのバランスを意識したデザインだったりする)
>>521 変って言われたことはあるよ。
А細い文字も全角なので
Flutterは言語が他で馴染みの薄いDartだから横一線での再スタート感があった。 一部を除いて、そんな動機で参加する再初心者が増えただけだから、 結局は一般知識の差や意識の低さがそこかしこで露になる。
https://qiita.com/ko1nksm/items/4907c1c88d478cac0be5 POSIX では Unicode を含むマルチバイトのロケールの文字に対応することになっていますが、現実的には対応していないコマンドがあります。商用 Unix はおそらく対応しているはずですが、Linux(GNU コマンド)や BSD 系 Unix では対応していない場合があります。Linux や BSD 系 Unix は POSIX に準拠していると主張してないので、完全対応していなくてもそういうものとして扱うしかありません。
さらに Unicode は数年おきにバージョンアップされます。最初のバージョンは 1991 年の 1.0 で収録されている文字は 7,129 文字です。現在の最新バージョンは 2023 年の 15.1 で収録されている文字は 149,813 文字です。収録されている文字の違いはソート順などに影響します。
それぞれの環境で Unicode への対応は異なり、ロケールに従えば環境ごとで結果が異なる可能性があり、ロケールに従わなければ(C ロケールでバイナリとして扱う)、一文字を一文字として扱うことができません。これを解決すると思われる C.UTF-8 ロケールは環境によって対応していない場合がありますし、話を最初に戻すと環境によってマルチバイトのロケールに対応していないコマンドがあります。
UNIX コマンドはマルチバイトという概念がなかった頃から互換性を保ちながら存在し続けており、その結果 Unicode への対応は中途半端で一貫性がない状態です。
ほとんどのコマンドがUTF-8をバイトストリーム扱いして実害ないのもある 文字列捕捉するときもASCIIで区切れれば十分だし
最初の節だけでも書いてる人間の質の低さが読み取れるけど、閉じようとして横のスクロールバーを見たらさらに驚いた
>>524 もこんなもん張ってないでもうちょいマシな事せーよ
ガムランとかフォルクローレを聴いてる女子小学生とか渋すぎやろ まあ俺も小学生の頃に、渡辺貞夫、日野皓正、高中正義、阿川泰子 カシオペア、喜多郎、ヒロシマ、坂本龍一、姫神、ラリー・カールトン なんか聴いてたが
漢数字の〇に親を殺されました。憎くて仕方がないのでunicodeから消してください
○を打とうとして〇を打ち込む国民が大半になってしまった。 中国人が日本語のIMEを作っているからこうなる。 日本の日本人にやらせろよ、マイクロソフトのクソは。
IMEは中国開発ってホント? 修正プログラムで賢くなった? Office IME 2007 6の疑問
https://ascii.jp/elem/000/000/195/195021/ Q2
日本語IMEの開発は中国で行なわれているって本当?
A2
日本語IMEの開発は、日本で行なわれている。同社インプット メソッド テクノロジー シニアマネージャの佐藤良治氏によると、IME 2007以前のプロトタイプ開発の際には、日本だけでなく米国レドモントと中国北京にあるMicrosoft Researchとの共同作業が行なわれたという。それが誤解して伝わっているようだ。
日本でのIME開発は専任チームを置いて、ほかのアプリケーション開発と同じように独自に行なっているという。IME開発は日本のほかに、韓国、中国、台湾にチームがあって、各言語に依存しない要素(OSとのインターフェースなど)の開発は、これら4チームによる共同作業で行なわれている。専任チームの規模は日本が最も大きいとのことだ。
メールでもヘッダーと本文でSMTPUTF8を使い、添付ファイルもBINARYMIMEを使って 8bitのデータをBase64などでエンコードせずにそのまま送れるのが当たり前になったらいいと思うが この方式で送るメーラーはあるんだろうか? メールの容量を小さくできる利点があるのに 互換性のために8bitデータは従来通りMIMEとBase64でエンコードしているメーラーが多いんじゃないだろうか
Eメールアドレスのアカウント部分に「smtp」という文字列を使ったEメールが最近、届いたわ。
>>531 Windows 10よりも前は、固有名詞は頑なに変換候補に出さなかったぞ。
>>534 どうやったらそんなウソがつけるんだよいくらか脳ミソ欠損してんのか?w
>>536 珍しい名字はずっと排除していたのがMS-IME
Google日本語入力が登場してから焦って対応したが、体制が貧弱だったせいでもはや追いつけない。
IMEの話はIMEスレでどうぞ
【Microsoft IME】MS-IME Part15【Office IME】
http://2chb.net/r/win/1502601208/ 文を書くとき濁点や半濁点は結合済み文字にするか通常の文字と濁点・半濁点を結合して使うかということと ()?などの記号類をASCII文字にするか全角文字にするか悩む
結合済み文字で良いのでは? 普通は一々、結合しないよね
たまにWindows上の古いアプリに用事があるのだけど、ファイル名に絵文字が入って たりすると駄目なのがある。エクスプローラーでは特に問題ないようでも Windowsは全然わからんのだけど、どこかの時点でファイル名のエンコーディングとか 文字セットとか変わったりしたんですか?
単にUNICODE非対応なだけでは? 新しくても英語圏のソフトだとだめなのもありそう
↵の改行マークは下に行ってから左に行くから LFCRを表しているように見えるが改行コードがLFCRの機種は無いんだよね CRLFなら左に行ってから下に行く┏のようなマークにするのが正しいのではないだろうか
リターン(enter)キーに印字されてる記号との兼ね合いもあるだろうし
プリンタ端末が遅いから、本当はLFCRだけど、CRを先に送出したんじゃなかったけ?
もともとは、タイプライターの動作から来てるからな。
文字をタイプして行末まできたら、送りレバーを右に動かすんだけど、
まず、レバーを押した瞬間に紙を送るドラムが回転して行送り(Line Feed)、
そのままレバーを送ればドラムの載ったキャリッジが右側に移動する(Carriage Return)。
(LFなしのCRのみの動作も可能なモードもある)
この2つを合わせたLFCRが本来の形で、
↵が改行マークなのはこれが影響していると思われる。
改行コードでCRLF(\r\n)になった経緯は、
>>545 ということみたいだね。
正規表現だと/nがLFだけではなく改行全般(CR/CRLF/LFの全て)を指している場合があるよね
>>541 WindowsはSJISとUTF-16の世界だからな。
いやWindowsはsjis残ってるけどmultibyteはもうutf8が主流と言っていいでしょ
>>549 WindowsはデフォルトがUTF-16だから、BOMがないとUTF-8をUTF-16として扱うことが多い。
BOMってことは交換用データの話だとおもうけど だいぶ前からUTF-8推奨じゃね? 内部データとは別の話
最初APIの話で当然内部コードの話だったんだけど違う話はじめたからな
絵文字同士を結合した文字はOSによっては結合して表示されないから新たな機種依存文字になってるよね
文字幅が実行時にやってみないと確定しないのはマジで困るし非効率すぎるよな
市民への郵送物、JISコード外の氏名が文字化け さいたま市が謝罪
https://www.itmedia.co.jp/news/articles/2402/19/news091.html 発送した12万通のうち4438通で、JIS規格の文字コードに含まれない外字を含む氏名について、正しい漢字が適用されなかったという。
対象の郵送物は「さいたま市物価高騰対応重点支援給付金のお知らせ」。
給付金に関する事務を受託している事業者が、外字を適正に印字する設定を誤ったため文字化けが起きたという。
書き間違いで大量に発生したニセ漢字は今後使用禁止とするのがいいのかな 外字も必要なくなり皆がハッピー
文字化けと言っても記号列の様な感じじゃなく中華フォントになったのだろう 普段から一部の粗悪アプリで中華フォントを見させれれてる弊害だな
外字とあるから 書き間違いで戸籍などに登録された、 書き間違いニセ漢字のことだと思うよ
Unicodeも振られていない「外字」が4%弱の人名に使われてるとは思わないけどね どうなの?
> 2月9日(金曜日)に委託事業者から納品された通知を、郵便局に差し出すために仕分けをしている際に、 > 市職員が外字が正しく適用できていない通知を発見したことで覚知しました。 記号列(◇の中に?等)タイプだと委託業者や印刷所が気が付く可能性が高いから ワタナベやサイトウ等のIVSを反映してなかった、と言う可能性はあるかも チェックした職員はGJだな、普段から外字を気に掛けてるのだろう
右から左に字を書く文化圏でもBackSpaceやEnterキーの矢印は右から左なんだよね
>>563 え? 某OS上の某キーボードの中の人だったが、逆向きにしたぞ
UIは基本的に左右が逆
あと、括弧や不等号を入力すると逆向きになったりする
おかげで一時期頭がアラビア語脳だった
しかし、日本も戦争に負けなければ「右から左に文字を書く文化圏」なんて
他人事じゃなかったはず
アメ公のせいじゃけんのう。くやしいのう
あれ、でも実はそうかな? 念の為、競合の某大手のもチェック.... OK,、仲間発見。 焦るじゃないか。いい加減なこと言うんじゃない
ああ、OSによってはリターンキーのデザインとかキーボードの言語でなく UIの言語で決めていたのもあったような気がするな くそっ、俺にとって今はどうでもいい事なのに気になるじゃないかw
>>565 >あと、括弧や不等号を入力すると逆向きになったりする
>おかげで一時期頭がアラビア語脳だった
頭がパニックになりそう
頭脳パズルで使える
文字は右から左だけど、数字は左から右だったような 日本語で表現すると「すーまりいはータッリ30ンリソガ」みたいな感じ
数字をリトルエンディアンで表記していると考えると自然。
日本語は中国語と同様に元々縦書きで右から左に行が移る言語なので、横書きした場合は右から左に書いていた。1行の長さが1文字になったみたいな感覚だ。だから戦前戦中は横書きというと右から左に書いてあるのが多い。 これが左から右の英語と同じようにした理由は戦後英語から翻訳した文を下に書く時に見易いから。
左から右の横書きは戦後ではなくそれよりもずっと前からだよ あくまで右から左がなくなったのが戦後というだけの話
>>569 「ガソリン30リッター」の部分が英語だとしたら、そこは左->右なので
「すーまりいはガソリン30リッター」としなければならない
>>575 もちろんそうですが何か? というか右->左の言語一般かな。ヘブライとかも
難しいのは言語の境界で、例えば「ガソリン30はいりまーす」だとして、
「ガソリン」が英語、「30はいりまーす」が日本語(右->左)だと思えば
「すーまりいは30ガソリン」となるが、「ガソリン30」で区切れると判断してしまうと
「すーまりいはガソリン30」と、違う結果になってしまう
あるあるだよね〜
MS-IMEのせいで丸印が、漢数字の零(ゼロ)に置き換わってしまった。 日本マイクロソフトは常に中国人に日本語を担当させているから、取り返しのつかない事態になってしまった。
漢数字はフォントによっては真円じゃないからな。 潰れた丸印だと何これと思う未来がみえる。
区切り文字としてHorizontal Tabは使われているが Vertical TabはTSV形式でも使われていないよね 他にも0x1C-0x1FのFS GS RS USも区切り文字として想定されているのに使われていない
UTF-8で記号がたくさん登録されてしまったのも問題だよな ハイフンのような横棒は種類がたくさんあって、文字フォントの見た目では区別できなようなものもある。
それよりもはるかに深刻なのはスペースに見える文字がたくさんあって スペースを取り除くプログラムを書くのが不可能に近い
>>587 正規表現はASCII文字くらしか想定していないが、UTF-8のASCII文字限定であれば問題ない。
まだこんなレベルが複数いるとはな 585はなんだとおもってるんだろうか
FS GS RS USを区切り文字にしている形式はあるんだろうか
文字列の16進コードでも正規表現できればわかりやすくなる 何語でもよくなる
Unicodeのコードポイントが7FFFFFFFではなく10FFFFまでになったのはUTF-16で表せるのが10FFFFまでだから?
>>595 >>7 FFFFFFFではなく
その前提はどこから来たのやら...
>>596 UTF-8 で表現可能な上限が 0x7fffffff だな。
UCS-4 すなわち UTF-32 だと 0xffffffff
UCS-2 だと 0xffff
UTF-16 の上限に合わせているというの合ってる。
仮にUTF-8のビットパターンで1バイト目に11111111を使っていいとしたら その後は10******が8バイト続くことになり48bitまで表現できることになるね
>>593 マルチバイト文字に [] が使えなくて | で書かなきゃならんから少し面倒にはなるな。
>>599 未定義なので定義次第。6バイトの次が7バイトや8バイトは限らないので10バイトとか定義すればそのまま64ビットをカバーすることできるし、拡張の余地は残してある。
>>595 当初UCS-4は最上位ビットをエスケープなどの用途に使い
それを除いた7FFFFFFFまで使用可能にする計画だったはず
しかしUnicodeの上限が10FFFFと決まったためにUCS-4もそれに合わせて10FFFFになったのでは
C: \のようにディレクトリの区切りが円マークなのは文字化けの結果なんだよね C:\のようにバックスラッシュが本来の文字なのに 円マークの方が見慣れていてバックスラッシュだと違和感を感じてしまう なぜディレクトリ区切りにスラッシュではなくバックスラッシュを採用したんだろうか
603の1行目でC:の後に0xA5を入れたらバックスラッシュになってしまった・・・
別に文字化けでもないでしょ バクスラなのはオプションがスラッシュだから
Win32のファイル関連APIはスラッシュでOK NT APIを直接使う時にはスラッシュはNG GUIコントロール、ダイアログなどで独自処理してる箇所はスラッシュの考慮漏れ多数
Windows のRuby では、/ も使う。 C:/Users/Owner/Documents/a.txt WSL2, Linux なら、/mnt/c/ とか /mnt/c/Users/Owner/Documents/a.txt
C:\Users\Owner/Documents/a.txt なんてのが OK な処理系もあるな
処理系というかDOS/WindowsならOSがそうなってる
>>603 UNIXの真似したかったんだけど同じにしたくなかったんじゃね?
ゼロは、〇とか0とか0もいいけど、ぼくはΘが僕はスキです。
ディレクトリ区切り は、> が、ボクは、好き❦❤♥
もともとDOSはCP/Mの互換OSでディレクトリは無かった。で新バージョンで UNIX 等を真似てディレクトリを導入しようとしたんだけど、その時点で / はオプションの導入記号として使用済みだったので仕方なく \ を使った。単なる歴史的経緯。
DOSはSWITCHARをコマンドでオプションの記号を/から-に変えられたようだが Windowsにも同じ機能はあるんだろうか?
>>614 config.sys に書くやつなので同じのはないな。
一方で windows の内部API は \ だけじゃなくて / もディレクトリ区切りとして受け付けるというか、むしろ内部的には / に統一なのでDOS互換の目的以外でオプションに / を使う意味はない。
2018年の記事でこのネタを扱って「この事実が開発者の間に広く知られるようになったのはここ数年ぐらいのこと」と書いちゃうの 筆者さんのお年頃を感じるわ
Windowsは長いパスを想定していないなど、いまさらどうにもならない部分はたくさんあるからなあ。
Windowsそのものは互換性の維持から変えられない
Windowsだと日本語のパスを普通に扱うから、UTF-8のストレージからコピーしたものなどは、キャラクタセットの問題で同じファイルと認識されないことがある。
robocopyコマンドなどは日本語の濁点文字を変換できないので、Macなどから持ってきたファイル、フォルダなどをWindowsは正確に置き換えられず、新しい別のファイルだと判断してしまう。
Unicodeの正規化の問題はマカーでもMacが変だとおもってるから zipとかを客に要求されたときは気を使ってる 俺はスクリプトでアーカイバ書いた
UTF-8は同じ記号を二重に定義したりと迷惑極まりない
日本語のフォルダ名、日本語のファイル名、半角スペースが入っているパスなどは、やはりキャラクタセットの問題、区切り文字と誤認識したりと日本語を使う弊害があるから、MacユーザーはWindowsでも問題ない名前にしてくれないと無用なトラブルを起こす。
>>628 そんなこと言うとマックユーザーは濁点や半濁点が禁止になるぞ?!
>>629 UNIXで日本語を普通に使っている時点で問題があるのにな
Macユーザーは知識のない人間が多いのは事実だし、シェアが低いのにMacの方が売れているかのような嘘を話す。
句読点話とか昔から議論があって、国とマスコミが合わせている話を最近の話だと思っているのは、ネットの捏造話題に振り回されすぎだw
改行コードは、LF CR LF+CR どれが間違えなのか統一しろっつうの
>>634 迷ったときはとにかくBOMなしUTF-8でLFにしろ
WindowsはBOM付きじゃないとUTF-16だとみなすことが多い。
>>638 そりゃあWindowsはそう判定するかもしれんけどな
普通はWindows上で動作するアプリの方にファイルを食わすんよ
そんでそのデファクトがBOMなしLF UTF-8って寸法さね
Windows なら BOM 無し CRLF UTF8 ではないかと思う どっちみちアプリ専用なら決め打ちだろうしな 自動判別が必要なものなんてテキストエディタくらいだろう
結局ネット互換性で文字コードは統一の方向に向かっている感じ。昔はOSごとにバラバラでも問題は大きくなかったんだが最近はそうも行かなくなって、ネット交換性のないアプリとかは時代遅れになっているし、開発もOS独立が主流。 今の所ネットでは、サーバーは Linux が圧倒的なシェアを持ってて、クライアントはスマフォ、特に android がシェア1位なのでやっぱり linux なのでその文字コードに全体が引き寄せられてる。
横サイズ×縦サイズのように大きさを書くときには U+D7の乗算記号を使うべきなんだろうがアルファベットのxで書かれていることが多いよね 乗算記号はキーボードから直接入力できないからこうなってしまったのか キーボードから直接入力できる*も乗算記号の代わりとして使えるはずだがこの表記もあまり見かけない
>>643 Latin-1補助の文字集合というのがいまいちねえ
そういえば円記号だって0xA5だけを使うという世界線がもしあったなら
かける での変換、Shift キーとの同時押 下が面倒で x で代用するのかもしれんな
>>646 もともとユニコードとか日本語とか実装される前の時代というか、コンピュターができる前のタイプライターの時代に乗算記号を x で代用する文化ができた。それが今に引き継がれてるだけ。
そもそも乗算記号は世界共通じゃないのよ ×じゃなくて・使う地域がある 除算記号も:使う地域がある
桁区切りや小数点が違うのは、国際化ライブラリで変換してくれるのがあるよね 数学の演算記号もカバーしてたりするんだろうか
コンピュータ言語だと*と/で代用してるからね 世界共通じゃないのと普通の文章であまり出てこないのでASCIIコードに入らなかったんだと思う 数学だと乗算記号は省略されるし除算も分数表記になるし
>>650 そんなこと言ってると APL 投げつけられるぞ?
セル内文字 ⇒ Unicodeは excel関数として存在する。 かつ UnicodeをUTF-8に変換 のロジックもネット上にあり 然るに、 EXCELセル内文字⇒UTF-8に変換 は、excel関数になくても、 vbaで自作可能❢ なハズです。 なので、EXCELセル内文字⇒UTF-8に変換 するVBAを開発するぞーーー。てか開発させよっーーーと by 🤡の呟き
っていうかさ、UTF8 TO UNICODEを開発するぞ UTF8の16進数のやつをUNICODEの16進数に変換 するやつを開発トスル。すると、UNICHAR関数 (EXCEL関数)で、漢字が表示されるハズ スゲーー完璧なプラン(計画) ✌ 以下はその為の備忘録ぢゃ ───────────────── unicode「304A」をUTF-8に変換 1 「304A」を2進数に変えます。 2 それが0800〜FFFF⇒ 先頭から4, 6, 6ビットに分ける 3 それらの先頭に、E0,80,80を足す。 即ち 例「お」Unicode ⇒ UTF-8 は 304A ⇒ 0011 0000 0100 1010 ∴ 304A ⇒ 0011 000001 001010 ∴ 304A ⇒ 03 01 0A ∵16進数 これにE0,80,80を足す 304A ⇒ E3 81 8A ∵16進数 即ち例「お」UTF-8 ⇒ Unicode E3 81 8A ⇒ 03 01 0A ∵E0,80,80を引く 03 01 0A ⇒ 304A ∵🤔 🤔のロジックを検討中
bit shift とか知ってる? bit and とか bit or とかは?
bit shift等なんとなくわかる で、何となく、どうにかなりそう。 x = x*2 '''xが128未満で左シフト x = x\2 '''右シフト x = x+192 '''xが64未満ならbit orかな bit and はちょっと難しい by 🤡
例 UTF-8でE3 81 8Aを、文字表示 E3 81 8A ⇒ 03 01 0A ∵E0,80,80を引く 03 01 0A ⇒ 30 4A ∵🤔思考中 30 4A ⇒ 「お」∵Unichar関数を借用 🤔のロジックを関数UtfStrとする。 プロシジャー名はUtfStrとする。 Sub 図形_Click() '「お」と表示されるハズ、多分 Msgbox UtfStr(&hE3h,&h81,&h8A) End Sub Function UtfStr(a1,a2,a3) as string b1 = a1 - 224 '''&hE0 を引く b2 = a2 - 128 '''&h80 を引く b3 = a3 - 128 '''&h80 を引く c=256*(16*b1+b2\4)+64*(b2 mod 4)+b3 UtfStr=WorksheetFunction.Unichar(c) End Function by 🤡机上済でも未テスト∴bugあるかも
👤 cの計算式内の16*b1は左2BITシフト? 🤡 yes b1 = a1 - 224 後の処理だから、 数式16*b1は、16*(a1 - 224)と同値だし 数式16*b1は、意訳で、左2BITシフトだ 🥳a1が224未満(モチ、a1がE0未満)で バグる気がするぅーーー 早くテストしてバグって混乱するとヨイ 🤡UTF8で 00 00 00 〜 DF FF FF でバグるか? んーーーー
出演者
🥳バカテスター 🤡プロマネ(元プログラマ) 👤宇宙人のランベルト星人
🥳プロマネが作った
>>656 のVBAをRunしたらエラーでRunしない。バグ発見∴嬉しいデス
ちゃーーーーんとテストしてる証だぁ
🤡 &hE3h は、&hE3 だった。てかそんなの報告せず
修正してテストしろーーーちゅーーーの
🥳 で、修正してテストしたら上手くいっちゃった
ちゃんと、「お」とメッセージボックスに表示された
🤡 だろ\(^o^)/ ま、たった一文字だけど
今後は更にコード改造して、UTF8のをEXCELに表示させるぜ
🥳 たったの一文字で、それも「お」だけしかテストしてないぢゃーーー
🤡 最初の一歩はこんなもんだ。てかうっせーーー
🤡 Function UtfStr(a1,a2,a3) as string だけど、引数a1,a2,a3 の型はどうしようかな? 未指定で上手くいっちゃったみたいたけど、 なんか、やーーーだな 修正前 (a1,a2,a3) 修正後案1 (a1 as byte,a2 as byte,a3 as byte) 修正後案2 (a1 as integer,a2 as integer,a3 as byte) 修正後案3 (a1 as long,a2 as long,a3 as long) 修正後案4 (a1 as double,a2 as double,a3 as double) どれにしようかな? てかどれでもいいぽいけど 常識的には案1かな? てか案3もいいな。 てか、案4が個人的には好きだけど非常識だろし 案2にするなら、ヤッパ案3だし、んーーー 🥳 (a1 as byte,a2 as double,a3 as long) はどう❓。なんでも上手くいくなら上手くいきそうぢゃーーーん 🤡非常識なヤツ。てか案3にしよっと
👤 UTF8かつカテゴリ3BYTEなら、 そのロジックで、バッチリだろうが・・・ 🤡 オレッちの開発の、秘伝の数式 c=256*(16*b1+b2\4)+64*(b2 mod 4)+b3 は、モチロンバッチリだよな ✌ 👤 で、EXCEL VBAで実装するのか❓んーーー 🤡 モチロンだ。ってか連れないな。なんで 👤 その程度の数式なら、VBAは不要でさ、 EXCEL関数だけで、イケる気もする。 VBAを走らせなくても、UTF8コード値の入力 と同時に、文字(漢字等)が表示されるぜ 🤡 なるほど。入力と同時文字表示は、いいな VBAでの実装は保留とし、EXCEL関数での 実装を検討とする
👤 商を求めれるExcel関数は、QUOTIENT 且つ、余りは、Excel関数は、MODだ 且つ、EXCEL関数には、HEX2DECも存在 且つ、EXCEL関数には、UNICHARが存在 🤡 上手くやれば、EXCEL関数に、 UTF8CHARがなくても、UTF8CHARって感じの処理は可能な様な気がする 🥳 どうせ一文字だけだろ。まだまだぢゃーん。 🤡 最初の一歩は、慌ててはいけない。 「恋は焦らず」なんて題名の曲があるだろ てか、文字連結はEXCEL関数てか&できるし 数十文字位の改造も、楽勝と思うよん。 🥳 ちぇっ、つまんないの。楽勝なのかよ てか、カテゴリ3BYTE以外はバグぢゃない? 🤡 可能性は高いけど、カテゴリ3BYTE専用だ 🥳 なんか狡いのーーーー 🤡 これで良いのだ。
🤡てかカテゴリ3って何❓ 👤地球のネットによると漢字の様な感じだ。てか オレの霊感ではほぼ大部分の全角文字の気がする なお、霊的な直感なので、違っても怒るなよ 🥳ランベルト星人って地球人より無限大頭がヨイのに 霊感とか直感なのかよ。 てかさ、漢字は全角だし、ネットで漢字とか記載されてるけど ポクのヤマ感だと全角文字の、ことだろ。てかなんで カテゴリ3byteなんだろう。全角って2byteって気もする 🤡んーーオマエのヤマ感より宇宙人の霊感が正しい気がする、霊感的に
👤 ーーー、いやま、半角のカナ記号も UTF8では3byteだし、半角でもカナはカテゴリ3 だ。半角英数はASCiiだからカテゴリ3ぢゃないと思う てか、地球のUTF8訳わからん。 てか、EXCEL関数でもVBAでもどっちでも良いのでドンドン実装しちゃいなさーーーーい 🥳ドンドンしちゃいなさーーーーい
>>663 🤡 はい。(VBA等は使用せずに)で
EXCEL関数で、実装しちゃいました。
ま、テストデータは少ないからデバッグは必要かもだが
そんなデータ入れるヤツがヤヴァイとみなし作業は完了
ま、どんなEXCEL関数でロジック作ったかは
無限大日未満に、公開と思うけど、
>>661 であの宇宙人が書き込んだEXCEL関数を
上手く組合せて完成。
ってか、これからはプログラミングなんて不要だぜ
てか、やったぜ。てか
スマホの連絡帳のVCFファイルのUTF8的なんだけど
それを表示させる作業しなきゃ
では、一旦バイバイーーーー やっほーーー
🥳プロマネがはしゃいでる。ポクとは違くアル
🥳ていうかさ、664よ。何が完成だ❢ S社のスマホの連絡帳で vcfエクスポートしたら、 ファイルcontacts.vcfがエクスポートされ それをウインドウズパソコンに 移動させて、 contacts.vcfを開いたら文字化けた。 電話番号は半角数字の為かバッチリだが 氏名(妙・名) など、文字化けで読めん。 ちなみに、メモ帳で開いたら =E9=8A=80=E8=A1=8C という感じで表示 ま、UTF8ぽいけど、なんだこれ👿 「=E9=8A=80=E8=A1=8C」 ぢゃなくて 「銀行」を出力しろっつうの ※補足 E9 8A 80 は銀でE8 A1 8Cは行 ていうかさ、 「=E9=8A=80=E8=A1=8C」とセル入力で 「銀行」をセルに出力する EXCEL VBA できればノーコードで EXCEL 関数で、 「=E9=8A=80=E8=A1=8C」とセル入力で 「銀行」をセルに出力する やつ作れーー by 🥳バカテスターだが、ご尤もな主張
>>665 うっせいなーーてか、あのロジックは
Excel関数で絶対参照はやらずに、相対参照のみで構築した
リロケータブルって感じロジックだから、
ロジックの改造は用意だ。でも
ヒマな時につくる。
イコールがでリミッターって感じだな。
ま、尤もな主張は認める。てかノーコードは修正が楽ちん
ただし、ロジックは、VBAで設計するのがいいり
実装はそのVBAを参考にヒトがEXCEL関数に手作業で実装だ。
🥳てか、どうでもいいから、早くつくってよ
CONTACT.VCF あれ文字化けだよな❓
🤡おれも、それは、文字化けだと思う。
悪いけどなにひとつ面白くないよ 当人だけがユーモアセンスあると思いこんでる中高年フリーランス(お察しください)か何かか NGNAMEしようにもご丁寧に毎回名前欄かえてくれてるみたいだしなあ いつまで続けるつもりなの?
なんやかんやで、読者さんがいる。という訳で ノーコード(といってもexcel関数で概略) セル★に「:=E9=8A=80」入力 注 先頭には「:」を入れる事 セル☆はMID(★,3,2) でそこは「E9」表示 セル□はMID(★,6,2) でそこは「8A」表示 セル○はMID(★,9,2) でそこは「80」表示 セル🟦はHEX2DEC(☆)で 233 となる セル🟫はHEX2DEC(□)で 138 となる セル🟪はHEX2DEC(○)で 128 となる セル⭐は以下の数式でUNICODEにさせる 256*(16*(🟦-224)+INT((🟫-128)/4)) +64*(MOD((🟫-128),4)) +(🟪-128) で ⭐は37504 となる セル🌟はUNICHAR(⭐)で「銀」と表示 by 👤 これがランベルト星人のノーコードでのロジックだ(注 概略)
⭐の37054はunicodeだけど十進数のunicode 単なる補足でした さてと、一段落したから、次回は暫くかも。気が向いたら また投稿するね。てか、文字化けvcfの漢字が表示されたので 嬉しくなって投稿しちゃいましたーーーでは、バイバイ👋
🥳 今イロイロ、連絡帳のcontact.vcfのを半手作業で
その668のロジックで、文字表示してみたんだけど・・・
30点不合格って感じですね。入力と同時に文字が表示されるのは
素晴らしいけど、でも
🙆 漢字(全角)なら、まず正しく表示
❌ 半角英数字は、⭐が異常な値(例えば負数)になり
はUNICHAR(⭐)で エラーで、#VALUEと表示ですな
EXCEL関数でやるのは、困難と判断する。
🤡ま、氏名とか住所の項目に全角文字だけなら上手くいきそ
でも、その様な項目に半角文字が混ざるとダメか、
これは、ヤッパバグだな。(;´д`)トホホ…
例
5チャンネル なら○と思われるが
5チャンネル は、5のUTF8は&H35で&hE0未満故に🙅
∴
>>657 の指摘が的中かよ。
バカテスター、なかなかやるな
てか、(;´д`)トホホ…
スクリプト? いやexcel関数で⭐とかは任意のセルの意味 ちなみに、全角漢字+半角数字混在のcontact.vcf のUTF8らしき、文字化けで読めないのは、ドウニカ、なった
>>636 UTF8なんて欠陥規格は使用禁止にすべきだな。殆どの文字がUnicodeの原形が分からないほど
いじくりまわされたコードにされてしまい非常に分かりにくいし、大部分の文字がUTF16より
バイト数が多くなってしまうから。単にASCIIがUTF8でも同じコードで同じバイト数で表せるという
理由だけのために、ASCIIに未練がある老害が欠陥規格を押し付けている。英語のまともな文章すら
書けないASCIIなんてもはやゴミ同然なのに、変化を受けいられないのは頑迷固陋すぎる。
ASCIIからの訣別を促進するため、プログラム言語の予約語や演算子、HTMLのタグなどに ASCIIにない文字をどんどん採用すれば良い。老害もASCII外の文字を強制的に使わせられれば、 奇怪な変換をしない素直なコードが合理的で優れていることを思い知らされるだろう。
よくわかるけど、よくわからないから、 絵文字も、ASCのも、全角漢字も、半角数字も、半角カナ なんでも、4byteのコードであるUTF32 にしろーーー ASCとかUTF8とかUNICODEとかEDなんとかは、今すぐ廃止しろー てか、UTF32ってなんでも4BYTE/文字 なの❓ だとしたら、UTF32だけでいいんぢゃなーーい。 UTF8 UTF16 UNICODEも今すぐ廃止しろーーーーーー
ていうか、UTF8は、名前をかえろーーーーー UTF8は、UTF8兼UTF16兼UTF24兼UTF32 という名称にしろ てか、UTF8は なんちゃってUTF8 がいい。 by 🥳
そうだ。ASCIIは、廃止しろーーーーーー老害だーーー
だけど、ASCIIアート廃止は、反対だーーーーー
てか、やっぱりEBCDIC IBMが1963年に定めた8ビットの文字コード
にしろーーー。老害も、超賛成すると思う
しかも、8ビットだから、EBCDICこそ、UTF8という名前にして
今のUTF8は、モピロン、なんちゃってUTF8に改名しなさーーい
ていうか、EBCDICなら、老害も賛成するんぢゃなーーーい❓
てか、5CHってサイコー、絵文字も、お絵描きも
化けない ぽぃ
n文字目の最初のが、E0以上は n文字目は、UTF8カテゴリ3byte n文字目の最初のが、E0未満は n文字目は、UTF8カテゴリ1byte∴ASC
「赤」という文字の色は、黒だけど 「赤」という文字の文字コードは、「黒」の文字コードと異なる 当たり前ではある。 さて、 000000000011111111 123456789012345678 「UTF8 PRINTABLE:=30」という感じの文章があるとする これは、18文字だと思うだろ?! でも、どうやら1文字だ。なぜかって 意訳すると、その18文字は「0」という1文字だ ちなみに、0x30はUTF8でもASCiiでも「0」という1文字 だったかな。 by 👤地球人の文章には呆れる┐( ∵ )┌ てか、UTF8よりASCIIアートがこれから主流だーーーー✌
>>678 なにこの、厳密性の低いロジック
やっぱりこれからは、
>>679 様のご主張の通り
絵文字1⃣💃🤡とか、ASCIIアート的な文字だ。
ASCIIアート的なのは、ASCII4文字がいいな。
4文字熟語というか、4文字ASCIIだ。ていうかさ
お前の書き込んだ
n文字目の最初のが、E0以上は
n文字目は、UTF8カテゴリ3byte
は、ラフすぎる
n文字目の最初のがE0以上F0未満⇒n文字目は3byte文字
n文字目の最初のがF0以上⇒n文字目は4byte文字
だぜ。
おそらく、4byteのは絵文字💃🤡1⃣とかだから、
絵文字もバッチリな変換ロジックとなるぜ、
1byte〜3byte文字の様な、asciiとか全角漢字なんて
もうこんなの文字ですらないもんねー。廃止しろー
で、絵文字とasciiアートだけでよろしいーーーー✌
5chの書込で絵文字1⃣って書き込むと
お絵描きのようには表示されません、
バグってるぅーーーーと思う
by🥳発達障害テスター
>>678 680 UTF8は、
F0-F7は4バイト、F8-FBは5バイト、FC-FDは6バイト らしっす。
👤 でUTF8は、FE-FFは何バイトだ。その調子なら7バイトか? 地球の書では、それは最大6バイトだから 6以下なのに7バイトというランベルト星にも存在しない値か❓ 🤡第1バイト目は、UTF8は、第1バイト目は、FE-FFは、UTF8でない との旨がネット記載されてる。意味は通じない文章だ 👤んーー地球人は理解できん。てか一応地球の論理学的には UTF8でないと仮定で、UTF8でない ∵自明 @ UTF8であると仮定で、UTF8でない ∵背理法?A @でもAでもUTF8でない だな。 もし、UTF8なのに第1文字バイト目がFEまたはFF⇒ そもそも、変換プログラムがバグってるか、 そもそも、UTF8ですらない。 というのだろう 念のため、ASCIIコードでFE FFのASCIIコードが 存在するような体系があるか調査しておけ 🤡めんどくせー、3バイト文字と、みなして変換して 変換エラーになるだろうから、それでお茶濁すのが 実現的なオレッちのやり方。ぢゃーバイバイ👋👋👋
🤡てか、ASCii 127は存在する。16進数に翻訳すると ASCii FF は存在すると言うことになる。 👤 んーやはり思ったとおりだ、FFがある、でなんて文字だ 🤡 文字をパンチ穴空けて消しちゃうという機能のようだ 👤 紙に穴🕳を空けて、文字を消すってことなのか❓ 🤡 多分そうだ、モピロンUTF8もその機能を継承すべきだよな。 👤 モピロンた。🕳を、空けて文字を消すのだ。てか 地球人は頭が変だ。
🥳 えー、ウッソーーー バイナリファイルにFF FF FF FF FF FF ・・・・・・ で、メモ帳でUTF8でそのファイルを開くと んーーーきっと🕳🕳🕳🕳🕳が表示されてさ、 それを印刷すると、プリンタが紙を🕳穴だらけにしてくれるか 早くテストしてみようーーーーよ。 👤🤡 オマエはもっと頭が変だ。
てか😅 1111 1111 = 255 = FF 0111 1111 = 127 = 7F だFFと7Fは違うといというか、カテゴリー何バイトにするのか はやく、設計決めろーーちゅーーーの
🤡突然ですが、下記要領でテストやれ バイナリエディタぽぃツールで16進で 31 32 33 34 35 7F FF 31 32 33 34 35 のファイルを作成。それを メモ帳でUTF8で開く 尚フォントはいつものヤツとする 🥳の予想:12345🕳?????? と表示され そして、🕳と表示のとこは、絶対 穴が開き壊れちゃいますぅーーーーー 👤の霊感:12345 か 12345(del) って感じ 🤡答え 12345・12345 と表示された ただし、・は UNICODE 30FB ではなく なんと、・は UNICODE F8F3 だ F8F3というUNICODE は、 ネットで調べたが、意味がわからん∴謎
🤡 ちなみに、・はメモ帳からexcelにコピペし DEC2HEX(UNICODE(⭐))というEXCEL関数したら F8F3 と表示された ってことは、 utf8の 7F FF ⇔ unicodeの F8 F3 との変換をメモ帳は内部でやっていると 憶測される。 BY 🤡の憶測の的中率は6.66‥%
てかUnicodeの範囲外かつ、UTF8の範囲外としても、 一応UTF8を変換してはくれてる。 というか。地球の書、主語を意図的曖昧にして解りづらくしてるんとちゃう❓
てかカテゴリー何バイトにするのか はやく、設計決めろーーちゅーーーの
>>668 ランベルト星人よ。それはカテゴリー3の場合の数式だな
オマエのは、地球のネットの文学作品を読んで作ったような数式だ。
ていうか、これが秘伝の数式だ
UTF8 = 14897152+ UNICODE ∵カテゴリー3
但し、UNICODE UTF8一覧表をみて、霊感で閃いた数式なので
これが間違ってても怒らないでね
by 🤡プロマネ
🥳プロマネやるーーーー。中学一年生の数学レベルぢゃーーん
ランベルトって宇宙人、厨房よりバカなの❓
👤うっせー。なんか数式一発なんて狡い。
🥳あ、負け惜しみだーーーー
🤡いや、まだテストしてない。それに霊感だ。
😅カテゴリー何バイトにするのかは、後回しで
その数式で上手くいくか、早くテストしろー でカテゴリー3専用だろ
🤡ちなみに、
UTF8 = ASCii ∵カテゴリー1 だ
😅はやくカテゴリーを計算するのをつくれーーーー
先頭文字 カテゴリ ─── ── 00-7F ⇒ 1 C2-DF ⇒ 2 E0-EF ⇒ 3 F0-F7 ⇒ 4 F8-FB ⇒ 5 FC-FD ⇒ 6 上記以外 んーーー暫定カテゴリー1?
>>673 ?
もしや君、UnicodeとUTF8を別のものと思っている?
👤 コラ、プロマネよ。チミの数式一発のやつ カテゴリ3バイトのでも、99%超の確率でダメだ。 霊感どころか、直感もないダメ数式ですよーーー やはり、カテゴリ3のほぼ99%以上(霊感では100%)について 下記の、超秘伝の数式でバッチリなのぢゃ 🟦1byte目のUTF8の10進数 トスル 且つ 🟫2byte目の それだ トスル 且つ 🟪3byte目の ぢゃ トスル スルト、 ⭐ = 256*(16*(🟦-224)+INT((🟫-128)/4)) +64*(MOD((🟫-128),4)) +(🟪-128) というランベルト星の秘伝の数式により ⭐には地球人が発明したUTF8の10進数をゲットぢゃ なお、霊感では、多分全てのカテゴリー3の文字で成立のありがたい数式ぢゃ 🥳 プロマネダメぢゃーーーーん。霊感に頼るからだよん てかランベルト、やるぢゃーーん。霊感バッチリぢゃーーん、 👤 いや、霊感というか地球の書をやっと理解して後は、ま霊感ぢゃ
🥳 UnicodeとUTF8をまったく別のものていうか、 UnicodeでUTF32の亜種のような気がする 👤 ┐(‘〜`;)┌
よく使う言葉を漢字1文字に割り当てるルールがあればよい ウクライナ→浮など 同じ漢字の場合の勝ち負けルールも決めておく
2byte専用縛りのUTF to UNICODE の変換数式だ 【カテゴリ2専用 普通にテスト済】 セル★に「:=C2=AE」と入力 注 先頭には「:」を入れる事 セル☆はMID(★,3,2) でそこは「C2」表示 セル□はMID(★,6,2) でそこは「AE」表示 セル🟦はHEX2DEC(☆)で 194 となる セル🟫はHEX2DEC(□)で 174 となる セル⭐は以下の数式でUNICODEにさせる ⭐=64*(🟦-192)+(🟫-128) で ⭐は 174 となった セル🌟はUNICHAR(⭐)で「®」と表示 なお、ある ンゴ文字 を連結で 表示が逆(右から左)に表示されたり、 右詰めに表示されたりしたが キニシナイとする。エクセルでの表示だし とにかく、下記数式は、バッチリ ⭐=64*(🟦-192)+(🟫-128) ∵2byte専用 BY 👤まずまずなので嬉しくて投稿しちゃった 🥳ランベルトって子供みたーーーーい
❌ンゴ文字 ⭕ンコ文字 に訂正
>>674 プログラム言語の予約語や演算子、HTMLのタグなどには
制御文字を使えばその文字がコマンドの一部なのかデータなのかどうか
判別しやすくなるのにそんな使われ方にはならなかったね。
0x1B(ESC)はそのために存在する文字なのに。
【修正前】 UTF8文字 カテゴリ ─── ── 00-7F ⇒ 1 C2-DF ⇒ 2 E0-EF ⇒ 3 F0-F7 ⇒ 4 F8-FB ⇒ 5 FC-FD ⇒ 6 上記以外 んーーー暫定カテゴリー1? 【朝令暮改 改訂】 UTF8文字 カテゴリ ─── ── 00〜7F ⇒ 1 C2 80〜DF BF ⇒ 2 E0 80 80 〜 EF BF BF ⇒ 3 F0 80 80 80 〜 F4 BF BF BF ⇒ 4 F800000000〜FBFFFFFFFF ⇒ 5なの? 不正なの? 地球人の書イミフ FC0000000000〜FDFFFFFFFFFF ⇒ 6なの? 不正なの? 地球人の書イミフ 上記以外 ヘンなのはカテゴリーは1でいいやーーーーー by 👤地球の書を更に完璧に理解したぜ 🥳宇宙人、更に病状悪化。治療不可だな
>>693 ここでのUnicodeはUnicode表に載っているコード値という意味ね。
UTF8はU+100以上の文字がUnicode表とは似ても似つかぬコードに変形されてしまうので不可。
UTF16はU+10000以上の文字が変形されるのはあまり好ましくないが、結果のサロゲートペア
U+D800〜DBFFとU+DC00〜DFFFもUnicode表に載っているのでまあ可。
>>700 自己スレ 朝令暮改を更に改訂 今度こそ最終案 【超々最終案】 とにかくカテゴリー、キーメタ。 UTF8の先頭 カテゴリ ─── ── 00〜7F ⇒ 1 C0〜DF ⇒ 2 80〜EF ⇒ 3 F0〜F8 ⇒ 4 上記以外 ⇒んー悩む。0だけど1かな by👤地球の書 更に超完璧に超理解したぜ 🥳 どの案でも、いいぢゃーーーーん。 >>702 似てもに似つかぬとか言い出すのはお前が16進数とか使ってるから。2進数使えば解決。そのままだということが分かる。
🥳 モピロン、ASCiiもUTF8も、なんでも、 文字がASCiiなら、同じだ。ちがうのはunicodeだけ 「A」は、ASCもUTF8も、1BYTEだけど、 UNICODEは、1BYTEぢゃないもんねー。2バイトかな。 1と2は、違う値ですよーーーーーーーー。BY🥳
>>703 こら、自称宇宙人!、カテゴリーは10進数はOKだが
UTF8の先頭は、16進数だけでなく、2進数も併用して
書き直せ、ちゅーーーーの
by 🤡
10進数にしよっかな
by 👤
🤡サロゲートペアてかカテゴリー4の UTF8toUNICODE を設計しろ。で まずは、 U+10000 〜 U+10FFFF を2進数にしろ 👤3byte 24bit U+10FFFFのみ解答とする Unicode 1‖⚪⚪⚪⚫ ⚪⚪⚪⚪ 2‖⚫⚫⚫⚫ ⚫⚫⚫⚫ 3‖⚫⚫⚫⚫ ⚫⚫⚫⚫ 🥳 ポクならサロなんちゃらは、設計は U+010000〜U+ 0FFFFFにするぅぅ UnicodeのサロのMaxのは、 1‖⚪⚪⚪⚪ ⚫⚫⚫⚫ 2‖⚫⚫⚫⚫ ⚫⚫⚫⚫ 3‖⚫⚫⚫⚫ ⚫⚫⚫⚫ てかU+10FFFFってどんな文字なの❓ 🤡レビュー中止。てか カテゴリー4のUTF8toUNICODE のプログラミング設計にとりかかれ
>>707 テスター🥳の疑問
、地球のネットのAIで検索してみた。スゲーー長文だが、U+10FFFFについてAIで検索すると
チョー適当にまとめると以下の通りかも
「天使の力」「大いなる創造の力」「愛の力」と呼ばれているそうです。 いずれにしても、『』という文字には謎めいた魅力があり、人々の興味を引きつけることは間違いありません。
との、ご回答だ by 👤 地球人の仕様ナゾ
誤回答なの? by 🥳なんか面白い
👤Unicodeは、とにかく4てか3byteトスル Unicode on サロゲートペア 1‖⚪⚪⚪🔵 🔵🔵🟤🟤 2‖🟤🟤🟤🟤 🟣🟣🟣🟣 3‖🟣🟣🟢🟢 🟢🟢🟢🟢 トスル 🤡すると、UTF-8は? 👤地球の書を解読すると UTF-8 on サロゲートペア 1U⚫⚫⚫⚫ ⚪🔵🔵🔵 2U⚫⚪🟤🟤 🟤🟤🟤🟤 3U⚫⚪🟣🟣 🟣🟣🟣🟣 4U⚫⚪🟢🟢 🟢🟢🟢🟢 と解読できた。 なお、地球人は⚫は1、そして、 ⚪は0という文字を使用するようぢゃ 🤡サロゲートてかカテゴリ4専用の UTF8toUNICODE をすぐプログラ厶しろ
🥳カテゴリー4かの判定は、 F0〜F8 ⇒ 4 だから、2進数に翻訳で 1U⚫⚫⚫⚫ ⚪⚪⚪⚪ 〜 1U⚫⚫⚫⚫ ⚫⚪⚪⚪ >> の 1U⚫⚫⚫⚫ ⚪🔵🔵🔵は、 条件の十分条件ぽぃぞ。 🤡 十分条件って何❓ 🥳 それだけで、バッチリ十分だぜ条件❢ 👤 ¯\(◉‿◉)/¯¯ 🤡サロゲートの専用の UTF8toUNICODE をすぐプログラ厶しろ
車輪の再発明どころか まわりが車輪を使ってる中で丸太を転がすことを見つけてドヤってるかのような
小学生がネットで調べたことを一生懸命自慢してるんじゃないだろうか? 爺の巣窟でそんなやついるかという疑問はあるが、小学校低学年の算数知識ならこんなもんだろう。高学年だと恥ずかしくて外歩けないレベルだし。
【カテゴリ4専用・多分OK】 セル★に「:=F0=A8=AA=B9」入力 注 先頭には「:」を入れる事 セル☆はMID(★,3,2) でそこは「F0」表示 セル□はMID(★,6,2) でそこは「A8」表示 セル○はMID(★,9,2) でそこは「AA」表示 セル△はMID(★,12,2) でそこは「B9」表示 セル🟦はHEX2DEC(☆)で240 となる セル🟫はHEX2DEC(□)で168 となる セル🟪はHEX2DEC(○)で170 となる セル🟩はHEX2DEC(△)で185 となる セル⭐は以下の超秘伝の数式でUNICODEにさせる ⭐=65536*(4*(🟦B-240)+INT((🟫-128)/16)) +256*(16*MOD((🟫-128),16)+INT(((🟪-128)/4))) +(64*MOD((🟪-128),4)+(G-128)) セル🌟はUNICHAR(⭐)で 「金先王」というか お絵描きの文字 表示された\(^o^)/ 超秘伝の数式だぜぇーーー by 👤 やっほーサロゲートともバッチリ 🥳一文字だけしかテストしてないぢゃん てか超秘伝の数式?アタマがヤバイぢゃん Look! A pair of boobs! -> (.Y.)
🥳ランベルト星人やるーーーねー ランベルト星人は、小学生の算数低学年でも 2進数とか計算とかバッチリぢゃーーーーん ランベルト星人の数学パワー偏差値は無限大はマジぢゃーーーん。 👤偏差値は、正規分布は、範囲は±∞だけど・‥…
>>707 の👤さんの2進数って、わかりやすい。
てか、UTF8、UTF16、UTF32は今すぐ廃止
そして、UTF24を地球人の皆さーーーん。今すぐ開発しようよ。
なんでも3byte/文字でいいじゃーーーん。
U+🟢🟠は、UTF24は⚪🟢🟠
U+⚪🔴🟢🟠は、UTF24は🔴🟢🟠
ちなみに、⚪は2進数だと00000000 の定数
変換簡単。地球でも大人なら計算できると思う。
てか、UTF8とかUNICODEもっと仕様変えようよ。
そのたびに、スマホの連絡帳のcontact.vcfが
文字化けして、システム改修のお仕事が増えるから
景気バッチリになるよ。
てか、UTF24を開発しなさーーい
👤自慢する訳ぢゃないけどサロゲートに対応した
超秘伝の数式
⭐=65536*(4*(🟦-240)+INT((🟫-128)/16))+256*(16*MOD((🟫-128),16)+INT(((🟪-128)/4)))
+(64*MOD((🟪-128),4)+(🟩-128))
マジ、可也完璧
てか、オレッちのPCのEXCEL、どうにか
サロゲートとかいう漢字、表示はされるけど
MID関数が、怪しいのを発見
ま、この超秘伝の数式を検証テスト中に発見した
ので、お絵描きしておく。
ちなみに、月へんに亀という文字を三文字
で、先頭の4文字を表示というロジックなのに
2文字しか表示しない。
ったく、地球人が変な規格を追加するから
滅茶苦茶ぢゃーーーん。
てか、サロゲートも、廃止しろーーーー
てか、MID関数がサロゲート のせいでバグってるの❓ で絵文字はスキです∵カワイイ ∴絵文字をサロゲートにするのは反対 ∴絵文字は日本語の漢字を半分削り 日本語は絵文字だらけにしろー。 絵文字のMID関数でのバグもなくなりそうぢゃーーーん BY 🥳バカテスター
🤡 MID関数の第2パラメータ はサロゲートならば倍にすれば解決ぢゃん 👤 呆┐( ˘_˘)┌ これだから地球上は小学生未満の知能なのだ オレの霊感だとサロゲートは2文字と誤認識するからだ しかし、ある日予告なく、 🟥🟩 🟦🟨が 内部はunicodeは、UCS2やめて、 内部はUTF32とか、UCS4にしたら 「ユーザーがサロゲートならば倍」の修正ロジックは、巻き戻さないとヤバイ 🟥🟩 🟦🟨が、そこまでは、やらないだろ というか、UNICODEがUCS4に規格追加しても、それと同時に あの計算ソフトの内部はUTF32とか、UCS4になる訳ではあるまい。 🤡MID関数等の使用を禁ずる案件が増えて嬉しいです 🥳バグっていいぢゃーーーん。AKBてかHKBてか、何とか坂48 サイコー
>>704 そのままじゃないだろ。
Unicode : 101101101010111
UTF8: 11100101 10101101 10010111
第一、2進数なんて可読性が低すぎる表記を使えるわけない。
>>703 UTF-8 は以下のように、先頭ニブル・4ビットで、1〜4バイト文字を判別している
1バイト文字: 0000〜0111: 0〜7
多バイト文字の2バイト目以降
1000〜1011: 8〜11(8〜B)
2バイト文字: 1100〜1101: 12〜13(C〜D)
3バイト文字: 1110: 14(E)
4バイト文字: 1111: 15(F)
Unicode → UTF-8
1バイト文字(数字・アルファベット)
U+0000 〜 U+007F 0xxx xxxx
2バイト文字(アラビア文字)
U+0080 〜 U+07FF 110x xxxx 10xx xxxx
3バイト文字(ひらがな・漢字)
U+0800 〜 U+FFFF 1110 xxxx 10xx xxxx 10xx xxxx
4バイト文字(難漢字)
U+10000 〜 U+10FFFF 1111 0xxx 10xx xxxx 10xx xxxx 10xx xxxx
BOM = "\uFEFF"
→ EF BB BF
🤡:=プロマネ(の役)
カテゴリーの最終案件は再検討∧後日
👤:=ランベルト星人(の役)
どうして?
🤡以前納品したexcel関数で作ったのが
サロゲート文字でバグることが判明
👤で、ま、それはオレが報告したけど
🤡MID関数で4バイト文字: 1111: 15(F)で
バグから、MID関数使う全ての改修だ
👤サロゲートの文字使用禁止でいいぢゃん
🥳:=発達障害テスタ(の役)
絵文字使用禁止に反対。∴
MID関数使う全ての改修に、超賛成
ていうか、「👤」は難毒漢字なの??
👤それは、サロゲート∧emojiかも
🥳で、全てのプログラムで
MID関数は使用禁止、早くやろーーよ
サロゲート文字列でバグるから、
>>722 で「MID関数使う全ての改修だ」
って、全て プロマネいってたぢゃーん。
🤡うっせいなーー、それは微妙に撤回
サロゲート文字列を引数とする
MID関数の使用を禁止に、変更だ
us-ASCii文字列を引数とする
MID関数の使用は許可トスル
そう MID(":=F0=A8=AA=B9",3,2) はOK
🥳
:=F0=A8=AA=B9はサロゲート文字ぢゃん
月亀 って感じの難毒漢字一文字ぢゃーん
🤡 なんてバカなんだ ascii13文字だ。
👤¯\(°_o)/¯ 地球人のcontact.vcf 化けるわけだ
721さんの地球の日本語 「多バイト文字の2バイト目以降 1000〜1011: 8〜11(8〜B)」 の解読に成功した。おそらく それが絶対に2byte or 3byte or 4byte のUTF8ならば、 2byte目 3byte目 4byte目 ─── ──── ──── 80〜EF na unknown ⇒ 2byte と判定せよ 80〜EF 80〜BF na ⇒ 3byte と判定せよ 80〜EF 80〜BF 80〜BF ⇒ 3byte と判定せよ 🥳 na とか unknown ってなに、バカなの❓ そんなの、書いてないぢゃーーーん。勝手に解釈いれるな 👤 ん、参照するなってか、参照したら付きの文字の先頭だし んーーー言葉に出来ん。 てか、プログラミングするときは、この辺りの設計は 重要だ 🤡難しく考えないでドンドン、プログラム製造しろーーー 🥳ドンドン、しろーーー
👤 あ、しまつた。タイプミスしまくってた 🥳 なんだよ。プログラムところがタイプライタからやり直せ 🤡 ま、プログラムでタイプミスしなきゃ、ヨシ、 🥳 タイプミスっても、シンタクスエラーなるしヨシ 👤 とにかく、サロゲートでの文字列のMID関数でバグる件の 修正は、目処たった 🥳 やるぢゃーーーーん。テキトーにやっればいいぢゃーーーん 🤡 とにかく、慎重且つ迅速にやれ 👤 ま、今日は、プログラムの修正に専念する。バイバイ
👤とにかく、MID関数はサロゲート未対応
に伴う、プログラム改修は完了した。
🤡ありがとう。そうだ
単独1byteには対応済
単独2byteには対応済
単独3byteには対応済
そして、その対応で、単独4byteも対応済
👤 単独? asciiとサロゲートが混在は?
🤡 それは、これからだ。
1〜4byte文字が混在混在混在の文字列の
UTF8→UNICODE 変換のプログラムに
魔改造とする。その為に
>>721 の一覧は重要だ。
👤 yes
🥳4つのロジックを継ぎ接ぎするだけ
超楽勝。∴小学生でも、超できるね
🤡 地球人の小学生には無理だろ
👤 yes
みえた。裏の裏の裏まで霊感で見えた 1バイトなのに、1バイト目80〜FFは👻 2バイトで2バイト目80〜BF外 は👻 3バイトで2バイト目80〜BF外 は👻 3バイトで3バイト目80〜BF外 は👻 4バイトで2バイト目80〜BF外 は👻 4バイトで3バイト目80〜BF外 は👻 4バイトで4バイト目80〜BF外 は👻 と表示する by 👤透視によりUTF8仕様の裏まで読切る なお👻は「おばけ」を意味するemoji
性器表現使うようになってから midなんてもう使わなくなったわ
👤プログラム設計者が 2バイトで2バイト目80〜BF外 は👻を表示のロジックをどうするか 愉しみ 🤡単に👻を表示するだけだろ 👤ま、そうだが、2バイト文字なのか怪しいわけで、 次の文字は、2バイト先なのか、それとも、 次の文字は、1バイト作なのか、どっちでプログラム設計するかだ 🤡んー、2バイトとのはずなのに2バイトぢゃないか ま、文字化けasciiとみなし、次のは1バイト先だ。 なかなか、ランベルト、有能ぢゃーーん。 地球人の既存のロジックでそこまで気づくのは皆無だな 👤それなりに地球人でもいるだろ。半分位
🥳 ランベルトとプロマネ、プログラム設計のハナシしてるな てか、変なUTF8コードだと、「👻」を表示するってこと❓ 👤モチロン、宇宙初の超バッチリロジック 文字化けは、絵文字「👻」で表示。これが 我が宇宙のスタンダードだ。だっちゅーーーの 🤡多分、地球初てか、世界発かな。てかま、 絵文字をUNICODEがサポートした時点で、変なやつが 文字化けの文字を「👻」にする奴は665人ぐらいいるな 世界で666番目だと憶測する。 🥳面白いけど、二人とも頭オカシイです。
PRINTABLE:=xx=xx=xx=xx=xx=xx なんて感じのやつは、1バイト先はその3倍右だな by 🤡呟き
UnicodeでU+7F,U+FFFFは制御文字なのにU+FFは制御文字じゃないんだね 8bitの上限という意味があるコードポイントなのに制御文字として割り当てられなかったのが意外
>>732 7Fが制御文字DELに割り当てられたのは当時は紙テープに穿孔していたから。
Unicodeの策定時には8ビットの上限FFを特別扱いする意味は既になくなっていた。
>>721 のルールに基いて、以下の3つの10進数のバイト列を、
先頭(1バイト目)からチェックしていく時、
最初にルール違反となるのは、何バイト目か?
129 130
120 169
240 159 146 206 184
つまり、ルール違反はエンコードエラーになる。
一般的にはルール違反の文字を除去して、処理を続けるべきではない
🥳721というか735 楽しい その9byteは、ポクのメモ帳は、ANSI左下に表示。してるのに文字が化けてる 🤡 無理やりなら、現ツール UTF8tUNICODE し、 それをキャラクター表示し さらに手作業でおこなった結果は、 👻👻x👻👻👻👻Ϙ である 👻👻x👻👻👻👻 のそれぞれを ascii 1byteとみなし、3byte目のみ 化けずにxと表示 最後の2byteは、 UTF8の2バイト文字と判定 「♀」に似た字体U+03D8 Ϙは、古代ギリシャの文字コッパ 👤解読率 約2割、ダメだな。そのツール 🤡てか、オマエが設計中のだ。
🤡メモ帳のANSI表示は右下に表示だろ 🥳テヘペロ、右と左は知ってる。タイプミスっただけ
🤡 UTF-8にはサロゲートペアはないぜ 👤 んーー「😊」とかそして「👤」は UTF-8では、4BYTEだろ 🤡 地球ではネットサーフィンで見たら UTF-8にサロゲートペアはありません 👤 でも、「😊」とかそして「👤」は UTF-8変換できるぞ 🥳 そうだ、てか、日本語を半分にして 空いた3byteに「🥳🤡👤」 を割当てろ 👤 んー珠にはいいこというね モピロン、ランベルト星では、 フォントに👤というフォントがあって 日本語等の漢字は全て絵文字に化ける なんてねーーーー 🥳 ひらがななら幼稚園児でも知ってるよ 漢字は幼稚園児なら知らないから、 ランベルト星人のような幼稚園児に バッチリな、フォントだね。 👤 おそらくまだ、地球にはこのフォント は無いと思う。 でも、フォントによっては 白黒ではあるが絵文字だらけのも 見覚えある 🤡 ちゃーんと国語と漢字の勉強しなさーーい by 😅チョー低レベル 失礼しましたーーー
👤
>>736 の、🤡よ、
オマエは、半手作業「👻👻x👻👻👻👻Ϙ」なんてホザいてるが
オレの秘伝の数式での手作業では、
「👻👻x👻👻👻👻θ」だっ
❌ 最後の2byteは、「♀」に似た字体U+03D8
⭕ 最後の2byteは、「θ」であり、 U+03B8
んー0x20ズレてるな。
ランベルト星の秘伝の数式
>>697 に記載のだが
⭐=64*(🟦-192)+(🟫-128) バッチリだ。
※UTF8で2byte専用で、絶対にUTF8で2BYTEの文字コードであること
ま、不正なコードなら👻が沢山でるが、
とにかく、最後のそれは、θ、θ、θのようだ。
🥳てか、UTF8の2byteのに ンゴ文字ってのがあってさ
U+07F7なんだけど、これが先頭文字だと
EXCELのセルに貼り付けると、文字の順番が右から左に逆になりやすい
てか、U+07F7の字体。カワイイです。てかンゴ文字が
文字化けしても、わからないと思います。
てか、U+07F6は、字体は、2と9が合体してる
🤡はい。てか、無意味なことかくなーーー
👤下記のお絵描き UTF-8 on 4byte 1U⚫⚫⚫⚫ ⚪🔵🔵🔵 2U⚫⚪🟤🟤 🟤🟤🟤🟤 3U⚫⚪🟣🟣 🟣🟣🟣🟣 4U⚫⚪🟢🟢 🟢🟢🟢🟢 から 以下のプログラミング設計した オレッて天才❓ elseif F0≦🟦≦F8 THEN if 80h≦🟫≦BF and 80h≦🟪≦BF and 80h≦🟩≦BF then then '4byte ⭐=65536*(4*(🟦-240) +INT((🟫-128)/16)) +256*(16*MOD((🟫-128),16) +INT(((🟪-128)/4))) +(64*MOD((🟪-128),4) +(🟩-128)) UNICHAR(⭐)を表示 n=n+4
🤡 ビット積を使わずunicode化かよ ま、地球人から賛否両論てか、地球人にソースレビュー させたら非難の嵐だせ。 👤 ゲラゲラ 地球人が間抜けかどうかわかるな 🤡 ナンデ 👤 ま、プログラミング設計と、文字コード設計、そして その裏の裏まで透視できてくるとわかる、 てか、elseif F0≦🟦≦F8 THENは 暫定的だ。F0≦🟦≦F6辺りにするかな wwww てか、さ、u+10FFFF〜u+1FFFFFには 正当なコードはいくつあると思う 🤡最大のそれは、u+10FFFF だから 簡単だな。1より大きい くは、・・・ 👤ちなみに、UNICHAR(⭐)は、excel関数の意だが ⭐がデカイとエラーとなる ま、u+FFFFでも、その10倍てかF倍より1つ小さい 付近までならokだ。 🤡おれっちのテスト用マシンのexcel windowsは10にupすみだが excelは7の頃のだ unichar関数なんて無いかもしれない 👤んーーーー、その頃は未だutf8はなかったのか 🤡そこそこ国内に浸透してた記憶はある 🥳てかさ、16面のunicodeって何個あるの❓ 👤🤡 夜も老けた。そろそろお休みーーーー 🥳お休みーーーー
👤文字コードで0x00の処理に、ミスは、あった ま、0x00はモチロンasciiコードだが、 話すと長くなるが、文字化けで0x00となっても👻を表示するのは 困難と判断す。ていうか、0x00は文字でない文字だ∵文字の終端だっけか C言語ではそうたよな❓、 🤡入力にバグデータが含まれる文字列は、 出力のその位置には👻は出力して欲しいが、 単なる要望だ。0x00は難しいそうだな。 🥳なんでーーー。カンタンだよな。 🤡👤おそらく、高難易度かもしれん。
🤡 あっそうだ。0x31 0x32 0x33 0x00 0x35 というファイルをバイナリエディタで作成とする 🥳 で 🤡 メモ帳で開く、ANSIでもUTF8でもキニシナイ 🥳 そりゃ、全部ASCiiだからモチロン文字化けない。 で、「123」 と表示かな 「123 123」かもね 🤡 ま、後者となった覚えがある 🥳 なんだよーー、聞くな。知ってるぢゃーーん 🤡 で、特には編集はしないが、上書き保存する ・・・ 続きは別途
🤡🥳 あっいけね、「123 5」という表示だ 🤡 でさ、メモ帳で編集せず上書き保存してさ、 そのファイルをバイナリエディタで開くと どうなるか、予想してみろ 🥳 0x31 0x32 0x33 0x00 0x35 のまま∵編集してない 🤡 0x31 0x32 0x33 0x20 0x35 だ。 0x00は、0x20に変化した。spaceに変化だ 👤 ┐(´ー`)┌ てか文字列の途中の0x00は0x20に変更 するようにさせるか、そのままでよいかだな 🥳スペースが見えたら病気ですよーーー0x00ってスペース❓ 👤¯\(°_o)/¯
🤡でさ、文字列の途中に0x00あると、魔改造したツールどうなる? 👤想定外だったが、いつの間にか、0x00を無視するロジックを組み込んでた プログラミング設計書からコードに手作業でコーディングするわけだが その時、そのロジックは組み込んでた。ま、コーディング中は頭がいっぱいで 記憶にはないがな。 🤡有能なヤツは、設計書の本質まで考えてコーディングするから いろいろた。設計書にそこまで盛り込むとソースコードの方が見易くなるという 罠にはまる。てか、現状の動作を仕様とする。 👤変更不要という意味か❓ 🤡モピロンだ。 👤ok 🥳0x00を表示するようにしろーーバグぢゃなーーい 👤🤡 ま、見えないものは表示しないのでこれでよいのだーー 🥳これでよいのだーーに賛成
>>707 ズバシーレビュー。オウマイゴッドって感じ
ていうか、地球人はそれは、21bit
U+10000 〜 U+10FFFF は21bitなんて説を書き込でるサイトが
散見される。この707のお絵描きをみれば、
ホントは、20bit+1文字、が超超正解ぢゃーーーん
by 🥳
んーー、サイトによっては、約20bit と記載してる。
敢えて、「約」を入れてる。有効数字を鑑みて
20±0.5bitと意訳できる
by 👤
単なる忖度だ ゲラゲラ
by 🤡
さすが、地球人のプロマネらしいホントにホントな話しぽぃぢゃーーーん
by 🥳幼稚園児よりマシか
CHAR(🟦)を表示でもよいし、 ⭐=🟦、UNICHAR(⭐)を表示でもヨシ だって、Unicodeもutf8もasciiも全部同じ by 🥳 値が128未満なら、値的にはそうだ。 格納のバイト数は、異なるかも by 🤡 0x00等は、値は、128未満 ∵0<128 しかしアプリや言語により動作はことなる by 👤 0x7Fをデスプレーで表示で🕳が開くようしろー 完全なる互換性を継承しろーーー デスプレーが壊れてもヨシ(๑•̀ㅂ•́)و✧ by 🥳バカテスター
>>732 別に制御文字がコード上限とかを表す意味ではないから
C0やC1がなぜ存在するのか、もう昔話なんだなあ
UTF-8 on 4byte 1U⚫⚫⚫⚫ ⚪🔵🔵🔵 2U⚫⚪🟤🟤 🟤🟤🟤🟤 3U⚫⚪🟣🟣 🟣🟣🟣🟣 4U⚫⚪🟢🟢 🟢🟢🟢🟢 ⚫⚪以外は、マルの個数は21個だな そ、UTF8は2の21乗つまり、21bitだ unicodeは2の約20乗だ。utf8の方が約2倍 文字が多い。 なんてワケはない。そこが、とにかく、なんやかんやで、ややこしい UTF8→UNICODEの変換で半分重複する。 なんて、ことはない。ように変換プラグラムを やるのは、結構面倒な予感 てか、もう完成はしたけど、何か後味は悪い BY 🤡 👤気にするな。結構完璧だ 🥳気にするな。動けばいいぢゃーーーん
スマホの連絡帳の氏名に、 UTF8なら2,3,4byte文字混在 「サインΘ👻だよ 👤🤡🥳」をタイプ それをcontacts.vcfでexport 自作ツールで 文字化けてかpritable以降の 文字列(asciiだけどutf8)を、地球人でも 解るようエンコードした。 ま、excelということもあってwindows上のためか、絵文字が白黒でデザインがしょぼい が、とにかく、ツールバッチリ 超秘伝だか、超々秘伝の数式だか、あれバッチリ ちなみに、👻もそれを電話帳(連絡帳)に入力もしたが、バッチリ表示。完璧だぜ。 by 🤡 絵文字が白黒? いまひとつぢゃーーーん by 🥳 てかさ、windowsのメモ帳ってカラー表示は無理 by 👤 メモ帳、ちゃんとなおせーーーー by 🥳バカなクレーマー
ま、「サインΘ👻だよ 👤🤡🥳」をexcelに貼り付けると 絵文字は白黒だが、それぞれの文字に任意の色をつけれる。 一文字には、任意の1色だけだが、画像でないのだから、 何か、いい感じ。てか、👤のデザインがイマイチだな。 なんか、カワイイ感じになってる。👤はやはり、ブラック感のある ワルーーーって感じなんだけど てか、イタリックやると、👤🥳🤡もイタリック体になる これは、ナカナカよし。 🟦🟦 🟦🟦 なかなかやるなーーーー てかマイクロソフトのロゴって 青い四角四つにいつの間にか化学変換してるな。気が付かなかった
👤今回のツール、いろいろテストで不具合発見した ナカナカ、手間取ったが、デバッグ取り敢えず完了 ぢゃーひと休みいれるかな。 ちなみに、それは、最後の文字が「=」で継続行だ 最後の文字とは改行コードの一つ手前との意味 それに伴う改修だ。vcfにもちゃんとした規格があり それに忠実にやってるんだな。疲れたぜ 🥳意味がさっぱりわかんないから、ok
👤 ワタシは宇宙人。で、「=」はナゾなる制御コードだ 🤡 自称宇宙人、頭大丈夫か? 🥳 ランベルトさん、デバッグしすぎで、頭バグっちゃったーーー 👤 安心しろ。「=」は、その直後に改行でも継続と解釈という意味だ RFC何とかという、地球のルール。それは宇宙のスタンダードだ 🤡 ん、てかさ、「=」は、EXCELでは、それが先頭なら、関数 として解釈しろ。という制御コードぢゃねえーーー? 👤 あ、思い出した。vcfファイルの中身から、コピペして、 excelのセルへコピペする。トスル 🤡 すると、先頭が「=E0=80=BF」などは、文字列でなく、関数とみなす 👤 そ、あの秘伝のツールは、ホントはon EXCEL って感じ 🤡 入力のセルは文字列って指定しろ。初期設定の標準ではダメ 👤 デバッグ中に気が付き、修正は済んだ。標準でなく文字列とした 🥳 標準なんての従うからバグちゃったのーーー。スタンダード嫌いです スタンダード反対。宇宙やるーーーー 🤡 てか、だからヤツは宇宙人なんだぞ
® ヘーイ、ワタシはRFC宇宙人 宇宙標準てか地球の規格 RFCを貼るぞ CRLF sequence (U+000D followed by U+000A). Long logical lines of text can be split into a multiple-physical-line representation using the following folding technique. Content lines SHOULD be folded to a maximum width of 75 octets
👤 75文字までなら改行不要で76文字で改行しろって規格❓ ® そうだけど、ちがうもんねーーーー 👤 漢字10文字程度、改行しまくりだ。こらS⚪nyのスマホの vcfのエクスポートするの、ヘンぢゃねーーー ® ソニーさんのは、我がスタンダードRFC通りを守ってるぽぃ 👤 んーー、漢字10文字は、UTF8のPRINTABLEにデコードてか エンコードすると何文字だ。プロマネ計算しろ 🤡 3BYTE/日本語 で、さらに、PRINTABLEだから、 えーと、一文字は、「=E0=80=BF」って感じの9octed/日本語 多分、®の75 octetsがマックスは75/9だから 漢字八文字超えたら改行しろ。ぢゃない。 ソニーさん教えて下さい。 🥳 単にアンドロイドのツールをパクらせただけだろ グ⚪グルさんが詳しいんぢゃない。 てか、あのツールはデバッグ済んだし キニシナイ 👤そうだな。てか地球の、ルールめんどくせー
RFCの規格、改行は、暗に、 CRLF sequence を前提に規格書を策定してるのか? RFCってマイク🟦ソフトなのな? BY 🤡 プログラム、の憶測って、ウガリすぎーープロマネ🧠バグってるーー BY 🥳 有能なプロマネともなると、規格のウラのウラまで読み切る事も大切 BY 🤡 地球人に産まれて来なくて良かったぜーー BY👤 あ、自称宇宙人のランベルト宇宙人、バグった言い訳してるーー BY 🥳
プログラミング設計 n文字目の先頭🟦とおく※暗に🟦は有 その次のを🟫とおく※無なら0x00が無難 さらに次を🟪とおく※ 〃 その次のを🟩とおく※ 〃 n=1 '先頭をゼロとするなら要改 Repeat until 🟦=0 if 🟦<128 then 'ascii ⭐=🟦 UNICHAR(⭐)を表示 n=n+1 elseif 🟦<192then 'なんちゃってascii 「👻」を表示 n=n+1 elseif 🟦<224 then '2byte if 128≦🟫≦191 then ⭐=64*(🟦-192)+(🟫-128) UNICHAR(⭐)を表示 n=n+2 else 「👻」を表示 n=n+1 ' ∵1byte文字トミナス end if
elseif 🟦<240 then '3byte if 128≦🟫≦191 and 128≦🟪≦191 then then ' ⭐ =256*(16*(🟦-224) +INT((🟫-128)/4)) +64*(MOD((🟫-128),4)) +(🟪-128) UNICHAR(⭐)を表示 n=n+3 else 「👻」を表示 n=n+1 ' ∵1byte文字トミナス end if elseif 🟦<248 THEN if 128≦🟫≦191 and 128≦🟪≦191 and 128≦🟩≦191 then then '4byte ⭐=65536*(4*(🟦-240) +INT((🟫-128)/16)) +256*(16*MOD((🟫-128),16) +INT(((🟪-128)/4))) +(64*MOD((🟪-128),4) +(🟩-128)) UNICHAR(⭐)を表示 n=n+4 else 「👻」を表示 n=n+1 ' ∵1byte文字トミナス end if
else '5,6byte 「👻」を表示 n=n+1 ' ∵1byte文字トミナス end if end repeat msgbox"やったね∵処理完了\(^o^)/"
こらーーー if 🟦<128 then 'ascii は、 if 0=🟦 then 'null '何もしない elseif 0<🟦<128 then 'ascii ぢゃなーーーーい てか先頭=は関数とみなすです。∵excel 継続から最後に=ですよ。 で最後は改行CrLf ですよ∵RFC2045? BY 🤡 意味わかんない けどスゴくてヤバイ BY 🥳
❌ if 🟦<128 then 'ascii 🙆 if 0=🟦 then 'null2space ⭐=32 unichar(⭐) n=n+1 elseif 0<🟦<128 then 'ascii ∴ Me is MemoPadMan.✌ ∴ Me is All ®ight. ∵Me is 💯 🤡🥳👤®一同 boo boo voo boo booooooooooo.
if 0=🟦 ってけしからんコードだ 変数は左、定数は右、これが社会人の定式デス ∴ if 🟦 = 0 と記述しなさーーい by 🤡プロマネの役 定数が左。変数は右。地球人にはアリエナイ 極一部の古代ギリシャ文字とかンゴ文字は知らんけど 定数が左。変数は右 代入演算子ではナイ と 地球人でも解る記述だ。モピロン、素晴らしい by 👤ランベルト星人 🟦=0 でも 0=🟦でも、論理式なら どっちも真偽値は同じ。 ポクはモピロン天才数学者より天才だ by 🥳発達障害テスタ
☕ポクはサンマイ🟤🟤システ🟤のジャバ星人だ。宜しくね。
>>757 のソースコードもどき。地球人らしいコードですね。
⭐=64*(🟦-192)+(🟫-128) ∧ ⭐=0を満たす整数解
1つでよいので、解いてみろーーー
by ☕ポクはJAVA星人
何か、宇宙人。自称だろうけど、沢山やってきた。
なんか、ヤバイ。地球が征服されちゃうの❓
はやく、宇宙人に征服してほしいです。地球のオトコに呆きたところよUFO
by 🥳
ピンクレディーのUFOのその歌詞は、
❌ 地球の男に飽きたところよ
⭕ 地球の男に呆きたところよ
なんちゃってーーーーーー
BY 🤡 今日はエイプリルフールぢゃなかった。失言しちゃった
👤 誰だ。ジャバ星人か何か知らんが、お前は絵文字一文字で☕ でよい。www ゲラゲラ てかプロマネ、地球を防衛したなら プロマネが解けよ。てかオレは瞬時に解ったけど 🤡 プロマネってポクのことかな。地球人をバカにするなーー ていうか ⭐=64*(🟦-192)+(🟫-128) ∧ ⭐=0を満たす整数解 1つでよいなら厨房でも、解けるぜ、こらテスター解けよ オレッちの解っちゃった。1つなら楽勝 てか、🟦は192(0xC0)を代入して、あとは、匕・ミ・ッ
🥳 数学大好き。てかランベルト星人とかプロマネ 解けないからポクに聞いてるんだな。 無理しやがって、教えて、アゲルと、 数式 ⭐=64*(🟦-192)+(🟫-128) ───1⃣ 1⃣の🟦に192を代入 ─── 2⃣ 1⃣の⭐に0を代入とする。すると、 1⃣は、0=64✕(192-192)+(🟫-128) ───1⃣💨 1⃣💨をfor🟫やると、 🟫=128 ───3⃣ 以上1⃣3⃣より、求めるべき整数解の一つは、 (🟦、🟫)=(192、128) ヤッターー 解けたーーー\(^o^)/ 👤 んで、それでどうしたのかな ☕ 地球人って・・・ 👤 オレは地球人基準で数学パワーが∞ ☕ そりゃ地球人が無限人でも宇宙人から見れば 数学パワーはマイナス無限大だし当然だろ 🥳 よくわかんないけど、地球人を侵略してくれて ホントうにありがとう
ランベルトは、 ⭐=64*(🟦-192)+(🟫-128)=0 の解の一つ (🟦、🟫)=(192、128)を解いたな 数式⭐が、ビット演算に変えても (🟦、🟫)=(192、128)なら⭐はゼロになりそうだ by 🤡地球人代表 自称プロマネ(の役)
elseif 🟦<224 then '2byte if 128≦🟫≦191 then ⭐=64*(🟦-192)+(🟫-128) UNICHAR(⭐)を表示 n=n+2 で、当ロジックは🟦≧192のときに実行される。 故に実質 if 192≦🟦<224 then '2byte if 128≦🟫≦191 then ⭐=64*(🟦-192)+(🟫-128) UNICHAR(⭐)を表示 n=n+2 と同じだ。さてと、一人でソースレビューするか by 👤 地球人ぢゃナイオレも参加させろ。そのレビュー by ☕ジャバ星人
CSVやTSVでセル内改行ができない問題は 行の区切りを改行文字ではなくRSやVTにすれば解決しそうだがその方法で問題あるだろうか
そういえば、エクセルの、ある一つ、一つの、ひとつの、 セル内で文字列[xxxxyyyy]を改行は、 オペレーション的には xxxx [ALT]+[改行] yyyy だったような。 地球の書によると、Lf(ASCIIコード10 スナワチ0x0a)だ。 CSVでセル内改行不能問題は、知らん。失礼m(_ _)m ちな、ンゴ文字をセル内に入れる、文字の表示方向が 逆になったりする事が、よくある。 それは、バグでなく仕様の可能性、かと憶測する。 なお、数字を入れると、右詰めになり、 先頭が=だと関数とみなされることは、多い、 文字化けの要因のひとつ。該当セルを標準でなく文字列に 設定するのもひとつの手段、かな?。 試行錯誤して作成してる、😅
👤 PRINTABLE:=C0=80 で👻と表示、ヤバ。バグなのか? ☕ ま、いいんぢゃなーーい 🤡 SONYさんのスマホのCNTACTS.VCFはヌル文字なんて入力不可 また、半角数字は123なら =31=32=33 と出力だ 2バイトには変換しないので、 そんな不正なコードは出力しませんよーーー だから、ASCiiは、=C0=B8 なんて出力しません ☕ レビューやーめたーーーー
ある文字が、UTF8で絶対に絶対に絶対に2BYTE文字の場合、 その下限てか上限は、=C2=80 だ てか、UTF8で0xC280はなんて文字なんだろうか 🤡知らん。けど、変な文字だろ 電話帳にそんなコードは入力しないからどうでもよいので 🥳ポクのスマホの連絡帳てか電話帳の氏名に 絵文字入れても、バッチリ。ツールバッチリ 絵文字とASCII文字だけバッチリなら 他の文字は使用しないから、ツール問題なし てか、絵文字以外かつASCii以外の文字の 入力を禁止しろーーーー 漢字は入力禁止 🤡ちゃんと日本語も難読もSONYさんのcontacts.vcfは RCF2045守ってるのでバッチリ 👤てか、守らなくても、ワリとヘッチャラだよな 🥳絵文字バッチリだから、ヘッチャラ
ランベルトとかいう、宇宙人の落ちこぼれが
UTF8 C280 つまりU+0080がどんな文字が
疑問に思ってるようだ。
どうやら、極めて怪しい制御コードのような
霊感を感じる。それのお絵描きしておく
BY ☕ジャバ星人でしたーーーー
xxx ❓❓❓ PAD だろ xxxはとPADとは全く違う by 👤 xxxは未知だから、PADとかいのでもいいんぢゃない by 🤡 xとPは違う文字である。この2人目がヤバイ by 🥳
🥳 それは、Padding Character というヤツ モチロン、非表示の文字らしいです。 だから、Spaceで、表示すべきです。 xxx とか PAD と表示してるサイトが 多々見受けられる。バグですね。ーー BY 🥳発達障害が更に悪化中
ちぇっ、👻表示させたかな。by 👤 そんな文字はスマホに入力できないので、 そんな文字をデコードしたのはcontacts.vcfに存在しないので リリース済のは、修正しませーーーん by 🤡 え、リリース済❓👤 デヘヘ🤡
オレッちがソースレビューさせれば、以下のようにするのになあ elseif 🟦<192then 'なんちゃってascii 「👻」を表示 n=n+1 elseif 🟦<224 then '2byte は、 elseif 🟦<192then 'なんちゃってascii 「👻」を表示 n=n+1 elseif 🟦<194then 'なんちゃって2byte 「👻」を表示 n=n+1で容認、n=n+2が理想 elseif 🟦<224 then '2byte by ☕ポクはJAVA星人
緊急PGメンテかよ。ま、 elseif 🟦<192then 'なんちゃってascii 「👻」を表示 n=n+1 elseif 🟦<224 then '2byte は、 elseif 🟦<194then 'なんちゃってUTF8 「👻」を表示 n=n+1 elseif 🟦<224 then '2byte で再リリースを検討する。ま、理想は☕星人の通りだが インパクトがわからん。 てかさ、なんちゃってUTF8なんてS⭕NYのCONTACTS.VCFに 出力はされないから、ね。 BY 👤 モピロン、再リリースは何時でもOK BY 🤡 バグっていいぢゃーーん BY 🥳 🤡 PGバグでも運用上はバグぢゃないもんねーーー
>>777 の緊急PG修正ってコメント除けば
一文字修正するだけぢゃーーーん
❌ elseif 🟦<192then 'なんちゃってascii
⭕ elseif 🟦<194then 'なんちゃってUTF8
192を194にするだけ。1秒で修正するぢゃーーーん
プロマネとか自称宇宙人ってバカなの❓
BY 🥳超バカテスターに成りすましてみたー
👤再リリース完了 🤡Good job ☕ま、やらかすと思ったわ 👤UTF8では、最初の1バイト目が1100 が2byte なんて地球の書に釣られた ☕そっか、かつてのオレを思い出した 👤んー❓ ☕2BYTE⇒1100 xxxx xxxx xxxx は真か偽だな。 👤地球人には無理だろ。偏差値パワーが有限だからな地球人は ☕オレはかつて地球人だった。オマエも地球人に格下げ寸前だったな 🤡C0 00 〜 C0 7F は、UTF8 ではなんちゃって2BYTEって 地球の書に記載した方がいいか? 👤☕ それは正解だが、反例らしき忖度に満ちた地球の書に 記載しても、何だな。そもそも、地球人は🐴🦌だ。 🥳ちぇ、地球人をバカしたバッドエンディングなの❓ この文学作品したヒトってバカっかぢゃなーーーい 😅AUAUアウアウ
>>779 ❌C0 00 〜 C0 7F は、UTF8 ではなんちゃって2BYTE
⭕C0 00 〜 C2 7F は、UTF8 ではなんちゃって2BYTE
だった。他にもたくさん、ミスってそう。( ・ั﹏・ั)
👤プロマネよ。あのさ、ナンデ、UTF8文字列→UNICODE文字列 なんてプログラミングをオレにさせたんだ? 🤡それがさ、6年前の春は、その当時で古いスマホの電話帳 を、その当時で新しいスマホに、vcfファイル経由でコピーしたことに遡る。 👤6年前時点の古いスマホなら、android4.x新しいのなら、android8頃か 🤡んー、多分yes 🥳バージョンが古いから、vcfファイルも、モピロン、文字化けだよね。 🤡いや、vcfを当時のパソコンで開くとちゃんと氏名等の漢字は読める。平文だ その頃はwin8.1のヤツを使用してた。 👤vcfは漢字も平文で読めたのか 🤡yes その当時は。 👤でutf8→unicodeと関係あるんだ 🤡その当時は関係はなし、で、 そして、機種変更した。2年前だ。 ・・・・ 👤vcfが2年前の機種のときに文字化けか 🤡文字化けと思ったが、デコードだな 1文字漢字がascii9文字に化学変化、後はわかるだろ 🥳グーグルので共有でいいぢゃーーーん。 個人情報はグ⚪グルのサーバに保管だね 🤡でも、とにかくPRINTABLE: のをエンコツール自作に至ったわけ
>>768 >CSVやTSVで、セル内改行ができない問題は
Ruby ではクォート文字で囲めば、
行区切り文字・列区切り文字・クォート文字も、データ内に入れられる
require 'csv'
input = <<"EOT"
"a""a","b,b",あ
"c
c","d\nd"
EOT
p input_ary = CSV.parse( input ) # 2次元配列
#=> [ ["a\"a", "b,b", "あ"], ["c\nc", "d\nd"] ]
# 2次元配列を、CSV 文字列に変換する
csv_str = input_ary.map( &:to_csv ).join
puts csv_str
"a""a","b,b",あ
"c
c","d
d"
ん、微妙に話しズレるが、新たなるプロジェクト思いついた ・VBAでcontacts.csvをバイナリで読み込ませる ・CR LF などそれが2バイトでも全てLF1byteに変換する ・それをセルの んー例えばC3セルに表示 ・C3セルの一つだけのセルに、contacts.vcfが表示される ・とにかく、vcfのエンコードツールをvbaで開発する by 🤡 それより、プロマネ、プリンタかってーーー ネットプリントめんどくせー by 🥳👤 プロジェクトは延期ーー 🤡
☕ 2BYTE⇒1100 xxxx xxxx xxxx の最小値って地球人よ知ってるか❓ 16進で、xC000 だぜ。もし、xC280にしたいならさ、 それを簡易に表現できるパワーが必要だろ。 やたら、言い訳した内容を補足に入れてもよ。 そんなの、理解できねーーーってワケ by ☕ でさ、なんで自称宇宙人のチミはジャバ星人って自称してるの by 👤ランベルト星人 んーーー by☕ ま、ウスウス知ってるけど、JAVAってIBMが開発した言語❓ それとも ・・マイクロソフト ❓ BY 👤 マイクロソフトもIBMもライバルだ ぢゃーバイバイ BY ☕
ジャバ星人(サンマイクロシステ⚪星人)と、ランベルト星人の やり取り、意味深だな。 てかさ、ISO/IEC 10646 [ISO.10646] に UTF8toUNICODE の極めて具体的なアルゴリズムが 英文で記載されてる。 モピロン、ランベルト星人やジャバ星人が開発したのは その通りに作ってるハズだろ。 地球人の規格か概ね上位互換だ てかそれキニシナイ BY 👤 今の規格でも何か怪しい てかもぅゴリゴリだせを BY ☕ あのさ、ジャバ星人は地球からスピンアウトしたら BY 初登場のミラクル星人
オラ、いや、ミラクル星人にはナイショだけどよ、 ランベルトとかいう宇宙人の、自称秘伝の数式 ⭐=64*(🟦-192)+(🟫-128) ※UTF8で2byte専用 で⭐が127以下になる全ての🟦、🟫の非負整数解って ま、地球人でも厨房程度の低知能で解けるだろ。 見え貼ってビット積とか使って規格書記載してるから 数式の連立方程式すら失念し、重複するだってワケ 地球人って、地球🌏の中ぢゃ、知能はマシだが、 この宇宙の中ぢゃ、もう恥ずかしくて、宇宙旅行なんて出来ないだろ by ☕ てか、あの規格書、あれが21bitとか記載してるぞ、 20bit + 1文字だよな。地球人ってバカなのか? by 👤 いやいや、地球の数学では、 2^21 = 2^20 + 1なんぢゃねーーー ゲラゲラ by ☕ 矛盾許容の数学を構築したランベルト星の数学ですら アリエネー。てか、isoなんとかってジョークサイトだよな by 👤 ゲラゲラゲラゲラゲラゲラ論理積以前だろスピンアウト正解 by ☕
>>783 でさ、
🤡
> CR LF などが2バイトも全てLF1byteに変換
の記述って、🦩ダチョウ (無駄に長いの意)な表現だよな
👤地球人は知能はバカの一つ覚え。無限個ある欠陥だらけの
文章の、2、3点を修正して、今度は完璧だなんて思い込む
🤡てか、「あのCrLfをLfにする」の何処がダチョウな表現なんだ❓
👤正解は「Crを無視する」だろ
🤡オマエも地球人並みの知能だな。無限大の知能ってウソぢゃーーん
👤そもそも、Cr単独で改行なんてのは、アリエナイ前提だ
モチロン、Lf単独で改行は、Unixとか比較的近年UTF8で
地球で、主流だろ
🤡んー❓ 厳密すればするぼど、やはりダチョウ🦩になる
👤ところで、ゲーデルの不完全性定理ってどう思う
🤡あの辺りは数学ではナゾの密林だ。てか
証明できん事を証明しましたーーー。をアリガタッてるのか
👤知らんが、あの規格書も、6〜7年前から更新ストップだろ
🤡更新すればする程、矛盾にみちた内容になってるかも
👤もはや、矛盾してるかすら解かんないとちゃう?
🤡ノーコメントとする。てかランベルトよ、
「Crを無視する」というロジックは、1行目で真かつ
k行目で真と仮定してk+1行目が真を証明が必要だ
👤てかよ、kは整数かつ1以上が必要だろ
🤡どちらかというと十分で微かにダチョウだよ
👤んーー、kは整数かつ2以上が必要 といえば十分か
🤡話しが長いな。てかゲーデル不完全性定理と関係ありそ
👤それ以前に我が星、ランベルト星の数学・論理学は矛盾許容だ
🤡それ、完全性定理ぢゃねーーー?
👤どっちでもok ∵矛盾許容
🥳ポクも宇宙人に産まれ変わりたいデーース
VTも使うTSV形式はこんな感じか。 行末のCRLFは無くても問題ないが あった方がテキストエディタで開いた時に見やすくなる セルA1␉セルB1␉セルC1␋␍␊ セルA2␉セルB2␉セルC2␋␍␊ ASCIIが想定していたUSやRSの使い方はこんな所だろうか セルA1␟セルB1␟セルC1␞␍␊ セルA2␟セルB2␟セルC2␞␍␊
🥳 てかプロマネさ、エクセルに CSVの文章貼り付けるときどうしてる? 🤡 んー「,」の半角は tab に置換えてから、コピペ 🥳 「123,ABC」を「123tabABC」 てやって、A1セルに貼付けても A1セルに「123tabABC」って表示されたよ ウッソ付きーーーー! 👤 地球人って・・・ 🤡 地球人でも、かなり、・・・・ 👤 こんな文章を、書き込む奴も・・・・なのか? 🤡 ノーコメントとする。
セルの列やセルの行を区切るのに制御文字を使えれば セル内に,や”を入れたり改行することもできるんだよね
🤡 多分、タブの制御コードは、␉ って感じだ 🥳 タブはHTなの?、ポクは英語バッチリ [Tab]ぢゃーーーん キーボードにHTなんてマークのキーは見つからん 👤 キーボードの[Tab]にマジックでHTって記入しちゃえー!
垂直タブはキャレット記法で^Kだけど PC-98のDOSで↑キーを押すと^Kが入力されたのを思い出した 他には→キーを押すと^Lが入力されたと思う
>>787 の自称宇宙人の👤が
「Cr単独で改行アリエナイ∴Cr無視」とか言ってますが
ヘンですね。
というか、'xxxxx␍yyyyy'は、ポクの
メモ帳で開いたら
xxxxx
yyyyy
でちゃんと改行されて表示ですよ。
改行がCr単独なんてアリエナイ なんて
勝手な前提しちゃいけません。レッテル論法禁止🚫🈲🙅
by 🤡
👤 give up てか今日はバィバィ。さよならーーー
GUIでCR,LF,HT,BS,DEL以外の制御文字を ソースコードなどに手動で入力して使う事がほとんど無いのは キーボードに専用のキーが無いからなのかね? CUIではCtrlとアルファベットキーの組み合わせで入力できたけど GUIではショートカットキーとして使われていて制御文字は入力できないし C1制御文字に至ってはさらに馴染みがない。 制御文字をもっと活用すればエスケープ文字が図形文字のために その文字を表示するために特別な入力をする必要も無くなるのに。
>>797 OS9, AppleII, commodore
IPAmj明朝のIVSって、2017年ので止まってるの?
あたらしめのIVSを使おうと思ったらグリフがないくさいので
>>799 は正解くさいので違うフォントを使うことにした。
「IPAmj明朝は、IVD 2017-12-12 Moji_Johoコレクションに準拠してIVSを実装してあります」と説明されているとおりで、他のIVSに対応する目的のものではないから、更新が止まってるとかではないような
>>802 Moji_Johoコレクションは数年おきにアップデートされている
「IVD 2017-12-12 Moji_Johoコレクションに準拠」という説明は、同時に「2017-12-12版以降
には対応しない」という意味でもあるのかなと思っている
PowerPointでShift+Enterを押すと垂直タブを入力できるようだけど 他のソフトでも垂直タブがShift+TabやShift+Enterで入力できるのが標準になっていたら 垂直タブはもっと広く普及していただろうか
CSVとTSVを比べるとTSVの方がテキストエディターで開いたときに見やすいから便利だと思うんだけどCSVにはどんな利点がある?
>>806 いちおうTABもSpaceもcommaもCRもLFも個々に「文字コード」ではある。いわゆる文字符号化手法とか符号化文字集合ではないが。
文字コードは曖昧で意味広すぎ
>>805 CSV の利点は制御文字(cc)ではなく表示文字を使っている点。TAB はccなので表示系によっては見た目で区別できない場合がある。典型的にはスペースと見間違える(1文字TABはスペースと同じアキになる可能性
常にTABとスペースが正確に区別できる環境ならTSVの方がだんぜん便利だと思うが TAB は普通の文字じゃないことも文字コード設計として念頭においておくべき
あと unicode にはスペース類似文字もカンマに似た文字も多過ぎるので、どのみち見た目で区別は駄目という話はある、酷い話だ。
「慶応」も「コンクリート」も漢字1文字で 〜Unicode標準に新しいブロックが提案中
手書きでしばしば用いられる「部首+カナ」スタイルの略式漢字
https://forest.watch.impress.co.jp/docs/serial/yajiuma/1597030.html UTF-8は日本語だと明確に指示していないと、漢字が中国の漢字が入り込んでしまう。
UTF-8で記号がたくさん追加定義されて、MS-IMEがめちゃくちゃだから、変な記号を使う日本人が激増した。
変体仮名で限界 用例を見たが、それ以上の歴史的重要資料が大量にあって デジタル化の必要性があるとは到底思えない 英字アルファベットも代表的なカリグラフィーを収めて終了 unicode標準は局所的な特定小集団のおもちゃじゃない
>>810 従来の漢字、特に中国の簡体字等、読みの同じ部首やつくりで置き換えて文字を
作ったりとかはあるので、発想としては近いものを感じる
UnicodeData.txtをあたらないと何を表してるのかさっぱり分からん絵文字よりは まだその手の略字のほうが有意義な気はする
>>808 Firefoxだと表示できない文字は□の中に16進コードが書かれた文字が表示されるから
同じようにテキストエディターでも制御文字と空白に見える文字は空白を表示する代わりに
16進のコードが表示されれば分かりやすくなるね
>>810 標準に滑り込ませて既成事実化するよりも、
草の根で外字フォントを配るのが良いと思う
>>818 草の根で外字フォントを配ってなんとかなることだったらわざわざ標準化する必要なくね?
外字フォントを配るぐらいにとどめておいた方がいい以上の根拠なし意見でしかないぞ。それ。
>>818 それを全国の市町村の役所でやって既成事実化できずただただ氾濫して手に負えなくなったんよ
役所は文系ばかりなのでとんでもないことを平気でやらかす
>>793 98に限らず
hjklで←↓↑→替わりにしてる環境は割とある
unicodeだと同じ文字に見えても違うコードポイントの文字が多いから テキストエディタにもコードポイントを表示する機能と バイナリではどう記録されているのか表示する機能が欲しい バイナリエディタでは折り返しが16バイト毎の固定で文章入力しにくいから 折り返しを16バイト毎ではなく0x0D0Aにできるバイナリエディタのような感じかな
絵文字とか異体字セレクタとかもあるし、とりえあえず文字(グラフィームってやつ?)の 境界を見つけるのが面倒だよね 文字境界を探すライブラリとか、今ってそこら辺もちゃんと動く感じ?
Ruby では、
https://qiita.com/QUANON/items/2539feed89cee2290664 couple = '👨👩'
p couple.length #=> 3
# \X Unicode 結合文字シーケンス (eXtended grapheme cluster) (?>\P{M}\p{M}*)
p couple.scan(/\X/).length #=> 1
# \u{0308} はウムラウト
p euml = "e\u{0308}" # "ë"。"〜"で囲む
p /\X/.match(euml) #=> #<MatchData "ë"> ウムラウト有り
p $&.codepoints #=> [101, 776]
# \w 単語構成文字 [a-zA-Z0-9_]
# \W 非単語構成文字 [^a-zA-Z0-9_]
p /\w/.match(euml) #=> #<MatchData "e"> ウムラウト無し
p $&.codepoints #=> [101]
p couple.chars #=> ["👨", "", "👩"]
p couple.grapheme_clusters #=> ["👨👩"] 書記素クラスタ
# U+200D は、Zero Width Joiner (ZWJ: ゼロ幅接合子)
couple.each_char { |chr| puts(format('U+%04X', chr.ord)) }
# U+1F468, U+200D, U+1F469
(euml + couple).each_grapheme_cluster { |chr| puts(format('U+%04X', chr.ord)) }
# U+0065, U+1F468
# つまり先頭文字である、'e👨' だけになる
Macなんて日本語でも英語のUTF-8と決めつけるから、SJISですらうまく打てない。
>>810 その記事は時代に逆行している変な人間の記事だな
手書き文字を登録しろと言い出すと無限に定義するはめになり、見た目の区別もつかなくなる。
JavaScriptの識別子に中黒が使えるようになった
https://nanto.asablo.jp/blog/2024/06/07/9690975 JavaScriptの識別子(変数名、関数名、プロパティ名など)の2文字目以降に中黒「・」(U+30FB KATAKANA MIDDLE DOT)が使えるようになりました。以下のコードはChrome 124では構文エラーになりますが、Chrome 125では問題なく実行できます。
const シン・ゴジラ = 2016;
中黒が使えるようになったのは、JavaScript(ECMAScript)の仕様が変わったからではありません。変わったのはUnicodeの仕様のほうです。Unicode 15.1.0(2023年9月)においてOther_ID_Continueプロパティ(を持つ文字の集まり)に中黒が追加されました。
>>828 異体字はこんな風に生まれたんだろうけど
と高みたいに両方ともUnicodeで基底文字として扱われてる文字と
異体字として扱われる文字の違いは何なんだろうな
>>831 中国人/台湾人の辞書や文字コード表に記載されているかどうか。はしご高は台湾漢字由来だったか
日本の異字体はIVS使うことにしたので最近は登録申請すらほとんどしてないけど、中華人民共和国は今もがんがん本体に追加要請してる
>>832 「異体字」を「異字体」と間違っている時点で説得力なしw
>>833 この場合は「異−字体」であってるんだよ。「異体−字」は個々の文字を指す。
そういえば、斉藤なんかの「さい」の異体字はすごい数あるな もともと難しい字で、戸籍登録の際の書き間違いが原因らしいけど
異体字と異字体
https://www.ytv.co.jp/announce/kotoba/back/2001-2100/2036.html#: ~:text=%E3%81%AE%E8%A9%B12038%E3%80%8C-,%E7%95%B0%E4%BD%93%E5%AD%97%E3%81%A8%E7%95%B0%E5%AD%97%E4%BD%93,-%E3%80%8D%0A%0A%E6%96%B0%E8%81%9E%E7%94%A8%E8%AA%9E
CJK統合漢字拡張もいつの間にかI(アイ)まで来てるのかあ どこまで行くんでしょう
>>838 中国さんが飽きるまで
とはいえ中国さんは、日式異体字とか辞書に載せて、辞書に載ってるから申請とか、留まるところを知らない
>>834 それさ、同じ漢字と、字体違いの漢字を同一だと思っているでしょ?
同じ意味の漢字と、見た目違いの同じ意味の漢字は別物だよ
>>840 異体字≡異体文字
異字体≡異体
この2つは当然べつもの
>>841 漢字の話をしているだぞ?
漢字は意味が違ったけど同じになったもの、新しい漢字を作るときに位置が違ったもの、わざと創作した存在しない漢字などがあり、字体違いだけでなく書体違いもあり、あなたのこだわりは漢字そのものをわかっていない。
「漢字Aと漢字Bは〇〇の関係にある」 この〇〇には異体や異字体は入るが、異体字や異体文字は入らない。異体字は字体の関係性ではなく個々の文字を指す用語。 「異なる字体」と言いたい場合は「異体/異字体」を使用する。 「字体」とは文字の骨格となる構成を言う。「字形」や「書体」とは違う概念
>>844 漢数字のゼロを丸印だと思っている方に言われたくない
>>846 すまん。アンドロイドで「まるまる」で変換しただけで思ってるとか無関係。
>>848 俺の使ってる google 日本語入力だと「まるまる」の候補は〇〇、丸々、丸丸、円円 (カナやローマ字以外だと)4つだけだな。
この謎の漢数字の〇〇って「ひとふたまるまる」とかの軍隊時間呼称とか用なんだろうか? でも「人蓋〇〇」とかになるな
中国が日本語を担当しているせいで、日本人が「まる」と入力したときに零だと勘違いしているだけだ。 大日本帝国の末期の用語みたいになっている。
変換候補に出てくる文字の説明がちゃんと出てくるものを使わないと
異体字セレクタって、無闇に使うと問題あったりしますか? 例えば対応してないシステムやアプリ上で使うと何か問題が発生するとか
>>855 規格にちゃんと従っていれば検索時には無視してくれるので大丈夫
現時点で規格をちゃんと実装してないやつの方が多いってのは棚に上げておく
見た目が似ている横棒がUTF-8でたくさん定義されてしまって面倒なことになった。
あいつら漢数字の一まで一緒にする気マンマンだったんだぜ
>>857 データベースないのかな?
0221以外のJISにない文字も含めた奴
1(いち)とI(大文字アイ)は、フオントによっては、 見分けは、サッパリなぐらい、そっくり ていうか、住所全角入力でハイフンの全角が スマホからダメだった。仕方ないからパソコンで 入力したら上手くいった。 住所全角入力させるシステムってシステムのバグなのかな❓
それよりサンセリフの I と l の区別がつかん 欧米人は大雑把でいけない 昔のタイプライターでは Il1を同じ文字、O0を同じ文字で代用していたらしいので伝統文化なのかもしれない
>>860 画面はUTF-8なんだろうけど、うしろにメインフレームのシステムがあるんだろう。
一文字に3バイト使う日本語でないとキャラクタセット変換が面倒なんだろうな。
記号類は見た目が似ているからといって入力しやすい文字で代用しないで Unicode Code Chartsに書かれている意味を調べて本来の意味の文字を選んだ方がいいよね だからこそ入力する時に変換候補に文字の意味も出てほしいし テキストエディターでも文字のコードポイントを表示する機能がほしい
キーパンチャーの頃は単に部品減らしたいから代用したんでしょ
いわゆる漢字検定ってありますよね あれで「標準字体」とか「許容字体」とかあるけど、どういう基準で決められているか どなたかご存知ですか?
>>866 検定協会が勝手に決めてて知りたければ協会の出してる本を読めということになってる
いちおう総務省や国語審議会などの文献を参考にしている建前になってるけど詳細は独自基準
>>867 なるほど。単純な字形のデザインとしてはあまり統一感のない部分があったりして
少なくともそういう方針ではないんだろうなあと思いました。
記号の意味と言えばWAVE DASH / FULLWIDTH TILDE問題で 日本語で使うのはWAVE DASHの方が正しい意味なのに FULLWIDTH TILDEの方が普及してしまっているのがあるね Windowsで[Shift+へ]を押した時に波ダッシュが入力されるように キーアサインを変える方法はないのかな
すぐ2500P+2500P手に入ります。
記号の意味にこだわる、ですか 例えば歌とかで音を伸ばす記号はWAVE DASHじゃなくて別途なんちゃらSOUND MARK みたいなのが必要、ということになるのかね そういえば"-"はハイフンなんかマイナスなんかどっちやねん 同じく"/"もソリダスなのかスラッシュなのか というわけでそもそもASCIIの時点でグダグダという説は
てゆぅうか、 小文字のエル(l)と、大文字のアイ(I) 見た目、ソックリぢゃーーーん。 てゆぅか、dataURLとdataURI って違う❓ てゆぅか、dataURLとdataURI って同じ❓ てゆぅか、プログラミング言語の PL1は、PLIらしいけどマジなの❓ てゆぅか、「水」と「木」って似てるぅ。 てゆぅか、UTF-8っていいねー dataURIてゆうか、dataURLてゆぅか Base64の文字列は、UTF-8に変換しても Base64の文字列のままだろう。 容量が増えない。よな❓ 違う❓合ってる❓ てゆぅかさ、UTF-8は廃止してさ、 地球人は、1byte文字は、ASCiiとし、 漢字・🇨🇳語・漢語は、廃止してさ、 絵文字💙🖤🟨🤡🥳🧊を2byteにする 超UTF-4 UTF-4 超UTF-4 を策定しなさーーい てゆうか、ハンドルネームは絵文字対応してないの❓
えー、875アタマ変ですよ。てか自分だった(・o・;) ❌ 超UTF-4 ◎ 新UTF-16 だろ、ま、新UTF-8でもよいが ま、ASCiiが8bitで格納されりゃ、何でもUTF8でよいのぢゃ てゆうか、顔文字(・o・;)とかってアロゲート文字だよな❓ 複数の文字で一文字だし、四文字熟語もアロゲート文字❓ てゆうかさ、文字を接着させたのがアロゲート文字ポぃし アロンアルファ文字って改名しなさーーい てゆうか、アロンアルファは商標なのかな❓
あっえけねぇーーー アロゲート文字ぢゃなくて サロゲート文字だった。誤字ってしまった てゆうか、アとサって同じ字体に しなさーーーい。テへペロッ👅👅👅
ISO-10846-1 と Unicode と UTF16 全部違くアル❓ってゆぅか違くナイ❓ どっちも正しくナイ❓ って優香、 地球の解説書の文章、 プログラミング言語よりイミフ by 🥳 タブン、ゼッタイ、ソレラワ、オナジ by 👤ジシヨウ∧ウチユウジン
javascriptの関数てか、オブジェクトてかメソッドてか String.fromCharCode() なんだけど、引数は UTF-16 らしい。 で、ですが、今から、引数にUNICODEてかUCS2を指定 してString.fromCharCode()により生成の文字が 化けるか試験、只今実施中 とにかく、地球人の言語イミフだけど UNICODEとUCS2とUTF16 同じだよな。❓ 因みに、引数にSHIFT JISコード指定したら 文字化けちゃったーーーーテヘ👅 BY 🥳
🟦🟦 ポクは、🟦🟦ミクロソフト星人 です。 なに、Javascriptのその引数がUTF16っていうルールなのかな? てかさ、ミクロソフト星人語にUTF16を翻訳すると 単に「コードポイント」もしくは、 単に「UNICODE」だもんねぇーーー ちなみに、ポクの子孫のエクセル星人は、 EXCEL関数にUNICODE関数があって それの逆関数だけど、EXCELはJAVASCRIPTじゃないしーー て、ゆぅか、SHIFT JIS関数なんてのは 存在しないぽぃぞ。んーーー ANSIとか、今どうなっちゃったの❓ 地球から消えてるぞーーー。関数がない。 でも、手元のデータは、SHIFT JISダラケだ。 因みに、JIS X 0208とかいうJISコードの 関数は、今でも存在する。 UNICODE関数ぢゃなくて、単にCODE関数。 てか、SHIFT JISとかUTF8とかグダグダな仕様なのに なんで、そんな文字が地球のファイルに 沢山有るんだろ。へんなの BY 🟦🟦🟦🟦 初登場かものミクロ星人でした--ー
バイナリファイルがShiftJIS なんだけど、普通のJavascriptでそれ表示ダメぢゃーーーん 仕方ないから ShiftJISをUTF16に変換するJAVASCRIPT作るハメになった ShiftJISからUTF16への変換って規則性がヤバイってyouか 規則性がナイようだ。 ま、第2〜4水準までやるのは面倒なので、 英数字と第1水準とついでにやる程度にサポートを絞り込み ShiftJISからUTF16への変換するのを作るハメになった てか、javascri◯tって使えねー てか、ShiftJISが使えないんだよな。 日本語終わった-ーの❓
バイナリファイルがShiftJISってどういう意味よ そもそも日本人が書いてるかすら怪しいが
🤡チミは地球人だろ 👤オレハ、ウチュ〰ジン 🥳地球人ぢゃないのー❓ 👤オレハ、チキュジンだから、オレハ、ウチュ〰ジン 🤡んー、ヒトは動物だけど、チミは❓動物❓ 👤ウチュ〰ジンハ、ショクブツデハ、ナイアル 🤡ま、あのファイルのオフセット0〜253byteは、 あのファイルの元となったファイル名で、 ファイル名はテキストだから、それはバイナリとゆうか テキストで、簡単には、shift jisだ。 👤てか、テキストファイルを暗号化したら、 テキストファイルではなくバイナリファイルだろ 地球人、ニホンゴヘンある。 🥳てか、地球人は言語力は能力は無アルねぇ! 👤ま、あのオフセット0〜253byteㇵ、 1byte文字つまり半角は、0x00を付加して2byteとし、 2byte文字つまり全角は、とにかくansiだな。 それで、全ての文字を2byte/文字としたunicodeだ uni uni uniコードだ 🥳ウチュ〰ジン、イミフ明。すごいー。 🤡てか、あれ、FAT32 WIN98SE OFFICE97頃に 作成されたファイルだ。 今風に翻訳すると、SHIFT JIS + UTF16 ポぃ感じ ま、第1水準漢字と半角英数字+α程度しか 使ってないないので、解読は、割と楽勝 🥳絵文字は❓ 🤡そもそも、そんなの当時は存在しない
>>832 これって、どうなっちゃってるの?
「異体字には別のコードポイントを与えない」っていうからIVSを作ったのでは
でも結局それを真面目に守っているのは日本だけってこと? 中国は許されてる?
もうそろそろ、Windowsのテキストファイルの文字コードは BOM無しUTF-8ということに決定してもよろしいか?
>>886 中国政府様が載せてくれないなら別の文字コード作って中国国内ではそっちを使うことを強制にするがよろしいか?
という強行姿勢を暗に匂わしたので折れて中国は好きなだけ漢字を申請できる方向になった
さらに一面まるまる使って漢字とは別に甲骨文字登録する方向で検討中
>>887 Microsoft はとうにその方向に決定している
今は過渡期で古いのが混在している状態
あれは、なんとか.caption内の文字を Asc関数でコード化してファイルに格納。 結果、Shift Jisとなった。ようだ by 👤 よく思い出せたな by 🤡
ちぇっ、あのユニコードが、嫌いなのは、 3byte/文字 というのは、準建て前で ホントの(嫌いな)理由は、 文字数が決まってもbyte数が変動するから。 て、ゆぅか、UTF8は、可変長だからUNICODE ですなんて、デマは修正しようよ てか、SHIFT JISも、半角と全角で BYTE長が変わるから、UNICODEぢゃないけど ま、1BYTE文字と2BYTE文字だけだから許してアゲル て、ゆうか、UTF16のサロゲート、あれ何よ 1文字=2BYTE という機能を喪失してるぢゃーーん。 て、ゆうか、メモ帳UTF8やめて、UTF16かつサロゲートなし にしてさ、そうだ、第二〜第四水準漢字は、 絵文字を割り当てる、超最新UTF16を策定してよーー ま、UTF32も惡くないけど、4byte/文字は 容量がデカい。ま、CPU的に今日は、64bitアドレスが 常識な今日おいて、UTF32、UTF64もアリと 言いたいとこだが、ファイル容量的なことを 考慮すれば、UTF32は惡だっちゅーーの てゆぅか、UTF8にするぐらいなら メモ帳は、ASCii 7bitだけサポートして UTF7 にしなよーーー。 サクサク、動くかな。てか現状でも メモ帳はサクサクだし、変更反対 てか、サロゲートなしUTF16でいいぢゃーん 絵文字は、第二〜第四水準を喪失させて それに割り当てる。 なんて、なんちゃら真偽会は決断するわけないけどさーー
>UTF8は、可変長だからUNICODE こんなこと言ってる馬鹿は診たことが無い
number(Asc("887"))って🇨🇳人ぽぃ 訛の文章だから、ヨイ在る。てyouか、 Windowsのテキストのファイルの 文字のコードのUTF8のBOMの有無は、 無でヨイ、在る Windowsのテキストのファイルの 文字コードのAnsiのBOMの有無も、 無でヨイ、在る でも、何でも、BOM無しでも、ヨイ有る by 🇨🇳チコゴク セジン アル アル
U+3316㌖のような単位を1文字にしている組み文字は 新聞で紙面を節約するためにあるのかな
>>895 K-JISというやつですか
UnicodeのライブラリでNKFCやNKFDするとちゃんと「キロメートル」になるねえ
そういえば例の「ﷺ」はUTF-8で33バイトにもなった
「キロメートル」は18バイトだからまだまだかわいいものか
BOM無しUTF-8がデファクトになってすげえ大迷惑 SJUSと混在で使ってるとVSCodeが文字化けしまくりだし誤って上書き保存すると二度と元に戻せなくなるし
>>899 では、どういう状況になれば大迷惑でなくなるのか?
そりゃその話の流れだとbomありutf8でしょ ま広まらないと思うけど悪くはない utf8にbomは不要という原理主義は頭固い
>>901 EUCを壊滅させたLinuxや、Appleから「もうSJISなんて面倒見んからな」と念を押した
MacがBOM付UTF-8を採用しなくて、その流れのままマルチOS対応ソースが一般的に
なってWindowsにも降ってきたから諦めろというしか。
MSはやることやったが、10年以上かけてもGitHubとか使わない大半のユーザが
UTF-8どころかBOM付UTF-8にもそっぽ向いてSJIS使い続けたのが悪い。
github とか関係無くて internet は UTF-8 (BOMなし) で国際化するのが当然という風潮が10年くらい前からできてる サーバーまわりが Linux に占拠され、クライアントも主流の android や iOS が UTF-8 以外まともにサポートしてないのが大きい 孤立した世界なら良いが他と通信する前提なら他と文字コードを揃えておくのが楽 Windows はもうマイナー環境だということを自覚するべき
>>903 日本語と中国語が混ざる現象が新しい問題
>>904 それは元がマルチバイト文字圏でなかった地域が主導しているからだよ
英語圏ではUTF-8かどうかすら意識せずに文字が書ける
アスキー文字だけなら、UTF-8の方がいいという判断になった 最低でも16ビットを使って1文字を表現するものが受け入れられないのは、そのひとの使う言語による
英語圏でファイル名に?や/などのファイル名に使えない記号を入れたい時どうしてるんだろう 英語圏でも全角の?や/で代用してるんだろうか
>>909 ?は普通に使えるファイルシステムは多い
/は使えないので諦めて−とか_を使用することが多い
>>909 場違いのスレッドに来てしまったのか?
記号は制御文字に使うので、ファイル名には使えないという前提でコンピューターは進化してきた。
ファイル名にそういう記号なんて使わない。
使っているならその悪習慣はすぐにやめないとトラブルの原因になる。
OSのキャラクタセットに依存するとMacとWindows間だけでもファイル名が同じにならない。
石丸伸二さん取材の最前線
「取材不足」さんのYouTubeチャンネル
https://youtube.com/@shuzaibusoku 「取材不足」さんのX(ツイッター)
https://x.com/shuzaibusoku7 石丸伸二さんは天才ですね!
ファイル名は、windowsは、<は、使えん かつ ファイル名は、windowsは、<も、使えん かつ ・・・ なので、複数のファイル名をwindowsファイルへ 格納は、したい時は、ポクは、 それぞれのファイル名の区切りで<と>を使ってます。 >や<は、shift jisでもUtf八でもケタ数は、違くは アルが、値は、同じアルから、shift jis 最好アル by チゴク🇨🇳人ぽい文章で書き込んでは、みちゃったアル
>>909 英語圏でも全角ってあるの?フォント何使うの?
MS-DOS (FAT)やWindows(NTFS)で使えないからといって全てのOSで使えないとは思うなよ unix/linux 系とかなら / と nul 以外の全ての文字が使用可能 mac だとこれに : を加えた3文字が使えないだけ MSの駄目仕様を前提に議論する時点で間違い
地球人たちよ。オレの霊感では、 shift jis code ≧0x7427 となる 文字は、地球には、shift jis にも utf8 にも存在は、するが 天からのウチュ〰ジンの祟により とにかくヤバイ。そんなの霊感がある。 by 👤ウチュ〰人の成り済まし てゆぅか、shift jis code ≧0x7427 の漢字って何なんだろ。てかウチュ〰ジンクレージー by 🤡 表示するぐらいなら祟られないよ。 なんか、イロイロとテストすると変だけど by 🥳
>>917 MS信者の悲しい「現実」は世間の現実ではない
て、youか、windowsのファイル名って 半角spaceとか、,とか文字ぢゃないのも使える ような気がする。まったく、ダメな仕様だ 複数のファイル名を ,区切りで ファイルなりエクセルに保存しようとすると ヘンになっちゃうぢゃーーーん。 これだから、Micr○S゜ftはダメなんだよな。 ファイル名は、ASCii文字(制御コードは除く) だけ使えるようにしなさーーい。てゆうか ファイル名に絵文字とか使えるにはしないでね。 ファイル名を格納するアプリとかバグりそうぢゃーーん。 てか、JIS X0213ってSJISだと思ってたが どうも勘違いしてた。m(__)m たぶん 単なるJISかも知れん。てかヨクわからん。 ブツブツ・・・
ここで質問しても知ってる人はいなさそうな気もするけどダメモトで (長文失礼)。 Win10 以降のコンソールでは (conhost でも WindowsTerminal でも) "chcp 20932" で表示を EUC-JP にすることが出来ます。 この 20932 というコードページ、補助漢字 (JIS X0212) に一応は対応してるものの、切り替えに SS3 を使わない、という MS らしいなんちゃって仕様で、 これを知ったとき そのド変態ぶりに愕然としたものです。 それはまぁいいとして、今回の質問は 20932 ではなく、MS のもう一つの EUC-JP (であるらしい) 51932 についてです。 いくつかのサイトで MS の EUC-JP は 51932 である、という記述が見られるのですが、Win10 や Win11 で "chcp 51932" としてもエラーになります。 10 年以上前と思われる記事にも書かれていて、どうやら 51932 は補助漢字には対応してなかったらしいので、昔は 51932 が使われていたのだけど現在は廃止して、20932 に変更したのかと思ってました。 ところが最近、自宅のマシンに Win95 以降 (WinNT は 3.51 以降) の全ての Windows バージョンを仮想環境に載せたので (このために載せたわけじゃないけど)、 それらのコンソールで片っ端から "chcp 51932" を試して見たのですが、全てエラーになり CP-51932 が使える Win バージョンは一つもありませんでした。 年のため Win-API の MultiByteToWideChar() なども試しましたが結果は同じでした。 とすると、51932 という CP はどこで使われていたのでしょうか? IE だけで使われていたのか、とも思われるのですが、この辺の経緯をご存知の方いらっしゃいませんか?
>>923 過去に IE とか一部アプリで文字コードを EUC-JP に設定した時に使用されていた文字コードが CodePage 51932 だった
EUC-JP といっても正確には文字の種類が CP 932 と同じ(補助漢字がないかわりにNEC拡張漢字とIBM互換NEC拡張漢字がある。要はCP 932を機械的 SJIS → EUC-JP 変換しただけの)ものだった
>>924 こんなに速くレスもらえるとは! 早速の回答ありがとうございます。
やはり IE で使ってましたか。「一部アプリ」とは C# とか VB などの .net 系言語ということですかね。
前記したように Win-API の MultiByteToWideChar() には 51932 を指定出来なかったのですが、
書かれているように CP932 からの機械的な変換であれば大した処理ではないので、WinAPI を通さずに .net ローカルに実装していたのかも知れませんね。
>>916 使えるから使うではMacを使っているメリットを失う。
Linux・UNIXと共通のものがCUIで使えるというメリットをつぶすのは狂っている。
>>920 それはWindowsの特徴ではない
自然言語をそのまま使えないかという発想の歴史は古い
エスケープシーケンスの実装というまた別の問題を引き起こしているが
最近はJISの話題に触れない人間が多いけど、EメールはJIS。 JISのものを日本語環境で開くとSJISに変換されていたりして気づかないだけ。
>>925 CP51932はマイクロソフトがWindows用に用意したEUC-JPで大昔から使えるものだぞ?
日本マイクロソフトと日本IBMはいまだに自社が拡張したキャラクタセットを使ってくるから面倒なんだよない
日本語は絶対に ISO-2022-JP でなければならない、ってこともないはず。 今時のメーラーならたいてい UTF-8 も使える。
>>932 Eメールソフトの世界はUTF-8が標準にはなっていない
EメールをHTMLにしたがるIT大手はキャラクタセット問題を気にしてHTMLメールに誘導している。 Google社なんてモロにそう。
あとはSMTPUTF8を使ってメールヘッダーや本文のUTF8を Base64などにエンコードしないで送るのが当たり前になったらいいんだけどね こんな実装になっているメーラーはあるのかな
通信プロトコルまでUTF-8でやっていると思うレベルの低下は怖ろしいな
>>933 一つに限定されてはいないってことだ。なんのためにMIMEやなんかの規格でいろいろ定めてると思ってる。
標準というならUTF-8も標準の一つ。
>>938 日本語が不自由な人かな
EメールはJIS
UTF-8が標準にはなっていない
というのに反論したつもりだが
UTF-8は「標準」だ。 この文の解釈は難しい。そもそもキャラクタセットそのものが標準化だからだ。
>>1 もう「文字コード」というタイトルはやめないか?
>>930 確かに CP51932 は MS の昔ながらの EUC-JP、とされてるようですが、状況的には CP51932 が OS レベルでサポートされたことはなく、.net レベルのサポートに留まっている
というのが結論と思われます。
OS レベルでサポートされているのは CP20932 の方でしょう。
ところでちょっと訂正。
>>923 で、"chcp 20932" が使えるのは Win10 以降と書きましたが、実際は Win2000 から使えるようです。
もっとも Win10 未満のコンソールでは "chcp 20932" すると日本語フォントが選択出来なくなるので、使い物にはなりませんが。
一方で、Win-API の MultiByteToWideChar() は Win2000 以降であれば CP に 20932 を指定して EUC-JP → Unicode 変換が可能のようで (マッピングの詳細は調べてませんが)、JIS X0212 → Unicode も変換出来ました。
SS3 を使わずに X0212 にシフトするという変態仕様も、この頃からだったんですね。
>>944 略語が気になって何を言いたいのかわからない
「Windows 10 未満」という表現はわかりにくい。 Windows Serverを無視したWindowsの話はプロっぽくない。
日本語環境でEUCが廃れたのはEUCとSJISが混在したシステムで漢字が入れ替わる問題に対処するため、SJISに統一する流れができたからだ。
>>946 申し訳ないのですが、こちらの仮想環境に Server Edition までは入れてないので検証出来ないです。
とは言えカーネルの対応は付くので、それほど曖昧性はないはずですが。
「Win10 未満」であれば「Windows Server 2016 未満」ということですかね。
もちろん正確な情報が必要な場合は、個別に検証して頂く必要があると思います。
>>945 どの略語が分かりにくかったでしようか?
>UTF-8に統一 は可笑しい UNICODEに統一してencodingをUTF-8にしろ
>>944 たぶんSS3とX0212じゃない?とはいえテレビから降ってくる文字を変換するような事
しない人には永久に知らない世界な気がするけど。
>>948 そもそもWindows 10の初期状態を知っている人間なんてほぼいない。
もう何年前のOSの話をしているのか?
>>953 EUC-JP の仕様を知らずに書いてる人だったんですね。
まぁ今知らないのであれば、今さら知る必要はないとは思います。
EUC-JPとSJISは漢字のマッピングが微妙に異なるからEUC-JPは使われなくなった。
今もメールはISO-2022-JPが40年近く使われ続けているし ここは文字コードスレだから それとEUC-JPとシフトJISの三すくみの日本に ユニコードが来て符号化はUTF8に統一されたといういきさつは知っておいてほしいかな
プレーンテキストだと、まだISO-2022-JPは使われている
EUC-JP が廃れたのはそれを使っていたUnix系が UTF-8 を採用し置き換えが進んだせい Linux は率先して UTF-8 化された SJIS は全く関係ない メールに関してはメーラーやその設定によるけどJIS第二水準までの文字までしか使ってなければまだ ISO-2022-JP だがそれ以外の文字があると勝手に UTF-8 の切り替えるのが一般的になってる
そういや区点コードもほとんど使われんようになったな。
ギャグついでに 馬 C7CF 474F 鹿 BCAF 3C2F
>>967 区点表記だと
馬 39区47点
鹿 28区15点
>>968 おまえ絶望的にセンス無いのに
よくこの業界に居られるな
>>966 She never eats NONI.
日本語の濁点や半濁点は結合済み文字を使うのが一般的だけど ℃は結合済みのU+2103ではなくU+00B0とU+0043を組み合わせる方が推奨されてるんだね
か に濁点で が だけど か に◯をつけたい。です
Unicodeの記号は見た目はほとんど同じでも 意味が違えば違うコードポイントが割り当てられているから Unicodeに登録されている意味の記号を使いたくなるが 互換文字とかの非推奨の記号もあるんだな 非推奨の理由は文字のルーツが関係してるのか
そろそろどうにかならんのかい PowerAutomateのshift-jis CSV問題は
UTF-8からUTF-16への変換がうまくできないのが互換性を維持しているWindows
>>983 さすがにそんなことはないだろ
ぐたいれいがあったらおしえて
>>984 話の流れを無視しているようだが、濁点、半濁点付きの仮名文字などは簡単じゃない。
>>985 その辺の条件はUTF8とUTF16で完全一致なので変換自体で問題になる要素はない
ISO8859投稿テスト NBSP ¡ ¢ £ ¤ \ ¦ § ¨ © ª « ¬ SHY ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ
なんで28個で折り返してるんだろω
JISキーボードだとBackSpaceの左のキーは¥で Shiftの左のキーは\が書かれているのに どちらを押しても0x5cが入力されるのも変な話だね
もともとJISキーボード規格にあったのは¥だけなんだけど IBMが\を追加しちゃったからなんとなく0x5cを割り当てただけ。
>>995 そもそもキーボードの前に文字コードとしてJIS X 0201 で 0x5c には¥が割り当てられててバックスラッシュは存在していない
JISキーボードはもともと JIS X 0201 入力用なので¥を押したら 0x5c になるのが当然
その後にIBMとかマイクロソフトとかの国外勢が世界標準(アメリカ標準)のバックスラッシュを持ち込んでじわじわと 0x5c を¥記号から奪っていった
-curl lud20250123174514ncaこのスレへの固定リンク: http://5chb.net/r/tech/1677826018/ ヒント: 5chスレのurlに http ://xxxx.5chb .net/xxxx のようにb を入れるだけでここでスレ保存、閲覧できます。TOPへ TOPへ
全掲示板一覧 この掲示板へ 人気スレ |
Youtube 動画
>50
>100
>200
>300
>500
>1000枚
新着画像 ↓「文字コード総合スレ part14 YouTube動画>1本 ->画像>14枚 」 を見た人も見ています:・文字コード総合スレ Part10 ・文字コード総合スレ part13 ・十文字青 総合スレ77 ・十文字青 総合スレ74 ・十文字青 総合スレ69 ・十文字青 総合スレ68 ・十文字青 総合スレ67 ・【DQMSL】ドラゴンクエストモンスターズスーパーライト非課金スレpart2406【コテ・顔文字・課金禁止】 ・顔文字総合^^ ・捏造、不正論文、総合スレネオ60 ・顔文字総合 ・2022 FIFAワールドカップ−カタール大会総合スレ Part15 ・2022 FIFAワールドカップ−カタール大会総合スレ Part10 ・特撮スタッフ総合スレッド【監督・プロデューサー etc.】Part25 ・アイドルマスター ライブ・イベント総合スレ Day332 ・文字総合 ・【DQ10】アスフェルド学園総合スレ 19限目 ・新日総合スレッド2781 ・世論調査総合スレッド445 ・東急電鉄車両総合スレッド106 ・首里手総合スレッド ・高校生ドラフト総合スレ part9 ・文字コラスレ その9 ・★航空祭総合スレッド497☆ ・kao:顔文字[スレッド削除] ・NHK総合を常に実況し続けるスレ 184584 氷室物語 ・【KUN】KUN&50人クラフト総合スレ【参加型】part4 ・NHK総合を常に実況し続けるスレ 154460 香味野菜 ・顔文字(^^)専用スレ ・第27回参議院議員通常選挙総合スレ16 ・顔文字なんでも雑談スレ■5 ・【バトロワ】APEX LEGENDS 配信総合スレpart307 ・【KUN】KUN50人クラフト総合スレ【参加型】part41 ・適当に絵文字をのせてくスレ ・NHK総合を常に実況し続けるスレ 129820 修正 ・2文字だけで会話するスレ ・菊一文字先生応援スレ ・顔文字叩きスレ ・大学名を1文字だけ変えるスレ ・Jr.総合ファンスレPart 1500 ・輝き顔文字スレ★19 ・顔文字さん開示スレ ・●スーパードルフィーの顔文字● ・原神総合スレ Part3645 ・【SW2.5】ソードワールド総合767【SW2.0】 ・ラーゼフォン総合 ・マヤ文字スレ ・【頭文字D6】痛い奴晒しスレ☆1 ・3文字だけで全てを語るスレ ・セレッソ大阪(1532)@頭文字NJ ・【SEGA】コトダマン 126文字目 ・【SEGA】コトダマン6文字目 ・頭文字D vs 湾岸ミッドナイト ・【XFLAG】コトダマン 320文字目 ・【XFLAG】コトダマン 194文字目 ・【XFLAG】コトダマン 347文字目 ・【SEGA】コトダマン 149文字目 ・【XFLAG】コトダマン 344文字目 ・【XFLAG】コトダマン 234文字目 ・【XFLAG】コトダマン 329文字目 ・【SEGA】コトダマン 80文字目 ・【SEGA】コトダマン 156文字目 ・【SEGA】コトダマン 114文字目 ・【MIXI】コトダマン 389文字目 ・国内MMA総合【修斗・DEEP・パンクラスetc】★18 ・【XFLAG】コトダマン 300文字目
03:45:14 up 10 days, 4:48, 2 users, load average: 7.44, 9.75, 10.39
in 1.7760639190674 sec
@0.047456979751587@0b7 on 012317