-;; hilit19.el (Release 2.19) -- customizable highlighting for Emacs19.
+;;; hilit19.el --- customizable highlighting for Emacs19
+
;; Copyright (c) 1993, 1994 Free Software Foundation, Inc.
-;;
-;; Author: Jonathan Stigelman <Stig@netcom.com>
+
+;; Author: Jonathan Stigelman <stig@hackvan.com>
;; Keywords: faces
-;;
-;; This program is free software; you can redistribute it and/or modify
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2 of the License, or
-;; (at your option) any later version.
-;;
-;; This program is distributed in the hope that it will be useful,
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
-;;
+
;; You should have received a copy of the GNU General Public License
-;; along with this program; if not, write to the Free Software
-;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-;;
+;; along with GNU Emacs; see the file COPYING. If not, write to
+;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
;;; Commentary:
;; WHERE TO GET THE LATEST VERSIONS OF HILIT19.EL (beta and release),
;; PLUS LOTS OF OTHER *WAY COOL* STUFF VIA ANONYMOUS FTP:
;;
-;; netcom.com:/pub/stig/src/{Beta,Release}/hilit19.el.gz
+;; ftp.hackvan.com:/pub/stig/src/elisp/hilit19.el.gz
;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; hilit19.el,v 2.19 1993/09/08 18:44:10 stig Release
;;
;; LCD Archive Entry:
-;; hilit19|Jonathan Stigelman|Stig@netcom.com|
+;; hilit19|Jonathan Stigelman|stig@hackvan.com|
;; Comprehensive (and comparatively fast) regex-based highlighting for Emacs 19|
;; 1993/09/08 18:44:10|Release 2.19|~/packages/hilit19.el.Z|
;;
(eval-when-compile (require 'reporter)) ; no compilation gripes
(defun hilit-submit-feedback ()
- "Submit feedback on hilit19 to the author: Stig@netcom.com"
+ "Submit feedback on hilit19 to the author: stig@hackvan.com"
(interactive)
(require 'reporter)
(and (y-or-n-p "Do you really want to submit a report on hilit19? ")
(reporter-submit-bug-report
- "Jonathan Stigelman <Stig@netcom.com>"
+ "Jonathan Stigelman <stig@hackvan.com>"
"hilit19.el (Release 2.19)"
(and (y-or-n-p "Do you need to include a dump hilit variables? ")
(append
" [ ] a PATCH. (output of 'diff -uw old.el new.el' or 'diff -cw')\n"
" [ ] a SERIOUS AND REPRODUCABLE BUG that is not an EMACS bug\n"
" - I *swear* that it's not already mentioned in the KNOWN BUGS\n"
- " - I HAVE CHECKED netcom.com:/pub/stig/src/Beta/hilit19.el.gz\n"
+ " - I HAVE CHECKED ftp.hackvan.com:/pub/stig/src/elisp/hilit19.el.gz\n"
" for a newer release that fixes the problem.\n"
- " >> I HAVE ALSO CHECKED netcom.com:/pub/stig/src/Beta/hl319.el.gz\n"
+ " >> I HAVE ALSO CHECKED ftp.hackvan.com:/pub/stig/src/elisp/hl319.el.gz\n"
" This is the alpha version...what will become hilit19 (Beta 3.0).\n"
"\n"
"Hey Stig, I *know* you're busy but...\n"))))
(defconst hilit-default-face-table
'(
- ;; used for C/C++ and elisp and perl
+ ;; used for C/C++ and Emacs Lisp and perl
(comment firebrick-italic moccasin italic)
(include purple Plum1 bold-italic)
(define ForestGreen-bold green bold)
(if (> buffer-saved-size (car hilit-auto-rehighlight-fallback))
(setq hilit-auto-rehighlight
(cdr hilit-auto-rehighlight-fallback)))
- (if (> buffer-saved-size hilit-auto-highlight-maxout) nil
- (hilit-rehighlight-buffer)
- (set-buffer-modified-p nil)))))
+ (if (> buffer-saved-size hilit-auto-highlight-maxout)
+ nil
+ (let ((bm (buffer-modified-p)))
+ (hilit-rehighlight-buffer)
+ (set-buffer-modified-p bm))))))
(defun hilit-repaint-command (arg)
"Rehighlights according to the value of hilit-auto-rehighlight, or the
vm-preview-message-hook
vm-show-message-hook
- gnus-article-prepare-hook
- gnus-summary-prepare-hook
- gnus-group-prepare-hook
-
rmail-show-message-hook
mail-setup-hook
mh-show-mode-hook
dired-after-readin-hook
))
-
- ;; rehighlight only visible part of summary buffer for speed.
- (add-hook 'gnus-mark-article-hook
- (function
- (lambda ()
- (or (memq gnus-current-article gnus-newsgroup-marked)
- (gnus-summary-mark-as-read gnus-current-article))
- (gnus-summary-set-current-mark)
- (save-excursion
- (set-buffer gnus-summary-buffer)
- (hilit-rehighlight-region (window-start)
- (window-end) t)
- ))))
- ;; only need prepare article hook
- ;;
- ;; (add-hook 'gnus-select-article-hook
- ;; '(lambda () (save-excursion
- ;; (set-buffer gnus-article-buffer)
- ;; (hilit-rehighlight-buffer))))
)
(error (message "Error loading highlight hooks: %s" c)
(ding) (sit-for 1))))
(hilit-set-mode-patterns
'gnus-group-mode
- '(("^U.*$" nil gnus-group-unsubscribed)
- ("^ +[01]?[0-9]:.*$" nil gnus-group-empty)
+ '(("^ U.*$" nil gnus-group-unsubscribed)
+ ("^\\*? +[01]?[0-9]:.*$" nil gnus-group-empty)
("^ +[2-9][0-9]:.*$" nil gnus-group-full)
("^ +[0-9][0-9][0-9]+:.*$" nil gnus-group-overflowing)))
-(hilit-set-mode-patterns
- 'gnus-summary-mode
- '(("^D +[0-9]+: \\[.*$" nil summary-seen)
- ("^K +[0-9]+: \\[.*$" nil summary-killed)
- ("^X +[0-9]+: \\[.*$" nil summary-Xed)
- ("^- +[0-9]+: \\[.*$" nil summary-unread)
- ("^. +[0-9]+:\\+\\[.*$" nil summary-current)
- ("^ +[0-9]+: \\[.*$" nil summary-new)
- ))
-
(hilit-set-mode-patterns
'vm-summary-mode
'(("^ .*$" nil summary-seen)
("^\\s *(def\\(un\\|macro\\|advice\\|subst\\|method\\)\\s " "\\()\\|nil\\)" defun)
("^\\s *(\\(def\\(var\\|type\\|parameter\\)\\|declare\\)\\s +\\S +" nil decl)
- ("^\\s *(def\\(const\\(ant\\)?\\|class\\|struct\\)\\s \\S +[ \t\n]+\\((\\(([^()]*)\\|[^()]+\\)*)\\)?" nil define)
+ ("^\\s *(def\\(const\\(ant\\)?\\|class\\|struct\\)\\s \\S +[ \t\n]+" nil define)
("^\\s *(\\(provide\\|require\\|\\(auto\\)?load\\).*$" nil include)
("[ \t]\\&\\(key\\|rest\\|optional\\|aux\\)\\s *" nil keyword)
- ("(\\(let\\*?\\|locally\\|cond\\|if\\*?\\|or\\|and\\|map\\(car\\|c[ao]n\\)?\\|prog[nv1*]?\\|while\\|when\\|unless\\|do\\(\\*\\|list\\|times\\)\\|lambda\\|function\\|values\\|set\\([qf]\\|car\\|cdr\\)?\\|rplac[ad]\\|nconc\\|block\\|go\\|return\\(-from\\)?\\|[ec]?\\(type\\)?case\\|multiple-value-\\(bind\\|setq\\|list\\|call\\|prog1\\)\\|unwind-protect\\|handler-case\\|catch\\|throw\\|eval-when\\(-compile\\)?\\)[ \t\n]" 1 keyword)
+ ("(\\(let\\*?\\|locally\\|cond\\|if\\*?\\|or\\|and\\|map\\(car\\|c[ao]n\\)?\\|prog[nv1*]?\\|while\\|when\\|unless\\|do\\(\\*\\|list\\|times\\)\\|list\\|lambda\\|function\\|values\\|set\\([qf]\\|car\\|cdr\\)?\\|rplac[ad]\\|nconc\\|block\\|go\\|return\\(-from\\)?\\|[ec]?\\(type\\)?case\\|multiple-value-\\(bind\\|setq\\|list\\|call\\|prog1\\)\\|unwind-protect\\|handler-case\\|catch\\|throw\\|eval-when\\(-compile\\)?\\)[ \t\n]" 1 keyword)
))
(hilit-set-mode-patterns
'calendar-mode
'(("[A-Z][a-z]+ [0-9]+" nil define) ; month and year
- ("S M Tu W Th F S" nil label) ; week days
- ("[0-9]+\\*" nil defun) ; holidays
- ("[0-9]+\\+" nil comment) ; diary days
- ))
+ ("S M Tu W Th F S" nil label))) ; week days
+
+(hilit-set-mode-patterns
+ 'asm-mode
+ '(("/\\*" "\\*/" comment)
+ ("^#[ \t]*\\(undef\\|define\\).*$" "[^\\]$" define)
+ ("^#.*$" nil include)
+ ;; labels
+ ("^.+:" nil defun)
+ ;; assembler directives
+ ("^[ \t]*\\..*$" nil decl)
+ ;; register names
+ ("\\$[a-z0-9]+" nil string)
+ ;; mnemonics
+ ("^[ \t]*[a-z]+" nil struct)))
(hilit-set-mode-patterns
'pascal-mode
(provide 'hilit19)
;;; hilit19 ends here.
-
-
-;; __________________________________________________________________________
-;; Stig@netcom.com netcom.com:/pub/stig/00-PGP-KEY
-;; It's hard to be cutting-edge at your own pace... 32 DF B9 19 AE 28 D1 7A
-;; Bullet-proof code cannot stand up to teflon bugs. A3 9D 0B 1A 33 13 4D 7F
-