[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Emacs mode for preseed files



Nothing "serious", I just like colourful editing.  I sent
the file also as a wishlist bug (#279061) for the debian-el
package.  Cheers,
-- 
W. Borgert <debacle@debian.org>, http://people.debian.org/~debacle/
;;; preseed.el --- a major mode for editing d-i preseed files
;; 2004-10-31, W. Borgert <debacle@debian.org>
;; Use this file under the terms of the GNU General Public License

(require 'font-lock)

(defvar preseed-mode-abbrev-table nil
  "Abbreviation table used in d-i preseed buffers.")
(define-abbrev-table 'preseed-mode-abbrev-table ())

(setq preseed-font-lock-keywords
      (eval-when-compile
	(list
	 (list "\\(^\\s-+#.*\\)" '(1 font-lock-comment-face))
	 (list "^\\(\\S-+\\)\\s-+\\(\\S-+\\)\\s-+\\(\\S-+\\)"
	       '(1 font-lock-keyword-face)
               '(2 font-lock-function-name-face)
	       '(3 font-lock-type-face)))))

(defun preseed-mode ()
  "Major mode for editing d-i preseed files colourfully."
  (interactive)
  (kill-all-local-variables)
  (setq comment-start "#"
 	comment-multi-line nil
	comment-start-skip "#+[\t ]*")
  (setq major-mode 'preseed-mode
 	mode-name "Preseed"
 	local-abbrev-table preseed-mode-abbrev-table)
  (run-hooks 'preseed-mode-hook)
  (set (make-local-variable 'font-lock-defaults)
       '(preseed-font-lock-keywords nil nil ((?_ . "w")))))

(provide 'preseed)

Reply to: