ãã®ããã«
å¼ç¨æ©è½ã使ã£ã¦ä¼ããããã¨ã表ç¾ããã¨ãã£ã¦ããã¾ãããï¼ï¼
ã§ãããã¡ãã¡ãã¦ã¹ã横ã«åããã¦ãã®ããã«ãã«ãããã§ãï¼ãã«ãã«ãããã§ãï¼
ãèªç±ã«ã使ããã ãã
// ==UserScript== // @name Quote Matome // @namespace http://d.hatena.ne.jp/amachang/ // @include http://* // ==/UserScript== (function(f) { // Greasemonkey ãã prototype ããããããªã㯠unsafeWindow.location.href = 'javascript:(' + f + ')();void(0);' })(function() { // ã¯ã¦ã¹ã¿ä½¿ã£ã¦ãªããã¼ã¸ if (!window.Hatena || !Hatena.Star) return; // uri ãã Hatena.Star.Entry ã®ã¤ã³ã¹ã¿ã³ã¹ãåå¾ããããã®è¾æ¸ Hatena.Star._entryMap = {}; // Hatena.Star.Star ã® quote ããããã£ã _quote ããããã£ã«å¤ãã Hatena.Star.EntryLoader.entries.forEach(function(e) { // ã¤ãã§ã«è¾æ¸ã«ç»é² Hatena.Star._entryMap[e.uri] = e; e.stars.forEach(function(s) { s._quote = s.quote; delete s.quote; }); }); // Hatena.Star.Star ã« quote ã»ãã¿ã¼ãä½ã Hatena.Star.Star.prototype.__defineSetter__('quote', function(quote) { return this._quote = quote; }); // Hatena.Star.Star ã«ã²ãã¿ã¼ãä½ã Hatena.Star.Star.prototype.__defineGetter__('quote', function() { // èªåèªèº«ãæå±ãã Hatena.Star.Entry ãåå¾ãã return Hatena.Star._entryMap[this.entry.uri]. // ã¹ã¿ã¼ãåå¾ stars. // åãååã®ã¹ã¿ã¼ã ãæ½åº filter(function(s) { return s.screen_name == this.screen_name }, this). // å¼ç¨ãæã£ã¦ããã¹ã¿ã¼ãæ½åº filter(function(s) { return s._quote }). // å¼ç¨æåã®æ½åº map(function(s) { return s._quote }). // çµå join(' '); }); });