2010-11-01から1ヶ月間の記事一覧

Compojure/Ring のredirect

compojureの0.3にあったcompojure.http/redirect-toは、0.4で、ring.util.response/redirect に変わったようです。 もともとCompojureに合った機能を、どんどんRing側に移しているようです。

Compojure(というよりRing)

run-jettyに渡すrouteを、varでderefしてあげると、いちいちjettyのリスタートをしなくてもよいようです。 (run-jetty (var my-route) {:port 8080 :join? false}) としておくと、my-routeをソース上で変更してリロードすると、jettyの動作に反映されるよう…

Compojure(というよりRing)で静的ファイルを提供

CompojureはRingの上に作られています。Compojureのソースはとても小さく、Ringと合わせて理解しないと、開発を行うのは難しいでしょう。Ringは、PythonのWSGI、RubyのRackのClojure版。 それらがどんなものかは、こっちの解説記事を見れば分かります。 WSGI…

Ring/リクエストのたびにリロード

ring.middleware.reloadを使うと、リクエストの度に特定のネームスペースのリロードを行ってくれるようです。インタラクティブに開発を行うには、とっても便利そうです。ハンドラを、wrap-reloadでくるみ、helloweb.coreがリロードされるようにします。 (ns …

Ring/文字化け対策

レスポンスのcharsetを指定するには、次のようにすればよいようです。元ネタはここ ⇒ Problem with Compojure 0.4 + Enlive and UTF-8 (defn wrap-charset [handler charset] (fn [request] (if-let [response (handler request)] (if-let [content-type (ge…

ukijs

ukijsというJavaScriptのUIライブラリがあるそうで、見た目はとってもヨサゲです。サンプルも結構あります。 おそらく、これが一番カンタンなサンプルだと思います。 /** @example_title Hello world @example_order 1 @example_html <div id='test' style='width: 50%; height: 100px; background: #EEE'>#test</div> <script src="/src/uki.cjs"></script> <script src="attachment.js">

Compojureを使ってみる

Compojureは、Clojure用の小規模なWebアプリ・フレームワークです。Compojureを使うには、project.cljを次のように変更します。 (defproject helloweb "1.0.0-SNAPSHOT" :description "FIXME: write" :dependencies [[org.clojure/clojure "1.2.0"] [org.clo…

WindowsでLeiningen

Clojureのビルド・ツールとしてデファクトになっているのは、Leiningenです。なんかMavenより使いやすそうだし、Mavenリポジトリも使えるので、とりあえず使ってみることにしました。インストールの手順はLeiningenのサイトに書いてあるとおりです。 lein-wi…

Clojarとdocjureを使う

Clojureには、Clojarsというライブラリのリポジトリがあります。Clojureのビルド・ツールとしてはLeiningenが有名ですが、Mavenで使ってみました。Clojarsからとってくるライブラリは、docjureを使ってみます。docjureはApache POI を使って、Officeファイル…

名前空間で定義されたシンボルをリストアップする。

(println (apply str (interpose "\n" (keys (ns-interns 'dk.ative.docjure.spreadsheet)))))

七五三

今日は健太の七五三で、近所の神社にお参りしてきました。

Counterclockwiseをインストール

ちょっと前から気になっていたClojureを使ってみるべぇ、と思ってCounterclockwise(Clojure開発用のEclipseプラグイン)をインストールしてみました。ClojureBoxというテもあったのですが、Emacsにはなじみがないので、軟派なEclipseに流れました。 Getting S…