2006/11/28

Blogger betaのフィード

JSON対応されたので改めて整理してみたのですが、こんな感じでしょうか。 http://{BLOG_NAME}.blogspot.com/feeds/{source}[?{option}[&{option}]] source : posts/{length}[/[-/[LABEL_NAME]]]|[POST_NUMBER/]comments/{length}[/] length : default|full|summary option : alt={format}|callback={FUNCTION_NAME} format : atom|rss|json|json-in-script
  • posts:ブログ全体のフィード。 LABEL_NAMEを指定すると指定されたラベルのフィード。 comments:ブログ全体のコメントのフィード。 POST_NUMBERを指定すると指定されたポストのコメントのフィード。 LABEL_NAMEが日本語の場合はHTTPエンコードが必要。
  • lengthにdefaultを設定するとfull又はsummaryのどちらかデフォルト設定が返される
  • altが未指定の場合、デフォルトはatom。
  • lengthの後ろ(又はaltの前)に"/"スラッシュは在っても無くてもいい(多分) ex) default/?alt=atomでも default?alt=atomでも問題なく表示される
  • LABEL_NAMEはcommentsのあとに指定した場合、エラーになる。
  • alt,callbackを複数指定した場合、エラーになる
  • callbackはalt=json-in-scriptの時以外(alt省略時含む)無視される(エラーにはならない)
  • alt=json-in-scriptとcallback=xxxの順番を逆にしても問題は無い
  • alt=json-in-scriptのときにcallbackを省略するとデフォルトで "callback=gdata.io.handleScriptLoaded"と指定した場合と同じになる

凡例

{}
必須の値。大文字は変数。小文字は選択肢。
[]
省略可能な値。大文字は変数。小文字は選択肢。
|
orと同義。|で区切られたいずれか一つを指定

beta.blogger.comやwww.blogger.comドメインのパターンは面倒なので割愛。

manの書式に似せて書きましたが間違えているかもしれません。この書き方の方が見やすいかと思ったのですが、割と複雑になってしまいました。

LABEL_NAMEがpostsの前か、POST_NUMBERの位置がcommentsの後ろなら、もっとわかり易い思うのですが。特定のラベルに付けられたコメント一覧が見たい、とか需要ないですかね。

参考:
clmemo@aka: Blogger Beta の各種フィードのまとめ
クリボウの Blogger Tips: Blogger beta のラベルフィード

2006/11/23

GMarksでGoogle Reader

GMarks | Firefox Add-ons | Mozilla Corporation Google ブックマークを表示するGMarksという拡張機能があります。 このGMarksの設定画面にGoogle Readerに関する項目があるのですが、使い方がさっぱりでした。ところが今日、GMarksのサイドバーを見ていたらこんなフォルダが。 単にGoogle Readerでスターをつけたサイトを表示するようです。
  • スターをつけたサイトをGoogle ブックマークの一部の様に見せます
  • ラベル名は設定画面から自由に変えられます
  • Google ブックマーク上にはブックマークされません
  • Google Reader上でスターを外すとGMarks上からも消えます
私はGoogle Readerのスターは「あとで読む」用に使っているので、これは使えるかもしれません。あとはGMarks上からスターが外せれば言うことなしですが… 余談ですが、GMarks上の表示位置はラベル名によります。アルファベット順でソートしているのであれば、ラベル名に"/"や"@"などの記号を付ければ上の方に表示されます。 個人的にはラベル名の先頭に"/"(スラッシュ)を付けるとディレクトリっぽく見えるし、上の方に来るのでお勧めです。辞書サイトや路線検索サイト、検索サイト、などよく使うサイトは"/Dictionary"など、スラッシュで始まるラベルを付けています。

GoogleがJSON対応?

Google Data APIs (Beta) Developer's Guide - Using JSON with Google Data APIs Google カレンダーやBloggerのフィードXMLのURLにパラメータとして ?alt=json をつけるとJSON形式で返ってくるようです。 Firefox(2.0)で表示すると XML パースエラー: 整形式になっていません。 と表示されますが、[ページのソースを表示]すれば中身はちゃんとJSONのようです。 これはちょっと、いろいろ面白いかも。

2006/11/19

igの検索窓をごにょごにょ

