Kouichi bison Takahata

works as ICT CONSULTANT at StudioBISON

Posts

May 23, 03:55 AM

SPAM業者 もしくは、名簿屋 (メールアドレス収集業者) のクローラ対策を考えると、Webサイトにメアドをテキストで記載することは憚られます。

WordPress などの Blog や CMS を使っている人の多くは、送信フォームを使うことで、対策していることと思います。
送信フォームは、記載必須の項目を明示したい場合などたいへん有効に働くものですが、逆に、以下のような使いにくさもあります。

  • 送信者が送信した内容を別途メモしておくなり、当該フォームに、送信内容を送信者に同報するような仕組みがないと、送信者にとって「何を送信したのか」は送信者の記憶にしかない
  • メールアカウントソフトで一括管理できない

また、CMS や Blog ならいいのですが、、静的サイトでのメールフォームの設置は面倒であることも事実です。

そこで、『対策済みのリンクを生成するサイト』を使うという方法のご紹介を…。

Email Obfuscator

アクセスすると、下図のような画面になりますので、必要事項を入力して、下欄のテキストエリアに生成される HTMLコードをコピーし、リンクを表示したいHTMLファイルのリンクを表示したい箇所にペーストするだけでOKです。

拙サイトの右サイドバー上部の “Contact” “email to bison” という文字列がそれです。

March 23, 04:43 AM

ScreenFlow が面白いので、不必要なくらいグニグニさせた動画を作ってみました。

わからんやつなんてどこにもいないよーな、どーでもいー『Version の使い方』を説明した内容です。

March 23, 04:20 AM

ScreenFlow は、今まで主に、インストラクションムービー(手順説明動画) などを作成するために使っていましたが、これって結構いろんなコトができることを再発見!

…ということで、

「ササミの筋取り」を説明した20秒ちょっとの動画を、懐かしい東芝のテレビで映しているように見える動画 (via ScreenFlow)

を作ってみました。

素材

  • 自分で撮った『ササミの筋取り』の動画 (23秒程度)
  • 昔のテレビのスイッチ音 (ON / OFF)
  • 昔のテレビ(TOSHIBA製) の画像

下ごしらえ

昔のテレビ画像ファイルから、画面部分と画面を除いた部分にそれぞれpng形式で作成

ScreenFlow で編集

完成動画

「ササミの筋取り」を説明した20秒ちょっとの動画を、懐かしい東芝のテレビで映しているように見える動画
(via ScreenFlow)

March 21, 02:56 AM

FileMakerのソリューションで、コマンドラインによって、指定のURLからPDFを作成…という機能を実装する要望があったため、wkpdfをインストールした。

wkpdf の特徴

  • HTMLレンダリングに WebKit を使用
  • JavaScript も効くので、Safari の表示とほぼ近いレンダリング結果になる
  • –username –password オプションを指定することで、Basic認証などにも対応
  • 当然、出力結果のPDFファイルは、画像ではないので、テキスト検索が効く
  • サムネイルとしては使いにくい
    ※ 画像ファイル形式での出力不可/サイズ指定切り出し不可

Install

MacRuby

wkpdf は MacRuby を使用する。

  1. MacRuby の公式ダウンロードページから、Latest Stable Release の standalone binary installer のパッケージをダウンロードする。
    ※  2012/03/21 現在、MacRuby 0.10
  2. 解凍してできるインストーラパッケージをダブルクリックして指示に従いインストールする。

wkpdf

通常の gem を使ったインストール

sudo gem update –system

sudo gem install wkpdf

※ 当然、インストール後の Update も…

gem update wkpdf

で、OK。

Usage

Basic Usage

基本的には…

wkpdf –source http://foo.com/ –output foo.pdf

というように、–source オプションで、取得元URL を、–output オプションで、出力先PDF名を指定する。
※ 出力先PDFパスと考えてOK

Other Usage

以下が、wkpdf –help の出力結果である。

–output, -o <s>: Output PDF filename
–source, -s <s>: URL or filename (supported protocols: http, https, ftp, file), if
not present read from stdin (default: /dev/stdin)
–paper, -p <s>: Paper size (folio | ledger | letterSmall | legal | a0 | a1 | a2 |
statement | quarto | b4 | a3 | b5 | a4 | executive | letter | a5 |
a4small | custom:WxH | 10×14 | tabloid) (default: a4)
–orientation, -r <s>: (landscape | portrait) (default: portrait)
–hcenter, -c: Center horizontally (default: true)
–vcenter, -e: Center vertically
–paginate, -a: Enable pagination (default: true)
–margins, -m <i+>: Paper margins in points (T R B L) (V H) or (M)
–caching, -i: Load from cache if possible (default: true)
–timeout, -t <f>: Set timeout to N seconds (default: 3600.0)
–stylesheet-media, -y <s>: Set the CSS media value (default: screen)
–user-stylesheet, -u <s>: URL or path of stylesheet to use
–user-script <s>: URL or path of script to use
–print-background, -n: Display background images
–ignore-http-errors, -g: Generate PDF despite, e.g., a 404 error
–username <s>: Authenticate with username
–password, -w <s>: Authenticate with password
–enable-plugins, -b: Enable plugins
–enable-javascript, -l: Enable javascript (default: true)
–save-delay <f>: Wait N seconds after loading to generate PDF (default: 0.0)
–version, -v: Print the version and exit
–help, -h: Show this message
–debug, -d: Print debug output

出力用紙サイズ (–paper) や用紙方向 (–orientation) 、ページネーション (–pagination) などの出力様式指定も一通り指定できるし、Basic認証の向こうのURL も対応するので、シンプルに必要最低限のことはできる。

Notice

URL中に、アンパサンドやクエスチョンが入る場合は、URL を シングル(or ダブル)クォーテーションで括ってやる必要がある。

※ もちろん、出力パスにスペースが入る場合なども同様。

URL中に、日本語が入っていると、その部分をUTF-8 URLエンコードしてやらないとエラーになる。

※ 対処策を勘案中 (2012/03/21 20:30:49)

対処策 (2012/03/22 13:03:09)

GetAsURLEncoded ( URL ) だと、スラッシュやコロンなどまでURLエンコードされてしまうので、「一文字ずつ改行区切りにして non-ASCII だけを…」とか
あほみたいに考えていたけど、ほぼ以下の通りで解決。

“‘” & URLDecode ( GetAsURLEncoded ( URL ) ) & “‘”

カスタム関数 URLDecode は、
http://www.briandunning.com/cf/528

————————————-

Ruby 側に対処するという手法だと、

Rubyで日本語を含むURLを扱う

な話なんだろね。
これをやっちまうと、Updateされたときに上書きされちまうだろうし、変更箇所などの詳細を覚えておく自信もないし、今回は FileMaker 側で対処することに。

March 14, 03:52 AM

アプリケーションランチャとして Alfred を使っている方は多いと思います。

そうした使い方だけなら、Free版の Alfred で充分ですが、有料の Power pack を購入することで、いくつかの機能が追加されます。

使い出すと手放せない Power pack の機能は、File System Navigation と

今回取り上げる Extensions and Custom Commands です。

今回は、例として、アプリケーションをアンインストールするアプリケーション AppCleaner に、アンインストールしたいアプリケーションを渡す方法を説明します。

AppCleaner

まずは、AppCleaner 。Free (無料) です。

