タグ

unicodeに関するbuty4649のブックマーク (8)

  • UTF-8のバリデーションとオートマトン

    UTF-8は今日の文字エンコーディングの中で最も重要なものと言って差し支えないでしょう。UTF-8の仕様はこの辺で確認できます: Unicode 15.1.0 > 3.9 UTF-8 RFC 3629 - UTF-8, a transformation format of ISO 10646 この記事では、読者はすでにUTF-8にある程度の馴染みがあるものとして、UTF-8のバリデーションの細かいところを考えます。 UTF-8のバリデーションを行うには、以下のことを確かめなければなりません: 最初の1バイトが所定の範囲にあること:ASCII (0x00-0x7F) または0xC2以上。 後続のバイト(たち)が0x80-0xBFの範囲にあること。 長すぎないこと:U+007F以下の文字はちょうど1バイトで表現されていること、U+0080以上U+07FF以下の文字はちょうど2バイトで表現されて

    UTF-8のバリデーションとオートマトン
  • ZawgyiとUnicode: ミャンマーの文字の電子化について - にせねこメモ

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

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

    これはRubyアドベントカレンダーとSmartHRアドベントカレンダーの17日目の記事です。 qiita.com qiita.com 12/9 に nagano.rb で文字について発表して、同じのを 12/15 に SmartHR 社内で LT しました。 スライドはこちら speakerdeck.com 同じ文字? この2つの文字は同じものに見えますか? 実はこれは同じ文字を異なるフォントで表示したものです。 ゴシック体と明朝体で字体が異なって見えるのと同じことなので、同じ文字と言えるでしょう。 コンピュータで扱う文字は文字ごとに番号(コードポイント)が振られていて、プログラムから見たときには同じコードポイントであれば同じ文字として扱われます。 Ruby で文字のコードポイントを得るには String#ord を使用できます。 '直'.ord.to_s(16) #=> "76f4" '

    文字ときどきRuby - tmtms のメモ
  • 絵文字を支える技術について|nona

    はじめにこちらはmhidakaが建立したAdvent Calendar Day.3となります。 こんにちは、はじめまして、のなと申します。mhidakaさんのTweetを見つけて、初めてAdvent Calendarなるものを書いています。なにかお作法間違っていたら大目に見てください、よろしくお願いします。 軽く自己紹介をさせていただくと、普段はGoogleAndroidTextまわりの開発を行っており、DroidKaigiやShibuya APKで発表させていただいたりしています。最近はほぼ絵文字の話しかしてないので、絵文字おじさんと思われてそうですが、普段の仕事絵文字に限らず、Androidの文字表示の部分は大抵面倒をみています。 今回この機会をいただいたので、どんな内容を書こうか迷ったのですが、やはり皆が読んで面白い内容というと、絵文字になるのかなぁ、ということで性懲りもなく絵

    絵文字を支える技術について|nona
  • Slackはハイライト部分をU+E000とU+E001で囲って表していそう - hogashi.*

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

    Slackはハイライト部分をU+E000とU+E001で囲って表していそう - hogashi.*
  • 文字コード地獄秘話 第1話:Unicodeにおける全角・半角 - ALBERT Engineering Blog

    ごあいさつ 皆様はじめまして、文字コードおじさんです。細々とカメラ屋を営んでおりましたが、エンジニアとしての技量を評価され、ALBERTのシステム開発・コンサルティング部で働くことを許されました。特技はサーバーの統廃合です。 今回は最初ということですが、Unicodeにおける全角・半角の取り扱いについて触れてみようと思います。なお、さも連載するかのように第1話と銘打っていますが、上層部の無慈悲な裁決によっては1話打ち切りもありえますので、その際はご容赦ください。 固定観念を捨てよう 「全角50文字、半角100文字まで」といったような文言を見かけたことがあると思います。 特にUnicode以前のレガシーな処理系では全角文字に2バイト、それ以外は1バイトという割り当てが慣習となっていました。 このため、「全角=2バイト文字、半角=1バイト文字」という観念が世間に定着しているのが現状です。 しか

    文字コード地獄秘話 第1話:Unicodeにおける全角・半角 - ALBERT Engineering Blog
  • wが二つ重なった文字「ʬ」がバイラビアル・パーカッシブだと調べる方法

    もともと2ちゃんねるで回答されたものみたいですが、「wが縦に二つ重なった文字の出し方教えて」という質問に対して、「ʬ」を出したり、その読み方が「バイラビアルパーカッシブ」だと回答した人はどうやって調べたんでしょうね。 そ […] もともと2ちゃんねるで回答されたものみたいですが、「wが縦に二つ重なった文字の出し方教えて」という質問に対して、「ʬ」を出したり、その読み方が「バイラビアルパーカッシブ」だと回答した人はどうやって調べたんでしょうね。 その回答者がこれを使ったかどうかはわかりませんが、ユニコード内の文字だと、ShapeCatcherというサイトで調べられます。 左側のボックスに、マウスで探したい文字を書き、”Recognize”(認識せよ)をクリックすると、下にそれに近い文字が列挙されます。wを縦に二つ書いてみましょう。 コード 0x2ac のラテン文字 bilabial perc

    wが二つ重なった文字「ʬ」がバイラビアル・パーカッシブだと調べる方法
  • Text Escaping and Unescaping in JavaScript(Unicode の文字列をエスケープする JavaScript)

    Notes No data is sent to the server (i.e. everything is done in JavaScript). Conversion from Unicode to other encodings such as Shift_JIS can be slow first time as it needs to initialize internal conversion tables. Surrogate pairs in UTF-16 are supported. Try inserting \uD840\uDC0B in the second form. Three-byte characters in EUC-JP are not supported. Links JavaScript Unicode Charts Try GNU Libidn

  • 1