aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sbmcommentsviewer.js30
1 files changed, 18 insertions, 12 deletions
diff --git a/sbmcommentsviewer.js b/sbmcommentsviewer.js
index cf9ca1d..8a1af07 100644
--- a/sbmcommentsviewer.js
+++ b/sbmcommentsviewer.js
@@ -76,10 +76,9 @@ SBMContainer.prototype = { //{{{
} else {
let xml = <table id="liberator-sbmcommentsviewer">
<caption style="text-align:left" class="hl-Title">{label}</caption>
- <tr/>
</table>;
let self = this;
- xml.*[xml.*.length()-1].* += (function(){
+ xml.* += (function(){
var thead = <tr/>;
format.forEach(function(colum){ thead.* += <th>{manager.format[colum] || '-'}</th>; });
var tbody = <></>;
@@ -437,6 +436,12 @@ var manager = {
}
}; //}}}
+var options = [
+ [['-type','-t'], commands.OPTION_STRING, function(str) (new RegExp('^['+[t for(t in manager.type)].join('') + ']+$')).test(str)],
+ [['-format','-f'], commands.OPTION_LIST,null, [[f,manager.format[f]] for (f in manager.format)]],
+ [['-count','-c'], commands.OPTION_NOARG],
+ [['-browser','-b'],commands.OPTION_NORARG]
+];
commands.addUserCommand(['viewSBMComments'], 'SBM Comments Viewer', //{{{
function(arg){ //{{{
var types = liberator.globalVariables.def_sbms || 'hdlz';
@@ -445,18 +450,16 @@ commands.addUserCommand(['viewSBMComments'], 'SBM Comments Viewer', //{{{
var url = buffer.URL;
for (let opt in arg){
switch(opt){
- case '-c':
case '-count':
countOnly = true;
break;
- case '-b':
case '-browser':
openToBrowser = true;
break;
- case '-t':
+ case '-type':
if (arg[opt]) types = arg[opt];
break;
- case '-f':
+ case '-format':
if (arg[opt]) format = arg[opt];
break;
case "arguments":
@@ -486,12 +489,15 @@ commands.addUserCommand(['viewSBMComments'], 'SBM Comments Viewer', //{{{
}
}, //}}}
{
- options: [
- [['-t','-type'], commands.OPTION_STRING],
- [['-f','-format'], commands.OPTION_LIST],
- [['-c','-count'], commands.OPTION_NOARG],
- [['-b','-browser'],commands.OPTION_NORARG]
- ]
+ argCount:"*",
+ options: options,
+ completer: function(context, args, special){
+ if (args.completeOpt)
+ return;
+
+ context.advance(args.completeStart);
+ completion.url(context, 'l');
+ }
}
); //}}}