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 にしてやろう、という訳だ。

この続きは別記事で。
 

2010年11月5日金曜日

AVGに「破損したデジタル署名です」と言われる

2週間ほど前から、AVG Free 9.0 でドライブをスキャンしたとき
"C:\System Volume Information\_restore{略}\RP32\A0006125.exe";
"ファイルの署名は破損したデジタル署名です。発行者: Microsoft Corporation。";
というメッセージが表示されるようになった。

気にはなるものの時間がなくて放置してたけど、毎日スキャンするたびに言われるのもアレなので、今日ちょっと調べてみた。

A0006125.exeをググッたら、Online Armorというサイトに行き当たった。ここの情報によると、どうやら A0006125.exe というのは gdsmux.exe の別名らしい。

で今度は、gdsmux.exe を日本語に限定してググッてみた。ほんの数件しか出てこなかったが、2chのマトロスカに関する板で、このファイルを入れたら良いという話題が出ていた。マトロスカをインストールしたとき生成するファイルということなのだろう。

これには思い当たる節がある。確か2週間程前といえば、mkvが再生できるようにしようと、一度 Combined Community Codec Pack (CCCP) をインストールし、そのあと思い直して削除し、新しいバージョンのffdshowとHalli を拾ってきてインストールする、といった試行錯誤をしてた時だった。

'System Volume Infomation' フォルダに入ってるってことは(システム復元用のバックアップってことだから)、CCCP あたりをアンインストールした時にできたファイルだという事か。

CCCP に関して言えば、こいつはかなり怪しくて、昔別のノートPCでウイルス対策ソフトに引っかかったことがあった。そういうイワク付きの代物だから、ま、今回の症状の元凶がこいつだったというのは「さもありなん」的な事で、妙に納得してしまった。

さて、肝心なのは、このファイルをどうするかだけど、OS付属のツール「システムの復元」を使って CCCP をインストールした近辺の復元ポイントを消してしまえば 'System Volume Infomation' から問題のファイルも消えてくれるんじゃないかと推測される。だけど面倒で時間のかかる作業になりそうだし、一応原因もわかってることだから、やっぱりこのまま放置しておくことにするかな。

タイトルを見て期待した人には中途半端で申し訳ないことだけど。
 

2010年10月22日金曜日

Macのエディタ(フリーウェア)

Mac 用のエディタを整理したページを見つけたので、リンクしとく。

MacFan Net > テキスト/文書作成
http://macfannet.mycom.co.jp/download/text.html
 

Wink - PC画面上の操作を録画して Flash を作成

http://www.debugmode.com/
これって凄く使えそうじゃないかい? 今度是非とも試してみよう!!

ちなみにこのアプリは
http://home.hccnet.nl/s.j.francke/software/software.htm
で紹介されていた。他にも使えるアプリがありそう。要チェックかな。
 

2010年10月20日水曜日

Unicodeに対応したCSVファイルの編集

iPhoneアプリの中には、アプリ内に蓄積したデータのバックアップを CSV形式で外部にエクスポートできるものが多い。たとえば、
  HayaMemo(メモ帳)、
  Jenco(家計簿)、
  BizCards(名詞管理)
など、僕が重宝しているアプリは大抵そうだ。

そうなると、CSV形式のパックアップファイルをPCで閲覧したり、編集して iPhone に戻したりしたくなるのは当然のこと。ところが、さすがインターナショナルな iPhone は知っての通り Unicode を採用しているんだけど、こいつが由緒正しき Excel では扱えないと来ている(Office2003の話;最近のはどうなってる?)。

という訳で、Unicode を使った CSV 形式のファイルを表計算ソフトのような方法で編集できるフリーウェアが欲しくなってきた。でもって検索。

■ CS Editor 3 Go 
 CSVデータ専用の編集ソフト。編集、検索、置換などの機能が豊富。謳い文句は「迅速、確実、直感的に目的のデータを作成することができます」

■ Kuto Csv Editor Go
 CSVファイルの編集ソフト。タブで複数のCSVファイルを管理できる。CSVの行・列のサイズを保存し、次回実行時に復元できる。

■ Cassava Editor Go 
 CSVファイルの編集ソフト。マクロ機能や簡易表計算機能がある。

■ MZ Sheet 1.3.1 Go 
 CSV/TSVファイルの編集ソフト。65536行×1024列まで編集できる。

