emacs: Turn off annoying `help' message in file chooser.
[profile] / emacs
diff --git a/emacs b/emacs
index d1fb141..14d9b1e 100644 (file)
--- a/emacs
+++ b/emacs
 (maybe-autoload 'git-status "git" nil t)
 (maybe-autoload 'git-blame-mode "git-blame" nil t)
 (maybe-autoload 'stgit "stgit" nil t)
+(maybe-autoload 'nc-timesheet-prepare "nc-timesheet" nil t nil)
+(maybe-autoload 'nc-timesheet-submit "nc-timesheet" nil t nil)
+
+(and (library-exists-p "debian-changelog-mode")
+     (add-to-list 'auto-mode-alist
+                 `(,(concat "/debian/"
+                              "\\("
+                                "[" "[:lower:][:digit:]]"
+                                    "[[:lower:][:digit:].+-" "]+"
+                                "\\."
+                              "\\)?"
+                              "changelog\\'")
+                   . debian-changelog-mode)))
+
 (and (library-exists-p "vc-git")
      (not (memq 'GIT vc-handled-backends))
      (setq vc-handled-backends (cons 'GIT vc-handled-backends)))
@@ -46,6 +60,8 @@
 
 (trap (or mdw-fast-startup (require 'tex-site)))
 
+(trap (or mdw-fast-startup (semantic-load-enable-minimum-features)))
+
 ;; --- Skeleton stuff ---
 
 (trap (or mdw-fast-startup (require 'skel-init)))
 (setq rmail-display-summary t)
 (setq rmail-file-name "~/Mail/rmail")
 
+(setq sendmail-program "~/bin/sendmail-hack")
+
+(setq mail-user-agent 'message-user-agent)
+(setq message-signature-separator "^-- \\(\\|\\[mdw\\]\\)$"
+      message-yank-prefix "> "
+      message-yank-cited-prefix "> "
+      message-indent-citation-function '(message-indent-citation
+                                        mdw-trim-spaces-after-citing))
+
+(defun mdw-trim-spaces-after-citing ()
+  (save-excursion
+    (save-restriction
+      (narrow-to-region (point) (mark t))
+      (while (re-search-forward "^> +$" nil t)
+       (replace-match ">")))))
+
+(and (fboundp 'turn-on-gnus-dired-mode)
+     (not mdw-fast-startup)
+     (add-hook 'dired-mode-hook 'turn-on-gnus-dired-mode))
+
+(or mdw-fast-startup
+    (trap (bbdb-initialize 'gnus 'sendmail 'message)))
+(setq bbdb-north-american-phone-numbers-p nil)
+
+;; --- Customization ---
+
+(setq custom-file "~/.emacs-custom")
+(trap (load custom-file))
+
+(trap (load "~/.emacs-local"))
+
 ;; --- Internationalization twiddling ---
 
 (trap
 (setq ps-paper-type 'a4
       ps-print-color-p nil
       ps-landscape-mode t
-      ps-number-of-columns 3
+      ps-number-of-columns 2
       ps-font-family 'Courier
-      ps-font-size 4)
+      ps-font-size 6.5)
 
 ;; --- Splash screen stuff ---
 
       iswitchb-default-method 'samewindow) ;in other random frames
 (setq dired-deletion-confirmer         ;Make deletion easier in dired
       (symbol-function 'y-or-n-p))
+(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 find-ls-option                   ;Build file lists efficiently
       '("-print0 | xargs -0r ls -ld" . "ld"))
 (setq bookmark-save-flag 0)            ;Save bookmarks automatically
-(setq Info-fontify-maximum-menu-size 60000)
+(setq x-gtk-file-dialog-help-text nil)
+(setq Info-fontify-maximum-menu-size 100000)
 (setq set-mark-command-repeat-pop t)
 (setq ispell-program-name "aspell"
       ispell-local-dictionary "en_GB-ize-w_accents"
   (setq uniquify-buffer-name-style 'post-forward-angle-brackets)
   (setq uniquify-after-kill-buffer-p t))
 (transient-mark-mode t)
+(setq mark-even-if-inactive t)
 (trap
   (tooltip-mode 0)
   (tool-bar-mode 0))
 
 (defvar mdw-black-background t)
 
-(eval-after-load "outline" '(require 'foldout))
+(eval-after-load "outline"
+  '(progn
+     (trap (require 'foldout))
+     (define-key outline-mode-prefix-map [?\C-r] 'reveal-mode)
+     (define-key outline-mode-prefix-map [?\C--] 'mdw-outline-collapse-all)))
 
 (setq cltl2-root-url (mdw-config 'cltl-url))
 (setq common-lisp-hyperspec-root (mdw-config 'hyperspec-url))
 (setq appt-display-interval 3)
 (setq appt-message-warning-time 10)
 
+;; --- Org-mode agenda ---
+
+(setq org-agenda-include-diary t
+      org-tags-column -77)
+
 ;; --- Cosmetic stuff ---
 
 (setq display-time-24hr-format t)
 (global-set-key [?\C-x ?w ?l] 'windmove-right)
 (global-set-key [?\C-x ?g ?l] 'org-store-link)
 (global-set-key [?\C-x ?g ?a] 'org-agenda)
+(global-set-key [?\C-x ?g ?b] 'org-iswitchb)
 (global-set-key [?\C-x ?t ?i] 'timeclock-in)
 (global-set-key [?\C-x ?t ?c] 'timeclock-change)
 (global-set-key [?\C-x ?t ?o] 'timeclock-out)
 (global-set-key [?\C-x ?t ?r] 'timeclock-reread-log)
 (global-set-key [?\C-x ?t ?w] 'timeclock-workday-remaining-string)
 (global-set-key [?\C-x ?t ?s] 'timeclock-status-string)
+(global-set-key [?\C-x ?t ?p] 'nc-timesheet-prepare)
+(global-set-key [?\C-x ?t ?\C-m] 'nc-timesheet-submit)
 (global-set-key [?\M-#] 'calc-dispatch)
 (global-set-key [?\C-x ?/] 'auto-fill-mode)
 (global-set-key [?\C-x ?w ?d] 'mdw-divvy-window)
 (global-set-key [insertchar] 'overwrite-mode)
-(global-set-key [?\C-x ?m] 'vm-mail)
 (global-set-key [?\C-x ?\C-n] 'skel-create-file)
 (global-set-key [?\C-x ?4 ?n] 'skel-create-file-other-window)
 (global-set-key [?\C-x ?5 ?n] 'skel-create-file-other-frame)
                'mouse-drag-vertical-line)
 (global-set-key [vertical-scroll-bar C-mouse-1]
                #'(lambda () (interactive)))
+(global-set-key [XF86WakeUp] "")
+(and (not mdw-fast-startup) (fboundp 'hippie-expand)
+     (global-set-key [?\M-/] 'hippie-expand))
+
+(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)))
 
 ;; --- Recognising types of files ---
 
                ("\\.\\(tex\\|dtx\\)$" . latex-mode)
                ("\\.gc$" . haskell.-mode)
                (,(concat "^" (getenv "HOME") "/News/") . mdwmail-mode)
-               (,(concat "^" tmpdir "/\\(SLRN\\|snd\\|pico\\)")
+               (,(concat "^" tmpdir "/\\(SLRN\\|snd\\|pico\\|mutt\\)")
                 . mdwmail-mode))
              auto-mode-alist))
 
 
 (mapcar (lambda (hook) (add-hook hook 'mdw-misc-mode-config))
        '(c-mode-hook c++-mode-hook objc-mode-hook java-mode-hook
-         perl-mode-hook cperl-mode-hook python-mode-hook awk-mode-hook
-         tcl-mode-hook asm-mode-hook
-         TeX-mode-hook LaTeX-mode-hook TeXinfo-mode-hook
-         tex-mode-hook latex-mode-hook texinfo-mode-hook
-         emacs-lisp-mode-hook scheme-mode-hook
-         lisp-mode-hook lisp-interaction-mode-hook inferior-lisp-mode-hook
-         slime-repl-mode-hook
-         sml-mode-hook haskell-mode-hook
+         csharp-mode-hook perl-mode-hook cperl-mode-hook
+         python-mode-hook awk-mode-hook tcl-mode-hook
+         asm-mode-hook TeX-mode-hook LaTeX-mode-hook
+         TeXinfo-mode-hook tex-mode-hook latex-mode-hook
+         texinfo-mode-hook emacs-lisp-mode-hook scheme-mode-hook
+         lisp-mode-hook lisp-interaction-mode-hook
+         inferior-lisp-mode-hook slime-repl-mode-hook
+         sml-mode-hook haskell-mode-hook erlang-mode-hook
          smalltalk-mode-hook rexx-mode-hook
          arm-assembler-mode-hook))
 
 (add-hook 'apcalc-mode-hook 'mdw-fontify-apcalc t)
 
 (add-hook 'java-mode-hook 'mdw-fontify-java t)
+(add-hook 'csharp-mode-hook 'mdw-fontify-csharp t)
 
 (add-hook 'awk-mode-hook 'mdw-fontify-awk t)
 
 
 (setq-default py-indent-offset 2)
 (add-hook 'python-mode-hook 'mdw-fontify-python t)
+(setq py-python-command-args `("-i" "-colors" ,(if mdw-black-background
+                                                  "Linux"
+                                                "LightBG")))
 
 (setq-default tcl-indent-level 2)
 (add-hook 'tcl-mode-hook 'mdw-fontify-tcl t)
 (add-hook 'haskell-mode-hook 'mdw-fontify-haskell t)
 (setq-default haskell-indent-offset 2)
 
+(add-hook 'erlang-mode-hook 'mdw-fontify-erlang t)
+
 (add-hook 'texinfo-mode-hook 'mdw-fontify-texinfo t)
 (add-hook 'TeXinfo-mode-hook 'mdw-fontify-texinfo t)
 
 (setq LaTeX-table-label "tbl:")
-(setq-default TeX-master nil)
-;; (setq TeX-parse-self t)
-;; (setq TeX-auto-save t)
 (setq TeX-auto-untabify nil)
 (add-hook 'TeX-mode-hook 'mdw-fontify-tex t)
 (add-hook 'tex-mode-hook 'mdw-fontify-tex t)
        ("^pdf$" "." "evince %o")
        ("^html?$" "." "netscape %o")))
 
+(setq reftex-use-external-file-finders t
+      reftex-auto-recenter-toc t)
+
+(setq reftex-label-alist
+      '(("theorem" ?T "th:" "~\\ref{%s}" t ("theorems?" "th\\.") -2)
+       ("axiom" ?A "ax:" "~\\ref{%s}" t ("axioms?" "ax\\.") -2)
+       ("definition" ?D "def:" "~\\ref{%s}" t ("definitions?" "def\\.") -2)
+       ("proposition" ?P "prop:" "~\\ref{%s}" t
+        ("propositions?" "prop\\.") -2)
+       ("lemma" ?P "lem:" "~\\ref{%s}" t ("lemmas?" "lem\\.") -2)
+       ("example" ?X "eg:" "~\\ref{%s}" t ("examples?") -2)
+       ("exercise" ?E "ex:" "~\\ref{%s}" t ("exercises?" "ex\\.") -2)
+       ("enumerate" ?i "i:" "~\\ref{%s}" item ("items?"))))
+(setq reftex-section-prefixes
+      '((0 . "part:")
+       (1 . "ch:")
+       (t . "sec:")))
+
+(setq bibtex-field-delimiters 'double-quotes
+      bibtex-entry-format '(realign opts-or-alts required-fields
+                           numerical-fields last-comma delimiters
+                           unify-case)
+      bibtex-include-OPTkey nil)
+
 ;;;----- SLIME setup --------------------------------------------------------
 
 (trap
              (cons head slime-lisp-implementations))))))
 (setq slime-default-lisp 'sbcl)
 
+;;;----- Blogging -----------------------------------------------------------
+
+(setq weblogger-config-alist
+      '(("vox"
+        ("user" . "mdw")
+        ("server-url" . "http://vox.distorted.org.uk/admin/mt-xmlrpc.cgi")
+        ("weblog" . "1"))))
+
 ;;;----- Shell mode ---------------------------------------------------------
 
 ;; --- Make the shell mode aware of my prompt ---
 ;; --- Notice passwords, and make C-a work right ---
 
 (add-hook 'shell-mode-hook #'mdw-sh-mode-setup)
+(add-hook 'shell-mode-hook #'ansi-color-for-comint-mode-on)
+(setq shell-font-lock-keywords nil)
 
 (add-hook 'term-mode-hook #'mdw-term-mode-setup)