From 43cf1d9ccf4fedcfe352e67dc4e8be8cf6b9b694 Mon Sep 17 00:00:00 2001 From: Joel Grunbaum <joelgrun@gmail.com> Date: Thu, 07 Oct 2021 04:10:31 +0000 Subject: [PATCH] Added go support --- config.org | 56 ++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 40 insertions(+), 16 deletions(-) diff --git a/config.org b/config.org index d32c055..9e39c06 100644 --- a/config.org +++ b/config.org @@ -772,7 +772,6 @@ (use-package flycheck :ensure t :diminish flycheck-mode - :hook (prog-mode . flycheck-mode) :config (global-flycheck-mode)) #+END_SRC @@ -813,20 +812,22 @@ LaTeX-mode rust-mode sh-mode - verilog-mode) . lsp)) + verilog-mode + go-mode) . lsp)) :init (setq lsp-keymap-prefix "C-c l") :commands lsp :config - (add-hook lsp-mode-hook lsp-enable-which-key-integration) + (add-hook 'lsp-mode-hook 'lsp-enable-which-key-integration) (setq read-process-output-max (* 1024 1024)) (setq lsp-completion-provider :capf) + (setq lsp-keep-workspace-alive 'nil) (add-to-list 'exec-path "~/.cargo/bin")) - + (use-package lsp-ui :ensure t :commands lsp-ui-mode) - + (use-package helm-lsp :ensure t :commands helm-lsp-workspace-symbol) @@ -987,7 +988,7 @@ company-dabbrev-code company-irony))) #+END_SRC -**** COMMENT Clang-format +**** Clang-format Automatically format buffer on save. #+BEGIN_SRC emacs-lisp (when (file-exists-p "/usr/share/clang/clang-format.el") @@ -1000,12 +1001,12 @@ "IndentCaseLabels: false}")) (setq-default clang-format-style clang-format-linux-style) (defun clang-format-on-save () - (add-hook 'before-save-hook 'clang-format-buffer)) - (add-hook 'c-mode-hook 'clang-format-on-save) - (add-hook 'c++-mode-hook 'clang-format-on-save)) + (add-hook 'before-save-hook 'clang-format-buffer nil t)) + (add-hook 'c-mode-hook 'clang-format-on-save nil t) + (add-hook 'c++-mode-hook 'clang-format-on-save nil t)) #+END_SRC *** emacs-lisp -**** COMMENT company +**** COMMENT Company Add slime backend. #+BEGIN_SRC emacs-lisp (add-hook 'emacs-lisp-mode-hook 'company-mode) @@ -1084,7 +1085,7 @@ (defun get-texcount-latest() (if (not(file-directory-p "~/.texcount")) (make-directory "~/.texcount")) - (url-copy-file "https://app.uio.no/ifi/texcount/download.php?file=texcount_3_1_1.zip" "~/.texcount/texcount.zip" 1) + (url-copy-file "https://app.uio.no/ifi/texcount/download.php?file=texcount_3_2_0_41.zip" "~/.texcount/texcount.zip" 1) (shell-command "unzip -o ~/.texcount/texcount.zip -d ~/.texcount") (add-to-list 'exec-path "~/.texcount/texcount.pl")) @@ -1270,15 +1271,37 @@ (add-hook 'flyckeck-mode-hook #'flycheck-rust-setup)) #+END_SRC -**** COMMENT Completion +**** Completion Code completion with racer. #+BEGIN_SRC emacs-lisp (use-package racer :ensure t :hook ((rust-mode . racer-mode) - (racer-mode . (eldoc-mode company-mode))) - :init - (setq racer-command "~/.cargo/bin/racer")) + (racer-mode . (eldoc-mode company-mode)))) +#+END_SRC +*** Go +**** Major mode +#+BEGIN_SRC emacs-lisp + (use-package go-mode + :ensure t + :config + (add-hook 'before-save-hook #'gofmt-before-save)) +#+END_SRC + +#+RESULTS: +: t + +**** Flycheck +#+BEGIN_SRC emacs-lisp + (use-package flycheck-golangci-lint + :ensure t + :config + (add-hook 'flycheck-mode-hook #'flycheck-golangci-lint-setup)) +#+END_SRC +**** Company +#+BEGIN_SRC emacs-lisp + (use-package company-go + :ensure t) #+END_SRC * Org mode ** Up to date org @@ -1368,8 +1391,9 @@ #+END_SRC ** Org export additions -*** COMMENT Pandoc +*** Pandoc Call pandoc on org buffer from org export. +Need to add ~#+OPTIONS: H:99~ to enable large level header exports. #+BEGIN_SRC emacs-lisp (use-package ox-pandoc :ensure t) -- Gitblit v1.9.3