■ uniCSVed 1.1 Go  日本語を含む CSV が読み込めなかった
 CSVファイルの編集ソフト。unicode対応版。ただし、unicode非対応版が本流で、そっちの方は多機能。


【メモ】改行コードは0D0A、OAはただのラインフィード、という扱いができるアプリでないといけない。

ここに挙げたソフトはみんな、レコード内に0A(LF)コードで改行されたものがあると、そこでレコードが終了したものとみなされてしまう。よって、ここに掲げた目的には使用できない。う~む。

そこでさらに探してみたところ、
CSV Editor for Excelなるフリーウェアを発見。これは Excel のマクロ+ワークシートになっていて、Excel で UTF-8 のCVSファイルが読み書きできるようになる。

これを使ってみたら、レコード内に0A(LF)で改行されたデータがある場合は、ちゃんとセル内での改行として認識くれる。これならまともに動く。ということでこれ採用。


 

  

2010年6月15日火曜日

久々にMS-DOSのバッチファイル

久々に MS-DOS でバッチファイルを作ろうと思い立ったのだけど,いざ書こうとすると,コマンドも文法も何もかもさっぱり忘れ去っていて,一向に思い出せない.

そこで検索してみたのだけれど,MS-DOS のコマンドなんかを包括的にきちんと整理したページというのは意外と無いもんだね.

そんな中,素晴らしいページを発見!
 --→「ひしだまのコンピューター関連技術メモ」

大変役に立ちました.

あとは,次の2つくらいかなん.

コマンドプロンプトを使ってみよう!

MS-DOSとバッチファイル
(ググったら見つかった.だけどアクセスすると,htmlファイルのダウンロードが始まってしまう.ヘン)
「MS-DOSとバッチファイル」でググって,キャッシュを見る方が早い.
  

2010年6月11日金曜日

続・気になるアプリ

またまた気になるフリーウェアがちらほら出現.ちょこちょことメモ.

http://search.macupdate.com/

■ TexFinderX Go 日本語未対応だった.残念.
 指定フォルダ内のテキストを対象に検索、文字列置換

■ SpotInside Go
 ファイルの中身を検索してプレビューできるアプリケーション。ヒットした語句をハイライトしれくれる。

■ 検索置換ラクダX Go 置換されなくても日付が変わる.困る.
 複数ファイルを対象とした一括文字列検索置換.Perlで書かれている.

■ DupScan Go
 ファイル名や内容など指定した条件で重複ファイルを検索

■ Search&Replace Go
 複数のテキストファイルに対して,指定文字列の検索と置換を行う.ファイルの検索とリネームもできる.

■ Super Flexible File Synchronizer 4.95 Go
 Back up and synchronize Macs, servers, notebooks, online storage.

■ Tidy Up! 2.2.3 Go
 Find all of the duplicate files on your hard drive.

■ EasyReplace 1.0 Go
 Replace multiple lines of text in multiple files.

■ ScriptExcel 1.0 Go
 フォルダ,ファイル内容をExcelにリスト化

■ Excellister 1.2 Go
 Microsoft Excelでファイルリストを自動作成
 
 

2010年5月18日火曜日

気になるアプリ〔暫定メモ〕

ちょこちょこと気になったフリーウェアのメモ.使うかどうか現在不明.使い込むようであれば,後日アプリごとにエントリを作るかも.ここではとりあえず,暫定的にリストアップ.

■ subcommander Go
 ファイルの diff と merge ができる.マルチプラットフォームに対応

■ Find Any File Go
 ファイルの検索

■ IconDroplet 1.5 Go
 icns ファイルをこのアプリにドロップすると,そのデータを反映させたアイコンを持つフォルダができる.
  しかし,動かない.どういうこと?

■ LiteIcon Go
 システム指定のアイコンを一括で変更.楽ぅ〜〜
  ライムなブログにいくと,使い方が画像入りで詳しく説明されてる.
  

2010年5月8日土曜日

ファイルタイプとクリエータをまとめて変更

先のエントリ「プレビューが表示出来ないテキストファイル」で書いたように,拡張子 .tex のファイルのクリエータを MMKE,ファイルタイプを TEXT に変更する必要が生じたので,その方法について整理.

1.terminal でコマンド SetFile を使う

$ SetFile -c MMKE -t TEXT foo.tex

