タグ

Unicodeに関するn2sのブックマーク (28)

  • EastAsianWidth判別用コードを自動生成する - Islands in the byte stream (legacy)

    VisualWidth実装用に、Unicode::EastAsianWidth みたいなものを自動生成するためのスクリプトを書いた。unicode.orgからとってきたデータをもとに生成しているので安心。 これはJSX用だけど、他の適当な言語のためのコードを生成するのも難しくないはず。 #!/usr/bin/env perl use 5.14.0; use strict; use warnings; use LWP::Simple qw(get); use Text::Xslate; use Log::Minimal qw(infof); my $SPEC = "http://www.unicode.org/reports/tr11/"; my $DATA = "http://www.unicode.org/Public/UNIDATA/EastAsianWidth.txt"; my %p

    EastAsianWidth判別用コードを自動生成する - Islands in the byte stream (legacy)
  • RubyとPythonで全角文字を半角文字2文字として数える その2 - _dog(underdog)

    前回のRubyのソースでは、ASCII文字と半角カナかどうかを半角文字の判定に使用していた。今回はPythonと同様に、Unicodeの定義から判定できるようにクラスを作成した。 ついでに右寄せと中央寄せも追加した。 Singletonで最初に使用したときに、Unicode定義ファイルを読み込む。 定義リストの検索は2分探索で行う。 実行には以下のURLにある EastAsianWidth.txt が必要。 http://www.unicode.org/reports/tr41/ http://www.unicode.org/Public/UNIDATA/EastAsianWidth.txt 追記: 速度が遅かったためbsearchから文字列処理を外に出して高速化 Ruby 1.8.6 unicodedata.rb require "singleton" # UnicodeDataクラス(

    RubyとPythonで全角文字を半角文字2文字として数える その2 - _dog(underdog)
    n2s
    n2s 2012/03/02
    現時点ではunicode-utils(id:entry:24697050)とか使うのが実用的なようなので、あくまで参考として。
  • 半角カナ混じりの文字幅を数える - Shohei Yoshida's Diary

    文字幅ってどうやって調べるんだろって思って、 使えるモジュールを探してみた。 #!/usr/bin/env perl use strict; use warnings; use utf8; my $str = "リンゴゴリラ"; { use Unicode::Japanese; printf "[%s] length = %d\n", 'Unicode::Japanese', Unicode::Japanese->new($str)->strlen; } { use Text::VisualWidth::UTF8; printf "[%s] length = %d\n", 'Text::VisualWidth', Text::VisualWidth::UTF8::width($str); } { use Unicode::EastAsianWidth; my $count_length

    半角カナ混じりの文字幅を数える - Shohei Yoshida's Diary
    n2s
    n2s 2012/03/02
    手軽で正確なのがText::VisualWidth::UTF8::width()。Unicode::EastAsianWidth+正規表現で数える方法は日本語以外でも使える、と。Unicode::Japaneseは半角カナを誤判定する(0.49現在も)ので非推奨。
  • 東アジアの文字幅 - Wikipedia

    この記事には複数の問題があります。 改善やノートページでの議論にご協力ください。 出典がまったく示されていないか不十分です。内容に関する文献や情報源が必要です。(2017年4月) 独自研究が含まれているおそれがあります。(2017年4月) 出典検索?: "東アジアの文字幅" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL 「東アジアの文字幅」(英: East Asian Width)は、Unicode標準の附属書 (英: Unicode Standard Annex) の一つ。Unicodeに収録されている各文字の文字幅に関するヒントを与える East_Asian_Width 参考特性(英: informative property)を定めている。 東アジアのマルチバイト文字コード規格は必ずしも文字幅

    東アジアの文字幅 - Wikipedia
  • Pythonのお勉強 Part46 より引用 - ときどきの雑記帖

    ■_ 閏年 なんか閏年の2/29の扱いで不具合というのを見かけましたが、あるエピソードを一つ。 閏年の判定というのは西暦年が4で割り切れるというだけでなく 100でどうとか400でどうとかありますよね。 で、1990年代に開発された製品の中に この閏年の判定をただ単に4で割り切れるかどうかでしかやっていなかったのだけど、 2000年が400で割り切れるために手抜きの実装(バグ)が発覚しないですんでしまった ものがあったとかなかったとか。 それとは別に、なぜか100での判定はやってるのに400ではやってなくて以下略なものとか。 ■_ Pythonのお勉強 Part46 66 デフォルトの名無しさん [sage] 2012/02/29(水) 08:31:09.46 ID: Be: >>> u'%10s' % (u'abc') u' abc' だとスペース7個のあとに「abc」が表示されますが

    n2s
    n2s 2012/02/29
    「(Cの入門書で)アドレスを渡して、それを * で dereference するやり方が 「参照渡しと言われている」」ええええええ
  • 「東京Ruby会議05」でUnicode正規化の話を聴いてきた(えっ?) - ただのにっき(2011-02-04)

    ■ 「東京Ruby会議05」でUnicode正規化の話を聴いてきた(えっ?) そういえばRegional RubyKaigiに参加するのは初めてだ。今までは「大RubyKaigiの実行委員がRegionalに参加して(ただでさえ少ない参加枠を狭めるのも)申しわけないなぁ」と思って遠慮していたんだけど、今年は予告通りRubyKaigi2011の実行委員からは外れたので、遠慮するこたぁないのだった。というわけで東京Ruby会議05に参加。 場所は渋谷、ECナビの8Fにある「Ajito」という……なんだろう、そのビルに入っている各社の共同スペースみたいな? 趣向を凝らしたいろんな部屋がある、会議&イベントスペースというか。渋谷にこんな小洒落たフロアを持ってるなんて、ネット企業うらやましい! 冒頭は高橋さんによる「Rubyの楽しさ」に関する講演(台なし、スライドなしの1時間)で、その後、事前に設

    n2s
    n2s 2011/06/23
  • Twitter時代の文字の数え方 | 配電盤

    入力「×」のブラウザでは、「𠮷」が2文字とみなされるため、2文字目まで、つまり「𠮷野」までしか入力できません。 Mozillaの文書には、Unicode code pointsで数えると書いてあるので、そのうち改善されるのかもしれませんが、現時点ではTwitterのために「maxlength="140"」を使うことはできません。 pattern属性 Firefox 21とChrome 27、IE 10、Opera 12.15は、「pattern=".{0,3}"」(任意の文字からなる0から3文字)のような正規表現を使った検証にも対応していますが、やはり「𠮷野家」は4文字とみなされてしまいます。 JavaScript 追記:javascript – でBMP以外のUnicode文字をきちんと扱う(404 Blog Not Found) JavaScriptでは、文字列strの長さをst

    n2s
    n2s 2011/06/20
  • ウェブで利用される文字コード、UnicodeがASCIIを上回る--グーグルが明らかに

    UnicodeがASCIIを追い越し、World Wide Web上で最も多く利用されている文字コード体系になったとGoogleのシニアインターナショナルソフトウェアアーキテクトMark Davis氏がブログで述べている。また、UnicodeはASCIIだけでなく、Western Europeanもほぼ同時に追い越している。

    ウェブで利用される文字コード、UnicodeがASCIIを上回る--グーグルが明らかに
    n2s
    n2s 2008/05/07
    この調子でEUC-JPもISO-2022-JPも淘汰してくれると↓の人たちが楽になると思います。mohta氏が提唱した規格がポシャって良かったですね、皆さん。