rendered paste bodyfunction remove_duplicates_filter () {
var acc = {};
return function (x) {
if (acc[x]) return false;
acc[x] = 1;
return true;
};
}
function magick_options_completer (input, cursor_position, conservative) {
var completions;
try {
completions = get_pref ('conkeror.webjump.magick-options.cache').split (' ');
} catch (e) { }
if (! completions) {
try {
var content = yield send_http_request (
load_spec({uri: "http://imagemagick.org/script/command-line-options.php"}));
completions = content.responseText.match(/([a-z]+)(?=\">-\1<\/a>)/g).filter (remove_duplicates_filter ());
user_pref ('conkeror.webjump.magick-options.cache', completions.join (' '));
} catch (e) { }
}
yield co_return (
prefix_completer ($completions = completions)
(input, cursor_position, conservative));
}
define_webjump (
"magick-options",
"http://imagemagick.org/script/command-line-options.php#%s",
$completer = magick_options_completer);
clear_pref ('conkeror.webjump.magick-options.cache');