タグ

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

  • pͪoͣnͬpͣoͥnͭpͣa͡inͥを支える技術 - Qiita

    pͪoͣnͬpͣoͥnͭpͣa͡inͥの作り方 ぽんぽんぺいんを簡単に作るサイトを作ったのでよかったら使ってみてください。 【ここをクリック】 ponponpain(haraita-i)とは 画像でいうとこんなやつのこと。 今回参考にさせていただきましたが、以下のサイトによくまとまっていると思います。 不思議な文字 pͪoͣnͬpͣoͥnͭpͣa͡inͥ | bison's brain at postachio ぽんぽんぺいん ‐ 通信用語の基礎知識 まあ要するに、不思議な上付き文字を組み合わせて、文字に副題(ルビ)をふろうって感じの遊びのことで、昔流行ったみたいです。 今回はクリックだけで上付き文字を加えられるサイトを作ったのでぜひみんなに遊んでほしいなと思っています。 投稿について UbuntuのChromeだと綺麗に表示されないのですが、Twitterだといい感じになるみたいです。

    pͪoͣnͬpͣoͥnͭpͣa͡inͥを支える技術 - Qiita
  • 絵文字がある種のUnicodeバグを世界から一掃しつつある件について|Rui Ueyama

    UnicodeのUTF-16エンコーディングではほとんどの文字(コードポイント)は2バイトで表現されるが、Unicodeに後から追加収録された文字の多くは4バイトで表現される。4バイト文字がうまく扱えないプログラムというのはわりとよくある。しかし世界中で広く使われるようになった絵文字がよりによって4バイト文字であるせいで、そのような文字が扱えない問題がよいペースで解決に向かいつつある。それについて少し説明してみようと思う。 Unicodeが80年代から90年代初頭にかけてデザインされたときの目標の一つは、Unicodeに含まれる文字数を65536個以内に収めることだった。現代の文章を実用的なレベルで表すためには、漢字などを含めてもそれだけの種類の文字があれば十分だと考えられたのだ。当然これは1文字を2バイトで表すことを念頭に置いていた。つまりコンピュータの揺籃期から当時に至るまで単純に英語

    絵文字がある種のUnicodeバグを世界から一掃しつつある件について|Rui Ueyama
  • Font Awesomeのアイコン一覧と文字コードを簡単に検索できるWebサービスを作った。 - フリーでWebデザインとかやってる紳士。

    Font AwesomeはさまざまなWebサービスで使われているアイコンフォントで、アイコン一覧も公式サイトで提供されているし、文字コード一覧もこちらにあったりと、必要なリソースもまずまず充実している。 しかし意外と「インクリメンタルに検索できて」「文字コードも一覧に掲載されていて」「クラス名や文字コードがコピペしやすい」サイトが見つからなかったので作ってみた。 http://waramo.co.jp/fa/ 検索窓ではスペース区切りで文字列指定できる("tw sq"は"fa-twitter-square"にマッチ) その他の正規表現も使える(スペース区切りでだいたい用が足りるのであまり出番なさそう) タブを押すとクラス名や文字コードにフォーカスが移るのでコピペしやすい こんなところが特徴である。 文字コードが必要になる典型的な例は、Font Awesomeのアイコンフォントをスタイルシー

    Font Awesomeのアイコン一覧と文字コードを簡単に検索できるWebサービスを作った。 - フリーでWebデザインとかやってる紳士。
  • Font Awesome Icon List (with charcode)

    Finding icon-fonts in Font Awesome inclementally.

  • MySQL 8.0ではデフォルトで濁点半濁点を区別しなくなる - かみぽわーる

    4月にMySQL 8.0のUnicodeと日語対応についてManyi Luさんとディスカッションする会があって、かなりいろいろ話してとてもよい会だった。その後いろいろ考えて感じてる懸念を端的に書き記しておく。 デフォルトのcollationがutf8mb4_0900_ai_ciになった これに関して僕は強い懸念を持っている。MySQL 8.0以前において、ふつうのWebアプリケーションなどで日語を扱う場合、実用上デフォルトのutf8mb4_general_ciかutf8mb4_binの2択であったと思う。デフォルトがutf8mb4_general_ciなので新しく作られるアプリケーションは通常は濁点半濁点が区別される状態で世に出てくることになる。けどMySQL 8.0.1のデフォルトのutf8mb4_0900_ai_ciは濁点半濁点を区別しないので、将来ユーザー名を登録するところでバイ

    MySQL 8.0ではデフォルトで濁点半濁点を区別しなくなる - かみぽわーる
  • 「ユニコード」で予期せぬ目に遭った話 - 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の日記
  • 家族👨‍👩‍👦‍👦はreplaceされてしまうのか?あるいはZWJの話😂 - Qiita

    こんにちは、@todokrです。これは絵文字 / Emoji Advent Calendar 2016 3日目の記事です。 さっそくですがクイズです。以下のJavaScriptのコードの実行結果はどうなるでしょうか? (すぐお試しいただけるようgistにコードをアップしてみました) ... ... ... 結果はこちらです。 なんと!ママが入れ替わってしまいました! 「家族」の1文字に対してreplace したのに何故でしょうか? 「なんだこの文字は!?」に遭遇したらやることはただひとつ、そう16進ダンプでバイナリを見ることです。1 まずはプレーンな「家族」の絵文字から見てみましょう このようなテキストファイルを用意します。 odコマンドでダンプした結果が以下です。 エンコーディングはUTF-16なので2バイトずつで0xD83Dと0xDC6Aですね 先頭バイトの0xD83Dが上位サロゲート

    家族👨‍👩‍👦‍👦はreplaceされてしまうのか?あるいはZWJの話😂 - Qiita
  • MySQL で utf8 と utf8mb4 の混在で起きること - tmtms のメモ

    MySQLUTF-8 で使おうと思ってハマりがちなのは charset utf8 を指定してしまうことです。 MySQLUTF-8 には歴史的事情により utf8 と utf8mb4 の二つあります。 UTF-8 は1バイト〜4バイトで1文字が構成される文字コードですが、MySQL の utf8 は4バイト文字を扱うことができません。ハマりたくなければ utf8mb4 を使いましょう。 utf8 を使ってしまった場合に4バイト文字がどのように扱われるか、自分でもうろ覚えだったのでメモしておきます。 登録 接続が utf8mb4 でカラムが utf8mb4 あたりまえですが、そのまま登録されます。 mysql> insert into utf8mb4 (c) values ('美味しい🍣と🍺'); mysql> select * from utf8mb4; +--------

    MySQL で utf8 と utf8mb4 の混在で起きること - tmtms のメモ
  • 文字化け解読ツール「もじばけらった」

    ご利用に関する諸注意 サービスは smkn (From kiki verb) によって、”現状のまま” 提供されるものとします。サービスについては、明示黙示を問わず、商用品として通常そなえるべき品質をそなえているとの保証も、特定の目的に適合するとの保証を含め、何の保証もなされません。事由のいかんを問わず、損害発生の原因いかんを問わず、且つ、責任の根拠が契約であるか厳格責任であるか (過失その他) 不法行為であるかを問わず、smkn (From kiki verb) も寄与者も、仮にそのような損害が発生する可能性を知らされていたとしても、サービスの使用から発生した直接損害、間接損害、偶発的な損害、特別損害、懲罰的損害または結果損害のいずれに対しても (代替品またはサービスの提供; 使用機会、データまたは利益の損失の補償; または、業務の中断に対する補償を含め) 責任をいっさい負いません

    文字化け解読ツール「もじばけらった」
  • MySQL と寿司ビール問題 - かみぽわーる

    MySQL と Unicode Collation Algorithm (UCA) - かみぽわーる に関連するトピックで、 MySQL には寿司ビール問題というのがある。 寿司ビール問題どっかで詳しくお話を聞くべきだよなぁ。。。— RKajiyama (@RKajiyama) March 18, 2015 これはどういう問題かというと、 MySQL の Unicode では binary collation にしてコードポイントで比較しないと🍣と🍺に限らず絵文字が同値判定されるという問題です。 あれ? MySQL の utf8mb4 charset って、4バイト文字同士を比較すると同じ文字扱いされる? SELECT '🍣'='🍺' → 1 MySQL的には寿司とビールは同じ扱い。— とみたまさひろ (@tmtms) December 22, 2014 MySQLで select

    MySQL と寿司ビール問題 - かみぽわーる
  • 「絵文字に平等をサポートしてください」人種差別の指摘にゆれるUnicode 

    rindenlab
    rindenlab 2014/10/07
    "絵文字でパンドラの箱を空けてしまったのだから、コストはみんなで負担するしかない"
  • 文字コード地獄秘話 第1話:Unicodeにおける全角・半角 - ALBERT Engineering Blog

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

    文字コード地獄秘話 第1話:Unicodeにおける全角・半角 - ALBERT Engineering Blog
  • 文字コードの脆弱性はこの3年間でどの程度対策されたか?

    2019/01 JSUG勉強会の資料です。 この資料でDisっているのはJPAではなく、 ・何も考えずに「標準だから」というだけでJPAを選ぶ人 ・OSSに全くコントリビュートせずにフリーライドする人 です。

    文字コードの脆弱性はこの3年間でどの程度対策されたか?
  • 中国語の文字コード

    中国語の文字コードについての解説ページです。 日語の文字コードについては、文字コードについてを参照してください。中国語についてのページもあります。 中国語の文字コードの種類 中国語には、繁体字(Traditional Chinese)と、簡体字(Simplified Chinese)があります。 繁体字は香港や台湾で使われていて、簡体字は中国土やシンガポールで使われています。 簡体字は、繁体字の画数を減らし、簡単に読み書きできるように改良したものですが、文字コード体系が全く異なるため、全く互換性はありません。 繁体字中国語の文字コードは、台湾のメーカー5社が策定した「Big5」がよく使われています。 ただ、Big5は、ISO-2022準拠でないため、「CNS11643(EUC_TW)」も作られました。 CNSは、Chinese National Standardsの略です。 簡体字中国

  • PHP5.4のhtmlspecialcharsに非互換問題

    第3引数を指定していない場合の影響前述のように、htmlspecialchars関数の第3引数を指定していない場合、PHP5.3までは、文字エンコーディングがISO-8859-1が指定されたとみなされます。この場合、入力内容にかかわらず不正な文字エンコーディングと判定されることはありません。したがって、文字エンコーディングのチェックが働かない代わりに、エラーになることもありませんでした。 これに対して、PHP5.4の仕様により文字エンコーディングがUTF-8とみなされた場合に、Shift_JISやEUC-JPの2バイト文字が入力されると、高い確率で「UTF-8として不正」というエラーになり、htmlspecialchars関数の出力は空になります。つまり、プログラムが正常に動作しません。 htmlspecialchars関数の第3引数を指定しておらず、内部文字エンコーディングがShift_

  • 1