|  |  | 
 |  |  |     :ensure t)
 | 
 |  |  | #+END_SRC
 | 
 |  |  | 
 | 
 |  |  | *** Rust
 | 
 |  |  | **** Major mode
 | 
 |  |  | Get the major mode for rust files.
 | 
 |  |  | #+BEGIN_SRC emacs-lisp
 | 
 |  |  |   (use-package rust-mode
 | 
 |  |  |     :ensure t
 | 
 |  |  |     :config
 | 
 |  |  |     ;; style guide suggests spaces not tabs
 | 
 |  |  |     (add-hook 'rust-mode-hook (lambda () (setq indent-tabs-mode nil)))
 | 
 |  |  |     (setq rust-format-on-save t))
 | 
 |  |  | 
 | 
 |  |  |   (use-package toml-mode
 | 
 |  |  |     :ensure t)
 | 
 |  |  | #+END_SRC
 | 
 |  |  | **** Cargo integration
 | 
 |  |  | Integrate Cargo, rust's package manager.
 | 
 |  |  | #+BEGIN_SRC emacs-lisp
 | 
 |  |  |   (use-package cargo
 | 
 |  |  |     :ensure t
 | 
 |  |  |     :hook
 | 
 |  |  |     (rust-mode . cargo-minor-mode))
 | 
 |  |  | #+END_SRC
 | 
 |  |  | **** Flycheck
 | 
 |  |  | Linting with flycheck.
 | 
 |  |  | #+BEGIN_SRC emacs-lisp
 | 
 |  |  |   (use-package flycheck-rust
 | 
 |  |  |     :ensure t
 | 
 |  |  |     :config
 | 
 |  |  |     (add-hook 'flyckeck-mode-hook #'flycheck-rust-setup))
 | 
 |  |  | #+END_SRC
 | 
 |  |  | 
 | 
 |  |  | **** COMMENT Completion
 | 
 |  |  | Code completion with racer.
 | 
 |  |  | #+BEGIN_SRC emacs-lisp
 | 
 |  |  |   (use-package racer
 | 
 |  |  |     :ensure t
 | 
 |  |  |     :hook ((rust-mode . racer-mode)
 | 
 |  |  |            (racer-mode . (eldoc-mode company-mode)))
 | 
 |  |  |     :init
 | 
 |  |  |     (setq racer-command "~/.cargo/bin/racer"))
 | 
 |  |  | #+END_SRC
 | 
 |  |  | * Org mode
 | 
 |  |  | ** Up to date org
 | 
 |  |  | Pull the latest org mode from the repository, rather than the org which comes with emacs.
 |