From e1b2af4e400ecae38fc8890879b91515ba3c2451 Mon Sep 17 00:00:00 2001 From: Vaino Kauppila Date: Thu, 10 Sep 2026 14:43:08 +0300 Subject: Add lexical-binding cookie, guard Verilog LSP on verible binary - -*- lexical-binding: t; -*- on line 1 removes the startup warning; verified the config loads cleanly under lexical binding. - Register the verible client and hook lsp into verilog-mode only when verible-verilog-ls exists; previously opening Verilog files errored trying to spawn the missing binary. --- emacs.el | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) (limited to 'emacs.el') diff --git a/emacs.el b/emacs.el index fbed920..9cd984b 100644 --- a/emacs.el +++ b/emacs.el @@ -1,4 +1,4 @@ -;;; .emacs --- My .emacs config file +;;; .emacs --- My .emacs config file -*- lexical-binding: t; -*- ;;; Commentary: Optimized configuration by Claude ;;; Code: @@ -233,16 +233,18 @@ TeX-mode LaTeX-mode) . lsp-deferred))) -;; LSP for Verilog -(with-eval-after-load 'lsp-mode - (add-to-list 'lsp-language-id-configuration '(verilog-mode . "verilog")) - (lsp-register-client - (make-lsp-client - :new-connection (lsp-stdio-connection "verible-verilog-ls") - :major-modes '(verilog-mode) - :server-id 'verible-ls))) - -(add-hook 'verilog-mode-hook 'lsp) +;; LSP for Verilog (only when the verible server is actually installed) +(if (executable-find "verible-verilog-ls") + (progn + (with-eval-after-load 'lsp-mode + (add-to-list 'lsp-language-id-configuration '(verilog-mode . "verilog")) + (lsp-register-client + (make-lsp-client + :new-connection (lsp-stdio-connection "verible-verilog-ls") + :major-modes '(verilog-mode) + :server-id 'verible-ls))) + (add-hook 'verilog-mode-hook 'lsp)) + (message "verible-verilog-ls not found; Verilog LSP disabled")) (use-package vhdl-mode :defer t -- cgit v1.3