!kiyoka.blog.2008_11 RSSPLAIN

Related pages: !kiyoka.blog.list
15215553333333033355555555555555405555555555555555505555555555555555055555555555555555555555555555055555555555555055555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555505
1

kiyoka日記。NendoSekkaの開発や、最近思うことなど

5

最新10件!kiyoka.blog   過去記事一覧!kiyoka.blog.list

2

kiyoka.blog_header 

1

このブログを書いている人: 西山 清香(kiyoka) - twitter: @kiyokaEXT

5

5

 

5

 

3

kiyoka.2008_11_29[Life][携帯] iPod touch 8Gが届いていた

3

二日前にAmazonから自宅に届いていた。

3

まだ開けてない。開ける時間もないよ。

3

何かすごく箱が軽いけど...

3

ほんとに中身入ってるのかな。

3
 B0016AN68G  Apple iPod touch 8GB
3

 

0

comment (disabled)

3

3

 

3

 

5

kiyoka.2008_11_26[Life][携帯] iPod touch 8GとRSSリーダ

5

どちらも同じ日に注文した。

5
 3060626649_e24734dabf_m  600円だった。前は1200円だったと思う。値段が上がらないうちに購入した。
5

 

5
 3060615067_4596716e5a_m  本体も手に入っていないうちから、ソフトだけ買っておくという...
5

 

5

そんなわけでもちろん、本体はまだ届いていない。

5

どうせ将来iPhoneを買う予定なので、いちばん安い8GBにしておいた。

5
 B0016AN68G  Apple iPod touch 8GB
5

これでdocomoのパケホーダイを解約できると思う。

5

毎月かなり安くなるので、浮いたお金でソフトを大量に買おう。

5

早くSafariとか文字入力とかを試したいな。

5

 

5

COMMENTsion

>これでdocomoのパケホーダイを解約できると思う。 

ということは、ほぼ常時 WiFiルーターのある場所にいるということですね。

それはいい環境ですね。

僕もタッチを狙ってます!調整品だと32Gでもわりと安いかな・・・とか(^^)

32Gあれば所有CDをほぼすべて格納できるはずなので。

