このページの記事一覧
● 2012年10月18日木曜日 - [Scala] JSON の標準パーサーで数値型が Double になる問題への対処方法
● 2012年10月14日日曜日 - [Scala] JSON の扱い
● 2012年10月8日月曜日 - [Blogger] Zenbackを設置してみる。
● 2012年10月7日日曜日 - [Blogger] 行間を開ける
● 2012年10月5日金曜日 - Eclipse に インポート時に Unsupported IClasspathEntry が出る

2012年10月18日木曜日

[Scala] JSON の標準パーサーで数値型が Double になる問題への対処方法

前回、Scala の JSON 標準ライブラリを使ってみた。 Scala の 標準パーサーでは、数値型が常に Double として扱われてしまう問題がある。
  val text = """{ "x":1 }""";
  val result = JSON.parseFull(text);
  val map = result.get.asInstanceOf[Map[String, Option[Any]]];
  println (map.get("x").get);

--------------------
1.0

2012年10月14日日曜日

[Scala] JSON の扱い

Scala には 標準で JSON を扱うためのクラスが用意されている。
sjson というライブラリもあるが、 まずは Scala 標準の JSON を使ってみる。


パース

scala.util.parsing.json.JSON クラスを使ってテキストの JSON をパースする。
  • JSON.parseRaw
    パース結果として、Option[JSONType] が返る。
  • JSON.parseFull
    パース結果として、Option[Any] が返る。
他に JSON.parse というメソッドもあるが、Scala 2.8.0 以降は Deprecated されて parseRaw または parseFull を使うようになっている。

2012年10月8日月曜日

[Blogger] Zenbackを設置してみる。

Blog でよく見かける「関連記事」。Blogger にもあんなのがあるといいなぁ、と思っていたのだが Zenback というサービスのものがよさげだったので設置してみることにした。

参考にしたのはここ。

Zenback サイトでの登録


以下、実施ログ。

まずは、Zenback サイトでアカウント作成とブログの登録登録。
  1. Zenback のサイトで 「新規登録&コードを取得する」。
  2. メールアドレスと Zenback ログイン用のパスワードを指定。
  3. Blog の URLを入力する。
  4. 表示したい項目を指定。
    ソーシャルボタン、関連する記事、関連するみんなの記事(必須)、Twitter での反応、
    はてなブックマークでの反応、Facebook コメントがある。
    Twitter のパスワードもここで指定する。
    デフォルトでは全部ついているのでとりあえずそのまま。
    不要ならきっとあとで外せるだろう。Twitter のパスワードは未入力のまま。
  5. ブログに張り付けるためのスクリプトが出力される。

出力されたスクリプトはこんな感じ。

<!-- X:S ZenBackWidget --><script type="text/javascript">document.write(unescape("%3Cscript")+" src='http://widget.zenback.jp/?base_uri=http%3A//xawa99.blogspot.jp/&nsid=107166696824918689%3A%3A107166812789038893&rand="+Math.ceil((new Date()*1)*Math.random())+"' type='text/javascript'"+unescape("%3E%3C/script%3E"));</script><!-- X:E ZenBackWidget -->



Zenback の管理画面


スクリプトコードを取得すると、Zenback の管理画面に遷移する。
ここでは、挿入するスクリプトの再表示やウィジェットのテーマ、表示する項目、ソーシャルボタン、関連する記事の表示設定が選べる。

関連する記事の表示設定では「サムネール付き」と「テキストのみ」が選べる。
このブログの記事はどこもテキストだらけで代わり映えがしないのでサムネールをつける意味は全くないのだが、とりあえずはデフォルトのサムネールつきのままにしておこう。あとで変える。


ブログにスクリプトを挿入する。


Blogger の管理画面の「レイアウト」で、好きな場所でガジェットの追加をして「HTML/JavaScript」ガジェットを追加する。
そのコンテンツとして先ほどの Script をペースト。HTML の編集をしないで済むので簡単でいい。

表示してみる。

「関連する記事」や「関連するみんなの記事」には「表示されるまで数分〜最大で数日ほどかかります。しばらくお待ちください。」と表示される。
Zenback ブログによると、
zenbackのコードを貼ってから、「関連記事」「関連リンク」が表示されるまで、数時間~最大30時間ほどかかる場合があります。ご了承ください。
ということらしい。
何日かするとこの部分に関連する記事が表示されるようになる。大体2~3日はかかるみたい。
ガジェットを張り付けた位置に、「zenback読み込み中です。」が表示されたままになる場合には Script が間違っている可能性があるので要確認。

一時期、Zenback にブログを登録した直後に表示される Blogger 用の Script が間違っていたらしいので、 その場合には、Zenback の 管理画面から再度 Script を取得しなおして貼りなおす。


テンプレートカスタマイズ


「HTML/JavaScript ガジェット」 だとトップページを含めすべての画面に関連記事一覧が表示される。
関連記事という性格上、個別記事ページだけでよいのだが残念ながらそうはいかない。

個別記事ページのみにする場合には テンプレートをカスタマイズする必要がある。
swordsmith ブログにそのあたりが詳しく記載されているので、気が向いたらそのうちやってみよう。

2012年10月7日日曜日

[Blogger] 行間を開ける

Blogger を使っていて思うのは微妙に行間が狭いということ。
レイアウトやテンプレートデザイナーの設定にもないので、テンプレートを直接編集しないといけないのかな、と思っていたら、CSS を設定するだけの簡単な方法があった。

2012年10月5日金曜日

Eclipse に インポート時に Unsupported IClasspathEntry が出る

Eclipse + m2e 環境で プロジェクトをインポートすると

An internal error occurred during: "Importing Maven projects".
Unsupported IClasspathEntry kind=4

となることがある。

自分の場合は pom.xml から mvn eclipse:eclipse で生成したScala プロジェクトを、 「 Existing Maven Projects 」で import したときに発生した。