diff options
Diffstat (limited to 'elpa/lsp-mode-20220505.630/lsp-ocaml.el')
-rw-r--r-- | elpa/lsp-mode-20220505.630/lsp-ocaml.el | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/elpa/lsp-mode-20220505.630/lsp-ocaml.el b/elpa/lsp-mode-20220505.630/lsp-ocaml.el new file mode 100644 index 0000000..b1e1003 --- /dev/null +++ b/elpa/lsp-mode-20220505.630/lsp-ocaml.el @@ -0,0 +1,84 @@ +;;; lsp-ocaml.el --- description -*- lexical-binding: t; -*- + +;; Copyright (C) 2020 emacs-lsp maintainers + +;; Author: emacs-lsp maintainers +;; Keywords: lsp, ocaml + +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see <https://www.gnu.org/licenses/>. + +;;; Commentary: + +;; LSP Clients for the Ocaml Programming Language. + +;;; Code: + +(require 'lsp-mode) + +(defgroup lsp-ocaml nil + "LSP support for OCaml, using ocaml-language-server." + :group 'lsp-mode + :link '(url-link "https://github.com/freebroccolo/ocaml-language-server")) + +(define-obsolete-variable-alias + 'lsp-ocaml-ocaml-lang-server-command + 'lsp-ocaml-lang-server-command + "lsp-mode 6.1") + +(defcustom lsp-ocaml-lang-server-command + '("ocaml-language-server" "--stdio") + "Command to start ocaml-language-server." + :group 'lsp-ocaml + :type '(choice + (string :tag "Single string value") + (repeat :tag "List of string values" + string))) + +(lsp-register-client + (make-lsp-client :new-connection (lsp-stdio-connection + (lambda () lsp-ocaml-lang-server-command)) + :major-modes '(reason-mode caml-mode tuareg-mode) + :priority -1 + :server-id 'ocaml-ls)) + +(defgroup lsp-ocaml-lsp-server nil + "LSP support for OCaml, using ocaml-lsp-server." + :group 'lsp-mode + :link '(url-link "https://github.com/ocaml/ocaml-lsp")) + +(define-obsolete-variable-alias 'lsp-merlin 'lsp-ocaml-lsp-server "lsp-mode 6.1") +(define-obsolete-variable-alias 'lsp-merlin-command 'lsp-ocaml-lsp-server-command "lsp-mode 6.1") + +(defcustom lsp-ocaml-lsp-server-command + '("ocamllsp") + "Command to start ocaml-language-server." + :group 'lsp-ocaml + :type '(choice + (string :tag "Single string value") + (repeat :tag "List of string values" + string))) + +(lsp-register-client + (make-lsp-client + :new-connection + (lsp-stdio-connection (lambda () lsp-ocaml-lsp-server-command)) + :major-modes '(reason-mode caml-mode tuareg-mode) + :priority 0 + :server-id 'ocaml-lsp-server)) + + +(lsp-consistency-check lsp-ocaml) + +(provide 'lsp-ocaml) +;;; lsp-ocaml.el ends here |