9月 2009

  • 正規表現を学ぶ

    By mattz, 2009/09/30

    正規表現をいまのうちに覚えておきたい人のためのリソース集に載っていないけど、これ さえ抑えとけば大丈夫という正規表現関連リンク集。集といっても2個しかないけど。

    Regular Expression(Riue ちゃんの正規表現講座)
    ここの内容を全部理解できれば、それだけで仕事で使える正規表現使いになれます。そして正規表現に興味を持った人であれば理解できる内容なので絶対にお勧め。正規表現とは何かというのを理解するためには、ここだけで十分。他の諸々は要らないと思う。具体的な使用方法に落とし込めないとか言うのはまた別の問題だな。
    Perl正規表現雑技
    ここの内容を全部理解、できたら感心します。というか、正規表現で本1冊書けるんじゃないかな。内容としては(Perlの)正規表現ではこんなことがで きるんだよ、というものですが、できたからなんなの?と思ってしまうもの(それ何も正規表現でやらなくてもいんじゃね?的な)もチラホラと。まぁでも、一読はすべき。

    追記

    そうそう。追記というか、このエントリ書き始めたときはこれこそが本題のはずだったのに、なぜか書き忘れてしまっていたことを追記。

    正規表現が分かるようになったら読むように

    タグ

  • このブログへのリファラみてると

    By mattz, 2009/09/30

    時々、次のようなフレーズで検索をしてくる人がいます。

    filetype:dat wand.dat

    以前、こんなエントリを書いたことがあります。Bookmark.htmlを公開するくらいはまだ可愛い ものですが、wand.datを私的バックアップのつもりでwebサーバ上に置いているような人がもしいるなら、絶対にやめましょう。

    wand.datを盗まれたと仮定します。wand.datはバイナリファイルなので、簡単には読めませんが、私は使ったことがありませんけど、読み取り用のソフトなんかもあるとか聞いたことありますし、そもそも、他のマシンのwand.datでも自分のOperaの所定の場所に置くだけで、そのままwand.datが適用されちゃい ますから、あなたが使っているwand設定は使われ放題です。

    盗んだ方がそのwand.datを見て本来の持ち主がどこのサイトでwand設定がしてあるかが分からなかったとしても、利用者が多そうなWebサービス(mixiとかYahooとかGmailとかtwitterとか)ログイン画面に行ってみればいいだけなので、全て入られ放題。自分のプロフィール画面とか頻繁に確認しますか?勝手に書きかえれられてもなかなか気づかないとかありえますよ。はてなブックマークしか使ってないつもりがいつの間にか日記が開設されてたとかイヤじゃないですか?

    ネットバンキングだって、片っ端から銀行のログインページ開いてみればいいだけですからね。

    wand.datをバックアップしたいという気持ちも分かりますが、ホントにこれだけはローカルにやってください。

    タグ

  • きむらと田村

    By mattz, 2009/09/29

    僕が木村カエラ好きであることは、まぁ別に隠してもいないので知っている人はそれなりにいて、でそういう人はたむらぱんも好きだと言って写真なんか見せると、皆、特に女性は口を揃えて「あぁ、分かる」とか言うのですが、そんなに似てるんですかね?この二人。

    僕にはよく分からないのですが。

  • Googleのクローラさんへ

    By mattz, 2009/09/29

    http://info.search.yahoo.co.jp/archives/002879.php

    ↑これと同じことするにはどうしたらいいのでしょう?「漫画のタイトル ダウンロード」とか検索してくるガキが鬱陶しくて仕方がないです。

    あ、検索エンジン最適化スターター ガイド は一応目を通しました。ウェブマスター セントラル ブログも斜め読みですけど、一通 り読みました。フォーラムはこれからですけど。

    タグ

  • Operaの濃いカスタマイズ方法を紹介するということはこういうこと

    By mattz, 2009/09/28
    1. 最近FxからOperaに乗り換えた若者の嘆き「Make Link Add-OnはOperaではどうしたらいいの?」
    2. 「こうやったらいいらしいよ」という先達のつぶやき
    3. 実際のやり方
    4. 若者の反応「なにそれ。どうやんの?」

    Operaのカスタマイズに慣れてない人には、これ読んだだけでは導入は無理だもんね。僕が最近になって こう訴えるようになったのはこれがあるから。

    なので、教える方も最後まで面倒みてあげてね。

    追記

    Re:「◯◯はOperaではどうしたらいいの?」

    うん。ちょっと言葉が足りなかったかも。先ほど「教える方」と書いたのは、twitterでedvakfさんのエントリを紹介した方を指してるつもりだった。まぁ エントリタイトル的にはedvakfさんのエントリを非難してるみたいに見えるよね。反省。

    昔のエントリ修正して回るのは僕だってイヤだもの。

    あ、あとid:klim0824はFxにあれだけの数のAdd-On入れるくらいの人だから、いずれOperaのメニュー編集くらいはするようになるとは思います。そんなことしない方がいいのに、とは思ってるけど。

    タグ

  • 英字キーボード愛好家

    By mattz, 2009/09/18

    自分自身が英字キーボードを愛用していることもあって、英字キーボードに関する色々を目にすることが多いのですが、英字キーボードを使う人によくいるのが、Windowsキーやアプリケーションキーが邪魔、とかいう人。

    ホントにそう思うか?そりゃまぁOSがWindowsじゃなかったりしたら確かに邪魔かもしれないけど。

    アプリケーションキーは僕もそんなに使う機会もないし、なくてもそれほど困らない(Shift+F10とか、最悪右クリックで代用が効くので)が、Windowsキーがないと、とても困るぞ。

    Win+DとかWin+LとかWin+EとかWin+Bとかどうすんだ?

    Win+Dはクイックランチのデスクトップを表示アイコンをクリックか?
    Win+LはCtrl+Alt+DelしてEnter?
    Win+EはCtrl+EscしてRしてexplorerでEnter?
    Win+BとなるとCtrl+EscしてEscしてTab、Tabだぞ?

    やってられるか。

    マウス使え?ごもっともです。

  • Operaのなんとかバー

    By mattz, 2009/09/18

    検索ニーズにこたえる月間シリーズ。

    そんなに多いわけでもないけど「Opera ○○バー」で検索してくる人。Operaというブラウザは、割と簡単な操作でいろんな○○バーが非表示にできちゃう ので、間違えて消しちゃって困る人が案外多いようなので、その辺の復活のさせ方について。なんとかiniファイルをエディタで開けとかそういうことは言わないのでご安心ください。

    なお、全ての説明はWindows版のOpera 10ベースです。それしか持ってないんで。MacとかUnix系の人はうまいこと読み替えてください。

    メニューバー

    メニューバーが消えちゃった場合は、[Alt]キーを1回ポンと押して離すと、

    こんな感じのメニュー(少し前のsnapshotの時のスクリーンショットなので、一部日本語化されていませんが)が表示されるので、「メニューバーを表示する」(この画像だとShow Menu Bar)ってのを選択すれば復活します。

    メインバー

    戻るだの進むだののボタンが表示されてるやつですが、えー、正直こいつの存在意義が一番よく分からないので、消えたままにしときなさい。戻るも進むも更新も全部マウスジェスチャとかキーボードショートカットでできるんだから。わざわざマウスカーソルをそこまで持っていって押すとか無駄なことをするのはやめるといいよ。

    どうしても表示したければ表示メニューのサブメニューにツールバーってのがあって、そこで表示に切り替えられます。

    メインバー以外に以下のような○○バー(パネルはツールバーじゃないけど)の表示/非表示がここで切り替えられるので、やってみるとよいです。

    • パネル
    • パーソナルバー
    • タブバー
    • ステータスバー
    • アドレスバー
    • ナビゲーションバー

    ここから表示にできないのがビューバーとスタートバーですが、これを復活させるには[Shift+F12]で表示される、「外観の設定」ダイアログの「ツールバ ー」タブにチェックボックスがあるので、ここで。というかこれを先に言えば全部変えられるじゃんね。まぁいいか。

    パネル

    うっかり消してしまったパネルはパネルツールバーの「+」っぽいボタンをクリックで選びなおせばOK。

    このボタン自体を消しちゃった、とか言う場合は、「外観の設定」ダイアログの「パネル」タブで。

    独自に設定したWebパネルはここからは無理ですが、ブックマークしてあるなら、ブックマークパネルとかブックマーク編集画面でお目当てのブックマーク を右クリックしてブックマークのプロパティを開くと、パネルに表示するっていうチェックボックスがあるのでそこにチェック。

    あるいは、実際のそのページを開いて、ブックマークに追加する操作をしてもらって、[詳細]ボタンを押しても同じです。

    ボタン

    これも「概観の設定」ダイアログの「ボタン」タブで。

    ちなみに、いろいろなボタンがいろいろな場所に配置できるので、ボタンが好きな人はいろいろやってみたらいいと思います。

    独自のボタンの場合までは知らない。ボタン単位のカスタマイズが自分でできる人なら、自分で何とかできるでしょ。

    スクロールバー

    コメントで指摘を受けて、僕が設定項目見逃してただけだったのが判明したので以下は削除。復活方法はコメント欄を参照ください。


    一番説明が簡単で確実なのが
    opera:config#UserPrefs|ShowScrollBars
    これをコピーして、アドレスバーに貼り付けるか、Paste&Goしてチェック状態にして保存。これで復活します。


    ただうっかり消しちゃった人は多分、ショートカットの設定をOpera 9.2 Compatibleで使っていて[Ctrl+F7]を押しちゃったんじゃないかと思いますので、[Ctrl+F7]でも戻ると思います。


    標準のショートカットにはスクロールバーのON/OFFは割り当てられてないみたいですし、普通の設定画面じゃ切り替えられないし。

    タグ

  • Drupal 7を入れてみた

    By mattz, 2009/09/18

    と言っても、裏側での話。このブログは「Drupal 6.14にUpdateしました。」で書いた通り、6のままです。

    さくらサーバへのインストールに関しては、「さくらインターネットサーバでDrupal 6.11を導入した」でやったことと大体同じで問題ありませんでした。

    管理画面が随分変わっていて戸惑いますね。日本語されていないからというだけではないと思う。

    今のところ何をするつもりもないのですが、しばらく遊んでみようと思います。前にチラッと見た限りではモジュールの書き方が変わっているみたいなのでその辺も試してみたい。

    とりあえずは自作モジュールの移植かな。

    追記

    インストールしたDrupal7は http://mattz.sakura.ne.jp/ でアクセスできます。今後Drupal7について何か書くことがあれば、こちらに書きます。めったに書かないとは思うけど。

  • Drupal 6.14にUpdateしました。

    By mattz, 2009/09/17

    drupal 6.14がリリースされました。

    大して必要もないのにOpen IDモジュールを有効化しているので、やっといた方がいいかな、ってことでさくっとupdate。

    何度やっても手順を忘れるなぁとUpdate手順を検索してclipしたら、もう既にclipしてありました、というオチ。

    タグ

  • 無理矢理RSS化pipes入門

    By mattz, 2009/09/17

    問題はRSS吐いてないサイトであるとのコメントをいただいたので、その辺触れてみたい。正直先程と同様の精細度では書けないので(後半明らかに手抜きになったように)ポイントだけ。

    なお、RSS吐いてないサイトをpipesでどうにかするためには、正規表現に関する知識が不可欠かと思われます。まったく分からんという方はどっかで勉強してきてください。

    まず、RSSを出力していない以上、最初のFetch Feedモジュールは使えませんので、Fetch Pageモジュールからスタートすることになります。実はYQLなんていうモジュールもあって、なかなか複雑なこともできたりするんですが、SQLやらXPathなんていう知識まで必要になってきちゃうので、ここでは扱いません。その辺知ってるって人は勝手に研究してください。

    今回は一から説明するのではなく、既にある、RSSをでっち上げるpipeをサンプルにします。今回はスクリーンショットを載せたりしませんので、Pipesの実際のソースや、サイトのソースをご自分で見ながら読んでください。またそういう前提で書きます。

    PipesでRSSをでっち上げているサイトは僕が作った中にもいくつかあるんですが、とりあえず僕の好きな女優さんの一人であるいとうあいこさんが地図のマップルのサイトでやっている、いとうあいこのふんわり京都のRSS化について説明します。

    本題とは外れますが、このサイト、なんでRSS配信しないんでしょうかね。まぁいいですけど。

    このpipeのURLは http://pipes.yahoo.com/pipes/pipe.info?_id=yAn1bUFo3hGeMQoB3cXxwQ
    pipeのソースを確認するにはCloneしてEdit Sourceすればいいです。

    もともとRSSを出力していないサイトをRSS化するのにまず必要なのが、最近の更新一覧的なリストです。これがないサイトに関しては、pipeでどうにかするのは正直言って厳しい。Numeriとかは一度挑戦してあきらめました。ふんわり旅行記の場合は、旅行記一覧というページがあるので、そこをベースにします。

    まずは、旅行記一覧のページのURLを、Fetch Pageモジュールに渡します。んで、ページを見て、ページのソースを見てというのを繰り返すと、どうやら、<dl class="TravelDiary">というあたりを使うのがよさそうだねってのが分かりますので、Fetch PageモジュールのCut content fromに<dl class="TravelDiary">を設定します。で、toの方なんですが、</dl>としてしまうと、最初の1個しか取れなくなってしまうので、このリストの次の要素の始まりである、<div class="kensu10HyoujiBtm">にします。これで、旅行記の一覧部分が切り出せましたので、あとはこれを個々のエントリに分けてあげる必要があります。どうするかというと、分割するために目印となる文字列を探します。前回のエントリでは、これについての説明は面倒なので省略しましたか、それがdelimiterです。この例では</dl>なんかが十分その役目を果たしてくれそうなので、それを設定します。という説明だけでは分からないでしょうけど、頑張って元のHTMLのソースを見てなんとか納得してください。

    これで、とりあえず一つ一つの旅行記がいくつかのitemに分割されたわけですが、このままではとてもRSSリーダが読める状態ではないので、それをどうにかしてあげます。

    RSSだと言い張るためには各itemにtitle要素、link要素が最低限必要で、pubDateなんかはあった方がいいし、どうせだからこいつもdescriptionに本文突っ込んでしまえばRSSリーダで全部読めて幸せなので、そこを着地点に設定します。まぁ全文取得に関しては一応前回説明したので今回は説明する気はないですけど。

    で、話を戻して、</dl>で分割してあげたRSSのなりそこないの各itemは、content要素だけを持っている状態です。なんとなく結構頑張って我慢して読んでいた人でもこの辺で読むのやめたんじゃなかろうか思うんですが続けます。Pipes' EditorのDebbuger領域で確認してもらうと、このcontent要素の中身には、title、link、pubDateの各要素に相当する情報が入っていますので、ここからtitle、link、pubDateとしてちゃんと使える形として取り出す作業をこれから行います。

    当然このままではどうにもなりませんので、このcontent要素を先ほども使ったRenameモジュールを使って、title、link、pubDateの各要素としてCopy As(実際には最後の1個はRenameですが)します。で、コピーした各要素について、日付やタイトルやURLとして使える形になるようにRegexモジュールで形を整えていきます。実際の設定はソースを確認して欲しいのですが、

    <dl class="TravelDiary">
    <dt><a rel="nofollow" target="_blank" href="http://www.mapple.net/travels/itoaiko/19350.htm">
    2009年9月16日の旅行記</a><div class="Traveldate">旅行日:<span class="date">
    <span class="datetext">
    2009.09.16</span></span></div></dt><dd><div class="linkage">“京都の生き物たち”</div><p></p></dd></dl>
    

    こんな感じだったcontent要素をCopy As or Rename後、Regexで色々やることによって、

    item
      link:http://www.mapple.net/travels/itoaiko/19350.htm
      title:2009年9月16日の旅行記 “京都の生き物たち”
      pubDate:2009-09-16
    

    こんなものにすることができます。

    すでにこの状態でもRSSとしてはぎりぎり成立してますから、名前をつけて保存すればRSSリーダで購読することが可能です。

    この後は、入用であれば前のエントリの要領で全文化するとかすればいいだけです。サンプルはそのようになっていますので、興味があればご覧ください。

    例によって最後は手抜きになりましたが、以上で「無理矢理RSS化pipes入門」を終わります。

    ツッコミ・質問は歓迎です。遠慮なくどうぞ。

    タグ

  • Yahoo! pipes入門

    By mattz, 2009/09/16

    「アメブロ rss カテゴリ別」のような検索キーワードでいらっしゃる方が結構いるのですが、アメブロさんはどうもそのような機能は提供されていないご様子。個人的に検索ニーズに応える月間実施中(今作った)なので、Yahoo! pipesを使ってアメーバのブログのカテゴリ(アメブロ的にはテーマか?)別のRSS を生成する方法など書いてみようと思う。

    モデルケースが必要なので、アメブロのトップに行ってみた。一般の人のブログではなんなので、適当な芸能人ブログを使おうと思ったのだが、ランキング上位のほとんどの芸能人がろくにテーマを使ってません。テーマ:ブログばっかり。叶姉妹はまぁまぁ使ってるようなんですが、この人たちあまり好きじゃないのよねぇ、とか思ってたらいいブログ見つけた。「渋谷ではたらく社長のブログ」。これでいいじゃん。お誂え向きに『著作権保護のため、記事の一部のみ表示されております。』もしてやがるし。全文配信化のサンプルにもなるというね。

    そろそろ具体的に話を進めます。

    Yahoo!のアカウントを取得する

    Yahoo! pipesを利用するには、Yahoo!にアカウントが必要です。ちなみにYahoo!JAPANのアカウントは使えないので日本以外のYahoo!でアカウント取得して ください。まぁ、www.yahoo.comで作っとけば一番確実。例外はあるかもしれませんが、日本以外ならどこのYahoo!でアカウント作ってもOKなはずですが、検証はしてませんので。

    Google Chromeをインストール

    まず、これは必須でもなんでもありません。Pipes' editorはいわゆるWebアプリなんですが、Yahoo!の推奨する環境はFirefox、IE7以降、Safariとなっています。これらのブラウザが既にインストールされているならそれを使っていただいて構いませんし、サポートしてねーよというダイアログこそ表示されるもののOperaでだって編集はできます。ただ、理屈は知りませんがPipes' editorはWebKitと相性がよいようなので。SafariもWebKitですけど、Safariはねぇ……

    pipeを作る

    入門とかうたっておきながら、いきなり作り始めます。こんなもん、実際に触るのが一番だし。
    http://pipes.yahoo.com/pipes/ にログインしたら、「Create a pipe」というリンクをクリックします。

    こんな感じの画面(ウィンドウは小さくしてます)になりますので、まずは「Fetch Feed」というボタンを右の方眼紙っぽいところにドラッグするか、右側の「+」ボタンを押します。

    左側に並んでいるいろいろなボタンはモジュールといって、それぞれにいろんな機能を持っています。Fetch FeedモジュールはRSS(0.9も1.0も0.91も2.0も 全部含む)とかAtomとかそういういわゆるRSSリーダが扱うようなデータを構文解析して読みやすくしてくれるモジュール。RSSのURLを渡してあげるといい仕事をします。

    渋谷ではたらく社長のブログのRSSのURLはhttp://feedblog.ameba.jp/rss/ameblo/shibuya/rss20.xmlなので、この文字列をコピペして、URLの欄に 貼り付けます。ちゃんとフィードが取得できるURLの場合は、この画像ではオレンジの三角になっている部分が、サイトのfavicon(ない場合は?マーク)に変わり、画面の下の方のデバッグ領域にエントリタイトルの一覧が表示されます。されない場合は、URLをよく確認してください。

    今回は目的がカテゴリ(テーマ)別にRSSを生成する、ですが、RSSの形式や内容によっては、各フィードにカテゴリ情報が含まれていたりして、この段階でFilterモジュール(詳しくは後ほど)を使えば済んでしまう場合があります。残念ながらアメーバさんはあまりRSSでの配信には積極的ではないようですので、それは無理。ということで、次のステップに進みます。

    LoopモジュールとFetch Pageモジュール

    pipesは基本的にmoduleの組み合わせで目的を達成させるツールです。今から使うのが、LoopモジュールとFetch Pageモジュール(この二つは結構よく使うのでここでマスターしましょう)。Loopモジュールは左側のメニューのOperatorsグループの中の一つなので、まずはそこをクリックします。メニューが展開して、Loopっていうのが出てくるので、それをさっきと同じようにドラッグするか「+」をクリックします。

    Loopモジュールは、RSSに含まれる複数のitemそれぞれについて、同じ処理を繰り返したいときに使うモジュールです。Fetch Pageモジュールは、Fetch Feedモジュールとよく似た名前ですが、機能も似ていて、URLを指定すると、そのページの内容を丸ごと取得してきます。Fetch Feedと違うのは、特に構文解析などはせず、ソースそのままの文字列(本文中に相対パスで書かれているようなものを絶対パスに変換してくれたりはする。意味が分からない人は無視して くれてOK)を返してくれるモジュールです。

    これだけでは分からないので、実際にやってみましょう。

    まず、Fetch Feedモジュールの出力(下側の水色○)とLoopモジュールの入力(上側の水色○)をつなげます。やり方はマウスでみよ~んとつなげるだけ。入力とか出力とか何言ってんの?というあなた。意味分からなくていいから上が入力、下が出力と覚えてください。とにかく、こうやってつなげることで、Fetch Feedモジュールがとってきたフィード情報を、Loopモジュールに渡してあげることができます。

    Loopモジュールは、受け取ったRSSのitem(要はブログのエントリ)の1個1個について同じ処理をすると書きましたが、Loopモジュールはお腹に穴があいていますね。ここにその「処理をする」モジュール(や既に作ってあるpipe)を入れてあげます。今ここではFetch pageモジュールを入れます。左側のメニューのSourcesをクリックして、Fetch pageモジュールを表示させたら、Loopモジュールのお腹の穴の中にドラッグします。なお、お腹に入れられるモジュールのときは、穴のふちが赤くなるので覚えといてください。

    こんな感じになってればOKなので、Fetch PageモジュールのURL欄の右側の右向きの三角をクリックします。

    いろいろ選択肢があるんですが、ここでは「item.link」ってやつを選びます。item.linkというのは、Loopモジュールが扱う一つ一つのitemのリンク先を表します。要するに、ブログの記事一つ一つのURL(必ずしもそうとは言い切れませんが)。つまり、Fetch Pageモジュールに個別記事のURLを渡して、記事内容を取得してきてね、と命令していることになります。

    とってきた記事内容は、つまりそのページのソースです、サイドバーだの何だのといったあまり必要ではないものも含んでいますので、必要な部分だけを取り出すのが必要になってきます。ここで使うのが、Fetch Pageモジュールの「Cut content from ____ to ____」の部分。ブログのトップではなくて、どれか一つの記事をブラウザで表示して、「ソースの表示」をします。

    この辺は多少経験も必要になってきてしまいますが、ブログの場合、大体テーマとかスキンとはテンプレートとかがあるので、大体は機械的に判断できるようなつくりになっています。

    今回の場合必要なのは、エントリのカテゴリ(テーマ)と、ついでに本文なので、それを切り出せるように始まりの文字と終わりの文字を探します。

    この例では、From(始まり)として<!--//.entry_head-->、To(終わり)に<!--entryBottom-->と設定しました。本文を取りたいだけであれば、始まりの方は<div class="contents">でいいと思いますが、今回はテーマも欲しかったのでこのように設定し、さらに、delilmiterとして<span class="date">というのも使っています。

    この辺のモジュールのさまざまなオプションやら何やらを一つ一つ説明していくと長くなりますし、そもそも僕がめんどくさいので、省略します。Pipes editorの左下にhelp textも表示されていますし使用例なんかも見ることができますので、詳しく知りたい人はそちらを参照のこと。

    Renameモジュール

    次は説明が難しいのですが、まずは実際にやってみます。使うのはRenameモジュール。これをLoopモジュールの下に配置してLoopモジュールとつなげます。Renameモジュールの「+Mappings」というのを1回クリックし、入力欄を二つにします。

    1個目の入力欄。左側には「item.loop:fetchpage.0.content」、真ん中の選択肢はRename、右側の入力欄には「category」と入れます。
    2個目の入力欄。左側には「item.loop:fetchpage.1.content」、真ん中の選択肢はRename、右側の入力欄には「description」と入れます。

    Regexモジュール

    これだけですと、まだまだ余計なものがくっついているのでそれを取っ払います。使うのはRegex(正規表現)モジュール。

    今のこの時点でcategoryがどんな値になっているかというと、[<span class="theme">テーマ:<a rel="nofollow" target="_blank" href="http://ameblo.jp/shibuya/theme-10000000241.html">社長業</a></span>]こんな感じ。ここで欲しいのはこの例だと「社長業」の部分だけです。また、description(RSSリーダで読むのは結局ここ)にも、特に必要ではない日付情報が入っちゃっています。これはまぁ、Fetch Pageのやり方次第なのですが。

    やはり「+Rules」を1回クリックして入力欄を1個増やします。

    1個目の入力欄。左側には「item.category」、真ん中のreplaceには「(<.*?>|テーマ:)」、右側の入力欄は空っぽのまま、gとmにチェック。
    2個目の入力欄。左側には「item.description」、真ん中のreplaceに「^.*?<」、右側の入力欄には「<」と入れます。

    Filterモジュール

    次がやっと出てきました。Filterモジュール。カテゴリ別配信の肝です。これは、それぞれのitemが特定の条件を満たすものだけ抽出するモジュール。いろいろオプションを設定すると、特定の条件を満たすものを排除するとか、条件を複数設定して全てに一致するなら、とか、どれかに一致するなら、など細かく設定できます。とはいえ、今は特定のカテゴリだけを抽出したいだけなので、次のように設定します。

    右側のやつ。これはText Inputモジュールといいまして、任意の文字列をインプットしてもらうためのモジュールです。ホントに特定のカテゴリだけを抽出したいだけなら、Filterモジュールの右側の入力欄にその抽出したいカテゴリ(テーマ)を設定してやればいいのですが、カテゴリは自由に設定できるようにしよう、というのが、これ。これを使わないと、カテゴリ毎にパイプを作らなければならなくなってしまいますので、任意のカテゴリ名を入力できるようにこうしました。これなら出来上がったpipeのURLにカテゴリを含めることができます。

    保存して実行

    とりあえず、このブログの特定カテゴリのエントリだけを配信するpipeは完成なので、Filterモジュールの出力をPipe Outputにつなげ、このPipe自体の名前を入力してSaveします。Saveができると、上の方に「Pipe Saved Run Pipe...」と表示されますので、「Run Pipe...」の部分をクリックしてみましょう 。

    いま僕が作ったpipeはこちら⇒「渋はた社ブ(カテゴリ別)」。

    アクセスしたら、category欄に例えば「ブログ」とか「アメブロ」とか入力して[Run Pipe]ボタンを押します。Google Readerに登録するなら、そこにボタンがあるのでそれを押せばいいし、LDRなどで購読するには、「Get as RSS」のところをクリックするとか、右クリックしてリンクURLをコピーするとかして、どうにかしてください。

    最後めんどくさくなって適当になりましたが、今日のところはこの辺で。多分、次はないけど。

    質問などあれば、僕の分かる範囲でお答えします。

    ま、でも、RSSをpipesでゴニョゴニョするのは、簡単な部類なんだな。楽しいのはRSSを出力していないサイトをゴニョゴニョすることであり。はてなアンテナでもいいんだけども。

    タグ

  • 今日のTwitterとか今日のつぶやきとか

    By mattz, 2009/09/16

    まぁ、そういった感じで、自分の1日分のtweetをまとめてブログのエントリにする(手動か自動かは問わない)人が増えてきたのですが、あれ、邪魔なんだよねぇ。 あなたのブログは気に入ってるからRSSリーダに登録したけど、呟きには興味がないし、興味があればフォローするし。

    ライフログとしてtweetログをまとめておくことの意義とかそういうのは否定しないし、別に意味もなくやってたとしてもそれはそれでいいのだけども。

    わざわざそのためのフィルタpipe作るのもあほらしいので、読み飛ばすだけで我慢してるけど。

    はてなダイアリだったらサブアカ使うとかして、別のブログにしてくれると助かるんだけどなぁ。

    これ読んだ人がどう思って、どうしようが好きにすればいいと思うけど、声だけは上げておこう。

    追記

    そうそう、otsuneさんから閲覧者がフィルターするほうが低コストだよというコメントをいただいております。

    それはもっともな話で、僕も今のところは脳内フィルタ(僕の考えうる限りで最も低コストなフィルタ)で運用しております。フィルターするより購読解除する方が もっとずっとさらに圧倒的に低コストなので、つぶやきエントリ以外の部分次第ではそっちに走るだろうなぁ、いずれ。遠からず。

    タグ

  • 取り立たされていた

    By mattz, 2009/09/15

    「取り沙汰されていた」だってば。かなで書くと「とりざたされていた」。「とりだたされていた」、ではなく。

    こういう空耳の発生するメカニズムを知りたいよ。

    タグ

  • 特定のドメインについてのみJavaScriptのエラー発生時だけコンソールを自動的に開きたい、というときのOpera 10の設定例

    By mattz, 2009/09/08

    1.全体設定はオフ

    当然といえば当然ですが、Generalな設定はコンソールを開かない、にしておきます。

    2.サイトごとの設定で、エラー発生時にコンソールを開くをオンに

    これも当然といえば当然ですが、コンソールを開きたいドメインのサイトごとの設定では、エラー発生時に「コンソールを開く」をオンにしておきます。ただし、 これだけでは、CSSのwarningがあってもコンソールが開いてしまう。CSSの警告は、クロスブラウザなCSSを書こうと思うとある程度避けられないし、CMSなどを使っている場合これを消すのはなかなか骨である。消したところで大して恩恵もないのに。で、ここからが肝心。

    3.opera:config

    「opera:config#UserPrefs|ErrorConsoleFilter」をアドレスバーに貼り付けて開くと、

    javascript=4,@[設定したいドメイン]=2

    こんな感じの値になっているかと思う。これを

    javascript=4,css=4,@[設定したいドメイン]=3

    こんな感じに変える。

    とりあえず僕のところではこれで僕が望む状態になっているのでそれでよし。うまくいかなくても知らないよ。

    以下は推測、というかちゃんとドキュメントに当たれよという話なんですが、javascript=4,mail=4,css=4 などの「4」はエラー時のコンソールを表示しないの意。「3」はエラーを表示、だと思う。「2」、「1」はよくわかんないけど、それぞれ「警告」を表示(エラーも含む)、メッセージを表示(エラー、警告も含む)かなー。確かめてはいないけど。

    タグはpersonalizeにしておこう。

    ちょっと追記

    あとは、JavaScriptのerrorはログに出力するようにしといたりすると、Cygwinでtailできたりしてこれはこれでいいかもしれない。

    なお、これらは両立可能。

    タグ

  • タイトル未定

    By mattz, 2009/09/05

    木村さんのデビュー5周年記念ライブ「Go!5!カエランド」。

    行きたかったけど悩んでる間に売切れてしまったのですがライブDVDが出るようなので予約。

  • 言葉を音で覚えるのは危険です

    By mattz, 2009/09/04

    対症療法ね。

    漢字を見れば分かると思うけど、表に出てきた症状に合わせて、治療法を決めていくやり方のこと。原因の追究をしてないから、後から後から違う症状が出てきた りして手に負えなくなったりするので、あんまりやり方としてはよくないとされる。エンジニアの皆さんも、バグ取ったつもりが別のバグが、とか経験あるでしょ ?

    まぁ、時間的な制約とか原因が分かんないとかで、仕方なくそういう、悪く言えば場当たり的な対応をせざるを得ないこともあったりします。

    よくある間違いが対処療法。響きもよく似ているし、なんとなく字面的にもおかしくなさそうだよね。なんだか間違いって言い切っちゃうのもかわいそうなんだけ どでもやっぱり間違い。今のところ辞書には載ってないです。残念ながら。

    で、対処量法ってのは一体どっから出てきたの?

    タグ

  • ツールバー関係をいろいろ変更してみた

    By mattz, 2009/09/04

    メニューバー非表示は今まで通り。「メニューバーを非表示にするとタブバーに表示されるメニューバーの代わりになるボタン」(これなんていう名前?)が時々消 えてしまうのだけどどうしてだろう。いつの間にか消えてるので何が引き金なんだか分からない。一度メニューバーを表示してから再度非表示にするとまた表示さ れるので、とりあえずAlt+F11をメニューバーの表示/非表示切り替えに割り当てて(といっても"Platform Unix, F11 alt"となっている設定の"Platform Unix,"を消すだけだ)いるが、不思議だ。

    と、書こうとして、キーボード設定の"Platform Unix,"ってのを確認しようと思って、ショートカット設定編集画面を開いて[OK]、[OK]ってやったら消えた。他の マシンでも起きるか確認したら、フォーラムに書き込んでおこう。

    追記

    僕のこのPCでしか起きない。「ファイルオープンダイアログで右クリックすると落ちる」と同様、僕のマシン固有の何かのようだ。フォーラムへの報告はしない。

    追記終わり

    タブバーは上。今まで通り。非表示派がヘビーOpera-erの主流かのように各所で書かれているが、知らん。僕は何百もタブを同時に開くことはないのでこれでいい のだ。

    アドレスバーを消した。ナビゲーションバーも消した。代わりに下に表示してあるステータスバーに、アドレス欄と、ナビゲーションバーの[ホーム]、[目次]、[前へ]、[次へ]の各ボタンを追加するようにした。

    画像にするとこんな感じ。実際にはもっとウィンドウ幅が大きいので、すごく長いものはともかくとして、ちゃんとアドレス表示もできる。検索もここからできる し「h」キーでフォーカスもいくので、実用上困ることはなさそう。

    あ、ズームのプルダウンも消した。キーボードショートカットの方が早いし要らない。てことはFTWボタンも要らないな。消そう。

    タグ

  • メニュー編集はあまりしたくないのだけど

    By mattz, 2009/09/02

    邪魔。

    ↑これ。

    「サイトごとの設定を編集」する時は、「右クリックして一番下のやつ」っていう風に手が覚えてるので、つい選びそうになる。

    メニューを編集すればいいってのは分かってる。分かってるけどしたくない。

    「右クリックしてD」と手に覚えさせよう。

    タグ

  • Opera 10 リリース

    By mattz, 2009/09/01

    正式版リリースということで、完全再インストールを行った。

    ベータ版のアンインストール

    1. コントロールパネルの「プログラムの削除と変更」からアンインストール
    2. "C:\Documents and Settings\[user]\Application Data\Opera"フォルダを削除
    3. "C:\Documents and Settings\[user]\Local Settings\Application Data\Opera\Opera"フォルダをリネーム(基本的にはメールデータを移行するため)
    4. "C:\Program Files\Opera"フォルダを削除
    5. 一応OS(Windows XP)を再起動

    Opera 10のインストール

    ごく普通に。インストール後はそのまま起動。即終了。

    メールデータのコピー

    先ほどリネームした"C:\Documents and Settings\[user]\Local Settings\Application Data\Opera\Opera"フォルダの中の"mail"フォルダを、"C:\Documents and Settings\[user]\Local Settings\Application Data\Opera\Opera"フォルダにコピー。

    Opera 10の起動

    メールサーバのログインに失敗するので、パスワードを入力。

    設定

    ようこそページ上で↓→してマウスジェスチャを有効にする。

    表示関係

    パネル
    • パネルの表示位置を右に。
    • パネルツールバーの表示位置を上に、自動改行をしないに変更。
    • 必要なパネルを選択して表示に。
    その他のツールバー(ボタン)
    • 新しいタブを表示するボタンを非表示に
    • パネルの表示非表示切り替えボタンを非表示に
    • アドレスバーの全ボタンと検索欄を削除
    • メニューバーを非表示に

    メニューバーの表示非表示の切り替えがファイルメニューから選択できるようになったのは地味だがいい変更だと思う。

    メインバー 非表示
    ステータスバー 表示 画像のみ
    ナビゲーションバー 必要なときのみ表示 テキストのみ
    パーソナルバー 表示 画像の右にテキスト
    アドレスバー 表示 画像のみ表示
    スタートバー 非表示
    タブバー 表示 画像の右にテキスト表示
    ビューバー 非表示
    スキン

    Opera Standardのまま、でいいんだけど、アイコンサイズを40%に。

    ブックマーク

    既定のブックマークを全部Trush

    ここでいったんOperaを終了し、変更内容を確定させる。クラッシュすると、元に戻ることがあるからね。

    Opera Link

    リンク(同期)対象は基本的に全項目。

    あれ?SpeedDialは9アイテムしか同期してくれないんだっけ?まぁいいや。

    その他の設定(Alt+P)

    一般設定タブ

    • ホームページ欄を空白に。起動時の動作は"復元"のまま。

    ウェブページタブ

    • 標準のフォントをメイリオ系に変更。

    詳細設定タブ

    タブ
    • 見えるチェックボックスは全部オフに。
    • 追加のタブオプションでタブなしウィンドウの表示を許可する、をオンに。
    閲覧
    • 見えるチェックボックスはすべてオンに。滑らかにスクロールはもしかしたらあとで切るかも。
    通知
    • 新着メッセージの通知以外はオフに。
    コンテンツ
    JavaScriptオプション
    • チェックボックスはすべてオフ。
    • ユーザーJSは保留。
    スタイルオプション
    • インラインフレームを表示、スクロールバーにスタイルを適用、をオフに。
    • ユーザースタイルシートは保留
    プログラム
    • 起動時にOperaが標準ブラウザか確認するをオフに。というかインストール時に標準にするにチェックしたし、もう聞いてくれなくていい。
    ショートカット
    • マウス設定とショートカット設定は規定のものをコピーだけしておく。実際の追加は追い追いで。
    • ショートカット設定のコピー元は、9.2コンパチ。シングルキーショートカットも有効に。

    ここでもう一回Operaを再起動してLDRなど開いてみるが、やっぱりフォントの設定はダメか。
    ということで

    フォント設定のやり直し

    文字別フォントの設定で、

    • CJKの記号と句読点
    • 一般句読点
    • 基本ラテン
    • 数字に準じるもの
    • 通貨記号
    • 日本語(カタカナ・ひらがな・漢字)
    • 半角形・全角形

    この辺を、「自動選択」ではなく明示的に好みのフォントに変更。

    大体これで終了。

    タグ

  • 一つわかったこと

    By mattz, 2009/09/01

    選挙の前後数日の間に、「白票」をエントリタイトルに含んで投稿しておくと、5ブクマされるのと同等の効果。

    それにしても、そんなに自分の投じた白票の意味が知りたいですか。でも残念だけど君の投じた白票はただの無効票で、マスメディアに踊らされて---なのかどうかは分かりませんけど---投じた記名の投票が有効になるのが、今の日本における選挙制度なのね。

    白票に意味があると思うのも勝手です。白票を投じて全員にNoを突きつけたつもりになるのも勝手です。個人的にはその手の与太を飛ばすのはやめていただきたい ですけど、まぁ、今後は自分のブログでやめてほしいなぁって書くくらいで留めるつもりです。

    みんなで声上げ続けてれば、誰かが意味を見出してくれることもあるかもしれませんね。僕は大して意味ないと思うので、もっと現実に即した行動、要するに誰か に投票しますけど。

    有効投票率に満たなければ選挙無効にしろ(今回の投票率が有効に値するのかどうか知りませんけど)とかブログに書くのも勝手です。まぁ書いときゃ誰か制度を変 える力のある人の目には触れるかもしれないから、やってみればいいんじゃないですか?同意はしませんけど。

    じゃなかったら自分が変える力のある人になるとかね。

    タグ