2008年5月アーカイブ
昨日は会社のロックが好きなメンバーが集まっている会のイベント、ロック飲みがあり、初めて参加しました。
最後に三宿にあるハードロックバー・Blackmoreというお店に連れて行ってもらった。
お店は普通のスナックの作りなんですが、カラオケではなく、かかっているのは常にハードロック(>ω<) とても素晴らしい。
リクエストも可能。大音量で聴くハードロック/ヘビーメタルのオンパレードは心地よい。 大量のハードロック・レコード、CDがあるので、有名どころはまずあると思いますが、なさそうなマイナーなのは持ち込みもOKだそうです。 私はCAUGHT SOME WHERE IN TIME -- IRON MAIDENをかけてもらった。
マスターはとても若いのにハードロックに詳しいし、話も面白い。
昨日はサプライズ(実は常連さんにはサプライズではない?)もあって、ドラマーの村上ポンタ修一さんが、ふらっと来店しました(汗)
ちょ、ポンタさんハードロックもいけますか(・∀・)
PONTA BOXは全部持ってます!(いささか誇張)とか言いながら握手してもらいまして、しばらく話を聞きました。ちょうどその時、DRAGONFORCE
なんかがかかっていてTWO BASSについて、「ああいうのは1回目は良いけど、2回やったら…(ry」などと仰ってまして、なるほどなるほどと相づち(笑)いやもう、めちゃめちゃ緊張しました。
場所はココ。ちょくちょく行こうと思いますので、一緒になったハードロック好きの方。お話ししましょう(笑)
大きな地図で見る
慣れの問題なのでしょうが、Windows生活が長かったものでAlt+Tabに相当するキーの位置Command+Tabで実行されるアプリケーションの切り替えをWindowsと同じようにWindow単位にしたい。
Window単位の切り替えを実現するユーティリティがWitch。横じゃなく縦並びですが、Window単位になっていていい感じ。同じアプリケーションのWindowがまとまって表示されるのもWindowsより使いやすい気がします。
ところがコレ、デフォルトではOption+Tab(キーの意味としてはOption=Altみたい。MacBookにはそう刻印されている)に割り当てられていて押しづらい。指がCommand+Tabを求めているのでCommand+TabでWitchを動かすためにKeyRemap4MacBookを入れます。システム環境設定からKeyRemap4MacBookを開いて「Remap Tab Key」の中の「Command+Tab to Option+Tab」にチェックするとOK。
WindowsのTortoiseSVNの様なSubversionクライアントがないか、ちょくちょく探していたのですが。
The goal of the SCPlugin project is to integrate Subversion into the Mac OS X Finder. The inspiration for this project came from the TortoiseSVN project.
紹介文を読む限り望んでいたもの。ktkr
まだ実際の使用はこれからだけど良さそうです。 後日また感想を書くかもしれません。
私は通勤の行き帰りを使って、新書でだいたい3、4日に1冊くらい読めるペースだと思うので、今読ミに登録して読み始めると、1冊の本の情報を3、4回更新する事になります。コメントやタグだけ入れる場合もあるのでもう少し多いかもしれません。
今読ミの編集画面はその場にインラインで出すので、結構分かりやすいと思うのですが、どれか一つを変えるために全項目分の編集画面を出すのが少し大げだなと思っていました。
私は仕事から帰ってくるとその日に読んだ分を入れるようにしています。多くの場合、進捗と評価だけ入れるので、まずは「自分のホーム」と「最新の今読ミ」の進捗/評価のアイコンをクリックできるようにして、インプレースで変更できるようにしてみました。

今までと同様、欲しい/未読の状態から進捗が進むと、自動的に入手日が入ったり、読了にすると自動的に読了日も入ります。
今まで進捗や評価だけ入れるのに、大きな編集画面を出すのが面倒だと思っていた方は、お試しください。
バグ報告は imayomi@gmail.com か、このブログにコメントしていただけると嬉しいです。
MacBookを使い始めてからは、Safariをメインで使っていた。
これは速いとかメモリを食わないとか、そういう実質的な理由ではなくて、単にフォームのテキストフィールドが、レガシーな凹み枠なのがかっこ悪かったから。あれですよMotifみたいなの(笑)
まぁ、それでも今読ミのデザイン崩れがないかを確かめるためにFirefox2は入れてあったんですが、つい思い立ってFirefox3 RCを入れてみた。
そしたらテキストフィールド、ちゃんと青枠じゃまいか!使える!(?)
デザイン崩れの確認のため、Firefox2は消したくなかったので、ちゃんとFirefox3 RCのダウンロードページにある、「Firefox 2 との併用」やっときました。これでFirefox2の更新で戻される事はない?
(※今読ミ・ブログパーツテスト中)
ちょっとしたきっかけで佐藤亜紀という作家を知った。デビューはファンタジーノベルズ大賞なのかぁ。
私の最も好きな作家の一人が酒見賢一で、彼は第1回ファンタジーノベルズ大賞受賞者。受賞作品は「後宮小説」。私を古代中国の歴史小説好きにさせた張本人であります。
しかしファンタジーノベルズ大賞はその後、追いかけていなくて、後に鈴木光司という人が「リング」というホラー小説で話題になったときに読んで、あまりのしょーもなさに呆れ果て、その鈴木光司が実はファンタジーノベルズ大賞第2回の優秀賞(大賞は該当なし)だったと知って全く興味をなくしてしまったという経緯があります。(あぁ、でもその優秀賞になった「楽園」は後に読んで悪くなかった記憶あり)
そしてその第3回大賞受賞者が佐藤亜紀の「バルタザークの遍歴」みたいです。
全く知らなかったのですが、その後、件の賞を主催している新潮社といろいろあったりしたらしい。 本の目利きに関して非常に信頼している私の先輩が、最近読んでいるらしいので要チェックなのであります。
MacOSXはTiger時代にも会社で数ヶ月使っていたのでわりと知っているつもりでしたが、細かいところで色々と改善がある。
さっき気づいたTerminalのタブには嬉しくなってしまった。WindowsではPoderosaをいつも使っていたのでタブ表示好き。
ないと思い込んでいたからブラウザでは自然と押してしまうCommand+Tも押さないのだな。メニューを見ていて初めて気づいた次第です。
最近ユーザーが増えて来て、開発にも、より張り合いが出て来ました。
皆さんのプロフィールのブログやはてな認証の場合、はてなダイアリーを書いていらっしゃれば、はてダも楽しく読ませてもらってます。 今読ミを使っているのですから当然といえば当然ですが、多読な方が多い印象です。
さて、プロフィールに今読ミに関してのコメントを頂いてました。
ここは同じ本を何度も登録できそうなのでいいですね。安心して再読記録ができます。
よくぞ気づいてくれました(笑) 本によっては一度読むだけで終わりじゃないものもあると思うのです。図書館で借りて読んだ本を、買い直してもう一度読むとか、面白かったけど理解度が浅いなと思った技術系の本を2度、3度と読み直すとか。その際には前に読んだ記録はそのまま残しておきたいと思ったので、あえて重複登録を許す仕様にしてあります。
ちょっと怖いのはスパム的な登録ですが、実は今のところ何も制限はありません(゚∀゚) たぶん大丈夫… もし悪用されたなら、同じ日には(もっと厳しく7日以内はとか)登録できないなどの制限を、この目的に反しない程度に付ける可能性はあります。
さて、私も6年以上待たされている十二国記本編の続きがいつ出ても大丈夫なように、既刊をもう一度読み直そうかな(笑)
いけそうな手順を発見。How I moved my iTunes library from PC to Mac をやってみた。
完璧です!要点は
- WindowsのiTunesフォルダ(xmlやitlファイルが入っている)の中身を全て、MacのiTunesフォルダにコピー
- itlファイルの拡張子を除去
- iTunesを立ち上げたらあとはうまくやってくれる
Mac側のiTunesのフォルダを変えておきたい場合は、作業を開始する前に空っぽの状態でiTunesを仮起動しておいて、設定から変更しておけば良さそう。
いやぁ助かった。プレイリストとかかなりの数、頑張って作ってあるので作り直すとなると痛い。再生回数も残ってた方が嬉しいし。
しかし新たな問題が… 英語のジャンルが勝手に日本語に変わってしまう問題は、Macの今のバージョンでは私がWindows版で使っていた言語を「英語」に変えるという対策が出来ないみたい。 まずい!
一生懸命調べたら、iTunesのジャンル名が日本語(カタカナ)になる・その2 - リンゴが好きでぃす♪にズバリ答えが。 要旨は、古いiTunesで設定したジャンルのみ勝手に書き変わるということ。なので今のバージョンで編集してジャンルをつけ直しておけば変わらない。その際、一気に変えてしまうと面倒いろいろと面倒なので、一つ残して変えるなどの非常に使えるTipsが書かれています。
しかし9000曲オーバーもあると、ジャンル付け替えるだけでかなりの時間がかかってしまう罠。 でも一回やっておけば大丈夫になるのでありがたい。 それに以前の対策と違いiTunesはちゃんと日本語版として動く。
細かいことを言うとart workが結構なくなったけど、これはコピーし忘れたかな。まぁart workはそんなに見ないし、ほぼ完璧な引越作業だった。
そうそうLast.fmプラグインを入れとかなきゃ〜
1000speakersのUstreamをだらだら見てます。
HTMLと漢字についてのセッションが非常に面白かった。
日本語と中国語の漢字の違いを同じページに表示してみせる。
あまつさえ、話しながら書き換えちゃう。
書き換え方がかっこ良くて、FirefoxのFirebugを使ってDOMを直接書き換えながら説明。
これは、すごいな、確かに簡単にリアルタイムで表示を変えられる。
画面上で触っているエリアがフォーカスして分かりやすいので、ソースのHTMLを直接書き換えるより絶対間違いが少ないだろうなぁ。
面白い。
最後の方に出て来た、CSSへの字形埋め込み。凄い。でもSafariでしか表示できないらしい。Safari++で湧いていた。
時間が押していたみたいで、質疑応答がなかったのが残念かも。
いや、私は質問したりしないタイプの人間ですが(笑)
お、Ustreamのタグあった。どうぞぅ。
MacBookを買ったばかりですが、MacBook AirのCMは見ていて欲しくなります。
薄さ軽さは凄い魅力だけど、私は外へ持ち運ぶことはほとんどなくて、今のところ家の中で移動したいだけだったりししますから、コストパフォーマンスを考えると普通のMacBookでいい。
そう十分、薄い。
昨日寝ている間にMacPortsでImageMagickが入ったので、rmagickをgemると今度は問題なく入った。
不意に思い出してiTunesの引越を始めた。無性に新しいMacBookに全曲入たくなった。MacBookは160GB(実質140GB程度)なんだし、Classic iPod 60GB があるのだから別に移さなくても良いのだけど。
普通の100MB LANなのでかなり掛かるだろうが、曲読み込み時の表示の増え方を見ていると、およそ10時間くらいか。明日は寝溜めすると思うから起きる頃には終わっていると見た。
あとは再生回数やプレイリストをなんとかWindowsのiTunes Music Library.xmlから引っ張って来たいところだ。これは明日調べよう。ただ、Last.fmを使うようになってから、iTunesの再生回数の重要度が減った事は確かだ。
裏でiTunesの引越をやりながら、次はMySQLのインストール。
MySQLをMacPortsで入れるべきか、XAMPPで入れるべきか考えたが、Apache, MySQL, phpMyAdminが欲しいのでXAMPPで一気に入れる事に。
Windows版のXAMPPを試しに入れてみたときは、MySQLのストレージエンジンのInnoDBがデフォルトで入ってなかったり、入れようとするとうまく入らなかったりと意外と手こずるのだが、MacOSXは拍子抜けするぐらい簡単に入る。
インストールが終わったらFinderから「XAMPP Control Panel」を実行して各サービスを実行しても良さそうだが、Terminalで、 の方がUnixぽくてイイ。
テストデータをphpMyAdminに突っ込んで、いよいよRailsが立ち上がるかと思いきや、/tmp/mysql.sock が無いと言われた。XAMPPの場合はデフォルトでは /Applications/xampp/xamppfiles/var/mysql/mysql.sock にあるようだ。 Railsプロジェクトの config/database.yml の development: パートに と書く。
なんとかAptana StudioからRailsが起動し、今読ミの動作が確認できました。 これでmasuidriveさんの様にお風呂で開発したり、ひげぽんさんの様にスタバで開発したりできるわけです。
あら、もう5時を過ぎている。途中座ったまま寝ているなどしていたので、今はそれほど眠くはなくなっているが土曜をあまり潰さないために寝るか。 裏でやっていたiTunesの引越はというと、現在3745曲。1/3を少し超えたところです。計算通り起きる頃には終わってそうだ。
今日は帰ってくるのが遅かった上に、今読ミのバグ報告が(>ω<) 放置できない問題だったので、Windowsの開発環境を立ち上げて修正。 早くMacBookで開発できるようにしなきゃ〜
続きです。Ruby-Gettextはgem一発でOKかと思ったのですがRailsを起動してみたらコケました。 どうやら最新バージョンでは新しすぎるらしい。でもエラーメッセージに解決方法が。 見事に出来た。ということは本番環境のrailsの更新も同様にできそうである。
続いて、はてな認証を実装するのにとても便利なライブラリ、Hatena Authentication APIや、同じくOpenIDのためのruby-openid、プロフィール画像を縮小するために必要なrmagickとgemって行きますが、rmagickでストップ。どうやら本体のImage-Magickが入っていないようだ。
思い出した。MacPortsを入れないと色々と面倒なのだった。MacPortsのダウンロードページからdmgファイルをダウンロードしてきて実行するだけの簡単なお仕事。
MacPortsも入ったところでImageMagickをインストール。
依存パッケージがたくさんあって、とても時間がかかる。 さすがに眠くなってきたし、明日はまだ会社なのでそろそろ寝る。
紐なしはUSB赤外線マウスを以前の同僚が使っていたのを触らせてもらった事が有るが、動きが少し大雑把でいまいちだった。その点、Mighty Mouseは非常にスムーズ。まあ値段を考えたらそのくらいのパフォーマンスは出してくれないと困る。
それで、今はとても気に入っているのですが、単三電池を2本も使い、思っていたより重くてアメリカンだなぁというエントリーを先日、書きました。
そんな話を職場の隣の席の同僚にしたところ、驚愕の事実を教えてもらいました。
Mighty Mouseの電池は1つ入れれば動く( ゚д゚)
またまたぁ、と思いながら家に帰って試してみると( ゚д゚)ハッ! …つ、使える!
その上、動作には全く影響がないように思います。
少し重心が電池の有る方に偏るのが最初、気になりますが、それなりに軽くなる。
電池1本、とてもお勧めであります。
ググってみたところDeep SleepというDashboard Widgetが見つかって入れてみた。
さすがに瞬間的にという訳にはいかないが、落ちるのはなかなか高速。
戻りはWindowsXPと同じくらいといったところ。
これでハイバーネーションすると手前のLEDが消えてくれるので、私としては精神衛生上よい。安心して眠れる(小心者)
あとPCから離れるときにロックするのは癖にしているので家で使うといえど出来ないと気になる。
ひょっとしたらキー操作でも出来そうな気もするが、私はいつもスクリーンセーバーのホットコーナーに、
スクリーンセーバーの起動を設定しておき、セキュリティー設定でスクリーンセーバーから戻る際にパスワード入力を求められるようにしています。
実はこれ、1年くらい前に仕事で使っていたときは当たり前にやっていたのだが、なかなか思い出せなかった。
って、今やってみたらホットコーナーが全く効かないのだけどなぜ??
非常に簡単で、展開したフォルダで、make; sudo make install するだけ。さすがUnix。
/usr/local/share/emacs/site-lisp/ という場所にインストールされたので、.emacs で load-path を追加。
昨日やってから寝れば良かった(笑)
さて当面の開発環境はAptana StudioのRadRailsでいいとして、肝心のRailsやMySQLを入れようか。
最近のMacOSXは楽だな。RubyもRaisも入っていた。さらに都合の良いことにRailsのバージョンは1.2.6だ。 前にも書いた通り、今読ミはまだRails2.0に移行できていない。旧バージョンであるRails1.2を入れるのは面倒かもしれないなと思っていたところだったので僥倖。
WindowsではラクチンなInstantRailsを使っていたので、その手のパックが無いかとちらっと探したところ、RM-Installというのがあった。これも相当良さそうだったのだが、やはりRailsが2.0なのだ。それにSubversionはLinuxサーバに既に入っているため欲しいのはクライアントのみ(Aptana StudioはEclipseなのでSubclipse入れればよい)だし、SQLiteは今のところ不要だ。
とりあえず直近で必要なのはMySQLと、できれば簡単にDBをメンテするためのphpMyAdminだけなので、Mac mini(前職でしばらく使っていた)に入れていて便利だったXAMPPを入れる事にしよう。
まずは、それらを入れる前に、まずはモジュールの不足分を解決しておくためにAptana StudioからRailsを立ち上げてみる。
最初にRuby-Gettextがないと言って怒られた。これはgemでOK。
ここで、ちょっとメモを取りたくなり、EmacsでCtrl-Mしてみたが動かない。そういうわけでclmemo.elを入れようとするも make コマンドが無かった=Xcodeを入れてなかった(死)
今日はXcodeをインストールできたら寝る。
そうそうMacOSX 10.5.2でデスクトップを表示するにはどうすれば良いのだろう。昔とキーバインドが変わっているようで分からない。ExposeもF3になってるしなぁ。今は無理矢理だけどSpacesで空いているスペースにすっ飛ばしてデスクトップ上のファイルを触っている(汗)
明日は帰ってきたら、clmemo の make から(地味だ…)
Subversionクライアント
TortoiseSVN的なものを探していたのだが意外とない。コマンドラインでもできなくはないのだけど、やはりなぁ。バージョン管理はGUIの方がミスが少ない気がする(マージは割とコマンドラインの方がやりやすかったりしますが)。
ひとつversionsというプロダクトを見つけたのだが、β版で、かつダウンロードはメールアドレスを登録して何かを購読しないといけないようだ。すかさずサブスクライブってみたのだけど何もおこらない。おそらく忘れた頃にメールが来るのだろう。
せっかなのでCarbonEmacsを使いたかったのだが、良いSubversionクライアントが見つかるまでは、Eclipseでも使っていようか。
このMacBookでJavaをやる気はないのでAptana Studioを入れよう。なんだか少し負けた気がするけど。
そうそう、最近出たファッショナブルなRails本
(※今読ミ・ブログパーツテスト中)
では、NetBeansのRails開発環境を使っているみたいだ。Eclipseの方が慣れているし、以前少しだけ触った感じだとイマイチ好きになれなかったので今はスルー。開発環境を探している訳ではなくてSubversionクライアントを探しているだけなんだし(汗)
Firefox入れた
思いつく一通りをブックマークへ。昨今、基本SBM(はてブ)に入ってるので少ししかないけど。
CarbonEmacs入れた。
WindowsのMeadowで使っていた.emacsを持ってきてみた。
そして編集しようとするとCtrl+SpaceがSpotlightなるもの(昔シャーロックって言ってたやつか?)に阻まれてリージョンの選択を開始できなかったので、ググって「システム設定」「Spotlight」の下の方にある、「Spotlightメニューのキーボードショートカット」の指定でCtrl+Shift+Spaceに変更した。
んでもそんなキーバインド覚えてられない気もするからチェックボックスをオフにしてもいい気もする。
Meadowの.emacsからはWindows用の設定をばっさり落としてあげれば他はそのまま動きそう。
CarbonEmacsのsite-lispはパッケージの中に含まれていてそこに追加するのは気が進まなかったんで~Documents/site-lisp/ というフォルダを作って使うようにした。
site-lispの中など必要なファイルはUSB外付けHDDを介して持ってくる。実は開発環境すべてそこに入っていたりするのだ。MacがWinのUSB HDDをそのまま繋げるのは前職で確認済み。便利便利。
その後はLDR見ながら遊んでる…
今読ミの開発環境を整えないと、MacBookへの完全移行はできないので、次はSubversionのクライアント探しなのだけど(笑)
まだまだ、いろいろと触っているのが面白いし、あっという間に休日は終了なので環境整備はこれからじっくりやっていくつもり。
少し話は変わって、Mighty Mouse。これはマウスとしては結構高くて8,000円もするのだが、Bluetoothの紐なしだしな、と思って一緒に買ってみた。ちょっと使ってみた感触では、もう一つといったところ。
結構重いんですよ。なにしろ中に単三電池2本も入れなきゃいけない。ぶっちゃけアメリカだなぁと思いました(苦笑)なんとなく単四1本くらいで良いような気がする。Bluetooth、結構電池食うのかしら。もしすぐになくなるようなら Mighty Mouse 用にEneloop買ってこないといけない。
右クリックとして判別してくれる位置もとっと右すぎる気がする。慣れの問題かもしれない。
Amazon/ヤマトの配送状況では本体とマウスにかなりタイムラグがあるように見えたけので、本体だけ先に来るかと思った。まぁマウスだけ来るよりいいよなと思ってたら、両方同時に到着。最寄りの配達店までちゃんとデータが来てて、マージされるのだろうなぁ。
とりあえずプレインストールの状態でセットアップし始めたのだけど、いろいろなブログで一からインストールしていたのを思い出し、理由はわからないが何となくお祭り気分で一からインストールし始めた。しかし、理由は何だろう?
まだネットの帯域が今より細い頃、RedHatのインストールメディアが欲しいがために入門本を買ったのだが、一枚読めず、出版社に送ってもらうまで使えなくて悔しい思いをした。今はネットでBitTorrentで数時間も放置しておけばダウンロード出来るのだけど。
ってあれ?、もし今メディアがイカれてるのが分って、インストールが途中で失敗したら、メディアを再取り寄せするまで使えないじゃん(汗)プレインストールのままの方が良かった気がしてきた。
とか、書いている内にインストールは残り2分。杞憂だったようだ。
さて、これからMacを買ったら入れるソフト系のエントリーをいくつか読んで、バリバリ環境構築だ。
今のところぱっと思いつくものは、Firefox、Ruby on Rails、Emacs、Subversionクライアント何かだ。
Ruby on Railsと言えば、今読ミはまだ1.2ベースなのだが、何も考えずにインストールすると2.0が入りそうだな。調べなければ。これを機会に2.0対応してしまうという説もあるが。
今か?今か?
うーむ。いつも、そうだったのかもしれない。
本やCDとかだと、そう朝から配送状況をチェックしないし、むしろ届くまで忘れていることもあるのだけど、さすがにMacBookですから(笑)
船橋に最寄りの、または、Amazon御用達のヤマトの配送センターがあるんだろうな。
そんなわけで、私のMacBookは今、船橋~川崎中原区の間の何処かにいる。
あと、初めて八千代のセンターからの出荷です。いつもは船橋。
八千代は最近出来た物流センターみたいですねぇ。
マウスも物欲に任せてMighty Mouseにしたった。
でも、まだ出荷されていない模様。こっちは船橋からなのか。
PC自体、買うのは久しぶり(CPUとかメモリ単位ではちょくちょく買ってましたが)だけど、Macを買うのは本当に久しぶり。
2000年末にUltima OnlineやりたさにWindowsに乗り換えて以来だ。
それまでは
と、Mac一筋だったんのだが。G3は発売日直後に買ったが当時としてはスペックが驚異的に高くなった上に、安かった。
うぉ!宅急便が来た。
色めき立ったが、関係ありませんでした。それは速すぎるわな(笑)
黒が良いなぁと思ったのだが、やっぱりコストパフォーマンスを考えると白い真ん中のやつだな。
白の方がMacっぽいっし。
値段は多分、どこも大して変わらないので、Apple Storeでそのまま買おうかと思ったのだが、
Amazonではお急ぎ便が使えることを思い出した。試しに注文確定まで進んでみると、在庫在りで明日届く!
超、久しぶりの大きな買い物なので、まだめちゃくちゃ迷ってたのだけど、明日の誘惑に完敗。
ポチっと注文確定ボタンを押してしまったのでした。
お急ぎ便はだいたい昼前に船橋を出発して、5時くらいに最寄りの配送センターについて、
それから1時間以内には届いているので、MacBook は恐らく明日、18:00頃届きます!
明日からはRuby on Rails を生んだ Mac OS X で今読ミを開発します(`・ω・´)
iwazerが2008年5月に買った本
自分のページであれば、その期間に使った金額も表示されます。
楽しい読書を!
やはりブログパーツはフラッシュだよなぁと思っていたので、なかなか手を付けなかったが簡単なものならJavaScriptだけでもいけそうなのでちょっとやってみた。
きっかけとしては【PHP TIPS】 81. ブログパーツを作ってみようを読んだから。いや、こういう風にやるというのは知っていたが、Railsでの具体的な例は見たことがなかったので、よしやってみるかと。
仕様はめっちゃシンプルに、自分の最新のn件の書影、書名、著者を表示するというもの。
これはちょっと前に外出先で手帳に描いていたイメージ。
まずURLをエイヤと http://imayomi.jp/ext/recent/iwazer?n=3 に決めます。パラメータnは表示する件数です。上記イメージだと3件なのでn=3。Railsだとデフォルトのルーティング設定を使うとすれば、 こんな感じで生成されるURLです。すなわちextというコントローラを生成。 次は、ext_controller.rbにidとnをパラメータとして受け取るrecentというメソッドを書くと。 Ownerモデルは(最初、ちょっと名前を付けそこなって気に入ってないのだけど…)本とメンバーの関連テーブルownersのモデル。なのでownersテーブルからメンバーがiwazerで、更新日(updated_at)の逆順にn件とって来ると上記みたいな実装になります。
#サンプルのコードはエラーチェックなどかなり端折ってますよ。
そして、ここからがRailsらしくRJSを使ってJavaScriptをページに埋め込むレスポンスを返すところ。
render :update を使います。 divのidを'd04786a8e9ac3405955a99d479b581b2'などという意味不明な値にしたのは、idがぶつかると危ないだろうなと思い、悩んだ挙句、何かのmd5値です。そしてその何かはもう忘れたが(笑)
ExtController#recent()がリクエストされたら、結果をJavaScriptで返すのですが、まず'd04786a8e9ac3405955a99d479b581b2'をidとしてもつdivタグをdocument.write()でその場に埋め込みます。
そしてその埋め込んだdivの内容を render :partial => 'recent' でレンダリングされるHTMLで置き換えます。すなわち views/ext/_recent.rhtml が必要です。 これはいささか汚いですね。最初はCSS指定を別別ファイルにしてたんですが、どうもブラウザによって効いたり、効かなかったりと制御が大変だったので、とりあえずちゃんと動けということで、全て直接タグへstyle属性として書きました。(テヘ)
実はこれで、もう完成です。
あとはブログの表示したい場所に とjsを読み込むscriptタグを書けば、右のサイドバーに出ている様に表示されました。
最後に、上記の様にRailsのAjax自動生成機能を使って楽をしているので、prototype.js の読み込みが必要ですが、他で使っているかも知れませんし<head>~</head>の記述を確認して、なければそちらに移したほうがよいと思います。
このエントリーのタイトルは「・・・JavaScriptでやってみる」なのですが、実は自分でJavaScriptのコードをを一切書いていない甘やかされよう。
この手のものを作るのは意外と初めてだったりするので、気になる所を見つけた方がいらっしゃれば、突っ込みお願いします。
JavaScriptをOFFにしている場合やユーザーがマウスで右クリックして新しいウィンドウに表示したとき、また、検索エンジンのクローラにページとしてのリンク先を教えるためなどの理由で、href に適当なページのURLを書きたい事も多いです。
ひょっとして :href オプションを付ければいけるかと思い、
というふうにしてみるがダメ。
RailsのAPIを見てみると となっている。そうだ、html_options!
これで大丈夫。
各メンバーのホームのサイドバーにカレンダーが表示されるようになってますので、そこからアクセスできます。
例えばiwazerの2008年4月に読み終わった本は9冊などと分ります。
#4月はあまり読めなかったのだなぁ。
読了日は、進捗を「読了!」に変えると自動的に設定されますから、日付を直接選択する必要はありません。
ちなみに取得日も?に「欲しい!」以外を選ぶと自動設定されます。
ちょっと分り難いので、できたらその辺はJavaScriptで見えるようにするつもりです。
メンバーアイコンの左側が空いているのは、ブログみたく文章を記述できれば良いなと思っています。
GWはバリバリ今読ミのTODOを消化するぞー!と気合い入りまくりだったのですが、残りは明日1日だけ(´・ω・`)
結局、この機能に二日かかってしまったのだな。
いや実際は途中で本読んだり、寝たり、WEB見たり、ガイアの夜明け見たりしたけど(笑)
今回は休みも短かったし、このくらいにしといてやるかー(笑)
良いと思います。マッシュアップ!
Σ(・∀・;)ハッ
さ、最後のは???
私は結構ウケたので、このエントリーを書いたり、はてブしたりして応援します!
#ただしネットへの影響力はありませんが(笑)
過去のエントリーを探ってみるとRuby on Railsを調べながら去年の今頃から今読ミを書き始めたので、私の中では1周年記念なのです。デザイン作ってもらって、ドメイン取って正式にオープンしたのは9月くらいなので、本当の1周年はもう少し先ですが。
1周年と関係があるかといえば、特に関係なく、昨日はhachimituさんと今読ミについて打ち合わせをしたのでした。
自分一人では気付かない事に色々と気付いてくれるので非常に面白いのだな。
打ち合わせの結果、いろいろと新しいタスクが増えて楽しくなってきた。
そんな訳で、久しぶりに今読ミのコードをたくさん書いて、気付いたら朝でした。
素晴らしい休日(笑)
