高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

新しいものいろいろ

今日はJavaScriptPHP――正規表現についての勉強か。試験前ですが試験勉強はなし。
JavaScriptのほうは、テキストボックスの文字列を操作するコードの勉強。まずは手始めに、はてなダイアリーの編集ツールバーにあるボタンを変えてみようと思います。
あたりが参考になりそうですから、それをクラス化して使ってみようと思ったのですが…。そう簡単にはいかないですね。どこをどう間違えたのか、テキストエリアの全文が置き換えられちゃったりして…。
createTextRange?関数あたりが鍵のようですね、多くのブラウザに対応するなどといわなければ、後はちょっとだけで済むみたい。
あとは、未知の関数document/evaluate。どうやらHTMLからXPathでタグを得ているようですが…?引数の意味が分かりませんね。
あーあ、DOM系に詳しいJavaScriptのリファレンス、そろそろ欲しいな。


続いてPHP――正規表現です。今まで、一行ごとにpタグで囲むという処理は

$text = preg_replace("/^(?!-|\+|\*|\.|<|>|:| |\s)(.+?)$/m", "

$1

", $text);

という正規表現でやってきたんですが、これだと複数行にまたがるブロックタグなどが、正規表現で処理する前に置かれてると困ってしまいますね。解決するには根本的に考え方を変えるしかないようですね…。
text-hatena.js 公開 [てっく煮]にもありましたが、はてなは一行ごとに複数のクラスが走査して、マッチするかどうかを確かめているみたい。だからたかが一つの記事のために10近いクラスがあったわけですね。
正規表現一行で一つの構文をすませるのだから、理論上はこっちのほうが早いはずですが…。


たしか、Perl正規表現雑技のページかどこかに、「タグ外にマッチ」という表現が乗ってた気がする。それが参考になるかもしれない・・・っと。


やっぱり、まだまだやることは多そうです。結局Nucleusプラグインも後に三個作る必要が出てきそうですし。まあ、楽しいですけど、なかなか大変です。

読了

isbn:4906665500(なぜかイメージが出て来ませんね)
読み終わりました。明日の試験に向けての参考書ということで、先生に勧められたものです。ちょっと高かったですが、まあ、今後にも役に立ちそうと言うことで…。
商業的なWebサイト作成にまつわる部分は、想像するほかありませんが、その辺も含めて理解できました。
CG-ARTSにある例題集を見た感じだと、試験問題もこれに書いてあることとほとんど同じです。これだけみただけでは結構簡単そうですね。
まあ、試験自体初めてなので、これ以上の資料はなさそうです。試験に向けての勉強はこれくらいにして、後は明日本番にがんばるとしましょうか。


それにしても、テーブルレイアウト"一般的に使われてる"って*1…。ま、企業ではまだまだそんなもんなんでしょうか。
そういえば最近気づいた(Firefoxの拡張のせいかも)んですが、テーブルレイアウトはやっぱり(描画が)遅いんですよね、とくにブログページなどだとコンテンツが長くなりがちですし、なおさらです。
そうやって考えると、もしこのはてなの編集画面*2がテーブルレイアウトだったとすると…。ぞっとしますね。
あとは改めて、OperaのサイトでCSSを切ったときの感動を思い出しました。CSSだけで無表情なHTMLをあそこまで出来るんだ。それを目の当たりにしたときは本当にびっくりしましたもの。

*1:4-1-8あたり

*2:知らない人のために…左サイドバーに各種編集用のメニューがあり、その右にツールバー、エディタ、画像アップロードなどのフォーム

とどいた!

オーダーしていた名刺カードが届きました。
中身はただのカードのセットなのに、ずいぶん大きな段ボール箱に入って届きました。なかみの4倍以上の大きさの段ボールに入ってます。多分あれ以下のサイズの箱がなかったんだろうな(^_^;)
さて、先日テレビを見て、母が衝動買い(?)したものも届きました。

ウォーキービッツ オレンジ

ウォーキービッツ オレンジ


ウォーキービッツ メロン

ウォーキービッツ メロン


思ったより小さいですね、写真では結構大きく見えますが、手のりサイズの小さい亀です。中にボタン電池が入ってて、甲羅を押すと歩いたり、リズムを刻んだりする といった機能があります。
実際に動かしてみると、結構手が込んでますね、停止ボタンを押すとちゃんと足を元の位置に戻してから電源を切ってます。電子音がちょっとうるさいですが、見ていて面白いかも。