アンインストールしたいアプリケーションを指定 (Drag & Drop でも可) すると、当該アプリケーションの利用している plistファイルや、Applications Support 内ファイルなどの関連ファイルを探してきて、一緒に捨ててくれます。
※ Undo機能やアーカイブ機能がないのが残念ですが、充分使えるアプリです。

 AppCleaner action (Download & Install)

サードパーティー (というかこの方は個人だと思われますが) の AiYo さんのサイトに 自作の Alfred Extensions がリストされています。

ここにある

をダウンロードします。

ダウンロードしたファイル AppCleaner.alfredextension をダブルクリックすることで、Alfred が以下のようなウィンドウを表示します。

そのままで、大丈夫です。
ここでは、特に修正は必要ありません。

File Search Filter (Create & Setting)

次に、左下の+マークから、File Search Filter を作ります。

すると、以下のような、ダイアログが現れます。

Extension Name に、Uninstall と入力し、
あとは適当に入力してください。w

せっかくなので、アイコンも AppCleaner のものにしてみましょうか。

Alfred のウィンドウを開いて ( Defaultでは、Option+スペース ) 、appcl あたりまで入力すると、一番上に AppCleaner.app が来ると思います。

ここで、右矢印キー (→) を押して、info と入力してください。

そしてそのまま、⏎キーを押します
※ これは、Power pack の File System Navigation とResult Actions という機能です。

AppCleaner の情報ウィンドウが表示されます。
このウィンドウの左上の小さなアイコンを選択して、⌘+C でコピーします。

そして、先ほどの、Extension 作成のウィンドウの虫眼鏡マークをクリックし、⌘+V でペーストします。

Create ボタンをクリックすると、このフィルタの設定画面になりますので、上半分は、以下の図のように、入力してください。

その下の File Types: では右下の+ボタンをクリックして現れるファイル選択ダイアログを表示させます。
このダイアログは、「どんなタイプのファイルが AppCleaner に渡されるべきなのか?」ということを指定するものなので、アプリケーションフォルダに移動して、任意のApplication のファイル (*.app) を選択します。

これで、File Types には、application/com.apple.application-bundle というエントリが入ったはずです。

その下の Scope: は、「どこを探せばいいの?」ということなので、
Browseボタンを押して現れるフォルダ選択ダイアログで、アプリケーションフォルダを指定します。

最終的には以下のようになっているはずなので、Save ボタンで保存します。

 以上で設定はおしまいです。

How to Use

さて、使ってみましょう。

Alfred ウィンドウを表示します。( Defaultでは、Option+スペース )

uninstall に続けて、スペース (あるいは、⏎ ) を押してから、アンインストールしたいアプリケーションの名前を何文字か打ちます。
※ インクリメントサーチされます。

目的のアプリケーションが一番上に来たら、⏎

※ 以下の図は、Numbers.app をアンインストールしたい場合の例です。

自動的に、AppCleaner.app が立ち上がって、今、指定したアプリケーションが、アンインストールの対象に渡されています。

あとは、削除されるファイルをよく確認して、ほかで使われているかもしれないファイルのチェックを外して、 削除ボタンをクリックすると、リストされたファイル のうちチェックマークのあるものすべてがゴミ箱に入ります。

February 28, 02:02 AM

標準で QuickTime が対応するコーデックは、Internet上の動画の半分も対応できていません。

もちろん、「この動画プレイヤーアプリケーションでは再生できる」というケースはありますが「Codec に合わせて、再生するプレイヤーを変える」というのは、あまりスマートではありませんし、できるかぎり、「これを入れておけば」Mac全体として (QuickTime Player でも、QuickTime に依存するアプリケーション上 でも…) 動画再生が可能になるように QuickTime Component の形が望まれるわけです。

ということで、拙ブログ『脳みその中身』でも何度か Mac で使える 動画再生用の QuickTimeコンポーネント について取り上げてきました。

現段階での動画再生用 無料 Codecまとめ的なものは以下の四つです。

それぞれ、Libraryフォルダ下QuickTimeフォルダ( /Library/QuickTime or  ~/Library/QuickTime ) に QuickTimeコンポーネントを入れたり、Applications フォルダ ( /Applications )にアプリを入れたり、Internetプラグインフォルダ (/Library/Internet Plug-Ins )をプラグインを入れたりします。

=====================================

Perian

[File formats]

AVI
DIVX
FLV
MKV
GVI
VP
VFW

[Video types]

MS-MPEG4 v1 & v2
DivX
3ivx
H.264,
Sorenson H.263
FLV/Sorenson Spark
FSV1
VP6
H263i
VP3
HuffYUV
FFVHuff
MPEG1 & MPEG2 Video
Fraps
Snow
NuppelVideo
Techsmith Screen Capture
DosBox Capture

[Audio types]

Windows Media Audio v1 & v2, Flash ADPCM, Xiph Vorbis (in Matroska), and MPEG Layer I & II Audio, True Audio, DTS Coherent Acoustics, Nellymoser ASAO

AVI support for AAC, AC3 Audio, H.264, MPEG4, VBR MP3 and more

Subtitle support for SSA/ASS, SRT, SAMI

=====================================

Flip4Mac
※ Flip4Mac で検索して Telestream のサイトからダウンロードしようとして、有料版をクリックしてしまうケースが散見します。
※ 再生するだけなら無料版 でOKですので、上記リンク(MicroSoftのサイト)からどうぞ。

[Supported audio codecs]

Windows Media Audio 9
Windows Media Audio 9 Professional
Windows Media Audio 9 Lossless
ISO MPEG Layer 3 (MP3)
Microsoft G.726
Microsoft IMA ADPCM
Microsoft G.711 aLaw
Microsoft G.711 uLaw
Microsoft ADPCM

[Supported video codecs]

Windows Media Video 9
Windows Media Video 9 Advanced (VC-1)
Windows Media Video 8
Windows Media Video 7
ISO MPEG-4, versions 1.0 and 1.1
Microsoft MPEG-4, versions 2 and 3
Microsoft Motion JPEG

[File formats]

Advanced Systems Format (ASF)
Advanced Stream Redirector (ASX)
Audio Video Interleaved (AVI)

[Network protocols]

MMS Real-Time Streaming Protocol (RTSP)
MMS HTTP
HTTP
FTP

=====================================

Silverlight

Microsoft 開発の Webブラウザプラグイン
Windows 限定のサイトなどで、近年、Silverlight を採用して、Macでも動画再生可能なコンテンツに切り替えるところが出てきている。(Gyao など)
※ 思うに…同じ Microsoft の WMV から Silverlight への変更は、 比較的無理なく移行できるのでは無かろうか…と勝手に思ってる。w

=====================================

Xiph QuickTime Component

オープン且つパテントフリーなoog 系コンテナを策定している ザイフォ財団 (Xiph.Org Foundation) の QuickTime コンポーネント。
音声フォーマット (Codec) Vorbis / FLAC / Speex
動画フォーマット (Codec) Theora
などを扱えるようになる。

インストール方法:当該Macのユーザ全員で使う場合 /Library/QuickTime/ に、当該ユーザのみで使う場合 ~/Library/QuickTime/ に、インストーラ dmg  を開いて表れる QuickTimeコンポーネント を入れるだけ。

=====================================
以前に、『脳みその中身』内で、動画再生Codec の QuickTime コンポーネント 関係について書いたエントリは ↓

Mac 用 Codec サマリー

Perian – Mac OS X 用 超便利Codec

動画再生用 CODEC Mac OS X 向け

Windows Media Player での MPEG2 Codec

February 22, 02:06 AM

