A language server for Mojom IDL. It supports:
mojom-lsp is tested on Visual Studio Code with vscode-mojom extension and Emacs with eglot.
mojom-lsp requires stable Rust to build. Run the following command to install mojom-lsp
.
```sh
mojom-lsp-server
binary.$ cargo install mojom-lsp ```
Be sure to include the binary to your $PATH
.
mojom-lsp assumes that your LSP client sends rootUri
in the initialize
request. rootUri
should be a path that contains the src
directory of your Chromium working directory.
mojom-lsp itself doesn't provide syntax highlighting for now. You need to configure your editor to get syntax highlighting.
Use vscode-mojom extension.
The Chromium repository provides basic mojom support.
An easy way to get syntax highliting is to use define-generic-mode
like below:
lisp
;; Mojom
(require 'generic)
(define-generic-mode mojom-mode
;; comments
'("//" ("/*" . "*/"))
;; keywords
'("module" "import" "struct" "union" "enum" "interface")
;; font-locks
nil
;; auto-mode
nil
;; hooks
nil
"Major mode for mojom")
(add-to-list 'auto-mode-alist '("\\.mojom$" . mojom-mode))