mirror of
https://github.com/jimeh/.emacs.d.git
synced 2026-02-19 13:46:41 +00:00
feat(language/go): configure modes for go.mod and go.work files
This commit is contained in:
@@ -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.
|
||||
|
||||
@@ -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))
|
||||
|
||||
Reference in New Issue
Block a user