-
Notifications
You must be signed in to change notification settings - Fork 59
Refactor wish list #1094
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
At some point the server part should be in OCaml (#269). |
True, but all the above are feasible. I started working on an OCaml LSP some time ago: https://github.com/nojaf/rescript/tree/lsp. It is a lot of work, and I became a bit demotivated upon learning that the |
Yeah, that could be fun to have in the end. |
We probably want to switch from import {
createConnection,
TextDocumentSyncKind
} from 'vscode-languageserver/node';
import {
TextDocuments
} from 'vscode-languageserver';
import { TextDocument } from 'vscode-languageserver-textdocument';
const connection = createConnection();
const documents = new TextDocuments(TextDocument);
documents.listen(connection);
connection.onInitialize(() => ({
capabilities: {
textDocumentSync: TextDocumentSyncKind.Incremental
}
}));
connection.listen(); |
As mentioned here, it would be great to refactor the extension and LSP server. Here are some ideas to consider; please feel free to raise other points or challenge any listed:
incrementalCompilation.ts
and implement an interface to handle the differences between bsb and rewatch, as those checks are scattered throughout the code.semver
for more version checks.chokidar
from the LSP server and use the [DidChangeWatchedFiles Notification] instead.package.json
files, and the top one lacks aworkspaces
entry.yarn
as we do inrescript
compiler?CONTRIBUTING.md
, as it may no longer be accurate.Let me know your thoughts, @zth, @cometkim, @mediremi!
The text was updated successfully, but these errors were encountered: