PythonEmacsCscopeこの間の三島Haskellで@karky7にcscopeを教えてもらったので、朝からいじっていたのだけどetagsとの違いがよく分からなかった。規模がでかいとこっちのほうがいいのだろうけど、.emacsにいちいち書かないといけないのが面倒くさそうだなと思ったが、virtualenvで作った仮想環境のlibを登録してしまえばいいのかなぁ。FlymakeSass+Comapss用にEmacsをいじっていった結果、Flymakeによるリアルタイム構文チェックまでたどり着いて快適になった。livereloadを組み合わせるとさらによい。--checkによるコンパイルチェック(エラー検出)scss-lintによるLinting更新を検知してリアルタイムに上のチェック、エラーがあれば該当行が赤く染まる。カーソルを該当行にのせると何がいけないのかがミニバッファに表示されるのでエラーが把握しやすい。ちなみに下のスクリーンショットでは29行目にカーソルを合わせていて、「セレクタは一行に一つづつ書きなさい」とpythonのimportみたいなことを言われている。installこんな感じだったと思う。--checkとscss-lintを実行するスクリプトを用意する。--checkの場合は--traceをつけると偶然にもflymake-cursorの書式に対応するので必要な一行目だけを出力させている。")Emacsscssコマンドをscsscheckersコマンドに変更するためにscss-sass-commandを上書きする。checkerがはしらなくて困るFlymakeでSass+CompassのチェックをおこなうおまけFlask+Sass-bootsrap+Coffeescriptなサイトを作っていて、Python,CoffeeScript,Sass全てに対してFlymakeがサポートしてくれるのでつまんないtypoとかのミスで時間をムダにすることがなくなった。EmacsSassFlymakeでSass+Compassのチェックをおこなうこまるわーとか書いたんだけど、別件でscssのオプション調べてたら--compassっていうcompass用のオプション見つけたので、これを加えればいける。scss-modeのソース調べたらscss-sass-optionsにオプション渡せばいいっぽいので、setqした。Errorでしょっちゅう死ぬので以下の設定は追加しておいたほうがよい。13.03.12インストールは普通にlist-packageで。牌語備忘録を参考にして、rbenvで入れたscssにパスを通しておいた。scssを普通に使っているぶんにはなかなか快適だけど、Compassと一緒に使うと困る。何が困るのか?例えばcompassのblueprintを使いたい場合、importのところでコケる。blueprint/reset.importできてないっていうエラー。--checkでエラーが発生したところで終了するのも困る。全てのエラーを補足するようになっていればいいのにと思ったりもするが。flymakeの意味無いじゃん。compassコマンドのほうに構文チェック用のオプションないかなぁと見てみても、作成されたcssのバリデーターくらいしか用意されていないみたいだ。createした時にファイルを用意してくれるオプションでもいいんだけど。Emacsetagsを再帰的に使うにはeshellから**/*.pyとするだけだったetagsに再帰的に探索するオプションがないので面倒くさかったんだが、eshellを使えば解決することが分かって快適になった。**/*.pyと打てばよい。eshellは常に一つ立ちあげておこうかな。HaskellEmacshsktagsでHaskellでもタグジャンプ@karky7に教えてもらったEmacsのタグジャンプでRedmineの中を探索するのが楽になったが、etagsはHaskell対応していない。これは困ったとフグったところ、hasktagsをみつけて解決。.ってやってTAGSファイルを作ったら、Emacsでタグジャンプできる。Linuxの布教活動に来ていた@karky7にEmacsのタグジャンプの便利さを教えてもらったので、僕もちょっと使ってみようかなと。-Rとか叩けないんだろうか?)タグジャンプができるようになるのでM-.で探索しつつM-*で元の場所に戻るということが簡単にできるようになっていい感じ。RoRみたいなフレームワークは行きつ戻りつすることが多いのでタグジャンプを使えばコードを追いかける効率が上がりそうだ。anythingとかhelmでも使えるようなのであとで設定してみる。HaskellEmacs三島Haskell無名関数の会#1が面白かった皆様お疲れ様でした。Emacsの設定ネタでやたらと時間が取られてしまったが、Emacsの素晴らしさが伝えられたかなーと。Ohkawainit.elはこれを参考にしてください。Linuxを入れてみる。次回fay-langの話とか、もう少しハンズオン的なyesod(wikiを作るくらいの)ネタをやれればいいかなという感じ。次回は三島でやって、懇親会を鈴木屋でやりたい。thisを見ていて、C-sすると自動的に検索開始時点の位置がマークされることを知った。C-xで戻れるってことじゃないかと。他にはexpand-regionってのが便利そうだったので、入れた(list-packagesで選択できる)。お誘いというこれは!というエントリがあがっていたので、早速誘われてみた。jsとcoffeeは一緒のディレクトリに置いておくのが好みなので@k0sukeyのオリジナルなjmkに変更をくわえてあります。iPhone/Androidアプリ開発入門のストップウォッチを参考にしました。)本書ではui.jsという1つのファイルで完結していますがAlloyのようなMVCフレームワークを使ったほうがコードの見通しは良くなると思います。jmkcoffeeがコンパイルされるようにするstopwatch/app/alloy.jmkを以下のように書きなおす。compileでコンパイルされるようになります。});});task("post:compile",function(event,logger){});alloyの開発あとは普通に。MobileiPhone/Androidアプリ開発入門</a>のストップウォッチのサンプルをAlloyで書きなおしてみたものです。src="http://ec2.images-amazon.com/images/I/41jDZ5IY01L._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA300_SH20_OU09_.jpg"/></body>興味を持ったら購入して読んでみるとよいと思いますよ。