2010年12月4日土曜日

spotlightは検索条件が3つになるとバグる

前の投稿で書いたように,拡張子とクリエータでファイルを検索する必要がでてきたのでやってみた.

探したいのは,クリエータが「MMKE」でなく,拡張子が「.tex」である項目.
やりかたは以下の通り.

Finder 上でメニューから「ファイル」>「新規スマートフォルダ」とやって新しいウィンドウを開く.ついで,プラスボタンのクリックによって新しい検索条件の入力行を2行追加し,
RAWクエリーが「kMDItemFSCreatorCode!="MMKE"」
RAWクエリーが「kMDItemDisplayName=="*.tex"」
と入力する.

すると,ファイルが腐るほど引っかかるので,これは適わんということで,日付指定することにした.検索条件の入力行をもう一つ追加し,
RAWクエリーが「kMDItemFSCreationDate>$time.iso(2009-01-01)」
と入力する.これは作成日が2009年1月1日以降のファイルを探すということであるが,この条件を追加すると,ヒットするファイルが0になる.実際には該当ファイルがあるにもかかわらずだ.

これは一体どういう事なんだ??

3つの条件のうちいずれか1つを抜かして検索すればちゃんとファイルがリストアップされるから,検索条件に誤りがある訳ではない.よって,条件を3つ与えると機能しなくなると考えざるをえない.

一方,terminal で mdfind を使うと,ちゃんと検索できるようである.

$ mdfind 'kMDItemDisplayName=="*.tex" && kMDItemFSCreationDate>$time.iso(2009-10-01) && kMDItemFSCreatorCode!="MMKE"'

ただ,見つかるファイルの数がなんとなく少ないような気がするのだが、、、まあそれは検索条件の問題とは別の話なので,ここでは棚に上げておこう.

とりあえず,実験で得られた結論.

Spotlight検索は条件を3つ以上指定すると,誤動作する.信頼できない.
こういう場合は mdfind を使うべし.

なお,mdfind と Spotlight検索では日付指定する方法などについて文法が異なるので注意が必要.

mdfind における検索条件の文法は Apple のサイト 「Query Expression Syntax」にきちんとまとめてあるので,そちらを参照しましょう.
 

「スタンバイにしてても勝手に復帰してしまう」のを何とかする

DELLノートM4500をスタンバイにしても、数秒たったらすぐ復帰してしまう。「何じゃコリャ?」である。

LAN ケーブルを引っこ抜き、無線LANをオフにしても、駄目。これまで使っていたDELLノートM4300では起きなかった現象なので、まずは両者のハードウェア的な差異が原因ではないかと考える。M4500には、以前無かったBluetoothが入っているので、そいつを disable にしてからスタンバイを試してみた。

すると、スタンバイにして数秒後にはもう復帰するという現象は解消してくれた。
しかし、ノートを自宅でスタンバイにして職場に持って行くと、ディスプレイは閉じているのにいつの間にやら復帰している。

逆に、職場でスタンバイにして自宅に持ち帰った場合は、きちんとおとなしくスタンバイのままになっているから不思議だ。

何でかなぁと思いつつ検索しているとき「このデバイスで、コンピュータのスタンバイ状態を解除できるようにする」という文言が目に入る。

そうえいば、マウスとかキーボードとかLANとか、そういうデバイス毎にスタンバイ状態を解除できるかどうか設定するんだったなぁ。ネット経由でPCに信号送ってPC叩き起こすこともできるんだったなぁ。だけど、スタンバイするときに、LAN ケーブルは引っこ抜き、無線LANはオフにしてあるから関係ないよなぁ。
だけど、一応設定はやっとくか……

という訳で、有線LANと無線LANのカードの設定を一応いじっておくことにした。

有線LANの方:
Magic Packet を受信したときのみ、起動する設定。

無線LANの方:
こちらも同じく、Magic Packet を受信したときのみ、起動する設定。
「管理ステーションでのみ、コンピュータのスタンバイ状態を解除」というのが Magic Packet を受信したとき、という意味らしい。

