2011年6月10日金曜日

emacsのフレームサイズを画面解像度によって動的に変更する方法

メインの開発環境はmac mini+FlexScanL885なのだが、外出先などではMacbook air 11インチを使用している。emacsのデフォルト フレーム サイズをFlexScanL885にあわせるとMacbook airでは、はみ出てしまう。逆にMacbook airにあわせると、FlexScanL885では狭すぎて開くたびにリサイズするなんてことになる。

じゃあ解像度に合わせて、動的に開くフレームサイズを決めれば良いんじゃねぇ。ということで下記の設定を書いてみた。

;; 画面の解像度によりフレームサイズを変化させる
(when window-system
  (if (>= (x-display-pixel-width) 800) (setq width-gain 0.45) (setq width-gain 0.8))
  (if (>= (x-display-pixel-height) 1000) (setq height-gain 0.7) (setq height-gain 0.87))
  (set-frame-size (selected-frame)
                  (floor (/ (* (x-display-pixel-width) width-gain) (frame-char-width)))
                  (floor (/ (* (x-display-pixel-height) height-gain) (frame-char-height))))

横の解像度が800px以下の場合は、横のフレームサイズを ((横解像度*0.8)/1文字の横ピクセル数)、横の解像度が800px以上の場合は ((横解像度*0.45)/1文字の横ピクセル数) としている。

また、縦の解像度が1000px以下の場合は、縦のフレームサイズを ((縦解像度*0.87)/1文字の縦ピクセル数)、縦の解像度が1000px以上の場合は ((縦解像度*0.7)/1文字の縦ピクセル数) としている。

2011年6月9日木曜日

TotalFinderとcdtoを導入した。

先日、MacUpdate PromoTotalFinderを40% offセールを行っていた。通常$15の所を$9で購入できるというので、前々からよさげなツールだと思っていたので導入してみた。

TotalFinderの良いところは、今まで別々に開いていたFinderをタブとして開くことが出来るところでしょう。Finderを開きすぎて、画面がゴチャゴチャしてしまう事がなくなったので、買ってよかったと思う。

TotalFinder

ついでに、現在Finderで開いているディレクトリの場所をターミナルでひらいてくれる>cd to ...も導入してみた。この辺を参考にしてインストールする。

cd to..

自分はTerminal.appでなくiTermを使用しているのでiterm用のプラグインに入れ替える。

$ mv /Applications/\>cd\ to\ ....app/Contents/PlugIns/terminal.bundle /Applications/\>cd\ to\ ....app/Contents/PlugIns\ Disabled/
$ mv /Applications/\>cd\ to\ ....app/Contents/PlugIns\ Disabled/iterm.bundle /Applications/\>cd\ to\ ....app/Contents/PlugIns/

入れ替えてみたのだが、何故かiTermが立ち上がらない。Terminalに戻すとうまくいくので、iTermの問題らしいので、googleさんに聞いてみてたが他の人は動いているらしい。何故だ???としばらく考えていたところ、自分が使っているのはiTermでなくiTerm2だったことを思い出した。

改めてググってみると、Does not work with iTerm2というのが引っかかった。PlugIns/iterm.bundle/Contents/MacOS/itermはIDが”net.sourceforge.iTerm”となっているので"com.googlecode.iterm2"にバイナリエディタなどで書き換えてあげれば動くよとの事だった。 しかも、パッチ済みのプラグイン(iterm2.bundle.zip)も置いてあったので、それを使わせてもらいました。

$ mv /Applications/\>cd\ to\ ....app/Contents/PlugIns/iterm.bundle /Applications/\>cd\ to\ ....app/Contents/PlugIns\ Disabled/
$ unzip iterm2.bundle.zip
$ mv iterm2.bundle /Applications/\>cd\ to\ ....app/Contents/PlugIns/

これで、>cd to ...からiTerm2を立ち上げることができるようになりました。

2011年5月12日木曜日

IKEAでスタンドランプを買ってきた。

ゴールデンウイークも過ぎてIKEAも空いてきた頃だろうと思い、前からほしかったスタンドランプを買いに行ってきた。

SUNNAN

1つはSUNNANと言う太陽光で充電できるタイプのLEDライト。SUNNANは2台目なのだが、以前買ったときは2,500円程したと思ったのだけれど、今回は1,990円で買えた。電力不足で停電になりそうな昨今、こう言うランプが安く買えるのは有り難いです。

もう一つは、コンセントから供給するタイプのLEDライトJANSJO。意外に安くて1,490円!!組み立て式なのですが、台座が石だったのが驚いた。石にプラスチックのカバーを被せて下の部分をシールで固定して完成。早速、作業机に置いて使用してみました。

JANSJO

構造はちゃちだけれども、それなりに明るくて重宝しています。

2011年4月20日水曜日

デザインを変えてみた

一年以上放置してあったこのページだけど、また再開してみようかと思い開いてみると、”テンプレート デザイナー”という項目が増えていた。ちょっといじってみたら、いい感じに変更できた。

と、どうでも良い事をテストを兼ねて投稿してみる。

2009年9月4日金曜日

Opera10.0にアップグレードしたらニュースフィードが消えた

MacのOperaを10.0にしたら、登録していたニュースフィードが全て無くなっていた。orz..

ちょっと洒落にならないので、復活を試みた。

ニュースフィードが何処にあるか探すと、~/Library/Application Support/Opera/Mailに存在している。そして登録したデータも残っている様だ(ラッキー)

また、~/Library/Application Support/Opera/mailなんてディレクトリもあって、同じ構成になっている。もしかしてこちらのデータが有効になっているのかも。

とりあえず、適当なニュースフィードを登録して、Mailとmailにあるファイルがどうなるか試してみると、~/Library/Application Support/Opera/mailの方に登録される様だ。

大体原因がわかったので、次のように修正してみる

$ mv mail mail.back
$ mv Mail mail

こうして、再度Operaを立ち上げてみると、ニュースフィードが復活しました!

うちのMacのファイルシステムは、HFSX(case sensitive)で運用しているので、こんな事が起きたのでしょう。

2009年8月8日土曜日

受信したメールをサーバーに残しつつ、別のアドレスに転送する方法

時たま、人に質問されるのだけれど、良く忘れるので備忘録にしておく。

例えばサーバーがmail.example.jpだとして、foo@example.jp宛に受信したメールをサーバーに残し、bar@gmail.comに送りたいと言う場合がある。

この場合、mail.example.jpにあるfooのhomeディレクトリに.forwardに次の記述をすれば良い。

foo@~(1)$ cat .forward
\foo,bar@gmail.com

2009年7月2日木曜日

MacでHP-16C

HP電卓のiPhone/iPod touch アプリが登場したみたいですね。自分はiPhoneもiPod touch持っていないから関係ないけど(笑)

Macに標準で付いている電卓は意外に高機能で、PRNモードなんか付いている。エンジニア/PRNモードは最強かも知れない。

Mac Calc

それでも、「HP 16cのキーアサインの電卓が欲しいよね。何処かにないかな。」と、Macを使い始めた当初に探したことがあって、そのとき見つけたのがnonpareil for Max OS Xでした。インストールしてみるとなかなか良い感じで、今は愛用しています。

HP 16C

自分が使っているのはnonpareil-16cだけど、それ以外にも以下の機種があるようです。

  • nonpareil-35
  • nonpareil-45
  • nonpareil-55
  • nonpareil-80
  • nonpareil-21
  • nonpareil-25
  • nonpareil-32e
  • nonpareil-33c
  • nonpareil-34c
  • nonpareil-37e
  • nonpareil-38c
  • nonpareil-38e
  • nonpareil-11c
  • nonpareil-12c
  • nonpareil-15c
  • nonpareil-16c