Dropboxに「iPhone ( or Android携帯 or デジカメ or デジカメで使用しているSDカードなどのメモリカード ) などを Mac/PC にUSBで接続したら、自動的に、カメラロール内の写真や動画が、Dropbox/Camera Uploads フォルダに取り込まれて、Dropboxサーバに U/L されるという機能」が、ベータ版 (1.3.x) から追加されました。

この機能のフィードバックを得るために、現在、下記URLから取得できる Dropbox の Forumバージョン(ベータ版) をインストールして、上記機能を使うことで、2012/02/22 現在、無料のスペースが、4.5 5  5 GB までを上限に獲得できるというキャンペーンが行われています。
http://forums.dropbox.com/topic.php?id=54396

このキャンペーンで、一旦取得した領域は、permanently だそうです。
ただし、500MB ごとに、増加分合計 4.5 5  5 GB までということなので、
4GBを越えるクソデカイ動画で一挙に…というわけにはいきませんでした。
500MB 程度の動画をiPhoneで撮影しちゃー 同期するのを繰り返すことになります。

段取りとしては…

1. ベータ版をインストール (もちろん上書き)
※ Dropbox > 設定… のネットワークタブから、アップロード速度を無制限にしておくことをお勧めします。

2. iPhone で、どーでもいー動画を撮る
(3分程 450MB程度のものでOK)

3. iPhoto だの イメージキャプチャだのが自動で立ち上がる機能は切っておいた方が楽でしょう。もちろん、そのたびに「今は忙しいんだっつーの。お呼びでないの!」と終了させてもかまいません。

4. Mac/PC に繋ぐ
(最初だけ、「例の自動フォトアップデート機能を使うかい?」と聞かれるので、「おおともさ!」と了解してあげてください)

5. iPhone → PC/Mac → Dropboxサーバ と「どーでもいー動画」が U/L されるのをひたすら待ちます。

6. Dropbox フォルダ内の “Camera Uploads”フォルダに「どーでもいー動画」がコピーされたら、USBケーブルを外して、iPhone のカメラロールを空にして (空にしなくても、一度読み込まれた動画ファイルは、Dropboxがそれと認識しますけど、精神衛生上ね…)、別の「どーでもいー動画」を3分撮影します。

7. Dropboxサーバへの同期 (U/L) が終了したら(Dropbox アイコンがチェックマークになったら)、上記手順4から繰り返します。

数回繰り返したら、Dropbox の Webサイトへ行って、イベントタブで、ちゃんと容量が増えているかを確認して悦にいりましょう。

「記憶容量が xx.xxGB に増加しました」
というイベントが何度か追加されているはずです。

蛇足:まだ Dropbox を使っていないという方は、是非この機会に、使ってみましょう!通常の無料スペースは 2GB ですが、この方法 (多分ベータがはずれるまでの期間限定) で始めれば、2GB + 5GBで、7GB 使えます!

蛇足2:まだ Dropbox を使っていない方は、上記段取りの前に、
http://db.tt/6D46GE6
↑から、Dropbox の無料登録を行ってください!
(+250MB の追加スペースが付加されます)
僕も喜びます!(爆)

January 28, 02:19 PM

Mac OS X Lion の TimeMachine用に、Drobo FS を使用する方法

Drobo FS とは、「メンテナンスの超絶簡単な RAID-NAS」とでもいったらいいのでしょうか。
この Drobo FS を TimeMachine 用のHDとして使うための設定をメモしておきます。

Software のアップデート

Mac OS X Lion に対応させるためには、Mac ソフトウェアアップデートで、最新 (10.7.2) にアップデートし、Drobo Dashboard / Drobo Firmware を最新にする必要があるとのことです。

Drobo FS, Drobo Pro FS, B800fs support for Lion Time Machine

※ 以下の説明は、Mac OS X を最新 (2012/01/29 現在 10.7.2) にアップデートておいてあるものとします。

Drobo の設定をするために Mac側にインストールする Drobo Dashboard と、Drobo 本体の基本ソフトウェアである Drobo Firmware がありますが、Drobo Dashboard をインストールして、自動アップデートで、Drobo Firmware もアップロードされますので、とにかく、Drobo Dashboard をインストールすることから始めます。

僕の場合、バンドルされてきたCDの Software は古いに違いないと思い、まずは、Drobo日本語サイトから、Mac用の Drobo Dashboard 1.7.3 をダウンロードし、インストールしました。
( バンドルCDの Drobo Dashboard のバージョンは未確認。)

Drobo に数個のHDが挿されていて、LANケーブルが繋がっていて、電源が入っていれば、Drobo Dashbaord を立ち上げるだけで、自動的にアラートが出て、その都度従うことにより、 Drobo FirmwareDrobo Dashboard自動アップデートされました。

※ このときのアラートで、「Droboを終了させて…」と出てくる場合がありますが、特に Drobo の電源を落としたり Drobo Dashboard を手動で終了させたりするようなことは不要です。
単に、OKだか「はい」だかを押して、従うのみで大丈夫でした。
※ 必要に応じて、Macが再起動されます。
※ 僕の現在 (2012/01/29) の Mac版 Drobo Dashboard のStableな最新バージョン (上記の方法で最終的にアップデートされる Mac版 Drobo Dashboard 最新バージョン) は、Drobo Dashboard 2.0.3.40648 で、 Drobo Firmware は、Drobo Firmware 1.2.1 [4.31.45080] です。
Drobo英語サイトのダウンロードページからは、Drobo Dashboard 2.1.2 がダウンロード可能のようですが、僕は使用していません。

#########################################
追記:
本日、上記英語サイトから Drobo Dashboard 2.1.2をインストールしました。
以前のヴァージョンをアンインストールせずに、上書きインストールで大丈夫のようです。
また、表示が英語になるかと思っていたのですが、日本語でした。
少しメニュー階層が変更されていますが、問題なく使えるようです。
#########################################

TimeMachine用の「共有(ボリューム)」を作成

Can I use Apple’s Time Machine with my Drobo FS/DroboPro FS/B800fs?

  1. 左カラムから「共有」を選択
  2. 右カラムから「共有設定」を選択
  3. 右カラム左下の「+」ボタンをクリック
  4. 共有名を設定
  5. 「この共有の Time Machine のサポートを有効にする」をチェック
    ※ 一旦設定して共有を作成した後での変更はできない
  6. 「バックアップサイズの制限値」を設定してOK
    ※ 一旦設定して共有を作成した後での変更はできない
    ※ 単位がGBであることに注意
  7. 何秒かすると、共有リストに今作った共有が表示されるので、「マウント」にチェック
    ※ 表示されない場合、一旦 左カラムから他のメニューを選び、再度「共有」を選択すると表示される
  8. 左カラムの「設定…」を選択し、「管理者」を選択
  9. Admin ユーザーを設定

Time Machine 環境設定

システム環境設定 > Time Machine > ディスクを選択…で、今、作成設定した共有(ボリューム) を選択する

※ このとき、ユーザ名とパスワードを聞かれるので、手順 9 で 設定した Admin ユーザのユーザ名とパスワードを入力する

January 06, 12:54 AM

人は誰も『貯○池』を持っている

「腹が立つ」と「怒る」の間の『堪忍袋』のようなものがそれであり、
(今現在の己の能力や状況では) 解の出ない問題に直面したとき、いったん棚上げにする『棚』がそれである。
電気回路における『コンデンサ』のような『貯○池』は、人間が社会生活を営む上で、欠くべからざる機能であると言える。

