X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/00bc10dab1f80e3fcf1b8e67dd7618c32ae3926d..5e56b3fb5aac96b5a65800da0495cef072388edf:/lisp/generic-x.el diff --git a/lisp/generic-x.el b/lisp/generic-x.el index 55c4e48280..3310c38ade 100644 --- a/lisp/generic-x.el +++ b/lisp/generic-x.el @@ -1,7 +1,7 @@ ;;; generic-x.el --- A collection of generic modes -;; Copyright (C) 1997, 1998, 2002, 2003, 2004, -;; 2005, 2006 Free Software Foundation, Inc. +;; Copyright (C) 1997, 1998, 2001, 2002, 2003, 2004, +;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc. ;; Author: Peter Breton ;; Created: Tue Oct 08 1996 @@ -11,7 +11,7 @@ ;; 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, or (at your option) +;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; GNU Emacs is distributed in the hope that it will be useful, @@ -26,7 +26,7 @@ ;;; Commentary: ;; -;; This file contains a collection generic modes. +;; This file contains a collection of generic modes. ;; ;; INSTALLATION: ;; @@ -221,6 +221,7 @@ This hook will be installed if the variable etc-modules-conf-generic-mode etc-passwd-generic-mode etc-services-generic-mode + etc-sudoers-generic-mode fvwm-generic-mode inetd-conf-generic-mode mailagent-rules-generic-mode @@ -244,7 +245,7 @@ This hook will be installed if the variable (memq system-type '(windows-nt ms-dos)) "*Non-nil means the modes in `generic-mswindows-modes' will be defined. This is a list of MS-Windows specific generic modes. This variable -only effects the default value of `generic-extras-enable-list'." +only affects the default value of `generic-extras-enable-list'." :group 'generic-x :type 'boolean :version "22.1") @@ -254,7 +255,7 @@ only effects the default value of `generic-extras-enable-list'." (not (memq system-type '(windows-nt ms-dos))) "*Non-nil means the modes in `generic-unix-modes' will be defined. This is a list of Unix specific generic modes. This variable only -effects the default value of `generic-extras-enable-list'." +affects the default value of `generic-extras-enable-list'." :group 'generic-x :type 'boolean :version "22.1") @@ -317,7 +318,7 @@ your changes into effect." (2 font-lock-variable-name-face))) '("access_log\\'") nil - "Mode for Apache log files")) + "Mode for Apache log files.")) ;;; Samba (when (memq 'samba-generic-mode generic-extras-enable-list) @@ -383,6 +384,10 @@ your changes into effect." "Generic mode for HOSTS files.")) ;;; Windows INF files + +;; If i-g-m-f-f-h is defined, then so is i-g-m. +(declare-function ini-generic-mode "generic-x") + (when (memq 'inf-generic-mode generic-extras-enable-list) (define-generic-mode inf-generic-mode @@ -443,6 +448,8 @@ like an INI file. You can add this hook to `find-file-hook'." '((nil "^\\s-*\\(.*\\)\\s-*=" 1)))))) "Generic mode for MS-Windows Registry files.")) +(declare-function w32-shell-name "w32-fns" ()) + ;;; DOS/Windows BAT files (when (memq 'bat-generic-mode generic-extras-enable-list) @@ -512,16 +519,17 @@ like an INI file. You can add this hook to `find-file-hook'." (1 font-lock-builtin-face) (2 font-lock-variable-name-face t t)))) '("\\.[bB][aA][tT]\\'" + "\\.[cC][mM][dD]\\'" "\\`[cC][oO][nN][fF][iI][gG]\\." "\\`[aA][uU][tT][oO][eE][xX][eE][cC]\\.") '(generic-bat-mode-setup-function) - "Generic mode for MS-Windows BAT files.") + "Generic mode for MS-Windows batch files.") (defvar bat-generic-mode-syntax-table nil "Syntax table in use in `bat-generic-mode' buffers.") (defvar bat-generic-mode-keymap (make-sparse-keymap) - "Keymap for bet-generic-mode.") + "Keymap for `bat-generic-mode'.") (defun bat-generic-mode-compile () "Run the current BAT file in a compilation buffer." @@ -783,7 +791,7 @@ like an INI file. You can add this hook to `find-file-hook'." (2 font-lock-constant-face))) '("[mM][aA][nN][iI][fF][eE][sS][tT]\\.[mM][fF]\\'") nil - "Mode for Java Manifest files")) + "Mode for Java Manifest files.")) ;; Java properties files (when (memq 'java-properties-generic-mode generic-extras-enable-list) @@ -1729,6 +1737,21 @@ like an INI file. You can add this hook to `find-file-hook'." (setq imenu-generic-expression '((nil "^\\([^# \t]+\\)\\s-+" 1)))))))) +;; /etc/sudoers +(when (memq 'etc-sudoers-generic-mode generic-extras-enable-list) + +(define-generic-mode etc-sudoers-generic-mode + '(?#) + '("User_Alias" "Runas_Alias" "Host_Alias" "Cmnd_Alias" + "NOPASSWD" "PASSWD" "NOEXEC" "EXEC" + "ALL") + '(("\\<\\(root\\|su\\)\\>" 1 font-lock-warning-face) + ("\\(\\*\\)" 1 font-lock-warning-face) + ("\\<\\(%[A-Za-z0-9_]+\\)\\>" 1 font-lock-variable-name-face)) + '("/etc/sudoers\\'") + nil + "Generic mode for sudoers configuration files.")) + ;; From Jacques Duthen (when (memq 'show-tabs-generic-mode generic-extras-enable-list) @@ -1775,7 +1798,7 @@ like an INI file. You can add this hook to `find-file-hook'." nil ;; no auto-mode-alist ;; '(show-tabs-generic-mode-hook-fun) nil - "Generic mode to show tabs and trailing spaces")) + "Generic mode to show tabs and trailing spaces.")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; DNS modes