今までに加えて、下記の点でパワーアップした。
- 最新の検索がいつ頃だったかも抽出できる。
- 検索回数が指定回数以下のものについては無視できる。
- クラウドにしやすいように検索回数をランク付けできる。
以上によって2回以上検索された語句のような物が生成できます。
今のスタイルシートでは、古い検索ほど色を暗い感じに、検索回数が多いほどフォントサイズを大きめに、ということにしています。
一部のブラウザでは意図したようには見えていないかもしれません(特に明暗について)が、Firefoxでは確認済みです。
今までに加えて、下記の点でパワーアップした。
以上によって2回以上検索された語句のような物が生成できます。
今のスタイルシートでは、古い検索ほど色を暗い感じに、検索回数が多いほどフォントサイズを大きめに、ということにしています。
一部のブラウザでは意図したようには見えていないかもしれません(特に明暗について)が、Firefoxでは確認済みです。
MENTAを追いかけ始めてからPerlだけじゃなく、Web開発に関して色々と資料を読んでいる。
資料といっても、はてなブックマークの注目エントリーや人気エントリーを中心にあれこれと読んでいるだけだが。
その中で、JavaScriptのライブラリとして最近ホットなのがjQueryだ。
それはそれとして、先ほどのエントリーで参照した先のソースを見てみると、preタグにもcodeタグにも「prettyprint」が書いてなかった。
不思議に思ってソースを見てみると、prettyfy.jsを読んだ後に別のスクリプトを読んでいて、その中でどうやらクラス名を操作して、その後にprettyPrint()している事がわかった。
それと同じ事をjQueryでやってみよう、と思ってやってみた。
書いた場所は、テンプレートのフッター。
先ほどのスクリプトを読み込んだ後にjQueryを読み込んで、さらにその後にクラス名を変更するコードを書いた。
このブログでは、コードはpreの後にcodeで括っているので、その条件にあったタグにクラス名を設定することにした。
そのあたりのコードは「続き」で。
Perlのソースをブログに書くために色々と調べてみた。
参考
あなたのソースコードを彩る、Syntax Highlighterまとめ - Blog.37to.net
で、今の状況で導入が比較的簡単そうな「google-code-prettify」を試してみることにした。
A Javascript module and CSS file that allows syntax highlighting of source code snippets in an html page.
README(Javascript code prettifier)のsetupをいい加減に訳すと、
という感じです。
MovableTypeに適用する場合、色々と面倒なので、テンプレートのヘッダーのスタイルシートを読み込んでいるあたりに、新しいスタイルシートを直接読み込みました。
で、スクリプトのほうは、テンプレートのフッターのbodyの閉じタグの前で読み込み、その後prettyPrint()をそのまま実行することにしました。
あとは、実際のコードを書いた部分のpreタグかcodeタグのclassを「prettyprint」に指定すれば、その部分をハイライトしてくれるようです。
とあるスクリプトを改造して使っているのですが、それをソース表示してみます。
はてなスターは、ずっと不思議に思っていた機能なのだが、ブックマークにスターをもらったので調べてみた。
日々ブログを読んでいていいなと思っても、コメントを書いたりトラックバックを送るのは敷居が高く、気持ちが十分に書き手に伝わらずに終わってしまうことも多いでしょう。はてなスターは既存のブログにワンクリックで☆がつけられます。あなたのいいなと思った気持ちを☆に変えて、世界のブログに☆をつけよう!
全然不思議な機能ではなかった。
私自身はこういうものをクリックするのに何故か抵抗があったのですが。
でも、自分がもらってみると嬉しいものですね。
まあ、ちょっと共感したので、さらに調べてみるとMTのプラグインに「はてなスター」を使えるようになるものがあったので導入してみました。
さて、うまくいくかな。
気づけば4.21にアップデートされていたのでアップグレード。
折角なので、前に書いた記事を検証するのも兼ねてみた。
途中、そういえば「mt-config.cgi」をコピーしていた事が抜けていた。
が、mt-wizard.cgiで自動的に設定できるので大きな問題ではない。
まあ、特殊な設定をしているのであればコピーするに越したことは無いのだが。
しかし、あいかわらずスタイル変更スクリプトはエラーになっている。
以前と同じようにStyleCatcherを入れなおして解決。
早々に修正してほしいものですね。
MT4.1の時にテンプレートにタグの閉じ忘れがあった件を思い出したので、クリーンインストールしたMTOS4.2のテンプレートをのぞいてみた。
そしたら、中身が全然変わっていた。
ずいぶんと項目が少なくなったようだ。
バージョンアップしたから変わったのか、それとも、オープンソースにしたから変わったのか。
MTOS4.2のテンプレートで以前の部分に相当するのは「ブログ記事の概要」でしょうね、たぶん。
タグの閉じ忘れは治っていました。
オープンソース版を折角選んだのだから、以前のテンプレートは捨ててしまったほうが良かったかなぁ、と少し後悔しました。
そのうち、テンプレートを初期化したくなるかもしれません(ぇ
MTOS4.2でスタイルの変更がエラーになっていた件の続報。
結果から言うと今のところ問題なく動くようになった、という感じです。
ただ、再構築はかなり時間がかかりました。
ちなみに、もうすぐラスベガスに行くのでそれっぽいデザインにしてみました。
で、どのようにしたか、ですが。
とりあえず英語サイトでstylecatcherのコードが無いか探してみたところ、発見できました。
Provides a simple interface for browsing and selecting styles for a published blog
とりあえず、ここからzipファイルをダウンロードします。
アップデートを適当にやったせいなのか、「デザイン」-「スタイル」でのスタイルの変更時にスクリプトエラーが出るようになった。
画像とかは切り替わるのだが、カラムの配置変更ができなくなっているようだ。
むむむむむ。
ログを見ると以下のアクセスで500エラーになっている。
POST /mt/mt.cgi?.r=0.11949529833798522 HTTP/1.1
「.r」の数値はほかにも色々。
結局POSTの中身が問題なのか。
ただ、エラーがダイアログで出てくるので、デバッグ情報を仕込んだとしても、そこから原因を探求するのはなかなか面倒そうだ。
と、いきなり弱気。
とりあえず、クリーンインストールして試してみたいね。
毎度の事ながら、シンボリックリンクを使ったアップデートの仕方を忘れる。
以前からMovable Type 備忘録 - シンボリックリンクでMovableType3.32アップグレードを参考にしてアップグレードをしていたのだが、シンボリックリンクを更新するやり方とかをすぐに忘れるので備忘録ということで書いておく。