2.そういうユーティリティーを使う
ファイルタイプとクリエータが変更できるようなユーティリティーを貰ってきて使う.
例えば,QuickFileType.OS 10.5 に対応している.
この人は TeX Tools for mi の作者でもあったのだ.色々お世話になってます.ありがたやありがたや.
その他にも,以下の【参考】に挙げたアプリがあるらしいが,Leopard に対応しているかどうかは検証していないので不明.

3.コンテキストメニューのプラグインを使う オススメ
神子沢明氏が作った,コンテキストメニューからファイルタイプやクリエータの変更ができるプラグインがイチオシ.
変更のパターンを色々と登録できるのが良い.コンテキストメニューになっているのも使い勝手を大いに高めている.
AmSetFileTypeCMX ファイルタイプ・クリエータ・拡張子を変更
AmFileTypeCMX ファイルタイプ・クリエータ・拡張子を参照・コピー


さて,神子沢氏のプラグインはスマートフォルダにおいても使えるから,スマートフォルダで検索をかけて必要なファイルをリストアップしてやれば,一気にファイルタイプやクリエータが変更できると目論んだのだが,ここで思わぬ落とし穴にはまった.

拡張子 'tex',クリエータ 'MMKE' 以外,作成日2008年以降,という条件でファイルをSpotlight検索したら,ファイルが一つも出てこないのだ.実際には当該ファイルがちゃんと存在しているにもかかわらず.

という訳で,ここでまた本来の目的から逸脱し,話の内容も発散してしまう.ということで,続きは別エントリ「spotlightは検索条件が3つになるとバグる」にて.
 
 
【参考】OSX Freewaresというページの 「ファイル」>「属性」の箇所に,ファイルタイプやクリエータを変更するソフトがたくさん整理されていた.そこからめぼしいモノをピックアップして並べておく.

