Changeset 38227 for lang/javascript
- Timestamp:
- 08/09/10 01:35:03 (3 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
lang/javascript/vimperator-plugins/trunk/twittperator.js
r38226 r38227 29 29 <description>Twitter Client using ChirpStream</description> 30 30 <description lang="ja">OAuth対応Twitterクライアント</description> 31 <version>1.0.8 </version>31 <version>1.0.8.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.1</version> 32 32 <minVersion>2.3</minVersion> 33 33 <maxVersion>2.4</maxVersion> … … 79 79 == FAQ == 80 80 - なんて読むんだ 81 知らん。トゥイットゥペレータと自分は勝手に読んでいる 81 知らん。トゥイットゥペレータと自分は勝手に読んでいる。 82 82 - 何のためのクライアント? 83 83 Vimperatorを使っていて、さくっと呟きたいとき用です(ぉ … … 88 88 - ぶっちゃけTL表示とか面倒だよね? 89 89 はい、がんばります・・・ 90 でかい表示領域と行の折り返し方法が確立できれば、もっと頑張れる気がします 90 でかい表示領域と行の折り返し方法が確立できれば、もっと頑張れる気がします。 91 91 - Growl GNTP との連携しないの? 92 92 プラグイン書きましょう。 … … 297 297 , 298 298 getParameter: function getParameter(parameters, name) { 299 if (parameters instanceof Array) { 300 for (var p = 0; p < parameters.length; ++p) { 301 if (parameters[p][0] == name) { 302 return parameters[p][1]; // first value wins 303 } 299 if (!parameters instanceof Array) { 300 return OAuth.getParameterMap(parameters)[name]; 301 } 302 for (var p = 0; p < parameters.length; ++p) { 303 if (parameters[p][0] == name) { 304 return parameters[p][1]; // first value wins 304 305 } 305 } else {306 return OAuth.getParameterMap(parameters)[name];307 306 } 308 307 return null; … … 911 910 accessor.token && accessor.tokenSecret) { 912 911 return true; 913 }else{ 914 return false; 915 } 912 } 913 return false; 916 914 }, 917 915 getAccessor: function() { … … 1122 1120 } 1123 1121 return tmp.join(arg_separator); 1124 } else if (typeof val !== "function") { 1122 } 1123 if (typeof val !== "function") { 1125 1124 return self.urlEncode(key) + "=" + self.urlEncode(val); 1126 } else {1127 throw new Error("There was an error processing for http_build_query().");1128 1125 } 1126 throw new Error("There was an error processing for http_build_query()."); 1129 1127 } 1130 1128 … … 1149 1147 if (str.indexOf("?", 0) > -1) str = str.split("?")[1]; 1150 1148 str = str.split("&"); 1151 for (var i = 0; str.length > i; i++) {1149 for (var i = 0; str.length > i; i++) { 1152 1150 itm = str[i].split("="); 1153 1151 if (itm[0] != "") { … … 1166 1164 let ChirpUserStream = (function() { 1167 1165 function extractURL(s) 1168 let (m = s.match(/https?:\/\/ [\S]+/))1166 let (m = s.match(/https?:\/\/\S+/)) 1169 1167 (m && m[0]); 1170 1168 … … 1247 1245 1248 1246 let data = sis.read(len); 1249 let lines = data.split(/\ n/);1247 let lines = data.split(/\r\n|[\r\n]/); 1250 1248 if (lines.length > 2) { 1251 1249 lines[0] = buf + lines[0]; … … 1259 1257 buf += data; 1260 1258 } 1261 } catch (e if / NS_ERROR_NET_RESET|NS_BASE_STREAM_CLOSED/(e)) {1259 } catch (e if /^(?:NS_ERROR_NET_RESET|NS_BASE_STREAM_CLOSED)$/(e)) { 1262 1260 liberator.echoerr('Twittperator: ChirpStream was stopped by ' + e.name + '.'); 1263 1261 restart(); … … 1291 1289 stop: stop, 1292 1290 addListener: function(func) listeners.push(func), 1293 removeListener: function(func) (listeners = listeners.filter(function (l) (l != func)))1291 removeListener: function(func) (listeners = listeners.filter(function(l) (l != func))) 1294 1292 }; 1295 1293 })(); // }}} … … 1318 1316 function showTL(s) { // {{{ 1319 1317 function userURL(name) 1320 ("http s://twitter.com/" + name);1318 ("http" + (setting.showTLWithHTTPURL ? "" : "s") + "://twitter.com/" + name); 1321 1319 1322 1320 let html = <style type="text/css"><![CDATA[ … … 1363 1361 liberator.echo(html, true); 1364 1362 } // }}} 1365 function detectLink (str) { // {{{1363 function detectLink(str) { // {{{ 1366 1364 let m = str.match(/https?:\/\/\S+/); 1367 1365 if (m) { … … 1391 1389 } // }}} 1392 1390 function getFollowersStatus(target, force, onload) { // {{{ 1393 function setRefresher() {1391 function setRefresher() { 1394 1392 expiredStatus = false; 1395 1393 if (statusRefreshTimer) … … 1483 1481 } // }}} 1484 1482 function openLink(text) { // {{{ 1485 let m = text.match(/.*?(https?:\/\/ [\S]+)/g);1483 let m = text.match(/.*?(https?:\/\/\S+)/g); 1486 1484 if (!m) 1487 1485 return; 1488 1486 1489 1487 let links = 1490 m.map(function (s) s.match(/^(.*?)(https?:\/\/[\S]+)/).slice(1)) .1491 map(function (ss) (ss.reverse(), ss.map(String.trim)))1488 m.map(function(s) s.match(/^(.*?)(https?:\/\/\S+)/).slice(1)) . 1489 map(function(ss) (ss.reverse(), ss.map(String.trim))) 1492 1490 selectAndOpenLink(links); 1493 1491 } // }}} … … 1565 1563 return RegExp( 1566 1564 '^' + 1567 this.command.map(function (c)1565 this.command.map(function(c) 1568 1566 let (r = util.escapeRegex(c)) 1569 (/^ [\W]$/(c) ? r : r + ' ')1570 ).join( /|/)1567 (/^\W$/(c) ? r : r + ' ') 1568 ).join("|" /* /|/ */) 1571 1569 ); 1572 1570 }, … … 1681 1679 if (m = args.literalArg.match(/(RT\s+)@.*$/)) { 1682 1680 Completers.name_id_text(context, args); 1683 } else if (m = tailMatch(/( ^|[\b\s])@[^@]*/, args.literalArg)) {1681 } else if (m = tailMatch(/(?:^|\b|\s)@[^@]*/, args.literalArg)) { 1684 1682 (m.index === 0 ? Completers.name_id : Completers.name)(context, args); 1685 1683 } … … 1733 1731 1734 1732 let matches = args.bang ? args.literalArg.match(/^(\s*[-+?])/) 1735 : args.literalArg.match(/(RT\s |)@/);1733 : args.literalArg.match(/(RT\s+|)@/); 1736 1734 if (!args.bang && !matches) 1737 1735 return; … … 1781 1779 statusValidDuration: parseInt(gv.twitperator_status_valid_duration || 90), 1782 1780 historyLimit: let (v = gv.twittperator_history_limit) (v === 0 ? 0 : (v || 1000)), 1781 showTLWithHTTPURL: gv.twittperator_show_tl_with_http_url, 1783 1782 }); 1784 1783 … … 1808 1807 ChirpUserStream.start(); 1809 1808 1810 __context__.onUnload = function () {1809 __context__.onUnload = function() { 1811 1810 accessor.set("history", history); 1812 1811 ChirpUserStream.stop();
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)