Coc.nvim: Fügen Sie Text Linter Support wie Alex und Proselint for Writers hinzu

Erstellt am 4. Juni 2020  ·  3Kommentare  ·  Quelle: neoclide/coc.nvim

Bezieht sich Ihre Funktionsanforderung auf ein Problem?
Ich habe alex und proselint , um mein Schreiben für eine Weile zu überprüfen, aber ich werde immer davon abgehalten, weil ich vim beenden und die ausführbare Datei für die Datei selbst ausführen muss, was wirklich ist ineffizient beim Schreiben eines langen Textes. Ich habe über ALE oder Syntastic nachgedacht, die laut README für alex und proselint verwendet werden können, um sie in vim zu verwenden, aber ich möchte kein anderes Flusen-Plugin nur für Text installieren, da ich es liebe coc mehr für andere Dinge.

Beschreiben Sie die gewünschte Lösung
Ich denke, es wäre schön, wenn jemand ein coc-settings.json-Sprachserver-Setup für die ausführbare Datei alex oder proselint herausfinden könnte. Noch besser ist eine Erweiterung für Textfussel, wie sie coc-clangd clangd .

Beschreiben Sie Alternativen, die Sie in Betracht gezogen haben
Wie gesagt, ich dachte an ALE und Syntastic, die laut README für alex und proselint Unterstützung haben. Aber ich konnte keine relevante Dokumentation zu Github finden, um dies zu erreichen, und ich möchte auch hier kein anderes Flusenprogramm nur für Texte, die mein Vim langsam machen.

Zusätzlicher Kontext
Abgesehen von alex und proselint gibt es auch Dinge wie GNU style und diction die ebenfalls funktionieren würden, aber ich persönlich denke alex und proselint ist (Bearbeiten: Sind ... siehe, deshalb brauche ich Textfussel) genauer und detaillierter.

help wanted

Hilfreichster Kommentar

Ich habe diese Konfiguration für alex erfunden. Möglicherweise müssen Sie den Befehl ändern, je nachdem, wie Sie ihn installiert haben.

"alex": {
    "command": "alexjs",
    "debounce": 200,
    "isStderr": true,
    "args": ["--stdin"],
    "offsetLine": 0,
    "offsetColumn": 0,
    "sourceName": "alex.js",
    "formatLines": 1,
    "formatPattern": [
        "^\\s*(\\d+):(\\d+)-(\\d+):(\\d+)\\s{2}([a-z]+)\\s{2}(.*?)\\s{2,}([a-z-]+)\\s{2,}([a-z-]+)$",
        {
            "line": 1,
            "column": 2,
            "endLine": 3,
            "endColumn": 4,
            "security" : 5,
            "message": 6
        }
    ],
    "securities" : {
        "warning": "warning",
        "error": "error"
    }
}

Sie können dies zu Ihrem diagnostic-languageserver.linters hinzufügen, um es mit coc-diagnostic .
Ich hoffe es hilft!

Alle 3 Kommentare

Vielen Dank an @chemzqm für diesen Link.
Ich habe es geschafft, proselint mit coc-diagnostic mit dieser Konfiguration zum Laufen zu bringen:

"diagnostic-languageserver.filetypes": {
    "text": ["proselint"]
},
"diagnostic-languageserver.linters": {
    "proselint": {
        "command": "proselint",
        "isStdout": true,
        "isStderr": false,
        "debounce": 100,
        "args": ["-"],
        "offsetLine": 0,
        "offsetColumn": 0,
        "sourceName": "proselint",
        "formatLines": 1,
        "formatPattern": [
            "^[^:]+:(\\d+):(\\d+):(\\s)(.*)$",
            {
                "line": 1,
                "column": 2,
                "security": 3,
                "message": 4
            }
        ],
        "securities": {
            " ": "info"
        }
    }
}

Ich arbeite immer noch an GNU diction , style und alex . Ich werde die Lösungen hier veröffentlichen, wenn ich fertig bin.

Ich habe diese Konfiguration für alex erfunden. Möglicherweise müssen Sie den Befehl ändern, je nachdem, wie Sie ihn installiert haben.

"alex": {
    "command": "alexjs",
    "debounce": 200,
    "isStderr": true,
    "args": ["--stdin"],
    "offsetLine": 0,
    "offsetColumn": 0,
    "sourceName": "alex.js",
    "formatLines": 1,
    "formatPattern": [
        "^\\s*(\\d+):(\\d+)-(\\d+):(\\d+)\\s{2}([a-z]+)\\s{2}(.*?)\\s{2,}([a-z-]+)\\s{2,}([a-z-]+)$",
        {
            "line": 1,
            "column": 2,
            "endLine": 3,
            "endColumn": 4,
            "security" : 5,
            "message": 6
        }
    ],
    "securities" : {
        "warning": "warning",
        "error": "error"
    }
}

Sie können dies zu Ihrem diagnostic-languageserver.linters hinzufügen, um es mit coc-diagnostic .
Ich hoffe es hilft!

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

npearson72 picture npearson72  ·  3Kommentare

skylite21 picture skylite21  ·  3Kommentare

andys8 picture andys8  ·  3Kommentare

zhou13 picture zhou13  ·  3Kommentare

tom-james-watson picture tom-james-watson  ·  3Kommentare