投稿した記事を編集できるようになりました
機能拡張でリストを作った後はタイトルの編集しかできなかったのですが、装飾や内容の編集・リスト内の並び替え・個別エントリーの削除をできるようにしました。それと、新規に記事をつくるか既存のリストに追加するかを選んで投稿できるようにしました。今回の修正に伴って投稿済みエントリーの装飾がリセットされてしまっているのですが、テスト投稿以外で色などを使っている人はいないようだったのでたぶん問題ないと思います。他人の投稿を自由に編集できる点は火種になりそうな感じですが、システム的にはありという線で。
次は画像や動画の展開を実装予定です。それからちゃんと見れるサンプルなどを作ろうと思います。なんかtwitterのHTMLの構造が安定してないっぽくてちょっと困る。
OpenIDに対応しました
主にプロフィール画像の取り扱いが楽という理由でtwitterを使った認証のみを採用していたのですが、twitterとアイデンティティを共有したくない人もいるだろうとか、ドメインが管理しにくいとか、ドメインにアンダースコアが入ってしまってかなり良くないとか、id:Serious さんから要望をもらったなどの理由により、OpenIDを使ったログインに対応しました。
ログイン画面はこんな感じになっています。なんではてなOpenID2.0に対応してないの。初回ログイン時にはサブドメインとなるユーザ名をきかれます。あとtwitter認証以外ではプロフィール画像をとれないので、「プロフィール設定」から設定してもらえるとよい具合になります。
ユーザページでjavascriptを書けることについて
scrapiでは「カスタマイズ」ページから自分のサイトのHTMLを自由に編集する事ができます。javascriptやflashでも制限なく書けます。それはセキュリティ上大丈夫なのか、という話。
ログインや記事の編集などは www.scrapi.jp ドメイン上で行うようになっています。cookieはドメインwww.scrapi.jpで保持しています。ユーザページは [ユーザ名].scrapi.jp ドメインになっていて、カスタマイズしたHTMLはここで表示されます。そのため、ユーザページからは閲覧者の認証情報は得られません。右下にお気に入りなどのメニューが出るのですが、これは www.scrapi.jp ドメインのページを iframe で表示しているので、ユーザページのHTMLに書かれたjavascriptからは参照できません。
以上のことから、ユーザが自分のページでjavascriptを書けても問題がないと判断しています。ただ、www.scrapi.jpに対してセキュリティ上の危険がないにしても、通常のHTMLと同じだけの危険はあります。具体的な例で言うと、hamachiya2.scrapi.jp にアクセスすることは hamachiya.com にアクセスするのと同じくらいの危険性があります。これにたいして手を打つべきかどうかはちょっとわからないので考えておきます。
ここに書かれた内容について、誤りの指摘やご意見などありましたらコメントなどいただけると助かります。
対応サイトの追加について
例えばはてぶとか発言小町とかをささっと追加してもいいんだけど、できればユーザ側でも追加できるようにしたい。ページから抽出するだけならなんとかなりそうだけど、プレビューとかHTMLの表示とかはどうするのと考えるとよくわからない。まあそこらへんはしばらくハードコードでやっておいて、そのほかの部分を実用レベルにもってくのが先かなー。
任意のページを引用できるようになりました
表示しているページから文を引用したエントリーを作れるようにしました。
また、エントリー挿入ボタンから「テキスト」を選ぶと、プレインテキストを挿入できます。
記事の先頭に説明文を入れる、などの用途を想定しています。いまはテキストのみですが、編集画面でwysiwygのエディタを出して任意のHTMLを使えるようにする予定です。
新機能を使うにはFirefox機能拡張の更新が必要です。放っておけば勝手に更新されますが、メニューの「ツール」→「アドオン」から「更新を確認」ボタンを押せばすぐに更新されます。使わないのに更新うざい、という方は削除してしまってください。
あと、これにあわせてデフォルトテンプレートに以下のCSSを追加しています。
.entry .type-quote .entry-content { margin-left: 0px; padding: 0.2em 0 0.2em 8px; border-left: solid 3px #4da2c3; } .entry .type-quote .entry-meta { font-size: 90%; margin-top: 0.3em; }
すでに自分のサイトを製作している方はホームの「カスタマイズ」から「初期状態に戻す」を押して保存するか、良い感じにCSSを修正するかしてもらえると表示がまともになります。
2chのまとめを作る
twitterについては http://www.scrapi.jp/intro に書いたので、2ちゃんねるのまとめ記事の作り方を説明します。
現在のscrapi拡張は、2chを直接ブラウザで見た場合、及びFirefoxの2chブラウザ拡張 Chaika で見た場合でのみ使えるようになっています。今回はchaikaを使って説明します。直接ブラウザで見た場合も手順はこれと同じです。
まずchaikaでまとめたいスレッドを表示して、引用したいレスのレス番号のところをscrapiサイドバーにドラッグします。
これで1の発言が取り込まれました。質問スレなので、まず1の人の他の発言を抽出します。
発言を右クリックして「このIDで現在のページから抽出」を選択。それから1の全発言をレスポンス設定にします。
全選択してから「レスポンスにする」を選択。レスポンス設定は単に発言がインデントされるだけです。見た目はscrapiの「カスタマイズ」メニューからCSSで変更できるので後で説明します。続けて、この1の人がレスをつけている先の発言を取り込みます。
1が目立つように太字にしてみましょう。1の発言を右クリックして「このIDを選択」した後、「太字にする」を選びます。
これでまとめが完了しました。メニューの一番左のアップロードボタンを押して、タイトルを設定して投稿すると完成です。
http://wanpark.scrapi.jp/scraps/8
簡単!!
できたので公開します
Firefoxの機能拡張を使ってtwitter/2chをまとめて公開、という形で作ってみました。具体的な使い方は http://www.scrapi.jp/intro で。
公開される部分は露骨にtumblrっぽい感じになってます。追々tumblrみたいにテキストとか画像とかもエントリーとして追加できるようにしていきたいです。あと名前がrubyのモジュール名とかぶっているという話ですが、もうメンテされていないみたいなので大丈夫、なんじゃない、かな?
togetterについて
togetter使いにくい、というのが作るにいたった動機の一つにあるのですが、独立したユーザのサイトが作られることでちょっと違った感じになってしまったかもしれません。twitterユーザにはtogetterのように全体に埋め込まれたほうが気軽にできてしっくりくるんじゃないかなーと思います。favやコメントはできるようになっているので、あとこれにほってんとりとかユーザ情報ページとかを作ったら似たような感じになるのかもしれませんけど。
投稿のしかたもちょっと敷居が高いですね。webのインターフェース作らないと。