]> git.donarmstrong.com Git - lib.git/blobdiff - emacs_el/configuration/don-configuration.org
use writeroom mode
[lib.git] / emacs_el / configuration / don-configuration.org
index be27ed9d7864144f9ae34cafa0916f7e29015f5e..a6063288039bec20eb45a461a64838352cdcb237 100644 (file)
   (add-hook 'minibuffer-exit-hook #'don/minibuffer-exit-hook)
 #+END_SRC
 * Modules
+** Flyspell 🐝 
+#+BEGIN_SRC emacs-lisp
+  (use-package flyspell
+    :ensure t
+    :diminish flyspell-mode 🐝
+    :config
+    (add-hook 'message-mode-hook 'turn-on-flyspell)
+    (add-hook 'text-mode-hook 'turn-on-flyspell)
+    (add-hook 'c-mode-common-hook 'flyspell-prog-mode)
+    (add-hook 'cperl-mode-hook 'flyspell-prog-mode)
+    (add-hook 'tcl-mode-hook 'flyspell-prog-mode)
+    :init
+    (setq ispell-program-name "ispell")
+    )
+
+#+END_SRC
 ** Winnermode
 #+BEGIN_SRC emacs-lisp
   (winner-mode 1)
   (setq split-width-threshold  100)
   (setq split-height-threshold 60)
 
