2008-01-01から1年間の記事一覧

Ruby 1.9.1 TODO

変換テーブルの追加 (Citrus から頂いてくるだけだけど) encoding の追加 (携帯電話系がメイン、JIS X 0213 系はどうしようかね) rdoc のデフォルト encoding を US-ASCII に(やっぱりわたしのタスクなんかね) StringIO の RubyM17N化

Ruby transcode と Citrus iconv

そーいえば、Ruby 1.9 の日本語系 encoding の変換テーブルは Citrus のものを使うようになりました。enc/trans を覗くと CP とか JIS ってディレクトリが。現状ロジックはほとんど使ってませんが、ある程度は取り込まれていくことでしょう。

Ruby/Iconv と Citrus iconv

「Citrus iconv API使ってない」わけでもなくて、Iconv.list あたりで微妙に使ってます。

「コードポイント」は何ビットか

Unicode だと 21bit なんですが。 まぁ、Ruby にもGB18030が 32bit フルに使うので、signed int だと涙目って話はありまして。というか、あったが、codepoint codepoint 連呼する人々がいるんで怖くなり、あわてて unsigned int に直したので、関係する方々…

Google Chrome と PGP

前の世紀末にタブブラウザブームってのがありまして、IE コンポーネントを用いたブラウザが大量に現れた時代がありました。描画性能は同じエンジンなので当然結果も同じわけで、もっぱら使い勝手に重点の行われた戦国時代だったわけです。 で、ぐぐるくろむ…

続々XHTML Media Types

X/HTML処理機にとっては、XHTMLの利点が得られずHTML相当 http://d.hatena.ne.jp/rh-kimata/20080826/1219756982 閲覧者側の XHTML の利点って、text/html にしただけですべてふっとんでしまいましたっけ。とはいっても、うーん、1.0 だと XML であることく…

emacs-mule

Ruby 1.9.0-4 がリリースされました。今回実装されたのは主に以下の通り 新クラス Encoding::Converter (stateful encoding 対策だと思う) universal newline (うささんとこが詳しい) まぁ、その辺は実装者の方が詳しいので譲るとして、NEWS に書き忘れた em…

続 XHTML Media Types

初めはXHTML1.0として仕様に沿った文書でも、text/htmlとして送信することによりXML文書としての信頼性が失われるのではないか、だとすれば、text/htmlとしてのみ送信されるHTML互換のXHTML1.0というのはHTML4.01と等価ではなく、HTML4.01文書に劣るのではな…

続ストビュー

「ストカーは後ろめたくないなら『撮影中』と表示するべき」という暴論 他人に義務なきことを要求してはならない。 http://d.hatena.ne.jp/atsushieno/20080821/p3 「他人に義務なきことを要求してはならない。」 ボクの考えた新しい法律〜「ストカーは『撮…

Ruby のサポートレベル

ruby のメンテナってのがいないとサポートプラットフォームから外されるらしい。 http://diary.imou.to/~AoiMoe/2008.08/late.html#2008.08.21_s01_p02 「サポートレベル」の定義、1.9.1のサポート予定プラットフォーム、メンテナ募集 のことでしょうな。外…

「Google Street View について」について

高木さんは、問題点を見つけ、えぐるという芸風で扇情的なのです。一般人はほえーっとそれを見てればいいんでしょうが、インテリを自称するならば見る側は真の問題点がどこかをまず自分で考えなければいけないわけであって、扇情的だからスルーっていう対応…

XHTML Media Types

XHTMLの利点について色々考えてみて気づいたのだが、 text/htmlとしてのみ送信されるXHTML文書はただの不正なHTMLだ。全体的に中途半端に厳密だなぁ。思うに、Web の世界ってもっとカオス。そして、そのカオスな状況に対応するための必要悪ってのもある。 te…

Modularized Citrus

