A Day in the Life

2006-08-17

FireBug + emacs keybind

http://d.hatena.ne.jp/lurker/20060816/1155738697

すばらしい。欲を言えば、Ctrl + P などで戻った履歴をC-Kなどで消した際、もう一度その履歴に戻ったときに正常にまた履歴がみれたらいいな、と思いました。

退社

雨が降ったりやんだり忙しい天気だダ。メモ:明日は電車通勤

Re: fub con

JavaScriptからincludeする方法って無いんだっけ?なんで無いんだろう。

無いんですよね。死ねます。

ただ、UserScriptの適用はどうしても読み込み後になるため、body.onloadとかでは

使えないことになります。

なるほど、HTML 先頭で script 読み込んでくれる感じだとかなりうれしいんですが、ダメなんですね。

話がそれるけど、external経由でGM_xxxと同等の機能を提供して、

同じようにwindowのメソッドとかにしてしまえば(スクリプトとしては)GreaseMonkey完全互換も

可能なんだなあ。ちょっと面白いかも。

ワクワク!

globalの話はuser.jsの中で他の共通部を呼びたい、ってことかな?

や、user.js で共通で使いたいわけではないんです。

それと、エラー表示で

---- Error(不明なエラー) ----------------

と表示されるエラーの時に、通常の IE だとラインと文字位置が取得できるんですが、それって難しいでしょうか?

ダイアリーキーワードページで YouTube のサムネイルを貼り付ける GreaseMonkey

作ってみた。デヴェロッパIDが必要なので書き換えて使ってね☆、とかめどいよなー。あと responseXML の結果を XPATH でごにょるって $X() じゃできないんですかね!ちょっと試行錯誤してみたけどダメだったのですげぇ汚いやり方でデータを取得…。

ソース

// ==UserScript==
// @name        Hatena Keyword with YouTube
// @description Hatena Keyword with YouTube
// @namespace   http://subtech.g.hatena.ne.jp/secondlife/
// @include     http://d.hatena.ne.jp/keyword/*
// ==/UserScript==

(function () {
  var devId = 'あなたのでべろっぱーID';
  var keyword = $X("//h1")[0].innerHTML;

  function log() { return unsafeWindow.console.log(arguments) };

  function qw(str) { return str.split(/\s+/) };

  function main() {
    var data = [];

    searchTagYouTube(keyword, devId, onSuccess);
  };

  function onSuccess(req) {
     var d = document.createElement('div');
     d.innerHTML = req.responseText;
     var videos = d.getElementsByTagName('video')

     if(videos.length > 0) {
       var div = document.createElement('div');
       div.className = 'item';
       div.innerHTML = 'YouTube';
       for (var i = 0, length = Math.min(videos.length, 6); i < length; i++) {
         var video = videos[i];
         title = video.getElementsByTagName('title')[0].innerHTML;
         thumbnail_url = video.getElementsByTagName('thumbnail_url')[0].innerHTML;
         url = video.getElementsByTagName('url')[0].innerHTML;
         div.innerHTML += ''">'" title="' + title + '" alt="' + title + '">';
       }
       var item = $X('//div[@class="item"]')[0];
       item.parentNode.insertBefore(div, item);
     }
  };

  function searchTagYouTube(keyword, devId, onload) {
    var uri = 'http://www.youtube.com/api2_rest?method=youtube.videos.list_by_tag&dev_id=' + devId + '&tag=' + encodeURIComponent(keyword);
      GM_xmlhttpRequest({
        method: 'GET',
        url: uri,
        onload: onload,
        onerror: function(req) {
          log('error');
          log(req.responseText);
        }
      });
  };

  /*
   * function $X() by cho45 ( http://lowreal.net/ )
   * thx!!!!!!^^^;;;;;
   */
  function $X (exp, context) {
    if (!context) context = document;
    var resolver = function (prefix) {
      var o = document.createNSResolver(context)(prefix);
      return o ? o : (document.contentType == "text/html") ? "" : "http://www.w3.org/1999/xhtml";
    }
    var exp = document.createExpression(exp, resolver);

    var result = exp.evaluate(context, XPathResult.ANY_TYPE, null);
    switch (result.resultType) {
      case XPathResult.STRING_TYPE : return result.stringValue;
      case XPathResult.NUMBER_TYPE : return result.numberValue;
      case XPathResult.BOOLEAN_TYPE: return result.booleanValue;
      case XPathResult.UNORDERED_NODE_ITERATOR_TYPE: {
        result = exp.evaluate(context, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
        var ret = [];
        for (var i = 0, len = result.snapshotLength; i < len ; i++) {
          ret.push(result.snapshotItem(i));
        }
        return ret;
      }
    }
    return null;
  }

  main();
})();

はてブA

チェック方法変更してだいぶはやくなった。

LDR の ctrl + shift

ムキーとなる。これ使ってる人いるの?

stage6.divx.com は Rails ポイ

6 :名無しさん@お腹いっぱい。:2006/08/10(木) 23:15:58 ID:???0

Application error (Rails)って出ちゃうんだな

これが。。

http://pc7.2ch.net/test/read.cgi/streaming/1155176943/6

xo. header は

Date: Thu, 17 Aug 2006 00:29:42 GMT
Server: Apache
Set-Cookie: _session_id=8979c3788f0bc048d1fd256c840ed7ce; path=/
Cache-Control: no-cache
Content-Type: text/html; charset=ISO-8859-1

なので cookie の _session_id が ruby CGI デフォルトのだな。

のがじゅんさんのとこより。

出社

何でこんな人居るんだ?みんな早く来すぎだ!!!(ぇー

記事の一覧 >