(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 (purecopy "mouse-2, RET: Push this button"))
+(put 'default-button 'help-echo "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 text-property buttons from
;;;###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")
(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)
;;;###autoload
(defcustom holiday-oriental-holidays
- (mapcar 'purecopy
'((holiday-chinese-new-year)
(if calendar-chinese-all-holidays-flag
(append
(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
;;;###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
;;;###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
(holiday-julian 12 25 "Christmas (Julian calendar)")
(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)
;;;###autoload
(defcustom holiday-islamic-holidays
- (mapcar 'purecopy
'((holiday-islamic-new-year)
(holiday-islamic 9 1 "Ramadan Begins")
(if calendar-islamic-all-holidays-flag
(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)
;;;###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 Báb")
(if calendar-bahai-all-holidays-flag
(append
(holiday-fixed 11 26 "Day of the Covenant")
- (holiday-fixed 11 28 "Ascension of `Abdu’l-Bahá")))))
+ (holiday-fixed 11 28 "Ascension of `Abdu’l-Bahá"))))
"Bahá’í holidays.
See the documentation for `calendar-holidays' for details."
:type 'sexp)
;;;###autoload
(defcustom holiday-solar-holidays
- (mapcar 'purecopy
'((solar-equinoxes-solstices)
(holiday-sexp calendar-daylight-savings-starts
(format "Daylight Saving Time Begins %s"
(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)
:group 'comint-completion)
;;;###autoload
-(defvar comint-file-name-prefix (purecopy "")
+(defvar comint-file-name-prefix ""
"Prefix prepended to absolute file names taken from process input.
This is used by Comint's and shell's completion functions, and by shell's
directory tracking functions.")
;; Allow for bootstrapping without uni-*.el.
(when unicode-category-table
- (let ((elt `([,(purecopy "\\c.\\c^+") 1 compose-gstring-for-graphic]
+ (let ((elt `(["\\c.\\c^+" 1 compose-gstring-for-graphic]
[nil 0 compose-gstring-for-graphic])))
(map-char-table
#'(lambda (key val)
unicode-category-table))
;; for dotted-circle
(aset composition-function-table #x25CC
- `([,(purecopy ".\\c^") 0 compose-gstring-for-dotted-circle]))
+ `([".\\c^" 0 compose-gstring-for-dotted-circle]))
;; For prettier display of fractions
(set-char-table-range
composition-function-table
;; We use font-shape-gstring so that if the font doesn't support
;; fractional display, the characters are shown separately, not as
;; a composed cluster.
- (list (vector (purecopy "[1-9][0-9][0-9]\u2044[0-9]+")
+ (list (vector "[1-9][0-9][0-9]\u2044[0-9]+"
3 'font-shape-gstring)
- (vector (purecopy "[1-9][0-9]\u2044[0-9]+") 2 'font-shape-gstring)
- (vector (purecopy "[1-9]\u2044[0-9]+") 1 'font-shape-gstring))))
+ (vector "[1-9][0-9]\u2044[0-9]+" 2 'font-shape-gstring)
+ (vector "[1-9]\u2044[0-9]+" 1 'font-shape-gstring))))
(defun compose-gstring-for-terminal (gstring _direction)
"Compose glyph-string GSTRING for terminal display.
(not (documentation-stringp doc)))
(error "Invalid (or missing) doc string %S" doc))
(unless (get face 'face-defface-spec)
- (face-spec-set face (purecopy spec) 'face-defface-spec)
+ (face-spec-set face spec 'face-defface-spec)
(push (cons 'defface face) current-load-list)
(when doc
- (set-face-documentation face (purecopy doc)))
+ (set-face-documentation face doc))
(custom-handle-all-keywords face args 'custom-face)
(run-hooks 'custom-define-hook))
face)
DEFAULT is stored as SYMBOL's standard value, in SYMBOL's property
`standard-value'. At the same time, SYMBOL's property `force-value' is
set to nil, as the value is no longer rogue."
- (put symbol 'standard-value (purecopy (list default)))
+ (put symbol 'standard-value (list default))
;; Maybe this option was rogue in an earlier version. It no longer is.
(when (get symbol 'force-value)
(put symbol 'force-value nil))
(when (memq value '(permanent permanent-only))
(put symbol 'permanent-local t)))
((eq keyword :type)
- (put symbol 'custom-type (purecopy value)))
+ (put symbol 'custom-type value))
((eq keyword :options)
(if (get symbol 'custom-options)
;; Slow safe code to avoid duplicates.
(setq members (cdr members)))
(when doc
;; This text doesn't get into DOC.
- (put symbol 'group-documentation (purecopy doc)))
+ (put symbol 'group-documentation doc))
(while args
(let ((arg (car args)))
(setq args (cdr args))
(error "Keyword %s is missing an argument" keyword))
(setq args (cdr args))
(cond ((eq keyword :prefix)
- (put symbol 'custom-prefix (purecopy value)))
+ (put symbol 'custom-prefix value))
(t
(custom-handle-keyword symbol keyword value
'custom-group))))))
(defun custom-handle-keyword (symbol keyword value type)
"For customization option SYMBOL, handle KEYWORD with VALUE.
Fourth argument TYPE is the custom option type."
- (if purify-flag
- (setq value (purecopy value)))
(cond ((eq keyword :group)
(custom-add-to-group value symbol type))
((eq keyword :version)
"To the custom option SYMBOL add the link WIDGET."
(let ((links (get symbol 'custom-links)))
(unless (member widget links)
- (put symbol 'custom-links (cons (purecopy widget) links)))))
+ (put symbol 'custom-links (cons widget links)))))
(defun custom-add-version (symbol version)
"To the custom option SYMBOL add the version VERSION."
- (put symbol 'custom-version (purecopy version)))
+ (put symbol 'custom-version version))
(defun custom-add-package-version (symbol version)
"To the custom option SYMBOL add the package version VERSION."
- (put symbol 'custom-package-version (purecopy version)))
+ (put symbol 'custom-package-version version))
(defun custom-add-load (symbol load)
"To the custom option SYMBOL add the dependency LOAD.
LOAD should be either a library file name, or a feature name."
(let ((loads (get symbol 'custom-loads)))
(unless (member load loads)
- (put symbol 'custom-loads (cons (purecopy load) loads)))))
+ (put symbol 'custom-loads (cons load loads)))))
(defun custom-autoload (symbol load &optional noset)
"Mark SYMBOL as autoloaded custom variable and add dependency LOAD.
:group 'dired)
;;;###autoload
-(defcustom dired-listing-switches (purecopy "-al")
+(defcustom dired-listing-switches "-al"
"Switches passed to `ls' for Dired. MUST contain the `l' option.
May contain all other options that don't contradict `-l';
may contain even `F', `b', `i' and `s'. See also the variable
(if (fboundp 'epa-file-name-regexp-update)
(epa-file-name-regexp-update)))
-(defcustom epa-file-name-regexp (purecopy "\\.gpg\\(~\\|\\.~[0-9]+~\\)?\\'")
+(defcustom epa-file-name-regexp "\\.gpg\\(~\\|\\.~[0-9]+~\\)?\\'"
"Regexp which matches filenames to be encrypted with GnuPG.
If you set this outside Custom while epa-file is already enabled,
;;; Code:
-(defcustom term-file-prefix (purecopy "term/")
+(defcustom term-file-prefix "term/"
"If non-nil, Emacs startup performs terminal-specific initialization.
It does this by: (load (concat term-file-prefix (getenv \"TERM\")))
;; 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" "Cascadia Code" "Lucida Console" "courier" "fixed")
;; Monospace Serif is an Emacs invention, intended to work around
;; https://en.wikipedia.org/wiki/List_of_typefaces_included_with_Microsoft_Windows
"Calibri" "Tahoma" "Lucida Sans Unicode"
"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
;; This is defined originally in xfaces.c.
(defcustom face-font-registry-alternatives
- (mapcar (lambda (arg) (mapcar 'purecopy arg))
(if (featurep 'w32)
'(("iso8859-1" "ms-oemlatin")
("gb2312.1980" "gb2312" "gbk" "gb18030")
'(("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
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(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"))
(: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
(defun set-face-documentation (face string)
"Set the documentation string for FACE to STRING."
;; Perhaps the text should go in DOC.
- (put face 'face-documentation (purecopy string)))
+ (put face 'face-documentation string))
(define-obsolete-function-alias 'face-doc-string #'face-documentation "29.1")
equivalent to setting `:slant' to `italic'. But if `:weight' is
specified in the face spec, `:bold' is ignored, and if `:slant'
is specified, `:italic' is ignored."
- (setq args (purecopy args))
(let ((where (if (null frame) 0 frame))
(spec args)
family foundry orig-family orig-foundry)
(setq family orig-family)
(setq foundry orig-foundry)))
(when (or (stringp family) (eq family 'unspecified))
- (internal-set-lisp-face-attribute face :family (purecopy family)
- where))
+ (internal-set-lisp-face-attribute face :family family where))
(when (or (stringp foundry) (eq foundry 'unspecified))
- (internal-set-lisp-face-attribute face :foundry (purecopy foundry)
- where)))
+ (internal-set-lisp-face-attribute face :foundry foundry where)))
(while args
(unless (memq (car args) '(:family :foundry))
(internal-set-lisp-face-attribute face (car args)
- (purecopy (cadr args))
+ (cadr args)
where))
(setq args (cddr args)))))
(encoding "[^-]+")
)
(setq x-font-regexp
- (purecopy (concat "\\`\\*?[-?*]"
+ (concat "\\`\\*?[-?*]"
foundry - family - weight\? - slant\? - swidth - adstyle -
pixelsize - pointsize - resx - resy - spacing - avgwidth -
- registry - encoding "\\*?\\'"
- )))
+ registry - encoding "\\*?\\'"))
(setq x-font-regexp-head
- (purecopy (concat "\\`[-?*]" foundry - family - weight\? - slant\?
- "\\([-*?]\\|\\'\\)")))
- (setq x-font-regexp-slant (purecopy (concat - slant -)))
- (setq x-font-regexp-weight (purecopy (concat - weight -)))
+ (concat "\\`[-?*]" foundry - family - weight\? - slant\?
+ "\\([-*?]\\|\\'\\)"))
+ (setq x-font-regexp-slant (concat - slant -))
+ (setq x-font-regexp-weight (concat - weight -))
nil)
(put 'buffer-auto-save-file-format 'permanent-local t)
(defvar format-alist
- ;; FIXME: maybe each item can be purecopied instead of just the strings.
- `((text/enriched ,(purecopy "Extended MIME text/enriched format.")
- ,(purecopy "Content-[Tt]ype:[ \t]*text/enriched")
+ `((text/enriched "Extended MIME text/enriched format."
+ "Content-[Tt]ype:[ \t]*text/enriched"
enriched-decode enriched-encode t enriched-mode)
- (plain ,(purecopy "ISO 8859-1 standard format, no text properties.")
+ (plain "ISO 8859-1 standard format, no text properties."
;; Plain only exists so that there is an obvious neutral choice in
;; the completion list.
nil nil nil nil nil)
- (TeX ,(purecopy "TeX (encoding)")
+ (TeX "TeX (encoding)"
nil
iso-tex2iso iso-iso2tex t nil)
- (gtex ,(purecopy "German TeX (encoding)")
+ (gtex "German TeX (encoding)"
nil
iso-gtex2iso iso-iso2gtex t nil)
- (html ,(purecopy "HTML/SGML \"ISO 8879:1986//ENTITIES Added Latin 1//EN\" (encoding)")
+ (html "HTML/SGML \"ISO 8879:1986//ENTITIES Added Latin 1//EN\" (encoding)"
nil
iso-sgml2iso iso-iso2sgml t nil)
- (rot13 ,(purecopy "rot13")
+ (rot13 "rot13"
nil
rot13-region rot13-region t nil)
- (duden ,(purecopy "Duden Ersatzdarstellung")
+ (duden "Duden Ersatzdarstellung"
nil
;; FROM-FN used to call the "diac" command which is not widely
;; available and apparently not under a free software license:
;; Reliable round-trip conversion is not possible anyway and
;; would be by heuristic method, so make it write-only for now.
iso-cvt-write-only iso-iso2duden t nil)
- (de646 ,(purecopy "German ASCII (ISO 646)")
+ (de646 "German ASCII (ISO 646)"
nil
- ,(purecopy "iconv -f iso646-de -t utf-8")
- ,(purecopy "iconv -f utf-8 -t iso646-de") t nil)
- (denet ,(purecopy "net German")
+ "iconv -f iso646-de -t utf-8"
+ "iconv -f utf-8 -t iso646-de" t nil)
+ (denet "net German"
nil
iso-german iso-cvt-read-only t nil)
- (esnet ,(purecopy "net Spanish")
+ (esnet "net Spanish"
nil
iso-spanish iso-cvt-read-only t nil))
"List of information about understood file formats.
;;;###autoload
(defcustom image-file-name-extensions
- (purecopy '("png" "jpeg" "jpg" "gif" "tiff" "tif" "xbm" "xpm" "pbm" "pgm" "ppm" "pnm" "svg" "webp"))
+ '("png" "jpeg" "jpg" "gif" "tiff" "tif" "xbm" "xpm" "pbm" "pgm" "ppm" "pnm" "svg" "webp")
"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'.
(select-window window))))
-;;;###autoload (put 'info 'info-file (purecopy "emacs"))
+;;;###autoload (put 'info 'info-file "emacs")
;;;###autoload
(defun info (&optional file-or-node buffer)
"Enter Info, the documentation browser.
(cdr where))
where)))
-;;;###autoload (put 'Info-goto-emacs-command-node 'info-file (purecopy "emacs"))
+;;;###autoload (put 'Info-goto-emacs-command-node 'info-file "emacs")
;;;###autoload
(defun Info-goto-emacs-command-node (command)
"Go to the Info node in the Emacs manual for command COMMAND.
(if (> num-matches 2) "them" "it")))))
(error "Couldn't find documentation for %s" command))))
-;;;###autoload (put 'Info-goto-emacs-key-command-node 'info-file (purecopy "emacs"))
+;;;###autoload (put 'Info-goto-emacs-key-command-node 'info-file "emacs")
;;;###autoload
(defun Info-goto-emacs-key-command-node (key)
"Go to the node in the Emacs manual which describes the command bound to KEY.
and does a nonincremental search.)"
:type 'boolean)
-(defcustom search-whitespace-regexp (purecopy "[ \t]+")
+(defcustom search-whitespace-regexp "[ \t]+"
"If non-nil, regular expression to match a sequence of whitespace chars.
When you enter a space or spaces in the incremental search, it
will match any sequence matched by this regexp. As an exception,
\f
(defun jka-compr-build-file-regexp ()
- (purecopy
- (let ((re-anchored '())
- (re-free '()))
- (dolist (e jka-compr-compression-info-list)
- (let ((re (jka-compr-info-regexp e)))
- (if (string-match "\\\\'\\'" re)
- (push (substring re 0 (match-beginning 0)) re-anchored)
- (push re re-free))))
- (concat
- (if re-free (concat (mapconcat 'identity re-free "\\|") "\\|"))
- "\\(?:"
- (mapconcat 'identity re-anchored "\\|")
- "\\)" file-name-version-regexp "?\\'"))))
+ (let ((re-anchored '())
+ (re-free '()))
+ (dolist (e jka-compr-compression-info-list)
+ (let ((re (jka-compr-info-regexp e)))
+ (if (string-match "\\\\'\\'" re)
+ (push (substring re 0 (match-beginning 0)) re-anchored)
+ (push re re-free))))
+ (concat
+ (if re-free (concat (mapconcat 'identity re-free "\\|") "\\|"))
+ "\\(?:"
+ (mapconcat 'identity re-anchored "\\|")
+ "\\)" file-name-version-regexp "?\\'")))
;; Functions for accessing the return value of jka-compr-get-compression-info
;; FIXME: Use cl-defstruct!
;; uncomp-message uncomp-prog uncomp-args
;; can-append strip-extension-flag file-magic-bytes
;; uncompress-function]
- (mapcar 'purecopy
`(["\\.Z\\'"
"compressing" "compress" ("-c")
;; gzip is more common than uncompress. It can only read, not write.
["\\.tzst\\'"
"zstd compressing" "zstd" ("-c" "-q")
"zstd uncompressing" "zstd" ("-c" "-q" "-d")
- t nil "\050\265\057\375"]))
+ t nil "\050\265\057\375"])
"List of vectors that describe available compression techniques.
Each element, which describes a compression technique, is a vector of
:group 'jka-compr)
(defcustom jka-compr-mode-alist-additions
- (purecopy '(("\\.tgz\\'" . tar-mode)
- ("\\.tbz2?\\'" . tar-mode)
- ("\\.txz\\'" . tar-mode)
- ("\\.tzst\\'" . tar-mode)))
+ '(("\\.tgz\\'" . tar-mode)
+ ("\\.tbz2?\\'" . tar-mode)
+ ("\\.txz\\'" . tar-mode)
+ ("\\.tzst\\'" . 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.
:set 'jka-compr-set
:group 'jka-compr)
-(defcustom jka-compr-load-suffixes (purecopy '(".gz"))
+(defcustom jka-compr-load-suffixes '(".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
"CCL program to encode an Ethiopic code to code point of Ethiopic font.")
(setq font-ccl-encoder-alist
- (cons (cons (purecopy "ethiopic") ccl-encode-ethio-font) font-ccl-encoder-alist))
+ (cons (cons "ethiopic" ccl-encode-ethio-font) font-ccl-encoder-alist))
(set-language-info-alist
"Ethiopic" '((setup-function . setup-ethiopic-environment-internal)
;;;###autoload
(defvar default-korean-keyboard
- (purecopy (if (string-search "3" (or (getenv "HANGUL_KEYBOARD_TYPE") ""))
+ (if (string-search "3" (or (getenv "HANGUL_KEYBOARD_TYPE") ""))
"3"
- ""))
- "The kind of Korean keyboard for Korean (Hangul) input method.
+ "")
+ "The kind of Korean keyboard for Korean (Hangul) input method.
\"\" for 2, \"3\" for 3, and \"3f\" for 3f.")
;; functions useful for Korean text input
from a roman transcription to the corresponding Tibetan character.")
(defvar tibetan-precomposed-regexp
- (purecopy
- (eval-when-compile
- (concat "^"
- (regexp-opt (mapcar #'car tibetan-precomposed-transcription-alist)
- t))))
+ (eval-when-compile
+ (concat "^"
+ (regexp-opt (mapcar #'car tibetan-precomposed-transcription-alist)
+ t)))
"Regexp string to match a romanized Tibetan complex consonant.
The result of matching is to be used for indexing alists when the input key
from an input method is converted to the corresponding precomposed glyph.")
(defvar tibetan-precomposition-rule-regexp
- (purecopy
- (eval-when-compile
- (regexp-opt (mapcar #'car tibetan-precomposition-rule-alist) t)))
+ (eval-when-compile
+ (regexp-opt (mapcar #'car tibetan-precomposition-rule-alist) t))
"Regexp string to match a sequence of Tibetan consonantic components.
That is, one base consonant and one or more subjoined consonants.
The result of matching is to be used for indexing alist when the component
:type '(choice (const :tag "None" nil) face))
;;;###autoload
-(defcustom locate-ls-subdir-switches (purecopy "-al")
+(defcustom locate-ls-subdir-switches "-al"
"`ls' switches for inserting subdirectories in `*Locate*' buffers.
This should contain the \"-l\" switch, but not the \"-F\" or \"-b\" switches."
:type 'string
;;;###autoload
(defcustom lpr-command
- (purecopy
(cond
(lpr-windows-system
"")
(lpr-lp-system
"lp")
(t
- "lpr")))
+ "lpr"))
"Name of program for printing a file.
On MS-DOS and MS-Windows systems, if the value is an empty string then
:group 'rmail)
;;;###autoload
-(defcustom rmail-file-name (purecopy "~/RMAIL")
+(defcustom rmail-file-name "~/RMAIL"
"Name of user's primary mail file."
:type 'string
:group 'rmail
;;;###autoload
(defcustom rmail-spool-directory
- (purecopy
(cond ((file-exists-p "/var/mail")
;; SVR4 and recent BSD are said to use this.
;; Rather than trying to know precisely which systems use it,
;; Many GNU/Linux systems use this name.
((file-exists-p "/var/spool/mail") "/var/spool/mail/")
((memq system-type '(hpux usg-unix-v)) "/usr/mail/")
- (t "/usr/spool/mail/")))
+ (t "/usr/spool/mail/"))
"Name of directory used by system mailer for delivering new mail.
Its name should end with a slash."
:initialize #'custom-initialize-delay
;;;###autoload
(defcustom rmail-ignored-headers
- (purecopy
(concat "^via:\\|^mail-from:\\|^origin:\\|^references:\\|^sender:"
"\\|^status:\\|^received:\\|^x400-originator:\\|^x400-recipients:"
"\\|^x400-received:\\|^x400-mts-identifier:\\|^x400-content-type:"
"\\|^Received-SPF:"
"\\|^Authentication-Results:"
"\\|^resent-face:\\|^resent-x.*:\\|^resent-organization:\\|^resent-openpgp:"
- "\\|^x-.*:"))
+ "\\|^x-.*:")
"Regexp to match header fields that Rmail should normally hide.
\(See also `rmail-nonignored-headers', which overrides this regexp.)
This variable is used for reformatting the message header,
:version "29.1")
;;;###autoload
-(defcustom rmail-highlighted-headers (purecopy "^From:\\|^Subject:")
+(defcustom rmail-highlighted-headers "^From:\\|^Subject:"
"Regexp to match Header fields that Rmail should normally highlight.
A value of nil means don't highlight. Uses the face `rmail-highlight'."
:type '(choice regexp (const :tag "None" nil))
:group 'rmail-reply)
;;;###autoload
-(defcustom rmail-secondary-file-directory (purecopy "~/")
+(defcustom rmail-secondary-file-directory "~/"
"Directory for additional secondary Rmail files."
:type 'directory
:group 'rmail-files)
;;;###autoload
-(defcustom rmail-secondary-file-regexp (purecopy "\\.xmail\\'")
+(defcustom rmail-secondary-file-regexp "\\.xmail\\'"
"Regexp for which files are secondary Rmail files."
:type 'regexp
:group 'rmail-files)
:version "24.1")
;;;###autoload
-(defcustom mail-header-separator (purecopy "--text follows this line--")
+(defcustom mail-header-separator "--text follows this line--"
"Line used to separate headers from text in messages being composed."
:type 'string)
:type '(choice (const :tag "Sendmail default" nil) file))
;;;###autoload
-(defcustom mail-personal-alias-file (purecopy "~/.mailrc")
+(defcustom mail-personal-alias-file "~/.mailrc"
"If non-nil, the name of the user's personal mail alias file.
This file typically should be in same format as the `.mailrc' file used by
the `Mail' or `mailx' program.
;;;###autoload
(defcustom mail-citation-prefix-regexp
- ;; Use [[:word:]] rather than \w so we don't get tripped up if one
- ;; of those chars has a weird `syntax-table' text property.
- (purecopy "\\([ \t]*\\([[:word:]]\\|[_.]\\)+>+\\|[ \t]*[>|]\\)+")
+ "\\([ \t]*\\(\\w\\|[_.]\\)+>+\\|[ \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.
:risky t)
;;;###autoload
-(defcustom mail-signature-file (purecopy "~/.signature")
+(defcustom mail-signature-file "~/.signature"
"File containing the text inserted at end of mail buffer."
:type 'file)
;;;###autoload
-(defcustom mail-default-directory (purecopy "~/")
+(defcustom mail-default-directory "~/"
"Value of `default-directory' for Mail mode buffers.
This directory is used for auto-save files of Mail mode buffers.
(or (not (boundp 'xref-backend-functions))
(eq (car xref-backend-functions) 'etags--xref-backend)))
-(defvar yank-menu (cons (purecopy "Select Yank") nil))
+(defvar yank-menu '("Select Yank" nil))
(fset 'yank-menu (cons 'keymap yank-menu))
(defvar menu-bar-edit-menu
(define-key global-map [menu-bar file]
(cons "File" menu-bar-file-menu))
(define-key global-map [menu-bar help-menu]
- (cons (purecopy "Help") menu-bar-help-menu))
+ (cons "Help" menu-bar-help-menu))
(define-key global-map [menu-bar mouse-1] 'menu-bar-open-mouse)
(defvar eudc-tools-menu
(let ((map (make-sparse-keymap "Directory Servers")))
(define-key map [phone]
- `(menu-item ,(purecopy "Get Phone") eudc-get-phone
- :help ,(purecopy "Get the phone field of name from the directory server")))
+ '(menu-item "Get Phone" eudc-get-phone
+ :help "Get the phone field of name from the directory server"))
(define-key map [email]
- `(menu-item ,(purecopy "Get Email") eudc-get-email
- :help ,(purecopy "Get the email field of NAME from the directory server")))
+ '(menu-item "Get Email" eudc-get-email
+ :help "Get the email field of NAME from the directory server"))
(define-key map [separator-eudc-email] menu-bar-separator)
(define-key map [expand-inline]
- `(menu-item ,(purecopy "Expand Inline Query") eudc-expand-inline
- :help ,(purecopy "Query the directory server, and expand the query string before point")))
+ '(menu-item "Expand Inline Query" eudc-expand-inline
+ :help "Query the directory server, and expand the query string before point"))
(define-key map [query]
- `(menu-item ,(purecopy "Query with Form") eudc-query-form
- :help ,(purecopy "Display a form to query the directory server")))
+ '(menu-item "Query with Form" eudc-query-form
+ :help "Display a form to query the directory server"))
(define-key map [separator-eudc-query] menu-bar-separator)
(define-key map [new]
- `(menu-item ,(purecopy "New Server") eudc-set-server
- :help ,(purecopy "Set the directory server to SERVER using PROTOCOL")))
+ '(menu-item "New Server" eudc-set-server
+ :help "Set the directory server to SERVER using PROTOCOL"))
(define-key map [load]
- `(menu-item ,(purecopy "Load Hotlist of Servers") eudc-load-eudc
- :help ,(purecopy "Load the Emacs Unified Directory Client")))
+ '(menu-item "Load Hotlist of Servers" eudc-load-eudc
+ :help "Load the Emacs Unified Directory Client"))
map))
(fset 'eudc-tools-menu (symbol-value 'eudc-tools-menu)))
(put 'comment-end-skip 'safe-local-variable 'stringp)
;;;###autoload
-(defvar comment-end (purecopy "")
+(defvar comment-end ""
"String to insert to end a new comment.
Should be an empty string if comments are terminated by end-of-line.")
;;;###autoload
:group 'comment)
;;;###autoload
-(defcustom comment-padding (purecopy " ")
+(defcustom comment-padding " "
"Padding string that `comment-region' puts between comment chars and text.
Can also be an integer which will be automatically turned into a string
of the corresponding number of spaces.
load-name outfile))
(let ((standard-output (marker-buffer output-start))
(print-quoted t))
- (princ `(push (purecopy
- ',(cons (intern package) version))
+ (princ `(push ',(cons (intern package) version)
package--builtin-versions))
(princ "\n")))))
;; FIXME: Currently the check is made via
;; (assoc major-mode hs-special-modes-alist) so it doesn't pay attention
;; to the mode hierarchy.
- (mapcar #'purecopy
'((c-mode "{" "}" "/[*/]" nil nil)
(c-ts-mode "{" "}" "/[*/]" nil nil)
(c++-mode "{" "}" "/[*/]" nil nil)
(lua-ts-mode "{\\|\\[\\[" "}\\|\\]\\]" "--" nil)
(mhtml-mode "{\\|<[^/>]*?" "}\\|</[^/>]*[^/]>" "<!--" mhtml-forward nil)
;; Add more support here.
- ))
+ )
"Alist for initializing the hideshow variables for different modes.
Each element has the form
(MODE START END COMMENT-START FORWARD-SEXP-FUNC ADJUST-BEG-FUNC
;;;###autoload
(defcustom ps-page-dimensions-database
- (purecopy
- (list (list 'a4 (/ (* 72 21.0) 2.54) (/ (* 72 29.7) 2.54) "A4")
- (list 'a3 (/ (* 72 29.7) 2.54) (/ (* 72 42.0) 2.54) "A3")
- (list 'letter (* 72 8.5) (* 72 11.0) "Letter")
- (list 'legal (* 72 8.5) (* 72 14.0) "Legal")
- (list 'letter-small (* 72 7.68) (* 72 10.16) "LetterSmall")
- (list 'tabloid (* 72 11.0) (* 72 17.0) "Tabloid")
- (list 'ledger (* 72 17.0) (* 72 11.0) "Ledger")
- (list 'statement (* 72 5.5) (* 72 8.5) "Statement")
- (list 'executive (* 72 7.5) (* 72 10.0) "Executive")
- (list 'a4small (* 72 7.47) (* 72 10.85) "A4Small")
- (list 'b4 (* 72 10.125) (* 72 14.33) "B4")
- (list 'b5 (* 72 7.16) (* 72 10.125) "B5")
- ;; page sizes for label printer
- ;; NOTE: the page sizes below don't have n-up > 1.
- '(addresslarge 236.0 99.0 "AddressLarge")
- '(addresssmall 236.0 68.0 "AddressSmall")
- '(cuthanging13 90.0 222.0 "CutHanging13")
- '(cuthanging15 90.0 114.0 "CutHanging15")
- '(diskette 181.0 136.0 "Diskette")
- '(eurofilefolder 139.0 112.0 "EuropeanFilefolder")
- '(eurofoldernarrow 526.0 107.0 "EuroFolderNarrow")
- '(eurofolderwide 526.0 136.0 "EuroFolderWide")
- '(euronamebadge 189.0 108.0 "EuroNameBadge")
- '(euronamebadgelarge 223.0 136.0 "EuroNameBadgeLarge")
- '(filefolder 230.0 37.0 "FileFolder")
- '(jewelry 76.0 136.0 "Jewelry")
- '(mediabadge 180.0 136.0 "MediaBadge")
- '(multipurpose 126.0 68.0 "MultiPurpose")
- '(retaillabel 90.0 104.0 "RetailLabel")
- '(shipping 271.0 136.0 "Shipping")
- '(slide35mm 26.0 104.0 "Slide35mm")
- '(spine8mm 187.0 26.0 "Spine8mm")
- '(topcoated 425.19685 136.0 "TopCoatedPaper")
- '(topcoatedpaper 396.0 136.0 "TopcoatedPaper150")
- '(vhsface 205.0 127.0 "VHSFace")
- '(vhsspine 400.0 50.0 "VHSSpine")
- '(zipdisk 156.0 136.0 "ZipDisk")))
+ (list (list 'a4 (/ (* 72 21.0) 2.54) (/ (* 72 29.7) 2.54) "A4")
+ (list 'a3 (/ (* 72 29.7) 2.54) (/ (* 72 42.0) 2.54) "A3")
+ (list 'letter (* 72 8.5) (* 72 11.0) "Letter")
+ (list 'legal (* 72 8.5) (* 72 14.0) "Legal")
+ (list 'letter-small (* 72 7.68) (* 72 10.16) "LetterSmall")
+ (list 'tabloid (* 72 11.0) (* 72 17.0) "Tabloid")
+ (list 'ledger (* 72 17.0) (* 72 11.0) "Ledger")
+ (list 'statement (* 72 5.5) (* 72 8.5) "Statement")
+ (list 'executive (* 72 7.5) (* 72 10.0) "Executive")
+ (list 'a4small (* 72 7.47) (* 72 10.85) "A4Small")
+ (list 'b4 (* 72 10.125) (* 72 14.33) "B4")
+ (list 'b5 (* 72 7.16) (* 72 10.125) "B5")
+ ;; page sizes for label printer
+ ;; NOTE: the page sizes below don't have n-up > 1.
+ '(addresslarge 236.0 99.0 "AddressLarge")
+ '(addresssmall 236.0 68.0 "AddressSmall")
+ '(cuthanging13 90.0 222.0 "CutHanging13")
+ '(cuthanging15 90.0 114.0 "CutHanging15")
+ '(diskette 181.0 136.0 "Diskette")
+ '(eurofilefolder 139.0 112.0 "EuropeanFilefolder")
+ '(eurofoldernarrow 526.0 107.0 "EuroFolderNarrow")
+ '(eurofolderwide 526.0 136.0 "EuroFolderWide")
+ '(euronamebadge 189.0 108.0 "EuroNameBadge")
+ '(euronamebadgelarge 223.0 136.0 "EuroNameBadgeLarge")
+ '(filefolder 230.0 37.0 "FileFolder")
+ '(jewelry 76.0 136.0 "Jewelry")
+ '(mediabadge 180.0 136.0 "MediaBadge")
+ '(multipurpose 126.0 68.0 "MultiPurpose")
+ '(retaillabel 90.0 104.0 "RetailLabel")
+ '(shipping 271.0 136.0 "Shipping")
+ '(slide35mm 26.0 104.0 "Slide35mm")
+ '(spine8mm 187.0 26.0 "Spine8mm")
+ '(topcoated 425.19685 136.0 "TopCoatedPaper")
+ '(topcoatedpaper 396.0 136.0 "TopcoatedPaper150")
+ '(vhsface 205.0 127.0 "VHSFace")
+ '(vhsspine 400.0 50.0 "VHSSpine")
+ '(zipdisk 156.0 136.0 "ZipDisk"))
"List associating a symbolic paper type to its width, height and doc media.
See `ps-paper-type'."
:type '(repeat (list :tag "Paper Type"
:version "22.1")
(defcustom file-name-shadow-tty-properties
- (purecopy '(before-string "{" after-string "} " field shadow))
+ '(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
:group 'shell)
;;;###autoload
-(defcustom shell-dumb-shell-regexp (purecopy "cmd\\(proxy\\)?\\.exe")
+(defcustom shell-dumb-shell-regexp "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
(defvar next-error-highlight-timer nil)
(defvar next-error-overlay-arrow-position nil)
-(put 'next-error-overlay-arrow-position 'overlay-arrow-string (purecopy "=>"))
+(put 'next-error-overlay-arrow-position 'overlay-arrow-string "=>")
(add-to-list 'overlay-arrow-variable-list 'next-error-overlay-arrow-position)
(defvar next-error-last-buffer nil
Maximum length of the history list is determined by the value
of `history-length', which see.")
-(defvar shell-command-switch (purecopy "-c")
+(defvar shell-command-switch "-c"
"Switch used to have the shell execute its command line argument.")
(defvar shell-command-default-error-buffer nil
(save-excursion
(insert-buffer-substring oldbuf start end)))))
\f
-(define-error 'mark-inactive (purecopy "The mark is not active now"))
+(define-error 'mark-inactive "The mark is not active now")
(defvar activate-mark-hook nil
"Hook run when the mark becomes active.
(message "Word wrapping %s"
(if word-wrap "enabled" "disabled")))
-(defvar overwrite-mode-textual (purecopy " Ovwrt")
+(defvar overwrite-mode-textual " Ovwrt"
"The string displayed in the mode line when in overwrite mode.")
-(defvar overwrite-mode-binary (purecopy " Bin Ovwrt")
+(defvar overwrite-mode-binary " Bin Ovwrt"
"The string displayed in the mode line when in binary overwrite mode.")
(define-minor-mode overwrite-mode
;; evaluating it now).
(let* ((regexp-or-feature
(if (stringp file)
- (setq file (purecopy (load-history-regexp file)))
+ (setq file (load-history-regexp file))
file))
(elt (assoc regexp-or-feature after-load-alist))
(func
(defvar package--builtin-versions
;; Mostly populated by loaddefs.el.
- (purecopy `((emacs . ,(version-to-list emacs-version))))
+ `((emacs . ,(version-to-list emacs-version)))
"Alist giving the version of each versioned builtin package.
I.e. each element of the list is of the form (NAME . VERSION) where
NAME is the package name as a symbol, and VERSION is its version
"<touchscreen-begin>" #'tab-bar-touchscreen-begin)
(global-set-key [tab-bar]
- `(menu-item ,(purecopy "tab bar") ,(make-sparse-keymap)
+ `(menu-item "tab bar" ,(make-sparse-keymap)
:filter tab-bar-make-keymap))
(defun tab-bar-make-keymap (&optional _ignore)
(add-hook 'after-init-hook #'pgtk-use-im-context-handler)
(defcustom x-gtk-stock-map
- (mapcar (lambda (arg)
- (cons (purecopy (car arg)) (purecopy (cdr arg))))
'(
("etc/images/new" . ("document-new" "gtk-new"))
("etc/images/open" . ("document-open" "gtk-open"))
;; No themed versions available:
;; mail/preview (combining stock_mail and stock_zoom)
;; mail/save (combining stock_mail, stock_save and stock_convert)
- ))
+ )
"How icons for tool bars are mapped to Gtk+ stock items.
Emacs must be compiled with the Gtk+ toolkit for this to have any effect.
A value that begins with n: denotes a named icon instead of a stock icon."
(define-key special-event-map [drag-n-drop] 'x-dnd-handle-drag-n-drop-event)
(defcustom x-gtk-stock-map
- (mapcar (lambda (arg)
- (cons (purecopy (car arg)) (purecopy (cdr arg))))
'(
("etc/images/new" . ("document-new" "gtk-new"))
("etc/images/open" . ("document-open" "gtk-open"))
;; No themed versions available:
;; mail/preview (combining stock_mail and stock_zoom)
;; mail/save (combining stock_mail, stock_save and stock_convert)
- ))
+ )
"How icons for tool bars are mapped to Gtk+ stock items.
Emacs must be compiled with the Gtk+ toolkit for this to have any effect.
A value that begins with n: denotes a named icon instead of a stock icon."
`bottom'.")
(global-set-key [tool-bar]
- `(menu-item ,(purecopy "tool bar") ignore
- :filter tool-bar-make-keymap))
+ '(menu-item "tool bar" ignore
+ :filter tool-bar-make-keymap))
(declare-function image-mask-p "image.c" (spec &optional frame))
(unless (or (null doc) (stringp doc))
(error "Widget documentation must be nil or a string"))
(put name 'widget-type (cons class args))
- (put name 'widget-documentation (purecopy doc))
+ (put name 'widget-documentation doc)
(add-to-list 'current-load-list `(define-widget . ,name))
name)