From: Mark Wooding Date: Sat, 21 Nov 2009 11:21:07 +0000 (+0000) Subject: Merge branch 'master' of metalzone:etc/profile X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/profile/commitdiff_plain/aec3b793a4877cbf5aee98eaac0f9efbc70eae33?hp=-c Merge branch 'master' of metalzone:etc/profile * 'master' of metalzone:etc/profile: dot/emacs: Consolidate chunks of `add-hook' settings and similar. el/dot-emacs.el: Turn on `reveal-mode' because it wins. bin/mdw-editor: Use `emacsclient' to edit files. dot/emacs: Always start the servers in Emacs 23. dot/emacs: Set frame parameters unconditionally. el/dot-emacs.el: Add `indent' and `debug' declarations to macros. dot/emacs, el/dot-emacs.el: Fix font configuration. dot/gnus.el: Use fancy tree drawing if using window-system output. dot/xinitrc: Run Emacs with GDK_NATIVE_WINDOWS=1. dot/xinitrc: Search for Emacs 23, and prefer it over other Emacsen. Conflicts: dot/emacs -- server startup differences --- aec3b793a4877cbf5aee98eaac0f9efbc70eae33 diff --combined dot/emacs index 2959e75,1b7b5c1..480abd1 --- a/dot/emacs +++ b/dot/emacs @@@ -87,10 -87,9 +87,10 @@@ ;; Emacs server behaviour. (and (or window-system (>= emacs-major-version 23)) - (trap (setq server-temp-file-regexp (concat "^" tmpdir "\\|/draft$")) - (start-server) - (gnuserv-start))) + (progn (setq server-temp-file-regexp (concat "^" tmpdir "\\|/draft$") + gnuserv-frame t) + (trap (server-start)) + (trap (gnuserv-start)))) ;; Control backup behaviour. @@@ -361,14 -360,13 +361,13 @@@ (mdw-uniquify-alist '((width . 78) (height . 33) - (vertical-scroll-bars . right)) - (and window-system - '((cursor-type . bar) - (cursor-blink . t) - (left-fringe . 5) - (right-fringe . 5) - (scroll-bar-width . 15))) - '((cursor-color . "red")) + (vertical-scroll-bars . right) + (cursor-type . bar) + (cursor-blink . t) + (left-fringe . 5) + (right-fringe . 5) + (scroll-bar-width . 15) + (cursor-color . "red")) (if mdw-black-background '((background-color . "black") (foreground-color . "white") @@@ -391,44 -389,45 +390,45 @@@ (windmove-default-keybindings)) (setq windmove-wrap-around t) (trap (iswitchb-mode)) - (global-set-key [?\C-x ?w left] 'windmove-left) - (global-set-key [?\C-x ?w ?h] 'windmove-left) - (global-set-key [?\C-x ?w up] 'windmove-up) - (global-set-key [?\C-x ?w ?k] 'windmove-up) - (global-set-key [?\C-x ?w down] 'windmove-down) - (global-set-key [?\C-x ?w ?j] 'windmove-down) - (global-set-key [?\C-x ?w right] 'windmove-right) - (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 ?\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) - (global-set-key [delete] 'delete-char) - (global-set-key [?\M-q] 'mdw-fill-paragraph) - (global-set-key [?\C-h ?\C-m] 'manual-entry) - (global-set-key [C-M-backspace] 'backward-kill-sexp) - (global-set-key [mode-line C-mouse-1] 'mouse-tear-off-window) - (global-set-key [vertical-scroll-bar C-down-mouse-1] - '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)) + (progn + (global-set-key [?\C-x ?w left] 'windmove-left) + (global-set-key [?\C-x ?w ?h] 'windmove-left) + (global-set-key [?\C-x ?w up] 'windmove-up) + (global-set-key [?\C-x ?w ?k] 'windmove-up) + (global-set-key [?\C-x ?w down] 'windmove-down) + (global-set-key [?\C-x ?w ?j] 'windmove-down) + (global-set-key [?\C-x ?w right] 'windmove-right) + (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 ?\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) + (global-set-key [delete] 'delete-char) + (global-set-key [?\M-q] 'mdw-fill-paragraph) + (global-set-key [?\C-h ?\C-m] 'manual-entry) + (global-set-key [C-M-backspace] 'backward-kill-sexp) + (global-set-key [mode-line C-mouse-1] 'mouse-tear-off-window) + (global-set-key [vertical-scroll-bar C-down-mouse-1] + '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))) (eval-after-load "dired" '(progn @@@ -550,52 -549,50 +550,50 @@@ (and (fboundp 'lazy-lock-mode) (setq font-lock-support-mode 'lazy-lock-mode)) ; (setq lazy-lock-defer-contextually t) - (setq lazy-lock-defer-time nil) - (setq font-lock-maximum-decoration 3) - (setq lazy-lock-minimum-size 0) - (setq lazy-lock-stealth-time 5) - (setq lazy-lock-stealth-lines 100) - (setq lazy-lock-stealth-verbose t) + (setq lazy-lock-defer-time nil + font-lock-maximum-decoration 3 + lazy-lock-minimum-size 0 + lazy-lock-stealth-time 5 + lazy-lock-stealth-lines 100 + lazy-lock-stealth-verbose t) - (add-hook 'after-make-frame-functions 'mdw-do-set-font) - (add-hook 'term-setup-hook (lambda () (mdw-do-set-font (selected-frame)))) - (add-hook 'window-setup-hook (lambda () (mdw-do-set-font (selected-frame)))) + (progn + (add-hook 'c-mode-hook 'mdw-fontify-c-and-c++ t) + (add-hook 'objc-mode-hook 'mdw-fontify-c-and-c++ t) + (add-hook 'c++-mode-hook 'mdw-fontify-c-and-c++ t) + (add-hook 'linux-c-mode-hook #'(lambda () (setq c-basic-offset 8))) + (add-hook 'asm-mode-hook 'mdw-fontify-asm t) - (add-hook 'c-mode-hook 'mdw-fontify-c-and-c++ t) - (add-hook 'objc-mode-hook 'mdw-fontify-c-and-c++ t) - (add-hook 'c++-mode-hook 'mdw-fontify-c-and-c++ t) - (add-hook 'linux-c-mode-hook #'(lambda () (setq c-basic-offset 8))) - (add-hook 'asm-mode-hook 'mdw-fontify-asm t) + (add-hook 'icon-mode-hook 'mdw-fontify-icon t) - (add-hook 'icon-mode-hook 'mdw-fontify-icon t) + (add-hook 'apcalc-mode-hook 'mdw-misc-mode-config t) + (add-hook 'apcalc-mode-hook 'mdw-fontify-apcalc t) - (add-hook 'apcalc-mode-hook 'mdw-misc-mode-config t) - (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 '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) - (add-hook 'awk-mode-hook 'mdw-fontify-awk t) + (add-hook 'perl-mode-hook 'mdw-fontify-perl t) + (add-hook 'cperl-mode-hook 'mdw-fontify-perl t)) - (add-hook 'perl-mode-hook 'mdw-fontify-perl t) - (add-hook 'cperl-mode-hook 'mdw-fontify-perl t) - - (setq-default py-indent-offset 2) - (add-hook 'python-mode-hook 'mdw-fontify-python t) - (add-hook 'pyrex-mode-hook 'mdw-fontify-pyrex t) - (setq py-python-command-args `("-i" "-colors" ,(if mdw-black-background - "Linux" - "LightBG"))) + (progn + (setq-default py-indent-offset 2 + py-python-command-args + `("-i" "-colors" ,(if mdw-black-background + "Linux" "LightBG"))) + (add-hook 'python-mode-hook 'mdw-fontify-python t) + (add-hook 'pyrex-mode-hook 'mdw-fontify-pyrex t)) (setq-default tcl-indent-level 2) (add-hook 'tcl-mode-hook 'mdw-fontify-tcl t) (add-hook 'rexx-mode-hook 'mdw-fontify-rexx t) - (setq sml-nested-if-indent t) - (setq sml-case-indent nil) - (setq sml-indent-level 4) - (setq sml-type-of-indent nil) + (setq sml-nested-if-indent t + sml-case-indent nil + sml-indent-level 4 + sml-type-of-indent nil) (add-hook 'sml-mode-hook 'mdw-fontify-sml t) (add-hook 'haskell-mode-hook 'mdw-fontify-haskell t) @@@ -620,16 -617,17 +618,17 @@@ (add-hook 'smalltalk-mode-hook 'mdw-fontify-smalltalk t) (add-hook 'smalltalk-mode-hook 'mdw-setup-smalltalk t) - (add-hook 'emacs-lisp-mode-hook 'mdw-fontify-lispy t) - (add-hook 'scheme-mode-hook 'mdw-fontify-lispy t) - (add-hook 'lisp-mode-hook 'mdw-fontify-lispy t) - (add-hook 'inferior-lisp-mode-hook 'mdw-fontify-lispy t) - (add-hook 'lisp-interaction-mode-hook 'mdw-fontify-lispy t) - (add-hook 'slime-repl-mode-hook 'mdw-fontify-lispy t) - (add-hook 'lisp-mode-hook 'mdw-common-lisp-indent t) - (add-hook 'inferior-lisp-mode-hook + (progn + (add-hook 'emacs-lisp-mode-hook 'mdw-fontify-lispy t) + (add-hook 'scheme-mode-hook 'mdw-fontify-lispy t) + (add-hook 'lisp-mode-hook 'mdw-fontify-lispy t) + (add-hook 'inferior-lisp-mode-hook 'mdw-fontify-lispy t) + (add-hook 'lisp-interaction-mode-hook 'mdw-fontify-lispy t) + (add-hook 'slime-repl-mode-hook 'mdw-fontify-lispy t) + (add-hook 'lisp-mode-hook 'mdw-common-lisp-indent t) + (add-hook 'inferior-lisp-mode-hook #'(lambda () - (local-set-key "\C-m" 'comint-send-and-indent)) t) + (local-set-key "\C-m" 'comint-send-and-indent)) t)) (add-hook 'text-mode-hook 'mdw-text-mode t) diff --combined el/dot-emacs.el index f535f10,069f202..1112f35 --- a/el/dot-emacs.el +++ b/el/dot-emacs.el @@@ -48,6 -48,8 +48,8 @@@ This may be at the expense of cool feat (defmacro mdw-regexps (&rest list) "Turn a LIST of strings into a single regular expression at compile-time." + (declare (indent nil) + (debug 0)) `',(make-regexp list)) ;; Some error trapping. @@@ -57,6 -59,8 +59,8 @@@ (defmacro trap (&rest forms) "Execute FORMS without allowing errors to propagate outside." + (declare (indent 0) + (debug t)) `(condition-case err ,(if (cdr forms) (cons 'progn forms) (car forms)) (error (message "Error (trapped): %s in %s" @@@ -501,42 -505,6 +505,42 @@@ CHECK is fboundp, and returning the cor (setq answer func))) answer)) +(eval-after-load "w3m-search" + '(progn + (dolist + (item + '(("g" "Google" "http://www.google.co.uk/search?q=%s") + ("gd" "Google Directory" + "http://www.google.com/search?cat=gwd/Top&q=%s") + ("gg" "Google Groups" "http://groups.google.com/groups?q=%s") + ("ward" "Ward's wiki" "http://c2.com/cgi/wiki?%s") + ("gi" "Images" "http://images.google.com/images?q=%s") + ("rfc" "RFC" + "http://metalzone.distorted.org.uk/ftp/pub/mirrors/rfc/rfc%s.txt.gz") + ("wp" "Wikipedia" + "http://en.wikipedia.org/wiki/Special:Search?go=Go&search=%s") + ("imdb" "IMDb" "http://www.imdb.com/Find?%s") + ("nc-wiki" "nCipher wiki" + "http://wiki.ncipher.com/wiki/bin/view/Devel/?topic=%s") + ("map" "Google maps" "http://maps.google.co.uk/maps?q=%s&hl=en") + ("lp" "Launchpad bug by number" + "https://bugs.launchpad.net/bugs/%s") + ("lppkg" "Launchpad bugs by package" + "https://bugs.launchpad.net/%s") + ("msdn" "MSDN" + "http://social.msdn.microsoft.com/Search/en-GB/?query=%s&ac=8") + ("debbug" "Debian bug by number" + "http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=%s") + ("debbugpkg" "Debian bugs by package" + "http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=%s") + ("ljlogin" "LJ login" "http://www.livejournal.com/login.bml"))) + (add-to-list 'w3m-search-engine-alist + (list (cadr item) (caddr item) nil)) + (add-to-list 'w3m-uri-replace-alist + (list (concat "\\`" (car item) ":") + 'w3m-search-uri-replace + (cadr item)))))) + ;;;-------------------------------------------------------------------------- ;;; Paragraph filling. @@@ -682,21 -650,13 +686,13 @@@ case. (gtags-mode)) (outline-minor-mode t) (hs-minor-mode t) - (mdw-set-font)) + (reveal-mode t) + (trap (turn-on-font-lock))) (eval-after-load 'gtags '(dolist (key '([mouse-2] [mouse-3])) (define-key gtags-mode-map key nil))) - ;; Set up all sorts of faces. - - (defvar mdw-set-font nil) - - (defvar mdw-punct-face 'mdw-punct-face "Face to use for punctuation") - (make-face 'mdw-punct-face) - (defvar mdw-number-face 'mdw-number-face "Face to use for numbers") - (make-face 'mdw-number-face) - ;; Backup file handling. (defvar mdw-backup-disable-regexps nil @@@ -718,148 -678,155 +714,173 @@@ doesn't match any of the regular expres answer)))) (setq backup-enable-predicate 'mdw-backup-enable-predicate) +;; Frame cleanup. + +(defun mdw-last-one-out-turn-off-the-lights (frame) + "Disconnect from an X display if this was the last frame on that display." + (let ((frame-display (frame-parameter frame 'display))) + (when (and frame-display + (eq window-system 'x) + (not (some (lambda (fr) + (message "checking frame %s" frame) + (and (not (eq fr frame)) + (string= (frame-parameter frame 'display) + 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) + ;;;-------------------------------------------------------------------------- ;;; General fontification. - (defun mdw-set-fonts (frame faces) - (while faces - (let ((face (caar faces))) - (or (facep face) (make-face face)) - (set-face-attribute face frame - :family 'unspecified - :width 'unspecified - :height 'unspecified - :weight 'unspecified - :slant 'unspecified - :foreground 'unspecified - :background 'unspecified - :underline 'unspecified - :overline 'unspecified - :strike-through 'unspecified - :box 'unspecified - :inverse-video 'unspecified - :stipple 'unspecified - ;:font 'unspecified - :inherit 'unspecified) - (apply 'set-face-attribute face frame (cdar faces)) - (setq faces (cdr faces))))) - - (defun mdw-do-set-font (&optional frame) - (interactive) - (mdw-set-fonts (and (boundp 'frame) frame) `( - (default :foreground "white" :background "black" - ,@(cond ((eq window-system 'w32) - '(:family "courier new" :height 85)) - ((eq window-system 'x) - '(:family "misc-fixed" :height 130 :width semi-condensed)))) - (fixed-pitch) - (minibuffer-prompt) - (mode-line :foreground "blue" :background "yellow" - :box (:line-width 1 :style released-button)) - (mode-line-inactive :foreground "yellow" :background "blue" - :box (:line-width 1 :style released-button)) - (scroll-bar :foreground "black" :background "lightgrey") - (fringe :foreground "yellow" :background "black") - (show-paren-match-face :background "darkgreen") - (show-paren-mismatch-face :background "red") - (font-lock-warning-face :background "red" :weight bold) - (highlight :background "DarkSeaGreen4") - (holiday-face :background "red") - (calendar-today-face :foreground "yellow" :weight bold) - (comint-highlight-prompt :weight bold) - (comint-highlight-input) - (font-lock-builtin-face :weight bold) - (font-lock-type-face :weight bold) - (region :background ,(if window-system "grey30" "blue")) - (isearch :background "palevioletred2") - (mdw-punct-face :foreground ,(if window-system "burlywood2" "yellow")) - (mdw-number-face :foreground "yellow") - (font-lock-function-name-face :weight bold) - (font-lock-variable-name-face :slant italic) - (font-lock-comment-delimiter-face - :foreground ,(if window-system "SeaGreen1" "green") - :slant italic) - (font-lock-comment-face - :foreground ,(if window-system "SeaGreen1" "green") - :slant italic) - (font-lock-string-face :foreground ,(if window-system "SkyBlue1" "cyan")) - (font-lock-keyword-face :weight bold) - (font-lock-constant-face :weight bold) - (font-lock-reference-face :weight bold) - (message-cited-text - :foreground ,(if window-system "SeaGreen1" "green") - :slant italic) - (message-separator :background "red" :foreground "white" :weight bold) - (message-header-cc - :foreground ,(if window-system "SeaGreen1" "green") - :weight bold) - (message-header-newsgroups - :foreground ,(if window-system "SeaGreen1" "green") - :weight bold) - (message-header-subject - :foreground ,(if window-system "SeaGreen1" "green") - :weight bold) - (message-header-to - :foreground ,(if window-system "SeaGreen1" "green") - :weight bold) - (message-header-xheader - :foreground ,(if window-system "SeaGreen1" "green") - :weight bold) - (message-header-other - :foreground ,(if window-system "SeaGreen1" "green") - :weight bold) - (message-header-name - :foreground ,(if window-system "SeaGreen1" "green")) - (woman-bold :weight bold) - (woman-italic :slant italic) - (p4-depot-added-face :foreground "green") - (p4-depot-branch-op-face :foreground "yellow") - (p4-depot-deleted-face :foreground "red") - (p4-depot-unmapped-face - :foreground ,(if window-system "SkyBlue1" "cyan")) - (p4-diff-change-face :foreground "yellow") - (p4-diff-del-face :foreground "red") - (p4-diff-file-face :foreground "SkyBlue1") - (p4-diff-head-face :background "grey10") - (p4-diff-ins-face :foreground "green") - (diff-index :weight bold) - (diff-file-header :weight bold) - (diff-hunk-header :foreground "SkyBlue1") - (diff-function :foreground "SkyBlue1" :weight bold) - (diff-header :background "grey10") - (diff-added :foreground "green") - (diff-removed :foreground "red") - (diff-context) - (whizzy-slice-face :background "grey10") - (whizzy-error-face :background "darkred") - (trailing-whitespace :background "red") - ))) - - (defun mdw-set-font () - (trap - (turn-on-font-lock) - (if (not mdw-set-font) - (progn - (setq mdw-set-font t) - (mdw-do-set-font nil))))) + (defmacro mdw-define-face (name &rest body) + "Define a face, and make sure it's actually set as the definition." + (declare (indent 1) + (debug 0)) + `(progn + (make-face ',name) + (defvar ,name ',name) + (put ',name 'face-defface-spec ',body) + )) + + (mdw-define-face default + (((type w32)) :family "courier new" :height 85) + (((type x)) :family "6x13" :height 130) + (t :foreground "white" :background "black")) + (mdw-define-face fixed-pitch + (((type w32)) :family "courier new" :height 85) + (((type x)) :family "6x13" :height 130) + (t :foreground "white" :background "black")) + (mdw-define-face region + (((type tty)) :background "blue") (t :background "grey30")) + (mdw-define-face minibuffer-prompt + (t :weight bold)) + (mdw-define-face mode-line + (t :foreground "blue" :background "yellow" + :box (:line-width 1 :style released-button))) + (mdw-define-face mode-line-inactive + (t :foreground "yellow" :background "blue" + :box (:line-width 1 :style released-button))) + (mdw-define-face scroll-bar + (t :foreground "black" :background "lightgrey")) + (mdw-define-face fringe + (t :foreground "yellow")) + (mdw-define-face show-paren-match-face + (t :background "darkgreen")) + (mdw-define-face show-paren-mismatch-face + (t :background "red")) + (mdw-define-face highlight + (t :background "DarkSeaGreen4")) + + (mdw-define-face holiday-face + (t :background "red")) + (mdw-define-face calendar-today-face + (t :foreground "yellow" :weight bold)) + + (mdw-define-face comint-highlight-prompt + (t :weight bold)) + (mdw-define-face comint-highlight-input + (t :slant italic)) + + (mdw-define-face trailing-whitespace + (t :background "red")) + (mdw-define-face mdw-punct-face + (((type tty)) :foreground "yellow") (t :foreground "burlywood2")) + (mdw-define-face mdw-number-face + (t :foreground "yellow")) + (mdw-define-face font-lock-function-name-face + (t :weight bold)) + (mdw-define-face font-lock-keyword-face + (t :weight bold)) + (mdw-define-face font-lock-constant-face + (t :slant italic)) + (mdw-define-face font-lock-builtin-face + (t :weight bold)) + (mdw-define-face font-lock-reference-face + (t :weight bold)) + (mdw-define-face font-lock-variable-name-face + (t :slant italic)) + (mdw-define-face font-lock-comment-delimiter-face + (default :slant italic) + (((type tty)) :foreground "green") (t :foreground "SeaGreen1")) + (mdw-define-face font-lock-comment-face + (default :slant italic) + (((type tty)) :foreground "green") (t :foreground "SeaGreen1")) + (mdw-define-face font-lock-string-face + (t :foreground "SkyBlue1")) + + (mdw-define-face message-separator + (t :background "red" :foreground "white" :weight bold)) + (mdw-define-face message-cited-text + (default :slant italic) + (((type tty)) :foreground "green") (t :foreground "SeaGreen1")) + (mdw-define-face message-header-cc + (default :weight bold) + (((type tty)) :foreground "green") (t :foreground "SeaGreen1")) + (mdw-define-face message-header-newsgroups + (default :weight bold) + (((type tty)) :foreground "green") (t :foreground "SeaGreen1")) + (mdw-define-face message-header-subject + (default :weight bold) + (((type tty)) :foreground "green") (t :foreground "SeaGreen1")) + (mdw-define-face message-header-to + (default :weight bold) + (((type tty)) :foreground "green") (t :foreground "SeaGreen1")) + (mdw-define-face message-header-xheader + (default :weight bold) + (((type tty)) :foreground "green") (t :foreground "SeaGreen1")) + (mdw-define-face message-header-other + (default :weight bold) + (((type tty)) :foreground "green") (t :foreground "SeaGreen1")) + (mdw-define-face message-header-name + (((type tty)) :foreground "green") (t :foreground "SeaGreen1")) + + (mdw-define-face diff-index + (t :weight bold)) + (mdw-define-face diff-file-header + (t :weight bold)) + (mdw-define-face diff-hunk-header + (t :foreground "SkyBlue1")) + (mdw-define-face diff-function + (t :foreground "SkyBlue1" :weight bold)) + (mdw-define-face diff-header + (t :background "grey10")) + (mdw-define-face diff-added + (t :foreground "green")) + (mdw-define-face diff-removed + (t :foreground "red")) + (mdw-define-face diff-context) + + (mdw-define-face woman-bold + (t :weight bold)) + (mdw-define-face woman-italic + (t :slant italic)) + + (mdw-define-face p4-depot-added-face + (t :foreground "green")) + (mdw-define-face p4-depot-branch-op-face + (t :foreground "yellow")) + (mdw-define-face p4-depot-deleted-face + (t :foreground "red")) + (mdw-define-face p4-depot-unmapped-face + (t :foreground "SkyBlue1")) + (mdw-define-face p4-diff-change-face + (t :foreground "yellow")) + (mdw-define-face p4-diff-del-face + (t :foreground "red")) + (mdw-define-face p4-diff-file-face + (t :foreground "SkyBlue1")) + (mdw-define-face p4-diff-head-face + (t :background "grey10")) + (mdw-define-face p4-diff-ins-face + (t :foreground "green")) + + (mdw-define-face whizzy-slice-face + (t :background "grey10")) + (mdw-define-face whizzy-error-face + (t :background "darkred")) ;;;-------------------------------------------------------------------------- ;;; C programming configuration. @@@ -2248,21 -2215,6 +2269,21 @@@ strip numbers instead. (define-key term-raw-map [M-left] 'term-send-meta-left) (define-key term-raw-map [?\e ?\M-O ?D] 'term-send-meta-left))) +;;;-------------------------------------------------------------------------- +;;; Inferior Emacs Lisp. + +(setq comint-prompt-read-only t) + +(eval-after-load "comint" + '(progn + (define-key comint-mode-map "\C-w" 'comint-kill-region) + (define-key comint-mode-map [C-S-backspace] 'comint-kill-whole-line))) + +(eval-after-load "ielm" + '(progn + (define-key ielm-map "\C-w" 'comint-kill-region) + (define-key ielm-map [C-S-backspace] 'comint-kill-whole-line))) + ;;;----- That's all, folks -------------------------------------------------- (provide 'dot-emacs)