2003年には「プレーンテキストなんてものは全く存在しない」と言われ、テキストの解読には文字コードの情報が必須となっていました。しかし、2023年になるまでの20年の間に絵文字などのおかげでUnicodeの利用率は98%へと到達し、再び文字コードを気にせずにすむ時代がやってきています。そんな時代において、正しくUnicodeを使うために必要な知識をエンジニアのニキータ・プロコポフさんが解説しています。 The Absolute Minimum Every Software Developer Must Know About Unicode in2023 (Still No Excuses!) @ tonsky.me https://tonsky.me/blog/unicode/ Unicodeの歴史と利用率の推移をまとめたグラフは下図の通り。2000年代後半から急速に普及が進んでいったこ

皮肉記号(ひにくきごう、英語: irony punctuation)とは、文章中で皮肉(irony)や嫌味(sarcasm)の意味合いを表現するために使用することが提案された各種の約物である。本項目では、約物以外の表現法も含めた、文章中で皮肉の意味合いを表現する各種の方法についても説明する。 皮肉を表す文章には、疑問符(?)や感嘆符(!)のような、皮肉表現であることを示す標準的な方法がなく、いくつかの形式が提案されている。それらの中で、最も古く、最もよく使われるのは、1580年代にイギリスの印刷職人ヘンリー・デンハム(英語版)によって提案されたパーコンテーション・ポイント(percontation point)と、19世紀にベルギーの新聞出版者マルセリン・ジョバール(英語版)とフランスの詩人アルカンタ・デ・ブラーム(ポルトガル語版)によって使用されたアイロニー・マーク(irony mark
2023.05.10 官報に使われる「官報文字」というものがあります。 そこには渡辺さんの「辺」の異体字が140文字も登録されています。 日本語の常用漢字には2136文字ありますが、そこには邉や邊などは入っていません。 そこでJISの第四水準までを含むJIS X 0213という標準を定め、スマホやパソコンではここまでを標準的に表示できるようにしています。 ところが我が国の戸籍で使ってもよいとされている文字はそれを遙かに超えていて、少なくとも55,270文字もあります。 全ての国民の氏名をコンピュータで扱えるようになることを目指して、戸籍統一文字や住基ネット用の統一文字を網羅した「文字情報基盤」を2011年に策定し、それにあわせたフォントを作成し、無償で提供しています。 この「文字情報基盤」(MJ)には、58,862文字が含まれています。 しかし、このMJを全庁的に採用している自治体は、川口

Slack は、メッセージのどこからどこまでハイライトするかを、 Unicode の私用領域 *1の U+E000 と U+E001 を使って表しているらしく、こういうHTML を glitch とかで書いて、 <html> <head> <meta property="og:title" content="Slackでタイトルをハイライトする" /> <meta property="og:description" content="Slackで説明も好きな部分をハイライトする" /> </head> </html> そのページをSlack で展開させたりすることで、好きな部分を勝手にハイライトできて面白い *2 *3。 ちなみに printf "\ue000寿司\ue001が光ったら成功"

大規模文字セットのUnicodeは世界中のあらゆる文字を収録することを目指して策定されており、「溶解する顔」や「妊娠中の人」といった個性的な絵文字も数多く登録されています。そんなUnicodeに登録されている正体不明の記号「⍼」について、ブリティッシュコロンビア大学でソフトウェアについて学んでいるジョナサン・チャン氏がまとめています。 U+237C ⍼ RIGHT ANGLE WITH DOWNWARDSZIGZAG ARROW · Jonathan Chan https://ionathan.ch/2022/04/09/angzarr.html 「⍼」は数学記号用のフォントなどに含まれている記号です。例えば、数式・化学式用フォント「Cambria Math」に含まれる「⍼」を拡大してみるとこんな感じ。カギカッコのような直角と稲妻形の矢印が組み合わさった日常生活では全く目にすることのない

Java 18正式リリース。デフォルトのCharsetが「UTF-8」に、シンプルWebサーバ搭載など新機能Javaの新バージョン「Java 18」が正式にリリースされました。Java 18 is now available! #Java18 #JDK18 #openjdk Download now: https://t.co/hTJU1ZzAWQ Releasenotes: https://t.co/Xdkj5TObNPAPIJavadoc: https://t.co/izFBPlYkd9 Features: https://t.co/3z0l5sXyDX pic.twitter.com/Ct1BvYmDYs —Java (@java) March 22,2022Javaは6カ月ごとに「フィーチャーリリース」と呼ばれるバージョンアップが行われ、そのなかの1つのバージョンが

目的Java における SJIS と MS932 の相違点と、扱う際の注意点をまとめます。 SJIS/MS932 での値を 0xHHHH 形式で表記していますが、1バイト目が上位、2バイト目が下位、つまり big endian (network byte order)です。 いわゆるシフトJIS いわゆる「シフトJIS」には何種類もありますが、主なものは以下の2つだと思います。 SJIS (Shift_JIS)Microsoft が作成したシフトJIS符号化法を、JIS X 0208 に取り込んだもの。 扱える文字集合は当時のJIS漢字(JIS X 0201/0208)の範囲のみ MS932 (Windows-31J)Microsoftは、日本語用の文字セットをコードページ932として管理しており、MS-DOS時代には各OEMベンダーでコードページの独自拡張を許可していた。 しかしW
![[Java] シフトJISの扱い - Qiita](/image.pl?url=https%3a%2f%2fcdn-ak-scissors.b.st-hatena.com%2fimage%2fsquare%2f383fb65c2fc024610c1eb2023b453ba4272d3312%2fheight%3d288%3bversion%3d1%3bwidth%3d512%2fhttps%253A%252F%252Fqiita-user-contents.imgix.net%252Fhttps%25253A%25252F%25252Fqiita-user-contents.imgix.net%25252Fhttps%2525253A%2525252F%2525252Fcdn.qiita.com%2525252Fassets%2525252Fpublic%2525252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%25253Fixlib%25253Drb-4.0.0%252526w%25253D1200%252526blend64%25253DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnFpaXRhLWltYWdlLXN0b3JlLnMzLmFwLW5vcnRoZWFzdC0xLmFtYXpvbmF3cy5jb20lMkYwJTJGOTczNTAlMkZwcm9maWxlLWltYWdlcyUyRjE3NDQyMDk4NTg_aXhsaWI9cmItNC4wLjAmYXI9MSUzQTEmZml0PWNyb3AmbWFzaz1lbGxpcHNlJmJnPUZGRkZGRiZmbT1wbmczMiZzPTM3YjRkYzhiMjg2YTEyZDdkZGFmNGJmM2I5MjBlN2Vl%252526blend-x%25253D120%252526blend-y%25253D467%252526blend-w%25253D82%252526blend-h%25253D82%252526blend-mode%25253Dnormal%252526s%25253Dfc4186c050626b1e6746d813f5eec926%253Fixlib%253Drb-4.0.0%2526w%253D1200%2526fm%253Djpg%2526mark64%253DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9JTVCSmF2YSU1RCUyMCVFMyU4MiVCNyVFMyU4MyU5NSVFMyU4MyU4OEpJUyVFMyU4MSVBRSVFNiU4OSVCMSVFMyU4MSU4NCZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZ0eHQtY29sb3I9JTIzMUUyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1wYWQ9MCZzPTMwZDQ0YTc2MmMyNmZiYzhlYjI3YjgyNmUzNTFlY2U5%2526mark-x%253D120%2526mark-y%253D112%2526blend64%253DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDB5b3NoaTM4OTExMSZ0eHQtY29sb3I9JTIzMUUyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1wYWQ9MCZzPTlhNWI3Y2IyNGVlYWMxODcxMGFlNjBjM2FlMDU5YmQz%2526blend-x%253D242%2526blend-y%253D480%2526blend-w%253D838%2526blend-h%253D46%2526blend-fit%253Dcrop%2526blend-crop%253Dleft%25252Cbottom%2526blend-mode%253Dnormal%2526s%253D3e87f0cf5d5b1b191c585468d6fdd7ed&f=jpg&w=240)
先に結論 CP932 は、Shift_JIS の独自実装 符号化文字集合がいろいろ拡張されている 拡張文字の有無で、Shift_JIS と判別可能 CP932ってなあに? 実はいろいろあるMicrosoftコードページ932 IBMコードページ932PC-9800仕様OEMコードページ932Windows-31J(MS932)Microsoftコードページ932Microsoftが、MS-DOS 用に作った Shift_JIS の実装 IBMコードページ932PC-9800仕様OEMコードページ932 IBM、NECが作った、Microsoftコードページ932 の拡張Windows-31J(MS932)Microsoftが互換性確保の為に、IBM、NECの拡張を吸収した、Windows 用の CP932 CP932 といったらほぼほぼこれを指す MS932 は、Java で

こんにちは。徒然なるままにTweetを眺めていたら、Tanakaさんがこのようなことを呟いていました。 そういやRustのStringにreverseメソッドないなと思ったけど、まあよく考えたらUTF-8で文字逆転させるとか地獄のような話になるしそもそも長さが変わるケースとかあったりしそうで怖いわな・・・(´・_・`) — Hideyuki Tanaka (@tanakh) May 1, 2021 背景等はよくわからないですが、文字列の反転というのは確かに難しい問題ですし、どう難しいのかというのを、ちょっと真面目に考えて解説してみました。というノートです。本文での表記についてこれから文字とそのバイト表現の話をしていきます。文字のエンコードの方式で同じ数値でも色々意味が分かれてしまいますので、本文では以下のように表記することにします。 Unicodeコードポイント(以下、単にコードポイント

美乳テーブルとは 「美乳テーブル」という物がある。 「EUC-JP の文章を Shift_JIS だと誤認識されない様に、EUC-JP 固有のバイト値を文章先頭付近に埋め込んでおく」という物。 具体的に、Shift_JIS には 0xFD と 0xFE が現れず、EUC-JP にはそれが現れるので、その値を含む文字コードを書いておこうという事で、その文字の集合に付いた名前。 “美” = 0xC8FE、“乳” = 0xC6FD。 各文字エンコーディングの事情 但し、これは EUC-JP での話。 一応、文章の先頭付近に日本語の文字を書いておくのは、他の文字エンコーディングでも認識のヒントにはなるけど。 逆に「Shift_JIS の文章を EUC-JP だと誤認識されない様にする」には、EUC-JP にはないバイト値の 0x80〜0xA0 を書けばいいんだろうけど、これは沢山ありそうだから、慎
文字コードの一種であるUnicodeにはBOM無しとBOM付きの2種類が存在します。BOMはバイトオーダーマーク(byte order mark)の略で、Unicodeで符号化したテキストの先頭に付与される数バイトのデータのことです。 今回はUTF-8のBOM付き・BOM無しの違いと確認方法について紹介します。 BOM付き・BOM無しの違いについて プログラムがテキストデータを読み込む際に先頭の数バイトによりUnicodeのデータであることやどの種類の符号化形式を採用しているのかを判別しています。BOM付きのUTF-8であれば先頭の3バイトがBOMであり、<0xEF 0xBB 0xBF>というデータになります。MicrosoftExcelなどのアプリケーションによってはBOM付きでなければ符号化方式がUTF-8なのかUTF-16なのか、またはUTF-32なのか、あるいはまったく別の文字

こんばんは、寒暖の差が激しい日が続きますが、確実に春が近づいているのを感じているWebプログラマーの篠田です。 以前にお話させて頂きました「Web制作で絶対に使ってはいけないエディタ!」で文字コードが重要というお話をしましたが、使ってはいけないエディタ以外でも油断していると罠に引っかかり、文字化けに苦しむというお話をご紹介したいと思います。 テッパン文字コード「UTF-8」 実はWebブラウザで日本語が取り扱える文字コードというのは4種類あります。 簡単にご紹介していきましょう。 創世記に活躍した過去の人「Shift-JIS」 むかしむかし、iPhoneが存在していないWeb界隈でメジャーに使われていた日本語を取り扱える文字コードです。Microsoft製品の基本文字コードとして現在もExcelなどではよく見かけますが、最新のHTML5などで作られているWebページではまず見かけなくなっ

1992年三重生まれ、会社員。ゆるくまじめに過ごしています。ものすごく暇なときにへんな曲とへんなゲームを作ります。 前の記事:無糖の飲みものに砂糖を入れる > 個人サイト >ほりげー >ライターwiki インターネットは文字化けと共にある インターネットが普及して20年をゆうに超える。メール、添付ファイル、Webブラウザなど、様々な場面で我々は文字化けに苦しめられてきたし、今でもたまに苦しめられる。「文字が化ける」と書いて文字化け。そこにはお化けみたいで悪いイメージがあるが、それも仕方がない。読めないのだから。必要な情報が読めないのはシンプルに悪いことだ。DPZの記事を無理やり文字化けさせてみると、こうなる。 でも、一方的に文字化けを避けていては、文字化けと仲良くなれない。文字が化けた先にあるのは文字だ。化ける前の文字ばかり愛していては、化けた後の文字がかわいそうではないか。我々は、化け

リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く