金曜日, 3月 25, 2011

Cocoa Emacs 23の日本語入力モードでOSXのIMの動作を制御する

昨日まで年度末の報告書書きに忙殺されていたのですが、指定フォーマットがLaTeXのものもあるのです。で通常TeX書きするときはEmacsを使っていますので今回も使っていたのですが、Cocoa Emacsでの日本語入力設定をちゃんとやっていなかったので、使い勝手が通常と違って煩わしかったわけです。別に何もしなくてもCmd+Spcで日本語入力できますが、Emacs使っているときはCtrl-\を使いたいわけです。せっかくいろいろパッチをあててビルドしているのですから、ちゃんと恩恵を得ないと馬鹿みたいだとも思うわけです。

で、忙しいにも関わらずついカッとなって検索するとちゃんと紹介している方がおられるので、そのまま設定してみます。確かにCtrl-\が有効になったので使い勝手はだいぶ向上しました。しかし、日本語入力モードだと「ESC-なんちゃら」なキーアサインが厳しいです。ちゃんと「Meta+なんちゃら」な操作に慣れた方がいいのかな。

日曜日, 2月 20, 2011

Macから他のPCの音を鳴らしてみた

Mac miniを買った頃からなんとなく考えていた事を今頃試してみました。

以前から使っていたPCにはKENWOOD RD-VH7PCを繋いで音を鳴らしていました。Mac miniからも音を鳴らそうと考えましたが、その為に別のスピーカを用意する必要は感じません。取りあえず普段の使用に於いては、両方の音が混じって音が出てくるのに何の問題もありません。両方の音を混ぜるには、双方のマシンからの音声出力をミキサに通してあげれば良いはずです。ですが、その為に新しい機械を用意する必要も当面は感じていません。

単に音が混ざればいいのですから、片方の機械の音声出力をもう片方の機械に入力してあげて、その機械自身から音声出力とミキシングする処理をするソフトウェアミキサを用意すれば良いはずです。メインマシンと現在捉えているMac miniにそのようなソフトウェアがあるか調べてみますとありました。こちらで紹介されている方法がまさにそれです。紹介されている手順に従ってSoundflowerLadioCastをインストールしますと、確かに思った通りの動作をします。ですが、普通に考えますと自分の用途にはミキサであるLadioCastだけで良いように思いますので、試しにSoundflowerを切ってみますと、問題なく所望の動作をしています。どうやら自分にはこれで十分な様です。

火曜日, 2月 01, 2011

Macbook Airでmatplotlibが使えなかったのでどうにかした

いえ、ちゃんとつかえているのですよ。ただ最近はPyQtからしか使っていなかったので、pylabのデフォルトバックエンドでは全然動作確認してませんでした。で、いざ使おうとしたらうごかなかった。

以前にmatplotlibrcを書き換えることを書いていますが、それってどこにあるんだっけ?と調べてたら、なるほどここでもよかったのか。ということで、自分でmatplotlibファイルをこしらえることで動くようになりました。

水曜日, 1月 26, 2011

Pymacsが動いたり動かなかったりしたのをむりやりどうにかしてみた

先日にMacbook Air上のPython環境を整備してみたのですが、ようやっと役に立ってもらおうとコード書きを再開してみると何故か自動補完が効きません。ところが全然効かないわけでもなくて、まっさらなバッファにPythonコードを書き始めるとちゃんと補完が効きます。何が起きてるんだろう?と思い、何気なく*Pymacs*バッファを見てみると「UnicodeDecodeError」とかが出ています。ひょっとしてと思い、先程の補完が効いたバッファに日本語でコメントを書きこむと、途端に補完が効かなくなります。どうやら何処かで文字コードの扱いが失敗しているようです。

メッセージをよく見ると「.encode('ISO-8859-1').decode('UTF-8')」のくだりがあやしそうな気がします。で、この「.encode('ISO-8859-1').decode('UTF-8')」を誰が送っているかですが、find + grepしてみますと「pymacs.el」にありました。しかしながら、どうすればいいのかよく判らない(めんどうなので調べたくない)ので、ついかっとなって

454c454,455
<                  (princ ".encode('ISO-8859-1').decode('UTF-8')")))
---
>                  ;(princ ".encode('ISO-8859-1').decode('UTF-8')")))
>                  (princ ".decode('UTF-8')")))
とかしてしまいました。何故か動いているようです。誰か正しい対処方法を教えて下さい。

火曜日, 1月 25, 2011

*nixでバイナリを含むディレクトリの比較をする

昔からの懸案でしたが、何のことはない diff でできるそうです

$ diff -qr cmp1 cmp2

月曜日, 1月 24, 2011

Cocoa Emacs にAUCTeXをインストールしてみた

色々仕事が滞っていて、こんなことしてる場合かと思いつつやってみた。

とりあえずだいたいここにある感じで、

$ ./configure --with-emacs=/Applications/Emacs.app/Contents/MacOS/Emacs --with-lispdir=/Applications/Emacs.app/Contents/Resources/site-lisp/
ちょっとだけインストールパスが違うけど。

で、C-c C-p C-d ってやってみたけど「latexのパスが見つからないよ?」と怒られる。M-x getevn PATH とかやると見事に /opt/local/bin が含まれていない。ので、ここいらを参考に~/.emacs.d/init.elに

(setq exec-path (append exec-path '("/opt/local/bin")))
を追記。動くようになりました。

火曜日, 1月 04, 2011

MacとXbeeをUSB Explolerで繋いでみた

年末年始も微妙に慌ただしく、年初の投稿がやっぱりこんなんだったり。この話自体は昨年末にやってた事だったりして、今頃になって備忘録を書いてるのです。

昨年末になって、いろいろな通信条件でのXbeeでのデータスループットを測る必要がでてきました。以前から薄々そうなると思ってはいたのですが、準備する時間がなかったのであわてて準備する事になったわけです。昨夏に自分らがXbeeを導入した直後に隣の部署でも必要があってXbeeとUSB Explolerを数個購入していて、今回伺ってみた所快くお借りする事ができました。Xbeeで受信したデータをそのままUSB serialインターフェースに通し、PC側で受信したデータ量をカウントするという腹です。

今回はMacでもできるようにしてみようと思い試してみました。まずはここからOSXに対応したFTDIドライバをダウンロードしインストールしました。実際のUSB serialの動作確認ですが、昔ながらのsttyとcuでも試してみましたが、こちらで紹介されていたjermialというソフトウェアを試してみた所なかなかに快適です。USB serialのデバイスは/dev/cu.usbserial-????????から適切なものを探して使います。