しかし、いまフラッシュメモリ暴落中なのでもう少し待ったほうがいいかな・・・とか(^^;

4

COMMENTkiyoka

>>これでdocomoのパケホーダイを解約できると思う。 

>ということは、ほぼ常時 WiFiルーターのある場所にいるということですね。

実はそんなことは無いです。

BylineはオフラインのRSSリーダーで、WiFiでつないだ時に記事を取り込んだりGoogle Readerの既読管理とsyncするみたいです。

なので、毎日自宅で同期を取るという使い方ですが、それでも十分かなと思います。

ただ、オフラインではブログ記事内にある外部リンクとかトラックバックとかを辿れないので、そこがどれくらい不便に感じるかが問題ですね。

数日使ってみて、感想を書きますね。

0

comment (disabled)

5

5

 

5

 

5

kiyoka.2008_11_22[Emacs] widen-window.elをインストール

5

widen-window.el ver 0.1.0 リリース - 日記を書く<・ _ゝ・>はやみずさんEXT

5

これは便利。さっそく使い始めた。

5

最近はこういうちょっとしたプログラミングで大きな改善ができるソフトがお気に入り。

5

hayamizさんやるねー。

5

最近めっきり無くてはならない存在になった anything.elに続くヒット。

5
 kiyoka.2008_05_13[Emacs] anything.elの応用: よく開くファイルを検索対象にする方法
5
 kiyoka.2008_04_23[Emacs] anything.elEXT is everything!
5

こういう物をすばやく作る能力というのは実はプログラミングのセンスとユーザインタフェースデザインの総合的なスキルが要求される。

5

できあがった物を見れば『なあんだ』と思える様なものでもじゃあ自分でも着想出来たかというとそんなことはない。

5

そういうものを作れる人になりたいと思う今日このごろ。

5

 

5

COMMENTsion

これって アクティブなペインを 自動的に広げる機能でしょうか?

それって なんというか、すごく便利そう!

そういう発想はなかったなぁ~

しかし、リンク先のムービー・・・あれ、本当にEMacsの画面なの!?

近頃は みんなあんな複雑なウィンドウ分割してるの!?

 C-x 2 と たまに C-x 3 を使うだけの僕には驚異の使いこなしだ!(^^;

5

COMMENTkiyoka

リンク先のムービーは確かにEmacsですね。

それから、あの複雑な分割はwiden-windowの挙動がわかるようにするためにわざと複雑な例を見せているだけだと思います。

私も C-x 2 しか使いませんが、狭いterminalからリモートログインしている時とかには widen-windowは十分便利です。

0

comment (disabled)

5

5

 

5

 

5

kiyoka.2008_11_18[Life][携帯] iPhone買うのを断念…

5

残念だけど、家族と親戚の同意が得られないので(涙;)

5

これが、意外とメールの到達時間とかTV電話とか普通の人は非常に重要視するらしい。

5

でもOldTypeをiPhone対応にしたいので、iPod touchにしようと思っている。

5

当面はSafariが動けば良いので、これで1年くらいは我慢するのだ。

5

携帯電話ではヘビーにブログを読むので、N905iμの型落ち品を狙おうかな。(今はN902i)

5

iphone2

5

でも、何かパッとしないなぁ。

5

 

5

COMMENTsion

もろもろ考えて、それが正解。

と自分に言い聞かせてみる。

5

COMMENTkiyoka

そうですね。ありがとうございます。

1年先延ばしの予定が2年、3年にとかならなければいいのですが...

今はこれが正解。と思っときます ^_^;

5

COMMENTほげほげお

iPhone 使ってますが、メールがすぐに届かないのは致命的ですし、

IME がフリーズしまくり&落ちまくるのも致命的。

結局 Docomo のパケ放題も解約できずじまいです…。

5

COMMENTkiyoka

ほげほげおさんのコメントを読むと、iPod touchとdocomoの組み合わせでも悪く無い気がしてきました。凄く参考になります。

ブログリーダの ByLineを使ってブログを読むようにすれば、docomoのパケホーダイも解約できないかなぁと思っています。

ByLineの紹介記事はこちらです。http://iphoneapplication.jp/?p=144

なかなか良さそうです。

0

comment (disabled)

5

5

 

5

 

5

kiyoka.2008_11_09[OldType] 関連ページへのリンクをサポート

5

とりあえず関連ページへのリンクを付けた。

5

他のWikiページからの被リンクを並べてみた。

5

単順に他のWikiページからの被リンクを並べただけでは、あまり重要でないページが最初に来て使いにくかった。

5

 

5

ページランク

5

どんな見せ方をすると使いやすいのかなと思いつつも、いいアイデアが出なかった。

5

放置して数日。この本を読んでたら答えが書いてあった。ラッキー。

5
 4873113636  ビューティフルコード: Brian Kernighan, Jon Bentley, まつもとゆきひろ, Andy Oram, Greg Wilson, 久野 禎子, 久野 靖
5

第4章、Tim Brayの『ものの見つけ方』にページランクの話が書いてあった。これだ。

5

ページランク順にリンクを並べればいいのだよ。

5

(といっても、ここでのページランクは単に参照数の多いものがページランクが高いという程度の計算なので、Googleが付かっている本当のページランクではない。Wiki程度だとそれで十分機能する)

5

ページランクの大きいものは大きなフォントで表示しよう。

5

やったぞ。うまくいった。

5
 3014693100_9bf880781b
5

この本をこのタイミングで買って読んでいるとは。これがセレンディピティというやつか。

5
 セレンディピティ - WikipediaEXT
5
 セレンディピティ(英: serendipity)とは、何かを探している時に、探して
5
 いるものとは別の価値あるものを見つける能力・才能を指す言葉である。何か
5
 を発見したという「現象」ではなく、何かを発見をする「能力」のことを指す。
5
 (平たく云えば、ふとした偶然をきっかけに、幸運を掴む事。)
5

 

5

これで、前から欲しかった『各blogエントリページからblogのトップページ(!kiyoka.blog)へのリンク』も同時にサポートできた。

5

 

5

COMMENTとおりすがり

Sumibiのアクセス統計のページが403になってます。

5

COMMENTkiyoka

> Sumibiのアクセス統計のページが403になってます。

ありがとうございます。

暇をみて直しておきます。

0

comment (disabled)

5

5

 

5

 

5

kiyoka.2008_11_08[Jazz][音楽] ビル・エヴァンスのpianoの音

5

なぜピッチベンド機能の無いpianoで1/4音階が聞こえる気がするのか。

5

特にビル・エヴァンスのpianoからそんな音が聞こえる。

5

半音違いの鍵盤を同時に押さえているような気もする。メロディーの途中で、時間にすると一瞬だけどキャリーンという感じで重なるタイミングがある。

5

クラッシックでいうと、ショパンのpiano曲でも『別れの曲』などでそう聞こえる事がある。ピアニストにもよるのかも知れないけど。

5

何かの錯覚を利用しているのかな?

5

このDVDを見ながら、改めて不思議だなあと思った次第。

5
 B000JLQQ76  Oslo Concerts: Bill Evans Trio
5

絶対マッコイ・タイナーのピアノからはそんな音は聞こえないものなぁ。

5

Jazzマニアがいたら理由を教えて欲しい今日このごろです。

5

 

0

comment (disabled)

5

5

 

5

 

5

kiyoka.2008_11_06[OldType][Kahua][RSS] RSS feedの本文をHTML全文配信にした

5

RSS feedのdescriptionをHTML全文配信に

5

(kiyoka.2008_06_15 RSSのdescritptionを概要配信にするか全文配信にするか論争)で概要配信でとりあえず良いのでは無いかと書いたが、結局全文配信にした。

5

きっかけはGoogle Readerだった。

5

最近Google Readerを使い始めたのだが、imgタグも入ったHTMLの全文配信が便利ということがわかった。

5
 本ブログのRSS feedをGoogleReaderで見た画面
5
 2988547409_fe36dfae0b
5

調べてみると、はてなダイアリーもHTMLで全文配信していることがわかった。

5

Geekが使うBlogエンジンはこっちが主流になりつつあるということか。

5

OldTypeはGeekがターゲットなのでそちらに合わせておいて間違い無いだろう。

5

 

5

KahuaでHTML入りのRSS 2.0を配信するには

5

CDATAでくくる必要があると思っていたが、その必要は無かった。

5

こんなコードで、RSS 2.0がfeedできる。

5

 

5
;; define elements for RSS 2.0
5
(define-elements channel rss description lastBuildDate docs generator item pubDate author guid atom:link)
5
5
;; get-rss entry
5
(define (gen-rss/ base-url index-page entry-pages)
5
  (let* ((wikiname       (name-of index-page))
5
         (entry-pages    (if (null? entry-pages)
5
                             (list index-page)
5
                             entry-pages))
5
         (build-date-utc
5
          (last
5
           (sort
5
            (map
5
             (lambda (e)
5
               (utc-of
5
                (get-latest-log
5
                 (timeline-of e))))
5
             entry-pages))))
5
         (build-date-utc
5
          (- build-date-utc (* 60 5))))  ;; build date is 5 minutes ago from latest entry
5
    (rss/ (@/ (version "2.0")
5
              (xmlns:atom "http://www.w3.org/2005/Atom"))
5
          (channel/
5
           (atom:link/
5
            (@/ (href (string-append base-url "get-rss/" wikiname))
5
                (rel  "self")
5
                (type "application/rss+xml")))
5
           (title/                (string-append wikiname "::" (oldtype-first-line index-page)))
5
           (link/                 (string-append base-url "show-page/" wikiname))
5
           (description/          (oldtype-first-line index-page))
5
           (lastBuildDate/        (oldtype:utc->RFC822-date-string build-date-utc))
5
           (docs/                 "http://blogs.law.harvard.edu/tech/rss")
5
           (generator/            (string-append "OldType version " *oldtype-version*))
5
           (map/
5
            (lambda (e)
5
              (let* ((timeline (timeline-of e))
5
                     (lineno   (- (last (get-latest-lines timeline)) 5))
5
                     (uri      
5
                      (string-append base-url "show-page/" (uri-encode-string (name-of e))
5
                                     (if (< 1 lineno)
5
                                         (string-append "#" (number->string lineno))
5
                                         ""))))
5
                (item/
5
                 (title/            (string-append (name-of e) "::" (oldtype-first-line e)))
5
                 (description/
5

ポイントはココ。

5

<pre></pre>で囲んでHTML化している。

5

KahuaがRSSを出力する段階では、descriptionの中身はエスケープされているので< >は &lt; &gt;の様に実態参照に変換されるが、Google ReaderやSafariブラウザ、はてなRSSではちゃんとHTMLのタグとして認識される。

5
                  (string-append
5
                   "<pre>"
5
                   (string-join (get-rich-list e) "\n")
5
                   "</pre>"))
5
                 (link/             uri)
5
                 (guid/             uri)
5
                 (pubDate/          (oldtype:utc->RFC822-date-string
5
                                     (utc-of
5
                                      (get-latest-log timeline))))
5
                 (author/       (committer-of (get-latest-log timeline))))))
5
            entry-pages)
5
           ))))
5
5
5
(define-entry (get-rss wikiname)
5
  (let1 oldtype-page (oldtype:load-page (kahua-site-root) wikiname)
5
        (when/ oldtype-page
5
               (gen-rss/ 
5
                (format "http://~a/" (oldtype:get-arguments 'fqdn))
5
                oldtype-page
5
                (filter-map
5
                 (lambda (x)
5
                   (oldtype:load-page (kahua-site-root) (cdr x)))
5
                 (get-rss-entry-pages oldtype-page))))))
5

 

5

KahuaでRSS feedにCDATAで括ったHTMLを挿入する方法

5

とはいっても、ココログ等のように、RSSの本文をCDATAで括ってHTMLのタグがエスケープされないように配慮しているサービスも存在する。

5

理由は不明。昔はこのようにしないとちゃんとHTMLとして認識しないRSSリーダーがあったのかも知れない。

5

いつか、CDATAにしたい場合があるかも知れないので、一応そのやりかたをメモしておく。

5

下記の方法はKahua 1.0.7.1で動作したが、将来のKahuaでも動作するとは限らないので注意。

5

 

5
define-elementsで no-escape/ タグを定義しておく
5
;; define elements for RSS 2.0
5
(define-elements channel rss description lastBuildDate docs generator item pubDate author guid atom:link no-escape)
5

 

5
no-escape ノードを実装する
5
 このコードは Khau 1.0.7.1のserver.scmでコメントアウトされていたコード。
5
 自分のkahua アプリケーションのソースコード上で定義する。
5
;; Added no-esacpe element to Kahua framework
5
(define-element no-escape (attrs auxs contents context cont)
5
  (cont (list (apply make-no-escape-text-element contents))
5
        context))
5

ちなみに、no-escapeが一度実装されたが、思いなおしてコメントアウトされた経緯はcut-seaさんのページGaucheFest:cut-seaEXTに情報がある。たぶんコレだと思う。

5

 

5
RSSのdescriptionの箇所をno-escape/ で括ってエスケープされないようにする
5
                 (description/
5
                  (no-escape/
5
                   (string-append
5
                    "<![CDATA[<pre>"
5
                    (regexp-replace-all #/\]\]>/ 
5
                                        (string-join (get-plain-list e) "\n")
5
                                        "")
5
                    "</pre>]]>")))
5

 

0

comment (disabled)

5