2008年11月アーカイブ

2008年11月21日
| コメント(0) | トラックバック(0) 今日のMENTA

zipファイルは、lang_perl_MENTA_tags_release-0.05-r24525.zipになっていました。

ぱっと見では、リンクの仕方が変わったような?
…と思ったのですが。
今のところ、変わったのはオフィシャルだけのようです。

cgi-serverで起動したところ、どちらも同じ挙動でした。

しかし、結構warningが出ているようです。
コマンドプロンプトが文字化けしていたので、一旦ctrl+cで止めて、コマンドプロンプトの文字コードの変更を参考にして「chcp 65001」とタイプして、utf-8を表示できるようにしました。

うちの環境では、コマンドプロンプトを「MS ゴシック」に設定したあとは、コマンドプロンプトを立ち上げて、すぐに「chcp 65001」とすると「MS ゴシック」のまま切り替わるようです。

レジストリの「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont」のあたりを色々といじって試してみましたが、うまくいかず、断念。

ま、それはそれとして。
エラーの正体は以下のとおり。

static/menta-logo.png/ を処理する方法がわかりません at lib/MENTA.pm line 96, <DATA> line 16.

ということで、app/tmpl/header.mtの6行目にゴミ(後ろにスラッシュの文字)が入っていたようです。
以下のように直したら上記のエラーはなくなりました。

<img src="<?= static_file_path('menta-logo.png') ?>" alt="Web Application Framework - MENTA" title="Web Application Framework - MENTA" />

MTでつけたタグを管理するのにも丁度良いので、HatenaBookmarkerプラグインを使って、ブログ記事をはてなブックマークに登録しているのだが、最近、余計な仕事もしてくれているようだ。

トラックバックを受け取ったときに、その記事をブックマークしにいくのだ。
しかも、なぜかパーマリンクが間違って(ファイル名が日付と時間になって)いる。

解決できないかとソースを見ているのだが、さっぱりわからない。
トラックバックを受け取ったときに動作しないようにできればまったく問題ないとは思うのだが…。

お手上げ。

Perlでもなんでも、ソースをブログに載せるときは気をつけたいもの。

ファイルを見ると、2年前から使っている自分用のツールがある。
「<」や「>」など、HTMLでそのまま表示できないものを実体参照に変更したり、preとcodeで括ってソースとして表示しやすくするためのものだ。

少し前に、perltidyを覚えたのだが、ブランクがあいていたのと、パソコンを変えていたので、改めてインストールすることにした。
自分の記事も役に立つものです。
ただ、以前と違っていたのは、perlと同じbinフォルダではなく、site/binのほうに入っていた。

で、ソースがきれいにハイライトされているページをちらほら見かけたので、色気づいて調べてみた。
とりあえず簡単にできそうだったのが、「Quick Highlighter」というサイト。

というわけで。
euc2utf8.plをperltidyで整形して、Quick Highlighterでハイライトさせてみた。

…しかし、スタイルシートが競合するのか、ブログ上で見るといまいちかなぁ…。
もう少し調べてみよう。

久しぶりに知的活動(?)をしていたら、面白そうなものを見つけた。

MENTA は CGI で気軽につかえるウェブアプリケーションフレームワークです

  • CGI でも高速に動作
  • レンタルサーバーでもつかえます(ロリポとかXREAとか)
  • Object 指向がわからなくてもつかえます
  • 正しいプログラミングスタイルが自然と身につきます

数日間追いかけていたのだが、今日、zipファイルでダウンロードできるようになっていたので、早速ダウンロードしてWindows上で使ってみた。
使ってみた、というか、デモをそのまま動かしてみた、というか。

まあ、久しぶりにPerlな気分の時に見つけたので、しばらく追いかけてみようかと。
XREAでも使えそうなので損はなさそうです。

スクリプトのutf8化計画に役立つであろうコードを書いた。
スクリプトのあるディレクトリ以下のファイルを走査して、ファイルの文字コードをeuc-jpからutf8に変換するスクリプトだ。

それにしても、作るのに妙に時間がかかった。
徐々に勘を取り戻せればいいのだけど…。

で、色々と調べながら書いていたら、面白いモジュールを色々と見つけた。


Fatal が、渡されたサブルーチン(上の例だと open と close) をくるんで、自動で or die してくれます。open や close がだいぶすっきりしました。あとついでに先ほどの例に対してファイルハンドルを変数にしたり open を3引数にと今風に変更してみてあります。

まずはFatal。使いどころは結構あると思う。
ついでに、今までファイルを扱うときは、FileHandleを使っていたのだが、「今風」にしてみた。


File::Findの使いやすいインターフェィス

次はFile::Find::Rule。標準モジュールではないのが残念だけど。
File::Findをうまく使えればいいんだけど、いまいち使い方がよくわからない。
ファイル一覧を作って、それを順番に処理する、という感覚なので、File::Findの&wantedの考え方がいまいちしっくりこない。


perl5.8 では文字コード自動判別も用意されており,Encode::Guess がそれです.

あとは、Encode関係で、Encode::Guess。文字コードの推測です。
guess_encodingという関数が自動的にインポートされるようです。
それ以外に、Encode::Guess->guessとする方法もあるようですが、メンテナーは404 Blog Not Found:ruby|perl - 文字コードのちょっと高度な判定でguess_encodingを使っていました。

Encodeは、安定性重視から速度重視まで、色々なメソッドが用意されているようなので、404 Blog Not Found:perl tips - Encodeを速く使う方法も参考にしようと思っています。

iTunesをバージョンアップしたら新機能ができていた。
…というのも2ヶ月前の話。

自分自身のライブラリの中で、聴いていない曲というのもかなりあって、ライブラリの再発見というか、聴いていない(あるいは、iTunesでは聴いてないことになっている)曲から優先的聴く曲を選ぶツールとして役立っている。

まあ、曲自体が似通っているのか、好きな曲を数曲選んでGeniusにかけると、同じ曲がそれぞれのリストに入ってくるのだが。
それでも、無作為に聴くよりも好みの曲が聴ける精度は高いです。

最近は、新しい曲を聴くよりも、好きな曲ばかりを再生するようになっていますが…。

Google検索

Last.fm

このアーカイブについて

このページには、2008年11月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2008年9月です。

次のアーカイブは2008年12月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Creative Commons License
このブログのライセンスは クリエイティブ・コモンズライセンス.
Powered by Movable Type