def run
folders = @params[:workspaceFolders].map do |folder|
folder => { uri:, }
@server.uri_to_path(uri)
end
@server.add_workspaces(folders)
respond(
capabilities: {
textDocumentSync: {
openClose: true,
change: 2,
},
hoverProvider: true,
definitionProvider: true,
typeDefinitionProvider: true,
completionProvider: {
triggerCharacters: [".", ":"],
},
codeLensProvider: {
resolveProvider: false,
},
renameProvider: {
prepareProvider: false,
},
executeCommandProvider: {
commands: [
"typeprof.createPrototypeRBS",
"typeprof.enableSignature",
"typeprof.disableSignature",
],
},
referencesProvider: true,
},
serverInfo: {
name: "typeprof",
version: TypeProf::VERSION,
},
)
log "TypeProf for IDE is started successfully"
end