2009/09/29
起動時に任意のコマンドを実行する
Mac OS X 10.5 以降で起動時に任意のコマンドを自動で実行したい場合、
本来であれば launchd (8) を使用した制御が必要なので
/System/Library/LanchDaemons/ 以下に
plist ファイルを準備する必要がある。
しかし、/Library/StartupItems に
コマンド起動用のスクリプトファイルを設置する事により
任意のコマンドを起動できるので、
unix 系のシェルスクリプトに慣れている場合は
こちらの方が使いやすい場合もある。
- /Library/StartupItems に任意の名称 (ここではサービス名とする)でディレクトリを作成する。
-
作成したディレクトリに任意の名称で起動スクリプトを作成する
スクリプトファイルは サービス名 と同じ名称にする。 -
作成したスクリプトに実行権限を付与する
- 作成したディレクトリに StartupParameters.plist という名称でサービスの説明を記述したファイルを作成する。
-
ファイルの所有権限を root に設定する。
セキュリティ上の理由から、 ファイルの所有者が root 以外の場合は自動実行されない様だ。
# mkdir /Library/StartupItems/サービス名
# cat << EOF > /Library/StartupItems/サービス名/スクリプト名 > #!/bin/sh > > . /etc/rc.common > > StartService () > { > # サービスを開始するためのコマンドを記述 > } > > StopService () > { > # サービスを終了するためのコマンドを記述 > } > > RestartService () { StartService; } > > RunService "$1" > EOF
# chod 755 /Library/StartupItems/サービス名/スクリプト名
# cat << EOF > /Library/StartupItems/サービス名/StartupParameters.plist > { > Description = "/<u/>サービスの説明/</u/>"; > Provides = ("/<u/>提供するサービスの内容/</u/>"); > } >EOF
# chown -R root:wheel /Library/StartupItems/サービス名</i>
再起動するとサービスが自動で実行される。
2009/09/25
iLeopard alpha 3
Snow Leopard にしてから利用できなかった iLeopard の Snow Leopard 対応 alpha 版が リリースされている。
iLeopard は元々 Leopard が持っているシンプルで綺麗な見た目を
ほんの少しだけ(でも実際は結構色々な箇所を)変更して
より一層落ち着いた雰囲気にしてくれるテーマで、
Leopard の頃から愛用していた。
Snow Leopard に対応していないのが残念だったのだが、
ついに Snow Leopard 対応の iLeopard が (alpha 版とはいえ) リリースされた。
早速インストールすると Leopard 版とほとんど変わらない見た目で、
何故システム標準のテーマにならないのか不思議な程完成されたテーマである。
iTunes など一部のアプリケイションは独自のリソースを保持しているので 現在の alpha 3 では対応していない様だが、 正式版のリリース時には iTunes なども含まれているのだろうか。
2009/09/23
2009/09/22
2009/09/15
おめでとうございます
9年連続200本安打おめでとうございます。
108年間もの長い間破られる事のなかったメジャーリーグの記録が、
日本人によって更新されるこの瞬間を共有できた事が嬉しい。
イチローについては既に語り尽くされ過ぎているので、
ここでとやかく言わなくても良いだろう。
ただただ「おめでとう!」と祝福したい。
しかし、そうは思わない連中もいるらしい。
ある意味、最もイチローらしいとも言える内野安打で
200本安打を達成した映像を見て、
「......セコイよ。ちゃんと打たなきゃ」などとメディア上でぬかしたクソ野郎がいるらしい。
確かにどんな感想を抱こうと個人の自由ではあるが、 偉大な実績を成し遂げた相手に対して尊敬の念を持てないのか…
元々このクソ野郎は嫌いだったのだが、 今回の一件で存在そのものが道ばたで干からびている犬の糞以下だと 認識を新たにした次第である。
こんなクソ野郎と同じ空気を呼吸いしてると考えただけでおぞましい。
早くその薄汚い存在を消し去ってくれ。
2009/09/13
2009/09/12
ATOK 定額制サービス
ATOK 2007 では Snow Leopard 上で動作する 64bit アプリケイションへの日本語入力に不具合があるので、 先日から開始された ATOK 定額制サービスを利用してみた。
Snow Leopard に正式対応しているだけあり、
64bit アプリケイションへの日本語入力は全く問題ない事は確認できた。
MS-DOS 時代の一太郎 4.3 + ATOK7 の時代から ATOK ユーザなのだが、
ATOK の新しい機能をほとんど利用していない事に気づく。
変換効率は相当向上していたりするのだろうが、
遥か昔からの癖で殆んど単語毎に変換しているので、
最近の便利機能の恩恵を殆んど受けていない。
正直な所、機能としては ATOK 7 相当であまり問題ない気がする。
2009/09/11
2009/09/10
2009/09/09
2009/09/03
MacVim-Kaoriya
今まで香り屋さんが配布している
Vim 6.2 を利用していたが、
Snow Leopard の導入をきっかけとして
GoogleCode から取得可能な
「香り屋さんのパッチ適用済み MacVim」に変更してみた。
vi としての使い勝手は基本的に従来通りなのだが、
特に嬉しい機能が外部エディタをコールする bundle が付属する事。
この bundle は MacVim の「環境設定」の「連携」から
「インストール」ボタンをクリックするとインストールされる。
この bundle をインストールすると、
例えば Mail.app の返信画面の「編集」メニューに
「Edit in MacVim...」という項目が追加されるので、
コマンド+A で全選択したのち
シフト+コントロール+コマンド+Eを押せば
MacVimでメールを編集できる。
これは 肘から先が vi のキーバインドと一体化している人にとっては
非常に嬉しい機能だ。
ちなみにショートカットキーは「システム環境設定」の
「キーボード」パネルの「キーボードショートカット」から
任意の組み合わせに変更可能である。
欲を言えば返信画面を開いた時点で自動で上の機能が有効になると嬉しいのだが…
.
.
.
.
vim はバージョンを重ねる毎に余計な機能が増えすぎる気がする。
まぁ、ソフトウェアの正常進化と言えばその通りなのだが、
古くからの vi 使いには機能の多さに辟易してしまう。
なるべく表示をシンプルにし、機能を絞った .gvimrcを晒してみる。
1" 標準プラグイン(大きなお世話だ)の括弧マッチ機能を無効にする 2NoMatchParen 3" 構文ハイライトを無効にする 4syntax off 5" ツールバーを表示しない 6set guioptions-=T 7" フォント指定 8set guifont=Osaka-Mono:h16 9" カーソルの点滅を抑止 10set guicursor=a:blinkon0 11" インデントや行末を BS で削除可能とする 12set backspace=indent,eol,start 13" バックアップファイルは作成しない 14set nobackup 15" 検索文字列の大文字小文字を無視する 16set ignorecase 17" 検索文字列に大文字が含まれる場合は case sencitive な検索を実行 18set smartcase 19" 検索時にファイル末尾からファイル先頭に wrap する 20set wrapscan 21" インクリメンタルサーチを無効にする 22set noincsearch 23" 検索文字列の強調表示を無効にする 24set nohlsearch 25" ウィンドウタイトル変更機能を無効にする 26set notitle 27" コマンドの表示機能を無効にする 28set noshowcmd 29" 括弧マッチ機能を無効にする 30set noshowmatch 31" ステータス行の表示を抑止する(emacs じゃない) 32set laststatus=0 33" 行追加した時に直上の行のインデントを継承する 34set autoindent 35" タブストップは 4バイト幅 36set tabstop=4 37" バッファ中でもタブストップは 4バイト幅 38set softtabstop=4 39" インデント幅も 4バイト幅 40set shiftwidth=4 41" 起動時のメッセージを抑止 42set shortmess+=I 43" wrapscan メッセージを抑止 44set shortmess+=s 45" ファイル書込時のメッセージを抑止 46set shortmess+=W 47" ファイルの行数/文字数メッセージを標準的な形式に 48set shortmess-=l 49" 色指定 50hi Normal guifg=#ffebcd guibg=#464646 51hi NonText ctermfg=NONE guifg=#ffebcd guibg=#464646 52hi Cursor guifg=#464646 guibg=#ffebcd 53hi CursorIM guifg=#464646 guibg=#ffebcd 54hi Question guifg=#ffebcd guibg=#464646 55hi ModeMsg guifg=#ffebcd guibg=#464646 56hi MoreMsg guifg=#ffebcd guibg=#464646 57hi WarningMsg guifg=#ffebcd guibg=#464646 58hi ErrorMsg guifg=#ffebcd guibg=#464646