Forráskód Böngészése

show signature in completion item label

Geequlim 8 éve
szülő
commit
d92d4d8c98
1 módosított fájl, 6 hozzáadás és 2 törlés
  1. 6 2
      src/config.ts

+ 6 - 2
src/config.ts

@@ -95,11 +95,12 @@ class Config {
           mi.insertText = insertAction(m.name)
           mi.filterText = m.name
           mi.sortText = m.name
-          mi.detail = `${classdoc.name}.${m.name}`;
+          mi.detail = m.return_type;
           let argstr = "";
           m.arguments.map(arg=>{
             argstr += `${arg.type} ${arg.name}${arg.default_value.length>0?'='+arg.default_value.length:''}${m.arguments.indexOf(arg)==m.arguments.length-1?'':', '}`;
           });
+          mi.label=`${m.name}(${argstr}) ${m.qualifiers}`;
           let mdoc = `${m.return_type} ${classdoc.name}.${m.name}(${argstr}) ${m.qualifiers}`;
           mdoc += " \n\n";
           mdoc += m.description;
@@ -145,7 +146,10 @@ class Config {
         const addScriptItems = (items, kind: CompletionItemKind, kindName:string = "Symbol", insertText = (n)=>n)=>{
           const _items: CompletionItem[] = [];
           for (let name of Object.keys(items)) {
-            const item = new CompletionItem(name, kind);
+            const signature = (script.signatures && script.signatures[name])?script.signatures[name]:"";
+            const item = new CompletionItem(name+signature, kind);
+            item.sortText = name;
+            item.filterText = name;
             item.detail = workspace.asRelativePath(path);
             item.insertText = insertText(name);
             item.documentation = (script.documents && script.documents[name])?script.documents[name]+"\r\n":"";