el/dot-emacs.el: Remove stray debugging code.
[profile] / el / dot-emacs.el
index 95cfac4..f66b833 100644 (file)
@@ -682,7 +682,7 @@ case."
   (setq fill-column 77)
   (setq show-trailing-whitespace t)
   (let ((whitespace-style (remove 'trailing whitespace-style)))
-    (whitespace-mode t))
+    (trap (whitespace-mode t)))
   (and (fboundp 'gtags-mode)
        (gtags-mode))
   (outline-minor-mode t)
@@ -690,6 +690,10 @@ case."
   (reveal-mode t)
   (trap (turn-on-font-lock)))
 
+(defun mdw-post-config-mode-hack ()
+  (let ((whitespace-style (remove 'trailing whitespace-style)))
+    (trap (whitespace-mode t))))
+
 (eval-after-load 'gtags
   '(progn
      (dolist (key '([mouse-2] [mouse-3]))
@@ -735,7 +739,6 @@ doesn't match any of the regular expressions in
                                          frame-display)
                                 (progn "frame %s still uses us" nil)))
                          (frame-list))))
-      (message "turn out the lights")
       (run-with-idle-timer 0 nil #'x-close-connection frame-display))))
 (add-hook 'delete-frame-functions 'mdw-last-one-out-turn-off-the-lights)
 
@@ -1129,7 +1132,9 @@ doesn't match any of the regular expressions in
 
           ;; And anything else is punctuation.
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face))))
+
+    (mdw-post-config-mode-hack)))
 
 ;;;--------------------------------------------------------------------------
 ;;; AP calc mode.
@@ -1181,7 +1186,9 @@ doesn't match any of the regular expressions in
 
           ;; And anything else is punctuation.
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; Java programming configuration.
@@ -1243,7 +1250,9 @@ doesn't match any of the regular expressions in
 
           ;; And anything else is punctuation.
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; C# programming configuration.
@@ -1310,7 +1319,9 @@ doesn't match any of the regular expressions in
 
           ;; And anything else is punctuation.
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 (define-derived-mode csharp-mode java-mode "C#"
   "Major mode for editing C# code.")
@@ -1346,7 +1357,9 @@ doesn't match any of the regular expressions in
 
           ;; And anything else is punctuation.
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; Awk programming configuration.
@@ -1404,7 +1417,9 @@ doesn't match any of the regular expressions in
 
           ;; And anything else is punctuation.
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; Perl programming style.
@@ -1451,7 +1466,9 @@ doesn't match any of the regular expressions in
 
           ;; And anything else is punctuation.
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 (defun perl-number-tests (&optional arg)
   "Assign consecutive numbers to lines containing `#t'.  With ARG,
@@ -1493,7 +1510,9 @@ strip numbers instead."
 
         ;; And anything else is punctuation.
         (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-              '(0 mdw-punct-face)))))
+              '(0 mdw-punct-face))))
+
+  (mdw-post-config-mode-hack))
 
 ;; Define Python fontification styles.
 
@@ -1567,7 +1586,9 @@ strip numbers instead."
 
           ;; And anything else is punctuation.
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; ARM assembler programming configuration.
@@ -1648,8 +1669,9 @@ strip numbers instead."
 
         ;; And anything else is punctuation.
         (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-              '(0 mdw-punct-face))))
+              '(0 mdw-punct-face)))
 
+  (mdw-post-config-mode-hack))
   (run-hooks 'arm-assembler-mode-hook))
 
 ;;;--------------------------------------------------------------------------
@@ -1675,7 +1697,8 @@ strip numbers instead."
                       "\\([eE]\\([-+]\\|\\)[0-9_]+\\|\\)")
               '(0 mdw-number-face))
         (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-              '(0 mdw-punct-face)))))
+              '(0 mdw-punct-face))))
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; REXX configuration.
@@ -1748,7 +1771,9 @@ strip numbers instead."
 
           ;; And everything else is punctuation.
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; Standard ML programming style.
@@ -1798,7 +1823,9 @@ strip numbers instead."
 
           ;; And anything else is punctuation.
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; Haskell configuration.
@@ -1835,7 +1862,9 @@ strip numbers instead."
                         "\\([eE]\\([-+]\\|\\)[0-9]+\\|\\)")
                 '(0 mdw-number-face))
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; Erlang configuration.
@@ -1869,7 +1898,9 @@ strip numbers instead."
           (list "\\<[0-9]+\\(\\|#[0-9a-zA-Z]+\\|[eE][+-]?[0-9]+\\)\\>"
                 '(0 mdw-number-face))
           (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-                '(0 mdw-punct-face))))))
+                '(0 mdw-punct-face)))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; Texinfo configuration.
@@ -1903,7 +1934,9 @@ strip numbers instead."
 
         ;; Fontify TeX special characters as punctuation.
         (list "[{}]+"
-              '(0 mdw-punct-face)))))
+              '(0 mdw-punct-face))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; TeX and LaTeX configuration.
@@ -1969,7 +2002,9 @@ strip numbers instead."
 
         ;; Fontify TeX special characters as punctuation.
         (list "[$^_{}#&]"
-              '(0 mdw-punct-face)))))
+              '(0 mdw-punct-face))))
+
+  (mdw-post-config-mode-hack))
 
 ;;;--------------------------------------------------------------------------
 ;;; SGML hacking.
@@ -2020,6 +2055,32 @@ strip numbers instead."
   (setq sh-basic-offset 2))
 
 ;;;--------------------------------------------------------------------------
+;;; Emacs shell mode.
+
+(defun mdw-eshell-prompt ()
+  (let ((left "[") (right "]"))
+    (when (= (user-uid) 0)
+      (setq left "«" right "»"))
+    (concat left
+           (save-match-data
+             (replace-regexp-in-string "\\..*$" "" (system-name)))
+           " "
+           (eshell/pwd)
+           right)))
+(setq eshell-prompt-function 'mdw-eshell-prompt)
+(setq eshell-prompt-regexp "^\\[[^]]+\\]")
+
+(mdw-define-face eshell-prompt (t :weight bold))
+(mdw-define-face eshell-ls-archive (t :weight bold :foreground "red"))
+(mdw-define-face eshell-ls-backup (t :foreground "lightgrey" :slant italic))
+(mdw-define-face eshell-ls-product (t :foreground "lightgrey" :slant italic))
+(mdw-define-face eshell-ls-clutter (t :foreground "lightgrey" :slant italic))
+(mdw-define-face eshell-ls-executable (t :weight bold))
+(mdw-define-face eshell-ls-directory (t :foreground "cyan" :weight bold))
+(mdw-define-face eshell-ls-readonly (t nil))
+(mdw-define-face eshell-ls-symlink (t :foreground "cyan"))
+
+;;;--------------------------------------------------------------------------
 ;;; Messages-file mode.
 
 (defun messages-mode-guts ()
@@ -2221,7 +2282,8 @@ strip numbers instead."
                       "\\([eE]\\([-+]\\|\\)[0-9_]+\\|\\)")
               '(0 mdw-number-face))
         (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-              '(0 mdw-punct-face)))))
+              '(0 mdw-punct-face))))
+  (mdw-post-config-mode-hack))
 
 ;; Lispy languages.
 
@@ -2261,7 +2323,9 @@ strip numbers instead."
   (setq font-lock-keywords
        (list
         (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)"
-              '(0 mdw-punct-face)))))
+              '(0 mdw-punct-face))))
+
+  (mdw-post-config-mode-hack))
 
 (defun comint-send-and-indent ()
   (interactive)