引き続き Citrus のお話。 でも J( 'ー`)し ごめんね Citrus 単体で配布できるようにしてないの ごめんねということでやぱしsrc/external/bsd/citrusとかに移して 単体でcheckoutできるようにしといた方がCitrusに興味持ってもらえそうなの鴨ね。 http://www…

鬼車と ISO 2022 と

[A-Z]の場合、AとZは同じescape escapeでなければダメとか。 http://www.hi-matic.org/diary/?20080810#10-1 ちゃんと読みきれてないんですが、鬼車の文字クラス処理は OnigCodePoint を使って行っているので、基本的には全部そこに持っていって処理し、エス…

鬼車の CES/CCS

「鬼車ちゅーのは(中略)自前でCES/CCS周りを実装してるので」とのだけれども、locale ベース前提ならば、OnigEncodingType に適当にダミーを突っ込んで、ONIGENC_* を全部ひっかければいいだけな気もしますな。しかし、Citrus って内部は 32bit wide charact…

鬼車はバイト単位だから

そんなわけで「ISO-2022-JP だって根性さえあれば余裕だし?」などと思い始めるわけですが、当然状態はどうすんだよとなるわけですな。自分にはそんな根性はないものの適当に妄想してみることにする。 起動時に直前のエスケープシーケンスまで戻って(マッチ…

鬼車は本当に wide character 方式か

Ruby や鬼車の stateful encoding の「鬼車も wide character 方式」だけど、なんか違うような気がしてきたので見直してみたら全然違いました。鬼車においてコードポイントを格納している OnigCodePoint が実際に現れるのは最終的に正規表現とマッチさせる時…

Ruby の stateful encoding サポート方針

というわけで、「限定的サポート」なわけですが、どんくらい限定的なのかは難しいところで、「仕様」として決めやすいように控え目に絞る方針と、できる限り扱えるようにしようという方針とがあるあたりが悩ましいところだったりするのです。

Ruby や鬼車の stateful encoding

そいや鬼車ってstateful encodingサポートってどうなんだっけ。 Ruby M17Nがstateful encodingは扱わないとかいってた記憶があるから対応してなさそうだな。 http://www.hi-matic.org/diary/?20080806#06-1 鬼車は statefl encoding はサポートしていません…

ライブラリの名前

ってだけだと寂しいので、JavaScript のライブラリの名前について。JavaScript からはここ数年逃げていたのだけれど触らないといけなくなったので jQuery を使ってみたんですが、これ便利ですね。通りで世間の人が JavaScript なんてマゾい言語なんかいじる…

近況

愚痴りつつも毎日使っていたらやっと慣れてきました。入力も、そこらの携帯電話並みくらいには何とか・・・。しかし、これで長文メールはないかな。 まぁ、うちはExchangeなので、この連携がとても便利です。

iPhoneを買ったよ

一部の方はご存知でしょうが、まぁそんな事情でiPhoneを手に入れるわけです、並んだけど。で、写真とかをうpしようと思ったんですが、その辺は捜せばほかの方がいくらでも上げているので、ここは実際のところ、iPhoneはどうなのかっていう話を書くことにし…

Last Resort Font

頼みの綱のフォント(Last Resort Font)@PDF 千夜一夜より。Last Resort Font@Apple どうも Apple 由来らしい、まぁ、そこは Unicoder の巣窟だから。。。 これって、ある意味 Arial Unicode MS の再来なんだろうな。 ていうか、Arial Unicode MS@Wikipedi…

その他

golfでもつかえるような指定を locale が UTF-8 になっている前提なら、何も指定する必要ないはず。リテラルがある場合は #ruby -Ku で。なので、$KCODE よりは短くなるかも。 1.8 互換モードを用意した方がよかったりしないかな K がソレです。 リガチャー…

エンコーディング変換について

UTF-8−MACはどうなるんだろう? 「UTF8-MAC」というエンコーディングは定義してあるので、UTF-8 と区別したい場合は使ってください。UTF-8 と UTF8-MAC の間で変換を行いたい場合、現在 transcode では変換できません。nkf は対応しているのでこちらを使って…

magic comment

コメントに意味を持たせるぐらいなら、文法拡張しないのはなんで? 文法解釈の時点で、すでにエンコーディングが決定している必要があるからかと思います。magic comment は 1 行目か SheBang の次の行なので、安心。 それにしても、コメントに言語的な意味…

デフォルトエンコーディングとか無いのか。。。

基本的にはありません。ただ、あなたの心の中にあるデフォルトエンコーディングを尊重する仕組みは整っているはずです。1.9 はこの発表の内容を全部理解しないと使えないのでしょうか ?の UCS 風の解決参照。 内部コード統一メソッドですね、わかります まぁ…

異なるエンコーディングの文字列を結合した文字列は作れない…よね?

作れる場合もあります。例えば UTF-8 と半角英数のみな Shift_JIS とかなら結合できます。(この場合結果は UTF-8) ASCII only な ASCII Compatible エンコーディングの String における例外処理の話ですね。 それ以外だと、現在は ArgumentError "incompatib…

1.9 はこの発表の内容を全部理解しないと使えないのでしょうか ?

String における encoding ってのは型みたいなものです。静的型だと思ってがちがちに固めることもできます。一方で、Duck Typing 的に扱ってもたいていの場合はうまく動くはずです。具体的にどうすればいいかは、ライブラリやアプリケーションの分類によると…

US-ASCIIは特別扱いに入りますか

入ります。具体的には以下の意味で特別扱いされます。 builtin エンコーディングの定義が Ruby 本体のバイナリに入っている。もっとも、入ってなくても自動で読み込まれるので意識する必要はなかったりする。 ascii only ASCII Compatible な文字列と比較・…