diff --git a/content/completion.js b/content/completion.js index 760a010c..7bf407d4 100644 --- a/content/completion.js +++ b/content/completion.js @@ -204,7 +204,7 @@ liberator.Completion = function () //{{{ * If @m is provided, return the @mth value of element @o * of the stack entey at @n. */ - let get = function (n, m, o) + let get = function get(n, m, o) { let a = stack[n >= 0 ? n : stack.length + n]; if (m == undefined) @@ -215,13 +215,13 @@ liberator.Completion = function () //{{{ function buildStack(start) { /* Push and pop the stack, maintaining references to 'top' and 'last'. */ - let push = function (arg) + let push = function push(arg) { top = [i, arg, [i], [], [], []]; last = top[CHAR]; stack.push(top); } - let pop = function (arg) + let pop = function pop(arg) { if (top[CHAR] != arg) throw new Error("Invalid JS"); @@ -329,7 +329,7 @@ liberator.Completion = function () //{{{ lastIdx = i; } - this.complete = function (string) + this.complete = function complete(string) { try { @@ -583,7 +583,7 @@ liberator.Completion = function () //{{{ // returns the longest common substring // used for the 'longest' setting for wildmode - getLongestSubstring: function () + getLongestSubstring: function getLongestSubstring() { if (substrings.length == 0) return ""; @@ -599,7 +599,7 @@ liberator.Completion = function () //{{{ // generic filter function, also builds substrings needed // for :set wildmode=list:longest, if necessary - filter: function (array, filter, matchFromBeginning, favicon) + filter: function filter(array, filter, matchFromBeginning, favicon) { if (!filter) return [[a[0], a[1], favicon ? a[2] : null] for each (a in array)]; @@ -612,7 +612,7 @@ liberator.Completion = function () //{{{ return result; }, - cached: function (key, filter, generate, method) + cached: function cached(key, filter, generate, method) { if (!filter && cacheFilter[key] || filter.indexOf(cacheFilter[key]) != 0) cacheResults[key] = generate(filter); @@ -625,7 +625,7 @@ liberator.Completion = function () //{{{ // discard all entries in the 'urls' array, which don't match 'filter // urls must be of type [["url", "title"], [...]] or optionally // [["url", "title", keyword, [tags]], [...]] - filterURLArray: function (urls, filter, filterTags) + filterURLArray: function filterURLArray(urls, filter, filterTags) { var filtered = []; // completions which don't match the url but just the description @@ -698,7 +698,7 @@ liberator.Completion = function () //{{{ // generic helper function which checks if the given "items" array pass "filter" // items must be an array of strings - match: function (items, filter, caseSensitive) + match: function match(items, filter, caseSensitive) { if (typeof filter != "string" || !items) return false; @@ -720,10 +720,10 @@ liberator.Completion = function () //{{{ ////////////////////// COMPLETION TYPES //////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////{{{ - bookmark: function (filter) [0, liberator.bookmarks.get(filter)], + bookmark: function bookmark(filter) [0, liberator.bookmarks.get(filter)], // FIXME: items shouldn't be [[[a], b]], but [[a, b]] and only mapped if at all for bLCS --mst - buffer: function (filter) + buffer: function buffer(filter) { var items = []; var num = getBrowser().browsers.length; @@ -761,7 +761,7 @@ liberator.Completion = function () //{{{ return [0, buildLongestCommonSubstring(items, filter)]; }, - command: function (filter) + command: function command(filter) { var completions = []; @@ -778,9 +778,9 @@ liberator.Completion = function () //{{{ return [0, buildLongestStartingSubstring(completions, filter)]; }, - dialog: function (filter) [0, this.filter(liberator.config.dialogs || [], filter)], + dialog: function dialog(filter) [0, this.filter(liberator.config.dialogs || [], filter)], - environment: function (filter) + environment: function environment(filter) { let command = WINDOWS ? "set" : "export"; let lines = liberator.io.system(command).split("\n"); @@ -795,10 +795,10 @@ liberator.Completion = function () //{{{ return [0, this.filter(vars, filter)]; }, - event: function (filter) [0, this.filter(liberator.config.autocommands, filter)], + event: function event(filter) [0, this.filter(liberator.config.autocommands, filter)], // provides completions for ex commands, including their arguments - ex: function (str) + ex: function ex(str) { this.filterString = ""; this.parenMatch = null; @@ -834,7 +834,7 @@ liberator.Completion = function () //{{{ // TODO: support file:// and \ or / path separators on both platforms // if "tail" is true, only return names without any directory components - file: function (filter, tail) + file: function file(filter, tail) { let [matches, dir, compl] = filter.match(/^((?:.*[\/\\])?)(.*?)$/); // dir == "" is expanded inside readDirectory to the current dir @@ -869,7 +869,7 @@ liberator.Completion = function () //{{{ }catch(e){liberator.dump(e)} }, - help: function (filter) + help: function help(filter) { var files = liberator.config.helpFiles || []; var res = []; @@ -896,11 +896,11 @@ liberator.Completion = function () //{{{ return [0, this.filter(res, filter)]; }, - history: function (filter) [0, liberator.history.get(filter)], + history: function history(filter) [0, liberator.history.get(filter)], get javascriptCompleter() javascript, - javascript: function (str) + javascript: function _javascript(str) { try { @@ -913,14 +913,14 @@ liberator.Completion = function () //{{{ } }, - macro: function (filter) + macro: function macro(filter) { var macros = [item for (item in liberator.events.getMacros())]; return [0, this.filter(macros, filter)]; }, - search: function (filter) + search: function search(filter) { let [, keyword, args] = filter.match(/^\s*(\S*)\s*(.*)/); let keywords = liberator.bookmarks.getKeywords().map(function (k) [k[0], k[1], k[3], k[2]]); @@ -953,7 +953,7 @@ liberator.Completion = function () //{{{ }, // XXX: Move to bookmarks.js? - searchEngineSuggest: function (filter, engineAliases) + searchEngineSuggest: function searchEngineSuggest(filter, engineAliases) { this.filterString = filter; if (!filter) @@ -1003,7 +1003,7 @@ liberator.Completion = function () //{{{ return [0, completions]; }, - sidebar: function (filter) + sidebar: function sidebar(filter) { var menu = document.getElementById("viewSidebarMenu"); var nodes = []; @@ -1014,7 +1014,7 @@ liberator.Completion = function () //{{{ return [0, this.filter(nodes, filter)]; }, - stylesheet: function (filter) + stylesheet: function stylesheet(filter) { var completions = liberator.buffer.alternateStyleSheets.map( function (stylesheet) [stylesheet.title, stylesheet.href || "inline"] @@ -1040,7 +1040,7 @@ liberator.Completion = function () //{{{ // may consist of search engines, filenames, bookmarks and history, // depending on the 'complete' option // if the 'complete' argument is passed like "h", it temporarily overrides the complete option - url: function (filter, complete) + url: function url(filter, complete) { this.filterString = filter; var completions = []; @@ -1071,7 +1071,7 @@ liberator.Completion = function () //{{{ { completionService.stopSearch(); completionService.startSearch(filter, "", historyResult, { - onSearchResult: function (search, result) { + onSearchResult: function onSearchResult(search, result) { historyResult = result; historyTimer.tell(); if (result.searchResult <= result.RESULT_SUCCESS) @@ -1085,14 +1085,14 @@ liberator.Completion = function () //{{{ return [start, completionCache.concat(historyCache)]; }, - userCommand: function (filter) + userCommand: function userCommand(filter) { var commands = liberator.commands.getUserCommands(); commands = commands.map(function (command) [command.name, ""]); return [0, this.filter(commands, filter)]; }, - userMapping: function (filter, modes) + userMapping: function userMapping(filter, modes) { // TODO: add appropriate getters to l.mappings var mappings = []; diff --git a/content/compose/compose.xul b/content/compose/compose.xul new file mode 100644 index 00000000..2a83a44c --- /dev/null +++ b/content/compose/compose.xul @@ -0,0 +1,43 @@ + + + + + + + + + + + + + diff --git a/content/compose/liberator.dtd b/content/compose/liberator.dtd new file mode 100644 index 00000000..4631750f --- /dev/null +++ b/content/compose/liberator.dtd @@ -0,0 +1,6 @@ + + + + + + diff --git a/content/liberator.xul b/content/liberator.xul index f2662221..981c5b0b 100644 --- a/content/liberator.xul +++ b/content/liberator.xul @@ -29,7 +29,9 @@ the terms of any one of the MPL, the GPL or the LGPL. }}} ***** END LICENSE BLOCK ***** --> - + +]> -