何を「貯める」のか…

それは、怒りであり、虚無であり、無力な『すべての問い』である。

つまり、理解不能(もしくは、理解なんぞしてやるもんか…)なこと。
(今の自分の力では)どうにもらないこと。
そうした問題を目の当たりにしたときには、人は、退避場所にそれらを送る。

どのくらい「貯められる」のか…

『オトナ』であるほど、『デキタ人間』であるほど、許容量 — つまり貯め込むことのできる量 — は、より大きいとされる。
なぜなら、それらの問題の大半は、『我慢』を強いる。
そして、一般に、『オトナ』は『子供』よりも余計に『我慢』できるはずであるからだ。

たしかにそのはずである。
自らを振り返るに…
子供時代と比べれば、すこしは我慢に長けたような気はする。
( 百貨店の玩具売り場で、「ダメ!」と言われてこの世の終わりのようにショックを受けた子供時代の僕よりは幾分マシである…という程度には、)
今年 51歳になる僕は我慢強い。

理由は単純である。
オッサンが、公衆の面前で駄々をこねるのは、見ていられないほどイタイ光景であるからだ。オッサン本人以外には誰も気にしないが…

オッサンが持つ能力は、この奇妙な自意識だけではない。
もうひとつの、オッサンの最特技は『鈍さ』である。
『したたかさ』と言っても良い。

換言すれば、オッサンは不感症である。
長い人生の間に、敏感な部分を他人にいじくりまわされ、それ以上に自分でいじくりまわしたあげく、押しも押されもせぬ立派な不感症になったのだ。

とにもかくにも、斯くして、くだらない自意識を持つ、不感症のオッサンが誕生したわけである。

我慢の限界

しかし、我慢の『限界』は厳然と存在する。

オッサンにだって…である。

理由は、そもそも我慢は身体に悪いから…だ。
身体に悪いことは、一定の許容量を超えると、身体が拒否するのである。

脳みその最前線から、理解不能・回答不能な問題は、いったん『退避場所』に送られるが、退避場所の許容量を超えると、身体が拒否する。

身体が拒否したあげく、それらはどこへ行くのか

それらは、トコロテンのように押し出されていく。
押し出されていく先は、忘却の彼方であったりもするが、必要に応じて、脳みその最前線に押し戻される。

オッサンは、このあたりの仕分けが得意である。

オッサンの得意技『忘却』と『反芻』

オッサンの最強の得意技は『忘却』なので、忘れる能力には何の問題も無い。

しかしオッサンは、あえて忘れないで、再び対峙するべく、脳みその最前線にそれらの問題を押し戻すのだ。
まるで、牛の反芻である。

今の自分の能力では、答えの出ない問題に直面した場合、
オッサンは、いったん退避場所たる『心の棚』にそれらの問題をいったん『棚上げ』にする。
当事者のオッサン以外には、『逃避』と映るかも知れないがそうではない。

オッサンは案外忙しい。
その瞬間に、せねばならぬ仕事がある。
早押しクイズのように押さねばならぬボタンがある。

検証や再考が必要な問題は、いったん棚上げするが、あとでちゃんと棚から下ろして対峙するのだ。

オッサンは、オッサン家のイタチとは違うのだ。
やつらは、オッサンのことを

  • 自動エサ出し機
  • オートクソ取り機
  • エサ出しクソ取りロボット

としか思っていない『忘恩の徒』だが、
オッサンは断じてそうではない。

オッサンには、『反芻』という最強能力があるのだ。
この『反芻機能』が壊滅しない限り、オッサンは無敵である。

