From 70e05f134d6e15443d2b0f8da7de76be5189dd10 Mon Sep 17 00:00:00 2001 From: Mateus Pinto Rodrigues Date: Sun, 22 Apr 2018 11:24:19 -0300 Subject: [PATCH] General rust configuration for emacs --- elisp/custom.el | 2 +- elisp/extras.el | 1 + elisp/rust-setup.el | 12 ++++++++++++ 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 elisp/rust-setup.el diff --git a/elisp/custom.el b/elisp/custom.el index 07f8718..f2a654d 100644 --- a/elisp/custom.el +++ b/elisp/custom.el @@ -8,7 +8,7 @@ ("67e998c3c23fe24ed0fb92b9de75011b92f35d3e89344157ae0d544d50a63a72" default))) '(package-selected-packages (quote - (ess-smart-underscore company-tern auto-complete markdown-mode xref-js2 js2-refactor js2-mode writeroom-mode weechat counsel ivy-bibtex org-bullets paredit zenburn-theme slime rust-mode racket-mode polymode org lua-mode haskell-mode geiser ergoemacs-mode djvu auctex)))) + (cargo racer ess-smart-underscore company-tern auto-complete markdown-mode xref-js2 js2-refactor js2-mode writeroom-mode weechat counsel ivy-bibtex org-bullets paredit zenburn-theme slime rust-mode racket-mode polymode org lua-mode haskell-mode geiser ergoemacs-mode djvu auctex)))) (custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. diff --git a/elisp/extras.el b/elisp/extras.el index 56873d0..b060b95 100644 --- a/elisp/extras.el +++ b/elisp/extras.el @@ -20,3 +20,4 @@ (load "~/.emacs.d/elisp/keypad.el") (load "~/.emacs.d/elisp/javascript.el") ;(load "~/.emacs.d/elisp/ess-setup.el") +(load "~/.emacs.d/elisp/rust-setup.el") diff --git a/elisp/rust-setup.el b/elisp/rust-setup.el new file mode 100644 index 0000000..08d0b00 --- /dev/null +++ b/elisp/rust-setup.el @@ -0,0 +1,12 @@ +; Activate cargo minor-mode on rust-mode start +(add-hook 'rust-mode-hook 'cargo-minor-mode) + +;; Activate racer on rust-mode start +(add-hook 'rust-mode-hook #'racer-mode) +(add-hook 'racer-mode-hook #'eldoc-mode) + +;; Code completion +(add-hook 'racer-mode-hook #'company-mode) +(require 'rust-mode) +(define-key rust-mode-map (kbd "TAB") #'company-indent-or-complete-common) +(setq company-tooltip-align-annotations t)