fix(wpcarro/emacs): Update rust configuration
- Prefer LSP to racer - Move KBDs to central location Change-Id: Ib3fbf1b383d711f3ac6dd6d7791374b014b9df90 Reviewed-on: https://cl.tvl.fyi/c/depot/+/6054 Reviewed-by: wpcarro <wpcarro@gmail.com> Autosubmit: wpcarro <wpcarro@gmail.com> Tested-by: BuildkiteCI
This commit is contained in:
parent
60f6f5f10e
commit
b92ceccfdb
3 changed files with 26 additions and 23 deletions
|
@ -454,5 +454,19 @@
|
|||
"C-v" #'clipboard-yank
|
||||
"C-S-v" #'clipboard-yank)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; Rust
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(general-define-key
|
||||
:keymaps '(rust-mode-map)
|
||||
:states '(normal)
|
||||
"gd" #'lsp-find-definition
|
||||
"gr" #'lsp-find-references)
|
||||
|
||||
(general-define-key
|
||||
:keymaps '(rust-mode-map)
|
||||
"TAB" #'company-indent-or-complete-common)
|
||||
|
||||
(provide 'keybindings)
|
||||
;;; keybindings.el ends here
|
||||
|
|
|
@ -6,11 +6,6 @@
|
|||
|
||||
;;; Commentary:
|
||||
;; Supports my Rust work.
|
||||
;;
|
||||
;; Dependencies:
|
||||
;; - `rustup`
|
||||
;; - `rustup component add rust-src`
|
||||
;; - `rustup toolchain add nightly && cargo +nightly install racer`
|
||||
|
||||
;;; Code:
|
||||
|
||||
|
@ -18,30 +13,16 @@
|
|||
;; Dependencies
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(require 'macros)
|
||||
(require 'lsp)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; Configuration
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(use-package racer
|
||||
:config
|
||||
(setq rust-sysroot (->> "~/.cargo/bin/rustc --print sysroot"
|
||||
shell-command-to-string
|
||||
s-trim-right))
|
||||
(setq racer-rust-src-path (f-join rust-sysroot "lib/rustlib/src/rust/src"))
|
||||
(add-hook 'racer-mode-hook #'eldoc-mode))
|
||||
|
||||
(use-package rust-mode
|
||||
:config
|
||||
(add-hook 'rust-mode-hook #'racer-mode)
|
||||
(macros-add-hook-before-save 'rust-mode-hook #'rust-format-buffer)
|
||||
(define-key rust-mode-map
|
||||
(kbd "TAB")
|
||||
#'company-indent-or-complete-common)
|
||||
(define-key rust-mode-map
|
||||
(kbd "M-d")
|
||||
#'racer-describe))
|
||||
(add-hook 'rust-mode-hook #'lsp)
|
||||
(setq rust-format-on-save t))
|
||||
|
||||
(provide 'wpc-rust)
|
||||
;;; wpc-rust.el ends here
|
||||
|
|
|
@ -11,6 +11,15 @@ let
|
|||
|
||||
emacsBinPath = makeBinPath (
|
||||
wpcarro.common.shell-utils ++
|
||||
# Rust dependencies
|
||||
(with pkgs; [
|
||||
cargo
|
||||
rls
|
||||
rust-analyzer
|
||||
rustc
|
||||
rustfmt
|
||||
]) ++
|
||||
# Misc dependencies
|
||||
(with pkgs; [
|
||||
ispell
|
||||
nix
|
||||
|
@ -85,7 +94,6 @@ let
|
|||
direnv
|
||||
alert
|
||||
nix-mode
|
||||
racer
|
||||
rust-mode
|
||||
rainbow-delimiters
|
||||
racket-mode
|
||||
|
|
Loading…
Reference in a new issue