タグ

文字コードに関するaceraceaeのブックマーク (22)

  • ZawgyiとUnicode: ミャンマーの文字の電子化について - にせねこメモ

    まえがき ミャンマーでは公用語としてビルマ語が使われている。ビルマ語の表記にはビルマ文字を用いるのだが、このビルマ文字のインターネット上での使用は、混迷を極めていた。そしておそらく今もまだ…。なぜか? それは、Unicodeという文字コードの標準がありながら、Zawgyiというものが広く使われていたためである。なぜそのようなものが登場し、普及することとなったのか、この記事で解説する。 目次 まえがき 目次 凡例 この記事で使う名称について ビルマ語表記 コードポイント ラテン文字表記について Zawgyiの概説と歴史 Zawgyiとは Zawgyiのダウンロード Zawgyi誕生・普及の経緯 複雑なビルマ文字 ビルマ文字とUnicode 回避策としてのビルマ文字フォントの登場 Zawgyiの普及 Zawgyiの実装 実装の方針 文字の並べ替えをせず、左から右に書く 文字の形のバリエーション

    ZawgyiとUnicode: ミャンマーの文字の電子化について - にせねこメモ
    aceraceae
    aceraceae 2023/12/20
    注釈にもあるけどタイ文字は子音にくっつく母音で左側に書かれるものもそのまま書くとき同様に左側から入力するんで謎の「論理」原則よりすっきりしてていいけど。合字は結局あらゆる組み合わせが必要なことも多い。
  • 絵文字の偉大な功績の1つは「文字コードを統一したこと」

    数字を処理するコンピューター上で文字を扱うためには、文字コードと呼ばれるバイト表現が重要となります。かつては国や言語ごとにバラバラの文字コードを使っていましたが、記事作成時点ではUnicodeにほぼ統一されているといえます。そんなUnicodeへの統一には絵文字が大きな役割を果たしたと、ソフトウェア開発企業のIbexaでシニアデベロッパーアドボケイトを務めるJani Tarvainen氏が解説しています。 Emojis paved the way for UTF-8 everywhere https://developers.ibexa.co/blog/emojis-paved-the-way-for-utf-8-everywhere Tarvainen氏の母語であるフィンランド語には、アルファベットに「Ä」などのウムラウトや「Å」などのリングといった記号を伴うことがあります。これらの記号

    絵文字の偉大な功績の1つは「文字コードを統一したこと」
    aceraceae
    aceraceae 2023/10/05
    たしかに。英語圏でも絵文字表示できるようにするためだけに最初から utf-8 対応してくれてるんでいろいろ捗る。
  • 全ての開発者が知っておくべきUnicodeについての最低限の知識

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

    全ての開発者が知っておくべきUnicodeについての最低限の知識
    aceraceae
    aceraceae 2023/10/05
    最低限の知識というだけあってわりと基本的な話だった。
  • ユニコード15.1に採用された漢字構成記述文字記号|Qvarie

    令和5年9/12にユニコード15.1が正式公開され、CJK漢字拡張-Iの他に“漢字構成記述文字”に指示記号4種、“CJK筆画”に拡張漢字構成記述文字の指示記号が1種類追加されました。ユニコードに採用されていない字の説明がしやすくなったのが重要です。𝚄+𝟹𝟷𝙴𝙵の一部除去指示記号は文字構成要素の一部が削除されていることを示す記号です。 漢字構成記述文字記号をラテン・ギリシャ・キリル各文字体系に応用した例で、ユニコードに採用されていない左右逆になる字形と逆になる字形を説明しやすくなりそうです。画像はにしき的フォントに含まれるユニコード未登録のラテン・ギリシャ・キリル各種字母を漢字構成記述文字記号で説明した例です。

    ユニコード15.1に採用された漢字構成記述文字記号|Qvarie
    aceraceae
    aceraceae 2023/10/04
    なんとも中途半端だなと思ったらすでに大半のものは登録されてたわけね。"漢字構成記述文字は、それによって完全な字形に変換することを目的とはしておらず、単に構成要素の配置を説明するために使用される"
  • アイヌ語仮名「ㇷ゚」に対する正規表現の罠

    導入 アイヌ語は日語と異なり、閉音節(子音で終わる音節)も存在するので、表記の際音素文字であるラテン文字なら、そのまま p, t, k, m, n, s, r などの子音文字を後ろの付ければ良いわけなので、アイヌ語ローマ字表記では、何も問題が生じない。しかし、元々開音節言語である日語に特化したカタカナのような仮名文字で表記する際、鼻音 n は「ン」でなんとかなる(実はそれでもまずい事になっているけどここでは割愛する)が、p, t, k, m, n, s, r, h はどうしようもないので、特殊の捨て仮名(小書き仮名文字)を利用することになっている。 具体的には以下のような特殊仮名文字(通称 アイヌ語仮名)である。 ㇷ゚ -p ッ -t ㇰ -k ㇺ -m ㇱ -s ㇻ -(a)r, ㇼ -(i)r, ㇽ -(u)r, ㇾ -(e)r, ㇿ -(o)r お分かり頂けただろうか… 問題 r

    アイヌ語仮名「ㇷ゚」に対する正規表現の罠
  • JavaScript における文字コードの初歩 - 30歳からのプログラミング

    この記事では、 JavaScript で文字コードを扱う際に知っておくべき概念である Code Point や Code Unit、サロゲートペア、といったものについて説明していく。 また、具体的にそれらの概念を使ってどのようにコードを書いていくのかについても扱う。 この記事に出てくるコードの動作確認は以下の環境で行った。 Deno 1.26.0 TypeScript 4.8.3 Code Point (符号位置) プログラムで文字を表現する方法は複数あるが、 JavaScript では Unicode という方法を採用している。 Unicode ではあらゆる文字に対して一意の値を割り振ることを目的としており、この値のことを Code Point (符号位置)という。 Code Point は 16 進数の非負整数で、文章中で表記するときは接頭辞としてU+をつける。 例えばAという文字の

    JavaScript における文字コードの初歩 - 30歳からのプログラミング
  • ハイフンに似ている横棒を全て統一するᅳㅡ˗𐆑–᭸‒-─−▬𐄐—━‐‑ー﹣―ー﹘-⁃➖⁻! - Qiita

    はじめに これらの横棒、コンピュータにとっては全て違うのですが 見分けがつくでしょうか? -˗ᅳ᭸‐‑‒–—―⁃⁻−▬─━➖ーㅡ﹘﹣-ー𐄐𐆑 郵便番号、住所、電話番号など、横棒が使われているデータを扱うとき、 人が入力したデータや購入したデータであると、同じ記号が使われていないことはよくあることです。 090-1234-5678 090᭸1234᭸5678 090‑1234‑5678 090−1234−5678 これらの電話番号の文字列も phone_no_list = ['090-1234-5678', '090᭸1234᭸5678', '090‑1234‑5678', '090−1234−5678'] # 文字をUnicodeコードポイントに変換 for n in phone_no_list: # 文字列の4番目の横棒の文字コードを見てみる print(n[3], ord(n[3]

    ハイフンに似ている横棒を全て統一するᅳㅡ˗𐆑–᭸‒-─−▬𐄐—━‐‑ー﹣―ー﹘-⁃➖⁻! - Qiita
    aceraceae
    aceraceae 2021/11/03
    ただでさえ Mac ユーザはハイフンに関しては無駄な苦労をしてるわけだけど実装としては入力フォームにおいてはこういうバリデーションは属性の指定によってユーザエージェント側で実装するのが正しいと思う。
  • 文字化けでよく出てくる漢字の意味を調べて愛でる

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

    文字化けでよく出てくる漢字の意味を調べて愛でる
    aceraceae
    aceraceae 2020/03/26
    ちゃんと文字コードの解説があるのがいい。それはともかく古銭集めとかしてると鐚とかはふつうに出会う漢字なんだけどな。
  • Unicode - Acetaminophen

    aceraceae
    aceraceae 2020/03/09
    ハイフンやマイナス、ダッシュなど横棒
  • 平成28年4月1日から外国人入国記録・再入国出入国の様式が変わります!また、外国人出国記録が廃止されることとなりました!

    aceraceae
    aceraceae 2020/02/07
    入国管理局正字
  • 僕は、なぜ絵文字の長さが、直感に反するのか理解したい...!! - Qiita

    対象者 UnicodeやUTF-16について、よくわかってない人 -> ここから "😀".split("")で文字化けする理由がわからない人 -> ここから [..."👨‍👩‍👧"].lengthが5になる理由がわからない人 -> ここから 文字コードについてもう一度 文字コードは以下の二つで構成されています 符号化文字集合: 文字と、その文字の位置を示す一意の番号の集合 文字符号化方式: 文字に振られた番号をバイト表現にエンコードする方法 符号化文字集合 符号化文字集合は、 文字 その文字の位置を示す一意の番号 この二つの組み合わせの集合のことを指します。 例えばASCIIでは 8bit(128通り) でラテン文字や英数字を表現しています。 しかしASCIIには日語などの非英語圏の文字が収録されていません。 そのため、日語を収録したShift-JISやアジア圏の文字を収録した

    僕は、なぜ絵文字の長さが、直感に反するのか理解したい...!! - Qiita
    aceraceae
    aceraceae 2020/01/19
    そういえばモディファイアとかあったね。
  • 新元号「令和」と文字コード(主にUnicode)の問題

    境 真良@iU/GLOCOM/IPA(あーりん推し/芸能人スキャンダルネタ要らない) @sakaima 「令和」ですが、「令」はUnicode「U+4EE4」、UTF-8だと「E4 BB A4」、シフトJISだと「97DF」、また「和」はUnicode「U+548C」、UTF-8で「E5 92 8C」、シフトJISだと「9861」です。とりあえずご参考まで。 #さてお仕事ですよ 2019-04-01 11:46:49

    新元号「令和」と文字コード(主にUnicode)の問題
    aceraceae
    aceraceae 2019/04/02
    CJK互換漢字の問題がこんなところに。
  • C++標準化委員会、ついに文字とは何かを理解する: char8_t - Qiita

    C++ Advent Calendar 2018 この記事はC++ Advent Calendar 2018 15日目の記事です。 14日目: VTKライブラリ 16日目: C++のエラー処理との付き合い方 当初見積もりよりも大幅に長い記事となり、投稿したのは12/22で1週間遅刻です。すみません。 お知らせ cpprefjpにchar8_t型追加について解説を書きました。ぎゅぎゅっとコンパクトに、また査読を受けて中立的な表現で書いていますので、よければどうぞ。 UTF-8エンコーディングされた文字の型としてchar8_tを追加 - cpprefjp C++語リファレンス 追記 全ての開発者が知っておくべきUnicodeについての最低限の知識 - GIGAZINE Unicodeについて簡潔にまとまってるいい記事を見つけました。 Caution この文章には以下の要素が含まれます。苦手

    C++標準化委員会、ついに文字とは何かを理解する: char8_t - Qiita
  • 改元されたあとの“平成31年”表記はどう扱うべき? ~日本マイクロソフトやAdobeが改元対応を説明 - PC Watch

    改元されたあとの“平成31年”表記はどう扱うべき? ~日本マイクロソフトやAdobeが改元対応を説明 - PC Watch
    aceraceae
    aceraceae 2018/12/07
    ここでまた経験値が積まれることになるな。
  • UnicodeとUTF-8の違いは? - Humanity

    という2chのスレがかなり勉強になったのでまとめ。 少しでも有用だと思ったものは載せてあるので結構長いです。 Unicodeのような文字集合(符号化文字集合?)やUTF-8のようなエンコーディング方式に限らず色んな文字コードにまつわる話があります。 たびたび話が繰り替えされますがそれは確認ということで。 (元スレ) 追記:簡単にまとめました。 1 :デフォルトの名無しさん:2007/04/30(月) 20:02:37 ビッグインディアンとかなんとかかんとか 3 :デフォルトの名無しさん:2007/04/30(月) 20:05:48 また、頭の悪そうなスレが・・・ >>1 それは魚とマグロの違いを訊ねるようなもんだ。 4 :デフォルトの名無しさん:2007/04/30(月) 20:06:49 魚と鮪というよりは、魚と刺身の違いのような気がする。 5 :デフォルトの名無しさん:2007/04/

    UnicodeとUTF-8の違いは? - Humanity
    aceraceae
    aceraceae 2018/10/13
    このあたりはふんわりとした理解しかなかったんで勉強になる。
  • コンピューターで全漢字使用可に 6万字コード化 | NHKニュース

    語の漢字は、戸籍などに使われているものも含めると6万字あるのに対し、コンピューターは、実は1万字しか扱うことができません。これに対し、このほど15年越しの作業の末、6万字すべてが統一の規格にまとめられて、コンピューターがすべての漢字を扱えるようになり、ビッグデータの活用をはじめさまざまな効果が期待されています。 中には、メーカーなどが独自に対応した外字もありますが、コードが無いために、メーカーごとの互換性が無く、データを受け渡してもコンピューターが認識できずに「文字化け」してしまったり、ある人の名前に名の外字を充てたものと略字を充てたものの2つのデータがあった場合、コンピューター上では、別の人と認識されてしまったりするなどの問題が起きていました。 このためIPA=情報処理推進機構は平成14年から、経済産業省とともに外字を含めたおよそ6万字の漢字1つ1つに、コードを割りつける作業を進め

    コンピューターで全漢字使用可に 6万字コード化 | NHKニュース
    aceraceae
    aceraceae 2017/12/25
    うちの親は変体仮名なんでやっと表示できるようになるのかと。
  • プログラミング言語における文字コードの話

    世の中がほぼUnicode前提になってめでたしめでたし。とはいかなかった現実の話。 String型でできる文字列処理とか、ソースコード自体、特に識別子で使える文字とか。 軽くおさらい: Unicode まあいろんなところでいろんな人が書いてると思うのでさらっと概要だけ。 Unicodeは、元々、「65,536文字あれば十分だろ」とかいう幻想の元、2バイト固定長の文字コードとして作られていました。 もちろん足りなくて、ビット数を拡張。基が2バイトのままでこの拡張した分を取り扱えるようにしたのが今のUTF-16で、拡張分は2文字分(4バイト)を使って表現。 この、2文字分使って1文字を表すやつのことをサロゲートペア(surrogate pair: 代理対)と呼びます。 あと、ASCII文字も2バイトになるのを欧米人が嫌って、ASCII文字はASCIIコードのまま、逆に漢字・ひらがな・カタカナ

    プログラミング言語における文字コードの話
  • 「ユニコード」で予期せぬ目に遭った話 - moriyoshiの日記

    自分の知らないCJK Ideographのバリエーションがまだあったことに戦慄している pic.twitter.com/kUlyRLDDTM— moriyoshit (@moriyoshit) March 9, 2017 などというツイートをしたところ、思ったより反響があったのでまとめておく。 上記ではあいまいに「バリエーション」などと書いたが、Unicodeとそれを扱う環境においては、バリエーションと一口に言っても次のような状況がある。 意味論的に等価な異なる字形の集合 同じ字形で異なるコードポイントの集合 aは結構なじみ深いと思う。 a-1. 異なるコードポイントにそれぞれ異なる字形が割り当てられているもの 例: 「東」(U+6771) ⇔「东」(U+4E1C) 「斉」(U+6589) ⇔「齊」(U+9F4A) 「高」(U+9AD8) ⇔「髙」(U+9AD9) a-2. 同じコードポイ

    「ユニコード」で予期せぬ目に遭った話 - moriyoshiの日記
  • JavaScript における文字コードと「文字数」の数え方 | blog.jxck.io

    Intro textarea などに入力された文字数を、 JS で数えたい場合がある。 ここで .length を数えるだけではダメな理由は、文字コードや JS の内部表現の話を理解する必要がある。 多言語や絵文字対応なども踏まえた上で、どう処理するべきなのか。 それ自体は枯れた話題ではあるが、近年 ECMAScript に追加された機能などを交えて解説する。 なお、文字コードの仕組みを詳解すること自体が目的では無いため、 BOM, UCS-2, Endian, 歴史的経緯など、この手の話題につき物な話の一部は省くこととする。 1 文字とは何か Unicode は全ての文字に ID を振ることを目的としている。 例えば 😭 (loudly crying face) なら 0x1F62D だ。 1 つの文字に 1 つの ID が割り当てられているのだから、文字の数を数える場合は、この ID

    JavaScript における文字コードと「文字数」の数え方 | blog.jxck.io
  • MySQLの文字コード事情 2017版

    "Портирование Web SDK с JS на TS" Петров Григорий, Voximplantit-people

    MySQLの文字コード事情 2017版