aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/textmodes
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/textmodes')
-rw-r--r--lisp/textmodes/artist.el3
-rw-r--r--lisp/textmodes/bib-mode.el2
-rw-r--r--lisp/textmodes/bibtex.el4
-rw-r--r--lisp/textmodes/conf-mode.el4
-rw-r--r--lisp/textmodes/dns-mode.el3
-rw-r--r--lisp/textmodes/enriched.el3
-rw-r--r--lisp/textmodes/fill.el24
-rw-r--r--lisp/textmodes/flyspell.el13
-rw-r--r--lisp/textmodes/ispell.el162
-rw-r--r--lisp/textmodes/makeinfo.el3
-rw-r--r--lisp/textmodes/nroff-mode.el3
-rw-r--r--lisp/textmodes/org.el3
-rw-r--r--lisp/textmodes/page-ext.el3
-rw-r--r--lisp/textmodes/page.el2
-rw-r--r--lisp/textmodes/paragraphs.el6
-rw-r--r--lisp/textmodes/picture.el3
-rw-r--r--lisp/textmodes/po.el3
-rw-r--r--lisp/textmodes/refbib.el91
-rw-r--r--lisp/textmodes/refer.el3
-rw-r--r--lisp/textmodes/refill.el2
-rw-r--r--lisp/textmodes/reftex-auc.el19
-rw-r--r--lisp/textmodes/reftex-cite.el125
-rw-r--r--lisp/textmodes/reftex-dcr.el5
-rw-r--r--lisp/textmodes/reftex-global.el5
-rw-r--r--lisp/textmodes/reftex-index.el5
-rw-r--r--lisp/textmodes/reftex-parse.el5
-rw-r--r--lisp/textmodes/reftex-ref.el5
-rw-r--r--lisp/textmodes/reftex-sel.el5
-rw-r--r--lisp/textmodes/reftex-toc.el5
-rw-r--r--lisp/textmodes/reftex-vars.el5
-rw-r--r--lisp/textmodes/reftex.el5
-rw-r--r--lisp/textmodes/sgml-mode.el6
-rw-r--r--lisp/textmodes/spell.el2
-rw-r--r--lisp/textmodes/table.el8
-rw-r--r--lisp/textmodes/tex-mode.el8
-rw-r--r--lisp/textmodes/texinfmt.el4
-rw-r--r--lisp/textmodes/texinfo.el2
-rw-r--r--lisp/textmodes/texnfo-upd.el3
-rw-r--r--lisp/textmodes/text-mode.el3
-rw-r--r--lisp/textmodes/tildify.el3
-rw-r--r--lisp/textmodes/two-column.el3
-rw-r--r--lisp/textmodes/underline.el2
42 files changed, 353 insertions, 220 deletions
diff --git a/lisp/textmodes/artist.el b/lisp/textmodes/artist.el
index 245658b62b4..c50239ec635 100644
--- a/lisp/textmodes/artist.el
+++ b/lisp/textmodes/artist.el
@@ -1,6 +1,7 @@
1;;; artist.el --- draw ascii graphics with your mouse 1;;; artist.el --- draw ascii graphics with your mouse
2 2
3;; Copyright (C) 2000, 2001, 2004 Free Software Foundation, Inc. 3;; Copyright (C) 2000, 2001, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Tomas Abrahamsson <tab@lysator.liu.se> 6;; Author: Tomas Abrahamsson <tab@lysator.liu.se>
6;; Maintainer: Tomas Abrahamsson <tab@lysator.liu.se> 7;; Maintainer: Tomas Abrahamsson <tab@lysator.liu.se>
diff --git a/lisp/textmodes/bib-mode.el b/lisp/textmodes/bib-mode.el
index a6d47589d35..6609673289b 100644
--- a/lisp/textmodes/bib-mode.el
+++ b/lisp/textmodes/bib-mode.el
@@ -1,6 +1,6 @@
1;;; bib-mode.el --- major mode for editing bib files 1;;; bib-mode.el --- major mode for editing bib files
2 2
3;; Copyright (C) 1989 Free Software Foundation, Inc. 3;; Copyright (C) 1989, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Maintainer: FSF 5;; Maintainer: FSF
6;; Keywords: bib 6;; Keywords: bib
diff --git a/lisp/textmodes/bibtex.el b/lisp/textmodes/bibtex.el
index de387e86542..6f7fe0dec99 100644
--- a/lisp/textmodes/bibtex.el
+++ b/lisp/textmodes/bibtex.el
@@ -1,7 +1,7 @@
1;;; bibtex.el --- BibTeX mode for GNU Emacs 1;;; bibtex.el --- BibTeX mode for GNU Emacs
2 2
3;; Copyright (C) 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2003, 2004, 2005 3;; Copyright (C) 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2002, 2003,
4;; Free Software Foundation, Inc. 4;; 2004, 2005 Free Software Foundation, Inc.
5 5
6;; Author: Stefan Schoef <schoef@offis.uni-oldenburg.de> 6;; Author: Stefan Schoef <schoef@offis.uni-oldenburg.de>
7;; Bengt Martensson <bengt@mathematik.uni-Bremen.de> 7;; Bengt Martensson <bengt@mathematik.uni-Bremen.de>
diff --git a/lisp/textmodes/conf-mode.el b/lisp/textmodes/conf-mode.el
index 75249f7b547..1a73465467a 100644
--- a/lisp/textmodes/conf-mode.el
+++ b/lisp/textmodes/conf-mode.el
@@ -1,6 +1,8 @@
1;;; conf-mode.el --- Simple major mode for editing conf/ini/properties files 1;;; conf-mode.el --- Simple major mode for editing conf/ini/properties files
2 2
3;; Copyright (C) 2004 by Daniel Pfeiffer <occitan@esperanto.org> 3;; Copyright (C) 2004, 2005 Free Software Foundation, Inc.
4
5;; Author: Daniel Pfeiffer <occitan@esperanto.org>
4;; Keywords: conf ini windows java 6;; Keywords: conf ini windows java
5 7
6;; This file is part of GNU Emacs. 8;; This file is part of GNU Emacs.
diff --git a/lisp/textmodes/dns-mode.el b/lisp/textmodes/dns-mode.el
index a6f3517d722..12f99ba090e 100644
--- a/lisp/textmodes/dns-mode.el
+++ b/lisp/textmodes/dns-mode.el
@@ -1,5 +1,6 @@
1;;; dns-mode.el --- a mode for viewing/editing Domain Name System master files 1;;; dns-mode.el --- a mode for viewing/editing Domain Name System master files
2;; Copyright (c) 2000, 2001, 2003, 2004 Free Software Foundation, Inc. 2
3;; Copyright (C) 2000, 2001, 2004, 2005 Free Software Foundation, Inc.
3 4
4;; Author: Simon Josefsson <simon@josefsson.org> 5;; Author: Simon Josefsson <simon@josefsson.org>
5;; Keywords: DNS master zone file SOA 6;; Keywords: DNS master zone file SOA
diff --git a/lisp/textmodes/enriched.el b/lisp/textmodes/enriched.el
index 61960e9d975..dc8d4c96b2b 100644
--- a/lisp/textmodes/enriched.el
+++ b/lisp/textmodes/enriched.el
@@ -1,6 +1,7 @@
1;;; enriched.el --- read and save files in text/enriched format 1;;; enriched.el --- read and save files in text/enriched format
2 2
3;; Copyright (c) 1994, 1995, 1996, 2002, 2004, 2005 Free Software Foundation, Inc. 3;; Copyright (C) 1994, 1995, 1996, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Boris Goldowsky <boris@gnu.org> 6;; Author: Boris Goldowsky <boris@gnu.org>
6;; Keywords: wp, faces 7;; Keywords: wp, faces
diff --git a/lisp/textmodes/fill.el b/lisp/textmodes/fill.el
index 9997b2a166e..11ddfc0e967 100644
--- a/lisp/textmodes/fill.el
+++ b/lisp/textmodes/fill.el
@@ -1,7 +1,7 @@
1;;; fill.el --- fill commands for Emacs -*- coding: iso-2022-7bit -*- 1;;; fill.el --- fill commands for Emacs -*- coding: iso-2022-7bit -*-
2 2
3;; Copyright (C) 1985, 1986, 1992, 1994, 1995, 1996, 1997, 1999, 2001, 2002, 3;; Copyright (C) 1985, 1986, 1992, 1994, 1995, 1996, 1997, 1999, 2001, 2002,
4;; 2003, 2004, 2005 Free Software Foundation, Inc. 4;; 2003, 2004, 2005 Free Software Foundation, Inc.
5 5
6;; Maintainer: FSF 6;; Maintainer: FSF
7;; Keywords: wp 7;; Keywords: wp
@@ -163,7 +163,7 @@ Remove indentation from each line."
163 ;; This is quick, but loses when a tab follows the end of a sentence. 163 ;; This is quick, but loses when a tab follows the end of a sentence.
164 ;; Actually, it is difficult to tell that from "Mr.\tSmith". 164 ;; Actually, it is difficult to tell that from "Mr.\tSmith".
165 ;; Blame the typist. 165 ;; Blame the typist.
166 (subst-char-in-region beg end ?\t ?\ ) 166 (subst-char-in-region beg end ?\t ?\s)
167 (while (and (< (point) end) 167 (while (and (< (point) end)
168 (re-search-forward end-spc-re end t)) 168 (re-search-forward end-spc-re end t))
169 (delete-region 169 (delete-region
@@ -282,7 +282,7 @@ act as a paragraph-separator."
282 (string-match comment-start-skip 282 (string-match comment-start-skip
283 first-line-prefix))) 283 first-line-prefix)))
284 first-line-prefix 284 first-line-prefix
285 (make-string (string-width first-line-prefix) ?\ )))) 285 (make-string (string-width first-line-prefix) ?\s))))
286 ;; But either way, reject it if it indicates the start 286 ;; But either way, reject it if it indicates the start
287 ;; of a paragraph when text follows it. 287 ;; of a paragraph when text follows it.
288 (if (not (eq 0 (string-match paragraph-start 288 (if (not (eq 0 (string-match paragraph-start
@@ -312,7 +312,7 @@ places."
312 (backward-char 1) 312 (backward-char 1)
313 (or (looking-at "[([{,A+,b+(B]") 313 (or (looking-at "[([{,A+,b+(B]")
314 ;; Don't cut right after a single-letter word. 314 ;; Don't cut right after a single-letter word.
315 (and (memq (preceding-char) '(?\t ?\ )) 315 (and (memq (preceding-char) '(?\t ?\s))
316 (eq (char-syntax (following-char)) ?w))))))) 316 (eq (char-syntax (following-char)) ?w)))))))
317 317
318(defcustom fill-nobreak-predicate nil 318(defcustom fill-nobreak-predicate nil
@@ -439,10 +439,10 @@ Point is moved to just past the fill prefix on the first line."
439 (sentence-end-without-space-list 439 (sentence-end-without-space-list
440 (string-to-list sentence-end-without-space))) 440 (string-to-list sentence-end-without-space)))
441 (while (re-search-forward eol-double-space-re to t) 441 (while (re-search-forward eol-double-space-re to t)
442 (or (>= (point) to) (memq (char-before) '(?\t ?\ )) 442 (or (>= (point) to) (memq (char-before) '(?\t ?\s))
443 (memq (char-after (match-beginning 0)) 443 (memq (char-after (match-beginning 0))
444 sentence-end-without-space-list) 444 sentence-end-without-space-list)
445 (insert-and-inherit ?\ )))) 445 (insert-and-inherit ?\s))))
446 446
447 (goto-char from) 447 (goto-char from)
448 (if enable-multibyte-characters 448 (if enable-multibyte-characters
@@ -471,7 +471,7 @@ Point is moved to just past the fill prefix on the first line."
471 (goto-char from) 471 (goto-char from)
472 (skip-chars-forward " \t") 472 (skip-chars-forward " \t")
473 ;; Then change all newlines to spaces. 473 ;; Then change all newlines to spaces.
474 (subst-char-in-region from to ?\n ?\ ) 474 (subst-char-in-region from to ?\n ?\s)
475 (if (and nosqueeze (not (eq justify 'full))) 475 (if (and nosqueeze (not (eq justify 'full)))
476 nil 476 nil
477 (canonically-space-region (or squeeze-after (point)) to) 477 (canonically-space-region (or squeeze-after (point)) to)
@@ -830,10 +830,10 @@ can take care of filling. JUSTIFY is used as in `fill-paragraph'."
830 (if has-code-and-comment 830 (if has-code-and-comment
831 (concat 831 (concat
832 (if (not indent-tabs-mode) 832 (if (not indent-tabs-mode)
833 (make-string (current-column) ?\ ) 833 (make-string (current-column) ?\s)
834 (concat 834 (concat
835 (make-string (/ (current-column) tab-width) ?\t) 835 (make-string (/ (current-column) tab-width) ?\t)
836 (make-string (% (current-column) tab-width) ?\ ))) 836 (make-string (% (current-column) tab-width) ?\s)))
837 (buffer-substring (point) comin)) 837 (buffer-substring (point) comin))
838 (buffer-substring (line-beginning-position) comin)))) 838 (buffer-substring (line-beginning-position) comin))))
839 beg end) 839 beg end)
@@ -1223,7 +1223,7 @@ otherwise it is made canonical."
1223 (while (> count 0) 1223 (while (> count 0)
1224 (skip-chars-forward " ") 1224 (skip-chars-forward " ")
1225 (insert-and-inherit 1225 (insert-and-inherit
1226 (make-string (/ curr-fracspace nspaces) ?\ )) 1226 (make-string (/ curr-fracspace nspaces) ?\s))
1227 (search-forward " " nil t) 1227 (search-forward " " nil t)
1228 (setq count (1- count) 1228 (setq count (1- count)
1229 curr-fracspace 1229 curr-fracspace
@@ -1282,8 +1282,8 @@ in the paragraph.
1282 1282
1283When calling from a program, pass range to fill as first two arguments. 1283When calling from a program, pass range to fill as first two arguments.
1284 1284
1285Optional third and fourth arguments JUSTIFY and MAIL-FLAG: 1285Optional third and fourth arguments JUSTIFYP and CITATION-REGEXP:
1286JUSTIFY to justify paragraphs (prefix arg), 1286JUSTIFYP to justify paragraphs (prefix arg).
1287When filling a mail message, pass a regexp for CITATION-REGEXP 1287When filling a mail message, pass a regexp for CITATION-REGEXP
1288which will match the prefix of a line which is a citation marker 1288which will match the prefix of a line which is a citation marker
1289plus whitespace, but no other kind of prefix. 1289plus whitespace, but no other kind of prefix.
diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el
index 6b7b5492409..b6b7339c948 100644
--- a/lisp/textmodes/flyspell.el
+++ b/lisp/textmodes/flyspell.el
@@ -1,6 +1,7 @@
1;;; flyspell.el --- on-the-fly spell checker 1;;; flyspell.el --- on-the-fly spell checker
2 2
3;; Copyright (C) 1998, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. 3;; Copyright (C) 1998, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Manuel Serrano <Manuel.Serrano@sophia.inria.fr> 6;; Author: Manuel Serrano <Manuel.Serrano@sophia.inria.fr>
6;; Maintainer: FSF 7;; Maintainer: FSF
@@ -76,7 +77,9 @@ Non-nil means use highlight, nil means use minibuffer messages."
76 :type 'boolean) 77 :type 'boolean)
77 78
78(defcustom flyspell-mark-duplications-flag t 79(defcustom flyspell-mark-duplications-flag t
79 "*Non-nil means Flyspell reports a repeated word as an error." 80 "*Non-nil means Flyspell reports a repeated word as an error.
81Detection of repeated words is not implemented in
82\"large\" regions; see `flyspell-large-region'."
80 :group 'flyspell 83 :group 'flyspell
81 :type 'boolean) 84 :type 'boolean)
82 85
@@ -237,10 +240,13 @@ If the region is smaller than this number of characters,
237flyspell methods. Else, if the region is large, a new Ispell process is 240flyspell methods. Else, if the region is large, a new Ispell process is
238spawned for speed. 241spawned for speed.
239 242
243Doubled words are not detected in a large region, because Ispell
244does not check for them.
245
240If `flyspell-large-region' is nil, all regions are treated as small." 246If `flyspell-large-region' is nil, all regions are treated as small."
241 :group 'flyspell 247 :group 'flyspell
242 :version "21.1" 248 :version "21.1"
243 :type '(choice number boolean)) 249 :type '(choice number (const :tag "All small" nil)))
244 250
245(defcustom flyspell-insert-function (function insert) 251(defcustom flyspell-insert-function (function insert)
246 "*Function for inserting word by flyspell upon correction." 252 "*Function for inserting word by flyspell upon correction."
@@ -450,6 +456,7 @@ See also `flyspell-duplicate-distance'."
450;*---------------------------------------------------------------------*/ 456;*---------------------------------------------------------------------*/
451;* flyspell-mode ... */ 457;* flyspell-mode ... */
452;*---------------------------------------------------------------------*/ 458;*---------------------------------------------------------------------*/
459;;;###autoload(defvar flyspell-mode nil)
453;;;###autoload 460;;;###autoload
454(define-minor-mode flyspell-mode 461(define-minor-mode flyspell-mode
455 "Minor mode performing on-the-fly spelling checking. 462 "Minor mode performing on-the-fly spelling checking.
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
index 76e1767a9fb..358ee1f96e7 100644
--- a/lisp/textmodes/ispell.el
+++ b/lisp/textmodes/ispell.el
@@ -1,7 +1,7 @@
1;;; ispell.el --- interface to International Ispell Versions 3.1 and 3.2 1;;; ispell.el --- interface to International Ispell Versions 3.1 and 3.2
2 2
3;; Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005 3;; Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
4;; Free Software Foundation, Inc. 4;; 2004, 2005 Free Software Foundation, Inc.
5 5
6;; Author: Ken Stevens <k.stevens@ieee.org> 6;; Author: Ken Stevens <k.stevens@ieee.org>
7;; Maintainer: Ken Stevens <k.stevens@ieee.org> 7;; Maintainer: Ken Stevens <k.stevens@ieee.org>
@@ -862,9 +862,113 @@ and added as a submenu of the \"Edit\" menu.")
862 ) 862 )
863 "Non-nil means that the OS supports asynchronous processes.") 863 "Non-nil means that the OS supports asynchronous processes.")
864 864
865;; Make ispell.el work better with aspell.
866
867(defvar ispell-have-aspell-dictionaries nil
868 "Non-nil if we have queried Aspell for dictionaries at least once.")
869
870(defun ispell-find-aspell-dictionaries ()
871 "Find Aspell's dictionaries, and record in `ispell-dictionary-alist'."
872 (interactive)
873 (unless ispell-really-aspell
874 (error "This function only works with aspell"))
875 (let ((dictionaries
876 (split-string
877 (with-temp-buffer
878 (call-process ispell-program-name nil t nil "dicts")
879 (buffer-string)))))
880 (setq ispell-dictionary-alist
881 (mapcar #'ispell-aspell-find-dictionary dictionaries))
882 (ispell-aspell-add-aliases)
883 ;; Add a default entry
884 (let* ((english-dict (assoc "en" ispell-dictionary-alist))
885 (default-dict (cons nil (cdr english-dict))))
886 (push default-dict ispell-dictionary-alist))
887 (setq ispell-have-aspell-dictionaries t)))
888
889(defvar ispell-aspell-data-dir nil
890 "Data directory of Aspell.")
891
892(defvar ispell-aspell-dict-dir nil
893 "Dictionary directory of Aspell.")
894
895(defun ispell-get-aspell-config-value (key)
896 "Return value of Aspell configuration option KEY.
897Assumes that value contains no whitespace."
898 (with-temp-buffer
899 (call-process ispell-program-name nil t nil "config" key)
900 (car (split-string (buffer-string)))))
901
902(defun ispell-aspell-find-dictionary (dict-name)
903 (let* ((lang ;; Strip out region, variant, etc.
904 (and (string-match "^[[:alpha:]]+" dict-name)
905 (match-string 0 dict-name)))
906 (data-file
907 (concat (or ispell-aspell-data-dir
908 (setq ispell-aspell-data-dir
909 (ispell-get-aspell-config-value "data-dir")))
910 "/" lang ".dat"))
911 otherchars)
912 ;; This file really should exist; there is no sensible recovery.
913 (with-temp-buffer
914 (insert-file-contents data-file)
915 ;; There is zero or one line with special characters declarations.
916 (when (search-forward-regexp "^special" nil t)
917 (let ((specials (split-string
918 (buffer-substring (point)
919 (progn (end-of-line) (point))))))
920 ;; The line looks like: special ' -** - -** . -** : -*-
921 ;; -** means that this character
922 ;; - doesn't appear at word start
923 ;; * may appear in the middle of a word
924 ;; * may appear at word end
925 ;; `otherchars' is about the middle case.
926 (while specials
927 (when (eq (aref (cadr specials) 1) ?*)
928 (push (car specials) otherchars))
929 (setq specials (cddr specials))))))
930 (list dict-name
931 "[[:alpha:]]"
932 "[^[:alpha:]]"
933 (regexp-opt otherchars)
934 t ; We can't tell, so set this to t
935 (list "-d" dict-name "--encoding=utf-8")
936 nil ; aspell doesn't support this
937 ;; Here we specify the encoding to use while communicating with
938 ;; aspell. This doesn't apply to command line arguments, so
939 ;; just don't pass words to spellcheck as arguments...
940 'utf-8)))
941
942(defun ispell-aspell-add-aliases ()
943 "Find aspell's dictionary aliases and add them to `ispell-dictionary-alist'."
944 (let ((aliases (file-expand-wildcards
945 (concat (or ispell-aspell-dict-dir
946 (setq ispell-aspell-dict-dir
947 (ispell-get-aspell-config-value "dict-dir")))
948 "/*.alias"))))
949 (dolist (alias-file aliases)
950 (with-temp-buffer
951 (insert-file-contents alias-file)
952 ;; Look for a line "add FOO.multi", extract FOO
953 (when (search-forward-regexp "^add \\([^.]+\\)\\.multi" nil t)
954 (let* ((aliasname (file-name-sans-extension
955 (file-name-nondirectory alias-file)))
956 (already-exists-p (assoc aliasname ispell-dictionary-alist))
957 (realname (match-string 1))
958 (realdict (assoc realname ispell-dictionary-alist)))
959 (when (and realdict (not already-exists-p))
960 (push (cons aliasname (cdr realdict)) ispell-dictionary-alist))))))))
961
865(defun ispell-valid-dictionary-list () 962(defun ispell-valid-dictionary-list ()
866 "Returns a list of valid dictionaries. 963 "Returns a list of valid dictionaries.
867The variable `ispell-library-directory' defines the library location." 964The variable `ispell-library-directory' defines the library location."
965 ;; If Ispell is really Aspell, query it for the dictionary list.
966 (when (and (not ispell-have-aspell-dictionaries)
967 (condition-case ()
968 (progn (ispell-check-version) t)
969 (error nil))
970 ispell-really-aspell)
971 (ispell-find-aspell-dictionaries))
868 (let ((dicts (append ispell-local-dictionary-alist ispell-dictionary-alist)) 972 (let ((dicts (append ispell-local-dictionary-alist ispell-dictionary-alist))
869 (dict-list (cons "default" nil)) 973 (dict-list (cons "default" nil))
870 name load-dict) 974 name load-dict)
@@ -875,7 +979,9 @@ The variable `ispell-library-directory' defines the library location."
875 (if (and 979 (if (and
876 name 980 name
877 ;; include all dictionaries if lib directory not known. 981 ;; include all dictionaries if lib directory not known.
878 (or (not ispell-library-directory) 982 ;; For Aspell, we already know which dictionaries exist.
983 (or ispell-really-aspell
984 (not ispell-library-directory)
879 (file-exists-p (concat ispell-library-directory 985 (file-exists-p (concat ispell-library-directory
880 "/" name ".hash")) 986 "/" name ".hash"))
881 (file-exists-p (concat ispell-library-directory "/" name ".has")) 987 (file-exists-p (concat ispell-library-directory "/" name ".has"))
@@ -887,36 +993,11 @@ The variable `ispell-library-directory' defines the library location."
887 (setq dict-list (cons name dict-list)))) 993 (setq dict-list (cons name dict-list))))
888 dict-list)) 994 dict-list))
889 995
890;;;###autoload
891(if ispell-menu-map-needed
892 (let ((dicts (if (fboundp 'ispell-valid-dictionary-list)
893 (ispell-valid-dictionary-list)
894 ;; This case is used in loaddefs.el
895 ;; since ispell-valid-dictionary-list isn't defined then.
896 (mapcar (lambda (x) (or (car x) "default"))
897 ispell-dictionary-alist)))
898 (dict-map (make-sparse-keymap "Dictionaries")))
899 (setq ispell-menu-map (make-sparse-keymap "Spell"))
900 ;; add the dictionaries to the bottom of the list.
901 (if (not dicts)
902 (define-key ispell-menu-map [default]
903 '("Select Default Dict"
904 "Dictionary for which Ispell was configured"
905 . (lambda () (interactive)
906 (ispell-change-dictionary "default")))))
907 (fset 'ispell-dict-map dict-map)
908 (define-key ispell-menu-map [dictionaries]
909 `(menu-item "Select Dict" ispell-dict-map))
910 (dolist (name dicts)
911 (define-key dict-map (vector (intern name))
912 (cons (concat "Select " (capitalize name) " Dict")
913 `(lambda () (interactive)
914 (ispell-change-dictionary ,name)))))))
915
916;;; define commands in menu in opposite order you want them to appear. 996;;; define commands in menu in opposite order you want them to appear.
917;;;###autoload 997;;;###autoload
918(if ispell-menu-map-needed 998(if ispell-menu-map-needed
919 (progn 999 (progn
1000 (setq ispell-menu-map (make-sparse-keymap "Spell"))
920 (define-key ispell-menu-map [ispell-change-dictionary] 1001 (define-key ispell-menu-map [ispell-change-dictionary]
921 '(menu-item "Change Dictionary..." ispell-change-dictionary 1002 '(menu-item "Change Dictionary..." ispell-change-dictionary
922 :help "Supply explicit dictionary file name")) 1003 :help "Supply explicit dictionary file name"))
@@ -1461,7 +1542,8 @@ quit spell session exited."
1461 (funcall ispell-format-word word))) 1542 (funcall ispell-format-word word)))
1462 (and (fboundp 'extent-at) 1543 (and (fboundp 'extent-at)
1463 (extent-at start) 1544 (extent-at start)
1464 (delete-extent (extent-at start)))) 1545 (and (fboundp 'delete-extent)
1546 (delete-extent (extent-at start)))))
1465 ((stringp poss) 1547 ((stringp poss)
1466 (or quietly 1548 (or quietly
1467 (message "%s is correct because of root %s" 1549 (message "%s is correct because of root %s"
@@ -1469,13 +1551,15 @@ quit spell session exited."
1469 (funcall ispell-format-word poss))) 1551 (funcall ispell-format-word poss)))
1470 (and (fboundp 'extent-at) 1552 (and (fboundp 'extent-at)
1471 (extent-at start) 1553 (extent-at start)
1472 (delete-extent (extent-at start)))) 1554 (and (fboundp 'delete-extent)
1555 (delete-extent (extent-at start)))))
1473 ((null poss) (message "Error in ispell process")) 1556 ((null poss) (message "Error in ispell process"))
1474 (ispell-check-only ; called from ispell minor mode. 1557 (ispell-check-only ; called from ispell minor mode.
1475 (if (fboundp 'make-extent) 1558 (if (fboundp 'make-extent)
1476 (let ((ext (make-extent start end))) 1559 (if (fboundp 'set-extent-property)
1477 (set-extent-property ext 'face ispell-highlight-face) 1560 (let ((ext (make-extent start end)))
1478 (set-extent-property ext 'priority 2000)) 1561 (set-extent-property ext 'face ispell-highlight-face)
1562 (set-extent-property ext 'priority 2000)))
1479 (beep) 1563 (beep)
1480 (message "%s is incorrect"(funcall ispell-format-word word)))) 1564 (message "%s is incorrect"(funcall ispell-format-word word))))
1481 (t ; prompt for correct word. 1565 (t ; prompt for correct word.
@@ -2036,9 +2120,13 @@ Optional second argument contains the dictionary to use; the default is
2036 (while (search-backward "*" nil t) (insert ".")) 2120 (while (search-backward "*" nil t) (insert "."))
2037 (setq word (buffer-string)) 2121 (setq word (buffer-string))
2038 (erase-buffer)) 2122 (erase-buffer))
2039 (setq status (if lookup-dict 2123 (setq status (apply 'call-process prog nil t nil
2040 (call-process prog nil t nil args word lookup-dict) 2124 (nconc (if (and args (> (length args) 0))
2041 (call-process prog nil t nil args word))) 2125 (list args)
2126 (if look-p nil
2127 (list "-e")))
2128 (list word)
2129 (if lookup-dict (list lookup-dict)))))
2042 ;; grep returns status 1 and no output when word not found, which 2130 ;; grep returns status 1 and no output when word not found, which
2043 ;; is a perfectly normal thing. 2131 ;; is a perfectly normal thing.
2044 (if (stringp status) 2132 (if (stringp status)
diff --git a/lisp/textmodes/makeinfo.el b/lisp/textmodes/makeinfo.el
index bbea460cf6e..f2c407975e2 100644
--- a/lisp/textmodes/makeinfo.el
+++ b/lisp/textmodes/makeinfo.el
@@ -1,6 +1,7 @@
1;;; makeinfo.el --- run makeinfo conveniently 1;;; makeinfo.el --- run makeinfo conveniently
2 2
3;; Copyright (C) 1991, 1993, 2002 Free Software Foundation, Inc. 3;; Copyright (C) 1991, 1993, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Robert J. Chassell 6;; Author: Robert J. Chassell
6;; Maintainer: FSF 7;; Maintainer: FSF
diff --git a/lisp/textmodes/nroff-mode.el b/lisp/textmodes/nroff-mode.el
index 48de6b3243e..05a740ee390 100644
--- a/lisp/textmodes/nroff-mode.el
+++ b/lisp/textmodes/nroff-mode.el
@@ -1,6 +1,7 @@
1;;; nroff-mode.el --- GNU Emacs major mode for editing nroff source 1;;; nroff-mode.el --- GNU Emacs major mode for editing nroff source
2 2
3;; Copyright (C) 1985, 86, 94, 95, 97, 2001 Free Software Foundation, Inc. 3;; Copyright (C) 1985, 1986, 1994, 1995, 1997, 2001, 2002, 2003,
4;; 2004, 2005 Free Software Foundation, Inc.
4 5
5;; Maintainer: FSF 6;; Maintainer: FSF
6;; Keywords: wp 7;; Keywords: wp
diff --git a/lisp/textmodes/org.el b/lisp/textmodes/org.el
index 26708deefe2..b7d714249dc 100644
--- a/lisp/textmodes/org.el
+++ b/lisp/textmodes/org.el
@@ -1,6 +1,7 @@
1;; org.el --- Outline-based notes management and organizer 1;; org.el --- Outline-based notes management and organizer
2;; Carstens outline-mode for keeping track of everything. 2;; Carstens outline-mode for keeping track of everything.
3;; Copyright (c) 2004, 2005 Free Software Foundation 3
4;; Copyright (C) 2004, 2005 Free Software Foundation, Inc.
4;; 5;;
5;; Author: Carsten Dominik <dominik at science dot uva dot nl> 6;; Author: Carsten Dominik <dominik at science dot uva dot nl>
6;; Keywords: outlines, hypermedia, calendar 7;; Keywords: outlines, hypermedia, calendar
diff --git a/lisp/textmodes/page-ext.el b/lisp/textmodes/page-ext.el
index c8828e1a6d5..365ed19d9ce 100644
--- a/lisp/textmodes/page-ext.el
+++ b/lisp/textmodes/page-ext.el
@@ -1,6 +1,7 @@
1;;; page-ext.el --- extended page handling commands 1;;; page-ext.el --- extended page handling commands
2 2
3;; Copyright (C) 1990, 1991, 1993, 1994 Free Software Foundation 3;; Copyright (C) 1990, 1991, 1993, 1994, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Maintainer: Robert J. Chassell <bob@gnu.org> 6;; Maintainer: Robert J. Chassell <bob@gnu.org>
6;; Keywords: wp data 7;; Keywords: wp data
diff --git a/lisp/textmodes/page.el b/lisp/textmodes/page.el
index 712b1ef12a1..ffb4c89f2db 100644
--- a/lisp/textmodes/page.el
+++ b/lisp/textmodes/page.el
@@ -1,6 +1,6 @@
1;;; page.el --- page motion commands for Emacs 1;;; page.el --- page motion commands for Emacs
2 2
3;; Copyright (C) 1985 Free Software Foundation, Inc. 3;; Copyright (C) 1985, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Maintainer: FSF 5;; Maintainer: FSF
6;; Keywords: wp convenience 6;; Keywords: wp convenience
diff --git a/lisp/textmodes/paragraphs.el b/lisp/textmodes/paragraphs.el
index c4f7750fe70..f4af34fdabf 100644
--- a/lisp/textmodes/paragraphs.el
+++ b/lisp/textmodes/paragraphs.el
@@ -1,7 +1,7 @@
1;;; paragraphs.el --- paragraph and sentence parsing 1;;; paragraphs.el --- paragraph and sentence parsing
2 2
3;; Copyright (C) 1985, 86, 87, 91, 94, 95, 96, 1997, 1999, 2000, 2001, 2004 3;; Copyright (C) 1985, 1986, 1987, 1991, 1994, 1995, 1996, 1997, 1999, 2000,
4;; Free Software Foundation, Inc. 4;; 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
5 5
6;; Maintainer: FSF 6;; Maintainer: FSF
7;; Keywords: wp 7;; Keywords: wp
@@ -358,7 +358,7 @@ If ARG is negative, point is put at end of this paragraph, mark is put
358at beginning of this or a previous paragraph. 358at beginning of this or a previous paragraph.
359 359
360Interactively, if this command is repeated 360Interactively, if this command is repeated
361or (in Transient Mark mode) if the mark is active, 361or (in Transient Mark mode) if the mark is active,
362it marks the next ARG paragraphs after the ones already marked." 362it marks the next ARG paragraphs after the ones already marked."
363 (interactive "p\np") 363 (interactive "p\np")
364 (unless arg (setq arg 1)) 364 (unless arg (setq arg 1))
diff --git a/lisp/textmodes/picture.el b/lisp/textmodes/picture.el
index 3ae39213dff..5d528dec109 100644
--- a/lisp/textmodes/picture.el
+++ b/lisp/textmodes/picture.el
@@ -1,6 +1,7 @@
1;;; picture.el --- "Picture mode" -- editing using quarter-plane screen model 1;;; picture.el --- "Picture mode" -- editing using quarter-plane screen model
2 2
3;; Copyright (C) 1985, 1994, 2002, 2003 Free Software Foundation, Inc. 3;; Copyright (C) 1985, 1994, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: K. Shane Hartman 6;; Author: K. Shane Hartman
6;; Maintainer: FSF 7;; Maintainer: FSF
diff --git a/lisp/textmodes/po.el b/lisp/textmodes/po.el
index cf80f02090a..c9af801bef0 100644
--- a/lisp/textmodes/po.el
+++ b/lisp/textmodes/po.el
@@ -1,6 +1,7 @@
1;;; po.el --- basic support of PO translation files -*- coding: latin-1; -*- 1;;; po.el --- basic support of PO translation files -*- coding: latin-1; -*-
2 2
3;; Copyright (C) 1995-1998, 2000-2002 Free Software Foundation, Inc. 3;; Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003,
4;; 2004, 2005 Free Software Foundation, Inc.
4 5
5;; Authors: François Pinard <pinard@iro.umontreal.ca>, 6;; Authors: François Pinard <pinard@iro.umontreal.ca>,
6;; Greg McGary <gkm@magilla.cichlid.com>, 7;; Greg McGary <gkm@magilla.cichlid.com>,
diff --git a/lisp/textmodes/refbib.el b/lisp/textmodes/refbib.el
index 7fcfc44fb2d..99e2b780999 100644
--- a/lisp/textmodes/refbib.el
+++ b/lisp/textmodes/refbib.el
@@ -1,8 +1,9 @@
1;;; refbib.el --- convert refer-style references to ones usable by Latex bib 1;;; refbib.el --- convert refer-style references to ones usable by Latex bib
2 2
3;; Copyright (C) 1989, 2005 Free Software Foundation, Inc. 3;; Copyright (C) 1989, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Henry Kautz <kautz@research.att.com> 5;; Author: Henry Kautz <kautz@research.att.com>
6;; Maintainer: FSF
6;; Keywords: bib, tex 7;; Keywords: bib, tex
7 8
8;; This file is part of GNU Emacs. 9;; This file is part of GNU Emacs.
@@ -221,37 +222,49 @@ This is in addition to the `r2b-capitalize-title-stop-words'.")
221 222
222(defvar r2b-error-found nil) 223(defvar r2b-error-found nil)
223 224
225(eval-when-compile
226 (defvar r2b-variables) (defvar r2bv-address) (defvar r2bv-annote)
227 (defvar r2bv-author) (defvar r2bv-booktitle) (defvar r2bv-date)
228 (defvar r2bv-decade) (defvar r2bv-editor) (defvar r2bv-entry-kind)
229 (defvar r2bv-institution) (defvar r2bv-journal) (defvar r2bv-keywords)
230 (defvar r2bv-kn) (defvar r2bv-month) (defvar r2bv-note)
231 (defvar r2bv-number) (defvar r2bv-ordering) (defvar r2bv-organization)
232 (defvar r2bv-pages) (defvar r2bv-primary-author) (defvar r2bv-publisher)
233 (defvar r2bv-school) (defvar r2bv-title) (defvar r2bv-title-first-word)
234 (defvar r2bv-tr) (defvar r2bv-type) (defvar r2bv-volume)
235 (defvar r2bv-where) (defvar r2bv-year))
236
224(setq r2b-variables '( 237(setq r2b-variables '(
225 r2b-error-found 238 r2b-error-found
226 r2bv-author 239 r2bv-author
227 r2bv-primary-author 240 r2bv-primary-author
228 r2bv-date 241 r2bv-date
229 r2bv-year 242 r2bv-year
230 r2bv-decade 243 r2bv-decade
231 r2bv-month 244 r2bv-month
232 r2bv-title 245 r2bv-title
233 r2bv-title-first-word 246 r2bv-title-first-word
234 r2bv-editor 247 r2bv-editor
235 r2bv-annote 248 r2bv-annote
236 r2bv-tr 249 r2bv-tr
237 r2bv-address 250 r2bv-address
238 r2bv-institution 251 r2bv-institution
239 r2bv-keywords 252 r2bv-keywords
240 r2bv-booktitle 253 r2bv-booktitle
241 r2bv-journal 254 r2bv-journal
242 r2bv-volume 255 r2bv-volume
243 r2bv-number 256 r2bv-number
244 r2bv-pages 257 r2bv-pages
245 r2bv-booktitle 258 r2bv-booktitle
246 r2bv-kn 259 r2bv-kn
247 r2bv-publisher 260 r2bv-publisher
248 r2bv-organization 261 r2bv-organization
249 r2bv-school 262 r2bv-school
250 r2bv-type 263 r2bv-type
251 r2bv-where 264 r2bv-where
252 r2bv-note 265 r2bv-note
253 r2bv-ordering 266 r2bv-ordering
254 )) 267 ))
255 268
256(defun r2b-clear-variables () 269(defun r2b-clear-variables ()
257 "Set all global vars used by r2b to nil." 270 "Set all global vars used by r2b to nil."
@@ -632,14 +645,14 @@ but not a publisher."
632 ) 645 )
633 646
634 647
635(defun r2b-convert-record (output-name) 648(defun r2b-convert-record (output)
636 "Transform current bib entry and append to buffer OUTPUT; 649 "Transform current bib entry and append to buffer OUTPUT.
637do \"M-x r2b-help\" for more info." 650Do `\\[r2b-help]' for more info."
638 (interactive 651 (interactive
639 (list (read-string "Output to buffer: " r2b-out-buf-name))) 652 (list (read-string "Output to buffer: " r2b-out-buf-name)))
640 (let (rec-end rec-begin not-done) 653 (let (rec-end rec-begin not-done)
641 (setq r2b-out-buf-name output-name) 654 (setq r2b-out-buf-name output)
642 (setq r2b-out-buf (get-buffer-create output-name)) 655 (setq r2b-out-buf (get-buffer-create output))
643 (setq r2b-in-buf (current-buffer)) 656 (setq r2b-in-buf (current-buffer))
644 (set-buffer r2b-out-buf) 657 (set-buffer r2b-out-buf)
645 (goto-char (point-max)) 658 (goto-char (point-max))
@@ -669,9 +682,9 @@ do \"M-x r2b-help\" for more info."
669 )) 682 ))
670 683
671 684
672(defun r2b-convert-buffer (output-name) 685(defun r2b-convert-buffer (output)
673 "Transform current buffer and append to buffer OUTPUT. 686 "Transform current buffer and append to buffer OUTPUT.
674Do `M-x r2b-help' for more info." 687Do `\\[r2b-help]' for more info."
675 (interactive 688 (interactive
676 (list (read-string "Output to buffer: " r2b-out-buf-name))) 689 (list (read-string "Output to buffer: " r2b-out-buf-name)))
677 (save-excursion 690 (save-excursion
@@ -682,7 +695,7 @@ Do `M-x r2b-help' for more info."
682 (goto-char (point-min)) 695 (goto-char (point-min))
683 (message "Working, please be patient...") 696 (message "Working, please be patient...")
684 (sit-for 0) 697 (sit-for 0)
685 (while (r2b-convert-record output-name) t) 698 (while (r2b-convert-record output) t)
686 (message "Done, results in %s, errors in %s" 699 (message "Done, results in %s, errors in %s"
687 r2b-out-buf-name r2b-log-name) 700 r2b-out-buf-name r2b-log-name)
688 ) 701 )
diff --git a/lisp/textmodes/refer.el b/lisp/textmodes/refer.el
index 3ff01ef5c76..82f06576c1a 100644
--- a/lisp/textmodes/refer.el
+++ b/lisp/textmodes/refer.el
@@ -1,6 +1,7 @@
1;;; refer.el --- look up references in bibliography files 1;;; refer.el --- look up references in bibliography files
2 2
3;; Copyright (C) 1992, 1996, 2001, 2004, 2005 Free Software Foundation, Inc. 3;; Copyright (C) 1992, 1996, 2001, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Ashwin Ram <ashwin@cc.gatech.edu> 6;; Author: Ashwin Ram <ashwin@cc.gatech.edu>
6;; Maintainer: Gernot Heiser <gernot@acm.org> 7;; Maintainer: Gernot Heiser <gernot@acm.org>
diff --git a/lisp/textmodes/refill.el b/lisp/textmodes/refill.el
index d49513ccf3f..bf8938a7ec5 100644
--- a/lisp/textmodes/refill.el
+++ b/lisp/textmodes/refill.el
@@ -1,6 +1,6 @@
1;;; refill.el --- `auto-fill' by refilling paragraphs on changes 1;;; refill.el --- `auto-fill' by refilling paragraphs on changes
2 2
3;; Copyright (C) 2000, 2003, 2005 Free Software Foundation, Inc. 3;; Copyright (C) 2000, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Author: Dave Love <fx@gnu.org> 5;; Author: Dave Love <fx@gnu.org>
6;; Maintainer: Miles Bader <miles@gnu.org> 6;; Maintainer: Miles Bader <miles@gnu.org>
diff --git a/lisp/textmodes/reftex-auc.el b/lisp/textmodes/reftex-auc.el
index 1c6741806f0..f11d607f3e2 100644
--- a/lisp/textmodes/reftex-auc.el
+++ b/lisp/textmodes/reftex-auc.el
@@ -1,6 +1,7 @@
1;;; reftex-auc.el --- RefTeX's interface to AUCTeX 1;;; reftex-auc.el --- RefTeX's interface to AUCTeX
2;; Copyright (c) 1997, 1998, 1999, 2000, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
@@ -75,7 +76,7 @@ What is being used depends upon `reftex-plug-into-AUCTeX'."
75 76
76 77
77(defun reftex-arg-index-tag (optional &optional prompt &rest args) 78(defun reftex-arg-index-tag (optional &optional prompt &rest args)
78 "Prompt for an index tag with completion. 79 "Prompt for an index tag with completion.
79This is the name of an index, not the entry." 80This is the name of an index, not the entry."
80 (let (tag taglist) 81 (let (tag taglist)
81 (setq prompt (concat (if optional "(Optional) " "") 82 (setq prompt (concat (if optional "(Optional) " "")
@@ -85,8 +86,8 @@ This is the name of an index, not the entry."
85 ;; Use RefTeX completion 86 ;; Use RefTeX completion
86 (progn 87 (progn
87 (reftex-access-scan-info nil) 88 (reftex-access-scan-info nil)
88 (setq taglist 89 (setq taglist
89 (cdr (assoc 'index-tags 90 (cdr (assoc 'index-tags
90 (symbol-value reftex-docstruct-symbol))) 91 (symbol-value reftex-docstruct-symbol)))
91 tag (completing-read prompt (mapcar 'list taglist)))) 92 tag (completing-read prompt (mapcar 'list taglist))))
92 ;; Just ask like AUCTeX does. 93 ;; Just ask like AUCTeX does.
@@ -131,7 +132,7 @@ argument identify one of multiple indices."
131 ;; Replace AUCTeX functions with RefTeX functions. 132 ;; Replace AUCTeX functions with RefTeX functions.
132 ;; Which functions are replaced is controlled by the variable 133 ;; Which functions are replaced is controlled by the variable
133 ;; `reftex-plug-into-AUCTeX'. 134 ;; `reftex-plug-into-AUCTeX'.
134 135
135 (if (reftex-plug-flag 0) 136 (if (reftex-plug-flag 0)
136 (setq LaTeX-label-function 'reftex-label) 137 (setq LaTeX-label-function 'reftex-label)
137 (setq LaTeX-label-function nil)) 138 (setq LaTeX-label-function nil))
@@ -143,11 +144,11 @@ argument identify one of multiple indices."
143 (and (reftex-plug-flag 3) 144 (and (reftex-plug-flag 3)
144 (fboundp 'TeX-arg-cite) 145 (fboundp 'TeX-arg-cite)
145 (fset 'TeX-arg-cite 'reftex-arg-cite)) 146 (fset 'TeX-arg-cite 'reftex-arg-cite))
146 147
147 (and (reftex-plug-flag 4) 148 (and (reftex-plug-flag 4)
148 (fboundp 'TeX-arg-index-tag) 149 (fboundp 'TeX-arg-index-tag)
149 (fset 'TeX-arg-index-tag 'reftex-arg-index-tag)) 150 (fset 'TeX-arg-index-tag 'reftex-arg-index-tag))
150 (and (reftex-plug-flag 4) 151 (and (reftex-plug-flag 4)
151 (fboundp 'TeX-arg-index) 152 (fboundp 'TeX-arg-index)
152 (fset 'TeX-arg-index 'reftex-arg-index))) 153 (fset 'TeX-arg-index 'reftex-arg-index)))
153 154
diff --git a/lisp/textmodes/reftex-cite.el b/lisp/textmodes/reftex-cite.el
index 6a15665ea21..08ee88e1a74 100644
--- a/lisp/textmodes/reftex-cite.el
+++ b/lisp/textmodes/reftex-cite.el
@@ -1,6 +1,7 @@
1;;; reftex-cite.el --- creating citations with RefTeX 1;;; reftex-cite.el --- creating citations with RefTeX
2;; Copyright (c) 1997, 1998, 1999, 2000, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
@@ -69,7 +70,7 @@
69 (unless (eq (get 'reftex-default-bibliography :reftex-raw) 70 (unless (eq (get 'reftex-default-bibliography :reftex-raw)
70 reftex-default-bibliography) 71 reftex-default-bibliography)
71 (put 'reftex-default-bibliography :reftex-expanded 72 (put 'reftex-default-bibliography :reftex-expanded
72 (reftex-locate-bibliography-files 73 (reftex-locate-bibliography-files
73 default-directory reftex-default-bibliography)) 74 default-directory reftex-default-bibliography))
74 (put 'reftex-default-bibliography :reftex-raw 75 (put 'reftex-default-bibliography :reftex-raw
75 reftex-default-bibliography)) 76 reftex-default-bibliography))
@@ -128,7 +129,7 @@
128 ;; If RETURN is non-nil, just return the entry. 129 ;; If RETURN is non-nil, just return the entry.
129 130
130 (let* ((re 131 (let* ((re
131 (if item 132 (if item
132 (concat "\\\\bibitem\\(\\[[^]]*\\]\\)?{" (regexp-quote key) "}") 133 (concat "\\\\bibitem\\(\\[[^]]*\\]\\)?{" (regexp-quote key) "}")
133 (concat "@[a-zA-Z]+[ \t\n\r]*[{(][ \t\n\r]*" (regexp-quote key) 134 (concat "@[a-zA-Z]+[ \t\n\r]*[{(][ \t\n\r]*" (regexp-quote key)
134 "[, \t\r\n}]"))) 135 "[, \t\r\n}]")))
@@ -150,7 +151,7 @@
150 (when return 151 (when return
151 ;; Just return the relevant entry 152 ;; Just return the relevant entry
152 (if item (goto-char (match-end 0))) 153 (if item (goto-char (match-end 0)))
153 (setq return (buffer-substring 154 (setq return (buffer-substring
154 (point) (reftex-end-of-bib-entry item))) 155 (point) (reftex-end-of-bib-entry item)))
155 (set-buffer buffer-conf) 156 (set-buffer buffer-conf)
156 (throw 'exit return)) 157 (throw 'exit return))
@@ -166,9 +167,9 @@
166 (error "No BibTeX entry with citation key %s" key))))) 167 (error "No BibTeX entry with citation key %s" key)))))
167 168
168(defun reftex-end-of-bib-entry (item) 169(defun reftex-end-of-bib-entry (item)
169 (save-excursion 170 (save-excursion
170 (condition-case nil 171 (condition-case nil
171 (if item 172 (if item
172 (progn (end-of-line) 173 (progn (end-of-line)
173 (re-search-forward 174 (re-search-forward
174 "\\\\bibitem\\|\\end{thebibliography}") 175 "\\\\bibitem\\|\\end{thebibliography}")
@@ -189,16 +190,16 @@
189 190
190 ;; Read a regexp, completing on known citation keys. 191 ;; Read a regexp, completing on known citation keys.
191 (setq default (regexp-quote (reftex-get-bibkey-default))) 192 (setq default (regexp-quote (reftex-get-bibkey-default)))
192 (setq re-list 193 (setq re-list
193 (split-string 194 (split-string
194 (completing-read 195 (completing-read
195 (concat 196 (concat
196 "Regex { && Regex...}: " 197 "Regex { && Regex...}: "
197 "[" default "]: ") 198 "[" default "]: ")
198 (if reftex-mode 199 (if reftex-mode
199 (if (fboundp 'LaTeX-bibitem-list) 200 (if (fboundp 'LaTeX-bibitem-list)
200 (LaTeX-bibitem-list) 201 (LaTeX-bibitem-list)
201 (cdr (assoc 'bibview-cache 202 (cdr (assoc 'bibview-cache
202 (symbol-value reftex-docstruct-symbol)))) 203 (symbol-value reftex-docstruct-symbol))))
203 nil) 204 nil)
204 nil nil nil 'reftex-cite-regexp-hist) 205 nil nil nil 'reftex-cite-regexp-hist)
@@ -245,7 +246,7 @@
245 (error (goto-char key-point) 246 (error (goto-char key-point)
246 (throw 'search-again nil))) 247 (throw 'search-again nil)))
247 (setq end-point (point)) 248 (setq end-point (point))
248 249
249 ;; Ignore @string, @comment and @c entries or things 250 ;; Ignore @string, @comment and @c entries or things
250 ;; outside entries 251 ;; outside entries
251 (when (or (string= (downcase (match-string 2)) "string") 252 (when (or (string= (downcase (match-string 2)) "string")
@@ -254,12 +255,12 @@
254 (< (point) key-point)) ; this means match not in {} 255 (< (point) key-point)) ; this means match not in {}
255 (goto-char key-point) 256 (goto-char key-point)
256 (throw 'search-again nil)) 257 (throw 'search-again nil))
257 258
258 ;; Well, we have got a match 259 ;; Well, we have got a match
259 ;;(setq entry (concat 260 ;;(setq entry (concat
260 ;; (buffer-substring start-point (point)) "\n")) 261 ;; (buffer-substring start-point (point)) "\n"))
261 (setq entry (buffer-substring start-point (point))) 262 (setq entry (buffer-substring start-point (point)))
262 263
263 ;; Check if other regexp match as well 264 ;; Check if other regexp match as well
264 (setq re-list rest-re) 265 (setq re-list rest-re)
265 (while re-list 266 (while re-list
@@ -267,24 +268,24 @@
267 ;; nope - move on 268 ;; nope - move on
268 (throw 'search-again nil)) 269 (throw 'search-again nil))
269 (pop re-list)) 270 (pop re-list))
270 271
271 (setq alist (reftex-parse-bibtex-entry 272 (setq alist (reftex-parse-bibtex-entry
272 nil start-point end-point)) 273 nil start-point end-point))
273 (push (cons "&entry" entry) alist) 274 (push (cons "&entry" entry) alist)
274 275
275 ;; check for crossref entries 276 ;; check for crossref entries
276 (if (assoc "crossref" alist) 277 (if (assoc "crossref" alist)
277 (setq alist 278 (setq alist
278 (append 279 (append
279 alist (reftex-get-crossref-alist alist)))) 280 alist (reftex-get-crossref-alist alist))))
280 281
281 ;; format the entry 282 ;; format the entry
282 (push (cons "&formatted" (reftex-format-bib-entry alist)) 283 (push (cons "&formatted" (reftex-format-bib-entry alist))
283 alist) 284 alist)
284 285
285 ;; make key the first element 286 ;; make key the first element
286 (push (reftex-get-bib-field "&key" alist) alist) 287 (push (reftex-get-bib-field "&key" alist) alist)
287 288
288 ;; add it to the list 289 ;; add it to the list
289 (push alist found-list))))) 290 (push alist found-list)))))
290 (reftex-kill-temporary-buffers)))) 291 (reftex-kill-temporary-buffers))))
@@ -347,7 +348,7 @@
347 (unless files 348 (unless files
348 (error "Need file name to find thebibliography environment")) 349 (error "Need file name to find thebibliography environment"))
349 (while (setq file (pop files)) 350 (while (setq file (pop files))
350 (setq buf (reftex-get-file-buffer-force 351 (setq buf (reftex-get-file-buffer-force
351 file (not reftex-keep-temporary-buffers))) 352 file (not reftex-keep-temporary-buffers)))
352 (unless buf 353 (unless buf
353 (error "No such file %s" file)) 354 (error "No such file %s" file))
@@ -358,21 +359,21 @@
358 (save-restriction 359 (save-restriction
359 (widen) 360 (widen)
360 (goto-char (point-min)) 361 (goto-char (point-min))
361 (while (re-search-forward 362 (while (re-search-forward
362 "\\(\\`\\|[\n\r]\\)[ \t]*\\\\begin{thebibliography}" nil t) 363 "\\(\\`\\|[\n\r]\\)[ \t]*\\\\begin{thebibliography}" nil t)
363 (beginning-of-line 2) 364 (beginning-of-line 2)
364 (setq start (point)) 365 (setq start (point))
365 (if (re-search-forward 366 (if (re-search-forward
366 "\\(\\`\\|[\n\r]\\)[ \t]*\\\\end{thebibliography}" nil t) 367 "\\(\\`\\|[\n\r]\\)[ \t]*\\\\end{thebibliography}" nil t)
367 (progn 368 (progn
368 (beginning-of-line 1) 369 (beginning-of-line 1)
369 (setq end (point)))) 370 (setq end (point))))
370 (when (and start end) 371 (when (and start end)
371 (setq entries 372 (setq entries
372 (append entries 373 (append entries
373 (mapcar 'reftex-parse-bibitem 374 (mapcar 'reftex-parse-bibitem
374 (delete "" 375 (delete ""
375 (split-string 376 (split-string
376 (buffer-substring-no-properties start end) 377 (buffer-substring-no-properties start end)
377 "[ \t\n\r]*\\\\bibitem\\(\\[[^]]*]\\)*")))))) 378 "[ \t\n\r]*\\\\bibitem\\(\\[[^]]*]\\)*"))))))
378 (goto-char end))))) 379 (goto-char end)))))
@@ -381,16 +382,16 @@
381 382
382 ;; Read a regexp, completing on known citation keys. 383 ;; Read a regexp, completing on known citation keys.
383 (setq default (regexp-quote (reftex-get-bibkey-default))) 384 (setq default (regexp-quote (reftex-get-bibkey-default)))
384 (setq re-list 385 (setq re-list
385 (split-string 386 (split-string
386 (completing-read 387 (completing-read
387 (concat 388 (concat
388 "Regex { && Regex...}: " 389 "Regex { && Regex...}: "
389 "[" default "]: ") 390 "[" default "]: ")
390 (if reftex-mode 391 (if reftex-mode
391 (if (fboundp 'LaTeX-bibitem-list) 392 (if (fboundp 'LaTeX-bibitem-list)
392 (LaTeX-bibitem-list) 393 (LaTeX-bibitem-list)
393 (cdr (assoc 'bibview-cache 394 (cdr (assoc 'bibview-cache
394 (symbol-value reftex-docstruct-symbol)))) 395 (symbol-value reftex-docstruct-symbol))))
395 nil) 396 nil)
396 nil nil nil 'reftex-cite-regexp-hist) 397 nil nil nil 'reftex-cite-regexp-hist)
@@ -403,14 +404,14 @@
403 (error "Empty regular expression")) 404 (error "Empty regular expression"))
404 405
405 (while (and (setq re (pop re-list)) entries) 406 (while (and (setq re (pop re-list)) entries)
406 (setq entries 407 (setq entries
407 (delq nil (mapcar 408 (delq nil (mapcar
408 (lambda (x) 409 (lambda (x)
409 (if (string-match re (cdr (assoc "&entry" x))) 410 (if (string-match re (cdr (assoc "&entry" x)))
410 x nil)) 411 x nil))
411 entries)))) 412 entries))))
412 (setq entries 413 (setq entries
413 (mapcar 414 (mapcar
414 (lambda (x) 415 (lambda (x)
415 (push (cons "&formatted" (reftex-format-bibitem x)) x) 416 (push (cons "&formatted" (reftex-format-bibitem x)) x)
416 (push (reftex-get-bib-field "&key" x) x) 417 (push (reftex-get-bib-field "&key" x) x)
@@ -654,9 +655,9 @@ While entering the regexp, completion on knows citation keys is possible.
654 ;; FIXME: Unfortunately, this meens that commenting does not work right. 655 ;; FIXME: Unfortunately, this meens that commenting does not work right.
655 (pop selected-entries) 656 (pop selected-entries)
656 (let ((concat-keys (mapconcat 'car selected-entries ","))) 657 (let ((concat-keys (mapconcat 'car selected-entries ",")))
657 (setq insert-entries 658 (setq insert-entries
658 (list (list concat-keys (cons "&key" concat-keys)))))) 659 (list (list concat-keys (cons "&key" concat-keys))))))
659 660
660 (unless no-insert 661 (unless no-insert
661 662
662 ;; We shall insert this into the buffer... 663 ;; We shall insert this into the buffer...
@@ -683,7 +684,7 @@ While entering the regexp, completion on knows citation keys is possible.
683 ;; it has to go. If there is only a single arg and empty, it can go 684 ;; it has to go. If there is only a single arg and empty, it can go
684 ;; as well. 685 ;; as well.
685 (when reftex-cite-cleanup-optional-args 686 (when reftex-cite-cleanup-optional-args
686 (cond 687 (cond
687 ((string-match "\\([a-zA-Z0-9]\\)\\[\\]{" string) 688 ((string-match "\\([a-zA-Z0-9]\\)\\[\\]{" string)
688 (setq string (replace-match "\\1{" nil nil string))) 689 (setq string (replace-match "\\1{" nil nil string)))
689 ((string-match "\\[\\]\\(\\[[a-zA-Z0-9., ]+\\]\\)" string) 690 ((string-match "\\[\\]\\(\\[[a-zA-Z0-9., ]+\\]\\)" string)
@@ -698,14 +699,14 @@ While entering the regexp, completion on knows citation keys is possible.
698 (delete-char 1)) 699 (delete-char 1))
699 700
700 ;; Tell AUCTeX 701 ;; Tell AUCTeX
701 (when (and reftex-mode 702 (when (and reftex-mode
702 (fboundp 'LaTeX-add-bibitems) 703 (fboundp 'LaTeX-add-bibitems)
703 reftex-plug-into-AUCTeX) 704 reftex-plug-into-AUCTeX)
704 (apply 'LaTeX-add-bibitems (mapcar 'car selected-entries))) 705 (apply 'LaTeX-add-bibitems (mapcar 'car selected-entries)))
705 706
706 ;; Produce the cite-view strings 707 ;; Produce the cite-view strings
707 (when (and reftex-mode reftex-cache-cite-echo cite-view) 708 (when (and reftex-mode reftex-cache-cite-echo cite-view)
708 (mapcar (lambda (entry) 709 (mapcar (lambda (entry)
709 (reftex-make-cite-echo-string entry docstruct-symbol)) 710 (reftex-make-cite-echo-string entry docstruct-symbol))
710 selected-entries)) 711 selected-entries))
711 712
@@ -713,16 +714,16 @@ While entering the regexp, completion on knows citation keys is possible.
713 714
714 (set-marker reftex-select-return-marker nil) 715 (set-marker reftex-select-return-marker nil)
715 (reftex-kill-buffer "*RefTeX Select*") 716 (reftex-kill-buffer "*RefTeX Select*")
716 717
717 ;; Check if the prefix arg was numeric, and call recursively 718 ;; Check if the prefix arg was numeric, and call recursively
718 (when (integerp arg) 719 (when (integerp arg)
719 (if (> arg 1) 720 (if (> arg 1)
720 (progn 721 (progn
721 (skip-chars-backward "}") 722 (skip-chars-backward "}")
722 (decf arg) 723 (decf arg)
723 (reftex-do-citation arg)) 724 (reftex-do-citation arg))
724 (forward-char 1))) 725 (forward-char 1)))
725 726
726 ;; Return the citation key 727 ;; Return the citation key
727 (car (car selected-entries)))) 728 (car (car selected-entries))))
728 729
@@ -736,7 +737,7 @@ While entering the regexp, completion on knows citation keys is possible.
736 (no-insert 737 (no-insert
737 ;; Format does not really matter because nothing will be inserted. 738 ;; Format does not really matter because nothing will be inserted.
738 (setq format "%l")) 739 (setq format "%l"))
739 740
740 ((and (stringp macro) 741 ((and (stringp macro)
741 (string-match "\\`\\\\cite\\|cite\\'" macro)) 742 (string-match "\\`\\\\cite\\|cite\\'" macro))
742 ;; We are already inside a cite macro 743 ;; We are already inside a cite macro
@@ -757,7 +758,7 @@ While entering the regexp, completion on knows citation keys is possible.
757 (when (listp format) 758 (when (listp format)
758 (setq key 759 (setq key
759 (or format-key 760 (or format-key
760 (reftex-select-with-char 761 (reftex-select-with-char
761 "" (concat "SELECT A CITATION FORMAT\n\n" 762 "" (concat "SELECT A CITATION FORMAT\n\n"
762 (mapconcat 763 (mapconcat
763 (lambda (x) 764 (lambda (x)
@@ -786,8 +787,8 @@ While entering the regexp, completion on knows citation keys is possible.
786 787
787 (let ((bibtype (reftex-bib-or-thebib)) 788 (let ((bibtype (reftex-bib-or-thebib))
788 found-list rtn key data selected-entries) 789 found-list rtn key data selected-entries)
789 (while 790 (while
790 (not 791 (not
791 (catch 'done 792 (catch 'done
792 ;; Scan bibtex files 793 ;; Scan bibtex files
793 (setq found-list 794 (setq found-list
@@ -802,20 +803,20 @@ While entering the regexp, completion on knows citation keys is possible.
802 (reftex-extract-bib-entries-from-thebibliography 803 (reftex-extract-bib-entries-from-thebibliography
803 (reftex-uniquify 804 (reftex-uniquify
804 (mapcar 'cdr 805 (mapcar 'cdr
805 (reftex-all-assq 806 (reftex-all-assq
806 'thebib (symbol-value reftex-docstruct-symbol)))))) 807 'thebib (symbol-value reftex-docstruct-symbol))))))
807 (reftex-default-bibliography 808 (reftex-default-bibliography
808 (message "Using default bibliography") 809 (message "Using default bibliography")
809 (reftex-extract-bib-entries (reftex-default-bibliography))) 810 (reftex-extract-bib-entries (reftex-default-bibliography)))
810 (t (error "No valid bibliography in this document, and no default available")))) 811 (t (error "No valid bibliography in this document, and no default available"))))
811 812
812 (unless found-list 813 (unless found-list
813 (error "Sorry, no matches found")) 814 (error "Sorry, no matches found"))
814 815
815 ;; Remember where we came from 816 ;; Remember where we came from
816 (setq reftex-call-back-to-this-buffer (current-buffer)) 817 (setq reftex-call-back-to-this-buffer (current-buffer))
817 (set-marker reftex-select-return-marker (point)) 818 (set-marker reftex-select-return-marker (point))
818 819
819 ;; Offer selection 820 ;; Offer selection
820 (save-window-excursion 821 (save-window-excursion
821 (delete-other-windows) 822 (delete-other-windows)
@@ -856,15 +857,15 @@ While entering the regexp, completion on knows citation keys is possible.
856 (goto-char 1)) 857 (goto-char 1))
857 ((eq key ?A) 858 ((eq key ?A)
858 ;; Take all (marked) 859 ;; Take all (marked)
859 (setq selected-entries 860 (setq selected-entries
860 (if reftex-select-marked 861 (if reftex-select-marked
861 (mapcar 'car (nreverse reftex-select-marked)) 862 (mapcar 'car (nreverse reftex-select-marked))
862 found-list)) 863 found-list))
863 (throw 'done t)) 864 (throw 'done t))
864 ((eq key ?a) 865 ((eq key ?a)
865 ;; Take all (marked), and push the symbol 'concat 866 ;; Take all (marked), and push the symbol 'concat
866 (setq selected-entries 867 (setq selected-entries
867 (cons 'concat 868 (cons 'concat
868 (if reftex-select-marked 869 (if reftex-select-marked
869 (mapcar 'car (nreverse reftex-select-marked)) 870 (mapcar 'car (nreverse reftex-select-marked))
870 found-list))) 871 found-list)))
@@ -883,9 +884,9 @@ While entering the regexp, completion on knows citation keys is possible.
883 ((or (eq key ?\C-m) 884 ((or (eq key ?\C-m)
884 (eq key 'return)) 885 (eq key 'return))
885 ;; Take selected 886 ;; Take selected
886 (setq selected-entries 887 (setq selected-entries
887 (if reftex-select-marked 888 (if reftex-select-marked
888 (cons 'concat 889 (cons 'concat
889 (mapcar 'car (nreverse reftex-select-marked))) 890 (mapcar 'car (nreverse reftex-select-marked)))
890 (if data (list data) nil))) 891 (if data (list data) nil)))
891 (throw 'done t)) 892 (throw 'done t))
@@ -925,7 +926,7 @@ While entering the regexp, completion on knows citation keys is possible.
925 (let ((file (read-file-name "File to create: "))) 926 (let ((file (read-file-name "File to create: ")))
926 (find-file-other-window file) 927 (find-file-other-window file)
927 (if (> (buffer-size) 0) 928 (if (> (buffer-size) 0)
928 (unless (yes-or-no-p 929 (unless (yes-or-no-p
929 (format "Overwrite non-empty file %s? " file)) 930 (format "Overwrite non-empty file %s? " file))
930 (error "Abort"))) 931 (error "Abort")))
931 (erase-buffer) 932 (erase-buffer)
@@ -950,7 +951,7 @@ While entering the regexp, completion on knows citation keys is possible.
950 reftex-mouse-selected-face 951 reftex-mouse-selected-face
951 nil)) 952 nil))
952 tmp len) 953 tmp len)
953 (mapcar 954 (mapcar
954 (lambda (x) 955 (lambda (x)
955 (setq tmp (cdr (assoc "&formatted" x)) 956 (setq tmp (cdr (assoc "&formatted" x))
956 len (length tmp)) 957 len (length tmp))
@@ -1045,7 +1046,7 @@ While entering the regexp, completion on knows citation keys is possible.
1045(defun reftex-make-cite-echo-string (entry docstruct-symbol) 1046(defun reftex-make-cite-echo-string (entry docstruct-symbol)
1046 ;; Format a bibtex entry for the echo area and cache the result. 1047 ;; Format a bibtex entry for the echo area and cache the result.
1047 (let* ((key (reftex-get-bib-field "&key" entry)) 1048 (let* ((key (reftex-get-bib-field "&key" entry))
1048 (string 1049 (string
1049 (let* ((reftex-cite-punctuation '(" " " & " " etal."))) 1050 (let* ((reftex-cite-punctuation '(" " " & " " etal.")))
1050 (reftex-format-citation entry reftex-cite-view-format))) 1051 (reftex-format-citation entry reftex-cite-view-format)))
1051 (cache (assq 'bibview-cache (symbol-value docstruct-symbol))) 1052 (cache (assq 'bibview-cache (symbol-value docstruct-symbol)))
@@ -1087,7 +1088,7 @@ While entering the regexp, completion on knows citation keys is possible.
1087 (setq bibfile-list 1088 (setq bibfile-list
1088 (reftex-uniquify 1089 (reftex-uniquify
1089 (mapcar 'cdr 1090 (mapcar 'cdr
1090 (reftex-all-assq 1091 (reftex-all-assq
1091 'thebib (symbol-value reftex-docstruct-symbol)))) 1092 'thebib (symbol-value reftex-docstruct-symbol))))
1092 item t)) 1093 item t))
1093 (reftex-default-bibliography 1094 (reftex-default-bibliography
@@ -1098,10 +1099,10 @@ While entering the regexp, completion on knows citation keys is possible.
1098 (setq bibfile-list (reftex-visited-files bibfile-list))) 1099 (setq bibfile-list (reftex-visited-files bibfile-list)))
1099 1100
1100 (condition-case nil 1101 (condition-case nil
1101 (reftex-pop-to-bibtex-entry 1102 (reftex-pop-to-bibtex-entry
1102 key bibfile-list (not reftex-keep-temporary-buffers) t item) 1103 key bibfile-list (not reftex-keep-temporary-buffers) t item)
1103 (error (ding)))) 1104 (error (ding))))
1104 1105
1105 (select-window win))) 1106 (select-window win)))
1106 1107
1107;;; Global BibTeX file 1108;;; Global BibTeX file
@@ -1130,7 +1131,7 @@ While entering the regexp, completion on knows citation keys is possible.
1130 "Create a new BibTeX database file with all entries referenced in document. 1131 "Create a new BibTeX database file with all entries referenced in document.
1131The command prompts for a filename and writes the collected entries to 1132The command prompts for a filename and writes the collected entries to
1132that file. Only entries referenced in the current document with 1133that file. Only entries referenced in the current document with
1133any \\cite-like macros are used. 1134any \\cite-like macros are used.
1134The sequence in the new file is the same as it was in the old database." 1135The sequence in the new file is the same as it was in the old database."
1135 (interactive "FNew BibTeX file: ") 1136 (interactive "FNew BibTeX file: ")
1136 (let ((keys (reftex-all-used-citation-keys)) 1137 (let ((keys (reftex-all-used-citation-keys))
@@ -1144,7 +1145,7 @@ The sequence in the new file is the same as it was in the old database."
1144 (save-restriction 1145 (save-restriction
1145 (widen) 1146 (widen)
1146 (goto-char (point-min)) 1147 (goto-char (point-min))
1147 (while (re-search-forward 1148 (while (re-search-forward
1148 "^[ \t]*@[a-zA-Z]+[ \t]*{\\([^ \t\r\n]+\\)," 1149 "^[ \t]*@[a-zA-Z]+[ \t]*{\\([^ \t\r\n]+\\),"
1149 nil t) 1150 nil t)
1150 (setq key (match-string 1) 1151 (setq key (match-string 1)
@@ -1161,7 +1162,7 @@ The sequence in the new file is the same as it was in the old database."
1161 keys (delete key keys))))))))) 1162 keys (delete key keys)))))))))
1162 (find-file-other-window bibfile) 1163 (find-file-other-window bibfile)
1163 (if (> (buffer-size) 0) 1164 (if (> (buffer-size) 0)
1164 (unless (yes-or-no-p 1165 (unless (yes-or-no-p
1165 (format "Overwrite non-empty file %s? " bibfile)) 1166 (format "Overwrite non-empty file %s? " bibfile))
1166 (error "Abort"))) 1167 (error "Abort")))
1167 (erase-buffer) 1168 (erase-buffer)
diff --git a/lisp/textmodes/reftex-dcr.el b/lisp/textmodes/reftex-dcr.el
index 2a518ae9d77..e4f09d04902 100644
--- a/lisp/textmodes/reftex-dcr.el
+++ b/lisp/textmodes/reftex-dcr.el
@@ -1,6 +1,7 @@
1;;; reftex-dcr.el --- viewing cross references and citations with RefTeX 1;;; reftex-dcr.el --- viewing cross references and citations with RefTeX
2;; Copyright (c) 1997, 1998, 1999, 2000, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
diff --git a/lisp/textmodes/reftex-global.el b/lisp/textmodes/reftex-global.el
index f7f635aaf1b..281e852a40d 100644
--- a/lisp/textmodes/reftex-global.el
+++ b/lisp/textmodes/reftex-global.el
@@ -1,6 +1,7 @@
1;;; reftex-global.el --- operations on entire documents with RefTeX 1;;; reftex-global.el --- operations on entire documents with RefTeX
2;; Copyright (c) 1997, 1998, 1999, 2000, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
diff --git a/lisp/textmodes/reftex-index.el b/lisp/textmodes/reftex-index.el
index a0bc2d85754..ebcc5d06754 100644
--- a/lisp/textmodes/reftex-index.el
+++ b/lisp/textmodes/reftex-index.el
@@ -1,6 +1,7 @@
1;;; reftex-index.el --- index support with RefTeX 1;;; reftex-index.el --- index support with RefTeX
2;; Copyright (c) 1997, 1998, 1999, 2000, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
diff --git a/lisp/textmodes/reftex-parse.el b/lisp/textmodes/reftex-parse.el
index 76372dc1ddb..b08d1e87999 100644
--- a/lisp/textmodes/reftex-parse.el
+++ b/lisp/textmodes/reftex-parse.el
@@ -1,6 +1,7 @@
1;;; reftex-parse.el --- parser functions for RefTeX 1;;; reftex-parse.el --- parser functions for RefTeX
2;; Copyright (c) 1997, 1998, 1999, 2000, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
diff --git a/lisp/textmodes/reftex-ref.el b/lisp/textmodes/reftex-ref.el
index bc4260367d8..edc284a3060 100644
--- a/lisp/textmodes/reftex-ref.el
+++ b/lisp/textmodes/reftex-ref.el
@@ -1,6 +1,7 @@
1;;; reftex-ref.el --- code to create labels and references with RefTeX 1;;; reftex-ref.el --- code to create labels and references with RefTeX
2;; Copyright (c) 1997, 1998, 1999, 2000, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
diff --git a/lisp/textmodes/reftex-sel.el b/lisp/textmodes/reftex-sel.el
index 90f2e057aa8..1c91d9a662b 100644
--- a/lisp/textmodes/reftex-sel.el
+++ b/lisp/textmodes/reftex-sel.el
@@ -1,6 +1,7 @@
1;;; reftex-sel.el --- the selection modes for RefTeX 1;;; reftex-sel.el --- the selection modes for RefTeX
2;; Copyright (c) 1997, 1998, 1999, 2000, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
diff --git a/lisp/textmodes/reftex-toc.el b/lisp/textmodes/reftex-toc.el
index a9f1a280dcf..7f922ce85a4 100644
--- a/lisp/textmodes/reftex-toc.el
+++ b/lisp/textmodes/reftex-toc.el
@@ -1,6 +1,7 @@
1;;; reftex-toc.el --- RefTeX's table of contents mode 1;;; reftex-toc.el --- RefTeX's table of contents mode
2;; Copyright (c) 1997, 1998, 1999, 2000, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
diff --git a/lisp/textmodes/reftex-vars.el b/lisp/textmodes/reftex-vars.el
index 5f39167bb46..170b77d9e36 100644
--- a/lisp/textmodes/reftex-vars.el
+++ b/lisp/textmodes/reftex-vars.el
@@ -1,6 +1,7 @@
1;;; reftex-vars.el --- configuration variables for RefTeX 1;;; reftex-vars.el --- configuration variables for RefTeX
2;; Copyright (c) 1997, 1998, 1999, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
diff --git a/lisp/textmodes/reftex.el b/lisp/textmodes/reftex.el
index a97d122c17e..01d40a6ea5b 100644
--- a/lisp/textmodes/reftex.el
+++ b/lisp/textmodes/reftex.el
@@ -1,6 +1,7 @@
1;;; reftex.el --- minor mode for doing \label, \ref, \cite, \index in LaTeX 1;;; reftex.el --- minor mode for doing \label, \ref, \cite, \index in LaTeX
2;; Copyright (c) 1997, 1998, 1999, 2000, 2003, 2004, 2005 2
3;; Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Carsten Dominik <dominik@science.uva.nl> 6;; Author: Carsten Dominik <dominik@science.uva.nl>
6;; Version: 4.28 7;; Version: 4.28
diff --git a/lisp/textmodes/sgml-mode.el b/lisp/textmodes/sgml-mode.el
index 99cb10ae497..3288023c835 100644
--- a/lisp/textmodes/sgml-mode.el
+++ b/lisp/textmodes/sgml-mode.el
@@ -1,7 +1,7 @@
1;;; sgml-mode.el --- SGML- and HTML-editing modes 1;;; sgml-mode.el --- SGML- and HTML-editing modes
2 2
3;; Copyright (C) 1992, 1995, 1996, 1998, 2001, 2002, 2003, 2004, 2005 3;; Copyright (C) 1992, 1995, 1996, 1998, 2001, 2002, 2003, 2004,
4;; Free Software Foundation, Inc. 4;; 2005 Free Software Foundation, Inc.
5 5
6;; Author: James Clark <jjc@jclark.com> 6;; Author: James Clark <jjc@jclark.com>
7;; Maintainer: FSF 7;; Maintainer: FSF
@@ -250,8 +250,6 @@ Any terminating `>' or `/' is not matched.")
250 '((t (:inherit font-lock-builtin-face))) 250 '((t (:inherit font-lock-builtin-face)))
251 "`sgml-mode' face used to highlight the namespace part of identifiers." 251 "`sgml-mode' face used to highlight the namespace part of identifiers."
252 :group 'sgml) 252 :group 'sgml)
253;; backward-compatibility alias
254(put 'sgml-namespace-face 'face-alias 'sgml-namespace)
255(defvar sgml-namespace-face 'sgml-namespace) 253(defvar sgml-namespace-face 'sgml-namespace)
256 254
257;; internal 255;; internal
diff --git a/lisp/textmodes/spell.el b/lisp/textmodes/spell.el
index 99046988036..077e9b0fd35 100644
--- a/lisp/textmodes/spell.el
+++ b/lisp/textmodes/spell.el
@@ -1,6 +1,6 @@
1;;; spell.el --- spelling correction interface for Emacs 1;;; spell.el --- spelling correction interface for Emacs
2 2
3;; Copyright (C) 1985 Free Software Foundation, Inc. 3;; Copyright (C) 1985, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Maintainer: FSF 5;; Maintainer: FSF
6;; Keywords: wp, unix 6;; Keywords: wp, unix
diff --git a/lisp/textmodes/table.el b/lisp/textmodes/table.el
index 4b6e305922b..f45bcde6684 100644
--- a/lisp/textmodes/table.el
+++ b/lisp/textmodes/table.el
@@ -1,12 +1,12 @@
1;;; table.el --- create and edit WYSIWYG text based embedded tables 1;;; table.el --- create and edit WYSIWYG text based embedded tables
2 2
3;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 3;; Copyright (C) 2000, 2001, 2002, 2003, 2004,
4;; Free Software Foundation, Inc. 4;; 2005 Free Software Foundation, Inc.
5 5
6;; Keywords: wp, convenience 6;; Keywords: wp, convenience
7;; Author: Takaaki Ota <Takaaki.Ota@am.sony.com> 7;; Author: Takaaki Ota <Takaaki.Ota@am.sony.com>
8;; Created: Sat Jul 08 2000 13:28:45 (PST) 8;; Created: Sat Jul 08 2000 13:28:45 (PST)
9;; Revised: Fri Mar 18 2005 13:50:13 (PST) 9;; Revised: Sat Aug 06 2005 19:42:54 (CEST)
10 10
11;; This file is part of GNU Emacs. 11;; This file is part of GNU Emacs.
12 12
@@ -691,8 +691,6 @@ height."
691 "*Face used for table cell contents." 691 "*Face used for table cell contents."
692 :tag "Cell Face" 692 :tag "Cell Face"
693 :group 'table) 693 :group 'table)
694;; backward-compatibility alias
695(put 'table-cell-face 'face-alias 'table-cell)
696 694
697(defcustom table-cell-horizontal-chars "-=" 695(defcustom table-cell-horizontal-chars "-="
698 "*Characters that may be used for table cell's horizontal border line." 696 "*Characters that may be used for table cell's horizontal border line."
diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el
index 87af346af6a..ebb00756c9d 100644
--- a/lisp/textmodes/tex-mode.el
+++ b/lisp/textmodes/tex-mode.el
@@ -1,7 +1,7 @@
1;;; tex-mode.el --- TeX, LaTeX, and SliTeX mode commands -*- coding: utf-8 -*- 1;;; tex-mode.el --- TeX, LaTeX, and SliTeX mode commands -*- coding: utf-8 -*-
2 2
3;; Copyright (C) 1985, 1986, 1989, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 3;; Copyright (C) 1985, 1986, 1989, 1992, 1994, 1995, 1996, 1997, 1998, 1999,
4;; 2002, 2003, 2004, 2005 Free Software Foundation, Inc. 4;; 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
5 5
6;; Maintainer: FSF 6;; Maintainer: FSF
7;; Keywords: tex 7;; Keywords: tex
@@ -1942,7 +1942,8 @@ FILE is typically the output DVI or PDF file."
1942 default-directory)))) 1942 default-directory))))
1943 (not dir)) 1943 (not dir))
1944 (let (shell-dirtrack-verbose) 1944 (let (shell-dirtrack-verbose)
1945 (tex-send-command tex-shell-cd-command dir))) 1945 (tex-send-command tex-shell-cd-command
1946 (concat "\"" (convert-standard-filename dir) "\""))))
1946 (with-current-buffer (process-buffer (tex-send-command cmd)) 1947 (with-current-buffer (process-buffer (tex-send-command cmd))
1947 (setq compilation-last-buffer (current-buffer)) 1948 (setq compilation-last-buffer (current-buffer))
1948 (compilation-forget-errors) 1949 (compilation-forget-errors)
@@ -2307,7 +2308,8 @@ Runs the shell command defined by `tex-show-queue-command'."
2307 (tex-out-file 2308 (tex-out-file
2308 (tex-append (file-name-nondirectory (buffer-file-name)) "")) 2309 (tex-append (file-name-nondirectory (buffer-file-name)) ""))
2309 (file-dir (file-name-directory (buffer-file-name)))) 2310 (file-dir (file-name-directory (buffer-file-name))))
2310 (tex-send-command tex-shell-cd-command file-dir) 2311 (tex-send-command tex-shell-cd-command
2312 (concat "\"" (convert-standard-filename file-dir) "\""))
2311 (tex-send-command tex-bibtex-command tex-out-file)) 2313 (tex-send-command tex-bibtex-command tex-out-file))
2312 (tex-display-shell)) 2314 (tex-display-shell))
2313 2315
diff --git a/lisp/textmodes/texinfmt.el b/lisp/textmodes/texinfmt.el
index 8425d691d77..d46d2f81fd4 100644
--- a/lisp/textmodes/texinfmt.el
+++ b/lisp/textmodes/texinfmt.el
@@ -1,8 +1,8 @@
1;;; texinfmt.el --- format Texinfo files into Info files 1;;; texinfmt.el --- format Texinfo files into Info files
2 2
3;; Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 3;; Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993,
4;; 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2005 4;; 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003,
5;; Free Software Foundation, Inc. 5;; 2004, 2005 Free Software Foundation, Inc.
6 6
7;; Maintainer: Robert J. Chassell <bug-texinfo@gnu.org> 7;; Maintainer: Robert J. Chassell <bug-texinfo@gnu.org>
8;; Keywords: maint, tex, docs 8;; Keywords: maint, tex, docs
diff --git a/lisp/textmodes/texinfo.el b/lisp/textmodes/texinfo.el
index 693ab4e608e..8fce8099ed7 100644
--- a/lisp/textmodes/texinfo.el
+++ b/lisp/textmodes/texinfo.el
@@ -1,7 +1,7 @@
1;;; texinfo.el --- major mode for editing Texinfo files 1;;; texinfo.el --- major mode for editing Texinfo files
2 2
3;; Copyright (C) 1985, 1988, 1989, 1990, 1991, 1992, 1993, 1996, 1997, 3;; Copyright (C) 1985, 1988, 1989, 1990, 1991, 1992, 1993, 1996, 1997,
4;; 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc. 4;; 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
5 5
6;; Author: Robert J. Chassell 6;; Author: Robert J. Chassell
7;; Date: [See date below for texinfo-version] 7;; Date: [See date below for texinfo-version]
diff --git a/lisp/textmodes/texnfo-upd.el b/lisp/textmodes/texnfo-upd.el
index dbd9b8a5c67..110981d33b0 100644
--- a/lisp/textmodes/texnfo-upd.el
+++ b/lisp/textmodes/texnfo-upd.el
@@ -1,6 +1,7 @@
1;;; texnfo-upd.el --- utilities for updating nodes and menus in Texinfo files 1;;; texnfo-upd.el --- utilities for updating nodes and menus in Texinfo files
2 2
3;; Copyright (C) 1989, 1990, 1991, 1992, 2001, 2002, 2003 Free Software Foundation, Inc. 3;; Copyright (C) 1989, 1990, 1991, 1992, 2001, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Robert J. Chassell 6;; Author: Robert J. Chassell
6;; Maintainer: bug-texinfo@gnu.org 7;; Maintainer: bug-texinfo@gnu.org
diff --git a/lisp/textmodes/text-mode.el b/lisp/textmodes/text-mode.el
index 0737f64f768..5e4cfc88471 100644
--- a/lisp/textmodes/text-mode.el
+++ b/lisp/textmodes/text-mode.el
@@ -1,6 +1,7 @@
1;;; text-mode.el --- text mode, and its idiosyncratic commands 1;;; text-mode.el --- text mode, and its idiosyncratic commands
2 2
3;; Copyright (C) 1985, 1992, 1994 Free Software Foundation, Inc. 3;; Copyright (C) 1985, 1992, 1994, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Maintainer: FSF 6;; Maintainer: FSF
6;; Keywords: wp 7;; Keywords: wp
diff --git a/lisp/textmodes/tildify.el b/lisp/textmodes/tildify.el
index 469cd73cd66..c317131d955 100644
--- a/lisp/textmodes/tildify.el
+++ b/lisp/textmodes/tildify.el
@@ -1,6 +1,7 @@
1;;; tildify.el --- adding hard spaces into texts 1;;; tildify.el --- adding hard spaces into texts
2 2
3;; Copyright (C) 1997, 1998, 1999, 2000, 2002 Free Software Foundation, Inc. 3;; Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Milan Zamazal <pdm@zamazal.org> 6;; Author: Milan Zamazal <pdm@zamazal.org>
6;; Version: 4.5 7;; Version: 4.5
diff --git a/lisp/textmodes/two-column.el b/lisp/textmodes/two-column.el
index 30429638cb8..1e83b7a725b 100644
--- a/lisp/textmodes/two-column.el
+++ b/lisp/textmodes/two-column.el
@@ -1,6 +1,7 @@
1;;; two-column.el --- minor mode for editing of two-column text 1;;; two-column.el --- minor mode for editing of two-column text
2 2
3;; Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc. 3;; Copyright (C) 1992, 1993, 1994, 1995, 2002, 2003, 2004,
4;; 2005 Free Software Foundation, Inc.
4 5
5;; Author: Daniel Pfeiffer <occitan@esperanto.org> 6;; Author: Daniel Pfeiffer <occitan@esperanto.org>
6;; Adapted-By: ESR, Daniel Pfeiffer 7;; Adapted-By: ESR, Daniel Pfeiffer
diff --git a/lisp/textmodes/underline.el b/lisp/textmodes/underline.el
index c380c809a7d..3c67307da51 100644
--- a/lisp/textmodes/underline.el
+++ b/lisp/textmodes/underline.el
@@ -1,6 +1,6 @@
1;;; underline.el --- insert/remove underlining (done by overstriking) in Emacs 1;;; underline.el --- insert/remove underlining (done by overstriking) in Emacs
2 2
3;; Copyright (C) 1985 Free Software Foundation, Inc. 3;; Copyright (C) 1985, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4 4
5;; Maintainer: FSF 5;; Maintainer: FSF
6;; Keywords: wp 6;; Keywords: wp