X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=emacs_el%2Fconfiguration%2Fdon-configuration.org;h=552feec13be98698f00de4050fd82de658c5623b;hb=40db3d2a1fe38634b23135f4a9c1a4fa9cebf626;hp=9b62bb38a1c94b92734dcb9c5381ae4c23aa69f3;hpb=1c616c82b8a581dbc72a2bea9710b03c72bbfbc6;p=lib.git diff --git a/emacs_el/configuration/don-configuration.org b/emacs_el/configuration/don-configuration.org index 9b62bb3..552feec 100644 --- a/emacs_el/configuration/don-configuration.org +++ b/emacs_el/configuration/don-configuration.org @@ -30,14 +30,15 @@ (setq package-archives '(("gnu" . "https://elpa.gnu.org/packages/") ("melpa" . "https://melpa.org/packages/") ("org" . "http://orgmode.org/elpa/") )) - (package-initialize) #+END_SRC ** [[https://github.com/jwiegley/use-package/][use-package]] #+BEGIN_SRC emacs-lisp (require 'use-package) + (package-initialize) #+END_SRC ** Paradox #+BEGIN_SRC emacs-lisp + (package-initialize) (use-package paradox :ensure paradox ) @@ -77,48 +78,48 @@ ** Eyebrowse #+BEGIN_SRC emacs-lisp - (use-package eyebrowse - :ensure t - :diminish eyebrowse-mode - :init (setq eyebrowse-keymap-prefix (kbd "C-c C-\\")) - :config (progn - (setq eyebrowse-wrap-around t) - (eyebrowse-mode t) - - (defun my/eyebrowse-new-window-config () - (interactive) - (let ((done nil)) - (dotimes (i 10) - ;; start at 1 run till 0 - (let ((j (mod (+ i 1) 10))) - (when (and (not done) - (not (eyebrowse--window-config-present-p j))) - (eyebrowse-switch-to-window-config j) - (call-interactively 'eyebrowse-rename-window-config2 j) - (setq done t) - )) - ))) - - ;; I don't use latex-preview-pane - ;; (require 'latex-preview-pane) - ;; (defun my/close-latex-preview-pane-before-eyebrowse-switch () - ;; ;; latex-preview-pane uses window-parameters which are - ;; ;; not preserved by eyebrowse, so we close the preview - ;; ;; pane before switching, it will be regenerated when we - ;; ;; edit the TeX file. - ;; (when (lpp/window-containing-preview) - ;; (delete-window (lpp/window-containing-preview)))) - - ;; (add-to-list 'eyebrowse-pre-window-switch-hook - ;; #'my/close-latex-preview-pane-before-eyebrowse-switch) - - ;; (my/set-menu-key "[" #'my/eyebrowse-new-window-config) - ;; (my/set-menu-key ";" #'eyebrowse-prev-window-config) - ;; (my/set-menu-key "'" #'eyebrowse-next-window-config) - ;; (my/set-menu-key "]" #'eyebrowse-close-window-config) - ;; (my/set-menu-key "\\" #'eyebrowse-rename-window-config) - ) - ) + ;; (use-package eyebrowse + ;; :ensure t + ;; :diminish eyebrowse-mode + ;; :init (setq eyebrowse-keymap-prefix (kbd "C-c C-\\")) + ;; :config (progn + ;; (setq eyebrowse-wrap-around t) + ;; (eyebrowse-mode t) + ;; + ;; (defun my/eyebrowse-new-window-config () + ;; (interactive) + ;; (let ((done nil)) + ;; (dotimes (i 10) + ;; ;; start at 1 run till 0 + ;; (let ((j (mod (+ i 1) 10))) + ;; (when (and (not done) + ;; (not (eyebrowse--window-config-present-p j))) + ;; (eyebrowse-switch-to-window-config j) + ;; (call-interactively 'eyebrowse-rename-window-config2 j) + ;; (setq done t) + ;; )) + ;; ))) + ;; + ;; ;; I don't use latex-preview-pane + ;; ;; (require 'latex-preview-pane) + ;; ;; (defun my/close-latex-preview-pane-before-eyebrowse-switch () + ;; ;; ;; latex-preview-pane uses window-parameters which are + ;; ;; ;; not preserved by eyebrowse, so we close the preview + ;; ;; ;; pane before switching, it will be regenerated when we + ;; ;; ;; edit the TeX file. + ;; ;; (when (lpp/window-containing-preview) + ;; ;; (delete-window (lpp/window-containing-preview)))) + ;; + ;; ;; (add-to-list 'eyebrowse-pre-window-switch-hook + ;; ;; #'my/close-latex-preview-pane-before-eyebrowse-switch) + ;; + ;; ;; (my/set-menu-key "[" #'my/eyebrowse-new-window-config) + ;; ;; (my/set-menu-key ";" #'eyebrowse-prev-window-config) + ;; ;; (my/set-menu-key "'" #'eyebrowse-next-window-config) + ;; ;; (my/set-menu-key "]" #'eyebrowse-close-window-config) + ;; ;; (my/set-menu-key "\\" #'eyebrowse-rename-window-config) + ;; ) + ;; ) #+END_SRC ** Window handling @@ -217,26 +218,83 @@ value, scrolling continues until there is no more output. :ensure t) #+END_SRC +** Jumping +*** Avy +#+BEGIN_SRC emacs-lisp +(use-package avy + :ensure t + :bind ("C-c C-SPC" . avy-goto-word-1) + :config (progn + (setq avy-background t) + (key-chord-define-global "jj" #'avy-goto-word-1))) +#+END_SRC + +** Snippets + +*** Yasnippet +#+BEGIN_SRC emacs-lisp +(use-package yasnippet + :ensure t + :diminish yas-minor-mode + :config (progn + (yas-global-mode) + (setq yas-verbosity 1))) +#+END_SRC + +** Helm Flx + +[[https://github.com/PythonNut/helm-flx][helm-flx]] implements intelligent helm fuzzy sorting, provided by [[https://github.com/lewang/flx][flx]]. + +#+BEGIN_SRC emacs-lisp +(use-package helm-flx + :ensure t + :config (progn + ;; these are helm configs, but they kind of fit here nicely + (setq helm-M-x-fuzzy-match t + helm-bookmark-show-location t + helm-buffers-fuzzy-matching t + helm-completion-in-region-fuzzy-match t + helm-file-cache-fuzzy-match t + helm-imenu-fuzzy-match t + helm-mode-fuzzy-match t + helm-locate-fuzzy-match nil + helm-quick-update t + helm-recentf-fuzzy-match nil + helm-semantic-fuzzy-match t) + (helm-flx-mode +1))) +#+END_SRC + + ** Tinyprocmail #+BEGIN_SRC emacs-lisp ;; load tinyprocmail - (with-library 'tinyprocmail - ; (setq tinyprocmail--procmail-version "v3.22") - (add-hook 'tinyprocmail--load-hook 'tinyprocmail-install)) + (use-package tinyprocmail + :ensure f + :config (with-library 'tinyprocmail + ;; (setq tinyprocmail--procmail-version "v3.22") + (add-hook 'tinyprocmail--load-hook 'tinyprocmail-install)) + ) #+END_SRC ** Magit #+BEGIN_SRC emacs-lisp :tangle don-configuration.el - ; don't verify where we are pushing - (setq magit-push-always-verify nil) - ;; refine diffs always (hilight words) - (setq magit-diff-refine-hunk nil) - ;; load magit-annex - (setq load-path - (append '("~/lib/emacs_el/magit-annex") - load-path)) - (require 'magit-annex) + (use-package magit + :ensure f + :config + ;; don't verify where we are pushing + (setq magit-push-always-verify nil) + ;; refine diffs always (hilight words) + (setq magit-diff-refine-hunk nil) + ;; load magit-annex + (setq load-path + (append '("~/lib/emacs_el/magit-annex") + load-path)) + ) + (use-package magit-annex + :ensure f + :config (require 'magit-annex) + ) #+END_SRC ** Perl @@ -266,7 +324,20 @@ value, scrolling continues until there is no more output. ** Helm #+BEGIN_SRC emacs-lisp -(require 'don-helm) + (use-package helm + :ensure t + :config + (helm-mode 1) + (define-key global-map [remap find-file] 'helm-find-files) + (define-key global-map [remap occur] 'helm-occur) + (define-key global-map [remap list-buffers] 'helm-buffers-list) + (define-key global-map [remap dabbrev-expand] 'helm-dabbrev) + (global-set-key (kbd "M-x") 'helm-M-x) + (unless (boundp 'completion-in-region-function) + (define-key lisp-interaction-mode-map [remap completion-at-point] 'helm-lisp-completion-at-point) + (define-key emacs-lisp-mode-map [remap completion-at-point] 'helm-lisp-completion-at-point)) + (add-hook 'kill-emacs-hook #'(lambda () (and (file-exists-p "$TMP") (delete-file "$TMP")))) + ) #+END_SRC ** Hydra #+BEGIN_SRC emacs-lisp :tangle don-configuration.el @@ -293,6 +364,7 @@ value, scrolling continues until there is no more output. ;; this is in the very newest auctex; avoid for now (add-to-list 'LaTeX-fill-excluded-macros '("Sexpr")) + (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) @@ -345,7 +417,7 @@ value, scrolling continues until there is no more output. ("OM" "{") ("DL" "{") ("fixme" "{"))) - + (setq-default TeX-parse-self t) (setq-default TeX-auto-save t) (setq-default TeX-master nil) @@ -388,7 +460,9 @@ value, scrolling continues until there is no more output. #+END_SRC ** ESS #+BEGIN_SRC emacs-lisp - (require 'ess_configuration) + (use-package ess + :ensure t + :config (require 'ess_configuration)) #+END_SRC @@ -437,7 +511,7 @@ value, scrolling continues until there is no more output. (ad-activate 'load) #+END_SRC -* Mis1c (uncharacterized) +* Misc (uncharacterized) #+BEGIN_SRC emacs-lisp (setq bibtex-user-optional-fields (quote (("annote" "Personal annotation (ignored)") ("abstract" "") ("pmid" "") ("doi" "")))) (setq calendar-latitude 40.11)