JSON を自動で整形して表示する Firefox アドオン「JSONView」

JSON(JavaScript Object Notation) は今では JavaScript 以外でも普通に使われるデータ記述形式であり、開発の際に何かしらの JSON を出力する場合、その中身を確認したいこともあるはず。

しかし、多くのケースにおいて自動生成される JSON は整形されておらず、一目にはわかりにくいことも。

そんなときに役立つのが「JSONView」である。これを Firefox にインストールして JSON 形式のファイルを開くと自動で整形してくれる。またオブジェクトがネストされている部分は伸縮・展開もブラウザでできる。

なお、文字化けする場合があるらしいので設定で「HTTP Accept リクエストヘッダーに『application/json』を追加する」のチェックを ON にしておくといい。

Google Chrome にも同名の拡張がある。

Heroku に Rails アプリケーションをデプロイするまで

GitHub のアカウント取得と GitHub for Windows のインストール

The world’s leading software development platform · GitHub
まぁこれをしないと始まりませんのでw

2014/02/22 追記 : Aptana Studio 3 に内蔵の Git を使うという方法もある。Eclipse Kepler なら EGit が最初から入っているのでそれを使うのもあり。

Heroku のアカウント取得

Cloud Application Platform | Heroku
上に同じく。

Heroku Toolbelt のインストール

ここからダウンロード。従前の gem install heroku は非推奨(だけど一応動くっぽい ?)。
The Heroku CLI | Heroku Dev Center
Git はインストールしなくて良い(すでに GitHub for Windows を入れているから)。Ruby もインストールされるが、Heroku を作動させるためのローカルなもので、元の Ruby とは競合しないのでご安心を。

公開鍵の作成と Heroku への公開鍵の登録

Git Shell を起動してコマンドを叩く。

ssh-keygen -t rsa

何かパスワードがどうのとか聞かれるけど何も打たずに Enter で良い*1。これで C:\User\(ユーザー名)\.ssh に id_rsa と id_rsa.pub が作成される。で、引き続き shell で

heroku keys:add

を叩く。これで Heroku に公開鍵が登録され、SSHリポジトリを push できるようになる。

Rails アプリケーションの作成

まー、ここは個別にせっせとやっていただくとして、共通の作業である Gemfile の修正について。

ruby '2.0.0'

を追加して、Heroku が Ruby 2.0.0 ベースで走るようにする。さらに

gem 'sqlite3'

のところを

group :development do
  gem 'sqlite3'
end

group :production do
  gem 'pg'
end

と書き換え、sqlite3 は開発環境のみで、本番では pg*2 を使うようにする。Gemfile の修正が終わったら一回 bundle update を掛けて Gemfile.lock を更新させる。64bit 版 Ruby の人は前回の記事も参考に。

Assets の事前コンパイル

Assets(SCSS, CoffeeScript) は事前コンパイルしておく。

rake assets:precompile

さらに config\environments\production.rb の

config.serve_static_assets = false

config.serve_static_assets = true

に修正。

2013/11/18 追記 : どうやらこの操作は不要で、config\environments\production.rb の

config.assets.compile = false

config.assets.compile = true

に変更するだけで良いようです(config.serve_static_assetsfalse のまま)。
参考サイト : Heroku で Asset Pipeline を使う - Qiita

いざデプロイ !

後は変更を commit して再び Git Shell でアプリケーションのフォルダに移動して

heroku create (アプリケーション名)
git push heroku master
heroku run rake db:migrate
heroku run rake db:seed

でデプロイとデータベースの作成、初期データの投入ができる。なおアプリケーション名はクラウドサーバのお約束で Heroku 全体で一意である必要があり、省略すると自動で適当なアプリケーション名が付けられる*3

*1:公開鍵を保護するためのパスワードを使用するかどうかなので、何らかの理由で保護したい場合はパスワードを入力すること。

