My Daily Programming Life...

Picasaでアルバム

Webページを更新しようと思って、いろいろ作業しているうちに、アルバム管理をなんとかしたくてGoogle Picasaを使ってみることにした。なかなかすごい。

かなり簡単に写真管理ができるし、軽快に動く。使いやすい。で、PicasaにはHTMLエクスポート機能があって、選択したフォルダや、写真をHTMLアルバムにしてくれる。既定では何種類かのアルバムテンプレートHTMLがあって、それらの形(見た目)のHTMLをエクスポートしてくれる。

ただ今回はは、アルバム表示のためにLightBox(写真をきれいに表示してくれるJavaScript)を利用することにしていたため、そのままでは使えない。それらのHTMLにJavaScriptを埋め込んで、さらにimgタグを編集して・・・とやらなくちゃいけない。さらに自分のWebページの見た目に合わせるためにも編集しなくちゃいけない。

いくつものアルバムを作成する場合にはちょっとやってられない。ここは是非、PicasaのHTMLテンプレートに自分のWebサイト用のものを入れたい。

Picasaのインストールフォルダを見ると、Web→Templateというフォルダがあってどうやらここにテンプレートファイルがあるらしい。簡単説明テキストもついている。テンプレートごとにフォルダに別れているっぽい。

index.tplというのがテンプレートの元になるファイル。これをまあ、スクリプト言語のようにPicasaが処理して、最終的なHTMLや画像ファイルをはき出してくれる。

  1. header.html
  2. イメージループ
  3. footer.html

というような形のindex.htmlを作るというのが基本的な形っぽい。具体的にはいろんなテンプレートのindex.tplファイルを見ればなんとなくわかってくるはず。まあ、理解するのに簡単なプログラミング経験は必要かもしれないけど。

Picasa Web Templating
ここに変数とか、コマンドの説明がある。

というわけで、自分用のテンプレートを作成した。当然その中には自動的にLightBoxのJavaScriptが埋め込まれるようになっていて、自分のWebサイト用のデザイン(css)を埋め込んだものが簡単に作れるようになった。

で、まあ基本的には満足したわけですが、ちょっと欲張ってshadowedThumbnailsという変数を使ってサムネイルに陰を付けるようにした。さらに調べてみるとbgColorで陰の色を変えられるっぽいみたいなことが書いてある。でも、bgColorを設定すると陰が全部真っ黒になってしまう。僕がなんか間違っているんだろうか。どんな値でも同じようになってしまう。bgColorがなければ通常の陰がつく。

さらにPicasaのデフォルトの.tplファイルを見ていたらfgColorとかいうのが設定されているファイルがあった。さっきのサイトには載ってない値の気がする。

うーん、もうちょいちゃんとしたドキュメントがほしい。というか、あんまり公の機能じゃないんだろうか。でも結構Picasa Web Templateとかいって検索すると作っている人いるみたいだけど。。。

TortoiseSVNの無視設定@VS

Visual StudioプロジェクトをSVN管理していてTortoiseSVNを使っていたら以下の無視設定をしておくといいと思う

*.ncb *.suo *.user

やり方は適当にフォルダ右クリックして、TortoiseSVN->SettingsのGeneralタブでできる。

svn:ignoreプロパティなんてのもあるけど、全体に適用してしまっていいようなときはこっちの方が便利

WDKビルドコマンドライン

WDKでデバイスドライバ開発を行っていて、おそらく誰もが不便に感じることは、
ビルドが基本的にはコマンドラインからしかできず、しかも、そのコマンドライン環境はスタートメニューのBuild Environmentから選択しなくてはいけないこと。
これだけなら、ショートカット作ればまあいいやですむのだけれど、問題はその先で、
コマンドラインで、ビルドするためのフォルダに移動しなきゃいけない。
かなり面倒くさい。
このBuild Environment用のスクリプトsetenv.batは第一引数にWDKのホームディレクトリを指定しなくてはいけなくて、しかもスタートのディレクトリをそのディレクトリにするようなスクリプトになっている。

エクスプローラから、今開発しているプロジェクトのフォルダを見て、右クリックからそのフォルダをスタートとして、Build Environmentを使えるようにしたい。

