X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/38ddb67eafcfa071009b34155326c1366d68c6a5..558fc01413d875fc8098108b3f8264b72d0b5f0d:/dot/emacs diff --git a/dot/emacs b/dot/emacs index 660a7ee..ed2d4d1 100644 --- a/dot/emacs +++ b/dot/emacs @@ -62,8 +62,13 @@ (trap (or mdw-fast-startup (require 'tex-site))) -(trap (or mdw-fast-startup (semantic-load-enable-minimum-features))) +(trap (or mdw-fast-startup (semantic-load-enable-excessive-code-helpers))) (setq semanticdb-default-save-directory "~/.emacs.d/semanticdb/") +(eval-after-load "senator" + '(setq isearch-mode-hook + (remq 'senator-isearch-mode-hook isearch-mode-hook) + isearch-mode-end-hook + (remq 'senator-isearch-mode-hook isearch-mode-end-hook))) ;; Skeleton stuff. @@ -89,8 +94,12 @@ (and (or window-system (>= emacs-major-version 23)) (progn (setq server-temp-file-regexp (concat "^" tmpdir "\\|/draft$") + edit-server-new-frame nil gnuserv-frame t) - (trap (server-start)))) + (trap (server-start)) + (trap (progn + (require 'edit-server) + (edit-server-start))))) ;; Control backup behaviour. @@ -124,7 +133,8 @@ (setq sendmail-program "~/bin/sendmail-hack") -(setq mail-user-agent 'message-user-agent) +(setq mail-user-agent 'message-user-agent + read-mail-command 'gnus) (setq message-signature-separator "^-- \\(\\|\\[mdw\\]\\)$" message-yank-prefix "> " message-yank-cited-prefix "> " @@ -191,15 +201,16 @@ (setq enable-local-variables :safe enable-local-eval nil) (setq dabbrev-case-replace nil) ;Retain case when completing +(setq linum-format "%7d ") (setq next-line-add-newlines nil) ;Don't add weird newlines (setq split-height-threshold 45) ;Reuse windows where sensible (setq display-buffer-reuse-frames nil ;Don't confuse me by showing buffers iswitchb-default-method 'samewindow) ;in other random frames (setq dired-deletion-confirmer ;Make deletion easier in dired - (symbol-function 'y-or-n-p)) + (symbol-function 'y-or-n-p) + dired-listing-switches "-alF" ;Do `ls -F' things in dired windows + wdired-allow-to-change-permissions 'advanced) (setq read-quoted-char-radix 16) ;C-q HEX-STUFF [RET] -(setq dired-listing-switches "-alF") ;Do `ls -F' things in dired windows -(setq wdired-allow-to-change-permissions t) (setq case-fold-file-names nil) ;Don't translate file names (grr...) (setq scroll-step 5) ;Don't scroll too much at a time (setq-default fill-column 77) ;I use rather narrow windows @@ -265,6 +276,14 @@ (setq w3m-default-display-inline-images t) +(eval-after-load "w3m" + '(let ((entries '(("application/pdf" "\\.pdf\\'" ("evince" file) nil) + ("application/x-pdf" "\\.pdf\\'" ("evince" file) nil)))) + (dolist (e entries) + (setq w3m-content-type-alist + (cons e (remove* (car e) w3m-content-type-alist + :key #'car :test #'string=)))))) + (setq w3-do-incremental-display t w3-use-menus '(file edit view go bookmark options buffers style search emacs nil help) @@ -326,6 +345,7 @@ (setq display-time-24hr-format t) (display-time) +(column-number-mode 1) (trap (if window-system (let ((view-diary-entries-initially t)) @@ -379,12 +399,12 @@ (cursor-color . "red")) (if mdw-black-background '((background-mode . dark)) - '((background-mode . light))) - (and (eq window-system 'pm) - '((font . "-os2-System VIO-medium-r-normal--*-40-*-*-m-*-cp850") - (menu-font . "8.Helv") - (background-color . "lightgrey"))) - default-frame-alist)) + '((background-mode . light))))) +(setq window-system-default-frame-alist + '((pm (font . "-os2-System VIO-medium-r-normal--*-40-*-*-m-*-cp850") + (menu-font . "8.Helv") + (background-color . "lightgrey")) + (nil (menu-bar-lines . 0)))) ;; Other frame fiddling. @@ -438,13 +458,20 @@ (eval-after-load "dired" '(progn - (define-key dired-mode-map [?\C-x ?\C-q] - 'wdired-change-to-wdired-mode))) + (or (lookup-key dired-mode-map [?\C-x ?\C-q]) + (define-key dired-mode-map [?\C-x ?\C-q] + 'wdired-change-to-wdired-mode)) + (and (fboundp 'dired-do-relsymlink) + (define-key dired-mode-map [?\C-c ?\C-s] 'dired-do-relsymlink)))) (add-hook 'org-mode-hook #'(lambda () (mdw-clobber-evil-keymap org-mode-map))) (add-hook 'org-agenda-mode-hook #'(lambda () (mdw-clobber-evil-keymap org-agenda-mode-map))) +(or mdw-fast-startup + (progn + (org-remember-insinuate) + (global-set-key [?\C-c ?r] 'org-remember))) ;; Recognising types of files. @@ -490,6 +517,13 @@ (setq completion-ignored-extensions (append `(".hc" ".hi") completion-ignored-extensions)) +(dolist (dir (remove-if-not (lambda (ext) + (= (aref ext (- (length ext) 1)) ?/)) + completion-ignored-extensions)) + (if (/= (aref dir 0) ?/) + (setq completion-ignored-extensions + (cons (concat "/" dir) + (remove dir completion-ignored-extensions))))) ;; Some common local definitions. @@ -517,7 +551,7 @@ (eval-after-load "tramp" '(let ((fix-args (if (mdw-version-< tramp-version "2.1") - #'append #'identity))) + #'append #'list))) (setq tramp-methods (mdw-uniquify-alist `(("become"