diff --git a/configuration.org b/configuration.org index 948e57a67964dff84e921f12ead1e1fde54fa4a2..3a2fa615c6f89f062cc78e3952f7de0a8f6292c3 100644 --- a/configuration.org +++ b/configuration.org @@ -779,14 +779,16 @@ Some of my configuration entries where borrowed from other people, see #+begin_src emacs-lisp (use-package lsp-mode :hook ( - c++-mode - python-mode - rust-mode + (c++-mode . lsp) + (python-mode . lsp) + (rust-mode . lsp) + (lsp-mode . lsp-enable-which-key-integration) ) :config (lsp-headerline-breadcrumb-mode t)) #+end_src + For displaying more information directly in the buffer, I use =lsp-ui= #+begin_src emacs-lisp @@ -824,14 +826,14 @@ Some of my configuration entries where borrowed from other people, see *** Rust - Install =rust-mode= and set the rust language server to rls. - ([[https://rust-analyzer.github.io/][rust-analyzer]] still crashes too much) It also sets =rustfmt= to be - called to format buffer when saving. + Install =rust-mode= and set the rust language server to + =rust-analyzer=. It also sets =rustfmt= to be called to format + buffer when saving. #+begin_src emacs-lisp (use-package rust-mode :custom - (lsp-rust-server 'rls) + (lsp-rust-server 'rust-analyzer) ; (rust-format-on-save t) ) @@ -839,14 +841,22 @@ Some of my configuration entries where borrowed from other people, see For this to work, you need to install =rust-analyzer= and =rustmft=. - #+begin_src bash -echo "Installing rust-analyzer" -git clone https://github.com/rust-analyzer/rust-analyzer.git && cd rust-analyzer -cargo xtask install --server || echo "failed" -echo "Installing rustfmt" -cargo install rustfmt || echo "failed" + #+begin_src bash :results output verbatim +if [[ "$OSTYPE" =~ ^darwin ]] +then + echo "Installing for macos" + binary=rust-analyzer-mac +else + echo "Installing for linux" + binary=rust-analyzer-linux +fi +curl -L https://github.com/rust-analyzer/rust-analyzer/releases/latest/download/$binary -o ~/.cargo/bin/rust-analyzer +chmod +x ~/.cargo/bin/rust-analyzer #+end_src + #+RESULTS: + : Installing for macos + Adds cargo installed binaries to exec path