diff --git a/modules/lib/defuns-go.el b/modules/lib/defuns-go.el new file mode 100644 index 000000000..d035e7db0 --- /dev/null +++ b/modules/lib/defuns-go.el @@ -0,0 +1,18 @@ +;;; defuns-go.el + +;; TODO Implement narf:go-get-package +(defun narf--go-get-package ()) + +;;;###autoload +(defun narf:go-test-run-all () + (interactive) + (async-shell-command (format "cd '%s' && go test" (narf/project-root)))) + +;;;###autoload +(defun narf:go-test-run-package () + (interactive) + (error "Not yet implemented") + (async-shell-command (format "cd '%s' && go test %s" (narf/project-root) (narf--go-get-package)))) + +(provide 'defuns-go) +;;; defuns-go.el ends here diff --git a/modules/module-go.el b/modules/module-go.el index d8b43862b..6ac31a13b 100644 --- a/modules/module-go.el +++ b/modules/module-go.el @@ -5,10 +5,14 @@ :interpreter "go" :init (add-hook! go-mode '(emr-initialize flycheck-mode)) + (build-for! go-mode "go build") :config (bind! :map go-mode-map :n "gd" 'godef-jump - :n "gD" 'godef-describe) + :n "gD" 'godef-describe + :n "tr" 'narf:go-test-run-all + :n "ta" 'narf:go-test-run-all + :n "ts" 'narf:go-test-run-package) (mapc (lambda (x) (let ((command-name (car x))