mirror of https://github.com/Chizi123/.emacs.d.git

Joel Grunbaum
2020-10-14 22b4cd3ea3dd6b88c2ecd0cab98482dc4c0ee163
config.org
@@ -54,6 +54,13 @@
           (disable-all-themes)
           :config
           (load-theme 'solarized-dark t)))
        ((eq emacs-theme 'jetbrains-darcula)
         (use-package jetbrains-darcula-theme
           :ensure t
           :init
           (disable-all-themes)
           :config
           (load-theme 'jetbrains-darcula t)))
        ((eq emacs-theme 'none)
         (disable-all-themes)))
#+END_SRC
@@ -670,6 +677,28 @@
  (defalias 'yes-or-no-p 'y-or-n-p)
#+END_SRC
** COMMENT Sublime-like minimap
Get a minimap preview of the file on the side like sublime text.
Want to make work but need to find a good way of doing so.
#+BEGIN_SRC emacs-lisp
  (use-package sublimity
    :ensure t
    :config
    (require 'sublimity-scroll)
    (setq sublimity-scroll-weight 4
          sublimity-scroll-drift-length 3)
    (require 'sublimity-map)
    (setq sublimity-map-size 20
          sublimity-map-scale 0.3)
    (sublimity-map-set-delay nil)
    (sublimity-mode 1))
  (use-package minimap
    :ensure t
    :config
    (minimap-mode))
#+END_SRC
* Mode line tweaks
Diminish is used but is included in init.el such that it can be used throughout this document
** Spaceline
@@ -691,6 +720,15 @@
Slightly nicer separator.
#+BEGIN_SRC emacs-lisp
(setq powerline-default-separator nil)
#+END_SRC
** Nyan mode
Use nyan cat as a reference for buffer progression.
#+BEGIN_SRC emacs-lisp
  (use-package nyan-mode
    :ensure t
    :config
    (nyan-mode 1))
#+END_SRC
* Programming tweaks
@@ -740,6 +778,12 @@
    (setq company-minimum-prefix-length 3))
#+END_SRC
** Version control
Settings for emacs' own version control system.
*** Enable version control on the mode line
#+BEGIN_SRC emacs-lisp
  (vc-mode)
#+END_SRC
** Magit
Emacs git client.
Pretty good and offers fairly decent features.
@@ -983,7 +1027,7 @@
    (shell-command "unzip -o ~/.texcount/texcount.zip -d ~/.texcount")
    (add-to-list 'exec-path "~/.texcount/texcount.pl"))
  (if (not(file-exists-p "~/.texcount/texcount.pl"))
  (if (not(or (file-exists-p "~/.texcount/texcount.pl") (file-exists-p "/usr/bin/texcount")))
      (get-texcount-latest))
  (defun texcount ()
@@ -1134,6 +1178,47 @@
    :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.