comparison lisp/generic-x.el @ 98343:09db47fa2c88

* generic-x.el (generic-other-modes): Fix typo in docstring. (generic-use-find-file-hook, generic-lines-to-scan) (generic-find-file-regexp, generic-ignore-files-regexp) (generic-define-mswindows-modes, generic-define-unix-modes): Remove `*' from docstring. (generic-mode-find-file-hook): Use `string-match-p'. (apache-log-generic-mode, mailagent-rules-generic-mode) (prototype-generic-mode, pkginfo-generic-mode, javascript-generic-mode) (java-manifest-generic-mode, java-properties-generic-mode) (alias-generic-mode): Doc fix: use "Generic mode" in docstrings for consistency with other modes in generic-x.el.
author Juanma Barranquero <lekktu@gmail.com>
date Thu, 25 Sep 2008 10:45:20 +0000
parents ee5932bf781d
children a9dc0e7c3f2b
comparison
equal deleted inserted replaced
98342:5ec221ffbf0e 98343:09db47fa2c88
118 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 118 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
119 ;; Default-Generic mode 119 ;; Default-Generic mode
120 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 120 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
121 121
122 (defcustom generic-use-find-file-hook t 122 (defcustom generic-use-find-file-hook t
123 "*If non-nil, add a hook to enter `default-generic-mode' automatically. 123 "If non-nil, add a hook to enter `default-generic-mode' automatically.
124 This is done if the first few lines of a file in fundamental mode 124 This is done if the first few lines of a file in fundamental mode
125 start with a hash comment character." 125 start with a hash comment character."
126 :group 'generic-x 126 :group 'generic-x
127 :type 'boolean) 127 :type 'boolean)
128 128
129 (defcustom generic-lines-to-scan 3 129 (defcustom generic-lines-to-scan 3
130 "*Number of lines that `generic-mode-find-file-hook' looks at. 130 "Number of lines that `generic-mode-find-file-hook' looks at.
131 Relevant when deciding whether to enter Default-Generic mode automatically. 131 Relevant when deciding whether to enter Default-Generic mode automatically.
132 This variable should be set to a small positive number." 132 This variable should be set to a small positive number."
133 :group 'generic-x 133 :group 'generic-x
134 :type 'integer) 134 :type 'integer)
135 135
136 (defcustom generic-find-file-regexp "^#" 136 (defcustom generic-find-file-regexp "^#"
137 "*Regular expression used by `generic-mode-find-file-hook'. 137 "Regular expression used by `generic-mode-find-file-hook'.
138 Files in fundamental mode whose first few lines contain a match 138 Files in fundamental mode whose first few lines contain a match
139 for this regexp, should be put into Default-Generic mode instead. 139 for this regexp, should be put into Default-Generic mode instead.
140 The number of lines tested for the matches is specified by the 140 The number of lines tested for the matches is specified by the
141 value of the variable `generic-lines-to-scan', which see." 141 value of the variable `generic-lines-to-scan', which see."
142 :group 'generic-x 142 :group 'generic-x
143 :type 'regexp) 143 :type 'regexp)
144 144
145 (defcustom generic-ignore-files-regexp "[Tt][Aa][Gg][Ss]\\'" 145 (defcustom generic-ignore-files-regexp "[Tt][Aa][Gg][Ss]\\'"
146 "*Regular expression used by `generic-mode-find-file-hook'. 146 "Regular expression used by `generic-mode-find-file-hook'.
147 Files whose names match this regular expression should not be put 147 Files whose names match this regular expression should not be put
148 into Default-Generic mode, even if they have lines which match 148 into Default-Generic mode, even if they have lines which match
149 the regexp in `generic-find-file-regexp'. If the value is nil, 149 the regexp in `generic-find-file-regexp'. If the value is nil,
150 `generic-mode-find-file-hook' does not check the file names." 150 `generic-mode-find-file-hook' does not check the file names."
151 :group 'generic-x 151 :group 'generic-x
169 This hook will be installed if the variable 169 This hook will be installed if the variable
170 `generic-use-find-file-hook' is non-nil. The variable 170 `generic-use-find-file-hook' is non-nil. The variable
171 `generic-lines-to-scan' determines the number of lines to look at." 171 `generic-lines-to-scan' determines the number of lines to look at."
172 (when (and (eq major-mode 'fundamental-mode) 172 (when (and (eq major-mode 'fundamental-mode)
173 (or (null generic-ignore-files-regexp) 173 (or (null generic-ignore-files-regexp)
174 (not (string-match 174 (not (string-match-p
175 generic-ignore-files-regexp 175 generic-ignore-files-regexp
176 (file-name-sans-versions buffer-file-name))))) 176 (file-name-sans-versions buffer-file-name)))))
177 (save-excursion 177 (save-excursion
178 (goto-char (point-min)) 178 (goto-char (point-min))
179 (when (re-search-forward generic-find-file-regexp 179 (when (re-search-forward generic-find-file-regexp
235 (defconst generic-other-modes 235 (defconst generic-other-modes
236 '(astap-generic-mode 236 '(astap-generic-mode
237 ibis-generic-mode 237 ibis-generic-mode
238 pkginfo-generic-mode 238 pkginfo-generic-mode
239 spice-generic-mode) 239 spice-generic-mode)
240 "List of generic mode that are not defined by default.") 240 "List of generic modes that are not defined by default.")
241 241
242 (defcustom generic-define-mswindows-modes 242 (defcustom generic-define-mswindows-modes
243 (memq system-type '(windows-nt ms-dos)) 243 (memq system-type '(windows-nt ms-dos))
244 "*Non-nil means the modes in `generic-mswindows-modes' will be defined. 244 "Non-nil means the modes in `generic-mswindows-modes' will be defined.
245 This is a list of MS-Windows specific generic modes. This variable 245 This is a list of MS-Windows specific generic modes. This variable
246 only affects the default value of `generic-extras-enable-list'." 246 only affects the default value of `generic-extras-enable-list'."
247 :group 'generic-x 247 :group 'generic-x
248 :type 'boolean 248 :type 'boolean
249 :version "22.1") 249 :version "22.1")
250 (make-obsolete-variable 'generic-define-mswindows-modes 'generic-extras-enable-list "22.1") 250 (make-obsolete-variable 'generic-define-mswindows-modes 'generic-extras-enable-list "22.1")
251 251
252 (defcustom generic-define-unix-modes 252 (defcustom generic-define-unix-modes
253 (not (memq system-type '(windows-nt ms-dos))) 253 (not (memq system-type '(windows-nt ms-dos)))
254 "*Non-nil means the modes in `generic-unix-modes' will be defined. 254 "Non-nil means the modes in `generic-unix-modes' will be defined.
255 This is a list of Unix specific generic modes. This variable only 255 This is a list of Unix specific generic modes. This variable only
256 affects the default value of `generic-extras-enable-list'." 256 affects the default value of `generic-extras-enable-list'."
257 :group 'generic-x 257 :group 'generic-x
258 :type 'boolean 258 :type 'boolean
259 :version "22.1") 259 :version "22.1")
314 '(("^\\([-a-zA-z0-9.]+\\) - [-A-Za-z]+ \\(\\[.*\\]\\)" 314 '(("^\\([-a-zA-z0-9.]+\\) - [-A-Za-z]+ \\(\\[.*\\]\\)"
315 (1 font-lock-constant-face) 315 (1 font-lock-constant-face)
316 (2 font-lock-variable-name-face))) 316 (2 font-lock-variable-name-face)))
317 '("access_log\\'") 317 '("access_log\\'")
318 nil 318 nil
319 "Mode for Apache log files.")) 319 "Generic mode for Apache log files."))
320 320
321 ;;; Samba 321 ;;; Samba
322 (when (memq 'samba-generic-mode generic-extras-enable-list) 322 (when (memq 'samba-generic-mode generic-extras-enable-list)
323 323
324 (define-generic-mode samba-generic-mode 324 (define-generic-mode samba-generic-mode
598 (list 598 (list
599 (function 599 (function
600 (lambda () 600 (lambda ()
601 (setq imenu-generic-expression 601 (setq imenu-generic-expression
602 '((nil "\\s-/\\([^/]+\\)/[i, \t\n]" 1)))))) 602 '((nil "\\s-/\\([^/]+\\)/[i, \t\n]" 1))))))
603 "Mode for Mailagent rules files.")) 603 "Generic mode for Mailagent rules files."))
604 604
605 ;; Solaris/Sys V prototype files 605 ;; Solaris/Sys V prototype files
606 (when (memq 'prototype-generic-mode generic-extras-enable-list) 606 (when (memq 'prototype-generic-mode generic-extras-enable-list)
607 607
608 (define-generic-mode prototype-generic-mode 608 (define-generic-mode prototype-generic-mode
621 ("^\\(!\\s-*\\sw+\\)=\\([^\n\r]*\\)$" 621 ("^\\(!\\s-*\\sw+\\)=\\([^\n\r]*\\)$"
622 (1 font-lock-keyword-face) 622 (1 font-lock-keyword-face)
623 (2 font-lock-variable-name-face))) 623 (2 font-lock-variable-name-face)))
624 '("prototype\\'") 624 '("prototype\\'")
625 nil 625 nil
626 "Mode for Sys V prototype files.")) 626 "Generic mode for Sys V prototype files."))
627 627
628 ;; Solaris/Sys V pkginfo files 628 ;; Solaris/Sys V pkginfo files
629 (when (memq 'pkginfo-generic-mode generic-extras-enable-list) 629 (when (memq 'pkginfo-generic-mode generic-extras-enable-list)
630 630
631 (define-generic-mode pkginfo-generic-mode 631 (define-generic-mode pkginfo-generic-mode
634 '(("^\\([A-Za-z_]+\\)=\\([^\n\r]*\\)$" 634 '(("^\\([A-Za-z_]+\\)=\\([^\n\r]*\\)$"
635 (1 font-lock-keyword-face) 635 (1 font-lock-keyword-face)
636 (2 font-lock-variable-name-face))) 636 (2 font-lock-variable-name-face)))
637 '("pkginfo\\'") 637 '("pkginfo\\'")
638 nil 638 nil
639 "Mode for Sys V pkginfo files.")) 639 "Generic mode for Sys V pkginfo files."))
640 640
641 ;; Javascript mode 641 ;; Javascript mode
642 ;; Includes extra keywords from Armando Singer [asinger@MAIL.COLGATE.EDU] 642 ;; Includes extra keywords from Armando Singer [asinger@MAIL.COLGATE.EDU]
643 (when (memq 'javascript-generic-mode generic-extras-enable-list) 643 (when (memq 'javascript-generic-mode generic-extras-enable-list)
644 644
713 (function 713 (function
714 (lambda () 714 (lambda ()
715 (setq imenu-generic-expression 715 (setq imenu-generic-expression
716 '((nil "^function\\s-+\\([A-Za-z0-9_]+\\)" 1) 716 '((nil "^function\\s-+\\([A-Za-z0-9_]+\\)" 1)
717 ("*Variables*" "^var\\s-+\\([A-Za-z0-9_]+\\)" 1)))))) 717 ("*Variables*" "^var\\s-+\\([A-Za-z0-9_]+\\)" 1))))))
718 "Mode for JavaScript files.")) 718 "Generic mode for JavaScript files."))
719 719
720 ;; VRML files 720 ;; VRML files
721 (when (memq 'vrml-generic-mode generic-extras-enable-list) 721 (when (memq 'vrml-generic-mode generic-extras-enable-list)
722 722
723 (define-generic-mode vrml-generic-mode 723 (define-generic-mode vrml-generic-mode
787 (1 font-lock-variable-name-face)) 787 (1 font-lock-variable-name-face))
788 ("^\\(Manifest\\|Required\\|Signature\\)-Version:\\s-+\\([^\n\r]*\\)$" 788 ("^\\(Manifest\\|Required\\|Signature\\)-Version:\\s-+\\([^\n\r]*\\)$"
789 (2 font-lock-constant-face))) 789 (2 font-lock-constant-face)))
790 '("[mM][aA][nN][iI][fF][eE][sS][tT]\\.[mM][fF]\\'") 790 '("[mM][aA][nN][iI][fF][eE][sS][tT]\\.[mM][fF]\\'")
791 nil 791 nil
792 "Mode for Java Manifest files.")) 792 "Generic mode for Java Manifest files."))
793 793
794 ;; Java properties files 794 ;; Java properties files
795 (when (memq 'java-properties-generic-mode generic-extras-enable-list) 795 (when (memq 'java-properties-generic-mode generic-extras-enable-list)
796 796
797 (define-generic-mode java-properties-generic-mode 797 (define-generic-mode java-properties-generic-mode
819 (list 819 (list
820 (function 820 (function
821 (lambda () 821 (lambda ()
822 (setq imenu-generic-expression 822 (setq imenu-generic-expression
823 '((nil "^\\([^#! \t\n\r=:]+\\)" 1)))))) 823 '((nil "^\\([^#! \t\n\r=:]+\\)" 1))))))
824 "Mode for Java properties files.")) 824 "Generic mode for Java properties files."))
825 825
826 ;; C shell alias definitions 826 ;; C shell alias definitions
827 (when (memq 'alias-generic-mode generic-extras-enable-list) 827 (when (memq 'alias-generic-mode generic-extras-enable-list)
828 828
829 (define-generic-mode alias-generic-mode 829 (define-generic-mode alias-generic-mode
837 (list 837 (list
838 (function 838 (function
839 (lambda () 839 (lambda ()
840 (setq imenu-generic-expression 840 (setq imenu-generic-expression
841 '((nil "^\\(alias\\|unalias\\)\\s-+\\([-a-zA-Z0-9_]+\\)" 2)))))) 841 '((nil "^\\(alias\\|unalias\\)\\s-+\\([-a-zA-Z0-9_]+\\)" 2))))))
842 "Mode for C Shell alias files.")) 842 "Generic mode for C Shell alias files."))
843 843
844 ;;; Windows RC files 844 ;;; Windows RC files
845 ;; Contributed by ACorreir@pervasive-sw.com (Alfred Correira) 845 ;; Contributed by ACorreir@pervasive-sw.com (Alfred Correira)
846 (when (memq 'rc-generic-mode generic-extras-enable-list) 846 (when (memq 'rc-generic-mode generic-extras-enable-list)
847 847