(lsp-completion-mode . my/lsp-mode-setup-completion)
:custom
(lsp-completion-provider :none) ;; we use Corfu!
+ :config
+ (add-to-list 'lsp-file-watch-ignored-directories "[/\\\\]venv\\'")
)
-;; Provides visual help in the buffer
-;; For example definitions on hover.
-;; The `imenu` lets me browse definitions quickly.
+#+END_SRC
+** LSP mode
+#+BEGIN_SRC emacs-lisp
+;; provides visual help in the buffer
+;; for example definitions on hover.
+;; the `imenu` lets me browse definitions quickly.
(use-package lsp-ui
:defer t
+ :after lsp-mode
:config
- (setq lsp-ui-sideline-enable nil
+ (setq lsp-ui-sideline-enable t
lsp-ui-doc-delay 2)
:hook (lsp-mode . lsp-ui-mode)
:bind (:map lsp-ui-mode-map
- ("C-c i" . lsp-ui-imenu)))
-;; Language server for Python
-;; Read the docs for the different variables set in the config.
+ ("c-c i" . lsp-ui-imenu)))
+#+END_SRC
+*** LSP Pyright -- Python language server
+#+BEGIN_SRC emacs-lisp
+;; language server for python
+;; read the docs for the different variables set in the config.
(use-package lsp-pyright
:defer t
:config
(use-package python-mode
:delight Py π
:hook
- (python-mode . pyenv-mode)
+ (python-mode . pyvenv-mode)
(python-mode . flycheck-mode)
(python-mode . blacken-mode)
(python-mode . yas-minor-mode)
(python-mode . anaconda-mode)
)
-(use-package pyenv-mode
+(use-package pyvenv
+ :delight
:after python-mode
)
(use-package blacken
- :delight β
+ :delight
:after python-mode
+ :commands (blacken-buffer)
:config
(setq-default blacken-fast-unsafe t)
)
*** Black
#+begin_src emacs-lisp :tangle yes
(use-package python-black
- :demand t
+ :delight
+ :commands (python-black-buffer python-black-statement)
:after python)
#+end_src
*** Sphinx Documentation
:bind (:map python-mode-map
("C-c C-n" . numpydoc-generate)))
(use-package sphinx-doc
+ :delight π
:config
- (sphinx-doc-mode t)
(setq sphinx-doc-include-types t)
:after python
- :hook (python-mode . sphinx-doc)
+ :hook (python-mode . sphinx-doc-mode)
)
(use-package python-docstring
:delight
:hook (python-mode . python-docstring-mode)
)
#+end_src
+*** Anaconda Mode (Documentation lookup and completion)
+#+BEGIN_SRC emacs-lisp
+(use-package anaconda-mode
+ :delight
+ :after python
+)
+#+END_SRC
** Go language
#+BEGIN_SRC emacs-lisp
(use-package go-mode
(use-package org
:delight (org-mode "ΓΈ")
:mode ("\\.\\(org\\|org_archive\\|txt\\)\\'" . org-mode)
- :bind (("C-c l" . org-store-link)
+ :bind (("C-c l l" . org-store-link)
("C-c a" . org-agenda)
("C-c b" . org-iswitchb))
#+END_SRC