CXuesong / MwLanguageServer

A .NET Language Server of Wikitext for VSCode. Work in progress.
Apache License 2.0
8 stars 2 forks source link

Cannot show auto-completion for keywords starting with `#` #1

Open CXuesong opened 7 years ago

CXuesong commented 7 years ago

Client request:

{
    "id": 8,
    "method": "textDocument/completion",
    "params": {
        "textDocument": {
            "uri": "file:///.../_private/Untitled-1.mediawiki"
        },
        "position": {
            "line": 0,
            "character": 5
        }
    },
    "jsonrpc": "2.0"
}

Server response:

{
    "id": 8,
    "result": {
        "isIncomplete": true,
        "items": [
            {
                "label": "#if",
                "kind": 14,
                "detail": "Evaluates a test string and determines whether or not it is empty.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "#if"
            },
            {
                "label": "#ifeq",
                "kind": 14,
                "detail": "Compares two strings and determines whether they are identical.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "#ifeq"
            },
            {
                "label": "Tocright",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Tocright"
            },
            {
                "label": "Navbox",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Navbox"
            },
            {
                "label": "Portal bar",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Portal bar"
            },
            {
                "label": "Temporary",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Temporary"
            },
            {
                "label": "Navbox subgroup",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Navbox subgroup"
            },
            {
                "label": "LT",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "LT"
            },
            {
                "label": "Override",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Override"
            }
        ]
    },
    "jsonrpc": "2.0"
}

But nothing is shown in the editor. sharp-if

On the other hand, if I type something starting with letter, the auto-completion functions as expected. disp

Client request:

{
    "id": 11,
    "method": "textDocument/completion",
    "params": {
        "textDocument": {
            "uri": "file:///.../_private/Untitled-1.mediawiki"
        },
        "position": {
            "line": 0,
            "character": 6
        }
    },
    "jsonrpc": "2.0"
}

Server response:

{
    "id": 11,
    "result": {
        "isIncomplete": true,
        "items": [
            {
                "label": "DISPLAYTITLE",
                "kind": 14,
                "detail": "Format the current page's title header. The value must be equivalent to the default title: only capitalization changes to certain parts of the title (not all) and replacing spaces with underscores are allowed.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "DISPLAYTITLE"
            },
            {
                "label": "Tocright",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Tocright"
            },
            {
                "label": "Override",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Override"
            },
            {
                "label": "Portal bar",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Portal bar"
            },
            {
                "label": "Temporary",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Temporary"
            },
            {
                "label": "LT",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "LT"
            },
            {
                "label": "Navbox subgroup",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Navbox subgroup"
            },
            {
                "label": "Navbox",
                "kind": 3,
                "detail": "Inferred page information.",
                "documentation": null,
                "sortText": null,
                "filterText": null,
                "insertText": null,
                "insertTextFormat": 1,
                "textEdit": null,
                "additionalTextEdits": null,
                "command": null,
                "data": "Navbox"
            }
        ]
    },
    "jsonrpc": "2.0"
}