diff --git a/modules/lang/zig/config.el b/modules/lang/zig/config.el index f598a5db2..733223254 100644 --- a/modules/lang/zig/config.el +++ b/modules/lang/zig/config.el @@ -1,32 +1,32 @@ ;;; lang/zig/config.el -*- lexical-binding: t; -*- (after! projectile - (pushnew! projectile-project-root-files "build.zig")) + (add-to-list 'projectile-project-root-files "build.zig")) ;; -;; zig-mode +;;; Packages (use-package! zig-mode :hook (zig-mode . rainbow-delimiters-mode) :config - ;; Disable zig-mode's default format on save behaviour. - (setq zig-format-on-save nil) + (setq zig-format-on-save (featurep! :editor format +onsave)) + + (when (featurep! +lsp) + (add-hook 'zig-mode-local-vars-hook #'lsp!)) + + (when (featurep! :checkers syntax) + (flycheck-define-checker zig + "A zig syntax checker using the zig-fmt interpreter." + :command ("zig" "fmt" (eval (buffer-file-name))) + :error-patterns + ((error line-start (file-name) ":" line ":" column ": error: " (message) line-end)) + :modes zig-mode) + (add-to-list 'flycheck-checkers 'zig)) + (map! :localleader :map zig-mode-map "b" #'zig-compile "f" #'zig-format-buffer "r" #'zig-run "t" #'zig-test-buffer)) - -(when (featurep! +lsp) - (add-hook 'zig-mode-local-vars-hook #'lsp!)) - -(when (featurep! :checkers syntax) - (flycheck-define-checker zig - "A zig syntax checker using the zig-fmt interpreter." - :command ("zig" "fmt" (eval (buffer-file-name))) - :error-patterns - ((error line-start (file-name) ":" line ":" column ": error: " (message) line-end)) - :modes zig-mode) - (add-to-list 'flycheck-checkers 'zig))