this post was submitted on 16 Nov 2023
1 points (100.0% liked)

Emacs

310 readers
2 users here now

A community for the timeless and infinitely powerful editor. Want to see what Emacs is capable of?!

Get Emacs

Rules

  1. Posts should be emacs related
  2. Be kind please
  3. Yes, we already know: Google results for "emacs" and "vi" link to each other. We good.

Emacs Resources

Emacs Tutorials

Useful Emacs configuration files and distributions

Quick pain-saver tip

founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] cradlemann@alien.top 1 points 11 months ago (1 children)

You setup looks not so optimal. Here is mine

(use-package go-mode
  :ensure t
  :mode "\\.go\\'"
  :preface
  (defun vd/go-lsp-start()
               (add-hook 'before-save-hook #'lsp-format-buffer t t)
               (add-hook 'before-save-hook #'lsp-organize-imports t t)
               (lsp-deferred)
               )
  :hook
  (go-ts-mode . vd/go-lsp-start)
  :bind
  (:map go-ts-mode-map
        ("RET" . newline-and-indent)
        ("M-RET" . newline)
        )
  :config
  (add-to-list 'exec-path "~/.local/bin")
  (setq lsp-go-analyses '(
                          (nilness . t)
                          (shadow . t)
                          (unusedwrite . t)
                          (fieldalignment . t)
                                       )
        lsp-go-codelenses '(
                          (test . t)
                          (tidy . t)
                          (upgrade_dependency . t)
                          (vendor . t)
                          (run_govulncheck . t)
                                       )
        )
)

(use-package go-tag
  :ensure t
)

(use-package godoctor
  :ensure t
)
[–] 404cn@alien.top 1 points 11 months ago (1 children)

It's wired after I config go-ts-indent-offset to 4, the indent after } and ) still indent 8 spaces(I think it's from electric-indent-mode), and content after treesit-check-indent also use 8 spaces, but bind RET to newline-and-indent is a workaround for me now, thanks.

[–] 404cn@alien.top 1 points 11 months ago (1 children)

Sorry, but after type ( it still indent current line to 8 space(not RET), I'm going to report a bug to emacs devel.

[–] cradlemann@alien.top 1 points 11 months ago

It works fine with (electric-indent-mode -1) and

  :custom
  (go-ts-mode-indent-offset 4)