ところが、驚いたことに、この設定を変更したら、スタンバイから勝手に復帰してしまう現象が起こらなくなった。Bluetooth が原因だとばかり思っていたのに、違ったんですな。

無線LANをオフにしておいたら、どんな信号が飛び交っていようが関係ないと思っていたのに。オフであろうが何であろうが、パケットが飛んできたらそれに反応して起きた、という事なんだろうか。不思議だ。

余談だが、携帯電話からPCを起動させる方法を詳しく説明したページがあったので、リンクしとく。いつかこういう事も試してみたいねぇ。面白そう。
■Wakeup On LANを使う
ただ、ターゲットになるPCとは別に、CGIスクリプトを稼動させておくためにサーバーが必要となるのがネック。
 

2010年12月2日木曜日

エクスプローラのフォントをMacのOsakaにしてしまう

高解像度のディスプレイだと、Windowsのシステムフォントが余りにも見にくいので、どうにかしようという話の続き。

Mac OS オンリーのユーザーだったら当たり前すぎて気づかない事だと思うけど、Mac の Osaka フォントというのは、Win の MSゴシックに比べると驚くほど見易い。

というか、MSゴシックが糞なんであって、画面上の見た目は MS-DOS 時代のビットマップフォントとなぁ~~んにも変わっちゃいない。いや、ヘタに字間を詰めるものだから、かえって悪い位だ。

僕はいつも不満をたらたら書き殴るだけだけど、この不満を解消すべく、Osaka を Windows に移植しようと頑張って下さった方達がいて、その成果は

WindowsでOsakaフォントを使おう!

にまとめられてる。世の中には自分の成果をフリーウェアとして惜しげもなく公開してくれる、太っ腹で素晴らしい方々が沢山いて、本当に有難い。

上のサイトには Osakaフォントが幾つも置いてあるが、それはフォントの移植が試行錯誤を重ねながら進んでゆく様を表した、歴史の痕跡だと言えますな。僕はここから 864TTC3a.cab を拝借して使用することにした。一通り試した結果、これが一番良さそうだと判断したから。

ダウンロードしたファイルを解凍し、フォントフォルダにコピーするだけで(やり方が分からない人はココ参照)、もう Windows でも Osaka フォントが使えるようになる。Welcome to Osaka, Mr. Gates!! って感じですか。いやぁ目出度い。

では、エクスプローラーのフォントを Osaka に変更してゆこう。

「コントロールパネル」の「画面」を起動して「画面のプロパティ」ウィンドウを開き、画面右下にある「詳細設定」をクリック。すると下図のような「デザインの詳細」ウィンドウが開く。


僕の場合は、ここで以下のように設定してみた。なお、画面の解像度を1280×720に変更した上での変更。理由は後述。

「デザインの詳細」の設定例
指定する部分  サイズ   フォント   サイズ   備考 
 アイコン 36  Osaka 10 
 アイコン間隔(横) 62  Osaka
 アイコン間隔(縦) 46  Osaka
 アクティブタイトルバー 23  Osaka 12  注1
 パレットタイトル 22  Osaka 10 
 ヒント Osaka 10 
 メッセージボックス Osaka-UI 10 
 メニュー 26  Osaka 10  注2
 選択項目 30  Osaka 10 
 非アクティブタイトルバー  23  Osaka 12  注1
 注1:この2項目は連動している。個別設定は不可。
 注2:ここでの設定は、他のアプリのメニューにも反映される。ただし、この設定を使わないアプリもあるので注意。

さてさて、この結果、画面はどんな感じになっただろうか。

これは、設定前のエクスプローラーの画面。


こちらが、Osaka を使って設定しなおした画面。


どちらが視認性に長けているか、言わずもがなですよね。数字の見てくれが本物の Osaka といささか雰囲気が違ってるところが若干気になるけれど、全体としては非常にいい感じ。

この設定で、メニューのフォントもちゃんと変更される。これ↓は、設定前。


