diff --git a/modules/lang/sh/README.org b/modules/lang/sh/README.org index b2821e7bf..eb20a541a 100644 --- a/modules/lang/sh/README.org +++ b/modules/lang/sh/README.org @@ -9,6 +9,7 @@ This module adds support for shell scripting languages. * Table of Contents :TOC: - [[#install][Install]] - [[#dependencies][Dependencies]] + - [[#module-flags][Module Flags]] * Install ** Dependencies @@ -17,3 +18,6 @@ This module has several soft dependencies: + ~shellcheck~ Enables shell script linting. + ~bashdb~ Enables debugging for bash scripts. + ~zshdb~ Enables debugging for zsh scripts. ++ ~bash-language-server~ Enables LSP support. +** Module Flags ++ ~+lsp~ to add support Language server protocol. diff --git a/modules/lang/sh/config.el b/modules/lang/sh/config.el index f8853aa37..395cca3ac 100755 --- a/modules/lang/sh/config.el +++ b/modules/lang/sh/config.el @@ -17,6 +17,9 @@ (set-electric! 'sh-mode :words '("else" "elif" "fi" "done" "then" "do" "esac" ";;")) (set-repl-handler! 'sh-mode #'+sh/open-repl) + (when (featurep! +lsp) + (add-hook 'sh-mode-hook #'lsp!)) + (setq sh-indent-after-continuation 'always) ;; [pedantry intensifies] @@ -52,6 +55,7 @@ (use-package! company-shell :when (featurep! :completion company) + :unless (featurep! +lsp) :after sh-script :config (set-company-backend! 'sh-mode '(company-shell company-files))