From d2ce6369b0185f9f37b99ff52ae144abc648c267 Mon Sep 17 00:00:00 2001 From: hybrid Date: Wed, 3 Jun 2026 11:32:08 +0300 Subject: upd: change to tcp mode --- sqf-mode.el | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/sqf-mode.el b/sqf-mode.el index 39fc04d..4d051c5 100644 --- a/sqf-mode.el +++ b/sqf-mode.el @@ -51,18 +51,25 @@ advanced features when available. "local" "global" "remoteExec" "remoteExecCall") 'words) (0 font-lock-keyword-face)))) - (sqf-lsp-setup) - (lsp-deferred)) -;;;###autoload -(defun sqf-lsp-setup () "Configure lsp-mode for SQF." - (add-to-list 'lsp-language-id-configuration '(sqf-mode . "sqf")) - (add-to-list 'lsp-server-programs '(sqf-mode "hemtt-language-server")) - (add-to-list 'lsp-project-roots "hemtt.toml")) + (require 'lsp-mode nil) + (lsp-deferred)) + +;; register hemtt-language-server (with-eval-after-load 'lsp-mode - (sqf-lsp-setup)) + (with-eval-after-load 'lsp-mode + (defun my/hemtt-server-start-fn (port) + `("hemtt-language-server" ,(number-to-string port))) + + (lsp-register-client + (make-lsp-client + :new-connection (lsp-tcp-server-command 'my/hemtt-server-start-fn) + :major-modes '(sqf-mode) + :priority 1 + :server-id 'hemtt-ls + :language-id "sqf")))) ;;;###autoload (add-to-list 'auto-mode-alist '("\\.sqf\\'" . sqf-mode)) -- cgit v1.3.1