これ↑が、こう↓なる。


いやぁ!見違えるほど見やすくなったぞ!!

ちなみに、僕の中で使用頻度が高い Microsoft Office, Open Office, FireFox, Google Chrome, Crimson Editor など主要アプリケーションのメニューは、上記「デザインの詳細」ウィンドウで「メニュー」に設定した内容が反映されフォントが Osaka に変わった(これを「対応アプリ」と呼ぶことにする)。これは大変有難い。

しかし、アプリケーションの中には、上記の設定が反映されないものもある(これを「非対応アプリ」と呼ぶことにする)。

このように対応、非対応のアプリが混在すると、解像度を1600×900の状態では対応アプリのメニューは文字が大きいけれど、非対応アプリの方は文字が小さいという不都合が生じてしまう。そこで、解像度を1600×900からアスペクト比が同じ1280×720に変更し、対応アプリと非対応アプリの間でフォントサイズに大きな差が出ないようにして、その場を凌ぐ事にした、という訳。

おしまい。

関連サイト:
Osaka ミラー
Osakaフォント for Windows Part 4
 

「高解像度のディスプレイだと文字が読みにくい」のを何とかする

DELLノートM4300がぶっ壊れたので、新たにM4500を購入!!

ところが、こいつの液晶画面が横長で、解像度が1600×900ピクセルときた。

こんな高い解像度じゃぁエクスプローラーやアプリケーションで表示される文字が小さすぎて、ムチャクチャ見にくいではないか。

もともと視認性の悪いシステムフォントをこのサイズで見ろなんて、無茶苦茶だ。
そろそろ老眼が始まってしまった僕には苦痛以外の何者でもない。

Windows がユーザーアンフレンドリーなOSだという文句はさんざあちこちに書き散らかしてきたけれど、このシステムフォントの線が細くて見にくいというのも、全くもって不親切。

特に半角英字のピリオドとカンマは最悪。文字間隔が狭いものだから、メアドのピリオドを打ち間違えてカンマにしていたとしても、まず区別できない。

こういう糞フォントが、目の悪い老年はコンピュータを使う資格無し、と言わんばかりにまかり通っていることにはほとほと呆れかえる。

Microsoft の OS開発者達はこの糞見にくいフォントに何も不足を感じていないのだろうか。

だとしたら何と彼らの鈍感なことか。そういう、人間工学的センスの欠如した輩の集団が作ったOSだからクリエーターやアーティストから「肌に合わない」と敬遠されるのだ。

いかんいかん、つい熱くなってしまった。話を本筋に戻そう。


フォントが小さくて見にくいなら、大きくしてみよう。これが第一の対策。

エクスプローラーのフォント設定は「コントロールパネル」の「画面」でカスタマイズできるのでやってみた。

「コントロールパネル」の「画面」を起動して「画面のプロパティ」ウィンドウを開く。


開いた画面の「デザイン」タブを選択し、一番下の「フォントサイズ」を“大”とか“特大”にしてみた。

これで、まあ少しはマシになったけれども、なんか納得いかない。というか、MSゴシックはやっぱり気にくわない。そこでフォントを変更することにした。

フォントを変更するには、さっきの「画面のプロパティ」ウィンドウの右下にある「詳細設定」を使う。このボタンをクリックすると「デザインの詳細」ウィンドウが開く。

「指定する部分」をプルダウンすると色々な項目が出てくるが、「アイコン」とか「パレット タイトル」とかを選択すると、「フォント」メニューがアクティブになるので、好きなフォントを選べば良い。

HG の“ゴシックE”や“角ゴシックUB”など中々良い。“角ポップ体”はすぐ飽きるからよそう(笑)。

まぁこの辺りで妥協してしまうのも手だが、せっかくだからもう少し拘ってみる。

どう拘るかというと、視認性が極めて高い Macの OSAKA フォントを Windows に持ってきて、エクスプローラーの文字を全部 OSAKA にしてやろう、という訳だ。

この続きは別記事で。