FileInfo(タイプ/クリエータ/ロック/可視属性/拡張子を隠す設定等を一括変更)
FileUtilsCM(Finder 情報更新/パスコピー/ファイル属性変更等のCMM;Universal
File Wrench(ファイルの詳細情報表示/編集リスト型ツール;タイプ/アクセス権/フラグ/コメント等々)
FileBrowser(タイプ/クリエータ/可視属性等も変更できる簡易ファイルブラウザ)
FileShaper(ファイル名/タイプ/ロック/所有者/グループ/アクセス権/作成,修正日を表示/変更;一括処理も可)
Modifier Lite(ファイルのアクセス権/タイプ/作成,修正日等を変更)
MuchoFileInfo(タイプ/クリエータ変更;ファイルのフラグ(可視属性など)も変更可)
Spoook(タイプ/クリエータ/可視属性変更)
basicProperties(ファイルタイプ/可視属性を変更;フォルダをドロップすると内部の全ファイルを表示)
Drop CreatorType(タイプ/クリエータを一括変更)
Type Changer(タイプ/クリエータを一括変更)
CreCon(タイプ/クリエータを一括変更)
TypeChanger_X(フォルダ内のファイルのタイプ/クリエータを一括変更するAppleScript)
Typeator(タイプ/クリエータ変更するAppleScript)
QuickFileType(タイプ/クリエータを編集;Universal
DropCT(タイプ/クリエータ変更;要Apple Developer Tools)
iLikeYouMore(タイプ/クリエータ変更;Universal
FileType(タイプ/クリエータ変更;複数ファイル一括変更はできない)
FileWIZ(タイプ/クリエータ変更;2ファイルを比較して変更できる;複数ファイル一括変更はできない)
Quick Change(タイプ/クリエータ/拡張子変更;Universal
MacCT(タイプ/クリエータ変更;バンドルタイプのアイテムも変更可能)
TextCreator2(タイプ/クリエータ確認/変更)
SE-FileCreator(タイプ/クリエータ変更;主に画像やテキストファイル用のいくつかのプリセットあり)
ChangeInfo(タイプ/クリエータ変更)
tcset(タイプ/クリエータ変更)
TypeSetter(タイプ/クリエータ変更)
FileMatch(タイプ/クリエータ一括変更)
AmFileTypeCMX(タイプ/クリエータ/拡張子を表示/コピーするCMM;Universal
AmSetFileTypeCMX(タイプ/クリエータを変更するCMM;Universal
File Adopter(タイプ/クリエータをInternet Config初期設定に従い変更;タイプ/クリエータの消去も可)

2010年5月6日木曜日

テキストファイルのプレビューが表示されない

今更言うまでもないが,カバーフローとクイックルックのアイディアは秀逸だ.フォルダ内のファイルをサクサクとブラウズできるから,ファイルの整理や探索にとっても便利だ.

ところが,この仕組みがうまく機能しないケースも幾つかあって,便利さがすっかり体に馴染んでしまうと,こういう不都合に出くわしたときに受けるストレスはかえって大きくなってしまう.

「慣れ」というのは困ったものだ.この能力が無かったら人間の脳や感覚や感情は絶えずストレスに晒されてとてもじゃないが生きていけないのだけど,こういう時は「慣れ」が逆にストレスを生んでしまう.

ちと横道に逸れてしまった.
カバーフローとクイックルックがうまく機能しないケースの話だった.

うまく機能しないのは TeX のソースファイル(拡張子 'tex').この中に「プレビューが表示されるもの」と「されないもの」があることに気づいたという訳.

僕は拡張子 'tex' に mi(ミミカキエディット)を割り当てている.だから拡張子が 'tex' のファイルを Finder は「mi テキスト書類」だとちゃんと認識しているのだが,それにもかかわらずプレビューが表示されないファイルがかなりあるのだ.

で,調べてみたところ,ファイルタイプとクリエータが指定されていないものはプレビューが表示されないことが判明.こういったファイルは
ファイルタイプ:TEXT
クリエータ:MMKE
と変更することにより,プレビューが表示できるようになった.

→変更方法については別エントリ「ファイルタイプとクリエータの一括変更」参照

これで一応問題は解決したが,しかしすっきりしない点がある.それは,TeX のソースファイルをコンパイルした際に生成される foo.aux と foo.log については,ファイルタイプとクリエータがセットされていないにもかかわらず,ファイルの種類がそれぞれ「Unix実行ファイル」,「Log File」と認識され,プレビューもちゃんと表示されるという現象.

これは拡張子 aux と log があらかじめ OS X のシステムに認知されていて,かつその中身がテキストファイルであることも了解済み,ということを意味しているのだろう.

ならば foo.tex の場合だって,個々のファイルのタイプとクリエータをいちいち設定しなくても,どこかの plist に「拡張子 tex はテキストファイルだよ」という情報を追記すれば一発で全ての foo.tex がプレビューできるようになるはずだ.

はてさて,どうすれば良いものやら.
取り敢えず,解決方法を考えようと QuickLook についてネット上であれこれ集めた情報をつらつらと書き留めておこう.

ファイルのプレビューは QuickLook のプラグイン(拡張子は '.qlgenerator')が作成する.規定の置き場所は
1. /System/Library/QuickLook
2. /Library/QuickLook
3. /System/Library/Frameworks/QuickLook.framework/Resources/Generators
4. $HOME/Library/QuickLook

システム標準のプラグインは上記の3番に置かれている.

OS X はファイルの種類を判別するために UTI (Uniform Type Identifier) と呼ばれる識別子を使用する.UTI は文字列で,ドットによって階層を連接する記法が用いられる.たとえばJavaのソースは「com.sun.java-source」
ファイルに対してQuick Lookを実行するアクションが指示されると,ファイルのメタデータにあるUTIが参照され,それに対応したQuick Lookプラグインが実行される,という.

【宿題】現時点では,ファイルのメタデータがどこにあるのか僕には分かっていない.terminal で GetFileInfo,mdls のいずれのコマンドを実行しても,その出力にそれらしいものはない.一体,どこにあるのだろう?

調べてみてわかったのは,Apple が OS 9 以前の偉大なる発明である「ファイルタイプとクリエータでファイルの種類を判別する方法」つまり「リソースフォーク」を捨て,拡張子でファイル種別を判別する方法の側へと大きくシフトせざるを得なくなった結果,UTI が生まれたという経緯.そして「ファイルタイプ」と「クリエータ」が時代の遺物となり,新参者のMacユーザーから厄介者扱いされているということ.

しかし,いまだに一つのマシンに Leopard,Tiger,OS 9 と3つの OS を載せ,必要に応じて使い分けている僕の立場からすれば,過去の話でもなんでもない.OS 9 でもダブルクリックで開ける状態になっていなければ困るのだ.噂では,Snow Leopard がファイルタイプとクリエータを完全に捨てたというから,こういう使い方をしている限り,Snow Leopard には移行できないのかもしれない.う〜〜む.

「qlmanage」
QuickLook の管理用コマンド.terminal で実行してプレビューやサムネイルを表示させることができる.

qlmanage -p -c <uti> -g <試したいジェネレータ> <プレビューを表示するファイル>

表: qlmanageコマンドの主要なオプション
オプション 説明
-c UTIを指定する
-f プレビューの表示倍率を指定する
-g 使用するプラグインを指定する
-m UTIと関連するQuick Lookのプラグインを表示する
-p ファイルをプレビューする
-r プラグインのデータを再読み込みする
-s プレビューエリアの幅をピクセル数で指定する
-t サムネイルを描画する

【参考】
Leopard解体新書(7) 〜Quick Lookをクイックハック〜@OS X ハッキング!〔マイコミジャーナル〕
QuickLook@開店休業中
Uniform Type Identifierの概念
 

2010年5月3日月曜日

OS X でファイル同士を比較する

OS 9 には『DODO DIFF』という優れたテキストファイルの比較ユーティリティーがあった.
Tiger の時は Classic 環境でこのアプリを使っていたんだけども,Leopard に移行したら Classic 環境が使えなくなってしまったので,DODO DIFF に変わるアプリを探してこなくちゃいかん、、、

と思って調べてみたら,『Developer Tools』の中に『File Merge』というユーティリティーがちゃんと準備されていることが判明.

結論からいうと,比較結果が色を使って分かりやすく表示される他,相違箇所への移動もスムースなので,『DODO DIFF』に優るとも劣らぬ使い勝手の良さ.なかなかいいんでないの.

ただ,日本語への対応が十分でないので,そこをいじってやる必要があるとのこと.
【参考】FileMerge.app でテキストエンコーディング自動判別@ヘチマ_BLOG
   OSXでdiff16bps
   FileMergeで日本語を@Side-B
   OSXでテキストの差分表示アプリケーション@MJ::Blog

やるのは,日本語の文字コードを変換するUNIXコマンド「nkf」のインストールと,『File Merge』の環境設定で読み込んだファイルを nkf で変換するようフィルタを設定すること.
なお,『File Merge』のフィルタ設定はファイルの拡張子ごとに行うことになっているため,『File Merge』で扱いたいファイル種別ごとにフィルタを設定してやらなきゃいけない.これがちょっとばかり面倒かな.

以下,具体的な作業手順.

■ nkf のインストール

nkf Network Kanji Filter をインストール.
今回利用したのはnkf-2.1.0.tar.gz

〈インストール手順〉
$HOME にnkf-2.1.0.tar.gzを置き,$HOME の下にディレクトリ src があるものとして.

→ nkf-2.1.0.tar.gzを作業用ディレクトリ $HOME/src に展開
↓  $ cd
↓  $ tar zxvf nkf-2.1.0.tar.gz -C ./src
→ $HOME/src/nkf-2.1.0 でコンパイル
↓  $ cd ./src/nkf-2.1.0
↓  $ make
→ 生成バイナリのコピー(/usr/binに置く場合)
↓  $ sudo cp nkf /usr/bin/.

■ FileMerge のフィルタ設定



Extension の列に新しい拡張子を登録し,Filter の列に/usr/bin/nkf -sLu $(FILE) と入力.Display の列は Filtered,Apply は yes.
 

2010年4月13日火曜日

Mxdvi を Leopard で動かす

*** いまさらながら Leopard (OS X 10.5) の話.
*** ひとり時代に取り残されているもので、、、
*** 日付が間違えている訳には非ず.悪しからず.

OS X 用の dvi 閲覧ソフト,"Mxdvi"(内山氏)を Leopard で動かそうと思ったらクラッシュして動かない.で,さっそく解決策を求めてググってみたが,なかなかヒットしない.

そもそも,内山氏のページが既に消失している.このこと自体は,この前 Leopard に TeX をインストールした時に,内山氏のページを参考にしようと尋ねていったらアクセスできなかったので知っていた.その時は「慶応からよその大学に移ったのだろう」位に軽く考えていたのだけれど,今回どれだけ探しても移転先は見つからずじまい."Mxdvi" の配布に関する話題はもとより,内山氏のページに書かれていた文書の痕跡すら残っていない.これには驚いた.

どこかに移転したのかしないのか,"Mxdvi" の配布はやめたのかどうなのか.

やめたとしたら何故?
いつやめた? Leopard が出た時? それとも Snow Leopard が出たとき?
あるいは OS のバージョンアップとは無関係に配布をやめたのか?

さっぱり分からない.

以前から愚痴ってるように,ネット上の情報ってフラグメントで時系列が無茶苦茶だから,一つの「事象」を追いかけようとすると,

るのにはまだまだ使えない.Google でさえ時系列は追いかけられない.

Leopard に TeX をインストールする時,参考にしようと内山氏のページを見に行ったらアクセスできなかった.


で,色々デマを掴まされつつ,ようやく辿り着いた情報がこれ.



あのページには色々と有用な


http://d.hatena.ne.jp/aoshimak/20060428



<?xml version="1.0" encoding="UTF-8"?>

< !DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd" >

< plist version="1.0" >
< dict >
        < key >TEXMFCNF< /key >

        < string >/usr/local/teTeX/share/texmf/web2c< /string >
        < key >TEXMFMAIN< /key >
        < string >/usr/local/teTeX/share/texmf< /string >
        < key >PATH< /key >
        < string >/usr/local/teTeX/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin< /string >
< /dict >
< /plist >









http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/41745.html
開発よりの内容で,直接の質問は2段落目の最初の文です.

TeX LiveのCD-ROMでは,texmf.cnfで.
$SELFAUTOPARENTを使って,
TEXMFMAIN =$SELFAUTOPARENT/texmf
のように記述されているそうです.
$SELFAUTOPARENTなどは,kpse_set_program_name()を呼ぶと環境変数が
設定されて,意味のある値が入るようになります.
kpse_set_program_name()は,多くの場合.
kpse_set_program_name(argv[0], "dvips")
のように使います.これで,環境変数PATHに設定されているパスから,
dvipsの場所を探して,それから$SELFAUTO...の環境変数を設定します.
dvipsコマンドのように,TDSの所定のバイナリのディレクトリにファイルがあるものは
よいのですが,Mxdvi (Mac OS X用のプレビュア)のようにユーザが好きなところに置いて
かまわないプログラムでは,"Mxdvi"を引数にして,kpse_set_program_name()を呼び出して,
SELFAUTO...の環境変数を設定することができません.

国外で使用されているものも含めて,latexコマンドはまず存在していると仮定してかまわないでしょうか.
kpse_set_program_name("latex", "latex");
のように呼び出して,TDSのトップのディレクトリを,SELFAUTO... の環境変数に設定しようと考えています.

2010年1月27日水曜日

shellスクリプトでファイル名の一括変換

他の調べ物をしているとき,たまたま見つけたのだけど,放って置くと忘れてしまうのでメモ.

alifedesign氏のブログに,macで複数ファイル名の一括変換をするという記事があった.

 meeting20080601.pdf
 meeting20080608.pdf
 meeting20080608-2.pdf
 meeting20080615.pdf
    :
    :

のような名前のファイルの「2008」を「2009」に一括変換するには次のような shellスクリプトを実行すると良いらしい.

 for F in meeting*.pdf; do mv $F ${F/2008/2009}; done

何shellなのか分からないけど,今度試してみよう.
 

2010年1月6日水曜日

Windows-ノートPCのスタンバイがヘン【未解決】(承前)

以前,「Windows-ノートPCのスタンバイがヘン【未解決】」というタイトルで書いた話だけれど,ふと気づけば,最近おとなしくスリープしてくれているようなご様子.

自然治癒したんだろうか.それとも最近やたらと寒いから,そのせいで放熱が十分できているだけの事なのだろうか.

このまま今しばらく経過を見ておくことにしよう.
 

HandBrake ー DVD video の吸い出し

これまで DVD-video のバックアップを取る際は,OS X なら MacTheRipper,XP なら DVDfab を使ってきたが,コピーガードにも対応できる DVDfab の試用期限が切れてしまった.そんな訳で,そろそろ OS X にもコピーガードが外せるソフトが出ているんじゃなかろうかと期待しつつググってみたら,ヒットしてそうなブツを発見.

Handbrake というのがそれ.Ken氏の動画狂コーナーに,「HandBrakeの使用方法と映像比較」というそれらしい記事があった.

ぱっと見ただけなので,DVD→DVD が可能なのかどうかはわからない.詳細の確認とテストは宿題ということで.