clmemo@aka: Google Personalized Home の検索窓を隠して画面を広く使う No Search ガジェット Gmail driveのように非公式でリスクのあるものを、あまりおおっぴらに勧めるのには抵抗があります。これもその類のハックだと思うのですが、確かにigの検索窓は邪魔です。 私も会社のPCは1280x1024なのですが、自宅のPCはノートなので1024x768です。縦が768だと私の表示したいモジュールを入れるとスクロールバーが出てしまい一画面に収まりません。なので検索窓は消しています。検索したい時はgooglebarを使いますし。 私が使っている方法はFirefox限定で、端末側に設定するので他の端末で開くと適用されません。これは私がたまたまそのような設定の方が好ましかったためです。
  • CSSにはサイトを指定してスタイルを適用させる方法があります
    参考:Firefox 1.5でのCSSスタイル指定向上
  • CSSにはIDを指定してスタイルを適用させる方法があります
    参考:とほほのスタイルシート入門(基礎知識):ID属性
  • スタイルにdisplay:noneと指定するとページ上に表示されなくなります。
  • igの検索窓を包含するDIVのidは"sf"です
  • Firefoxはユーザ指定のスタイルシートを記録できます
  • ユーザ指定スタイルシートの編集を楽にするStylishという拡張機能があります
私はgooglebarで検索するので検索窓の表示/非表示切り替えは考慮していなかったのですが、CSSにはマウスオーバー時のみ表示させるといったこともできます(targetにスタイルを指定)のでこの辺の応用で何とかなりそうな気もします。 関連情報としてこんなのもあります。これもStylishを使うと適用が楽になります。 Going My Way: Google Calendarの土日の色を変更して見やすくする方法

2006/11/18

DocsからBloggerへ投稿

Google Docsのブログ投稿機能がまたちょっと更新されていました。
  • 日本語の文字化け解消
  • Blogger betaに対応
Blogger で表を書く方法で次のように書かれています。 テーブルタグを書かずにすんだら、もっともっと便利なんですが…。 確かに書きたいのはエントリーであってHTMLではありませんからね。 で、思い出したのですがそもそも参照元のwebholicさんでは 「Docsの表をコピーできるが、Bloggerの編集画面では一部機能が実装されていない」 という話でした。つまりDocsにはHTMLを書かずに表を書く機能があるわけです。 なら、Docsで書いてBloggerに投稿すればいいわけで、思い出したのが Google DocsからBlogger betaへの投稿 Bloggerのダッシュボードが日本語化されたのが原因か、Docsのブログ投稿機能がBlogger betaに対応したのが原因か知りませんが、日本語が文字化けしなくなっていました。 また、今までは [My own server/custom]を選んでからBlogger beta用の設定をしていましたが、いつの間にか [Hosted provider]に"Blogger.com(beta version)"が追加されていました。これを選べばAPIのURLを知らなくてもBlogger betaへ投稿できます。 ただし、まだDocsのタイトル、ラベルはBlogger betaのエントリーのタイトル、エントリーのラベルには反映されません。 前回の投稿から約一月で一個改善されたということは来月には・・・?

2006/11/13

BloggerでTableの編集

webholic: BloggerでテーブルをWYSIWYG編集できそう BloggerのエディタでHTMLのTable編集できたんですね。 <table><tr><td></td></tr></table> この位手書きするとTBODYタグなどが自動で挿入されます セルにフォーカスを合せると上と左に上図の様な操作用のマークが表示されます。 また、TABLEタグにborder="1"を入れないとデフォルトで枠は表示されません。HTML直書き派の人には今更な話ですしょうか。 Wordに埋め込む表なんかもそうですが文中のテーブルというのは操作にちょっと癖がありますね。 今のところあまり使う機会がないのですがコレはコレで便利そうなので覚えておいて損はなさそうです。

2006/11/09

iPox更新

アドレスバーの色で触れたばかりですが、iPoxというFirefox用のテーマが更新されたようです。 細かい部分に色々と手が入っているようですが、件のhttps接続に失敗した際の表示も変更されていました。 Google Notebookの拡張で、"Enable 'Note This' Button"をオンにするとテキスト選択時に"+"を表示するためにhttp接続を行うようです。 今までのiPoxではアドレスバーが赤くなるだけでだったのですが、今回のバージョンではよりわかりやすくなっています。

2006/11/05

アドレスバーの色

