support shell lsp
diff --git a/server/lsp-server.py b/server/lsp-server.py
index a56e021..29a6654 100644
--- a/server/lsp-server.py
+++ b/server/lsp-server.py
@@ -59,10 +59,19 @@
)
+class ShellWebSocketHandler(LanguageWebSocketHandler):
+ proc = process.Subprocess(
+ ['bash-language-server', 'start'],
+ stdin=subprocess.PIPE,
+ stdout=subprocess.PIPE
+ )
+
+
if __name__ == "__main__":
app = web.Application([
(r"/python", PythonWebSocketHandler),
- (r"/sql", SQLWebSocketHandler)
+ (r"/sql", SQLWebSocketHandler),
+ (r"/shell", ShellWebSocketHandler)
])
app.listen(3001)
ioloop.IOLoop.current().start()
diff --git a/studio/components/monaco/index.tsx b/studio/components/monaco/index.tsx
index b014373..7d4cb46 100644
--- a/studio/components/monaco/index.tsx
+++ b/studio/components/monaco/index.tsx
@@ -87,7 +87,7 @@
name: 'Studio Language Client',
clientOptions: {
// use a language id as a document selector
- documentSelector: ['python', 'sql'],
+ documentSelector: ['python', 'sql', 'shell'],
// disable the default error handler
errorHandler: {
error: () => ({ action: ErrorAction.Continue }),