タグ

unicodeとmacに関するcu39のブックマーク (3)

  • 人間にUnicode正規化は難しい - エムスリーテックブログ

    AI機械学習チーム ブログリレー2日目】 AI機械学習チームの池嶋 (@mski_iksm) です。 私達のチームでは、機械学習バッチの実行方法やインターンを含む新配属者のPC初期セットアップ手順など多くのドキュメントがGitLab上で管理されています。Gitでドキュメントを管理するのは、Wiki等と比較して更新時のピアレビューがしやすかったり、CIによる自動チェックがやりやすかったりなどのメリットから採用されています。 CIの自動チェックの1つとしてリンクチェッカーがあります。これは切れているリンクがないかを更新時にチェックするものです。 ある日、ファイルはあるように「見える」のに、なぜかリンクチェッカーのCIが落ちているという事象が発生しました。 タイトルでネタバレしているのですが、原因はUnicodeの正規化でした。 この記事では、何が起きていたのか?どのようなケースで起こりう

    人間にUnicode正規化は難しい - エムスリーテックブログ
  • Unicode正規化 - Qiita

    とは 「ア」と「ア」, 「①」と「1」など等価な文字の表記を統一する操作. NLPで前処理としてよく使われる "Unicode正規化(ユニコードせいきか、英語: Unicode normalization)とは、等価な文字や文字の並びを統一的な内部表現に変換することでテキストの比較を容易にする、テキスト正規化処理の一種である。" - Wikipedia NFD, NFC, NFKD, NFKC 4種類の正規化形式が存在する. 「NFD (Normalization Form Canonical Decomposition)」 「NFC (Normalization Form Canonical Composition)」 「NFKD (Normalization Form Compatibility Decomposition)」 「NFKC (Normalization Form Com

    Unicode正規化 - Qiita
  • ファイルアップロードではNFC/NFD問題に気をつけろ!~MacファイルシステムにおけるUnicode正規化の闇~

    NFCではそのまま「パ」として表されますが、NFDでは「ハ」(基底文字)と「゜」(結合文字)の組み合わせとしての「パ(UTF-8でe3 83 8f e3 82 9a)」(合成文字)で表されます。試しにNFDで正規化された「パ(e3 83 8f e3 82 9a)」を任意のテキストエリアに貼り付けて削除してみると、半濁音のみが取れて「ハ」のみになると思います。 このように文字列の正規化形式が異なる場合、単純な比較演算子での評価は困難であり、文字列によっては想定外の挙動を引き起こす可能性があります。 特にMacファイルシステムではNFDを正規化方式と採用しているため、NFC/NFD問題が度々引き起こされています。先日(2023年03月27日)リリースされた「macOS 13.3 Ventura (22E252)」では、ファイル名に濁音や半濁音が含まれるファイルがFinderから開けなくなる

    ファイルアップロードではNFC/NFD問題に気をつけろ!~MacファイルシステムにおけるUnicode正規化の闇~
  • 1