Dev - LSP
Define LSP dev package.
(use-package emacs
:after uno-dev
:config
(provide 'uno-dev-lsp))
(use-package lsp-mode
:after uno-dev-lsp
:custom
(read-process-output-max (* 5 1024 1024))
(lsp-headerline-breadcrumb-segments '(file symbols))
(lsp-server-install-dir (uno-cache-path "lsp/server/"))
(lsp-session-file (uno-cache-path "lsp/session"))
:general
(uno-mode-leader-define
:keymaps 'lsp-mode-map
"a" '(lsp-execute-code-action :which-key "Execute action")
"h" '(:ignore t :which-key "Help")
"hh" '(lsp-describe-thing-at-point :which-key "Describe")
"R" '(lsp-workspace-restart :which-key "Restart")
"r" '(:ignore t :which-key "Refactor")
"rr" '(lsp-rename :which-key "Rename"))
:config
(uno/add-useless-buffer "\\*lsp-install")
(uno/add-useless-buffer "\\*lsp-log\\*")
(uno/handle-side-window "\\*lsp-help\\*"))
(use-package lsp-mode
:after (uno-dev-lsp which-key)
:hook
(lsp-mode . lsp-enable-which-key-integration))
(use-package lsp-ui
:after (uno-dev-lsp lsp-mode))
(use-package lsp-treemacs
:disabled
:after (uno-dev-lsp lsp-mode treemacs)
:config
(lsp-treemacs-sync-mode 1))