diff options
author | hogelog | 2008-11-29 19:41:11 +0000 |
---|---|---|
committer | hogelog | 2008-11-29 19:41:11 +0000 |
commit | 5db9aa3463889dc5936f7411035d3c62462a6a40 (patch) | |
tree | fff5c5c8d289fdd75ff18855062aca739bce2555 /peekpage.js | |
parent | 2f96dd864f410c3c75aba9c818b9270b4c303c9d (diff) | |
download | vimperator-plugins-5db9aa3463889dc5936f7411035d3c62462a6a40.tar.bz2 |
* add peekpage.js: peek page in commandline.
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@25363 d0d07461-0603-4401-acd4-de1884942a52
Diffstat (limited to 'peekpage.js')
-rw-r--r-- | peekpage.js | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/peekpage.js b/peekpage.js new file mode 100644 index 0000000..50aff9f --- /dev/null +++ b/peekpage.js @@ -0,0 +1,63 @@ +/** + * ==VimperatorPlugin== + * @name tmpview.js + * @description peek page in commandline + * @author hogelog + * @version 0.1 + * ==/VimperatorPlugin== + * + * COMMANDS: + * :peekpage {URL} -> Peek URL page in commandline + * :peeksrc {URL} -> Peek URL page source in commandline + * + */ +(function(){ + var multilineOutputWidget = document.getElementById("liberator-multiline-output"); + var outputContainer = multilineOutputWidget.parentNode; + + var option = { + bang: true, + completer: function (context) { + var complete = options.complete.replace(/[sS]/g, ''); + completion.url(context, complete); + }, + literal: 0 + }; + + function peekview(url){ + var win = multilineOutputWidget.contentWindow; + var doc = multilineOutputWidget.contentDocument; + var iframe = doc.createElement('iframe'); + iframe.src = url; + iframe.width = '100%'; + + if (outputContainer.collapsed) + doc.body.innerHTML = ""; + + doc.body.appendChild(iframe); + commandline.updateOutputHeight(true); + + win.scrollTo(0, doc.height); + commandline.updateMorePrompt(); + + win.focus(); + + modes.set(modes.COMMAND_LINE, modes.OUTPUT_MULTILINE); + } + + commands.addUserCommand(['peekpage'], + 'Peek Page in Commandline', + function (args){ + peekview(args.string); + }, option); + commands.addUserCommand(['peeksrc'], + 'Peek Page Source in Commandline', + function (args){ + var http = util.httpGet(args.string); + if (http){ + liberator.echo(http.responseText, commandline.FORCE_MULTILINE); + } + }, option); +})(); + +// vim: set fdm=marker sw=4 ts=4 et: |