diff --git a/modules/languages/siren-golang.el b/modules/languages/siren-golang.el index e431c5a..b85cf81 100644 --- a/modules/languages/siren-golang.el +++ b/modules/languages/siren-golang.el @@ -10,6 +10,7 @@ (require 'siren-flycheck) (require 'siren-lsp) (require 'siren-origami) +(require 'siren-prog-mode) (require 'siren-projectile) (require 'siren-reformatter) (require 'siren-tree-sitter) @@ -25,10 +26,21 @@ :hook (go-mode . siren-go-mode-setup) + (go-dot-mod-mode . siren-go-dot-mod-mode-setup) + (go-dot-work-mode . siren-go-dot-mod-mode-setup) :preface + (defgroup siren-go nil + "Siren: go-mode configuration." + :group 'go) + + (defcustom siren-go-tab-width 4 + "Tab width to set in all Go related modes." + :type 'number + :group 'siren-go) + (defun siren-go-mode-setup () - (setq-local tab-width 4 + (setq-local tab-width siren-go-tab-width company-minimum-prefix-length 1) (when (fboundp 'highlight-symbol-mode) @@ -40,6 +52,11 @@ (origami-mode t) (subword-mode t)) + (defun siren-go-dot-mod-mode-setup () + (run-hooks 'prog-mode-hook) + (setq-local tab-width siren-go-tab-width) + (subword-mode t)) + (defun siren-define-golines-format-mode () ;; Setup golines formatter for manual use - on save formatting is handled by ;; lsp-mode. diff --git a/themes/siren-doom-themes-overrides-theme.el b/themes/siren-doom-themes-overrides-theme.el index 9c4e32f..f58b454 100644 --- a/themes/siren-doom-themes-overrides-theme.el +++ b/themes/siren-doom-themes-overrides-theme.el @@ -143,6 +143,11 @@ '(symbol-overlay-face-8 :background (doom-blend cyan bg 0.2) :distant-foreground fg-alt) + ;; go-mode + '(go-dot-mod-module-name :inherit font-lock-constant-face) + '(go-dot-mod-module-version :inherit font-lock-type-face) + '(go-dot-mod-module-semver (&inherit go-dot-mod-module-version)) + ;; dired+ '(diredp-dir-heading :foreground (doom-color magenta)) '(diredp-dir-name :foreground (doom-lighten magenta 0.25))