-  (defun my/split-window-prefer-horizontally (window)
+  (defun my/split-window-prefer-vertically (window)
     "If there's only one window (excluding any possibly active
            minibuffer), then split the current window horizontally."
     (if (and (one-window-p t)
              (not (active-minibuffer-window))
-             ( > (frame-width) (frame-height))
+             ( < (frame-width) (frame-height))
              )
-        (let ((split-height-threshold nil))
+        (let ((split-width-threshold nil))
           (split-window-sensibly window))
       (split-window-sensibly window)))
 
-  (setq split-window-preferred-function #'my/split-window-prefer-horizontally)
+  (setq split-window-preferred-function #'my/split-window-prefer-vertically)
   (setq window-combination-resize t)
 #+END_SRC
 
@@ -285,6 +301,8 @@ value, scrolling continues until there is no more output.
 #+BEGIN_SRC emacs-lisp :tangle don-configuration.el
   (use-package magit
     :ensure t
+    :bind (("C-x g" . magit-status)
+           ("C-x C-g" . magit-status))
     :config
     ;; don't verify where we are pushing
     (setq magit-push-always-verify nil)
@@ -294,10 +312,17 @@ value, scrolling continues until there is no more output.
     (setq load-path
           (append '("~/lib/emacs_el/magit-annex")
                   load-path))
+    ;; load magit-vcsh
+    (setq load-path
+          (append '("~/lib/emacs_el/magit-vcsh")
+                  load-path))
     )
   (use-package magit-annex
     :ensure t
   )
+  (use-package magit-vcsh
+    :ensure f ; currently not in melpa, so don't try to install
+  )
 #+END_SRC
 
 ** Perl
@@ -358,26 +383,33 @@ value, scrolling continues until there is no more output.
                                 (tramp-remote-shell-args
                                  ("-c"))))
 #+END_SRC
+** Reftex
+#+BEGIN_SRC emacs-lisp
+  (use-package reftex
+    :ensure t
+    :config
+    (setq-default reftex-default-bibliography
+                    '("~/projects/research/references.bib")))
+#+END_SRC
 ** LaTeX
 #+BEGIN_SRC emacs-lisp
   (use-package tex
     :defer t
     :ensure auctex
     :config
-    (add-to-list 'LaTeX-fill-excluded-macros
-                 '("Sexpr"))
-    (add-to-list 'TeX-style-path '"/home/don/lib/emacs_el/auctex/style")
+    ; (add-to-list 'TeX-style-path '"/home/don/lib/emacs_el/auctex/style")
     ;; REFTEX (much enhanced management of cross-ref, labels, etc)
     ;; http://www.strw.leidenuniv.nl/~dominik/Tools/reftex/
-    (autoload 'reftex-mode     "reftex" "RefTeX Minor Mode" t)
-    (autoload 'turn-on-reftex  "reftex" "RefTeX Minor Mode" nil)
-    (autoload 'reftex-citation "reftex-cite" "Make citation" nil)
-    (autoload 'reftex-index-phrase-mode "reftex-index" "Phrase mode" t)
+    (autoload 'reftex-mode     "reftex" "RefTeX Minor Mode" t)
+    (autoload 'turn-on-reftex  "reftex" "RefTeX Minor Mode" nil)
+    (autoload 'reftex-citation "reftex-cite" "Make citation" nil)
+    (autoload 'reftex-index-phrase-mode "reftex-index" "Phrase mode" t)
     (add-hook 'LaTeX-mode-hook 'turn-on-reftex)   ; with AUCTeX LaTeX mode
     (add-hook 'latex-mode-hook 'turn-on-reftex)   ; with Emacs latex mode
     (add-hook 'LaTeX-mode-hook 'outline-minor-mode)   ; with AUCTeX LaTeX mode
     (add-hook 'latex-mode-hook 'outline-minor-mode)   ; with Emacs latex mode
 
+    (setq-default reftex-plug-into-AUCTeX t)
     ;; support fake section headers
     (setq TeX-outline-extra
           '(("%chapter" 1)
@@ -431,9 +463,11 @@ value, scrolling continues until there is no more output.
            '("Cref" TeX-arg-ref)
            '("cpageref" TeX-arg-ref)
            '("Cpageref" TeX-arg-ref)))))
+    (eval-after-load
+        "latex"
+      '(add-to-list 'LaTeX-fill-excluded-macros
+                    '("Sexpr")))
 
-    (setq-default reftex-default-bibliography
-                  '("~/projects/research/references.bib"))
     (use-package font-latex
       :config
       (setq font-latex-match-reference-keywords
@@ -492,7 +526,6 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori
 
 #+BEGIN_SRC emacs-lisp
   (use-package rainbow-mode
-    :ensure f
     ;; add ess to the x major mode
     :config (add-to-list 'rainbow-x-colors-major-mode-list 'ESS[S])
     (add-to-list 'rainbow-x-colors-major-mode-list 'ESS[R])
@@ -517,6 +550,10 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori
 #+BEGIN_SRC emacs-lisp
   (use-package outline-magic)
 #+END_SRC
+** Writeroom Mode
+#+BEGIN_SRC emacs-lisp
+  (use-package writeroom-mode)
+#+END_SRC
 * Keybindings
 ** Override other things
 #+BEGIN_SRC emacs-lisp
@@ -528,7 +565,7 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori
   ; use iedit everywhere
   (define-key my-keys-minor-mode-map (kbd "C-;") 'iedit-mode)
   ;; use outline mode keybindings everywhere
-  (define-key my-keys-minor-mode-map (kbd "C-;") 'my/mydra-outline/body)
+  ;; (define-key my-keys-minor-mode-map (kbd "C-;") 'my/mydra-outline/body)
 
   (define-minor-mode my-keys-minor-mode
     "A minor mode so that my key settings override annoying major modes."
@@ -726,7 +763,6 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori
     )
 
   (column-number-mode t)
-  (setq-default reftex-plug-into-AUCTeX t)
 
   (server-start)
 
@@ -794,13 +830,6 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori
   (put 'downcase-region 'disabled nil)
   (put 'narrow-to-region 'disabled nil)
 
-  (setq ispell-program-name "ispell")
-  (autoload 'flyspell-mode "flyspell" "On-the-fly spelling checker." t)
-  (add-hook 'message-mode-hook 'turn-on-flyspell)
-  (add-hook 'text-mode-hook 'turn-on-flyspell)
-  (add-hook 'c-mode-common-hook 'flyspell-prog-mode)
-  (add-hook 'cperl-mode-hook 'flyspell-prog-mode)
-  (add-hook 'tcl-mode-hook 'flyspell-prog-mode)
   ; (defun turn-on-flyspell ()
   ;    "Force flyspell-mode on using a positive arg.  For use in hooks."
   ;    (interactive)
@@ -881,94 +910,98 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori
 
   ; fix up tmux xterm keys
   ; stolen from http://unix.stackexchange.com/questions/24414/shift-arrow-not-working-in-emacs-within-tmux
-  (if (getenv "TMUX")
-      (progn
-        (let ((x 2) (tkey ""))
-          (while (<= x 8)
-            ;; shift
-            (if (= x 2)
-                (setq tkey "S-"))
-            ;; alt
-            (if (= x 3)
-                (setq tkey "M-"))
-            ;; alt + shift
-            (if (= x 4)
-                (setq tkey "M-S-"))
-            ;; ctrl
-            (if (= x 5)
-                (setq tkey "C-"))
-            ;; ctrl + shift
-            (if (= x 6)
-                (setq tkey "C-S-"))
-            ;; ctrl + alt
-            (if (= x 7)
-                (setq tkey "C-M-"))
-            ;; ctrl + alt + shift
-            (if (= x 8)
-                (setq tkey "C-M-S-"))
-  
-            ;; arrows
-            (define-key key-translation-map (kbd (format "M-[ 1 ; %d A" x)) (kbd (format "%s<up>" tkey)))
-            (define-key key-translation-map (kbd (format "M-[ 1 ; %d B" x)) (kbd (format "%s<down>" tkey)))
-            (define-key key-translation-map (kbd (format "M-[ 1 ; %d C" x)) (kbd (format "%s<right>" tkey)))
-            (define-key key-translation-map (kbd (format "M-[ 1 ; %d D" x)) (kbd (format "%s<left>" tkey)))
-            ;; home
-            (define-key key-translation-map (kbd (format "M-[ 1 ; %d H" x)) (kbd (format "%s<home>" tkey)))
-            ;; end
-            (define-key key-translation-map (kbd (format "M-[ 1 ; %d F" x)) (kbd (format "%s<end>" tkey)))
-            ;; page up
-            (define-key key-translation-map (kbd (format "M-[ 5 ; %d ~" x)) (kbd (format "%s<prior>" tkey)))
-            ;; page down
-            (define-key key-translation-map (kbd (format "M-[ 6 ; %d ~" x)) (kbd (format "%s<next>" tkey)))
-            ;; insert
-            (define-key key-translation-map (kbd (format "M-[ 2 ; %d ~" x)) (kbd (format "%s<delete>" tkey)))
-            ;; delete
-            (define-key key-translation-map (kbd (format "M-[ 3 ; %d ~" x)) (kbd (format "%s<delete>" tkey)))
-            ;; f1
-            (define-key key-translation-map (kbd (format "M-[ 1 ; %d P" x)) (kbd (format "%s<f1>" tkey)))
-            ;; f2
-            (define-key key-translation-map (kbd (format "M-[ 1 ; %d Q" x)) (kbd (format "%s<f2>" tkey)))
-            ;; f3
-            (define-key key-translation-map (kbd (format "M-[ 1 ; %d R" x)) (kbd (format "%s<f3>" tkey)))
-            ;; f4
-            (define-key key-translation-map (kbd (format "M-[ 1 ; %d S" x)) (kbd (format "%s<f4>" tkey)))
-            ;; f5
-            (define-key key-translation-map (kbd (format "M-[ 15 ; %d ~" x)) (kbd (format "%s<f5>" tkey)))
-            ;; f6
-            (define-key key-translation-map (kbd (format "M-[ 17 ; %d ~" x)) (kbd (format "%s<f6>" tkey)))
-            ;; f7
-            (define-key key-translation-map (kbd (format "M-[ 18 ; %d ~" x)) (kbd (format "%s<f7>" tkey)))
-            ;; f8
-            (define-key key-translation-map (kbd (format "M-[ 19 ; %d ~" x)) (kbd (format "%s<f8>" tkey)))
-            ;; f9
-            (define-key key-translation-map (kbd (format "M-[ 20 ; %d ~" x)) (kbd (format "%s<f9>" tkey)))
-            ;; f10
-            (define-key key-translation-map (kbd (format "M-[ 21 ; %d ~" x)) (kbd (format "%s<f10>" tkey)))
-            ;; f11
-            (define-key key-translation-map (kbd (format "M-[ 23 ; %d ~" x)) (kbd (format "%s<f11>" tkey)))
-            ;; f12
-            (define-key key-translation-map (kbd (format "M-[ 24 ; %d ~" x)) (kbd (format "%s<f12>" tkey)))
-            ;; f13
-            (define-key key-translation-map (kbd (format "M-[ 25 ; %d ~" x)) (kbd (format "%s<f13>" tkey)))
-            ;; f14
-            (define-key key-translation-map (kbd (format "M-[ 26 ; %d ~" x)) (kbd (format "%s<f14>" tkey)))
-            ;; f15
-            (define-key key-translation-map (kbd (format "M-[ 28 ; %d ~" x)) (kbd (format "%s<f15>" tkey)))
-            ;; f16
-            (define-key key-translation-map (kbd (format "M-[ 29 ; %d ~" x)) (kbd (format "%s<f16>" tkey)))
-            ;; f17
-            (define-key key-translation-map (kbd (format "M-[ 31 ; %d ~" x)) (kbd (format "%s<f17>" tkey)))
-            ;; f18
-            (define-key key-translation-map (kbd (format "M-[ 32 ; %d ~" x)) (kbd (format "%s<f18>" tkey)))
-            ;; f19
-            (define-key key-translation-map (kbd (format "M-[ 33 ; %d ~" x)) (kbd (format "%s<f19>" tkey)))
-            ;; f20
-            (define-key key-translation-map (kbd (format "M-[ 34 ; %d ~" x)) (kbd (format "%s<f20>" tkey)))
-
-            (setq x (+ x 1))
-            ))
+  (defun fix-up-tmux-keys ()
+      "Fix up tmux xterm keys"
+      (if (getenv "TMUX")
+          (progn
+            (let ((x 2) (tkey ""))
+              (while (<= x 8)
+                ;; shift
+                (if (= x 2)
+                    (setq tkey "S-"))
+                ;; alt
+                (if (= x 3)
+                    (setq tkey "M-"))
+                ;; alt + shift
+                (if (= x 4)
+                    (setq tkey "M-S-"))
+                ;; ctrl
+                (if (= x 5)
+                    (setq tkey "C-"))
+                ;; ctrl + shift
+                (if (= x 6)
+                    (setq tkey "C-S-"))
+                ;; ctrl + alt
+                (if (= x 7)
+                    (setq tkey "C-M-"))
+                ;; ctrl + alt + shift
+                (if (= x 8)
+                    (setq tkey "C-M-S-"))
+
+                ;; arrows
+                (define-key key-translation-map (kbd (format "M-[ 1 ; %d A" x)) (kbd (format "%s<up>" tkey)))
+                (define-key key-translation-map (kbd (format "M-[ 1 ; %d B" x)) (kbd (format "%s<down>" tkey)))
+                (define-key key-translation-map (kbd (format "M-[ 1 ; %d C" x)) (kbd (format "%s<right>" tkey)))
+                (define-key key-translation-map (kbd (format "M-[ 1 ; %d D" x)) (kbd (format "%s<left>" tkey)))
+                ;; home
+                (define-key key-translation-map (kbd (format "M-[ 1 ; %d H" x)) (kbd (format "%s<home>" tkey)))
+                ;; end
+                (define-key key-translation-map (kbd (format "M-[ 1 ; %d F" x)) (kbd (format "%s<end>" tkey)))
+                ;; page up
+                (define-key key-translation-map (kbd (format "M-[ 5 ; %d ~" x)) (kbd (format "%s<prior>" tkey)))
+                ;; page down
+                (define-key key-translation-map (kbd (format "M-[ 6 ; %d ~" x)) (kbd (format "%s<next>" tkey)))
+                ;; insert
+                (define-key key-translation-map (kbd (format "M-[ 2 ; %d ~" x)) (kbd (format "%s<delete>" tkey)))
+                ;; delete
+                (define-key key-translation-map (kbd (format "M-[ 3 ; %d ~" x)) (kbd (format "%s<delete>" tkey)))
+                ;; f1
+                (define-key key-translation-map (kbd (format "M-[ 1 ; %d P" x)) (kbd (format "%s<f1>" tkey)))
+                ;; f2
+                (define-key key-translation-map (kbd (format "M-[ 1 ; %d Q" x)) (kbd (format "%s<f2>" tkey)))
+                ;; f3
+                (define-key key-translation-map (kbd (format "M-[ 1 ; %d R" x)) (kbd (format "%s<f3>" tkey)))
+                ;; f4
+                (define-key key-translation-map (kbd (format "M-[ 1 ; %d S" x)) (kbd (format "%s<f4>" tkey)))
+                ;; f5
+                (define-key key-translation-map (kbd (format "M-[ 15 ; %d ~" x)) (kbd (format "%s<f5>" tkey)))
+                ;; f6
+                (define-key key-translation-map (kbd (format "M-[ 17 ; %d ~" x)) (kbd (format "%s<f6>" tkey)))
+                ;; f7
+                (define-key key-translation-map (kbd (format "M-[ 18 ; %d ~" x)) (kbd (format "%s<f7>" tkey)))
+                ;; f8
+                (define-key key-translation-map (kbd (format "M-[ 19 ; %d ~" x)) (kbd (format "%s<f8>" tkey)))
+                ;; f9
+                (define-key key-translation-map (kbd (format "M-[ 20 ; %d ~" x)) (kbd (format "%s<f9>" tkey)))
+                ;; f10
+                (define-key key-translation-map (kbd (format "M-[ 21 ; %d ~" x)) (kbd (format "%s<f10>" tkey)))
+                ;; f11
+                (define-key key-translation-map (kbd (format "M-[ 23 ; %d ~" x)) (kbd (format "%s<f11>" tkey)))
+                ;; f12
+                (define-key key-translation-map (kbd (format "M-[ 24 ; %d ~" x)) (kbd (format "%s<f12>" tkey)))
+                ;; f13
+                (define-key key-translation-map (kbd (format "M-[ 25 ; %d ~" x)) (kbd (format "%s<f13>" tkey)))
+                ;; f14
+                (define-key key-translation-map (kbd (format "M-[ 26 ; %d ~" x)) (kbd (format "%s<f14>" tkey)))
+                ;; f15
+                (define-key key-translation-map (kbd (format "M-[ 28 ; %d ~" x)) (kbd (format "%s<f15>" tkey)))
+                ;; f16
+                (define-key key-translation-map (kbd (format "M-[ 29 ; %d ~" x)) (kbd (format "%s<f16>" tkey)))
+                ;; f17
+                (define-key key-translation-map (kbd (format "M-[ 31 ; %d ~" x)) (kbd (format "%s<f17>" tkey)))
+                ;; f18
+                (define-key key-translation-map (kbd (format "M-[ 32 ; %d ~" x)) (kbd (format "%s<f18>" tkey)))
+                ;; f19
+                (define-key key-translation-map (kbd (format "M-[ 33 ; %d ~" x)) (kbd (format "%s<f19>" tkey)))
+                ;; f20
+                (define-key key-translation-map (kbd (format "M-[ 34 ; %d ~" x)) (kbd (format "%s<f20>" tkey)))
+
+                (setq x (+ x 1))
+                ))
+            )
         )
-    )
+      )
+  ; (add-hook 'tty-setup-hook 'fix-up-tmux-keys)
 
   ; procmailmode configuration
   (load "procmail_mode")