Git Product home page Git Product logo

alex-vscode's Introduction

alex-vscode

npm version Build Status Coverage Status

alex wrapper to easily integrate with Visual Studio Code language server

const alexVSCode = require('alex-vscode');
const {TextDocuments, createConnection} = require('vscode-languageserver');

const connection = createConnection(process.stdin, process.stdout);
const documents = new TextDocuments();

documents.onDidChangeContent(event => {
  event.document.getText(); //=> 'He is a video game maniac.'
  event.document.uri; //=> 'file:///Users/user/foo.txt'

  alexVSCode({event.document});
  /* =>
    [
      {
        message: '`He` may be insensitive, use `They`, `It` instead',
        range: {
          start: {
            character: 0,
            line: 0
          },
          end: {
            character: 2,
            line: 0
          }
        },
        severity: 2
      },
      {
        message: '`maniac` may be insensitive, use `fanatic`, `zealot`, `enthusiast` instead',
        range: {
          end: {
            character: 25,
            line: 0
          },
          start: {
            character: 19,
            line: 0
          }
        },
        severity: 1
      }
    ]
  */
});

documents.listen(connection);
connection.listen();

Installation

Use npm.

npm install alex-vscode

API

const alexVSCode = require('alex-vscode');

alexVSCode(textDocument)

textDocument: TextDocument
Return: Array<Diagnostic> (VS Code Diagnostics)

It checks a given document with alex and returns warnings as an array of Visual Studio Code compatible diagnostic objects.

When the document is a markdown file, it parses the text as markdown.

document.getText(); //=> '```\nHe is a video game maniac.\n```\n'
document.uri; //=> 'file:///Users/user/foo.markdown'

alexVSCode(document); //=> []

License

Copyright (c) 2015 - 2018 Shinnosuke Watanabe

Licensed under the MIT License.

alex-vscode's People

Contributors

shinnn avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.