diff options
author | 2013-08-13 22:39:35 +0200 | |
---|---|---|
committer | 2013-08-13 22:39:35 +0200 | |
commit | f9f898e5586c58fc7cd4fbef88e3bdebf778a91c (patch) | |
tree | 748e401a9972b7fafb2a871b1e021b2d0ffeab7c /.conkerorrc/ext_restore.js | |
download | conkeror-f9f898e5586c58fc7cd4fbef88e3bdebf778a91c.tar.gz conkeror-f9f898e5586c58fc7cd4fbef88e3bdebf778a91c.zip |
Initial commit of my conkeror configuration in vcsh
Diffstat (limited to '.conkerorrc/ext_restore.js')
-rw-r--r-- | .conkerorrc/ext_restore.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/.conkerorrc/ext_restore.js b/.conkerorrc/ext_restore.js new file mode 100644 index 0000000..39b125e --- /dev/null +++ b/.conkerorrc/ext_restore.js @@ -0,0 +1,33 @@ +/// From http://conkeror.org/Tips#Restore_Killed_Buffer_Url +// I think by the time kill_buffer_hook runs the buffer is gone so I +// patch kill_buffer + +var kill_buffer_original = kill_buffer_original || kill_buffer; + +var killed_buffer_urls = []; + +kill_buffer = function (buffer, force) { + if (buffer.display_uri_string) { + killed_buffer_urls.push(buffer.display_uri_string); + } + + kill_buffer_original(buffer,force); +}; + +interactive("restore-killed-buffer-url", "Loads url from a previously killed buffer", + function restore_killed_buffer_url (I) { + if (killed_buffer_urls.length !== 0) { + var url = yield I.minibuffer.read( + $prompt = "Restore killed url:", + $completer = all_word_completer($completions = killed_buffer_urls), + $default_completion = killed_buffer_urls[killed_buffer_urls.length - 1], + $auto_complete = "url", + $auto_complete_initial = true, + $auto_complete_delay = 0, + $match_required); + + load_url_in_new_buffer(url); + } else { + I.window.minibuffer.message("No killed buffer urls"); + } + }); |