やや愚痴です。 2.0で動いているアドオンにiPoxが動かなくなったと書きましたが、iPoxで気に入っていた点にhttps接続した際のアドレスバーのカラー表示があります。 iPoxでは 1.https→緑 2.http→白 3.httpsにhttp混じり→赤 「httpsにhttp混じり」というのはig等のようにページ内の一部を非同期に読み込んだ際に、部分的にhttpとなっている場合です。 デフォルトのテーマでは 1.オレンジ 2.白 3.白 となっています。 多分https接続が警戒色の強いオレンジなのは「httpsだから安全」なのではなく、「httpsでないといけない(個人情報などを入力する)ようなページ」という意味なのだと思います。 https接続が確立されているから安心できるわけではないと思うので、それはかまわないと思うのですが、https接続が崩れている時に白というのがどうも納得いきません。 本来セキュアな接続を希望していながらそれが確立されなかった場合はやはり赤にすべきだと思うのですが。「失敗した」ことに気づきにくいと思うのですが。

ソースコードにスタイル指定

ソースコードにスタイル指定の訂正です。 1:CODE { 2: display : block; 3: overflow-x : auto; 4: white-space : pre; 5: border : 1px dotted $borderColor; 6: margin : 4px 0; 7: padding : 2px; 8: font-family : monospace; 9: font-size : x-small; 4行目が抜けていました。 pre表示しないとoverflow-xをautoにしてもスクロールせずに折り返されてしまいました。

Labelをクラウドに、のソース

テンプレートのメモだけで、肝心のカスタマイズ部分のソースを張り忘れていました。 Labelをクラウドにのソースです。 CSSに以下の指定を追加します。CSSはHeadタグの最後です。Bodyの開始タグを検索した方が早いかもしれません。 1:/* Lable Cloud 2:----------------------------------------------- */ 3:#labelCloud a { 4: text-decoration: none; 5: white-space: nowrap; 6: line-height: 130%; 7:} 8:#labelCloud span.label_xs { 9: font-size : 75%; 10: opacity : 0.2; 11:} 12:#labelCloud span.label_s { 13: font-size : 90%; 14: opacity : 0.4; 15:} 16:#labelCloud span.label_m { 17: font-size : 120%; 18: opacity : 0.6; 19:} 20:#labelCloud span.label_l { 21: font-size : 150%; 22: opacity : 0.8; 23:} 24:#labelCloud span.label_xl { 25: font-size : 200%; 26: opacity : 1.0; 27:} 次にラベルウィジェットを以下に置き換えます。 1:<b:widget id='Label1' locked='false' title='Labels' type='Label'> 2:<b:includable id='main'> 3: <b:if cond='data:title'> 4: <h2><data:title/></h2> 5: </b:if> 6: <div class='widget-content'> 7: <span id='labelCloud'> 8: <b:loop values='data:labels' var='label'> 9: <b:if cond='data:blog.url == data:label.url'> 10: <data:label.name/> 11: <b:else/> 12: <b:if cond='data:label.count > 20'> 13: <a expr:href='data:label.url'><span class='label_xl' expr:title='data:label.count'><data:label.name/></span></a> 14: <b:else/><b:if cond='data:label.count > 10'> 15: <a expr:href='data:label.url'><span class='label_l' expr:title='data:label.count'><data:label.name/></span></a> 16: <b:else/><b:if cond='data:label.count > 5'> 17: <a expr:href='data:label.url'><span class='label_m' expr:title='data:label.count'><data:label.name/></span></a> 18: <b:else/><b:if cond='data:label.count > 1'> 19: <a expr:href='data:label.url'><span class='label_s' expr:title='data:label.count'><data:label.name/></span></a> 20: <b:else/> 21: <a expr:href='data:label.url'><span class='label_xs' expr:title='data:label.count'><data:label.name/></span></a> 22: </b:if></b:if></b:if></b:if> 23: </b:if> 24: </b:loop> 25: </span> 26: 27: <b:include name='quickedit'/> 28: </div> 29:</b:includable> 30:</b:widget> idが"Label1"かどうかは、その人のカスタマイズ状況によって違うと思うので適宜変更してください。 結構泥臭いif-elseでゴリゴリ書いています。"data:label.count > n"の部分を書き換えてラベルのサイズを調整しています。エントリ数が多い方はこの数を100,70,50,20,10などに調整して下さい。分岐点の数字に根拠はありません。その時のラベルが適当にそれっぽく見える数字を選びました。 当然ながら、テンプレートが壊れても当方は責任を負いかねます。

2.0で動いているアドオン

メインバージョンの変更は自動更新されないのじゃないか、と思い自宅のPCだけちょっと前に2.0にしました。 ○:問題なし △:Nightly使えば何とか ×:Nightly使ってもダメ ○IE Tab タブごとにIEで開くかFFで開くか切り替えられます。 BloggerのアカウントがGoogleと統合されてしまったため、ブログ用サブアカウントで常時ログインしているアカウントのCookieを消さないようにするため使っています。 △CopyURL+ クリップボードにコピーするブックマークレットがFlashのバージョンアップで動かなくなってしまったので、代わりに入れてみました。 URLやタイトルをクリップボードにコピーしてくれます。書式は色々いじれるみたいです。 ○dragdropupload ファイルパスを指定するテキストボックスに、ファイルをドラッグするとフルパスが入ります。Gmailにファイル添付したり、GooglePageにファイルアップロードしたり、Bloggerのテンプレートをアップロードしたりするのに便利です。 ○Gmail Manager Gmailに別アカウントでリログインしてもigの方はうまくリログされていたなかったり、であまり使っていません。使っていませんが、問題なく動くようです。 ○Gmarks これが一番使ってます。Googleブックマークをサイドバーに表示してくれます。 1.about:configで"gmarks.keys.sidebar.key"を変更すれば表示/非表示を切り替えるショートカットキーを変更できます(変更しても良いのかどうかは知りません)。私の入れている別の拡張とキーがバッティングしたので変更しました。 2.Homeキーを二回押すと、Googleデスクトップサーチのクイック検索ボックスに似た入力欄が開き、ブックマークを検索できます。 3.Firefoxのブックマーク追加画面(Ctrl+D)にタブが追加され、FirefoxのブックマークかGoogleブックマークに追加するのか簡単に切り替えられます。 4.GoogleReaderに追加する際にデフォルトラベルが設定できます。と書いてありますが使い方が良くわかりません。 他にもインポートしたりエクスポートしたり多機能です。割とマメに更新されます。 ○Google Bookmarks Button Gmarks導入後あまり使わなくなってしまったのですが、2.0対応されているようです。 ○Google Notebook 問題なく使えています。 ○Google Toolbar for Firefox 主にマウスオーバー辞書用ですが、問題なく使えています。 ○googlebar (多分)問題なく使えています。 △MenuX 正式に2.0対応はしていないようですが、Nightlyで使えます。 全てのツールバーに閉じるボタンが設置できます。ファイルメニューを消すのに使っています。ファイルメニューを消したままこの拡張をアンインストールすると厄介なので気をつけてください。 私の環境だと、スリープから復帰した後ファイルメニューの上部に空白が1段分表示されたり、ファイルメニューの表示切替(Ctrl+5)を使うと、「タブが一つしかない時にタブバーを表示しない」機能がオンになってしまったりと若干問題もあります。色々同時に入れてしまったので複合要素だと思いますが。 ○MouseGestures あまり使わないのですが、ためしに入れてみました。どちらかというと機能自体より実装の方が気になります。 主に使うのは↑↓↑のキャッシュ無視リロードくらいです。Ctrl+Rの方が早くて正確ですが。 ○Nightly Tester Tools 上記の△はこれがないと動きません。 ×iPox(テーマ) 気に入っていたのですが、コレが動かないのが一番痛いです。Nightlyで無理やり適用したら思いっきり表示が崩れました。他のsafari風テーマはブックマークツールバーのfaviconが表示されないので代わりがありません。

ソースコードにスタイル指定

文中に埋もれたり、折り返したりで見づらかったのでソースコード用のスタイル指定をテンプレートに入れてみました。 /* Source Code ----------------------------------------------- */ CODE { display : block; overflow-x : auto; border : 1px dotted $borderColor; margin : 4px 0; padding : 2px; font-family : monospace; font-size : x-small; } CODE:first-line { line-height : 0; } ソースコードは<CODE>で括ってあるという前提です。 first-lineを消しているのは、改行を<BR>に置き換える設定だと、 <CODE> function main() {・・・ と書いた時に、1行改行が入ってしまうためです。 <CODE>function main() {・・・ と書けばいいのですが、昔書いたものを修正するのは面倒なので、CSSで小細工してみました。 してはみたのですが、Bloggerのテンプレートに入れるとなぜか効いていません… なぜ効かないのかはそのうち調べたいと思います。