トップ «前の日記(2008-11-22) 最新 次の日記(2008-11-25)» 編集

2008-11-24 [長年日記]

_ OmniGraffle でグリッドを有効にしたテンプレートを作成

グリッドを表示する

OmniGraffle はワタシが最も気に入っているドローツールなんだけど、

  • デフォルトでグリッド線が表示されていない
  • グリッドにスナップする設定になっていない

のがちょっと物足りない。

手早くそれなりに見栄えのするダイアグラムを描こうとする場合、まず適切なグリッドが大事だと思う。幸い OmniGraffle のグリッドは特に設定し直す必要はなく、有効にするだけで十分使いものになる。

ただ表示設定の変更を毎回しなくちゃいけないと面倒くさい。OmniGraffle の場合、この辺りの初期設定はアプリケーションレベルではなく新規ダイアログ作成時に選ぶテンプレートに保存される。したがって、まず

  1. あちこちの設定を好きなように変更
  2. これを [ ファイル ] → [ 書き出し ] で「OmniGraffle テンプレート」を選んで保存
  3. 保存したテンプレートファイルを以下のフォルダに保存
~/
`-- Library/
    `-- Application Support/
        `-- OmniGraffle/
            |-- Scripts/
            |-- Stencils/
->          `-- Templates/
                `-- TEMPLATE_NAME.gtemplate

するとこのテンプレートが利用できるようになる。

テンプレートセレクタでデフォルトに

また、テンプレートを選ぶ際に [ デフォルトとして設定 ] をクリックすると cmd + N で常にそのテンプレートでダイアログを作り始めることができる。

うん、これこれ。やっと手に馴染んできた*1

*1 以前 3 Pro のときもこれやってたんだけど、方法を書き留めてなかったので、5 になってからデフォルトのままになっていて不便だった。

_ Merb が意外に環境を選ぶ

最近評判のいい Merb にちょっと興味が湧いてきたんだけど、

  • RubyGems 1.3.0 以降
  • hoe 1.8.0 以降
  • Ruby 1.8.6 以降(この情報は本家で見つけられなかった)

など、結構新しめの環境を要求する。

特に問題になりやすいのは Ruby 1.8.6 以降で、この段階で CentOS 5 や Debian etch など、stable なサーバとして採用されていそうな環境では標準のパッケージで動かすことができない。

Debian lenny は 1.8.7 なので Ubuntu 8.04 LTS でもいいんだよな。もう Debian 系は素の Debian やめて Ubuntu LTS にしようかな。Ubuntu LTS の方がリリースも信用できそうだしなぁ。

Tags: Ruby

_ VirtualBox の NAT の設定

VirtualBox のネットワークの設定は NAT がデフォルトである。NAT ということは Guest から外に出て行く分にはいいけど、外から Guest に ssh などで接続しようとしたときに Host OS の port と Guest OS の port を map する必要がある。

で、その方法をヘルプより抜粋。

You can set up a guest service which you wish to proxy using the command line tool VBoxManage. You will need to know which ports on the guest the service uses and to decide which ports to use on the host (often but not always you will want to use the same ports on the guest and on the host). You can use any ports on the host which are not already in use by a service. An example of how to set up incoming NAT connections to a ssh server on the guest requires the following three commands:

VBoxManage setextradata "Linux Guest"
  "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol" TCP
VBoxManage setextradata "Linux Guest"
  "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort" 22
VBoxManage setextradata "Linux Guest"
  "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort" 2222

※ Windows 版にもこのコマンドは存在する。

実はこの設定について GUI からは方法がないのは以前から知っていたんだけど、調べるのが面倒で Q.app と VirtualBox をいったりきたりしていた。でももうこれで Q.app をやめることができそうだ。

本当は extradata でこんな長い文字を打たせなくてもいいように network の設定をうまく抽象化してほしいなぁとは思うところだけど、それは今後に期待ということにしよう。

Tags: VirtualBox