Mercurial > emacs
annotate lisp/version.el @ 62412:6ac7ed8e212b
(makefile-dependency-regex): Turn it into a var, and refine it to mask one more level of nested vars.
(makefile-rule-action-regex): Turn it into a var, and refine it so it recognizes backslashed continuation lines as belonging to the same command.
(makefile-macroassign-regex): Refine it so it recognizes backslashed continuation lines as belonging to the same command.
(makefile-var-use-regex): Don't look at the next char, because it might be the same one to be skipped by the initial [^$], leading to an overlooked variable use.
(makefile-make-font-lock-keywords): Remove two parameters, which are now variables that some of the modes set locally. Handle dependency and rule action matching through functions, because regexps alone match too often. Dependency matching now comes last, so it can check, whether a colon already matched something else.
(makefile-mode): Inform that font-lock improves makefile parsing capabilities.
(makefile-match-dependency, makefile-match-action): New functions.
author | Daniel Pfeiffer <occitan@esperanto.org> |
---|---|
date | Mon, 16 May 2005 20:13:09 +0000 |
parents | aac0a33f5772 |
children | 6fb026ad601f 89ac10c67e45 |
rev | line source |
---|---|
47726
33d53d287ee4
Add "no-byte-compile: t" in first line.
Juanma Barranquero <lekktu@gmail.com>
parents:
45511
diff
changeset
|
1 ;;; version.el --- record version number of Emacs -*- no-byte-compile: t -*- |
25866 | 2 |
35197 | 3 ;;; Copyright (C) 1985, 1992, 1994, 1995, 1999, 2000, 2001 |
34478 | 4 ;;; Free Software Foundation, Inc. |
25866 | 5 |
6 ;; Maintainer: FSF | |
7 ;; Keywords: internal | |
8 | |
9 ;; This file is part of GNU Emacs. | |
10 | |
11 ;; GNU Emacs is free software; you can redistribute it and/or modify | |
12 ;; it under the terms of the GNU General Public License as published by | |
13 ;; the Free Software Foundation; either version 2, or (at your option) | |
14 ;; any later version. | |
15 | |
16 ;; GNU Emacs is distributed in the hope that it will be useful, | |
17 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
19 ;; GNU General Public License for more details. | |
20 | |
21 ;; You should have received a copy of the GNU General Public License | |
22 ;; along with GNU Emacs; see the file COPYING. If not, write to the | |
23 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
24 ;; Boston, MA 02111-1307, USA. | |
25 | |
38412
253f761ad37b
Some fixes to follow coding conventions in files maintained by FSF.
Pavel Janík <Pavel@Janik.cz>
parents:
38400
diff
changeset
|
26 ;;; Commentary: |
253f761ad37b
Some fixes to follow coding conventions in files maintained by FSF.
Pavel Janík <Pavel@Janik.cz>
parents:
38400
diff
changeset
|
27 |
25866 | 28 ;;; Code: |
29 | |
59996
aac0a33f5772
Change release version from 21.4 to 22.1 throughout.
Kim F. Storm <storm@cua.dk>
parents:
55567
diff
changeset
|
30 (defconst emacs-version "22.0.50" "\ |
25866 | 31 Version numbers of this version of Emacs.") |
32 | |
33 (defconst emacs-major-version | |
34 (progn (string-match "^[0-9]+" emacs-version) | |
35 (string-to-int (match-string 0 emacs-version))) | |
36 "Major version number of this version of Emacs. | |
37 This variable first existed in version 19.23.") | |
38 | |
39 (defconst emacs-minor-version | |
40 (progn (string-match "^[0-9]+\\.\\([0-9]+\\)" emacs-version) | |
41 (string-to-int (match-string 1 emacs-version))) | |
42 "Minor version number of this version of Emacs. | |
43 This variable first existed in version 19.23.") | |
44 | |
45 (defconst emacs-build-time (current-time) "\ | |
46 Time at which Emacs was dumped out.") | |
47 | |
48 (defconst emacs-build-system (system-name)) | |
49 | |
50 (defun emacs-version (&optional here) "\ | |
51 Return string describing the version of Emacs that is running. | |
52 If optional argument HERE is non-nil, insert string at point. | |
53 Don't use this function in programs to choose actions according | |
54 to the system configuration; look at `system-configuration' instead." | |
55 (interactive "P") | |
49597
e88404e8f2cf
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
47726
diff
changeset
|
56 (let ((version-string |
25866 | 57 (format (if (not (interactive-p)) |
34870
6c2c536e15aa
(emacs-version): Print X scroll bar information.
Gerd Moellmann <gerd@gnu.org>
parents:
34680
diff
changeset
|
58 "GNU Emacs %s (%s%s%s)\n of %s on %s" |
6c2c536e15aa
(emacs-version): Print X scroll bar information.
Gerd Moellmann <gerd@gnu.org>
parents:
34680
diff
changeset
|
59 "GNU Emacs %s (%s%s%s) of %s on %s") |
25866 | 60 emacs-version |
61 system-configuration | |
49597
e88404e8f2cf
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
47726
diff
changeset
|
62 (cond ((featurep 'motif) |
37214
b67db6e4ed56
(emacs-version): Include LessTif/Motif version info.
Gerd Moellmann <gerd@gnu.org>
parents:
37204
diff
changeset
|
63 (concat ", " (substring motif-version-string 4))) |
52335
2f148721b4f0
(emacs-version): Check for gtk. Include gtk version info.
Lute Kamstra <lute@gnu.org>
parents:
49597
diff
changeset
|
64 ((featurep 'gtk) |
2f148721b4f0
(emacs-version): Check for gtk. Include gtk version info.
Lute Kamstra <lute@gnu.org>
parents:
49597
diff
changeset
|
65 (concat ", GTK+ Version " gtk-version-string)) |
55567
f5732b5fb78b
(emacs-version): Check for `gtk' feature before `x-toolkit' feature.
John Paul Wallington <jpw@pobox.com>
parents:
52401
diff
changeset
|
66 ((featurep 'x-toolkit) ", X toolkit") |
25866 | 67 (t "")) |
34870
6c2c536e15aa
(emacs-version): Print X scroll bar information.
Gerd Moellmann <gerd@gnu.org>
parents:
34680
diff
changeset
|
68 (if (and (boundp 'x-toolkit-scroll-bars) |
6c2c536e15aa
(emacs-version): Print X scroll bar information.
Gerd Moellmann <gerd@gnu.org>
parents:
34680
diff
changeset
|
69 (memq x-toolkit-scroll-bars '(xaw xaw3d))) |
6c2c536e15aa
(emacs-version): Print X scroll bar information.
Gerd Moellmann <gerd@gnu.org>
parents:
34680
diff
changeset
|
70 (format ", %s scroll bars" |
6c2c536e15aa
(emacs-version): Print X scroll bar information.
Gerd Moellmann <gerd@gnu.org>
parents:
34680
diff
changeset
|
71 (capitalize (symbol-name x-toolkit-scroll-bars))) |
6c2c536e15aa
(emacs-version): Print X scroll bar information.
Gerd Moellmann <gerd@gnu.org>
parents:
34680
diff
changeset
|
72 "") |
34668
4d84de45722a
(emacs-version): Remove `%a' from the time format
Gerd Moellmann <gerd@gnu.org>
parents:
34478
diff
changeset
|
73 (format-time-string "%Y-%m-%d" emacs-build-time) |
25866 | 74 emacs-build-system))) |
49597
e88404e8f2cf
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
47726
diff
changeset
|
75 (if here |
25866 | 76 (insert version-string) |
77 (if (interactive-p) | |
78 (message "%s" version-string) | |
79 version-string)))) | |
80 | |
41168
d647c8dc631c
*** empty log message ***
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39873
diff
changeset
|
81 ;; We hope that this alias is easier for people to find. |
25866 | 82 (defalias 'version 'emacs-version) |
83 | |
42656 | 84 ;; We put version info into the executable in the form that `ident' uses. |
26950
903a19771606
Put the version info into binary on MS-DOS as well.
Eli Zaretskii <eliz@gnu.org>
parents:
25866
diff
changeset
|
85 (or (memq system-type '(vax-vms windows-nt)) |
25866 | 86 (purecopy (concat "\n$Id: " (subst-char-in-string ?\n ? (emacs-version)) |
87 " $\n"))) | |
88 | |
89 ;;Local variables: | |
90 ;;version-control: never | |
91 ;;End: | |
92 | |
52401 | 93 ;;; arch-tag: e60dc445-6218-4a4c-a7df-f15a818642a0 |
25866 | 94 ;;; version.el ends here |