diff options
Diffstat (limited to 'bitly.js')
-rw-r--r-- | bitly.js | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/bitly.js b/bitly.js new file mode 100644 index 0000000..28fa211 --- /dev/null +++ b/bitly.js @@ -0,0 +1,48 @@ +// ==VimperatorPlugin== +// @name Bit.ly +// @description-ja Bit.ly で短縮URLを得る +// @license Creative Commons 2.1 (Attribution + Share Alike) +// @version 1.0 +// @minVersion 1.2 +// @maxVersion 2.0pre +// ==/VimperatorPlugin== +// + +(function () { + + function bitly (uri, callback) { + let req = new XMLHttpRequest(); + req.onreadystatechange = function(){ + if (req.readyState != 4) + return; + if (req.status == 200) + return callback && callback(req.responseText, req); + else + throw new Error(req.statusText) + }; + req.open("GET", 'http://bit.ly/api?url=' + uri, callback); + req.send(null); + return !callback && req.responseText; + } + + // commands.removeUserCommand('bitly'); + commands.addUserCommand( + ['bitly'], + 'Copy bitly url', + function () { + bitly(buffer.URL, function (short) { + alert(short); + util.copyToClipboard(short); + liberator.echo('`' + short + "' was copied to clipboard."); + }); + } + ); + + // 外から使えるように + liberator.plugins.bitly = { + get: bitly, + }; + +})(); + + |