*2:PostgreSQL 用の RubyGems。Heroku はデフォルトで PostgreSQL をデータベースとして採用しており、SQLite3 は使えない。

*3:後から変更もできるが、(アプリケーションフォルダ)\.git\config を修正しないといけない

64bit 版 Ruby 2.0 で Rails 4 を使う

1. 前回の記事を参考に 64bit 版 SQLite3 をビルドし、sqlite3.dll をパスの通っているところに配置する(個人的には C:\SQLite のように別フォルダを作ってそこにパスを通すのをお勧め)。
2. 64bit 版の Ruby 2.0.0-p247(現時点での最新版)をインストール。
3. 64bit 版の DevKit を適当なフォルダに展開する(SQLite3 のビルド時に使用したのであればこの手順は省略)。
1. 〜 3. はどれから始めても O.K.
4. DevKit を Ruby に設定する。DevKit を展開したフォルダで

ruby dk.rb init

したあと config.yml に

- C:/(Ruby をインストールしたフォルダ)

の一行を追加してから

ruby dk.rb install

5. Rails のインストール

gem install rails --no-ri --no-rdoc

6. sqlite3 gem のインストール

gem install sqlite3 --no-ri --no-rdoc

64bit 版(sqlite3-1.3.8-x64-mingw32)がインストールされることを確認。
5. と 6. はどっちを先にやっても O.K.
7. Rails アプリケーションの作成
コマンドラインから作成しても Aptana Studio などの IDE から作っても良い。bundle install も走らせて良い。
8. Gemfile.lock の編集
ここが肝。作成したアプリケーションフォルダの直下にある Gemfile.lock を開き、92 行目(になってるはず)の

sqlite3 (1.3.8-x86-mingw32)

sqlite3 (1.3.8-x64-mingw32)

に書き換えて保存する。保存後は bundle update などは走らせないこと ! せっかく編集した Gemfile.lock が上書きされてしまいます。
9. 以上で問題ないはず。快適な 64bit 版 Rails ライフを !

参考サイト : Ruby 2.0.0 – Rails 4.0 に SQLite3 をインストールしたときのメモ [Windows] – superable

64bit 版 SQLite3 をビルドする

参考にしたのはここ↓
Ruby on Rails のインストール (Windows 7 64bit) - Chaosのメモ @wiki - アットウィキ

必要なもの

DevKit の 64bit 版ないし MinGW の 64bit 版。
DevKit は RubyInstaller for Windows からダウンロードできる。あらかじめ x86_64-w64-mingw32-gcc.exe のあるフォルダにパスを通しておくこと。

ソースコードのダウンロード

SQLite の公式サイトから sqlite-amalgamation-xxxxxxx.zip をダウンロード(xxxxxxx はバージョン番号)して、適当なフォルダで展開する。

sqlite3.dll のビルド

コマンドプロンプトで、ソースコードを展開したフォルダに移動して

x86_64-w64-mingw32-gcc -O2 -shared -o sqlite3.dll -Wl,--out-implib=libsqlite3.dll.a sqlite3.c

と入力し Enter で実行。

sqlite3.exe のビルド

Rails 等から使用するだけなら dll があれば十分だが、exe も欲しいという人は同じフォルダで

x86_64-w64-mingw32-gcc -O2 -o sqlite3.exe shell.c libsqlite3.dll.a

と入力し Enter で実行。何か警告っぽいメッセージが出るけど sqlite3.exe はちゃんと作れている模様。

で、結局何がしたいのか

まぁ結局は Ruby on Rails の 64bit 環境が欲しいわけですよ。Rails 自体は 64bit 版の Ruby を入れて 64bit 版の DevKit を入れてやればインストールできるのだけど、bundle install したときの sqlite3 がらみの問題はどうなったんだろ ?

2013/11/23 追記 : Qiita にまとめました。
http://qiita.com/akaneko3/items/0e99c3c1366dfbad006f