From 1e8780b173424f554a7d2248140c05d2e5f98247 Mon Sep 17 00:00:00 2001 From: Dan Nicolaescu Date: Fri, 6 Nov 2009 05:16:23 +0000 Subject: [PATCH] * textmodes/tex-mode.el (tex-alt-dvi-print-command) (tex-dvi-print-command, tex-bibtex-command, tex-start-commands) (tex-start-options, slitex-run-command, latex-run-command) (tex-run-command, tex-directory): * textmodes/ispell.el (ispell-html-skip-alists) (ispell-tex-skip-alists, ispell-tex-skip-alists): * textmodes/fill.el (adaptive-fill-first-line-regexp): (adaptive-fill-regexp): * textmodes/dns-mode.el (auto-mode-alist): * progmodes/python.el (interpreter-mode-alist): * progmodes/etags.el (tags-compression-info-list): * progmodes/etags.el (tags-file-name): * net/browse-url.el (browse-url-galeon-program) (browse-url-firefox-program): * mail/sendmail.el (mail-signature-file) (mail-citation-prefix-regexp): * international/mule-conf.el (eight-bit): * international/latexenc.el (latex-inputenc-coding-alist): * international/fontset.el (x-pixel-size-width-font-regexp): * emacs-lisp/warnings.el (warning-type-format): * emacs-lisp/trace.el (trace-buffer): * emacs-lisp/lisp-mode.el (lisp-interaction-mode-map) (emacs-lisp-mode-map): * calendar/holidays.el (holiday-solar-holidays) (holiday-bahai-holidays, holiday-islamic-holidays) (holiday-christian-holidays, holiday-hebrew-holidays) (hebrew-holidays-4, hebrew-holidays-3, hebrew-holidays-2) (hebrew-holidays-1, holiday-oriental-holidays) (holiday-general-holidays): * x-dnd.el (x-dnd-known-types): * tool-bar.el (tool-bar): * startup.el (site-run-file): * shell.el (shell-dumb-shell-regexp): * rfn-eshadow.el (file-name-shadow-tty-properties) (file-name-shadow-properties): * paths.el (remote-shell-program, news-directory): * mouse.el ([C-down-mouse-3]): * menu-bar.el (menu-bar-tools-menu): * jka-cmpr-hook.el (jka-compr-load-suffixes) (jka-compr-mode-alist-additions, jka-compr-compression-info-list) (jka-compr-compression-info-list): * isearch.el (search-whitespace-regexp): * image-file.el (image-file-name-extensions): * find-dired.el (find-ls-option): * files.el (directory-listing-before-filename-regexp) (directory-free-space-args, insert-directory-program) (list-directory-brief-switches, magic-fallback-mode-alist) (magic-fallback-mode-alist, auto-mode-interpreter-regexp) (automount-dir-prefix): * faces.el (face-x-resources, x-font-regexp, x-font-regexp-head) (x-font-regexp-slant, x-font-regexp-weight, face-x-resources) (face-font-registry-alternatives, face-font-registry-alternatives) (face-font-family-alternatives): * facemenu.el (facemenu-add-new-face, facemenu-background-menu) (facemenu-foreground-menu, facemenu-face-menu): * epa-hook.el (epa-file-name-regexp): * dnd.el (dnd-protocol-alist): * textmodes/rst.el (auto-mode-alist): * button.el (default-button): Purecopy strings. --- lisp/ChangeLog | 62 +++++++++++++++++++++++++++++++++ lisp/button.el | 2 +- lisp/calendar/holidays.el | 33 ++++++++++++------ lisp/dnd.el | 8 ++--- lisp/emacs-lisp/byte-run.el | 2 +- lisp/emacs-lisp/lisp-mode.el | 4 +-- lisp/emacs-lisp/trace.el | 2 +- lisp/emacs-lisp/warnings.el | 2 +- lisp/epa-hook.el | 2 +- lisp/facemenu.el | 10 +++--- lisp/faces.el | 25 ++++++++----- lisp/files.el | 23 ++++++------ lisp/find-dired.el | 4 +-- lisp/image-file.el | 2 +- lisp/international/fontset.el | 6 ++-- lisp/international/latexenc.el | 3 +- lisp/international/mule-conf.el | 4 +-- lisp/isearch.el | 2 +- lisp/jka-cmpr-hook.el | 7 ++-- lisp/mail/sendmail.el | 6 ++-- lisp/menu-bar.el | 6 ++-- lisp/mouse.el | 2 +- lisp/net/browse-url.el | 4 +-- lisp/paths.el | 12 ++++--- lisp/progmodes/etags.el | 4 +-- lisp/progmodes/python.el | 4 +-- lisp/rfn-eshadow.el | 5 +-- lisp/shell.el | 2 +- lisp/startup.el | 4 +-- lisp/textmodes/dns-mode.el | 2 +- lisp/textmodes/fill.el | 4 +-- lisp/textmodes/ispell.el | 5 +-- lisp/textmodes/rst.el | 2 +- lisp/textmodes/tex-mode.el | 18 +++++----- lisp/tool-bar.el | 2 +- lisp/x-dnd.el | 3 +- 36 files changed, 188 insertions(+), 100 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 9bc780788b0..a93c84ca159 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,65 @@ +2009-11-05 Dan Nicolaescu + + * textmodes/tex-mode.el (tex-alt-dvi-print-command) + (tex-dvi-print-command, tex-bibtex-command, tex-start-commands) + (tex-start-options, slitex-run-command, latex-run-command) + (tex-run-command, tex-directory): + * textmodes/ispell.el (ispell-html-skip-alists) + (ispell-tex-skip-alists, ispell-tex-skip-alists): + * textmodes/fill.el (adaptive-fill-first-line-regexp): + (adaptive-fill-regexp): + * textmodes/dns-mode.el (auto-mode-alist): + * progmodes/python.el (interpreter-mode-alist): + * progmodes/etags.el (tags-compression-info-list): + * progmodes/etags.el (tags-file-name): + * net/browse-url.el (browse-url-galeon-program) + (browse-url-firefox-program): + * mail/sendmail.el (mail-signature-file) + (mail-citation-prefix-regexp): + * international/mule-conf.el (eight-bit): + * international/latexenc.el (latex-inputenc-coding-alist): + * international/fontset.el (x-pixel-size-width-font-regexp): + * emacs-lisp/warnings.el (warning-type-format): + * emacs-lisp/trace.el (trace-buffer): + * emacs-lisp/lisp-mode.el (lisp-interaction-mode-map) + (emacs-lisp-mode-map): + * calendar/holidays.el (holiday-solar-holidays) + (holiday-bahai-holidays, holiday-islamic-holidays) + (holiday-christian-holidays, holiday-hebrew-holidays) + (hebrew-holidays-4, hebrew-holidays-3, hebrew-holidays-2) + (hebrew-holidays-1, holiday-oriental-holidays) + (holiday-general-holidays): + * x-dnd.el (x-dnd-known-types): + * tool-bar.el (tool-bar): + * startup.el (site-run-file): + * shell.el (shell-dumb-shell-regexp): + * rfn-eshadow.el (file-name-shadow-tty-properties) + (file-name-shadow-properties): + * paths.el (remote-shell-program, news-directory): + * mouse.el ([C-down-mouse-3]): + * menu-bar.el (menu-bar-tools-menu): + * jka-cmpr-hook.el (jka-compr-load-suffixes) + (jka-compr-mode-alist-additions, jka-compr-compression-info-list) + (jka-compr-compression-info-list): + * isearch.el (search-whitespace-regexp): + * image-file.el (image-file-name-extensions): + * find-dired.el (find-ls-option): + * files.el (directory-listing-before-filename-regexp) + (directory-free-space-args, insert-directory-program) + (list-directory-brief-switches, magic-fallback-mode-alist) + (magic-fallback-mode-alist, auto-mode-interpreter-regexp) + (automount-dir-prefix): + * faces.el (face-x-resources, x-font-regexp, x-font-regexp-head) + (x-font-regexp-slant, x-font-regexp-weight, face-x-resources) + (face-font-registry-alternatives, face-font-registry-alternatives) + (face-font-family-alternatives): + * facemenu.el (facemenu-add-new-face, facemenu-background-menu) + (facemenu-foreground-menu, facemenu-face-menu): + * epa-hook.el (epa-file-name-regexp): + * dnd.el (dnd-protocol-alist): + * textmodes/rst.el (auto-mode-alist): + * button.el (default-button): Purecopy strings. + 2009-11-06 Glenn Morris * Makefile.in (ELCFILES): Update. diff --git a/lisp/button.el b/lisp/button.el index 9732b8bae05..25012ae59b7 100644 --- a/lisp/button.el +++ b/lisp/button.el @@ -84,7 +84,7 @@ Mode-specific keymaps may want to use this as their parent keymap.") (put 'default-button 'type 'button) ;; action may be either a function to call, or a marker to go to (put 'default-button 'action 'ignore) -(put 'default-button 'help-echo "mouse-2, RET: Push this button") +(put 'default-button 'help-echo (purecopy "mouse-2, RET: Push this button")) ;; Make overlay buttons go away if their underlying text is deleted. (put 'default-button 'evaporate t) ;; Prevent insertions adjacent to the text-property buttons from diff --git a/lisp/calendar/holidays.el b/lisp/calendar/holidays.el index d4d1e914333..d41f2cf9aff 100644 --- a/lisp/calendar/holidays.el +++ b/lisp/calendar/holidays.el @@ -43,6 +43,7 @@ ;;;###autoload (defcustom holiday-general-holidays + (mapcar 'purecopy '((holiday-fixed 1 1 "New Year's Day") (holiday-float 1 1 3 "Martin Luther King Day") (holiday-fixed 2 2 "Groundhog Day") @@ -59,7 +60,7 @@ (holiday-float 10 1 2 "Columbus Day") (holiday-fixed 10 31 "Halloween") (holiday-fixed 11 11 "Veteran's Day") - (holiday-float 11 4 4 "Thanksgiving")) + (holiday-float 11 4 4 "Thanksgiving"))) "General holidays. Default value is for the United States. See the documentation for `calendar-holidays' for details." :type 'sexp @@ -72,6 +73,7 @@ See the documentation for `calendar-holidays' for details." ;;;###autoload (defcustom holiday-oriental-holidays + (mapcar 'purecopy '((holiday-chinese-new-year) (if calendar-chinese-all-holidays-flag (append @@ -82,7 +84,7 @@ See the documentation for `calendar-holidays' for details." (holiday-chinese 8 15 "Mid-Autumn Festival") (holiday-chinese 9 9 "Double Ninth Festival") (holiday-chinese-winter-solstice) - ))) + )))) "Oriental holidays. See the documentation for `calendar-holidays' for details." :version "23.1" ; added more holidays @@ -118,6 +120,7 @@ See the documentation for `calendar-holidays' for details." ;;;###autoload (defvar hebrew-holidays-1 + (mapcar 'purecopy '((holiday-hebrew-rosh-hashanah) (if calendar-hebrew-all-holidays-flag (holiday-julian @@ -131,7 +134,7 @@ See the documentation for `calendar-holidays' for details." (calendar-absolute-from-gregorian (list m 1 y))))) (if (zerop (% (1+ year) 4)) 22 - 21)) "\"Tal Umatar\" (evening)"))) + 21)) "\"Tal Umatar\" (evening)")))) "Component of the old default value of `holiday-hebrew-holidays'.") ;;;###autoload (put 'hebrew-holidays-1 'risky-local-variable t) @@ -139,6 +142,7 @@ See the documentation for `calendar-holidays' for details." ;;;###autoload (defvar hebrew-holidays-2 + (mapcar 'purecopy '((holiday-hebrew-hanukkah) ; respects calendar-hebrew-all-holidays-flag (if calendar-hebrew-all-holidays-flag (holiday-hebrew @@ -152,7 +156,7 @@ See the documentation for `calendar-holidays' for details." 11 10)) "Tzom Teveth")) (if calendar-hebrew-all-holidays-flag - (holiday-hebrew 11 15 "Tu B'Shevat"))) + (holiday-hebrew 11 15 "Tu B'Shevat")))) "Component of the old default value of `holiday-hebrew-holidays'.") ;;;###autoload (put 'hebrew-holidays-2 'risky-local-variable t) @@ -160,6 +164,7 @@ See the documentation for `calendar-holidays' for details." ;;;###autoload (defvar hebrew-holidays-3 + (mapcar 'purecopy '((if calendar-hebrew-all-holidays-flag (holiday-hebrew 11 @@ -185,7 +190,7 @@ See the documentation for `calendar-holidays' for details." (list 11 16 h-year)))))) (day (calendar-extract-day s-s))) day) - "Shabbat Shirah"))) + "Shabbat Shirah")))) "Component of the old default value of `holiday-hebrew-holidays'.") ;;;###autoload (put 'hebrew-holidays-3 'risky-local-variable t) @@ -193,6 +198,7 @@ See the documentation for `calendar-holidays' for details." ;;;###autoload (defvar hebrew-holidays-4 + (mapcar 'purecopy '((holiday-hebrew-passover) (and calendar-hebrew-all-holidays-flag (let* ((m displayed-month) @@ -205,7 +211,7 @@ See the documentation for `calendar-holidays' for details." (= 21 (% year 28))) (holiday-julian 3 26 "Kiddush HaHamah")) (if calendar-hebrew-all-holidays-flag - (holiday-hebrew-tisha-b-av))) + (holiday-hebrew-tisha-b-av)))) "Component of the old default value of `holiday-hebrew-holidays'.") ;;;###autoload (put 'hebrew-holidays-4 'risky-local-variable t) @@ -213,13 +219,14 @@ See the documentation for `calendar-holidays' for details." ;;;###autoload (defcustom holiday-hebrew-holidays + (mapcar 'purecopy '((holiday-hebrew-passover) (holiday-hebrew-rosh-hashanah) (holiday-hebrew-hanukkah) (if calendar-hebrew-all-holidays-flag (append (holiday-hebrew-tisha-b-av) - (holiday-hebrew-misc)))) + (holiday-hebrew-misc))))) "Jewish holidays. See the documentation for `calendar-holidays' for details." :type 'sexp @@ -233,6 +240,7 @@ See the documentation for `calendar-holidays' for details." ;;;###autoload (defcustom holiday-christian-holidays + (mapcar 'purecopy '((holiday-easter-etc) ; respects calendar-christian-all-holidays-flag (holiday-fixed 12 25 "Christmas") (if calendar-christian-all-holidays-flag @@ -241,7 +249,7 @@ See the documentation for `calendar-holidays' for details." (holiday-julian 12 25 "Eastern Orthodox Christmas") (holiday-greek-orthodox-easter) (holiday-fixed 8 15 "Assumption") - (holiday-advent 0 "Advent")))) + (holiday-advent 0 "Advent"))))) "Christian holidays. See the documentation for `calendar-holidays' for details." :type 'sexp @@ -254,6 +262,7 @@ See the documentation for `calendar-holidays' for details." ;;;###autoload (defcustom holiday-islamic-holidays + (mapcar 'purecopy '((holiday-islamic-new-year) (holiday-islamic 9 1 "Ramadan Begins") (if calendar-islamic-all-holidays-flag @@ -264,7 +273,7 @@ See the documentation for `calendar-holidays' for details." (holiday-islamic 8 15 "Shab-e-Bara't") (holiday-islamic 9 27 "Shab-e Qadr") (holiday-islamic 10 1 "Id-al-Fitr") - (holiday-islamic 12 10 "Id-al-Adha")))) + (holiday-islamic 12 10 "Id-al-Adha"))))) "Islamic holidays. See the documentation for `calendar-holidays' for details." :type 'sexp @@ -277,6 +286,7 @@ See the documentation for `calendar-holidays' for details." ;;;###autoload (defcustom holiday-bahai-holidays + (mapcar 'purecopy '((holiday-bahai-new-year) (holiday-bahai-ridvan) ; respects calendar-bahai-all-holidays-flag (holiday-fixed 5 23 "Declaration of the Bab") @@ -287,7 +297,7 @@ See the documentation for `calendar-holidays' for details." (if calendar-bahai-all-holidays-flag (append (holiday-fixed 11 26 "Day of the Covenant") - (holiday-fixed 11 28 "Ascension of `Abdu'l-Baha")))) + (holiday-fixed 11 28 "Ascension of `Abdu'l-Baha"))))) "Baha'i holidays. See the documentation for `calendar-holidays' for details." :type 'sexp @@ -299,6 +309,7 @@ See the documentation for `calendar-holidays' for details." ;;;###autoload (defcustom holiday-solar-holidays + (mapcar 'purecopy '((solar-equinoxes-solstices) (holiday-sexp calendar-daylight-savings-starts (format "Daylight Saving Time Begins %s" @@ -309,7 +320,7 @@ See the documentation for `calendar-holidays' for details." (format "Daylight Saving Time Ends %s" (solar-time-string (/ calendar-daylight-savings-ends-time (float 60)) - calendar-daylight-time-zone-name)))) + calendar-daylight-time-zone-name))))) "Sun-related holidays. See the documentation for `calendar-holidays' for details." :type 'sexp diff --git a/lisp/dnd.el b/lisp/dnd.el index dea373d4390..34df9e88012 100644 --- a/lisp/dnd.el +++ b/lisp/dnd.el @@ -35,10 +35,10 @@ ;;;###autoload (defcustom dnd-protocol-alist - '(("^file:///" . dnd-open-local-file) ; XDND format. - ("^file://" . dnd-open-file) ; URL with host - ("^file:" . dnd-open-local-file) ; Old KDE, Motif, Sun - ("^\\(https?\\|ftp\\|file\\|nfs\\)://" . dnd-open-file) + `((,(purecopy "^file:///") . dnd-open-local-file) ; XDND format. + (,(purecopy "^file://") . dnd-open-file) ; URL with host + (,(purecopy "^file:") . dnd-open-local-file) ; Old KDE, Motif, Sun + (,(purecopy "^\\(https?\\|ftp\\|file\\|nfs\\)://") . dnd-open-file) ) "The functions to call for different protocols when a drop is made. diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el index af3150ffe60..62975407aa4 100644 --- a/lisp/emacs-lisp/byte-run.el +++ b/lisp/emacs-lisp/byte-run.el @@ -224,7 +224,7 @@ obsolete." `(progn (put ,obsolete-face 'face-alias ,current-face) ;; Used by M-x describe-face. - (put ,obsolete-face 'obsolete-face (or ,when t)))) + (put ,obsolete-face 'obsolete-face (or (purecopy ,when) t)))) (defmacro dont-compile (&rest body) "Like `progn', but the body always runs interpreted (not compiled). diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index f4f2f621664..1a837dc200d 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el @@ -348,7 +348,7 @@ font-lock keywords will not be case sensitive." (define-key menu-map [edebug-defun] `(menu-item ,(purecopy "Instrument Function for Debugging") edebug-defun :help ,(purecopy "Evaluate the top level form point is in, stepping through with Edebug") - :keys "C-u C-M-x")) + :keys ,(purecopy "C-u C-M-x"))) (define-key menu-map [separator-byte] '("--")) (define-key menu-map [disas] `(menu-item ,(purecopy "Disassemble byte compiled object...") disassemble @@ -530,7 +530,7 @@ if that value is non-nil." (define-key menu-map [edebug-defun-lisp-interaction] `(menu-item ,(purecopy "Instrument Function for Debugging") edebug-defun :help ,(purecopy "Evaluate the top level form point is in, stepping through with Edebug") - :keys "C-u C-M-x")) + :keys ,(purecopy "C-u C-M-x"))) (define-key menu-map [indent-pp-sexp] `(menu-item ,(purecopy "Indent or Pretty-Print") indent-pp-sexp :help ,(purecopy "Indent each line of the list starting just after point, or prettyprint it"))) diff --git a/lisp/emacs-lisp/trace.el b/lisp/emacs-lisp/trace.el index 40c3e138264..32073adb7b4 100644 --- a/lisp/emacs-lisp/trace.el +++ b/lisp/emacs-lisp/trace.el @@ -160,7 +160,7 @@ :group 'lisp) ;;;###autoload -(defcustom trace-buffer "*trace-output*" +(defcustom trace-buffer (purecopy "*trace-output*") "Trace output will by default go to that buffer." :type 'string :group 'trace) diff --git a/lisp/emacs-lisp/warnings.el b/lisp/emacs-lisp/warnings.el index 2a88c1ce5ec..fcf5e745542 100644 --- a/lisp/emacs-lisp/warnings.el +++ b/lisp/emacs-lisp/warnings.el @@ -157,7 +157,7 @@ also call that function before the next warning.") ;;; safely, testing the existing value, before they call one of the ;;; warnings functions. ;;;###autoload -(defvar warning-type-format " (%s)" +(defvar warning-type-format (purecopy " (%s)") "Format for displaying the warning type in the warning message. The result of formatting the type this way gets included in the message under the control of the string in `warning-levels'.") diff --git a/lisp/epa-hook.el b/lisp/epa-hook.el index 0987b2a221d..e8ba17eab51 100644 --- a/lisp/epa-hook.el +++ b/lisp/epa-hook.el @@ -31,7 +31,7 @@ (if (fboundp 'epa-file-name-regexp-update) (epa-file-name-regexp-update))) -(defcustom epa-file-name-regexp "\\.gpg\\(~\\|\\.~[0-9]+~\\)?\\'" +(defcustom epa-file-name-regexp (purecopy "\\.gpg\\(~\\|\\.~[0-9]+~\\)?\\'") "Regexp which matches filenames to be encrypted with GnuPG. If you set this outside Custom while epa-file is already enabled, you diff --git a/lisp/facemenu.el b/lisp/facemenu.el index 389fbf804e0..130dd4855a0 100644 --- a/lisp/facemenu.el +++ b/lisp/facemenu.el @@ -163,7 +163,7 @@ it will remove any faces not explicitly in the list." (defvar facemenu-face-menu (let ((map (make-sparse-keymap "Face"))) - (define-key map "o" (cons "Other..." 'facemenu-set-face)) + (define-key map "o" (cons (purecopy "Other...") 'facemenu-set-face)) map) "Menu keymap for faces.") (defalias 'facemenu-face-menu facemenu-face-menu) @@ -171,7 +171,7 @@ it will remove any faces not explicitly in the list." (defvar facemenu-foreground-menu (let ((map (make-sparse-keymap "Foreground Color"))) - (define-key map "o" (cons "Other..." 'facemenu-set-foreground)) + (define-key map "o" (cons (purecopy "Other...") 'facemenu-set-foreground)) map) "Menu keymap for foreground colors.") (defalias 'facemenu-foreground-menu facemenu-foreground-menu) @@ -179,7 +179,7 @@ it will remove any faces not explicitly in the list." (defvar facemenu-background-menu (let ((map (make-sparse-keymap "Background Color"))) - (define-key map "o" (cons "Other..." 'facemenu-set-background)) + (define-key map "o" (cons (purecopy "Other...") 'facemenu-set-background)) map) "Menu keymap for background colors.") (defalias 'facemenu-background-menu facemenu-background-menu) @@ -674,11 +674,11 @@ This is called whenever you create a new face, and at other times." symbol (intern name))) (setq menu 'facemenu-face-menu) (setq docstring - (format "Select face `%s' for subsequent insertion. + (purecopy (format "Select face `%s' for subsequent insertion. If the mark is active and there is no prefix argument, apply face `%s' to the region instead. This command was defined by `facemenu-add-new-face'." - name name)) + name name))) (cond ((facemenu-iterate ; check if equivalent face is already in the menu (lambda (m) (and (listp m) (symbolp (car m)) diff --git a/lisp/faces.el b/lisp/faces.el index 9904cf674f0..ebdca457177 100644 --- a/lisp/faces.el +++ b/lisp/faces.el @@ -70,10 +70,11 @@ a font height that isn't optimal." ;; unavailable, and we fall back on the courier and helv families, ;; which are generally available. (defcustom face-font-family-alternatives + (mapcar (lambda (arg) (mapcar 'purecopy arg)) '(("Monospace" "courier" "fixed") ("courier" "CMU Typewriter Text" "fixed") ("Sans Serif" "helv" "helvetica" "arial" "fixed") - ("helv" "helvetica" "arial" "fixed")) + ("helv" "helvetica" "arial" "fixed"))) "Alist of alternative font family names. Each element has the form (FAMILY ALTERNATIVE1 ALTERNATIVE2 ...). If fonts of family FAMILY can't be loaded, try ALTERNATIVE1, then @@ -88,6 +89,7 @@ ALTERNATIVE2 etc." ;; This is defined originally in xfaces.c. (defcustom face-font-registry-alternatives + (mapcar (lambda (arg) (mapcar 'purecopy arg)) (if (eq system-type 'windows-nt) '(("iso8859-1" "ms-oemlatin") ("gb2312.1980" "gb2312" "gbk" "gb18030") @@ -97,7 +99,7 @@ ALTERNATIVE2 etc." '(("gb2312.1980" "gb2312.80&gb8565.88" "gbk" "gb18030") ("jisx0208.1990" "jisx0208.1983" "jisx0208.1978") ("ksc5601.1989" "ksx1001.1992" "ksc5601.1987") - ("muletibetan-2" "muletibetan-0"))) + ("muletibetan-2" "muletibetan-0")))) "Alist of alternative font registry names. Each element has the form (REGISTRY ALTERNATIVE1 ALTERNATIVE2 ...). If fonts of registry REGISTRY can be loaded, font selection @@ -284,6 +286,11 @@ If FRAME is omitted or nil, use the selected frame." ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defcustom face-x-resources + (mapcar + (lambda (arg) + ;; FIXME; can we purecopy some of the conses too? + (cons (car arg) + (cons (purecopy (car (cdr arg))) (purecopy (cdr (cdr arg)))))) '((:family (".attributeFamily" . "Face.AttributeFamily")) (:foundry (".attributeFoundry" . "Face.AttributeFoundry")) (:width (".attributeWidth" . "Face.AttributeWidth")) @@ -303,7 +310,7 @@ If FRAME is omitted or nil, use the selected frame." (:bold (".attributeBold" . "Face.AttributeBold")) (:italic (".attributeItalic" . "Face.AttributeItalic")) (:font (".attributeFont" . "Face.AttributeFont")) - (:inherit (".attributeInherit" . "Face.AttributeInherit"))) + (:inherit (".attributeInherit" . "Face.AttributeInherit")))) "List of X resources and classes for face attributes. Each element has the form (ATTRIBUTE ENTRY1 ENTRY2...) where ATTRIBUTE is the name of a face attribute, and each ENTRY is a cons of the form @@ -2578,16 +2585,16 @@ Note: Other faces cannot inherit from the cursor face." (encoding "[^-]+") ) (setq x-font-regexp - (concat "\\`\\*?[-?*]" + (purecopy (concat "\\`\\*?[-?*]" foundry - family - weight\? - slant\? - swidth - adstyle - pixelsize - pointsize - resx - resy - spacing - avgwidth - registry - encoding "\\*?\\'" - )) + ))) (setq x-font-regexp-head - (concat "\\`[-?*]" foundry - family - weight\? - slant\? - "\\([-*?]\\|\\'\\)")) - (setq x-font-regexp-slant (concat - slant -)) - (setq x-font-regexp-weight (concat - weight -)) + (purecopy (concat "\\`[-?*]" foundry - family - weight\? - slant\? + "\\([-*?]\\|\\'\\)"))) + (setq x-font-regexp-slant (purecopy (concat - slant -))) + (setq x-font-regexp-weight (purecopy (concat - weight -))) nil) diff --git a/lisp/files.el b/lisp/files.el index 11249a4cd36..8c26b0bbfaf 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -1567,7 +1567,7 @@ Spaces at the start of FILENAME (sans directory) are removed." Choose the buffer's name using `generate-new-buffer-name'." (get-buffer-create (generate-new-buffer-name name))) -(defcustom automount-dir-prefix "^/tmp_mnt/" +(defcustom automount-dir-prefix (purecopy "^/tmp_mnt/") "Regexp to match the automounter prefix in a directory name." :group 'files :type 'regexp) @@ -2415,8 +2415,8 @@ When checking `inhibit-first-line-modes-regexps', we first discard from the end of the file name anything that matches one of these regexps.") (defvar auto-mode-interpreter-regexp - "#![ \t]?\\([^ \t\n]*\ -/bin/env[ \t]\\)?\\([^ \t\n]+\\)" + (purecopy "#![ \t]?\\([^ \t\n]*\ +/bin/env[ \t]\\)?\\([^ \t\n]+\\)") "Regexp matching interpreters, for file mode determination. This regular expression is matched against the first line of a file to determine the file's mode in `set-auto-mode'. If it matches, the file @@ -2437,6 +2437,7 @@ If FUNCTION is nil, then it is not called. (That is a way of saying (put 'magic-mode-alist 'risky-local-variable t) (defvar magic-fallback-mode-alist + (purecopy `((image-type-auto-detected-p . image-mode) ("\\(PK00\\)?[P]K\003\004" . archive-mode) ; zip ;; The < comes before the groups (but the first) to reduce backtracking. @@ -2457,7 +2458,7 @@ If FUNCTION is nil, then it is not called. (That is a way of saying (concat "[ \t\r\n]*<" comment-re "*!DOCTYPE ")) . sgml-mode) ("%!PS" . ps-mode) - ("# xmcd " . conf-unix-mode)) + ("# xmcd " . conf-unix-mode))) "Like `magic-mode-alist' but has lower priority than `auto-mode-alist'. Each element looks like (REGEXP . FUNCTION) or (MATCH-FUNCTION . FUNCTION). After visiting a file, if REGEXP matches the text at the beginning of the @@ -5333,13 +5334,13 @@ by `sh' are supported." (concat "\\`" result "\\'"))) (defcustom list-directory-brief-switches - "-CF" + (purecopy "-CF") "Switches for `list-directory' to pass to `ls' for brief listing." :type 'string :group 'dired) (defcustom list-directory-verbose-switches - "-l" + (purecopy "-l") "Switches for `list-directory' to pass to `ls' for verbose listing." :type 'string :group 'dired) @@ -5469,10 +5470,10 @@ need to be passed verbatim to shell commands." pattern)))) -(defvar insert-directory-program "ls" +(defvar insert-directory-program (purecopy "ls") "Absolute or relative name of the `ls' program used by `insert-directory'.") -(defcustom directory-free-space-program "df" +(defcustom directory-free-space-program (purecopy "df") "Program to get the amount of free space on a file system. We assume the output has the format of `df'. The value of this variable must be just a command name or file name; @@ -5486,7 +5487,7 @@ preference to the program given by this variable." :group 'dired) (defcustom directory-free-space-args - (if (eq system-type 'darwin) "-k" "-Pk") + (purecopy (if (eq system-type 'darwin) "-k" "-Pk")) "Options to use when running `directory-free-space-program'." :type 'string :group 'dired) @@ -5577,9 +5578,9 @@ program specified by `directory-free-space-program' if that is non-nil." ;; parantheses: ;; -rw-r--r-- (modified) 2005-10-22 21:25 files.el ;; This is not supported yet. - (concat ".*[0-9][BkKMGTPEZY]?" s + (purecopy (concat ".*[0-9][BkKMGTPEZY]?" s "\\(" western "\\|" western-comma "\\|" east-asian "\\|" iso "\\)" - s "+")) + s "+"))) "Regular expression to match up to the file name in a directory listing. The default value is designed to recognize dates and times regardless of the language.") diff --git a/lisp/find-dired.el b/lisp/find-dired.el index 3becbcb7c84..12590c08740 100644 --- a/lisp/find-dired.el +++ b/lisp/find-dired.el @@ -38,8 +38,8 @@ ;; Note -b, at least GNU find quotes spaces etc. in filenames ;;;###autoload (defcustom find-ls-option - (if (eq system-type 'berkeley-unix) '("-ls" . "-gilsb") - '("-exec ls -ld {} \\;" . "-ld")) + (if (eq system-type 'berkeley-unix) (purecopy '("-ls" . "-gilsb")) + (purecopy '("-exec ls -ld {} \\;" . "-ld"))) "Description of the option to `find' to produce an `ls -l'-type listing. This is a cons of two strings (FIND-OPTION . LS-SWITCHES). FIND-OPTION gives the option (or options) to `find' that produce the desired output. diff --git a/lisp/image-file.el b/lisp/image-file.el index 63f156907f8..a27233e3392 100644 --- a/lisp/image-file.el +++ b/lisp/image-file.el @@ -37,7 +37,7 @@ ;;;###autoload (defcustom image-file-name-extensions - '("png" "jpeg" "jpg" "gif" "tiff" "tif" "xbm" "xpm" "pbm" "pgm" "ppm" "pnm" "svg") + (purecopy '("png" "jpeg" "jpg" "gif" "tiff" "tif" "xbm" "xpm" "pbm" "pgm" "ppm" "pnm" "svg")) "A list of image-file filename extensions. Filenames having one of these extensions are considered image files, in addition to those matching `image-file-name-regexps'. diff --git a/lisp/international/fontset.el b/lisp/international/fontset.el index 87ea17805cb..9b4a5d59ed4 100644 --- a/lisp/international/fontset.el +++ b/lisp/international/fontset.el @@ -796,15 +796,15 @@ Internal use only. Should be called at startup time." ;; Setting for suppressing XLoadQueryFont on big fonts. (setq x-pixel-size-width-font-regexp - "gb2312\\|gbk\\|gb18030\\|jisx0208\\|ksc5601\\|cns11643\\|big5") + (purecopy "gb2312\\|gbk\\|gb18030\\|jisx0208\\|ksc5601\\|cns11643\\|big5")) ;; These fonts require vertical centering. (setq vertical-centering-font-regexp - "gb2312\\|gbk\\|gb18030\\|jisx0208\\|jisx0212\\|ksc5601\\|cns11643\\|big5") + (purecopy "gb2312\\|gbk\\|gb18030\\|jisx0208\\|jisx0212\\|ksc5601\\|cns11643\\|big5")) ;; CDAC fonts are actually smaller than their design sizes. (setq face-font-rescale-alist - '(("-cdac$" . 1.3))) + (list (cons (purecopy "-cdac$") 1.3))) (defvar x-font-name-charset-alist nil "This variable has no meaning now. Just kept for backward compatibility.") diff --git a/lisp/international/latexenc.el b/lisp/international/latexenc.el index bd8d5748a1c..7adca285fa3 100644 --- a/lisp/international/latexenc.el +++ b/lisp/international/latexenc.el @@ -51,6 +51,7 @@ ;;;###autoload (defcustom latex-inputenc-coding-alist + (purecopy '(("ansinew" . windows-1252) ; MS Windows ANSI encoding, extension of Latin-1 ("applemac" . mac-roman) ("ascii" . us-ascii) @@ -73,7 +74,7 @@ ;; ("macce" . undecided) ; Apple Central European ("next" . next) ; The Next encoding ("utf8" . utf-8) - ("utf8x" . utf-8)) ; used by the Unicode LaTeX package + ("utf8x" . utf-8))) ; used by the Unicode LaTeX package "Mapping from LaTeX encodings in \"inputenc.sty\" to Emacs coding systems. LaTeX encodings are specified with \"\\usepackage[encoding]{inputenc}\". Used by the function `latexenc-find-file-coding-system'." diff --git a/lisp/international/mule-conf.el b/lisp/international/mule-conf.el index 9b231015529..8805d5c17aa 100644 --- a/lisp/international/mule-conf.el +++ b/lisp/international/mule-conf.el @@ -109,8 +109,8 @@ (put-charset-property 'emacs :long-name "Emacs") -(put-charset-property 'eight-bit :docstring (purecopy "Raw bytes 128-255")) -(put-charset-property 'eight-bit :short-name (purecopy "Raw bytes")) +(put-charset-property 'eight-bit :docstring "Raw bytes 128-255") +(put-charset-property 'eight-bit :short-name "Raw bytes") (define-charset-alias 'ucs 'unicode) diff --git a/lisp/isearch.el b/lisp/isearch.el index 95e45c7e58e..7505d3e4d32 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -109,7 +109,7 @@ string, and RET terminates editing and does a nonincremental search." :type 'boolean :group 'isearch) -(defcustom search-whitespace-regexp "\\s-+" +(defcustom search-whitespace-regexp (purecopy "\\s-+") "If non-nil, regular expression to match a sequence of whitespace chars. This applies to regular expression incremental search. When you put a space or spaces in the incremental regexp, it stands for diff --git a/lisp/jka-cmpr-hook.el b/lisp/jka-cmpr-hook.el index fa2fd40e43f..fab5c6ba925 100644 --- a/lisp/jka-cmpr-hook.el +++ b/lisp/jka-cmpr-hook.el @@ -195,6 +195,7 @@ options through Custom does this automatically." ;; compr-message compr-prog compr-args ;; uncomp-message uncomp-prog uncomp-args ;; can-append strip-extension-flag file-magic-bytes] + (mapcar 'purecopy '(["\\.Z\\(~\\|\\.~[0-9]+~\\)?\\'" "compressing" "compress" ("-c") ;; gzip is more common than uncompress. It can only read, not write. @@ -229,7 +230,7 @@ options through Custom does this automatically." ["\\.dz\\'" nil nil nil "uncompressing" "gzip" ("-c" "-q" "-d") - nil t "\037\213"]) + nil t "\037\213"])) "List of vectors that describe available compression techniques. Each element, which describes a compression technique, is a vector of @@ -290,7 +291,7 @@ variables. Setting this through Custom does that automatically." :group 'jka-compr) (defcustom jka-compr-mode-alist-additions - (list (cons "\\.tgz\\'" 'tar-mode) (cons "\\.tbz2?\\'" 'tar-mode)) + (list (cons (purecopy "\\.tgz\\'") 'tar-mode) (cons (purecopy "\\.tbz2?\\'") 'tar-mode)) "List of pairs added to `auto-mode-alist' when installing jka-compr. Uninstalling jka-compr removes all pairs from `auto-mode-alist' that installing added. @@ -303,7 +304,7 @@ variables. Setting this through Custom does that automatically." :set 'jka-compr-set :group 'jka-compr) -(defcustom jka-compr-load-suffixes '(".gz") +(defcustom jka-compr-load-suffixes (list (purecopy ".gz")) "List of compression related suffixes to try when loading files. Enabling Auto Compression mode appends this list to `load-file-rep-suffixes', which see. Disabling Auto Compression mode removes all suffixes diff --git a/lisp/mail/sendmail.el b/lisp/mail/sendmail.el index 9a55f4051ad..34d5f4af7a5 100644 --- a/lisp/mail/sendmail.el +++ b/lisp/mail/sendmail.el @@ -284,7 +284,7 @@ This enables the hook functions to see the whole message header regardless of what part of it (if any) is included in the cited text.") ;;;###autoload -(defcustom mail-citation-prefix-regexp "[ \t]*[-a-z0-9A-Z]*>+[ \t]*\\|[ \t]*" +(defcustom mail-citation-prefix-regexp (purecopy "[ \t]*[-a-z0-9A-Z]*>+[ \t]*\\|[ \t]*") "Regular expression to match a citation prefix plus whitespace. It should match whatever sort of citation prefixes you want to handle, with whitespace before and after; it should also match just whitespace. @@ -409,13 +409,13 @@ and should insert whatever you want to insert." (put 'mail-signature 'risky-local-variable t) ;;;###autoload -(defcustom mail-signature-file "~/.signature" +(defcustom mail-signature-file (purecopy "~/.signature") "File containing the text inserted at end of mail buffer." :type 'file :group 'sendmail) ;;;###autoload -(defcustom mail-default-directory "~/" +(defcustom mail-default-directory (purecopy "~/") "Directory for mail buffers. Value of `default-directory' for mail buffers. This directory is used for auto-save files of mail buffers." diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index bae181c02e3..fbcf75a3299 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el @@ -1283,11 +1283,11 @@ mail status in mode line")) (define-key menu-bar-tools-menu [directory-search] `(menu-item ,(purecopy "Directory Search") eudc-tools-menu)) (define-key menu-bar-tools-menu [compose-mail] - `(menu-item (format "Send Mail (with %s)" (send-mail-item-name)) compose-mail + `(menu-item ,(purecopy (format "Send Mail (with %s)" (send-mail-item-name))) compose-mail :visible (and mail-user-agent (not (eq mail-user-agent 'ignore))) :help ,(purecopy "Send a mail message"))) (define-key menu-bar-tools-menu [rmail] - `(menu-item (format "Read Mail (with %s)" (read-mail-item-name)) menu-bar-read-mail + `(menu-item ,(purecopy (format "Read Mail (with %s)" (read-mail-item-name))) menu-bar-read-mail :visible (and read-mail-command (not (eq read-mail-command 'ignore))) :help ,(purecopy "Read your mail and reply to it"))) @@ -1894,7 +1894,7 @@ Buffers menu is regenerated." :help ,(purecopy "Abort input and exit minibuffer"))) (define-key map [menu-bar minibuf return] `(menu-item ,(purecopy "Enter") exit-minibuffer - :key-sequence "\r" + :key-sequence ,(purecopy "\r") :help ,(purecopy "Terminate input and exit minibuffer"))) (define-key map [menu-bar minibuf isearch-forward] `(menu-item ,(purecopy "Isearch History Forward") isearch-forward diff --git a/lisp/mouse.el b/lisp/mouse.el index ccf8fb77e09..943f53c781d 100644 --- a/lisp/mouse.el +++ b/lisp/mouse.el @@ -2573,7 +2573,7 @@ choose a font." (global-set-key [S-down-mouse-1] 'mouse-appearance-menu)) ;; C-down-mouse-2 is bound in facemenu.el. (global-set-key [C-down-mouse-3] - '(menu-item "Menu Bar" ignore + `(menu-item ,(purecopy "Menu Bar") ignore :filter (lambda (_) (if (zerop (or (frame-parameter nil 'menu-bar-lines) 0)) (mouse-menu-bar-map) diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el index 2f8304771cd..20311f6d4ce 100644 --- a/lisp/net/browse-url.el +++ b/lisp/net/browse-url.el @@ -313,7 +313,7 @@ Defaults to the value of `browse-url-mozilla-arguments' at the time :group 'browse-url) ;;;###autoload -(defcustom browse-url-firefox-program "firefox" +(defcustom browse-url-firefox-program (purecopy "firefox") "The name by which to invoke Firefox." :type 'string :group 'browse-url) @@ -331,7 +331,7 @@ Defaults to the value of `browse-url-firefox-arguments' at the time :group 'browse-url) ;;;###autoload -(defcustom browse-url-galeon-program "galeon" +(defcustom browse-url-galeon-program (purecopy "galeon") "The name by which to invoke Galeon." :type 'string :group 'browse-url) diff --git a/lisp/paths.el b/lisp/paths.el index ea10762a3aa..7af0136a478 100644 --- a/lisp/paths.el +++ b/lisp/paths.el @@ -102,23 +102,24 @@ for initializing `Info-directory-list' when Info is started, unless the environment variable INFOPATH is set.") (defvar news-directory - (if (file-exists-p "/usr/spool/news/") + (purecopy (if (file-exists-p "/usr/spool/news/") "/usr/spool/news/" - "/var/spool/news/") + "/var/spool/news/")) "The root directory below which all news files are stored.") (defvaralias 'news-path 'news-directory) (defvar news-inews-program + (purecopy (cond ((file-exists-p "/usr/bin/inews") "/usr/bin/inews") ((file-exists-p "/usr/local/inews") "/usr/local/inews") ((file-exists-p "/usr/local/bin/inews") "/usr/local/bin/inews") ((file-exists-p "/usr/contrib/lib/news/inews") "/usr/contrib/lib/news/inews") ((file-exists-p "/usr/lib/news/inews") "/usr/lib/news/inews") - (t "inews")) + (t "inews"))) "Program to post news.") ;; set this to your local server -(defvar gnus-default-nntp-server "" "\ +(defvar gnus-default-nntp-server (purecopy "") "\ The name of the host running an NNTP server. The null string means use the local host as the server site.") @@ -154,6 +155,7 @@ Name of user's primary mail file." Its name should end with a slash.") (defcustom remote-shell-program + (purecopy (cond ;; Some systems use rsh for the remote shell; others use that name for the ;; restricted shell and use remsh for the remote shell. Let's try to guess @@ -173,7 +175,7 @@ Its name should end with a slash.") ((file-exists-p "/bin/rcmd") "/bin/rcmd") ((file-exists-p "/bin/rsh") "/bin/rsh") ((file-exists-p "/usr/bin/rsh") "/usr/bin/rsh") - (t "rsh")) + (t "rsh"))) "File name for remote-shell program (often rsh or remsh)." :group 'environment :type 'file) diff --git a/lisp/progmodes/etags.el b/lisp/progmodes/etags.el index 015a2619d07..f3c37916330 100644 --- a/lisp/progmodes/etags.el +++ b/lisp/progmodes/etags.el @@ -39,7 +39,7 @@ To switch to a new tags table, setting this variable is sufficient. If you set this variable, do not also set `tags-table-list'. Use the `etags' program to make a tags table file.") ;; Make M-x set-variable tags-file-name like M-x visit-tags-table. -;;;###autoload (put 'tags-file-name 'variable-interactive "fVisit tags table: ") +;;;###autoload (put 'tags-file-name 'variable-interactive (purecopy "fVisit tags table: ")) (defgroup etags nil "Tags tables." :group 'tools) @@ -67,7 +67,7 @@ Use the `etags' program to make a tags table file." :type '(repeat file)) ;;;###autoload -(defcustom tags-compression-info-list '("" ".Z" ".bz2" ".gz" ".tgz") +(defcustom tags-compression-info-list (purecopy '("" ".Z" ".bz2" ".gz" ".tgz")) "*List of extensions tried by etags when jka-compr is used. An empty string means search the non-compressed file. These extensions will be tried only if jka-compr was activated diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index ce54d2a0873..eff599c77a5 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@ -83,9 +83,9 @@ :link '(emacs-commentary-link "python")) ;;;###autoload -(add-to-list 'interpreter-mode-alist '("jython" . jython-mode)) +(add-to-list 'interpreter-mode-alist (cons (purecopy "jython") 'jython-mode)) ;;;###autoload -(add-to-list 'interpreter-mode-alist '("python" . python-mode)) +(add-to-list 'interpreter-mode-alist (cons (purecopy "python") 'python-mode)) ;;;###autoload (add-to-list 'auto-mode-alist (cons (purecopy "\\.py\\'") 'python-mode)) (add-to-list 'same-window-buffer-names (purecopy "*Python*")) diff --git a/lisp/rfn-eshadow.el b/lisp/rfn-eshadow.el index 5788ab7447b..6d4f1673c81 100644 --- a/lisp/rfn-eshadow.el +++ b/lisp/rfn-eshadow.el @@ -92,7 +92,8 @@ (sexp :tag "Value"))))) (defcustom file-name-shadow-properties - '(face file-name-shadow field shadow) + ;; FIXME: should we purecopy this? +'(face file-name-shadow field shadow) "Properties given to the `shadowed' part of a filename in the minibuffer. Only used when `file-name-shadow-mode' is active. If Emacs is not running under a window system, @@ -102,7 +103,7 @@ If Emacs is not running under a window system, :version "22.1") (defcustom file-name-shadow-tty-properties - '(before-string "{" after-string "} " field shadow) + (purecopy '(before-string "{" after-string "} " field shadow)) "Properties given to the `shadowed' part of a filename in the minibuffer. Only used when `file-name-shadow-mode' is active and Emacs is not running under a window-system; if Emacs is running under a window diff --git a/lisp/shell.el b/lisp/shell.el index df5dee2618b..0f7eca3557e 100644 --- a/lisp/shell.el +++ b/lisp/shell.el @@ -115,7 +115,7 @@ :group 'shell) ;;;###autoload -(defcustom shell-dumb-shell-regexp "cmd\\(proxy\\)?\\.exe" +(defcustom shell-dumb-shell-regexp (purecopy "cmd\\(proxy\\)?\\.exe") "Regexp to match shells that don't save their command history, and don't handle the backslash as a quote character. For shells that match this regexp, Emacs will write out the command history when the diff --git a/lisp/startup.el b/lisp/startup.el index 3c070f4e954..1efab6218c0 100644 --- a/lisp/startup.el +++ b/lisp/startup.el @@ -305,7 +305,7 @@ looked for. Setting `init-file-user' does not prevent Emacs from loading `site-start.el'. The only way to do that is to use `--no-site-file'.") -(defcustom site-run-file "site-start" +(defcustom site-run-file (purecopy "site-start") "File containing site-wide run-time initializations. This file is loaded at run-time before `~/.emacs'. It contains inits that need to be in place for the entire site, but which, due to their @@ -327,7 +327,7 @@ this variable usefully is to set it while building and dumping Emacs." :type '(choice (const :tag "none" nil) string) :group 'initialization :initialize 'custom-initialize-default - :set '(lambda (variable value) + :set (lambda (variable value) (error "Customizing `site-run-file' does not work"))) (defcustom mail-host-address nil diff --git a/lisp/textmodes/dns-mode.el b/lisp/textmodes/dns-mode.el index beab676e307..d5e259e5f98 100644 --- a/lisp/textmodes/dns-mode.el +++ b/lisp/textmodes/dns-mode.el @@ -222,7 +222,7 @@ This function is run from `before-save-hook'." ;; We return nil in case this is used in write-contents-functions. nil))) -;;;###autoload(add-to-list 'auto-mode-alist '("\\.soa\\'" . dns-mode)) +;;;###autoload(add-to-list 'auto-mode-alist (purecopy '("\\.soa\\'" . dns-mode))) (provide 'dns-mode) diff --git a/lisp/textmodes/fill.el b/lisp/textmodes/fill.el index 26dec949e90..3d0fbae9693 100644 --- a/lisp/textmodes/fill.el +++ b/lisp/textmodes/fill.el @@ -92,7 +92,7 @@ reinserts the fill prefix in each resulting line." ;; Added `!' for doxygen comments starting with `//!' or `/*!'. ;; Added `%' for TeX comments. ;; RMS: deleted the code to match `1.' and `(1)'. - "[ \t]*\\([-!|#%;>*·•‣⁃◦]+[ \t]*\\)*" + (purecopy "[ \t]*\\([-!|#%;>*·•‣⁃◦]+[ \t]*\\)*") "Regexp to match text at start of line that constitutes indentation. If Adaptive Fill mode is enabled, a prefix matching this pattern on the first and second lines of a paragraph is used as the @@ -104,7 +104,7 @@ a role." :type 'regexp :group 'fill) -(defcustom adaptive-fill-first-line-regexp "\\`[ \t]*\\'" +(defcustom adaptive-fill-first-line-regexp (purecopy "\\`[ \t]*\\'") "Regexp specifying whether to set fill prefix from a one-line paragraph. When a paragraph has just one line, then after `adaptive-fill-regexp' finds the prefix at the beginning of the line, if it doesn't diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el index 5005d70d2bc..75cc8e0de47 100644 --- a/lisp/textmodes/ispell.el +++ b/lisp/textmodes/ispell.el @@ -1429,6 +1429,7 @@ Valid forms include: ;;;###autoload (defvar ispell-tex-skip-alists + (purecopy '((;;("%\\[" . "%\\]") ; AMStex block comment... ;; All the standard LaTeX keywords from L. Lamport's guide: ;; \cite, \hspace, \hspace*, \hyphenation, \include, \includeonly, \input, @@ -1447,7 +1448,7 @@ Valid forms include: ("\\(figure\\|table\\)\\*?" ispell-tex-arg-end 0) ("list" ispell-tex-arg-end 2) ("program" . "\\\\end[ \t\n]*{[ \t\n]*program[ \t\n]*}") - ("verbatim\\*?" . "\\\\end[ \t\n]*{[ \t\n]*verbatim\\*?[ \t\n]*}"))) + ("verbatim\\*?" . "\\\\end[ \t\n]*{[ \t\n]*verbatim\\*?[ \t\n]*}")))) "*Lists of regions to be skipped in TeX mode. First list is used raw. Second list has key placed inside \\begin{}. @@ -1458,7 +1459,7 @@ for skipping in latex mode.") ;;;###autoload -(defvar ispell-html-skip-alists +(defconst ispell-html-skip-alists '(("<[cC][oO][dD][eE]\\>[^>]*>" "") ("<[sS][cC][rR][iI][pP][tT]\\>[^>]*>" "") ("<[aA][pP][pP][lL][eE][tT]\\>[^>]*>" "") diff --git a/lisp/textmodes/rst.el b/lisp/textmodes/rst.el index d24bcf7e2b4..f94ba6949bf 100644 --- a/lisp/textmodes/rst.el +++ b/lisp/textmodes/rst.el @@ -363,7 +363,7 @@ The value of this variable is used when Rst mode is turned on." ;; Use rst-mode for *.rst and *.rest files. Many ReStructured-Text files ;; use *.txt, but this is too generic to be set as a default. -;;;###autoload (add-to-list 'auto-mode-alist '("\\.re?st\\'" . rst-mode)) +;;;###autoload (add-to-list 'auto-mode-alist (purecopy '("\\.re?st\\'" . rst-mode))) ;;;###autoload (define-derived-mode rst-mode text-mode "ReST" "Major mode for editing reStructuredText documents. diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el index 40d26ee380e..9f7ff975e56 100644 --- a/lisp/textmodes/tex-mode.el +++ b/lisp/textmodes/tex-mode.el @@ -64,7 +64,7 @@ :group 'tex-run) ;;;###autoload -(defcustom tex-directory "." +(defcustom tex-directory (purecopy ".") "*Directory in which temporary files are written. You can make this `/tmp' if your TEXINPUTS has no relative directories in it and you don't try to apply \\[tex-region] or \\[tex-buffer] when there are @@ -98,7 +98,7 @@ if the variable is non-nil." :group 'tex-file) ;;;###autoload -(defcustom tex-run-command "tex" +(defcustom tex-run-command (purecopy "tex") "*Command used to run TeX subjob. TeX Mode sets `tex-command' to this string. See the documentation of that variable." @@ -106,7 +106,7 @@ See the documentation of that variable." :group 'tex-run) ;;;###autoload -(defcustom latex-run-command "latex" +(defcustom latex-run-command (purecopy "latex") "*Command used to run LaTeX subjob. LaTeX Mode sets `tex-command' to this string. See the documentation of that variable." @@ -114,7 +114,7 @@ See the documentation of that variable." :group 'tex-run) ;;;###autoload -(defcustom slitex-run-command "slitex" +(defcustom slitex-run-command (purecopy "slitex") "*Command used to run SliTeX subjob. SliTeX Mode sets `tex-command' to this string. See the documentation of that variable." @@ -122,7 +122,7 @@ See the documentation of that variable." :group 'tex-run) ;;;###autoload -(defcustom tex-start-options "" +(defcustom tex-start-options (purecopy "") "*TeX options to use when starting TeX. These immediately precede the commands in `tex-start-commands' and the input file name, with no separating space and are not shell-quoted. @@ -132,7 +132,7 @@ If nil, TeX runs with no options. See the documentation of `tex-command'." :version "22.1") ;;;###autoload -(defcustom tex-start-commands "\\nonstopmode\\input" +(defcustom tex-start-commands (purecopy "\\nonstopmode\\input") "*TeX commands to use when starting TeX. They are shell-quoted and precede the input file name, with a separating space. If nil, no commands are used. See the documentation of `tex-command'." @@ -163,7 +163,7 @@ Combined with `latex-standard-block-names' for minibuffer completion." :group 'tex-run) ;;;###autoload -(defcustom tex-bibtex-command "bibtex" +(defcustom tex-bibtex-command (purecopy "bibtex") "*Command used by `tex-bibtex-file' to gather bibliographic data. If this string contains an asterisk (`*'), that is replaced by the file name; otherwise, the file name, preceded by blank, is added at the end." @@ -171,7 +171,7 @@ otherwise, the file name, preceded by blank, is added at the end." :group 'tex-run) ;;;###autoload -(defcustom tex-dvi-print-command "lpr -d" +(defcustom tex-dvi-print-command (purecopy "lpr -d") "*Command used by \\[tex-print] to print a .dvi file. If this string contains an asterisk (`*'), that is replaced by the file name; otherwise, the file name, preceded by blank, is added at the end." @@ -179,7 +179,7 @@ otherwise, the file name, preceded by blank, is added at the end." :group 'tex-view) ;;;###autoload -(defcustom tex-alt-dvi-print-command "lpr -d" +(defcustom tex-alt-dvi-print-command (purecopy "lpr -d") "*Command used by \\[tex-print] with a prefix arg to print a .dvi file. If this string contains an asterisk (`*'), that is replaced by the file name; otherwise, the file name, preceded by blank, is added at the end. diff --git a/lisp/tool-bar.el b/lisp/tool-bar.el index 226b1ddba5c..db517830e8c 100644 --- a/lisp/tool-bar.el +++ b/lisp/tool-bar.el @@ -90,7 +90,7 @@ See `tool-bar-mode' for more information." Define this locally to override the global tool bar.") (global-set-key [tool-bar] - '(menu-item "tool bar" ignore + `(menu-item ,(purecopy "tool bar") ignore :filter tool-bar-make-keymap)) (declare-function image-mask-p "image.c" (spec &optional frame)) diff --git a/lisp/x-dnd.el b/lisp/x-dnd.el index fc593224d24..b75d650416c 100644 --- a/lisp/x-dnd.el +++ b/lisp/x-dnd.el @@ -79,6 +79,7 @@ if drop is successful, nil if not." :group 'x) (defcustom x-dnd-known-types + (mapcar 'purecopy '("text/uri-list" "text/x-moz-url" "_NETSCAPE_URL" @@ -91,7 +92,7 @@ if drop is successful, nil if not." "COMPOUND_TEXT" "STRING" "TEXT" - ) + )) "The types accepted by default for dropped data. The types are chosen in the order they appear in the list." :version "22.1" -- 2.39.2