(;´Д`)はぁはぁ…

November 21, 02:37 AM

『さや侍』を観た。

松本人志監督の最新作である。
松本人志は、自らを天才と名乗る。
その行為は、とくに日本人の気質にはそぐわない。

彼の作る笑いは、その多くがアドリブである。
お題をひとつ決めて、やりとりしていく中に、他の誰にも置けない位置に、思いも付かない至極のピースをバシバシと置く。
天才はひらめきとセットで語られる。
たしかに「ひらめく」のだろうと思う。

松本人志は、「笑いの理屈」を解明し説明可能にしたいと思い続けているらしい。
かつて、故 桂枝雀が「緊張と緩和」というヒントを呈して以来、そのことを考え続けているのだと言う。

「ひらめき」と「理屈」は相反するように聞こえる。
彼は、再現性のある「理屈」として「笑い」を留め置きたいのだと思う。
もしかしてそれは、「笑いに値しない薄っぺらな戯れ言が笑いと認められていること」に対する猛烈な怒りなのかもしれない。

ともあれ、松本人志は、「ひらめきの人」であるがゆえに、「理屈の人」である。
なぜなら、「彼のひらめき」は「リアルタイムのその瞬間」に超高速で理屈を計算し、自分の語彙の中から「そぐう言葉」を検索し、「最適なタイミング」と「最適な言い方」で場に投げ放つものだからである。

言うならば、理屈を計算した「脚本家」「監督」としての自分と、「演者」としての自分の二人羽織である。
この二人は同一の人間が行うことが望ましいように思える。
だから、これまでの彼の映画は監督兼主役であったのだろう。

しかし、この『さや侍』は、「そうでない初の作品」である。

超高速で「計算された理屈を駆使できる人間」が、たっぷり時間をかけて、「監督」という役割のみに徹した初の作品である。

松本人志は、すでに芸能界で大きな立場にあり、ファンもたいへんに多い。

一方、彼の笑いは、暴走気味に走りやすく、ときに聞く者を置いてきぼりにする傾向がある。
個人的な見解だが、コンビを組む浜田雅功の役割は、「聞く者を置いてきぼりにさせない」という一点にあるように感じる。
旧い漫画の話で恐縮だが、Gu-Guガンモにおけるスニーカーの役割である。
※ スニーカーがなければガンモは空を思うように飛ぶことが出来ない

松本人志を構成する笑いの本質とは、浜田雅功のツッコミなしには、「商品」として「受け入れられない」笑いであると極論しても良いのかも知れない。
しかし、「万人にわかるようにする」という努力は、先の譬えをなぞるなら、「加減して飛ぶ」という努力である。
しかし、彼は、その都度その都度、力の限り羽根を羽ばたかせて、勝負したいのだ。
松本人志は、思いっきりの松本人志を、毎回、客に投げつけたいのだ。

この欲求が彼の根幹をなすのだから、彼の映画はわかりにくい。
「客のレベル」という話ではない。
「客の覚悟」という話である。

「楽しませてくれること」を期待して、何の「覚悟」もなく、ただぼーっと『さや侍』を観ても、消化不良感しか得られない。
いまどきのハリウッド映画によくあるように「グイグイと引き込まれる感じ」は、『さや侍』には存在しないのだ。
ある人が「爆薬の量」と称した「派手さ」も一向に与えてはもらえない。

こういうと、『さや侍』は、人気者の芸人 松本人志が、その笑いの才能だけを頼りに、本来怠るべきでない「グイグイと引き込まれる感じ」だの「派手さ」だのを盛り込むことに横着して、適当に作ったものなのだと聞こえるかもしれない。

実際、Web上で漏れ聞こえてくる『さや侍』の評価は芳しくない。
しかしそれは、松本人志の「客に阿る(おもねる)ことを排する決意」ゆえである。

「こんなつまらない作品を二度観ようとは思わない」
どこかのだれかのそんな Tweet を目にした。

しかし、客の覚悟なしには、二度三度観なければ、『さや侍』の価値は理解できない。

「いや、僕は、ちゃんと感動したよ。涙したよ。」と思う方には、再度繰り返したい。
あなたも、松本人志が『さや侍』に込めたモノを味わい尽くしてはいない。
一度観た程度では、「わかりやすくするため」の努力を排してさえ、込めようとしたモノの半分しか理解できていない。

そこには「答」がある。

「親子とは」「生きるとは」「死ぬとは」「男とは」「侍とは」「戦うとは」「守るとは」「遺すとは」「命の美醜とは」という『普遍的な答のあるはずのない禅問答』に対するひとつの答がある。
『さや侍』がくれる答の姿は、万人が同様に同意できるものではない。
しかし、ひとつの「純粋な」答である。
今の時代だからこそ誰も語らない答がある。
現代人が10人集まって、夜通し語り合っても、たどり着けない類の「見失っている答」がある。

僕自身、一度目に観た感想は、
「のこり15分あたりまでは面白くも何ともないギャグネタが続く。板尾的な肩すかしネタ多し。ただし、最後の15分は感動ラッシュ!ここまではこの15分のためにあったのだ。この良さが分からない奴は、父親の資格無し!」
という Tweet の通り、薄いものだった。
(正確には、「残り22分ほど」だった)

二度目に観たときは、42チャプター中39番目のチャプターから観た。
「感動はしたものの、それが何の感動だったか」を確認したい欲求からだった。
だからといって「板尾的な肩すかしネタ」で構成される前半の1時間20分は観る必要が無いと思っていた。

観た後、触られたことのない 心の部分を触られた気がした。
しかし「侍」なんて時代錯誤な価値観は、現代を生きるのに何の役にも立たないとも感じた。

三度目は、最初から最後まで観た。
娘たえの手を、自ら初めて取る能見勘十郎の行動の意味に気付いた。
「さや」の本当の意味に初めて気付いた。

たまらずすぐに、四度目を観た。
四度目は、主人公の野見勘十郎と娘たえとの時系列のシーンと、対応する感情や意識の変化を書き出しながら観た。
僕の四度目の見方は、やりすぎでもある。
感じるべきものを考えてしまうのでは、本末転倒である。
「いまの笑いは何が面白かったかというと…」と説明するのに似ている。

しかし、鍵になるシーンと想像される気持ちを書き出すことで、鍵になるシーンと鍵になるシーンとの間のディテイルの細やかさに多く気付かされた。
メモを取るというおよそ感受性と関わりの無い行動とはうらはらに、もっとも感動し、嗚咽した。

これから自分の人生に消化不良になったとき、僕はまた『さや侍』を観ようと思う。

多くの人に『さや侍』を観て欲しいと思う。
そこに詰め込まれたすべてを吸い尽くす覚悟で、何度も観て欲しい。
能見勘十郎が一度だけ微笑むシーンや、一度だけ娘の手をとったシーンや、一度だけ「さや」に刀身を収めたシーンを観て欲しい。

Posts

June 26, 03:49 AM

itachi_100616.mp4 Watch on Posterous

Posterous.com のエントリをメールで追加するときに、画像 / 動画 / 音声 などのファイルを添付することで、当該ファイルもEmbed される。

Permalink | Leave a comment  »

June 26, 03:41 AM

単純に、post@posterous.com 宛に、自分の登録メアドからメールするだけ。

Permalink | Leave a comment  »

February 28, 12:53 PM

いや、具体的にすまーとな方法は、まだわからない。

Firefox の GreaseMonkey Script のものならあるが、できれば、Safari か Chrome で使えるものが欲しい。
※ 実は、MailPlane で使える方がもっとありがたい。

わかったことは…

https://mail.google.com/mail/#search/

という文字列に続けて、Message-ID を入力してやることで、当該メッセージのみの検索結果画面にはなる。

もちろん、自分のGmailアカウントにそのメールが存在しなければならない。

どなたが、クリティカルな解をご存知ないだろうか。

《以下、2011/02/15 追記》

拙ブログ本館 にエントリを書きました。

Google Apps (Gmail) で PermanentLink を取得する方法

FileMaker で Google Apps (Gmail) の PermanentLink を取得するカスタム関数

Permalink | Leave a comment  »

February 20, 02:39 PM

UStream Producerで別のMacの画面を放送

UStream ProducerがPro版とFree版が出て不安定なFlash君無しで中継が出来るのは嬉しいところです。11月からTMUGのUStream録画(中継は回線が不安なので、ブツ切れしないように録画にしている)をやっていて、色々と改善したい点があったりするわけですが、その一つがプレゼン画面をカメラで写さないで、直接スクリーンキャプチャから持ってこれないか?ってところでした。それが出来ると、プレゼン画面やアプリの操作画面をメインにして、プレゼンターの姿を小さくPicture in Pictureで表示できるわけで、とってもリッチで嬉しいわけです。

Pro版を買うほどの事もないので、まずはFree版での実験をして無事成功したので、手順を公開します。

Screencastを選ぶと、Desktop Presenterというソフトが別に立ち上がります。これが鍵ですね。このアプリの本体はUStream Producer.appのパッケージを開くと、Contents/Resourcesの中に入っています。

予想した通りUStream ProducerとはTCP/IPの7272番ポートで接続するような仕様みたいです。netstatで見てやると*.7272でLISTENしています。

ということで、若干の実験を経てLocalで立ち上がってるDesktop Presenterと区別がつかなければOKなんじゃないかと予想を立てて、別のMacでDesktop Presenterを立ち上げて、さらにsshでport fowardをかけてみたところバッチリ繋がりました。

最初は放送側のMacからssh -Lでプレゼン側のMacに繋いだんですが、これだといちいちプレゼンする人にsshで入れるアカウントを用意してもらわないといけなかったりとややこしい事になるので、ssh -Rでプレゼン側のMacから放送側のMacにport forwardすることに変更しました。これでもtcp的な見た目は同じ事なので無事繋がります。

では、細かい手順を説明して行きましょう。まずはUStream Producerも何も立ち上げない状態から始めます。

  1. まずは放送側のMacにリモートログイン出来るように設定します。システム環境設定の共有でリモートログインのチェックをオンにしてやります。
  2. 次に、放送側とプレゼン側の2台のMacのIPアドレスのうち同じネットワークにあるIPアドレスを調べます。両者が無線LANの同じ基地局で繋がっているのであれば、無線LANのポートに付いているアドレスですね。放送側のアドレスだけで大丈夫です。プレゼン側は繋がらないなどの現象があった場合にトラブルシューティングとして調べればOKです。同じくシステム環境設定のネットワークを選んでEthernetならば左のリストからEtherを選べばアドレスも表示されますが、AirMacの場合は詳細...ボタンを押して更にTCP/IPタブを選んでください。この例の場合は192.168.10.125になります。
  3. さて、次はプレゼン側に移ります。アプリケーションフォルダのユーティリティフォルダに入っているTerminalを立ち上げます。ここに以下のようなコマンドを打ちます。
    ssh -N -R 7272:127.0.0.1:7272 test@192.168.10.125
    ここで、testの部分は放送側のMacにログイン出来るログイン名に適宜置き換えてください。すると、こんな風にPasswordを要求してきますので、放送側のMacのログインパスワードを入力します。この時にキーインしても何も表示されませんので、確実に一気に入力してください。間違えた場合は再度パスワードを要求されます。パスワードの前にAuthenticationがどうのこうのと言ってくる場合もあるかもしれませんが、その場合にはyesと入力してください。
  4. これで、無事繋がっているハズですので、Terminalは放置して、Desktop Presenter.appをプレゼン側のMacにコピーして立ち上げます。プレゼン側のMacのIPアドレスがこの場合は192.168.10.12になっています。
  5. さて、ここでやっとUStream Producerを立ち上げます。適宜ログインを済ませてScreencastボタンからAdd New Screen Recording Shotを選ぶと下にScreencastの選択肢が出てくるはずです。で、その画面はプレゼン側のMacの画面になっているはずです。

ということでいかがでしょう?無事繋がりましたか?あとはUStream Producerの使いこなしの話しになってしまうので、それは他の方にお任せしま〜す。

ちなみに、こうやって一度設定してあげると、sshのコネクションを切っても再接続すれば大丈夫です。ということで、プレゼンする人が変わる時には、再度そちらのマシンからsshコマンドを打ってあげれば良い事になります。もちろん元のプレゼンターからの接続は先に切っておかないといけませんので、前のプレゼンが終わったら固まっているように見えるTerminalでCtrlキーを押しながらcのキーを押します。それでプロンプトが戻ってくるはずですので、切断に成功した事になります。

<2010.2.5追記>Windowsでのプレゼンも放送できた方が嬉しいと思うので、Windowsからもやってみました。同様にssh -Rでの接続(sshはCygwinで入れました)で無事放送できました。他にもPort forward用のソフトはあったと思うので、Cygwinにsshをインストールしてない場合もそう言ったソフトを入れれば良いんじゃないでしょうか。ちなみに、Desktop Presenter.exeはC:\Program Files\Ustream\Ustream Producer\rsrc\に入ってました。

How to broadcast Another Mac's Screen via Ustream

Permalink | Leave a comment  »

February 20, 02:36 PM

2010年2月 4日 (木)

Skypeで電話するスクリプト

@himanaiku_kawai さんの「特定の人からメールが着信するとスカイプからケータイに電話かけてくれる機能欲しい。。」というtwittを見て、ちょっと作ってみました。MacならAppleScriptで簡単に実装できんじゃない?と思って調べてみたら、次の1行で済んじゃいました。

tell app "Skype" to send command "CALL echo123" script name "SkypeCall"

echo123のところを目的の電話番号(日本なら+81で始めて最初の0は削除した番号列)に変更すればOKです。あとは、このスクリプトをScript Editorでスクリプトとして保存して、Mail.appなりでフィルタに特定のメールアドレスでAppleScriptが起動するようにルールを設定すれば良いだけですね。が、それだと確かに電話は掛かってくるんですが、無言のイタズラ電話状態なので、なんか寂しいですよねぇ。ってことで、ちゃんと繋がったのを確認して、特定の音声ファイルを再生するようにしてみました。

tell application "Skype"  copy word 2 of (send command "CALL echo123" script name "SkypeCall") to callid  repeat    copy word 4 of (send command "GET CALL " & callid & " STATUS" script name "SkypeCall") to callStatus    if callStatus is "INPROGRESS" then exit repeat    if callStatus is in {"REFUSED", "CANCELLED", "FINISHED", "MISSED", "BUSY"} then return  end repeat  send command "ALTER CALL " & callid & " SET_INPUT file=" & quote & "/path/to/soundfile.wav" & quote script name "SkypeCall"    tell application "Finder" to delay 30    send command "SET CALL " & callid & " STATUS FINISHED" script name "SkypeCall"end tell

右がちょっと切れてますので、ソースはScript Editorにペーストしてコンパイルしてからゆっくり眺めてください。

同じく、echo123は適宜電話番号に置き換えてください。さらに/path/to/soundfile.wavを再生する音声ファイルにして、その音声ファイルの長さに合わせてdelayコマンドのパラメータの30秒の部分を修正してください。Skypeが対応している音声ファイルは16k sample/sec、16bitのWavファイルだけしか受け付けてくれないようです。

script nameパラメータは何でも良いんですが、スクリプト内で一貫させておいてください。あと、最初に実行した時にSkypeの方でコマンドを受け付けても良いか聞かれるので、許可してあげてください。

はたしてニーズがあるのかどうか分かりませんけど、せっかく作ったんで公開しておきます。なかなかSkypeのスクリプトも色んな事出来そうなのが分かったので、今後もなんか作るかもしれませんし、興味を持って調べて何かもっと使い手のあるものでも作ってもらえると嬉しいかなと思います。ライセンスはBSDってことで、ご自由にお使いください〜!!

Useful.

Permalink | Leave a comment  »

February 12, 02:24 AM

We focused on making the sharing experience really rich by integrating photos, videos, and links. No more fuzzy little pictures: Buzz makes it easy to quickly flip through photos and experience them the way they were meant to be seen: big and full-resolution. And videos play inline so you can watch them without opening a new window.

You can choose to share publicly with the world or privately to a small group of friends each time you post. And you can connect other sites you use, today there's Picasa, Flickr, Google Reader, and Twitter, so your friends can keep up with what you're doing around the web — all in one place.

To make sure you don't miss out on the best part of sharing, Buzz sends responses to your posts straight to your inbox. Unlike static email messages, buzz messages in your inbox are live conversations where comments appear in real time.

You can follow the specific people whose posts you want to see, but Buzz also recommends posts from people you're not directly following, often ones where your friends are having a lively conversation in the comments. If you're not interested in a particular recommendation, just click the "Not interested" link and your feedback will help improve the recommendations system. Buzz also weeds out uninteresting posts from the people you follow — collapsing inactive posts and short status messages like "brb." These early versions of ranking and recommendations are just a start; we're working on improvements that will help you automatically sort through all the social data being produced to find the most relevant conversations that matter to you.

 

For all those times when you want to share something but aren't in front of your computer, Buzz is also available on your phone. When you're out in the real world, a lot of the information you want to share often has to do with where you are: for example, you may want to talk about a new restaurant you discovered or the score of the game you're watching. So rather than simply a small screen version of the desktop experience, Buzz for mobile brings location to the forefront and makes it easy to have conversations about places. In addition to checking out buzz from people you're following, you can also see nearby buzz from the people around you.


We'll be rolling out Google Buzz to everyone over the next few days; you'll see a new "Buzz" link under "Inbox" when it's on for your account. We're still working on some features to make Buzz work well for businesses and schools, so it isn't yet available in Google Apps, but stay tuned. If you want to learn more in the meantime, visit buzz.google.com or check out the Help Center.

 

 

 

 

自動重要度フィルタ的に読み取れるが、蓄積されたメールデータが一種のコーパスとして機能する仕様なのだろう。
となれば、そのあたりのインデクシングに、Gearsの機能も活用されていると見るのが自然な推測ではないか。

Permalink | Leave a comment  »

February 09, 04:25 AM

FileMaker custom functions resource point fmfunctions.com is a central access point for custom filemaker functions built and contributed to by the FileMaker community. Custom functions do all sorts of useful stuff that FileMaker doesn't do or isn't interested in.

The more users and contributors we have - the more useful the resource becomes for everyone - so register and start contributing!

We truly value the input of our users. Please contact us if you have any suggestions or comments on how we can improve your experience.

-->

Dear Fmfunctions.com users!

The fmfunctions development team and our partners realevo.com have been working on upgrades to the fmfunctions website, including integration of code coloring and live function testing – we’re also updating the interface to help with usability. We expect to release a beta version for testing within 3-4 weeks. Please contact us if you’d like to participate in the beta test or if you have any improvements you’d like us to make.

In other news, our partners at www.filemakerdesign.com have put together a handy little application for FileMaker called the FM Expression Editor – in their words it’s "the simple and smart way to edit FileMaker calculations". The application features syntax highlighting, intelligent content assistance, quick function look-up and database design report integration. These features combine to provide you with an environment that lets you write complex functions and calculations faster than ever before.

For more info – go to www.filemakerdesign.com/expression. There’s a free trial available for download.

Finally, thanks to all our users for their support over the last 10 months. We hope to bring you a more relevant, user-friendly site shortly.

Fmfunctions.com team

Post a function and get free stuff !

Contratulations to John Mark Osborne of FileMaker Pros) he won a nifty snorg t-shirt.  Jealous??  Next draw 19 Feb 2009.  Post a function on FMfunctions before 19 Feb 2009 to enter.

-->

Recently posted

RemoveSmartQuotes ( ) Removes any single or double smart/curly quotes from the specified text (requires FileMaker v10)
xmlSetH ( ) store multible named values in one field or variable! sets value of a tag within a xml by [...]
xmlGetH ( ) store multible named values in one field or variable! get value from named tag by hierarchical name

Downloads from FM Design Blog


Port Forwarding This is a 7 or so minute long video attempting to explain what it is that port forwarding actually is, how it works and what the heck the point of it is.

FMS Deployment Options Make a semi informed decision when going to deploy your solution on FileMaker Server 9.

Faking an Apple Accordian This demo aims to replicate the Accordion widget seen all over the apple site in various forms within FileMaker.

FileMaker のカスタム関数のリポジトリサイトのひとつ

Permalink | Leave a comment  »

February 08, 11:13 PM

一般的に、1つのWordpressでマルチドメインを制御、管理したい場合は、Wordpress MU(μ)を利用する方が手っ取り早いかもしれません。
ただ、レンタルサーバーによっては、Wordpress MUは、インストールが難しく、インストールできても思ったように動いてくれなかったりします。
さくらインターネットでは、サブドメインでWordpress MUを動作させるのは、なかなか難しいです。
ここでは、簡単なソースコードの追加で行える1つの方法を説明してみます。

wp-config.phpを編集する

Wordpressのインストール先ディレクトリにwp-config.phpというファイルがあると思います。
そのファイルをテキストエディタで編集します。
ファイルを開いたいら、”$table_prefix”を検索してみてください。
おそらくは、以下のようなコードが記載されていると思います。

変更前

$table_prefix = 'wp_';

※’wp_’は、インストール時に設定したものが設定されているはずですので、デフォルト値から変更された場合は、その変更された文字列になっていると思います。

上記部分を以下のように変更します。

変更後

$table_prefix = '';
$domain = strtolower($_SERVER['HTTP_HOST']);
switch ($domain) {
case "blog111.example.com":
        $table_prefix  = 'wp_';
        break;
case "blog222.example.com":
        $table_prefix  = 'wp_222_';
        break;
}

この例では、インストール時に使ったドメイン名を”blog111.example.com”としています。
今度、新たに追加するサブドメイン名を”blog222.example.com”としています。

追加したいドメインのルートパスを設定する

ここの例では、”blog222.example.com”のルートパス(ディレクトリ)をWordpressのインストール先ディレクトリへ設定します。

追加したドメインでアクセスする

ここの例では、”blog222.example.com”へWEBブラウザからアクセスしてみてください。
Wordpressのインストール画面が表示されたことと思います。

注意点

このやり方は、非常にシンプルでWordpressをいっぱいインストールすることを回避できます。また、テーマやプラグインの共有も行えますのでインストールの手間は省けます。

 

ただし、アップデートはテーブルが、それぞれのブログ(サブドメイン、マルチドメイン)で異なりますから、それぞれでアップデートを行う必要があります。(データベースのアップデートが必ず必要であるということです。)

また、プラグイン、テーマは、通常、決められたディレクトリへコピーすれば、ほとんどの場合は、動作します。しかし、ものによっては、データベースを利用している場合があります。その場合は、共有できない場合があります。どうしても必要なプラグインがある場合は、まずは、動作確認を行った方が良いでしょう。

少し乱暴な手法ではあるし、これで済むなら、MU版が不要という話になってしまうが、ある意味シンプル。
情報入手元:Kazさん

Permalink | Leave a comment  »

January 25, 02:51 PM

sips(1)                                  BSD General Commands Manual                                 sips(1)

NAME
     sips -- scriptable image processing system.

SYNOPSIS
     sips [image-query-functions] imagefile ...
     sips [profile-query-functions] profile ...
     sips [image-modification-functions] imagefile ... [--out result-file-or-dir]
     sips [profile-modification-functions] profile ... [--out result-file-or-dir]

DESCRIPTION
     This tool is used to query or modify raster image files and ColorSync ICC profiles.  Its functionality
     can also be used through the "Image Events" AppleScript suite.

FUNCTIONS
     Profile query functions:

     -g key
     --getProperty key
           Output the property value for key to stdout.

     -X tag tagFile
     --extractTag tag tagFile
           Write a profile tag element to tagFile.

     -v
     --verify
           Verify any profile problems and log output to stdout.

     Image query functions:

     -g key
     --getProperty key
           Output the property value for key to stdout.

     -x profile
     --extractProfile profile
           Get the embedded profile from image and write it to profile.

     Profile modification functions:

     -s key value
     --setProperty key value
           Set a property value for key to value.

     -d key
     --deleteProperty key
           Remove a property value for key.

     --deleteTag tag
           Remove the tag element from a profile.

     --copyTag srcTag dstTag
           Copy the srcTag element of a profile to dstTag.

     --loadTag tag tagFile
           Set the tag element of a profile to the contents of tagFile.

     --repair
           Repair any profile problems and log output to stdout.

     Image modification functions:

     -s key value
     --setProperty key value
           Set a property value for key to value.

     -d key
     --deleteProperty key
           Remove a property value for key.

     -e profile
     --embedProfile profile
           Embed profile in image.

     -E profile
     --embedProfileIfNone profile
           Embed profile in image only if image doen't have a profile.

     -m profile
     --matchTo profile
           Color match image to profile.

     -M profile intent
     --matchToWithIntent profile intent
           Color match image to profile with rendering intent perceptual | relative | saturation | absolute.

     --deleteColorManagementProperties
           Delete color management properties in TIFF, PNG, and EXIF dictionaries.

     -r degreesCW
     --rotate degreesCW

     -f horizontal|vertical
     --flip horizontal|vertical

     -c pixelsH pixelsW
     --cropToHeightWidth pixelsH pixelsW
           Crop image to fit specified size.

     -p pixelsH pixelsW
     --padToHeightWidth pixelsH pixelsW
           Pad image with pixels to fit specified size.

     --padColor hexcolor
           Use this color when padding. White=FFFFFF, Red=FF0000, Default=Black=000000

     -z pixelsH pixelsW
     --resampleHeightWidth pixelsH pixelsW
           Resample image at specified size. Image apsect ratio may be altered.

     --resampleWidth pixelsW
           Resample image to specified width.

     --resampleHeight pixelsH
           Resample image to specified height.

     -Z pixelsWH
     --resampleHeightWidthMax pixelsWH
           Resample image so height and width aren't greater than specified size.

     -i
     --addIcon
           Add a Finder icon to image file.

OPTIONS
     The commands --getProperty, --setProperty, and --deleteProperty can use one of the following keys as a
     parameter.

     Special property keys:
     all              binary data
     allxml           binary data

     Image property keys:
     dpiHeight        float
     dpiWidth         float
     pixelHeight      integer (read-only)
     pixelWidth       integer (read-only)
     typeIdentifier   string (read-only)
     format           string jpeg | tiff | png | gif | jp2 | pict | bmp | qtif | psd | sgi | tga
     formatOptions    string default | [low|normal|high|best|] | [lzw|packbits]
     space            string (read-only)
     samplesPerPixel  integer (read-only)
     bitsPerSample    integer (read-only)
     creation         string (read-only)
     make             string
     model            string
     software         string (read-only)
     description      string
     copyright        string
     artist           string
     profile          binary data
     hasAlpha         boolean (read-only)

     Profile property keys:
     description         utf8 string
     size                integer (read-only)
     cmm                 string
     version             string
     class               string (read-only)
     space               string (read-only)
     pcs                 string (read-only)
     creation            string
     platform            string
     quality             string normal | draft | best
     deviceManufacturer  string
     deviceModel         integer
     deviceAttributes0   integer
     deviceAttributes1   integer
     renderingIntent     string perceptual | relative | saturation | absolute
     creator             string
     copyright           string
     md5                 string (read-only)

Apple 本家の Mac OS X Dev Center 内の Sips コマンドのマニュアル。
Mac OS X 10.6 Snow Leopard 用。

Permalink | Leave a comment  »

January 25, 02:47 PM

Image Manipulation

In “Advanced Techniques,” Listing 11-13 shows how to resize an image using osascript.

In addition to the osascript interface, Mac OS X includes the sips command, which provides a direct shell interface to some of the image processing features in Mac OS X.

The following snippet shows how to use sips to scale an image to a maximum of 250 pixels horizontally or vertically and convert the image to JPEG format.

sips -s format jpeg --resampleHeightWidthMax 250 myphoto.tif --out mythumb.jpg

You can also combine sips with exiftool (available from http://www.sno.phy.queensu.ca/~phil/exiftool/) for even greater power and control. The following script uses sips and exiftool to automatically rotate a photograph based on the encoded orientation information, and allows you to specify an offset (in 90 degree increments) to adjust the rotation further.

Listing C-6  Rotating an image using sips

#!/bin/sh
# Adjust paths as needed
EXIFTOOL=/usr/local/bin/exiftool
SIPS=/usr/bin/sips
INPUTFILE="$1"
OUTPUTFILE="$2"
OFFSET="$3"
# If the user doesn't specify an offset, assume zero.
if [ "$OFFSET" = "" ] ; then
OFFSET=0
fi
# Use exiftool to read the EXIF orientation tag as a raw numeric value.
ORIENTATION="$($EXIFTOOL -b -Orientation $INPUTFILE)"
# If no orientation tag is found, assume no rotation is needed.
if [ "$ORIENTATION" = "" ] ; then
ORIENTATION=1
fi
# This table determines the rotation (in 90 degree increments)
# based on the EXIF orientation tag and determines whether a
# coordinate transformation is needed.
case $ORIENTATION in
(1)    ROT=0; FLIP=0;; # No rotation or flip needed.
(2)    ROT=0; FLIP=1;; # Flip horizontal.
(3)    ROT=2; FLIP=0;; # Rotate 180, no flip.
(4)    ROT=2; FLIP=1;; # Rotate 180, flip.
(5)    ROT=3; FLIP=1;; # Rotate 270, flip.
(6)    ROT=1; FLIP=0;; # Rotate 90, no flip.
(7)    ROT=1; FLIP=1;; # Rotate 90, flip.
(8)    ROT=3; FLIP=0;; # Rotate 270, no flip.
(*)    echo "BAD ORIENTATION $ORIENTATION" ; exit -1;;
esac
# Calculate the number of degrees to rotate the image
# based on the above table and the user-entered adjustment.
DEGREES="$(expr 90 '*' '(' $OFFSET '+' $ROT ')')"
# Generate the additional flags for sips if flipping is required.
FLIPSTR=""
if [ $FLIP = 1 ] ; then
FLIPSTR="--flip horizontal"
else
FLIPSTR=""
fi
# Perform the transformation.
$SIPS $FLIPSTR --rotate $DEGREES $INPUTFILE --out $OUTPUTFILE
# Delete the orientation keys so that sips and other tools
# won't get confused when doing auto-rotation.
$EXIFTOOL -Orientation= $OUTPUTFILE

SIPS についての資料は少ない。
Apple 本家 Mac Dev Center の資料。
例題の Shell Script もわかりやすい。

Permalink | Leave a comment  »

January 24, 01:57 AM

http://wiki.dropbox.com/DropboxAddons/Dropbox%20Service

要:Mac OS X 10.6.x

【手順 1】

  • Move to Dropbox.workflow
  • Copy to Dropbox.workflow

の二つのファイルを

~/Library/services/

に入れる。

【手順 2】

Dropbox の Publicフォルダにある任意のファイルを右クリックして、

Dropbox > Copy Public Link

を選択。

コピーされた Public Link を、エディタなどにペーストして確認。

http://dl.dropbox.com/u/数字/ファイル名

の数字の部分が Dropbox-ID なので、これをコピー。

例)http://dl.dropbox.com/u/123456/hoge.zip

【手順 3】

Automator.app で、手順 1 の二つのファイルを開く。

それぞれの、[シェルスクリプトを実行]ステップにある

dropbox_id = '<DROPBOX-ID>'

の <DROPBOX-ID> の値を、手順 2 で調べた Dropbox ID と置き換えて(つまり、<DROPBOX-ID> を選択してペースト)、上書き保存。

例)dropbox_id = '123456'

※ [ファインダ項目のコピー]ステップで、同名のファイルを上書きするかどうかのチェックの初期値は、「上書きしない」になっているので、必要があれば変更する。

Permalink | Leave a comment  »

January 19, 03:29 AM

議事録などをまとめるのに利用できるサービス、TimeBridge

Evernote との連携よりむしろ、TimeBridge そのものの "シバリの強い単機能性" が使いやすそうだと感じる。やはり、API公開されていてマッシュアップできるようなサービスのみが生き残りそう。

Permalink | Leave a comment  »

January 19, 02:59 AM

concrete5 で製作したサイトを、iPhone対応にする Hack ちうか、機能拡張。http://bit.ly/7Jkv6J

Permalink | Leave a comment  »

January 19, 02:57 AM

先日、Gmail (Google Apps を含む) が Default で HTTPSになるというニュースがあったが、Gears
(オフライン機能) との間で問題発生。対策としてはこのあたりしかない。http://bit.ly/5lg732

Permalink | Leave a comment  »

January 19, 02:56 AM

Mac のiChatアカウントって、MobileMe アカウント以外だと、AIMが一番取得が簡単かと思っていたら、Gmail などの
Google アカウントや Google Apps アカウントでも、Google Talk アカウントとして使えるのでつね。知らなかった。

Permalink | Leave a comment  »

January 19, 02:52 AM

iPhone で音楽や動画再生でタイムラインのコントロールタブをドラッグして好きなところから再生する…という操作時、ドラッグしている指をそのまま上下に動かすと、頭出しの微調整が出来る!知らなかった。http://bit.ly/7GfNPP

Permalink | Leave a comment  »

abcdefghijklmnopqrstuvwxyz abcdefghijklmnopqrstuvwxyz