というわけで、setenv.batを改造して作りました。
mysetenv.batというバッチファイルで、これは/DIRオプションを取ることができて、スタートフォルダをその指定されたフォルダにします。
mysetenv C:\WDK\Version x86 chk w2k /DIR D:\MyProject
こんな感じで使います。 /DIRの位置はどこでもかまいません。

さて、こうしたところで、エクスプローラから簡単にその位置でBuild Environmentを開けるわけじゃないので、さらにここでお気に入りツールLopeSoftのFileMenu Toolsを使います。これを使ってフォルダの右クリックメニューにコマンドを追加。コマンドプロパティで
Programを C:\WINDOWS\system32\cmd.exe
Argumentsを /k C:\WinDDK\6001.18002\bin\mysetenv.bat C:\WinDDK\6001.18002\ chk x86 W2K /DIR %FILENAMES%
というような感じで指定します。
これでそのフォルダでW2K Checkedビルド用環境が立ち上がります。
後はそこでbuildコマンドをたたけばいいだけ。うーん、すてきだ。

buildまで一気にやってしまうオプションをさらに用意して、それも右クリックメニューに追加しておいてもいいかもしれない。

setenv.bat
Bloggerはファイルを添付できないってことを今知りました。しょうがないのでGoogle Docで共有です。ファイルはtextなので、拡張子をbatに変更してください。

Google Desktopのショートカット

GoogleデスクトップはCtrlを2回押すとサーチボックスが出てくるのだけれど、そこでのショートカットを発見したのでメモ。
Web探したけど、一覧が載ってないような・・・。正式な機能じゃないのかな。

サーチボックスに文字を入れた状態で、
Ctrl + P : Google Map検索
Ctrl + D : Desktop検索
Ctrl + I : Image検索
Ctrl + N : News検索
Ctrl + U : Group検索
Ctrl + W : Web検索(Enterと同じ)
Ctrl + A : サーチボックス終了(Ctrl 2回と同じ)
Ctrl + H : Backspace
Ctrl + [ : 入力文字全消去(Escと同じ)

最後の二つはなんとなくviっぽい感じ。
Ctrl + P はかなりほしかったものなので、うれしい発見。

NICに二つのIPAアドレスを持たせる

Linuxで一つのNICに二つのIPアドレスを振りたいときIP Aliasというのが使える。
今192.168.1.10というアドレスがeth0に割り当てられているとして
/etc/sysconfig/network-scripts/のifcfg-eth0をifcfg-eth0:1という名前でコピーする。
そして、ifcfg-eth0:1というファイルの以下の該当部分をこんな風に変える。
DEVICE=eth0:1 # デバイス
IPADDR=192.168.1.11 # IPアドレス

これで、eth0:1というデバイスができて、それが192.168.1.11に割り当てられる。
あとは
ifdown eth0
ifup eth0
(再起動)
をするだけ。

Apacheのバーチャルホストとかやる場合にも使える。
僕はよく自分のテスト環境で利用している。

Windows Kernel

なんだかWindows Kernelのよさげな資料を発見
http://www.i.u-tokyo.ac.jp/edu/training/ss/msprojects/index.html
東大ではこんな授業やってんのかぁ。いいなぁ。でもこれ4年ぐらい前の話だな。
今もやってるのかな。

Google Desktopとアドレスバー

Google Desktopがなんとなく変な動きをしているっぽい。
エクスプローラでアドレスバーに直接アドレスを入れたい場合(たとえば\\192.168.1.2とか)がある。Google Desktopを起動した状態でそれをやると、一定時間ごとに入力文字がキャンセルされて今いるアドレスに表示が戻ってしまう。

いま「マイドキュメント」にいるとすると、エクスプローラのアドレスバーの表示は「マイドキュメント」になる。んで、それを消して\\192....と入力していくと、途中でパッと「マイドキュメント」に戻ってしまう。一瞬でアドレスを入力してEnter押せば大丈夫だけど、5秒に一回ぐらい、そういう風な処理が走っているらしく、うまくいかない。
Google Desktopを終了させると、その現象はなくなる。

いろいろ設定変更してみたりしたけど、うまくいかなかった。Google Desktopグループでも見つけられなかった。報告してみるかな・・・。
feedSubscribe to my feed