diff options
| author | Vincent Belaïche | 2016-05-25 23:44:18 +0200 |
|---|---|---|
| committer | Vincent Belaïche | 2016-05-25 23:44:18 +0200 |
| commit | 6c12c53949acafbfcad2e08b1ac5cbe283d71597 (patch) | |
| tree | 736a336f1b3cecaee73344c237d84545c1a57503 | |
| parent | 0be672542ad60e6c73d36b7fdc1b6786786595ad (diff) | |
| parent | 853b9b92072e9eff11aff9c0110380c9a93864ca (diff) | |
| download | emacs-6c12c53949acafbfcad2e08b1ac5cbe283d71597.tar.gz emacs-6c12c53949acafbfcad2e08b1ac5cbe283d71597.zip | |
Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
| -rw-r--r-- | admin/admin.el | 19 | ||||
| -rw-r--r-- | admin/authors.el | 32 | ||||
| -rw-r--r-- | admin/make-tarball.txt | 15 | ||||
| -rwxr-xr-x | build-aux/gitlog-to-emacslog | 22 | ||||
| -rw-r--r-- | doc/misc/texinfo.tex | 56 |
5 files changed, 79 insertions, 65 deletions
diff --git a/admin/admin.el b/admin/admin.el index a3d56277918..4af1ff9003a 100644 --- a/admin/admin.el +++ b/admin/admin.el | |||
| @@ -43,12 +43,19 @@ Optional argument DATE is the release date, default today." | |||
| 43 | (setq root (expand-file-name root)) | 43 | (setq root (expand-file-name root)) |
| 44 | (unless (file-exists-p (expand-file-name "src/emacs.c" root)) | 44 | (unless (file-exists-p (expand-file-name "src/emacs.c" root)) |
| 45 | (user-error "%s doesn't seem to be the root of an Emacs source tree" root)) | 45 | (user-error "%s doesn't seem to be the root of an Emacs source tree" root)) |
| 46 | ;; FIXME this does not check that a ChangeLog that exists is not | 46 | (let ((clog (expand-file-name "ChangeLog" root))) |
| 47 | ;; your own personal one. Perhaps we should move any existing file | 47 | (if (file-exists-p clog) |
| 48 | ;; and unconditionally call make ChangeLog? | 48 | ;; Basic check that a ChangeLog that exists is not your personal one. |
| 49 | ;; Or make ChangeLog CHANGELOG=temp and compare with the existing? | 49 | ;; TODO Perhaps we should move any existing file and unconditionally |
| 50 | (unless (file-exists-p (expand-file-name "ChangeLog" root)) | 50 | ;; call make ChangeLog? Or make ChangeLog CHANGELOG=temp and compare |
| 51 | (user-error "No top-level ChangeLog - run \"make ChangeLog\" first")) | 51 | ;; with the existing? |
| 52 | (with-temp-buffer | ||
| 53 | (insert-file-contents clog) | ||
| 54 | (or (re-search-forward "^[ \t]*Copyright.*Free Software" nil t) | ||
| 55 | (user-error "ChangeLog looks like a personal one - remove it?"))) | ||
| 56 | (or | ||
| 57 | (zerop (call-process "make" nil nil nil "-C" root "ChangeLog")) | ||
| 58 | (error "Problem generating ChangeLog")))) | ||
| 52 | (require 'add-log) | 59 | (require 'add-log) |
| 53 | (or date (setq date (funcall add-log-time-format nil t))) | 60 | (or date (setq date (funcall add-log-time-format nil t))) |
| 54 | (let* ((logs (process-lines "find" root "-name" "ChangeLog")) | 61 | (let* ((logs (process-lines "find" root "-name" "ChangeLog")) |
diff --git a/admin/authors.el b/admin/authors.el index f1aa2fa4428..b93c9b251ca 100644 --- a/admin/authors.el +++ b/admin/authors.el | |||
| @@ -1361,24 +1361,36 @@ and changed by AUTHOR." | |||
| 1361 | (cons (list author wrote-list cowrote-list changed-list) | 1361 | (cons (list author wrote-list cowrote-list changed-list) |
| 1362 | authors-author-list))))) | 1362 | authors-author-list))))) |
| 1363 | 1363 | ||
| 1364 | (defun authors (root) | 1364 | (defun authors (root &optional nologupdate) |
| 1365 | "Extract author information from change logs and Lisp source files. | 1365 | "Extract author information from change logs and Lisp source files. |
| 1366 | ROOT is the root directory under which to find the files. If called | 1366 | ROOT is the root directory under which to find the files. |
| 1367 | interactively, ROOT is read from the minibuffer. | 1367 | Interactively, read ROOT from the minibuffer. |
| 1368 | Result is a buffer *Authors* containing authorship information, and a | 1368 | Accurate author information requires up-to-date change logs, so this |
| 1369 | buffer *Authors Errors* containing references to unknown files." | 1369 | first updates them, unless optional prefix argument NOLOGUPDATE is non-nil. |
| 1370 | (interactive "DEmacs source directory: ") | 1370 | The result is a buffer *Authors* containing authorship information, |
| 1371 | and a buffer *Authors Errors* containing references to unknown files." | ||
| 1372 | (interactive "DEmacs source directory: \nP") | ||
| 1371 | (setq root (expand-file-name root)) | 1373 | (setq root (expand-file-name root)) |
| 1374 | (unless (file-exists-p (expand-file-name "src/emacs.c" root)) | ||
| 1375 | (unless (y-or-n-p | ||
| 1376 | (format "Not the root directory of Emacs: %s, continue? " root)) | ||
| 1377 | (user-error "Not the root directory"))) | ||
| 1378 | ;; May contain your personal entries. | ||
| 1379 | (or (not (file-exists-p (expand-file-name "ChangeLog" root))) | ||
| 1380 | (y-or-n-p "Unversioned ChangeLog present, continue?") | ||
| 1381 | (user-error "Unversioned ChangeLog may have irrelevant entries")) | ||
| 1382 | (or nologupdate | ||
| 1383 | ;; There are likely to be things that need fixing, so we update | ||
| 1384 | ;; the versioned ChangeLog.N rather than the unversioned ChangeLog. | ||
| 1385 | (zerop (call-process "make" nil nil nil | ||
| 1386 | "-C" root "change-history-nocommit")) | ||
| 1387 | (error "Problem updating ChangeLog")) | ||
| 1372 | (let ((logs (process-lines find-program root "-name" "ChangeLog*")) | 1388 | (let ((logs (process-lines find-program root "-name" "ChangeLog*")) |
| 1373 | (table (make-hash-table :test 'equal)) | 1389 | (table (make-hash-table :test 'equal)) |
| 1374 | (buffer-name "*Authors*") | 1390 | (buffer-name "*Authors*") |
| 1375 | authors-checked-files-alist | 1391 | authors-checked-files-alist |
| 1376 | authors-invalid-file-names) | 1392 | authors-invalid-file-names) |
| 1377 | (authors-add-fixed-entries table) | 1393 | (authors-add-fixed-entries table) |
| 1378 | (unless (file-exists-p (expand-file-name "src/emacs.c" root)) | ||
| 1379 | (unless (y-or-n-p | ||
| 1380 | (format "Not the root directory of Emacs: %s, continue? " root)) | ||
| 1381 | (error "Not the root directory"))) | ||
| 1382 | (dolist (log logs) | 1394 | (dolist (log logs) |
| 1383 | (when (string-match "ChangeLog\\(.[0-9]+\\)?$" log) | 1395 | (when (string-match "ChangeLog\\(.[0-9]+\\)?$" log) |
| 1384 | (message "Scanning %s..." log) | 1396 | (message "Scanning %s..." log) |
diff --git a/admin/make-tarball.txt b/admin/make-tarball.txt index af18ff6a2e6..77486cc6399 100644 --- a/admin/make-tarball.txt +++ b/admin/make-tarball.txt | |||
| @@ -37,14 +37,15 @@ General steps (for each step, check for possible errors): | |||
| 37 | M-: (require 'authors) RET | 37 | M-: (require 'authors) RET |
| 38 | M-x authors RET | 38 | M-x authors RET |
| 39 | 39 | ||
| 40 | (This first updates the current versioned ChangeLog.N) | ||
| 41 | |||
| 40 | If there is an "*Authors Errors*" buffer, address the issues. | 42 | If there is an "*Authors Errors*" buffer, address the issues. |
| 41 | If there was a ChangeLog typo, run "make change-history" and then | 43 | If there was a ChangeLog typo, fix the relevant entry. |
| 42 | fix the newest ChangeLog history file. If a file was deleted or | 44 | If a file was deleted or renamed, consider adding an appropriate |
| 43 | renamed, consider adding an appropriate entry to | 45 | entry to authors-ignored-files, authors-valid-file-names, or |
| 44 | authors-ignored-files, authors-valid-file-names, or | ||
| 45 | authors-renamed-files-alist. | 46 | authors-renamed-files-alist. |
| 46 | 47 | ||
| 47 | If necessary, repeat M-x authors after making those changes. | 48 | If necessary, repeat 'C-u M-x authors' after making those changes. |
| 48 | Save the "*Authors*" buffer as etc/AUTHORS. | 49 | Save the "*Authors*" buffer as etc/AUTHORS. |
| 49 | Check the diff looks reasonable. Maybe add entries to | 50 | Check the diff looks reasonable. Maybe add entries to |
| 50 | authors-ambiguous-files or authors-aliases, and repeat. | 51 | authors-ambiguous-files or authors-aliases, and repeat. |
| @@ -85,8 +86,8 @@ General steps (for each step, check for possible errors): | |||
| 85 | 86 | ||
| 86 | 5. Copy lisp/loaddefs.el to lisp/ldefs-boot.el. | 87 | 5. Copy lisp/loaddefs.el to lisp/ldefs-boot.el. |
| 87 | 88 | ||
| 88 | Commit etc/AUTHORS, lisp/ldefs-boot.el, and the files changed | 89 | Commit ChangeLog.N, etc/AUTHORS, lisp/ldefs-boot.el, and the |
| 89 | by M-x set-version. | 90 | files changed by M-x set-version. |
| 90 | 91 | ||
| 91 | If someone else made a commit between step 1 and now, | 92 | If someone else made a commit between step 1 and now, |
| 92 | you need to repeat from step 4 onwards. (You can commit the files | 93 | you need to repeat from step 4 onwards. (You can commit the files |
diff --git a/build-aux/gitlog-to-emacslog b/build-aux/gitlog-to-emacslog index 5c187f5eae0..345c37f63da 100755 --- a/build-aux/gitlog-to-emacslog +++ b/build-aux/gitlog-to-emacslog | |||
| @@ -81,7 +81,7 @@ test -d .git || { | |||
| 81 | --ignore-line='^; ' --format='%B' \ | 81 | --ignore-line='^; ' --format='%B' \ |
| 82 | "$gen_origin..$new_origin" >"ChangeLog.tmp" || exit | 82 | "$gen_origin..$new_origin" >"ChangeLog.tmp" || exit |
| 83 | 83 | ||
| 84 | if test -s "ChangeLog.tmp"; then | 84 | if test -e "ChangeLog.tmp"; then |
| 85 | 85 | ||
| 86 | # Fix up bug references. | 86 | # Fix up bug references. |
| 87 | # This would be better as eg a --transform option to gitlog-to-changelog, | 87 | # This would be better as eg a --transform option to gitlog-to-changelog, |
| @@ -99,7 +99,7 @@ if test -s "ChangeLog.tmp"; then | |||
| 99 | ` | 99 | ` |
| 100 | start_year= | 100 | start_year= |
| 101 | end_year= | 101 | end_year= |
| 102 | for year in $years; do | 102 | for year in ${years:-`date +%Y`}; do |
| 103 | : ${start_year:=$year} | 103 | : ${start_year:=$year} |
| 104 | end_year=$year | 104 | end_year=$year |
| 105 | done | 105 | done |
| @@ -110,13 +110,19 @@ if test -s "ChangeLog.tmp"; then | |||
| 110 | year_range=$start_year-$end_year | 110 | year_range=$start_year-$end_year |
| 111 | fi | 111 | fi |
| 112 | 112 | ||
| 113 | # Update gen_origin and append a proper copyright notice. | 113 | # Update gen_origin |
| 114 | sed -n ' | 114 | if test "$gen_origin" != "$new_origin"; then |
| 115 | 1i\ | 115 | sed -n ' |
| 116 | 1i\ | ||
| 117 | |||
| 118 | /^This file records repository revisions/p | ||
| 119 | s/^commit [0-9a-f]* (exclusive)/commit '"$gen_origin"' (exclusive)/p | ||
| 120 | s/^commit [0-9a-f]* (inclusive)/commit '"$new_origin"' (inclusive)/p | ||
| 121 | ' <ChangeLog.$nmax >>"ChangeLog.tmp" || exit | ||
| 122 | fi | ||
| 116 | 123 | ||
| 117 | /^This file records repository revisions/p | 124 | # Append a proper copyright notice. |
| 118 | s/^commit [0-9a-f]* (exclusive)/commit '"$gen_origin"' (exclusive)/p | 125 | sed -n ' |
| 119 | s/^commit [0-9a-f]* (inclusive)/commit '"$new_origin"' (inclusive)/p | ||
| 120 | /^See ChangeLog.[0-9]* for earlier/,${ | 126 | /^See ChangeLog.[0-9]* for earlier/,${ |
| 121 | s/ChangeLog\.[0-9]*/ChangeLog.'$nmax'/ | 127 | s/ChangeLog\.[0-9]*/ChangeLog.'$nmax'/ |
| 122 | s/\(Copyright[ (C)]*\)[0-9]*-[0-9]*/\1'"$year_range"'/ | 128 | s/\(Copyright[ (C)]*\)[0-9]*-[0-9]*/\1'"$year_range"'/ |
diff --git a/doc/misc/texinfo.tex b/doc/misc/texinfo.tex index 314063cafe1..37e2de896ec 100644 --- a/doc/misc/texinfo.tex +++ b/doc/misc/texinfo.tex | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | % Load plain if necessary, i.e., if running under initex. | 3 | % Load plain if necessary, i.e., if running under initex. |
| 4 | \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi | 4 | \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi |
| 5 | % | 5 | % |
| 6 | \def\texinfoversion{2016-05-07.20} | 6 | \def\texinfoversion{2016-04-14.07} |
| 7 | % | 7 | % |
| 8 | % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, | 8 | % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, |
| 9 | % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, | 9 | % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, |
| @@ -67,10 +67,6 @@ | |||
| 67 | \everyjob{\message{[Texinfo version \texinfoversion]}% | 67 | \everyjob{\message{[Texinfo version \texinfoversion]}% |
| 68 | \catcode`+=\active \catcode`\_=\active} | 68 | \catcode`+=\active \catcode`\_=\active} |
| 69 | 69 | ||
| 70 | % LaTeX's \typeout. This ensures that the messages it is used for | ||
| 71 | % are identical in format to the corresponding ones from latex/pdflatex. | ||
| 72 | \def\typeout{\immediate\write17}% | ||
| 73 | |||
| 74 | \chardef\other=12 | 70 | \chardef\other=12 |
| 75 | 71 | ||
| 76 | % We never want plain's \outer definition of \+ in Texinfo. | 72 | % We never want plain's \outer definition of \+ in Texinfo. |
| @@ -1538,6 +1534,7 @@ output) for that.)} | |||
| 1538 | % | 1534 | % |
| 1539 | % PDF outline support | 1535 | % PDF outline support |
| 1540 | % | 1536 | % |
| 1537 | \pdfmakepagedesttrue \relax | ||
| 1541 | % Emulate the primitive of pdfTeX | 1538 | % Emulate the primitive of pdfTeX |
| 1542 | \def\pdfdest name#1 xyz{% | 1539 | \def\pdfdest name#1 xyz{% |
| 1543 | \special{pdf:dest (name#1) [@thispage /XYZ @xpos @ypos]}% | 1540 | \special{pdf:dest (name#1) [@thispage /XYZ @xpos @ypos]}% |
| @@ -3273,8 +3270,8 @@ end | |||
| 3273 | % @{ @} @lbracechar{} @rbracechar{} all generate brace characters. | 3270 | % @{ @} @lbracechar{} @rbracechar{} all generate brace characters. |
| 3274 | % Unless we're in typewriter, use \ecfont because the CM text fonts do | 3271 | % Unless we're in typewriter, use \ecfont because the CM text fonts do |
| 3275 | % not have braces, and we don't want to switch into math. | 3272 | % not have braces, and we don't want to switch into math. |
| 3276 | \def\mylbrace{{\ifmonospace\char123\else\ensuremath\lbrace\fi}} | 3273 | \def\mylbrace{{\ifmonospace\else\ecfont\fi \char123}} |
| 3277 | \def\myrbrace{{\ifmonospace\char125\else\ensuremath\rbrace\fi}} | 3274 | \def\myrbrace{{\ifmonospace\else\ecfont\fi \char125}} |
| 3278 | \let\{=\mylbrace \let\lbracechar=\{ | 3275 | \let\{=\mylbrace \let\lbracechar=\{ |
| 3279 | \let\}=\myrbrace \let\rbracechar=\} | 3276 | \let\}=\myrbrace \let\rbracechar=\} |
| 3280 | \begingroup | 3277 | \begingroup |
| @@ -4756,7 +4753,7 @@ end | |||
| 4756 | \def\docodeindex#1{\edef\indexname{#1}\parsearg\docodeindexxxx} | 4753 | \def\docodeindex#1{\edef\indexname{#1}\parsearg\docodeindexxxx} |
| 4757 | \def\docodeindexxxx #1{\doind{\indexname}{\code{#1}}} | 4754 | \def\docodeindexxxx #1{\doind{\indexname}{\code{#1}}} |
| 4758 | 4755 | ||
| 4759 | % Used when writing an index entry out to an index file to prevent | 4756 | % Used when writing an index entry out to an index file, to prevent |
| 4760 | % expansion of Texinfo commands that can appear in an index entry. | 4757 | % expansion of Texinfo commands that can appear in an index entry. |
| 4761 | % | 4758 | % |
| 4762 | \def\indexdummies{% | 4759 | \def\indexdummies{% |
| @@ -4892,9 +4889,12 @@ end | |||
| 4892 | % | 4889 | % |
| 4893 | % We want to disable all macros so that they are not expanded by \write. | 4890 | % We want to disable all macros so that they are not expanded by \write. |
| 4894 | \macrolist | 4891 | \macrolist |
| 4895 | \definedummyword\value | ||
| 4896 | % | 4892 | % |
| 4897 | \normalturnoffactive | 4893 | \normalturnoffactive |
| 4894 | % | ||
| 4895 | % Handle some cases of @value -- where it does not contain any | ||
| 4896 | % (non-fully-expandable) commands. | ||
| 4897 | \makevalueexpandable | ||
| 4898 | } | 4898 | } |
| 4899 | 4899 | ||
| 4900 | % \commondummiesnofonts: common to \commondummies and \indexnofonts. | 4900 | % \commondummiesnofonts: common to \commondummies and \indexnofonts. |
| @@ -5159,10 +5159,9 @@ end | |||
| 5159 | \ifx\suffix\indexisfl\def\suffix{f1}\fi | 5159 | \ifx\suffix\indexisfl\def\suffix{f1}\fi |
| 5160 | % Open the file | 5160 | % Open the file |
| 5161 | \immediate\openout\csname#1indfile\endcsname \jobname.\suffix | 5161 | \immediate\openout\csname#1indfile\endcsname \jobname.\suffix |
| 5162 | % Using \immediate above here prevents an object entering into the current | 5162 | % Using \immediate here prevents an object entering into the current box, |
| 5163 | % box, which could confound checks such as those in \safewhatsit for | 5163 | % which could confound checks such as those in \safewhatsit for preceding |
| 5164 | % preceding skips. | 5164 | % skips. |
| 5165 | \typeout{Writing index file \jobname.\suffix}% | ||
| 5166 | \fi} | 5165 | \fi} |
| 5167 | \def\indexisfl{fl} | 5166 | \def\indexisfl{fl} |
| 5168 | 5167 | ||
| @@ -5370,7 +5369,6 @@ end | |||
| 5370 | % index. The easiest way to prevent this problem is to make sure | 5369 | % index. The easiest way to prevent this problem is to make sure |
| 5371 | % there is some text. | 5370 | % there is some text. |
| 5372 | \putwordIndexNonexistent | 5371 | \putwordIndexNonexistent |
| 5373 | \typeout{No file \jobname.\indexname s.}% | ||
| 5374 | \else | 5372 | \else |
| 5375 | \catcode`\\ = 0 | 5373 | \catcode`\\ = 0 |
| 5376 | % | 5374 | % |
| @@ -6684,14 +6682,7 @@ end | |||
| 6684 | % 1 and 2 (the page numbers aren't printed), and so are the first | 6682 | % 1 and 2 (the page numbers aren't printed), and so are the first |
| 6685 | % two pages of the document. Thus, we'd have two destinations named | 6683 | % two pages of the document. Thus, we'd have two destinations named |
| 6686 | % `1', and two named `2'. | 6684 | % `1', and two named `2'. |
| 6687 | \ifpdf | 6685 | \ifpdf \global\pdfmakepagedesttrue \fi |
| 6688 | \global\pdfmakepagedesttrue | ||
| 6689 | \else | ||
| 6690 | \ifx\XeTeXrevision\thisisundefined | ||
| 6691 | \else | ||
| 6692 | \global\pdfmakepagedesttrue | ||
| 6693 | \fi | ||
| 6694 | \fi | ||
| 6695 | } | 6686 | } |
| 6696 | 6687 | ||
| 6697 | 6688 | ||
| @@ -8871,7 +8862,6 @@ end | |||
| 8871 | % include an _ in the xref name, etc. | 8862 | % include an _ in the xref name, etc. |
| 8872 | \indexnofonts | 8863 | \indexnofonts |
| 8873 | \turnoffactive | 8864 | \turnoffactive |
| 8874 | \def\value##1{##1}% | ||
| 8875 | \expandafter\global\expandafter\let\expandafter\Xthisreftitle | 8865 | \expandafter\global\expandafter\let\expandafter\Xthisreftitle |
| 8876 | \csname XR#1-title\endcsname | 8866 | \csname XR#1-title\endcsname |
| 8877 | }% | 8867 | }% |
| @@ -9012,14 +9002,14 @@ end | |||
| 9012 | \fi\fi\fi | 9002 | \fi\fi\fi |
| 9013 | } | 9003 | } |
| 9014 | 9004 | ||
| 9015 | % \refx{NAME}{SUFFIX} - reference a cross-reference string named NAME. SUFFIX | 9005 | % Define \refx{NAME}{SUFFIX} to reference a cross-reference string named NAME. |
| 9016 | % is output afterwards if non-empty. | 9006 | % If its value is nonempty, SUFFIX is output afterward. |
| 9007 | % | ||
| 9017 | \def\refx#1#2{% | 9008 | \def\refx#1#2{% |
| 9018 | \requireauxfile | 9009 | \requireauxfile |
| 9019 | {% | 9010 | {% |
| 9020 | \indexnofonts | 9011 | \indexnofonts |
| 9021 | \otherbackslash | 9012 | \otherbackslash |
| 9022 | \def\value##1{##1}% | ||
| 9023 | \expandafter\global\expandafter\let\expandafter\thisrefX | 9013 | \expandafter\global\expandafter\let\expandafter\thisrefX |
| 9024 | \csname XR#1\endcsname | 9014 | \csname XR#1\endcsname |
| 9025 | }% | 9015 | }% |
| @@ -9044,18 +9034,16 @@ end | |||
| 9044 | #2% Output the suffix in any case. | 9034 | #2% Output the suffix in any case. |
| 9045 | } | 9035 | } |
| 9046 | 9036 | ||
| 9047 | % This is the macro invoked by entries in the aux file. Define a control | 9037 | % This is the macro invoked by entries in the aux file. Usually it's |
| 9048 | % sequence for a cross-reference target (we prepend XR to the control sequence | 9038 | % just a \def (we prepend XR to the control sequence name to avoid |
| 9049 | % name to avoid collisions). The value is the page number. If this is a float | 9039 | % collisions). But if this is a float type, we have more work to do. |
| 9050 | % type, we have more work to do. | ||
| 9051 | % | 9040 | % |
| 9052 | \def\xrdef#1#2{% | 9041 | \def\xrdef#1#2{% |
| 9053 | {% Expand the node or anchor name to remove control sequences. | 9042 | {% The node name might contain 8-bit characters, which in our current |
| 9054 | % \turnoffactive stops 8-bit characters being changed to commands | 9043 | % implementation are changed to commands like @'e. Don't let these |
| 9055 | % like @'e. \refx does the same to retrieve the value in the definition. | 9044 | % mess up the control sequence name. |
| 9056 | \indexnofonts | 9045 | \indexnofonts |
| 9057 | \turnoffactive | 9046 | \turnoffactive |
| 9058 | \def\value##1{##1}% | ||
| 9059 | \xdef\safexrefname{#1}% | 9047 | \xdef\safexrefname{#1}% |
| 9060 | }% | 9048 | }% |
| 9061 | % | 9049 | % |