3 #+BEGIN_SRC emacs-lisp :tangle don-configuration.el
4 (add-to-list 'load-path '"~/lib/emacs_el/")
5 (add-to-list 'load-path '"~/lib/emacs_el/helm")
6 (add-to-list 'load-path '"~/lib/emacs_el/tiny-tools/lisp/tiny")
7 (add-to-list 'load-path '"~/lib/emacs_el/tiny-tools/lisp/other")
13 #+BEGIN_SRC emacs-lisp :tangle don-configuration.el
14 ;; From http://www.emacswiki.org/emacs/LoadingLispFiles
15 ;; execute conditional code when loading libraries
16 (defmacro with-library (symbol &rest body)
17 `(when (require ,symbol nil t)
19 (put 'with-library 'lisp-indent-function 1)
27 #+BEGIN_SRC emacs-lisp :tangle don-configuration.el
29 (with-library 'tinyprocmail
30 ; (setq tinyprocmail--procmail-version "v3.22")
31 (add-hook 'tinyprocmail--load-hook 'tinyprocmail-install))
35 #+BEGIN_SRC emacs-lisp :tangle don-configuration.el
37 ;; Use c-mode for perl .xs files
38 (add-to-list 'auto-mode-alist '("\\.xs\\'" . c-mode))
39 (add-to-list 'auto-mode-alist '("\\.\\([pP][Llm]\\|al\\)\\'" . cperl-mode))
40 (add-to-list 'interpreter-mode-alist '("perl" . cperl-mode))
41 (add-to-list 'interpreter-mode-alist '("perl5" . cperl-mode))
42 (add-to-list 'interpreter-mode-alist '("miniperl" . cperl-mode))
45 cperl-auto-newline nil
46 cperl-auto-newline-after-colon nil
47 cperl-continued-statement-offset 4
49 cperl-continued-brace-offset 0
51 cperl-highlight-variables-indiscriminately t
52 cperl-electric-lbrace-space nil
53 cperl-indent-parens-as-block nil
54 cperl-close-paren-offset -1
55 cperl-tab-always-indent t)
56 ;(add-hook 'cperl-mode-hook (lambda () (cperl-set-style "PerlStyle")))
60 #+BEGIN_SRC emacs-lisp :tangle don-configuration.el
64 #+BEGIN_SRC emacs-lisp :tangle don-configuration.el
69 #+BEGIN_SRC emacs-lisp :tangle don-configuration.el
70 (add-to-list 'tramp-methods '("vcsh"
71 (tramp-login-program "vcsh")
75 (tramp-remote-shell "/bin/sh")
76 (tramp-remote-shell-args
80 ** Override other things
81 #+BEGIN_SRC emacs-lisp :tangle don-configuration.el
82 ; apparently things like to step on C-;, so we'll use a hack from
83 ; http://stackoverflow.com/questions/683425/globally-override-key-binding-in-emacs/5340797#5340797 to fix this
85 (defvar my-keys-minor-mode-map (make-keymap) "my-keys-minor-mode keymap.")
87 ; use iedit everywhere
88 (define-key my-keys-minor-mode-map (kbd "C-;") 'iedit-mode)
89 ;; use outline mode keybindings everywhere
90 (define-key my-keys-minor-mode-map (kbd "C-;") 'my/mydra-outline/body)
92 (define-minor-mode my-keys-minor-mode
93 "A minor mode so that my key settings override annoying major modes."
94 t " my-keys" 'my-keys-minor-mode-map)
96 (my-keys-minor-mode 1)
97 (defun my-minibuffer-setup-hook ()
98 (my-keys-minor-mode 0))
100 (add-hook 'minibuffer-setup-hook 'my-minibuffer-setup-hook)
101 (defadvice load (after give-my-keybindings-priority)
102 "Try to ensure that my keybindings always have priority."
103 (if (not (eq (car (car minor-mode-map-alist)) 'my-keys-minor-mode))
104 (let ((mykeys (assq 'my-keys-minor-mode minor-mode-map-alist)))
105 (assq-delete-all 'my-keys-minor-mode minor-mode-map-alist)
106 (add-to-list 'minor-mode-map-alist mykeys))))
111 #+BEGIN_SRC emacs-lisp :tangle don-configuration.el
112 (provide 'don-configuration)