X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/aec3b793a4877cbf5aee98eaac0f9efbc70eae33..782c3e35937e7438daf6073cddafdf21f4fc36fd:/el/dot-emacs.el?ds=sidebyside diff --git a/el/dot-emacs.el b/el/dot-emacs.el index 1112f35..404233b 100644 --- a/el/dot-emacs.el +++ b/el/dot-emacs.el @@ -233,7 +233,7 @@ Evil key bindings are defined in `mdw-evil-keymap-keys'." (dolist (key replacements) (define-key keymap key binding)))))) -(eval-after-load "org" +(eval-after-load "org-latex" '(progn (push '("strayman" "\\documentclass{strayman} @@ -690,8 +690,14 @@ case." (trap (turn-on-font-lock))) (eval-after-load 'gtags - '(dolist (key '([mouse-2] [mouse-3])) - (define-key gtags-mode-map key nil))) + '(progn + (dolist (key '([mouse-2] [mouse-3])) + (define-key gtags-mode-map key nil)) + (define-key gtags-mode-map [C-S-mouse-2] 'gtags-find-tag-by-event) + (define-key gtags-select-mode-map [C-S-mouse-2] + 'gtags-select-tag-by-event) + (dolist (map (list gtags-mode-map gtags-select-mode-map)) + (define-key map [C-S-mouse-3] 'gtags-pop-stack)))) ;; Backup file handling. @@ -743,7 +749,7 @@ doesn't match any of the regular expressions in (make-face ',name) (defvar ,name ',name) (put ',name 'face-defface-spec ',body) - )) + (face-spec-set ',name ',body nil))) (mdw-define-face default (((type w32)) :family "courier new" :height 85) @@ -753,6 +759,11 @@ doesn't match any of the regular expressions in (((type w32)) :family "courier new" :height 85) (((type x)) :family "6x13" :height 130) (t :foreground "white" :background "black")) +(if (>= emacs-major-version 23) + (mdw-define-face variable-pitch + (((type x)) :family "sans" :height 100)) + (mdw-define-face variable-pitch + (((type x)) :family "helvetica" :height 120))) (mdw-define-face region (((type tty)) :background "blue") (t :background "grey30")) (mdw-define-face minibuffer-prompt @@ -767,9 +778,9 @@ doesn't match any of the regular expressions in (t :foreground "black" :background "lightgrey")) (mdw-define-face fringe (t :foreground "yellow")) -(mdw-define-face show-paren-match-face +(mdw-define-face show-paren-match (t :background "darkgreen")) -(mdw-define-face show-paren-mismatch-face +(mdw-define-face show-paren-mismatch (t :background "red")) (mdw-define-face highlight (t :background "DarkSeaGreen4")) @@ -791,13 +802,15 @@ doesn't match any of the regular expressions in (mdw-define-face mdw-number-face (t :foreground "yellow")) (mdw-define-face font-lock-function-name-face - (t :weight bold)) + (t :slant italic)) (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-type-face + (t :weight bold :slant italic)) (mdw-define-face font-lock-reference-face (t :weight bold)) (mdw-define-face font-lock-variable-name-face @@ -853,6 +866,9 @@ doesn't match any of the regular expressions in (t :foreground "red")) (mdw-define-face diff-context) +(mdw-define-face erc-input-face + (t :foreground "red")) + (mdw-define-face woman-bold (t :weight bold)) (mdw-define-face woman-italic @@ -1289,6 +1305,39 @@ doesn't match any of the regular expressions in "Major mode for editing C# code.") ;;;-------------------------------------------------------------------------- +;;; Go programming configuration. + +(defun mdw-fontify-go () + + (make-local-variable 'font-lock-keywords) + (let ((go-keywords + (mdw-regexps "break" "case" "chan" "const" "continue" + "default" "defer" "else" "fallthrough" "for" + "func" "go" "goto" "if" "import" + "interface" "map" "package" "range" "return" + "select" "struct" "switch" "type" "var"))) + + (setq font-lock-keywords + (list + + ;; Handle the keywords defined above. + (list (concat "\\<\\(" go-keywords "\\)\\>") + '(0 font-lock-keyword-face)) + + ;; Handle numbers too. + ;; + ;; The following isn't quite right, but it's close enough. + (list (concat "\\<\\(" + "0\\([xX][0-9a-fA-F]+\\|[0-7]+\\)\\|" + "[0-9]+\\(\\.[0-9]*\\|\\)" + "\\([eE]\\([-+]\\|\\)[0-9]+\\|\\)\\)") + '(0 mdw-number-face)) + + ;; And anything else is punctuation. + (list "\\(\\s.\\|\\s(\\|\\s)\\|\\s\\\\|\\s/\\)" + '(0 mdw-punct-face)))))) + +;;;-------------------------------------------------------------------------- ;;; Awk programming configuration. ;; Make Awk indentation nice. @@ -2236,6 +2285,9 @@ strip numbers instead." (setq hs-hide-comments-when-hiding-all nil) +(defadvice hs-hide-all (after hide-first-comment activate) + (save-excursion (hs-hide-initial-comment-block))) + ;;;-------------------------------------------------------------------------- ;;; Shell mode.